summaryrefslogtreecommitdiff
path: root/lua
diff options
context:
space:
mode:
authorchristianchiarulli <[email protected]>2021-06-30 18:45:40 -0400
committerchristianchiarulli <[email protected]>2021-06-30 18:45:40 -0400
commit9e7ad6074746a3f7d60e164be919b53ad17a33dd (patch)
tree6ccd7982f850908d317945fd8967119b298c4ffb /lua
parentd8cf871a389d9900fa21077870a817cdb6a6b47b (diff)
refactor autocommands
Diffstat (limited to 'lua')
-rw-r--r--lua/default-config.lua72
-rw-r--r--lua/lsp/go-ls.lua19
-rw-r--r--lua/lsp/init.lua7
-rw-r--r--lua/lsp/java-ls.lua9
-rw-r--r--lua/lsp/js-ts-ls.lua37
-rw-r--r--lua/lsp/json-ls.lua12
-rw-r--r--lua/lsp/lua-ls.lua16
-rw-r--r--lua/lsp/python-ls.lua34
-rw-r--r--lua/lsp/ruby-ls.lua16
-rw-r--r--lua/lsp/rust-ls.lua91
-rw-r--r--lua/lv-autocommands/init.lua138
-rw-r--r--lua/lv-dashboard/init.lua39
-rw-r--r--lua/lv-rust-tools/init.lua85
13 files changed, 282 insertions, 293 deletions
diff --git a/lua/default-config.lua b/lua/default-config.lua
index 8ba05739..8aff6f85 100644
--- a/lua/default-config.lua
+++ b/lua/default-config.lua
@@ -200,27 +200,63 @@ O = {
dashboard = {
custom_header = {
-'⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣀⣀⣀⣀⣀⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
-'⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣤⣶⣾⠿⠿⠟⠛⠛⠛⠛⠿⠿⣿⣷⣤⣄⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
-'⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⣾⡿⠋⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠙⠿⣷⣤⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
-'⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣤⡿⠛⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠛⢿⣦⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
-'⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡠⠒⠂⠉⠉⠉⠉⢩⣿⡿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠹⣷⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
-'⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠸⡀⠀⠀⠀⠀⠀⢰⣿⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⣿⣧⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
-'⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠑⠠⡀⠀⠀⢀⣾⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⡆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
-'⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠢⢀⣸⡟⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢹⣇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
-'⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⡧⢄⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
-'⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⡇⠀⠈⠁⠒⠤⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
-'⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣇⠀⠀⠀⠀⠀⠀⠉⠢⠤⠀⢀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣸⡟⠈⠑⠄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
-'⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢿⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠑⠒⠤⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⣿⡇⠀⠀⢀⣣⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
-'⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⡟⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠸⣷⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠀⠀⠒⠢⠤⠄⣀⣀⠀⠀⠀⢠⣿⡟⠀⠀⠀⣺⣿⡿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
-'⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⠇⠀⠀⠀⠀⠀⣤⡄⠀⠀⢠⣤⡄⠀⢨⣭⣠⣤⣤⣤⡀⠀⠀⢀⣤⣤⣤⣤⡄⠀⠀⠀⣤⣄⣤⣤⣤⠀⠀⣿⣯⠉⠉⣿⡟⠀⠈⢩⣭⣤⣤⠀⠀⠀⠀⣠⣤⣤⣤⣄⣤⣤⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
-'⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⣿⠀⠀⠀⠀⠀⠀⣿⠃⠀⠀⣸⣿⠁⠀⣿⣿⠉⠀⠈⣿⡇⠀⠀⠛⠋⠀⠀⢹⣿⠀⠀⠀⣿⠏⠀⠸⠿⠃⠀⣿⣿⠀⣰⡟⠀⠀⠀⠀⠀⢸⣿⠀⠀⠀⠀⣿⡟⢸⣿⡇⢀⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
-'⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣸⡇⠀⠀⠀⠀⠀⢸⣿⠀⠀⠀⣿⡟⠀⢠⣿⡇⠀⠀⢰⣿⡇⠀⣰⣾⠟⠛⠛⣻⡇⠀⠀⢸⡿⠀⠀⠀⠀⠀⠀⢻⣿⢰⣿⠀⠀⠀⠀⠀⠀⣾⡇⠀⠀⠀⢸⣿⠇⢸⣿⠀⢸⡏⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
-'⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣧⣤⣤⣤⡄⠀⠘⣿⣤⣤⡤⣿⠇⠀⢸⣿⠁⠀⠀⣼⣿⠀⠀⢿⣿⣤⣤⠔⣿⠃⠀⠀⣾⡇⠀⠀⠀⠀⠀⠀⢸⣿⣿⠋⠀⠀⠀⢠⣤⣤⣿⣥⣤⡄⠀⣼⣿⠀⣸⡏⠀⣿⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
-'⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠉⠉⠉⠉⠉⠁⠀⠀⠈⠉⠉⠀⠉⠀⠀⠈⠉⠀⠀⠀⠉⠉⠀⠀⠀⠉⠉⠁⠈⠉⠀⠀⠀⠉⠀⠀⠀⠀⠀⠀⠀⠈⠉⠉⠀⠀⠀⠀⠈⠉⠉⠉⠉⠉⠁⠀⠉⠁⠀⠉⠁⠀⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀'
+ '⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣀⣀⣀⣀⣀⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
+ '⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣤⣶⣾⠿⠿⠟⠛⠛⠛⠛⠿⠿⣿⣷⣤⣄⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
+ '⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⣾⡿⠋⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠙⠿⣷⣤⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
+ '⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣤⡿⠛⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠛⢿⣦⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
+ '⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡠⠒⠂⠉⠉⠉⠉⢩⣿⡿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠹⣷⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
+ '⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠸⡀⠀⠀⠀⠀⠀⢰⣿⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⣿⣧⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
+ '⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠑⠠⡀⠀⠀⢀⣾⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⡆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
+ '⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠢⢀⣸⡟⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢹⣇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
+ '⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⡧⢄⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
+ '⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⡇⠀⠈⠁⠒⠤⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
+ '⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣇⠀⠀⠀⠀⠀⠀⠉⠢⠤⠀⢀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣸⡟⠈⠑⠄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
+ '⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢿⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠑⠒⠤⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⣿⡇⠀⠀⢀⣣⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
+ '⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⡟⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠸⣷⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠀⠀⠒⠢⠤⠄⣀⣀⠀⠀⠀⢠⣿⡟⠀⠀⠀⣺⣿⡿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
+ '⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⠇⠀⠀⠀⠀⠀⣤⡄⠀⠀⢠⣤⡄⠀⢨⣭⣠⣤⣤⣤⡀⠀⠀⢀⣤⣤⣤⣤⡄⠀⠀⠀⣤⣄⣤⣤⣤⠀⠀⣿⣯⠉⠉⣿⡟⠀⠈⢩⣭⣤⣤⠀⠀⠀⠀⣠⣤⣤⣤⣄⣤⣤⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
+ '⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⣿⠀⠀⠀⠀⠀⠀⣿⠃⠀⠀⣸⣿⠁⠀⣿⣿⠉⠀⠈⣿⡇⠀⠀⠛⠋⠀⠀⢹⣿⠀⠀⠀⣿⠏⠀⠸⠿⠃⠀⣿⣿⠀⣰⡟⠀⠀⠀⠀⠀⢸⣿⠀⠀⠀⠀⣿⡟⢸⣿⡇⢀⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
+ '⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣸⡇⠀⠀⠀⠀⠀⢸⣿⠀⠀⠀⣿⡟⠀⢠⣿⡇⠀⠀⢰⣿⡇⠀⣰⣾⠟⠛⠛⣻⡇⠀⠀⢸⡿⠀⠀⠀⠀⠀⠀⢻⣿⢰⣿⠀⠀⠀⠀⠀⠀⣾⡇⠀⠀⠀⢸⣿⠇⢸⣿⠀⢸⡏⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
+ '⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣧⣤⣤⣤⡄⠀⠘⣿⣤⣤⡤⣿⠇⠀⢸⣿⠁⠀⠀⣼⣿⠀⠀⢿⣿⣤⣤⠔⣿⠃⠀⠀⣾⡇⠀⠀⠀⠀⠀⠀⢸⣿⣿⠋⠀⠀⠀⢠⣤⣤⣿⣥⣤⡄⠀⣼⣿⠀⣸⡏⠀⣿⠃⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀',
+ '⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠉⠉⠉⠉⠉⠁⠀⠀⠈⠉⠉⠀⠉⠀⠀⠈⠉⠀⠀⠀⠉⠉⠀⠀⠀⠉⠉⠁⠈⠉⠀⠀⠀⠉⠀⠀⠀⠀⠀⠀⠀⠈⠉⠉⠀⠀⠀⠀⠈⠉⠉⠉⠉⠉⠁⠀⠉⠁⠀⠉⠁⠀⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀'
},
footer = {'chrisatmachine.com'}
}
}
+-- TODO find a new home for these autocommands
+require('lv-utils').define_augroups({
+ _general_settings = {
+ {
+ 'TextYankPost', '*',
+ 'lua require(\'vim.highlight\').on_yank({higroup = \'Search\', timeout = 200})'
+ }, {
+ 'BufWinEnter', '*',
+ 'setlocal formatoptions-=c formatoptions-=r formatoptions-=o'
+ },
+ {
+ 'BufRead', '*',
+ 'setlocal formatoptions-=c formatoptions-=r formatoptions-=o'
+ }, {
+ 'BufNewFile', '*',
+ 'setlocal formatoptions-=c formatoptions-=r formatoptions-=o'
+ }, {'VimLeavePre', '*', 'set title set titleold='},
+ {'FileType', 'qf', 'set nobuflisted'}
+ },
+ -- _solidity = {
+ -- {'BufWinEnter', '.sol', 'setlocal filetype=solidity'}, {'BufRead', '*.sol', 'setlocal filetype=solidity'},
+ -- {'BufNewFile', '*.sol', 'setlocal filetype=solidity'}
+ -- },
+ -- _gemini = {
+ -- {'BufWinEnter', '.gmi', 'setlocal filetype=markdown'}, {'BufRead', '*.gmi', 'setlocal filetype=markdown'},
+ -- {'BufNewFile', '*.gmi', 'setlocal filetype=markdown'}
+ -- },
+ _markdown = {
+ {'FileType', 'markdown', 'setlocal wrap'},
+ {'FileType', 'markdown', 'setlocal spell'}
+ },
+ _buffer_bindings = {
+ {'FileType', 'floaterm', 'nnoremap <silent> <buffer> q :q<CR>'}
+ }
+})
+
diff --git a/lua/lsp/go-ls.lua b/lua/lsp/go-ls.lua
index 201873a8..4af87a9d 100644
--- a/lua/lsp/go-ls.lua
+++ b/lua/lsp/go-ls.lua
@@ -1,7 +1,22 @@
-require'lspconfig'.gopls.setup{
+require'lspconfig'.gopls.setup {
cmd = {DATA_PATH .. "/lspinstall/go/gopls"},
settings = {gopls = {analyses = {unusedparams = true}, staticcheck = true}},
- root_dir = require'lspconfig'.util.root_pattern(".git","go.mod"),
+ root_dir = require'lspconfig'.util.root_pattern(".git", "go.mod"),
init_options = {usePlaceholders = true, completeUnimported = true},
on_attach = require'lsp'.common_on_attach
}
+
+if O.lang.go.autoformat then
+ require('lv-utils').define_augroups({
+ _go_format = {
+ 'BufWritePre', '*.go', 'lua vim.lsp.buf.formatting_sync(nil,1000)'
+ },
+ _go = {
+ -- Go generally requires Tabs instead of spaces.
+ {'FileType', 'go', 'setlocal tabstop=4'},
+ {'FileType', 'go', 'setlocal shiftwidth=4'},
+ {'FileType', 'go', 'setlocal softtabstop=4'},
+ {'FileType', 'go', 'setlocal noexpandtab'}
+ }
+ })
+end
diff --git a/lua/lsp/init.lua b/lua/lsp/init.lua
index ef2e2f9b..367aefba 100644
--- a/lua/lsp/init.lua
+++ b/lua/lsp/init.lua
@@ -111,6 +111,13 @@ function lsp_config.tsserver_on_attach(client, bufnr)
client.resolved_capabilities.document_formatting = false
end
+
+require('lv-utils').define_augroups({
+ _general_lsp = {
+ {'FileType', 'lspinfo', 'nnoremap <silent> <buffer> q :q<CR>'},
+ }
+})
+
-- Use a loop to conveniently both setup defined servers
-- and map buffer local keybindings when the language server attaches
-- local servers = {"pyright", "tsserver"}
diff --git a/lua/lsp/java-ls.lua b/lua/lsp/java-ls.lua
index 90985ff4..0b151b66 100644
--- a/lua/lsp/java-ls.lua
+++ b/lua/lsp/java-ls.lua
@@ -39,3 +39,12 @@ require'lspconfig'.jdtls.setup {
-- root_dir = require('jdtls.setup').find_root({'build.gradle', 'pom.xml', '.git'}),
-- init_options = {bundles = bundles}
-- })
+
+-- TODO setup autoformat stuff later
+ -- _java = {
+ -- -- {'FileType', 'java', 'luafile '..CONFIG_PATH..'/lua/lsp/java-ls.lua'},
+ -- {
+ -- 'FileType', 'java',
+ -- 'nnoremap ca <Cmd>lua require(\'jdtls\').code_action()<CR>'
+ -- }
+ -- }
diff --git a/lua/lsp/js-ts-ls.lua b/lua/lsp/js-ts-ls.lua
index 94e1b72d..0006dab7 100644
--- a/lua/lsp/js-ts-ls.lua
+++ b/lua/lsp/js-ts-ls.lua
@@ -7,17 +7,27 @@
-- require'completion'.on_attach(client)
-- require'illuminate'.on_attach(client)
-- end
-
require'lspconfig'.tsserver.setup {
- cmd = {DATA_PATH .. "/lspinstall/typescript/node_modules/.bin/typescript-language-server", "--stdio"},
- filetypes = { "javascript", "javascriptreact", "javascript.jsx", "typescript", "typescriptreact", "typescript.tsx" },
+ cmd = {
+ DATA_PATH ..
+ "/lspinstall/typescript/node_modules/.bin/typescript-language-server",
+ "--stdio"
+ },
+ filetypes = {
+ "javascript", "javascriptreact", "javascript.jsx", "typescript",
+ "typescriptreact", "typescript.tsx"
+ },
on_attach = require'lsp'.tsserver_on_attach,
-- This makes sure tsserver is not used for formatting (I prefer prettier)
-- on_attach = require'lsp'.common_on_attach,
- root_dir = require('lspconfig/util').root_pattern("package.json", "tsconfig.json", "jsconfig.json", ".git"),
+ root_dir = require('lspconfig/util').root_pattern("package.json",
+ "tsconfig.json",
+ "jsconfig.json", ".git"),
settings = {documentFormatting = false},
handlers = {
- ["textDocument/publishDiagnostics"] = vim.lsp.with(vim.lsp.diagnostic.on_publish_diagnostics, {
+ ["textDocument/publishDiagnostics"] = vim.lsp.with(vim.lsp.diagnostic
+ .on_publish_diagnostics,
+ {
virtual_text = O.lang.tsserver.diagnostics.virtual_text,
signs = O.lang.tsserver.diagnostics.signs,
underline = O.lang.tsserver.diagnostics.underline,
@@ -26,3 +36,20 @@ require'lspconfig'.tsserver.setup {
})
}
}
+
+if O.lang.tsserver.autoformat then
+ require('lv-utils').define_augroups({
+ _javascript_autoformat = {
+ 'BufWritePre', '*.js', 'lua vim.lsp.buf.formatting_sync(nil, 1000)'
+ },
+ _javascriptreact_autoformat = {
+ 'BufWritePre', '*.jsx', 'lua vim.lsp.buf.formatting_sync(nil, 1000)'
+ },
+ _typescript_autoformat = {
+ 'BufWritePre', '*.ts', 'lua vim.lsp.buf.formatting_sync(nil, 1000)'
+ },
+ _typescriptreact_autoformat = {
+ 'BufWritePre', '*.tsx', 'lua vim.lsp.buf.formatting_sync(nil, 1000)'
+ }
+ })
+end
diff --git a/lua/lsp/json-ls.lua b/lua/lsp/json-ls.lua
index 952673ac..7d3c3716 100644
--- a/lua/lsp/json-ls.lua
+++ b/lua/lsp/json-ls.lua
@@ -1,7 +1,8 @@
-- npm install -g vscode-json-languageserver
require'lspconfig'.jsonls.setup {
cmd = {
- "node", DATA_PATH .. "/lspinstall/json/vscode-json/json-language-features/server/dist/node/jsonServerMain.js",
+ "node", DATA_PATH ..
+ "/lspinstall/json/vscode-json/json-language-features/server/dist/node/jsonServerMain.js",
"--stdio"
},
on_attach = require'lsp'.common_on_attach,
@@ -14,3 +15,12 @@ require'lspconfig'.jsonls.setup {
}
}
}
+
+if O.lang.json.autoformat then
+ require('lv-utils').define_augroups({
+ _json_format = {
+ 'BufWritePre', '*.json',
+ 'lua vim.lsp.buf.formatting_sync(nil, 1000)'
+ }
+ })
+end
diff --git a/lua/lsp/lua-ls.lua b/lua/lsp/lua-ls.lua
index 775eb92f..4257605f 100644
--- a/lua/lsp/lua-ls.lua
+++ b/lua/lsp/lua-ls.lua
@@ -19,9 +19,23 @@ require'lspconfig'.sumneko_lua.setup {
},
workspace = {
-- Make the server aware of Neovim runtime files
- library = {[vim.fn.expand('$VIMRUNTIME/lua')] = true, [vim.fn.expand('$VIMRUNTIME/lua/vim/lsp')] = true},
+ library = {
+ [vim.fn.expand('$VIMRUNTIME/lua')] = true,
+ [vim.fn.expand('$VIMRUNTIME/lua/vim/lsp')] = true
+ },
maxPreload = 10000
}
}
}
}
+if O.lang.lua.autoformat then
+ require('lv-utils').define_augroups({
+ _lua_autoformat = {
+ {
+ 'BufWritePre', '*.lua',
+ 'lua vim.lsp.buf.formatting_sync(nil, 1000)'
+ }
+ }
+ })
+end
+
diff --git a/lua/lsp/python-ls.lua b/lua/lsp/python-ls.lua
index 7ffcbb25..e2ccf42e 100644
--- a/lua/lsp/python-ls.lua
+++ b/lua/lsp/python-ls.lua
@@ -1,22 +1,38 @@
-- npm i -g pyright
require'lspconfig'.pyright.setup {
- cmd = {DATA_PATH .. "/lspinstall/python/node_modules/.bin/pyright-langserver", "--stdio"},
+ cmd = {
+ DATA_PATH .. "/lspinstall/python/node_modules/.bin/pyright-langserver",
+ "--stdio"
+ },
on_attach = require'lsp'.common_on_attach,
handlers = {
- ["textDocument/publishDiagnostics"] = vim.lsp.with(vim.lsp.diagnostic.on_publish_diagnostics, {
+ ["textDocument/publishDiagnostics"] = vim.lsp.with(vim.lsp.diagnostic
+ .on_publish_diagnostics,
+ {
virtual_text = O.lang.python.diagnostics.virtual_text,
signs = O.lang.python.diagnostics.signs,
underline = O.lang.python.diagnostics.underline,
update_in_insert = true
})
},
- settings = {
- python = {
- analysis = {
- typeCheckingMode = O.lang.python.analysis.type_checking,
- autoSearchPaths = O.lang.python.analysis.auto_search_paths,
- useLibraryCodeForTypes = O.lang.python.analysis.use_library_code_types
+ settings = {
+ python = {
+ analysis = {
+ typeCheckingMode = O.lang.python.analysis.type_checking,
+ autoSearchPaths = O.lang.python.analysis.auto_search_paths,
+ useLibraryCodeForTypes = O.lang.python.analysis
+ .use_library_code_types
+ }
}
- }
}
}
+if O.lang.python.autoformat then
+ require('lv-utils').define_augroups({
+ _python_autoformat = {
+ {
+ 'BufWritePre', '*.py',
+ 'lua vim.lsp.buf.formatting_sync(nil, 1000)'
+ }
+ }
+ })
+end
diff --git a/lua/lsp/ruby-ls.lua b/lua/lsp/ruby-ls.lua
index 079616b1..960b220a 100644
--- a/lua/lsp/ruby-ls.lua
+++ b/lua/lsp/ruby-ls.lua
@@ -1,9 +1,11 @@
-- If you are using rvm, make sure to change below configuration
require'lspconfig'.solargraph.setup {
- cmd = { DATA_PATH .. "/lspinstall/ruby/solargraph/solargraph", "--stdio" },
+ cmd = {DATA_PATH .. "/lspinstall/ruby/solargraph/solargraph", "--stdio"},
on_attach = require'lsp'.common_on_attach,
handlers = {
- ["textDocument/publishDiagnostics"] = vim.lsp.with(vim.lsp.diagnostic.on_publish_diagnostics, {
+ ["textDocument/publishDiagnostics"] = vim.lsp.with(vim.lsp.diagnostic
+ .on_publish_diagnostics,
+ {
virtual_text = O.lang.ruby.diagnostics.virtual_text,
signs = O.lang.ruby.diagnostics.signs,
underline = O.lang.ruby.diagnostics.underline,
@@ -11,5 +13,13 @@ require'lspconfig'.solargraph.setup {
})
},
- filetypes = O.lang.ruby.filetypes,
+ filetypes = O.lang.ruby.filetypes
}
+
+if O.lang.ruby.autoformat then
+ require('lv-utils').define_augroups({
+ _ruby_format = {
+ 'BufWritePre', '*.rb', 'lua vim.lsp.buf.formatting_sync(nil,1000)'
+ }
+ })
+end
diff --git a/lua/lsp/rust-ls.lua b/lua/lsp/rust-ls.lua
index e08ebb08..22f66f2d 100644
--- a/lua/lsp/rust-ls.lua
+++ b/lua/lsp/rust-ls.lua
@@ -1,6 +1,87 @@
--- the rust-tools plugin will configure this automatically
---require'lspconfig'.rust_analyzer.setup{
--- cmd = {DATA_PATH .. "/lspinstall/rust/rust-analyzer"},
--- on_attach = require'lsp'.common_on_attach
---}
+local opts = {
+ tools = { -- rust-tools options
+ -- automatically set inlay hints (type hints)
+ -- There is an issue due to which the hints are not applied on the first
+ -- opened file. For now, write to the file to trigger a reapplication of
+ -- the hints or just run :RustSetInlayHints.
+ -- default: true
+ autoSetHints = true,
+
+ -- whether to show hover actions inside the hover window
+ -- this overrides the default hover handler
+ -- default: true
+ hover_with_actions = true,
+
+ runnables = {
+ -- whether to use telescope for selection menu or not
+ -- default: true
+ use_telescope = true
+
+ -- rest of the opts are forwarded to telescope
+ },
+
+ inlay_hints = {
+ -- wheter to show parameter hints with the inlay hints or not
+ -- default: true
+ show_parameter_hints = true,
+
+ -- prefix for parameter hints
+ -- default: "<-"
+ parameter_hints_prefix = "<-",
+
+ -- prefix for all the other hints (type, chaining)
+ -- default: "=>"
+ other_hints_prefix = "=>",
+
+ -- whether to align to the lenght of the longest line in the file
+ max_len_align = false,
+
+ -- padding from the left if max_len_align is true
+ max_len_align_padding = 1,
+
+ -- whether to align to the extreme right or not
+ right_align = false,
+
+ -- padding from the right if right_align is true
+ right_align_padding = 7
+ },
+
+ hover_actions = {
+ -- the border that is used for the hover window
+ -- see vim.api.nvim_open_win()
+ border = {
+ {"╭", "FloatBorder"}, {"─", "FloatBorder"},
+ {"╮", "FloatBorder"}, {"│", "FloatBorder"},
+ {"╯", "FloatBorder"}, {"─", "FloatBorder"},
+ {"╰", "FloatBorder"}, {"│", "FloatBorder"}
+ }
+ }
+ },
+
+ -- all the opts to send to nvim-lspconfig
+ -- these override the defaults set by rust-tools.nvim
+ -- see https://github.com/neovim/nvim-lspconfig/blob/master/CONFIG.md#rust_analyzer
+ server = {
+ cmd = {DATA_PATH .. "/lspinstall/rust/rust-analyzer"},
+ on_attach = require'lsp'.common_on_attach
+ } -- rust-analyser options
+}
+
+require('rust-tools').setup(opts)
+
+-- TODO add this later
+vim.api.nvim_exec([[
+ autocmd Filetype rust nnoremap <leader>lm <Cmd>RustExpandMacro<CR>
+ autocmd Filetype rust nnoremap <leader>lH <Cmd>RustToggleInlayHints<CR>
+ autocmd Filetype rust nnoremap <leader>le <Cmd>RustRunnables<CR>
+ autocmd Filetype rust nnoremap <leader>lh <Cmd>RustHoverActions<CR>
+ ]], true)
+
+if O.lang.rust.autoformat then
+ require('lv-utils').define_augroups({
+ _rust_format = {
+ 'BufWritePre', '*.rs', 'lua vim.lsp.buf.formatting_sync(nil,1000)'
+ }
+ })
+end
diff --git a/lua/lv-autocommands/init.lua b/lua/lv-autocommands/init.lua
deleted file mode 100644
index 0026690b..00000000
--- a/lua/lv-autocommands/init.lua
+++ /dev/null
@@ -1,138 +0,0 @@
--- TODO when autocommands are better in lua, scope these to plugins and langs
-local utils = require('lv-utils')
-
-local auto_formatters = {}
-
-if O.lang.python.active then
- local python_autoformat = {
- 'BufWritePre', '*.py', 'lua vim.lsp.buf.formatting_sync(nil, 1000)'
- }
- if O.lang.python.autoformat then
- table.insert(auto_formatters, python_autoformat)
- end
-end
-
-if O.lang.tsserver.active then
- local javascript_autoformat = {
- 'BufWritePre', '*.js', 'lua vim.lsp.buf.formatting_sync(nil, 1000)'
- }
- local javascriptreact_autoformat = {
- 'BufWritePre', '*.jsx', 'lua vim.lsp.buf.formatting_sync(nil, 1000)'
- }
- local typescript_autoformat = {
- 'BufWritePre', '*.ts', 'lua vim.lsp.buf.formatting_sync(nil, 1000)'
- }
- local typescriptreact_autoformat = {
- 'BufWritePre', '*.tsx', 'lua vim.lsp.buf.formatting_sync(nil, 1000)'
- }
- if O.lang.tsserver.autoformat then
- table.insert(auto_formatters, javascript_autoformat)
- table.insert(auto_formatters, javascriptreact_autoformat)
- table.insert(auto_formatters, typescript_autoformat)
- table.insert(auto_formatters, typescriptreact_autoformat)
- end
-end
-
-if O.lang.lua.active then
- local lua_format = {
- 'BufWritePre', '*.lua', 'lua vim.lsp.buf.formatting_sync(nil, 1000)'
- }
- if O.lang.lua.autoformat then table.insert(auto_formatters, lua_format) end
-end
-
-if O.lang.json.active then
- local json_format = {
- 'BufWritePre', '*.json', 'lua vim.lsp.buf.formatting_sync(nil, 1000)'
- }
- if O.lang.json.autoformat then table.insert(auto_formatters, json_format) end
-end
-
-if O.lang.ruby.active then
- local ruby_format = {
- 'BufWritePre', '*.rb', 'lua vim.lsp.buf.formatting_sync(nil,1000)'
- }
- if O.lang.ruby.autoformat then table.insert(auto_formatters, ruby_format) end
-end
-
-if O.lang.go.active then
- local go_format = {
- 'BufWritePre', '*.go', 'lua vim.lsp.buf.formatting_sync(nil,1000)'
- }
- if O.lang.go.autoformat then table.insert(auto_formatters, go_format) end
-end
-
-if O.lang.rust.active then
- local rust_format = {
- 'BufWritePre', '*.rs', 'lua vim.lsp.buf.formatting_sync(nil,1000)'
- }
- if O.lang.rust.autoformat then table.insert(auto_formatters, rust_format) end
-end
-
-utils.define_augroups({
- _general_settings = {
- {
- 'TextYankPost', '*',
- 'lua require(\'vim.highlight\').on_yank({higroup = \'Search\', timeout = 200})'
- }, {
- 'BufWinEnter', '*',
- 'setlocal formatoptions-=c formatoptions-=r formatoptions-=o'
- },
- {
- 'BufRead', '*',
- 'setlocal formatoptions-=c formatoptions-=r formatoptions-=o'
- }, {
- 'BufNewFile', '*',
- 'setlocal formatoptions-=c formatoptions-=r formatoptions-=o'
- }, {'VimLeavePre', '*', 'set title set titleold='},
- {'FileType', 'qf', 'set nobuflisted'},
- -- {'BufWinEnter', 'lv-config.lua', 'PackerCompile'},
- -- {'BufWinLeave', 'lv-config.lua', 'PackerCompile'},
- -- {'BufWritePost', 'lv-config.lua', 'PackerCompile'}
-
- -- {'User', 'GoyoLeave', 'lua require(\'galaxyline\').disable_galaxyline()'},
- -- {'User', 'GoyoEnter', 'lua require(\'galaxyline\').galaxyline_augroup()'},
- },
- _java = {
- -- {'FileType', 'java', 'luafile '..CONFIG_PATH..'/lua/lsp/java-ls.lua'},
- {
- 'FileType', 'java',
- 'nnoremap ca <Cmd>lua require(\'jdtls\').code_action()<CR>'
- }
- },
-
- _go = {
- -- Go generally requires Tabs instead of spaces.
- {'FileType', 'go', 'setlocal tabstop=4'},
- {'FileType', 'go', 'setlocal shiftwidth=4'},
- {'FileType', 'go', 'setlocal softtabstop=4'},
- {'FileType', 'go', 'setlocal noexpandtab'}
- },
- _dashboard = {
- -- seems to be nobuflisted that makes my stuff disapear will do more testing
- {
- 'FileType', 'dashboard',
- 'setlocal nocursorline noswapfile synmaxcol& signcolumn=no norelativenumber nocursorcolumn nospell nolist nonumber bufhidden=wipe colorcolumn= foldcolumn=0 matchpairs= '
- }, {
- 'FileType', 'dashboard',
- 'set showtabline=0 | autocmd BufLeave <buffer> set showtabline=2'
- }
- },
- _markdown = {
- {'FileType', 'markdown', 'setlocal wrap'},
- {'FileType', 'markdown', 'setlocal spell'}
- },
- -- _solidity = {
- -- {'BufWinEnter', '.sol', 'setlocal filetype=solidity'}, {'BufRead', '*.sol', 'setlocal filetype=solidity'},
- -- {'BufNewFile', '*.sol', 'setlocal filetype=solidity'}
- -- },
- -- _gemini = {
- -- {'BufWinEnter', '.gmi', 'setlocal filetype=markdown'}, {'BufRead', '*.gmi', 'setlocal filetype=markdown'},
- -- {'BufNewFile', '*.gmi', 'setlocal filetype=markdown'}
- -- },
- _buffer_bindings = {
- {'FileType', 'dashboard', 'nnoremap <silent> <buffer> q :q<CR>'},
- {'FileType', 'lspinfo', 'nnoremap <silent> <buffer> q :q<CR>'},
- {'FileType', 'floaterm', 'nnoremap <silent> <buffer> q :q<CR>'}
- },
- _auto_formatters = auto_formatters
-})
diff --git a/lua/lv-dashboard/init.lua b/lua/lv-dashboard/init.lua
index 6e619033..0a86da5c 100644
--- a/lua/lv-dashboard/init.lua
+++ b/lua/lv-dashboard/init.lua
@@ -1,24 +1,6 @@
local M = {}
M.config = function()
- -- vim.g.dashboard_custom_header = {
- -- '███╗ ██╗██╗ ██╗ ██████╗ ██████╗ ██████╗ ███████╗',
- -- '████╗ ██║██║ ██║██╔════╝██╔═══██╗██╔══██╗██╔════╝',
- -- '██╔██╗ ██║██║ ██║██║ ██║ ██║██║ ██║█████╗',
- -- '██║╚██╗██║╚██╗ ██╔╝██║ ██║ ██║██║ ██║██╔══╝',
- -- '██║ ╚████║ ╚████╔╝ ╚██████╗╚██████╔╝██████╔╝███████╗',
- -- '╚═╝ ╚═══╝ ╚═══╝ ╚═════╝ ╚═════╝ ╚═════╝ ╚══════╝'
- -- }
- -- vim.g.dashboard_custom_header = {
- --
- -- ' _..._ ',
- -- ' .\' `. ██  ██  ██ ███  ██  █████  ██████  ██  ██ ██ ███  ███ ',
- -- ' : : ██  ██  ██ ████  ██ ██   ██ ██   ██ ██  ██ ██ ████  ████ ',
- -- ' : : ██  ██  ██ ██ ██  ██ ███████ ██████  ██  ██ ██ ██ ████ ██ ',
- -- ' `. .\' ██  ██  ██ ██  ██ ██ ██   ██ ██   ██  ██  ██  ██ ██  ██  ██ ',
- -- ' `-...-\' ███████  ██████  ██   ████ ██  ██ ██  ██   ████   ██ ██      ██ ',
- --
- -- }
vim.g.dashboard_disable_at_vimenter = 0
vim.g.dashboard_custom_header = O.dashboard.custom_header
@@ -55,17 +37,22 @@ M.config = function()
-- file_browser = {description = {' File Browser'}, command = 'Telescope find_files'},
- -- vim.g.dashboard_custom_shortcut = {
- -- a = 'f',
- -- find_word = 'SPC f a',
- -- last_session = 'SPC s l',
- -- new_file = 'SPC c n',
- -- book_marks = 'SPC f b'
- -- }
- -- find_history = 'SPC f h',
-- vim.g.dashboard_session_directory = CACHE_PATH..'/session'
vim.g.dashboard_custom_footer = O.dashboard.footer
end
+require('lv-utils').define_augroups({
+ _dashboard = {
+ -- seems to be nobuflisted that makes my stuff disapear will do more testing
+ {
+ 'FileType', 'dashboard',
+ 'setlocal nocursorline noswapfile synmaxcol& signcolumn=no norelativenumber nocursorcolumn nospell nolist nonumber bufhidden=wipe colorcolumn= foldcolumn=0 matchpairs= '
+ }, {
+ 'FileType', 'dashboard',
+ 'set showtabline=0 | autocmd BufLeave <buffer> set showtabline=2'
+ }, {'FileType', 'dashboard', 'nnoremap <silent> <buffer> q :q<CR>'}
+ }
+})
+
return M
diff --git a/lua/lv-rust-tools/init.lua b/lua/lv-rust-tools/init.lua
deleted file mode 100644
index c0443875..00000000
--- a/lua/lv-rust-tools/init.lua
+++ /dev/null
@@ -1,85 +0,0 @@
-local opts = {
- tools = { -- rust-tools options
- -- automatically set inlay hints (type hints)
- -- There is an issue due to which the hints are not applied on the first
- -- opened file. For now, write to the file to trigger a reapplication of
- -- the hints or just run :RustSetInlayHints.
- -- default: true
- autoSetHints = true,
-
- -- whether to show hover actions inside the hover window
- -- this overrides the default hover handler
- -- default: true
- hover_with_actions = true,
-
- runnables = {
- -- whether to use telescope for selection menu or not
- -- default: true
- use_telescope = true
-
- -- rest of the opts are forwarded to telescope
- },
-
- inlay_hints = {
- -- wheter to show parameter hints with the inlay hints or not
- -- default: true
- show_parameter_hints = true,
-
- -- prefix for parameter hints
- -- default: "<-"
- parameter_hints_prefix = "<-",
-
- -- prefix for all the other hints (type, chaining)
- -- default: "=>"
- other_hints_prefix = "=>",
-
- -- whether to align to the lenght of the longest line in the file
- max_len_align = false,
-
- -- padding from the left if max_len_align is true
- max_len_align_padding = 1,
-
- -- whether to align to the extreme right or not
- right_align = false,
-
- -- padding from the right if right_align is true
- right_align_padding = 7,
- },
-
- hover_actions = {
- -- the border that is used for the hover window
- -- see vim.api.nvim_open_win()
- border = {
- {"╭", "FloatBorder"},
- {"─", "FloatBorder"},
- {"╮", "FloatBorder"},
- {"│", "FloatBorder"},
- {"╯", "FloatBorder"},
- {"─", "FloatBorder"},
- {"╰", "FloatBorder"},
- {"│", "FloatBorder"}
- },
- }
- },
-
- -- all the opts to send to nvim-lspconfig
- -- these override the defaults set by rust-tools.nvim
- -- see https://github.com/neovim/nvim-lspconfig/blob/master/CONFIG.md#rust_analyzer
- server = {
- cmd = {DATA_PATH .. "/lspinstall/rust/rust-analyzer"},
- on_attach = require'lsp'.common_on_attach
- }, -- rust-analyser options
-}
-
-
-require('rust-tools').setup(opts)
-
-vim.api.nvim_exec(
- [[
- autocmd Filetype rust nnoremap <leader>lm <Cmd>RustExpandMacro<CR>
- autocmd Filetype rust nnoremap <leader>lH <Cmd>RustToggleInlayHints<CR>
- autocmd Filetype rust nnoremap <leader>le <Cmd>RustRunnables<CR>
- autocmd Filetype rust nnoremap <leader>lh <Cmd>RustHoverActions<CR>
- ]], true)
-
-