Squashed commit of the following:
commit74cc8fa92e
Author: Daniel Flanagan <daniel@lytedev.io> Date: Fri Jan 24 12:45:49 2020 -0600 MIC SCRIPT commitdbd88dde4b
Author: Daniel Flanagan <daniel@lytedev.io> Date: Thu Jan 23 12:38:19 2020 -0600 Mic script, amd stuff, more fish fixes commitdadb7da642
Author: Daniel Flanagan <daniel@lytedev.io> Date: Thu Jan 23 09:51:03 2020 -0600 Remove more generated fish stuff, more fixes commitb09a25cc17
Author: Daniel Flanagan <daniel@lytedev.io> Date: Wed Jan 22 17:25:47 2020 -0600 More fixes to various things commit58f6626280
Author: Daniel Flanagan <daniel@lytedev.io> Date: Wed Jan 22 08:34:12 2020 -0600 Updates commit00e919f7f5
Author: Daniel Flanagan <daniel@lytedev.io> Date: Mon Jan 20 14:28:45 2020 -0600 Fix notes and add vim pager commit5100983350
Author: Daniel Flanagan <daniel@lytedev.io> Date: Mon Jan 20 14:01:06 2020 -0600 More fixes and cleanup commit85eab2155c
Author: Daniel Flanagan <daniel@lytedev.io> Date: Mon Jan 20 13:09:31 2020 -0600 More notes commitda496b7f0c
Author: Daniel Flanagan <daniel@lytedev.io> Date: Mon Jan 20 12:43:55 2020 -0600 Maybe actually fix colors? commit3c11353256
Author: Daniel Flanagan <daniel@lytedev.io> Date: Mon Jan 20 12:32:23 2020 -0600 Colors fixed? commitf2a5060e7d
Author: Daniel Flanagan <daniel@lytedev.io> Date: Mon Jan 20 11:40:26 2020 -0600 Things commitf44d0d5479
Author: Daniel Flanagan <daniel@lytedev.io> Date: Mon Jan 20 10:54:09 2020 -0600 Kitty colors commit5f0fa76a67
Author: Daniel Flanagan <daniel@lytedev.io> Date: Mon Jan 20 10:49:06 2020 -0600 More updates for fish migration commit5b05be9fe7
Author: Daniel Flanagan <daniel@lytedev.io> Date: Mon Jan 20 09:14:08 2020 -0600 Nah commitfe0f1d8e32
Merge:52fe38f
205c12a
Author: Daniel Flanagan <daniel@lytedev.io> Date: Mon Jan 20 09:13:09 2020 -0600 Merge branch 'dev' of ssh://git.lyte.dev:2222/lytedev/dotfiles into dev commit52fe38f42a
Author: Daniel Flanagan <daniel@lytedev.io> Date: Mon Jan 20 09:12:52 2020 -0600 More fish fixes commit205c12a051
Author: Daniel Flanagan <daniel@lytedev.io> Date: Sat Jan 18 23:15:13 2020 -0600 WIP commitb73c4b26a4
Author: Daniel Flanagan <daniel@lytedev.io> Date: Fri Jan 17 10:36:20 2020 -0600 Remove debug code, fix asdf references for fish commitd6ecaf88be
Merge:2e6b90b
46793bb
Author: Daniel Flanagan <daniel@lytedev.io> Date: Fri Jan 17 10:34:01 2020 -0600 Merge remote-tracking branch 'origin/lappy' into dev commit2e6b90bed3
Author: Daniel Flanagan <daniel@lytedev.io> Date: Fri Jan 17 10:26:00 2020 -0600 Pulsemixer > pavucontrol and some sway fixes commit46793bb735
Author: Daniel Flanagan <daniel@lyte.dev> Date: Fri Jan 17 03:02:53 2020 -0600 Whew commit26f32a0c6b
Author: Daniel Flanagan <daniel@lyte.dev> Date: Thu Jan 16 17:01:59 2020 -0600 WIP fish configuration commitfb0389eea4
Author: Daniel Flanagan <daniel@lyte.dev> Date: Thu Jan 16 13:30:35 2020 -0600 Fiiiish commit2f1af8411a
Author: Daniel Flanagan <daniel@lyte.dev> Date: Thu Jan 16 13:28:23 2020 -0600 Stuff commitba8ec1f524
Author: Daniel Flanagan <daniel@lyte.dev> Date: Thu Jan 9 19:02:31 2020 -0600 Fix some dock stuff, erlang with wx commitd80a823ce2
Merge:36d58e0
5195a85
Author: Daniel Flanagan <daniel@lytedev.io> Date: Wed Jan 8 13:32:56 2020 -0600 Merge remote-tracking branch 'origin/lappy' into wip-refactor commit36d58e037f
Author: Daniel Flanagan <daniel@lytedev.io> Date: Wed Jan 8 10:59:45 2020 -0600 Testing signed commits commit5195a855a6
Author: Daniel Flanagan <daniel@lyte.dev> Date: Tue Jan 7 19:38:43 2020 -0600 Bars commit1acb330746
Author: Daniel Flanagan <daniel@lyte.dev> Date: Tue Jan 7 11:36:12 2020 -0600 SWAAAAAY commitf547e5ec28
Merge:aa29acb
b1709d1
Author: Daniel Flanagan <daniel@lyte.dev> Date: Tue Jan 7 10:59:24 2020 -0600 Merge remote-tracking branch 'origin/wip-refactor' into lappy commitb1709d1e94
Author: Daniel Flanagan <daniel@lytedev.io> Date: Tue Jan 7 10:59:22 2020 -0600 Stuff commitaa29acb364
Merge:66cc873
2456dad
Author: Daniel Flanagan <daniel@lyte.dev> Date: Tue Jan 7 10:58:29 2020 -0600 Merge remote-tracking branch 'origin/wip-refactor' into lappy commit2456dad7de
Author: Daniel Flanagan <daniel@lytedev.io> Date: Mon Jan 6 11:15:30 2020 -0600 Zstd commit66cc8734a8
Author: Daniel Flanagan <daniel@lyte.dev> Date: Tue Dec 31 21:48:49 2019 -0600 Fix sudo setup and use fancy email for git commita05c02e1fb
Author: Daniel Flanagan <daniel@lytedev.io> Date: Tue Dec 31 17:03:22 2019 -0600 Fancy colors commit026220fe26
Author: Daniel Flanagan <daniel@lytedev.io> Date: Tue Dec 31 16:55:45 2019 -0600 SMTP tools commite2a854df65
Merge:0d0e131
825d91b
Author: Daniel Flanagan <daniel@lytedev.io> Date: Tue Dec 31 15:07:09 2019 -0600 Merge branch 'wip-refactor' into lappy commit0d0e131714
Author: Daniel Flanagan <daniel@lytedev.io> Date: Tue Dec 31 14:26:44 2019 -0600 Stuff commit825d91b462
Author: Daniel Flanagan <daniel@lytedev.io> Date: Tue Dec 31 10:15:01 2019 -0600 Utility updates commitae350894af
Author: Daniel Flanagan <daniel@lytedev.io> Date: Mon Dec 30 10:02:14 2019 -0600 Lul. commitea5debe38c
Author: Daniel Flanagan <daniel@lytedev.io> Date: Mon Dec 16 17:21:44 2019 -0600 WIP chat system commitc40fe94b70
Author: Daniel Flanagan <daniel@lytedev.io> Date: Mon Dec 16 09:57:21 2019 -0600 Add weechat config commit76e8a68c34
Author: Daniel Flanagan <daniel@lytedev.io> Date: Mon Dec 16 09:51:21 2019 -0600 Preparing for weechat stuf commit25aecdc139
Author: Daniel Flanagan <daniel@lytedev.io> Date: Fri Dec 13 11:32:15 2019 -0600 Goodies? commit8d1e86feb4
Author: Daniel Flanagan <daniel@lytedev.io> Date: Thu Dec 12 13:31:18 2019 -0600 Logging for pipelines? commitb81bdf6abd
Author: Daniel Flanagan <daniel@lytedev.io> Date: Thu Dec 12 13:17:20 2019 -0600 errors break things? commit6f7d80d761
Merge:7659442
bc5ce9e
Author: Daniel Flanagan <daniel@lytedev.io> Date: Thu Dec 12 13:04:52 2019 -0600 Merge branch 'master' of ssh://git.lyte.dev:2222/lytedev/dotfiles commit76594427ff
Author: Daniel Flanagan <daniel@lytedev.io> Date: Thu Dec 12 13:00:03 2019 -0600 Pipelines! commit972508e74d
Author: Daniel Flanagan <daniel@lytedev.io> Date: Thu Dec 12 11:02:24 2019 -0600 WIP pipeline commit898848669c
Author: Daniel Flanagan <daniel@lytedev.io> Date: Fri Dec 6 10:08:42 2019 -0600 Archive commit16895af798
Author: Daniel Flanagan <daniel@lytedev.io> Date: Thu Dec 5 16:09:52 2019 -0600 Helpful bins commit3a8eb5d475
Author: Daniel Flanagan <daniel@lytedev.io> Date: Mon Dec 2 09:31:28 2019 -0600 Move a lot of stuff around
This commit is contained in:
parent
bc5ce9e725
commit
2dda9880d5
17
.gitignore
vendored
17
.gitignore
vendored
|
@ -1,9 +1,18 @@
|
||||||
colors/gen/vendor
|
|
||||||
colors/gen/tmp
|
|
||||||
*.lock
|
*.lock
|
||||||
*.log
|
*.log
|
||||||
*.pid
|
*.pid
|
||||||
*.tmp
|
*.tmp
|
||||||
*.secret
|
*.secret
|
||||||
/.repositories
|
|
||||||
/.env/
|
# TODO: should be unnecessary once color generation is homegrown
|
||||||
|
/colors/gen/vendor
|
||||||
|
/colors/gen/tmp
|
||||||
|
|
||||||
|
# keep the pipelines but hide their results
|
||||||
|
/bin/pipelines/*/*/*
|
||||||
|
|
||||||
|
# a place to keep secrets per-env
|
||||||
|
/env/*/.hidden
|
||||||
|
|
||||||
|
# ... and a place to keep shared secrets
|
||||||
|
/env/.hidden
|
||||||
|
|
3
Makefile
3
Makefile
|
@ -1,7 +1,6 @@
|
||||||
MAKEFILE_PATH ?= $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
|
MAKEFILE_PATH ?= $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
|
||||||
ALERT_AGREEMENT_FILE ?= "$(MAKEFILE_PATH)/.agreed-to-erasing-files.lock"
|
|
||||||
|
|
||||||
default: install
|
default: install
|
||||||
|
|
||||||
install:
|
install:
|
||||||
./setup
|
cd ${MAKEFILE_PATH} && ./setup.bash
|
||||||
|
|
|
@ -1,21 +1,17 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
BORDER_WIDTH=5 # change in bspwmrc
|
export WINDOW_GAP=0
|
||||||
export WINDOW_GAP=25
|
NUM_DESKTOPS=10
|
||||||
DESKTOPS=(dev web gfx env play chat misc mon out util)
|
DESKTOPS=$(seq "$NUM_DESKTOPS")
|
||||||
|
|
||||||
BSPWM_MONITORS=$(bspc query -M | tac)
|
BSPWM_MONITORS=$(bspc query -M | tac)
|
||||||
MONITOR_COUNT=$(echo "${BSPWM_MONITORS}" | wc -w | awk '{ printf $1 }')
|
MONITOR_COUNT=$(<<< "$BSPWM_MONITORS" wc -w | awk '{ printf $1 }')
|
||||||
NUM_DESKTOPS=${#DESKTOPS[@]}
|
|
||||||
PER_MONITOR=$((NUM_DESKTOPS / MONITOR_COUNT))
|
PER_MONITOR=$((NUM_DESKTOPS / MONITOR_COUNT))
|
||||||
REVERSE_DESKTOP_ORDERING=0
|
REVERSE_DESKTOP_ORDERING=${REVERSE_DESKTOP_ORDERING:-0}
|
||||||
|
|
||||||
# allow a per-device config to override options
|
. maybe_source_env_file bspwm
|
||||||
if [ -f "$EDFP/bspwm" ]; then
|
|
||||||
source "$EDFP/bspwm"
|
|
||||||
fi
|
|
||||||
|
|
||||||
bspc config normal_border_color "$(xrdb -query | sed -ne 's/.*background:\s*//p')"
|
bspc config normal_border_color "$(xrdb -query | sed -ne 's/.*background:\s*//p')"
|
||||||
bspc config focused_border_color "$(xrdb -query | sed -ne 's/.*color0\?4:\s*//p')"
|
bspc config focused_border_color "$(xrdb -query | sed -ne 's/.*color0\?4:\s*//p')"
|
||||||
bspc config active_border_color "$(xrdb -query | sed -ne 's/.*color0\?4:\s*//p')"
|
bspc config active_border_color "$(xrdb -query | sed -ne 's/.*color0\?4:\s*//p')"
|
||||||
bspc config presel_feedback_color "$(xrdb -query | sed -ne 's/.*color0\?4:\s*//p')"
|
bspc config presel_feedback_color "$(xrdb -query | sed -ne 's/.*color0\?4:\s*//p')"
|
||||||
|
@ -26,34 +22,29 @@ bspc config gapless_monocle true
|
||||||
bspc config pointer_modifier "mod4"
|
bspc config pointer_modifier "mod4"
|
||||||
bspc config remove_unplugged_monitors true
|
bspc config remove_unplugged_monitors true
|
||||||
bspc config remove_disabled_monitors true
|
bspc config remove_disabled_monitors true
|
||||||
|
bspc config window_gap "$WINDOW_GAP"
|
||||||
bspc config window_gap "$WINDOW_GAP"
|
|
||||||
|
|
||||||
bspc rule -a "*" split_dir=right
|
bspc rule -a "*" split_dir=right
|
||||||
|
|
||||||
i=1
|
i=1
|
||||||
for mon in ${BSPWM_MONITORS}; do
|
for mon in $BSPWM_MONITORS; do
|
||||||
max=$((i + PER_MONITOR - 1))
|
max=$((i + PER_MONITOR - 1))
|
||||||
screens=
|
screens=
|
||||||
for j in $(seq $i $max); do
|
for j in $(seq $i $max); do
|
||||||
ind=${DESKTOPS[$((j - 1))]}
|
screens="${screens}${j} "
|
||||||
screens="${screens}${ind} "
|
|
||||||
done
|
done
|
||||||
bspc monitor "$mon" -d $screens
|
bspc monitor "$mon" -d $screens
|
||||||
i=$((max + 1))
|
i=$((max + 1))
|
||||||
done
|
done
|
||||||
|
|
||||||
if [[ $REVERSE_DESKTOP_ORDERING -eq 1 ]]; then
|
if [ $REVERSE_DESKTOP_ORDERING -eq 1 ]; then
|
||||||
prev_mon=
|
prev_mon=
|
||||||
for mon in ${BSPWM_MONITORS}; do
|
for mon in ${BSPWM_MONITORS}; do
|
||||||
if [[ ! -z $prev_mon ]]; then
|
if [ ! -z $prev_mon ]; then
|
||||||
bspc monitor "$mon" --swap "$prev_mon"
|
bspc monitor "$mon" --swap "$prev_mon"
|
||||||
fi
|
fi
|
||||||
prev_mon="$mon"
|
prev_mon="$mon"
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# allow a per-device config to override options
|
. maybe_source_env_file bspwm-after
|
||||||
if [ -f "$EDFP/bspwm-after" ]; then
|
|
||||||
source "$EDFP/bspwm-after"
|
|
||||||
fi
|
|
26
apps/de/bspwm/rc
Executable file
26
apps/de/bspwm/rc
Executable file
|
@ -0,0 +1,26 @@
|
||||||
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
|
NO_COMPTON=1
|
||||||
|
START_BAR=1
|
||||||
|
BAR_COMMAND="startbar"
|
||||||
|
|
||||||
|
BSPWM_STATE_FILE="$HOME/.bspwm_state"
|
||||||
|
|
||||||
|
if [ -e "$BSPWM_STATE" ] ; then
|
||||||
|
bspc wm -l "$BSPWM_STATE"
|
||||||
|
rm "$BSPWM_STATE"
|
||||||
|
fi
|
||||||
|
|
||||||
|
export BORDER_WIDTH=5
|
||||||
|
. "$DOTFILES_PATH/apps/de/bspwm/config"
|
||||||
|
|
||||||
|
[ -f "$DOTFILES_PATH/apps/de/x/loadresources" ] && "$DOTFILES_PATH/apps/de/x/loadresources"
|
||||||
|
[ -f "$HOME/.fehbg" ] && "$HOME/.fehbg" &
|
||||||
|
[ "$NO_COMPTON" -ne 1 ] && has_command compton && compton &
|
||||||
|
[ "$START_BAR" -eq 1 ] && has_command "${BAR_COMMAND}" && "${BAR_COMMAND}" &
|
||||||
|
has_command urxvtd && urxvtd &
|
||||||
|
has_command dunst && dunst &
|
||||||
|
has_command sxhkd && sxhkd -m -1 &
|
||||||
|
has_command unclutter && unclutter &
|
||||||
|
|
||||||
|
bspc wm -o
|
3
apps/de/bspwm/wmstart
Executable file
3
apps/de/bspwm/wmstart
Executable file
|
@ -0,0 +1,3 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
bspwm
|
|
@ -1,3 +1,3 @@
|
||||||
gtk-icon-theme-name = "elementary"
|
gtk-icon-theme-name = "elementary"
|
||||||
gtk-theme-name = "Arc-Dark"
|
gtk-theme-name = "Arc-Dark"
|
||||||
gtk-font-name = "Iosevka 9"
|
gtk-font-name = "Iosevka Type 10"
|
|
@ -1,5 +1,5 @@
|
||||||
[Settings]
|
[Settings]
|
||||||
gtk-icon-theme-name = elementary
|
gtk-icon-theme-name = elementary
|
||||||
gtk-theme-name = Arc-Dark
|
gtk-theme-name = Arc-Dark
|
||||||
gtk-font-name = Iosevka 9
|
gtk-font-name = Iosevka Type 10
|
||||||
gtk-application-prefer-dark-theme = true
|
gtk-application-prefer-dark-theme = true
|
|
@ -5,4 +5,5 @@ Section "InputClass"
|
||||||
MatchIsTouchpad "on"
|
MatchIsTouchpad "on"
|
||||||
Option "Tapping" "on"
|
Option "Tapping" "on"
|
||||||
Option "NaturalScrolling" "true"
|
Option "NaturalScrolling" "true"
|
||||||
|
Option "DisableWhileTyping" "false"
|
||||||
EndSection
|
EndSection
|
4
apps/de/mako/config
Normal file
4
apps/de/mako/config
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
max-visible=5
|
||||||
|
default-timeout=30000
|
||||||
|
background-color=#111111
|
||||||
|
border-color=#666666
|
|
@ -102,16 +102,16 @@ format-mounted-prefix-foreground = ${colors.icon}
|
||||||
; ########################### ;
|
; ########################### ;
|
||||||
|
|
||||||
[module/bspwm]
|
[module/bspwm]
|
||||||
ws-icon-0 = dev;
|
ws-icon-0 = 1;
|
||||||
ws-icon-1 = web;
|
ws-icon-1 = 2;
|
||||||
ws-icon-2 = gfx;
|
ws-icon-2 = 3;
|
||||||
ws-icon-3 = env;
|
ws-icon-3 = 4;
|
||||||
ws-icon-4 = play;
|
ws-icon-4 = 5;
|
||||||
ws-icon-5 = chat;
|
ws-icon-5 = 6;
|
||||||
ws-icon-6 = out;
|
ws-icon-6 = 7;
|
||||||
ws-icon-7 = mon;
|
ws-icon-7 = 8;
|
||||||
ws-icon-8 = misc;
|
ws-icon-8 = 9;
|
||||||
ws-icon-9 = util;
|
ws-icon-9 = 10;
|
||||||
ws-icon-default = ♟
|
ws-icon-default = ♟
|
||||||
|
|
||||||
; misc icon:
|
; misc icon:
|
||||||
|
@ -387,7 +387,7 @@ margin-bottom = ${env:WINDOW_GAP:0}
|
||||||
|
|
||||||
[module/microphone]
|
[module/microphone]
|
||||||
type = custom/script
|
type = custom/script
|
||||||
exec = $DOTFILES_PATH/de/bar/mic.bash
|
exec = $DOTFILES_PATH/apps/de/polybar/mic.sh
|
||||||
tail = true
|
tail = true
|
||||||
format = <label>
|
format = <label>
|
||||||
label-foreground = ${colors.icon}
|
label-foreground = ${colors.icon}
|
|
@ -1,6 +1,6 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
pidfile="/var/run/user/$UID/polybar-mic-script.pid"
|
pidfile="/var/run/user/$(id -u)/polybar-mic-script.sh.pid"
|
||||||
|
|
||||||
if [ -e "$pidfile" ]; then
|
if [ -e "$pidfile" ]; then
|
||||||
kill "$(cat "${pidfile}")" > /dev/null 2>&1
|
kill "$(cat "${pidfile}")" > /dev/null 2>&1
|
||||||
|
@ -13,9 +13,11 @@ cleanup() {
|
||||||
|
|
||||||
print_status() {
|
print_status() {
|
||||||
if amixer get Capture | grep -q '\[off\]'; then
|
if amixer get Capture | grep -q '\[off\]'; then
|
||||||
echo ""
|
# red means recording
|
||||||
|
echo "%{F$(xrdb -query | grep -Po 'color4:.*#\K\w[0-9a-f]+')}"
|
||||||
else
|
else
|
||||||
echo " "
|
# blue means nobody can hear you scream
|
||||||
|
echo "%{F$(xrdb -query | grep -Po 'color1:.*#\K\w[0-9a-f]+')}"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
export BAR_MONITOR="$(polybar --list-monitors | tail -n 1 | sed -n 's/^\s*\(.*\):.*$/\1/p')"
|
export BAR_MONITOR="$(polybar --list-monitors | tail -n 1 | sed -n 's/^\s*\(.*\):.*$/\1/p')"
|
||||||
# export BAR_MONITOR="$(polybar --list-monitors | tail -n 2 | head -n 1 | sed -n 's/^\s*\(.*\):.*$/\1/p')"
|
# export BAR_MONITOR="$(polybar --list-monitors | tail -n 2 | head -n 1 | sed -n 's/^\s*\(.*\):.*$/\1/p')"
|
||||||
export BAR_HEIGHT=40
|
export BAR_HEIGHT=40
|
||||||
export BAR_ON_TOP=0
|
export BAR_ON_TOP=0
|
||||||
export BAR_SIDE_MARGIN=200
|
export BAR_SIDE_MARGIN=0
|
||||||
|
|
||||||
export BAR_FONT="${BAR_FONT:-$(xrdb -query | sed -ne 's/.*font:\s*xft:\([^:]*\)\:.*$/\1/p' | head -n 1)}"
|
export BAR_FONT="${BAR_FONT:-$(xrdb -query | sed -ne 's/.*font:\s*xft:\([^:]*\)\:.*$/\1/p' | head -n 1)}"
|
||||||
export BAR_ICON_FONT="${BAR_ICON_FONT:-"Font Awesome 5 Free"}"
|
export BAR_ICON_FONT="${BAR_ICON_FONT:-"Font Awesome 5 Free"}"
|
||||||
export BAR_FONT_SIZE="${BAR_FONT_SIZE:-$(xrdb -query | sed -ne 's/.*font:\s*xft:[^-,]*\=\([0-9]*\).*$/\1/p' | head -n 1)}"
|
export BAR_FONT_SIZE="${BAR_FONT_SIZE:-$(xrdb -query | sed -ne 's/.*font:\s*xft:[^-,]*\=\([0-9]*\).*$/\1/p' | head -n 1)}"
|
||||||
export BAR_ICON_FONT_SIZE="${BAR_ICON_FONT_SIZE:-$((BAR_FONT_SIZE))}"
|
export BAR_ICON_FONT_SIZE="${BAR_ICON_FONT_SIZE:-$((BAR_FONT_SIZE))}"
|
||||||
|
@ -21,11 +21,7 @@ export BAR_BOTTOM="false"
|
||||||
export BAR_VERTICAL_MARGIN=0
|
export BAR_VERTICAL_MARGIN=0
|
||||||
export POS_Y=0
|
export POS_Y=0
|
||||||
|
|
||||||
# allow a per-device config to override options
|
. maybe_source_env_file polybar
|
||||||
echo "$EDFP"
|
|
||||||
if [ -f "$EDFP/bar" ]; then
|
|
||||||
source "$EDFP/bar"
|
|
||||||
fi
|
|
||||||
|
|
||||||
export MONITOR_WIDTH=$(xrandr | grep "^$BAR_MONITOR " | grep -Po ' \d+' | head -n 1)
|
export MONITOR_WIDTH=$(xrandr | grep "^$BAR_MONITOR " | grep -Po ' \d+' | head -n 1)
|
||||||
|
|
||||||
|
@ -45,12 +41,12 @@ fi
|
||||||
|
|
||||||
if [ "$BAR_ON_TOP" -eq 1 ]; then
|
if [ "$BAR_ON_TOP" -eq 1 ]; then
|
||||||
export BAR_BOTTOM="false"
|
export BAR_BOTTOM="false"
|
||||||
export POS_Y=$GAP
|
export POS_Y="$GAP"
|
||||||
bspc config -m "${BAR_MONITOR}" top_padding "$EHEIGHT"
|
bspc config -m "${BAR_MONITOR}" top_padding "$EHEIGHT"
|
||||||
bspc config -m "${BAR_MONITOR}" bottom_padding "0"
|
bspc config -m "${BAR_MONITOR}" bottom_padding "0"
|
||||||
else
|
else
|
||||||
export BAR_BOTTOM="true"
|
export BAR_BOTTOM="true"
|
||||||
export POS_Y=$GAP
|
export POS_Y="$GAP"
|
||||||
bspc config -m "${BAR_MONITOR}" top_padding "0"
|
bspc config -m "${BAR_MONITOR}" top_padding "0"
|
||||||
bspc config -m "${BAR_MONITOR}" bottom_padding "$EHEIGHT"
|
bspc config -m "${BAR_MONITOR}" bottom_padding "$EHEIGHT"
|
||||||
fi
|
fi
|
131
apps/de/sway/config
Normal file
131
apps/de/sway/config
Normal file
|
@ -0,0 +1,131 @@
|
||||||
|
set $mod Mod4
|
||||||
|
|
||||||
|
set $left h
|
||||||
|
set $down j
|
||||||
|
set $up k
|
||||||
|
set $right l
|
||||||
|
|
||||||
|
set $term kitty
|
||||||
|
# TODO: launcher for wayland
|
||||||
|
# set $menu app-launcher
|
||||||
|
set $menu dmenu_path | dmenu | xargs swaymsg exec --
|
||||||
|
|
||||||
|
output * bg $HOME/.wallpaper fill
|
||||||
|
|
||||||
|
# TODO: configured displays?
|
||||||
|
output eDP-1 res 3200x1800 pos 0 0 scale 2
|
||||||
|
# output DP-3 res 3440x1440 pos 1600 0
|
||||||
|
|
||||||
|
### Input configuration
|
||||||
|
#
|
||||||
|
# Example configuration:
|
||||||
|
#
|
||||||
|
#input "2:14:SynPS/2_Synaptics_TouchPad" {
|
||||||
|
# dwt enabled
|
||||||
|
# tap enabled
|
||||||
|
# natural_scroll enabled
|
||||||
|
# middle_emulation enabled
|
||||||
|
#}
|
||||||
|
#
|
||||||
|
# You can get the names of your inputs by running: swaymsg -t get_inputs
|
||||||
|
# Read `man 5 sway-input` for more information about this section.
|
||||||
|
|
||||||
|
bindsym $mod+Return exec $term
|
||||||
|
bindsym $mod+t exec $term
|
||||||
|
bindsym $mod+c kill
|
||||||
|
bindsym $mod+Space exec $menu
|
||||||
|
bindsym $mod+Shift+r reload
|
||||||
|
bindsym $mod+Control+Escape exit
|
||||||
|
bindsym $mod+Shift+e exit
|
||||||
|
|
||||||
|
bindsym $mod+$left focus left
|
||||||
|
bindsym $mod+$down focus down
|
||||||
|
bindsym $mod+$up focus up
|
||||||
|
bindsym $mod+$right focus right
|
||||||
|
|
||||||
|
# TODO: this should nudge if floating?
|
||||||
|
bindsym $mod+Left focus left
|
||||||
|
bindsym $mod+Down focus down
|
||||||
|
bindsym $mod+Up focus up
|
||||||
|
bindsym $mod+Right focus right
|
||||||
|
|
||||||
|
bindsym $mod+Shift+$left move left
|
||||||
|
bindsym $mod+Shift+$down move down
|
||||||
|
bindsym $mod+Shift+$up move up
|
||||||
|
bindsym $mod+Shift+$right move right
|
||||||
|
|
||||||
|
bindsym $mod+Shift+Left move left
|
||||||
|
bindsym $mod+Shift+Down move down
|
||||||
|
bindsym $mod+Shift+Up move up
|
||||||
|
bindsym $mod+Shift+Right move right
|
||||||
|
|
||||||
|
floating_modifier $mod normal
|
||||||
|
|
||||||
|
bindsym $mod+1 workspace 1
|
||||||
|
bindsym $mod+2 workspace 2
|
||||||
|
bindsym $mod+3 workspace 3
|
||||||
|
bindsym $mod+4 workspace 4
|
||||||
|
bindsym $mod+5 workspace 5
|
||||||
|
bindsym $mod+6 workspace 6
|
||||||
|
bindsym $mod+7 workspace 7
|
||||||
|
bindsym $mod+8 workspace 8
|
||||||
|
bindsym $mod+9 workspace 9
|
||||||
|
bindsym $mod+0 workspace 10
|
||||||
|
|
||||||
|
bindsym $mod+Shift+1 move container to workspace 1
|
||||||
|
bindsym $mod+Shift+2 move container to workspace 2
|
||||||
|
bindsym $mod+Shift+3 move container to workspace 3
|
||||||
|
bindsym $mod+Shift+4 move container to workspace 4
|
||||||
|
bindsym $mod+Shift+5 move container to workspace 5
|
||||||
|
bindsym $mod+Shift+6 move container to workspace 6
|
||||||
|
bindsym $mod+Shift+7 move container to workspace 7
|
||||||
|
bindsym $mod+Shift+8 move container to workspace 8
|
||||||
|
bindsym $mod+Shift+9 move container to workspace 9
|
||||||
|
bindsym $mod+Shift+0 move container to workspace 10
|
||||||
|
|
||||||
|
bindsym $mod+b splith
|
||||||
|
bindsym $mod+v splitv
|
||||||
|
|
||||||
|
bindsym $mod+e layout toggle split
|
||||||
|
|
||||||
|
bindsym $mod+Shift+f fullscreen
|
||||||
|
bindsym $mod+f floating toggle
|
||||||
|
bindsym $mod+Alt+f focus mode_toggle
|
||||||
|
bindsym $mod+p focus parent
|
||||||
|
|
||||||
|
bindsym $mod+Shift+minus move scratchpad
|
||||||
|
bindsym $mod+minus scratchpad show
|
||||||
|
|
||||||
|
mode "resize" {
|
||||||
|
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
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
|
bindsym Return mode "default"
|
||||||
|
bindsym Escape mode "default"
|
||||||
|
}
|
||||||
|
|
||||||
|
default_border none
|
||||||
|
|
||||||
|
# bindsym $mod+r mode "resize"
|
||||||
|
|
||||||
|
# man 5 sway-bar
|
||||||
|
bar {
|
||||||
|
swaybar_command waybar
|
||||||
|
}
|
||||||
|
|
||||||
|
input * {
|
||||||
|
repeat_delay 200
|
||||||
|
repeat_rate 60
|
||||||
|
}
|
||||||
|
|
||||||
|
focus_follows_mouse no
|
||||||
|
|
||||||
|
# include /etc/sway/config.d/*
|
||||||
|
include $ENV_PATH/sway/config.d/*
|
|
@ -1,7 +1,7 @@
|
||||||
#!/usr/bin/env sh
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
killall -9 urxvtd
|
# killall -9 urxvtd
|
||||||
urxvtd &
|
# urxvtd &
|
||||||
|
|
||||||
# key repeat
|
# key repeat
|
||||||
export WLC_REPEAT_DELAY=200
|
export WLC_REPEAT_DELAY=200
|
||||||
|
@ -14,5 +14,12 @@ export XKB_DEFAULT_OPTIONS=caps:escape
|
||||||
export QT_QPA_PLATFORM=wayland-egl
|
export QT_QPA_PLATFORM=wayland-egl
|
||||||
export CLUTTER_BACKEND=wayland
|
export CLUTTER_BACKEND=wayland
|
||||||
export SDL_VIDEODRIVER=wayland
|
export SDL_VIDEODRIVER=wayland
|
||||||
|
export MOZ_ENABLE_WAYLAND=1
|
||||||
|
|
||||||
|
# configuration flag for some of my dotfiles scripts
|
||||||
|
export IS_WAYLAND=1
|
||||||
|
|
||||||
|
mako &
|
||||||
|
killall -9 dunst &> /dev/null
|
||||||
|
|
||||||
sway
|
sway
|
|
@ -5,7 +5,7 @@ set $down j
|
||||||
set $up k
|
set $up k
|
||||||
set $right l
|
set $right l
|
||||||
|
|
||||||
set $term termite
|
set $term kitty
|
||||||
set $menu app-launcher
|
set $menu app-launcher
|
||||||
|
|
||||||
output * bg /home/daniel/usr/.wallpaper fill
|
output * bg /home/daniel/usr/.wallpaper fill
|
|
@ -67,7 +67,7 @@ super + {Left,Down,Up,Right}
|
||||||
|
|
||||||
# focus/move node to the selected desktop
|
# focus/move node to the selected desktop
|
||||||
super + {_,shift + }{1-9,0}
|
super + {_,shift + }{1-9,0}
|
||||||
bspc {desktop -f,node -d} ^{1-9,10}
|
bspc {desktop -f,node -d} {1-9,10}
|
||||||
|
|
||||||
# # focus clicked node
|
# # focus clicked node
|
||||||
~button1
|
~button1
|
||||||
|
@ -152,7 +152,7 @@ super + ctrl + b
|
||||||
|
|
||||||
# spawn a transparent node
|
# spawn a transparent node
|
||||||
super + alt + t
|
super + alt + t
|
||||||
urxvtc && compton-trans -c -o 0
|
"$TERMINAL" && compton-trans -c -o 0
|
||||||
|
|
||||||
# make current node transparent
|
# make current node transparent
|
||||||
super + t
|
super + t
|
||||||
|
@ -168,7 +168,7 @@ super + shift + t
|
||||||
|
|
||||||
# spawn a terminal
|
# spawn a terminal
|
||||||
super + Return
|
super + Return
|
||||||
urxvtc
|
"$TERMINAL"
|
||||||
|
|
||||||
# spawn a rock-solid and reliable terminal for when I break things
|
# spawn a rock-solid and reliable terminal for when I break things
|
||||||
super + alt + Return
|
super + alt + Return
|
||||||
|
@ -176,7 +176,7 @@ super + alt + Return
|
||||||
|
|
||||||
# spawn a floating terminal
|
# spawn a floating terminal
|
||||||
super + shift + Return
|
super + shift + Return
|
||||||
bspc rule -a '*' -o state=floating && "urxvtc"
|
bspc rule -a '*' -o state=floating && "$TERMINAL"
|
||||||
|
|
||||||
# spawn the app launcher
|
# spawn the app launcher
|
||||||
super + space
|
super + space
|
||||||
|
@ -228,7 +228,10 @@ XF86AudioPrev
|
||||||
|
|
||||||
# open rofi as a window switcher
|
# open rofi as a window switcher
|
||||||
super + w
|
super + w
|
||||||
"$DOTFILES_PATH/scripts/bin/app-launcher" -modi window,run -show window
|
"app-launcher" -modi window,run -show window
|
||||||
|
|
||||||
|
super + shift + v
|
||||||
|
sh -c 'kill -USR1 $(cat "/var/run/user/$UID/polybar-mic-script.sh.pid")'
|
||||||
|
|
||||||
# close the current application
|
# close the current application
|
||||||
super + c
|
super + c
|
||||||
|
@ -241,25 +244,11 @@ super + shift + c
|
||||||
# kill the wm, if alt is held, it will reload instead of truly quitting...
|
# kill the wm, if alt is held, it will reload instead of truly quitting...
|
||||||
# I think?
|
# I think?
|
||||||
super + ctrl + {alt +,_} Escape
|
super + ctrl + {alt +,_} Escape
|
||||||
{bspc wm -d > "$BSPWM_STATE_FILE" && bspc quit, \
|
sh -c '{bspc wm -d > "$BSPWM_STATE_FILE" && bspc quit, bspc quit 1}'
|
||||||
bspc quit 1}
|
|
||||||
|
|
||||||
Print
|
|
||||||
scrot "$NICE_HOME/img/scrots/%Y-%m-%d_%H-%M-%S_\$wx\$h.png"
|
|
||||||
|
|
||||||
# make sxhkd reload its configuration files:
|
# make sxhkd reload its configuration files:
|
||||||
super + Escape
|
super + Escape
|
||||||
pkill -USR1 -x sxhkd
|
pkill -USR1 -x sxhkd
|
||||||
|
|
||||||
|
|
||||||
super + d
|
|
||||||
xdotool key super+4 && sleep 0.1 && xdotool key shift+4 && xdotool key shift+4 && xdotool key shift+4 && sleep 0.2 && xdotool key super+1 && xdotool key super+3
|
|
||||||
|
|
||||||
super + ctrl + c
|
super + ctrl + c
|
||||||
bspc rule -a '*' -o state=floating && urxvtc --geometry 64x9 -e sh -c "cal -n 3 && bash"
|
bspc rule -a '*' -o state=floating && urxvt --geometry 64x9 -e sh -c "cal -n 3 && bash"
|
||||||
|
|
||||||
super + shift + v
|
|
||||||
kill -USR1 $(cat "/var/run/user/$UID/polybar-mic-script.pid")
|
|
||||||
|
|
||||||
super + v
|
|
||||||
tmux new-window 'sh -ci tmuxswitcher'
|
|
158
apps/de/waybar/config
Normal file
158
apps/de/waybar/config
Normal file
|
@ -0,0 +1,158 @@
|
||||||
|
{
|
||||||
|
"layer": "top", // Waybar at top layer
|
||||||
|
"position": "bottom", // Waybar position (top|bottom|left|right)
|
||||||
|
"height": 32, // Waybar height (to be removed for auto height)
|
||||||
|
// "width": 1280, // Waybar width
|
||||||
|
// Choose the order of the modules
|
||||||
|
"modules-left": ["sway/workspaces", "sway/mode", "custom/media"],
|
||||||
|
"modules-center": ["sway/window"],
|
||||||
|
"modules-right": [
|
||||||
|
// "mpd",
|
||||||
|
// "idle_inhibitor",
|
||||||
|
"pulseaudio",
|
||||||
|
"network",
|
||||||
|
"cpu",
|
||||||
|
"memory",
|
||||||
|
"temperature",
|
||||||
|
"backlight",
|
||||||
|
"battery",
|
||||||
|
// "battery#bat2",
|
||||||
|
"clock",
|
||||||
|
"tray"
|
||||||
|
],
|
||||||
|
"sway/workspaces": {
|
||||||
|
"disable-scroll": false,
|
||||||
|
"all-outputs": true,
|
||||||
|
"format": "{name}: {icon}",
|
||||||
|
"format-icons": {
|
||||||
|
"1": "",
|
||||||
|
"2": "龜",
|
||||||
|
"3": "",
|
||||||
|
"4": "",
|
||||||
|
"5": "",
|
||||||
|
"urgent": "",
|
||||||
|
"focused": "",
|
||||||
|
"default": ""
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"sway/mode": {
|
||||||
|
"format": "<span style=\"italic\">{}</span>"
|
||||||
|
},
|
||||||
|
"mpd": {
|
||||||
|
"format": "{stateIcon} {consumeIcon}{randomIcon}{repeatIcon}{singleIcon}{artist} - {album} - {title} ({elapsedTime:%M:%S}/{totalTime:%M:%S}) ",
|
||||||
|
"format-disconnected": "Disconnected ",
|
||||||
|
"format-stopped": "{consumeIcon}{randomIcon}{repeatIcon}{singleIcon}Stopped ",
|
||||||
|
"unknown-tag": "N/A",
|
||||||
|
"interval": 2,
|
||||||
|
"consume-icons": {
|
||||||
|
"on": " "
|
||||||
|
},
|
||||||
|
"random-icons": {
|
||||||
|
"off": "<span color=\"#f53c3c\"></span> ",
|
||||||
|
"on": " "
|
||||||
|
},
|
||||||
|
"repeat-icons": {
|
||||||
|
"on": " "
|
||||||
|
},
|
||||||
|
"single-icons": {
|
||||||
|
"on": "1 "
|
||||||
|
},
|
||||||
|
"state-icons": {
|
||||||
|
"paused": "",
|
||||||
|
"playing": ""
|
||||||
|
},
|
||||||
|
"tooltip-format": "MPD (connected)",
|
||||||
|
"tooltip-format-disconnected": "MPD (disconnected)"
|
||||||
|
},
|
||||||
|
"idle_inhibitor": {
|
||||||
|
"format": "{icon}",
|
||||||
|
"format-icons": {
|
||||||
|
"activated": "",
|
||||||
|
"deactivated": ""
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tray": {
|
||||||
|
// "icon-size": 21,
|
||||||
|
"spacing": 10
|
||||||
|
},
|
||||||
|
"clock": {
|
||||||
|
"interval": 1,
|
||||||
|
"format": "{:%a %b %d %H:%M:%S}"
|
||||||
|
},
|
||||||
|
"cpu": {
|
||||||
|
"format": "{usage}% ",
|
||||||
|
"tooltip": false
|
||||||
|
},
|
||||||
|
"memory": {
|
||||||
|
"format": "{}% "
|
||||||
|
},
|
||||||
|
"temperature": {
|
||||||
|
// "thermal-zone": 2,
|
||||||
|
// "hwmon-path": "/sys/class/hwmon/hwmon2/temp1_input",
|
||||||
|
"critical-threshold": 80,
|
||||||
|
// "format-critical": "{temperatureC}°C {icon}",
|
||||||
|
"format": "{temperatureC}°C {icon}",
|
||||||
|
"format-icons": ["", "", ""]
|
||||||
|
},
|
||||||
|
"backlight": {
|
||||||
|
// "device": "acpi_video1",
|
||||||
|
"format": "{percent}% {icon}",
|
||||||
|
"format-icons": ["", ""]
|
||||||
|
},
|
||||||
|
"battery": {
|
||||||
|
"states": {
|
||||||
|
// "good": 95,
|
||||||
|
"warning": 30,
|
||||||
|
"critical": 15
|
||||||
|
},
|
||||||
|
"format": "{capacity}% {icon}",
|
||||||
|
"format-charging": "{capacity}% ",
|
||||||
|
"format-plugged": "{capacity}% ",
|
||||||
|
"format-alt": "{time} {icon}",
|
||||||
|
// "format-good": "", // An empty format will hide the module
|
||||||
|
// "format-full": "",
|
||||||
|
"format-icons": ["", "", "", "", ""]
|
||||||
|
},
|
||||||
|
"battery#bat2": {
|
||||||
|
"bat": "BAT2"
|
||||||
|
},
|
||||||
|
"network": {
|
||||||
|
// "interface": "wlp2*", // (Optional) To force the use of this interface
|
||||||
|
"format-wifi": "{essid} ({signalStrength}%) ",
|
||||||
|
"format-ethernet": "{ifname}: {ipaddr}/{cidr} ",
|
||||||
|
"format-linked": "{ifname} (No IP) ",
|
||||||
|
"format-disconnected": "Disconnected ⚠",
|
||||||
|
"format-alt": "{ifname}: {ipaddr}/{cidr}"
|
||||||
|
},
|
||||||
|
"pulseaudio": {
|
||||||
|
// "scroll-step": 1, // %, can be a float
|
||||||
|
"format": "{volume}% {icon} {format_source}",
|
||||||
|
"format-bluetooth": "{volume}% {icon} {format_source}",
|
||||||
|
"format-bluetooth-muted": " {icon} {format_source}",
|
||||||
|
"format-muted": " {format_source}",
|
||||||
|
"format-source": "{volume}% ",
|
||||||
|
"format-source-muted": "",
|
||||||
|
"format-icons": {
|
||||||
|
"headphones": "",
|
||||||
|
"handsfree": "",
|
||||||
|
"headset": "",
|
||||||
|
"phone": "",
|
||||||
|
"portable": "",
|
||||||
|
"car": "",
|
||||||
|
"default": ["", "", ""]
|
||||||
|
},
|
||||||
|
"on-click": "pavucontrol"
|
||||||
|
},
|
||||||
|
"custom/media": {
|
||||||
|
"format": "{icon} {}",
|
||||||
|
"return-type": "json",
|
||||||
|
"max-length": 40,
|
||||||
|
"format-icons": {
|
||||||
|
"spotify": "",
|
||||||
|
"default": "🎜"
|
||||||
|
},
|
||||||
|
"escape": true,
|
||||||
|
"exec": "$HOME/.config/waybar/mediaplayer.py 2> /dev/null" // Script in resources folder
|
||||||
|
// "exec": "$HOME/.config/waybar/mediaplayer.py --player spotify 2> /dev/null" // Filter player based on name
|
||||||
|
}
|
||||||
|
}
|
188
apps/de/waybar/style.css
Normal file
188
apps/de/waybar/style.css
Normal file
|
@ -0,0 +1,188 @@
|
||||||
|
* {
|
||||||
|
border: none;
|
||||||
|
border-radius: 0;
|
||||||
|
/* `otf-font-awesome` is required to be installed for icons */
|
||||||
|
font-family: "Iosevka", Roboto, Helvetica, Arial, sans-serif;
|
||||||
|
font-size: 16px;
|
||||||
|
min-height: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
window#waybar {
|
||||||
|
background-color: #111111;
|
||||||
|
color: #ffffff;
|
||||||
|
transition-property: background-color;
|
||||||
|
transition-duration: .5s;
|
||||||
|
}
|
||||||
|
|
||||||
|
window#waybar.hidden {
|
||||||
|
opacity: 0.2;
|
||||||
|
}
|
||||||
|
|
||||||
|
window#waybar.termite {
|
||||||
|
background-color: #3F3F3F;
|
||||||
|
}
|
||||||
|
|
||||||
|
window#waybar.chromium {
|
||||||
|
background-color: #000000;
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button {
|
||||||
|
padding: 0 0.75em;
|
||||||
|
background-color: transparent;
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button:hover {
|
||||||
|
/*
|
||||||
|
* background: rgba(0, 0, 0, 0.2);
|
||||||
|
* box-shadow: inherit;
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.focused {
|
||||||
|
background-color: #333333;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.urgent {
|
||||||
|
background-color: #eb4d4b;
|
||||||
|
}
|
||||||
|
|
||||||
|
#mode {
|
||||||
|
background-color: #64727D;
|
||||||
|
}
|
||||||
|
|
||||||
|
#clock,
|
||||||
|
#battery,
|
||||||
|
#cpu,
|
||||||
|
#memory,
|
||||||
|
#temperature,
|
||||||
|
#backlight,
|
||||||
|
#network,
|
||||||
|
#pulseaudio,
|
||||||
|
#custom-media,
|
||||||
|
#tray,
|
||||||
|
#mode,
|
||||||
|
#idle_inhibitor,
|
||||||
|
#mpd {
|
||||||
|
padding: 0 0.75em;
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
|
||||||
|
#clock {
|
||||||
|
/* background-color: #64727D; */
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery {
|
||||||
|
/* background-color: #ffffff; */
|
||||||
|
/* color: #000000; */
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery.charging {
|
||||||
|
/* color: #ffffff; */
|
||||||
|
/* background-color: #26A65B; */
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes blink {
|
||||||
|
to {
|
||||||
|
background-color: #ffffff;
|
||||||
|
color: #000000;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery.critical:not(.charging) {
|
||||||
|
background-color: #f53c3c;
|
||||||
|
color: #ffffff;
|
||||||
|
animation-name: blink;
|
||||||
|
animation-duration: 0.5s;
|
||||||
|
animation-timing-function: linear;
|
||||||
|
animation-iteration-count: infinite;
|
||||||
|
animation-direction: alternate;
|
||||||
|
}
|
||||||
|
|
||||||
|
label:focus {
|
||||||
|
background-color: #000000;
|
||||||
|
}
|
||||||
|
|
||||||
|
#cpu {
|
||||||
|
/* background-color: #2ecc71; */
|
||||||
|
/* color: #000000; */
|
||||||
|
}
|
||||||
|
|
||||||
|
#memory {
|
||||||
|
/* background-color: #9b59b6; */
|
||||||
|
}
|
||||||
|
|
||||||
|
#backlight {
|
||||||
|
/* background-color: #90b1b1; */
|
||||||
|
}
|
||||||
|
|
||||||
|
#network {
|
||||||
|
/* background-color: #2980b9; */
|
||||||
|
}
|
||||||
|
|
||||||
|
#network.disconnected {
|
||||||
|
/* background-color: #f53c3c; */
|
||||||
|
}
|
||||||
|
|
||||||
|
#pulseaudio {
|
||||||
|
/* background-color: #f1c40f; */
|
||||||
|
/* color: #000000; */
|
||||||
|
}
|
||||||
|
|
||||||
|
#pulseaudio.muted {
|
||||||
|
/* background-color: #90b1b1; */
|
||||||
|
/* color: #2a5c45; */
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-media {
|
||||||
|
/* background-color: #66cc99; */
|
||||||
|
/* color: #2a5c45; */
|
||||||
|
/* min-width: 100px; */
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-media.custom-spotify {
|
||||||
|
/* background-color: #66cc99; */
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-media.custom-vlc {
|
||||||
|
/* background-color: #ffa000; */
|
||||||
|
}
|
||||||
|
|
||||||
|
#temperature {
|
||||||
|
/* background-color: #f0932b; */
|
||||||
|
}
|
||||||
|
|
||||||
|
#temperature.critical {
|
||||||
|
/* background-color: #eb4d4b; */
|
||||||
|
}
|
||||||
|
|
||||||
|
#tray {
|
||||||
|
/* background-color: #2980b9; */
|
||||||
|
}
|
||||||
|
|
||||||
|
#idle_inhibitor {
|
||||||
|
/* background-color: #2d3436; */
|
||||||
|
}
|
||||||
|
|
||||||
|
#idle_inhibitor.activated {
|
||||||
|
/* background-color: #ecf0f1; */
|
||||||
|
/* color: #2d3436; */
|
||||||
|
}
|
||||||
|
|
||||||
|
#mpd {
|
||||||
|
/* background-color: #66cc99; */
|
||||||
|
/* color: #2a5c45; */
|
||||||
|
}
|
||||||
|
|
||||||
|
#mpd.disconnected {
|
||||||
|
/* background-color: #f53c3c; */
|
||||||
|
}
|
||||||
|
|
||||||
|
#mpd.stopped {
|
||||||
|
/* background-color: #90b1b1; */
|
||||||
|
}
|
||||||
|
|
||||||
|
#mpd.paused {
|
||||||
|
/* background-color: #51a37a; */
|
||||||
|
}
|
15
apps/de/x/init
Normal file
15
apps/de/x/init
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
|
# as far as I can tell, this file is only executed when you run startx from the
|
||||||
|
# TTY - you probably want to modify xprofile
|
||||||
|
|
||||||
|
[ -z "$XDG_CONFIG_HOME" ] && export XDG_CONFIG_HOME="$HOME/.config"
|
||||||
|
[ -z "$DOTFILES_PATH" ] && export DOTFILES_PATH="$XDG_CONFIG_HOME/dotfiles"
|
||||||
|
|
||||||
|
. "$DOTFILES_PATH/bin/prelude"
|
||||||
|
|
||||||
|
[ -f "$HOME/.xprofile" ] && . "$HOME/.xprofile"
|
||||||
|
|
||||||
|
# TODO: env? [ -f "$HOME/.env_xinitrc" ] && . "$HOME/.env_xinitrc"
|
||||||
|
|
||||||
|
exec "$DOTFILES_PATH/apps/de/bspwm/wmstart"
|
23
apps/de/x/loadresources
Executable file
23
apps/de/x/loadresources
Executable file
|
@ -0,0 +1,23 @@
|
||||||
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
|
xqm() {
|
||||||
|
f="$1"; shift; [ -f "$f" ] && xrdb -merge "$f" "$@" &>/dev/null
|
||||||
|
}
|
||||||
|
|
||||||
|
xqm "/etc/X11/xinit/.Xresources"
|
||||||
|
xqm "$HOME/.Xresources"
|
||||||
|
xqm "$DOTFILES_PATH/bin/lib/colors/xresources"
|
||||||
|
xqm "$ENV_PATH/x/resources"
|
||||||
|
|
||||||
|
sysmodmap="/etc/X11/xinit/.Xmodmap"
|
||||||
|
usermodmap="$ENV_PATH/x/modmap"
|
||||||
|
|
||||||
|
[ -f "$sysmodmap" ] && xmodmap "$sysmodmap" &>/dev/null
|
||||||
|
[ -f "$usermodmap" ] && xmodmap "$usermodmap" &>/dev/null
|
||||||
|
|
||||||
|
if [ -d "/etc/X11/xinit/xinitrc.d" ] ; then
|
||||||
|
for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do
|
||||||
|
[ -x "$f" ] && . "$f"
|
||||||
|
done
|
||||||
|
unset f
|
||||||
|
fi
|
23
apps/de/x/profile
Normal file
23
apps/de/x/profile
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
|
[ -z "$XDG_CONFIG_HOME" ] && export XDG_CONFIG_HOME="$HOME/.config"
|
||||||
|
[ -z "$DOTFILES_PATH" ] && export DOTFILES_PATH="$XDG_CONFIG_HOME/dotfiles"
|
||||||
|
|
||||||
|
. "$DOTFILES_PATH/bin/prelude"
|
||||||
|
|
||||||
|
[ -f "$DOTFILES_PATH/apps/de/x/loadresources" ] && "$DOTFILES_PATH/apps/de/x/loadresources"
|
||||||
|
[ -f "$HOME/.xmodmap" ] && xmodmap "$HOME/.xmodmap"
|
||||||
|
has_command xcape && xcape -e 'Control_L=Escape' &
|
||||||
|
has_command libinput-gestures-setup && libinput-gestures-setup start
|
||||||
|
has_command autocutsel && autocutsel -s PRIMARY &
|
||||||
|
has_command autocutsel && autocutsel -s CLIPBOARD &
|
||||||
|
has_command autorandr && autorandr -c
|
||||||
|
has_command redshift && redshift -r -l 39.1:-94.6 -t 6500K:3000K &
|
||||||
|
has_command kdeconnect-indicator && kdeconnect-indicator &
|
||||||
|
|
||||||
|
eval "$(/usr/bin/gnome-keyring-daemon --start --components=pkcs11,secrets,ssh)"
|
||||||
|
export SSH_AUTH_SOCK
|
||||||
|
|
||||||
|
xset r rate 250 80 & # keyrepeat
|
||||||
|
|
||||||
|
. maybe_source_env_file x/profile
|
|
@ -1,27 +1,22 @@
|
||||||
## Some of my favorite font setups...
|
## Some of my favorite font setups...
|
||||||
## *font: xft:Monaco for Powerline-9
|
## *font: xft:Monaco for Powerline-9
|
||||||
## *faceName: xft:Monaco for Powerline-9
|
|
||||||
## *boldFont: xft:Monaco for Powerline-9
|
## *boldFont: xft:Monaco for Powerline-9
|
||||||
## *letterSpace: -1
|
## *letterSpace: -1
|
||||||
|
|
||||||
## *font: xft:artwiz lemon-8
|
## *font: xft:artwiz lemon-8
|
||||||
## *faceName: xft:artwiz lemon-8
|
|
||||||
## *boldFont: xft:artwiz lemon-8
|
## *boldFont: xft:artwiz lemon-8
|
||||||
## *letterSpace: 0
|
## *letterSpace: 0
|
||||||
|
|
||||||
## *font: xft:xos4 Terminuss Powerline-8
|
## *font: xft:xos4 Terminuss Powerline-8
|
||||||
## *faceName: xft:xos4 Terminuss Powerline-8
|
|
||||||
## *boldFont: xft:xos4 Terminuss Powerline-8
|
## *boldFont: xft:xos4 Terminuss Powerline-8
|
||||||
## *letterSpace: 0
|
## *letterSpace: 0
|
||||||
|
|
||||||
## Set fonts in "$HOME/.Xresources.env"
|
*.font: xft:Iosevka Term:pixelsize=14,xft:Noto Emoji,xft:Font Awesome 5 Free:pixelsize=14,xft:FreeSans:pixelsize=14
|
||||||
URxvt.font: xft:Iosevka Term:pixelsize=14,xft:Noto Emoji,xft:Font Awesome 5 Free:pixelsize=14,xft:FreeSans:pixelsize=14
|
*.boldFont: xft:Iosevka Term Bold:pixelsize=14,xft:Noto Emoji,xft:Font Awesome 5 Free:pixelsize=14,xft:FreeSans:pixelsize=14
|
||||||
URxvt.faceName: xft:Iosevka Term:pixelsize=14,xft:Font Awesome 5 Free:pixelsize=14,xft:FreeSans:pixelsize=14
|
|
||||||
Emacs.font: Iosevka Term
|
*.letterSpace: 0
|
||||||
Emacs.faceName: Iosevka Term
|
## URxvt.transparent: true
|
||||||
# URxvt.transparent: true
|
## URxvt.shading: 70
|
||||||
# URxvt.shading: 70
|
|
||||||
URxvt.letterSpace: 0
|
|
||||||
|
|
||||||
## rxvt-unicode configuration
|
## rxvt-unicode configuration
|
||||||
URxvt.termName: rxvt-unicode
|
URxvt.termName: rxvt-unicode
|
||||||
|
@ -49,6 +44,7 @@ dpi: 92
|
||||||
.dpi: 92
|
.dpi: 92
|
||||||
*dpi: 92
|
*dpi: 92
|
||||||
Xft.dpi: 92
|
Xft.dpi: 92
|
||||||
|
|
||||||
*autohint: 0
|
*autohint: 0
|
||||||
*lcdfilter: lcddefault
|
*lcdfilter: lcddefault
|
||||||
*hintstyle: hintfull
|
*hintstyle: hintfull
|
13
apps/elixir/iex.exs
Normal file
13
apps/elixir/iex.exs
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
Application.put_env(:elixir, :ansi_enabled, true)
|
||||||
|
|
||||||
|
IEx.configure(
|
||||||
|
colors: [enabled: true],
|
||||||
|
default_prompt: [
|
||||||
|
"\e[G", # ANSI CHA, move cursor to column 1
|
||||||
|
:magenta,
|
||||||
|
"%prefix", # IEx prompt variable
|
||||||
|
">", # plain string
|
||||||
|
:reset
|
||||||
|
] |> IO.ANSI.format |> IO.chardata_to_string
|
||||||
|
)
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
[user]
|
[user]
|
||||||
name = Daniel Flanagan
|
name = Daniel Flanagan
|
||||||
email = daniel@lytedev.io
|
email = daniel@lytedev.io
|
||||||
|
signingkey = daniel@lytedev.io
|
||||||
|
|
||||||
[filter "lfs"]
|
[filter "lfs"]
|
||||||
clean = git-lfs clean -- %f
|
clean = git-lfs clean -- %f
|
||||||
|
@ -36,6 +37,7 @@
|
||||||
pf = push --force-with-lease
|
pf = push --force-with-lease
|
||||||
a = add -A
|
a = add -A
|
||||||
cnv = commit --no-verify
|
cnv = commit --no-verify
|
||||||
|
canv = commit --no-verify
|
||||||
c = commit
|
c = commit
|
||||||
|
|
||||||
[merge]
|
[merge]
|
||||||
|
@ -50,7 +52,14 @@
|
||||||
|
|
||||||
[pager]
|
[pager]
|
||||||
branch = false
|
branch = false
|
||||||
diff = nvim -c 'silent %sm/\\e.\\{-}m//g' -c 'silent %s/^diff/\\r\\rdiff/' -c 'silent set ft=diff' -c 'silent setlocal nobuflisted buftype=nofile bufhidden=wipe noswapfile' -c 'goto 1' -
|
# remove ansi codes, pad each file's diff with newlines, show as diff, remove top padding
|
||||||
|
diff = vimpager -c 'silent %sm/\\e[^mK]*[mK]//g' -c 'silent %s/^diff/\\r\\rdiff/' -c 'silent set ft=diff' -c 'silent execute \"normal gg2dd\"'
|
||||||
|
|
||||||
[url "git@github.com:postmates"]
|
[url "git@github.com:postmates"]
|
||||||
insteadOf = https://github.com/postmates
|
insteadOf = https://github.com/postmates
|
||||||
|
|
||||||
|
[commit]
|
||||||
|
gpgsign = true
|
||||||
|
|
||||||
|
[gpg]
|
||||||
|
program = gpg2
|
||||||
|
|
|
@ -8,11 +8,11 @@ hide_kernel_threads=1
|
||||||
hide_userland_threads=1
|
hide_userland_threads=1
|
||||||
shadow_other_users=0
|
shadow_other_users=0
|
||||||
show_thread_names=0
|
show_thread_names=0
|
||||||
show_program_path=0
|
show_program_path=1
|
||||||
highlight_base_name=1
|
highlight_base_name=0
|
||||||
highlight_megabytes=1
|
highlight_megabytes=1
|
||||||
highlight_threads=1
|
highlight_threads=1
|
||||||
tree_view=1
|
tree_view=0
|
||||||
header_margin=1
|
header_margin=1
|
||||||
detailed_cpu_time=0
|
detailed_cpu_time=0
|
||||||
cpu_count_from_zero=0
|
cpu_count_from_zero=0
|
||||||
|
|
|
@ -1,9 +1,54 @@
|
||||||
font_family Iosevka Term
|
font_family iosevka-lyte
|
||||||
bold_font Iosevka Term Bold
|
|
||||||
italic_font Iosevka Term Italic
|
repaint_delay 5
|
||||||
bold_italic_font Iosevka Term Bold Italic
|
input_delay 1
|
||||||
|
sync_to_monitor no
|
||||||
|
|
||||||
|
font_features iosevka-lyte -liga -dlig -calt
|
||||||
|
|
||||||
font_size 11.0
|
font_size 11.0
|
||||||
adjust_line_height 0
|
adjust_line_height 0
|
||||||
window_padding_width 18.0
|
window_padding_width 5.0
|
||||||
window_margin_width 0.0
|
window_margin_width 0.0
|
||||||
|
|
||||||
|
clear_all_shortcuts yes
|
||||||
|
|
||||||
|
map ctrl+shift+equal change_font_size all +0.5
|
||||||
|
map ctrl+shift+minus change_font_size all -0.5
|
||||||
|
map shift+insert paste_from_clipboard
|
||||||
|
map ctrl+shift+v paste_from_selection
|
||||||
|
|
||||||
|
enable_audio_bell yes
|
||||||
|
|
||||||
|
# TODO: generate via color scheme generator
|
||||||
|
background #111111
|
||||||
|
foreground #f8f8f2
|
||||||
|
|
||||||
|
url_style curly
|
||||||
|
|
||||||
|
# https://google.com
|
||||||
|
|
||||||
|
strip_trailing_spaces smart
|
||||||
|
|
||||||
|
color0 #111111
|
||||||
|
color1 #f92672
|
||||||
|
color2 #a6e22e
|
||||||
|
color3 #f4bf75
|
||||||
|
color4 #66d9ef
|
||||||
|
color5 #ae81ff
|
||||||
|
color6 #a1efe4
|
||||||
|
color7 #f8f8f2
|
||||||
|
|
||||||
|
# TODO: where did these colors come from? donokai?
|
||||||
|
color8 #75715e
|
||||||
|
color9 #fd971f
|
||||||
|
color10 #383830
|
||||||
|
color11 #49483e
|
||||||
|
color12 #a59f85
|
||||||
|
color13 #f5f4f1
|
||||||
|
color14 #cc6633
|
||||||
|
color15 #f9f8f5
|
||||||
|
|
||||||
|
color18 #333333
|
||||||
|
kitty_mod ctrl+shift+alt
|
||||||
|
open_url_modifiers ctrl
|
||||||
|
|
|
@ -1,19 +1,8 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env sh
|
||||||
# vim:fdm=marker
|
|
||||||
#
|
|
||||||
# Neofetch config file
|
|
||||||
# https://github.com/dylanaraps/neofetch
|
|
||||||
|
|
||||||
# Speed up script by not using unicode
|
|
||||||
export LC_ALL=C
|
export LC_ALL=C
|
||||||
export LANG=C
|
export LANG=C
|
||||||
|
|
||||||
# Info Options {{{
|
|
||||||
|
|
||||||
|
|
||||||
# Info
|
|
||||||
# See this wiki page for more info:
|
|
||||||
# https://github.com/dylanaraps/neofetch/wiki/Customizing-Info
|
|
||||||
print_info() {
|
print_info() {
|
||||||
info line_break
|
info line_break
|
||||||
|
|
||||||
|
@ -45,375 +34,86 @@ print_info() {
|
||||||
wait
|
wait
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
# Kernel
|
|
||||||
|
|
||||||
# Show more kernel info
|
|
||||||
# --kernel_shorthand on, off
|
|
||||||
kernel="off"
|
kernel="off"
|
||||||
kernel_shorthand="on"
|
kernel_shorthand="on"
|
||||||
|
|
||||||
|
|
||||||
# Distro
|
|
||||||
|
|
||||||
# Shorten the output of distro (tiny, on, off)
|
|
||||||
# NOTE: This is only possible on Linux, macOS, and Solaris
|
|
||||||
distro_shorthand="off"
|
distro_shorthand="off"
|
||||||
|
|
||||||
# Show 'x86_64' and 'x86' in 'Distro:' output.
|
|
||||||
# --os_arch on, off
|
|
||||||
os_arch="on"
|
os_arch="on"
|
||||||
|
|
||||||
|
|
||||||
# Uptime
|
|
||||||
|
|
||||||
# Shorten the output of the uptime function
|
|
||||||
# --uptime_shorthand tiny, on, off
|
|
||||||
uptime_shorthand="off"
|
uptime_shorthand="off"
|
||||||
|
|
||||||
|
|
||||||
# Shell
|
|
||||||
|
|
||||||
# Show the path to $SHELL
|
|
||||||
# --shell_path on, off
|
|
||||||
shell_path="off"
|
shell_path="off"
|
||||||
|
|
||||||
# Show $SHELL's version
|
|
||||||
# --shell_version on, off
|
|
||||||
shell_version="on"
|
shell_version="on"
|
||||||
|
|
||||||
|
|
||||||
# CPU
|
|
||||||
|
|
||||||
# CPU speed type
|
|
||||||
# Only works on Linux with cpufreq.
|
|
||||||
# --speed_type current, min, max, bios,
|
|
||||||
# scaling_current, scaling_min, scaling_max
|
|
||||||
speed_type="max"
|
speed_type="max"
|
||||||
|
|
||||||
# CPU Shorthand
|
|
||||||
# Set shorthand setting
|
|
||||||
# --cpu_shorthand name, speed, tiny, on, off
|
|
||||||
cpu_shorthand="off"
|
cpu_shorthand="off"
|
||||||
|
|
||||||
# CPU Usage display
|
|
||||||
# Set CPU usage display setting
|
|
||||||
# --cpu_display bar, infobar, barinfo, off
|
|
||||||
cpu_display="off"
|
cpu_display="off"
|
||||||
|
|
||||||
# CPU Speed
|
|
||||||
# Hide/Show CPU speed.
|
|
||||||
# --cpu_speed on, off
|
|
||||||
cpu_speed="on"
|
cpu_speed="on"
|
||||||
|
|
||||||
# CPU Cores
|
|
||||||
# Display CPU cores in output
|
|
||||||
# Logical: All virtual cores
|
|
||||||
# Physical: All physical cores
|
|
||||||
# --cpu_cores logical, physical, off
|
|
||||||
# Note: 'physical' doesn't work on BSD.
|
|
||||||
cpu_cores="logical"
|
cpu_cores="logical"
|
||||||
|
|
||||||
# CPU Temperature
|
|
||||||
# Hide/Show CPU temperature.
|
|
||||||
# --cpu_temp on, off
|
|
||||||
# Note: Only works on Linux.
|
|
||||||
cpu_temp="off"
|
cpu_temp="off"
|
||||||
|
|
||||||
|
|
||||||
# GPU
|
|
||||||
|
|
||||||
# Enable/Disable GPU Brand
|
|
||||||
# --gpu_brand on, off
|
|
||||||
gpu_brand="on"
|
gpu_brand="on"
|
||||||
|
|
||||||
|
|
||||||
# Resolution
|
|
||||||
|
|
||||||
# Display refresh rate next to each monitor
|
|
||||||
# Unsupported on Windows
|
|
||||||
# --refresh_rate on, off
|
|
||||||
refresh_rate="off"
|
refresh_rate="off"
|
||||||
|
|
||||||
|
|
||||||
# Gtk Theme / Icons
|
|
||||||
|
|
||||||
# Shorten output (Hide [GTK2] etc)
|
|
||||||
# --gtk_shorthand on, off
|
|
||||||
gtk_shorthand="off"
|
gtk_shorthand="off"
|
||||||
|
|
||||||
|
|
||||||
# Enable/Disable gtk2 theme/icons output
|
|
||||||
# --gtk2 on, off
|
|
||||||
gtk2="on"
|
gtk2="on"
|
||||||
|
|
||||||
# Enable/Disable gtk3 theme/icons output
|
|
||||||
# --gtk3 on, off
|
|
||||||
gtk3="on"
|
gtk3="on"
|
||||||
|
|
||||||
|
|
||||||
# IP Address
|
|
||||||
|
|
||||||
# Website to ping for the public IP
|
|
||||||
# --ip_host url
|
|
||||||
public_ip_host="http://ident.me"
|
public_ip_host="http://ident.me"
|
||||||
|
|
||||||
|
|
||||||
# Song
|
|
||||||
|
|
||||||
# Print the Artist and Title on seperate lines
|
|
||||||
# --song_shorthand on, off
|
|
||||||
song_shorthand="off"
|
song_shorthand="off"
|
||||||
|
|
||||||
|
|
||||||
# Birthday
|
|
||||||
|
|
||||||
# Whether to show a long pretty output
|
|
||||||
# or a shortened one
|
|
||||||
# NOTE: Long pretty output doesn't work on OpenBSD or NetBSD.
|
|
||||||
# --birthday_shorthand on, off
|
|
||||||
birthday_shorthand="off"
|
birthday_shorthand="off"
|
||||||
|
|
||||||
# Whether to show the time in the output
|
|
||||||
# --birthday_time on, off
|
|
||||||
birthday_time="on"
|
birthday_time="on"
|
||||||
|
|
||||||
# Date format to use when printing birthday
|
|
||||||
# --birthday_format "format"
|
|
||||||
birthday_format="+%a %d %b %Y %l:%M %p"
|
birthday_format="+%a %d %b %Y %l:%M %p"
|
||||||
|
|
||||||
|
|
||||||
# }}}
|
|
||||||
|
|
||||||
# Text Colors {{{
|
|
||||||
|
|
||||||
|
|
||||||
# Text Colors
|
|
||||||
# Each number represents a different part of
|
|
||||||
# the text in this order:
|
|
||||||
# title, @, underline, subtitle, colon, info
|
|
||||||
# colors=(4 6 1 8 8 6)
|
|
||||||
# You can also specify:
|
|
||||||
# fg (foreground color)
|
|
||||||
colors=(distro)
|
colors=(distro)
|
||||||
|
|
||||||
|
|
||||||
# }}}
|
|
||||||
|
|
||||||
# Text Options {{{
|
|
||||||
|
|
||||||
|
|
||||||
# Toggle bold text
|
|
||||||
# --bold on, off
|
|
||||||
bold="on"
|
bold="on"
|
||||||
|
|
||||||
# Enable/Disable Underline
|
|
||||||
# --underline on, off
|
|
||||||
underline_enabled="on"
|
underline_enabled="on"
|
||||||
|
|
||||||
# Underline character
|
|
||||||
# --underline_char char
|
|
||||||
underline_char="-"
|
underline_char="-"
|
||||||
|
|
||||||
|
|
||||||
# }}}
|
|
||||||
|
|
||||||
# Color Blocks {{{
|
|
||||||
|
|
||||||
|
|
||||||
# Color block range
|
|
||||||
# --block_range start end
|
|
||||||
# block_range="0,15"
|
|
||||||
|
|
||||||
# Toggle color blocks
|
|
||||||
# --color_blocks on, off
|
|
||||||
color_blocks="on"
|
color_blocks="on"
|
||||||
|
|
||||||
# Color block width in spaces
|
|
||||||
# --block_width num
|
|
||||||
block_width=5
|
block_width=5
|
||||||
|
|
||||||
# Color block height in lines
|
|
||||||
# --block_height num
|
|
||||||
block_height=2
|
block_height=2
|
||||||
|
|
||||||
|
|
||||||
# }}}
|
|
||||||
|
|
||||||
# Progress Bars {{{
|
|
||||||
|
|
||||||
|
|
||||||
# Progress bar character
|
|
||||||
# --progress_char elapsed_char total_char
|
|
||||||
progress_char_elapsed="-"
|
progress_char_elapsed="-"
|
||||||
progress_char_total="="
|
progress_char_total="="
|
||||||
|
|
||||||
# Progress border
|
|
||||||
# --progress_border on, off
|
|
||||||
progress_border="on"
|
progress_border="on"
|
||||||
|
|
||||||
# Progress bar length in spaces
|
|
||||||
# Number of chars long to make the progress bars.
|
|
||||||
# --progress_length num
|
|
||||||
progress_length="15"
|
progress_length="15"
|
||||||
|
|
||||||
# Progress bar colors
|
|
||||||
# When set to distro, uses your distro's logo colors
|
|
||||||
# Takes: num, "distro"
|
|
||||||
# --progress_colors col col
|
|
||||||
progress_color_elapsed="distro"
|
progress_color_elapsed="distro"
|
||||||
progress_color_total="distro"
|
progress_color_total="distro"
|
||||||
|
|
||||||
# Customize how the info is displayed.
|
|
||||||
# bar: Only the progress bar is displayed.
|
|
||||||
# infobar: The bar is displayed after the info.
|
|
||||||
# barinfo: The bar is displayed before the info.
|
|
||||||
# off: Only the info is displayed.
|
|
||||||
#
|
|
||||||
# --memory_display bar, infobar, barinfo, off
|
|
||||||
# --battery_display bar, infobar, barinfo, off
|
|
||||||
# --disk_display bar, infobar, barinfo, off
|
|
||||||
memory_display="off"
|
memory_display="off"
|
||||||
battery_display="off"
|
battery_display="off"
|
||||||
disk_display="on"
|
disk_display="on"
|
||||||
|
|
||||||
|
backend="kitty"
|
||||||
|
image_backend="kitty"
|
||||||
|
|
||||||
# }}}
|
|
||||||
|
|
||||||
# Image Options {{{
|
|
||||||
|
|
||||||
backend="w3m"
|
|
||||||
image_backend="w3m"
|
|
||||||
|
|
||||||
# Image Source
|
|
||||||
# --image wall, ascii, /path/to/img, /path/to/dir/, off
|
|
||||||
image="~/.wallpaper"
|
image="~/.wallpaper"
|
||||||
|
|
||||||
# Thumbnail directory
|
|
||||||
thumbnail_dir="$HOME/.cache/thumbnails/neofetch"
|
thumbnail_dir="$HOME/.cache/thumbnails/neofetch"
|
||||||
|
|
||||||
# W3m-img path
|
|
||||||
# Only works with the w3m backend.
|
|
||||||
# Some systems have this in another location
|
|
||||||
w3m_img_path="/usr/lib/w3m/w3mimgdisplay"
|
|
||||||
|
|
||||||
# Crop mode
|
|
||||||
# --crop_mode normal, fit, fill
|
|
||||||
crop_mode="normal"
|
crop_mode="normal"
|
||||||
|
|
||||||
# Crop offset
|
|
||||||
# Only affects normal mode.
|
|
||||||
# --crop_offset northwest, north, northeast, west, center
|
|
||||||
# east, southwest, south, southeast
|
|
||||||
crop_offset="center"
|
crop_offset="center"
|
||||||
|
|
||||||
# Image size
|
|
||||||
# The image is half the terminal width by default.
|
|
||||||
# --size auto, 00px, 00%, none
|
|
||||||
image_size="360px"
|
image_size="360px"
|
||||||
|
|
||||||
# Right gap between image and text
|
|
||||||
# --gap num
|
|
||||||
gap=1
|
gap=1
|
||||||
|
|
||||||
# Image offsets
|
|
||||||
# Only works with the w3m backend.
|
|
||||||
# --xoffset px
|
|
||||||
# --yoffset px
|
|
||||||
yoffset=0
|
yoffset=0
|
||||||
xoffset=0
|
xoffset=0
|
||||||
|
|
||||||
# Image background color
|
|
||||||
# Only works with the w3m backend.
|
|
||||||
# Unset by default.
|
|
||||||
# --bg_color 'color', blue
|
|
||||||
background_color=
|
background_color=
|
||||||
|
|
||||||
|
|
||||||
# }}}
|
|
||||||
|
|
||||||
# Ascii Options {{{
|
|
||||||
|
|
||||||
|
|
||||||
# Default ascii image to use
|
|
||||||
# When this is set to distro it will use your
|
|
||||||
# distro's logo as the ascii.
|
|
||||||
# --ascii 'distro', path/to/ascii
|
|
||||||
ascii="distro"
|
ascii="distro"
|
||||||
|
|
||||||
# Ascii distro
|
|
||||||
# Which distro's ascii art to display.
|
|
||||||
# --ascii_distro 'auto', 'distro_name'
|
|
||||||
ascii_distro="auto"
|
ascii_distro="auto"
|
||||||
|
|
||||||
# Ascii colors
|
|
||||||
# When this is set to distro it will use your
|
|
||||||
# ditro's colors to color the ascii.
|
|
||||||
# NOTE: You can also set this to a range of colors
|
|
||||||
# which will allow you to custom color distro logos
|
|
||||||
# --ascii_colors distro
|
|
||||||
# --ascii_colors 2 4 5 6
|
|
||||||
ascii_colors=(distro)
|
ascii_colors=(distro)
|
||||||
|
|
||||||
# Logo size
|
|
||||||
# Arch, Crux and Gentoo have a smaller logo
|
|
||||||
# variant. Changing the value below to small
|
|
||||||
# will make neofetch use the small logo.
|
|
||||||
# --ascii_logo_size small, normal
|
|
||||||
ascii_logo_size="normal"
|
ascii_logo_size="normal"
|
||||||
|
|
||||||
# Bold ascii logo
|
|
||||||
# Whether or not to bold the ascii logo.
|
|
||||||
# --ascii_bold on, off
|
|
||||||
ascii_bold="on"
|
ascii_bold="on"
|
||||||
|
|
||||||
|
|
||||||
# }}}
|
|
||||||
|
|
||||||
# Scrot Options {{{
|
|
||||||
|
|
||||||
|
|
||||||
# Whether or not to always take a screenshot
|
|
||||||
# You can manually take a screenshot with "--scrot" or "-s"
|
|
||||||
scrot="off"
|
scrot="off"
|
||||||
|
|
||||||
# Screenshot program to launch
|
|
||||||
# --scrot_cmd
|
|
||||||
scrot_cmd="scrot -c -d 3"
|
scrot_cmd="scrot -c -d 3"
|
||||||
|
scrot_dir="$XDG_PICTURES_DIR"
|
||||||
# Scrot dir
|
|
||||||
# Where to save the screenshots
|
|
||||||
# --scrot_dir /path/to/screenshot/folder
|
|
||||||
scrot_dir="$NICE_HOME/img/"
|
|
||||||
|
|
||||||
# Scrot filename
|
|
||||||
# What to name the screenshots
|
|
||||||
# --scrot_name str
|
|
||||||
scrot_name="neofetch-$(date +%F-%I-%M-%S-${RANDOM}).png"
|
scrot_name="neofetch-$(date +%F-%I-%M-%S-${RANDOM}).png"
|
||||||
|
|
||||||
# Image upload host
|
|
||||||
# Where to upload the image.
|
|
||||||
# Possible values: imgur, teknik
|
|
||||||
image_host="imgur"
|
image_host="imgur"
|
||||||
|
|
||||||
# Imgur api key
|
|
||||||
# This is an api key for neofetch, you can sign up for your own
|
|
||||||
# here: http://api.imgur.com/oauth2/addclient
|
|
||||||
imgur_client_id="0e8b44d15e9fc95"
|
imgur_client_id="0e8b44d15e9fc95"
|
||||||
|
|
||||||
|
|
||||||
# }}}
|
|
||||||
|
|
||||||
# Config Options {{{
|
|
||||||
|
|
||||||
|
|
||||||
# Enable/Disable config file
|
|
||||||
# --config off, none
|
|
||||||
config="on"
|
config="on"
|
||||||
|
|
||||||
# Path to custom config file location
|
|
||||||
# --config path/to/config
|
|
||||||
config_file="${XDG_CONFIG_HOME:-${HOME}/.config}/neofetch/config"
|
config_file="${XDG_CONFIG_HOME:-${HOME}/.config}/neofetch/config"
|
||||||
|
|
||||||
|
|
||||||
# }}}
|
|
||||||
|
|
|
@ -8,28 +8,30 @@ command! Q q
|
||||||
" best leader
|
" best leader
|
||||||
let mapleader = "\<Space>"
|
let mapleader = "\<Space>"
|
||||||
|
|
||||||
if has('nvim')
|
|
||||||
" terminal mappings
|
|
||||||
" open a terminal split at 80 columns
|
|
||||||
nnoremap <C-t> :vsplit term://bash<CR>
|
|
||||||
nnoremap <C-S-T> :split term://bash<CR>
|
|
||||||
" tnoremap <C-t> <C-\><C-n>:call TerminalSplit()<CR>
|
|
||||||
|
|
||||||
" close the terminal
|
|
||||||
tnoremap <C-w> <C-\><C-n>:q!<CR>
|
|
||||||
|
|
||||||
" moving between terminal splits
|
|
||||||
tnoremap <C-h> :TmuxNavigateLeft<CR>
|
|
||||||
tnoremap <C-j> :TmuxNavigateDown<CR>
|
|
||||||
tnoremap <C-k> :TmuxNavigateUp<CR>
|
|
||||||
tnoremap <C-l> :TmuxNavigateRight<CR>
|
|
||||||
endif
|
|
||||||
|
|
||||||
" enter insert mode when entering a terminal buffer
|
" enter insert mode when entering a terminal buffer
|
||||||
augroup InsertModeOnBlankTerminal
|
augroup InsertModeOnBlankTerminal
|
||||||
autocmd BufWinEnter,WinEnter term://* startinsert
|
autocmd BufWinEnter,WinEnter term://* startinsert
|
||||||
augroup END
|
augroup END
|
||||||
|
|
||||||
|
" terminal mappings
|
||||||
|
nnoremap <leader>t :split term://$SHELL<CR><C-\><C-n>:resize 24<CR>i
|
||||||
|
nnoremap <C-t> :split term://$SHELL<CR><C-\><C-n>:resize 24<CR>i
|
||||||
|
nnoremap <leader><leader>t :vsplit term://$SHELL<CR><C-\><C-n>:vertical resize 120<CR>i
|
||||||
|
" nnoremap <C-S-T> :vsplit term://$SHELL<CR><C-\><C-n>:vertical resize 120<CR>i
|
||||||
|
nnoremap <C-y> :vsplit term://$SHELL<CR><C-\><C-n>:vertical resize 120<CR>i
|
||||||
|
|
||||||
|
" close the terminal
|
||||||
|
tnoremap <C-w> <C-\><C-n>:q!<CR>
|
||||||
|
tnoremap <leader>w <C-\><C-n>:q!<CR>
|
||||||
|
tnoremap <C-n> <C-\><C-n>
|
||||||
|
tnoremap <C-[> <C-\><C-n>
|
||||||
|
|
||||||
|
" moving between terminal splits
|
||||||
|
tnoremap <C-h> <C-\><C-n>:TmuxNavigateLeft<CR>
|
||||||
|
tnoremap <C-j> <C-\><C-n>:TmuxNavigateDown<CR>
|
||||||
|
tnoremap <C-k> <C-\><C-n>:TmuxNavigateUp<CR>
|
||||||
|
tnoremap <C-l> <C-\><C-n>:TmuxNavigateRight<CR>
|
||||||
|
|
||||||
" Jump to the next or previous line that has the same level or a lower
|
" Jump to the next or previous line that has the same level or a lower
|
||||||
" level of indentation than the current line.
|
" level of indentation than the current line.
|
||||||
"
|
"
|
||||||
|
@ -121,10 +123,18 @@ nnoremap <leader>h :b#<CR>
|
||||||
" use leader j and k to switch buffers as well
|
" use leader j and k to switch buffers as well
|
||||||
nnoremap <leader>k :bnext<CR>
|
nnoremap <leader>k :bnext<CR>
|
||||||
nnoremap <leader>j :bprevious<CR>
|
nnoremap <leader>j :bprevious<CR>
|
||||||
nnoremap <C-k> :bnext<CR>
|
|
||||||
nnoremap <C-j> :bprevious<CR>
|
|
||||||
|
|
||||||
nnoremap <leader>r :source ~/.config/nvim/init.vim<CR>
|
" window/pane navigation
|
||||||
|
nnoremap <C-h> :TmuxNavigateLeft<CR>
|
||||||
|
nnoremap <C-j> :TmuxNavigateDown<CR>
|
||||||
|
nnoremap <C-k> :TmuxNavigateUp<CR>
|
||||||
|
nnoremap <C-l> :TmuxNavigateRight<CR>
|
||||||
|
|
||||||
|
if has('nvim')
|
||||||
|
nnoremap <leader>r :source $vimdir/init.vim<CR>
|
||||||
|
else
|
||||||
|
nnoremap <leader>r :source $HOME/.vimrc<CR>
|
||||||
|
endif
|
||||||
|
|
||||||
" change buffers with leader,tab
|
" change buffers with leader,tab
|
||||||
nnoremap <leader><Tab> :bnext<CR>
|
nnoremap <leader><Tab> :bnext<CR>
|
||||||
|
@ -218,15 +228,15 @@ nnoremap <leader>gs :syntax sync fromstart<CR>
|
||||||
" open coc config
|
" open coc config
|
||||||
nnoremap <leader><space>c :CocConfig<CR>
|
nnoremap <leader><space>c :CocConfig<CR>
|
||||||
|
|
||||||
" go to definitions
|
" smart jumps
|
||||||
nnoremap <leader>gd <Plug>(coc-jump-definition)
|
|
||||||
nnoremap <leader>d <Plug>(coc-jump-definition)
|
|
||||||
|
|
||||||
nmap <silent> gd <Plug>(coc-definition)
|
nmap <silent> gd <Plug>(coc-definition)
|
||||||
nmap <silent> gy <Plug>(coc-type-definition)
|
nmap <silent> gy <Plug>(coc-type-definition)
|
||||||
nmap <silent> gi <Plug>(coc-implementation)
|
nmap <silent> gi <Plug>(coc-implementation)
|
||||||
nmap <silent> gr <Plug>(coc-references)
|
nmap <silent> gr <Plug>(coc-references)
|
||||||
|
|
||||||
|
nmap <silent> g[ <Plug>(coc-diagnostic-prev)
|
||||||
|
nmap <silent> g] <Plug>(coc-diagnostic-next)
|
||||||
|
|
||||||
nmap <leader>ac <Plug>(coc-codeaction)
|
nmap <leader>ac <Plug>(coc-codeaction)
|
||||||
nmap <leader>qf <Plug>(coc-fix-current)
|
nmap <leader>qf <Plug>(coc-fix-current)
|
||||||
|
|
||||||
|
|
|
@ -18,22 +18,6 @@ if has("autocmd")
|
||||||
au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") && index(jump_to_pos_blacklist, &ft) | exe "normal! g'\"" | endif
|
au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") && index(jump_to_pos_blacklist, &ft) | exe "normal! g'\"" | endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
" terminal split in neovim even tho we tmux
|
|
||||||
if has('nvim')
|
|
||||||
function! TerminalSplit()
|
|
||||||
let current_file = @%
|
|
||||||
echo current_file
|
|
||||||
if match(current_file, "term://*") != -1
|
|
||||||
split
|
|
||||||
terminal
|
|
||||||
else
|
|
||||||
split
|
|
||||||
resize 24
|
|
||||||
terminal
|
|
||||||
endif
|
|
||||||
endfunction
|
|
||||||
endif
|
|
||||||
|
|
||||||
" make any necessary directories in the path when saving a file
|
" make any necessary directories in the path when saving a file
|
||||||
fun! <SID>AutoMakeDirectory()
|
fun! <SID>AutoMakeDirectory()
|
||||||
let s:directory = expand("<afile>:p:h")
|
let s:directory = expand("<afile>:p:h")
|
||||||
|
|
|
@ -1,5 +1 @@
|
||||||
let b:ale_fixers = ['uncrustify']
|
|
||||||
let b:ale_linters = {
|
|
||||||
\ 'cs': ['OmniSharp']
|
|
||||||
\}
|
|
||||||
let g:OmniSharp_server_use_mono = 1
|
let g:OmniSharp_server_use_mono = 1
|
||||||
|
|
|
@ -1,34 +1,31 @@
|
||||||
" let b:ale_fixers = ['mix_format']
|
|
||||||
let b:ale_linters = ['dogma', 'credo', 'dialyxir', 'mix']
|
|
||||||
" let g:ale_elixir_elixir_ls_release = '/Users/danielflanagan/Documents/code/open-source/elixir-ls/'
|
|
||||||
|
|
||||||
let g:elixirls = {
|
let g:elixirls = {
|
||||||
\ 'path': printf('%s/%s', stdpath('config'), 'bundle/elixir-ls'),
|
\ 'path': printf('%s/%s', stdpath('config'), 'bundle/elixir-ls'),
|
||||||
\ }
|
\ }
|
||||||
|
|
||||||
let g:elixirls.lsp = printf(
|
let g:elixirls.lsp = printf(
|
||||||
\ '%s/%s',
|
\ '%s/%s',
|
||||||
\ g:elixirls.path,
|
\ g:elixirls.path,
|
||||||
\ 'release/language_server.sh')
|
\ 'release/language_server.sh')
|
||||||
|
|
||||||
function! g:elixirls.compile(...)
|
function! g:elixirls.compile(...)
|
||||||
let l:commands = join([
|
let l:commands = join([
|
||||||
\ 'mix local.hex --force',
|
\ 'mix local.hex --force',
|
||||||
\ 'mix local.rebar --force',
|
\ 'mix local.rebar --force',
|
||||||
\ 'mix deps.get',
|
\ 'mix deps.get',
|
||||||
\ 'mix compile',
|
\ 'mix compile',
|
||||||
\ 'mix elixir_ls.release'
|
\ 'mix elixir_ls.release'
|
||||||
\ ], '&&')
|
\ ], '&&')
|
||||||
|
|
||||||
echom '>>> Compiling elixirls'
|
echom '>>> Compiling elixirls'
|
||||||
silent call system(l:commands)
|
silent call system(l:commands)
|
||||||
echom '>>> elixirls compiled'
|
echom '>>> elixirls compiled'
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
call coc#config('languageserver', {
|
call coc#config('languageserver', {
|
||||||
\ 'elixir': {
|
\ 'elixir': {
|
||||||
\ 'command': g:elixirls.lsp,
|
\ 'command': g:elixirls.lsp,
|
||||||
\ 'trace.server': 'verbose',
|
\ 'trace.server': 'verbose',
|
||||||
\ 'filetypes': ['elixir', 'eelixir']
|
\ 'filetypes': ['elixir', 'eelixir']
|
||||||
\ }
|
\ }
|
||||||
\})
|
\})
|
||||||
|
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
let b:ale_fixers = ['prettier', 'eslint']
|
|
1
apps/neovim/ftplugin/lua.vim
Normal file
1
apps/neovim/ftplugin/lua.vim
Normal file
|
@ -0,0 +1 @@
|
||||||
|
call coc#config('languageserver', {"lua": {"command": "lua-lsp", "filetypes": ["lua"]}})
|
12
apps/neovim/ftplugin/moon.vim
Normal file
12
apps/neovim/ftplugin/moon.vim
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
" let g:moonscriptls = {'path': printf('/home/daniel/code/open-source/moonscript-language-server')}
|
||||||
|
|
||||||
|
" let g:moonscriptls.lsp = printf('%s/main.moon', g:moonscriptls.path)
|
||||||
|
|
||||||
|
" call coc#config('languageserver', {
|
||||||
|
" \ 'moon': {
|
||||||
|
" \ 'command': g:moonscriptls.lsp,
|
||||||
|
" \ 'trace.server': 'verbose',
|
||||||
|
" \ 'filetypes': ['moon']
|
||||||
|
" \ }
|
||||||
|
" \})
|
||||||
|
|
|
@ -1,2 +1 @@
|
||||||
let b:ale_linters = ['rls']
|
|
||||||
|
|
||||||
|
|
|
@ -1,2 +0,0 @@
|
||||||
let b:ale_fixers = ['tslint']
|
|
||||||
let b:ale_linters = ['tsserver']
|
|
|
@ -1 +0,0 @@
|
||||||
" let b:ale_fixers = ['vint']
|
|
|
@ -1,2 +1 @@
|
||||||
let b:ale_fixers = ['prettier', 'eslint']
|
|
||||||
autocmd FileType vue syntax sync fromstart
|
autocmd FileType vue syntax sync fromstart
|
||||||
|
|
|
@ -1,57 +1,25 @@
|
||||||
" vim compatibility
|
|
||||||
let $vimdir = $HOME.'/.vim'
|
let $vimdir = $HOME.'/.vim'
|
||||||
if has('nvim')
|
if has('nvim')
|
||||||
let $vimdir = $HOME.'/.config/nvim'
|
let $vimdir = $XDG_CONFIG_HOME.'/nvim'
|
||||||
endif
|
endif
|
||||||
|
|
||||||
" utf8 encoding
|
|
||||||
if has('vim_starting')
|
|
||||||
set encoding=utf8
|
|
||||||
endif
|
|
||||||
|
|
||||||
" os detection functions
|
|
||||||
silent function! OSX()
|
|
||||||
return has('macunix')
|
|
||||||
endfunction
|
|
||||||
silent function! LINUX()
|
|
||||||
return has('unix') && !has('macunix') && !has('win32unix')
|
|
||||||
endfunction
|
|
||||||
silent function! WINDOWS()
|
|
||||||
return (has('win32') || has('win64'))
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
" load a per-environment file if one exists
|
" load a per-environment file if one exists
|
||||||
if filereadable(expand('$HOME/.env_init.vim'))
|
if filereadable("$ENV_PATH/vim")
|
||||||
source "$HOME/.env_init.vim"
|
source "$ENV_PATH/vim"
|
||||||
endif
|
endif
|
||||||
|
|
||||||
" initialize plugin manager
|
call plug#begin($vimdir.'/bundle')
|
||||||
if has('nvim')
|
source $vimdir/plugins.vim
|
||||||
call plug#begin('~/.config/nvim/bundle')
|
|
||||||
else
|
|
||||||
call plug#begin('~/.vim/bundle')
|
|
||||||
endif
|
|
||||||
|
|
||||||
let pluginsfile=$vimdir.'/plugins.vim'
|
|
||||||
exec 'source ' . pluginsfile
|
|
||||||
|
|
||||||
call plug#end()
|
call plug#end()
|
||||||
|
|
||||||
filetype on
|
filetype on
|
||||||
filetype indent on
|
filetype indent on
|
||||||
filetype plugin on
|
filetype plugin on
|
||||||
|
|
||||||
let settingsfile=$vimdir.'/settings.vim'
|
source $vimdir/settings.vim
|
||||||
exec 'source ' . settingsfile
|
source $vimdir/commands.vim
|
||||||
|
source $vimdir/bindings.vim
|
||||||
|
|
||||||
let commandsfile=$vimdir.'/commands.vim'
|
if filereadable("$ENV_PATH/vim-after")
|
||||||
exec 'source ' . commandsfile
|
source "$ENV_PATH/vim-after"
|
||||||
|
|
||||||
let bindingsfile=$vimdir.'/bindings.vim'
|
|
||||||
exec 'source ' . bindingsfile
|
|
||||||
|
|
||||||
" load a per-environment file if one exists
|
|
||||||
if filereadable(expand('$HOME/.env_init_after.vim'))
|
|
||||||
source "$HOME/.env_init_after.vim"
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
|
@ -1,25 +1,15 @@
|
||||||
" install plugin manager if needed
|
" install plugin manager if needed
|
||||||
augroup PluginManagerInstaller
|
augroup PluginManagerInstaller
|
||||||
if has('nvim')
|
if empty(glob("$vimdir/autoload/plug.vim"))
|
||||||
if empty(glob('~/.config/nvim/autoload/plug.vim'))
|
silent !curl -fLo "$vimdir/autoload/plug.vim" --create-dirs 'https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'
|
||||||
silent !curl -fLo ~/.config/nvim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
|
autocmd VimEnter * PlugInstall
|
||||||
autocmd VimEnter * PlugInstall
|
endif
|
||||||
endif
|
|
||||||
else
|
|
||||||
if empty(glob('~/.vim/autoload/plug.vim'))
|
|
||||||
silent !curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
|
|
||||||
autocmd VimEnter * PlugInstall
|
|
||||||
endif
|
|
||||||
end
|
|
||||||
augroup End
|
augroup End
|
||||||
|
|
||||||
let g:airline_powerline_fonts = 1
|
let g:airline_powerline_fonts = 1
|
||||||
let g:airline#extensions#tabline#enabled = 1 " automatically displays all buffers when there's only one tab open
|
let g:airline#extensions#tabline#enabled = 1 " automatically displays all buffers when there's only one tab open
|
||||||
let g:airline#extensions#tabline#fnamemod = ':t'
|
let g:airline#extensions#tabline#fnamemod = ':t'
|
||||||
" set laststatus=2 " always show statusline
|
|
||||||
" set noshowmode " hides default mode
|
|
||||||
|
|
||||||
" cleanup/simplify airline
|
|
||||||
let g:airline#extensions#tabline#left_sep = ''
|
let g:airline#extensions#tabline#left_sep = ''
|
||||||
let g:airline#extensions#tabline#left_alt_sep = ''
|
let g:airline#extensions#tabline#left_alt_sep = ''
|
||||||
let g:airline_right_alt_sep = ''
|
let g:airline_right_alt_sep = ''
|
||||||
|
@ -28,7 +18,6 @@ let g:airline_left_alt_sep= ''
|
||||||
let g:airline_left_sep = ''
|
let g:airline_left_sep = ''
|
||||||
let g:airline#extensions#tabline#buffers_label = ''
|
let g:airline#extensions#tabline#buffers_label = ''
|
||||||
|
|
||||||
" short mode texts
|
|
||||||
let g:airline_mode_map = {
|
let g:airline_mode_map = {
|
||||||
\ '__' : '-',
|
\ '__' : '-',
|
||||||
\ 'n' : 'N',
|
\ 'n' : 'N',
|
||||||
|
@ -47,36 +36,24 @@ let g:airline_mode_map = {
|
||||||
|
|
||||||
let g:indent_guide_auto_colors = 1
|
let g:indent_guide_auto_colors = 1
|
||||||
let g:indent_guides_enable_on_vim_startup = 1
|
let g:indent_guides_enable_on_vim_startup = 1
|
||||||
|
let g:prosession_dir = $vimdir."/session/"
|
||||||
|
|
||||||
" no ALE gutter
|
let g:polyglot_disabled = ['cue', 'cuesheet']
|
||||||
" let g:ale_sign_column_always = 0
|
|
||||||
" let g:ale_set_signs = 0
|
|
||||||
" highlight clear ALEErrorSign
|
|
||||||
" highlight clear ALEWarningSign
|
|
||||||
|
|
||||||
" fix me, baby
|
" let g:fzf_layout = { 'window': 'enew' }
|
||||||
" let g:ale_fix_on_save = 1
|
|
||||||
|
|
||||||
" autocomplete
|
|
||||||
" let g:ale_completion_enabled = 1
|
|
||||||
" let g:ale_typescript_tslint_use_global = 1
|
|
||||||
|
|
||||||
let g:fzf_layout = { 'window': 'enew' }
|
|
||||||
|
|
||||||
" check if we're using vim as the manpage viewer before loading session plugins
|
" check if we're using vim as the manpage viewer before loading session plugins
|
||||||
if exists('asmanviewer')
|
if exists('asmanviewer')
|
||||||
let g:prosession_dir = '/dev/null'
|
let g:prosession_dir = '/dev/null'
|
||||||
else
|
else
|
||||||
Plug 'tpope/vim-obsession' " session ease-of-use
|
Plug 'tpope/vim-obsession' " session ease-of-use
|
||||||
Plug 'dhruvasagar/vim-prosession' " more session ease-of-use
|
Plug 'dhruvasagar/vim-prosession' " more session ease-of-use
|
||||||
let g:prosession_dir = '~/.config/nvim/session/'
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
Plug 'junegunn/vim-plug' " plugin manager should manage itself
|
Plug 'junegunn/vim-plug' " plugin manager should manage itself
|
||||||
Plug 'vim-airline/vim-airline' " status line
|
Plug 'vim-airline/vim-airline' " status line
|
||||||
Plug 'vim-airline/vim-airline-themes' " more minimal status line
|
Plug 'vim-airline/vim-airline-themes' " more minimal status line
|
||||||
Plug 'nathanaelkane/vim-indent-guides' " indentation guides
|
Plug 'nathanaelkane/vim-indent-guides' " indentation guides
|
||||||
" Plug 'w0rp/ale' " syntax checker
|
|
||||||
Plug 'SirVer/ultisnips' " snippet manager
|
Plug 'SirVer/ultisnips' " snippet manager
|
||||||
Plug 'junegunn/fzf', {'dir': '~/.fzf', 'do': './install --all'} " fuzzy file finding
|
Plug 'junegunn/fzf', {'dir': '~/.fzf', 'do': './install --all'} " fuzzy file finding
|
||||||
Plug 'junegunn/fzf.vim' " helpers for using fzf in vim
|
Plug 'junegunn/fzf.vim' " helpers for using fzf in vim
|
||||||
|
@ -89,7 +66,7 @@ Plug 'tmux-plugins/vim-tmux-focus-events' " allow transiti
|
||||||
Plug 'christoomey/vim-tmux-navigator' " allow transitions within tmux
|
Plug 'christoomey/vim-tmux-navigator' " allow transitions within tmux
|
||||||
Plug 'godlygeek/tabular' " align text
|
Plug 'godlygeek/tabular' " align text
|
||||||
Plug 'lytedev/vim-superman' " view man pages with vim
|
Plug 'lytedev/vim-superman' " view man pages with vim
|
||||||
Plug 'tpope/vim-surround' " quickly modify text surrounding objects
|
Plug 'machakann/vim-sandwich' " quickly modify text surrounding objects
|
||||||
Plug 'tpope/vim-speeddating' " vim knows about date-like text objects
|
Plug 'tpope/vim-speeddating' " vim knows about date-like text objects
|
||||||
Plug 'tpope/vim-fugitive' " vim git commands
|
Plug 'tpope/vim-fugitive' " vim git commands
|
||||||
Plug 'michaeljsmith/vim-indent-object' " adds an indentation level text object
|
Plug 'michaeljsmith/vim-indent-object' " adds an indentation level text object
|
||||||
|
@ -98,19 +75,22 @@ Plug 'dbakker/vim-projectroot' " adds helper fu
|
||||||
Plug 'junegunn/goyo.vim' " better distraction-free editing
|
Plug 'junegunn/goyo.vim' " better distraction-free editing
|
||||||
Plug 'tpope/vim-sleuth' " try and detect indent method
|
Plug 'tpope/vim-sleuth' " try and detect indent method
|
||||||
Plug 'editorconfig/editorconfig-vim' " loads project-specific editor settings
|
Plug 'editorconfig/editorconfig-vim' " loads project-specific editor settings
|
||||||
Plug 'sheerun/vim-polyglot' " vim plugin loader for many languages
|
|
||||||
Plug 'leafo/moonscript-vim', {'for': ['moon', 'moonscript']} " moonscript language
|
Plug 'leafo/moonscript-vim', {'for': ['moon', 'moonscript']} " moonscript language
|
||||||
Plug 'OmniSharp/omnisharp-vim', {'for': ['cs']} " C# language
|
Plug 'OmniSharp/omnisharp-vim', {'for': ['cs']} " C# language
|
||||||
" Plug 'junegunn/vim-peekaboo' " preview registers
|
|
||||||
Plug 'scrooloose/nerdtree' " file browser
|
Plug 'scrooloose/nerdtree' " file browser
|
||||||
Plug 'tpope/vim-eunuch' " unix helper commands
|
Plug 'tpope/vim-eunuch' " unix helper commands
|
||||||
|
Plug 'mbbill/undotree' " undo tree visualizer
|
||||||
|
" Plug 'junegunn/vim-peekaboo' " preview registers
|
||||||
|
|
||||||
|
" language support
|
||||||
Plug 'sheerun/vim-polyglot' " vim plugin loader for many languages
|
Plug 'sheerun/vim-polyglot' " vim plugin loader for many languages
|
||||||
Plug 'leafo/moonscript-vim', {'for': ['moon', 'moonscript']} " moonscript language
|
Plug 'leafo/moonscript-vim', {'for': ['moon', 'moonscript']} " moonscript language
|
||||||
Plug 'OmniSharp/omnisharp-vim', {'for': ['cs']} " C# language
|
Plug 'OmniSharp/omnisharp-vim', {'for': ['cs']} " C# language
|
||||||
Plug 'neoclide/coc.nvim', {'branch': 'release'} " language server completion
|
Plug 'neoclide/coc.nvim', {'branch': 'release'} " language server interface
|
||||||
Plug 'JakeBecker/elixir-ls', {'for': ['elixir', 'eelixir'], 'do': { -> g:elixirls.compile() }}
|
Plug 'JakeBecker/elixir-ls', {'for': ['elixir', 'eelixir'], 'do': { -> g:elixirls.compile() }}
|
||||||
Plug 'tpope/vim-dadbod' " databasing in vim
|
Plug 'tpope/vim-dadbod' " vim
|
||||||
Plug 'lytedev/elm-vim' " elm lang
|
Plug 'lytedev/elm-vim', {'for': ['elm']} " elm lang
|
||||||
Plug 'google/vim-jsonnet' " jsonnet
|
Plug 'google/vim-jsonnet', {'for': ['jsonnet', 'libsonnet']} " jsonnet
|
||||||
Plug 'sirtaj/vim-openscad' " openscad
|
Plug 'sirtaj/vim-openscad', {'for': ['scad']} " openscad
|
||||||
Plug 'ssh://git@git.lyte.dev:2222/lytedev/vim-lytlang.git'
|
Plug 'jjo/vim-cue'
|
||||||
|
" Plug 'ssh://git@git.lyte.dev:2222/lytedev/vim-lytlang.git'
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
scriptencoding utf8
|
scriptencoding utf-8
|
||||||
|
set fileencoding=utf8
|
||||||
|
set encoding=utf8
|
||||||
|
|
||||||
" ALE completeopt recommendation
|
" ALE completeopt recommendation
|
||||||
set completeopt=menu,menuone,preview,noselect,noinsert
|
set completeopt=menu,menuone,preview,noselect,noinsert
|
||||||
|
@ -74,12 +76,13 @@ set splitbelow " don't split top
|
||||||
set noerrorbells " shhhh, vim
|
set noerrorbells " shhhh, vim
|
||||||
set visualbell " but visual noise for alerts is ok
|
set visualbell " but visual noise for alerts is ok
|
||||||
set nobackup " sessions handle this quite nicely
|
set nobackup " sessions handle this quite nicely
|
||||||
set nowritebackup " no but really they do
|
set nowritebackup " no, but really, they do
|
||||||
set noswapfile " no seriously sessions are cool
|
set noswapfile " no, seriously, sessions are cool
|
||||||
set timeout " key combo mapping timeout
|
set timeout " key combo mapping timeout
|
||||||
set ttimeoutlen=100 " ms delay for tapping key combos
|
set ttimeoutlen=100 " ms delay for tapping key combos
|
||||||
set timeoutlen=150 " ms for key combo mapping timeout
|
set timeoutlen=150 " ms for key combo mapping timeout
|
||||||
set isfname+=32 " allow filenames to show them 32s
|
set isfname+=32 " allow filenames to show them 32s
|
||||||
|
set updatetime=300 " recommended for coc.nvim
|
||||||
|
|
||||||
" no freakin' bell
|
" no freakin' bell
|
||||||
set visualbell t_vb=
|
set visualbell t_vb=
|
||||||
|
@ -89,9 +92,6 @@ if has('autocmd')
|
||||||
augroup END
|
augroup END
|
||||||
endif
|
endif
|
||||||
|
|
||||||
" color scheme
|
|
||||||
let base16colorspace=256
|
|
||||||
set background=dark
|
|
||||||
syntax enable
|
syntax enable
|
||||||
colorscheme base16-donokai
|
colorscheme base16-donokai
|
||||||
|
|
||||||
|
@ -105,7 +105,7 @@ highlight GitGutterChangeDelete ctermbg=black guibg=black
|
||||||
hi NonText ctermfg=black guifg=black
|
hi NonText ctermfg=black guifg=black
|
||||||
|
|
||||||
set hidden " allows buffer switching without saving
|
set hidden " allows buffer switching without saving
|
||||||
set shortmess=Ia " hide vim intro, skip lots of file messages/prompts
|
set shortmess+=Ia " hide vim intro, skip lots of file messages/prompts
|
||||||
set history=1000
|
set history=1000
|
||||||
|
|
||||||
" undo files
|
" undo files
|
||||||
|
|
|
@ -16,6 +16,7 @@ alias tree='tree -Csuh'
|
||||||
alias f='fzf'
|
alias f='fzf'
|
||||||
alias cp="rsync -ah --progress"
|
alias cp="rsync -ah --progress"
|
||||||
alias year="cal $(date +%Y)"
|
alias year="cal $(date +%Y)"
|
||||||
|
alias y="year"
|
||||||
|
|
||||||
# gets the newest function for the current directory (or the specified directory
|
# gets the newest function for the current directory (or the specified directory
|
||||||
# if one is provided)
|
# if one is provided)
|
||||||
|
@ -28,7 +29,17 @@ function ltl() {
|
||||||
echo "$l"
|
echo "$l"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function ltld() {
|
||||||
|
local d="${1-$PWD}"
|
||||||
|
unset -v l
|
||||||
|
for f in "$d"/*; do
|
||||||
|
[[ $f -nt $l ]] && [[ -d $f ]] && l="$f"
|
||||||
|
done
|
||||||
|
echo "$l"
|
||||||
|
}
|
||||||
|
|
||||||
alias vltl="vim \"\$(ltl)\""
|
alias vltl="vim \"\$(ltl)\""
|
||||||
|
alias cdltl="cd \"\$(ltld)\""
|
||||||
alias ltlv="vltl"
|
alias ltlv="vltl"
|
||||||
|
|
||||||
# navigation aliases
|
# navigation aliases
|
||||||
|
@ -41,7 +52,8 @@ function c() {
|
||||||
}
|
}
|
||||||
alias cd..="cd .."
|
alias cd..="cd .."
|
||||||
alias cdd="cd \"\$DOTFILES_PATH\"" # go to dotfiles
|
alias cdd="cd \"\$DOTFILES_PATH\"" # go to dotfiles
|
||||||
alias cdc="cd \"\$XDG_CONFIG_HOME\"" # go to
|
alias cde="cd \"\$ENV_PATH\"" # go to current dotfiles...? env
|
||||||
|
alias cdc="cd \"\$XDG_CONFIG_HOME\"" # go to ~/.config
|
||||||
alias cdn="cd \"\$NOTES_PATH\""
|
alias cdn="cd \"\$NOTES_PATH\""
|
||||||
alias cdl="cd \"\$NICE_HOME/dl\""
|
alias cdl="cd \"\$NICE_HOME/dl\""
|
||||||
alias cdg="cd \"\$NICE_HOME/games\""
|
alias cdg="cd \"\$NICE_HOME/games\""
|
||||||
|
@ -58,7 +70,6 @@ alias .........="cd ../../../../../../../.."
|
||||||
|
|
||||||
# tmux aliases
|
# tmux aliases
|
||||||
# TODO: see if this can be worked around?
|
# TODO: see if this can be worked around?
|
||||||
alias tmux='TERM=screen-256color-bce tmux' # syntax higlighting for vim in tmux
|
|
||||||
alias tmnew="tmux new -s"
|
alias tmnew="tmux new -s"
|
||||||
alias tmls="tmux list-sessions"
|
alias tmls="tmux list-sessions"
|
||||||
alias tmatt="tmux attach -t"
|
alias tmatt="tmux attach -t"
|
||||||
|
@ -108,7 +119,10 @@ alias sctlu="systemctl --user"
|
||||||
alias logs="sudo journalctl"
|
alias logs="sudo journalctl"
|
||||||
alias logsr="sudo journalctl -r"
|
alias logsr="sudo journalctl -r"
|
||||||
alias logsf="sudo journalctl -f"
|
alias logsf="sudo journalctl -f"
|
||||||
|
alias bt="sudo bluetoothctl"
|
||||||
|
alias btctl="bt"
|
||||||
alias btctl="sudo bluetoothctl"
|
alias btctl="sudo bluetoothctl"
|
||||||
|
alias pbcopy="clip"
|
||||||
alias pt="htop -t" # experimental htop tree-view-by-default
|
alias pt="htop -t" # experimental htop tree-view-by-default
|
||||||
alias resrc="source \$HOME/.bashrc"
|
alias resrc="source \$HOME/.bashrc"
|
||||||
alias redshift="redshift -r -l 39.0997:-94.5786 -t 6500K:2500K"
|
alias redshift="redshift -r -l 39.0997:-94.5786 -t 6500K:2500K"
|
||||||
|
@ -119,6 +133,7 @@ alias scs="sc-im \"\$NOTES_PATH/_scratch.sc\""
|
||||||
alias disks="lsblk && df -h"
|
alias disks="lsblk && df -h"
|
||||||
alias dd="dd status=progress"
|
alias dd="dd status=progress"
|
||||||
alias wifi="sudo nmtui"
|
alias wifi="sudo nmtui"
|
||||||
|
alias pa="pulsemixer"
|
||||||
|
|
||||||
# games aliases
|
# games aliases
|
||||||
# this sometimes fixes steam dynamic library issues?
|
# this sometimes fixes steam dynamic library issues?
|
||||||
|
@ -133,3 +148,6 @@ alias mutt="neomutt"
|
||||||
|
|
||||||
# fsw aliases
|
# fsw aliases
|
||||||
alias fsw-mix-test="fsw \"mix test\" ./**/*.{ex,exs,erl,hrl,xrl,yrl}"
|
alias fsw-mix-test="fsw \"mix test\" ./**/*.{ex,exs,erl,hrl,xrl,yrl}"
|
||||||
|
|
||||||
|
# weechat aliases
|
||||||
|
alias chat="WEECHAT_PASSPHRASE=\"\$(pass config/weechat-passphrase | head -n 1)\" weechat"
|
|
@ -2,6 +2,6 @@
|
||||||
|
|
||||||
# bash_profile is executed immediately after logging in
|
# bash_profile is executed immediately after logging in
|
||||||
|
|
||||||
if [ -f ~/.bashrc ]; then
|
if [[ -f "$HOME/.bashrc" ]]; then
|
||||||
source ~/.bashrc
|
source "$HOME/.bashrc"
|
||||||
fi
|
fi
|
70
apps/shell/bash/rc
Normal file
70
apps/shell/bash/rc
Normal file
|
@ -0,0 +1,70 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
export XDG_CONFIG_HOME="$HOME/.config"
|
||||||
|
export DOTFILES_PATH="$XDG_CONFIG_HOME/dotfiles"
|
||||||
|
|
||||||
|
. "$DOTFILES_PATH/bin/prelude"
|
||||||
|
|
||||||
|
[[ ! $- == *i* ]] && return # stop parsing on a non-interactive shell
|
||||||
|
|
||||||
|
. "$DOTFILES_PATH/apps/shell/bash/aliases.bash"
|
||||||
|
. "$DOTFILES_PATH/apps/shell/bash/autocompletions"
|
||||||
|
. "$DOTFILES_PATH/apps/shell/bash/prompt"
|
||||||
|
|
||||||
|
stty -ixon # disable ctrl-s terminal freezing
|
||||||
|
bind -f "$DOTFILES_PATH/apps/shell/inputrc" # load our key
|
||||||
|
# load our vconsole colors if in a tty
|
||||||
|
if [[ "${TERM%%-*}" = 'linux' ]]; then
|
||||||
|
c="$DOTFILES_PATH/bin/lib/colors/vconsole"
|
||||||
|
[[ -s "$c" ]] && . "$c"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# prevents some Java GUI apps from not working or rendering properly due to
|
||||||
|
# using wacky window managers
|
||||||
|
export _JAVA_AWT_WM_NONREPARENTING=1
|
||||||
|
export ERL_AFLAGS="-kernel shell_history enabled -kernel shell_history_file_bytes 1024000"
|
||||||
|
has_command fd && export FZF_DEFAULT_COMMAND='fd --type f --hidden --follow --exclude .git'
|
||||||
|
export LS_COLORS='ow=01;36;40'
|
||||||
|
export LESS="-x2" # less tab size of 2 spaces
|
||||||
|
export TERMINAL="urxvtc"
|
||||||
|
export BROWSER="firefox-developer-edition"
|
||||||
|
export HISTFILESIZE="10000000" # "unlimited" history
|
||||||
|
export HISTSIZE="10000000" # "unlimited" history
|
||||||
|
export HISTCONTROL=ignoreboth # ignore duplicates and commands starting with space (" ")
|
||||||
|
shopt -s globstar # allow ** recursive wildcard globbing
|
||||||
|
# prevents binds or commands pulling from history from insta-sending, and
|
||||||
|
# instead places them in the readline for editing
|
||||||
|
shopt -s histverify
|
||||||
|
shopt -s histappend # always _append_ to bash history
|
||||||
|
shopt -s cmdhist # ensure command history is comprised of single lines
|
||||||
|
HISTIGNORE='ls:ll:la' # ignore certain commands
|
||||||
|
|
||||||
|
# set our EDITOR to neovim if we've got it
|
||||||
|
export EDITOR="vim"
|
||||||
|
if has_command nvim; then
|
||||||
|
alias vim="nvim"
|
||||||
|
alias ovim="\\vim"
|
||||||
|
export EDITOR="nvim"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# load a per-device config last so anything can be overridden
|
||||||
|
. maybe_source_env_file bashrc
|
||||||
|
. maybe_source_env_file .hidden/bashrc
|
||||||
|
|
||||||
|
# create paths we kind of expect to exist in some scripts
|
||||||
|
mkdir -p "$NOTES_PATH" "$SCROTS_PATH" "$USER_LOGS_PATH"
|
||||||
|
|
||||||
|
# open nice home instead if we're opening at home
|
||||||
|
if [ "$PWD" = "$HOME" ] || [ "$PWD" = "$NICE_HOME" ]; then
|
||||||
|
cd "$NICE_HOME" || cd || return
|
||||||
|
fi
|
||||||
|
|
||||||
|
[ -f "$HOME/.fzf.bash" ] && . "$HOME/.fzf.bash"
|
||||||
|
|
||||||
|
if [[ -d "$HOME/.asdf/" ]] && [[ -f "$HOME/.asdf/asdf.sh" ]]; then
|
||||||
|
. "$HOME/.asdf/asdf.sh"
|
||||||
|
elif [[ -d /opt/asdf-vm/ ]] && [[ -f /opt/asdf-vm/asdf.sh ]]; then
|
||||||
|
. "/opt/asdf-vm/asdf.sh"
|
||||||
|
fi
|
||||||
|
|
||||||
|
[ -f ~/.fzf.bash ] && source ~/.fzf.bash
|
2
apps/shell/fish/.gitignore
vendored
Normal file
2
apps/shell/fish/.gitignore
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
fish_variables
|
||||||
|
functions
|
184
apps/shell/fish/aliases.fish
Executable file
184
apps/shell/fish/aliases.fish
Executable file
|
@ -0,0 +1,184 @@
|
||||||
|
#!/usr/bin/env fish
|
||||||
|
|
||||||
|
# ls aliases
|
||||||
|
alias lx 'ls -lXB' # order by filetype
|
||||||
|
alias lk 'ls -lSr' # order by filesize reversed
|
||||||
|
alias lt 'ls -ltr' # order by file modified time
|
||||||
|
alias lc 'ls -ltcr' # order by filectime
|
||||||
|
alias lu 'ls -ltur' # order by file access time
|
||||||
|
alias ls 'ls -h --color --group-directories-first' # flat view w/ directories first
|
||||||
|
alias l 'ls -h --color --group-directories-first' # same as above
|
||||||
|
alias ll 'ls -lv --group-directories-first' # non-flat view
|
||||||
|
alias lm 'll | more'
|
||||||
|
alias lr 'll -R' # please don't - why is this even here...?
|
||||||
|
alias la 'll -A' # show all
|
||||||
|
|
||||||
|
# other file aliases
|
||||||
|
alias tree 'tree -Csuh'
|
||||||
|
alias f fzf
|
||||||
|
alias cp 'rsync -ah --progress'
|
||||||
|
|
||||||
|
# gets the newest file in the current directory (or the specified directory
|
||||||
|
# if one is provided)
|
||||||
|
function ltl
|
||||||
|
set d $argv[1] .
|
||||||
|
set -l l ""
|
||||||
|
for f in $d[1]/*
|
||||||
|
if test -z $l; set l $f; continue; end
|
||||||
|
if command test $f -nt $l; and test ! -d $f
|
||||||
|
set l $f
|
||||||
|
end
|
||||||
|
end
|
||||||
|
echo $l
|
||||||
|
end
|
||||||
|
|
||||||
|
function scount -d "Silent count" -w count
|
||||||
|
count $argv > /dev/null
|
||||||
|
end
|
||||||
|
|
||||||
|
function ltld
|
||||||
|
set d $argv[1] .
|
||||||
|
set -l l ""
|
||||||
|
for f in $d[1]/*
|
||||||
|
if test -z $l; set l $f; continue; end
|
||||||
|
if command test $f -nt $l; and test -d $f
|
||||||
|
set l $f
|
||||||
|
end
|
||||||
|
end
|
||||||
|
echo $l
|
||||||
|
end
|
||||||
|
|
||||||
|
alias vltl "vim (ltl)"
|
||||||
|
alias cdltl "cd (ltld)"
|
||||||
|
alias ltlv vltl
|
||||||
|
|
||||||
|
function d -w cd
|
||||||
|
if scount $argv
|
||||||
|
cd $argv || exit 1
|
||||||
|
else
|
||||||
|
cd $NICE_HOME || exit 1
|
||||||
|
end
|
||||||
|
la
|
||||||
|
end
|
||||||
|
|
||||||
|
# navigation aliases
|
||||||
|
function c -w cd
|
||||||
|
if scount $argv
|
||||||
|
cd $NICE_HOME && d $argv || exit 1
|
||||||
|
else
|
||||||
|
d $NICE_HOME
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
alias cd.. "d .."
|
||||||
|
alias cdd "d $DOTFILES_PATH" # go to dotfiles
|
||||||
|
alias cde "d $ENV_PATH" # go to env dotfiles
|
||||||
|
alias cdc "d $XDG_CONFIG_HOME" # go to ~/.config
|
||||||
|
alias cdn "d $NOTES_PATH"
|
||||||
|
alias cdl "d $NICE_HOME/dl"
|
||||||
|
alias cdg "d $NICE_HOME/games"
|
||||||
|
|
||||||
|
# quick parent-directory aliases
|
||||||
|
alias .. "d .."
|
||||||
|
alias ... "d ../.."
|
||||||
|
alias .... "d ../../.."
|
||||||
|
alias ..... "d ../../../.."
|
||||||
|
alias ...... "d ../../../../.."
|
||||||
|
alias ....... "d ../../../../../.."
|
||||||
|
alias ........ "d ../../../../../../.."
|
||||||
|
alias ......... "d ../../../../../../../.."
|
||||||
|
|
||||||
|
# tmux aliases
|
||||||
|
# TODO: see if this can be worked around?
|
||||||
|
alias tmnew "tmux new -s"
|
||||||
|
alias tmls "tmux list-sessions"
|
||||||
|
alias tmatt "tmux attach -t"
|
||||||
|
alias tu "tmux attach -t utils || tmux new -s utils"
|
||||||
|
alias tdf "tmux attach -t dotfiles || tmux new -s dotfiles -c $DOTFILES_PATH"
|
||||||
|
alias tmon "tmux attach -t monitoring || tmux new -s monitoring"
|
||||||
|
alias tcom "tmux attach -t comms || tmux new -s comms"
|
||||||
|
alias tn "tmux attach -t notes || tmux new -s notes -c $NOTES_PATH"
|
||||||
|
alias tm "tmux attach -t music || tmux new -s music"
|
||||||
|
|
||||||
|
# git aliases
|
||||||
|
# TODO: make these git aliases in the gitconfig?
|
||||||
|
function g
|
||||||
|
if scount $argv
|
||||||
|
git $argv
|
||||||
|
else
|
||||||
|
git status
|
||||||
|
end
|
||||||
|
end
|
||||||
|
alias gs "git status"
|
||||||
|
alias gd "git diff"
|
||||||
|
alias gds "git diff --staged"
|
||||||
|
# alias gdv "git dv" # TODO: what is this?
|
||||||
|
alias gpl "git pull"
|
||||||
|
alias gp "git push"
|
||||||
|
alias gpa "git push --all && git push --tags"
|
||||||
|
alias gpt "git push && git push --tags"
|
||||||
|
alias gpf "git push --force-with-lease"
|
||||||
|
alias gac "git add -A && git commit"
|
||||||
|
alias gacnv "git add -A && git commit --no-verify"
|
||||||
|
alias gsur "git submodule update --remote"
|
||||||
|
alias glf "git ls-files"
|
||||||
|
alias gl "git log --pretty=format:\"%h %ad%x09%an%x09%s\" --date=short"
|
||||||
|
|
||||||
|
# docker aliases
|
||||||
|
alias dlf "docker logs --tail=500 -f"
|
||||||
|
alias dclf "docker-compose logs --tail=500 -f"
|
||||||
|
alias ctop "docker run --rm -ti -v /var/run/docker.sock:/var/run/docker.sock quay.io/vektorlab/ctop:latest"
|
||||||
|
|
||||||
|
# misc aliases
|
||||||
|
alias p "ping 8.8.8.8"
|
||||||
|
alias C "clear && clear"
|
||||||
|
alias r "ranger"
|
||||||
|
alias rn "/usr/bin/watch -n 1"
|
||||||
|
alias sctl "sudo systemctl"
|
||||||
|
alias sctlu "systemctl --user"
|
||||||
|
alias logs "sudo journalctl"
|
||||||
|
alias logsr "sudo journalctl -r"
|
||||||
|
alias logsf "sudo journalctl -f"
|
||||||
|
alias bt "sudo bluetoothctl"
|
||||||
|
alias btctl "bt"
|
||||||
|
alias btctl "sudo bluetoothctl"
|
||||||
|
alias pbcopy "clip"
|
||||||
|
alias pt "htop -t" # experimental htop tree-view-by-default
|
||||||
|
alias resrc "source $XDG_CONFIG_HOME/fish/config.fish"
|
||||||
|
alias redshift "redshift -r -l 39.0997:-94.5786 -t 6500K:2500K"
|
||||||
|
alias gpmdpe "electron --app=/usr/share/gpmdp/resources/app.asar"
|
||||||
|
alias t "task"
|
||||||
|
alias sc "sc-im"
|
||||||
|
alias scs "sc-im $NOTES_PATH/_scratch.sc"
|
||||||
|
alias disks "lsblk && df -h"
|
||||||
|
alias dd "dd status=progress"
|
||||||
|
alias wifi "sudo nmtui"
|
||||||
|
alias year 'cal (date +%Y)'
|
||||||
|
alias y year
|
||||||
|
alias pa pulsemixer
|
||||||
|
|
||||||
|
# games aliases
|
||||||
|
# this sometimes fixes steam dynamic library issues?
|
||||||
|
alias lsteam "env LD_PRELOAD='/usr/$LIB/libstdc++.so.6 /usr/$LIB/libgcc_s.so.1 /usr/$LIB/libxcb.so.1 /usr/$LIB/libgpg-error.so' steam"
|
||||||
|
|
||||||
|
# override the man commands with vim
|
||||||
|
alias _man "\\man"
|
||||||
|
alias man "vman"
|
||||||
|
|
||||||
|
# neomutt is better
|
||||||
|
alias mutt "neomutt"
|
||||||
|
alias mail "mutt"
|
||||||
|
|
||||||
|
# fsw aliases
|
||||||
|
alias fsw-mix-test 'fsw "mix test" ./**/*.{ex,exs,erl,hrl,xrl,yrl}'
|
||||||
|
|
||||||
|
function field
|
||||||
|
not scount $argv && echo "No field index provided"; exit 1
|
||||||
|
awk "{print \$$argv[1]}"
|
||||||
|
end
|
||||||
|
|
||||||
|
# weechat aliases
|
||||||
|
function chat
|
||||||
|
set -l pass (pass config/weechat-passphrase | head -n 1)
|
||||||
|
env WEECHAT_PASSPHRASE=$pass weechat
|
||||||
|
end
|
33
apps/shell/fish/colors.fish
Executable file
33
apps/shell/fish/colors.fish
Executable file
|
@ -0,0 +1,33 @@
|
||||||
|
#!/usr/bin/env fish
|
||||||
|
|
||||||
|
# TODO: once, I could set backgrounds
|
||||||
|
|
||||||
|
# unused since we handle it ourselves in fish_prompt
|
||||||
|
set -U fish_color_cwd magenta
|
||||||
|
set -U fish_color_cwd_root red
|
||||||
|
set -U fish_color_host normal
|
||||||
|
set -U fish_color_user blue
|
||||||
|
|
||||||
|
set -U fish_color_normal normal # default color
|
||||||
|
set -U fish_color_command white # base command being run (>ls< -la)
|
||||||
|
set -U fish_color_param white # command's parameters
|
||||||
|
set -U fish_color_end green # command delimiter/separators (; and &)
|
||||||
|
set -U fish_color_error red # color of errors
|
||||||
|
set -U fish_color_escape yellow # color of escape codes (\n, \x2d, etc.)
|
||||||
|
set -U fish_color_operator blue # expansion operators (~, *)
|
||||||
|
set -U fish_color_quote yellow # quoted expressions (ls >"/tmp/test dir"<)
|
||||||
|
set -U fish_color_redirection blue # redirection operators (|, >, etc.)
|
||||||
|
set -U fish_color_cancel 333 brblack # sigint (cancel current comment) at prompt (^C)
|
||||||
|
set -U fish_color_autosuggestion 666 brblack # as-you-type suggestions
|
||||||
|
set -U fish_color_match blue # matching parens and the like
|
||||||
|
set -U fish_color_search_match white\x1e\x2d\x2dbackground\x3d333 # selected pager item
|
||||||
|
set -U fish_color_selection blue # vi mode visual selection (only fg)
|
||||||
|
set -U fish_color_valid_path yellow # if an argument is a valid path (only -u?)
|
||||||
|
set -U fish_color_comment 666 brblack # comments like this one!
|
||||||
|
|
||||||
|
# pager shown when completing
|
||||||
|
set -U fish_pager_color_completion white # main color for pager
|
||||||
|
set -U fish_pager_color_description magenta # color for meta description
|
||||||
|
set -U fish_pager_color_prefix blue # the string being completed
|
||||||
|
set -U fish_pager_color_progress white\x1e\x2d\x2dbackground\x3d333 # status indicator at the bottom
|
||||||
|
# set -U fish_pager_color_secondary \x2d\x2dbackground\x3d181818 # alternating rows
|
61
apps/shell/fish/config.fish
Executable file
61
apps/shell/fish/config.fish
Executable file
|
@ -0,0 +1,61 @@
|
||||||
|
#!/usr/bin/env fish
|
||||||
|
|
||||||
|
set -Ux XDG_CONFIG_HOME $HOME/.config
|
||||||
|
set -Ux DOTFILES_PATH $XDG_CONFIG_HOME/dotfiles
|
||||||
|
set -Ux ENV_PATH $HOME/.env
|
||||||
|
|
||||||
|
function has_command; command -v $argv[1] 2>&1 >/dev/null; end
|
||||||
|
|
||||||
|
source $DOTFILES_PATH/apps/shell/fish/paths.fish
|
||||||
|
|
||||||
|
status --is-interactive || exit
|
||||||
|
|
||||||
|
for f in key-bindings colors prompt aliases
|
||||||
|
source $DOTFILES_PATH/apps/shell/fish/$f.fish
|
||||||
|
end
|
||||||
|
|
||||||
|
set -Ux _JAVA_AWT_WM_NONREPARENTING 1
|
||||||
|
set -Ux TERMINAL kitty
|
||||||
|
set -Ux BROWSER firefox-developer-edition
|
||||||
|
set -Ux ERL_AFLAGS "-kernel shell_history enabled -kernel shell_history_file_bytes 1024000" # iex history
|
||||||
|
|
||||||
|
# set our EDITOR to neovim if we've got it
|
||||||
|
set -Ux EDITOR vim
|
||||||
|
if has_command nvim
|
||||||
|
alias vim nvim
|
||||||
|
alias ovim 'command vim'
|
||||||
|
set -Ux EDITOR nvim
|
||||||
|
end
|
||||||
|
|
||||||
|
# more sane ls colors
|
||||||
|
set -Ux LS_COLORS 'ow=01;36;40'
|
||||||
|
|
||||||
|
has_command fd && set -Ux FZF_DEFAULT_COMMAND 'fd --type f --hidden --follow --exclude .git'
|
||||||
|
|
||||||
|
test -f ~/.fzf/shell/key-bindings.fish && source ~/.fzf/shell/key-bindings.fish
|
||||||
|
|
||||||
|
function fish_greeting
|
||||||
|
fortune
|
||||||
|
end
|
||||||
|
|
||||||
|
# we assume the user uses "$HOME" to just store their mess of dotfiles and other
|
||||||
|
# nonsense that clutters it up and that they have a preferred starting
|
||||||
|
# directory where they keep the stuff they actually care about
|
||||||
|
# we only do this if the user is opening a shell at $HOME
|
||||||
|
if test $PWD = $HOME; or test $PWD = $NICE_HOME;
|
||||||
|
cd $NICE_HOME || cd
|
||||||
|
end
|
||||||
|
|
||||||
|
if test -f $HOME/.asdf/asdf.fish
|
||||||
|
source $HOME/.asdf/asdf.fish
|
||||||
|
else if test -f /opt/asdf-vm/asdf.fish
|
||||||
|
source /opt/asdf-vm/asdf.fish
|
||||||
|
end
|
||||||
|
|
||||||
|
# load a per-device config last so anything can be overridden
|
||||||
|
for cf in config.fish .hidden/config.fish
|
||||||
|
set f $ENV_PATH/$cf
|
||||||
|
test -f $f && source $f
|
||||||
|
end
|
||||||
|
|
||||||
|
mkdir -p $NOTES_PATH $USER_LOGS_PATH $SCROTS_PATH
|
24
apps/shell/fish/key-bindings.fish
Executable file
24
apps/shell/fish/key-bindings.fish
Executable file
|
@ -0,0 +1,24 @@
|
||||||
|
#!/usr/bin/env fish
|
||||||
|
|
||||||
|
function fish_user_key_bindings
|
||||||
|
fzf_key_bindings
|
||||||
|
fish_vi_key_bindings insert --no-erase
|
||||||
|
|
||||||
|
set vi_esc "if commandline -P; commandline -f cancel; else; set fish_bind_mode default; commandline -f backward-char force-repaint; end"
|
||||||
|
|
||||||
|
bind -M insert jk $vi_esc
|
||||||
|
bind -M insert Jk $vi_esc
|
||||||
|
bind -M insert JK $vi_esc
|
||||||
|
bind -M insert jj $vi_esc
|
||||||
|
bind -M insert Jj $vi_esc
|
||||||
|
bind -M insert JJ $vi_esc
|
||||||
|
bind -M insert JJ $vi_esc
|
||||||
|
|
||||||
|
bind -M insert \cp up-or-search
|
||||||
|
bind -M insert \cn down-or-search
|
||||||
|
bind -M insert \cs fzf-cd-widget
|
||||||
|
bind -M insert \ce end-of-line
|
||||||
|
bind -M insert \ca beginning-of-line
|
||||||
|
bind -M insert \cw forward-word
|
||||||
|
# bind -M insert \t forward-word
|
||||||
|
end
|
45
apps/shell/fish/paths.fish
Executable file
45
apps/shell/fish/paths.fish
Executable file
|
@ -0,0 +1,45 @@
|
||||||
|
#!/usr/bin/env fish
|
||||||
|
|
||||||
|
set -U fish_user_paths \
|
||||||
|
$HOME/.go \
|
||||||
|
$GOPATH/bin \
|
||||||
|
$DOTFILES_PATH/bin \
|
||||||
|
$ENV_PATH/bin \
|
||||||
|
$HOME/.bin \
|
||||||
|
$HOME/.cargo/bin \
|
||||||
|
$HOME/.yarn/bin
|
||||||
|
|
||||||
|
test -d $HOME/.local/bin && set -U fish_user_paths $HOME/.local/bin $fish_user_paths
|
||||||
|
test -d $HOME/.bin && set -U fish_user_paths $HOME/.local/bin $fish_user_paths
|
||||||
|
|
||||||
|
has_command python && set -U fish_user_paths (python -m site --user-base)"/bin" $fish_user_paths
|
||||||
|
has_command ruby && set -U fish_user_paths (ruby -e 'print Gem.user_dir')"/bin" $fish_user_paths
|
||||||
|
|
||||||
|
if test (dirname (basename $HOME)) = $USER
|
||||||
|
set -Ux NICE_HOME $HOME
|
||||||
|
else
|
||||||
|
set -Ux NICE_HOME /home/$USER
|
||||||
|
end
|
||||||
|
|
||||||
|
for p in $NICE_HOME $HOME $ENV_PATH
|
||||||
|
test -f $p/.nice_home && set -Ux NICE_HOME (cat $p/.nice_home)
|
||||||
|
end
|
||||||
|
|
||||||
|
set -Ux NOTES_PATH $NICE_HOME/doc/notes
|
||||||
|
set -Ux SCROTS_PATH $NICE_HOME/img/scrots
|
||||||
|
set -Ux USER_LOGS_PATH $NICE_HOME/doc/logs
|
||||||
|
|
||||||
|
set -Ux XDG_DESKTOP_DIR $HOME/desktop
|
||||||
|
set -Ux XDG_PUBLICSHARE_DIR $HOME/public
|
||||||
|
set -Ux XDG_TEMPLATES_DIR $HOME/templates
|
||||||
|
|
||||||
|
set -Ux XDG_DOCUMENTS_DIR $NICE_HOME/doc
|
||||||
|
set -Ux XDG_DOWNLOAD_DIR $NICE_HOME/dl
|
||||||
|
set -Ux XDG_MUSIC_DIR $NICE_HOME/music
|
||||||
|
set -Ux XDG_PICTURES_DIR $NICE_HOME/img
|
||||||
|
set -Ux XDG_VIDEOS_DIR $NICE_HOME/video
|
||||||
|
set -Ux XDG_GAMES_DIR $NICE_HOME/games
|
||||||
|
|
||||||
|
set -Ux NOTES_PATH $XDG_DOCUMENTS_DIR/notes
|
||||||
|
set -Ux USER_LOGS_PATH $XDG_DOCUMENTS_DIR/logs
|
||||||
|
set -Ux SCROTS_PATH $XDG_PICTURES_DIR/scrots
|
44
apps/shell/fish/prompt.fish
Executable file
44
apps/shell/fish/prompt.fish
Executable file
|
@ -0,0 +1,44 @@
|
||||||
|
#!/usr/bin/env fish
|
||||||
|
|
||||||
|
# TODO: if root, background instead?
|
||||||
|
|
||||||
|
set MAX_PATH_PIECE_CHARS $BASH_PROMPT_MAX_PATH_PIECE_CHARS 3
|
||||||
|
|
||||||
|
# prompt rendering functions
|
||||||
|
function preprocess_pwd
|
||||||
|
test (pwd) = / && echo "/" && return 1
|
||||||
|
test (pwd) = $NICE_HOME && echo "~" && return 0
|
||||||
|
# with ellipsis
|
||||||
|
#echo "$(<<< "$p" cut -c2- | awk '{split($0,p,"/");for(k in p){if(k==length(p)){printf "/%s",p[k]}else{if(length(p[k])>'"$((MAX_PATH_PIECE_CHARS+1))"'){printf "/%.'"$((MAX_PATH_PIECE_CHARS))"'s…",p[k]}else{printf "/%s",p[k]}}}}')"
|
||||||
|
# without ellipsis
|
||||||
|
echo (pwd) | cut -c2- | awk '{split($0,p,"/");for(k in p){if(k==length(p)){printf "/%s",p[k]}else{printf "/%.'$MAX_PATH_PIECE_CHARS[1]'s",p[k]}}}'
|
||||||
|
end
|
||||||
|
|
||||||
|
function fish_prompt
|
||||||
|
if test $status -eq 0
|
||||||
|
set_color blue
|
||||||
|
else
|
||||||
|
set_color red
|
||||||
|
end
|
||||||
|
printf $USER"@"$hostname" "
|
||||||
|
set_color magenta
|
||||||
|
printf (preprocess_pwd)" "
|
||||||
|
end
|
||||||
|
|
||||||
|
function fish_mode_prompt; end
|
||||||
|
|
||||||
|
# function fish_right_prompt
|
||||||
|
# set_color brblack
|
||||||
|
# switch $fish_bind_mode
|
||||||
|
# case default
|
||||||
|
# echo 'N'
|
||||||
|
# case insert
|
||||||
|
# echo 'I'
|
||||||
|
# case replace_one
|
||||||
|
# echo 'R'
|
||||||
|
# case replace
|
||||||
|
# echo 'R'
|
||||||
|
# case visual
|
||||||
|
# echo 'V'
|
||||||
|
# end
|
||||||
|
# end
|
|
@ -4,23 +4,25 @@ set -g prefix C-s
|
||||||
bind-key s send-prefix
|
bind-key s send-prefix
|
||||||
|
|
||||||
# reload tmux.conf
|
# reload tmux.conf
|
||||||
bind-key T source-file ~/.tmux.conf \; display-message "source-file done"
|
bind-key T source-file "$HOME/.tmux.conf" \; display-message "source-file done"
|
||||||
unbind r
|
unbind r
|
||||||
bind r source-file ~/.tmux.conf
|
bind r source-file "$HOME/.tmux.conf"
|
||||||
|
|
||||||
|
# set -as terminal-overrides ',xterm*:smxx=\E[9m'
|
||||||
|
set -g default-terminal "screen-256color"
|
||||||
|
|
||||||
# sane defaults
|
# sane defaults
|
||||||
set -g default-terminal "tmux-256color"
|
set -g mouse on
|
||||||
set-option -g mouse on
|
|
||||||
|
|
||||||
# honestly not exactly sure?
|
# honestly not exactly sure?
|
||||||
# set -sg escape-time 1
|
# set -sg escape-time 1
|
||||||
set -sg escape-time 0
|
set -g escape-time 0
|
||||||
|
|
||||||
# show window activity
|
# show window activity
|
||||||
# TODO: this needs to be properly setup
|
# TODO: this needs to be properly setup - presumably with tmux-session-list
|
||||||
set-window-option -g monitor-activity on
|
setw -g monitor-activity on
|
||||||
set-window-option -g visual-bell on
|
setw -g visual-bell on
|
||||||
set-window-option -g bell-action other
|
setw -g bell-action other
|
||||||
|
|
||||||
# common window sizes
|
# common window sizes
|
||||||
bind-key W resize-pane -x 100
|
bind-key W resize-pane -x 100
|
||||||
|
@ -36,7 +38,7 @@ bind-key h split-window
|
||||||
|
|
||||||
# show tmux status bar by default with (C-s, H) to toggle it
|
# show tmux status bar by default with (C-s, H) to toggle it
|
||||||
set -g status on
|
set -g status on
|
||||||
set-option -g history-limit 102400000
|
set -g history-limit 102400000
|
||||||
bind-key H set -s status
|
bind-key H set -s status
|
||||||
|
|
||||||
# simple session switching
|
# simple session switching
|
||||||
|
@ -44,13 +46,14 @@ bind-key j switch-client -p
|
||||||
bind-key h switch-client -p
|
bind-key h switch-client -p
|
||||||
bind-key k switch-client -n
|
bind-key k switch-client -n
|
||||||
bind-key l switch-client -n
|
bind-key l switch-client -n
|
||||||
|
# bind s run-shell "tmux new-window sh -c '$DOTFILES_PATH/bin/tmuxswitcher'"
|
||||||
bind s run-shell "tmux new-window 'sh -c ~/.config/dotfiles/bin/tmuxswitcher'"
|
bind s run-shell "tmux new-window 'sh -c ~/.config/dotfiles/bin/tmuxswitcher'"
|
||||||
|
|
||||||
# reset the working directory of the current session
|
# reset the working directory of the current session
|
||||||
bind-key P attach-session -t . -c '#{pane_current_path}' \; display-message 'Reset session dir to #{pane_current_path}'
|
bind-key P attach-session -t . -c '#{pane_current_path}' \; display-message 'Reset session dir to #{pane_current_path}'
|
||||||
|
|
||||||
# status bar and messages
|
# status bar and messages
|
||||||
set-option -g status-position bottom
|
set -g status-position bottom
|
||||||
set -g status-bg colour0
|
set -g status-bg colour0
|
||||||
set -g status-fg colour8
|
set -g status-fg colour8
|
||||||
set -g message-style 'fg=colour7 bg=colour18'
|
set -g message-style 'fg=colour7 bg=colour18'
|
||||||
|
@ -58,9 +61,9 @@ set -g status-interval 5
|
||||||
set -g status-right-length 80
|
set -g status-right-length 80
|
||||||
set -g status-right "#[fg=colour4]#W#[fg=default]#[bg=default] #H"
|
set -g status-right "#[fg=colour4]#W#[fg=default]#[bg=default] #H"
|
||||||
set -g status-left-length 200
|
set -g status-left-length 200
|
||||||
set -g status-left "#[fg=colour7]#(~/.config/dotfiles/bin/tmux-session-list #S)"
|
set -g status-left "#[fg=colour7]#(tmux-session-list #S)"
|
||||||
|
|
||||||
bind-key O run-shell "~/.config/dotfiles/bin/tmux-save-buffer #S" \; display-message "Saved buffer to ~/<date>.tmux-buffer.log"
|
bind-key O display-message "#(tmux-save-buffer #S)"
|
||||||
|
|
||||||
# pane split line colors
|
# pane split line colors
|
||||||
set -g pane-active-border-style bg=black,fg=blue
|
set -g pane-active-border-style bg=black,fg=blue
|
||||||
|
@ -71,10 +74,10 @@ set -g clock-mode-colour colour8
|
||||||
|
|
||||||
# windows (which I don't use much...?)
|
# windows (which I don't use much...?)
|
||||||
# TODO: do I have a use case for windows?
|
# TODO: do I have a use case for windows?
|
||||||
set-window-option -g window-status-current-format ''
|
setw -g window-status-current-format ''
|
||||||
|
|
||||||
# vim copying
|
# vim copying
|
||||||
set-window-option -g mode-keys vi
|
setw -g mode-keys vi
|
||||||
|
|
||||||
# 1-based indexing for key binding simplicity
|
# 1-based indexing for key binding simplicity
|
||||||
set -g base-index 1
|
set -g base-index 1
|
||||||
|
@ -133,21 +136,20 @@ set -g @resurrect-save 'C-v'
|
||||||
set -g @resurrect-restore 'R'
|
set -g @resurrect-restore 'R'
|
||||||
|
|
||||||
# initialize tmux plugin manager
|
# initialize tmux plugin manager
|
||||||
run '~/.tmux/plugins/tpm/tpm'
|
run '$HOME/.tmux/plugins/tpm/tpm'
|
||||||
|
|
||||||
# attempt at integrating nested tmux sessions nicely
|
# attempt at integrating nested tmux sessions nicely
|
||||||
bind -T root F12 \
|
# bind -T root F12 \
|
||||||
set prefix None \;\
|
# set prefix None \;\
|
||||||
set key-table off \;\
|
# set key-table off \;\
|
||||||
set status off \
|
# set status off \
|
||||||
if -F '#{pane_in_mode}' 'send-keys -X cancel' \;\
|
# if -F '#{pane_in_mode}' 'send-keys -X cancel' \;\
|
||||||
refresh-client -S \;\
|
# refresh-client -S \;\
|
||||||
|
|
||||||
bind -T off F12 \
|
# bind -T off F12 \
|
||||||
set -u prefix \;\
|
# set -u prefix \;\
|
||||||
set -u key-table \;\
|
# set -u key-table \;\
|
||||||
set status on \;\
|
# set status on \;\
|
||||||
refresh-client -S
|
# refresh-client -S
|
||||||
|
|
||||||
unbind-key C-p
|
unbind-key C-p
|
||||||
|
|
8
apps/shell/user-dirs
Normal file
8
apps/shell/user-dirs
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
XDG_DESKTOP_DIR="$HOME/desktop"
|
||||||
|
XDG_DOCUMENTS_DIR="$HOME/../doc"
|
||||||
|
XDG_DOWNLOAD_DIR="$HOME/../dl"
|
||||||
|
XDG_MUSIC_DIR="$HOME/../music"
|
||||||
|
XDG_PICTURES_DIR="$HOME/../img"
|
||||||
|
XDG_PUBLICSHARE_DIR="$HOME/public"
|
||||||
|
XDG_TEMPLATES_DIR="$HOME/templates"
|
||||||
|
XDG_VIDEOS_DIR="$HOME/../video"
|
1
apps/tmpfiles/disable-lid-wakeup
Normal file
1
apps/tmpfiles/disable-lid-wakeup
Normal file
|
@ -0,0 +1 @@
|
||||||
|
w /proc/acpi/wakeup - - - - LID
|
2
apps/udev-rules/lowbat
Normal file
2
apps/udev-rules/lowbat
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
# Suspend the system when battery level drops to 3% or lower
|
||||||
|
SUBSYSTEM=="power_supply", ATTR{status}=="Discharging", ATTR{capacity}=="[0-5]", RUN+="/usr/bin/systemctl hibernate"
|
1
apps/udev-rules/wifi-powersave
Normal file
1
apps/udev-rules/wifi-powersave
Normal file
|
@ -0,0 +1 @@
|
||||||
|
ACTION=="add", SUBSYSTEM=="net", KERNEL=="wl*", RUN+="/usr/bin/iw dev $name set power_save on"
|
21
apps/weechat/.gitignore
vendored
21
apps/weechat/.gitignore
vendored
|
@ -1,2 +1,19 @@
|
||||||
*
|
/*
|
||||||
!.gitignore
|
!/alias.conf
|
||||||
|
!/buflist.conf
|
||||||
|
!/charset.conf
|
||||||
|
!/exec.conf
|
||||||
|
!/fifo.conf
|
||||||
|
!/fset.conf
|
||||||
|
!/irc.conf
|
||||||
|
!/logger.conf
|
||||||
|
!/lua.conf
|
||||||
|
!/perl.conf
|
||||||
|
!/python.conf
|
||||||
|
!/relay.conf
|
||||||
|
!/script.conf
|
||||||
|
!/spell.conf
|
||||||
|
!/tcl.conf
|
||||||
|
!/trigger.conf
|
||||||
|
!/weechat.conf
|
||||||
|
!/xfer.conf
|
||||||
|
|
47
apps/weechat/alias.conf
Normal file
47
apps/weechat/alias.conf
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
#
|
||||||
|
# weechat -- alias.conf
|
||||||
|
#
|
||||||
|
# WARNING: It is NOT recommended to edit this file by hand,
|
||||||
|
# especially if WeeChat is running.
|
||||||
|
#
|
||||||
|
# Use /set or similar command to change settings in WeeChat.
|
||||||
|
#
|
||||||
|
# For more info, see: https://weechat.org/doc/quickstart
|
||||||
|
#
|
||||||
|
|
||||||
|
[cmd]
|
||||||
|
AAWAY = "allserv /away"
|
||||||
|
ANICK = "allserv /nick"
|
||||||
|
BEEP = "print -beep"
|
||||||
|
BYE = "quit"
|
||||||
|
C = "buffer clear"
|
||||||
|
CHAT = "dcc chat"
|
||||||
|
CL = "buffer clear"
|
||||||
|
CLOSE = "buffer close"
|
||||||
|
EXIT = "quit"
|
||||||
|
IG = "ignore"
|
||||||
|
J = "join"
|
||||||
|
K = "kick"
|
||||||
|
KB = "kickban"
|
||||||
|
LEAVE = "part"
|
||||||
|
M = "msg"
|
||||||
|
MSGBUF = "command -buffer $1 * /input send $2-"
|
||||||
|
MUB = "unban *"
|
||||||
|
N = "names"
|
||||||
|
Q = "query"
|
||||||
|
REDRAW = "window refresh"
|
||||||
|
SAY = "msg *"
|
||||||
|
SIGNOFF = "quit"
|
||||||
|
T = "topic"
|
||||||
|
UB = "unban"
|
||||||
|
UMODE = "mode $nick"
|
||||||
|
V = "command core version"
|
||||||
|
W = "who"
|
||||||
|
WC = "window close"
|
||||||
|
WI = "whois"
|
||||||
|
WII = "whois $1 $1"
|
||||||
|
WM = "window merge"
|
||||||
|
WW = "whowas"
|
||||||
|
|
||||||
|
[completion]
|
||||||
|
MSGBUF = "%(buffers_plugins_names)"
|
39
apps/weechat/buflist.conf
Normal file
39
apps/weechat/buflist.conf
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
#
|
||||||
|
# weechat -- buflist.conf
|
||||||
|
#
|
||||||
|
# WARNING: It is NOT recommended to edit this file by hand,
|
||||||
|
# especially if WeeChat is running.
|
||||||
|
#
|
||||||
|
# Use /set or similar command to change settings in WeeChat.
|
||||||
|
#
|
||||||
|
# For more info, see: https://weechat.org/doc/quickstart
|
||||||
|
#
|
||||||
|
|
||||||
|
[look]
|
||||||
|
add_newline = on
|
||||||
|
auto_scroll = 50
|
||||||
|
display_conditions = "${buffer.hidden}==0"
|
||||||
|
enabled = on
|
||||||
|
mouse_jump_visited_buffer = off
|
||||||
|
mouse_move_buffer = on
|
||||||
|
mouse_wheel = on
|
||||||
|
nick_prefix = off
|
||||||
|
nick_prefix_empty = on
|
||||||
|
signals_refresh = ""
|
||||||
|
sort = "number,-active"
|
||||||
|
|
||||||
|
[format]
|
||||||
|
buffer = "${format_number}${indent}${format_nick_prefix}${color_hotlist}${format_name}"
|
||||||
|
buffer_current = "${color:,blue}${format_buffer}"
|
||||||
|
hotlist = " ${color:green}(${hotlist}${color:green})"
|
||||||
|
hotlist_highlight = "${color:magenta}"
|
||||||
|
hotlist_low = "${color:white}"
|
||||||
|
hotlist_message = "${color:brown}"
|
||||||
|
hotlist_none = "${color:default}"
|
||||||
|
hotlist_private = "${color:green}"
|
||||||
|
hotlist_separator = "${color:default},"
|
||||||
|
indent = " "
|
||||||
|
lag = " ${color:green}[${color:brown}${lag}${color:green}]"
|
||||||
|
name = "${name}"
|
||||||
|
nick_prefix = "${color_nick_prefix}${nick_prefix}"
|
||||||
|
number = "${color:green}${number}${if:${number_displayed}?.: }"
|
18
apps/weechat/charset.conf
Normal file
18
apps/weechat/charset.conf
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
#
|
||||||
|
# weechat -- charset.conf
|
||||||
|
#
|
||||||
|
# WARNING: It is NOT recommended to edit this file by hand,
|
||||||
|
# especially if WeeChat is running.
|
||||||
|
#
|
||||||
|
# Use /set or similar command to change settings in WeeChat.
|
||||||
|
#
|
||||||
|
# For more info, see: https://weechat.org/doc/quickstart
|
||||||
|
#
|
||||||
|
|
||||||
|
[default]
|
||||||
|
decode = "iso-8859-1"
|
||||||
|
encode = ""
|
||||||
|
|
||||||
|
[decode]
|
||||||
|
|
||||||
|
[encode]
|
19
apps/weechat/exec.conf
Normal file
19
apps/weechat/exec.conf
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
#
|
||||||
|
# weechat -- exec.conf
|
||||||
|
#
|
||||||
|
# WARNING: It is NOT recommended to edit this file by hand,
|
||||||
|
# especially if WeeChat is running.
|
||||||
|
#
|
||||||
|
# Use /set or similar command to change settings in WeeChat.
|
||||||
|
#
|
||||||
|
# For more info, see: https://weechat.org/doc/quickstart
|
||||||
|
#
|
||||||
|
|
||||||
|
[command]
|
||||||
|
default_options = ""
|
||||||
|
purge_delay = 0
|
||||||
|
shell = "${env:SHELL}"
|
||||||
|
|
||||||
|
[color]
|
||||||
|
flag_finished = lightred
|
||||||
|
flag_running = lightgreen
|
14
apps/weechat/fifo.conf
Normal file
14
apps/weechat/fifo.conf
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
#
|
||||||
|
# weechat -- fifo.conf
|
||||||
|
#
|
||||||
|
# WARNING: It is NOT recommended to edit this file by hand,
|
||||||
|
# especially if WeeChat is running.
|
||||||
|
#
|
||||||
|
# Use /set or similar command to change settings in WeeChat.
|
||||||
|
#
|
||||||
|
# For more info, see: https://weechat.org/doc/quickstart
|
||||||
|
#
|
||||||
|
|
||||||
|
[file]
|
||||||
|
enabled = on
|
||||||
|
path = "%h/weechat_fifo"
|
95
apps/weechat/fset.conf
Normal file
95
apps/weechat/fset.conf
Normal file
|
@ -0,0 +1,95 @@
|
||||||
|
#
|
||||||
|
# weechat -- fset.conf
|
||||||
|
#
|
||||||
|
# WARNING: It is NOT recommended to edit this file by hand,
|
||||||
|
# especially if WeeChat is running.
|
||||||
|
#
|
||||||
|
# Use /set or similar command to change settings in WeeChat.
|
||||||
|
#
|
||||||
|
# For more info, see: https://weechat.org/doc/quickstart
|
||||||
|
#
|
||||||
|
|
||||||
|
[look]
|
||||||
|
auto_unmark = off
|
||||||
|
condition_catch_set = "${count} >= 1"
|
||||||
|
export_help_default = on
|
||||||
|
format_number = 1
|
||||||
|
marked_string = "*"
|
||||||
|
scroll_horizontal = 10
|
||||||
|
show_plugins_desc = off
|
||||||
|
sort = "~name"
|
||||||
|
unmarked_string = " "
|
||||||
|
use_color_value = off
|
||||||
|
use_keys = on
|
||||||
|
use_mute = off
|
||||||
|
|
||||||
|
[format]
|
||||||
|
export_help = "# ${description2}"
|
||||||
|
export_option = "/set ${name} ${quoted_value}"
|
||||||
|
export_option_null = "/unset ${name}"
|
||||||
|
option1 = ""
|
||||||
|
option2 = "${marked} ${name} ${type} ${value2}${newline} ${empty_name} ${_default_value}${color:darkgray} -- ${min}..${max}${newline} ${empty_name} ${description}"
|
||||||
|
|
||||||
|
[color]
|
||||||
|
default_value = default
|
||||||
|
default_value_selected = white
|
||||||
|
description = default
|
||||||
|
description_selected = white
|
||||||
|
file = default
|
||||||
|
file_changed = brown
|
||||||
|
file_changed_selected = yellow
|
||||||
|
file_selected = white
|
||||||
|
help_default_value = white
|
||||||
|
help_description = default
|
||||||
|
help_name = white
|
||||||
|
help_quotes = darkgray
|
||||||
|
help_values = default
|
||||||
|
index = cyan
|
||||||
|
index_selected = lightcyan
|
||||||
|
line_marked_bg1 = default
|
||||||
|
line_marked_bg2 = default
|
||||||
|
line_selected_bg1 = blue
|
||||||
|
line_selected_bg2 = red
|
||||||
|
marked = brown
|
||||||
|
marked_selected = yellow
|
||||||
|
max = default
|
||||||
|
max_selected = white
|
||||||
|
min = default
|
||||||
|
min_selected = white
|
||||||
|
name = default
|
||||||
|
name_changed = brown
|
||||||
|
name_changed_selected = yellow
|
||||||
|
name_selected = white
|
||||||
|
option = default
|
||||||
|
option_changed = brown
|
||||||
|
option_changed_selected = yellow
|
||||||
|
option_selected = white
|
||||||
|
parent_name = default
|
||||||
|
parent_name_selected = white
|
||||||
|
parent_value = cyan
|
||||||
|
parent_value_selected = lightcyan
|
||||||
|
quotes = darkgray
|
||||||
|
quotes_changed = default
|
||||||
|
quotes_changed_selected = white
|
||||||
|
quotes_selected = default
|
||||||
|
section = default
|
||||||
|
section_changed = brown
|
||||||
|
section_changed_selected = yellow
|
||||||
|
section_selected = white
|
||||||
|
string_values = default
|
||||||
|
string_values_selected = white
|
||||||
|
title_count_options = cyan
|
||||||
|
title_current_option = lightcyan
|
||||||
|
title_filter = yellow
|
||||||
|
title_marked_options = lightgreen
|
||||||
|
title_sort = white
|
||||||
|
type = green
|
||||||
|
type_selected = lightgreen
|
||||||
|
unmarked = default
|
||||||
|
unmarked_selected = white
|
||||||
|
value = cyan
|
||||||
|
value_changed = brown
|
||||||
|
value_changed_selected = yellow
|
||||||
|
value_selected = lightcyan
|
||||||
|
value_undef = magenta
|
||||||
|
value_undef_selected = lightmagenta
|
158
apps/weechat/irc.conf
Normal file
158
apps/weechat/irc.conf
Normal file
|
@ -0,0 +1,158 @@
|
||||||
|
#
|
||||||
|
# weechat -- irc.conf
|
||||||
|
#
|
||||||
|
# WARNING: It is NOT recommended to edit this file by hand,
|
||||||
|
# especially if WeeChat is running.
|
||||||
|
#
|
||||||
|
# Use /set or similar command to change settings in WeeChat.
|
||||||
|
#
|
||||||
|
# For more info, see: https://weechat.org/doc/quickstart
|
||||||
|
#
|
||||||
|
|
||||||
|
[look]
|
||||||
|
buffer_open_before_autojoin = on
|
||||||
|
buffer_open_before_join = off
|
||||||
|
buffer_switch_autojoin = on
|
||||||
|
buffer_switch_join = on
|
||||||
|
color_nicks_in_names = off
|
||||||
|
color_nicks_in_nicklist = off
|
||||||
|
color_nicks_in_server_messages = on
|
||||||
|
color_pv_nick_like_channel = on
|
||||||
|
ctcp_time_format = "%a, %d %b %Y %T %z"
|
||||||
|
display_away = local
|
||||||
|
display_ctcp_blocked = on
|
||||||
|
display_ctcp_reply = on
|
||||||
|
display_ctcp_unknown = on
|
||||||
|
display_host_join = on
|
||||||
|
display_host_join_local = on
|
||||||
|
display_host_quit = on
|
||||||
|
display_join_message = "329,332,333,366"
|
||||||
|
display_old_topic = on
|
||||||
|
display_pv_away_once = on
|
||||||
|
display_pv_back = on
|
||||||
|
display_pv_warning_address = off
|
||||||
|
highlight_channel = "$nick"
|
||||||
|
highlight_pv = "$nick"
|
||||||
|
highlight_server = "$nick"
|
||||||
|
highlight_tags_restrict = "irc_privmsg,irc_notice"
|
||||||
|
item_channel_modes_hide_args = "k"
|
||||||
|
item_display_server = buffer_plugin
|
||||||
|
item_nick_modes = on
|
||||||
|
item_nick_prefix = on
|
||||||
|
join_auto_add_chantype = off
|
||||||
|
msgbuffer_fallback = current
|
||||||
|
new_channel_position = none
|
||||||
|
new_pv_position = none
|
||||||
|
nick_completion_smart = speakers
|
||||||
|
nick_mode = prefix
|
||||||
|
nick_mode_empty = off
|
||||||
|
nicks_hide_password = "nickserv"
|
||||||
|
notice_as_pv = auto
|
||||||
|
notice_welcome_redirect = on
|
||||||
|
notice_welcome_tags = ""
|
||||||
|
notify_tags_ison = "notify_message"
|
||||||
|
notify_tags_whois = "notify_message"
|
||||||
|
part_closes_buffer = off
|
||||||
|
pv_buffer = independent
|
||||||
|
pv_tags = "notify_private"
|
||||||
|
raw_messages = 256
|
||||||
|
server_buffer = merge_with_core
|
||||||
|
smart_filter = on
|
||||||
|
smart_filter_chghost = on
|
||||||
|
smart_filter_delay = 5
|
||||||
|
smart_filter_join = on
|
||||||
|
smart_filter_join_unmask = 30
|
||||||
|
smart_filter_mode = "+"
|
||||||
|
smart_filter_nick = on
|
||||||
|
smart_filter_quit = on
|
||||||
|
temporary_servers = off
|
||||||
|
topic_strip_colors = off
|
||||||
|
|
||||||
|
[color]
|
||||||
|
input_nick = lightcyan
|
||||||
|
item_channel_modes = default
|
||||||
|
item_lag_counting = default
|
||||||
|
item_lag_finished = yellow
|
||||||
|
item_nick_modes = default
|
||||||
|
message_chghost = brown
|
||||||
|
message_join = green
|
||||||
|
message_kick = red
|
||||||
|
message_quit = red
|
||||||
|
mirc_remap = "1,-1:darkgray"
|
||||||
|
nick_prefixes = "y:lightred;q:lightred;a:lightcyan;o:lightgreen;h:lightmagenta;v:yellow;*:lightblue"
|
||||||
|
notice = green
|
||||||
|
reason_kick = default
|
||||||
|
reason_quit = default
|
||||||
|
topic_current = default
|
||||||
|
topic_new = white
|
||||||
|
topic_old = default
|
||||||
|
|
||||||
|
[network]
|
||||||
|
autoreconnect_delay_growing = 2
|
||||||
|
autoreconnect_delay_max = 600
|
||||||
|
ban_mask_default = "*!$ident@$host"
|
||||||
|
colors_receive = on
|
||||||
|
colors_send = on
|
||||||
|
lag_check = 60
|
||||||
|
lag_max = 1800
|
||||||
|
lag_min_show = 500
|
||||||
|
lag_reconnect = 300
|
||||||
|
lag_refresh_interval = 1
|
||||||
|
notify_check_ison = 1
|
||||||
|
notify_check_whois = 5
|
||||||
|
sasl_fail_unavailable = on
|
||||||
|
send_unknown_commands = off
|
||||||
|
whois_double_nick = off
|
||||||
|
|
||||||
|
[msgbuffer]
|
||||||
|
|
||||||
|
[ctcp]
|
||||||
|
|
||||||
|
[ignore]
|
||||||
|
|
||||||
|
[server_default]
|
||||||
|
addresses = ""
|
||||||
|
anti_flood_prio_high = 2
|
||||||
|
anti_flood_prio_low = 2
|
||||||
|
autoconnect = off
|
||||||
|
autojoin = ""
|
||||||
|
autoreconnect = on
|
||||||
|
autoreconnect_delay = 10
|
||||||
|
autorejoin = off
|
||||||
|
autorejoin_delay = 30
|
||||||
|
away_check = 0
|
||||||
|
away_check_max_nicks = 25
|
||||||
|
capabilities = ""
|
||||||
|
charset_message = message
|
||||||
|
command = ""
|
||||||
|
command_delay = 0
|
||||||
|
connection_timeout = 60
|
||||||
|
ipv6 = on
|
||||||
|
local_hostname = ""
|
||||||
|
msg_kick = ""
|
||||||
|
msg_part = "WeeChat ${info:version}"
|
||||||
|
msg_quit = "WeeChat ${info:version}"
|
||||||
|
nicks = "daniel,daniel1,daniel2,daniel3,daniel4"
|
||||||
|
nicks_alternate = on
|
||||||
|
notify = ""
|
||||||
|
password = ""
|
||||||
|
proxy = ""
|
||||||
|
realname = ""
|
||||||
|
sasl_fail = continue
|
||||||
|
sasl_key = ""
|
||||||
|
sasl_mechanism = plain
|
||||||
|
sasl_password = ""
|
||||||
|
sasl_timeout = 15
|
||||||
|
sasl_username = ""
|
||||||
|
split_msg_max_length = 512
|
||||||
|
ssl = off
|
||||||
|
ssl_cert = ""
|
||||||
|
ssl_dhkey_size = 2048
|
||||||
|
ssl_fingerprint = ""
|
||||||
|
ssl_password = ""
|
||||||
|
ssl_priorities = "NORMAL:-VERS-SSL3.0"
|
||||||
|
ssl_verify = on
|
||||||
|
usermode = ""
|
||||||
|
username = "daniel"
|
||||||
|
|
||||||
|
[server]
|
36
apps/weechat/logger.conf
Normal file
36
apps/weechat/logger.conf
Normal file
|
@ -0,0 +1,36 @@
|
||||||
|
#
|
||||||
|
# weechat -- logger.conf
|
||||||
|
#
|
||||||
|
# WARNING: It is NOT recommended to edit this file by hand,
|
||||||
|
# especially if WeeChat is running.
|
||||||
|
#
|
||||||
|
# Use /set or similar command to change settings in WeeChat.
|
||||||
|
#
|
||||||
|
# For more info, see: https://weechat.org/doc/quickstart
|
||||||
|
#
|
||||||
|
|
||||||
|
[look]
|
||||||
|
backlog = 20
|
||||||
|
backlog_conditions = ""
|
||||||
|
|
||||||
|
[color]
|
||||||
|
backlog_end = default
|
||||||
|
backlog_line = default
|
||||||
|
|
||||||
|
[file]
|
||||||
|
auto_log = on
|
||||||
|
color_lines = off
|
||||||
|
flush_delay = 120
|
||||||
|
fsync = off
|
||||||
|
info_lines = off
|
||||||
|
mask = "$plugin.$name.weechatlog"
|
||||||
|
name_lower_case = on
|
||||||
|
nick_prefix = ""
|
||||||
|
nick_suffix = ""
|
||||||
|
path = "%h/logs/"
|
||||||
|
replacement_char = "_"
|
||||||
|
time_format = "%Y-%m-%d %H:%M:%S"
|
||||||
|
|
||||||
|
[level]
|
||||||
|
|
||||||
|
[mask]
|
14
apps/weechat/lua.conf
Normal file
14
apps/weechat/lua.conf
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
#
|
||||||
|
# weechat -- lua.conf
|
||||||
|
#
|
||||||
|
# WARNING: It is NOT recommended to edit this file by hand,
|
||||||
|
# especially if WeeChat is running.
|
||||||
|
#
|
||||||
|
# Use /set or similar command to change settings in WeeChat.
|
||||||
|
#
|
||||||
|
# For more info, see: https://weechat.org/doc/quickstart
|
||||||
|
#
|
||||||
|
|
||||||
|
[look]
|
||||||
|
check_license = off
|
||||||
|
eval_keep_context = on
|
14
apps/weechat/perl.conf
Normal file
14
apps/weechat/perl.conf
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
#
|
||||||
|
# weechat -- perl.conf
|
||||||
|
#
|
||||||
|
# WARNING: It is NOT recommended to edit this file by hand,
|
||||||
|
# especially if WeeChat is running.
|
||||||
|
#
|
||||||
|
# Use /set or similar command to change settings in WeeChat.
|
||||||
|
#
|
||||||
|
# For more info, see: https://weechat.org/doc/quickstart
|
||||||
|
#
|
||||||
|
|
||||||
|
[look]
|
||||||
|
check_license = off
|
||||||
|
eval_keep_context = on
|
14
apps/weechat/python.conf
Normal file
14
apps/weechat/python.conf
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
#
|
||||||
|
# weechat -- python.conf
|
||||||
|
#
|
||||||
|
# WARNING: It is NOT recommended to edit this file by hand,
|
||||||
|
# especially if WeeChat is running.
|
||||||
|
#
|
||||||
|
# Use /set or similar command to change settings in WeeChat.
|
||||||
|
#
|
||||||
|
# For more info, see: https://weechat.org/doc/quickstart
|
||||||
|
#
|
||||||
|
|
||||||
|
[look]
|
||||||
|
check_license = off
|
||||||
|
eval_keep_context = on
|
55
apps/weechat/relay.conf
Normal file
55
apps/weechat/relay.conf
Normal file
|
@ -0,0 +1,55 @@
|
||||||
|
#
|
||||||
|
# weechat -- relay.conf
|
||||||
|
#
|
||||||
|
# WARNING: It is NOT recommended to edit this file by hand,
|
||||||
|
# especially if WeeChat is running.
|
||||||
|
#
|
||||||
|
# Use /set or similar command to change settings in WeeChat.
|
||||||
|
#
|
||||||
|
# For more info, see: https://weechat.org/doc/quickstart
|
||||||
|
#
|
||||||
|
|
||||||
|
[look]
|
||||||
|
auto_open_buffer = on
|
||||||
|
raw_messages = 256
|
||||||
|
|
||||||
|
[color]
|
||||||
|
client = cyan
|
||||||
|
status_active = lightblue
|
||||||
|
status_auth_failed = lightred
|
||||||
|
status_connecting = yellow
|
||||||
|
status_disconnected = lightred
|
||||||
|
status_waiting_auth = brown
|
||||||
|
text = default
|
||||||
|
text_bg = default
|
||||||
|
text_selected = white
|
||||||
|
|
||||||
|
[network]
|
||||||
|
allow_empty_password = off
|
||||||
|
allowed_ips = ""
|
||||||
|
bind_address = ""
|
||||||
|
clients_purge_delay = 0
|
||||||
|
compression_level = 6
|
||||||
|
ipv6 = on
|
||||||
|
max_clients = 5
|
||||||
|
password = ""
|
||||||
|
ssl_cert_key = "%h/ssl/relay.pem"
|
||||||
|
ssl_priorities = "NORMAL:-VERS-SSL3.0"
|
||||||
|
totp_secret = ""
|
||||||
|
totp_window = 0
|
||||||
|
websocket_allowed_origins = ""
|
||||||
|
|
||||||
|
[irc]
|
||||||
|
backlog_max_minutes = 1440
|
||||||
|
backlog_max_number = 256
|
||||||
|
backlog_since_last_disconnect = on
|
||||||
|
backlog_since_last_message = off
|
||||||
|
backlog_tags = "irc_privmsg"
|
||||||
|
backlog_time_format = "[%H:%M] "
|
||||||
|
|
||||||
|
[weechat]
|
||||||
|
commands = ""
|
||||||
|
|
||||||
|
[port]
|
||||||
|
|
||||||
|
[path]
|
56
apps/weechat/script.conf
Normal file
56
apps/weechat/script.conf
Normal file
|
@ -0,0 +1,56 @@
|
||||||
|
#
|
||||||
|
# weechat -- script.conf
|
||||||
|
#
|
||||||
|
# WARNING: It is NOT recommended to edit this file by hand,
|
||||||
|
# especially if WeeChat is running.
|
||||||
|
#
|
||||||
|
# Use /set or similar command to change settings in WeeChat.
|
||||||
|
#
|
||||||
|
# For more info, see: https://weechat.org/doc/quickstart
|
||||||
|
#
|
||||||
|
|
||||||
|
[look]
|
||||||
|
columns = "%s %n %V %v %u | %d | %t"
|
||||||
|
diff_color = on
|
||||||
|
diff_command = "auto"
|
||||||
|
display_source = on
|
||||||
|
quiet_actions = on
|
||||||
|
sort = "i,p,n"
|
||||||
|
translate_description = on
|
||||||
|
use_keys = on
|
||||||
|
|
||||||
|
[color]
|
||||||
|
status_autoloaded = cyan
|
||||||
|
status_held = white
|
||||||
|
status_installed = lightcyan
|
||||||
|
status_obsolete = lightmagenta
|
||||||
|
status_popular = yellow
|
||||||
|
status_running = lightgreen
|
||||||
|
status_unknown = lightred
|
||||||
|
text = default
|
||||||
|
text_bg = default
|
||||||
|
text_bg_selected = red
|
||||||
|
text_date = default
|
||||||
|
text_date_selected = white
|
||||||
|
text_delimiters = default
|
||||||
|
text_description = default
|
||||||
|
text_description_selected = white
|
||||||
|
text_extension = default
|
||||||
|
text_extension_selected = white
|
||||||
|
text_name = cyan
|
||||||
|
text_name_selected = lightcyan
|
||||||
|
text_selected = white
|
||||||
|
text_tags = brown
|
||||||
|
text_tags_selected = yellow
|
||||||
|
text_version = magenta
|
||||||
|
text_version_loaded = default
|
||||||
|
text_version_loaded_selected = white
|
||||||
|
text_version_selected = lightmagenta
|
||||||
|
|
||||||
|
[scripts]
|
||||||
|
autoload = on
|
||||||
|
cache_expire = 1440
|
||||||
|
download_timeout = 30
|
||||||
|
hold = ""
|
||||||
|
path = "%h/script"
|
||||||
|
url = "https://weechat.org/files/plugins.xml.gz"
|
33
apps/weechat/spell.conf
Normal file
33
apps/weechat/spell.conf
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
#
|
||||||
|
# weechat -- spell.conf
|
||||||
|
#
|
||||||
|
# WARNING: It is NOT recommended to edit this file by hand,
|
||||||
|
# especially if WeeChat is running.
|
||||||
|
#
|
||||||
|
# Use /set or similar command to change settings in WeeChat.
|
||||||
|
#
|
||||||
|
# For more info, see: https://weechat.org/doc/quickstart
|
||||||
|
#
|
||||||
|
|
||||||
|
[color]
|
||||||
|
misspelled = lightred
|
||||||
|
suggestion = default
|
||||||
|
suggestion_delimiter_dict = cyan
|
||||||
|
suggestion_delimiter_word = cyan
|
||||||
|
|
||||||
|
[check]
|
||||||
|
commands = "away,command,cycle,kick,kickban,me,msg,notice,part,query,quit,topic"
|
||||||
|
default_dict = ""
|
||||||
|
during_search = off
|
||||||
|
enabled = off
|
||||||
|
real_time = off
|
||||||
|
suggestions = -1
|
||||||
|
word_min_length = 2
|
||||||
|
|
||||||
|
[dict]
|
||||||
|
|
||||||
|
[look]
|
||||||
|
suggestion_delimiter_dict = " / "
|
||||||
|
suggestion_delimiter_word = ","
|
||||||
|
|
||||||
|
[option]
|
14
apps/weechat/tcl.conf
Normal file
14
apps/weechat/tcl.conf
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
#
|
||||||
|
# weechat -- tcl.conf
|
||||||
|
#
|
||||||
|
# WARNING: It is NOT recommended to edit this file by hand,
|
||||||
|
# especially if WeeChat is running.
|
||||||
|
#
|
||||||
|
# Use /set or similar command to change settings in WeeChat.
|
||||||
|
#
|
||||||
|
# For more info, see: https://weechat.org/doc/quickstart
|
||||||
|
#
|
||||||
|
|
||||||
|
[look]
|
||||||
|
check_license = off
|
||||||
|
eval_keep_context = on
|
67
apps/weechat/trigger.conf
Normal file
67
apps/weechat/trigger.conf
Normal file
|
@ -0,0 +1,67 @@
|
||||||
|
#
|
||||||
|
# weechat -- trigger.conf
|
||||||
|
#
|
||||||
|
# WARNING: It is NOT recommended to edit this file by hand,
|
||||||
|
# especially if WeeChat is running.
|
||||||
|
#
|
||||||
|
# Use /set or similar command to change settings in WeeChat.
|
||||||
|
#
|
||||||
|
# For more info, see: https://weechat.org/doc/quickstart
|
||||||
|
#
|
||||||
|
|
||||||
|
[look]
|
||||||
|
enabled = on
|
||||||
|
monitor_strip_colors = off
|
||||||
|
|
||||||
|
[color]
|
||||||
|
flag_command = lightgreen
|
||||||
|
flag_conditions = yellow
|
||||||
|
flag_post_action = lightblue
|
||||||
|
flag_regex = lightcyan
|
||||||
|
flag_return_code = lightmagenta
|
||||||
|
regex = white
|
||||||
|
replace = cyan
|
||||||
|
trigger = green
|
||||||
|
trigger_disabled = red
|
||||||
|
|
||||||
|
[trigger]
|
||||||
|
beep.arguments = ""
|
||||||
|
beep.command = "/print -beep"
|
||||||
|
beep.conditions = "${tg_displayed} && (${tg_highlight} || ${tg_msg_pv})"
|
||||||
|
beep.enabled = on
|
||||||
|
beep.hook = print
|
||||||
|
beep.post_action = none
|
||||||
|
beep.regex = ""
|
||||||
|
beep.return_code = ok
|
||||||
|
cmd_pass.arguments = "5000|input_text_display;5000|history_add;5000|irc_command_auth"
|
||||||
|
cmd_pass.command = ""
|
||||||
|
cmd_pass.conditions = ""
|
||||||
|
cmd_pass.enabled = on
|
||||||
|
cmd_pass.hook = modifier
|
||||||
|
cmd_pass.post_action = none
|
||||||
|
cmd_pass.regex = "==^((/(msg|m|quote) +(-server +[^ ]+ +)?nickserv +(id|identify|set +password|ghost +[^ ]+|release +[^ ]+|regain +[^ ]+|recover +[^ ]+) +)|/oper +[^ ]+ +|/quote +pass +|/set +[^ ]*password[^ ]* +|/secure +(passphrase|decrypt|set +[^ ]+) +)(.*)==${re:1}${hide:*,${re:+}}"
|
||||||
|
cmd_pass.return_code = ok
|
||||||
|
cmd_pass_register.arguments = "5000|input_text_display;5000|history_add;5000|irc_command_auth"
|
||||||
|
cmd_pass_register.command = ""
|
||||||
|
cmd_pass_register.conditions = ""
|
||||||
|
cmd_pass_register.enabled = on
|
||||||
|
cmd_pass_register.hook = modifier
|
||||||
|
cmd_pass_register.post_action = none
|
||||||
|
cmd_pass_register.regex = "==^(/(msg|m|quote) +nickserv +register +)([^ ]+)(.*)==${re:1}${hide:*,${re:3}}${re:4}"
|
||||||
|
cmd_pass_register.return_code = ok
|
||||||
|
msg_auth.arguments = "5000|irc_message_auth"
|
||||||
|
msg_auth.command = ""
|
||||||
|
msg_auth.conditions = ""
|
||||||
|
msg_auth.enabled = on
|
||||||
|
msg_auth.hook = modifier
|
||||||
|
msg_auth.post_action = none
|
||||||
|
msg_auth.regex = "==^(.*(id|identify|set +password|register|ghost +[^ ]+|release +[^ ]+|regain +[^ ]+|recover +[^ ]+) +)(.*)==${re:1}${hide:*,${re:+}}"
|
||||||
|
msg_auth.return_code = ok
|
||||||
|
server_pass.arguments = "5000|input_text_display;5000|history_add"
|
||||||
|
server_pass.command = ""
|
||||||
|
server_pass.conditions = ""
|
||||||
|
server_pass.enabled = on
|
||||||
|
server_pass.hook = modifier
|
||||||
|
server_pass.post_action = none
|
||||||
|
server_pass.regex = "==^(/(server|connect) .*-(sasl_)?password=)([^ ]+)(.*)==${re:1}${hide:*,${re:4}}${re:5}"
|
||||||
|
server_pass.return_code = ok
|
674
apps/weechat/weechat.conf
Normal file
674
apps/weechat/weechat.conf
Normal file
|
@ -0,0 +1,674 @@
|
||||||
|
#
|
||||||
|
# weechat -- weechat.conf
|
||||||
|
#
|
||||||
|
# WARNING: It is NOT recommended to edit this file by hand,
|
||||||
|
# especially if WeeChat is running.
|
||||||
|
#
|
||||||
|
# Use /set or similar command to change settings in WeeChat.
|
||||||
|
#
|
||||||
|
# For more info, see: https://weechat.org/doc/quickstart
|
||||||
|
#
|
||||||
|
|
||||||
|
[debug]
|
||||||
|
|
||||||
|
[startup]
|
||||||
|
command_after_plugins = ""
|
||||||
|
command_before_plugins = ""
|
||||||
|
display_logo = on
|
||||||
|
display_version = on
|
||||||
|
sys_rlimit = ""
|
||||||
|
|
||||||
|
[look]
|
||||||
|
align_end_of_lines = message
|
||||||
|
align_multiline_words = on
|
||||||
|
bar_more_down = "++"
|
||||||
|
bar_more_left = "<<"
|
||||||
|
bar_more_right = ">>"
|
||||||
|
bar_more_up = "--"
|
||||||
|
bare_display_exit_on_input = on
|
||||||
|
bare_display_time_format = "%H:%M"
|
||||||
|
buffer_auto_renumber = on
|
||||||
|
buffer_notify_default = all
|
||||||
|
buffer_position = end
|
||||||
|
buffer_search_case_sensitive = off
|
||||||
|
buffer_search_force_default = off
|
||||||
|
buffer_search_regex = off
|
||||||
|
buffer_search_where = prefix_message
|
||||||
|
buffer_time_format = "%H:%M:%S"
|
||||||
|
buffer_time_same = ""
|
||||||
|
color_basic_force_bold = off
|
||||||
|
color_inactive_buffer = on
|
||||||
|
color_inactive_message = on
|
||||||
|
color_inactive_prefix = on
|
||||||
|
color_inactive_prefix_buffer = on
|
||||||
|
color_inactive_time = off
|
||||||
|
color_inactive_window = on
|
||||||
|
color_nick_offline = off
|
||||||
|
color_pairs_auto_reset = 5
|
||||||
|
color_real_white = off
|
||||||
|
command_chars = ""
|
||||||
|
command_incomplete = off
|
||||||
|
confirm_quit = off
|
||||||
|
confirm_upgrade = off
|
||||||
|
day_change = on
|
||||||
|
day_change_message_1date = "-- %a, %d %b %Y --"
|
||||||
|
day_change_message_2dates = "-- %%a, %%d %%b %%Y (%a, %d %b %Y) --"
|
||||||
|
eat_newline_glitch = off
|
||||||
|
emphasized_attributes = ""
|
||||||
|
highlight = ""
|
||||||
|
highlight_regex = ""
|
||||||
|
highlight_tags = ""
|
||||||
|
hotlist_add_conditions = "${away} || ${buffer.num_displayed} == 0 || ${info:relay_client_count,weechat,connected} > 0"
|
||||||
|
hotlist_buffer_separator = ", "
|
||||||
|
hotlist_count_max = 2
|
||||||
|
hotlist_count_min_msg = 2
|
||||||
|
hotlist_names_count = 3
|
||||||
|
hotlist_names_length = 0
|
||||||
|
hotlist_names_level = 12
|
||||||
|
hotlist_names_merged_buffers = off
|
||||||
|
hotlist_prefix = "H: "
|
||||||
|
hotlist_remove = merged
|
||||||
|
hotlist_short_names = on
|
||||||
|
hotlist_sort = group_time_asc
|
||||||
|
hotlist_suffix = ""
|
||||||
|
hotlist_unique_numbers = on
|
||||||
|
input_cursor_scroll = 20
|
||||||
|
input_share = none
|
||||||
|
input_share_overwrite = off
|
||||||
|
input_undo_max = 32
|
||||||
|
item_away_message = on
|
||||||
|
item_buffer_filter = "*"
|
||||||
|
item_buffer_zoom = "!"
|
||||||
|
item_mouse_status = "M"
|
||||||
|
item_time_format = "%H:%M"
|
||||||
|
jump_current_to_previous_buffer = on
|
||||||
|
jump_previous_buffer_when_closing = on
|
||||||
|
jump_smart_back_to_buffer = on
|
||||||
|
key_bind_safe = on
|
||||||
|
key_grab_delay = 800
|
||||||
|
mouse = off
|
||||||
|
mouse_timer_delay = 100
|
||||||
|
nick_color_force = ""
|
||||||
|
nick_color_hash = djb2
|
||||||
|
nick_color_hash_salt = ""
|
||||||
|
nick_color_stop_chars = "_|["
|
||||||
|
nick_prefix = ""
|
||||||
|
nick_suffix = ""
|
||||||
|
paste_auto_add_newline = on
|
||||||
|
paste_bracketed = on
|
||||||
|
paste_bracketed_timer_delay = 10
|
||||||
|
paste_max_lines = 1
|
||||||
|
prefix_action = " *"
|
||||||
|
prefix_align = right
|
||||||
|
prefix_align_max = 0
|
||||||
|
prefix_align_min = 0
|
||||||
|
prefix_align_more = "+"
|
||||||
|
prefix_align_more_after = on
|
||||||
|
prefix_buffer_align = right
|
||||||
|
prefix_buffer_align_max = 0
|
||||||
|
prefix_buffer_align_more = "+"
|
||||||
|
prefix_buffer_align_more_after = on
|
||||||
|
prefix_error = "=!="
|
||||||
|
prefix_join = "-->"
|
||||||
|
prefix_network = "--"
|
||||||
|
prefix_quit = "<--"
|
||||||
|
prefix_same_nick = ""
|
||||||
|
prefix_same_nick_middle = ""
|
||||||
|
prefix_suffix = "|"
|
||||||
|
quote_nick_prefix = "<"
|
||||||
|
quote_nick_suffix = ">"
|
||||||
|
quote_time_format = "%H:%M:%S"
|
||||||
|
read_marker = line
|
||||||
|
read_marker_always_show = off
|
||||||
|
read_marker_string = "- "
|
||||||
|
save_config_on_exit = on
|
||||||
|
save_config_with_fsync = off
|
||||||
|
save_layout_on_exit = none
|
||||||
|
scroll_amount = 3
|
||||||
|
scroll_bottom_after_switch = off
|
||||||
|
scroll_page_percent = 100
|
||||||
|
search_text_not_found_alert = on
|
||||||
|
separator_horizontal = "-"
|
||||||
|
separator_vertical = ""
|
||||||
|
tab_width = 1
|
||||||
|
time_format = "%a, %d %b %Y %T"
|
||||||
|
window_auto_zoom = off
|
||||||
|
window_separator_horizontal = on
|
||||||
|
window_separator_vertical = on
|
||||||
|
window_title = ""
|
||||||
|
word_chars_highlight = "!\u00A0,-,_,|,alnum"
|
||||||
|
word_chars_input = "!\u00A0,-,_,|,alnum"
|
||||||
|
|
||||||
|
[palette]
|
||||||
|
|
||||||
|
[color]
|
||||||
|
bar_more = lightmagenta
|
||||||
|
chat = default
|
||||||
|
chat_bg = default
|
||||||
|
chat_buffer = white
|
||||||
|
chat_channel = white
|
||||||
|
chat_day_change = cyan
|
||||||
|
chat_delimiters = green
|
||||||
|
chat_highlight = yellow
|
||||||
|
chat_highlight_bg = magenta
|
||||||
|
chat_host = cyan
|
||||||
|
chat_inactive_buffer = default
|
||||||
|
chat_inactive_window = default
|
||||||
|
chat_nick = lightcyan
|
||||||
|
chat_nick_colors = "cyan,magenta,green,brown,lightblue,default,lightcyan,lightmagenta,lightgreen,blue"
|
||||||
|
chat_nick_offline = default
|
||||||
|
chat_nick_offline_highlight = default
|
||||||
|
chat_nick_offline_highlight_bg = blue
|
||||||
|
chat_nick_other = cyan
|
||||||
|
chat_nick_prefix = green
|
||||||
|
chat_nick_self = white
|
||||||
|
chat_nick_suffix = green
|
||||||
|
chat_prefix_action = white
|
||||||
|
chat_prefix_buffer = brown
|
||||||
|
chat_prefix_buffer_inactive_buffer = default
|
||||||
|
chat_prefix_error = yellow
|
||||||
|
chat_prefix_join = lightgreen
|
||||||
|
chat_prefix_more = lightmagenta
|
||||||
|
chat_prefix_network = magenta
|
||||||
|
chat_prefix_quit = lightred
|
||||||
|
chat_prefix_suffix = green
|
||||||
|
chat_read_marker = magenta
|
||||||
|
chat_read_marker_bg = default
|
||||||
|
chat_server = brown
|
||||||
|
chat_tags = red
|
||||||
|
chat_text_found = yellow
|
||||||
|
chat_text_found_bg = lightmagenta
|
||||||
|
chat_time = default
|
||||||
|
chat_time_delimiters = brown
|
||||||
|
chat_value = cyan
|
||||||
|
chat_value_null = blue
|
||||||
|
emphasized = yellow
|
||||||
|
emphasized_bg = magenta
|
||||||
|
input_actions = lightgreen
|
||||||
|
input_text_not_found = red
|
||||||
|
item_away = yellow
|
||||||
|
nicklist_away = cyan
|
||||||
|
nicklist_group = green
|
||||||
|
separator = blue
|
||||||
|
status_count_highlight = magenta
|
||||||
|
status_count_msg = brown
|
||||||
|
status_count_other = default
|
||||||
|
status_count_private = green
|
||||||
|
status_data_highlight = lightmagenta
|
||||||
|
status_data_msg = yellow
|
||||||
|
status_data_other = default
|
||||||
|
status_data_private = lightgreen
|
||||||
|
status_filter = green
|
||||||
|
status_more = yellow
|
||||||
|
status_mouse = green
|
||||||
|
status_name = white
|
||||||
|
status_name_ssl = lightgreen
|
||||||
|
status_nicklist_count = default
|
||||||
|
status_number = yellow
|
||||||
|
status_time = default
|
||||||
|
|
||||||
|
[completion]
|
||||||
|
base_word_until_cursor = on
|
||||||
|
command_inline = on
|
||||||
|
default_template = "%(nicks)|%(irc_channels)"
|
||||||
|
nick_add_space = on
|
||||||
|
nick_case_sensitive = off
|
||||||
|
nick_completer = ": "
|
||||||
|
nick_first_only = off
|
||||||
|
nick_ignore_chars = "[]`_-^"
|
||||||
|
partial_completion_alert = on
|
||||||
|
partial_completion_command = off
|
||||||
|
partial_completion_command_arg = off
|
||||||
|
partial_completion_count = on
|
||||||
|
partial_completion_other = off
|
||||||
|
partial_completion_templates = "config_options"
|
||||||
|
|
||||||
|
[history]
|
||||||
|
display_default = 5
|
||||||
|
max_buffer_lines_minutes = 0
|
||||||
|
max_buffer_lines_number = 4096
|
||||||
|
max_commands = 100
|
||||||
|
max_visited_buffers = 50
|
||||||
|
|
||||||
|
[proxy]
|
||||||
|
|
||||||
|
[network]
|
||||||
|
connection_timeout = 60
|
||||||
|
gnutls_ca_file = "/etc/ssl/certs/ca-certificates.crt"
|
||||||
|
gnutls_handshake_timeout = 30
|
||||||
|
proxy_curl = ""
|
||||||
|
|
||||||
|
[plugin]
|
||||||
|
autoload = "*"
|
||||||
|
debug = off
|
||||||
|
extension = ".so,.dll"
|
||||||
|
path = "%h/plugins"
|
||||||
|
save_config_on_unload = on
|
||||||
|
|
||||||
|
[bar]
|
||||||
|
buflist.color_bg = default
|
||||||
|
buflist.color_delim = default
|
||||||
|
buflist.color_fg = default
|
||||||
|
buflist.conditions = ""
|
||||||
|
buflist.filling_left_right = vertical
|
||||||
|
buflist.filling_top_bottom = columns_vertical
|
||||||
|
buflist.hidden = off
|
||||||
|
buflist.items = "buflist"
|
||||||
|
buflist.position = left
|
||||||
|
buflist.priority = 0
|
||||||
|
buflist.separator = on
|
||||||
|
buflist.size = 0
|
||||||
|
buflist.size_max = 0
|
||||||
|
buflist.type = root
|
||||||
|
fset.color_bg = default
|
||||||
|
fset.color_delim = cyan
|
||||||
|
fset.color_fg = default
|
||||||
|
fset.conditions = "${buffer.full_name} == fset.fset"
|
||||||
|
fset.filling_left_right = vertical
|
||||||
|
fset.filling_top_bottom = horizontal
|
||||||
|
fset.hidden = off
|
||||||
|
fset.items = "fset"
|
||||||
|
fset.position = top
|
||||||
|
fset.priority = 0
|
||||||
|
fset.separator = on
|
||||||
|
fset.size = 3
|
||||||
|
fset.size_max = 3
|
||||||
|
fset.type = window
|
||||||
|
input.color_bg = default
|
||||||
|
input.color_delim = cyan
|
||||||
|
input.color_fg = default
|
||||||
|
input.conditions = ""
|
||||||
|
input.filling_left_right = vertical
|
||||||
|
input.filling_top_bottom = horizontal
|
||||||
|
input.hidden = off
|
||||||
|
input.items = "[input_prompt]+(away),[input_search],[input_paste],input_text"
|
||||||
|
input.position = bottom
|
||||||
|
input.priority = 1000
|
||||||
|
input.separator = off
|
||||||
|
input.size = 1
|
||||||
|
input.size_max = 0
|
||||||
|
input.type = window
|
||||||
|
nicklist.color_bg = default
|
||||||
|
nicklist.color_delim = cyan
|
||||||
|
nicklist.color_fg = default
|
||||||
|
nicklist.conditions = "${nicklist}"
|
||||||
|
nicklist.filling_left_right = vertical
|
||||||
|
nicklist.filling_top_bottom = columns_vertical
|
||||||
|
nicklist.hidden = on
|
||||||
|
nicklist.items = "buffer_nicklist"
|
||||||
|
nicklist.position = right
|
||||||
|
nicklist.priority = 200
|
||||||
|
nicklist.separator = on
|
||||||
|
nicklist.size = 0
|
||||||
|
nicklist.size_max = 10
|
||||||
|
nicklist.type = window
|
||||||
|
status.color_bg = 0
|
||||||
|
status.color_delim = cyan
|
||||||
|
status.color_fg = default
|
||||||
|
status.conditions = ""
|
||||||
|
status.filling_left_right = vertical
|
||||||
|
status.filling_top_bottom = horizontal
|
||||||
|
status.hidden = off
|
||||||
|
status.items = "[time],[buffer_last_number],[buffer_plugin],buffer_number+:+buffer_name+(buffer_modes)+{buffer_nicklist_count}+buffer_zoom+buffer_filter,scroll,[lag],[hotlist],completion"
|
||||||
|
status.position = bottom
|
||||||
|
status.priority = 500
|
||||||
|
status.separator = off
|
||||||
|
status.size = 1
|
||||||
|
status.size_max = 0
|
||||||
|
status.type = window
|
||||||
|
title.color_bg = 0
|
||||||
|
title.color_delim = cyan
|
||||||
|
title.color_fg = default
|
||||||
|
title.conditions = ""
|
||||||
|
title.filling_left_right = vertical
|
||||||
|
title.filling_top_bottom = horizontal
|
||||||
|
title.hidden = off
|
||||||
|
title.items = "buffer_title"
|
||||||
|
title.position = top
|
||||||
|
title.priority = 500
|
||||||
|
title.separator = off
|
||||||
|
title.size = 1
|
||||||
|
title.size_max = 0
|
||||||
|
title.type = window
|
||||||
|
|
||||||
|
[layout]
|
||||||
|
|
||||||
|
[notify]
|
||||||
|
perl.highmon = none
|
||||||
|
|
||||||
|
[filter]
|
||||||
|
|
||||||
|
[key]
|
||||||
|
ctrl-? = "/input delete_previous_char"
|
||||||
|
ctrl-A = "/input move_beginning_of_line"
|
||||||
|
ctrl-B = "/input move_previous_char"
|
||||||
|
ctrl-C_ = "/input insert \x1F"
|
||||||
|
ctrl-Cb = "/input insert \x02"
|
||||||
|
ctrl-Cc = "/input insert \x03"
|
||||||
|
ctrl-Ci = "/input insert \x1D"
|
||||||
|
ctrl-Co = "/input insert \x0F"
|
||||||
|
ctrl-Cv = "/input insert \x16"
|
||||||
|
ctrl-D = "/input delete_next_char"
|
||||||
|
ctrl-E = "/input move_end_of_line"
|
||||||
|
ctrl-F = "/input move_next_char"
|
||||||
|
ctrl-H = "/input delete_previous_char"
|
||||||
|
ctrl-I = "/input complete_next"
|
||||||
|
ctrl-J = "/input return"
|
||||||
|
ctrl-K = "/input delete_end_of_line"
|
||||||
|
ctrl-L = "/window refresh"
|
||||||
|
ctrl-M = "/input return"
|
||||||
|
ctrl-N = "/buffer +1"
|
||||||
|
ctrl-P = "/buffer -1"
|
||||||
|
ctrl-R = "/input search_text_here"
|
||||||
|
ctrl-Sctrl-U = "/input set_unread"
|
||||||
|
ctrl-T = "/input transpose_chars"
|
||||||
|
ctrl-U = "/input delete_beginning_of_line"
|
||||||
|
ctrl-W = "/input delete_previous_word"
|
||||||
|
ctrl-X = "/input switch_active_buffer"
|
||||||
|
ctrl-Y = "/input clipboard_paste"
|
||||||
|
meta-meta-OP = "/bar scroll buflist * b"
|
||||||
|
meta-meta-OQ = "/bar scroll buflist * e"
|
||||||
|
meta-meta2-11~ = "/bar scroll buflist * b"
|
||||||
|
meta-meta2-12~ = "/bar scroll buflist * e"
|
||||||
|
meta-meta2-1~ = "/window scroll_top"
|
||||||
|
meta-meta2-23~ = "/bar scroll nicklist * b"
|
||||||
|
meta-meta2-24~ = "/bar scroll nicklist * e"
|
||||||
|
meta-meta2-4~ = "/window scroll_bottom"
|
||||||
|
meta-meta2-5~ = "/window scroll_up"
|
||||||
|
meta-meta2-6~ = "/window scroll_down"
|
||||||
|
meta-meta2-7~ = "/window scroll_top"
|
||||||
|
meta-meta2-8~ = "/window scroll_bottom"
|
||||||
|
meta-meta2-A = "/buffer -1"
|
||||||
|
meta-meta2-B = "/buffer +1"
|
||||||
|
meta-meta2-C = "/buffer +1"
|
||||||
|
meta-meta2-D = "/buffer -1"
|
||||||
|
meta-- = "/filter toggle @"
|
||||||
|
meta-/ = "/input jump_last_buffer_displayed"
|
||||||
|
meta-0 = "/buffer *10"
|
||||||
|
meta-1 = "/buffer *1"
|
||||||
|
meta-2 = "/buffer *2"
|
||||||
|
meta-3 = "/buffer *3"
|
||||||
|
meta-4 = "/buffer *4"
|
||||||
|
meta-5 = "/buffer *5"
|
||||||
|
meta-6 = "/buffer *6"
|
||||||
|
meta-7 = "/buffer *7"
|
||||||
|
meta-8 = "/buffer *8"
|
||||||
|
meta-9 = "/buffer *9"
|
||||||
|
meta-< = "/input jump_previously_visited_buffer"
|
||||||
|
meta-= = "/filter toggle"
|
||||||
|
meta-> = "/input jump_next_visited_buffer"
|
||||||
|
meta-OA = "/input history_global_previous"
|
||||||
|
meta-OB = "/input history_global_next"
|
||||||
|
meta-OC = "/input move_next_word"
|
||||||
|
meta-OD = "/input move_previous_word"
|
||||||
|
meta-OF = "/input move_end_of_line"
|
||||||
|
meta-OH = "/input move_beginning_of_line"
|
||||||
|
meta-OP = "/bar scroll buflist * -100%"
|
||||||
|
meta-OQ = "/bar scroll buflist * +100%"
|
||||||
|
meta-Oa = "/input history_global_previous"
|
||||||
|
meta-Ob = "/input history_global_next"
|
||||||
|
meta-Oc = "/input move_next_word"
|
||||||
|
meta-Od = "/input move_previous_word"
|
||||||
|
meta2-11^ = "/bar scroll buflist * -100%"
|
||||||
|
meta2-11~ = "/bar scroll buflist * -100%"
|
||||||
|
meta2-12^ = "/bar scroll buflist * +100%"
|
||||||
|
meta2-12~ = "/bar scroll buflist * +100%"
|
||||||
|
meta2-15~ = "/buffer -1"
|
||||||
|
meta2-17~ = "/buffer +1"
|
||||||
|
meta2-18~ = "/window -1"
|
||||||
|
meta2-19~ = "/window +1"
|
||||||
|
meta2-1;3A = "/buffer -1"
|
||||||
|
meta2-1;3B = "/buffer +1"
|
||||||
|
meta2-1;3C = "/buffer +1"
|
||||||
|
meta2-1;3D = "/buffer -1"
|
||||||
|
meta2-1;3F = "/window scroll_bottom"
|
||||||
|
meta2-1;3H = "/window scroll_top"
|
||||||
|
meta2-1;3P = "/bar scroll buflist * b"
|
||||||
|
meta2-1;3Q = "/bar scroll buflist * e"
|
||||||
|
meta2-1;5A = "/input history_global_previous"
|
||||||
|
meta2-1;5B = "/input history_global_next"
|
||||||
|
meta2-1;5C = "/input move_next_word"
|
||||||
|
meta2-1;5D = "/input move_previous_word"
|
||||||
|
meta2-1;5P = "/bar scroll buflist * -100%"
|
||||||
|
meta2-1;5Q = "/bar scroll buflist * +100%"
|
||||||
|
meta2-1~ = "/input move_beginning_of_line"
|
||||||
|
meta2-200~ = "/input paste_start"
|
||||||
|
meta2-201~ = "/input paste_stop"
|
||||||
|
meta2-20~ = "/bar scroll title * -30%"
|
||||||
|
meta2-21~ = "/bar scroll title * +30%"
|
||||||
|
meta2-23;3~ = "/bar scroll nicklist * b"
|
||||||
|
meta2-23;5~ = "/bar scroll nicklist * -100%"
|
||||||
|
meta2-23^ = "/bar scroll nicklist * -100%"
|
||||||
|
meta2-23~ = "/bar scroll nicklist * -100%"
|
||||||
|
meta2-24;3~ = "/bar scroll nicklist * e"
|
||||||
|
meta2-24;5~ = "/bar scroll nicklist * +100%"
|
||||||
|
meta2-24^ = "/bar scroll nicklist * +100%"
|
||||||
|
meta2-24~ = "/bar scroll nicklist * +100%"
|
||||||
|
meta2-3~ = "/input delete_next_char"
|
||||||
|
meta2-4~ = "/input move_end_of_line"
|
||||||
|
meta2-5;3~ = "/window scroll_up"
|
||||||
|
meta2-5~ = "/window page_up"
|
||||||
|
meta2-6;3~ = "/window scroll_down"
|
||||||
|
meta2-6~ = "/window page_down"
|
||||||
|
meta2-7~ = "/input move_beginning_of_line"
|
||||||
|
meta2-8~ = "/input move_end_of_line"
|
||||||
|
meta2-A = "/input history_previous"
|
||||||
|
meta2-B = "/input history_next"
|
||||||
|
meta2-C = "/input move_next_char"
|
||||||
|
meta2-D = "/input move_previous_char"
|
||||||
|
meta2-F = "/input move_end_of_line"
|
||||||
|
meta2-G = "/window page_down"
|
||||||
|
meta2-H = "/input move_beginning_of_line"
|
||||||
|
meta2-I = "/window page_up"
|
||||||
|
meta2-Z = "/input complete_previous"
|
||||||
|
meta2-[E = "/buffer -1"
|
||||||
|
meta-_ = "/input redo"
|
||||||
|
meta-a = "/input jump_smart"
|
||||||
|
meta-b = "/input move_previous_word"
|
||||||
|
meta-d = "/input delete_next_word"
|
||||||
|
meta-f = "/input move_next_word"
|
||||||
|
meta-h = "/input hotlist_clear"
|
||||||
|
meta-jmeta-f = "/buffer -"
|
||||||
|
meta-jmeta-l = "/buffer +"
|
||||||
|
meta-jmeta-r = "/server raw"
|
||||||
|
meta-jmeta-s = "/server jump"
|
||||||
|
meta-j01 = "/buffer *1"
|
||||||
|
meta-j02 = "/buffer *2"
|
||||||
|
meta-j03 = "/buffer *3"
|
||||||
|
meta-j04 = "/buffer *4"
|
||||||
|
meta-j05 = "/buffer *5"
|
||||||
|
meta-j06 = "/buffer *6"
|
||||||
|
meta-j07 = "/buffer *7"
|
||||||
|
meta-j08 = "/buffer *8"
|
||||||
|
meta-j09 = "/buffer *9"
|
||||||
|
meta-j10 = "/buffer *10"
|
||||||
|
meta-j11 = "/buffer *11"
|
||||||
|
meta-j12 = "/buffer *12"
|
||||||
|
meta-j13 = "/buffer *13"
|
||||||
|
meta-j14 = "/buffer *14"
|
||||||
|
meta-j15 = "/buffer *15"
|
||||||
|
meta-j16 = "/buffer *16"
|
||||||
|
meta-j17 = "/buffer *17"
|
||||||
|
meta-j18 = "/buffer *18"
|
||||||
|
meta-j19 = "/buffer *19"
|
||||||
|
meta-j20 = "/buffer *20"
|
||||||
|
meta-j21 = "/buffer *21"
|
||||||
|
meta-j22 = "/buffer *22"
|
||||||
|
meta-j23 = "/buffer *23"
|
||||||
|
meta-j24 = "/buffer *24"
|
||||||
|
meta-j25 = "/buffer *25"
|
||||||
|
meta-j26 = "/buffer *26"
|
||||||
|
meta-j27 = "/buffer *27"
|
||||||
|
meta-j28 = "/buffer *28"
|
||||||
|
meta-j29 = "/buffer *29"
|
||||||
|
meta-j30 = "/buffer *30"
|
||||||
|
meta-j31 = "/buffer *31"
|
||||||
|
meta-j32 = "/buffer *32"
|
||||||
|
meta-j33 = "/buffer *33"
|
||||||
|
meta-j34 = "/buffer *34"
|
||||||
|
meta-j35 = "/buffer *35"
|
||||||
|
meta-j36 = "/buffer *36"
|
||||||
|
meta-j37 = "/buffer *37"
|
||||||
|
meta-j38 = "/buffer *38"
|
||||||
|
meta-j39 = "/buffer *39"
|
||||||
|
meta-j40 = "/buffer *40"
|
||||||
|
meta-j41 = "/buffer *41"
|
||||||
|
meta-j42 = "/buffer *42"
|
||||||
|
meta-j43 = "/buffer *43"
|
||||||
|
meta-j44 = "/buffer *44"
|
||||||
|
meta-j45 = "/buffer *45"
|
||||||
|
meta-j46 = "/buffer *46"
|
||||||
|
meta-j47 = "/buffer *47"
|
||||||
|
meta-j48 = "/buffer *48"
|
||||||
|
meta-j49 = "/buffer *49"
|
||||||
|
meta-j50 = "/buffer *50"
|
||||||
|
meta-j51 = "/buffer *51"
|
||||||
|
meta-j52 = "/buffer *52"
|
||||||
|
meta-j53 = "/buffer *53"
|
||||||
|
meta-j54 = "/buffer *54"
|
||||||
|
meta-j55 = "/buffer *55"
|
||||||
|
meta-j56 = "/buffer *56"
|
||||||
|
meta-j57 = "/buffer *57"
|
||||||
|
meta-j58 = "/buffer *58"
|
||||||
|
meta-j59 = "/buffer *59"
|
||||||
|
meta-j60 = "/buffer *60"
|
||||||
|
meta-j61 = "/buffer *61"
|
||||||
|
meta-j62 = "/buffer *62"
|
||||||
|
meta-j63 = "/buffer *63"
|
||||||
|
meta-j64 = "/buffer *64"
|
||||||
|
meta-j65 = "/buffer *65"
|
||||||
|
meta-j66 = "/buffer *66"
|
||||||
|
meta-j67 = "/buffer *67"
|
||||||
|
meta-j68 = "/buffer *68"
|
||||||
|
meta-j69 = "/buffer *69"
|
||||||
|
meta-j70 = "/buffer *70"
|
||||||
|
meta-j71 = "/buffer *71"
|
||||||
|
meta-j72 = "/buffer *72"
|
||||||
|
meta-j73 = "/buffer *73"
|
||||||
|
meta-j74 = "/buffer *74"
|
||||||
|
meta-j75 = "/buffer *75"
|
||||||
|
meta-j76 = "/buffer *76"
|
||||||
|
meta-j77 = "/buffer *77"
|
||||||
|
meta-j78 = "/buffer *78"
|
||||||
|
meta-j79 = "/buffer *79"
|
||||||
|
meta-j80 = "/buffer *80"
|
||||||
|
meta-j81 = "/buffer *81"
|
||||||
|
meta-j82 = "/buffer *82"
|
||||||
|
meta-j83 = "/buffer *83"
|
||||||
|
meta-j84 = "/buffer *84"
|
||||||
|
meta-j85 = "/buffer *85"
|
||||||
|
meta-j86 = "/buffer *86"
|
||||||
|
meta-j87 = "/buffer *87"
|
||||||
|
meta-j88 = "/buffer *88"
|
||||||
|
meta-j89 = "/buffer *89"
|
||||||
|
meta-j90 = "/buffer *90"
|
||||||
|
meta-j91 = "/buffer *91"
|
||||||
|
meta-j92 = "/buffer *92"
|
||||||
|
meta-j93 = "/buffer *93"
|
||||||
|
meta-j94 = "/buffer *94"
|
||||||
|
meta-j95 = "/buffer *95"
|
||||||
|
meta-j96 = "/buffer *96"
|
||||||
|
meta-j97 = "/buffer *97"
|
||||||
|
meta-j98 = "/buffer *98"
|
||||||
|
meta-j99 = "/buffer *99"
|
||||||
|
meta-k = "/input grab_key_command"
|
||||||
|
meta-l = "/window bare"
|
||||||
|
meta-m = "/mute mouse toggle"
|
||||||
|
meta-n = "/window scroll_next_highlight"
|
||||||
|
meta-p = "/window scroll_previous_highlight"
|
||||||
|
meta-r = "/input delete_line"
|
||||||
|
meta-s = "/mute spell toggle"
|
||||||
|
meta-u = "/window scroll_unread"
|
||||||
|
meta-wmeta-meta2-A = "/window up"
|
||||||
|
meta-wmeta-meta2-B = "/window down"
|
||||||
|
meta-wmeta-meta2-C = "/window right"
|
||||||
|
meta-wmeta-meta2-D = "/window left"
|
||||||
|
meta-wmeta2-1;3A = "/window up"
|
||||||
|
meta-wmeta2-1;3B = "/window down"
|
||||||
|
meta-wmeta2-1;3C = "/window right"
|
||||||
|
meta-wmeta2-1;3D = "/window left"
|
||||||
|
meta-wmeta-b = "/window balance"
|
||||||
|
meta-wmeta-s = "/window swap"
|
||||||
|
meta-x = "/input zoom_merged_buffer"
|
||||||
|
meta-z = "/window zoom"
|
||||||
|
ctrl-_ = "/input undo"
|
||||||
|
|
||||||
|
[key_search]
|
||||||
|
ctrl-I = "/input search_switch_where"
|
||||||
|
ctrl-J = "/input search_stop_here"
|
||||||
|
ctrl-M = "/input search_stop_here"
|
||||||
|
ctrl-Q = "/input search_stop"
|
||||||
|
ctrl-R = "/input search_switch_regex"
|
||||||
|
meta2-A = "/input search_previous"
|
||||||
|
meta2-B = "/input search_next"
|
||||||
|
meta-c = "/input search_switch_case"
|
||||||
|
|
||||||
|
[key_cursor]
|
||||||
|
ctrl-J = "/cursor stop"
|
||||||
|
ctrl-M = "/cursor stop"
|
||||||
|
meta-meta2-A = "/cursor move area_up"
|
||||||
|
meta-meta2-B = "/cursor move area_down"
|
||||||
|
meta-meta2-C = "/cursor move area_right"
|
||||||
|
meta-meta2-D = "/cursor move area_left"
|
||||||
|
meta2-1;3A = "/cursor move area_up"
|
||||||
|
meta2-1;3B = "/cursor move area_down"
|
||||||
|
meta2-1;3C = "/cursor move area_right"
|
||||||
|
meta2-1;3D = "/cursor move area_left"
|
||||||
|
meta2-A = "/cursor move up"
|
||||||
|
meta2-B = "/cursor move down"
|
||||||
|
meta2-C = "/cursor move right"
|
||||||
|
meta2-D = "/cursor move left"
|
||||||
|
@chat(python.*):D = "hsignal:slack_cursor_delete"
|
||||||
|
@chat(python.*):L = "hsignal:slack_cursor_linkarchive"
|
||||||
|
@chat(python.*):M = "hsignal:slack_cursor_message"
|
||||||
|
@chat(python.*):R = "hsignal:slack_cursor_reply"
|
||||||
|
@chat(python.*):T = "hsignal:slack_cursor_thread"
|
||||||
|
@item(buffer_nicklist):K = "/window ${_window_number};/kickban ${nick}"
|
||||||
|
@item(buffer_nicklist):b = "/window ${_window_number};/ban ${nick}"
|
||||||
|
@item(buffer_nicklist):k = "/window ${_window_number};/kick ${nick}"
|
||||||
|
@item(buffer_nicklist):q = "/window ${_window_number};/query ${nick};/cursor stop"
|
||||||
|
@item(buffer_nicklist):w = "/window ${_window_number};/whois ${nick}"
|
||||||
|
@chat:Q = "hsignal:chat_quote_time_prefix_message;/cursor stop"
|
||||||
|
@chat:m = "hsignal:chat_quote_message;/cursor stop"
|
||||||
|
@chat:q = "hsignal:chat_quote_prefix_message;/cursor stop"
|
||||||
|
|
||||||
|
[key_mouse]
|
||||||
|
@bar(buflist):ctrl-wheeldown = "hsignal:buflist_mouse"
|
||||||
|
@bar(buflist):ctrl-wheelup = "hsignal:buflist_mouse"
|
||||||
|
@bar(input):button2 = "/input grab_mouse_area"
|
||||||
|
@bar(nicklist):button1-gesture-down = "/bar scroll nicklist ${_window_number} +100%"
|
||||||
|
@bar(nicklist):button1-gesture-down-long = "/bar scroll nicklist ${_window_number} e"
|
||||||
|
@bar(nicklist):button1-gesture-up = "/bar scroll nicklist ${_window_number} -100%"
|
||||||
|
@bar(nicklist):button1-gesture-up-long = "/bar scroll nicklist ${_window_number} b"
|
||||||
|
@chat(fset.fset):button1 = "/window ${_window_number};/fset -go ${_chat_line_y}"
|
||||||
|
@chat(fset.fset):button2* = "hsignal:fset_mouse"
|
||||||
|
@chat(fset.fset):wheeldown = "/fset -down 5"
|
||||||
|
@chat(fset.fset):wheelup = "/fset -up 5"
|
||||||
|
@chat(python.*):button2 = "hsignal:slack_mouse"
|
||||||
|
@chat(script.scripts):button1 = "/window ${_window_number};/script go ${_chat_line_y}"
|
||||||
|
@chat(script.scripts):button2 = "/window ${_window_number};/script go ${_chat_line_y};/script installremove -q ${script_name_with_extension}"
|
||||||
|
@chat(script.scripts):wheeldown = "/script down 5"
|
||||||
|
@chat(script.scripts):wheelup = "/script up 5"
|
||||||
|
@item(buffer_nicklist):button1 = "/window ${_window_number};/query ${nick}"
|
||||||
|
@item(buffer_nicklist):button1-gesture-left = "/window ${_window_number};/kick ${nick}"
|
||||||
|
@item(buffer_nicklist):button1-gesture-left-long = "/window ${_window_number};/kickban ${nick}"
|
||||||
|
@item(buffer_nicklist):button2 = "/window ${_window_number};/whois ${nick}"
|
||||||
|
@item(buffer_nicklist):button2-gesture-left = "/window ${_window_number};/ban ${nick}"
|
||||||
|
@item(buflist):button1* = "hsignal:buflist_mouse"
|
||||||
|
@item(buflist):button2* = "hsignal:buflist_mouse"
|
||||||
|
@item(buflist2):button1* = "hsignal:buflist_mouse"
|
||||||
|
@item(buflist2):button2* = "hsignal:buflist_mouse"
|
||||||
|
@item(buflist3):button1* = "hsignal:buflist_mouse"
|
||||||
|
@item(buflist3):button2* = "hsignal:buflist_mouse"
|
||||||
|
@bar:wheeldown = "/bar scroll ${_bar_name} ${_window_number} +20%"
|
||||||
|
@bar:wheelup = "/bar scroll ${_bar_name} ${_window_number} -20%"
|
||||||
|
@chat:button1 = "/window ${_window_number}"
|
||||||
|
@chat:button1-gesture-left = "/window ${_window_number};/buffer -1"
|
||||||
|
@chat:button1-gesture-left-long = "/window ${_window_number};/buffer 1"
|
||||||
|
@chat:button1-gesture-right = "/window ${_window_number};/buffer +1"
|
||||||
|
@chat:button1-gesture-right-long = "/window ${_window_number};/input jump_last_buffer"
|
||||||
|
@chat:ctrl-wheeldown = "/window scroll_horiz -window ${_window_number} +10%"
|
||||||
|
@chat:ctrl-wheelup = "/window scroll_horiz -window ${_window_number} -10%"
|
||||||
|
@chat:wheeldown = "/window scroll_down -window ${_window_number}"
|
||||||
|
@chat:wheelup = "/window scroll_up -window ${_window_number}"
|
||||||
|
@*:button3 = "/cursor go ${_x},${_y}"
|
49
apps/weechat/xfer.conf
Normal file
49
apps/weechat/xfer.conf
Normal file
|
@ -0,0 +1,49 @@
|
||||||
|
#
|
||||||
|
# weechat -- xfer.conf
|
||||||
|
#
|
||||||
|
# WARNING: It is NOT recommended to edit this file by hand,
|
||||||
|
# especially if WeeChat is running.
|
||||||
|
#
|
||||||
|
# Use /set or similar command to change settings in WeeChat.
|
||||||
|
#
|
||||||
|
# For more info, see: https://weechat.org/doc/quickstart
|
||||||
|
#
|
||||||
|
|
||||||
|
[look]
|
||||||
|
auto_open_buffer = on
|
||||||
|
progress_bar_size = 20
|
||||||
|
pv_tags = "notify_private"
|
||||||
|
|
||||||
|
[color]
|
||||||
|
status_aborted = lightred
|
||||||
|
status_active = lightblue
|
||||||
|
status_connecting = yellow
|
||||||
|
status_done = lightgreen
|
||||||
|
status_failed = lightred
|
||||||
|
status_waiting = lightcyan
|
||||||
|
text = default
|
||||||
|
text_bg = default
|
||||||
|
text_selected = white
|
||||||
|
|
||||||
|
[network]
|
||||||
|
blocksize = 65536
|
||||||
|
fast_send = on
|
||||||
|
own_ip = ""
|
||||||
|
port_range = ""
|
||||||
|
send_ack = on
|
||||||
|
speed_limit_recv = 0
|
||||||
|
speed_limit_send = 0
|
||||||
|
timeout = 300
|
||||||
|
|
||||||
|
[file]
|
||||||
|
auto_accept_chats = off
|
||||||
|
auto_accept_files = off
|
||||||
|
auto_accept_nicks = ""
|
||||||
|
auto_check_crc32 = off
|
||||||
|
auto_rename = on
|
||||||
|
auto_resume = on
|
||||||
|
convert_spaces = on
|
||||||
|
download_path = "%h/xfer"
|
||||||
|
download_temporary_suffix = ".part"
|
||||||
|
upload_path = "~"
|
||||||
|
use_nick_in_filename = on
|
|
@ -1,6 +1,6 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
source "$DOTFILES_PATH/de/bar/bar.bash" --just-vars
|
. "$DOTFILES_PATH/apps/de/polybar/run" --just-vars
|
||||||
|
|
||||||
LAUNCHER_FONT="$BAR_FONT"
|
LAUNCHER_FONT="$BAR_FONT"
|
||||||
LAUNCHER_FONT_SIZE="$BAR_FONT_SIZE"
|
LAUNCHER_FONT_SIZE="$BAR_FONT_SIZE"
|
||||||
|
@ -10,10 +10,7 @@ BACKGROUND_COLOR=$(xrq background)
|
||||||
FOREGROUND_COLOR=$(xrq foreground)
|
FOREGROUND_COLOR=$(xrq foreground)
|
||||||
GAP=$(xrq internalBorder)
|
GAP=$(xrq internalBorder)
|
||||||
|
|
||||||
# load a per-device config last so anything can be overridden
|
. maybe_source_env_file app-launcher
|
||||||
if [ -a "$EDFP/app-launcher" ]; then
|
|
||||||
source "$EDFP/app-launcher"
|
|
||||||
fi
|
|
||||||
|
|
||||||
rofi \
|
rofi \
|
||||||
-combi-modi run,window \
|
-combi-modi run,window \
|
||||||
|
|
5
bin/archive
Executable file
5
bin/archive
Executable file
|
@ -0,0 +1,5 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
archive_name="$(basename "${1}").tar.zstd"
|
||||||
|
tar --zstd -cvf "${archive_name}" "${@}"
|
||||||
|
echo "Archive created at: ${archive_name} "
|
5
bin/archive.moon
Executable file
5
bin/archive.moon
Executable file
|
@ -0,0 +1,5 @@
|
||||||
|
#!/usr/bin/env moon
|
||||||
|
|
||||||
|
archive_name = "#{string.gsub arg[1], "(.*/)(.*)", "%2"}.tar.zstd"
|
||||||
|
os.execute "tar --zstd -cvf '#{archive_name}' '#{table.concat arg, "' '"}'"
|
||||||
|
print "Archive created at: #{archive_name}"
|
|
@ -1,3 +1,6 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
pacaur -Syyu --noconfirm --noedit
|
pacaur -Syyu --noconfirm --noedit
|
||||||
|
|
||||||
|
# TODO: update kernel with a flag?
|
||||||
|
# yes | pacman -Syu && kexec -l --initrd=/boot/initramfs-linux.img /boot/vmlinuz-linux && kexec -e
|
||||||
|
|
5
bin/clip
Executable file
5
bin/clip
Executable file
|
@ -0,0 +1,5 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
xclip -selection primary
|
||||||
|
xclip -selection primary -out | xclip -selection clipboard
|
||||||
|
xclip -selection primary -out | xclip -selection secondary
|
5
bin/clipstatus
Executable file
5
bin/clipstatus
Executable file
|
@ -0,0 +1,5 @@
|
||||||
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
|
echo "Primary : $(xclip -out -selection primary)"
|
||||||
|
echo "Secondary: $(xclip -out -selection primary)"
|
||||||
|
echo "Clipboard: $(xclip -out -selection clipboard)"
|
3
bin/compress
Executable file
3
bin/compress
Executable file
|
@ -0,0 +1,3 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
zstd "$@"
|
3
bin/decompress
Executable file
3
bin/decompress
Executable file
|
@ -0,0 +1,3 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
unzstd "$@"
|
30
bin/dotfiles-make-env
Executable file
30
bin/dotfiles-make-env
Executable file
|
@ -0,0 +1,30 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
echo "Not implemented yet!"; exit 1
|
||||||
|
|
||||||
|
edfp="$ENV_PATH/$1"
|
||||||
|
mkdir -p "$edfp/"
|
||||||
|
mkdir -p "$edfp/.hidden/bash.d/"
|
||||||
|
mkdir -p "$edfp/bin/"
|
||||||
|
mkdir -p "$edfp/x/"
|
||||||
|
mkdir -p "$edfp/sway/waybar"
|
||||||
|
mkdir -p "$edfp/sway/config.d"
|
||||||
|
mkdir -p "$HOME/.bin/"
|
||||||
|
|
||||||
|
touches=(
|
||||||
|
"$edfp/bash"
|
||||||
|
"$edfp/x/init"
|
||||||
|
"$edfp/x/profile"
|
||||||
|
"$edfp/x/resources"
|
||||||
|
"$edfp/vim"
|
||||||
|
"$edfp/bspwm"
|
||||||
|
"$edfp/polybar"
|
||||||
|
"$edfp/app-launcher"
|
||||||
|
"$edfp/workdock"
|
||||||
|
)
|
||||||
|
|
||||||
|
for t in "${touches[@]}"; do
|
||||||
|
touch "$t"
|
||||||
|
done
|
||||||
|
|
||||||
|
chmod 700 -R "$edfp"
|
5
bin/dotfiles-update
Executable file
5
bin/dotfiles-update
Executable file
|
@ -0,0 +1,5 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# TODO: implement
|
||||||
|
|
||||||
|
echo "Not implemented"
|
73
bin/email-via-mailgun-smtp
Executable file
73
bin/email-via-mailgun-smtp
Executable file
|
@ -0,0 +1,73 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
err() {
|
||||||
|
errpre=""
|
||||||
|
errpost=""
|
||||||
|
if test -t 1; then
|
||||||
|
ncolors=$(tput colors)
|
||||||
|
if test -n "$ncolors" && test $ncolors -ge 8; then
|
||||||
|
errpre="$(tput setaf 1)"
|
||||||
|
errpost="$(tput setaf 7)"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
>&2 echo "${errpre}ERROR: $@${errpost}"; usage; exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
warn() {
|
||||||
|
pre=""
|
||||||
|
post=""
|
||||||
|
if test -t 1; then
|
||||||
|
ncolors=$(tput colors)
|
||||||
|
if test -n "$ncolors" && test $ncolors -ge 8; then
|
||||||
|
pre="$(tput setaf 3)"
|
||||||
|
post="$(tput setaf 7)"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
>&2 echo "${pre}WARNING: $@${post}"
|
||||||
|
}
|
||||||
|
|
||||||
|
usage() { >&2 cat <<USAGEDOC
|
||||||
|
usage:
|
||||||
|
email-via-mailgun-smtp [recipient] [subject] [username] [password] <<< 'Hello, world!'
|
||||||
|
|
||||||
|
email-via-mailgun-smtp will read all the input from stdin and use the contents as the body of the email.
|
||||||
|
recipient will default to DEFAULT_MAILGUN_SMTP_RECIPIENT if not set
|
||||||
|
username will default to DEFAULT_MAILGUN_SMTP_USERNAME if not set
|
||||||
|
password will default to DEFAULT_MAILGUN_SMTP_PASSWORD if not set
|
||||||
|
subject will default to DEFAULT_MAILGUN_SMTP_SUBJECT if not set
|
||||||
|
USAGEDOC
|
||||||
|
}
|
||||||
|
|
||||||
|
recipient="${1:-$DEFAULT_MAILGUN_SMTP_RECIPIENT}"; shift
|
||||||
|
[[ -z $recipient ]] && err 'No recipient provided.'
|
||||||
|
|
||||||
|
subject="${1:-$DEFAULT_MAILGUN_SMTP_SUBJECT}"; shift
|
||||||
|
[[ -z $subject ]] && warn 'No subject provided. Leaving blank.'
|
||||||
|
|
||||||
|
username="${1:-$DEFAULT_MAILGUN_SMTP_USERNAME}"; shift
|
||||||
|
[[ -z $username ]] && err 'No username provided.'
|
||||||
|
|
||||||
|
password="${1:-$DEFAULT_MAILGUN_SMTP_PASSWORD}"; shift
|
||||||
|
[[ -z $password ]] && err 'No password provided.'
|
||||||
|
|
||||||
|
warn "Reading email body from stdin..."
|
||||||
|
|
||||||
|
body=""
|
||||||
|
while read -r line; do
|
||||||
|
body="${body}\n${line}"
|
||||||
|
done
|
||||||
|
|
||||||
|
[[ -z $body ]] && err 'Body was blank.'
|
||||||
|
|
||||||
|
echo "Recipient: $recipient"
|
||||||
|
|
||||||
|
>&2 echo "Finished reading body. Sending email..."
|
||||||
|
|
||||||
|
swaks --auth \
|
||||||
|
--server smtp.mailgun.org \
|
||||||
|
--au "$username" \
|
||||||
|
--ap "$password" \
|
||||||
|
--to "$recipient" \
|
||||||
|
--h-Subject: "$subject" \
|
||||||
|
--body "$body"
|
||||||
|
|
4
bin/ezln
4
bin/ezln
|
@ -1,6 +1,6 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
SOURCE=$(realpath "$1")
|
SOURCE=$(realpath "$1") # this one exists
|
||||||
DEST=$(realpath -m "$2")
|
DEST=$(realpath -m "$2") # this is the link to what exists
|
||||||
|
|
||||||
ln -s "$SOURCE" "$DEST"
|
ln -s "$SOURCE" "$DEST"
|
||||||
|
|
18
bin/fsw
18
bin/fsw
|
@ -40,21 +40,32 @@ ${I}${I}${I}'.*' /etc/secrets \$HOME/.secrets
|
||||||
USAGE
|
USAGE
|
||||||
}
|
}
|
||||||
|
|
||||||
|
dbg() {
|
||||||
|
if [[ ! -z ${FSW_DEBUG+x} ]]; then
|
||||||
|
echo -e "[debug] fsw: $@"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
if [[ $1 = '-h' ]] || [[ $1 = '--help' ]] || [[ -z $1 ]]; then
|
if [[ $1 = '-h' ]] || [[ $1 = '--help' ]] || [[ -z $1 ]]; then
|
||||||
help
|
help
|
||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
FSW_EVENTS="${FSW_EVENTS:-close_write}"
|
FSW_EVENTS="${FSW_EVENTS:-close_write}"
|
||||||
|
dbg "Events: $FSW_EVENTS"
|
||||||
SHELL_COMMAND="${1}"; shift
|
SHELL_COMMAND="${1}"; shift
|
||||||
|
dbg "Command: $SHELL_COMMAND"
|
||||||
FILTER="${1}"; shift
|
FILTER="${1}"; shift
|
||||||
|
dbg "Filter: $FILTER"
|
||||||
|
dbg "Directory: ${1}"
|
||||||
DIRS=("${1:-.}"); shift
|
DIRS=("${1:-.}"); shift
|
||||||
if [[ -e $FILTER ]]; then
|
if [[ -e $FILTER ]]; then
|
||||||
# TODO: this is a sad hack/workaround
|
# TODO: this is a sad hack/workaround
|
||||||
echo "It looks like your filter is an actual file. I'll just watch that for you."
|
echo "It looks like your filter is an actual file. I'll just watch that for you."
|
||||||
DIRS=("${FILTER}")
|
DIRS=("${FILTER}")
|
||||||
fi
|
fi
|
||||||
while [[ ! -z $1 ]]; do
|
while [[ ! -z $1 ]] && $(realpath $1) &> /dev/null; do
|
||||||
|
dbg "Directory: ${1}"
|
||||||
DIRS+=("$1"); shift
|
DIRS+=("$1"); shift
|
||||||
done
|
done
|
||||||
inotifywait -m -e "${FSW_EVENTS}" -r "${DIRS[@]}" 2>&1 \
|
inotifywait -m -e "${FSW_EVENTS}" -r "${DIRS[@]}" 2>&1 \
|
||||||
|
@ -62,12 +73,15 @@ inotifywait -m -e "${FSW_EVENTS}" -r "${DIRS[@]}" 2>&1 \
|
||||||
| while read -r dir events filename; do
|
| while read -r dir events filename; do
|
||||||
if [[ "$dir $events" = "Watches established." ]]; then
|
if [[ "$dir $events" = "Watches established." ]]; then
|
||||||
echo "Ready."
|
echo "Ready."
|
||||||
|
dbg "Directory: ${DIRS[@]}"
|
||||||
else
|
else
|
||||||
export FSW_FILENAME="$filename"
|
export FSW_FILENAME="$filename"
|
||||||
export FSW_DIR="$dir"
|
export FSW_DIR="$dir"
|
||||||
export FSW_PATH="$dir$filename"
|
export FSW_PATH="$dir$filename"
|
||||||
export FSW_FILE_EVENTS="$events"
|
export FSW_FILE_EVENTS="$events"
|
||||||
export FSW_EVENT="$events $dir$filename"
|
export FSW_EVENT="$events $dir$filename"
|
||||||
<<< "$FSW_PATH" grep -P "$FILTER" > /dev/null 2>&1 && eval "${SHELL_COMMAND}"
|
dbg "Event:\n $(date)\n $FSW_PATH\n $FILTER\n $FSW_EVENT\n $dir $events $filename\n ${SHELL_COMMAND}"
|
||||||
|
dbg "Filtered Event: $(<<< "$FSW_PATH" grep -P "$FILTER")"
|
||||||
|
<<< "$FSW_PATH" grep -P "$FILTER" > /dev/null 2>&1 && eval "${SHELL_COMMAND}"
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Reference in a new issue