Ruby on rails 如何在Vim中缩进Ruby和Rails代码?
我只是想知道是否有可能在Vim中自动缩进Rails代码,而不是这样:Ruby on rails 如何在Vim中缩进Ruby和Rails代码?,ruby-on-rails,ruby,vim,indentation,Ruby On Rails,Ruby,Vim,Indentation,我只是想知道是否有可能在Vim中自动缩进Rails代码,而不是这样: validates :email, :presence => true, :format => { :with => email_regex }, :uniqueness => { :case_sensitive => false } 为此: validates :email, :presence => true, :format =
validates :email, :presence => true,
:format => { :with => email_regex },
:uniqueness => { :case_sensitive => false }
为此:
validates :email, :presence => true,
:format => { :with => email_regex },
:uniqueness => { :case_sensitive => false }
最好的方法不是在Vim中使用内置对齐,而是使用Dr.Chip,它用于水平对齐垂直列中的任意符号 例如,
1,3Align=>
将在=>
上对齐。通过使用AlignCtrl
函数,您可以获得极其详细的订购等信息,但其功能范围可能由其文档决定<代码>:)我同时使用和插件
Align有一些很好的预构建对齐,而Tablear允许您设计一个用于匹配字段的正则表达式。最近我发现自己更多地使用表格,但您的里程数可能会有所不同。谢谢您的回答 如果有人也需要此功能,请在此过程中配合:
:Tabularize /^[^:]*\zs:/r1c0l0
:Tabularize /^[^=>]*\zs=>/l1
如果您想在vimrc中的函数中使用此选项:
function IndentV()
Tabularize /^[^:]*\zs:/r1c0l0
Tabularize /^[^=>]*\zs=>/l1
endfunction
map <Leader>iv :call IndentV()<cr>
函数IndentV()
制表/^[^::*\zs:/r1c0l0
制表/^[^=>]*\zs=>/l1
端功能
映射四:调用IndentV()
因此,您只需在视觉模式下选择文本,然后按
\iv
即可实现此操作。谢谢@sleepynate我发现它可以与以下命令一起工作::AlignCtrl-Wlp0P1::Align::AlignCtrl-Wlp1P1::Align=>