Scala 使'f='移动到其中一个=>;或⇒;

Scala 使'f='移动到其中一个=>;或⇒;,scala,vim,Scala,Vim,我在Vim中编辑了大量Scala代码,这意味着我在前往case语句的RHS(或其他任何地方)时大量点击了f=: 但是Scala支持unicode字符,这意味着很多人会使用⇒而不是=>,这使得f…成为一种痛苦。有人知道如何让f=移动到下一个=或⇒,以先到者为准?尝试将其添加到vimrc中: nmap f= :call search('=\\|⇒')<CR> nmap f=:调用搜索('=\\|⇒') 这将别名(映射)f=到对搜索函数的调用,该函数将跳转到下一个=或⇒的答案是您要求的

我在Vim中编辑了大量Scala代码,这意味着我在前往case语句的RHS(或其他任何地方)时大量点击了
f=


但是Scala支持unicode字符,这意味着很多人会使用
而不是
=>
,这使得
f…
成为一种痛苦。有人知道如何让
f=
移动到下一个
=
,以先到者为准?

尝试将其添加到vimrc中:

nmap f= :call search('=\\|⇒')<CR>
nmap f=:调用搜索('=\\|⇒')
这将别名(映射)
f=
到对搜索函数的调用,该函数将跳转到下一个
=
的答案是您要求的答案。另一个选项是使用有向图。您可以键入
=>
进行编码>。您也可以将此有向图与
f
命令一起使用(例如
f=>
)。无需映射等,尽管键入可能有点不方便


我更喜欢此解决方案,因为它保留了其他操作员挂起的命令,如
df=
cf=
等,并允许使用
F
t
等。

人们认真使用
in code?@bamboon不是直接的,不是。但是使用scalariform并自动进行这种重写是相当常见的,它使代码更具可读性。类似地,
nnoremap f=/⇒\\|=
@Conner,是的,但是因为我已经打开了
hlsearch
,它也会突出显示every=和⇒ 在我的文件中。当然:)我花了很多时间想弄清楚如何定制
f
和朋友,但这很好。谢谢,这太好了。太糟糕了,它不能很好地与
集成和其他运动。如果您想让它更像
f
(坚持当前行),则使用一些可选参数来
search()
调用search('=\|⇒', '', 行('.')
。请参阅
:帮助搜索()
。它不如
那么方便
,但是你可以用
@:
重复,然后用
@
,这可能并不比
f=
好。谢谢,但是
f=>
可以更容易地查找另一个字符,而
f
t
(等等)可以代替这个字符
nmap f= :call search('=\\|⇒')<CR>