我使用SublimeText几个月后使用ruby,我有一个注释自动缩进的问题。缩进使用注释的缩进,并使用此缩进缩进所有以下代码。我希望自动缩进忽略(至少)或设置前一代码的缩进(充其量),但根本不要删除评论的缩进:
使用此编辑器的所有同事都有同样的问题 这是SublimeText重新缩进的示例代码
class Test
def method1
end
#Bad indentation
def method2
somecode
end
def method3
somecode
end
end
通缉:
class Test
def method1
end
#Bad indentation
def method2
somecode
end
def method3
somecode
end
end
我做了一个quickfix 〜/ .config / sublime-text-2 / Packages / Default / Indentation Rules - Comments.tmPreferences
更换
<key>scope</key>
<string>comment</string>
<key>settings</key>
<dict>
<key>preserveIndent</key>
<true/>
</dict>
使用
<key>scope</key>
<string>comment</string>
<key>settings</key>
<dict>
<key>preserveIndent</key>
<false/>
</dict>
但它会影响默认行为,我更喜欢只影响Ruby的行为。 有没有人有更好的解决方案?
答案 0 :(得分:1)
我把它放在我的用户设置文件中:
偏好设置 - &gt;设置 - 用户:
{
"color_scheme": "Packages/Theme - Refined/Color Schemes/Danro.tmTheme",
"ensure_newline_at_eof_on_save": true,
"font_size": 18.0,
"hot_exit": false,
"ignored_packages":
[
"Vintage"
],
"remember_open_files": false,
"save_on_focus_lost": true,
"tab_size": 2,
"translate_tabs_to_spaces": true
}
我尝试重新创建您的问题,但我无法强制执行这些设置。
答案 1 :(得分:1)
对于缩进,以下是关键设置
"tab_size": 2,
"translate_tabs_to_spaces": true
这对我有用
{
"caret_style": "solid",
"color_scheme": "Packages/Color Scheme - Default/Monokai.tmTheme",
"enable_tab_scrolling": false,
"folder_exclude_patterns":
[
".git",
".hg",
".sass-cache",
"log",
"tmp",
"script",
"vendor",
],
"font_size": 10,
"highlight_line": true,
"highlight_modified_tabs": true,
"ignored_packages":
[
"Vintage"
],
"rulers":
[
100
],
"scroll_past_end": false,
"tab_size": 2,
"translate_tabs_to_spaces": true
}
答案 2 :(得分:0)
我建议你使用BeautifyRuby ST2包。您还需要安装htmlbeautifier
gem。不仅您的评论,而且您的代码将缩进很好。
如果使用rvm,则可能需要更改BeautifyRuby.sublime-settings
以使用rvm安装的ruby,而不是系统安装的ruby。要找出您正在使用的ruby的路径,请在shell提示符下键入which ruby
。将此路径粘贴为名为"ruby"
的键的值,例如:
"ruby": "/home/thetuxracer/.rvm/rubies/ruby-2.0.0-p247/bin/ruby"
答案 3 :(得分:0)
对于ST3, 偏好 - &gt;设置 - 用户
添加以下代码: { “tab_size”:2 }
默认情况下,SublimeText使用长度为4个字符的硬标签。