奇怪的要求,但:call search('\<\|\(\k\@!\S\)\+', 'W', line('.'))应该做的伎俩.要模拟w移动,我们必须搜索关键字\<的开头或非关键字非空格的开头\(\k\@!\S\)\+.我们关闭wrap('W'),并将搜索功能的范围限制为当前行.
这将停在该行的最后一个单词.如果您还想在该行的末尾停止,请添加\|$到正则表达式.
或者,您可以组装一个搜索命令,/\%42l\(\<\|\(\k\@!\S\)\+\)但是更难以放入当前行号(本例中为42),并处理'wrapscan'设置.