Compare commits

...

28 Commits

Author SHA1 Message Date
vxclutch
d8e3f5cfe5 gtk 2026-06-03 19:57:29 -04:00
vxclutch
5ad742b480 FRC commands 2026-06-03 15:32:20 -04:00
vxclutch
952b42d6fa java lsp 2026-06-03 14:59:03 -04:00
vxclutch
fff7973002 save 2026-06-03 14:45:54 -04:00
vxclutch
60d2037773 save 2026-06-02 21:45:18 -04:00
vxclutch
31ef90cac7 save 2026-06-02 21:43:47 -04:00
vxclutch
69ff9f8178 Add notifications 2026-06-02 21:41:26 -04:00
vxclutch
4d31b771da save 2026-06-02 21:32:53 -04:00
vxclutch
7168ebdf67 many updates 2026-06-01 22:07:00 -04:00
vxclutch
ac3bd086f1 more walls 2026-05-28 16:43:54 -04:00
vxclutch
c8f305f3f6 I LOVE VIM 2026-05-28 16:26:11 -04:00
vxclutch
7b1be8febf more papers 2026-05-28 15:42:47 -04:00
vxclutch
81a56bd9aa save 2026-05-27 17:49:49 -04:00
vxclutch
f6405c1d1c no more theme cuz st 2026-05-26 17:21:01 -04:00
vxclutch
014c16efca ysap theme 2026-05-25 17:40:42 -04:00
vxclutch
12165ce6a4 save 2026-05-25 13:24:39 -04:00
vxclutch
220f31c95c save 2026-05-24 20:12:13 -04:00
vxclutch
d940b1eab8 eza themes 2026-05-23 21:25:08 -04:00
vxclutch
e36aa04074 systray 2026-05-23 19:57:09 -04:00
vxclutch
041d199e5d save 2026-05-23 19:31:10 -04:00
vxclutch
6d9ee0868d save 2026-05-23 19:19:53 -04:00
vxclutch
3047669cd7 save 2026-05-23 08:27:05 -04:00
vxclutch
47bc357cea save 2026-05-22 21:00:33 -04:00
vxclutch
594c28c706 seconds 2026-05-21 11:05:42 -04:00
vxclutch
e19b21bd7b save 2026-05-12 17:04:35 -04:00
vxclutch
6d21303cf3 save 2026-05-10 17:48:50 -04:00
vxclutch
aa6bd32845 Merge branch 'main' of https://git.vxserver.dev/vx-clutch/dotfiles 2026-05-09 17:16:21 -04:00
vxclutch
aede1dbb21 save 2026-05-09 17:16:03 -04:00
49 changed files with 335 additions and 146 deletions

View File

@@ -1,6 +0,0 @@
{
"workspace.library": [
"/home/linuxbrew/.linuxbrew/Cellar/neovim/HEAD-c374d78_1/share/nvim/runtime",
"${3rd}/luv/library"
]
}

2
bin/.local/bin/sober Executable file
View File

@@ -0,0 +1,2 @@
#!/bin/sh
flatpak run org.vinegarhq.Sober

21
eza/.config/eza/theme.yml Normal file
View File

@@ -0,0 +1,21 @@
colourful: true
filenames:
"documents":
icon:
glyph: 󰲂
"downloads":
icon:
glyph: 󰉍
"media":
icon:
glyph: 󱍙
"programming":
icon:
glyph: 󰚝
"walls":
icon:
glyph: 󰉏
"dotfiles":
icon:
glyph: 󱁿

View File

@@ -0,0 +1 @@
eb3159e9-ccfe-40cf-b4aa-9e2f3efd87b6

View File

@@ -0,0 +1,2 @@
[Settings]
gtk-application-prefer-dark-theme=1

View File

@@ -0,0 +1 @@
vim.opt_local.makeprg = "./gradlew build"

View File

@@ -0,0 +1,12 @@
vim.opt_local.textwidth = 80
vim.opt_local.wrap = true
vim.opt_local.linebreak = true
vim.opt_local.list = false
vim.opt_local.spell = true
vim.opt_local.spelllang = "en_us"
vim.opt_local.conceallevel = 2
vim.opt_local.concealcursor = "nv"
vim.opt_local.autoindent = true
vim.opt_local.shiftwidth = 2
vim.opt_local.tabstop = 2
vim.opt_local.expandtab = true

View File

@@ -1,12 +0,0 @@
setlocal textwidth=80
setlocal wrap
setlocal linebreak
setlocal nolist
setlocal spell
setlocal spelllang=en_us
setlocal conceallevel=2
setlocal concealcursor=nv
setlocal autoindent
setlocal shiftwidth=2
setlocal tabstop=2
setlocal expandtab

View File

@@ -2,3 +2,4 @@ require 'plugins'
require 'configs'
require 'lsp'
require 'keymaps'
require 'commands'

View File

@@ -0,0 +1,21 @@
---@type vim.lsp.Config
return {
cmd = {
"jdtls",
"-data",
vim.fn.stdpath("data") .. "/jdtls-workspace/" .. vim.fn.fnamemodify(vim.fn.getcwd(), ":p:h:t"),
},
filetypes = { "java" },
root_markers = {
"gradlew",
"mvnw",
"pom.xml",
"build.gradle",
"build.gradle.kts",
".git",
},
single_file_support = false,
}

View File

@@ -0,0 +1,39 @@
vim.api.nvim_create_user_command('SimulateRobotCode', function()
vim.fn.jobstart({
"./gradlew",
"simulateJava",
}, {
stdout_buffered = true,
stderr_buffered = true,
on_stdout = function(_, data)
end,
on_stderr = function(_, data)
end,
})
end, {})
vim.api.nvim_create_user_command("DeployRobotCode", function()
vim.fn.jobstart({
"./gradlew",
"deploy",
"-PteamNumber=245",
"--offline",
"--console=plain",
"--warning-mode=none",
"-q"
}, {
stdout_buffered = true,
stderr_buffered = true,
on_stdout = function(_, data)
if data then
vim.notify(table.concat(data, "\n"))
end
end,
on_stderr = function(_, data)
if data then
vim.notify(table.concat(data, "\n"), vim.log.levels.ERROR)
end
end,
})
end, {})

View File

@@ -7,6 +7,8 @@ opt.wrap = false
opt.splitright = true
opt.splitbelow = true
vim.api.nvim_set_option("clipboard", "unnamedplus")
vim.cmd("colorscheme vim")
-- mini.pick colors

View File

@@ -13,5 +13,6 @@ for _, k in ipairs({ "h", "j", "k", "l" }) do
end
keymap("n", "<leader>f", ":Pick files<CR>")
keymap("n", "<leader>g", ":Pick grep_live<CR>")
keymap("n", "<leader>lf", vim.lsp.buf.format)

View File

@@ -1,10 +1,8 @@
vim.lsp.enable {
"bashls",
"gopls",
"lua_ls",
"clangd",
"jdtls",
"rust-analyzer",
}
vim.diagnostic.config { virtual_text = true, underline = true, signs = false }

View File

@@ -8,10 +8,16 @@ vim.pack.add {
version = "1.*",
},
{ src = "https://github.com/nvim-lualine/lualine.nvim" },
{ src = "https://github.com/sphamba/smear-cursor.nvim" },
{ src = "https://github.com/m00qek/baleia.nvim" },
{ src = "https://github.com/esmuellert/codediff.nvim" },
{ src = "https://github.com/NeogitOrg/neogit" },
}
require("mini.pick").setup {}
require("lualine").setup {}
require("smear_cursor").setup {}
require('blink.cmp').setup {
fuzzy = { implementation = 'prefer_rust_with_warning' },
@@ -52,3 +58,5 @@ require('blink.cmp').setup {
}
}
}
require("neogit").setup {}

View File

@@ -1,10 +1,18 @@
{
"plugins": {
"baleia.nvim": {
"rev": "710537ff5cd669c5a76c5f5b6a9169fd9b913d18",
"src": "https://github.com/m00qek/baleia.nvim"
},
"blink.cmp": {
"rev": "d0c5196dae32c53cde1208161554906f5b982de8",
"src": "https://github.com/saghen/blink.cmp",
"version": "'1.*'"
},
"codediff.nvim": {
"rev": "29b06f37251f2e010f53a0892573b2ec03d165e2",
"src": "https://github.com/esmuellert/codediff.nvim"
},
"friendly-snippets": {
"rev": "6cd7280adead7f586db6fccbd15d2cac7e2188b9",
"src": "https://github.com/rafamadriz/friendly-snippets"
@@ -17,10 +25,22 @@
"rev": "8521fe21df86e08d9e4b3c3f3a7d50e47954e1af",
"src": "https://github.com/nvim-mini/mini.pick"
},
"neogit": {
"rev": "99326a1310fb2d616b455d2fd16d01bf00682f06",
"src": "https://github.com/NeogitOrg/neogit"
},
"nvim-jdtls": {
"rev": "77ccaeb422f8c81b647605da5ddb4a7f725cda90",
"src": "https://codeberg.org/mfussenegger/nvim-jdtls"
},
"nvim-notify": {
"rev": "8701bece920b38ea289b457f902e2ad184131a5d",
"src": "https://github.com/rcarriga/nvim-notify"
},
"smear-cursor.nvim": {
"rev": "9e9378d6ee34bb3782e0e8c63d9ec8ca618b479b",
"src": "https://github.com/sphamba/smear-cursor.nvim"
},
"todo-comments.nvim": {
"rev": "31e3c38ce9b29781e4422fc0322eb0a21f4e8668",
"src": "https://github.com/folke/todo-comments.nvim"

View File

@@ -21,6 +21,15 @@ local tags = { "1", "2", "3", "4", "5", "6", "7", "8", "9" }
local bar_font = "BigBlueTermPlus Nerd Font:style=Regular"
local is_desktop = nil
local success, _, _ = os.execute("nmcli >/dev/null")
if success then
is_desktop = nil
else
is_desktop = "yes"
end
local blocks = {
oxwm.bar.block.ram({
format = "Ram: {used}/{total} GB",
@@ -34,14 +43,18 @@ local blocks = {
color = colors.lavender,
underline = false,
}),
oxwm.bar.block.shell({
is_desktop or oxwm.bar.block.shell({
format = "{}",
command = "uname -r",
interval = 999999999,
command = "nmcli -t -f STATE general",
color = colors.red,
underline = true,
underline = false,
interval = 5,
click = {
command = "st -e nmtui",
floating = true,
}
}),
oxwm.bar.block.static({
is_desktop or oxwm.bar.block.static({
text = "",
interval = 999999999,
color = colors.lavender,
@@ -49,13 +62,12 @@ local blocks = {
}),
oxwm.bar.block.datetime({
format = "{}",
date_format = "%a, %b %d - %-I:%M %P",
date_format = "%a, %b %d - %-I:%M:%S %P",
interval = 1,
color = colors.cyan,
underline = true,
}),
-- Uncomment to add battery status (useful for laptops)
oxwm.bar.block.battery({
is_desktop or oxwm.bar.block.battery({
format = "Bat: {}%",
charging = "⚡ Bat: {}%",
discharging = "- Bat: {}%",
@@ -63,22 +75,21 @@ local blocks = {
interval = 30,
color = colors.green,
underline = true,
-- click: run a command when the block is clicked
-- click = "alacritty -e btop",
-- click = { command = "bluetui", floating = true },
click = { command = "st -e btop", floating = true },
}),
oxwm.bar.block.systray({})
};
oxwm.set_terminal(terminal)
oxwm.set_modkey(modkey)
oxwm.set_tags(tags)
oxwm.set_layout_symbol("tiling", "[T]")
oxwm.set_layout_symbol("normie", "[F]")
oxwm.set_layout_symbol("tabbed", "[=]")
oxwm.key.bind({ modkey }, "C", oxwm.layout.set("tiling"))
oxwm.key.bind({ "Mod4" }, "T", oxwm.layout.set("tabbed"))
oxwm.key.bind({ modkey }, "N", oxwm.layout.set("scrolling"))
oxwm.rule.add({ instance = "atlauncher", floating = true })
oxwm.rule.add({ instance = "minecraft", floating = false })
oxwm.border.set_width(2)
oxwm.border.set_focused_color(colors.blue)
@@ -98,20 +109,19 @@ oxwm.bar.set_scheme_selected(colors.cyan, colors.bg, colors.purple)
oxwm.bar.set_scheme_urgent(colors.red, colors.bg, colors.red)
oxwm.key.bind({ modkey }, "B", oxwm.spawn({ "librewolf" }))
oxwm.key.bind({ modkey }, "D", oxwm.spawn({ "vesktop" }))
oxwm.key.bind({ modkey }, "D", oxwm.spawn({ "vesktop-bin" }))
oxwm.key.bind({ modkey }, "G", oxwm.spawn({ "steam" }))
oxwm.key.bind({ modkey }, "M", oxwm.spawn({ "ATLauncher" }))
oxwm.key.bind({ modkey }, "S", oxwm.spawn({ "flatpak", "run", "org.vinegarhq.Sober" }))
oxwm.key.bind({ modkey }, "S", oxwm.spawn({ "flatpak run org.vinegarhq.Sober" }))
oxwm.key.bind({ modkey }, "Return", oxwm.spawn_terminal())
oxwm.key.bind({ modkey }, "Space", oxwm.spawn({ "sh", "-c", "dmenu_run -l 10" }))
oxwm.key.bind({ modkey, "Shift" }, "S", oxwm.spawn({ "sh", "-c", "maim -s | xclip -selection clipboard -t image/png" }))
oxwm.key.bind({ modkey }, "w", oxwm.client.kill())
oxwm.key.bind({ modkey }, "W", oxwm.client.kill())
oxwm.key.bind({ modkey, "Shift" }, "Slash", oxwm.show_keybinds())
oxwm.key.bind({ modkey, "Shift" }, "Space", oxwm.toggle_bar())
oxwm.key.bind({ modkey }, "F", oxwm.client.toggle_fullscreen())
oxwm.key.bind({ modkey }, "V", oxwm.client.toggle_floating())
oxwm.key.bind({ modkey }, "C", oxwm.layout.set("tiling"))
oxwm.key.bind({ modkey }, "T", oxwm.layout.set("tabbed"))
oxwm.key.bind({ modkey }, "H", oxwm.set_master_factor(-5))
oxwm.key.bind({ modkey }, "L", oxwm.set_master_factor(5))
oxwm.key.bind({ modkey }, "I", oxwm.inc_num_master(1))
@@ -124,6 +134,17 @@ oxwm.key.bind({ modkey }, "K", oxwm.client.focus_stack(-1))
oxwm.key.bind({ modkey, "Shift" }, "J", oxwm.client.move_stack(1))
oxwm.key.bind({ modkey, "Shift" }, "K", oxwm.client.move_stack(-1))
oxwm.key.bind({}, "XF86AudioMute", oxwm.spawn({ "wpctl set-mute @DEFAULT_SINK@ toggle" }))
oxwm.key.bind({}, "XF86AudioRaiseVolume", oxwm.spawn({ "wpctl set-volume @DEFAULT_SINK@ 3%+" }))
oxwm.key.bind({}, "XF86AudioLowerVolume", oxwm.spawn({ "wpctl set-volume @DEFAULT_SINK@ 3%-" }))
oxwm.key.bind({ modkey }, "XF86AudioRaiseVolume", oxwm.spawn({ "wpctl set-volume @DEFAULT_SINK@ 10%+" }))
oxwm.key.bind({ modkey }, "XF86AudioLowerVolume", oxwm.spawn({ "wpctl set-volume @DEFAULT_SINK@ 10%-" }))
oxwm.key.bind({}, "XF86MonBrightnessUp", oxwm.spawn({ "brightnessctl set +10%" }))
oxwm.key.bind({}, "XF86MonBrightnessDown", oxwm.spawn({ "brightnessctl set 10%-" }))
oxwm.key.bind({ modkey }, "XF86MonBrightnessUp", oxwm.spawn({ "brightnessctl set 100%" }))
oxwm.key.bind({ modkey }, "XF86MonBrightnessDown", oxwm.spawn({ "brightnessctl set 0%" }))
oxwm.key.bind({ modkey }, "1", oxwm.tag.view(0))
oxwm.key.bind({ modkey }, "2", oxwm.tag.view(1))
oxwm.key.bind({ modkey }, "3", oxwm.tag.view(2))
@@ -164,22 +185,12 @@ oxwm.key.bind({ modkey, "Control", "Shift" }, "7", oxwm.tag.toggletag(6))
oxwm.key.bind({ modkey, "Control", "Shift" }, "8", oxwm.tag.toggletag(7))
oxwm.key.bind({ modkey, "Control", "Shift" }, "9", oxwm.tag.toggletag(8))
-------------------------------------------------------------------------------
-- Advanced: Keychords
-------------------------------------------------------------------------------
-- Keychords allow you to bind multiple-key sequences (like Emacs or Vim)
-- Format: {{modifiers}, key1}, {{modifiers}, key2}, ...
-- Example: Press Mod4+Space, then release and press T to spawn a terminal
-- oxwm.key.chord({
-- { { modkey }, "Space" },
-- { {}, "T" }
-- }, oxwm.spawn_terminal())
oxwm.key.chord({
{ { modkey }, "R" },
{ {}, "C" }
}, oxwm.spawn({ "$HOME/wpilib/2026/frccode/frccode2026" }))
oxwm.autostart("export _JAVA_AWT_WM_NONREPARENTING=1")
local walls = {
emacs = "emacsfield.png",
maxwell = "never_falter.png"
}
oxwm.autostart("xwallpaper --stretch $HOME/walls/" .. walls.emacs)
oxwm.autostart("~/walls/set")
oxwm.autostart("fastcompmgr")
oxwm.autostart("gentoo-pipewire-launcher")
oxwm.autostart("dunst")

BIN
walls/walls/bedroom.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 MiB

BIN
walls/walls/blackhole.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 941 KiB

BIN
walls/walls/gentoo_ufo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 140 KiB

BIN
walls/walls/gradient.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 643 KiB

BIN
walls/walls/gtg1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 611 KiB

BIN
walls/walls/gtg2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 398 KiB

BIN
walls/walls/heylarry.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 90 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 MiB

BIN
walls/walls/penger_11.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 164 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 194 KiB

BIN
walls/walls/penger_xp.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 193 KiB

3
walls/walls/set Executable file
View File

@@ -0,0 +1,3 @@
#!/bin/sh
xwallpaper --stretch $(ls -1 $HOME/walls/*.png | shuf -n 1)

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

BIN
walls/walls/vim.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

BIN
walls/walls/white_dunes.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 MiB

3
xinitrc/.xinitrc Executable file
View File

@@ -0,0 +1,3 @@
#!/bin/sh
export _JAVA_AWT_WM_NONREPARENTING=1
exec dbus-launch --exit-with-session oxwm

View File

@@ -2,8 +2,9 @@ export TERM=xterm-256color
export XDG_DOWNLOAD_DIR="$HOME/downloads"
export XDG_PROJECTS_DIR="$HOME/programming"
export XDG_DESKTOP_DIR="$HOME"
export XDG_DOCUMENTS_DIR="$HOME/media"
export XDG_DOCUMENTS_DIR="$HOME/documents"
export XDG_MUSIC_DIR="$HOME/media"
export XDG_PICTURES_DIR="$HOME/media"
export XDG_PUBLICSHARE_DIR="$HOME/media"
@@ -15,60 +16,120 @@ export SUDO_EDITOR=nvim
export GOPATH="$HOME/.local/go"
export HISTSIZE=10000
export SAVEHIST=10000
export HISTFILE="$HOME/.cache/zsh/history"
setopt append_history
setopt inc_append_history
setopt share_history
setopt interactive_comments
setopt autocd
setopt auto_param_slash
setopt dot_glob
setopt extended_glob
export PATH="$HOME/.local/bin:$HOME/.local/go/bin:$HOME/opt/bin:$PATH"
export PATH="$HOME/.local/bin:$HOME/.local/go/bin:$HOME/opt/bin:$HOME/.cargo/bin:$PATH"
export LD_LIBRARY_PATH="$HOME/opt/lib:${LD_LIBRARY_PATH:-}"
alias ls='ls --color=auto'
alias ll='ls -lah'
alias gg='lazygit'
alias v='nvim'
alias rr='russ read'
alias cp='cp -v'
alias sd='st -d "$(pwd)" > /dev/null 2>&1 & disown'
ZAP_DIR="${XDG_DATA_HOME:-$HOME/.local/share}/zap"
[ -f "$ZAP_DIR/zap.zsh" ] && source "$ZAP_DIR/zap.zsh"
take() {
mkdir -p -- "$1" && cd -- "$1"
}
bindkey -e
autoload -Uz compinit colors
autoload -U bashcompinit
colors
compinit
bashcompinit
PS1="%B%{$fg[red]%}[%{$fg[yellow]%}%n%{$fg[green]%}@%{$fg[blue]%}%M %{$fg[magenta]%}%~%{$fg[red]%}]%{$reset_color%}$%b "
if [ -f "$HOME/.zprofile" ]; then
source "$HOME/.zprofile"
fi
[ -f "$HOME/.zprofile" ] && source "$HOME/.zprofile"
if [ -x /home/linuxbrew/.linuxbrew/bin/brew ]; then
eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
fi
ZAP_DIR="${XDG_DATA_HOME:-$HOME/.local/share}/zap"
HISTFILE="${ZDOTDIR:-$HOME}/.zsh_history"
HISTSIZE=50000
SAVEHIST=50000
if [ -f "$ZAP_DIR/zap.zsh" ]; then
source "$ZAP_DIR/zap.zsh"
setopt APPEND_HISTORY
setopt INC_APPEND_HISTORY
setopt SHARE_HISTORY
setopt EXTENDED_HISTORY
setopt BANG_HIST
setopt HIST_EXPIRE_DUPS_FIRST
setopt HIST_IGNORE_DUPS
setopt HIST_IGNORE_ALL_DUPS
setopt HIST_FIND_NO_DUPS
setopt HIST_IGNORE_SPACE
setopt HIST_SAVE_NO_DUPS
setopt HIST_REDUCE_BLANKS
setopt HIST_VERIFY
setopt AUTO_CD
setopt AUTO_PARAM_SLASH
setopt GLOB_DOTS
setopt EXTENDED_GLOB
setopt INTERACTIVE_COMMENTS
setopt MENU_COMPLETE
setopt NOMATCH
unsetopt BEEP
autoload -Uz compinit colors bashcompinit
zmodload zsh/complist
zstyle ':completion:*' menu yes select
zstyle ':completion:*' matcher-list '' 'm:{a-zA-Z}={A-Za-z}' 'r:|=*' 'l:|=*'
_comp_options+=(globdots)
zle_highlight=('paste:none')
if [[ -f "${ZDOTDIR:-$HOME}/.zcompdump" ]]; then
compinit -C
else
compinit
fi
bashcompinit
autoload -Uz colors && colors
PS1="%B%{$fg[red]%}[%{$fg[yellow]%}%n%{$fg[green]%}@%{$fg[blue]%}%M %{$fg[magenta]%}%~%{$fg[red]%}]%{$reset_color%}$%b "
bindkey -e
bindkey -s '^x' '^usource $ZSHRC\n'
bindkey -M menuselect '?' history-incremental-search-forward
bindkey -M menuselect '/' history-incremental-search-backward
bindkey '^H' backward-kill-word
autoload -U up-line-or-beginning-search
autoload -U down-line-or-beginning-search
zle -N up-line-or-beginning-search
zle -N down-line-or-beginning-search
alias cat='bat'
alias gg='lazygit'
alias v='nvim'
alias cp='cp -v'
take() {
mkdir -p -- "$1" && cd -- "$1"
}
copy() {
xclip -sel c 2>/dev/null
}
if (( $+commands[eza] )); then
alias ls='eza --group-directories-first --icons=auto'
if eza --version | grep -q '+git'; then
alias ll='ls -lh --git'
else
alias ll='ls -lh'
fi
alias la='ll -a'
alias tree='ll --tree --level=2'
else
alias ls='ls --group-directories-first'
alias ll='ls -lh'
alias la='ll -a'
fi
if (( $+commands[zoxide] )); then
eval "$(zoxide init zsh)"
fi
if ! command -v zap >/dev/null 2>&1; then
printf 'Installing zap (release-v1)...\n'
zsh <(curl -s https://raw.githubusercontent.com/zap-zsh/zap/master/install.zsh) --keep --branch release-v1
if [ -f "${ZDOTDIR:-$HOME}/.zshrc" ]; then
source "${ZDOTDIR:-$HOME}/.zshrc"
fi
fi
autoload -Uz plug
plug "zsh-users/zsh-autosuggestions"
plug "zsh-users/zsh-syntax-highlighting"
plug "zap-zsh/sudo"
plug "Aloxaf/fzf-tab"
: "${XDG_DATA_HOME:=$HOME/.local/share}"
: "${XDG_CONFIG_HOME:=$HOME/.config}"