feat: Adding new additions of:
- autopairs (trying again and kind of liking it) - render-markdown to render markdown in editor - twilight for dimming other lines - nvim-biscuits Changes to the zshrc settings to add location, color settings environment variables, some keybindings, universal aliases for coloration, etc. Adding a loader.enable to the start of init.lua for faster load times (need to benchmark this but it feels faster).
This commit is contained in:
parent
6faf8a1641
commit
dab3447bad
@ -42,6 +42,9 @@
|
|||||||
--
|
--
|
||||||
-- Created: 7/2/2012
|
-- Created: 7/2/2012
|
||||||
|
|
||||||
|
local vim = vim
|
||||||
|
vim.loader.enable()
|
||||||
|
|
||||||
require('custom_functions')
|
require('custom_functions')
|
||||||
require('custom_commands')
|
require('custom_commands')
|
||||||
require('keymappings')
|
require('keymappings')
|
||||||
|
|||||||
@ -14,21 +14,24 @@ end
|
|||||||
vim.opt.rtp:prepend(lazypath)
|
vim.opt.rtp:prepend(lazypath)
|
||||||
|
|
||||||
require('lazy').setup({
|
require('lazy').setup({
|
||||||
require('plugins/mason'),
|
require('plugins.mason'), -- LSP and DAP manager
|
||||||
require('plugins/lspconfig'),
|
require('plugins.gruvbox'), -- Colorscheme
|
||||||
require('plugins/gruvbox'),
|
require('plugins.comment'), -- Simple language specific commenting shortcuts
|
||||||
require('plugins/comment'),
|
require('plugins.dap'), -- DAP debugging plugin
|
||||||
require('plugins/dap'),
|
require('plugins.dap-python'), -- Debug plugin settings specifically for python
|
||||||
-- require('plugins/dap-python'),
|
require('plugins.treesitter'), -- Treesitter syntax highlighting and tree support
|
||||||
require('plugins/treesitter'),
|
require('plugins.gitsigns'), -- Gutter symbols for Git status and quick actions for Git operations
|
||||||
require('plugins/gitsigns'),
|
require('plugins.luasnip'), -- Snippet enging
|
||||||
require('plugins/luasnip'),
|
require('plugins.nvim-cmp'), -- Autocompletion engine
|
||||||
require('plugins/nvim-cmp'),
|
require('plugins.lualine'), -- Status line
|
||||||
require('plugins/lualine'),
|
require('plugins.telekasten'), -- Note taking setup
|
||||||
require('plugins/telekasten'),
|
require('plugins.telescope'), -- Floating windows for searching and other operations
|
||||||
require('plugins/telescope'),
|
'tpope/vim-surround', -- Change surrounding symbols
|
||||||
'tpope/vim-surround',
|
require('plugins.floaterm'), -- Floating terminal
|
||||||
require('plugins/floaterm'),
|
require('plugins.vim-godot'), -- Godot specific bindings and debug
|
||||||
require('plugins/vim-godot'),
|
require('plugins.markdown-preview'), -- Open a preview of markdown rendered in a browser
|
||||||
require('plugins/markdown-preview'),
|
require('plugins.render-markdown'), -- Render markdown directly in nvim (experimental, may take over for markdown-preview)
|
||||||
|
require('plugins.autopairs'), -- Autocomplete symbol pairs when typing (experimental)
|
||||||
|
require('plugins.nvim-biscuits'), -- Virtual text on closing tags for what the start of the block is (experimental)
|
||||||
|
require('plugins.twilight') -- Focus mode, dim lines around the current segment of code
|
||||||
})
|
})
|
||||||
|
|||||||
6
nvim/lua/plugins/autopairs.lua
Normal file
6
nvim/lua/plugins/autopairs.lua
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
return {
|
||||||
|
'windwp/nvim-autopairs',
|
||||||
|
config = function ()
|
||||||
|
require('nvim-autopairs').setup()
|
||||||
|
end
|
||||||
|
}
|
||||||
@ -36,13 +36,11 @@ return {
|
|||||||
'clangd', -- C/C++
|
'clangd', -- C/C++
|
||||||
-- 'hadolint', -- Dockerfile linting
|
-- 'hadolint', -- Dockerfile linting
|
||||||
'intelephense', -- PHP
|
'intelephense', -- PHP
|
||||||
-- 'jdtls', -- java
|
|
||||||
'lua_ls',
|
'lua_ls',
|
||||||
'marksman', -- markdown
|
'marksman', -- markdown
|
||||||
-- 'pylint',
|
|
||||||
'pylsp',
|
'pylsp',
|
||||||
'rust_analyzer',
|
'rust_analyzer',
|
||||||
'ts_ls', -- Typscript
|
-- 'ts_ls', -- Typscript
|
||||||
'yamlls',
|
'yamlls',
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -136,6 +134,7 @@ return {
|
|||||||
})
|
})
|
||||||
end,
|
end,
|
||||||
dependencies = {
|
dependencies = {
|
||||||
|
'neovim/nvim-lspconfig',
|
||||||
'mason-org/mason-lspconfig.nvim',
|
'mason-org/mason-lspconfig.nvim',
|
||||||
},
|
},
|
||||||
lazy = false,
|
lazy = false,
|
||||||
|
|||||||
22
nvim/lua/plugins/nvim-biscuits.lua
Normal file
22
nvim/lua/plugins/nvim-biscuits.lua
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
return {
|
||||||
|
'code-biscuits/nvim-biscuits',
|
||||||
|
config = function ()
|
||||||
|
require('nvim-biscuits').setup({
|
||||||
|
default_config = {
|
||||||
|
max_length = 3,
|
||||||
|
trim_by_words = true,
|
||||||
|
min_distance = 5,
|
||||||
|
prefix_string = " 📎 ",
|
||||||
|
},
|
||||||
|
-- on_events = { 'InsertLeave', 'CursorHoldI' },
|
||||||
|
max_file_size = '250kb',
|
||||||
|
-- show_on_start = true,
|
||||||
|
cursor_line_only = true,
|
||||||
|
language_config = {
|
||||||
|
markdown = {
|
||||||
|
disabled = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
end
|
||||||
|
}
|
||||||
@ -41,6 +41,7 @@ return {
|
|||||||
{ name = 'nvim_lsp' },
|
{ name = 'nvim_lsp' },
|
||||||
{ name = 'luasnip' },
|
{ name = 'luasnip' },
|
||||||
{ name = 'path' },
|
{ name = 'path' },
|
||||||
|
{ name = 'render-markdown' },
|
||||||
}, {
|
}, {
|
||||||
{ name = 'buffer' },
|
{ name = 'buffer' },
|
||||||
})
|
})
|
||||||
|
|||||||
115
nvim/lua/plugins/render-markdown.lua
Normal file
115
nvim/lua/plugins/render-markdown.lua
Normal file
@ -0,0 +1,115 @@
|
|||||||
|
return {
|
||||||
|
'meanderingprogrammer/render-markdown.nvim',
|
||||||
|
config = function ()
|
||||||
|
vim.treesitter.language.register('markdown', 'telekasten')
|
||||||
|
|
||||||
|
require('render-markdown').setup({
|
||||||
|
enabled = true,
|
||||||
|
-- render_modes = { 'n', 'c', 't' },
|
||||||
|
max_file_size = 10.0,
|
||||||
|
debounce = 100,
|
||||||
|
file_types = { 'markdown', 'telekasten' },
|
||||||
|
link = {
|
||||||
|
enabled = true,
|
||||||
|
footnote = {
|
||||||
|
enabled = true,
|
||||||
|
superscript = true,
|
||||||
|
prefix = '',
|
||||||
|
suffix = '',
|
||||||
|
},
|
||||||
|
highlight = 'RenderMarkdownLink',
|
||||||
|
},
|
||||||
|
latex = {
|
||||||
|
enabled = false,
|
||||||
|
},
|
||||||
|
checkbox = {
|
||||||
|
enabled = true,
|
||||||
|
render_modes = false,
|
||||||
|
bullet = false,
|
||||||
|
right_pad = 1,
|
||||||
|
unchecked = {
|
||||||
|
-- icon = ' ',
|
||||||
|
highlight = 'RenderMarkdownUnchecked',
|
||||||
|
scope_highlight = nil,
|
||||||
|
},
|
||||||
|
checked = {
|
||||||
|
-- icon = ' ',
|
||||||
|
highlight = 'RenderMarkdownChecked',
|
||||||
|
},
|
||||||
|
custom = {
|
||||||
|
todo = {
|
||||||
|
raw = '[-]',
|
||||||
|
-- rendered = '',
|
||||||
|
highlight = 'RenderMarkdownTodo',
|
||||||
|
scope_highlight = nil,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
bullet = {
|
||||||
|
enabled = true,
|
||||||
|
render_modes = false,
|
||||||
|
icons = { '●', '○', '◆', '◇' },
|
||||||
|
ordered_icons = function (ctx)
|
||||||
|
local value = vim.trim(ctx.value)
|
||||||
|
local index = tonumber(value:sub(1, #value - 1))
|
||||||
|
return ('%d'):format(index > 1 and index or ctx.index)
|
||||||
|
end,
|
||||||
|
left_pad = 0,
|
||||||
|
right_pad = 0,
|
||||||
|
highlight = 'RenderMarkdownBullet',
|
||||||
|
scope_highlight = {},
|
||||||
|
},
|
||||||
|
-- quote = { icon = '▋' },
|
||||||
|
anti_conceal = {
|
||||||
|
enabled = true,
|
||||||
|
ignore = {
|
||||||
|
code_background = true,
|
||||||
|
sign = true,
|
||||||
|
},
|
||||||
|
above = 0,
|
||||||
|
below = 0,
|
||||||
|
},
|
||||||
|
custom = {
|
||||||
|
},
|
||||||
|
callout = {
|
||||||
|
-- Callouts are a special instance of a 'block_quote' that start with a 'shortcut_link'.
|
||||||
|
-- The key is for healthcheck and to allow users to change its values, value type below.
|
||||||
|
-- | raw | matched against the raw text of a 'shortcut_link', case insensitive |
|
||||||
|
-- | rendered | replaces the 'raw' value when rendering |
|
||||||
|
-- | highlight | highlight for the 'rendered' text and quote markers |
|
||||||
|
-- | quote_icon | optional override for quote.icon value for individual callout |
|
||||||
|
-- | category | optional metadata useful for filtering |
|
||||||
|
|
||||||
|
note = { raw = '[!NOTE]', rendered = ' Note', highlight = 'RenderMarkdownInfo'},
|
||||||
|
tip = { raw = '[!TIP]', rendered = ' Tip', highlight = 'RenderMarkdownSuccess'},
|
||||||
|
important = { raw = '[!IMPORTANT]', rendered = ' Important', highlight = 'RenderMarkdownHint'},
|
||||||
|
warning = { raw = '[!WARNING]', rendered = ' Warning', highlight = 'RenderMarkdownWarn'},
|
||||||
|
caution = { raw = '[!CAUTION]', rendered = ' Caution', highlight = 'RenderMarkdownError'},
|
||||||
|
abstract = { raw = '[!ABSTRACT]', rendered = ' Abstract', highlight = 'RenderMarkdownInfo'},
|
||||||
|
summary = { raw = '[!SUMMARY]', rendered = ' Summary', highlight = 'RenderMarkdownInfo'},
|
||||||
|
tldr = { raw = '[!TLDR]', rendered = ' Tldr', highlight = 'RenderMarkdownInfo'},
|
||||||
|
info = { raw = '[!INFO]', rendered = ' Info', highlight = 'RenderMarkdownInfo'},
|
||||||
|
todo = { raw = '[!TODO]', rendered = ' Todo', highlight = 'RenderMarkdownInfo'},
|
||||||
|
hint = { raw = '[!HINT]', rendered = ' Hint', highlight = 'RenderMarkdownSuccess'},
|
||||||
|
success = { raw = '[!SUCCESS]', rendered = ' Success', highlight = 'RenderMarkdownSuccess'},
|
||||||
|
check = { raw = '[!CHECK]', rendered = ' Check', highlight = 'RenderMarkdownSuccess'},
|
||||||
|
done = { raw = '[!DONE]', rendered = ' Done', highlight = 'RenderMarkdownSuccess'},
|
||||||
|
question = { raw = '[!QUESTION]', rendered = ' Question', highlight = 'RenderMarkdownWarn'},
|
||||||
|
help = { raw = '[!HELP]', rendered = ' Help', highlight = 'RenderMarkdownWarn'},
|
||||||
|
faq = { raw = '[!FAQ]', rendered = ' Faq', highlight = 'RenderMarkdownWarn'},
|
||||||
|
attention = { raw = '[!ATTENTION]', rendered = ' Attention', highlight = 'RenderMarkdownWarn'},
|
||||||
|
failure = { raw = '[!FAILURE]', rendered = ' Failure', highlight = 'RenderMarkdownError'},
|
||||||
|
fail = { raw = '[!FAIL]', rendered = ' Fail', highlight = 'RenderMarkdownError'},
|
||||||
|
missing = { raw = '[!MISSING]', rendered = ' Missing', highlight = 'RenderMarkdownError'},
|
||||||
|
danger = { raw = '[!DANGER]', rendered = ' Danger', highlight = 'RenderMarkdownError'},
|
||||||
|
error = { raw = '[!ERROR]', rendered = ' Error', highlight = 'RenderMarkdownError'},
|
||||||
|
bug = { raw = '[!BUG]', rendered = ' Bug', highlight = 'RenderMarkdownError'},
|
||||||
|
example = { raw = '[!EXAMPLE]', rendered = ' Example', highlight = 'RenderMarkdownHint' },
|
||||||
|
quote = { raw = '[!QUOTE]', rendered = ' Quote', highlight = 'RenderMarkdownQuote'},
|
||||||
|
cite = { raw = '[!CITE]', rendered = ' Cite', highlight = 'RenderMarkdownQuote'},
|
||||||
|
},
|
||||||
|
})
|
||||||
|
end,
|
||||||
|
dependencies = {
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -18,10 +18,13 @@ return {
|
|||||||
'javascript',
|
'javascript',
|
||||||
'json',
|
'json',
|
||||||
'lua',
|
'lua',
|
||||||
|
'markdown',
|
||||||
|
'markdown_inline',
|
||||||
'python',
|
'python',
|
||||||
'query',
|
'query',
|
||||||
'rust',
|
'rust',
|
||||||
'sql',
|
'sql',
|
||||||
|
'tera',
|
||||||
'toml',
|
'toml',
|
||||||
'tsx',
|
'tsx',
|
||||||
'typescript',
|
'typescript',
|
||||||
@ -41,8 +44,5 @@ return {
|
|||||||
enable = true,
|
enable = true,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
-- require('nvim-treesitter.install').prefer_git = true
|
|
||||||
-- TSUpdate
|
|
||||||
end,
|
end,
|
||||||
-- lazy = false,
|
|
||||||
}
|
}
|
||||||
|
|||||||
18
nvim/lua/plugins/twilight.lua
Normal file
18
nvim/lua/plugins/twilight.lua
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
return {
|
||||||
|
'folke/twilight.nvim',
|
||||||
|
config = function ()
|
||||||
|
require('twilight').setup({
|
||||||
|
dimming = {
|
||||||
|
alpha = 0.3,
|
||||||
|
},
|
||||||
|
expand = {
|
||||||
|
"function",
|
||||||
|
"method",
|
||||||
|
"table",
|
||||||
|
}
|
||||||
|
})
|
||||||
|
end,
|
||||||
|
keys = {
|
||||||
|
{ '<leader>f', ':Twilight<CR>' }
|
||||||
|
}
|
||||||
|
}
|
||||||
41
zshrc
41
zshrc
@ -8,8 +8,14 @@ then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
### ZSH Configuration
|
### ZSH Configuration
|
||||||
|
## Path variables
|
||||||
# Path to your oh-my-zsh installation.
|
# Path to your oh-my-zsh installation.
|
||||||
export ZSH="$HOME/.oh-my-zsh"
|
export ZSH="$HOME/.oh-my-zsh"
|
||||||
|
export XDG_CONFIG_HOME="$HOME/.config"
|
||||||
|
export XDG_DATA_HOME="$HOME/.local/share"
|
||||||
|
export XDG_CACHE_HOME="$HOME/.cache"
|
||||||
|
|
||||||
|
export MANPAGER="less -R --use-color -Dd+r -Du+b" # Colored MAN pages
|
||||||
|
|
||||||
ZSH_THEME="fb-custom"
|
ZSH_THEME="fb-custom"
|
||||||
|
|
||||||
@ -17,9 +23,22 @@ ZSH_THEME="fb-custom"
|
|||||||
# Case-sensitive completion must be off. _ and - will be interchangeable.
|
# Case-sensitive completion must be off. _ and - will be interchangeable.
|
||||||
HYPHEN_INSENSITIVE="true"
|
HYPHEN_INSENSITIVE="true"
|
||||||
|
|
||||||
|
# History
|
||||||
|
HISTCONTROL=ignoreboth
|
||||||
|
|
||||||
# Uncomment one of the following lines to change the auto-update behavior
|
# Uncomment one of the following lines to change the auto-update behavior
|
||||||
zstyle ':omz:update' mode reminder frequency 14
|
zstyle ':omz:update' mode reminder frequency 14
|
||||||
|
|
||||||
|
# Keybindings
|
||||||
|
bindkey "^a" beginning-of-line
|
||||||
|
bindkey "^e" end-of-line
|
||||||
|
# bindkey "^h" backward-word
|
||||||
|
# bindkey "^k" kill-line
|
||||||
|
# bindkey "^j" backward-word
|
||||||
|
# bindkey "^k" forward-word
|
||||||
|
# bindkey "^J" history-search-forward
|
||||||
|
# bindkey "^K" history-search-backward
|
||||||
|
|
||||||
### Plugins
|
### Plugins
|
||||||
# Install the zsh-autosuggestions plugin if it doesn't exist
|
# Install the zsh-autosuggestions plugin if it doesn't exist
|
||||||
if [ ! -d ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions ]
|
if [ ! -d ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions ]
|
||||||
@ -31,6 +50,7 @@ plugins=(
|
|||||||
aws
|
aws
|
||||||
copypath
|
copypath
|
||||||
dotenv
|
dotenv
|
||||||
|
fzf
|
||||||
git
|
git
|
||||||
history
|
history
|
||||||
zsh-autosuggestions
|
zsh-autosuggestions
|
||||||
@ -47,9 +67,18 @@ setopt hist_ignore_all_dups # Replace old history with the newest call to an ide
|
|||||||
setopt hist_ignore_space # Remove history lines that start with spaces
|
setopt hist_ignore_space # Remove history lines that start with spaces
|
||||||
# setopt correctall # Correct commands
|
# setopt correctall # Correct commands
|
||||||
|
|
||||||
|
# Experimental
|
||||||
|
setopt append_history inc_append_history share_history
|
||||||
|
# setopt auto_menu menu_complete
|
||||||
|
# setopt autocd
|
||||||
|
setopt auto_param_slash
|
||||||
|
setopt no_case_glob no_case_match
|
||||||
|
# setopt globdots
|
||||||
|
|
||||||
# Enable compinit advanced completion
|
# Enable compinit advanced completion
|
||||||
autoload -Uz compinit
|
zmodload zsh/complist
|
||||||
compinit
|
autoload -Uz compinit && compinit
|
||||||
|
autoload -U colors && colors
|
||||||
|
|
||||||
# Completion options
|
# Completion options
|
||||||
# Give descriptions of what the types of completions given
|
# Give descriptions of what the types of completions given
|
||||||
@ -88,6 +117,14 @@ timezsh() {
|
|||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Aliases Universal
|
||||||
|
alias rm="rm -Iv" # Prompt for removal of more than three files or recursively to give some protection of mistakes
|
||||||
|
alias df="df -h" # Always use the human readable formatting
|
||||||
|
alias du="du -h -d 1" # Always use human readable format and only for the current dir by default
|
||||||
|
alias k="killall" # Quick killall
|
||||||
|
alias p="ps aux | grep $1" # Quick
|
||||||
|
alias v="$EDITOR" # Just open the usual editor
|
||||||
|
|
||||||
### Environment specific include files
|
### Environment specific include files
|
||||||
include_files=(
|
include_files=(
|
||||||
"$HOME/.zsh_aliases"
|
"$HOME/.zsh_aliases"
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user