======Function List====== Ce plugin permet de lister, trier et filtrer les fonctions de son programme afin d'y accéder rapidement. Le plugin [[notepadpp:plugins:sourcecookifier]] propose la même fonctionnalité, et au delà. **Ce plugin est en cours de développement pour les versions 5+ et peut s'avérer imparfait (mais pas spécialement instable).** Page du développeur : http://jenslorenz.users.sourceforge.net =====Utilisation===== [{{ notepadpp:notepadpp_functionlist_panel.png|Panneau de FonctionList}}] FonctionList est accessible : - depuis le menu //Compléments -> Function List//, - par le raccourci clavier Ctrl-Alt-Shift-L (par défaut), - par son icône située en fin de la barre d'outils : {{:notepadpp:notepadpp_functionlist_button.png|Icône FonctionList}} Il suffit de double-cliquer sur un nom de fonction pour y être ammené. La première ligne du panneau indique l'état du plugin : - **100%** : des règles existent pour ce langage, le plugin est opérationnel. - **No Rule Defined** : aucune règle n'existe pour ce langage, le plugin ne servira pas. Si **No Rule Defined** s'affiche pour des langages que le plugin est sencé prendre en compte, c'est qu'il y a un problème avec le fichier de configuration //FunctionListRules.xml// (introuvable, mauvaise version...). Revoir l'étape d'installation. La barre d'outils contiens les outils suivants : - **Goto Last Function** : aller en arrière dans l'historique des fonctions observées. - **Goto Next Function** : aller en avant dans l'historique des fonctions observées. - **Sort in Sequence** : trier les fonctions selon leur place dans le fichier. - **Sort Alphabetically** : trier les fonctions par ordre alphabétique. - **View as List** : Afficher les fonctions en liste, à la suite. - **View as Tree** : Afficher les fonctions en arbre, groupées selon leur type (INCLUDE, FUNCTION, DEFINE...). Double-cliquer sur un groupe pour l'ouvrir ou le fermer. =====Ajouter des règles===== Il est possible de créer ses propres règles par le biais de la fenêtre //Compléments -> Function List -> Language Parsing Rules...//, ou en modifiant manuellement le fichier //FunctionListRules.xml// (voir l'emplacement des fichiers de configuration dans le chapitre sur l'[[notepadpp:plugins#installation_manuelle|installation manuelle]]). La création de règles vous demandera une connaissance de base sur [[notepadpp:expreg]]. Pour rajouter la prise en compte des classes en Python, il suffit par exemple de créer un nouveau groupe similaire au groupe FUNCTIONS, en remplaçant le mot **def** dans //Function Begin// par **class**. [{{ notepadpp:notepadpp_functionlist_rulesl.png?600 |Création d'une règle pour les classes Python dans la fenêtre //Language Parsing Rules//}}] Cette configuration est toute fois très limitée, les fonctions de premier niveau et les méthodes de classes étant mêlées. Pour une configuration plus complète du langage python, vous pouvez remplacer le nœud en question dans le fichier de configuration par celui-ci : //[[http://blog.theroyweb.com/function-list-plugin-part-2-python-parsing-rules|Source]]// Pour actualiser les changements, sélectionnez un autre langage, cliquez sur //Try!//, sélectionnez Python et cliquez sur //Try!//.