Wie mache ich Geany zu meinem Standardeditor unter Ubuntu?

23

Eigentlich möchte ich den Standard-Texteditor auf meinem Ubuntu 12.04 von Nano auf Geany ändern. Als ich diesen Code verwendet habe:

update-alternatives --config editor

Ich sehe Geany nicht in der Liste.

Also, um Geany hinzuzufügen, soll das richtig funktionieren?

update-alternatives --install /usr/bin/geany geany /usr/bin/geany 10

Kannst du mir auch sagen, ob du mir persönlich vorschlagen würdest, den Standardeditor von Nano auf Geany zu ändern, und warum?

Noob programmieren
quelle
@izx Absolut :) Ich würde trotzdem gerne wissen, wie das über die Befehlszeile gemacht wurde. Egal, ich markiere Ihre Antwort als angenommen :)
Programmierung Noob

Antworten:

16

Die Befehlszeile lautet:

sudo update-alternatives --install /usr/bin/editor editor /usr/bin/geany 10

und dann sudo update-alternatives --config editormit Geany auswählen, falls erforderlich.

Ziehen Sie als grafische Alternative zur Befehlszeilenmethode die Verwendung von Gnome Alternatives ( sudo apt-get install galternatives) in Betracht . Führen Sie GAlternatives aus , wählen Sie den Editor in der linken Spalte aus und fügen Sie dann rechts Geany hinzu / wählen Sie Geany aus.

ish
quelle
5
Ich habe das getan und Geany ist ausgewählt, * 3 /usr/bin/geany 10 manual modeaber wenn ich versuche, eine Textdatei durch Doppelklicken in Nautilus zu öffnen, wird sie immer noch mit gedit geöffnet.
zu tun
@ ToDo Me auch. Ich frage mich, wie ich diese Befehle rückgängig machen kann.
14

Alternativ hat das auch bei mir geklappt:

xdg-mime default geany.desktop $(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')

Diese Zeile ruft alle MimeTypes ab, für die gedit registriert ist, führt eine Bereinigung durch (die sedBefehle) und legt schließlich geany als Standardanwendung für sie fest.

Ich habe es hier zusammen mit einer Reihe nützlicher Informationen zu Farbschemata gefunden.

Steve
quelle
1
Das hat wie ein Zauber gewirkt.
Faisal Sayed
1
Genial! Im Gegensatz zur akzeptierten Antwort funktioniert Ihre Lösung tatsächlich für mich. Vielen Dank! # 12.04
king_julien
Irgendeine Idee, wie ich das rückgängig machen kann?
king_julien
Keine Ahnung, aber sehen Sie sich die Antwort unten an, da Steve (der andere) hervorragend erklärt hat, was dieser tatsächlich tut - Sie sollten in der Lage sein, die Effekte von dort aus rückgängig zu machen. Warum machst du es rückgängig? Es war eine großartige Lösung für mich und hat über 6 Monate lang perfekt für mich funktioniert ...
Steve
11

Das ist etwas spät, aber ich dachte, es könnte jemandem helfen.

Mein Problem ist, dass ich nicht gerne Dinge kopiere und einfüge, die ich nicht verstehe. Deshalb hier eine Erklärung der bisherigen Antworten.

In erster Linie gibt es hier zwei Probleme, und beide Antworten sind für sich genommen richtig:

  1. der Standard-Kommandozeilen-Editor - gelöst von 'izx'
  2. die Zuordnung des Dateityps (MIME-Typ) in der Desktopsitzung für GUI-Anwendungen - gelöst von 'Steve'.

Hier im Detail:

  1. Kommandozeilenlösung -from 'izx'

    • Fügt geany (eine GUI-Anwendung) zur Liste der alternativen Editoren hinzu und legt sie als Standard fest.
    • Ich habe immer gedacht, dass der Editor normalerweise für textbasierte Editoren wie vi, vim, nano usw. reserviert ist, aber ich habe es gerade überprüft, und das scheint auch zu funktionieren.
    • Das Ergebnis bedeutet, dass Sie die von Ihnen gewählte Standardeinstellung verwenden können, um die Datei zu öffnen, wenn zum Beispiel:
  2. MIME-Lösung - von 'Steve'

Auf Dateiebene gibt es zwei wichtige Listen:

/usr/share/applications/defaults.list - die Systemstandardliste.

~/.local/share/applications/mimeapps.list - Die Standardliste der persönlichen Desktopsitzungen des Benutzers

Was macht der Befehl?

Aus der Manpage xdg-mime (man xdg-mime)

xdg-mime - command line tool for querying information about file type handling and adding descriptions for new file type

Der xdg-mime default...Befehl fügt der persönlichen Liste des Benutzers Einträge hinzu.

Lassen Sie uns den Befehl abbrechen.

Befehl:

xdg-mime default geany.desktop $(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')

Der Befehl kann gelesen werden als:

Legen Sie geany.desktop als Standardanwendung für den MIME-Typ fest, der von ausgegeben wird $(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')

Anschauen

$(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')
  • Nimmt alle MIME-Typen aus der Datei geany.desktop
  • entfernt das "MimeType ="
  • ersetzt ";" mit ""
  • geben uns:
    text/plain text/x-chdr text/x-csrc text/x-c++hdr text/x-c++src text/x-java text/x-dsrc text/x-pascal text/x-perl text/x-python application/x-php application/x-httpd-php3 application/x-httpd-php4 application/x-httpd-php5 application/xml text/html text/css text/x-sql text/x-diff

Wenn wir uns die persönliche Datei des Benutzers ansehen, nachdem wir den Befehl ausgeführt haben, sehen wir alle Dateizuordnungen, die für die Anwendung geany.desktop festgelegt wurden:

[Default Applications]
x-scheme-handler/mailto=userapp-Thunderbird-ZP00XW.desktop
message/rfc822=userapp-Thunderbird-ZP00XW.desktop
application/x-extension-eml=userapp-Thunderbird-ZP00XW.desktop
application/x-perl=sublime_text.desktop
text/plain=geany.desktop
text/x-chdr=geany.desktop
text/x-csrc=geany.desktop
text/x-dtd=sublime_text.desktop
text/x-java=geany.desktop
text/mathml=sublime_text.desktop
text/x-python=geany.desktop
text/x-sql=geany.desktop
text/x-c++hdr=geany.desktop
text/x-c++src=geany.desktop
text/x-dsrc=geany.desktop
text/x-pascal=geany.desktop
text/x-perl=geany.desktop
application/x-php=geany.desktop
application/x-httpd-php3=geany.desktop
application/x-httpd-php4=geany.desktop
application/x-httpd-php5=geany.desktop
application/xml=geany.desktop
text/html=geany.desktop
text/css=geany.desktop
text/x-diff=geany.desktop

In diesem Wissen ist hier mein spezielles Problem und wie ich es gelöst habe.

Problem:

Ich wollte die Standardanwendung zum Öffnen von Dateien in Nautilus von "gedit" -> "sublime text" ändern.

Lösung:

Finden Sie die Systemstandards für gedit mit:

$less /usr/share/applications/defaults.list | grep gedit
application/x-perl=gedit.desktop
text/plain=gedit.desktop
text/x-chdr=gedit.desktop
text/x-csrc=gedit.desktop
text/x-dtd=gedit.desktop
text/x-java=gedit.desktop
text/mathml=gedit.desktop
text/x-python=gedit.desktop
text/x-sql=gedit.desktop

Ersetzen Sie "gedit" durch "sublime_text" und fügen Sie die Einträge dem Abschnitt "Default Applications" meiner persönlichen defaults.list hinzu

application/x-perl=sublime_text.desktop
text/plain=sublime_text.desktop
text/x-chdr=sublime_text.desktop
text/x-csrc=sublime_text.desktop
text/x-dtd=sublime_text.desktop
text/x-java=sublime_text.desktop
text/mathml=sublime_text.desktop
text/x-python=sublime_text.desktop
text/x-sql=sublime_text.desktop
Steve-B
quelle
Dies ist sehr hilfreich, aber Sie können auch in Betracht ziehen, vorhandene Antworten zu bearbeiten und zu verbessern. Es ist oft viel weniger Arbeit.
Tom Brossman
2
Guter Punkt Tom, danke. Ich bin immer ein bisschen besorgt, wenn es darum geht, die Antworten der Leute zu bearbeiten. Ich werde der akzeptierten Antwort einen Kommentar hinzufügen.
Steve-B
Mach dir keine Sorgen, wenn du den Beitrag eines anderen hier bearbeitest, es wird erwartet. Die Änderungen werden von Fachleuten überprüft, bis Sie 2000 Wiederholungen erreicht haben. Wenn Sie alle wichtigen Informationen in einer Antwort zusammenfassen, können Sie sie später leichter finden.
Tom Brossman
1

Da es Kommentare gibt, die darauf hinweisen, dass die akzeptierte Antwort nicht korrekt war, sollte ich darauf hinweisen, dass diese Frage keine einzige Antwort haben kann. Wenn die Frage geändert wurde, um die CLI anzugeben, und die Abfragen für die GUI in einen neuen Thread verschoben wurden, würde dies die Verwirrung beseitigen. Dafür ist es wohl zu spät.

Sowieso für Nautilus (aka Dateien) auf Gnome unter Ubuntu 14.04. Und angesichts der akzeptierten Antwort könnten Sie (wie ich) erwarten, dass das Äquivalent wäre:
donotdothisssudo update-alternatives --install /etc/alternatives/gnome-text-editor gnome-text-editor /usr/bin/geany 10

Das habe ich mir gedacht und es hat die Links gebrochen, also tu das nicht! Wenn Sie das getan haben, waren sie für mich:
lrwxrwxrwx /usr/bin/gnome-text-editor -> /etc/alternatives/gnome-text-editor lrwxrwxrwx /etc/alternatives/gnome-text-editor -> /usr/bin/gedit

Während der Reparatur dieses Fehlers habe ich diese Links wie folgt neu erstellt:
lrwxrwxrwx /usr/bin/gnome-text-editor -> /etc/alternatives/gnome-text-editor lrwxrwxrwx /etc/alternatives/gnome-text-editor -> /usr/bin/geany

Da alles, was ich wirklich getan habe, das Ersetzen des sekundären Simlinks ist und ich die gewünschte Antwort in meinem System habe, ist meine Vermutung, dass die Aufgabe einfach dies ist:
sudo ln -s /usr/bin/geany /etc/alternatives/gnome-text-editor

Das Ausführen eines CLI-Befehls zum Ändern einer GUI-spezifischen Funktion muss jedoch falsch sein. Der Ort, an den mich meine Hände bei der Suche nach dieser Änderungsoption bringen, ist das Nautilus-Menüsystem neben der Einstellung für den einzelnen Dateityp. Der einzige Grund, warum ich dorthin gehe, ist, dass dort ein Teil der Lösung ist. Wenn Sie meiner Ansicht nach der Logik von DPKG (Update-Alternativen) gefolgt sind und diese in Ihre Distribution aufgenommen haben, möchten Sie nicht, dass eine User Space-Anwendung wie Nautilus Ihre Settings Manager-App beeinträchtigt. Mein bescheidener Vorschlag, dies zu beheben, wäre, den Einstellungen >> Details >> Standardanwendungen ein neues Editor-Einstellungssteuerelement hinzuzufügen, das aus Benutzersicht eine neue Seite sein müsste. Das Nautilus-Team müsste dann sein Menü ändern, damit der Benutzer zu dieser neuen Seite umgeleitet wird. Dies würde kompromittieren, wohin meine Hände mich gebracht haben, um nach der Einstellung zu suchen, wohin meine Hände mich stattdessen hätten bringen sollen, und würde einen Einpunkt-Eingabevorgang in eine Systemeinstellung verwalten. Es sieht so aus, als müsste diese Änderung innerhalb des Bereichs von Debians Alternativen liegen, obwohl ich es nur vermute. Ohne die Idee des Nautilus-Teams hätte es natürlich keinen Sinn, vorauszusagen. Sie müssten auch die API oder einen gleichwertigen Mechanismus festlegen.

Die Einstellungsseite in meiner Ansicht müsste sowohl die Standardauswahl des Gnome-Editors als auch die Anwendung abdecken, die zum Öffnen jeder einzelnen Datei verwendet wird (die die aktuelle Funktionalität von Nautilus ersetzen soll).

Ich poste dies als vorübergehender Gedanke. Wenn es Ihnen zusagt, können Sie es gerne vorantreiben. Leider kenne ich das Verfahren und das Protokoll nicht, um dies selbst zu tun.

Jim Wotherspoon
quelle