I have a terminal novice user-base who need to do some extremely light text editing from a console (authoring Git commits, etc.). I'd like to set EDITOR to something that keyboard binding-wise feels as much as possible like a standard "web browser text area" with Ctrl + S and Ctrl + Q to save/quit.

I've tried jed, ne, JOE, nano and micro, but none of them have all the features I'd like:

  1. Block selection: Shift-Arrow should expand the cursor in the appropriate direction to select a block, just like on Windows, Mac, GNOME, etc.

  2. Copy, Cut, andPaste: Should be Ctrl + C, Ctrl + X, and Ctrl + V

  3. Save: Should be Ctrl + S

  4. Quit: Should be Ctrl + Q

  5. Nice to have: an ncurses menubar (ala ne) that pop up when they press Esc

  6. Nice to have: Ctrl + F to find, Ctrl + G to find next

Any suggestions?


2 Answers 2


You can customize key bindings for nano in /etc/nanorc



mcedit, which ships with Midnight-Commander (mc), a terminal orthodox file-manager. You will need to remap the keys in the file mc.keymap, though. For example, the defauls for copy, paste and cut are:

Store = ctrl-insert
Paste = shift-insert
Cut = shift-delete

Change them to

Store = ctrl-c
Paste = ctrl-v
Cut = ctrl-x

Also be sure to turn off Persistent selection in the editor Options > General menu. This makes selected text be replaced by what you type (if you type something).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.