Vimari: Status mendapatkan ekstensi yang tersedia di toko Safari Extension

Dibuat pada 11 Jul 2018  ·  37Komentar  ·  Sumber: televator-apps/vimari

Saya baru saja mendaftar ke Program Pengembang Apple dan saya akan melihat perubahan apa yang perlu terjadi pada kode sebelum mengirimkannya untuk ditinjau.

Saya akan membuat Anda diperbarui dalam masalah ini!


DIPERBARUI
Baca edisi lengkap untuk konteksnya.

MELAKUKAN

  • [ ] Pengaturan
  • [ ] Memungkinkan untuk membuka banyak tautan di tab baru
  • [ ] Cari tahu cara mendistribusikan ekstensi
  • [ ] Situs web apa yang dibuka di tab baru? String kosong tidak berfungsi sehingga kami memerlukan sesuatu yang lain, idealnya setara dengan about:config di browser lain

Komentar yang paling membantu

Hai semuanya,

Seperti yang saya sebutkan sebelumnya dalam masalah ini, saya telah berurusan dengan beberapa masalah pribadi beberapa bulan terakhir, tetapi semuanya jauh lebih baik sekarang! Sebagai hasil dari peningkatan kualitas hidup saya, saya jauh lebih sibuk dengan aktivitas jauh dari komputer, jadi saya tidak punya banyak waktu dan energi untuk dicurahkan ke open-source. Saya berharap menemukan percikan motivasi untuk mengeluarkan pengaturan dan menerbitkan ekstensi ke App Store segera.

Saya harap Anda semua yang menyumbang tidak merasa ditipu dengan cara apa pun. Terima kasih semua untuk kesabaran dan pengertiannya ❤️

Semua 37 komentar

Baca dokumen dari Apple dan itu bagus. Sepertinya kode tersebut perlu dibungkus dalam aplikasi macOS, tetapi tidak disebutkan jenisnya. Saya akan sibuk selama beberapa hari sekarang tetapi akan mencoba memeras beberapa pekerjaan ini.

Jika seseorang memiliki pengalaman dengan ini atau ingin membantu, beri tahu saya.

Telah bermain-main dengannya sekarang untuk beberapa waktu, dan kawan .. para dokumen membunuhku. Saya ingin tahu bagaimana mereka mengharapkan semua orang untuk memigrasi Ekstensi Safari mereka ke Ekstensi Aplikasi Safari dengan dokumentasi buruk yang tidak memiliki contoh apa pun. Ini akan memakan waktu lama sebelum semua ekstensi dimigrasikan :/

Pokoknya saya punya sesuatu dan berjalan sekarang, saya bisa menggunakan ekstensi, tapi saya perlu memahami berbagai langkah memuat ekstensi sebelum melanjutkan lebih jauh. Saya juga belum menemukan dukungan untuk memiliki pengaturan untuk ekstensi yang akan menyebalkan jika itu benar.

Juga saya pikir kita bisa lolos dengan tidak memiliki ekstensi di App Store, tapi saya belum yakin. Saya sudah membaca di beberapa forum tentang itu tetapi belum menyelidiki lebih dekat. Itu berarti kami memiliki rilis instan, tetapi dengan kekurangannya Anda harus datang ke Github untuk mengunduhnya - alih-alih membuka App Store. Akan menyelidiki ini lebih lanjut.

Saya mendapatkan versi yang berfungsi dengan Safari 12 sekarang. Ini adalah solusi yang sangat hacky tetapi berhasil. Namun, pengaturan tidak dapat diubah kecuali Anda mengubahnya dalam kode.

Ikuti perkembangannya di PR #104 saya.

Saya menggabungkan PR dengan Ekstensi Aplikasi di dalamnya. Saya memberikan instruksi tentang cara menginstalnya. Tolong, semua orang yang telah meningkatkan ke macOS Mojave, ikuti langkah-langkahnya dan beri tahu kami jika ada yang tidak berfungsi untuk Anda. Saya akan terus mengerjakan kode untuk membuatnya lebih bagus, tetapi untuk saat ini Anda akan memiliki fungsi dasar ekstensi.

Ping semua orang yang terlibat dalam hal ini sejauh ini sehingga kami bisa mendapatkan umpan balik tentang ini:
@jad @jaredmichaelwilliams @olivierlefloch @afarrell @weirdfishes @LiYunyang @pcejrowski @lamons @hcgatewood @LeonardCohen @ovisan @jezkline @danielcompton @guyht

Berikut adalah petunjuknya .

Terima kasih.

Saya menggunakan Mojave (18A326h). Saat saya membangun proyek, ada satu kesalahan:

kesalahan: Tugas gagal dengan sinyal keluar 1 0 {
/usr/bin/codesign '--force' '--sign' '0CA31562965A44B984D08063E858CC715E0B0B34' '--verbose' '/Users/liyunyang/Library/Developer/Xcode/DerivedData/vimari-gcitcrkzdthhey app/Contents/Frameworks/libswiftAppKit.dylib'
}

@LiYunyang Apakah Anda mencoba salah satu dari ini dua solusi ?

Setelah menghabiskan lebih banyak waktu untuk ini, saya tidak yakin kami akan dapat memigrasi semua fitur, bahkan beberapa fitur dasar :(. API sangat terbatas kecuali Anda bekerja dengan popover atau bilah alat. Saya tidak' saya tidak mengerti mengapa dan saya mencoba yang terbaik untuk menemukan informasi tetapi karena ini sangat baru + dokumentasi Apple yang mengerikan, tidak ada. Seperti membuka tab baru adalah sepele dari klik popover/toolbar tetapi tidak mungkin sebaliknya. Apple akan membunuh sebagian besar ekstensi saat ini dengan pendekatan ini. Saya akan terus mencoba tetapi tidak dapat menjanjikan apa pun.

Terima kasih @simeg. Saya telah berhasil membangunnya dengan sertifikat pengembang saya sendiri dan berfungsi dengan Safari 12 di macOS 10.13.6 High Sierra.,

@akrabat Saya senang ini bekerja untuk Anda. Apakah Anda diharuskan menggunakan sertifikat pengembang Anda sendiri untuk membuatnya berfungsi?

Ya. Ada kesalahan pada build yang terkait dengan sertifikat, jadi saya memilih milik saya di drop-down.

Setelah beristirahat beberapa hari dari ini dan mendapatkan bantuan, saya berhasil menemukan beberapa informasi yang menurut saya akan membuat kami dapat memigrasikan lebih banyak fitur daripada yang saya harapkan! Jadi apa yang ada di radar saya sekarang:

  • Migrasi semua fitur
  • Memastikan pemasangan ekstensi dapat dilakukan tanpa memiliki sertifikat pengembang. Jika Anda telah mencoba dan gagal, akan berguna jika Anda dapat memposting pesan kesalahan di sini, karena saat ini saya tidak yakin bagaimana cara memperbaikinya

[kata-kata kasar] [Saya bukan satu-satunya pengembang yang frustrasi](https://forums.developer.apple.com/thread/62410), sepertinya. Saya melakukan apa yang direkomendasikan oleh staf Apple, saya mengajukan Laporan Bug di mana saya meminta API dengan lebih banyak fungsi. Ini sulit dilakukan tetapi saya tidak tahu harus berbuat apa lagi.. Semoga Apple akan menyadari bahwa mereka mematikan ekosistem ekstensi untuk Safari dan mengubah API dan menulis dokumentasi yang lebih baik. [/mengoceh]

Berikut adalah fitur-fitur yang ditentukan dalam README:

f Alihkan tautan
F Beralih tautan (buka tautan di tab baru)
k Gulir ke atas
j Gulir ke bawah
h Gulir ke kiri
l Gulir ke kanan
u Gulir ke atas setengah halaman
d Gulir ke bawah setengah halaman
gg Pergi ke atas halaman
G Pergi ke bagian bawah halaman

H Sejarah kembali
L Sejarah maju
r Muat ulang
w Tab berikutnya
q Tab sebelumnya
x Tutup tab saat ini dan pergi ke tab kiri
X Tutup tab saat ini dan pergi ke tab kanan
t Buka tab baru (Yang ini sepertinya tidak berfungsi di versi 1.12)

Garis dengan coretan tidak akan berfungsi di Ekstensi Aplikasi Safari dengan API saat ini, yang menyebalkan. Saya juga perlu mencari cara untuk mengelola pengaturan. Saya cukup yakin itu bisa dilakukan tetapi mungkin perlu waktu. Namun sekarang setelah pekerjaan ini selesai, saya dapat fokus untuk membuat vimari tersedia untuk semua orang, baik melalui unduhan dan juga di masa mendatang di App Extension Store.

Saya minta maaf karena banyak dari Anda yang menyumbangkan uang untuk mendapatkan 100% fungsionalitas yang tersedia di Safari 12, tetapi tidak ada yang dapat saya lakukan untuk mengubah API :( Saya harap Anda mengerti, dan saya masih berdedikasi untuk membuat ekstensi ini lebih baik.

FWiW, Yang tersedia adalah yang utama bagi saya. Meskipun saya tidak bisa membuat F berfungsi dan harus memetakannya kembali ke t .

@akrabat Semuanya belum digabung menjadi master, jadi itu yang diharapkan.

Terima kasih @simeg! Ini bekerja pada mesin Mojave saya. (Anehnya saya tidak melakukan perubahan apa pun pada pengaturan saya sebelumnya, itu hanya berfungsi dengan sendirinya.)

@LiYunyang Saya senang mendengarnya bekerja untuk Anda! Apakah Anda harus menandatanganinya dengan akun pengembang Anda? Juga, saya memiliki PR terbuka dengan beberapa fitur yang diimplementasikan yang belum saya gabungkan menjadi master jadi jika Anda memeriksa kembali dalam beberapa hari Anda akan mendapatkan lebih banyak fitur. Seperti membuka tautan di tab baru ( shift + t ) atau membuka tab kosong baru ( t ). Ada beberapa masalah kecil yang terkait dengannya tetapi saya sedang mengerjakannya.

@simeg Saya masuk dengan ID Apple saya (yang bukan akun pengembang terdaftar) untuk pertama kalinya.

Saya baru saja menggabungkan cabang saya yang sedang saya kerjakan menjadi master yang akan mengaktifkan dua fitur baru: buka tautan di tab baru ( shift + t ) dan buka tab kosong baru ( t ). Ini memiliki bilah alat yang tidak melakukan apa pun saat ini, saya mencoba mencari cara untuk melakukan pengaturan jadi abaikan saja untuk saat ini.

Jadi, tampaknya seseorang harus mengubah akun penandatanganan di Xcode untuk dikompilasi - masuk dengan akun Apple Anda di xcode dan menggunakannya tampaknya berfungsi dengan baik.
Ketika datang untuk beralih atau menutup tab: @simeg benar - tidak ada dukungan untuk itu di API sekarang dan kecuali Apple menambahkannya, saya tidak melakukan apa-apa. Apple mengizinkan ekstensi Aplikasi untuk mengakses tab aktif, tetapi tidak mengizinkan untuk menutupnya. Mereka juga tidak mengizinkan akses ke semua tab yang terbuka. API benar-benar tidak berguna dan saya tidak tahu mengapa Apple memutuskan untuk melakukan sesuatu seperti ini. Dengan API ini, Anda dapat membuka tab, membuka url, melapisi halaman aktif dengan beberapa elemen grafis baru, tetapi hanya itu saja

@Rahlir Ya, saya masih memiliki beberapa masalah kecil seperti itu untuk

Apa yang saya coba cari tahu sekarang adalah pengaturan. Saya tidak dapat menemukan info tentang cara yang disarankan, jadi saya mencoba melihat apa yang dilakukan orang lain dengan melihat kode mereka, tetapi kemajuan saya lambat. Akan membuat Anda diperbarui.

Apa yang saya coba cari tahu sekarang adalah pengaturan. Saya tidak dapat menemukan info tentang cara yang disarankan, jadi saya mencoba melihat apa yang dilakukan orang lain dengan melihat kode mereka, tetapi kemajuan saya lambat. Akan membuat Anda diperbarui.

Jika Anda berbicara tentang menyimpan pengaturan dalam kode Swift asli Anda, cara yang disarankan adalah UserDefaults .

https://www.hackingwithswift.com/read/12/2/reading-and-writing-basics-userdefaults

Jelas Anda harus memiliki logika penyimpanan/pemuatan di Swift dan kemudian meneruskannya ke JS Anda dengan sebuah acara. (sesuatu seperti "getSettings" "saveSettings" mungkin)

Benar-benar gila betapa banyak fungsi yang mereka hapus dari ekstensi. Jika mereka benar-benar menginginkan ekstensi yang bagus, mereka harus menerapkan standar WebExtensions jika tidak, hampir tidak ada orang yang akan mengonversi/mendukung ekstensi mereka untuk Safari.

Jika Anda memiliki pertanyaan tentang Ekstensi Aplikasi Safari yang tidak dapat Anda temukan dokumentasinya, silakan ping saya, saya telah mendalami ekstensi ini selama sekitar 6 bulan dan sekarang membenci Apple setiap detiknya.


Catatan tentang fungsionalitas tab yang hilang, Anda dapat menggunakan cara yang sangat mudah untuk berinteraksi dengan tab:

Skrip Apel.

Dalam kode Swift Anda, Anda dapat menjalankan skrip AppleScript yang akan berinteraksi dengan tab untuk Anda. Contoh skrip yang dapat mengubah tab saat ini:

tell front window of application "Safari"
    set current tab to tab ((get index of current tab) + 1)
end tell

tell front window of application "Safari"
        close current tab
end tell

tell akan membuka/mengaktifkan tab di sebelah kanan tab saat ini. tell akan menutup tab yang sedang terbuka. Jadi Anda dapat membuat fungsi AppleScript untuk "tab berikutnya/sebelumnya" dan "tutup saat ini ke kiri/kanan". Anda hanya perlu mencari cara untuk menulis AppleScript untuk melakukan apa yang Anda inginkan.

Masalahnya adalah saya cukup yakin memanggil skrip AppleScript akan merusak kotak pasir aplikasi yang berarti Anda tidak dapat mengirimkannya ke App Extension Store. Jadi Anda akan terjebak dengan mendistribusikannya sendiri. (Masih harus ditandatangani)

Agar adil, saya belum benar-benar menguji metode tab ini, tetapi di masa lalu saya telah menguji menjalankan AppleScript dari Swift Safari Extension dan menggunakannya untuk melakukan hal-hal di Safari. Tetapi belum merilis apa pun yang menggunakannya.

EDIT:

Saya agak mulai meragukan diri saya sendiri, jadi saya melanjutkan dan membuat bukti konsep menggunakan versi saat ini di repositori ini: https://streamable.com/kions

Ini menggunakan AppleScript saya di atas untuk mengubah tab. Kode menggunakan NSAppleScript dan kotak pasir aplikasi tidak harus dinonaktifkan.

Tetapi Anda harus menambahkan "Kepemilikan Pengecualian Sementara" ke file hak Anda.

<key>com.apple.security.temporary-exception.apple-events</key>
<string>com.apple.Safari</string>

Dokumentasi: https://developer.apple.com/library/archive/documentation/Miscellaneous/Reference/EntitlementKeyReference/Chapters/AppSandboxTemporaryExceptionEntitlements.html#//apple_ref/doc/uid/TP40011195 -CH5-SW3

Saya tidak yakin bagaimana pengaruhnya terhadap persetujuan untuk App Extension Store.

Tampaknya jika Anda memiliki alasan yang valid dan Apple setuju, itu akan disetujui: https://stackoverflow.com/a/13903333/776860

@jdf221 Wow, Anda tidak tahu betapa saya menghargai seseorang untuk mengajukan pertanyaan - saya sangat menghargai itu. Saya berharap saya memiliki energi untuk bekerja lebih banyak pada saat ini. Saya menghadapi beberapa hal sulit dalam kehidupan pribadi saya saat ini, tapi mudah-mudahan saya akan menemukan motivasi untuk kembali ke proyek ini. Saya menghargai kesabaran semua orang.

Saya hanya ingin masuk dan mengatakan bahwa itu akan luar biasa jika itu ada di app store.

Saya baru saja menghabiskan waktu lama untuk mencoba mengkompilasinya sebelum berhasil berkat ini: https://stackoverflow.com/questions/39754341/none-of-your-accounts-are-a-member-code-signing-errors- setelah memutakhirkan-ke-xcode

Itu menyakitkan

Hai semuanya,

Seperti yang saya sebutkan sebelumnya dalam masalah ini, saya telah berurusan dengan beberapa masalah pribadi beberapa bulan terakhir, tetapi semuanya jauh lebih baik sekarang! Sebagai hasil dari peningkatan kualitas hidup saya, saya jauh lebih sibuk dengan aktivitas jauh dari komputer, jadi saya tidak punya banyak waktu dan energi untuk dicurahkan ke open-source. Saya berharap menemukan percikan motivasi untuk mengeluarkan pengaturan dan menerbitkan ekstensi ke App Store segera.

Saya harap Anda semua yang menyumbang tidak merasa ditipu dengan cara apa pun. Terima kasih semua untuk kesabaran dan pengertiannya ❤️

@simeg dapatkah kami meyakinkan Anda untuk membagikan hak penerbitan/membuka Tim Pengembang sedikit? Saya terdaftar sebagai Pengembang Apple dan saya ingin menerbitkan ini dan terus membantu.

Hai teman-teman, saya menghabiskan beberapa waktu pagi ini untuk membuat ini berfungsi dan telah dikirimkan untuk verifikasi. Jika semuanya berjalan dengan baik, saya berharap kita akan melihat Vimari di Mac App Store dalam beberapa hari. Saya membuat garpu khusus, memasukkan PR terbaru yang menyertakan ikon yang bagus, dll.

TAPI , saya ingin mengatakan bahwa ada solusi lain di luar sana yang sudah ada di app store dan tampaknya JAUH lebih baik dipertahankan. Silakan periksa sVim: https://github.com/flipxfx/sVim

Jika Anda hanya ingin menggunakan sesuatu yang berfungsi seperti Vimium tanpa harus membuatnya sendiri, yang menurut saya adalah keinginan 95% orang, unduh saja dari Mac App Store di sini: https://safari-extensions .apple.com/details/?id=com.flipxfx.svim-6Q2K7JYUZ6

Jika Anda menginginkan Vimari, semoga kami akan segera melihatnya di App Store.

Ini ditolak dari App Store karena alasan berikut:

  1. Tidak bekerja dengan Mode Gelap MacOS.
  2. Tidak ada konten di Menu Jendela ekstensi – ini benar-benar nyata.

Jika ada orang yang sangat berkomitmen pada Vimari, kami harus memperbaiki hal-hal ini sebelum mengirim ulang jika kami memiliki harapan untuk masuk ke App Store untuk mempermudah pengunduhan. Tapi saya sangat menyarankan untuk memeriksa sVim, yang disebutkan dalam komentar saya di atas juga: https://safari-extensions.apple.com/details/?id=com.flipxfx.svim-6Q2K7JYUZ6

@nchase ,

Ah. Untuk beberapa alasan saya pikir itu sudah ada di toko aplikasi mac, maaf tentang itu.

sVim tampaknya sedikit lebih baik dipertahankan (seseorang secara aktif menggabungkan permintaan tarik di sana baru-baru ini beberapa bulan yang lalu dan ekstensi tidak memiliki salah satu masalah yang membuat saya ditolak ketika saya mengirimkan Vimari, jadi sepertinya liftnya akan lebih kecil untuk mendapatkannya di tempat yang seharusnya, tetapi saya bisa saja salah).

Belum melihat kode sama sekali, sungguh.

@danielcompton Apakah Anda tertarik menjadi juara Vimari? (Jika Anda melakukannya, saya hanya dapat mendorong perubahan yang telah saya buat sejauh ini ke remote saya dan Anda dapat mengambilnya di sana.)

Ya, saya telah memikirkan hal ini dan menjalankan build saya sendiri secara lokal yang telah menggabungkan beberapa PR. Saya akan senang untuk mencoba dan mendapatkan ini ke toko. Saya juga berpikir itu akan menjadi jangka panjang yang baik untuk membuat Safari dibangun berdasarkan lebih dekat pada proyek hulu sehingga kami dapat memanfaatkan (dan berkontribusi pada) peningkatan dalam basis kode asli.

Luar biasa

Apakah Anda memiliki perspektif tentang sVim vs Vimari? (yaitu apakah Anda sudah menggali cukup dalam untuk memiliki pendapat tentang kode dan arsitektur masing-masing?)

Saya tidak mengetahui sVim sampai Anda menyebutkannya, tetapi itu juga berasal dari plugin Chrome: cVim yang memiliki ~30k pengguna. Vimari berasal dari Vimium yang memiliki ~300k pengguna. Saya menggunakan Vimium di Chrome juga.

cVim menjelaskan beberapa perbedaan meskipun itu berusia lima tahun dan Vimium mungkin memiliki beberapa atau semuanya sekarang. Tak satu pun dari fitur yang terdaftar yang penting bagi saya, meskipun saya dapat melihat mengapa orang mungkin menginginkannya.

Saya benar-benar tidak dapat membuat perbandingan yang lebih tepat tentang mereka sekarang, apa pendapat Anda?

Saya menggunakan Vimium di Chrome juga, begitulah cara saya menemukan Vimari :)

Bergantung pada betapa mudahnya mem-porting fitur dari Vimium, menurut saya itu masih pilihan pertama saya karena sangat bersemangat dan aktif.

Beberapa tahun yang lalu saya dapat menulis permintaan tarik yang digabungkan ke Vimium tanpa banyak pekerjaan (yaitu kodenya cukup jelas dan mudah dipahami dan diubah, dan melirik Vimium lagi tampaknya masih cukup kecil dan dimengerti - Saya kira itu ditulis dalam naskah kopi yang merupakan penghalang kecil tetapi layak disebut).

Dari kejauhan sepertinya tidak terlalu menghebohkan fitur port/mempertahankan paritas ️

Saya pikir pekerjaan sebenarnya adalah menyiapkan proyek ini untuk App Store. Saya dapat menghabiskan 90 menit pada minggu lalu dan membuatnya lebih jauh dari yang diharapkan, tetapi tidak mengantisipasi masalah yang kami tolak.

Hai semuanya,

Pada Januari 2018 saya berkomitmen untuk menempatkan ekstensi ini di App Store dan orang-orang menyumbangkan uang untuk tujuan itu. Saya ingin meminta maaf kepada Anda yang menyumbang; Sejujurnya saya pikir saya memiliki energi dan ketekunan untuk membuatnya begitu, tetapi hal-hal terjadi yang membuat fokus saya beralih ke tempat lain. Seperti yang telah saya sebutkan sebelumnya, saya mengalami beberapa gangguan dalam kehidupan pribadi saya yang membuat saya memprioritaskan perasaan baik-baik saja lagi di atas hal lain. Saya sekarang merasa baik-baik saja lagi dan jika ada yang menginginkan uangnya kembali, saya akan dengan senang hati mengembalikannya. Kirimi saya email di [_removed karena tidak ada tindakan selama beberapa waktu_] untuk pengembalian dana! Saya merasa tidak enak karena tidak memenuhi apa yang saya janjikan dan saya tidak ingin ada yang merasa tertipu.

Adapun proyek berjalan saya tidak akan melanjutkan tujuan ini. Saya senang melihat orang lain melangkah dan jika saya dapat memberikan dukungan, beri tahu saya. Pemilik proyek ini tidak aktif lagi tetapi saya mungkin dapat menghubungi Anda untuk mendapatkan akses ke repo.

Saya senang melihat orang lain melangkah dan jika saya dapat memberikan dukungan, beri tahu saya. Pemilik proyek ini tidak aktif lagi tetapi saya mungkin dapat menghubungi Anda untuk mendapatkan akses ke repo.

Terima kasih, saya telah mengirim email ke Guy tentang mengambil alih pemeliharaan proyek ini dan memasukkannya ke App Store. Saya berharap untuk mendapatkan sesuatu di sana pada tanggal rilis Catalina sehingga para pemutakhir memiliki sesuatu untuk dipindahkan.

Halo semua,

Saya berencana untuk mentransfer Vimari ke @danielcompton . Saya telah membuka edisi terpisah untuk membahas komentar terakhir sebelum transfer - silakan kirim komentar apa pun di # 137

Ditutup demi #139.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat

Masalah terkait

breyed picture breyed  ·  5Komentar

dragonma-backup picture dragonma-backup  ·  10Komentar

Hultner picture Hultner  ·  9Komentar

danielcompton picture danielcompton  ·  19Komentar

jonchoi picture jonchoi  ·  7Komentar