Vimium: Funktionsanfrage: Safari-Unterstützung auf macOS Big Sur mit neuer Web Extension API

Erstellt am 28. Juni 2020  ·  16Kommentare  ·  Quelle: philc/vimium

Mit der Safari Web Extensions API sollten wir Safari mit derselben Codebasis unterstützen können.

Dies wäre sehr großartig, da aktuelle Alternativen auf Safari keine Funktionsgleichheit mit Vimium haben.

Links:

https://developer.apple.com/documentation/safariservices/safari_web_extensions
https://developer.apple.com/videos/play/wwdc2020/10665/
https://hacks.mozilla.org/2020/06/welcoming-safari-to-the-webextensions-community/

Hilfreichster Kommentar

Hallo Leute! Ich bin der (manchmal abwesende) Betreuer von Vimari , einer Safari-Portierung von Vimium. Vimari wurde vor vielen Jahren von der Vimium-Codebasis abgespalten und ist meistens hinter den neuen Funktionen in Vimium zurückgeblieben. Ich bin sehr begeistert von der neuen Safari Web Extension-Unterstützung, theoretisch würde es uns ermöglichen, die Vimari-Codebasis mit der Vimium-Codebasis zu vereinen (falls gewünscht). Ich sehe hier einige Möglichkeiten der Zusammenarbeit, je nachdem, was die Betreuer von Vimium wünschen:

  • Fügen Sie Vimium Unterstützung für Safari-Weberweiterungen hinzu und lassen Sie die Vimium-Entwickler Veröffentlichungen außerhalb des App Stores verwalten (Updates hier werden schwieriger sein)
  • Fügen Sie Vimium Unterstützung für Safari-Weberweiterungen hinzu und lassen Sie die Vimium-Entwickler Veröffentlichungen für den App Store verwalten
  • Fügen Sie Vimium Unterstützung für Safari-Weberweiterungen hinzu und lassen Sie die Vimari-Entwickler (derzeit ich) Veröffentlichungen für den App Store verwalten. Dies könnte bei Bedarf in Vimium umbenannt werden.
  • Wenn Sie nicht an Safari-Unterstützung interessiert sind oder einen abwartenden Ansatz wählen möchten, erstellt Vimari eine neue Abzweigung der Vimium-Codebasis, um einen Safari-fähigen Port zu erstellen, Patches nach Möglichkeit im Upstream beizusteuern und unsere eigenen Releases durchzuspielen der App Store
  • Vimari verzweigt einen neuen Fork von Vimium und erstellt einfach unsere eigene frische Codebasis. Dies wurde im Wesentlichen vor vielen Jahren getan und wäre meine am wenigsten bevorzugte Option.

Alle 16 Kommentare

Es erfordert einen Apple Developer Account, was 99 US-Dollar pro Jahr bedeutet...

Gibt es überhaupt eine Spende für die Vimium-Aktion, um die Kosten für so etwas zu decken? Die Safari Web Extensions API war wahrscheinlich die WWDC-Ankündigung, die mich am meisten begeistert hat, insbesondere wegen des Potenzials, Vimium funktionieren zu sehen.

Wir haben hier mehrere Möglichkeiten:

  1. Wir können Spenden haben, um die Kosten zu decken. (GitHub-Sponsor usw.)
  2. Wir können die App im AppStore kostendeckend verkaufen. Gefällt mir (Dunkler Leser)
  3. Bereitstellen mit dem persönlichen Konto von jemandem (ich freue mich, meinen beizutragen, da wir sowieso die Registrierung für das Apple Developer Program benötigen)
  4. Nicht an AppStore verteilen, und der Benutzer kann es entweder mit Xcode erstellen oder eine eigene Verteilungsmethode erstellen.

Meine einzige Sorge ist, dass die WebExtension-API-Unterstützung von Safari für vimium nicht gut genug ist

Das interessiert mich auch. Momentan arbeite ich ein wenig an Vimari, einer der Safari-Alternativen da draußen auf meinem eigenen Fork . Da ich die Beta von macOS Big Sur ausführe, konnte ich den Safari Web Extension-Konverter erfolgreich im Vimium-Projekt mit folgendem Ergebnis ausführen:

$ xcrun safari-web-extension-converter ./vimium --project-location ./vimium-xcode
Xcode Project Location: ./vimium-xcode
App Name: Vimium
App Bundle Identifier: com.yourCompany.Vimium
Language: Swift
Is this correct? [yes]: yes
Warning: The following keys in your manifest.json are not supported by your current version of Safari. If these are critical to your extension, you should review your code to see if you need to make changes to support Safari:
        history
        clipboardRead
        match_about_blank
        bookmarks
        sessions
        notifications

Anfangs konnte die Erweiterung nicht ausgeführt werden, da ein Fehler im Manifest content_scripts in Zeile 78 wo der matches Schlüssel für content_scripts/file_urls.css .

"matches": ["file:///", "file:///*/"],

Ich kenne die Codebasis für Vimium nicht, aber ich dachte, dass das Entfernen einer CSS-Datei aus dem Manifest die Anwendung nicht beschädigen würde, wenn es überhaupt funktionierte, also habe ich diesen Abschnitt des Manifests entfernt. Danach konnte ich die Erweiterung in Safari 14 erstellen und aktivieren.

Ich bin auf ein Problem gestoßen, bei dem Safari nach der Aktivierung abstürzt, weil es nicht in der Lage ist, etwas in Graustufen zu konvertieren (vermutlich das Logo, da alle Erweiterungslogos Graustufen sind). Auch das Symbol von Vimium wird in Safari nach einem Neustart nicht angezeigt.

Screenshot 2020-07-11 at 19 10 32

Screenshot 2020-07-11 at 19 30 26

Die Erweiterung scheint jedoch aktiviert zu sein und in diesem nächsten Bild können Sie alle Dateien sehen, die von der Erweiterung in die Seite geladen werden (wie dies bei Vimari der Fall wäre), nachdem dem Tool die Berechtigung zum Zugriff auf den Inhalt der Website erteilt wurde.

Screenshot 2020-07-11 at 19 18 31

Leider scheint keine der Funktionen von Vimium zu funktionieren, ich sehe keine Fehler in der Konsole (Xcode oder Safari), daher könnte es sein, dass ein erster Aufruf nicht erfolgt. Wenn Interesse besteht, diesen Weg fortzusetzen, um eine funktionierende Version (vielleicht nicht mit allen Funktionen) von Vimium in Safari zu erhalten, bin ich bereit, einen Nachmittag mit jemandem zu verbringen, der mit der Vimium-Codebasis vertraut ist, um zu versuchen, es zu erreichen Arbeit.

Vimium sollte eine Hintergrundseite besitzen, sodass die Fehlermeldungen möglicherweise in der Konsole der bg-Seite statt auf der Optionsseite stehen.

Sie hatten Recht, ich habe einen Fehler auf der Hintergrundseite gefunden:

Screenshot 2020-07-11 at 20 50 17

Hallo Leute! Ich bin der (manchmal abwesende) Betreuer von Vimari , einer Safari-Portierung von Vimium. Vimari wurde vor vielen Jahren von der Vimium-Codebasis abgespalten und ist meistens hinter den neuen Funktionen in Vimium zurückgeblieben. Ich bin sehr begeistert von der neuen Safari Web Extension-Unterstützung, theoretisch würde es uns ermöglichen, die Vimari-Codebasis mit der Vimium-Codebasis zu vereinen (falls gewünscht). Ich sehe hier einige Möglichkeiten der Zusammenarbeit, je nachdem, was die Betreuer von Vimium wünschen:

  • Fügen Sie Vimium Unterstützung für Safari-Weberweiterungen hinzu und lassen Sie die Vimium-Entwickler Veröffentlichungen außerhalb des App Stores verwalten (Updates hier werden schwieriger sein)
  • Fügen Sie Vimium Unterstützung für Safari-Weberweiterungen hinzu und lassen Sie die Vimium-Entwickler Veröffentlichungen für den App Store verwalten
  • Fügen Sie Vimium Unterstützung für Safari-Weberweiterungen hinzu und lassen Sie die Vimari-Entwickler (derzeit ich) Veröffentlichungen für den App Store verwalten. Dies könnte bei Bedarf in Vimium umbenannt werden.
  • Wenn Sie nicht an Safari-Unterstützung interessiert sind oder einen abwartenden Ansatz wählen möchten, erstellt Vimari eine neue Abzweigung der Vimium-Codebasis, um einen Safari-fähigen Port zu erstellen, Patches nach Möglichkeit im Upstream beizusteuern und unsere eigenen Releases durchzuspielen der App Store
  • Vimari verzweigt einen neuen Fork von Vimium und erstellt einfach unsere eigene frische Codebasis. Dies wurde im Wesentlichen vor vielen Jahren getan und wäre meine am wenigsten bevorzugte Option.

@danielcompton Ich bin gespannt, ob die 1. Idee möglich ist oder nicht - dürfen Entwickler ohne Apple-Account eine Dev-Version von Vimium in Safari laden?

@danielcompton schön , dich zu haben! Ich interessiere mich sehr für Safari-Unterstützung. Von den von Ihnen vorgestellten Optionen ist die zweite das Ziel. Ich verwalte Veröffentlichungen im Chrome- und Firefox-Store und kann dies im App Store tun (ich habe ein aktives Entwicklerkonto).

Wo fangen wir an?

Safari 14 wurde öffentlich ausgeliefert. Hat jemand offene Probleme, bei denen er Hilfe benötigt, um diese Bemühungen voranzutreiben?

Hi. Fragt sich, ob es an dieser Front Fortschritte gibt.

Ich verwende Vimium auf Chrome und würde es gerne auch in Safari haben.

Ich würde das gerne sehen, Vimium ist einer der wenigen Gründe, warum ich Chrome immer noch verwende. Würde gerne zu Safari wechseln und meine Akkulaufzeit zurück haben und haben.

Hi. Ich frage mich, ob es diesbezüglich Fortschritte gibt.

Ich habe darauf gewartet, vimium auf Safari zu verwenden.

Ich verwende Vimari in Safari unter macOS Big Sur problemlos.

@philc @danielcompton gibt es Fortschritte/
Liebe, dass vimium die Verschmelzung von vimari umarmen möchte ❤️
Ich würde wirklich gerne zu Safari wechseln, weil es so schnell ist, aber ohne den Befehl T (Durchsuchen Sie Ihre geöffneten Registerkarten) bin ich verloren xD

@philc @danielcompton gibt es Fortschritte/
Liebe, dass vimium die Verschmelzung von vimari umarmen möchte ❤️
Ich würde wirklich gerne zu Safari wechseln, weil es so schnell ist, aber ohne den Befehl T (Durchsuchen Sie Ihre geöffneten Registerkarten) bin ich verloren xD

Ich warte auch auf das Vimium für Safari. Beim Wechseln von geöffneten Tabs kann vielleicht dieser Alfred-Workflow helfen: https://github.com/mandrigin/AlfredSwitchWindows

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen