跳转至内容

ELinks

来自 ArchWiki
(重定向自 Elinks)

ELinks 是一款先进、成熟且功能丰富的文本模式 Web (HTTP/FTP/...) 浏览器。ELinks 可以渲染框架和表格,高度可定制,并且可以通过 Lua 或 Guile 脚本进行扩展。它具有标签页和一些 CSS 支持。

安装

安装 elinks 软件包。

用法

请参阅 elinks(1)

使用文本浏览器浏览网页与图形浏览器大致相同,只是没有“干扰”。启动 elinks 后,您可以按 g 并输入您想要请求的网页。然后,您可以使用箭头键逐行导航页面,按空格键逐页导航,或按 jk 键按链接导航。

提示 要保留原始终端会话,elinks 可以在独立的 虚拟控制台(使用 Alt+箭头键 切换)或使用 终端复用器(如 tmux)中运行。

配置

ELinks 提供了两个菜单,分别用于自定义选项和按键绑定,都可以通过 ELinks 访问。

建议使用这些工具,而不是手动编辑配置文件(这些文件位于 ~/.elinks)。这样做既容易又安全。

默认情况下,o 键打开选项管理器,k 键打开按键绑定管理器。

技巧与提示

JavaScript (sort of) support

注意 需要在终端浏览器中使用 JavaScript 支持的用户,请考虑使用 browshAUR,而不是遵循此提示。

ELinks 有一个名为 ECMAScript 的实验性功能,这是一种 JavaScript 的形式。目前,官方仓库的软件包没有启用此功能,但对 PKGBUILD 进行简单修改即可提供。

  1. js128 和提供 xxd 功能的软件(例如 vim)添加到 depends 数组中。
  2. 在 package 函数的 arch-meson 部分添加以下内容: -D spidermonkey=true \ #

构建完成后,必须在 elinks 中启用它,方法是导航到选项部分,或直接修改 ~/.config/elinks/elinks.conf 文件,使其包含: set ecmascript.enable = 1

ECMAScript 并不完美,可能无法提供完整的 JavaScript 功能。

定义 URL 处理程序

ELinks 能够使用外部程序执行各种任务,

通过选项菜单定义 URL 处理程序起初可能会有点令人困惑,但一旦掌握了,就没什么问题了。

要做到这一点,请进入选项管理器并导航到 MIME。所有子菜单都有 Info 页面可以帮助您。

这是少数几种可以直接编辑配置文件可能更简单的情况之一。

例如,要让 ELinks 在您单击 JPEG 文件时自动启动图像查看器,您可以将以下内容添加到您的 ~/.elinks/elinks.conf 文件中,

~/.elinks/elinks.conf
set mime.extension.jpg="image/jpeg"
set mime.extension.jpeg="image/jpeg"
set mime.extension.png="image/png"
set mime.extension.gif="image/gif"
set mime.extension.bmp="image/bmp"

set mime.handler.image_viewer.unix.ask = 1
set mime.handler.image_viewer.unix-xwin.ask = 0

set mime.handler.image_viewer.unix.block = 1
set mime.handler.image_viewer.unix-xwin.block = 0

set mime.handler.image_viewer.unix.program = "pictureviewer %"
set mime.handler.image_viewer.unix-xwin.program = "pictureviewer %"

set mime.type.image.jpg = "image_viewer"
set mime.type.image.jpeg = "image_viewer"
set mime.type.image.png = "image_viewer"
set mime.type.image.gif = "image_viewer"
set mime.type.image.bmp = "image_viewer"

Tor 使用

ELinks 不支持 直接使用 SOCKS 代理。替代方法是,通过 torsocks elinks 调用 ELinks,或者 安装 privoxy 软件包以转发到 Tor 的 SOCKS 代理,首先将以下行添加到您的 /etc/privoxy/config 文件中

forward-socks5 / localhost:9050 .

重启 privoxy.service,然后将以下行添加到您的 ~/.elinks/elinks.conf 文件中

set protocol.http.proxy.host = "127.0.0.1:8118"
set protocol.https.proxy.host = "127.0.0.1:8118"
注意 以上假设 Tor 使用端口 9050,并且 privoxy 监听端口 8118

将 URL 传递给外部命令

您可以定义 ELinks 将当前 URL 传递给的命令。

为此,请进入选项菜单,导航到 Document,然后到 URI-passing。然后按 a 添加新的命令名称。然后导航到新的命令名称并按 e 进行编辑。输入命令名称,按 Enter 并保存。

假设命令 "tab-external-command" 映射到 KEY,每当您按下 KEY 时,就会出现一个包含您命令的菜单。选择您想要的命令,ELinks 就会将当前 URL 传递给该命令。

注意 Elinks 允许您定义自己的导航此菜单的映射。
echo -n %c | xclip -i

对于严格的 YouTube 链接,mpv 内置支持。只需使用以下方法

mpv %c

对于更通用的方法,可以处理许多“tube”网站,您需要 youtube-dlAUR。然后添加以下命令,

youtube-dl -o - %c | mplayer -

故障排除

默认情况下,每次启动 ELinks 时,您都会连接到现有的实例。因此,如果该实例冻结,所有当前和未来的实例都会冻结。

您可以通过如下方式启动 ELinks 来防止其连接到现有实例

$ elinks -no-connect

如果这种情况经常发生,您可能需要考虑将其设为默认启动,方法是在您的 shell 中创建别名

alias elinks="elinks -no-connect"

参见