mirror of
https://github.com/neovim/neovim.git
synced 2025-02-25 18:55:25 -06:00
Merge PR #1603 'Small refactoring and dependencies update'
This commit is contained in:
commit
cb86eca91f
@ -918,7 +918,7 @@ void ex_diffpatch(exarg_T *eap)
|
|||||||
#endif // ifdef UNIX
|
#endif // ifdef UNIX
|
||||||
// Avoid ShellCmdPost stuff
|
// Avoid ShellCmdPost stuff
|
||||||
block_autocmds();
|
block_autocmds();
|
||||||
(void)call_shell(buf, kShellOptFilter | kShellOptCooked, NULL);
|
(void)call_shell(buf, kShellOptFilter, NULL);
|
||||||
unblock_autocmds();
|
unblock_autocmds();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1097,7 +1097,7 @@ do_filter (
|
|||||||
*/
|
*/
|
||||||
if (call_shell(
|
if (call_shell(
|
||||||
cmd_buf,
|
cmd_buf,
|
||||||
kShellOptFilter | kShellOptCooked | shell_flags,
|
kShellOptFilter | shell_flags,
|
||||||
NULL
|
NULL
|
||||||
)) {
|
)) {
|
||||||
redraw_later_clear();
|
redraw_later_clear();
|
||||||
@ -1253,7 +1253,7 @@ do_shell (
|
|||||||
if (!swapping_screen())
|
if (!swapping_screen())
|
||||||
windgoto(msg_row, msg_col);
|
windgoto(msg_row, msg_col);
|
||||||
cursor_on();
|
cursor_on();
|
||||||
(void)call_shell(cmd, kShellOptCooked | flags, NULL);
|
(void)call_shell(cmd, flags, NULL);
|
||||||
did_check_timestamps = FALSE;
|
did_check_timestamps = FALSE;
|
||||||
need_check_timestamps = TRUE;
|
need_check_timestamps = TRUE;
|
||||||
|
|
||||||
|
@ -5,14 +5,13 @@
|
|||||||
|
|
||||||
// Flags for mch_call_shell() second argument
|
// Flags for mch_call_shell() second argument
|
||||||
typedef enum {
|
typedef enum {
|
||||||
kShellOptFilter = 1, ///< filtering text
|
kShellOptFilter = 1, ///< filtering text
|
||||||
kShellOptExpand = 2, ///< expanding wildcards
|
kShellOptExpand = 2, ///< expanding wildcards
|
||||||
kShellOptCooked = 4, ///< set term to cooked mode
|
kShellOptDoOut = 4, ///< redirecting output
|
||||||
kShellOptDoOut = 8, ///< redirecting output
|
kShellOptSilent = 8, ///< don't print error returned by command
|
||||||
kShellOptSilent = 16, ///< don't print error returned by command
|
kShellOptRead = 16, ///< read lines and insert into buffer
|
||||||
kShellOptRead = 32, ///< read lines and insert into buffer
|
kShellOptWrite = 32, ///< write lines from buffer
|
||||||
kShellOptWrite = 64, ///< write lines from buffer
|
kShellOptHideMess = 64, ///< previously a global variable from os_unix.c
|
||||||
kShellOptHideMess = 128, ///< previously a global variable from os_unix.c
|
|
||||||
} ShellOpts;
|
} ShellOpts;
|
||||||
|
|
||||||
#ifdef INCLUDE_GENERATED_DECLARATIONS
|
#ifdef INCLUDE_GENERATED_DECLARATIONS
|
||||||
|
@ -54,7 +54,22 @@ void os_delay(uint64_t milliseconds, bool ignoreinput)
|
|||||||
/// @param microseconds Number of microseconds to sleep
|
/// @param microseconds Number of microseconds to sleep
|
||||||
void os_microdelay(uint64_t microseconds)
|
void os_microdelay(uint64_t microseconds)
|
||||||
{
|
{
|
||||||
microdelay(microseconds);
|
uint64_t elapsed = 0;
|
||||||
|
uint64_t ns = microseconds * 1000; // convert to nanoseconds
|
||||||
|
uint64_t base = uv_hrtime();
|
||||||
|
|
||||||
|
uv_mutex_lock(&delay_mutex);
|
||||||
|
|
||||||
|
while (elapsed < ns) {
|
||||||
|
if (uv_cond_timedwait(&delay_cond, &delay_mutex, ns - elapsed)
|
||||||
|
== UV_ETIMEDOUT)
|
||||||
|
break;
|
||||||
|
uint64_t now = uv_hrtime();
|
||||||
|
elapsed += now - base;
|
||||||
|
base = now;
|
||||||
|
}
|
||||||
|
|
||||||
|
uv_mutex_unlock(&delay_mutex);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Portable version of POSIX localtime_r()
|
/// Portable version of POSIX localtime_r()
|
||||||
@ -88,23 +103,3 @@ struct tm *os_get_localtime(struct tm *result) FUNC_ATTR_NONNULL_ALL
|
|||||||
time_t rawtime = time(NULL);
|
time_t rawtime = time(NULL);
|
||||||
return os_localtime_r(&rawtime, result);
|
return os_localtime_r(&rawtime, result);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void microdelay(uint64_t microseconds)
|
|
||||||
{
|
|
||||||
uint64_t elapsed = 0;
|
|
||||||
uint64_t ns = microseconds * 1000; // convert to nanoseconds
|
|
||||||
uint64_t base = uv_hrtime();
|
|
||||||
|
|
||||||
uv_mutex_lock(&delay_mutex);
|
|
||||||
|
|
||||||
while (elapsed < ns) {
|
|
||||||
if (uv_cond_timedwait(&delay_cond, &delay_mutex, ns - elapsed)
|
|
||||||
== UV_ETIMEDOUT)
|
|
||||||
break;
|
|
||||||
uint64_t now = uv_hrtime();
|
|
||||||
elapsed += now - base;
|
|
||||||
base = now;
|
|
||||||
}
|
|
||||||
|
|
||||||
uv_mutex_unlock(&delay_mutex);
|
|
||||||
}
|
|
||||||
|
8
third-party/CMakeLists.txt
vendored
8
third-party/CMakeLists.txt
vendored
@ -70,9 +70,9 @@ set(LUAROCKS_URL https://github.com/keplerproject/luarocks/archive/0587afbb5fe8c
|
|||||||
set(LUAROCKS_SHA1 61a894fd5d61987bf7e7f9c3e0c5de16ba4b68c4)
|
set(LUAROCKS_SHA1 61a894fd5d61987bf7e7f9c3e0c5de16ba4b68c4)
|
||||||
set(LUAROCKS_MD5 0f53f42909fbcd2c88be303e8f970516)
|
set(LUAROCKS_MD5 0f53f42909fbcd2c88be303e8f970516)
|
||||||
|
|
||||||
set(LIBUNIBILIUM_URL https://github.com/neovim/unibilium/archive/neovim.tar.gz)
|
set(LIBUNIBILIUM_URL https://github.com/mauke/unibilium/archive/v1.1.1.tar.gz)
|
||||||
set(LIBUNIBILIUM_SHA1 5d3d4913dd267b14f81fc665e0fa20661d3cb817)
|
set(LIBUNIBILIUM_SHA1 582cbac75989d70e70953fa826cb5457cbfacc10)
|
||||||
set(LIBUNIBILIUM_MD5 0657a906164529f1e0f60aba3b876f23)
|
set(LIBUNIBILIUM_MD5 c6ff790d31c2fb9e2dbe6c40004d6fc3)
|
||||||
|
|
||||||
set(LIBTERMKEY_URL https://github.com/neovim/libtermkey/archive/neovim.tar.gz)
|
set(LIBTERMKEY_URL https://github.com/neovim/libtermkey/archive/neovim.tar.gz)
|
||||||
set(LIBTERMKEY_SHA1 a309038a2297fe4905f03a8807723a9aa07c272a)
|
set(LIBTERMKEY_SHA1 a309038a2297fe4905f03a8807723a9aa07c272a)
|
||||||
@ -281,7 +281,7 @@ if(USE_BUNDLED_LUAROCKS)
|
|||||||
|
|
||||||
add_custom_command(OUTPUT ${DEPS_LIB_DIR}/luarocks/rocks/nvim-client
|
add_custom_command(OUTPUT ${DEPS_LIB_DIR}/luarocks/rocks/nvim-client
|
||||||
COMMAND ${DEPS_BIN_DIR}/luarocks
|
COMMAND ${DEPS_BIN_DIR}/luarocks
|
||||||
ARGS build https://raw.githubusercontent.com/neovim/lua-client/0aefb79d8f60fd180594f376d20144414e1f37a4/nvim-client-0.0.1-3.rockspec CC=${DEPS_C_COMPILER} LD=${DEPS_C_COMPILER} LIBUV_DIR=${DEPS_INSTALL_DIR}
|
ARGS build https://raw.githubusercontent.com/neovim/lua-client/8c40a2fdad5cc407ed5781909965ac87db0aefb0/nvim-client-0.0.1-5.rockspec CC=${DEPS_C_COMPILER} LD=${DEPS_C_COMPILER} LIBUV_DIR=${DEPS_INSTALL_DIR}
|
||||||
DEPENDS lpeg libuv)
|
DEPENDS lpeg libuv)
|
||||||
add_custom_target(nvim-client
|
add_custom_target(nvim-client
|
||||||
DEPENDS ${DEPS_LIB_DIR}/luarocks/rocks/nvim-client)
|
DEPENDS ${DEPS_LIB_DIR}/luarocks/rocks/nvim-client)
|
||||||
|
Loading…
Reference in New Issue
Block a user