Newsboat – 基於終端的 RSS/Atom Feed 閱讀器

RSS 是一種用 XML 定義的數據交換格式。 您可以通過以這種格式嵌入數據來交付數據,並且您可以以這種格式從多個來源收集數據。 我們談論的是 RSS 提要,甚至是原子提要。 它允許我們有條不紊地分類和查閱我們的信息來源,而不會遺漏。 一些 RSS 提要閱讀器以服務或應用程序的形式出現。 在本文中,我們將討論 newsboat,它是一種現代且更新的 RSS/Atom 提要閱讀器,用於 Linux 系統上的文本控制台。 Newsboat 的好處在於它的積極維護。 早些時候我們展示了 Newsroom,這是一個從命令行讀取新聞的工具。

1) 下載新聞船

你可以從 官方網站 或者您可以從 GitHub 官方頁面 如下

# git clone git://github.com/newsboat/newsboat.git

2) 安裝過程

本文將向您展示如何在 Ubuntu 16.04 上安裝 newsboat

安裝依賴項

我們首先需要安裝依賴項。 所以我們之前會更新緩存:

# apt update
# apt install libncursesw5-dev ncurses-term debhelper libjson0 libjson0-dev libxml2-dev libstfl-dev libsqlite3-dev perl pkg-config libcurl4-gnutls-dev librtmp-dev libjson-c-dev asciidoc libxml2-utils xsltproc docbook-xml docbook-xsl bc

您應該需要下載 STFL 依賴項才能安裝它

# wget https://www.clifford.at/stfl/stfl-0.24.tar.gz

現在你需要解壓縮它

# tar xzvf stfl-0.24.tar.gz 
stfl-0.24/
stfl-0.24/stfl_compat.h
stfl-0.24/Makefile
stfl-0.24/binding.c
stfl-0.24/stfl_internals.h
stfl-0.24/README

現在你可以進入文件夾

# cd stfl-0.24/

然後編譯stfl

# make
Makefile:90: Makefile.deps: No such file or directory
gcc -pthread -I. -MM *.c > Makefile.deps_new
gcc -pthread -I. -MM widgets/*.c | sed 's,^wt_[^ ]*.o: ,widgets/&,' >> Makefile.deps_new
mv -f Makefile.deps_new Makefile.deps
gcc -pthread -I. -Wall -Os -ggdb -D_GNU_SOURCE -fPIC -c -o public.o public.c
...............
...............
gcc -pthread -I. -Wall -Os -ggdb -D_GNU_SOURCE -fPIC -c -o example.o example.c
gcc -pthread example.o libstfl.a -lncursesw -o example

現在你可以安裝 stfl

# make install
sed 's,@VERSION@,0.24,g' < stfl.pc.in | sed 's,@PREFIX@,/usr/local,g' > stfl.pc
mkdir -p //usr/local/lib/pkgconfig
mkdir -p //usr/local/include
install -m 644 libstfl.a //usr/local/lib
install -m 644 stfl.h //usr/local/include/
install -m 644 stfl.pc //usr/local/lib/pkgconfig/
install -m 644 libstfl.so.0.24 //usr/local/lib
ln -fs libstfl.so.0.24 //usr/local/lib/libstfl.so

安裝新聞船

現在你需要安裝到newsboat文件夾

# cd newsboat

你現在可以編譯它

# make
Makefile:30: config.mk: No such file or directory
Checking for package sqlite3... found
Checking for package libcurl... found
Checking for package libxml-2.0... found
Checking for package stfl... found
Checking for package json... found
Checking for package json-c... found
Checking for package ncursesw... found

然後安裝

# make install
mkdir -p /usr/local/bin
install newsboat /usr/local/bin
mkdir -p /usr/local/share/man/man1
install doc/newsboat.1 /usr/local/share/man/man1 || true
mkdir -p /usr/local/bin
install podboat /usr/local/bin

3)用newboat閱讀RSS

您可以從查看如何使用 newsboat 命令開始

# newsboat --help
newsboat r2.10.1-110-g7f11
usage: newsboat [-i |-e] [-u ] [-c ] [-x  ...] [-h]
	-e, --export-to-opml		export OPML feed to stdout
	-r, --refresh-on-start		refresh feeds on start
	-i, --import-from-opml=	import OPML file
	-u, --url-file=	read RSS feed URLs from 
	-c, --cache-file=	use  as cache file
	-C, --config-file=	read configuration from 
	-X, --vacuum			compact the cache
	-x, --execute=...	execute list of commands
	-q, --quiet			quiet startup
	-v, --version			get version information
	-l, --log-level=	write a log with a certain loglevel (valid values: 1 to 6)
	-d, --log-file=	use  as output log file
	-E, --export-to-file=	export list of read articles to 
	-I, --import-from-file=	import list of read articles from 
	-h, --help			this help

newsboat 命令接受一個文件作為參數,您在該文件中保存了不同站點的 RSS 提要。 為了 example,我們將使用我們網站的 rss-feed 創建一個文件。 現在首先打開站點並單擊 rss-feed 圖標

在新頁面,複製 rss-feed 鏈接

然後將鏈接保存到系統上的文件中

# vim rss-sites
https://linoxide.com/feed/

現在,您可以使用該文件啟動 newsboat,以通過終端關注您喜愛的站點上的新主題。 默認情況下,newsboat 會提供有關 10 個較新主題的信息

$ newsboat -u rss-sites

您有要使用的命令。 要打開只需按 Enter. 您可以使用以下命令重新加載頁面 r 命令

為了 example,我會選擇第二個主題

您可以通過按直接訪問該文章 1 或者您可以按 2

現在你知道如何基本上使用newsboat了。 這是一個可以進一步發展的新項目。 它提供了直接在您的終端上或通過網絡瀏覽器打開更新主題的可能性。