aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/os/input.c5
-rw-r--r--src/os/input.h6
2 files changed, 11 insertions, 0 deletions
diff --git a/src/os/input.c b/src/os/input.c
index e0a00e006a..5143729698 100644
--- a/src/os/input.c
+++ b/src/os/input.c
@@ -124,6 +124,11 @@ void os_breakcheck()
fill_input_buf(false);
}
+bool os_isatty(int fd)
+{
+ return uv_guess_handle(fd) == UV_TTY;
+}
+
// This is a replacement for the old `WaitForChar` function in os_unix.c
static InbufPollResult inbuf_poll(int32_t ms)
{
diff --git a/src/os/input.h b/src/os/input.h
index 5eed09d2ee..0d58a33392 100644
--- a/src/os/input.h
+++ b/src/os/input.h
@@ -13,5 +13,11 @@ int os_inchar(uint8_t *, int, int32_t, int);
bool os_char_avail(void);
void os_breakcheck(void);
+/// Test whether a file descriptor refers to a terminal.
+///
+/// @param fd File descriptor.
+/// @return `true` if file descriptor refers to a terminal.
+bool os_isatty(int fd);
+
#endif // NEOVIM_OS_INPUT_H