gpt4 book ai didi

Vimscript : how pass variable/float into string?

转载 作者:行者123 更新时间:2023-12-02 06:17:17 25 4
gpt4 key购买 nike

在阅读了有关 Vimscript 的手册后,我想创建自己的 Vim 脚本。

我认为在 Vim 中使用 golden ratio from Wikipedia 分割窗口会很好。 .

当您在 vsplit 中切换到另一个窗口时,您将获得黄金比例。为此,我创建了这个 Vimscript。

function! GoToLeftWindow()
execute "vertical resize 109"
execute "wincmd h"
endfunction

function! GoToRightWindow()
execute "vertical resize 109"
execute "wincmd l"
endfunction

function! CreateNewWindow()
execute "vsplit"
execute "wincmd h"
execute "vertical resize 109"
execute "wincmd l"
endfunction


nnoremap <A-n> :call CreateNewWindow()<CR>
nnoremap <silent> <left> :call GoToLeftWindow()<CR>
nnoremap <silent> <right> :call CurrentWin()<CR>

所以,当我有垂直窗口时,我从一个窗口切换到另一个窗口,我将始终在事件窗口中拥有黄金比例。听起来不错。:)

但我注意到,当我在不同的桌面上工作时,具有不同的分辨率,黄金比例消失了。
为了防止这种情况,我决定让 Vim 计算黄金比例。因此,在每个具有不同字体大小的系统上,您将始终拥有黄金比例。

为了使这成为可能,我了解了有关 Vimscript 的更多信息,并创建了这个计算:
function! GoToRightWindow()
let curWin= winwidth(0)
lockvar curWin
let golden_ratio = 1.618
let result = curWin / golden_ratio
let ratio = curWin - result

execute "vertical resize " . ratio
execute "wincmd l"
endfunction

winwidth(0) (参见 :echo winwidth(0),是当前窗口的宽度 (0)。)但我得到错误 806,我的字符串中有一个浮点数。所以 Vim 不允许我在连接时使用 Float 作为字符串。我尝试使用 str2float(ratio) 将其转换为字符串,但它也给出了错误。

并且可能我的注意力也有问题。任何人都有一个建议,我如何将浮点数与字符串连接起来?

提前致谢。

最佳答案

string()将变量转换为字符串类型。

:help string()

关于Vimscript : how pass variable/float into string?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24717380/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com