diff options
author | Thiago de Arruda <tpadilha84@gmail.com> | 2014-06-02 10:36:36 -0300 |
---|---|---|
committer | Thiago de Arruda <tpadilha84@gmail.com> | 2014-06-02 10:36:36 -0300 |
commit | 52a9a5b0b0c53a1481d901f39ed0d1e7e86c3853 (patch) | |
tree | 72498bef8cff7aa5b62cfe8894485b89e1b6435a | |
parent | a2e9580801e89f8fa6e1e3f0ccb3d4a740d7ac03 (diff) | |
parent | 8f7d370f18da5a9f71fdc3c36cd717e1559eed18 (diff) | |
download | rneovim-52a9a5b0b0c53a1481d901f39ed0d1e7e86c3853.tar.gz rneovim-52a9a5b0b0c53a1481d901f39ed0d1e7e86c3853.tar.bz2 rneovim-52a9a5b0b0c53a1481d901f39ed0d1e7e86c3853.zip |
Merge pull request #779 'Add --api-msgpack-metadata command line option'
-rw-r--r-- | scripts/msgpack-gen.lua | 3 | ||||
-rw-r--r-- | src/nvim/main.c | 8 |
2 files changed, 10 insertions, 1 deletions
diff --git a/scripts/msgpack-gen.lua b/scripts/msgpack-gen.lua index fac1b10b45..8d7bb8ea59 100644 --- a/scripts/msgpack-gen.lua +++ b/scripts/msgpack-gen.lua @@ -100,7 +100,7 @@ end output:write([[ -static const uint8_t msgpack_metadata[] = { +const uint8_t msgpack_metadata[] = { ]]) -- serialize the API metadata using msgpack and embed into the resulting @@ -116,6 +116,7 @@ end -- usually it is the first function called by clients. output:write([[ }; +const unsigned int msgpack_metadata_size = sizeof(msgpack_metadata); void msgpack_rpc_dispatch(uint64_t channel_id, msgpack_object *req, msgpack_packer *res) { diff --git a/src/nvim/main.c b/src/nvim/main.c index ffb83ae7d8..d992619287 100644 --- a/src/nvim/main.c +++ b/src/nvim/main.c @@ -135,6 +135,8 @@ static void check_swap_exists_action(void); # endif #endif /* NO_VIM_MAIN */ +extern const uint8_t msgpack_metadata[]; +extern const unsigned int msgpack_metadata_size; /* * Different types of error messages. @@ -1047,6 +1049,11 @@ static void command_line_scan(mparm_T *parmp) msg_putchar('\n'); msg_didout = FALSE; mch_exit(0); + } else if (STRICMP(argv[0] + argv_idx, "api-msgpack-metadata") == 0) { + for (unsigned int i = 0; i<msgpack_metadata_size; i++) { + putchar(msgpack_metadata[i]); + } + mch_exit(0); } else if (STRNICMP(argv[0] + argv_idx, "literal", 7) == 0) { #if !defined(UNIX) parmp->literal = TRUE; @@ -2240,6 +2247,7 @@ static void usage(void) main_msg(_("--startuptime <file>\tWrite startup timing messages to <file>")); #endif main_msg(_("-i <viminfo>\t\tUse <viminfo> instead of .viminfo")); + main_msg(_("--api-msgpack-metadata\tDump API metadata information and exit")); main_msg(_("-h or --help\tPrint Help (this message) and exit")); main_msg(_("--version\t\tPrint version information and exit")); |