GreasyFork Premium

Розширене покращення GreasyFork і SleazyFork: сучасний інтерфейс, обране одним кліком, пряме встановлення, докладний перегляд скриптів, покращена панель редактора, світла/темна тема, оптимізована навігація та багато іншого.

< Відгуки до GreasyFork Premium

Question/comment

§
Опубліковано: 31.08.2026

GreasyFork kurucusu ile iletişime geçmiştim ancak bu özelliğin eklenme ihtimalinin düşük olduğunu söyledi. Talebim kısaca şu şekildedir: Görseldeki ilgili alana "İzinler" başlığı eklenmesini rica ediyorum. Aşağıya eklediğim yapay zeka tarafından üretilmiş örnek koddaki gibi; eğer @grant none kullanılmışsa "İzinler: Yok" ibaresi yer almalı, bir hata oluşması durumunda ise "Tespit edilemedi" şeklinde bir uyarı dönmelidir. Çok fazla görsel veya teknik detay talep ediyor olabilirim ancak bu entegrasyonu sizin çok daha başarılı bir şekilde yapabileceğinize inanıyorum. pasted-image-1788203104171.png Temsili Yapay Zeka Kodu:

// ==UserScript==
// @name         GreasyFork Temiz @grant Bulucu (Ctrl+S)
// @namespace    http://tampermonkey.net
// @version      1.3
// @description  GreasyFork script sayfasında Ctrl+S yapınca a.install-link dosyasını okuyup sadece izin isimlerini listeler.
// @author       You
// @match        https://greasyfork.org*
// @grant        GM_xmlhttpRequest
// @connect      greasyfork.org
// ==/UserScript==

(function() {
    'use strict';

    window.addEventListener('keydown', function(e) {
        if ((e.ctrlKey || e.metaKey) && e.key.toLowerCase() === 's') {
            const installLinkEl = document.querySelector('a.install-link');
            if (!installLinkEl) return;

            e.preventDefault();
            const scriptUrl = installLinkEl.href;

            GM_xmlhttpRequest({
                method: "GET",
                url: scriptUrl,
                onload: function(response) {
                    const kod = response.responseText;

                    // Sadece iznin adını yakalayan Regex (Grup 1'i alır)
                    const regex = /\/\/\s*@grant\s+([^\s\r\n]+)/g;
                    let izinler = [];
                    let match;

                    // Tüm eşleşmeleri dön ve sadece izin isimlerini temizle
                    while ((match = regex.exec(kod)) !== null) {
                        izinler.push(match[1].trim());
                    }

                    // Tekrar eden izinleri temizle (Unique list)
                    const benzersizIzinler = [...new Set(izinler)];

                    if (benzersizIzinler.length > 0) {
                        // İzinleri numaralandırarak alt alta listele
                        const temizListe = benzersizIzinler.map((izin, index) => `${index + 1}. ${izin}`).join('\n');
                        alert("Bulunan İzinler:\n\n" + temizListe);
                    } else {
                        alert("Script içinde herhangi bir @grant izni bulunamadı.");
                    }
                },
                onerror: function() {
                    alert("Script kaynak kodu yüklenirken bir hata oluştu.");
                }
            });
        }
    }, true);
})();

Dℝ∃wXАвтор
§
Опубліковано: 31.08.2026

Yaklaşık olarak böyle bir şey mi düşünüyordun?

Tampermonkey’deki gibi küçük bir “Özellikler” veya “İzinler” bölümü olabilir. İzinleri, ağ erişimini, depolamayı, harici kaynakları vs. simgelerle gösterebiliriz.
Bunu doğrudan Greasy Fork’a eklemek için bir PR açmak gerekir ama tabii Jason’ın da kabul etmesi lazım.
Olmazsa GreasyFork Premium’a ekleyebilirim. Zaten scriptlerin metadata’sından simgeleri almak için benzer bir sistem kullanıyorum, sadece biraz geliştirmem yeterli.

Dℝ∃wXАвтор
§
Опубліковано: 31.08.2026

Bu arada koduna da baktım, yaklaşımın mantıklı.
Hatta bunu biraz daha optimize etmek için ileride .meta.js kullanmak da mümkün olabilir.

§
Опубліковано: 01.09.2026

İsteğimin temel sebebi, kod kısmına bakmadan bilgiler kısmından hangi izinleri istediğini görebilmemiz. Yani nasıl yaparsın bilmiyorum ama sanırım tek sorun çıkaracak yer, kodu okuyup oradan kusursuzca @grant izinlerini ayıklamak.

§
Опубліковано: 01.09.2026

İsteğimin temel sebebi, kod kısmına bakmadan bilgiler kısmından hangi izinleri istediğini görebilmemiz. Yani nasıl yaparsın bilmiyorum ama sanırım tek sorun çıkaracak yer, kodu okuyup oradan kusursuzca @grant izinlerini ayıklamak.

Опублікувати відповідь

Sign in to post a reply.