18

And likewise Ctrl+Left to prevword. I read the man page of nanorc and found

bind key function menu

So the line bind ^Left prevword main would be what I want, the problem is that nano only accepts

an alpha character or the word "Space"

so Left doesn't exist.

Is there a way to accomplish this? Right now I'm on natty (nano 2.2.2) but I will upgrade nano if a later (devel?) version can do this.

turbo
  • 4,622

4 Answers4

13

Sadly, I don't think this is possible. I've found a thread where a nano developer said:

Hi, I've searched high and low trying to find out if it's possible to navigate through the text with CTRL left/right-key to jump word by word...

Unfortunately, no. Meta-Space and Ctrl-Space are the only keys to do that. This is because in text mode, there's no way for nano to tell the difference between Ctrl-Left and Left and between Ctrl-Right and Right.

On another, he added:

because I figure that nano should work the same way under both X terminals and the console, and I have yet to find a console that can distinguish between [arrow key] and Ctrl-[arrow key]. I do wish that wasn't the case...

  • 1
    As sad as it is I'm gonna have to accept your answer. Cool that you not only found out but also found this question! – turbo Feb 24 '12 at 11:34
  • 2
    The latest versions of nano support this now. https://askubuntu.com/questions/49530/bind-ctrlright-to-nextword-in-nano-as-it-is-in-all-other-apps/907579#907579 – wisbucky Apr 22 '17 at 00:48
7

There is a solution to this problem. Redefine Ctrl-Left and Ctrl-Right in your Terminal program to seldom-used keys, such as F13 and F14.

Then in ~/.nanorc:

bind F13 prevword main
bind F14 nextword main

Now, a shortcoming, for me at least, is that it will only work when you're using the Terminal program you used for the key redefinition. For example, in my situation, this doesn't work when I'm at the physical console of my OS (in my case, FreeBSD). But I use QVT/Term from my desktop in the other room almost 100% of the time. Works like a charm.

Peachy
  • 7,117
  • 10
  • 38
  • 46
Kingpin
  • 71
  • Interesting. What terminal did you use? I looked for a setting like this in gnome-terminal and couldn't find anything. Normally I use stjerm and haven't seen anything like that either. – turbo Aug 26 '12 at 10:47
  • As I stated above, I use a product called QVT/Term. It's a simple telnet program, albeit a very cool one, that I downloaded in Aug. of 1998 directly from the company (QPC Software). Can't seem to find any new versions. I have the emulation set at 'VT220-7bit'. However, these keys should be redefinable in your *NIX shell. I haven't researched that yet, only because the terminal option was right in front of me. – Kingpin Aug 27 '12 at 19:32
3

Install the latest version of nano. They have added ctrl+left and ctrl+right to move by words. (For sure v2.7.4 has this).

wisbucky
  • 2,552
  • 28
  • 17
1

Another option is to use the default Ctrl-Space and Alt-Space commands.

Ian Dunn
  • 111