mirror of
https://github.com/mr0xb/dotfiles.git
synced 2026-08-27 19:34:57 -04:00
updates
This commit is contained in:
parent
05a7dcaebd
commit
984dc04492
30 changed files with 2213 additions and 1 deletions
|
|
@ -135,7 +135,7 @@ require('aerial').setup({
|
||||||
attach_mode = "global",
|
attach_mode = "global",
|
||||||
close_automatic_events = {"switch_buffer"},
|
close_automatic_events = {"switch_buffer"},
|
||||||
float = {
|
float = {
|
||||||
relative = "editor",
|
relative = "win",
|
||||||
override = function(conf)
|
override = function(conf)
|
||||||
local padding = 1
|
local padding = 1
|
||||||
conf.anchor = 'NE'
|
conf.anchor = 'NE'
|
||||||
|
|
|
||||||
276
.config/zellij/config.kdl
Normal file
276
.config/zellij/config.kdl
Normal file
|
|
@ -0,0 +1,276 @@
|
||||||
|
// If you'd like to override the default keybindings completely, be sure to change "keybinds" to "keybinds clear-defaults=true"
|
||||||
|
keybinds {
|
||||||
|
normal {
|
||||||
|
// uncomment this and adjust key if using copy_on_select=false
|
||||||
|
// bind "Alt c" { Copy; }
|
||||||
|
}
|
||||||
|
locked {
|
||||||
|
bind "Ctrl g" { SwitchToMode "Normal"; }
|
||||||
|
}
|
||||||
|
resize {
|
||||||
|
bind "Ctrl n" { SwitchToMode "Normal"; }
|
||||||
|
bind "h" "Left" { Resize "Left"; }
|
||||||
|
bind "j" "Down" { Resize "Down"; }
|
||||||
|
bind "k" "Up" { Resize "Up"; }
|
||||||
|
bind "l" "Right" { Resize "Right"; }
|
||||||
|
bind "=" "+" { Resize "Increase"; }
|
||||||
|
bind "-" { Resize "Decrease"; }
|
||||||
|
}
|
||||||
|
pane {
|
||||||
|
bind "Ctrl p" { SwitchToMode "Normal"; }
|
||||||
|
bind "h" "Left" { MoveFocus "Left"; }
|
||||||
|
bind "l" "Right" { MoveFocus "Right"; }
|
||||||
|
bind "j" "Down" { MoveFocus "Down"; }
|
||||||
|
bind "k" "Up" { MoveFocus "Up"; }
|
||||||
|
bind "p" { SwitchFocus; }
|
||||||
|
bind "n" { NewPane; SwitchToMode "Normal"; }
|
||||||
|
bind "d" { NewPane "Down"; SwitchToMode "Normal"; }
|
||||||
|
bind "r" { NewPane "Right"; SwitchToMode "Normal"; }
|
||||||
|
bind "x" { CloseFocus; SwitchToMode "Normal"; }
|
||||||
|
bind "f" { ToggleFocusFullscreen; SwitchToMode "Normal"; }
|
||||||
|
bind "z" { TogglePaneFrames; SwitchToMode "Normal"; }
|
||||||
|
bind "w" { ToggleFloatingPanes; SwitchToMode "Normal"; }
|
||||||
|
bind "e" { TogglePaneEmbedOrFloating; SwitchToMode "Normal"; }
|
||||||
|
bind "c" { SwitchToMode "RenamePane"; PaneNameInput 0;}
|
||||||
|
}
|
||||||
|
move {
|
||||||
|
bind "Ctrl h" { SwitchToMode "Normal"; }
|
||||||
|
bind "n" "Tab" { MovePane; }
|
||||||
|
bind "h" "Left" { MovePane "Left"; }
|
||||||
|
bind "j" "Down" { MovePane "Down"; }
|
||||||
|
bind "k" "Up" { MovePane "Up"; }
|
||||||
|
bind "l" "Right" { MovePane "Right"; }
|
||||||
|
}
|
||||||
|
tab {
|
||||||
|
bind "Ctrl t" { SwitchToMode "Normal"; }
|
||||||
|
bind "r" { SwitchToMode "RenameTab"; TabNameInput 0; }
|
||||||
|
bind "h" "Left" "Up" "k" { GoToPreviousTab; }
|
||||||
|
bind "l" "Right" "Down" "j" { GoToNextTab; }
|
||||||
|
bind "n" { NewTab; SwitchToMode "Normal"; }
|
||||||
|
bind "x" { CloseTab; SwitchToMode "Normal"; }
|
||||||
|
bind "s" { ToggleActiveSyncTab; SwitchToMode "Normal"; }
|
||||||
|
bind "1" { GoToTab 1; SwitchToMode "Normal"; }
|
||||||
|
bind "2" { GoToTab 2; SwitchToMode "Normal"; }
|
||||||
|
bind "3" { GoToTab 3; SwitchToMode "Normal"; }
|
||||||
|
bind "4" { GoToTab 4; SwitchToMode "Normal"; }
|
||||||
|
bind "5" { GoToTab 5; SwitchToMode "Normal"; }
|
||||||
|
bind "6" { GoToTab 6; SwitchToMode "Normal"; }
|
||||||
|
bind "7" { GoToTab 7; SwitchToMode "Normal"; }
|
||||||
|
bind "8" { GoToTab 8; SwitchToMode "Normal"; }
|
||||||
|
bind "9" { GoToTab 9; SwitchToMode "Normal"; }
|
||||||
|
bind "Tab" { ToggleTab; }
|
||||||
|
}
|
||||||
|
scroll {
|
||||||
|
bind "Ctrl s" { SwitchToMode "Normal"; }
|
||||||
|
bind "e" { EditScrollback; SwitchToMode "Normal"; }
|
||||||
|
bind "s" { SwitchToMode "EnterSearch"; SearchInput 0; }
|
||||||
|
bind "Ctrl c" { ScrollToBottom; SwitchToMode "Normal"; }
|
||||||
|
bind "j" "Down" { ScrollDown; }
|
||||||
|
bind "k" "Up" { ScrollUp; }
|
||||||
|
bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
|
||||||
|
bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
|
||||||
|
bind "d" { HalfPageScrollDown; }
|
||||||
|
bind "u" { HalfPageScrollUp; }
|
||||||
|
// uncomment this and adjust key if using copy_on_select=false
|
||||||
|
// bind "Alt c" { Copy; }
|
||||||
|
}
|
||||||
|
search {
|
||||||
|
bind "Ctrl s" { SwitchToMode "Normal"; }
|
||||||
|
bind "Ctrl c" { ScrollToBottom; SwitchToMode "Normal"; }
|
||||||
|
bind "j" "Down" { ScrollDown; }
|
||||||
|
bind "k" "Up" { ScrollUp; }
|
||||||
|
bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
|
||||||
|
bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
|
||||||
|
bind "d" { HalfPageScrollDown; }
|
||||||
|
bind "u" { HalfPageScrollUp; }
|
||||||
|
bind "n" { Search "down"; }
|
||||||
|
bind "p" { Search "up"; }
|
||||||
|
bind "c" { SearchToggleOption "CaseSensitivity"; }
|
||||||
|
bind "w" { SearchToggleOption "Wrap"; }
|
||||||
|
bind "o" { SearchToggleOption "WholeWord"; }
|
||||||
|
}
|
||||||
|
entersearch {
|
||||||
|
bind "Ctrl c" "Esc" { SwitchToMode "Scroll"; }
|
||||||
|
bind "Enter" { SwitchToMode "Search"; }
|
||||||
|
}
|
||||||
|
renametab {
|
||||||
|
bind "Ctrl c" { SwitchToMode "Normal"; }
|
||||||
|
bind "Esc" { UndoRenameTab; SwitchToMode "Tab"; }
|
||||||
|
}
|
||||||
|
renamepane {
|
||||||
|
bind "Ctrl c" { SwitchToMode "Normal"; }
|
||||||
|
bind "Esc" { UndoRenamePane; SwitchToMode "Pane"; }
|
||||||
|
}
|
||||||
|
session {
|
||||||
|
bind "Ctrl o" { SwitchToMode "Normal"; }
|
||||||
|
bind "Ctrl s" { SwitchToMode "Scroll"; }
|
||||||
|
bind "d" { Detach; }
|
||||||
|
}
|
||||||
|
tmux {
|
||||||
|
bind "[" { SwitchToMode "Scroll"; }
|
||||||
|
bind "Ctrl b" { Write 2; SwitchToMode "Normal"; }
|
||||||
|
bind "\"" { NewPane "Down"; SwitchToMode "Normal"; }
|
||||||
|
bind "%" { NewPane "Right"; SwitchToMode "Normal"; }
|
||||||
|
bind "z" { ToggleFocusFullscreen; SwitchToMode "Normal"; }
|
||||||
|
bind "c" { NewTab; SwitchToMode "Normal"; }
|
||||||
|
bind "," { SwitchToMode "RenameTab"; }
|
||||||
|
bind "p" { GoToPreviousTab; SwitchToMode "Normal"; }
|
||||||
|
bind "n" { GoToNextTab; SwitchToMode "Normal"; }
|
||||||
|
bind "Left" { MoveFocus "Left"; SwitchToMode "Normal"; }
|
||||||
|
bind "Right" { MoveFocus "Right"; SwitchToMode "Normal"; }
|
||||||
|
bind "Down" { MoveFocus "Down"; SwitchToMode "Normal"; }
|
||||||
|
bind "Up" { MoveFocus "Up"; SwitchToMode "Normal"; }
|
||||||
|
bind "h" { MoveFocus "Left"; SwitchToMode "Normal"; }
|
||||||
|
bind "l" { MoveFocus "Right"; SwitchToMode "Normal"; }
|
||||||
|
bind "j" { MoveFocus "Down"; SwitchToMode "Normal"; }
|
||||||
|
bind "k" { MoveFocus "Up"; SwitchToMode "Normal"; }
|
||||||
|
bind "o" { FocusNextPane; }
|
||||||
|
bind "d" { Detach; }
|
||||||
|
}
|
||||||
|
shared_except "locked" {
|
||||||
|
bind "Ctrl g" { SwitchToMode "Locked"; }
|
||||||
|
bind "Ctrl q" { Quit; }
|
||||||
|
bind "Alt n" { NewPane; }
|
||||||
|
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||||
|
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||||
|
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||||
|
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||||
|
bind "Alt =" "Alt +" { Resize "Increase"; }
|
||||||
|
bind "Alt -" { Resize "Decrease"; }
|
||||||
|
}
|
||||||
|
shared_except "normal" "locked" {
|
||||||
|
bind "Enter" "Esc" { SwitchToMode "Normal"; }
|
||||||
|
}
|
||||||
|
shared_except "pane" "locked" {
|
||||||
|
bind "Ctrl p" { SwitchToMode "Pane"; }
|
||||||
|
}
|
||||||
|
shared_except "resize" "locked" {
|
||||||
|
bind "Ctrl n" { SwitchToMode "Resize"; }
|
||||||
|
}
|
||||||
|
shared_except "scroll" "locked" {
|
||||||
|
bind "Ctrl s" { SwitchToMode "Scroll"; }
|
||||||
|
}
|
||||||
|
shared_except "session" "locked" {
|
||||||
|
bind "Ctrl o" { SwitchToMode "Session"; }
|
||||||
|
}
|
||||||
|
shared_except "tab" "locked" {
|
||||||
|
bind "Ctrl t" { SwitchToMode "Tab"; }
|
||||||
|
}
|
||||||
|
shared_except "move" "locked" {
|
||||||
|
bind "Ctrl h" { SwitchToMode "Move"; }
|
||||||
|
}
|
||||||
|
shared_except "tmux" "locked" {
|
||||||
|
bind "Ctrl b" { SwitchToMode "Tmux"; }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
plugins {
|
||||||
|
tab-bar { path "tab-bar"; }
|
||||||
|
status-bar { path "status-bar"; }
|
||||||
|
strider { path "strider"; }
|
||||||
|
compact-bar { path "compact-bar"; }
|
||||||
|
}
|
||||||
|
|
||||||
|
// Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP
|
||||||
|
// eg. when terminal window with an active zellij session is closed
|
||||||
|
// Options:
|
||||||
|
// - detach (Default)
|
||||||
|
// - quit
|
||||||
|
//
|
||||||
|
// on_force_close "quit"
|
||||||
|
|
||||||
|
// Send a request for a simplified ui (without arrow fonts) to plugins
|
||||||
|
// Options:
|
||||||
|
// - true
|
||||||
|
// - false (Default)
|
||||||
|
//
|
||||||
|
// simplified_ui true
|
||||||
|
|
||||||
|
// Choose the path to the default shell that zellij will use for opening new panes
|
||||||
|
// Default: $SHELL
|
||||||
|
//
|
||||||
|
// default_shell "fish"
|
||||||
|
|
||||||
|
// Toggle between having pane frames around the panes
|
||||||
|
// Options:
|
||||||
|
// - true (default)
|
||||||
|
// - false
|
||||||
|
//
|
||||||
|
// pane_frames true
|
||||||
|
|
||||||
|
// Define color themes for Zellij
|
||||||
|
// For more examples, see: https://github.com/zellij-org/zellij/tree/main/example/themes
|
||||||
|
// Once these themes are defined, one of them should to be selected in the "theme" section of this file
|
||||||
|
//
|
||||||
|
themes {
|
||||||
|
dracula {
|
||||||
|
fg 248 248 242
|
||||||
|
bg 40 42 54
|
||||||
|
red 255 85 85
|
||||||
|
green 80 250 123
|
||||||
|
yellow 241 250 140
|
||||||
|
blue 98 114 164
|
||||||
|
magenta 255 121 198
|
||||||
|
orange 255 184 108
|
||||||
|
cyan 139 233 253
|
||||||
|
black 0 0 0
|
||||||
|
white 255 255 255
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Choose the theme that is specified in the themes section.
|
||||||
|
// Default: default
|
||||||
|
//
|
||||||
|
theme "dracula"
|
||||||
|
|
||||||
|
// The name of the default layout to load on startup
|
||||||
|
// Default: "default"
|
||||||
|
//
|
||||||
|
// default_layout "compact"
|
||||||
|
|
||||||
|
// Choose the mode that zellij uses when starting up.
|
||||||
|
// Default: normal
|
||||||
|
//
|
||||||
|
// default_mode "locked"
|
||||||
|
|
||||||
|
// Toggle enabling the mouse mode.
|
||||||
|
// On certain configurations, or terminals this could
|
||||||
|
// potentially interfere with copying text.
|
||||||
|
mouse_mode true
|
||||||
|
scroll_buffer_size 20000
|
||||||
|
|
||||||
|
copy_command "xclip -selection clipboard" // x11
|
||||||
|
// copy_command "wl-copy" // wayland
|
||||||
|
// copy_command "pbcopy" // osx
|
||||||
|
|
||||||
|
// Choose the destination for copied text
|
||||||
|
// Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard.
|
||||||
|
// Does not apply when using copy_command.
|
||||||
|
// Options:
|
||||||
|
// - system (default)
|
||||||
|
// - primary
|
||||||
|
//
|
||||||
|
// copy_clipboard "primary"
|
||||||
|
|
||||||
|
// Enable or disable automatic copy (and clear) of selection when releasing mouse
|
||||||
|
// Default: true
|
||||||
|
//
|
||||||
|
// copy_on_select false
|
||||||
|
copy_on_select true
|
||||||
|
// Path to the default editor to use to edit pane scrollbuffer
|
||||||
|
// Default: $EDITOR or $VISUAL
|
||||||
|
//
|
||||||
|
// scrollback_editor "/usr/bin/vim"
|
||||||
|
|
||||||
|
// When attaching to an existing session with other users,
|
||||||
|
// should the session be mirrored (true)
|
||||||
|
// or should each user have their own cursor (false)
|
||||||
|
// Default: false
|
||||||
|
//
|
||||||
|
// mirror_session true
|
||||||
|
|
||||||
|
// The folder in which Zellij will look for layouts
|
||||||
|
//
|
||||||
|
// layout_dir "/path/to/my/layout_dir"
|
||||||
|
|
||||||
|
theme_dir "/home/mr0xb/.config/zellij_cfg/themes"
|
||||||
38
alacritty/alacritty.yml
Normal file
38
alacritty/alacritty.yml
Normal file
|
|
@ -0,0 +1,38 @@
|
||||||
|
shell:
|
||||||
|
program: /usr/bin/zsh
|
||||||
|
|
||||||
|
import:
|
||||||
|
- ~/.config/alacritty/themes/dracula.yml
|
||||||
|
- ~/.config/alacritty/bindings.yml
|
||||||
|
|
||||||
|
cursor:
|
||||||
|
style: Block
|
||||||
|
|
||||||
|
hints:
|
||||||
|
enabled:
|
||||||
|
- regex: "(mailto:|gemini:|gopher:|https:|http:|news:|file:|git:|ssh:|ftp:)[^\u0000-\u001F\u007F-\u009F<>\" {-}\\^⟨⟩`]+"
|
||||||
|
command: xdg-open
|
||||||
|
post_processing: true
|
||||||
|
mouse:
|
||||||
|
mods: Control|Shift
|
||||||
|
|
||||||
|
window:
|
||||||
|
opacity: 0.9
|
||||||
|
padding:
|
||||||
|
x: 5
|
||||||
|
y: 5
|
||||||
|
|
||||||
|
scrolling:
|
||||||
|
history: 100000
|
||||||
|
multiplier: 3
|
||||||
|
|
||||||
|
font:
|
||||||
|
normal:
|
||||||
|
family: "FuraMono Nerd Font Mono"
|
||||||
|
style: Regular
|
||||||
|
bold:
|
||||||
|
family: "FuraMono Nerd Font Mono"
|
||||||
|
style: Bold
|
||||||
|
italic:
|
||||||
|
family: "FuraMono Nerd Font Mono"
|
||||||
|
style: Bold
|
||||||
2
alacritty/bindings.yml
Normal file
2
alacritty/bindings.yml
Normal file
|
|
@ -0,0 +1,2 @@
|
||||||
|
mouse_bindings:
|
||||||
|
- { mouse: Right, action: CopySelection }
|
||||||
61
alacritty/themes/dracula.yml
Normal file
61
alacritty/themes/dracula.yml
Normal file
|
|
@ -0,0 +1,61 @@
|
||||||
|
# Dracula theme for Alacritty
|
||||||
|
# https://draculatheme.com/alacritty
|
||||||
|
#
|
||||||
|
# Color palette
|
||||||
|
# https://spec.draculatheme.com
|
||||||
|
#
|
||||||
|
# Template
|
||||||
|
# https://github.com/alacritty/alacritty/blob/master/alacritty.yml
|
||||||
|
|
||||||
|
colors:
|
||||||
|
primary:
|
||||||
|
background: '#282a36'
|
||||||
|
foreground: '#f8f8f2'
|
||||||
|
bright_foreground: '#ffffff'
|
||||||
|
cursor:
|
||||||
|
text: CellBackground
|
||||||
|
cursor: CellForeground
|
||||||
|
vi_mode_cursor:
|
||||||
|
text: CellBackground
|
||||||
|
cursor: CellForeground
|
||||||
|
search:
|
||||||
|
matches:
|
||||||
|
foreground: '#44475a'
|
||||||
|
background: '#50fa7b'
|
||||||
|
focused_match:
|
||||||
|
foreground: '#44475a'
|
||||||
|
background: '#ffb86c'
|
||||||
|
footer_bar:
|
||||||
|
background: '#282a36'
|
||||||
|
foreground: '#f8f8f2'
|
||||||
|
hints:
|
||||||
|
start:
|
||||||
|
foreground: '#282a36'
|
||||||
|
background: '#f1fa8c'
|
||||||
|
end:
|
||||||
|
foreground: '#f1fa8c'
|
||||||
|
background: '#282a36'
|
||||||
|
line_indicator:
|
||||||
|
foreground: None
|
||||||
|
background: None
|
||||||
|
selection:
|
||||||
|
text: CellForeground
|
||||||
|
background: '#44475a'
|
||||||
|
normal:
|
||||||
|
black: '#21222c'
|
||||||
|
red: '#ff5555'
|
||||||
|
green: '#50fa7b'
|
||||||
|
yellow: '#f1fa8c'
|
||||||
|
blue: '#bd93f9'
|
||||||
|
magenta: '#ff79c6'
|
||||||
|
cyan: '#8be9fd'
|
||||||
|
white: '#f8f8f2'
|
||||||
|
bright:
|
||||||
|
black: '#6272a4'
|
||||||
|
red: '#ff6e6e'
|
||||||
|
green: '#69ff94'
|
||||||
|
yellow: '#ffffa5'
|
||||||
|
blue: '#d6acff'
|
||||||
|
magenta: '#ff92df'
|
||||||
|
cyan: '#a4ffff'
|
||||||
|
white: '#ffffff'
|
||||||
159
nvim/init.lua
Normal file
159
nvim/init.lua
Normal file
|
|
@ -0,0 +1,159 @@
|
||||||
|
local api = vim.api
|
||||||
|
local g = vim.g
|
||||||
|
local opt = vim.opt
|
||||||
|
local BUFFER = vim.bo
|
||||||
|
local GLOBAL = vim.o
|
||||||
|
local WINDOW = vim.wo
|
||||||
|
|
||||||
|
local function set_all(option, scope, value)
|
||||||
|
scope[option] = value
|
||||||
|
end
|
||||||
|
|
||||||
|
api.nvim_set_keymap("", "<Space>", "<Nop>", { noremap = true, silent = true })
|
||||||
|
|
||||||
|
require('plugins')
|
||||||
|
require('config.colors')
|
||||||
|
require('key_bindings')
|
||||||
|
diagnostics = require('diag')
|
||||||
|
vim.cmd[[
|
||||||
|
autocmd CursorMoved * :lua diagnostics.echo_diagnostic()
|
||||||
|
]]
|
||||||
|
|
||||||
|
|
||||||
|
local options = {
|
||||||
|
{option='loaded', scope=g, value=1},
|
||||||
|
{option='mapleader', scope=g, value=" "},
|
||||||
|
{option='maplocalleader', scope=g, value = " "},
|
||||||
|
{option='loaded_netrwPlugin', scope=g, value=1},
|
||||||
|
{option='indentLine_fileTypeExclude', scope=g, value = {'dashboard'}},
|
||||||
|
--tabs,spacing & formatting
|
||||||
|
{option='tabstop', scope=GLOBAL, value=2},
|
||||||
|
{option='shiftwidth', scope=GLOBAL, value=2},
|
||||||
|
{option='expandtab', scope=GLOBAL, value=true},
|
||||||
|
{option='smartcase', scope=GLOBAL, value=true},
|
||||||
|
{option='shiftround', scope=GLOBAL, value=true},
|
||||||
|
{option='ignorecase', scope=GLOBAL, value=true},
|
||||||
|
-- display options
|
||||||
|
{option='number', scope=GLOBAL, value=true},
|
||||||
|
{option='hlsearch', scope=GLOBAL, value=true},
|
||||||
|
{option='timeoutlen', scope=GLOBAL, value=300}, -- Time in milliseconds to wait for mapped seq to complete.
|
||||||
|
{option='updatetime', scope=GLOBAL, value=250}, -- Decrease update time
|
||||||
|
{option='cursorline', scope=GLOBAL, value=true},
|
||||||
|
{option='signcolumn', scope=GLOBAL, value='yes'},
|
||||||
|
{option='breakindent', scope=GLOBAL, value=true},
|
||||||
|
{option='termguicolors', scope=GLOBAL, value=true},
|
||||||
|
{option='relativenumber', scope=GLOBAL, value=true},
|
||||||
|
{option='guicursor', scope=GLOBAL, value="n-v:block,i-c-ci-ve:ver25,r-cr:hor20,o:hor50,i:blinkwait700-blinkoff400-blinkon250-Cursor/lCursor,sm:block-blinkwait175-blinkoff150-blinkon175"},
|
||||||
|
|
||||||
|
-- undo, history, etc
|
||||||
|
{option='mouse', scope=GLOBAL, value='a'},
|
||||||
|
{option='undofile', scope=GLOBAL, value=true},
|
||||||
|
{option='undodir', scope=GLOBAL, value=vim.fn.stdpath('config') .. '/undodir'},
|
||||||
|
|
||||||
|
-- misc
|
||||||
|
{option='clipboard', scope=GLOBAL, value='unnamedplus'},
|
||||||
|
}
|
||||||
|
for _, args in pairs(options) do
|
||||||
|
set_all(args.option, args.scope, args.value)
|
||||||
|
end
|
||||||
|
|
||||||
|
-- highlight selection on yank
|
||||||
|
vim.cmd [[
|
||||||
|
augroup YankHighlight
|
||||||
|
autocmd!
|
||||||
|
autocmd TextYankPost * silent! lua vim.highlight.on_yank()
|
||||||
|
augroup end
|
||||||
|
]]
|
||||||
|
|
||||||
|
vim.cmd[[colorscheme dracula]]
|
||||||
|
require('aerial').setup({
|
||||||
|
backends = { "lsp", "treesitter", "markdown" },
|
||||||
|
show_guides = true,
|
||||||
|
border = "double",
|
||||||
|
filter_kind = {
|
||||||
|
"Array",
|
||||||
|
"Boolean",
|
||||||
|
"Class",
|
||||||
|
"Constant",
|
||||||
|
"Constructor",
|
||||||
|
"Enum",
|
||||||
|
"EnumMember",
|
||||||
|
"Event",
|
||||||
|
"Field",
|
||||||
|
"File",
|
||||||
|
"Function",
|
||||||
|
"Interface",
|
||||||
|
"Key",
|
||||||
|
"Method",
|
||||||
|
"Module",
|
||||||
|
"Namespace",
|
||||||
|
"Null",
|
||||||
|
"Number",
|
||||||
|
"Object",
|
||||||
|
"Operator",
|
||||||
|
"Package",
|
||||||
|
"Property",
|
||||||
|
"String",
|
||||||
|
"Struct",
|
||||||
|
"TypeParameter",
|
||||||
|
"Variable",
|
||||||
|
},
|
||||||
|
icons = {
|
||||||
|
Array = "",
|
||||||
|
Boolean = "⊨",
|
||||||
|
Class = "",
|
||||||
|
Constant = "",
|
||||||
|
Constructor = "",
|
||||||
|
Key = "",
|
||||||
|
Function = "",
|
||||||
|
Method = "ƒ",
|
||||||
|
Namespace = "",
|
||||||
|
Null = "NULL",
|
||||||
|
Number = "#",
|
||||||
|
Object = "⦿",
|
||||||
|
Property = "",
|
||||||
|
TypeParameter = "𝙏",
|
||||||
|
Variable = "",
|
||||||
|
Enum = "ℰ",
|
||||||
|
Package = "",
|
||||||
|
EnumMember = "",
|
||||||
|
File = "",
|
||||||
|
Module = "",
|
||||||
|
Field = "",
|
||||||
|
Interface = "ﰮ",
|
||||||
|
String = "𝓐",
|
||||||
|
Struct = "𝓢",
|
||||||
|
Event = "",
|
||||||
|
Operator = "+",
|
||||||
|
},
|
||||||
|
guides = {
|
||||||
|
mid_item = "├ ",
|
||||||
|
last_item = "└ ",
|
||||||
|
nested_top = "│ ",
|
||||||
|
whitespace = " ",
|
||||||
|
},
|
||||||
|
attach_mode = "global",
|
||||||
|
close_automatic_events = {"switch_buffer"},
|
||||||
|
float = {
|
||||||
|
relative = "win",
|
||||||
|
override = function(conf)
|
||||||
|
local padding = 1
|
||||||
|
conf.anchor = 'NE'
|
||||||
|
conf.row = padding
|
||||||
|
conf.col = vim.api.nvim_win_get_width(0) - padding
|
||||||
|
return conf
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
on_attach = function(bufnr)
|
||||||
|
-- Jump forwards/backwards with '{' and '}'
|
||||||
|
vim.keymap.set("n", "{", "<cmd>AerialPrev<cr>", { buffer = bufnr, desc = "Jump backwards in Aerial" })
|
||||||
|
vim.keymap.set("n", "}", "<cmd>AerialNext<cr>", { buffer = bufnr, desc = "Jump forwards in Aerial" })
|
||||||
|
-- Jump up the tree with '[[' or ']]'
|
||||||
|
vim.keymap.set("n", "[[", "<cmd>AerialPrevUp<cr>", { buffer = bufnr, desc = "Jump up and backwards in Aerial" })
|
||||||
|
vim.keymap.set("n", "]]", "<cmd>AerialNextUp<cr>", { buffer = bufnr, desc = "Jump up and forwards in Aerial" })
|
||||||
|
end,
|
||||||
|
})
|
||||||
|
vim.api.nvim_exec(
|
||||||
|
[[
|
||||||
|
au! WinLeave *.rs AerialCloseAll
|
||||||
|
]], false)
|
||||||
12
nvim/lua/config/_template.lua
Normal file
12
nvim/lua/config/_template.lua
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
local M = {}
|
||||||
|
|
||||||
|
function M.setup()
|
||||||
|
local {PLUGIN} = require({PLUGIN})
|
||||||
|
local conf = {
|
||||||
|
conf = {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
{PLUGIN}.setup(conf)
|
||||||
|
end
|
||||||
|
return M
|
||||||
261
nvim/lua/config/aerial.lua.bak
Normal file
261
nvim/lua/config/aerial.lua.bak
Normal file
|
|
@ -0,0 +1,261 @@
|
||||||
|
local M = {}
|
||||||
|
|
||||||
|
function M.setup()
|
||||||
|
local aerial = require("aerial")
|
||||||
|
local conf = {
|
||||||
|
backends = { "treesitter", "lsp", "markdown", "man" },
|
||||||
|
float = {
|
||||||
|
relative = "editor",
|
||||||
|
override = function(conf)
|
||||||
|
local padding = 4
|
||||||
|
conf.anchor = 'NE'
|
||||||
|
conf.row = padding
|
||||||
|
conf.col = vim.o.columns - padding
|
||||||
|
return conf
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
layout = {
|
||||||
|
-- These control the width of the aerial window.
|
||||||
|
-- They can be integers or a float between 0 and 1 (e.g. 0.4 for 40%)
|
||||||
|
-- min_width and max_width can be a list of mixed types.
|
||||||
|
-- max_width = {40, 0.2} means "the lesser of 40 columns or 20% of total"
|
||||||
|
max_width = { 80, 0.2 },
|
||||||
|
width = nil,
|
||||||
|
min_width = 40,
|
||||||
|
|
||||||
|
-- key-value pairs of window-local options for aerial window (e.g. winhl)
|
||||||
|
win_opts = {},
|
||||||
|
|
||||||
|
-- Determines the default direction to open the aerial window. The 'prefer'
|
||||||
|
-- options will open the window in the other direction *if* there is a
|
||||||
|
-- different buffer in the way of the preferred direction
|
||||||
|
-- Enum: prefer_right, prefer_left, right, left, float
|
||||||
|
default_direction = "right",
|
||||||
|
|
||||||
|
-- Determines where the aerial window will be opened
|
||||||
|
-- edge - open aerial at the far right/left of the editor
|
||||||
|
-- window - open aerial to the right/left of the current window
|
||||||
|
placement = "edge",
|
||||||
|
},
|
||||||
|
|
||||||
|
-- Determines how the aerial window decides which buffer to display symbols for
|
||||||
|
-- window - aerial window will display symbols for the buffer in the window from which it was opened
|
||||||
|
-- global - aerial window will display symbols for the current window
|
||||||
|
attach_mode = "global",
|
||||||
|
|
||||||
|
-- List of enum values that configure when to auto-close the aerial window
|
||||||
|
-- unfocus - close aerial when you leave the original source window
|
||||||
|
-- switch_buffer - close aerial when you change buffers in the source window
|
||||||
|
-- unsupported - close aerial when attaching to a buffer that has no symbol source
|
||||||
|
close_automatic_events = {},
|
||||||
|
|
||||||
|
-- Keymaps in aerial window. Can be any value that `vim.keymap.set` accepts OR a table of keymap
|
||||||
|
-- options with a `callback` (e.g. { callback = function() ... end, desc = "", nowait = true })
|
||||||
|
-- Additionally, if it is a string that matches "aerial.<name>",
|
||||||
|
-- it will use the mapping at require("aerial.action").<name>
|
||||||
|
-- Set to `false` to remove a keymap
|
||||||
|
keymaps = {
|
||||||
|
["?"] = "actions.show_help",
|
||||||
|
["g?"] = "actions.show_help",
|
||||||
|
["<CR>"] = "actions.jump",
|
||||||
|
["<2-LeftMouse>"] = "actions.jump",
|
||||||
|
["<C-v>"] = "actions.jump_vsplit",
|
||||||
|
["<C-s>"] = "actions.jump_split",
|
||||||
|
["p"] = "actions.scroll",
|
||||||
|
["<C-j>"] = "actions.down_and_scroll",
|
||||||
|
["<C-k>"] = "actions.up_and_scroll",
|
||||||
|
["{"] = "actions.prev",
|
||||||
|
["}"] = "actions.next",
|
||||||
|
["[["] = "actions.prev_up",
|
||||||
|
["]]"] = "actions.next_up",
|
||||||
|
["q"] = "actions.close",
|
||||||
|
["o"] = "actions.tree_toggle",
|
||||||
|
["za"] = "actions.tree_toggle",
|
||||||
|
["O"] = "actions.tree_toggle_recursive",
|
||||||
|
["zA"] = "actions.tree_toggle_recursive",
|
||||||
|
["l"] = "actions.tree_open",
|
||||||
|
["zo"] = "actions.tree_open",
|
||||||
|
["L"] = "actions.tree_open_recursive",
|
||||||
|
["zO"] = "actions.tree_open_recursive",
|
||||||
|
["h"] = "actions.tree_close",
|
||||||
|
["zc"] = "actions.tree_close",
|
||||||
|
["H"] = "actions.tree_close_recursive",
|
||||||
|
["zC"] = "actions.tree_close_recursive",
|
||||||
|
["zr"] = "actions.tree_increase_fold_level",
|
||||||
|
["zR"] = "actions.tree_open_all",
|
||||||
|
["zm"] = "actions.tree_decrease_fold_level",
|
||||||
|
["zM"] = "actions.tree_close_all",
|
||||||
|
["zx"] = "actions.tree_sync_folds",
|
||||||
|
["zX"] = "actions.tree_sync_folds",
|
||||||
|
},
|
||||||
|
|
||||||
|
-- When true, don't load aerial until a command or function is called
|
||||||
|
-- Defaults to true, unless `on_attach` is provided, then it defaults to false
|
||||||
|
lazy_load = true,
|
||||||
|
|
||||||
|
-- Disable aerial on files with this many lines
|
||||||
|
disable_max_lines = 10000,
|
||||||
|
|
||||||
|
-- Disable aerial on files this size or larger (in bytes)
|
||||||
|
disable_max_size = 2000000, -- Default 2MB
|
||||||
|
|
||||||
|
-- A list of all symbols to display. Set to false to display all symbols.
|
||||||
|
-- This can be a filetype map (see :help aerial-filetype-map)
|
||||||
|
-- To see all available values, see :help SymbolKind
|
||||||
|
filter_kind = {
|
||||||
|
"Class",
|
||||||
|
"Constructor",
|
||||||
|
"Enum",
|
||||||
|
"Function",
|
||||||
|
"Interface",
|
||||||
|
"Module",
|
||||||
|
"Method",
|
||||||
|
"Struct",
|
||||||
|
},
|
||||||
|
|
||||||
|
-- Determines line highlighting mode when multiple splits are visible.
|
||||||
|
-- split_width Each open window will have its cursor location marked in the
|
||||||
|
-- aerial buffer. Each line will only be partially highlighted
|
||||||
|
-- to indicate which window is at that location.
|
||||||
|
-- full_width Each open window will have its cursor location marked as a
|
||||||
|
-- full-width highlight in the aerial buffer.
|
||||||
|
-- last Only the most-recently focused window will have its location
|
||||||
|
-- marked in the aerial buffer.
|
||||||
|
-- none Do not show the cursor locations in the aerial window.
|
||||||
|
highlight_mode = "split_width",
|
||||||
|
|
||||||
|
-- Highlight the closest symbol if the cursor is not exactly on one.
|
||||||
|
highlight_closest = true,
|
||||||
|
|
||||||
|
-- Highlight the symbol in the source buffer when cursor is in the aerial win
|
||||||
|
highlight_on_hover = false,
|
||||||
|
|
||||||
|
-- When jumping to a symbol, highlight the line for this many ms.
|
||||||
|
-- Set to false to disable
|
||||||
|
highlight_on_jump = 300,
|
||||||
|
|
||||||
|
-- Define symbol icons. You can also specify "<Symbol>Collapsed" to change the
|
||||||
|
-- icon when the tree is collapsed at that symbol, or "Collapsed" to specify a
|
||||||
|
-- default collapsed icon. The default icon set is determined by the
|
||||||
|
-- "nerd_font" option below.
|
||||||
|
-- If you have lspkind-nvim installed, it will be the default icon set.
|
||||||
|
-- This can be a filetype map (see :help aerial-filetype-map)
|
||||||
|
icons = {},
|
||||||
|
|
||||||
|
-- Control which windows and buffers aerial should ignore.
|
||||||
|
-- If attach_mode is "global", focusing an ignored window/buffer will
|
||||||
|
-- not cause the aerial window to update.
|
||||||
|
-- If open_automatic is true, focusing an ignored window/buffer will not
|
||||||
|
-- cause an aerial window to open.
|
||||||
|
-- If open_automatic is a function, ignore rules have no effect on aerial
|
||||||
|
-- window opening behavior; it's entirely handled by the open_automatic
|
||||||
|
-- function.
|
||||||
|
ignore = {
|
||||||
|
-- Ignore unlisted buffers. See :help buflisted
|
||||||
|
unlisted_buffers = true,
|
||||||
|
|
||||||
|
-- List of filetypes to ignore.
|
||||||
|
filetypes = {},
|
||||||
|
|
||||||
|
-- Ignored buftypes.
|
||||||
|
-- Can be one of the following:
|
||||||
|
-- false or nil - No buftypes are ignored.
|
||||||
|
-- "special" - All buffers other than normal buffers are ignored.
|
||||||
|
-- table - A list of buftypes to ignore. See :help buftype for the
|
||||||
|
-- possible values.
|
||||||
|
-- function - A function that returns true if the buffer should be
|
||||||
|
-- ignored or false if it should not be ignored.
|
||||||
|
-- Takes two arguments, `bufnr` and `buftype`.
|
||||||
|
buftypes = "special",
|
||||||
|
|
||||||
|
-- Ignored wintypes.
|
||||||
|
-- Can be one of the following:
|
||||||
|
-- false or nil - No wintypes are ignored.
|
||||||
|
-- "special" - All windows other than normal windows are ignored.
|
||||||
|
-- table - A list of wintypes to ignore. See :help win_gettype() for the
|
||||||
|
-- possible values.
|
||||||
|
-- function - A function that returns true if the window should be
|
||||||
|
-- ignored or false if it should not be ignored.
|
||||||
|
-- Takes two arguments, `winid` and `wintype`.
|
||||||
|
wintypes = "special",
|
||||||
|
},
|
||||||
|
|
||||||
|
-- Use symbol tree for folding. Set to true or false to enable/disable
|
||||||
|
-- Set to "auto" to manage folds if your previous foldmethod was 'manual'
|
||||||
|
-- This can be a filetype map (see :help aerial-filetype-map)
|
||||||
|
manage_folds = true,
|
||||||
|
|
||||||
|
-- When you fold code with za, zo, or zc, update the aerial tree as well.
|
||||||
|
-- Only works when manage_folds = true
|
||||||
|
-- Fold code when you open/collapse symbols in the tree.
|
||||||
|
-- Only works when manage_folds = true
|
||||||
|
link_tree_to_folds = true,
|
||||||
|
|
||||||
|
-- Set default symbol icons to use patched font icons (see https://www.nerdfonts.com/)
|
||||||
|
-- "auto" will set it to true if nvim-web-devicons or lspkind-nvim is installed.
|
||||||
|
nerd_font = "auto",
|
||||||
|
|
||||||
|
-- Call this function when aerial attaches to a buffer.
|
||||||
|
on_attach = function(bufnr) end,
|
||||||
|
|
||||||
|
-- Call this function when aerial first sets symbols on a buffer.
|
||||||
|
on_first_symbols = function(bufnr) end,
|
||||||
|
|
||||||
|
-- Automatically open aerial when entering supported buffers.
|
||||||
|
-- This can be a function (see :help aerial-open-automatic)
|
||||||
|
open_automatic = false,
|
||||||
|
|
||||||
|
-- Run this command after jumping to a symbol (false will disable)
|
||||||
|
post_jump_cmd = "normal! zz",
|
||||||
|
|
||||||
|
-- When true, aerial will automatically close after jumping to a symbol
|
||||||
|
close_on_select = false,
|
||||||
|
|
||||||
|
-- The autocmds that trigger symbols update (not used for LSP backend)
|
||||||
|
update_events = "TextChanged,InsertLeave",
|
||||||
|
|
||||||
|
-- Show box drawing characters for the tree hierarchy
|
||||||
|
show_guides = true,
|
||||||
|
|
||||||
|
guides = {
|
||||||
|
-- When the child item has a sibling below it
|
||||||
|
mid_item = "├─",
|
||||||
|
-- When the child item is the last in the list
|
||||||
|
last_item = "└─",
|
||||||
|
-- When there are nested child guides to the right
|
||||||
|
nested_top = "│ ",
|
||||||
|
-- Raw indentation
|
||||||
|
whitespace = " ",
|
||||||
|
},
|
||||||
|
|
||||||
|
lsp = {
|
||||||
|
-- Fetch document symbols when LSP diagnostics update.
|
||||||
|
-- If false, will update on buffer changes.
|
||||||
|
diagnostics_trigger_update = true,
|
||||||
|
|
||||||
|
-- Set to false to not update the symbols when there are LSP errors
|
||||||
|
update_when_errors = true,
|
||||||
|
|
||||||
|
-- How long to wait (in ms) after a buffer change before updating
|
||||||
|
-- Only used when diagnostics_trigger_update = false
|
||||||
|
update_delay = 300,
|
||||||
|
},
|
||||||
|
|
||||||
|
treesitter = {
|
||||||
|
-- How long to wait (in ms) after a buffer change before updating
|
||||||
|
update_delay = 300,
|
||||||
|
},
|
||||||
|
|
||||||
|
markdown = {
|
||||||
|
-- How long to wait (in ms) after a buffer change before updating
|
||||||
|
update_delay = 300,
|
||||||
|
},
|
||||||
|
|
||||||
|
man = {
|
||||||
|
-- How long to wait (in ms) after a buffer change before updating
|
||||||
|
update_delay = 300,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
aerial.setup(conf)
|
||||||
|
end
|
||||||
|
return M
|
||||||
20
nvim/lua/config/aerial.lua.old
Normal file
20
nvim/lua/config/aerial.lua.old
Normal file
|
|
@ -0,0 +1,20 @@
|
||||||
|
local M = {}
|
||||||
|
|
||||||
|
function M.setup()
|
||||||
|
local aerial = require("aerial")
|
||||||
|
local conf = {
|
||||||
|
backends = { "treesitter", "lsp", "markdown", "man" },
|
||||||
|
float = {
|
||||||
|
relative = "win",
|
||||||
|
override = function(conf)
|
||||||
|
local padding = 1
|
||||||
|
conf.anchor = 'NE'
|
||||||
|
conf.row = padding
|
||||||
|
conf.col = vim.api.nvim_win_get_width(0) - padding
|
||||||
|
return conf
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
aerial.setup(conf)
|
||||||
|
end
|
||||||
|
return M
|
||||||
23
nvim/lua/config/colors.lua
Normal file
23
nvim/lua/config/colors.lua
Normal file
|
|
@ -0,0 +1,23 @@
|
||||||
|
local g = vim.g
|
||||||
|
local colors = require('dracula').colors()
|
||||||
|
|
||||||
|
vim.cmd[[colorscheme dracula]]
|
||||||
|
|
||||||
|
g.rainbow_guifgs = {
|
||||||
|
colors.red,
|
||||||
|
colors.orange,
|
||||||
|
colors.yellow,
|
||||||
|
colors.green,
|
||||||
|
colors.purple,
|
||||||
|
colors.cyan,
|
||||||
|
colors.pink,
|
||||||
|
colors.bright_red,
|
||||||
|
colors.bright_green,
|
||||||
|
colors.bright_yellow,
|
||||||
|
colors.bright_blue,
|
||||||
|
colors.bright_magenta,
|
||||||
|
colors.bright_cyan
|
||||||
|
}
|
||||||
|
g.rainbow_active = 1
|
||||||
|
--vim.highlight.create('Beacon', {guibg=colors.green, guifg=colors.bg}, false)
|
||||||
|
vim.api.nvim_set_hl(0, 'Beacon', {bg=colors.green, fg=colors.bg})
|
||||||
33
nvim/lua/config/dashboard.lua
Normal file
33
nvim/lua/config/dashboard.lua
Normal file
|
|
@ -0,0 +1,33 @@
|
||||||
|
local M = {}
|
||||||
|
local home = os.getenv('HOME')
|
||||||
|
|
||||||
|
function scandir(directory)
|
||||||
|
local i, t, popen = 0, {}, io.popen
|
||||||
|
local pfile = popen('ls "'..directory..'"')
|
||||||
|
for filename in pfile:lines() do
|
||||||
|
i = i + 1
|
||||||
|
t[i] = filename
|
||||||
|
end
|
||||||
|
pfile:close()
|
||||||
|
return t
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
function M()
|
||||||
|
catTable = scandir(vim.fn.stdpath('config') .. '/static/')
|
||||||
|
math.random()
|
||||||
|
math.randomseed(os.time()+math.random())
|
||||||
|
math.random(); math.random(); math.random();
|
||||||
|
file = vim.fn.stdpath('config') .. '/static/' .. catTable[math.random(#catTable)]
|
||||||
|
local fheight = io.popen('cat '..file..' | wc -l')
|
||||||
|
local fwidth = io.popen('awk "{print length}" '..file..' | sort -nr | head -1')
|
||||||
|
local db = require 'dashboard'
|
||||||
|
db.preview_command = 'cat | lolcat -F 0.3 -p 15'
|
||||||
|
db.preview_file_path = file
|
||||||
|
db.preview_file_height = tonumber(fheight:read("*a"))
|
||||||
|
db.preview_file_width = tonumber(fwidth:read("*a"))
|
||||||
|
db.header_pad = 0
|
||||||
|
|
||||||
|
|
||||||
|
end
|
||||||
|
return M()
|
||||||
80
nvim/lua/config/dracula-vim.lua
Normal file
80
nvim/lua/config/dracula-vim.lua
Normal file
|
|
@ -0,0 +1,80 @@
|
||||||
|
local M = {}
|
||||||
|
|
||||||
|
function M.setup()
|
||||||
|
local dracula = require("dracula")
|
||||||
|
--dracula.setup({
|
||||||
|
-- customize dracula color palette
|
||||||
|
local conf = {
|
||||||
|
-- Default dracula colors
|
||||||
|
-- colors = {
|
||||||
|
-- bg = "#282A36",
|
||||||
|
-- fg = "#F8F8F2",
|
||||||
|
-- selection = "#44475A",
|
||||||
|
-- comment = "#6272A4",
|
||||||
|
-- red = "#FF5555",
|
||||||
|
-- orange = "#FFB86C",
|
||||||
|
-- yellow = "#F1FA8C",
|
||||||
|
-- green = "#50fa7b",
|
||||||
|
-- purple = "#BD93F9",
|
||||||
|
-- cyan = "#8BE9FD",
|
||||||
|
-- pink = "#FF79C6",
|
||||||
|
-- bright_red = "#FF6E6E",
|
||||||
|
-- bright_green = "#69FF94",
|
||||||
|
-- bright_yellow = "#FFFFA5",
|
||||||
|
-- bright_blue = "#D6ACFF",
|
||||||
|
-- bright_magenta = "#FF92DF",
|
||||||
|
-- bright_cyan = "#A4FFFF",
|
||||||
|
-- bright_white = "#FFFFFF",
|
||||||
|
-- menu = "#21222C",
|
||||||
|
-- visual = "#3E4452",
|
||||||
|
-- gutter_fg = "#4B5263",
|
||||||
|
-- nontext = "#3B4048",
|
||||||
|
-- },
|
||||||
|
-- Dracula PRO
|
||||||
|
colors = {
|
||||||
|
bg = "#393649",
|
||||||
|
fg = "#F8F8F2",
|
||||||
|
selection = "#454158", --prof = #454158
|
||||||
|
comment = "#6272A4", --pro = #7970A9
|
||||||
|
red = "#FF9580",
|
||||||
|
orange = "#FFCA80",
|
||||||
|
yellow = "#FFFF80",
|
||||||
|
green = "#8AFF80",
|
||||||
|
purple = "#9580FF",
|
||||||
|
cyan = "#80FFEA",
|
||||||
|
pink = "#FF80BF",
|
||||||
|
bright_red = "#FF6E6E",
|
||||||
|
bright_green = "#69FF94",
|
||||||
|
bright_yellow = "#FFFFA5",
|
||||||
|
bright_blue = "#D6ACFF",
|
||||||
|
bright_magenta = "#FF92DF",
|
||||||
|
bright_cyan = "#A4FFFF",
|
||||||
|
bright_white = "#FFFFFF",
|
||||||
|
menu = "#21222C",
|
||||||
|
visual = "#3E4452",
|
||||||
|
gutter_fg = "#4B5263",
|
||||||
|
nontext = "#3B4048",
|
||||||
|
},
|
||||||
|
-- show the '~' characters after the end of buffers
|
||||||
|
show_end_of_buffer = true, -- default false
|
||||||
|
-- use transparent background
|
||||||
|
transparent_bg = true, -- default false
|
||||||
|
-- set custom lualine background color
|
||||||
|
lualine_bg_color = "#44475a", -- default nil
|
||||||
|
-- set italic comment
|
||||||
|
italic_comment = true, -- default false
|
||||||
|
-- overrides the default highlights see `:h synIDattr`
|
||||||
|
overrides = {
|
||||||
|
-- Examples
|
||||||
|
-- NonText = { fg = dracula.colors().white }, -- set NonText fg to white
|
||||||
|
-- NvimTreeIndentMarker = { link = "NonText" }, -- link to NonText highlight
|
||||||
|
-- Nothing = {} -- clear highlight of Nothing
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
dracula.setup(conf)
|
||||||
|
|
||||||
|
end
|
||||||
|
-- to use colors in other places
|
||||||
|
-- local colors = require('dracula').colors()
|
||||||
|
return M
|
||||||
17
nvim/lua/config/lualine.lua
Normal file
17
nvim/lua/config/lualine.lua
Normal file
|
|
@ -0,0 +1,17 @@
|
||||||
|
local M = {}
|
||||||
|
|
||||||
|
function M.setup()
|
||||||
|
local lualine = require 'lualine'
|
||||||
|
|
||||||
|
local conf = {
|
||||||
|
options = {
|
||||||
|
icons_enabled = true,
|
||||||
|
theme = 'dracula-nvim',
|
||||||
|
},
|
||||||
|
sections = {
|
||||||
|
lualine_x = {"aerial"},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
lualine.setup(conf)
|
||||||
|
end
|
||||||
|
return M
|
||||||
46
nvim/lua/config/nvim-tree.lua
Normal file
46
nvim/lua/config/nvim-tree.lua
Normal file
|
|
@ -0,0 +1,46 @@
|
||||||
|
-- require("nvim-tree").setup({
|
||||||
|
-- disable_netrw = true,
|
||||||
|
-- hijack_netrw = true,
|
||||||
|
-- sort_by = "case_sensitive",
|
||||||
|
-- view = {
|
||||||
|
-- adaptive_size = true,
|
||||||
|
-- mappings = {
|
||||||
|
-- list = {
|
||||||
|
-- { key = "u", action = "dir_up" },
|
||||||
|
-- },
|
||||||
|
-- },
|
||||||
|
-- },
|
||||||
|
-- renderer = {
|
||||||
|
-- group_empty = true,
|
||||||
|
-- },
|
||||||
|
-- filters = {
|
||||||
|
-- dotfiles = false,
|
||||||
|
-- },
|
||||||
|
-- })
|
||||||
|
local M = {}
|
||||||
|
|
||||||
|
function M.setup()
|
||||||
|
local ntree = require 'nvim-tree'
|
||||||
|
|
||||||
|
local conf = {
|
||||||
|
disable_netrw = true,
|
||||||
|
hijack_netrw = true,
|
||||||
|
sort_by = "case_sensitive",
|
||||||
|
view = {
|
||||||
|
adaptive_size = true,
|
||||||
|
mappings = {
|
||||||
|
list = {
|
||||||
|
{ key = "u", action = "dir_up" },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
renderer = {
|
||||||
|
group_empty = true,
|
||||||
|
},
|
||||||
|
filters = {
|
||||||
|
dotfiles = false,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
ntree.setup(conf)
|
||||||
|
end
|
||||||
|
return M
|
||||||
61
nvim/lua/config/nvim-treesitter.lua
Normal file
61
nvim/lua/config/nvim-treesitter.lua
Normal file
|
|
@ -0,0 +1,61 @@
|
||||||
|
local M = {}
|
||||||
|
|
||||||
|
function M.setup()
|
||||||
|
local colors = require('dracula').colors()
|
||||||
|
local sitter = require("nvim-treesitter.configs")
|
||||||
|
local conf = {
|
||||||
|
ensure_installed = "all",
|
||||||
|
sync_install = false,
|
||||||
|
ignore_install = {""},
|
||||||
|
matchup = {
|
||||||
|
enable = true,
|
||||||
|
disable_virtual_text = true,
|
||||||
|
},
|
||||||
|
highlight = {
|
||||||
|
enable = true,
|
||||||
|
disable = {},
|
||||||
|
additional_vim_regex_highlighting = true,
|
||||||
|
},
|
||||||
|
autopairs = {
|
||||||
|
enable = true,
|
||||||
|
},
|
||||||
|
indent = {
|
||||||
|
enable = true,
|
||||||
|
--disable = {
|
||||||
|
--"python",
|
||||||
|
--"css"
|
||||||
|
--}
|
||||||
|
--
|
||||||
|
},
|
||||||
|
audotag = {
|
||||||
|
enable = true,
|
||||||
|
disable = {
|
||||||
|
"xml",
|
||||||
|
"markdown",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
rainbow = {
|
||||||
|
enable = true,
|
||||||
|
extended_mode = false,
|
||||||
|
colors = {
|
||||||
|
colors.red,
|
||||||
|
colors.orange,
|
||||||
|
colors.yellow,
|
||||||
|
colors.green,
|
||||||
|
colors.purple,
|
||||||
|
colors.cyan,
|
||||||
|
colors.pink,
|
||||||
|
colors.bright_red,
|
||||||
|
colors.bright_green,
|
||||||
|
colors.bright_yellow,
|
||||||
|
colors.bright_blue,
|
||||||
|
colors.bright_magenta,
|
||||||
|
colors.bright_cyan
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
sitter.setup(conf)
|
||||||
|
end
|
||||||
|
|
||||||
|
return M
|
||||||
|
|
||||||
63
nvim/lua/config/whichkey.lua
Normal file
63
nvim/lua/config/whichkey.lua
Normal file
|
|
@ -0,0 +1,63 @@
|
||||||
|
local M = {}
|
||||||
|
|
||||||
|
|
||||||
|
function M.setup()
|
||||||
|
local whichkey = require "which-key"
|
||||||
|
|
||||||
|
local conf = {
|
||||||
|
window = {
|
||||||
|
border = "single", -- none, single, double, shadow
|
||||||
|
position = "bottom", -- bottom, top
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
local opts = {
|
||||||
|
mode = "n", -- Normal mode
|
||||||
|
prefix = "<leader>",
|
||||||
|
buffer = nil, -- Global mappings. Specify a buffer number for buffer local mappings
|
||||||
|
silent = true, -- use `silent` when creating keymaps
|
||||||
|
noremap = true, -- use `noremap` when creating keymaps
|
||||||
|
nowait = false, -- use `nowait` when creating keymaps
|
||||||
|
}
|
||||||
|
|
||||||
|
local mappings = {
|
||||||
|
["w"] = { "<cmd>update!<CR>", "Save" },
|
||||||
|
["q"] = { "<cmd>q!<CR>", "Quit" },
|
||||||
|
["e"] = { "<cmd>NvimTreeToggle<CR>", "Nvim Tree"},
|
||||||
|
["a"] = { "<cmd>AerialToggle! float<CR>","Aerial Toggle"},
|
||||||
|
|
||||||
|
o = {
|
||||||
|
name = "+open",
|
||||||
|
},
|
||||||
|
|
||||||
|
b = {
|
||||||
|
name = "Buffer",
|
||||||
|
c = { "<Cmd>bd!<Cr>", "Close current buffer" },
|
||||||
|
D = { "<Cmd>%bd|e#|bd#<Cr>", "Delete all buffers" },
|
||||||
|
},
|
||||||
|
|
||||||
|
z = {
|
||||||
|
name = "Packer",
|
||||||
|
c = { "<cmd>PackerCompile<cr>", "Compile" },
|
||||||
|
i = { "<cmd>PackerInstall<cr>", "Install" },
|
||||||
|
s = { "<cmd>PackerSync<cr>", "Sync" },
|
||||||
|
S = { "<cmd>PackerStatus<cr>", "Status" },
|
||||||
|
u = { "<cmd>PackerUpdate<cr>", "Update" },
|
||||||
|
},
|
||||||
|
|
||||||
|
g = {
|
||||||
|
name = "Git",
|
||||||
|
s = { "<cmd>Neogit<CR>", "Status" },
|
||||||
|
},
|
||||||
|
|
||||||
|
v = {
|
||||||
|
name = "Visual",
|
||||||
|
r = { "<cmd>RainbowToggle<cr>", "Rainbow Brackets Toggle"},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
whichkey.setup(conf)
|
||||||
|
whichkey.register(mappings, opts)
|
||||||
|
end
|
||||||
|
|
||||||
|
return M
|
||||||
20
nvim/lua/config/winshift.lua
Normal file
20
nvim/lua/config/winshift.lua
Normal file
|
|
@ -0,0 +1,20 @@
|
||||||
|
local M = {}
|
||||||
|
|
||||||
|
function M.setup()
|
||||||
|
local winshift = require("winshift")
|
||||||
|
local conf = {
|
||||||
|
conf = {
|
||||||
|
highlight_moving_win = true, --hl window when being moved
|
||||||
|
focused_hl_group = "Visual", -- hl group for moving window
|
||||||
|
moving_win_options = {
|
||||||
|
wrap = false,
|
||||||
|
cursorline = false,
|
||||||
|
cusorcolumn = false,
|
||||||
|
colorcolumn = "",
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
winshift.setup(conf)
|
||||||
|
end
|
||||||
|
return M
|
||||||
153
nvim/lua/diag.lua
Normal file
153
nvim/lua/diag.lua
Normal file
|
|
@ -0,0 +1,153 @@
|
||||||
|
-- Echoing of LSP diagnostics in the commandline.
|
||||||
|
|
||||||
|
local M = {}
|
||||||
|
|
||||||
|
-- Location information about the last message printed. The format is
|
||||||
|
|
||||||
|
-- `(did print, buffer number, line number)`.
|
||||||
|
|
||||||
|
local last_echo = { false, -1, -1 }
|
||||||
|
|
||||||
|
-- The timer used for displaying a diagnostic in the commandline.
|
||||||
|
|
||||||
|
local echo_timer = nil
|
||||||
|
|
||||||
|
-- The timer after which to display a diagnostic in the commandline.
|
||||||
|
|
||||||
|
local echo_timeout = 250
|
||||||
|
|
||||||
|
-- The highlight group to use for warning messages.
|
||||||
|
|
||||||
|
local warning_hlgroup = 'WarningMsg'
|
||||||
|
|
||||||
|
-- The highlight group to use for error messages.
|
||||||
|
|
||||||
|
local error_hlgroup = 'ErrorMsg'
|
||||||
|
|
||||||
|
-- If the first diagnostic line has fewer than this many characters, also add
|
||||||
|
|
||||||
|
-- the second line to it.
|
||||||
|
|
||||||
|
local short_line_limit = 20
|
||||||
|
|
||||||
|
-- Shows the current line's diagnostics in a floating window.
|
||||||
|
|
||||||
|
function M.show_line_diagnostics()
|
||||||
|
|
||||||
|
vim
|
||||||
|
|
||||||
|
.lsp
|
||||||
|
|
||||||
|
.diagnostic
|
||||||
|
|
||||||
|
.show_line_diagnostics({ severity_limit = 'Warning' }, vim.fn.bufnr(''))
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Prints the first diagnostic for the current line.
|
||||||
|
|
||||||
|
function M.echo_diagnostic()
|
||||||
|
|
||||||
|
if echo_timer then
|
||||||
|
|
||||||
|
echo_timer:stop()
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
echo_timer = vim.defer_fn(
|
||||||
|
|
||||||
|
function()
|
||||||
|
|
||||||
|
local line = vim.fn.line('.') - 1
|
||||||
|
|
||||||
|
local bufnr = vim.api.nvim_win_get_buf(0)
|
||||||
|
|
||||||
|
if last_echo[1] and last_echo[2] == bufnr and last_echo[3] == line then
|
||||||
|
|
||||||
|
return
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
local diags = vim
|
||||||
|
|
||||||
|
.lsp
|
||||||
|
|
||||||
|
.diagnostic
|
||||||
|
|
||||||
|
.get_line_diagnostics(bufnf, line, { severity_limit = 'Warning' })
|
||||||
|
|
||||||
|
if #diags == 0 then
|
||||||
|
|
||||||
|
-- If we previously echo'd a message, clear it out by echoing an empty
|
||||||
|
|
||||||
|
-- message.
|
||||||
|
|
||||||
|
if last_echo[1] then
|
||||||
|
|
||||||
|
last_echo = { false, -1, -1 }
|
||||||
|
|
||||||
|
vim.api.nvim_command('echo ""')
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
return
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
last_echo = { true, bufnr, line }
|
||||||
|
|
||||||
|
local diag = diags[1]
|
||||||
|
|
||||||
|
local width = vim.api.nvim_get_option('columns') - 15
|
||||||
|
|
||||||
|
local lines = vim.split(diag.message, "\n")
|
||||||
|
|
||||||
|
local message = lines[1]
|
||||||
|
|
||||||
|
local trimmed = false
|
||||||
|
|
||||||
|
if #lines > 1 and #message <= short_line_limit then
|
||||||
|
|
||||||
|
message = message .. ' ' .. lines[2]
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
if width > 0 and #message >= width then
|
||||||
|
|
||||||
|
message = message:sub(1, width) .. '...'
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
local kind = 'warning'
|
||||||
|
|
||||||
|
local hlgroup = warning_hlgroup
|
||||||
|
|
||||||
|
if diag.severity == vim.lsp.protocol.DiagnosticSeverity.Error then
|
||||||
|
|
||||||
|
kind = 'error'
|
||||||
|
|
||||||
|
hlgroup = error_hlgroup
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
local chunks = {
|
||||||
|
|
||||||
|
{ kind .. ': ', hlgroup },
|
||||||
|
|
||||||
|
{ message }
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
vim.api.nvim_echo(chunks, false, {})
|
||||||
|
|
||||||
|
end,
|
||||||
|
|
||||||
|
echo_timeout
|
||||||
|
|
||||||
|
)
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
return M
|
||||||
|
|
||||||
|
|
||||||
22
nvim/lua/key_bindings.lua
Normal file
22
nvim/lua/key_bindings.lua
Normal file
|
|
@ -0,0 +1,22 @@
|
||||||
|
local keymap = vim.api.nvim_set_keymap
|
||||||
|
local default_opts = { noremap = true, silent = true }
|
||||||
|
local expr_opts = { noremap = true, expr = true, silent = true }
|
||||||
|
|
||||||
|
-- Better escape using jk in insert and terminal mode
|
||||||
|
keymap("i", "jk", "<ESC>", default_opts)
|
||||||
|
keymap("t", "jk", "<C-\\><C-n>", default_opts)
|
||||||
|
-- Center search results
|
||||||
|
keymap("n", "n", "nzz", default_opts)
|
||||||
|
keymap("n", "N", "Nzz", default_opts)
|
||||||
|
-- Paste over currently selected text without yanking it
|
||||||
|
keymap("v", "p", '"_dP', default_opts)
|
||||||
|
-- Cancel search highlighting with ESC
|
||||||
|
keymap("n", "<ESC>", ":nohlsearch<Bar>:echo<CR>", default_opts)
|
||||||
|
-- Move selected line / block of text in visual mode
|
||||||
|
keymap("x", "K", ":move '<-2<CR>gv-gv", default_opts)
|
||||||
|
keymap("x", "J", ":move '>+1<CR>gv-gv", default_opts)
|
||||||
|
-- Resizing panes
|
||||||
|
keymap("n", "<S-Left>", ":vertical resize +1<CR>", default_opts)
|
||||||
|
keymap("n", "<S-Right>", ":vertical resize -1<CR>", default_opts)
|
||||||
|
keymap("n", "<S-Up>", ":resize -1<CR>", default_opts)
|
||||||
|
keymap("n", "<S-Down>", ":resize +1<CR>", default_opts)
|
||||||
148
nvim/lua/plugins.lua
Normal file
148
nvim/lua/plugins.lua
Normal file
|
|
@ -0,0 +1,148 @@
|
||||||
|
local M = {}
|
||||||
|
|
||||||
|
function M.setup()
|
||||||
|
-- Indicate first time installation
|
||||||
|
local packer_bootstrap = false
|
||||||
|
-- packer.nvim configuration
|
||||||
|
--
|
||||||
|
local conf = {
|
||||||
|
display = {
|
||||||
|
open_fn = function()
|
||||||
|
return require("packer.util").float { border = "rounded" }
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
-- Check if packer.nvim is installed
|
||||||
|
-- Run PackerCompile if there are changes in this file
|
||||||
|
local function packer_init()
|
||||||
|
local fn = vim.fn
|
||||||
|
local install_path = fn.stdpath "data" .. "/site/pack/packer/start/packer.nvim"
|
||||||
|
if fn.empty(fn.glob(install_path)) > 0 then
|
||||||
|
packer_bootstrap = fn.system {
|
||||||
|
"git",
|
||||||
|
"clone",
|
||||||
|
"--depth",
|
||||||
|
"1",
|
||||||
|
"https://github.com/wbthomason/packer.nvim",
|
||||||
|
install_path,
|
||||||
|
}
|
||||||
|
vim.cmd [[packadd packer.nvim]]
|
||||||
|
end
|
||||||
|
vim.cmd "autocmd BufWritePost plugins.lua source <afile> | PackerCompile"
|
||||||
|
end
|
||||||
|
-- Plugins
|
||||||
|
local function plugins(use)
|
||||||
|
use { "wbthomason/packer.nvim" }
|
||||||
|
-- rainbow brackets
|
||||||
|
use { 'frazrepo/vim-rainbow' }
|
||||||
|
use { "p00f/nvim-ts-rainbow" }
|
||||||
|
use { "tpope/vim-surround" }
|
||||||
|
use { "danilamihailov/beacon.nvim" }
|
||||||
|
use {
|
||||||
|
'VonHeikemen/lsp-zero.nvim',
|
||||||
|
requires = {
|
||||||
|
-- LSP Support
|
||||||
|
{'neovim/nvim-lspconfig'},
|
||||||
|
{'williamboman/mason.nvim'},
|
||||||
|
{'williamboman/mason-lspconfig.nvim'},
|
||||||
|
|
||||||
|
-- Autocompletion
|
||||||
|
{'hrsh7th/nvim-cmp'},
|
||||||
|
{'hrsh7th/cmp-buffer'},
|
||||||
|
{'hrsh7th/cmp-path'},
|
||||||
|
{'saadparwaiz1/cmp_luasnip'},
|
||||||
|
{'hrsh7th/cmp-nvim-lsp'},
|
||||||
|
{'hrsh7th/cmp-nvim-lua'},
|
||||||
|
|
||||||
|
-- Snippets
|
||||||
|
{'L3MON4D3/LuaSnip'},
|
||||||
|
{'rafamadriz/friendly-snippets'},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
use {
|
||||||
|
'nvim-treesitter/nvim-treesitter',
|
||||||
|
run = function()
|
||||||
|
require('nvim-treesitter.install').update({ with_sync = true })
|
||||||
|
end,
|
||||||
|
config = function()
|
||||||
|
require('config.nvim-treesitter').setup()
|
||||||
|
end,
|
||||||
|
}
|
||||||
|
use {
|
||||||
|
'stevearc/aerial.nvim',
|
||||||
|
}
|
||||||
|
use {
|
||||||
|
'sindrets/winshift.nvim',
|
||||||
|
config = function()
|
||||||
|
require('config.winshift').setup()
|
||||||
|
end,
|
||||||
|
}
|
||||||
|
-- Better icons
|
||||||
|
use {
|
||||||
|
"kyazdani42/nvim-web-devicons",
|
||||||
|
module = "nvim-web-devicons",
|
||||||
|
config = function()
|
||||||
|
require("nvim-web-devicons").setup { default = true }
|
||||||
|
end,
|
||||||
|
}
|
||||||
|
-- dracula-vim
|
||||||
|
use {
|
||||||
|
'Mofiqul/dracula.nvim',
|
||||||
|
config = function()
|
||||||
|
require('config.dracula-vim').setup()
|
||||||
|
end,
|
||||||
|
}
|
||||||
|
-- nvim-tree
|
||||||
|
use {
|
||||||
|
'kyazdani42/nvim-tree.lua',
|
||||||
|
config = function()
|
||||||
|
require('config.nvim-tree').setup()
|
||||||
|
end,
|
||||||
|
}
|
||||||
|
|
||||||
|
-- lua-line
|
||||||
|
use {
|
||||||
|
'nvim-lualine/lualine.nvim',
|
||||||
|
config = function()
|
||||||
|
require("config.lualine").setup()
|
||||||
|
end,
|
||||||
|
}
|
||||||
|
|
||||||
|
-- WhichKey
|
||||||
|
use {
|
||||||
|
"folke/which-key.nvim",
|
||||||
|
config = function()
|
||||||
|
require("config.whichkey").setup()
|
||||||
|
end,
|
||||||
|
}
|
||||||
|
|
||||||
|
--dashboard-nvim
|
||||||
|
use {
|
||||||
|
'glepnir/dashboard-nvim',
|
||||||
|
config = function()
|
||||||
|
require("config.dashboard")
|
||||||
|
end,
|
||||||
|
}
|
||||||
|
-- Bootstrap Neovim
|
||||||
|
if packer_bootstrap then
|
||||||
|
print "Restart Neovim required after installation!"
|
||||||
|
require("packer").sync()
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
packer_init()
|
||||||
|
|
||||||
|
local packer = require "packer"
|
||||||
|
packer.init(conf)
|
||||||
|
packer.startup(plugins)
|
||||||
|
local lsp = require('lsp-zero')
|
||||||
|
lsp.preset('recommended')
|
||||||
|
lsp.nvim_workspace()
|
||||||
|
lsp.setup{
|
||||||
|
on_attach = require("aerial").on_attach,
|
||||||
|
}
|
||||||
|
end
|
||||||
|
|
||||||
|
return M.setup()
|
||||||
290
nvim/plugin/packer_compiled.lua
Normal file
290
nvim/plugin/packer_compiled.lua
Normal file
|
|
@ -0,0 +1,290 @@
|
||||||
|
-- Automatically generated packer.nvim plugin loader code
|
||||||
|
|
||||||
|
if vim.api.nvim_call_function('has', {'nvim-0.5'}) ~= 1 then
|
||||||
|
vim.api.nvim_command('echohl WarningMsg | echom "Invalid Neovim version for packer.nvim! | echohl None"')
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
vim.api.nvim_command('packadd packer.nvim')
|
||||||
|
|
||||||
|
local no_errors, error_msg = pcall(function()
|
||||||
|
|
||||||
|
_G._packer = _G._packer or {}
|
||||||
|
_G._packer.inside_compile = true
|
||||||
|
|
||||||
|
local time
|
||||||
|
local profile_info
|
||||||
|
local should_profile = false
|
||||||
|
if should_profile then
|
||||||
|
local hrtime = vim.loop.hrtime
|
||||||
|
profile_info = {}
|
||||||
|
time = function(chunk, start)
|
||||||
|
if start then
|
||||||
|
profile_info[chunk] = hrtime()
|
||||||
|
else
|
||||||
|
profile_info[chunk] = (hrtime() - profile_info[chunk]) / 1e6
|
||||||
|
end
|
||||||
|
end
|
||||||
|
else
|
||||||
|
time = function(chunk, start) end
|
||||||
|
end
|
||||||
|
|
||||||
|
local function save_profiles(threshold)
|
||||||
|
local sorted_times = {}
|
||||||
|
for chunk_name, time_taken in pairs(profile_info) do
|
||||||
|
sorted_times[#sorted_times + 1] = {chunk_name, time_taken}
|
||||||
|
end
|
||||||
|
table.sort(sorted_times, function(a, b) return a[2] > b[2] end)
|
||||||
|
local results = {}
|
||||||
|
for i, elem in ipairs(sorted_times) do
|
||||||
|
if not threshold or threshold and elem[2] > threshold then
|
||||||
|
results[i] = elem[1] .. ' took ' .. elem[2] .. 'ms'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
if threshold then
|
||||||
|
table.insert(results, '(Only showing plugins that took longer than ' .. threshold .. ' ms ' .. 'to load)')
|
||||||
|
end
|
||||||
|
|
||||||
|
_G._packer.profile_output = results
|
||||||
|
end
|
||||||
|
|
||||||
|
time([[Luarocks path setup]], true)
|
||||||
|
local package_path_str = "/home/mr0xb/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?.lua;/home/mr0xb/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?/init.lua;/home/mr0xb/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?.lua;/home/mr0xb/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?/init.lua"
|
||||||
|
local install_cpath_pattern = "/home/mr0xb/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/lua/5.1/?.so"
|
||||||
|
if not string.find(package.path, package_path_str, 1, true) then
|
||||||
|
package.path = package.path .. ';' .. package_path_str
|
||||||
|
end
|
||||||
|
|
||||||
|
if not string.find(package.cpath, install_cpath_pattern, 1, true) then
|
||||||
|
package.cpath = package.cpath .. ';' .. install_cpath_pattern
|
||||||
|
end
|
||||||
|
|
||||||
|
time([[Luarocks path setup]], false)
|
||||||
|
time([[try_loadstring definition]], true)
|
||||||
|
local function try_loadstring(s, component, name)
|
||||||
|
local success, result = pcall(loadstring(s), name, _G.packer_plugins[name])
|
||||||
|
if not success then
|
||||||
|
vim.schedule(function()
|
||||||
|
vim.api.nvim_notify('packer.nvim: Error running ' .. component .. ' for ' .. name .. ': ' .. result, vim.log.levels.ERROR, {})
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
return result
|
||||||
|
end
|
||||||
|
|
||||||
|
time([[try_loadstring definition]], false)
|
||||||
|
time([[Defining packer_plugins]], true)
|
||||||
|
_G.packer_plugins = {
|
||||||
|
LuaSnip = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/mr0xb/.local/share/nvim/site/pack/packer/start/LuaSnip",
|
||||||
|
url = "https://github.com/L3MON4D3/LuaSnip"
|
||||||
|
},
|
||||||
|
["aerial.nvim"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/mr0xb/.local/share/nvim/site/pack/packer/start/aerial.nvim",
|
||||||
|
url = "https://github.com/stevearc/aerial.nvim"
|
||||||
|
},
|
||||||
|
["beacon.nvim"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/mr0xb/.local/share/nvim/site/pack/packer/start/beacon.nvim",
|
||||||
|
url = "https://github.com/danilamihailov/beacon.nvim"
|
||||||
|
},
|
||||||
|
["cmp-buffer"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/mr0xb/.local/share/nvim/site/pack/packer/start/cmp-buffer",
|
||||||
|
url = "https://github.com/hrsh7th/cmp-buffer"
|
||||||
|
},
|
||||||
|
["cmp-nvim-lsp"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/mr0xb/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp",
|
||||||
|
url = "https://github.com/hrsh7th/cmp-nvim-lsp"
|
||||||
|
},
|
||||||
|
["cmp-nvim-lua"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/mr0xb/.local/share/nvim/site/pack/packer/start/cmp-nvim-lua",
|
||||||
|
url = "https://github.com/hrsh7th/cmp-nvim-lua"
|
||||||
|
},
|
||||||
|
["cmp-path"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/mr0xb/.local/share/nvim/site/pack/packer/start/cmp-path",
|
||||||
|
url = "https://github.com/hrsh7th/cmp-path"
|
||||||
|
},
|
||||||
|
cmp_luasnip = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/mr0xb/.local/share/nvim/site/pack/packer/start/cmp_luasnip",
|
||||||
|
url = "https://github.com/saadparwaiz1/cmp_luasnip"
|
||||||
|
},
|
||||||
|
["dashboard-nvim"] = {
|
||||||
|
config = { "\27LJ\2\n0\0\0\3\0\2\0\0046\0\0\0'\2\1\0B\0\2\1K\0\1\0\21config.dashboard\frequire\0" },
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/mr0xb/.local/share/nvim/site/pack/packer/start/dashboard-nvim",
|
||||||
|
url = "https://github.com/glepnir/dashboard-nvim"
|
||||||
|
},
|
||||||
|
["dracula.nvim"] = {
|
||||||
|
config = { "\27LJ\2\n@\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\23config.dracula-vim\frequire\0" },
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/mr0xb/.local/share/nvim/site/pack/packer/start/dracula.nvim",
|
||||||
|
url = "https://github.com/Mofiqul/dracula.nvim"
|
||||||
|
},
|
||||||
|
["friendly-snippets"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/mr0xb/.local/share/nvim/site/pack/packer/start/friendly-snippets",
|
||||||
|
url = "https://github.com/rafamadriz/friendly-snippets"
|
||||||
|
},
|
||||||
|
["lsp-zero.nvim"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/mr0xb/.local/share/nvim/site/pack/packer/start/lsp-zero.nvim",
|
||||||
|
url = "https://github.com/VonHeikemen/lsp-zero.nvim"
|
||||||
|
},
|
||||||
|
["lualine.nvim"] = {
|
||||||
|
config = { "\27LJ\2\n<\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\19config.lualine\frequire\0" },
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/mr0xb/.local/share/nvim/site/pack/packer/start/lualine.nvim",
|
||||||
|
url = "https://github.com/nvim-lualine/lualine.nvim"
|
||||||
|
},
|
||||||
|
["mason-lspconfig.nvim"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/mr0xb/.local/share/nvim/site/pack/packer/start/mason-lspconfig.nvim",
|
||||||
|
url = "https://github.com/williamboman/mason-lspconfig.nvim"
|
||||||
|
},
|
||||||
|
["mason.nvim"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/mr0xb/.local/share/nvim/site/pack/packer/start/mason.nvim",
|
||||||
|
url = "https://github.com/williamboman/mason.nvim"
|
||||||
|
},
|
||||||
|
["nvim-cmp"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/mr0xb/.local/share/nvim/site/pack/packer/start/nvim-cmp",
|
||||||
|
url = "https://github.com/hrsh7th/nvim-cmp"
|
||||||
|
},
|
||||||
|
["nvim-lspconfig"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/mr0xb/.local/share/nvim/site/pack/packer/start/nvim-lspconfig",
|
||||||
|
url = "https://github.com/neovim/nvim-lspconfig"
|
||||||
|
},
|
||||||
|
["nvim-tree.lua"] = {
|
||||||
|
config = { "\27LJ\2\n>\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\21config.nvim-tree\frequire\0" },
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/mr0xb/.local/share/nvim/site/pack/packer/start/nvim-tree.lua",
|
||||||
|
url = "https://github.com/kyazdani42/nvim-tree.lua"
|
||||||
|
},
|
||||||
|
["nvim-treesitter"] = {
|
||||||
|
config = { "\27LJ\2\nD\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\27config.nvim-treesitter\frequire\0" },
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/mr0xb/.local/share/nvim/site/pack/packer/start/nvim-treesitter",
|
||||||
|
url = "https://github.com/nvim-treesitter/nvim-treesitter"
|
||||||
|
},
|
||||||
|
["nvim-ts-rainbow"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/mr0xb/.local/share/nvim/site/pack/packer/start/nvim-ts-rainbow",
|
||||||
|
url = "https://github.com/p00f/nvim-ts-rainbow"
|
||||||
|
},
|
||||||
|
["nvim-web-devicons"] = {
|
||||||
|
config = { "\27LJ\2\nO\0\0\3\0\4\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\3\0B\0\2\1K\0\1\0\1\0\1\fdefault\2\nsetup\22nvim-web-devicons\frequire\0" },
|
||||||
|
loaded = false,
|
||||||
|
needs_bufread = false,
|
||||||
|
only_cond = false,
|
||||||
|
path = "/home/mr0xb/.local/share/nvim/site/pack/packer/opt/nvim-web-devicons",
|
||||||
|
url = "https://github.com/kyazdani42/nvim-web-devicons"
|
||||||
|
},
|
||||||
|
["packer.nvim"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/mr0xb/.local/share/nvim/site/pack/packer/start/packer.nvim",
|
||||||
|
url = "https://github.com/wbthomason/packer.nvim"
|
||||||
|
},
|
||||||
|
["vim-rainbow"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/mr0xb/.local/share/nvim/site/pack/packer/start/vim-rainbow",
|
||||||
|
url = "https://github.com/frazrepo/vim-rainbow"
|
||||||
|
},
|
||||||
|
["vim-surround"] = {
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/mr0xb/.local/share/nvim/site/pack/packer/start/vim-surround",
|
||||||
|
url = "https://github.com/tpope/vim-surround"
|
||||||
|
},
|
||||||
|
["which-key.nvim"] = {
|
||||||
|
config = { "\27LJ\2\n=\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\20config.whichkey\frequire\0" },
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/mr0xb/.local/share/nvim/site/pack/packer/start/which-key.nvim",
|
||||||
|
url = "https://github.com/folke/which-key.nvim"
|
||||||
|
},
|
||||||
|
["winshift.nvim"] = {
|
||||||
|
config = { "\27LJ\2\n=\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\20config.winshift\frequire\0" },
|
||||||
|
loaded = true,
|
||||||
|
path = "/home/mr0xb/.local/share/nvim/site/pack/packer/start/winshift.nvim",
|
||||||
|
url = "https://github.com/sindrets/winshift.nvim"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
time([[Defining packer_plugins]], false)
|
||||||
|
local module_lazy_loads = {
|
||||||
|
["^nvim%-web%-devicons"] = "nvim-web-devicons"
|
||||||
|
}
|
||||||
|
local lazy_load_called = {['packer.load'] = true}
|
||||||
|
local function lazy_load_module(module_name)
|
||||||
|
local to_load = {}
|
||||||
|
if lazy_load_called[module_name] then return nil end
|
||||||
|
lazy_load_called[module_name] = true
|
||||||
|
for module_pat, plugin_name in pairs(module_lazy_loads) do
|
||||||
|
if not _G.packer_plugins[plugin_name].loaded and string.match(module_name, module_pat) then
|
||||||
|
to_load[#to_load + 1] = plugin_name
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
if #to_load > 0 then
|
||||||
|
require('packer.load')(to_load, {module = module_name}, _G.packer_plugins)
|
||||||
|
local loaded_mod = package.loaded[module_name]
|
||||||
|
if loaded_mod then
|
||||||
|
return function(modname) return loaded_mod end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
if not vim.g.packer_custom_loader_enabled then
|
||||||
|
table.insert(package.loaders, 1, lazy_load_module)
|
||||||
|
vim.g.packer_custom_loader_enabled = true
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Config for: winshift.nvim
|
||||||
|
time([[Config for winshift.nvim]], true)
|
||||||
|
try_loadstring("\27LJ\2\n=\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\20config.winshift\frequire\0", "config", "winshift.nvim")
|
||||||
|
time([[Config for winshift.nvim]], false)
|
||||||
|
-- Config for: lualine.nvim
|
||||||
|
time([[Config for lualine.nvim]], true)
|
||||||
|
try_loadstring("\27LJ\2\n<\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\19config.lualine\frequire\0", "config", "lualine.nvim")
|
||||||
|
time([[Config for lualine.nvim]], false)
|
||||||
|
-- Config for: dashboard-nvim
|
||||||
|
time([[Config for dashboard-nvim]], true)
|
||||||
|
try_loadstring("\27LJ\2\n0\0\0\3\0\2\0\0046\0\0\0'\2\1\0B\0\2\1K\0\1\0\21config.dashboard\frequire\0", "config", "dashboard-nvim")
|
||||||
|
time([[Config for dashboard-nvim]], false)
|
||||||
|
-- Config for: which-key.nvim
|
||||||
|
time([[Config for which-key.nvim]], true)
|
||||||
|
try_loadstring("\27LJ\2\n=\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\20config.whichkey\frequire\0", "config", "which-key.nvim")
|
||||||
|
time([[Config for which-key.nvim]], false)
|
||||||
|
-- Config for: nvim-treesitter
|
||||||
|
time([[Config for nvim-treesitter]], true)
|
||||||
|
try_loadstring("\27LJ\2\nD\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\27config.nvim-treesitter\frequire\0", "config", "nvim-treesitter")
|
||||||
|
time([[Config for nvim-treesitter]], false)
|
||||||
|
-- Config for: nvim-tree.lua
|
||||||
|
time([[Config for nvim-tree.lua]], true)
|
||||||
|
try_loadstring("\27LJ\2\n>\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\21config.nvim-tree\frequire\0", "config", "nvim-tree.lua")
|
||||||
|
time([[Config for nvim-tree.lua]], false)
|
||||||
|
-- Config for: dracula.nvim
|
||||||
|
time([[Config for dracula.nvim]], true)
|
||||||
|
try_loadstring("\27LJ\2\n@\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\23config.dracula-vim\frequire\0", "config", "dracula.nvim")
|
||||||
|
time([[Config for dracula.nvim]], false)
|
||||||
|
|
||||||
|
_G._packer.inside_compile = false
|
||||||
|
if _G._packer.needs_bufread == true then
|
||||||
|
vim.cmd("doautocmd BufRead")
|
||||||
|
end
|
||||||
|
_G._packer.needs_bufread = false
|
||||||
|
|
||||||
|
if should_profile then save_profiles() end
|
||||||
|
|
||||||
|
end)
|
||||||
|
|
||||||
|
if not no_errors then
|
||||||
|
error_msg = error_msg:gsub('"', '\\"')
|
||||||
|
vim.api.nvim_command('echohl ErrorMsg | echom "Error in packer_compiled: '..error_msg..'" | echom "Please check your config for correctness" | echohl None')
|
||||||
|
end
|
||||||
26
nvim/static/apple.cat
Normal file
26
nvim/static/apple.cat
Normal file
|
|
@ -0,0 +1,26 @@
|
||||||
|
.8
|
||||||
|
.888
|
||||||
|
.8888'
|
||||||
|
.8888'
|
||||||
|
888'
|
||||||
|
8'
|
||||||
|
.88888888888. .88888888888.
|
||||||
|
.8888888888888888888888888888888.
|
||||||
|
.8888888888888888888888888888888888.
|
||||||
|
.&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&'
|
||||||
|
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&'
|
||||||
|
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&'
|
||||||
|
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:
|
||||||
|
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:
|
||||||
|
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:
|
||||||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%.
|
||||||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%.
|
||||||
|
`%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%.
|
||||||
|
`00000000000000000000000000000000000'
|
||||||
|
`000000000000000000000000000000000'
|
||||||
|
`0000000000000000000000000000000'
|
||||||
|
`###########################'
|
||||||
|
jgs `#######################'
|
||||||
|
`#########''########'
|
||||||
|
`""""""' `"""""'
|
||||||
|
|
||||||
31
nvim/static/htp2.cat
Normal file
31
nvim/static/htp2.cat
Normal file
|
|
@ -0,0 +1,31 @@
|
||||||
|
|
||||||
|
_ood>H&H&Z?#M#b-\.
|
||||||
|
.\HMMMMMR?`\M6b."`' ''``v.
|
||||||
|
.. .MMMMMMMMMMHMMM#&. ``~o.
|
||||||
|
. ,HMMMMMMMMMM`' ' ?MP?.
|
||||||
|
. |MMMMMMMMMMM' `"$b&\
|
||||||
|
- |MMMMHH##M' HMMH?
|
||||||
|
- TTM| >.. \HMMMMH
|
||||||
|
: |MM\,#-""$~b\. `MMMMMM+
|
||||||
|
. ``"H&# - &MMMMMM|
|
||||||
|
: *\v,#MHddc. `9MMMMMb
|
||||||
|
. MMMMMMMM##\ `"":HM
|
||||||
|
- . .HMMMMMMMMMMRo_. |M
|
||||||
|
: |MMMMMMMMMMMMMMMM#\ :M
|
||||||
|
- `HMMMMMMMMMMMMMM' |T
|
||||||
|
: `*HMMMMMMMMMMM' H'
|
||||||
|
: MMMMMMMMMMM| |T
|
||||||
|
; MMMMMMMM?' ./
|
||||||
|
` MMMMMMH' ./'
|
||||||
|
- |MMMH#' .
|
||||||
|
` `MM* . `
|
||||||
|
_ #M: . . .-'
|
||||||
|
. ., .-'
|
||||||
|
'-.-~ooHH__,,v~--`'
|
||||||
|
|
||||||
|
__ __ __ __ __ ____ __ __
|
||||||
|
/ / / /___ ______/ /__ / /_/ /_ ___ / __ \/ /___ _____ ___ / /_
|
||||||
|
/ /_/ / __ `/ ___/ //_/ / __/ __ \/ _ \ / /_/ / / __ `/ __ \/ _ \/ __/
|
||||||
|
/ __ / /_/ / /__/ ,< / /_/ / / / __/ / ____/ / /_/ / / / / __/ /_
|
||||||
|
/_/ /_/\__,_/\___/_/|_| \__/_/ /_/\___/ /_/ /_/\__,_/_/ /_/\___/\__/
|
||||||
|
|
||||||
10
nvim/static/invaders.cat
Normal file
10
nvim/static/invaders.cat
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
____
|
||||||
|
/___/\_ __
|
||||||
|
_\ \/_/\__ _| |_
|
||||||
|
__\ \/_/\ _| |_
|
||||||
|
\ __ __ \ \ | _ _ |
|
||||||
|
__\ \_\ \_\ \ \ __ | |_| |_| |
|
||||||
|
/_/\\ __ __ \ \_/_/\ _ | _ _ | _
|
||||||
|
\_\/_\__\/\__\/\__\/_\_\/ |_|_|_| |__| |_|_|_|
|
||||||
|
\_\/_/\ /_\_\/ |_|_ _|_|
|
||||||
|
\_\/ \_\/ |_| |_|
|
||||||
26
nvim/static/quake.cat
Normal file
26
nvim/static/quake.cat
Normal file
|
|
@ -0,0 +1,26 @@
|
||||||
|
_______________________________________
|
||||||
|
|\ ___________________________________ /|
|
||||||
|
| | _ _ | |
|
||||||
|
| |(+) _ _ (+)| |
|
||||||
|
| | ~ _--/ \--_ ~ | |
|
||||||
|
| | / / \ \ | |
|
||||||
|
| | / | | \ | |
|
||||||
|
| | / | | \ | |
|
||||||
|
| | | | _______ | | | |
|
||||||
|
| | | | \ / | | | |
|
||||||
|
| | \ \_ | | _/ / | |
|
||||||
|
| | \ -__| |__- / | |
|
||||||
|
| | \_ _/ | |
|
||||||
|
| | --__ __-- | |
|
||||||
|
| | --| |-- | |
|
||||||
|
| | | | | |
|
||||||
|
| | | | | |
|
||||||
|
| | | | |
|
||||||
|
| | | |
|
||||||
|
| | I S G O O D F O R Y O U | |
|
||||||
|
| | _ _ | |
|
||||||
|
| |(+) (+)| |
|
||||||
|
| | ~ ~ | |
|
||||||
|
|/ ----------------------------------- \|
|
||||||
|
---------------------------------------
|
||||||
|
|
||||||
19
nvim/static/tux.cat
Normal file
19
nvim/static/tux.cat
Normal file
|
|
@ -0,0 +1,19 @@
|
||||||
|
.-"""-.
|
||||||
|
' \
|
||||||
|
|,. ,-. |
|
||||||
|
|()L( ()| |
|
||||||
|
|,' `".| |
|
||||||
|
|.___.',| `
|
||||||
|
.j `--"' ` `.
|
||||||
|
/ ' ' \
|
||||||
|
/ / ` `.
|
||||||
|
/ / ` .
|
||||||
|
/ / l |
|
||||||
|
. , | |
|
||||||
|
,"`. .| |
|
||||||
|
_.' ``. | `..-'l
|
||||||
|
| `.`, | `.
|
||||||
|
| `. __.j )
|
||||||
|
|__ |--""___| ,-'
|
||||||
|
`"--...,+"""" `._,.-' mh
|
||||||
|
|
||||||
22
nvim/static/y2k.cat
Normal file
22
nvim/static/y2k.cat
Normal file
|
|
@ -0,0 +1,22 @@
|
||||||
|
/'. /| .'\
|
||||||
|
,._ |+i\ /++\ / +| ,,
|
||||||
|
|*+'._/+++\/+ ++\/+++<_.-'+|
|
||||||
|
:-. \ ++++?++ +++++*++++++ +++ / .-:
|
||||||
|
|*+\_/++++ +++*++ ++++++ ++?++++\_/ +|
|
||||||
|
, \*+++++ ++++ +++*+++ ++++ +++ +++++/ ,
|
||||||
|
\'-._> +__+*++__*+++_+__*++ ++__++++__*<_.-'/
|
||||||
|
`>*+++| \++/ |+*/ `\ +| |++/ |++++<'
|
||||||
|
_,-'+ * +*\ \/ /++|__.-. |+ | |+/ /+ +*+'-._
|
||||||
|
'-.*+++++++\ /+ ++++++/ / *| |/ /+ ++++++.-'
|
||||||
|
> *+++++\ /*++++ +/` /`+++| < *++ +++<
|
||||||
|
_,-'* +++ ++| |++ +*/` /` +* +| |\ \+ ++++++'-._
|
||||||
|
`-._+ +*++?+| |+++*| '-----.+| |+\ \+* ++ +_.-'
|
||||||
|
_`\++++++|__|+ *+|________|+|__|++\__|++++/`_
|
||||||
|
/*++_+* + +++++ ++ + ++++ +++++ ++ ++++ ++_+*+\
|
||||||
|
'--' `>*+++ +++++ +++++*++++ +++ ++++ ?<' '--'
|
||||||
|
/++_++ ++ ++++++ ++?+ +++++*+++ ++++ \
|
||||||
|
|_/ `\++ ++ +++*++++++++++ ++++*./`\_|
|
||||||
|
/+*.-.*+ +_ ++*+ _+++ .-.* +\
|
||||||
|
jgs | / | +/ `\?+/` \*+| \ |
|
||||||
|
' \.' |/ './ '
|
||||||
|
|
||||||
11
sxhkd.service
Normal file
11
sxhkd.service
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
[Unit]
|
||||||
|
Description=Simple X Hotkey Daemon
|
||||||
|
Documentation=man:sxhkd(1)
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
ExecStartPre=/usr/bin/sleep 2
|
||||||
|
ExecStart=/usr/bin/sxhkd -m 1
|
||||||
|
ExecReload=/usr/bin/kill -SIGUSR1 $MAINPID
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=default.target
|
||||||
6
sxhkd/sxhkdrc
Normal file
6
sxhkd/sxhkdrc
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
#alacritty
|
||||||
|
alt + z
|
||||||
|
tdrop -n top --width 100% --height 65% --post-map-hook 'wmctrl -r "Alacritty - Drop Down - Top" -b add,above,sticky' alacritty --title 'Alacritty - Drop Down - Top'
|
||||||
|
|
||||||
|
super + shift + Return
|
||||||
|
tdrop -n top --width 100% --height 65% --post-map-hook 'wmctrl -r "Alacritty - Drop Down - Top" -b add,above,sticky' alacritty --title 'Alacritty - Drop Down - Top'
|
||||||
276
zellij/config.kdl
Normal file
276
zellij/config.kdl
Normal file
|
|
@ -0,0 +1,276 @@
|
||||||
|
// If you'd like to override the default keybindings completely, be sure to change "keybinds" to "keybinds clear-defaults=true"
|
||||||
|
keybinds {
|
||||||
|
normal {
|
||||||
|
// uncomment this and adjust key if using copy_on_select=false
|
||||||
|
// bind "Alt c" { Copy; }
|
||||||
|
}
|
||||||
|
locked {
|
||||||
|
bind "Ctrl g" { SwitchToMode "Normal"; }
|
||||||
|
}
|
||||||
|
resize {
|
||||||
|
bind "Ctrl n" { SwitchToMode "Normal"; }
|
||||||
|
bind "h" "Left" { Resize "Left"; }
|
||||||
|
bind "j" "Down" { Resize "Down"; }
|
||||||
|
bind "k" "Up" { Resize "Up"; }
|
||||||
|
bind "l" "Right" { Resize "Right"; }
|
||||||
|
bind "=" "+" { Resize "Increase"; }
|
||||||
|
bind "-" { Resize "Decrease"; }
|
||||||
|
}
|
||||||
|
pane {
|
||||||
|
bind "Ctrl p" { SwitchToMode "Normal"; }
|
||||||
|
bind "h" "Left" { MoveFocus "Left"; }
|
||||||
|
bind "l" "Right" { MoveFocus "Right"; }
|
||||||
|
bind "j" "Down" { MoveFocus "Down"; }
|
||||||
|
bind "k" "Up" { MoveFocus "Up"; }
|
||||||
|
bind "p" { SwitchFocus; }
|
||||||
|
bind "n" { NewPane; SwitchToMode "Normal"; }
|
||||||
|
bind "d" { NewPane "Down"; SwitchToMode "Normal"; }
|
||||||
|
bind "r" { NewPane "Right"; SwitchToMode "Normal"; }
|
||||||
|
bind "x" { CloseFocus; SwitchToMode "Normal"; }
|
||||||
|
bind "f" { ToggleFocusFullscreen; SwitchToMode "Normal"; }
|
||||||
|
bind "z" { TogglePaneFrames; SwitchToMode "Normal"; }
|
||||||
|
bind "w" { ToggleFloatingPanes; SwitchToMode "Normal"; }
|
||||||
|
bind "e" { TogglePaneEmbedOrFloating; SwitchToMode "Normal"; }
|
||||||
|
bind "c" { SwitchToMode "RenamePane"; PaneNameInput 0;}
|
||||||
|
}
|
||||||
|
move {
|
||||||
|
bind "Ctrl h" { SwitchToMode "Normal"; }
|
||||||
|
bind "n" "Tab" { MovePane; }
|
||||||
|
bind "h" "Left" { MovePane "Left"; }
|
||||||
|
bind "j" "Down" { MovePane "Down"; }
|
||||||
|
bind "k" "Up" { MovePane "Up"; }
|
||||||
|
bind "l" "Right" { MovePane "Right"; }
|
||||||
|
}
|
||||||
|
tab {
|
||||||
|
bind "Ctrl t" { SwitchToMode "Normal"; }
|
||||||
|
bind "r" { SwitchToMode "RenameTab"; TabNameInput 0; }
|
||||||
|
bind "h" "Left" "Up" "k" { GoToPreviousTab; }
|
||||||
|
bind "l" "Right" "Down" "j" { GoToNextTab; }
|
||||||
|
bind "n" { NewTab; SwitchToMode "Normal"; }
|
||||||
|
bind "x" { CloseTab; SwitchToMode "Normal"; }
|
||||||
|
bind "s" { ToggleActiveSyncTab; SwitchToMode "Normal"; }
|
||||||
|
bind "1" { GoToTab 1; SwitchToMode "Normal"; }
|
||||||
|
bind "2" { GoToTab 2; SwitchToMode "Normal"; }
|
||||||
|
bind "3" { GoToTab 3; SwitchToMode "Normal"; }
|
||||||
|
bind "4" { GoToTab 4; SwitchToMode "Normal"; }
|
||||||
|
bind "5" { GoToTab 5; SwitchToMode "Normal"; }
|
||||||
|
bind "6" { GoToTab 6; SwitchToMode "Normal"; }
|
||||||
|
bind "7" { GoToTab 7; SwitchToMode "Normal"; }
|
||||||
|
bind "8" { GoToTab 8; SwitchToMode "Normal"; }
|
||||||
|
bind "9" { GoToTab 9; SwitchToMode "Normal"; }
|
||||||
|
bind "Tab" { ToggleTab; }
|
||||||
|
}
|
||||||
|
scroll {
|
||||||
|
bind "Ctrl s" { SwitchToMode "Normal"; }
|
||||||
|
bind "e" { EditScrollback; SwitchToMode "Normal"; }
|
||||||
|
bind "s" { SwitchToMode "EnterSearch"; SearchInput 0; }
|
||||||
|
bind "Ctrl c" { ScrollToBottom; SwitchToMode "Normal"; }
|
||||||
|
bind "j" "Down" { ScrollDown; }
|
||||||
|
bind "k" "Up" { ScrollUp; }
|
||||||
|
bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
|
||||||
|
bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
|
||||||
|
bind "d" { HalfPageScrollDown; }
|
||||||
|
bind "u" { HalfPageScrollUp; }
|
||||||
|
// uncomment this and adjust key if using copy_on_select=false
|
||||||
|
// bind "Alt c" { Copy; }
|
||||||
|
}
|
||||||
|
search {
|
||||||
|
bind "Ctrl s" { SwitchToMode "Normal"; }
|
||||||
|
bind "Ctrl c" { ScrollToBottom; SwitchToMode "Normal"; }
|
||||||
|
bind "j" "Down" { ScrollDown; }
|
||||||
|
bind "k" "Up" { ScrollUp; }
|
||||||
|
bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
|
||||||
|
bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
|
||||||
|
bind "d" { HalfPageScrollDown; }
|
||||||
|
bind "u" { HalfPageScrollUp; }
|
||||||
|
bind "n" { Search "down"; }
|
||||||
|
bind "p" { Search "up"; }
|
||||||
|
bind "c" { SearchToggleOption "CaseSensitivity"; }
|
||||||
|
bind "w" { SearchToggleOption "Wrap"; }
|
||||||
|
bind "o" { SearchToggleOption "WholeWord"; }
|
||||||
|
}
|
||||||
|
entersearch {
|
||||||
|
bind "Ctrl c" "Esc" { SwitchToMode "Scroll"; }
|
||||||
|
bind "Enter" { SwitchToMode "Search"; }
|
||||||
|
}
|
||||||
|
renametab {
|
||||||
|
bind "Ctrl c" { SwitchToMode "Normal"; }
|
||||||
|
bind "Esc" { UndoRenameTab; SwitchToMode "Tab"; }
|
||||||
|
}
|
||||||
|
renamepane {
|
||||||
|
bind "Ctrl c" { SwitchToMode "Normal"; }
|
||||||
|
bind "Esc" { UndoRenamePane; SwitchToMode "Pane"; }
|
||||||
|
}
|
||||||
|
session {
|
||||||
|
bind "Ctrl o" { SwitchToMode "Normal"; }
|
||||||
|
bind "Ctrl s" { SwitchToMode "Scroll"; }
|
||||||
|
bind "d" { Detach; }
|
||||||
|
}
|
||||||
|
tmux {
|
||||||
|
bind "[" { SwitchToMode "Scroll"; }
|
||||||
|
bind "Ctrl b" { Write 2; SwitchToMode "Normal"; }
|
||||||
|
bind "\"" { NewPane "Down"; SwitchToMode "Normal"; }
|
||||||
|
bind "%" { NewPane "Right"; SwitchToMode "Normal"; }
|
||||||
|
bind "z" { ToggleFocusFullscreen; SwitchToMode "Normal"; }
|
||||||
|
bind "c" { NewTab; SwitchToMode "Normal"; }
|
||||||
|
bind "," { SwitchToMode "RenameTab"; }
|
||||||
|
bind "p" { GoToPreviousTab; SwitchToMode "Normal"; }
|
||||||
|
bind "n" { GoToNextTab; SwitchToMode "Normal"; }
|
||||||
|
bind "Left" { MoveFocus "Left"; SwitchToMode "Normal"; }
|
||||||
|
bind "Right" { MoveFocus "Right"; SwitchToMode "Normal"; }
|
||||||
|
bind "Down" { MoveFocus "Down"; SwitchToMode "Normal"; }
|
||||||
|
bind "Up" { MoveFocus "Up"; SwitchToMode "Normal"; }
|
||||||
|
bind "h" { MoveFocus "Left"; SwitchToMode "Normal"; }
|
||||||
|
bind "l" { MoveFocus "Right"; SwitchToMode "Normal"; }
|
||||||
|
bind "j" { MoveFocus "Down"; SwitchToMode "Normal"; }
|
||||||
|
bind "k" { MoveFocus "Up"; SwitchToMode "Normal"; }
|
||||||
|
bind "o" { FocusNextPane; }
|
||||||
|
bind "d" { Detach; }
|
||||||
|
}
|
||||||
|
shared_except "locked" {
|
||||||
|
bind "Ctrl g" { SwitchToMode "Locked"; }
|
||||||
|
bind "Ctrl q" { Quit; }
|
||||||
|
bind "Alt n" { NewPane; }
|
||||||
|
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
|
||||||
|
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
|
||||||
|
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
|
||||||
|
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
|
||||||
|
bind "Alt =" "Alt +" { Resize "Increase"; }
|
||||||
|
bind "Alt -" { Resize "Decrease"; }
|
||||||
|
}
|
||||||
|
shared_except "normal" "locked" {
|
||||||
|
bind "Enter" "Esc" { SwitchToMode "Normal"; }
|
||||||
|
}
|
||||||
|
shared_except "pane" "locked" {
|
||||||
|
bind "Ctrl p" { SwitchToMode "Pane"; }
|
||||||
|
}
|
||||||
|
shared_except "resize" "locked" {
|
||||||
|
bind "Ctrl n" { SwitchToMode "Resize"; }
|
||||||
|
}
|
||||||
|
shared_except "scroll" "locked" {
|
||||||
|
bind "Ctrl s" { SwitchToMode "Scroll"; }
|
||||||
|
}
|
||||||
|
shared_except "session" "locked" {
|
||||||
|
bind "Ctrl o" { SwitchToMode "Session"; }
|
||||||
|
}
|
||||||
|
shared_except "tab" "locked" {
|
||||||
|
bind "Ctrl t" { SwitchToMode "Tab"; }
|
||||||
|
}
|
||||||
|
shared_except "move" "locked" {
|
||||||
|
bind "Ctrl h" { SwitchToMode "Move"; }
|
||||||
|
}
|
||||||
|
shared_except "tmux" "locked" {
|
||||||
|
bind "Ctrl b" { SwitchToMode "Tmux"; }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
plugins {
|
||||||
|
tab-bar { path "tab-bar"; }
|
||||||
|
status-bar { path "status-bar"; }
|
||||||
|
strider { path "strider"; }
|
||||||
|
compact-bar { path "compact-bar"; }
|
||||||
|
}
|
||||||
|
|
||||||
|
// Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP
|
||||||
|
// eg. when terminal window with an active zellij session is closed
|
||||||
|
// Options:
|
||||||
|
// - detach (Default)
|
||||||
|
// - quit
|
||||||
|
//
|
||||||
|
// on_force_close "quit"
|
||||||
|
|
||||||
|
// Send a request for a simplified ui (without arrow fonts) to plugins
|
||||||
|
// Options:
|
||||||
|
// - true
|
||||||
|
// - false (Default)
|
||||||
|
//
|
||||||
|
// simplified_ui true
|
||||||
|
|
||||||
|
// Choose the path to the default shell that zellij will use for opening new panes
|
||||||
|
// Default: $SHELL
|
||||||
|
//
|
||||||
|
// default_shell "fish"
|
||||||
|
|
||||||
|
// Toggle between having pane frames around the panes
|
||||||
|
// Options:
|
||||||
|
// - true (default)
|
||||||
|
// - false
|
||||||
|
//
|
||||||
|
// pane_frames true
|
||||||
|
|
||||||
|
// Define color themes for Zellij
|
||||||
|
// For more examples, see: https://github.com/zellij-org/zellij/tree/main/example/themes
|
||||||
|
// Once these themes are defined, one of them should to be selected in the "theme" section of this file
|
||||||
|
//
|
||||||
|
themes {
|
||||||
|
dracula {
|
||||||
|
fg 248 248 242
|
||||||
|
bg 40 42 54
|
||||||
|
red 255 85 85
|
||||||
|
green 80 250 123
|
||||||
|
yellow 241 250 140
|
||||||
|
blue 98 114 164
|
||||||
|
magenta 255 121 198
|
||||||
|
orange 255 184 108
|
||||||
|
cyan 139 233 253
|
||||||
|
black 0 0 0
|
||||||
|
white 255 255 255
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Choose the theme that is specified in the themes section.
|
||||||
|
// Default: default
|
||||||
|
//
|
||||||
|
theme "dracula"
|
||||||
|
|
||||||
|
// The name of the default layout to load on startup
|
||||||
|
// Default: "default"
|
||||||
|
//
|
||||||
|
// default_layout "compact"
|
||||||
|
|
||||||
|
// Choose the mode that zellij uses when starting up.
|
||||||
|
// Default: normal
|
||||||
|
//
|
||||||
|
// default_mode "locked"
|
||||||
|
|
||||||
|
// Toggle enabling the mouse mode.
|
||||||
|
// On certain configurations, or terminals this could
|
||||||
|
// potentially interfere with copying text.
|
||||||
|
mouse_mode true
|
||||||
|
scroll_buffer_size 20000
|
||||||
|
|
||||||
|
copy_command "xclip -selection clipboard" // x11
|
||||||
|
// copy_command "wl-copy" // wayland
|
||||||
|
// copy_command "pbcopy" // osx
|
||||||
|
|
||||||
|
// Choose the destination for copied text
|
||||||
|
// Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard.
|
||||||
|
// Does not apply when using copy_command.
|
||||||
|
// Options:
|
||||||
|
// - system (default)
|
||||||
|
// - primary
|
||||||
|
//
|
||||||
|
// copy_clipboard "primary"
|
||||||
|
|
||||||
|
// Enable or disable automatic copy (and clear) of selection when releasing mouse
|
||||||
|
// Default: true
|
||||||
|
//
|
||||||
|
// copy_on_select false
|
||||||
|
copy_on_select true
|
||||||
|
// Path to the default editor to use to edit pane scrollbuffer
|
||||||
|
// Default: $EDITOR or $VISUAL
|
||||||
|
//
|
||||||
|
// scrollback_editor "/usr/bin/vim"
|
||||||
|
|
||||||
|
// When attaching to an existing session with other users,
|
||||||
|
// should the session be mirrored (true)
|
||||||
|
// or should each user have their own cursor (false)
|
||||||
|
// Default: false
|
||||||
|
//
|
||||||
|
// mirror_session true
|
||||||
|
|
||||||
|
// The folder in which Zellij will look for layouts
|
||||||
|
//
|
||||||
|
// layout_dir "/path/to/my/layout_dir"
|
||||||
|
|
||||||
|
theme_dir "/home/mr0xb/.config/zellij_cfg/themes"
|
||||||
Loading…
Reference in a new issue