我经常必须更正以下导轨代码:
assert_equal value, expected
assert_equal的两个参数乱序,应该是:
assert_equal expected, value
在vim中,从第一行到第二行的最有效方式是什么?
答案 0 :(得分:6)
通过正则表达式:
:s/\v([^, ]+)(\s*,\s*)([^, ]+)/\3\2\1/
如果你经常这样做,你可以制作一张地图,例如:
:nmap <F5> :s/\v([^, ]+)(\s*,\s*)([^, ]+)/\3\2\1/<CR>
将光标放在要翻转的行上,然后点击F5
。
答案 1 :(得分:5)
这个将光标所在的单词与下一个单词交换 - 只需在命令模式下按F9:
:map <F9> "qdiwdwep"qp
答案 2 :(得分:1)
映射组合键以执行命令:
:s/^assert_equal \(.*\), \(.*\)$/assert_equal \2, \1
答案 3 :(得分:1)
我一直喜欢正则表达式搜索和替换这些类型的任务:
:s/\(\w*\), \(\w*\)/\2, \1/
将逗号分隔列表中的第一个单词与第二个单词交换。
答案 4 :(得分:0)
哼......我会说“tdwxx $ i,^ [”tp但这不是真的有效或简单,只是快速输入......
答案 5 :(得分:0)
对于这个简单的事情,我只想制作一个小宏
qadf ea, ^[pxxq
然后@a远离