如何为Sublime Text 3设置Ctags

Rod*_*igo 5 ruby-on-rails ctags sublimetext sublimetext3

我正在使用Sublime Text 3和Ruby On Rails项目.

前段时间,我使用本教程设置CTags .

这很好,但突然停止工作.尝试重建项目的标记时,我收到以下错误.

/ bin/sh:ctags_for_ruby:找不到命令

这些是我的文件:

在/ usr/local/bin目录/ ctags_for_ruby:

#!/usr/bin/env ruby
system "find . -name '*.rb' | ctags -f .tags -L -"

if File.exist? './Gemfile'
  require 'bundler'
  paths = Bundler.load.specs.map(&:full_gem_path).join(' ')
  system "ctags -R -f .gemtags #{paths}"
end
Run Code Online (Sandbox Code Playgroud)

〜/ Library/Application Support/Sublime Text 3/Packages/User/CTags.sublime-settings

{
    "debug"           :  false,
    "autocomplete": false,
    "command"   :  "ctags_for_ruby",
    "filters"         :  {
        "source.python": {"type":"^i$"}
    },
    "definition_filters": {
        "source.php": {"type":"^v$"}
    },
    "definition_current_first": true,
    "show_context_menus": true,
    "extra_tag_paths" :  [ [["source.python", "windows"], "C:\\Python27\\Lib\\tags"]],
    "extra_tag_files" : [".gemtags", ".tags"]
}
Run Code Online (Sandbox Code Playgroud)

$PATH变量包含/usr/local/bin目录.

为什么Sublime无法找到/执行ctags_for_ruby文件?

Mat*_*DMo 3

/usr/local/bin可能在你的 shell 中$PATH,但它没有被 Sublime 拾取。要解决此问题,请编辑设置~/Library/Application Support/Sublime Text 3/Packages/User/CTags.sublime-settings并将其更改"command""/usr/local/bin/ctags_for_ruby"。另外,除非您在 中使用系统 Ruby /usr/bin,否则您可能需要将/usr/local/bin/ctags_for_rubyfrom的第一行编辑#/usr/bin/env ruby为 Ruby 解释器的直接路径 - 您可以通过which ruby在命令行上运行来找到它。