My Default Shell Configuration - Oh-my-zsh
###History of my default shell
I started to learn C Shell because of the part-time job I had got during university. They were using FreeBSD as the default working environment. At the second year of the job, I tried Tcsh and Bash, then made Bash my default shell.
From time to time, I started to use Mac in recent years and also changed to use zsh.
###What is Z Shell ?
Zsh is a shell designed for interactive use, although it is also a powerful scripting language.
The reason I use zsh is all about Oh my zsh
###What is OH MY ZSHELL ?
oh-my-zsh is an open source, community-driven framework for managing your ZSH configuration. It comes bundled with a ton of helpful functions, helpers, plugins, themes, and few things that make you shout…
###How to Install?
Check Setup section
###My Configuration
Basic
#Theme (with git status character)
ZSH_THEME="dpoggi"
CASE_SENSITIVE="true"
#Aliases of zsh
alias zshconfig="vim ~/.zshrc"
alias ohmyzsh="vim ~/.oh-my-zsh"
#Prevent tragedy
alias rm='rm -i'
source $ZSH/oh-my-zsh.shNode.js Related
. ~/.nvm/nvm.sh
nvm use default
. <(npm completion)Autojump - Very useful tool for jumping to path i’ve visit most
#autojump
[[ -s `brew --prefix`/etc/autojump.sh ]] && . `brew --prefix`/etc/autojump.shPlugins Summary
plugins=(brew copydir copyfile encode64 git node osx rsync sublime urltools vagrant)
brew
brews
: List installed brews
copydir & copyfile
copydir
: Copy current directorycopyfile $file
: Copy specific file- Use
copypaste > [filename]
to paste file/dir to whereever you want
encode64
encode64 myfile
: Encode myfile, shortcute64
decode64 myfile
: Decode myfile, shortcutd64
git
- Enable a punch of alias and auto completion
- github
empty_gh repo
: Create empty Github repository repoexist_gh repo
: Add existed project to repository repo
- node
node-docs domain
: Open Node.js document of current version of node and go to domain section
- osx Very Useful
tab
: Open new tabvsplit_tab
: Vertical split tabsplit_tab
: Horizontal split tabpfd
: Current directory of Finderpfs
: Current file of Findercdf
: Change directory(cd) to current directory of Finderpushdf
: Remember current directory of Finderquick-look myfile
: Open a quick look window of myfile like selecting file in Finderman-preview ls
: Open a preview window with ls‘s manualtrash myfile
: Move myfile to trashvncviewer dummy.com
: Open VNCViewer
- rsync
rsync-copy
rsync-move
rsync-update
rsync-synchronize
- Easy to understand…
COMMAND path1 path2
- sublime
st
: Open Sublime Text2stt
: Open current directory in Sublime Text2
- urltools
urlencode url
: Encode URLurldecode url
: Decode URL
- vagrant
- Auto completion support
I only installed a few plugins. There’re still a lot of plugins you can use, please check the plugin list here.
After noting down all the plugin I’ve installed as a reminder. I decided to review all the supported plugins of Oh-my-zsh, I found out there’re so many ruby/rails related plugins. Maybe I could create some plugin for Node.js. Any ideas ? please tell me.