Full glory!
My config files, mainly Vim & Zsh aimed at working in Windows (7/8) and Ubuntu & OSX.
- Uses NeoBundle as package manager.
- Uses Unite as an all-around explorer.
- Zsh with Oh-My-Zsh.
- Awesome shell prompt based on pure
- Geared towards portability.
- Equipped to handle web development (HTML/CSS/Js/Frameworks/etc...)
- NERDTree/CtrlP for browsing (but soon enough will use Unite for that too)
- As Object-Oriented as possible
- As lazy-loaded as possible (due to 75+ Vim packages)
- Shell install scripts for windows and Linux
- OS agnostic
- Highly commented
- Git clone this repository into your
~/.dotfiles
$ git clone https://github.com/pgilad/dotfiles.git ~/.dotfiles
- Change your shell to
zsh
(chsh -s /bin/zsh
)
- Run
install/install.cmd
. If it fails - you will need Administrator permission for it.
- Run
install/install.sh
- Make sure your OSX version is latest
- Install XCode
brew bundle ~./dotfiles/install/Brewfile
brew bundle ~/.dotfiles/install/Caskfile
- Files from
link
are linked to~/
. - Files from
source
are sourced on profile load.
To source local files put them in ~/local/
:
- Files in
~/local/
with patternfilename.local
(hidden files included) are sourced on profile load.
- Clone iTerm2-Color-Schemes
- Import your favorite theme in iTerm2 -> Profiles -> Colors -> Import Theme
- Profit$$
To adjust .gitconfig
to your user.name and E-mail, add a ~/.gitconfig.local
file.
Anything you add here will override the general .gitconfig
. This is mostly useful for setting
your E-mail and name for git.
[user]
name = Dan Croak
email = dan@thoughtbot.com
- Main file is
_vimrc
. - Bundles files (bundled using
NeoBundle
) isbundles.vim
. - Update bundles using
NeoBundleUpdate
. - Custom snippets are in the directory
mysnippets
and are auto-loaded according to filetype.
"@author Gilad Peleg
"@license MIT 2014
"@website https://github.com/pgilad/dotfiles
" Note: Skip initialization for vim-tiny or vim-small.
if !1 | finish | endif
" Note: Vim is old
set nocompatible
let g:config = {
\ 'baseDir': '~/.dotfiles/vim/rc/',
\ 'loadFiles': {},
\ 'bundlesPath': '~/vimfiles/bundle/',
\ 'spellDir' : '~/.dotfiles/vim/spell/',
\ 'spellFile' : '~/.dotfiles/vim/spell/en.utf-8.add',
\ 'undoDir' : '~/.cache/undo/',
\ 'env' : {
\ 'windows': has('wind16') || has('win32') || has('win64'),
\ 'cygwin': has('win32unix'),
\ 'mac': has('mac'),
\ 'unix': has('unix') && !has('gui_macvim')
\ }
\}
" map leader keys
let g:mapleader = ","
let g:maplocalleader = ","
set guioptions=Mc
" set guioptions+=a " visual select auto-copy to clipboard
if has('syntax')
syntax off
filetype plugin indent off
endif
" How to quickly load the files:
" Mapping | File
" ---------------------------
" <leader>eg | Gui
" <leader>eb | Bundles
" <leader>es | Settings
" <leader>em | Mappings
" <leader>ea | autoCommands
for fileToLoad in ['bundles', 'settings', 'mappings', 'autoCommands']
" set filename
let b:filePath = g:config.baseDir . fileToLoad . '.vim'
" set file object in config
let g:config.loadFiles[fileToLoad] = b:filePath
" source script
silent execute 'source ' . fnameescape(expand(b:filePath))
endfor
set secure
- Uses Oh-My-Zsh alongside customization and completion