Merge branch 'master' of git.blakenorth.net/home/git/dotfiles

This commit is contained in:
PowerUser64 2022-07-27 23:12:18 -07:00
commit b2c4d70e4b
7 changed files with 124 additions and 74 deletions

View file

@ -73,7 +73,7 @@ font:
family: Sauce Code Pro NF
# sizes that work well for 1920 by 1080: 14 (large), 12 (wide), 11.5 (narrow)
size: 12
size: 11.5
offset:
x: 0

View file

@ -139,21 +139,21 @@ M.cmp = function()
end,
},
sources = {
{ name = 'path' },
{ name = 'nvim_lua' },
{ name = 'nvim_lsp' },
{ name = 'nvim_lua' },
{ name = 'luasnip' },
{ name = 'treesitter' },
{ name = 'calc' },
-- { name = 'spell' },
{ name = 'buffer' },
{ name = 'cmdline' },
{ name = 'emoji' },
{ name = 'buffer' },
{ name = 'path' },
},
formatting = {
format = function(entry, vim_item)
-- fancy icons and a name of kind
format = require('lspkind').cmp_format({
require('lspkind').cmp_format({
mode = 'symbol', -- show only symbol annotations
maxwidth = 50, -- prevent the popup from showing more than provided characters (e.g 50 will not show more than 50 characters)
@ -178,6 +178,11 @@ M.cmp = function()
return vim_item
end,
},
window = {
documentation = {
border = { "", "", "", "", "", "", "", "" },
},
},
experimental = {
ghost_text = true,
}
@ -195,15 +200,15 @@ M.cmp = function()
cmp.setup.cmdline('/', search_config)
cmp.setup.cmdline('?', search_config)
-- Use cmdline & path source for ':' (if you enabled `native_menu`, this won't work anymore).
cmp.setup.cmdline(':', {
-- `:` cmdline setup.
cmp.setup.cmdline(':', {
mapping = cmp.mapping.preset.cmdline(),
sources = cmp.config.sources({
{ name = 'cmdline' }
{ name = 'path' }
}, {
{ name = 'path' }
{ name = 'cmdline' }
})
})
})
end -- <<<
-- lspconfig >>>

View file

@ -165,9 +165,8 @@ M.indent_blankline = function()
let g:indent_blankline_show_current_context = v:true
]]
require("indent_blankline").setup {
-- for example, context is off by default, use this to turn it on
show_current_context = true,
show_current_context_start = true,
show_current_context_start = false,
}
end
-- <<<

View file

@ -14,7 +14,7 @@ return require('packer').startup({function()
-- TODO: Find a better way to organize this
-- impatient (needs to go early)
use { -- lewis6991: impatient: Make nvim load faster by caching them
use { -- lewis6991: impatient: Make nvim load faster by caching them - needs to load early
'lewis6991/impatient.nvim',
config = function()
require('impatient')
@ -22,7 +22,7 @@ return require('packer').startup({function()
}
-- Packer
use { -- packer
use { -- packer: plugin manager
'wbthomason/packer.nvim',
config = function()
-- Map :PS to :PackerSync
@ -31,13 +31,13 @@ return require('packer').startup({function()
}
-- Colors (decorations)
use { -- treesitter: syntax highlighting and more
use { -- treesitter: syntax highlighting and more
'nvim-treesitter/nvim-treesitter', run = ':TSUpdate',
config = function()
require('blake.lsp').treesitter()
end,
}
use { -- onedark theme
use { -- onedark.nvim: onedark theme
'navarasu/onedark.nvim',
config = function()
-- vim.g.onedark_transparent_background = true
@ -48,7 +48,7 @@ return require('packer').startup({function()
]]
end
}
use { -- tokyonight theme
use { -- tokyonight.nvim: tokyonight theme
'folke/tokyonight.nvim',
config = function()
-- vim.g.onedark_transparent_background = true
@ -61,24 +61,24 @@ return require('packer').startup({function()
vim.cmd 'colorscheme tokyonight'
end,
}
use { -- newspring: Good light theme for writing
use { -- newspring: Good light theme for writing
'NLKNguyen/papercolor-theme',
}
use { -- statusline: lualine
use { -- statusline: lualine
'nvim-lualine/lualine.nvim',
requires = {'kyazdani42/nvim-web-devicons', opt = true},
config = function()
require('blake.other').lualine()
end,
}
use { -- nvim-tabline
use { -- nvim-tabline: batter looking tabline
'alvarosevilla95/luatab.nvim',
requires = 'kyazdani42/nvim-web-devicons',
config = function()
require('luatab').setup()
end
}
use { -- css color tag highlighter (ex: #FFB13B)
use { -- nvim-colorizer: css color tag highlighter (ex- #FFB13B)
'norcalli/nvim-colorizer.lua',
config = function()
vim.cmd 'command! COL ColorizerToggle'
@ -87,9 +87,9 @@ return require('packer').startup({function()
-- IDE features
---- LSP
use { -- lspinstall + lspconfig
use { -- lspinstall: language server installer, (lspconfig is here too)
'williamboman/nvim-lsp-installer',
{ -- lspconfig
{ -- lspconfig: default language server configurations
'neovim/nvim-lspconfig',
config = function()
require('blake.lsp').lspinstall()
@ -97,7 +97,7 @@ return require('packer').startup({function()
end
}
}
use { -- commentstring based on context from treesitter
use { -- ts-context-commentstring: set commentstring based on context from treesitter (two langs in one file)
'JoosepAlviste/nvim-ts-context-commentstring',
requires = 'nvim-treesitter/nvim-treesitter',
config = function()
@ -109,7 +109,7 @@ return require('packer').startup({function()
}
end,
}
use { -- compe
use { -- cmp: completion menu
'hrsh7th/nvim-cmp',
config = function()
require('blake.lsp').cmp()
@ -128,24 +128,30 @@ return require('packer').startup({function()
'hrsh7th/cmp-emoji',
},
}
use { -- luasnip (snippits)
use { -- luasnip: snippits plugin
'L3MON4D3/LuaSnip',
config = function()
require("luasnip.loaders.from_vscode").lazy_load()
end
}
use { -- function parameter previews
use { -- friendly-snippets: lots of good snippits
'rafamadriz/friendly-snippets'
}
use { -- lsp_signature: function parameter previews
'ray-x/lsp_signature.nvim',
after = 'nvim-lspconfig',
config = function()
require('blake.lsp').signature()
end,
}
use { -- symbols-outline: treesitter-based document outline (:SO)
use { -- symbols-outline: treesitter-based document outline (SO)
'simrat39/symbols-outline.nvim',
config = function()
vim.cmd 'command! SO SymbolsOutline'
vim.cmd 'nnoremap <Leader>so <cmd>SymbolsOutline<CR>'
end,
}
-- use { -- ALE: Support for lots of linters, etc
-- use { -- ALE: Support for lots of linters, etc
-- 'dense-analysis/ale',
-- ft = {'sh', 'zsh', 'zshrc', 'bashrc', 'bash'},
-- config = function()
@ -153,25 +159,25 @@ return require('packer').startup({function()
-- end
-- }
---- DAP (Debug Adapter Protocol)
use { -- nvim-dap: DAP support
use { -- nvim-dap: DAP support
'mfussenegger/nvim-dap',
config = function()
require('blake.dap').nvim_dap()
end
}
-- use { -- DAP adapter installer
-- use { -- dap-buddy: DAP adapter installer
-- 'Pocco81/dap-buddy.nvim',
-- config = function()
-- require('blake.dap').dap_buddy()
-- end
-- }
use { -- virtual-text: Print Variable names while debugging
use { -- virtual-text: Print Variable names while debugging
'theHamsta/nvim-dap-virtual-text',
config = function()
require("nvim-dap-virtual-text").setup()
end
}
use { -- a UI for nvim-dap (easy access to info)
use { -- nvim-dap-ui: a UI for nvim-dap
'rcarriga/nvim-dap-ui',
config = function()
require('blake.dap').dap_ui()
@ -179,14 +185,14 @@ return require('packer').startup({function()
}
---- Other IDE features
use { -- telescope: fuzzy finder for finding fuzzy things
use { -- telescope: fuzzy finder for finding fuzzy things
'nvim-telescope/telescope.nvim',
requires = { {'nvim-lua/plenary.nvim'} },
config = function()
require('blake.other').telescope()
end
}
use { -- git integration
use { -- gitsigns: git integration
'lewis6991/gitsigns.nvim',
requires = {
'nvim-lua/plenary.nvim'
@ -195,37 +201,37 @@ return require('packer').startup({function()
require('blake.other').gitsigns()
end,
}
-- use { -- file manager
-- use { -- nvim-tree: file manager
-- 'kyazdani42/nvim-tree.lua',
-- requires = 'kyazdani42/nvim-web-devicons',
-- config = function()
-- require('blake.other').nvimtree()
-- end
-- }
use { -- terminal
use { -- toggleterm: terminal
'akinsho/toggleterm.nvim',
tag = 'v1.*',
config = function()
require('blake.other').toggleterm()
end
}
use { -- Smooth Scrolling
use { -- neoscroll: Smooth Scrolling
'karb94/neoscroll.nvim',
config = function()
require('blake.other').neoscroll()
end,
}
use { -- automatic session management
use { -- auto-session: automatic session management
'rmagatti/auto-session',
config = function()
require('blake.other').autosession()
end
}
use { -- Markdown preview
use { -- glow: Markdown preview
'ellisonleao/glow.nvim',
ft = { 'md', 'markdown', }
}
use { -- Zen mode (:ZenMode or :ZM)
use { -- zen mode: (ZenMode or ZM)
"folke/zen-mode.nvim",
config = function()
require('blake.other').zenmode()
@ -233,31 +239,31 @@ return require('packer').startup({function()
vim.cmd 'inoremap <F10> <cmd>ZenMode<CR>'
end,
}
-- use { -- dim text outside paragraph or function
-- use { -- twilight.nvim: dim text outside paragraph or function
-- 'folke/twilight.nvim',
-- config = function()
-- vim.cmd 'command! TW Twilight'
-- require("twilight").setup()
-- end,
-- }
use { -- matchup: Use the percent (%) key for more things
use { -- matchup: Use the percent (%) key for more things
'andymass/vim-matchup',
}
-- use { -- lightspeed: Jump around in files quickly
-- use { -- lightspeed: Jump around in files quickly
-- 'ggandor/lightspeed.nvim',
-- }
use { -- indentline: Line indent indicators
use { -- indentline: Line indent indicators
'lukas-reineke/indent-blankline.nvim',
config = function()
require('blake.other').indent_blankline()
end
}
-- use { -- targets.vim: fix ci' and other things to work right
-- use { -- targets.vim: fix ci' and other things to work right
-- 'wellle/targets.vim',
-- }
-- Conveniences
use { -- sort motion (gs)
use { -- sort motion: (gs)
'christoomey/vim-sort-motion',
config = function()
vim.cmd [[
@ -267,19 +273,19 @@ return require('packer').startup({function()
end,
requires = 'navicore/vissort.vim', -- config requires
}
use { -- Ghost: Web browser integration
use { -- ghost: Web browser integration
'raghur/vim-ghost',
opt = true,
cmd = {'GhostStart', 'GhostInstall', 'GhostStop', 'GhostSync', 'GhostToggleSync',},
}
use { -- Undo tree
use { -- undotree: visual undo tree
'mbbill/undotree',
config = function()
vim.cmd 'nnoremap <F5> <cmd>UndotreeToggle<CR>'
vim.api.nvim_set_keymap('n', '<F5>', '<cmd>UndotreeToggle<CR>', { noremap = true, silent = true, })
end
}
-- use { -- Dim inactive window
-- use { -- shade.nvim: dim inactive window
-- 'sunjon/shade.nvim',
-- config = function()
-- require'shade'.setup({
@ -293,7 +299,7 @@ return require('packer').startup({function()
-- })
-- end
-- }
use { -- Quote pairing
use { -- nvim-autopairs: automatic quote pairing
'windwp/nvim-autopairs',
config = function()
-- If you want insert `(` after select function or method item
@ -311,13 +317,13 @@ return require('packer').startup({function()
end,
requires = 'hrsh7th/nvim-cmp', -- config requires
}
use { -- ts-autotag: automatically close html tags
use { -- ts-autotag: automatically close html tags
'windwp/nvim-ts-autotag',
config = function()
require('nvim-ts-autotag').setup()
end
}
use { -- endwise: auto add 'end' keyword
use { -- endwise: auto add 'end' keyword when typing loops in various languages
'RRethy/nvim-treesitter-endwise',
config = function()
require('nvim-treesitter.configs').setup {
@ -327,16 +333,13 @@ return require('packer').startup({function()
}
end
}
use { -- accelerated jk movement
'rhysd/accelerated-jk'
}
use { -- cheat.sh integration
'dbeniamine/cheat.sh-vim',
}
use { -- nvim-align: Align text
'RRethy/nvim-align'
use { -- nvim-align: Align text
'RRethy/nvim-align',
}
use { -- Comments (gb and gc)
use { -- comment.nvim: toggle comments - gb and gc
'numToStr/Comment.nvim',
config = function()
require('Comment').setup {
@ -362,37 +365,63 @@ return require('packer').startup({function()
}
end
}
use { -- rhysd: committia: better commit editing window
use { -- vim-illuminate: highlight other occurrences of the word under cursor
'RRethy/vim-illuminate',
}
use { -- filetype.nvim: detect filetype a lot faster than stock neovim
'nathom/filetype.nvim',
}
use { -- vim-rooter: cd to the root of a project when opening a file or folder
'notjedi/nvim-rooter.lua',
}
use { -- splitjoin: switch between single line and multiline versions of code - gJ and gS
'AndrewRadev/splitjoin.vim',
}
use { -- rhysd: clever-split: split calculation based on pane dimensions - CS or CleverSplit
'rhysd/clever-split.vim',
config = function()
-- Map :CS to :CleverSplit
vim.cmd 'command! CS CleverSplit'
end
}
use { -- rhysd: textobj-anyblock: allow ab or ib instead of i( or a[ or any of the many other block selectors
'rhysd/vim-textobj-anyblock',
requires = 'kana/vim-textobj-user',
}
-- use { -- rhysd: accelerated jk: make j and k move faster by pressing them a lot movement
-- 'rhysd/accelerated-jk',
-- }
use { -- rhysd: committia: better commit editing window
'rhysd/committia.vim',
}
use { -- rhysd: conflict-marker: mark git conflicts - [x ]x
use { -- rhysd: conflict-marker: mark git conflicts - [x, ]x, co, ct, cb, cB, cn
'rhysd/conflict-marker.vim',
}
use { -- lewis6991: spellsitter: Spell checking in treesitter files
use { -- lewis6991: spellsitter: Spell checking in treesitter files
'lewis6991/spellsitter.nvim',
config = function()
require('spellsitter').setup()
end,
}
use { -- lewis6991: spaceless: Strip trailing whitespace as you are editing
use { -- lewis6991: spaceless: Strip trailing whitespace as you are editing
'lewis6991/spaceless.nvim',
config = function()
require'spaceless'.setup()
end,
}
use { -- lewis6991: foldsigns: signcolumn signs on folded lines
use { -- lewis6991: foldsigns: signcolumn signs on folded lines
'lewis6991/foldsigns.nvim',
config = function()
require('foldsigns').setup()
end,
}
use { -- lewis6991: cleanfold: folds have never looked better
use { -- lewis6991: cleanfold: folds have never looked better
'lewis6991/cleanfold.nvim',
config = function()
require('cleanfold').setup()
end,
}
-- use { -- lewis6991: sattelite: small scroll bar
-- use { -- lewis6991: sattelite: small scroll bar
-- 'lewis6991/satellite.nvim',
-- config = function()
-- require('satellite').setup()
@ -402,16 +431,16 @@ return require('packer').startup({function()
-- ]]
-- end,
-- }
use { -- tpope: surround
'tpope/vim-surround'
use { -- tpope: surround: surround text with quotes, parens, tags, and more - ys
'tpope/vim-surround',
}
use { -- tpope: git integration
'tpope/vim-fugitive'
use { -- tpope: fugitive: git integration
'tpope/vim-fugitive',
}
use { -- tpope: Repeatability for various tpope plugins
use { -- tpope: repeat: Repeatability for various tpope plugins
'tpope/vim-repeat',
}
use { -- tpope: automatically get info about files and apply it to vim (tabs vs spaces, etc)
use { -- tpope: sleuth: automatically get info about files and apply it to vim (tabs vs spaces, etc)
'tpope/vim-sleuth',
}
@ -427,4 +456,5 @@ config = {
compile_path = vim.fn.stdpath('config')..'/lua/packer_compiled.lua',
}})
-- vim command to align all plugin descriptions: select all plugins in visual line, :'<,'>Align \(.\+use { -- .\+: \+\)\@<=[^ ][^:]\+$
-- vim:fdm=marker:fmr={,}:fdl=1:expandtab:tabstop=3:sw=3

View file

@ -4,6 +4,8 @@
alias \
vimdiff='nvim -d' \
alias sd=sudo
alias \
vv='$EDITOR' \
e='$EDITOR' \
@ -31,7 +33,7 @@ alias \
# <<<
## Program improvements (ex: ls = ls -h) >>>
alias sudo='sudo VISUAL="$VISUAL" SYSTEMD_EDITOR="$SYSTEMD_EDITOR" ' # allow using aliases in sudo commands
alias sudo='sudo VISUAL="$VISUAL" SYSTEMD_EDITOR="$SYSTEMD_EDITOR" ' # allow using aliases in sudo commands and add some env vars
alias df='df -h' # Human-readable sizes
alias free='free -m' # Show sizes in MB
alias bc='bc -ql' # Make bc usable for fast math
@ -52,6 +54,7 @@ alias \
fgrep='fgrep --color=auto' \
diff='diff --color=auto' \
pacman='pacman --color=auto' \
alias ip='ip -color=auto' \
# super duper paru alias
# shellcheck disable=SC2139
@ -86,9 +89,11 @@ alias ydotool='(sudo ydotoold &) && sleep 0.05 && sudo ydotool'
# Update zinit and plugins
alias zup='zinit self-update && zinit update --parallel'
# Run PackerSync in neovim with PS
alias PS='nvim --headless -c "autocmd User PackerComplete quitall" -c "PackerSync"'
# Edit config files
alias \
nvc='(cd ~/.config/nvim/lua/blake && nvim ../../init.lua)' \
zc='$EDITOR ~/.zshrc' \
sc='$EDITOR $SHELL_CONFIG_DIR/shrc' \
fstab='sudoedit /etc/fstab' \

6
.config/shell/bin/nvc Executable file
View file

@ -0,0 +1,6 @@
#!/bin/sh
# Purpose: edit nvim configuration while being cd'd into the directory that
# most of the files live so they can easily be :e'd
# Usage: nvc
cd ~/.config/nvim/lua/blake \
&& nvim ../../init.lua

View file

@ -25,6 +25,11 @@ export PATH="$PATH:${XDG_DATA_HOME:-$HOME/.local}/bin:$SHELL_CONFIG_DIR/bin"
# Basic default LS colors
export LSCOLORS="Gxfxcxdxbxegedabagacad"
# `less` colors
# shellcheck disable=SC2016
export LESS='-R --use-color -Dd+g$Du+b'
export MANPAGER="less -R --use-color -Dd+g -Du+b"
# Theme for zsh and nvim (soon™)
COLOR_SCHEME=tokyonight