使用zsh在终端中启动sublime text 3

时间:2014-08-10 21:22:43

标签: command-line zsh sublimetext3 sublime-text-plugin

我最近购买了一台新的MacBook,我正在尝试重新配置我的系统。

该应用程序位于Applications文件夹中,为“Sublime Text.app”

我已经通过我在网上找到的“Sublime Text 3.app”以及“Sublime Text.app”的其他建议编辑了sublime.plugin.zsh文件,但没有运气:

elif  [[ $('uname') == 'Darwin' ]]; then
local _sublime_darwin_paths > /dev/null 2>&1
_sublime_darwin_paths=(
    "/usr/local/bin/subl"
    "/Applications/Sublime Text 3.app/Contents/SharedSupport/bin/subl"
    "/Applications/Sublime Text 3.app/Contents/SharedSupport/bin/subl"
    "/Applications/Sublime Text 3.app/Contents/SharedSupport/bin/subl"
    "$HOME/Applications/Sublime Text 3.app/Contents/SharedSupport/bin/subl"
    "$HOME/Applications/Sublime Text 3.app/Contents/SharedSupport/bin/subl"
    "$HOME/Applications/Sublime Text 3.app/Contents/SharedSupport/bin/subl"
)

for _sublime_path in $_sublime_darwin_paths; do
    if [[ -a $_sublime_path ]]; then
        alias subl="'$_sublime_path'"
        alias st=subl
        break
    fi
done
fi

alias stt='st .'

我还是

zsh: command not found: st

我不知道下一步该去哪儿

3 个答案:

答案 0 :(得分:4)

首先,尝试首先通过zsh手动(交互式)启动sublime二进制文件。

要做到这一点,你必须发现这个二进制文件的位置。这里有两个实用选项,选择您最满意的选择:

  1. 手动检查列出的二进制文件,查看它们中的哪一个。
  2. 将您的脚本略微修改为echo内的if内容:

    if [[ -a $_sublime_path ]]; then
        echo "Sublime found: $_sublime_path"
        alias subl="'$_sublime_path'"
        alias st=subl
        break
    fi
    
  3. 找到正确的文件后,在st文件中创建.zshrc别名:

    alias st="/correct/path/to/subl"
    

    如果在第一步中没有找到任何内容,那么原始脚本实际上不应该起作用。

答案 1 :(得分:3)

我在zsh上遇到了同样的问题,并且做到了:

ln -s "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" /usr/local/bin/subl

然后使用Sublime启动一个打开的文件my_file.txt:

subl ./my_file.txt

如果您只想打开Sublime,请不要指定任何文件。希望对您有所帮助;)

答案 2 :(得分:0)

  1. 刚移到 mac 中的 App
  2. 检查您当前的路径
echo $PATH
  1. 从 Sublime App 添加一个符号链接到您的路径之一。例如选择/usr/local/bin
ln -s "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" /usr/local/bin/sublime 
  1. 然后返回终端并运行 sublime。您应该通过终端打开 sublime