GNU nano
-
Objet : L'éditeur de textes nano.
-
-
Commentaires : Un éditeur simple d'utilisation pour, entre autres choses, administrer son système.
-
-
Suivi :
-
-
-
Tests réalisés par milou le 11/10/2015
-
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 :
-
très simple,
-
possédant peu de fonctions (comparé à la commande d'édition vim par exemple)
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.
Utilisation
Pour une édition en tant qu'utilisateur du fichier monfichier
nano monfichier
Pour une édition en tant que root du fichier monfichier
nano monfichier
Certaines séquences peuvent fonctionner en terminal mais pas en console.
L'inverse est aussi possible.
Les commandes principales
Ces raccourcis clavier s'appliquent pour un clavier Azerty Français
Commandes de base
Opération |
Raccourcis clavier |
Afficher l'aide |
F1 ou Ctrl+G |
Fermer l'espace en cours / Quitter |
F2 ou Ctrl+X |
Sauvegarder |
F3 ou Ctrl+O puis valider par ↵ Entrée |
Commandes d'édition
Opération |
Raccourcis clavier |
Supprimer le caractère se trouvant sous le curseur |
Ctrl+D |
Supprimer le caractère se trouvant à la gauche du curseur |
Ctrl+H |
Copier la ligne courante dans le presse-papiers |
Maj+Alt+- |
Couper la ligne courante vers le presse-papiers |
F9 ou Ctrl+K |
Insérer le contenu du presse-papiers à la position du curseur |
F10 ou Ctrl+U |
Insérer une tabulation à la position du curseur |
Ctrl+I |
Insérer un passage à la ligne à la position du curseur |
Ctrl+M |
Rechercher une chaîne ou une expression rationnelle |
F6 ou Ctrl+W puis entrer la chaîne à rechercher |
Rechercher le suivant |
Alt+W |
Insérer un autre fichier dans l'espace en cours |
F5 ou Ctrl+R puis entrer le chemin du fichier |
Pour sélectionner du texte, le copier et le coller :
-
Se déplacer avec les flèches ↑ ↓ ← → pour se placer à l'endroit voulu,
-
Faire Alt+A ou Maj+Ctrl+- pour marquer le début de la sélection,
-
Se déplacer avec les flèches ↑ ↓ ← → pour sélectionner la zone de texte à copier,
-
Copier cette sélection avec Maj+Alt+-,
-
Se déplacer à l'endroit voulu pour le collage,
-
Coller avec Ctrl+U.
Commandes de déplacement
Déplacer le curseur |
Raccourcis clavier |
vers le haut |
Ctrl+P (prev) |
vers le bas |
Ctrl+N (next) |
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+Maj+Espace (backward) |
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 |
Alt+AltGr+_ |
à la fin du fichier |
Alt+Maj+: |
à l'écran précédent |
F7 ou Ctrl+Y ou Page↑ |
à l'écran suivant |
F8 ou Ctrl+V ou Page↓ |
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 <fichier>
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 gpm
Lancer nano avec l'option -m:
nano -m <fichier>
Configuration
On peut aussi 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
Gagner de la place à l'écran en n'affichant pas les raccourcis, décommenter la ligne set nohelp :
- /etc/nanorc
-
## Don't display the helpful shortcut lists at the bottom of the screen.
#set nohelp
Faire disparaître la barre de status, décommentez set quickblank :
- /etc/nanorc
-
## Do quick statusbar blanking. Statusbar messages will disappear after
## 1 keystroke instead of 26. Note that "const" overrides this.
##
#set quickblank
A l'inverse on peut préférer avoir un affichage plus complet comme le défilement de numéros de lignes, colonnes, etc…
Et si vous consultiez :
man nanorc
Essayer, c'est l'adopter ! Merci tux12
Exemple de fichier nanorc :
- /etc/nanorc
-
## 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.
set autoindent
## Backup files to filename~.
# set backup
## The directory to put unique backup files in.
# set backupdir ""
[...]
## Enable mouse support, if available for your system. When enabled,
## 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
[...]
## Make the Home key smarter. When Home is pressed anywhere but at the
## 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
[...]
## Nanorc files
include "/usr/share/nano/nanorc.nanorc"
## C/C++
include "/usr/share/nano/c.nanorc"
## Cascading Style Sheets
include "/usr/share/nano/css.nanorc"
## Debian files
include "/usr/share/nano/debian.nanorc"
## Gentoo files
include "/usr/share/nano/gentoo.nanorc"
## HTML
include "/usr/share/nano/html.nanorc"
## PHP
include "/usr/share/nano/php.nanorc"
[...]
TP01 : nano par l'exemple
À savoir :
-
mkdir Création de répertoire en ligne de commande
-
ls Commande de listage des répertoires
-
cat Commande pour ouvrir la lecture d'un fichier.
-
rm Commande pour supprimer des fichiers.
But de l'exercice
Dans cet exercice, remplacer <mon_user>
par votre pseudo user
personnel.
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 :
mkdir /home/<mon_user>/test
Vérifiez la présence de ce répertoire en validant la commande :
ls /home/<mon_user>/
- retour de la commande
-
test
Créez et rédigez un fichier user
Avec nano, créez le fichier test1 dans le répertoire test ainsi :
nano /home/<mon_user>/test/test1
et écrivez les mots :
test nano
-
Validez par Ctrl+O puis ↵ Entrée
-
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 :
Il nous sera alors demandé de validez nos modifications par :
o = oui
n = non
Pas belle la vie ?
Vérification
Suppression des données de l'exercice
Pour supprimer ce répertoire test et le fichier test1 qui y est contenu, tapez :
rm -r /home/<mon_user>/test
Puis vérifiez cette suppression avec la commande ls.
Hop là !
Créer un alias
Créer un alias de cette option pour votre user seul.
Editez :
nano /.bashrc
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 :
cp /etc/bash.bashrc /etc/bash.bashrc.back
et on copie la ligne d'alias en fin de fichier :
echo "alias nano='nano -c'" >> /etc/bash.bashrc
Et quand on est content, on fait de la place en supprimant le fichier de sauvegarde :
rm /etc/bash.bashrc.back
De phlinux et captnfab…
Liens :