From 7e5271328ea98e24f8394cd49e8613358e1bf962 Mon Sep 17 00:00:00 2001 From: sayanarijit Date: Thu, 24 Jun 2021 11:35:20 +0000 Subject: [PATCH] Automated deployment: Thu Jun 24 11:35:20 UTC 2021 32a32e9180ef1b1df114485f1a81a9707d3ac1c1 --- en/404.html | 2 +- en/alternatives.html | 2 +- en/awesome-plugins.html | 2 +- en/community.html | 2 +- en/configuration.html | 2 +- en/contribute.html | 2 +- en/default-key-bindings.html | 6 +- en/filtering.html | 267 +++++++++++++++++++++++++++++++++++ en/general-config.html | 76 +++++++++- en/index.html | 2 +- en/install.html | 2 +- en/installing-plugins.html | 2 +- en/introduction.html | 2 +- en/layouts.html | 2 +- en/message.html | 2 +- en/modes.html | 2 +- en/node_types.html | 2 +- en/plugin.html | 2 +- en/post-install.html | 2 +- en/print.html | 210 ++++++++++++++++++++++++++- en/quickstart.html | 2 +- en/searchindex.js | 2 +- en/searchindex.json | 2 +- en/sorting.html | 261 ++++++++++++++++++++++++++++++++++ en/style.html | 6 +- en/todo.html | 2 +- en/upgrade-guide.html | 8 +- en/writing-plugins.html | 2 +- 28 files changed, 840 insertions(+), 36 deletions(-) create mode 100644 en/filtering.html create mode 100644 en/sorting.html diff --git a/en/404.html b/en/404.html index 609eb4d..23160f2 100644 --- a/en/404.html +++ b/en/404.html @@ -83,7 +83,7 @@ - 1. Introduction2. Quickstart2.1. Install2.2. Post Install3. Configuration3.1. General Config3.2. Modes3.3. Message3.4. Layouts3.5. Node Types3.6. Style4. Default Key Bindings5. Plugin5.1. Installing Plugins5.2. Writing Plugins5.3. Awesome Plugins6. TODO7. Alternatives8. Upgrade Guide9. Community10. Contribute + 1. Introduction2. Quickstart2.1. Install2.2. Post Install3. Configuration3.1. General Config3.2. Modes3.3. Message3.4. Layouts3.5. Node Types3.6. Style3.7. Sorting3.8. Filtering4. Default Key Bindings5. Plugin5.1. Installing Plugins5.2. Writing Plugins5.3. Awesome Plugins6. TODO7. Alternatives8. Upgrade Guide9. Community10. Contribute diff --git a/en/alternatives.html b/en/alternatives.html index 3eaf5a8..5fca27b 100644 --- a/en/alternatives.html +++ b/en/alternatives.html @@ -82,7 +82,7 @@ - 1. Introduction2. Quickstart2.1. Install2.2. Post Install3. Configuration3.1. General Config3.2. Modes3.3. Message3.4. Layouts3.5. Node Types3.6. Style4. Default Key Bindings5. Plugin5.1. Installing Plugins5.2. Writing Plugins5.3. Awesome Plugins6. TODO7. Alternatives8. Upgrade Guide9. Community10. Contribute + 1. Introduction2. Quickstart2.1. Install2.2. Post Install3. Configuration3.1. General Config3.2. Modes3.3. Message3.4. Layouts3.5. Node Types3.6. Style3.7. Sorting3.8. Filtering4. Default Key Bindings5. Plugin5.1. Installing Plugins5.2. Writing Plugins5.3. Awesome Plugins6. TODO7. Alternatives8. Upgrade Guide9. Community10. Contribute diff --git a/en/awesome-plugins.html b/en/awesome-plugins.html index 5fe2259..a89d6d9 100644 --- a/en/awesome-plugins.html +++ b/en/awesome-plugins.html @@ -82,7 +82,7 @@ - 1. Introduction2. Quickstart2.1. Install2.2. Post Install3. Configuration3.1. General Config3.2. Modes3.3. Message3.4. Layouts3.5. Node Types3.6. Style4. Default Key Bindings5. Plugin5.1. Installing Plugins5.2. Writing Plugins5.3. Awesome Plugins6. TODO7. Alternatives8. Upgrade Guide9. Community10. Contribute + 1. Introduction2. Quickstart2.1. Install2.2. Post Install3. Configuration3.1. General Config3.2. Modes3.3. Message3.4. Layouts3.5. Node Types3.6. Style3.7. Sorting3.8. Filtering4. Default Key Bindings5. Plugin5.1. Installing Plugins5.2. Writing Plugins5.3. Awesome Plugins6. TODO7. Alternatives8. Upgrade Guide9. Community10. Contribute diff --git a/en/community.html b/en/community.html index 691ad83..5416bb2 100644 --- a/en/community.html +++ b/en/community.html @@ -82,7 +82,7 @@ - 1. Introduction2. Quickstart2.1. Install2.2. Post Install3. Configuration3.1. General Config3.2. Modes3.3. Message3.4. Layouts3.5. Node Types3.6. Style4. Default Key Bindings5. Plugin5.1. Installing Plugins5.2. Writing Plugins5.3. Awesome Plugins6. TODO7. Alternatives8. Upgrade Guide9. Community10. Contribute + 1. Introduction2. Quickstart2.1. Install2.2. Post Install3. Configuration3.1. General Config3.2. Modes3.3. Message3.4. Layouts3.5. Node Types3.6. Style3.7. Sorting3.8. Filtering4. Default Key Bindings5. Plugin5.1. Installing Plugins5.2. Writing Plugins5.3. Awesome Plugins6. TODO7. Alternatives8. Upgrade Guide9. Community10. Contribute diff --git a/en/configuration.html b/en/configuration.html index d59f794..9604574 100644 --- a/en/configuration.html +++ b/en/configuration.html @@ -82,7 +82,7 @@ - 1. Introduction2. Quickstart2.1. Install2.2. Post Install3. Configuration3.1. General Config3.2. Modes3.3. Message3.4. Layouts3.5. Node Types3.6. Style4. Default Key Bindings5. Plugin5.1. Installing Plugins5.2. Writing Plugins5.3. Awesome Plugins6. TODO7. Alternatives8. Upgrade Guide9. Community10. Contribute + 1. Introduction2. Quickstart2.1. Install2.2. Post Install3. Configuration3.1. General Config3.2. Modes3.3. Message3.4. Layouts3.5. Node Types3.6. Style3.7. Sorting3.8. Filtering4. Default Key Bindings5. Plugin5.1. Installing Plugins5.2. Writing Plugins5.3. Awesome Plugins6. TODO7. Alternatives8. Upgrade Guide9. Community10. Contribute diff --git a/en/contribute.html b/en/contribute.html index 618d9a1..535f5e9 100644 --- a/en/contribute.html +++ b/en/contribute.html @@ -82,7 +82,7 @@ - 1. Introduction2. Quickstart2.1. Install2.2. Post Install3. Configuration3.1. General Config3.2. Modes3.3. Message3.4. Layouts3.5. Node Types3.6. Style4. Default Key Bindings5. Plugin5.1. Installing Plugins5.2. Writing Plugins5.3. Awesome Plugins6. TODO7. Alternatives8. Upgrade Guide9. Community10. Contribute + 1. Introduction2. Quickstart2.1. Install2.2. Post Install3. Configuration3.1. General Config3.2. Modes3.3. Message3.4. Layouts3.5. Node Types3.6. Style3.7. Sorting3.8. Filtering4. Default Key Bindings5. Plugin5.1. Installing Plugins5.2. Writing Plugins5.3. Awesome Plugins6. TODO7. Alternatives8. Upgrade Guide9. Community10. Contribute diff --git a/en/default-key-bindings.html b/en/default-key-bindings.html index 8502135..3bab6e9 100644 --- a/en/default-key-bindings.html +++ b/en/default-key-bindings.html @@ -82,7 +82,7 @@ - 1. Introduction2. Quickstart2.1. Install2.2. Post Install3. Configuration3.1. General Config3.2. Modes3.3. Message3.4. Layouts3.5. Node Types3.6. Style4. Default Key Bindings5. Plugin5.1. Installing Plugins5.2. Writing Plugins5.3. Awesome Plugins6. TODO7. Alternatives8. Upgrade Guide9. Community10. Contribute + 1. Introduction2. Quickstart2.1. Install2.2. Post Install3. Configuration3.1. General Config3.2. Modes3.3. Message3.4. Layouts3.5. Node Types3.6. Style3.7. Sorting3.8. Filtering4. Default Key Bindings5. Plugin5.1. Installing Plugins5.2. Writing Plugins5.3. Awesome Plugins6. TODO7. Alternatives8. Upgrade Guide9. Community10. Contribute @@ -355,7 +355,7 @@ of modes and the key mappings for each mode.
xplr supports filtering paths by different properties. The filtering mechanism +works like a pipeline, which in visible in the Sort & filter panel.
Sort & filter
Example:
rel!^. › [i]abs=~abc › [i]rel!~xyz +
This line means that the nodes visible on the table will first be filtered by +the condition: relative path does not start with ., then by the condition: +absolute path contains abc (case insensitive), and finally by the +condition: relative path does not contain xyz.
.
abc
xyz
Each part of this pipeline is called Node Filter Applicable.
It contains the following information:
A filter can be one of the following:
TODO: document each
Type: string
The input for the condition.
ToggleNodeFilter = { + filter = "RelativePathDoesNotStartWith", + input = "." +} +
Here, ToggleNodeFilter is a message that adds or removes +(toggles) the filter applied.
ToggleNodeFilter
Style of the cursor.
The name of one of the defined layouts to use when xplr loads.
The name of one of the layout to use when xplr loads.
The name of one of the mode to use when xplr loads.
Type: list of Node Sorter Applicable
Initial group if sorters applied to the nodes list in the table.
Type: Style
Default style of the table.
Type: nullable integer
Default spacing of the columns in the table.
Type: nullable list of Constraint
Width of each column in the table.
Height of the table header.
Style of table header.
Type: List of column configuration
Each column config contains format field (string) and style field +(Style), that define the content and style of header.
format
style
Height of each row in the table.
Style of table rows.
Each column config contains format field (string) and style field +(Style).
However, unlike table.header.cols, the format field here +points to a Lua function that receives a +special argument +as input and returns a string that will be displayed in the column.
TODO: Document the argument fields here.
xplr by default provides the following functions:
xplr.fn.builtin.fmt_general_table_row_cols_0
xplr.fn.builtin.fmt_general_table_row_cols_1
xplr.fn.builtin.fmt_general_table_row_cols_2
xplr.fn.builtin.fmt_general_table_row_cols_3
xplr.fn.builtin.fmt_general_table_row_cols_4
You can either overwrite these functions, or create new functions in +xplr.fn.custom and point to them.
xplr.fn.custom
Terminal colors are supported.
xplr.fn.custom.fmt_simple_column = function(m) + return m.prefix .. m.relative_path .. m.suffix +end + +xplr.config.general.table.header.cols = { + { format = " path" } +} + +xplr.config.general.table.row.cols = { + { format = "custom.fmt_simple_column" } +} + +xplr.config.general.table.col_widths = { + { Percentage = 100 } +} + +-- With this config, you should only see a single column displaying the +-- relative paths. +
TODO: Continue documentation
xplr is a modal file explorer. That means the users switch between different @@ -1047,6 +1119,130 @@ xplr.config.general.cursor.style.bg = { Rgb = { 100, 150, 200 } } xplr.config.general.cursor.style.add_modifiers = { "Bold", "Italic" } xplr.config.general.cursor.style.sub_modifiers = { "Hidden" } +
xplr supports sorting paths by different properties. The sorting mechanism +works like a pipeline, which in visible in the Sort & filter panel.
size↑ › [i]rel↓ › [c]dir↑ › [c]file↑ › sym↑ +
This line means that the nodes visible on the table will be first sorted by +relative file size, then by case insensitive relative path, then by the +canonical (symlink resolved) type of the node, and finally by whether or not +the node is a symlink.
The arrows denote the order.
Each part of this pipeline is called Node Sorter Applicable.
A sorter can be one of the following:
Type: boolean
It defined the direction of the order.
xplr.config.general.initial_sorting = { + { sorter = "ByCanonicalIsDir", reverse = true }, + { sorter = "ByIRelativePath", reverse = false }, +} +
This snippet defines the initial sorting logic to be applied when xplr loads.
The default key binding is inspired by vim and slightly overlaps with nnn, but it's supposed to be @@ -1087,7 +1283,7 @@ of modes and the key mappings for each mode.
app-1.0.0
config-1.1.0
init.lua
$HOME/.config/xplr/
/etc/xplr/
config.general.disable_recover_mode = true
xplr --help
v0.14.3
StartFifo
ToggleFifo
xplr.config.start_fifo
Like this project so far? Please consider contributing.