Skip to content

Instantly share code, notes, and snippets.

@arashm
Created May 29, 2016 06:59
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save arashm/decd6b455dcf612f557dae1a4b738a5a to your computer and use it in GitHub Desktop.
Save arashm/decd6b455dcf612f557dae1a4b738a5a to your computer and use it in GitHub Desktop.
set fisher_home ~/.local/share/fisherman
set fisher_config ~/.config/fisherman
set -gx EDITOR vim
set -gx GEM_EDITOR vim
set -gx LESSOPEN "| /usr/bin/src-hilite-lesspipe.sh %s"
set -gx LESS ' -R '
set -gx TERM xterm-256color
set -gx RUST_SRC_PATH $HOME/workspace/NiceProjects/Rust/rust/src
set -gx LANG en_US.utf8
set -gx LC_ALL en_US.utf8
set -gx LC_CTYPE en_US.utf8
set -gx WORKON_HOME $HOME/.pyenvs
set -gx RUST_SRC_PATH $HOME/workspace/NiceProjects/Rust/rust/src
set -gx GOPATH $HOME/.gocode
set -gx PASSWORD_STORE_DIR $HOME/.config/password-store
set -U FZF_TMUX 1
set PATH $HOME/.rbenv/bin $GOPATH/bin $HOME/.multirust/toolchains/stable/cargo/bin $PATH
#
## Aliases #
#
# Apps
alias ysg="yard server --gems -d"
alias devdocs='cd ~/workspace/devdocs; and bundle exec rackup -D; and cd -'
# Git
#alias g='git' Moved to a function
alias ga='git add'
alias gc='git commit -S'
alias gp='git push'
alias gcm='git commit -S -m'
alias gcf='git commit -S --fixup'
alias gst='git status'
alias gdf='git diff'
alias glb='git blog'
alias glbb='git log --oneline --decorate'
alias gu='git up'
alias grbi='git rebase -i'
#alias gco='git checkout'
# Ruby
alias rspec="rspec --color"
alias be='bundle exec'
alias brake='bundle exec rake'
alias htc='/home/arashm/workspace/Gists/ruby/http_codes/http_code.rb'
alias geminfo='/home/arashm/workspace/Gists/ruby/geminfo.rb'
# Fish
alias rfish='source ~/.config/fish/config.fish'
alias efish='vim ~/.config/fish/config.fish'
# Other Aliases
alias l='ls -A -h --color --group-directories-first'
alias grep="grep --color=auto"
alias less="less -N"
alias open='xdg-open'
alias tmux='tmux -2'
alias s='sudo'
alias p='sudo pacman'
alias pss='pacman -Ss'
alias pu='pacman -Syu'
alias y='yaourt'
alias yss='yaourt -Ss'
alias shadow="sudo sslocal -d start -c /home/arashm/Downloads/shadowsocks.json"
alias tweet='t update (zenity --entry)'
alias addon-sdk="cd /opt/addon-sdk; and source bin/activate; cd -"
alias lorem='gpaste-client add "Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi."'
alias loremfa='gpaste-client add "لورم ایپسوم متن ساختگی با تولید سادگی نامفهوم از صنعت چاپ و با استفاده از طراحان گرافیک است. چاپگرها و متون بلکه روزنامه و مجله در ستون و سطرآنچنان که لازم است و برای شرایط فعلی تکنولوژی مورد نیاز و کاربردهای متنوع با هدف بهبود ابزارهای کاربردی می باشد. کتابهای زیادی در شصت و سه درصد گذشته، حال و آینده شناخت فراوان جامعه و متخصصان را می طلبد تا با نرم افزارها شناخت بیشتری را برای طراحان رایانه ای علی الخصوص طراحان خلاقی و فرهنگ پیشرو در زبان فارسی ایجاد کرد. در این صورت می توان امید داشت که تمام و دشواری موجود در ارائه راهکارها و شرایط سخت تایپ به پایان رسد وزمان مورد نیاز شامل حروفچینی دستاوردهای اصلی و جوابگوی سوالات پیوسته اهل دنیای موجود طراحی اساسا مورد استفاده قرار گیرد."'
# Greetings!
function fish_greeting
# If not in tmux, then run tmux!
if test -z "$TMUX"
tmux
end
figlet ArashM
end
#source $fisher_home/config.fish
for file in ~/.config/fish/conf.d/*.fish
source $file
end
if status --is-interactive
# initialize NVM on shell startup
nvm > /dev/null ^&1
end
Copy link

ghost commented May 29, 2016

@arashm

First remove:

set fisher_home ~/.local/share/fisherman
set fisher_config ~/.config/fisherman

Then do not use alias.

alias is a function written in fish (not a builtin) and what it does is, basically take the expression you pass it, and create a function with it. alias is meant to be used interactively, if at all. The way you are using it here, will cause all those functions to be created during shell startup, which you could avoid by creating a normal function for each alias and saving the file into your ~/.config/fish/functions.

From man alias:

It exists for backwards compatibility with Posix shells. For other uses, it is recommended to define a function

You don't need this anymore in fish 2.3.

for file in ~/.config/fish/conf.d/*.fish
  source $file
end

Calling nvm is slow. You could get rid of the last part by using fnm, but that's up to you.

The main bottleneck is caused by using all those aliases. If you use none, your shell will start instantaneously.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment