Compare commits
4 Commits
72a2787a1e
...
c600da05fc
Author | SHA1 | Date | |
---|---|---|---|
c600da05fc | |||
b7c3e030ad | |||
5c74453b52 | |||
1f3b4fd4fc |
@ -181,9 +181,9 @@ font:
|
|||||||
# If `true`, bold text is drawn using the bright color variants.
|
# If `true`, bold text is drawn using the bright color variants.
|
||||||
#draw_bold_text_with_bright_colors: false
|
#draw_bold_text_with_bright_colors: false
|
||||||
|
|
||||||
# Colors (Sonokai)
|
# Theme import (sets colors key)
|
||||||
import:
|
import:
|
||||||
- ~/.config/alacritty/themes/bogster.yml
|
- ~/.config/alacritty/themes/{{alacritty_theme}}.yml
|
||||||
|
|
||||||
# Colors (Tomorrow Night)
|
# Colors (Tomorrow Night)
|
||||||
#colors:
|
#colors:
|
||||||
|
52
alacritty/themes/bogster-light.yml
Normal file
52
alacritty/themes/bogster-light.yml
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
colors:
|
||||||
|
primary:
|
||||||
|
foreground: '#161c23'
|
||||||
|
background: '#c6b8ad'
|
||||||
|
bright_foreground: '#e5ded6'
|
||||||
|
cursor:
|
||||||
|
text: CellBackground
|
||||||
|
cursor: CellForeground
|
||||||
|
vi_mode_cursor:
|
||||||
|
text: CellBackground
|
||||||
|
cursor: CellForeground
|
||||||
|
search:
|
||||||
|
matches:
|
||||||
|
background: CellForeground
|
||||||
|
foreground: '#313f4e'
|
||||||
|
focused_match:
|
||||||
|
background: '#e5ded6'
|
||||||
|
foreground: '#313f4e'
|
||||||
|
bar:
|
||||||
|
foreground: '#e5ded6'
|
||||||
|
background: '#313f4e'
|
||||||
|
hints:
|
||||||
|
start:
|
||||||
|
background: '#232d38'
|
||||||
|
foreground: '#23a580'
|
||||||
|
end:
|
||||||
|
background: '#23a580'
|
||||||
|
foreground: '#232d38'
|
||||||
|
line_indicator:
|
||||||
|
background: None
|
||||||
|
foreground: None
|
||||||
|
selection:
|
||||||
|
text: CellForeground
|
||||||
|
foreground: '#313f4e'
|
||||||
|
normal:
|
||||||
|
black: '#161c23'
|
||||||
|
red: '#d32c5d'
|
||||||
|
green: '#57a331'
|
||||||
|
yellow: '#dc7759'
|
||||||
|
blue: '#36b2d4'
|
||||||
|
magenta: '#b759dc'
|
||||||
|
cyan: '#23a580'
|
||||||
|
white: '#c6b8ad'
|
||||||
|
bright:
|
||||||
|
black: '#415367'
|
||||||
|
red: '#dc597f'
|
||||||
|
green: '#7fdc59'
|
||||||
|
yellow: '#dcb659'
|
||||||
|
blue: '#59dcd8'
|
||||||
|
magenta: '#dc59c0'
|
||||||
|
cyan: '#59dcb7'
|
||||||
|
white: '#e5ded6'
|
@ -4,36 +4,27 @@ dotfiles_dir = "src/dotfiles"
|
|||||||
[settings]
|
[settings]
|
||||||
# An array of toml files paths containing the variables to inject in your templatized dotfiles
|
# An array of toml files paths containing the variables to inject in your templatized dotfiles
|
||||||
# You can have multiple var files as long as variable names does not colide.
|
# You can have multiple var files as long as variable names does not colide.
|
||||||
vars = [ "vars.toml" ]
|
vars = [ "dark.toml", "vars.toml" ]
|
||||||
|
|
||||||
# An array of post install shell commands
|
# An array of post install shell commands
|
||||||
# hooks = [ "" ]
|
# hooks = [ "" ]
|
||||||
|
|
||||||
|
[profiles.light]
|
||||||
|
vars = [ "light.toml" ]
|
||||||
|
|
||||||
|
[profiles.dark]
|
||||||
|
vars = [ "dark.tml" ]
|
||||||
|
|
||||||
[settings.dots]
|
[settings.dots]
|
||||||
# A dot entry representing a symlink, `source` is relative to `dotfiles_dir`
|
# A dot entry representing a symlink, `source` is relative to `dotfiles_dir`
|
||||||
# and `target` shall be relative to $HOME directory or absolute.
|
# and `target` shall be relative to $HOME directory or absolute.
|
||||||
# You can have as many dot entry as you want, linking files or directories
|
# You can have as many dot entry as you want, linking files or directories
|
||||||
|
|
||||||
|
# alacritty
|
||||||
alacritty = { source = "alacritty", target = ".config/alacritty" }
|
alacritty = { source = "alacritty", target = ".config/alacritty" }
|
||||||
sway = { source = "sway", target = ".config/sway" }
|
|
||||||
waybar = { source = "waybar", target = ".config/waybar" }
|
|
||||||
wofi = { source = "wofi", target = ".config/wofi" }
|
|
||||||
|
|
||||||
# zsh
|
# broot
|
||||||
zsh = { source = "aliases", target = ".aliases" }
|
broot = { source = "broot", target = ".config/broot" }
|
||||||
p10k = { source = "p10k.zsh", target = ".p10k.zsh" }
|
|
||||||
zshenv = { source = "zshenv", target = ".zshenv" }
|
|
||||||
zshrc = { source = "zshrc", target = ".zshrc" }
|
|
||||||
|
|
||||||
# vim
|
|
||||||
nvim = { source = "nvim", target = ".config/nvim" }
|
|
||||||
vimrc = { source = "vimrc", target = ".vimrc" }
|
|
||||||
|
|
||||||
# helix
|
|
||||||
helix = { source = "helix", target = ".config/helix" }
|
|
||||||
|
|
||||||
# tmux
|
|
||||||
tmux = { source = "tmux", target = ".config/tmux" }
|
|
||||||
tmux_conf = { source = "tmux.conf", target = ".tmux.conf" }
|
|
||||||
|
|
||||||
# git
|
# git
|
||||||
git_template = { source = "git_template", target = ".git_template" }
|
git_template = { source = "git_template", target = ".git_template" }
|
||||||
@ -44,11 +35,17 @@ gitui = { source = "gitui", target = ".config/gitui" }
|
|||||||
# gpg
|
# gpg
|
||||||
gpg_agent = { source = "gnupg/gpg-agent.conf", target = ".gnupg/gpg-agent.conf" }
|
gpg_agent = { source = "gnupg/gpg-agent.conf", target = ".gnupg/gpg-agent.conf" }
|
||||||
|
|
||||||
# zellij
|
# helix
|
||||||
zellij = { source = "zellij", target = ".config/zellij" }
|
helix = { source = "helix", target = ".config/helix" }
|
||||||
|
|
||||||
# navi
|
# navi
|
||||||
navi = { source = "navi", target = ".config/navi" }
|
navi = { source = "navi", target = ".config/navi" }
|
||||||
|
|
||||||
# broot
|
# tmux
|
||||||
broot = { source = "broot", target = ".config/broot" }
|
tmux = { source = "tmux", target = ".config/tmux" }
|
||||||
|
tmux_conf = { source = "tmux.conf", target = ".tmux.conf" }
|
||||||
|
|
||||||
|
# zsh
|
||||||
|
zsh = { source = "aliases", target = ".aliases" }
|
||||||
|
zshenv = { source = "zshenv", target = ".zshenv" }
|
||||||
|
zshrc = { source = "zshrc", target = ".zshrc" }
|
||||||
|
4
dark.toml
Normal file
4
dark.toml
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
theme = "dark"
|
||||||
|
alacritty_theme = "bogster-dark"
|
||||||
|
helix_theme = "bogster-dark"
|
||||||
|
tmux_theme = "bogster-dark"
|
@ -24,9 +24,9 @@
|
|||||||
ignore = update-index --assume-unchanged
|
ignore = update-index --assume-unchanged
|
||||||
|
|
||||||
[user]
|
[user]
|
||||||
email = __[email]__
|
email = {{email}}
|
||||||
name = __[name]__
|
name = {{name}}
|
||||||
signingkey = __[signing_key]__
|
signingkey = {{signing_key}}
|
||||||
|
|
||||||
[url "git@github.com:"]
|
[url "git@github.com:"]
|
||||||
insteadOf = https://github.com
|
insteadOf = https://github.com
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
theme = "bogster"
|
theme = "{{helix_theme}}"
|
||||||
|
|
||||||
[editor]
|
[editor]
|
||||||
color-modes = true
|
color-modes = true
|
||||||
@ -10,3 +10,9 @@ true-color = true
|
|||||||
insert = "bar"
|
insert = "bar"
|
||||||
normal = "block"
|
normal = "block"
|
||||||
select = "underline"
|
select = "underline"
|
||||||
|
|
||||||
|
[editor.search]
|
||||||
|
smart-case = false
|
||||||
|
|
||||||
|
[keys.normal]
|
||||||
|
C-r = ":config-reload"
|
||||||
|
@ -48,9 +48,6 @@
|
|||||||
"ui.cursorline" = { bg = "#131920" }
|
"ui.cursorline" = { bg = "#131920" }
|
||||||
"ui.statusline" = { fg = "#e5ded6", bg = "#232d38" }
|
"ui.statusline" = { fg = "#e5ded6", bg = "#232d38" }
|
||||||
"ui.statusline.inactive" = { fg = "#c6b8ad", bg = "#232d38" }
|
"ui.statusline.inactive" = { fg = "#c6b8ad", bg = "#232d38" }
|
||||||
"ui.statusline.insert" = { fg = "#e5ded6", bg = "red" }
|
|
||||||
"ui.statusline.normal" = { fg = "#e5ded6", bg = "green" }
|
|
||||||
"ui.statusline.select" = { fg = "#232d38", bg = "blue" }
|
|
||||||
"ui.popup" = { bg = "#232d38" }
|
"ui.popup" = { bg = "#232d38" }
|
||||||
"ui.window" = { bg = "#232d38" }
|
"ui.window" = { bg = "#232d38" }
|
||||||
"ui.help" = { bg = "#232d38", fg = "#e5ded6" }
|
"ui.help" = { bg = "#232d38", fg = "#e5ded6" }
|
77
helix/themes/bogster-light.toml
Normal file
77
helix/themes/bogster-light.toml
Normal file
@ -0,0 +1,77 @@
|
|||||||
|
# Author : Wojciech Kępka <wojciech@wkepka.dev>
|
||||||
|
|
||||||
|
"attribute" = "#dc7759"
|
||||||
|
"keyword" = { fg = "#dcb659", modifiers = ["bold"] }
|
||||||
|
"keyword.directive" = "#dcb659"
|
||||||
|
"namespace" = "#d32c5d"
|
||||||
|
"punctuation" = "#dc7759"
|
||||||
|
"punctuation.delimiter" = "#dc7759"
|
||||||
|
"operator" = { fg = "#dc7759", modifiers = ["bold"] }
|
||||||
|
"special" = "#7fdc59"
|
||||||
|
"variable.other.member" = "#161c23"
|
||||||
|
"variable" = "#161c23"
|
||||||
|
"variable.parameter" = "#161c23"
|
||||||
|
"type" = "#dc597f"
|
||||||
|
"type.builtin" = { fg = "#d32c5d", modifiers = ["bold"] }
|
||||||
|
"constructor" = "#dc597f"
|
||||||
|
"function" = "#59dcd8"
|
||||||
|
"function.macro" = { fg = "#dc7759", modifiers = ["bold"] }
|
||||||
|
"function.builtin" = { fg = "#59dcd8", modifiers = ["bold"] }
|
||||||
|
"comment" = "#627d9d"
|
||||||
|
"variable.builtin" = "#161c23"
|
||||||
|
"constant" = "#59dcb7"
|
||||||
|
"constant.builtin" = "#59dcb7"
|
||||||
|
"string" = "#59dcb7"
|
||||||
|
"constant.numeric" = "#59c0dc"
|
||||||
|
"constant.character.escape" = { fg = "#7fdc59", modifiers = ["bold"] }
|
||||||
|
"label" = "#59c0dc"
|
||||||
|
|
||||||
|
"module" = "#d32c5d"
|
||||||
|
|
||||||
|
# TODO
|
||||||
|
"markup.heading" = "blue"
|
||||||
|
"markup.list" = "red"
|
||||||
|
"markup.bold" = { fg = "yellow", modifiers = ["bold"] }
|
||||||
|
"markup.italic" = { fg = "magenta", modifiers = ["italic"] }
|
||||||
|
"markup.link.url" = { fg = "yellow", modifiers = ["underlined"] }
|
||||||
|
"markup.link.text" = "red"
|
||||||
|
"markup.quote" = "cyan"
|
||||||
|
"markup.raw" = "green"
|
||||||
|
|
||||||
|
"diff.plus" = "#59dcb7"
|
||||||
|
"diff.delta" = "#dc7759"
|
||||||
|
"diff.minus" = "#dc597f"
|
||||||
|
|
||||||
|
"ui.background" = { bg = "#c6b8ad" }
|
||||||
|
"ui.linenr" = { fg = "#415367" }
|
||||||
|
"ui.linenr.selected" = { fg = "#e5ded6" } # TODO
|
||||||
|
"ui.cursorline" = { bg = "#131920" }
|
||||||
|
"ui.statusline" = { fg = "#e5ded6", bg = "#232d38" }
|
||||||
|
"ui.statusline.inactive" = { fg = "#161c23", bg = "#232d38" }
|
||||||
|
"ui.statusline.insert" = { fg = "#e5ded6", bg = "red" }
|
||||||
|
"ui.statusline.normal" = { fg = "#e5ded6", bg = "green" }
|
||||||
|
"ui.statusline.select" = { fg = "#232d38", bg = "blue" }
|
||||||
|
"ui.popup" = { bg = "#232d38" }
|
||||||
|
"ui.window" = { bg = "#232d38" }
|
||||||
|
"ui.help" = { bg = "#232d38", fg = "#e5ded6" }
|
||||||
|
|
||||||
|
"ui.text" = { fg = "#e5ded6" }
|
||||||
|
"ui.text.focus" = { fg = "#e5ded6", modifiers= ["bold"] }
|
||||||
|
"ui.virtual.whitespace" = "#627d9d"
|
||||||
|
"ui.virtual.ruler" = { bg = "#131920" }
|
||||||
|
|
||||||
|
"ui.selection" = { bg = "#313f4e" }
|
||||||
|
# "ui.cursor.match" # TODO might want to override this because dimmed is not widely supported
|
||||||
|
"ui.cursor.match" = { fg = "#313f4e", bg = "#dc7759" }
|
||||||
|
"ui.cursor" = { fg = "#ABB2BF", modifiers = ["reversed"] }
|
||||||
|
|
||||||
|
"ui.menu" = { fg = "#e5ded6bg", bg = "#232d38" }
|
||||||
|
"ui.menu.selected" = { bg = "#313f4e" }
|
||||||
|
|
||||||
|
"warning" = "#dc7759"
|
||||||
|
"error" = "#dc597f"
|
||||||
|
"info" = "#59dcb7"
|
||||||
|
"hint" = "#59c0dc"
|
||||||
|
|
||||||
|
# make diagnostic underlined, to distinguish with selection text.
|
||||||
|
diagnostic = { modifiers = ["underlined"] }
|
4
light.toml
Normal file
4
light.toml
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
theme = "light"
|
||||||
|
alacritty_theme = "bogster-light"
|
||||||
|
helix_theme = "bogster-light"
|
||||||
|
tmux_theme = "bogster-light"
|
@ -1,15 +0,0 @@
|
|||||||
if executable('rg')
|
|
||||||
let g:ackprg = 'rg --vimgrep --no-heading' " Use ripgrep for Ack
|
|
||||||
|
|
||||||
noremap <Leader>\ :Ack<Space>
|
|
||||||
noremap <Leader><Tab> :Ack <C-r><C-w><CR>
|
|
||||||
|
|
||||||
" Use rg over grep
|
|
||||||
set grepprg=rg\ --color\ never
|
|
||||||
|
|
||||||
" Use rg in CtrlP for listing files. Lightning fast and respects .gitignore
|
|
||||||
let g:ctrlp_user_command = 'rg --files %s'
|
|
||||||
let g:ctrlp_use_caching = 0
|
|
||||||
let g:ctrlp_working_path_mode = 'ra'
|
|
||||||
let g:ctrlp_switch_buffer = 'et'
|
|
||||||
endif
|
|
@ -1,28 +0,0 @@
|
|||||||
lua <<EOF
|
|
||||||
local Rule = require('nvim-autopairs.rule')
|
|
||||||
local npairs = require('nvim-autopairs')
|
|
||||||
local cmp_autopairs = require('nvim-autopairs.completion.cmp')
|
|
||||||
local cmp = require('cmp')
|
|
||||||
|
|
||||||
cmp.event:on('confirm_done', cmp_autopairs.on_confirm_done({ map_char = { tex = '' } }))
|
|
||||||
|
|
||||||
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 % => %% is only inside 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'}))
|
|
||||||
})
|
|
||||||
EOF
|
|
@ -1,59 +0,0 @@
|
|||||||
" True color support
|
|
||||||
if exists('+termguicolors')
|
|
||||||
let &t_8f = "\<Esc>[38:2:%lu:%lu:%lum"
|
|
||||||
let &t_8b = "\<Esc>[48:2:%lu:%lu:%lum"
|
|
||||||
set termguicolors
|
|
||||||
endif
|
|
||||||
|
|
||||||
function! s:sonokai_custom() abort
|
|
||||||
" Link a highlight group to a predefined highlight group.
|
|
||||||
" See `colors/sonokai.vim` for all predefined highlight groups.
|
|
||||||
"highlight! link groupA groupB
|
|
||||||
"highlight! link groupC groupD
|
|
||||||
|
|
||||||
" Initialize the color palette.
|
|
||||||
" The parameter is a valid value for `g:sonokai_style`,
|
|
||||||
let l:palette = sonokai#get_palette('default')
|
|
||||||
" Define a highlight group.
|
|
||||||
" The first parameter is the name of a highlight group,
|
|
||||||
" the second parameter is the foreground color,
|
|
||||||
" the third parameter is the background color,
|
|
||||||
" the fourth parameter is for UI highlighting which is optional,
|
|
||||||
" and the last parameter is for `guisp` which is also optional.
|
|
||||||
" See `autoload/sonokai.vim` for the format of `l:palette`.
|
|
||||||
call sonokai#highlight('GitCommitTemplateTag', l:palette.orange, l:palette.none)
|
|
||||||
call sonokai#highlight('LineNr', l:palette.grey, l:palette.bg1)
|
|
||||||
call sonokai#highlight('CursorLineNr', l:palette.fg, l:palette.bg1, 'bold')
|
|
||||||
call sonokai#highlight('SignColumn', l:palette.fg, l:palette.bg1)
|
|
||||||
call sonokai#highlight('Terminal', l:palette.fg, l:palette.bg1)
|
|
||||||
call sonokai#highlight('VertSplit', l:palette.bg1, l:palette.none)
|
|
||||||
call sonokai#highlight('GitSignsAdd', l:palette.green, l:palette.bg1)
|
|
||||||
call sonokai#highlight('GitSignsChange', l:palette.blue, l:palette.bg1)
|
|
||||||
call sonokai#highlight('GitSignsChangeDelete', l:palette.purple, l:palette.bg1)
|
|
||||||
call sonokai#highlight('GitSignsDelete', l:palette.red, l:palette.bg1)
|
|
||||||
call sonokai#highlight('GitSignsTopDelete', l:palette.orange, l:palette.bg1)
|
|
||||||
call sonokai#highlight('BlueSign', l:palette.blue, l:palette.bg1)
|
|
||||||
call sonokai#highlight('GreenSign', l:palette.green, l:palette.bg1)
|
|
||||||
call sonokai#highlight('RedSign', l:palette.red, l:palette.bg1)
|
|
||||||
call sonokai#highlight('YellowSign', l:palette.yellow, l:palette.bg1)
|
|
||||||
call sonokai#highlight('CocHintSign', l:palette.grey, l:palette.none, 'italic')
|
|
||||||
call sonokai#highlight('IndentBlanklineContext1', l:palette.purple, l:palette.none)
|
|
||||||
call sonokai#highlight('IndentBlanklineContext2', l:palette.orange, l:palette.none)
|
|
||||||
call sonokai#highlight('IndentBlanklineContext3', l:palette.blue, l:palette.none)
|
|
||||||
call sonokai#highlight('IndentBlanklineContext4', l:palette.yellow, l:palette.none)
|
|
||||||
call sonokai#highlight('IndentBlanklineContext5', l:palette.green, l:palette.none)
|
|
||||||
call sonokai#highlight('IndentBlanklineContext6', l:palette.red, l:palette.none)
|
|
||||||
call sonokai#highlight('Search', l:palette.purple, l:palette.none, 'bold,italic')
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
augroup CustomColors
|
|
||||||
autocmd!
|
|
||||||
autocmd ColorScheme sonokai call s:sonokai_custom()
|
|
||||||
augroup END
|
|
||||||
|
|
||||||
" Colorscheme setup
|
|
||||||
let g:lightline.colorscheme = 'sonokai'
|
|
||||||
let g:sonokai_show_eob = 0
|
|
||||||
let g:sonokai_transparent_background = 1
|
|
||||||
|
|
||||||
colorscheme sonokai
|
|
@ -1,6 +0,0 @@
|
|||||||
augroup GitCommitTemplates
|
|
||||||
autocmd!
|
|
||||||
autocmd BufNewFile,BufRead PULL_REQUEST_TEMPLATE,*.pr set filetype=pullrequest
|
|
||||||
autocmd Filetype pullrequest :match GitCommitTemplateTag /<[^>]*>/
|
|
||||||
autocmd Filetype pullrequest :let @/ ='<[^>]*>'
|
|
||||||
augroup END
|
|
@ -1,66 +0,0 @@
|
|||||||
lua << EOF
|
|
||||||
require('gitsigns').setup {
|
|
||||||
signs = {
|
|
||||||
add = {hl = 'GitSignsAdd' , text = '▌', numhl='GitSignsAddNr' , linehl='GitSignsAddLn'},
|
|
||||||
change = {hl = 'GitSignsChange', text = '▌', numhl='GitSignsChangeNr', linehl='GitSignsChangeLn'},
|
|
||||||
delete = {hl = 'GitSignsDelete', text = '▌', numhl='GitSignsDeleteNr', linehl='GitSignsDeleteLn'},
|
|
||||||
topdelete = {hl = 'GitSignsTopDelete', text = '▌', numhl='GitSignsTopDeleteNr', linehl='GitSignsTopDeleteLn'},
|
|
||||||
changedelete = {hl = 'GitSignsChangeDelete', text = '▌', numhl='GitSignsChangeDeleteNr', linehl='GitSignsChangeDeleteLn'},
|
|
||||||
},
|
|
||||||
signcolumn = true, -- Toggle with `:Gitsigns toggle_signs`
|
|
||||||
numhl = false, -- Toggle with `:Gitsigns toggle_numhl`
|
|
||||||
linehl = false, -- Toggle with `:Gitsigns toggle_linehl`
|
|
||||||
word_diff = false, -- Toggle with `:Gitsigns toggle_word_diff`
|
|
||||||
keymaps = {
|
|
||||||
-- Default keymap options
|
|
||||||
noremap = true,
|
|
||||||
|
|
||||||
['n ]c'] = { expr = true, "&diff ? ']c' : '<cmd>lua require\"gitsigns.actions\".next_hunk()<CR>'"},
|
|
||||||
['n [c'] = { expr = true, "&diff ? '[c' : '<cmd>lua require\"gitsigns.actions\".prev_hunk()<CR>'"},
|
|
||||||
|
|
||||||
['n <leader>hs'] = '<cmd>lua require"gitsigns".stage_hunk()<CR>',
|
|
||||||
['v <leader>hs'] = '<cmd>lua require"gitsigns".stage_hunk({vim.fn.line("."), vim.fn.line("v")})<CR>',
|
|
||||||
['n <leader>hu'] = '<cmd>lua require"gitsigns".undo_stage_hunk()<CR>',
|
|
||||||
['n <leader>hr'] = '<cmd>lua require"gitsigns".reset_hunk()<CR>',
|
|
||||||
['v <leader>hr'] = '<cmd>lua require"gitsigns".reset_hunk({vim.fn.line("."), vim.fn.line("v")})<CR>',
|
|
||||||
['n <leader>hR'] = '<cmd>lua require"gitsigns".reset_buffer()<CR>',
|
|
||||||
['n <leader>hp'] = '<cmd>lua require"gitsigns".preview_hunk()<CR>',
|
|
||||||
['n <leader>hb'] = '<cmd>lua require"gitsigns".blame_line(true)<CR>',
|
|
||||||
['n <leader>hS'] = '<cmd>lua require"gitsigns".stage_buffer()<CR>',
|
|
||||||
['n <leader>hU'] = '<cmd>lua require"gitsigns".reset_buffer_index()<CR>',
|
|
||||||
|
|
||||||
-- Text objects
|
|
||||||
['o ih'] = ':<C-U>lua require"gitsigns.actions".select_hunk()<CR>',
|
|
||||||
['x ih'] = ':<C-U>lua require"gitsigns.actions".select_hunk()<CR>'
|
|
||||||
},
|
|
||||||
watch_gitdir = {
|
|
||||||
interval = 1000,
|
|
||||||
follow_files = true
|
|
||||||
},
|
|
||||||
attach_to_untracked = true,
|
|
||||||
current_line_blame = false, -- Toggle with `:Gitsigns toggle_current_line_blame`
|
|
||||||
current_line_blame_opts = {
|
|
||||||
virt_text = true,
|
|
||||||
virt_text_pos = 'eol', -- 'eol' | 'overlay' | 'right_align'
|
|
||||||
delay = 1000,
|
|
||||||
},
|
|
||||||
current_line_blame_formatter_opts = {
|
|
||||||
relative_time = false
|
|
||||||
},
|
|
||||||
sign_priority = 6,
|
|
||||||
update_debounce = 100,
|
|
||||||
status_formatter = nil, -- Use default
|
|
||||||
max_file_length = 40000,
|
|
||||||
preview_config = {
|
|
||||||
-- Options passed to nvim_open_win
|
|
||||||
border = 'single',
|
|
||||||
style = 'minimal',
|
|
||||||
relative = 'cursor',
|
|
||||||
row = 0,
|
|
||||||
col = 1
|
|
||||||
},
|
|
||||||
yadm = {
|
|
||||||
enable = false
|
|
||||||
},
|
|
||||||
}
|
|
||||||
EOF
|
|
@ -1,22 +0,0 @@
|
|||||||
" disable all linters as that is taken care of by coc.nvim
|
|
||||||
let g:go_diagnostics_enabled = 0
|
|
||||||
let g:go_metalinter_enabled = []
|
|
||||||
|
|
||||||
" don't jump to errors after metalinter is invoked
|
|
||||||
let g:go_jump_to_error = 0
|
|
||||||
|
|
||||||
" run go imports on file save
|
|
||||||
let g:go_fmt_command = "goimports"
|
|
||||||
|
|
||||||
" automatically highlight variable your cursor is on
|
|
||||||
let g:go_auto_sameids = 0
|
|
||||||
|
|
||||||
" syntax highlighting
|
|
||||||
let g:go_highlight_types = 1
|
|
||||||
let g:go_highlight_fields = 1
|
|
||||||
let g:go_highlight_functions = 1
|
|
||||||
let g:go_highlight_function_calls = 1
|
|
||||||
let g:go_highlight_operators = 1
|
|
||||||
let g:go_highlight_extra_types = 1
|
|
||||||
let g:go_highlight_build_constraints = 1
|
|
||||||
let g:go_highlight_generate_tags = 1
|
|
@ -1,11 +0,0 @@
|
|||||||
noremap <silent> n <Cmd>execute('normal! ' . v:count1 . 'n')<CR>
|
|
||||||
\<Cmd>lua require('hlslens').start()<CR>
|
|
||||||
noremap <silent> N <Cmd>execute('normal! ' . v:count1 . 'N')<CR>
|
|
||||||
\<Cmd>lua require('hlslens').start()<CR>
|
|
||||||
noremap * *<Cmd>lua require('hlslens').start()<CR>
|
|
||||||
noremap # #<Cmd>lua require('hlslens').start()<CR>
|
|
||||||
noremap g* g*<Cmd>lua require('hlslens').start()<CR>
|
|
||||||
noremap g# g#<Cmd>lua require('hlslens').start()<CR>
|
|
||||||
|
|
||||||
" use : instead of <Cmd>
|
|
||||||
nnoremap <silent> <leader>l :noh<CR>
|
|
@ -1,3 +0,0 @@
|
|||||||
set runtimepath^=~/.vim runtimepath+=~/.vim/after
|
|
||||||
let &packpath = &runtimepath
|
|
||||||
source ~/.vimrc
|
|
@ -1,35 +0,0 @@
|
|||||||
" Auto-toggle paste mode
|
|
||||||
let &t_SI .= "\<Esc>[?2004h"
|
|
||||||
let &t_EI .= "\<Esc>[?2004l"
|
|
||||||
|
|
||||||
function! XTermPasteBegin()
|
|
||||||
set pastetoggle=<Esc>[201~
|
|
||||||
set paste
|
|
||||||
return ""
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
inoremap <special> <expr> <Esc>[200~ XTermPasteBegin()
|
|
||||||
|
|
||||||
" Clear search highlighting
|
|
||||||
noremap <Leader><Esc> :noh<CR>
|
|
||||||
|
|
||||||
" Spellcheck
|
|
||||||
nnoremap <Leader>S :setlocal spell! spelllang=en_us<CR>
|
|
||||||
|
|
||||||
" Easy motion to start/end of a line
|
|
||||||
noremap H ^
|
|
||||||
noremap L $
|
|
||||||
|
|
||||||
" Toggle cursorline and relativelinenumber quickly
|
|
||||||
noremap <Leader>c :set cursorline!<CR>
|
|
||||||
noremap <Leader>n :set relativenumber!<CR>
|
|
||||||
|
|
||||||
" Oops, forgot a semi-colon...
|
|
||||||
noremap <Leader>; $a;<Esc>
|
|
||||||
|
|
||||||
" Search highlighted text in buffer
|
|
||||||
vnoremap // y/\V<C-R>=escape(@",'/\')<CR><CR>
|
|
||||||
|
|
||||||
" Shift + J/K moves selected lines down/up in visual mode
|
|
||||||
vnoremap J :m '>+1<CR>gv=gv
|
|
||||||
vnoremap K :m '<-2<CR>gv=gv
|
|
@ -1,167 +0,0 @@
|
|||||||
" User Interface
|
|
||||||
"{{{lightline.vim
|
|
||||||
"{{{lightline.vim-usage
|
|
||||||
" :h 'statusline'
|
|
||||||
" :h g:lightline.component
|
|
||||||
"}}}
|
|
||||||
"{{{functions
|
|
||||||
function! PomodoroStatus() abort"{{{
|
|
||||||
if pomo#remaining_time() ==# '0'
|
|
||||||
return "\ue001"
|
|
||||||
else
|
|
||||||
return "\ue003 ".pomo#remaining_time()
|
|
||||||
endif
|
|
||||||
endfunction"}}}
|
|
||||||
function! CocCurrentFunction()"{{{
|
|
||||||
return get(b:, 'coc_current_function', '')
|
|
||||||
endfunction"}}}
|
|
||||||
function! Devicons_Filetype()"{{{
|
|
||||||
" return winwidth(0) > 70 ? (strlen(&filetype) ? WebDevIconsGetFileTypeSymbol() . ' ' . &filetype : 'no ft') : ''
|
|
||||||
return winwidth(0) > 70 ? (strlen(&filetype) ? &filetype . ' ' . WebDevIconsGetFileTypeSymbol() : 'no ft') : ''
|
|
||||||
endfunction"}}}
|
|
||||||
function! Devicons_Fileformat()"{{{
|
|
||||||
return winwidth(0) > 70 ? (&fileformat . ' ' . WebDevIconsGetFileFormatSymbol()) : ''
|
|
||||||
endfunction"}}}
|
|
||||||
function! Artify_active_tab_num(n) abort"{{{
|
|
||||||
return Artify(a:n, 'bold')." \ue0bb"
|
|
||||||
endfunction"}}}
|
|
||||||
function! Tab_num(n) abort"{{{
|
|
||||||
return a:n." \ue0bb"
|
|
||||||
endfunction"}}}
|
|
||||||
function! Gitbranch() abort"{{{
|
|
||||||
if gitbranch#name() !=# ''
|
|
||||||
return gitbranch#name()." \ue725"
|
|
||||||
else
|
|
||||||
return "\ue61b"
|
|
||||||
endif
|
|
||||||
endfunction"}}}
|
|
||||||
function! Artify_inactive_tab_num(n) abort"{{{
|
|
||||||
return Artify(a:n, 'double_struck')." \ue0bb"
|
|
||||||
endfunction"}}}
|
|
||||||
function! Artify_lightline_tab_filename(s) abort"{{{
|
|
||||||
return Artify(lightline#tab#filename(a:s), 'monospace')
|
|
||||||
endfunction"}}}
|
|
||||||
function! Artify_lightline_mode() abort"{{{
|
|
||||||
return Artify(lightline#mode(), 'monospace')
|
|
||||||
endfunction"}}}
|
|
||||||
function! Artify_line_percent() abort"{{{
|
|
||||||
return Artify(string((100*line('.'))/line('$')), 'bold')
|
|
||||||
endfunction"}}}
|
|
||||||
function! Artify_line_num() abort"{{{
|
|
||||||
return Artify(string(line('.')), 'bold')
|
|
||||||
endfunction"}}}
|
|
||||||
function! Artify_col_num() abort"{{{
|
|
||||||
return Artify(string(getcurpos()[2]), 'bold')
|
|
||||||
endfunction"}}}
|
|
||||||
function! Artify_gitbranch() abort"{{{
|
|
||||||
if gitbranch#name() !=# ''
|
|
||||||
return Artify(gitbranch#name(), 'monospace')." \ue725"
|
|
||||||
else
|
|
||||||
return "\ue61b"
|
|
||||||
endif
|
|
||||||
endfunction"}}}
|
|
||||||
"}}}
|
|
||||||
set laststatus=2 " Basic
|
|
||||||
set noshowmode " Disable show mode info
|
|
||||||
augroup CustomLightline
|
|
||||||
autocmd!
|
|
||||||
autocmd BufWritePost * call lightline_gitdiff#query_git() | call lightline#update()
|
|
||||||
augroup END
|
|
||||||
let g:lightline = {}
|
|
||||||
let g:lightline.separator = { 'left': "\ue0b8", 'right': "\ue0be" }
|
|
||||||
let g:lightline.subseparator = { 'left': "\ue0b9", 'right': "\ue0b9" }
|
|
||||||
let g:lightline.tabline_separator = { 'left': "\ue0bc", 'right': "\ue0ba" }
|
|
||||||
let g:lightline.tabline_subseparator = { 'left': "\ue0bb", 'right': "\ue0bb" }
|
|
||||||
let g:lightline#ale#indicator_checking = "\uf110"
|
|
||||||
let g:lightline#ale#indicator_warnings = "\uf529"
|
|
||||||
let g:lightline#ale#indicator_errors = "\uf00d"
|
|
||||||
let g:lightline#ale#indicator_ok = "\uf00c"
|
|
||||||
let g:lightline_gitdiff#indicator_added = '+'
|
|
||||||
let g:lightline_gitdiff#indicator_deleted = '-'
|
|
||||||
let g:lightline_gitdiff#indicator_modified = '*'
|
|
||||||
let g:lightline_gitdiff#min_winwidth = '70'
|
|
||||||
let g:lightline#asyncrun#indicator_none = ''
|
|
||||||
let g:lightline#asyncrun#indicator_run = 'Running...'
|
|
||||||
let g:lightline.active = {
|
|
||||||
\ 'left': [ [ 'mode', 'paste' ],
|
|
||||||
\ [ 'readonly', 'filename', 'modified', 'fileformat', 'devicons_filetype' ] ],
|
|
||||||
\ 'right': [ [ 'lineinfo' ],
|
|
||||||
\ [ 'linter_checking', 'linter_errors', 'linter_warnings', 'linter_ok', 'pomodoro' ],
|
|
||||||
\ [ 'asyncrun_status', 'coc_status' ] ]
|
|
||||||
\ }
|
|
||||||
let g:lightline.inactive = {
|
|
||||||
\ 'left': [ [ 'filename' , 'modified', 'fileformat', 'devicons_filetype' ]],
|
|
||||||
\ 'right': [ [ 'lineinfo' ] ]
|
|
||||||
\ }
|
|
||||||
let g:lightline.tabline = {
|
|
||||||
\ 'left': [ [ 'vim_logo', 'tabs' ] ],
|
|
||||||
\ 'right': [ [ 'gitbranch' ],
|
|
||||||
\ [ 'gitstatus' ] ]
|
|
||||||
\ }
|
|
||||||
let g:lightline.tab = {
|
|
||||||
\ 'active': [ 'tabnum', 'filename', 'modified' ],
|
|
||||||
\ 'inactive': [ 'tabnum', 'filename', 'modified' ] }
|
|
||||||
let g:lightline.tab_component = {
|
|
||||||
\ }
|
|
||||||
let g:lightline.tab_component_function = {
|
|
||||||
\ 'artify_activetabnum': 'Artify_active_tab_num',
|
|
||||||
\ 'artify_inactivetabnum': 'Artify_inactive_tab_num',
|
|
||||||
\ 'artify_filename': 'Artify_lightline_tab_filename',
|
|
||||||
\ 'filename': 'lightline#tab#filename',
|
|
||||||
\ 'modified': 'lightline#tab#modified',
|
|
||||||
\ 'readonly': 'lightline#tab#readonly',
|
|
||||||
\ 'tabnum': 'Tab_num'
|
|
||||||
\ }
|
|
||||||
let g:lightline.component = {
|
|
||||||
\ 'artify_gitbranch' : '%{Artify_gitbranch()}',
|
|
||||||
\ 'artify_mode': '%{Artify_lightline_mode()}',
|
|
||||||
\ 'artify_lineinfo': "%2{Artify_line_percent()}\uf295 %3{Artify_line_num()}:%-2{Artify_col_num()}",
|
|
||||||
\ 'gitstatus' : '%{lightline_gitdiff#get_status()}',
|
|
||||||
\ 'bufinfo': '%{bufname("%")}:%{bufnr("%")}',
|
|
||||||
\ 'vim_logo': "\ue7c5",
|
|
||||||
\ 'pomodoro': '%{PomodoroStatus()}',
|
|
||||||
\ 'mode': '%{lightline#mode()}',
|
|
||||||
\ 'absolutepath': '%F',
|
|
||||||
\ 'relativepath': '%f',
|
|
||||||
\ 'filename': '%t',
|
|
||||||
\ 'filesize': "%{HumanSize(line2byte('$') + len(getline('$')))}",
|
|
||||||
\ 'fileencoding': '%{&fenc!=#""?&fenc:&enc}',
|
|
||||||
\ 'fileformat': '%{&fenc!=#""?&fenc:&enc}[%{&ff}]',
|
|
||||||
\ 'filetype': '%{&ft!=#""?&ft:"no ft"}',
|
|
||||||
\ 'modified': '%M',
|
|
||||||
\ 'bufnum': '%n',
|
|
||||||
\ 'paste': '%{&paste?"PASTE":""}',
|
|
||||||
\ 'readonly': '%R',
|
|
||||||
\ 'charvalue': '%b',
|
|
||||||
\ 'charvaluehex': '%B',
|
|
||||||
\ 'percent': '%2p%%',
|
|
||||||
\ 'percentwin': '%P',
|
|
||||||
\ 'spell': '%{&spell?&spelllang:""}',
|
|
||||||
\ 'lineinfo': '%2p%% %3l:%-2v',
|
|
||||||
\ 'line': '%l',
|
|
||||||
\ 'column': '%c',
|
|
||||||
\ 'close': '%999X X ',
|
|
||||||
\ 'winnr': '%{winnr()}'
|
|
||||||
\ }
|
|
||||||
let g:lightline.component_function = {
|
|
||||||
\ 'gitbranch': 'Gitbranch',
|
|
||||||
\ 'devicons_filetype': 'Devicons_Filetype',
|
|
||||||
\ 'devicons_fileformat': 'Devicons_Fileformat',
|
|
||||||
\ 'coc_status': 'coc#status',
|
|
||||||
\ 'coc_currentfunction': 'CocCurrentFunction'
|
|
||||||
\ }
|
|
||||||
let g:lightline.component_expand = {
|
|
||||||
\ 'linter_checking': 'lightline#ale#checking',
|
|
||||||
\ 'linter_warnings': 'lightline#ale#warnings',
|
|
||||||
\ 'linter_errors': 'lightline#ale#errors',
|
|
||||||
\ 'linter_ok': 'lightline#ale#ok',
|
|
||||||
\ 'asyncrun_status': 'lightline#asyncrun#status'
|
|
||||||
\ }
|
|
||||||
let g:lightline.component_type = {
|
|
||||||
\ 'linter_warnings': 'warning',
|
|
||||||
\ 'linter_errors': 'error'
|
|
||||||
\ }
|
|
||||||
let g:lightline.component_visible_condition = {
|
|
||||||
\ 'gitstatus': 'lightline_gitdiff#get_status() !=# ""'
|
|
||||||
\ }
|
|
||||||
"}}}
|
|
@ -1,47 +0,0 @@
|
|||||||
autocmd BufWritePre *.go,*.rs lua vim.lsp.buf.formatting()
|
|
||||||
|
|
||||||
lua << EOF
|
|
||||||
local nvim_lsp = require('lspconfig')
|
|
||||||
local opts = { noremap=true, silent=true }
|
|
||||||
|
|
||||||
vim.api.nvim_set_keymap('n', '<space>e', '<cmd>lua vim.lsp.diagnostic.open_float()<CR>', opts)
|
|
||||||
vim.api.nvim_set_keymap('n', '[d', '<cmd>lua vim.lsp.diagnostic.goto_prev()<CR>', opts)
|
|
||||||
vim.api.nvim_set_keymap('n', ']d', '<cmd>lua vim.lsp.diagnostic.goto_next()<CR>', opts)
|
|
||||||
vim.api.nvim_set_keymap('n', '<space>q', '<cmd>lua vim.lsp.diagnostic.setloclist()<CR>', opts)
|
|
||||||
|
|
||||||
-- Use an on_attach function to only map the following keys
|
|
||||||
-- after the language server attaches to the current buffer
|
|
||||||
local on_attach = function(_, bufnr)
|
|
||||||
-- Enable completion triggered by <c-x><c-o>
|
|
||||||
vim.api.nvim_buf_set_option(bufnr, 'omnifunc', 'v:lua.vim.lsp.omnifunc')
|
|
||||||
|
|
||||||
-- See `:help vim.lsp.*` for documentation on any of the below functions
|
|
||||||
vim.api.nvim_buf_set_keymap(bufnr, 'n', 'gD', '<cmd>lua vim.lsp.buf.declaration()<CR>', opts)
|
|
||||||
vim.api.nvim_buf_set_keymap(bufnr, 'n', 'gd', '<cmd>lua vim.lsp.buf.definition()<CR>', opts)
|
|
||||||
vim.api.nvim_buf_set_keymap(bufnr, 'n', 'K', '<cmd>lua vim.lsp.buf.hover()<CR>', opts)
|
|
||||||
vim.api.nvim_buf_set_keymap(bufnr, 'n', 'gi', '<cmd>lua vim.lsp.buf.implementation()<CR>', opts)
|
|
||||||
vim.api.nvim_buf_set_keymap(bufnr, 'n', '<C-k>', '<cmd>lua vim.lsp.buf.signature_help()<CR>', opts)
|
|
||||||
vim.api.nvim_buf_set_keymap(bufnr, 'n', '<space>wa', '<cmd>lua vim.lsp.buf.add_workspace_folder()<CR>', opts)
|
|
||||||
vim.api.nvim_buf_set_keymap(bufnr, 'n', '<space>wr', '<cmd>lua vim.lsp.buf.remove_workspace_folder()<CR>', opts)
|
|
||||||
vim.api.nvim_buf_set_keymap(bufnr, 'n', '<space>wl', '<cmd>lua print(vim.inspect(vim.lsp.buf.list_workspace_folders()))<CR>', opts)
|
|
||||||
vim.api.nvim_buf_set_keymap(bufnr, 'n', '<space>D', '<cmd>lua vim.lsp.buf.type_definition()<CR>', opts)
|
|
||||||
vim.api.nvim_buf_set_keymap(bufnr, 'n', '<space>rn', '<cmd>lua vim.lsp.buf.rename()<CR>', opts)
|
|
||||||
vim.api.nvim_buf_set_keymap(bufnr, 'n', '<space>ca', '<cmd>lua vim.lsp.buf.code_action()<CR>', opts)
|
|
||||||
vim.api.nvim_buf_set_keymap(bufnr, 'n', 'gr', '<cmd>lua vim.lsp.buf.references()<CR>', opts)
|
|
||||||
vim.api.nvim_buf_set_keymap(bufnr, 'n', '<space>f', '<cmd>lua vim.lsp.buf.formatting()<CR>', opts)
|
|
||||||
end
|
|
||||||
|
|
||||||
-- Use a loop to conveniently call 'setup' on multiple servers and
|
|
||||||
-- map buffer local keybindings when the language server attaches
|
|
||||||
local servers = { 'solargraph', 'rust_analyzer', 'gopls', 'tsserver', 'stylelint_lsp', 'pylsp'}
|
|
||||||
local capabilities = require('cmp_nvim_lsp').update_capabilities(vim.lsp.protocol.make_client_capabilities())
|
|
||||||
for _, lsp in pairs(servers) do
|
|
||||||
nvim_lsp[lsp].setup {
|
|
||||||
on_attach = on_attach,
|
|
||||||
capabilities = capabilities,
|
|
||||||
flags = {
|
|
||||||
debounce_text_changes = 150,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
end
|
|
||||||
EOF
|
|
@ -1,14 +0,0 @@
|
|||||||
require("indent_blankline").setup {
|
|
||||||
space_char_blankline = " ",
|
|
||||||
context_highlight_list = {
|
|
||||||
"IndentBlanklineContext1",
|
|
||||||
"IndentBlanklineContext2",
|
|
||||||
"IndentBlanklineContext3",
|
|
||||||
"IndentBlanklineContext4",
|
|
||||||
"IndentBlanklineContext5",
|
|
||||||
"IndentBlanklineContext6",
|
|
||||||
},
|
|
||||||
show_end_of_line = true,
|
|
||||||
show_current_context = true,
|
|
||||||
use_treesitter = true,
|
|
||||||
}
|
|
@ -1,13 +0,0 @@
|
|||||||
let g:vim_markdown_conceal = 2
|
|
||||||
let g:vim_markdown_conceal_code_blocks = 0
|
|
||||||
let g:vim_markdown_math = 1
|
|
||||||
let g:vim_markdown_toml_frontmatter = 1
|
|
||||||
let g:vim_markdown_frontmatter = 1
|
|
||||||
let g:vim_markdown_strikethrough = 1
|
|
||||||
let g:vim_markdown_autowrite = 1
|
|
||||||
let g:vim_markdown_edit_url_in = 'tab'
|
|
||||||
let g:vim_markdown_follow_anchor = 1
|
|
||||||
|
|
||||||
augroup CustomMarkdown
|
|
||||||
autocmd FileType markdown setlocal linebreak
|
|
||||||
augroup END
|
|
@ -1,92 +0,0 @@
|
|||||||
set completeopt=menu,menuone,noselect
|
|
||||||
|
|
||||||
" Expand
|
|
||||||
imap <expr> <C-j> vsnip#expandable() ? '<Plug>(vsnip-expand)' : '<C-j>'
|
|
||||||
smap <expr> <C-j> vsnip#expandable() ? '<Plug>(vsnip-expand)' : '<C-j>'
|
|
||||||
|
|
||||||
" Expand or jump
|
|
||||||
imap <expr> <C-l> vsnip#available(1) ? '<Plug>(vsnip-expand-or-jump)' : '<C-l>'
|
|
||||||
smap <expr> <C-l> vsnip#available(1) ? '<Plug>(vsnip-expand-or-jump)' : '<C-l>'
|
|
||||||
|
|
||||||
" Jump forward or backward
|
|
||||||
imap <expr> <Tab> vsnip#jumpable(1) ? '<Plug>(vsnip-jump-next)' : '<Tab>'
|
|
||||||
smap <expr> <Tab> vsnip#jumpable(1) ? '<Plug>(vsnip-jump-next)' : '<Tab>'
|
|
||||||
imap <expr> <S-Tab> vsnip#jumpable(-1) ? '<Plug>(vsnip-jump-prev)' : '<S-Tab>'
|
|
||||||
smap <expr> <S-Tab> vsnip#jumpable(-1) ? '<Plug>(vsnip-jump-prev)' : '<S-Tab>'
|
|
||||||
|
|
||||||
" Select or cut text to use as $TM_SELECTED_TEXT in the next snippet.
|
|
||||||
" See https://github.com/hrsh7th/vim-vsnip/pull/50
|
|
||||||
nmap s <Plug>(vsnip-select-text)
|
|
||||||
xmap s <Plug>(vsnip-select-text)
|
|
||||||
nmap S <Plug>(vsnip-cut-text)
|
|
||||||
xmap S <Plug>(vsnip-cut-text)
|
|
||||||
|
|
||||||
lua <<EOF
|
|
||||||
-- Setup nvim-cmp.
|
|
||||||
local cmp = require'cmp'
|
|
||||||
|
|
||||||
cmp.setup({
|
|
||||||
snippet = {
|
|
||||||
-- REQUIRED - you must specify a snippet engine
|
|
||||||
expand = function(args)
|
|
||||||
vim.fn["vsnip#anonymous"](args.body) -- For `vsnip` users.
|
|
||||||
-- require('luasnip').lsp_expand(args.body) -- For `luasnip` users.
|
|
||||||
-- require('snippy').expand_snippet(args.body) -- For `snippy` users.
|
|
||||||
-- vim.fn["UltiSnips#Anon"](args.body) -- For `ultisnips` users.
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
mapping = {
|
|
||||||
['<C-n>'] = cmp.mapping.select_next_item({ behavior = cmp.SelectBehavior.Insert }),
|
|
||||||
['<C-p>'] = cmp.mapping.select_prev_item({ behavior = cmp.SelectBehavior.Insert }),
|
|
||||||
['<Down>'] = cmp.mapping.select_next_item({ behavior = cmp.SelectBehavior.Select }),
|
|
||||||
['<Up>'] = cmp.mapping.select_prev_item({ behavior = cmp.SelectBehavior.Select }),
|
|
||||||
['<C-b>'] = cmp.mapping(cmp.mapping.scroll_docs(-4), { 'i', 'c' }),
|
|
||||||
['<C-f>'] = cmp.mapping(cmp.mapping.scroll_docs(4), { 'i', 'c' }),
|
|
||||||
['<Tab>'] = cmp.mapping(cmp.mapping.select_next_item(), { 'i', 's' }),
|
|
||||||
['<C-Space>'] = cmp.mapping(cmp.mapping.complete(), { 'i', 'c' }),
|
|
||||||
['<C-y>'] = cmp.config.disable, -- Specify `cmp.config.disable` if you want to remove the default `<C-y>` mapping.
|
|
||||||
['<C-e>'] = cmp.mapping({
|
|
||||||
i = cmp.mapping.abort(),
|
|
||||||
c = cmp.mapping.close(),
|
|
||||||
}),
|
|
||||||
['<CR>'] = cmp.mapping.confirm({
|
|
||||||
behavior = cmp.ConfirmBehavior.Replace,
|
|
||||||
select = true, -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items.
|
|
||||||
})
|
|
||||||
},
|
|
||||||
sources = cmp.config.sources({
|
|
||||||
{ name = 'nvim_lsp' },
|
|
||||||
{ name = 'vsnip' }, -- For vsnip users.
|
|
||||||
-- { name = 'luasnip' }, -- For luasnip users.
|
|
||||||
-- { name = 'ultisnips' }, -- For ultisnips users.
|
|
||||||
-- { name = 'snippy' }, -- For snippy users.
|
|
||||||
}, {
|
|
||||||
{ name = 'buffer' },
|
|
||||||
})
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Set configuration for specific filetype.
|
|
||||||
cmp.setup.filetype('gitcommit', {
|
|
||||||
sources = cmp.config.sources({
|
|
||||||
{ name = 'cmp_git' }, -- You can specify the `cmp_git` source if you were installed it.
|
|
||||||
}, {
|
|
||||||
{ name = 'buffer' },
|
|
||||||
})
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Use buffer source for `/` (if you enabled `native_menu`, this won't work anymore).
|
|
||||||
cmp.setup.cmdline('/', {
|
|
||||||
sources = {
|
|
||||||
{ name = 'buffer' }
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Use cmdline & path source for ':' (if you enabled `native_menu`, this won't work anymore).
|
|
||||||
cmp.setup.cmdline(':', {
|
|
||||||
sources = cmp.config.sources({
|
|
||||||
{ name = 'path' }
|
|
||||||
}, {
|
|
||||||
{ name = 'cmdline' }
|
|
||||||
})
|
|
||||||
})
|
|
||||||
EOF
|
|
@ -1,33 +0,0 @@
|
|||||||
let g:nvim_tree_icons = {
|
|
||||||
\ 'default': '',
|
|
||||||
\ 'symlink': '',
|
|
||||||
\ 'git': {
|
|
||||||
\ 'unstaged': "✗",
|
|
||||||
\ 'staged': "✓",
|
|
||||||
\ 'unmerged': "",
|
|
||||||
\ 'renamed': "➜",
|
|
||||||
\ 'untracked': "★",
|
|
||||||
\ 'deleted': "",
|
|
||||||
\ 'ignored': "◌"
|
|
||||||
\ },
|
|
||||||
\ 'folder': {
|
|
||||||
\ 'arrow_open': "🢓",
|
|
||||||
\ 'arrow_closed': "🢒",
|
|
||||||
\ 'default': "",
|
|
||||||
\ 'open': "",
|
|
||||||
\ 'empty': "",
|
|
||||||
\ 'empty_open': "",
|
|
||||||
\ 'symlink': "",
|
|
||||||
\ 'symlink_open': "",
|
|
||||||
\ },
|
|
||||||
\ 'lsp': {
|
|
||||||
\ 'hint': "",
|
|
||||||
\ 'info': "",
|
|
||||||
\ 'warning': "",
|
|
||||||
\ 'error': "",
|
|
||||||
\ }
|
|
||||||
\ }
|
|
||||||
|
|
||||||
noremap <C-n> :NvimTreeToggle<CR>
|
|
||||||
|
|
||||||
lua require 'nvim-tree'.setup{}
|
|
@ -1,66 +0,0 @@
|
|||||||
" Assorted plugins
|
|
||||||
Plug 'cespare/vim-toml', { 'for': 'toml' }
|
|
||||||
Plug 'chrisbra/unicode.vim'
|
|
||||||
Plug 'kevinhwang91/nvim-hlslens'
|
|
||||||
Plug 'leafgarland/typescript-vim', { 'for': 'typescript' }
|
|
||||||
Plug 'leafoftree/vim-svelte-plugin', { 'for': 'svelte' }
|
|
||||||
Plug 'lukas-reineke/indent-blankline.nvim'
|
|
||||||
Plug 'mfussenegger/nvim-dap'
|
|
||||||
Plug 'nvim-lua/plenary.nvim'
|
|
||||||
Plug 'nvim-treesitter/nvim-treesitter', {'do': ':TSUpdate'}
|
|
||||||
"Plug 'petertriho/nvim-scrollbar'
|
|
||||||
Plug 'posva/vim-vue', { 'for': 'vue' }
|
|
||||||
Plug 'ron-rs/ron.vim', { 'for': 'ron' }
|
|
||||||
Plug 'simrat39/rust-tools.nvim'
|
|
||||||
Plug 'tommcdo/vim-exchange'
|
|
||||||
Plug 'tpope/vim-fugitive'
|
|
||||||
Plug 'tpope/vim-projectionist'
|
|
||||||
Plug 'tpope/vim-rails'
|
|
||||||
Plug 'tpope/vim-repeat'
|
|
||||||
Plug 'tpope/vim-surround'
|
|
||||||
Plug 'vim-test/vim-test'
|
|
||||||
Plug 'wakatime/vim-wakatime'
|
|
||||||
Plug 'windwp/nvim-autopairs'
|
|
||||||
|
|
||||||
" LSP and autocomplete
|
|
||||||
Plug 'neovim/nvim-lspconfig'
|
|
||||||
Plug 'hrsh7th/cmp-nvim-lsp'
|
|
||||||
Plug 'hrsh7th/cmp-buffer'
|
|
||||||
Plug 'hrsh7th/cmp-path'
|
|
||||||
Plug 'hrsh7th/cmp-cmdline'
|
|
||||||
Plug 'hrsh7th/nvim-cmp'
|
|
||||||
Plug 'hrsh7th/cmp-vsnip'
|
|
||||||
Plug 'hrsh7th/vim-vsnip'
|
|
||||||
Plug 'rafamadriz/friendly-snippets'
|
|
||||||
|
|
||||||
" Gitsigns
|
|
||||||
Plug 'lewis6991/gitsigns.nvim'
|
|
||||||
|
|
||||||
" Telescope
|
|
||||||
Plug 'nvim-telescope/telescope.nvim'
|
|
||||||
|
|
||||||
" Lightline
|
|
||||||
Plug 'itchyny/lightline.vim'
|
|
||||||
Plug 'albertomontesg/lightline-asyncrun'
|
|
||||||
Plug 'itchyny/vim-gitbranch'
|
|
||||||
Plug 'macthecadillac/lightline-gitdiff'
|
|
||||||
Plug 'ryanoasis/vim-devicons'
|
|
||||||
Plug 'anstadnik/tmuxline.vim'
|
|
||||||
" Using the above fork for lightline truecolor support
|
|
||||||
" \ Plug 'edkolev/tmuxline.vim'
|
|
||||||
|
|
||||||
" NvimTree
|
|
||||||
Plug 'kyazdani42/nvim-tree.lua'
|
|
||||||
Plug 'kyazdani42/nvim-web-devicons'
|
|
||||||
|
|
||||||
" Vim-Markdown
|
|
||||||
Plug 'godlygeek/tabular'
|
|
||||||
Plug 'plasticboy/vim-markdown', { 'for': 'markdown' }
|
|
||||||
|
|
||||||
" sonokai colorscheme + supporting plugins
|
|
||||||
Plug 'sainnhe/sonokai'
|
|
||||||
Plug 'rmolin88/pomodoro.vim'
|
|
||||||
Plug 'sainnhe/artify.vim'
|
|
||||||
|
|
||||||
" bogster colorscheme
|
|
||||||
Plug 'vv9k/bogster'
|
|
@ -1,33 +0,0 @@
|
|||||||
let g:rails_projections = {
|
|
||||||
\ "config/*": { "command": "config" },
|
|
||||||
\ "config/application.rb": { "command": "config" },
|
|
||||||
\ "spec/factories/*_factory.rb": { "command": "factory" },
|
|
||||||
\ "spec/factories/factories.rb": { "command": "factory" },
|
|
||||||
\ "app/javascript/Main.elm": { "command": "elm" },
|
|
||||||
\ "app/javascript/packs/*.elm": { "command": "elm" },
|
|
||||||
\ "app/javascript/packs/*.js": { "command": "pack", "alternate": "app/javascript/packs/{}.spec.js" },
|
|
||||||
\ "app/javascript/packs/*.spec.js": { "command": "packspec", "alternate": "app/javascript/{}.js" },
|
|
||||||
\ "app/javascript/src/*.js": { "command": "pack", "alternate": "app/javascript/src/{}.spec.js" },
|
|
||||||
\ "app/javascript/src/*.spec.js": { "command": "packspec", "alternate": "app/javascript/{}.js" },
|
|
||||||
\ "app/javascript/packs/*.jsx": { "command": "pack" },
|
|
||||||
\ "app/javascript/packs/application.js": { "command": "pack" },
|
|
||||||
\ "app/javascript/*.vue": { "command": "vue", "alternate": "app/javascript/{}.spec.js" },
|
|
||||||
\ "app/javascript/*.spec.js": { "command": "vuespec", "alternate": "app/javascript/{}.vue" },
|
|
||||||
\ "app/javascript/*.css": { "command": "packstylesheet" },
|
|
||||||
\ "app/javascript/*.scss": { "command": "packstylesheet" },
|
|
||||||
\ "app/javascript/*.sass": { "command": "packstylesheet" },
|
|
||||||
\ "app/javascript/*.js": { "command": "packjavascript" },
|
|
||||||
\ "app/javascript/*.coffee": { "command": "packjavascript" },
|
|
||||||
\ "app/jobs/*_job.rb": { "command": "job" },
|
|
||||||
\ "app/decorators/*_decorator.rb": { "command": "decorator" },
|
|
||||||
\ "app/presenters/*.rb": { "command": "presenter" },
|
|
||||||
\ "app/models/concerns/*.rb": { "command": "concern" },
|
|
||||||
\ "app/controllers/concerns/*.rb": { "command": "concern" },
|
|
||||||
\ "features/*.feature": { "command": "feature" },
|
|
||||||
\ "features/support/env.rb": { "command": "feature" },
|
|
||||||
\ "features/step_definitions/*_steps.rb": { "command": "step" },
|
|
||||||
\ "spec/acceptance/*_spec.rb": { "command": "feature" },
|
|
||||||
\ "spec/mailers/previews/*_preview.rb": { "command": "preview" },
|
|
||||||
\ "bin/*": { "command": "bin" },
|
|
||||||
\ "*.md": { "command": "doc" }
|
|
||||||
\}
|
|
@ -1 +0,0 @@
|
|||||||
let g:ruby_fold = 1
|
|
@ -1,3 +0,0 @@
|
|||||||
lua << EOF
|
|
||||||
require('rust-tools').setup({})
|
|
||||||
EOF
|
|
@ -1 +0,0 @@
|
|||||||
let g:rust_fold = 1
|
|
@ -1,4 +0,0 @@
|
|||||||
lua << EOF
|
|
||||||
require("scrollbar").setup()
|
|
||||||
require("scrollbar.handlers.search").setup()
|
|
||||||
EOF
|
|
@ -1,5 +0,0 @@
|
|||||||
nnoremap <leader>ff <cmd>lua require('telescope.builtin').find_files()<cr>
|
|
||||||
nnoremap <leader>fg <cmd>lua require('telescope.builtin').live_grep()<cr>
|
|
||||||
nnoremap <leader>fb <cmd>lua require('telescope.builtin').buffers()<cr>
|
|
||||||
nnoremap <leader>fh <cmd>lua require('telescope.builtin').help_tags()<cr>
|
|
||||||
nnoremap <leader>fp <cmd>lua require('telescope.builtin').builtin()<cr>
|
|
@ -1,5 +0,0 @@
|
|||||||
nmap <silent> <leader>t :TestNearest<CR>
|
|
||||||
nmap <silent> <leader>T :TestFile<CR>
|
|
||||||
nmap <silent> <leader>A :TestSuite<CR>
|
|
||||||
nmap <silent> <leader>l :TestLast<CR>
|
|
||||||
nmap <silent> <leader>g :TestVisit<CR>
|
|
@ -1,23 +0,0 @@
|
|||||||
let g:tmuxline_separators = {
|
|
||||||
\ 'left' : '',
|
|
||||||
\ 'left_alt': '',
|
|
||||||
\ 'right' : '',
|
|
||||||
\ 'right_alt' : '',
|
|
||||||
\ 'space' : ' '}
|
|
||||||
|
|
||||||
let g:tmuxline_preset = {
|
|
||||||
\'a' : '#S',
|
|
||||||
\'b' : '%R',
|
|
||||||
\'c' : '#{sysstat_mem} 祝#{upload_speed}',
|
|
||||||
\'win' : '#I #W',
|
|
||||||
\'cwin' : '#I #W',
|
|
||||||
\'x' : '#{download_speed} #{sysstat_cpu}',
|
|
||||||
\'y' : '%a',
|
|
||||||
\'z' : '#H #{prefix_highlight}',
|
|
||||||
\'options' : {'status-justify' : 'centre'}}
|
|
||||||
|
|
||||||
augroup CustomTmuxline
|
|
||||||
autocmd!
|
|
||||||
autocmd InsertEnter * silent! Tmuxline lightline_insert
|
|
||||||
autocmd InsertLeave * silent! Tmuxline lightline
|
|
||||||
augroup END
|
|
241
sway/config
241
sway/config
@ -1,241 +0,0 @@
|
|||||||
# Default config for sway
|
|
||||||
#
|
|
||||||
# Copy this to ~/.config/sway/config and edit it to your liking.
|
|
||||||
#
|
|
||||||
# Read `man 5 sway` for a complete reference.
|
|
||||||
|
|
||||||
### Variables
|
|
||||||
#
|
|
||||||
# Logo key. Use Mod1 for Alt.
|
|
||||||
set $mod Mod4
|
|
||||||
# Home row direction keys, like vim
|
|
||||||
set $left h
|
|
||||||
set $down j
|
|
||||||
set $up k
|
|
||||||
set $right l
|
|
||||||
# Your preferred terminal emulator
|
|
||||||
set $term alacritty
|
|
||||||
# Your preferred application launcher
|
|
||||||
# Note: pass the final command to swaymsg so that the resulting window can be opened
|
|
||||||
# on the original workspace that the command was run on.
|
|
||||||
# set $menu dmenu_path | dmenu | xargs swaymsg exec --
|
|
||||||
set $menu wofi --show run | xargs swaymsg exec --
|
|
||||||
|
|
||||||
### Output configuration
|
|
||||||
#
|
|
||||||
# Default wallpaper (more resolutions are available in /usr/share/backgrounds/sway/)
|
|
||||||
output * bg /usr/share/backgrounds/sway/Sway_Wallpaper_Blue_1920x1080.png fill
|
|
||||||
#
|
|
||||||
# Example configuration:
|
|
||||||
#
|
|
||||||
# output HDMI-A-1 resolution 1920x1080 position 1920,0
|
|
||||||
#
|
|
||||||
# You can get the names of your outputs by running: swaymsg -t get_outputs
|
|
||||||
|
|
||||||
### Idle configuration
|
|
||||||
#
|
|
||||||
# Example configuration:
|
|
||||||
#
|
|
||||||
exec swayidle -w \
|
|
||||||
timeout 300 'swaylock -f -c 000000' \
|
|
||||||
timeout 600 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on"' \
|
|
||||||
before-sleep 'swaylock -f -c 000000'
|
|
||||||
#
|
|
||||||
# This will lock your screen after 300 seconds of inactivity, then turn off
|
|
||||||
# your displays after another 300 seconds, and turn your screens back on when
|
|
||||||
# resumed. It will also lock your screen before your computer goes to sleep.
|
|
||||||
|
|
||||||
### Input configuration
|
|
||||||
#
|
|
||||||
# Example configuration:
|
|
||||||
#
|
|
||||||
# input "2:14:SynPS/2_Synaptics_TouchPad" {
|
|
||||||
# dwt enabled
|
|
||||||
# tap enabled
|
|
||||||
# natural_scroll enabled
|
|
||||||
# middle_emulation enabled
|
|
||||||
# }
|
|
||||||
#
|
|
||||||
# You can get the names of your inputs by running: swaymsg -t get_inputs
|
|
||||||
# Read `man 5 sway-input` for more information about this section.
|
|
||||||
#
|
|
||||||
# IME support
|
|
||||||
exec_always fcitx5 -d --replace
|
|
||||||
# Clipboard
|
|
||||||
exec wl-paste -p -t text --watch clipman store -P --histpath='~/.local/share/clipman-primary.json'
|
|
||||||
|
|
||||||
### Key bindings
|
|
||||||
#
|
|
||||||
# Basics:
|
|
||||||
#
|
|
||||||
# Start a terminal
|
|
||||||
bindsym $mod+Return exec $term
|
|
||||||
|
|
||||||
# Kill focused window
|
|
||||||
bindsym $mod+Shift+q kill
|
|
||||||
|
|
||||||
# Start your launcher
|
|
||||||
bindsym $mod+d exec $menu
|
|
||||||
|
|
||||||
# Query paste history
|
|
||||||
bindsym $mod+slash exec clipman pick -t wofi
|
|
||||||
|
|
||||||
# Drag floating windows by holding down $mod and left mouse button.
|
|
||||||
# Resize them with right mouse button + $mod.
|
|
||||||
# Despite the name, also works for non-floating windows.
|
|
||||||
# Change normal to inverse to use left mouse button for resizing and right
|
|
||||||
# mouse button for dragging.
|
|
||||||
floating_modifier $mod normal
|
|
||||||
|
|
||||||
# Reload the configuration file
|
|
||||||
bindsym $mod+Shift+c reload
|
|
||||||
|
|
||||||
# Exit sway (logs you out of your Wayland session)
|
|
||||||
bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -b 'Yes, exit sway' 'swaymsg exit'
|
|
||||||
#
|
|
||||||
# Moving around:
|
|
||||||
#
|
|
||||||
# Move your focus around
|
|
||||||
bindsym $mod+$left focus left
|
|
||||||
bindsym $mod+$down focus down
|
|
||||||
bindsym $mod+$up focus up
|
|
||||||
bindsym $mod+$right focus right
|
|
||||||
# Or use $mod+[up|down|left|right]
|
|
||||||
bindsym $mod+Left focus left
|
|
||||||
bindsym $mod+Down focus down
|
|
||||||
bindsym $mod+Up focus up
|
|
||||||
bindsym $mod+Right focus right
|
|
||||||
|
|
||||||
# Move the focused window with the same, but add Shift
|
|
||||||
bindsym $mod+Shift+$left move left
|
|
||||||
bindsym $mod+Shift+$down move down
|
|
||||||
bindsym $mod+Shift+$up move up
|
|
||||||
bindsym $mod+Shift+$right move right
|
|
||||||
# Ditto, with arrow keys
|
|
||||||
bindsym $mod+Shift+Left move left
|
|
||||||
bindsym $mod+Shift+Down move down
|
|
||||||
bindsym $mod+Shift+Up move up
|
|
||||||
bindsym $mod+Shift+Right move right
|
|
||||||
#
|
|
||||||
# Workspaces:
|
|
||||||
#
|
|
||||||
# Switch to workspace
|
|
||||||
bindsym $mod+1 workspace number 1
|
|
||||||
bindsym $mod+2 workspace number 2
|
|
||||||
bindsym $mod+3 workspace number 3
|
|
||||||
bindsym $mod+4 workspace number 4
|
|
||||||
bindsym $mod+5 workspace number 5
|
|
||||||
bindsym $mod+6 workspace number 6
|
|
||||||
bindsym $mod+7 workspace number 7
|
|
||||||
bindsym $mod+8 workspace number 8
|
|
||||||
bindsym $mod+9 workspace number 9
|
|
||||||
bindsym $mod+0 workspace number 10
|
|
||||||
# Move focused container to workspace
|
|
||||||
bindsym $mod+Shift+1 move container to workspace number 1
|
|
||||||
bindsym $mod+Shift+2 move container to workspace number 2
|
|
||||||
bindsym $mod+Shift+3 move container to workspace number 3
|
|
||||||
bindsym $mod+Shift+4 move container to workspace number 4
|
|
||||||
bindsym $mod+Shift+5 move container to workspace number 5
|
|
||||||
bindsym $mod+Shift+6 move container to workspace number 6
|
|
||||||
bindsym $mod+Shift+7 move container to workspace number 7
|
|
||||||
bindsym $mod+Shift+8 move container to workspace number 8
|
|
||||||
bindsym $mod+Shift+9 move container to workspace number 9
|
|
||||||
bindsym $mod+Shift+0 move container to workspace number 10
|
|
||||||
# Note: workspaces can have any name you want, not just numbers.
|
|
||||||
# We just use 1-10 as the default.
|
|
||||||
#
|
|
||||||
# Layout stuff:
|
|
||||||
#
|
|
||||||
# You can "split" the current object of your focus with
|
|
||||||
# $mod+b or $mod+v, for horizontal and vertical splits
|
|
||||||
# respectively.
|
|
||||||
bindsym $mod+b splith
|
|
||||||
bindsym $mod+v splitv
|
|
||||||
|
|
||||||
# Switch the current container between different layout styles
|
|
||||||
bindsym $mod+s layout stacking
|
|
||||||
bindsym $mod+w layout tabbed
|
|
||||||
bindsym $mod+e layout toggle split
|
|
||||||
|
|
||||||
# Make the current focus fullscreen
|
|
||||||
bindsym $mod+f fullscreen
|
|
||||||
|
|
||||||
# Toggle the current focus between tiling and floating mode
|
|
||||||
bindsym $mod+Shift+space floating toggle
|
|
||||||
|
|
||||||
# Swap focus between the tiling area and the floating area
|
|
||||||
bindsym $mod+space focus mode_toggle
|
|
||||||
|
|
||||||
# Move focus to the parent container
|
|
||||||
bindsym $mod+a focus parent
|
|
||||||
#
|
|
||||||
# Scratchpad:
|
|
||||||
#
|
|
||||||
# Sway has a "scratchpad", which is a bag of holding for windows.
|
|
||||||
# You can send windows there and get them back later.
|
|
||||||
|
|
||||||
# Move the currently focused window to the scratchpad
|
|
||||||
bindsym $mod+Shift+minus move scratchpad
|
|
||||||
|
|
||||||
# Show the next scratchpad window or hide the focused scratchpad window.
|
|
||||||
# If there are multiple scratchpad windows, this command cycles through them.
|
|
||||||
bindsym $mod+minus scratchpad show
|
|
||||||
#
|
|
||||||
# Resizing containers:
|
|
||||||
#
|
|
||||||
mode "resize" {
|
|
||||||
# left will shrink the containers width
|
|
||||||
# right will grow the containers width
|
|
||||||
# up will shrink the containers height
|
|
||||||
# down will grow the containers height
|
|
||||||
bindsym $left resize shrink width 10px
|
|
||||||
bindsym $down resize grow height 10px
|
|
||||||
bindsym $up resize shrink height 10px
|
|
||||||
bindsym $right resize grow width 10px
|
|
||||||
|
|
||||||
# Ditto, with arrow keys
|
|
||||||
bindsym Left resize shrink width 10px
|
|
||||||
bindsym Down resize grow height 10px
|
|
||||||
bindsym Up resize shrink height 10px
|
|
||||||
bindsym Right resize grow width 10px
|
|
||||||
|
|
||||||
# Return to default mode
|
|
||||||
bindsym Return mode "default"
|
|
||||||
bindsym Escape mode "default"
|
|
||||||
}
|
|
||||||
bindsym $mod+r mode "resize"
|
|
||||||
|
|
||||||
#
|
|
||||||
# Status Bar:
|
|
||||||
#
|
|
||||||
# Read `man 5 sway-bar` for more information about this section.
|
|
||||||
bar {
|
|
||||||
position top
|
|
||||||
|
|
||||||
# When the status_command prints a new line to stdout, swaybar updates.
|
|
||||||
# The default just shows the current date and time.
|
|
||||||
# status_command while date +'%Y-%m-%d %l:%M:%S %p'; do sleep 1; done
|
|
||||||
|
|
||||||
# colors {
|
|
||||||
# statusline #ffffff
|
|
||||||
# background #323232
|
|
||||||
# inactive_workspace #32323200 #32323200 #5c5c5c
|
|
||||||
# }
|
|
||||||
|
|
||||||
swaybar_command waybar
|
|
||||||
}
|
|
||||||
|
|
||||||
#
|
|
||||||
# Titlebars
|
|
||||||
#
|
|
||||||
default_border pixel 2
|
|
||||||
default_floating_border pixel 2
|
|
||||||
hide_edge_borders smart
|
|
||||||
|
|
||||||
#
|
|
||||||
# Gaps
|
|
||||||
#
|
|
||||||
# smart_gaps on
|
|
||||||
gaps inner 10
|
|
||||||
|
|
||||||
include ~/.config/sway/*.conf
|
|
@ -1,18 +0,0 @@
|
|||||||
# This is a sample config file for shotman.
|
|
||||||
#
|
|
||||||
# This file is _not_ loaded by shotman, but rather but sway, which handles both
|
|
||||||
# the executing and the positioning of shotman.
|
|
||||||
#
|
|
||||||
# Place this in ~/.config/sway/shotman.conf and customise as you see fit.
|
|
||||||
|
|
||||||
# Super+P: Current window
|
|
||||||
# Super+Shift+p: Select region
|
|
||||||
# Super+Alt+p Current output
|
|
||||||
# Super+Ctrl+p Select a window
|
|
||||||
|
|
||||||
bindsym $mod+p exec shotman active
|
|
||||||
bindsym $mod+Shift+p exec shotman area
|
|
||||||
bindsym $mod+Alt+p exec shotman output
|
|
||||||
bindsym $mod+Ctrl+p exec shotman window
|
|
||||||
|
|
||||||
for_window [title="shotman"] move position 30 30, floating enable
|
|
@ -1,7 +1,7 @@
|
|||||||
# Powerline
|
# Powerline
|
||||||
run-shell "/usr/bin/powerline-daemon -q"
|
run-shell "/usr/bin/powerline-daemon -q"
|
||||||
source "/usr/share/powerline/bindings/tmux/powerline.conf"
|
source "/usr/share/powerline/bindings/tmux/powerline.conf"
|
||||||
source "/home/daniel/.config/tmux/bogster.conf"
|
source "/home/daniel/.config/tmux/{{tmux_theme}}.conf"
|
||||||
|
|
||||||
# Mouse
|
# Mouse
|
||||||
set-option -g mouse on
|
set-option -g mouse on
|
||||||
@ -43,6 +43,9 @@ bind-key _ split-window -v -c '#{pane_current_path}' -p 25
|
|||||||
# Broadcast input
|
# Broadcast input
|
||||||
bind-key C-x setw synchronize-panes
|
bind-key C-x setw synchronize-panes
|
||||||
|
|
||||||
|
# Reload configuration
|
||||||
|
bind-key r source .tmux.conf
|
||||||
|
|
||||||
# Better font term
|
# Better font term
|
||||||
set -g default-terminal "tmux-256color"
|
set -g default-terminal "tmux-256color"
|
||||||
set -ga terminal-overrides ",alacritty:Tc"
|
set -ga terminal-overrides ",alacritty:Tc"
|
||||||
|
22
tmux/bogster-light.conf
Normal file
22
tmux/bogster-light.conf
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
# This tmux statusbar config was created by tmuxline.vim
|
||||||
|
# on Wed, 16 Jun 2021
|
||||||
|
|
||||||
|
set -g status-justify "centre"
|
||||||
|
set -g status "on"
|
||||||
|
set -g status-left-style "none"
|
||||||
|
set -g message-command-style "fg=#c6b8ad,bg=#415367"
|
||||||
|
set -g status-right-style "none"
|
||||||
|
set -g pane-active-border-style "fg=#b759dc"
|
||||||
|
set -g status-style "none,bg=#161c23"
|
||||||
|
set -g message-style "fg=#c6b8ad,bg=#415367"
|
||||||
|
set -g pane-border-style "fg=#415367"
|
||||||
|
set -g status-right-length "100"
|
||||||
|
set -g status-left-length "100"
|
||||||
|
setw -g window-status-activity-style "none,fg=#2c2e34,bg=#161c23"
|
||||||
|
setw -g window-status-separator ""
|
||||||
|
setw -g window-status-style "none,fg=#c6b8ad,bg=#161c23"
|
||||||
|
setw -g window-status-last-style "none,fg=#c6b8ad,bg=#161c23"
|
||||||
|
set -g status-left "#[fg=#36b2d4,bg=#2c2e34,bold] #S #[fg=#2c2e34,bg=#416753,nobold,nounderscore,noitalics]#[fg=#c6b8ad,bg=#416753] %R #[fg=#416753,bg=#161c23,nobold,nounderscore,noitalics]#[fg=#c6b8ad,bg=#161c23] #{sysstat_mem} 祝#{upload_speed} #[fg=#161c23,bg=#161c23,nobold,nounderscore,noitalics]"
|
||||||
|
set -g status-right "#[fg=#161c23,bg=#161c23,nobold,nounderscore,noitalics]#[fg=#c6b8ad,bg=#161c23] #{download_speed} #{sysstat_cpu} #[fg=#416753,bg=#161c23,nobold,nounderscore,noitalics]#[fg=#c6b8ad,bg=#416753] %a #[fg=#2c2e34,bg=#416753,nobold,nounderscore,noitalics]#[fg=#36b2d4,bg=#2c2e34,bold] #H #{prefix_highlight} "
|
||||||
|
setw -g window-status-format "#[fg=#161c23,bg=#161c23,nobold,nounderscore,noitalics]#[fg=#415367,bg=#161d23] #I #W #[fg=#161c23,bg=#161c23,nobold,nounderscore,noitalics]"
|
||||||
|
setw -g window-status-current-format "#[fg=#161c23,bg=#34342c,nobold,nounderscore,noitalics]#[fg=#dc7759,bg=#34342c] #I #W #[fg=#34342c,bg=#161c23,nobold,nounderscore,noitalics]"
|
173
vimrc
173
vimrc
@ -1,173 +0,0 @@
|
|||||||
set autoread
|
|
||||||
set autowrite
|
|
||||||
set backspace=2
|
|
||||||
set breakindent
|
|
||||||
set clipboard=unnamed
|
|
||||||
set cmdheight=2
|
|
||||||
set colorcolumn=+1
|
|
||||||
set complete+=kspell
|
|
||||||
set cursorline
|
|
||||||
set diffopt+=vertical
|
|
||||||
set encoding=utf-8
|
|
||||||
set expandtab
|
|
||||||
set exrc
|
|
||||||
set fillchars=vert:▐
|
|
||||||
set foldmethod=expr
|
|
||||||
set foldexpr=nvim_treesitter#foldexpr()
|
|
||||||
set hidden
|
|
||||||
set history=50
|
|
||||||
set incsearch
|
|
||||||
set laststatus=2
|
|
||||||
set listchars=tab:▸\ ,eol:↴,nbsp:␣,trail:•,space:⋅,extends:→,precedes:←
|
|
||||||
set list
|
|
||||||
set modelines=0
|
|
||||||
set mouse=a
|
|
||||||
set nobackup
|
|
||||||
set nojoinspaces
|
|
||||||
set nomodeline
|
|
||||||
set noswapfile
|
|
||||||
set nowritebackup
|
|
||||||
set number
|
|
||||||
set numberwidth=5
|
|
||||||
set ruler
|
|
||||||
set scrolloff=12
|
|
||||||
set shiftround
|
|
||||||
set shiftwidth=2
|
|
||||||
set shortmess+=c
|
|
||||||
set showbreak=··
|
|
||||||
set showcmd
|
|
||||||
set signcolumn=yes
|
|
||||||
set smartcase
|
|
||||||
set splitbelow
|
|
||||||
set splitright
|
|
||||||
set tabstop=2
|
|
||||||
set termencoding=utf-8
|
|
||||||
set textwidth=80
|
|
||||||
set title
|
|
||||||
set ttyfast
|
|
||||||
set updatetime=300
|
|
||||||
set vb t_vb=
|
|
||||||
|
|
||||||
syntax enable
|
|
||||||
syntax sync minlines=128 maxlines=512
|
|
||||||
|
|
||||||
" Cursor shapes
|
|
||||||
let &t_SI = "\<Esc>[6 q"
|
|
||||||
let &t_SR = "\<Esc>[4 q"
|
|
||||||
let &t_EI = "\<Esc>[0 q"
|
|
||||||
|
|
||||||
if executable('rg')
|
|
||||||
" Use rg over grep
|
|
||||||
set grepprg=rg\ --color\ never
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Install vim-plug if not found
|
|
||||||
if empty(glob('~/.vim/autoload/plug.vim'))
|
|
||||||
silent !curl -fLo ~/.vim/autoload/plug.vim --create-dirs
|
|
||||||
\ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Plugins
|
|
||||||
call plug#begin('~/.vim/plugged')
|
|
||||||
if filereadable(expand("~/.config/nvim/plugins.vimrc"))
|
|
||||||
source ~/.config/nvim/plugins.vimrc
|
|
||||||
|
|
||||||
" Run PlugInstall if there are missing plugins
|
|
||||||
autocmd VimEnter * if len(filter(values(g:plugs), '!isdirectory(v:val.dir)'))
|
|
||||||
\| PlugInstall --sync | source ~/.config/nvim/plugins.vimrc
|
|
||||||
\| endif
|
|
||||||
endif
|
|
||||||
call plug#end()
|
|
||||||
|
|
||||||
" Keybindings
|
|
||||||
if filereadable(expand("~/.config/nvim/keybindings.vimrc"))
|
|
||||||
source ~/.config/nvim/keybindings.vimrc
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Git setup
|
|
||||||
if filereadable(expand("~/.config/nvim/git.vimrc"))
|
|
||||||
source ~/.config/nvim/git.vimrc
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Autocomplete
|
|
||||||
if has_key(g:plugs, "nvim-cmp") && filereadable(expand("~/.config/nvim/nvim-cmp.vimrc"))
|
|
||||||
source ~/.config/nvim/nvim-cmp.vimrc
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Autopairs
|
|
||||||
if has_key(g:plugs, "nvim-autopairs") && has_key(g:plugs, "treesitter.nvim") && filereadable(expand("~/.config/nvim/autopairs.vimrc"))
|
|
||||||
source ~/.config/nvim/autopairs.vimrc
|
|
||||||
endif
|
|
||||||
|
|
||||||
" LSP
|
|
||||||
if has_key(g:plugs, "nvim-lspconfig") && has_key(g:plugs, "cmp-nvim-lsp") && filereadable(expand("~/.config/nvim/lspconfig.vimrc"))
|
|
||||||
source ~/.config/nvim/lspconfig.vimrc
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Gitsigns setup
|
|
||||||
if has_key(g:plugs, "gitsigns.nvim") && filereadable(expand("~/.config/nvim/gitsigns.vimrc"))
|
|
||||||
source ~/.config/nvim/gitsigns.vimrc
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Telescope setup
|
|
||||||
if has_key(g:plugs, "telescope.nvim") && filereadable(expand("~/.config/nvim/telescope.vimrc"))
|
|
||||||
source ~/.config/nvim/telescope.vimrc
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Search
|
|
||||||
if has_key(g:plugs, "nvim-hlslens") && filereadable(expand("~/.config/nvim/hlslens.vimrc"))
|
|
||||||
source ~/.config/nvim/hlslens.vimrc
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Lightline setup
|
|
||||||
if has_key(g:plugs, "lightline.vim") && filereadable(expand("~/.config/nvim/lightline.vimrc"))
|
|
||||||
source ~/.config/nvim/lightline.vimrc
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Tmuxline setup
|
|
||||||
if has_key(g:plugs, "tmuxline.vim") && filereadable(expand("~/.config/nvim/tmuxline.vimrc"))
|
|
||||||
source ~/.config/nvim/tmuxline.vimrc
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Indent setup
|
|
||||||
if has_key(g:plugs, "indent-blankline.nvim") && filereadable(expand("~/.config/nvim/lua/indent.lua"))
|
|
||||||
lua require('indent')
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Scrollbar
|
|
||||||
if has_key(g:plugs, "nvim-scrollbar") && filereadable(expand("~/.config/nvim/scrollbar.vimrc"))
|
|
||||||
source ~/.config/nvim/scrollbar.vimrc
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Tree setup
|
|
||||||
if has_key(g:plugs, "nvim-tree.lua") && filereadable(expand("~/.config/nvim/nvimtree.vimrc"))
|
|
||||||
source ~/.config/nvim/nvimtree.vimrc
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Projections
|
|
||||||
if has_key(g:plugs, "vim-projectionist") && filereadable(expand("~/.config/nvim/projections.vimrc"))
|
|
||||||
source ~/.config/nvim/projections.vimrc
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Test setup
|
|
||||||
if has_key(g:plugs, "vim-test") && filereadable(expand("~/.config/nvim/test.vimrc"))
|
|
||||||
source ~/.config/nvim/test.vimrc
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Markdown setup
|
|
||||||
if has_key(g:plugs, "vim-markdown") && filereadable(expand("~/.config/nvim/markdown.vimrc"))
|
|
||||||
source ~/.config/nvim/markdown.vimrc
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Rust tools
|
|
||||||
if has_key(g:plugs, "rust-tools.nvim") && has_key(g:plugs, "nvim-lspconfig") && filereadable(expand("~/.config/nvim/rust-tools.vimrc"))
|
|
||||||
source ~/.config/nvim/rust-tools.vimrc
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Color setup
|
|
||||||
if has_key(g:plugs, "sonokai") && filereadable(expand("~/.config/nvim/colors.vimrc"))
|
|
||||||
source ~/.config/nvim/colors.vimrc
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Set secure AFTER any other rc importing
|
|
||||||
set secure
|
|
@ -1,37 +0,0 @@
|
|||||||
{
|
|
||||||
"layer": "top",
|
|
||||||
"modules-left": ["sway/workspaces", "sway/window", "sway/mode"],
|
|
||||||
"modules-center": ["clock", "idle_inhibitor"],
|
|
||||||
"modules-right": ["cpu", "memory", "battery", "network", "tray"],
|
|
||||||
"sway/window": {
|
|
||||||
"max-length": 50
|
|
||||||
},
|
|
||||||
"battery": {
|
|
||||||
"format": "{capacity}% {icon}",
|
|
||||||
"format-icons": ["", "", "", "", ""]
|
|
||||||
},
|
|
||||||
"clock": {
|
|
||||||
"format": "{: %a, %d %b %I:%M %p}",
|
|
||||||
},
|
|
||||||
"cpu": {
|
|
||||||
"format": "{usage}% "
|
|
||||||
},
|
|
||||||
"idle_inhibitor": {
|
|
||||||
"format": "{icon}",
|
|
||||||
"format-icons": {
|
|
||||||
"activated": "",
|
|
||||||
"deactivated": ""
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"memory": {
|
|
||||||
"format": "{percentage}% "
|
|
||||||
},
|
|
||||||
"network": {
|
|
||||||
"format": "{ifname}",
|
|
||||||
"format-wifi": "{essid} ({signalStrength}%) ",
|
|
||||||
"format-ethernet": "{ifname} "
|
|
||||||
},
|
|
||||||
"tray": {
|
|
||||||
"spacing": 10
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,29 +0,0 @@
|
|||||||
* {
|
|
||||||
border: none;
|
|
||||||
border-radius: 0;
|
|
||||||
font-family: Noto Sans, Roboto, Helvetica, Arial, sans-serif;
|
|
||||||
font-size: 13px;
|
|
||||||
min-height: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
window#waybar {
|
|
||||||
color: white;
|
|
||||||
}
|
|
||||||
|
|
||||||
#clock,
|
|
||||||
#cpu,
|
|
||||||
#battery,
|
|
||||||
#idle_inhibitor,
|
|
||||||
#memory,
|
|
||||||
#mode,
|
|
||||||
#network,
|
|
||||||
#tray,
|
|
||||||
#window,
|
|
||||||
#workspaces button {
|
|
||||||
margin: 5px;
|
|
||||||
padding: 5px 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
#workspaces button.focused, #mode, #network.linked, #idle_inhibitor.activated {
|
|
||||||
color: #33ffaa;
|
|
||||||
}
|
|
@ -1,49 +0,0 @@
|
|||||||
window {
|
|
||||||
margin: 5px;
|
|
||||||
border: none;
|
|
||||||
background-color: transparent;
|
|
||||||
}
|
|
||||||
|
|
||||||
#input {
|
|
||||||
margin: 5px;
|
|
||||||
padding: 10px;
|
|
||||||
border: none;
|
|
||||||
background-color: rgba(0, 0, 0, 0.8);
|
|
||||||
}
|
|
||||||
|
|
||||||
#inner-box {
|
|
||||||
margin: 5px;
|
|
||||||
padding: 10px;
|
|
||||||
border: none;
|
|
||||||
border-radius: 25px;
|
|
||||||
background-color: rgba(0, 0, 0, 0.8);
|
|
||||||
}
|
|
||||||
|
|
||||||
#outer-box {
|
|
||||||
margin: 0;
|
|
||||||
border: none;
|
|
||||||
background-color: transparent;
|
|
||||||
}
|
|
||||||
|
|
||||||
#scroll {
|
|
||||||
margin: 0;
|
|
||||||
border: none;
|
|
||||||
background-color: transparent;
|
|
||||||
}
|
|
||||||
|
|
||||||
#text {
|
|
||||||
margin: 0;
|
|
||||||
border: none;
|
|
||||||
background-color: transparent;
|
|
||||||
}
|
|
||||||
|
|
||||||
#entry:selected {
|
|
||||||
background-color: transparent;
|
|
||||||
outline: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
#text:selected {
|
|
||||||
color: #33ffbb;
|
|
||||||
font-weight: bold;
|
|
||||||
background-color: transparent;
|
|
||||||
}
|
|
@ -1,13 +0,0 @@
|
|||||||
themes:
|
|
||||||
default:
|
|
||||||
fg: [226, 226, 227]
|
|
||||||
bg: [44, 46, 52]
|
|
||||||
black: [24, 24, 25]
|
|
||||||
red: [252, 93, 124]
|
|
||||||
green: [158, 208, 114]
|
|
||||||
yellow: [231, 198, 100]
|
|
||||||
blue: [118, 204, 224]
|
|
||||||
magenta: [179, 157, 243]
|
|
||||||
cyan: [65, 69, 80]
|
|
||||||
white: [226, 226, 227]
|
|
||||||
orange: [243, 150, 96]
|
|
Loading…
Reference in New Issue
Block a user