changed everything to spaces over tabs.

This commit is contained in:
Gabe Venberg 2024-02-22 16:10:47 -06:00
parent ffefa0fffd
commit 4c63486b4b
24 changed files with 1190 additions and 1190 deletions

View file

@ -1,22 +1,22 @@
[user]
email = gabevenberg@gmail.com
name = Gabe Venberg
email = gabevenberg@gmail.com
name = Gabe Venberg
[alias]
hist = log --graph --date-order --date=short --pretty=format:'%C(auto)%h%d %C(reset)%s %C(bold blue)%ce %C(reset)%C(green)%cr (%cd)'
graph = log --graph --topo-order --all --pretty=format:'%C(auto)%h %C(cyan)%an %C(blue)%ar %C(auto)%d %s'
hist = log --graph --date-order --date=short --pretty=format:'%C(auto)%h%d %C(reset)%s %C(bold blue)%ce %C(reset)%C(green)%cr (%cd)'
graph = log --graph --topo-order --all --pretty=format:'%C(auto)%h %C(cyan)%an %C(blue)%ar %C(auto)%d %s'
recent = branch --sort=-committerdate --format='%(committerdate:relative)%09%(refname:short)'
[init]
defaultBranch = main
defaultBranch = main
[push]
autoSetupRemote = true
default = current
autoSetupRemote = true
default = current
[difftool]
prompt = false
prompt = false
[diff]
; tool = nvimdiff
tool = difftastic
algorithm = histogram
submodule = log
algorithm = histogram
submodule = log
[difftool "nvimdiff"]
cmd = "nvim -d \"$LOCAL\" \"$REMOTE\""
[difftool "difftastic"]
@ -24,20 +24,20 @@
[pager]
difftool=true
[pull]
ff = true
ff = true
[merge]
conflictstyle = zdiff3
conflictstyle = zdiff3
[rebase]
autoSquash = true
autoSquash = true
[help]
autocorrect = prompt
autocorrect = prompt
[core]
pager = delta
pager = delta
[delta]
side-by-side = true
[branch]
sort = -committerdate
sort = -committerdate
[status]
submodulesummary = true
submodulesummary = true
[includeIf "gitdir:~/work/"]
path = ".config/git/work.gitconfig"

View file

@ -30,195 +30,195 @@ font pango:monospace 8
font pango:DejaVu Sans Mono 8
#keybinding stuff
# Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod
# Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod
# start a terminal
# bindsym $mod+Return exec --no-startup-id alacritty
bindsym $mod+Return exec --no-startup-id kitty
bindsym $mod+Shift+Return exec cool-retro-term
# start a terminal
# bindsym $mod+Return exec --no-startup-id alacritty
bindsym $mod+Return exec --no-startup-id kitty
bindsym $mod+Shift+Return exec cool-retro-term
# kill focused window
bindsym $mod+Shift+q kill
# kill focused window
bindsym $mod+Shift+q kill
#start rofi in desktop app mode
bindsym $mod+d exec rofi -modi window#run#drun -theme solarized -show drun
#start rofi in desktop app mode
bindsym $mod+d exec rofi -modi window#run#drun -theme solarized -show drun
# change focus
bindsym $mod+h focus left
bindsym $mod+j focus down
bindsym $mod+k focus up
bindsym $mod+l focus right
# change focus
bindsym $mod+h focus left
bindsym $mod+j focus down
bindsym $mod+k focus up
bindsym $mod+l focus right
# move focused window
bindsym $mod+Shift+h move left
bindsym $mod+Shift+j move down
bindsym $mod+Shift+k move up
bindsym $mod+Shift+l move right
# move focused window
bindsym $mod+Shift+h move left
bindsym $mod+Shift+j move down
bindsym $mod+Shift+k move up
bindsym $mod+Shift+l move right
# move workspace between monitors
bindsym $mod+ctrl+Shift+h move workspace to output left
bindsym $mod+ctrl+Shift+j move workspace to output down
bindsym $mod+ctrl+Shift+k move workspace to output up
bindsym $mod+ctrl+Shift+l move workspace to output right
# move workspace between monitors
bindsym $mod+ctrl+Shift+h move workspace to output left
bindsym $mod+ctrl+Shift+j move workspace to output down
bindsym $mod+ctrl+Shift+k move workspace to output up
bindsym $mod+ctrl+Shift+l move workspace to output right
# move container between monitors
bindsym $mod+ctrl+h move container to output left
bindsym $mod+ctrl+j move container to output down
bindsym $mod+ctrl+k move container to output up
bindsym $mod+ctrl+l move container to output right
# move container between monitors
bindsym $mod+ctrl+h move container to output left
bindsym $mod+ctrl+j move container to output down
bindsym $mod+ctrl+k move container to output up
bindsym $mod+ctrl+l move container to output right
## split in horizontal orientation
bindsym $mod+shift+backslash split h
## split in horizontal orientation
bindsym $mod+shift+backslash split h
# split in vertical orientation
bindsym $mod+shift+minus split v
# split in vertical orientation
bindsym $mod+shift+minus split v
#enter fullscreen mode for the focused container
bindsym $mod+f fullscreen toggle
#enter fullscreen mode for the focused container
bindsym $mod+f fullscreen toggle
# change container layout (stacked, tabbed, toggle split)
bindsym $mod+e layout stacking
bindsym $mod+r layout tabbed
bindsym $mod+t layout toggle split
# change container layout (stacked, tabbed, toggle split)
bindsym $mod+e layout stacking
bindsym $mod+r layout tabbed
bindsym $mod+t layout toggle split
# toggle tiling / floating
bindsym $mod+Shift+space floating toggle
# toggle tiling / floating
bindsym $mod+Shift+space floating toggle
# change focus between tiling / floating windows
bindsym $mod+space focus mode_toggle
# change focus between tiling / floating windows
bindsym $mod+space focus mode_toggle
# focus the parent container
bindsym $mod+a focus parent
# focus the parent container
bindsym $mod+a focus parent
# focus the child container
bindsym $mod+z focus child
# focus the child container
bindsym $mod+z focus child
#make a floating window sticky (moves workspaces with you)
bindsym $mod+Shift+a sticky toggle
#make a floating window sticky (moves workspaces with you)
bindsym $mod+Shift+a sticky toggle
#make currently focused window a scratchpad
bindsym $mod+shift+o move scratchpad
#and hide and show it
bindsym $mod+o scratchpad show
#make currently focused window a scratchpad
bindsym $mod+shift+o move scratchpad
#and hide and show it
bindsym $mod+o scratchpad show
#workspace switching
# Define names for default workspaces for which we configure key bindings later on. We use variables to avoid repeating the names in multiple places.
set $ws1 "1"
set $ws2 "2"
set $ws3 "3"
set $ws4 "4"
set $ws5 "5"
set $ws6 "6"
set $ws7 "7"
set $ws8 "8"
set $ws9 "9"
set $ws10 "10"
#workspace switching
# Define names for default workspaces for which we configure key bindings later on. We use variables to avoid repeating the names in multiple places.
set $ws1 "1"
set $ws2 "2"
set $ws3 "3"
set $ws4 "4"
set $ws5 "5"
set $ws6 "6"
set $ws7 "7"
set $ws8 "8"
set $ws9 "9"
set $ws10 "10"
# switch to workspace
bindsym $mod+1 workspace $ws1
bindsym $mod+2 workspace $ws2
bindsym $mod+3 workspace $ws3
bindsym $mod+4 workspace $ws4
bindsym $mod+5 workspace $ws5
bindsym $mod+6 workspace $ws6
bindsym $mod+7 workspace $ws7
bindsym $mod+8 workspace $ws8
bindsym $mod+9 workspace $ws9
bindsym $mod+0 workspace $ws10
# switch to workspace
bindsym $mod+1 workspace $ws1
bindsym $mod+2 workspace $ws2
bindsym $mod+3 workspace $ws3
bindsym $mod+4 workspace $ws4
bindsym $mod+5 workspace $ws5
bindsym $mod+6 workspace $ws6
bindsym $mod+7 workspace $ws7
bindsym $mod+8 workspace $ws8
bindsym $mod+9 workspace $ws9
bindsym $mod+0 workspace $ws10
# move focused container to workspace
bindsym $mod+Shift+1 move container to workspace $ws1
bindsym $mod+Shift+2 move container to workspace $ws2
bindsym $mod+Shift+3 move container to workspace $ws3
bindsym $mod+Shift+4 move container to workspace $ws4
bindsym $mod+Shift+5 move container to workspace $ws5
bindsym $mod+Shift+6 move container to workspace $ws6
bindsym $mod+Shift+7 move container to workspace $ws7
bindsym $mod+Shift+8 move container to workspace $ws8
bindsym $mod+Shift+9 move container to workspace $ws9
bindsym $mod+Shift+0 move container to workspace $ws10
# move focused container to workspace
bindsym $mod+Shift+1 move container to workspace $ws1
bindsym $mod+Shift+2 move container to workspace $ws2
bindsym $mod+Shift+3 move container to workspace $ws3
bindsym $mod+Shift+4 move container to workspace $ws4
bindsym $mod+Shift+5 move container to workspace $ws5
bindsym $mod+Shift+6 move container to workspace $ws6
bindsym $mod+Shift+7 move container to workspace $ws7
bindsym $mod+Shift+8 move container to workspace $ws8
bindsym $mod+Shift+9 move container to workspace $ws9
bindsym $mod+Shift+0 move container to workspace $ws10
# reload the configuration file
bindsym $mod+Shift+n reload
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
bindsym $mod+Shift+r restart
# exit i3 (logs you out of your X session)
bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -b 'Yes, exit i3' 'i3-msg exit'"
# reload the configuration file
bindsym $mod+Shift+n reload
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
bindsym $mod+Shift+r restart
# exit i3 (logs you out of your X session)
bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -b 'Yes, exit i3' 'i3-msg exit'"
# resize window (you can also use the mouse for that)
mode "resize" {
# These bindings trigger as soon as you enter the resize mode
# resize window (you can also use the mouse for that)
mode "resize" {
# These bindings trigger as soon as you enter the resize mode
# Pressing left will shrink the windows width.
# Pressing right will grow the windows width.
# Pressing up will shrink the windows height.
# Pressing down will grow the windows height.
bindsym h resize shrink width 10 px or 10 ppt
bindsym j resize grow height 10 px or 10 ppt
bindsym k resize shrink height 10 px or 10 ppt
bindsym l resize grow width 10 px or 10 ppt
# Pressing left will shrink the windows width.
# Pressing right will grow the windows width.
# Pressing up will shrink the windows height.
# Pressing down will grow the windows height.
bindsym h resize shrink width 10 px or 10 ppt
bindsym j resize grow height 10 px or 10 ppt
bindsym k resize shrink height 10 px or 10 ppt
bindsym l resize grow width 10 px or 10 ppt
# same bindings, but for the arrow keys
bindsym Left resize shrink width 10 px or 10 ppt
bindsym Down resize grow height 10 px or 10 ppt
bindsym Up resize shrink height 10 px or 10 ppt
bindsym Right resize grow width 10 px or 10 ppt
# same bindings, but for the arrow keys
bindsym Left resize shrink width 10 px or 10 ppt
bindsym Down resize grow height 10 px or 10 ppt
bindsym Up resize shrink height 10 px or 10 ppt
bindsym Right resize grow width 10 px or 10 ppt
# back to normal: Enter or Escape or $mod+shift+r
bindsym Return mode "default"
bindsym Escape mode "default"
bindsym $mod+ctrl+r mode "default"
}
# back to normal: Enter or Escape or $mod+shift+r
bindsym Return mode "default"
bindsym Escape mode "default"
bindsym $mod+ctrl+r mode "default"
}
bindsym $mod+ctrl+r mode "resize"
bindsym $mod+ctrl+r mode "resize"
# lock and turn off the screen with mod+x, and lock+suspend computer with mod+shift+x
set $lock_command i3lock
set $lock_command_nof i3lock -n #versuon of $lock_command that does not fork.
bindsym $mod+x exec --no-startup-id "~/dotfiles/scripts/screen_off $lock_command_nof"
bindsym $mod+shift+x exec --no-startup-id "$lock_command"; exec --no-startup-id "systemctl suspend"
# lock and turn off the screen with mod+x, and lock+suspend computer with mod+shift+x
set $lock_command i3lock
set $lock_command_nof i3lock -n #versuon of $lock_command that does not fork.
bindsym $mod+x exec --no-startup-id "~/dotfiles/scripts/screen_off $lock_command_nof"
bindsym $mod+shift+x exec --no-startup-id "$lock_command"; exec --no-startup-id "systemctl suspend"
# disable screen going to sleep with mod+b, enable screen going to sleep with mod+shift+b
bindsym $mod+b exec --no-startup-id "xset s off -dpms; notify-send --expire-time=500 'screen blanking off'"
bindsym $mod+shift+b exec --no-startup-id "xset +dpms; notify-send --expire-time=500 'screen blanking on'"
# disable screen going to sleep with mod+b, enable screen going to sleep with mod+shift+b
bindsym $mod+b exec --no-startup-id "xset s off -dpms; notify-send --expire-time=500 'screen blanking off'"
bindsym $mod+shift+b exec --no-startup-id "xset +dpms; notify-send --expire-time=500 'screen blanking on'"
# change brightness
bindsym $mod+control+plus exec --no-startup-id "brightnessctl s +1%; notify-send -h string:x-dunst-stack-tag:brightness --expire-time=500 Brightness\ $(brightnessctl -m| cut --delimiter=, -f 4)"
bindsym $mod+control+minus exec --no-startup-id "brightnessctl s 1%-; notify-send -h string:x-dunst-stack-tag:brightness --expire-time=500 Brightness\ $(brightnessctl -m| cut --delimiter=, -f 4)"
# change brightness
bindsym $mod+control+plus exec --no-startup-id "brightnessctl s +1%; notify-send -h string:x-dunst-stack-tag:brightness --expire-time=500 Brightness\ $(brightnessctl -m| cut --delimiter=, -f 4)"
bindsym $mod+control+minus exec --no-startup-id "brightnessctl s 1%-; notify-send -h string:x-dunst-stack-tag:brightness --expire-time=500 Brightness\ $(brightnessctl -m| cut --delimiter=, -f 4)"
#screenshot everything with mod+s, current window with mod+shift+s, selection with mod+ctrl+s
bindsym $mod+s exec --no-startup-id "maim ~/Pictures/$(date +%s).png; notify-send --expire-time=1000 'Whole-desktop screenshot taken'"
bindsym $mod+shift+s exec --no-startup-id "maim -i $(xdotool getactivewindow) ~/Pictures/$(date +%s).png; notify-send --expire-time=1000 'Window screenshot taken'"
bindsym $mod+ctrl+s exec --no-startup-id "maim -s ~/Pictures/$(date +%s).png; notify-send --expire-time=1000 'Selection screenshot taken'"
#screenshot everything with mod+s, current window with mod+shift+s, selection with mod+ctrl+s
bindsym $mod+s exec --no-startup-id "maim ~/Pictures/$(date +%s).png; notify-send --expire-time=1000 'Whole-desktop screenshot taken'"
bindsym $mod+shift+s exec --no-startup-id "maim -i $(xdotool getactivewindow) ~/Pictures/$(date +%s).png; notify-send --expire-time=1000 'Window screenshot taken'"
bindsym $mod+ctrl+s exec --no-startup-id "maim -s ~/Pictures/$(date +%s).png; notify-send --expire-time=1000 'Selection screenshot taken'"
#screenshot everything with mod+c, current window with mod+shift+c, selection with mod+ctrl+c (to clipboard)
bindsym $mod+c exec --no-startup-id "maim | xclip -selection clipboard -t image/png; notify-send --expire-time=1000 'Whole-desktop screenshot taken to clipboard'"
bindsym $mod+shift+c exec --no-startup-id "maim -i $(xdotool getactivewindow) | xclip -selection clipboard -t image/png; notify-send --expire-time=1000 'Window screenshot taken to clipboard'"
bindsym $mod+ctrl+c exec --no-startup-id "maim -s | xclip -selection clipboard -t image/png; notify-send --expire-time=1000 'Selection screenshot taken to clipboard'"
#screenshot everything with mod+c, current window with mod+shift+c, selection with mod+ctrl+c (to clipboard)
bindsym $mod+c exec --no-startup-id "maim | xclip -selection clipboard -t image/png; notify-send --expire-time=1000 'Whole-desktop screenshot taken to clipboard'"
bindsym $mod+shift+c exec --no-startup-id "maim -i $(xdotool getactivewindow) | xclip -selection clipboard -t image/png; notify-send --expire-time=1000 'Window screenshot taken to clipboard'"
bindsym $mod+ctrl+c exec --no-startup-id "maim -s | xclip -selection clipboard -t image/png; notify-send --expire-time=1000 'Selection screenshot taken to clipboard'"
#colour picker with xcolor
bindsym --release $mod+p exec --no-startup-id "xcolor -s"
#colour picker with xcolor
bindsym --release $mod+p exec --no-startup-id "xcolor -s"
#mpd controls
bindsym $mod+mod1+p exec --no-startup-id "mpc toggle"
bindsym $mod+mod1+plus exec --no-startup-id "mpc volume +1; notify-send MPD: \\"$(mpc volume)\\" --expire-time=1000 -h string:x-dunst-stack-tag:mpdVolume"
bindsym $mod+mod1+minus exec --no-startup-id "mpc volume -1; notify-send MPD: \\"$(mpc volume)\\" --expire-time=1000 -h string:x-dunst-stack-tag:mpdVolume"
#mpd controls
bindsym $mod+mod1+p exec --no-startup-id "mpc toggle"
bindsym $mod+mod1+plus exec --no-startup-id "mpc volume +1; notify-send MPD: \\"$(mpc volume)\\" --expire-time=1000 -h string:x-dunst-stack-tag:mpdVolume"
bindsym $mod+mod1+minus exec --no-startup-id "mpc volume -1; notify-send MPD: \\"$(mpc volume)\\" --expire-time=1000 -h string:x-dunst-stack-tag:mpdVolume"
#open volume control
bindsym $mod+shift+p exec pavucontrol
#open volume control
bindsym $mod+shift+p exec pavucontrol
#volume control
bindsym $mod+plus exec --no-startup-id "wpctl set-volume @DEFAULT_AUDIO_SINK@ 1%+; notify-send --expire-time=1000 -h string:x-dunst-stack-tag:volume $(wpctl get-volume @DEFAULT_AUDIO_SINK@)"
bindsym $mod+minus exec --no-startup-id "wpctl set-volume @DEFAULT_AUDIO_SINK@ 1%-; notify-send --expire-time=1000 -h string:x-dunst-stack-tag:volume $(wpctl get-volume @DEFAULT_AUDIO_SINK@)"
#volume control
bindsym $mod+plus exec --no-startup-id "wpctl set-volume @DEFAULT_AUDIO_SINK@ 1%+; notify-send --expire-time=1000 -h string:x-dunst-stack-tag:volume $(wpctl get-volume @DEFAULT_AUDIO_SINK@)"
bindsym $mod+minus exec --no-startup-id "wpctl set-volume @DEFAULT_AUDIO_SINK@ 1%-; notify-send --expire-time=1000 -h string:x-dunst-stack-tag:volume $(wpctl get-volume @DEFAULT_AUDIO_SINK@)"
#open firefox
bindsym $mod+w exec firefox
#open firefox
bindsym $mod+w exec firefox
#make certan windwows always floating
#volume control
for_window [class="Pavucontrol"] floating enable
for_window [title="Origin"] floating enable
#volume control
for_window [class="Pavucontrol"] floating enable
for_window [title="Origin"] floating enable
# Start i3bar to display a workspace bar (plus the system information i3status
@ -229,15 +229,15 @@ bar {
#startup applications
#resetting the wallpaper. We are not setting it here, so we can have different wallpapers on different machines. use feh --bg-fill FILE to set it. it will write a .fehbg file.
exec --no-startup-id ~/.fehbg
#resetting the wallpaper. We are not setting it here, so we can have different wallpapers on different machines. use feh --bg-fill FILE to set it. it will write a .fehbg file.
exec --no-startup-id ~/.fehbg
#dunst
exec --no-startup-id /usr/bin/dunst
#dunst
exec --no-startup-id /usr/bin/dunst
#get gnome-keyring running
exec --no-startup-id dbus-update-activation-environment --all
exec --no-startup-id gnome-keyring-daemon --start --components=secrets
#get gnome-keyring running
exec --no-startup-id dbus-update-activation-environment --all
exec --no-startup-id gnome-keyring-daemon --start --components=secrets
#geoclue
exec --no-startup-id /usr/lib/geoclue-2.0/demos/agent
#geoclue
exec --no-startup-id /usr/lib/geoclue-2.0/demos/agent

View file

@ -20,8 +20,8 @@
# If the above line is not correctly displayed, fix your editor first!
general {
colors = true
interval = 5
colors = true
interval = 5
}
order += "wireless _first_"
@ -31,26 +31,26 @@ order += "load"
order += "tztime local"
wireless _first_ {
format_up = "W: (%quality at %essid) %ip"
format_down = "W: down"
format_up = "W: (%quality at %essid) %ip"
format_down = "W: down"
}
ethernet _first_ {
format_up = "E: %ip"
format_down = "E: down"
format_up = "E: %ip"
format_down = "E: down"
}
battery all {
format = "%status %percentage %remaining"
low_threshold = 10
integer_battery_capacity = true
last_full_capacity = true
format = "%status %percentage %remaining"
low_threshold = 10
integer_battery_capacity = true
last_full_capacity = true
}
tztime local {
format = "%Y-%m-%d %H:%M"
format = "%Y-%m-%d %H:%M"
}
load {
format = "%1min"
format = "%1min"
}

View file

@ -3,35 +3,35 @@
# This file is parsed by the configobj library. The syntax is described at
# https://configobj.readthedocs.io/en/latest/configobj.html#the-config-file-format
[addressbooks]
[[contacts]]
path = ~/.contacts/contacts/
[general]
debug = no
default_action = list
# These are either strings or comma seperated lists
editor = nvim, -i, NONE
merge_editor = vimdiff
[contact table]
# display names by first or last name: first_name / last_name / formatted_name
display = first_name
# group by address book: yes / no
group_by_addressbook = no
# reverse table ordering: yes / no
reverse = no
# append nicknames to name column: yes / no
show_nicknames = no
# show uid table column: yes / no
show_uids = yes
# sort by first or last name: first_name / last_name / formatted_name
sort = last_name
# localize dates: yes / no
localize_dates = yes
# set a comma separated list of preferred phone number types in descending priority
# or nothing for non-filtered alphabetical order
preferred_phone_number_type = pref, cell, home
# set a comma separated list of preferred email address types in descending priority
# or nothing for non-filtered alphabetical order
preferred_email_address_type = pref, work, home
[[contacts]]
path = ~/.contacts/contacts/
[general]
debug = no
default_action = list
# These are either strings or comma seperated lists
editor = nvim, -i, NONE
merge_editor = vimdiff
[contact table]
# display names by first or last name: first_name / last_name / formatted_name
display = first_name
# group by address book: yes / no
group_by_addressbook = no
# reverse table ordering: yes / no
reverse = no
# append nicknames to name column: yes / no
show_nicknames = no
# show uid table column: yes / no
show_uids = yes
# sort by first or last name: first_name / last_name / formatted_name
sort = last_name
# localize dates: yes / no
localize_dates = yes
# set a comma separated list of preferred phone number types in descending priority
# or nothing for non-filtered alphabetical order
preferred_phone_number_type = pref, cell, home
# set a comma separated list of preferred email address types in descending priority
# or nothing for non-filtered alphabetical order
preferred_email_address_type = pref, work, home
[vcard]
# extend contacts with your own private objects
# these objects are stored with a leading "X-" before the object name in the vcard files

View file

@ -25,7 +25,7 @@ def_key "N"
previous_found_item
def_key "d"
delete_playlist_items
delete_playlist_items
def_key "d"
delete_stored_playlist

View file

@ -28,8 +28,8 @@ mpd_music_dir = ~/music
mpd_crossfade_time = 5
Exclude pattern for random song action
http://www.boost.org/doc/libs/1_46_1/libs/regex/doc/html/boost_regex/syntax/perl_syntax.html
## Exclude pattern for random song action
## http://www.boost.org/doc/libs/1_46_1/libs/regex/doc/html/boost_regex/syntax/perl_syntax.html
random_exclude_pattern = "^(temp|midi_songs).*"
##### music visualizer #####

View file

@ -1,9 +1,9 @@
"TODO: port to LUA!
function! Minimal_foldtext()
let lines_count = v:foldend - v:foldstart + 1
let lines_count_text = '+' . v:folddashes . '| ' . printf("%10S" , lines_count) . ' lines |'
let line_level_text = '| ' . printf("%8S" , 'level ' . v:foldlevel) . ' |'
let fold_text_end = line_level_text . repeat('-',8)
let fold_text_length = strlen(lines_count_text . fold_text_end) + &foldcolumn
return lines_count_text . repeat('-' , winwidth(0) - fold_text_length - 4) . fold_text_end
let lines_count = v:foldend - v:foldstart + 1
let lines_count_text = '+' . v:folddashes . '| ' . printf("%10S" , lines_count) . ' lines |'
let line_level_text = '| ' . printf("%8S" , 'level ' . v:foldlevel) . ' |'
let fold_text_end = line_level_text . repeat('-',8)
let fold_text_length = strlen(lines_count_text . fold_text_end) + &foldcolumn
return lines_count_text . repeat('-' , winwidth(0) - fold_text_length - 4) . fold_text_end
endfunction

View file

@ -1,67 +1,67 @@
local opts = {}
local on_attach = function()
local function set_keymap(...) vim.api.nvim_set_keymap(...) end
local function set_keymap(...) vim.api.nvim_set_keymap(...) end
local function set_option(...) vim.api.nvim_set_option(...) end
local function set_option(...) vim.api.nvim_set_option(...) end
-- Enable completion triggered by <c-x><c-o>
set_option('omnifunc', 'v:lua.vim.lsp.omnifunc')
-- Enable completion triggered by <c-x><c-o>
set_option('omnifunc', 'v:lua.vim.lsp.omnifunc')
-- Mappings.
local function optsWithDesc(desc)
return { silent = true, desc = desc }
end
-- Mappings.
local function optsWithDesc(desc)
return { silent = true, desc = desc }
end
--setup leader-l prefix in whitch-key
local wk = require("which-key")
wk.register {
["<leader>l"]={
name="+lsp"
}
}
--setup leader-l prefix in whitch-key
local wk = require("which-key")
wk.register {
["<leader>l"]={
name="+lsp"
}
}
-- See `:help vim.lsp.*` for documentation on any of the below functions
set_keymap('', '<leader>lc', '<cmd>lua vim.lsp.buf.declaration()<CR>', optsWithDesc("jump to declaration"))
set_keymap('', '<leader>ld', '<cmd>lua vim.lsp.buf.definition()<CR>', optsWithDesc("jump to definition"))
set_keymap('', '<leader>lh', '<cmd>lua vim.lsp.buf.hover()<CR>', optsWithDesc("show lsp hover info"))
set_keymap('', '<leader>li', '<cmd>lua vim.lsp.buf.implementation()<CR>', optsWithDesc("show implementations"))
set_keymap('', '<leader>ls', '<cmd>lua vim.lsp.buf.signature_help()<CR>', optsWithDesc("show signature help"))
set_keymap('', '<leader>lwa', '<cmd>lua vim.lsp.buf.add_workspace_folder()<CR>', optsWithDesc("add workspace folder"))
set_keymap('', '<leader>lwr', '<cmd>lua vim.lsp.buf.remove_workspace_folder()<CR>',
optsWithDesc("remove workspace folder"))
set_keymap('', '<leader>lw', '<cmd>lua print(vim.inspect(vim.lsp.buf.list_workspace_folders()))<CR>',
optsWithDesc("show workspace folders"))
set_keymap('', '<leader>lr', '<cmd>lua vim.lsp.buf.rename()<CR>', optsWithDesc("rename symbol"))
set_keymap('', '<leader>la', '<cmd>lua vim.lsp.buf.code_action()<CR>', optsWithDesc("lsp code action"))
set_keymap('', '<leader>le', '<cmd>lua vim.lsp.buf.references()<CR>', optsWithDesc("list references"))
set_keymap('', '<leader>lo', '<cmd>lua vim.diagnostic.open_float()<CR>',
optsWithDesc("show diagnostic in floating window"))
set_keymap('', '<leader>ln', '<cmd>lua vim.diagnostic.goto_next()<CR>', optsWithDesc("next lsp diagnostic"))
set_keymap('', '<leader>lp', '<cmd>lua vim.diagnostic.goto_prev()<CR>', optsWithDesc("prev lsp diagnostic"))
set_keymap('', '<leader>lm', '<cmd>lua vim.lsp.buf.format {async=true}<CR>', optsWithDesc("format buffer"))
set_keymap('', ']d', '<cmd>lua vim.diagnostic.goto_next()<CR>', optsWithDesc("next lsp diagnostic"))
set_keymap('', '[d', '<cmd>lua vim.diagnostic.goto_prev()<CR>', optsWithDesc("prev lsp diagnostic"))
-- See `:help vim.lsp.*` for documentation on any of the below functions
set_keymap('', '<leader>lc', '<cmd>lua vim.lsp.buf.declaration()<CR>', optsWithDesc("jump to declaration"))
set_keymap('', '<leader>ld', '<cmd>lua vim.lsp.buf.definition()<CR>', optsWithDesc("jump to definition"))
set_keymap('', '<leader>lh', '<cmd>lua vim.lsp.buf.hover()<CR>', optsWithDesc("show lsp hover info"))
set_keymap('', '<leader>li', '<cmd>lua vim.lsp.buf.implementation()<CR>', optsWithDesc("show implementations"))
set_keymap('', '<leader>ls', '<cmd>lua vim.lsp.buf.signature_help()<CR>', optsWithDesc("show signature help"))
set_keymap('', '<leader>lwa', '<cmd>lua vim.lsp.buf.add_workspace_folder()<CR>', optsWithDesc("add workspace folder"))
set_keymap('', '<leader>lwr', '<cmd>lua vim.lsp.buf.remove_workspace_folder()<CR>',
optsWithDesc("remove workspace folder"))
set_keymap('', '<leader>lw', '<cmd>lua print(vim.inspect(vim.lsp.buf.list_workspace_folders()))<CR>',
optsWithDesc("show workspace folders"))
set_keymap('', '<leader>lr', '<cmd>lua vim.lsp.buf.rename()<CR>', optsWithDesc("rename symbol"))
set_keymap('', '<leader>la', '<cmd>lua vim.lsp.buf.code_action()<CR>', optsWithDesc("lsp code action"))
set_keymap('', '<leader>le', '<cmd>lua vim.lsp.buf.references()<CR>', optsWithDesc("list references"))
set_keymap('', '<leader>lo', '<cmd>lua vim.diagnostic.open_float()<CR>',
optsWithDesc("show diagnostic in floating window"))
set_keymap('', '<leader>ln', '<cmd>lua vim.diagnostic.goto_next()<CR>', optsWithDesc("next lsp diagnostic"))
set_keymap('', '<leader>lp', '<cmd>lua vim.diagnostic.goto_prev()<CR>', optsWithDesc("prev lsp diagnostic"))
set_keymap('', '<leader>lm', '<cmd>lua vim.lsp.buf.format {async=true}<CR>', optsWithDesc("format buffer"))
set_keymap('', ']d', '<cmd>lua vim.diagnostic.goto_next()<CR>', optsWithDesc("next lsp diagnostic"))
set_keymap('', '[d', '<cmd>lua vim.diagnostic.goto_prev()<CR>', optsWithDesc("prev lsp diagnostic"))
end
require("mason-lspconfig").setup_handlers({
function(server_name)
require("lspconfig")[server_name].setup {}
on_attach()
end,
["rust_analyzer"] = function()
require('rust-tools-setup')
on_attach()
end,
["lua_ls"] = function()
require('lspconfig').lua_ls.setup {
settings = {
Lua = {
diagnostics = {
globals = { "vim" }
}
}
}
}
on_attach()
end,
function(server_name)
require("lspconfig")[server_name].setup {}
on_attach()
end,
["rust_analyzer"] = function()
require('rust-tools-setup')
on_attach()
end,
["lua_ls"] = function()
require('lspconfig').lua_ls.setup {
settings = {
Lua = {
diagnostics = {
globals = { "vim" }
}
}
}
}
on_attach()
end,
})

View file

@ -8,63 +8,63 @@ vim.o.completeopt='menu,menuone,preview,noinsert,noselect'
-- nvim-cmp setup
local cmp = require 'cmp'
cmp.setup {
snippet = {
expand = function(args)
require('luasnip').lsp_expand(args.body)
end,
},
mapping = {
['<C-p>'] = cmp.mapping.select_prev_item(),
['<C-n>'] = cmp.mapping.select_next_item(),
['<C-d>'] = cmp.mapping.scroll_docs(-4),
['<C-f>'] = cmp.mapping.scroll_docs(4),
['<C-Space>'] = cmp.mapping.complete(),
['<C-e>'] = cmp.mapping.close(),
['<CR>'] = cmp.mapping.confirm {
behavior = cmp.ConfirmBehavior.Insert,
select = false,
-- behavior = cmp.ConfirmBehavior.Replace,
-- select = false,
},
['<Tab>'] = function(fallback)
if cmp.visible() then
cmp.select_next_item()
elseif luasnip.expand_or_jumpable() then
luasnip.expand_or_jump()
else
fallback()
end
end,
['<S-Tab>'] = function(fallback)
if cmp.visible() then
cmp.select_prev_item()
elseif luasnip.jumpable(-1) then
luasnip.jump(-1)
else
fallback()
end
end,
},
sources = {
{ name = 'nvim_lsp' },
{ name = 'path' },
{ name = 'luasnip' },
{ name = 'nvim_lsp_signature_help' },
{ name = 'emoji' },
{ name = 'latex_symbols' },
-- { name = 'buffer' },
-- { name = 'digraphs' },
-- { name = 'dictionary' },
-- { name = 'spell' },
},
snippet = {
expand = function(args)
require('luasnip').lsp_expand(args.body)
end,
},
mapping = {
['<C-p>'] = cmp.mapping.select_prev_item(),
['<C-n>'] = cmp.mapping.select_next_item(),
['<C-d>'] = cmp.mapping.scroll_docs(-4),
['<C-f>'] = cmp.mapping.scroll_docs(4),
['<C-Space>'] = cmp.mapping.complete(),
['<C-e>'] = cmp.mapping.close(),
['<CR>'] = cmp.mapping.confirm {
behavior = cmp.ConfirmBehavior.Insert,
select = false,
-- behavior = cmp.ConfirmBehavior.Replace,
-- select = false,
},
['<Tab>'] = function(fallback)
if cmp.visible() then
cmp.select_next_item()
elseif luasnip.expand_or_jumpable() then
luasnip.expand_or_jump()
else
fallback()
end
end,
['<S-Tab>'] = function(fallback)
if cmp.visible() then
cmp.select_prev_item()
elseif luasnip.jumpable(-1) then
luasnip.jump(-1)
else
fallback()
end
end,
},
sources = {
{ name = 'nvim_lsp' },
{ name = 'path' },
{ name = 'luasnip' },
{ name = 'nvim_lsp_signature_help' },
{ name = 'emoji' },
{ name = 'latex_symbols' },
-- { name = 'buffer' },
-- { name = 'digraphs' },
-- { name = 'dictionary' },
-- { name = 'spell' },
},
}
cmp.setup.cmdline('/', {
sources = cmp.config.sources({
{ name = 'nvim_lsp_document_symbol' },
{ name = 'treesitter' },
}, {
{ name = 'buffer' },
{ name = 'cmdline' },
})
sources = cmp.config.sources({
{ name = 'nvim_lsp_document_symbol' },
{ name = 'treesitter' },
}, {
{ name = 'buffer' },
{ name = 'cmdline' },
})
})

View file

@ -1,85 +1,85 @@
local opts = {
tools = {
autoSetHints = true,
RustHoverActions = true,
tools = {
autoSetHints = true,
RustHoverActions = true,
-- how to execute terminal commands
executor = require("rust-tools/executors").termopen,
inlay_hints = {
auto=true,
-- Only show inlay hints for the current line
only_current_line = false,
-- Event which triggers a refersh of the inlay hints.
only_current_line_autocmd = "CursorHold",
-- whether to show parameter hints with the inlay hints or not
show_parameter_hints = true,
-- whether to show variable name before type hints with the inlay hints or not
show_variable_name = true,
-- prefix for parameter hints
parameter_hints_prefix = "<- ",
-- prefix for all the other hints (type, chaining)
other_hints_prefix = "=> ",
-- whether to align to the lenght of the longest line in the file
max_len_align = false,
-- padding from the left if max_len_align is true
max_len_align_padding = 1,
-- whether to align to the extreme right or not
right_align = true,
-- padding from the right if right_align is true
right_align_padding = 1,
-- The color of the hints
highlight = "Comment",
},
hover_actions = {
-- the border that is used for the hover window
border = {
{ "", "FloatBorder" },
{ "", "FloatBorder" },
{ "", "FloatBorder" },
{ "", "FloatBorder" },
{ "", "FloatBorder" },
{ "", "FloatBorder" },
{ "", "FloatBorder" },
{ "", "FloatBorder" },
},
-- whether the hover action window gets automatically focused
auto_focus = false,
},
-- settings for showing the crate graph based on graphviz and the dot
-- command
crate_graph = {
-- Backend used for displaying the graph
backend = "x11",
-- where to store the output, nil for no output stored (relative
-- path from pwd)
output = nil,
-- true for all crates.io and external crates, false only the local
-- crates
full = true,
},
},
-- all the opts to send to nvim-lspconfig
server = {
-- standalone file support
-- setting it to false may improve startup time
standalone = true,
settings = {
-- rust-analyer options
["rust-analyzer"] = {
-- enable clippy on save
checkOnSave = {
command = "clippy"
},
}
}
},
-- debugging stuff
dap = {
adapter = {
type = "executable",
command = "lldb-vscode",
name = "rt_lldb",
},
},
-- how to execute terminal commands
executor = require("rust-tools/executors").termopen,
inlay_hints = {
auto=true,
-- Only show inlay hints for the current line
only_current_line = false,
-- Event which triggers a refersh of the inlay hints.
only_current_line_autocmd = "CursorHold",
-- whether to show parameter hints with the inlay hints or not
show_parameter_hints = true,
-- whether to show variable name before type hints with the inlay hints or not
show_variable_name = true,
-- prefix for parameter hints
parameter_hints_prefix = "<- ",
-- prefix for all the other hints (type, chaining)
other_hints_prefix = "=> ",
-- whether to align to the lenght of the longest line in the file
max_len_align = false,
-- padding from the left if max_len_align is true
max_len_align_padding = 1,
-- whether to align to the extreme right or not
right_align = true,
-- padding from the right if right_align is true
right_align_padding = 1,
-- The color of the hints
highlight = "Comment",
},
hover_actions = {
-- the border that is used for the hover window
border = {
{ "", "FloatBorder" },
{ "", "FloatBorder" },
{ "", "FloatBorder" },
{ "", "FloatBorder" },
{ "", "FloatBorder" },
{ "", "FloatBorder" },
{ "", "FloatBorder" },
{ "", "FloatBorder" },
},
-- whether the hover action window gets automatically focused
auto_focus = false,
},
-- settings for showing the crate graph based on graphviz and the dot
-- command
crate_graph = {
-- Backend used for displaying the graph
backend = "x11",
-- where to store the output, nil for no output stored (relative
-- path from pwd)
output = nil,
-- true for all crates.io and external crates, false only the local
-- crates
full = true,
},
},
-- all the opts to send to nvim-lspconfig
server = {
-- standalone file support
-- setting it to false may improve startup time
standalone = true,
settings = {
-- rust-analyer options
["rust-analyzer"] = {
-- enable clippy on save
checkOnSave = {
command = "clippy"
},
}
}
},
-- debugging stuff
dap = {
adapter = {
type = "executable",
command = "lldb-vscode",
name = "rt_lldb",
},
},
}
require('rust-tools').setup(opts)

View file

@ -1,9 +1,9 @@
"TODO: port to LUA!
function! Minimal_foldtext()
let lines_count = v:foldend - v:foldstart + 1
let lines_count_text = '+' . v:folddashes . '| ' . printf("%10S" , lines_count) . ' lines |'
let line_level_text = '| ' . printf("%8S" , 'level ' . v:foldlevel) . ' |'
let fold_text_end = line_level_text . repeat('-',8)
let fold_text_length = strlen(lines_count_text . fold_text_end) + &foldcolumn
return lines_count_text . repeat('-' , winwidth(0) - fold_text_length - 4) . fold_text_end
let lines_count = v:foldend - v:foldstart + 1
let lines_count_text = '+' . v:folddashes . '| ' . printf("%10S" , lines_count) . ' lines |'
let line_level_text = '| ' . printf("%8S" , 'level ' . v:foldlevel) . ' |'
let fold_text_end = line_level_text . repeat('-',8)
let fold_text_length = strlen(lines_count_text . fold_text_end) + &foldcolumn
return lines_count_text . repeat('-' , winwidth(0) - fold_text_length - 4) . fold_text_end
endfunction

View file

@ -10,7 +10,7 @@ vim.g.mapleader = ';'
--helper functions
local function keyCode(string)
return vim.api.nvim_replace_termcodes(str, true, true, true, true)
return vim.api.nvim_replace_termcodes(str, true, true, true, true)
end
--options using vim.opt (aliased, of course.)
@ -82,7 +82,7 @@ opt.showbreak = '↪'
--keyboard mappings
local function optsWithDesc(desc)
return {silent=true, desc=desc}
return {silent=true, desc=desc}
end
local opts = { noremap = true, silent = true }
--toggle spell check

View file

@ -1,6 +1,6 @@
#! /bin/sh
for id in $(xinput --list |grep 'Razer Razer Naga Hex .* pointer'|sed 's/.*id=\([0-9]*\).*/\1/')
do
#echo "setting device ID $id"
xinput --set-prop $id 'Coordinate Transformation Matrix' 0.500000, 0.000000, 0.000000, 0.000000, 0.500000, 0.000000, 0.000000, 0.000000, 1.000000
#echo "setting device ID $id"
xinput --set-prop $id 'Coordinate Transformation Matrix' 0.500000, 0.000000, 0.000000, 0.000000, 0.500000, 0.000000, 0.000000, 0.000000, 1.000000
done

View file

@ -8,8 +8,8 @@ locker=$@
#make sure we set screen back to defaults if we force close the script
cleanup() {
xset dpms 0 0 600 #&& echo "cleaned up!"
exit
xset dpms 0 0 600 #&& echo "cleaned up!"
exit
}
trap "cleanup" EXIT

View file

@ -20,35 +20,35 @@
bind-key M-a send-prefix
#split panes using | and -
unbind '|'
unbind '_'
unbind '|'
unbind '_'
bind | split-window -h
bind _ split-window -v
unbind '"'
unbind %
#switch panes using alt-hjkl
bind -n M-h select-pane -L
bind -n M-l select-pane -R
bind -n M-k select-pane -U
bind -n M-j select-pane -D
bind -n M-h select-pane -L
bind -n M-l select-pane -R
bind -n M-k select-pane -U
bind -n M-j select-pane -D
#or with the prefix and hjkl
bind h select-pane -L
bind l select-pane -R
bind k select-pane -U
bind j select-pane -D
bind h select-pane -L
bind l select-pane -R
bind k select-pane -U
bind j select-pane -D
#resize panes with HJKL
bind -r H resize-pane -L 5
bind -r J resize-pane -D 5
bind -r K resize-pane -U 5
bind -r L resize-pane -R 5
bind -r H resize-pane -L 5
bind -r J resize-pane -D 5
bind -r K resize-pane -U 5
bind -r L resize-pane -R 5
#sorta-kinda vim keys for copy and paste
bind-key -T copy-mode-vi v send-keys -X begin-selection
bind-key -T copy-mode-vi y send-keys -X copy-selection
bind-key -T copy-mode-vi y send-keys -X copy-pipe "xclip -sel clip -i"
bind-key -T copy-mode-vi r send-keys -X rectangle-toggle
bind-key -T copy-mode-vi v send-keys -X begin-selection
bind-key -T copy-mode-vi y send-keys -X copy-selection
bind-key -T copy-mode-vi y send-keys -X copy-pipe "xclip -sel clip -i"
bind-key -T copy-mode-vi r send-keys -X rectangle-toggle
#moving panes between windows.
@ -59,17 +59,17 @@ bind-key s command-prompt -p "sent pane to:" "join-pane -t '%%'"
bind r source-file ~/.tmux.conf
#fix annoying escape behavior
set -sg escape-time 0
set -sg escape-time 0
#pass through focus events
set -g focus-events on
#customizing ma tmux status line!
#make sure the left status line can hold the stuff we are about to give it.
set -g status-left-length 20
#have the left side status line display my hostname.
set -g status-left " #{host_short} | "
#also lengthen the right side status, by mutch more.
set -g status-right-length 60
#have the right side status bar display the current battery status and the time/date.
set -g status-right 'battery:#(acpi | grep -Eo "[0-9]+%" | tr "\n" " " | sed "s/\s\+$//") | %H:%M %d/%m/%y '
#make sure the left status line can hold the stuff we are about to give it.
set -g status-left-length 20
#have the left side status line display my hostname.
set -g status-left " #{host_short} | "
#also lengthen the right side status, by mutch more.
set -g status-right-length 60
#have the right side status bar display the current battery status and the time/date.
set -g status-right 'battery:#(acpi | grep -Eo "[0-9]+%" | tr "\n" " " | sed "s/\s\+$//") | %H:%M %d/%m/%y '

View file

@ -21,175 +21,175 @@
set vicmd=nvim
"general settings
" This makes vifm perform file operations on its own instead of relying on
" standard utilities like `cp`. While using `cp` and alike is a more universal
" solution, it's also much slower and doesn't support progress measuring.
" This makes vifm perform file operations on its own instead of relying on
" standard utilities like `cp`. While using `cp` and alike is a more universal
" solution, it's also much slower and doesn't support progress measuring.
set syscalls
set syscalls
" Trash Directory
" The default is to move files that are deleted with dd or :d to
" the trash directory. If you change this you will not be able to move
" files by deleting them and then using p to put the file in the new location.
" I recommend not changing this until you are familiar with vifm.
" This probably shouldn't be an option.
" Trash Directory
" The default is to move files that are deleted with dd or :d to
" the trash directory. If you change this you will not be able to move
" files by deleting them and then using p to put the file in the new location.
" I recommend not changing this until you are familiar with vifm.
" This probably shouldn't be an option.
set trash
set trash
" This is how many directories to store in the directory history.
" This is how many directories to store in the directory history.
set history=100
set history=100
" Automatically resolve symbolic links on l or Enter.
" Automatically resolve symbolic links on l or Enter.
set nofollowlinks
set nofollowlinks
" With this option turned on you can run partially entered commands with
" unambiguous beginning using :! (e.g. :!Te instead of :!Terminal or :!Te<tab>).
" With this option turned on you can run partially entered commands with
" unambiguous beginning using :! (e.g. :!Te instead of :!Terminal or :!Te<tab>).
" set fastrun
" set fastrun
" Natural sort of (version) numbers within text.
" Natural sort of (version) numbers within text.
set sortnumbers
set sortnumbers
" Maximum number of changes that can be undone.
" Maximum number of changes that can be undone.
set undolevels=100
set undolevels=100
" If you installed the vim.txt help file set vimhelp.
" If would rather use a plain text help file set novimhelp.
" If you installed the vim.txt help file set vimhelp.
" If would rather use a plain text help file set novimhelp.
set novimhelp
set novimhelp
" If you would like to run an executable file when you
" press return on the file name set this.
" If you would like to run an executable file when you
" press return on the file name set this.
set norunexec
set norunexec
" Selected color scheme
" Selected color scheme
colorscheme Default
colorscheme Default
" Format for displaying time in file list. For example:
" TIME_STAMP_FORMAT=%m/%d-%H:%M
" See man date or man strftime for details.
" Format for displaying time in file list. For example:
" TIME_STAMP_FORMAT=%m/%d-%H:%M
" See man date or man strftime for details.
set timefmt=%m/%d\ %H:%M
set timefmt=%m/%d\ %H:%M
" Show list of matches on tab completion in command-line mode
" Show list of matches on tab completion in command-line mode
set wildmenu
set wildmenu
" Display completions in a form of popup with descriptions of the matches
" Display completions in a form of popup with descriptions of the matches
set wildstyle=popup
set wildstyle=popup
" Display suggestions in normal, visual and view modes for keys, marks and
" registers (at most 5 files). In other view, when available.
" Display suggestions in normal, visual and view modes for keys, marks and
" registers (at most 5 files). In other view, when available.
set suggestoptions=normal,visual,view,otherpane,keys,marks,registers
set suggestoptions=normal,visual,view,otherpane,keys,marks,registers
" Ignore case in search patterns unless it contains at least one uppercase
" letter
" Ignore case in search patterns unless it contains at least one uppercase
" letter
set ignorecase
set smartcase
set ignorecase
set smartcase
" Don't highlight search results automatically
" Don't highlight search results automatically
set nohlsearch
set nohlsearch
" Use increment searching (search while typing)
set incsearch
" Use increment searching (search while typing)
set incsearch
" Try to leave some space from cursor to upper/lower border in lists
" Try to leave some space from cursor to upper/lower border in lists
set scrolloff=4
set scrolloff=4
" Don't do too many requests to slow file systems
" Don't do too many requests to slow file systems
if !has('win')
set slowfs=curlftpfs
endif
if !has('win')
set slowfs=curlftpfs
endif
" Set custom status line look
" Set custom status line look
set statusline=" Hint: %z%= %A %10u:%-7g %15s %20d "
set statusline=" Hint: %z%= %A %10u:%-7g %15s %20d "
" :mark mark /full/directory/path [filename]
" :mark mark /full/directory/path [filename]
mark b ~/bin/
mark h ~/
mark b ~/bin/
mark h ~/
" :com[mand][!] command_name action
" The following macros can be used in a command
" %a is replaced with the user arguments.
" %c the current file under the cursor.
" %C the current file under the cursor in the other directory.
" %f the current selected file, or files.
" %F the current selected file, or files in the other directory.
" %b same as %f %F.
" %d the current directory name.
" %D the other window directory name.
" %m run the command in a menu window
" The following macros can be used in a command
" %a is replaced with the user arguments.
" %c the current file under the cursor.
" %C the current file under the cursor in the other directory.
" %f the current selected file, or files.
" %F the current selected file, or files in the other directory.
" %b same as %f %F.
" %d the current directory name.
" %D the other window directory name.
" %m run the command in a menu window
command! df df -h %m 2> /dev/null
command! diff vim -d %f %F
command! zip zip -r %f.zip %f
command! run !! ./%f
command! make !!make %a
command! mkcd :mkdir %a | cd %a
command! vgrep vim "+grep %a"
command! reload :write | restart
command! df df -h %m 2> /dev/null
command! diff vim -d %f %F
command! zip zip -r %f.zip %f
command! run !! ./%f
command! make !!make %a
command! mkcd :mkdir %a | cd %a
command! vgrep vim "+grep %a"
command! reload :write | restart
" The file type is for the default programs to be used with
" a file extension.
" :filetype pattern1,pattern2 defaultprogram,program2
" :fileviewer pattern1,pattern2 consoleviewer
" The other programs for the file type can be accessed with the :file command
" The command macros %f, %F, %d, %F may be used in the commands.
" The %a macro is ignored. To use a % you must put %%.
" a file extension.
" :filetype pattern1,pattern2 defaultprogram,program2
" :fileviewer pattern1,pattern2 consoleviewer
" The other programs for the file type can be accessed with the :file command
" The command macros %f, %F, %d, %F may be used in the commands.
" The %a macro is ignored. To use a % you must put %%.
" For automated FUSE mounts, you must register an extension with :file[x]type
" in one of following formats:
"
" :filetype extensions FUSE_MOUNT|some_mount_command using %SOURCE_FILE and %DESTINATION_DIR variables
" %SOURCE_FILE and %DESTINATION_DIR are filled in by vifm at runtime.
" A sample line might look like this:
" :filetype *.zip,*.jar,*.war,*.ear FUSE_MOUNT|fuse-zip %SOURCE_FILE %DESTINATION_DIR
"
" :filetype extensions FUSE_MOUNT2|some_mount_command using %PARAM and %DESTINATION_DIR variables
" %PARAM and %DESTINATION_DIR are filled in by vifm at runtime.
" A sample line might look like this:
" :filetype *.ssh FUSE_MOUNT2|sshfs %PARAM %DESTINATION_DIR
" %PARAM value is filled from the first line of file (whole line).
" Example first line for SshMount filetype: root@127.0.0.1:/
"
" You can also add %CLEAR if you want to clear screen before running FUSE
" program.
" For automated FUSE mounts, you must register an extension with :file[x]type
" in one of following formats:
"
" :filetype extensions FUSE_MOUNT|some_mount_command using %SOURCE_FILE and %DESTINATION_DIR variables
" %SOURCE_FILE and %DESTINATION_DIR are filled in by vifm at runtime.
" A sample line might look like this:
" :filetype *.zip,*.jar,*.war,*.ear FUSE_MOUNT|fuse-zip %SOURCE_FILE %DESTINATION_DIR
"
" :filetype extensions FUSE_MOUNT2|some_mount_command using %PARAM and %DESTINATION_DIR variables
" %PARAM and %DESTINATION_DIR are filled in by vifm at runtime.
" A sample line might look like this:
" :filetype *.ssh FUSE_MOUNT2|sshfs %PARAM %DESTINATION_DIR
" %PARAM value is filled from the first line of file (whole line).
" Example first line for SshMount filetype: root@127.0.0.1:/
"
" You can also add %CLEAR if you want to clear screen before running FUSE
" program.
" Pdf
filextype *.pdf zathura %c %i &, apvlv %c, xpdf %c
fileviewer *.pdf pdftotext -nopgbrk %c -
" Pdf
filextype *.pdf zathura %c %i &, apvlv %c, xpdf %c
fileviewer *.pdf pdftotext -nopgbrk %c -
"Image
" fileviewer *.png,*jpeg,*jpg img2txt --width=100 %c
"Image
" fileviewer *.png,*jpeg,*jpg img2txt --width=100 %c
"previewing html docs
fileviewer *.html w3m %c
"previewing html docs
fileviewer *.html w3m %c
" Open all other files with default system programs (you can also remove all
" :file[x]type commands above to ensure they don't interfere with system-wide
" settings). By default all unknown files are opened with 'vi[x]cmd'
" uncommenting one of lines below will result in ignoring 'vi[x]cmd' option
" for unknown file types.
" For *nix:
filetype * xdg-open
" Open all other files with default system programs (you can also remove all
" :file[x]type commands above to ensure they don't interfere with system-wide
" settings). By default all unknown files are opened with 'vi[x]cmd'
" uncommenting one of lines below will result in ignoring 'vi[x]cmd' option
" for unknown file types.
" For *nix:
filetype * xdg-open
" ------------------------------------------------------------------------------

View file

@ -23,96 +23,96 @@ filetype plugin on
set noswapfile "disables creation of swap files
"useful keybinds
let mapleader = "\\"
"spell checking
"toggle spell checking
noremap <leader>ss :setlocal spell!<CR>
let mapleader = "\\"
"spell checking
"toggle spell checking
noremap <leader>ss :setlocal spell!<CR>
"splitting panels with <leader>| or -
nnoremap <leader>\| :vs<Enter>
nnoremap <leader>\- :sp<Enter>
"splitting panels with <leader>| or -
nnoremap <leader>\| :vs<Enter>
nnoremap <leader>\- :sp<Enter>
" shortcuts using leader
" noremap <leader>sn ]s
" noremap <leader>sp [s
" noremap <leader>s? z=
" shortcuts using leader
" noremap <leader>sn ]s
" noremap <leader>sp [s
" noremap <leader>s? z=
"navigating splits: Control+hjkl will move from split to split
nnoremap <C-h> <C-w>h
nnoremap <C-j> <C-w>j
nnoremap <C-k> <C-w>k
nnoremap <C-l> <C-w>l
"navigating splits: Control+hjkl will move from split to split
nnoremap <C-h> <C-w>h
nnoremap <C-j> <C-w>j
nnoremap <C-k> <C-w>k
nnoremap <C-l> <C-w>l
"command mode keybinds
"w!! writes using sudo
"cnoremap w!! w !sudo tee % >/dev/null
"command mode keybinds
"w!! writes using sudo
"cnoremap w!! w !sudo tee % >/dev/null
"user interface stuff
"disables the autocommenting stuff.
set formatoptions-=o
set formatoptions-=r
set formatoptions-=c
"disables the autocommenting stuff.
set formatoptions-=o
set formatoptions-=r
set formatoptions-=c
"disable text wrapping via carriage returns, should only wrap visually
set textwidth=0
set wrapmargin=0
set wrap
set linebreak
set breakindent
"disable text wrapping via carriage returns, should only wrap visually
set textwidth=0
set wrapmargin=0
set wrap
set linebreak
set breakindent
"adds a ruler to the side of the screen
set number
"adds a ruler to the side of the screen
set number
"displays the coordinates of your cursour in the statusbar
set ruler
"displays the coordinates of your cursour in the statusbar
set ruler
"scrollofff sets the number of lines from the top or bottom of the screen before vim will scroll. sidescroll off does the same thing for the sides of the window
set scrolloff=5
set sidescrolloff=5
"scrollofff sets the number of lines from the top or bottom of the screen before vim will scroll. sidescroll off does the same thing for the sides of the window
set scrolloff=5
set sidescrolloff=5
"better command line completion
set wildmenu
"better command line completion
set wildmenu
"ignore cases in search unless you have a capital letter in the search
set ignorecase
set smartcase
"ignore cases in search unless you have a capital letter in the search
set ignorecase
set smartcase
"this allows putting the cursor just after the last character of the line.
"set virtualedit=onemore
"this allows putting the cursor just after the last character of the line.
"set virtualedit=onemore
"show unfinished commands on the RIGHT side of the statusbar. yes, it is working.
set showcmd
"show unfinished commands on the RIGHT side of the statusbar. yes, it is working.
set showcmd
"make regex a bit easier to type
set magic
set hidden
"make regex a bit easier to type
set magic
set hidden
"always display status line
set laststatus=2
"always display status line
set laststatus=2
"keycodes time out fast, mappings have a bit longer
set timeout timeoutlen=1000 ttimeout ttimeoutlen=100
"keycodes time out fast, mappings have a bit longer
set timeout timeoutlen=1000 ttimeout ttimeoutlen=100
"make it so the session feature wont overwrite our vimrc if the vimrc has newer bindings than this session.
set sessionoptions-=options
"make it so the session feature wont overwrite our vimrc if the vimrc has newer bindings than this session.
set sessionoptions-=options
"tab stuff
set tabstop=4
set shiftwidth=4
set autoindent
set tabstop=4
set shiftwidth=4
set autoindent
"highlighting/colour stuff
"sets the colorscheme. to get a list of the available colors, do :colorscheme <Space> <C-d>
colorscheme ron
"sets the colorscheme. to get a list of the available colors, do :colorscheme <Space> <C-d>
colorscheme ron
syntax enable
syntax enable
"highlight search results
set hlsearch
"highlight search results
set hlsearch
"search as you type
set incsearch
"search as you type
set incsearch
"<leader> L clears the search highlighting
noremap <leader>l :nohls<CR>
"<leader> L clears the search highlighting
noremap <leader>l :nohls<CR>

View file

@ -1,3 +1,3 @@
[user]
email = venberggabe@johndeere.com
name = Gabe Venberg
email = venberggabe@johndeere.com
name = Gabe Venberg

View file

@ -20,114 +20,114 @@ URxvt.keysym.C-0: resize-font:reset
URxvt.keysym.C-question: resize-font:show
!dark colourscheme
! special
*.foreground: #b7b8b9
*.background: #0c0d0e
*.cursorColor: #b7b8b9
! special
*.foreground: #b7b8b9
*.background: #0c0d0e
*.cursorColor: #b7b8b9
! black
*.color0: #0c0d0e
*.color8: #737475
! black
*.color0: #0c0d0e
*.color8: #737475
! red
*.color1: #e31a1c
*.color9: #e31a1c
! red
*.color1: #e31a1c
*.color9: #e31a1c
! green
*.color2: #31a354
*.color10: #31a354
! green
*.color2: #31a354
*.color10: #31a354
! yellow
*.color3: #dca060
*.color11: #dca060
! yellow
*.color3: #dca060
*.color11: #dca060
! blue
*.color4: #3182bd
*.color12: #3182bd
! blue
*.color4: #3182bd
*.color12: #3182bd
! magenta
*.color5: #756bb1
*.color13: #756bb1
! magenta
*.color5: #756bb1
*.color13: #756bb1
! cyan
*.color6: #80b1d3
*.color14: #80b1d3
! cyan
*.color6: #80b1d3
*.color14: #80b1d3
! white
*.color7: #b7b8b9
*.color15: #fcfdfe
! white
*.color7: #b7b8b9
*.color15: #fcfdfe
! drop in Solarized colorscheme for Xresources/Xdefaults
!SOLARIZED HEX 16/8 TERMCOL XTERM/HEX L*A*B RGB HSB
!--------- ------- ---- ------- ----------- ---------- ----------- -----------
!base03 #002b36 8/4 brblack 234 #1c1c1c 15 -12 -12 0 43 54 193 100 21
!base02 #073642 0/4 black 235 #262626 20 -12 -12 7 54 66 192 90 26
!base01 #586e75 10/7 brgreen 240 #585858 45 -07 -07 88 110 117 194 25 46
!base00 #657b83 11/7 bryellow 241 #626262 50 -07 -07 101 123 131 195 23 51
!base0 #839496 12/6 brblue 244 #808080 60 -06 -03 131 148 150 186 13 59
!base1 #93a1a1 14/4 brcyan 245 #8a8a8a 65 -05 -02 147 161 161 180 9 63
!base2 #eee8d5 7/7 white 254 #e4e4e4 92 -00 10 238 232 213 44 11 93
!base3 #fdf6e3 15/7 brwhite 230 #ffffd7 97 00 10 253 246 227 44 10 99
!yellow #b58900 3/3 yellow 136 #af8700 60 10 65 181 137 0 45 100 71
!orange #cb4b16 9/3 brred 166 #d75f00 50 50 55 203 75 22 18 89 80
!red #dc322f 1/1 red 160 #d70000 50 65 45 220 50 47 1 79 86
!magenta #d33682 5/5 magenta 125 #af005f 50 65 -05 211 54 130 331 74 83
!violet #6c71c4 13/5 brmagenta 61 #5f5faf 50 15 -45 108 113 196 237 45 77
!blue #268bd2 4/4 blue 33 #0087ff 55 -10 -45 38 139 210 205 82 82
!cyan #2aa198 6/6 cyan 37 #00afaf 60 -35 -05 42 161 152 175 74 63
!green #859900 2/2 green 64 #5f8700 60 -20 65 133 153 0 68 100 60
!SOLARIZED HEX 16/8 TERMCOL XTERM/HEX L*A*B RGB HSB
!--------- ------- ---- ------- ----------- ---------- ----------- -----------
!base03 #002b36 8/4 brblack 234 #1c1c1c 15 -12 -12 0 43 54 193 100 21
!base02 #073642 0/4 black 235 #262626 20 -12 -12 7 54 66 192 90 26
!base01 #586e75 10/7 brgreen 240 #585858 45 -07 -07 88 110 117 194 25 46
!base00 #657b83 11/7 bryellow 241 #626262 50 -07 -07 101 123 131 195 23 51
!base0 #839496 12/6 brblue 244 #808080 60 -06 -03 131 148 150 186 13 59
!base1 #93a1a1 14/4 brcyan 245 #8a8a8a 65 -05 -02 147 161 161 180 9 63
!base2 #eee8d5 7/7 white 254 #e4e4e4 92 -00 10 238 232 213 44 11 93
!base3 #fdf6e3 15/7 brwhite 230 #ffffd7 97 00 10 253 246 227 44 10 99
!yellow #b58900 3/3 yellow 136 #af8700 60 10 65 181 137 0 45 100 71
!orange #cb4b16 9/3 brred 166 #d75f00 50 50 55 203 75 22 18 89 80
!red #dc322f 1/1 red 160 #d70000 50 65 45 220 50 47 1 79 86
!magenta #d33682 5/5 magenta 125 #af005f 50 65 -05 211 54 130 331 74 83
!violet #6c71c4 13/5 brmagenta 61 #5f5faf 50 15 -45 108 113 196 237 45 77
!blue #268bd2 4/4 blue 33 #0087ff 55 -10 -45 38 139 210 205 82 82
!cyan #2aa198 6/6 cyan 37 #00afaf 60 -35 -05 42 161 152 175 74 63
!green #859900 2/2 green 64 #5f8700 60 -20 65 133 153 0 68 100 60
!#define S_base03 #002b36
!#define S_base02 #073642
!#define S_base01 #586e75
!#define S_base00 #657b83
!#define S_base0 #839496
!#define S_base1 #93a1a1
!#define S_base2 #eee8d5
!#define S_base3 #fdf6e3
!#define S_yellow #b58900
!#define S_orange #cb4b16
!#define S_red #dc322f
!#define S_magenta #d33682
!#define S_violet #6c71c4
!#define S_blue #268bd2
!#define S_cyan #2aa198
!#define S_green #859900
!
!*background: S_base03
!*foreground: S_base00
!*cursorColor: S_base1
!*pointerColorBackground:S_base01
!*pointerColorForeground:S_base1
!
!! black dark/light
!*color0: S_base02
!*color8: S_base03
!
!! red dark/light
!*color1: S_red
!*color9: S_orange
!
!! green dark/light
!*color2: S_green
!*color10: S_base01
!
!! yellow dark/light
!*color3: S_yellow
!*color11: S_base00
!
!! blue dark/light
!*color4: S_blue
!*color12: S_base0
!
!! magenta dark/light
!*color5: S_magenta
!*color13: S_violet
!
!! cyan dark/light
!*color6: S_cyan
!*color14: S_base1
!
!! white dark/light
!*color7: S_base2
!*color15: S_base3
!#define S_base03 #002b36
!#define S_base02 #073642
!#define S_base01 #586e75
!#define S_base00 #657b83
!#define S_base0 #839496
!#define S_base1 #93a1a1
!#define S_base2 #eee8d5
!#define S_base3 #fdf6e3
!#define S_yellow #b58900
!#define S_orange #cb4b16
!#define S_red #dc322f
!#define S_magenta #d33682
!#define S_violet #6c71c4
!#define S_blue #268bd2
!#define S_cyan #2aa198
!#define S_green #859900
!
!*background: S_base03
!*foreground: S_base00
!*cursorColor: S_base1
!*pointerColorBackground:S_base01
!*pointerColorForeground:S_base1
!
!! black dark/light
!*color0: S_base02
!*color8: S_base03
!
!! red dark/light
!*color1: S_red
!*color9: S_orange
!
!! green dark/light
!*color2: S_green
!*color10: S_base01
!
!! yellow dark/light
!*color3: S_yellow
!*color11: S_base00
!
!! blue dark/light
!*color4: S_blue
!*color12: S_base0
!
!! magenta dark/light
!*color5: S_magenta
!*color13: S_violet
!
!! cyan dark/light
!*color6: S_cyan
!*color14: S_base1
!
!! white dark/light
!*color7: S_base2
!*color15: S_base3

View file

@ -22,114 +22,114 @@ URxvt.keysym.C-0: resize-font:reset
URxvt.keysym.C-question: resize-font:show
!dark colourscheme
! special
*.foreground: #b7b8b9
*.background: #0c0d0e
*.cursorColor: #b7b8b9
! special
*.foreground: #b7b8b9
*.background: #0c0d0e
*.cursorColor: #b7b8b9
! black
*.color0: #0c0d0e
*.color8: #737475
! black
*.color0: #0c0d0e
*.color8: #737475
! red
*.color1: #e31a1c
*.color9: #e31a1c
! red
*.color1: #e31a1c
*.color9: #e31a1c
! green
*.color2: #31a354
*.color10: #31a354
! green
*.color2: #31a354
*.color10: #31a354
! yellow
*.color3: #dca060
*.color11: #dca060
! yellow
*.color3: #dca060
*.color11: #dca060
! blue
*.color4: #3182bd
*.color12: #3182bd
! blue
*.color4: #3182bd
*.color12: #3182bd
! magenta
*.color5: #756bb1
*.color13: #756bb1
! magenta
*.color5: #756bb1
*.color13: #756bb1
! cyan
*.color6: #80b1d3
*.color14: #80b1d3
! cyan
*.color6: #80b1d3
*.color14: #80b1d3
! white
*.color7: #b7b8b9
*.color15: #fcfdfe
! white
*.color7: #b7b8b9
*.color15: #fcfdfe
! drop in Solarized colorscheme for Xresources/Xdefaults
!SOLARIZED HEX 16/8 TERMCOL XTERM/HEX L*A*B RGB HSB
!--------- ------- ---- ------- ----------- ---------- ----------- -----------
!base03 #002b36 8/4 brblack 234 #1c1c1c 15 -12 -12 0 43 54 193 100 21
!base02 #073642 0/4 black 235 #262626 20 -12 -12 7 54 66 192 90 26
!base01 #586e75 10/7 brgreen 240 #585858 45 -07 -07 88 110 117 194 25 46
!base00 #657b83 11/7 bryellow 241 #626262 50 -07 -07 101 123 131 195 23 51
!base0 #839496 12/6 brblue 244 #808080 60 -06 -03 131 148 150 186 13 59
!base1 #93a1a1 14/4 brcyan 245 #8a8a8a 65 -05 -02 147 161 161 180 9 63
!base2 #eee8d5 7/7 white 254 #e4e4e4 92 -00 10 238 232 213 44 11 93
!base3 #fdf6e3 15/7 brwhite 230 #ffffd7 97 00 10 253 246 227 44 10 99
!yellow #b58900 3/3 yellow 136 #af8700 60 10 65 181 137 0 45 100 71
!orange #cb4b16 9/3 brred 166 #d75f00 50 50 55 203 75 22 18 89 80
!red #dc322f 1/1 red 160 #d70000 50 65 45 220 50 47 1 79 86
!magenta #d33682 5/5 magenta 125 #af005f 50 65 -05 211 54 130 331 74 83
!violet #6c71c4 13/5 brmagenta 61 #5f5faf 50 15 -45 108 113 196 237 45 77
!blue #268bd2 4/4 blue 33 #0087ff 55 -10 -45 38 139 210 205 82 82
!cyan #2aa198 6/6 cyan 37 #00afaf 60 -35 -05 42 161 152 175 74 63
!green #859900 2/2 green 64 #5f8700 60 -20 65 133 153 0 68 100 60
!SOLARIZED HEX 16/8 TERMCOL XTERM/HEX L*A*B RGB HSB
!--------- ------- ---- ------- ----------- ---------- ----------- -----------
!base03 #002b36 8/4 brblack 234 #1c1c1c 15 -12 -12 0 43 54 193 100 21
!base02 #073642 0/4 black 235 #262626 20 -12 -12 7 54 66 192 90 26
!base01 #586e75 10/7 brgreen 240 #585858 45 -07 -07 88 110 117 194 25 46
!base00 #657b83 11/7 bryellow 241 #626262 50 -07 -07 101 123 131 195 23 51
!base0 #839496 12/6 brblue 244 #808080 60 -06 -03 131 148 150 186 13 59
!base1 #93a1a1 14/4 brcyan 245 #8a8a8a 65 -05 -02 147 161 161 180 9 63
!base2 #eee8d5 7/7 white 254 #e4e4e4 92 -00 10 238 232 213 44 11 93
!base3 #fdf6e3 15/7 brwhite 230 #ffffd7 97 00 10 253 246 227 44 10 99
!yellow #b58900 3/3 yellow 136 #af8700 60 10 65 181 137 0 45 100 71
!orange #cb4b16 9/3 brred 166 #d75f00 50 50 55 203 75 22 18 89 80
!red #dc322f 1/1 red 160 #d70000 50 65 45 220 50 47 1 79 86
!magenta #d33682 5/5 magenta 125 #af005f 50 65 -05 211 54 130 331 74 83
!violet #6c71c4 13/5 brmagenta 61 #5f5faf 50 15 -45 108 113 196 237 45 77
!blue #268bd2 4/4 blue 33 #0087ff 55 -10 -45 38 139 210 205 82 82
!cyan #2aa198 6/6 cyan 37 #00afaf 60 -35 -05 42 161 152 175 74 63
!green #859900 2/2 green 64 #5f8700 60 -20 65 133 153 0 68 100 60
!#define S_base03 #002b36
!#define S_base02 #073642
!#define S_base01 #586e75
!#define S_base00 #657b83
!#define S_base0 #839496
!#define S_base1 #93a1a1
!#define S_base2 #eee8d5
!#define S_base3 #fdf6e3
!#define S_yellow #b58900
!#define S_orange #cb4b16
!#define S_red #dc322f
!#define S_magenta #d33682
!#define S_violet #6c71c4
!#define S_blue #268bd2
!#define S_cyan #2aa198
!#define S_green #859900
!
!*background: S_base03
!*foreground: S_base00
!*cursorColor: S_base1
!*pointerColorBackground:S_base01
!*pointerColorForeground:S_base1
!
!! black dark/light
!*color0: S_base02
!*color8: S_base03
!
!! red dark/light
!*color1: S_red
!*color9: S_orange
!
!! green dark/light
!*color2: S_green
!*color10: S_base01
!
!! yellow dark/light
!*color3: S_yellow
!*color11: S_base00
!
!! blue dark/light
!*color4: S_blue
!*color12: S_base0
!
!! magenta dark/light
!*color5: S_magenta
!*color13: S_violet
!
!! cyan dark/light
!*color6: S_cyan
!*color14: S_base1
!
!! white dark/light
!*color7: S_base2
!*color15: S_base3
!#define S_base03 #002b36
!#define S_base02 #073642
!#define S_base01 #586e75
!#define S_base00 #657b83
!#define S_base0 #839496
!#define S_base1 #93a1a1
!#define S_base2 #eee8d5
!#define S_base3 #fdf6e3
!#define S_yellow #b58900
!#define S_orange #cb4b16
!#define S_red #dc322f
!#define S_magenta #d33682
!#define S_violet #6c71c4
!#define S_blue #268bd2
!#define S_cyan #2aa198
!#define S_green #859900
!
!*background: S_base03
!*foreground: S_base00
!*cursorColor: S_base1
!*pointerColorBackground:S_base01
!*pointerColorForeground:S_base1
!
!! black dark/light
!*color0: S_base02
!*color8: S_base03
!
!! red dark/light
!*color1: S_red
!*color9: S_orange
!
!! green dark/light
!*color2: S_green
!*color10: S_base01
!
!! yellow dark/light
!*color3: S_yellow
!*color11: S_base00
!
!! blue dark/light
!*color4: S_blue
!*color12: S_base0
!
!! magenta dark/light
!*color5: S_magenta
!*color13: S_violet
!
!! cyan dark/light
!*color6: S_cyan
!*color14: S_base1
!
!! white dark/light
!*color7: S_base2
!*color15: S_base3

View file

@ -1,240 +1,240 @@
[manager]
keymap = [
{ on = [ "<Esc>" ], exec = "escape", desc = "Exit visual mode, clear selected, or cancel search" },
{ on = [ "q" ], exec = "quit", desc = "Exit the process" },
{ on = [ "Q" ], exec = "quit --no-cwd-file", desc = "Exit the process without writing cwd-file" },
{ on = [ "<C-q>" ], exec = "close", desc = "Close the current tab, or quit if it is last tab" },
{ on = [ "<C-z>" ], exec = "suspend", desc = "Suspend the process" },
{ on = [ "<Esc>" ], exec = "escape", desc = "Exit visual mode, clear selected, or cancel search" },
{ on = [ "q" ], exec = "quit", desc = "Exit the process" },
{ on = [ "Q" ], exec = "quit --no-cwd-file", desc = "Exit the process without writing cwd-file" },
{ on = [ "<C-q>" ], exec = "close", desc = "Close the current tab, or quit if it is last tab" },
{ on = [ "<C-z>" ], exec = "suspend", desc = "Suspend the process" },
# Navigation
{ on = [ "k" ], exec = "arrow -1", desc = "Move cursor up" },
{ on = [ "j" ], exec = "arrow 1", desc = "Move cursor down" },
# Navigation
{ on = [ "k" ], exec = "arrow -1", desc = "Move cursor up" },
{ on = [ "j" ], exec = "arrow 1", desc = "Move cursor down" },
{ on = [ "K" ], exec = "arrow -5", desc = "Move cursor up 5 lines" },
{ on = [ "J" ], exec = "arrow 5", desc = "Move cursor down 5 lines" },
{ on = [ "K" ], exec = "arrow -5", desc = "Move cursor up 5 lines" },
{ on = [ "J" ], exec = "arrow 5", desc = "Move cursor down 5 lines" },
{ on = [ "<C-u>" ], exec = "arrow -50%", desc = "Move cursor up half page" },
{ on = [ "<C-d>" ], exec = "arrow 50%", desc = "Move cursor down half page" },
{ on = [ "<C-b>" ], exec = "arrow -100%", desc = "Move cursor up one page" },
{ on = [ "<C-f>" ], exec = "arrow 100%", desc = "Move cursor down one page" },
{ on = [ "<C-u>" ], exec = "arrow -50%", desc = "Move cursor up half page" },
{ on = [ "<C-d>" ], exec = "arrow 50%", desc = "Move cursor down half page" },
{ on = [ "<C-b>" ], exec = "arrow -100%", desc = "Move cursor up one page" },
{ on = [ "<C-f>" ], exec = "arrow 100%", desc = "Move cursor down one page" },
{ on = [ "h" ], exec = [ "leave", "escape --visual --select" ], desc = "Go back to the parent directory" },
{ on = [ "l" ], exec = [ "enter", "escape --visual --select" ], desc = "Enter the child directory" },
{ on = [ "h" ], exec = [ "leave", "escape --visual --select" ], desc = "Go back to the parent directory" },
{ on = [ "l" ], exec = [ "enter", "escape --visual --select" ], desc = "Enter the child directory" },
{ on = [ "H" ], exec = "back", desc = "Go back to the previous directory" },
{ on = [ "L" ], exec = "forward", desc = "Go forward to the next directory" },
{ on = [ "H" ], exec = "back", desc = "Go back to the previous directory" },
{ on = [ "L" ], exec = "forward", desc = "Go forward to the next directory" },
{ on = [ "<A-k>" ], exec = "peek -5", desc = "Peek up 5 units in the preview" },
{ on = [ "<A-j>" ], exec = "peek 5", desc = "Peek down 5 units in the preview" },
{ on = [ "<A-k>" ], exec = "peek -5", desc = "Peek up 5 units in the preview" },
{ on = [ "<A-j>" ], exec = "peek 5", desc = "Peek down 5 units in the preview" },
{ on = [ "<Up>" ], exec = "arrow -1", desc = "Move cursor up" },
{ on = [ "<Down>" ], exec = "arrow 1", desc = "Move cursor down" },
{ on = [ "<Left>" ], exec = "leave", desc = "Go back to the parent directory" },
{ on = [ "<Right>" ], exec = "enter", desc = "Enter the child directory" },
{ on = [ "<Up>" ], exec = "arrow -1", desc = "Move cursor up" },
{ on = [ "<Down>" ], exec = "arrow 1", desc = "Move cursor down" },
{ on = [ "<Left>" ], exec = "leave", desc = "Go back to the parent directory" },
{ on = [ "<Right>" ], exec = "enter", desc = "Enter the child directory" },
{ on = [ "g", "g" ], exec = "arrow -99999999", desc = "Move cursor to the top" },
{ on = [ "G" ], exec = "arrow 99999999", desc = "Move cursor to the bottom" },
{ on = [ "g", "g" ], exec = "arrow -99999999", desc = "Move cursor to the top" },
{ on = [ "G" ], exec = "arrow 99999999", desc = "Move cursor to the bottom" },
# Selection
{ on = [ "<Space>" ], exec = [ "select --state=none", "arrow 1" ], desc = "Toggle the current selection state" },
{ on = [ "v" ], exec = "visual_mode", desc = "Enter visual mode (selection mode)" },
{ on = [ "V" ], exec = "visual_mode --unset", desc = "Enter visual mode (unset mode)" },
{ on = [ "<C-a>" ], exec = "select_all --state=true", desc = "Select all files" },
{ on = [ "<C-r>" ], exec = "select_all --state=none", desc = "Inverse selection of all files" },
# Selection
{ on = [ "<Space>" ], exec = [ "select --state=none", "arrow 1" ], desc = "Toggle the current selection state" },
{ on = [ "v" ], exec = "visual_mode", desc = "Enter visual mode (selection mode)" },
{ on = [ "V" ], exec = "visual_mode --unset", desc = "Enter visual mode (unset mode)" },
{ on = [ "<C-a>" ], exec = "select_all --state=true", desc = "Select all files" },
{ on = [ "<C-r>" ], exec = "select_all --state=none", desc = "Inverse selection of all files" },
# Operation
{ on = [ "o" ], exec = "open", desc = "Open the selected files" },
{ on = [ "O" ], exec = "open --interactive", desc = "Open the selected files interactively" },
{ on = [ "<Enter>" ], exec = "open", desc = "Open the selected files" },
{ on = [ "<C-Enter>" ], exec = "open --interactive", desc = "Open the selected files interactively" },
{ on = [ "y" ], exec = [ "yank", "escape --visual --select" ], desc = "Copy the selected files" },
{ on = [ "x" ], exec = [ "yank --cut", "escape --visual --select" ], desc = "Cut the selected files" },
{ on = [ "p" ], exec = "paste", desc = "Paste the files" },
{ on = [ "P" ], exec = "paste --force", desc = "Paste the files (overwrite if the destination exists)" },
{ on = [ "-" ], exec = "link", desc = "Symlink the absolute path of files" },
{ on = [ "_" ], exec = "link --relative", desc = "Symlink the relative path of files" },
{ on = [ "d" ], exec = [ "remove", "escape --visual --select" ], desc = "Move the files to the trash" },
{ on = [ "D" ], exec = [ "remove --permanently", "escape --visual --select" ], desc = "Permanently delete the files" },
{ on = [ "a" ], exec = "create", desc = "Create a file or directory (ends with / for directories)" },
{ on = [ "r" ], exec = "rename", desc = "Rename a file or directory" },
{ on = [ ";" ], exec = "shell", desc = "Run a shell command" },
{ on = [ ":" ], exec = "shell --block", desc = "Run a shell command (block the UI until the command finishes)" },
{ on = [ "." ], exec = "hidden toggle", desc = "Toggle the visibility of hidden files" },
{ on = [ "s" ], exec = "search fd", desc = "Search files by name using fd" },
{ on = [ "S" ], exec = "search rg", desc = "Search files by content using ripgrep" },
{ on = [ "<C-s>" ], exec = "search none", desc = "Cancel the ongoing search" },
{ on = [ "z" ], exec = "jump zoxide", desc = "Jump to a directory using zoxide" },
{ on = [ "Z" ], exec = "jump fzf", desc = "Jump to a directory, or reveal a file using fzf" },
# Operation
{ on = [ "o" ], exec = "open", desc = "Open the selected files" },
{ on = [ "O" ], exec = "open --interactive", desc = "Open the selected files interactively" },
{ on = [ "<Enter>" ], exec = "open", desc = "Open the selected files" },
{ on = [ "<C-Enter>" ], exec = "open --interactive", desc = "Open the selected files interactively" },
{ on = [ "y" ], exec = [ "yank", "escape --visual --select" ], desc = "Copy the selected files" },
{ on = [ "x" ], exec = [ "yank --cut", "escape --visual --select" ], desc = "Cut the selected files" },
{ on = [ "p" ], exec = "paste", desc = "Paste the files" },
{ on = [ "P" ], exec = "paste --force", desc = "Paste the files (overwrite if the destination exists)" },
{ on = [ "-" ], exec = "link", desc = "Symlink the absolute path of files" },
{ on = [ "_" ], exec = "link --relative", desc = "Symlink the relative path of files" },
{ on = [ "d" ], exec = [ "remove", "escape --visual --select" ], desc = "Move the files to the trash" },
{ on = [ "D" ], exec = [ "remove --permanently", "escape --visual --select" ], desc = "Permanently delete the files" },
{ on = [ "a" ], exec = "create", desc = "Create a file or directory (ends with / for directories)" },
{ on = [ "r" ], exec = "rename", desc = "Rename a file or directory" },
{ on = [ ";" ], exec = "shell", desc = "Run a shell command" },
{ on = [ ":" ], exec = "shell --block", desc = "Run a shell command (block the UI until the command finishes)" },
{ on = [ "." ], exec = "hidden toggle", desc = "Toggle the visibility of hidden files" },
{ on = [ "s" ], exec = "search fd", desc = "Search files by name using fd" },
{ on = [ "S" ], exec = "search rg", desc = "Search files by content using ripgrep" },
{ on = [ "<C-s>" ], exec = "search none", desc = "Cancel the ongoing search" },
{ on = [ "z" ], exec = "jump zoxide", desc = "Jump to a directory using zoxide" },
{ on = [ "Z" ], exec = "jump fzf", desc = "Jump to a directory, or reveal a file using fzf" },
# Linemode
{ on = [ "m", "s" ], exec = "linemode size", desc = "Set linemode to size" },
{ on = [ "m", "p" ], exec = "linemode permissions", desc = "Set linemode to permissions" },
{ on = [ "m", "m" ], exec = "linemode mtime", desc = "Set linemode to mtime" },
{ on = [ "m", "n" ], exec = "linemode none", desc = "Set linemode to none" },
# Linemode
{ on = [ "m", "s" ], exec = "linemode size", desc = "Set linemode to size" },
{ on = [ "m", "p" ], exec = "linemode permissions", desc = "Set linemode to permissions" },
{ on = [ "m", "m" ], exec = "linemode mtime", desc = "Set linemode to mtime" },
{ on = [ "m", "n" ], exec = "linemode none", desc = "Set linemode to none" },
# Copy
{ on = [ "c", "c" ], exec = "copy path", desc = "Copy the absolute path" },
{ on = [ "c", "d" ], exec = "copy dirname", desc = "Copy the path of the parent directory" },
{ on = [ "c", "f" ], exec = "copy filename", desc = "Copy the name of the file" },
{ on = [ "c", "n" ], exec = "copy name_without_ext", desc = "Copy the name of the file without the extension" },
# Copy
{ on = [ "c", "c" ], exec = "copy path", desc = "Copy the absolute path" },
{ on = [ "c", "d" ], exec = "copy dirname", desc = "Copy the path of the parent directory" },
{ on = [ "c", "f" ], exec = "copy filename", desc = "Copy the name of the file" },
{ on = [ "c", "n" ], exec = "copy name_without_ext", desc = "Copy the name of the file without the extension" },
# Find
{ on = [ "/" ], exec = "find --smart" },
{ on = [ "?" ], exec = "find --previous --smart" },
{ on = [ "n" ], exec = "find_arrow" },
{ on = [ "N" ], exec = "find_arrow --previous" },
# Find
{ on = [ "/" ], exec = "find --smart" },
{ on = [ "?" ], exec = "find --previous --smart" },
{ on = [ "n" ], exec = "find_arrow" },
{ on = [ "N" ], exec = "find_arrow --previous" },
# Sorting
{ on = [ ",", "a" ], exec = "sort alphabetical --dir_first", desc = "Sort alphabetically" },
{ on = [ ",", "A" ], exec = "sort alphabetical --reverse --dir_first", desc = "Sort alphabetically (reverse)" },
{ on = [ ",", "c" ], exec = "sort created --dir_first", desc = "Sort by creation time" },
{ on = [ ",", "C" ], exec = "sort created --reverse --dir_first", desc = "Sort by creation time (reverse)" },
{ on = [ ",", "m" ], exec = "sort modified --dir_first", desc = "Sort by modified time" },
{ on = [ ",", "M" ], exec = "sort modified --reverse --dir_first", desc = "Sort by modified time (reverse)" },
{ on = [ ",", "n" ], exec = "sort natural --dir_first", desc = "Sort naturally" },
{ on = [ ",", "N" ], exec = "sort natural --reverse --dir_first", desc = "Sort naturally (reverse)" },
{ on = [ ",", "s" ], exec = "sort size --dir_first", desc = "Sort by size" },
{ on = [ ",", "S" ], exec = "sort size --reverse --dir_first", desc = "Sort by size (reverse)" },
# Sorting
{ on = [ ",", "a" ], exec = "sort alphabetical --dir_first", desc = "Sort alphabetically" },
{ on = [ ",", "A" ], exec = "sort alphabetical --reverse --dir_first", desc = "Sort alphabetically (reverse)" },
{ on = [ ",", "c" ], exec = "sort created --dir_first", desc = "Sort by creation time" },
{ on = [ ",", "C" ], exec = "sort created --reverse --dir_first", desc = "Sort by creation time (reverse)" },
{ on = [ ",", "m" ], exec = "sort modified --dir_first", desc = "Sort by modified time" },
{ on = [ ",", "M" ], exec = "sort modified --reverse --dir_first", desc = "Sort by modified time (reverse)" },
{ on = [ ",", "n" ], exec = "sort natural --dir_first", desc = "Sort naturally" },
{ on = [ ",", "N" ], exec = "sort natural --reverse --dir_first", desc = "Sort naturally (reverse)" },
{ on = [ ",", "s" ], exec = "sort size --dir_first", desc = "Sort by size" },
{ on = [ ",", "S" ], exec = "sort size --reverse --dir_first", desc = "Sort by size (reverse)" },
# Tabs
{ on = [ "t" ], exec = "tab_create --current", desc = "Create a new tab using the current path" },
# Tabs
{ on = [ "t" ], exec = "tab_create --current", desc = "Create a new tab using the current path" },
{ on = [ "1" ], exec = "tab_switch 0", desc = "Switch to the first tab" },
{ on = [ "2" ], exec = "tab_switch 1", desc = "Switch to the second tab" },
{ on = [ "3" ], exec = "tab_switch 2", desc = "Switch to the third tab" },
{ on = [ "4" ], exec = "tab_switch 3", desc = "Switch to the fourth tab" },
{ on = [ "5" ], exec = "tab_switch 4", desc = "Switch to the fifth tab" },
{ on = [ "6" ], exec = "tab_switch 5", desc = "Switch to the sixth tab" },
{ on = [ "7" ], exec = "tab_switch 6", desc = "Switch to the seventh tab" },
{ on = [ "8" ], exec = "tab_switch 7", desc = "Switch to the eighth tab" },
{ on = [ "9" ], exec = "tab_switch 8", desc = "Switch to the ninth tab" },
{ on = [ "1" ], exec = "tab_switch 0", desc = "Switch to the first tab" },
{ on = [ "2" ], exec = "tab_switch 1", desc = "Switch to the second tab" },
{ on = [ "3" ], exec = "tab_switch 2", desc = "Switch to the third tab" },
{ on = [ "4" ], exec = "tab_switch 3", desc = "Switch to the fourth tab" },
{ on = [ "5" ], exec = "tab_switch 4", desc = "Switch to the fifth tab" },
{ on = [ "6" ], exec = "tab_switch 5", desc = "Switch to the sixth tab" },
{ on = [ "7" ], exec = "tab_switch 6", desc = "Switch to the seventh tab" },
{ on = [ "8" ], exec = "tab_switch 7", desc = "Switch to the eighth tab" },
{ on = [ "9" ], exec = "tab_switch 8", desc = "Switch to the ninth tab" },
{ on = [ "[" ], exec = "tab_switch -1 --relative", desc = "Switch to the previous tab" },
{ on = [ "]" ], exec = "tab_switch 1 --relative", desc = "Switch to the next tab" },
{ on = [ "[" ], exec = "tab_switch -1 --relative", desc = "Switch to the previous tab" },
{ on = [ "]" ], exec = "tab_switch 1 --relative", desc = "Switch to the next tab" },
{ on = [ "{" ], exec = "tab_swap -1", desc = "Swap the current tab with the previous tab" },
{ on = [ "}" ], exec = "tab_swap 1", desc = "Swap the current tab with the next tab" },
{ on = [ "{" ], exec = "tab_swap -1", desc = "Swap the current tab with the previous tab" },
{ on = [ "}" ], exec = "tab_swap 1", desc = "Swap the current tab with the next tab" },
# Tasks
{ on = [ "w" ], exec = "tasks_show", desc = "Show the tasks manager" },
# Tasks
{ on = [ "w" ], exec = "tasks_show", desc = "Show the tasks manager" },
# Goto
{ on = [ "g", "h" ], exec = "cd ~", desc = "Go to the home directory" },
{ on = [ "g", "c" ], exec = "cd ~/.config", desc = "Go to the config directory" },
{ on = [ "g", "d" ], exec = "cd ~/Downloads", desc = "Go to the downloads directory" },
{ on = [ "g", "t" ], exec = "cd /tmp", desc = "Go to the temporary directory" },
{ on = [ "g", "<Space>" ], exec = "cd --interactive", desc = "Go to a directory interactively" },
# Goto
{ on = [ "g", "h" ], exec = "cd ~", desc = "Go to the home directory" },
{ on = [ "g", "c" ], exec = "cd ~/.config", desc = "Go to the config directory" },
{ on = [ "g", "d" ], exec = "cd ~/Downloads", desc = "Go to the downloads directory" },
{ on = [ "g", "t" ], exec = "cd /tmp", desc = "Go to the temporary directory" },
{ on = [ "g", "<Space>" ], exec = "cd --interactive", desc = "Go to a directory interactively" },
# Help
{ on = [ "~" ], exec = "help", desc = "Open help" },
# Help
{ on = [ "~" ], exec = "help", desc = "Open help" },
]
[tasks]
keymap = [
{ on = [ "<Esc>" ], exec = "close", desc = "Hide the task manager" },
{ on = [ "<C-q>" ], exec = "close", desc = "Hide the task manager" },
{ on = [ "w" ], exec = "close", desc = "Hide the task manager" },
{ on = [ "<Esc>" ], exec = "close", desc = "Hide the task manager" },
{ on = [ "<C-q>" ], exec = "close", desc = "Hide the task manager" },
{ on = [ "w" ], exec = "close", desc = "Hide the task manager" },
{ on = [ "k" ], exec = "arrow -1", desc = "Move cursor up" },
{ on = [ "j" ], exec = "arrow 1", desc = "Move cursor down" },
{ on = [ "k" ], exec = "arrow -1", desc = "Move cursor up" },
{ on = [ "j" ], exec = "arrow 1", desc = "Move cursor down" },
{ on = [ "<Up>" ], exec = "arrow -1", desc = "Move cursor up" },
{ on = [ "<Down>" ], exec = "arrow 1", desc = "Move cursor down" },
{ on = [ "<Up>" ], exec = "arrow -1", desc = "Move cursor up" },
{ on = [ "<Down>" ], exec = "arrow 1", desc = "Move cursor down" },
{ on = [ "<Enter>" ], exec = "inspect", desc = "Inspect the task" },
{ on = [ "x" ], exec = "cancel", desc = "Cancel the task" },
{ on = [ "<Enter>" ], exec = "inspect", desc = "Inspect the task" },
{ on = [ "x" ], exec = "cancel", desc = "Cancel the task" },
{ on = [ "~" ], exec = "help", desc = "Open help" }
{ on = [ "~" ], exec = "help", desc = "Open help" }
]
[select]
keymap = [
{ on = [ "<C-q>" ], exec = "close", desc = "Cancel selection" },
{ on = [ "<Esc>" ], exec = "close", desc = "Cancel selection" },
{ on = [ "<Enter>" ], exec = "close --submit", desc = "Submit the selection" },
{ on = [ "<C-q>" ], exec = "close", desc = "Cancel selection" },
{ on = [ "<Esc>" ], exec = "close", desc = "Cancel selection" },
{ on = [ "<Enter>" ], exec = "close --submit", desc = "Submit the selection" },
{ on = [ "k" ], exec = "arrow -1", desc = "Move cursor up" },
{ on = [ "j" ], exec = "arrow 1", desc = "Move cursor down" },
{ on = [ "k" ], exec = "arrow -1", desc = "Move cursor up" },
{ on = [ "j" ], exec = "arrow 1", desc = "Move cursor down" },
{ on = [ "K" ], exec = "arrow -5", desc = "Move cursor up 5 lines" },
{ on = [ "J" ], exec = "arrow 5", desc = "Move cursor down 5 lines" },
{ on = [ "K" ], exec = "arrow -5", desc = "Move cursor up 5 lines" },
{ on = [ "J" ], exec = "arrow 5", desc = "Move cursor down 5 lines" },
{ on = [ "<Up>" ], exec = "arrow -1", desc = "Move cursor up" },
{ on = [ "<Down>" ], exec = "arrow 1", desc = "Move cursor down" },
{ on = [ "<Up>" ], exec = "arrow -1", desc = "Move cursor up" },
{ on = [ "<Down>" ], exec = "arrow 1", desc = "Move cursor down" },
{ on = [ "~" ], exec = "help", desc = "Open help" }
{ on = [ "~" ], exec = "help", desc = "Open help" }
]
[input]
keymap = [
{ on = [ "<C-q>" ], exec = "close", desc = "Cancel input" },
{ on = [ "<Enter>" ], exec = "close --submit", desc = "Submit the input" },
{ on = [ "<Esc>" ], exec = "escape", desc = "Go back the normal mode, or cancel input" },
{ on = [ "<Backspace>" ], exec = "backspace" },
{ on = [ "<C-q>" ], exec = "close", desc = "Cancel input" },
{ on = [ "<Enter>" ], exec = "close --submit", desc = "Submit the input" },
{ on = [ "<Esc>" ], exec = "escape", desc = "Go back the normal mode, or cancel input" },
{ on = [ "<Backspace>" ], exec = "backspace" },
# Mode
{ on = [ "i" ], exec = "insert", desc = "Enter insert mode" },
{ on = [ "a" ], exec = "insert --append", desc = "Enter append mode" },
{ on = [ "v" ], exec = "visual", desc = "Enter visual mode" },
{ on = [ "V" ], exec = [ "move -999", "visual", "move 999" ], desc = "Enter visual mode and select all" },
# Mode
{ on = [ "i" ], exec = "insert", desc = "Enter insert mode" },
{ on = [ "a" ], exec = "insert --append", desc = "Enter append mode" },
{ on = [ "v" ], exec = "visual", desc = "Enter visual mode" },
{ on = [ "V" ], exec = [ "move -999", "visual", "move 999" ], desc = "Enter visual mode and select all" },
# Navigation
{ on = [ "h" ], exec = "move -1", desc = "Move cursor left" },
{ on = [ "l" ], exec = "move 1", desc = "Move cursor right" },
# Navigation
{ on = [ "h" ], exec = "move -1", desc = "Move cursor left" },
{ on = [ "l" ], exec = "move 1", desc = "Move cursor right" },
{ on = [ "0" ], exec = "move -999", desc = "Move to the BOL" },
{ on = [ "$" ], exec = "move 999", desc = "Move to the EOL" },
{ on = [ "I" ], exec = [ "move -999", "insert" ], desc = "Move to the BOL, and enter insert mode" },
{ on = [ "A" ], exec = [ "move 999", "insert --append" ], desc = "Move to the EOL, and enter append mode" },
{ on = [ "0" ], exec = "move -999", desc = "Move to the BOL" },
{ on = [ "$" ], exec = "move 999", desc = "Move to the EOL" },
{ on = [ "I" ], exec = [ "move -999", "insert" ], desc = "Move to the BOL, and enter insert mode" },
{ on = [ "A" ], exec = [ "move 999", "insert --append" ], desc = "Move to the EOL, and enter append mode" },
{ on = [ "<Left>" ], exec = "move -1", desc = "Move cursor left" },
{ on = [ "<Right>" ], exec = "move 1", desc = "Move cursor right" },
{ on = [ "<Left>" ], exec = "move -1", desc = "Move cursor left" },
{ on = [ "<Right>" ], exec = "move 1", desc = "Move cursor right" },
{ on = [ "b" ], exec = "backward", desc = "Move to the beginning of the previous word" },
{ on = [ "w" ], exec = "forward", desc = "Move to the beginning of the next word" },
{ on = [ "e" ], exec = "forward --end-of-word", desc = "Move to the end of the next word" },
{ on = [ "b" ], exec = "backward", desc = "Move to the beginning of the previous word" },
{ on = [ "w" ], exec = "forward", desc = "Move to the beginning of the next word" },
{ on = [ "e" ], exec = "forward --end-of-word", desc = "Move to the end of the next word" },
# Deletion
{ on = [ "d" ], exec = "delete --cut", desc = "Cut the selected characters" },
{ on = [ "D" ], exec = [ "delete --cut", "move 999" ], desc = "Cut until the EOL" },
{ on = [ "c" ], exec = "delete --cut --insert", desc = "Cut the selected characters, and enter insert mode" },
{ on = [ "C" ], exec = [ "delete --cut --insert", "move 999" ], desc = "Cut until the EOL, and enter insert mode" },
{ on = [ "x" ], exec = [ "delete --cut", "move 1 --in-operating" ], desc = "Cut the current character" },
# Deletion
{ on = [ "d" ], exec = "delete --cut", desc = "Cut the selected characters" },
{ on = [ "D" ], exec = [ "delete --cut", "move 999" ], desc = "Cut until the EOL" },
{ on = [ "c" ], exec = "delete --cut --insert", desc = "Cut the selected characters, and enter insert mode" },
{ on = [ "C" ], exec = [ "delete --cut --insert", "move 999" ], desc = "Cut until the EOL, and enter insert mode" },
{ on = [ "x" ], exec = [ "delete --cut", "move 1 --in-operating" ], desc = "Cut the current character" },
# Yank/Paste
{ on = [ "y" ], exec = "yank", desc = "Copy the selected characters" },
{ on = [ "p" ], exec = "paste", desc = "Paste the copied characters after the cursor" },
{ on = [ "P" ], exec = "paste --before", desc = "Paste the copied characters before the cursor" },
# Yank/Paste
{ on = [ "y" ], exec = "yank", desc = "Copy the selected characters" },
{ on = [ "p" ], exec = "paste", desc = "Paste the copied characters after the cursor" },
{ on = [ "P" ], exec = "paste --before", desc = "Paste the copied characters before the cursor" },
# Undo/Redo
{ on = [ "u" ], exec = "undo", desc = "Undo the last operation" },
{ on = [ "<C-r>" ], exec = "redo", desc = "Redo the last operation" },
# Undo/Redo
{ on = [ "u" ], exec = "undo", desc = "Undo the last operation" },
{ on = [ "<C-r>" ], exec = "redo", desc = "Redo the last operation" },
# Help
{ on = [ "~" ], exec = "help", desc = "Open help" }
# Help
{ on = [ "~" ], exec = "help", desc = "Open help" }
]
[help]
keymap = [
{ on = [ "<Esc>" ], exec = "escape", desc = "Clear the filter, or hide the help" },
{ on = [ "q" ], exec = "close", desc = "Exit the process" },
{ on = [ "<C-q>" ], exec = "close", desc = "Hide the help" },
{ on = [ "<Esc>" ], exec = "escape", desc = "Clear the filter, or hide the help" },
{ on = [ "q" ], exec = "close", desc = "Exit the process" },
{ on = [ "<C-q>" ], exec = "close", desc = "Hide the help" },
# Navigation
{ on = [ "k" ], exec = "arrow -1", desc = "Move cursor up" },
{ on = [ "j" ], exec = "arrow 1", desc = "Move cursor down" },
# Navigation
{ on = [ "k" ], exec = "arrow -1", desc = "Move cursor up" },
{ on = [ "j" ], exec = "arrow 1", desc = "Move cursor down" },
{ on = [ "K" ], exec = "arrow -5", desc = "Move cursor up 5 lines" },
{ on = [ "J" ], exec = "arrow 5", desc = "Move cursor down 5 lines" },
{ on = [ "K" ], exec = "arrow -5", desc = "Move cursor up 5 lines" },
{ on = [ "J" ], exec = "arrow 5", desc = "Move cursor down 5 lines" },
{ on = [ "<Up>" ], exec = "arrow -1", desc = "Move cursor up" },
{ on = [ "<Down>" ], exec = "arrow 1", desc = "Move cursor down" },
{ on = [ "<Up>" ], exec = "arrow -1", desc = "Move cursor up" },
{ on = [ "<Down>" ], exec = "arrow 1", desc = "Move cursor down" },
# Filtering
{ on = [ "/" ], exec = "filter", desc = "Apply a filter for the help items" },
# Filtering
{ on = [ "/" ], exec = "filter", desc = "Apply a filter for the help items" },
]

View file

@ -125,25 +125,25 @@ footer = { fg = "black", bg = "white" }
[filetype]
rules = [
# Images
{ mime = "image/*", fg = "cyan" },
# Images
{ mime = "image/*", fg = "cyan" },
# Videos
{ mime = "video/*", fg = "yellow" },
{ mime = "audio/*", fg = "yellow" },
# Videos
{ mime = "video/*", fg = "yellow" },
{ mime = "audio/*", fg = "yellow" },
# Archives
{ mime = "application/zip", fg = "magenta" },
{ mime = "application/gzip", fg = "magenta" },
{ mime = "application/x-tar", fg = "magenta" },
{ mime = "application/x-bzip", fg = "magenta" },
{ mime = "application/x-bzip2", fg = "magenta" },
{ mime = "application/x-7z-compressed", fg = "magenta" },
{ mime = "application/x-rar", fg = "magenta" },
# Archives
{ mime = "application/zip", fg = "magenta" },
{ mime = "application/gzip", fg = "magenta" },
{ mime = "application/x-tar", fg = "magenta" },
{ mime = "application/x-bzip", fg = "magenta" },
{ mime = "application/x-bzip2", fg = "magenta" },
{ mime = "application/x-7z-compressed", fg = "magenta" },
{ mime = "application/x-rar", fg = "magenta" },
# Fallback
# { name = "*", fg = "white" },
{ name = "*/", fg = "blue" }
# Fallback
# { name = "*", fg = "white" },
{ name = "*/", fg = "blue" }
]
[icons]

View file

@ -18,44 +18,44 @@ ueberzug_offset = [ 0, 0, 0, 0 ]
[opener]
edit = [
{ exec = '$EDITOR "$@"', block = true, for = "unix" },
{ exec = '$EDITOR "$@"', block = true, for = "unix" },
]
open = [
{ exec = 'xdg-open "$@"', desc = "Open", for = "linux" },
{ exec = 'xdg-open "$@"', desc = "Open", for = "linux" },
]
reveal = [
{ exec = '''exiftool "$1"; echo "Press enter to exit"; read''', block = true, desc = "Show EXIF", for = "unix" },
{ exec = '''exiftool "$1"; echo "Press enter to exit"; read''', block = true, desc = "Show EXIF", for = "unix" },
]
extract = [
{ exec = 'unar "$1"', desc = "Extract here", for = "unix" },
{ exec = 'unar "$1"', desc = "Extract here", for = "unix" },
]
play = [
{ exec = 'mpv "$@"', orphan = true, for = "unix" },
{ exec = '''mediainfo "$1"; echo "Press enter to exit"; read''', block = true, desc = "Show media info", for = "unix" },
{ exec = 'mpv "$@"', orphan = true, for = "unix" },
{ exec = '''mediainfo "$1"; echo "Press enter to exit"; read''', block = true, desc = "Show media info", for = "unix" },
]
[open]
rules = [
{ name = "*/", use = [ "edit", "open", "reveal" ] },
{ name = "*/", use = [ "edit", "open", "reveal" ] },
{ mime = "text/*", use = [ "edit", "reveal" ] },
{ mime = "image/*", use = [ "open", "reveal" ] },
{ mime = "video/*", use = [ "play", "reveal" ] },
{ mime = "audio/*", use = [ "play", "reveal" ] },
{ mime = "inode/x-empty", use = [ "edit", "reveal" ] },
{ mime = "text/*", use = [ "edit", "reveal" ] },
{ mime = "image/*", use = [ "open", "reveal" ] },
{ mime = "video/*", use = [ "play", "reveal" ] },
{ mime = "audio/*", use = [ "play", "reveal" ] },
{ mime = "inode/x-empty", use = [ "edit", "reveal" ] },
{ mime = "application/json", use = [ "edit", "reveal" ] },
{ mime = "*/javascript", use = [ "edit", "reveal" ] },
{ mime = "application/json", use = [ "edit", "reveal" ] },
{ mime = "*/javascript", use = [ "edit", "reveal" ] },
{ mime = "application/zip", use = [ "extract", "reveal" ] },
{ mime = "application/gzip", use = [ "extract", "reveal" ] },
{ mime = "application/x-tar", use = [ "extract", "reveal" ] },
{ mime = "application/x-bzip", use = [ "extract", "reveal" ] },
{ mime = "application/x-bzip2", use = [ "extract", "reveal" ] },
{ mime = "application/x-7z-compressed", use = [ "extract", "reveal" ] },
{ mime = "application/x-rar", use = [ "extract", "reveal" ] },
{ mime = "application/zip", use = [ "extract", "reveal" ] },
{ mime = "application/gzip", use = [ "extract", "reveal" ] },
{ mime = "application/x-tar", use = [ "extract", "reveal" ] },
{ mime = "application/x-bzip", use = [ "extract", "reveal" ] },
{ mime = "application/x-bzip2", use = [ "extract", "reveal" ] },
{ mime = "application/x-7z-compressed", use = [ "extract", "reveal" ] },
{ mime = "application/x-rar", use = [ "extract", "reveal" ] },
{ mime = "*", use = [ "open", "reveal" ] },
{ mime = "*", use = [ "open", "reveal" ] },
]
[tasks]

View file

@ -13,20 +13,20 @@
#set important shell variables
#set default editor and pager.
export EDITOR=nvim
export VISUAL=nvim
export PAGER=less
#default options for less
export LESS="-R"
export LESSHISTFILE="/dev/null"
#set the w3m homepage
export WWW_HOME="duckduckgo.com/lite/"
#set ssh-agent to play nice with systemd.
export SSH_AUTH_SOCK="$XDG_RUNTIME_DIR/ssh-agent.socket"
export TIMEFMT="%J %*U user %*S system %P cpu %*E total"
export PIPENV_VENV_IN_PROJECT=true
export POETRY_VIRTUALENVS_IN_PROJECT=true
#set default editor and pager.
export EDITOR=nvim
export VISUAL=nvim
export PAGER=less
#default options for less
export LESS="-R"
export LESSHISTFILE="/dev/null"
#set the w3m homepage
export WWW_HOME="duckduckgo.com/lite/"
#set ssh-agent to play nice with systemd.
export SSH_AUTH_SOCK="$XDG_RUNTIME_DIR/ssh-agent.socket"
export TIMEFMT="%J %*U user %*S system %P cpu %*E total"
export PIPENV_VENV_IN_PROJECT=true
export POETRY_VIRTUALENVS_IN_PROJECT=true
#test that these nonstandard paths exist before adding to PATH.
testPath="$HOME/.local/bin"
[ -d "$testPath" ] && export PATH="$PATH:$testPath"
@ -37,159 +37,159 @@
#prompt
setprompt() {
autoload -U promptinit
promptinit
autoload -U colors
colors
autoload -U promptinit
promptinit
autoload -U colors
colors
#stuff to show git things.
autoload -Uz vcs_info
#stuff to show git things.
autoload -Uz vcs_info
setopt prompt_subst
setopt prompt_subst
precmd_vcs() {vcs_info}
precmd_vcs() {vcs_info}
#when not in a repo, show full path to current directory. when in one, show path from base direcory of the repo.
zstyle ':vcs_info:*' nvcsformats '%~'
zstyle ':vcs_info:*' formats '%r/%S %F{green}[%b]%f'
zstyle ':vcs_info:*' actionformats '%r/%S %F{green}[%b] %F{red}<%a>%f'
#when not in a repo, show full path to current directory. when in one, show path from base direcory of the repo.
zstyle ':vcs_info:*' nvcsformats '%~'
zstyle ':vcs_info:*' formats '%r/%S %F{green}[%b]%f'
zstyle ':vcs_info:*' actionformats '%r/%S %F{green}[%b] %F{red}<%a>%f'
#the precmd function, called just before printing the prompt.
function precmd() {
precmd_vcs
}
#the precmd function, called just before printing the prompt.
function precmd() {
precmd_vcs
}
#Make the right prompt blank, just to be sure.
#Make the right prompt blank, just to be sure.
RPROMPT=''
#on the top line, show a whole bunch of info. botton line should be as minimal as possilbe (just a single char to input next to...)
PROMPT=$'%F{cyan}[%n@%m]%f%F{red}├────┤%f${vcs_info_msg_0_} %F{white}[%D %T]%f\n»'
#on the top line, show a whole bunch of info. botton line should be as minimal as possilbe (just a single char to input next to...)
PROMPT=$'%F{cyan}[%n@%m]%f%F{red}├────┤%f${vcs_info_msg_0_} %F{white}[%D %T]%f\n»'
}
#starship if its installed, otherwise the prompt we just defined.
command -v starship &> /dev/null && eval "$(starship init zsh)" || setprompt
command -v starship &> /dev/null && eval "$(starship init zsh)" || setprompt
#show dots while waiting for tab-completion
expand-or-complete-with-dots() {
# toggle line-wrapping off and back on again
[[ -n "$terminfo[rmam]" && -n "$terminfo[smam]" ]] && echoti rmam
print -Pn "%{%F{red}......%f%}"
[[ -n "$terminfo[rmam]" && -n "$terminfo[smam]" ]] && echoti smam
expand-or-complete-with-dots() {
# toggle line-wrapping off and back on again
[[ -n "$terminfo[rmam]" && -n "$terminfo[smam]" ]] && echoti rmam
print -Pn "%{%F{red}......%f%}"
[[ -n "$terminfo[rmam]" && -n "$terminfo[smam]" ]] && echoti smam
zle expand-or-complete
zle redisplay
}
zle -N expand-or-complete-with-dots
bindkey "^I" expand-or-complete-with-dots
zle expand-or-complete
zle redisplay
}
zle -N expand-or-complete-with-dots
bindkey "^I" expand-or-complete-with-dots
# editing stuff
# Enable the ZLE line editor, which is default behavior, but to be sure
setopt ZLE
#Enable vi mode for the ZLE. it should be set by default due to our EDITOR and VISUAL, but this is just to be safe.
bindkey -v
#allow backspacing beyond the point you entered insert mode:
bindkey -v '^?' backward-delete-char
bindkey "^W" backward-kill-word
# Enable the ZLE line editor, which is default behavior, but to be sure
setopt ZLE
#Enable vi mode for the ZLE. it should be set by default due to our EDITOR and VISUAL, but this is just to be safe.
bindkey -v
#allow backspacing beyond the point you entered insert mode:
bindkey -v '^?' backward-delete-char
bindkey "^W" backward-kill-word
#misc
# Sends cd commands without the need for 'cd'
setopt AUTO_CD
# Kill all child processes when we exit, dont leave them running
unsetopt NO_HUP
#Allows comments in interactive shell.
setopt INTERACTIVE_COMMENTS
# Ctrl+S and Ctrl+Q usually disable/enable tty input. This disables those inputs
unsetopt FLOW_CONTROL
mkdir -p ~/.cache/zsh
local zshCache=~/.cache/zsh
# Sends cd commands without the need for 'cd'
setopt AUTO_CD
# Kill all child processes when we exit, dont leave them running
unsetopt NO_HUP
#Allows comments in interactive shell.
setopt INTERACTIVE_COMMENTS
# Ctrl+S and Ctrl+Q usually disable/enable tty input. This disables those inputs
unsetopt FLOW_CONTROL
mkdir -p ~/.cache/zsh
local zshCache=~/.cache/zsh
#ZSH history
#make a history file outside our home directory
HISTFILE=$zshCache/history
#save a lot of history
SAVEHIST=1000
HISTSIZE=1000
#save more information in history
setopt EXTENDED_HISTORY
#share history among zsh sessions
setopt APPEND_HISTORY
setopt SHARE_HISTORY
#skip dupes when going through history
setopt HIST_FIND_NO_DUPS
#delete dupes first when histsize becomes full
setopt HIST_EXPIRE_DUPS_FIRST
#dont write dupes of the last command to histfile
setopt HIST_IGNORE_DUPS
#write history file as we type
setopt INC_APPEND_HISTORY
#remove extra whitespace from history
setopt HIST_REDUCE_BLANKS
#make a history file outside our home directory
HISTFILE=$zshCache/history
#save a lot of history
SAVEHIST=1000
HISTSIZE=1000
#save more information in history
setopt EXTENDED_HISTORY
#share history among zsh sessions
setopt APPEND_HISTORY
setopt SHARE_HISTORY
#skip dupes when going through history
setopt HIST_FIND_NO_DUPS
#delete dupes first when histsize becomes full
setopt HIST_EXPIRE_DUPS_FIRST
#dont write dupes of the last command to histfile
setopt HIST_IGNORE_DUPS
#write history file as we type
setopt INC_APPEND_HISTORY
#remove extra whitespace from history
setopt HIST_REDUCE_BLANKS
#autocomplete
autoload -Uz compinit
compinit
#have the menu highlight while we cycle through options
zstyle ':completion:*' menu select
#case insensitive completion
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}'
#allow completion from midword
setopt COMPLETE_IN_WORD
#move cursor to end of word after completing
setopt ALWAYS_TO_END
#complete aliases as well
setopt COMPLETE_ALIASES
#select first item when you press tab the first time.
setopt MENU_COMPLETE
autoload -Uz compinit
compinit
#have the menu highlight while we cycle through options
zstyle ':completion:*' menu select
#case insensitive completion
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}'
#allow completion from midword
setopt COMPLETE_IN_WORD
#move cursor to end of word after completing
setopt ALWAYS_TO_END
#complete aliases as well
setopt COMPLETE_ALIASES
#select first item when you press tab the first time.
setopt MENU_COMPLETE
#globbing
#case insensitive globbing
setopt NO_CASE_GLOB
#sort globs that expand to numbers by number rather than alphabeticly
setopt NUMERIC_GLOB_SORT
#allows for some neat globbing.
setopt EXTENDED_GLOB
#case insensitive globbing
setopt NO_CASE_GLOB
#sort globs that expand to numbers by number rather than alphabeticly
setopt NUMERIC_GLOB_SORT
#allows for some neat globbing.
setopt EXTENDED_GLOB
#aliases
alias vim="nvim"
alias vimdiff="nvim -d"
alias mutt="neomutt"
alias please='sudo $(fc -ln -1)'
alias la='ls -la'
alias ll='ls -l'
alias say='espeak -p 10 -s 150 -a 200 2> /dev/null'
alias tmux='tmux -u'
alias pdfmk='latexmk -lualatex -pvc'
# needs to have a number immediately after it.
alias slideshow='feh --full-screen --randomize --auto-zoom --recursive --slideshow-delay'
# converts all .doc and .docx files in the local directory to pdfs using libreoffice
alias doc2pdf='loffice --convert-to pdf --headless *.docx#'
#common options for sshfs
alias sshmnt='sshfs -o idmap=user,compression=no,reconnect,follow_symlinks,dir_cache=yes,ServerAliveInterval=15'
alias pyactivate='source ./.venv/bin/activate'
alias vim="nvim"
alias vimdiff="nvim -d"
alias mutt="neomutt"
alias please='sudo $(fc -ln -1)'
alias la='ls -la'
alias ll='ls -l'
alias say='espeak -p 10 -s 150 -a 200 2> /dev/null'
alias tmux='tmux -u'
alias pdfmk='latexmk -lualatex -pvc'
# needs to have a number immediately after it.
alias slideshow='feh --full-screen --randomize --auto-zoom --recursive --slideshow-delay'
# converts all .doc and .docx files in the local directory to pdfs using libreoffice
alias doc2pdf='loffice --convert-to pdf --headless *.docx#'
#common options for sshfs
alias sshmnt='sshfs -o idmap=user,compression=no,reconnect,follow_symlinks,dir_cache=yes,ServerAliveInterval=15'
alias pyactivate='source ./.venv/bin/activate'
#setup grep to be a bit more nice
local GREP_OPTIONS=""
# color grep results
GREP_OPTIONS+=" --color=auto"
# ignore VCS folders (if the necessary grep flags are available)
local VCS_FOLDERS="{.bzr,CVS,.git,.hg,.svn}"
GREP_OPTIONS+=" --exclude-dir=$VCS_FOLDERS"
GREP_OPTIONS+=" --exclude=$VCS_FOLDERS"
# export grep settings
alias grep="grep $GREP_OPTIONS"
local GREP_OPTIONS=""
# color grep results
GREP_OPTIONS+=" --color=auto"
# ignore VCS folders (if the necessary grep flags are available)
local VCS_FOLDERS="{.bzr,CVS,.git,.hg,.svn}"
GREP_OPTIONS+=" --exclude-dir=$VCS_FOLDERS"
GREP_OPTIONS+=" --exclude=$VCS_FOLDERS"
# export grep settings
alias grep="grep $GREP_OPTIONS"
#fzf stuff
#zsh key bindings (different distros put these in different places.)
testPath=$(find /usr/share -path '*fzf/*key-bindings.zsh' -print -quit 2> /dev/null)
[ -f "$testPath" ] && source $testPath
#zsh completions, if it exists.
testPath=$(find /usr/share -path '*fzf/*completion.zsh' -print -quit 2> /dev/null)
[ -f "$testPath" ] && source $testPath
#if it was installed using git, can just source the one file:
testPath="$HOME/.fzf.zsh"
[ -f "$testPath" ] && source $testPath
#zsh key bindings (different distros put these in different places.)
testPath=$(find /usr/share -path '*fzf/*key-bindings.zsh' -print -quit 2> /dev/null)
[ -f "$testPath" ] && source $testPath
#zsh completions, if it exists.
testPath=$(find /usr/share -path '*fzf/*completion.zsh' -print -quit 2> /dev/null)
[ -f "$testPath" ] && source $testPath
#if it was installed using git, can just source the one file:
testPath="$HOME/.fzf.zsh"
[ -f "$testPath" ] && source $testPath
#zoxide stuff
command -v zoxide &> /dev/null && eval "$(zoxide init zsh)"
command -v zoxide &> /dev/null && eval "$(zoxide init zsh)"
#check for existence of pyenv before setting it up.
if command -v pyenv &> /dev/null; then