diff --git a/.nfnl.fnl b/.nfnl.fnl
index c2f296b..6caf408 100644
--- a/.nfnl.fnl
+++ b/.nfnl.fnl
@@ -24,10 +24,7 @@
  ;; autocmd, so it'll only apply to buffers you're interested in.
  ;; Will use backslashes on Windows.
  ;; Defaults to compiling all .fnl files, you may want to limit it to your fnl/ directory.
- :source-file-patterns [:./fnl/.*.fnl
-                        :./fnl/*.fnl
-                        :./fnl/**/*.fnl
-                        :./new-init.fnl]
+ :source-file-patterns [:./fnl/.*.fnl :./fnl/*.fnl :./fnl/**/*.fnl :./init.fnl]
  ;; A function that is given the absolute path of a Fennel file and should return
  ;; the equivalent Lua path, by default this will translate `fnl/foo/bar.fnl` to `lua/foo/bar.lua`.
  ;; See the "Writing Lua elsewhere" tip below for an example function that writes to a sub directory.
diff --git a/init.fnl b/init.fnl
new file mode 100644
index 0000000..5f6c13b
--- /dev/null
+++ b/init.fnl
@@ -0,0 +1,74 @@
+(when (= (os.getenv :TERM) :xterm-kitty)
+  ((. (require :scripts.chameleon) :setup))
+  ((. (require :scripts.kitty-padding) :setup)))
+
+(require :keymaps)
+(require :plugins)
+(require :scripts.obsidian-sync)
+((. (require :scripts.autoroot) :setup))
+(set vim.opt.relativenumber true)
+(set vim.opt.number true)
+(set vim.opt.laststatus 3)
+(set vim.opt.undofile true)
+(set vim.opt.tabstop 4)
+(set vim.opt.shiftwidth 2)
+(set vim.treesitter.indent true)
+(set vim.opt.foldexpr "nvim_treesitter#foldexpr()")
+(set vim.opt.foldmethod :expr)
+(set vim.opt.foldenable false)
+(set vim.opt.signcolumn :yes)
+(set vim.opt.updatetime 250)
+(set vim.opt.list true)
+(set vim.opt.listchars {:nbsp "␣" :tab "» " :trail "·"})
+(set vim.opt.scrolloff 10)
+(vim.cmd.colorscheme :oxocarbon)
+(set vim.g.node_host_prog (nixCats :bin.neovim-node-host))
+(set vim.g.loaded_node_provider nil)
+((. (require :nvim-treesitter.configs) :setup) {:additional_vim_regex_highlighting false
+                                                :auto_install false
+                                                :disable (fn [_ buf]
+                                                           (local max-filesize
+                                                                  (* 100 1024))
+                                                           (local (ok stats)
+                                                                  (pcall vim.loop.fs_stat
+                                                                         (vim.api.nvim_buf_get_name buf)))
+                                                           (when (and (and ok
+                                                                           stats)
+                                                                      (> stats.size
+                                                                         max-filesize))
+                                                             true))
+                                                :ensure_installed {}
+                                                :highlight {:enable true}
+                                                :ignore_install {}
+                                                :incremental_selection {:enable true
+                                                                        :keymaps {:init_selection :<CR>
+                                                                                  :node_decremental :<C-j>
+                                                                                  :node_incremental :<C-k>
+                                                                                  :scope_incremental :<BS>}}
+                                                :modules [:highlight
+                                                          :incremental_selection
+                                                          :indent]
+                                                :sync_install false})
+
+(vim.api.nvim_create_autocmd [:TermOpen]
+                             {:callback (fn []
+                                          (vim.cmd "setlocal nonumber norelativenumber"))
+                              :group (vim.api.nvim_create_augroup :terminal {})})
+
+(vim.api.nvim_create_autocmd :TextYankPost
+                             {:callback (fn []
+                                          (vim.highlight.on_yank {:higroup :Visual
+                                                                  :timeout 300}))})
+
+(set vim.lsp.handlers.textDocument/hover
+     (vim.lsp.with vim.lsp.handlers.hover {:silent true}))
+
+(vim.api.nvim_create_autocmd [:VimResized]
+                             {:callback (fn []
+                                          (local current-tab
+                                                 (vim.api.nvim_get_current_tabpage))
+                                          (vim.cmd "tabdo wincmd =")
+                                          (vim.api.nvim_set_current_tabpage current-tab))
+                              :desc "Resize splits with terminal window"
+                              :group (vim.api.nvim_create_augroup :EqualizeSplits
+                                                                  {})})
diff --git a/init.lua b/init.lua
index 57ba737..55b0dc8 100644
--- a/init.lua
+++ b/init.lua
@@ -1,98 +1,53 @@
-if os.getenv("TERM") == "xterm-kitty" then
+-- [nfnl] Compiled from ./init.fnl by https://github.com/Olical/nfnl, do not edit.
+if (os.getenv("TERM") == "xterm-kitty") then
   require("scripts.chameleon").setup()
   require("scripts.kitty-padding").setup()
+else
 end
-
 require("keymaps")
 require("plugins")
 require("scripts.obsidian-sync")
-
 require("scripts.autoroot").setup()
-
 vim.opt.relativenumber = true
 vim.opt.number = true
-
--- Global statusline
 vim.opt.laststatus = 3
--- Persistent undos across session
 vim.opt.undofile = true
-
 vim.opt.tabstop = 4
 vim.opt.shiftwidth = 2
-
 vim.treesitter.indent = true
 vim.opt.foldexpr = "nvim_treesitter#foldexpr()"
 vim.opt.foldmethod = "expr"
 vim.opt.foldenable = false
-
 vim.opt.signcolumn = "yes"
 vim.opt.updatetime = 250
-
 vim.opt.list = true
-vim.opt.listchars = { tab = "» ", trail = "·", nbsp = "␣" }
-
+vim.opt.listchars = {nbsp = "\226\144\163", tab = "\194\187 ", trail = "\194\183"}
 vim.opt.scrolloff = 10
-
 vim.cmd.colorscheme("oxocarbon")
-
 vim.g.node_host_prog = nixCats("bin.neovim-node-host")
 vim.g.loaded_node_provider = nil
-
-require("nvim-treesitter.configs").setup({
-  ensure_installed = {},
-  sync_install = false,
-  auto_install = false,
-  modules = { "highlight", "incremental_selection", "indent" },
-  ignore_install = {},
-  highlight = { enable = true },
-  disable = function(_, buf)
-    local max_filesize = 100 * 1024 -- 100 KB
-    ---@diagnostic disable-next-line: undefined-field
-    local ok, stats = pcall(vim.loop.fs_stat, vim.api.nvim_buf_get_name(buf))
-    if ok and stats and stats.size > max_filesize then
-      return true
-    end
-  end,
-  additional_vim_regex_highlighting = false,
-  incremental_selection = {
-    enable = true,
-    keymaps = {
-      init_selection = "<CR>",
-      node_incremental = "<C-k>",
-      scope_incremental = "<BS>",
-      node_decremental = "<C-j>",
-    },
-  },
-})
-
--- no line numbers for terminals
-vim.api.nvim_create_autocmd({
-  "TermOpen",
-}, {
-  group = vim.api.nvim_create_augroup("terminal", {}),
-  callback = function()
-    vim.cmd("setlocal nonumber norelativenumber")
-  end,
-})
-
--- flash yanked test
-vim.api.nvim_create_autocmd("TextYankPost", {
-  callback = function()
-    vim.highlight.on_yank({ higroup = "Visual", timeout = 300 })
-  end,
-})
-
--- silence the hover 'no information available' notification
-vim.lsp.handlers["textDocument/hover"] = vim.lsp.with(vim.lsp.handlers.hover, {
-  silent = true,
-})
-
-vim.api.nvim_create_autocmd({ "VimResized" }, {
-  group = vim.api.nvim_create_augroup("EqualizeSplits", {}),
-  callback = function()
-    local current_tab = vim.api.nvim_get_current_tabpage()
-    vim.cmd("tabdo wincmd =")
-    vim.api.nvim_set_current_tabpage(current_tab)
-  end,
-  desc = "Resize splits with terminal window",
-})
+local function _2_(_, buf)
+  local max_filesize = (100 * 1024)
+  local ok, stats = pcall(vim.loop.fs_stat, vim.api.nvim_buf_get_name(buf))
+  if ((ok and stats) and (stats.size > max_filesize)) then
+    return true
+  else
+    return nil
+  end
+end
+require("nvim-treesitter.configs").setup({disable = _2_, ensure_installed = {}, highlight = {enable = true}, ignore_install = {}, incremental_selection = {enable = true, keymaps = {init_selection = "<CR>", node_decremental = "<C-j>", node_incremental = "<C-k>", scope_incremental = "<BS>"}}, modules = {"highlight", "incremental_selection", "indent"}, additional_vim_regex_highlighting = false, auto_install = false, sync_install = false})
+local function _4_()
+  return vim.cmd("setlocal nonumber norelativenumber")
+end
+vim.api.nvim_create_autocmd({"TermOpen"}, {callback = _4_, group = vim.api.nvim_create_augroup("terminal", {})})
+local function _5_()
+  return vim.highlight.on_yank({higroup = "Visual", timeout = 300})
+end
+vim.api.nvim_create_autocmd("TextYankPost", {callback = _5_})
+vim.lsp.handlers["textDocument/hover"] = vim.lsp.with(vim.lsp.handlers.hover, {silent = true})
+local function _6_()
+  local current_tab = vim.api.nvim_get_current_tabpage()
+  vim.cmd("tabdo wincmd =")
+  return vim.api.nvim_set_current_tabpage(current_tab)
+end
+return vim.api.nvim_create_autocmd({"VimResized"}, {callback = _6_, desc = "Resize splits with terminal window", group = vim.api.nvim_create_augroup("EqualizeSplits", {})})
diff --git a/new-init.fnl b/new-init.fnl
deleted file mode 100644
index cf2b3f5..0000000
--- a/new-init.fnl
+++ /dev/null
@@ -1,4 +0,0 @@
-(if (os.getenv :TERM)
-    ((. (require :scripts.chameleon) :setup) (. (require :scripts.kitty-padding)
-                                                :setup))
-    {})
diff --git a/new-init.lua b/new-init.lua
deleted file mode 100644
index 07be0e1..0000000
--- a/new-init.lua
+++ /dev/null
@@ -1,6 +0,0 @@
--- [nfnl] Compiled from ./new-init.fnl by https://github.com/Olical/nfnl, do not edit.
-if os.getenv("TERM") then
-  return require("scripts.chameleon").setup(require("scripts.kitty-padding").setup)
-else
-  return {}
-end