Merge branch 'master' of git.epichack.com:barak/dotfiles

This commit is contained in:
Barak Michener 2013-08-26 16:55:03 -04:00
commit e33b81b060
25 changed files with 462 additions and 98 deletions

12
.gitmodules vendored
View file

@ -28,9 +28,6 @@
[submodule ".vim/bundle/nerdcommenter"]
path = .vim/bundle/nerdcommenter
url = git://github.com/scrooloose/nerdcommenter.git
[submodule ".vim/bundle/command-t"]
path = .vim/bundle/command-t
url = git://git.wincent.com/command-t.git
[submodule ".vim/bundle/EasyGrep"]
path = .vim/bundle/EasyGrep
url = https://github.com/vim-scripts/EasyGrep.git
@ -67,3 +64,12 @@
[submodule ".vim/bundle/vim-sparkup"]
path = .vim/bundle/vim-sparkup
url = git://github.com/tristen/vim-sparkup.git
[submodule ".vim/bundle/vim-gocode"]
path = .vim/bundle/vim-gocode
url = https://github.com/Blackrush/vim-gocode.git
[submodule ".vim/bundle/vim-airline"]
path = .vim/bundle/vim-airline
url = https://github.com/bling/vim-airline
[submodule ".vim/bundle/ctrlp"]
path = .vim/bundle/ctrlp
url = https://github.com/kien/ctrlp.vim.git

View file

@ -1,7 +1,7 @@
winsize 115 45
"set expandtab
"set guifont=DejaVu\ Sans\ Mono:h15.00
set guifont=Inconsolata\ 13
set guifont=Inconsolata\ 14
set guioptions-=L
set guioptions-=r
set guioptions-=m

@ -1 +1 @@
Subproject commit 680f60fb237370d6eda2bfb28cd660916991733e
Subproject commit 02449ddaafdc0bc1cdd8df44c198fd96193083f3

@ -1 +1 @@
Subproject commit 972b0a92cbc9a56dd5deac2c7f2b57094374e3ff
Subproject commit 527d98028bb00167acf9acd89f7129c229c26025

@ -1 +1 @@
Subproject commit c6c607a43e1b4a328cec10ef8d139fdd243af60f
Subproject commit 0284450ee16dfab2300f6b68c68b9e718f4f98bd

@ -1 +0,0 @@
Subproject commit 8866bbc0e18a981889b3431790caf47432f38cf4

1
.vim/bundle/ctrlp Submodule

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

View file

@ -1,73 +0,0 @@
if exists('g:loaded_gocode')
finish
endif
let g:loaded_gocode = 1
fu! s:gocodeCurrentBuffer()
let buf = getline(1, '$')
if &l:fileformat == 'dos'
" XXX: line2byte() depend on 'fileformat' option.
" so if fileformat is 'dos', 'buf' must include '\r'.
let buf = map(buf, 'v:val."\r"')
endif
let file = tempname()
call writefile(buf, file)
return file
endf
fu! s:system(str, ...)
return (a:0 == 0 ? system(a:str) : system(a:str, join(a:000)))
endf
fu! s:gocodeShellescape(arg)
try
let ssl_save = &shellslash
set noshellslash
return shellescape(a:arg)
finally
let &shellslash = ssl_save
endtry
endf
fu! s:gocodeCommand(cmd, preargs, args)
for i in range(0, len(a:args) - 1)
let a:args[i] = s:gocodeShellescape(a:args[i])
endfor
for i in range(0, len(a:preargs) - 1)
let a:preargs[i] = s:gocodeShellescape(a:preargs[i])
endfor
let result = s:system(printf('gocode %s %s %s', join(a:preargs), a:cmd, join(a:args)))
if v:shell_error != 0
return "[\"0\", []]"
else
return result
endif
endf
fu! s:gocodeCurrentBufferOpt(filename)
return '-in=' . a:filename
endf
fu! s:gocodeCursor()
return printf('%d', line2byte(line('.')) + (col('.')-2))
endf
fu! s:gocodeAutocomplete()
let filename = s:gocodeCurrentBuffer()
let result = s:gocodeCommand('autocomplete',
\ [s:gocodeCurrentBufferOpt(filename), '-f=vim'],
\ [expand('%:p'), s:gocodeCursor()])
call delete(filename)
return result
endf
fu! gocomplete#Complete(findstart, base)
"findstart = 1 when we need to get the text length
if a:findstart == 1
execute "silent let g:gocomplete_completions = " . s:gocodeAutocomplete()
return col('.') - g:gocomplete_completions[0] - 1
"findstart = 0 when we need to return the list of completions
else
return g:gocomplete_completions[1]
endif
endf

View file

@ -1 +0,0 @@
setlocal omnifunc=gocomplete#Complete

@ -1 +1 @@
Subproject commit 6239284d168931c40ac8681e9a950e962016ba51
Subproject commit 3a03fee48c24d0116c529769664750a43a206ee7

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

@ -1 +1 @@
Subproject commit 089506ed89da1849485fdfcca002a42111759fab
Subproject commit 0e38ef90446a0f1f2294b6225c9c97dbc2810b45

@ -1 +1 @@
Subproject commit 00b0916ae2fc4e329f519686348de13d7477d770
Subproject commit 124550cfee33a1bb9a227e78ccc709317a89dae9

@ -1 +1 @@
Subproject commit ff031d022f2123353bc93a3aa97290287c10a287
Subproject commit 878c3422c9ad9edc7b907948515b3118d91a67d1

@ -0,0 +1 @@
Subproject commit 7b07ccdc64afb8a4eced064901b63dbfca1e4a64

@ -1 +1 @@
Subproject commit 8c9bcedc6c534d3f308fa3ade6a459977ee4a58a
Subproject commit 35028be1f71953da9f2c28509bf6c5ebd1d31c28

@ -1 +1 @@
Subproject commit 6162f501f41477e9f0d75e32cc4159863f4222a2
Subproject commit 4e784293f6e36494d6c4578634abc6aca3d2028d

@ -1 +1 @@
Subproject commit b5e9269136ae8dc7d6fbd5ed8777cbcd8cc22fbf
Subproject commit 71cdd2d9a212be6367d8f716a19bf5caf11bd0ec

@ -1 +1 @@
Subproject commit 48d1cb6bf0000159291014226d8d8d3330ad875e
Subproject commit a029dc28ebc1ba5953cd5b0ef9a50bd0ffba3aa4

View file

@ -45,17 +45,17 @@ au BufRead,BufNewFile *.go set filetype=go
"Settings per filetype
"augroup python
augroup python
""autocmd FileType python set omnifunc=pythoncomplete#Complete
""autocmd FileType python call SuperTabSetCompletionType("<C-X><C-O>")
""autocmd FileType python set completeopt-=preview
"autocmd FileType python set ts=4
"autocmd FileType python set softtabstop=4
"autocmd FileType python set shiftwidth=4
"autocmd FileType python set expandtab
"autocmd FileType python set nosmartindent
autocmd FileType python set ts=4
autocmd FileType python set softtabstop=4
autocmd FileType python set shiftwidth=4
autocmd FileType python set expandtab
autocmd FileType python set nosmartindent
"autocmd FileType python let b:auto_trim_whitespace=1
"augroup END
augroup END
"augroup javascript
"autocmd FileType javascript set ts=4
"autocmd FileType javascript set softtabstop=4

376
.vim/markdown_cheatsheet.md Normal file
View file

@ -0,0 +1,376 @@
vim: set syntax=markdown:
This is intended as a quick reference and showcase. For more complete info, see [John Gruber's original spec](http://daringfireball.net/projects/markdown/) and the [Github-flavored Markdown info page](http://github.github.com/github-flavored-markdown/).
Note that there is also a [Cheatsheet specific to Markdown Here](./Markdown-Here-Cheatsheet) if that's what you're looking for.
You can play around with Markdown on our [live demo page](http://www.markdown-here.com/livedemo.html).
##### Table of Contents
[Headers](#headers)
[Emphasis](#emphasis)
[Lists](#lists)
[Links](#links)
[Images](#images)
[Code and Syntax Highlighting](#code)
[Tables](#tables)
[Blockquotes](#blockquotes)
[Inline HTML](#html)
[Horizontal Rule](#hr)
[Line Breaks](#lines)
[Youtube videos](#videos)
<a name="headers"/>
## Headers
```no-highlight
# H1
## H2
### H3
#### H4
##### H5
###### H6
Alternatively, for H1 and H2, an underline-ish style:
Alt-H1
======
Alt-H2
------
```
# H1
## H2
### H3
#### H4
##### H5
###### H6
Alternatively, for H1 and H2, an underline-ish style:
Alt-H1
======
Alt-H2
------
<a name="emphasis"/>
## Emphasis
```no-highlight
Emphasis, aka italics, with *asterisks* or _underscores_.
Strong emphasis, aka bold, with **asterisks** or __underscores__.
Combined emphasis with **asterisks and _underscores_**.
Strikethrough uses two tildes. ~~Scratch this.~~
```
Emphasis, aka italics, with *asterisks* or _underscores_.
Strong emphasis, aka bold, with **asterisks** or __underscores__.
Combined emphasis with **asterisks and _underscores_**.
Strikethrough uses two tildes. ~~Scratch this.~~
<a name="lists"/>
## Lists
```no-highlight
1. First ordered list item
2. Another item
* Unordered sub-list.
1. Actual numbers don't matter, just that it's a number
1. Ordered sub-list
4. And another item.
Some text that should be aligned with the above item.
* Unordered list can use asterisks
- Or minuses
+ Or pluses
```
1. First ordered list item
2. Another item
* Unordered sub-list.
1. Actual numbers don't matter, just that it's a number
1. Ordered sub-list
4. And another item.
Some text that should be aligned with the above item.
* Unordered list can use asterisks
- Or minuses
+ Or pluses
<a name="links"/>
## Links
There are two ways to create links.
```no-highlight
[I'm an inline-style link](https://www.google.com)
[I'm a reference-style link][Arbitrary case-insensitive reference text]
[I'm a relative reference to a repository file](../blob/master/LICENSE)
[You can use numbers for reference-style link definitions][1]
Or leave it empty and use the [link text itself][]
Some text to show that the reference links can follow later.
[arbitrary case-insensitive reference text]: https://www.mozilla.org
[1]: http://slashdot.org
[link text itself]: http://www.reddit.com
```
[I'm an inline-style link](https://www.google.com)
[I'm a reference-style link][Arbitrary case-insensitive reference text]
[I'm a relative reference to a repository file](../blob/master/LICENSE)
[You can use numbers for reference-style link definitions][1]
Or leave it empty and use the [link text itself][]
Some text to show that the reference links can follow later.
[arbitrary case-insensitive reference text]: https://www.mozilla.org
[1]: http://slashdot.org
[link text itself]: http://www.reddit.com
<a name="images"/>
## Images
```no-highlight
Here's our logo (hover to see the title text):
Inline-style:
![alt text](https://github.com/adam-p/markdown-here/raw/master/src/common/images/icon48.png "Logo Title Text 1")
Reference-style:
![alt text][logo]
[logo]: https://github.com/adam-p/markdown-here/raw/master/src/common/images/icon48.png "Logo Title Text 2"
```
Here's our logo (hover to see the title text):
Inline-style:
![alt text](https://github.com/adam-p/markdown-here/raw/master/src/common/images/icon48.png "Logo Title Text 1")
Reference-style:
![alt text][logo]
[logo]: https://github.com/adam-p/markdown-here/raw/master/src/common/images/icon48.png "Logo Title Text 2"
<a name="code"/>
## Code and Syntax Highlighting
Code blocks are part of the Markdown spec, but syntax highlighting isn't. However, many renderers -- like Github's and *Markdown Here* -- support syntax highlighting. *Markdown Here* supports highlighting for dozens of languages (and not-really-languages, like diffs and HTTP headers); to see the complete list, and how to write the language names, see the [highlight.js demo page](http://softwaremaniacs.org/media/soft/highlight/test.html).
```no-highlight
Inline `code` has `back-ticks around` it.
```
Inline `code` has `back-ticks around` it.
Blocks of code are either fenced by lines with three back-ticks <code>```</code>, or are indented with four spaces. I recommend only using the fenced code blocks -- they're easier and only they support syntax highlighting.
```no-highlight
```javascript
var s = "JavaScript syntax highlighting";
alert(s);
```
```python
s = "Python syntax highlighting"
print s
```
```
No language indicated, so no syntax highlighting.
But let's throw in a <b>tag</b>.
```
```
```javascript
var s = "JavaScript syntax highlighting";
alert(s);
```
```python
s = "Python syntax highlighting"
print s
```
```
No language indicated, so no syntax highlighting in Markdown Here (varies on Github).
But let's throw in a <b>tag</b>.
```
(Github Wiki pages don't seem to support syntax highlighting, so the above won't be colourful (the strings are not red, for example). Try it out in a *Markdown Here* email or a Github Markdown README or Github Issue -- you can preview a new Issue without submitting it.)
Again, to see what languages are available for highlighting, and how to write those language names, see the [highlight.js demo page](http://softwaremaniacs.org/media/soft/highlight/test.html).
<a name="tables"/>
## Tables
Tables aren't part of the core Markdown spec, but they are part of GFM and *Markdown Here* supports them. They are an easy way of adding tables to your email -- a task that would otherwise require copy-pasting from another application.
```no-highlight
Colons can be used to align columns.
| Tables | Are | Cool |
| ------------- |:-------------:| -----:|
| col 3 is | right-aligned | $1600 |
| col 2 is | centered | $12 |
| zebra stripes | are neat | $1 |
The outer pipes (|) are optional, and you don't need to make the raw Markdown line up prettily. You can also use inline Markdown.
Markdown | Less | Pretty
--- | --- | ---
*Still* | `renders` | **nicely**
1 | 2 | 3
```
Colons can be used to align columns.
| Tables | Are | Cool |
| ------------- |:-------------:| -----:|
| col 3 is | right-aligned | $1600 |
| col 2 is | centered | $12 |
| zebra stripes | are neat | $1 |
The outer pipes (|) are optional, and you don't need to make the raw Markdown line up prettily. You can also use inline Markdown.
Markdown | Less | Pretty
--- | --- | ---
*Still* | `renders` | **nicely**
1 | 2 | 3
<a name="blockquotes"/>
## Blockquotes
```no-highlight
> Blockquotes are very handy in email to emulate reply text.
> This line is part of the same quote.
Quote break.
> This is a very long line that will still be quoted properly when it wraps. Oh boy let's keep writing to make sure this is long enough to actually wrap for everyone. Oh, you can *put* **Markdown** into a blockquote.
```
> Blockquotes are very handy in email to emulate reply text.
> This line is part of the same quote.
Quote break.
> This is a very long line that will still be quoted properly when it wraps. Oh boy let's keep writing to make sure this is long enough to actually wrap for everyone. Oh, you can *put* **Markdown** into a blockquote.
<a name="html"/>
## Inline HTML
You can also use raw HTML in your Markdown, and it'll mostly work pretty well.
```no-highlight
<dl>
<dt>Definition list</dt>
<dd>Is something people use sometimes.</dd>
<dt>Markdown in HTML</dt>
<dd>Does *not* work **very** well. Use HTML <em>tags</em>.</dd>
</dl>
```
<dl>
<dt>Definition list</dt>
<dd>Is something people use sometimes.</dd>
<dt>Markdown in HTML</dt>
<dd>Does *not* work **very** well. Use HTML <em>tags</em>.</dd>
</dl>
<a name="hr"/>
## Horizontal Rule
```
Three or more...
---
Hyphens
***
Asterisks
___
Underscores
```
Three or more...
---
Hyphens
***
Asterisks
___
Underscores
<a name="lines"/>
## Line Breaks
My basic recommendation for learning how line breaks work is to experiment and discover -- hit &lt;Enter&gt; once (i.e., insert one newline), then hit it twice (i.e., insert two newlines), see what happens. You'll soon learn to get what you want. "Markdown Toggle" is your friend.
Here are some things to try out:
```
Here's a line for us to start with.
This line is separated from the one above by two newlines, so it will be a *separate paragraph*.
This line is also a separate paragraph, but...
This line is only separated by a single newline, so it's a separate line in the *same paragraph*.
```
Here's a line for us to start with.
This line is separated from the one above by two newlines, so it will be a *separate paragraph*.
This line is also begins a separate paragraph, but...
This line is only separated by a single newline, so it's a separate line in the *same paragraph*.
(Technical note: *Markdown Here* uses GFM line breaks, so there's no need to use MD's two-space line breaks.)
<a name="videos"/>
## Youtube videos
They can't be added directly but you can add an image with a link to the video like this:
```no-highlight
<a href="http://www.youtube.com/watch?feature=player_embedded&v=YOUTUBE_VIDEO_ID_HERE
" target="_blank"><img src="http://img.youtube.com/vi/YOUTUBE_VIDEO_ID_HERE/0.jpg"
alt="IMAGE ALT TEXT HERE" width="240" height="180" border="10" /></a>
```
Or, in pure Markdown, but losing the image sizing and border:
```no-highlight
[![IMAGE ALT TEXT HERE](http://img.youtube.com/vi/YOUTUBE_VIDEO_ID_HERE/0.jpg)](http://www.youtube.com/watch?v=YOUTUBE_VIDEO_ID_HERE)
```

View file

@ -1,6 +1,6 @@
" Vim syn file
" Language: NVISION Script
" Maintainer: John Cook <john.cook@kla-tencor.com>
" Maintainer: Barak Michener
" Last Change: 2006 Jun 29
" For version 5.x: Clear all syntax items

17
.vimrc
View file

@ -123,6 +123,7 @@ setlocal cursorline
let python_highlight_all = 1
let g:Tb_MaxSize=0
let g:Tb_MapCTabSwitchBufs = 1
let g:UseGooglePythonSettings = 0
" * Configure browser for haskell_doc.vim
let g:haddock_browser = "open"
@ -188,6 +189,18 @@ let g:CommandTMaxDepth = 7
au! BufRead,BufWrite,BufWritePost,BufNewFile *.org
au BufEnter *.org call org#SetOrgFileType()
" * Airline
set noshowmode
let g:airline_enable_branch = 1
let g:airline_enable_syntastic = 1
let g:airline_enable_tagbar = 1
let g:airline_theme="ubaryd"
" * CtrlP
let g:ctrlp_map = ',t'
let g:ctrlp_cmd = 'CtrlP'
let g:ctrlp_working_path_mode = 'ra'
" ** STATUSLINE **
"
@ -225,6 +238,10 @@ command ScratchOpen :e scp://barak@barakmich.com//home/barak/notes/scratch
" Sudo-make-me-a-sandwich write. For when I forget to be root.
command Wdammit :w !sudo tee > /dev/null %
" I can never remember markdown fully. Open me a cheatsheet
command MarkdownCheatsheet :rightb vsplit ~/.vim/markdown_cheatsheet.md
" Doesn't quite work right but can be a real savior if needed.
" Oh-shit-what-was-this-like-before-I-changed-it?
function! s:DiffWithSaved()

4
.zshrc
View file

@ -83,6 +83,10 @@ if [ -f ~/.bash_aliases ]; then
source ~/.bash_aliases
fi
if [ -f /usr/local/bin/virtualenvwrapper_lazy.sh ]; then
source /usr/local/bin/virtualenvwrapper_lazy.sh
fi
fasd_cache="$HOME/.fasd-init-zsh"
if [ "$(command -v fasd)" -nt "$fasd_cache" -o ! -s "$fasd_cache" ]; then
fasd --init posix-alias zsh-hook zsh-ccomp zsh-ccomp-install zsh-wcomp zsh-wcompinstall >| "$fasd_cache"

33
bin/git-remove-submodule Executable file
View file

@ -0,0 +1,33 @@
#!/bin/sh
#
# Adam Sharp
# Aug 21, 2013
#
# Usage: Add it to your PATH and `git remove-submodule path/to/submodule`.
#
# Does the inverse of `git submodule add`:
# 1) `deinit` the submodule
# 2) Remove the submodule from the index and working directory
# 3) Clean up the .gitmodules file
#
submodule_name=$1; shift
exit_err() {
[ $# -gt 0 ] && echo "fatal: $*" 1>&2
exit 1
}
if git submodule status "$submodule_name" >/dev/null 2>&1; then
git submodule deinit -f "$submodule_name"
git rm -f "$submodule_name"
git config -f .gitmodules --remove-section "submodule.$submodule_name"
if [ -z "$(cat .gitmodules)" ]; then
git rm -f .gitmodules
else
git add .gitmodules
fi
else
exit_err "Submodule '$submodule_name' not found"
fi