How to edit files in a terminal with nano?
Solution 1
Ctrl + G will let you read the help. nano
can do some pretty nice things so you might want to pootle around in there for a bit.
When you see ^G
(et al) it means Ctrl + G. In the help pages, M-H
means Alt + H.
How can I open text files for editing?
This is the default in nano
. Open and file and you're set to start editing:
nano filename
Note: you won't be able to save unless you have write permissions for that file.
How can I save the file?
F3 will let you save without exiting. Otherwise, Ctrl + X will prompt you if you've made changes. Press Y when it asks, and Enter to confirm the filename.
How can I quit the editor without saving the changes?
Ctrl + X, then N when it asks if you want to save.
How to edit? I heard that you've to enter some commands to begin editing in vi, is this true for nano too?
As above, no. nano
is simple. It drops you in edit mode as soon as it opens. You can use arrow keys, Page Up / Page Down and Home / End as in gedit. You cannot use the mouse for moving the cursor position.
Sometimes, if I manage to open a file, the text is unreadable due to its colors. How can I disable these colors?
Colours are loaded through the nanorc framework. These are files that are loaded when nano loads which basically spell out the syntax highlighting. To toggle syntax highlighting, press Alt + Y. To disable it permanently for certain file types, edit /etc/nanorc
and put a hash mark (#
) before include "/usr/share/nano/*.nanorc"
.
In the some files, lines are truncated because those do not fit in the screen. How can I prevent that from happening?
Well I've been trying to find something but the best I could see was enabling soft-line-wrap with the funky key-combination of: Alt + $ (Alt + Shift + 4).
To enable soft line wrapping by default, add the below line to ~/.nanorc
:
set softwrap
More information about this configuration file can be found at man nanorc
.
Solution 2
The combination of ^
and a letter means you're supposed to press Ctrl and that letter. So when nano says ^X Exit
that means you're gonna quit nano by pressing Ctrl+X.
-
To open a file called
/etc/nanorc
you can start nano with:nano /etc/nanorc
Note that
/etc/groups
is not writeable by regular users, therefore you needsudo
:sudo nano /etc/nanorc
If you've already opened
nano
, you can press Ctrl+R to open a file. - On exit (Ctrl+X) nano will ask you whether to save the file. You can save it manually with F3.
- Answer
n
for no in the Ctrl+X dialogue. - Basic editing is done by using the arrow keys to navigate and typing. Plain and simple.
- Syntax highlighting is disabled in a hidden file called
.nanorc
in your home directory along with other options. Alt+Y toggles it. - In the aforementioned
.nanorc
you can add the lineset fill 80
which will break long lines at 80 characters length. Alt+M toggles it.
Here is a list of stettings you can configure in .nanorc
.
Solution 3
In the bottom text the ^
stands for Ctrl
and M-
stands for Alt
So^G
is Ctrl-G
and M-Y
is Alt-Y
(that one toggles the colors).
You can toggle line truncation with M-$
. See the help pages (^G
) for more functions.
Solution 4
CtrlX: Exit the editor. If you've edited text without saving, you'll be prompted as to whether you really want to exit.
CtrlO: Write (output) the current contents of the text buffer to a file. A filename prompt will appear; press CtrlT to open the file navigator shown above.
CtrlR: Read a text file into the current editing session. At the filename prompt, hit CtrlT for the file navigator.
CtrlK: Cut a line into the clipboard. You can press this repeatedly to copy multiple lines, which are then stored as one chunk.
CtrlJ: Justify (fill out) a paragraph of text. By default, this reflows text to match the width of the editing window.
CtrlU: Uncut text, or rather, paste it from the clipboard. Note that after a Justify operation, this turns into unjustify.
CtrlT: Check spelling.
CtrlW: Find a word or phrase. At the prompt, use the cursor keys to go through previous search terms, or hit CtrlR to move into replace mode. Alternatively you can hit CtrlT to go to a specific line.
CtrlC: Show current line number and file information.
CtrlG: Get help; this provides information on navigating through files and common keyboard commands.
Lekensteyn
Arch Linux user, open-source enthusiast, programmer, Wireshark developer, TRU/e Security master student at TU/e. Interests: network protocols, Linux kernel, server administration, Android, breaking & fixing stuff.
Updated on September 18, 2022Comments
-
Lekensteyn over 1 year
Sometimes, a graphical text editor like
gedit
orkate
cannot be used (because you're in a virtual console for example). Luckily, there are text editors for the terminal. An easy one isnano
, but I cannot understand how to work with it.If I start
nano
by runningnano
, the bottom text is supposed to help me but all I see are things like^G Get Help ^O WriteOut
.- How can I open text files for editing?
- How can I save the file?
- How can I quit the editor without saving the changes?
- How to edit? I heard that you've to enter some commands to begin editing in
vi
, is this true fornano
too? - Sometimes, if I manage to open a file, the text is unreadable due to its colors. How can I disable these colors? (see the image below)
- In the some files, lines are truncated because those do not fit in the screen. How can I prevent that from happening? (see the image below)
-
Lekensteyn almost 13 years+1 for the example. Are there any side effects of setting
set fill 80
? When editing configuration files for example? -
con-f-use almost 13 yearsnano doesn't save the linebreaks to the file. It just displays the lines that way.
-
Lekensteyn almost 13 yearsAlt+M toggles mouse support.
set fill 80
seems to affect Ctrl + J and I can't reproduce the splitting feature. Perhaps it was a misinterpretation of softwrap. -
con-f-use almost 13 yearsAlt + M was wrong on my part. As to set fill 80 - it works for me. Stragely I can't toggle highlighting with Alt + Y. Might be, that we have different versions or my system is screwed up.
-
Lekensteyn almost 13 yearsnano allows to change the key bindings. Check your
~/.nanorc
and/etc/nanorc
. I've 2.2.6-1 installed (Natty) and a QWERTY keyboard layout. -
Piotr Dobrogost almost 11 yearsIs there a way to skip confirmation of filename when saving?
-
Oli almost 11 years@PiotrDobrogost Not that I know of... Is it really that annoying?
-
Piotr Dobrogost almost 11 yearsWell, if you take into account that 99,99% of time you save the file which you opened then having to confirm its name is pure nonsense.
-
Pacerier over 7 years@Oli, So.. you prefer nano to vim?
-
Oli over 7 years@Pacerier Sure. And I prefer graphical editors (ie Sublime Text) to both nano or Vim (or emacs for that matter). That's obviously not to say that any of these is objectively better, I just find that when I need to do a quick edit from the command line, nano is right mix of power and simplicity. And I think Escape,
:wq
is a lot less intuitive (for a new user) than the Control+X flow (which is displayed on screen) which is why I'd suggest it to any new user needing a basic editor. You may think I'm espousing a lot of my pro-nano opinion in my answer but the question really is about nano. -
Pacerier over 7 years@Oli, Would you prefer vim, or emacs? (assuming no graphics)
-
jacob almost 7 yearsIn ~ I have no file called
.nanorc
only a file called.nano
. Typing/usr/share/nano$ ls -a
gives no file called.nanorc