Skip to content

Xonsh throws exceptions on initialization only when carapace is added to the run control #1068

@JeffMelton

Description

@JeffMelton

Current Behavior

After adding exec($(carapace _carapace)) to ~/.config/xonsh/rc.xsh, Xonsh throws exceptions on initialization (examples with minimal traceback below). Happy to bring more detail if needed.

Expected Behavior

Xonsh should initialize without exceptions when carapace is added to the run control.

Steps To Reproduce

To try and track down what was happening, I added echo statements — this is <whatever the file is> — to the top of my Bash and Zsh run control files. My login shell is Zsh, but I do not use it — there's nothing in the run control file except the echo. All the examples below are run from iTerm2 profiles dedicated to the shell indicated.

Examples with Bash, Zsh, and Elvish run control files available:

From Xonsh:

this is bashrc
xonsh: For full traceback set: $XONSH_SHOW_TRACEBACK = True
  File "<string>", line 3
    get-env () { echo "${!1}"; } # this looks like Elvish, but I'm not getting a debug print statement from my `rc.elv`
               ^
SyntaxError: invalid syntax
syntax error in xonsh run control file '/Users/j0m0aam/.config/xonsh/rc.xsh': invalid syntax (<string>, line 3)

~

From Zsh:

~ % xonsh
zsh: command not found: xonsh 
~ % ~/.local/xonsh-env/bin/xonsh
xonsh: For full traceback set: $XONSH_SHOW_TRACEBACK = True
  File "<string>", line 3
    get-env () { echo "${(P)1}"; }
               ^
SyntaxError: invalid syntax
syntax error in xonsh run control file '<my home dir>/.config/xonsh/rc.xsh': invalid syntax (<string>, line 3)


~~ % ~/.local/xonsh-env/bin/xonsh --no-rc
~ @

Examples without Bash, Zsh, and Elvish run control files available:

From Xonsh:

xonsh: For full traceback set: $XONSH_SHOW_TRACEBACK = True
  File "<string>", line 3
    get-env () { echo "${!1}"; }
               ^
SyntaxError: invalid syntax
syntax error in xonsh run control file '<my home dir>/.config/xonsh/rc.xsh': invalid syntax (<string>, line 3)

From Zsh:*

 ~ % ~/.local/xonsh-env/bin/xonsh
xonsh: For full traceback set: $XONSH_SHOW_TRACEBACK = True
  File "<string>", line 3
    get-env () { echo "${(P)1}"; }
               ^
SyntaxError: invalid syntax
syntax error in xonsh run control file '<my home dir>/.config/xonsh/rc.xsh': invalid syntax (<string>, line 3)


~
❯
 ~ % ~/.local/xonsh-env/bin/xonsh --no-rc
 ~ @

Version

No response

OS

  • Darwin
  • Linux
  • Termux
  • Windows

Shell

  • Bash
  • Cmd
  • Elvish
  • Fish
  • Nushell
  • Oil
  • Powershell
  • Xonsh
  • Zsh

Anything else?

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions