Bagaimana cara memeriksa nilai opsi Vim di Vimscript?


15

Di Vimscript, bagaimana saya bisa memeriksa nilai saat ini dari opsi Vim?

Untuk menguraikan, saya ingin membuat perintah untuk beralih dari Mode Full-GUI ( guioptions=+tM) ke Mode Hacker ( guioptions=-tM).

Namun, sepertinya saya tidak dapat menemukan cara untuk menguraikan :set guioptions?nilai

Jawaban:


13

Anda dapat menggunakan di &{option-name}dalam pernyataan if seperti:

if &guioptions ==# "Trl"
    echo "Toolbars and scrollbars are present!"
elseif &guioptions ==# ""
    echo "No toolbars and scrollbars present!"
endif

The &menetapkan bahwa nama variabel adalah pilihan Vim.

Lihat :help :let-&dokumentasi lengkapnya.


3

Akshay menyelesaikannya: Hanya memposting fungsi yang dihasilkan orang lain mungkin perlu / menginginkannya.

function! ToggleMenuBar()
    let l:menu_option = strridx(&guioptions, "m")
    let l:toolbar_option = strridx(&guioptions, "T")
    if l:menu_option > 0
        set guioptions-=m
    else
        set guioptions+=m
    endif
    if l:toolbar_option > 0
        set guioptions-=T
    else
        set guioptions+=T
    endif
endfunction
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.