This commit is contained in:
abs3nt 2023-02-19 22:07:04 -08:00
commit 75c9fbe4c4
27 changed files with 6426 additions and 0 deletions

20
.config/bspwm/bspwmrc Executable file
View File

@ -0,0 +1,20 @@
#! /bin/sh
. "${HOME}/.cache/wal/colors.sh"
bspc monitor -d I II III IV V VI VII VIII IX X
bspc config active_border_color $background
bspc config normal_border_color $background
bspc config focused_border_color $color4
bspc config presel_feedback_color $color4
bspc config pointer_motion_interval 6ms
bspc config border_width 2
bspc config window_gap 5
bspc config split_ratio 0.52
bspc config borderless_monocle true
bspc config gapless_monocle true
bspc config focus_follows_pointer true

454
.config/dunst/dunstrc Normal file
View File

@ -0,0 +1,454 @@
# See dunst(5) for all configuration options
[global]
### Display ###
# Which monitor should the notifications be displayed on.
# monitor = 1
# Display notification on focused monitor. Possible modes are:
# mouse: follow mouse pointer
# keyboard: follow window with keyboard focus
# none: don't follow anything
#
# "keyboard" needs a window manager that exports the
# _NET_ACTIVE_WINDOW property.
# This should be the case for almost all modern window managers.
#
# If this option is set to mouse or keyboard, the monitor option
# will be ignored.
follow = none
### Geometry ###
# dynamic width from 0 to 300
# width = (0, 300)
# constant width of 300
width = (0,300)
# The maximum height of a single notification, excluding the frame.
height = 300
# Position the notification in the top right corner
origin = top-right
# Offset from the origin
offset = 10x10
# Scale factor. It is auto-detected if value is 0.
scale = 0
# Maximum number of notification (0 means no limit)
notification_limit = 0
### Progress bar ###
# Turn on the progess bar. It appears when a progress hint is passed with
# for example dunstify -h int:value:12
progress_bar = true
# Set the progress bar height. This includes the frame, so make sure
# it's at least twice as big as the frame width.
progress_bar_height = 10
# Set the frame width of the progress bar
progress_bar_frame_width = 1
# Set the minimum width for the progress bar
progress_bar_min_width = 150
# Set the maximum width for the progress bar
progress_bar_max_width = 300
# Show how many messages are currently hidden (because of
# notification_limit).
indicate_hidden = yes
# The transparency of the window. Range: [0; 100].
# This option will only work if a compositing window manager is
# present (e.g. xcompmgr, compiz, etc.). (X11 only)
transparency = 0
# Draw a line of "separator_height" pixel height between two
# notifications.
# Set to 0 to disable.
# If gap_size is greater than 0, this setting will be ignored.
separator_height = 2
# Padding between text and separator.
padding = 8
# Horizontal padding.
horizontal_padding = 8
# Padding between text and icon.
text_icon_padding = 0
# Defines width in pixels of frame around the notification window.
# Set to 0 to disable.
frame_width = 1
# Defines color of the frame around the notification window.
frame_color = "#aaaaaa"
# Size of gap to display between notifications - requires a compositor.
# If value is greater than 0, separator_height will be ignored and a border
# of size frame_width will be drawn around each notification instead.
# Click events on gaps do not currently propagate to applications below.
gap_size = 0
# Define a color for the separator.
# possible values are:
# * auto: dunst tries to find a color fitting to the background;
# * foreground: use the same color as the foreground;
# * frame: use the same color as the frame;
# * anything else will be interpreted as a X color.
separator_color = frame
# Sort messages by urgency.
sort = yes
# Don't remove messages, if the user is idle (no mouse or keyboard input)
# for longer than idle_threshold seconds.
# Set to 0 to disable.
# A client can set the 'transient' hint to bypass this. See the rules
# section for how to disable this if necessary
# idle_threshold = 120
### Text ###
font = Monospace 8
# The spacing between lines. If the height is smaller than the
# font height, it will get raised to the font height.
line_height = 0
# Possible values are:
# full: Allow a small subset of html markup in notifications:
# <b>bold</b>
# <i>italic</i>
# <s>strikethrough</s>
# <u>underline</u>
#
# For a complete reference see
# <https://docs.gtk.org/Pango/pango_markup.html>.
#
# strip: This setting is provided for compatibility with some broken
# clients that send markup even though it's not enabled on the
# server. Dunst will try to strip the markup but the parsing is
# simplistic so using this option outside of matching rules for
# specific applications *IS GREATLY DISCOURAGED*.
#
# no: Disable markup parsing, incoming notifications will be treated as
# plain text. Dunst will not advertise that it has the body-markup
# capability if this is set as a global setting.
#
# It's important to note that markup inside the format option will be parsed
# regardless of what this is set to.
markup = full
# The format of the message. Possible variables are:
# %a appname
# %s summary
# %b body
# %i iconname (including its path)
# %I iconname (without its path)
# %p progress value if set ([ 0%] to [100%]) or nothing
# %n progress value if set without any extra characters
# %% Literal %
# Markup is allowed
format = "<b>%s</b>\n%b"
# Alignment of message text.
# Possible values are "left", "center" and "right".
alignment = left
# Vertical alignment of message text and icon.
# Possible values are "top", "center" and "bottom".
vertical_alignment = center
# Show age of message if message is older than show_age_threshold
# seconds.
# Set to -1 to disable.
show_age_threshold = 60
# Specify where to make an ellipsis in long lines.
# Possible values are "start", "middle" and "end".
ellipsize = middle
# Ignore newlines '\n' in notifications.
ignore_newline = no
# Stack together notifications with the same content
stack_duplicates = true
# Hide the count of stacked notifications with the same content
hide_duplicate_count = false
# Display indicators for URLs (U) and actions (A).
show_indicators = yes
### Icons ###
# Recursive icon lookup. You can set a single theme, instead of having to
# define all lookup paths.
enable_recursive_icon_lookup = true
# Set icon theme (only used for recursive icon lookup)
icon_theme = Adwaita
# You can also set multiple icon themes, with the leftmost one being used first.
# icon_theme = "Adwaita, breeze"
# Align icons left/right/top/off
icon_position = left
# Scale small icons up to this size, set to 0 to disable. Helpful
# for e.g. small files or high-dpi screens. In case of conflict,
# max_icon_size takes precedence over this.
min_icon_size = 32
# Scale larger icons down to this size, set to 0 to disable
max_icon_size = 128
# Paths to default icons (only neccesary when not using recursive icon lookup)
icon_path = /usr/share/icons/gnome/16x16/status/:/usr/share/icons/gnome/16x16/devices/
### History ###
# Should a notification popped up from history be sticky or timeout
# as if it would normally do.
sticky_history = yes
# Maximum amount of notifications kept in history
history_length = 20
### Misc/Advanced ###
# dmenu path.
dmenu = /usr/bin/dmenu -p dunst:
# Browser for opening urls in context menu.
browser = /usr/bin/xdg-open
# Always run rule-defined scripts, even if the notification is suppressed
always_run_script = true
# Define the title of the windows spawned by dunst
title = Dunst
# Define the class of the windows spawned by dunst
class = Dunst
# Define the corner radius of the notification window
# in pixel size. If the radius is 0, you have no rounded
# corners.
# The radius will be automatically lowered if it exceeds half of the
# notification height to avoid clipping text and/or icons.
corner_radius = 0
# Ignore the dbus closeNotification message.
# Useful to enforce the timeout set by dunst configuration. Without this
# parameter, an application may close the notification sent before the
# user defined timeout.
ignore_dbusclose = false
### Wayland ###
# These settings are Wayland-specific. They have no effect when using X11
# Uncomment this if you want to let notications appear under fullscreen
# applications (default: overlay)
# layer = top
# Set this to true to use X11 output on Wayland.
force_xwayland = false
### Legacy
# Use the Xinerama extension instead of RandR for multi-monitor support.
# This setting is provided for compatibility with older nVidia drivers that
# do not support RandR and using it on systems that support RandR is highly
# discouraged.
#
# By enabling this setting dunst will not be able to detect when a monitor
# is connected or disconnected which might break follow mode if the screen
# layout changes.
force_xinerama = false
### mouse
# Defines list of actions for each mouse event
# Possible values are:
# * none: Don't do anything.
# * do_action: Invoke the action determined by the action_name rule. If there is no
# such action, open the context menu.
# * open_url: If the notification has exactly one url, open it. If there are multiple
# ones, open the context menu.
# * close_current: Close current notification.
# * close_all: Close all notifications.
# * context: Open context menu for the notification.
# * context_all: Open context menu for all notifications.
# These values can be strung together for each mouse event, and
# will be executed in sequence.
mouse_left_click = close_current
mouse_middle_click = do_action, close_current
mouse_right_click = close_all
# Experimental features that may or may not work correctly. Do not expect them
# to have a consistent behaviour across releases.
[experimental]
# Calculate the dpi to use on a per-monitor basis.
# If this setting is enabled the Xft.dpi value will be ignored and instead
# dunst will attempt to calculate an appropriate dpi value for each monitor
# using the resolution and physical size. This might be useful in setups
# where there are multiple screens with very different dpi values.
per_monitor_dpi = true
[urgency_low]
# IMPORTANT: colors have to be defined in quotation marks.
# Otherwise the "#" and following would be interpreted as a comment.
background = "#151515"
foreground = "#888888"
timeout = 10
# Icon for notifications with low urgency, uncomment to enable
#default_icon = /path/to/icon
[urgency_normal]
background = "#151515"
foreground = "#ffffff"
timeout = 10
# Icon for notifications with normal urgency, uncomment to enable
#default_icon = /path/to/icon
[urgency_critical]
background = "#900000"
foreground = "#ffffff"
frame_color = "#ff0000"
timeout = 0
# Icon for notifications with critical urgency, uncomment to enable
#default_icon = /path/to/icon
# Every section that isn't one of the above is interpreted as a rules to
# override settings for certain messages.
#
# Messages can be matched by
# appname (discouraged, see desktop_entry)
# body
# category
# desktop_entry
# icon
# match_transient
# msg_urgency
# stack_tag
# summary
#
# and you can override the
# background
# foreground
# format
# frame_color
# fullscreen
# new_icon
# set_stack_tag
# set_transient
# set_category
# timeout
# urgency
# icon_position
# skip_display
# history_ignore
# action_name
# word_wrap
# ellipsize
# alignment
# hide_text
#
# Shell-like globbing will get expanded.
#
# Instead of the appname filter, it's recommended to use the desktop_entry filter.
# GLib based applications export their desktop-entry name. In comparison to the appname,
# the desktop-entry won't get localized.
#
# SCRIPTING
# You can specify a script that gets run when the rule matches by
# setting the "script" option.
# The script will be called as follows:
# script appname summary body icon urgency
# where urgency can be "LOW", "NORMAL" or "CRITICAL".
#
# NOTE: It might be helpful to run dunst -print in a terminal in order
# to find fitting options for rules.
# Disable the transient hint so that idle_threshold cannot be bypassed from the
# client
#[transient_disable]
# match_transient = yes
# set_transient = no
#
# Make the handling of transient notifications more strict by making them not
# be placed in history.
#[transient_history_ignore]
# match_transient = yes
# history_ignore = yes
# fullscreen values
# show: show the notifications, regardless if there is a fullscreen window opened
# delay: displays the new notification, if there is no fullscreen window active
# If the notification is already drawn, it won't get undrawn.
# pushback: same as delay, but when switching into fullscreen, the notification will get
# withdrawn from screen again and will get delayed like a new notification
#[fullscreen_delay_everything]
# fullscreen = delay
#[fullscreen_show_critical]
# msg_urgency = critical
# fullscreen = show
#[espeak]
# summary = "*"
# script = dunst_espeak.sh
#[script-test]
# summary = "*script*"
# script = dunst_test.sh
#[ignore]
# # This notification will not be displayed
# summary = "foobar"
# skip_display = true
#[history-ignore]
# # This notification will not be saved in history
# summary = "foobar"
# history_ignore = yes
#[skip-display]
# # This notification will not be displayed, but will be included in the history
# summary = "foobar"
# skip_display = yes
#[signed_on]
# appname = Pidgin
# summary = "*signed on*"
# urgency = low
#
#[signed_off]
# appname = Pidgin
# summary = *signed off*
# urgency = low
#
#[says]
# appname = Pidgin
# summary = *says*
# urgency = critical
#
#[twitter]
# appname = Pidgin
# summary = *twitter.com*
# urgency = normal
#
#[stack-volumes]
# appname = "some_volume_notifiers"
# set_stack_tag = "volume"
#
# vim: ft=cfg

3
.config/gospt/client.yml Normal file
View File

@ -0,0 +1,3 @@
client_id: "5f5899e304794ce4aa7cbf862410f61d"
client_secret_cmd: "secret spotify_secret"
port: "8888"

6
.config/nvim/init.lua Normal file
View File

@ -0,0 +1,6 @@
require('impatient')
require('options')
require('plugins')
require('lsp_settings')
require('mappings')
require('autocmds')

View File

@ -0,0 +1,159 @@
local autocmd = vim.api.nvim_create_autocmd -- Create autocommand
---- Toggle between line numbers and relative line numbers
local _group = vim.api.nvim_create_augroup("LineNumber", { clear = true })
local function relativeln(target)
if vim.b.lnstatus == nil then
vim.b.lnstatus = "number"
end
if vim.b.lnstatus ~= "nonumber" then
if target == "number" then
vim.o.number = true
vim.o.relativenumber = false
else
vim.o.number = true
vim.o.relativenumber = true
end
else
vim.o.number = false
end
end
autocmd("InsertEnter", {
pattern = "*",
callback = function()
relativeln("number")
end,
once = false,
group = _group,
})
autocmd("InsertLeave", {
pattern = "*",
callback = function()
relativeln("relativenumber")
end,
once = false,
group = _group,
})
autocmd("FocusLost", {
pattern = "*",
callback = function()
relativeln("number")
end,
once = false,
group = _group,
})
autocmd("CursorMoved", {
pattern = "*",
callback = function()
relativeln("relativenumber")
end,
once = false,
group = _group,
})
function Toggleln()
if vim.b.lnstatus == nil then
vim.b.lnstatus = "number"
end
if vim.b.lnstatus == "number" then
vim.o.number = false
vim.o.relativenumber = false
vim.b.lnstatus = "nonumber"
else
vim.o.number = true
vim.o.relativenumber = true
vim.b.lnstatus = "number"
end
end
---- trim whitespace on save
autocmd("BufWritePre", {
pattern = "*",
callback = function()
vim.cmd([[:%s/\s\+$//e]])
end,
once = false,
group = _group,
})
-- change tmux title
autocmd("BufReadPost", {
pattern = "*",
callback = function()
vim.cmd([[call system("tmux rename-window '" . expand("%:t") . "'")]])
end,
once = false,
group = _group,
})
autocmd("FileReadPost", {
pattern = "*",
callback = function()
vim.cmd([[call system("tmux rename-window '" . expand("%:t") . "'")]])
end,
once = false,
group = _group,
})
autocmd("BufNewFile", {
pattern = "*",
callback = function()
vim.cmd([[call system("tmux rename-window '" . expand("%:t") . "'")]])
end,
once = false,
group = _group,
})
autocmd("BufEnter", {
pattern = "*",
callback = function()
vim.cmd([[call system("tmux rename-window '" . expand("%:t") . "'")]])
end,
once = false,
group = _group,
})
-- auto close nvimtree
autocmd('BufEnter', {
command = "if winnr('$') == 1 && bufname() == 'NvimTree_' . tabpagenr() | quit | endif",
nested = true,
})
-- dont show line numbers for nvimtree buffers
autocmd("BufEnter",
{
pattern = { "NvimTree*" },
callback = function()
vim.b.lnstatus = "nonumber"
end
})
-- Disable the statusline, tabline and cmdline while the alpha dashboard is open
autocmd('User', {
pattern = 'AlphaReady',
desc = 'disable status, tabline and cmdline for alpha',
callback = function()
vim.go.laststatus = 1
vim.opt.showtabline = 1
vim.opt.cmdheight = 1
end,
})
autocmd('BufUnload', {
buffer = 0,
desc = 'enable status, tabline and cmdline after alpha',
callback = function()
vim.go.laststatus = 2
vim.opt.showtabline = 2
vim.opt.cmdheight = 1
end,
})
-- auto format on write
vim.cmd [[autocmd BufWritePre * lua vim.lsp.buf.format()]]
-- syntax fix
vim.cmd("syntax sync fromstart")

View File

@ -0,0 +1,70 @@
require("mason").setup {
automatic_installation = true
}
-- Setup lspconfig.
local capabilities = require('cmp_nvim_lsp').default_capabilities(vim.lsp.protocol.make_client_capabilities())
-- LSP hotkey config
local opts = { noremap = true, silent = true }
vim.keymap.set('n', '<space>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', '<space>q', vim.diagnostic.setloclist, opts)
-- Use an on_attach function to only map the following keys
-- after the language server attaches to the current buffer
local on_attach = function(client, bufnr)
-- Enable completion triggered by <c-x><c-o>
vim.api.nvim_buf_set_option(bufnr, 'omnifunc', 'v:lua.vim.lsp.omnifunc')
if client.server_capabilities.colorProvider then
-- Attach document colour support
require("document-color").buf_attach(bufnr, { mode = "background" })
end
-- Mappings.
-- See `:help vim.lsp.*` for documentation on any of the below functions
local bufopts = { noremap = true, silent = true, buffer = bufnr }
vim.keymap.set('n', 'gD', vim.lsp.buf.declaration, bufopts)
vim.keymap.set('n', 'gd', vim.lsp.buf.definition, bufopts)
vim.keymap.set('n', 'K', vim.lsp.buf.hover, bufopts)
vim.keymap.set('n', 'gi', vim.lsp.buf.implementation, bufopts)
vim.keymap.set('n', '<C-k>', vim.lsp.buf.signature_help, bufopts)
vim.keymap.set('n', '<space>wa', vim.lsp.buf.add_workspace_folder, bufopts)
vim.keymap.set('n', '<space>wr', vim.lsp.buf.remove_workspace_folder, bufopts)
vim.keymap.set('n', '<space>wl', function()
print(vim.inspect(vim.lsp.buf.list_workspace_folders()))
end, bufopts)
vim.keymap.set('n', '<space>D', vim.lsp.buf.type_definition, bufopts)
vim.keymap.set('n', '<space>rn', vim.lsp.buf.rename, bufopts)
vim.keymap.set('n', '<space>ca', vim.lsp.buf.code_action, bufopts)
vim.keymap.set('n', 'gr', vim.lsp.buf.references, bufopts)
vim.keymap.set('n', '<space>f', vim.lsp.buf.formatting, bufopts)
end
local lsp_flags = {
-- This is the default in Nvim 0.7+
debounce_text_changes = 150,
}
--- initialize language servers
require('mason-lspconfig').setup()
require('mason-lspconfig').setup_handlers {
function(server_name)
require("lspconfig")[server_name].setup {
on_attach = on_attach,
flags = lsp_flags,
capabilities = capabilities,
settings = {
Lua = {
diagnostics = {
globals = { 'vim' }
}
},
gopls = {
gofumpt = true
}
}
}
end
}

View File

@ -0,0 +1,38 @@
local vimp = require('vimp')
-- Map leader
vim.g.mapleader = " "
-- NvimTree
vimp.noremap({ 'silent' }, '<leader>n', [[:NvimTreeToggle<CR>]])
-- Telescope
vimp.noremap({ 'silent' }, '<leader>ff', [[:Telescope find_files<CR>]])
vimp.noremap({ 'silent' }, '<leader>fg', [[:Telescope live_grep<CR>]])
vimp.noremap({ 'silent' }, '<leader>fb', [[:Telescope buffers<CR>]])
-- tabs and stuff
vimp.vnoremap('<C-b>', [[<C-a>]])
vimp.noremap("<Tab>", [[>gv]])
vimp.noremap("<S-Tab>", [[<gv]])
-- tabline
vimp.nnoremap({ 'silent' }, '<A-Right>', [[:TablineBufferNext<CR>]])
vimp.nnoremap({ 'silent' }, '<A-Left>', [[:TablineBufferPrevious<CR>]])
-- markdown
vimp.noremap({ 'silent' }, '<leader>md', [[:MarkdownPreviewToggle<CR>]])
-- Remove search highlight on Enter
vimp.nnoremap("<CR>", [[:nohlsearch<CR><CR>]])
-- Don't lose selection on < or >
vimp.xnoremap("<", [[<gv]])
vimp.xnoremap(">", [[>gv]])
-- ArgWrap
vimp.nnoremap({ 'silent' }, '<leader>a', [[:ArgWrap<CR>]])
-- Toggle Line
vimp.nnoremap({ 'silent' }, '<leader>l', [[:lua Toggleln()<CR>]])

View File

@ -0,0 +1,64 @@
-- globals
vim.g.colorizer_auto_color = 1
vim.g.tmuxline_previm = "minimal"
vim.g.powerline_pycmd = "py3"
vim.g.tex_flavor = "latex"
-- dictionary
vim.o.dictionary="/usr/dict/words"
-- colors
vim.o.termguicolors = true
-- Better display for messages
vim.o.cmdheight=1
-- You will have bad experience for diagnostic messages when it's default 4000.
vim.o.updatetime=300
vim.o.mmp=5000
-- don't give |ins-completion-menu| messages.
vim.o.hidden=true
vim.o.signcolumn='yes'
vim.o.encoding='utf-8'
vim.o.shortmess='c'
vim.o.autoread=true
vim.o.backspace='indent,eol,start'
vim.o.ruler=true
vim.o.showmode=true
vim.o.history=1000
vim.o.hidden=true
vim.o.ignorecase=true
vim.o.smartcase=true
vim.o.hlsearch=true
vim.o.incsearch=true
vim.o.showmatch=true
vim.o.laststatus=2
vim.o.autoindent=true
vim.o.cindent=true
vim.o.shiftwidth=2
vim.o.softtabstop=2
vim.o.tabstop=2
vim.o.expandtab=true
vim.o.scrolloff=5
vim.o.foldmethod='indent'
vim.o.foldlevel=99
vim.wo.wrap=false
vim.o.showcmd=true
vim.o.number=true
vim.o.relativenumber=true
vim.o.mouse='a'
vim.o.redrawtime=10000
vim.o.inccommand='split'
---- Sync " and + registers
vim.o.clipboard='unnamedplus'
-- show completion options on <TAB>
vim.o.wildmenu=true
-- complete only up to the point of ambiguity
vim.o.wildmode='list:longest'
vim.opt.backupdir='/home/abs3nt/.cache/nvim/backup//'
vim.o.directory='/home/abs3nt/.cache/nvim/swap//'
vim.o.undodir='/home/abs3nt/.cache/nvim/undo//'
vim.o.undofile=true

View File

@ -0,0 +1,350 @@
return require('packer').startup({ function(use)
-- Packer can manage itself
use 'wbthomason/packer.nvim'
-- brrrrr (in init.lua)
use 'lewis6991/impatient.nvim'
--vimp (in mappings.lua)
use 'svermeulen/vimpeccable'
--nim
use 'alaviss/nim.nvim'
-- golang
use 'fatih/vim-go'
-- obsession
use 'tpope/vim-obsession'
--rust
use {
'simrat39/rust-tools.nvim',
config = function()
local rt = require('rust-tools')
rt.setup({
server = {
on_attach = function(_, bufnr)
-- Hover actions
vim.keymap.set("n", "<C-space>", rt.hover_actions.hover_actions, { buffer = bufnr })
-- Code action groups
vim.keymap.set("n", "<Leader>a", rt.code_action_group.code_action_group, { buffer = bufnr })
end
}
})
end
}
--lsp (in lsp_settings.lua)
use 'neovim/nvim-lspconfig'
use 'williamboman/mason-lspconfig'
use 'williamboman/mason.nvim'
use 'mfussenegger/nvim-dap'
-- auto color hex/rgb
use {
'norcalli/nvim-colorizer.lua',
config = function() require('colorizer').setup() end,
}
use {
'mrshmllow/document-color.nvim',
config = function()
require('document-color').setup {
mode = "background",
}
end
}
-- Markdown preview
use {
"iamcco/markdown-preview.nvim",
run = "cd app && npm install",
setup = function()
vim.g.mkdp_filetypes = { "markdown" }
vim.g.mkdp_markdown_css = '/home/abs3nt/.config/nvim/static/custom.css'
vim.g.mkdp_highlight_css = '/home/abs3nt/.cache/wal/colors.css'
vim.g.mkdp_browser = 'surf'
vim.g.mkdp_echo_preview_url = 1
end,
ft = { "markdown" }
}
use {
"ellisonleao/glow.nvim",
config = function()
require('glow').setup({})
end
}
-- auto pairs
use {
'windwp/nvim-autopairs',
config = function()
require('nvim-autopairs').setup {}
end
}
-- show git diffs
use {
'lewis6991/gitsigns.nvim',
config = function() require('gitsigns').setup() end
}
-- fuzzy finder
use {
'nvim-telescope/telescope.nvim',
branch = '0.1.x',
requires = {
'nvim-lua/plenary.nvim',
}
}
-- file explorer
use {
'kyazdani42/nvim-tree.lua',
config = function()
require('nvim-tree').setup {
sort_by = "case_sensitive",
view = {
adaptive_size = true,
mappings = {
list = {
{ key = "u", action = "dir_up" },
},
},
},
renderer = {
group_empty = true,
},
}
end
}
-- open file at last location
use {
'ethanholz/nvim-lastplace',
config = function()
require('nvim-lastplace').setup {
lastplace_open_folds = true
}
end
}
-- multiple cursors
use 'mg979/vim-visual-multi'
-- wrap things inside pairs
use 'FooSoft/vim-argwrap'
-- which key
use {
"folke/which-key.nvim",
config = function()
require("which-key").setup {}
end
}
-- pasting indents
use {
'hrsh7th/nvim-pasta',
config = function()
require('pasta').setup {
converters = {
require('pasta.converters').indentation,
},
paste_mode = true,
next_key = vim.api.nvim_replace_termcodes('<C-p>', true, true, true),
prev_key = vim.api.nvim_replace_termcodes('<C-n>', true, true, true),
}
end
}
use {
"hrsh7th/nvim-cmp",
requires = {
{ "hrsh7th/cmp-nvim-lsp" },
{ "hrsh7th/cmp-nvim-lua" },
{ "hrsh7th/cmp-buffer" },
{ "hrsh7th/cmp-path" },
{ "hrsh7th/cmp-cmdline" },
{ "L3MON4D3/LuaSnip" },
{ "saadparwaiz1/cmp_luasnip" },
{ "rafamadriz/friendly-snippets" },
{ "f3fora/cmp-spell", { "hrsh7th/cmp-calc" }, { "hrsh7th/cmp-emoji" } },
},
config = function()
require('luasnip.loaders.from_vscode').lazy_load()
local cmp = require 'cmp'
cmp.setup({
snippet = {
-- REQUIRED - you must specify a snippet engine
expand = function(args)
require('luasnip').lsp_expand(args.body) -- For `luasnip` users.
end,
},
window = {
completion = cmp.config.window.bordered(),
documentation = cmp.config.window.bordered(),
},
mapping = cmp.mapping.preset.insert({
['<C-b>'] = cmp.mapping.scroll_docs(-4),
['<C-f>'] = cmp.mapping.scroll_docs(4),
['<C-Space>'] = cmp.mapping.complete(),
['<C-e>'] = cmp.mapping.abort(),
['<CR>'] = cmp.mapping.confirm({ select = true }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items.
}),
sources = cmp.config.sources({
{ name = 'nvim_lsp' },
{ name = 'luasnip' },
}, {
{ name = 'buffer' },
})
})
-- Set configuration for specific filetype.
cmp.setup.filetype('gitcommit', {
sources = cmp.config.sources({
{ name = 'cmp_git' }, -- You can specify the `cmp_git` source if you were installed it.
}, {
{ name = 'buffer' },
})
})
-- Use buffer source for `/` (if you enabled `native_menu`, this won't work anymore).
cmp.setup.cmdline('/', {
mapping = cmp.mapping.preset.cmdline(),
sources = {
{ name = 'buffer' }
}
})
-- Use cmdline & path source for ':' (if you enabled `native_menu`, this won't work anymore).
cmp.setup.cmdline(':', {
mapping = cmp.mapping.preset.cmdline(),
sources = cmp.config.sources({
{ name = 'path' }
}, {
{ name = 'cmdline' }
})
})
end,
}
-- terminal toggler
use {
"NvChad/nvterm",
config = function()
require("nvterm").setup()
local toggle_modes = { 'n', 't' }
local mappings = {
{ toggle_modes, '<leader>th', function() require("nvterm.terminal").toggle('horizontal') end },
{ toggle_modes, '<leader>tv', function() require("nvterm.terminal").toggle('vertical') end },
{ toggle_modes, '<leader>tf', function() require("nvterm.terminal").toggle('float') end },
}
local opts = { noremap = true, silent = true }
for _, mapping in ipairs(mappings) do
vim.keymap.set(mapping[1], mapping[2], mapping[3], opts)
end
end
}
--- THEME STUFF
-- colors
use {
'AlphaTechnolog/pywal.nvim',
as = 'pywal',
config = function()
local pywal = require('pywal')
pywal.setup()
end
}
-- better statusbar
use {
'hoob3rt/lualine.nvim',
requires = { { 'kyazdani42/nvim-web-devicons', opt = true } },
config = function()
require('lualine').setup({ options = { theme = 'pywal-nvim' } })
end,
after = 'pywal'
}
-- better tabs
use {
'kdheepak/tabline.nvim',
requires = { { 'kyazdani42/nvim-web-devicons', opt = true } },
config = function()
require('tabline').setup({ options = { theme = 'pywal-nvim' } })
end,
after = { 'pywal' }
}
-- fwatch updates colors automatically
use {
'rktjmp/fwatch.nvim',
config = function()
require('fwatch').watch("/home/abs3nt/.cache/wal/colors",
{ on_event = function()
vim.defer_fn(function()
vim.cmd('colorscheme pywal')
end, 100)
end })
end,
after = 'pywal'
}
-- greeter
use {
'goolord/alpha-nvim',
requires = { 'kyazdani42/nvim-web-devicons' },
config = function()
local alpha = require('alpha')
local dashboard = require('alpha.themes.dashboard')
dashboard.section.header.val = {
[[ ▄▄▄ ▄▄▄▄ ██████ ███▄ █ ▄▄▄█████▓]],
[[▒████▄ ▓█████▄ ▒██ ▒ ██ ▀█ █ ▓ ██▒ ▓▒]],
[[▒██ ▀█▄ ▒██▒ ▄██░ ▓██▄ ▓██ ▀█ ██▒▒ ▓██░ ▒░]],
[[░██▄▄▄▄██ ▒██░█▀ ▒ ██▒▓██▒ ▐▌██▒░ ▓██▓ ░ ]],
[[ ▓█ ▓██▒░▓█ ▀█▓▒██████▒▒▒██░ ▓██░ ▒██▒ ░ ]],
[[ ▒▒ ▓▒█░░▒▓███▀▒▒ ▒▓▒ ▒ ░░ ▒░ ▒ ▒ ▒ ░░ ]],
[[ ▒ ▒▒ ░▒░▒ ░ ░ ░▒ ░ ░░ ░░ ░ ▒░ ░ ]],
[[ ░ ▒ ░ ░ ░ ░ ░ ░ ░ ░ ░ ]],
[[ ░ ░ ░ ░ ░ ]],
[[ ░ ]]
}
dashboard.section.buttons.val = {
dashboard.button("e", " New file", ":ene <BAR> startinsert <CR>"),
dashboard.button("r", " Recently used files", ":Telescope oldfiles<CR>"),
dashboard.button("f", " Find file", ":Telescope find_files<CR>"),
dashboard.button("t", " Find text", ":Telescope live_grep <CR>"),
dashboard.button("s", " Settings",
":e $HOME/.config/nvim/init.lua | :cd %:p:h | split . | wincmd k | pwd<CR>"),
dashboard.button("q", " Quit NVIM", ":qa<CR>"),
}
local handle = assert(io.popen('fortune -s'))
local fortune = handle:read("*all")
handle:close()
dashboard.section.footer.val = fortune
dashboard.section.header.opts.hl = "Title"
dashboard.section.buttons.opts.hl = "Debug"
dashboard.section.footer.opts.hl = "Conceal"
dashboard.config.opts.noautocmd = true
dashboard.config.opts.setup = function()
vim.b.lnstatus = "nonumber"
end
alpha.setup(dashboard.opts)
end
}
end,
config = {
display = {
open_fn = function()
return require('packer.util').float({ border = 'single' })
end
}
} })

View File

@ -0,0 +1,427 @@
-- 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/abs3nt/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?.lua;/home/abs3nt/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?/init.lua;/home/abs3nt/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?.lua;/home/abs3nt/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?/init.lua"
local install_cpath_pattern = "/home/abs3nt/.cache/nvim/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 = {
LuaSnip = {
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/LuaSnip",
url = "https://github.com/L3MON4D3/LuaSnip"
},
["alpha-nvim"] = {
config = { "\27LJ\2\n3\0\0\2\0\4\0\0056\0\0\0009\0\1\0'\1\3\0=\1\2\0K\0\1\0\rnonumber\rlnstatus\6b\bvimô\r\1\0\t\0,\1]6\0\0\0'\2\1\0B\0\2\0026\1\0\0'\3\2\0B\1\2\0029\2\3\0019\2\4\0025\3\6\0=\3\5\0029\2\3\0019\2\a\0024\3\a\0009\4\b\1'\6\t\0'\a\n\0'\b\v\0B\4\4\2>\4\1\0039\4\b\1'\6\f\0'\a\r\0'\b\14\0B\4\4\2>\4\2\0039\4\b\1'\6\15\0'\a\16\0'\b\17\0B\4\4\2>\4\3\0039\4\b\1'\6\18\0'\a\19\0'\b\20\0B\4\4\2>\4\4\0039\4\b\1'\6\21\0'\a\22\0'\b\23\0B\4\4\2>\4\5\0039\4\b\1'\6\24\0'\a\25\0'\b\26\0B\4\4\0?\4\0\0=\3\5\0026\2\27\0006\4\28\0009\4\29\4'\6\30\0B\4\2\0A\2\0\2\18\5\2\0009\3\31\2'\6 \0B\3\3\2\18\6\2\0009\4!\2B\4\2\0019\4\3\0019\4\"\4=\3\5\0049\4\3\0019\4\4\0049\4#\4'\5%\0=\5$\0049\4\3\0019\4\a\0049\4#\4'\5&\0=\5$\0049\4\3\0019\4\"\0049\4#\4'\5'\0=\5$\0049\4(\0019\4#\4+\5\2\0=\5)\0049\4(\0019\4#\0043\5+\0=\5*\0049\4*\0009\6#\1B\4\2\1K\0\1\0\0\nsetup\14noautocmd\vconfig\fConceal\nDebug\nTitle\ahl\topts\vfooter\nclose\t*all\tread\15fortune -s\npopen\aio\vassert\f:qa<CR>\19ï™™ Quit NVIM\6qN:e $HOME/.config/nvim/init.lua | :cd %:p:h | split . | wincmd k | pwd<CR>\18 Settings\6s\30:Telescope live_grep <CR>\19 Find text\6t\30:Telescope find_files<CR>\19ïœ<EFBFBD> Find file\6f\28:Telescope oldfiles<CR>\29 Recently used files\6r :ene <BAR> startinsert <CR>\18ï…› New file\6e\vbutton\fbuttons\1\v\0\0j â–„â–„â–„ â–„â–„â–„â–„ ██████ ███▄ â–ˆ â„â„â„âˆâˆâˆâˆâˆâ“lââˆâˆâˆâˆâ„ ▓█████▄ ▒██ â–’ ██ ▀█ â–ˆ â–“ ██▒ â“ââˆâˆ ▀█▄ ▒██▒ ▄██░ ▓██▄ ▓██ ▀█ ██▒▒ ▓██░ âââˆâˆâ„â„â„â„âˆâˆ ▒██░█▀ â–’ ██▒▓██▒ â<C3A2>âŒâˆâˆââ ▓██▓ â–‘ x â–“â–ˆ ▓██▒░▓█ ▀█▓▒██████▒▒▒██░ ▓██░ ▒██▒ â–‘ l â–’â–’ ▓▒█░░▒▓███▀▒▒ â–’â–“â–’ â–’ â–‘â–‘ â–’â–‘ â–’ â–’ â–’ â–‘â–‘ \\ â–’ â–’â–’ â–‘â–’â–‘â–’ â–‘ â–‘ â–‘â–’ â–‘ â–‘â–‘ â–‘â–‘ â–‘ â–’â–‘ â–‘ J â–‘ â–’ â–‘ â–‘ â–‘ â–‘ â–‘ â–‘ â–‘ â–‘ â–‘ > â–‘ â–‘ â–‘ â–‘ â–‘ 6 â–‘ \bval\vheader\fsection\27alpha.themes.dashboard\nalpha\frequire\r€€À™\4\0" },
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/alpha-nvim",
url = "https://github.com/goolord/alpha-nvim"
},
["cmp-buffer"] = {
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/cmp-buffer",
url = "https://github.com/hrsh7th/cmp-buffer"
},
["cmp-calc"] = {
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/cmp-calc",
url = "https://github.com/hrsh7th/cmp-calc"
},
["cmp-cmdline"] = {
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/cmp-cmdline",
url = "https://github.com/hrsh7th/cmp-cmdline"
},
["cmp-emoji"] = {
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/cmp-emoji",
url = "https://github.com/hrsh7th/cmp-emoji"
},
["cmp-nvim-lsp"] = {
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp",
url = "https://github.com/hrsh7th/cmp-nvim-lsp"
},
["cmp-nvim-lua"] = {
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/cmp-nvim-lua",
url = "https://github.com/hrsh7th/cmp-nvim-lua"
},
["cmp-path"] = {
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/cmp-path",
url = "https://github.com/hrsh7th/cmp-path"
},
["cmp-spell"] = {
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/cmp-spell",
url = "https://github.com/f3fora/cmp-spell"
},
cmp_luasnip = {
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/cmp_luasnip",
url = "https://github.com/saadparwaiz1/cmp_luasnip"
},
["document-color.nvim"] = {
config = { "\27LJ\2\nS\0\0\3\0\4\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\3\0B\0\2\1K\0\1\0\1\0\1\tmode\15background\nsetup\19document-color\frequire\0" },
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/document-color.nvim",
url = "https://github.com/mrshmllow/document-color.nvim"
},
["friendly-snippets"] = {
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/friendly-snippets",
url = "https://github.com/rafamadriz/friendly-snippets"
},
["fwatch.nvim"] = {
config = { "\27LJ\2\n5\0\0\3\0\3\0\0056\0\0\0009\0\1\0'\2\2\0B\0\2\1K\0\1\0\22colorscheme pywal\bcmd\bvim-\1\0\4\0\3\0\0066\0\0\0009\0\1\0003\2\2\0)\3d\0B\0\3\1K\0\1\0\0\rdefer_fn\bvimp\1\0\5\0\a\0\n6\0\0\0'\2\1\0B\0\2\0029\0\2\0'\2\3\0005\3\5\0003\4\4\0=\4\6\3B\0\3\1K\0\1\0\ron_event\1\0\0\0#/home/abs3nt/.cache/wal/colors\nwatch\vfwatch\frequire\0" },
load_after = {},
loaded = true,
needs_bufread = false,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/opt/fwatch.nvim",
url = "https://github.com/rktjmp/fwatch.nvim"
},
["gitsigns.nvim"] = {
config = { "\27LJ\2\n6\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\rgitsigns\frequire\0" },
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/gitsigns.nvim",
url = "https://github.com/lewis6991/gitsigns.nvim"
},
["glow.nvim"] = {
config = { "\27LJ\2\n6\0\0\3\0\3\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0004\2\0\0B\0\2\1K\0\1\0\nsetup\tglow\frequire\0" },
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/glow.nvim",
url = "https://github.com/ellisonleao/glow.nvim"
},
["impatient.nvim"] = {
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/impatient.nvim",
url = "https://github.com/lewis6991/impatient.nvim"
},
["lualine.nvim"] = {
config = { "\27LJ\2\n`\0\0\4\0\6\0\t6\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\4\0005\3\3\0=\3\5\2B\0\2\1K\0\1\0\foptions\1\0\0\1\0\1\ntheme\15pywal-nvim\nsetup\flualine\frequire\0" },
load_after = {},
loaded = true,
needs_bufread = false,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/opt/lualine.nvim",
url = "https://github.com/hoob3rt/lualine.nvim"
},
["markdown-preview.nvim"] = {
loaded = false,
needs_bufread = false,
only_cond = false,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/opt/markdown-preview.nvim",
url = "https://github.com/iamcco/markdown-preview.nvim"
},
["mason-lspconfig"] = {
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/mason-lspconfig",
url = "https://github.com/williamboman/mason-lspconfig"
},
["mason.nvim"] = {
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/mason.nvim",
url = "https://github.com/williamboman/mason.nvim"
},
["nim.nvim"] = {
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/nim.nvim",
url = "https://github.com/alaviss/nim.nvim"
},
["nvim-autopairs"] = {
config = { "\27LJ\2\n@\0\0\3\0\3\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0004\2\0\0B\0\2\1K\0\1\0\nsetup\19nvim-autopairs\frequire\0" },
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/nvim-autopairs",
url = "https://github.com/windwp/nvim-autopairs"
},
["nvim-cmp"] = {
config = { "\27LJ\2\nC\0\1\4\0\4\0\a6\1\0\0'\3\1\0B\1\2\0029\1\2\0019\3\3\0B\1\2\1K\0\1\0\tbody\15lsp_expand\fluasnip\frequireó\6\1\0\n\0/\0v6\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\0016\0\0\0'\2\3\0B\0\2\0029\1\4\0005\3\b\0005\4\6\0003\5\5\0=\5\a\4=\4\t\0035\4\r\0009\5\n\0009\5\v\0059\5\f\5B\5\1\2=\5\14\0049\5\n\0009\5\v\0059\5\f\5B\5\1\2=\5\15\4=\4\v\0039\4\16\0009\4\17\0049\4\18\0045\6\20\0009\a\16\0009\a\19\a)\tüÿB\a\2\2=\a\21\0069\a\16\0009\a\19\a)\t\4\0B\a\2\2=\a\22\0069\a\16\0009\a\23\aB\a\1\2=\a\24\0069\a\16\0009\a\25\aB\a\1\2=\a\26\0069\a\16\0009\a\27\a5\t\28\0B\a\2\2=\a\29\6B\4\2\2=\4\16\0039\4\n\0009\4\30\0044\6\3\0005\a\31\0>\a\1\0065\a \0>\a\2\0064\a\3\0005\b!\0>\b\1\aB\4\3\2=\4\30\3B\1\2\0019\1\4\0009\1\"\1'\3#\0005\4&\0009\5\n\0009\5\30\0054\a\3\0005\b$\0>\b\1\a4\b\3\0005\t%\0>\t\1\bB\5\3\2=\5\30\4B\1\3\0019\1\4\0009\1'\1'\3(\0005\4)\0009\5\16\0009\5\17\0059\5'\5B\5\1\2=\5\16\0044\5\3\0005\6*\0>\6\1\5=\5\30\4B\1\3\0019\1\4\0009\1'\1'\3+\0005\4,\0009\5\16\0009\5\17\0059\5'\5B\5\1\2=\5\16\0049\5\n\0009\5\30\0054\a\3\0005\b-\0>\b\1\a4\b\3\0005\t.\0>\t\1\bB\5\3\2=\5\30\4B\1\3\1K\0\1\0\1\0\1\tname\fcmdline\1\0\1\tname\tpath\1\0\0\6:\1\0\1\tname\vbuffer\1\0\0\6/\fcmdline\1\0\0\1\0\1\tname\vbuffer\1\0\1\tname\fcmp_git\14gitcommit\rfiletype\1\0\1\tname\vbuffer\1\0\1\tname\fluasnip\1\0\1\tname\rnvim_lsp\fsources\t<CR>\1\0\1\vselect\2\fconfirm\n<C-e>\nabort\14<C-Space>\rcomplete\n<C-f>\n<C-b>\1\0\0\16scroll_docs\vinsert\vpreset\fmapping\18documentation\15completion\1\0\0\rbordered\vwindow\vconfig\fsnippet\1\0\0\vexpand\1\0\0\0\nsetup\bcmp\14lazy_load luasnip.loaders.from_vscode\frequire\0" },
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/nvim-cmp",
url = "https://github.com/hrsh7th/nvim-cmp"
},
["nvim-colorizer.lua"] = {
config = { "\27LJ\2\n7\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\14colorizer\frequire\0" },
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/nvim-colorizer.lua",
url = "https://github.com/norcalli/nvim-colorizer.lua"
},
["nvim-dap"] = {
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/nvim-dap",
url = "https://github.com/mfussenegger/nvim-dap"
},
["nvim-lastplace"] = {
config = { "\27LJ\2\nY\0\0\3\0\4\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\3\0B\0\2\1K\0\1\0\1\0\1\25lastplace_open_folds\2\nsetup\19nvim-lastplace\frequire\0" },
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/nvim-lastplace",
url = "https://github.com/ethanholz/nvim-lastplace"
},
["nvim-lspconfig"] = {
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/nvim-lspconfig",
url = "https://github.com/neovim/nvim-lspconfig"
},
["nvim-pasta"] = {
config = { "\27LJ\2\n<EFBFBD>\2\0\0\t\0\14\0 6\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\5\0004\3\3\0006\4\0\0'\6\3\0B\4\2\0029\4\4\4>\4\1\3=\3\6\0026\3\a\0009\3\b\0039\3\t\3'\5\n\0+\6\2\0+\a\2\0+\b\2\0B\3\5\2=\3\v\0026\3\a\0009\3\b\0039\3\t\3'\5\f\0+\6\2\0+\a\2\0+\b\2\0B\3\5\2=\3\r\2B\0\2\1K\0\1\0\rprev_key\n<C-n>\rnext_key\n<C-p>\27nvim_replace_termcodes\bapi\bvim\15converters\1\0\1\15paste_mode\2\16indentation\21pasta.converters\nsetup\npasta\frequire\0" },
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/nvim-pasta",
url = "https://github.com/hrsh7th/nvim-pasta"
},
["nvim-tree.lua"] = {
config = { "\27LJ\2\nÕ\1\0\0\a\0\f\0\0176\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\3\0005\3\4\0005\4\6\0004\5\3\0005\6\5\0>\6\1\5=\5\a\4=\4\b\3=\3\t\0025\3\n\0=\3\v\2B\0\2\1K\0\1\0\rrenderer\1\0\1\16group_empty\2\tview\rmappings\tlist\1\0\0\1\0\2\bkey\6u\vaction\vdir_up\1\0\1\18adaptive_size\2\1\0\1\fsort_by\19case_sensitive\nsetup\14nvim-tree\frequire\0" },
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/nvim-tree.lua",
url = "https://github.com/kyazdani42/nvim-tree.lua"
},
["nvim-web-devicons"] = {
loaded = false,
needs_bufread = false,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/opt/nvim-web-devicons",
url = "https://github.com/kyazdani42/nvim-web-devicons"
},
nvterm = {
config = { "\27LJ\2\nM\0\0\3\0\4\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0'\2\3\0B\0\2\1K\0\1\0\15horizontal\vtoggle\20nvterm.terminal\frequireK\0\0\3\0\4\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0'\2\3\0B\0\2\1K\0\1\0\rvertical\vtoggle\20nvterm.terminal\frequireH\0\0\3\0\4\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0'\2\3\0B\0\2\1K\0\1\0\nfloat\vtoggle\20nvterm.terminal\frequire™\2\1\0\14\0\15\0&6\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\0015\0\3\0004\1\4\0005\2\4\0>\0\1\0023\3\5\0>\3\3\2>\2\1\0015\2\6\0>\0\1\0023\3\a\0>\3\3\2>\2\2\0015\2\b\0>\0\1\0023\3\t\0>\3\3\2>\2\3\0015\2\n\0006\3\v\0\18\5\1\0B\3\2\4X\6\b€6\b\f\0009\b\r\b9\b\14\b:\n\1\a:\v\2\a:\f\3\a\18\r\2\0B\b\5\1E\6\3\3R\6ö\127K\0\1\0\bset\vkeymap\bvim\vipairs\1\0\2\fnoremap\2\vsilent\2\0\1\3\0\0\0\15<leader>tf\0\1\3\0\0\0\15<leader>tv\0\1\3\0\0\0\15<leader>th\1\3\0\0\6n\6t\nsetup\vnvterm\frequire\0" },
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/nvterm",
url = "https://github.com/NvChad/nvterm"
},
["packer.nvim"] = {
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/packer.nvim",
url = "https://github.com/wbthomason/packer.nvim"
},
["plenary.nvim"] = {
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/plenary.nvim",
url = "https://github.com/nvim-lua/plenary.nvim"
},
pywal = {
after = { "tabline.nvim", "fwatch.nvim", "lualine.nvim" },
config = { "\27LJ\2\n3\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\1\2\0B\1\1\1K\0\1\0\nsetup\npywal\frequire\0" },
loaded = true,
only_config = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/pywal",
url = "https://github.com/AlphaTechnolog/pywal.nvim"
},
["rust-tools.nvim"] = {
config = { "\27LJ\2\n·\1\0\2\b\1\v\0\0236\2\0\0009\2\1\0029\2\2\2'\4\3\0'\5\4\0-\6\0\0009\6\5\0069\6\5\0065\a\6\0=\1\a\aB\2\5\0016\2\0\0009\2\1\0029\2\2\2'\4\3\0'\5\b\0-\6\0\0009\6\t\0069\6\t\0065\a\n\0=\1\a\aB\2\5\1K\0\1\0\0À\1\0\0\22code_action_group\14<Leader>a\vbuffer\1\0\0\18hover_actions\14<C-space>\6n\bset\vkeymap\bvimh\1\0\6\0\b\0\f6\0\0\0'\2\1\0B\0\2\0029\1\2\0005\3\6\0005\4\4\0003\5\3\0=\5\5\4=\4\a\3B\1\2\0012\0\0€K\0\1\0\vserver\1\0\0\14on_attach\1\0\0\0\nsetup\15rust-tools\frequire\0" },
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/rust-tools.nvim",
url = "https://github.com/simrat39/rust-tools.nvim"
},
["tabline.nvim"] = {
config = { "\27LJ\2\n`\0\0\4\0\6\0\t6\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\4\0005\3\3\0=\3\5\2B\0\2\1K\0\1\0\foptions\1\0\0\1\0\1\ntheme\15pywal-nvim\nsetup\ftabline\frequire\0" },
load_after = {},
loaded = true,
needs_bufread = false,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/opt/tabline.nvim",
url = "https://github.com/kdheepak/tabline.nvim"
},
["telescope.nvim"] = {
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/telescope.nvim",
url = "https://github.com/nvim-telescope/telescope.nvim"
},
["vim-argwrap"] = {
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/vim-argwrap",
url = "https://github.com/FooSoft/vim-argwrap"
},
["vim-go"] = {
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/vim-go",
url = "https://github.com/fatih/vim-go"
},
["vim-obsession"] = {
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/vim-obsession",
url = "https://github.com/tpope/vim-obsession"
},
["vim-visual-multi"] = {
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/vim-visual-multi",
url = "https://github.com/mg979/vim-visual-multi"
},
vimpeccable = {
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/vimpeccable",
url = "https://github.com/svermeulen/vimpeccable"
},
["which-key.nvim"] = {
config = { "\27LJ\2\n;\0\0\3\0\3\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0004\2\0\0B\0\2\1K\0\1\0\nsetup\14which-key\frequire\0" },
loaded = true,
path = "/home/abs3nt/.local/share/nvim/site/pack/packer/start/which-key.nvim",
url = "https://github.com/folke/which-key.nvim"
}
}
time([[Defining packer_plugins]], false)
-- Setup for: markdown-preview.nvim
time([[Setup for markdown-preview.nvim]], true)
try_loadstring("\27LJ\2\n\2\0\0\2\0\v\0\0216\0\0\0009\0\1\0005\1\3\0=\1\2\0006\0\0\0009\0\1\0'\1\5\0=\1\4\0006\0\0\0009\0\1\0'\1\a\0=\1\6\0006\0\0\0009\0\1\0'\1\t\0=\1\b\0006\0\0\0009\0\1\0)\1\1\0=\1\n\0K\0\1\0\26mkdp_echo_preview_url\tsurf\17mkdp_browser'/home/abs3nt/.cache/wal/colors.css\23mkdp_highlight_css0/home/abs3nt/.config/nvim/static/custom.css\22mkdp_markdown_css\1\2\0\0\rmarkdown\19mkdp_filetypes\6g\bvim\0", "setup", "markdown-preview.nvim")
time([[Setup for markdown-preview.nvim]], false)
-- Config for: nvim-autopairs
time([[Config for nvim-autopairs]], true)
try_loadstring("\27LJ\2\n@\0\0\3\0\3\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0004\2\0\0B\0\2\1K\0\1\0\nsetup\19nvim-autopairs\frequire\0", "config", "nvim-autopairs")
time([[Config for nvim-autopairs]], false)
-- Config for: document-color.nvim
time([[Config for document-color.nvim]], true)
try_loadstring("\27LJ\2\nS\0\0\3\0\4\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\3\0B\0\2\1K\0\1\0\1\0\1\tmode\15background\nsetup\19document-color\frequire\0", "config", "document-color.nvim")
time([[Config for document-color.nvim]], false)
-- Config for: which-key.nvim
time([[Config for which-key.nvim]], true)
try_loadstring("\27LJ\2\n;\0\0\3\0\3\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0004\2\0\0B\0\2\1K\0\1\0\nsetup\14which-key\frequire\0", "config", "which-key.nvim")
time([[Config for which-key.nvim]], false)
-- Config for: pywal
time([[Config for pywal]], true)
try_loadstring("\27LJ\2\n3\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\1\2\0B\1\1\1K\0\1\0\nsetup\npywal\frequire\0", "config", "pywal")
time([[Config for pywal]], false)
-- Config for: nvim-colorizer.lua
time([[Config for nvim-colorizer.lua]], true)
try_loadstring("\27LJ\2\n7\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\14colorizer\frequire\0", "config", "nvim-colorizer.lua")
time([[Config for nvim-colorizer.lua]], false)
-- Config for: glow.nvim
time([[Config for glow.nvim]], true)
try_loadstring("\27LJ\2\n6\0\0\3\0\3\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0004\2\0\0B\0\2\1K\0\1\0\nsetup\tglow\frequire\0", "config", "glow.nvim")
time([[Config for glow.nvim]], false)
-- Config for: nvim-tree.lua
time([[Config for nvim-tree.lua]], true)
try_loadstring("\27LJ\2\nÕ\1\0\0\a\0\f\0\0176\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\3\0005\3\4\0005\4\6\0004\5\3\0005\6\5\0>\6\1\5=\5\a\4=\4\b\3=\3\t\0025\3\n\0=\3\v\2B\0\2\1K\0\1\0\rrenderer\1\0\1\16group_empty\2\tview\rmappings\tlist\1\0\0\1\0\2\bkey\6u\vaction\vdir_up\1\0\1\18adaptive_size\2\1\0\1\fsort_by\19case_sensitive\nsetup\14nvim-tree\frequire\0", "config", "nvim-tree.lua")
time([[Config for nvim-tree.lua]], false)
-- Config for: nvim-cmp
time([[Config for nvim-cmp]], true)
try_loadstring("\27LJ\2\nC\0\1\4\0\4\0\a6\1\0\0'\3\1\0B\1\2\0029\1\2\0019\3\3\0B\1\2\1K\0\1\0\tbody\15lsp_expand\fluasnip\frequireó\6\1\0\n\0/\0v6\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\0016\0\0\0'\2\3\0B\0\2\0029\1\4\0005\3\b\0005\4\6\0003\5\5\0=\5\a\4=\4\t\0035\4\r\0009\5\n\0009\5\v\0059\5\f\5B\5\1\2=\5\14\0049\5\n\0009\5\v\0059\5\f\5B\5\1\2=\5\15\4=\4\v\0039\4\16\0009\4\17\0049\4\18\0045\6\20\0009\a\16\0009\a\19\a)\tüÿB\a\2\2=\a\21\0069\a\16\0009\a\19\a)\t\4\0B\a\2\2=\a\22\0069\a\16\0009\a\23\aB\a\1\2=\a\24\0069\a\16\0009\a\25\aB\a\1\2=\a\26\0069\a\16\0009\a\27\a5\t\28\0B\a\2\2=\a\29\6B\4\2\2=\4\16\0039\4\n\0009\4\30\0044\6\3\0005\a\31\0>\a\1\0065\a \0>\a\2\0064\a\3\0005\b!\0>\b\1\aB\4\3\2=\4\30\3B\1\2\0019\1\4\0009\1\"\1'\3#\0005\4&\0009\5\n\0009\5\30\0054\a\3\0005\b$\0>\b\1\a4\b\3\0005\t%\0>\t\1\bB\5\3\2=\5\30\4B\1\3\0019\1\4\0009\1'\1'\3(\0005\4)\0009\5\16\0009\5\17\0059\5'\5B\5\1\2=\5\16\0044\5\3\0005\6*\0>\6\1\5=\5\30\4B\1\3\0019\1\4\0009\1'\1'\3+\0005\4,\0009\5\16\0009\5\17\0059\5'\5B\5\1\2=\5\16\0049\5\n\0009\5\30\0054\a\3\0005\b-\0>\b\1\a4\b\3\0005\t.\0>\t\1\bB\5\3\2=\5\30\4B\1\3\1K\0\1\0\1\0\1\tname\fcmdline\1\0\1\tname\tpath\1\0\0\6:\1\0\1\tname\vbuffer\1\0\0\6/\fcmdline\1\0\0\1\0\1\tname\vbuffer\1\0\1\tname\fcmp_git\14gitcommit\rfiletype\1\0\1\tname\vbuffer\1\0\1\tname\fluasnip\1\0\1\tname\rnvim_lsp\fsources\t<CR>\1\0\1\vselect\2\fconfirm\n<C-e>\nabort\14<C-Space>\rcomplete\n<C-f>\n<C-b>\1\0\0\16scroll_docs\vinsert\vpreset\fmapping\18documentation\15completion\1\0\0\rbordered\vwindow\vconfig\fsnippet\1\0\0\vexpand\1\0\0\0\nsetup\bcmp\14lazy_load luasnip.loaders.from_vscode\frequire\0", "config", "nvim-cmp")
time([[Config for nvim-cmp]], false)
-- Config for: gitsigns.nvim
time([[Config for gitsigns.nvim]], true)
try_loadstring("\27LJ\2\n6\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\rgitsigns\frequire\0", "config", "gitsigns.nvim")
time([[Config for gitsigns.nvim]], false)
-- Config for: nvim-pasta
time([[Config for nvim-pasta]], true)
try_loadstring("\27LJ\2\n<EFBFBD>\2\0\0\t\0\14\0 6\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\5\0004\3\3\0006\4\0\0'\6\3\0B\4\2\0029\4\4\4>\4\1\3=\3\6\0026\3\a\0009\3\b\0039\3\t\3'\5\n\0+\6\2\0+\a\2\0+\b\2\0B\3\5\2=\3\v\0026\3\a\0009\3\b\0039\3\t\3'\5\f\0+\6\2\0+\a\2\0+\b\2\0B\3\5\2=\3\r\2B\0\2\1K\0\1\0\rprev_key\n<C-n>\rnext_key\n<C-p>\27nvim_replace_termcodes\bapi\bvim\15converters\1\0\1\15paste_mode\2\16indentation\21pasta.converters\nsetup\npasta\frequire\0", "config", "nvim-pasta")
time([[Config for nvim-pasta]], false)
-- Config for: nvim-lastplace
time([[Config for nvim-lastplace]], true)
try_loadstring("\27LJ\2\nY\0\0\3\0\4\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\3\0B\0\2\1K\0\1\0\1\0\1\25lastplace_open_folds\2\nsetup\19nvim-lastplace\frequire\0", "config", "nvim-lastplace")
time([[Config for nvim-lastplace]], false)
-- Config for: nvterm
time([[Config for nvterm]], true)
try_loadstring("\27LJ\2\nM\0\0\3\0\4\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0'\2\3\0B\0\2\1K\0\1\0\15horizontal\vtoggle\20nvterm.terminal\frequireK\0\0\3\0\4\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0'\2\3\0B\0\2\1K\0\1\0\rvertical\vtoggle\20nvterm.terminal\frequireH\0\0\3\0\4\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0'\2\3\0B\0\2\1K\0\1\0\nfloat\vtoggle\20nvterm.terminal\frequire™\2\1\0\14\0\15\0&6\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\0015\0\3\0004\1\4\0005\2\4\0>\0\1\0023\3\5\0>\3\3\2>\2\1\0015\2\6\0>\0\1\0023\3\a\0>\3\3\2>\2\2\0015\2\b\0>\0\1\0023\3\t\0>\3\3\2>\2\3\0015\2\n\0006\3\v\0\18\5\1\0B\3\2\4X\6\b€6\b\f\0009\b\r\b9\b\14\b:\n\1\a:\v\2\a:\f\3\a\18\r\2\0B\b\5\1E\6\3\3R\6ö\127K\0\1\0\bset\vkeymap\bvim\vipairs\1\0\2\fnoremap\2\vsilent\2\0\1\3\0\0\0\15<leader>tf\0\1\3\0\0\0\15<leader>tv\0\1\3\0\0\0\15<leader>th\1\3\0\0\6n\6t\nsetup\vnvterm\frequire\0", "config", "nvterm")
time([[Config for nvterm]], false)
-- Config for: alpha-nvim
time([[Config for alpha-nvim]], true)
try_loadstring("\27LJ\2\n3\0\0\2\0\4\0\0056\0\0\0009\0\1\0'\1\3\0=\1\2\0K\0\1\0\rnonumber\rlnstatus\6b\bvimô\r\1\0\t\0,\1]6\0\0\0'\2\1\0B\0\2\0026\1\0\0'\3\2\0B\1\2\0029\2\3\0019\2\4\0025\3\6\0=\3\5\0029\2\3\0019\2\a\0024\3\a\0009\4\b\1'\6\t\0'\a\n\0'\b\v\0B\4\4\2>\4\1\0039\4\b\1'\6\f\0'\a\r\0'\b\14\0B\4\4\2>\4\2\0039\4\b\1'\6\15\0'\a\16\0'\b\17\0B\4\4\2>\4\3\0039\4\b\1'\6\18\0'\a\19\0'\b\20\0B\4\4\2>\4\4\0039\4\b\1'\6\21\0'\a\22\0'\b\23\0B\4\4\2>\4\5\0039\4\b\1'\6\24\0'\a\25\0'\b\26\0B\4\4\0?\4\0\0=\3\5\0026\2\27\0006\4\28\0009\4\29\4'\6\30\0B\4\2\0A\2\0\2\18\5\2\0009\3\31\2'\6 \0B\3\3\2\18\6\2\0009\4!\2B\4\2\0019\4\3\0019\4\"\4=\3\5\0049\4\3\0019\4\4\0049\4#\4'\5%\0=\5$\0049\4\3\0019\4\a\0049\4#\4'\5&\0=\5$\0049\4\3\0019\4\"\0049\4#\4'\5'\0=\5$\0049\4(\0019\4#\4+\5\2\0=\5)\0049\4(\0019\4#\0043\5+\0=\5*\0049\4*\0009\6#\1B\4\2\1K\0\1\0\0\nsetup\14noautocmd\vconfig\fConceal\nDebug\nTitle\ahl\topts\vfooter\nclose\t*all\tread\15fortune -s\npopen\aio\vassert\f:qa<CR>\19ï™™ Quit NVIM\6qN:e $HOME/.config/nvim/init.lua | :cd %:p:h | split . | wincmd k | pwd<CR>\18 Settings\6s\30:Telescope live_grep <CR>\19 Find text\6t\30:Telescope find_files<CR>\19ïœ<EFBFBD> Find file\6f\28:Telescope oldfiles<CR>\29 Recently used files\6r :ene <BAR> startinsert <CR>\18ï…› New file\6e\vbutton\fbuttons\1\v\0\0j â–„â–„â–„ â–„â–„â–„â–„ ██████ ███▄ â–ˆ â„â„â„âˆâˆâˆâˆâˆâ“lââˆâˆâˆâˆâ„ ▓█████▄ ▒██ â–’ ██ ▀█ â–ˆ â–“ ██▒ â“ââˆâˆ ▀█▄ ▒██▒ ▄██░ ▓██▄ ▓██ ▀█ ██▒▒ ▓██░ âââˆâˆâ„â„â„â„âˆâˆ ▒██░█▀ â–’ ██▒▓██▒ â<C3A2>âŒâˆâˆââ ▓██▓ â–‘ x â–“â–ˆ ▓██▒░▓█ ▀█▓▒██████▒▒▒██░ ▓██░ ▒██▒ â–‘ l â–’â–’ ▓▒█░░▒▓███▀▒▒ â–’â–“â–’ â–’ â–‘â–‘ â–’â–‘ â–’ â–’ â–’ â–‘â–‘ \\ â–’ â–’â–’ â–‘â–’â–‘â–’ â–‘ â–‘ â–‘â–’ â–‘ â–‘â–‘ â–‘â–‘ â–‘ â–’â–‘ â–‘ J â–‘ â–’ â–‘ â–‘ â–‘ â–‘ â–‘ â–‘ â–‘ â–‘ â–‘ > â–‘ â–‘ â–‘ â–‘ â–‘ 6 â–‘ \bval\vheader\fsection\27alpha.themes.dashboard\nalpha\frequire\r€€À™\4\0", "config", "alpha-nvim")
time([[Config for alpha-nvim]], false)
-- Config for: rust-tools.nvim
time([[Config for rust-tools.nvim]], true)
try_loadstring("\27LJ\2\n·\1\0\2\b\1\v\0\0236\2\0\0009\2\1\0029\2\2\2'\4\3\0'\5\4\0-\6\0\0009\6\5\0069\6\5\0065\a\6\0=\1\a\aB\2\5\0016\2\0\0009\2\1\0029\2\2\2'\4\3\0'\5\b\0-\6\0\0009\6\t\0069\6\t\0065\a\n\0=\1\a\aB\2\5\1K\0\1\0\0À\1\0\0\22code_action_group\14<Leader>a\vbuffer\1\0\0\18hover_actions\14<C-space>\6n\bset\vkeymap\bvimh\1\0\6\0\b\0\f6\0\0\0'\2\1\0B\0\2\0029\1\2\0005\3\6\0005\4\4\0003\5\3\0=\5\5\4=\4\a\3B\1\2\0012\0\0€K\0\1\0\vserver\1\0\0\14on_attach\1\0\0\0\nsetup\15rust-tools\frequire\0", "config", "rust-tools.nvim")
time([[Config for rust-tools.nvim]], false)
-- Load plugins in order defined by `after`
time([[Sequenced loading]], true)
vim.cmd [[ packadd tabline.nvim ]]
-- Config for: tabline.nvim
try_loadstring("\27LJ\2\n`\0\0\4\0\6\0\t6\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\4\0005\3\3\0=\3\5\2B\0\2\1K\0\1\0\foptions\1\0\0\1\0\1\ntheme\15pywal-nvim\nsetup\ftabline\frequire\0", "config", "tabline.nvim")
vim.cmd [[ packadd lualine.nvim ]]
-- Config for: lualine.nvim
try_loadstring("\27LJ\2\n`\0\0\4\0\6\0\t6\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\4\0005\3\3\0=\3\5\2B\0\2\1K\0\1\0\foptions\1\0\0\1\0\1\ntheme\15pywal-nvim\nsetup\flualine\frequire\0", "config", "lualine.nvim")
vim.cmd [[ packadd fwatch.nvim ]]
-- Config for: fwatch.nvim
try_loadstring("\27LJ\2\n5\0\0\3\0\3\0\0056\0\0\0009\0\1\0'\2\2\0B\0\2\1K\0\1\0\22colorscheme pywal\bcmd\bvim-\1\0\4\0\3\0\0066\0\0\0009\0\1\0003\2\2\0)\3d\0B\0\3\1K\0\1\0\0\rdefer_fn\bvimp\1\0\5\0\a\0\n6\0\0\0'\2\1\0B\0\2\0029\0\2\0'\2\3\0005\3\5\0003\4\4\0=\4\6\3B\0\3\1K\0\1\0\ron_event\1\0\0\0#/home/abs3nt/.cache/wal/colors\nwatch\vfwatch\frequire\0", "config", "fwatch.nvim")
time([[Sequenced loading]], false)
vim.cmd [[augroup packer_load_aucmds]]
vim.cmd [[au!]]
-- Filetype lazy-loads
time([[Defining lazy-load filetype autocommands]], true)
vim.cmd [[au FileType markdown ++once lua require("packer.load")({'markdown-preview.nvim'}, { ft = "markdown" }, _G.packer_plugins)]]
time([[Defining lazy-load filetype 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

View File

@ -0,0 +1,412 @@
body { background-color: var(--background); }
.markdown-body ol ol,
.markdown-body ul ol,
.markdown-body ol ul,
.markdown-body ul ul,
.markdown-body ol ul ol,
.markdown-body ul ul ol,
.markdown-body ol ul ul,
.markdown-body ul ul ul {
margin-top: 0;
margin-bottom: 0;
}
.markdown-body {
font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, freesans, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
font-size: 16px;
color: var(--foreground);
line-height: 1.6;
word-wrap: break-word;
padding: 45px;
background: var(--background);
border: 0px solid var(--foreground);
-webkit-border-radius: 0 0 3px 3px;
border-radius: 0 0 3px 3px;
}
.markdown-body > *:first-child {
margin-top: 0 !important;
}
.markdown-body > *:last-child {
margin-bottom: 0 !important;
}
.markdown-body .table-of-contents ol {
list-style: none;
}
.markdown-body .table-of-contents > ol {
padding-left: 0;
}
.markdown-body * {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.markdown-body h1,
.markdown-body h2,
.markdown-body h3,
.markdown-body h4,
.markdown-body h5,
.markdown-body h6 {
margin-top: 1em;
margin-bottom: 16px;
font-weight: bold;
line-height: 1.4;
}
.markdown-body h1 .anchor,
.markdown-body h2 .anchor,
.markdown-body h3 .anchor,
.markdown-body h4 .anchor,
.markdown-body h5 .anchor,
.markdown-body h6 .anchor {
margin-left: -24px;
visibility: hidden;
}
.markdown-body h1:hover .anchor,
.markdown-body h2:hover .anchor,
.markdown-body h3:hover .anchor,
.markdown-body h4:hover .anchor,
.markdown-body h5:hover .anchor,
.markdown-body h6:hover .anchor {
visibility: visible;
}
.markdown-body p,
.markdown-body blockquote,
.markdown-body ul,
.markdown-body ol,
.markdown-body dl,
.markdown-body table,
.markdown-body pre {
margin-top: 0;
margin-bottom: 16px;
background-color: var(--background) !important; /* Changes background of code block */
}
.markdown-body h1 {
margin: 0.67em 0;
padding-bottom: 0.3em;
font-size: 2.25em;
line-height: 1.2;
border-bottom: 1px solid var(--color4);
color: var(--color13) !important;
}
.markdown-body h2 {
padding-bottom: 0.3em;
font-size: 1.75em;
line-height: 1.225;
border-bottom: 1px solid var(--color4);
color: var(--color12) !important;
}
.markdown-body h3 {
font-size: 1.5em;
line-height: 1.43;
}
.markdown-body h4 {
font-size: 1.25em;
}
.markdown-body h5 {
font-size: 1em;
}
.markdown-body h6 {
font-size: 1em;
color: var(--color8) !important;
}
.markdown-body hr {
margin-top: 20px;
margin-bottom: 20px;
height: 0;
border: 0;
border-top: 1px solid var(--color4);
}
.markdown-body ol,
.markdown-body ul {
padding-left: 2em;
}
.markdown-body ol ol,
.markdown-body ul ol {
list-style-type: lower-roman;
}
.markdown-body ol ul,
.markdown-body ul ul {
list-style-type: circle;
}
.markdown-body ol ul ul,
.markdown-body ul ul ul {
list-style-type: square;
}
.markdown-body ol {
list-style-type: decimal;
}
.markdown-body ul {
list-style-type: disc;
/* color: var(--color9) !important; */ /* changes color of all bullet lists */
}
li::marker {
color: var(--color14) !important; /* changes color of bullet points */
}
.markdown-body dl {
margin-bottom: 1.3em
}
.markdown-body dl dt {
font-weight: 700;
}
.markdown-body dl dd {
margin-left: 0;
}
.markdown-body dl dd p {
margin-bottom: 0.8em;
}
.markdown-body blockquote {
margin-left: 0;
margin-right: 0;
padding: 0 15px;
color: var(--color8) !important;
border-left: 4px solid var(--color3) !important; /* border denoting block quote */
}
.markdown-body table {
display: block;
width: 100%;
overflow: auto;
word-break: normal;
word-break: keep-all;
border-collapse: collapse;
border-spacing: 0;
}
.markdown-body table tr {
background-color: var(--background) !important; /* Changes bacground color of tables */
border-top: 1px solid var(--color4);
}
.markdown-body table tr:nth-child(2n) {
background-color: #f8f8f8;
}
.markdown-body table th,
.markdown-body table td {
padding: 6px 13px;
border: 1px solid var(--color4); /* color of table cells/border */
}
.markdown-body pre {
word-wrap: normal;
padding: 16px;
overflow: auto;
font-size: 85%;
line-height: 1.45;
background-color: #f7f7f7;
-webkit-border-radius: 3px;
border-radius: 3px;
}
.markdown-body pre code {
display: inline;
max-width: initial;
padding: 0;
margin: 0;
overflow: initial;
font-size: 100%;
line-height: inherit;
word-wrap: normal;
white-space: pre;
-webkit-border-radius: 3px;
border-radius: 3px;
background-color: transparent;
}
.markdown-body pre code:before,
.markdown-body pre code:after {
content: normal;
}
.markdown-body code {
font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace;
padding: 0;
padding-top: 0.2em;
padding-bottom: 0.2em;
margin: 0;
font-size: 85%;
-webkit-border-radius: 3px;
border-radius: 3px;
}
.markdown-body code:before,
.markdown-body code:after {
letter-spacing: -0.2em;
content: "\00a0";
}
.markdown-body a {
color: var(--color2) !important; /* Change style of hyperlinks */
text-decoration: underline;
background: transparent;
}
.markdown-body img {
max-width: 100%;
max-height: 100%;
}
.markdown-body strong {
font-weight: bold;
}
.markdown-body em {
font-style: italic;
}
.markdown-body del {
text-decoration: line-through;
}
.task-list-item {
list-style-type: none;
}
.task-list-item input {
font: 13px/1.4 Helvetica, arial, nimbussansl, liberationsans, freesans, clean, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
margin: 0 0.35em 0.25em -1.6em;
vertical-align: middle;
}
.task-list-item input[disabled] {
cursor: default;
}
.task-list-item input[type="checkbox"] {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
padding: 0;
}
.task-list-item input[type="radio"] {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
padding: 0;
}
/* Below are the page settings */
#page-ctn {
margin: 0 auto;
max-width: 900px;
}
#page-header {
padding: 8px;
background-color: var(--background) !important;
border-color: var(--foreground) !important;
border-style: solid;
border-width: 1px 1px 0;
border-top-left-radius: 3px;
border-top-right-radius: 3px;
}
#page-header svg {
display: inline-block;
margin-right: 5px;
overflow: hidden;
fill: var(--foreground) !important;
}
#page-header h3 {
display: flex;
align-items: center;
margin-top: 0;
margin-bottom: 0;
padding-right: 16px;
font-size: 14px;
font-weight: 600;
color: var(--foreground) !important;
}
/* Highlight settings */
.hljs {
display: block;
overflow-x: auto;
padding: 0.5em;
/* color: #333; */
color: var(--color7) !important;
background: var(--background) !important;
}
.hljs-comment,
.hljs-quote {
color: var(--color8) !important; /* color of comments */
font-style: italic;
}
.hljs-keyword,
.hljs-selector-tag,
.hljs-subst {
color: var(--color4) !important;
font-weight: bold;
}
.hljs-number,
.hljs-literal,
.hljs-variable,
.hljs-template-variable,
.hljs-tag .hljs-attr {
color: var(--color5) !important;
}
.hljs-string,
.hljs-doctag {
color: var(--color1) !important;
}
.hljs-title,
.hljs-section,
.hljs-selector-id {
color: var(--color3) !important; /* Color of function title */
font-weight: bold;
}
.hljs-subst {
font-weight: normal;
}
.hljs-type,
.hljs-class .hljs-title {
color: var(--color2) !important; /* Color of class title */
font-weight: bold;
}
.hljs-tag,
.hljs-name,
.hljs-attribute {
font-weight: normal;
color: var(--color6) !important; /* Color of XML/HTML tags */
}
.hljs-regexp,
.hljs-link {
/* color: #009926; */
color: var(--color9) !important;
}
.hljs-symbol,
.hljs-bullet {
/* color: #990073; */
color: var(--color10) !important;
}
.hljs-built_in,
.hljs-builtin-name {
/* color: #0086b3; */
color: var(--color12) !important;
}
.hljs-meta {
color: var(--color8) !important; /* Color of meta tags */
font-weight: bold;
}
.hljs-deletion {
background: var(--color3);
}
.hljs-addition {
background: #dfd;
}
.hljs-emphasis {
font-style: italic;
}
.hljs-strong {
font-weight: bold;
}
.katex-html {
color: var(--color6);
}

408
.config/picom/picom.conf Normal file
View File

@ -0,0 +1,408 @@
#################################
# Shadows #
#################################
# Enabled client-side shadows on windows. Note desktop windows
# (windows with '_NET_WM_WINDOW_TYPE_DESKTOP') never get shadow,
# unless explicitly requested using the wintypes option.
#
# shadow = false
shadow = true;
# The blur radius for shadows, in pixels. (defaults to 12)
# shadow-radius = 12
shadow-radius = 7;
# The opacity of shadows. (0.0 - 1.0, defaults to 0.75)
# shadow-opacity = .75
# The left offset for shadows, in pixels. (defaults to -15)
# shadow-offset-x = -15
shadow-offset-x = -7;
# The top offset for shadows, in pixels. (defaults to -15)
# shadow-offset-y = -15
shadow-offset-y = -7;
# Avoid drawing shadows on dock/panel windows. This option is deprecated,
# you should use the *wintypes* option in your config file instead.
#
# no-dock-shadow = false
# Don't draw shadows on drag-and-drop windows. This option is deprecated,
# you should use the *wintypes* option in your config file instead.
#
# no-dnd-shadow = false
# Red color value of shadow (0.0 - 1.0, defaults to 0).
# shadow-red = 0
# Green color value of shadow (0.0 - 1.0, defaults to 0).
# shadow-green = 0
# Blue color value of shadow (0.0 - 1.0, defaults to 0).
# shadow-blue = 0
# Do not paint shadows on shaped windows. Note shaped windows
# here means windows setting its shape through X Shape extension.
# Those using ARGB background is beyond our control.
# Deprecated, use
# shadow-exclude = 'bounding_shaped'
# or
# shadow-exclude = 'bounding_shaped && !rounded_corners'
# instead.
#
# shadow-ignore-shaped = ''
# Specify a list of conditions of windows that should have no shadow.
#
# examples:
# shadow-exclude = "n:e:Notification";
#
# shadow-exclude = []
shadow-exclude = [
"name = 'Notification'",
"class_g = 'Conky'",
"class_g ?= 'Notify-osd'",
"class_g = 'Cairo-clock'",
"_GTK_FRAME_EXTENTS@:c"
];
# Specify a X geometry that describes the region in which shadow should not
# be painted in, such as a dock window region. Use
# shadow-exclude-reg = "x10+0+0"
# for example, if the 10 pixels on the bottom of the screen should not have shadows painted on.
#
# shadow-exclude-reg = ""
# Crop shadow of a window fully on a particular Xinerama screen to the screen.
# xinerama-shadow-crop = false
#################################
# Fading #
#################################
# Fade windows in/out when opening/closing and when opacity changes,
# unless no-fading-openclose is used.
# fading = false
fading = false
# Opacity change between steps while fading in. (0.01 - 1.0, defaults to 0.028)
# fade-in-step = 0.028
fade-in-step = .05;
# Opacity change between steps while fading out. (0.01 - 1.0, defaults to 0.03)
# fade-out-step = 0.03
fade-out-step = .05;
# The time between steps in fade step, in milliseconds. (> 0, defaults to 10)
# fade-delta = 10
# Specify a list of conditions of windows that should not be faded.
# fade-exclude = []
# Do not fade on window open/close.
# no-fading-openclose = false
# Do not fade destroyed ARGB windows with WM frame. Workaround of bugs in Openbox, Fluxbox, etc.
# no-fading-destroyed-argb = false
#################################
# Transparency / Opacity #
#################################
# Opacity of inactive windows. (0.1 - 1.0, defaults to 1.0)
# inactive-opacity = 1
#inactive-opacity = 0.8;
# Opacity of window titlebars and borders. (0.1 - 1.0, disabled by default)
# frame-opacity = 1.0
#frame-opacity = 0.7;
# Default opacity for dropdown menus and popup menus. (0.0 - 1.0, defaults to 1.0)
# menu-opacity = 1.0
# Let inactive opacity set by -i override the '_NET_WM_OPACITY' values of windows.
# inactive-opacity-override = true
inactive-opacity-override = false;
# Default opacity for active windows. (0.0 - 1.0, defaults to 1.0)
#active-opacity = .8
# Dim inactive windows. (0.0 - 1.0, defaults to 0.0)
# inactive-dim = 0.0
# Specify a list of conditions of windows that should always be considered focused.
# focus-exclude = []
#focus-exclude = [ "class_g = 'Cairo-clock'" ];
# Use fixed inactive dim value, instead of adjusting according to window opacity.
# inactive-dim-fixed = 1.0
# Specify a list of opacity rules, in the format `PERCENT:PATTERN`,
# like `50:name *= "Firefox"`. picom-trans is recommended over this.
# Note we don't make any guarantee about possible conflicts with other
# programs that set '_NET_WM_WINDOW_OPACITY' on frame or client windows.
# example:
#opacity-rule = [ "90:class_g = 'org.wezfurlong.wezterm'" ];
#
# opacity-rule = []
#################################
# Background-Blurring #
#################################
# Parameters for background blurring, see the *BLUR* section for more information.
# blur-method =
# blur-size = 12
#
# blur-deviation = false
# Blur background of semi-transparent / ARGB windows.
# Bad in performance, with driver-dependent behavior.
# The name of the switch may change without prior notifications.
#
#blur-background = true
# Blur background of windows when the window frame is not opaque.
# Implies:
# blur-background
# Bad in performance, with driver-dependent behavior. The name may change.
#
# blur-background-frame = false
# Use fixed blur strength rather than adjusting according to window opacity.
# blur-background-fixed = false
# Specify the blur convolution kernel, with the following format:
# example:
# blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1";
#
# blur-kern = ''
blur-kern = "3x3box";
# Exclude conditions for background blur.
# blur-background-exclude = []
blur-background-exclude = [
"window_type = 'dock'",
"window_type = 'desktop'",
"_GTK_FRAME_EXTENTS@:c"
];
#################################
# General Settings #
#################################
# Daemonize process. Fork to background after initialization. Causes issues with certain (badly-written) drivers.
# daemon = false
# Specify the backend to use: `xrender`, `glx`, or `xr_glx_hybrid`.
# `xrender` is the default one.
#
backend = "glx"
# Enable/disable VSync.
#vsync = false
vsync = true
# Enable remote control via D-Bus. See the *D-BUS API* section below for more details.
dbus = true
# Try to detect WM windows (a non-override-redirect window with no
# child that has 'WM_STATE') and mark them as active.
#
# mark-wmwin-focused = false
mark-wmwin-focused = true;
# Mark override-redirect windows that doesn't have a child window with 'WM_STATE' focused.
# mark-ovredir-focused = false
mark-ovredir-focused = true;
# Try to detect windows with rounded corners and don't consider them
# shaped windows. The accuracy is not very high, unfortunately.
#
# detect-rounded-corners = false
detect-rounded-corners = true;
# Detect '_NET_WM_OPACITY' on client windows, useful for window managers
# not passing '_NET_WM_OPACITY' of client windows to frame windows.
#
# detect-client-opacity = false
detect-client-opacity = true;
# Limit picom to repaint at most once every 1 / 'refresh_rate' second to
# boost performance. This should not be used with
# vsync drm/opengl/opengl-oml
# as they essentially does sw-opti's job already,
# unless you wish to specify a lower refresh rate than the actual value.
#
# sw-opti =
# Use EWMH '_NET_ACTIVE_WINDOW' to determine currently focused window,
# rather than listening to 'FocusIn'/'FocusOut' event. Might have more accuracy,
# provided that the WM supports it.
#
# use-ewmh-active-win = false
# Unredirect all windows if a full-screen opaque window is detected,
# to maximize performance for full-screen windows. Known to cause flickering
# when redirecting/unredirecting windows.
#
# unredir-if-possible = false
# Delay before unredirecting the window, in milliseconds. Defaults to 0.
# unredir-if-possible-delay = 0
# Conditions of windows that shouldn't be considered full-screen for unredirecting screen.
# unredir-if-possible-exclude = []
# Use 'WM_TRANSIENT_FOR' to group windows, and consider windows
# in the same group focused at the same time.
#
# detect-transient = false
detect-transient = true
# Use 'WM_CLIENT_LEADER' to group windows, and consider windows in the same
# group focused at the same time. 'WM_TRANSIENT_FOR' has higher priority if
# detect-transient is enabled, too.
#
# detect-client-leader = false
detect-client-leader = true
# Resize damaged region by a specific number of pixels.
# A positive value enlarges it while a negative one shrinks it.
# If the value is positive, those additional pixels will not be actually painted
# to screen, only used in blur calculation, and such. (Due to technical limitations,
# with use-damage, those pixels will still be incorrectly painted to screen.)
# Primarily used to fix the line corruption issues of blur,
# in which case you should use the blur radius value here
# (e.g. with a 3x3 kernel, you should use `--resize-damage 1`,
# with a 5x5 one you use `--resize-damage 2`, and so on).
# May or may not work with *--glx-no-stencil*. Shrinking doesn't function correctly.
#
# resize-damage = 1
# Specify a list of conditions of windows that should be painted with inverted color.
# Resource-hogging, and is not well tested.
#
# invert-color-include = []
# GLX backend: Avoid using stencil buffer, useful if you don't have a stencil buffer.
# Might cause incorrect opacity when rendering transparent content (but never
# practically happened) and may not work with blur-background.
# My tests show a 15% performance boost. Recommended.
#
# glx-no-stencil = false
# GLX backend: Avoid rebinding pixmap on window damage.
# Probably could improve performance on rapid window content changes,
# but is known to break things on some drivers (LLVMpipe, xf86-video-intel, etc.).
# Recommended if it works.
#
# glx-no-rebind-pixmap = false
# Disable the use of damage information.
# This cause the whole screen to be redrawn everytime, instead of the part of the screen
# has actually changed. Potentially degrades the performance, but might fix some artifacts.
# The opposing option is use-damage
#
# no-use-damage = false
use-damage = true
# Use X Sync fence to sync clients' draw calls, to make sure all draw
# calls are finished before picom starts drawing. Needed on nvidia-drivers
# with GLX backend for some users.
#
# xrender-sync-fence = false
# GLX backend: Use specified GLSL fragment shader for rendering window contents.
# See `compton-default-fshader-win.glsl` and `compton-fake-transparency-fshader-win.glsl`
# in the source tree for examples.
#
# glx-fshader-win = ''
# Force all windows to be painted with blending. Useful if you
# have a glx-fshader-win that could turn opaque pixels transparent.
#
# force-win-blend = false
# Do not use EWMH to detect fullscreen windows.
# Reverts to checking if a window is fullscreen based only on its size and coordinates.
#
# no-ewmh-fullscreen = false
# Dimming bright windows so their brightness doesn't exceed this set value.
# Brightness of a window is estimated by averaging all pixels in the window,
# so this could comes with a performance hit.
# Setting this to 1.0 disables this behaviour. Requires --use-damage to be disabled. (default: 1.0)
#
# max-brightness = 1.0
# Make transparent windows clip other windows like non-transparent windows do,
# instead of blending on top of them.
#
# transparent-clipping = false
# Set the log level. Possible values are:
# "trace", "debug", "info", "warn", "error"
# in increasing level of importance. Case doesn't matter.
# If using the "TRACE" log level, it's better to log into a file
# using *--log-file*, since it can generate a huge stream of logs.
#
# log-level = "debug"
log-level = "warn";
# Set the log file.
# If *--log-file* is never specified, logs will be written to stderr.
# Otherwise, logs will to written to the given file, though some of the early
# logs might still be written to the stderr.
# When setting this option from the config file, it is recommended to use an absolute path.
#
# log-file = '/path/to/your/log/file'
# Show all X errors (for debugging)
# show-all-xerrors = false
# Write process ID to a file.
# write-pid-path = '/path/to/your/log/file'
# Window type settings
#
# 'WINDOW_TYPE' is one of the 15 window types defined in EWMH standard:
# "unknown", "desktop", "dock", "toolbar", "menu", "utility",
# "splash", "dialog", "normal", "dropdown_menu", "popup_menu",
# "tooltip", "notification", "combo", and "dnd".
#
# Following per window-type options are available: ::
#
# fade, shadow:::
# Controls window-type-specific shadow and fade settings.
#
# opacity:::
# Controls default opacity of the window type.
#
# focus:::
# Controls whether the window of this type is to be always considered focused.
# (By default, all window types except "normal" and "dialog" has this on.)
#
# full-shadow:::
# Controls whether shadow is drawn under the parts of the window that you
# normally won't be able to see. Useful when the window has parts of it
# transparent, and you want shadows in those areas.
#
# redir-ignore:::
# Controls whether this type of windows should cause screen to become
# redirected again after been unredirected. If you have unredir-if-possible
# set, and doesn't want certain window to cause unnecessary screen redirection,
# you can set this to `true`.
#

4
.config/rofi/config Normal file
View File

@ -0,0 +1,4 @@
rofi.theme: /usr/share/rofi/themes/Pop-Dark.rasi
rofi.terminal: /bin/wezterm
rofi.ssh-client: ssh
rofi.ssh-command: {terminal} {ssh-client} {host}

7
.config/rofi/config.rasi Normal file
View File

@ -0,0 +1,7 @@
configuration {
terminal: "wezterm";
ssh-client: "ssh";
ssh-command: "{terminal} {ssh-client} {host}";
}
@import "~/.cache/wal/colors-rofi-dark"

176
.config/sxhkd/sxhkdrc Normal file
View File

@ -0,0 +1,176 @@
#
# wm independent hotkeys
#
# terminal emulator
super + Return
wezterm
# gospt
#
super + ctrl + alt + y
gospt link | xclip -selection c && gospt nowplaying | while read OUTPUT; do notify-send -t 4000 "Copied" "$OUTPUT"; done
super + ctrl + alt + p
gospt toggleplay && gospt nowplaying | while read OUTPUT; do notify-send -t 4000 "$OUTPUT"; done
super + ctrl + alt + n
gospt next && gospt nowplaying | while read OUTPUT; do notify-send -t 4000 "$OUTPUT"; done
super + ctrl + alt + h
gospt previous && gospt nowplaying | while read OUTPUT; do notify-send -t 4000 "$OUTPUT"; done
super + ctrl + alt + l
gospt like && gospt nowplaying | while read OUTPUT; do notify-send -t 4000 "Liked" "$OUTPUT"; done
super + ctrl + alt + u
gospt unlike && gospt nowplaying | while read OUTPUT; do notify-send -t 4000 "Unliked" "$OUTPUT"; done
super + ctrl + alt + m
gospt radio && gospt nowplaying | while read OUTPUT; do notify-send -t 4000 "Radio" "$OUTPUT"; done
# file manager
super + h
pcmanfm
# program launcher
super + d
rofi -modi combi -combi-modi drun,window,ssh -show combi
# web browser
super + Delete
brave --new-window
XF86AudioMute
pamixer -t
XF86AudioRaiseVolume
pamixer -i 5
XF86AudioLowerVolume
pamixer -d 5
XF86AudioMicMute
pamixer --default-source -t
# wallpaper
super + shift + w
set_wallpaper
# clipboard history
super + shift + v
rofi -modi "clipboard:greenclip print" -show clipboard -run-command '{cmd}'
# screenshot
super + shift + s
flameshot gui
# lockscreen
super + alt + l
betterlockscreen -l dim
# make sxhkd reload its configuration files:
super + Escape
pkill -USR1 -x sxhkd
#
# bspwm hotkeys
#
# quit/restart bspwm
super + alt + {q,r}
bspc {quit,wm -r}
# close or kill
super + shift + q
bspc node -c
# alternate between the tiled and monocle layout
super + m
bspc desktop -l next
# send the newest marked node to the newest preselected node
super + y
bspc node newest.marked.local -n newest.!automatic.local
# swap the current node and the biggest window
super + g
bspc node -s biggest.window
#
# state/flags
#
# set the window state
super + {t,shift + t,s,f}
bspc node -t {tiled,pseudo_tiled,floating,fullscreen}
# set the node flags
super + ctrl + {m,x,y,z}
bspc node -g {marked,locked,sticky,private}
#
# focus/swap
#
# focus the node in the given direction
super + {_,shift + }{Left,Down,Up,Right}
bspc node -{f,s} {west,south,north,east}
# focus the node for the given path jump
super + {p,b,comma,period}
bspc node -f @{parent,brother,first,second}
# focus the next/previous window in the current desktop
super + {_,shift + }c
bspc node -f {next,prev}.local.!hidden.window
# focus the next/previous desktop in the current monitor
super + bracket{left,right}
bspc desktop -f {prev,next}.local
# focus the last node/desktop
super + {grave,Tab}
bspc {node,desktop} -f last
# focus the older or newer node in the focus history
super + {o,i}
bspc wm -h off; \
bspc node {older,newer} -f; \
bspc wm -h on
# focus or send to the given desktop
super + {_,shift + }{1-9,0}
bspc {desktop -f,node -d} '^{1-9,10}'
#
# preselect
#
# preselect the direction
super + ctrl + {Left,Down,Up,Right}
bspc node -p {west,south,north,east}
# preselect the ratio
super + ctrl + {1-9}
bspc node -o 0.{1-9}
# cancel the preselection for the focused node
super + ctrl + space
bspc node -p cancel
# cancel the preselection for the focused desktop
super + ctrl + shift + space
bspc query -N -d | xargs -I id -n 1 bspc node id -p cancel
#
# move/resize
#
# expand a window by moving one of its side outward
super + alt + {Left,Down,Up,Right}
bspc node -z {left -20 0,bottom 0 20,top 0 -20,right 20 0}
# contract a window by moving one of its side inward
super + alt + shift + {Left,Down,Up,Right}
bspc node -z {right -20 0,top 0 20,bottom 0 -20,left 20 0}

36
.config/tmux/tmux.conf Normal file
View File

@ -0,0 +1,36 @@
unbind C-b
set -g prefix C-a
bind-key C-a send-prefix
bind c new-window -c "#{pane_current_path}"
bind | split-window -h -c "#{pane_current_path}"
bind - split-window -v -c "#{pane_current_path}"
unbind '"'
unbind %
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'laktak/extrakto'
set -g @plugin 'tmux-plugins/tmux-resurrect'
set -g @plugin 'tmux-plugins/tmux-continuum'
set -g @resurrect-strategy-nvim 'session'
set -g @plugin 'tmux-plugins/tmux-yank'
set -g @continuum-restore 'on'
set -g @continuum-boot 'on'
bind r source-file ~/.tmux.conf
set -g base-index 1
setw -g pane-base-index 1
set -sg escape-time 0
set -g mouse on
set -g default-terminal "screen-256color"
set-option -g focus-events on
set-option -sa terminal-overrides '.screen-256color:RGB'
set-window-option -g mode-keys vi
set -g status-right '#{now_playing}'
run '~/.local/share/tmux/plugings/tpm/tpm'

View File

@ -0,0 +1,28 @@
local color_scheme_base = {{
background = '{background}',
foreground = '{foreground}',
cursor_bg = '#e5dae5',
cursor_border = '#a5aaa5',
ansi = {{
'{color0}',
'{color1}',
'{color2}',
'{color3}',
'{color4}',
'{color5}',
'{color6}',
'{color7}',
}},
brights = {{
'{color8}',
'{color9}',
'{color10}',
'{color11}',
'{color12}',
'{color13}',
'{color14}',
'{color15}',
}},
}}
return color_scheme_base

View File

@ -0,0 +1,21 @@
# Shell variables
# Generated by 'wal'
wallpaper="{wallpaper}"
# Colors
color0='{color0.strip}'
color1='{color1.strip}'
color2='{color2.strip}'
color3='{color3.strip}'
color4='{color4.strip}'
color5='{color5.strip}'
color6='{color6.strip}'
color7='{color7.strip}'
color8='{color8.strip}'
color9='{color9.strip}'
color10='{color10.strip}'
color11='{color11.strip}'
color12='{color12.strip}'
color13='{color13.strip}'
color14='{color14.strip}'
color15='{color15.strip}'

View File

@ -0,0 +1,34 @@
[colors]
ansi = [
'{color0}',
'{color1}',
'{color2}',
'{color3}',
'{color4}',
'{color5}',
'{color6}',
'{color7}',
]
background = '{background}'
brights = [
'{color8}',
'{color9}',
'{color10}',
'{color11}',
'{color12}',
'{color13}',
'{color14}',
'{color15}',
]
cursor_bg = '#bbbbbb'
cursor_border = '#bbbbbb'
cursor_fg = '#ffffff'
foreground = '{foreground}'
selection_bg = '#b5d5ff'
selection_fg = '#000000'
[colors.indexed]
[metadata]
name = 'Pywal'
origin_url = 'https://github.com/dylanaraps/pywal'

View File

@ -0,0 +1,21 @@
$wallpaper {wallpaper}
$background = {background.strip}
$foreground = {foreground.strip}
$color0 = {color0.strip}
$color1 = {color1.strip}
$color2 = {color2.strip}
$color3 = {color3.strip}
$color4 = {color4.strip}
$color5 = {color5.strip}
$color6 = {color6.strip}
$color7 = {color7.strip}
$color8 = {color8.strip}
$color9 = {color9.strip}
$color10 = {color10.strip}
$color11 = {color11.strip}
$color12 = {color12.strip}
$color13 = {color13.strip}
$color14 = {color14.strip}
$color15 = {color15.strip}

View File

@ -0,0 +1,22 @@
" Special
let wallpaper = "{wallpaper}"
let foreground = "{foreground}"
let cursor = "{cursor}"
" Colors
let color0 = "{color0}"
let color1 = "{color1}"
let color2 = "{color2}"
let color3 = "{color3}"
let color4 = "{color4}"
let color5 = "{color5}"
let color6 = "{color6}"
let color7 = "{color7}"
let color8 = "{color8}"
let color9 = "{color9}"
let color10 = "{color10}"
let color11 = "{color11}"
let color12 = "{color12}"
let color13 = "{color13}"
let color14 = "{color14}"
let color15 = "{color15}"

View File

@ -0,0 +1,43 @@
local wezterm = require 'wezterm'
local act = wezterm.action
local home = os.getenv("HOME")
wezterm.add_to_config_reload_watch_list(home .. '/.cache/wal/col.toml')
return {
warn_about_missing_glyphs = false,
mouse_bindings = {
{
event = { Down = { streak = 1, button = { WheelUp = 1 } } },
mods = 'CTRL',
action = act.IncreaseFontSize,
},
{
event = { Down = { streak = 1, button = { WheelDown = 1 } } },
mods = 'CTRL',
action = act.DecreaseFontSize,
},
},
adjust_window_size_when_changing_font_size = false,
window_decorations = "NONE",
initial_rows = 50,
initial_cols = 140,
enable_tab_bar = false,
enable_scroll_bar = false,
underline_position = -1,
cursor_thickness = 1,
max_fps = 165,
window_close_confirmation = 'NeverPrompt',
window_padding = {
right = 0,
left = 0,
top = 0,
bottom = 0,
},
font = wezterm.font("mononoki Nerd Font", { weight = 'Medium' }),
font_size = 12.0,
color_scheme_dirs = { home .. '/.cache/wal' },
color_scheme = "Pywal",
window_background_opacity = .9,
}

193
.config/zsh/.p10k.zsh Normal file
View File

@ -0,0 +1,193 @@
# Generated by Powerlevel10k configuration wizard on 2023-02-17 at 17:22 PST.
# Based on romkatv/powerlevel10k/config/p10k-pure.zsh, checksum 35142.
# Wizard options: nerdfont-complete + powerline, large icons, pure, original, 12h time,
# 1 line, sparse, instant_prompt=quiet.
# Type `p10k configure` to generate another config.
#
# Config file for Powerlevel10k with the style of Pure (https://github.com/sindresorhus/pure).
#
# Differences from Pure:
#
# - Git:
# - `@c4d3ec2c` instead of something like `v1.4.0~11` when in detached HEAD state.
# - No automatic `git fetch` (the same as in Pure with `PURE_GIT_PULL=0`).
#
# Apart from the differences listed above, the replication of Pure prompt is exact. This includes
# even the questionable parts. For example, just like in Pure, there is no indication of Git status
# being stale; prompt symbol is the same in command, visual and overwrite vi modes; when prompt
# doesn't fit on one line, it wraps around with no attempt to shorten it.
#
# If you like the general style of Pure but not particularly attached to all its quirks, type
# `p10k configure` and pick "Lean" style. This will give you slick minimalist prompt while taking
# advantage of Powerlevel10k features that aren't present in Pure.
# Temporarily change options.
'builtin' 'local' '-a' 'p10k_config_opts'
[[ ! -o 'aliases' ]] || p10k_config_opts+=('aliases')
[[ ! -o 'sh_glob' ]] || p10k_config_opts+=('sh_glob')
[[ ! -o 'no_brace_expand' ]] || p10k_config_opts+=('no_brace_expand')
'builtin' 'setopt' 'no_aliases' 'no_sh_glob' 'brace_expand'
() {
emulate -L zsh -o extended_glob
# Unset all configuration options.
unset -m '(POWERLEVEL9K_*|DEFAULT_USER)~POWERLEVEL9K_GITSTATUS_DIR'
# Zsh >= 5.1 is required.
[[ $ZSH_VERSION == (5.<1->*|<6->.*) ]] || return
# Prompt colors.
local grey='242'
local red='1'
local yellow='3'
local blue='4'
local magenta='5'
local cyan='6'
local white='7'
# Left prompt segments.
typeset -g POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(
context # user@host
dir # current directory
vcs # git status
command_execution_time # previous command duration
virtualenv # python virtual environment
prompt_char # prompt symbol
)
# Right prompt segments.
typeset -g POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(
# command_execution_time # previous command duration
# virtualenv # python virtual environment
# context # user@host
time # current time
)
# Basic style options that define the overall prompt look.
typeset -g POWERLEVEL9K_BACKGROUND= # transparent background
typeset -g POWERLEVEL9K_{LEFT,RIGHT}_{LEFT,RIGHT}_WHITESPACE= # no surrounding whitespace
typeset -g POWERLEVEL9K_{LEFT,RIGHT}_SUBSEGMENT_SEPARATOR=' ' # separate segments with a space
typeset -g POWERLEVEL9K_{LEFT,RIGHT}_SEGMENT_SEPARATOR= # no end-of-line symbol
typeset -g POWERLEVEL9K_VISUAL_IDENTIFIER_EXPANSION= # no segment icons
# Add an empty line before each prompt except the first. This doesn't emulate the bug
# in Pure that makes prompt drift down whenever you use the Alt-C binding from fzf or similar.
typeset -g POWERLEVEL9K_PROMPT_ADD_NEWLINE=true
# Magenta prompt symbol if the last command succeeded.
typeset -g POWERLEVEL9K_PROMPT_CHAR_OK_{VIINS,VICMD,VIVIS}_FOREGROUND=$magenta
# Red prompt symbol if the last command failed.
typeset -g POWERLEVEL9K_PROMPT_CHAR_ERROR_{VIINS,VICMD,VIVIS}_FOREGROUND=$red
# Default prompt symbol.
typeset -g POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VIINS_CONTENT_EXPANSION=''
# Prompt symbol in command vi mode.
typeset -g POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VICMD_CONTENT_EXPANSION=''
# Prompt symbol in visual vi mode is the same as in command mode.
typeset -g POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VIVIS_CONTENT_EXPANSION=''
# Prompt symbol in overwrite vi mode is the same as in command mode.
typeset -g POWERLEVEL9K_PROMPT_CHAR_OVERWRITE_STATE=false
# Grey Python Virtual Environment.
typeset -g POWERLEVEL9K_VIRTUALENV_FOREGROUND=$grey
# Don't show Python version.
typeset -g POWERLEVEL9K_VIRTUALENV_SHOW_PYTHON_VERSION=false
typeset -g POWERLEVEL9K_VIRTUALENV_{LEFT,RIGHT}_DELIMITER=
# Blue current directory.
typeset -g POWERLEVEL9K_DIR_FOREGROUND=$blue
# Context format when root: user@host. The first part white, the rest grey.
typeset -g POWERLEVEL9K_CONTEXT_ROOT_TEMPLATE="%F{$white}%n%f%F{$grey}@%m%f"
# Context format when not root: user@host. The whole thing grey.
typeset -g POWERLEVEL9K_CONTEXT_TEMPLATE="%F{$grey}%n@%m%f"
# Don't show context unless root or in SSH.
typeset -g POWERLEVEL9K_CONTEXT_{DEFAULT,SUDO}_CONTENT_EXPANSION=
# Show previous command duration only if it's >= 5s.
typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_THRESHOLD=5
# Don't show fractional seconds. Thus, 7s rather than 7.3s.
typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_PRECISION=0
# Duration format: 1d 2h 3m 4s.
typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_FORMAT='d h m s'
# Yellow previous command duration.
typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_FOREGROUND=$yellow
# Grey Git prompt. This makes stale prompts indistinguishable from up-to-date ones.
typeset -g POWERLEVEL9K_VCS_FOREGROUND=$grey
# Disable async loading indicator to make directories that aren't Git repositories
# indistinguishable from large Git repositories without known state.
typeset -g POWERLEVEL9K_VCS_LOADING_TEXT=
# Don't wait for Git status even for a millisecond, so that prompt always updates
# asynchronously when Git state changes.
typeset -g POWERLEVEL9K_VCS_MAX_SYNC_LATENCY_SECONDS=0
# Cyan ahead/behind arrows.
typeset -g POWERLEVEL9K_VCS_{INCOMING,OUTGOING}_CHANGESFORMAT_FOREGROUND=$cyan
# Don't show remote branch, current tag or stashes.
typeset -g POWERLEVEL9K_VCS_GIT_HOOKS=(vcs-detect-changes git-untracked git-aheadbehind)
# Don't show the branch icon.
typeset -g POWERLEVEL9K_VCS_BRANCH_ICON=
# When in detached HEAD state, show @commit where branch normally goes.
typeset -g POWERLEVEL9K_VCS_COMMIT_ICON='@'
# Don't show staged, unstaged, untracked indicators.
typeset -g POWERLEVEL9K_VCS_{STAGED,UNSTAGED,UNTRACKED}_ICON=
# Show '*' when there are staged, unstaged or untracked files.
typeset -g POWERLEVEL9K_VCS_DIRTY_ICON='*'
# Show '⇣' if local branch is behind remote.
typeset -g POWERLEVEL9K_VCS_INCOMING_CHANGES_ICON=':⇣'
# Show '⇡' if local branch is ahead of remote.
typeset -g POWERLEVEL9K_VCS_OUTGOING_CHANGES_ICON=':⇡'
# Don't show the number of commits next to the ahead/behind arrows.
typeset -g POWERLEVEL9K_VCS_{COMMITS_AHEAD,COMMITS_BEHIND}_MAX_NUM=1
# Remove space between '⇣' and '⇡' and all trailing spaces.
typeset -g POWERLEVEL9K_VCS_CONTENT_EXPANSION='${${${P9K_CONTENT/⇣* :⇡/⇣⇡}// }//:/ }'
# Grey current time.
typeset -g POWERLEVEL9K_TIME_FOREGROUND=$grey
# Format for the current time: 09:51:02. See `man 3 strftime`.
typeset -g POWERLEVEL9K_TIME_FORMAT='%D{%I:%M:%S %p}'
# If set to true, time will update when you hit enter. This way prompts for the past
# commands will contain the start times of their commands rather than the end times of
# their preceding commands.
typeset -g POWERLEVEL9K_TIME_UPDATE_ON_COMMAND=false
# Transient prompt works similarly to the builtin transient_rprompt option. It trims down prompt
# when accepting a command line. Supported values:
#
# - off: Don't change prompt when accepting a command line.
# - always: Trim down prompt when accepting a command line.
# - same-dir: Trim down prompt when accepting a command line unless this is the first command
# typed after changing current working directory.
typeset -g POWERLEVEL9K_TRANSIENT_PROMPT=off
# Instant prompt mode.
#
# - off: Disable instant prompt. Choose this if you've tried instant prompt and found
# it incompatible with your zsh configuration files.
# - quiet: Enable instant prompt and don't print warnings when detecting console output
# during zsh initialization. Choose this if you've read and understood
# https://github.com/romkatv/powerlevel10k/blob/master/README.md#instant-prompt.
# - verbose: Enable instant prompt and print a warning when detecting console output during
# zsh initialization. Choose this if you've never tried instant prompt, haven't
# seen the warning, or if you are unsure what this all means.
typeset -g POWERLEVEL9K_INSTANT_PROMPT=quiet
# Hot reload allows you to change POWERLEVEL9K options after Powerlevel10k has been initialized.
# For example, you can type POWERLEVEL9K_BACKGROUND=red and see your prompt turn red. Hot reload
# can slow down prompt by 1-2 milliseconds, so it's better to keep it turned off unless you
# really need it.
typeset -g POWERLEVEL9K_DISABLE_HOT_RELOAD=true
# If p10k is already loaded, reload configuration.
# This works even with POWERLEVEL9K_DISABLE_HOT_RELOAD=true.
(( ! $+functions[p10k] )) || p10k reload
}
# Tell `p10k configure` which file it should overwrite.
typeset -g POWERLEVEL9K_CONFIG_FILE=${${(%):-%x}:a}
(( ${#p10k_config_opts} )) && setopt ${p10k_config_opts[@]}
'builtin' 'unset' 'p10k_config_opts'

1831
.config/zsh/.zcompdump Normal file

File diff suppressed because it is too large Load Diff

104
.config/zsh/.zshrc Normal file
View File

@ -0,0 +1,104 @@
#neofetch
nitch
#potatoe
# Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc.
# Initialization code that may require console input (password prompts, [y/n]
# confirmations, etc.) must go above this block; everything else may go below.
if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then
source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
fi
export XDG_DATA_HOME=$HOME/.local/share
export XDG_CONFIG_HOME=$HOME/.config
export XDG_STATE_HOME=$HOME/.localse/state
export XDG_CACHE_HOME=$HOME/.cache
export KUBECONFIG=$(find ~/.kube/configs -type f -printf '%p:')
export USE_GKE_GCLOUD_AUTH_PLUGIN=True
export EDITOR=nvim
export LIBVA_DRIVER_NAME=nvidia
export LESSHISTFILE=$XDG_STATE_HOME/less/history
export NIMBLE_DIR=$XDG_DATA_HOME/nimble
export CARGO_HOME=$XDG_DATA_HOME/cargo
export GOPATH=$XDG_DATA_HOME/go
export GOBIN=$GOPATH/bin
export NPM_CONFIG_USERCONFIG="$XDG_CONFIG_HOME"/npm/npmrc
export RUSTUP_HOME="$XDG_DATA_HOME"/rustup
PATH="$PATH:/home/abs3nt/.local/bin"
PATH="$PATH:/home/abs3nt/.local/lib/python3.9/site-packages"
PATH="$PATH:/home/abs3nt/.cargo/bin"
PATH="$PATH:/home/abs3nt/go/bin"
PATH="$PATH:/usr/lib/node_modules/npm"
PATH="$PATH:/usr/local/opt/openjdk/libexec/openjdk.jdk/Contents/Home/bin"
PATH="$PATH:/home/abs3nt/.nimble/bin"
# ZSH SETTINGS
HISTFILE=$XDG_STATE_HOME/zsh/history
HISTSIZE=10000
SAVEHIST=10000
setopt appendhistory
unsetopt beep
### Added by Zinit's installer
if [[ ! -f $HOME/.local/share/zinit/zinit.git/zinit.zsh ]]; then
print -P "%F{33} %F{220}Installing %F{33}ZDHARMA-CONTINUUM%F{220} Initiative Plugin Manager (%F{33}zdharma-continuum/zinit%F{220})…%f"
command mkdir -p "$HOME/.local/share/zinit" && command chmod g-rwX "$HOME/.local/share/zinit"
command git clone https://github.com/zdharma-continuum/zinit "$HOME/.local/share/zinit/zinit.git" && \
print -P "%F{33} %F{34}Installation successful.%f%b" || \
print -P "%F{160} The clone has failed.%f%b"
fi
source "$HOME/.local/share/zinit/zinit.git/zinit.zsh"
autoload -Uz _zinit
(( ${+_comps} )) && _comps[zinit]=_zinit
### END
__git_files () {
_wanted files expl 'local files' _files
}
# PLUGINS
zinit ice lucid wait'0'
zinit light joshskidmore/zsh-fzf-history-search
zinit ice depth=1; zinit light romkatv/powerlevel10k
zinit light zsh-users/zsh-autosuggestions
zinit light zsh-users/zsh-history-substring-search
zinit light z-shell/F-Sy-H
zinit load z-shell/H-S-MW
# append completions to fpath
fpath=(/bedrock/share/zsh/completion /bedrock/cross/zsh-completion $fpath)
# initialise completions with ZSH's compinit
autoload -Uz compinit && compinit
compinit -d "$XDG_CACHE_HOME"/zsh/zcompdump-"$ZSH_VERSION"
# ALIASES
for f in $XDG_CONFIG_HOME/zsh/aliases/*; do source $f; done
# KEYBINDING
bindkey '^[[A' history-substring-search-up
bindkey '^[[B' history-substring-search-down
# PLUGIN SETTINGS
HISTORY_SUBSTRING_SEARCH_HIGHLIGHT_FOUND=false
HISTORY_SUBSTRING_SEARCH_HIGHLIGHT_NOT_FOUND=false
HISTORY_SUBSTRING_SEARCH_ENSURE_UNIQUE=true
export ZSH_FZF_HISTORY_SEARCH_REMOVE_DUPLICATES=1
export ZSH_FZF_HISTORY_SEARCH_DATES_IN_SEARCH=0
export ZSH_FZF_HISTORY_SEARCH_EVENT_NUMBERS=0
eval "$(dircolors)"
zstyle ':completion:*' list-colors ${(s.:.)LS_COLORS}
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
[[ ! -f ${ZDOTDIR:-~}/.p10k.zsh ]] || source ${ZDOTDIR:-~}/.p10k.zsh
# The next line updates PATH for the Google Cloud SDK.
if [ -f '/home/abs3nt/Dev/google-cloud-sdk/path.zsh.inc' ]; then . '/home/abs3nt/Dev/google-cloud-sdk/path.zsh.inc'; fi
# The next line enables shell command completion for gcloud.
if [ -f '/home/abs3nt/Dev/google-cloud-sdk/completion.zsh.inc' ]; then . '/home/abs3nt/Dev/google-cloud-sdk/completion.zsh.inc'; fi

View File

@ -0,0 +1,31 @@
alias speakers='goxlr-client volume headphones 0 && goxlr-client volume line-out 100'
alias headphones='goxlr-client volume headphones 100 && goxlr-client volume line-out 0'
alias pi='ssh admin@10.0.0.5'
alias attach='tmux a -t'
alias eth_block='printf "%d\n" $(curl -s "https://brilliant.staging.gfx.town?method=eth_blockNumber" | jq -r .result)'
alias ovpn3_connect='openvpn3 session-start --config ~/GFX/client.ovpn'
alias ovpn3_disconnect='openvpn3 session-manage --disconnect --config ~/GFX/client.ovpn'
alias unplex='ssh UnPlex'
alias stern='stern --container-state running,waiting,terminated'
alias colo='sudo openfortivpn -c ~/.config/vpn.conf'
alias mkdir='mkdir -pv'
alias calc='fend'
alias grep='rg -i'
if hash exa 2>/dev/null; then
alias ls='exa'
alias l='exa -l --all --group-directories-first --git'
alias ll='exa -l --all --all --group-directories-first --git'
alias lt='exa -T --git-ignore --level=2 --group-directories-first'
alias llt='exa -lT --git-ignore --level=2 --group-directories-first'
alias lT='exa -T --git-ignore --level=4 --group-directories-first'
else
alias l='ls -lah'
alias ll='ls -alF'
alias la='ls -A'
fi
alias cat='bat'

File diff suppressed because it is too large Load Diff