#tui #dict #protocols #database-server

bin+lib redict

一个用于与 DICT 服务器工作的 TUI 和库

5 个版本

0.2.3 2021 年 1 月 26 日
0.2.2 2021 年 1 月 26 日
0.2.1 2021 年 1 月 22 日
0.2.0 2021 年 1 月 22 日
0.1.0 2021 年 1 月 20 日

#1825 in 数据库接口

自定义许可

57KB
1.5K SLoC

redict

redict

一个用于与 DICT 服务器工作的 TUI 和库。

使用

启动

要启动 redict,只需执行

redict {server}:{port}

搜索

要搜索,只需输入你想要查找定义的单词!搜索栏中还有两个有用的工具

  • 将任何内容前缀为 @,它将选择一个数据库
  • 将任何内容前缀为 :,它将选择一个匹配策略

因此

word @database :strategy

表示 search "word" in "database" wiht algorithm "strategy"

导航

我们可以将 redict 窗口分为 3 部分

  • 搜索栏(顶部栏)
  • 状态栏(位于搜索栏下方)
  • "模式"空间(除上述两个之外的所有内容),由模式指示器分隔。

有一些通用的键绑定

动作
Esc 退出 redict
PageUp 在标签页中向上滚动
PageDown 在标签页中向下滚动
Tab 转到下一个模式
BackTab 转到上一个模式
Up Search 栏历史记录中向上
Down Search 栏历史记录中向下
CTRL-u 清空搜索栏
Enter 刷新当前模式,可能使用当前搜索的术语
Left 将搜索栏光标移到左侧
Right 将搜索栏光标移到右侧
Home 将光标移至搜索栏开头
End 将光标移至搜索栏末尾

此外,您还可以使用键盘直接编辑搜索栏,即输入的任何内容都将添加到搜索栏中。

模式

每个模式都执行不同的操作,并允许您查看有关服务器不同的信息。

定义

显示当前搜索项的定义。

您可以使用CTRL-hCTRL-l来导航定义。

定义在屏幕底部最下面的Sources栏中列出。

匹配

显示与当前搜索词匹配的单词。

如果您的搜索在Define模式下显示No definition,这可能很有用。

策略

显示此服务器提供的可用匹配策略。

数据库

显示此服务器提供的可用数据库。

待办事项

功能

我想要

  • 基本工作的二进制文件和库
  • 更好的搜索栏
    • 使用@dbDefineMatch模式下进行数据库过滤
    • 使用:strategyMatch模式下选择策略
    • 补全
  • 增强的Info模式,包括DatabasesStrategies以及其他信息
  • Command模式,用于发送原始命令
  • 多个服务器,但始终在0-config模式下,即仅从命令行指定

兼容性

此工具(目前)部分符合RFC 2229

  • 定义
  • 匹配
  • 显示
    • 数据库
    • 策略
    • 信息
    • 服务器
  • 客户端
  • 状态
  • 退出
  • OPTION MIME(而且永远不会是)
  • 认证
  • SASL

它也不会管道化请求,因为在交互式使用中这不必要。

依赖项

~1–13MB
~117K SLoC