未应用山猫颜色

未应用山猫颜色

我有一个 lynx 配置文件~/.lynx.cfg。为了让 lynx 使用它,我在我的环境中$LYNX_CFG指向该文件。

内容:

# Default
COLOR:0:black:white
# Hyperlinks
COLOR:1:black:white
# Status Line
COLOR:2:black:white
# Emphasis
COLOR:4:black:white
# Hyperlink in em
COLOR:5:black:white
# Selected hyperlink
COLOR:6:black:black
# Search
COLOR:7:black:white

JUSTIFY:TRUE

JUSTIFY:TRUE行已正确应用,但从未应用COLOR:*

在此输入图像描述

我在 OS X Yosemity 上,在 Tmux 中,使用 Iterm2,lynx 版本是:

Lynx Version 2.8.8rel.2 (09 Mar 2014)
libwww-FM 2.14, SSL-MM 1.4.1, OpenSSL 1.0.2h, ncurses 5.7.20081102

什么可能导致这个问题?

答案1

那组特定的颜色适合“旧”风格。 Lynx 旨在支持其中一项:

  • “新”颜色样式,颜色分配给 HTML 标签类型或
  • 为链接指定颜色的“旧”样式

“新”样式配置为COLOR_STYLE设置于lynx.cfg

也称为“lss”(lynx 样式表),颜色样式文件将颜色组合分配给标签和标签组合。通常,非空值会编译为lynx,用户可以使用 -lss 命令行选项覆盖该值。配置脚本允许编译空字符串。如果lynx找不到此设置的值,它将使用以下命令模拟非颜色样式分配COLOR设置。

如果命令行“-lss”或此COLOR_STYLE给出了设置、lynx tries环境变量"LYNX_LSS""lynx_lss".如果两者均未设置,lynx则使用第一个编译值(如前所述,该值可能为空)。

启动时,lynx记住所使用的颜色样式文件的名称,并与指定的每个文件一起提供这些文件作为选项) 选项菜单。

lynx 源代码包含一个脚本oldlynx可以用来模拟旧式:

#!/bin/sh
# invoke lynx built with color-style, overriding the color options to use the
# non-color-style scheme -TD

my_cfg=${TMPDIR:-/tmp}/lynxcfg$$
trap "rm -f $my_cfg" 0 1 2 5 15

rm -f "$my_cfg"
echo "DEFAULT_COLORS:off" >>$my_cfg
if test -n "$LYNX_CFG" ; then
    echo "include:$LYNX_CFG" >>$my_cfg
fi
echo "COLOR_STYLE:" >>$my_cfg
echo "NESTED_TABLES:off" >>$my_cfg

LYNX_CFG=$my_cfg
export LYNX_CFG
unset LYNX_LSS

${LYNX_PROG-lynx} "$@"

例如,这是具有默认颜色样式的帮助页面:

在此输入图像描述

oldlynx这是使用(使用 2.8.7)的同一页面:

在此输入图像描述

虽然我刚刚注意到它不适用于 2.8.8:这里忽略了一些东西2.8.8dev.17 的更改:

* modify configuration of COLOR_STYLE value in lynx.cfg, allowing multiple
  filenames to be specified and providing those as choices in the O'ptions
  menu (Debian #404893) -TD

这使得颜色样式文件的多个值可以作为选项菜单中的选择列表使用。一个简单的解决方法是强制lynx使用空颜色样式文件,例如,

#!/bin/sh
# invoke lynx built with color-style, overriding the color options to use the
# non-color-style scheme -TD

my_cfg=${TMPDIR:-/tmp}/lynxcfg$$
my_lss=${TMPDIR:-/tmp}/lynxlss$$
trap "rm -f $my_lss $my_cfg" 0 1 2 5 15

echo >$my_lss

rm -f "$my_cfg"
echo "DEFAULT_COLORS:off" >>$my_cfg
if test -n "$LYNX_CFG" ; then
        echo "include:$LYNX_CFG" >>$my_cfg
fi
echo "COLOR_STYLE:" >>$my_cfg
echo "NESTED_TABLES:off" >>$my_cfg

LYNX_CFG=$my_cfg
export LYNX_CFG
LYNX_LSS=$my_lss
export LYNX_LSS

${LYNX_PROG-lynx} "$@"

(有些人可能会使用mktemp,但是当编写脚本时,它的话题性不如现在)。

相关内容