diff --git a/README b/README index 42f1b3b..c40ba65 100644 --- a/README +++ b/README @@ -3,6 +3,7 @@ Dotfiles for a variety of programs: Terminal utilities -POSIX shell rc -Yet Another Shell rc + -Extensible Shell rc Xresources -shod @@ -18,8 +19,8 @@ Xresources GTK stuff -gtkrc -EMACS (in the future) - -[N/A] +GNU EMACS + -init.el Miscellaneous stuff -lemonbar script diff --git a/misc/.xsession b/misc/.xsession deleted file mode 100755 index 4ca0680..0000000 --- a/misc/.xsession +++ /dev/null @@ -1,92 +0,0 @@ -#!/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.es b/misc/bar.es new file mode 100755 index 0000000..f81ef86 --- /dev/null +++ b/misc/bar.es @@ -0,0 +1,63 @@ +#!/bin/es + +fn interval{ + n=`{date|sed -ne 's^.*[0-9][0-9]:[0-9][0-9]:\([0-9][0-9]\).*^\1^p'} + sleep `{expr - 60 `{expr % $n 60}} + } + +# Display Time using 24h notation. +fn clock{ + date|sed -ne 's^.*\([0-9][0-9]\):\([0-9][0-9]\):[0-9][0-9].*^\1\2^p' + } +# Acquire the name of the current machine's primary interface. +fn iface_get{ + if{~ $HOSTNAME speculatores} + {printf wlp2s0}\ + {printf eno1} + } + +# Acquire the IP of the current connection. Needs to be made portable. +fn ip{ + x=`{ifconfig wlp2s0|sed -ne 's^.*addr:\([0-9]*\.[0-9]*\.[0-9]*\.[0-9]*\).*^\1^p'} + if{~ `{route|sed 3!d|cut -b1-7} 'default'} + {if {!~ $x ''} + {printf %s $x}\ + {printf %s 'G/W'} + }\ + {printf N/A} + } +# Display the current battery capacity and status +fn pwr{ + if{~ `{cat /sys/class/power_supply/BAT1/status} 'Discharging'}\ + {printf --%s%% `{cat /sys/class/power_supply/BAT1/capacity}}\ + {printf ++%s%% `{cat /sys/class/power_supply/BAT1/capacity}} + } + + + +fn tmp_helper{ + snarf '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 + } +fn tmp{ + ival=120 + + # If we've rolled over into a second minute and timepiece does not exist... + if {`{expr % `{expr - $ival `{expr \* `{date|cut -d':' -f2} 60}} 60}&&\ + ! test -e $FXDE_DIR/fxde-core/info/timepiece} + {printf UPD + tmp_helper}\ + {test -e $FXDE_DIR/fxde-core/info/timepiece && ! `{expr % `{expr - 120 `{expr \* `{date|cut -d':' -f2} 60}} 1200}} + {rm $FXDE_DIR/fxde-core/info/timepiece}\ + {test -s $FXDE_DIR/fxde-core/info/temp} + {cat $FXDE_DIR/fxde-core/info/temp}\ + {printf CND} + } + +fn curdesk iter {if{~ $wm shod}{if {~ `{lsd|sed $iter!d|cut -b1} '*'}{printf %i $iter}{curdesk `{expr + 1 $iter}}}{printf %s N/A}} + +while {true}{ + printf '%%{l}[ %s | %%{A:xcalendar:}%s%%{A} | %s | %s ]\n' `{pwr} `{clock} `{ip} `{curdesk 1} + sleep 1 +} diff --git a/misc/endsession.sh b/misc/endsession.sh index b3843d5..99c75bd 100755 --- a/misc/endsession.sh +++ b/misc/endsession.sh @@ -1,6 +1,6 @@ #!/bin/sh -for service in bar.sh lemonbar-xft picom stalonetray sxhkd $wm +for service in stalonetray sxhkd picom aepanel $wm do pkill $service done diff --git a/misc/gtkrc-2.0 b/misc/gtkrc-2.0 new file mode 100644 index 0000000..4adee8e --- /dev/null +++ b/misc/gtkrc-2.0 @@ -0,0 +1,12 @@ +gtk-can-change-accels = 1 +gtk-key-theme-name = "Emacs" + +gtk-icon-theme-name = "old-gnome-set" +gtk-theme-name = "Haiku" + +style "user-font" +{ + font_name="Clear Sans Regular 10" +} +widget_class "*" style "user-font" +gtk-font-name = "Clear Sans Regular 10" diff --git a/misc/init.el b/misc/init.el new file mode 100644 index 0000000..5d004eb --- /dev/null +++ b/misc/init.el @@ -0,0 +1,249 @@ +;;; package -- summary +;;; Commentary: + +;;; Code: + +;; This section is for boilerplate code. + +; Hide the tool bar. +(tool-bar-mode 0) + +; Set the default geometry of the Emacs frame. +(setq default-frame-alist + '((top . 200) (left . 400) + (width . 80) (height . 25))) + +;; Include the golden-ratio package to keep things pleasing. +(use-package golden-ratio) +(golden-ratio-mode) + + +; Automatically compile ELisp when saving +(auto-compile-on-save-mode) + +; Increase the garbage collector's threshold +(setq gc-cons-threshold 100000000) +(setq large-file-warning-threshold 1000000000) + +; Store temporary files in the temp directory, where they belong +(setq backup-directory-alist + `((".*" . ,temporary-file-directory))) +(setq auto-save-file-name-transforms + `((".*" ,temporary-file-directory t))) + +; 'y' or 'n' is fine +(fset 'yes-or-no-p 'y-or-n-p) + +; Automatically reload files as needed +(global-auto-revert-mode t) + +; Set tab width +;(setq-default tab-width 4 +; indent-tabs-mode nil) + +; Kill our current buffer +(global-set-key (kbd "C-x k") 'kill-this-buffer) + +; Remove unneeded whitespace when exiting +;(add-hook 'before-save-hook 'whitespace-cleanup) +;Replace the above with butler + +;(use-package smartparens +; :ensure t +; :config +; (progn +; (require 'smartparens-config) +; (smartparens-global-mode 1) +; (show-paren-mode t))) + +; Set the Web Wowser as the default browser in EMACS +(setq + browse-url-browser-function 'eww-browse-url + shr-use-fonts nil + shr-use-colors nil + shr-indentation 2 + eww-search-prefix "https://duckduckgo.com/html") + +; Inhibit the GNU information startup dialog. +(setq inhibit-startup-message t) + + + +;; This section is for managing packages + + +; Enable SLIME. +(use-package slime + :config + (setq inferior-lisp-program "sbcl")) + +; Add auto-complete to SLIME. +(use-package ac-slime + :config + (add-hook 'slime-mode-hook 'set-up-slime'ac) + (add-hook 'slime-repl-mode-hook 'set-up-slime-ac) + (eval-after-load "auto-complete" + '(add-to-list 'ac-modes 'slime-repl-mode))) +; Enhance frame management +;(use-package cframe +; :demand +; :config +;) + + +; Add an SRFI browser +(use-package srfi) + + +; Automatically add spaces around mathematics operators +(use-package electric-operator) + +; Add Conkeror-style operations to the web wowser +(use-package eww-lnum) +(eval-after-load "eww" + '(progn (define-key eww-mode-map "f" 'eww-lnum-follow) + (define-key eww-mode-map "F" 'eww-lnum-universal))) + +;; Configure the fuzzy-pattern matching engine, Helm +(use-package helm + :ensure t + :bind + :config + (require 'helm-config) + (helm-mode 1) + (setq helm-split-window-inside-p t + helm-move-to-line-cycle-in-source t) + (setq helm-autoresize-max-height 0) + (setq helm-autoresize-min-height 20) + (helm-autoresize-mode 1) + (define-key helm-map (kbd "") + `helm-execute-persistent-action) + (define-key helm-map (kbd "C-i") + 'helm-execute-persistent-action) + (define-key helm-map (kbd "C-z") + `helm-select-action)) + +;; Set Helm up to provide meta-x suggestions and others. +(global-set-key (kbd "M-x") 'helm-M-x) +(global-set-key (kbd "M-y") 'helm-show-kill-ring) +(global-set-key (kbd "C-x b") 'helm-mini) +(setq helm-buffers-fuzzy-matching t + helm-recentf-fuzzy-match t) +(global-set-key (kbd "C-x C-f") 'helm-find-files) + +;; Prevent golden-ratio from interfering with Helm +(defun pl/helm-alive-p () + (if (boundp 'helm-alive-p) + (symbol-value 'helm-alive-p))) +(add-to-list 'golden-ratio-inhibit-functions 'pl/helm-alive-p) + + +;; Add Helm support to the web wowser +(use-package helm-eww) + +; Add on-the-fly syntax linting +(use-package flycheck + :demand + :config + (add-hook 'after-init-hook #'global-flycheck-mode)) + + +; Integrate Helm recommendations and Flycheck linting +(use-package helm-flycheck) +(eval-after-load 'flycheck + '(define-key flycheck-mode-map (kbd "C-c ! h") 'helm-flycheck)) + +; Make Helm responsible for providing mode recommendations +(use-package helm-mode-manager) + +; Add Helm suggestion support to SLIME +(use-package helm-slime + :config + (global-helm-slime-mode 1)) + +;; This section is for UI elements. + +; Set your default theme and changes to the UI here. +(load-theme `parchment t) +(set-fringe-mode `(0 . 0)) +(scroll-bar-mode 0) + + +; Powerline is similar to Centaur Tabs, except it handles the mode line. +(use-package powerline + :demand + :config + (powerline-nano-theme)) + +; Stripes adds alternating stripes to buffers +(use-package stripes + :config +) + +; Popwin forces informational, educational, fantasticational buffers into a temporary window. Thank god. +(use-package popwin + :demand + :config + ; Meta commands + (setq anything-samewindow nil) + (push `("*anything*" :height 20) popwin:special-display-config) + (push `("*Completions*" :height 20) popwin:special-display-config) + (push `("*Messages*" :height 20) popwin:special-display-config) + (push `("*compilation*" :height 20) popwin:special-display-config) + (push `("*Help*" :height 20) popwin:special-display-config) + (push `("*Warnings*" :height 20) popwin:special-display-config) + (push `("*Backtrace*" :height 20) popwin:special-display-config) + (push `("*Buffer List*" :height 20) popwin:special-display-config) + ; SLIME commands + (push "*slime-apropos*" popwin:special-display-config) + (push "*slime-macroexpansion*" popwin:special-display-config) + (push "*slime-description*" popwin:special-display-config) + (push '("*slime-compilation*" :noselect t) + popwin:special-display-config) + (push "*slime-xref*" popwin:special-display-config) + (push '(sldb-mode :stick t) popwin:special-display-config) + (push 'slime-repl-mode popwin:special-display-config) + (push 'slime-connection-list-mode popwin:special-display-config) + ) +(popwin-mode 1) + +; Enable frame dividers +(setq window-divider-default-places t) +(window-divider-mode 1) + +; Enable absolute line numbers in selected modes +(defvar proghook-active 0) +(defun proghook () "Function for prog mode hook." + (display-line-numbers-mode `toggle) + (electric-pair-mode `toggle) + (electric-quote-mode `toggle) + (electric-indent-mode `toggle) + (flycheck-mode `toggle) + (ws-butler-mode `toggle) + (context-coloring-mode `toggle) + (semantic-mode `toggle)) + +(add-hook 'prog-mode-hook 'proghook) + +(custom-set-variables + ;; custom-set-variables was added by Custom. + ;; If you edit it by hand, you could mess it up, so be careful. + ;; Your init file should contain only one such instance. + ;; If there is more than one, they won't work right. + '(custom-safe-themes + '("07a8ce87456258f259cc5cc824eddd0ad7b0e905a4a1e9331559b86254cd8166" default)) + '(package-selected-packages + '(haskell-mode goggles ac-html ac-helm ac-haskell-process ac-etags ac-c-headers gnuplot smartparens smooth-scroll eww-lnum helm-mode-manager helm-flycheck helm-eww ac-slime helm-slime helm-core helm ws-butler clean-aindent-mode company-c-headers company pcache link context-coloring flyspell-lazy flyspell-correct-ivy auto-compile guru-mode good-scroll golden-ratio xpm use-package ten-hundred-mode stripes srfi speed-type slime sed-mode schrute popwin paren-face parchment-theme jammer flycheck electric-operator cframe)) + '(show-paren-mode t)) +(provide 'init) +;;; init.el ends here +(custom-set-faces + ;; custom-set-faces was added by Custom. + ;; If you edit it by hand, you could mess it up, so be careful. + ;; Your init file should contain only one such instance. + ;; If there is more than one, they won't work right. + '(default ((t (:family "Iosevka" :foundry "UKWN" :slant normal :weight normal :height 120 :width normal)))) + '(centaur-tabs-default ((t (:background "white" :foreground "white"))))) + + +;;Garbage diff --git a/misc/legacy/bar.old b/misc/legacy/bar.old new file mode 100755 index 0000000..9d2f84f --- /dev/null +++ b/misc/legacy/bar.old @@ -0,0 +1,68 @@ +#!/bin/sh -e + +FXDE_DIR=/home/midfavila/.config/fxde + +tme() #Display current time in 24h notation +{ + date|sed -ne 's/ */ /gp'|cut -d ' ' -f4|sed -ne 's/\([0-9][0-9]\):\([0-9][0-9]\).*/\1\2/p' +} + +pwr() #Display current battery capacity and whether we're discharging or not. +{ + 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 [ "$(route|sed 3!d|cut -b1-7)" != "default" ] + then printf "ERR" + 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 [ $(expr % $(expr - "${ival}" $(expr \* $(date|cut -d ':' -f2) 60)) "${ival}" ) ] && \ + [ ! -e "${FXDE_DIR}/fxde-core/info/timepiece" ] + then printf "UPD" + tmp_helper + elif [ -e "${FXDE_DIR}/fxde-core/info/timepiece" ] && \ + [ ! $(expr % $(expr - 120 $(expr \* $(date|cut -d ':' -f2) 60)) 1200) ] + then rm "${FXDE_DIR}/fxde-core/info/timepiece" + elif [ -s "${FXDE_DIR}/fxde-core/info/temp" ] + then cat "${FXDE_DIR}/fxde-core/info/temp" + else + printf "COND" + fi + +} + +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/utils.es b/misc/utils.es new file mode 100644 index 0000000..0159f34 --- /dev/null +++ b/misc/utils.es @@ -0,0 +1,5 @@ +#!/bin/es + +fn swap_win{ + $FXDE_DIR/fxde-core/scripts/winlist.sh|sort -rfn|xprompt -dfi \?:|sed 's/\(^ *\)//'|wtf `{cat /dev/stdin};chwso -r `pfw + } diff --git a/misc/winlist.sh b/misc/winlist.sh index 40ee6fd..4bb63d7 100755 --- a/misc/winlist.sh +++ b/misc/winlist.sh @@ -1,5 +1,8 @@ #!/bin/sh +# Prevent snooping +umask 007 + getxid() { if [ ${x} -gt 0 ] @@ -43,5 +46,5 @@ while [ $x -gt 0 ] x=$(expr - $x 1) done -#Clean up so that nobody can snoop on us. +#Clean up rm /tmp/winlist.jnk diff --git a/misc/xsession b/misc/xsession index f93314c..02c66ad 100755 --- a/misc/xsession +++ b/misc/xsession @@ -1,87 +1,61 @@ -#!/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 +#!/bin/es +. ~/.esrc - #Manage clicks on the root window. - xclickroot -1 "$FXDE_DIR/fxde-core/config/menu" & +fn load_configs{ + for (x=`{ls ~/.config/xresources/*}) + {xrdb -merge $x} + } +fn setup_daemons{ + if {~ $HOSTNAME speculatores} + { + backend=xrender + } + { + backend=glx + } - #Manage hotkeys. - sxhkd -c "$FXDE_DIR/fxde-core/config/sxhkdrc" & + # Start the compositor. + picom -cCzfGD3 -i.85 --shadow-exclude bounding_shaped --vsync --no-use-damage --backend $backend& - #Run Emacs in the background - emacs --daemon & + # Manage clicks on the root window. + # xclickroot -1 aemenu & - #Start the screen-locker automatically. - xssstart slock & -} -start_ui() -{ - #Welcome chime. - aplay "${FXDE_DIR}/fxde-assets/audio/Login.wav" & + # Manage hotkeys. + sxhkd -c $FXDE_DIR/fxde-core/config/sxhkdrc & - #Set cursor. - xsetroot -xcf "${FXDE_DIR}/fxde-assets/cursors/${CURSOR}/cursors/left_ptr" 12 & + # Start the screen locker on a timer. + xssstart slock & + } +fn start_ui{ + # Welcome chime. + aplay $FXDE_DIR/fxde-assets/audio/Login.wav & - #Set wallpaper. - xwallpaper --no-randr --stretch "${FXDE_DIR}/fxde-assets/wallpaper/${PAPE}" + # 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 the status bar. Doesn't work in some WMs. EWMH maybe..? +# $FXDE_DIR/fxde-core/scripts/bar.es|lemonbar -b -F '#000000' -g265x16+0+0 -B '#00000000' -f 'xft:family=Iosevka:style=Mono:size=9:' |sh - & + # Start the task bar in environments where the status bar doesn't work. + aepanel & + # Spawn a tray. + stalonetray --window-type desktop --icon-gravity N -v -t --grow-gravity S -i 24 --geometry 1x1+0-17 & + } +################################################################################ +## The actual config is below this. ## +################################################################################ - #Start our status bar. - "$FXDE_DIR/fxde-core/scripts/bar.sh"|lemonbar -b -F '#000000' -g265x16+0+0 \ - -B '#00000000' -f xft:family=Liberation:style=Mono:size=9: & +# Where to look for assets. +FXDE_DIR=~/.config/fxde/ - #Spawn a system tray. - stalonetray --window-type desktop --icon-gravity N -v -t --grow-gravity S \ - -i 24 --geometry 1x1+0-17 & +# Paper to use. +PAPE=lain-ascii.jpg - #Manage clicks on the root window. - xclickroot -1 "$FXDE_DIR/fxde-core/config/menu" & -} -############################################################################### -############################################################################### -## ## -## The actual config is below this. ## -## ## -############################################################################### -############################################################################### - -#Where do we look for assets? -FXDE_DIR=/home/midfavila/.config/fxde - -#What wallpaper to load? -PAPE=ori-thing.jpg - -#What cursor to load? +# What cursor? CURSOR=Lambda -#What window manager to use? -wm=shod +# What WM? +wm=aewm-wrap - - - - - - -#Initiate our session. -for phase in load_configs setup_daemons start_ui - do "${phase}" -done - - -#Hand control to the window manager. -exec "${wm}" +for (phase=load_configs setup_daemons start_ui){$phase} +exec $wm diff --git a/terminal/esrc b/terminal/esrc new file mode 100644 index 0000000..a4ffa24 --- /dev/null +++ b/terminal/esrc @@ -0,0 +1,64 @@ +##################################################################### +## Environment ## +##################################################################### + +# Set the time zone. +TZ=AEST+3 + +# Clear the terminal. +clear + +# Set our default directory to the Workspace. +cd ~/Desktop/Workspace + +# Set up the preferred tooling. +EDITOR='emacsclient -cuq -nw' +PAGER='less' +XPG='xless' +W3B='Links' +VPLAY='fpv' +MPLAY='fpm' +IVIEW='iview' + +## Configure for kiss compat +KISS_PATH=`{echo "/var/db/kiss/repos/kiss-mfavila/ports:`{du -d5 /var/db/kiss/repos|cut -f2|grep -v \\.|sort|tr '\n' ':'}"} + +KISS_DL='axel' + +KISS_SU='ssu' + +# Configure our compiler. +CFLAGS='-pipe -w -D_GLIBCXX_ASSERTIONS -D_FORTIFY_SOURCE=1 -O2 -march=haswell -fno-asynchronous-unwind-tables -momit-leaf-frame-pointer -ftree-loop-vectorize -fstack-protector-strong --param ssp-buffer-size=4 -fstack-clash-protection -fPIE -fPIC -Wl,--hash-style=gnu' +CXXFLAGS=$CFLAGS +FFLAGS=$CFLAGS +LDFLAGS= + +# Set makejobs to number of threads minus two. +MAKEFLAGS=`{echo -j`{expr - `{grep cores /proc/cpuinfo|wc -l} 2}} + +# Build in memory and keep crap out of home. +XDG_CACHE_HOME='/tmp' +LESSHISTFILE='/dev/urandom' +XDG_CONFIG_HOME='/home/midfavila/.config/' +CONFIG_DIR='.config' + +##################################################################### +## Prompt Settings ## +##################################################################### + +# Determine what directory we're in +fn cdir{if {test `'pwd' \= $HOME}{printf \~}{basename `pwd}} # Print the prompt itself. %prompt is called before displaying the prompt. +fn %prompt{prompt=`echo `whoami\:`cdir\>\ } + +##################################################################### +## Aliases ## +##################################################################### + +# Editor! +fn edit args {emacsclient -cuq -nw $args} + +# Git! +fn gcl args {git clone $args} + +# KISS! +fn k args {kiss $args} diff --git a/terminal/shrc b/terminal/shrc index 834e81a..ccbab49 100644 --- a/terminal/shrc +++ b/terminal/shrc @@ -1,3 +1,6 @@ +# Before we do anything else, move to the Workspace! +cd ~/Desktop/Workspace + # Clear the login screen clear @@ -18,7 +21,7 @@ export IVIEW=gpicview alias edit="$EDITOR" -# Move crap out of $HOME +# Keep crap out of $HOME export XDG_CACHE_HOME="/tmp/" export LESSHISTFILE="/dev/null" #export GTK2_RC_FILES="~/.config/gtk-2.0/gtkrc" @@ -36,9 +39,6 @@ alias k='kiss' # We need to work around glibc's shitty parameter parsing. #alias ssu='/bin/ssu -- ' -## Prompt settings ## -#export PS1="do>: " - ## Handle remote filesystems ## # Are we using yash? If so, source additional configs. diff --git a/xresources/cosmetics b/xresources/cosmetics index c806e89..a3ee192 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: xft:family=Iosevka,Iosevka Medium:style=Medium -*faceSize: 12 +!*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 index 7d544dc..f1d820f 100644 --- a/xresources/pmenu +++ b/xresources/pmenu @@ -1,4 +1,4 @@ -pmenu*font: xft:Exo:style=Medium:size=10: +pmenu*font: xft:Clear Sans:style=Regular:size=10: pmenu*background: #4682B4 pmenu*foreground: #FFFFFF pmenu*selbackground: #BB4444 diff --git a/xresources/urxvt b/xresources/urxvt deleted file mode 100644 index 5c70408..0000000 --- a/xresources/urxvt +++ /dev/null @@ -1,30 +0,0 @@ -!! Cosmetics. - -! Widgets. -xterm*faceName: Liberation Mono -xterm*faceSize: 12 -xterm*ScrollBar: false -xterm*toolBar: false -xterm.form.background: #D8D8D8 -xterm.form.vt100.background: black -xterm.form.menubar*background: #BEBEBE - -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 diff --git a/xresources/xterm b/xresources/xterm index b1d7983..8b27d74 100644 --- a/xresources/xterm +++ b/xresources/xterm @@ -1,11 +1,11 @@ !! Cosmetics. ! Widgets. -xterm*faceName: Iosevka,Iosevka Medium +xterm*faceName: Iosevka Regular xterm*faceSize: 12 xterm*background: black -!xterm*foreground: white +xterm*foreground: white ! Misc. xterm*title: Terminal