diff --git a/README b/README index 67ccab5..42f1b3b 100644 --- a/README +++ b/README @@ -24,5 +24,5 @@ EMACS (in the future) Miscellaneous stuff -lemonbar script -xshkd bindings - -{x,p}menu script + -menu script -xsession diff --git a/misc/.xsession b/misc/.xsession new file mode 100755 index 0000000..4ca0680 --- /dev/null +++ b/misc/.xsession @@ -0,0 +1,92 @@ +#!/bin/yash +export TERM=xterm +load_configs() +{ + . /etc/profile + for file in /home/"${USER}"/.config/xresources/* + do xrdb -merge "${file}" + done +} +setup_daemons() +{ + #Don't use opengl on mobile devices. + if [ "$(hostname)" = "speculatores" ] + then picom -cCzfGD3 --shadow-exclude bounding_shaped --vsync --backend \ + xrender --no-use-damage & + else picom -cCzfGD3 --shadow-exclude bounding_shaped --vsync --backend \ + gl --no-use-damage & + fi + + #Manage clicks on the root window. + xclickroot -1 "$FXDE_DIR/fxde-core/config/menu" & + + #Manage hotkeys. + sxhkd -c "$FXDE_DIR/fxde-core/config/sxhkdrc" & + + #Run Emacs in the background + #emacs --daemon & + + #Start the screen-locker automatically. + xssstart slock & +} +start_ui() +{ + #Welcome chime. + aplay "${FXDE_DIR}/fxde-assets/audio/Login.wav" & + + #Set cursor. + xsetroot -xcf "${FXDE_DIR}/fxde-assets/cursors/${CURSOR}/cursors/left_ptr" 12 & + + #Set wallpaper. + xwallpaper --no-randr --stretch "${FXDE_DIR}/fxde-assets/wallpaper/${PAPE}" + + #Start our status bar. + "$FXDE_DIR/fxde-core/scripts/bar.sh"|lemonbar -b -F '#000000' -B '#00000000' -g 305x16+0+0 -f xft:family=Liberation:style=Mono:size=9:|/bin/sh -e & + + #Spawn a system tray. + stalonetray --window-type desktop --icon-gravity N -v -t --grow-gravity S \ + -i 24 --geometry 1x1+0-17 & + + #Manage clicks on the root window. + xclickroot -1 "$FXDE_DIR/fxde-core/config/menu" & +} + +mainfunc() +{ + $wm;pkill bar.sh +} +############################################################################### +############################################################################### +## ## +## The actual config is below this. ## +## ## +############################################################################### +############################################################################### + +#Where do we look for assets? +export FXDE_DIR=/home/midfavila/.config/fxde + +#What wallpaper to load? +PAPE=ori-thing.jpg + +#What cursor to load? +CURSOR=Lambda + +#What window manager to use? +export wm=shod + + + + + + + +#Initiate our session. +for phase in load_configs setup_daemons start_ui + do "${phase}" +done + + +#Hand control to the window manager. +#exec mainfunc +exec $wm diff --git a/misc/bar.sh b/misc/bar.sh index aee7694..907339e 100755 --- a/misc/bar.sh +++ b/misc/bar.sh @@ -9,37 +9,61 @@ tme() #Display current time in 24h notation pwr() #Display current battery capacity and whether we're discharging or not. { - x=$(cat /sys/class/power_supply/BAT1/status) - if [ "${x}" = "Discharging" ] - then printf "%s%%--" "$(cat /sys/class/power_supply/BAT1/capacity)" - else printf "%s%%++" "$(cat /sys/class/power_supply/BAT1/capacity)" + if [ "$(cat /sys/class/power_supply/BAT1/status)" = "Discharging" ] + then printf "%s%%--" "$(cat /sys/class/power_supply/BAT1/capacity)" + else printf "%s%%++" "$(cat /sys/class/power_supply/BAT1/capacity)" fi } ip() #Acquire the IP of our current connection. This is awful. I'm so sorry. { x=$(ifconfig wlp2s0|sed -ne 's/.*addr:\([0-9]*\.[0-9]*\.[0-9]*\.[0-9]*\).*/\1/p') - if [ "${x}" ] - then printf "%s" "${x}" - else printf "N/A" + if [ "$(route|sed 3!d|cut -b1-7)" != "default" ] + then printf "GW!" + ssu route add default gw 192.168.1.1 + elif [ "${x}" ] + then printf "%s" "${x}" + else + printf "N/A" fi } +tmp_helper() +{ + curl -s http://wttr.in/?format=1|\ + sed -ne 's/.*\(.[0-9][0-9]*.C\)/\1/p' > "${FXDE_DIR}/fxde-core/info/temp" + touch "${FXDE_DIR}/fxde-core/info/timepiece" +} + tmp() #Acquire ambient temperature from wttr.in every ival seconds { ival=120 #How often do we check? - if [ "${ival}" = $((ival-($(date|cut -d ':' -f 2)*60)%ival)) ] && \ + if [ $(expr % $(expr - "${ival}" $(expr \* $(date|cut -d ':' -f2) 60)) "${ival}" ) ] && \ [ ! -e "${FXDE_DIR}/fxde-core/info/timepiece" ] - then curl -s http://wttr.in/?format=3|\ - sed -ne 's/.*\(.[0-9][0-9]*.C\)/\1/p' > "${FXDE_DIR}/fxde-core/info/temp" - touch "${FXDE_DIR}/fxde-core/info/timepiece" + then printf "UPD" + tmp_helper elif [ -e "${FXDE_DIR}/fxde-core/info/timepiece" ] && \ - [ "${ival}" != $((ival-($(date|cut -d ':' -f 2)*60)%ival)) ] + [ ! $(expr % $(expr - 120 $(expr \* $(date|cut -d ':' -f2) 60)) 1200) ] then rm "${FXDE_DIR}/fxde-core/info/timepiece" - else cat "${FXDE_DIR}/fxde-core/info/temp" + elif [ -s "${FXDE_DIR}/fxde-core/info/temp" ] + then cat "${FXDE_DIR}/fxde-core/info/temp" + else + printf "COND" fi } -while true;do printf "%%{l}[ %s | %s | %s | %s ]\n" "$(tme)" "$(pwr)" "$(ip)" "$(tmp)";sleep 1;done +curdesk() +{ + x=0 + target=' ' + while [ "$target" != "*" ] + do + x=$(expr + 1 $x) + target=$(lsd|sed "${x}!d"|cut -b1) + done + printf "%s" "${x}" +} + +while true;do sleep 1; printf "%%{l}[ %s | %%{A:xcalendar:}%s%%{A} | %s | %s | %%{A:rm "${FXDE_DIR}/fxde-core/info/timepiece":}%s%%{A} ]\n" "$(curdesk)" "$(tme)" "$(pwr)" "$(ip)" "$(tmp)";done diff --git a/misc/endsession.sh b/misc/endsession.sh new file mode 100755 index 0000000..b3843d5 --- /dev/null +++ b/misc/endsession.sh @@ -0,0 +1,6 @@ +#!/bin/sh + +for service in bar.sh lemonbar-xft picom stalonetray sxhkd $wm +do + pkill $service +done diff --git a/misc/menu b/misc/menu index d0d9c4a..fdc8b1f 100755 --- a/misc/menu +++ b/misc/menu @@ -1,12 +1,23 @@ -#!/bin/sh +#!/bin/sh -e -printf \ -"MUDs - CoD xterm -e tt++ -Ge '#session cod cleftofdimensions.net 4354' - EoT xterm -e tt++ -Ge '#session eot eotmud.com 4000' -Emacs emacs -IM Pidgin -Paint mtpaint -Terminal xterm -Browser Links -Quit pkill shod"|pmenu|sh - +endsession() +{ + for proc in bar.sh shod + do + pkill "${proc}" + done +} + +pmenu << ENDMENU|sh -e +Inet + Browser Links + IM Pidgin +Media + Paint mtpaint +Systools + Editor emacsclient -cunq + Terminal xterm + Tasks lxtask +Log out "${FXDE_DIR}/fxde-core/scripts/endsession.sh" +Lock xset s activate +ENDMENU diff --git a/misc/sxhkdrc b/misc/sxhkdrc index 60a0ba8..1fddbfc 100644 --- a/misc/sxhkdrc +++ b/misc/sxhkdrc @@ -8,7 +8,7 @@ ctrl + Pause ; ctrl + r #Prompt the user for a Scheme expression ctrl + Pause ; shift + colon - printf "\n"|xprompt "r4rs:"|s9|xmessage -file - + gsi -e "$(printf "\n"|xprompt 'gsi>')"|xmessage -file - #Prompt the user for a shell command ctrl + Pause ; shift + exclam @@ -28,7 +28,7 @@ ctrl + Pause ; p ; t #Start GNU EMACS ctrl + Pause ; p ; e - emacsclient -cnqu + emacsclient -cunq #Lock the screen ctrl + Pause ; shift + L @@ -44,7 +44,7 @@ ctrl + Pause ; w ; t #Switch between windows ctrl + Pause ; shift + W - wmctrl -a "$(${FXDE_DIR}/fxde-core/scripts/winlist.sh|xprompt -i "?: "|sed 's/\(^ *\)//')" + wmctrl -ia "$(${FXDE_DIR}/fxde-core/scripts/winlist.sh|sort -rfn|xprompt -dsi '?: '|sed 's/\(^ *\)//')" #Kill the current window ctrl + Pause ; w ; shift + K diff --git a/misc/winlist.sh b/misc/winlist.sh index df3e9c9..40ee6fd 100755 --- a/misc/winlist.sh +++ b/misc/winlist.sh @@ -1,10 +1,10 @@ -#!/bin/sh -e +#!/bin/sh getxid() { if [ ${x} -gt 0 ] then - sed ${x}!d /tmp/winlist.jnk|cut -d ' ' -f 1 + sed ${x}!d /tmp/winlist.jnk|cut -d '^' -f2 else exit fi @@ -14,14 +14,24 @@ getname() { if [ ${x} -gt 0 ] then - sed ${x}!d /tmp/winlist.jnk |sed -ne "s/.*$(hostname) \(..*\)/\1/p" + sed ${x}!d /tmp/winlist.jnk|cut -d '^' -f1 else exit fi } #Get our window list -wmctrl -l > /tmp/winlist.jnk +wlist() +{ + x=$(lsc|wc -l) + while [ $x != 0 ] + do + printf "$(wname $(lsc|sed $x!d))^" >> /tmp/winlist.jnk + lsc|sed $x!d >> /tmp/winlist.jnk + x=$(expr - $x 1) + done +} +wlist #How many windows are we managing? x=$(wc -l /tmp/winlist.jnk|cut -d ' ' -f1) @@ -29,6 +39,9 @@ x=$(wc -l /tmp/winlist.jnk|cut -d ' ' -f1) #Print the list of windows in a xprompt-compatible manner while [ $x -gt 0 ] do - printf "%s\t%d\n" "$(getname)" "${x}" - x=$((x-1)) + printf "%s\t%s\n" "$(getxid)" "$(getname)" + x=$(expr - $x 1) done + +#Clean up so that nobody can snoop on us. +rm /tmp/winlist.jnk diff --git a/terminal/shrc b/terminal/shrc index 9b61db9..834e81a 100644 --- a/terminal/shrc +++ b/terminal/shrc @@ -8,7 +8,7 @@ clear export MANPATH="$MANPATH" # Set your preferred tools here -export EDITOR=tine +export EDITOR='emacsclient -cuq -nw' export PAGER=less export XPG=xless export W3B=Navigator @@ -16,6 +16,8 @@ export VPLAY=fpv export MPLAY=fpm export IVIEW=gpicview +alias edit="$EDITOR" + # Move crap out of $HOME export XDG_CACHE_HOME="/tmp/" export LESSHISTFILE="/dev/null" diff --git a/xresources/cosmetics b/xresources/cosmetics index dfa73af..c806e89 100644 --- a/xresources/cosmetics +++ b/xresources/cosmetics @@ -2,8 +2,8 @@ ! abuse... sorry X.Org guys. !*Font: -slavfox-cozette-medium-r-normal--13-120-75-75-m-60-iso10646-1 *Font: xft:Fixed:style=Regular: -*faceName: Liberation Mono -*faceSize: 10 +*faceName: xft:family=Iosevka,Iosevka Medium:style=Medium +*faceSize: 12 ! Choose your cursor icon theme Xcursor.theme: Lambda diff --git a/xresources/pmenu b/xresources/pmenu new file mode 100644 index 0000000..7d544dc --- /dev/null +++ b/xresources/pmenu @@ -0,0 +1,6 @@ +pmenu*font: xft:Exo:style=Medium:size=10: +pmenu*background: #4682B4 +pmenu*foreground: #FFFFFF +pmenu*selbackground: #BB4444 +pmenu*selforeground: #FFFFFF +pmenu*border: #FFFFFF diff --git a/xresources/theme.xpm b/xresources/theme.xpm new file mode 100644 index 0000000..e8a0668 --- /dev/null +++ b/xresources/theme.xpm @@ -0,0 +1,175 @@ +/* XPM */ +static char *theme[] = { +/* columns rows colors chars-per-pixel */ +"159 159 10 1 7 17", +" c #2E3436", +". c #555753", +"X c #A40000", +"o c #CC0000", +"O c #EF2929", +"+ c #204A87", +"@ c #3465A4", +"# c #729FCF", +"$ c #888A85", +"% c white", +/* pixels */ +"+++++++++++++++++++++++++++++++++++++++++++++++++++++#####################################################+++++++++++++++++++++++++++++++++++++++++++++++++++++", +"+######################+####+#######################+#++++++++++++++++++++++#++++#+++++++++++++++++++++++#+###################################################+", +"+#####################++###++######################++#+++++++++++++++++++++##+++##++++++++++++++++++++++##+##################################################++", +"+##@@@@@@@@@@@@@@@@@@@++##@++##@@@@@@@@@@@@@@@@@@@@++#++@@@@@@@@@@@@@@@@@@@##++@##++@@@@@@@@@@@@@@@@@@@@##+##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++", +"+##@@@@@@@@@@@@@@@@@@@++##@++##@@@@@@@@@@@@@@@@@@@@++#++@@@@@@@@@@@@@@@@@@@##++@##++@@@@@@@@@@@@@@@@@@@@##+##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++", +"+##@@+++++++++++++++++++#++++#++++++++++++++++++#@@++#++@@###################+####+##################+@@##+##@@+++++++++++++++++++++++++++++++++++++++++++#@@++", +"+##@@++++++++++++++++++++++++++++++++++++++++++##@@++#++@@##########################################++@@##+##@@++++++++++++++++++++++++++++++++++++++++++##@@++", +"+##@@++################+####+################++##@@++#++@@##++++++++++++++++#++++#++++++++++++++++##++@@##+##@@++################+####+################++##@@++", +"+##@@++###############++###++###############+++##@@++#++@@##+++++++++++++++##+++##+++++++++++++++###++@@##+##@@++###############++###++###############+++##@@++", +"+##@@++##@@@@@@@@@@@@@++##@++##@@@@@@@@@@@@@+++##@@++#++@@##++@@@@@@@@@@@@@##++@##++@@@@@@@@@@@@@###++@@##+##@@++##@@@@@@@@@@@@@++##@++##@@@@@@@@@@@@@+++##@@++", +"+##@@++##@@@@@@@@@@@@@++##@++##@###@@@@@##+@+++##@@++#++@@##++@@@@@@@@@@@@@##++@##++@+++@@@@@++#@###++@@##+##@@++##@@@@@@@@@@@@@++##@++##@###@@@@@##+@+++##@@++", +"+##@@++##@@@@@@@@@@@@@++##@++##@#@@#@@@#@@+@+++##@@++#++@@##++@@@@@@@@@@@@@##++@##++@+@@+@@@+@@#@###++@@##+##@@++##@@@@@@@@@@@@@++##@++##@#@@#@@@#@@+@+++##@@++", +"+##@@++##@@@@@@@@@@@@@++##@++##@#@@@#@#@@@+@+++##@@++#++@@##++@@@@@@@@@@@@@##++@##++@+@@@+@+@@@#@###++@@##+##@@++##@@@@@@@@@@@@@++##@++##@#@@@#@#@@@+@+++##@@++", +"+##@@++##@@@@@@@@@@@@@++##@++##@@#@@@#@@@+@@+++##@@++#++@@##++@@@@@@@@@@@@@##++@##++@@+@@@+@@@#@@###++@@##+##@@++##@@@@@@@@@@@@@++##@++##@@#@@@#@@@+@@+++##@@++", +"+##@@++##@@########+@@++##@++##@@@#@@@@@+@@@+++##@@++#++@@##++@@++++++++#@@##++@##++@@@+@@@@@#@@@###++@@##+##@@++##@@########+@@++##@++##@@@#@@@@@+@@@+++##@@++", +"+##@@++##@@#@@@@@@@+@@++##@++##@@@@#@@@+@@@@+++##@@++#++@@##++@@+@@@@@@@#@@##++@##++@@@@+@@@#@@@@###++@@##+##@@++##@@#@@@@@@@+@@++##@++##@@@@#@@@+@@@@+++##@@++", +"+##@@++##@@#++++++++@@++##@++##@@@#@@@@@+@@@+++##@@++#++@@##++@@+########@@##++@##++@@@+@@@@@#@@@###++@@##+##@@++##@@#++++++++@@++##@++##@@@#@@@@@+@@@+++##@@++", +"+##@@++##@@@@@@@@@@@@@++##@++##@@#@@@+@@@+@@+++##@@++#++@@##++@@@@@@@@@@@@@##++@##++@@+@@@#@@@#@@###++@@##+##@@++##@@@@@@@@@@@@@++##@++##@@#@@@+@@@+@@+++##@@++", +"+##@@++##@@@@@@@@@@@@@++##@++##@#@@@+@+@@@+@+++##@@++#++@@##++@@@@@@@@@@@@@##++@##++@+@@@#@#@@@#@###++@@##+##@@++##@@@@@@@@@@@@@++##@++##@#@@@+@+@@@+@+++##@@++", +"+##@@++##@@@@@@@@@@@@@++##@++##@#@@+@@@+@@+@+++##@@++#++@@##++@@@@@@@@@@@@@##++@##++@+@@#@@@#@@#@###++@@##+##@@++##@@@@@@@@@@@@@++##@++##@#@@+@@@+@@+@+++##@@++", +"+##@@++##@@@@@@@@@@@@@++##@++##@#++@@@@@+++@+++##@@++#++@@##++@@@@@@@@@@@@@##++@##++@+##@@@@@###@###++@@##+##@@++##@@@@@@@@@@@@@++##@++##@#++@@@@@+++@+++##@@++", +"+##@@++##@@@@@@@@@@@@@++##@++##@@@@@@@@@@@@@+++##@@++#++@@##++@@@@@@@@@@@@@##++@##++@@@@@@@@@@@@@###++@@##+##@@++##@@@@@@@@@@@@@++##@++##@@@@@@@@@@@@@+++##@@++", +"+#+++++#++++++++++++++++#++++#+++++++++++++++++#+++++#+#####+################+####+#################+#####+##@@++#++++++++++++++++#++++#+++++++++++++++++##@@++", +"+++++++++++++++++++++++++++++++++++++++++++++++++++++#####################################################+##@@++++++++++++++++++++++++++++++++++++++++++##@@++", +"+#####+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+#####+#+++++#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#+++++#+##@@++#######################################+##@@++", +"+####++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+####++#++++##%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#++++##+##@@++#######################################+##@@++", +"+##@@++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+##@@++#++@@##%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#++@@##+##@@++#######################################+##@@++", +"+#+++++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+#+++++#+#####%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#+#####+##@@++#######################################+##@@++", +"+++++++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+++++++#######%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#######+##@@++#######################################+##@@++", +"+#####+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+#####+#+++++#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#+++++#+##@@++#######################################+##@@++", +"+####++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+####++#++++##%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#++++##+##@@++#######################################+##@@++", +"+##@@++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+##@@++#++@@##%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#++@@##+##@@++#######################################+##@@++", +"+##@@++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+##@@++#++@@##%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#++@@##+##@@++#######################################+##@@++", +"+##@@++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+##@@++#++@@##%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#++@@##+##@@++#######################################+##@@++", +"+##@@++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+##@@++#++@@##%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#++@@##+##@@++#######################################+##@@++", +"+##@@++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+##@@++#++@@##%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#++@@##+##@@++#######################################+##@@++", +"+##@@++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+##@@++#++@@##%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#++@@##+##@@++#######################################+##@@++", +"+##@@++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+##@@++#++@@##%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#++@@##+##@@++#######################################+##@@++", +"+##@@++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+##@@++#++@@##%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#++@@##+##@@++#######################################+##@@++", +"+##@@++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+##@@++#++@@##%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#++@@##+##@@++#######################################+##@@++", +"+##@@++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+##@@++#++@@##%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#++@@##+##@@++#######################################+##@@++", +"+##@@++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+##@@++#++@@##%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#++@@##+##@@++#######################################+##@@++", +"+##@@++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+##@@++#++@@##%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#++@@##+##@@++#######################################+##@@++", +"+##@@++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+##@@++#++@@##%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#++@@##+##@@++#######################################+##@@++", +"+##@@++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+##@@++#++@@##%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#++@@##+##@@++#######################################+##@@++", +"+##@@++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%+##@@++#++@@##%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#++@@##+##@@++#######################################+##@@++", +"+##@@++++++++++++++++++++++++++++++++++++++++++##@@++#++@@##########################################++@@##+##@@++++++++++++++++++++++++++++++++++++++++++##@@++", +"+##@@+#################+####+####################@@++#++@@#+++++++++++++++++#++++#++++++++++++++++++++@@##+##@@+###########################################@@++", +"+##@@#################++###++####################@@++#++@@+++++++++++++++++##+++##++++++++++++++++++++@@##+##@@############################################@@++", +"+##@@@@@@@@@@@@@@@@@@@++##@++##@@@@@@@@@@@@@@@@@@@@++#++@@@@@@@@@@@@@@@@@@@##++@##++@@@@@@@@@@@@@@@@@@@@##+##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++", +"+##@@@@@@@@@@@@@@@@@@@++##@++##@@@@@@@@@@@@@@@@@@@@++#++@@@@@@@@@@@@@@@@@@@##++@##++@@@@@@@@@@@@@@@@@@@@##+##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++", +"+#++++++++++++++++++++++#++++#+++++++++++++++++++++++#+######################+####+#######################+#+++++++++++++++++++++++++++++++++++++++++++++++++++", +"+++++++++++++++++++++++++++++++++++++++++++++++++++++#####################################################+++++++++++++++++++++++++++++++++++++++++++++++++++++", +" $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ ", +" $$$$$$$$$$$$$$$$$$$$$$ $$$$ $$$$$$$$$$$$$$$$$$$$$$$ $ $ $ $ $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ ", +" $$$$$$$$$$$$$$$$$$$$$ $$$ $$$$$$$$$$$$$$$$$$$$$$ $ $$ $$ $$ $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ ", +" $$................... $$. $$.................... $ ...................$$ .$$ ....................$$ $$................................................ ", +" $$................... $$. $$.................... $ ...................$$ .$$ ....................$$ $$................................................ ", +" $$.. $ $ $.. $ ..$$$$$$$$$$$$$$$$$$$ $$$$ $$$$$$$$$$$$$$$$$$ ..$$ $$.. $.. ", +" $$.. $$.. $ ..$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ ..$$ $$.. $$.. ", +" $$.. $$$$$$$$$$$$$$$$ $$$$ $$$$$$$$$$$$$$$$ $$.. $ ..$$ $ $ $$ ..$$ $$.. $$$$$$$$$$$$$$$$ $$$$ $$$$$$$$$$$$$$$$ $$.. ", +" $$.. $$$$$$$$$$$$$$$ $$$ $$$$$$$$$$$$$$$ $$.. $ ..$$ $$ $$ $$$ ..$$ $$.. $$$$$$$$$$$$$$$ $$$ $$$$$$$$$$$$$$$ $$.. ", +" $$.. $$............. $$. $$............. $$.. $ ..$$ .............$$ .$$ .............$$$ ..$$ $$.. $$............. $$. $$............. $$.. ", +" $$.. $$............. $$. $$.$$$.....$$ . $$.. $ ..$$ .............$$ .$$ . ..... $.$$$ ..$$ $$.. $$............. $$. $$.$$$.....$$ . $$.. ", +" $$.. $$............. $$. $$.$..$...$.. . $$.. $ ..$$ .............$$ .$$ . .. ... ..$.$$$ ..$$ $$.. $$............. $$. $$.$..$...$.. . $$.. ", +" $$.. $$............. $$. $$.$...$.$... . $$.. $ ..$$ .............$$ .$$ . ... . ...$.$$$ ..$$ $$.. $$............. $$. $$.$...$.$... . $$.. ", +" $$.. $$............. $$. $$..$...$... .. $$.. $ ..$$ .............$$ .$$ .. ... ...$..$$$ ..$$ $$.. $$............. $$. $$..$...$... .. $$.. ", +" $$.. $$..$$$$$$$$ .. $$. $$...$..... ... $$.. $ ..$$ .. $..$$ .$$ ... .....$...$$$ ..$$ $$.. $$..$$$$$$$$ .. $$. $$...$..... ... $$.. ", +" $$.. $$..$....... .. $$. $$....$... .... $$.. $ ..$$ .. .......$..$$ .$$ .... ...$....$$$ ..$$ $$.. $$..$....... .. $$. $$....$... .... $$.. ", +" $$.. $$..$ .. $$. $$...$..... ... $$.. $ ..$$ .. $$$$$$$$..$$ .$$ ... .....$...$$$ ..$$ $$.. $$..$ .. $$. $$...$..... ... $$.. ", +" $$.. $$............. $$. $$..$... ... .. $$.. $ ..$$ .............$$ .$$ .. ...$...$..$$$ ..$$ $$.. $$............. $$. $$..$... ... .. $$.. ", +" $$.. $$............. $$. $$.$... . ... . $$.. $ ..$$ .............$$ .$$ . ...$.$...$.$$$ ..$$ $$.. $$............. $$. $$.$... . ... . $$.. ", +" $$.. $$............. $$. $$.$.. ... .. . $$.. $ ..$$ .............$$ .$$ . ..$...$..$.$$$ ..$$ $$.. $$............. $$. $$.$.. ... .. . $$.. ", +" $$.. $$............. $$. $$. ..... . $$.. $ ..$$ .............$$ .$$ . $$.....$$$.$$$ ..$$ $$.. $$............. $$. $$. ..... . $$.. ", +" $$.. $$............. $$. $$............. $$.. $ ..$$ .............$$ .$$ .............$$$ ..$$ $$.. $$............. $$. $$............. $$.. ", +" $ $ $ $ $ $ $$$$$ $$$$$$$$$$$$$$$$ $$$$ $$$$$$$$$$$$$$$$$ $$$$$ $$.. $ $ $ $$.. ", +" $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$.. $$.. ", +" $$$$$ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% $$$$$ $ $%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$ $ $$.. $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$.. ", +" $$$$ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% $$$$ $ $$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$ $$ $$.. $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$.. ", +" $$.. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% $$.. $ ..$$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$ ..$$ $$.. $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$.. ", +" $ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% $ $ $$$$$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$ $$$$$ $$.. $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$.. ", +" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% $$$$$$$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$$$$$$$ $$.. $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$.. ", +" $$$$$ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% $$$$$ $ $%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$ $ $$.. $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$.. ", +" $$$$ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% $$$$ $ $$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$ $$ $$.. $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$.. ", +" $$.. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% $$.. $ ..$$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$ ..$$ $$.. $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$.. ", +" $$.. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% $$.. $ ..$$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$ ..$$ $$.. $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$.. ", +" $$.. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% $$.. $ ..$$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$ ..$$ $$.. $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$.. ", +" $$.. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% $$.. $ ..$$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$ ..$$ $$.. $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$.. ", +" $$.. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% $$.. $ ..$$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$ ..$$ $$.. $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$.. ", +" $$.. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% $$.. $ ..$$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$ ..$$ $$.. $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$.. ", +" $$.. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% $$.. $ ..$$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$ ..$$ $$.. $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$.. ", +" $$.. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% $$.. $ ..$$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$ ..$$ $$.. $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$.. ", +" $$.. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% $$.. $ ..$$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$ ..$$ $$.. $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$.. ", +" $$.. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% $$.. $ ..$$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$ ..$$ $$.. $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$.. ", +" $$.. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% $$.. $ ..$$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$ ..$$ $$.. $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$.. ", +" $$.. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% $$.. $ ..$$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$ ..$$ $$.. $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$.. ", +" $$.. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% $$.. $ ..$$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$ ..$$ $$.. $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$.. ", +" $$.. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% $$.. $ ..$$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$ ..$$ $$.. $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$.. ", +" $$.. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% $$.. $ ..$$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$ ..$$ $$.. $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $$.. ", +" $$.. $$.. $ ..$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ ..$$ $$.. $$.. ", +" $$.. $$$$$$$$$$$$$$$$$ $$$$ $$$$$$$$$$$$$$$$$$$$.. $ ..$ $ $ ..$$ $$.. $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$.. ", +" $$..$$$$$$$$$$$$$$$$$ $$$ $$$$$$$$$$$$$$$$$$$$.. $ .. $$ $$ ..$$ $$..$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$.. ", +" $$................... $$. $$.................... $ ...................$$ .$$ ....................$$ $$................................................ ", +" $$................... $$. $$.................... $ ...................$$ .$$ ....................$$ $$................................................ ", +" $ $ $ $ $$$$$$$$$$$$$$$$$$$$$$ $$$$ $$$$$$$$$$$$$$$$$$$$$$$ $ ", +" $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ ", +"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", +"XOOOOOOOOOOOOOOOOOOOOOOXOOOOXOOOOOOOOOOOOOOOOOOOOOOOXOXXXXXXXXXXXXXXXXXXXXXXOXXXXOXXXXXXXXXXXXXXXXXXXXXXXOXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOX", +"XOOOOOOOOOOOOOOOOOOOOOXXOOOXXOOOOOOOOOOOOOOOOOOOOOOXXOXXXXXXXXXXXXXXXXXXXXXOOXXXOOXXXXXXXXXXXXXXXXXXXXXXOOXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXX", +"XOOoooooooooooooooooooXXOOoXXOOooooooooooooooooooooXXOXXoooooooooooooooooooOOXXoOOXXooooooooooooooooooooOOXOOooooooooooooooooooooooooooooooooooooooooooooooooXX", +"XOOoooooooooooooooooooXXOOoXXOOooooooooooooooooooooXXOXXoooooooooooooooooooOOXXoOOXXooooooooooooooooooooOOXOOooooooooooooooooooooooooooooooooooooooooooooooooXX", +"XOOooXXXXXXXXXXXXXXXXXXXOXXXXOXXXXXXXXXXXXXXXXXXOooXXOXXooOOOOOOOOOOOOOOOOOOOXOOOOXOOOOOOOOOOOOOOOOOOXooOOXOOooXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXOooXX", +"XOOooXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXOOooXXOXXooOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXXooOOXOOooXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXOOooXX", +"XOOooXXOOOOOOOOOOOOOOOOXOOOOXOOOOOOOOOOOOOOOOXXOOooXXOXXooOOXXXXXXXXXXXXXXXXOXXXXOXXXXXXXXXXXXXXXXOOXXooOOXOOooXXOOOOOOOOOOOOOOOOXOOOOXOOOOOOOOOOOOOOOOXXOOooXX", +"XOOooXXOOOOOOOOOOOOOOOXXOOOXXOOOOOOOOOOOOOOOXXXOOooXXOXXooOOXXXXXXXXXXXXXXXOOXXXOOXXXXXXXXXXXXXXXOOOXXooOOXOOooXXOOOOOOOOOOOOOOOXXOOOXXOOOOOOOOOOOOOOOXXXOOooXX", +"XOOooXXOOoooooooooooooXXOOoXXOOoooooooooooooXXXOOooXXOXXooOOXXoooooooooooooOOXXoOOXXoooooooooooooOOOXXooOOXOOooXXOOoooooooooooooXXOOoXXOOoooooooooooooXXXOOooXX", +"XOOooXXOOoooooooooooooXXOOoXXOOoOOOoooooOOXoXXXOOooXXOXXooOOXXoooooooooooooOOXXoOOXXoXXXoooooXXOoOOOXXooOOXOOooXXOOoooooooooooooXXOOoXXOOoOOOoooooOOXoXXXOOooXX", +"XOOooXXOOoooooooooooooXXOOoXXOOoOooOoooOooXoXXXOOooXXOXXooOOXXoooooooooooooOOXXoOOXXoXooXoooXooOoOOOXXooOOXOOooXXOOoooooooooooooXXOOoXXOOoOooOoooOooXoXXXOOooXX", +"XOOooXXOOoooooooooooooXXOOoXXOOoOoooOoOoooXoXXXOOooXXOXXooOOXXoooooooooooooOOXXoOOXXoXoooXoXoooOoOOOXXooOOXOOooXXOOoooooooooooooXXOOoXXOOoOoooOoOoooXoXXXOOooXX", +"XOOooXXOOoooooooooooooXXOOoXXOOooOoooOoooXooXXXOOooXXOXXooOOXXoooooooooooooOOXXoOOXXooXoooXoooOooOOOXXooOOXOOooXXOOoooooooooooooXXOOoXXOOooOoooOoooXooXXXOOooXX", +"XOOooXXOOooOOOOOOOOXooXXOOoXXOOoooOoooooXoooXXXOOooXXOXXooOOXXooXXXXXXXXOooOOXXoOOXXoooXoooooOoooOOOXXooOOXOOooXXOOooOOOOOOOOXooXXOOoXXOOoooOoooooXoooXXXOOooXX", +"XOOooXXOOooOoooooooXooXXOOoXXOOooooOoooXooooXXXOOooXXOXXooOOXXooXoooooooOooOOXXoOOXXooooXoooOooooOOOXXooOOXOOooXXOOooOoooooooXooXXOOoXXOOooooOoooXooooXXXOOooXX", +"XOOooXXOOooOXXXXXXXXooXXOOoXXOOoooOoooooXoooXXXOOooXXOXXooOOXXooXOOOOOOOOooOOXXoOOXXoooXoooooOoooOOOXXooOOXOOooXXOOooOXXXXXXXXooXXOOoXXOOoooOoooooXoooXXXOOooXX", +"XOOooXXOOoooooooooooooXXOOoXXOOooOoooXoooXooXXXOOooXXOXXooOOXXoooooooooooooOOXXoOOXXooXoooOoooOooOOOXXooOOXOOooXXOOoooooooooooooXXOOoXXOOooOoooXoooXooXXXOOooXX", +"XOOooXXOOoooooooooooooXXOOoXXOOoOoooXoXoooXoXXXOOooXXOXXooOOXXoooooooooooooOOXXoOOXXoXoooOoOoooOoOOOXXooOOXOOooXXOOoooooooooooooXXOOoXXOOoOoooXoXoooXoXXXOOooXX", +"XOOooXXOOoooooooooooooXXOOoXXOOoOooXoooXooXoXXXOOooXXOXXooOOXXoooooooooooooOOXXoOOXXoXooOoooOooOoOOOXXooOOXOOooXXOOoooooooooooooXXOOoXXOOoOooXoooXooXoXXXOOooXX", +"XOOooXXOOoooooooooooooXXOOoXXOOoXXXoooooXXXoXXXOOooXXOXXooOOXXoooooooooooooOOXXoOOXXoXOOoooooOOOoOOOXXooOOXOOooXXOOoooooooooooooXXOOoXXOOoXXXoooooXXXoXXXOOooXX", +"XOOooXXOOoooooooooooooXXOOoXXOOoooooooooooooXXXOOooXXOXXooOOXXoooooooooooooOOXXoOOXXoooooooooooooOOOXXooOOXOOooXXOOoooooooooooooXXOOoXXOOoooooooooooooXXXOOooXX", +"XOXXXXXOXXXXXXXXXXXXXXXXOXXXXOXXXXXXXXXXXXXXXXXOXXXXXOXOOOOOXOOOOOOOOOOOOOOOOXOOOOXOOOOOOOOOOOOOOOOOXOOOOOXOOooXXOXXXXXXXXXXXXXXXXOXXXXOXXXXXXXXXXXXXXXXXOOooXX", +"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOooXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXOOooXX", +"XOOOOOX%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%XOOOOOXOXXXXXO%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%OXXXXXOXOOooXXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOooXX", +"XOOOOXX%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%XOOOOXXOXXXXOO%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%OXXXXOOXOOooXXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOooXX", +"XOOooXX%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%XOOooXXOXXooOO%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%OXXooOOXOOooXXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOooXX", +"XOXXXXX%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%XOXXXXXOXOOOOO%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%OXOOOOOXOOooXXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOooXX", +"XXXXXXX%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%XXXXXXXOOOOOOO%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%OOOOOOOXOOooXXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOooXX", +"XOOOOOX%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%XOOOOOXOXXXXXO%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%OXXXXXOXOOooXXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOooXX", +"XOOOOXX%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%XOOOOXXOXXXXOO%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%OXXXXOOXOOooXXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOooXX", +"XOOooXX%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%XOOooXXOXXooOO%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%OXXooOOXOOooXXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOooXX", +"XOOooXX%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%XOOooXXOXXooOO%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%OXXooOOXOOooXXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOooXX", +"XOOooXX%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%XOOooXXOXXooOO%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%OXXooOOXOOooXXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOooXX", +"XOOooXX%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%XOOooXXOXXooOO%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%OXXooOOXOOooXXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOooXX", +"XOOooXX%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%XOOooXXOXXooOO%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%OXXooOOXOOooXXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOooXX", +"XOOooXX%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%XOOooXXOXXooOO%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%OXXooOOXOOooXXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOooXX", +"XOOooXX%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%XOOooXXOXXooOO%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%OXXooOOXOOooXXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOooXX", +"XOOooXX%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%XOOooXXOXXooOO%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%OXXooOOXOOooXXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOooXX", +"XOOooXX%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%XOOooXXOXXooOO%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%OXXooOOXOOooXXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOooXX", +"XOOooXX%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%XOOooXXOXXooOO%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%OXXooOOXOOooXXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOooXX", +"XOOooXX%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%XOOooXXOXXooOO%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%OXXooOOXOOooXXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOooXX", +"XOOooXX%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%XOOooXXOXXooOO%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%OXXooOOXOOooXXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOooXX", +"XOOooXX%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%XOOooXXOXXooOO%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%OXXooOOXOOooXXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOooXX", +"XOOooXX%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%XOOooXXOXXooOO%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%OXXooOOXOOooXXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOooXX", +"XOOooXX%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%XOOooXXOXXooOO%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%OXXooOOXOOooXXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXOOooXX", +"XOOooXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXOOooXXOXXooOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXXooOOXOOooXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXOOooXX", +"XOOooXOOOOOOOOOOOOOOOOOXOOOOXOOOOOOOOOOOOOOOOOOOOooXXOXXooOXXXXXXXXXXXXXXXXXOXXXXOXXXXXXXXXXXXXXXXXXXXooOOXOOooXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOooXX", +"XOOooOOOOOOOOOOOOOOOOOXXOOOXXOOOOOOOOOOOOOOOOOOOOooXXOXXooXXXXXXXXXXXXXXXXXOOXXXOOXXXXXXXXXXXXXXXXXXXXooOOXOOooOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOooXX", +"XOOoooooooooooooooooooXXOOoXXOOooooooooooooooooooooXXOXXoooooooooooooooooooOOXXoOOXXooooooooooooooooooooOOXOOooooooooooooooooooooooooooooooooooooooooooooooooXX", +"XOOoooooooooooooooooooXXOOoXXOOooooooooooooooooooooXXOXXoooooooooooooooooooOOXXoOOXXooooooooooooooooooooOOXOOooooooooooooooooooooooooooooooooooooooooooooooooXX", +"XOXXXXXXXXXXXXXXXXXXXXXXOXXXXOXXXXXXXXXXXXXXXXXXXXXXXOXOOOOOOOOOOOOOOOOOOOOOOXOOOOXOOOOOOOOOOOOOOOOOOOOOOOXOXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", +"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" +}; diff --git a/xresources/xosview b/xresources/xosview new file mode 100644 index 0000000..6de4452 --- /dev/null +++ b/xresources/xosview @@ -0,0 +1,58 @@ +xosview*title: Monitors +xosview*labels: False +xosview*captions: False +xosview*meterLabelColor: black +xosview*font: fixed +xosview*foreground: black +xosview*load: False +xosview*loadProcColor: black +xosview*loadWarnColor: yellow +xosview*loadCritColor: red +xosview*loadIdleColor: gray +xosview*cpu: True +xosview*cpuFormat: single +xosview*background: gray +xosview*swap: False +xosview*page: False +xosview*cpuFields: USED +xosview*cpuUserColor: #00FFFF +xosview*cpuGraph: False +xosview*cpuDecay: False +xosview*cpuFreeColor: #BCBCBC +xosview*memUsedColor: #15C4B0 +xosview*memFreeColor: #BCBCBC +xosview*memDecay: False +xosview*memUsedFormat: autoscale +xosview*memBufferColor: #05C4B0 +xosview*memCacheColor: #15C4B0 +xosview*memSharedColor: #15C4B0 +xosview*memKernelColor: #15C4B0 +xosview*memOtherColor: #15C4B0 +xosview*memSlabColor: #15C4B0 +xosview*net: True +xosview*netInColor: #0000CC +xosview*netOutColor: #CC0000 +xosview*netBackground: #BCBCBC +xosview*netBandwidth: 30000 +xosview*netPriority: 1 +xosview*netDecay: False +xosview*netGraph: False +xosview*netUsedFormat: autoscale +xosview*battery: True +xosview*netIface: wlp2s0 +xosview*batteryLeftColor: #F6F8B0 +xosview*batteryChargeColor: #B0F800 +xosview*batteryUsedColor: #BCBCBC +xosview*batteryFullColor: #00FF00 +xosview*batteryLowColor: #CC7722 +xosview*batteryCritColor: #FF0000 +xosview*batteryNoneColor: #BCBCBC +xosview*batteryUsedFormat: percent +xosview*wireless: False +xosview*disk: True +xosview*diskWriteColor: #A98C40 +xosview*diskReadColor: #CBAE62 +xosview*diskIdleColor: #BCBCBC +xosview*diskPriority: 1 +xosview*diskDecay: False +xosview*diskGraph: False diff --git a/xresources/xprompt b/xresources/xprompt new file mode 100644 index 0000000..cbacc7c --- /dev/null +++ b/xresources/xprompt @@ -0,0 +1,10 @@ +xprompt*font: xft:Exo:style=Medium:size=10: +xprompt*background: #4682B4 +xprompt*foreground: #FFFFFF +xprompt*description: #FFFFFF +xprompt*selbackground: #BB4444 +xprompt*selforeground: #FFFFFF +xprompt*seldescription: #FFFFFF +xprompt*border: #FFFFFF +xprompt*items: 5 + diff --git a/xresources/xterm b/xresources/xterm index 2159895..b1d7983 100644 --- a/xresources/xterm +++ b/xresources/xterm @@ -1,7 +1,7 @@ !! Cosmetics. ! Widgets. -xterm*faceName: Liberation Mono +xterm*faceName: Iosevka,Iosevka Medium xterm*faceSize: 12 xterm*background: black @@ -24,3 +24,17 @@ xterm*scrollTtyOutput: false ! Set a framerate cap (yes, its ridiculous, I know) xterm*buffered: true xterm*bufferedFPS: 60 + +! Work around odd behavior in EMACS. +xterm*backarrowKey: false + +! Run in Unicode mode. +xterm*utf8: 2 +xterm*Utf8Fonts: 2 +xterm*locale: true + +! Use a visual bell. +xterm*VisualBell: true + +! Send escape codes with META to allow use of EMACS +xterm*metaSendsEscape: true \ No newline at end of file diff --git a/xresources/xterm~ b/xresources/xterm~ new file mode 100644 index 0000000..aa1cbbf --- /dev/null +++ b/xresources/xterm~ @@ -0,0 +1,36 @@ +!! Cosmetics. + +! Widgets. +xterm*faceName: Iosevka,Iosevka Medium +xterm*faceSize: 12 +xterm*background: black + +!xterm*foreground: white + +! Misc. +xterm*title: Terminal + +!! Functionality. + +! Save X number of lines. +xterm*savelines: 20000 + +! Allow double-click to hilight URIs. +xterm*charClass: 33:48,36-47:48,58-59:48,61:48,63-64:48,95:48,126:48 + +! Stop scrolling on output. +xterm*scrollTtyOutput: false + +! Set a framerate cap (yes, its ridiculous, I know) +xterm*buffered: true +xterm*bufferedFPS: 60 + +! Work around odd behavior in EMACS. +xterm*backarrowKey: false + +! Run in Unicode mode. +xterm*utf8: 2 +xterm*Utf8Fonts: 2 + +! Use a visual bell. +xterm*VisualBell: true