دستهبندی: #آموزشی #کاربردی #neovim
راجب ذخیره مکان cursor داخل نئوویم:
یه فیچری که دیفالت داخل ویم وجود داره اما نئوویم نه،
ذخیره کردن مکان cursor هست که اجازه میده بعد از خروج از فایل و ورود دوباره بهش مکان cursor به آخرین جایی که بوده برگرده.
داخل help نئوویم اگه سرچ کنید
restore-cursor یه دستور برای حلش گفته، اما با vimscript هست.برای همین از vim.cmd استفاده کردم تا بتونم مستقیم داخل init.lua قرارش بدم که نتیجه این شد:
-- :h restore-cursor: {{{
vim.cmd([[
autocmd BufRead * autocmd FileType <buffer> ++once
\ if &ft !~# 'commit\|rebase' && line("'\"") > 1 && line("'\"") <= line("$") | exe 'normal! g"' | endif
]])
-- }}}
در مورد این که چرا این فیچر به صورت پیش فرض داخل نئوویم نیست و همینطور معادل هایی که به جای قرار دادن vimscript داخل vim.cmd، کامل از لوا استفاده کردن میتونید لینک زیر رو چک کنید:https://github.com/neovim/neovim/issues/16339
یه بحثی هم راجب عملکرد و بهینه شدن این روش تو گروه شد آخرش به این نتیجه رسیدیم
.
vim.api.nvim_create_autocmd({ "BufReadPost" }, {
pattern = { "*" },
callback = function()
vim.api.nvim_exec('silent! normal! g`"zv', false)
end,
})
روش دوم ایده پاکروح بود.
روش اول دلاتو
(پست ادیت شد)
🔅@LinFAQ
🔅@LinAcademy