fixups to vi usage, and move the initial redraw() past the
execution of commands supplied by -c or EXINIT, so their effect is displayed correctly.
This commit is contained in:
parent
c51fc7bed6
commit
35e9c5d83a
16
editors/vi.c
16
editors/vi.c
@ -23,6 +23,7 @@
|
||||
|
||||
#include "libbb.h"
|
||||
|
||||
/* the CRASHME code is unmaintained, and doesn't currently build */
|
||||
#define ENABLE_FEATURE_VI_CRASHME 0
|
||||
|
||||
|
||||
@ -395,7 +396,7 @@ int vi_main(int argc, char **argv)
|
||||
initial_cmds[0] = xstrndup(p, MAX_INPUT_LEN);
|
||||
}
|
||||
#endif
|
||||
while ((c = getopt(argc, argv, "hCR" USE_FEATURE_VI_COLON("c:"))) != -1) {
|
||||
while ((c = getopt(argc, argv, "hCRH" USE_FEATURE_VI_COLON("c:"))) != -1) {
|
||||
switch (c) {
|
||||
#if ENABLE_FEATURE_VI_CRASHME
|
||||
case 'C':
|
||||
@ -407,18 +408,18 @@ int vi_main(int argc, char **argv)
|
||||
SET_READONLY_MODE(readonly_mode);
|
||||
break;
|
||||
#endif
|
||||
//case 'r': // recover flag- ignore- we don't use tmp file
|
||||
//case 'x': // encryption flag- ignore
|
||||
//case 'c': // execute command first
|
||||
#if ENABLE_FEATURE_VI_COLON
|
||||
case 'c': // cmd line vi command
|
||||
if (*optarg)
|
||||
initial_cmds[initial_cmds[0] != 0] = xstrndup(optarg, MAX_INPUT_LEN);
|
||||
break;
|
||||
//case 'h': // help -- just use default
|
||||
#endif
|
||||
default:
|
||||
case 'H':
|
||||
show_help();
|
||||
/* fall through */
|
||||
|
||||
default:
|
||||
bb_show_usage();
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
@ -532,7 +533,6 @@ static void edit_file(char *fn)
|
||||
lmc_len = 0;
|
||||
adding2q = 0;
|
||||
#endif
|
||||
redraw(FALSE); // dont force every col re-draw
|
||||
|
||||
#if ENABLE_FEATURE_VI_COLON
|
||||
{
|
||||
@ -555,6 +555,7 @@ static void edit_file(char *fn)
|
||||
}
|
||||
}
|
||||
#endif
|
||||
redraw(FALSE); // dont force every col re-draw
|
||||
//------This is the main Vi cmd handling loop -----------------------
|
||||
while (editing > 0) {
|
||||
#if ENABLE_FEATURE_VI_CRASHME
|
||||
@ -3849,6 +3850,7 @@ static void do_cmd(char c)
|
||||
dot--;
|
||||
}
|
||||
|
||||
/* NB! the CRASHME code is unmaintained, and doesn't currently build */
|
||||
#if ENABLE_FEATURE_VI_CRASHME
|
||||
static int totalcmds = 0;
|
||||
static int Mp = 85; // Movement command Probability
|
||||
|
@ -4237,7 +4237,11 @@ USE_FEATURE_RUN_PARTS_FANCY("\n -l Prints names of all matching files even when
|
||||
#define vi_full_usage \
|
||||
"Edit FILE" \
|
||||
"\n\nOptions:\n" \
|
||||
" -R Read-only - do not write to the file"
|
||||
USE_FEATURE_VI_COLON( \
|
||||
" -c Initial command to run ($EXINIT also available)\n") \
|
||||
USE_FEATURE_VI_READONLY( \
|
||||
" -R Read-only - do not write to the file\n") \
|
||||
" -H Short help regarding available features"
|
||||
|
||||
#define vlock_trivial_usage \
|
||||
"[OPTIONS]"
|
||||
|
Loading…
Reference in New Issue
Block a user