xaizek / vifm (License: GPLv2+) (since 2018-12-07)
Vifm is a file manager with curses interface, which provides Vi[m]-like environment for managing objects within file systems, extended with some useful ideas from mutt.
Commit 474f0ab7d44a6710654d5fd04d417900e53cfe5a

Adjust statusbar message according to operation
On p, P, al and rl normal mode commands.

Thanks to CaptainFantastic and qadzek.

See
https://q2a.vifm.info/2278/proposition-for-improving-message-1-file-inserted
Author: xaizek
Author date (UTC): 2026-03-06 09:24
Committer name: xaizek
Committer date (UTC): 2026-03-11 22:20
Parent(s): caa492aa8dffec6109f73eed0830b8d95b03c506
Signing key: 99DC5E4DB05F6BE2
Tree: 94f961cb48023bbd9ef4660c1c5b6989c3a32227
File Lines added Lines deleted
ChangeLog 3 0
src/fops_put.c 12 2
File ChangeLog changed (mode: 100644) (index 2c71eedb2..488f06133)
93 93
94 94 Documented name conflict resolution dialog. Patch by Kirill Rekhov. Documented name conflict resolution dialog. Patch by Kirill Rekhov.
95 95
96 Adjusted statusbar message according to the operation performed by p, P,
97 al and rl normal mode commands. Thanks to CaptainFantastic and qadzek.
98
96 99 Fixed 'trashdir' with "%r" on BSD-like systems (those with getmntinfo() Fixed 'trashdir' with "%r" on BSD-like systems (those with getmntinfo()
97 100 instead of getmntent() API). The regression was apparently introduced in instead of getmntent() API). The regression was apparently introduced in
98 101 v0.9.1-beta. Thanks to sublimal. v0.9.1-beta. Thanks to sublimal.
File src/fops_put.c changed (mode: 100644) (index fa2d634cf..6dba022de)
... ... put_files_i(view_t *view, int start)
499 499
500 500 regs_pack(put_confirm.reg->name); regs_pack(put_confirm.reg->name);
501 501 update_cursor_position(view); update_cursor_position(view);
502 ui_sb_msgf("%d item%s inserted%s", put_confirm.processed,
503 psuffix(put_confirm.processed), fops_get_cancellation_suffix());
502
503 const char *operation = "put";
504 switch(put_confirm.op)
505 {
506 case CMLO_COPY: operation = "copied"; break;
507 case CMLO_MOVE: operation = "moved"; break;
508 case CMLO_LINK_REL: operation = "linked (rel)"; break;
509 case CMLO_LINK_ABS: operation = "linked (abs)"; break;
510 }
511 ui_sb_msgf("%d item%s %s%s", put_confirm.processed,
512 psuffix(put_confirm.processed), operation,
513 fops_get_cancellation_suffix());
504 514
505 515 return 1; return 1;
506 516 } }
Hints

Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://code.reversed.top/user/xaizek/vifm

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@code.reversed.top/user/xaizek/vifm

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a pull request:
... clone the repository ...
... make some changes and some commits ...
git push origin master