【问题标题】:SublimeREPL and zsh (oh-my-zsh)SublimeREPL 和 zsh (oh-my-zsh)
【发布时间】:2013-03-09 19:43:36
【问题描述】:

有没有什么方法可以通过 SublimeREPL 在 Sublime Text 中运行 zsh shell(添加了 oh-my-zsh)?

【问题讨论】:

    标签: sublimetext2 zsh sublimerepl


    【解决方案1】:

    试试 SublimePTY,它旨在在 Sublime Text 中提供完整的终端:

    https://github.com/wuub/SublimePTY

    【讨论】:

    • 警告 - 它仍然处于 alpha 阶段(实际上是“pre-alpha”),并且可能无法很好地与各种解释器/环境一起使用。
    • 但这仍然是我们得到的最好的 ;)
    • 事实上,我认为尝试在 Sublime 中插入终端是无用的。它不是为此而设计的。在 Sublime Text 支持通过插件嵌入任意窗口之前,它永远都不够好,这永远不会发生。相反,看看如何更好地安排你的桌面,这样你就可以保持窗口可见并在它们之间使用 ALT 选项卡。
    • 确实如此。如果您正在使用它并遇到问题,我从个人经验中知道开发人员非常敏感。我一直使用SublimeREPL,他非常擅长用 IPython 解决一个有趣的问题...
    • 我有一个专门用于终端的额外显示器 :)
    【解决方案2】:

    通过编辑SublimeREPL/config/Shell/Main.sublime-menu,我能够生成 Zsh shell 而不是 bash shell SublimeREPL:

    20: "cmd": {"windows": ["cmd.exe"],
    21:         "linux": ["zsh", "-i"],
    22:         "osx": ["zsh", "-i"]},
    

    但是我看到SHELL 环境变量仍将被评估为/bin/bash。我无法直接在此配置文件中设置环境变量,因此我编辑了SublimeREPL/config/SublimeREPL\ /(OSX).sublime-settings 并将SHELL 变量注入"default_extended_env" 指令,如下所示:

    3: "default_extend_env": {"PATH": "{PATH}:/usr/local/bin", "SHELL" : "/bin/zsh" }
    

    这使一切顺利进行。 如果像我一样,命令和输出之间没有换行符,只需编辑SublimeREPL/config/Shell/Main.sublime-menu

    26: "suppress_echo": false
    

    它不会抑制回显并在每个命令后产生一个换行符。

    我知道这有点像猴子修补,但在进一步了解之前,这是我能做的最好的事情。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-07-30
      • 1970-01-01
      • 1970-01-01
      • 2015-12-23
      • 2014-01-27
      • 1970-01-01
      • 2011-10-11
      相关资源
      最近更新 更多