Skip to content

Releases: sayanarijit/xplr

v0.19.1

10 Sep 20:15
1226472
Compare
Choose a tag to compare

Changes & fixes

  • You can now access uid and gid of the file owners in the Lua API. See column-renderer and node docs.
  • The input buffer will support more readline-like keys. Also, added "DeleteTillEnd" as another cursor based "InputOperation" option. See tui-input v0.5.0 release.
  • Fixed applying regex based filters via the CLI and $XPLR_PIPE_MSG_IN pipe. See issue #503.
  • You can use the prompt field to define input prompt for each mode, instead of using the SetInputPrompt message. See init.lua changes.

v0.19.0

06 Jun 15:44
Compare
Choose a tag to compare

Changes & fixes

  • BREAKING: The builtin modes cannot be accessed using space separated names
    anymore. Use underscore separated mode names.
    For e.g. SwitchModeBuiltin: create file becomes
    SwitchModeBuiltin: create_file and so on.
  • Fixed a bug with handling tab key in the input buffer.
  • Added xplr.config.general.global_key_bindings to define a set of
    key bindings that are available by default in every mode. e.g esc
    and ctrl-c.
  • Added new builtin mode go_to_path which can be used for typing or pasting
    paths to enter into or to focus on. Type g p to enter this mode.
  • Added basic tab completion support for the go_to_path, create_file,
    create_directory, rename and duplicate_as modes.
  • Use the builtin function xplr.fn.builtin.try_complete_path to add easy tab
    completion support into your own configuration.
  • Fixed syncing current working directory with OSC 7 compatible terminals (e.g.
    Wezterm).
  • The NO_COLOR environment variable also disables OSC 7.
  • Significantly optimized regex based search and filter.
  • The files table is a little compact now.
  • Removed boilerplate config from the default init.lua.
  • Minor input prompt related improvements in different modes.

Upgrade Guide: https://xplr.dev/en/upgrade-guide#v0180---v0190

v0.18.0

21 May 04:24
2c39f94
Compare
Choose a tag to compare

Changes & fixes

  • Added new command-line arguments --read0, --write0 and -0/--null to
    support reading and printing null character delimited file paths.
  • Added support for filtering with regex using the new filters:
    • RelativePathDoesMatchRegex
    • RelativePathDoesNotMatchRegex
    • IRelativePathDoesMatchRegex
    • IRelativePathDoesNotMatchRegex
    • AbsolutePathDoesMatchRegex
    • AbsolutePathDoesNotMatchRegex
    • IAbsolutePathDoesMatchRegex
    • IAbsolutePathDoesNotMatchRegex
  • Key binding f r and f R will now filter using regex.
  • Added key binding f backspace to remove the last filter.
  • Search mode now defaults to regex search.
  • Added a new message SetInputPrompt to set the input prompt dynamically.
  • Added new node properties (available via the Lua API):
    • created
    • last_modified
  • Added support for sorting with timestamp using the new sorters:
    • ByCreated
    • ByLastModified
    • ByCanonicalCreated
    • ByCanonicalLastModified
    • BySymlinkCreated
    • BySymlinkLastModified
  • The last column in the files table now displays the last modification time.
  • Fixed a bug causing crashes when handling unicode characters in the input
    buffer.
  • Improved docs.

v0.17.6

04 May 05:01
6d9d324
Compare
Choose a tag to compare

Changes & fixes

  • Fixed rendering ANSI colors.
  • Default UI improvements.
  • Documented how to add luarocks support.

v0.17.4

14 Apr 08:29
adc47b7
Compare
Choose a tag to compare

Changes & fixes

  • Fixed invalid cursor position when using multi character custom prompt.
  • Improved documentation, covering almost every detail.
  • More concise init.lua.
  • Upgraded Rust version and edition.
  • Upgraded dependencies.
  • Performance improvements (due to the updates).

v0.17.3

28 Feb 04:55
Compare
Choose a tag to compare

Changes & fixes

  • Added new fields border_type and border_style for all the panels to enable customizing the borders (see #450).
  • Added boolean option xplr.config.general.enforce_bounded_index_navigation to configure wrapping on move (see #441).
  • The built-in init.lua has been fully documented (see #445).
  • Categorized the full list of messages using auto generation of docs from code (see #444).
  • Some code refactor and documentation improvements.

v0.17.2

03 Feb 05:01
Compare
Choose a tag to compare

Changes & fixes

  • Added CLI option --print-pwd-as-result to simplify implementing "cd on quit" using shell alias (See #437)
    alias xcd='cd "$(xplr --print-pwd-as-result)"'
  • Added new key binding ctrl-d to duplicate a file or directory in the same parent directory with a different name. (See #434).

v0.17.1

11 Jan 07:24
e2c3251
Compare
Choose a tag to compare

Changes & fixes

  • If errors occur during startup, xplr will display a debug error screen.
    This can be disabled by setting xplr.config.general.disable_debug_error_mode = true
  • While creating files (e.g. path/to/file), if the parent directories don't exist, they will be automatically created.

v0.17.0

11 Dec 16:15
7364812
Compare
Choose a tag to compare

Changes & fixes

  • Deprecated app.directory_buffer, app.history, and app.last_modes in
    the custom dynamic layout renderer context.
    As of now, there's no way to access these fields in dynamic layouts. While
    app.history and app.last_modes can be re-added upon request
    (with justification), app.directory_buffer has been deprecated for good.
    However, there's no change in the CallLua* context.
  • As a result, change directory performance has been restored.
  • Set xplr.config.general.hide_remaps_in_help_menu to true to hide the remaps in
    help menu.
  • None will be serialized to nil in Lua.
  • LuaEval can now return a function that will be called with the Lua Context
    argument. Refer to the Full List of Messages doc for example.

v0.16.4

15 Nov 12:47
Compare
Choose a tag to compare

Changes & fixes

  • Fixed a nasty performance issue with rendering custom dynamic layouts in a big directory.
  • Fixed another nasty issue of cursor jumping back to the initial item after visiting a big directory.