如何实现vim中Python代码里字典与赋值之间的转换操作?
- 内容介绍
- 文章标签
- 相关推荐
本文共计195个文字,预计阅读时间需要1分钟。
将 'foo' 和 'bar' 连接,并设置条件 'foo='bar''。若需多次执行,使用函数 !s : var2dict(...)。若为动作模式,执行以下命令:保存光标位置,运行 'normal! I\'ESCa\'ESCf=r:A,C\'ESCj^',调用 'setpos('.'),save_cursor',最后取消变量 'save_cursor'。
//<=>
foo = 'bar'
但想用.多次运行.
function! s:var2dict(...)if a:0
"动作"
" let save_cursor = getcurpos()"
execute "normal! I'\<ESC>ea'\<ESC>f=r:A,\<ESC>j^"
" call setpos('.', save_cursor)"
" unlet save_cursor"
else
"安装"
let &operatorfunc = matchstr(expand('<sfile>'), '[^. ]*$')
echom &operatorfunc
return "g@\<space>"
endif
endfunction
nnoremap <expr> <leader>{ <sid>var2dict()
:h operatorfunc,此映射为,按下.时执行的操作
本文共计195个文字,预计阅读时间需要1分钟。
将 'foo' 和 'bar' 连接,并设置条件 'foo='bar''。若需多次执行,使用函数 !s : var2dict(...)。若为动作模式,执行以下命令:保存光标位置,运行 'normal! I\'ESCa\'ESCf=r:A,C\'ESCj^',调用 'setpos('.'),save_cursor',最后取消变量 'save_cursor'。
//<=>
foo = 'bar'
但想用.多次运行.
function! s:var2dict(...)if a:0
"动作"
" let save_cursor = getcurpos()"
execute "normal! I'\<ESC>ea'\<ESC>f=r:A,\<ESC>j^"
" call setpos('.', save_cursor)"
" unlet save_cursor"
else
"安装"
let &operatorfunc = matchstr(expand('<sfile>'), '[^. ]*$')
echom &operatorfunc
return "g@\<space>"
endif
endfunction
nnoremap <expr> <leader>{ <sid>var2dict()
:h operatorfunc,此映射为,按下.时执行的操作

