forked from vifm/vifm
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathChangeLog
More file actions
7343 lines (4555 loc) · 243 KB
/
ChangeLog
File metadata and controls
7343 lines (4555 loc) · 243 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
0.14 to current
Changed default of 'iooptions' to have "fastfilecloning" enabled by
default. Thanks to v-Nyo.
Changed "/" suffix in suggestions for marks to indicate a mark pointing
inside of a directory, instead of to indicate directories. Thanks to
CaptainFantastic.
Added <help> :*map argument that enables providing description for the
mapping with the same curly braces syntax as used by :file[x]type.
Added escape sequences for expanding bracket notation in strings in double
quotes (e.g., `:echo "This is \<space>."`) that appear in expressions (so
won't work, say, in `:set grepprg="\<space>"`). Thanks to agguser.
Added -1 command-line switch which constraints choosing to at most 1 item.
Attempt to choose more than 1 item results in an error dialog. Thanks to
The Cyberduck.
Added `:messages clear` to clear the history of the most recent status bar
messages. Thanks to qadzek.
Added P view mode key to make choice of a viewer via a and A keys
persistent for the session. Thanks to j-xella, durcheinandr and vuenn.
Added optional "next" and "prev" actions to :view command to switch
default previewer for the current and similar files.
Added 'extprompt' option to allow opening path input boxes in external
editor automatically when "path" value is included in the value. Patch by
Kaspars Vandans.
Updated utf8proc to v2.11.2.
Made documentation on which :commands can have comments a bit more
verbose.
Made `%i` keep access to the terminal instead of acting like `%i &` .
This restores the behavior prior to v0.12.1-beta (can be considered a
regression as this breaks several use cases). Thanks to an anonymous at
Vifm Q2A site.
Documented extra information on file copying. Patch by EA1A87.
Improved/extended/updated documentation on cancelling operations, compare
and custom views.
Updated .desktop-file to add localizations and be more up-to-date with
modern recommendations. Separate patches by Matěj Cepl (a.k.a. mcepl) and
Jared Cervantes (a.k.a. Jaredy899).
Extended range of numbers Ctrl-A/Ctrl-X can deal with from [-2**31; 2**31)
to [-2**63; 2**63). Thanks to CaptainFantastic.
Provided more details on file handlers and viewers in sample vifmrc files.
Say "primary" instead of "default" in the title of :colorscheme menu.
Improved documentation on the use registers. Thanks to aleksejrs.
Display descriptions as "{...}" rather than "[...]" in :file and
:file[x]type menus.
Improved potentially confusing wording in the dialog confirming exit while
background jobs are running.
Reworked --help output to be more compact and readable.
Prefer to use more generic "items" instead of "files" when referring to
file-system objects. Thanks to qadzek.
Allowed descriptions for commands of `:fileviewer`.
Display an error on trying to switch from external preview to raw mode.
Updated sample vifmrc files to use `vi` as a last resort if it exists.
Fall back to using standard::fast-content-type from GLib if
standard::content-type is missing. Patch by Jan Palus (a.k.a. jpalus).
Improved description of the local filter in the documentation. Thanks to
CaptainFantastic.
Documented quoting and escaping on command-line. Patch by Kirill Rekhov.
Documented name conflict resolution dialog. Patch by Kirill Rekhov.
Fixed 'trashdir' with "%r" on BSD-like systems (those with getmntinfo()
instead of getmntent() API). The regression was apparently introduced in
v0.9.1-beta. Thanks to sublimal.
Fixed a crash on drawing a tree-view when {ext} or {fileext} follows
{name}, {iname}, {root} or {fileroot}. Thanks to aw-cloud.
Fixed unintended (and incorrect) highlighting of search matches in {ext}
and {fileext} columns.
Fixed setting 'timeoutlen' to zero resulting in high CPU use and ignoring
user input.
Fixed trailing slash at the bottom of overwrite confirmation dialog
displayed on merging directories.
Fixed :restart not resetting abbreviations.
Fixed crashes in terminals that handle ANSI output on Windows when
previewing binary or some complicated UTF-8 text files. Thanks to Phil
Runninger.
Fixed `:restart full` ignoring `set tabscope=...` in vifmrc which is how
:restart behaves. Thanks to martinengelke (a.k.a. sHii).
Fixed tabulation breaking parsing of :set command. Thanks to
martinengelke (a.k.a. sHii).
Fixed :file[x]type commands being run in startup directory instead of
view's directory when file was passed on command-line. Thanks to
ThePlaguebump.
Fixed false-positive on detecting ambiguity of commands with numbers in
their names. Thanks to CaptainFantastic.
Fixed Escape not cancelling waiting for the next input key. Thanks to an
anonymous at Vifm Q2A site.
Fixed a crash after `:winrun , normal e` followed by `q`.
Fixes of typos and groff syntax in documentation. Patch by Kirill Rekhov.
Fixed ruler in menu mode not growing in size to accommodate its content.
Thanks to CaptainFantastic.
Fixed a memory leak on formatting tab line when there is not enough space.
Fixed an unlikely memory leak on parsing of malformed 'viewcolumns'.
Fixed truncating wide characters on drawing columns broken on introducing
column-specific highlighting in 0.14-beta. Thanks to Snake52996.
Fixed :clone producing weird results on trying to increment numbers
greater than `2**31 - 1`. Thanks to CaptainFantastic.
Fixed user-specific trash directory (absolute path, `%u` and no `%r`)
created on setting 'trashdir' not having reduced set of permissions.
Fixed treating a failure to create a trash directory on a read-only
file-system in a Unix environment as a success. Thanks to feekApp.
Fixed odd sorting with musl caused by its buggy strverscmp(). The
ordering shouldn't depend on libc in use.
Fixed unlimited growth of directory histories when 'history' is set to its
default value or not set at all in vifmrc. Thanks to zoj613.
Fixed abort due to assertion on displaying a statusbar message with a
newline when 'shortmess' includes "T". Thanks to agguser.
Fixed :normal not being able to run commands which end with whitespace.
Fixed escaping characters with codes greater than 127 producing garbage.
Fixed printing newline on cancelling choosing a directory via
`--choose-dir` option. Thanks to The Cyberduck.
Fixed vifm-media-osx script for modern versions of OS X. Thanks to
vulpes-vulpeos.
Fixed weird delays in FUSE when running an AppImage caused by a trailing
colon in $LD_LIBRARY_PATH. Thanks to qadzek.
Fixed a small memory leak on trying to display a map menu which doesn't
show up because it would be empty.
Fixed `vifm-pause` and other helpers not being available from within
AppImage. Thanks to Marcin Kowalski (a.k.a. mrkowalski).
Fixed vifm.vim not cleaning up buffers properly when used as a netrw
replacement. Thanks to Ivan Shapovalov (a.k.a. intelfx) and
pascualpobil.
Fixed a crash if GLib didn't return a file type. Patch by Jan
Palus (a.k.a. jpalus).
Fixed undoing of chmod operation not restoring owner's read permission.
Thanks to aleksejrs. Patch by Kirill Rekhov.
0.14-beta to 0.14 (2025-02-08)
Improved documentation on zh/zl menu keys a bit.
Corrected documentation on how the use of different preview macros affects
classification of a previewer.
Say "changed" when describing the meaning of "showdifferent" of :compare.
Thanks to aleksejrs.
Improved wording of descriptions for :compare's show* parameters.
Fixed absolute paths comparing equal to similar relative paths (regression
in 0.14-beta).
Fixed single quotes escaping for completion of option values via
`opt='<tab>` (related to a change in 0.14-beta).
Fixed quotes not being escaped on completion of option values via
`opt=<tab>`.
Fixed output of :highlight command truncating names of some colors.
0.13 to 0.14-beta (2025-01-19)
Changed --with-gtk flag to --with-glib (old name is still available). GTK
was pulled in by mistake, only GIO/GLib was ever used...
Changed %N macro to not be mutually exclusive with most of other
macros (the limitation wasn't documented and didn't make much sense).
Thanks to James Dietrich.
Changed handling of Ctrl-Z to not suspend the application if a
corresponding user mapping exists. Patch 高浩亮 (a.k.a. haolian9).
Changed behaviour on failure to evaluate an expression of :if or :elseif.
Previously this resulted in trying to execute any commands until and
including :endif (all branches taken). Now everything up to :endif will
not be executed (no branches taken). Thanks to Ed Pavlov.
Changed default value of 'findprg' to avoid the use of syntax specific to
GNU find. The only difference is that now one can see "Permission denied"
errors which weren't displayed before. Sample vifmrc files contain
detection of GNU find on startup. Thanks to Jose Riha (a.k.a. jose1711).
Changed initialization to not create a copy of rendered man page at
$VIFM/vifm-help.txt, :help now opens the original file. Thanks to
intelfx.
Changed filetype() to accept path in its first parameter. This means that
passing it something like "15abc" will no longer be interpreted as 15.
Thanks to MikeLemon.
Added command-line history to menu mode.
Added "mchistory" value to 'vifminfo' and 'sessionoptions' option. It
manages storing of command-line history of menus.
Added ":history mcmd" menu for displaying command-line history of menus.
Added :col[der] and :cnew[er] commands to menu mode to traverse history of
navigation menus.
Added :chi[story] command that opens a menu of saved menus.
Added :chi[story] command to menu mode.
Added 'hloptions' option to configure which view colums get affected by
file highlighting. Thanks to qsmodo.
Added "column:{name}" form of argument to :highlight command to specify
style of a separate column. Thanks to Anton Gepting.
Added "millersep:" value to 'fillchars' that allows customizing the border
between miller columns. Thanks to Shuo (a.k.a. shenqshuoh).
Added :gr[ep] command to menu mode. Allows (re)running grep command
on the same set of files without leaving the mode.
Added :fin[d] command to menu mode. Allows (re)running find command
on the same set of files without leaving the mode.
Added middle view column alignment (specified by "^" in 'viewcolumns'
option). Part of the text is replaced with ellipsis to keep both start
and end visible. Patch by Vadim Curcă.
Added escape() builtin function to escape specific characters in strings.
Thanks to The Cyberduck.
Added :wingo command to navigate to a view by substring matching against
its title or path. Thanks to iSeeU816 and Alexandre Viau.
Added :cal[l] command to run a function discarding its return value.
Thanks to anyone asking about simply running a function.
Added :o[pen] command to open current file, selection or range as if Enter
was pressed. Thanks to Safal Piya (a.k.a. mrsafalpiya).
Added 'wildinc' option that defines which :commands should be completed as
they are edited.
Added WildBox highlight group. It can be used to set background of
completion window.
Added a statusbar message and a dialog to warn about an upcoming fix for
strings in conditional expressions (e.g., `if $VAR` checks for `$VAR`
being non empty instead of converting it to an integer). Thanks to
justpretending2.
Added handling of Enter/Escape keys to prompts and error dialogs. Thanks
to laur89, Alexandre Viau and multiple other users who asked about this.
Added global variables (with "g:" prefix) to avoid using environment
variables in their place as a workaround.
Added inode number to File Info dialog.
Added selected() builtin function which returns number of currently
selected files.
Added [S and ]S shortcuts as wrapping versions of [s and ]s. Thanks to
aksr.
Added v:version builtin variable that exposes version as an integer which
can be meaningfully compared. Thanks to an anonymous at Vifm Q2A site.
Added a way to insert "}" inside of %{expr} macro of 'statusline'. Thanks
to vuenn.
Added 'uioptions' option with possible "iodetails" value to display
progress dialog by default. Thanks to Ralf Schmitt.
Don't draw right padding on a truncated rightmost column of a transposed
ls-like view.
Made register's content being listed in normal rather then reversed order
in :registers/:display menu.
Don't attempt clearing graphics when menu-like mode is active. The
graphics should have been hidden on entering the mode.
Allowed wild menu popup to take up up to 40% of the screen.
Made documentation of 'vifminfo' more readable.
Rewrote "Menus and dialogs" part of the documentation.
Increase line length limit used during formatting output of :highlight
command to allow longer strings.
Display number of color pairs in use in :version/:vifm menu.
Don't show a message at the end of 'incsearch' if the cursor was moved not
by the search. Patch by filterfalse.
Clarified documentation on column literals and escaping. Thanks to
chelovechishko.
Allow and skip !/!! prefix of custom external :commands for more
macros (%S, %q, %i, %m, %M, %s, %v, %u, %U, %Iu, %IU).
Slightly expanded documentation on %N macro. Thanks to James Dietrich.
Made Tab and Shift-Tab in interactive search prompts (including when
navigating) move cursor to next/previous search match. Thanks to
David Sierra DiazGranados (a.k.a. davidsierradz).
Somewhat improved documentation on functional keys.
Updated autotools scripts to their newer versions. Thanks to
phanium (a.k.a. phanen).
Perform sorting of completion items after doing Unicode normalization.
Perform sorting of file names after doing Unicode normalization. Thanks
to hacksenwerk.
Made :compare treat non-regular files (pipes, sockets, etc.) as empty.
Slightly improved performance of comparing files by content.
Configure 'vifminfo' in sample vifmrcs to store most of the things in
vifminfo by default (add missing histories and tabs). Thanks to Christoph
Schmidpeter.
Adjusted heuristic for determining previewer type to allow use of %px and
%py with %pd without any implications. Thanks to iambumblehead.
Document how the use of different preview macros affects classification of
a previewer. Thanks to iambumblehead.
When processing multiple files in background, show current position in the
list on the job bar.
Shorten home directory in paths shown on the job bar.
Commented out one of MC-like shortcuts in sample vifmrc files, Ctrl-U, to
avoid confusing Vim users with default configuration. Thanks to midrare.
Made vifm-media not offer partitioned drives as they aren't mountable as a
whole.
Extended vifm-media script to support MTP devices if simple-mtpfs tool is
installed. Thanks to FlyCat (a.k.a. yanwh0311) and Alexandre Viau.
Allowed moving files via :rename (requires an interactive confirmation).
Thanks to aleksejrs.
Made completion of an option with its current value work not only on
`opt=<tab>`, but also on `opt='<tab>` and `opt="<tab>`. Thanks to
aleksejrs.
Provide numerical value of a color as a description of a completion item
for it.
Made :goto preserve custom and tree views. Thanks to
Svetlozar Iliev (a.k.a. asmodeus812).
Improved error message on trying to :unlet a builtin variable.
Extended logging on spawning a command via a shell. Thanks to Henrik
Holst (a.k.a. hholst80).
Expand environment variables in the arguments of :mark command. Thanks to
an anonymous at Vifm Q2A site.
Improved detection and reporting of invalid mark name by :mark command.
Updated ncurses in AppImage to 6.5.
Don't overwrite $TERMINFO in AppImage, set/append to $TERMINFO_DIRS
instead. Thanks to anonymous at Vifm Q2A site.
Upgraded to PDCurses 3.9 (was 3.8) for Windows. Combined with some other
changes this improves the situation with handling of CJK characters.
Thanks to zzx41375004, vodbyte, Jeremy Yuan and others.
Constrained background error dialogs to appear only in normal mode when
not much is going on.
Fixed line number column not including padding to the left of it.
Fixed local options not being loaded on Ctrl-W x.
Fixed graphics of view mode not being hidden on activating menu, more or
file info modes.
Fixed descriptions of exit :commands in menus (visible during popup
completion).
Fixed statusbar output not being preserved on running commands from
:history menus.
Fixed not being able to pick a symbolic link to a directory via
--choose-files or --on-choose by selecting and opening it.
Fixed 'slowfs' option not being applied to targets of symbolic links on
operations related to directory sizes. Thanks to rok (a.k.a. aca).
Fixed running long shell commands when fish is used. Caused by its
inability to understand that "${var}" is the same as "$var". Thanks to
aleksejrs.
Fixed a historical omission of Ctrl-G not being available in some prompts:
file rename on conflict; owner, group and symbolic link target change.
Thanks to Branislav Gerazov.
Fixed display issues or a crash when using a terminal with more than 32768
color pairs. Thanks to iboggs and itshog.
Fixed performance degradation after preview consumes lots of color pairs.
Fixed running tests with musl libc. Thanks to Henrik Holst (a.k.a.
hholst80).
Fixed IPC payloads larger than 8155 bytes. Patch by Marcin
Kurczewski (a.k.a. rr-).
Fixed abort on instance sending something over IPC to itself. Thanks to
Marcin Kurczewski (a.k.a. rr-).
Fixed "N files selected" message appearing in menus on waiting for
multikey input (regression in 0.12-beta).
Fixed %a 'statusline' macro on FreeBSD producing wrong values. Patch by
voh9eepah.
Fixed %a 'statusline' macro producing wrong values on non-Linux Unix-like
systems. Thanks to voh9eepah.
Fixed graphics not being cleared on switching to single-pane view. Thanks
to ret2src.
Fixed merging directories on copying not asking for overwrite
confirmations. Thanks to aleksejrs.
Fixed skipping of file move during merging aborting the whole operation.
Thanks to aleksejrs.
Fixed expansion of abbrevs that leave command-line mode. Patch by
filterfalse.
Fixed completion of :cabbrev not using bracket notation in expansion.
Fixed `<` not being turned to `<lt>` on displaying right-hand sides.
Fixed description of empty abbreviations being empty instead of `<nop>`.
Fixed tiny memory leak on trying to list abbreviations when there are
none.
Fixed `:[un]select !<text/html>` treating "<text/html>" as an external
command.
Fixed !! not affecting commands that include %s or %v macro. Thanks to
James Dietrich.
Fixed parsing of comma-separated lists hanging on empty last element and
skipping leading commas.
Fixed output formatting of :autocmd (pattern negation broke column
alignment and wrapping).
Fixed environment variables not being expanded on checking that a
:file[x]type or :fileviewer command exists in $PATH. Thanks to Ben Elan.
Fixed search match highlighting when the match is cut off due lack of
space. Patch by Vadim Curcă.
Fixed running tests with locales that use comma for decimal point. Thanks
to PRESFIL.
Fixed foreign commands missing from `:command {prefix}` output. Patch by
高浩亮 (a.k.a. haolian9).
Fixed foreign commands missing from completion of `:[del]command
{prefix}`. Patch by 高浩亮 (a.k.a. haolian9).
Fixed documentation on yy, Y, dd and DD not mentioning how "s" flag of
'cpoptions' affects their behaviour. Thanks to James Dietrich.
Fixed FUSE mounter error message dialog missing newlines (regression in
0.13-beta).
Fixed "Querying... (??%)" message on :compare having an extra space in
parenthesis.
Fixed potential integer overflows on sorting.
Fixed weird sorting of filenames with non-Latin characters when
'sortnumbers' option is set and strverscmp() is not provided by the
system (like on Windows).
Fixed :compare hanging on trying to compare non-regular files like pipes
by contents.
Fixed :compare reporting identical files as changed when there were
more than a couple of files with identical size and 4096-byte prefix.
A regression in 0.13-beta. Thanks to Alexandr Keyp (a.k.a. IAmKapuze).
Fixed stream redirection issues with background jobs on Windows (those
created via `:!cmd &` or in Lua) if the application was closing one of
standard streams.
Fixed colors sometimes (rarely) changing in seemingly random ways.
Fixed :jobs showing some already dead jobs as running.
Fixed running external commands which start with a dash. Patch by Ivan
Shapovalov.
Fixed absolute paths not being completed when 'autocd' option is enabled.
Mind that it can't work on Windows due to ambiguity between a command and
a full path there. Thanks to Taras Halturin (a.k.a. halturin).
Fixed individual error messages when 'syscalls' is on lacking system error
string which is present when errors are aggregated at the end of an
operation. Thanks to an anonymous at Vifm Q2A site.
Fixed `data/vifmrc` next to vifm.exe being used as global vifmrc file on
Windows. Thanks to midrare.
Fixed vifm-media script not listing external drives with udevil and
udisks.
Fixed vifm-media script not listing removable drives with udisks marked as
non-removable by udisks.
Fixed incorrectly determining whether a directory is writable on
Windows (primarily C:\ could be reported as non-writable). Thanks to
theorlangur and bitraid.
Fixed :substitute, :tr, gu* and gU* detecting a non-existent target name
conflict when rename in a custom view would produce an identically named
files in different directories. Thanks to aleksejrs.
Fixed lack of a redraw after running :substitute, :tr, gu* or gU* in a
custom view.
Fixed a leak of error message string when using `:rename new-names...`.
Fixed :rename not recognizing identical paths in source and destination
lists if they were edited (e.g., to contain extra slashes, "./" or "../").
Fixed weird character appearing on Ctrl-Space combination in command-line
mode.
Fixed :restart leaving histories disabled unless 'history' is set to a
non-default value in vifmrc. Thanks to James Dietrich.
Fixed processing of file names and paths that undergo escaping in the UI,
like inability to externally rename them (regression in 0.12.1 beta).
Thanks to jc-SpaceXp.
Fixed rules for handling of selection by :file[x]type not taking
%"c/%"C/%"f/%"F macros into account (relevant mostly to Windows). Thanks
to smoothdad.
Fixed unreliable internal checks for %pd, %px, %py, %pc and %r macros.
Previously they could be found in something like "%%pd", which should not
be interpreted as %pd.
Fixed registers' content of multiple instances not being synchronized on
use of %"r macro.
Fixed a crash after a memory corruption when running an external command
via expansion of an environment variable when 'fastrun' is set (e.g.,
`!$EDITOR`). Thanks to Quaddroo.
Fixed :elseif evaluating its expression even if an earlier conditional
branch was already taken.
Fixed loading a session with global tabs when 'tabscope' is "pane"
resulting in global tabs being invisible.
Fixed statusline having invalid colors when 'wildstyle' is "bar" and
completion is initiated by Shift-Tab.
Fixed Ctrl-A and Ctrl-E in command-line mode not stopping completion
unlike other similar keys.
Fixed directories not being accounted for in estimates. Thanks to
justpretending2.
Fixed global version of 'viewcolumns' not validating its value. Thanks to
Vadim Curcă.
Fixed `&&` operator which was acting as binary `&` (in terms of
evaluation, the result was properly boolean). Thanks to justpretending2.
Fixed use of environment variables in :if in sample vifmrc file. Checking
for an empty string should be done explicitly with `==` or `!=`. Thanks
to justpretending2.
Fixed Escape being handled as Ctrl-C in prompts which suppresses future
errors.
Fixed outdated documentation on the behaviour of n/N when 'hlsearch' is
enabled since the introduction of highlighting of search matches. Thanks
to James Dietrich.
Fixed /usr/share/terminfo not being consulted when running from an
AppImage. Thanks to anonymous at Vifm Q2A site.
Fixed system() and term() not taking 'shell'/'shellcmdflag' into account
on Windows. Thanks to spence91.
Fixed a race condition on displaying errors of a job in :jobs menu.
0.13-beta to 0.13 (2023-04-04)
Made "withicase" and "withrcase" affect how files are sorted before
comparison, otherwise they might not produce the intended effect.
Reduced cursor flickering during incremental search in visual mode. Patch
by filterfalse.
Fixed segfault on trying to expand "~username" path prefix with a huge
length of the user name.
Fixed user mappings replacing a mapping from Lua in an incomplete way
which could lead to assertion or some unpredictable behaviour.
Fixed map menus not listing mappings that accept a selector.
Fixed handling mouse events in normal and view modes in single pane mode.
Fixed :hideui not hiding anything on Windows. Thanks to Ed Pavlov.
Fixed segfaults on changing sibling directory or previewing directories in
miller view while global sorting by groups is active. Patch by filterfalse.
Fixed cl processing selection it was used previously on instead of file
under cursor when you run it twice in succession.
Fixed graphics from miller view preview remaining visible when displaying
dialogs, entering menus, switching tabs, activating more or file info
modes.
Fixed "rpreview:" of 'milleroptions' not being copied to new tabs.
Fixed selection not being stashed by do and dp.
Fixed memory issues inside ncurses when dialog is displayed in menu mode
after resizing the terminal.
0.12.1 to 0.13-beta (2023-03-17)
Changed implementation of `:compare grouppaths` to juxtapose only files
with identical relative paths. Patch by Alexandr Keyp (a.k.a. IAmKapuze).
Changed use of `$(filter-out)` in src/Makefile.am to `$(var:from=to)`
substitution to get rid of a warning on configuration.
Changed how pthread support is detected by configure script to handle more
cases. Thanks to Markus Elfring (a.k.a. elfring).
Changed configure script to fail if neither perl nor vim is available
instead of failing to generate tags for Vim-style documentation. Thanks
to Sergei Trofimovich (a.k.a. trofi).
Changed %N macro to also not start a process group for a command. Thanks
to Oskar Grunning (a.k.a. sQVe).
Changed error reporting for some of the :commands such that now their
failures cause a dialog to appear on sourcing, previously those errors
were printed only to status bar.
Added "withicase" and "withrcase" to :compare that force ignoring and
respecting case respectively on comparing file names and paths. Thanks to
Jose Riha (a.k.a. jose1711).
Added printing stats while in :compare mode. Patch by Alexandr
Keyp (a.k.a. IAmKapuze).
Added "columncount:" value to 'lsoptions' to always display fixed number of
columns. Thanks to Aleksandr Vysotskiy (a.k.a. loki1368).
Added show* arguments to :compare command to control/switch which sets of
files are displayed (toggling is done by :compare!). Patch by Alexandr
Keyp (a.k.a. IAmKapuze).
Added builtin handling of mouse events. Patch by 高浩亮 (a.k.a.
haolian9). Thanks to ranousse, Sergei Shilovsky and user451421541757324.
Added 'mouse' option to control when mouse input is handled (not handled by
default).
Added input() builtin function to prompt user for input. Thanks to Artur
F. (a.k.a. arturfabriciohahaedgy).
Added ETA to detailed progress dialog. Thanks to Jose Riha (a.k.a.
jose1711).
Added `--plugins-dir` command-line option which allows specifying
additional places to look for plugins. Thanks to 高浩亮 (a.k.a.
haolian9).
Added Ctrl-Y key to command-line mode. It activates fast navigation that
allows entering deep paths by a series of searches for individual path
components. Thanks to Henrik Holst (a.k.a. hholst80) and dmocek.
Added Ctrl-J key to command-line navigation. It leaves the mode without
opening a file/directory. Thanks to filterfalse.
Added Ctrl-O key to command-line navigation that goes to parent directory.
Added Ctrl-N/P keys to command-line navigation to move view cursor up/down.
Thanks to Henrik Holst (a.k.a. hholst80) and dmocek.
Added Arrows/Home/End/Page Up/Page Down keys to command-line navigation to
move view cursor. Thanks to Henrik Holst (a.k.a. hholst80) and dmocek.
Added :amap, :anoremap and :aunmap commands to configure mappings in
navigation mode. Thanks to Henrik Holst (a.k.a. hholst80) and dmocek.
Added 'navoptions' option to allow tweaking navigation mode a bit. Thanks
to filterfalse.
Added "rpreview:files" to 'milleroptions'. Thanks to aksr.
Added r key to :jobs menu, which reloads the list of jobs. Thanks to
Sylwia Ptasinska (a.k.a. SylEleuth).
Added :regedit command for external editing of register contents. Thanks
to Daniel J. Perry (BioBox). Patch by Rostislav Tolushkin (a.k.a.
nullptr-deref).
Added additional User10..User20 highlight groups and corresponding
%10*-%20* macros. Thanks to Sylwia Ptasinska (a.k.a. SylEleuth).
Added 'tabline' option to specify format of the tab line.
Added filereadable() builtin function mainly as a way to check file's
presence.
Reduced amount of memory consumed by `:compare groupids`.
Made `:compare bycontents` not bother reading content of files which have
unique size.
Provide basic instructions in the documentation on how mappings work.
Thanks to dmocek.
Extended do and dp keys to process selection. Thanks to Mark S. (a.k.a.
Markuzcha).
Apply file highlighting to "ext" and "fileext" view columns. Thanks to
aleksejrs.
Made instances running inside AppImage consider contents of `/etc/vifm`.
Thanks to aleksejrs.
Made Ctrl-E/Ctrl-Y scroll transposed ls-like view horizontally by one
column.
Install icons also to ${prefix}/share/icons. It's not clear that using
${prefix}/share/pixmaps will always be handled properly. Thanks to
Szilárd Andai.
Made feedback after pressing dd in :jobs more prominent. Thanks to Sylwia
Ptasinska (a.k.a. SylEleuth).
Merged file conflict comparison dialog into the main conflict dialog.
Thanks to aleksejrs.
Made file conflict more concise. Thanks to aleksejrs.
Update Default-256 to differentiate between more file types. Thanks to
aleksejrs.
Don't move cursor on search failure during search with a count. Patch by
filterfalse.
Specified a few more cases when to show a search message with search
highlighting turned on: if found a match, if wrapping is turned on, and in
visual mode. Patch by filterfalse.
A regular search logic showing messages is applied to n/N. Patch by
filterfalse.
Made aborting deletion abort the operation on the rest of files when
deleting multiple files.
Fixed segfault on trying to use pipe from Lua after its parent VifmJob
object was garbage-collected. Thanks to PRESFIL.
Fixed check for broken symlinks in :edit command.
Fixed positioning hardware cursor in transposed ls-like view.
Fixed width of file names that don't fit into ls-like column being larger
than the width of other files.
Fixed ellipses being lost in side columns of miller view.
Fixed 'previewprg' not being respected on switching to view mode (regression
in 0.12-beta). Thanks to Sitaram Chamarty.
Fixed $VIFM_APPDIR_ROOT being ignored by :help command, which made it not
work properly from AppImage. Thanks to infinitewhileloop.
Fixed escaping of file paths when using 'vicmd' or 'vixcmd' to open a
file on Windows. Thanks to Phil Runninger.
Fixed :locate never escaping its arguments (should be done unless the
first one starts with a dash). This is a regression in 0.7.6.
Fixed trash directory being created at default location on :restart.
Fixed abort due to assertion failure on using zx normal mode key after
leaving tree in some cases. Thanks to Mark S. (a.k.a. Markuzcha).
Fixed asynchronous previewing of symbolic links, which required manual
redraw. Thanks to Alexandre Viau.
Fixed fish completion not completing paths for `--choose-files` and
`--choose-dir` options.
Fixed a "benign" data race on ga/gA.
Fixed error of :cunabbrev not being visible to the user.
Fixed segfault on passing invalid tag to :delbmarks.
Fixed :echo printing previous message when invoked without arguments.
Fixed Ctrl-E in visual mode not doing anything when view is scrolled to
its top.
Fixed 'milleroptions' not recovering value of "rpreview:" on error.
Fixed FUSE mounting assuming `2>` redirection is supported by the shell,
which isn't true at least for csh and tcsh. Thanks to Evgeniy (a.k.a.
iron-udjin).
Fixed :media not redrawing on reloading ("r" key) and also wasn't
repositioning cursor properly when menu length shrinks as a result of a
reload.
Fixed stashing visual mode selection on transition from visual amend mode
to regular visual mode (av -> v). Patch by filterfalse.
Fixed dropping normal selection on incremental search in visual amend
mode. Patch by filterfalse.
Fixed input bar not being updated in visual mode if any status bar message
has been shown. Patch by filterfalse.
Fixed error/prompt dialogs not reaching maximum allowed height.
Fixed "<<N more lines not shown>>" message in dialogs reporting wrong
number of lines and sometimes hiding a single line.
Fixed dialogs not handling non-latin characters well.
Fixed :source producing too many errors when specified path doesn't exist.
Fixed n/N not moving the cursor without prior search in visual mode. Patch
by filterfalse.
Fixed showing wrong match number instead of error message on search in
visual mode. Patch by filterfalse.
Fixed resetting 'hlsearch' during incremental search in visual mode. Patch
by filterfalse.
Fixed dropping selected files on empty input during incremental search in
visual mode. Patch by filterfalse.
Fixed resetting count to 1 during incremental search in normal mode. Patch
by filterfalse.
Fixed description of %i macro in the documentation to mention that it runs
command in background.
Fixed the last search direction not being saved on search performed from
non-normal mode. Patch by filterfalse.
0.12.1-beta to 0.12.1 (2022-09-21)
Added shell completion for fish shell. Patch by Hoang Nguyen (a.k.a.
FollieHiyuki).
Permit directories with trailing slashes supplied by external commands in
`:[un]select !cmd`. Patch by filterfalse.
Fixed prefix mappings being left after removing a key (e.g., "a" remaining
after mapping and unmapping "ab"). Patch by filterfalse.
Fixed infinite loop on restoring visual selection after changing the order
of files to the opposite (`:invert o`). Patch by filterfalse.
Fixed 'sort' and 'sortorder' string representations not being updated
after `:invert o`. Patch by filterfalse.
Fixed memory leak on using 'cdpath'.
Fixed NULL pointer dereference on parsing desktop files, if no MIME
type recognizers are available. Patch by filterfalse.
Fixed "load" subcommand of :plugin not being completed.
Fixed <silent> not being highlighted after :cnoremap and :cmap.
Fixed parts of graphics being left on entering menu mode.
Fixed %i without " &" preventing some applications from running by closing
their standard output and error. Thanks to Daniel J. Perry (a.k.a.
BioBox).
0.12 to 0.12.1-beta (2022-09-05)
Changed conflict dialog to offer "Merge all" option even for files if
there are some directories left to process. Thanks to dalvand.
Changed how location of trash directory is determined. Now starting `vifm
--no-configs` won't mess anything up if you're using `~/.vifm`. Can
potentially cause some trouble for existing configurations, but shouldn't.
Changed [c and ]c to also traverse added/missing entries. Thanks to qsmodo.
Added 'autocd' option. Makes invalid :commands be interpreted as an
implicit :cd command. Thanks to Taras Halturin (a.k.a. halturin).
Added %N macro that prevents detaching viewers from current session.
Thanks to emorozov.
Added cl key visual mode (similar to its function in normal mode).
Added handling of "-" in :session for switching to a previous session.
Added %pu macro that disables caching of viewer's output. Thanks to
b0x4it.
Added comparison action to conflict resolution dialog. Thanks to
anonymous at Vifm Q2A site and dalvand.
Added :keepsel command. Changes default behaviour after running a
:command to not reset selection of a view. Thanks to dalvand and
sharklasers996.
Added -skip parameter to :copy/:move/:alink/:rlink. Makes the commands
automatically skip files that exist at destination instead of refusing to
proceed. Thanks to Jose Riha (a.k.a. jose1711).
Added "datasync" value to 'iooptions' option to configure whether writes
on file copying when 'syscalls' is on are synchronized periodically.
Thanks to Andrew Savchenko and Afz.
Added angle-bracket notation for alpha keys with Alt and Shift
modifiers (<[am]-s-[a-z]>, <s-[am]-[a-z]>). Thanks to Reece Petersen.