2014-02-08 29 views
1

我一直在使用Sublime很長一段時間。我沒有做過很多的定製,特別是最近,但它以我從未見過的方式突出了Ruby的界限。我不知道它來自哪裏,或者它爲什麼被突出顯示。Sublime Text中的意外突出顯示3

將文件內容重新調整到新緩衝區並重新保存並不能解決問題,突出顯示也出現在新文件中。

有沒有人看到這個或有任何指針,爲什麼它發生?

enter image description here

全部文件內容

require 'serialport' 

port_str = '/dev/tty.usbmodemfd121' 
baud_rate = 9600 
data_bits = 8 
stop_bits = 1 
parity = SerialPort::None 

sp = SerialPort.new(port_str, baud_rate, data_bits, stop_bits, parity) 

while true do 
    sp.puts 123 
end 

sp.close 

崇高設置:

{ 
"alignment_chars": 
[ 
    "=" 
], 
"alignment_space_chars": 
[ 
    "=" 
], 
"font_size": 15.0, 
"ignored_packages": 
[ 
    "LiveReload", 
    "Git", 
    "_User", 
    "SublimeLinter", 
    "BracketHighlighter", 
    "Rubocop" 

], 
"scroll_past_end": true 
} 

紅寶石特定的設置

{ 
    // The number of spaces a tab is considered equal to 
    "tab_size": 2, 

    // Set to true to insert spaces when tab is pressed 
    "translate_tabs_to_spaces": true, 

    // If translate_tabs_to_spaces is true, use_tab_stops will make tab and 
    // backspace insert/delete up to the next tabstop 
    "use_tab_stops": true, 
} 

包控制設置

{ 
"auto_upgrade_last_run": null, 
"installed_packages": 
[ 
    "AdvancedNewFile", 
    "Alignment", 
    "Better CoffeeScript", 
    "BracketHighlighter", 
    "CoffeeComplete Plus (Autocompletion)", 
    "CoffeeScript", 
    "DocBlockr", 
    "Emmet", 
    "Gist", 
    "Git", 
    "IndentGuides", 
    "LiveReload", 
    "Nettuts+ Fetch", 
    "Package Control", 
    "PhpBeautifier", 
    "PlainTasks", 
    "RSpec (snippets and syntax)", 
    "RuboCop", 
    "SCSS", 
    "SublimeLinter", 
    "Todo", 
    "Wordpress" 
] 
} 

更新:我認爲這個問題是由於RuboCop包。但它比這更復雜一點。

目前Rubocop已啓用,我看到突出顯示並單擊突出顯示的行顯示在底部狀態欄中的進攻,如此處所示。

enter image description here

但是禁用Rubocop包並重新啓動後崇高仍有突出,如下所示。頂部顯示的lst是Sublime的「包控制:啓用包」命令的結果,這意味着它顯示當前禁用的包。此外,單擊突出顯示的行並不像以前那樣在底部狀態欄中報告攻擊。

enter image description here

我感覺有信心,這個問題是Rubocop包,雖然我真的沒有診斷。如有需要,我很樂意解決這個問題。

+1

好的,現在追加你的圖片。 –

+0

嗯,在Sublime Text 2中試過,沒有意外的突出顯示... – aceofbassgreg

回答

1

這確實是一個與Sublime RuboCop插件相關的問題。

主要錯誤是,標記在重新啓動ST後失效。感謝@imbric報告它!

我修正了今天 - 如果您通過包控件更新插件,意外標記應按預期行事。

您可以通過ST菜單條目「RuboCop:切換自動檢查」關閉標記。

+0

修復似乎很好。我沒有必要使用Package Control進行更新,因爲我認爲Sublime在原始帖子後的某個時候自動爲我做了一個更新。 (我在v2014.2.16.11.04.23上) – imbric

0

問題的一部分也是BracketHighlighter。我不知道那紅寶石很好,所以我不知道爲什麼它的發生,但我得到BracketHighlighter(一噸其他插件)以下啓用:

BracketHighlighter enabled

當我禁用BracketHighlighter,問號消失,while附近的框也消失了。嘗試禁用BracketHighlighter,並查看您的突出顯示是否消失。

此外,當我刪除單詞do時,該框消失,因此它可能只是一個Ruby語法錯誤。

+0

我不確定這是我看到的問題,因爲BracketHighlight總是被禁用。 – imbric

+0

@imbric您是否嘗試在'while true'之後擺脫'do'來查看問題是否消失? – MattDMo

+0

是的,這不是一個Rubocop進攻,問題依然存在。這裏的問題涉及在禁用軟件包後突出顯示剩餘的內容,或者在啓用時未顯示。 – imbric

相關問題