Skip to main content
edited body; edited tags; edited title
Source Link
Gilles 'SO- stop being evil'
  • 865.3k
  • 205
  • 1.8k
  • 2.3k

zsh parse error after alias do=…

zsh parse error after alias do=…

zsh parse error

zsh parse error after alias do=…

added 718 characters in body
Source Link
Steven L.
  • 785
  • 1
  • 9
  • 10

Can someone help me spot whatThe problem seems to be in my aliases files. I have two aliases files:

  1. .aliases
  2. .aliases.local

.aliases is loaded, and within that there is the following command to load .aliases.local:

[[ -f ~/.aliases.local ]] && source ~/.aliases.local

Within my .aliases.local file I have the two following aliases:

alias server='ssh -p xxx [email protected]'
alias do='ssh -L xxxx:127.0.0.1:xxxx -N -f -l user -p xxxx xx.xx.xxx.xxx'

These are basically aliases to ssh into my server (the first alias), and also to establish a secure tunnel so I can use a VNC client to the server.

These two aliases are working correctly, but when I define them in .aliases.local, I keep getting this error. What am I doing wrong?

Can someone help me spot what is wrong?

The problem seems to be in my aliases files. I have two aliases files:

  1. .aliases
  2. .aliases.local

.aliases is loaded, and within that there is the following command to load .aliases.local:

[[ -f ~/.aliases.local ]] && source ~/.aliases.local

Within my .aliases.local file I have the two following aliases:

alias server='ssh -p xxx [email protected]'
alias do='ssh -L xxxx:127.0.0.1:xxxx -N -f -l user -p xxxx xx.xx.xxx.xxx'

These are basically aliases to ssh into my server (the first alias), and also to establish a secure tunnel so I can use a VNC client to the server.

These two aliases are working correctly, but when I define them in .aliases.local, I keep getting this error. What am I doing wrong?

Source Link
Steven L.
  • 785
  • 1
  • 9
  • 10

zsh parse error

I have the following .zshrc file in my home directory:

# modify the prompt to contain git branch name if applicable
git_prompt_info() {
  current_branch=$(git current-branch 2> /dev/null)
  if [[ -n $current_branch ]]; then
    echo " %{$fg_bold[green]%}$current_branch%{$reset_color%}"
  fi
}
setopt promptsubst
export PS1='${SSH_CONNECTION+"%{$fg_bold[green]%}%n@%m:"}%{$fg_bold[blue]%}%c%{$reset_color%}$(git_prompt_info) %# '

# load our own completion functions
fpath=(~/.zsh/completion $fpath)

# completion
autoload -U compinit
compinit

# load custom executable functions
for function in ~/.zsh/functions/*; do
  source $function
done

# makes color constants available
autoload -U colors
colors

# enable colored output from ls, etc
export CLICOLOR=1

# history settings
setopt hist_ignore_all_dups inc_append_history
HISTFILE=~/.zhistory
HISTSIZE=4096
SAVEHIST=4096

# awesome cd movements from zshkit
setopt autocd autopushd pushdminus pushdsilent pushdtohome cdablevars
DIRSTACKSIZE=5

# Enable extended globbing
setopt extendedglob

# Allow [ or ] whereever you want
unsetopt nomatch

# vi mode
bindkey -v
bindkey "^F" vi-cmd-mode
bindkey jj vi-cmd-mode

# handy keybindings
bindkey "^A" beginning-of-line
bindkey "^E" end-of-line
bindkey "^R" history-incremental-search-backward
bindkey "^P" history-search-backward
bindkey "^Y" accept-and-hold
bindkey "^N" insert-last-word
bindkey -s "^T" "^[Isudo ^[A" # "t" for "toughguy"

# aliases
[[ -f ~/.aliases ]] && source ~/.aliases

# extra files in ~/.zsh/configs/pre , ~/.zsh/configs , and ~/.zsh/configs/post
# these are loaded first, second, and third, respectively.
_load_settings() {
  _dir="$1"
  if [ -d "$_dir" ]; then
    if [ -d "$_dir/pre" ]; then
      for config in "$_dir"/pre/**/*(N-.); do
        . $config
      done
    fi

    for config in "$_dir"/**/*(N-.); do
      case "$config" in
        "$_dir"/pre/*)
          :
          ;;
        "$_dir"/post/*)
          :
          ;;
        *)
          if [ -f $config ]; then
            . $config
          fi
          ;;
      esac
    done

    if [ -d "$_dir/post" ]; then
      for config in "$_dir"/post/**/*(N-.); do
        . $config
      done
    fi
  fi
}
_load_settings "$HOME/.zsh/configs"

# Local config
[[ -f ~/.zshrc.local ]] && source ~/.zshrc.local

Unfortunately, when I start my terminal, I get the following error:

/home/steven/.zshrc:72: parse error near `fi'

Can someone help me spot what is wrong?