3 个版本
0.1.2 | 2023 年 8 月 31 日 |
---|---|
0.1.1 | 2023 年 8 月 31 日 |
0.1.0 | 2023 年 8 月 31 日 |
2836 在 命令行工具
5.5MB
2.5K SLoC
moccasin
一个支持 RSS、Atom 以及(最终)播客的 TUI 文摘阅读器。VIM 键盘绑定。受 Ranger 启发的设计界面。可配置。
安装
cargo install moccasin
用法
由于 "moccasin" 这个词很难拼写,且字母太多,所以可执行文件仅称为 mcsn
。
mcsn [OPTIONS]
选项
命令行参数将覆盖会话中设置的任何配置文件值。
简写 | 长格式 | 参数 | 描述 |
---|---|---|---|
-c |
--config |
<PATH> | 设置自定义配置文件 |
-s |
--color-scheme |
<COLOR_SCHEME> | 设置颜色方案,可以是内置的或指向自定义主题文件的路径 |
-i |
--interval |
<INTERVAL> | 设置自定义刷新频率(以秒为单位) |
-t |
--timeout |
<TIMEOUT> | 设置自定义请求超时(以秒为单位) |
-n |
--no-cache |
不在本地文件支持的数据库中缓存文摘 | |
-h |
--help |
显示帮助信息 | |
-V |
--version |
显示版本 |
配置
首次启动时,Moccasin 将在您的默认配置目录中创建数据库和配置文件,该目录因平台而异
平台 | 值 | 示例 |
---|---|---|
Linux | $HOME /.config/moccasin/ |
/home/alice/.config/moccasin/ |
macOS | $HOME /Library/Application Support/com.rektsoft.moccasin/ |
/Users/Alice/Library/Application Support/com.rektsoft.moccasin/ |
Windows | {FOLDERID_LocalAppData} \rektsoft\moccasin\config |
C:\Users\Alice\AppData\Local\rektsoft\moccasin\config |
该目录下的 moccasin.toml
文件可以被编辑以自定义应用程序行为,批量添加文摘,更改颜色方案等。大多数这些属性也可以在应用程序内部更改,并将写入此文件。配置选项如下
moccasin.toml
表 | 字段 | 类型 | 默认 | 描述 |
---|---|---|---|---|
[sources] |
表 | |||
订阅 |
数组 | [] |
您希望在应用中看到的 Atom/RSS 订阅的 URL。 | |
[偏好设置] |
表 | |||
颜色方案 |
枚举 | 表格 | "默认" |
可以是内置的颜色方案名称,以下列表中的一个:"default" | "borland" | "darcula" | "focus" | "jungle" | "matrix" | "redshift" | "wyse" ,或者是一个如下方所述的值表。 |
|
sort_feeds |
枚举 | "a-z" |
订阅的排序顺序,以下列表中的一个:"a-z" | "z-a" | "newest" | "oldest" | "unread" | "custom" |
|
cache_feeds |
布尔值 | true |
是否将订阅写入本地数据库以加快启动和访问速度。当设置为 false 时,应用将使用内存数据库。 |
|
refresh_interval |
整数 | 3600 |
多久刷新一次订阅,以秒为单位。 | |
refresh_timeout |
整数 | 5 |
在取消每个订阅之前等待的时间,以秒为单位。 |
颜色方案
要创建自定义颜色方案,可以将 color_scheme
字段声明为一个表格,其中键是界面元素,值可以是内置的 ANSI 颜色(将继承自您的终端模拟器)、HEX 颜色,或者具有相同类型的 fg
和 bg
属性的 InlineTable。
[preferences.color_scheme]
base = { fg = "white", bg = "#000080" }
status = { fg = "gray", bg = "#000080" }
border = "gray"
selection_active = { fg = "#000080", bg = "#fefd72" }
scrollbar = { fg = "white", bg = "gray" }
内置颜色名称有
"白色"
"黑色"
"红色"
"绿色"
"黄色"
"蓝色"
"品红色"
"青色"
"灰色"
"浅红色"
"浅绿色"
"浅黄色"
"浅蓝色"
"浅品红色"
"浅青色"
"浅黑色"
|"深灰色"
可样式化的属性都是可选的,继承合理的默认值。以下是可以用的属性:
字段 | 默认 | 描述 |
---|---|---|
base |
终端默认 | 基本前景和背景颜色 |
overlay |
base |
模式覆盖 |
status |
base |
顶部菜单栏和底部状态栏的颜色 |
selection |
~base |
选中的列表项 |
selection_active |
selection |
活动面板的选中列表项 |
border |
border_active * |
面板周围的边框和标题 |
border_active |
base |
活动面板的边框和标题 |
scrollbar |
base |
滚动条的滑块(fg )和轨道(bg ) |
* 注意:当继承的样式(无论是
base
还是border_active
)定义为十六进制颜色时,定义border
是很重要的,否则将很难知道哪个面板当前处于活动状态。
快捷键
该应用使用 VIM 风格的快捷键,但也可以使用箭头键进行导航。目前,应用有 NORMAL
模式和 COMMAND
模式。在未来,您还应该能够在 GROUP
模式下标记和分组源和条目。
NORMAL 模式
键 | 描述 |
---|---|
j /k |
聚焦下一个/前一个条目 |
h /l |
聚焦上一个/下一个面板 |
Enter |
选择当前条目 |
Esc |
取消选择当前条目/模式 |
Tab |
循环标签 |
b /f /t |
查看浏览/收藏/标签标签页 |
r |
刷新所有源 |
o |
在浏览器中打开当前源/条目 |
: |
进入 COMMAND 模式 |
, |
打开配置文件 |
? |
显示快捷键 |
COMMAND 模式
命令 | 参数 | 描述 |
---|---|---|
:a , :add |
<URL> | 添加源 |
:d , :delete |
[URL] | 删除 URL 的源,或未提供时删除当前源。从配置文件和缓存中删除此条目。 |
:s , :search |
<TEXT> | 搜索源、条目或文本内容 |
许可
MIT © Tobias Fried
依赖项
~33–49MB
~868K SLoC