mirror of
https://github.com/neovim/neovim.git
synced 2025-02-25 18:55:25 -06:00
Add --api-metadata command line option
- New command line option prints the binary API metadata object and exits
This commit is contained in:
parent
a2e9580801
commit
1971cc30b5
@ -100,7 +100,7 @@ end
|
|||||||
output:write([[
|
output:write([[
|
||||||
|
|
||||||
|
|
||||||
static const uint8_t msgpack_metadata[] = {
|
const uint8_t msgpack_metadata[] = {
|
||||||
|
|
||||||
]])
|
]])
|
||||||
-- serialize the API metadata using msgpack and embed into the resulting
|
-- 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.
|
-- usually it is the first function called by clients.
|
||||||
output:write([[
|
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)
|
void msgpack_rpc_dispatch(uint64_t channel_id, msgpack_object *req, msgpack_packer *res)
|
||||||
{
|
{
|
||||||
|
@ -135,6 +135,8 @@ static void check_swap_exists_action(void);
|
|||||||
# endif
|
# endif
|
||||||
#endif /* NO_VIM_MAIN */
|
#endif /* NO_VIM_MAIN */
|
||||||
|
|
||||||
|
extern const uint8_t msgpack_metadata[];
|
||||||
|
extern const unsigned int msgpack_metadata_size;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Different types of error messages.
|
* Different types of error messages.
|
||||||
@ -1047,6 +1049,11 @@ static void command_line_scan(mparm_T *parmp)
|
|||||||
msg_putchar('\n');
|
msg_putchar('\n');
|
||||||
msg_didout = FALSE;
|
msg_didout = FALSE;
|
||||||
mch_exit(0);
|
mch_exit(0);
|
||||||
|
} else if (STRICMP(argv[0] + argv_idx, "api-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) {
|
} else if (STRNICMP(argv[0] + argv_idx, "literal", 7) == 0) {
|
||||||
#if !defined(UNIX)
|
#if !defined(UNIX)
|
||||||
parmp->literal = TRUE;
|
parmp->literal = TRUE;
|
||||||
@ -2240,6 +2247,7 @@ static void usage(void)
|
|||||||
main_msg(_("--startuptime <file>\tWrite startup timing messages to <file>"));
|
main_msg(_("--startuptime <file>\tWrite startup timing messages to <file>"));
|
||||||
#endif
|
#endif
|
||||||
main_msg(_("-i <viminfo>\t\tUse <viminfo> instead of .viminfo"));
|
main_msg(_("-i <viminfo>\t\tUse <viminfo> instead of .viminfo"));
|
||||||
|
main_msg(_("--api-metadata\tDump API metadata information and exit"));
|
||||||
main_msg(_("-h or --help\tPrint Help (this message) and exit"));
|
main_msg(_("-h or --help\tPrint Help (this message) and exit"));
|
||||||
main_msg(_("--version\t\tPrint version information and exit"));
|
main_msg(_("--version\t\tPrint version information and exit"));
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user