Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使winrestview在vim脚本中工作_Vim - Fatal编程技术网

如何使winrestview在vim脚本中工作

如何使winrestview在vim脚本中工作,vim,Vim,我正在写一个小脚本来“缩放”vim中的一个分割,这样它就占据了整个屏幕。 但是,光标位置在调整大小操作期间丢失,我尝试使用winsaveview和winrestview恢复光标位置的操作失败。知道为什么吗? 非常感谢 " maximize split let t:maximized = "false" function MaximizeSplit() let l:position = winsaveview() if t:maximized == "false"

我正在写一个小脚本来“缩放”vim中的一个分割,这样它就占据了整个屏幕。 但是,光标位置在调整大小操作期间丢失,我尝试使用
winsaveview
winrestview
恢复光标位置的操作失败。知道为什么吗? 非常感谢

" maximize split
let t:maximized = "false"
function MaximizeSplit()
    let l:position = winsaveview()
    if t:maximized == "false"
        let t:maximized = "true"
        vertical resize
        resize
    elseif t:maximized == "true"
        let t:maximized = "false"
        execute "normal \<C-W>\="
    endif
    call winrestview(l:position)
endfunction
最大化拆分 设t:maximized=“false” 函数MaximizeSplit() 设l:position=winsaveview() 如果t:maximized==“false” 设t:maximized=“true” 垂直调整大小 调整大小 elseif t:maximized==“真” 设t:maximized=“false” 执行“正常\\=” 恩迪夫 调用winrestview(l:位置) 端功能