Is there any method to run zsh shell (with oh-my-zsh additions) via SublimeREPL in Sublime Text?
2 Answers
Try SublimePTY which aims to provide full-fledged terminal inside Sublime Text:

- 82,057
- 50
- 264
- 435
-
warning - it's still very much in alpha ("pre-alpha" actually), and may not work very well, if at all, with various interpreters/environments. – MattDMo Mar 11 '13 at 16:19
-
But it's still the best we got ;) – Mikko Ohtamaa Mar 11 '13 at 17:55
-
In fact I think trying to stuck a terminal in Sublime is useless effort. It was not designed to do so. It's never going to be good enough until Sublime Text supports embedding arbitary windows by plugins and that's never going to happen. Instead, look methods how to better arrange your desktop so that you can keep windows visible and ALT-tab between them. – Mikko Ohtamaa Mar 11 '13 at 17:56
-
1That's very true. If you're using it and have issues, I know from personal experience that the developer is very responsive. I use [SublimeREPL](https://github.com/wuub/SublimeREPL) all the time, and he was great working out an interesting issue with IPython... – MattDMo Mar 11 '13 at 17:58
-
I have an extra monitor just for Terminal :) – MattDMo Mar 11 '13 at 17:59
I was able to spawn a Zsh shell instead of the bash shell SublimeREPL by editing SublimeREPL/config/Shell/Main.sublime-menu
:
20: "cmd": {"windows": ["cmd.exe"],
21: "linux": ["zsh", "-i"],
22: "osx": ["zsh", "-i"]},
However I saw that the SHELL
environment variable would still be evaluated to /bin/bash
. I wasn't able to set env variables directly in this config file so I edited SublimeREPL/config/SublimeREPL\ /(OSX).sublime-settings
and injected the SHELL
variable to the "default_extended_env"
directive like so:
3: "default_extend_env": {"PATH": "{PATH}:/usr/local/bin", "SHELL" : "/bin/zsh" }
This got everything working smoothly.
If, like me, there is no line break between the command and the output just edit SublimeREPL/config/Shell/Main.sublime-menu
:
26: "suppress_echo": false
which doesn't suppresses echo and yields a newline after every command.
I know this is a bit of monkey-patching but until further knowledge this is the best I could do.

- 1,337
- 11
- 17