jakewvincent / mkdnflow.nvim

Fluent navigation and management of markdown notebooks
GNU General Public License v3.0
654 stars 37 forks source link

add edit_dirs option #184

Open Jasha10 opened 6 months ago

Jasha10 commented 6 months ago

Hello,

This PR adds an edit_dirs option that allows users to customize how MkdnEnter will behave when following a link that points to a directory (e.g. [foo](../bar/)).

Before this PR, :MkdnEnter would prompt the user to pick a file name within the given directory: image

This default behavior is preserved with the new config option edit_dirs = false.

If edit_dirs is true, then running :MkdnEnter on the link [foo](../bar/) is equivalent to running :edit <path> where is the absolute version of ../bar/. This enables the user's default directory-browsing plugin (e.g. netrw or oil.nvim) to open the directory.

Here's a screenshot after calling :MkdnEnter with edit_dirs = true to edit ../bar/ with netrw: image

If edit_dirs is a callback function, then running :MkdnEnter on [foo](../bar/) is equivalent to calling callback(path) where path is the absolute version of ../bar/.

As an example of usage with a callback: in my lua config I currently have edit_dirs = require('mini.files').open so that :MkdnEnter will invoke the mini.files plugin:

image