Skip to content

Instantly share code, notes, and snippets.

@old-repo-ekoteguh
Created February 22, 2018 08:59
Show Gist options
  • Save old-repo-ekoteguh/fd01762265a351f0f2f68981ce06d095 to your computer and use it in GitHub Desktop.
Save old-repo-ekoteguh/fd01762265a351f0f2f68981ce06d095 to your computer and use it in GitHub Desktop.
Setting .vimrc and .tmux.conf
# remap prefix from 'C-b' to 'C-a'
unbind C-b
set-option -g prefix C-a
bind-key C-a send-prefix
# split panes using | and -
bind | split-window -h
bind - split-window -v
unbind '"'
unbind %
# reload config file (change file location to your the tmux.conf you want to use)
bind r source-file ~/.tmux.conf
# switch panes using Alt-arrow without prefix
bind -n M-Left select-pane -L
bind -n M-Right select-pane -R
bind -n M-Up select-pane -U
bind -n M-Down select-pane -D
# Enable mouse control (clickable windows, panes, resizable panes)
set -g mouse on
# don't rename windows automatically
set-option -g allow-rename off
######################
### DESIGN CHANGES ###
######################
# panes
set -g pane-border-fg black
set -g pane-active-border-fg brightred
## Status bar design
# status line
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
# }
# Add truecolor support
set-option -ga terminal-overrides ",xterm-256color:Tc"
# Default terminal is 256 colors
set -g default-terminal "screen-256color"
set nocompatible
filetype off
" =====================================
" Initialize Vundle
" =====================================
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
Plugin 'VundleVim/Vundle.vim'
Plugin 'rakr/vim-one'
Plugin 'challenger-deep-theme/vim'
Plugin 'itchyny/lightline.vim'
Plugin 'vim-airline/vim-airline'
Plugin 'vim-airline/vim-airline-themes'
Plugin 'sheerun/vim-polyglot'
Plugin 'scrooloose/nerdtree.git'
Plugin 'tpope/vim-endwise'
Plugin 'tpope/vim-unimpaired'
Plugin 'jiangmiao/auto-pairs'
Plugin 'tpope/vim-fugitive'
Plugin 'mattn/emmet-vim'
Plugin 'tpope/vim-commentary'
Plugin 'tpope/vim-surround'
Plugin 'EinfachToll/DidYouMean'
Plugin 'ap/vim-css-color'
" Plugin 'fatih/vim-go'
call vundle#end()
filetype plugin indent on
syntax on
" ====================================
" General Config
" ====================================
set backspace=indent,eol,start
set number
set shiftwidth=2
set softtabstop=2
set tabstop=2
set expandtab
set autochdir
set cursorline
set autowrite
set encoding=utf-8
set title
" Display extra whitespace
set list listchars=tab:»·,trail:·
" Persistence undo
set undodir=~/.vim/undodir
set undofile
" Automatic reloading .vimrc
autocmd! bufwritepost *.vim source %
set pastetoggle=<F2>
set clipboard=unnamed
set laststatus=2
" ===================================
" Mapping
" ===================================
let g:mapleader=","
map ; :
imap jj <Esc>
cmap jj <C-c>
vmap v <Esc>
" Change Pane
map <Leader>n :bn<CR>
map <Leader>m :bp<CR>
" Every unnecessary keystroke that can be saved is good for your health :)
nnoremap <C-H> <C-W><C-H>
nnoremap <C-J> <C-W><C-J>
nnoremap <C-K> <C-W><C-K>
nnoremap <C-L> <C-W><C-L>
" This turns off Vim’s crazy default regex characters and makes searches use normal regexes.
nnoremap / /\v
vnoremap / /\v
" =======================================
" Setting Plugin
" =======================================
if has('nvim') || has('termguicolors')
set termguicolors
endif
" ColorSchemes
"colorscheme one
"colorscheme rupza
colorscheme challenger_deep
let g:lightline = { 'colorscheme': 'challenger_deep'}
set background=dark
"let g:one_allow_italics = 1
" NERDTree
map <Leader>t :NERDTreeToggle<CR>
map <Leader>r <Esc> :NERDTreeFind<CR>
let g:tmux_navigator_no_mappings = 1
" Vim Airline
"let g:airline_theme='one'
"let g:airline_theme='bubblegum'
"let g:airline_powerline_fonts = 1
"let g:airline#extensions#tabline#enabled = 1
"let g:airline#extensions#tabline#fnamemod = ':t'
"let g:airline#extensions#tabline#branch#enabled = 1
"let g:airline#parts#ffenc#skip_expected_string='utf-8[unix]'
" Unimpaired -> Bubble single line
nmap <Leader>k [e
nmap <Leader>j ]e
" Bubble multiple line
vmap <Leader>k [egv
vmap <Leader>j ]egv
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment