====== 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]].