Welcome to Vifm Q&A, where you can ask questions about using Vifm. Registration is optional, anonymous posts are moderated. E-mail and GitHub logins are enabled.
0 votes
in vifm by

A few points I'd like to share:

  • I'm not sure if this is a bug, but some :normal and :normal! commands don't seem to do anything. E.g. :normal! gg works as expected, but :normal! cw doesn't rename the file and :normal! cg doesn't change the group.

  • The e (explore file) and cg (change group) key bindings seem to lack a corresponding command. Commands like :explore and :chgrp would improve consistency and be useful when creating custom commands.

  • The manual mentions that Alt + Shift + some key is possible. Ctrl + Shift + some key isn't mentioned, so it seems like <C-S> key bindings aren't supported, unlike in Vim? https://vifm.info/vimdoc.shtml#vifm-mappings

  • Perhaps the most important point: according to https://repology.org/project/vifm/versions the upcoming releases of both Debian 13 (Trixie) and Ubuntu 25.04 will still ship Vifm 0.12. I'm wondering what is preventing them from including the latest release, which contains many improvements? Luckily, there's the AppImage, but that doesn't work on aarch64. Not being able to install a recent version with apt install vifm is a bit impractical and might prevent new users from giving Vifm a try.

Thank you again for this amazing file manager.

1 Answer

+1 vote
by
selected by
 
Best answer

I'm not sure if this is a bug, but some :normal and :normal! commands don't seem to do anything. E.g. :normal! gg works as expected, but :normal! cw doesn't rename the file and :normal! cg doesn't change the group.

Command-line mode is finished intentionally at the end of :normal. Vifm follows Vim in this regard, although I'm not sure if it's an actual necessity.

The e (explore file) and cg (change group) key bindings seem to lack a corresponding command. Commands like :explore and :chgrp would improve consistency and be useful when creating custom commands.

:explore can be added. I would probably made :change accept an optional argument instead of adding :chgrp. You can also use :chown :<group> for that purpose, by the way.

The manual mentions that Alt + Shift + some key is possible. Ctrl + Shift + some key isn't mentioned, so it seems like <C-S> key bindings aren't supported, unlike in Vim? https://vifm.info/vimdoc.shtml#vifm-mappings

Handling of keys with multiple modifiers or things like arrows with modifiers is problematic. There are limitations in the ways terminals report them and Vifm additionally relies on curses to deal with the input. Vim does things differently. I think terminals are moving into direction of reporting complex shortcuts in a more predictable ways, so this might get resolved in the future.

Perhaps the most important point: according to https://repology.org/project/vifm/versions the upcoming releases of both Debian 13 (Trixie) and Ubuntu 25.04 will still ship Vifm 0.12. I'm wondering what is preventing them from including the latest release, which contains many improvements? Luckily, there's the AppImage, but that doesn't work on aarch64. Not being able to install a recent version with apt install vifm is a bit impractical and might prevent new users from giving Vifm a try.

Ubuntu is a Debian-derivative and Debian's maintainer of Vifm package is apparently busy with other things. I've pinged him a couple times about v0.13, but didn't get a response.

Thank you again for this amazing file manager.

Thanks for the feedback.

by

Command-line mode is finished intentionally at the end of :normal. Vifm follows Vim in this regard, although I'm not sure if it's an actual necessity.

Thanks for your reply.
Everything is clear, except for the first point.
I don't understand the difference between :normal! gg and :normal! cg, and why only the first one works. It's just a detail I noticed while creating custom commands.
In Vim, something like :normal! cw does work as expected.

by

gg starts and ends in normal mode. cg starts in normal mode and ends in a prompt which is treated as a command-line mode. If you try :normal! : in Vim, it won't work as well. :normal! cg gets processed as cg<esc>.

If you would like to make a bug report or feature request consider using GitHub, SourceForge or e-mail. Posting such things here is acceptable, but this is not a perfect place for them.
...