2026 fresh, mise setups
This commit is contained in:
parent
6df6c249c6
commit
8d897d868e
40 changed files with 9 additions and 1198 deletions
88
.zshrc
88
.zshrc
|
|
@ -1,86 +1,3 @@
|
|||
export MISE_SHELL=zsh
|
||||
export __MISE_ORIG_PATH="$PATH"
|
||||
|
||||
mise() {
|
||||
local command
|
||||
command="${1:-}"
|
||||
if [ "$#" = 0 ]; then
|
||||
command mise
|
||||
return
|
||||
fi
|
||||
shift
|
||||
|
||||
case "$command" in
|
||||
deactivate|shell|sh)
|
||||
# if argv doesn't contains -h,--help
|
||||
if [[ ! " $@ " =~ " --help " ]] && [[ ! " $@ " =~ " -h " ]]; then
|
||||
eval "$(command mise "$command" "$@")"
|
||||
return $?
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
command mise "$command" "$@"
|
||||
}
|
||||
|
||||
_mise_hook() {
|
||||
eval "$(mise hook-env -s zsh)";
|
||||
}
|
||||
typeset -ag precmd_functions;
|
||||
if [[ -z "${precmd_functions[(r)_mise_hook]+1}" ]]; then
|
||||
precmd_functions=( _mise_hook ${precmd_functions[@]} )
|
||||
fi
|
||||
typeset -ag chpwd_functions;
|
||||
if [[ -z "${chpwd_functions[(r)_mise_hook]+1}" ]]; then
|
||||
chpwd_functions=( _mise_hook ${chpwd_functions[@]} )
|
||||
fi
|
||||
|
||||
_mise_hook
|
||||
if [ -z "${_mise_cmd_not_found:-}" ]; then
|
||||
_mise_cmd_not_found=1
|
||||
# preserve existing handler if present
|
||||
if typeset -f command_not_found_handler >/dev/null; then
|
||||
functions -c command_not_found_handler _command_not_found_handler
|
||||
fi
|
||||
|
||||
typeset -gA _mise_cnf_tried
|
||||
|
||||
# helper for fallback behavior
|
||||
_mise_fallback() {
|
||||
local _cmd="$1"; shift
|
||||
if typeset -f _command_not_found_handler >/dev/null; then
|
||||
_command_not_found_handler "$_cmd" "$@"
|
||||
return $?
|
||||
else
|
||||
print -u2 -- "zsh: command not found: $_cmd"
|
||||
return 127
|
||||
fi
|
||||
}
|
||||
|
||||
command_not_found_handler() {
|
||||
local cmd="$1"; shift
|
||||
|
||||
# never intercept mise itself or retry already-attempted commands
|
||||
if [[ "$cmd" == "mise" || "$cmd" == mise-* || -n "${_mise_cnf_tried["$cmd"]}" ]]; then
|
||||
_mise_fallback "$cmd" "$@"
|
||||
return $?
|
||||
fi
|
||||
|
||||
# run the hook; only retry if the command is actually found afterward
|
||||
if mise hook-not-found -s zsh -- "$cmd"; then
|
||||
_mise_hook
|
||||
if command -v -- "$cmd" >/dev/null 2>&1; then
|
||||
"$cmd" "$@"
|
||||
return $?
|
||||
fi
|
||||
else
|
||||
# only mark as tried if mise explicitly can't handle it
|
||||
_mise_cnf_tried["$cmd"]=1
|
||||
fi
|
||||
|
||||
# fall back
|
||||
_mise_fallback "$cmd" "$@"
|
||||
}
|
||||
fi
|
||||
|
||||
# shellcheck shell=bash
|
||||
|
||||
|
|
@ -338,6 +255,5 @@ export EDITOR='nvim'
|
|||
# alias zshconfig="mate ~/.zshrc"
|
||||
# alias ohmyzsh="mate ~/.oh-my-zsh"
|
||||
|
||||
. "$HOME/.atuin/bin/env"
|
||||
|
||||
eval "$(atuin init zsh)"
|
||||
eval "$(init zsh)"
|
||||
eval "$(/home/gaiety/.local/bin/mise activate zsh)"
|
||||
|
|
|
|||
13
README.md
13
README.md
|
|
@ -1,19 +1,14 @@
|
|||
# Gaiety's Dotfiles
|
||||
# Gaiety's Dotfiles 2026
|
||||
|
||||
Designed for Unix Systems.
|
||||
|
||||

|
||||
|
||||
## Setup
|
||||
|
||||
Misc dependencies: `git, curl, apt`
|
||||
|
||||
```sh
|
||||
# apt Installations
|
||||
sudo ./setup.sh
|
||||
curl https://mise.run | sh
|
||||
chmod +x ./mise-tasks/*
|
||||
|
||||
# Links & Configs
|
||||
task
|
||||
mise run install-terminal
|
||||
```
|
||||
|
||||
|
||||
|
|
|
|||
65
Taskfile.yml
65
Taskfile.yml
|
|
@ -1,65 +0,0 @@
|
|||
# https://taskfile.dev
|
||||
|
||||
version: '3'
|
||||
|
||||
tasks:
|
||||
default:
|
||||
deps: [mise, fonts, tools]
|
||||
cmds:
|
||||
- echo "mise checks ran, tools updated"
|
||||
|
||||
mise:
|
||||
cmds:
|
||||
- mise self-update
|
||||
- mise doctor
|
||||
|
||||
fonts:
|
||||
dir: downloads
|
||||
cmds:
|
||||
- curl -LO https://github.com/githubnext/monaspace/releases/download/v1.301/monaspace-frozen-v1.301.zip
|
||||
- unzip monaspace-frozen-v1.301.zip -d ./fonts
|
||||
- mkdir -p ~/.fonts
|
||||
- find . -type f -exec mv {} ~/.fonts \;
|
||||
|
||||
|
||||
tools:
|
||||
deps: [git, zsh, kitty, ripgrep, neovim, bat, zoxide]
|
||||
cmds:
|
||||
- echo "tools installed"
|
||||
|
||||
zsh:
|
||||
cmds: # installed via ./setup.sh
|
||||
- cmd: sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
|
||||
ignore_error: true
|
||||
- cmd: rm ~/.zshrc
|
||||
ignore_error: true
|
||||
- cmd: ln -s "$(pwd)/.zshrc" ~/.zshrc
|
||||
ignore_error: true
|
||||
|
||||
kitty:
|
||||
cmds: # installed via ./setup.sh
|
||||
- cmd: ln -s "$(pwd)/kitty" ~/.config/kitty
|
||||
ignore_error: true
|
||||
|
||||
git:
|
||||
cmds:
|
||||
- cmd: ln -s "$(pwd)/.gitconfig" ~/.gitconfig
|
||||
ignore_error: true
|
||||
|
||||
ripgrep:
|
||||
cmds:
|
||||
- mise use --global ripgrep@latest
|
||||
|
||||
neovim:
|
||||
cmds:
|
||||
- mise use --global neovim@0.11.4
|
||||
- cmd: ln -s "$(pwd)/nvim" ~/.config/nvim
|
||||
ignore_error: true
|
||||
|
||||
bat:
|
||||
cmds:
|
||||
- mise use --global bat@latest
|
||||
|
||||
zoxide:
|
||||
cmds:
|
||||
- mise use --global zoxide@latest
|
||||
BIN
difft.tar.gz
BIN
difft.tar.gz
Binary file not shown.
|
|
@ -1 +0,0 @@
|
|||
/mnt/storage/repos/dotfiles/kitty
|
||||
|
|
@ -1,89 +0,0 @@
|
|||
#########################
|
||||
# verdigris for kitty for kitty
|
||||
# 0.0.1
|
||||
# GPL-3.0-only
|
||||
# https://git.basking.monster/gaiety/verdigris
|
||||
####################
|
||||
|
||||
#########################
|
||||
# The basic colors
|
||||
foreground #C6E4F0
|
||||
background #00040B
|
||||
selection_foreground #19323B
|
||||
selection_background #C6E4F0
|
||||
####################
|
||||
|
||||
#########################
|
||||
# Cursor colors
|
||||
cursor #C6E4F0
|
||||
cursor_text_color #19323B
|
||||
# cursor_trail_color none
|
||||
####################
|
||||
|
||||
#########################
|
||||
# URL colors
|
||||
url_color #8CC8E0
|
||||
####################
|
||||
|
||||
#########################
|
||||
# Marks colors
|
||||
# mark1_foreground black
|
||||
# mark1_background #98d3cb
|
||||
# mark2_foreground black
|
||||
# mark2_background #f2dcd3
|
||||
# mark3_foreground black
|
||||
# mark3_background #f274bc
|
||||
####################
|
||||
|
||||
#########################
|
||||
# Tab bar colors
|
||||
active_tab_foreground #C6E4F0
|
||||
active_tab_background #19323B
|
||||
inactive_tab_foreground #C6E4F0
|
||||
inactive_tab_background #4E6872
|
||||
# tab_bar_background #{pit.toHex()}
|
||||
# tab_bar_margin_color none
|
||||
####################
|
||||
|
||||
#########################
|
||||
# window border colors and terminal bell colors
|
||||
active_border_color #23DBC1
|
||||
inactive_border_color #4E6872
|
||||
bell_border_color #FF9F6F
|
||||
# visual_bell_color none
|
||||
####################
|
||||
|
||||
#########################
|
||||
# The basic 16 colors
|
||||
#: black
|
||||
color0 #00040B
|
||||
color8 #4E6872
|
||||
|
||||
#: red
|
||||
color1 #E8ADA9
|
||||
color9 #E8ADA9
|
||||
|
||||
#: green
|
||||
color2 #98CCAC
|
||||
color10 #98CCAC
|
||||
|
||||
#: yellow
|
||||
color3 #E1B392
|
||||
color11 #E1B392
|
||||
|
||||
#: blue
|
||||
color4 #8CC8E0
|
||||
color12 #8CC8E0
|
||||
|
||||
#: magenta
|
||||
color5 #BEB6E8
|
||||
color13 #BEB6E8
|
||||
|
||||
#: cyan
|
||||
color6 #23DBC1
|
||||
color14 #23DBC1
|
||||
|
||||
#: white
|
||||
color7 #C6E4F0
|
||||
color15 #C6E4F0
|
||||
####################
|
||||
|
|
@ -1,18 +0,0 @@
|
|||
# font_family VictorMono Nerd Font Mono
|
||||
font_family Monaspace Krypton Frozen
|
||||
bold_font Monaspace Neon Frozen
|
||||
italic_font Monaspace Radon Frozen
|
||||
bold_italic_font Monaspace Radon Frozen
|
||||
cursor_trail 1
|
||||
cursor_trail_decay 0.1 0.4
|
||||
cursor_trail_start_threshold 2
|
||||
font_size 20
|
||||
tab_bar_min_tabs 2
|
||||
tab_bar_edge bottom
|
||||
tab_bar_style powerline
|
||||
tab_powerline_style slanted
|
||||
tab_title_template {title}{' :{}:'.format(num_windows) if num_windows > 1 else ''}
|
||||
|
||||
include ./kitty-theme.conf
|
||||
kitty_enable_wayland=1 kitty
|
||||
background_opacity 1
|
||||
3
mise-tasks/install-terminal
Executable file
3
mise-tasks/install-terminal
Executable file
|
|
@ -0,0 +1,3 @@
|
|||
#!/usr/bin/env bash
|
||||
#MISE description="Install Ghostty"
|
||||
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/mkasberg/ghostty-ubuntu/HEAD/install.sh)"
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
[tools]
|
||||
task = "3.45.4"
|
||||
|
|
@ -1,41 +0,0 @@
|
|||
-- Bootstrap lazy.nvim
|
||||
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
||||
if not (vim.uv or vim.loop).fs_stat(lazypath) then
|
||||
local lazyrepo = "https://github.com/folke/lazy.nvim.git"
|
||||
local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath })
|
||||
if vim.v.shell_error ~= 0 then
|
||||
vim.api.nvim_echo({
|
||||
{ "Failed to clone lazy.nvim:\n", "ErrorMsg" },
|
||||
{ out, "WarningMsg" },
|
||||
{ "\nPress any key to exit..." },
|
||||
}, true, {})
|
||||
vim.fn.getchar()
|
||||
os.exit(1)
|
||||
end
|
||||
end
|
||||
vim.opt.rtp:prepend(lazypath)
|
||||
|
||||
-- Make sure to setup `mapleader` and `maplocalleader` before
|
||||
-- loading lazy.nvim so that mappings are correct.
|
||||
-- This is also a good place to setup other settings (vim.opt)
|
||||
vim.g.mapleader = " "
|
||||
vim.g.maplocalleader = "\\"
|
||||
|
||||
-- Setup lazy.nvim
|
||||
-- load plugins
|
||||
require("lazy").setup({
|
||||
spec = {
|
||||
{ import = "plugins" },
|
||||
{ import = "filetypes" },
|
||||
},
|
||||
}, lazy_defaults, {
|
||||
checker = { enabled = true },
|
||||
})
|
||||
|
||||
require "config/options"
|
||||
require "config/keys"
|
||||
require "config/autocmds"
|
||||
|
||||
vim.schedule(function()
|
||||
-- require "mappings"
|
||||
end)
|
||||
|
|
@ -1,50 +0,0 @@
|
|||
{
|
||||
"LuaSnip": { "branch": "master", "commit": "fb525166ccc30296fb3457441eb979113de46b00" },
|
||||
"alpha-nvim": { "branch": "main", "commit": "a35468cd72645dbd52c0624ceead5f301c566dff" },
|
||||
"cmp-buffer": { "branch": "main", "commit": "b74fab3656eea9de20a9b8116afa3cfc4ec09657" },
|
||||
"cmp-nvim-lsp": { "branch": "main", "commit": "a8912b88ce488f411177fc8aed358b04dc246d7b" },
|
||||
"cmp-path": { "branch": "main", "commit": "c6635aae33a50d6010bf1aa756ac2398a2d54c32" },
|
||||
"cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" },
|
||||
"codestats.nvim": { "branch": "master", "commit": "041b315c4f82997186fcdb3fc2f687cc128a28f3" },
|
||||
"elixir-tools.nvim": { "branch": "main", "commit": "f7e18753f5587b422aac628249fa46c66ed24af3" },
|
||||
"flash.nvim": { "branch": "main", "commit": "3c942666f115e2811e959eabbdd361a025db8b63" },
|
||||
"friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" },
|
||||
"hlargs.nvim": { "branch": "main", "commit": "ce8d705866dae44513ff48613d5e37e4da524d70" },
|
||||
"inc-rename.nvim": { "branch": "main", "commit": "a3e31af13844534c66041ce92f29af7745883875" },
|
||||
"indent-blankline.nvim": { "branch": "master", "commit": "005b56001b2cb30bfa61b7986bc50657816ba4ba" },
|
||||
"lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" },
|
||||
"lsp-format.nvim": { "branch": "master", "commit": "42d1d3e407c846d95f84ea3767e72ed6e08f7495" },
|
||||
"lualine.nvim": { "branch": "master", "commit": "a94fc68960665e54408fe37dcf573193c4ce82c9" },
|
||||
"mason-lspconfig.nvim": { "branch": "main", "commit": "c4c84f4521d62de595c0d0f718a9a40c1890c8ce" },
|
||||
"mason.nvim": { "branch": "main", "commit": "8024d64e1330b86044fed4c8494ef3dcd483a67c" },
|
||||
"neoscroll.nvim": { "branch": "master", "commit": "f957373912e88579e26fdaea4735450ff2ef5c9c" },
|
||||
"noice.nvim": { "branch": "main", "commit": "0427460c2d7f673ad60eb02b35f5e9926cf67c59" },
|
||||
"notify": { "branch": "master", "commit": "b5825cf9ee881dd8e43309c93374ed5b87b7a896" },
|
||||
"nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" },
|
||||
"nvim-autopairs": { "branch": "master", "commit": "2647cce4cb64fb35c212146663384e05ae126bdf" },
|
||||
"nvim-cmp": { "branch": "main", "commit": "b5311ab3ed9c846b585c0c15b7559be131ec4be9" },
|
||||
"nvim-cokeline": { "branch": "main", "commit": "9fbed130683b7b6f73198c09e35ba4b33f547c08" },
|
||||
"nvim-colorizer.lua": { "branch": "master", "commit": "517df88cf2afb36652830df2c655df2da416a0ae" },
|
||||
"nvim-lspconfig": { "branch": "master", "commit": "69a1624aff5dc30dddd0c59d99a947b63c80bf2a" },
|
||||
"nvim-origami": { "branch": "main", "commit": "89a2c27b0855311c35057e6fa024d2824af6a4bd" },
|
||||
"nvim-regexplainer": { "branch": "main", "commit": "2ec38892e7ce36f0c58b478f3570936fa5bd11f1" },
|
||||
"nvim-spectre": { "branch": "master", "commit": "72f56f7585903cd7bf92c665351aa585e150af0f" },
|
||||
"nvim-spider": { "branch": "main", "commit": "d4bdc45eac425e77108f068bd0706ff3ac20be7f" },
|
||||
"nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" },
|
||||
"nvim-treesitter-context": { "branch": "master", "commit": "1a1a7c5d6d75cb49bf64049dafab15ebe294a79f" },
|
||||
"nvim-treesitter-endwise": { "branch": "master", "commit": "d6cbb83307d516ec076d17c9a33d704ef626ee8c" },
|
||||
"nvim-ts-autotag": { "branch": "main", "commit": "a1d526af391f6aebb25a8795cbc05351ed3620b5" },
|
||||
"nvim-web-devicons": { "branch": "master", "commit": "19d6211c78169e78bab372b585b6fb17ad974e82" },
|
||||
"overseer.nvim": { "branch": "master", "commit": "72c68aab0358c92f451168b704c411c4a3e3410e" },
|
||||
"plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" },
|
||||
"rainbow-delimiters.nvim": { "branch": "master", "commit": "3277ad5f96eb03c9d618c88e24f683e4364e578c" },
|
||||
"render-markdown.nvim": { "branch": "main", "commit": "0944ba04ea7fc9e9087c1dedc76562d6e0d110cf" },
|
||||
"resession.nvim": { "branch": "master", "commit": "84c81e5fd8a94dc85a60b97089536174e558e288" },
|
||||
"smear-cursor.nvim": { "branch": "main", "commit": "cf2f73a4d0b402edb8177d059ee1127e621b79a7" },
|
||||
"snacks.nvim": { "branch": "main", "commit": "bc0630e43be5699bb94dadc302c0d21615421d93" },
|
||||
"switch.vim": { "branch": "main", "commit": "df58397cfa36d2f428ddc2652ba32d1db2af6d02" },
|
||||
"symbols.nvim": { "branch": "main", "commit": "62cd4236b3eeabf3b970f225b1cc3379e11dc99c" },
|
||||
"todo-comments.nvim": { "branch": "main", "commit": "304a8d204ee787d2544d8bc23cd38d2f929e7cc5" },
|
||||
"vim-illuminate": { "branch": "master", "commit": "0d1e93684da00ab7c057410fecfc24f434698898" },
|
||||
"which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" }
|
||||
}
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
local augroup = vim.api.nvim_create_augroup -- Create/get autocommand group
|
||||
local autocmd = vim.api.nvim_create_autocmd -- Create autocommand
|
||||
|
||||
-- Highlight on yank
|
||||
augroup('YankHighlight', { clear = true })
|
||||
autocmd('TextYankPost', {
|
||||
group = 'YankHighlight',
|
||||
callback = function()
|
||||
vim.highlight.on_yank({ higroup = 'IncSearch', timeout = '1000' })
|
||||
end
|
||||
})
|
||||
|
|
@ -1,21 +0,0 @@
|
|||
local map = vim.api.nvim_set_keymap
|
||||
local opts = { noremap = true, silent = true }
|
||||
|
||||
-- F2 rename variable
|
||||
-- K inspect with LSP
|
||||
|
||||
map('n', '<S-Tab>', '<Cmd>bp<CR>', opts)
|
||||
map('n', '<Tab>', '<Cmd>bn<CR>', opts)
|
||||
map('n', '<[b>', '<Cmd>bp<CR>', opts)
|
||||
map('n', '<]b>', '<Cmd>bn<CR>', opts)
|
||||
map('n', '<leader>w', '<Cmd>bd<CR>', opts)
|
||||
map('n', '<leader>s', '<Cmd>w<CR>', opts)
|
||||
map('n', '<leader>S', '<Cmd>w!<CR>', opts)
|
||||
map('n', '<leader>t', "<Cmd>Switch<CR>", opts)
|
||||
map('n', '<leader>r', "<Cmd>Spectre<CR>", opts)
|
||||
map('n', '<Up>', "<C-a>", opts)
|
||||
map('n', '<Down>', "<C-x>", opts)
|
||||
map('n', '<Right>', "<Cmd>Switch<CR>", opts)
|
||||
map('n', '<Left>', "<Cmd>Switch<CR>", opts)
|
||||
map('n', '<leader>t', "<Cmd>OverseerRun<CR>", opts)
|
||||
map('n', '<leader>T', "<Cmd>OverseerToggle<CR>", opts)
|
||||
|
|
@ -1,40 +0,0 @@
|
|||
-- This file is automatically loaded by plugins.core
|
||||
vim.g.mapleader = " "
|
||||
vim.g.maplocalleader = "\\"
|
||||
|
||||
-- LazyVim auto format
|
||||
vim.g.autoformat = true
|
||||
|
||||
-- Set Theme
|
||||
-- vim.cmd.colorscheme "catppuccin"
|
||||
|
||||
-- Set Misc Options
|
||||
local opt = vim.opt
|
||||
|
||||
opt.cursorline = true -- Enable highlighting of the current line
|
||||
opt.autoindent = true
|
||||
opt.expandtab = true -- Use spaces instead of tabs
|
||||
opt.shiftwidth = 2 -- Size of an indent
|
||||
opt.tabstop = 2 -- Size of an indent
|
||||
opt.linebreak = true -- Wrap lines at convenient points
|
||||
opt.list = true -- Show some invisible characters (tabs...
|
||||
-- opt.mouse = false
|
||||
opt.number = true -- Print line number
|
||||
opt.relativenumber = true -- Relative line numbers
|
||||
opt.ruler = false -- Disable the default ruler
|
||||
opt.scrolloff = 4 -- Lines of context
|
||||
opt.sidescrolloff = 8 -- Columns of context
|
||||
opt.spelllang = { "en" }
|
||||
opt.showmode = false -- Dont show mode since we have a statusline
|
||||
opt.termguicolors = true -- True color support
|
||||
opt.undofile = true
|
||||
opt.undolevels = 10000
|
||||
opt.virtualedit = "block" -- Allow cursor to move where there is no text in visual block mode
|
||||
opt.wrap = false -- Disable line wrap
|
||||
opt.signcolumn = "yes"
|
||||
opt.foldcolumn = "0"
|
||||
opt.foldlevel = 99
|
||||
opt.foldlevelstart = 99
|
||||
opt.foldmethod = "expr"
|
||||
opt.foldexpr = "nvim_treesitter#foldexpr()"
|
||||
opt.foldenable = true
|
||||
|
|
@ -1,32 +0,0 @@
|
|||
return {
|
||||
"elixir-tools/elixir-tools.nvim",
|
||||
version = "*",
|
||||
event = { "BufReadPre", "BufNewFile" },
|
||||
ft = { "elixir", "heex", "eex" },
|
||||
config = function()
|
||||
local elixir = require("elixir")
|
||||
local elixirls = require("elixir.elixirls")
|
||||
|
||||
elixir.setup {
|
||||
nextls = { enable = true },
|
||||
elixirls = {
|
||||
enable = true,
|
||||
settings = elixirls.settings {
|
||||
dialyzerEnabled = true,
|
||||
enableTestLenses = true,
|
||||
},
|
||||
on_attach = function(client, bufnr)
|
||||
vim.keymap.set("n", "<space>fp", ":ElixirFromPipe<cr>", { buffer = true, noremap = true })
|
||||
vim.keymap.set("n", "<space>tp", ":ElixirToPipe<cr>", { buffer = true, noremap = true })
|
||||
vim.keymap.set("v", "<space>em", ":ElixirExpandMacro<cr>", { buffer = true, noremap = true })
|
||||
end,
|
||||
},
|
||||
projectionist = {
|
||||
enable = true
|
||||
}
|
||||
}
|
||||
end,
|
||||
dependencies = {
|
||||
"nvim-lua/plenary.nvim",
|
||||
},
|
||||
}
|
||||
|
|
@ -1,8 +0,0 @@
|
|||
return {
|
||||
'MeanderingProgrammer/render-markdown.nvim',
|
||||
ft = { "markdown" },
|
||||
dependencies = { 'nvim-treesitter/nvim-treesitter'},
|
||||
---@module 'render-markdown'
|
||||
---@type render.md.UserConfig
|
||||
opts = {},
|
||||
}
|
||||
|
|
@ -1,21 +0,0 @@
|
|||
return {
|
||||
'bennypowers/nvim-regexplainer',
|
||||
lazy = true,
|
||||
config = function()
|
||||
require 'regexplainer'.setup({
|
||||
mappings = {
|
||||
toggle = 'gR',
|
||||
},
|
||||
popup = {
|
||||
border = {
|
||||
padding = { 1, 2 },
|
||||
style = 'solid',
|
||||
}
|
||||
}
|
||||
})
|
||||
end,
|
||||
requires = {
|
||||
'nvim-treesitter/nvim-treesitter',
|
||||
'MunifTanjim/nui.nvim',
|
||||
}
|
||||
}
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
return {
|
||||
"AndrewRadev/switch.vim"
|
||||
}
|
||||
|
|
@ -1,17 +0,0 @@
|
|||
return {
|
||||
"liljaylj/codestats.nvim",
|
||||
dependencies = { "nvim-lua/plenary.nvim" },
|
||||
event = { "TextChanged", "InsertEnter" },
|
||||
cmd = { "CodeStatsXpSend", "CodeStatsProfileUpdate" },
|
||||
config = function()
|
||||
require("codestats").setup({
|
||||
username = "gaiety", -- needed to fetch profile data
|
||||
base_url = "https://codestats.net", -- codestats.net base url
|
||||
api_key = "SFMyNTY.WjJGcFpYUjUjI01qSXhPVFU9.P5dSCW38Tr2S1o5cKqRAVlQfsTcU--po2dAE7PPj1Eo", -- fill with your codestats machine API
|
||||
send_on_exit = true, -- send xp on nvim exit
|
||||
send_on_timer = true, -- send xp on timer
|
||||
timer_interval = 60000, -- timer interval in milliseconds (minimum 1000ms to prevent DDoSing codestat.net servers)
|
||||
curl_timeout = 5, -- curl request timeout in seconds
|
||||
})
|
||||
end,
|
||||
}
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
return {
|
||||
"catgoose/nvim-colorizer.lua",
|
||||
event = "BufReadPre",
|
||||
opts = { -- set to setup table
|
||||
mode = "virtualtext",
|
||||
virtualtext = "■",
|
||||
virtualtext_inline = true,
|
||||
},
|
||||
}
|
||||
|
|
@ -1,44 +0,0 @@
|
|||
return {
|
||||
"goolord/alpha-nvim",
|
||||
config = function()
|
||||
local startify = require("alpha.themes.startify")
|
||||
local dashboard = require("alpha.themes.dashboard")
|
||||
local logo = [[
|
||||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣀⣀⣀⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
|
||||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡀⣠⣴⣿⣽⣷⣿⣿⣿⣿⣾⣷⣦⢄⠀⠀⠀⠀⠀⠀⠀⠀⠀
|
||||
⠀⠀⠀⣠⣤⠀⠀⠀⠀⠀⣀⣸⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣾⣝⢄⠀⠀⠀⠀⠀⠀⠀⠀
|
||||
⠀⠀⣰⣿⣾⡀⢀⡠⣪⣽⣿⣯⡿⡾⣏⡻⡿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⢣⠀⠀⠀⠀⠀⠀⠀
|
||||
⠀⢰⣿⣿⣿⣯⣷⣿⣿⣿⣿⣿⡿⣻⣷⡿⣫⠤⢄⡹⡿⣽⣏⢹⠅⠻⡟⣹⡤⣀⠀⠀⠀⠀⠀
|
||||
⠀⠸⣹⣿⣿⣿⣿⣿⣿⣿⡟⠞⣾⣿⡟⢱⡏⠃⢀⢳⢹⣷⣿⣮⣵⣞⣻⣿⣿⣿⣷⡀⠀⠀⠀
|
||||
⠀⠀⠈⠫⠿⣛⣻⣏⢪⣾⣿⣿⠯⣻⣿⣦⠻⠦⢬⣛⣼⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡱⠀⠀⠀
|
||||
⠀⠀⠀⢠⣞⣺⣽⡏⣯⣿⣿⣯⣿⣿⣿⣿⣿⣾⣾⣿⣿⣿⣿⣿⣿⣿⢿⣿⠿⠋⢁⢇⠀⠀⠀
|
||||
⠀⠀⠀⢇⣾⢿⣿⣷⣟⣿⣿⠑⣿⣿⣿⣿⣿⣿⣿⣿⣿⣟⣿⣷⣿⣿⣿⡻⣷⣷⢿⣳⣕⡄⠀
|
||||
⠀⠀⢠⣗⣟⢷⣽⡛⢿⣿⣿⣆⠁⠻⣿⣿⣿⣿⣿⣿⣿⣿⡿⣿⣻⣯⣿⣿⣹⣿⣹⣻⣿⡞⡄
|
||||
⠀⠀⠀⢠⣿⣿⣏⣨⣾⣿⣿⢯⣿⣠⣌⠛⠿⠿⣿⣿⣿⣿⠘⠛⢻⣯⣍⢽⣿⣷⣷⣿⣿⣿⡇
|
||||
⠀⠀⢀⣸⣿⣩⣿⣿⣽⢿⣿⣿⣿⣸⣿⣇⣐⠓⠚⠛⠋⣁⣤⠆⢀⡻⣿⣾⣴⣻⣟⡿⣿⡧⡇
|
||||
⠀⠀⠈⠾⣻⣿⡾⣿⣿⣿⣾⣙⡿⣛⣂⠈⠱⢿⣿⣿⡿⣿⣿⣟⣿⣻⣿⣿⡫⢬⣿⣧⣿⣷⡱
|
||||
⠀⠀⠀⠀⢈⣞⡽⣫⣧⣾⣷⣶⣸⣿⣿⣿⣦⡀⠀⠩⣾⣿⣿⣿⣿⣿⣮⣿⣿⡾⣿⣽⣷⡗⠁
|
||||
YIP YAP YAP YAP YIP YIP YAP
|
||||
]]
|
||||
-- ⠀⠀⢀⢮⣟⣾⣿⣿⣻⣿⡷⣻⣿⠿⣿⣿⣿⣤⣀⠹⣿⣿⣿⣿⣿⣿⣿⠏⠁⡧⠗⠁⠀⠀
|
||||
-- ⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⣟⣾⡿⣶⣿⣿⣿⣿⣿⣿⣦⡘⠿⠿⠿⣿⡟⠀⢰⠁⠀⠀
|
||||
dashboard.section.header.val = vim.split(logo, "\n")
|
||||
dashboard.section.header.opts.hl = "@tag"
|
||||
local quotes = {
|
||||
{ "Sorting moss by taste..." },
|
||||
{ "There is no Kobold OSHA..." },
|
||||
{ "All kobolds are just lil guys..." },
|
||||
{ "Yips and Yaps are just morse code dots and dashes..." },
|
||||
{ "Kobolds pass the Rorschach test by eating the picture..." },
|
||||
}
|
||||
dashboard.section.footer.val = quotes[math.random(#quotes)]
|
||||
dashboard.section.buttons.val = {
|
||||
dashboard.button('`', ' Tree'),
|
||||
dashboard.button('SPC SPC', ' Find File'),
|
||||
dashboard.button('SPC /', ' Live Grep'),
|
||||
}
|
||||
require("alpha").setup(
|
||||
dashboard.opts
|
||||
)
|
||||
end,
|
||||
}
|
||||
|
|
@ -1,32 +0,0 @@
|
|||
return {
|
||||
"chrisgrieser/nvim-origami",
|
||||
event = "VeryLazy",
|
||||
opts = {
|
||||
useLspFoldsWithTreesitterFallback = true, -- required for `autoFold`
|
||||
pauseFoldsOnSearch = true,
|
||||
foldtext = {
|
||||
enabled = true,
|
||||
padding = 3,
|
||||
lineCount = {
|
||||
template = "%d lines", -- `%d` is replaced with the number of folded lines
|
||||
hlgroup = "Comment",
|
||||
},
|
||||
diagnosticsCount = true, -- uses hlgroups and icons from `vim.diagnostic.config().signs`
|
||||
gitsignsCount = true, -- requires `gitsigns.nvim`
|
||||
},
|
||||
autoFold = {
|
||||
enabled = true,
|
||||
kinds = { "comment", "imports" }, ---@type lsp.FoldingRangeKind[]
|
||||
},
|
||||
foldKeymaps = {
|
||||
setup = true, -- modifies `h` and `l`
|
||||
hOnlyOpensOnFirstColumn = false,
|
||||
},
|
||||
},
|
||||
|
||||
-- recommended: disable vim's auto-folding
|
||||
init = function()
|
||||
vim.opt.foldlevel = 99
|
||||
vim.opt.foldlevelstart = 99
|
||||
end,
|
||||
}
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
return {
|
||||
"RRethy/vim-illuminate",
|
||||
}
|
||||
|
|
@ -1,199 +0,0 @@
|
|||
return {
|
||||
{
|
||||
"smjonas/inc-rename.nvim",
|
||||
opts = {}
|
||||
},
|
||||
{
|
||||
{
|
||||
"mason-org/mason-lspconfig.nvim",
|
||||
opts = {
|
||||
ensure_installed = { "lexical" }
|
||||
},
|
||||
dependencies = {
|
||||
{ "mason-org/mason.nvim", opts = {} },
|
||||
{ "neovim/nvim-lspconfig" },
|
||||
{ "hrsh7th/nvim-cmp" },
|
||||
{ "hrsh7th/cmp-nvim-lsp" },
|
||||
{ "hrsh7th/cmp-buffer" },
|
||||
{ "hrsh7th/cmp-path" },
|
||||
{ "saadparwaiz1/cmp_luasnip" },
|
||||
{ "L3MON4D3/LuaSnip" },
|
||||
{ "rafamadriz/friendly-snippets" },
|
||||
},
|
||||
config = function()
|
||||
vim.api.nvim_create_autocmd('LspAttach', {
|
||||
desc = 'LSP actions',
|
||||
callback = function()
|
||||
local bufmap = function(mode, lhs, rhs)
|
||||
local opts = { buffer = true }
|
||||
vim.keymap.set(mode, lhs, rhs, opts)
|
||||
end
|
||||
|
||||
bufmap('n', 'K', '<cmd>lua vim.lsp.buf.hover()<cr>')
|
||||
bufmap('n', 'gd', '<cmd>lua vim.lsp.buf.definition()<cr>')
|
||||
bufmap('n', 'gD', '<cmd>lua vim.lsp.buf.declaration()<cr>')
|
||||
bufmap('n', 'gi', '<cmd>lua vim.lsp.buf.implementation()<cr>')
|
||||
bufmap('n', 'go', '<cmd>lua vim.lsp.buf.type_definition()<cr>')
|
||||
bufmap('n', 'gr', '<cmd>lua vim.lsp.buf.references()<cr>')
|
||||
bufmap('n', 'gs', '<cmd>lua vim.lsp.buf.signature_help()<cr>')
|
||||
bufmap('n', '<F2>', '<cmd>lua vim.lsp.buf.rename()<cr>')
|
||||
bufmap('n', '<F3>', '<cmd>lua vim.lsp.buf.format({async = true})<cr>')
|
||||
bufmap('n', '<F4>', '<cmd>lua vim.lsp.buf.code_action()<cr>')
|
||||
bufmap('n', 'gl', '<cmd>lua vim.diagnostic.open_float()<cr>')
|
||||
bufmap('n', '[d', '<cmd>lua vim.diagnostic.goto_prev()<cr>')
|
||||
bufmap('n', ']d', '<cmd>lua vim.diagnostic.goto_next()<cr>')
|
||||
end
|
||||
})
|
||||
|
||||
|
||||
---
|
||||
-- Diagnostics
|
||||
---
|
||||
|
||||
vim.diagnostic.config({
|
||||
virtual_text = true,
|
||||
severity_sort = true,
|
||||
float = {
|
||||
border = 'rounded',
|
||||
source = 'always',
|
||||
},
|
||||
})
|
||||
|
||||
vim.lsp.handlers['textDocument/hover'] = vim.lsp.with(
|
||||
vim.lsp.handlers.hover,
|
||||
{ border = 'rounded' }
|
||||
)
|
||||
|
||||
vim.lsp.handlers['textDocument/signatureHelp'] = vim.lsp.with(
|
||||
vim.lsp.handlers.signature_help,
|
||||
{ border = 'rounded' }
|
||||
)
|
||||
|
||||
---
|
||||
-- LSP servers
|
||||
---
|
||||
|
||||
-- require('mason').setup({})
|
||||
-- require('mason-lspconfig').setup({})
|
||||
|
||||
local lspconfig = require('lspconfig')
|
||||
local lsp_capabilities = require('cmp_nvim_lsp').default_capabilities()
|
||||
|
||||
lspconfig.tsserver.setup({
|
||||
capabilities = lsp_capabilities,
|
||||
})
|
||||
lspconfig.lua_ls.setup({
|
||||
capabilities = lsp_capabilities,
|
||||
})
|
||||
|
||||
|
||||
---
|
||||
-- Autocomplete
|
||||
---
|
||||
vim.opt.completeopt = { 'menu', 'menuone', 'noselect' }
|
||||
|
||||
require('luasnip.loaders.from_vscode').lazy_load()
|
||||
|
||||
local cmp = require('cmp')
|
||||
local luasnip = require('luasnip')
|
||||
|
||||
local select_opts = { behavior = cmp.SelectBehavior.Select }
|
||||
|
||||
cmp.setup({
|
||||
snippet = {
|
||||
expand = function(args)
|
||||
luasnip.lsp_expand(args.body)
|
||||
end
|
||||
},
|
||||
sources = {
|
||||
{ name = 'path' },
|
||||
{ name = 'render-markdown' },
|
||||
{ name = 'nvim_lsp', keyword_length = 1 },
|
||||
{ name = 'buffer', keyword_length = 3 },
|
||||
{ name = 'luasnip', keyword_length = 2 },
|
||||
},
|
||||
window = {
|
||||
documentation = cmp.config.window.bordered()
|
||||
},
|
||||
formatting = {
|
||||
fields = { 'menu', 'abbr', 'kind' },
|
||||
format = function(entry, item)
|
||||
local menu_icon = {
|
||||
nvim_lsp = 'λ',
|
||||
luasnip = '⋗',
|
||||
buffer = 'Ω',
|
||||
path = '🖫',
|
||||
}
|
||||
|
||||
item.menu = menu_icon[entry.source.name]
|
||||
return item
|
||||
end,
|
||||
},
|
||||
mapping = {
|
||||
['<Up>'] = cmp.mapping.select_prev_item(select_opts),
|
||||
['<Down>'] = cmp.mapping.select_next_item(select_opts),
|
||||
|
||||
['<C-p>'] = cmp.mapping.select_prev_item(select_opts),
|
||||
['<C-n>'] = cmp.mapping.select_next_item(select_opts),
|
||||
|
||||
['<C-u>'] = cmp.mapping.scroll_docs(-4),
|
||||
['<C-d>'] = cmp.mapping.scroll_docs(4),
|
||||
|
||||
['<C-e>'] = cmp.mapping.abort(),
|
||||
['<C-y>'] = cmp.mapping.confirm({ select = true }),
|
||||
['<CR>'] = cmp.mapping.confirm({ select = false }),
|
||||
|
||||
['<C-f>'] = cmp.mapping(function(fallback)
|
||||
if luasnip.jumpable(1) then
|
||||
luasnip.jump(1)
|
||||
else
|
||||
fallback()
|
||||
end
|
||||
end, { 'i', 's' }),
|
||||
|
||||
['<C-b>'] = cmp.mapping(function(fallback)
|
||||
if luasnip.jumpable(-1) then
|
||||
luasnip.jump(-1)
|
||||
else
|
||||
fallback()
|
||||
end
|
||||
end, { 'i', 's' }),
|
||||
|
||||
['<Tab>'] = cmp.mapping(function(fallback)
|
||||
local col = vim.fn.col('.') - 1
|
||||
|
||||
if cmp.visible() then
|
||||
cmp.select_next_item(select_opts)
|
||||
elseif col == 0 or vim.fn.getline('.'):sub(col, col):match('%s') then
|
||||
fallback()
|
||||
else
|
||||
cmp.complete()
|
||||
end
|
||||
end, { 'i', 's' }),
|
||||
|
||||
['<S-Tab>'] = cmp.mapping(function(fallback)
|
||||
if cmp.visible() then
|
||||
cmp.select_prev_item(select_opts)
|
||||
else
|
||||
fallback()
|
||||
end
|
||||
end, { 'i', 's' }),
|
||||
},
|
||||
})
|
||||
end
|
||||
}
|
||||
},
|
||||
{
|
||||
"lukas-reineke/lsp-format.nvim",
|
||||
config = function()
|
||||
require("lsp-format").setup {}
|
||||
|
||||
vim.api.nvim_create_autocmd('LspAttach', {
|
||||
callback = function(args)
|
||||
local client = assert(vim.lsp.get_client_by_id(args.data.client_id))
|
||||
require("lsp-format").on_attach(client, args.buf)
|
||||
end,
|
||||
})
|
||||
end,
|
||||
},
|
||||
}
|
||||
|
|
@ -1,17 +0,0 @@
|
|||
return {
|
||||
{ "chrisgrieser/nvim-spider", lazy = true },
|
||||
{
|
||||
"folke/flash.nvim",
|
||||
event = "VeryLazy",
|
||||
---@type Flash.Config
|
||||
opts = {},
|
||||
-- stylua: ignore
|
||||
keys = {
|
||||
{ "s", mode = { "n", "x", "o" }, function() require("flash").jump() end, desc = "Flash" },
|
||||
{ "S", mode = { "n", "x", "o" }, function() require("flash").treesitter() end, desc = "Flash Treesitter" },
|
||||
{ "r", mode = "o", function() require("flash").remote() end, desc = "Remote Flash" },
|
||||
{ "R", mode = { "o", "x" }, function() require("flash").treesitter_search() end, desc = "Treesitter Search" },
|
||||
{ "<c-s>", mode = { "c" }, function() require("flash").toggle() end, desc = "Toggle Flash Search" },
|
||||
},
|
||||
}
|
||||
}
|
||||
|
|
@ -1,60 +0,0 @@
|
|||
return {
|
||||
{
|
||||
'RRethy/nvim-treesitter-endwise',
|
||||
},
|
||||
{
|
||||
"windwp/nvim-ts-autotag",
|
||||
config = function()
|
||||
require('nvim-ts-autotag').setup({
|
||||
opts = {
|
||||
enable_close = true, -- Auto close tags
|
||||
enable_rename = true, -- Auto rename pairs of tags
|
||||
enable_close_on_slash = true -- Auto close on trailing </
|
||||
}
|
||||
})
|
||||
end
|
||||
},
|
||||
{
|
||||
'windwp/nvim-autopairs',
|
||||
event = "InsertEnter",
|
||||
config = function()
|
||||
require('nvim-autopairs').setup()
|
||||
|
||||
local npairs = require("nvim-autopairs")
|
||||
local Rule = require('nvim-autopairs.rule')
|
||||
local cmp_autopairs = require('nvim-autopairs.completion.cmp')
|
||||
local cmp = require('cmp')
|
||||
cmp.event:on(
|
||||
'confirm_done',
|
||||
cmp_autopairs.on_confirm_done()
|
||||
)
|
||||
|
||||
npairs.setup({
|
||||
check_ts = true,
|
||||
ts_config = {
|
||||
lua = { 'string' }, -- it will not add a pair on that treesitter node
|
||||
javascript = { 'template_string' },
|
||||
java = false, -- don't check treesitter on java
|
||||
}
|
||||
})
|
||||
|
||||
local ts_conds = require('nvim-autopairs.ts-conds')
|
||||
|
||||
|
||||
-- press % => %% only while inside a comment or string
|
||||
npairs.add_rules({
|
||||
Rule("%", "%", "lua")
|
||||
:with_pair(ts_conds.is_ts_node({ 'string', 'comment' })),
|
||||
Rule("$", "$", "lua")
|
||||
:with_pair(ts_conds.is_not_ts_node({ 'function' }))
|
||||
})
|
||||
end,
|
||||
opts = {
|
||||
enabled = function(bufnr) return true end,
|
||||
disable_filetype = { "TelescopePrompt", "spectre_panel", "snacks_picker_input" },
|
||||
enable_check_bracket_line = false,
|
||||
map_cr = true,
|
||||
map_bs = true, -- map the <BS> key
|
||||
},
|
||||
}
|
||||
}
|
||||
|
|
@ -1,52 +0,0 @@
|
|||
return {
|
||||
"folke/snacks.nvim",
|
||||
---@type snacks.Config
|
||||
opts = {
|
||||
picker = {
|
||||
layout = {
|
||||
preview = "main",
|
||||
preset = "ivy",
|
||||
},
|
||||
sources = {
|
||||
explorer = {
|
||||
auto_close = true,
|
||||
layout = { preset = "sidebar", preview = "top" },
|
||||
}
|
||||
}
|
||||
},
|
||||
terminal = {
|
||||
win = {
|
||||
position = "float",
|
||||
border = "rounded",
|
||||
height = 0.8,
|
||||
width = 0.6,
|
||||
}
|
||||
},
|
||||
},
|
||||
keys = {
|
||||
{ "`", function() Snacks.explorer() end, desc = "File Explorer" },
|
||||
{ "<leader>s", function() Snacks.picker.lsp_symbols() end, desc = "LSP Symbols" },
|
||||
{ "gd", function() Snacks.picker.lsp_definitions() end, desc = "Goto Definition" },
|
||||
{ "gD", function() Snacks.picker.lsp_declarations() end, desc = "Goto Declaration" },
|
||||
{ "gr", function() Snacks.picker.lsp_references() end, nowait = true, desc = "References" },
|
||||
{ "gI", function() Snacks.picker.lsp_implementations() end, desc = "Goto Implementation" },
|
||||
{ "gy", function() Snacks.picker.lsp_type_definitions() end, desc = "Goto T[y]pe Definition" },
|
||||
|
||||
{ "<leader><leader>", function() Snacks.picker.smart() end, desc = "Smart Find Files" },
|
||||
{ "<leader>b", function() Snacks.picker.buffers() end, desc = "Buffers" },
|
||||
{ "<leader>/", function() Snacks.picker.grep() end, desc = "Grep" },
|
||||
{ "<leader>:", function() Snacks.picker.command_history() end, desc = "Command History" },
|
||||
{ "<leader>n", function() Snacks.picker.notifications() end, desc = "Notification History" },
|
||||
{ "<leader>u", function() Snacks.picker.undo() end, desc = "Undo History" },
|
||||
{ '<leader>"', function() Snacks.picker.registers() end, desc = "Registers" },
|
||||
|
||||
{ "<leader>gb", function() Snacks.picker.git_branches() end, desc = "Git Branches" },
|
||||
{ "<leader>gl", function() Snacks.picker.git_log() end, desc = "Git Log" },
|
||||
{ "<leader>gs", function() Snacks.picker.git_status() end, desc = "Git Status" },
|
||||
{ "<leader>gS", function() Snacks.picker.git_stash() end, desc = "Git Stash" },
|
||||
{ "<leader>gd", function() Snacks.picker.git_diff() end, desc = "Git Diff (Hunks)" },
|
||||
{ "<leader>gf", function() Snacks.picker.git_log_file() end, desc = "Git Log File" },
|
||||
|
||||
{ "<F12>", function() Snacks.terminal.toggle() end, desc = "Terminal Toggle", mode = { "n", "i", "t" } },
|
||||
}
|
||||
}
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
return {
|
||||
"folke/noice.nvim",
|
||||
dependencies = {
|
||||
"nvim-pack/nvim-spectre",
|
||||
"nvim-lua/plenary.nvim",
|
||||
},
|
||||
config = function ()
|
||||
require("noice").setup {
|
||||
presets = { inc_rename = true }
|
||||
}
|
||||
end
|
||||
}
|
||||
|
|
@ -1,6 +0,0 @@
|
|||
return {
|
||||
"karb94/neoscroll.nvim",
|
||||
opts = {
|
||||
easing = "quadratic"
|
||||
},
|
||||
}
|
||||
|
|
@ -1,14 +0,0 @@
|
|||
return {
|
||||
"sphamba/smear-cursor.nvim",
|
||||
event = "VeryLazy",
|
||||
opts = {
|
||||
stiffness = 0.8, -- 0.6 [0, 1]
|
||||
trailing_stiffness = 0.5, -- 0.4 [0, 1]
|
||||
stiffness_insert_mode = 0.6, -- 0.4 [0, 1]
|
||||
trailing_stiffness_insert_mode = 0.6, -- 0.4 [0, 1]
|
||||
distance_stop_animating = 0.5,
|
||||
time_interval = 7, -- milliseconds
|
||||
cursor_color = "#f9e2af",
|
||||
legacy_computing_symbols_support = true,
|
||||
},
|
||||
}
|
||||
|
|
@ -1,67 +0,0 @@
|
|||
return {
|
||||
'nvim-lualine/lualine.nvim',
|
||||
config = function()
|
||||
-- Bubbles config for lualine
|
||||
-- Author: lokesh-krishna
|
||||
-- MIT license, see LICENSE for more details.
|
||||
|
||||
-- stylua: ignore
|
||||
local colors = {
|
||||
blue = '#89b4fa',
|
||||
cyan = '#89dceb',
|
||||
black = '#1e1e2e',
|
||||
white = '#cdd6f4',
|
||||
red = '#f38ba8',
|
||||
violet = '#cba6f7',
|
||||
grey = '#303030',
|
||||
}
|
||||
|
||||
local bubbles_theme = {
|
||||
normal = {
|
||||
a = { fg = colors.black, bg = colors.violet },
|
||||
b = { fg = colors.white, bg = colors.grey },
|
||||
c = { fg = colors.white },
|
||||
},
|
||||
|
||||
insert = { a = { fg = colors.black, bg = colors.blue } },
|
||||
visual = { a = { fg = colors.black, bg = colors.cyan } },
|
||||
replace = { a = { fg = colors.black, bg = colors.red } },
|
||||
|
||||
inactive = {
|
||||
a = { fg = colors.white, bg = colors.black },
|
||||
b = { fg = colors.white, bg = colors.black },
|
||||
c = { fg = colors.white },
|
||||
},
|
||||
}
|
||||
|
||||
require('lualine').setup {
|
||||
options = {
|
||||
theme = bubbles_theme,
|
||||
component_separators = '',
|
||||
section_separators = { left = '', right = '' },
|
||||
},
|
||||
sections = {
|
||||
lualine_a = { { 'mode', separator = { left = '' }, right_padding = 2 } },
|
||||
lualine_b = { 'filename', 'branch' },
|
||||
lualine_c = {
|
||||
'%=', --[[ add your center components here in place of this comment ]]
|
||||
},
|
||||
lualine_x = {},
|
||||
lualine_y = { 'filetype', 'progress' },
|
||||
lualine_z = {
|
||||
{ 'location', separator = { right = '' }, left_padding = 2 },
|
||||
},
|
||||
},
|
||||
inactive_sections = {
|
||||
lualine_a = { 'filename' },
|
||||
lualine_b = {},
|
||||
lualine_c = {},
|
||||
lualine_x = {},
|
||||
lualine_y = {},
|
||||
lualine_z = { 'location' },
|
||||
},
|
||||
tabline = {},
|
||||
extensions = {},
|
||||
}
|
||||
end,
|
||||
}
|
||||
|
|
@ -1,20 +0,0 @@
|
|||
return {
|
||||
"oskarrrrrrr/symbols.nvim",
|
||||
config = function()
|
||||
local r = require("symbols.recipes")
|
||||
require("symbols").setup(
|
||||
r.DefaultFilters,
|
||||
r.AsciiSymbols,
|
||||
{
|
||||
sidebar = {
|
||||
unfold_on_goto = true,
|
||||
close_on_goto = true,
|
||||
preview = {
|
||||
show_always = true,
|
||||
show_line_number = true,
|
||||
}
|
||||
},
|
||||
}
|
||||
)
|
||||
end
|
||||
}
|
||||
|
|
@ -1,15 +0,0 @@
|
|||
return {
|
||||
{
|
||||
"willothy/nvim-cokeline",
|
||||
dependencies = {
|
||||
"nvim-lua/plenary.nvim", -- Required for v0.4.0+
|
||||
"nvim-tree/nvim-web-devicons", -- If you want devicons
|
||||
"stevearc/resession.nvim" -- Optional, for persistent history
|
||||
},
|
||||
config = function()
|
||||
require('cokeline').setup({
|
||||
show_if_buffers_are_at_least = 2,
|
||||
})
|
||||
end,
|
||||
}
|
||||
}
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
return {
|
||||
'stevearc/overseer.nvim',
|
||||
opts = {},
|
||||
}
|
||||
|
|
@ -1,5 +0,0 @@
|
|||
return {
|
||||
"folke/todo-comments.nvim",
|
||||
event = "VeryLazy",
|
||||
dependencies = { "nvim-lua/plenary.nvim" },
|
||||
}
|
||||
|
|
@ -1,34 +0,0 @@
|
|||
return {
|
||||
{
|
||||
"folke/which-key.nvim",
|
||||
opts = {
|
||||
spec = {
|
||||
{ "<BS>", desc = "Decrement Selection", mode = "x" },
|
||||
{ "<c-space>", desc = "Increment Selection", mode = { "x", "n" } },
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
"m-demare/hlargs.nvim",
|
||||
event = { "VeryLazy" },
|
||||
},
|
||||
{
|
||||
'nvim-treesitter/nvim-treesitter',
|
||||
build = ':TSUpdate',
|
||||
dependencies = {
|
||||
'nvim-treesitter/nvim-treesitter-context',
|
||||
},
|
||||
main = 'nvim-treesitter.configs',
|
||||
opts = {
|
||||
auto_install = true,
|
||||
highlight = {
|
||||
enable = true,
|
||||
}
|
||||
},
|
||||
},
|
||||
{
|
||||
"windwp/nvim-ts-autotag",
|
||||
event = "VeryLazy",
|
||||
opts = {},
|
||||
}
|
||||
}
|
||||
|
|
@ -1 +0,0 @@
|
|||
/mnt/storage/repos/dotfiles/nvim
|
||||
|
|
@ -1,52 +0,0 @@
|
|||
""
|
||||
" verdigris v0.0.1
|
||||
"
|
||||
|
||||
" URL: https://git.basking.monster/gaiety/verdigris/ports/neovim
|
||||
" Author: Gaiety
|
||||
" License: GPL-3.0-only
|
||||
""
|
||||
|
||||
set background=dark
|
||||
hi clear
|
||||
|
||||
if exists("syntax_on")
|
||||
syntax reset
|
||||
endif
|
||||
let g:colors_name="verdigris"
|
||||
|
||||
|
||||
let Italic = ""
|
||||
if exists('g:verdigris_italic')
|
||||
let Italic = "italic"
|
||||
endif
|
||||
let g:verdigris_italic = get(g:, 'verdigris_italic', 0)
|
||||
|
||||
let Bold = ""
|
||||
if exists('g:verdigris_bold')
|
||||
let Bold = "bold"
|
||||
endif
|
||||
let g:verdigris_bold = get(g:, 'verdigris_bold', 0)
|
||||
|
||||
hi Conceal guifg=#4E6872 ctermfg=242 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE
|
||||
hi DiffAdd guifg=#98CCAC ctermfg=115 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE
|
||||
hi DiffChange guifg=#E1B392 ctermfg=180 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE
|
||||
hi DiffDelete guifg=#E8ADA9 ctermfg=181 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE
|
||||
hi ErrorMsg guifg=#E8ADA9 ctermfg=181 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE
|
||||
hi SpellBad guifg=#E8ADA9 ctermfg=181 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE
|
||||
hi WarningMsg guifg=#E1B392 ctermfg=180 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE
|
||||
hi Comment guifg=#19323B ctermfg=236 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE
|
||||
hi Constant guifg=#FF9F6F ctermfg=215 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE
|
||||
hi String guifg=#23DBC1 ctermfg=43 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE
|
||||
hi Identifier guifg=#8CC8E0 ctermfg=116 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE
|
||||
hi Statement guifg=#C6E4F0 ctermfg=254 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE
|
||||
hi Exception guifg=#E8ADA9 ctermfg=181 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE
|
||||
hi PreProc guifg=#4E6872 ctermfg=242 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE
|
||||
hi Type guifg=#E1B392 ctermfg=180 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE
|
||||
hi Special guifg=#E1B392 ctermfg=180 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE
|
||||
hi Ignore guifg=#4E6872 ctermfg=242 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE
|
||||
hi Error guifg=#E8ADA9 ctermfg=181 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE
|
||||
hi Todo guifg=#8CC8E0 ctermfg=116 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE
|
||||
|
||||
|
||||
|
||||
BIN
screenshot.png
BIN
screenshot.png
Binary file not shown.
|
Before Width: | Height: | Size: 111 KiB |
38
setup.sh
38
setup.sh
|
|
@ -1,38 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
echo Installing ZSH
|
||||
sudo apt install zsh
|
||||
chsh -s $(which zsh)
|
||||
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
|
||||
echo ZSH installed, log out then back in to have it be your default shell
|
||||
echo then run this script again
|
||||
|
||||
echo Installing mise
|
||||
curl https://mise.run | sh
|
||||
echo "eval \"\$(~/.local/bin/mise activate bash)\"" >> ~/.bashrc
|
||||
source ~/.bashrc
|
||||
|
||||
echo mise installed, restart your terminal then run this script again
|
||||
mise doctor
|
||||
mise trust
|
||||
|
||||
sudo apt install kitty
|
||||
sudo update-alternatives --config x-terminal-emulator
|
||||
echo kitty installed, set it as your default terminal if you wish
|
||||
|
||||
sudo apt install ranger
|
||||
sudo update-alternatives --config xdg-open
|
||||
echo ranger installed, set it as your default file manager if you wish
|
||||
|
||||
sudo apt install mosh
|
||||
echo mosh installed
|
||||
|
||||
curl --proto '=https' --tlsv1.2 -LsSf https://setup.atuin.sh | sh
|
||||
atuin import auto
|
||||
echo Atuin installed
|
||||
|
||||
wget -qO difft.tar.gz https://github.com/Wilfred/difftastic/releases/latest/download/difft-x86_64-unknown-linux-gnu.tar.gz
|
||||
sudo tar xf difft.tar.gz -C /usr/local/bin
|
||||
echo difftastic installed
|
||||
|
||||
echo Finally, run 'task' whenever you are ready for the remaining setup
|
||||
Loading…
Add table
Reference in a new issue