Greasemonkey: Pengguna harus dapat mengontrol urutan eksekusi skrip

Dibuat pada 15 Nov 2017  ·  10Komentar  ·  Sumber: greasemonkey/greasemonkey

Penyortiran "Urutan eksekusi" adalah fitur yang paling saya rindukan dari dialog "kelola" tab lengkap yang lama.
Saat ini (di GM 4.0), seperti yang terlihat, skrip dieksekusi seperti yang tercantum dalam popup, yaitu dalam urutan abjad.
Dengan penyortiran ini tidak lagi tersedia, tidak ada cara cepat untuk menyelesaikan konflik skrip pengguna lagi.


Untuk referensi, saya mengutip dari halaman wiki 'Urutan skrip' (sekarang dihapus):

_Urutan skrip_

_Script dapat ditampilkan secara berurutan dengan:_

  • _Status - Skrip diurutkan berdasarkan status aktivasi: diaktifkan atau dinonaktifkan, lalu nama._
  • _Name - Skrip diurutkan menurut abjad berdasarkan nama terlepas dari statusnya._
  • _ Urutan eksekusi - Skrip diurutkan berdasarkan indeks eksekusi._

_Urutan terakhir ini penting untuk skrip pengguna yang saling bertentangan. Dengan mengubah urutan skrip, konflik dapat diselesaikan. Anda dapat mengubah urutan dengan mengklik kanan skrip pengguna dan memilih salah satu tindakan: Execute first , Execute sooner , Execute later atau Execute last ._

Komentar yang paling membantu

Ini memang fitur 3.x yang hilang dari 4.x.

Saya pasti tidak akan menjanjikan fitur/UI tertentu, tetapi dapat menginstal dua skrip yang harus dijalankan dalam urutan tertentu akan baik.

Semua 10 komentar

Ini memang fitur 3.x yang hilang dari 4.x.

Saya pasti tidak akan menjanjikan fitur/UI tertentu, tetapi dapat menginstal dua skrip yang harus dijalankan dalam urutan tertentu akan baik.

Bagaimana jika di sumber skrip kita memiliki fitur // <strong i="5">@priority</strong> (int) , atau mungkin kita harus menyebutnya runlevel karena prioritas bisa terlewatkan
setiap robekan dapat dimulai pada / hampir bersamaan melalui fungsi async
kita mungkin harus mendukung nilai negatif juga

Tidak seperti runlevel UNIX, yang memiliki semacam urutan alami, urutan eksekusi skrip tampaknya lebih arbitrer. Saya pikir itu harus terserah pengguna. Prioritas default yang berasal dari tag di skrip bukanlah ide yang buruk, tetapi perlu ada fasilitas untuk mengesampingkan pesanan, seperti yang ada di GM versi sebelumnya.

Saya setuju dengan itu, tetapi kita dapat mengedit runlevel/prioritas skrip dari sumbernya jika perlu; saya berasumsi itu akan lebih mudah untuk diterapkan, pada titik mana sebuah ui dapat dibangun di sekitarnya

Pilih ini juga. Beberapa skrip saya perlu dijalankan dalam urutan tertentu dan rusak jika dijalankan tidak pada waktunya.
Saya juga berpikir ini harus terserah pengguna untuk memutuskan pesanan ini. UI dapat merujuk ke semacam arahan "pesanan"/"runlevel" dari skrip tetapi kata terakhir harus milik pengguna. Saya bahkan dapat membayangkan sepasang skrip yang berperilaku berbeda dengan sengaja saat dijalankan ke-1-2 atau ke-2-1, karena keduanya merujuk ke DOM halaman yang diubah oleh mereka.

IMHO runlevel bukanlah yang kita butuhkan di sini.
Saya pikir, dalam banyak kasus, ini hanya tentang mengeksekusi skrip A sebelum skrip B.
Ini adalah batasan (relatif). Runlevel adalah ukuran mutlak. Tidak memadai.
Juga, pembatasannya cukup jarang. Yang Anda butuhkan hanyalah hal "sebelumnya"/"nanti",
dan mungkin, hanya untuk kenyamanan, "pertama"/"terakhir"...

Ini bukan (sebenarnya) properti dari skrip itu sendiri, jadi itu tidak boleh berupa header @tag dimasukkan ke dalam sumbernya. Ini adalah gejala dari beberapa kombinasi skrip di mana perubahan yang satu merusak yang lain (tetapi tidak sebaliknya), sehingga yang lain harus dijalankan terlebih dahulu.

Apakah fitur ini akan tetap ada suatu hari nanti? Saya telah melewatkannya sejak 4.x keluar, dan harus melakukan beberapa solusi yang buruk dalam skrip saya untuk dieksekusi dalam urutan yang benar untuk saat ini.

... beberapa solusi yang buruk ...

Apa solusinya, dan mengapa itu buruk?

Saya ingat membuat div tak terlihat dengan satu skrip, dan mengatur penghitung waktu di skrip lain, yang untuk memeriksa apakah div sudah ada. Atau apakah itu bodoh?

Saya tidak berpikir seseorang dapat mengatur variabel global dengan Greasemonkey dan membuatnya dapat diakses oleh skrip lain? Dan bahkan itu akan membutuhkan pengaturan timer, bukan?

Apakah halaman ini membantu?
0 / 5 - 0 peringkat