Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
doc:editeurs:nano [06/05/2015 18:55] milou [GNU nano] |
doc:editeurs:nano [12/09/2020 19:51] Beta-Pictoris [Liens :] |
||
---|---|---|---|
Ligne 5: | Ligne 5: | ||
* Commentaires : //Un éditeur simple d'utilisation pour, entre autres choses, administrer son système.// | * Commentaires : //Un éditeur simple d'utilisation pour, entre autres choses, administrer son système.// | ||
* A savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) | * A savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) | ||
- | * Suivi : {{tag>à-tester}} | + | * Suivi : |
- | * Création par [[user>smolski]] 12/06/2009 | + | * Création par [[user>smolski]] le 12/06/2009 |
- | * Testé par .... le .... | + | * Révision par [[user>milou]] et [[user>paskal]] le 11/10/2015 |
+ | * Tests réalisés par [[user>milou]] le 11/10/2015 | ||
* Commentaires sur le forum : [[http://debian-facile.org/viewtopic.php?id=1448 | Lien vers le forum concernant ce tuto]]((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) | * Commentaires sur le forum : [[http://debian-facile.org/viewtopic.php?id=1448 | Lien vers le forum concernant ce tuto]]((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) | ||
Ligne 18: | Ligne 19: | ||
Comme son nom le laisse deviner (le terme "//nano//" représente une toute petite unité), il s'agit d'une application : | Comme son nom le laisse deviner (le terme "//nano//" représente une toute petite unité), il s'agit d'une application : | ||
- | - très simple, | + | - plutôt simple, mais néanmoins puissant. |
- | - possédant peu de fonctions (comparé à la commande d'édition [[:doc:editeurs:vim:]] par exemple) | + | - possédant moins de fonctions comparé aux commandes d'édition [[:doc:editeurs:vim:]] ou [[:doc:editeurs:emacs:]]. |
mais qui convient tout à fait lorsque l'on commence à utiliser un éditeur de texte ou que nos besoins ne sont pas trop grands. | mais qui convient tout à fait lorsque l'on commence à utiliser un éditeur de texte ou que nos besoins ne sont pas trop grands. | ||
+ | |||
+ | Voici une liste de ses fonctionnalités les plus intéressantes : | ||
+ | - Annulation multiple. | ||
+ | - Coloration syntaxique | ||
+ | - Auto-Complétion | ||
+ | - Correcteur orthographique | ||
+ | - Macro | ||
<note important>Un //éditeur de texte// n'est pas un //traitement de texte//.</note> | <note important>Un //éditeur de texte// n'est pas un //traitement de texte//.</note> | ||
Ligne 31: | Ligne 39: | ||
<code user>nano monfichier</code> | <code user>nano monfichier</code> | ||
- | Pour une édition en tant que root du fichier ''monfichier'' | + | Pour une édition [[doc:systeme:superutilisateur|en tant que root]] du fichier ''monfichier'' |
<code root>nano monfichier</code> | <code root>nano monfichier</code> | ||
- | === Commandes de base === | + | <note warning>Si certaines commandes utilisant la touche <key>Alt</key> ne fonctionnent pas, utilisez la touche <key>Echap</key> à la place.</note> |
- | | Opération | Raccourcis clavier | | + | ==== Les commandes principales ==== |
- | | Quitter | ''Ctrl'' + ''x'' | | + | |
- | | Sauvegarder | ''Ctrl'' + ''o'' | | + | |
- | === Commandes utiles === | + | Ces raccourcis clavier s'appliquent pour un clavier Azerty Français |
- | FIXME à tester | + | === Commandes de base === |
- | | Opération | Raccourcis clavier | | + | ^ //Opération// ^ //Raccourcis clavier// ^ |
- | | Couper | ''Ctrl'' + ''k'' | | + | | Afficher l'aide |<key>C+g</key> | |
- | | Copier | ''Alt'' + ''^'' | | + | | Sauvegarder avec confirmation |<key>C+o</key> puis valider par <key>Entrée</key> | |
- | | Coller | ''Ctrl'' + ''u'' | | + | | Sauvegarder sans confirmation |<key>C+s</key> | |
- | | Rechercher | ''Ctrl'' + ''w'' + chaîne à rechercher | | + | | Fermer l'espace en cours / Quitter |<key>C+x</key> | |
- | | Rechercher le suivant | ''Alt'' + ''w'' | | + | |
- | | Remplacer | ''Ctrl'' + ''w'' suivi de ''Ctrl'' + ''r'' | | + | |
- | | Page précédente | ''Ctrl'' + ''y'' | | + | |
- | | Page suivante | ''Ctrl'' + ''v'' | | + | |
- | | Justifier | ''Ctrl'' + ''j'' | | + | |
- | === Exemples === | + | === Commandes de déplacement rapide === |
- | * Voir le TP01 en fin de page. | + | ^ //Déplacer le curseur// ^ //Raccourcis clavier// ^ |
+ | | vers le haut, le bas, la gauche, la droite |<key>C+p</key> , <key>C+n</key> , <key>C+b</key> , <key>C+f</key> (Previous , Next , Backward , Forward) | | ||
+ | | au début de la ligne, la fin de la ligne |<key>C+a</key> , <key>C+e</key> | | ||
+ | | à l'écran précédent, à l'écran suivant |<key>C+y</key> , <key>C+v</key> | | ||
+ | | au début du fichier, à la fin du fichier |<key>Alt+\</key> , <key>Alt+/</key> | | ||
- | ===== Utilisation avancée ===== | ||
- | ==== Options ==== | + | === Commandes de déplacement avancé === |
- | === Option -c === | + | ^ //Déplacer le curseur// ^ //Raccourcis clavier// ^ |
+ | | d'un mot en avant, d'un mot en arrière |<key>C+Espace</key> , <key>Alt+Espace</key> | | ||
+ | | au paragraphe précédent, au paragraphe suivant |<key>C+Up</key> , <key>C+Down</key> | | ||
+ | | au début du paragraphe, à la fin du paragraphe |<key>Alt+(</key> , <key>Alt+)</key> | | ||
+ | | sur la ligne l (et sur la colonne c) |<key>A+g</key> puis entrer le numéro de la ligne (et de la colonne) | | ||
+ | | sur le crochet (accolade, parenthèse, ... ) adjoint à celui sous le curseur |<key>A+]</key> | | ||
- | Pour que nano affiche en permanence les coordonnées ligne/colonne, il est possible de le lancer avec l'option ''-c'' : | + | === Commandes de suppression === |
- | <code user>nano -c <fichier></code> | + | |
- | ==== Commandes avancées ==== | + | ^ //Supprimer// ^ //Raccourcis clavier// ^ |
+ | | le caractère se trouvant sous le curseur |<key>C+d</key> | | ||
+ | | le caractère se trouvant à la gauche du curseur |<key>C+h</key> | | ||
+ | | le mot se trouvant à la gauche du curseur |<key>S+C+Suppr</key> | | ||
+ | | le mot se trouvant à la droite du curseur |<key>C+Suppr</key> | | ||
+ | | la ligne courante |<key>Alt+Suppr</key> | | ||
- | FIXME à tester | + | === Commandes d'annulation === |
- | | Déplacer le curseur | Raccourcis clavier | | + | ^ //Opération// ^ //Raccourcis clavier// ^ |
- | | vers le haut | ''Ctrl'' + ''p'' (prev) | | + | | Annuler la dernière opération |<key>A+u</key> | |
- | | vers le bas | ''Ctrl'' + ''n'' (next) | | + | | Refaire la dernière opération annulée |<key>A+e</key> | |
- | | vers la gauche | ''Ctrl'' + ''b'' (back) | | + | |
- | | vers la droite | ''Ctrl'' + ''f'' (forward) | | + | |
- | | d'un mot en avant | ''Ctrl'' + ''espace'' (forward) | | + | |
- | | d'un mot en arrière | ''Alt'' + ''Shift'' + ''espace'' (forward) | | + | |
- | | à la page précédente | ''Ctrl'' + ''y'' | | + | |
- | | à la page suivante | ''Ctrl'' + ''v'' | | + | |
- | | au début de la ligne | ''Ctrl'' + ''a'' | | + | |
- | | à la fin de la ligne | ''Ctrl'' + ''e'' | | + | |
- | | au début du paragraphe | ''Alt'' + ''('' | | + | |
- | | à la fin du paragraphe | ''Alt'' + '')'' | | + | |
- | | au début du fichier | ''AltGr'' + ''\'' | | + | |
- | | à la fin du fichier | ''Alt'' + ''Shift'' + ''/'' | | + | |
- | ==== Configuration ==== | + | === Commandes d'édition utilisant le presse-papiers === |
- | On peut aussi configurer nano ainsi : | + | ^ //Opération// ^ //Raccourcis clavier// ^ |
+ | | Marquer le texte à partir de la position courante du curseur |<key>A-a</key> | | ||
+ | | Couper la ligne courante ou la zone sélectionnée |<key>C-k</key> | | ||
+ | | Couper le texte à partir de la position courante du curseur jusqu'à la fin du fichier |<key>A-t</key> | | ||
+ | | Copier la ligne courante ou la zone sélectionnée |<key>A+^</key> | | ||
+ | | Insérer le contenu du presse-papiers à la position du curseur |<key>C-u</key> | | ||
- | En local en créant un : | + | Pour sélectionner du texte, le copier et le coller : |
- | /home/user/.nanorc | + | |
- | Et en le configurant mot à mot... | + | |
- | Ou pour tout le monde, en modifiant les options dans : | + | - Se déplacer avec les flèches <key>Up</key> <key>Down</key> <key>Left</key> <key>Right</key> pour se placer à l'endroit voulu, |
- | /etc/nanorc | + | - Faire <key>A-a</key> pour marquer le début de la sélection, |
+ | - Se déplacer avec les flèches <key>Up</key> <key>Down</key> <key>Left</key> <key>Right</key> pour sélectionner la zone de texte à copier, | ||
+ | - Copier cette sélection avec <key>A</key>+<key>^</key>, | ||
+ | - Se déplacer à l'endroit voulu pour le collage, | ||
+ | - Coller avec <key>C-u</key>. | ||
- | Par exemple : | + | === Commandes d'insertion === |
- | Dans un terminal root, éditer nanorc ainsi : | + | ^ //Opération// ^ //Raccourcis clavier// ^ |
+ | | Insérer une tabulation à la position du curseur |<key>C+i</key> | | ||
+ | | Insérer un passage à la ligne à la position du curseur |<key>C+m</key> | | ||
+ | | Insérer un autre fichier dans l'espace en cours |<key>C+r</key> puis entrer le chemin du fichier | | ||
+ | | Auto-Complétion |<key>C+]</key> | | ||
- | <code root>nano /etc/nanorc</code> | + | === Commandes de recherche et remplacement === |
- | Gagner de la place à l'écran en n'affichant pas les raccourcis, décommenter la ligne **set nohelp** : | + | ^ //Opération// ^ //Raccourcis clavier// ^ |
- | <file bash /etc/nanorc> | + | | Rechercher une chaîne ou une expression rationnelle |<key>C+w</key> puis entrer la chaîne à rechercher | |
- | ## Don't display the helpful shortcut lists at the bottom of the screen. | + | | Rechercher la suivante |<key>Alt+w</key> | |
- | #set nohelp | + | | Rechercher la précédente |<key>Alt+q</key> | |
- | </file> | + | | Remplacer une chaîne ou une expression rationnelle |<key>C+\</key> puis entrer la chaîne à rechercher, puis la chaîne à remplacer | |
- | Faire disparaître la barre de status, décommentez **set quickblank** : | + | === Commandes spéciales === |
- | <file bash /etc/nanorc> | + | |
- | ## Do quick statusbar blanking. Statusbar messages will disappear after | + | |
- | ## 1 keystroke instead of 26. Note that "const" overrides this. | + | |
- | ## | + | |
- | #set quickblank | + | |
- | </file> | + | |
- | A l'inverse on peut préférer avoir un affichage plus complet comme le défilement de numéros de lignes, colonnes, etc... \\ | + | ^ //Opération// ^ //Raccourcis clavier// ^ |
- | Et si vous consultiez : | + | | Indenter la ligne courante ou les lignes sélectionnées |<key>A+}</key> | |
- | <code user>man nanorc</code> | + | | Désindenter la ligne courante ou les lignes sélectionnées |<key>A+{</key> | |
+ | | Commenter ou décommenter la ligne courante ou les lignes sélectionnées |<key>A+3</key> | | ||
+ | | Démarrer/Arrêter l'enregistrement d'une macro |<key>A+:</key> | | ||
+ | | Lancer la macro |<key>A+;</key> | | ||
+ | | Lancer le correcteur orthographique ( [[:doc:editeurs:nano#exemple-de-fichier-nanorc|Voir aussi le fichier nanorc]] ) |<key>C+t</key> | | ||
- | Essayer, c'est l'adopter ! Merci **tux12** ;-) | ||
- | === Exemple de fichier nanorc : === | + | ===== Utilisation avancée ===== |
- | <file bash /etc/nanorc> | + | ==== Options ==== |
- | ## Sample initialization file for GNU nano. | + | |
- | ## | + | |
- | ## Please note that you must have configured nano with --enable-nanorc | + | |
- | ## for this file to be read! Also note that this file should not be in | + | |
- | ## DOS or Mac format, and that characters specially interpreted by the | + | |
- | ## shell should not be escaped here. | + | |
- | ## | + | |
- | ## To make sure a value is disabled, use "unset <option>". | + | |
- | ## | + | |
- | ## For the options that take parameters, the default value is given. | + | |
- | ## Other options are unset by default. | + | |
- | ## | + | |
- | ## Quotes inside string parameters don't have to be escaped with | + | |
- | ## backslashes. The last double quote in the string will be treated as | + | |
- | ## its end. For example, for the "brackets" option, ""')>]}" will match | + | |
- | ## ", ', ), >, ], and }. | + | |
- | ## Use auto-indentation. | + | === Option -c === |
- | set autoindent | + | |
- | ## Backup files to filename~. | + | Pour que nano affiche en permanence les coordonnées ligne/colonne, il est possible de le lancer avec l'option ''-c'' : |
- | # set backup | + | <code>nano -c <fichier></code> |
- | ## The directory to put unique backup files in. | + | === Option -m === |
- | # set backupdir "" | + | Pour utiliser la souris dans le terminal, lancer nano avec l'option ''-m'' |
- | [...] | + | Par défaut gpm donne le support de l'utilisation de la souris dans le terminal (+ copier-coller en un clic), nous allons voir comment faire pour positionner le curseur à l'endroit du clic. |
- | ## Enable mouse support, if available for your system. When enabled, | + | Pour que nano place le curseur où vous cliquez : |
- | ## mouse clicks can be used to place the cursor, set the mark (with a | + | |
- | ## double click), and execute shortcuts. The mouse will work in the X | + | |
- | ## Window System, and on the console when gpm is running. | + | |
- | ## | + | |
- | set mouse | + | |
- | [...] | + | Installer [[doc:autres:gpm | gpm]] |
- | ## Make the Home key smarter. When Home is pressed anywhere but at the | + | Lancer nano avec l'option -m: |
- | ## very beginning of non-whitespace characters on a line, the cursor | + | |
- | ## will jump to that beginning (either forwards or backwards). If the | + | |
- | ## cursor is already at that position, it will jump to the true | + | |
- | ## beginning of the line. | + | |
- | set smarthome | + | |
- | [...] | + | <code>nano -m <fichier></code> |
- | ## Nanorc files | + | === Option -B === |
- | include "/usr/share/nano/nanorc.nanorc" | + | |
- | ## C/C++ | + | L'option permet de sauvegarder l'ancienne version du fichier. Il est donc possible de récupérer cette version en cas d'erreur. |
- | include "/usr/share/nano/c.nanorc" | + | Le fichier sera renommé avec le suffixe **~**, on retrouvera alors le fichier ''<fichier>'' et ''<fichier>~'' sa sauvegarde. |
- | ## Cascading Style Sheets | + | Lancer nano avec l'option -B: |
- | include "/usr/share/nano/css.nanorc" | + | |
- | ## Debian files | + | <code>nano -B <fichier></code> |
- | include "/usr/share/nano/debian.nanorc" | + | |
- | ## Gentoo files | + | ==== Configuration ==== |
- | include "/usr/share/nano/gentoo.nanorc" | + | |
- | ## HTML | + | On peut configurer nano ainsi : |
- | include "/usr/share/nano/html.nanorc" | + | |
- | ## PHP | + | En local en créant un : |
- | include "/usr/share/nano/php.nanorc" | + | /home/user/.nanorc |
+ | Et en le configurant mot à mot... | ||
- | [...] | + | Ou pour tout le monde, en modifiant les options dans : |
- | </file> | + | /etc/nanorc |
- | ===== TP01 : nano par l'exemple ===== | + | Par exemple : |
- | **À savoir :** | + | Dans un terminal root, éditer nanorc ainsi : |
- | * [[:doc:systeme:mkdir]] DÉBUTANT Création de répertoire en ligne de commande | + | <code root>nano /etc/nanorc</code> |
- | * [[:doc:systeme:ls]] DÉBUTANT Commande de listage des répertoires | + | |
- | * [[:doc:systeme:cat]] DÉBUTANT Commande pour ouvrir la lecture d'un fichier. | + | |
- | * [[:doc:systeme:rm]] DÉBUTANT Commande pour supprimer des fichiers. | + | |
- | ==== But de l'exercice ==== | + | <file bash nanorc> |
+ | # Utiliser le correcteur orthographique GNU Aspell. | ||
+ | set speller "aspell -x -c" | ||
- | <note tip>Dans cet exercice, remplacer ''<mon_user>'' par votre pseudo ''user'' personnel. \\ | + | # Ctrl+Espace s'arrêtera d'abord après le dernier mot de la ligne courante avant de passer sur la ligne suivante |
- | :-) | + | set afterends |
- | </note> | + | |
- | \\ | + | |
- | \\ | + | |
- | Dans notre ''/home/<mon_user>'' | + | |
- | - nous allons créer un répertoire **test** | + | |
- | - puis créer un fichier nommé **test1** | + | |
- | - et dans ce fichier //test1// nous rédigerons ce texte //test nano// | + | |
- | ==== Créez un répertoire ==== | + | # Auto-Indentation |
+ | set autoindent | ||
- | Ouvrir un terminal sous la session de votre user puis tapez et validez : | + | # Ctrl+K coupera la ligne à partir de la position courante du curseur au lieu de couper toute la ligne |
- | <code user>mkdir /home/<mon_user>/test</code> | + | set cutfromcursor |
- | Vérifiez la présence de ce répertoire en validant la commande : | + | # Garde l'historique de recherche entre chaque session |
- | <code user>ls /home/<mon_user>/</code> | + | set historylog |
- | test | + | |
- | ==== Créez et rédigez un fichier user ==== | + | # Affiche les numéros de ligne |
+ | set linenumbers | ||
- | Avec nano, créez le fichier **test1** dans le répertoire **test** ainsi : | + | # Utiliser la souris dans nano |
- | <code user>nano /home/<mon_user>/test/test1</code> | + | set mouse |
- | et écrivez les mots : | + | |
- | test nano | + | |
- | - Validez par ''Ctrl o'' | + | # Ouvrir plusieurs fichiers en même temps. Utilisez Ctrl+R pour charger un fichier, et Alt+← ou Alt+→ pour changer de fichier. |
- | - Quittez par ''Ctrl x'' | + | set multibuffer |
- | Comme le signale zodar (le chieur mais attentif quand même !) sur le forum, nous pouvons, sans enregistrer, passer directement à la phase : | + | # N'ajoute pas de nouvelle ligne vide en fin de fichier qui n'en contient pas |
- | * Quittez par ''Ctrl x'' | + | set nonewlines |
- | Il nous sera alors demandé de validez nos modifications par : | + | # Les portions de lignes coupées par le bord droit de l'écran ne seront pas affichées |
- | o = oui | + | set nowrap |
- | n = non | + | |
- | //Pas belle la vie ?// | + | |
- | ==== Vérification ==== | + | # Le curseur se souviendra de sa dernière position entre chaque session |
+ | set positionlog | ||
- | Vérifiez par : | + | # Ctrl+A se positionnera d'abord sur le premier caractère non "espace". |
- | <code user>cat /home/<mon_user>/test/test1</code> | + | set smarthome |
- | test nano | + | |
- | Et voilà ! | + | # Ctrl+Z suspendra nano |
+ | set suspend | ||
- | ==== Suppression des données de l'exercice ==== | + | # Une tabulation aura une longueur de 4 caractères |
+ | set tabsize 4 | ||
- | Pour supprimer ce répertoire test et le fichier test1 qui y est contenu, tapez : | + | # Utilise des caractères "espace" pour les tabulations |
- | <code user>rm -r /home/<mon_user>/test</code> | + | set tabstospaces |
- | Puis vérifiez cette suppression avec la commande ls. | + | |
- | //Hop là !// :-D | + | # Ctrl+Espace considérera la ponctuation comme faisant partie des mots |
+ | set wordbounds | ||
- | + | # Donner des couleurs aux éléments de l'interface de nano | |
- | + | set titlecolor brightwhite,blue | |
- | ==== Créer un alias ==== | + | set statuscolor brightwhite,green |
- | + | set errorcolor brightwhite,red | |
- | === Créer un alias de cette option pour votre user seul. === | + | set selectedcolor brightwhite,magenta |
- | + | set numbercolor cyan | |
- | Editez : | + | set keycolor cyan |
- | <code user>nano /.bashrc</code> | + | set functioncolor green |
- | Et tapez la ligne d'alias suivante : | + | </file> |
- | alias nano='nano -c' | + | |
- | + | ||
- | === Créer un alias de cette option pour tout le monde. === | + | |
- | + | ||
- | Comme on sait jamais on prend pas de risque en faisant d'abord une copie : | + | |
- | <code root>cp /etc/bash.bashrc /etc/bash.bashrc.back</code> | + | |
- | et on copie la ligne d'alias en fin de fichier : | + | |
- | <code root>echo "alias nano='nano -c'" >> /etc/bash.bashrc</code> | + | |
- | Et quand on est content, on fait de la place en supprimant le fichier de sauvegarde : | + | |
- | <code root>rm /etc/bash.bashrc.back</code> | + | |
- | + | ||
- | //De phlinux et captnfab...// :-D | + | |
===== Liens : ===== | ===== Liens : ===== | ||
+ | * [[https://openclassrooms.com/fr/courses/43538-reprenez-le-controle-a-laide-de-linux/39267-nano-lediteur-de-texte-du-debutant#/id/r-39143|Premiers pas avec Nano]], sur OpenClassrooms. | ||
+ | * [[http://www.nano-editor.org/|Le site officiel de GNU nano]]. | ||
- | Le lien en français pour tout comprendre des options nanorc : \\ | ||
- | http://www.linuxcertif.com/man/5/nanorc/ | ||
- | Le site officiel de GNU nano : \\ | ||
- | http://www.nano-editor.org/ | ||