tamago324 / lir.nvim

Neovim file explorer

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Toggle mode, disabling going down

thekaganugur opened this issue · comments

Hi, thank you for the amazing plugin.

I want to disable going one line below when toggling. It really bothers me. Is there a way to configure it?
Thanks.

hi @kgnugur

Thank you for asking the question.
What you are saying is that you want the cursor to always jump to the first line when you open lir? If so, you can do so by setting the following.

function _G.LirSettings()
  vim.cmd('normal! gg')
end
vim.cmd [[augroup lir-settings]]
vim.cmd [[  autocmd!]]
vim.cmd [[  autocmd Filetype lir :lua LirSettings()]]
vim.cmd [[augroup END]]

Please tell me if I'm wrong.

Let's say we opened lir, and pressed Jthat invokes the below function.


function toggle()
  mark_actions.toggle_mark()
  vim.cmd('normal! j')
end

Now, the item under the cursor is marked and my cursors go one line below --> which is this part that I don't like.
I just want to mark without moving any automatic cursor move.

Now, the item under the cursor is marked and my cursors go one line below --> which is this part that I don't like.
I just want to mark without moving any automatic cursor move.

I see, that was your intention. I'm sorry. I was mistaken.

It is possible to pass a table of keys and their corresponding functions to the mappings of setup.
So, if the key is J and the value is mark_actions.toggle_mark, you can select it without moving it down.
It is also possible to pass in your own defined functions, so you can easily create your own actions.
See also the wiki.

local lir = require'lir'
local mark_actions = require'lir.mark.actions'

lir.setup({
  -- ...
  mappings = {
    J = mark_actions.toggle_mark,

    ['!'] = function()
      -- What you want to do
      print('hello world!')
    end
  }
})

My bad I feel stupid 😀
vim.cmd('normal! j') was the cause.
Than you.

I'm glad I could help you.
Please feel free to ask me if you need anything else.