Merge branch 'xdgify' of https://github.com/dennisleexyz/dotfiles into dennisleexyz-xdgify

This commit is contained in:
Luke Smith 2020-04-08 16:50:33 -04:00
commit f93cd463a1
No known key found for this signature in database
GPG key ID: 4C50B54A911F6252
32 changed files with 85 additions and 82 deletions

View file

@ -42,5 +42,5 @@ alias mpv="mpv --input-ipc-server=/tmp/mpvsoc$(date +%s)"
# Some other stuff # Some other stuff
alias \ alias \
magit="nvim -c MagitOnly" \ magit="nvim -c MagitOnly" \
ref="shortcuts >/dev/null; source ~/.config/shortcutrc" \ ref="shortcuts >/dev/null; source $XDG_CONFIG_HOME/shortcutrc" \
weath="less -S ~/.local/share/weatherreport" \ weath="less -S $XDG_DATA_HOME/weatherreport" \

View file

@ -5,6 +5,6 @@ D ~/Downloads
m ~/Music m ~/Music
pp ~/Pictures pp ~/Pictures
vv ~/Videos vv ~/Videos
cf ~/.config cf $XDG_CONFIG_HOME
sc ~/.local/bin sc ~/.local/bin
mn /mnt mn /mnt

View file

@ -1,15 +1,15 @@
bf ~/.config/files bf $XDG_CONFIG_HOME/files
bd ~/.config/directories bd $XDG_CONFIG_HOME/directories
bw ~/.config/bookmarks bw $XDG_CONFIG_HOME/bookmarks
cfa ~/.config/aliasrc cfa $XDG_CONFIG_HOME/aliasrc
cfz $ZDOTDIR/.zshrc cfz $ZDOTDIR/.zshrc
cfv ~/.config/nvim/init.vim cfv $XDG_CONFIG_HOME/nvim/init.vim
cfm ~/.config/mutt/muttrc cfm $XDG_CONFIG_HOME/mutt/muttrc
cfd ~/.Xdefaults cfd ~/.Xdefaults
cfu ~/.config/newsboat/urls cfu $XDG_CONFIG_HOME/newsboat/urls
cfn ~/.config/newsboat/config cfn $XDG_CONFIG_HOME/newsboat/config
cfmb ~/.config/ncmpcpp/bindings cfmb $XDG_CONFIG_HOME/ncmpcpp/bindings
cfmc ~/.config/ncmpcpp/config cfmc $XDG_CONFIG_HOME/ncmpcpp/config
cfk ~/.config/sxhkd/sxhkdrc cfk $XDG_CONFIG_HOME/sxhkd/sxhkdrc
cfi ~/.config/i3/config cfi $XDG_CONFIG_HOME/i3/config
cfb ~/.config/i3blocks/config cfb $XDG_CONFIG_HOME/i3blocks/config

View file

@ -222,7 +222,7 @@ for_window [title="mpvfloat"] border pixel 0
no_focus [title="mpvfloat"] no_focus [title="mpvfloat"]
# #---Function Buttons---# # # #---Function Buttons---# #
bindsym $mod+F1 exec --no-startup-id groff -mom ~/.local/share/larbs/readme.mom -Tpdf | zathura - bindsym $mod+F1 exec --no-startup-id groff -mom $XDG_DATA_HOME/larbs/readme.mom -Tpdf | zathura -
bindsym $mod+F2 restart bindsym $mod+F2 restart
bindsym $mod+F3 exec --no-startup-id displayselect bindsym $mod+F3 exec --no-startup-id displayselect
bindsym $mod+F4 exec --no-startup-id prompt "Hibernate computer?" "$hibernate" bindsym $mod+F4 exec --no-startup-id prompt "Hibernate computer?" "$hibernate"

View file

@ -2,7 +2,7 @@
# Basic vars # Basic vars
set shell sh set shell sh
set previewer ~/.config/lf/scope set previewer $XDG_CONFIG_HOME/lf/scope
set shellopts '-eu' set shellopts '-eu'
set ifs "\n" set ifs "\n"
set scrolloff 10 set scrolloff 10
@ -36,7 +36,7 @@ cmd delete ${{
cmd moveto ${{ cmd moveto ${{
set -f set -f
clear; echo "Move to where?" clear; echo "Move to where?"
dest="$(cut -d' ' -f2- ~/.config/directories | fzf)" && dest="$(cut -d' ' -f2- $XDG_CONFIG_HOME/directories | fzf)" &&
eval mv -iv $fx $dest && eval mv -iv $fx $dest &&
notify-send "🚚 File(s) moved." "File(s) moved to $dest." notify-send "🚚 File(s) moved." "File(s) moved to $dest."
}} }}
@ -44,7 +44,7 @@ cmd moveto ${{
cmd copyto ${{ cmd copyto ${{
set -f set -f
clear; echo "Copy to where?" clear; echo "Copy to where?"
dest="$(cut -d' ' -f2- ~/.config/directories | fzf)" && dest="$(cut -d' ' -f2- $XDG_CONFIG_HOME/directories | fzf)" &&
eval cp -ivr $fx $dest && eval cp -ivr $fx $dest &&
notify-send "📋 File(s) copied." "File(s) copies to $dest." notify-send "📋 File(s) copied." "File(s) copies to $dest."
}} }}
@ -54,9 +54,9 @@ cmd bulkrename ${{
}} }}
# Bindings # Bindings
map c $lf -remote "send $id cd $(cut -d' ' -f2 ~/.config/directories | fzf)" map c $lf -remote "send $id cd $(cut -d' ' -f2 $XDG_CONFIG_HOME/directories | fzf)"
map <c-f> $lf -remote "send $id select '$(fzf)'" map <c-f> $lf -remote "send $id select '$(fzf)'"
map J $lf -remote "send $id cd $(cut -d' ' -f2 ~/.config/directories | fzf)" map J $lf -remote "send $id cd $(cut -d' ' -f2 $XDG_CONFIG_HOME/directories | fzf)"
map gh map gh
map g top map g top
map D delete map D delete

View file

@ -1,7 +1,7 @@
[Default Applications] [Default Applications]
# xdg-open will use these settings to determine how to open filetypes. # xdg-open will use these settings to determine how to open filetypes.
# These .desktop entries can also be seen and changed in ~/.local/share/applications/ # These .desktop entries can also be seen and changed in $XDG_DATA_HOME/applications/
text/x-shellscript=text.desktop; text/x-shellscript=text.desktop;
x-scheme-handler/magnet=torrent.desktop; x-scheme-handler/magnet=torrent.desktop;

View file

@ -1,10 +1,10 @@
db_file "~/.config/mpd/database" db_file "$XDG_CONFIG_HOME/mpd/database"
log_file "~/.config/mpd/log" log_file "$XDG_CONFIG_HOME/mpd/log"
music_directory "~/Music" music_directory "~/Music"
playlist_directory "~/.config/mpd/playlists" playlist_directory "$XDG_CONFIG_HOME/mpd/playlists"
pid_file "~/.config/mpd/pid" pid_file "$XDG_CONFIG_HOME/mpd/pid"
state_file "~/.config/mpd/state" state_file "$XDG_CONFIG_HOME/mpd/state"
sticker_file "~/.config/mpd/sticker.sql" sticker_file "$XDG_CONFIG_HOME/mpd/sticker.sql"
auto_update "yes" auto_update "yes"

View file

@ -3,14 +3,14 @@
## or $XDG_CONFIG_HOME/ncmpcpp/config and set up your preferences. ## ## or $XDG_CONFIG_HOME/ncmpcpp/config and set up your preferences. ##
############################################################################## ##############################################################################
# #
ncmpcpp_directory = ~/.config/ncmpcpp ncmpcpp_directory = $XDG_CONFIG_HOME/ncmpcpp
# #
## ##
## Directory for storing downloaded lyrics. It defaults to ~/.lyrics since other ## Directory for storing downloaded lyrics. It defaults to ~/.lyrics since other
## MPD clients (eg. ncmpc) also use that location. ## MPD clients (eg. ncmpc) also use that location.
## ##
# #
lyrics_directory = ~/.local/share/lyrics lyrics_directory = $XDG_DATA_HOME/lyrics
# #
##### connection settings ##### ##### connection settings #####
# #

View file

@ -1,13 +1,13 @@
let mapleader ="," let mapleader =","
if ! filereadable(expand('~/.config/nvim/autoload/plug.vim')) if ! filereadable(expand('$XDG_CONFIG_HOME/nvim/autoload/plug.vim'))
echo "Downloading junegunn/vim-plug to manage plugins..." echo "Downloading junegunn/vim-plug to manage plugins..."
silent !mkdir -p ~/.config/nvim/autoload/ silent !mkdir -p $XDG_CONFIG_HOME/nvim/autoload/
silent !curl "https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim" > ~/.config/nvim/autoload/plug.vim silent !curl "https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim" > $XDG_CONFIG_HOME/nvim/autoload/plug.vim
autocmd VimEnter * PlugInstall autocmd VimEnter * PlugInstall
endif endif
call plug#begin('~/.config/nvim/plugged') call plug#begin('$XDG_CONFIG_HOME/nvim/plugged')
Plug 'tpope/vim-surround' Plug 'tpope/vim-surround'
Plug 'scrooloose/nerdtree' Plug 'scrooloose/nerdtree'
Plug 'junegunn/goyo.vim' Plug 'junegunn/goyo.vim'

View file

@ -60,7 +60,7 @@ class my_edit(Command):
# https://github.com/ranger/ranger/wiki/Integrating-File-Search-with-fzf # https://github.com/ranger/ranger/wiki/Integrating-File-Search-with-fzf
# Now, simply bind this function to a key, by adding this to your ~/.config/ranger/rc.conf: map <C-f> fzf_select # Now, simply bind this function to a key, by adding this to your $XDG_CONFIG_HOME/ranger/rc.conf: map <C-f> fzf_select
class fzf_select(Command): class fzf_select(Command):
""" """
:fzf_select :fzf_select

View file

@ -32,10 +32,10 @@ These "verbs" take "nouns" or "arguments," like these:
+ d -- "~/Documents" + d -- "~/Documents"
+ D -- "~/Downloads" + D -- "~/Downloads"
+ cf -- "~/.config" + cf -- "$XDG_CONFIG_HOME"
+ And many others, including those you add to `~/.bmdirs`. + And many others, including those you add to `~/.bmdirs`.
Press any "verb" followed by any "argument" to perform a folder operation. "gd" will cd to ~/Documents, for example. "mD" will move the selected file(s) to ~/Downloads. "tcf" will create a new tab in ~/.config, etc. etc. Press any "verb" followed by any "argument" to perform a folder operation. "gd" will cd to ~/Documents, for example. "mD" will move the selected file(s) to ~/Downloads. "tcf" will create a new tab in $XDG_CONFIG_HOME, etc. etc.
## Many little additions! ## Many little additions!
@ -60,7 +60,7 @@ Press any "verb" followed by any "argument" to perform a folder operation. "gd"
+ Txs -- copy slideshow/beamer template to new file + Txs -- copy slideshow/beamer template to new file
+ Txh -- copy handout template to new file + Txh -- copy handout template to new file
+ Image commands: + Image commands:
+ bg -- (for i3 users) makes an image your background (assuming i3 is looking at ~/.config/wall.png for your background) + bg -- (for i3 users) makes an image your background (assuming i3 is looking at $XDG_CONFIG_HOME/wall.png for your background)
+ bw -- runs Pywal on the selected image, making it your background and generating a color scheme based off of it. + bw -- runs Pywal on the selected image, making it your background and generating a color scheme based off of it.
+ C -- rotates an image (requires imagemagick) + C -- rotates an image (requires imagemagick)
+ F -- flips an image (requires imagemagick) + F -- flips an image (requires imagemagick)

View file

@ -5,7 +5,7 @@ set column_ratios 1,3,4
set hidden_filter ^\.|\.(?:pyc|vrb|pyo|lof|bak|swp|aux|log|nav|out|snm|toc|bcf|run\.xml|synctex\.gz|blg|bbl)$|^lost\+found$|^__(py)?cache__$ set hidden_filter ^\.|\.(?:pyc|vrb|pyo|lof|bak|swp|aux|log|nav|out|snm|toc|bcf|run\.xml|synctex\.gz|blg|bbl)$|^lost\+found$|^__(py)?cache__$
set show_hidden false set show_hidden false
set confirm_on_delete multiple set confirm_on_delete multiple
set preview_script ~/.config/ranger/scope.sh set preview_script $XDG_CONFIG_HOME/ranger/scope.sh
set use_preview_script true set use_preview_script true
set automatically_count_files true set automatically_count_files true
set open_all_images true set open_all_images true
@ -505,4 +505,4 @@ map Tn eval fm.open_console('shell eyeD3 -n "" ' + fm.thisfile.relative_path, po
#Downloading #Downloading
map ytv console shell youtube-dl -ic%space map ytv console shell youtube-dl -ic%space
map yta console shell youtube-dl -xic%space map yta console shell youtube-dl -xic%space
source ~/.config/ranger/shortcuts.conf source $XDG_CONFIG_HOME/ranger/shortcuts.conf

View file

@ -137,10 +137,10 @@ XF86MyComputer
# Function keys # Function keys
super + shift + F1 super + shift + F1
grep LARBSWELCOME ~/.xprofile && ( sed -i "/LARBSWELCOME/d" ~/.xprofile && notify-send "LARBS welcome message" "Welcome message disabled. Press Super+Shift+F1 again to reverse." ) || ( echo "notify-send -i "$HOME/.local/share/larbs/larbs.png" \"Welcome to LARBS\" \"Press super+F1 for the help menu.\" # LARBSWELCOME" >> ~/.xprofile && notify-send "LARBS welcome message" "Welcome message re-enabled." ) grep LARBSWELCOME ~/.xprofile && ( sed -i "/LARBSWELCOME/d" ~/.xprofile && notify-send "LARBS welcome message" "Welcome message disabled. Press Super+Shift+F1 again to reverse." ) || ( echo "notify-send -i "$XDG_DATA_HOME/larbs/larbs.png" \"Welcome to LARBS\" \"Press super+F1 for the help menu.\" # LARBSWELCOME" >> ~/.xprofile && notify-send "LARBS welcome message" "Welcome message re-enabled." )
# Show readme # Show readme
super + F1 super + F1
groff -mom $HOME/.local/share/larbs/readme.mom -Tpdf | zathura - groff -mom $XDG_DATA_HOME/larbs/readme.mom -Tpdf | zathura -
# F2 restarts either dwm or i3 and is bound in each. # F2 restarts either dwm or i3 and is bound in each.
# Change display # Change display
super + F3 super + F3

View file

@ -4,13 +4,13 @@ do
case "$1" in case "$1" in
"w") setbg "$file" & ;; "w") setbg "$file" & ;;
"c") "c")
[ -z "$destdir" ] && destdir="$(sed "s/\s.*#.*$//;/^\s*$/d" ~/.config/directories | awk '{print $2}' | dmenu -l 20 -i -p "Copy file(s) to where?" | sed "s|~|$HOME|g")" [ -z "$destdir" ] && destdir="$(sed "s/\s.*#.*$//;/^\s*$/d" $XDG_CONFIG_HOME/directories | awk '{print $2}' | dmenu -l 20 -i -p "Copy file(s) to where?" | sed "s|~|$HOME|g")"
[ -z "$destdir" ] && exit [ -z "$destdir" ] && exit
[ ! -d "$destdir" ] && notify-send "$destdir is not a directory, cancelled." && exit [ ! -d "$destdir" ] && notify-send "$destdir is not a directory, cancelled." && exit
cp "$file" "$destdir" && notify-send -i "$(readlink -f "$file")" "$file copied to $destdir." & cp "$file" "$destdir" && notify-send -i "$(readlink -f "$file")" "$file copied to $destdir." &
;; ;;
"m") "m")
[ -z "$destdir" ] && destdir="$(sed "s/\s.*#.*$//;/^\s*$/d" ~/.config/directories | awk '{print $2}' | dmenu -l 20 -i -p "Move file(s) to where?" | sed "s|~|$HOME|g")" [ -z "$destdir" ] && destdir="$(sed "s/\s.*#.*$//;/^\s*$/d" $XDG_CONFIG_HOME/directories | awk '{print $2}' | dmenu -l 20 -i -p "Move file(s) to where?" | sed "s|~|$HOME|g")"
[ -z "$destdir" ] && exit [ -z "$destdir" ] && exit
[ ! -d "$destdir" ] && notify-send "$destdir is not a directory, cancelled." && exit [ ! -d "$destdir" ] && notify-send "$destdir is not a directory, cancelled." && exit
mv "$file" "$destdir" && notify-send -i "$(readlink -f "$file")" "$file moved to $destdir." & mv "$file" "$destdir" && notify-send -i "$(readlink -f "$file")" "$file moved to $destdir." &

View file

@ -1,5 +1,5 @@
" vim: filetype=vifm " vim: filetype=vifm
source ~/.config/vifm/vifmshortcuts source $XDG_CONFIG_HOME/vifm/vifmshortcuts
set vicmd=$EDITOR set vicmd=$EDITOR
set syscalls set syscalls

View file

@ -12,8 +12,8 @@ SAVEHIST=10000
HISTFILE=~/.cache/zsh/history HISTFILE=~/.cache/zsh/history
# Load aliases and shortcuts if existent. # Load aliases and shortcuts if existent.
[ -f "$HOME/.config/shortcutrc" ] && source "$HOME/.config/shortcutrc" [ -f "$XDG_CONFIG_HOME/shortcutrc" ] && source "$XDG_CONFIG_HOME/shortcutrc"
[ -f "$HOME/.config/aliasrc" ] && source "$HOME/.config/aliasrc" [ -f "$XDG_CONFIG_HOME/aliasrc" ] && source "$XDG_CONFIG_HOME/aliasrc"
# Basic auto/tab complete: # Basic auto/tab complete:
autoload -U compinit autoload -U compinit

View file

@ -3,4 +3,4 @@
# Toggles all cronjobs off/on. # Toggles all cronjobs off/on.
# Stores disabled crontabs in ~/.consaved until restored. # Stores disabled crontabs in ~/.consaved until restored.
([ -f ~/.config/cronsaved ] && crontab - < ~/.config/cronsaved && rm ~/.config/cronsaved && notify-send "🕓 Cronjobs re-enabled.") || ( crontab -l > ~/.config/cronsaved && crontab -r && notify-send "🕓 Cronjobs saved and disabled.") ([ -f $XDG_CONFIG_HOME/cronsaved ] && crontab - < $XDG_CONFIG_HOME/cronsaved && rm $XDG_CONFIG_HOME/cronsaved && notify-send "🕓 Cronjobs re-enabled.") || ( crontab -l > $XDG_CONFIG_HOME/cronsaved && crontab -r && notify-send "🕓 Cronjobs saved and disabled.")

View file

@ -5,7 +5,7 @@
# Must have xclip installed to even show menu. # Must have xclip installed to even show menu.
xclip -h 2>/dev/null || exit 1 xclip -h 2>/dev/null || exit 1
chosen=$(cut -d ';' -f1 ~/.local/share/larbs/emoji | dmenu -i -l 20 | sed "s/ .*//") chosen=$(cut -d ';' -f1 $XDG_DATA_HOME/larbs/emoji | dmenu -i -l 20 | sed "s/ .*//")
[ "$chosen" != "" ] || exit [ "$chosen" != "" ] || exit

View file

@ -1,5 +1,5 @@
#!/bin/sh #!/bin/sh
cat ~/.local/share/larbs/getkeys/"$1" 2>/dev/null && exit cat $XDG_DATA_HOME/larbs/getkeys/"$1" 2>/dev/null && exit
echo "Run command with one of the following arguments for info about that program:" echo "Run command with one of the following arguments for info about that program:"
ls ~/.local/share/larbs/getkeys ls $XDG_DATA_HOME/larbs/getkeys

View file

@ -2,7 +2,7 @@
# Toggles the LARBS welcome message. # Toggles the LARBS welcome message.
PIC="$HOME/.local/share/larbs/larbs.png" PIC="$XDG_DATA_HOME/larbs/larbs.png"
grep LARBSWELCOME "$HOME/.xprofile" && grep LARBSWELCOME "$HOME/.xprofile" &&
( sed -i "/LARBSWELCOME/d" ~/.xprofile && notify-send -i "$PIC" "LARBS welcome message" "Welcome message disabled. Press Super+Shift+F1 again to reverse." ) || ( sed -i "/LARBSWELCOME/d" ~/.xprofile && notify-send -i "$PIC" "LARBS welcome message" "Welcome message disabled. Press Super+Shift+F1 again to reverse." ) ||

View file

@ -4,4 +4,4 @@
[ "$(pgrep -x $(basename $0) | wc -l)" -gt 2 ] && exit [ "$(pgrep -x $(basename $0) | wc -l)" -gt 2 ] && exit
echo ~/.local/share/newsboat/queue | entr -p queueandnotify 2>/dev/null echo $XDG_DATA_HOME/newsboat/queue | entr -p queueandnotify 2>/dev/null

View file

@ -3,7 +3,7 @@
# Podboat sucks. This script replaces it. # Podboat sucks. This script replaces it.
# It reads the newsboat queue, queuing downloads with taskspooler. # It reads the newsboat queue, queuing downloads with taskspooler.
# It also removes the junk from extentions. # It also removes the junk from extentions.
queuefile="$HOME/.local/share/newsboat/queue" queuefile="$XDG_DATA_HOME/newsboat/queue"
while read -r line; do while read -r line; do
[ -z "$line" ] && continue [ -z "$line" ] && continue

View file

@ -2,7 +2,7 @@
! echo "$1" | grep "https*://\S\+\.[A-Za-z]\+\S*" >/dev/null && ! echo "$1" | grep "https*://\S\+\.[A-Za-z]\+\S*" >/dev/null &&
notify-send "That doesn't look like a full URL." && exit notify-send "That doesn't look like a full URL." && exit
RSSFILE="$HOME/.config/newsboat/urls" RSSFILE="$XDG_CONFIG_HOME/newsboat/urls"
if awk '{print $1}' "$RSSFILE" | grep "^$1$" >/dev/null; then if awk '{print $1}' "$RSSFILE" | grep "^$1$" >/dev/null; then
notify-send "You already have this RSS feed." notify-send "You already have this RSS feed."
else else

View file

@ -1,11 +1,11 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# Output locations. Unactivated progs should go to /dev/null. # Output locations. Unactivated progs should go to /dev/null.
shell_shortcuts="$HOME/.config/shortcutrc" shell_shortcuts="$XDG_CONFIG_HOME/shortcutrc"
ranger_shortcuts="$HOME/.config/ranger/shortcuts.conf" ranger_shortcuts="$XDG_CONFIG_HOME/ranger/shortcuts.conf"
qute_shortcuts="/dev/null" qute_shortcuts="/dev/null"
fish_shortcuts="/dev/null" fish_shortcuts="/dev/null"
vifm_shortcuts="$HOME/.config/vifm/vifmshortcuts" vifm_shortcuts="$XDG_CONFIG_HOME/vifm/vifmshortcuts"
# Remove, prepare files # Remove, prepare files
rm -f "$ranger_shortcuts" "$qute_shortcuts" 2>/dev/null rm -f "$ranger_shortcuts" "$qute_shortcuts" 2>/dev/null
@ -14,14 +14,14 @@ printf "# vim: filetype=sh\\nalias " > "$shell_shortcuts"
printf "\" vim: filetype=vim\\n" > "$vifm_shortcuts" printf "\" vim: filetype=vim\\n" > "$vifm_shortcuts"
# Format the `directories` file in the correct syntax and sent it to all three configs. # Format the `directories` file in the correct syntax and sent it to all three configs.
sed "s/\s*#.*$//;/^\s*$/d" "$HOME/.config/directories" | tee >(awk '{print $1"=\"cd "$2" && ls -a\" \\"}' >> "$shell_shortcuts") \ sed "s/\s*#.*$//;/^\s*$/d" "$XDG_CONFIG_HOME/directories" | tee >(awk '{print $1"=\"cd "$2" && ls -a\" \\"}' >> "$shell_shortcuts") \
>(awk '{print "abbr", $1, "\"cd " $2 "; and ls -a\""}' >> "$fish_shortcuts") \ >(awk '{print "abbr", $1, "\"cd " $2 "; and ls -a\""}' >> "$fish_shortcuts") \
>(awk '{print "map g" $1, ":cd", $2 "<CR>\nmap t" $1, "<tab>:cd", $2 "<CR><tab>\nmap M" $1, "<tab>:cd", $2 "<CR><tab>:mo<CR>\nmap Y" $1, "<tab>:cd", $2 "<CR><tab>:co<CR>" }' >> "$vifm_shortcuts") \ >(awk '{print "map g" $1, ":cd", $2 "<CR>\nmap t" $1, "<tab>:cd", $2 "<CR><tab>\nmap M" $1, "<tab>:cd", $2 "<CR><tab>:mo<CR>\nmap Y" $1, "<tab>:cd", $2 "<CR><tab>:co<CR>" }' >> "$vifm_shortcuts") \
>(awk '{print "config.bind(\";"$1"\", \"set downloads.location.directory "$2" ;; hint links download\")"}' >> "$qute_shortcuts") \ >(awk '{print "config.bind(\";"$1"\", \"set downloads.location.directory "$2" ;; hint links download\")"}' >> "$qute_shortcuts") \
| awk '{print "map g"$1" cd "$2"\nmap t"$1" tab_new "$2"\nmap m"$1" shell mv -v %s "$2"\nmap Y"$1" shell cp -rv %s "$2}' >> "$ranger_shortcuts" | awk '{print "map g"$1" cd "$2"\nmap t"$1" tab_new "$2"\nmap m"$1" shell mv -v %s "$2"\nmap Y"$1" shell cp -rv %s "$2}' >> "$ranger_shortcuts"
# Format the `files` file in the correct syntax and sent it to both configs. # Format the `files` file in the correct syntax and sent it to both configs.
sed "s/\s*#.*$//;/^\s*$/d" "$HOME/.config/files" | tee >(awk '{print $1"=\"$EDITOR "$2"\" \\"}' >> "$shell_shortcuts") \ sed "s/\s*#.*$//;/^\s*$/d" "$XDG_CONFIG_HOME/files" | tee >(awk '{print $1"=\"$EDITOR "$2"\" \\"}' >> "$shell_shortcuts") \
>(awk '{print "abbr", $1, "\"$EDITOR "$2"\""}' >> "$fish_shortcuts") \ >(awk '{print "abbr", $1, "\"$EDITOR "$2"\""}' >> "$fish_shortcuts") \
>(awk '{print "map", $1, ":e", $2 "<CR>" }' >> "$vifm_shortcuts") \ >(awk '{print "map", $1, ":e", $2 "<CR>" }' >> "$vifm_shortcuts") \
| awk '{print "map "$1" shell $EDITOR "$2}' >> "$ranger_shortcuts" | awk '{print "map "$1" shell $EDITOR "$2}' >> "$ranger_shortcuts"

View file

@ -4,7 +4,7 @@ date '+%Y %b %d (%a) %I:%M%p'
case $BLOCK_BUTTON in case $BLOCK_BUTTON in
1) pgrep -x dunst >/dev/null && notify-send "This Month" "$(cal --color=always | sed "s/..7m/<b><span color=\"red\">/;s/..27m/<\/span><\/b>/")" && notify-send "Appointments" "$(calcurse -d3)" ;; 1) pgrep -x dunst >/dev/null && notify-send "This Month" "$(cal --color=always | sed "s/..7m/<b><span color=\"red\">/;s/..27m/<\/span><\/b>/")" && notify-send "Appointments" "$(calcurse -d3)" ;;
2) $TERMINAL -e calcurse -D ~/.config/calcurse ;; 2) $TERMINAL -e calcurse -D $XDG_CONFIG_HOME/calcurse ;;
3) pgrep -x dunst >/dev/null && notify-send "📅 Time/date module" "\- Left click to show upcoming appointments for the next three days via \`calcurse -d3\` and show the month via \`cal\` 3) pgrep -x dunst >/dev/null && notify-send "📅 Time/date module" "\- Left click to show upcoming appointments for the next three days via \`calcurse -d3\` and show the month via \`cal\`
- Middle click opens calcurse if installed" ;; - Middle click opens calcurse if installed" ;;
esac esac

View file

@ -1,7 +1,7 @@
#!/bin/sh #!/bin/sh
case $BLOCK_BUTTON in case $BLOCK_BUTTON in
1) groff -mom ~/.local/share/larbs/readme.mom -Tpdf | zathura - ;; 1) groff -mom $XDG_DATA_HOME/larbs/readme.mom -Tpdf | zathura - ;;
2) i3 restart ;; 2) i3 restart ;;
3) pgrep -x dunst >/dev/null && notify-send "❓ Help module" "\- Left click to open LARBS guide. 3) pgrep -x dunst >/dev/null && notify-send "❓ Help module" "\- Left click to open LARBS guide.
- Middle click to refresh i3.";; - Middle click to refresh i3.";;

View file

@ -6,4 +6,4 @@
# https://www.maketecheasier.com/ip-address-geolocation-lookups-linux/ # https://www.maketecheasier.com/ip-address-geolocation-lookups-linux/
ifinstalled "geoiplookup" || exit ifinstalled "geoiplookup" || exit
addr="$(curl ifconfig.me 2>/dev/null)" || exit addr="$(curl ifconfig.me 2>/dev/null)" || exit
grep "flag: " ~/.config/emoji | grep "$(geoiplookup $addr | sed 's/.*, //')" | sed "s/flag: //;s/;.*//" grep "flag: " $XDG_CONFIG_HOME/emoji | grep "$(geoiplookup $addr | sed 's/.*, //')" | sed "s/flag: //;s/;.*//"

View file

@ -13,7 +13,7 @@ case $BLOCK_BUTTON in
- Middle click syncs mail" ;; - Middle click syncs mail" ;;
esac esac
unread="$(find ~/.local/share/mail/*/INBOX/new/* -type f | wc -l 2>/dev/null)" unread="$(find $XDG_DATA_HOME/mail/*/INBOX/new/* -type f | wc -l 2>/dev/null)"
icon="$(cat "/tmp/imapsyncicon_$USER")" icon="$(cat "/tmp/imapsyncicon_$USER")"

View file

@ -14,4 +14,4 @@ case $BLOCK_BUTTON in
<b>Note:</b> Only one instance of newsboat (including updates) may be running at a time." ;; <b>Note:</b> Only one instance of newsboat (including updates) may be running at a time." ;;
esac esac
cat /tmp/newsupdate 2>/dev/null || echo "$(newsboat -x print-unread | awk '{ print "📰 " $1}' | sed s/^0$//g)$(cat ~/.config/newsboat/.update 2>/dev/null)" cat /tmp/newsupdate 2>/dev/null || echo "$(newsboat -x print-unread | awk '{ print "📰 " $1}' | sed s/^0$//g)$(cat $XDG_CONFIG_HOME/newsboat/.update 2>/dev/null)"

View file

@ -7,18 +7,18 @@
# You could set up a shell alias to view the full file in a pager in the # You could set up a shell alias to view the full file in a pager in the
# terminal if desired. This function will only be run once a day when needed. # terminal if desired. This function will only be run once a day when needed.
getforecast() { ping -q -c 1 1.1.1.1 >/dev/null && getforecast() { ping -q -c 1 1.1.1.1 >/dev/null &&
curl -sf "wttr.in/$LOCATION" > "$HOME/.local/share/weatherreport" || exit 1 ;} curl -sf "wttr.in/$LOCATION" > "$XDG_DATA_HOME/weatherreport" || exit 1 ;}
# Some very particular and terse stream manipulation. We get the maximum # Some very particular and terse stream manipulation. We get the maximum
# precipication chance and the daily high and low from the downloaded file and # precipication chance and the daily high and low from the downloaded file and
# display them with coresponding emojis. # display them with coresponding emojis.
showweather() { printf "%s" "$(sed '16q;d' "$HOME/.local/share/weatherreport" | showweather() { printf "%s" "$(sed '16q;d' "$XDG_DATA_HOME/weatherreport" |
grep -wo "[0-9]*%" | sort -rn | sed "s/^/☔ /g;1q" | tr -d '\n')" grep -wo "[0-9]*%" | sort -rn | sed "s/^/☔ /g;1q" | tr -d '\n')"
sed '13q;d' "$HOME/.local/share/weatherreport" | grep -o "m\\([-+]\\)*[0-9]\\+" | sort -n -t 'm' -k 2n | sed -e 1b -e '$!d' | tr '\n|m' ' ' | awk '{print " ❄️",$1 "°","🌞",$2 "°"}' ;} sed '13q;d' "$XDG_DATA_HOME/weatherreport" | grep -o "m\\([-+]\\)*[0-9]\\+" | sort -n -t 'm' -k 2n | sed -e 1b -e '$!d' | tr '\n|m' ' ' | awk '{print " ❄️",$1 "°","🌞",$2 "°"}' ;}
# The BLOCK_BUTTON bloat for clicking in i3. # The BLOCK_BUTTON bloat for clicking in i3.
case $BLOCK_BUTTON in case $BLOCK_BUTTON in
1) $TERMINAL -e less -Srf "$HOME/.local/share/weatherreport" ;; 1) $TERMINAL -e less -Srf "$XDG_DATA_HOME/weatherreport" ;;
2) getforecast && showweather ;; 2) getforecast && showweather ;;
3) pgrep -x dunst >/dev/null && notify-send "🌈 Weather module" "\- Left click for full forecast. 3) pgrep -x dunst >/dev/null && notify-send "🌈 Weather module" "\- Left click for full forecast.
- Middle click to update forecast. - Middle click to update forecast.
@ -29,7 +29,7 @@ esac
# The test if our forcecast is updated to the day. If it isn't download a new # The test if our forcecast is updated to the day. If it isn't download a new
# weather report from wttr.in with the above function. # weather report from wttr.in with the above function.
[ "$(stat -c %y "$HOME/.local/share/weatherreport" 2>/dev/null | cut -d' ' -f1)" = "$(date '+%Y-%m-%d')" ] || [ "$(stat -c %y "$XDG_DATA_HOME/weatherreport" 2>/dev/null | cut -d' ' -f1)" = "$(date '+%Y-%m-%d')" ] ||
getforecast getforecast
showweather showweather

View file

@ -3,8 +3,8 @@
# Adds `~/.local/bin` to $PATH # Adds `~/.local/bin` to $PATH
export PATH="$PATH:$(du "$HOME/.local/bin/" | cut -f2 | tr '\n' ':' | sed 's/:*$//')" export PATH="$PATH:$(du "$HOME/.local/bin/" | cut -f2 | tr '\n' ':' | sed 's/:*$//')"
# Get default LARBS WM from ~/.local/share/larbs/wm # Get default LARBS WM from $XDG_DATA_HOME/larbs/wm
export LARBSWM="$(cat ~/.local/share/larbs/wm 2>/dev/null)" && export LARBSWM="$(cat $XDG_DATA_HOME/larbs/wm 2>/dev/null)" &&
[ "$LARBSWM" = "dwm" ] || export LARBSWM="i3" [ "$LARBSWM" = "dwm" ] || export LARBSWM="i3"
# Default programs: # Default programs:
@ -19,13 +19,16 @@ eval "$(sed 's/^[^#].*/export &/g;t;d' ~/.config/user-dirs.dirs)"
# ~/ Clean-up: # ~/ Clean-up:
#export XAUTHORITY="$XDG_RUNTIME_DIR/Xauthority" # This line will break some DMs. #export XAUTHORITY="$XDG_RUNTIME_DIR/Xauthority" # This line will break some DMs.
export NOTMUCH_CONFIG="$HOME/.config/notmuch-config" export NOTMUCH_CONFIG="$XDG_CONFIG_HOME/notmuch-config"
export GTK2_RC_FILES="$HOME/.config/gtk-2.0/gtkrc-2.0" export GTK2_RC_FILES="$XDG_CONFIG_HOME/gtk-2.0/gtkrc-2.0"
export LESSHISTFILE="-" export LESSHISTFILE="-"
export WGETRC="$HOME/.config/wget/wgetrc" export WGETRC="$XDG_CONFIG_HOME/wget/wgetrc"
export INPUTRC="$HOME/.config/inputrc" export INPUTRC="$XDG_CONFIG_HOME/inputrc"
export ZDOTDIR="$HOME/.config/zsh" export ZDOTDIR="$XDG_CONFIG_HOME/zsh"
export PASSWORD_STORE_DIR="$HOME/.local/share/password-store" export PASSWORD_STORE_DIR="$XDG_DATA_HOME/password-store"
export TMUX_TMPDIR="$XDG_RUNTIME_DIR"
export ANDROID_SDK_HOME="$XDG_CONFIG_HOME/android"
export CARGO_HOME="$XDG_DATA_HOME/cargo"
# Other program settings: # Other program settings:
export DICS="/usr/share/stardict/dic/" export DICS="/usr/share/stardict/dic/"
@ -40,10 +43,10 @@ export LESS_TERMCAP_se="$(printf '%b' '')"
export LESS_TERMCAP_us="$(printf '%b' '')" export LESS_TERMCAP_us="$(printf '%b' '')"
export LESS_TERMCAP_ue="$(printf '%b' '')" export LESS_TERMCAP_ue="$(printf '%b' '')"
[ ! -f ~/.config/shortcutrc ] && shortcuts >/dev/null 2>&1 [ ! -f $XDG_CONFIG_HOME/shortcutrc ] && shortcuts >/dev/null 2>&1
# Start graphical server on tty1 if not already running. # Start graphical server on tty1 if not already running.
[ "$(tty)" = "/dev/tty1" ] && ! pgrep -x Xorg >/dev/null && exec startx [ "$(tty)" = "/dev/tty1" ] && ! pgrep -x Xorg >/dev/null && exec startx
# Switch escape and caps if tty and no passwd required: # Switch escape and caps if tty and no passwd required:
sudo -n loadkeys ~/.local/share/larbs/ttymaps.kmap 2>/dev/null sudo -n loadkeys $XDG_DATA_HOME/larbs/ttymaps.kmap 2>/dev/null

View file

@ -10,7 +10,7 @@ dbus-update-activation-environment --systemd DBUS_SESSION_BUS_ADDRESS DISPLAY XA
mpd & # music player daemon-you might prefer it as a service though mpd & # music player daemon-you might prefer it as a service though
remaps & # run the remaps script, switching caps/esc and more; check it for more info remaps & # run the remaps script, switching caps/esc and more; check it for more info
setbg & # set the background with the `setbg` script setbg & # set the background with the `setbg` script
#xrdb ~/.config/Xresources & # Uncomment to use Xresources colors/settings on startup #xrdb $XDG_CONFIG_HOME/Xresources & # Uncomment to use Xresources colors/settings on startup
xcompmgr & # xcompmgr for transparency xcompmgr & # xcompmgr for transparency
$STATUSBAR & # start the statusbar $STATUSBAR & # start the statusbar
dunst & # dunst for notifications dunst & # dunst for notifications