summaryrefslogtreecommitdiff
path: root/fnl/util/cursorline.fnl
diff options
context:
space:
mode:
Diffstat (limited to 'fnl/util/cursorline.fnl')
-rw-r--r--fnl/util/cursorline.fnl27
1 files changed, 27 insertions, 0 deletions
diff --git a/fnl/util/cursorline.fnl b/fnl/util/cursorline.fnl
new file mode 100644
index 0000000..e094a4a
--- /dev/null
+++ b/fnl/util/cursorline.fnl
@@ -0,0 +1,27 @@
+;; Functions for showing and hiding the cursorline.
+
+(local ignore-filetypes [:neo-tree])
+
+(fn filetype []
+ vim.bo.filetype)
+
+(fn ignore []
+ (vim.tbl_contains ignore-filetypes (filetype)))
+
+(fn show []
+ (let [(ok cl) (pcall vim.api.nvim_win_get_var 0 :auto-cursorline)]
+ (if (and ok cl)
+ (do
+ (set vim.wo.cursorline true)
+ (vim.api.nvim_win_del_var 0 :auto-cursorline)))))
+
+(fn hide []
+ (if (not= (ignore) true)
+ (do
+ (let [cl vim.wo.cursorline]
+ (if cl
+ (do
+ (vim.api.nvim_win_set_var 0 :auto-cursorline cl)
+ (set vim.wo.cursorline false)))))))
+
+{: show : hide}