diff --git a/user/.bash_profile b/user/.bash_profile index df877e96a..974b007d8 100644 --- a/user/.bash_profile +++ b/user/.bash_profile @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/bash ## ____ __ ## / __ \_________ _/ /_____ ## / / / / ___/ __ `/ //_/ _ \ @@ -7,15 +7,15 @@ ## ### STARTING XSESSION -if [ -z $DISPLAY ] && [ "$(tty)" = "/dev/tty1" ] +if [ -z "$DISPLAY" ] && [ "$(tty)" = "/dev/tty1" ] then startx -- vt1 -keeptty &>/dev/null logout fi ### ENVIRONMENT VARIABLES -export EDITOR="emacsclient -t -a ''" # $EDITOR use Emacs in terminal -export VISUAL="emacsclient -c -a emacs" # $VISUAL use Emacs in GUI mode +export EDITOR="lvim" # $EDITOR use lunarvim in terminal +export VISUAL="neovide --neovim-bin ./.local/bin/lvim" # $VISUAL use neovide for lunarvim in GUI export XDG_DATA_HOME="${XDG_DATA_HOME:="$HOME/.local/share"}" export XDG_CACHE_HOME="${XDG_CACHE_HOME:="$HOME/.cache"}" export XDG_CONFIG_HOME="${XDG_CONFIG_HOME:="$HOME/.config"}" diff --git a/user/.bashrc b/user/.bashrc index 2b25c3fea..deb8e6da9 100644 --- a/user/.bashrc +++ b/user/.bashrc @@ -17,7 +17,7 @@ export HISTCONTROL=ignoredups:erasedups # no duplicate entries [[ $- != *i* ]] && return # use neovim for vim if present. -[ -x "$(command -v nvim)" ] && alias vim="nvim" vimdiff="nvim -d" +[ -x "$(command -v lvim)" ] && alias vim="lvim" vimdiff="lvim -d" # use $XINITRC variable if file exists. [ -f "$XINITRC" ] && alias startx="startx $XINITRC" @@ -130,11 +130,11 @@ alias \ # Changing "ls" to "exa" alias \ - ls="exa -al --color=always --group-directories-first" \ - la="exa -a --color=always --group-directories-first" \ - ll="exa -l --color=always --group-directories-first" \ - lt="exa -aT --color=always --group-directories-first" \ - l.='exa -a | egrep "^\."' + ls="exa -al --icons --color=always --group-directories-first" \ + la="exa -a --icons --color=always --group-directories-first" \ + ll="exa -l --icons --color=always --group-directories-first" \ + lt="exa -aT --icons --color=always --group-directories-first" \ + l.='exa -a | grep -E "^\."' # function to detect os and assign aliases to package managers alias \ diff --git a/user/.config/awesome/apps.lua b/user/.config/awesome/apps.lua index 16a102dec..2ac4fbf6b 100644 --- a/user/.config/awesome/apps.lua +++ b/user/.config/awesome/apps.lua @@ -1,16 +1,16 @@ -- Apps local apps = { - terminal = "alacritty", - editor = "emacsclient -c -a emacs", - music = "alacritty -t musik --class musik,musik -e cmus", - youm = "alacritty --title youm --class youm,youm -e ytfzf -mlst", - ytfzf = "alacritty --title ytfzf --class ytfzf,ytfzf -e ytfzf -flst", - ani = "alacritty --title ani-cli --class ani-cli,ani-cli -e ani-cli", - flix = "alacritty --title flix-cli --class flix-cli,flix-cli -e flix-cli", + terminal = "wezterm", + editor = "neovide --neovim-bin ./.local/bin/lvim", + music = "wezterm start --class musik -- cmus", + youm = "wezterm start --class youm -- ytfzf -mlstT chafa", + ytfzf = "wezterm start --class ytfzf -- ytfzf -flstT chafa", + ani = "wezterm start --class ani-cli -- ani-cli", + flix = "wezterm start --class flix-cli -- flix-cli", chat = "revolt-desktop", game = "retroarch", - file = "alacritty -t vifm --class vifm,vifm -e ./.config/vifm/scripts/vifmrun", - browser = "brave", + file = "wezterm start --class vifm -- ./.config/vifm/scripts/vifmrun", + browser = "firefox", office = "libreoffice" } return apps diff --git a/user/.config/awesome/helpers.lua b/user/.config/awesome/helpers.lua index 8fae9123e..528c4be4f 100644 --- a/user/.config/awesome/helpers.lua +++ b/user/.config/awesome/helpers.lua @@ -18,14 +18,14 @@ naughty.connect_signal( -- {{{ Signals -- No borders when rearranging only 1 non-floating or maximized client screen.connect_signal( - "arrange", - function (s) - local max = s.selected_tag.layout.name == "max" - local only_one = #s.tiled_clients == 1 -- use tiled_clients so that other floating windows don't affect the count - -- but iterate over clients instead of tiled_clients as tiled_clients doesn't include maximized windows - for _, c in pairs(s.clients) do - if (max or only_one) and not c.floating or c.maximized then - c.border_width = 0 + "arrange", + function (s) + local max = s.selected_tag.layout.name == "max" + local only_one = #s.tiled_clients == 1 -- use tiled_clients so that other floating windows don't affect the count + -- but iterate over clients instead of tiled_clients as tiled_clients doesn't include maximized windows + for _, c in pairs(s.clients) do + if (max or only_one) and not c.floating or c.maximized then + c.border_width = 0 else c.border_width = beautiful.border_width end diff --git a/user/.config/awesome/ui/bar.lua b/user/.config/awesome/ui/bar.lua index 2809d9e90..731adeabb 100644 --- a/user/.config/awesome/ui/bar.lua +++ b/user/.config/awesome/ui/bar.lua @@ -9,15 +9,15 @@ screen.connect_signal("request::desktop_decoration", function(s) -- Tag names for each screen awful.tag( { - "", -- EDITOR - "", -- FILE MANAGER - "爵", -- WEB BROWSER - "", -- CHAT - "ﱘ", -- MUSIC - "", -- VIDEO - "פֿ", -- IMAGE/EDIT TOOLS - "", -- OFFICE - "" -- GAMES + "", -- EDITOR + "", -- FILE MANAGER + "󰖟", -- WEB BROWSER + "󰻞", -- CHAT + "󰲹", -- MUSIC + "", -- VIDEO + "󰲶", -- IMAGE/EDIT TOOLS + "󰧮", -- OFFICE + "󰸶" -- GAMES }, s, awful.layout.layouts[1] diff --git a/user/.config/awesome/ui/layouts.lua b/user/.config/awesome/ui/layouts.lua index 498f634bb..47c3bcd38 100644 --- a/user/.config/awesome/ui/layouts.lua +++ b/user/.config/awesome/ui/layouts.lua @@ -26,3 +26,4 @@ tag.connect_signal( end ) -- }}} + diff --git a/user/.config/awesome/ui/rules.lua b/user/.config/awesome/ui/rules.lua index 4738ace16..4a371f402 100644 --- a/user/.config/awesome/ui/rules.lua +++ b/user/.config/awesome/ui/rules.lua @@ -52,12 +52,13 @@ ruled.client.connect_signal( rule_any = { class = { "Emacs", + "lvim", "Godot", "neovim", "Virt-manager" } }, - properties = { tag = "" }, + properties = { tag = "" }, } -- TAG 2 ruled.client.append_rule { @@ -68,7 +69,7 @@ ruled.client.connect_signal( "nemo" } }, - properties = { tag = "" }, + properties = { tag = "" }, } -- TAG 3 ruled.client.append_rule { @@ -77,13 +78,14 @@ ruled.client.connect_signal( "Brave-browser", "librewolf", "firefox", + "Luakit", "Chromium", "Bitwarden", "qutebrowser", "tut" } }, - properties = { tag = "爵" } + properties = { tag = "󰖟" } } -- TAG 4 ruled.client.append_rule { @@ -95,7 +97,7 @@ ruled.client.connect_signal( "Element" } }, - properties = { tag = "" } + properties = { tag = "󰻞" } } -- TAG 5 ruled.client.append_rule { @@ -110,7 +112,7 @@ ruled.client.connect_signal( "Carla2-Control" } }, - properties = { tag = "ﱘ" } + properties = { tag = "󰲹" } } -- TAG 6 ruled.client.append_rule { @@ -128,7 +130,7 @@ ruled.client.connect_signal( "ytfzf" } }, - properties = { tag = "" } + properties = { tag = "" } } -- TAG 7 ruled.client.append_rule { @@ -143,7 +145,7 @@ ruled.client.connect_signal( "Xournalpp", } }, - properties = { tag = "פֿ" } + properties = { tag = "󰲶" } } -- TAG 8 ruled.client.append_rule { @@ -155,7 +157,7 @@ ruled.client.connect_signal( "Joplin" } }, - properties = { tag = "" } + properties = { tag = "󰧮" } } -- TAG 9 ruled.client.append_rule { @@ -175,7 +177,7 @@ ruled.client.connect_signal( "steam" } }, - properties = { tag = "" } + properties = { tag = "󰸶" } } --}}} end diff --git a/user/.config/awesome/ui/theme.lua b/user/.config/awesome/ui/theme.lua index 0e34396c8..17bbcb290 100644 --- a/user/.config/awesome/ui/theme.lua +++ b/user/.config/awesome/ui/theme.lua @@ -34,8 +34,8 @@ theme.bg_urgent = "#a89984" -- {{{ Borders beautiful.gap_single_client = false -theme.useless_gap = dpi(0) -theme.border_width = dpi(1) +theme.useless_gap = dpi(4) +theme.border_width = dpi(1.5) theme.border_normal = "#504945" theme.border_focus = "#cc241d" theme.border_marked = "#cc241d" diff --git a/user/.config/awesome/ui/widgets/battery b/user/.config/awesome/ui/widgets/battery index a0e25558a..2879bcf43 100755 --- a/user/.config/awesome/ui/widgets/battery +++ b/user/.config/awesome/ui/widgets/battery @@ -1,14 +1,22 @@ #!/bin/bash # Loop through all attached batteries and format the info +currntpwr=$(powerprofilesctl get) +if [ "${currntpwr}" = "performance" ]; then + pwr=" 󰇙 󰓅 Performance" +elif [ "${currntpwr}" = "balanced" ]; then + pwr=" 󰇙 󰾅 Balanced" +elif [ "${currntpwr}" = "power-saver" ]; then + pwr=" 󰇙 󰾆 PowerSaver" +fi for battery in /sys/class/power_supply/BAT?*; do # If non-first battery, print a space separator. [ -n "${capacity+x}" ] && printf " " # Sets up the status and capacity case "$(cat "$battery/status" 2>&1)" in "Full") status=" " ;; - "Discharging") status=" " ;; - "Charging") status=" " ;; - "Not charging") status=" " ;; + "Discharging") status=" " ;; + "Charging") status=" " ;; + "Not charging") status=" " ;; "Unknown") status=" " ;; *) exit 1 ;; esac @@ -16,5 +24,5 @@ for battery in /sys/class/power_supply/BAT?*; do # Will make a warn variable if discharging and low [ "$status" = " " ] && [ "$capacity" -le 100 ] && warn="" # Prints the info - printf "%s%s%d%%%s" "$status" "$warn " "$capacity"; unset warn + printf "%s%s%d%%%s" "$status" "$warn " "$capacity" "$pwr"; unset warn done && printf "\\n" diff --git a/user/.config/awesome/ui/widgets/brightness b/user/.config/awesome/ui/widgets/brightness index 6a1b85320..64ad5d95f 100755 --- a/user/.config/awesome/ui/widgets/brightness +++ b/user/.config/awesome/ui/widgets/brightness @@ -1,10 +1,10 @@ #!/bin/bash brt=$(xbacklight -get) if [ "$brt" = "100.000000" ]; then - icon="" + icon="󰃠" elif [ "$brt" \> "50%.*" ]; then - icon="" + icon="󰃟" elif [ "$brt" \< "49%.*" ]; then - icon="" + icon="󰃞" fi echo "$icon ${brt%.*}%" diff --git a/user/.config/awesome/ui/widgets/layout b/user/.config/awesome/ui/widgets/layout index 3aaec1663..09af16d43 100755 --- a/user/.config/awesome/ui/widgets/layout +++ b/user/.config/awesome/ui/widgets/layout @@ -1,3 +1,3 @@ #!/bin/bash layout=$(setxkbmap -query | grep -oP 'layout:\s*\K\w+'); -echo " $layout" | tr '[:lower:]' '[:upper:]'; +echo "󰥻 $layout" | tr '[:lower:]' '[:upper:]'; diff --git a/user/.config/awesome/ui/widgets/volume b/user/.config/awesome/ui/widgets/volume index 8d12e5a30..794ed634c 100755 --- a/user/.config/awesome/ui/widgets/volume +++ b/user/.config/awesome/ui/widgets/volume @@ -1,14 +1,14 @@ #!/bin/bash # Prints the current volume or 🔇 if muted. -[ "$(pamixer --get-mute)" = true ] && echo " " && exit +[ "$(pamixer --get-mute)" = true ] && echo "󰸈" && exit vol="$(pamixer --get-volume)" if [ "$vol" -gt "50" ]; then - icon="" + icon="󰕾" elif [ "$vol" -gt "10" ]; then - icon="" + icon="󰖀" elif [ "$vol" -gt "0" ]; then - icon="" + icon="󰕿" else - echo "  " && exit + echo "󰸈" && exit fi echo -e "$icon $vol%" diff --git a/user/.config/awesome/ui/widgets/wifi b/user/.config/awesome/ui/widgets/wifi index b6773a915..2051dae01 100755 --- a/user/.config/awesome/ui/widgets/wifi +++ b/user/.config/awesome/ui/widgets/wifi @@ -3,9 +3,9 @@ constate=$(nmcli dev | grep wifi | sed 's/ \{2,\}/|/g' | cut -d '|' -f3 | head - currentwfi=$(nmcli dev | grep wifi | sed 's/ \{2,\}/|/g' | cut -d '|' -f4 | head -1) if [ "$constate" = "disconnected" ]; then - echo "睊 " + echo "󰤮 " elif [ "$constate" = "connected" ]; then - echo "直 $currentwfi" + echo "󰤥 $currentwfi" else - echo "睊 " + echo "󰤮 " fi diff --git a/user/.config/fish/config.fish b/user/.config/fish/config.fish index 1a82b39cd..8dc49e000 100644 --- a/user/.config/fish/config.fish +++ b/user/.config/fish/config.fish @@ -9,13 +9,13 @@ # First line removes the path; second line sets it. Without the first line, # your path gets massive and fish becomes very slow. set -e fish_user_paths -set -U fish_user_paths $HOME/.bin $HOME/.local/bin $HOME/.emacs.d/bin $HOME/Applications /var/lib/flatpak/exports/bin/ $fish_user_paths +set -U fish_user_paths $HOME/.bin $HOME/.local/bin $HOME/.config/emacs/bin $HOME/Applications /var/lib/flatpak/exports/bin/ $fish_user_paths ### EXPORT ### -set fish_greeting # Supresses fish's intro message -set TERM "xterm-256color" # Sets the terminal type -set EDITOR "emacsclient -t -a ''" # $EDITOR use Emacs in terminal -set VISUAL "emacsclient -c -a emacs" # $VISUAL use Emacs in GUI mode +set fish_greeting # Supresses fish's intro message +set TERM "xterm-256color" # Sets the terminal type +set EDITOR "lvim" # $EDITOR use lvim in terminal +set VISUAL "neovide --neovim-bin ./.local/bin/lvim" # $VISUAL use neovide for lvim in GUI mode ### SET BAT AS MANPAGER set -x MANPAGER "sh -c 'col -bx | bat -l man -p'" @@ -126,10 +126,8 @@ alias .4='cd ../../../..' alias .5='cd ../../../../..' # vim and emacs -alias vim='nvim' -alias vimdiff='nvim -d' -alias em='/usr/bin/emacs -nw' -alias emacs="emacsclient -c -a 'emacs'" +alias vim='lvim' +alias vimdiff='lvim -d' # newsboat alias newsboat='newsboat -u ~/.config/newsboat/urls' @@ -152,6 +150,9 @@ alias pac-rmv-sec='paru -R' # alias pac-qry='paru -Ss' # search for a program alias pac-cln='paru -Scc && paru -Rns (pacman -Qtdq)' # clean cache & remove orphaned packages +# neofetch is f***** slow +alias neofetch="pfetch" + # Colorize grep output (good for log files) alias grep='grep --color=auto' alias egrep='egrep --color=auto' diff --git a/user/.config/hilbish/init.lua b/user/.config/hilbish/init.lua new file mode 100644 index 000000000..0a5cc79d5 --- /dev/null +++ b/user/.config/hilbish/init.lua @@ -0,0 +1,118 @@ +-- Default Hilbish config +local hilbish = require 'hilbish' +local lunacolors = require 'lunacolors' +local bait = require 'bait' +local ansikit = require 'ansikit' + +local function doPrompt(fail) + hilbish.prompt( + lunacolors.format( + '{yellow}%u {white}in {red}%h {white}in {italic}{blue}%d ' .. (fail and '{red}' or '{green}') .. ' ' + ) + ) +end + +doPrompt() + +bait.catch('command.exit', function(code) + doPrompt(code ~= 0) +end) + + +bait.catch( + 'hilbish.vimMode', + function(mode) + if mode ~= 'insert' then + ansikit.cursorStyle(ansikit.blockCursor) + else + ansikit.cursorStyle(ansikit.lineCursor) + end +end +) + +local aliases = { + cat = "bat", + vim = "lvim", + ls = 'exa -al --icons --color=always --group-directories-first', + la = 'exa -a --icons --color=always --group-directories-first', + ll = 'exa -l --icons --color=always --group-directories-first', + lt = 'exa -aT --icons --color=always --group-directories-first', + pkupd = 'paru -Syyu', + pkget = 'paru -S', + pkrmv = 'paru -Rcns', + pksrc = 'paru -Ss', + pkcln = 'paru -Scc', + tree = 'ls --tree', + grep = 'grep --color=auto', + egrep = 'egrep --color=auto', + fgrep = 'fgrep --color=auto', + neofetch = 'pfetch', + addup = 'git add -u', + addall = 'git add .', + branch = 'git branch', + checkout = 'git checkout', + clone = 'git clone', + commit = 'git commit -m', + fetch = 'git fetch', + pull = 'git pull origin', + push = 'git push origin', + stat = 'git status', + tag = 'git tag', + newtag = 'git tag -a', + df = 'df -h', + free = 'free -m', + newsboat = 'newsboat -u ~/.config/newsboat/urls', + fli = 'flix-cli', + ani = 'ani-cli', + aniq = 'ani-cli -q', + mx = 'pulsemixer', + amx = 'alsamixer', + mk = 'cmus', + ms = 'cmus', + music = 'cmus', + po = 'systemctl poweroff', + sp = 'systemctl suspend', + rb = 'systemctl reboot', + fm ='$HOME/.config/vifm/scripts/vifmrun', + file ='$HOME/.config/vifm/scripts/vifmrun', + flm = '$HOME/.config/vifm/scripts/vifmrun', + vifm = '$HOME/.config/vifm/scripts/vifmrun', + rm = 'rm -vI', + mv = 'mv -iv', + cp = 'cp -iv', + mkd = 'mkdir -pv', + psa = 'ps auxf', + psgrep = 'ps aux | grep -v grep | grep -i -e VSZ -e', + psmem = 'ps auxf | sort -nr -k 4', + pscpu = 'ps auxf | sort -nr -k 3', + yta_aac = 'yt-dlp --extract-audio --audio-format aac', + yta_best = 'yt-dlp --extract-audio --audio-format best', + yta_flac = 'yt-dlp --extract-audio --audio-format flac', + yta_m4a = 'yt-dlp --extract-audio --audio-format m4a', + yta_mp3 = 'yt-dlp --extract-audio --audio-format mp3', + yta_opus = 'yt-dlp --extract-audio --audio-format opus', + yta_vorbis = 'yt-dlp --extract-audio --audio-format vorbis', + yta_wav = 'yt-dlp --extract-audio --audio-format wav', + ytv_best = 'yt-dlp -f bestvideo+bestaudio', + yt = 'ytfzf -ftsl', + ytm = 'ytfzf -mts', + netstats = 'nmcli dev', + wfi = 'nmtui-connect', + wfi_scan = 'nmcli dev wifi rescan && nmcli dev wifi list', + wfi_edit = 'nmtui-edit', + wfi_on = 'nmcli radio wifi on', + wfi_off = 'nmcli radio wifi off', + blt = 'bluetoothct', +} + +local function load_table (table) + for cmd, new_cmd in pairs(table) do + hilbish.alias(cmd, new_cmd) + end +end + +local function load_aliases () + load_table(aliases) +end + +load_aliases() diff --git a/user/.config/lvim/config.lua b/user/.config/lvim/config.lua new file mode 100644 index 000000000..b8219466b --- /dev/null +++ b/user/.config/lvim/config.lua @@ -0,0 +1,186 @@ +--[[ +lvim is the global options object + +Linters should be +filled in as strings with either +a global executable or a path to +an executable +]] +-- THESE ARE EXAMPLE CONFIGS FEEL FREE TO CHANGE TO WHATEVER YOU WANT + +-- general +vim.opt.guifont = { "mononoki Nerd Font", ":h7" } +lvim.log.level = "warn" +lvim.format_on_save.enabled = false +lvim.colorscheme = "gruvbox" +lvim.transparent_window = false +-- to disable icons and use a minimalist setup, uncomment the following +-- lvim.use_icons = false + +-- keymappings [view all the defaults by pressing Lk] +lvim.leader = "space" +-- add your own keymapping +lvim.keys.normal_mode[""] = ":w" +-- lvim.keys.normal_mode[""] = ":BufferLineCycleNext" +-- lvim.keys.normal_mode[""] = ":BufferLineCyclePrev" +-- unmap a default keymapping +-- vim.keymap.del("n", "") +-- override a default keymapping +-- lvim.keys.normal_mode[""] = ":q" -- or vim.keymap.set("n", "", ":q" ) + +-- Change Telescope navigation to use j and k for navigation and n and p for history in both input and normal mode. +-- we use protected-mode (pcall) just in case the plugin wasn't loaded yet. +-- local _, actions = pcall(require, "telescope.actions") +-- lvim.builtin.telescope.defaults.mappings = { +-- -- for input mode +-- i = { +-- [""] = actions.move_selection_next, +-- [""] = actions.move_selection_previous, +-- [""] = actions.cycle_history_next, +-- [""] = actions.cycle_history_prev, +-- }, +-- -- for normal mode +-- n = { +-- [""] = actions.move_selection_next, +-- [""] = actions.move_selection_previous, +-- }, +-- } + +-- Change theme settings +-- lvim.builtin.theme.options.dim_inactive = true +-- lvim.builtin.theme.options.style = "storm" + +-- Use which-key to add extra bindings with the leader-key prefix +-- lvim.builtin.which_key.mappings["P"] = { "Telescope projects", "Projects" } +-- lvim.builtin.which_key.mappings["t"] = { +-- name = "+Trouble", +-- r = { "Trouble lsp_references", "References" }, +-- f = { "Trouble lsp_definitions", "Definitions" }, +-- d = { "Trouble document_diagnostics", "Diagnostics" }, +-- q = { "Trouble quickfix", "QuickFix" }, +-- l = { "Trouble loclist", "LocationList" }, +-- w = { "Trouble workspace_diagnostics", "Workspace Diagnostics" }, +-- } + +-- TODO: User Config for predefined plugins +-- After changing plugin config exit and reopen LunarVim, Run :PackerInstall :PackerCompile +lvim.builtin.alpha.active = true +lvim.builtin.alpha.mode = "dashboard" +lvim.builtin.terminal.active = true +lvim.builtin.nvimtree.setup.view.side = "left" +lvim.builtin.nvimtree.setup.renderer.icons.show.git = false + +-- if you don't want all the parsers change this to a table of the ones you want +lvim.builtin.treesitter.ensure_installed = { + "bash", + "c", + "javascript", + "json", + "lua", + "python", + "typescript", + "tsx", + "css", + "rust", + "java", + "yaml", + "toml", +} + +lvim.builtin.treesitter.ignore_install = { "haskell" } +lvim.builtin.treesitter.highlight.enable = true + +-- generic LSP settings + +-- -- make sure server will always be installed even if the server is in skipped_servers list +-- lvim.lsp.installer.setup.ensure_installed = { +-- "sumneko_lua", +-- "jsonls", +-- } +-- -- change UI setting of `LspInstallInfo` +-- -- see +-- lvim.lsp.installer.setup.ui.check_outdated_servers_on_open = false +-- lvim.lsp.installer.setup.ui.border = "rounded" +-- lvim.lsp.installer.setup.ui.keymaps = { +-- uninstall_server = "d", +-- toggle_server_expand = "o", +-- } + +-- ---@usage disable automatic installation of servers +-- lvim.lsp.installer.setup.automatic_installation = false + +-- ---configure a server manually. !!Requires `:LvimCacheReset` to take effect!! +-- ---see the full default list `:lua print(vim.inspect(lvim.lsp.automatic_configuration.skipped_servers))` +-- vim.list_extend(lvim.lsp.automatic_configuration.skipped_servers, { "pyright" }) +-- local opts = {} -- check the lspconfig documentation for a list of all possible options +-- require("lvim.lsp.manager").setup("pyright", opts) + +-- ---remove a server from the skipped list, e.g. eslint, or emmet_ls. !!Requires `:LvimCacheReset` to take effect!! +-- ---`:LvimInfo` lists which server(s) are skipped for the current filetype +-- lvim.lsp.automatic_configuration.skipped_servers = vim.tbl_filter(function(server) +-- return server ~= "emmet_ls" +-- end, lvim.lsp.automatic_configuration.skipped_servers) + +-- -- you can set a custom on_attach function that will be used for all the language servers +-- -- See +-- lvim.lsp.on_attach_callback = function(client, bufnr) +-- local function buf_set_option(...) +-- vim.api.nvim_buf_set_option(bufnr, ...) +-- end +-- --Enable completion triggered by +-- buf_set_option("omnifunc", "v:lua.vim.lsp.omnifunc") +-- end + +-- -- set a formatter, this will override the language server formatting capabilities (if it exists) +-- local formatters = require "lvim.lsp.null-ls.formatters" +-- formatters.setup { +-- { command = "black", filetypes = { "python" } }, +-- { command = "isort", filetypes = { "python" } }, +-- { +-- -- each formatter accepts a list of options identical to https://github.com/jose-elias-alvarez/null-ls.nvim/blob/main/doc/BUILTINS.md#Configuration +-- command = "prettier", +-- ---@usage arguments to pass to the formatter +-- -- these cannot contain whitespaces, options such as `--line-width 80` become either `{'--line-width', '80'}` or `{'--line-width=80'}` +-- extra_args = { "--print-with", "100" }, +-- ---@usage specify which filetypes to enable. By default a providers will attach to all the filetypes it supports. +-- filetypes = { "typescript", "typescriptreact" }, +-- }, +-- } + +-- -- set additional linters +-- local linters = require "lvim.lsp.null-ls.linters" +-- linters.setup { +-- { command = "flake8", filetypes = { "python" } }, +-- { +-- -- each linter accepts a list of options identical to https://github.com/jose-elias-alvarez/null-ls.nvim/blob/main/doc/BUILTINS.md#Configuration +-- command = "shellcheck", +-- ---@usage arguments to pass to the formatter +-- -- these cannot contain whitespaces, options such as `--line-width 80` become either `{'--line-width', '80'}` or `{'--line-width=80'}` +-- extra_args = { "--severity", "warning" }, +-- }, +-- { +-- command = "codespell", +-- ---@usage specify which filetypes to enable. By default a providers will attach to all the filetypes it supports. +-- filetypes = { "javascript", "python" }, +-- }, +-- } + +-- Additional Plugins +lvim.plugins = { + {"lunarvim/colorschemes"}, + {"ellisonleao/gruvbox.nvim"}, +} + +-- Autocommands (https://neovim.io/doc/user/autocmd.html) +-- vim.api.nvim_create_autocmd("BufEnter", { +-- pattern = { "*.json", "*.jsonc" }, +-- -- enable wrap mode for json files only +-- command = "setlocal wrap", +-- }) +-- vim.api.nvim_create_autocmd("FileType", { +-- pattern = "zsh", +-- callback = function() +-- -- let treesitter use bash highlight for zsh files as well +-- require("nvim-treesitter.highlight").attach(0, "bash") +-- end, +-- }) diff --git a/user/.config/lvim/plugin/packer_compiled.lua b/user/.config/lvim/plugin/packer_compiled.lua new file mode 100644 index 000000000..a96e96f5d --- /dev/null +++ b/user/.config/lvim/plugin/packer_compiled.lua @@ -0,0 +1,445 @@ +-- Automatically generated packer.nvim plugin loader code + +if vim.api.nvim_call_function('has', {'nvim-0.5'}) ~= 1 then + vim.api.nvim_command('echohl WarningMsg | echom "Invalid Neovim version for packer.nvim! | echohl None"') + return +end + +vim.api.nvim_command('packadd packer.nvim') + +local no_errors, error_msg = pcall(function() + +_G._packer = _G._packer or {} +_G._packer.inside_compile = true + +local time +local profile_info +local should_profile = false +if should_profile then + local hrtime = vim.loop.hrtime + profile_info = {} + time = function(chunk, start) + if start then + profile_info[chunk] = hrtime() + else + profile_info[chunk] = (hrtime() - profile_info[chunk]) / 1e6 + end + end +else + time = function(chunk, start) end +end + +local function save_profiles(threshold) + local sorted_times = {} + for chunk_name, time_taken in pairs(profile_info) do + sorted_times[#sorted_times + 1] = {chunk_name, time_taken} + end + table.sort(sorted_times, function(a, b) return a[2] > b[2] end) + local results = {} + for i, elem in ipairs(sorted_times) do + if not threshold or threshold and elem[2] > threshold then + results[i] = elem[1] .. ' took ' .. elem[2] .. 'ms' + end + end + if threshold then + table.insert(results, '(Only showing plugins that took longer than ' .. threshold .. ' ms ' .. 'to load)') + end + + _G._packer.profile_output = results +end + +time([[Luarocks path setup]], true) +local package_path_str = "/home/drk/.cache/lvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?.lua;/home/drk/.cache/lvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?/init.lua;/home/drk/.cache/lvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?.lua;/home/drk/.cache/lvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?/init.lua" +local install_cpath_pattern = "/home/drk/.cache/lvim/packer_hererocks/2.1.0-beta3/lib/lua/5.1/?.so" +if not string.find(package.path, package_path_str, 1, true) then + package.path = package.path .. ';' .. package_path_str +end + +if not string.find(package.cpath, install_cpath_pattern, 1, true) then + package.cpath = package.cpath .. ';' .. install_cpath_pattern +end + +time([[Luarocks path setup]], false) +time([[try_loadstring definition]], true) +local function try_loadstring(s, component, name) + local success, result = pcall(loadstring(s), name, _G.packer_plugins[name]) + if not success then + vim.schedule(function() + vim.api.nvim_notify('packer.nvim: Error running ' .. component .. ' for ' .. name .. ': ' .. result, vim.log.levels.ERROR, {}) + end) + end + return result +end + +time([[try_loadstring definition]], false) +time([[Defining packer_plugins]], true) +_G.packer_plugins = { + ["Comment.nvim"] = { + config = { "\27LJ\2\n?\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\22lvim.core.comment\frequire\0" }, + loaded = false, + needs_bufread = false, + only_cond = false, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/opt/Comment.nvim", + url = "https://github.com/numToStr/Comment.nvim" + }, + LuaSnip = { + config = { "\27LJ\2\n\3\0\0\v\0\23\00166\0\0\0'\2\1\0B\0\2\0024\1\0\0006\2\2\0009\2\3\0029\2\4\0029\2\5\0029\2\6\2\15\0\2\0X\3\f\21\2\1\0\22\2\0\0029\3\a\0006\5\b\0B\5\1\2'\6\t\0'\a\n\0'\b\v\0'\t\f\0'\n\r\0B\3\a\2<\3\2\0019\2\a\0006\4\14\0B\4\1\2'\5\15\0B\2\3\0029\3\16\0\18\5\2\0B\3\2\2\15\0\3\0X\4\3\21\3\1\0\22\3\0\3<\2\3\0016\3\0\0'\5\17\0B\3\2\0029\3\18\3B\3\1\0016\3\0\0'\5\19\0B\3\2\0029\3\18\0035\5\20\0=\1\21\5B\3\2\0016\3\0\0'\5\22\0B\3\2\0029\3\18\3B\3\1\1K\0\1\0\"luasnip.loaders.from_snipmate\npaths\1\0\0 luasnip.loaders.from_vscode\14lazy_load\29luasnip.loaders.from_lua\17is_directory\rsnippets\19get_config_dir\22friendly-snippets\nstart\vpacker\tpack\tsite\20get_runtime_dir\15join_paths\22friendly_snippets\fsources\fluasnip\fbuiltin\tlvim\15lvim.utils\frequire\2\0" }, + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/LuaSnip", + url = "https://github.com/L3MON4D3/LuaSnip" + }, + ["alpha-nvim"] = { + config = { "\27LJ\2\n=\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\20lvim.core.alpha\frequire\0" }, + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/alpha-nvim", + url = "https://github.com/goolord/alpha-nvim" + }, + ["bufferline.nvim"] = { + config = { "\27LJ\2\nB\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\25lvim.core.bufferline\frequire\0" }, + loaded = false, + needs_bufread = false, + only_cond = false, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/opt/bufferline.nvim", + url = "https://github.com/akinsho/bufferline.nvim" + }, + ["cmp-buffer"] = { + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/cmp-buffer", + url = "https://github.com/hrsh7th/cmp-buffer" + }, + ["cmp-nvim-lsp"] = { + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/cmp-nvim-lsp", + url = "https://github.com/hrsh7th/cmp-nvim-lsp" + }, + ["cmp-path"] = { + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/cmp-path", + url = "https://github.com/hrsh7th/cmp-path" + }, + cmp_luasnip = { + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/cmp_luasnip", + url = "https://github.com/saadparwaiz1/cmp_luasnip" + }, + colorschemes = { + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/colorschemes", + url = "https://github.com/lunarvim/colorschemes" + }, + ["friendly-snippets"] = { + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/friendly-snippets", + url = "https://github.com/rafamadriz/friendly-snippets" + }, + ["gitsigns.nvim"] = { + config = { "\27LJ\2\n@\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\23lvim.core.gitsigns\frequire\0" }, + loaded = false, + needs_bufread = false, + only_cond = false, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/opt/gitsigns.nvim", + url = "https://github.com/lewis6991/gitsigns.nvim" + }, + ["gruvbox.nvim"] = { + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/gruvbox.nvim", + url = "https://github.com/ellisonleao/gruvbox.nvim" + }, + ["indent-blankline.nvim"] = { + config = { "\27LJ\2\nC\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\26lvim.core.indentlines\frequire\0" }, + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/indent-blankline.nvim", + url = "https://github.com/lukas-reineke/indent-blankline.nvim" + }, + ["lir.nvim"] = { + config = { "\27LJ\2\n;\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\18lvim.core.lir\frequire\0" }, + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/lir.nvim", + url = "https://github.com/christianchiarulli/lir.nvim" + }, + ["lualine.nvim"] = { + config = { "\27LJ\2\n?\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\22lvim.core.lualine\frequire\0" }, + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/lualine.nvim", + url = "https://github.com/nvim-lualine/lualine.nvim" + }, + ["lunar.nvim"] = { + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/lunar.nvim", + url = "https://github.com/lunarvim/lunar.nvim" + }, + ["mason-lspconfig.nvim"] = { + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/mason-lspconfig.nvim", + url = "https://github.com/williamboman/mason-lspconfig.nvim" + }, + ["mason.nvim"] = { + config = { "\27LJ\2\n=\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\20lvim.core.mason\frequire\0" }, + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/mason.nvim", + url = "https://github.com/williamboman/mason.nvim" + }, + ["neodev.nvim"] = { + loaded = false, + needs_bufread = false, + only_cond = false, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/opt/neodev.nvim", + url = "https://github.com/folke/neodev.nvim" + }, + ["nlsp-settings.nvim"] = { + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/nlsp-settings.nvim", + url = "https://github.com/tamago324/nlsp-settings.nvim" + }, + ["null-ls.nvim"] = { + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/null-ls.nvim", + url = "https://github.com/jose-elias-alvarez/null-ls.nvim" + }, + ["nvim-autopairs"] = { + config = { "\27LJ\2\nA\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\24lvim.core.autopairs\frequire\0" }, + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/nvim-autopairs", + url = "https://github.com/windwp/nvim-autopairs" + }, + ["nvim-cmp"] = { + config = { "\27LJ\2\n`\0\0\3\0\6\0\v6\0\0\0009\0\1\0009\0\2\0\15\0\0\0X\1\56\0\3\0'\2\4\0B\0\2\0029\0\5\0B\0\1\1K\0\1\0\nsetup\18lvim.core.cmp\frequire\bcmp\fbuiltin\tlvim\0" }, + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/nvim-cmp", + url = "https://github.com/hrsh7th/nvim-cmp" + }, + ["nvim-dap"] = { + config = { "\27LJ\2\n;\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\18lvim.core.dap\frequire\0" }, + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/nvim-dap", + url = "https://github.com/mfussenegger/nvim-dap" + }, + ["nvim-dap-ui"] = { + config = { "\27LJ\2\n>\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\rsetup_ui\18lvim.core.dap\frequire\0" }, + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/nvim-dap-ui", + url = "https://github.com/rcarriga/nvim-dap-ui" + }, + ["nvim-lspconfig"] = { + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/nvim-lspconfig", + url = "https://github.com/neovim/nvim-lspconfig" + }, + ["nvim-navic"] = { + config = { "\27LJ\2\nC\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\26lvim.core.breadcrumbs\frequire\0" }, + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/nvim-navic", + url = "https://github.com/SmiteshP/nvim-navic" + }, + ["nvim-tree.lua"] = { + config = { "\27LJ\2\n@\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\23lvim.core.nvimtree\frequire\0" }, + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/nvim-tree.lua", + url = "https://github.com/kyazdani42/nvim-tree.lua" + }, + ["nvim-treesitter"] = { + config = { "\27LJ\2\nB\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\25lvim.core.treesitter\frequire\0" }, + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/nvim-treesitter", + url = "https://github.com/nvim-treesitter/nvim-treesitter" + }, + ["nvim-ts-context-commentstring"] = { + loaded = false, + needs_bufread = false, + only_cond = false, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/opt/nvim-ts-context-commentstring", + url = "https://github.com/JoosepAlviste/nvim-ts-context-commentstring" + }, + ["nvim-web-devicons"] = { + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/nvim-web-devicons", + url = "https://github.com/kyazdani42/nvim-web-devicons" + }, + ["packer.nvim"] = { + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/packer.nvim", + url = "https://github.com/wbthomason/packer.nvim" + }, + ["plenary.nvim"] = { + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/plenary.nvim", + url = "https://github.com/nvim-lua/plenary.nvim" + }, + ["popup.nvim"] = { + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/popup.nvim", + url = "https://github.com/nvim-lua/popup.nvim" + }, + ["project.nvim"] = { + config = { "\27LJ\2\n?\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\22lvim.core.project\frequire\0" }, + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/project.nvim", + url = "https://github.com/ahmedkhalf/project.nvim" + }, + ["schemastore.nvim"] = { + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/schemastore.nvim", + url = "https://github.com/b0o/schemastore.nvim" + }, + ["structlog.nvim"] = { + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/structlog.nvim", + url = "https://github.com/Tastyep/structlog.nvim" + }, + ["telescope-fzf-native.nvim"] = { + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/telescope-fzf-native.nvim", + url = "https://github.com/nvim-telescope/telescope-fzf-native.nvim" + }, + ["telescope.nvim"] = { + config = { "\27LJ\2\nA\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\24lvim.core.telescope\frequire\0" }, + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/telescope.nvim", + url = "https://github.com/nvim-telescope/telescope.nvim" + }, + ["toggleterm.nvim"] = { + config = { "\27LJ\2\n@\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\23lvim.core.terminal\frequire\0" }, + loaded = false, + needs_bufread = false, + only_cond = false, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/opt/toggleterm.nvim", + url = "https://github.com/akinsho/toggleterm.nvim" + }, + ["tokyonight.nvim"] = { + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/tokyonight.nvim", + url = "https://github.com/folke/tokyonight.nvim" + }, + ["vim-illuminate"] = { + config = { "\27LJ\2\nB\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\25lvim.core.illuminate\frequire\0" }, + loaded = true, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/start/vim-illuminate", + url = "https://github.com/RRethy/vim-illuminate" + }, + ["which-key.nvim"] = { + config = { "\27LJ\2\nA\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\24lvim.core.which-key\frequire\0" }, + loaded = false, + needs_bufread = false, + only_cond = false, + path = "/home/drk/.local/share/lunarvim/site/pack/packer/opt/which-key.nvim", + url = "https://github.com/folke/which-key.nvim" + } +} + +time([[Defining packer_plugins]], false) +local module_lazy_loads = { + ["^neodev"] = "neodev.nvim" +} +local lazy_load_called = {['packer.load'] = true} +local function lazy_load_module(module_name) + local to_load = {} + if lazy_load_called[module_name] then return nil end + lazy_load_called[module_name] = true + for module_pat, plugin_name in pairs(module_lazy_loads) do + if not _G.packer_plugins[plugin_name].loaded and string.match(module_name, module_pat) then + to_load[#to_load + 1] = plugin_name + end + end + + if #to_load > 0 then + require('packer.load')(to_load, {module = module_name}, _G.packer_plugins) + local loaded_mod = package.loaded[module_name] + if loaded_mod then + return function(modname) return loaded_mod end + end + end +end + +if not vim.g.packer_custom_loader_enabled then + table.insert(package.loaders, 1, lazy_load_module) + vim.g.packer_custom_loader_enabled = true +end + +-- Config for: vim-illuminate +time([[Config for vim-illuminate]], true) +try_loadstring("\27LJ\2\nB\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\25lvim.core.illuminate\frequire\0", "config", "vim-illuminate") +time([[Config for vim-illuminate]], false) +-- Config for: nvim-tree.lua +time([[Config for nvim-tree.lua]], true) +try_loadstring("\27LJ\2\n@\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\23lvim.core.nvimtree\frequire\0", "config", "nvim-tree.lua") +time([[Config for nvim-tree.lua]], false) +-- Config for: nvim-navic +time([[Config for nvim-navic]], true) +try_loadstring("\27LJ\2\nC\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\26lvim.core.breadcrumbs\frequire\0", "config", "nvim-navic") +time([[Config for nvim-navic]], false) +-- Config for: nvim-cmp +time([[Config for nvim-cmp]], true) +try_loadstring("\27LJ\2\n`\0\0\3\0\6\0\v6\0\0\0009\0\1\0009\0\2\0\15\0\0\0X\1\56\0\3\0'\2\4\0B\0\2\0029\0\5\0B\0\1\1K\0\1\0\nsetup\18lvim.core.cmp\frequire\bcmp\fbuiltin\tlvim\0", "config", "nvim-cmp") +time([[Config for nvim-cmp]], false) +-- Config for: nvim-autopairs +time([[Config for nvim-autopairs]], true) +try_loadstring("\27LJ\2\nA\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\24lvim.core.autopairs\frequire\0", "config", "nvim-autopairs") +time([[Config for nvim-autopairs]], false) +-- Config for: nvim-treesitter +time([[Config for nvim-treesitter]], true) +try_loadstring("\27LJ\2\nB\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\25lvim.core.treesitter\frequire\0", "config", "nvim-treesitter") +time([[Config for nvim-treesitter]], false) +-- Config for: alpha-nvim +time([[Config for alpha-nvim]], true) +try_loadstring("\27LJ\2\n=\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\20lvim.core.alpha\frequire\0", "config", "alpha-nvim") +time([[Config for alpha-nvim]], false) +-- Config for: lir.nvim +time([[Config for lir.nvim]], true) +try_loadstring("\27LJ\2\n;\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\18lvim.core.lir\frequire\0", "config", "lir.nvim") +time([[Config for lir.nvim]], false) +-- Config for: lualine.nvim +time([[Config for lualine.nvim]], true) +try_loadstring("\27LJ\2\n?\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\22lvim.core.lualine\frequire\0", "config", "lualine.nvim") +time([[Config for lualine.nvim]], false) +-- Config for: telescope.nvim +time([[Config for telescope.nvim]], true) +try_loadstring("\27LJ\2\nA\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\24lvim.core.telescope\frequire\0", "config", "telescope.nvim") +time([[Config for telescope.nvim]], false) +-- Config for: nvim-dap-ui +time([[Config for nvim-dap-ui]], true) +try_loadstring("\27LJ\2\n>\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\rsetup_ui\18lvim.core.dap\frequire\0", "config", "nvim-dap-ui") +time([[Config for nvim-dap-ui]], false) +-- Config for: nvim-dap +time([[Config for nvim-dap]], true) +try_loadstring("\27LJ\2\n;\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\18lvim.core.dap\frequire\0", "config", "nvim-dap") +time([[Config for nvim-dap]], false) +-- Config for: project.nvim +time([[Config for project.nvim]], true) +try_loadstring("\27LJ\2\n?\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\22lvim.core.project\frequire\0", "config", "project.nvim") +time([[Config for project.nvim]], false) +-- Config for: indent-blankline.nvim +time([[Config for indent-blankline.nvim]], true) +try_loadstring("\27LJ\2\nC\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\26lvim.core.indentlines\frequire\0", "config", "indent-blankline.nvim") +time([[Config for indent-blankline.nvim]], false) +-- Config for: LuaSnip +time([[Config for LuaSnip]], true) +try_loadstring("\27LJ\2\n\3\0\0\v\0\23\00166\0\0\0'\2\1\0B\0\2\0024\1\0\0006\2\2\0009\2\3\0029\2\4\0029\2\5\0029\2\6\2\15\0\2\0X\3\f\21\2\1\0\22\2\0\0029\3\a\0006\5\b\0B\5\1\2'\6\t\0'\a\n\0'\b\v\0'\t\f\0'\n\r\0B\3\a\2<\3\2\0019\2\a\0006\4\14\0B\4\1\2'\5\15\0B\2\3\0029\3\16\0\18\5\2\0B\3\2\2\15\0\3\0X\4\3\21\3\1\0\22\3\0\3<\2\3\0016\3\0\0'\5\17\0B\3\2\0029\3\18\3B\3\1\0016\3\0\0'\5\19\0B\3\2\0029\3\18\0035\5\20\0=\1\21\5B\3\2\0016\3\0\0'\5\22\0B\3\2\0029\3\18\3B\3\1\1K\0\1\0\"luasnip.loaders.from_snipmate\npaths\1\0\0 luasnip.loaders.from_vscode\14lazy_load\29luasnip.loaders.from_lua\17is_directory\rsnippets\19get_config_dir\22friendly-snippets\nstart\vpacker\tpack\tsite\20get_runtime_dir\15join_paths\22friendly_snippets\fsources\fluasnip\fbuiltin\tlvim\15lvim.utils\frequire\2\0", "config", "LuaSnip") +time([[Config for LuaSnip]], false) +-- Config for: mason.nvim +time([[Config for mason.nvim]], true) +try_loadstring("\27LJ\2\n=\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\20lvim.core.mason\frequire\0", "config", "mason.nvim") +time([[Config for mason.nvim]], false) +vim.cmd [[augroup packer_load_aucmds]] +vim.cmd [[au!]] + -- Event lazy-loads +time([[Defining lazy-load event autocommands]], true) +vim.cmd [[au BufRead * ++once lua require("packer.load")({'gitsigns.nvim', 'Comment.nvim'}, { event = "BufRead *" }, _G.packer_plugins)]] +vim.cmd [[au BufReadPost * ++once lua require("packer.load")({'nvim-ts-context-commentstring'}, { event = "BufReadPost *" }, _G.packer_plugins)]] +vim.cmd [[au BufWinEnter * ++once lua require("packer.load")({'which-key.nvim', 'toggleterm.nvim', 'bufferline.nvim'}, { event = "BufWinEnter *" }, _G.packer_plugins)]] +time([[Defining lazy-load event autocommands]], false) +vim.cmd("augroup END") + +_G._packer.inside_compile = false +if _G._packer.needs_bufread == true then + vim.cmd("doautocmd BufRead") +end +_G._packer.needs_bufread = false + +if should_profile then save_profiles() end + +end) + +if not no_errors then + error_msg = error_msg:gsub('"', '\\"') + vim.api.nvim_command('echohl ErrorMsg | echom "Error in packer_compiled: '..error_msg..'" | echom "Please check your config for correctness" | echohl None') +end diff --git a/user/.config/newsboat/config b/user/.config/newsboat/config index 46b378366..4886a962a 100644 --- a/user/.config/newsboat/config +++ b/user/.config/newsboat/config @@ -4,11 +4,9 @@ ## / /_/ / / / /_/ / ,< / __/ Clay Gomera (Drake) ## /_____/_/ \__,_/_/|_|\___/ My custom newsboat config ## - show-read-feeds yes auto-reload yes - -external-url-viewer "urlscan -dc -r 'linkhandler {}'" +reload-threads 10 bind-key j down bind-key k up @@ -36,18 +34,6 @@ color listfocus_unread yellow default bold color info red black bold color article white default bold -browser linkhandler -macro , open-in-browser -macro t set browser "qndl" ; open-in-browser ; set browser linkhandler -macro a set browser "tsp yt-dlp --embed-metadata -xic -f bestaudio/best" ; open-in-browser ; set browser linkhandler -macro v set browser "setsid -f mpv" ; open-in-browser ; set browser linkhandler -macro w set browser "lynx" ; open-in-browser ; set browser linkhandler -macro d set browser "dmenuhandler" ; open-in-browser ; set browser linkhandler -macro c set browser "echo %u | xclip -r -sel c" ; open-in-browser ; set browser linkhandler -macro C set browser "youtube-viewer --comments=%u" ; open-in-browser ; set browser linkhandler -macro p set browser "peertubetorrent %u 480" ; open-in-browser ; set browser linkhandler -macro P set browser "peertubetorrent %u 1080" ; open-in-browser ; set browser linkhandler - highlight all "---.*---" yellow highlight feedlist ".*(0/0))" black highlight article "(^Feed:.*|^Title:.*|^Author:.*)" cyan default bold @@ -60,3 +46,5 @@ highlight article "\\[embedded flash: [0-9][0-9]*\\]" green default bold highlight article ":.*\\(link\\)$" cyan default highlight article ":.*\\(image\\)$" blue default highlight article ":.*\\(embedded flash\\)$" magenta default + +browser w3m diff --git a/user/.config/newsboat/urls b/user/.config/newsboat/urls index c9d3bb4cf..8efda449c 100644 --- a/user/.config/newsboat/urls +++ b/user/.config/newsboat/urls @@ -1,38 +1,42 @@ -http://static.fsf.org/fsforg/rss/news.xml "FSF News" -http://static.fsf.org/fsforg/rss/blogs.xml "FSF Blogs" -https://dot.kde.org/rss.xml "KDE Dot News" -https://planet.kde.org/global/atom.xml "Planet KDE" -https://thisweek.gnome.org/index.xml "This Week on GNOME" -https://www.omgubuntu.co.uk/feed "OMG Ubuntu!" -https://thelinuxexp.com/feed.xml "The Linux Experiment" -https://techhut.tv/feed/ "Techhut Media" -https://itsfoss.com/rss/ "Its FOSS!" -https://thelinuxcast.org/feed/feed.xml "The Linux Cast" -https://9to5linux.com/feed/atom "9to5Linux" -https://blog.elementary.io/feed.xml "elementary OS Blog" -https://blog.zorin.com/index.xml "Zorin OS Blog" -http://blog.linuxmint.com/?feed=rss2 "Linux Mint Blog" -https://lukesmith.xyz/rss.xml "Luke Smith" -https://notrelated.xyz/rss "Not Related" -https://landchad.net/rss.xml "Landchad" -https://based.cooking/rss.xml "Based Cooking" -https://artixlinux.org/feed.php "Artix Linux" -https://www.archlinux.org/feeds/news/ "Arch Linux" -https://switchedtolinux.com/tutorials?format=feed&type=rss "Switched to Linux - Tutorials" -https://switchedtolinux.com/tin-foil-hat-time?format=feed&type=rss "Switched to Linux - Tin Foil Hat Time" -https://switchedtolinux.com/news?format=feed&type=rss "Switched to Linux - Weekly News Roundup" -https://switchedtolinux.com/linux/distros?format=feed&type=rss "Switched to Linux - Distros" -https://switchedtolinux.com/linux/software/?format=feed&type=rss "Switched to Linux - Software" -https://switchedtolinux.com/linux/desktop-environments/?format=feed&type=rss "Switched to Linux - Desktop Environments" -https://www.gamingonlinux.com/article_rss.php "Gaming on linux" -https://hackaday.com/blog/feed/ "Hackaday" -https://opensource.com/feed "Opensource" -https://linux.softpedia.com/backend.xml "Softpedia Linux" -https://www.zdnet.com/topic/linux/rss.xml "Zdnet Linux" -https://www.phoronix.com/rss.php "Phoronix" -https://www.computerworld.com/index.rss "Computerworld" -https://www.networkworld.com/category/linux/index.rss "Networkworld Linux" -https://betanews.com/feed "Betanews Linux" -http://lxer.com/module/newswire/headlines.rss "Lxer" -https://distrowatch.com/news/dwd.xml "Distrowatch" -https://odysee.com/$/rss/@blenderdumbass:f "Blender Dumbass" +http://static.fsf.org/fsforg/rss/news.xml "~FSF News" +http://static.fsf.org/fsforg/rss/blogs.xml "~FSF Blogs" +https://dot.kde.org/rss.xml "~KDE Dot News" +https://planet.kde.org/global/atom.xml "~Planet KDE" +https://pointieststick.com/feed/ "~This Week on KDE" +https://www.kdeblog.com/rss "~KDE Blog" +https://thisweek.gnome.org/index.xml "~This Week on GNOME" +https://www.omgubuntu.co.uk/feed "~OMG Ubuntu!" +https://blog.thunderbird.net/feed/ "~The Thunderbird Blog" +https://thelinuxexp.com/feed.xml "~The Linux Experiment" +https://techhut.tv/feed/ "~Techhut Media" +https://itsfoss.com/rss/ "~Its FOSS!" +https://thelinuxcast.org/feed/feed.xml "~The Linux Cast" +https://9to5linux.com/feed/atom "~9to5Linux" +https://blog.elementary.io/feed.xml "~elementary OS Blog" +https://blog.zorin.com/index.xml "~Zorin OS Blog" +http://blog.linuxmint.com/?feed=rss2 "~Linux Mint Blog" +https://lukesmith.xyz/rss.xml "~Luke Smith" +https://notrelated.xyz/rss "~Not Related" +https://landchad.net/rss.xml "~Landchad" +https://based.cooking/rss.xml "~Based Cooking" +https://artixlinux.org/feed.php "~Artix Linux" +https://www.archlinux.org/feeds/news/ "~Arch Linux" +https://switchedtolinux.com/tutorials?format=feed&type=rss "~Switched to Linux - Tutorials" +https://switchedtolinux.com/tin-foil-hat-time?format=feed&type=rss "~Switched to Linux - Tin Foil Hat Time" +https://switchedtolinux.com/news?format=feed&type=rss "~Switched to Linux - Weekly News Roundup" +https://switchedtolinux.com/linux/distros?format=feed&type=rss "~Switched to Linux - Distros" +https://switchedtolinux.com/linux/software/?format=feed&type=rss "~Switched to Linux - Software" +https://switchedtolinux.com/linux/desktop-environments/?format=feed&type=rss "~Switched to Linux - Desktop Environments" +https://www.gamingonlinux.com/article_rss.php "~Gaming on linux" +https://hackaday.com/blog/feed/ "~Hackaday" +https://opensource.com/feed "~Opensource" +https://linux.softpedia.com/backend.xml "~Softpedia Linux" +https://www.zdnet.com/topic/linux/rss.xml "~Zdnet Linux" +https://www.phoronix.com/rss.php "~Phoronix" +https://www.computerworld.com/index.rss "~Computerworld" +https://www.networkworld.com/category/linux/index.rss "~Networkworld Linux" +https://betanews.com/feed "~Betanews Linux" +http://lxer.com/module/newswire/headlines.rss "~Lxer" +https://distrowatch.com/news/dwd.xml "~Distrowatch" +https://odysee.com/$/rss/@blenderdumbass:f "~Blender Dumbass" +https://theevilskeleton.gitlab.io/feed.xml "~TheEvilSkeleton" diff --git a/user/.config/rofi/scripts/rofi_power b/user/.config/rofi/scripts/rofi_power index e534f7095..d49da716f 100755 --- a/user/.config/rofi/scripts/rofi_power +++ b/user/.config/rofi/scripts/rofi_power @@ -10,10 +10,20 @@ option2=" Reboot" option3=" Power off" option4="鈴 Suspend" option5=" Lock" -option6=" Cancel" +option6=" Change power profile" +option7=" Cancel" ## OPTIONS ARRAY ## -options="$option1\n$option2\n$option3\n$option4\n$option5\n$option6" +options="$option1\n$option2\n$option3\n$option4\n$option5\n$option6\n$option7" + +## POWER PROFILE OPTIONS ## +pwr1=" Performance" +pwr2=" Balanced" +pwr3=" Power Saver" +pwr4=" Cancel" + +## POWER PROFILES ARRAY ## +pwrs="$pwr1\n$pwr2\n$pwr3\n$pwr4" ## MAIN ACTION COMMAND ## action=$(echo -e "$options" | rofi -dmenu -p "  Power Options ") @@ -29,5 +39,26 @@ case "$action" in $option5*) betterlockscreen -l;; $option6*) + currentpwr=$(powerprofilesctl get) + if [ "$currentpwr" = "performance" ]; then + currentpwr=" Performance" + elif [ "$currentpwr" = "power-saver" ]; then + currentpwr=" Power Saver" + elif [ "$currentpwr" = "balanced" ]; then + currentpwr=" Balanced" + fi + pwraction=$(echo -e "$pwrs" | rofi -dmenu -p "  Power Profile Menu - Currently set to: ${currentpwr} ") + case "$pwraction" in + $pwr1*) + powerprofilesctl set performance && notify-send "Power profile switched to performance";; + $pwr2*) + powerprofilesctl set balanced && notify-send "Power profile switched to balanced";; + $pwr3*) + powerprofilesctl set power-saver && notify-send "Power profile switched to power saver";; + $pwr4*) + exit 0 + esac;; + $option7*) exit 0 esac + diff --git a/user/.config/starship.toml b/user/.config/starship.toml index be4e5cdb5..da6c4f2a8 100644 --- a/user/.config/starship.toml +++ b/user/.config/starship.toml @@ -16,18 +16,18 @@ success_symbol = "[](bold green)" [directory] truncation_length = 5 -home_symbol = "🏠" -format = "[$path](bold cyan) " +home_symbol = " " +format = "[$path](bold italic yellow) " [hostname] ssh_only = false disabled = false -style = "bold italic #87A752" +style = "italic #87A752" [package] disabled = true [username] show_always = true -style_user = "bold blue" +style_user = "bold red" format = "[$user]($style)[ in ](white)" diff --git a/user/.config/wezterm/wezterm.lua b/user/.config/wezterm/wezterm.lua new file mode 100644 index 000000000..07af3923b --- /dev/null +++ b/user/.config/wezterm/wezterm.lua @@ -0,0 +1,32 @@ +local wezterm = require 'wezterm' +local gpus = wezterm.gui.enumerate_gpus() + +return { + font = wezterm.font { + family = 'mononoki Nerd Font', + weight = 'Medium' + }, + color_scheme = 'Gruvbox dark, hard (base16)', + default_prog = { '/usr/bin/fish' }, + default_cursor_style = "BlinkingUnderline", + font_size = 13.5, + check_for_updates = false, + use_dead_keys = false, + warn_about_missing_glyphs = false, + enable_kitty_graphics = true, + animation_fps = 1, + cursor_blink_rate = 175, + hide_tab_bar_if_only_one_tab = true, + adjust_window_size_when_changing_font_size = false, + window_padding = { + left = 10, + right = 10, + top = 10, + bottom = 10, + }, + use_fancy_tab_bar = false, + exit_behavior = "Close", + window_close_confirmation = 'NeverPrompt', + tab_bar_at_bottom = false, + window_background_opacity = 0.96, +}