startup: Avoid VimL global. Introduce TriState enum.

- `syntax_on` is documented. Rather than introduce a new undocumented
  VimL global `g:syntax_off`, use a module-local flag.
- Rename "maybe" functions to follow style guidelines (use standard
  module prefix)
This commit is contained in:
Justin M. Keyes
2016-02-14 15:14:38 -05:00
parent 6c9c08c370
commit cc2dce45d0
5 changed files with 45 additions and 42 deletions

View File

@@ -41,6 +41,8 @@
#include "nvim/os/os.h"
#include "nvim/os/time.h"
static bool did_syntax_onoff = false;
// Structure that stores information about a highlight group.
// The ID of a highlight group is also called group ID. It is the index in
// the highlight_ga array PLUS ONE.
@@ -3288,19 +3290,24 @@ static void syn_cmd_off(exarg_T *eap, int syncing)
static void syn_cmd_onoff(exarg_T *eap, char *name)
FUNC_ATTR_NONNULL_ALL
{
did_syntax_onoff = true;
eap->nextcmd = check_nextcmd(eap->arg);
if (!eap->skip) {
syn_cmd(name);
char buf[100];
strncpy(buf, "so ", 3);
vim_snprintf(buf + 3, sizeof(buf) - 3, SYNTAX_FNAME, name);
do_cmdline_cmd(buf);
}
}
void syn_cmd(char *name)
FUNC_ATTR_NONNULL_ALL
void syn_maybe_on(void)
{
char buf[100];
strncpy(buf, "so ", 3);
vim_snprintf(buf + 3, sizeof(buf) - 3, SYNTAX_FNAME, name);
do_cmdline_cmd(buf);
if (!did_syntax_onoff) {
exarg_T ea;
ea.arg = (char_u *)"";
ea.skip = false;
syn_cmd_onoff(&ea, "syntax");
}
}
/*