Achtung

Dieser Beitrag ist schon sehr alt, und die Infos hier sind sicherlich hoffnungslos veraltet…

Dateiendung einem Programm zuweisen

Ubuntu
ubuntuusers
Autor:in

produnis

Veröffentlichungsdatum

13. Januar 2011

Ich nutze Ubuntu mit GNOME, arbeite aber in Sachen LaTeX am liebsten mit kile. Dort kann man sogenannte Projekte anlegen, in welchen alle relevanten (.tex)-Dateien hinterlegt sind. Kile speichert die Projektdatei mit der Endung .kilepr ab. Wenn man nun auf eine solche Datei doppelklickt, dann wird diese mit dem Standardeditor geöffnet - nicht aber mit kile. Jetzt könnte man per Rechtsklick und “Mit anderer Anwendung öffnen -> kile” das Ganze umbiegen. Das hat aber den Nachteil, dass jetzt ALLE Textdokumente immer mit kile geöffnet werden - das will ich aber nicht! Nautilus orientiert sich leider nicht an dem Dateisuffix, sondern rein an dem Dateiinhalt (oder wahrscheinlich nach dem, ws „file“ zurückgibt). Sprich: Wenn man eine Textdatei foo.txt und eine Datei bar.kilepr hat und sagt, dass kilepr mit kile geöffnet werden sollen, werden auch alle anderen Textdatein wie foo.txt mit kile geöffnet.

Lösen kann man dieses Problem zum Beispiel, indem man dem System einen extra mime-Typ hinzufügt, der sich an der Dateiendung orientiert.

Hierzu erstellt man mit root-Rechten die Datei kile-project.xml im Ordner /usr/share/mime/packages/:

sudo nano /usr/share/mime/packages/kile-project.xml

Diese Datei erhält folgenden Inhalt:

<?xml version="1.0" encoding="UTF-8"?>
<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
        <mime-type type="text/go-listing">
                <comment>Kile Project</comment>
                <comment xml:lang="de">Kile Project</comment>
        <glob pattern="*.kilepr"/>
        </mime-type>
</mime-info>

Jetzt muss die mime-Datenbank aktualisiert werden:

sudo update-mime-database /usr/share/mime

Anschließend wird Nautilus neugestartet:

sudo killall nautilus

Jetzt kann man mit Nautilus (wie oben beschrieben) per Rechtsklick auf eine .kilepr-Datei dieser Dateiendung ein Programm zuweisen.