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 064d4387bab1cce67c19ed18cd8a51c1d5310d7e

Again titles in the undo list.
And fix redraw on Enter key after terminal resizing when in menu mode.
Author: xaizek
Author date (UTC): 2011-07-19 19:15
Committer name: xaizek
Committer date (UTC): 2011-07-19 19:15
Parent(s): 24c405d2ddc760c44d6622a25e6a5c96acc75f46
Signing key:
Tree: de0b262df3c9bfac333d597d6f937248d6277436
File Lines added Lines deleted
src/commands.c 6 6
src/menu.c 3 0
File src/commands.c changed (mode: 100644) (index 13b2298d5..176eed193)
... ... execute_builtin_command(FileView *view, cmd_params *cmd)
1586 1586 } }
1587 1587 } }
1588 1588
1589 snprintf(buf, sizeof(buf), "!%s in %s", cmd->args,
1590 replace_home_part(view->curr_dir));
1589 snprintf(buf, sizeof(buf), "in %s: !%s",
1590 replace_home_part(view->curr_dir), cmd->args);
1591 1591 cmd_group_begin(buf); cmd_group_begin(buf);
1592 1592 add_operation(com + i, NULL, NULL, "", NULL, NULL); add_operation(com + i, NULL, NULL, "", NULL, NULL);
1593 1593 cmd_group_end(); cmd_group_end();
 
... ... skip_word(const char *cmd)
2066 2066 } }
2067 2067
2068 2068 static int static int
2069 execute_user_command(FileView *view, cmd_params *cmd)
2069 execute_user_command(FileView *view, cmd_params *cmd, const char *command)
2070 2070 { {
2071 2071 char *expanded_com = NULL; char *expanded_com = NULL;
2072 2072 int use_menu = 0; int use_menu = 0;
 
... ... execute_user_command(FileView *view, cmd_params *cmd)
2163 2163 { {
2164 2164 char buf[COMMAND_GROUP_INFO_LEN]; char buf[COMMAND_GROUP_INFO_LEN];
2165 2165
2166 snprintf(buf, sizeof(buf), "Run %s user command in %s",
2167 command_list[cmd->is_user].name, replace_home_part(view->curr_dir));
2166 snprintf(buf, sizeof(buf), "in %s: !%s", replace_home_part(view->curr_dir),
2167 command);
2168 2168
2169 2169 cmd_group_begin(buf); cmd_group_begin(buf);
2170 2170 add_operation(expanded_com, NULL, NULL, "", NULL, NULL); add_operation(expanded_com, NULL, NULL, "", NULL, NULL);
 
... ... execute_command(FileView *view, char *command)
2212 2212 if(cmd.builtin > -1) if(cmd.builtin > -1)
2213 2213 result = execute_builtin_command(view, &cmd); result = execute_builtin_command(view, &cmd);
2214 2214 else else
2215 result = execute_user_command(view, &cmd);
2215 result = execute_user_command(view, &cmd, command);
2216 2216
2217 2217 free(cmd.cmd_name); free(cmd.cmd_name);
2218 2218 free(cmd.args); free(cmd.args);
File src/menu.c changed (mode: 100644) (index 071a36b3e..4399bd8f7)
... ... cmd_ctrl_m(struct key_info key_info, struct keys_info *keys_info)
278 278 reset_popup_menu(saved_menu); reset_popup_menu(saved_menu);
279 279 update_menu(); update_menu();
280 280 } }
281
282 if(was_redraw)
283 redraw_window();
281 284 } }
282 285
283 286 static void static void
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