====== GNU nano ======
* Objet : L'éditeur de textes nano.
* Niveau requis : {{tag>débutant avisé}}
* 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à !.]] :-)
* Suivi :
* 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 !))
===== Introduction =====
**Nano** est un éditeur de texte, en console ou en terminal, très utile pour modifier les fichiers de configuration de votre système.
Qui dit //éditeur de texte// dit :
- programme qui permet essentiellement de modifier des fichiers,
- donc des textes bruts sans mise en forme (gras, italique, souligné...).
Comme son nom le laisse deviner (le terme "//nano//" représente une toute petite unité), il s'agit d'une application :
- plutôt simple, mais néanmoins puissante.
- 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.
Voici une liste de ses fonctionnalités les plus intéressantes :
- Annulation multiple.
- Auto-Complétion
- Coloration syntaxique
- Correcteur orthographique
- Macro-Commande
Un //éditeur de texte// n'est pas un //traitement de texte//.
===== Utilisation =====
Pour une édition en tant qu'utilisateur du fichier ''monfichier''
nano monfichier
Pour une édition [[doc:systeme:superutilisateur|en tant que root]] du fichier ''monfichier''
nano monfichier
Si certaines commandes utilisant la touche Alt ne fonctionnent pas, utilisez la touche Echap à la place.
==== Les commandes principales ====
Ces raccourcis clavier s'appliquent pour un clavier Azerty Français
=== Commandes de base ===
^ //Opération// ^ //Raccourcis clavier// ^
| Afficher l'aide |C+g |
| Sauvegarder avec confirmation |C+o puis valider par Entrée |
| Sauvegarder sans confirmation |C+s |
| Fermer l'espace en cours / Quitter |C+x |
=== Commandes de déplacement rapide ===
^ //Déplacer le curseur// ^ //Raccourcis clavier// ^
| vers le haut, le bas, la gauche, la droite |C+p , C+n , C+b , C+f (Previous , Next , Backward , Forward) |
| au début de la ligne, la fin de la ligne |C+a , C+e |
| à l'écran précédent, à l'écran suivant |C+y , C+v |
| au début du fichier, à la fin du fichier |C+Début , C+Fin |
=== Commandes de déplacement avancé ===
^ //Déplacer le curseur// ^ //Raccourcis clavier// ^
| d'un mot en avant, d'un mot en arrière |C+→ , C+← |
| au paragraphe précédent, au paragraphe suivant |C+Up , C+Down |
| au début du paragraphe, à la fin du paragraphe |Alt+( , Alt+) |
| sur la ligne l (et sur la colonne c) |A+g puis entrer le numéro de la ligne (et de la colonne) |
| sur le crochet (accolade, parenthèse, ... ) adjoint à celui sous le curseur |A+] |
=== Commandes de suppression ===
^ //Supprimer// ^ //Raccourcis clavier// ^
| le caractère se trouvant sous le curseur |C+d |
| le caractère se trouvant à la gauche du curseur |C+h |
| le mot se trouvant à la gauche du curseur |S+C+Suppr |
| le mot se trouvant à la droite du curseur |C+Suppr |
| la ligne courante |Alt+Suppr |
=== Commandes d'annulation ===
^ //Opération// ^ //Raccourcis clavier// ^
| Annuler la dernière opération |A+u |
| Refaire la dernière opération annulée |A+e |
=== Commandes d'édition utilisant le presse-papiers ===
^ //Opération// ^ //Raccourcis clavier// ^
| Marquer le texte à partir de la position courante du curseur |A-a |
| Couper la ligne courante ou la zone sélectionnée |C-k |
| Couper le texte à partir de la position courante du curseur jusqu'à la fin du fichier |A-t |
| Copier la ligne courante ou la zone sélectionnée |A+^ |
| Insérer le contenu du presse-papiers à la position du curseur |C-u |
Pour sélectionner du texte, le copier et le coller :
- Se déplacer avec les flèches Up Down Left Right pour se placer à l'endroit voulu,
- Faire A-a pour marquer le début de la sélection,
- Se déplacer avec les flèches Up Down Left Right pour sélectionner la zone de texte à copier,
- Copier cette sélection avec A+^,
- Se déplacer à l'endroit voulu pour le collage,
- Coller avec C-u.
=== Commandes d'insertion ===
^ //Opération// ^ //Raccourcis clavier// ^
| Insérer une tabulation à la position du curseur |C+i |
| Insérer un passage à la ligne à la position du curseur |C+m |
| Insérer un autre fichier dans l'espace en cours |C+r puis entrer le nom du fichier |
| Auto-Complétion |C+] |
=== Commandes de recherche et remplacement ===
^ //Opération// ^ //Raccourcis clavier// ^
| Rechercher une chaîne ou une expression rationnelle |C+w puis entrer la chaîne à rechercher |
| Rechercher la suivante |Alt+w |
| Rechercher la précédente |Alt+q |
| Remplacer une chaîne ou une expression rationnelle |C+\ puis entrer la chaîne à rechercher, puis la chaîne à remplacer |
=== Commandes spéciales ===
^ //Opération// ^ //Raccourcis clavier// ^
| Indenter la ligne courante ou les lignes sélectionnées |A+} |
| Désindenter la ligne courante ou les lignes sélectionnées |A+{ |
| Commenter ou décommenter la ligne courante ou les lignes sélectionnées |A+3 |
| Démarrer/Arrêter l'enregistrement d'une macro |A+: |
| Lancer la macro |A+; |
| Lancer le correcteur orthographique ( [[:doc:editeurs:nano#exemple-de-fichier-nanorc|Voir aussi le fichier nanorc]] ) |C+t |
===== Utilisation avancée =====
==== Options ====
=== Option -c ===
Pour que nano affiche en permanence les coordonnées ligne/colonne, il est possible de le lancer avec l'option ''-c'' :
nano -c
=== Option -m ===
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.
Pour que nano place le curseur où vous cliquez :
Installer [[doc:autres:gpm | gpm]]
Lancer nano avec l'option -m:
nano -m
=== Option -B ===
L'option permet de sauvegarder l'ancienne version du fichier. Il est donc possible de récupérer cette version en cas d'erreur.
Le fichier sera renommé avec le suffixe **~**, on retrouvera alors le fichier '''' et ''~'' sa sauvegarde.
Lancer nano avec l'option -B:
nano -B
==== Configuration ====
On peut configurer nano ainsi :
En local en créant un :
/home/user/.nanorc
Et en le configurant mot à mot...
Ou pour tout le monde, en modifiant les options dans :
/etc/nanorc
Par exemple :
Dans un terminal root, éditer nanorc ainsi :
nano /etc/nanorc
set speller "aspell -x -c" # Utiliser le correcteur orthographique GNU Aspell.
set afterends # Ctrl+→ s'arrêtera d'abord après le dernier mot de la ligne courante avant de passer sur la ligne suivante
set autoindent # Auto-Indentation
set cutfromcursor # Ctrl+K coupera la ligne à partir de la position courante du curseur au lieu de couper toute la ligne
set historylog # Garde l'historique de recherche entre chaque session
set linenumbers # Affiche les numéros de ligne
set mouse # Utiliser la souris dans nano
set multibuffer # Ouvrir plusieurs fichiers en même temps. Utilisez Ctrl+R pour charger un fichier, et Alt+← ou Alt+→ pour changer de fichier.
set nonewlines # N'ajoute pas de nouvelle ligne vide en fin de fichier qui n'en contient pas
set nowrap # Les portions de lignes coupées par le bord droit de l'écran ne seront pas affichées
set positionlog # Le curseur se souviendra de sa dernière position entre chaque session
set smarthome # Ctrl+A se positionnera d'abord sur le premier caractère non "espace".
set suspend # Ctrl+Z suspendra nano
set tabsize 4 # Une tabulation aura une longueur de 4 caractères
set tabstospaces # Utilise des caractères "espace" pour les tabulations
set wordbounds # Ctrl+Espace considérera la ponctuation comme faisant partie des mots
# Donner des couleurs aux éléments de l'interface de nano
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
===== 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]].