aboutsummaryrefslogtreecommitdiff
path: root/fnl
diff options
context:
space:
mode:
authoramelia squires <[email protected]>2024-11-13 06:17:23 -0600
committeramelia squires <[email protected]>2024-11-13 06:17:23 -0600
commit804f2a342d1b2002ad383ff604e75eb0caba8f65 (patch)
tree0c23239e32ec36f6d9e84ac4d2099194881fd180 /fnl
parente47fa485563a8a806c52f66a18471bbf012ac5c1 (diff)
ton of new stuff
Diffstat (limited to 'fnl')
-rw-r--r--fnl/dap/adapters/coreclr.fnl3
-rw-r--r--fnl/dap/adapters/lldb.fnl3
-rw-r--r--fnl/dap/configurations/c.fnl7
-rw-r--r--fnl/dap/configurations/cpp.fnl1
-rw-r--r--fnl/dap/configurations/cs.fnl5
-rw-r--r--fnl/dap/configurations/rust.fnl1
-rw-r--r--fnl/defaults.fnl4
-rw-r--r--fnl/plugins/bufresize.fnl1
-rw-r--r--fnl/plugins/cmp.fnl6
-rw-r--r--fnl/plugins/compiler_explorer.fnl6
-rw-r--r--fnl/plugins/dap.fnl20
-rw-r--r--fnl/plugins/dressing.fnl2
-rw-r--r--fnl/plugins/edgy.fnl14
-rw-r--r--fnl/plugins/gitsigns.fnl1
-rw-r--r--fnl/plugins/lsp_signature.fnl1
-rw-r--r--fnl/plugins/lspconfig.fnl2
-rw-r--r--fnl/plugins/matchparen.fnl1
-rw-r--r--fnl/plugins/neo_tree.fnl3
-rw-r--r--fnl/plugins/notify.fnl2
-rw-r--r--fnl/plugins/persistent_breakpoints.fnl2
-rw-r--r--fnl/plugins/sniprun.fnl2
-rw-r--r--fnl/plugins/startup.fnl2
-rw-r--r--fnl/plugins/toggleterm.fnl2
-rw-r--r--fnl/plugins/treesitter.fnl2
-rw-r--r--fnl/plugins/which_key.fnl30
-rw-r--r--fnl/plugins/wilder.fnl3
-rw-r--r--fnl/plugins/winshift.fnl1
-rw-r--r--fnl/util.fnl12
28 files changed, 121 insertions, 18 deletions
diff --git a/fnl/dap/adapters/coreclr.fnl b/fnl/dap/adapters/coreclr.fnl
new file mode 100644
index 0000000..1196a92
--- /dev/null
+++ b/fnl/dap/adapters/coreclr.fnl
@@ -0,0 +1,3 @@
+{
+ :type "executable"
+ :command "netcoredbg"}
diff --git a/fnl/dap/adapters/lldb.fnl b/fnl/dap/adapters/lldb.fnl
new file mode 100644
index 0000000..987d80d
--- /dev/null
+++ b/fnl/dap/adapters/lldb.fnl
@@ -0,0 +1,3 @@
+{
+ :type "executable"
+ :command "lldb-dap"}
diff --git a/fnl/dap/configurations/c.fnl b/fnl/dap/configurations/c.fnl
new file mode 100644
index 0000000..2a9375a
--- /dev/null
+++ b/fnl/dap/configurations/c.fnl
@@ -0,0 +1,7 @@
+[{
+ :name "Launch"
+ :type "lldb"
+ :request "launch"
+ :program (fn [] (vim.fn.input "Path to executable" (.. (vim.fn.getcwd) "/") "file"))
+ :cwd "${workspaceFolder}"
+ :stopAtBeginningOfMainSubprogram false}]
diff --git a/fnl/dap/configurations/cpp.fnl b/fnl/dap/configurations/cpp.fnl
new file mode 100644
index 0000000..808050f
--- /dev/null
+++ b/fnl/dap/configurations/cpp.fnl
@@ -0,0 +1 @@
+(require "dap.configurations.c")
diff --git a/fnl/dap/configurations/cs.fnl b/fnl/dap/configurations/cs.fnl
new file mode 100644
index 0000000..c1bf097
--- /dev/null
+++ b/fnl/dap/configurations/cs.fnl
@@ -0,0 +1,5 @@
+[{
+ :type "coreclr"
+ :name "launch - netcoredbg"
+ :request "launch"
+ :program (fn [] (vim.fn.input "path to dll" (.. (vim.fn.getcwd) "/bin/Debug/") "file"))}]
diff --git a/fnl/dap/configurations/rust.fnl b/fnl/dap/configurations/rust.fnl
new file mode 100644
index 0000000..808050f
--- /dev/null
+++ b/fnl/dap/configurations/rust.fnl
@@ -0,0 +1 @@
+(require "dap.configurations.c")
diff --git a/fnl/defaults.fnl b/fnl/defaults.fnl
index aa75f3a..c50c4e4 100644
--- a/fnl/defaults.fnl
+++ b/fnl/defaults.fnl
@@ -1,8 +1,8 @@
(lambda default [key value ?force]
(when (or (= (. _G.settings key) nil) ?force) (tset _G.settings key value)))
-(lambda defaults [force]
+(global defaults (lambda [force]
(default :colorscheme :oxocarbon force)
- (default :lsp "lua_ls,clangd,zls,csharp_ls,ts_ls" force))
+ (default :lsp "pyright,lua_ls,clangd,zls,csharp_ls,ts_ls,rust_analyzer" force)))
(defaults false)
diff --git a/fnl/plugins/bufresize.fnl b/fnl/plugins/bufresize.fnl
deleted file mode 100644
index e495e26..0000000
--- a/fnl/plugins/bufresize.fnl
+++ /dev/null
@@ -1 +0,0 @@
-((. (require :bufresize) :setup))
diff --git a/fnl/plugins/cmp.fnl b/fnl/plugins/cmp.fnl
index 8d13986..09067eb 100644
--- a/fnl/plugins/cmp.fnl
+++ b/fnl/plugins/cmp.fnl
@@ -1,6 +1,6 @@
-(local cmp (require :cmp))
+(local cmp (_G.util.require! :cmp))
-((. cmp :setup) {
+(cmp.setup {
:snippet {
:expand (fn [args]
(vim.snippet.expand args.body)
@@ -16,7 +16,7 @@
})
:sources (cmp.config.sources [
{:name :nvim_lsp}
- ;{:name :vsnip}
+ {:name :calc} ;to anyone new to this codebase, calc is short for calculator (no clue what this adds, but its funny)
] [{:name :buffer}])
})
diff --git a/fnl/plugins/compiler_explorer.fnl b/fnl/plugins/compiler_explorer.fnl
new file mode 100644
index 0000000..cf2108e
--- /dev/null
+++ b/fnl/plugins/compiler_explorer.fnl
@@ -0,0 +1,6 @@
+(_G.util.setup! :compiler-explorer {
+ :languages {
+ ;clang 9.0.1 x86-64
+ :c {:compiler :cclang901}
+ }
+ })
diff --git a/fnl/plugins/dap.fnl b/fnl/plugins/dap.fnl
new file mode 100644
index 0000000..fbaf3ba
--- /dev/null
+++ b/fnl/plugins/dap.fnl
@@ -0,0 +1,20 @@
+;all this does is load dap configurations
+;
+;the full directory name starting after the source (fnl) will be used
+;replace all the /'s with periods and for each file in {source}/dap,
+;set the modified path as a variable to require the file at the path
+;
+;ie: fnl/dap/adapters/lldb.fnl will run `dap.adapters.lldb = require'dap.adapters.lldb'`
+;
+;if you really want to (or are lazy) you can use lua/dap/{whatever}, but make sure a fennel file
+;wont override it
+
+(tset _G :dap (require :dap))
+(local dir (.. (vim.fn.stdpath :config) "/lua/"))
+(local search (io.popen (.. "find " dir "dap/ -name '*.*'")))
+(each [conf (search:lines)]
+ (local path (string.gsub conf "/" "."))
+ (local req (path:sub (+ (# dir) 1) -5))
+ ((assert (load (.. req " = require'" req "'")))))
+
+((. (require :dap-python) :setup) :python3)
diff --git a/fnl/plugins/dressing.fnl b/fnl/plugins/dressing.fnl
new file mode 100644
index 0000000..cc3a8d0
--- /dev/null
+++ b/fnl/plugins/dressing.fnl
@@ -0,0 +1,2 @@
+(_G.util.setup! :dressing {
+ :select {:backend [:telescope]}})
diff --git a/fnl/plugins/edgy.fnl b/fnl/plugins/edgy.fnl
new file mode 100644
index 0000000..4868367
--- /dev/null
+++ b/fnl/plugins/edgy.fnl
@@ -0,0 +1,14 @@
+(_G.util.setup! :edgy {
+ :bottom [:toggleterm]
+ :left [:neo-tree {:ft :Outline :title (fn []
+ (local buf_name (vim.api.nvim_buf_get_name 0)); or "[No Name]"
+ (vim.fn.fnamemodify buf_name ":t")
+ )}]
+
+ :animate {:enabled false}
+ ;allow other window movement binds to 'work'
+ :keys {:c-j (fn [win]
+ (win:next {:focus true :pinned false}))
+ :c-k (fn [win]
+ (win:prev {:focus true :visible true}))}
+ :wo {:winbar false}})
diff --git a/fnl/plugins/gitsigns.fnl b/fnl/plugins/gitsigns.fnl
deleted file mode 100644
index 9810906..0000000
--- a/fnl/plugins/gitsigns.fnl
+++ /dev/null
@@ -1 +0,0 @@
-((. (require :gitsigns) :setup))
diff --git a/fnl/plugins/lsp_signature.fnl b/fnl/plugins/lsp_signature.fnl
deleted file mode 100644
index 9b5509d..0000000
--- a/fnl/plugins/lsp_signature.fnl
+++ /dev/null
@@ -1 +0,0 @@
-((. (require :lsp_signature) :setup))
diff --git a/fnl/plugins/lspconfig.fnl b/fnl/plugins/lspconfig.fnl
index 7034e33..bcd3527 100644
--- a/fnl/plugins/lspconfig.fnl
+++ b/fnl/plugins/lspconfig.fnl
@@ -2,7 +2,7 @@
(set capabilities (capabilities.default_capabilities))
(local lsp _G.settings.lsp)
(local config_table {})
-(local lspconfig (require :lspconfig))
+(local lspconfig (_G.util.require! :lspconfig))
(each [language (lsp:gmatch "([^,]+)")]
(when (= (. config_table language) nil) (tset config_table language {}))
diff --git a/fnl/plugins/matchparen.fnl b/fnl/plugins/matchparen.fnl
deleted file mode 100644
index 1154b31..0000000
--- a/fnl/plugins/matchparen.fnl
+++ /dev/null
@@ -1 +0,0 @@
-((. (require :matchparen) :setup))
diff --git a/fnl/plugins/neo_tree.fnl b/fnl/plugins/neo_tree.fnl
index 76bf708..9925d60 100644
--- a/fnl/plugins/neo_tree.fnl
+++ b/fnl/plugins/neo_tree.fnl
@@ -1,4 +1,5 @@
-((. (require :neo-tree) :setup) {
+(_G.util.setup! :neo-tree {
+ :open_files_do_not_replace_types ["Outline" "terminal" "toggleterm" "edgy"]
:close_if_last_window true
:default_component_configs {
:git_status {
diff --git a/fnl/plugins/notify.fnl b/fnl/plugins/notify.fnl
index 4084871..46e3cd0 100644
--- a/fnl/plugins/notify.fnl
+++ b/fnl/plugins/notify.fnl
@@ -1 +1 @@
-(tset vim :notify (require :notify))
+(tset vim :notify (_G.util.require! :notify))
diff --git a/fnl/plugins/persistent_breakpoints.fnl b/fnl/plugins/persistent_breakpoints.fnl
new file mode 100644
index 0000000..b52ab70
--- /dev/null
+++ b/fnl/plugins/persistent_breakpoints.fnl
@@ -0,0 +1,2 @@
+(_G.util.setup! :persistent-breakpoints {
+ :load_breakpoints_event ["BufReadPost"]})
diff --git a/fnl/plugins/sniprun.fnl b/fnl/plugins/sniprun.fnl
new file mode 100644
index 0000000..93123a2
--- /dev/null
+++ b/fnl/plugins/sniprun.fnl
@@ -0,0 +1,2 @@
+(_G.util.setup! :sniprun {
+ :display ["VirtualTextOk" "VirtualTextErr"]})
diff --git a/fnl/plugins/startup.fnl b/fnl/plugins/startup.fnl
index dc601a4..38e583e 100644
--- a/fnl/plugins/startup.fnl
+++ b/fnl/plugins/startup.fnl
@@ -1,2 +1,2 @@
-((. (require :startup) :setup) {
+(_G.util.setup! :startup {
:theme :evil})
diff --git a/fnl/plugins/toggleterm.fnl b/fnl/plugins/toggleterm.fnl
index aed1edc..12df987 100644
--- a/fnl/plugins/toggleterm.fnl
+++ b/fnl/plugins/toggleterm.fnl
@@ -1 +1 @@
-((. (require :toggleterm) :setup) {:persist_mode true :persistant_size true})
+(_G.util.setup! :toggleterm {:persist_mode true :persistant_size true})
diff --git a/fnl/plugins/treesitter.fnl b/fnl/plugins/treesitter.fnl
index 4b2a687..a0f6156 100644
--- a/fnl/plugins/treesitter.fnl
+++ b/fnl/plugins/treesitter.fnl
@@ -1,3 +1,3 @@
-((. (require :nvim-treesitter.configs) :setup)
+(_G.util.setup! :nvim-treesitter.configs
{:highlight {
:enable true}})
diff --git a/fnl/plugins/which_key.fnl b/fnl/plugins/which_key.fnl
index 6d4963f..e3279db 100644
--- a/fnl/plugins/which_key.fnl
+++ b/fnl/plugins/which_key.fnl
@@ -1,4 +1,4 @@
-(local whichkey (require :which-key))
+(local whichkey (_G.util.require! :which-key))
(whichkey.setup)
(macro wmap [k op desc]
@@ -11,11 +11,39 @@
(wmap :f "<cmd>Neotree toggle<CR>" "fs")
(wmap :w "<cmd>WinShift<CR>" "win shift")
(wmap :t "<cmd>ToggleTerm direction=horizontal<CR>" "hterm")
+ (wmap :d "<cmd>Glance references<CR>" "references")
+ (wmap :s "<cmd>Telescope live_grep<CR>" "search")
+ (wmap :b "<cmd>JABSOpen<CR>" "buffers")
+ (wmap :g (fn []
+ (local buffer (vim.fn.expand :%))
+ (vim.cmd "w") ;write so location is updated
+ (vim.cmd "tabe")
+ (vim.cmd (.. "buffer " buffer))
+ ((. (require "dapui") :open))) "dap-ify")
+ (wmap :x "<cmd>tabclose<CR>" "close tab")
+ (wmap :c (fn []
+ (_G.loaded.edgy.goto_main)
+ (vim.cmd "DiffviewOpen")) "git diff")
+
+ ;;layouts
+ (gmap :l "layout")
+ (wmap :li (fn []
+ (vim.cmd "ToggleTerm direction=horizontal")
+ (vim.cmd "Neotree toggle")
+ (vim.cmd "Outline")) "ide")
+
+ ;;visual
+ (gmap :v "visual")
+ (wmap :vl "<cmd>lua require('nabla').toggle_virt({autogen=true})<CR>" "latex")
+ (wmap :vb "<cmd>lua require('nvim-biscuits').toggle_biscuits()<CR>" "biscuits")
;;quick
(gmap :q "quick")
(wmap :qs "\"+y" "system grab")
(wmap :ql "0v$" "line")
+ (wmap :qr "<cmd>SnipRun<CR>" "run highlighted")
+ (wmap :qf "<cmd>RunFile<CR>" "run file")
+ (wmap :qe "<cmd>RunCode<CR>" "run code")
])
(tset mappings :mode [:n :v])
diff --git a/fnl/plugins/wilder.fnl b/fnl/plugins/wilder.fnl
index 56b4155..2398ebe 100644
--- a/fnl/plugins/wilder.fnl
+++ b/fnl/plugins/wilder.fnl
@@ -1,8 +1,9 @@
+;trans colors :3
(local gradient [:#74d7ec :#96cde2 :#b9c3d9 :#dcb9d0 :#ffafc7 :#ffafc7 :#fec1d2 :#fdd4de
:#fce6e9 :#fbf9f5 :#fbf9f5 :#fce8ea :#fdd7e0 :#fec6d5 :#ffb5cb :#ffb5cb :#dcbdd2 :#b9c5da
:#96cde2 :#73d5ea])
-(local wilder (require :wilder))
+(local wilder (_G.util.require! :wilder))
(wilder.setup {:modes [:: :/ :?]})
;this like 'builds' the gradient? idk
diff --git a/fnl/plugins/winshift.fnl b/fnl/plugins/winshift.fnl
deleted file mode 100644
index 542f15c..0000000
--- a/fnl/plugins/winshift.fnl
+++ /dev/null
@@ -1 +0,0 @@
-((. (require :winshift) :setup))
diff --git a/fnl/util.fnl b/fnl/util.fnl
new file mode 100644
index 0000000..12abe74
--- /dev/null
+++ b/fnl/util.fnl
@@ -0,0 +1,12 @@
+(local M {})
+(tset _G :loaded {})
+
+(tset M :require! (lambda [name]
+ (tset _G.loaded name (require name))
+ (. _G.loaded name)))
+
+(tset M :setup! (lambda [name ?config]
+ ;(tset _G.loaded :name ((. (require name) :setup) (or ?config {})))))
+ ((. (M.require! name) :setup) (or ?config {}))))
+
+M