Am Scheideweg mit Junction

Di, 22. März 2022, Ralf Hersel

Beim Öffnen von Dateien gibt es zwei Paradigmen: 'Object → Action' oder 'Action → Object'. Beim Ersten wird eine Datei gewählt und dann die Anwendung, mit der die Datei geöffnet werden soll (Beispiel: Klicken auf eine Datei im Dateimanager). Im zweiten Fall wählt man die Anwendung und dann die zu öffnende Datei (Beispiel: Programm starten und dann die Datei darin öffnen). Um den zweiten Anwendungsfall geht es hier nicht. Wenn du eine Anwendung öffnest, weisst du bereits was du willst. Es geht um den ersten Fall, bei dem nicht unbedingt klar ist, mit welcher Anwendung die Datei geöffnet werden soll.

Betrachten wir den ersten Fall: im Dateimanager deiner Distribution wird die Anwendung aufgrund des MIME-Types der Datei ausgewählt. Die primär zu öffnende Anwendung kann über die Einstellungen geändert werden. Ausserdem kann über das Kontextmenü 'Mit anderer Anwendung öffnen' eine passende Alternativanwendung gewählt werden. In den meisten Fällen passt die Primäranwendung; anderenfalls ist die Sekundäranwendung mit zwei bis drei Klicks zu erreichen. Wem das nicht gefällt, kann Junction verwenden.

Es gibt Dateien, bei denen es nicht klar ist, mit welcher Anwendung sie geöffnet werden sollen. Beispiele dafür sind:

  • Markdown-Dateien: Code-Editor oder Markdown-Editor?
  • HTML-Dateien: Webbrowser oder Code-Editor?
  • Bild-Dateien (jpg, png): Bildbetrachter oder GIMP?
  • SVG-Dateien: Inkscape oder Webbrowser?
  • CSV-Dateien: LibreOffice oder Text-Editor?

In solchen Fällen ist es sinnvoll, wenn man beim Anklicken der Datei, die Alternativen zur Auswahl hat. Genau das bietet das Flatpak Junction.

Der Screenshot zeigt die Funktionsweise:

  1. Im Dateimanager wählt man als primäre Anwendung 'Junction' aus. Dies ist für jeden MIME-Type individuell möglich, was wichtig ist, weil man pro Dateityp entscheiden kann, ob Junction zum Einsatz kommt, oder das übliche Verfahren beibehalten werden soll.
  2. Hat man auf eine Datei geklickt (im Beispiel eine Markdown-Datei), öffnet sich im zweiten Schritt das Junction-Popup mit folgenden Wahlmöglichkeiten: Geany als Code-Editor und MarkText als Markdown-Editor.
  3. Die drei Punkte zeigen die Gesamtauswahl der Anwendung an.
  4. In der Gesamtauswahl stehen zuoberst die Hauptanwendung zur Auswahl, sowie sekundäre Apps (Zugehörige Anwendungen) und eine lange Liste von weiteren Programmen.
  5. Im Popup-Fenster gibt es zudem die Möglichkeit, den Ordner der Datei zu öffnen. Das ist sinnvoll, wenn man die Datei nicht aus dem Dateimanager, sondern aus der allgemeinen Suche öffnen möchte.

Schauen wir nun auf die Effizienz. Beim herkömmlichen Vorgehen kommt man meistens mit einem Klick zum Ziel: man klickt im Dateimanager auf eine Datei und die Primäranwendung öffnet sich. Falls man eine andere Anwendung öffnen möchte, braucht man drei bis vier Klicks, um eine Sekundäranwendung zu starten. Mit Junction werden immer nur zwei Klicks benötigt, um die passende Anwendung zu starten.

Wenn man berücksichtigt, dass Junction für jeden Dateityp separat gewählt werden kann, ist dieses Werkzeug eine Bereicherung für den GNU/Linux-Desktop. Bei allen Dateien, die eine eindeutige Anwendung erfordern, belässt man es beim Standardverhalten. Werden Dateien oft mit unterschiedlichen Apps geöffnet, ist Junction die bessere Wahl.

Und was ist mit dem Terminal? Nun, die Kommandozeile unterstützt kein 'Object → Action' Paradigma, ausser die Datei enthält ein Shebang. Damit sagt die Datei, mit welchem Programm sie geöffnet werden möchte. Verwendet man allerdings einen Terminal-Dateimanager wie z.B. 'nnn' (was sehr zu empfehlen ist), funktioniert Junktion einwandfrei.

Quelle: https://flathub.org/apps/details/re.sonny.Junction