Я пытаюсь определить пользовательскую конфигурацию lua для графического интерфейса nvim-qt. Для этого я сначала хотел бы включать и выключать полноэкранный режим, но сталкиваюсь с довольно странным поведением.
vim.g.nvim_qt = {
fullscreen = false,
fontsize = 14,
font_name = 'Iosevka\\ NF:h'
}
local toggle_fullscreen = function ()
vim.g.nvim_qt.fullscreen = not vim.g.nvim_qt.fullscreen
if vim.g.nvim_qt.fullscreen then
return '1'
else
return '0'
end
end
--vim.cmd('call GuiWindowFullScreen(' .. toggle_fullscreen() ..')')
vim.keymap.set('n', '<F11>', ':call GuiWindowFullScreen(' .. toggle_fullscreen() ..')<CR>')
Я ожидаю, что значение полноэкранного режима будет переключаться при каждом вызове функции. Однако оно всегда остается ложным. Кто-нибудь может объяснить, почему это происходит?
Я не на 100% знаком с фреймворком Neovim-qt, но ваша функция toggle_fullscreen() работает нормально. При локальном запуске я получаю поведение переключения.
Не могли бы вы предоставить дополнительную информацию о том, как именно работает раскладка клавиатуры? Я предполагаю, что функция set() просто запускает toggle_fullscreen один раз и сохраняет его в раскладке как «: call GuiWindowFullScreen (0)», что приводит к тому, что вы всегда вызываете функцию с ложным значением.
о боже, ты прав. Я отметил это как ответ, потому что это именно то, что происходит. не могу поверить, что я пропустил это, так как это совершенно очевидно. большое спасибо!