Configs for zsh/bash/fish, git, tmux, bspwm, i3, awesome, and vim, plus some handy aliases.
An install.sh script is provided to allow the user to choose what to install and automate the installation. Ubuntu 16.04 is assumed.
system_aliases is compatible with zsh, bash, and fish shells. Features handy aliases for commands like ls, cd, emacs, apt-get, and git. Why cd ..
when you can ..
instead?
I'm currently using bspwm as my tiling window manager of choice, using polybar for displaying CPU, RAM, disk space, battery life, and time. To install the custom bspwm badge (modified mirror image of awesome), copy custom_bspwm_badge.png to /usr/share/unity-greeter. Keybindings configured in sxhkdrc are mostly the same as the i3 equivalents below.
Glowfish is a custom i3wm theme with conky and rofi, representing my best efforts to "de-uglify" i3. It is semi-inspired by the daylerees glowfish theme and copies the awesome copycats multicolor theme bar colors. Glowfish features CPU, RAM, disk usage, battery, weather, and date/time, using glyphs supplied by Siji font. All common commands are designed to be issued with two keys (mod4 + a letter). Some features are still in progress. Requires rofi, conky, and tamsyn and Siji fonts to be installed, as well as Droid Sans Mono for Powerline.
For displaying weather on Debian/Ubuntu, run sudo apt-get install weather-utils
and add the line id = <your_zipcode>
to /etc/weatherrc.
Keybinding | Description |
---|---|
mod4+e | Launch emacs. |
mod4+p | Launch rofi (dmenu-like application launcher). |
mod4+d | Launch dmenu. |
mod4+c | Close application. |
mod4+Shift-r | Reload i3 configuration. |
mod4+Enter | Launch terminator terminal. |
mod4+Shift+Enter | Launch urxvt terminal. |
mod4+Delete | Launch system shutdown/reboot/logoff/reload menu (compatible with Ubuntu). |
mod4+Shift+x | Launch a prettier, but slightly buggy system shutdown/reboot/logoff/reload menu using dzen2 (compatible with Ubuntu). |
mod4+Shift+p | Lock the desktop with the py3lock script from Airblader. |
mod4+Left | Move to workspace on the left. |
mod4+Right | Move to workspace on the right. |
Features extremely quick pane and window spawn/kill/switching, using ctrl-arrows and shift-arrows, respectively. The prefix key is set to C-t, in order to reduce friction with emacs. Requires tmux 1.9 and the tmux plugin manager in order to support tmux-resurrect and tmux-yank plugins (but you can disable them, if desired).
Keybinding | Description |
---|---|
C-t t | Change to last-window by pressing Ctrl-t, letting go, and pressing t again. |
C-tt... | By holding down Ctrl and pressing t repeatedly, you can cycle through panes with this chained command. |
S-up | Create new-window. |
S-down | Kill window. |
S-left | Previous window. |
S-right | Next window. |
C-up | Select pane above. |
C-down | Select pane below. |
C-left | Select pane to the left. |
C-right | Select pane to the right. |
C-t SPC | Auto-rearrange the pane configuration. |
C-t | | Split the window into smaller panes vertically. |
C-t = | Split the window into smaller panes horizontally. |
C-t e | Synchronize panes (toggle sending commands to all panes in the current window). |
C-t * | Restart a pane that is hung. |
C-t , | Rename current window. |
C-t r | Reload the .tmux.conf file. |
My zsh configuration uses antigen for package management and agnoster as the prompt, which requires a powerline-patched font. Install the former to a ~/.antigen
folder. Completion functions are provided through zprezto modules, and zaw is included for helm-like history search with C-r
. Clone the zaw repo to ~/.zaw
.
- After trying xmonad and awesome, I found that while I enjoyed the power of tiling window managers, I had no earthly idea what to do when they broke, which they did often and horribly. The amount of time spent fixing them was just not commensurate to the amount of functionality I was gaining. Then I found i3, a tiling window manager configurable in plain English, which instantly prints out the location of any errors when you load it. It's probably one of the best tiling window managers out there in terms of readability. Most recently, I switched to bspwm, which is more terse, but simple to configure as well.