From 9a128539e675333e7441ad893c61f8dce625f317 Mon Sep 17 00:00:00 2001 From: Xander Swan Date: Wed, 3 Dec 2025 10:00:42 -0500 Subject: Update lots and lots --- .config/alacritty.toml | 40 +++ .config/nvim/colors/mine.lua | 91 +++++++ .config/nvim/colors/mine.vim | 63 ----- .config/nvim/colors/prismatic.vim | 225 ----------------- .config/nvim/colors/some_vscode.vim | 61 ----- .config/nvim/ftplugin/cs.vim | 3 - .config/nvim/init.lua | 96 +++++++- .config/nvim/lua/map.lua | 36 --- .config/nvim/lua/opt.lua | 27 -- .config/nvim/lua/plugin/init.lua | 3 - .config/nvim/lua/plugin/lsp.lua | 81 ------ .config/nvim/lua/plugin/packer.lua | 18 -- .config/nvim/lua/plugin/setup.lua | 12 - dmenu_dt | 12 + dwm_config.h | 2 +- dwm_status.sh | 9 +- st_config.h | 477 ------------------------------------ update.sh | 14 +- 18 files changed, 243 insertions(+), 1027 deletions(-) create mode 100644 .config/alacritty.toml create mode 100644 .config/nvim/colors/mine.lua delete mode 100644 .config/nvim/colors/mine.vim delete mode 100644 .config/nvim/colors/prismatic.vim delete mode 100644 .config/nvim/colors/some_vscode.vim delete mode 100644 .config/nvim/ftplugin/cs.vim delete mode 100644 .config/nvim/lua/map.lua delete mode 100644 .config/nvim/lua/opt.lua delete mode 100644 .config/nvim/lua/plugin/init.lua delete mode 100644 .config/nvim/lua/plugin/lsp.lua delete mode 100644 .config/nvim/lua/plugin/packer.lua delete mode 100644 .config/nvim/lua/plugin/setup.lua create mode 100755 dmenu_dt delete mode 100644 st_config.h 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 -" 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"}, "s", ":noh", {silent=true}) +vim.keymap.set("n", "e", ":Oil", {}) +vim.keymap.set("n", "", function() FzfLua.files({}) end, {}) +vim.keymap.set("n", "", 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", "", scroll(""), {expr=true, noremap=true}) +vim.keymap.set("n", "", scroll(""), {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", "", "", {}) - --- Center when moving around at high speeds -vim.keymap.set(nv, "", "zz", {}) -vim.keymap.set(nv, "", "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, "y", "\"+y", {}) -vim.keymap.set(nv, "p", "\"+p", {}) -vim.keymap.set("x", "p", "\"_dP", {}) -vim.keymap.set("x", "P", "p", {}) - --- Commands -vim.keymap.set(nv, "c", "set invhlsearch", {silent=true}) -vim.keymap.set("n", "{", "cp", {silent=true}) -vim.keymap.set("n", "}", "cn", {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 = { - [""] = cmp.mapping.confirm({ select = false }), - [""] = cmp.mapping.select_next_item(), - [""] = 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", "ls", vim.lsp.buf.signature_help, opts) - vim.keymap.set("n", "rn", vim.lsp.buf.rename, opts) - vim.keymap.set("n", "h", vim.lsp.buf.hover, opts) - vim.keymap.set({"n", "v"}, "ca", vim.lsp.buf.code_action, opts) - vim.keymap.set("n", "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", "e", "Oil", {}) - -require("fzf-lua").setup(require("fzf-lua.profiles.telescope")) -vim.keymap.set("n", "", function() FzfLua.files({}) end, {}) - -vim.keymap.set("n", "", 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 -- cgit v1.3-2-g0d8e