require "nvchad.options" local o = vim.o o.relativenumber = true -- относительные номера строк (5j, 12k) o.scrolloff = 8 -- курсор не прижимается к краю экрана o.wrap = false -- длинные строки не переносятся o.cursorline = true -- подсветка текущей строки o.swapfile = false -- без .swp файлов o.clipboard = "unnamedplus" -- yank/delete → системный буфер обмена -- Русская раскладка: хоткеи работают как на английской vim.opt.langmap = "ФИСВУАПРШОЛДЬТЩЗЙКЫЕГМЦЧНЯ;ABCDEFGHIJKLMNOPQRSTUVWXYZ," .. "фисвуапршолдьтщзйкыегмцчня;abcdefghijklmnopqrstuvwxyz" -- Определение текущей раскладки через im-select (для строки статуса) vim.g.im_current_lang = "EN" if vim.fn.executable "im-select" == 1 then local im_timer = vim.uv.new_timer() im_timer:start( 0, 1000, vim.schedule_wrap(function() vim.fn.jobstart({ "im-select" }, { stdout_buffered = true, on_stdout = function(_, data) if data and data[1] and data[1] ~= "" then local new_lang = data[1]:find "Russian" and "RU" or "EN" if vim.g.im_current_lang ~= new_lang then vim.g.im_current_lang = new_lang vim.schedule(function() vim.cmd.redrawstatus() end) end end end, }) end) ) end