Google Chrome'a ​​manuel olarak bir Usercript ekleme


161

Kullanıcı Komut Dosyalarını "yüklemek" yerine, web üzerinde manuel olarak eklemek için birçok öğretici buldum. Hepsi bana aynı adımları atmamı söyledi:

  • C: \ Kullanıcılar \ Blabla \ AppData \ Local \ Google \ Chrome \ Kullanıcı Verileri \ Varsayılan \ Kullanıcı Komut Dosyaları dizinini oluşturun
  • Buraya User-Script'i içeren bir .js dosyası yerleştirin
  • Chrome'u --enable-user-scriptleri parametresiyle başlatın

Bunu yaptım - ama demo betiğim hiçbir şey yapmıyor:

// ==UserScript==
// @name           Test
// @description    Test
// @include        http://example.com/*
// @version        1.0
// ==/UserScript==

alert(0);

Neyi yanlış yapıyorum?


2
Kullanıcı komut dosyası dizini desteği 2011 yılında kaldırıldı. Bkz. Kullanıcı Komut Dosyaları dizini hala Chrome 13.0 ile çalışıyor mu ?: http://stackoverflow.com/questions/6968469/does-the-user-scripts-directory-still-work-with- chrome-13-0 # comment8333680_6979021 .
XP1

Yanıtlar:


240

Yapılacak en iyi şey Tampermonkey uzantısını kurmaktır .

Bu, Greasemonkey komut dosyalarını kolayca yüklemenizi ve bunları kolayca yönetmenizi sağlar. Ayrıca, kullanıcı açıklamalarını doğrudan OpenUserJS , MonkeyGuts vb. Sitelerden yüklemeyi kolaylaştırır .

Son olarak, doğrudan Chrome ile bir GM komut dosyası yükleyerek elde edemediğiniz tüm GM işlevlerinin kilidini açar. Yani, Firefox'ta GM'nin yapabildiklerinden daha fazlası Tampermonkey'de mevcut.


Gerçekten doğrudan GM komut dosyası yüklemek istediğiniz Ama, eğer bu kadar kolay bugünlerde Chrome'da bir sağ acı ...

Chrome Yaklaşık Ağustos 2014'ten sonra:

Yine de bir dosyayı uzantılar sayfasına sürükleyebilirsiniz ve çalışır ... Chrome'u yeniden başlatana kadar . Ardından kalıcı olarak devre dışı bırakılacaktır. Daha fazla bilgi için Chrome kullanıcılarını kötü amaçlı uzantılardan "korumaya" devam etme konusuna bakın . Tampermonkey yine akıllıca bir yol. (Veya tarayıcıları tamamen Opera veya Firefox'a geçirin.)

Chrome 21+:

Chrome, uzantıların yüklenme şeklini değiştiriyor . Kullanıcı metinleri Chrome'daki ayrıştırılmış uzantılardır, ancak. Chrome 21'den başlayarak, kullanıcı komutları için bağlantı tıklama davranışı devre dışı bırakılır . Bir kullanıcı komut dosyası yüklemek için **. User.js * dosyasını Uzantılar sayfasına ( chrome://extensionsadres girişinde) sürükleyin .

Eski Chrome sürümleri:

**. User.js * dosyalarınızı herhangi bir Chrome penceresine sürükleyin. Veya herhangi bir Greasemonkey komut dosyasına tıklayın.

Bir kurulum uyarısı alırsınız:
İlk uyarı

Devam'ı tıklayın .


Bir onay iletişim kutusu alacaksınız:
onay iletişim kutusu

Click Ekle .


Notlar:

  1. Bu şekilde yüklenen komut dosyalarının Greasemonkey (Firefox) komut dosyası veya Tampermonkey komut dosyasıyla karşılaştırıldığında sınırlamaları vardır. Bkz Çapraz tarayıcı kullanıcı komut dosyası, Krom bölümü .

Komut Dosyasının ve Adın Kontrol Edilmesi:

Chrome, varsayılan olarak, şifrelenmiş adlar ve sürüm numaralarıyla dolu Uzantılar klasör 1'e komut dosyaları yükler . Ve bu klasör ağacının altına manuel olarak bir komut dosyası eklemeye çalışırsanız, Chrome yeniden başlatıldığında silinir.

Dizinleri ve dosya adlarını daha anlamlı bir şeye denetlemek için şunları yapabilirsiniz:

  1. Chrome'un normalde uzantı aradığı yerde değil , sizin için uygun bir dizin oluşturun . Örneğin, oluşturun: C:\MyChromeScripts\.

  2. Her komut dosyası için kendi alt dizinini oluşturun. Örneğin HelloWorld,.

  3. Bu alt dizinde kod dosyasını oluşturun veya kopyalayın. Örneğin, bu Sorunun kodunu kaydedin: HelloWorld.user.js.

  4. Ayrıca, söz konusu alt dizininde bildiri dosyası oluşturmanız gerekir, bu adlandırılmalıdır: manifest.json.

    Örneğimiz için şunları içermelidir:

    {
        "manifest_version": 2,
        "content_scripts": [ {
            "exclude_globs":    [  ],
            "include_globs":    [ "*" ],
            "js":               [ "HelloWorld.user.js" ],
            "matches":          [   "https://stackoverflow.com/*",
                                    "https://stackoverflow.com/*"
                                ],
            "run_at": "document_end"
        } ],
        "converted_from_user_script": true,
        "description":  "My first sensibly named script!",
        "name":         "Hello World",
        "version":      "1"
    }

    manifest.jsonDosyası otomatik olarak kullanıcı komut dosyası yüklenir Chrome tarafından meta blok oluşturulur. Değerleri @includeve @excludemeta-kuralları saklanır include_globsve exclude_globs, @match(önerilir) depolanır matcheslistesi. desteklenen yöntemlerden"converted_from_user_script": true herhangi birini kullanmak istiyorsanız gereklidir .GM_*

  5. Şimdi Chrome'un Uzantı yöneticisinde (URL = chrome: // extensions / ) "Geliştirici modu" nu genişletin .

  6. Click Yük paketlenmemiş uzantıyı ... düğmesine basın.

  7. Klasörün için, komut dosyası için klasöründe yapıştırın Bu örnekte öyle: C:\MyChromeScripts\HelloWorld.

  8. Betiğiniz artık yüklü ve çalışır durumda!

  9. Komut dosyası kaynağında herhangi bir değişiklik yaparsanız, yürürlüğe girmeleri için Yeniden Yükle bağlantısını tıklayın:

    Bağlantıyı yeniden yükle




1 Klasör varsayılan değeri:

Windows XP:
  Chrome:% AppData% \ .. \ Yerel Ayarlar \ Uygulama Verileri \ Google \ Chrome \ Kullanıcı Verileri \ Varsayılan \ Uzantılar \
  Chromium:% AppData% \ .. \ Yerel Ayarlar \ Uygulama Verileri \ Chromium \ Kullanıcı Verileri \ Varsayılan \ Uzantılar \

Windows Vista / 7/8:
  Chrome:% LocalAppData% \ Google \ Chrome \ Kullanıcı Verileri \ Varsayılan \ Uzantılar \
  Chromium:% LocalAppData% \ Chromium \ Kullanıcı Verileri \ Varsayılan \ Uzantılar \

Linux:
  Chrome: ~ / .config / google-chrome / Varsayılan / Uzantılar /
  Chromium: ~ / .config / chromium / Varsayılan / Uzantılar /

Mac OS X:
  Chrome: ~ / Kütüphane / Uygulama Desteği / Google / Chrome / Varsayılan / Uzantılar /
  Chromium: ~ / Kütüphane / Uygulama Desteği / Chromium / Varsayılan / Uzantılar /

Her ne kadar Chrome --user-data-dir=seçeneği ile çalıştırarak değiştirebilirsiniz .


1
Harika yanıt - yeni Chrome "yalnızca web mağazası" politikasını yansıtacak şekilde güncellendi. .User.js dosyalarını yalnızca Uzantılar penceresine sürükleyebilirsiniz.
crb

2
@ColonelPanic, Ne yazık ki hayır yapamazsın. Otomatik oluşturulan bildirim şu anda uzantı işlemi ile uyumlu değil! Kullanılmıyor "manifest_version": 2, şimdi gerekli. Yanıttaki örneği başlangıç ​​kopyanız olarak kullanın (veya en azından unutmayın "manifest_version": 2). ... Google, kısa süre içinde otomatik bildirim işlemini değiştirmedikçe, tüm "normal" kullanıcı metinlerini bekleyen bir sürümde başarısız olacak şekilde ayarlıyor.
Brock Adams

1
@ brock Kullanıcı cevabımı ikinci cevap gibi uzantı penceresine sürükleyip bıraktım ve şimdi Tampermonkey'in veterinerliği konusunda endişelenmem gerekmiyor. Sadece çalıştı. :)
Bjorn

1
@brock Bunun olduğunu biliyorum, ancak Tampermonkey'i kullanma tavsiyeniz göz önüne alındığında, tüm bankacılık sitesi bilgilerinize, facebook'unuza, her şeye erişim gerektiren bir uzantı, ikinci cevap daha iyi. 'Vetted' için, herhangi bir şeyi bir Chrome uzantısını incelemek için yapabileceği hiçbir şey yoktur, çünkü istediğiniz zaman kötü şeyler yapmak için otomatik olarak güncelleyebilir ve daha sonra bunu gizlemek için tekrar güncelleyebilirsiniz. Her seferinde her değişikliği denetlemelisin. Her şeye izin var. Her şey.
Bjorn

1
@marshmellooooooos, hala benim için çalışıyor (Chrome 54.0.2840.99 m). Eğer işe yaramazsanız, ya Tampermonkey'i yükleyin ya da denediklerinizin TAM ayrıntılarıyla yeni bir soru açın .
Brock Adams

53

Güncelleme 2016: tekrar çalışıyor gibi görünüyor.

Ağustos 2014 Güncellemesi: Artık son Chrome sürümlerinden itibaren çalışmıyor.


Evet, yeni durum berbat. Neyse ki diğer cevapların ima ettiği kadar zor değil.

  1. Chrome'a ​​göz atmak için chrome://extensions
  2. .user.jsDosyayı bu sayfaya sürükleyin .

Voila. Ayrıca, dosyaları indirme altbilgisi çubuğundan uzantılar sekmesine sürükleyebilirsiniz.

Chrome, Brock'un belgelediğimanifest.json uzantılar dizininde otomatik olarak bir dosya oluşturur .

<3 Özgürlük.


15
dosya adının <scriptname> .user.js gibi olduğundan emin olun, aksi takdirde chrome uzantı olarak tanımıyor
Paco

1
@AlexTracer Benim için Chromium 33 üzerinde çalışıyor. Belki yanlış bir şey yapıyorsun.
user7610 13:14

4
Chrome 36'da artık çalışmıyor. Bu şekilde eklenen kullanıcı komut dosyaları şu iletiyle birlikte gelir: "bu uzantı Chrome Web Mağazası'nda listelenmiyor ve sizin bilginiz olmadan eklenmiş olabilir" ve etkinleştirme onay kutusu devre dışı bırakıldı.
Koruyucu bir

2
Bu Chrome 51'de benim için çalışıyor ve herhangi bir komut satırı parametresi kullanmıyorum. Belki tekrar değiştirdiler?
Miscreant

6
Bunu yeni denedim (Chrome 60) ve "Chrome Web Mağazası'nda yayınlanmamış uzantılar grileşti ve bunları tekrar açamayacaksınız" yazan bir sayfaya gönderildim . Ağustos 2014 davranışına benziyor. Bunu yeniden devre dışı bırakıp bırakmadıklarından emin değilim ya da sadece bir şey eksik.
Pops

11

Bu parametre benim için çalışıyor:

--enable-easy-off-store-extension-install

Aşağıdakileri yapın:

  1. "Chrome" simgenizi sağ tıklayın.
  2. Özellikleri seçin
  3. Hedef satırınızın sonuna şu parametreleri yerleştirin: --enable-easy-off-store-extension-install
  4. Şöyle görünmelidir: chrome.exe --enable-easy-off-store-extension-install
  5. Simgeyi çift tıklayarak Chrome'u başlatın


1
Yöneticiler ayrıca tüm kullanıcılar için bir politika oluşturabilir ve izin verilen URL'ler kalıpla beyaz listeye
eklenir

Eski komut dosyasını silmem ve bir şeyleri düzenlediğimde tekrar tarayıcıya sürükleyerek tamamen yeni yüklemem gerekiyor mu? Yoksa daha kolay bir yol var mı?
YMMD

Bir komut dosyasını güncellemek için, dosya sisteminde veya web sunucusunda bu dosyaya gidip yüklemek için tıkla; Chrome eski sürümün üzerine yazar. Bir komut dosyası geliştiriyorsanız ve yüklemeye devam etmek istemiyorsanız, bir yer işareti / kullanıcı metni melezini deneyin: stackoverflow.com/questions/1810885/…
joeytwiddle

: Onlar bilerek engelli yan yüke sahip oldukları gibi Mmmm evet görünüyor blog.chromium.org/2018/06/...
joeytwiddle

1

Tek tıklamayla kullanıcı metnini paylaşın ve yükleyin

Otomatik yükle (ama mannually onayla) yapmak için, Sen yapabilir özünü (gist.github.com) ile <filename>.user.jsalmak için dosya adına Tıklama tıklayın kurulum Raw ve bu sayfayı olsun:

Kurulum sayfası

Bu nasıl yapılır ?

  1. Gist isminizi söyleyin <filename>.user.js, kodunuzu yazın ve "Oluştur" u tıklayın.
    Dosyayı gist yap

  2. Gist sayfasında, kurulum sayfasını almak için Raw'a tıklayın (ilk ekran).
    Ham düğme

  3. Kodu kontrol edin ve kurun.


0

Nisan 2020 Cevap

Chromium 81+ sürümünde şu yanıtı buldum: chrome: // extensions / adresine gidin, sağ üst köşedeki Geliştirici Modunu etkinleştirmek için tıklayın, ardından .user.js komut dosyanızı sürükleyip bırakın.


Chrome'da (Chromium değil) bu benim için çalışmıyor. Chrome web mağazasından olmadığını ve devre dışı bırakılmaya zorladığını söylüyor.
Monkpit
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.