2

在 vim 中是否可以在正常模式下进行条件映射?我已经看到它用于插入模式。我想根据函数的结果重新映射 gq。就像是:

nnoremap gq if(g:set_formatprg()) | gq | else | = | endif

请注意,它g:set_formatprg()并不总是具有相同的值,因此它不能被替换为

if(!g:set_formatprg()) | nnoremap gq = | endif
4

1 回答 1

4

表情图让一切变得简单

nnoremap <expr> gq g:set_formatprg() ? 'gq' : '='

如需更多帮助,请参阅

:h map-expression
于 2013-03-15T20:06:03.060 回答