[8c5edb4] | 1 | Submitted By: William Harrington (kb0iic at cross-lfs dot org) |
---|
| 2 | Date: 2012-11-01 |
---|
| 3 | Initial Package Version: 6.2 |
---|
| 4 | Origin: Upstream |
---|
| 5 | Upstream Status: Applied |
---|
| 6 | Description: Contains all upstream patches up to 6.2-004 |
---|
| 7 | |
---|
| 8 | diff -Naur readline-6.2.orig/callback.c readline-6.2/callback.c |
---|
| 9 | --- readline-6.2.orig/callback.c 2010-06-06 16:18:58.000000000 +0000 |
---|
| 10 | +++ readline-6.2/callback.c 2012-11-01 20:14:01.000000000 +0000 |
---|
| 11 | @@ -148,6 +148,9 @@ |
---|
| 12 | eof = _rl_vi_domove_callback (_rl_vimvcxt); |
---|
| 13 | /* Should handle everything, including cleanup, numeric arguments, |
---|
| 14 | and turning off RL_STATE_VIMOTION */ |
---|
| 15 | + if (RL_ISSTATE (RL_STATE_NUMERICARG) == 0) |
---|
| 16 | + _rl_internal_char_cleanup (); |
---|
| 17 | + |
---|
| 18 | return; |
---|
| 19 | } |
---|
| 20 | #endif |
---|
| 21 | diff -Naur readline-6.2.orig/input.c readline-6.2/input.c |
---|
| 22 | --- readline-6.2.orig/input.c 2010-05-30 22:33:01.000000000 +0000 |
---|
| 23 | +++ readline-6.2/input.c 2012-11-01 20:14:01.000000000 +0000 |
---|
| 24 | @@ -409,7 +409,7 @@ |
---|
| 25 | int |
---|
| 26 | rl_read_key () |
---|
| 27 | { |
---|
| 28 | - int c; |
---|
| 29 | + int c, r; |
---|
| 30 | |
---|
| 31 | rl_key_sequence_length++; |
---|
| 32 | |
---|
| 33 | @@ -429,14 +429,18 @@ |
---|
| 34 | { |
---|
| 35 | while (rl_event_hook) |
---|
| 36 | { |
---|
| 37 | - if (rl_gather_tyi () < 0) /* XXX - EIO */ |
---|
| 38 | + if (rl_get_char (&c) != 0) |
---|
| 39 | + break; |
---|
| 40 | + |
---|
| 41 | + if ((r = rl_gather_tyi ()) < 0) /* XXX - EIO */ |
---|
| 42 | { |
---|
| 43 | rl_done = 1; |
---|
| 44 | return ('\n'); |
---|
| 45 | } |
---|
| 46 | + else if (r == 1) /* read something */ |
---|
| 47 | + continue; |
---|
| 48 | + |
---|
| 49 | RL_CHECK_SIGNALS (); |
---|
| 50 | - if (rl_get_char (&c) != 0) |
---|
| 51 | - break; |
---|
| 52 | if (rl_done) /* XXX - experimental */ |
---|
| 53 | return ('\n'); |
---|
| 54 | (*rl_event_hook) (); |
---|
| 55 | diff -Naur readline-6.2.orig/patchlevel readline-6.2/patchlevel |
---|
| 56 | --- readline-6.2.orig/patchlevel 2010-01-14 15:15:52.000000000 +0000 |
---|
| 57 | +++ readline-6.2/patchlevel 2012-11-01 20:14:01.000000000 +0000 |
---|
| 58 | @@ -1,3 +1,3 @@ |
---|
| 59 | # Do not edit -- exists only for use by patch |
---|
| 60 | |
---|
| 61 | -1 |
---|
| 62 | +4 |
---|
| 63 | diff -Naur readline-6.2.orig/support/shobj-conf readline-6.2/support/shobj-conf |
---|
| 64 | --- readline-6.2.orig/support/shobj-conf 2009-10-28 13:20:21.000000000 +0000 |
---|
| 65 | +++ readline-6.2/support/shobj-conf 2012-11-01 20:14:01.000000000 +0000 |
---|
| 66 | @@ -157,7 +157,7 @@ |
---|
| 67 | ;; |
---|
| 68 | |
---|
| 69 | # Darwin/MacOS X |
---|
| 70 | -darwin[89]*|darwin10*) |
---|
| 71 | +darwin[89]*|darwin1[012]*) |
---|
| 72 | SHOBJ_STATUS=supported |
---|
| 73 | SHLIB_STATUS=supported |
---|
| 74 | |
---|
| 75 | @@ -186,7 +186,7 @@ |
---|
| 76 | SHLIB_LIBSUFF='dylib' |
---|
| 77 | |
---|
| 78 | case "${host_os}" in |
---|
| 79 | - darwin[789]*|darwin10*) SHOBJ_LDFLAGS='' |
---|
| 80 | + darwin[789]*|darwin1[012]*) SHOBJ_LDFLAGS='' |
---|
| 81 | SHLIB_XLDFLAGS='-dynamiclib -arch_only `/usr/bin/arch` -install_name $(libdir)/$@ -current_version $(SHLIB_MAJOR)$(SHLIB_MINOR) -compatibility_version $(SHLIB_MAJOR) -v' |
---|
| 82 | ;; |
---|
| 83 | *) SHOBJ_LDFLAGS='-dynamic' |
---|
| 84 | diff -Naur readline-6.2.orig/vi_mode.c readline-6.2/vi_mode.c |
---|
| 85 | --- readline-6.2.orig/vi_mode.c 2010-11-21 00:51:39.000000000 +0000 |
---|
| 86 | +++ readline-6.2/vi_mode.c 2012-11-01 20:14:01.000000000 +0000 |
---|
| 87 | @@ -1114,7 +1114,7 @@ |
---|
| 88 | rl_beg_of_line (1, c); |
---|
| 89 | _rl_vi_last_motion = c; |
---|
| 90 | RL_UNSETSTATE (RL_STATE_VIMOTION); |
---|
| 91 | - return (0); |
---|
| 92 | + return (vidomove_dispatch (m)); |
---|
| 93 | } |
---|
| 94 | #if defined (READLINE_CALLBACKS) |
---|
| 95 | /* XXX - these need to handle rl_universal_argument bindings */ |
---|
| 96 | @@ -1234,11 +1234,19 @@ |
---|
| 97 | _rl_vimvcxt->motion = '$'; |
---|
| 98 | r = rl_domove_motion_callback (_rl_vimvcxt); |
---|
| 99 | } |
---|
| 100 | - else if (vi_redoing) |
---|
| 101 | + else if (vi_redoing && _rl_vi_last_motion != 'd') /* `dd' is special */ |
---|
| 102 | { |
---|
| 103 | _rl_vimvcxt->motion = _rl_vi_last_motion; |
---|
| 104 | r = rl_domove_motion_callback (_rl_vimvcxt); |
---|
| 105 | } |
---|
| 106 | + else if (vi_redoing) /* handle redoing `dd' here */ |
---|
| 107 | + { |
---|
| 108 | + _rl_vimvcxt->motion = _rl_vi_last_motion; |
---|
| 109 | + rl_mark = rl_end; |
---|
| 110 | + rl_beg_of_line (1, key); |
---|
| 111 | + RL_UNSETSTATE (RL_STATE_VIMOTION); |
---|
| 112 | + r = vidomove_dispatch (_rl_vimvcxt); |
---|
| 113 | + } |
---|
| 114 | #if defined (READLINE_CALLBACKS) |
---|
| 115 | else if (RL_ISSTATE (RL_STATE_CALLBACK)) |
---|
| 116 | { |
---|
| 117 | @@ -1316,11 +1324,19 @@ |
---|
| 118 | _rl_vimvcxt->motion = '$'; |
---|
| 119 | r = rl_domove_motion_callback (_rl_vimvcxt); |
---|
| 120 | } |
---|
| 121 | - else if (vi_redoing) |
---|
| 122 | + else if (vi_redoing && _rl_vi_last_motion != 'c') /* `cc' is special */ |
---|
| 123 | { |
---|
| 124 | _rl_vimvcxt->motion = _rl_vi_last_motion; |
---|
| 125 | r = rl_domove_motion_callback (_rl_vimvcxt); |
---|
| 126 | } |
---|
| 127 | + else if (vi_redoing) /* handle redoing `cc' here */ |
---|
| 128 | + { |
---|
| 129 | + _rl_vimvcxt->motion = _rl_vi_last_motion; |
---|
| 130 | + rl_mark = rl_end; |
---|
| 131 | + rl_beg_of_line (1, key); |
---|
| 132 | + RL_UNSETSTATE (RL_STATE_VIMOTION); |
---|
| 133 | + r = vidomove_dispatch (_rl_vimvcxt); |
---|
| 134 | + } |
---|
| 135 | #if defined (READLINE_CALLBACKS) |
---|
| 136 | else if (RL_ISSTATE (RL_STATE_CALLBACK)) |
---|
| 137 | { |
---|
| 138 | @@ -1377,6 +1393,19 @@ |
---|
| 139 | _rl_vimvcxt->motion = '$'; |
---|
| 140 | r = rl_domove_motion_callback (_rl_vimvcxt); |
---|
| 141 | } |
---|
| 142 | + else if (vi_redoing && _rl_vi_last_motion != 'y') /* `yy' is special */ |
---|
| 143 | + { |
---|
| 144 | + _rl_vimvcxt->motion = _rl_vi_last_motion; |
---|
| 145 | + r = rl_domove_motion_callback (_rl_vimvcxt); |
---|
| 146 | + } |
---|
| 147 | + else if (vi_redoing) /* handle redoing `yy' here */ |
---|
| 148 | + { |
---|
| 149 | + _rl_vimvcxt->motion = _rl_vi_last_motion; |
---|
| 150 | + rl_mark = rl_end; |
---|
| 151 | + rl_beg_of_line (1, key); |
---|
| 152 | + RL_UNSETSTATE (RL_STATE_VIMOTION); |
---|
| 153 | + r = vidomove_dispatch (_rl_vimvcxt); |
---|
| 154 | + } |
---|
| 155 | #if defined (READLINE_CALLBACKS) |
---|
| 156 | else if (RL_ISSTATE (RL_STATE_CALLBACK)) |
---|
| 157 | { |
---|