Diimplementasikan di Firefox API eksperimental di WebExtensions untuk mengedit about: config

Logo Firefox

Pengembang eksternal telah menerapkan API eksperimental untuk menyediakan Ekstensi Web kemampuan untuk edit konfigurasi yang tersedia melalui "about: config" di browser berbasis Firefox.

API dapat berguna untuk membuat ekstensi tweaker yang menyediakan antarmuka kustomisasi browser yang lebih ramah pengguna. Dalam repositori yang sama, 2 ekstensi disediakan menggunakan API yang diteruskan, yang dapat berfungsi sebagai contoh.

Untuk mendapatkan akses ke API, kondisi berikut harus dipenuhi:

  • Gunakan versi Firefox dengan kemampuan untuk menjalankan ekstensi tak bertanda tangan (Mozilla pada dasarnya tidak menandatangani ekstensi yang menggunakan Eksperimen WebExtensions) dan mengaktifkan mode ini melalui "xpinstall.signatures.required".
  • Menggunakan versi Firefox dengan kemampuan untuk menggunakan Eksperimen Ekstensi Web (memerlukan kompilasi dengan definisi makro "MOZ_DEV_EDITION". Dari versi resmi, ini adalah Nightly dan Edisi Pengembang). Mode ini diaktifkan oleh "extensions.experiments.enabled".
  • Adanya ekstensi terpasang yang meneruskan API. Itu terletak di direktori "eksperimen". Ini juga berisi file yang menjelaskan dan mendokumentasikan versi WebExtensions API saat ini untuk mengedit "about: config". Di masa mendatang, direncanakan untuk menerapkan pembatasan parameter yang tersedia untuk ekstensi pengguna API tertentu dengan mendeklarasikannya dalam manifes.
  • Untuk bekerja dengan API, Anda harus menentukan izin "experiment.config" di manifes ekstensi Anda.

Perlu dicatat bahwa pemberian dinamis (dengan kemungkinan pengguna memilih keluar) izin untuk mengakses API eksperimental tidak berfungsi di Firefox saat ini.

Selanjutnya disebutkan bahwa ekstensi disediakan di direktori "arkenfox" yang menyinkronkan pengaturan browser dengan daftar pengaturan yang direkomendasikan untuk proyek arkenfox (sebelumnya dikenal sebagai ghacksuserjs, tetapi diganti namanya karena proyek tersebut telah lama berkembang secara terpisah dari situs berita teknologi Ghacks). Saat dipasang, sebuah tombol muncul di bilah alat, ketika itu membuka daftar konfigurasi, yang nilainya tidak cocok dengan nilai di arkenfox / user.js. Di depan setiap perbedaan ada tombol, mengklik di mana perbedaan tersebut dihilangkan. Semua perbedaan dapat dihapus dengan satu klik.

Agar ekstensi berfungsi dari direktori "arkenfox", API eksperimental lain diperlukan, webext-eksperimen-parseBahwa memungkinkan untuk menggunakan sumber daya pengurai ECMAScript built-in SpiderMonkey, daripada menggunakan parser yang diimplementasikan di ECMAScript itu sendiri, seperti ESPrima, untuk memberikan kinerja yang lebih baik dan yang lebih penting, menghilangkan kebutuhan untuk mengirimkan dan memperbarui ketergantungan ini.

Tidak ada pengukuran dan perbandingan yang dilakukan, sangat mungkin overhead pengiriman pesan memakan segalanya, dengan cara yang bersahabat agar tidak memakannya Anda harus meneruskannya di luar kotak, tetapi saat ini Mozilla secara umum menentang penerusan API ini, karena Mereka tidak menjamin stabilitas format AST yang dikembalikan.

Namun, dimungkinkan untuk bekerja tanpa ekstensi yang ditentukan, dengan dukungan untuk parser primitif berdasarkan ekspresi reguler. Untuk melakukan ini, Anda perlu membangun kembali ekstensi "arkenfox", menghapus "eksperimen".

Ekstensi "buka kunci" hanya membuka kunci semua setelan terkunci pada saat inisialisasi. Konfigurasi yang dikunci adalah konfigurasi yang tidak dapat diubah oleh pengguna melalui "about: config".

Karena file konfigurasi kustom dibaca saat memulai sebelum ekstensi diinisialisasi, perubahan pada konfigurasi yang dikunci antara booting ulang tidak disimpan. Jika perlu 'menghapus' nilai pengaturan terkunci di tahap awal persiapan, Anda dapat menguncinya ke nilai lain sesuai dengan instruksi.

Untuk membuat ekstensi, Anda hanya perlu mengompres file Anda menjadi file zip tidak terkompresi dengan ekstensi xpi. Sebagai pengingat, Mozilla tidak dengan sengaja mengimplementasikan pengeditan konfigurasi about: config dalam bentuk API WebExtensions.

Terakhir, bagi mereka yang tertarik memiliki akses ke API, mereka bisa berkonsultasi repositori berikut di mana Anda akan menemukan semua yang disebutkan.


tinggalkan Komentar Anda

Alamat email Anda tidak akan dipublikasikan. Bidang yang harus diisi ditandai dengan *

*

*

  1. Penanggung jawab data: Miguel Ángel Gatón
  2. Tujuan data: Mengontrol SPAM, manajemen komentar.
  3. Legitimasi: Persetujuan Anda
  4. Komunikasi data: Data tidak akan dikomunikasikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Basis data dihosting oleh Occentus Networks (UE)
  6. Hak: Anda dapat membatasi, memulihkan, dan menghapus informasi Anda kapan saja.