almost at parity now, can dog food
Needs: - surrond? - diagnostics icons - cmp still seems to shit the bed sometimes - lspsaga breadcrumbs on lualine - more which-key config!! - tests on svelte / web dev
This commit is contained in:
parent
0709b64a71
commit
10f6614348
|
@ -0,0 +1,11 @@
|
|||
(import-macros {: do-req } :lib/macros)
|
||||
|
||||
(do-req :conform :setup
|
||||
{:formatters_by_ft {:lua ["stylua"]
|
||||
:nix ["nixfmt"]
|
||||
; :go ["goimports" "gofmt"] ; Go handled in special case
|
||||
:terraform ["terraform_fmt"]
|
||||
:sh ["shfmt"]
|
||||
:bazel ["buildifier"]}
|
||||
:format_on_save {:lsp_format "fallback"
|
||||
:timeout_ms 500}})
|
|
@ -25,7 +25,6 @@
|
|||
(nvim.opt :signcolumn "yes")
|
||||
(nvim.opt :cursorline true)
|
||||
|
||||
|
||||
(nvim.opt :lisp true) ; include - in word to move better in snake-case)
|
||||
(nvim.g :sexp_filetypes "clojure,scheme,lisp,janet,fennel,yuck") ; include the lisps I use
|
||||
|
||||
|
@ -36,5 +35,13 @@
|
|||
(require :conf.mappings)
|
||||
(require :conf.lsp)
|
||||
(require :conf.plugins.cmp)
|
||||
; (require :conf.formatting)
|
||||
(require :conf.formatting)
|
||||
; (require :conf.kitaab)
|
||||
|
||||
; Spelling
|
||||
(vim.api.nvim_create_autocmd ["BufRead" "BufNewFile"]
|
||||
{:pattern ["*.wiki" "*.txt" "*.md" "*.tex"]
|
||||
:command "setlocal spell"})
|
||||
(vim.api.nvim_create_autocmd ["FileType"]
|
||||
{:pattern ["mail"]
|
||||
:command "setlocal spell"})
|
||||
|
|
|
@ -1,10 +1,31 @@
|
|||
; (local lspfuzzy (require :lspfuzzy))
|
||||
(import-macros {: do-req } :lib/macros)
|
||||
(local lspkind (require :lspkind))
|
||||
(local lspconfig (require :lspconfig))
|
||||
(local lspsaga (require :lspsaga))
|
||||
(local cmp (require :cmp))
|
||||
(local nvim (require :lib/nvim))
|
||||
; (local lspfuzzy (require :lspfuzzy))
|
||||
; (local sg (require :sg))
|
||||
; (local lsputil (require :lspconfig/util))
|
||||
; (local navic (require :nvim-navic))
|
||||
|
||||
(lspsaga.setup {:border_style "rounded"
|
||||
:code_action_icon ""
|
||||
:code_action_num_shortcut true
|
||||
:code_action_lightbulb {
|
||||
:enable false
|
||||
}
|
||||
; show outline
|
||||
:show_outline {
|
||||
:win_position "right"
|
||||
:auto_enter true
|
||||
:auto_preview true
|
||||
:virt_text "┃"
|
||||
:jump_key "o"
|
||||
; auto refresh when change buffer
|
||||
:auto_refresh true
|
||||
}
|
||||
})
|
||||
|
||||
(tset vim.lsp.handlers
|
||||
:textDocument/hover
|
||||
|
@ -66,53 +87,14 @@
|
|||
:rangeVariableTypes true}
|
||||
:on_attach on-attach})
|
||||
|
||||
(local lsps [:nil_ls :terraform_lsp :fennel_ls :tsserver])
|
||||
(each [index lsp (ipairs lsps)]
|
||||
((. (. lspconfig lsp) :setup) {}))
|
||||
|
||||
; # local servers = { 'clojure_lsp', 'terraform_lsp', 'zls', 'pyright', 'rust_analyzer', 'tsserver', 'lua_ls', 'nil_ls', 'gopls'}
|
||||
; # for _, lsp in ipairs(servers) do
|
||||
; # lspconfig[lsp].setup {}
|
||||
; # on_attach = function(client, bufnr)
|
||||
; # format.on_attach(client)
|
||||
; # navic.attach(client, bufnr)
|
||||
; # end,
|
||||
; # capabilities = capabilities,
|
||||
; #
|
||||
; # end)
|
||||
;; Diagnostics Config I don't yet understand
|
||||
; Set Diagnostics
|
||||
; local signs = { Error = " ", Warn = " ", Hint = " ", Info = " " }
|
||||
; for type, icon in pairs(signs) do
|
||||
; local hl = "DiagnosticSign" .. type
|
||||
; vim.fn.sign_define(hl, { text = icon, texthl = hl, numhl = hl})
|
||||
; end
|
||||
; null-ls
|
||||
(let [null-ls (require :null-ls)]
|
||||
(null-ls.setup {:sources [;null-ls.builtins.diagnostics.shellcheck
|
||||
null-ls.builtins.diagnostics.commitlint]}))
|
||||
;null-ls.builtins.diagnostics.jsonlint]}))
|
||||
;(null-ls.builtins.diagnostics.proselint.with {:filetypes ["vimwiki" "mail"]})]}))
|
||||
|
||||
; vim.g.diagnostics_active = true
|
||||
; function _G.toggle_diagnostics()
|
||||
; if vim.g.diagnostics_active then
|
||||
; vim.g.diagnostics_active = false
|
||||
; vim.lsp.diagnostic.clear(0)
|
||||
; vim.lsp.handlers["textDocument/publishDiagnostics"] = function() end
|
||||
; else
|
||||
; vim.g.diagnostics_active = true
|
||||
; vim.lsp.handlers["textDocument/publishDiagnostics"] = vim.lsp.with(
|
||||
; vim.lsp.diagnostic.on_publish_diagnostics, {
|
||||
; virtual_text = true,
|
||||
; signs = true,
|
||||
; underline = true,
|
||||
; update_in_insert = false,
|
||||
; }
|
||||
; )
|
||||
; end
|
||||
; end
|
||||
;
|
||||
; vim.diagnostic.config({
|
||||
; signs = true,
|
||||
; update_in_insert = false,
|
||||
; underline = false,
|
||||
; severity_sort = true,
|
||||
; float = {
|
||||
; focusable = false,
|
||||
; style = 'minimal',
|
||||
; border = 'rounded',
|
||||
; source = 'always',
|
||||
; },
|
||||
; })
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
(local nvim (require :lib/nvim))
|
||||
(import-macros {: do-req } :lib/macros)
|
||||
|
||||
(local wk (require :which-key))
|
||||
|
||||
;; Convenient way to indent stuff in visual mode
|
||||
|
@ -30,8 +32,13 @@
|
|||
(nvim.keymap [:n] "gt" ":BufferNext<CR>" {:silent true :noremap true})
|
||||
(nvim.keymap [:n] "gj" ":BufferPick<CR>" {:silent true :noremap true})
|
||||
(nvim.keymap [:n] "gb" ":Telescope buffers<CR>" {:silent true :noremap true})
|
||||
(nvim.keymap [:n] "gq" ":BufferClosoe<CR>" {:silent true :noremap true})
|
||||
(nvim.keymap [:n] "gq" ":BufferClose<CR>" {:silent true :noremap true})
|
||||
|
||||
; Flash
|
||||
(vim.api.nvim_create_user_command "Flash" (fn [_] (do-req :flash :jump)) {})
|
||||
(vim.api.nvim_create_user_command "FlashTreesitter" (fn [] (do-req :flash :treesitter)) {})
|
||||
(nvim.keymap [:n] "f" "<cmd>Flash<CR>")
|
||||
(nvim.keymap [:n] "s" "<cmd>FlashTreesitter<CR>")
|
||||
|
||||
(local
|
||||
normal-map-leader
|
||||
|
@ -111,9 +118,10 @@
|
|||
"Rename Symbol"]
|
||||
:h [":Lspsaga hover_doc<CR>"
|
||||
"Hover doc"]
|
||||
:o [":LSoutlineToggle<CR>"
|
||||
:o ["<cmd>AerialToggle!<CR>"
|
||||
"Outline"]
|
||||
:t [":call v:lua.toggle_diagnostics()<CR>"]}
|
||||
:t [":LspDiagnostics 0"
|
||||
"Find Errors in Buffer"]}
|
||||
; Kitaab
|
||||
"z" {:name "Kitaab"
|
||||
:n [":ZettelNew<CR>"
|
||||
|
|
|
@ -2,3 +2,29 @@
|
|||
|
||||
(nvim.g :tidal_target "terminal")
|
||||
(nvim.g :scnvim_snippet_format "luasnip")
|
||||
|
||||
; -- supercollider
|
||||
; local scnvim = require 'scnvim'
|
||||
; local map = scnvim.map
|
||||
; local map_expr = scnvim.map_expr
|
||||
; scnvim.setup {
|
||||
; keymaps = {
|
||||
; ['<localleader>e'] = map('editor.send_line', {'i', 'n'}),
|
||||
; ['<localleader>s'] = map_expr('CmdPeriod.run', {'i', 'n'}),
|
||||
; ['<localleader>t'] = {
|
||||
; map('editor.send_block', {'i', 'n'}),
|
||||
; map('editor.send_selection', 'x'),
|
||||
; },
|
||||
; ['<CR>'] = map('postwin.toggle'),
|
||||
; ['<M-CR>'] = map('postwin.toggle', 'i'),
|
||||
; ['<M-L>'] = map('postwin.clear', {'n', 'i'}),
|
||||
; ['<C-k>'] = map('signature.show', {'n', 'i'}),
|
||||
; ['<F12>'] = map('sclang.hard_stop', {'n', 'x', 'i'}),
|
||||
; ['<leader>st'] = map('sclang.start'),
|
||||
; ['<leader>sk'] = map('sclang.recompile'),
|
||||
; ['<F1>'] = map_expr('s.boot'),
|
||||
; ['<F2>'] = map_expr('s.meter'),
|
||||
; }
|
||||
; }
|
||||
; -- You gotta run :SCNvimGenerateAssets for this first
|
||||
; -- require("luasnip").add_snippets("supercollider", require("scnvim/utils").get_snippets())
|
||||
|
|
|
@ -1,13 +1,14 @@
|
|||
(local nvim (require :lib/nvim))
|
||||
|
||||
(local navic (require :nvim-navic))
|
||||
|
||||
(import-macros {: do-req } :lib/macros)
|
||||
|
||||
(let [lualine (require :lualine)]
|
||||
(lualine.setup {:options {:theme "ayu"}
|
||||
:sections {:lualine_c [:filename {1 navic.get_location
|
||||
:cond navic.is_available}]
|
||||
:lualine_y [(fn []
|
||||
; TODO broken?
|
||||
; TODO broken
|
||||
(let [msg "No Active Lsp"
|
||||
buf_ft (vim.api.nvim_buf_get_option 0 "filetype")
|
||||
clients (vim.lsp.get_active_clients)]
|
||||
|
@ -19,3 +20,25 @@
|
|||
:lualine_x [:filetype]}}))
|
||||
|
||||
(require :neo-tree)
|
||||
(do-req :gitsigns :setup)
|
||||
(do-req :marks :setup)
|
||||
(do-req :mini.pairs :setup)
|
||||
(do-req :mini.diff :setup)
|
||||
(do-req :mini.ai :setup)
|
||||
;TODO (do-req :mini.surround :setup)
|
||||
(do-req :todo-comments :setup)
|
||||
(do-req :ibl :setup)
|
||||
|
||||
(do-req :nvim-treesitter.configs :setup {:highlight {:enable true}
|
||||
:textobjects {:enable true}
|
||||
:indent {:enable true}})
|
||||
(do-req :treesitter-context :setup {:max_lines 5})
|
||||
|
||||
(do-req :auto-session :setup {:log_level "info"
|
||||
:auto_session_suppress_dirs ["~/"]})
|
||||
(nvim.opt :sessionoptions "blank,buffers,curdir,folds,help,tabpages,winsize,winpos,terminal")
|
||||
|
||||
(do-req :aerial :setup {:on_attach (fn [bufnr]
|
||||
(do
|
||||
(vim.keymap.set "n" "{" "<cmd>AerialPrev<CR>" { :buffer bufnr})
|
||||
(vim.keymap.set "n" "}" "<cmd>AerialNext<CR>" { :buffer bufnr})))})
|
||||
|
|
|
@ -11,47 +11,21 @@
|
|||
(= (: (: cur-line :sub col col) :match "%s")
|
||||
nil))))
|
||||
|
||||
(fn tab [fallback]
|
||||
(let [cmp (require :cmp)
|
||||
luasnip (require :luasnip)]
|
||||
(if (cmp.visible)
|
||||
(cmp.select_next_item)
|
||||
(let [available (luasnip.expand_or_jumpable)]
|
||||
(if (= (available) true)
|
||||
(luasnip.expand_or_jump)
|
||||
(if (has-words-before)
|
||||
(cmp.complete)
|
||||
(fallback)))))))
|
||||
|
||||
(fn stab [fallback]
|
||||
(let [cmp (require :cmp)
|
||||
luasnip (require :luasnip)]
|
||||
(if (cmp.visible)
|
||||
(cmp.select_prev_item)
|
||||
(let [available (luasnip.jumpable -1)]
|
||||
(if (= (available) true)
|
||||
(luasnip.jump -1)
|
||||
(if (has-words-before)
|
||||
(cmp.complete)
|
||||
(fallback)))))))
|
||||
|
||||
(let [lspkind (require :lspkind)
|
||||
luasnip_loaders (require :luasnip.loaders.from_vscode)]
|
||||
(luasnip_loaders.lazy_load)
|
||||
(cmp.setup {:formatting {:format lspkind.cmp_format}
|
||||
:snippet {:expand (fn [args]
|
||||
(let [luasnip (require :luasnip)]
|
||||
(luasnip.lsp_expand args.body)))}
|
||||
(let [lspkind (require :lspkind)]
|
||||
(cmp.setup {:formatting {:format lspkind.cmp_format
|
||||
:show_labelDetails true}
|
||||
;:snippet {:expand (fn [args]
|
||||
; (let [luasnip (require :luasnip)]
|
||||
; (luasnip.lsp_expand args.body))
|
||||
:sources [{:name "buffer"} {:name "nvim_lsp"}
|
||||
{:name "look"} {:name "path"}
|
||||
{:name "calc"} {:name "spell"}
|
||||
{:name "cmp-conjure"} {:name "luasnip"}
|
||||
{:name "tags"}]
|
||||
:mapping {"<C-d>" (cmp.mapping.scroll_docs -4)
|
||||
"<C-u>" (cmp.mapping.scroll_docs 4)
|
||||
"<Up>" (cmp.mapping (cmp.mapping.select_prev_item) [:i :c])
|
||||
"<Down>" (cmp.mapping (cmp.mapping.select_next_item) [:i :c])
|
||||
"<C-g>" (cmp.mapping.close)
|
||||
"<CR>" (cmp.mapping.confirm {:select true})
|
||||
"<Tab>" (cmp.mapping tab [:i :s])
|
||||
"<S-Tab>" (cmp.mapping stab [:i :s])}}))
|
||||
"<CR>" (cmp.mapping.confirm {:select true})}}))
|
||||
; "<Tab>" (cmp.mapping tab [:i :s])
|
||||
; "<S-Tab>" (cmp.mapping stab [:i :s])}}))
|
||||
|
|
|
@ -1,5 +1,10 @@
|
|||
; Kitaab is why I'm so tied to vim.
|
||||
; If only I could find a nice notes editor...
|
||||
|
||||
(local nvim (require :lib/nvim))
|
||||
|
||||
(import-macros {: do-req } :lib/macros)
|
||||
|
||||
(nvim.g :vimwiki_list [{:path "~/kitaab/vimwiki"
|
||||
:auto_tags 1
|
||||
:auto_diary_index 1
|
||||
|
@ -9,3 +14,22 @@
|
|||
:nix "nix"
|
||||
:bash "sh"}}])
|
||||
(nvim.g :zettel_format "%y%m%d-%H%M")
|
||||
|
||||
; Custom functions
|
||||
(fn update_date []
|
||||
(var written false)
|
||||
(let [time (os.date "%Y-%m-%d %H:%M")
|
||||
message (.. "%update " time)
|
||||
lines (vim.api.nvim_buf_get_lines 0 0 4 false)]
|
||||
(each [index line (ipairs lines)]
|
||||
(if (and (= (length line) 0) (not written))
|
||||
(do
|
||||
(vim.api.nvim_buf_set_lines 0 (- index 1) index false [message ""])
|
||||
(set written true)))
|
||||
(if (and (= index 4) (not written))
|
||||
(vim.api.nvim_buf_set_lines 0 3 index false [message])))))
|
||||
|
||||
(vim.api.nvim_create_autocmd "BufWritePre" {:pattern ["*.wiki"]
|
||||
:callback update_date})
|
||||
|
||||
(do-req :hologram :setup {:auto_display false})
|
||||
|
|
6
home/profiles/nvim/config/fnl/lib/macros.fnl
Normal file
6
home/profiles/nvim/config/fnl/lib/macros.fnl
Normal file
|
@ -0,0 +1,6 @@
|
|||
(fn do-req [mod key ...]
|
||||
`(let [name# (require ,mod)
|
||||
fun# (. name# ,key)]
|
||||
(fun# ,...)))
|
||||
|
||||
{: do-req}
|
|
@ -22,6 +22,7 @@
|
|||
{
|
||||
home.sessionVariables.EDITOR = "nvim";
|
||||
home.shellAliases = {
|
||||
vim = "nvim";
|
||||
k = "cd ~/kitaab/vimwiki; vim -c :VimwikiIndex; cd $OLDPWD";
|
||||
# kitaab zettel
|
||||
kz = "cd ~/kitaab/vimwiki; vim -c :VimwikiIndex -c :ZettelNew; cd $OLDPWD";
|
||||
|
@ -48,7 +49,6 @@
|
|||
# filetype plugin on
|
||||
|
||||
# set shortmess+=c
|
||||
# " always show signcolumns
|
||||
|
||||
# " Pasting
|
||||
# :map <leader>sy :!xclip -i<CR><CR>
|
||||
|
@ -59,22 +59,8 @@
|
|||
# lua <<EOF
|
||||
|
||||
|
||||
# local orig_util_open_floating_preview = vim.lsp.util.open_floating_preview
|
||||
# function vim.lsp.util.open_floating_preview(contents, syntax, opts, ...)
|
||||
# opts = opts or {}
|
||||
# opts.border = opts.border or 'rounded'
|
||||
# return orig_util_open_floating_preview(contents, syntax, opts, ...)
|
||||
# end
|
||||
|
||||
|
||||
# -- autopairs
|
||||
# require('nvim-autopairs').setup{}
|
||||
|
||||
# -- marks
|
||||
# require('marks').setup{}
|
||||
|
||||
# -- Setup nvim-cmp.
|
||||
|
||||
# local luasnip = require("luasnip")
|
||||
# local lspkind = require("lspkind")
|
||||
# local t = function(str)
|
||||
|
@ -85,26 +71,9 @@
|
|||
# return col == 0 or vim.fn.getline("."):sub(col, col):match("%s") ~= nil
|
||||
# end
|
||||
|
||||
# -- null-ls
|
||||
# -- being very janky
|
||||
# local null_ls = require("null-ls")
|
||||
# null_ls.setup({
|
||||
# sources = {
|
||||
# null_ls.builtins.diagnostics.shellcheck,
|
||||
# null_ls.builtins.diagnostics.proselint.with({ filetypes = { "vimwiki", "mail", }, }),
|
||||
# null_ls.builtins.diagnostics.commitlint,
|
||||
# null_ls.builtins.diagnostics.jsonlint,
|
||||
# -- null_ls.builtins.code_actions.statix,
|
||||
# -- null_ls.builtins.diagnostics.clj_kondo,
|
||||
# -- null_ls.builtins.formatting.isort,
|
||||
# -- null_ls.builtins.formatting.black,
|
||||
# },
|
||||
# })
|
||||
|
||||
# -- Setup lspconfig
|
||||
# require("lsp-format").setup {}
|
||||
# require("nvim-navic").setup {}
|
||||
# local format = require("lsp-format")
|
||||
# local navic = require("nvim-navic")
|
||||
|
||||
# -- lspsaga, code_action lightbulb is annoying
|
||||
|
@ -140,19 +109,6 @@
|
|||
# },
|
||||
# })
|
||||
|
||||
|
||||
# -- fennel-ls is bleeding edge
|
||||
# local lspconfig = require('lspconfig')
|
||||
# require("lspconfig.configs")["fennel-ls"] = {
|
||||
# default_config = {
|
||||
# cmd = {"fennel-ls"},
|
||||
# filetypes = {"fennel"},
|
||||
# root_dir = function(dir) return lspconfig.util.find_git_ancestor(dir) end,
|
||||
# settings = {}
|
||||
# }
|
||||
# }
|
||||
|
||||
|
||||
# -- fennel-ls doesn't support gps
|
||||
# lspconfig['fennel-ls'].setup {
|
||||
# on_attach = function(client, bufnr)
|
||||
|
@ -186,17 +142,6 @@
|
|||
# -- },
|
||||
# -- }
|
||||
|
||||
# require('gitsigns').setup { sign_priority=80 }
|
||||
|
||||
# -- treesitter
|
||||
# require('nvim-treesitter.configs').setup {
|
||||
# -- parser_install_dir = "~/.local/share/nvim/site/parser/",
|
||||
# -- ensure_installed={'nix', 'clojure', 'python', 'fennel', 'lua', 'html', 'css', 'regex', 'supercollider', 'beancount', 'janet'},
|
||||
# highlight = { enabled = true, additional_vim_regex_highting = true, },
|
||||
# textobjects = { enabled = true },
|
||||
# }
|
||||
# -- 'glsl' needs c++ compiler lol
|
||||
|
||||
# -- lualine
|
||||
# local navic = require("nvim-navic")
|
||||
# require('lualine').setup {
|
||||
|
@ -226,81 +171,6 @@
|
|||
# }
|
||||
# }
|
||||
|
||||
# -- nvim-lint
|
||||
# -- require('lint').linters_by_ft = {
|
||||
# -- markdown = {'vale'},
|
||||
# -- }
|
||||
|
||||
|
||||
# -- Custom functions
|
||||
# function update_date()
|
||||
# local time = os.date("%Y-%m-%d %H:%M")
|
||||
# local message = "%update " .. time
|
||||
# local lines = vim.api.nvim_buf_get_lines(0, 0,4,false)
|
||||
# for i=1,4,1 do
|
||||
# if (lines[i]:len() == 0) then
|
||||
# vim.api.nvim_buf_set_lines(0, i-1, i, false, {message, ""})
|
||||
# return
|
||||
# end
|
||||
# end
|
||||
# if (lines[4]:len() ~= 0) then
|
||||
# vim.api.nvim_buf_set_lines(0, 3, 4, false, {message})
|
||||
# end
|
||||
# return
|
||||
# end
|
||||
|
||||
# vim.api.nvim_create_autocmd(
|
||||
# "BufWritePre",
|
||||
# { pattern = { "*.wiki" }, callback = update_date}
|
||||
# )
|
||||
|
||||
# -- set spelling for text files
|
||||
# vim.api.nvim_create_autocmd(
|
||||
# { "BufRead", "BufNewFile" },
|
||||
# { pattern = { "*.wiki", "*.txt", "*.md", "*.tex" },
|
||||
# command = "setlocal spell" }
|
||||
# )
|
||||
# vim.api.nvim_create_autocmd(
|
||||
# "FileType",
|
||||
# { pattern = { "mail" },
|
||||
# command = "setlocal spell" }
|
||||
# )
|
||||
|
||||
# -- auto session
|
||||
# require('auto-session').setup {
|
||||
# log_level = 'info',
|
||||
# auto_session_suppress_dirs = {'~/'}
|
||||
# }
|
||||
# vim.o.sessionoptions="blank,buffers,curdir,folds,help,tabpages,winsize,winpos,terminal"
|
||||
|
||||
# require("which-key").setup{}
|
||||
# require('leap').set_default_keymaps()
|
||||
#
|
||||
# -- supercollider
|
||||
# local scnvim = require 'scnvim'
|
||||
# local map = scnvim.map
|
||||
# local map_expr = scnvim.map_expr
|
||||
# scnvim.setup {
|
||||
# keymaps = {
|
||||
# ['<localleader>e'] = map('editor.send_line', {'i', 'n'}),
|
||||
# ['<localleader>s'] = map_expr('CmdPeriod.run', {'i', 'n'}),
|
||||
# ['<localleader>t'] = {
|
||||
# map('editor.send_block', {'i', 'n'}),
|
||||
# map('editor.send_selection', 'x'),
|
||||
# },
|
||||
# ['<CR>'] = map('postwin.toggle'),
|
||||
# ['<M-CR>'] = map('postwin.toggle', 'i'),
|
||||
# ['<M-L>'] = map('postwin.clear', {'n', 'i'}),
|
||||
# ['<C-k>'] = map('signature.show', {'n', 'i'}),
|
||||
# ['<F12>'] = map('sclang.hard_stop', {'n', 'x', 'i'}),
|
||||
# ['<leader>st'] = map('sclang.start'),
|
||||
# ['<leader>sk'] = map('sclang.recompile'),
|
||||
# ['<F1>'] = map_expr('s.boot'),
|
||||
# ['<F2>'] = map_expr('s.meter'),
|
||||
# }
|
||||
# }
|
||||
# -- You gotta run :SCNvimGenerateAssets for this first
|
||||
# -- require("luasnip").add_snippets("supercollider", require("scnvim/utils").get_snippets())
|
||||
|
||||
# -- zen mode
|
||||
# require('zen-mode').setup{
|
||||
|
@ -347,10 +217,6 @@
|
|||
# }
|
||||
# require('twilight').setup{}
|
||||
|
||||
# -- hologram
|
||||
# require('hologram').setup{
|
||||
# auto_display = false -- WIP automatic markdown image display, may be prone to breaking
|
||||
# }
|
||||
|
||||
# EOF
|
||||
|
||||
|
@ -358,19 +224,20 @@
|
|||
extraPackages = with pkgs; [
|
||||
# used to compile tree-sitter grammar
|
||||
# python-with-my-packages
|
||||
nodejs
|
||||
clojure-lsp
|
||||
clojure
|
||||
clj-kondo
|
||||
# nodejs
|
||||
# clojure-lsp
|
||||
# clojure
|
||||
# clj-kondo
|
||||
terraform-lsp
|
||||
nil
|
||||
gopls
|
||||
gcc
|
||||
shellcheck
|
||||
proselint
|
||||
statix
|
||||
nodePackages.typescript
|
||||
nodePackages.typescript-language-server
|
||||
luajitPackages.lua-lsp
|
||||
# statix
|
||||
# nodePackages.typescript
|
||||
# nodePackages.typescript-language-server
|
||||
# luajitPackages.lua-lsp
|
||||
fennel-ls
|
||||
# starpls-bin # TODO find this!!
|
||||
];
|
||||
|
@ -386,33 +253,32 @@
|
|||
nvim-web-devicons
|
||||
telescope-nvim
|
||||
plenary-nvim
|
||||
nvim-navic
|
||||
FTerm-nvim
|
||||
barbar-nvim
|
||||
|
||||
# TODO
|
||||
# neotree
|
||||
neovim-ayu
|
||||
rainbow_parentheses-vim
|
||||
vim-surround
|
||||
undotree
|
||||
|
||||
(nvim-treesitter.withPlugins (p: [ p.nix p.clojure p.fennel p.lua p.html p.css p.regex p.supercollider p.beancount p.markdown p.glsl p.yaml p.toml p.dockerfile p.json ]))
|
||||
nvim-treesitter-context
|
||||
auto-session
|
||||
which-key-nvim
|
||||
zen-mode-nvim
|
||||
twilight-nvim
|
||||
aerial-nvim
|
||||
todo-comments-nvim
|
||||
indent-blankline-nvim
|
||||
|
||||
# TODO remove?
|
||||
vim-dasht
|
||||
# Tree sitter
|
||||
(nvim-treesitter.withPlugins (p: [ p.nix p.clojure p.fennel p.lua p.html p.css p.regex p.supercollider p.beancount p.markdown_inline p.markdown p.glsl p.yaml p.toml p.dockerfile p.json p.go ]))
|
||||
nvim-treesitter-context
|
||||
nvim-treesitter-textobjects
|
||||
|
||||
# TODO
|
||||
nvim-navic
|
||||
undotree
|
||||
marks-nvim
|
||||
|
||||
# language
|
||||
vim-nix
|
||||
emmet-vim
|
||||
csv-vim
|
||||
direnv-vim
|
||||
conjure
|
||||
# conjure
|
||||
|
||||
# kitaab stuff
|
||||
vimwiki
|
||||
|
@ -420,24 +286,20 @@
|
|||
hologram-nvim
|
||||
|
||||
# lsp stuff
|
||||
# nvim-lint
|
||||
null-ls-nvim
|
||||
nvim-lspconfig
|
||||
nvim-cmp
|
||||
cmp-nvim-lsp
|
||||
cmp-treesitter
|
||||
nvim-lsp-ts-utils
|
||||
lspsaga-nvim
|
||||
cmp-conjure
|
||||
# cmp-conjure
|
||||
cmp-buffer
|
||||
cmp-path
|
||||
cmp-spell
|
||||
nvim-autopairs
|
||||
cmp_luasnip
|
||||
luasnip
|
||||
lsp-format-nvim
|
||||
friendly-snippets
|
||||
lspkind-nvim
|
||||
conform-nvim
|
||||
none-ls-nvim
|
||||
mini-nvim
|
||||
lspsaga-nvim
|
||||
# nvim-lspfuzzy
|
||||
|
||||
# git stuff
|
||||
vim-fugitive
|
||||
|
@ -454,7 +316,7 @@
|
|||
# experimental
|
||||
nvim-luapad
|
||||
scnvim
|
||||
leap-nvim
|
||||
flash-nvim
|
||||
vim-beancount
|
||||
# vimtex
|
||||
# custom
|
||||
|
|
Loading…
Reference in a new issue