我想在 .screenrc 中为以下代码设置一个if-else循环,以便在我的终端支持256色时运行它。否则,它不会运行。
attrcolor b ".I"
# tell screen how to set colors. AB = background, AF=foreground
termcapinfo xterm "Co#256:AB=\E[48;5;%dm:AF=\E[38;5;%dm"
termcapinfo xterm-color "Co#256:AB=\E[48;5;%dm:AF=\E[38;5;%dm"
如何在.screenrc中制作if-else循环?
答案 0 :(得分:2)
这应该已经由terminfo数据库文件设置。在我的情况下,我的默认终端是xterm。它使用8种颜色,使用
反映在vi中:设置termcap
命令检查设置为8的t_Co项目。如果我将终端改为另一种终端类型,如使用256种颜色的gnome-256color,那么vi将显示t_Co等于256.我不知道你为什么需要尝试在.vimrc文件中设置它。
答案 1 :(得分:1)
如果你有可用的bash,我相信这样的事情应该有效:
#!/bin/bash
if [ "$TERM" = "xterm-256color" ]; then
# do stuff for 256
else
if [ "$TERM" = "xterm" ]; then
# do stuff for 16
else
# do something else entirely
fi
fi
答案 2 :(得分:0)
我的伪代码尝试.screenrc
[ -e t_Co(256) ] . ColorFile
同样的英文
If 256 color support, then source ColorFile.