aboutsummaryrefslogtreecommitdiff
path: root/src/os/shell.h
diff options
context:
space:
mode:
authorThiago de Arruda <tpadilha84@gmail.com>2014-04-05 09:33:14 -0300
committerThiago de Arruda <tpadilha84@gmail.com>2014-04-05 11:05:31 -0300
commit2dcae28328c195e504fc98a7a0e468f679e3dca2 (patch)
treeeb3e7c31e551b985c71282f5f7d83180aad011b3 /src/os/shell.h
parent796b79db8cc952deb8c750b62ee8da6caafe1d88 (diff)
downloadrneovim-2dcae28328c195e504fc98a7a0e468f679e3dca2.tar.gz
rneovim-2dcae28328c195e504fc98a7a0e468f679e3dca2.tar.bz2
rneovim-2dcae28328c195e504fc98a7a0e468f679e3dca2.zip
Rewrite `mch_call_shell` on top of libuv
- Rename to `os_call_shell` - Use another entry point for libuv default event loop - Fix the `call_shell` reference in misc2.c
Diffstat (limited to 'src/os/shell.h')
-rw-r--r--src/os/shell.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/os/shell.h b/src/os/shell.h
index 7a5a32bc0b..776c36d384 100644
--- a/src/os/shell.h
+++ b/src/os/shell.h
@@ -26,10 +26,20 @@ typedef enum {
/// @return A newly allocated argument vector. It must be freed with
/// `shell_free_argv` when no longer needed.
char ** shell_build_argv(char_u *cmd, char_u *extra_shell_arg);
+
/// Releases the memory allocated by `shell_build_argv`.
///
/// @param argv The argument vector.
void shell_free_argv(char **argv);
+/// Calls the user shell for running a command, interactive session or
+/// wildcard expansion. It uses the shell set in the `sh` option.
+///
+/// @param cmd The command to be executed. If NULL it will run an interactive
+/// shell
+/// @param opts Various options that control how the shell will work
+/// @param extra_shell_arg Extra argument to be passed to the shell
+int os_call_shell(char_u *cmd, ShellOpts opts, char_u *extra_shell_arg);
+
#endif // NEOVIM_OS_SHELL_H