Skip to content

Faire connaître une extension à Gedit pour la coloration syntaxique

29 novembre 2011

Suite au développement d’un nouveau langage, j’ai créé la coloration syntaxique associée. Je la charge dans le répertoire contenant les .lang de gedit (/usr/share/gtksourceview-X.Y/language-specs/) et si je demande à gedit de les colorer fichier par fichier, ça marche. Mais à chaque réouverture de fichier, je suis obligé de déclarer le type de coloration voulue.

On trouve de nombreux tutoriels pour la création de coloration pour Gedit (http://doc.ubuntu-fr.org/creer_un_jeu_de_couleurs_pour_gedit par exemple). Mais pas grand chose sur la reconnaissance des extensions. Je vais ici faire fonctionner la reconnaissance pour un utilisateur unique.

Je vais juste montrer la ligne indiquant le nom associé à l’extension dans les fichiers .lang :
<language _name="Xxx tongue" mimetypes="text/x-xxx">

Ici, le nom du langage est x-xxx. Il va falloir ensuite indiquer un mime type pour que les extensions .xxx comme étant des fichiers x-xxx.

Pour cela, on crée un fichier xxx.xml comme suit :

<?xml version="1.0" encoding="utf-8"?>
<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
  <mime-type type="text/x-xxx">
    <comment>xxx file</comment>
    <glob pattern="*.xxx"/>
    <acronym>XXX</acronym>
    <expanded-acronym>XXX File</expanded-acronym>
  </mime-type>
<mime-info>

Dans le glob pattern on donne les extensions associées au type : *.xxx ici.
Ce fichier est placé dans ~/.local/share/mime/packages/.

Puis on effectue les commandes suivantes :

#!/bin/bash

cd ~/.local/share
update-mime-database mime/

Ici on affecte que les variables de l’utilisateur (dans le ~/.local). Afin de vérifier que l’extension est bien reconnue, on lance la commande suivante sur un fichier ayant la bonne extension :

#!/bin/bash

touch ~/a.xxx<code>
gnomevfs-info ~/a.xxx
rm ~/a.xxx

Le résultat de la commande donne dans la rubrique MIME-TYPE :text/x-xxx.

Ensuite, en ouvrant les fichiers avec la bonne extension avec Gedit, nous avons la bonne coloration syntaxique.

One Comment leave one →
  1. Gil44 permalink
    6 août 2016 19 h 57 mi

    Bonjour

    Une autre méthode pour faire reconnaître les fichiers .tpl comme de l’html par gedit:

    1/ faire un backup du fichier de configuration de gedit:

    $ cd /usr/share/mime/packages
    $sudo cp freedesktop.org.xml freedesktop.org.xml.backup

    2/ éditer le fichier de configuration initial (en root ou sudo):

    $gksu gedit /usr/share/mime/packages/freedesktop.org.xml

    3/ rechercher les déterminants des fichier .php:

    4/ ajouter un ‘glob partern tpl’
    À la suite de ces lignes de php, ajouter cette ligne:

    5/ redémarer (en root ou sudo) le mime:

    $ update-mime-database /usr/share/mime

    gedit devrait alors reconnaître les fichiers .tpl comme de l’html

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s

%d blogueurs aiment cette page :