Aller au contenu

gedit

Un article de Wikipédia, l'encyclopédie libre.

gedit
Description de l'image GNOME Gedit 2018.svg.
Description de cette image, également commentée ci-après
Capture d'écran de gedit 2.22.3 avec coloration syntaxique d'un fichier en langage C.
Informations
Développé par Communauté gedit
Première version Voir et modifier les données sur Wikidata
Dernière version 46.1 ()[1]Voir et modifier les données sur Wikidata
Version avancée 43.alpha ()[2]Voir et modifier les données sur Wikidata
Dépôt gitlab.gnome.org/GNOME/geditVoir et modifier les données sur Wikidata
Écrit en C et PythonVoir et modifier les données sur Wikidata
Interface GTKVoir et modifier les données sur Wikidata
Système d'exploitation MultiplateformeVoir et modifier les données sur Wikidata
Environnement Systèmes Unix, Mac OS X, Windows
Formats lus DocBook, HTML (en), Texinfo source (d), Lua source file (d), Perl script (d), PHP script (d), Python script (d), Ruby Script (d), Tcl Script (d), ActionScript file format (d), Active Server Page (d), Bennu bitmap file (d), C source code file (d), C# source code file (d), C++ source code file (d), C++ header (d), C header file (d), D source code file (d), Eiffel Source Code File (d), Erlang source code file (d), Visual F# Source File (d), Forth source code file (d), Go script (d), Groovy script file (d), Haskell Script File Format (d), Haxe source code file (d), Interface Definition Language File (d), J script file (d), Java language source code file (d), Kotlin Source Code File (d), Lex source file (d), Nemerle source code file (d), NetRexx source code file (d), OCaml source code file (d), Pascal script (d), Prolog source code file (d), Rust source code file (d), Scala source code file (d), Scheme script (d), SPARQL query file format (d), Structured Query Language script (d), Standard ML source code file (d), Swift script (d), SystemVerilog Source Code File (d), Apache Thrift file (d), Vala source file (d), Visual Basic File (d), Verilog source code (with rem 1) (d) et Verilog source code (with rem 2) (d)Voir et modifier les données sur Wikidata
Type Éditeur de texteVoir et modifier les données sur Wikidata
Licence Licence publique générale GNU version 2 ou ultérieureVoir et modifier les données sur Wikidata
Documentation help.gnome.org/users/gedit/stableVoir et modifier les données sur Wikidata
Site web wiki.gnome.org/Apps/GeditVoir et modifier les données sur Wikidata

gedit est un éditeur de texte libre (sous licence GPL), compatible UTF-8. Il est fourni par défaut avec l'environnement graphique GNOME. Il a été conçu à l'aide de la bibliothèque GTK de façon à avoir une interface graphique simple et propre, inspiré des idéaux du projet GNOME.
Gedit a également été porté sous Windows et sur Mac OS X, toutefois la version Windows est moins testée que les autres versions et contient davantage de bugs et d'incompatibilités que les autres.

Fonctionnalités

[modifier | modifier le code]
  • Support intégral de l'encodage de caractères Unicode.
  • Modes de surbrillance configurables pour de nombreux langages de programmation (C, C++, Java, HTML, XML, Python, Perl, OCaml, Haskell, etc.)
  • Modes annuler/refaire à niveaux configurables.
  • Chargement transparent de fichiers distants, avec le support du système GVFS, qui permet d'éditer, et de consulter des fichiers, en ligne, ou sur un réseau local (via FTP, SSH, HTTP, ou HTTPS).
  • Rétablissement de versions de fichiers.
  • Support de l'impression et de l'aperçu avant impression.
  • Support du presse-papier (fonctions couper, copier et coller).
  • Recherche et remplacement.
  • Déplacement vers une ligne donnée.
  • Indentation automatique.
  • Retour automatique à la ligne.
  • Numérotation des lignes.
  • Alignement du texte à droite.
  • Sauvegarde de fichiers.
  • Choix des polices et des couleurs (schéma de couleurs modifiable par l'utilisateur).
  • Manuel de l'utilisateur disponible en intégralité en ligne.
  • Un système de plugins permettant d'ajouter de nouvelles fonctionnalités avancées (voir le paragraphe suivant).
  • Des onglets déplaçables.
  • Support des modificateurs Vim, Emacs ou Kyle (pour changer les paramètres fichier par fichier).
  • Dynamiquement ou pseudo-dynamiquement extensible par l'utilisateur (comme Emacs, jEdit ou Vim) : voir le paragraphe suivant.

Étendre gedit

[modifier | modifier le code]

Gedit est extensible, par deux méthodes différentes : des scripts ou des plugins.

Les plugins de Gedit sont écrits en C ou en Python. Il n'est pas nécessaire de le relancer pour activer des nouveaux plugins, c'est par contre nécessaire lors de l'installation de nouveaux plugins. Il existe des paquets gedit-plugins ou gedit-extra-plugins ou encore gedit-code-assistance selon les distributions.

Dans ces greffons, on peut citer par exemple Terminal Embarqué qui permet d'intégrer une console dans le panneau latéral ou inférieur. Ou alors Synctex qui permet de supporter Synctex, pour synchroniser l'édition de fichiers LaTeX et le fichier PDF produit par compilation.

Gedit est aussi extensible par des scripts. Cette fonctionnalité demande le plugin Outils Extérieurs, intégré dans le paquet gedit-plugins.

Ces scripts peuvent être écrits en Bash, Python ou n'importe quel autre langage de script. Le lanceur de script définit certaines variables, comme GEDIT_SELECTED_TEXT qui contient le texte sélectionné lors du lancement du script, ou GEDIT_CURRENT_LINE_NUMBER qui stocke le numéro de la ligne en cours d'édition.

Voici un exemple de tel script, écrit en Bash.

#!/bin/sh
# [Gedit Tool]
# Comment=Ouvre un terminal dans l'emplacement du document
# Name=Ouvrir un terminal ici
# Shortcut=<Shift><Control>F9
# Languages=
# Applicability=local
# Output=output-panel
# Input=nothing
# Save-files=nothing

gnome-terminal --working-directory="$GEDIT_CURRENT_DOCUMENT_DIR" &

Un second exemple, en Python, tiré de la documentation officielle.

#!/usr/bin/env python
# [Gedit Tool]
# Name=Execute Highlighted Python Code
# Shortcut=<Shift><Control><Alt>p
# Applicability=all
# Output=output-panel
# Input=selection
# Save-files=nothing

import sys
result = eval(sys.stdin.read())
print "Output :\n", result, type(result)

On voit qu'un tel script commence par une série de balises, définissant les paramètres du script, dans une syntaxe similaire à celle des fichiers INI ou desktop.

  • Comment décrit le script
  • Name donne le nom du script
  • Shortcut est le raccourcis clavier (ce qui montre le caractère dynamique de l'extensionabilité par scripts)
  • Languages permet de restreindre les langages auxquelles peuvent s'appliquer le script
  • Output définit la sortie du script. Techniquement, c'est la sortie standard (/sys/stdout en Bash ou sys.stdout en Python) qui est redirigée vers output, qui peut être un nouveau fichier, ou le panneau inférieur

L'utilisateur n'est pas obligé d'éditer des méta-balises à la main. En effet, la fenêtre d'édition des outils extérieurs gère ça toute seule.

Références

[modifier | modifier le code]
  1. « News in 46.1 »
  2. « News in 43.alpha »,

Liens externes

[modifier | modifier le code]