From b93398ce799df5c165163c96e91d6a8205f0a83c Mon Sep 17 00:00:00 2001 From: Kim Alvefur Date: Sun, 4 Jul 2021 15:11:07 +0200 Subject: util.pposix: Bind isatty(3) Useful for disabling certain behavior, ANSI colors etc when not connected to a terminal. --- util-src/pposix.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'util-src') diff --git a/util-src/pposix.c b/util-src/pposix.c index 856905b0..87be7e9a 100644 --- a/util-src/pposix.c +++ b/util-src/pposix.c @@ -812,6 +812,13 @@ static int lc_atomic_append(lua_State *L) { return 3; } +static int lc_isatty(lua_State *L) { + FILE *f = *(FILE **) luaL_checkudata(L, 1, LUA_FILEHANDLE); + const int fd = fileno(f); + lua_pushboolean(L, isatty(fd)); + return 1; +} + /* Register functions */ int luaopen_util_pposix(lua_State *L) { @@ -853,6 +860,8 @@ int luaopen_util_pposix(lua_State *L) { { "atomic_append", lc_atomic_append }, + { "isatty", lc_isatty }, + { NULL, NULL } }; -- cgit v1.2.3