initial commit

This commit is contained in:
2016-04-14 19:50:33 +02:00
parent f8154d6aae
commit 70a99dc266
14 changed files with 2613 additions and 2 deletions

29
.bash_profile Normal file
View File

@@ -0,0 +1,29 @@
# If not running interactively, don't do anything
[ -z "$PS1" ] && return
#PATH=$PATH:$HOME/bin:/opt/local/bin:/opt/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:
# colors
export CLICOLOR=1
export LSCOLORS=dxfxcxbxegedabagacad
# history
export HISTCONTROL=erasedups
export HISTFILESIZE=10000
export HISTSIZE=10000
shopt -s histappend
# prompt
export PS1="\[\033[36m\]\u\[\033[m\]@\[\033[32m\]\h:\[\033[33;1m\]\w\[\033[m\]\$ "
export CLICOLOR=1
export LSCOLORS=ExFxBxDxCxegedabagacad
# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize
# make less more friendly for non-text input files, see lesspipe(1)
[ -x /usr/bin/lesspipe ] && eval "$(lesspipe)"
[[ -f "$HOME/.dotfiles/.commonrc" ]] && source "$HOME/.dotfiles/.commonrc"

2
.commonrc Executable file
View File

@@ -0,0 +1,2 @@
[[ -f "$HOME/.dotfiles/aliases" ]] && source "$HOME/.dotfiles/aliases"

View File

@@ -1 +1,6 @@
bin recurse
bin/dfm chmod 0755
README.md skip
aliases skip
tmux.start.sh skip

6
.screenrc Normal file
View File

@@ -0,0 +1,6 @@
hardstatus off
hardstatus alwayslastline
hardstatus string '%{= kG}[ %{G}%H %{g}][%= %{= kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{B} %m-%d %{W} %c %{g}]'
defscrollback 100000
termcapinfo xterm* ti@:te@
startup_message off

9
.shellrc.load Normal file
View File

@@ -0,0 +1,9 @@
# include what you want
export PATH=$PATH:$HOME/bin
# add this to the .bashrc or .zshrc (done automatically by dfm):
# . $HOME/.shellrc.load
####
# put any bash/zsh customizations in here

147
.tmux.conf Normal file
View File

@@ -0,0 +1,147 @@
######################
### DESIGN CHANGES ###
######################
# panes
set -g pane-border-fg black
set -g pane-active-border-fg brightred
## Status bar design
# status line
set -g status-utf8 on
set -g status-justify left
set -g status-bg default
set -g status-fg colour12
set -g status-interval 2
# messaging
set -g message-fg black
set -g message-bg yellow
set -g message-command-fg blue
set -g message-command-bg black
#window mode
setw -g mode-bg colour6
setw -g mode-fg colour0
# window status
setw -g window-status-format " #F#I:#W#F "
setw -g window-status-current-format " #F#I:#W#F "
setw -g window-status-format "#[fg=magenta]#[bg=black] #I #[bg=cyan]#[fg=colour8] #W "
setw -g window-status-current-format "#[bg=brightmagenta]#[fg=colour8] #I #[fg=colour8]#[bg=colour14] #W "
setw -g window-status-current-bg colour0
setw -g window-status-current-fg colour11
setw -g window-status-current-attr dim
setw -g window-status-bg green
setw -g window-status-fg black
setw -g window-status-attr reverse
# Info on left (I don't have a session display for now)
set -g status-left ''
# loud or quiet?
set-option -g visual-activity off
set-option -g visual-bell off
set-option -g visual-silence off
set-window-option -g monitor-activity off
set-option -g bell-action none
set -g default-terminal "screen-256color"
# The modes {
setw -g clock-mode-colour colour135
setw -g mode-attr bold
setw -g mode-fg colour196
setw -g mode-bg colour238
# }
# The panes {
set -g pane-border-bg colour235
set -g pane-border-fg colour238
set -g pane-active-border-bg colour236
set -g pane-active-border-fg colour51
# }
# The statusbar {
set -g status-position bottom
set -g status-bg colour234
set -g status-fg colour137
set -g status-attr dim
set -g status-left ''
set -g status-right '#[fg=colour233,bg=colour241,bold] %d/%m #[fg=colour233,bg=colour245,bold] %H:%M:%S '
set -g status-right-length 50
set -g status-left-length 20
setw -g window-status-current-fg colour81
setw -g window-status-current-bg colour238
setw -g window-status-current-attr bold
setw -g window-status-current-format ' #I#[fg=colour250]:#[fg=colour255]#W#[fg=colour50]#F '
setw -g window-status-fg colour138
setw -g window-status-bg colour235
setw -g window-status-attr none
setw -g window-status-format ' #I#[fg=colour237]:#[fg=colour250]#W#[fg=colour244]#F '
setw -g window-status-bell-attr bold
setw -g window-status-bell-fg colour255
setw -g window-status-bell-bg colour1
# }
# The messages {
set -g message-attr bold
set -g message-fg colour232
set -g message-bg colour166
# }
####################################################
### Settings MF
####################################################
set -g default-terminal "xterm"
set -g mode-mouse on
set -g mouse-select-pane on
set -g mouse-resize-pane
set -g mouse-select-window on
set-option -g detach-on-destroy off
# Scroll History
#set -g history-limit 30000
# Set ability to capture on start and restore on exit window data when running an application
setw -g alternate-screen on
# Lower escape timing from 500ms to 50ms for quicker response to scroll-buffer access.
set -s escape-time 50
# Use vim keybindings in copy mode
setw -g mode-keys vi
# Setup 'v' to begin selection as in Vim
bind-key -t vi-copy v begin-selection
bind-key -t vi-copy y copy-pipe "reattach-to-user-namespace pbcopy"
# Update default binding of `Enter` to also use copy-pipe
unbind -t vi-copy Enter
bind-key -t vi-copy Enter copy-pipe "reattach-to-user-namespace pbcopy"
# split panes using | and -
bind | split-window -h
bind - split-window -v
unbind '"'
unbind %
# Start windows and panes at 1, not 0
set -g base-index 1
setw -g pane-base-index 1
# reload config file (change file location to your the tmux.conf you want to use)
bind r source-file ~/.tmux.conf
#set-option -g status-right '#[fg=white,nobright][ #[fg=black,bright]#(uptime | rev | cut -d":" -f1 | rev | sed s/,//g )#[fg=white,nobright] ]'

6
.vim/.netrwhist Normal file
View File

@@ -0,0 +1,6 @@
let g:netrw_dirhistmax =10
let g:netrw_dirhist_cnt =4
let g:netrw_dirhist_1='/data/etc/nginx/sites-enabled'
let g:netrw_dirhist_2='/data/www/die-erben-ashans.de/html/map_'
let g:netrw_dirhist_3='/root/.ssh'
let g:netrw_dirhist_4='/data/www/die-erben-ashans.de/html/wcf/lib/data/user/usermap'

View File

@@ -0,0 +1,328 @@
" File: hybrid-light.vim
" Maintainer: Andrew Wong (w0ng)
" URL: https://github.com/w0ng/vim-hybrid
" Modified: 27 Jan 2013 06:05 AM AEST
" License: MIT
" Description:"{{{
" ----------------------------------------------------------------------------
" A clone of Solarized light with a custom colour palette. Currently a WIP.
"}}}
" Initialisation:"{{{
" ----------------------------------------------------------------------------
if !has("gui_running") && &t_Co < 256
finish
endif
set background=light
hi clear
if exists("syntax_on")
syntax reset
endif
let colors_name = "hybrid-light"
"}}}
" GUI And Cterm Palettes:"{{{
" ----------------------------------------------------------------------------
if has("gui_running")
let s:vmode = "gui"
let s:background = "#e4e4e4"
let s:foreground = "#000000"
let s:selection = "#bcbcbc"
let s:line = "#d0d0d0"
let s:comment = "#5f5f5f"
let s:red = "#5f0000"
let s:orange = "#875f00"
let s:yellow = "#5f5f00"
let s:green = "#005f00"
let s:aqua = "#005f5f"
let s:blue = "#00005f"
let s:purple = "#5f005f"
let s:window = "#9e9e9e"
let s:darkcolumn = "#808080"
let s:addbg = "#d7ffd7"
let s:changebg = "#d7d7ff"
let s:delbg = "#ffd7d7"
else
let s:vmode = "cterm"
let s:background = "254"
let s:foreground = "16"
let s:selection = "250"
let s:line = "252"
let s:comment = "59"
let s:red = "52"
let s:orange = "94"
let s:yellow = "58"
let s:green = "22"
let s:aqua = "23"
let s:blue = "17"
let s:purple = "53"
let s:window = "247"
let s:darkcolumn = "244"
let s:addbg = "194"
let s:changebg = "189"
let s:delbg = "224"
endif
"}}}
" Formatting Options:"{{{
" ----------------------------------------------------------------------------
let s:none = "NONE"
let s:t_none = "NONE"
let s:n = "NONE"
let s:c = ",undercurl"
let s:r = ",reverse"
let s:s = ",standout"
let s:b = ",bold"
let s:u = ",underline"
let s:i = ",italic"
"}}}
" Highlighting Primitives:"{{{
" ----------------------------------------------------------------------------
exe "let s:bg_none = ' ".s:vmode."bg=".s:none ."'"
exe "let s:bg_foreground = ' ".s:vmode."bg=".s:foreground."'"
exe "let s:bg_background = ' ".s:vmode."bg=".s:background."'"
exe "let s:bg_selection = ' ".s:vmode."bg=".s:selection ."'"
exe "let s:bg_line = ' ".s:vmode."bg=".s:line ."'"
exe "let s:bg_comment = ' ".s:vmode."bg=".s:comment ."'"
exe "let s:bg_red = ' ".s:vmode."bg=".s:red ."'"
exe "let s:bg_orange = ' ".s:vmode."bg=".s:orange ."'"
exe "let s:bg_yellow = ' ".s:vmode."bg=".s:yellow ."'"
exe "let s:bg_green = ' ".s:vmode."bg=".s:green ."'"
exe "let s:bg_aqua = ' ".s:vmode."bg=".s:aqua ."'"
exe "let s:bg_blue = ' ".s:vmode."bg=".s:blue ."'"
exe "let s:bg_purple = ' ".s:vmode."bg=".s:purple ."'"
exe "let s:bg_window = ' ".s:vmode."bg=".s:window ."'"
exe "let s:bg_darkcolumn = ' ".s:vmode."bg=".s:darkcolumn."'"
exe "let s:bg_addbg = ' ".s:vmode."bg=".s:addbg ."'"
exe "let s:bg_changebg = ' ".s:vmode."bg=".s:changebg ."'"
exe "let s:bg_delbg = ' ".s:vmode."bg=".s:delbg ."'"
exe "let s:fg_none = ' ".s:vmode."fg=".s:none ."'"
exe "let s:fg_foreground = ' ".s:vmode."fg=".s:foreground."'"
exe "let s:fg_background = ' ".s:vmode."fg=".s:background."'"
exe "let s:fg_selection = ' ".s:vmode."fg=".s:selection ."'"
exe "let s:fg_line = ' ".s:vmode."fg=".s:line ."'"
exe "let s:fg_comment = ' ".s:vmode."fg=".s:comment ."'"
exe "let s:fg_red = ' ".s:vmode."fg=".s:red ."'"
exe "let s:fg_orange = ' ".s:vmode."fg=".s:orange ."'"
exe "let s:fg_yellow = ' ".s:vmode."fg=".s:yellow ."'"
exe "let s:fg_green = ' ".s:vmode."fg=".s:green ."'"
exe "let s:fg_aqua = ' ".s:vmode."fg=".s:aqua ."'"
exe "let s:fg_blue = ' ".s:vmode."fg=".s:blue ."'"
exe "let s:fg_purple = ' ".s:vmode."fg=".s:purple ."'"
exe "let s:fg_window = ' ".s:vmode."fg=".s:window ."'"
exe "let s:fg_darkcolumn = ' ".s:vmode."fg=".s:darkcolumn."'"
exe "let s:fg_addbg = ' ".s:vmode."fg=".s:addbg ."'"
exe "let s:fg_changebg = ' ".s:vmode."fg=".s:changebg ."'"
exe "let s:fg_delbg = ' ".s:vmode."fg=".s:delbg ."'"
exe "let s:fmt_none = ' ".s:vmode."=NONE". " term=NONE" ."'"
exe "let s:fmt_bold = ' ".s:vmode."=NONE".s:b. " term=NONE".s:b ."'"
exe "let s:fmt_bldi = ' ".s:vmode."=NONE".s:b. " term=NONE".s:b ."'"
exe "let s:fmt_undr = ' ".s:vmode."=NONE".s:u. " term=NONE".s:u ."'"
exe "let s:fmt_undb = ' ".s:vmode."=NONE".s:u.s:b. " term=NONE".s:u.s:b."'"
exe "let s:fmt_undi = ' ".s:vmode."=NONE".s:u. " term=NONE".s:u ."'"
exe "let s:fmt_curl = ' ".s:vmode."=NONE".s:c. " term=NONE".s:c ."'"
exe "let s:fmt_ital = ' ".s:vmode."=NONE".s:i. " term=NONE".s:i ."'"
exe "let s:fmt_stnd = ' ".s:vmode."=NONE".s:s. " term=NONE".s:s ."'"
exe "let s:fmt_revr = ' ".s:vmode."=NONE".s:r. " term=NONE".s:r ."'"
exe "let s:fmt_revb = ' ".s:vmode."=NONE".s:r.s:b. " term=NONE".s:r.s:b."'"
if has("gui_running")
exe "let s:sp_none = ' guisp=".s:none ."'"
exe "let s:sp_foreground = ' guisp=".s:foreground."'"
exe "let s:sp_background = ' guisp=".s:background."'"
exe "let s:sp_selection = ' guisp=".s:selection ."'"
exe "let s:sp_line = ' guisp=".s:line ."'"
exe "let s:sp_comment = ' guisp=".s:comment ."'"
exe "let s:sp_red = ' guisp=".s:red ."'"
exe "let s:sp_orange = ' guisp=".s:orange ."'"
exe "let s:sp_yellow = ' guisp=".s:yellow ."'"
exe "let s:sp_green = ' guisp=".s:green ."'"
exe "let s:sp_aqua = ' guisp=".s:aqua ."'"
exe "let s:sp_blue = ' guisp=".s:blue ."'"
exe "let s:sp_purple = ' guisp=".s:purple ."'"
exe "let s:sp_window = ' guisp=".s:window ."'"
exe "let s:sp_addbg = ' guisp=".s:addbg ."'"
exe "let s:sp_changebg = ' guisp=".s:changebg ."'"
exe "let s:sp_delbg = ' guisp=".s:delbg ."'"
else
let s:sp_none = ""
let s:sp_foreground = ""
let s:sp_background = ""
let s:sp_selection = ""
let s:sp_line = ""
let s:sp_comment = ""
let s:sp_red = ""
let s:sp_orange = ""
let s:sp_yellow = ""
let s:sp_green = ""
let s:sp_aqua = ""
let s:sp_blue = ""
let s:sp_purple = ""
let s:sp_window = ""
let s:sp_addbg = ""
let s:sp_changebg = ""
let s:sp_delbg = ""
endif
"}}}
" Vim Highlighting: (see :help highlight-groups)"{{{
" ----------------------------------------------------------------------------
exe "hi! ColorColumn" .s:fg_none .s:bg_line .s:fmt_none
" Conceal"
" Cursor"
" CursorIM"
exe "hi! CursorColumn" .s:fg_none .s:bg_line .s:fmt_none
exe "hi! CursorLine" .s:fg_none .s:bg_line .s:fmt_none
exe "hi! Directory" .s:fg_blue .s:bg_none .s:fmt_none
exe "hi! DiffAdd" .s:fg_green .s:bg_addbg .s:fmt_none
exe "hi! DiffChange" .s:fg_purple .s:bg_changebg .s:fmt_none
exe "hi! DiffDelete" .s:fg_red .s:bg_delbg .s:fmt_none
exe "hi! DiffText" .s:fg_background .s:bg_purple .s:fmt_none
exe "hi! ErrorMsg" .s:fg_background .s:bg_red .s:fmt_stnd
exe "hi! VertSplit" .s:fg_window .s:bg_none .s:fmt_none
exe "hi! Folded" .s:fg_background .s:bg_darkcolumn .s:fmt_none
exe "hi! FoldColumn" .s:fg_none .s:bg_darkcolumn .s:fmt_none
exe "hi! SignColumn" .s:fg_none .s:bg_darkcolumn .s:fmt_none
" Incsearch"
exe "hi! LineNr" .s:fg_comment .s:bg_line .s:fmt_none
exe "hi! CursorLineNr" .s:fg_orange .s:bg_none .s:fmt_bold
exe "hi! MatchParen" .s:fg_background .s:bg_aqua .s:fmt_none
exe "hi! ModeMsg" .s:fg_green .s:bg_none .s:fmt_none
exe "hi! MoreMsg" .s:fg_green .s:bg_none .s:fmt_none
exe "hi! NonText" .s:fg_selection .s:bg_none .s:fmt_none
exe "hi! Normal" .s:fg_foreground .s:bg_background .s:fmt_none
exe "hi! Pmenu" .s:fg_foreground .s:bg_selection .s:fmt_none
exe "hi! PmenuSel" .s:fg_foreground .s:bg_selection .s:fmt_revr
" PmenuSbar"
" PmenuThumb"
exe "hi! Question" .s:fg_green .s:bg_none .s:fmt_none
exe "hi! Search" .s:fg_background .s:bg_yellow .s:fmt_none
exe "hi! SpecialKey" .s:fg_selection .s:bg_none .s:fmt_none
exe "hi! SpellBad" .s:fg_red .s:bg_none .s:fmt_undr
exe "hi! SpellCap" .s:fg_blue .s:bg_none .s:fmt_undr
exe "hi! SpellLocal" .s:fg_aqua .s:bg_none .s:fmt_undr
exe "hi! SpellRare" .s:fg_purple .s:bg_none .s:fmt_undr
exe "hi! StatusLine" .s:fg_comment .s:bg_background .s:fmt_revr
exe "hi! StatusLineNC" .s:fg_window .s:bg_foreground .s:fmt_revr
exe "hi! TabLine" .s:fg_foreground .s:bg_darkcolumn .s:fmt_revr
" TabLineFill"
" TabLineSel"
exe "hi! Title" .s:fg_yellow .s:bg_none .s:fmt_none
exe "hi! Visual" .s:fg_none .s:bg_selection .s:fmt_none
" VisualNos"
exe "hi! WarningMsg" .s:fg_red .s:bg_none .s:fmt_none
" WildMenu"
"}}}
" Generic Syntax Highlighting: (see :help group-name)"{{{
" ----------------------------------------------------------------------------
exe "hi! Comment" .s:fg_comment .s:bg_none .s:fmt_none
exe "hi! Constant" .s:fg_aqua .s:bg_none .s:fmt_none
"exe "hi! String" .s:fg_green .s:bg_none .s:fmt_none
" Character"
" Number"
" Boolean"
" Float"
exe "hi! Identifier" .s:fg_blue .s:bg_none .s:fmt_none
"exe "hi! Function" .s:fg_yellow .s:bg_none .s:fmt_none
exe "hi! Statement" .s:fg_green .s:bg_none .s:fmt_none
" Conditional"
" Repeat"
" Label"
"exe "hi! Operator" .s:fg_foreground .s:bg_none .s:fmt_none
" Keyword"
" Exception"
exe "hi! PreProc" .s:fg_orange .s:bg_none .s:fmt_none
" Include"
" Define"
" Macro"
" PreCondit"
exe "hi! Type" .s:fg_yellow .s:bg_none .s:fmt_none
" StorageClass"
"exe "hi! Structure" .s:fg_aqua .s:bg_none .s:fmt_none
" Typedef"
exe "hi! Special" .s:fg_red .s:bg_none .s:fmt_none
" SpecialChar"
" Tag"
" Delimiter"
" SpecialComment"
" Debug"
"
exe "hi! Underlined" .s:fg_purple .s:bg_none .s:fmt_none
exe "hi! Ignore" .s:fg_none .s:bg_none .s:fmt_none
exe "hi! Error" .s:fg_red .s:bg_none .s:fmt_undr
exe "hi! Todo" .s:fg_comment .s:bg_addbg .s:fmt_none
" Quickfix window
exe "hi! qfLineNr" .s:fg_yellow .s:bg_none .s:fmt_none
" qfFileName"
" qfLineNr"
" qfError"
"}}}
" Diff Syntax Highlighting:"{{{
" ----------------------------------------------------------------------------
" Diff
" diffOldFile
" diffNewFile
" diffFile
" diffOnly
" diffIdentical
" diffDiffer
" diffBDiffer
" diffIsA
" diffNoEOL
" diffCommon
hi! link diffRemoved Special
" diffChanged
hi! link diffAdded Statement
" diffLine
" diffSubname
" diffComment
"}}}
" Legal:"{{{
" ----------------------------------------------------------------------------
" Copyright (c) 2011 Ethan Schoonover
" Copyright (c) 2013 w0ng
"
" Permission is hereby granted, free of charge, to any per
" son obtaining a copy of this software and associated doc
" umentation files (the “Software”), to deal in the Soft
" ware without restriction, including without limitation
" the rights to use, copy, modify, merge, publish, distrib
" ute, sublicense, and/or sell copies of the Software, and
" to permit persons to whom the Software is furnished to do
" so, subject to the following conditions:
"
" The above copyright notice and this permission notice
" shall be included in all copies or substantial portions
" of the Software.
"
" THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY
" KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
" THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICU
" LAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
" AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
" DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CON
" TRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CON
" NECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
" THE SOFTWARE.
" }}}

448
.vim/colors/hybrid.vim Normal file
View File

@@ -0,0 +1,448 @@
" File: hybrid.vim
" Maintainer: Andrew Wong (w0ng)
" URL: https://github.com/w0ng/vim-hybrid
" Modified: 27 Jan 2013 07:33 AM AEST
" License: MIT
" Description:"{{{
" ----------------------------------------------------------------------------
" The RGB colour palette is taken from Tomorrow-Night.vim:
" https://github.com/chriskempson/vim-tomorrow-theme
"
" The syntax highlighting scheme is taken from jellybeans.vim:
" https://github.com/nanotech/jellybeans.vim
"
" The code taken from solarized.vim
" https://github.com/altercation/vim-colors-solarized
"}}}
" Requirements And Recommendations:"{{{
" ----------------------------------------------------------------------------
" This colourscheme is intended for use on:
" - gVim 7.3 for Linux, Mac and Windows.
" - Vim 7.3 for Linux, using a 256 colour enabled terminal.
"
" By default, Vim will use the closest matching cterm equivalent of the RGB
" colours.
"
" However, Due to the limited 256 palette, colours in Vim and gVim will still
" be noticeably different. In order to get a uniform appearance and the way
" that this colourscheme was intended, it is HIGHLY recommended that you:
"
" 1. Add these colours to ~/.Xresources:
"
" https://gist.github.com/3278077
"
" 2. Use Xresources colours by setting in ~/.vimrc:
"
" let g:hybrid_use_Xresources = 1
" colorscheme hybrid
"
" For iTerm2 users:
" 1. Install this color preset on your iTerm2:
"
" https://gist.github.com/luan/6362811
"
" 2. Use iTerm colours by setting in ~/.vimrc:
"
" let g:hybrid_use_iTerm_colors = 1
" colorscheme hybrid
"
"}}}
" Initialisation:"{{{
" ----------------------------------------------------------------------------
if !has("gui_running") && &t_Co < 256
finish
endif
if !exists("g:hybrid_use_Xresources")
let g:hybrid_use_Xresources = 0
endif
if !exists("g:hybrid_use_iTerm_colors")
let g:hybrid_use_iTerm_colors = 0
endif
set background=dark
hi clear
if exists("syntax_on")
syntax reset
endif
let colors_name = "hybrid"
"}}}
" GUI And Cterm Palettes:"{{{
" ----------------------------------------------------------------------------
if has("gui_running")
let s:vmode = "gui"
let s:background = "#1d1f21"
let s:foreground = "#c5c8c6"
let s:selection = "#373b41"
let s:line = "#282a2e"
let s:comment = "#707880"
let s:red = "#cc6666"
let s:orange = "#de935f"
let s:yellow = "#f0c674"
let s:green = "#b5bd68"
let s:aqua = "#8abeb7"
let s:blue = "#81a2be"
let s:purple = "#b294bb"
let s:window = "#303030"
let s:darkcolumn = "#1c1c1c"
let s:addbg = "#5F875F"
let s:addfg = "#d7ffaf"
let s:changebg = "#5F5F87"
let s:changefg = "#d7d7ff"
let s:darkblue = "#00005f"
let s:darkcyan = "#005f5f"
let s:darkred = "#5f0000"
let s:darkpurple = "#5f005f"
else
let s:vmode = "cterm"
let s:background = "234"
let s:window = "236"
let s:darkcolumn = "234"
let s:addbg = "65"
let s:addfg = "193"
let s:changebg = "60"
let s:changefg = "189"
let s:darkblue = "17"
let s:darkcyan = "24"
let s:darkred = "52"
let s:darkpurple = "53"
if g:hybrid_use_Xresources == 1
let s:foreground = "15" " White
let s:selection = "8" " DarkGrey
let s:line = "0" " Black
let s:comment = "7" " LightGrey
let s:red = "9" " LightRed
let s:orange = "3" " DarkYellow
let s:yellow = "11" " LightYellow
let s:green = "10" " LightGreen
let s:aqua = "14" " LightCyan
let s:blue = "12" " LightBlue
let s:purple = "13" " LightMagenta
elseif g:hybrid_use_iTerm_colors == 1
let s:background = "NONE"
let s:foreground = "7"
let s:selection = "0"
let s:line = "0"
let s:comment = "15"
let s:red = "1"
let s:orange = "11"
let s:yellow = "3"
let s:green = "2"
let s:aqua = "6"
let s:blue = "4"
let s:purple = "5"
else
let s:foreground = "250"
let s:selection = "237"
let s:line = "235"
let s:comment = "243"
let s:red = "167"
let s:orange = "173"
let s:yellow = "221"
let s:green = "143"
let s:aqua = "109"
let s:blue = "110"
let s:purple = "139"
endif
endif
"}}}
" Formatting Options:"{{{
" ----------------------------------------------------------------------------
let s:none = "NONE"
let s:t_none = "NONE"
let s:n = "NONE"
let s:c = ",undercurl"
let s:r = ",reverse"
let s:s = ",standout"
let s:b = ",bold"
let s:u = ",underline"
let s:i = ",italic"
"}}}
" Highlighting Primitives:"{{{
" ----------------------------------------------------------------------------
exe "let s:bg_none = ' ".s:vmode."bg=".s:none ."'"
exe "let s:bg_foreground = ' ".s:vmode."bg=".s:foreground."'"
exe "let s:bg_background = ' ".s:vmode."bg=".s:background."'"
exe "let s:bg_selection = ' ".s:vmode."bg=".s:selection ."'"
exe "let s:bg_line = ' ".s:vmode."bg=".s:line ."'"
exe "let s:bg_comment = ' ".s:vmode."bg=".s:comment ."'"
exe "let s:bg_red = ' ".s:vmode."bg=".s:red ."'"
exe "let s:bg_orange = ' ".s:vmode."bg=".s:orange ."'"
exe "let s:bg_yellow = ' ".s:vmode."bg=".s:yellow ."'"
exe "let s:bg_green = ' ".s:vmode."bg=".s:green ."'"
exe "let s:bg_aqua = ' ".s:vmode."bg=".s:aqua ."'"
exe "let s:bg_blue = ' ".s:vmode."bg=".s:blue ."'"
exe "let s:bg_purple = ' ".s:vmode."bg=".s:purple ."'"
exe "let s:bg_window = ' ".s:vmode."bg=".s:window ."'"
exe "let s:bg_darkcolumn = ' ".s:vmode."bg=".s:darkcolumn."'"
exe "let s:bg_addbg = ' ".s:vmode."bg=".s:addbg ."'"
exe "let s:bg_addfg = ' ".s:vmode."bg=".s:addfg ."'"
exe "let s:bg_changebg = ' ".s:vmode."bg=".s:changebg ."'"
exe "let s:bg_changefg = ' ".s:vmode."bg=".s:changefg ."'"
exe "let s:bg_darkblue = ' ".s:vmode."bg=".s:darkblue ."'"
exe "let s:bg_darkcyan = ' ".s:vmode."bg=".s:darkcyan ."'"
exe "let s:bg_darkred = ' ".s:vmode."bg=".s:darkred ."'"
exe "let s:bg_darkpurple = ' ".s:vmode."bg=".s:darkpurple."'"
exe "let s:fg_none = ' ".s:vmode."fg=".s:none ."'"
exe "let s:fg_foreground = ' ".s:vmode."fg=".s:foreground."'"
exe "let s:fg_background = ' ".s:vmode."fg=".s:background."'"
exe "let s:fg_selection = ' ".s:vmode."fg=".s:selection ."'"
exe "let s:fg_line = ' ".s:vmode."fg=".s:line ."'"
exe "let s:fg_comment = ' ".s:vmode."fg=".s:comment ."'"
exe "let s:fg_red = ' ".s:vmode."fg=".s:red ."'"
exe "let s:fg_orange = ' ".s:vmode."fg=".s:orange ."'"
exe "let s:fg_yellow = ' ".s:vmode."fg=".s:yellow ."'"
exe "let s:fg_green = ' ".s:vmode."fg=".s:green ."'"
exe "let s:fg_aqua = ' ".s:vmode."fg=".s:aqua ."'"
exe "let s:fg_blue = ' ".s:vmode."fg=".s:blue ."'"
exe "let s:fg_purple = ' ".s:vmode."fg=".s:purple ."'"
exe "let s:fg_window = ' ".s:vmode."fg=".s:window ."'"
exe "let s:fg_darkcolumn = ' ".s:vmode."fg=".s:darkcolumn."'"
exe "let s:fg_addbg = ' ".s:vmode."fg=".s:addbg ."'"
exe "let s:fg_addfg = ' ".s:vmode."fg=".s:addfg ."'"
exe "let s:fg_changebg = ' ".s:vmode."fg=".s:changebg ."'"
exe "let s:fg_changefg = ' ".s:vmode."fg=".s:changefg ."'"
exe "let s:fg_darkblue = ' ".s:vmode."fg=".s:darkblue ."'"
exe "let s:fg_darkcyan = ' ".s:vmode."fg=".s:darkcyan ."'"
exe "let s:fg_darkred = ' ".s:vmode."fg=".s:darkred ."'"
exe "let s:fg_darkpurple = ' ".s:vmode."fg=".s:darkpurple."'"
exe "let s:fmt_none = ' ".s:vmode."=NONE". " term=NONE" ."'"
exe "let s:fmt_bold = ' ".s:vmode."=NONE".s:b. " term=NONE".s:b ."'"
exe "let s:fmt_bldi = ' ".s:vmode."=NONE".s:b. " term=NONE".s:b ."'"
exe "let s:fmt_undr = ' ".s:vmode."=NONE".s:u. " term=NONE".s:u ."'"
exe "let s:fmt_undb = ' ".s:vmode."=NONE".s:u.s:b. " term=NONE".s:u.s:b."'"
exe "let s:fmt_undi = ' ".s:vmode."=NONE".s:u. " term=NONE".s:u ."'"
exe "let s:fmt_curl = ' ".s:vmode."=NONE".s:c. " term=NONE".s:c ."'"
exe "let s:fmt_ital = ' ".s:vmode."=NONE".s:i. " term=NONE".s:i ."'"
exe "let s:fmt_stnd = ' ".s:vmode."=NONE".s:s. " term=NONE".s:s ."'"
exe "let s:fmt_revr = ' ".s:vmode."=NONE".s:r. " term=NONE".s:r ."'"
exe "let s:fmt_revb = ' ".s:vmode."=NONE".s:r.s:b. " term=NONE".s:r.s:b."'"
if has("gui_running")
exe "let s:sp_none = ' guisp=".s:none ."'"
exe "let s:sp_foreground = ' guisp=".s:foreground."'"
exe "let s:sp_background = ' guisp=".s:background."'"
exe "let s:sp_selection = ' guisp=".s:selection ."'"
exe "let s:sp_line = ' guisp=".s:line ."'"
exe "let s:sp_comment = ' guisp=".s:comment ."'"
exe "let s:sp_red = ' guisp=".s:red ."'"
exe "let s:sp_orange = ' guisp=".s:orange ."'"
exe "let s:sp_yellow = ' guisp=".s:yellow ."'"
exe "let s:sp_green = ' guisp=".s:green ."'"
exe "let s:sp_aqua = ' guisp=".s:aqua ."'"
exe "let s:sp_blue = ' guisp=".s:blue ."'"
exe "let s:sp_purple = ' guisp=".s:purple ."'"
exe "let s:sp_window = ' guisp=".s:window ."'"
exe "let s:sp_addbg = ' guisp=".s:addbg ."'"
exe "let s:sp_addfg = ' guisp=".s:addfg ."'"
exe "let s:sp_changebg = ' guisp=".s:changebg ."'"
exe "let s:sp_changefg = ' guisp=".s:changefg ."'"
exe "let s:sp_darkblue = ' guisp=".s:darkblue ."'"
exe "let s:sp_darkcyan = ' guisp=".s:darkcyan ."'"
exe "let s:sp_darkred = ' guisp=".s:darkred ."'"
exe "let s:sp_darkpurple = ' guisp=".s:darkpurple."'"
else
let s:sp_none = ""
let s:sp_foreground = ""
let s:sp_background = ""
let s:sp_selection = ""
let s:sp_line = ""
let s:sp_comment = ""
let s:sp_red = ""
let s:sp_orange = ""
let s:sp_yellow = ""
let s:sp_green = ""
let s:sp_aqua = ""
let s:sp_blue = ""
let s:sp_purple = ""
let s:sp_window = ""
let s:sp_addbg = ""
let s:sp_addfg = ""
let s:sp_changebg = ""
let s:sp_changefg = ""
let s:sp_darkblue = ""
let s:sp_darkcyan = ""
let s:sp_darkred = ""
let s:sp_darkpurple = ""
endif
"}}}
" Vim Highlighting: (see :help highlight-groups)"{{{
" ----------------------------------------------------------------------------
exe "hi! ColorColumn" .s:fg_none .s:bg_line .s:fmt_none
" Conceal"
" Cursor"
" CursorIM"
exe "hi! CursorColumn" .s:fg_none .s:bg_line .s:fmt_none
exe "hi! CursorLine" .s:fg_none .s:bg_line .s:fmt_none
exe "hi! Directory" .s:fg_blue .s:bg_none .s:fmt_none
exe "hi! DiffAdd" .s:fg_addfg .s:bg_addbg .s:fmt_none
exe "hi! DiffChange" .s:fg_changefg .s:bg_changebg .s:fmt_none
exe "hi! DiffDelete" .s:fg_background .s:bg_red .s:fmt_none
exe "hi! DiffText" .s:fg_background .s:bg_blue .s:fmt_none
exe "hi! ErrorMsg" .s:fg_background .s:bg_red .s:fmt_stnd
exe "hi! VertSplit" .s:fg_window .s:bg_none .s:fmt_none
exe "hi! Folded" .s:fg_comment .s:bg_darkcolumn .s:fmt_none
exe "hi! FoldColumn" .s:fg_none .s:bg_darkcolumn .s:fmt_none
exe "hi! SignColumn" .s:fg_none .s:bg_darkcolumn .s:fmt_none
" Incsearch"
exe "hi! LineNr" .s:fg_selection .s:bg_none .s:fmt_none
exe "hi! CursorLineNr" .s:fg_yellow .s:bg_none .s:fmt_bold
exe "hi! MatchParen" .s:fg_background .s:bg_changebg .s:fmt_none
exe "hi! ModeMsg" .s:fg_green .s:bg_none .s:fmt_none
exe "hi! MoreMsg" .s:fg_green .s:bg_none .s:fmt_none
exe "hi! NonText" .s:fg_selection .s:bg_none .s:fmt_none
exe "hi! Pmenu" .s:fg_foreground .s:bg_selection .s:fmt_none
exe "hi! PmenuSel" .s:fg_foreground .s:bg_selection .s:fmt_revr
" PmenuSbar"
" PmenuThumb"
exe "hi! Question" .s:fg_green .s:bg_none .s:fmt_none
exe "hi! Search" .s:fg_background .s:bg_yellow .s:fmt_none
exe "hi! SpecialKey" .s:fg_selection .s:bg_none .s:fmt_none
exe "hi! SpellCap" .s:fg_blue .s:bg_darkblue .s:fmt_undr
exe "hi! SpellLocal" .s:fg_aqua .s:bg_darkcyan .s:fmt_undr
exe "hi! SpellBad" .s:fg_red .s:bg_darkred .s:fmt_undr
exe "hi! SpellRare" .s:fg_purple .s:bg_darkpurple .s:fmt_undr
exe "hi! StatusLine" .s:fg_comment .s:bg_background .s:fmt_revr
exe "hi! StatusLineNC" .s:fg_window .s:bg_comment .s:fmt_revr
exe "hi! TabLine" .s:fg_foreground .s:bg_darkcolumn .s:fmt_revr
" TabLineFill"
" TabLineSel"
exe "hi! Title" .s:fg_yellow .s:bg_none .s:fmt_none
exe "hi! Visual" .s:fg_none .s:bg_selection .s:fmt_none
" VisualNos"
exe "hi! WarningMsg" .s:fg_red .s:bg_none .s:fmt_none
" WildMenu"
" Use Xresources for background colour
if has('gui_running') || (g:hybrid_use_Xresources != 1 && g:hybrid_use_iTerm_colors != 1)
exe "hi! Normal" .s:fg_foreground .s:bg_background .s:fmt_none
else
exe "hi! Normal" .s:fg_foreground .s:bg_none .s:fmt_none
endif
"}}}
" Generic Syntax Highlighting: (see :help group-name)"{{{
" ----------------------------------------------------------------------------
exe "hi! Comment" .s:fg_comment .s:bg_none .s:fmt_none
exe "hi! Constant" .s:fg_red .s:bg_none .s:fmt_none
exe "hi! String" .s:fg_green .s:bg_none .s:fmt_none
" Character"
" Number"
" Boolean"
" Float"
exe "hi! Identifier" .s:fg_purple .s:bg_none .s:fmt_none
exe "hi! Function" .s:fg_yellow .s:bg_none .s:fmt_none
exe "hi! Statement" .s:fg_blue .s:bg_none .s:fmt_none
" Conditional"
" Repeat"
" Label"
exe "hi! Operator" .s:fg_aqua .s:bg_none .s:fmt_none
" Keyword"
" Exception"
exe "hi! PreProc" .s:fg_aqua .s:bg_none .s:fmt_none
" Include"
" Define"
" Macro"
" PreCondit"
exe "hi! Type" .s:fg_orange .s:bg_none .s:fmt_none
" StorageClass"
exe "hi! Structure" .s:fg_aqua .s:bg_none .s:fmt_none
" Typedef"
exe "hi! Special" .s:fg_green .s:bg_none .s:fmt_none
" SpecialChar"
" Tag"
" Delimiter"
" SpecialComment"
" Debug"
"
exe "hi! Underlined" .s:fg_blue .s:bg_none .s:fmt_none
exe "hi! Ignore" .s:fg_none .s:bg_none .s:fmt_none
exe "hi! Error" .s:fg_red .s:bg_darkred .s:fmt_undr
exe "hi! Todo" .s:fg_addfg .s:bg_none .s:fmt_none
" Quickfix window highlighting
exe "hi! qfLineNr" .s:fg_yellow .s:bg_none .s:fmt_none
" qfFileName"
" qfLineNr"
" qfError"
"}}}
" Diff Syntax Highlighting:"{{{
" ----------------------------------------------------------------------------
" Diff
" diffOldFile
" diffNewFile
" diffFile
" diffOnly
" diffIdentical
" diffDiffer
" diffBDiffer
" diffIsA
" diffNoEOL
" diffCommon
hi! link diffRemoved Constant
" diffChanged
hi! link diffAdded Special
" diffLine
" diffSubname
" diffComment
"}}}
" Legal:"{{{
" ----------------------------------------------------------------------------
" Copyright (c) 2011 Ethan Schoonover
" Copyright (c) 2009-2012 NanoTech
" Copyright (c) 2012 w0ng
"
" Permission is hereby granted, free of charge, to any per
" son obtaining a copy of this software and associated doc
" umentation files (the “Software”), to deal in the Soft
" ware without restriction, including without limitation
" the rights to use, copy, modify, merge, publish, distrib
" ute, sublicense, and/or sell copies of the Software, and
" to permit persons to whom the Software is furnished to do
" so, subject to the following conditions:
"
" The above copyright notice and this permission notice
" shall be included in all copies or substantial portions
" of the Software.
"
" THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY
" KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
" THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICU
" LAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
" AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
" DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CON
" TRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CON
" NECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
" THE SOFTWARE.
" }}}
" My tweaks (scwood)
hi ColorColumn cterm=NONE ctermbg=233 ctermfg=NONE
hi StatusLine cterm=none ctermbg=235 ctermfg=015
hi StatusLineNC cterm=none ctermbg=235 ctermfg=NONE
hi CursorLine cterm=NONE ctermbg=236 ctermfg=NONE
let g:indentLine_color_term = 237

View File

@@ -0,0 +1,36 @@
"
" Toggle mouse plugin for quickly toggling mouse between Vim and terminal
" Maintainer: Vincent Driessen <vincent@datafox.nl>
" Version: Vim 7 (may work with lower Vim versions, but not tested)
" URL: http://github.com/nvie/vim-togglemouse
"
" Only do this when not done yet for this buffer
if exists("b:loaded_toggle_mouse_plugin")
finish
endif
let b:loaded_toggle_mouse_plugin = 1
fun! s:ToggleMouse()
if !exists("s:old_mouse")
let s:old_mouse = "a"
endif
if &mouse == ""
let &mouse = s:old_mouse
echo "Mouse is for Vim (" . &mouse . ")"
else
let s:old_mouse = &mouse
let &mouse=""
echo "Mouse is for terminal"
endif
endfunction
" Add mappings, unless the user didn't want this.
" The default mapping is registered under to <F12> by default, unless the user
" remapped it already (or a mapping exists already for <F12>)
if !exists("no_plugin_maps") && !exists("no_toggle_mouse_maps")
if !hasmapto('<SID>ToggleMouse()')
noremap <F12> :call <SID>ToggleMouse()<CR>
inoremap <F12> <Esc>:call <SID>ToggleMouse()<CR>a
endif
endif

400
.vimrc Normal file
View File

@@ -0,0 +1,400 @@
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Maintainer:
" Amir Salihefendic
" http://amix.dk - amix@amix.dk
"
" Version:
" 5.0 - 29/05/12 15:43:36
"
" Blog_post:
" http://amix.dk/blog/post/19691#The-ultimate-Vim-configuration-on-Github
"
" Awesome_version:
" Get this config, nice color schemes and lots of plugins!
"
" Install the awesome version from:
"
" https://github.com/amix/vimrc
"
" Syntax_highlighted:
" http://amix.dk/vim/vimrc.html
"
" Raw_version:
" http://amix.dk/vim/vimrc.txt
"
" Sections:
" -> General
" -> VIM user interface
" -> Colors and Fonts
" -> Files and backups
" -> Text, tab and indent related
" -> Visual mode related
" -> Moving around, tabs and buffers
" -> Status line
" -> Editing mappings
" -> vimgrep searching and cope displaying
" -> Spell checking
" -> Misc
" -> Helper functions
"
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" => General
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Sets how many lines of history VIM has to remember
set history=700
" Enable filetype plugins
filetype plugin on
filetype indent on
" Set to auto read when a file is changed from the outside
set autoread
" With a map leader it's possible to do extra key combinations
" like <leader>w saves the current file
let mapleader = ","
let g:mapleader = ","
" Fast saving
nmap <leader>w :w!<cr>
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" => VIM user interface
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Set 7 lines to the cursor - when moving vertically using j/k
set so=7
" Turn on the WiLd menu
set wildmenu
" Ignore compiled files
set wildignore=*.o,*~,*.pyc
"Always show current position
set ruler
" Height of the command bar
set cmdheight=1
" A buffer becomes hidden when it is abandoned
set hid
" Configure backspace so it acts as it should act
set backspace=eol,start,indent
set whichwrap+=<,>,h,l
" Ignore case when searching
set ignorecase
" When searching try to be smart about cases
set smartcase
" Highlight search results
set hlsearch
" Makes search act like search in modern browsers
set incsearch
" Don't redraw while executing macros (good performance config)
set lazyredraw
" For regular expressions turn magic on
set magic
" Show matching brackets when text indicator is over them
set showmatch
" How many tenths of a second to blink when matching brackets
set mat=2
" No annoying sound on errors
set noerrorbells
set novisualbell
set t_vb=
set tm=500
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" => Colors and Fonts
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Enable syntax highlighting
syntax enable
"colorscheme desert
colorscheme hybrid-light
"set background=dark
" Set extra options when running in GUI mode
if has("gui_running")
set guioptions-=T
set guioptions+=e
set t_Co=256
set guitablabel=%M\ %t
endif
" Set utf8 as standard encoding and en_US as the standard language
set encoding=utf8
" Use Unix as the standard file type
set ffs=unix,dos,mac
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" => Files, backups and undo
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Turn backup off, since most stuff is in SVN, git et.c anyway...
set nobackup
set nowb
set noswapfile
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" => Text, tab and indent related
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Use spaces instead of tabs
set expandtab
" Be smart when using tabs ;)
set smarttab
" 1 tab == 4 spaces
set shiftwidth=3
set tabstop=3
" Linebreak on 500 characters
set lbr
set tw=500
"set ai "Auto indent
set si "Smart indent
set wrap "Wrap lines
""""""""""""""""""""""""""""""
" => Visual mode related
""""""""""""""""""""""""""""""
" Visual mode pressing * or # searches for the current selection
" Super useful! From an idea by Michael Naumann
vnoremap <silent> * :call VisualSelection('f')<CR>
vnoremap <silent> # :call VisualSelection('b')<CR>
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" => Moving around, tabs, windows and buffers
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Treat long lines as break lines (useful when moving around in them)
map j gj
map k gk
" Map <Space> to / (search) and Ctrl-<Space> to ? (backwards search)
map <space> /
map <c-space> ?
" Disable highlight when <leader><cr> is pressed
map <silent> <leader><cr> :noh<cr>
" Smart way to move between windows
map <C-j> <C-W>j
map <C-k> <C-W>k
map <C-h> <C-W>h
map <C-l> <C-W>l
" Close the current buffer
map <leader>bd :Bclose<cr>
" Close all the buffers
map <leader>ba :1,1000 bd!<cr>
" Useful mappings for managing tabs
map <leader>tn :tabnew<cr>
map <leader>to :tabonly<cr>
map <leader>tc :tabclose<cr>
map <leader>tm :tabmove
" Opens a new tab with the current buffer's path
" Super useful when editing files in the same directory
map <leader>te :tabedit <c-r>=expand("%:p:h")<cr>/
" Switch CWD to the directory of the open buffer
map <leader>cd :cd %:p:h<cr>:pwd<cr>
" Specify the behavior when switching between buffers
try
set switchbuf=useopen,usetab,newtab
set stal=2
catch
endtry
" Return to last edit position when opening files (You want this!)
autocmd BufReadPost *
\ if line("'\"") > 0 && line("'\"") <= line("$") |
\ exe "normal! g`\"" |
\ endif
" Remember info about open buffers on close
set viminfo^=%
""""""""""""""""""""""""""""""
" => Status line
""""""""""""""""""""""""""""""
" Always show the status line
set laststatus=2
" Format the status line
set statusline=\ %{HasPaste()}%F%m%r%h\ %w\ \ CWD:\ %r%{getcwd()}%h\ \ \ Line:\ %l
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" => Editing mappings
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Remap VIM 0 to first non-blank character
map 0 ^
" Move a line of text using ALT+[jk] or Comamnd+[jk] on mac
nmap <M-j> mz:m+<cr>`z
nmap <M-k> mz:m-2<cr>`z
vmap <M-j> :m'>+<cr>`<my`>mzgv`yo`z
vmap <M-k> :m'<-2<cr>`>my`<mzgv`yo`z
if has("mac") || has("macunix")
nmap <D-j> <M-j>
nmap <D-k> <M-k>
vmap <D-j> <M-j>
vmap <D-k> <M-k>
endif
" Delete trailing white space on save, useful for Python and CoffeeScript ;)
func! DeleteTrailingWS()
exe "normal mz"
%s/\s\+$//ge
exe "normal `z"
endfunc
autocmd BufWrite *.py :call DeleteTrailingWS()
autocmd BufWrite *.coffee :call DeleteTrailingWS()
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" => vimgrep searching and cope displaying
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" When you press gv you vimgrep after the selected text
vnoremap <silent> gv :call VisualSelection('gv')<CR>
" Open vimgrep and put the cursor in the right position
map <leader>g :vimgrep // **/*.<left><left><left><left><left><left><left>
" Vimgreps in the current file
map <leader><space> :vimgrep // <C-R>%<C-A><right><right><right><right><right><right><right><right><right>
" When you press <leader>r you can search and replace the selected text
vnoremap <silent> <leader>r :call VisualSelection('replace')<CR>
" Do :help cope if you are unsure what cope is. It's super useful!
"
" When you search with vimgrep, display your results in cope by doing:
" <leader>cc
"
" To go to the next search result do:
" <leader>n
"
" To go to the previous search results do:
" <leader>p
"
map <leader>cc :botright cope<cr>
map <leader>co ggVGy:tabnew<cr>:set syntax=qf<cr>pgg
map <leader>n :cn<cr>
map <leader>p :cp<cr>
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" => Spell checking
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Pressing ,ss will toggle and untoggle spell checking
map <leader>ss :setlocal spell!<cr>
" Shortcuts using <leader>
map <leader>sn ]s
map <leader>sp [s
map <leader>sa zg
map <leader>s? z=
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" => Misc
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Remove the Windows ^M - when the encodings gets messed up
noremap <Leader>m mmHmt:%s/<C-V><cr>//ge<cr>'tzt'm
" Quickly open a buffer for scripbble
map <leader>q :e ~/buffer<cr>
" Toggle paste mode on and off
map <leader>pp :setlocal paste!<cr>
set pastetoggle=<F1>
" Define Mouse Mode
"set mouse=a
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" => Helper functions
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
function! CmdLine(str)
exe "menu Foo.Bar :" . a:str
emenu Foo.Bar
unmenu Foo
endfunction
function! VisualSelection(direction) range
let l:saved_reg = @"
execute "normal! vgvy"
let l:pattern = escape(@", '\\/.*$^~[]')
let l:pattern = substitute(l:pattern, "\n$", "", "")
if a:direction == 'b'
execute "normal ?" . l:pattern . "^M"
elseif a:direction == 'gv'
call CmdLine("vimgrep " . '/'. l:pattern . '/' . ' **/*.')
elseif a:direction == 'replace'
call CmdLine("%s" . '/'. l:pattern . '/')
elseif a:direction == 'f'
execute "normal /" . l:pattern . "^M"
endif
let @/ = l:pattern
let @" = l:saved_reg
endfunction
" Returns true if paste mode is enabled
function! HasPaste()
if &paste
return 'PASTE MODE '
en
return ''
endfunction
" Don't close window, when deleting a buffer
command! Bclose call <SID>BufcloseCloseIt()
function! <SID>BufcloseCloseIt()
let l:currentBufNum = bufnr("%")
let l:alternateBufNum = bufnr("#")
if buflisted(l:alternateBufNum)
buffer #
else
bnext
endif
if bufnr("%") == l:currentBufNum
new
endif
if buflisted(l:currentBufNum)
execute("bdelete! ".l:currentBufNum)
endif
endfunction

View File

@@ -1,2 +1,29 @@
# dotfiles
Collection of various config files
# Dotfiles
## Overview
This repo is a skeleton/template repo for tracking my dotfiles. It contains a utility ([dfm](https://github.com/justone/dfm)) to help with managing and
updating your dotfiles.
## Using this repo
First, fork this repo.
Then, add your dotfiles:
$ git clone https://github.com/Eragos/dotfiles.git .dotfiles
$ cd .dotfiles
$ # add and edit files you want
$ git push origin master
Finally, to install your dotfiles onto a new system:
$ cd $HOME
$ git clone git@github.com:username/dotfiles.git .dotfiles
$ ./.dotfiles/bin/dfm install # creates symlinks to install files
## Full documentation
For more information, check out the [wiki](http://github.com/justone/dotfiles/wiki).
You can also run <tt>dfm --help</tt>.

28
aliases Executable file
View File

@@ -0,0 +1,28 @@
# Dir navigation
alias ..='cd ..'
alias ...='cd ../..'
alias ....='cd ../../..'
alias ~='cd ~'
alias la='ls -la'
alias ls='ls -GFh'
# Utilities
alias a="ack -ia"
alias b="bundle exec"
alias c="pygmentize -O style=monokai -f console256 -g"
alias d="du -h -d=1"
alias df="df -h"
alias g="git"
alias grep='GREP_COLOR="1;37;45" LANG=C grep --color=auto'
alias h="history"
alias httpdump="sudo tcpdump -i en1 -n -s 0 -w - | grep -a -o -E \"Host\: .*|GET \/.*\""
alias ip="curl -s http://checkip.dyndns.com/ | sed 's/[^0-9\.]//g'"
alias localip="ipconfig getifaddr en1"
#alias mp="mvim -p"
#alias rkt="racket -il xrepl"
alias tmux="tmux -2"
alias view="vim -p -R"
alias vp="vim -p"

1140
bin/dfm Executable file

File diff suppressed because it is too large Load Diff