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 15ddfa4b74ca4093e14f515ff9aa42b56d77f572

Update NEWS file for v0.13 beta
Author: xaizek
Author date (UTC): 2023-03-16 22:17
Committer name: xaizek
Committer date (UTC): 2023-03-16 22:17
Parent(s): 98e34346698eff088a308bb3b52c9cd8c4248931
Signing key: 99DC5E4DB05F6BE2
Tree: c19cf0af5633608bf1988a3a648ea07a67e49f09
File Lines added Lines deleted
NEWS 206 0
File NEWS changed (mode: 100644) (index 35218bb93..34b7a9019)
1 17 March 2023
2 =============
3
4 Vifm v0.13 beta
5 ---------------
6
7 The beta stage will last about two weeks. In case any serious bugs are found
8 during this period, another beta version might be released.
9
10 Highlights:
11
12 - Faster file-system navigation with a new searching/filtering submode.
13
14 Hitting `<c-y>` after `/` or `=` allows finding and opening consecutive path
15 components without leaving command-line mode. In this mode keys like
16 `<c-o>`/`<c-n>`/`<c-p>`/`<left>`/`<home>`/etc. help to refine cursor
17 position or go to parent directory if necessary.
18
19 - More interactive :compare.
20
21 You can now see stats about file comparison on the status bar and have an
22 option to easily re-run the comparison while toggling visibility of some of
23 the groups.
24
25 Also, default file alignment is more natural now. `do` and `dp` handle
26 selection. You can force ignoring or respecting case in paths. Performance
27 and memory consumption have been improved in various cases.
28
29 - Mouse support and TUI improvements.
30
31 Once mouse support is enabled, you should be able to perform simple browsing
32 with just your mouse for those cases when it's more convenient.
33
34 Conflict dialog now always presents basic file metadata for comparison.
35 Detailed progress dialog has ETA. Ls-like view can now have a fixed number
36 of columns.
37
38 - Other.
39
40 Formatting of tabs in Lua. Changing register's content via an editor.
41 Explicitly prompting user for input via input() function.
42
43 - Fixes.
44
45 v0.12.1 was supposed to improve escaping on Windows, but it simultaneously
46 made one old bug more prominent, effectively making things much worse in
47 some cases. This release remedies that.
48
49 %N macro has been adjusted to fix integration with image preview of Kitty
50 v0.27+.
51
52 Lots of fixes related to search and various combinations of 'hlsearch',
53 'incsearch' in different modes.
54
55 Normal and visual modes:
56 - made Ctrl-E/Ctrl-Y scroll transposed ls-like view horizontally by one column;
57 - extended do and dp keys to process selection (thanks to Mark S., a.k.a.
58 Markuzcha).
59
60 :set command and options:
61 - added 'mouse' option to control when mouse input is handled (not handled by
62 default);
63 - added 'navoptions' option to allow tweaking navigation mode a bit (thanks to
64 filterfalse);
65 - added 'tabline' option to specify format of the tab line;
66 - added "columncount:" value to 'lsoptions' to always display fixed number of
67 columns (thanks to Aleksandr Vysotskiy, a.k.a. loki1368);
68 - added "rpreview:files" to 'milleroptions' (thanks to aksr).
69
70 Command-line mode:
71 - changed error reporting for some of the :commands such that now their
72 failures cause a dialog to appear on sourcing, previously those errors were
73 printed only to status bar;
74 - changed implementation of `:compare grouppaths` to juxtapose only files with
75 identical relative paths (patch by Alexandr Keyp, a.k.a. IAmKapuze);
76 - added "withicase" and "withrcase" to :compare that force ignoring and
77 respecting case respectively on comparing file names and paths (thanks to
78 Jose Riha, a.k.a. jose1711);
79 - added show* arguments to :compare command to control/switch which sets of
80 files are displayed (toggling is done by :compare!) (patch by Alexandr Keyp,
81 a.k.a. IAmKapuze);
82 - added :amap, :anoremap and :aunmap commands to configure mappings in
83 navigation mode (thanks to Henrik Holst, a.k.a. hholst80, and dmocek);
84 - added :regedit command for external editing of register contents (thanks to
85 Daniel J. Perry, a.k.a. BioBox; patch by Rostislav Tolushkin, a.k.a.
86 nullptr-deref);
87 - added Ctrl-Y key to command-line mode. It activates fast navigation that
88 allows entering deep paths by a series of searches for individual path
89 components (thanks to Henrik Holst, a.k.a. hholst80, and dmocek);
90 - added Ctrl-J key to command-line navigation. It leaves the mode without
91 opening a file/directory (thanks to filterfalse);
92 - added Ctrl-O key to command-line navigation that goes to parent directory;
93 - added Ctrl-N/P keys to command-line navigation to move view cursor up/down
94 (thanks to Henrik Holst, a.k.a. hholst80, and dmocek);
95 - added Arrows/Home/End/Page Up/Page Down keys to command-line navigation to
96 move view cursor (thanks to Henrik Holst, a.k.a. hholst80, and dmocek).
97
98 Core:
99 - added printing stats while in :compare mode (patch by Alexandr Keyp, a.k.a.
100 IAmKapuze);
101 - don't move cursor on search failure during search with a count (patch by
102 filterfalse);
103 - specified a few more cases when to show a search message with search
104 highlighting turned on: if found a match, if wrapping is turned on, and in
105 visual mode (patch by filterfalse);
106 - a regular search logic showing messages is applied to n/N (patch by
107 filterfalse).
108
109 File operations:
110 - made aborting deletion abort the operation on the rest of files when
111 deleting multiple files.
112
113 Macros:
114 - changed %N macro to also not start a process group for a command (thanks to
115 Oskar Grunning, a.k.a. sQVe).
116
117 Scripting:
118 - added input() builtin function to prompt user for input (thanks to Artur F.,
119 a.k.a. arturfabriciohahaedgy);
120 - added filereadable() builtin function mainly as a way to check file's
121 presence.
122
123 Menus and dialogs:
124 - added r key to :jobs menu, which reloads the list of jobs (thanks to Sylwia
125 Ptasinska, a.k.a. SylEleuth);
126 - made feedback after pressing dd in :jobs more prominent (thanks to Sylwia
127 Ptasinska, a.k.a. SylEleuth).
128
129 TUI (Text User Interface):
130 - added builtin handling of mouse events (thanks to ranousse, Sergei Shilovsky
131 and user451421541757324; patch by 高浩亮, a.k.a. haolian9);
132 - added ETA to detailed progress dialog (thanks to Jose Riha, a.k.a.
133 jose1711);
134 - apply file highlighting to "ext" and "fileext" view columns (thanks to
135 aleksejrs);
136 - merged file conflict comparison dialog into the main conflict dialog (thanks
137 to aleksejrs);
138 - made file conflict more concise (thanks to aleksejrs).
139
140 Color schemes:
141 - added additional User10..User20 highlight groups and corresponding %10*-%20*
142 macros (thanks to Sylwia Ptasinska, a.k.a. SylEleuth);
143 - update Default-256 to differentiate between more file types (thanks to
144 aleksejrs).
145
146 Invocation:
147 - added `--plugins-dir` command-line option which allows specifying additional
148 places to look for plugins (thanks to 高浩亮, a.k.a. haolian9).
149
150 Performance:
151 - reduced amount of memory consumed by `:compare groupids`;
152 - made `:compare bycontents` not bother reading content of files which have
153 unique size.
154
155 Documentation:
156 - provide basic instructions in the documentation on how mappings work (thanks
157 to dmocek);
158 - fixed description of %i macro in the documentation to mention that it runs
159 command in background.
160
161 Packaging:
162 - changed use of `$(filter-out)` in src/Makefile.am to `$(var:from=to)`
163 substitution to get rid of a warning on configuration;
164 - changed how pthread support is detected by configure script to handle more
165 cases (thanks to Markus Elfring, a.k.a. elfring);
166 - changed configure script to fail if neither perl nor vim is available
167 instead of failing to generate tags for Vim-style documentation (thanks to
168 Sergei Trofimovich, a.k.a. trofi);
169 - install icons also to ${prefix}/share/icons. It's not clear that using
170 ${prefix}/share/pixmaps will always be handled properly (thanks to Szilárd
171 Andai).
172
173 Integration:
174 - made instances running inside AppImage consider contents of `/etc/vifm`
175 (thanks to aleksejrs);
176 - fixed $VIFM_APPDIR_ROOT being ignored by :help command, which made it not
177 work properly from AppImage (thanks to infinitewhileloop).
178
179 Only on Windows:
180 - fixed escaping of file paths when using 'vicmd' or 'vixcmd' to open a file
181 on Windows (thanks to Phil Runninger).
182
183 Noteworthy fixes:
184 - fixed abort due to assertion failure on using zx normal mode key after
185 leaving tree in some cases (thanks to Mark S., a.k.a. Markuzcha);
186 - fixed asynchronous previewing of symbolic links, which required manual
187 redraw (thanks to Alexandre Viau);
188 - fixed FUSE mounting assuming `2>` redirection is supported by the shell,
189 which isn't true at least for csh and tcsh (thanks to Evgeniy, a.k.a.
190 iron-udjin);
191 - fixed dialogs not handling non-latin characters well;
192 - fixed :locate never escaping its arguments (should be done unless the first
193 one starts with a dash). This is a regression in 0.7.6;
194 - fixed n/N not moving the cursor without prior search (patch by filterfalse);
195 - fixed resetting 'hlsearch' during incremental search in visual mode (patch
196 by filterfalse);
197 - fixed dropping selected files on empty input during incremental search in
198 visual mode when 'hlsearch' is set (patch by filterfalse);
199 - fixed segfault on trying to use a pipe from Lua after its parent VifmJob
200 object was garbage-collected (thanks to PRESFIL);
201 - fixed 'previewprg' not being respected on switching to view mode (regression
202 in 0.12-beta) (thanks to Sitaram Chamarty).
203
204 See change log for the full list of changes and by whom they were suggested or
205 implemented.
206
1 207 21 September 2022 21 September 2022
2 208 ================= =================
3 209
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