Subject: Re: bug#21053: 24.5; emacs "-nw" option crashes in zsh [email-masked]

From: Brad Johnson <[email-masked]>
Date: Tue, 14 Jul 2015 04:16:55 -0400

Tassilo,

Ok the "emacs-cli)" plugin is just a typo, that does not do anything, but
the .oh-my-zsh with the "emacs" plugin looks to be the cause of the crashes.

Looking closer at the plugin it refers to emacs 23 and has some odd useless
alias definitions, it is likely this is the problem not emacs.
"
~/.oh-my-zsh/plugins/emacs: cat emacs.plugin.zsh
# Emacs 23 daemon capability is a killing feature.
# One emacs process handles all your frames whether
# you use a frame opened in a terminal via a ssh connection or X frames
# opened on the same host.

# Benefits are multiple
# - You don't have the cost of starting Emacs all the time anymore
# - Opening a file is as fast as Emacs does not have anything else to do.
# - You can share opened buffered across opened frames.
# - Configuration changes made at runtime are applied to all frames.

if "$ZSH/tools/require_tool.sh" emacs 23 2>/dev/null ; then
    export EMACS_PLUGIN_LAUNCHER="$ZSH/plugins/emacs/emacsclient.sh"

    # set EDITOR if not already defined.
    export EDITOR="${EDITOR:-${EMACS_PLUGIN_LAUNCHER}}"

    alias emacs="$EMACS_PLUGIN_LAUNCHER --no-wait"
    alias e=emacs

    # same than M-x eval but from outside Emacs.
    alias eeval="$EMACS_PLUGIN_LAUNCHER --eval"
    # create a new X frame
    alias eframe='emacsclient --alternate-editor "" --create-frame'

    # to code all night long
    alias emasc=emacs
    alias emcas=emacs

    # Write to standard output the path to the file
    # opened in the current buffer.
    function efile {
        local cmd="(buffer-file-name (window-buffer))"
        "$EMACS_PLUGIN_LAUNCHER" --eval "$cmd" | tr -d \"
    }

    # Write to standard output the directory of the file
    # opened in the the current buffer
    function ecd {
        local cmd="(let ((buf-name (buffer-file-name (window-buffer))))
                     (if buf-name (file-name-directory buf-name)))"

        local dir="$($EMACS_PLUGIN_LAUNCHER --eval $cmd | tr -d \")"
        if [ -n "$dir" ] ;then
            echo "$dir"
        else
            echo "can not deduce current buffer filename." >/dev/stderr
            return 1
        fi
    }
fi

## Local Variables:
## mode: sh
## End:
"

On Tue, Jul 14, 2015 at 4:00 AM, Brad Johnson <[email-masked]> wrote:

> I may have isolated the problem
> in .zshrc
>
> plugins=(emacs) #crashes
>
> plugins=(emacs-cli) #works
>
>
>
> On Tue, Jul 14, 2015 at 3:42 AM, Brad Johnson <[email-masked]> wrote:
>
>> I had a few oh-my-zsh plugins running, I edited my .zshrc file to a more
>> basic setting and "emacs -nw" now works.  I will see if I can narrow down
>> which plugin is the problem.
>>
>> On Tue, Jul 14, 2015 at 3:02 AM, Tassilo Horn <[email-masked]> wrote:
>>
>>> Brad <[email-masked]> writes:
>>>
>>> Hi Brad,
>>>
>>> > When launching emacs with the -nw option emacs crashes immediatly when
>>> > using the zsh shell.  If I swithch to the bash shell "emacs -nw" works
>>> > find.
>>>
>>> I also use ZSH but can't reproduce the crashes.  Can you try bisecting
>>> the ZSH init files, see (info "(zsh)Files"), to find out if there's some
>>> specific setting triggering the crash?
>>>
>>> Bye,
>>> Tassilo
>>>
>>
>>
>>
>> --
>> Brad Johnson, PE
>> ph 704.916.9732
>> www.pesquared.com
>>
>
>
>
> --
> Brad Johnson, PE
> ph 704.916.9732
> www.pesquared.com
>

-- 
Brad Johnson, PE
ph 704.916.9732
www.pesquared.com