Notepad++ est un éditeur de code source qui supporte plusieurs langages.
Ce programme, qui est codé en C++ avec 100% win32 api et STL, a pour but de fournir un éditeur de code souce "petit" (de taille binaire) et efficace (performance d'éxécution). Il est sous licence GPL.
Non seulement Notepad++ utilise une composante surpuissante Scintilla, mais en plus il est developpé pour faciliter la vie des developpeurs - une IHM entièrement configurable.
Voici les fonctionnalités de Notepad++ :
- Syntax Coloration et Syntax Folding (les langages supportées sont :
C, C++, Java, C#, XML, HTML, PHP, CSS, makefile, ASCII art (.nfo), doxygen, ini file, batch file, Javascript, ASP, VB/VBS, SQL, Objective-C, RC resource file, Pascal, Perl, Python, Lua, TeX, TCL, Assembler, Ruby, Lisp, Scheme, Properties, Diff, Smalltalk, Postscript , VHDL, Ada, Caml, AutoIt, KiXtart, Matlab, Verilog, Haskell, InnoSetup, CMake)
- WYSIWYG (What You See Is What You Get) (imprimez votre code en couleur)
- Langage Défini par utilisateur (cela permet de colorer les mots définis par les utilisateurs).
- Auto-complétion (pour la plupart des langages supportés, l'utilisateur peut faire sa propre liste de APIs ; une fois le fichier api est mis en place, on frappe Ctrl+Espace pour déclencher cette action).
- Multi-Document (l'utilisateur peut editer plusieurs documents à la fois).
- Multi-Vu (il peut y avoir 2 vues de document à la fois dans Notepad++ ; grâce à ces 2 vues, l'utilisateur peut visualiser et editer 2 documents différents en même temps ; encore plus fort : on peut aussi editer un même document dans ces 2 vues en différente "position" ; les modifications faites dans une vue sont faites en même temps dans l'autre vue ; c'est le mode "clone").
- La recherche et le remplacement d'expression régulière (l'utilisateur peut faire la recherche et le remplacement d'une chaîne de caractères dans un document en utilisant l'expression régulière).
- Drag 'N' Drop (l'utilisateur peut 1)ouvrir un document par drag & drop 2)déplacer un document d'une position à une autre (même d'une vue à une autre)).
- Affichage des documents paramétrable dynamiquement (l'utilisateur peut changer dynamiquement la position des vues (seulement en mode "2 vues") : le splitter peut être en position horizontale ou verticale).
- Auto détection de modification de fichier (si vous supprimez ou modifiez un fichier ouvert (dans Notepad++) en dehors de Notepad++, un message de mise à jour de votre document apparaîtra (recharger/supprimer le document)).
- ZOOM IN et zoom out (c'est encore une fonctionnalité fantastique de la composante Scintilla).
- Multilingue
- Signet (l'utilisateur peut cliquer sur la marge de signet (à droite du numéro de ligne) ou appuyer sur Ctrl+F2 pour marquer/enlever un signet ; afin d'atteindre le signet marqué, tapez F2 (signet prochain) ou Shift+F2 (signet précédent) ; cliquez sur Menu Search->Clear All bookmarks pour enlever tous les signets).
- Coloration des symboles { } [ ] ( ) et de l'indentation (lorsque vous positionnez le curseur à côté de l'un de ces symboles { } [ ] ( ) celui-ci se colore ainsi que son symétrique et la ligne pointillée d'indentation entre ces deux symboles (s'il y en a) ; cela permet d'aisément repérer un bloc).
- Style Configurator (vous pouvez modifier tous les styles pour n'importe quel langage supporté grace au "Style Configurator" ; pour chaque style, vous pouvez changer les couleurs des premier-plan/arrière-plan, la police, la taille de police et le style de police (gras ou italique)).
- Macro recording and playback (vous pouvez enregistrer les macros et configurer leur racourci).