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 [09/10/2015 18:35] milou [TP01 : nano par l'exemple] |
doc:editeurs:nano [10/09/2020 23:40] Beta-Pictoris [Utilisation] |
||
---|---|---|---|
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> | ||
+ | |||
+ | <note warning>Si certaines commandes utilisant la touche <key>Alt</key> ne fonctionnent pas, utilisez la touche <key>Echap</key> à la place.</note> | ||
+ | |||
+ | ==== Les commandes principales ==== | ||
+ | |||
+ | Ces raccourcis clavier s'appliquent pour un clavier Azerty Français | ||
=== Commandes de base === | === Commandes de base === | ||
- | | Opération | Raccourcis clavier | | + | ^ //Opération// ^ //Raccourcis clavier// ^ //Raccourcis clavier bis// ^ |
- | | Quitter |<key>C-x</key> | | + | | Afficher l'aide |<key>F1</key> |<key>C+g</key> | |
- | | Sauvegarder |<key>C-o</key> Valider par <key>Entrée</key> | | + | | Sauvegarder avec confirmation |<key>F3</key> puis valider par <key>Entrée</key> |<key>C+o</key> puis valider par <key>Entrée</key> | |
+ | | Sauvegarder sans confirmation |<key>C+s</key> | | | ||
+ | | Fermer l'espace en cours / Quitter |<key>F2</key> |<key>C+x</key> | | ||
- | === Commandes utiles === | + | === Commandes de déplacement basique === |
- | FIXME à tester | + | ^ //Déplacer le curseur// ^ //Raccourcis clavier// ^ //Raccourcis clavier bis// ^ |
+ | | vers le haut, le bas, la gauche, la droite |<key>Up</key> , <key>Down</key> , <key>Left</key> , <key>Right</key> |<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>Début</key> , <key>Fin</key> |<key>C+a</key> , <key>C+e</key> | | ||
+ | | à l'écran précédent, à l'écran suivant |<key>PageUp</key> , <key>PageDown</key> |<key>C+y</key> , <key>C+v</key> | | ||
+ | | au début du fichier, à la fin du fichier |<key>C+Début</key> , <key>C+Fin</key> |<key>Alt+\</key> , <key>Alt+/</key> | | ||
- | | Opération | Raccourcis clavier | | ||
- | | Couper |<key>C-k</key> | | ||
- | | Copier |<key>Alt-^</key> | | ||
- | | Coller |<key>C-u</key> | | ||
- | | Rechercher |<key>C-w</key> + chaîne à rechercher | | ||
- | | Rechercher le suivant |<key>Alt-w</key> | | ||
- | | Remplacer |<key>C-w</key> suivi de <key>C-r</key> | | ||
- | | Page précédente |<key>C-y</key> | | ||
- | | Page suivante |<key>C-v</key> | | ||
- | | Justifier |<key>C-j</key> | | ||
- | === Exemples === | + | === Commandes de déplacement avancé === |
+ | |||
+ | ^ //Déplacer le curseur// ^ //Raccourcis clavier// ^ //Raccourcis clavier bis// ^ | ||
+ | | d'un mot en avant, d'un mot en arrière |<key>C+Right</key> , <key>C+Left</key> |<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> | | | ||
+ | |||
+ | === Commandes de suppression === | ||
+ | |||
+ | ^ //Supprimer// ^ //Raccourcis clavier// ^ //Raccourcis clavier bis// ^ | ||
+ | | le caractère se trouvant sous le curseur |<key>Suppr</key> |<key>C+d</key> | | ||
+ | | le caractère se trouvant à la gauche du curseur |<key>S+Suppr</key> |<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> | | | ||
+ | |||
+ | === Commandes d'annulation === | ||
+ | |||
+ | ^ //Opération// ^ //Raccourcis clavier// ^ //Raccourcis clavier bis// ^ | ||
+ | | Annuler la dernière opération |<key>A+u</key> | | | ||
+ | | Refaire la dernière opération annulée |<key>A+e</key> | | | ||
+ | |||
+ | === Commandes d'édition utilisant le presse-papiers === | ||
+ | |||
+ | ^ //Opération// ^ //Raccourcis clavier// ^ //Raccourcis clavier bis// ^ | ||
+ | | Marquer le texte à partir de la position courante du curseur |<key>A-a</key> |<key>C+6</key> | | ||
+ | | Couper la ligne courante ou la zone sélectionnée |<key>F9</key> |<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>Alt+6</key> |<key>Alt+^</key> | | ||
+ | | Insérer le contenu du presse-papiers à la position du curseur |<key>F10</key> |<key>C-u</key> | | ||
+ | |||
+ | Pour sélectionner du texte, le copier et le coller : | ||
+ | |||
+ | - 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, | ||
+ | - Faire <key>A-a</key> ou <key>Maj-C</key>+<key>-</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>Maj-A</key>+<key>-</key>, | ||
+ | - Se déplacer à l'endroit voulu pour le collage, | ||
+ | - Coller avec <key>C-u</key>. | ||
+ | |||
+ | === Commandes d'insertion === | ||
+ | |||
+ | ^ //Opération// ^ //Raccourcis clavier// ^ //Raccourcis clavier bis// ^ | ||
+ | | 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>F5</key> puis entrer le chemin du fichier |<key>C+r</key> puis entrer le chemin du fichier | | ||
+ | | Auto-Complétion |<key>C+AltGr+)</key> | | | ||
+ | |||
+ | === Commandes de recherche et remplacement === | ||
+ | |||
+ | ^ //Opération// ^ //Raccourcis clavier// ^ //Raccourcis clavier bis// ^ | ||
+ | | Rechercher une chaîne ou une expression rationnelle |<key>F6</key> puis entrer la chaîne à rechercher |<key>C+w</key> puis entrer la chaîne à rechercher | | ||
+ | | Rechercher le suivant |<key>Alt+w</key> | | | ||
+ | | Rechercher le précédent |<key>Alt+q</key> | | | ||
+ | | Remplacer une chaîne ou une expression rationnelle |<key>C+AltGr+_</key> puis entrer la chaîne à rechercher, puis la chaîne à remplacer | | | ||
+ | |||
+ | === Commandes spéciales === | ||
+ | |||
+ | ^ //Opération// ^ //Raccourcis clavier// ^ //Raccourcis clavier bis// ^ | ||
+ | | Indenter la ligne courante ou les lignes sélectionnées |<key>A+AltGr+=</key> | | | ||
+ | | Désindenter la ligne courante ou les lignes sélectionnées |<key>A+AltGr+'</key> | | | ||
+ | | Commenter ou décommenter la ligne courante ou les lignes sélectionnées |<key>A+S+"</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>F12</key> |<key>C+t</key> | | ||
- | * Voir le TP01 en fin de page. | ||
===== Utilisation avancée ===== | ===== Utilisation avancée ===== | ||
Ligne 66: | Ligne 141: | ||
Pour que nano affiche en permanence les coordonnées ligne/colonne, il est possible de le lancer avec l'option ''-c'' : | Pour que nano affiche en permanence les coordonnées ligne/colonne, il est possible de le lancer avec l'option ''-c'' : | ||
- | <code user>nano -c <fichier></code> | + | <code>nano -c <fichier></code> |
- | ==== Commandes avancées ==== | + | === Option -m === |
+ | Pour utiliser la souris dans le terminal, lancer nano avec l'option ''-m'' | ||
- | FIXME à tester | + | 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. |
- | | Déplacer le curseur | Raccourcis clavier | | + | Pour que nano place le curseur où vous cliquez : |
- | | vers le haut |<key>C-p</key> (prev) | | + | |
- | | vers le bas |<key>C-n</key> (next) | | + | Installer [[doc:autres:gpm | gpm]] |
- | | vers la gauche |<key>C-b</key> (back) | | + | |
- | | vers la droite |<key>C-f</key> (forward) | | + | Lancer nano avec l'option -m: |
- | | d'un mot en avant |<key>C-Espace</key> (forward) | | + | |
- | | d'un mot en arrière |<key>Alt-Maj-Espace</key> (forward) | | + | <code>nano -m <fichier></code> |
- | | à la page précédente |<key>C-y</key> | | + | |
- | | à la page suivante |<key>C-v</key> | | + | === Option -B === |
- | | au début de la ligne |<key>C-a</key> | | + | |
- | | à la fin de la ligne |<key>C-e</key> | | + | L'option permet de sauvegarder l'ancienne version du fichier. Il est donc possible de récupérer cette version en cas d'erreur. |
- | | au début du paragraphe |<key>Alt-(</key> | | + | Le fichier sera renommé avec le suffixe **~**, on retrouvera alors le fichier ''<fichier>'' et ''<fichier>~'' sa sauvegarde. |
- | | à la fin du paragraphe |<key>Alt-)</key> | | + | |
- | | au début du fichier |<key>AltGr-\</key> | | + | Lancer nano avec l'option -B: |
- | | à la fin du fichier |<key>Alt-Maj-/</key> | | + | |
+ | <code>nano -B <fichier></code> | ||
==== Configuration ==== | ==== Configuration ==== | ||
Ligne 127: | Ligne 204: | ||
=== Exemple de fichier nanorc : === | === Exemple de fichier nanorc : === | ||
- | <file bash /etc/nanorc> | + | <file bash .nanorc> |
- | ## Sample initialization file for GNU nano. | + | # Utiliser le correcteur orthographique GNU Aspell. |
- | ## | + | set speller "aspell -x -c" |
- | ## 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 | + | # Ctrl+Espace s'arrêtera d'abord après le dernier mot de la ligne courante avant de passer sur la ligne suivante |
- | ## DOS or Mac format, and that characters specially interpreted by the | + | set afterends |
- | ## 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. | + | # Auto-Indentation |
set autoindent | set autoindent | ||
- | ## Backup files to filename~. | + | # Ctrl+K coupera la ligne à partir de la position courante du curseur au lieu de couper toute la ligne |
- | # set backup | + | set cutfromcursor |
- | ## The directory to put unique backup files in. | + | # Garde l'historique de recherche entre chaque session |
- | # set backupdir "" | + | set historylog |
- | [...] | + | # Affiche les numéros de ligne |
+ | set linenumbers | ||
- | ## Enable mouse support, if available for your system. When enabled, | + | # Utiliser la souris dans nano |
- | ## 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 | set mouse | ||
- | [...] | + | # Ouvrir plusieurs fichiers en même temps. Utilisez les raccourcis Ctrl+R, Alt+< et Alt+> |
+ | set multibuffer | ||
- | ## Make the Home key smarter. When Home is pressed anywhere but at the | + | # N'ajoute pas de nouvelle ligne vide en fin de fichier qui n'en contient pas |
- | ## very beginning of non-whitespace characters on a line, the cursor | + | set nonewlines |
- | ## 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 | + | |
- | [...] | + | # Les portions de lignes coupées par le bord droit de l'écran ne seront pas affichées |
+ | set nowrap | ||
- | ## Nanorc files | + | # Le curseur se souviendra de sa dernière position entre chaque session |
- | include "/usr/share/nano/nanorc.nanorc" | + | set positionlog |
- | ## C/C++ | + | # Ctrl+A se positionnera d'abord sur le premier caractère non "espace". |
- | include "/usr/share/nano/c.nanorc" | + | set smarthome |
- | ## Cascading Style Sheets | + | # Ctrl+Z suspendra nano |
- | include "/usr/share/nano/css.nanorc" | + | set suspend |
- | ## Debian files | + | # Une tabulation aura une longueur de 4 caractères |
- | include "/usr/share/nano/debian.nanorc" | + | set tabsize 4 |
- | ## Gentoo files | + | # Utilise des caractères "espace" pour les tabulations |
- | include "/usr/share/nano/gentoo.nanorc" | + | set tabstospaces |
- | ## HTML | + | # Ctrl+Espace considérera la ponctuation comme faisant partie des mots |
- | include "/usr/share/nano/html.nanorc" | + | set wordbounds |
- | ## PHP | + | # Donner des couleurs aux éléments de l'interface de nano |
- | include "/usr/share/nano/php.nanorc" | + | set titlecolor brightwhite,blue |
- | + | set statuscolor brightwhite,green | |
- | [...] | + | set errorcolor brightwhite,red |
+ | set selectedcolor brightwhite,magenta | ||
+ | set numbercolor cyan | ||
+ | set keycolor cyan | ||
+ | set functioncolor green | ||
</file> | </file> | ||
- | |||
- | ===== TP01 : nano par l'exemple ===== | ||
- | |||
- | **À savoir :** | ||
- | |||
- | * [[:doc:systeme:mkdir]] Création de répertoire en ligne de commande | ||
- | * [[:doc:systeme:ls]] Commande de listage des répertoires | ||
- | * [[:doc:systeme:cat]] Commande pour ouvrir la lecture d'un fichier. | ||
- | * [[:doc:systeme:rm]] Commande pour supprimer des fichiers. | ||
- | |||
- | ==== But de l'exercice ==== | ||
- | |||
- | <note tip>Dans cet exercice, remplacer ''<mon_user>'' par votre pseudo ''user'' personnel. \\ | ||
- | :-) | ||
- | </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 ==== | ||
- | |||
- | Ouvrir un terminal sous la session de votre user puis tapez et validez : | ||
- | <code user>mkdir /home/<mon_user>/test</code> | ||
- | |||
- | Vérifiez la présence de ce répertoire en validant la commande : | ||
- | <code user>ls /home/<mon_user>/</code> | ||
- | <file config retour de la commande>test</file> | ||
- | |||
- | ==== Créez et rédigez un fichier user ==== | ||
- | |||
- | Avec nano, créez le fichier **test1** dans le répertoire **test** ainsi : | ||
- | <code user>nano /home/<mon_user>/test/test1</code> | ||
- | et écrivez les mots : | ||
- | test nano | ||
- | |||
- | - Validez par <key>C-o</key> puis <key>Entrée</key> | ||
- | - Quittez par <key>C-x</key> | ||
- | |||
- | Comme le signale zodar (le chieur mais attentif quand même !) sur le forum, nous pouvons, sans enregistrer, passer directement à la phase : | ||
- | * Quittez par <key>C-x</key> | ||
- | |||
- | Il nous sera alors demandé de validez nos modifications par : | ||
- | o = oui | ||
- | n = non | ||
- | //Pas belle la vie ?// | ||
- | |||
- | ==== Vérification ==== | ||
- | |||
- | Vérifiez par : | ||
- | <code user>cat /home/<mon_user>/test/test1</code> | ||
- | <file config retour de la commande>test nano</file> | ||
- | |||
- | Et voilà ! | ||
- | |||
- | ==== Suppression des données de l'exercice ==== | ||
- | |||
- | Pour supprimer ce répertoire test et le fichier test1 qui y est contenu, tapez : | ||
- | <code user>rm -r /home/<mon_user>/test</code> | ||
- | Puis vérifiez cette suppression avec la commande ls. | ||
- | |||
- | //Hop là !// :-D | ||
- | |||
- | |||
- | |||
- | ==== Créer un alias ==== | ||
- | |||
- | === Créer un alias de cette option pour votre user seul. === | ||
- | |||
- | Editez : | ||
- | <code user>nano /.bashrc</code> | ||
- | Et tapez la ligne d'alias suivante : | ||
- | 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 : ===== | ||
- | Le lien en français pour tout comprendre des options nanorc : \\ | + | * [[doc:editeurs:nano:nano-tp-par-l-exemple|TP : nano par l'exemple]] |
- | http://www.linuxcertif.com/man/5/nanorc/ | + | |
- | Le site officiel de GNU nano : \\ | + | * [[http://www.nano-editor.org/|Le site officiel de GNU nano]] (us) |
- | http://www.nano-editor.org/ | + | * [[http://www.linuxcertif.com/man/5/nanorc/|Le lien en français pour tout comprendre des options nanorc]] |
+ | * [[https://doc.ubuntu-fr.org/nano|Nano]], sur ubuntu-fr | ||
+ | * [[https://openclassrooms.com/courses/reprenez-le-controle-a-l-aide-de-linux/nano-l-editeur-de-texte-du-debutant|Nano, l'éditeur de texte du débutant]], sur OpenClassrooms | ||
+ | * [[https://openclassrooms.com/courses/introduction-a-l-edition-de-texte-avancee-l-exemple-de-gnu-nano|Introduction à l'édition de texte avancée]], sur OpenClassrooms | ||