aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/os
diff options
context:
space:
mode:
authorJustin M. Keyes <justinkz@gmail.com>2017-04-04 02:37:43 +0200
committerJustin M. Keyes <justinkz@gmail.com>2017-04-04 14:19:26 +0200
commite348e256f3ed93fe462971447ee79033307b2ddf (patch)
treeb8c255d5249d493fce85b33506988ed8649b7780 /src/nvim/os
parent3ccd59ee8216f3da812c5cf81eb392e6a95b539a (diff)
downloadrneovim-e348e256f3ed93fe462971447ee79033307b2ddf.tar.gz
rneovim-e348e256f3ed93fe462971447ee79033307b2ddf.tar.bz2
rneovim-e348e256f3ed93fe462971447ee79033307b2ddf.zip
'guicursor': Disable by default for unknown terminals.
User can still set guicursor explicitly in init.vim. Closes #5990 Closes #6403
Diffstat (limited to 'src/nvim/os')
-rw-r--r--src/nvim/os/env.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/nvim/os/env.c b/src/nvim/os/env.c
index 1a97adfa21..839e0d1b51 100644
--- a/src/nvim/os/env.c
+++ b/src/nvim/os/env.c
@@ -889,3 +889,17 @@ bool os_setenv_append_path(const char *fname)
}
return false;
}
+
+/// Returns true if the terminal can be assumed to silently ignore unknown
+/// control codes.
+bool os_term_is_nice(void)
+{
+#if defined(__APPLE__) || defined(WIN32)
+ return true;
+#else
+ const char *vte_version = os_getenv("VTE_VERSION");
+ return (vte_version && atoi(vte_version) >= 3900)
+ || NULL != os_getenv("KONSOLE_PROFILE_NAME")
+ || NULL != os_getenv("KONSOLE_DBUS_SESSION");
+#endif
+}