在vim中切换一个空白屏幕,透过透明窗口查看

时间:2013-02-28 17:34:23

标签: vim command-line

我在Vim工作(不是GVim,或MacVim等),我使用了一个非透明的终端,所以我可以看到它背后的背景(this movement cheat-sheet

我想要一种方法,让vim的实例成为一个空白屏幕,然后能够像以前那样重新绘制它。也许我只是在网上搜索失败,但我找不到任何解决这个问题的方法。

我对任何事情都感激不尽,甚至只是链接到一些文档方法,可以让我从兔子洞开始。

2 个答案:

答案 0 :(得分:1)

如果您编辑新缓冲区(在不存在的文件中),您将获得一个空白屏幕

:ed foo

完成后你可以删除它

:bd

答案 1 :(得分:1)

我通过点点滴滴,相关问题以及@Ken和@Prince Goulash的帮助实现了我的渴望效果。这是我的.vimrc中的vimscript的功能部分:

function! TabIsEmpty()
    " From Stackoverflow: http://stackoverflow.com/a/5026456/212307
    " Remember which window we're in at the moment
    let initial_win_num = winnr()

    let win_count = 0
    " Add the length of the file name on to count:
    " this will be 0 if there is no file name
    windo let win_count += len(expand('%'))

    " Go back to the initial window
    exe initial_win_num . "wincmd w"

    " Check count
    if win_count == 0
        " Tab page is empty
        return 1
    else
        return 0
    endif

endfunction
function! ToggleBlankTab()
    if TabIsEmpty() == 1
        tabc
    else
        tabe
    endif
endfunction
nnoremap <leader>m :call ToggleBlankTab()<cr>