这可以映射{some_variable_name}=到{some_variable_name} =in吗vim?哪里?{some_variable_name}[A-Za-z0-9]
根据其他一些提示,我正在尝试:
:inoremap ?P<name>([A-Za-z0-9-_])= ${name} =
Run Code Online (Sandbox Code Playgroud)
编辑,如果我输入“a =”,它将转换为“a =”,如果我输入“blah =”,它将转换为“blah =”
这是行不通的。
请帮忙。
编辑:可能是定义问题的更简单的方法:动态地将“=”替换为“=”,后跟[A-z0-9]。
我正在尝试,但尚未成功。请帮忙
这个插入模式映射做了我认为你想要的,但你的问题是一个真正的混乱所以\xe2\x80\xa6 很好:
\n\n:inoremap <expr> = getline(".")[col(".") - 2] !~# "[a-zA-Z]" ? "= " : " = "\nRun Code Online (Sandbox Code Playgroud)\n\n但在我看来,打字<Space>=是一个更好的解决方案。
编辑:
\n\n由于 Vim 在插入模式下处理光标位置的方式有些“奇怪”,因此getline(".")[col(".") - 2] !~# "[a-zA-Z]"不直观地将光标之前的字符与正则表达式进行比较[a-zA-Z]。用于getline(".")[col(".") - 1]光标后面的字符。