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 [30/03/2014 17:54] paskal [nano avancé - Configuration] |
doc:editeurs:nano [12/09/2020 19:13] Beta-Pictoris [Utilisation] |
||
---|---|---|---|
Ligne 2: | Ligne 2: | ||
* Objet : L'éditeur de textes nano. | * Objet : L'éditeur de textes nano. | ||
- | * Niveau requis : {{tag>débutant}} | + | * Niveau requis : {{tag>débutant avisé}} |
* 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 **smolski** 12/06/2009 | + | * Création par [[user>smolski]] le 12/06/2009 |
+ | * 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 17: | 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. | ||
- | ''Un //éditeur de texte// n'est pas un //traitement de texte//.'' | + | Voici une liste de ses fonctionnalités les plus intéressantes : |
+ | - Annulation multiple. | ||
+ | - Coloration syntaxique | ||
+ | - Auto-Complétion | ||
+ | - Correcteur orthographique | ||
+ | - Macro | ||
- | ===== Utilisation de base ===== | + | <note important>Un //éditeur de texte// n'est pas un //traitement de texte//.</note> |
- | ==== Édition d'un fichier ==== | + | ===== Utilisation ===== |
- | nano fichier | + | Pour une édition en tant qu'utilisateur du fichier ''monfichier'' |
- | ==== Raccourcis clavier ==== | + | <code user>nano monfichier</code> |
- | <code bash> | + | Pour une édition [[doc:systeme:superutilisateur|en tant que root]] du fichier ''monfichier'' |
- | - QUITTER : ========> Ctrl + x | + | <code root>nano monfichier</code> |
- | - SAUVER : ========> Ctrl + o | + | |
- | - COUPER : ========> Ctrl + k | + | |
- | - COLLER : ========> Ctrl + u | + | |
- | - CHERCHER : =======> Ctrl + w | + | |
- | - REMPLACER : ======> Ctrl + w suivi de Ctrl + r | + | |
- | - PAGE PRECEDENTE :=> Ctrl + y | + | |
- | - PAGE SUIVANTE : ==> Ctrl + v | + | |
- | - JUSTIFIER LE TEXTE : Ctrl + j | + | |
- | </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 ==== | ||
- | ===== nano par l'exemple - TP 01 ===== | + | Ces raccourcis clavier s'appliquent pour un clavier Azerty Français |
- | ==== À savoir : ==== | + | === Commandes de base === |
- | * commande linux : [[:doc:systeme:mkdir|COMMANDE MKDIR]] DÉBUTANT Création de répertoire en ligne de commande | + | ^ //Opération// ^ //Raccourcis clavier// ^ |
- | * commande linux : [[:doc:systeme:ls|COMMANDE LS]] DÉBUTANT Commande de listage des répertoires | + | | Afficher l'aide |<key>C+g</key> | |
- | * commande linux : [[:doc:systeme:cat|COMMANDE CAT]] DÉBUTANT Commande pour ouvrir la lecture d'un fichier. | + | | Sauvegarder avec confirmation |<key>C+o</key> puis valider par <key>Entrée</key> | |
- | * commande linux : [[:doc:systeme:rm|COMMANDE RM]] DÉBUTANT Commande pour supprimer des fichiers. | + | | Sauvegarder sans confirmation |<key>C+s</key> | |
+ | | Fermer l'espace en cours / Quitter |<key>C+x</key> | | ||
+ | === Commandes de déplacement basique === | ||
+ | ^ //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> | | ||
- | ==== But de l'exercice ==== | ||
- | <note tip>Dans cet exercice, remplacer ''<mon_user>'' par votre pseudo ''user'' personnel. \\ | + | === Commandes de déplacement avancé === |
- | :-) | + | |
- | </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 ==== | + | ^ //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> | | ||
- | Ouvrir un terminal sous la session de votre user puis tapez et validez : | + | === Commandes de suppression === |
- | <code user>mkdir /home/<mon_user>/test</code> | + | |
- | Vérifiez la présence de ce répertoire en validant la commande : | + | ^ //Supprimer// ^ //Raccourcis clavier// ^ |
- | <code user>ls /home/<mon_user>/</code> | + | | le caractère se trouvant sous le curseur |<key>C+d</key> | |
- | test | + | | 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> | | ||
- | ==== Créez et rédigez un fichier user ==== | + | === Commandes d'annulation === |
- | Avec nano, créez le fichier **test1** dans le répertoire **test** ainsi : | + | ^ //Opération// ^ //Raccourcis clavier// ^ |
- | <code user>nano /home/<mon_user>/test/test1</code> | + | | Annuler la dernière opération |<key>A+u</key> | |
- | et écrivez les mots : | + | | Refaire la dernière opération annulée |<key>A+e</key> | |
- | test nano | + | |
- | - Validez par ''Ctrl o'' | + | === Commandes d'édition utilisant le presse-papiers === |
- | - Quittez par ''Ctrl x'' | + | |
- | Comme le signale zodar (le chieur mais attentif quand même !) sur le forum, nous pouvons, sans enregistrer, passer directement à la phase : | + | ^ //Opération// ^ //Raccourcis clavier// ^ |
- | * Quittez par ''Ctrl x'' | + | | 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> | | ||
- | Il nous sera alors demandé de validez nos modifications par : | + | Pour sélectionner du texte, le copier et le coller : |
- | o = oui | + | |
- | n = non | + | |
- | //Pas belle la vie ?// | + | |
- | ==== Vérification ==== | + | - 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> 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>. | ||
- | Vérifiez par : | + | === Commandes d'insertion === |
- | <code user>cat /home/<mon_user>/test/test1</code> | + | |
- | test nano | + | |
- | Et voilà ! | + | ^ //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> | | ||
- | ==== Suppression des données de l'exercice ==== | + | === Commandes de recherche et remplacement === |
- | Pour supprimer ce répertoire test et le fichier test1 qui y est contenu, tapez : | + | ^ //Opération// ^ //Raccourcis clavier// ^ |
- | <code user>rm -r /home/<mon_user>/test</code> | + | | Rechercher une chaîne ou une expression rationnelle |<key>C+w</key> puis entrer la chaîne à rechercher | |
- | Puis vérifiez cette suppression avec la commande ls. | + | | Rechercher la suivante |<key>Alt+w</key> | |
+ | | Rechercher la précédente |<key>Alt+q</key> | | ||
+ | | Remplacer une chaîne ou une expression rationnelle |<key>C+\</key> puis entrer la chaîne à rechercher, puis la chaîne à remplacer | | ||
- | //Hop là !// :-D | + | === Commandes spéciales === |
- | ===== Utilisation avancée ===== | + | ^ //Opération// ^ //Raccourcis clavier// ^ |
+ | | Indenter la ligne courante ou les lignes sélectionnées |<key>A+}</key> | | ||
+ | | 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> | | ||
- | ==== Commandes clavier ==== | ||
- | === Déplacements === | + | ===== Utilisation avancée ===== |
- | * Ctrl P : déplace le curseur vers le haut | + | ==== Options ==== |
- | * Ctrl N : déplace le curseur vers le bas | + | |
- | * Ctrl F : déplace le curseur vers la droite | + | |
- | * Ctrl B : déplace le curseur vers la gauche | + | |
- | * Ctrl espace : se déplace d'un mot en avant | + | === Option -c === |
- | * Alt Maj espace : se déplace d'un mot en arrière | + | |
- | * Ctrl Y : écran précédent | + | |
- | * Ctrl V : écran suivant | + | |
- | * Ctrl A : saute au début de la ligne | + | Pour que nano affiche en permanence les coordonnées ligne/colonne, il est possible de le lancer avec l'option ''-c'' : |
- | * Ctrl E : saute à la fin de la ligne | + | <code>nano -c <fichier></code> |
- | * Alt ( : saute au début du paragraphe | + | |
- | * Alt ) : saute à la fin du paragraphe | + | |
- | * AltGr \ : saute au début du fichier | + | |
- | * Alt Maj / : saute à la fin du fichier | + | |
- | === Recherche === | + | === Option -m === |
+ | Pour utiliser la souris dans le terminal, lancer nano avec l'option ''-m'' | ||
- | Pour rechercher une <//chaîne de caractères//> : | + | 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. |
- | * Ctrl W puis tapez la <//chaîne//> cherchée et [Validez]. | + | |
- | Ainsi, **nano** vous déplacera jusqu'à la première occurrence de la chaîne trouvée. | + | |
- | * Alt W : Pour répéter la dernière recherche effectuée. | + | |
- | === Édition === | + | Pour que nano place le curseur où vous cliquez : |
- | * Ctrl K : Couper la ligne courante | + | Installer [[doc:autres:gpm | gpm]] |
- | * Alt ^ : Copier la ligne courante | + | |
- | * Ctrl U : Coller | + | |
- | ==== nano - Options ==== | + | Lancer nano avec l'option -m: |
- | === Option -c === | + | <code>nano -m <fichier></code> |
- | Vous pouvez ouvrir un fichier simplement : | + | === Option -B === |
- | <code user>nano <fichier></code> | + | |
- | Ou bien l'ouvrir avec la possibilité de connaître en continue les coordonnées Ligne/Colonne du pointeur : | + | L'option permet de sauvegarder l'ancienne version du fichier. Il est donc possible de récupérer cette version en cas d'erreur. |
- | <code user>nano -c <fichier></code> | + | Le fichier sera renommé avec le suffixe **~**, on retrouvera alors le fichier ''<fichier>'' et ''<fichier>~'' sa sauvegarde. |
- | ==== Créer un alias ==== | + | Lancer nano avec l'option -B: |
- | === Créer un alias de cette option pour votre user seul. === | + | <code>nano -B <fichier></code> |
- | Editez : | + | ==== Configuration ==== |
- | <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 | + | |
- | + | ||
- | ===== nano avancé - Configuration ===== | + | |
On peut aussi configurer nano ainsi : | On peut aussi configurer nano ainsi : | ||
Ligne 215: | Ligne 202: | ||
Essayer, c'est l'adopter ! Merci **tux12** ;-) | Essayer, c'est l'adopter ! Merci **tux12** ;-) | ||
- | ==== 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> | ||
+ | |||
===== 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 | ||