aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.config/alacritty.toml40
-rw-r--r--.config/nvim/colors/mine.lua91
-rw-r--r--.config/nvim/colors/mine.vim63
-rw-r--r--.config/nvim/colors/prismatic.vim225
-rw-r--r--.config/nvim/colors/some_vscode.vim61
-rw-r--r--.config/nvim/ftplugin/cs.vim3
-rw-r--r--.config/nvim/init.lua96
-rw-r--r--.config/nvim/lua/map.lua36
-rw-r--r--.config/nvim/lua/opt.lua27
-rw-r--r--.config/nvim/lua/plugin/init.lua3
-rw-r--r--.config/nvim/lua/plugin/lsp.lua81
-rw-r--r--.config/nvim/lua/plugin/packer.lua18
-rw-r--r--.config/nvim/lua/plugin/setup.lua12
-rwxr-xr-xdmenu_dt12
-rw-r--r--dwm_config.h2
-rwxr-xr-xdwm_status.sh9
-rw-r--r--st_config.h477
-rw-r--r--update.sh14
18 files changed, 243 insertions, 1027 deletions
diff --git a/.config/alacritty.toml b/.config/alacritty.toml
new file mode 100644
index 0000000..b099eff
--- /dev/null
+++ b/.config/alacritty.toml
@@ -0,0 +1,40 @@
+[window]
+dynamic_padding = true
+opacity = 1
+
+[font]
+normal = {family="Maple Mono NF", style="Regular"}
+bold = {family="Maple Mono NF", style="Bold"}
+italic = {family="Maple Mono NF", style="Italic"}
+bold_italic = {family="Maple Mono NF", style="Bold Italic"}
+offset.x = 0
+offset.y = 0
+size = 13.5
+
+[colors]
+draw_bold_text_with_bright_colors = true
+
+[colors.primary]
+foreground = "#FFFFFF"
+background = "#1A191C"
+
+[colors.normal]
+black = "#333333"
+red = "#990911"
+green = "#099911"
+yellow = "#CC9900"
+blue = "#5511CC"
+magenta = "#990966"
+cyan = "#0077AA"
+white = "#999999"
+
+[colors.bright]
+black = "#666666"
+red = "#ff2222"
+green = "#22ff44"
+yellow = "#ffff00"
+blue = "#8833FF"
+magenta = "#ff4499"
+cyan = "#22ccff"
+white = "#FFFFFF"
+
diff --git a/.config/nvim/colors/mine.lua b/.config/nvim/colors/mine.lua
new file mode 100644
index 0000000..e88d74b
--- /dev/null
+++ b/.config/nvim/colors/mine.lua
@@ -0,0 +1,91 @@
+---@diagnostic disable: undefined-global
+
+vim.cmd("hi clear")
+
+vim.g.colors_name = "mine"
+vim.g.background = "dark"
+
+local colors = {
+ ["Terminal"] = {link="Normal"},
+ ["TermCursor"] = {link="Cursor"},
+ ["TermCursorNC"] = {link="Cursor"},
+ ["CurSearch"] = {link="Search"},
+ ["CursorLineFold"] = {link="CursorLine"},
+ ["CursorLineSign"] = {link="CursorLine"},
+ ["MessageWindow"] = {link="Pmenu"},
+ ["PopupNotification"] = {link="Todo"},
+ ["Character"] = {link="String"},
+ ["FloatBorder"] = {link="NormalFloat"},
+ ["NormalFloat"] = {link="Normal"},
+
+ ["ModeMsg"] = {fg="#FF88CC", bold=true},
+ ["StatusLine"] = {fg="#000000", bg="#AA66DD"},
+ ["StatusLineNC"] = {fg="#FFFFFF"},
+ ["ColorColumn"] = {bg="#333333"},
+ ["WinSeparator"] = {fg="#222222"},
+ ["CursorLine"] = {bg="#222222"},
+ ["EndOfBuffer"] = {fg="#222222"},
+ ["LineNr"] = {fg="#CCCCCC"},
+ ["LineNrAbove"] = {fg="#888888"},
+ ["LineNrBelow"] = {fg="#888888"},
+ ["MatchParen"] = {fg="#EE66AA", bold=true},
+ ["Normal"] = {fg="#AAAAAA", bg="#1A191C"},
+ ["Pmenu"] = {fg="#FFFFFF", bg="#333333"},
+ ["PmenuSel"] = {fg="#333333", bg="#FFFFFF", bold=true},
+ ["Search"] = {fg="#333333", bg="#FFFF88", bold=true},
+ ["Visual"] = {bg="#333333"},
+
+ ["Comment"] = {fg="#777777", italic=true},
+
+ ["Constant"] = {fg="#44FF99"},
+ ["Number"] = {fg="#44FF99"},
+ ["String"] = {fg="#FFFF00"},
+ ["Boolean"] = {fg="#44FF99"},
+
+ ["Identifier"] = {fg="#FFFFFF"},
+ ["Function"] = {fg="#5599EE"},
+ ["Statement"] = {fg="#FF4499"},
+ ["Label"] = {fg="#FF9944"},
+
+ ["Operator"] = {fg="#AAAABB"},
+
+ ["PreProc"] = {fg="#FF4499"},
+ ["Typedef"] = {fg="#997FFF"},
+ ["Type"] = {fg="#997FFF"},
+
+ ["StorageClass"] = {fg="#4499FF"},
+ ["Structure"] = {fg="#4499FF"},
+
+ ["Special"] = {fg="#CCCCDD"},
+ ["SpecialChar"] = {fg="#FFFFFF", bold=true},
+
+ ["Error"] = {fg="#FF4444", bold=true, undercurl=true},
+ ["Todo"] = {fg="#FFFFFF", bold=true, undercurl=true},
+ ["Added"] = {fg="#44FF44"},
+ ["Changed"] = {fg="#FFFF44"},
+ ["Removed"] = {fg="#FF4444"},
+
+ ["@constant.builtin"] = {link="Constant"},
+ ["@type.builtin"] = {link="Type"},
+ ["@function.builtin"] = {link="Function"},
+ ["@attribute.builtin"] = {link="@attribute"},
+
+ ["@keyword.repeat"] = {fg="#DD66FF"},
+ ["@keyword.conditional"] = {fg="#FF66DD"},
+
+ ["@variable"] = {fg="#CCCCCC"},
+ ["@variable.parameter.builtin"] = {link="@variable.builtin"},
+ ["@variable.parameter"] = {fg="#CCCCCC", italic=true},
+ ["@variable.builtin"] = {fg="#DD66FF", italic=true},
+ ["@variable.member"] = {fg="#9999FF"},
+
+ ["@lsp.type.variable"] = {fg="none"},
+ ["@lsp.type.parameter"] = {link="@variable.parameter"},
+ ["@lsp.type.enumMember"] = {link="Constant"},
+ ["@lsp.typemod.variable.static"] = {link="@lsp.typemod.variable.global"},
+ ["@lsp.typemod.variable.global"] = {fg="#FFDD66"},
+}
+
+for k, v in pairs(colors) do
+ vim.api.nvim_set_hl(0, k, v)
+end
diff --git a/.config/nvim/colors/mine.vim b/.config/nvim/colors/mine.vim
deleted file mode 100644
index d7d57b2..0000000
--- a/.config/nvim/colors/mine.vim
+++ /dev/null
@@ -1,63 +0,0 @@
-set background=dark
-
-hi clear
-let g:colors_name = "mine"
-
-hi! link FloatBorder Normal
-hi! link NormalFloat Normal
-hi! link Terminal Normal
-hi! link TermCursor Cursor
-hi! link TermCursorNC Cursor
-hi! link CurSearch Search
-hi! link CursorLineFold CursorLine
-hi! link CursorLineSign CursorLine
-hi! link MessageWindow Pmenu
-hi! link PopupNotification Todo
-hi! link Character String
-
-hi ColorColumn guifg=#333333 guibg=#333333 gui=NONE
-hi WinSeparator guifg=#222222 guibg=NONE gui=NONE
-hi CursorLine guifg=NONE guibg=NONE gui=NONE
-hi EndOfBuffer guifg=#222222 guibg=NONE gui=NONE
-hi SignColumn guifg=NONE guibg=NONE gui=NONE
-hi LineNr guifg=#666666 guibg=NONE gui=NONE
-hi LineNrAbove guifg=#888888 guibg=NONE gui=NONE
-hi LineNrBelow guifg=#888888 guibg=NONE gui=NONE
-hi MatchParen guifg=#FFFFFF guibg=#FF0000 gui=bold
-hi Normal guifg=#AAAAAA guibg=#1A191C gui=NONE
-hi Pmenu guifg=#FFFFFF guibg=#333333 gui=NONE
-hi PmenuSel guifg=#333333 guibg=#FFFFFF gui=bold,underdouble
-hi Search guifg=#333333 guibg=#FFFF88 gui=bold
-hi Visual guifg=NONE guibg=#333333 gui=NONE
-
-hi Comment guifg=#777777 guibg=NONE gui=NONE
-
-hi Constant guifg=#44FF99 guibg=NONE gui=NONE
-hi Number guifg=#44FF99 guibg=NONE gui=NONE
-hi String guifg=#FFFF00 guibg=NONE gui=NONE
-hi Boolean guifg=#44FF99 guibg=NONE gui=NONE
-
-hi Identifier guifg=#FFFFFF guibg=NONE gui=NONE
-hi Function guifg=#FF4499 guibg=NONE gui=NONE
-
-hi Statement guifg=#FF9944 guibg=NONE gui=NONE
-hi Label guifg=#FF9944 guibg=NONE gui=NONE
-hi Operator guifg=#AAAABB guibg=NONE gui=NONE
-
-hi PreProc guifg=#FF4499 guibg=NONE gui=NONE
-
-hi Typedef guifg=#997FFF guibg=NONE gui=NONE
-hi Type guifg=#997FFF guibg=NONE gui=NONE
-hi StorageClass guifg=#4499FF guibg=NONE gui=NONE
-hi Structure guifg=#4499FF guibg=NONE gui=bold
-
-hi Special guifg=#CCCCDD guibg=NONE gui=NONE
-hi SpecialChar guifg=#ffffff guibg=NONE gui=bold
-
-hi Error guifg=#ff4444 guibg=NONE gui=bold,undercurl
-
-hi Todo guifg=#ffffff guibg=NONE gui=bold,underline
-
-hi Added guifg=#44FF44 guibg=NONE gui=NONE
-hi Changed guifg=#FFFF44 guibg=NONE gui=NONE
-hi Removed guifg=#FF4444 guibg=NONE gui=NONE
diff --git a/.config/nvim/colors/prismatic.vim b/.config/nvim/colors/prismatic.vim
deleted file mode 100644
index a6fe2e3..0000000
--- a/.config/nvim/colors/prismatic.vim
+++ /dev/null
@@ -1,225 +0,0 @@
-" ==============================================================================
-" Name: One Half Dark
-" Author: Son A. Pham <[email protected]>
-" Url: https://github.com/sonph/onehalf
-" License: The MIT License (MIT)
-"
-" A dark vim color scheme based on Atom's One. See github.com/sonph/onehalf
-" for installation instructions, a light color scheme, versions for other
-" editors/terminals, and a matching theme for vim-airline.
-" ==============================================================================
-
-set background=dark
-highlight clear
-syntax reset
-
-let g:colors_name="onehalfdark"
-let colors_name="onehalfdark"
-
-
-let s:black = { "gui": "#242424", "cterm": "236" }
-let s:red = { "gui": "#FF5370", "cterm": "168" }
-let s:green = { "gui": "#12C359", "cterm": "114" }
-let s:yellow = { "gui": "#FAC863", "cterm": "180" }
-let s:blue = { "gui": "#10BAF1", "cterm": "75" }
-let s:purple = { "gui": "#EF71D5", "cterm": "176" }
-let s:cyan = { "gui": "#56b6c2", "cterm": "73" }
-let s:white = { "gui": "#C7C7C7", "cterm": "188" }
-let s:pink = { "gui": "#C071EF", "cterm": "176" }
-
-let s:fg = s:white
-let s:bg = s:black
-
-let s:comment_fg = { "gui": "#65737E", "cterm": "241" }
-let s:gutter_bg = { "gui": "#242424", "cterm": "236" }
-let s:gutter_fg = { "gui": "#514d4d", "cterm": "237" }
-let s:non_text = { "gui": "#373C45", "cterm": "239" }
-
-let s:cursor_line = { "gui": "#403c3c", "cterm": "237" }
-let s:color_col = { "gui": "#403c3c", "cterm": "237" }
-
-let s:selection = { "gui": "#403c3c", "cterm": "239" }
-let s:vertsplit = { "gui": "#403c3c", "cterm": "237" }
-
-
-function! s:h(group, fg, bg, attr)
- if type(a:fg) == type({})
- exec "hi " . a:group . " guifg=" . a:fg.gui . " ctermfg=" . a:fg.cterm
- else
- exec "hi " . a:group . " guifg=NONE cterm=NONE"
- endif
- if type(a:bg) == type({})
- exec "hi " . a:group . " guibg=" . a:bg.gui . " ctermbg=" . a:bg.cterm
- else
- exec "hi " . a:group . " guibg=NONE ctermbg=NONE"
- endif
- if a:attr != ""
- exec "hi " . a:group . " gui=" . a:attr . " cterm=" . a:attr
- else
- exec "hi " . a:group . " gui=NONE cterm=NONE"
- endif
-endfun
-
-
-" User interface colors {
-call s:h("Normal", s:fg, s:bg, "")
-
-call s:h("Cursor", s:bg, s:blue, "")
-call s:h("CursorColumn", "", s:cursor_line, "")
-call s:h("CursorLine", "", s:cursor_line, "")
-
-call s:h("LineNr", s:gutter_fg, s:gutter_bg, "")
-call s:h("CursorLineNr", s:fg, "", "")
-
-call s:h("DiffAdd", s:green, "", "")
-call s:h("DiffChange", s:yellow, "", "")
-call s:h("DiffDelete", s:red, "", "")
-call s:h("DiffText", s:blue, "", "")
-
-call s:h("IncSearch", s:bg, s:yellow, "")
-call s:h("Search", s:bg, s:yellow, "")
-
-call s:h("ErrorMsg", s:fg, "", "")
-call s:h("ModeMsg", s:fg, "", "")
-call s:h("MoreMsg", s:fg, "", "")
-call s:h("WarningMsg", s:red, "", "")
-call s:h("Question", s:purple, "", "")
-
-call s:h("Pmenu", s:fg, s:bg, "")
-call s:h("PmenuSel", s:bg, s:fg, "")
-call s:h("PmenuSbar", "", s:selection, "")
-call s:h("PmenuThumb", "", s:fg, "")
-
-call s:h("SpellBad", s:red, "", "")
-call s:h("SpellCap", s:yellow, "", "")
-call s:h("SpellLocal", s:yellow, "", "")
-call s:h("SpellRare", s:yellow, "", "")
-
-call s:h("StatusLine", s:white, s:cursor_line, "")
-call s:h("StatusLineNC", s:white, s:bg, "")
-call s:h("TabLine", s:comment_fg, s:cursor_line, "")
-call s:h("TabLineFill", s:comment_fg, s:cursor_line, "")
-call s:h("TabLineSel", s:fg, s:bg, "")
-
-call s:h("Visual", "", s:selection, "")
-call s:h("VisualNOS", "", s:selection, "")
-
-call s:h("ColorColumn", "", s:color_col, "")
-call s:h("Conceal", s:fg, "", "")
-call s:h("Directory", s:blue, "", "")
-call s:h("VertSplit", s:vertsplit, s:vertsplit, "")
-call s:h("Folded", s:fg, "", "")
-call s:h("FoldColumn", s:fg, "", "")
-call s:h("SignColumn", s:fg, "", "")
-
-call s:h("MatchParen", s:blue, "", "underline")
-call s:h("SpecialKey", s:fg, "", "")
-call s:h("Title", s:green, "", "")
-call s:h("WildMenu", s:fg, "", "")
-" }
-
-
-" Syntax colors {
-" Whitespace is defined in Neovim, not Vim.
-" See :help hl-Whitespace and :help hl-SpecialKey
-call s:h("Whitespace", s:non_text, "", "")
-call s:h("NonText", s:non_text, "", "")
-call s:h("Comment", s:comment_fg, "", "italic")
-call s:h("Constant", s:cyan, "", "")
-call s:h("String", s:yellow, "", "")
-call s:h("Character", s:yellow, "", "")
-call s:h("Number", s:pink, "", "")
-call s:h("Boolean", s:red, "", "")
-call s:h("Float", s:pink, "", "")
-
-call s:h("Identifier", s:red, "", "")
-call s:h("Function", s:blue, "", "")
-call s:h("Statement", s:purple, "", "")
-
-call s:h("Conditional", s:purple, "", "")
-call s:h("Repeat", s:purple, "", "")
-call s:h("Label", s:purple, "", "")
-call s:h("Operator", s:fg, "", "")
-call s:h("Keyword", s:red, "", "")
-call s:h("Exception", s:purple, "", "")
-
-call s:h("PreProc", s:green, "", "")
-call s:h("Include", s:purple, "", "")
-call s:h("Define", s:purple, "", "")
-call s:h("Macro", s:purple, "", "")
-call s:h("PreCondit", s:green, "", "")
-
-call s:h("Type", s:red, "", "")
-call s:h("StorageClass", s:green, "", "")
-call s:h("Structure", s:green, "", "")
-call s:h("Typedef", s:green, "", "")
-
-call s:h("Special", s:blue, "", "")
-call s:h("SpecialChar", s:fg, "", "")
-call s:h("Tag", s:fg, "", "")
-call s:h("Delimiter", s:fg, "", "")
-call s:h("SpecialComment", s:fg, "", "")
-call s:h("Debug", s:fg, "", "")
-call s:h("Underlined", s:fg, "", "")
-call s:h("Ignore", s:fg, "", "")
-call s:h("Error", s:red, s:gutter_bg, "")
-call s:h("Todo", s:purple, "", "")
-" }
-
-
-" Plugins {
-" GitGutter
-call s:h("GitGutterAdd", s:green, s:gutter_bg, "")
-call s:h("GitGutterDelete", s:red, s:gutter_bg, "")
-call s:h("GitGutterChange", s:yellow, s:gutter_bg, "")
-call s:h("GitGutterChangeDelete", s:red, s:gutter_bg, "")
-" Fugitive
-call s:h("diffAdded", s:green, "", "")
-call s:h("diffRemoved", s:red, "", "")
-" }
-
-
-" Git {
-call s:h("gitcommitComment", s:comment_fg, "", "")
-call s:h("gitcommitUnmerged", s:red, "", "")
-call s:h("gitcommitOnBranch", s:fg, "", "")
-call s:h("gitcommitBranch", s:purple, "", "")
-call s:h("gitcommitDiscardedType", s:red, "", "")
-call s:h("gitcommitSelectedType", s:green, "", "")
-call s:h("gitcommitHeader", s:fg, "", "")
-call s:h("gitcommitUntrackedFile", s:cyan, "", "")
-call s:h("gitcommitDiscardedFile", s:red, "", "")
-call s:h("gitcommitSelectedFile", s:green, "", "")
-call s:h("gitcommitUnmergedFile", s:yellow, "", "")
-call s:h("gitcommitFile", s:fg, "", "")
-hi link gitcommitNoBranch gitcommitBranch
-hi link gitcommitUntracked gitcommitComment
-hi link gitcommitDiscarded gitcommitComment
-hi link gitcommitSelected gitcommitComment
-hi link gitcommitDiscardedArrow gitcommitDiscardedFile
-hi link gitcommitSelectedArrow gitcommitSelectedFile
-hi link gitcommitUnmergedArrow gitcommitUnmergedFile
-" }
-
-" Fix colors in neovim terminal buffers {
- if has('nvim')
- let g:terminal_color_0 = s:black.gui
- let g:terminal_color_1 = s:red.gui
- let g:terminal_color_2 = s:green.gui
- let g:terminal_color_3 = s:yellow.gui
- let g:terminal_color_4 = s:blue.gui
- let g:terminal_color_5 = s:purple.gui
- let g:terminal_color_6 = s:cyan.gui
- let g:terminal_color_7 = s:white.gui
- let g:terminal_color_8 = s:black.gui
- let g:terminal_color_9 = s:red.gui
- let g:terminal_color_10 = s:green.gui
- let g:terminal_color_11 = s:yellow.gui
- let g:terminal_color_12 = s:blue.gui
- let g:terminal_color_13 = s:purple.gui
- let g:terminal_color_14 = s:cyan.gui
- let g:terminal_color_15 = s:white.gui
- let g:terminal_color_background = s:bg.gui
- let g:terminal_color_foreground = s:fg.gui
- endif
-" }
diff --git a/.config/nvim/colors/some_vscode.vim b/.config/nvim/colors/some_vscode.vim
deleted file mode 100644
index 05fe46e..0000000
--- a/.config/nvim/colors/some_vscode.vim
+++ /dev/null
@@ -1,61 +0,0 @@
-set background=dark
-
-hi clear
-let g:colors_name = "mine"
-
-hi! link Terminal Normal
-hi! link TermCursor Cursor
-hi! link TermCursorNC Cursor
-hi! link CurSearch Search
-hi! link CursorLineFold CursorLine
-hi! link CursorLineSign CursorLine
-hi! link MessageWindow Pmenu
-hi! link PopupNotification Todo
-hi! link Character String
-
-hi ColorColumn guifg=#333333 guibg=#333333 gui=NONE
-hi WinSeparator guifg=#222222 guibg=NONE gui=NONE
-hi CursorLine guifg=NONE guibg=NONE gui=NONE
-hi EndOfBuffer guifg=#222222 guibg=NONE gui=NONE
-hi SignColumn guifg=NONE guibg=NONE gui=NONE
-hi LineNr guifg=#666666 guibg=NONE gui=NONE
-hi LineNrAbove guifg=#888888 guibg=NONE gui=NONE
-hi LineNrBelow guifg=#888888 guibg=NONE gui=NONE
-hi MatchParen guifg=#FFFFFF guibg=#FF0000 gui=bold
-hi Normal guifg=#f8f8f0 guibg=#16171d gui=NONE
-hi Pmenu guifg=#FFFFFF guibg=#333333 gui=NONE
-hi PmenuSel guifg=#333333 guibg=#FFFFFF gui=bold,underdouble
-hi Search guifg=#333333 guibg=#FFFF88 gui=bold,italic
-hi Visual guifg=NONE guibg=#333333 gui=NONE
-
-hi Comment guifg=#777777 guibg=NONE gui=italic
-
-hi Constant guifg=#81f900 guibg=NONE gui=NONE
-hi Number guifg=#e373ce guibg=NONE gui=NONE
-hi String guifg=#ffca2e guibg=NONE gui=NONE
-hi Boolean guifg=#e373ce guibg=NONE gui=italic
-
-hi Identifier guifg=#FFFFFF guibg=NONE gui=NONE
-hi Function guifg=#81f900 guibg=NONE gui=NONE
-
-hi Statement guifg=#ff3f3a guibg=NONE gui=NONE
-hi Label guifg=#ff3f3a guibg=NONE gui=NONE
-hi Operator guifg=#ff3f3a guibg=NONE gui=NONE
-
-hi PreProc guifg=#81f900 guibg=NONE gui=NONE
-
-hi Typedef guifg=#00a0e4 guibg=NONE gui=italic
-hi Type guifg=#00a0e4 guibg=NONE gui=italic
-hi StorageClass guifg=#ff3f3a guibg=NONE gui=italic
-hi Structure guifg=#19d1e5 guibg=NONE gui=bold,italic
-
-hi Special guifg=#CCCCDD guibg=NONE gui=NONE
-hi SpecialChar guifg=#e373ce guibg=NONE gui=NONE
-
-hi Error guifg=#ff4444 guibg=NONE gui=bold,undercurl
-
-hi Todo guifg=#ffffff guibg=NONE gui=bold,italic,underline
-
-hi Added guifg=#44FF44 guibg=NONE gui=NONE
-hi Changed guifg=#FFFF44 guibg=NONE gui=NONE
-hi Removed guifg=#FF4444 guibg=NONE gui=NONE
diff --git a/.config/nvim/ftplugin/cs.vim b/.config/nvim/ftplugin/cs.vim
deleted file mode 100644
index 2dc3520..0000000
--- a/.config/nvim/ftplugin/cs.vim
+++ /dev/null
@@ -1,3 +0,0 @@
-set tabstop=4
-set shiftwidth=4
-set expandtab
diff --git a/.config/nvim/init.lua b/.config/nvim/init.lua
index 7d4a97f..e993929 100644
--- a/.config/nvim/init.lua
+++ b/.config/nvim/init.lua
@@ -1,3 +1,93 @@
-require("opt")
-require("map")
-require("plugin")
+---@diagnostic disable: undefined-global
+
+vim.o.termguicolors = true
+vim.o.relativenumber = true
+vim.o.number = true
+vim.o.cursorline = true
+vim.o.cursorlineopt = "line"
+vim.o.cc = "80"
+vim.o.swapfile = false
+vim.o.splitright = true
+vim.o.splitbelow = true
+vim.o.winborder = "bold"
+vim.o.signcolumn = "yes"
+vim.o.guicursor =
+ "n-v:block,i:ver25,r:hor100,i-r:blinkon100,i-r:blinkoff100,n-v:blinkon0"
+
+local tabwidth = 2
+vim.o.tabstop = tabwidth
+vim.o.softtabstop = tabwidth
+vim.o.shiftwidth = tabwidth
+vim.o.expandtab = true
+
+require("packer").startup(function(use)
+ use {"wbthomason/packer.nvim"}
+ use {"ibhagwan/fzf-lua"}
+ use {"stevearc/oil.nvim"}
+ use {"lewis6991/gitsigns.nvim"}
+ use {"williamboman/mason.nvim"}
+ use {"neovim/nvim-lspconfig"}
+ use {"nvim-treesitter/nvim-treesitter"}
+end)
+
+require("gitsigns").setup({})
+require("mason").setup({})
+require("oil").setup({})
+require("fzf-lua").setup(require("fzf-lua.profiles.telescope"))
+require("nvim-treesitter.configs").setup({
+ ensure_installed = {"lua", "c"},
+ highlight = {enable = true}
+})
+
+vim.cmd.colorscheme("mine")
+
+vim.g.mapleader = " "
+-- $ is actually so incredibly annoying and I hate it so much ugh
+vim.keymap.set({"n", "v", "o"}, "+", "$", {})
+vim.keymap.set({"n", "v"}, "<leader>s", ":noh<CR>", {silent=true})
+vim.keymap.set("n", "<leader>e", ":Oil<CR>", {})
+vim.keymap.set("n", "<C-o>", function() FzfLua.files({}) end, {})
+vim.keymap.set("n", "<C-f>", function() FzfLua.grep() end, {})
+
+local function scroll(cmd)
+ return function()
+ return math.floor(vim.fn.winheight(0) / 4) .. cmd
+ end
+end
+vim.keymap.set("n", "<C-d>", scroll("<C-e>"), {expr=true, noremap=true})
+vim.keymap.set("n", "<C-u>", scroll("<C-y>"), {expr=true, noremap=true})
+
+require("lspconfig").lua_ls.setup {
+ settings = {
+ Lua = {
+ runtime = {
+ version = "LuaJIT"
+ },
+ ["diagnostics.disable"] = {
+ "lowercase-global",
+ }
+ }
+ }
+}
+
+vim.lsp.enable({"lua_ls", "clangd"})
+vim.api.nvim_create_autocmd("LspAttach", {
+ callback = function(ev)
+ local client = vim.lsp.get_client_by_id(ev.data.client_id)
+
+ -- trigger autocomplete on every keystroke
+ local chars = {}
+ for i = 32, 126 do
+ table.insert(chars, string.char(i))
+ end
+ client.server_capabilities.completionProvider.triggerCharacters = chars
+
+ if client:supports_method("textDocument/completion") then
+ vim.lsp.completion.enable(true, client.id, ev.buf, {autotrigger = true})
+ end
+ end,
+})
+vim.cmd("set completeopt+=menu,menuone,noinsert")
+vim.diagnostic.config({virtual_text = true})
+
+
diff --git a/.config/nvim/lua/map.lua b/.config/nvim/lua/map.lua
deleted file mode 100644
index b52ad22..0000000
--- a/.config/nvim/lua/map.lua
+++ /dev/null
@@ -1,36 +0,0 @@
-vim.g.mapleader = " "
-
-local nv = {"n", "v"}
-
-vim.keymap.set(nv, "gm", "gM", {})
-vim.keymap.set(nv, "gM", "gMi", {})
-
--- Make exiting insert mode in terminal mode easier
-vim.keymap.set("t", "<ESC>", "<C-\\><C-n>", {})
-
--- Center when moving around at high speeds
-vim.keymap.set(nv, "<C-u>", "<C-u>zz", {})
-vim.keymap.set(nv, "<C-d>", "<C-d>zz", {})
-vim.keymap.set(nv, "G", "Gzz", {})
-
--- Make going to the end of a line as easy as going to the beginning
-vim.keymap.set({"n", "v", "o"}, "+", "$", {})
-
--- Yanking and pasting
-vim.keymap.set(nv, "<leader>y", "\"+y", {})
-vim.keymap.set(nv, "<leader>p", "\"+p", {})
-vim.keymap.set("x", "p", "\"_dP", {})
-vim.keymap.set("x", "<leader>P", "p", {})
-
--- Commands
-vim.keymap.set(nv, "<leader>c", "<CMD>set invhlsearch<CR>", {silent=true})
-vim.keymap.set("n", "{", "<CMD>cp<CR>", {silent=true})
-vim.keymap.set("n", "}", "<CMD>cn<CR>", {silent=true})
-
--- Common typo with me
-vim.api.nvim_create_user_command("W", "w", {bang=true})
-vim.api.nvim_create_user_command("Wa", "wa", {bang=true})
-vim.api.nvim_create_user_command("Wq", "wq", {bang=true})
-vim.api.nvim_create_user_command("Wqa", "wqa", {bang=true})
-vim.api.nvim_create_user_command("Q", "q", {bang=true})
-vim.api.nvim_create_user_command("Qa", "qa", {bang=true})
diff --git a/.config/nvim/lua/opt.lua b/.config/nvim/lua/opt.lua
deleted file mode 100644
index 446229d..0000000
--- a/.config/nvim/lua/opt.lua
+++ /dev/null
@@ -1,27 +0,0 @@
-vim.o.termguicolors = true
-vim.o.relativenumber = true
-vim.o.number = true
-vim.o.cursorline = true
-vim.o.cursorlineopt = "line"
-vim.o.ignorecase = true
-vim.o.smartcase = true
-vim.o.mouse = ""
-vim.o.cc = "80"
-vim.o.splitright = true
-vim.o.splitbelow = true
-local tabwidth = 2
-vim.o.tabstop = tabwidth
-vim.o.softtabstop = tabwidth
-vim.o.shiftwidth = tabwidth
-vim.o.expandtab = true
-vim.o.wrap = false
-
--- Disable line numbers in terminal
-vim.api.nvim_create_autocmd("TermOpen", {
- callback = function()
- vim.o.number = false
- vim.o.relativenumber = false
- end,
-})
-
-vim.cmd.colorscheme("mine")
diff --git a/.config/nvim/lua/plugin/init.lua b/.config/nvim/lua/plugin/init.lua
deleted file mode 100644
index 4e60f98..0000000
--- a/.config/nvim/lua/plugin/init.lua
+++ /dev/null
@@ -1,3 +0,0 @@
-require("plugin.packer")
-require("plugin.setup")
-require("plugin.lsp")
diff --git a/.config/nvim/lua/plugin/lsp.lua b/.config/nvim/lua/plugin/lsp.lua
deleted file mode 100644
index 50eed85..0000000
--- a/.config/nvim/lua/plugin/lsp.lua
+++ /dev/null
@@ -1,81 +0,0 @@
-local lspconf = require("lspconfig")
-local cmp = require("cmp")
-local capabilities = require("cmp_nvim_lsp").default_capabilities()
-
-vim.opt.signcolumn = "yes"
-
-local servers = {
- ["lua_ls"] = {
- settings = {
- Lua = {
- runtime = {
- version = "LuaJIT"
- },
- },
- },
- },
- ["clangd"] = {},
-}
-
-for lsp, conf in pairs(servers) do
- conf.capabilities = capabilities
- lspconf[lsp].setup(conf)
-end
-
-cmp.setup({
- preselect = "item",
- completion = {
- completeopt = "menu,menuone,noinsert",
- },
- window = {
- completion = cmp.config.window.bordered(),
- documentation = cmp.config.window.bordered(),
- },
- formatting = {
- fields = { "menu", "abbr", "kind" },
-
- format = function(entry, item)
- local menu_icon = {
- nvim_lsp = "L",
- buffer = "B",
- path = "P",
- nvim_lua = "V",
- }
-
- item.menu = menu_icon[entry.source.name]
-
- return item
- end,
- },
- mapping = {
- ["<CR>"] = cmp.mapping.confirm({ select = false }),
- ["<Tab>"] = cmp.mapping.select_next_item(),
- ["<S-Tab>"] = cmp.mapping.select_prev_item(),
- },
- sources = {
- { name = "path" },
- { name = "nvim_lsp" },
- { name = "buffer", keyword_length = 3 },
- },
-})
-
-vim.api.nvim_create_autocmd("LspAttach", {
- group = vim.api.nvim_create_augroup("UserLspConfig", {}),
- callback = function(ev)
- vim.bo[ev.buf].omnifunc = "v:lua.vim.lsp.omnifunc"
- local opts = { buffer = ev.buf }
- vim.keymap.set("n", "gD", vim.lsp.buf.declaration, opts)
- vim.keymap.set("n", "gd", vim.lsp.buf.definition, opts)
- vim.keymap.set("n", "gi", vim.lsp.buf.implementation, opts)
- vim.keymap.set("n", "gr", vim.lsp.buf.references, opts)
- vim.keymap.set("n", "go", vim.lsp.buf.type_definition, opts)
- vim.keymap.set("n", "<leader>ls", vim.lsp.buf.signature_help, opts)
- vim.keymap.set("n", "<space>rn", vim.lsp.buf.rename, opts)
- vim.keymap.set("n", "<leader>h", vim.lsp.buf.hover, opts)
- vim.keymap.set({"n", "v"}, "<space>ca", vim.lsp.buf.code_action, opts)
- vim.keymap.set("n", "<space>f",
- function()
- vim.lsp.buf.format({async = true})
- end, opts)
- end
-})
diff --git a/.config/nvim/lua/plugin/packer.lua b/.config/nvim/lua/plugin/packer.lua
deleted file mode 100644
index 359ceab..0000000
--- a/.config/nvim/lua/plugin/packer.lua
+++ /dev/null
@@ -1,18 +0,0 @@
-return require("packer").startup(function(use)
- use {"wbthomason/packer.nvim"}
-
- use {"ibhagwan/fzf-lua"}
- use {"stevearc/oil.nvim"}
-
- use {"lewis6991/gitsigns.nvim"}
-
- use {"williamboman/mason.nvim"}
- use {"neovim/nvim-lspconfig"}
- use {"hrsh7th/nvim-cmp"}
- use {"hrsh7th/cmp-buffer"}
- use {"hrsh7th/cmp-path"}
- use {"hrsh7th/cmp-nvim-lsp"}
- use {"hrsh7th/cmp-nvim-lua"}
-
- use {"michaeljsmith/vim-indent-object"}
-end)
diff --git a/.config/nvim/lua/plugin/setup.lua b/.config/nvim/lua/plugin/setup.lua
deleted file mode 100644
index 7a53c6a..0000000
--- a/.config/nvim/lua/plugin/setup.lua
+++ /dev/null
@@ -1,12 +0,0 @@
----@diagnostic disable: undefined-global
-
-require("gitsigns").setup({})
-require("mason").setup({})
-
-require("oil").setup({})
-vim.keymap.set("n", "<leader>e", "<CMD>Oil<CR>", {})
-
-require("fzf-lua").setup(require("fzf-lua.profiles.telescope"))
-vim.keymap.set("n", "<C-o>", function() FzfLua.files({}) end, {})
-
-vim.keymap.set("n", "<C-f>", function() FzfLua.grep() end, {})
diff --git a/dmenu_dt b/dmenu_dt
new file mode 100755
index 0000000..b736722
--- /dev/null
+++ b/dmenu_dt
@@ -0,0 +1,12 @@
+#!/bin/bash
+
+DIR1=~/.local/share/applications
+DIR2=/usr/share/applications
+
+RES=`ls $DIR1 $DIR2 | sed 's/.desktop$//g' | dmenu -i`
+
+gio launch $DIR1/$RES.desktop &> /dev/null
+
+if [[ $? != 0 ]]; then
+ gio launch $DIR2/$RES.desktop
+fi
diff --git a/dwm_config.h b/dwm_config.h
index 9afaf24..c07b1b5 100644
--- a/dwm_config.h
+++ b/dwm_config.h
@@ -65,7 +65,7 @@ static const Layout layouts[] = {
/* commands */
static char dmenumon[2] = "0"; /* component of dmenucmd, manipulated in spawn() */
static const char *dmenucmd[] = { "dmenu_run", NULL };
-static const char *termcmd[] = { "st", NULL };
+static const char *termcmd[] = { "alacritty", NULL };
static const char *flameshotcmd[] = { "flameshot", "gui", NULL };
static const char *pausecmd[] = { "playerctl", "play-pause", NULL };
static const char *nextcmd[] = { "playerctl", "next", NULL };
diff --git a/dwm_status.sh b/dwm_status.sh
index a8eea62..b72cffb 100755
--- a/dwm_status.sh
+++ b/dwm_status.sh
@@ -1,10 +1,11 @@
-#!/bin/sh
+#!/bin/bash
while true; do
ram=`free -m | awk 'NR==2{printf "RAM %.2f%%", $3*100/$2}'`
cpu=`top -bn1 | grep load | awk '{printf "CPU %.2f", $(NF-2)}'`
- clock=`date +"%b %d, %H.%M.%S"`
+ clock=`date +"%a %b %d, %H.%M.%S"`
+ pkg=`xbps-query -l | wc -l`
vol=`pactl get-sink-volume @DEFAULT_SINK@ | awk 'NR==1{printf "VOL %s", $5}'`
- xprop -root -set WM_NAME " $vol | $ram | $cpu | $clock "
+ xprop -root -set WM_NAME " PKG $pkg | $vol | $ram | $cpu | $clock "
sleep 1
-done
+done &
diff --git a/st_config.h b/st_config.h
deleted file mode 100644
index 14167aa..0000000
--- a/st_config.h
+++ /dev/null
@@ -1,477 +0,0 @@
-/* See LICENSE file for copyright and license details. */
-
-/*
- * appearance
- *
- * font: see http://freedesktop.org/software/fontconfig/fontconfig-user.html
- */
-// static char *font = "JetBrainsMono Nerd Font:pixelsize=12:antialias=true:autohint=true";
-static char *font = "-misc-fixed-medium-r-normal--14-130-13-75-C-70-iso10646-1";
-static int borderpx = 2;
-
-/*
- * What program is execed by st depends of these precedence rules:
- * 1: program passed with -e
- * 2: scroll and/or utmp
- * 3: SHELL environment variable
- * 4: value of shell in /etc/passwd
- * 5: value of shell in config.h
- */
-static char *shell = "/bin/sh";
-char *utmp = NULL;
-/* scroll program: to enable use a string like "scroll" */
-char *scroll = NULL;
-char *stty_args = "stty raw pass8 nl -echo -iexten -cstopb 38400";
-
-/* identification sequence returned in DA and DECID */
-char *vtiden = "\033[?6c";
-
-/* Kerning / character bounding-box multipliers */
-static float cwscale = 1.0;
-static float chscale = 1.0;
-
-/*
- * word delimiter string
- *
- * More advanced example: L" `'\"()[]{}"
- */
-wchar_t *worddelimiters = L" ";
-
-/* selection timeouts (in milliseconds) */
-static unsigned int doubleclicktimeout = 300;
-static unsigned int tripleclicktimeout = 600;
-
-/* alt screens */
-int allowaltscreen = 1;
-
-/* allow certain non-interactive (insecure) window operations such as:
- setting the clipboard text */
-int allowwindowops = 0;
-
-/*
- * draw latency range in ms - from new content/keypress/etc until drawing.
- * within this range, st draws when content stops arriving (idle). mostly it's
- * near minlatency, but it waits longer for slow updates to avoid partial draw.
- * low minlatency will tear/flicker more, as it can "detect" idle too early.
- */
-static double minlatency = 2;
-static double maxlatency = 33;
-
-/*
- * blinking timeout (set to 0 to disable blinking) for the terminal blinking
- * attribute.
- */
-static unsigned int blinktimeout = 800;
-
-/*
- * thickness of underline and bar cursors
- */
-static unsigned int cursorthickness = 2;
-
-/*
- * bell volume. It must be a value between -100 and 100. Use 0 for disabling
- * it
- */
-static int bellvolume = 0;
-
-/* default TERM value */
-char *termname = "st-256color";
-
-/*
- * spaces per tab
- *
- * When you are changing this value, don't forget to adapt the »it« value in
- * the st.info and appropriately install the st.info in the environment where
- * you use this st version.
- *
- * it#$tabspaces,
- *
- * Secondly make sure your kernel is not expanding tabs. When running `stty
- * -a` »tab0« should appear. You can tell the terminal to not expand tabs by
- * running following command:
- *
- * stty tabs
- */
-unsigned int tabspaces = 8;
-
-/* Terminal colors (16 first used in escape sequence) */
-static const char *colorname[] = {
- /* 8 normal colors */
- "#333333",
- "#990911",
- "#099911",
- "#CC9900",
- "#5511CC",
- "#990966",
- "#0077AA",
- "#999999",
-
- /* 8 bright colors */
- "#666666",
- "#FF2222",
- "#22FF44",
- "#FFFF00",
- "#8833FF",
- "#FF4499",
- "#22CCFF",
- "#FFFFFF",
-
- [255] = 0,
-
- /* more colors can be added after 255 to use with DefaultXX */
- "#cccccc",
- "#555555",
- "#FFFFFF", /* default foreground colour */
- "#1A191C", /* default background colour */
-};
-
-
-/*
- * Default colors (colorname index)
- * foreground, background, cursor, reverse cursor
- */
-unsigned int defaultfg = 258;
-unsigned int defaultbg = 259;
-unsigned int defaultcs = 256;
-static unsigned int defaultrcs = 257;
-
-/*
- * Default shape of cursor
- * 2: Block ("█")
- * 4: Underline ("_")
- * 6: Bar ("|")
- * 7: Snowman ("☃")
- */
-static unsigned int cursorshape = 2;
-
-/*
- * Default columns and rows numbers
- */
-
-static unsigned int cols = 80;
-static unsigned int rows = 24;
-
-/*
- * Default colour and shape of the mouse cursor
- */
-static unsigned int mouseshape = XC_xterm;
-static unsigned int mousefg = 7;
-static unsigned int mousebg = 0;
-
-/*
- * Color used to display font attributes when fontconfig selected a font which
- * doesn't match the ones requested.
- */
-static unsigned int defaultattr = 11;
-
-/*
- * Force mouse select/shortcuts while mask is active (when MODE_MOUSE is set).
- * Note that if you want to use ShiftMask with selmasks, set this to an other
- * modifier, set to 0 to not use it.
- */
-static uint forcemousemod = ShiftMask;
-
-/*
- * Internal mouse shortcuts.
- * Beware that overloading Button1 will disable the selection.
- */
-static MouseShortcut mshortcuts[] = {
- /* mask button function argument release */
- { XK_ANY_MOD, Button2, selpaste, {.i = 0}, 1 },
- { ShiftMask, Button4, ttysend, {.s = "\033[5;2~"} },
- { XK_ANY_MOD, Button4, ttysend, {.s = "\031"} },
- { ShiftMask, Button5, ttysend, {.s = "\033[6;2~"} },
- { XK_ANY_MOD, Button5, ttysend, {.s = "\005"} },
-};
-
-/* Internal keyboard shortcuts. */
-#define MODKEY Mod1Mask
-#define TERMMOD (ControlMask|ShiftMask)
-
-static Shortcut shortcuts[] = {
- /* mask keysym function argument */
- { XK_ANY_MOD, XK_Break, sendbreak, {.i = 0} },
- { ControlMask, XK_Print, toggleprinter, {.i = 0} },
- { ShiftMask, XK_Print, printscreen, {.i = 0} },
- { XK_ANY_MOD, XK_Print, printsel, {.i = 0} },
- { TERMMOD, XK_Prior, zoom, {.f = +1} },
- { TERMMOD, XK_Next, zoom, {.f = -1} },
- { TERMMOD, XK_Home, zoomreset, {.f = 0} },
- { ShiftMask, XK_Page_Up, kscrollup, {.i = 5} },
- { ShiftMask, XK_Page_Down, kscrolldown, {.i = 5} },
- { TERMMOD, XK_C, clipcopy, {.i = 0} },
- { TERMMOD, XK_V, clippaste, {.i = 0} },
- { TERMMOD, XK_Y, selpaste, {.i = 0} },
- { ShiftMask, XK_Insert, selpaste, {.i = 0} },
- { TERMMOD, XK_Num_Lock, numlock, {.i = 0} },
-};
-
-/*
- * Special keys (change & recompile st.info accordingly)
- *
- * Mask value:
- * * Use XK_ANY_MOD to match the key no matter modifiers state
- * * Use XK_NO_MOD to match the key alone (no modifiers)
- * appkey value:
- * * 0: no value
- * * > 0: keypad application mode enabled
- * * = 2: term.numlock = 1
- * * < 0: keypad application mode disabled
- * appcursor value:
- * * 0: no value
- * * > 0: cursor application mode enabled
- * * < 0: cursor application mode disabled
- *
- * Be careful with the order of the definitions because st searches in
- * this table sequentially, so any XK_ANY_MOD must be in the last
- * position for a key.
- */
-
-/*
- * If you want keys other than the X11 function keys (0xFD00 - 0xFFFF)
- * to be mapped below, add them to this array.
- */
-static KeySym mappedkeys[] = { -1 };
-
-/*
- * State bits to ignore when matching key or button events. By default,
- * numlock (Mod2Mask) and keyboard layout (XK_SWITCH_MOD) are ignored.
- */
-static uint ignoremod = Mod2Mask|XK_SWITCH_MOD;
-
-/*
- * This is the huge key array which defines all compatibility to the Linux
- * world. Please decide about changes wisely.
- */
-static Key key[] = {
- /* keysym mask string appkey appcursor */
- { XK_KP_Home, ShiftMask, "\033[2J", 0, -1},
- { XK_KP_Home, ShiftMask, "\033[1;2H", 0, +1},
- { XK_KP_Home, XK_ANY_MOD, "\033[H", 0, -1},
- { XK_KP_Home, XK_ANY_MOD, "\033[1~", 0, +1},
- { XK_KP_Up, XK_ANY_MOD, "\033Ox", +1, 0},
- { XK_KP_Up, XK_ANY_MOD, "\033[A", 0, -1},
- { XK_KP_Up, XK_ANY_MOD, "\033OA", 0, +1},
- { XK_KP_Down, XK_ANY_MOD, "\033Or", +1, 0},
- { XK_KP_Down, XK_ANY_MOD, "\033[B", 0, -1},
- { XK_KP_Down, XK_ANY_MOD, "\033OB", 0, +1},
- { XK_KP_Left, XK_ANY_MOD, "\033Ot", +1, 0},
- { XK_KP_Left, XK_ANY_MOD, "\033[D", 0, -1},
- { XK_KP_Left, XK_ANY_MOD, "\033OD", 0, +1},
- { XK_KP_Right, XK_ANY_MOD, "\033Ov", +1, 0},
- { XK_KP_Right, XK_ANY_MOD, "\033[C", 0, -1},
- { XK_KP_Right, XK_ANY_MOD, "\033OC", 0, +1},
- { XK_KP_Prior, ShiftMask, "\033[5;2~", 0, 0},
- { XK_KP_Prior, XK_ANY_MOD, "\033[5~", 0, 0},
- { XK_KP_Begin, XK_ANY_MOD, "\033[E", 0, 0},
- { XK_KP_End, ControlMask, "\033[J", -1, 0},
- { XK_KP_End, ControlMask, "\033[1;5F", +1, 0},
- { XK_KP_End, ShiftMask, "\033[K", -1, 0},
- { XK_KP_End, ShiftMask, "\033[1;2F", +1, 0},
- { XK_KP_End, XK_ANY_MOD, "\033[4~", 0, 0},
- { XK_KP_Next, ShiftMask, "\033[6;2~", 0, 0},
- { XK_KP_Next, XK_ANY_MOD, "\033[6~", 0, 0},
- { XK_KP_Insert, ShiftMask, "\033[2;2~", +1, 0},
- { XK_KP_Insert, ShiftMask, "\033[4l", -1, 0},
- { XK_KP_Insert, ControlMask, "\033[L", -1, 0},
- { XK_KP_Insert, ControlMask, "\033[2;5~", +1, 0},
- { XK_KP_Insert, XK_ANY_MOD, "\033[4h", -1, 0},
- { XK_KP_Insert, XK_ANY_MOD, "\033[2~", +1, 0},
- { XK_KP_Delete, ControlMask, "\033[M", -1, 0},
- { XK_KP_Delete, ControlMask, "\033[3;5~", +1, 0},
- { XK_KP_Delete, ShiftMask, "\033[2K", -1, 0},
- { XK_KP_Delete, ShiftMask, "\033[3;2~", +1, 0},
- { XK_KP_Delete, XK_ANY_MOD, "\033[P", -1, 0},
- { XK_KP_Delete, XK_ANY_MOD, "\033[3~", +1, 0},
- { XK_KP_Multiply, XK_ANY_MOD, "\033Oj", +2, 0},
- { XK_KP_Add, XK_ANY_MOD, "\033Ok", +2, 0},
- { XK_KP_Enter, XK_ANY_MOD, "\033OM", +2, 0},
- { XK_KP_Enter, XK_ANY_MOD, "\r", -1, 0},
- { XK_KP_Subtract, XK_ANY_MOD, "\033Om", +2, 0},
- { XK_KP_Decimal, XK_ANY_MOD, "\033On", +2, 0},
- { XK_KP_Divide, XK_ANY_MOD, "\033Oo", +2, 0},
- { XK_KP_0, XK_ANY_MOD, "\033Op", +2, 0},
- { XK_KP_1, XK_ANY_MOD, "\033Oq", +2, 0},
- { XK_KP_2, XK_ANY_MOD, "\033Or", +2, 0},
- { XK_KP_3, XK_ANY_MOD, "\033Os", +2, 0},
- { XK_KP_4, XK_ANY_MOD, "\033Ot", +2, 0},
- { XK_KP_5, XK_ANY_MOD, "\033Ou", +2, 0},
- { XK_KP_6, XK_ANY_MOD, "\033Ov", +2, 0},
- { XK_KP_7, XK_ANY_MOD, "\033Ow", +2, 0},
- { XK_KP_8, XK_ANY_MOD, "\033Ox", +2, 0},
- { XK_KP_9, XK_ANY_MOD, "\033Oy", +2, 0},
- { XK_Up, ShiftMask, "\033[1;2A", 0, 0},
- { XK_Up, Mod1Mask, "\033[1;3A", 0, 0},
- { XK_Up, ShiftMask|Mod1Mask,"\033[1;4A", 0, 0},
- { XK_Up, ControlMask, "\033[1;5A", 0, 0},
- { XK_Up, ShiftMask|ControlMask,"\033[1;6A", 0, 0},
- { XK_Up, ControlMask|Mod1Mask,"\033[1;7A", 0, 0},
- { XK_Up,ShiftMask|ControlMask|Mod1Mask,"\033[1;8A", 0, 0},
- { XK_Up, XK_ANY_MOD, "\033[A", 0, -1},
- { XK_Up, XK_ANY_MOD, "\033OA", 0, +1},
- { XK_Down, ShiftMask, "\033[1;2B", 0, 0},
- { XK_Down, Mod1Mask, "\033[1;3B", 0, 0},
- { XK_Down, ShiftMask|Mod1Mask,"\033[1;4B", 0, 0},
- { XK_Down, ControlMask, "\033[1;5B", 0, 0},
- { XK_Down, ShiftMask|ControlMask,"\033[1;6B", 0, 0},
- { XK_Down, ControlMask|Mod1Mask,"\033[1;7B", 0, 0},
- { XK_Down,ShiftMask|ControlMask|Mod1Mask,"\033[1;8B",0, 0},
- { XK_Down, XK_ANY_MOD, "\033[B", 0, -1},
- { XK_Down, XK_ANY_MOD, "\033OB", 0, +1},
- { XK_Left, ShiftMask, "\033[1;2D", 0, 0},
- { XK_Left, Mod1Mask, "\033[1;3D", 0, 0},
- { XK_Left, ShiftMask|Mod1Mask,"\033[1;4D", 0, 0},
- { XK_Left, ControlMask, "\033[1;5D", 0, 0},
- { XK_Left, ShiftMask|ControlMask,"\033[1;6D", 0, 0},
- { XK_Left, ControlMask|Mod1Mask,"\033[1;7D", 0, 0},
- { XK_Left,ShiftMask|ControlMask|Mod1Mask,"\033[1;8D",0, 0},
- { XK_Left, XK_ANY_MOD, "\033[D", 0, -1},
- { XK_Left, XK_ANY_MOD, "\033OD", 0, +1},
- { XK_Right, ShiftMask, "\033[1;2C", 0, 0},
- { XK_Right, Mod1Mask, "\033[1;3C", 0, 0},
- { XK_Right, ShiftMask|Mod1Mask,"\033[1;4C", 0, 0},
- { XK_Right, ControlMask, "\033[1;5C", 0, 0},
- { XK_Right, ShiftMask|ControlMask,"\033[1;6C", 0, 0},
- { XK_Right, ControlMask|Mod1Mask,"\033[1;7C", 0, 0},
- { XK_Right,ShiftMask|ControlMask|Mod1Mask,"\033[1;8C",0, 0},
- { XK_Right, XK_ANY_MOD, "\033[C", 0, -1},
- { XK_Right, XK_ANY_MOD, "\033OC", 0, +1},
- { XK_ISO_Left_Tab, ShiftMask, "\033[Z", 0, 0},
- { XK_Return, Mod1Mask, "\033\r", 0, 0},
- { XK_Return, XK_ANY_MOD, "\r", 0, 0},
- { XK_Insert, ShiftMask, "\033[4l", -1, 0},
- { XK_Insert, ShiftMask, "\033[2;2~", +1, 0},
- { XK_Insert, ControlMask, "\033[L", -1, 0},
- { XK_Insert, ControlMask, "\033[2;5~", +1, 0},
- { XK_Insert, XK_ANY_MOD, "\033[4h", -1, 0},
- { XK_Insert, XK_ANY_MOD, "\033[2~", +1, 0},
- { XK_Delete, ControlMask, "\033[M", -1, 0},
- { XK_Delete, ControlMask, "\033[3;5~", +1, 0},
- { XK_Delete, ShiftMask, "\033[2K", -1, 0},
- { XK_Delete, ShiftMask, "\033[3;2~", +1, 0},
- { XK_Delete, XK_ANY_MOD, "\033[P", -1, 0},
- { XK_Delete, XK_ANY_MOD, "\033[3~", +1, 0},
- { XK_BackSpace, XK_NO_MOD, "\177", 0, 0},
- { XK_BackSpace, Mod1Mask, "\033\177", 0, 0},
- { XK_Home, ShiftMask, "\033[2J", 0, -1},
- { XK_Home, ShiftMask, "\033[1;2H", 0, +1},
- { XK_Home, XK_ANY_MOD, "\033[H", 0, -1},
- { XK_Home, XK_ANY_MOD, "\033[1~", 0, +1},
- { XK_End, ControlMask, "\033[J", -1, 0},
- { XK_End, ControlMask, "\033[1;5F", +1, 0},
- { XK_End, ShiftMask, "\033[K", -1, 0},
- { XK_End, ShiftMask, "\033[1;2F", +1, 0},
- { XK_End, XK_ANY_MOD, "\033[4~", 0, 0},
- { XK_Prior, ControlMask, "\033[5;5~", 0, 0},
- { XK_Prior, ShiftMask, "\033[5;2~", 0, 0},
- { XK_Prior, XK_ANY_MOD, "\033[5~", 0, 0},
- { XK_Next, ControlMask, "\033[6;5~", 0, 0},
- { XK_Next, ShiftMask, "\033[6;2~", 0, 0},
- { XK_Next, XK_ANY_MOD, "\033[6~", 0, 0},
- { XK_F1, XK_NO_MOD, "\033OP" , 0, 0},
- { XK_F1, /* F13 */ ShiftMask, "\033[1;2P", 0, 0},
- { XK_F1, /* F25 */ ControlMask, "\033[1;5P", 0, 0},
- { XK_F1, /* F37 */ Mod4Mask, "\033[1;6P", 0, 0},
- { XK_F1, /* F49 */ Mod1Mask, "\033[1;3P", 0, 0},
- { XK_F1, /* F61 */ Mod3Mask, "\033[1;4P", 0, 0},
- { XK_F2, XK_NO_MOD, "\033OQ" , 0, 0},
- { XK_F2, /* F14 */ ShiftMask, "\033[1;2Q", 0, 0},
- { XK_F2, /* F26 */ ControlMask, "\033[1;5Q", 0, 0},
- { XK_F2, /* F38 */ Mod4Mask, "\033[1;6Q", 0, 0},
- { XK_F2, /* F50 */ Mod1Mask, "\033[1;3Q", 0, 0},
- { XK_F2, /* F62 */ Mod3Mask, "\033[1;4Q", 0, 0},
- { XK_F3, XK_NO_MOD, "\033OR" , 0, 0},
- { XK_F3, /* F15 */ ShiftMask, "\033[1;2R", 0, 0},
- { XK_F3, /* F27 */ ControlMask, "\033[1;5R", 0, 0},
- { XK_F3, /* F39 */ Mod4Mask, "\033[1;6R", 0, 0},
- { XK_F3, /* F51 */ Mod1Mask, "\033[1;3R", 0, 0},
- { XK_F3, /* F63 */ Mod3Mask, "\033[1;4R", 0, 0},
- { XK_F4, XK_NO_MOD, "\033OS" , 0, 0},
- { XK_F4, /* F16 */ ShiftMask, "\033[1;2S", 0, 0},
- { XK_F4, /* F28 */ ControlMask, "\033[1;5S", 0, 0},
- { XK_F4, /* F40 */ Mod4Mask, "\033[1;6S", 0, 0},
- { XK_F4, /* F52 */ Mod1Mask, "\033[1;3S", 0, 0},
- { XK_F5, XK_NO_MOD, "\033[15~", 0, 0},
- { XK_F5, /* F17 */ ShiftMask, "\033[15;2~", 0, 0},
- { XK_F5, /* F29 */ ControlMask, "\033[15;5~", 0, 0},
- { XK_F5, /* F41 */ Mod4Mask, "\033[15;6~", 0, 0},
- { XK_F5, /* F53 */ Mod1Mask, "\033[15;3~", 0, 0},
- { XK_F6, XK_NO_MOD, "\033[17~", 0, 0},
- { XK_F6, /* F18 */ ShiftMask, "\033[17;2~", 0, 0},
- { XK_F6, /* F30 */ ControlMask, "\033[17;5~", 0, 0},
- { XK_F6, /* F42 */ Mod4Mask, "\033[17;6~", 0, 0},
- { XK_F6, /* F54 */ Mod1Mask, "\033[17;3~", 0, 0},
- { XK_F7, XK_NO_MOD, "\033[18~", 0, 0},
- { XK_F7, /* F19 */ ShiftMask, "\033[18;2~", 0, 0},
- { XK_F7, /* F31 */ ControlMask, "\033[18;5~", 0, 0},
- { XK_F7, /* F43 */ Mod4Mask, "\033[18;6~", 0, 0},
- { XK_F7, /* F55 */ Mod1Mask, "\033[18;3~", 0, 0},
- { XK_F8, XK_NO_MOD, "\033[19~", 0, 0},
- { XK_F8, /* F20 */ ShiftMask, "\033[19;2~", 0, 0},
- { XK_F8, /* F32 */ ControlMask, "\033[19;5~", 0, 0},
- { XK_F8, /* F44 */ Mod4Mask, "\033[19;6~", 0, 0},
- { XK_F8, /* F56 */ Mod1Mask, "\033[19;3~", 0, 0},
- { XK_F9, XK_NO_MOD, "\033[20~", 0, 0},
- { XK_F9, /* F21 */ ShiftMask, "\033[20;2~", 0, 0},
- { XK_F9, /* F33 */ ControlMask, "\033[20;5~", 0, 0},
- { XK_F9, /* F45 */ Mod4Mask, "\033[20;6~", 0, 0},
- { XK_F9, /* F57 */ Mod1Mask, "\033[20;3~", 0, 0},
- { XK_F10, XK_NO_MOD, "\033[21~", 0, 0},
- { XK_F10, /* F22 */ ShiftMask, "\033[21;2~", 0, 0},
- { XK_F10, /* F34 */ ControlMask, "\033[21;5~", 0, 0},
- { XK_F10, /* F46 */ Mod4Mask, "\033[21;6~", 0, 0},
- { XK_F10, /* F58 */ Mod1Mask, "\033[21;3~", 0, 0},
- { XK_F11, XK_NO_MOD, "\033[23~", 0, 0},
- { XK_F11, /* F23 */ ShiftMask, "\033[23;2~", 0, 0},
- { XK_F11, /* F35 */ ControlMask, "\033[23;5~", 0, 0},
- { XK_F11, /* F47 */ Mod4Mask, "\033[23;6~", 0, 0},
- { XK_F11, /* F59 */ Mod1Mask, "\033[23;3~", 0, 0},
- { XK_F12, XK_NO_MOD, "\033[24~", 0, 0},
- { XK_F12, /* F24 */ ShiftMask, "\033[24;2~", 0, 0},
- { XK_F12, /* F36 */ ControlMask, "\033[24;5~", 0, 0},
- { XK_F12, /* F48 */ Mod4Mask, "\033[24;6~", 0, 0},
- { XK_F12, /* F60 */ Mod1Mask, "\033[24;3~", 0, 0},
- { XK_F13, XK_NO_MOD, "\033[1;2P", 0, 0},
- { XK_F14, XK_NO_MOD, "\033[1;2Q", 0, 0},
- { XK_F15, XK_NO_MOD, "\033[1;2R", 0, 0},
- { XK_F16, XK_NO_MOD, "\033[1;2S", 0, 0},
- { XK_F17, XK_NO_MOD, "\033[15;2~", 0, 0},
- { XK_F18, XK_NO_MOD, "\033[17;2~", 0, 0},
- { XK_F19, XK_NO_MOD, "\033[18;2~", 0, 0},
- { XK_F20, XK_NO_MOD, "\033[19;2~", 0, 0},
- { XK_F21, XK_NO_MOD, "\033[20;2~", 0, 0},
- { XK_F22, XK_NO_MOD, "\033[21;2~", 0, 0},
- { XK_F23, XK_NO_MOD, "\033[23;2~", 0, 0},
- { XK_F24, XK_NO_MOD, "\033[24;2~", 0, 0},
- { XK_F25, XK_NO_MOD, "\033[1;5P", 0, 0},
- { XK_F26, XK_NO_MOD, "\033[1;5Q", 0, 0},
- { XK_F27, XK_NO_MOD, "\033[1;5R", 0, 0},
- { XK_F28, XK_NO_MOD, "\033[1;5S", 0, 0},
- { XK_F29, XK_NO_MOD, "\033[15;5~", 0, 0},
- { XK_F30, XK_NO_MOD, "\033[17;5~", 0, 0},
- { XK_F31, XK_NO_MOD, "\033[18;5~", 0, 0},
- { XK_F32, XK_NO_MOD, "\033[19;5~", 0, 0},
- { XK_F33, XK_NO_MOD, "\033[20;5~", 0, 0},
- { XK_F34, XK_NO_MOD, "\033[21;5~", 0, 0},
- { XK_F35, XK_NO_MOD, "\033[23;5~", 0, 0},
-};
-
-/*
- * Selection types' masks.
- * Use the same masks as usual.
- * Button1Mask is always unset, to make masks match between ButtonPress.
- * ButtonRelease and MotionNotify.
- * If no match is found, regular selection is used.
- */
-static uint selmasks[] = {
- [SEL_RECTANGULAR] = Mod1Mask,
-};
-
-/*
- * Printable characters in ASCII, used to estimate the advance width
- * of single wide characters.
- */
-static char ascii_printable[] =
- " !\"#$%&'()*+,-./0123456789:;<=>?"
- "@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_"
- "`abcdefghijklmnopqrstuvwxyz{|}~";
diff --git a/update.sh b/update.sh
index 4a71812..51b3854 100644
--- a/update.sh
+++ b/update.sh
@@ -2,11 +2,9 @@ rm -rf .config/
mkdir .config/
# Alacritty
-# cp -r ~/.config/alacritty .config
-# rm .config/alacritty/install.log
+cp -r ~/.config/alacritty.toml .config
# st
-cp ~/git/st/config.h ./st_config.h
cp ~/git/dwm/config.h ./dwm_config.h
cp ~/git/dmenu/config.h ./dmenu_config.h
@@ -14,13 +12,3 @@ cp ~/git/dmenu/config.h ./dmenu_config.h
cp -r ~/.config/nvim .config
rm -rf .config/nvim/plugin
rm -rf .config/nvim/live-server
-rm .config/nvim/.luarc.json
-
-# i3
-# cp -r ~/.config/i3 .config
-
-# polybar
-# cp -r ~/.config/polybar .config
-
-# picom
-# cp -r ~/.config/picom .config