Przeglądaj źródła

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 9 lat temu
rodzic
commit
3ef1e78d48

+ 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'