Revision: 2714
          http://tmux.svn.sourceforge.net/tmux/?rev=2714&view=rev
Author:   tcunha
Date:     2012-03-07 13:37:44 +0000 (Wed, 07 Mar 2012)
Log Message:
-----------
Sync OpenBSD patchset 1039:

Add A and I keys for vi status line editing.

Modified Paths:
--------------
    trunk/mode-key.c
    trunk/status.c
    trunk/tmux.h

Modified: trunk/mode-key.c
===================================================================
--- trunk/mode-key.c    2012-03-07 13:36:57 UTC (rev 2713)
+++ trunk/mode-key.c    2012-03-07 13:37:44 UTC (rev 2714)
@@ -35,8 +35,9 @@
  *
  * vi command mode is handled by having a mode flag in the struct which allows
  * two sets of bindings to be swapped between. A couple of editing commands
- * (MODEKEYEDIT_SWITCHMODE and MODEKEYEDIT_SWITCHMODEAPPEND) are special-cased
- * to do this.
+ * (MODEKEYEDIT_SWITCHMODE, MODEKEYEDIT_SWITCHMODEAPPEND,
+ * MODEKEYEDIT_SWITCHMODEAPPENDLINE, and MODEKEYEDIT_SWITCHMODEBEGINLINE)
+ * are special-cased to do this.
  */
 
 /* Edit keys command strings. */
@@ -64,6 +65,8 @@
        { MODEKEYEDIT_STARTOFLINE, "start-of-line" },
        { MODEKEYEDIT_SWITCHMODE, "switch-mode" },
        { MODEKEYEDIT_SWITCHMODEAPPEND, "switch-mode-append" },
+       { MODEKEYEDIT_SWITCHMODEAPPENDLINE, "switch-mode-append-line" },
+       { MODEKEYEDIT_SWITCHMODEBEGINLINE, "switch-mode-begin-line" },
        { MODEKEYEDIT_TRANSPOSECHARS, "transpose-chars" },
 
        { 0, NULL }
@@ -151,9 +154,11 @@
 
        { '$',                  1, MODEKEYEDIT_ENDOFLINE },
        { '0',                  1, MODEKEYEDIT_STARTOFLINE },
+       { 'A',                  1, MODEKEYEDIT_SWITCHMODEAPPENDLINE },
        { 'B',                  1, MODEKEYEDIT_PREVIOUSSPACE },
        { 'D',                  1, MODEKEYEDIT_DELETETOENDOFLINE },
        { 'E',                  1, MODEKEYEDIT_NEXTSPACEEND },
+       { 'I',                  1, MODEKEYEDIT_SWITCHMODEBEGINLINE },
        { 'W',                  1, MODEKEYEDIT_NEXTSPACE },
        { 'X',                  1, MODEKEYEDIT_BACKSPACE },
        { '\003' /* C-c */,     1, MODEKEYEDIT_CANCEL },
@@ -496,6 +501,8 @@
        switch (mbind->cmd) {
        case MODEKEYEDIT_SWITCHMODE:
        case MODEKEYEDIT_SWITCHMODEAPPEND:
+       case MODEKEYEDIT_SWITCHMODEAPPENDLINE:
+       case MODEKEYEDIT_SWITCHMODEBEGINLINE:
                mdata->mode = 1 - mdata->mode;
                /* FALLTHROUGH */
        default:

Modified: trunk/status.c
===================================================================
--- trunk/status.c      2012-03-07 13:36:57 UTC (rev 2713)
+++ trunk/status.c      2012-03-07 13:37:44 UTC (rev 2714)
@@ -1038,12 +1038,18 @@
                        c->flags |= CLIENT_STATUS;
                }
                break;
+       case MODEKEYEDIT_SWITCHMODEBEGINLINE:
+               c->flags |= CLIENT_STATUS;
+               /* FALLTHROUGH */
        case MODEKEYEDIT_STARTOFLINE:
                if (c->prompt_index != 0) {
                        c->prompt_index = 0;
                        c->flags |= CLIENT_STATUS;
                }
                break;
+       case MODEKEYEDIT_SWITCHMODEAPPENDLINE:
+               c->flags |= CLIENT_STATUS;
+               /* FALLTHROUGH */
        case MODEKEYEDIT_ENDOFLINE:
                if (c->prompt_index != size) {
                        c->prompt_index = size;

Modified: trunk/tmux.h
===================================================================
--- trunk/tmux.h        2012-03-07 13:36:57 UTC (rev 2713)
+++ trunk/tmux.h        2012-03-07 13:37:44 UTC (rev 2714)
@@ -453,6 +453,8 @@
        MODEKEYEDIT_STARTOFLINE,
        MODEKEYEDIT_SWITCHMODE,
        MODEKEYEDIT_SWITCHMODEAPPEND,
+       MODEKEYEDIT_SWITCHMODEAPPENDLINE,
+       MODEKEYEDIT_SWITCHMODEBEGINLINE,
        MODEKEYEDIT_TRANSPOSECHARS,
 
        /* Menu (choice) keys. */

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


------------------------------------------------------------------------------
Virtualization & Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/
_______________________________________________
tmux-cvs mailing list
tmux-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/tmux-cvs

Reply via email to