问题
How do I insert <% %> in Vim? I have rails.vim.
回答1:
I've been using the surround.vim plugin for a long time, but not the rails.vim plugin. Turns out that the rails.vim plugin is adding functionality to surround.vim, or is piggy-backing on it. Either way, I got it working this-a way:
- Install the rails.vim plugin if it isn't already, and open an ERB document. Vim should recognize it as a
erubyfiletype. - If it doesn't use
:set filetype=erubyReturn to make Vim see things your way. - Visually select some text you want to wrap with the ERB tags using v or V.
- Press S= or S-. (That's capital S)
- The selected text should be wrapped in a
<%= %>or<%- %>block.
I just confirmed this works in column-selection mode too.
This is documented in the rails.vim help: from the command-mode search for :h rails-surround. And if you don't have the help available for rails.vim, it's because the instructions weren't followed for installing it:
:helptags ~/.vim/doc
The rails.vim plugin requires the surround.vim plugin also, so that has to be previously installed. I use that plugin's functionality at least once a minute when I'm editing. It rocks.
回答2:
It is also possible to insert erb tags in INSERT mode (using rails.vim and surround.vim plugins):
- Press Ctrl + s and = afterwards to insert
<%= %>block - Press Ctrl + s and - afterwards to insert
<% -%>block - Press Ctrl + s and # afterwards to insert
<%# %>block
回答3:
For surroundings in the erb views you might need Tim Pope's ragtag. It can handle different erb specific surroundings. Check out the documentation.
来源:https://stackoverflow.com/questions/4275209/how-do-i-insert-erb-tags-with-vim