SciTE

De Ensiwiki
Aller à : navigation, rechercher
SciTEIco.png SciTE
Développeur Neil Hodgson

Dernière version 2.12

Environnement Linux, Windows

Type Éditeur de texte / code
Licence License de Neil Hodgson

Site Web SciTE

Windows.png  Windows  Tux.png  Linux 


Description

Sci-quoi ?!

SciTE est un acronyme pour Scintilla based Text Editor.

Comme son nom l'indique SciTE est un éditeur de texte, libre, gratuit, et relativement peu connu par rapport à ceux qu'on vous présente à votre arrivée à l'imag.

Il est disponible sur les systèmes Unix avec la librarie GTK+ installée, et les systèmes Windows.

Différents moyens pour l'obtenir :

  • Compilez vous même les sources disponibles sur la page des téléchargements
  • Utilisez un des exécutables disponibles sur cette même page des téléchargements
  • Utilisez la version disponible dans les dépots apt depuis Debian/Ubuntu.

De plus SciTE est installé sur telesun.

Choisir SciTE

Autant être honnête, SciTE avec sa configuration par défaut, c'est la Fiat 500 des éditeurs de texte, on approcherait presque du niveau de Gedit... Heureusement, la grande force de SciTE, se sont ses fichiers de configurations. Ils permettent d'activer à peu près tout et n'importe quoi, à partir du moment où l'on sait sur quelle ligne agir. Avec évidement les fonctionnalités de base d'un éditeur de texte. Pour découvrir cela, direction la section Configuration, un peu plus loin.

De plus, SciTE est relativement intuitif, vous n'aurez pas à apprendre plus de choses que des racourcis clavier pour l'utiliser efficacement. En cas de doute les menus disponibles sont clairs!

Dans les points forts de SciTE, on peut aussi noter sa légèreté : à peine plus de 1Mo une fois compilé!


Configuration

Fonctionnalités de base

Comme tous les éditeurs de textes, SciTE supporte la coloration syntaxique pour beaucoup de langages, on peut citer l'Ada, le LATEX, le C/C++, le bash, parmis ceux utilisés en 1A à l'Ensimag. Il supporte aussi notament les langages web.

  • Racourcis Clavier : La plupart des racourcis claviers sont similaires à ceux utilisés sous windows (Ctrl C/Ctrl V pour copier coller, Ctrl F pour rechercher, etc...)
  • Édition : Les fonctions d'étitions sont nombreuses, parmis les plus notables on peut citer :
    • L'autocomplétion sur les mots présents dans le document, et dans des listes de fonctions propres à chaque langages (API).
    • Le rechercher/remplacer par expressions regulières, et dans la selection.
    • Selection en colonne : une selection avec la souris, en maintenant la touche Ctrl enfoncée, permet une selection verticale.
    • Masquage de bloc : SciTE permet le masquage de blocs d'instructions (comme une fonction, un bloc if).
    • Utilisation d'abbréviations : En définissant certaines abbréviations dans les fichiers de configurations, on peut racourcir considérablement le temps nécessaire à l'exécution de taches répétitives. (Comme la création d'un bloc if/then/else, ou la déclaration d'une fonction).
    • Marquage de ligne : il est possible de laisser des marques sur une ligne (notifiées par des ronds bleus à coté du numéro de ligne), et de naviguer entre ces marques.
  • Navigation par onglet : SciTE permet l'ouverture de plusieurs fichiers dans une même instance avec plusieurs onglets.
  • Session : SciTE dispose d'un système de sauvegarde/restauration de session : avec certaines options activées, il enregistre les fichiers ouverts, la position du curseur, et les éventuelles marques.
  • Compilation : SciTE possède des commandes de compilation pour tout les langages, qui sont entièrement personalisables depuis les fichiers de configurations.
  • Terminal : SciTE possède une sorte de terminal, qui sert principalement de retour pour les commandes lancées depuis l'application, et qui est affichable/masquable grace à la touche F8 par défaut.


Configuration avancée

La configuration de SciTE se fait grâce à des fichiers de configurations ayant pour extension ".properties". Il existe un fichier .properties par langage (cpp.properties, ada.properties, ...), ainsi que plusieurs fichiers destinés à être modifiés par l'utilisateur, les deux seuls que vous devez retenir sont le SciTEGlobal.properties (Options globales), et le .SciTEUser.properties (Options utilisateurs). Ces deux fichiers sont accessibles depuis le menu de SciTE.

Je vous invite à parcourir la page de Configuration De SciTE, pour un exemple de configuration avancée et détaillée.


Patchs

Après un certain temps d'utilisation, j'ai constaté que certaines fonctionnalités de SciTE ne me satisfaisaient pas completement. Les deux principales sont l'autocomplétion (qui reste assez approximative par rapport, par exemple, à un shell), et l'organisation de l'interface utilisateur et des racourcis. Concernant l'interface graphique, toutes les modifications de raccourcis peuvent être faites dans les fichiers de configuration, je vous renvoie donc à la page traitant de la configuration de SciTE. En revanche, améliorer l'autocomplétion nécessite une modification du code source, et donc une recompilation.

Amélioration de l'autocomplétion

Je met à disposition la modification à effectuer sous forme de patch, à appliquer sur les fichiers sources. Vous pouvez télécharger l'archive ici !

Pour appliquer le patch, récupérez la dernière version des sources de SciTE (si ce n'est pas déjà fait), détarrez les, et placez vous dans le repertoire racine du projet contenant les repertoires scite et scintilla. Extrayez ensuite dans ce dossier le contenu de l'archive du patch, et lancez :

patch -p0 < comp_scintilla.patch
patch -p0 < comp_scite.patch

Selon votre version des sources, la modification peut avoir lieu à un endroit différent que celui prévu (offset), c'est normal (J'ai créé le patch pour la 2.11, il se peut que les lignes diffèrent dans des versions différentes).

Faites ensuite les make de rigueur dans les sous repertoires GTK ou Win32, vous pouvez maintenant observer le résultat grace à l'exécutable apparu dans scite/bin. La modification peut être activée en ajoutant/modifiant les lignes suivantes dans votre fichier .SciTEUser.properties :

#active completion sur les mots
autocompleteword.automatic=1
#active complete automatique sur les prototypes en plus des noms
autocomplete.automatic=1
#par defaut la completion ne se propose que sur un mot unique, si multi=1, affiche tout les mots qui matchent
autocomplete.multi=1

Si la modification vous plait, vous pouvez remplacer votre exécutable actuel de SciTE par celui que vous venez de compiler. Le plus propre est de sauvegarder ses fichiers de configuration, désinstaller votre version actuelle, faire un make install de votre nouvelle version, et de restaurer vos fichiers de configuration.

Historique

La première version stable de SciTE est sortie le 17 Mai 1999, depuis, plus d'une cinquentaine de releases se sont suivies, et la dernière à ce jour est la 2.12, datant de Juin 2010.

Le support de GTK1.x a été abandonné depuis la 2.10, la dernière version, ainsi que les version futures, ne fonctionneront donc que sous GTK 2.

Liens utiles