2013-04-30 167 views
9

我在我的rails項目中有一個文件Guardfile,但只是以純文本顯示,所以每次打開它都必須指定ruby語法才能正確顯示它。
我不能使用Open all with current extension as...因爲它不具有擴展名,但我想因爲喜歡GemfileCapfileRakefile文件被正確顯示我分配一個特定的語法文件沒有擴展名。 我該如何做到這一點?將語法分配給沒有擴展名的文件Sublime Text 2

+0

我對同一個文件有同樣的問題。 – 2014-11-13 18:22:54

回答

11

菜單:首選項 - >瀏覽器軟件包

然後打開該文件的Ruby \ Ruby.tmLanguage

查找該塊:

<array> 
    <string>rb</string> 
    <string>rbx</string> 
    <string>rjs</string> 
    <string>Rakefile</string> 
    <string>rake</string> 
    <string>cgi</string> 
    <string>fcgi</string> 
    <string>gemspec</string> 
    <string>irbrc</string> 
    <string>capfile</string> 
    <string>Gemfile</string> 
</array> 

添加新條目:

<string>Guardfile</string> 
+0

它的工作原理,謝謝! – 2013-04-30 17:00:35

+0

重新打開文件後,它爲我工作。 – 2014-11-13 18:25:11

+2

在Sublime 3中找不到提及的Ruby包。 – 2016-08-30 14:46:20

3

安裝facelessuser/ApplySyntax。它有一個內置的Guardfiles規則。對於其他應該設置爲特定語法的隨機文件也很有用。例如,下面是我爲隨機文件設置的應該有Bash語法的文件。

"syntaxes": [ 
    { 
    "name": "ShellScript/Shell-Unix-Generic", 
    "rules": [ 
     {"file_name": ".*random$"} 
    ] 
    } 
] 

name值是Packages中tmLanguage文件的路徑。 ShellScript是tmLanguage文件所在的Packages文件夾的名稱。Shell-Unix-Generic是tmLanguage文件名。

+0

太好了,我要去檢查那個,謝謝。順便說一句,我正在檢查,似乎他們做了原始項目的分支,與subl 2和3兼容,至少出現在包控件中。 https://開頭github上。com/facelessuser/ApplySyntax – 2013-04-30 20:56:14

+0

DetectSyntax被刪除,因爲dev不再支持它。當面向用戶接管支持時,開發人員請求更改爲ApplySyntax的名稱(因爲它更好地描述了插件的功能)。 – skuroda 2013-04-30 23:23:39

+0

我必須已經安裝了原始版本,並提出了分叉版本的谷歌搜索。我會替換鏈接。謝謝。 – 2013-04-30 23:24:08

1

對於崇高3:

  1. Commmand + Shift + p:一套語法紅寶石
  2. 偏好 - >設置 - 語法具體
  3. 添加類似語法如下:

    { 
        "extensions": [ 
         "Gemfile", 
         "Gemfile.lock", 
         "Podfile", 
         "Podfile.lock", 
         "Manifest.lock", 
         "Fastfile_helper", 
         "Fastfile", 
         "Appfile" 
        ] 
    } 
    

真正不好的是,語法不支持模糊匹配,正則表達式事。這意味着您必須列出所有文件。