FarNet.RedisKit
0.5.0
Prefix Reserved
See the version list below for details.
dotnet add package FarNet.RedisKit --version 0.5.0
NuGet\Install-Package FarNet.RedisKit -Version 0.5.0
<PackageReference Include="FarNet.RedisKit" Version="0.5.0" />
paket add FarNet.RedisKit --version 0.5.0
#r "nuget: FarNet.RedisKit, 0.5.0"
// Install FarNet.RedisKit as a Cake Addin #addin nuget:?package=FarNet.RedisKit&version=0.5.0 // Install FarNet.RedisKit as a Cake Tool #tool nuget:?package=FarNet.RedisKit&version=0.5.0
FarNet.RedisKit
Far Manager Redis helpers based on FarNet.Redis
About
RedisKit is the FarNet module for Redis operations in Far Manager.
Project FarNet
- Wiki: https://github.com/nightroman/FarNet/wiki
- Site: https://github.com/nightroman/FarNet
- Author: Roman Kuzmin
Install
- Far Manager
- Package FarNet
- Package FarNet.Redis
- Package FarNet.RedisKit
How to install and update FarNet and modules
https://github.com/nightroman/FarNet#readme
Commands
RedisKit commands start with rk:
. Commands are invoked in the command line or
using F11 / FarNet / Invoke or defined in the user menu and file associations.
Command parameters are key=value pairs separated by semicolons, using the
connection string format
rk:command [key=value] [; key=value] ...
Common parameters
Redis={string}
Specifies Redis configuration string or name from Settings.
All commands
rk:edit
This command opens the key value editor. Saving in the editor commits to Redis. Editors are not modal, you may have several keys edited at the same time. See Editing as text about the rules.
Parameters
Key={string}
(required)Specifies the existing key or a new String key.
rk:hash
This command opens Hash panel.
Parameters
Key={string}
(required)Specifies the hash key. If the key does not exist then a new hash will be created. If the key type does not match then the command throws an error.
Eol={bool}
(optional)Tells to show the EOL column with field end of live times.
rk:json
This command opens the editor of keys exported as JSON. Saving in the editor imports JSON back to Redis. Editors are not modal, you may have several keys edited at the same time.
Parameters
Mask={string}
(required)Specifies the search pattern or wildcard or key.
(1) If the mask contains
[
or]
then it is used as Redis pattern. See: https://redis.io/docs/latest/commands/keys(2) If the mask contains
*
or?
then it is used as wildcard with special symbols*
and?
.(3) Otherwise the mask is used as the key.
Unlike editing as text, JSON supports end of life values, blobs as Base64 strings, and complex type strings with new line characters.
JSON schema
{
"{key}": {
"EOL": "{universal-date-time}",
"{type}": {value}
},
"{key}": ...
}
{key}
- Redis keys{type}
-Text
,Blob
,List
,Set
,Hash
"EOL"
- present or not depending on persistence{value}
Text
- usual stringBlob
- Base64 stringList
,Set
,Hash
- see below
List and Set {value}
List and Set values are arrays of literal strings and blobs. Literal strings are usual JSON strings. Blobs are represented as arrays with one Base64 string.
{
"my-list": {
"List": [
"hello",
["AIA="]
]
}
}
Hash {value}
Hash values are objects where properties are hash field names and values are field values, persistent strings and blobs and expiring strings and blobs.
{
"my-hash": {
"Hash": {
"persistent-text": "42",
"persistent-blob": ["AIA="],
"expiring-text": {
"EOL": "2025-02-02",
"Text": "42"
},
"expiring-blob": {
"EOL": "2025-02-02",
"Blob": "AIA="
}
}
}
}
rk:keys
This command opens Keys panel with the key pattern.
Parameters
Mask={string}
(optional)Specifies the search pattern or wildcard or prefix.
(1) If the mask contains
[
or]
then it is used as Redis pattern. See: https://redis.io/docs/latest/commands/keys(2) If the mask contains
*
or?
then it is used as wildcard with special symbols*
and?
.(3) Otherwise the mask is used as prefix. Keys are shown without the prefix. But panel operations work with actual keys with the prefix.
rk:list
This command opens List panel.
Parameters
Key={string}
(required)Specifies the list key. If the key does not exist then a new list will be created. If the key type does not match then the command throws an error.
rk:set
This command opens Set panel.
Parameters
Key={string}
(required)Specifies the set key. If the key does not exist then a new set will be created. If the key type does not match then the command throws an error.
rk:tree
This command opens Keys panel with inferred folders.
Parameters
Root={string}
(optional)Specifies the root key prefix for
rk:tree
.
The trailing separator (colon) is optional.Colon={string}
(optional)Specifies the folder separator for
rk:tree
.
The default is traditional Redis colon (:).
Panels
RedisKit provides several panels for browsing and operating
Keys panel
This panel shows keys, folders (tree mode), value types and end-of-life dates.
Type marks: *
String, H
Hash, L
List, S
Set.
It is opened by rk:keys and rk:tree.
Keys and actions
Enter
For Hash, List, Set keys opens their panels.
UseEsc
in order to return to the keys panel.For folders enters the cursor folder.
F4
Opens the cursor value editor. Saving in the editor commits to Redis. Editors are not modal, you may have several keys edited at the same time. See Editing as text about the rules.
ShiftF5
Clones the cursor key with a new name.
ShiftF6
Renames the cursor key or key folder.
(!) Take special care on renaming folders.F7
Creates a new string key.
F8
,Del
Deletes the selected keys and key folders.
(!) Take special care on deleting folders.CtrlPgDn
,CtrlPgUp
,Enter
"dots",CtrlBackSlash
Folder navigation keys for
rk:tree
panel.If
root
is specified then navigating up stops at it.
Hash panel
This panel shows hash entries, fields and values.
It is opened from the keys panel or by rk:hash.
Keys and actions
F4
Opens the cursor hash value editor.
ShiftF5
Clones the cursor entry.
ShiftF6
Renames the cursor field.
F7
Creates a new entry.
F8
,Del
Deletes the selected entries.
List panel
This panel shows list items.
It is opened from the keys panel or by rk:list.
Keys and actions
F4
Opens the cursor item editor.
ShiftF5
Creates a new item before the cursor.
ShiftF6
Renames the item.
F7
Creates a new item at the tail.
F8
,Del
Deletes the selected items.
Set panel
This panel shows set members.
It is opened from the keys panel or by rk:set
Keys and actions
F4
Opens the cursor member editor.
ShiftF5
Creates a new member.
ShiftF6
Renames the member.
F7
Creates a new member.
F8
,Del
Deletes the selected members.
Editing as text
Editing Redis values as text is used by rk:edit
and by file content
operations in panels (F4
, F3
, CtrlQ
).
String
Redis String can be edited as text if its value looks like UTF-8.
List
Redis List can be edited as text if its items look like UTF-8 and do not contain new line characters. Editor lines, including empty, represent items.
Set
Redis Set can be edited as text if its items look like UTF-8 and do not contain new line characters. Editor lines, including empty, represent items.
Hash
Redis Hash can be edited as text if its fields and values look like UTF-8 and do not contain new line characters. The Hash editor uses line triplets (field, value, empty line) for representing hash entries.
See also rk:json for the alternative way. Unlike editing as text, JSON supports end of life values, blobs as Base64 strings, and complex type strings with new line characters.
Menu
Copy key to clipboard
Copies the current key name to clipboard.
Help
Shows RedisKit help.
Settings
F11 / FarNet / Settings / RedisKit Settings and Workings
Settings / FolderSymbols
Specifies valid folder symbols in addition to letters and digits.
They are used by rk:tree
for inferring folder names.
Settings / Configurations
Specifies Redis configurations, environment variables are expanded.
The default configuration name is specified by Workings/Configuration
.
Example:
<Configurations>
<Configuration Name="Main">%FARNET_REDIS_CONFIGURATION%</Configuration>
<Configuration Name="Local">127.0.0.1:3278</Configuration>
</Configurations>
Workings / Configuration
Specifies the current default configuration name.
The name must exist in Settings/Configurations
.
Example:
<Configuration>Local</Configuration>
Learn more about Target Frameworks and .NET Standard.
This package has no dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
0.5.1 | 64 | 2/4/2025 |
0.5.0 | 71 | 2/3/2025 |
0.4.0 | 71 | 1/31/2025 |
0.3.6 | 62 | 1/25/2025 |
0.3.5 | 111 | 1/1/2025 |
0.3.4 | 91 | 12/29/2024 |
0.3.3 | 100 | 12/24/2024 |
0.3.2 | 90 | 12/18/2024 |
0.3.1 | 104 | 12/14/2024 |
0.3.0 | 97 | 12/8/2024 |
0.2.6 | 113 | 10/27/2024 |
0.2.5 | 96 | 10/26/2024 |
0.2.4 | 100 | 10/25/2024 |
0.2.3 | 95 | 10/23/2024 |
0.2.2 | 106 | 10/22/2024 |
0.2.1 | 93 | 10/21/2024 |
0.2.0 | 102 | 10/21/2024 |
0.1.5 | 87 | 10/17/2024 |
0.1.4 | 155 | 5/15/2024 |
0.1.3 | 120 | 5/8/2024 |
0.1.2 | 120 | 5/7/2024 |
0.1.1 | 139 | 5/7/2024 |
0.1.0 | 140 | 5/6/2024 |
0.0.4 | 131 | 5/5/2024 |
0.0.3 | 123 | 5/5/2024 |
0.0.2 | 137 | 5/4/2024 |
0.0.1 | 142 | 5/4/2024 |