67 Commits

Author SHA1 Message Date
65abac9adb Add fuzzy code search 2025-11-07 19:53:57 +01:00
22139468f9 Add .luarc.json 2025-11-07 19:53:32 +01:00
1a00736e35 nvim: Add lsp files; Update plugins 2025-10-28 15:59:16 +01:00
b9f7601210 nvim: Change telescope keymaps 2025-10-28 14:07:54 +01:00
42c0ee17ab nvim: Add TodoTroube keymap (xt) 2025-10-28 14:07:01 +01:00
a29e798b3a nvim: Code style 2025-10-28 14:06:37 +01:00
448bb7a748 nvim: Add grr keymap 2025-10-28 14:06:22 +01:00
fccfac8e73 Change sway keyboard layout 2025-10-28 14:05:59 +01:00
2fb9f3f9e6 nvim: Fix LSP formatting messing up alternate file 2025-07-25 15:00:06 -04:00
6f1910c323 Add pytorch to win+p python window 2025-07-25 14:57:55 -04:00
2fd4ea36cc Add csvview plugin 2025-07-25 14:57:47 -04:00
b433bf4f67 Add mdformat-myst formatter as lsp 2025-07-25 10:17:09 -04:00
2dbc45f106 nvim: Add gd keyboard shortcut 2025-07-25 10:16:44 -04:00
c8a8f61a9f nvim: Add texlab LSP; Clean up ruff config 2025-06-26 10:30:30 -04:00
d95aefb166 nvim: Fix LSP tab/enter; Fix multi-LSP formatting; Add ruff and neocmakelsp 2025-06-26 00:20:42 -04:00
17b700c910 Remove exisint lsp config; Start adding LSPs with new config 2025-06-18 10:10:58 -04:00
b963d7746e nvim: Update plugins 2025-06-17 22:15:51 -04:00
067c6aa2ee nvim: Change formatter config 2025-06-17 22:15:04 -04:00
de6447fe19 nvim: Comment out matlab lsp config 2025-06-17 22:14:10 -04:00
516b187060 nvim: Disable copilot by default 2025-06-17 22:13:04 -04:00
7cfdf63c01 nvim: Reenable pastify with different keymap 2025-06-17 22:12:23 -04:00
192b290e4a nvim: Change markdown_preview build process 2025-06-17 22:11:51 -04:00
3c76341341 nvim: Remove nvim-tree; Add oil.nvim 2025-06-17 22:10:58 -04:00
efeca2ff10 nvim: Fix overseer task name 2025-06-17 22:10:23 -04:00
c7819c793f nvim: Enable exrc 2025-06-17 22:08:48 -04:00
d9671f74c7 Add latex snippets 2025-06-17 22:08:34 -04:00
b56400c12c sway: Enable dwt; Change workspace names; Change workspace display naming 2025-06-17 22:07:41 -04:00
7472a05642 Add nvim QQ remap 2025-06-17 22:07:10 -04:00
ed605f580e Remove Kinemic screen config, add Bell labs 2025-06-17 22:05:24 -04:00
2e0cc89584 Change source paths in zshrc 2025-06-17 22:04:53 -04:00
300a13d443 nvim: Update plugins 2025-03-10 09:04:34 +01:00
fa809f6273 nvim: Remove killersheep plugin 2025-03-10 09:03:17 +01:00
4bc2809648 nvim: Add avante and pastify to disabled_plugins 2025-03-10 09:03:00 +01:00
ac9058d3e3 nvim: Modify jupyter notebook config 2025-03-10 09:02:07 +01:00
99fc6ec017 nvim: Remove barbecue plugin 2025-03-10 09:01:03 +01:00
3955038a6a nvim: Add markdown-toc plugin 2025-03-10 08:59:47 +01:00
76266a78a6 zathura: Add config 2025-03-10 08:56:31 +01:00
b44abad337 Add flashfocus and sway window transparency 2025-03-10 08:55:32 +01:00
373651b9ee kanshi: Remove non working options from config 2025-03-10 08:48:07 +01:00
72fb89da48 kitty: Disable transparent background 2025-03-10 08:47:31 +01:00
522c655086 nvim: Make recording indicator visible 2025-03-10 08:45:37 +01:00
0756d4281c Make zathura default vimtex viewer 2025-03-10 08:43:27 +01:00
ffb8c5a5f0 Change neovim c++ comment string 2025-03-10 08:42:51 +01:00
a897ada9b5 Disable touchpad drag lock 2025-03-10 08:42:33 +01:00
0f2979d97f Add allow-passthrough option to tmux config 2025-03-10 08:42:03 +01:00
144212e33e Add/modify zsh aliases 2025-03-10 08:39:41 +01:00
e63a60efca Change copilot to lua version; Change zsh completion shortcut 2025-01-14 03:00:32 +01:00
1ad8d13b23 zsh: Change zsh-autosuggestions.zsh path 2024-10-17 04:44:07 +02:00
62c556f898 sway: Change i3-msg to swaymsg in config 2024-10-17 04:43:00 +02:00
85d2139be6 Specify font in kitty config 2024-10-17 04:42:32 +02:00
e4c6d3b5a4 Add papis config 2024-10-16 20:40:54 +02:00
4037fe4c36 nvim: Update plugins 2024-10-16 17:44:49 +02:00
ec628cd17f Add kanshi config 2024-10-16 17:39:33 +02:00
c54fe574c0 Add 'lazy=false' in auto_session conf 2024-10-16 17:35:30 +02:00
b9eed4c40f nvim: Add time tracker plugin 2024-10-16 17:20:02 +02:00
d1f835ff1c Update whichkey config to new version 2024-10-16 17:14:35 +02:00
9b2d29a3a3 Add matlab path to lsp config 2024-10-16 17:13:12 +02:00
13a9467abd Remove duplicate keymap 2024-10-16 17:12:42 +02:00
2c87ad3a67 Add custom mason registry 2024-10-16 17:12:31 +02:00
44395835e6 Format changes 2024-10-16 17:11:35 +02:00
3e5ad2225a change neoformat markdown spec 2024-10-16 16:50:32 +02:00
8d6c988661 Change clang format 2024-10-16 16:48:08 +02:00
156e36053e Make Release default version in overseer cmake action 2024-10-16 16:47:50 +02:00
f2d9534fba Change trouble symbol list width 2024-10-16 16:47:16 +02:00
83b264f678 Remove useless keymap 2024-10-16 16:45:46 +02:00
18aa4bc748 Fix waybar clock 2024-10-16 16:45:17 +02:00
b4b1e5cdf7 Add zsh completion 2024-10-16 16:44:53 +02:00
55 changed files with 912 additions and 449 deletions

View File

@@ -3,6 +3,6 @@
## Usage ## Usage
```bash ```bash
$ stow -S clang-format kitty nvim sway tmux waybar wofi zsh $ stow -S clang-format kitty nvim sway tmux waybar wofi zsh kanshi papis flashfocus zathura
``` ```

View File

@@ -9,6 +9,7 @@ PointerAlignment: Left
AccessModifierOffset: -4 AccessModifierOffset: -4
AlwaysBreakTemplateDeclarations: true AlwaysBreakTemplateDeclarations: true
LambdaBodyIndentation: Signature LambdaBodyIndentation: Signature
AllowShortLambdasOnASingleLine: None
MaxEmptyLinesToKeep: 3 MaxEmptyLinesToKeep: 3
#ColumnLimit: 128 #ColumnLimit: 128

View File

@@ -0,0 +1,99 @@
## @@@@@@@@@@@@@@@@@@@@@@
## Flashfocus config file
## @@@@@@@@@@@@@@@@@@@@@@
# Opacity of window during flash.
flash-opacity: 0.8
# Windows are restored to this opacity value at the end of a flash.
default-opacity: 1
# Length of flash in milliseconds.
time: 500
# If true, flashes are not faded out. This will improve performance but flashes
# won't be smooth.
simple: false
# Number of animation frames in a flash.
ntimepoints: 10
# Set this to false if you don't want windows to flash on focus.
flash-on-focus: true
# Set this to false if you don't want fullscreen windows to flash.
flash-fullscreen: true
# Whether or not to flash windows if they are the only window on the desktop.
# Possible values:
# 'always':
# Always flash lone windows
# 'never':
# Never flash lone windows
# 'on_open_close':
# Lone windows will be flashed only if a) if they were just opened and b)
# if another window was just closed.
# 'on_switch':
# Lone windows will be flashed only upon switching desktops.
flash-lone-windows: 'always'
# Defining window-specific flash rules
#
# X11-based window managers (e.g i3, bspwm)
# -----------------------------------------
# Flash rules are defined by matching the WM_CLASS property of a window. To get
# the WM_CLASS property use 'xprop WM_CLASS' and click on a window. The
# property is a tuple of the form (window-id, window-class). The window-class
# is usually the name of the application, but not always.
#
#
# Say I'd like to set all 'termite' windows to 80% opacity but leave other
# windows at full opacity:
#
# rules:
# - window-class: Termite
# default-opacity: 0.8
#
#
# I also would prefer that firefox windows are not flashed on focus:
#
# rules:
# - window-class: firefox
# flash-on-focus: False
# - window-class: Termite
# default-opacity: 0.8
#
#
# For more complicated rules, you can use (python-style) regexes:
#
# rules:
# - window-id: ^(?!termite)$
# default-opacity: 0.8
#
#
# Sway
# ----
# Native wayland apps can be matched using the app_id and window name. These
# can be found using `swaymsg -t get_tree`. XWayland apps are matched with
# using WM_CLASS as above (this can also be found with `swaymsg`)
#
# Given that termite is wayland native and firefox is not, the rules above
# could instead be written:
#
# rules:
# - window-class: firefox
# flash-on-focus: False
# - app-id: termite
# default-opacity: 0.8
#
# rules:
# - window-name: ^(?!termite)$
# default-opacity: 0.8
rules:
- app-id: kitty
flash-opacity: 0.85
default-opacity: 0.94
- app-id: org.pwmt.zathura
flash-opacity: 0.85
default-opacity: 0.94

View File

@@ -0,0 +1,9 @@
profile Home {
output "eDP-1" mode 2256x1504@59.999Hz position 1920,875 transform normal scale 1.399999976158142
output "DP-11" mode 1920x1200@59.95Hz position 0,0 transform normal scale 1.0
}
profile Bell {
output "eDP-1" mode 2256x1504@59.999Hz position 2137,425 transform normal scale 1.399999976158142
output "DP-3" mode 1920x1080@59.951Hz position 0,0 transform normal scale 0.9
}

View File

@@ -3,6 +3,13 @@
include current-theme.conf include current-theme.conf
# END_KITTY_THEME # END_KITTY_THEME
# #
background_opacity 0.87
enable_audio_bell no enable_audio_bell no
touch_scroll_multiplier 8.0 touch_scroll_multiplier 8.0
# BEGIN_KITTY_FONTS
font_family family="Liberation Mono"
bold_font auto
italic_font auto
bold_italic_font auto
# END_KITTY_FONTS

View File

@@ -0,0 +1,7 @@
{
"runtime.version": "LuaJIT",
"rutime.path": ["lua/?.lua", "lua/?/init.lua"],
"diagnostics.globals": ["vim"],
"workspace.checkThirdParty": false,
"workspace.library": ["$VIMRUNTIME"]
}

View File

@@ -1,5 +1,8 @@
require("set") require("set")
require("remap") require("remap")
require("lsp")
-- Set up lazy
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then if not vim.loop.fs_stat(lazypath) then

View File

@@ -1,50 +1,48 @@
{ {
"LuaSnip": { "branch": "master", "commit": "03c8e67eb7293c404845b3982db895d59c0d1538" }, "LuaSnip": { "branch": "master", "commit": "458560534a73f7f8d7a11a146c801db00b081df0" },
"alpha-nvim": { "branch": "main", "commit": "b6f4129302db197a7249e67a90de3f2b676de13e" }, "alpha-nvim": { "branch": "main", "commit": "2b3cbcdd980cae1e022409289245053f62fb50f6" },
"auto-session": { "branch": "main", "commit": "a5750c62b33dc4daf641345004398847ff84d7e9" }, "auto-session": { "branch": "main", "commit": "f0eb3d69848389869572b82b336d7a6887e88e43" },
"cellular-automaton.nvim": { "branch": "main", "commit": "11aea08aa084f9d523b0142c2cd9441b8ede09ed" }, "cellular-automaton.nvim": { "branch": "main", "commit": "1606e9d5d04ff254023c3f3c62842d065708d6d3" },
"cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" }, "copilot.lua": { "branch": "master", "commit": "93adf9844dcbe09a37e7a72eaa286d33d38bf628" },
"cmp-cmdline": { "branch": "main", "commit": "d250c63aa13ead745e3a40f61fdd3470efde3923" }, "csvview.nvim": { "branch": "main", "commit": "bbab4c2f808fd8e11ec8dfdd128251aadba566a1" },
"cmp-nvim-lsp": { "branch": "main", "commit": "39e2eda76828d88b773cc27a3f61d2ad782c922d" }, "dressing.nvim": { "branch": "master", "commit": "2d7c2db2507fa3c4956142ee607431ddb2828639" },
"cmp-nvim-lsp-signature-help": { "branch": "main", "commit": "031e6ba70b0ad5eee49fd2120ff7a2e325b17fa7" }, "friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" },
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" }, "gruvbox.nvim": { "branch": "main", "commit": "5e0a460d8e0f7f669c158dedd5f9ae2bcac31437" },
"cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" }, "harpoon": { "branch": "master", "commit": "1bc17e3e42ea3c46b33c0bbad6a880792692a1b3" },
"copilot.vim": { "branch": "release", "commit": "a9fa7946d7307ceb138bfe2706ba75febf6450da" }, "image.nvim": { "branch": "master", "commit": "446a8a5cc7a3eae3185ee0c697732c32a5547a0b" },
"dressing.nvim": { "branch": "master", "commit": "c5775a888adbc50652cb370073fcfec963eca93e" }, "jupytext.nvim": { "branch": "main", "commit": "c8baf3ad344c59b3abd461ecc17fc16ec44d0f7b" },
"friendly-snippets": { "branch": "main", "commit": "00ebcaa159e817150bd83bfe2d51fa3b3377d5c4" }, "lazy.nvim": { "branch": "main", "commit": "db067881fff0fd4be8c00e5bde7492e0e1c77a2f" },
"gruvbox.nvim": { "branch": "main", "commit": "7a1b23e4edf73a39642e77508ee6b9cbb8c60f9e" },
"harpoon": { "branch": "master", "commit": "ccae1b9bec717ae284906b0bf83d720e59d12b91" },
"lazy.nvim": { "branch": "main", "commit": "077102c5bfc578693f12377846d427f49bc50076" },
"lsp-colors.nvim": { "branch": "main", "commit": "2bbe7541747fd339bdd8923fc45631a09bb4f1e5" }, "lsp-colors.nvim": { "branch": "main", "commit": "2bbe7541747fd339bdd8923fc45631a09bb4f1e5" },
"lsp-zero.nvim": { "branch": "v3.x", "commit": "56db3d5ce5476b183783160e6045f7337ba12b83" }, "lualine.nvim": { "branch": "master", "commit": "3946f0122255bc377d14a59b27b609fb3ab25768" },
"lualine.nvim": { "branch": "master", "commit": "b431d228b7bbcdaea818bdc3e25b8cdbe861f056" },
"markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" }, "markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" },
"mason-lspconfig.nvim": { "branch": "main", "commit": "482350b050bd413931c2cdd4857443c3da7d57cb" }, "markdown-toc.nvim": { "branch": "main", "commit": "869af35bce0c27e2006f410fa3f706808db4843d" },
"mason.nvim": { "branch": "main", "commit": "e2f7f9044ec30067bc11800a9e266664b88cda22" }, "mason.nvim": { "branch": "main", "commit": "ad7146aa61dcaeb54fa900144d768f040090bff0" },
"molten-nvim": { "branch": "main", "commit": "8346bba69e0de96278dad2038e9be74605908b7d" }, "molten-nvim": { "branch": "main", "commit": "a286aa914d9a154bc359131aab788b5a077a5a99" },
"neoformat": { "branch": "master", "commit": "b3b38589b39038dc12c2f5a59a828ed43439363a" }, "noice.nvim": { "branch": "main", "commit": "d14d02cb709e3bb2da88363c32f8b4250bced52d" },
"noice.nvim": { "branch": "main", "commit": "448bb9c524a7601035449210838e374a30153172" }, "nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" },
"nui.nvim": { "branch": "main", "commit": "61574ce6e60c815b0a0c4b5655b8486ba58089a1" }, "nvim-dap": { "branch": "master", "commit": "6782b097af2417a4c3e33849b0a26ae2188bd7ea" },
"nvim-cmp": { "branch": "main", "commit": "ae644feb7b67bf1ce4260c231d1d4300b19c6f30" }, "nvim-dap-ui": { "branch": "master", "commit": "cf91d5e2d07c72903d052f5207511bf7ecdb7122" },
"nvim-dap": { "branch": "master", "commit": "281a2e4cd1e7a17cea7ecb1745d84a8ab1249925" }, "nvim-nio": { "branch": "master", "commit": "21f5324bfac14e22ba26553caf69ec76ae8a7662" },
"nvim-dap-ui": { "branch": "master", "commit": "a5606bc5958db86f8d92803bea7400ee26a8d7e4" }, "nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" },
"nvim-lspconfig": { "branch": "master", "commit": "911167921d49cd5c1c9b2436031d0da3945e787f" }, "nvim-web-devicons": { "branch": "master", "commit": "8dcb311b0c92d460fac00eac706abd43d94d68af" },
"nvim-nio": { "branch": "master", "commit": "a428f309119086dc78dd4b19306d2d67be884eee" }, "oil.nvim": { "branch": "master", "commit": "7e1cd7703ff2924d7038476dcbc04b950203b902" },
"nvim-tree.lua": { "branch": "master", "commit": "d43ab67d0eb4317961c5e9d15fffe908519debe0" }, "otter.nvim": { "branch": "main", "commit": "fc0aa35b1985077d11a20ddf4006bf40f2cd7397" },
"nvim-treesitter": { "branch": "master", "commit": "bef7ec6f7a01ba0717da73082e33c224bdc2ddcc" }, "overseer.nvim": { "branch": "master", "commit": "c77c78b35d0b4d244e1cd77c25ec93a16fbbfc94" },
"nvim-web-devicons": { "branch": "master", "commit": "3722e3d1fb5fe1896a104eb489e8f8651260b520" }, "pastify.nvim": { "branch": "main", "commit": "4a1d1e03c3ae725ee4af796deca8c7c169ef626e" },
"overseer.nvim": { "branch": "master", "commit": "236e60cdac6410dd95ea5cecafdb801a304d6a41" }, "plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" },
"plenary.nvim": { "branch": "master", "commit": "ec289423a1693aeae6cd0d503bac2856af74edaa" }, "quarto-nvim": { "branch": "main", "commit": "0e9491509b38efbd83d3f41dbfacc7fc4bd40191" },
"session-lens": { "branch": "main", "commit": "eae46b472b3150f5ec0f977556e8085683d49eb0" }, "session-lens": { "branch": "main", "commit": "eae46b472b3150f5ec0f977556e8085683d49eb0" },
"sqlite.nvim": { "branch": "master", "commit": "a8466c830a89794c2eafa41b41dd11fdf4a0d7ca" },
"telescope.nvim": { "branch": "master", "commit": "d90956833d7c27e73c621a61f20b29fdb7122709" }, "telescope.nvim": { "branch": "master", "commit": "d90956833d7c27e73c621a61f20b29fdb7122709" },
"todo-comments.nvim": { "branch": "main", "commit": "8f45f353dc3649cb9b44cecda96827ea88128584" }, "time-tracker.nvim": { "branch": "master", "commit": "4127c4b5fecaf5f5cb3aa840707e58bb88eb9bf0" },
"toggleterm.nvim": { "branch": "main", "commit": "48be57eaba817f038d61bbf64d2c597f578c0827" }, "todo-comments.nvim": { "branch": "main", "commit": "19d461ddd543e938eb22505fb03fa878800270b6" },
"toggleterm.nvim": { "branch": "main", "commit": "50ea089fc548917cc3cc16b46a8211833b9e3c7c" },
"trouble.nvim": { "branch": "main", "commit": "3609bb9a82bbab1ef95cf2c27ce7e52267a7d40d" }, "trouble.nvim": { "branch": "main", "commit": "3609bb9a82bbab1ef95cf2c27ce7e52267a7d40d" },
"undotree": { "branch": "master", "commit": "56c684a805fe948936cda0d1b19505b84ad7e065" }, "undotree": { "branch": "master", "commit": "0f1c9816975b5d7f87d5003a19c53c6fd2ff6f7f" },
"vim-doge": { "branch": "master", "commit": "188351964c8b2540a69c1d2648b3c6e7877a016f" }, "vim-doge": { "branch": "master", "commit": "03a84072ef21b205237c77986c78914395d646c3" },
"vim-flog": { "branch": "master", "commit": "658f9889435442c78493ccbae1fd7ffc212bec8a" }, "vim-flog": { "branch": "master", "commit": "665b16ac8915f746bc43c9572b4581a5e9047216" },
"vim-fugitive": { "branch": "master", "commit": "0444df68cd1cdabc7453d6bd84099458327e5513" }, "vim-fugitive": { "branch": "master", "commit": "61b51c09b7c9ce04e821f6cf76ea4f6f903e3cf4" },
"vim-surround": { "branch": "master", "commit": "3d188ed2113431cf8dac77be61b842acb64433d9" }, "vim-surround": { "branch": "master", "commit": "3d188ed2113431cf8dac77be61b842acb64433d9" },
"vimtex": { "branch": "master", "commit": "76ef99f73a5ff10be59836a4af4f928eaa8ad284" }, "vimtex": { "branch": "master", "commit": "be9deac3a23eeb145ccf11dd09080795838496ce" },
"which-key.nvim": { "branch": "main", "commit": "6c1584eb76b55629702716995cca4ae2798a9cca" } "which-key.nvim": { "branch": "main", "commit": "b4177e3eaf15fe5eb8357ebac2286d488be1ed00" }
} }

View File

@@ -0,0 +1,13 @@
return {
cmd = {
'clangd'
},
root_markers = {
'.clangd',
'compile_commands.json'
},
filetypes = {
'c',
'cpp'
}
}

View File

@@ -0,0 +1,9 @@
return {
cmd = { 'docker-langserver', '--stdio' },
filetypes = {
'dockerfile'
},
root_markers = {
'Dockerfile',
},
}

View File

@@ -0,0 +1,20 @@
return {
cmd = {
'lua-language-server'
},
filetypes = {
'lua'
},
root_markers = {
'.luarc.json',
'.luarc.jsonc',
'.git'
},
settings = {
Lua = {
runtime = {
version = 'LuaJIT'
}
}
}
}

View File

View File

@@ -0,0 +1,5 @@
return {
cmd = { "neocmakelsp", "--stdio" },
filetypes = { "cmake" },
root_markers = { ".git", "README.md" }
}

View File

@@ -0,0 +1,20 @@
return {
cmd = {
'pyright-langserver', '--stdio'
},
settings = {
python = {
analysis = {
typeCheckingMode = "basic", -- or "strict", "off"
autoSearchPaths = true,
useLibraryCodeForTypes = true,
},
},
},
root_markers = {
'pyproject.toml', 'setup.py', 'setup.cfg', 'requirements.txt', '.git'
},
filetypes = {
'python'
},
}

View File

@@ -0,0 +1,11 @@
return {
cmd = {
'ruff', 'server'
},
filetypes = {
'python'
},
root_markers = {
'setup.py', 'setup.cfg', 'requirements.txt', '.git', 'ruff.toml'
}
}

View File

@@ -0,0 +1,19 @@
return {
cmd = { 'rust-analyzer' },
filetypes = { 'rust' },
root_markers = { "Cargo.toml", ".git" },
-- single_file_support = true,
-- settings = {
-- ['rust-analyzer'] = {
-- diagnostics = {
-- enable = false,
-- }
-- }
-- },
before_init = function(init_params, config)
-- See https://github.com/rust-lang/rust-analyzer/blob/eb5da56d839ae0a9e9f50774fa3eb78eb0964550/docs/dev/lsp-extensions.md?plain=1#L26
if config.settings and config.settings['rust-analyzer'] then
init_params.initializationOptions = config.settings['rust-analyzer']
end
end,
}

View File

@@ -0,0 +1,27 @@
return {
cmd = { 'texlab' },
filetypes = { 'tex' },
root_markers = { '.git', '.latexmkrc' },
settings = {
texlab = {
rootDirectory = nil,
build = {
executable = 'latexmk',
args = { '-pdf', '-interaction=nonstopmode', '-synctex=1', '%f' },
onSave = false,
forwardSearchAfter = false,
},
forwardSearch = {
executable = nil,
args = {},
},
chktex = {
onOpenAndSave = false,
onEdit = false,
},
diagnosticsDelay = 300,
latexFormatter = 'tex-fmt',
bibtexFormatter = 'tex-fmt',
},
},
}

View File

@@ -0,0 +1,19 @@
return {
"yetone/avante.nvim",
event = "VeryLazy",
lazy = false,
version = false, -- set this if you want to always pull the latest change
opts = {
provider = "copilot"
},
build = "make",
dependencies = {
"stevearc/dressing.nvim",
"nvim-lua/plenary.nvim",
"MunifTanjim/nui.nvim",
--- The below dependencies are optional,
"hrsh7th/nvim-cmp", -- autocompletion for avante commands and mentions
"nvim-tree/nvim-web-devicons", -- or echasnovski/mini.icons
"zbirenbaum/copilot.lua" -- for providers='copilot'
}
}

View File

@@ -1,11 +0,0 @@
return {
{
"utilyre/barbecue.nvim",
name = "barbecue",
version = "*",
dependencies = {"SmiteshP/nvim-navic", "nvim-tree/nvim-web-devicons"},
config = function()
require("barbecue").setup()
end,
}
}

View File

@@ -1,6 +0,0 @@
return {
{
"GCBallesteros/jupytext.nvim",
config = true
}
}

View File

@@ -1,15 +0,0 @@
return {
{
"seandewar/killersheep.nvim",
config = function()
require("killersheep").setup {
gore = true, -- Enables/disables blood and gore.
keymaps = {
move_left = "h", -- Keymap to move cannon to the left.
move_right = "l", -- Keymap to move cannon to the right.
shoot = "<Space>" -- Keymap to shoot the cannon.
}
}
end
}
}

View File

@@ -0,0 +1,96 @@
-- Set up LSP
local lsp_configs = {}
for _, f in pairs(vim.api.nvim_get_runtime_file('lsp/*.lua', true)) do
local server_name = vim.fn.fnamemodify(f, ':t:r')
table.insert(lsp_configs, server_name)
end
vim.lsp.enable(lsp_configs)
vim.o.completeopt = "menu,menuone,noinsert,fuzzy"
vim.api.nvim_set_keymap("i", "<C-Space>", "<C-x><C-o>", { noremap = true })
-- TODO: Put this somewhere sensible
vim.api.nvim_create_autocmd('LspAttach', {
group = vim.api.nvim_create_augroup('my.lsp', {}),
callback = function(args)
local client = assert(vim.lsp.get_client_by_id(args.data.client_id))
-- Make Tab accept the selected completion
vim.keymap.set('i', '<Tab>', function()
if vim.fn.pumvisible() == 1 then
return '<C-y>'
else
return '<Tab>'
end
end, { expr = true })
-- Make Enter just insert a newline (don't accept completion)
vim.keymap.set('i', '<CR>', function()
if vim.fn.pumvisible() == 1 then
return '<C-e><CR>'
else
return '<CR>'
end
end, { expr = true })
-- Enable auto-completion. Note: Use CTRL-Y to select an item. |complete_CTRL-Y|
if client:supports_method('textDocument/completion') then
-- Trigger autocompletion on EVERY keypress. May be slow!
local chars = {}; for i = 32, 126 do table.insert(chars, string.char(i)) end
client.server_capabilities.completionProvider.triggerCharacters = chars
vim.lsp.completion.enable(true, client.id, args.buf, { autotrigger = true })
end
vim.keymap.set('n', '<M-L>',
function() vim.lsp.buf.format() end,
{
desc = "Format",
noremap = true,
silent = true
})
vim.keymap.set('i', '<M-L>',
function() vim.lsp.buf.format() end,
{
desc = "Format",
noremap = true,
silent = true
})
vim.keymap.set("n", "gd", function() vim.lsp.buf.definition() end, {
desc = "Go to definition"
})
vim.keymap.set("n", "grr", ":Trouble lsp_references<CR>", {
desc = "Show references"
})
-- if client:supports_method('textDocument/implementation') then
-- -- Create a keymap for vim.lsp.buf.implementation ...
-- end
-- -- Auto-format ("lint") on save.
-- -- Usually not needed if server supports "textDocument/willSaveWaitUntil".
-- if not client:supports_method('textDocument/willSaveWaitUntil')
-- and client:supports_method('textDocument/formatting') then
-- vim.api.nvim_create_autocmd('BufWritePre', {
-- group = vim.api.nvim_create_augroup('my.lsp', { clear = false }),
-- buffer = args.buf,
-- callback = function()
-- vim.lsp.buf.format({ bufnr = args.buf, id = client.id, timeout_ms = 1000 })
-- end,
-- })
-- end
end,
})
-- vim.diagnostic.config({
-- virtual_lines = {
-- current_line = true,
-- },
-- })

View File

@@ -1,5 +1,5 @@
return { return {
name = "Cargog Test", name = "Cargo Test",
builder = function() builder = function()
return { return {
cmd = { cmd = {

View File

@@ -9,7 +9,7 @@ return {
"RelWithDebInfo", "RelWithDebInfo",
"MinSizeRel" "MinSizeRel"
}, },
default = "Debug" default = "Release"
}, },
generator = { generator = {
type = "enum", type = "enum",

View File

@@ -1,6 +1,7 @@
return { return {
{ {
"rmagatti/auto-session", "rmagatti/auto-session",
lazy = false,
dependencies = { dependencies = {
"nvim-lualine/lualine.nvim" "nvim-lualine/lualine.nvim"
}, },

View File

@@ -1,20 +0,0 @@
return {
{
"github/copilot.vim",
event = {
"BufReadPost",
"BufNewFile"
},
cmd = {
"Copilot"
},
init = function()
vim.g.copilot_no_tab_map = true
vim.g.copilot_assume_mapped = true
vim.api.nvim_set_keymap("i", "<C-y>", 'copilot#Accept("<CR>")', {
silent = true,
expr = true
})
end
}
}

View File

@@ -0,0 +1,26 @@
return {
"hat0uma/csvview.nvim",
---@module "csvview"
---@type CsvView.Options
opts = {
parser = { comments = { "#", "//" } },
keymaps = {
-- Text objects for selecting fields
textobject_field_inner = { "if", mode = { "o", "x" } },
textobject_field_outer = { "af", mode = { "o", "x" } },
-- Excel-like navigation:
-- Use <Tab> and <S-Tab> to move horizontally between fields.
-- Use <Enter> and <S-Enter> to move vertically between rows and place the cursor at the end of the field.
-- Note: In terminals, you may need to enable CSI-u mode to use <S-Tab> and <S-Enter>.
jump_next_field_end = { "<Tab>", mode = { "n", "v" } },
jump_prev_field_end = { "<S-Tab>", mode = { "n", "v" } },
jump_next_row = { "<Enter>", mode = { "n", "v" } },
jump_prev_row = { "<S-Enter>", mode = { "n", "v" } },
},
},
cmd = { "CsvViewEnable", "CsvViewDisable", "CsvViewToggle" },
init = function()
vim.keymap.set("n", "<leader>ce", ":CsvViewEnable display_mode=border header_lnum=1<CR>")
vim.keymap.set("n", "<leader>cd", ":CsvViewDisable<CR>")
end
}

View File

@@ -1,189 +0,0 @@
return {
{
{
'VonHeikemen/lsp-zero.nvim',
branch = 'v3.x',
lazy = true,
config = false,
init = function()
-- Disable automatic setup, we are doing it manually
vim.g.lsp_zero_extend_cmp = 0
vim.g.lsp_zero_extend_lspconfig = 0
end
},
{
'williamboman/mason.nvim',
lazy = false,
config = true
},
-- Autocompletion
{
'hrsh7th/nvim-cmp',
event = 'InsertEnter',
dependencies = {
'L3MON4D3/LuaSnip',
'hrsh7th/cmp-buffer',
'hrsh7th/cmp-path',
'hrsh7th/cmp-cmdline',
'hrsh7th/cmp-nvim-lsp-signature-help',
'saadparwaiz1/cmp_luasnip'
},
config = function()
local lsp_zero = require('lsp-zero')
lsp_zero.extend_cmp()
local cmp = require('cmp')
cmp.setup({
sources = {
-- LuaFormatter off
{ name = 'path' },
{ name = 'nvim_lsp' },
{ name = 'nvim_lua' },
{ name = 'luasnip', keyword_length = 2 },
{ name = 'buffer', keyword_length = 3 },
{ name = 'nvim_lsp_signature_help' }
-- LuaFormatter on
},
formatting = lsp_zero.cmp_format(),
mapping = cmp.mapping.preset.insert({
['<C-p>'] = cmp.mapping.select_prev_item(cmp_select),
['<C-n>'] = cmp.mapping.select_next_item(cmp_select),
['<Tab>'] = cmp.mapping.confirm({
select = true
}),
['<C-Space>'] = cmp.mapping.complete()
}),
snippet = {
expand = function(args) require('luasnip').lsp_expand(args.body) end
}
})
cmp.setup.filetype('gitcommit', {
-- LuaFormatter off
sources = cmp.config.sources(
{ { name = 'git' } },
{ { name = 'buffer' } }
)
-- LuaFormatter on
})
cmp.setup.cmdline({
'/',
'?'
}, {
mapping = cmp.mapping.preset.cmdline(),
sources = {
{
name = 'buffer'
}
}
})
cmp.setup.cmdline(':', {
mapping = cmp.mapping.preset.cmdline(),
sources = cmp.config.sources({
{
name = 'path'
}
}, {
{
name = 'cmdline'
}
})
})
end
},
-- LSP
{
'neovim/nvim-lspconfig',
cmd = {
'LspInfo',
'LspInstall',
'LspStart'
},
event = {
'BufReadPre',
'BufNewFile'
},
dependencies = {
'hrsh7th/cmp-nvim-lsp',
'williamboman/mason-lspconfig.nvim',
"folke/trouble.nvim"
},
config = function()
local lsp_zero = require('lsp-zero')
lsp_zero.extend_lspconfig()
lsp_zero.on_attach(function(client, bufnr)
vim.keymap.set("n", "<leader>ld", function() vim.lsp.buf.definition() end, {
desc = "Go to definition"
})
vim.keymap.set("n", "<leader>lh", function() vim.lsp.buf.hover() end, {
desc = "Hover"
})
vim.keymap.set("n", "<leader>lr", ":Trouble lsp_references<CR>", {
desc = "Show references"
})
vim.keymap.set("n", "<leader>ln", function() vim.lsp.buf.rename() end, {
desc = "Rename"
})
vim.keymap.set("n", "<leader>ls", function() vim.lsp.buf.signature_help() end, {
desc = "Signature help"
})
vim.keymap.set("n", "<leader>la", function() vim.lsp.buf.code_action() end, {
desc = "Code actions"
})
vim.keymap.set("n", "<leader>la", function() vim.lsp.buf.code_action() end, {
desc = "Code actions"
})
end)
require('mason-lspconfig').setup({
ensure_installed = {
'clangd',
'pyright',
'cmake',
'texlab'
},
handlers = {
lsp_zero.default_setup,
lua_ls = function()
local lua_opts = lsp_zero.nvim_lua_ls()
require('lspconfig').lua_ls.setup(lua_opts)
end
}
})
require('lspconfig')['clangd'].setup {
cmd = {
"clangd",
"--background-index",
"--clang-tidy",
"--completion-style=bundled",
"--cross-file-rename",
"--header-insertion=iwyu",
-- Required for embedded system compilers
"--query-driver=/**/*g++",
"--offset-encoding=utf-16"
-- "-j=8",
-- "--malloc-trim",
-- "--pch-storage=memory"
}
}
require('lspconfig').matlab_ls.setup({
settings = {
filetypes = {"matlab"},
matlab = {
installPath = "/opt/matlab/R2023a/"
},
},
single_file_support = true
})
end
}
}
}

View File

@@ -0,0 +1,19 @@
return {
"zbirenbaum/copilot.lua",
cmd = "Copilot",
-- event = "InsertEnter",
opts = {
suggestion = {
enabled = true,
auto_trigger = true,
keymap = {
accept = "<C-l>"
-- accept_word = false,
-- accept_line = false,
-- next = "<M-]>",
-- prev = "<M-[>",
-- dismiss = "<C-]>"
}
}
}
}

View File

@@ -15,6 +15,17 @@ return {
'mason', 'mason',
'lazy', 'lazy',
'toggleterm' 'toggleterm'
},
sections = {
lualine_x = {
{
require("noice").api.statusline.mode.get,
cond = require("noice").api.statusline.mode.has,
color = {
fg = "#ff9e64"
}
}
}
} }
} }
} }

View File

@@ -1,5 +1,5 @@
return { return {
{ -- Install markdown preview, use npx if available.
"iamcco/markdown-preview.nvim", "iamcco/markdown-preview.nvim",
cmd = { cmd = {
"MarkdownPreviewToggle", "MarkdownPreviewToggle",
@@ -9,7 +9,19 @@ return {
ft = { ft = {
"markdown" "markdown"
}, },
build = function() vim.fn["mkdp#util#install"]() end build = function(plugin)
if vim.fn.executable "npx" then
vim.cmd("!cd " .. plugin.dir .. " && cd app && npx --yes yarn install")
else
vim.cmd [[Lazy load markdown-preview.nvim]]
vim.fn["mkdp#util#install"]()
end
end,
init = function()
if vim.fn.executable "npx" then
vim.g.mkdp_filetypes = {
"markdown"
} }
end
end
} }

View File

@@ -0,0 +1,7 @@
return {
"hedyhli/markdown-toc.nvim",
cmd = {
"Mtoc"
}, -- Or, lazy load on "Mtoc" command
opts = {}
}

View File

@@ -0,0 +1,10 @@
return {
'williamboman/mason.nvim',
lazy = false,
opts = {
registries = {
"github:antsouchlos/mason-registry",
"github:mason-org/mason-registry"
}
}
}

View File

@@ -1,30 +1,87 @@
return { return {
{ { -- Ability to show images in the output
"benlubas/molten-nvim", "3rd/image.nvim",
build = ":UpdateRemotePlugins", opts = {}
version = "v1.7.0", }, { -- Use LSP in markdown files
"quarto-dev/quarto-nvim",
dependencies = {"jmbuhr/otter.nvim", "nvim-treesitter/nvim-treesitter"},
ft = {"quarto", "markdown"},
init = function() init = function()
vim.keymap.set("n", "<localleader>mi", ":MoltenInit<CR>", { vim.api.nvim_create_autocmd('FileType', {
silent = true, pattern = 'markdown',
desc = "Initialize the plugin" callback = function()
}) require("quarto").activate()
vim.keymap.set("n", "<localleader>e", ":MoltenEvaluateOperator<CR>", { end
silent = true,
desc = "run operator selection"
})
vim.keymap.set("n", "<localleader>rl", ":MoltenEvaluateLine<CR>", {
silent = true,
desc = "evaluate line"
})
vim.keymap.set("n", "<localleader>rr", ":MoltenReevaluateCell<CR>", {
silent = true,
desc = "re-evaluate cell"
})
vim.keymap.set("v", "<localleader>r", ":<C-u>MoltenEvaluateVisual<CR>gv", {
silent = true,
desc = "evaluate visual selection"
}) })
-- local runner = require("quarto.runner")
-- vim.keymap.set("n", "<localleader>rc", runner.run_cell, {
-- desc = "run cell",
-- silent = true
-- })
-- vim.keymap.set("n", "<localleader>ra", runner.run_above, {
-- desc = "run cell and above",
-- silent = true
-- })
-- vim.keymap.set("n", "<localleader>rA", runner.run_all, {
-- desc = "run all cells",
-- silent = true
-- })
-- vim.keymap.set("n", "<localleader>rl", runner.run_line, {
-- desc = "run line",
-- silent = true
-- })
-- vim.keymap.set("v", "<localleader>r", runner.run_range, {
-- desc = "run visual range",
-- silent = true
-- })
-- vim.keymap.set("n", "<localleader>RA", function() runner.run_all(true) end, {
-- desc = "run all cells of all languages",
-- silent = true
-- })
end,
opts = {
lspFeatures = {
languages = {"r", "python", "rust", "julia"},
chunks = "all",
diagnostics = {enabled = true, triggers = {"BufWritePost"}},
completion = {enabled = true}
},
keymap = {
hover = "H",
definition = "gd",
rename = "<leader>rn",
references = "gr",
format = "<leader>gf"
},
codeRunner = {enabled = true, default_method = "molten"}
}
}, { -- Convert ipynb to markdown and back
"GCBallesteros/jupytext.nvim",
opts = {
style = "markdown",
output_extension = "md",
force_ft = "markdown"
}
}, { -- Interactive code evaluation
"benlubas/molten-nvim",
version = "^1.0.0", -- use version <2.0.0 to avoid breaking changes
build = ":UpdateRemotePlugins",
init = function()
vim.keymap.set("n", "<localleader>mi", ":MoltenInit<CR>",
{silent = true, desc = "Initialize the plugin"})
vim.keymap.set("n", "<localleader>e", ":MoltenEvaluateOperator<CR>",
{silent = true, desc = "run operator selection"})
vim.keymap.set("n", "<localleader>rl", ":MoltenEvaluateLine<CR>",
{silent = true, desc = "evaluate line"})
vim.keymap.set("n", "<localleader>rr", ":MoltenReevaluateCell<CR>",
{silent = true, desc = "re-evaluate cell"})
vim.keymap.set("v", "<localleader>r",
":<C-u>MoltenEvaluateVisual<CR>gv",
{silent = true, desc = "evaluate visual selection"})
vim.g.molten_image_provider = "image.nvim"
vim.g.molten_auto_open_output = false vim.g.molten_auto_open_output = false
vim.g.molten_virt_text_output = true vim.g.molten_virt_text_output = true
vim.g.molten_virt_text_max_lines = 32 vim.g.molten_virt_text_max_lines = 32

View File

@@ -1,37 +0,0 @@
return {
{
'sbdchd/neoformat',
event = {
"BufReadPost",
"BufNewFile"
},
init = function()
vim.cmd([[
let g:neoformat_enabled_python = ['autopep8']
let g:neoformat_enabled_cpp = ['clangformat']
let g:neoformat_enabled_c = ['clangformat']
let g:neoformat_enable_lua = ['luaformatter']
let g:neoformat_enabled_cmake = ['cmakeformat']
let g:neoformat_markdown_mdformat = {
\ 'exe': 'mdformat',
\ 'args': ['--wrap=79'],
\ 'replace': 1,
\ }
let g:neoformat_enabled_markdown = ['mdformat']
let g:neoformat_enabled_latex = ['latexindent']
let g:latexindent_opt="-m -l -g=/dev/null"
]])
vim.api.nvim_set_keymap('n', '<M-L>', '<cmd>Neoformat<cr>', {
noremap = true,
silent = true
})
vim.api.nvim_set_keymap('i', '<M-L>', '<cmd>Neoformat<cr>', {
noremap = true,
silent = true
})
end
}
}

View File

@@ -0,0 +1,13 @@
return {
'stevearc/oil.nvim',
opts = {},
dependencies = {
"nvim-tree/nvim-web-devicons"
},
init = function()
vim.keymap.set("n", "-", "<CMD>Oil<CR>", {
desc = "Open parent directory"
})
end,
lazy = false
}

View File

@@ -0,0 +1,41 @@
return {
'TobinPalmer/pastify.nvim',
cmd = {
'Pastify',
'PastifyAfter'
},
-- event = {
-- 'BufReadPost'
-- }, -- Load after the buffer is read, I like to be able to paste right away
keys = {
{
noremap = true,
mode = "x",
'<leader>v',
"<cmd>PastifyAfter<CR>"
},
{
noremap = true,
mode = "n",
'<leader>v',
"<cmd>PastifyAfter<CR>"
},
{
noremap = true,
mode = "n",
'<leader>V',
"<cmd>Pastify<CR>"
}
},
config = function()
require('pastify').setup {
opts = {
local_path = '/res/'
},
ft = {
markdown = "![image]($IMG$)"
}
}
end
}

View File

@@ -30,21 +30,38 @@ return {
version = '0.1.5', version = '0.1.5',
dependencies = { dependencies = {
{ {
'nvim-lua/plenary.nvim' 'nvim-lua/plenary.nvim',
'folke/trouble.nvim',
} }
}, },
cmd = "Telescope", cmd = "Telescope",
init = function() init = function()
-- LuaFormatter off -- Set up keymaps
vim.keymap.set('n', '<leader>ff', function() require("telescope.builtin").find_files() end,{desc = "Files"})
vim.keymap.set('n', '<leader>ff', function() require("telescope.builtin").find_files() end,
{ desc = "Files" })
vim.keymap.set('n', '<leader>fg', function() require("telescope.builtin").live_grep() end, { desc = "grep" }) vim.keymap.set('n', '<leader>fg', function() require("telescope.builtin").live_grep() end, { desc = "grep" })
vim.keymap.set('n', '<leader>fa', function() vim.keymap.set('n', '<leader>fa', function()
require("telescope.builtin").find_files({ hidden = true }) require("telescope.builtin").find_files({ hidden = true })
end, { desc = "All files" }) end, { desc = "All files" })
vim.keymap.set('n', '<leader>fb', function() require("telescope.builtin").buffers() end, { desc = "Buffers" }) vim.keymap.set('n', '<leader>fb', function() require("telescope.builtin").buffers() end, { desc = "Buffers" })
vim.keymap.set('n', '<leader>fh', function() require("telescope.builtin").help_tags() end, {desc = "Help tags"}) vim.keymap.set('n', '<leader>fh', function() require("telescope.builtin").help_tags() end,
-- LuaFormatter on { desc = "Help tags" })
-- Set up trouble
local open_with_trouble = require("trouble.sources.telescope").open
local telescope = require("telescope")
telescope.setup({
defaults = {
mappings = {
i = { ["<c-t>"] = open_with_trouble },
n = { ["<c-t>"] = open_with_trouble },
},
},
})
end end
} }
} }

View File

@@ -0,0 +1,10 @@
return {
"3rd/time-tracker.nvim",
dependencies = {
"3rd/sqlite.nvim"
},
event = "VeryLazy",
opts = {
data_file = vim.fn.stdpath("data") .. "/time-tracker.db"
}
}

View File

@@ -13,7 +13,15 @@ return {
'nvim-telescope/telescope.nvim' 'nvim-telescope/telescope.nvim'
} }
}, },
opts = {}, opts = {
modes = {
symbols = {
win = {
size = 50,
}
}
}
},
cmd = "Trouble", cmd = "Trouble",
keys = { keys = {
{ {
@@ -31,6 +39,11 @@ return {
"<cmd>Trouble symbols toggle focus=false<cr>", "<cmd>Trouble symbols toggle focus=false<cr>",
desc = "Symbols (Trouble)", desc = "Symbols (Trouble)",
}, },
{
"<leader>xt",
"<cmd>Trouble todo toggle focus=true<cr>",
desc = "Symbols (Trouble)",
},
-- { -- {
-- "<leader>cl", -- "<leader>cl",
-- "<cmd>Trouble lsp toggle focus=false win.position=right<cr>", -- "<cmd>Trouble lsp toggle focus=false win.position=right<cr>",

View File

@@ -21,7 +21,7 @@ return {
} }
} }
vim.g.vimtex_view_general_viewer = 'sioyek' vim.g.vimtex_view_method = 'zathura'
vim.g.vimtex_quickfix_mode = 0 vim.g.vimtex_quickfix_mode = 0
-- Concealment -- Concealment

View File

@@ -15,26 +15,30 @@ return {
}, },
config = function() config = function()
local wk = require("which-key") local wk = require("which-key")
wk.register({ wk.add({
["<leader>"] = { {
l = { "<leader>d",
name = "+LSP" group = "Debug"
}, },
x = { {
name = "+Trouble" "<leader>f",
group = "Find"
}, },
o = { {
name = "+Overseer" "<leader>l",
group = "LSP"
}, },
d = { {
name = "+Debug" "<leader>o",
group = "Overseer"
}, },
f = { {
name = "+Find" "<leader>s",
}, group = "Session"
s = {
name = "+Session"
}, },
{
"<leader>x",
group = "Trouble"
} }
}) })
end end

View File

@@ -9,7 +9,6 @@ vim.keymap.set("n", "n", "nzzzv")
vim.keymap.set("n", "N", "Nzzzv") vim.keymap.set("n", "N", "Nzzzv")
vim.keymap.set("x", "<leader>p", "\"_dP") vim.keymap.set("x", "<leader>p", "\"_dP")
vim.keymap.set("n", "<leader>d", "\"_d")
vim.keymap.set("v", "<leader>d", "\"_d") vim.keymap.set("v", "<leader>d", "\"_d")
vim.keymap.set("n", "<leader>y", "\"+y") vim.keymap.set("n", "<leader>y", "\"+y")
@@ -20,4 +19,6 @@ vim.keymap.set("n", "Q", "<nop>")
vim.keymap.set("n", "q:", "<nop>") vim.keymap.set("n", "q:", "<nop>")
vim.cmd [[call nvim_create_user_command('W', 'w', {'nargs': 0})]] vim.cmd [[call nvim_create_user_command('W', 'w', {'nargs': 0})]]
vim.keymap.set("n", "QQ", ":q!<CR>")
-- vim.keymap.set("n", "<leader>cb", [[:up | %bd | e#<CR>]]) -- vim.keymap.set("n", "<leader>cb", [[:up | %bd | e#<CR>]])

View File

@@ -27,6 +27,11 @@ vim.opt.signcolumn = "yes"
vim.opt.updatetime = 50 vim.opt.updatetime = 50
vim.api.nvim_create_autocmd('FileType', {
pattern = 'cpp',
callback = function() vim.bo.commentstring = '// %s' end
})
vim.api.nvim_create_autocmd('FileType', { vim.api.nvim_create_autocmd('FileType', {
pattern = 'rust', pattern = 'rust',
callback = function() callback = function()
@@ -53,5 +58,7 @@ let &efm .= '%Eerror%m,'
let &efm .= '%Wwarning: %m,' let &efm .= '%Wwarning: %m,'
let &efm .= '%-Z%*\s--> %f:%l:%c,' let &efm .= '%-Z%*\s--> %f:%l:%c,'
]] ]]
end, end
}) })
vim.opt.exrc = true

View File

@@ -13,7 +13,7 @@ local d = ls.dynamic_node
local fmt = require("luasnip.extras.fmt").fmt local fmt = require("luasnip.extras.fmt").fmt
local fmta = require("luasnip.extras.fmt").fmta local fmta = require("luasnip.extras.fmt").fmta
local rep = require("luasnip.extras").rep local rep = require("luasnip.extras").rep
local line_begin = require("luasnip.extras.expand_conditions").line_begin local conds = require("luasnip.extras.expand_conditions")
--------------- ---------------
-- Environments -- Environments
@@ -90,7 +90,7 @@ s({trig="notes"},
) )
), ),
s({trig="beg"}, s({trig="beg", wordTrig=true, snippetType="autosnippet", condition=conds.line_begin},
fmta( fmta(
[[ [[
\begin{<>} \begin{<>}
@@ -105,6 +105,46 @@ s({trig="beg"},
) )
), ),
s({trig="item", wordTrig=true, snippetType="autosnippet",
condition = function(line_to_cursor, matched_trigger, captures)
return tex_utils.in_env("itemize") and conds.line_begin(line_to_cursor, matched_trigger, captures)
end},
fmta(
[[
\item <>
]],
{
i(0),
}
)
),
s({trig="item", wordTrig=true, snippetType="autosnippet", condition=conds.line_begin},
fmta(
[[
\begin{itemize}
\item <>
\end{itemize}
]],
{
i(0),
}
)
),
s({trig="frame", wordTrig=true, snippetType="autosnippet", condition=conds.line_begin},
fmta(
[[
\begin{frame}
\frametitle{<>}
\end{frame}
]],
{
i(0),
}
)
),
s({trig="sec"}, s({trig="sec"},
fmta( fmta(
[[ [[

View File

@@ -13,6 +13,7 @@ local d = ls.dynamic_node
local fmt = require("luasnip.extras.fmt").fmt local fmt = require("luasnip.extras.fmt").fmt
local fmta = require("luasnip.extras.fmt").fmta local fmta = require("luasnip.extras.fmt").fmta
local rep = require("luasnip.extras").rep local rep = require("luasnip.extras").rep
local conds = require("luasnip.extras.expand_conditions")
--------------- ---------------
@@ -56,7 +57,7 @@ end
return { return {
s({trig="ali", snippetType="autosnippet"}, s({trig="ali", wordTrig=true, snippetType="autosnippet", condition=conds.line_begin},
fmta( fmta(
[[ [[
\begin{align*} \begin{align*}
@@ -113,6 +114,21 @@ s({trig="matp"},
{condition = tex_utils.in_mathzone} {condition = tex_utils.in_mathzone}
), ),
s({trig="([^%a])array", regTrig=true, wordTrig=false, snippetType="autosnippet"},
fmta(
[[
<>\begin{array}{c}
<>
\end{array}
]],
{
f( function(_, snip) return snip.captures[1] end ),
i(0),
}
),
{condition = tex_utils.in_mathzone}
),
s({trig='([^%a])int', regTrig=true, wordTrig=false, snippetType="autosnippet"}, s({trig='([^%a])int', regTrig=true, wordTrig=false, snippetType="autosnippet"},
fmta( fmta(
[[<>\int_{<>}^{<>} <> d<> ]], [[<>\int_{<>}^{<>} <> d<> ]],
@@ -228,13 +244,13 @@ s({trig="([^%a])tt", regTrig=true, wordTrig=false, snippetType="autosnippet"},
{condition = tex_utils.in_mathzone} {condition = tex_utils.in_mathzone}
), ),
s({trig=".", snippetType="autosnippet"}, -- s({trig=".", snippetType="autosnippet"},
fmta( -- fmta(
[[\cdot ]], -- [[\cdot ]],
{} -- {}
), -- ),
{condition = tex_utils.in_mathzone} -- {condition = tex_utils.in_mathzone}
), -- ),
s({trig="$$", snippetType="autosnippet"}, s({trig="$$", snippetType="autosnippet"},
fmta( fmta(

View File

@@ -0,0 +1,9 @@
[books]
dir = ~/Documents/literature/books
[keyboard]
dir = ~/Documents/literature/keyboard
[settings]
default-library = keyboard

View File

@@ -18,7 +18,7 @@ bindsym Control+Mod1+l exec $lock
bindsym Print exec grim -g "$(slurp -d)" - | wl-copy bindsym Print exec grim -g "$(slurp -d)" - | wl-copy
bindsym $mod+p exec kitty -e /usr/bin/expect -c "spawn python; expect \\"*>>> \\"; send \\"import numpy as np\n\\"; send \\"import sympy as sp\n\\"; interact" bindsym $mod+p exec kitty -e /usr/bin/expect -c "spawn python; expect \\"*>>> \\"; send \\"import numpy as np\n\\"; send \\"import sympy as sp\n\\"; send \\"import torch\n\\"; interact"
bindsym $mod+Return exec $term bindsym $mod+Return exec $term
bindsym $mod+Shift+q kill bindsym $mod+Shift+q kill
bindsym $mod+d exec $menu bindsym $mod+d exec $menu
@@ -26,7 +26,7 @@ bindsym $mod+d exec $menu
floating_modifier $mod normal floating_modifier $mod normal
bindsym $mod+Shift+c reload bindsym $mod+Shift+c reload
bindsym $mod+Shift+e exec i3-msg exit bindsym $mod+Shift+e exec swaymsg exit
bar { bar {
swaybar_command waybar swaybar_command waybar
@@ -52,16 +52,26 @@ bindsym $mod+c exec kitty -e python
for_window [title="blueman-manager"] floating enable for_window [title="blueman-manager"] floating enable
for_window [class="^.*"] border pixel 3 for_window [class="^.*"] border pixel 0
default_floating_border none default_floating_border none
default_floating_border normal 0 default_floating_border normal 0
hide_edge_borders smart hide_edge_borders smart
for_window [app_id="org.pwmt.zathura"] opacity 0.94
for_window [app_id="kitty"] opacity 0.94
exec_always --no-startup-id bash -c "killall flashfocus; flashfocus --flash-opacity 0.92 -l never"
gaps inner 15 gaps inner 15
smart_gaps on smart_gaps on
bindsym $mod+g exec swaymsg gaps inner current toggle 15
# blur enable
# blur_radius 1
# blur_passes 4
# blur_noise 0.1
blur enable
blur_radius 8
exec dbus-update-activation-environment DISPLAY exec dbus-update-activation-environment DISPLAY

View File

@@ -2,13 +2,15 @@ input "type:touchpad" {
tap enabled tap enabled
natural_scroll enabled natural_scroll enabled
scroll_factor 0.4 scroll_factor 0.4
dwt disable dwt enable
accel_profile "adaptive" accel_profile "adaptive"
pointer_accel 0 pointer_accel 0
drag enabled
drag_lock disabled
} }
input type:keyboard { input type:keyboard {
xkb_layout de(nodeadkeys),gr,de(neo) xkb_layout de(nodeadkeys),us,gr
xkb_options grp:ctrls_toggle,caps:escape xkb_options grp:ctrls_toggle,caps:escape
} }

View File

@@ -1,7 +1,7 @@
set $ws1 "1: Dev" set $ws1 "1: Dev"
set $ws2 "2: Firefox" set $ws2 "2: Firefox"
set $ws3 "3: Management" set $ws3 "3: Management"
set $ws4 "4" set $ws4 "4: Mehscellaneous"
set $ws5 "5: Doc" set $ws5 "5: Doc"
set $ws6 "6: 3D-Printing" set $ws6 "6: 3D-Printing"
set $ws7 "7: Music" set $ws7 "7: Music"
@@ -33,15 +33,20 @@ bindsym $mod+Shift+0 move container to workspace number $ws10
assign [class="Spotify"] $ws7 assign [class="Spotify"] $ws7
exec i3-msg 'workspace $ws1; exec kitty; $ws1' exec swaymsg 'workspace $ws1; exec kitty; $ws1'
exec i3-msg 'workspace $ws2; exec firefox' exec swaymsg 'workspace $ws2; exec firefox'
# #
## Multiple monitors ## Multiple monitors
# #
set $this_disp "eDP-1" set $this_disp "eDP-1"
set $other_disp "DP-11" set $other_disp "DP-3"
# set $this_disp "eDP-1"
# set $other_disp "DP-3"
# output edP-1 mode 1920x1080@120Hz
# output edP-1
workspace $ws1 output $other_disp $this_disp workspace $ws1 output $other_disp $this_disp
workspace $ws2 output $this_disp workspace $ws2 output $this_disp

View File

@@ -11,6 +11,8 @@ set -g status-right-length 90
set -g status-justify centre set -g status-justify centre
set -s escape-time 0 set -s escape-time 0
set -g allow-passthrough on
## COLORSCHEME: gruvbox dark (medium) ## COLORSCHEME: gruvbox dark (medium)
set-option -g status "on" set-option -g status "on"

View File

@@ -8,7 +8,7 @@
"modules-center": [ "modules-center": [
"clock#1", "clock#1",
"clock#2", "clock#2",
"clock#3", "custom/clock",
], ],
"modules-right": [ "modules-right": [
"pulseaudio", "pulseaudio",
@@ -37,8 +37,9 @@
"format": "{:%d-%m-%Y}", "format": "{:%d-%m-%Y}",
"tooltip": false "tooltip": false
}, },
"clock#3": { "custom/clock": {
"format": "{:%H:%M}", "exec": "date +\"%H:%M\"",
"interval": 10,
"tooltip": false "tooltip": false
}, },

View File

@@ -0,0 +1,40 @@
set notification-error-bg "rgba(29,32,33,1)" # bg
set notification-error-fg "rgba(251,73,52,1)" # bright:red
set notification-warning-bg "rgba(29,32,33,1)" # bg
set notification-warning-fg "rgba(250,189,47,1)" # bright:yellow
set notification-bg "rgba(29,32,33,1)" # bg
set notification-fg "rgba(184,187,38,1)" # bright:green
set completion-bg "rgba(80,73,69,1)" # bg2
set completion-fg "rgba(235,219,178,1)" # fg
set completion-group-bg "rgba(60,56,54,1)" # bg1
set completion-group-fg "rgba(146,131,116,1)" # gray
set completion-highlight-bg "rgba(131,165,152,1)" # bright:blue
set completion-highlight-fg "rgba(80,73,69,1)" # bg2
# Define the color in index mode
set index-bg "rgba(80,73,69,1)" # bg2
set index-fg "rgba(235,219,178,1)" # fg
set index-active-bg "rgba(131,165,152,1)" # bright:blue
set index-active-fg "rgba(80,73,69,1)" # bg2
set inputbar-bg "rgba(29,32,33,1)" # bg
set inputbar-fg "rgba(235,219,178,1)" # fg
set statusbar-bg "rgba(80,73,69,1)" # bg2
set statusbar-fg "rgba(235,219,178,1)" # fg
set highlight-color "rgba(250,189,47,0.5)" # bright:yellow
set highlight-active-color "rgba(254,128,25,0.5)" # bright:orange
set default-bg "rgba(29,32,33,1)" # bg
set default-fg "rgba(235,219,178,1)" # fg
set render-loading true
set render-loading-bg "rgba(29,32,33,1)" # bg
set render-loading-fg "rgba(235,219,178,1)" # fg
# Recolor book content's color
set recolor-lightcolor "rgba(29,32,33,1)" # bg
set recolor-darkcolor "rgba(235,219,178,1)" # fg
set recolor "true"
set recolor-keephue "true" # keep original color

View File

@@ -23,8 +23,8 @@ zstyle ':vcs_info:git:*' formats '%b '
setopt PROMPT_SUBST setopt PROMPT_SUBST
PROMPT='%F{magenta}[%m] %F{blue}%~%f %F{red}${vcs_info_msg_0_}%f$ ' PROMPT='%F{magenta}[%m] %F{blue}%~%f %F{red}${vcs_info_msg_0_}%f$ '
# source /usr/share/fzf/key-bindings.zsh source /usr/share/fzf/key-bindings.zsh
source /usr/share/doc/fzf/examples/key-bindings.zsh source /usr/share/fzf/completion.zsh
alias ssh='kitty +kitten ssh' alias ssh='kitty +kitten ssh'
@@ -39,19 +39,23 @@ alias ....="cd ../../.."
export PATH=$PATH:/home/andreas/.local/bin export PATH=$PATH:/home/andreas/.local/bin
export EDITOR=nvim export EDITOR=nvim
alias get-idf='. $HOME/ext_sw/esp-idf/export.sh' alias get-idf='. $HOME/ext-sw/esp-idf/export.sh'
alias c='cd ~/.dotfiles' alias c='cd ~/.dotfiles'
alias sc='cd ~/.config/sway' alias sc='cd ~/.config/sway && nvim'
alias nc='cd ~/.config/nvim' alias nc='cd ~/.config/nvim && nvim'
alias flog='nvim -c "Flog -all"' alias flog='nvim -c "Flog -all"'
alias bin='cd ~/.local/bin && nvim'
export PATH=$PATH:"$HOME/.cargo/bin"
eval "$(zoxide init zsh)"
eval "$(thefuck --alias)"
. "/usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh"
bindkey '^l' autosuggest-accept
# . "$HOME/.cargo/env" # . "$HOME/.cargo/env"
# # export PYENV_ROOT="$HOME/.pyenv"
# eval "$(zoxide init zsh)" # [[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"
# eval "$(thefuck --alias)" # eval "$(pyenv init - zsh)"
. "$HOME/.zsh/zsh-autosuggestions/zsh-autosuggestions.zsh"
bindkey '^y' autosuggest-accept
neofetch