Huge refactoring; Switch back to fish shell; Dip toes into wayland; Update dmenu stuff
This commit is contained in:
parent
dc5e2049c7
commit
1d73a2b920
63 changed files with 1434 additions and 41 deletions
|
@ -19,10 +19,12 @@
|
|||
*.color13: #FF92D0
|
||||
*.color14: #9AEDFE
|
||||
*.color15: #E6E6E6
|
||||
*.font: Hack:size=10:antialias=true:autohint=true
|
||||
*.font: Fira Code:pixelsize=12:antialias=true:autohint=true
|
||||
*.termName: xterm-256color
|
||||
*.shell: /usr/bin/zsh
|
||||
*.tabspaces: 4
|
||||
*.borderpx: 2
|
||||
|
||||
Xft.dpi: 96
|
||||
Xcursor.theme: Bibata-Modern-Amber
|
||||
Xcursor.size: 24
|
||||
|
|
4
.config/.gitignore
vendored
4
.config/.gitignore
vendored
|
@ -8,7 +8,11 @@
|
|||
!/alacritty/
|
||||
!/bspwm/
|
||||
!/dmenu/
|
||||
!/dmenu-wl/
|
||||
!/fish/
|
||||
!/nitrogen/
|
||||
!/polybar/
|
||||
!/rustfmt/
|
||||
!/river/
|
||||
!/sxhkd/
|
||||
!/waybar/
|
||||
|
|
|
@ -63,14 +63,14 @@ else
|
|||
fi
|
||||
fi
|
||||
|
||||
if [ -x "$(command -v /usr/lib/xfce-polkit/xfce-polkit)" ]; then
|
||||
/usr/lib/xfce-polkit/xfce-polkit &
|
||||
if [ -x "$(command -v /usr/bin/lxqt-policykit-agent)" ]; then
|
||||
/usr/bin/lxqt-policykit-agent &
|
||||
return_val=$?
|
||||
if [ $return_val -ne 0 ]; then
|
||||
echo >&2 "Couldn't fire up xfce-polkit: $return_val"
|
||||
echo >&2 "Couldn't fire up lxqt-policykit: $return_val"
|
||||
fi
|
||||
else
|
||||
echo >&2 "Can't seem to find the /usr/lib/xfce-polkit/xfce-polkit executable"
|
||||
echo >&2 "Can't seem to find the /usr/bin/lxqt-policykit-agent executable"
|
||||
fi
|
||||
|
||||
if [ -x "$(command -v polybar)" ]; then
|
||||
|
|
8
.config/dmenu-wl/.gitignore
vendored
Normal file
8
.config/dmenu-wl/.gitignore
vendored
Normal file
|
@ -0,0 +1,8 @@
|
|||
/*
|
||||
/*/
|
||||
!/.gitignore
|
||||
|
||||
!/dmenu_bspwm_desktop
|
||||
!/dmenu_bspwm_desktop_content
|
||||
!/dmenu_bspwm_monitor
|
||||
!/dmenu_run_with_aliases
|
9
.config/dmenu-wl/dmenu_run_with_aliases
Executable file
9
.config/dmenu-wl/dmenu_run_with_aliases
Executable file
|
@ -0,0 +1,9 @@
|
|||
#!/usr/bin/env zsh
|
||||
|
||||
if [[ -f $HOME/.zshenv ]]; then
|
||||
source $HOME/.zshenv
|
||||
fi
|
||||
|
||||
command_to_run=$({ alias | awk '{split($0,alias,"="); print alias[1];}' ; dmenu-wl_path ; } | sort | dmenu-wl -i -fn "Fira Code:pixelsize=12:antialias=true:autohint=true" -nb "#282a36" -nf "#f8f8f2" -sb "#44475a" -sf "#f8f8f2" "$@")
|
||||
|
||||
eval ${command_to_run} &
|
7
.config/dmenu/.gitignore
vendored
7
.config/dmenu/.gitignore
vendored
|
@ -2,7 +2,6 @@
|
|||
/*/
|
||||
!/.gitignore
|
||||
|
||||
!/dmenu_bspwm_desktop
|
||||
!/dmenu_bspwm_desktop_content
|
||||
!/dmenu_bspwm_monitor
|
||||
!/dmenu_run_with_aliases
|
||||
!/bspwm
|
||||
!/run
|
||||
!/run_zsh
|
||||
|
|
142
.config/dmenu/bspwm
Executable file
142
.config/dmenu/bspwm
Executable file
|
@ -0,0 +1,142 @@
|
|||
#!/bin/sh
|
||||
|
||||
dmenu_string="Wrong parameter"
|
||||
|
||||
function desktop() {
|
||||
case $1 in
|
||||
"rename")
|
||||
dmenu_string="Rename desktop to: " ;;
|
||||
"delete")
|
||||
dmenu_string="Really delete this desktop? (n = abort): " ;;
|
||||
"swap")
|
||||
dmenu_string="Swap desktop with desktop: " ;;
|
||||
"swapfollow")
|
||||
dmenu_string="Swap and follow desktop with desktop: " ;;
|
||||
esac
|
||||
|
||||
desktop=""
|
||||
|
||||
if [[ $1 == "delete" || $1 == "rename" ]]; then
|
||||
desktop=$(echo "" | dmenu -i -fn "$get_font" -nb "#282a36" -nf "#f8f8f2" -sb "#44475a" -sf "#f8f8f2" -p "$dmenu_string")
|
||||
else
|
||||
if [[ $1 != "bubbleprev" && $1 != "bubblenext" && $1 != "save" && $1 != "load" ]]; then
|
||||
desktop=$(bspc query -m focused -D --names | dmenu -i -fn "$get_font" -nb "#282a36" -nf "#f8f8f2" -sb "#44475a" -sf "#f8f8f2" -p "$dmenu_string")
|
||||
fi
|
||||
fi
|
||||
|
||||
case $1 in
|
||||
"rename")
|
||||
if [[ $desktop != "" ]];
|
||||
then
|
||||
bspc desktop -n $desktop
|
||||
fi
|
||||
;;
|
||||
"delete")
|
||||
echo $desktop
|
||||
if [[ $desktop != "n" ]];
|
||||
then
|
||||
bspc desktop -r
|
||||
fi
|
||||
;;
|
||||
"swap")
|
||||
bspc desktop -s $desktop ;;
|
||||
"swapfollow")
|
||||
bspc desktop -s $desktop --follow ;;
|
||||
"bubbleprev")
|
||||
bspc desktop -b prev ;;
|
||||
"bubblenext")
|
||||
bspc desktop -b next ;;
|
||||
"save")
|
||||
bspwm-save ;;
|
||||
"load")
|
||||
bspwm-load ;;
|
||||
esac
|
||||
}
|
||||
|
||||
function desktop_content() {
|
||||
case $1 in
|
||||
"goto")
|
||||
dmenu_string="Switch to desktop: " ;;
|
||||
"move")
|
||||
dmenu_string="Move node to desktop: " ;;
|
||||
"movefollow")
|
||||
dmenu_string="Move and follow node to desktop: " ;;
|
||||
esac
|
||||
|
||||
desktop=$(bspc query -m focused -D --names | dmenu -i -fn "$get_font" -nb "#282a36" -nf "#f8f8f2" -sb "#44475a" -sf "#f8f8f2" -p "$dmenu_string")
|
||||
|
||||
found=false
|
||||
|
||||
desktop_list=$(bspc query -m focused -D --names)
|
||||
desktop_array=$(echo $desktop_list | tr '\n' ' ')
|
||||
|
||||
if [[ $desktop != "" ]]; then
|
||||
for name in $desktop_array; do
|
||||
if [[ $name == $desktop ]]; then
|
||||
found=true
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
if [ ! $found = true ]; then
|
||||
bspc monitor -d $desktop_array $desktop
|
||||
fi
|
||||
|
||||
case $1 in
|
||||
"goto")
|
||||
bspc desktop -f $desktop ;;
|
||||
"move")
|
||||
bspc node -d $desktop ;;
|
||||
"movefollow")
|
||||
bspc node -d $desktop --follow ;;
|
||||
esac
|
||||
}
|
||||
|
||||
function monitor() {
|
||||
case $1 in
|
||||
"goto")
|
||||
dmenu_string="Switch to monitor: " ;;
|
||||
"swap")
|
||||
dmenu_string="Swap monitor with monitor: " ;;
|
||||
"movenode")
|
||||
dmenu_string="Move node to monitor: " ;;
|
||||
"movenodefollow")
|
||||
dmenu_string="Move and follow node to monitor: " ;;
|
||||
"movedesktop")
|
||||
dmenu_string="Move desktop to monitor: " ;;
|
||||
"movedesktopfollow")
|
||||
dmenu_string="Move and follow desktop to monitor: " ;;
|
||||
esac
|
||||
|
||||
monitor=$(bspc query -M --names | dmenu -i -fn "$get_font" -nb "#282a36" -nf "#f8f8f2" -sb "#44475a" -sf "#f8f8f2" -p "$dmenu_string")
|
||||
|
||||
case $1 in
|
||||
"goto")
|
||||
bspc monitor -f $monitor ;;
|
||||
"swap")
|
||||
bspc monitor -s $monitor ;;
|
||||
"movenode")
|
||||
bspc node -m $monitor ;;
|
||||
"movenodefollow")
|
||||
bspc node -m $monitor --follow ;;
|
||||
"movedesktop")
|
||||
bspc desktop -m $monitor ;;
|
||||
"movedesktopfollow")
|
||||
bspc desktop -m $monitor --follow ;;
|
||||
esac
|
||||
}
|
||||
|
||||
if [ ! -z $SHELL ]; then
|
||||
get_font="$($SHELL -c "get-font")"
|
||||
else
|
||||
get_font="Fira Code:pixelsize=12:antialias=true:autohint=true"
|
||||
fi
|
||||
|
||||
case $1 in
|
||||
"desktop")
|
||||
desktop $2 ;;
|
||||
"desktop_content")
|
||||
desktop_content $2 ;;
|
||||
"monitor")
|
||||
monitor $2 ;;
|
||||
esac
|
16
.config/dmenu/run
Executable file
16
.config/dmenu/run
Executable file
|
@ -0,0 +1,16 @@
|
|||
#!/bin/sh
|
||||
|
||||
fallback_command="dmenu_run -i -fn \"Fira Code:pixelsize=12:antialias=true:autohint=true\" -nb \"#282a36\" -nf \"#f8f8f2\" -sb \"#44475a\" -sf \"#f8f8f2\""
|
||||
|
||||
if [ ! -z $SHELL ]; then
|
||||
case $SHELL in
|
||||
*"fish")
|
||||
fish -c "dmenu_fish" ;;
|
||||
*"zsh")
|
||||
$HOME/.config/dmenu/run_zsh ;;
|
||||
*)
|
||||
eval ${fallback_command} &
|
||||
esac
|
||||
else
|
||||
eval ${fallback_command} &
|
||||
fi
|
|
@ -4,6 +4,6 @@ if [[ -f $HOME/.zshenv ]]; then
|
|||
source $HOME/.zshenv
|
||||
fi
|
||||
|
||||
command_to_run=$({ alias | awk '{split($0,alias,"="); print alias[1];}' ; dmenu_path ; } | sort | dmenu -i -fn $(get-font) -nb "#282a36" -nf "#f8f8f2" -sb "#44475a" -sf "#f8f8f2" "$@")
|
||||
command_to_run=$({ alias | awk '{split($0,alias,"="); print alias[1];}' ; dmenu_path ; } | sort | dmenu -i -fn "$(get-font)" -nb "#282a36" -nf "#f8f8f2" -sb "#44475a" -sf "#f8f8f2" "$@")
|
||||
|
||||
eval ${command_to_run} &
|
11
.config/fish/.gitignore
vendored
Normal file
11
.config/fish/.gitignore
vendored
Normal file
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
/*/
|
||||
!/.gitignore
|
||||
|
||||
|
||||
!/config.fish
|
||||
!/fish_variables
|
||||
|
||||
!/completions/
|
||||
!/conf.d/
|
||||
!/functions
|
189
.config/fish/completions/watson.fish
Normal file
189
.config/fish/completions/watson.fish
Normal file
|
@ -0,0 +1,189 @@
|
|||
# copy this into ~/.config/fish/completions/ to enable autocomplete for the watson time tracker
|
||||
#
|
||||
function __fish_watson_needs_sub -d "provides a list of sub commands"
|
||||
set cmd (commandline -opc)
|
||||
if [ (count $cmd) -eq 1 -a $cmd[1] = 'watson' ]
|
||||
return 0
|
||||
end
|
||||
return 1
|
||||
end
|
||||
|
||||
function __fish_watson_using_command -d "determine if watson is using the passed command"
|
||||
set cmd (commandline -opc)
|
||||
if [ (count $cmd) -ge 2 -a $cmd[1] = 'watson' ]
|
||||
if [ $argv[1] = $cmd[2] ]
|
||||
return 0
|
||||
end
|
||||
return 1
|
||||
end
|
||||
return 1
|
||||
end
|
||||
|
||||
function __fish_watson_get_projects -d "return a list of projects"
|
||||
command watson projects
|
||||
end
|
||||
|
||||
function __fish_watson_get_tags -d "return a list of tags"
|
||||
command watson tags
|
||||
end
|
||||
|
||||
function __fish_watson_has_project -d "determine if watson is using a passed command and if it has a project"
|
||||
set cmd (commandline -opc)
|
||||
if [ (count $cmd) -gt 2 -a $cmd[1] = 'watson' ]
|
||||
if [ $argv[1] = $cmd[2] ]
|
||||
if contains "$cmd[3]" (__fish_watson_get_projects)
|
||||
return 0
|
||||
end
|
||||
end
|
||||
end
|
||||
return 1
|
||||
end
|
||||
|
||||
function __fish_watson_has_from -d "determine if watson is using a passed command and if it is using from"
|
||||
set cmd (commandline -opc)
|
||||
if [ (count $cmd) -gt 2 -a $cmd[1] = 'watson' ]
|
||||
if [ $argv[1] = $cmd[2] ]
|
||||
if contains -- "$cmd[3]" -f --from
|
||||
return 0
|
||||
end
|
||||
end
|
||||
end
|
||||
return 1
|
||||
end
|
||||
|
||||
function __fish_watson_get_frames -d "return a list of frames" #TODO, use watson logs to get more info
|
||||
command watson frames
|
||||
end
|
||||
|
||||
function __fish_watson_needs_project -d "check if we need a project"
|
||||
set cmd (commandline -opc)
|
||||
if [ (count $cmd) -ge 2 -a $cmd[1] = 'watson' ]
|
||||
if [ $argv[1] = $cmd[2] ]
|
||||
for i in $cmd
|
||||
if contains $i (__fish_watson_get_projects)
|
||||
return 1 # return 1 because we alredy have a project
|
||||
end
|
||||
end
|
||||
return 0 # we are using $argv as our command and the command does not contain any projects
|
||||
end
|
||||
end
|
||||
return 1
|
||||
end
|
||||
|
||||
# if a backend.url is set, use it in the command description
|
||||
if [ -e ~/.config/watson/config ]
|
||||
set url_string (command watson config backend.url 2> /dev/null)
|
||||
if test -n "$url_string"
|
||||
set url $url_string
|
||||
end
|
||||
else
|
||||
set url "a remote Crick server"
|
||||
end
|
||||
|
||||
# ungrouped
|
||||
complete -f -c watson -n '__fish_watson_needs_sub' -a cancel -d "Cancel the last start command"
|
||||
complete -f -c watson -n '__fish_watson_needs_sub' -a frames -d "Display the list of all frame IDs"
|
||||
complete -f -c watson -n '__fish_watson_needs_sub' -a help -d "Display help information"
|
||||
complete -f -c watson -n '__fish_watson_needs_sub' -a projects -d "Display the list of projects"
|
||||
complete -f -c watson -n '__fish_watson_needs_sub' -a sync -d "sync your work with $url"
|
||||
complete -f -c watson -n '__fish_watson_needs_sub' -a tags -d "Display the list of tags"
|
||||
|
||||
# add
|
||||
complete -f -c watson -n '__fish_watson_needs_sub' -a add -d "Add time for project with tag(s) that was not tracked live"
|
||||
complete -f -c watson -n '__fish_watson_using_command add' -s f -l from -d "Start date for add"
|
||||
complete -f -c watson -n '__fish_watson_has_from add' -s t -l to -d "end date for add"
|
||||
complete -f -c watson -n '__fish_watson_using_command add' -s c -l confirm-new-project -d "Confirm addition of new project"
|
||||
complete -f -c watson -n '__fish_watson_using_command add' -s b -l confirm-new-tag -d "Confirm addition of new tag"
|
||||
|
||||
# aggregate
|
||||
complete -f -c watson -n '__fish_watson_needs_sub' -a aggregate -d "Display a report of the time spent on each project aggregated by day"
|
||||
complete -f -c watson -n '__fish_watson_using_command aggregate' -s c -l current -d "include the running frame"
|
||||
complete -f -c watson -n '__fish_watson_using_command aggregate' -s C -l no-current -d "exclude the running frame (default)"
|
||||
complete -f -c watson -n '__fish_watson_using_command aggregate' -s f -l from -d "Start date for aggregate"
|
||||
complete -f -c watson -n '__fish_watson_has_from aggregate' -s t -l to -d "end date for aggregate"
|
||||
complete -f -c watson -n '__fish_watson_using_command aggregate' -s p -l project -d "restrict to project" -a "(__fish_watson_get_projects)"
|
||||
complete -f -c watson -n '__fish_watson_using_command aggregate' -s T -l tag -d "restrict to tag" -a "(__fish_watson_get_tags)"
|
||||
complete -f -c watson -n '__fish_watson_using_command aggregate' -s j -l json -d "output json"
|
||||
complete -f -c watson -n '__fish_watson_using_command aggregate' -s s -l csv -d "output csv"
|
||||
complete -f -c watson -n '__fish_watson_using_command aggregate' -s g -l pager -d "view through pager"
|
||||
complete -f -c watson -n '__fish_watson_using_command aggregate' -s G -l no-pager -d "don't vew through pager"
|
||||
|
||||
# config
|
||||
complete -f -c watson -n '__fish_watson_needs_sub' -a config -d "Get and set configuration options"
|
||||
complete -f -c watson -n '__fish_watson_using_command config' -s e -l edit -d "Edit the config with an editor"
|
||||
|
||||
# edit
|
||||
complete -f -c watson -n '__fish_watson_needs_sub' -a edit -d "Edit a frame"
|
||||
complete -f -c watson -n '__fish_watson_using_command edit' -a "(__fish_watson_get_frames)"
|
||||
|
||||
# log
|
||||
complete -f -c watson -n '__fish_watson_needs_sub' -a log -d "Display sessions during the given timespan"
|
||||
complete -f -c watson -n '__fish_watson_using_command log' -s c -l current -d "include the running frame"
|
||||
complete -f -c watson -n '__fish_watson_using_command log' -s C -l no-current -d "exclude the running frame (default)"
|
||||
complete -f -c watson -n '__fish_watson_using_command log' -s f -l from -d "Start date for log"
|
||||
complete -f -c watson -n '__fish_watson_has_from log' -s t -l to -d "end date for log"
|
||||
complete -f -c watson -n '__fish_watson_using_command log' -s y -l year -d "show the last year"
|
||||
complete -f -c watson -n '__fish_watson_using_command log' -s m -l month -d "show the last month"
|
||||
complete -f -c watson -n '__fish_watson_using_command log' -s l -l luna -d "show the last lunar cycle"
|
||||
complete -f -c watson -n '__fish_watson_using_command log' -s w -l week -d "show week-to-day"
|
||||
complete -f -c watson -n '__fish_watson_using_command log' -s d -l day -d "show today"
|
||||
complete -f -c watson -n '__fish_watson_using_command log' -s a -l all -d "show all"
|
||||
complete -f -c watson -n '__fish_watson_using_command log' -s p -l project -d "restrict to project" -a "(__fish_watson_get_projects)"
|
||||
complete -f -c watson -n '__fish_watson_using_command log' -s T -l tag -d "restrict to tag" -a "(__fish_watson_get_tags)"
|
||||
complete -f -c watson -n '__fish_watson_using_command log' -s j -l json -d "output json"
|
||||
complete -f -c watson -n '__fish_watson_using_command log' -s s -l csv -d "output csv"
|
||||
complete -f -c watson -n '__fish_watson_using_command log' -s g -l pager -d "view through pager"
|
||||
complete -f -c watson -n '__fish_watson_using_command log' -s G -l no-pager -d "don't vew through pager"
|
||||
|
||||
# merge
|
||||
complete -f -c watson -n '__fish_watson_needs_sub' -a merge -d "merge existing frames with conflicting ones"
|
||||
complete -f -c watson -n '__fish_watson_using_command merge' -s f -l force -d "silently merge"
|
||||
|
||||
# remove
|
||||
complete -f -c watson -n '__fish_watson_needs_sub' -a remove -d "Remove a frame"
|
||||
complete -f -c watson -n '__fish_watson_using_command remove' -a "(__fish_watson_get_frames)"
|
||||
complete -f -c watson -n '__fish_watson_using_command remove' -s f -l force -d "silently remove"
|
||||
|
||||
# rename
|
||||
complete -f -c watson -n '__fish_watson_needs_sub' -a rename -d "Rename a project or tag"
|
||||
complete -f -c watson -n '__fish_watson_using_command rename' -a "(__fish_watson_get_projects) (__fish_watson_get_tags)"
|
||||
|
||||
# report
|
||||
complete -f -c watson -n '__fish_watson_needs_sub' -a report -d "Display a report of time spent"
|
||||
complete -f -c watson -n '__fish_watson_using_command report' -s c -l current -d "include the running frame"
|
||||
complete -f -c watson -n '__fish_watson_using_command report' -s C -l no-current -d "exclude the running frame (default)"
|
||||
complete -f -c watson -n '__fish_watson_using_command report' -s f -l from -d "Start date for report"
|
||||
complete -f -c watson -n '__fish_watson_has_from report' -s t -l to -d "end date for report"
|
||||
complete -f -c watson -n '__fish_watson_using_command report' -s y -l year -d "show the last year"
|
||||
complete -f -c watson -n '__fish_watson_using_command report' -s m -l month -d "show the last month"
|
||||
complete -f -c watson -n '__fish_watson_using_command report' -s l -l luna -d "show the last lunar cycle"
|
||||
complete -f -c watson -n '__fish_watson_using_command report' -s w -l week -d "show week-to-day"
|
||||
complete -f -c watson -n '__fish_watson_using_command report' -s d -l day -d "show today"
|
||||
complete -f -c watson -n '__fish_watson_using_command report' -s a -l all -d "show all"
|
||||
complete -f -c watson -n '__fish_watson_using_command report' -s p -l project -d "restrict to project" -a "(__fish_watson_get_projects)"
|
||||
complete -f -c watson -n '__fish_watson_using_command report' -s T -l tag -d "restrict to tag" -a "(__fish_watson_get_tags)"
|
||||
complete -f -c watson -n '__fish_watson_using_command report' -s j -l json -d "output json"
|
||||
complete -f -c watson -n '__fish_watson_using_command report' -s s -l csv -d "output csv"
|
||||
complete -f -c watson -n '__fish_watson_using_command report' -s g -l pager -d "view through pager"
|
||||
complete -f -c watson -n '__fish_watson_using_command report' -s G -l no-pager -d "don't vew through pager"
|
||||
|
||||
# restart
|
||||
complete -f -c watson -n '__fish_watson_needs_sub' -a restart -d "Restart monitoring time for a stopped project"
|
||||
complete -f -c watson -n '__fish_watson_using_command restart' -s s -l stop -d "stop running project"
|
||||
complete -f -c watson -n '__fish_watson_using_command restart' -s S -l no-stop -d "do not stop running project"
|
||||
complete -f -c watson -n '__fish_watson_using_command restart' -a "(__fish_watson_get_frames)"
|
||||
|
||||
# start
|
||||
complete -f -c watson -n '__fish_watson_needs_sub' -a start -d "Start monitoring time for a project"
|
||||
complete -f -c watson -n '__fish_watson_needs_project start' -a "(__fish_watson_get_projects)"
|
||||
complete -f -c watson -n '__fish_watson_has_project start' -a "+(__fish_watson_get_tags)"
|
||||
|
||||
# status
|
||||
complete -f -c watson -n '__fish_watson_needs_sub' -a status -d "Display when the current project was started and time spent"
|
||||
complete -f -c watson -n '__fish_watson_using_command status' -s p -l project -d "only show project"
|
||||
complete -f -c watson -n '__fish_watson_using_command status' -s t -l tags -d "only show tags"
|
||||
complete -f -c watson -n '__fish_watson_using_command status' -s e -l elapsed -d "only show elapsed time"
|
||||
|
||||
# stop
|
||||
complete -f -c watson -n '__fish_watson_needs_sub' -a stop -d "Stop monitoring time for the current project"
|
||||
complete -f -c watson -n '__fish_watson_using_command stop' -l at -d "Stop frame at this time (YYYY-MM-DDT)?HH:MM(:SS)?"
|
19
.config/fish/conf.d/env.fish
Normal file
19
.config/fish/conf.d/env.fish
Normal file
|
@ -0,0 +1,19 @@
|
|||
set -x LANG "en_US.UTF-8"
|
||||
set -x EDITOR "nvim"
|
||||
set -x TERMINAL "alacritty"
|
||||
|
||||
set -x SSH_AUTH_SOCK "$(gpgconf --list-dir socketdir)/S.gpg-agent.ssh"
|
||||
set -x GPG_TTY $(tty)
|
||||
|
||||
set -x CXXFLAGS "-std=c++14"
|
||||
|
||||
set -x LD_LIBRARY_PATH $LD_LIBRARY_PATH
|
||||
set -x XDG_CONFIG_HOME "$HOME/.config"
|
||||
|
||||
set -x JUCE_PATH "$HOME/JUCE"
|
||||
|
||||
set -x LIBGL_ALWAYS_INDIRECT 1
|
||||
|
||||
set -x WINIT_X11_SCALE_FACTOR 1
|
||||
|
||||
set -x MOZ_ENABLE_WAYLAND 1
|
1
.config/fish/conf.d/path.fish.example
Normal file
1
.config/fish/conf.d/path.fish.example
Normal file
|
@ -0,0 +1 @@
|
|||
set -x PATH "$HOME/.local/share/gem/ruby/3.0.0/bin" "$HOME/.dotnet/tools" $PATH
|
12
.config/fish/config.fish
Normal file
12
.config/fish/config.fish
Normal file
|
@ -0,0 +1,12 @@
|
|||
if command -q starship
|
||||
starship init fish | source
|
||||
end
|
||||
|
||||
if command -q zoxide
|
||||
zoxide init fish | source
|
||||
end
|
||||
|
||||
set fish_cursor_default block
|
||||
set fish_cursor_insert line
|
||||
set fish_cursor_replace_one underscore
|
||||
set fish_cursor_visual block
|
33
.config/fish/fish_variables
Normal file
33
.config/fish/fish_variables
Normal file
|
@ -0,0 +1,33 @@
|
|||
# This file contains fish universal variable definitions.
|
||||
# VERSION: 3.0
|
||||
SETUVAR __fish_initialized:3400
|
||||
SETUVAR fish_color_autosuggestion:555\x1ebrblack
|
||||
SETUVAR fish_color_cancel:\x2dr
|
||||
SETUVAR fish_color_command:blue
|
||||
SETUVAR fish_color_comment:red
|
||||
SETUVAR fish_color_cwd:green
|
||||
SETUVAR fish_color_cwd_root:red
|
||||
SETUVAR fish_color_end:green
|
||||
SETUVAR fish_color_error:brred
|
||||
SETUVAR fish_color_escape:brcyan
|
||||
SETUVAR fish_color_history_current:\x2d\x2dbold
|
||||
SETUVAR fish_color_host:normal
|
||||
SETUVAR fish_color_host_remote:yellow
|
||||
SETUVAR fish_color_normal:normal
|
||||
SETUVAR fish_color_operator:brcyan
|
||||
SETUVAR fish_color_param:cyan
|
||||
SETUVAR fish_color_quote:yellow
|
||||
SETUVAR fish_color_redirection:cyan\x1e\x2d\x2dbold
|
||||
SETUVAR fish_color_search_match:\x2d\x2dbackground\x3d111
|
||||
SETUVAR fish_color_selection:white\x1e\x2d\x2dbold\x1e\x2d\x2dbackground\x3dbrblack
|
||||
SETUVAR fish_color_status:red
|
||||
SETUVAR fish_color_user:brgreen
|
||||
SETUVAR fish_color_valid_path:\x2d\x2dunderline
|
||||
SETUVAR fish_greeting:
|
||||
SETUVAR fish_key_bindings:fish_vi_key_bindings
|
||||
SETUVAR fish_pager_color_completion:normal
|
||||
SETUVAR fish_pager_color_description:B3A06D\x1eyellow\x1e\x2di
|
||||
SETUVAR fish_pager_color_prefix:cyan\x1e\x2d\x2dbold\x1e\x2d\x2dunderline
|
||||
SETUVAR fish_pager_color_progress:brwhite\x1e\x2d\x2dbackground\x3dcyan
|
||||
SETUVAR fish_pager_color_selected_background:\x2dr
|
||||
SETUVAR fish_user_paths:/home/dustvoice/\x2elocal/bin\x1e/usr/local/bin
|
3
.config/fish/functions/battery-monitor.fish
Normal file
3
.config/fish/functions/battery-monitor.fish
Normal file
|
@ -0,0 +1,3 @@
|
|||
function battery-monitor --description 'Simple stat overview regarding battery charge and power supply connection'
|
||||
watch -t -n 60 '( if [ -f /sys/class/power_supply/ACAD/online ] && [ $(cat /sys/class/power_supply/ACAD/online) == "1" ]; then printf "Power connected\n"; else printf "Power disconnected\n"; fi; printf "\nBattery capacity: "; cat /sys/class/power_supply/BAT1/capacity; printf "\n(Updated every 60s)"; )'
|
||||
end
|
3
.config/fish/functions/binance_miner.fish
Normal file
3
.config/fish/functions/binance_miner.fish
Normal file
|
@ -0,0 +1,3 @@
|
|||
function binance_miner --wraps='ethminer --farm-recheck 200 -P stratum+tcp://DustVoiceETH.Linux@ethash.poolbinance.com:1800' --description 'alias binance_miner=ethminer --farm-recheck 200 -P stratum+tcp://DustVoiceETH.Linux@ethash.poolbinance.com:1800'
|
||||
ethminer --farm-recheck 200 -P stratum+tcp://DustVoiceETH.Linux@ethash.poolbinance.com:1800 $argv;
|
||||
end
|
12
.config/fish/functions/bspwm-load.fish
Normal file
12
.config/fish/functions/bspwm-load.fish
Normal file
|
@ -0,0 +1,12 @@
|
|||
function bspwm-load-custom
|
||||
bspwm-workspaces-init
|
||||
|
||||
if test -e $BSPWM_FILES/$argv[1]
|
||||
bspwm-save-custom $argv[2] $argv[2]
|
||||
bspc monitor -d $(< $BSPWM_FILES/$argv[1])
|
||||
end
|
||||
end
|
||||
|
||||
function bspwm-load --description 'Load previously saved bspwm workspaces'
|
||||
bspwm-load-custom workspaces workspaces.prev_save
|
||||
end
|
13
.config/fish/functions/bspwm-save.fish
Normal file
13
.config/fish/functions/bspwm-save.fish
Normal file
|
@ -0,0 +1,13 @@
|
|||
function bspwm-save-custom
|
||||
bspwm-workspaces-init
|
||||
|
||||
if test -e $BSPWM_FILES/$argv[1]
|
||||
cp $BSPWM_FILES/$argv[1] $BSPWM_FILES/$argv[2]
|
||||
end
|
||||
|
||||
bspc query -m focused -D --names | tr '\n' ' ' | sed 's/ $//g' > $BSPWM_FILES/$argv[1]
|
||||
end
|
||||
|
||||
function bspwm-save --description 'Save current bspwm workspaces'
|
||||
bspwm-save-custom workspaces workspaces.prev_save
|
||||
end
|
7
.config/fish/functions/bspwm-workspace-init.fish
Normal file
7
.config/fish/functions/bspwm-workspace-init.fish
Normal file
|
@ -0,0 +1,7 @@
|
|||
function bspwm-workspaces-init
|
||||
if not set -q BSPWM_FILES
|
||||
set -x BSPWM_FILES "$HOME/.local/share/bspwm"
|
||||
end
|
||||
|
||||
mkdir -p $BSPWM_FILES
|
||||
end
|
9
.config/fish/functions/check-iommu.fish
Normal file
9
.config/fish/functions/check-iommu.fish
Normal file
|
@ -0,0 +1,9 @@
|
|||
function check-iommu --description 'Check iommu groups'
|
||||
for g in /sys/kernel/iommu_groups/*
|
||||
echo "IOMMU Group ${g##*/}:"
|
||||
|
||||
for d in $g/devices/*
|
||||
echo -e "\t$(lspci -nns ${d##*/})"
|
||||
end
|
||||
end
|
||||
end
|
43
.config/fish/functions/construct_column_aware_prompt.fish
Normal file
43
.config/fish/functions/construct_column_aware_prompt.fish
Normal file
|
@ -0,0 +1,43 @@
|
|||
function construct_column_aware_prompt -a prompt_prefix prompt_dir
|
||||
set -l prompt_concat "$prompt_prefix$prompt_dir"
|
||||
|
||||
if test (expr length "$prompt_concat") -le $COLUMNS
|
||||
echo $prompt_prefix$prompt_dir
|
||||
else
|
||||
if test (expr length "$prompt_prefix") -le $COLUMNS
|
||||
set -l split_prompt_concat (string split "/" $prompt_dir)
|
||||
|
||||
if test (count $split_prompt_concat) -lt 2
|
||||
echo (string sub -s 1 -l (math $COLUMNS - (expr length "$prompt_prefix")) $prompt_dir)
|
||||
else
|
||||
for i in (seq (count $split_prompt_concat))
|
||||
if test (expr length "> $split_prompt_concat[$i]/") -gt $COLUMNS
|
||||
set split_prompt_concat[$i] (string sub -s 1 -l (math $COLUMNS - 8) $split_prompt_concat[$i])'[...]'
|
||||
end
|
||||
end
|
||||
|
||||
set -l tmp_lines "$prompt_prefix"
|
||||
|
||||
for item in $split_prompt_concat
|
||||
set -l tmp_line "$tmp_lines$item/"
|
||||
if test (expr length "$tmp_line") -le $COLUMNS
|
||||
set tmp_lines $tmp_line
|
||||
else
|
||||
echo $tmp_lines
|
||||
set tmp_lines "> $item/"
|
||||
end
|
||||
end
|
||||
|
||||
set -l tmp_lines_length (expr length "$tmp_lines")
|
||||
if test $tmp_lines_length -gt 0
|
||||
echo (string sub -s 1 -l (math $tmp_lines_length - 1) $tmp_lines)
|
||||
end
|
||||
end
|
||||
else
|
||||
set -l rec (construct_column_aware_prompt "" $prompt_dir)
|
||||
for item in rec
|
||||
echo $item
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
3
.config/fish/functions/devkitARM.fish
Normal file
3
.config/fish/functions/devkitARM.fish
Normal file
|
@ -0,0 +1,3 @@
|
|||
function devkitARM --description 'Shadow arm-none-eabi binaries with the devkitARM ones'
|
||||
set -x PATH "/opt/devkitpro/devkitARM/bin" $PATH
|
||||
end
|
7
.config/fish/functions/dmenu_fish.fish
Normal file
7
.config/fish/functions/dmenu_fish.fish
Normal file
|
@ -0,0 +1,7 @@
|
|||
function dmenu_fish --description 'Open fish agnostic dmenu'
|
||||
set fns "$(string replace -a ', ' \n $(functions))"
|
||||
|
||||
set commands $(string join \n $fns $(dmenu_path) | sort | dmenu -i -fn "$(get-font)" -nb "#282a36" -nf "#f8f8f2" -sb "#44475a" -sf "#f8f8f2")
|
||||
|
||||
eval $command_to_run &
|
||||
end
|
3
.config/fish/functions/ea.fish
Normal file
3
.config/fish/functions/ea.fish
Normal file
|
@ -0,0 +1,3 @@
|
|||
function ea --wraps='exa -lah' --description 'alias ea exa -lah'
|
||||
exa -lah $argv;
|
||||
end
|
3
.config/fish/functions/ee.fish
Normal file
3
.config/fish/functions/ee.fish
Normal file
|
@ -0,0 +1,3 @@
|
|||
function ee --wraps='exa -lh' --description 'alias ee exa -lh'
|
||||
exa -lh $argv;
|
||||
end
|
3
.config/fish/functions/es.fish
Normal file
3
.config/fish/functions/es.fish
Normal file
|
@ -0,0 +1,3 @@
|
|||
function es --wraps=exa --description 'alias es exa'
|
||||
exa $argv;
|
||||
end
|
3
.config/fish/functions/esa.fish
Normal file
3
.config/fish/functions/esa.fish
Normal file
|
@ -0,0 +1,3 @@
|
|||
function esa --wraps='exa -a' --description 'alias esa exa -a'
|
||||
exa -a $argv;
|
||||
end
|
3
.config/fish/functions/firefox-private.fish
Normal file
3
.config/fish/functions/firefox-private.fish
Normal file
|
@ -0,0 +1,3 @@
|
|||
function firefox-private --wraps='firefox --private-window' --description 'alias firefox-private=firefox --private-window'
|
||||
firefox --private-window $argv;
|
||||
end
|
24
.config/fish/functions/fish_prompt.fish
Normal file
24
.config/fish/functions/fish_prompt.fish
Normal file
|
@ -0,0 +1,24 @@
|
|||
function fish_prompt --description 'Write out the prompt'
|
||||
if test (id -u) -eq 0
|
||||
set prompt_symbol '#'
|
||||
else
|
||||
set prompt_symbol '$'
|
||||
end
|
||||
|
||||
set -l prompt_prefix (set_color yellow)(whoami)'@'(set_color purple)(prompt_hostname)' '
|
||||
set -l prompt_dir (set_color green)(prompt_pwd)
|
||||
|
||||
set -l column_aware_prompt (construct_column_aware_prompt $prompt_prefix $prompt_dir)
|
||||
|
||||
if test -z $WINDOW
|
||||
for dir in $column_aware_prompt
|
||||
echo $dir
|
||||
end
|
||||
|
||||
set_color normal
|
||||
|
||||
echo $prompt_symbol' '
|
||||
else
|
||||
printf '%s%s@%s%s%s (%s)%s%s%s\n%s ' (set_color yellow) (whoami) (set_color purple) (prompt_hostname) (set_color white) (echo $WINDOW) (set_color green) (prompt_pwd) (set_color normal) $prompt_symbol
|
||||
end
|
||||
end
|
3
.config/fish/functions/fish_user_key_bindings.fish
Normal file
3
.config/fish/functions/fish_user_key_bindings.fish
Normal file
|
@ -0,0 +1,3 @@
|
|||
function fish_user_key_bindings
|
||||
fish_vi_key_bindings
|
||||
end
|
14
.config/fish/functions/get-font.fish
Normal file
14
.config/fish/functions/get-font.fish
Normal file
|
@ -0,0 +1,14 @@
|
|||
function get-font
|
||||
set fallback_font "Fira Code:pixelsize=12:antialias=true:autohint=true"
|
||||
set font ""
|
||||
|
||||
if command -q xgetres
|
||||
if not set font $(xgetres font)
|
||||
set font $fallback_font
|
||||
end
|
||||
else
|
||||
set font $fallback_font
|
||||
end
|
||||
|
||||
echo "$font"
|
||||
end
|
26
.config/fish/functions/hyperv-forward.fish
Normal file
26
.config/fish/functions/hyperv-forward.fish
Normal file
|
@ -0,0 +1,26 @@
|
|||
function hyperv-gpg-agent
|
||||
set socket_path "$HOME/.gnupg/S.gpg-agent"
|
||||
set host_ip $(ip route show 0.0.0.0/0 dev eth0 | cut -d\ -f3)
|
||||
|
||||
if test -e $socket_path
|
||||
rm $socket_path
|
||||
end
|
||||
|
||||
setsid socat UNIX-LISTEN:$socket_path,fork tcp-connect:$host_ip:59545 &
|
||||
end
|
||||
|
||||
function hyperv-ssh-agent
|
||||
set socket_path "$HOME/.gnupg/S.gpg-agent.ssh"
|
||||
set host_ip $(ip route show 0.0.0.0/0 dev eth0 | cut -d\ -f3)
|
||||
|
||||
if test -e $socket_path
|
||||
rm $socket_path
|
||||
end
|
||||
|
||||
setsid socat UNIX-LISTEN:$socket_path,fork tcp-connect:$host_ip:59546 &
|
||||
end
|
||||
|
||||
function hyperv-forward --description 'Setup hyperv-agent forwarding'
|
||||
hyperv-gpg-agent
|
||||
hyperv-ssh-agent
|
||||
end
|
3
.config/fish/functions/la.fish
Normal file
3
.config/fish/functions/la.fish
Normal file
|
@ -0,0 +1,3 @@
|
|||
function la --wraps='ls -lah' --description 'alias la=ls -lah'
|
||||
ls -lah $argv;
|
||||
end
|
3
.config/fish/functions/layout.fish
Normal file
3
.config/fish/functions/layout.fish
Normal file
|
@ -0,0 +1,3 @@
|
|||
function layout --wraps=xkblayout-state\ print\ \"\%s\(\%v\)\"\ \&\&\ echo\ -n\ \"\\n\" --description alias\ layout=xkblayout-state\ print\ \"\%s\(\%v\)\"\ \&\&\ echo\ -n\ \"\\n\"
|
||||
xkblayout-state print "%s(%v)" && echo -n "\n" $argv;
|
||||
end
|
3
.config/fish/functions/ll.fish
Normal file
3
.config/fish/functions/ll.fish
Normal file
|
@ -0,0 +1,3 @@
|
|||
function ll --wraps='ls -lh' --description 'alias ll=ls -lh'
|
||||
ls -lh $argv;
|
||||
end
|
3
.config/fish/functions/lock-screen.fish
Normal file
3
.config/fish/functions/lock-screen.fish
Normal file
|
@ -0,0 +1,3 @@
|
|||
function lock-screen --wraps='xset 600 60 && env XSECURELOCK_AUTH_BACKGROUND_COLOR=rgb:28/2a/36 XSECURELOCK_AUTH_FOREGROUND_COLOR=rgb:f8/f8/f2 XSECURELOCK_AUTH_TIMEOUT=10 XSECURELOCK_BLANK_TIMEOUT=-1 XSECURELOCK_BLANK_DPMS_STATE=on XSECURELOCK_DISCARD_FIRST_KEYPRESS=1 XSECURELOCK_PASSWORD_PROMPT=cursor XSECURELOCK_SHOW_DATETIME=1 XSECURELOCK_SHOW_HOSTNAME=1 XSECURELOCK_SHOW_USERNAME=1 xsecurelock &' --description 'alias lock-screen=xset 600 60 && env XSECURELOCK_AUTH_BACKGROUND_COLOR=rgb:28/2a/36 XSECURELOCK_AUTH_FOREGROUND_COLOR=rgb:f8/f8/f2 XSECURELOCK_AUTH_TIMEOUT=10 XSECURELOCK_BLANK_TIMEOUT=-1 XSECURELOCK_BLANK_DPMS_STATE=on XSECURELOCK_DISCARD_FIRST_KEYPRESS=1 XSECURELOCK_PASSWORD_PROMPT=cursor XSECURELOCK_SHOW_DATETIME=1 XSECURELOCK_SHOW_HOSTNAME=1 XSECURELOCK_SHOW_USERNAME=1 xsecurelock &'
|
||||
xset 600 60 && env XSECURELOCK_AUTH_BACKGROUND_COLOR=rgb:28/2a/36 XSECURELOCK_AUTH_FOREGROUND_COLOR=rgb:f8/f8/f2 XSECURELOCK_AUTH_TIMEOUT=10 XSECURELOCK_BLANK_TIMEOUT=-1 XSECURELOCK_BLANK_DPMS_STATE=on XSECURELOCK_DISCARD_FIRST_KEYPRESS=1 XSECURELOCK_PASSWORD_PROMPT=cursor XSECURELOCK_SHOW_DATETIME=1 XSECURELOCK_SHOW_HOSTNAME=1 XSECURELOCK_SHOW_USERNAME=1 xsecurelock & $argv;
|
||||
end
|
3
.config/fish/functions/ls.fish
Normal file
3
.config/fish/functions/ls.fish
Normal file
|
@ -0,0 +1,3 @@
|
|||
function ls --description 'alias ls=ls --color=tty'
|
||||
command ls --color=tty $argv;
|
||||
end
|
3
.config/fish/functions/lsa.fish
Normal file
3
.config/fish/functions/lsa.fish
Normal file
|
@ -0,0 +1,3 @@
|
|||
function lsa --wraps='ls -a' --description 'alias lsa=ls -a'
|
||||
ls -a $argv;
|
||||
end
|
3
.config/fish/functions/octave-gui.fish
Normal file
3
.config/fish/functions/octave-gui.fish
Normal file
|
@ -0,0 +1,3 @@
|
|||
function octave-gui --wraps='octave --force-gui' --description 'alias octave-gui=octave --force-gui'
|
||||
octave --force-gui $argv;
|
||||
end
|
3
.config/fish/functions/pianoteq.fish
Normal file
3
.config/fish/functions/pianoteq.fish
Normal file
|
@ -0,0 +1,3 @@
|
|||
function pianoteq --wraps=pianoteq\\\ 7 --description alias\ pianoteq=pianoteq\\\ 7
|
||||
pianoteq\ 7 $argv;
|
||||
end
|
3
.config/fish/functions/picom-default.fish
Normal file
3
.config/fish/functions/picom-default.fish
Normal file
|
@ -0,0 +1,3 @@
|
|||
function picom-default --wraps='picom -bGC --backend glx --unredir-if-possible-delay 1000 --vsync' --description 'alias picom-default=picom -bGC --backend glx --unredir-if-possible-delay 1000 --vsync'
|
||||
picom -bGC --backend glx --unredir-if-possible-delay 1000 --vsync $argv;
|
||||
end
|
3
.config/fish/functions/polybar-launch.fish
Normal file
3
.config/fish/functions/polybar-launch.fish
Normal file
|
@ -0,0 +1,3 @@
|
|||
function polybar-launch --wraps=/home/dustvoice/.config/polybar/launch --description 'alias polybar-launch=/home/dustvoice/.config/polybar/launch'
|
||||
/home/dustvoice/.config/polybar/launch $argv;
|
||||
end
|
3
.config/fish/functions/resolve.fish
Normal file
3
.config/fish/functions/resolve.fish
Normal file
|
@ -0,0 +1,3 @@
|
|||
function resolve --wraps=/opt/resolve/bin/resolve --description 'alias resolve=/opt/resolve/bin/resolve'
|
||||
/opt/resolve/bin/resolve $argv;
|
||||
end
|
3
.config/fish/functions/sabaki.fish
Normal file
3
.config/fish/functions/sabaki.fish
Normal file
|
@ -0,0 +1,3 @@
|
|||
function sabaki --wraps=/opt/Sabaki/sabaki --description 'alias sabaki=/opt/Sabaki/sabaki'
|
||||
/opt/Sabaki/sabaki $argv;
|
||||
end
|
5
.config/fish/functions/screenkey-obs.fish
Normal file
5
.config/fish/functions/screenkey-obs.fish
Normal file
|
@ -0,0 +1,5 @@
|
|||
function screenkey-obs
|
||||
set width $(xrandr | awk '$0 ~ "*" {split($1,res,"x"); print res[1];}')
|
||||
set height $(xrandr | awk '$0 ~ "*" {split($1,res,"x"); print res[2];}')
|
||||
screenkey --no-systray -t 2 -p fixed -s small -g $(awk -v height=$height -v width=$width 'BEGIN {printf "%.0fx%.0f+%.0f+%.0f", (width * 0.5), (height * 0.06), (width * 0.25), (height * 0.02)}') --key-mode composed --bak-mode full --mods-mode normal -f "Fira Code" --font-color "#f8f8f2" --bg-color "#44475a" --opacity "1.0"
|
||||
end
|
3
.config/fish/functions/tmate-obs.fish
Normal file
3
.config/fish/functions/tmate-obs.fish
Normal file
|
@ -0,0 +1,3 @@
|
|||
function tmate-obs --wraps='tmate -k tmk-ET35fx5m9cA7cxOt4jjWkSmaOy -r DustVoice' --description 'alias tmate-obs=tmate -k tmk-ET35fx5m9cA7cxOt4jjWkSmaOy -r DustVoice'
|
||||
tmate -k tmk-ET35fx5m9cA7cxOt4jjWkSmaOy -r DustVoice $argv;
|
||||
end
|
3
.config/fish/functions/xfce-polkit.fish
Normal file
3
.config/fish/functions/xfce-polkit.fish
Normal file
|
@ -0,0 +1,3 @@
|
|||
function xfce-polkit --wraps=/usr/lib/xfce-polkit/xfce-polkit --description 'alias xfce-polkit=/usr/lib/xfce-polkit/xfce-polkit'
|
||||
/usr/lib/xfce-polkit/xfce-polkit $argv;
|
||||
end
|
|
@ -1 +1 @@
|
|||
Subproject commit f34eee43999373028f67964e1335bf49e0bd700a
|
||||
Subproject commit 424a3a58af34da0f2d41a3558050e3839aaa15b2
|
|
@ -14,7 +14,7 @@ error = #ff5555
|
|||
[bar/top]
|
||||
monitor = ${env:MONITOR:}
|
||||
dpi = ${xrdb:Xft.dpi:-1}
|
||||
font-0 = ${xrdb:font:Hack:size=10:antialias=true:autohint=true}
|
||||
font-0 = ${xrdb:font:Fira Code:pixelsize=12:antialias=true:autohint=true}
|
||||
monitor-strict = false
|
||||
override-redirect = false
|
||||
bottom = false
|
||||
|
|
166
.config/river/init
Executable file
166
.config/river/init
Executable file
|
@ -0,0 +1,166 @@
|
|||
#!/bin/sh
|
||||
|
||||
# This is the example configuration file for river.
|
||||
#
|
||||
# If you wish to edit this, you will probably want to copy it to
|
||||
# $XDG_CONFIG_HOME/river/init or $HOME/.config/river/init first.
|
||||
#
|
||||
# See the river(1), riverctl(1), and rivertile(1) man pages for complete
|
||||
# documentation.
|
||||
|
||||
# Note: the "Alt" modifier is also known as Logo, GUI, Windows, Mod4, etc.
|
||||
|
||||
# Alt+Shift+Return to start an instance of alacritty
|
||||
riverctl map normal Alt Return spawn alacritty
|
||||
|
||||
# dmenu-wl
|
||||
riverctl map normal Alt d spawn $HOME/.config/dmenu-wl/dmenu_run
|
||||
|
||||
# Alt+Q to close the focused view
|
||||
riverctl map normal Alt+Shift c close
|
||||
|
||||
# Alt+Shift+E to exit river
|
||||
riverctl map normal Alt+Shift q exit
|
||||
|
||||
# Alt+J and Alt+K to focus the next/previous view in the layout stack
|
||||
riverctl map normal Alt J focus-view next
|
||||
riverctl map normal Alt K focus-view previous
|
||||
|
||||
# Alt+Shift+J and Alt+Shift+K to swap the focused view with the next/previous
|
||||
# view in the layout stack
|
||||
riverctl map normal Alt+Shift J swap next
|
||||
riverctl map normal Alt+Shift K swap previous
|
||||
|
||||
# Alt+Period and Alt+Comma to focus the next/previous output
|
||||
riverctl map normal Alt Period focus-output next
|
||||
riverctl map normal Alt Comma focus-output previous
|
||||
|
||||
# Alt+Shift+{Period,Comma} to send theAlt focused view to the next/previous output
|
||||
riverctl map normal Alt+Shift Period send-to-output next
|
||||
riverctl map normal Alt+Shift Comma send-to-output previous
|
||||
|
||||
# Alt+Return to bump the focused view to the top of the layout stack
|
||||
riverctl map normal Alt+Shift Return zoom
|
||||
|
||||
# Alt+H and Alt+L to decrease/increase the main ratio of rivertile(1)
|
||||
riverctl map normal Alt H send-layout-cmd rivertile "main-ratio -0.05"
|
||||
riverctl map normal Alt L send-layout-cmd rivertile "main-ratio +0.05"
|
||||
|
||||
# Alt+Shift+H and Alt+Shift+L to increment/decrement the main count of rivertile(1)
|
||||
riverctl map normal Alt+Shift H send-layout-cmd rivertile "main-count +1"
|
||||
riverctl map normal Alt+Shift L send-layout-cmd rivertile "main-count -1"
|
||||
|
||||
# Alt+Alt+{H,J,K,L} to move views
|
||||
riverctl map normal Super+Alt H move left 100
|
||||
riverctl map normal Super+Alt J move down 100
|
||||
riverctl map normal Super+Alt K move up 100
|
||||
riverctl map normal Super+Alt L move right 100
|
||||
|
||||
# Super+Alt+Control+{H,J,K,L} to snap views to screen edges
|
||||
riverctl map normal Super+Alt+Control H snap left
|
||||
riverctl map normal Super+Alt+Control J snap down
|
||||
riverctl map normal Super+Alt+Control K snap up
|
||||
riverctl map normal Super+Alt+Control L snap right
|
||||
|
||||
# Super+Alt+Shif+{H,J,K,L} to resize views
|
||||
riverctl map normal Super+Alt+Shift H resize horizontal -100
|
||||
riverctl map normal Super+Alt+Shift J resize vertical 100
|
||||
riverctl map normal Super+Alt+Shift K resize vertical -100
|
||||
riverctl map normal Super+Alt+Shift L resize horizontal 100
|
||||
|
||||
# Alt + Left Mouse Button to move views
|
||||
riverctl map-pointer normal Alt BTN_LEFT move-view
|
||||
|
||||
# Alt + Right Mouse Button to resize views
|
||||
riverctl map-pointer normal Alt BTN_RIGHT resize-view
|
||||
|
||||
for i in $(seq 1 9)
|
||||
do
|
||||
tags=$((1 << ($i - 1)))
|
||||
|
||||
# Alt+[1-9] to focus tag [0-8]
|
||||
riverctl map normal Alt $i set-focused-tags $tags
|
||||
|
||||
# Alt+Shift+[1-9] to tag focused view with tag [0-8]
|
||||
riverctl map normal Alt+Shift $i set-view-tags $tags
|
||||
|
||||
# Alt+Ctrl+[1-9] to toggle focus of tag [0-8]
|
||||
riverctl map normal Alt+Control $i toggle-focused-tags $tags
|
||||
|
||||
# Alt+Shift+Ctrl+[1-9] to toggle tag [0-8] of focused view
|
||||
riverctl map normal Alt+Shift+Control $i toggle-view-tags $tags
|
||||
done
|
||||
|
||||
# Alt+0 to focus all tags
|
||||
# Alt+Shift+0 to tag focused view with all tags
|
||||
all_tags=$(((1 << 32) - 1))
|
||||
riverctl map normal Alt 0 set-focused-tags $all_tags
|
||||
riverctl map normal Alt+Shift 0 set-view-tags $all_tags
|
||||
|
||||
# Alt+S to toggle float
|
||||
riverctl map normal Alt S toggle-float
|
||||
|
||||
# Alt+M to toggle fullscreen
|
||||
riverctl map normal Alt M toggle-fullscreen
|
||||
|
||||
# Alt+{Up,Right,Down,Left} to change layout orientation
|
||||
riverctl map normal Alt Up send-layout-cmd rivertile "main-location top"
|
||||
riverctl map normal Alt Right send-layout-cmd rivertile "main-location right"
|
||||
riverctl map normal Alt Down send-layout-cmd rivertile "main-location bottom"
|
||||
riverctl map normal Alt Left send-layout-cmd rivertile "main-location left"
|
||||
|
||||
# Declare a passthrough mode. This mode has only a single mapping to return to
|
||||
# normal mode. This makes it useful for testing a nested wayland compositor
|
||||
riverctl declare-mode passthrough
|
||||
|
||||
# Alt+F11 to enter passthrough mode
|
||||
riverctl map normal Alt F11 enter-mode passthrough
|
||||
|
||||
# Alt+F11 to return to normal mode
|
||||
riverctl map passthrough Alt F11 enter-mode normal
|
||||
|
||||
# Various media key mapping examples for both normal and locked mode which do
|
||||
# not have a modifier
|
||||
for mode in normal locked
|
||||
do
|
||||
# Eject the optical drive (well if you still have one that is)
|
||||
riverctl map $mode None XF86Eject spawn 'eject -T'
|
||||
|
||||
# Control pulse audio volume with pamixer (https://github.com/cdemoulins/pamixer)
|
||||
riverctl map $mode None XF86AudioRaiseVolume spawn 'pamixer -i 5'
|
||||
riverctl map $mode None XF86AudioLowerVolume spawn 'pamixer -d 5'
|
||||
riverctl map $mode None XF86AudioMute spawn 'pamixer --toggle-mute'
|
||||
|
||||
# Control MPRIS aware media players with playerctl (https://github.com/altdesktop/playerctl)
|
||||
riverctl map $mode None XF86AudioMedia spawn 'playerctl play-pause'
|
||||
riverctl map $mode None XF86AudioPlay spawn 'playerctl play-pause'
|
||||
riverctl map $mode None XF86AudioPrev spawn 'playerctl previous'
|
||||
riverctl map $mode None XF86AudioNext spawn 'playerctl next'
|
||||
|
||||
# Control screen backlight brighness with light (https://github.com/haikarainen/light)
|
||||
riverctl map $mode None XF86MonBrightnessUp spawn 'light -A 5'
|
||||
riverctl map $mode None XF86MonBrightnessDown spawn 'light -U 5'
|
||||
done
|
||||
|
||||
# Set background and border color
|
||||
riverctl background-color 0x282a36
|
||||
riverctl border-color-focused 0xff79c6
|
||||
riverctl border-color-unfocused 0x44475a
|
||||
|
||||
# Set keyboard repeat rate
|
||||
riverctl set-repeat 50 300
|
||||
|
||||
# Make certain views start floating
|
||||
riverctl float-filter-add app-id float
|
||||
riverctl float-filter-add title "popup title with spaces"
|
||||
|
||||
# Set app-ids and titles of views which should use client side decorations
|
||||
riverctl csd-filter-add app-id "gedit"
|
||||
|
||||
# Set and exec into the default layout generator, rivertile.
|
||||
# River will send the process group of the init executable SIGTERM on exit.
|
||||
|
||||
waybar &
|
||||
|
||||
riverctl default-layout rivertile
|
||||
exec rivertile -view-padding 0 -outer-padding 0
|
|
@ -123,52 +123,52 @@ alt + Return
|
|||
|
||||
# run program launcher
|
||||
alt + d
|
||||
if [ -x $(command -v zsh) ]; then $HOME/.config/dmenu/dmenu_run_with_aliases; else dmenu_run -i -fn "Hack:size=10:antialias=true:autohint=true" -nb "#282a36" -nf "#f8f8f2" -sb "#44475a" -sf "#f8f8f2"; fi
|
||||
$HOME/.config/dmenu/run;
|
||||
|
||||
alt + x
|
||||
$HOME/.config/dmenu/dmenu_bspwm_desktop_content goto
|
||||
$HOME/.config/dmenu/bspwm desktop_content goto
|
||||
|
||||
alt + shift + x
|
||||
$HOME/.config/dmenu/dmenu_bspwm_desktop_content move
|
||||
$HOME/.config/dmenu/bspwm desktop_content move
|
||||
|
||||
alt + ctrl + shift + x
|
||||
$HOME/.config/dmenu/dmenu_bspwm_desktop_content movefollow
|
||||
$HOME/.config/dmenu/bspwm desktop_content movefollow
|
||||
|
||||
alt + z; r
|
||||
$HOME/.config/dmenu/dmenu_bspwm_desktop rename
|
||||
$HOME/.config/dmenu/bspwm desktop rename
|
||||
|
||||
alt + z; d
|
||||
$HOME/.config/dmenu/dmenu_bspwm_desktop delete
|
||||
$HOME/.config/dmenu/bspwm desktop delete
|
||||
|
||||
alt + z; s
|
||||
$HOME/.config/dmenu/dmenu_bspwm_desktop swap
|
||||
$HOME/.config/dmenu/bspwm desktop swap
|
||||
|
||||
alt + z; h
|
||||
$HOME/.config/dmenu/dmenu_bspwm_desktop bubbleprev
|
||||
$HOME/.config/dmenu/bspwm desktop bubbleprev
|
||||
|
||||
alt + z; l
|
||||
$HOME/.config/dmenu/dmenu_bspwm_desktop bubblenext
|
||||
$HOME/.config/dmenu/bspwm desktop bubblenext
|
||||
|
||||
alt + z; y
|
||||
$HOME/.config/dmenu/dmenu_bspwm_desktop save
|
||||
$HOME/.config/dmenu/bspwm desktop save
|
||||
|
||||
alt + z; p
|
||||
$HOME/.config/dmenu/dmenu_bspwm_desktop load
|
||||
$HOME/.config/dmenu/bspwm desktop load
|
||||
|
||||
alt + a; g
|
||||
$HOME/.config/dmenu/dmenu_bspwm_monitor goto
|
||||
$HOME/.config/dmenu/bspwm monitor goto
|
||||
|
||||
alt + a; s
|
||||
$HOME/.config/dmenu/dmenu_bspwm_monitor swap
|
||||
$HOME/.config/dmenu/bspwm monitor swap
|
||||
|
||||
alt + a; shift + n
|
||||
$HOME/.config/dmenu/dmenu_bspwm_monitor movenode
|
||||
$HOME/.config/dmenu/bspwm monitor movenode
|
||||
|
||||
alt + a; ctrl + shift + n
|
||||
$HOME/.config/dmenu/dmenu_bspwm_monitor movenodefollow
|
||||
$HOME/.config/dmenu/bspwm monitor movenodefollow
|
||||
|
||||
alt + a; shift + d
|
||||
$HOME/.config/dmenu/dmenu_bspwm_monitor movedesktop
|
||||
$HOME/.config/dmenu/bspwm monitor movedesktop
|
||||
|
||||
alt + a; ctrl + shift + d
|
||||
$HOME/.config/dmenu/dmenu_bspwm_movement_monitor movedesktopfollow
|
||||
$HOME/.config/dmenu/bspwm monitor movedesktopfollow
|
||||
|
|
132
.config/waybar/config
Normal file
132
.config/waybar/config
Normal file
|
@ -0,0 +1,132 @@
|
|||
{
|
||||
// "layer": "top", // Waybar at top layer
|
||||
"position": "top", // Waybar position (top|bottom|left|right)
|
||||
"height": 10, // Waybar height (to be removed for auto height)
|
||||
// "width": 1280, // Waybar width
|
||||
"spacing": 0, // Gaps between modules (4px)
|
||||
// Choose the order of the modules
|
||||
"modules-left": ["river/tags", "river/mode"],
|
||||
"modules-center": ["river/window"],
|
||||
"modules-right": ["pulseaudio", "network", "cpu", "memory", "temperature", "backlight", "keyboard-state", "battery", "battery#bat2", "clock", "tray"],
|
||||
// Modules configuration
|
||||
// "sway/workspaces": {
|
||||
// "disable-scroll": true,
|
||||
// "all-outputs": true,
|
||||
// "format": "{name}: {icon}",
|
||||
// "format-icons": {
|
||||
// "1": "",
|
||||
// "2": "",
|
||||
// "3": "",
|
||||
// "4": "",
|
||||
// "5": "",
|
||||
// "urgent": "",
|
||||
// "focused": "",
|
||||
// "default": ""
|
||||
// }
|
||||
// },
|
||||
"keyboard-state": {
|
||||
"numlock": true,
|
||||
"capslock": true,
|
||||
"format": "{name} {icon}",
|
||||
"format-icons": {
|
||||
"locked": "",
|
||||
"unlocked": ""
|
||||
}
|
||||
},
|
||||
"river/mode": {
|
||||
"format": "<span style=\"italic\">{}</span>"
|
||||
},
|
||||
"idle_inhibitor": {
|
||||
"format": "{icon}",
|
||||
"format-icons": {
|
||||
"activated": "",
|
||||
"deactivated": ""
|
||||
}
|
||||
},
|
||||
"tray": {
|
||||
// "icon-size": 21,
|
||||
"spacing": 10
|
||||
},
|
||||
"clock": {
|
||||
// "timezone": "America/New_York",
|
||||
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
|
||||
"format-alt": "{:%Y-%m-%d}"
|
||||
},
|
||||
"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": "{ipaddr}/{cidr} ",
|
||||
"tooltip-format": "{ifname} via {gwaddr} ",
|
||||
"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": {
|
||||
"headphone": "",
|
||||
"hands-free": "",
|
||||
"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
|
||||
// }
|
||||
}
|
137
.config/waybar/dracula.style.css
Normal file
137
.config/waybar/dracula.style.css
Normal file
|
@ -0,0 +1,137 @@
|
|||
* {
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
font-family: Roboto,'Font Awesome 5', 'SFNS Display', Helvetica, Arial, sans-serif;
|
||||
font-size: 15px;
|
||||
min-height: 0;
|
||||
}
|
||||
|
||||
window#waybar {
|
||||
background: rgba(0,0,0,0);
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
window#waybar.hidden {
|
||||
opacity: 0.0;
|
||||
}
|
||||
|
||||
#workspaces {
|
||||
background-color: #282a36;
|
||||
border-radius: 20px;
|
||||
padding: 0 15px;
|
||||
}
|
||||
|
||||
#workspaces button {
|
||||
margin: 0 5px;
|
||||
padding: 0;
|
||||
background: transparent;
|
||||
color: #ffffff;
|
||||
border-bottom: 2px solid transparent;
|
||||
}
|
||||
|
||||
#workspaces button.focused {
|
||||
border-bottom: 2px solid #ff79c6;
|
||||
color: #ff79c6;
|
||||
}
|
||||
|
||||
#workspaces button.urgent {
|
||||
color: #ff5555;
|
||||
}
|
||||
|
||||
#workspaces button:hover {
|
||||
box-shadow: none;
|
||||
text-shadow: none;
|
||||
border-bottom: 2px solid #ff79c6;
|
||||
}
|
||||
|
||||
#window {
|
||||
background-color: #282a36;
|
||||
border-radius: 0 20px 20px 0;
|
||||
padding: 0 20px;
|
||||
margin: 0 10px 0 0;
|
||||
}
|
||||
|
||||
#clock, #battery, #cpu, #memory, #temperature, #backlight, #network, #pulseaudio, #custom-media, #tray, #mode, #idle_inhibitor {
|
||||
padding: 0 20px;
|
||||
margin: 0 10px;
|
||||
background-color: #282a36;
|
||||
color: #ffffff;
|
||||
border-radius: 20px;
|
||||
}
|
||||
|
||||
#clock {
|
||||
|
||||
}
|
||||
|
||||
#battery {
|
||||
}
|
||||
|
||||
#battery.charging {
|
||||
}
|
||||
|
||||
@keyframes blink {
|
||||
to {
|
||||
background-color: #ffffff;
|
||||
color: #000000;
|
||||
}
|
||||
}
|
||||
|
||||
#battery.critical:not(.charging) {
|
||||
background: #f53c3c;
|
||||
animation-name: blink;
|
||||
animation-duration: 0.5s;
|
||||
animation-timing-function: linear;
|
||||
animation-iteration-count: infinite;
|
||||
animation-direction: alternate;
|
||||
}
|
||||
|
||||
#cpu {
|
||||
}
|
||||
|
||||
#memory {
|
||||
}
|
||||
|
||||
#backlight {
|
||||
}
|
||||
|
||||
#network {
|
||||
margin: 0 0 0 10px;
|
||||
padding: 0 10px 0 20px;
|
||||
border-radius: 20px 0 0 20px;
|
||||
}
|
||||
|
||||
#network.disconnected {
|
||||
}
|
||||
|
||||
#pulseaudio {
|
||||
}
|
||||
|
||||
#pulseaudio.muted {
|
||||
}
|
||||
|
||||
#custom-media {
|
||||
}
|
||||
|
||||
.custom-spotify {
|
||||
}
|
||||
|
||||
.custom-vlc {
|
||||
}
|
||||
|
||||
#temperature {
|
||||
}
|
||||
|
||||
#temperature.critical {
|
||||
}
|
||||
|
||||
#tray {
|
||||
border-radius: 0;
|
||||
margin: 0;
|
||||
padding: 0 20px 0 0;
|
||||
}
|
||||
|
||||
#idle_inhibitor {
|
||||
}
|
||||
|
||||
#idle_inhibitor.activated {
|
||||
}
|
261
.config/waybar/style.css
Normal file
261
.config/waybar/style.css
Normal file
|
@ -0,0 +1,261 @@
|
|||
* {
|
||||
/* `otf-font-awesome` is required to be installed for icons */
|
||||
font-family: Fira Code, FontAwesome, Roboto, Helvetica, Arial, sans-serif;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
window#waybar {
|
||||
background-color: #282a36;
|
||||
/*border: 2px solid #ff79c6;*/
|
||||
color: #f8f8f2;
|
||||
transition-property: background-color;
|
||||
transition-duration: .5s;
|
||||
}
|
||||
|
||||
window#waybar.hidden {
|
||||
opacity: 0.2;
|
||||
}
|
||||
|
||||
/*
|
||||
window#waybar.empty {
|
||||
background-color: transparent;
|
||||
}
|
||||
window#waybar.solo {
|
||||
background-color: #FFFFFF;
|
||||
}
|
||||
*/
|
||||
|
||||
window#waybar.termite {
|
||||
background-color: #3F3F3F;
|
||||
}
|
||||
|
||||
window#waybar.chromium {
|
||||
background-color: #282a36;
|
||||
border: none;
|
||||
}
|
||||
|
||||
#tags button {
|
||||
padding: 0 5px;
|
||||
background-color: transparent;
|
||||
color: #f8f8f2;
|
||||
/* Use box-shadow instead of border so the text isn't offset */
|
||||
box-shadow: inset 0 -2px transparent;
|
||||
/* Avoid rounded borders under each workspace name */
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
}
|
||||
|
||||
/* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */
|
||||
#tags button:hover {
|
||||
background: #f8f8f2;
|
||||
/*background: rgba(0, 0, 0, 0.2);*/
|
||||
/*box-shadow: inset 0 -2px #282a36;*/
|
||||
/*background-color: #6272a4;*/
|
||||
color: #282a36;
|
||||
}
|
||||
|
||||
#tags button.focused {
|
||||
background-color: #44475a;
|
||||
box-shadow: inset 0 -2px #f8f8f2;
|
||||
}
|
||||
|
||||
#tags button.urgent {
|
||||
background-color: #ffb86c;
|
||||
}
|
||||
|
||||
#mode {
|
||||
background-color: #44475a;
|
||||
border-bottom: 2px solid #f8f8f2;
|
||||
}
|
||||
|
||||
#clock,
|
||||
#battery,
|
||||
#cpu,
|
||||
#memory,
|
||||
#disk,
|
||||
#temperature,
|
||||
#backlight,
|
||||
#network,
|
||||
#pulseaudio,
|
||||
#custom-media,
|
||||
#tray,
|
||||
#mode,
|
||||
#idle_inhibitor,
|
||||
#mpd {
|
||||
padding: 0 10px;
|
||||
color: #f8f8f2;
|
||||
}
|
||||
|
||||
#window,
|
||||
#tags {
|
||||
margin: 0 4px;
|
||||
}
|
||||
|
||||
/* If workspaces is the leftmost module, omit left margin */
|
||||
.modules-left > widget:first-child > #workspaces {
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
/* If workspaces is the rightmost module, omit right margin */
|
||||
.modules-right > widget:last-child > #workspaces {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
#clock {
|
||||
background-color: #44475a;
|
||||
}
|
||||
|
||||
#battery {
|
||||
background-color: #8be9fd;
|
||||
color: #282a36;
|
||||
}
|
||||
|
||||
#battery.charging, #battery.plugged {
|
||||
color: #282a36;
|
||||
background-color: #50fa7b;
|
||||
}
|
||||
|
||||
@keyframes blink {
|
||||
to {
|
||||
background-color: #f8f8f2;
|
||||
color: #282a36;
|
||||
}
|
||||
}
|
||||
|
||||
#battery.critical:not(.charging) {
|
||||
background-color: #ff5555;
|
||||
color: #282a36;
|
||||
animation-name: blink;
|
||||
animation-duration: 0.5s;
|
||||
animation-timing-function: linear;
|
||||
animation-iteration-count: infinite;
|
||||
animation-direction: alternate;
|
||||
}
|
||||
|
||||
label:focus {
|
||||
background-color: #282a36;
|
||||
}
|
||||
|
||||
#cpu {
|
||||
background-color: #50fa7b;
|
||||
color: #282a36;
|
||||
}
|
||||
|
||||
#memory {
|
||||
color: #282a36;
|
||||
background-color: #bd93f9;
|
||||
}
|
||||
|
||||
#disk {
|
||||
background-color: #8be9fd;
|
||||
}
|
||||
|
||||
#backlight {
|
||||
background-color: #6272a4;
|
||||
}
|
||||
|
||||
#network {
|
||||
background-color: #6272a4;
|
||||
color: #f8f8f2;
|
||||
}
|
||||
|
||||
#network.disconnected {
|
||||
background-color: #8be9fd;
|
||||
color: #282a36;
|
||||
}
|
||||
|
||||
#pulseaudio {
|
||||
background-color: #ffb86c;
|
||||
color: #282a36;
|
||||
}
|
||||
|
||||
#pulseaudio.muted {
|
||||
background-color: #ff5555;
|
||||
color: #282a36;
|
||||
}
|
||||
|
||||
#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 {
|
||||
color: #282a36;
|
||||
background-color: #f1fa8c;
|
||||
}
|
||||
|
||||
#temperature.critical {
|
||||
background-color: #ff5555;
|
||||
}
|
||||
|
||||
#tray {
|
||||
background-color: #282a36;
|
||||
}
|
||||
|
||||
#tray > .passive {
|
||||
-gtk-icon-effect: dim;
|
||||
}
|
||||
|
||||
#tray > .needs-attention {
|
||||
-gtk-icon-effect: highlight;
|
||||
background-color: #ffb86c;
|
||||
}
|
||||
|
||||
#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;
|
||||
}
|
||||
|
||||
#language {
|
||||
background: #00b093;
|
||||
color: #740864;
|
||||
padding: 0 5px;
|
||||
margin: 0 5px;
|
||||
min-width: 16px;
|
||||
}
|
||||
|
||||
#keyboard-state {
|
||||
background: #97e1ad;
|
||||
color: #282a36;
|
||||
padding: 0 0px;
|
||||
margin: 0 5px;
|
||||
min-width: 16px;
|
||||
}
|
||||
|
||||
#keyboard-state > label {
|
||||
padding: 0 5px;
|
||||
}
|
||||
|
||||
#keyboard-state > label.locked {
|
||||
background: rgba(0, 0, 0, 0.2);
|
||||
}
|
|
@ -113,7 +113,7 @@
|
|||
# servers. To see the IP address of the server actually used, you may use
|
||||
# the "--keyserver-options debug".
|
||||
|
||||
keyserver hkp://keys.gnupg.net
|
||||
keyserver hkp://keys.openpgp.org
|
||||
#keyserver mailto:pgp-public-keys@keys.nl.pgp.net
|
||||
#keyserver ldap://keyserver.pgp.com
|
||||
|
||||
|
|
|
@ -9,3 +9,5 @@ aur.archlinux.org,95.216.144.15 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAy
|
|||
140.82.121.3 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAq2A7hRGmdnm9tUDbO9IDSwBK6TbQa+PXYPCPy6rbTrTtw7PHkccKrpp0yVhp5HdEIcKr6pLlVDBfOLX9QUsyCOV0wzfjIJNlGEYsdlLJizHhbn2mUjvSAHQqZETYP81eFzLQNnPHt4EVVUh7VfDESU84KezmD5QlWpXLmvU31/yMf+Se8xhHTvKSCZIFImWwoG6mbUoWf9nzpIoaSjB+weqqUUmpaaasXVal72J+UX2B+2RPW3RcT0eOzQgqlJL3RKrTJvdsjE3JEAvGq3lGHSZXy28G3skua2SmVi/w4yCE6gbODqnTWlg7+wC604ydGXA8VJiS5ap43JXiUFFAaQ==
|
||||
140.82.121.4 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAq2A7hRGmdnm9tUDbO9IDSwBK6TbQa+PXYPCPy6rbTrTtw7PHkccKrpp0yVhp5HdEIcKr6pLlVDBfOLX9QUsyCOV0wzfjIJNlGEYsdlLJizHhbn2mUjvSAHQqZETYP81eFzLQNnPHt4EVVUh7VfDESU84KezmD5QlWpXLmvU31/yMf+Se8xhHTvKSCZIFImWwoG6mbUoWf9nzpIoaSjB+weqqUUmpaaasXVal72J+UX2B+2RPW3RcT0eOzQgqlJL3RKrTJvdsjE3JEAvGq3lGHSZXy28G3skua2SmVi/w4yCE6gbODqnTWlg7+wC604ydGXA8VJiS5ap43JXiUFFAaQ==
|
||||
10.2.34.5 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIODBbJvBzvkTjqdOmd6kjj9N+q/AMzVYj8b5uGHFl89T
|
||||
10.2.34.7 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIuSRDDg6CrpmoCK6Gps0v1mV0ATLt69nx6Az4tU1rsl
|
||||
10.2.34.7 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBC7koNqkejOnGh65X/vNmXtnX2IDAH1d9GEIrFji8pK0uZvebnMpwfOAVxG5Ul/LvOIuHe0iCzqm5oZKLbSQdQE=
|
||||
|
|
16
.zsh_alias
16
.zsh_alias
|
@ -70,7 +70,7 @@ alias tmate-obs='tmate -k tmk-ET35fx5m9cA7cxOt4jjWkSmaOy -r DustVoice'
|
|||
function screenkey-obs-func() {
|
||||
width=$(xrandr | awk '$0 ~ "*" {split($1,res,"x"); print res[1];}')
|
||||
height=$(xrandr | awk '$0 ~ "*" {split($1,res,"x"); print res[2];}')
|
||||
screenkey --no-systray -t 2 -p fixed -s small -g $(awk -v height=$height -v width=$width 'BEGIN {printf "%.0fx%.0f+%.0f+%.0f", (width * 0.5), (height * 0.06), (width * 0.25), (height * 0.02)}') --key-mode composed --bak-mode full --mods-mode normal -f Hack --font-color "#f8f8f2" --bg-color "#44475a" --opacity "1.0"
|
||||
screenkey --no-systray -t 2 -p fixed -s small -g $(awk -v height=$height -v width=$width 'BEGIN {printf "%.0fx%.0f+%.0f+%.0f", (width * 0.5), (height * 0.06), (width * 0.25), (height * 0.02)}') --key-mode composed --bak-mode full --mods-mode normal -f "Fira Code" --font-color "#f8f8f2" --bg-color "#44475a" --opacity "1.0"
|
||||
}
|
||||
|
||||
alias screenkey-obs='screenkey-obs-func'
|
||||
|
@ -93,7 +93,7 @@ alias polybar-launch="$HOME/.config/polybar/launch"
|
|||
# Font
|
||||
# ===
|
||||
function get-font-func() {
|
||||
fallback_font="Hack:size=10:antialias=true:autohint=true"
|
||||
fallback_font="Fira Code:pixelsize=12:antialias=true:autohint=true"
|
||||
font=""
|
||||
if [ -x $(command -v xgetres) ]; then
|
||||
font=$(xgetres font || echo $fallback_font);
|
||||
|
@ -126,7 +126,7 @@ function check-iommu-func() {
|
|||
alias check-iommu='check-iommu-func'
|
||||
|
||||
function battery-monitor-func() {
|
||||
watch1 -t -n 60 '( if [ $(cat /sys/class/power_supply/ACAD/online) == "1" ]; then printf "Power connected\n"; else printf "Power disconnected\n"; fi; printf "\nBattery capacity: "; cat /sys/class/power_supply/BAT1/capacity; printf "\n(Updated every 60s)"; )';
|
||||
watch -t -n 60 '( if [ $(cat /sys/class/power_supply/ACAD/online) == "1" ]; then printf "Power connected\n"; else printf "Power disconnected\n"; fi; printf "\nBattery capacity: "; cat /sys/class/power_supply/BAT1/capacity; printf "\n(Updated every 60s)"; )';
|
||||
}
|
||||
|
||||
alias battery-monitor='battery-monitor-func'
|
||||
|
@ -192,3 +192,13 @@ alias hyperv-gpg-forward="hyperv-gpg-agent"
|
|||
alias hyperv-ssh-forward="hyperv-ssh-agent"
|
||||
alias hyperv-forward="hyperv-agents"
|
||||
# ===
|
||||
|
||||
# ===
|
||||
# devkitPro development
|
||||
# ===
|
||||
function devkitPro-devkitARM() {
|
||||
path=("/opt/devkitpro/devkitARM/bin" $path)
|
||||
}
|
||||
|
||||
alias devkitARM="devkitPro-devkitARM"
|
||||
# ===
|
||||
|
|
13
.zshenv
13
.zshenv
|
@ -38,7 +38,7 @@ export EDITOR='nvim'
|
|||
export SSH_AUTH_SOCK="$(gpgconf --list-dir socketdir)/S.gpg-agent.ssh"
|
||||
export GPG_TTY=$(tty)
|
||||
|
||||
export TERMINAL='st'
|
||||
export TERMINAL='alacritty'
|
||||
|
||||
export JUCE_PATH="$HOME/JUCE"
|
||||
|
||||
|
@ -50,6 +50,17 @@ export XDG_CONFIG_HOME="$HOME/.config"
|
|||
|
||||
export WINIT_X11_SCALE_FACTOR=1
|
||||
|
||||
export MOZ_ENABLE_WAYLAND=1
|
||||
|
||||
if [[ -f $HOME/.zsh_alias ]]; then
|
||||
source $HOME/.zsh_alias
|
||||
fi
|
||||
|
||||
# export HTTP_PROXY=http://ldiproxy.lsjv.rlp.de:8080
|
||||
# export HTTPS_PROXY=$HTTP__PROXY
|
||||
# export FTP_PROXY=$HTTP__PROXY
|
||||
# export NO_PROXY=svr-*,nas-*,web-*,lsjvko*,lsjvmz*,*.lsjv.rlp,10.5.*,localhost,127.0.0.1,*-ldi.rlp.de,kidz.lsjv.rlp.de,webmail.lsjv.rlp.de,webmail.lsjv.de,tickets.lsjv.rlp.de,i-doit.lsjv.rlp.de,rdweb.lsjv.rlp.de,rds.lsjv.rlp.de,rdgw.lsjv.rlp.de
|
||||
# export http_proxy=$HTTP_PROXY
|
||||
# export https_proxy=$HTTP_PROXY
|
||||
# export ftp_proxy=$HTTP_PROXY
|
||||
# export no_proxy=$NO_PROXY
|
||||
|
|
14
.zshrc
14
.zshrc
|
@ -21,7 +21,7 @@ setopt COMPLETE_ALIASES
|
|||
if [[ -a $ZNAP_ZSH ]]; then
|
||||
ZSH_AUTOSUGGEST_USE_ASYNC="true"
|
||||
ZSH_AUTOSUGGEST_STRATEGY=(history)
|
||||
ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE=fg=5
|
||||
#ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE=fg=5
|
||||
|
||||
ZSH_HIGHLIGHT_HIGHLIGHTERS=( main brackets )
|
||||
|
||||
|
@ -38,12 +38,6 @@ if [[ -a $ZNAP_ZSH ]]; then
|
|||
|
||||
znap source ohmyzsh/ohmyzsh lib/{git,theme-and-appearance,colored-man-pages,colorzie,command-not-found,history}
|
||||
|
||||
if [ -x "$(command -v starship)" ]; then
|
||||
znap eval starship 'starship init zsh --print-full-init'
|
||||
else
|
||||
znap prompt dustvoice/dustvoice-zsh-theme
|
||||
fi
|
||||
|
||||
znap source marlonrichert/zsh-hist
|
||||
|
||||
znap source zsh-users/zsh-completions
|
||||
|
@ -61,6 +55,12 @@ if [[ -a $ZNAP_ZSH ]]; then
|
|||
|
||||
bindkey -M vicmd '^H' push-line-or-edit
|
||||
bindkey -M vicmd '^L' get-line
|
||||
|
||||
if [ -x "$(command -v starship)" ]; then
|
||||
znap eval starship 'starship init zsh --print-full-init'
|
||||
else
|
||||
znap prompt dustvoice/dustvoice-zsh-theme
|
||||
fi
|
||||
else
|
||||
PS1=$'%b%n@%M %~
|
||||
%(!.#.$) '
|
||||
|
|
Loading…
Reference in a new issue