有一个由 读取的不同 termcaps 全局变量的列表less;在代码中找到相关的:
tmodes("so", "se", &sc_s_in, &sc_s_out, "", "", &sp);
tmodes("us", "ue", &sc_u_in, &sc_u_out, sc_s_in, sc_s_out, &sp);
tmodes("md", "me", &sc_b_in, &sc_b_out, sc_s_in, sc_s_out, &sp);
tmodes("mb", "me", &sc_bl_in, &sc_bl_out, sc_s_in, sc_s_out, &sp);
Run Code Online (Sandbox Code Playgroud)
该tmodes函数在其前两个参数前加上前缀,LESS_TERMCAP_并使用具有该名称的 env 变量的值,如用户 jimmij 所描述:
so杰出,se退出杰出,us下划线,ue退出下划线,md粗体,me退出下划线,mb闪烁,me退出闪烁(并下划线)。您可以使用以下命令将匹配项显示为红色:
$ export LESS_TERMCAP_so=$(echo -e '\e[1;91m')
$ export LESS_TERMCAP_se=$(echo -e '\e[0m')
Run Code Online (Sandbox Code Playgroud)
有关 ANSI 转义序列(包括背景颜色、粗体等)的更多信息,请参阅此 Wikipedia 页面。
值得注意的是,less读取的变量远LESS_TERMCAP_*不止这些(例如键)。