Configs

Run this literate document to generate the dotfiles.

Vim

My vim setup commands

#!/bin/sh

git clone git@github.com:gmarik/Vundle.vim.git ~/.vim/bundle/vundle
ln -s ~/.vim/.vimrc ~/
mkdir ~/.vim/bkp
mkdir ~/.vim/swp
mkdir ~/.vim/undo

:PluginInstall after that.

Vim Bindings

I’ve been using vim and zsh since 2008. I started with tsch, zsh and these days I just use fish.

Both vim and emacs are great texts editors. Both have a history of having strong roots. Emacs descended from teco and vim descended from ed. Vim has a language of its own emacs has el. Both languages are quite extensible.

vim has spell checker, auto indenting, syntax highlighting, autocomplete, edit files on ssh, abbrevations, key maps, tabs and buffers, commands, buffer commands, compiler commands, tag jumping, regexes …

Vim is not so good with the repl and debugger like emacs although there seem to be some plugins available. Vim has vimacs and emacs has viper.

Vim is fast. I find Emacs bindings are ideal for line editing. Vim bindings are ideal for big buffer editing.

l to move right h to move left
k to move up. // mnemonic kup
j to move down.

w,b to move over words
-+ to move back line movements

sentence movements () paragraph movements {}

0,$ for beginning and end of line
C-a C-e
M, H, L for middle, head and last line of page
G goto a line
, tag jumps

, – window scrolling // backwards and forwards
, – half window scrolling
, – line scrolling

z make current line top
z<.> makes the current line into the middle

z= correct spelling [s ]s to move across mistakes

:ab :una :map :map! this will allow you to map keys

!shell vi so you can exchange data with external programs.

i,a,I,A,o,O, ,,

^[,,ESC

> and < for intending  code
J for joining lines
= for indenting region

dd,dw,d (x)
cc,cw,c (r,s)
S,C
p,P
u + ctrl + R

~ // case change
. repeat previous command

/,?,n,N
f,F

e!,w!,q!,! :w!

gr gt - tab commands
C-w + directions are window commands
split 
C-w + c // close split

complete commands C-n,C-p

.vimrc.bundles

Plugin 'gmarik/vundle'
Plugin 'vim-scripts/camelcasemotion'
Plugin 'edsono/vim-matchit'
Plugin 'tpope/vim-surround'
Plugin 'MarcWeber/vim-addon-mw-utils'
Plugin 'Lokaltog/vim-easymotion'
Plugin 'terryma/vim-multiple-cursors'
Plugin 'tpope/vim-unimpaired'
Plugin 'sjl/gundo.vim'
Plugin 'majutsushi/tagbar'
Plugin 'tommcdo/vim-lion'
Plugin 'torbiak/probe'
Plugin 'Raimondi/delimitMate'
Plugin 'tomtom/tlib_vim'
Plugin 'moll/vim-bbye'
Plugin 'tpope/vim-commentary'
Plugin 'tpope/timl'
Plugin 'tpope/vim-repeat'
Plugin 'terryma/vim-expand-region'
Plugin 'editorconfig/editorconfig-vim'
Plugin 'ervandew/supertab.git'
Plugin 'maxbrunsfeld/vim-emacs-bindings'
Plugin 'vim-scripts/LanguageTool'
Plugin 'chrisbra/unicode.vim'
Plugin 'jeetsukumaran/vim-filebeagle'
Plugin 'vim-scripts/compview'
Plugin 'docunext/closetag.vim'
Plugin 'garbas/vim-snipmate'
Plugin 'honza/vim-snippets'
Plugin 'reedes/vim-wheel'
Plugin 'reedes/vim-litecorrect'
Plugin 'jamessan/vim-gnupg'
Plugin 'nathanaelkane/vim-indent-guides'
Plugin 'tpope/vim-eunuch'
Plugin 'AndrewRadev/splitjoin.vim'
Plugin 'mxw/vim-jsx'
Plugin 'gorkunov/smartgf.vim'
Plugin 'Shougo/vimfiler.vim'
Plugin 'kien/ctrlp.vim'
Plugin 'pangloss/vim-javascript'
Plugin 'scrooloose/nerdtree'
Plugin 'Shougo/vimproc.vim'
Plugin 'Shougo/vimshell.vim'
"Plugin 'scrooloose/syntastic'

" Plugin 'jistr/vim-nerdtree-tabs'
" Plugin 'xuhdev/SingleCompile'
" Plugin 'juvenn/mustache.vim'
" Plugin 'tpope/vim-classpath'
" Plugin 'guns/vim-clojure-static'
" Plugin 'tpope/vim-fireplace'
" Plugin 'klen/python-mode'
" Plugin 'klen/python-mode'
" Plugin 'krisajenkins/vim-pipe'
" Plugin 'lepture/vim-jinja'
" Plugin 'sophacles/vim-bundle-mako'
" Plugin 'vim-coffee-script'
" Plugin 'stephpy/vim-php-cs-fixer'

Plugin 'altercation/vim-colors-solarized'

.vimrc.mappings

map <silent>w <Plug>CamelCaseMotion_w
map <silent>b <Plug>CamelCaseMotion_b
map <silent>e <Plug>CamelCaseMotion_e

nnoremap gr :tabprev<CR>
nnoremap gb :bprevious<CR>
nnoremap gn :bnext<CR>
nnoremap gd :bdelete!<CR>

nnoremap <leader>sc :SCCompile<cr>
nnoremap <leader>sr :SCCompileRun<cr>
vnoremap <C-e> :Eval<CR>

nnoremap d "_d
nnoremap x "_x

" CUA
nnoremap<C-s> :w!<CR>
inoremap<C-s> <ESC>:w!<CR><right>i
vnoremap <C-x>   "+x
" Paste from clipboard
map <leader>p "+p

" Bubble single lines
nmap <C-k> [e
nmap <C-j> ]e
" Bubble multiple lines
vmap <C-k> [egv
vmap <C-j> ]egv

" hide matches on <leader>space
nnoremap ,<space> :nohlsearch<cr>

" Remove trailing whitespace on <leader>S
nnoremap <leader>S :%s/\s\+$//<cr>:let @/=''<CR>

" Select the item in the list with enter
inoremap <expr> <CR> pumvisible() ? "\<C-y>" : "\<C-g>u\<CR>"

map <F1> <nop>
noremap Q <nop>
nnoremap K <nop>

" Reload Vimrc
map <silent> <leader>V :source ~/.vimrc<CR>:filetype detect<CR>:exe ":echo 'vimrc reloaded'"<CR>

" open/close the quickfix window
nmap <leader>c :copen<CR>
nmap <leader>cc :cclose<CR>

nmap <Leader>tt :TagbarToggle<CR>

cabbrev ps perldo s/
cabbrev t tabnew

vnoremap <silent> y y`]
vnoremap <silent> p p`]
nnoremap <silent> p p`]

cabbrev Q q
nnoremap <leader>/ :perldo s/

map <Leader>fo <ESC>:set foldenable<CR>
map <Leader>nf <ESC>:set nofoldenable<CR>

" Trigger configuration. Do not use <tab> if you use https://github.com/Valloric/YouCompleteMe.
let g:UltiSnipsExpandTrigger="<tab>"
let g:UltiSnipsJumpForwardTrigger="<c-b>"
let g:UltiSnipsJumpBackwardTrigger="<c-z>"
let g:UltiSnipsEditSplit="vertical"

nnoremap <F10>  gg=G

.vimrc

set nocompatible              " be iMproved, required
filetype off
let g:vundle_default_git_proto = 'git'

set rtp+=~/.vim/bundle/vundle/
call vundle#begin()
source ~/.vim/.vimrc.bundles
call vundle#end()            " required

filetype plugin indent on

source ~/.vim/.vimrc.sanity
source ~/.vim/.vimrc.auto
source ~/.vim/.vimrc.mappings
source ~/.vim/.vimrc.misc

syntax enable
set background=light
colorscheme solarized

highlight ExtraWhitespace ctermbg=red guibg=red
match ExtraWhitespace /\s\+$/
autocmd BufWinEnter * match ExtraWhitespace /\s\+$/
autocmd InsertLeave * match ExtraWhitespace /\s\+$/
autocmd BufWinLeave * call clearmatches()

set omnifunc=syntaxcomplete#Complete
set tags=./tags;/
set linespace=11
set guifont=Monaco:h16
set textwidth=0
set wrapmargin=0
set wrap

let g:GPGExecutable='gpg2'
map <Leader>n <plug>NERDTreeTabsToggle<CR>
set g:vimshell_editor_command=/usr/local/bin

if empty($TMUX)
  let &t_SI = "\<Esc>]50;CursorShape=1\x7"
  let &t_EI = "\<Esc>]50;CursorShape=0\x7"
  let &t_SR = "\<Esc>]50;CursorShape=2\x7"
else
  let &t_SI = "\<Esc>Ptmux;\<Esc>\<Esc>]50;CursorShape=1\x7\<Esc>\\"
  let &t_EI = "\<Esc>Ptmux;\<Esc>\<Esc>]50;CursorShape=0\x7\<Esc>\\"
  let &t_SR = "\<Esc>Ptmux;\<Esc>\<Esc>]50;CursorShape=2\x7\<Esc>\\"
endif
:

.vimrc.misc

" Following Scroll

fu! SplitScroll()
    :wincmd v
    :wincmd w
    execute "normal! \<C-d>"
    :set scrollbind
    :wincmd w
    :set scrollbind
endfu

nmap <leader>sb :call SplitScroll()<CR>

" Add the virtualenv's site-packages to vim path
if has('python')
py << EOF
import os.path
import sys
import vim
if 'VIRTUAL_ENV' in os.environ:
    project_base_dir = os.environ['VIRTUAL_ENV']
    sys.path.insert(0, project_base_dir)
    activate_this = os.path.join(project_base_dir, 'bin/activate_this.py')
    execfile(activate_this, dict(__file__=activate_this))
EOF
endif

.vimrc.sanity

syntax on                     " syntax highlighing
filetype on                   " try to detect filetypes
filetype plugin indent on     " enable loading indent file for filetype

set number                  " Display line numbers
set numberwidth=1           " using only 1 column (and 1 space) while possible
set background=dark         " We are using dark background in vim
set title                   " show title in console title bar
set wildmenu                " Menu completion in command mode on <Tab>
set wildmode=full           " <Tab> cycles between all matching choices.
set ruler                   " show the cursor position all the time
set nostartofline           " Avoid moving cursor to BOL when jumping around
set virtualedit=block       " Let cursor move past the last char in <C-v> mode
set showmatch               " Briefly jump to a paren once it's balanced
set linebreak               " don't wrap textin the middle of a word
set autoindent              " always set autoindenting on
set smartindent             " use smart indent if there is no indent file
set expandtab
set tabstop=4               " <tab> inserts 4 spaces 
set shiftwidth=4            " but an indent level is 4 spaces wide.
set softtabstop=4           " <BS> over an autoindent deletes both spaces.
set shiftround              " rounds indent to a multiple of shiftwidth
set matchpairs+=<:>         " show matching <> (html mainly) as well
set foldmethod=indent       " allow us to fold on indents
set foldlevel=99            " don't fold by default
set noautowrite             " Never write a file unless I request it.
set noautowriteall          " NEVER.
set virtualedit=onemore     " Cursor goes beyond last character
set autoread
set modeline                " Allow vim options to be embedded in files;
set modelines=5             " they must be within the first or last 5 lines.
set ffs=unix,dos,mac        " Try recognizing dos, unix, and mac line endings.
set ignorecase              " Default to using case insensitive searches,
set smartcase               " unless uppercase letters are used in the regex.
set smarttab                " Handle tabs more intelligently
set hlsearch                " Highlight searches by default.
set incsearch               " Incrementally search while typing a /regex
set ls=2                    " allways show status line
set confirm                 " Y-N-C prompt if closing with unsaved changes.
set showcmd                 " Show incomplete normal mode commands as I type.
set report=0                " : commands always print changed line count.
set shortmess+=a            " Use [+]/[RO]/[w] for modified/readonly/written.
set laststatus=2            " Always show statusline, even if only 1 window.
set statusline=%<%f\ %h%m%r\ %y%=%{v:register}\ %-14.(%l,%c%V%)\ %P
set complete=.,w,b,u,t,i
set wildmode=longest,list,full
set mouse=a
set switchbuf=usetab
set scrolloff=10
set grepprg=ag\ --nogroup\ --column\ $*
set grepformat=%f:%l:%c:%m
set lazyredraw
set clipboard=unnamed
autocmd BufEnter * silent! lcd %:p:h
set autochdir
set hidden
set relativenumber
set nopaste
set wildignore+=*.o,*.obj,.git,*.pyc.*.class
set wildignore+=node_modules/**
set wildignore+=env/**
syntax sync minlines=256
set backspace=indent,eol,start
set colorcolumn=120
autocmd! GUIEnter * set vb t_vb=
set noeb
set novb
set t_vb=
set dir=~/.vim/swp
set backupdir=~/.vim/bkp
set undodir=$HOME/.vim/undo/            " where to store undofiles
set undofile                            " enable undofile
set undolevels=1000                     " max undos stored
set undoreload=10000                    " buffer stored undos

" don't select first item, follow typing in autocomplete
set completeopt=menuone,longest,preview
set pumheight=6             " Keep a small completion window
highlight PmenuSel ctermfg=blue  ctermbg=black

if has("gui_running")
    set guioptions-=T
    set guioptions-=L
    set guioptions-=r
endif

set encoding=utf8
set termencoding=utf-8
set fileencodings=        " don't do any encoding conversion

set cursorline
set cursorcolumn
let mapleader=" "

set splitbelow
set splitright
set selection=exclusive
set viminfo="1000@"

let g:indent_guides_enable_on_vim_startup = 1

Vim Themes

matrix.vim

" matrix.vim - MATRIX like colorscheme.
"
" Maintainer:    MURAOKA Taro <koron@tka.att.ne.jp>
" Last Change:  10-Jun-2003.
" Some custom changes - Xyzzy

set    background=dark
hi     clear
if exists("syntax_on")
    syntax reset
endif
let    g:colors_name = 'matrix'

hi     Pmenu         guifg=#55ff55 guibg=#000000
hi     PmenuSel      guifg=#226622 guibg=#000000
" the character under the cursor
hi     Cursor        guifg=#226622 guibg=#55ff55
hi     lCursor       guifg=#226622 guibg=#55ff55
" like Cursor, but used when in IME mode |CursorIM|
hi     CursorIM      guifg=#226622 guibg=#55ff55
" directory names (and other special names in listings)
hi     Directory     guifg=#55ff55 guibg=#000000
" diff mode: Added line |diff.txt|
hi     DiffAdd       guifg=#55ff55 guibg=#226622 gui=none
" diff mode: Changed line |diff.txt|
hi     DiffChange    guifg=#55ff55 guibg=#226622 gui=none
" diff mode: Deleted line |diff.txt|
hi     DiffDelete    guifg=#113311 guibg=#113311 gui=none
" diff mode: Changed text within a changed line |diff.txt|
hi     DiffText      guifg=#55ff55 guibg=#339933 gui=bold
" error messages on the command line
hi     ErrorMsg      guifg=#55ff55 guibg=#339933
" the column separating vertically split windows
hi     VertSplit     guifg=#339933 guibg=#339933
" line used for closed folds
hi     Folded        guifg=#44cc44 guibg=#113311
" 'foldcolumn'
hi     FoldColumn    guifg=#44cc44 guibg=#226622
" 'incsearch' highlighting; also used for the text replaced with
hi     IncSearch     guifg=#226622 guibg=#55ff55 gui=none
" line number for ":number" and ":#" commands, and when 'number'
hi     LineNr        guifg=#44cc44 guibg=#000000
" 'showmode' message (e.g., "-- INSERT --")
hi     ModeMsg       guifg=#44cc44 guibg=#000000
" |more-prompt|
hi     MoreMsg       guifg=#44cc44 guibg=#000000
" '~' and '@' at the end of the window, characters from
hi     NonText       guifg=#44cc44 guibg=#000000
" normal text
hi     Normal        guifg=#44cc44 guibg=#000000
" |hit-enter| prompt and yes/no questions
hi     Question      guifg=#44cc44 guibg=#000000
" Last search pattern highlighting (see 'hlsearch').
hi     Search        guifg=#113311 guibg=#44cc44 gui=none
" Meta and special keys listed with ":map", also for text used
hi     SpecialKey    guifg=#44cc44 guibg=#000000
" status line of current window
hi     StatusLine    guifg=#55ff55 guibg=#339933 gui=none
" status lines of not-current windows
hi     StatusLineNC  guifg=#113311 guibg=#339933 gui=none
" titles for output from ":set all", ":autocmd" etc.
hi     Title         guifg=#55ff55 guibg=#113311 gui=bold
" Visual mode selection
hi     Visual        guifg=#ffffff guibg=#339933 gui=none
" Visual mode selection when vim is "Not Owning the Selection".
hi     VisualNOS     guifg=#44cc44 guibg=#000000
" warning messages
hi     WarningMsg    guifg=#55ff55 guibg=#000000
" current match in 'wildmenu' completion
hi     WildMenu      guifg=#226622 guibg=#55ff55
hi     CursorLine    guifg=#ffffff guibg=#000000
hi     CursorColumn  guifg=#ffffff guibg=#000000
hi     Comment       guifg=#226622 guibg=#000000
hi     Constant      guifg=#55ff55 guibg=#000000
hi     Special       guifg=#44cc44 guibg=#000000
hi     Identifier    guifg=#55ff55 guibg=#000000
hi     Statement     guifg=#55ff55 guibg=#000000 gui=bold
hi     PreProc       guifg=#339933 guibg=#000000
hi     Type          guifg=#55ff55 guibg=#000000 gui=bold
hi     Underlined    guifg=#55ff55 guibg=#000000 gui=underline
hi     Error         guifg=#55ff55 guibg=#339933
hi     Todo          guifg=#113311 guibg=#44cc44 gui=none

bw.vim

" Vim color file
" Maintainer:   Hans Fugal <hans@fugal.net>
" Last Change:  5 Oct 2001
" URL:		http://fugal.net/vim/colors/bw.vim

" cool help screens
" :he group-name
" :he highlight-groups
" :he cterm-colors
"
if version > 580
    " no guarantees for version 5.8 and below, but this makes it stop
    " complaining
    hi clear
    if exists("syntax_on")
	syntax reset
    endif
endif
let g:colors_name="bw"

hi SpecialKey     cterm=bold		ctermfg=NONE
hi NonText        cterm=bold	    	ctermfg=NONE
hi Directory      cterm=bold	    	ctermfg=NONE
hi ErrorMsg       cterm=standout    	ctermfg=NONE
hi IncSearch      cterm=reverse	    	ctermfg=NONE
hi Search         cterm=reverse	    	ctermfg=NONE
hi MoreMsg        cterm=bold	    	ctermfg=NONE
hi ModeMsg        cterm=bold	    	ctermfg=NONE
hi LineNr         cterm=underline   	ctermfg=NONE
hi Question       cterm=standout    	ctermfg=NONE
hi StatusLine     cterm=bold,reverse	ctermfg=NONE
hi StatusLineNC   cterm=reverse 	ctermfg=NONE
hi VertSplit      cterm=reverse		ctermfg=NONE
hi Title          cterm=bold		ctermfg=NONE
hi Visual         cterm=reverse		ctermfg=NONE
hi VisualNOS      cterm=bold,underline	ctermfg=NONE
hi WarningMsg     cterm=standout	ctermfg=NONE
hi WildMenu       cterm=standout	ctermfg=NONE
hi Folded         cterm=standout	ctermfg=NONE
hi FoldColumn     cterm=standout	ctermfg=NONE
hi DiffAdd        cterm=bold	        ctermfg=NONE
hi DiffChange     cterm=bold	        ctermfg=NONE
hi DiffDelete     cterm=bold	        ctermfg=NONE
hi DiffText       cterm=reverse	        ctermfg=NONE
hi Comment        cterm=bold	        ctermfg=NONE
hi Constant       cterm=underline	ctermfg=NONE
hi Special        cterm=bold		ctermfg=NONE
hi Identifier     cterm=underline	ctermfg=NONE
hi Statement      cterm=bold		ctermfg=NONE
hi PreProc        cterm=underline	ctermfg=NONE
hi Type           cterm=underline	ctermfg=NONE
hi Underlined     cterm=underline	ctermfg=NONE
hi Ignore         cterm=bold		ctermfg=NONE
hi Error          cterm=reverse		ctermfg=NONE
hi Todo           cterm=standout	ctermfg=NONE

.gitconfig

[user]
  name = Xyzzy Apps
  email = xyzzyapps@gmail.com
[core]
  quotepath = false
  commitGraph = true
  excludesFile = ~/.gitignore
  editor = /usr/bin/vim
  fileMode = false
[color]
  diff = auto
  status = auto
  branch = auto
[gc]
  writeCommitGraph = true
[filter "lfs"]
  smudge = git-lfs smudge -- %f
  process = git-lfs filter-process
  required = true
  clean = git-lfs clean -- %f
[alias]
  change-commits = "!f() { VAR=$1; OLD=$2; NEW=$3; shift 3; git filter-branch --env-filter \"if [[ \\\"$`echo $VAR`\\\" = '$OLD' ]]; then export $VAR='$NEW'; fi\" $@; }; f"
  d = diff -w --ignore-all-space
  p = push origin --tags
  pg = push origin gh-pages
  r = pull --rebase origin
  pl = pull --no-rebase origin
  pm = pull origin master
  cb = chceckout --track
  a = add -A
  b = branch
  bd = branch -d
  t = tag
  td = tag -d
  c = commit -a
  co = checkout
  cp = cherry-pick
  cl = clean -dfx
  m = merge
  ff = merge --ff-only
  fx = commit -a --amend -C HEAD
  ix = diff --cached
  re = re-edit
  s = status
  st = status -sb
  fp  = fetch --all --prune
  git  = !git
  wip  = commit -a -m WIP
  log-all = log --all --graph --color=always --pretty='[%C(cyan)%h%Creset]%C(bold cyan)%d%Creset %s'
  fist = !git fp && git hist
  log = log --graph --color=always --pretty='[%C(cyan)%h%Creset]%C(bold cyan)%d%Creset %s'
[url "git://github.com/"]
  insteadOf = hub:
[grep]
  extendRegexp = true
  lineNumber = true

.gitignore

# General
.DS_Store
.AppleDouble
.LSOverride

# Icon must end with two \r
Icon

# Thumbnails
._*

# Files that might appear in the root of a volume
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns
.com.apple.timemachine.donotpresent

# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk

__pycache__
env
node_modules
bower_components

.tmux.conf

unbind C-b
set -g prefix C-Space
bind Space send-prefix

bind Space copy-mode
bind C-Space copy-mode

bind-key C-Space last-window

# Split windows with a more visual set of characters.
bind | split-window -h
bind - split-window -v

# Change the default input delay in order to improve Vim
# performance.
set -sg escape-time 1

# Number windows and panes starting at 1 so that we can jump to
# them easier.
set -g base-index 1
set -g pane-base-index 1

# vi mode.
set -g mode-keys vi
set -g status-keys vi

# Select panes with vi-style movement commands.
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R

# Resize panes with vi-style movement commands.
bind -r H resize-pane -L 5
bind -r J resize-pane -D 5
bind -r K resize-pane -U 5
bind -r L resize-pane -R 5

# Clipboard
set-option -g default-command "reattach-to-user-namespace -l zsh"

Matrix.itermcolors

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>Ansi 0 Color</key>
	<dict>
		<key>Blue Component</key>
		<real>0.0</real>
		<key>Green Component</key>
		<real>0.0</real>
		<key>Red Component</key>
		<real>0.0</real>
	</dict>
	<key>Ansi 1 Color</key>
	<dict>
		<key>Blue Component</key>
		<real>0.0</real>
		<key>Green Component</key>
		<real>0.0</real>
		<key>Red Component</key>
		<real>0.73333334922790527</real>
	</dict>
	<key>Ansi 10 Color</key>
	<dict>
		<key>Blue Component</key>
		<real>0.3333333432674408</real>
		<key>Green Component</key>
		<real>1</real>
		<key>Red Component</key>
		<real>0.3333333432674408</real>
	</dict>
	<key>Ansi 11 Color</key>
	<dict>
		<key>Blue Component</key>
		<real>0.3333333432674408</real>
		<key>Green Component</key>
		<real>1</real>
		<key>Red Component</key>
		<real>1</real>
	</dict>
	<key>Ansi 12 Color</key>
	<dict>
		<key>Blue Component</key>
		<real>1</real>
		<key>Green Component</key>
		<real>0.3333333432674408</real>
		<key>Red Component</key>
		<real>0.3333333432674408</real>
	</dict>
	<key>Ansi 13 Color</key>
	<dict>
		<key>Blue Component</key>
		<real>1</real>
		<key>Green Component</key>
		<real>0.3333333432674408</real>
		<key>Red Component</key>
		<real>1</real>
	</dict>
	<key>Ansi 14 Color</key>
	<dict>
		<key>Blue Component</key>
		<real>1</real>
		<key>Green Component</key>
		<real>1</real>
		<key>Red Component</key>
		<real>0.3333333432674408</real>
	</dict>
	<key>Ansi 15 Color</key>
	<dict>
		<key>Blue Component</key>
		<real>1</real>
		<key>Green Component</key>
		<real>1</real>
		<key>Red Component</key>
		<real>1</real>
	</dict>
	<key>Ansi 2 Color</key>
	<dict>
		<key>Blue Component</key>
		<real>0.0</real>
		<key>Green Component</key>
		<real>0.73333334922790527</real>
		<key>Red Component</key>
		<real>0.0</real>
	</dict>
	<key>Ansi 3 Color</key>
	<dict>
		<key>Blue Component</key>
		<real>0.0</real>
		<key>Green Component</key>
		<real>0.73333334922790527</real>
		<key>Red Component</key>
		<real>0.73333334922790527</real>
	</dict>
	<key>Ansi 4 Color</key>
	<dict>
		<key>Blue Component</key>
		<real>0.73333334922790527</real>
		<key>Green Component</key>
		<real>0.0</real>
		<key>Red Component</key>
		<real>0.0</real>
	</dict>
	<key>Ansi 5 Color</key>
	<dict>
		<key>Blue Component</key>
		<real>0.73333334922790527</real>
		<key>Green Component</key>
		<real>0.0</real>
		<key>Red Component</key>
		<real>0.73333334922790527</real>
	</dict>
	<key>Ansi 6 Color</key>
	<dict>
		<key>Blue Component</key>
		<real>0.73333334922790527</real>
		<key>Green Component</key>
		<real>0.73333334922790527</real>
		<key>Red Component</key>
		<real>0.0</real>
	</dict>
	<key>Ansi 7 Color</key>
	<dict>
		<key>Blue Component</key>
		<real>0.73333334922790527</real>
		<key>Green Component</key>
		<real>0.73333334922790527</real>
		<key>Red Component</key>
		<real>0.73333334922790527</real>
	</dict>
	<key>Ansi 8 Color</key>
	<dict>
		<key>Blue Component</key>
		<real>0.33333333333333331</real>
		<key>Green Component</key>
		<real>0.33333333333333331</real>
		<key>Red Component</key>
		<real>0.33333333333333331</real>
	</dict>
	<key>Ansi 9 Color</key>
	<dict>
		<key>Blue Component</key>
		<real>0.3333333432674408</real>
		<key>Green Component</key>
		<real>0.3333333432674408</real>
		<key>Red Component</key>
		<real>1</real>
	</dict>
	<key>Background Color</key>
	<dict>
		<key>Blue Component</key>
		<real>0.0</real>
		<key>Green Component</key>
		<real>0.0</real>
		<key>Red Component</key>
		<real>0.0</real>
	</dict>
	<key>Bold Color</key>
	<dict>
		<key>Blue Component</key>
		<real>1</real>
		<key>Green Component</key>
		<real>1</real>
		<key>Red Component</key>
		<real>1</real>
	</dict>
	<key>Cursor Color</key>
	<dict>
		<key>Blue Component</key>
		<real>0.73333334922790527</real>
		<key>Green Component</key>
		<real>0.73333334922790527</real>
		<key>Red Component</key>
		<real>0.73333334922790527</real>
	</dict>
	<key>Cursor Text Color</key>
	<dict>
		<key>Blue Component</key>
		<real>1</real>
		<key>Green Component</key>
		<real>1</real>
		<key>Red Component</key>
		<real>1</real>
	</dict>
	<key>Foreground Color</key>
	<dict>
		<key>Blue Component</key>
		<real>0.0</real>
		<key>Green Component</key>
		<real>1</real>
		<key>Red Component</key>
		<real>0.12465723995171851</real>
	</dict>
	<key>Selected Text Color</key>
	<dict>
		<key>Blue Component</key>
		<real>0.0</real>
		<key>Green Component</key>
		<real>0.0</real>
		<key>Red Component</key>
		<real>0.0</real>
	</dict>
	<key>Selection Color</key>
	<dict>
		<key>Blue Component</key>
		<real>1</real>
		<key>Green Component</key>
		<real>0.8353000283241272</real>
		<key>Red Component</key>
		<real>0.70980000495910645</real>
	</dict>
</dict>
</plist>

pylintrc

[MESSAGES CONTROL]
# to support dynamic methods R0201
# from foo import * is bad, but its useful sometimes
disable=R0201,W0401

[BASIC]
variable-rgx=[a-z_][a-z0-9_]{1,30}

[FORMAT]
max-line-length=140