Browse Source

put powerline in right place, add config files in `.config/powerline`

Weiyi Lou 12 năm trước cách đây
mục cha
commit
cbaaf84ca5

+ 3 - 0
.gitmodules

@@ -67,3 +67,6 @@
 [submodule "vim/bundle/vim-markdown"]
 	path = vim/bundle/vim-markdown
 	url = https://github.com/plasticboy/vim-markdown.git
+[submodule "powerline/powerline"]
+	path = powerline/powerline
+	url = https://github.com/Lokaltog/powerline.git

+ 16 - 18
RUNME

@@ -3,7 +3,6 @@
 # This script pulls extra software and creates appropriate symlinks in the home
 # directory
 # Run from where it's located (within dotfiles directory)
-# A lot of this extra knowledge courtesy of vimcasts.org!
 
 # Make a known_hosts file if none, otherwise zsh throws an error for our .zshrc
 if test -f ~/.ssh/known_hosts; then
@@ -35,13 +34,6 @@ git submodule init
 git submodule update
 echo "dotfiles submodules done..."
 
-# Add more vim plugins from this dotfiles directory, like so:
-#     git submodule add git://github.com/tpope/module.git vim/bundle/module
-#
-# Apart from updating plugins individually, you can update all submodules
-#     git submodule foreach git pull origin master
-
-
 #
 # Thanks to: https://github.com/dangerous/dotfiles
 # for cleaner way of handling symlinking
@@ -50,40 +42,46 @@ BACKUP_DIR="/tmp/$(date)"
 mkdir "$BACKUP_DIR"
 
 # Zsh
-mv ~/.zshrc "$BACKUP_DIR"
-mv ~/.zshenv "$BACKUP_DIR"
+[ -f ~/.zshrc ] && mv ~/.zshrc "$BACKUP_DIR"
+[ -f ~/.zshenv ] && mv ~/.zshenv "$BACKUP_DIR"
 ln -s dotfiles/zsh/zshrc ~/.zshrc
 ln -s dotfiles/zsh/zshenv ~/.zshenv
 
 # Vim
-mv ~/.vim "$BACKUP_DIR"
-mv ~/.vimrc "$BACKUP_DIR"
+[ -d ~/.vim ] && mv ~/.vim "$BACKUP_DIR"
+[ -f ~/.vimrc ] && mv ~/.vimrc "$BACKUP_DIR"
 ln -s dotfiles/vim ~/.vim
 ln -s dotfiles/vim/vimrc ~/.vimrc
 mkdir -p ~/.vimundo # persistent undo directory
 
 # Pentadactyl
-mv ~/.pentadactylrc "$BACKUP_DIR"
+[ -f ~/.pentadactylrc ] && mv ~/.pentadactylrc "$BACKUP_DIR"
 ln -s dotfiles/pentadactyl/pentadactylrc ~/.pentadactylrc
 
 # Screen
-mv ~/.screenrc "$BACKUP_DIR"
+[ -f ~/.screenrc ] && mv ~/.screenrc "$BACKUP_DIR"
 ln -s dotfiles/screen/screenrc ~/.screenrc
 
 # Tmux
-mv ~/.tmux.conf "$BACKUP_DIR"
+[ -f ~/.tmux.conf ] && mv ~/.tmux.conf "$BACKUP_DIR"
 ln -s dotfiles/tmux/tmux.conf ~/.tmux.conf
 
+# Powerline
+# `.config` is a shared config location, so take more care
+[ -d ~/.config/powerline ] && mv ~/.config/powerline "$BACKUP_DIR"
+[ ! -d ~/.config ] && mkdir ~/.config
+ln -s ../dotfiles/powerline/config ~/.config/powerline
+
 # Nethack
-mv ~/.nethackrc "$BACKUP_DIR"
+[ -f ~/.nethackrc ] && mv ~/.nethackrc "$BACKUP_DIR"
 ln -s dotfiles/nethack/nethackrc ~/.nethackrc
 
 # Irssi
-mv ~/.irssi "$BACKUP_DIR"
+[ -d ~/.irssi ] && mv ~/.irssi "$BACKUP_DIR"
 ln -s dotfiles/irssi ~/.irssi
 
 # Mongo
-mv ~/.mongorc.js "$BACKUP_DIR"
+[ -f ~/.mongorc.js ] && mv ~/.mongorc.js "$BACKUP_DIR"
 ln -s dotfiles/mongo/mongorc.js ~/.mongorc.js
 
 echo "Setup complete!"

+ 82 - 0
powerline/config/colors.json

@@ -0,0 +1,82 @@
+{
+	"colors": {
+		"black": 16,
+		"white": 231,
+
+		"darkestgreen": 22,
+		"darkgreen": 28,
+		"mediumgreen": 70,
+		"brightgreen": 148,
+
+		"darkestcyan": 23,
+		"darkcyan": 74,
+		"mediumcyan": 117,
+		"brightcyan": 159,
+
+		"darkestblue": 24,
+		"darkblue": 31,
+
+		"darkestred": 52,
+		"darkred": 88,
+		"mediumred": 124,
+		"brightred": 160,
+		"brightestred": 196,
+
+		"darkestpurple": 55,
+		"mediumpurple": 98,
+		"brightpurple": 189,
+
+		"darkorange": 94,
+		"mediumorange": 166,
+		"brightorange": 208,
+		"brightestorange": 214,
+
+		"brightyellow": 220,
+
+		"gray0": 233,
+		"gray1": 235,
+		"gray2": 236,
+		"gray3": 239,
+		"gray4": 240,
+		"gray5": 241,
+		"gray6": 244,
+		"gray7": 245,
+		"gray8": 247,
+		"gray9": 250,
+		"gray10": 252,
+
+		"gray61": [14, "93a1a1"],
+		"gray13": [8, "002b36"],
+
+		"royalblue5": [0, "073642"],
+		"darkgreencopper": [10, "586e75"],
+		"lightskyblue4": [11, "657b83"],
+		"azure4": [12, "839496"],
+		"lightyellow": [7, "eee8d5"],
+		"oldlace": [15, "fdf6e3"],
+
+		"green": [2, "719e07"],
+		"cyan": [6, "2aa198"],
+		"blue": [4, "268bd2"],
+		"red": [1, "dc322f"],
+		"magenta": [5, "d33682"],
+		"violet": [13, "6c71c4"],
+		"orange": [9, "cb4b16"],
+		"yellow": [3, "b58900"],
+
+		"lightyellowgreen": 106,
+		"gold3": 178,
+		"orangered": 202,
+
+		"steelblue": 67,
+		"darkorange3": 166,
+		"skyblue1": 117,
+		"khaki1": 228
+	},
+	"gradients": {
+		"green_yellow_red": [
+			[190, 184, 178, 172, 166, 160],
+			["8ae71c", "8ce71c", "8fe71c", "92e71c", "95e71d", "98e71d", "9ae71d", "9de71d", "a0e71e", "a3e71e", "a6e71e", "a8e71e", "abe71f", "aee71f", "b1e71f", "b4e71f", "b6e720", "b9e720", "bce720", "bfe720", "c2e821", "c3e721", "c5e621", "c7e521", "c9e522", "cbe422", "cde322", "cfe222", "d1e223", "d3e123", "d5e023", "d7df23", "d9df24", "dbde24", "dddd24", "dfdc24", "e1dc25", "e3db25", "e5da25", "e7d925", "e9d926", "e9d626", "e9d426", "e9d126", "e9cf27", "e9cc27", "e9ca27", "e9c727", "e9c528", "e9c228", "e9c028", "e9bd28", "e9bb29", "e9b829", "e9b629", "e9b329", "e9b12a", "e9ae2a", "e9ac2a", "e9a92a", "eaa72b", "eaa42b", "eaa22b", "ea9f2b", "ea9d2c", "ea9b2c", "ea982c", "ea962c", "ea942d", "ea912d", "ea8f2d", "ea8d2d", "ea8a2e", "ea882e", "ea862e", "ea832e", "ea812f", "ea7f2f", "ea7c2f", "ea7a2f", "eb7830", "eb7530", "eb7330", "eb7130", "eb6f31", "eb6c31", "eb6a31", "eb6831", "eb6632", "eb6332", "eb6132", "eb5f32", "eb5d33", "eb5a33", "eb5833", "eb5633", "eb5434", "eb5134", "eb4f34", "eb4d34", "ec4b35"]
+		]
+	}
+}

+ 7 - 0
powerline/config/colorschemes/ipython/default.json

@@ -0,0 +1,7 @@
+{
+	"name": "Default color scheme for IPython prompt",
+	"groups": {
+		"virtualenv": { "fg": "white", "bg": "darkcyan" },
+		"prompt": { "fg": "gray9", "bg": "gray4" }
+	}
+}

+ 15 - 0
powerline/config/colorschemes/shell/default.json

@@ -0,0 +1,15 @@
+{
+	"name": "Default color scheme for shell prompts",
+	"groups": {
+		"user": { "fg": "white", "bg": "darkblue", "attr": ["bold"] },
+		"superuser": { "fg": "white", "bg": "brightred", "attr": ["bold"] },
+		"virtualenv": { "fg": "white", "bg": "darkcyan" },
+		"branch": { "fg": "gray9", "bg": "gray2" },
+		"cwd": { "fg": "gray9", "bg": "gray4" },
+		"cwd:current_folder": { "fg": "gray10", "bg": "gray4", "attr": ["bold"] },
+		"cwd:divider": { "fg": "gray7", "bg": "gray4" },
+		"hostname": { "fg": "brightyellow", "bg": "mediumorange" },
+		"exit_fail": { "fg": "white", "bg": "darkestred" },
+		"exit_success": { "fg": "white", "bg": "darkestgreen" }
+	}
+}

+ 15 - 0
powerline/config/colorschemes/shell/solarized.json

@@ -0,0 +1,15 @@
+{
+	"name": "Solarized Dark",
+	"groups": {
+		"user":               { "fg": "oldlace", "bg": "blue", "attr": ["bold"] },
+		"superuser":          { "fg": "oldlace", "bg": "red", "attr": ["bold"] },
+		"virtualenv":         { "fg": "oldlace", "bg": "green" },
+		"branch":             { "fg": "gray61", "bg": "royalblue5" },
+		"cwd":                { "fg": "lightyellow", "bg": "darkgreencopper" },
+		"cwd:current_folder": { "fg": "oldlace", "bg": "darkgreencopper", "attr": ["bold"] },
+		"cwd:divider":        { "fg": "gray61", "bg": "darkgreencopper" },
+		"hostname":           { "fg": "oldlace", "bg": "darkgreencopper" },
+		"exit_fail":          { "fg": "oldlace", "bg": "red" },
+		"exit_success":       { "fg": "oldlace", "bg": "green" }
+	}
+}

+ 25 - 0
powerline/config/colorschemes/tmux/default.json

@@ -0,0 +1,25 @@
+{
+	"name": "Default color scheme for terminal prompts",
+	"groups": {
+		"background:divider": { "fg": "gray5", "bg": "gray0" },
+		"session": { "fg": "black", "bg": "gray10", "attr": ["bold"] },
+		"date": { "fg": "gray8", "bg": "gray2" },
+		"time": { "fg": "gray10", "bg": "gray2", "attr": ["bold"] },
+		"time:divider": { "fg": "gray5", "bg": "gray2" },
+		"email_alert": { "fg": "white", "bg": "brightred", "attr": ["bold"] },
+		"hostname": { "fg": "black", "bg": "gray10", "attr": ["bold"] },
+		"weather": { "fg": "gray8", "bg": "gray0" },
+		"weather_temp_cold": { "fg": "steelblue", "bg": "gray0" },
+		"weather_temp_hot": { "fg": "darkorange3", "bg": "gray0" },
+		"weather_condition_hot": { "fg": "khaki1", "bg": "gray0" },
+		"weather_condition_snowy": { "fg": "skyblue1", "bg": "gray0" },
+		"weather_condition_rainy": { "fg": "skyblue1", "bg": "gray0" },
+		"uptime": { "fg": "gray8", "bg": "gray0" },
+		"external_ip": { "fg": "gray8", "bg": "gray0" },
+		"network_load": { "fg": "gray8", "bg": "gray0" },
+		"system_load": { "fg": "gray8", "bg": "gray0" },
+		"system_load_good": { "fg": "lightyellowgreen", "bg": "gray0" },
+		"system_load_bad": { "fg": "gold3", "bg": "gray0" },
+		"system_load_ugly": { "fg": "orangered", "bg": "gray0" }
+	}
+}

+ 92 - 0
powerline/config/colorschemes/vim/default.json

@@ -0,0 +1,92 @@
+{
+	"name": "Default color scheme",
+	"groups": {
+		"background": { "fg": "white", "bg": "gray2" },
+		"background:divider": { "fg": "gray6", "bg": "gray2" },
+		"mode": { "fg": "darkestgreen", "bg": "brightgreen", "attr": ["bold"] },
+		"modified_indicator": { "fg": "brightyellow", "bg": "gray4", "attr": ["bold"] },
+		"paste_indicator": { "fg": "white", "bg": "mediumorange", "attr": ["bold"] },
+		"readonly_indicator": { "fg": "brightestred", "bg": "gray4" },
+		"branch": { "fg": "gray9", "bg": "gray4" },
+		"branch:divider": { "fg": "gray7", "bg": "gray4" },
+		"file_directory": { "fg": "gray9", "bg": "gray4" },
+		"file_name": { "fg": "white", "bg": "gray4", "attr": ["bold"] },
+		"file_size": { "fg": "gray8", "bg": "gray2" },
+		"file_name_no_file": { "fg": "gray9", "bg": "gray4", "attr": ["bold"] },
+		"file_name_empty": { "fg": "gray9", "bg": "gray4" },
+		"file_format": { "fg": "gray8", "bg": "gray2" },
+		"file_encoding": { "fg": "gray8", "bg": "gray2" },
+		"file_type": { "fg": "gray8", "bg": "gray2" },
+		"file_vcs_status": { "fg": "brightestred", "bg": "gray4" },
+		"file_vcs_status_M": { "fg": "brightyellow", "bg": "gray4" },
+		"file_vcs_status_A": { "fg": "brightgreen", "bg": "gray4" },
+		"line_percent": { "fg": "gray9", "bg": "gray4" },
+		"line_percent_gradient": { "fg": "green_yellow_red", "bg": "gray4" },
+		"line_current": { "fg": "gray1", "bg": "gray10", "attr": ["bold"] },
+		"line_current_symbol": { "fg": "gray1", "bg": "gray10" },
+		"col_current": { "fg": "gray6", "bg": "gray10" },
+		"modified_buffers": { "fg": "brightyellow", "bg": "gray2" }
+	},
+	"mode_translations": {
+		"nc": {
+			"colors": {
+				"brightyellow": "darkorange",
+				"brightestred": "darkred",
+				"gray0": "gray0",
+				"gray1": "gray0",
+				"gray2": "gray0",
+				"gray3": "gray1",
+				"gray4": "gray1",
+				"gray5": "gray1",
+				"gray6": "gray1",
+				"gray7": "gray4",
+				"gray8": "gray4",
+				"gray9": "gray4",
+				"gray10": "gray5",
+				"white": "gray6",
+				"green_yellow_red": "gray5"
+			}
+		},
+		"i": {
+			"colors": {
+				"gray0": "darkestblue",
+				"gray1": "darkestblue",
+				"gray2": "darkestblue",
+				"gray3": "darkblue",
+				"gray4": "darkblue",
+				"gray5": "darkestcyan",
+				"gray6": "darkestcyan",
+				"gray7": "darkestcyan",
+				"gray8": "mediumcyan",
+				"gray9": "mediumcyan",
+				"gray10": "mediumcyan",
+				"green_yellow_red": "gray5"
+			},
+			"groups": {
+				"mode": { "fg": "darkestcyan", "bg": "white", "attr": ["bold"] },
+				"background:divider": { "fg": "darkcyan", "bg": "darkestblue" },
+				"branch:divider": { "fg": "darkcyan", "bg": "darkblue" }
+			}
+		},
+		"v": {
+			"groups": {
+				"mode": { "fg": "darkorange", "bg": "brightestorange", "attr": ["bold"] }
+			}
+		},
+		"V": {
+			"groups": {
+				"mode": { "fg": "darkorange", "bg": "brightestorange", "attr": ["bold"] }
+			}
+		},
+		"^V": {
+			"groups": {
+				"mode": { "fg": "darkorange", "bg": "brightestorange", "attr": ["bold"] }
+			}
+		},
+		"R": {
+			"groups": {
+				"mode": { "fg": "white", "bg": "brightred", "attr": ["bold"] }
+			}
+		}
+	}
+}

+ 82 - 0
powerline/config/colorschemes/vim/solarized.json

@@ -0,0 +1,82 @@
+{
+	"name": "Solarized Dark",
+	"groups": {
+		"background":             { "fg": "oldlace", "bg": "royalblue5" },
+		"background:divider":     { "fg": "lightskyblue4", "bg": "royalblue5" },
+		"mode":                   { "fg": "oldlace", "bg": "green", "attr": ["bold"] },
+		"modified_indicator":     { "fg": "yellow", "bg": "darkgreencopper", "attr": ["bold"] },
+		"paste_indicator":        { "fg": "oldlace", "bg": "orange", "attr": ["bold"] },
+		"readonly_indicator":     { "fg": "red", "bg": "darkgreencopper" },
+		"branch":                 { "fg": "lightyellow", "bg": "darkgreencopper" },
+		"branch:divider":         { "fg": "gray61", "bg": "darkgreencopper" },
+		"file_directory":         { "fg": "lightyellow", "bg": "darkgreencopper" },
+		"file_name":              { "fg": "oldlace", "bg": "darkgreencopper", "attr": ["bold"] },
+		"file_size":              { "fg": "oldlace", "bg": "darkgreencopper" },
+		"file_name_no_file":      { "fg": "oldlace", "bg": "darkgreencopper", "attr": ["bold"] },
+		"file_name_empty":        { "fg": "oldlace", "bg": "darkgreencopper" },
+		"file_format":            { "fg": "gray61", "bg": "royalblue5" },
+		"file_encoding":          { "fg": "gray61", "bg": "royalblue5" },
+		"file_type":              { "fg": "gray61", "bg": "royalblue5" },
+		"file_vcs_status":        { "fg": "red", "bg": "darkgreencopper" },
+		"file_vcs_status_M":      { "fg": "yellow", "bg": "darkgreencopper" },
+		"file_vcs_status_A":      { "fg": "green", "bg": "darkgreencopper" },
+		"line_percent":           { "fg": "oldlace", "bg": "lightskyblue4" },
+		"line_current":           { "fg": "gray13", "bg": "lightyellow", "attr": ["bold"] },
+		"line_current_symbol":    { "fg": "gray13", "bg": "lightyellow" },
+		"col_current":            { "fg": "azure4", "bg": "lightyellow" }
+	},
+	"mode_translations": {
+		"nc": {
+			"colors": {
+				"darkgreencopper": "royalblue5",
+				"lightskyblue4": "royalblue5",
+				"azure4": "darkgreencopper",
+				"gray61": "lightskyblue4",
+				"lightyellow": "azure4",
+				"oldlace": "gray61"
+			}
+		},
+		"i": {
+			"groups": {
+				"background":             { "fg": "oldlace", "bg": "darkgreencopper" },
+				"background:divider":     { "fg": "lightyellow", "bg": "darkgreencopper" },
+				"mode":                   { "fg": "oldlace", "bg": "blue", "attr": ["bold"] },
+				"modified_indicator":     { "fg": "yellow", "bg": "lightyellow", "attr": ["bold"] },
+				"paste_indicator":        { "fg": "oldlace", "bg": "orange", "attr": ["bold"] },
+				"readonly_indicator":     { "fg": "red", "bg": "lightyellow" },
+				"branch":                 { "fg": "darkgreencopper", "bg": "lightyellow" },
+				"branch:divider":         { "fg": "lightskyblue4", "bg": "lightyellow" },
+				"file_directory":         { "fg": "darkgreencopper", "bg": "lightyellow" },
+				"file_name":              { "fg": "royalblue5", "bg": "lightyellow", "attr": ["bold"] },
+				"file_size":              { "fg": "royalblue5", "bg": "lightyellow" },
+				"file_name_no_file":      { "fg": "royalblue5", "bg": "lightyellow", "attr": ["bold"] },
+				"file_name_empty":        { "fg": "royalblue5", "bg": "lightyellow" },
+				"file_format":            { "fg": "lightyellow", "bg": "darkgreencopper" },
+				"file_encoding":          { "fg": "lightyellow", "bg": "darkgreencopper" },
+				"file_type":              { "fg": "lightyellow", "bg": "darkgreencopper" },
+				"file_vcs_status":        { "fg": "red", "bg": "lightyellow" },
+				"file_vcs_status_M":      { "fg": "yellow", "bg": "lightyellow" },
+				"file_vcs_status_A":      { "fg": "green", "bg": "lightyellow" },
+				"line_percent":           { "fg": "oldlace", "bg": "gray61" },
+				"line_current":           { "fg": "gray13", "bg": "oldlace", "attr": ["bold"] },
+				"line_current_symbol":    { "fg": "gray13", "bg": "oldlace" },
+				"col_current":            { "fg": "azure4", "bg": "oldlace" }
+			}
+		},
+		"v": {
+			"groups": {
+				"mode": { "fg": "oldlace", "bg": "orange", "attr": ["bold"] }
+			}
+		},
+		"V": {
+			"groups": {
+				"mode": { "fg": "oldlace", "bg": "orange", "attr": ["bold"] }
+			}
+		},
+		"R": {
+			"groups": {
+				"mode": { "fg": "oldlace", "bg": "red", "attr": ["bold"] }
+			}
+		}
+	}
+}

+ 25 - 0
powerline/config/colorschemes/wm/default.json

@@ -0,0 +1,25 @@
+{
+	"name": "Default color scheme for window managers",
+	"groups": {
+		"background:divider": { "fg": "gray5", "bg": "gray0" },
+		"session": { "fg": "black", "bg": "gray10", "attr": ["bold"] },
+		"date": { "fg": "gray8", "bg": "gray2" },
+		"time": { "fg": "gray10", "bg": "gray2", "attr": ["bold"] },
+		"time:divider": { "fg": "gray5", "bg": "gray2" },
+		"email_alert": { "fg": "white", "bg": "brightred", "attr": ["bold"] },
+		"hostname": { "fg": "black", "bg": "gray10", "attr": ["bold"] },
+		"weather": { "fg": "gray8", "bg": "gray0" },
+		"weather_temp_cold": { "fg": "steelblue", "bg": "gray0" },
+		"weather_temp_hot": { "fg": "darkorange3", "bg": "gray0" },
+		"weather_condition_hot": { "fg": "khaki1", "bg": "gray0" },
+		"weather_condition_snowy": { "fg": "skyblue1", "bg": "gray0" },
+		"weather_condition_rainy": { "fg": "skyblue1", "bg": "gray0" },
+		"uptime": { "fg": "gray8", "bg": "gray0" },
+		"external_ip": { "fg": "gray8", "bg": "gray0" },
+		"network_load": { "fg": "gray8", "bg": "gray0" },
+		"system_load": { "fg": "gray8", "bg": "gray0" },
+		"system_load_good": { "fg": "lightyellowgreen", "bg": "gray0" },
+		"system_load_bad": { "fg": "gold3", "bg": "gray0" },
+		"system_load_ugly": { "fg": "orangered", "bg": "gray0" }
+	}
+}

+ 43 - 0
powerline/config/config.json

@@ -0,0 +1,43 @@
+{
+	"common": {
+		"term_24bit_colors": false,
+		"dividers": {
+			"left": {
+				"hard": " ",
+				"soft": " "
+			},
+			"right": {
+				"hard": " ",
+				"soft": " "
+			}
+		},
+		"spaces": 1,
+		"colors": "default"
+	},
+	"ext": {
+		"ipython": {
+			"colorscheme": "default",
+			"theme": "default"
+		},
+		"shell": {
+			"colorscheme": "default",
+			"theme": "default"
+		},
+		"tmux": {
+			"colorscheme": "default",
+			"theme": "default"
+		},
+		"vim": {
+			"colorscheme": "default",
+			"theme": "default",
+			"local_themes": {
+				"cmdwin": "cmdwin",
+				"help": "help"
+			}
+		},
+		"wm": {
+			"colorscheme": "default",
+			"theme": "default"
+		}
+	}
+}

+ 16 - 0
powerline/config/themes/ipython/default.json

@@ -0,0 +1,16 @@
+{
+	"default_module": "powerline.segments.common",
+	"segments": {
+		"left": [
+			{
+				"name": "virtualenv"
+			},
+			{
+				"type": "string",
+				"contents": "In:",
+				"highlight_group": ["prompt"],
+				"draw_divider": false
+			}
+		]
+	}
+}

+ 45 - 0
powerline/config/themes/shell/default.json

@@ -0,0 +1,45 @@
+{
+	"default_module": "powerline.segments.common",
+	"segment_data": {
+		"hostname": {
+			"before": " ",
+			"args": {
+				"only_if_ssh": true
+			}
+		},
+		"virtualenv": {
+			"before": "ⓔ  "
+		},
+		"branch": {
+			"before": " "
+		}
+	},
+	"segments": {
+		"left": [
+			{
+				"name": "hostname"
+			},
+			{
+				"name": "user"
+			},
+			{
+				"name": "virtualenv"
+			},
+			{
+				"name": "cwd",
+				"args": {
+					"dir_limit_depth": 3
+				}
+			}
+		],
+		"right": [
+			{
+				"module": "powerline.segments.shell",
+				"name": "last_pipe_status"
+			},
+			{
+				"name": "branch"
+			}
+		]
+	}
+}

+ 43 - 0
powerline/config/themes/shell/default_leftonly.json

@@ -0,0 +1,43 @@
+{
+	"default_module": "powerline.segments.common",
+	"segment_data": {
+		"hostname": {
+			"before": " ",
+			"args": {
+				"only_if_ssh": true
+			}
+		},
+		"virtualenv": {
+			"before": "ⓔ  "
+		},
+		"branch": {
+			"before": " "
+		}
+	},
+	"segments": {
+		"left": [
+			{
+				"name": "hostname"
+			},
+			{
+				"name": "user"
+			},
+			{
+				"name": "virtualenv"
+			},
+			{
+				"name": "branch"
+			},
+			{
+				"name": "cwd",
+				"args": {
+					"dir_limit_depth": 3
+				}
+			},
+			{
+				"name": "last_status",
+				"module": "powerline.segments.shell"
+			}
+		]
+	}
+}

+ 62 - 0
powerline/config/themes/tmux/default.json

@@ -0,0 +1,62 @@
+{
+	"default_module": "powerline.segments.common",
+	"segment_data": {
+		"uptime": {
+			"before": "⇑  "
+		},
+		"external_ip": {
+			"before": "ⓦ  "
+		},
+		"date": {
+			"before": "⌚ "
+		},
+		"email_imap_alert": {
+			"before": "✉ ",
+			"args": {
+				"username": "",
+				"password": ""
+			}
+		}
+	},
+	"segments": {
+		"right": [
+			{
+				"name": "uptime",
+				"priority": 50
+			},
+			{
+				"name": "external_ip",
+				"priority": 50
+			},
+			{
+				"name": "network_load",
+				"priority": 50
+			},
+			{
+				"name": "system_load",
+				"priority": 50
+			},
+			{
+				"name": "weather",
+				"priority": 50
+			},
+			{
+				"name": "date"
+			},
+			{
+				"name": "date",
+				"args": {
+					"format": "%H:%M",
+					"istime": true
+				}
+			},
+			{
+				"name": "email_imap_alert",
+				"priority": 10
+			},
+			{
+				"name": "hostname"
+			}
+		]
+	}
+}

+ 17 - 0
powerline/config/themes/vim/cmdwin.json

@@ -0,0 +1,17 @@
+{
+	"segments": {
+		"left": [
+			{
+				"type": "string",
+				"contents": "Command Line",
+				"highlight_group": ["file_name"]
+			},
+			{
+				"type": "string",
+				"highlight_group": ["background"],
+				"draw_divider": false,
+				"width": "auto"
+			}
+		]
+	}
+}

+ 107 - 0
powerline/config/themes/vim/default.json

@@ -0,0 +1,107 @@
+{
+	"segment_data": {
+		"branch": {
+			"before": " "
+		},
+		"modified_indicator": {
+			"args": { "text": "+" }
+		},
+		"line_percent": {
+			"args": { "gradient": true },
+			"after": "%"
+		},
+		"line_current_symbol": {
+			"contents": " "
+		}
+	},
+	"segments": {
+		"left": [
+			{
+				"name": "mode",
+				"exclude_modes": ["nc"]
+			},
+			{
+				"name": "paste_indicator",
+				"exclude_modes": ["nc"],
+				"priority": 10
+			},
+			{
+				"name": "branch",
+				"exclude_modes": ["nc"],
+				"priority": 60
+			},
+			{
+				"name": "readonly_indicator",
+				"draw_divider": false,
+				"after": " "
+			},
+			{
+				"name": "file_directory",
+				"priority": 40,
+				"draw_divider": false
+			},
+			{
+				"name": "file_name",
+				"draw_divider": false
+			},
+			{
+				"name": "file_vcs_status",
+				"before": " ",
+				"draw_divider": false
+			},
+			{
+				"name": "modified_indicator",
+				"before": " "
+			},
+			{
+				"type": "string",
+				"highlight_group": ["background"],
+				"draw_divider": false,
+				"width": "auto"
+			}
+		],
+		"right": [
+			{
+				"name": "file_format",
+				"draw_divider": false,
+				"exclude_modes": ["nc"],
+				"priority": 50
+			},
+			{
+				"name": "file_encoding",
+				"exclude_modes": ["nc"],
+				"priority": 50
+			},
+			{
+				"name": "file_type",
+				"exclude_modes": ["nc"],
+				"priority": 50
+			},
+			{
+				"name": "line_percent",
+				"priority": 30,
+				"width": 4,
+				"align": "r"
+			},
+			{
+				"type": "string",
+				"name": "line_current_symbol",
+				"highlight_group": ["line_current_symbol", "line_current"]
+			},
+			{
+				"name": "line_current",
+				"draw_divider": false,
+				"width": 3,
+				"align": "r"
+			},
+			{
+				"name": "virtcol_current",
+				"draw_divider": false,
+				"priority": 30,
+				"before": ":",
+				"width": 3,
+				"align": "l"
+			}
+		]
+	}
+}

+ 35 - 0
powerline/config/themes/vim/help.json

@@ -0,0 +1,35 @@
+{
+	"segments": {
+		"left": [
+			{
+				"name": "file_name",
+				"draw_divider": false
+			},
+			{
+				"type": "string",
+				"highlight_group": ["background"],
+				"draw_divider": false,
+				"width": "auto"
+			}
+		],
+		"right": [
+			{
+				"name": "line_percent",
+				"priority": 30,
+				"width": 4,
+				"align": "r"
+			},
+			{
+				"type": "string",
+				"name": "line_current_symbol",
+				"highlight_group": ["line_current_symbol", "line_current"]
+			},
+			{
+				"name": "line_current",
+				"draw_divider": false,
+				"width": 3,
+				"align": "r"
+			}
+		]
+	}
+}

+ 31 - 0
powerline/config/themes/wm/default.json

@@ -0,0 +1,31 @@
+{
+	"default_module": "powerline.segments.common",
+	"segments": {
+		"right": [
+			{
+				"name": "weather",
+				"priority": 50
+			},
+			{
+				"name": "date"
+			},
+			{
+				"name": "date",
+				"args": {
+					"format": "%H:%M",
+					"istime": true
+				},
+				"before": "⌚ "
+			},
+			{
+				"name": "email_imap_alert",
+				"before": "✉ ",
+				"priority": 10,
+				"args": {
+					"username": "",
+					"password": ""
+				}
+			}
+		]
+	}
+}

+ 1 - 0
powerline/powerline

@@ -0,0 +1 @@
+Subproject commit a1f370490b5a76046f8ad2ba92b10c22f4f60f69

+ 1 - 1
tmux/tmux.conf

@@ -97,7 +97,7 @@ bind-key X kill-session
 source ~/dotfiles/tmux/tmux-colors-solarized/tmuxcolors-256.conf
 
 # Use powerline plugin
-source ~/dotfiles/powerline/powerline/bindings/tmux/powerline.conf
+source ~/dotfiles/powerline/powerline/powerline/bindings/tmux/powerline.conf
 
 # we'd rather roll our own not-so-blue-and-annoying color scheme
 # TODO work this into a powerline config in ~/.config/powerline