vi: basic undo feature shouldn't depend on yankmark
authorAndrew Fuller <abf@google.com>
Sun, 3 May 2015 16:18:25 +0000 (18:18 +0200)
committerDenys Vlasenko <vda.linux@googlemail.com>
Sun, 3 May 2015 16:18:25 +0000 (18:18 +0200)
Currently basic undo functionality with the 'u' key depends on
FEATURE_VI_YANKMARK. These two features are separate, so we can remove this
dependency.

Signed-off-by: Andrew Fuller <abf@google.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
editors/vi.c

index 495332a46994cc10e45625d9ba6dea8370b88e51..2e4f7fcb598bad2b77810cae3e83b6dd788c10e3 100644 (file)
@@ -3676,11 +3676,6 @@ static void do_cmd(int c)
                string_insert(dot, p, ALLOW_UNDO);      // insert the string
                end_cmd_q();    // stop adding to q
                break;
-#if ENABLE_FEATURE_VI_UNDO
-       case 'u':       // u- undo last operation
-               undo_pop();
-               break;
-#endif
        case 'U':                       // U- Undo; replace current line with original version
                if (reg[Ureg] != NULL) {
                        p = begin_line(dot);
@@ -3692,6 +3687,11 @@ static void do_cmd(int c)
                }
                break;
 #endif /* FEATURE_VI_YANKMARK */
+#if ENABLE_FEATURE_VI_UNDO
+       case 'u':       // u- undo last operation
+               undo_pop();
+               break;
+#endif
        case '$':                       // $- goto end of line
        case KEYCODE_END:               // Cursor Key End
                for (;;) {