Go RSS阅读器
使用Golang编写的简单RSS / Atom阅读器,高度可配置的主题
- OPML支持加载提要URL(opmlFile在gorss.conf中)
- 支持XDG配置
- RSS和Atom支持(通过github.com/mmcdole/gofeed)
- 可配置单词的重点
- 键盘快捷键高度可配置
- 用于自定义执行外部应用程序的自定义键
- 在浏览器中打开链接
- 标记文章并在 webbrowser 中打开全部标记的文章
- 主题支持
- 预览RSS的内容
- 由SQLite数据库支持
- 将文章标记为已读
- 全部标记为已读/未读
在发行页面下可以找到带有针对 Linux 和OSX预先构建的二进制文件的Tarball。
只需从tarball 运行gorss_linux或运行gorss_osx二进制文件即可。
您还可以手动指定主题,配置和数据库。
./gorss -config go rss .conf -theme default.theme -db mydb.db
如果不使用上面的参数启动,Gors期望拥有gorss.conf和它自己default.theme相同的目录gorss。
要生成并运行,请使用 makefile 。
make run
为了make release在OSX上针对Linux 进行交叉编译,您需要安装以下内容:
brew install FiloSottile/musl-cross/musl-cross
该数据库gorss.db将在系统的“数据主目录”目录中自动创建。您可以-db通过二进制参数指定要使用的数据库。
可以将配置文件指定为标志,默认为gorss.conf。
./gorss -config my.conf
{
"highlights": [
"emulation",
"truck",
"google",
"network",
"math",
"toyota"
],
"OPMLFile": "../example_ompl.xml",
"feeds": [
"news.ycombinator.com/rss",
"sweclockers.com/feeds/nyheter",
],
"feedWindowSizeRatio": 2,
"articlePreviewWindowSizeRatio": 5,
"articleWindowSizeRatio": 2,
"previewWindowSizeRatio": 1,
"daysToKeepDeletedArticlesInDB": 1,
"daysToKeepReadArticlesInDB": 1,
"skipArticlesOlderThanDays": 10,
"secondsBetweenUpdates": 300,
"skipPreviewInTab": true,
"keyOpenLink": "Backspace2",
"keyMarkLink": "Enter",
"keyOpenMarked": "o",
"keyDeleteArticle": "d",
"keyMoveDown": "s",
"keyMoveUp": "w",
"keySortByDate": "r",
"keySortByUnread": "e",
"keySortByTitle": "t",
"keySortByFeed": "y",
"keyUpdateFeeds": "Ctrl+U",
"keyMarkAllRead": "Ctrl+R",
"keyMarkAllUnread": "Ctrl+T",
"keyTogglePreview": "q",
"keySelectFeedWindow": "1",
"keySelectArticleWindow": "2",
"keySelectPreviewWindow": "3",
"keyToggleHelp": "h",
"keySwitchWindows": "Tab",
"keyQuit": "Esc",
"customCommands": [
{
"key": "j",
"Cmd": "echo 'ARTICLE.Content' 'ARTICLE.Link' > /tmp/ test 2.txt"
},
{
"key": "k",
"Cmd": "echo 'ARTICLE.Title' 'ARTICLE.Feed' > /tmp/test.txt"
}
]
}
可以添加自定义命令,例如上面示例配置中的示例。
给定的变量将替换为给定文章的内容。没有逃逸的事情,所以要小心!
可用变量为:
- ARTICLE.Content -文章内容
- ARTICLE.Link -文章链接
- ARTICLE.Feed -提要名称
- ARTICLE.Title -文章标题
主题是高度可配置的,并包含3个示例主题。您可以以特定主题作为参数来开始。
./gorss -theme my.theme
主题使用JSON配置,下面是默认示例:
{
"feedNames": [
"#8ed2c8",
"#46aa9f",
"#2e6294",
"#3b9293"
],
"date": "#a25478",
"time": "#f96bad",
"articleBorder": "#4b7d81",
"previewBorder": "#4b7d81",
"feedBorder": "#4b7d81",
"feedBorderTitle": "#fcedd5",
"articleBorderTitle": "#fcedd5",
"previewBorderTitle": "#fcedd5",
"highlights": "#c90036",
"tableHead": "#b2b37d",
"title": "#fcedd5",
"unreadFeedName": "#FFFFFF",
"totalColumn": "#FFFFFF",
"unreadColumn": "#FFFFFF",
"previewText": "#FFFFFF",
"previewLink": "#39537e",
"statusBackground": "#4b7d81",
"statusText": "#fcedd5",
"statusKey": "#f6d270",
"statusBrackets": "#bfceab",
"feedIcon": "",
"articleIcon": "",
"previewIcon": "",
"linkMarker": "",
"unreadMarker": ""
}
更多更优质的资讯,请关注我,你的支持会鼓励我不断分享更多更好的优质文章。