From 61fbb386b1d34aaf18469c176a30e8bc48bf2a83 Mon Sep 17 00:00:00 2001 From: cy Date: Tue, 7 Jan 2025 22:39:33 -0500 Subject: [PATCH] neovim: rm restore cursor thing --- home/nvim/init.lua | 48 ---------------------------------------------- 1 file changed, 48 deletions(-) diff --git a/home/nvim/init.lua b/home/nvim/init.lua index df1f89f..b57e106 100644 --- a/home/nvim/init.lua +++ b/home/nvim/init.lua @@ -48,54 +48,6 @@ api.nvim_create_autocmd("VimLeave", { -- blinking cursor in insert mode opt.guicursor = "i-ci-ve:ver25-blinkon500-blinkon500" --- copied from https://github.com/jdhao/nvim-config/blob/c7fb090e4ce94e72414169a247ac62f049d6b03b/lua/custom-autocmd.lua#L138 --- Return to last cursor position when opening a file, note that here we cannot use BufReadPost --- as event. It seems that when BufReadPost is triggered, FileType event is still not run. --- So the filetype for this buffer is empty string. -api.nvim_create_autocmd("FileType", { - group = api.nvim_create_augroup("resume_cursor_position", { clear = true }), - pattern = "*", - callback = function(ev) - local mark_pos = api.nvim_buf_get_mark(ev.buf, '"') - local last_cursor_line = mark_pos[1] - - local max_line = vim.fn.line("$") - local buf_filetype = api.nvim_get_option_value("filetype", { buf = ev.buf }) - local buftype = api.nvim_get_option_value("buftype", { buf = ev.buf }) - - -- only handle normal files - if buf_filetype == "" or buftype ~= "" then - return - end - - -- Only resume last cursor position when there is no go-to-line command (something like '+23'). - if vim.fn.match(vim.v.argv, [[\v^\+(\d){1,}$]]) ~= -1 then - return - end - - if last_cursor_line > 1 and last_cursor_line <= max_line then - -- vim.print(string.format("mark_pos: %s", vim.inspect(mark_pos))) - -- it seems that without vim.schedule, the cursor position can not be set correctly - vim.schedule(function() - local status, result = pcall(api.nvim_win_set_cursor, 0, mark_pos) - if not status then - api.nvim_err_writeln( - string.format( - "Failed to resume cursor position. Context %s, error: %s", - vim.inspect(ev), - result - ) - ) - end - end) - -- the following two ways also seem to work, - -- ref: https://www.reddit.com/r/neovim/comments/104lc26/how_can_i_press_escape_key_using_lua/ - -- vim.api.nvim_feedkeys("g`\"", "n", true) - -- vim.fn.execute("normal! g`\"") - end - end, -}) - keymap.set("n", "s", require("nvim-tree.api").tree.toggle, { desc = "toggle nvim-tree", silent = true,