75 votes

notepad++ régions définies par l'utilisateur avec pliage

Je n'arrive pas à trouver comment configurer notepad++ pour afficher les régions pour les mots-clés définis par l'utilisateur.

J'ai un gros fichier de trace qui montre le début et la fin d'une procédure. Le fichier de trace ressemble à ceci :

Beginn abc.def;
   ...
   Beginn ghi.jkl;
   ...
   Ende ghi.jkl;
   ...
Ende abc.def;

Je voudrais plier ces régions comme ceci :

[+] Beginn abc.def;

ou

[-] Beginn abc.def;
       ...
[+]    Beginn ghi.jkl;
       ...
    Ende abc.def;

Comment puis-je configurer mon notepad++ pour qu'il affiche ceci. Est-ce possible ? Avez-vous d'autres suggestions ?

0 votes

stackoverflow.com/questions/9251858/hide-comments-in-notepad Duplicate (2010 est la date la plus ancienne que j'ai pu trouver).

60voto

Stephan Schielke Points 698

Pour la version 6.5.5 et plus :

Sous le menu " Langue "Il y a un menu appelé " Définissez votre langue... "

enter image description here

Dans l'onglet "Dossier et défaut" se trouve un groupe appelé "Pliage en code" où vous pouvez saisir un mot-clé "Ouvrir" et un mot-clé "Fermer".

Folding in code

Pour les versions antérieures à 6.5.5 :

Sous le menu " Voir "Il y a un menu appelé " Dialogues définis par l'utilisateur... "

View Define your language

Dans l'onglet "Dossier et défaut", vous pouvez saisir un "Mot-clé d'ouverture de dossier" et un "Mot-clé de fermeture de dossier".

Folder Open Close Keyword

3 votes

Existe-t-il un moyen d'ajouter ces éléments à une définition de langage existante ? Plus précisément, pourrais-je ajouter des commentaires pour créer des sections pliantes, par exemple /*<méthodesPrivées>*/ ... [beaucoup de code] ... /*</privateMethods>*/

0 votes

Comme vous pouvez le voir dans l'image, il existe un moyen d'importer et d'exporter les fichiers de langue. Notepad++ stocke les configurations de langue existantes. Peut-être pouvez-vous les importer dans celles définies par l'utilisateur et les modifier. Bonne chance.

6 votes

Dans la version 6.5.5, ce dialogue se trouve sous le menu "Langue". J'ai juste ajouté #region end #endregion et le pliage fonctionne très bien !

59voto

Un autre moyen simple consiste à ajouter un marqueur de commentaire suivi de open-block pour commencer un bloc, et un marqueur de commentaire suivi de end-block pour terminer un bloc. En C, C++, Java, Javascript, etc., cela ressemblerait à ceci :

//{

//}

2 votes

Depuis la version 6.4.3 de NPP, le dialogue rapide et facile défini par l'utilisateur semble avoir disparu (ou avoir été intégré à la syntaxe du langage défini par l'utilisateur). Il n'est donc pas facile d'ajouter simplement une syntaxe de région rétractable à un langage intégré. Mais cette solution de Marcelo est très rapide et facile et fonctionne dans NPP 6.4.3.

7 votes

Merci. Maintenant, je le sais : //{ #region LOADING et //} #endregion LOADING en Javascript

1 votes

Comment se déroule l'opération "add 'comment command'" ? J'ai le même code que celui indiqué mais pas d'option de pliage. Je suppose que le bloc doit être sélectionné et masqué avec Alt+h ?

15voto

Kevin Jhangiani Points 692

J'ai un problème similaire. Je veux ajouter une balise personnalisée comme #region / #endregion pour créer des points de pliage arbitraires dans les langues qui ne le supportent pas. Plus précisément, j'essaie de faire cela pour php.

Après avoir fait des recherches pendant une heure ou deux, il semble que la modification d'un langage existant soit assez difficile en raison du lexer scintilla sous-jacent, et l'écriture d'un plugin pourrait être la seule façon d'y parvenir.

J'ai cependant découvert une solution de contournement intéressante :

Enveloppez le code que vous souhaitez plier dans des commentaires comme :

#{ 
...
#}

Déplacez ensuite votre curseur avant l'accolade ouverte et appuyez sur CTRL + ALT + b pour mettre en évidence l'ensemble du bloc, suivi de ALT + h pour le cacher.

C'est une opération différente du pliage, mais ça marche en cas de besoin.

0 votes

A quoi servent exactement ces raccourcis ? Ils ne fonctionnent pas pour moi, peut-être est-ce un plugin que vous avez installé ?

2 votes

Alt+H a fonctionné, mais cela ne semble être que temporaire. Il suffit que je l'agrandisse pour qu'il disparaisse.

0 votes

Bonjour ! Vous auriez pu au moins mentionner que vous avez copié ma réponse, comme l'a fait "user1881282", mais cela ne m'inquiète pas tant que ça. Bonne journée à tous !

4voto

user1881282 Points 43

J'ai utilisé la réponse de Marcelo pour résoudre ce problème pour moi-même (en Perl), avec une modification...
Si j'avais inclus un espace entre le symbole de commentaire et la parenthèse, cela ne fonctionnerait pas. Il fallait le placer immédiatement après :

#START example
################{

print "Hi there! ";
print "How are you?\n";

#}END example

Notez que si je le fais :

#END example }

avec la parenthèse après le texte, cela ne fonctionnera pas non plus.

0voto

ITGuyOU Points 1

! ! Disclaimer : Total noob à PHP ! !

En supposant que vous intégrez votre PHP dans du HTML, vous pouvez définir des sections personnalisées à l'aide des éléments suivants <?php and ?>.

Ex :

<html>
<head></head>
<body>
<?php 
$cities[1] = "Phoenix";$cities[2] = "Tucson";$cities[3] = "Flagstaff";  
$capitals['CA'] = "Sacramento";$capitals['TX'] = "Austin";$capitals['OR'] = "Salem";    
$cities[] = "Phoenix";$cities[] = "Tucson";$cities[] = "Flagstaff"; 
echo "Here are cities: $cities[1]";echo nl2br("\n");
?>
</br>
<?php
$cities = array( "Phoenix","Tucson","Flagstaff");   
$capitals = array( "CA" => "Sacramento","TX" => "Austin","OR" => "Salem",);
echo $capitals['TX'];echo nl2br("\n");  
?>
<body>
</html>

Notepad++ vous permettra ensuite de réduire les sections de manière arbitraire et vous pourrez étiqueter les sections avec "#". J'apprends juste le PHP, donc mon code peut ne pas être génial ; c'est toujours un processus en cours.

0 votes

Merci ! Exactement ce dont j'avais besoin pour PHP :)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X