فهرست منبع

Add zsh `auto_cd`, clean up directory aliases

`pushd`/`popd` and related `cd` behaviours are available in both zsh and
bash, though only zsh has automatic directory stack population.
Weiyi Lou 10 سال پیش
والد
کامیت
3ef1e78d48
4فایلهای تغییر یافته به همراه27 افزوده شده و 25 حذف شده
  1. 3 0
      shell/common/auto-ssh-hosts.sh
  2. 21 0
      shell/common/directories.sh
  3. 0 5
      shell/common/misc.sh
  4. 3 20
      shell/zsh/directories.zsh

+ 3 - 0
shell/common/auto-ssh-hosts.sh

@@ -13,3 +13,6 @@ auto_ssh_hosts() {
 if [[ -f ~/.ssh/known_hosts ]]; then
   auto_ssh_hosts
 fi
+
+# Hosts file
+alias hosts='sudo vim /etc/hosts'

+ 21 - 0
shell/common/directories.sh

@@ -0,0 +1,21 @@
+alias md='mkdir -p'
+alias rd=rmdir
+
+alias cd.='cd ~/dotfiles'
+
+# Manual directory stack population.
+alias pu='pushd'
+alias po='popd'
+
+# Access the directory stack.
+alias d='dirs -v | head -10'
+alias -- -='cd -'
+alias 1='cd -'
+alias 2='cd -2'
+alias 3='cd -3'
+alias 4='cd -4'
+alias 5='cd -5'
+alias 6='cd -6'
+alias 7='cd -7'
+alias 8='cd -8'
+alias 9='cd -9'

+ 0 - 5
shell/common/misc.sh

@@ -1,5 +0,0 @@
-# Common places
-alias cd.='cd ~/dotfiles'
-
-# Hosts file
-alias hosts='sudo vim /etc/hosts'

+ 3 - 20
shell/zsh/directories.zsh

@@ -1,7 +1,7 @@
-alias md='mkdir -p'
-alias rd=rmdir
+# Automatic directory changing e.g. `..` = `cd ..`
+setopt auto_cd
 
-# Multiple directory returns. Usable anywhere in command (-g).
+# Multiple directory returns. Usable anywhere in command input (-g).
 alias -g ...='../..'
 alias -g ....='../../..'
 alias -g .....='../../../..'
@@ -11,20 +11,3 @@ alias -g ......='../../../../..'
 setopt auto_pushd
 setopt pushd_ignore_dups
 setopt pushdminus
-
-# Aliases for using the directory stack.
-alias d='dirs -v | head -10'
-alias -- -='cd -'
-alias 1='cd -'
-alias 2='cd -2'
-alias 3='cd -3'
-alias 4='cd -4'
-alias 5='cd -5'
-alias 6='cd -6'
-alias 7='cd -7'
-alias 8='cd -8'
-alias 9='cd -9'
-
-# Manually use the directory stack.
-alias pu='pushd'
-alias po='popd'