From e7b4f6099dada5ff1bf8f3f6f1dba0f4606bab5a Mon Sep 17 00:00:00 2001 From: Adam Jeniski Date: Tue, 19 Jul 2022 14:54:07 -0400 Subject: [PATCH] setup i3 on RHEL --- .config/i3/config | 14 ++++++------ .config/i3blocks/config | 18 ++++++++++------ .config/nvim/init.lua | 48 ++++++++++++++++++++++++++++++----------- .scripts/blocks/media | 2 +- 4 files changed, 56 insertions(+), 26 deletions(-) diff --git a/.config/i3/config b/.config/i3/config index e31c955..5481fb3 100644 --- a/.config/i3/config +++ b/.config/i3/config @@ -34,14 +34,16 @@ exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock --nofork # and nm-applet is a desktop environment-independent system tray GUI for it. exec --no-startup-id nm-applet +exec --no-startup-id bash ~/bin/connect-ibm-vpn.sh + # setup monitors -exec --no-startup-id ~/.scripts/setup/startxrandr +#exec --no-startup-id ~/.scripts/setup/startxrandr # run compositor -exec --no-startup-id picom +#exec --no-startup-id picom # setup wallpaper -exec --no-startup-id ~/.scripts/setup/wallpaper ~/Pictures/Wallpapers/bg.jpg +#exec --no-startup-id ~/.scripts/setup/wallpaper ~/Pictures/Wallpapers/bg.jpg # Use pactl to adjust volume in PulseAudio. set $refresh_i3status killall -SIGUSR1 i3status @@ -54,7 +56,7 @@ bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOU floating_modifier $mod # start a terminal -bindsym $mod+Return exec i3-sensible-terminal +bindsym $mod+Return exec ~/.local/bin/alacritty # kill focused window bindsym $mod+q kill @@ -199,7 +201,7 @@ bindsym $mod+r mode "resize" bar { status_command i3blocks font pango:monospace 10 - tray_output primary - position top + tray_output primary + position top } diff --git a/.config/i3blocks/config b/.config/i3blocks/config index 8b8eee8..47dc570 100644 --- a/.config/i3blocks/config +++ b/.config/i3blocks/config @@ -3,13 +3,19 @@ separator_block_width=15 markup=none [volume] -label=🔊 +label=🔊 command=pactl list sinks | rg -e Volume: | head -n 1 | sed -r 's/.* ([0-9]+%).*/\1/' color=#A8DFEA interval=1 +[battery] +label=🔋 +command=upower -d | rg -e percentage | sed -r 's/.* ([0-9]+%).*/\1/' +color=#A8DFEA +interval=15 + [media] -label=🎵 +label=🎵 color=#D5A3F7 interval=1 @@ -19,20 +25,20 @@ color=#A4C2F4 interval=900 [ip] -label=🖥️ -command=hostname -i | awk '{ print $1 }' +label=🖥️ +command=hostname -I | awk '{ print $1 }' color=#b0ecf2 interval=once [date] -label=📅 +label=📅 command=date "+%a %D" color=#e4cbf4 interval=60 # Update time every 1 seconds [time] -label=🕕 +label=🕕 command=date "+%H:%M" color=#A4C2F4 interval=60 diff --git a/.config/nvim/init.lua b/.config/nvim/init.lua index f18236f..c696c23 100644 --- a/.config/nvim/init.lua +++ b/.config/nvim/init.lua @@ -1,6 +1,5 @@ -- Basics vim.g.mapleader = " " - vim.opt.incsearch = true vim.opt.hlsearch = true vim.opt.ignorecase = true @@ -16,8 +15,6 @@ vim.o.laststatus = 2 -- always show statusline (even with only singl vim.o.ruler = true -- show line and column number of the cursor on right side of statusline vim.o.visualbell = true -- blink cursor on error, instead of beeping vim.cmd('set invlist') - - vim.api.nvim_set_var("toggle_syntax_state", true) -- Plugins @@ -38,6 +35,9 @@ vim.call('plug#begin', '~/.config/nvim/plugged') Plug 'nvim-telescope/telescope.nvim' -- fancy fuzzyfinder Plug('nvim-telescope/telescope-fzf-native.nvim', { ['do'] = 'make' }) -- faster fzf + -- Git Integration + Plug 'airblade/vim-gitgutter' + -- LSP Plug "williamboman/nvim-lsp-installer" Plug 'neovim/nvim-lspconfig' @@ -63,6 +63,7 @@ vim.call('plug#end') -- set colorscheme vim.cmd(':colorscheme dogrun') +vim.cmd(':highlight LineNr ctermfg=grey') -- setup Airline vim.cmd('let g:airline#extensions#tabline#enabled = 1') @@ -80,7 +81,6 @@ require'nvim-treesitter.configs'.setup { -- luasnip setup local luasnip = require 'luasnip' --- setup LSP local cmp = require'cmp' cmp.setup({ snippet = { @@ -93,6 +93,7 @@ cmp.setup({ [''] = cmp.mapping.scroll_docs(-4), [''] = cmp.mapping.scroll_docs(4), [''] = cmp.mapping.complete(), + [''] = cmp.mapping.select_next_item(), [''] = cmp.mapping.abort(), [''] = cmp.mapping.confirm({ select = true }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items. }), @@ -102,7 +103,8 @@ cmp.setup({ { name = 'buffer' } }) }) -local opts = { noremap=true, silent=true } + +-- setup LSP local opts = { noremap=true, silent=true } vim.keymap.set('n', 'e', vim.diagnostic.open_float, opts) vim.keymap.set('n', '[d', vim.diagnostic.goto_prev, opts) @@ -145,7 +147,25 @@ require("nvim-lsp-installer").setup { } local lspconfig = require("lspconfig") -lspconfig.sumneko_lua.setup {} +lspconfig.sumneko_lua.setup { + settings = { + Lua = { + diagnostics = { + globals = { 'vim' }, + }, + runtime = { + version = 'LuaJIT', + }, + telemetry = { + enable = false, + }, + workspace = { + library = vim.api.nvim_get_runtime_file("", true), + } + } + }, + on_attach = on_attach, +} lspconfig.tsserver.setup{ on_attach = on_attach, } @@ -164,7 +184,6 @@ require('rust-tools').setup{ }, server = { on_attach = on_attach, - flags = lsp_flags, settings = { ["rust-analyzer"] = { checkOnSave = { @@ -193,9 +212,6 @@ telescope.setup({ [""] = actions.close, }, }, - file_ignore_patterns = { - "node_modules" - } }, pickers = {}, extensions = {}, @@ -203,7 +219,6 @@ telescope.setup({ telescope.load_extension('fzf') -- keymaps -local opts = { noremap=true, silent=true } local loud_opts = { noremap=true } vim.keymap.set("n", "", ":wa:echo 'File saved.'", loud_opts) vim.keymap.set("n", "", ":NERDTreeToggle", opts) @@ -216,12 +231,19 @@ vim.keymap.set("n", "gT", ":bp", opts) vim.keymap.set("n", "", ":nohlsearch", opts) vim.keymap.set("n", "ff", ":Telescope find_files", opts) vim.keymap.set('n', 'fk', ':Telescope keymaps', opts) -vim.keymap.set("n", "", ":Telescope find_files", opts) +vim.keymap.set("n", "", ":Telescope git_files", opts) +vim.keymap.set("n", "fc", ":Telescope git") vim.keymap.set("n", "fg", ":Telescope live_grep", opts) -vim.keymap.set("n", "fb", ":Telescope buffers", opts) +vim.keymap.set("n", "fbc", ":Telescope git_bcommits", opts) +vim.keymap.set("n", "fc", ":Telescope git_commits", opts) vim.keymap.set("i", "", "", opts) vim.keymap.set('n', 'e', vim.diagnostic.open_float, opts) vim.keymap.set('n', '[d', vim.diagnostic.goto_prev, opts) vim.keymap.set('n', ']d', vim.diagnostic.goto_next, opts) vim.keymap.set('n', 'q', vim.diagnostic.setloclist, opts) vim.keymap.set("n", "", ":nohlsearch", opts) +vim.keymap.set("n", "]h", "(GitGutterNextHunk)") +vim.keymap.set("n", "[h", "(GitGutterPrevHunk)") +vim.keymap.set("n", "gd", ":GitGutterDiffOrig") +vim.keymap.set("n", "gf", ":GitGutterFold") + diff --git a/.scripts/blocks/media b/.scripts/blocks/media index f1b4d52..71815e0 100755 --- a/.scripts/blocks/media +++ b/.scripts/blocks/media @@ -2,7 +2,7 @@ pactl list | \ rg -e media.name | \ - rg -v -e recStream -e playStream -e Playback -e playback | \ + rg -v -e recStream -e playStream -e Playback -e playback -e RecordStream | \ tail -n 1 | \ sed -r 's/^.*= "(.*)"$/\1/' | \ sed 's/\\"/"/g'