]> git.wh0rd.org Git - nano.git/commitdiff
Allowing the codes from Ins and Del keys to be rebound.
authorBenno Schulenberg <bensberg@justemail.net>
Mon, 21 Apr 2014 18:05:11 +0000 (18:05 +0000)
committerBenno Schulenberg <bensberg@justemail.net>
Mon, 21 Apr 2014 18:05:11 +0000 (18:05 +0000)
git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@4798 35c25a1d-7b9e-4130-9fde-d3aeb78583b8

ChangeLog
doc/nanorc.sample.in
src/global.c
src/rcfile.c

index 96d603657a6e8a49a1aef9eb92cfaa0582c8d8ee..a468480d3658f5fd7e571128ff63602d19ffbfa9 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -16,6 +16,8 @@
        * src/global.c (assign_keyinfo, shortcut_init): Give nicer names
        to the dedicated keys, for when they show up in the help lines.
        * src/rcfile.c (parse_binding): K-keys no longer exist.
+       * src/global.c, src/rcfile.c, doc/nanorc.sample.in: Allow the
+       codes from the Ins and Del keys to be rebound.
 
 2014-04-16  Benno Schulenberg  <bensberg@justemail.net>
        * src/winio.c (get_mouseinput): Properly find also the zeroeth
index e6a96ef07484543cfa61b89597ce6924b66d6993..03fa6362c213fae29b25d6fc2ee62b8c5678cb15 100644 (file)
 
 
 ## Key bindings
-## Please see nanorc(5) for more details on this
+## Please see nanorc(5) for more details on this.
 ##
-## Here are some samples to get you going
+## Here are some samples to get you going.
 ##
 # bind M-W nowrap main
 # bind M-A casesens search
 # bind ^S research main
 
-## Set this if your backspace key sends delete most of the time (2.1.3+)
-# bind kdel backspace all
+## Set this if your backspace key sends Del most of the time.
+# bind Del backspace all
index 7d0a0adad1012738214895ba6121aacfcea63b5a..2e47d4cb5c45fe82042a6bc228ab22e0a901c174 100644 (file)
@@ -453,7 +453,7 @@ void assign_keyinfo(sc *s)
            s->seq = KEY_LEFT;
        else if (!strcasecmp(s->keystr, "Right"))
            s->seq = KEY_RIGHT;
-       else if (!strcasecmp(s->keystr, "Insert"))
+       else if (!strcasecmp(s->keystr, "Ins"))
            s->seq = KEY_IC;
        else if (!strcasecmp(s->keystr, "Del"))
            s->seq = KEY_DC;
@@ -1091,7 +1091,7 @@ void shortcut_init(void)
 #endif
     add_to_sclist(MMAIN, "^R", do_insertfile_void, 0, TRUE);
     add_to_sclist(MMAIN, "F5", do_insertfile_void, 0, TRUE);
-    add_to_sclist(MMAIN, "Insert", do_insertfile_void, 0, TRUE);
+    add_to_sclist(MMAIN, "Ins", do_insertfile_void, 0, TRUE);
     add_to_sclist(MMAIN|MBROWSER, "^W", do_search, 0, TRUE);
     add_to_sclist(MMAIN|MBROWSER, "F6", do_search, 0, TRUE);
     add_to_sclist(MMAIN|MBROWSER|MHELP|MWHEREISFILE|MLINTER, "^Y", do_page_up, 0, TRUE);
index 2b7b0c2d27e27aae4d90ca0ae0abc0866f2d74c3..fccadb633e8be777ab319ba9009e9c104fb400be 100644 (file)
@@ -499,7 +499,11 @@ void parse_binding(char *ptr, bool dobind)
        }
     }
 
-    if (keycopy[0] != '^' && keycopy[0] != 'M' && keycopy[0] != 'F') {
+    /* Allow the codes for Insert and Delete to be rebound, but apart
+     * from those two only Control, Meta and Function sequences. */
+    if (!strcasecmp(keycopy, "Ins") || !strcasecmp(keycopy, "Del"))
+       keycopy[1] = tolower(keycopy[1]);
+    else if (keycopy[0] != '^' && keycopy[0] != 'M' && keycopy[0] != 'F') {
        rcfile_error(N_("Key name must begin with \"^\", \"M\", or \"F\""));
        return;
     }