Difference between revisions of "Nano (Italiano)"

From ArchWiki
Jump to: navigation, search
(Introduction)
(wikify some external links, use https for archlinux.org)
(18 intermediate revisions by 7 users not shown)
Line 1: Line 1:
[[Category:Utilities (Italiano)]]
+
[[Category:Text editors (Italiano)]]
 +
[[de:Nano]]
 +
[[en:Nano]]
 +
{{Lowercase title}}
  
{{translateme}}
+
[http://www.nano-editor.org/ GNU nano] (o nano) è un editor di testo per console, che si propone di introdurre una semplice interfaccia ed opzioni di comando molto intuitivi per la modifica base di un testo. nano è l'editor predefinito per console in distribuzioni come Ubuntu e supporta svariate funzioni, tra cui l'evidenziazione colorata della sintassi, conversione dei file di tipo DOS/Mac, controllo ortografico e la codifica  [http://it.wikipedia.org/wiki/UTF-8 UTF-8]. L'avvio di nano con un buffer vuoto occupa in genere meno di 1,5 MB di memoria.
 +
[http://i275.photobucket.com/albums/jj281/adamchrista/Arch%20Linux/Wiki%20Examples/nano-man.png Una immagine di nano].
  
= Introduzione =
+
== Installazione ==
 +
{{Pkg|nano}} è incluso nel [[Official Repositories (Italiano)| repository ufficiale di Arch Linux [core]]] e, generalmente, viene installato di default.
  
Nano (o nano) è un editor di testo che si propone di introdurre una semplice interfaccia e le opzioni di comando intuitivo per console di editing del testo base. nano è l'editor predefinito di console in distribuzioni come [http://www.ubuntu.com/ Ubuntu] e supporta funzioni, tra cui sintassi colorized evidenziando, DOS / Mac conversioni dei tipi di file, controllo ortografico e e la codifica  [http://en.wikipedia.org/wiki/UTF-8 UTF-8]. nano è aperta con un buffer vuoto occupa in genere meno di 1,5 MB di memoria residente.[http://i275.photobucket.com/albums/jj281/adamchrista/Arch%20Linux/Wiki%20Examples/nano-man.png Una immagine di nano].
+
== Configurazione ==
 
+
=== Creare il file {{ic|~/.nanorc}} ===
Nano (or nano) is a text editor which aims to introduce a simple interface and intuitive command options to console based text editing. nano is the default console editor in distributions such as.  and supports features including colorized syntax highlighting, DOS/Mac file type conversions, spellchecking and  encoding. nano opened with an empty buffer typically occupies under 1.5 MB of resident memory.
+
L'aspetto e la funzione di nano è in genere controllata per mezzo sia di argomenti espressi da riga di comando, sia di comandi di configurazione presenti all'interno del file {{ic|~/.nanorc}}.
 
+
Un file di configurazione di esempio viene allocato con l'installazione del programma e lo potete trovare in {{ic|/etc/nanorc}}. Il file {{ic|~/.nanorc}} deve essere prima creato dall'utente:
= Package Installation =
+
nano is part of the [[Official Repositories|official Arch Linux (core) repositories]].
+
 
+
$ pacman -Si nano
+
 
+
<pre>Repository    : core
+
Name          : nano
+
Version        : 2.2.0-1
+
URL            : http://www.nano-editor.org
+
Licenses      : GPL 
+
Groups        : base 
+
Provides      : None
+
Depends On    : glibc  ncurses  texinfo 
+
Optional Deps  : None
+
Conflicts With : None
+
Replaces      : None
+
Download Size  : 391.35 K
+
Installed Size : 1144.00 K
+
Packager      : Andreas Radke <andyrtr@archlinux.org>
+
Architecture  : i686
+
Build Date    : Mon 22 Sep 2008 10:20:00 AM PDT
+
MD5 Sum        : fa5017796de45d0e7baed3ba019dc6dd
+
Description    : Pico editor clone with enhancements</pre>
+
 
+
Install the latest version of nano:
+
# pacman -S nano
+
 
+
= Configuration =
+
== Creating ~/.nanorc ==
+
The look, feel and function of nano is typically controlled by way of either command-line arguments, or configuration commands within the file <tt>~/.nanorc</tt>.<br>
+
A sample configuration file is installed upon program installation and is located at <tt>/etc/nanorc</tt>.The file <tt>~/.nanorc</tt> must be first created by the user:
+
  
 
  $ cd ~
 
  $ cd ~
 
  $ touch .nanorc
 
  $ touch .nanorc
or
+
oppure copiare il file di default nella propria home
 
  $ cp /etc/nanorc ~/.nanorc
 
  $ cp /etc/nanorc ~/.nanorc
  
Proceed to establish the nano console environment by setting and/or unsetting commands within <tt>.nanorc</tt> file.
+
Si può procedere a stabilire le varie variabili di configurazione semplicemente commentando/decommentando i vari comandi presenti in {{ic|.nanorc}}.
{{Tip|[http://www.nano-editor.org/dist/v2.1/nanorc.5.html NANORC] details the complete list configuration commands available for nano.|}}
+
{{Tip| Nella pagina [http://www.nano-editor.org/dist/v2.2/nanorc.5.html NANORC] è elencata la lista completa dei vari comandi di configurazione avviabili in nano.}}
{{Note|Command-line arguments override and take precedence over the configuration commands established in .nanorc|}}
+
{{Nota|Gli argomenti a riga di comando sovrascrinono e prevalgono sui comandi di configurazione stabiliti in {{ic|.nanorc}}.}}
  
===Nano syntax highlight for PKGBUILD===
+
====Nano: Evidenziazione della sintassi per i PKGBUILD====
This is an updated version of the nanorc found [http://bbs.archlinux.org/viewtopic.php?pid=565476 here].
+
  
 +
Questa è nuova versione per ArchLinux [https://projects.archlinux.org/svntogit/packages.git/tree "svntogit-server"].
 +
# Arch PKGBUILD files
 +
#
 +
syntax "pkgbuild" "^.*PKGBUILD*"
 +
# commands
 +
color red "\<(cd|echo|enable|exec|export|kill|popd|pushd|read|source|touch|type)\>"
 +
color brightblack "\<(case|cat|chmod|chown|cp|diff|do|done|elif|else|esac|exit|fi|find|for|ftp|function|grep|gzip|if|in)\>"
 +
color brightblack "\<(install|ln|local|make|mv|patch|return|rm|sed|select|shift|sleep|tar|then|time|until|while|yes)\>"
 +
# ${*}
 +
icolor blue "\$\{?[0-9A-Z_!@#$*?-]+\}?"
 +
# numerics
 +
color blue "\ [0-9]*"
 +
color blue "\.[0-9]*"
 +
color blue "\-[0-9]*"
 +
color blue "=[0-9]"
 +
# spaces
 +
color ,green "<nowiki>[[:space:]]</nowiki>+$"
 +
# strings; multilines are not supported
 +
color brightred ""(\\.|[^"])*"" "'(\\.|[^'])*'"
 +
# comments
 +
color brightblack "#.*$"
 +
 +
Questa è un'altra versione discussa [https://bbs.archlinux.org/viewtopic.php?pid=565476 qui].
 +
 +
{{hc|/usr/share/nano/pkgbuild.nanorc|2=<nowiki>
 
  ## Arch PKGBUILD files
 
  ## Arch PKGBUILD files
 
  ##
 
  ##
Line 76: Line 74:
 
  color brightred "\<(configure|make|cmake|scons)\>"
 
  color brightred "\<(configure|make|cmake|scons)\>"
 
  color red "\<(DESTDIR|PREFIX|prefix|sysconfdir|datadir|libdir|includedir|mandir|infodir)\>"
 
  color red "\<(DESTDIR|PREFIX|prefix|sysconfdir|datadir|libdir|includedir|mandir|infodir)\>"
 +
</nowiki>}}
 +
 +
Per poterla utilizzare salvatela come /usr/share/nano/pkgbuild.nanorc e aggiungete:
  
To use, save as /usr/share/nano/pkgbuild.nanorc and add:
 
 
  include "/usr/share/nano/pkgbuild.nanorc"
 
  include "/usr/share/nano/pkgbuild.nanorc"
to your ~/.nanorc
 
  
== Suggested Configuration ==
+
nel vostro file {{ic|~/.nanorc}}
=== Suspension ===
+
Unlike most interactive programs, suspension is not enabled by default. To change this, uncomment the 'set suspend' line in '/etc/nanorc'. This will allow you to use the keys ctrl+z to send nano to the background.
+
  
= nano Usage =
+
oppure in {{ic|/etc/nanorc}}
== Special Functions ==
+
* <tt>Ctrl</tt> key modified shortcuts <tt>(^)</tt> respresenting commonly used functions are listed along the bottom two lines of the nano screen.
+
* Additional functions can be interactively toggled by way of <tt>Meta</tt> (typically <tt>Alt</tt>) and/or <tt>Esc</tt> key modified sequences.
+
  
=== Shortcut Lists Overview ===
+
=== Configurazione consigliata ===
* <tt>^G Get Help</tt> (<tt>F1</tt>)
+
==== Sospensione ====
: Displays the online help files within the session window. A suggested read for nano users of all levels
+
* <tt>^O WriteOut</tt> (<tt>F3</tt>)
+
: Save the contents of the current file buffer to a file on the disk
+
* <tt>^R Read File</tt> (<tt>F5</tt>)
+
: Inserts another file into the current one at the cursor location
+
* <tt>^Y Prev Page</tt> (<tt>F7</tt>)
+
: Display the previous buffered screen
+
* <tt>^K Cut Text</tt> (<tt>F9</tt>)
+
: Cut and store the current line from the beginning of the line to the end of the line
+
* <tt>^C Cur Pos</tt> (<tt>F11</tt>)
+
: Display line, column and character position information at the current location of the cursor
+
* <tt>^X Exit</tt> (<tt>F2</tt>)
+
: Close and exit nano
+
* <tt>^J Justify</tt> (<tt>F4</tt>)
+
: Aligns text according to the geometry of the console window
+
* <tt>^W Where</tt> (<tt>F6</tt>)
+
: Perform a case-insensitive string, or regular expression search
+
* <tt>^V Next Page</tt> (<tt>F8</tt>)
+
: Display the next buffered screen
+
* <tt>^U UnCut Text</tt> (<tt>F10</tt>)
+
: Paste the contents of the cut buffer to the current cursor location
+
* <tt>^T To Spell</tt> (<tt>F12</tt>)
+
: Spellcheck the contents of the buffer with the built-in <tt>spell</tt>, if available
+
  
{{Tip|See the nano online help files via <code>Ctrl+g</code> within nano and the [http://www.nano-editor.org/dist/v2.1/nano.html nano Command Manual] for complete descriptions and additional support.|}}
+
A differenza di molti programmi interattivi, la sospensione non è abilitata di default. Per modificare questo comportamento, decommentate la linea
  
=== Selected Toggle Functions ===
+
set suspend
* <tt>Meta+c</tt> (or <tt>Esc+c</tt>)
+
: Toggles support for line, column and character position information.
+
  
* <tt>Meta+i</tt> (or <tt>Esc+i</tt>)
+
in {{ic|/etc/nanorc}}. Questo vi permetterà di utilizzare i tasti {{keypress|Ctrl + z}} per inviare nano in background.
: Toggles support for the auto indentation of lines
+
  
* <tt>Meta+k</tt> (or <tt>Esc+k</tt>)
+
==== Non avvolgimento del testo ====
: Toggles support for cutting text from the current cursor position to the end of the line
+
Provenendo  da un'altra distro, il comportamento di nano potrebbe risultare anomalo; basterà modificare il file {{ic|/etc/nanorc}} in questo modo:
  
* <tt>Meta+m</tt> (or <tt>Esc+m</tt>)
+
## Don't wrap text at all.
: Toggles mouse support for cursor placement, marking and shortcut execution
+
set nowrap
  
* <tt>Meta+x</tt> (or <tt>Esc+x</tt>)
+
== Utilizzo di nano ==
: Toggles the display of the shortcut list at the bottom of the nano screen for additional screen space
+
=== Funzioni Speciali ===
  
{{Tip|[http://www.nano-editor.org/dist/v2.1/nano.html#Feature-Toggles Feature Toggles] lists the global toggles available for nano.|}}
+
La notazione per i tasti di scelta rapida è la seguente:  
  
= Tips & Tricks =
+
* Le sequenze identificate con il simbolo {{ic|^}} sono introdotte usando il tasto Control ({{keypress|Ctrl}}), oppure premendo il tasto {{keypress| Esc}} due volte.
  
== Replacing <tt>vi</tt> with <tt>nano</tt> ==
+
*Le sequenze identificate col simbolo Meta {{ic|M}} possono essere inserite usato alternativamente il tasto {{keypress|Esc}}, {{keypress|Alt}} o {{keypress|Meta}}, a seconda della  configurazione della tastiera.  Inoltre, premendo {{keypress|Esc}} due volte e digitando i numeri da ''000'' a ''255'' si possono inserire i caratteri con il codice ASCII corrispondente.
  
Casual users may prefer the use of <tt>nano</tt> over <tt>vi</tt> for its simplicity and ease of use and may opt to replace vi with nano as the default text editor for commands such as <code>visudo</code>.
+
==== Panoramica sui tasti di scelta rapida ====
  
=== Method One ===
+
* {{keypress|Ctrl}}+{{keypress|G}} Aiuto ({{keypress|F1}})
{{Warning|From <tt>man 8 visudo</tt>: ''Note that this can be a security hole since it allows the user to execute any program they wish simply by setting VISUAL or EDITOR.''}}
+
: Consente di visualizzare la Guida in linea all'interno della finestra di sessione. Se ne consiglia la lettura.
 +
* {{keypress|Ctrl}}+{{keypress|O}} Salva ({{keypress|F3}})
 +
: Salva il file corrente su disco
 +
* {{keypress|Ctrl}}+{{keypress|R}} Inserisci ({{keypress|F5}})
 +
: Inserisce un altro file nella posizione corrente del cursore
 +
* {{keypress|Ctrl}}+{{keypress|Y}} Pagina precedente ({{keypress|F7}})
 +
: Mostra la schermata precedente
 +
* {{keypress|Ctrl}}+{{keypress|K}} Taglia ({{keypress|F9}})
 +
: Taglia la riga corrente e la memorizza nel cutbuffer
 +
* {{keypress|Ctrl}}+{{keypress|C}} Posizione ({{keypress|F11}})
 +
: Mostra la posizione del cursore dando informazioni sulla linea, colonna e carattere
 +
* {{keypress|Ctrl}}+{{keypress|X}} Esci ({{keypress|F2}})
 +
: Chiude ed esce da nano, se il file è stato modificato ne chiede il salvataggio
 +
* {{keypress|Ctrl}}+{{keypress|J}} Giustifica ({{keypress|F4}})
 +
: Giustifica il paragrafo corrente in base alla geometria della finestra
 +
* {{keypress|Ctrl}}+{{keypress|W}} Cerca  ({{keypress|F6}})
 +
: Cerca una stringa o un'espressione regolare
 +
* {{keypress|Ctrl}}+{{keypress|V}} Pagina successiva ({{keypress|F8}})
 +
: Mostra la schermata successiva
 +
* {{keypress|Ctrl}}+{{keypress|U}} Incolla ({{keypress|F10}})
 +
: Incolla dal cutbuffer nella riga corrente
 +
* {{keypress|Ctrl}}+{{keypress|T}} Ortografia ({{keypress|F12}})
 +
: Esegue il correttore ortografico, se disponibile, utilizza ''spell''
  
[[Sudo|sudo]] from the core repository is compiled with <code>--with-env-editor</code> by default and honors the use of the <tt>VISUAL</tt> and <tt>EDITOR</tt> variables. To establish nano as the <code>visudo</code> editor for the duration of the current shell session, set and export the <tt>EDITOR</tt> variable before calling <code>visudo</code>
+
{{Tip|Consultare l'aiuto in linea di nano tramite {{keypress|Ctrl + g}} all'interno dell'editor e il [http://www.nano-editor.org/dist/v2.1/nano.html manuale dei comandi di nano] per una completa descrizione e supporto addizionale.}}
 +
 
 +
==== Abilitazione/Disabilitazione delle funzioni speciali ====
 +
 
 +
* {{keypress|Meta + c}} (or {{keypress|Esc + c}})
 +
: Abilita/disabilita la visualizzazione della posizione del cursore.
 +
 
 +
* {{keypress|Meta + i}} (or {{keypress|Esc + i}})
 +
: Abilita/disabilita l'indentazione automatica
 +
 
 +
* {{keypress|Meta + k}} (or {{keypress|Esc + k}})
 +
: Abilita/disabilita la possibilità di tagliare la riga intera nella posizione del cursore
 +
 
 +
* {{keypress|Meta + m}} (or {{keypress|Esc + m}})
 +
: Abilita/disabilita il supporto del mouse
 +
 
 +
* {{keypress|Meta + x}} (or {{keypress|Esc + x}})
 +
: Abilita/disabilita la visualizzazione della barra inferiore dei comandi
 +
 
 +
{{Tip|La pagina sulle [http://www.nano-editor.org/dist/v2.1/nano.html#Feature-Toggles caratteristiche aggiuntive] elenca tutte le alternative disponibili in nano.}}
 +
 
 +
== Suggerimenti ==
 +
 
 +
=== Sostituire vi con nano ===
 +
 
 +
Molti utenti preferiscono utilizzare {{Ic|nano}} al posto di {{Ic|vi}} poiché risulta più semplice e facile da utilizzare, inoltre possono scegliere di sostituire {{Ic|vi}} con {{Ic|nano}} come editor predefinito per i comandi di testo come '''visudo'''.
 +
 
 +
==== Primo metodo ====
 +
 
 +
{{Attenzione|Dal {{Ic|man 8 visudo}}: ''Si noti che questo metodo potrebbe compromettere la sicurezza in quanto permette all'utente di eseguire qualsiasi programma che desiderano semplicemente impostando le variabili VISUAL o EDITOR.''}}
 +
 
 +
[[Sudo (Italiano)|sudo]] reperibile nel repository ''core'', è compilato in modo predefinito con l'opzione {{Ic|--with-env-editor}}  e rispetta l'uso delle variabili {{Ic|VISUAL}} ed {{Ic|EDITOR}}. Per poter stabilire di utilizzare ''nano'' come editor per il comando '''visudo''' per tutta la durata della sessione corrente della console, bisogna impostare ed esportare la variabile {{Ic|EDITOR}} prima di chiamare '''visudo'''.
  
 
  export EDITOR=nano  
 
  export EDITOR=nano  
  
==== Example Usage ====
+
===== Esempio di utilizzo =====
  
 
   export EDITOR=nano && sudo visudo
 
   export EDITOR=nano && sudo visudo
  
=== Method Two ===
+
==== Secondo metodo ====
{{Warning|From <tt>man 8 visudo</tt>: ''Note that this can be a security hole since it allows the user to execute any program they wish simply by setting VISUAL or EDITOR.''}}
+
  
The EDITOR variable can also be set within the following files for persistent use:
+
{{Attenzione|Dal {{Ic|man 8 visudo}}: ''Si noti che questo metodo potrebbe compromettere la sicurezza in quanto permette all'utente di eseguire qualsiasi programma che desiderano semplicemente impostando le variabili VISUAL o EDITOR.''}}
  
* ~/[http://www.gnu.org/software/bash/manual/bashref.html#Bash-Startup-Files .bash_profile] (login shell)
+
La variabile '''EDITOR''' può anche essere impostata all'interno dei seguenti file per un uso persistente:
* ~/.bashrc (interactive, non-login shell)
+
* [http://www.gnu.org/software/bash/manual/bashref.html#Bash-Startup-Files /etc/profile] (global settings for all system users except <tt>root</tt>)
+
  
==== Example .bash_profile ====
+
* ~/[http://www.gnu.org/software/bash/manual/bashref.html#Bash-Startup-Files .bash_profile] (shell di login)
 +
* ~/.bashrc (shell interattiva, non di login)
 +
* [http://www.gnu.org/software/bash/manual/bashref.html#Bash-Startup-Files {{ic|/etc/profile}}] (impostazioni globali per tutti gli utenti del sistema, tranne {{Ic|root}})
  
<pre>. $HOME/.bashrc
+
===== Esempio di {{ic|.bash_profile}} =====
 +
 
 +
{{bc|<nowiki>. $HOME/.bashrc
  
 
export EDITOR=nano
 
export EDITOR=nano
Line 172: Line 194:
 
   startx
 
   startx
 
   logout
 
   logout
fi</pre>
+
fi</nowiki>}}
 +
 
 +
==== Terzo Metodo ====
 +
{{Nota|Questo metodo può essere considerato draconiano e potrebbe non essere adatto a tutti gli utenti. Tuttavia, la seguente procedura esiste come esempio di una soluzione praticabile.}}
 +
 
 +
===== Link simbolici =====
 +
come root, o tramite il comando {{Ic|su -}}
 +
 
 +
Rinominare l'eseguibile {{Ic|vi}} in {{ic|vi.old}} per un semplice ripristino:
 +
 
 +
# mv /usr/bin/vi /usr/bin/vi.old
 +
 
 +
Creare un link simbolico da {{Ic|/usr/bin/nano}} a {{Ic|/usr/bin/vi}}:
 +
 
 +
# ln -s /usr/bin/nano /usr/bin/vi
  
=== Method Three ===
+
{{nota|Questo link simbolico andrà ricreato ad ogni aggiornamento di {{ic|Vi}}.}}
{{Note|This method can be considered draconian and may not be suitable for all users. Nonetheless, the following procedure exists as a viable example solution.}}
+
  
==== Symbolic Linking ====
+
===== Ripristino di {{Ic|vi}} =====
As root, or with <code>su -</code>
+
Rimuovere il link simbolico {{Ic|/usr/bin/vi}}:
  
  mv /usr/bin/vi /usr/bin/vi.old
+
  # unlink /usr/bin/vi
ln -s /usr/bin/nano /usr/bin/vi
+
  
Assuming sudo is installed and properly configured
+
Rinominare l'eseguibile {{ic|vi.old}} a {{Ic|vi}}:
  
  sudo mv /usr/bin/vi /usr/bin/vi.old
+
  # mv /usr/bin/vi.old /usr/bin/vi
sudo ln -s /usr/bin/nano /usr/bin/vi
+
  
==== Overview of Commands ====
+
==== Quarto metodo ====
mv /usr/bin/vi /usr/bin/vi.old
+
{{Nota|Questo metodo può essere considerato draconiano e potrebbe non essere adatto a tutti gli utenti. Tuttavia, la seguente procedura esiste come esempio di una soluzione praticabile.}}
* Rename the <tt>vi</tt> executable to <tt>vi.old</tt> for ease of restoration
+
ln -s /usr/bin/nano /usr/bin/vi
+
* Create a symbolic link from <tt>/usr/bin/nano</tt> to <tt>/usr/bin/vi</tt>
+
  
==== Restoration of <tt>vi</tt> ====
+
===== Rimozione e link simbolici =====
  unlink /usr/bin/vi
+
Usare [[Pacman (Italiano)|pacman]] per rimuovere {{ic|vi}}, le sue configuazioni e le dipendenze:
* Remove the <tt>/usr/bin/vi</tt> symbolic link
+
  # pacman -Rns vi
  mv /usr/bin/vi.old /usr/bin/vi
+
Creare il link simbolico da {{ic|/usr/bin/nano}} a {{ic|/usr/bin/vi}}:
* Rename the <tt>vi.old</tt> executable back to <tt>vi</tt>
+
  # ln -s /usr/bin/nano /usr/bin/vi
  
=== Method Four ===
+
===== Rispristino di {{Ic|vi}} =====
{{Note|This method can be considered draconian and may not be suitable for all users. Nonetheless, the following procedure exists as a viable example solution.}}
+
Rimuovere il link simbolico {{Ic|/usr/bin/vi}}
  
==== Removal & Symbolic Linking ====
+
  # unlink /usr/bin/vi
  pacman -Rns vi
+
ln -s /usr/bin/nano /usr/bin/vi
+
  
==== Overview of Commands ====
+
Utilizzare pacman per installare il pacchetto {{Ic|vi}} precedentemente disinstallato.
pacman -Rns vi
+
* Use [[Pacman|pacman]] to remove the <tt>vi</tt> package, its configuration, and all unneeded dependencies
+
ln -s /usr/bin/nano /usr/bin/vi
+
* Create a symbolic link from <tt>/usr/bin/nano</tt> to <tt>/usr/bin/vi</tt>
+
  
==== Restoration of <tt>vi</tt> ====
+
  # pacman -S vi  
unlink /usr/bin/vi
+
* Remove the <tt>/usr/bin/vi</tt> symbolic link
+
  pacman -S vi  
+
* Use pacman to install the previously deinstallled <tt>vi</tt> package
+
  
{{Box Note|Do not clean <tt>-c</tt> or refresh <tt>-y</tt> the package database if you wish to retain the previously installed version of the <tt>vi</tt> package.<br>If this case, subsequent updates will also require the judicious use of the <tt>--ignore vi</tt> switch (and optionally <tt>--ignore glibc ncurses coreutils</tt>).|}}
+
{{nota|Non pulire {{Ic|-c}} o aggiornare {{Ic|-y}} il database dei pacchetti, se volete mantenere la versione precedentemente installata del pacchetto {{Ic|vi}}. In questo caso, gli aggiornamenti successivi richiederanno anche l'uso giudizioso dell'opzione {{Ic|--ignore vi}} (ed in modo facoltativo di {{Ic|--ignore glibc ncurses coreutils}}.}}
  
= Additional Resources =  
+
= Fonti addizionali =  
  
* [http://en.wikipedia.org/wiki/Nano_(text_editor) nano (text editor)] - Wikipedia Entry
+
* [[wikipedia:Nano_(text_editor)|nano (text editor)]] - Articolo Wikipedia inglese
* [http://www.nano-editor.org/ GNU nano Homepage] - Official Site
+
* [http://www.nano-editor.org/ GNU nano Homepage] - Sito Ufficiale
* [https://savannah.gnu.org/bugs/?group=nano GNU nano Bugs] Bug Reporting
+
* [https://savannah.gnu.org/bugs/?group=nano GNU nano Bugs] - Segnalazione Bug
 +
* [https://github.com/craigbarnes/nanorc Better syntax highlighting definitions]

Revision as of 16:09, 4 December 2012

GNU nano (o nano) è un editor di testo per console, che si propone di introdurre una semplice interfaccia ed opzioni di comando molto intuitivi per la modifica base di un testo. nano è l'editor predefinito per console in distribuzioni come Ubuntu e supporta svariate funzioni, tra cui l'evidenziazione colorata della sintassi, conversione dei file di tipo DOS/Mac, controllo ortografico e la codifica UTF-8. L'avvio di nano con un buffer vuoto occupa in genere meno di 1,5 MB di memoria. Una immagine di nano.

Installazione

nano è incluso nel repository ufficiale di Arch Linux [core] e, generalmente, viene installato di default.

Configurazione

Creare il file ~/.nanorc

L'aspetto e la funzione di nano è in genere controllata per mezzo sia di argomenti espressi da riga di comando, sia di comandi di configurazione presenti all'interno del file ~/.nanorc. Un file di configurazione di esempio viene allocato con l'installazione del programma e lo potete trovare in /etc/nanorc. Il file ~/.nanorc deve essere prima creato dall'utente:

$ cd ~
$ touch .nanorc

oppure copiare il file di default nella propria home

$ cp /etc/nanorc ~/.nanorc

Si può procedere a stabilire le varie variabili di configurazione semplicemente commentando/decommentando i vari comandi presenti in .nanorc.

Tip: Nella pagina NANORC è elencata la lista completa dei vari comandi di configurazione avviabili in nano.
Nota: Gli argomenti a riga di comando sovrascrinono e prevalgono sui comandi di configurazione stabiliti in .nanorc.

Nano: Evidenziazione della sintassi per i PKGBUILD

Questa è nuova versione per ArchLinux "svntogit-server".

# Arch PKGBUILD files
#
syntax "pkgbuild" "^.*PKGBUILD*"
# commands
color red "\<(cd|echo|enable|exec|export|kill|popd|pushd|read|source|touch|type)\>"
color brightblack "\<(case|cat|chmod|chown|cp|diff|do|done|elif|else|esac|exit|fi|find|for|ftp|function|grep|gzip|if|in)\>"
color brightblack "\<(install|ln|local|make|mv|patch|return|rm|sed|select|shift|sleep|tar|then|time|until|while|yes)\>"
# ${*}
icolor blue "\$\{?[0-9A-Z_!@#$*?-]+\}?"
# numerics
color blue "\ [0-9]*"
color blue "\.[0-9]*"
color blue "\-[0-9]*"
color blue "=[0-9]"
# spaces
color ,green "[[:space:]]+$"
# strings; multilines are not supported
color brightred ""(\\.|[^"])*"" "'(\\.|[^'])*'"
# comments
color brightblack "#.*$"

Questa è un'altra versione discussa qui.

/usr/share/nano/pkgbuild.nanorc
 ## Arch PKGBUILD files
 ##
 syntax "pkgbuild" "^.*PKGBUILD$"
 color green start="^." end="$"
 color cyan "^.*(pkgbase|pkgname|pkgver|pkgrel|pkgdesc|arch|url|license).*=.*$"
 color brightcyan "\<(pkgbase|pkgname|pkgver|pkgrel|pkgdesc|arch|url|license)\>"
 color brightcyan "(\$|\$\{|\$\()(pkgbase|pkgname|pkgver|pkgrel|pkgdesc|arch|url|license)(|\}|\))"
 color cyan "^.*(depends|makedepends|optdepends|conflicts|provides|replaces).*=.*$"
 color brightcyan "\<(depends|makedepends|optdepends|conflicts|provides|replaces)\>"
 color brightcyan "(\$|\$\{|\$\()(depends|makedepends|optdepends|conflicts|provides|replaces)(|\}|\))"
 color cyan "^.*(groups|backup|noextract|options).*=.*$"
 color brightcyan "\<(groups|backup|noextract|options)\>"
 color brightcyan "(\$|\$\{|\$\()(groups|backup|noextract|options)(|\}|\))"
 color cyan "^.*(install|source|md5sums|sha1sums|sha256sums|sha384sums|sha512sums).*=.*$"
 color brightcyan "\<(install|source|md5sums|sha1sums|sha256sums|sha384sums|sha512sums)\>"
 color brightcyan "(\$|\$\{|\$\()(install|source|md5sums|sha1sums|sha256sums|sha384sums|sha512sums)(|\}|\))"
 color brightcyan "\<(startdir|srcdir|pkgdir)\>"
 color cyan "\.install"
 color brightwhite "=" "'" "\(" "\)" "\"" "#.*$" "\," "\{" "\}"
 color brightred "build\(\)"
 color brightred "package_.*.*$"
 color brightred "\<(configure|make|cmake|scons)\>"
 color red "\<(DESTDIR|PREFIX|prefix|sysconfdir|datadir|libdir|includedir|mandir|infodir)\>"

Per poterla utilizzare salvatela come /usr/share/nano/pkgbuild.nanorc e aggiungete:

include "/usr/share/nano/pkgbuild.nanorc"

nel vostro file ~/.nanorc

oppure in /etc/nanorc

Configurazione consigliata

Sospensione

A differenza di molti programmi interattivi, la sospensione non è abilitata di default. Per modificare questo comportamento, decommentate la linea

set suspend

in /etc/nanorc. Questo vi permetterà di utilizzare i tasti Template:Keypress per inviare nano in background.

Non avvolgimento del testo

Provenendo da un'altra distro, il comportamento di nano potrebbe risultare anomalo; basterà modificare il file /etc/nanorc in questo modo:

## Don't wrap text at all.
set nowrap

Utilizzo di nano

Funzioni Speciali

La notazione per i tasti di scelta rapida è la seguente:

  • Le sequenze identificate col simbolo Meta M possono essere inserite usato alternativamente il tasto Template:Keypress, Template:Keypress o Template:Keypress, a seconda della configurazione della tastiera. Inoltre, premendo Template:Keypress due volte e digitando i numeri da 000 a 255 si possono inserire i caratteri con il codice ASCII corrispondente.

Panoramica sui tasti di scelta rapida

Consente di visualizzare la Guida in linea all'interno della finestra di sessione. Se ne consiglia la lettura.
Salva il file corrente su disco
Inserisce un altro file nella posizione corrente del cursore
Mostra la schermata precedente
Taglia la riga corrente e la memorizza nel cutbuffer
Mostra la posizione del cursore dando informazioni sulla linea, colonna e carattere
Chiude ed esce da nano, se il file è stato modificato ne chiede il salvataggio
Giustifica il paragrafo corrente in base alla geometria della finestra
Cerca una stringa o un'espressione regolare
Mostra la schermata successiva
Incolla dal cutbuffer nella riga corrente
Esegue il correttore ortografico, se disponibile, utilizza spell
Tip: Consultare l'aiuto in linea di nano tramite Template:Keypress all'interno dell'editor e il manuale dei comandi di nano per una completa descrizione e supporto addizionale.

Abilitazione/Disabilitazione delle funzioni speciali

Abilita/disabilita la visualizzazione della posizione del cursore.
Abilita/disabilita l'indentazione automatica
Abilita/disabilita la possibilità di tagliare la riga intera nella posizione del cursore
Abilita/disabilita il supporto del mouse
Abilita/disabilita la visualizzazione della barra inferiore dei comandi
Tip: La pagina sulle caratteristiche aggiuntive elenca tutte le alternative disponibili in nano.

Suggerimenti

Sostituire vi con nano

Molti utenti preferiscono utilizzare nano al posto di vi poiché risulta più semplice e facile da utilizzare, inoltre possono scegliere di sostituire vi con nano come editor predefinito per i comandi di testo come visudo.

Primo metodo

Attenzione: Dal man 8 visudo: Si noti che questo metodo potrebbe compromettere la sicurezza in quanto permette all'utente di eseguire qualsiasi programma che desiderano semplicemente impostando le variabili VISUAL o EDITOR.

sudo reperibile nel repository core, è compilato in modo predefinito con l'opzione --with-env-editor e rispetta l'uso delle variabili VISUAL ed EDITOR. Per poter stabilire di utilizzare nano come editor per il comando visudo per tutta la durata della sessione corrente della console, bisogna impostare ed esportare la variabile EDITOR prima di chiamare visudo.

export EDITOR=nano 
Esempio di utilizzo
 export EDITOR=nano && sudo visudo

Secondo metodo

Attenzione: Dal man 8 visudo: Si noti che questo metodo potrebbe compromettere la sicurezza in quanto permette all'utente di eseguire qualsiasi programma che desiderano semplicemente impostando le variabili VISUAL o EDITOR.

La variabile EDITOR può anche essere impostata all'interno dei seguenti file per un uso persistente:

  • ~/.bash_profile (shell di login)
  • ~/.bashrc (shell interattiva, non di login)
  • /etc/profile (impostazioni globali per tutti gli utenti del sistema, tranne root)
Esempio di .bash_profile
. $HOME/.bashrc

export EDITOR=nano
export GREP_COLOR="1;33"

if [[ -z "$DISPLAY" ]] && [[ $(tty) = /dev/vc/1 ]]; then
  startx
  logout
fi

Terzo Metodo

Nota: Questo metodo può essere considerato draconiano e potrebbe non essere adatto a tutti gli utenti. Tuttavia, la seguente procedura esiste come esempio di una soluzione praticabile.
Link simbolici

come root, o tramite il comando su -

Rinominare l'eseguibile vi in vi.old per un semplice ripristino:

# mv /usr/bin/vi /usr/bin/vi.old

Creare un link simbolico da /usr/bin/nano a /usr/bin/vi:

# ln -s /usr/bin/nano /usr/bin/vi
Nota: Questo link simbolico andrà ricreato ad ogni aggiornamento di Vi.
Ripristino di vi

Rimuovere il link simbolico /usr/bin/vi:

# unlink /usr/bin/vi

Rinominare l'eseguibile vi.old a vi:

# mv /usr/bin/vi.old /usr/bin/vi

Quarto metodo

Nota: Questo metodo può essere considerato draconiano e potrebbe non essere adatto a tutti gli utenti. Tuttavia, la seguente procedura esiste come esempio di una soluzione praticabile.
Rimozione e link simbolici

Usare pacman per rimuovere vi, le sue configuazioni e le dipendenze:

# pacman -Rns vi

Creare il link simbolico da /usr/bin/nano a /usr/bin/vi:

# ln -s /usr/bin/nano /usr/bin/vi
Rispristino di vi

Rimuovere il link simbolico /usr/bin/vi

# unlink /usr/bin/vi

Utilizzare pacman per installare il pacchetto vi precedentemente disinstallato.

# pacman -S vi 
Nota: Non pulire -c o aggiornare -y il database dei pacchetti, se volete mantenere la versione precedentemente installata del pacchetto vi. In questo caso, gli aggiornamenti successivi richiederanno anche l'uso giudizioso dell'opzione --ignore vi (ed in modo facoltativo di --ignore glibc ncurses coreutils.

Fonti addizionali