Releases: gokcehan/lf
Releases · gokcehan/lf
r20
Changelog
- (Breaking) A new
mouseoption is added to enable mouse events. This option is disabled by default to leave mouse events to the terminal. Also unbind mouse events whenmouseis enabled should now show unknown mapping error in the message line. - (Fix) Newline characters in the output of
%commands should no longer shift the content up which was a bug introduced in the previous release due to a fix to handle combining characters in texts. - (Fix) Redundant preview loadings for search and find commands are now avoided (by @neeshy).
- (Fix) Scanner now only considers ascii characters for spaces and digits which should avoid unexpected splits in some non-ascii inputs.
r19
Changelog
- Changes have been made to enable the use of true image previews (by @Naheel-Azawy, @Provessor, and @neeshy). See the documentation and the previews wiki page for more information.
- (Breaking) Non-zero exit codes should now make the preview volative to avoid caching. Programs that may not behave well to SIGPIPE may trigger this behavior unintentionally. You may trap SIGPIPE in your preview script to get the old behavior.
- (Breaking) Preview scripts should now get arguments as the current file path, width, height, horizontal position, and vertical position. Note that height is still passed as an argument but its order is changed.
- (New) A new
cleaneroption is added to set the path to a file to run when the preview is changed. - (Fix) Redundant preview loadings for movement commands are now avoided.
- (Breaking) Expansion
%winpromptfmtis changed back to its old behavior without a trailing separator (by @SPFabGerman). Instead, a new expansion%dis added with a trailing separator. Expansion%wis meant to be used to display the current working directory, whereas%d%fis meant to be used to display the current file. - (Breaking) A new
LF_COLORSenvironment variable is now checked to be able to make lf specific configurations. Also, environment variables for colors are now read cumulatively starting from the default behavior (i.e. default,LSCOLORS,LS_COLORS,LF_COLORS). - (New) Full path, dir name, file name, and base name matching patterns are added to colors and icons (by @SPFabGerman and @mohkale). See the updated documentation for more information.
- (New) Powershell keybinding example has been added to
etc/lfcd.ps1(by @sitiom). - (New) Powershell autocompletion script has been added as
etc/lf.ps1(by @sitiom). - (New) Multiple
-commandflags can now be given (by @kmarius). - (New) Basic mouse support has been added. Mouse buttons (e.g.
<m-1>for primary button,<m-2>for secondary button,<m-3>for middle button etc.) and mouse wheels (e.g.<m-up>for wheel up,<m-down>for wheel down etc.) can be used in bindings. - (New) Commands
topandbottomare now allowed incmapmappings in addition to movement commands. - (Fix) Extension sorting should now handle extensions with different lenghts properly (by @kmarius).
- (Fix) Heuristic used to show
infoshould now take into accountnumberandiconsoptions properly. - (Fix) Environment variable
idis now set to process id instead to avoid two clients getting the same id when launched at the same time (by @edganiukov). - (Fix) Unicode combining characters in texts should now be displayed properly.
r18
Changelog
- (Breaking) Options
ignorecaseandignorediashould now also apply to sorting in addition to searching. - (Breaking) Option
ignorediais now enabled by default to be consistent withignorecase. - (Breaking) Terminal UI library tcell has been updated to version 2 (by @Provessor). This version highlights adding 24-bit true colors on Windows and better support for colors on Unix. Variable
TCELL_TRUECOLORis not required anymore so that terminal themes and true colors can be used at the same time. - (Breaking) Deprecated option
color256is now removed. - (New) Two new command line commands
cmd-menu-completeandcmd-menu-complete-backare added for completion menu cycling (by @tarasyarema). - (New) Simple configuration files for Windows
etc/lfrc.cmd.exampleandetc/lfrc.ps1.exampleare now added to the repository. - (New) Bash completion script
etc/lf.bashis now added to the repository. - (New) Time formats in
infooption should now show year instead of hh:mm for times older than the current year. - (Fix) Signals
SIGHUP,SIGQUIT, andSIGTERMshould now quit the program properly. - (Fix) Setting
infoto an empty value should not print errors to the log file anymore. - (Fix) Natural sorting is optimized to work faster using less memory.
- (Fix) Files and directories that incorrectly show modification times in the future (e.g. Linux builtin exFAT driver) should not cause cpu hogging anymore.
- (Fix) Keybinding example in
etc/lfcd.fishis now updated to avoid hanging in shell commands (by @crivaronicolini). - (Fix) Using
bottomcommand immediately after startup should not crash the program anymore. - (Fix) Changing sorting options during sorting operations should not crash the program anymore.
- (Fix) Output in piping shell commands now uses lazy redrawing so that verbose commands should not block the program anymore.
- (Fix) Server is now daemonized properly on Unix so that it is not killed anymore when the controlling terminal is killed (by @neeshy).
r17
Changelog
- Terminal UI library has been changed from termbox-go to tcell as the former has been unmaintained for a while (by @Provessor). Some of the changes are listed below, though the list may not be complete as this is a relatively big change.
- (Breaking) Some special key names are changed to be consistent with tcell documentation (e.g.
<bs>renamed to<backspace>). On the other hand, there are also additional keybindings that were not available before (e.g.<backtab>for Shift+Tab). You can either check tcell documentation for the list of keys or hit the key combination inlfto read the name of the key from the unknown mapping error message. - (New) 24-bit true colors are now supported on unix systems. See the updated documentation for more information. There is an ongoing version 2.0 development in tcell that we plan to switch once it becomes stable and it is expected to add support for true colors in Windows console as well.
- (New) Additional platforms are now supported and the list of pre-built binaries provided are updated accordingly.
- (Fix) Wide characters are now displayed properly in Windows console.
- (Breaking) Some special key names are changed to be consistent with tcell documentation (e.g.
- (New) Descriptions of commands and options are now added to the documentation. Undocumented behaviors should now be considered documentation bugs and they can be reported.
- (New) Keys are now evaluated with a lazy drawing approach so push commands to set the prompt and pasting something to the command line should feel instantaneous.
- (Fix) Corrupted history files should no longer crash the program.
- (Fix) Server now only listens connections from localhost on Windows so firewall permission is not required anymore (by @spapas).
- (Fix) Push commands that change the operation mode should now work consistently as expected.
- (Fix) Loading directories should now display the previous file list if any, which was a regression due to a bug fix in a previous release.
- (Fix) Piping shell commands should now automatically update previews when necessary.
- (Fix) Errors from failed shell commands should not be overwritten by file information anymore.
- (Fix) Server can now also be started automatically when the program is called with a relative path, which was a regression due to a bug fix in a previous release (by @Provessor).
- (Fix) Environment variables are now exported automatically for preview scripts without having to call a shell command first (by @gotroyb127).
- (Fix) Escape key can now be bind to a key for when it is used on it own and not to escape a keybind combination, which was a regression due to a bug fix in a previous release (by @YerinAlexey).
- (Fix) Changing option
hiddenfilesshould now automatically trigger directory updates when necessary.
r16
Changelog
- (New) Option values are now available in shell commands as environmental variables with a
lf_prefix (e.g.$lf_hidden,$lf_ratios) (by @YerinAlexey). - (Fix) Directories containing internal Windows links that shows permission denied errors should now display properly.
r15
Changelog
- (Breaking) Command
toggledoes not move the selection down anymore. Default binding for<space>is now assigned to:toggle; downinstead to keep the default behavior same as before. - (Breaking) Expansion
%win optionpromptfmtshould now have a trailing slash. Default value ofpromptfmtis now changed accordingly. The default value should not display double slashes in the root directory anymore. - (Breaking) Key
<esc>is now used as the escape key. It should not display an error message when used to cancel a keybinding menu as before. However, it is not possible to bind<esc>key to another command anymore. - (New) Symbolic link destinations are now shown in the bottom status line (by @wedens).
- (New) A new
hiddenfilesoption which takes a list of globs is implemented to customize which files should be hidden (by @adamtabrams). - (New) Expressions consisting of multiple commands can now use counts (by @gotroyb127).
- (New) Moving operations now fall back to copy and then delete strategy automatically for cross-device linking.
- (New) Option
hiddennow works in windows. - (New) Command
togglecan now take optional arguments to toggle given names instead of the current file (by @gotroyb127). - (New) A new option
truncatecharis implemented to customize the truncate character used in long filenames (by @YerinAlexey). - (New) Copy and move operations now display a success message when they are finished (by @YerinAlexey).
- (Fix) SIGHUP and SIGTERM signals are now properly handled. Log files should not remain when terminals are directly closed (by @Provessor).
- (Fix) Option
infoshould now align properly when used with optionnumberandrelativenumber(by @gotroyb127). - (Fix) Tilde
~is now only expanded at the beginning of path forcdandselectcommands (by @gotroyb127). - (Fix) Command
renameshould now work properly with names differing only cases on case-insensitive filesystems. - (Fix) Tab characters are now expanded to spaces in windows.
- (Fix) Option
incsearchnow respects the search direction accordingly. - (Fix) Server is now started in the home folder and will not hold mounted filesystems busy (by @shabahengam).
- (Fix) Trailing spaces in configuration files do not confuse the parser anymore.
- (Fix) Termbox version is updated to fix a keyboard problem in FreeBSD (by @doronbehar).
- (Fix) Async commands do not leave zombie processes anymore (by @gotroyb127).
- (Fix) Option
hiddennow works consistently as expected when set at the initial launch. - (Fix) Command
renameshould now select the new file after the operation. - (Fix) Command
renameshould now handle absolute paths properly. - (Fix) Command
selectshould now work properly on loading directories. Custom commands that select a file after an operation should now work properly without an explicitloadoperation beforehand. - (Fix) Previous errors in the bottom message line should not persist through the prompt usage anymore.
- (Fix) Command
pushshould not fail with non-ascii characters anymore. - (Fix) Command
selectshould not fail with broken links anymore. - (Fix) Command
loadshould not clear toggled broken links anymore. - (Fix) Copy and move operations do not overwrite broken links anymore.
r14
Changelog
- (New) Command
deletenow shows a prompt with the current filename or the number of selected files (by @Limero). - (New) Backslash can now be escaped with a backslash even without the quotes.
- (New) A new desktop entry file
lf.desktopis added (by @doronbehar). - (New) Three new
sortbytypes are added, access time (i.e.atime), change time (i.e.ctime), and extension (i.e.ext). New default keybindings are added for these sorts correspondingly (i.e.sa,sc, andse). Optioninfocan now also containatimeandctimevalues accordingly (by @kmwenja). - (New) A new shell completion for
zshis added toetc/lf.zsh(by @JurisMajors). - (New) Command
deletenow works asynchronously and shows the progress (by @JurisMajors). - (New) Completion and directory change scripts are added for
cshandtcshasetc/lf.cshandetc/lfcd.cshrespectively (by @nereusx). - (New) A new special command
on-cdis added to run a shell command when the directory is changed. See the documentation for more information. (by @ath3). - (Fix) Some directories with special permissions that previously show a file icon now shows a directory icon properly (by @Naheel-Azawy).
- (Fix) Script
etc/lfcd.cmdcan now also change to a different volume drive (by @YongJieYongJie). - (Fix) The proper use of
setsidfor opening files is now added to the example configuration and the documentation (by @LukeSmithxyz). - (Fix) Home directory abbreviation
~is now only applied properly to paths starting with the home directory (by @arolle). - (Fix) Command
renamenow cancels the operation if old and new paths are the same (by @Limero). - (Fix) Autocompletion and word movements should now work properly with all unicode characters.
- (Fix) Command
shell-pipewhich was broken some time ago should now work as expected. - (Fix) Variable
$TERMcan now work with values containingtmuxwith custom$TERMINFOvalues (by @doronbehar). @doronbehar now maintains a termbox fork for lf (https://github.com/doronbehar/termbox-go).
r13
Changelog
- (New) A new
wrapscrolloption is added to wrap top and bottom while scrolling (by @Limero). - (New) Movement commands
up,downand their variants,updir, andopenare now allowed incmapmappings. - (New) Two new
glob-selectandglob-unselectcommands are added to use globbing for toggling files (by @JurisMajors). - (New) A new
mark-remove(default") command is added to remove a mark (by @JurisMajors). - (New) An experimental icon support is added with
iconoption. See the wiki page for more details. - (New) A new builtin
renamecommand is added (by @JurisMajors). - (Fix) Command
cmd-history-nextnow remains in command mode after the last item (by @Limero). - (Fix) Command
selectdoes not change directory anymore when used on a directory. - (Fix) Working directory is now changed to the first argument when it is a directory.
- (Fix) Option
ratiosis now checked beforepreviewto avoid crashes (by @ath3). - (Fix) Previous error messages are now cleared after successful commands (with @JurisMajors).
- (Fix) Symlink to directories are now colored as symlinks (by @nvllsvm).
- (Fix) Permission errors for directories are now displayed properly instead of showing empty (by @JurisMajors).
r12
Changelog
- (New) Go modules replaced
godepfor dependency management. Package maintainers may need to update accordingly. - (New) A new
errorfmtoption is added to customize the colors and attributes of error messages. - (Fix) Autocompletion for searches now complete filenames instead of commands.
- (Fix) Permanent environmental variables (e.g.
$id,$EDITOR,$LF_LEVEL) are now exported on startup so they can be used in preview scripts without running a shell command first. - (Fix) On windows, quotes are added to the values exported values of
$f,$fs, and$fxto handle filenames with spaces properly. - (Fix) On windows, filenames starting with
.characters are now shown to avoid crashes when filenames show up as empty.
r11
Changelog
- (Breaking) Copy and move operations are now implemented as builtins instead of using the underlying shell primitives (i.e.
cpandmv). Users who want the old behavior can define a custompastecommand. See the updated documentation for more information. Please report bugs regarding this change. - (New) Copy and move operations now run asynchronously and the progress is shown in the bottom ruler.
- (New) Two new commands
echomsgandechoerrare added to print a message to the message line and to the log file at the same time. - Terminal initialization errors are now shown in the terminal instead of the log file.
- Preview messages (i.e.
empty,binary, andloading...) are now shown with reverse attribute.