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"
|
#include "libbb.h"
|
||||||
|
|
||||||
|
/* the CRASHME code is unmaintained, and doesn't currently build */
|
||||||
#define ENABLE_FEATURE_VI_CRASHME 0
|
#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);
|
initial_cmds[0] = xstrndup(p, MAX_INPUT_LEN);
|
||||||
}
|
}
|
||||||
#endif
|
#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) {
|
switch (c) {
|
||||||
#if ENABLE_FEATURE_VI_CRASHME
|
#if ENABLE_FEATURE_VI_CRASHME
|
||||||
case 'C':
|
case 'C':
|
||||||
@ -407,18 +408,18 @@ int vi_main(int argc, char **argv)
|
|||||||
SET_READONLY_MODE(readonly_mode);
|
SET_READONLY_MODE(readonly_mode);
|
||||||
break;
|
break;
|
||||||
#endif
|
#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
|
#if ENABLE_FEATURE_VI_COLON
|
||||||
case 'c': // cmd line vi command
|
case 'c': // cmd line vi command
|
||||||
if (*optarg)
|
if (*optarg)
|
||||||
initial_cmds[initial_cmds[0] != 0] = xstrndup(optarg, MAX_INPUT_LEN);
|
initial_cmds[initial_cmds[0] != 0] = xstrndup(optarg, MAX_INPUT_LEN);
|
||||||
break;
|
break;
|
||||||
//case 'h': // help -- just use default
|
|
||||||
#endif
|
#endif
|
||||||
default:
|
case 'H':
|
||||||
show_help();
|
show_help();
|
||||||
|
/* fall through */
|
||||||
|
|
||||||
|
default:
|
||||||
|
bb_show_usage();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -532,7 +533,6 @@ static void edit_file(char *fn)
|
|||||||
lmc_len = 0;
|
lmc_len = 0;
|
||||||
adding2q = 0;
|
adding2q = 0;
|
||||||
#endif
|
#endif
|
||||||
redraw(FALSE); // dont force every col re-draw
|
|
||||||
|
|
||||||
#if ENABLE_FEATURE_VI_COLON
|
#if ENABLE_FEATURE_VI_COLON
|
||||||
{
|
{
|
||||||
@ -555,6 +555,7 @@ static void edit_file(char *fn)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
redraw(FALSE); // dont force every col re-draw
|
||||||
//------This is the main Vi cmd handling loop -----------------------
|
//------This is the main Vi cmd handling loop -----------------------
|
||||||
while (editing > 0) {
|
while (editing > 0) {
|
||||||
#if ENABLE_FEATURE_VI_CRASHME
|
#if ENABLE_FEATURE_VI_CRASHME
|
||||||
@ -3849,6 +3850,7 @@ static void do_cmd(char c)
|
|||||||
dot--;
|
dot--;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* NB! the CRASHME code is unmaintained, and doesn't currently build */
|
||||||
#if ENABLE_FEATURE_VI_CRASHME
|
#if ENABLE_FEATURE_VI_CRASHME
|
||||||
static int totalcmds = 0;
|
static int totalcmds = 0;
|
||||||
static int Mp = 85; // Movement command Probability
|
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 \
|
#define vi_full_usage \
|
||||||
"Edit FILE" \
|
"Edit FILE" \
|
||||||
"\n\nOptions:\n" \
|
"\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 \
|
#define vlock_trivial_usage \
|
||||||
"[OPTIONS]"
|
"[OPTIONS]"
|
||||||
|
Loading…
Reference in New Issue
Block a user