For "regular" filesystems (not IMAP or Notmuch folder hierarchies),
<change-dir> and the browser GUI now resolve paths via a new mutt library
function `mutt_realpath`. This means no more path buildup such as
"a/b/../../c". Additionally, Symlinks are resolved automatically. This is
a circumstance of realpath(). Note that a future PR is planned to add a
non-symlinking option.
The new <goto-parent> function has a default shortcut key of 'p' for parent.
Since this function uses the pre-existing `mutt_get_parent_path()`,
<goto-parent> may also work on IMAP and Notmuch folder hierarchies
(tested and working on IMAP)
Note: The paths passed to `mutt_get_parent_path()` formerly would not
parse correctly a path which included a final trailing slash (eg 'abc/')
So, I added it a check to that function to remove it before hitting
the parser.
Note2: The browser for IMAP was janky before this commit, but the browser
is not the primary mailbox navigation tool, afterall. At least 'p'
<goto-parent> adds to its functionality. I expect a similar evaluation for
Notmuch folder browsing, although I have never used Notmuch. Any
contributions to make a better IMAP/Notmuch folder browsing experience
are welcome. I have reported some of the fallbacks in Github PR #1037
comments (look for IMAP headlines).