vi: code shrink, proper printf formatting for strlen()
authorDenys Vlasenko <vda.linux@googlemail.com>
Fri, 29 Mar 2019 13:40:01 +0000 (14:40 +0100)
committerDenys Vlasenko <vda.linux@googlemail.com>
Fri, 29 Mar 2019 13:40:01 +0000 (14:40 +0100)
function                                             old     new   delta
yank_delete                                           98      99      +1
what_reg                                              34      33      -1
text_yank                                             56      54      -2
end_cmd_q                                             17      14      -3
do_cmd                                              4718    4705     -13
colon                                               2875    2861     -14
edit_file                                            668     648     -20
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/6 up/down: 1/-53)             Total: -52 bytes

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

index 065a1068eb6b422d8f924e93476e1cfc26ff50ef..5e5e13111557bfb5c5168e8fd96a1bf454d57fb4 100644 (file)
@@ -345,7 +345,8 @@ struct globals {
 
        /* a few references only */
 #if ENABLE_FEATURE_VI_YANKMARK
-       int YDreg, Ureg;        // default delete register and orig line for "U"
+       smalluint YDreg;//,Ureg;// default delete register and orig line for "U"
+#define Ureg 27
        char *reg[28];          // named register a-z, "D", and "U" 0-25,26,27
        char *mark[28];         // user marks points somewhere in text[]-  a-z and previous context ''
        char *context_start, *context_end;
@@ -455,7 +456,7 @@ struct globals {
 #define format_edit_status__tot (G.format_edit_status__tot)
 
 #define YDreg          (G.YDreg         )
-#define Ureg           (G.Ureg          )
+//#define Ureg           (G.Ureg          )
 #define mark           (G.mark          )
 #define context_start  (G.context_start )
 #define context_end    (G.context_end   )
@@ -794,7 +795,7 @@ static void edit_file(char *fn)
 
 #if ENABLE_FEATURE_VI_YANKMARK
        YDreg = 26;                     // default Yank/Delete reg
-       Ureg = 27;                      // hold orig line for "U" cmd
+//     Ureg = 27; - const              // hold orig line for "U" cmd
        mark[26] = mark[27] = text;     // init "previous context"
 #endif
 
@@ -4174,8 +4175,8 @@ static void do_cmd(int c)
                                if (*p == '\n')
                                        cnt++;
                        }
-                       status_line("%s %d lines (%d chars) using [%c]",
-                               buf, cnt, strlen(reg[YDreg]), what_reg());
+                       status_line("%s %u lines (%u chars) using [%c]",
+                               buf, cnt, (unsigned)strlen(reg[YDreg]), what_reg());
 #endif
                        end_cmd_q();    // stop adding to q
                }