Last active
May 17, 2018 04:15
-
-
Save brunoluiz/441afa6dd0945996f5f45cc5500ca1ed to your computer and use it in GitHub Desktop.
dotfiles
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Use vim keybindings in copy mode | |
setw -g mode-keys vi | |
# start selecting text typing 'v' key (once you are in copy mode) | |
bind-key -t vi-copy v begin-selection | |
# copy selected text to the system's clipboard | |
bind-key -t vi-copy y copy-pipe "xclip -sel clip -i" | |
# MacOS specific settings (clipboard mostly) | |
if-shell 'test "$(uname -s)" = Darwin' 'source-file ~/.tmux-macos.conf' | |
# remap prefix from 'C-b' to 'C-a' | |
unbind C-b | |
set-option -g prefix C-a | |
bind-key C-a send-prefix | |
# enables mouse support | |
set -g mouse on | |
# sane scrolling | |
set -g terminal-overrides 'xterm*:smcup@:rmcup@' | |
set -g default-terminal 'xterm' | |
# List of plugins | |
set -g @plugin 'tmux-plugins/tpm' | |
set -g @plugin 'tmux-plugins/tmux-sensible' | |
set -g @plugin 'tmux-plugins/tmux-pain-control' | |
set -g @plugin 'tmux-plugins/tmux-prefix-highlight' | |
###################### | |
### 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 '#{prefix_highlight} #[fg=colour233,bg=colour241,bold] %d/%m #[fg=colour233,bg=colour245,bold] %H:%M:%S ' | |
set -g status-right-length 60 | |
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 | |
# } | |
# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf) | |
run '~/.tmux/plugins/tpm/tpm' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
set nocompatible " be iMproved, required | |
filetype off " required | |
" set the runtime path to include Vundle and initialize | |
set rtp+=~/.vim/bundle/Vundle.vim | |
call vundle#begin() | |
Plugin 'airblade/vim-gitgutter' | |
Plugin 'chriskempson/base16-vim' | |
Plugin 'ctrlpvim/ctrlp.vim' | |
Plugin 'editorconfig/editorconfig-vim' | |
Plugin 'ervandew/supertab' | |
Plugin 'jiangmiao/auto-pairs' | |
Plugin 'ludovicchabant/vim-gutentags' | |
Plugin 'scrooloose/nerdcommenter' | |
Plugin 'scrooloose/nerdtree' | |
Plugin 'sheerun/vim-polyglot' | |
Plugin 'tpope/vim-fugitive' | |
Plugin 'tpope/vim-repeat' | |
Plugin 'tpope/vim-surround' | |
Plugin 'vim-airline/vim-airline' | |
Plugin 'vim-airline/vim-airline-themes' | |
Plugin 'VundleVim/Vundle.vim' | |
Plugin 'w0rp/ale' | |
" Plugin 'tpope/vim-abolish' " still studying if it's worth my attention | |
call vundle#end() " required | |
filetype plugin indent on " required | |
" airline | |
let g:airline#extensions#tabline#enabled=1 | |
let g:airline_powerline_fonts=1 | |
let g:airline_skip_empty_sections=1 | |
let g:airline_powerline_fonts=1 | |
set laststatus=2 | |
" nerdtree | |
let g:NERDTreeDirArrowExpandable = '▸' | |
let g:NERDTreeDirArrowCollapsible = '▾' | |
let g:NERDTreeQuitOnOpen = 1 | |
map <C-n> :NERDTreeToggle<CR> | |
" nerdcommenter | |
let g:NERDSpaceDelims = 1 | |
let g:NERDCommentEmptyLines = 1 | |
let g:NERDCompactSexyComs = 1 | |
" ctrlp | |
" only show files that are not ignored by git | |
let g:ctrlp_user_command = ['.git/', 'git --git-dir=%s/.git ls-files -oc --exclude-standard'] | |
let g:ctrlp_map = '<c-p>' | |
let ctrlp_switch_buffer=0 | |
" keyboard | |
set tabstop=2 | |
set softtabstop=4 | |
set shiftwidth=4 | |
set expandtab " convert tabs to spaces | |
set backspace=2 " allows the same system backspace behavior | |
" tweaks and visuals | |
set number " show line numbers | |
set cursorline " highlight actual line | |
set showmatch " show matching items, such as [], {}... | |
set wildmenu " cmd auto-completion | |
set ruler " show line and column | |
set hidden " allows buffer switching without have to save the actual | |
set confirm " when leaving without save, shows a confirmation pop-up (instead of breaking) | |
set anti enc=utf-8 | |
set autowrite "Save on buffer switch | |
set lazyredraw " stop redrawing everytime vim! | |
" keyboard general mappings | |
:nnoremap <Tab> :bnext<CR> | |
:nnoremap <S-Tab> :bprevious<CR> | |
" search | |
set incsearch " search as characters are entered | |
set hlsearch " highlight searchs | |
set ignorecase " use case insensitive search, except when using capital letters | |
set smartcase " ignore case if search pattern is all lowercase | |
" folding | |
set foldenable | |
set foldmethod=indent | |
set foldlevelstart=10 | |
" gui vim | |
if filereadable(expand("~/.vimrc_background")) | |
let base16colorspace=256 | |
source ~/.vimrc_background | |
endif | |
" dont use arrowkeys | |
noremap <Up> <NOP> | |
noremap <Down> <NOP> | |
noremap <Left> <NOP> | |
noremap <Right> <NOP> | |
" really, just dont | |
inoremap <Up> <NOP> | |
inoremap <Down> <NOP> | |
inoremap <Left> <NOP> | |
inoremap <Right> <NOP> | |
" swapfiles location | |
set backupdir=/tmp// | |
set directory=/tmp// | |
" trailling spaces | |
set noeol | |
" mouse enable | |
set mouse=a | |
" clipboard | |
set clipboard=unnamed | |
" invisible chars | |
set list | |
set listchars=tab:▸\ ,eol:¬,trail:·,space:· | |
" enable omnifunction | |
set omnifunc=syntaxcomplete#Complete | |
let g:SuperTabDefaultCompletionType = "context" | |
" syntax | |
syntax on | |
let g:javascript_plugin_jsdoc = 1 " better highlight for jsdocs | |
" neomake | |
" let g:neomake_javascript_enabled_makers = ['eslint'] " select js linters | |
" autocmd! BufWritePost * Neomake " lint on save | |
" ale (replace neomake) | |
let g:ale_linters = { 'javascript': ['eslint'] } " select js linters |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# If you come from bash you might have to change your $PATH. | |
export PATH=~/.config/composer/vendor/bin:~/git/chubaca/node_modules/.bin:/usr/local/go/bin:$PATH | |
# Path to your oh-my-zsh installation. | |
export ZSH=/home/brunoluiz/.oh-my-zsh | |
# Set name of the theme to load. Optionally, if you set this to "random" | |
# it'll load a random theme each time that oh-my-zsh is loaded. | |
# See https://github.com/robbyrussell/oh-my-zsh/wiki/Themes | |
# ZSH_THEME="agnoster" | |
ZSH_THEME="robbyrussell" | |
# Uncomment the following line to use case-sensitive completion. | |
# CASE_SENSITIVE="true" | |
# Uncomment the following line to use hyphen-insensitive completion. Case | |
# sensitive completion must be off. _ and - will be interchangeable. | |
# HYPHEN_INSENSITIVE="true" | |
# Uncomment the following line to disable bi-weekly auto-update checks. | |
# DISABLE_AUTO_UPDATE="true" | |
# Uncomment the following line to change how often to auto-update (in days). | |
# export UPDATE_ZSH_DAYS=13 | |
# Uncomment the following line to disable colors in ls. | |
# DISABLE_LS_COLORS="true" | |
# Uncomment the following line to disable auto-setting terminal title. | |
# DISABLE_AUTO_TITLE="true" | |
# Uncomment the following line to enable command auto-correction. | |
# ENABLE_CORRECTION="true" | |
# Uncomment the following line to display red dots whilst waiting for completion. | |
# COMPLETION_WAITING_DOTS="true" | |
# Uncomment the following line if you want to disable marking untracked files | |
# under VCS as dirty. This makes repository status check for large repositories | |
# much, much faster. | |
# DISABLE_UNTRACKED_FILES_DIRTY="true" | |
# Uncomment the following line if you want to change the command execution time | |
# stamp shown in the history command output. | |
# The optional three formats: "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd" | |
# HIST_STAMPS="mm/dd/yyyy" | |
# Would you like to use another custom folder than $ZSH/custom? | |
# ZSH_CUSTOM=/path/to/new-custom-folder | |
# Which plugins would you like to load? (plugins can be found in ~/.oh-my-zsh/plugins/*) | |
# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/ | |
# Example format: plugins=(rails git textmate ruby lighthouse) | |
# Add wisely, as too many plugins slow down shell startup. | |
plugins=(git screen npm jsontools git-extras gitfast common-aliases) | |
source $ZSH/oh-my-zsh.sh | |
# User configuration | |
# export MANPATH="/usr/local/man:$MANPATH" | |
# You may need to manually set your language environment | |
# export LANG=en_US.UTF-8 | |
# Preferred editor for local and remote sessions | |
# if [[ -n $SSH_CONNECTION ]]; then | |
# export EDITOR='vim' | |
# else | |
# export EDITOR='mvim' | |
# fi | |
# Compilation flags | |
# export ARCHFLAGS="-arch x86_64" | |
# ssh | |
# export SSH_KEY_PATH="~/.ssh/rsa_id" | |
# Set personal aliases, overriding those provided by oh-my-zsh libs, | |
# plugins, and themes. Aliases can be placed here, though oh-my-zsh | |
# users are encouraged to define aliases within the ZSH_CUSTOM folder. | |
# For a full list of active aliases, run `alias`. | |
# | |
# Example aliases | |
# alias zshconfig="mate ~/.zshrc" | |
# alias ohmyzsh="mate ~/.oh-my-zsh" | |
DEFAULT_USER=`whoami` | |
export NVM_DIR="/home/brunoluiz/.nvm" | |
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm | |
export TERM=xterm-256color | |
BASE16_SHELL=$HOME/.config/base16-shell/ | |
[ -n "$PS1" ] && [ -s $BASE16_SHELL/profile_helper.sh ] && eval "$($BASE16_SHELL/profile_helper.sh)" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment