diff options
Diffstat (limited to '_zsh')
| -rw-r--r-- | _zsh/80-emacs.zsh | 48 | 
1 files changed, 25 insertions, 23 deletions
| diff --git a/_zsh/80-emacs.zsh b/_zsh/80-emacs.zsh index 8ccd100..27966b9 100644 --- a/_zsh/80-emacs.zsh +++ b/_zsh/80-emacs.zsh @@ -7,33 +7,35 @@  # 2016-02-21  # -function _emacsclient() { -    # Get list of available X windows. -    X=`emacsclient --alternate-editor '' --eval '(x-display-list)' 2>/dev/null` +if exists emacsclient; then +    function _emacsclient() { +        # Get list of available X windows. +        X=`emacsclient --alternate-editor '' --eval '(x-display-list)' 2>/dev/null` -    if [ -z "$X" ] || [ "$X" = "nil" ]; then -        # Create one if there is no X window yet. -        command emacsclient --alternate-editor "" --create-frame "$@" -    else -        # Prevent creating another X frame if there is at least one present. -        command emacsclient --alternate-editor "" "$@" -    fi -} +        if [ -z "$X" ] || [ "$X" = "nil" ]; then +            # Create one if there is no X window yet. +            command emacsclient --alternate-editor "" --create-frame "$@" +        else +            # Prevent creating another X frame if there is at least one present. +            command emacsclient --alternate-editor "" "$@" +        fi +    } -# Write to stdout the path to the file opened in the current buffer -function efile() { -    local cmd="(buffer-file-name (window-buffer))" -    _emacsclient --eval "$cmd" | tr -d '"' -} +    # Write to stdout the path to the file opened in the current buffer +    function efile() { +        local cmd="(buffer-file-name (window-buffer))" +        _emacsclient --eval "$cmd" | tr -d '"' +    } -# Same as 'M-x eval' but outside of Emacs -alias eeval='_emacsclient --eval' -# Create a new X frame -alias eframe='_emacsclient --create-frame --no-wait' +    # Same as 'M-x eval' but outside of Emacs +    alias eeval='_emacsclient --eval' +    # Create a new X frame +    alias eframe='_emacsclient --create-frame --no-wait' -alias emacs='_emacsclient -t' -alias e=emacs -alias ef=eframe +    alias emacs='_emacsclient -t' +    alias e=emacs +    alias ef=eframe +fi  # end "exists emacsclient"  # vim: set ts=8 sw=4 tw=0 fenc=utf-8 ft=zsh: # | 
