diff --git a/dotfiles/Xresources b/dotfiles/Xresources index a324518..69d5084 100644 --- a/dotfiles/Xresources +++ b/dotfiles/Xresources @@ -4,7 +4,7 @@ Xcursor.size: 16 ! Xft for fonts !!! !Xft.dpi: 144 -Xft.antialias: false +Xft.antialias: true Xft.lcdfilter: lcddefault Xft.rgba: rgb Xft.hinting: true @@ -27,21 +27,34 @@ URxvt.lineSpace: 0 URxvt.iso14755: false ! Fonts -URxvt*font: xft:inconsolata:pixelsize=16 +URxvt.font: xft:inconsolata:pixelsize=17,xft:monospace:size=12 ! Fix font space -URxvt*letterSpace: -1 +URxvt.letterSpace: -1 -! Scrollbar +! Scrollbar and scrolling URxvt.scrollStyle: rxvt URxvt.scrollBar: false +! do not scroll with output +URxvt.scrollTtyOutput: false +! scroll in relation to buffer (with mouse scroll or Shift+Page Up) +URxvt.scrollWithBuffer: true +! scroll back to the bottom on keypress +URxvt.scrollTtyKeypress: true + +! Allow apps to manage their own secondary screen +URxvt.secondaryScreen: 1 +URxvt.secondaryScroll: 0 ! Perl extensions -URxvt.perl-ext-common: default,matcher,resize-font +URxvt.perl-ext-common: default,matcher,font-size,eval URxvt.matcher.button: 1 URxvt.urlLauncher: /usr/bin/xdg-open -URxvt.resize-font.smaller: C-Down -URxvt.resize-font.bigger: C-Up +URxvt.url-launcher: /usr/bin/xdg-open + +! Copy/Paste Stuff +URxvt.keysym.Shift-Control-V: eval:paste_clipboard +URxvt.keysym.Shift-Control-C: eval:selection_to_clipboard ! Cursor URxvt.cursorBlink: true @@ -50,12 +63,21 @@ URxvt.cursorUnderline: false ! Pointer URxvt.pointerBlank: true -! Solarized colors begin -URxvt.background: #002b36 -URxvt.foreground: #657b83 -URxvt.fadeColor: #002b36 -URxvt.cursorColor: #93a1a1 +! Disable printing the terminal contents when pressing PrintScreen. +URxvt.print-pipe: "cat > /dev/null" + +!!! Solarized colors begin +! base03 +URxvt.background: #002b36 +! base0 +URxvt.foreground: #839496 +! base03 +URxvt.fadeColor: #002b36 +! base1 +URxvt.cursorColor: #93a1a1 +! base01 URxvt.pointerColorBackground: #586e75 +! base1 URxvt.pointerColorForeground: #93a1a1 !! black dark/light diff --git a/dotfiles/dircolors b/dotfiles/dircolors index bb9937a..65b8720 100644 --- a/dotfiles/dircolors +++ b/dotfiles/dircolors @@ -1,16 +1,51 @@ - -# Dark 256 color solarized theme for the color GNU ls utility. -# Used and tested with dircolors (GNU coreutils) 8.5 +# Exact Solarized Dark color theme for the color GNU ls utility. +# Designed for dircolors (GNU coreutils) 5.97 # -# @author {@link http://sebastian.tramp.name Sebastian Tramp} -# @license http://sam.zoy.org/wtfpl/ Do What The Fuck You Want To Public License (WTFPL) +# This simple theme was simultaneously designed for these terminal color schemes: +# - Solarized dark (best) +# - Solarized light +# - default dark +# - default light +# with a slight optimization for Solarized Dark. # -# More Information at -# https://github.com/seebi/dircolors-solarized +# How the colors were selected: +# - Terminal emulators often have an option typically enabled by default that makes +# bold a different color. It is important to leave this option enabled so that +# you can access the entire 16-color Solarized palette, and not just 8 colors. +# - We favor universality over a greater number of colors. So we limit the number +# of colors so that this theme will work out of the box in all terminals, +# Solarized or not, dark or light. +# - We choose to have the following category of files: +# NORMAL & FILE, DIR, LINK, EXEC and +# editable text including source, unimportant text, binary docs & multimedia source +# files, viewable multimedia, archived/compressed, and unimportant non-text +# - For uniqueness, we stay away from the Solarized foreground colors are -- either +# base00 (brightyellow) or base0 (brightblue). However, they can be used if +# you know what the bg/fg colors of your terminal are, in order to optimize the display. +# - 3 different options are provided: universal, solarized dark, and solarized light. +# The only difference between the universal scheme and one that's optimized for +# dark/light is the color of "unimportant" files, which should blend more with the +# background +# - We note that blue is the hardest color to see on dark bg and yellow is the hardest +# color to see on light bg (with blue being particularly bad). So we choose yellow +# for multimedia files which are usually accessed in a GUI folder browser anyway. +# And blue is kept for custom use of this scheme's user. +# - See table below to see the assignments. -# Term Section -TERM Eterm + +# Installation instructions: +# This file goes in the /etc directory, and must be world readable. +# You can copy this file to .dir_colors in your $HOME directory to override +# the system defaults. + +# COLOR needs one of these arguments: 'tty' colorizes output to ttys, but not +# pipes. 'all' adds color characters to all output. 'none' shuts colorization +# off. +COLOR tty + +# Below, there should be one TERM entry for each termtype that is colorizable TERM ansi +TERM color_xterm TERM color-xterm TERM con132x25 TERM con132x30 @@ -28,6 +63,7 @@ TERM cygwin TERM dtterm TERM dvtm TERM dvtm-256color +TERM Eterm TERM eterm-color TERM fbterm TERM gnome @@ -40,6 +76,7 @@ TERM linux TERM linux-c TERM mach-color TERM mlterm +TERM nxterm TERM putty TERM putty-256color TERM rxvt @@ -63,12 +100,16 @@ TERM screen-bce TERM screen-w TERM screen.linux TERM screen.xterm-256color +TERM screen.xterm-new TERM st TERM st-meta TERM st-256color TERM st-meta-256color +TERM tmux +TERM tmux-256color TERM vt100 TERM xterm +TERM xterm-new TERM xterm-16color TERM xterm-256color TERM xterm-256color-italic @@ -77,219 +118,363 @@ TERM xterm-color TERM xterm-debian TERM xterm-termite -## Documentation -# -# standard colors -# +# EIGHTBIT, followed by '1' for on, '0' for off. (8-bit output) +EIGHTBIT 1 + +############################################################################# # Below are the color init strings for the basic file types. A color init # string consists of one or more of the following numeric codes: +# # Attribute codes: -# 00=none 01=bold 04=underscore 05=blink 07=reverse 08=concealed +# 00=none 01=bold 04=underscore 05=blink 07=reverse 08=concealed # Text color codes: -# 30=black 31=red 32=green 33=yellow 34=blue 35=magenta 36=cyan 37=white +# 30=black 31=red 32=green 33=yellow 34=blue 35=magenta 36=cyan 37=white # Background color codes: -# 40=black 41=red 42=green 43=yellow 44=blue 45=magenta 46=cyan 47=white +# 40=black 41=red 42=green 43=yellow 44=blue 45=magenta 46=cyan 47=white # -# -# 256 color support -# see here: http://www.mail-archive.com/bug-coreutils@gnu.org/msg11030.html) -# -# Text 256 color coding: -# 38;5;COLOR_NUMBER -# Background 256 color coding: -# 48;5;COLOR_NUMBER - -## Special files - -NORMAL 00;38;5;244 # no color code at all -#FILE 00 # regular file: use no color at all -RESET 0 # reset to "normal" color -DIR 00;38;5;33 # directory 01;34 -LINK 00;38;5;37 # symbolic link. (If you set this to 'target' instead of a - # numerical value, the color is as for the file pointed to.) -MULTIHARDLINK 00 # regular file with more than one link -FIFO 48;5;230;38;5;136;01 # pipe -SOCK 48;5;230;38;5;136;01 # socket -DOOR 48;5;230;38;5;136;01 # door -BLK 48;5;230;38;5;244;01 # block device driver -CHR 48;5;230;38;5;244;01 # character device driver -ORPHAN 48;5;235;38;5;160 # symlink to nonexistent file, or non-stat'able file -SETUID 48;5;160;38;5;230 # file that is setuid (u+s) -SETGID 48;5;136;38;5;230 # file that is setgid (g+s) -CAPABILITY 30;41 # file with capability -STICKY_OTHER_WRITABLE 48;5;64;38;5;230 # dir that is sticky and other-writable (+t,o+w) -OTHER_WRITABLE 48;5;235;38;5;33 # dir that is other-writable (o+w) and not sticky -STICKY 48;5;33;38;5;230 # dir with the sticky bit set (+t) and not other-writable -# This is for files with execute permission: -EXEC 00;38;5;64 - -## Archives or compressed (violet + bold for compression) -.tar 00;38;5;61 -.tgz 00;38;5;61 -.arj 00;38;5;61 -.taz 00;38;5;61 -.lzh 00;38;5;61 -.lzma 00;38;5;61 -.tlz 00;38;5;61 -.txz 00;38;5;61 -.zip 00;38;5;61 -.z 00;38;5;61 -.Z 00;38;5;61 -.dz 00;38;5;61 -.gz 00;38;5;61 -.lz 00;38;5;61 -.xz 00;38;5;61 -.bz2 00;38;5;61 -.bz 00;38;5;61 -.tbz 00;38;5;61 -.tbz2 00;38;5;61 -.tz 00;38;5;61 -.deb 00;38;5;61 -.rpm 00;38;5;61 -.jar 00;38;5;61 -.rar 00;38;5;61 -.ace 00;38;5;61 -.zoo 00;38;5;61 -.cpio 00;38;5;61 -.7z 00;38;5;61 -.rz 00;38;5;61 -.apk 00;38;5;61 -.gem 00;38;5;61 - -# Image formats (yellow) -.jpg 00;38;5;136 -.JPG 00;38;5;136 #stupid but needed -.jpeg 00;38;5;136 -.gif 00;38;5;136 -.bmp 00;38;5;136 -.pbm 00;38;5;136 -.pgm 00;38;5;136 -.ppm 00;38;5;136 -.tga 00;38;5;136 -.xbm 00;38;5;136 -.xpm 00;38;5;136 -.tif 00;38;5;136 -.tiff 00;38;5;136 -.png 00;38;5;136 -.PNG 00;38;5;136 -.svg 00;38;5;136 -.svgz 00;38;5;136 -.mng 00;38;5;136 -.pcx 00;38;5;136 -.dl 00;38;5;136 -.xcf 00;38;5;136 -.xwd 00;38;5;136 -.yuv 00;38;5;136 -.cgm 00;38;5;136 -.emf 00;38;5;136 -.eps 00;38;5;136 -.CR2 00;38;5;136 -.ico 00;38;5;136 - -# Files of special interest (base1) -.tex 00;38;5;245 -.rdf 00;38;5;245 -.owl 00;38;5;245 -.n3 00;38;5;245 -.ttl 00;38;5;245 -.nt 00;38;5;245 -.torrent 00;38;5;245 -.xml 00;38;5;245 -*Makefile 00;38;5;245 -*Rakefile 00;38;5;245 -*Dockerfile 00;38;5;245 -*build.xml 00;38;5;245 -*rc 00;38;5;245 -*1 00;38;5;245 -.nfo 00;38;5;245 -*README 00;38;5;245 -*README.txt 00;38;5;245 -*readme.txt 00;38;5;245 -.md 00;38;5;245 -*README.markdown 00;38;5;245 -.ini 00;38;5;245 -.yml 00;38;5;245 -.cfg 00;38;5;245 -.conf 00;38;5;245 -.c 00;38;5;245 -.cpp 00;38;5;245 -.cc 00;38;5;245 -.sqlite 00;38;5;245 -.go 00;38;5;245 -.sql 00;38;5;245 - -# "unimportant" files as logs and backups (base01) -.log 00;38;5;240 -.bak 00;38;5;240 -.aux 00;38;5;240 -.lof 00;38;5;240 -.lol 00;38;5;240 -.lot 00;38;5;240 -.out 00;38;5;240 -.toc 00;38;5;240 -.bbl 00;38;5;240 -.blg 00;38;5;240 -*~ 00;38;5;240 -*# 00;38;5;240 -.part 00;38;5;240 -.incomplete 00;38;5;240 -.swp 00;38;5;240 -.tmp 00;38;5;240 -.temp 00;38;5;240 -.o 00;38;5;240 -.pyc 00;38;5;240 -.class 00;38;5;240 -.cache 00;38;5;240 - -# Audio formats (orange) -.aac 00;38;5;166 -.au 00;38;5;166 -.flac 00;38;5;166 -.mid 00;38;5;166 -.midi 00;38;5;166 -.mka 00;38;5;166 -.mp3 00;38;5;166 -.mpc 00;38;5;166 -.ogg 00;38;5;166 -.ra 00;38;5;166 -.wav 00;38;5;166 -.m4a 00;38;5;166 -# http://wiki.xiph.org/index.php/MIME_Types_and_File_Extensions -.axa 00;38;5;166 -.oga 00;38;5;166 -.spx 00;38;5;166 -.xspf 00;38;5;166 - -# Video formats (as audio + bold) -.mov 00;38;5;166 -.MOV 00;38;5;166 -.mpg 00;38;5;166 -.mpeg 00;38;5;166 -.m2v 00;38;5;166 -.mkv 00;38;5;166 -.ogm 00;38;5;166 -.mp4 00;38;5;166 -.m4v 00;38;5;166 -.mp4v 00;38;5;166 -.vob 00;38;5;166 -.qt 00;38;5;166 -.nuv 00;38;5;166 -.wmv 00;38;5;166 -.asf 00;38;5;166 -.rm 00;38;5;166 -.rmvb 00;38;5;166 -.flc 00;38;5;166 -.avi 00;38;5;166 -.fli 00;38;5;166 -.flv 00;38;5;166 -.gl 00;38;5;166 -.m2ts 00;38;5;166 -.divx 00;38;5;166 -.webm 00;38;5;166 -# http://wiki.xiph.org/index.php/MIME_Types_and_File_Extensions -.axv 00;38;5;166 -.anx 00;38;5;166 -.ogv 00;38;5;166 -.ogx 00;38;5;166 +# NOTES: +# - See http://www.oreilly.com/catalog/wdnut/excerpt/color_names.html +# - Color combinations +# ANSI Color code Solarized Notes Universal SolDark SolLight +# ~~~~~~~~~~~~~~~ ~~~~~~~~~ ~~~~~ ~~~~~~~~~ ~~~~~~~ ~~~~~~~~ +# 00 none NORMAL, FILE +# 30 black base02 +# 01;30 bright black base03 bg of SolDark +# 31 red red docs & mm src +# 01;31 bright red orange EXEC +# 32 green green editable text +# 01;32 bright green base01 unimportant text +# 33 yellow yellow unclear in light bg multimedia +# 01;33 bright yellow base00 fg of SolLight unimportant non-text +# 34 blue blue unclear in dark bg user customized +# 01;34 bright blue base0 fg in SolDark unimportant text +# 35 magenta magenta LINK +# 01;35 bright magenta violet archive/compressed +# 36 cyan cyan DIR +# 01;36 bright cyan base1 unimportant non-text +# 37 white base2 +# 01;37 bright white base3 bg in SolLight +# 05;37;41 unclear in Putty dark +### By file type + +# global default +NORMAL 00 +# normal file +FILE 00 +# directory +DIR 34 +# 777 directory +OTHER_WRITABLE 34;40 +# symbolic link +LINK 35 + +# pipe, socket, block device, character device (blue bg) +FIFO 30;44 +SOCK 35;44 +DOOR 35;44 # Solaris 2.5 and later +BLK 33;44 +CHR 37;44 + + +############################################################################# +### By file attributes + +# Orphaned symlinks (blinking white on red) +# Blink may or may not work (works on iTerm dark or light, and Putty dark) +ORPHAN 05;37;41 +# ... and the files that orphaned symlinks point to (blinking white on red) +MISSING 05;37;41 + +# files with execute permission +EXEC 01;31 # Unix +.cmd 01;31 # Win +.exe 01;31 # Win +.com 01;31 # Win +.bat 01;31 # Win +.reg 01;31 # Win +.app 01;31 # OSX + +############################################################################# +### By extension + +# List any file extensions like '.gz' or '.tar' that you would like ls +# to colorize below. Put the extension, a space, and the color init string. +# (and any comments you want to add after a '#') + +### Text formats + +# Text that we can edit with a regular editor +.txt 32 +.org 32 +.md 32 +.mkd 32 + +# Source text +.h 32 +.hpp 32 +.c 32 +.C 32 +.cc 32 +.cpp 32 +.cxx 32 +.objc 32 +.cl 32 +.sh 32 +.bash 32 +.csh 32 +.zsh 32 +.el 32 +.vim 32 +.java 32 +.pl 32 +.pm 32 +.py 32 +.rb 32 +.hs 32 +.php 32 +.htm 32 +.html 32 +.shtml 32 +.erb 32 +.haml 32 +.xml 32 +.rdf 32 +.css 32 +.sass 32 +.scss 32 +.less 32 +.js 32 +.coffee 32 +.man 32 +.0 32 +.1 32 +.2 32 +.3 32 +.4 32 +.5 32 +.6 32 +.7 32 +.8 32 +.9 32 +.l 32 +.n 32 +.p 32 +.pod 32 +.tex 32 +.go 32 +.sql 32 +.csv 32 +.sv 32 +.svh 32 +.v 32 +.vh 32 +.vhd 32 + +### Multimedia formats + +# Image +.bmp 33 +.cgm 33 +.dl 33 +.dvi 33 +.emf 33 +.eps 33 +.gif 33 +.jpeg 33 +.jpg 33 +.JPG 33 +.mng 33 +.pbm 33 +.pcx 33 +.pdf 33 +.pgm 33 +.png 33 +.PNG 33 +.ppm 33 +.pps 33 +.ppsx 33 +.ps 33 +.svg 33 +.svgz 33 +.tga 33 +.tif 33 +.tiff 33 +.xbm 33 +.xcf 33 +.xpm 33 +.xwd 33 +.xwd 33 +.yuv 33 + +# Audio +.aac 33 +.au 33 +.flac 33 +.m4a 33 +.mid 33 +.midi 33 +.mka 33 +.mp3 33 +.mpa 33 +.mpeg 33 +.mpg 33 +.ogg 33 +.opus 33 +.ra 33 +.wav 33 + +# Video +.anx 33 +.asf 33 +.avi 33 +.axv 33 +.flc 33 +.fli 33 +.flv 33 +.gl 33 +.m2v 33 +.m4v 33 +.mkv 33 +.mov 33 +.MOV 33 +.mp4 33 +.mp4v 33 +.mpeg 33 +.mpg 33 +.nuv 33 +.ogm 33 +.ogv 33 +.ogx 33 +.qt 33 +.rm 33 +.rmvb 33 +.swf 33 +.vob 33 +.webm 33 +.wmv 33 + +### Misc + +# Binary document formats and multimedia source +.doc 31 +.docx 31 +.rtf 31 +.odt 31 +.dot 31 +.dotx 31 +.ott 31 +.xls 31 +.xlsx 31 +.ods 31 +.ots 31 +.ppt 31 +.pptx 31 +.odp 31 +.otp 31 +.fla 31 +.psd 31 + +# Archives, compressed +.7z 1;35 +.apk 1;35 +.arj 1;35 +.bin 1;35 +.bz 1;35 +.bz2 1;35 +.cab 1;35 # Win +.deb 1;35 +.dmg 1;35 # OSX +.gem 1;35 +.gz 1;35 +.iso 1;35 +.jar 1;35 +.msi 1;35 # Win +.rar 1;35 +.rpm 1;35 +.tar 1;35 +.tbz 1;35 +.tbz2 1;35 +.tgz 1;35 +.tx 1;35 +.war 1;35 +.xpi 1;35 +.xz 1;35 +.z 1;35 +.Z 1;35 +.zip 1;35 + +# For testing +.ANSI-30-black 30 +.ANSI-01;30-brblack 01;30 +.ANSI-31-red 31 +.ANSI-01;31-brred 01;31 +.ANSI-32-green 32 +.ANSI-01;32-brgreen 01;32 +.ANSI-33-yellow 33 +.ANSI-01;33-bryellow 01;33 +.ANSI-34-blue 34 +.ANSI-01;34-brblue 01;34 +.ANSI-35-magenta 35 +.ANSI-01;35-brmagenta 01;35 +.ANSI-36-cyan 36 +.ANSI-01;36-brcyan 01;36 +.ANSI-37-white 37 +.ANSI-01;37-brwhite 01;37 + +############################################################################# +# Your customizations + +# Unimportant text files +# For universal scheme, use brightgreen 01;32 +# For optimal on light bg (but too prominent on dark bg), use white 01;34 +.log 01;32 +*~ 01;32 +*# 01;32 +#.log 01;34 +#*~ 01;34 +#*# 01;34 + +# Unimportant non-text files +# For universal scheme, use brightcyan 01;36 +# For optimal on dark bg (but too prominent on light bg), change to 01;33 +#.bak 01;36 +#.BAK 01;36 +#.old 01;36 +#.OLD 01;36 +#.org_archive 01;36 +#.off 01;36 +#.OFF 01;36 +#.dist 01;36 +#.DIST 01;36 +#.orig 01;36 +#.ORIG 01;36 +#.swp 01;36 +#.swo 01;36 +#*,v 01;36 +.bak 01;33 +.BAK 01;33 +.old 01;33 +.OLD 01;33 +.org_archive 01;33 +.off 01;33 +.OFF 01;33 +.dist 01;33 +.DIST 01;33 +.orig 01;33 +.ORIG 01;33 +.swp 01;33 +.swo 01;33 +*,v 01;33 + +# The brightmagenta (Solarized: purple) color is free for you to use for your +# custom file type +.gpg 34 +.gpg 34 +.pgp 34 +.asc 34 +.3des 34 +.aes 34 +.enc 34 +.sqlite 34 diff --git a/dotfiles/env b/dotfiles/env index afc3486..5728691 100755 --- a/dotfiles/env +++ b/dotfiles/env @@ -1,11 +1,11 @@ # Sourced by zshrc as well as bash. +# Should only use POSIX shell constructs. umask 027 -ulimit -c unlimited # Paths and preferences export PYTHONPATH="$HOME/.python:$PYTHONPATH" -export GOPATH="$HOME/Projects/Go" +export GOPATH="$HOME/Projects/Go:/usr/share/gocode" export PATH="$HOME/bin:/sbin:/usr/sbin:$PATH:$GOPATH/bin" export VISUAL=vim export EDITOR=vim @@ -15,10 +15,29 @@ export LESS="-MR" export QUOTING_STYLE="literal" # Coreutils quotes # Fix gnome-terminal -if [ "$TERM" = "xterm" -a "$COLORTERM" = "gnome-terminal" ] ; then +if [ "$TERM" = "xterm" ] && [ "$COLORTERM" = "gnome-terminal" ] ; then + # Requires `ncurses-base` package for terminfo. export TERM="xterm-256color" fi +# Terminal preferences for i3 +if [ -z "${TERMINAL}" ] ; then + for t in urxvt gnome-terminal; do + if TERMINAL=$(command -v ${t}) ; then + export TERMINAL + fi + done +fi + +# Browser preferences +if [ -z "${BROWSER}" ] ; then + for t in google-chrome-beta google-chrome firefox ; do + if BROWSER=$(command -v ${t}); then + export BROWSER + fi + done +fi + # For virtualenvwrapper export WORKON_HOME=$HOME/.virtualenvs export VIRTUALENVWRAPPER_VIRTUALENV_ARGS='--no-site-packages' @@ -59,4 +78,5 @@ else fi export LC_COLLATE=C -if [ -e $HOME/.localenv ] ; then source $HOME/.localenv ; fi +# shellcheck source=/dev/null +test -e "$HOME/.localenv" && . "$HOME/.localenv" diff --git a/dotfiles/profile b/dotfiles/profile index ac87789..4062c24 100755 --- a/dotfiles/profile +++ b/dotfiles/profile @@ -1,3 +1,6 @@ +# Interactive shells only. +# Should only use POSIX constructs. + # Always load ENV test -f "$HOME/.env" && . "$HOME/.env" @@ -5,4 +8,7 @@ test -f "$HOME/.env" && . "$HOME/.env" export GREP_COLOR='01;31' export GREP_COLORS='mt=01;31:mc=01;31:ms=01;31' +# Setup LS_COLORS +test -f "${HOME}/.dircolors" && eval $(dircolors "${HOME}/.dircolors") + test -f "${HOME}/.profile.local" && . "${HOME}/.profile.local" diff --git a/dotfiles/vimrc b/dotfiles/vimrc index 5d8f758..25b2178 100644 --- a/dotfiles/vimrc +++ b/dotfiles/vimrc @@ -40,6 +40,10 @@ else let g:solarized_termcolors=256 let g:solarized_termtrans=1 endif +if $TERM ==? 'rxvt-unicode-256color' + " I have .Xresources setup for solarized + let g:solarized_use16=1 +endif silent! colorscheme solarized8 " Enable filetype support filetype plugin indent on diff --git a/dotfiles/zshrc b/dotfiles/zshrc index 42387a9..6a90144 100755 --- a/dotfiles/zshrc +++ b/dotfiles/zshrc @@ -6,6 +6,9 @@ setopt appendhistory autocd autopushd extendedglob nohup nomatch histignorespace unsetopt beep histbeep listbeep flowcontrol bindkey -v +# Allow core files +ulimit -c unlimited + # Completion zstyle :compinstall filename "${HOME}/.zshrc" zstyle ':completion:*' users root ${USER} diff --git a/dotfiles/zshrc.d/history.zsh b/dotfiles/zshrc.d/history.zsh new file mode 100644 index 0000000..88da6b6 --- /dev/null +++ b/dotfiles/zshrc.d/history.zsh @@ -0,0 +1,26 @@ +histmode() { + # This is very brittle as it assumes we're the only user of fc + case "$1" in + on) + if [ "$HISTDISABLED" -ne 1 ] ; then + echo "History is not disabled." >&2 + return 1 + fi + fc -P + HISTDISABLED=0 + echo "History enabled." + ;; + off) + if [ "$HISTDISABLED" -eq 1 ] ; then + echo "History is already disabled." >&2 + return 1 + fi + HISTDISABLED=1 + fc -p /dev/null $HISTSIZE 0 + echo "History disabled." + ;; + *) + echo "Unknown command." >&2 + ;; + esac +}