diff --git a/.zshrc.root b/.zshrc.root index 8da73f3..03c8bc1 100644 --- a/.zshrc.root +++ b/.zshrc.root @@ -27,4 +27,3 @@ export MANPATH=/usr/pkg/man:$MANPATH alias ..='echo "cd .."; cd ../' alias ls="ls --color=auto" grep --color=auto < /dev/null &>/dev/null && alias grep='grep --color=auto' -eval "$(starship init zsh)" diff --git a/config/nvim/init.lua b/config/nvim/init.lua deleted file mode 100644 index 95a787d..0000000 --- a/config/nvim/init.lua +++ /dev/null @@ -1,168 +0,0 @@ -vim.cmd [[ - set nocompatible - filetype plugin indent on - syntax enable - call plug#begin('~/.local/share/nvim/plugged') - Plug 'tpope/vim-sensible' - Plug 'junegunn/fzf.vim' - Plug 'tpope/vim-surround' - Plug 'tpope/vim-commentary' - Plug 'jiangmiao/auto-pairs' - Plug 'tpope/vim-repeat' - Plug 'mattn/emmet-vim' - Plug 'norcalli/nvim-colorizer.lua' - call plug#end() -]] - -vim.opt.clipboard = "unnamedplus" -vim.opt.updatetime = 300 -vim.opt.timeoutlen = 500 -vim.opt.signcolumn = "yes" -vim.opt.completeopt = { "menuone", "noinsert", "noselect" } -vim.opt.encoding = "utf-8" -vim.opt.number = true -vim.opt.relativenumber = true -vim.opt.numberwidth = 4 -vim.opt.tabstop = 4 -vim.opt.shiftwidth = 4 -vim.opt.expandtab = true -vim.opt.smartindent = true -vim.opt.incsearch = true -vim.opt.hlsearch = true -vim.opt.ignorecase = true -vim.opt.smartcase = true -vim.opt.wrap = true -vim.opt.mouse = "a" -vim.opt.scrolloff = 5 -vim.opt.cursorline = true -vim.opt.showmode = false -vim.opt.shortmess:append("I") -vim.opt.autoindent = true -vim.opt.termguicolors = true -vim.opt.list = true -vim.opt.undodir = vim.fn.stdpath("cache") .. "/undo" -vim.opt.undofile = true -vim.opt.wrapscan = true -vim.opt.shortmess:append("c") -vim.opt.autoread = true -vim.opt.cmdheight = 1 -vim.opt.belloff = "all" -vim.opt.laststatus = 2 -vim.opt.scrolljump = 3 -vim.opt.hidden = true -vim.opt.splitbelow = true -vim.opt.splitright = true -vim.opt.backup = false -vim.opt.writebackup = false -vim.opt.lazyredraw = true -vim.opt.smoothscroll = true - -vim.api.nvim_set_hl(0, "Normal", { fg = "#5B469A", bg = "NONE", ctermfg = 61, ctermbg = "NONE" }) -vim.api.nvim_set_hl(0, "NormalNC", { fg = "#6c55b4", bg = "NONE", ctermfg = 63, ctermbg = "NONE" }) -vim.api.nvim_set_hl(0, "LineNr", { fg = "#3f2b75", bg = "NONE", ctermfg = 60, ctermbg = "NONE" }) -vim.api.nvim_set_hl(0, "CursorLine", { bg = "#2a1f4d", fg = "NONE", blend = 30 }) -vim.api.nvim_set_hl(0, "VertSplit", { fg = "#2a1f4d", bg = "NONE", ctermfg = 238, ctermbg = "NONE" }) - -vim.api.nvim_set_hl(0, "StatusLine", { - fg = "#5B469A", - bg = "#1f1832", - ctermfg = 61, - ctermbg = 234, -}) - -vim.api.nvim_set_hl(0, "StatusLineMode", { - fg = "#e0d4f7", - bg = "#3b2a6d", - bold = true, - ctermfg = 189, - ctermbg = 60, -}) - -vim.api.nvim_set_hl(0, "Visual", { bg = "#342562", fg = "NONE", ctermbg = 60, ctermfg = "NONE" }) -vim.api.nvim_set_hl(0, "VisualNOS", { bg = "#342562", fg = "NONE", ctermbg = 60, ctermbg = "NONE" }) -vim.api.nvim_set_hl(0, "VisualSB", { bg = "#342562", fg = "NONE", ctermbg = 60, ctermfg = "NONE" }) -vim.api.nvim_set_hl(0, "Search", { fg = "#5B469A", bg = "#1c1533", ctermfg = 61, ctermbg = 234 }) -vim.api.nvim_set_hl(0, "IncSearch", { fg = "#b6a3f5", bg = "#1c1533", ctermfg = 183, ctermbg = 234 }) -vim.api.nvim_set_hl(0, "Pmenu", { fg = "#5B469A", bg = "NONE", ctermfg = 61, ctermbg = "NONE" }) -vim.api.nvim_set_hl(0, "PmenuSel", { fg = "#000000", bg = "#5B469A", ctermfg = 0, ctermbg = 61 }) -vim.api.nvim_set_hl(0, "WildMenu", { fg = "#5B469A", bg = "NONE", ctermfg = 61, ctermbg = "NONE" }) -vim.api.nvim_set_hl(0, "Folded", { fg = "#7a66b1", bg = "NONE", ctermfg = 103, ctermbg = "NONE" }) -vim.api.nvim_set_hl(0, "SignColumn", { fg = "#bca4f4", bg = "NONE", ctermfg = 183, ctermbg = "NONE" }) - -local mode_names = { - n = "NRM", - i = "INS", - v = "VSL", - V = "VLI", - [""] = "VBL", - R = "RPL", - c = "CMD", -} - -function _G.ModeName() - return mode_names[vim.fn.mode()] or "UNK" -end - -vim.opt.statusline = table.concat { - "%#StatusLineMode# ", - "%{v:lua.ModeName()} ", - "%#StatusLine# ", - "%f %m %r ", - "%=", - "Ln:%l/%L ", - "Col:%c ", - "[%p%%]", -} - -vim.g.mapleader = " " -local map = vim.keymap.set -map("n", "w", ":w") -map("n", "q", ":q") -map("n", "h", ":nohlsearch", { silent = true }) -map("n", "n", ":set relativenumber!") -map("n", "", "h") -map("n", "", "j") -map("n", "", "k") -map("n", "", "l") -map("n", "v", ":Ex") -map("", "j", "gj") -map("", "k", "gk") - -vim.keymap.set({ "n", "v" }, "cd", vim.cmd.Ex) - -vim.keymap.set({ "n", "v" }, "d", '"_d', { desc = "Delete without yanking" }) -vim.keymap.set("n", "bn", ":bnext", { desc = "Next buffer" }) -vim.keymap.set("n", "bp", ":bprevious", { desc = "Previous buffer" }) - -vim.keymap.set("n", "", "h", { desc = "Move to left window" }) -vim.keymap.set("n", "", "j", { desc = "Move to bottom window" }) -vim.keymap.set("n", "", "k", { desc = "Move to top window" }) -vim.keymap.set("n", "", "l", { desc = "Move to right window" }) - -local modes_to_disable = { "n", "v", "x", "s", "c" } -local arrows = { "", "", "", "" } - -for _, mode in ipairs(modes_to_disable) do - for _, key in ipairs(arrows) do - vim.keymap.set(mode, key, "", { silent = true }) - end -end - -vim.keymap.set("n", "sv", ":vsplit", { desc = "Split window vertically" }) -vim.keymap.set("n", "sh", ":split", { desc = "Split window horizontally" }) -vim.keymap.set("n", "", ":resize +2", { desc = "Increase window height" }) -vim.keymap.set("n", "", ":resize -2", { desc = "Decrease window height" }) -vim.keymap.set("n", "", ":vertical resize -2", { desc = "Decrease window width" }) -vim.keymap.set("n", "", ":vertical resize +2", { desc = "Increase window width" }) - -vim.keymap.set("n", "", ":m .+1==", { desc = "Move line down" }) -vim.keymap.set("n", "", ":m .-2==", { desc = "Move line up" }) -vim.keymap.set("v", "", ":m '>+1gv=gv", { desc = "Move selection down" }) -vim.keymap.set("v", "", ":m '<-2gv=gv", { desc = "Move selection up" }) - -require('colorizer').setup { - '*', - css = { names = true }, - html = { names = true }, -} - diff --git a/config/nvim/init.vim b/config/nvim/init.vim index 2de3ade..37afb69 100644 --- a/config/nvim/init.vim +++ b/config/nvim/init.vim @@ -1,10 +1,12 @@ +source ~/.config/nvim/plugged/plug.vim + set nocompatible filetype plugin indent on syntax enable set encoding=utf-8 set number relativenumber set numberwidth=4 -set tabstop=4 shiftwidth=4 expandtab smartindent +set tabstop=4 shiftwidth=4 expandtab smartindent set incsearch hlsearch ignorecase smartcase set wrap set mouse=a @@ -14,23 +16,31 @@ set noshowmode set shortmess+=I set autoindent -hi Normal guibg=NONE ctermbg=NONE guifg=#d7c49a ctermfg=180 -hi NormalNC guibg=NONE ctermbg=NONE guifg=#b2996e ctermfg=137 -hi LineNr guibg=NONE ctermbg=NONE guifg=#a67c00 ctermfg=136 -hi CursorLine guibg=#4b3621 ctermbg=59 guifg=NONE ctermfg=NONE -hi VertSplit guibg=NONE ctermbg=NONE guifg=#5a3e1b ctermfg=94 -hi StatusLine guibg=#3e2f1c guifg=#f0d38c ctermbg=59 ctermfg=223 -hi StatusLineMode guibg=#d35400 guifg=#3e2f1c ctermbg=166 ctermfg=59 gui=bold -hi Visual guibg=#7f5f2a guifg=NONE ctermbg=136 ctermfg=NONE -hi VisualNOS guibg=#7f5f2a guifg=NONE ctermbg=136 ctermfg=NONE -hi VisualSB guibg=#7f5f2a guifg=NONE ctermbg=136 ctermfg=NONE -hi Search guibg=NONE ctermbg=NONE guifg=#d35400 ctermfg=166 -hi IncSearch guibg=NONE ctermbg=NONE guifg=#f39c12 ctermfg=214 -hi Pmenu guibg=NONE ctermbg=NONE guifg=#d7c49a ctermfg=180 -hi PmenuSel guibg=NONE ctermbg=NONE guifg=#3e2f1c ctermbg=59 -hi WildMenu guibg=NONE ctermbg=NONE guifg=#f39c12 ctermfg=214 -hi Folded guibg=NONE ctermbg=NONE guifg=#a67c00 ctermfg=136 -hi SignColumn guibg=NONE ctermbg=NONE guifg=#a35400 ctermfg=172 +set statusline=%#StatusLineMode# +set statusline+=\ %{ModeName()} +set statusline+=%#StatusLine# +set statusline+=\ %f\ %m\ %r\ %y +set statusline+=%= +set statusline+=\ Ln:%l/%L\ Col:%c\ \[%p%%] + +hi Normal guibg=NONE ctermbg=NONE guifg=#dcdfe4 ctermfg=245 +hi NormalNC guibg=NONE ctermbg=NONE guifg=#b0b3b8 ctermfg=245 +hi LineNr guibg=NONE ctermbg=NONE guifg=#a6a8ab ctermfg=245 +hi CursorLine guibg=#3c3f41 ctermbg=59 guifg=NONE ctermfg=NONE +hi VertSplit guibg=NONE ctermbg=NONE guifg=#a6a8ab ctermfg=245 +hi StatusLine guibg=#3c3f41 guifg=#dcdfe4 ctermbg=59 ctermfg=245 +hi StatusLineMode guibg=#5a7f9a guifg=#3c3f41 ctermbg=66 ctermfg=33 gui=bold +hi Visual guibg=#4a545c guifg=NONE ctermbg=67 ctermfg=67 +hi VisualNOS guibg=#4a545c guifg=NONE ctermbg=67 ctermfg=67 +hi VisualSB guibg=#4a545c guifg=NONE ctermbg=67 ctermfg=67 +hi Search guibg=NONE ctermbg=NONE guifg=#5c8cba ctermfg=66 +hi IncSearch guibg=NONE ctermbg=NONE guifg=#7fb3c8 ctermfg=32 +hi Pmenu guibg=NONE ctermbg=NONE guifg=#dcdfe4 ctermfg=245 +hi PmenuSel guibg=NONE ctermbg=NONE guifg=#3c3f41 ctermbg=59 +hi WildMenu guibg=NONE ctermbg=NONE guifg=#5c8cba ctermfg=66 +hi Folded guibg=NONE ctermbg=NONE guifg=#a6a8ab ctermfg=245 +hi SignColumn guibg=NONE ctermbg=NONE guifg=#b0b3b8 ctermfg=245 + function! ModeName() let modeval = mode() @@ -44,14 +54,6 @@ return modeval ==# 'n' ? 'NML ' : \ 'UNKNOWN' endfunction -set statusline= -set statusline+=%#StatusLineMode# -set statusline+=\ %{ModeName()} -set statusline+=%#StatusLine# -set statusline+=\ %f\ %m\ %r\ %y -set statusline+=%= -set statusline+=\ Ln:%l/%L\ Col:%c\ \[%p%%] - let mapleader = "\" nnoremap w \:w nnoremap q \:q @@ -63,12 +65,19 @@ nnoremap k nnoremap l nnoremap cd :Ex +"disable arrow keys +nnoremap +nnoremap +nnoremap +nnoremap + map j gj map k gk set termguicolors set list -set listchars=tab:▸\ ,eol:¬,nbsp:_,trail:⋅ +set listchars= + set backupdir=~/.cache/nvim/backup set directory=~/.cache/nvim/swap set undodir=~/.cache/nvim/undo @@ -87,7 +96,8 @@ set splitright set nobackup set nowritebackup set lazyredraw -call plug#begin('~/.local/share/nvim/plugged') + +call plug#begin('~/.config/nvim/plugged') Plug 'tpope/vim-sensible' Plug 'junegunn/fzf.vim' Plug 'tpope/vim-surround' @@ -95,5 +105,39 @@ Plug 'tpope/vim-commentary' Plug 'jiangmiao/auto-pairs' Plug 'tpope/vim-repeat' Plug 'mattn/emmet-vim' +Plug 'norcalli/nvim-colorizer.lua' +Plug 'nvim-treesitter/nvim-treesitter-textobjects' +Plug 'nvim-treesitter/nvim-treesitter-refactor' +Plug 'nvim-treesitter/nvim-treesitter', {'do': ':TSUpdate'} call plug#end() +lua << EOF +require'colorizer'.setup() +EOF + +lua << EOF +local parsers = require'nvim-treesitter.parsers'.get_parser_configs() +local ensure_installed = {} + +for lang, _ in pairs(parsers) do + if lang ~= "verilog" and lang ~= "ipkg" and lang ~= "gdshader" and + lang ~= "latex" and lang ~= "swift" and lang ~= "mlir" and + lang ~= "ocamllex" and lang ~= "unison" and lang ~= "teal" and + lang ~= "scfg" then + table.insert(ensure_installed, lang) + end +end + +require'nvim-treesitter.configs'.setup { + ensure_installed = ensure_installed, + highlight = { + enable = true, + additional_vim_regex_highlighting = false, + }, + indent = { + enable = true, + }, +} +EOF + +set guicursor=n:hor100A,i:ver100,r:block diff --git a/config/nvim/init.vim.root b/config/nvim/init.vim.root new file mode 100644 index 0000000..9ff3044 --- /dev/null +++ b/config/nvim/init.vim.root @@ -0,0 +1,144 @@ +source ~/.config/nvim/plugged/plug.vim + +set nocompatible +filetype plugin indent on +syntax enable +set encoding=utf-8 +set number relativenumber +set numberwidth=4 +set tabstop=4 shiftwidth=4 expandtab smartindent +set incsearch hlsearch ignorecase smartcase +set wrap +set mouse=a +set scrolloff=5 +set cursorline +set noshowmode +set shortmess+=I +set autoindent + +set statusline=%#StatusLineMode# +set statusline+=\ %{ModeName()} +set statusline+=%#StatusLine# +set statusline+=\ %f\ %m\ %r\ %y +set statusline+=%= +set statusline+=\ Ln:%l/%L\ Col:%c\ \[%p%%] + +hi Normal guibg=NONE ctermbg=NONE guifg=#dcdfe4 ctermfg=245 +hi NormalNC guibg=NONE ctermbg=NONE guifg=#b0b3b8 ctermfg=245 +hi LineNr guibg=NONE ctermbg=NONE guifg=#a6a8ab ctermfg=245 +hi CursorLine guibg=#3c3f41 ctermbg=59 guifg=NONE ctermfg=NONE +hi VertSplit guibg=NONE ctermbg=NONE guifg=#a6a8ab ctermfg=245 +hi StatusLine guibg=#3c3f41 guifg=#dcdfe4 ctermbg=59 ctermfg=245 +hi StatusLineMode guibg=#d85e5e guifg=#ffffff ctermbg=196 ctermfg=15 gui=bold +hi Visual guibg=#4a545c guifg=NONE ctermbg=67 ctermfg=67 +hi VisualNOS guibg=#4a545c guifg=NONE ctermbg=67 ctermfg=67 +hi VisualSB guibg=#4a545c guifg=NONE ctermbg=67 ctermfg=67 +hi Search guibg=NONE ctermbg=NONE guifg=#5c8cba ctermfg=66 +hi IncSearch guibg=NONE ctermbg=NONE guifg=#7fb3c8 ctermfg=32 +hi Pmenu guibg=NONE ctermbg=NONE guifg=#dcdfe4 ctermfg=245 +hi PmenuSel guibg=NONE ctermbg=NONE guifg=#3c3f41 ctermbg=59 +hi WildMenu guibg=NONE ctermbg=NONE guifg=#5c8cba ctermfg=66 +hi Folded guibg=NONE ctermbg=NONE guifg=#a6a8ab ctermfg=245 +hi SignColumn guibg=NONE ctermbg=NONE guifg=#b0b3b8 ctermfg=245 + +hi StatusLine guibg=#5c2f2f guifg=#ffffff ctermbg=88 ctermfg=15 +hi StatusLineMode guibg=#5c2f2f guifg=#ffffff ctermbg=88 ctermfg=15 gui=bold +hi LineNr guibg=NONE ctermbg=NONE guifg=#5c2f2f ctermfg=88 +hi CursorLine guibg=#5c2f2f ctermbg=88 guifg=NONE ctermfg=NONE +hi VertSplit guibg=NONE ctermbg=NONE guifg=#5c2f2f ctermfg=88 +hi Error guibg=NONE ctermbg=NONE guifg=#ff6c6b ctermfg=167 +hi Warning guibg=NONE ctermbg=NONE guifg=#e0af68 ctermfg=180 + +autocmd VimEnter * if $USER == "root" | highlight Normal guibg=#5c2f2f guifg=#ffffff | endif + +function! ModeName() +let modeval = mode() +return modeval ==# 'n' ? 'NML ' : +\ modeval ==# 'i' ? 'INT ' : +\ modeval ==# 'v' ? 'VSL ' : +\ modeval ==# 'V' ? 'VLI ' : +\ modeval ==# "\" ? 'VBL ' : +\ modeval ==# 'R' ? 'RPL ' : +\ modeval ==# 'c' ? 'CMD ' : +\ 'UNKNOWN' +endfunction + +let mapleader = "\" +nnoremap w \:w +nnoremap q \:q +nnoremap h \:nohlsearch +nnoremap n \:set relativenumber! +nnoremap h +nnoremap j +nnoremap k +nnoremap l +nnoremap cd :Ex + +map j gj +map k gk + +set termguicolors +set list +set listchars= + +set backupdir=~/.cache/nvim/backup +set directory=~/.cache/nvim/swap +set undodir=~/.cache/nvim/undo +set undofile +set wrapscan +set shortmess+=c +set autoread +set cmdheight=1 +set belloff=all +set laststatus=2 +set smoothscroll +set scrolljump=3 +set hidden +set splitbelow +set splitright +set nobackup +set nowritebackup +set lazyredraw + +call plug#begin('~/.config/nvim/plugged') +Plug 'tpope/vim-sensible' +Plug 'junegunn/fzf.vim' +Plug 'tpope/vim-surround' +Plug 'tpope/vim-commentary' +Plug 'jiangmiao/auto-pairs' +Plug 'tpope/vim-repeat' +Plug 'mattn/emmet-vim' +Plug 'norcalli/nvim-colorizer.lua' +Plug 'nvim-treesitter/nvim-treesitter-textobjects' +Plug 'nvim-treesitter/nvim-treesitter-refactor' +Plug 'nvim-treesitter/nvim-treesitter', {'do': ':TSUpdate'} +call plug#end() + +lua << EOF +require'colorizer'.setup() +EOF + +lua << EOF +local parsers = require'nvim-treesitter.parsers'.get_parser_configs() +local ensure_installed = {} + +for lang, _ in pairs(parsers) do + if lang ~= "verilog" and lang ~= "ipkg" and lang ~= "gdshader" and + lang ~= "latex" and lang ~= "swift" and lang ~= "mlir" and + lang ~= "ocamllex" and lang ~= "unison" and lang ~= "teal" and + lang ~= "scfg" then + table.insert(ensure_installed, lang) + end +end + +require'nvim-treesitter.configs'.setup { + ensure_installed = ensure_installed, + highlight = { + enable = true, + additional_vim_regex_highlighting = false, + }, + indent = { + enable = true, + }, +} +EOF diff --git a/suckless/st/config.h b/suckless/st/config.h index 58a801d..5b09c60 100644 --- a/suckless/st/config.h +++ b/suckless/st/config.h @@ -93,15 +93,11 @@ char *termname = "st-256color"; */ unsigned int tabspaces = 8; -/* bg opacity */ -float alpha = 0.8; - -/* Background opacity */ +/*opacity*/ +float alpha = 0.9; float alpha_def; -/* Terminal colors (16 first used in escape sequence) */ static const char *colorname[] = { - /* 8 normal colors */ "#282828", "#fb4934", "#b8bb26", @@ -111,7 +107,6 @@ static const char *colorname[] = { "#8ec07c", "#ebdbb2", - /* 8 bright colors */ "#3c3836", "#cc241d", "#98971a", @@ -122,8 +117,8 @@ static const char *colorname[] = { "#f9f5d7", [255] = 0, - "#ebdbb2", // foreground (light creamy) - "#1a1a1a", // background (dark moody grey, almost black but not) + "#ebdbb2", + "#1a1a1a", }; /* @@ -142,7 +137,7 @@ static unsigned int defaultrcs = 257; * 6: Bar ("|") * 7: Snowman ("☃") */ -static unsigned int cursorshape = 2; +static unsigned int cursorshape = 4; /* * Default columns and rows numbers diff --git a/suckless/st/st b/suckless/st/st index afd36a3..78ff925 100755 Binary files a/suckless/st/st and b/suckless/st/st differ diff --git a/suckless/st/x.o b/suckless/st/x.o index dd7e5c1..f6cae31 100644 Binary files a/suckless/st/x.o and b/suckless/st/x.o differ