From 6021565a28e4925b77d4997a553dfad5fbb521fd Mon Sep 17 00:00:00 2001
From: Gustaf Rydholm <gustaf.rydholm@gmail.com>
Date: Sat, 10 Jun 2023 14:27:06 +0200
Subject: Fix cursorline in neo-tree

---
 fnl/util/cursorline.fnl | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)
 create mode 100644 fnl/util/cursorline.fnl

(limited to 'fnl/util')

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}
-- 
cgit v1.2.3-70-g09d2