正常模式下的条件映射?

时间:2013-03-15 19:50:31

标签: vim map conditional

在vim中是否可以在正常模式下执行条件映射? 我看过它的插入模式。 我想重新映射gq,具体取决于函数的结果。 类似的东西:

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

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

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

1 个答案:

答案 0 :(得分:4)

表达式图表可以轻松实现

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

如需更多帮助,请参阅

:h map-expression
相关问题