安装完tmux之后,按照网上大神的配置,稍微配置了下~/.tmux.conf:

# 改变快捷键前缀
unbind C-b
set -g prefix C-a # 绑定配置加载按键
bind r source-file ~/.tmux.conf \; display-message "Config reloaded.." # 设置终端类型为256色
if-shell '[ $(uname -s) = Linux ]' \
'set -g default-terminal "screen-256color"'
#set -g default-terminal "xterm" # Index starts from
set-option -g base-index
setw -g pane-base-index # make pane numbering consistent with windows # 重新绑定纵向和横向切分window快捷键。|,-,更直观地表明了切割方向
bind | split-window -h -c "#{pane_current_path}"
bind - split-window -v -c "#{pane_current_path}" # 在不同面板间切换,改为vim风格
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R # 调整面板大小
bind -r H resize-pane -L
bind -r J resize-pane -D
bind -r K resize-pane -U
bind -r L resize-pane -R

然后用tmux建立新的连接之后,发现配色与不开tmux时的vim不一致,特别是高亮变得很蛋疼:

上图是用tmux时候打开的vim,下图是正常模式下的vim。

可以看到高亮的字,变得很难看。照这种情况搜索了了很多解决方案,不求甚解的套了进去,但是情况没有变好,反而更糟糕了。不过在慢慢折腾中,发现了一个环境变量TERM可能是其中的关键。

在正常的vim下面打印TERM发现:

:echo $TERM
xterm

在tmux下的vim打印发现:

:echo $TERM
screen-256color

两边的结果不一致,检查下.tmux.conf发现如下两行配置:

# 设置终端类型为256色
if-shell '[ $(uname -s) = Linux ]' \
'set -g default-terminal "screen-256color"'

很明显,是这两行配置导致了tmux下的vim颜色表现与正常模式下的vim不一致了。

把这两行注释掉,退出tmux(c-a + r加载配置貌似不起效),重新开启tmux,发现表现一致了。

不过打印TERM变量内容发现还是不一致:

:echo $TERM
screen

但是问题得到了解决,并且知道了解决问题的关键,下次再碰到同样的问题就有应对的方法了。

tmux颜色高亮跟vim不一致的情况的更多相关文章

  1. 页面json 格式化+颜色高亮

    背景 应答为json,为了更好的展示在前端页面,需要对其格式化加颜色高亮 效果图 步骤 js中添加 function output(inp) { document.body.appendChild(d ...

  2. Linux 终端颜色高亮

    昨天在改一些东西时,不小心将root下的一些配置文件删掉了.导致启动终端后,字完全一个颜色,没有区分.在网上找到的都是 改整体颜色的.但实际上这时应该搜Linux终端高亮才能找到解决办法.在这里再列出 ...

  3. [No000018C]Vim清除上次的搜索高亮结果-Vim使用技巧(1)

    在打开文件中使用Vim搜索功能并开启高亮显示后怎么取消当前高亮显示的目标词? 最简单的方法是再使用Vim搜索一串文档中不存在的目标词来覆盖当前高亮的搜索结果. 其实,可以在Vim尾行模式下使用 :no ...

  4. ubuntu系统修改终端提示符及设置颜色高亮

    Linux终端大家想必都清楚吧,最近在使用的时候发现在进入到某个文件夹目录比较深的层次后,终端提示的绝对路径很长,这样给人的感觉很不习惯,在这里给大家介绍下如何修改终端的提示,顺便介绍下提示符的颜色: ...

  5. Mac OS终端中设置颜色高亮和自动补全

    已测试通过,原文:http://blog.csdn.net/songjinshi/article/details/8945809 一.颜色高亮显示 针对terminal采用bash模式: 编辑 ~/. ...

  6. vue 网页文字中带#的话题颜色高亮

    网页中显示文字时,带#开始和结束的文字蓝色高亮,就像微博话题一样效果如下 html <span v-html="parseComments('#吃货节#有什么好吃的')"&g ...

  7. linux环境中使用转义字符使命令行字符颜色高亮

    而通过转义序列设置终端显示属性的格式为: \033[Param {;Param;...}m 其中转义序列以 \033[ 为开头,m 为设置属性结束,中间部分的 Param 为属性值,{} 表示可以设置 ...

  8. TextView显示颜色高亮的问题

    TextView textView = (TextView) findViewById( R.id.tv ); String text = "<font color=\"#d ...

  9. kettle中源和目标表结构不一致的情况处理

    创建数据仓库的过程中,往往会遇到这样的问题,例如:源表由于业务原因新增了字段,而ETL程序中是按照之前的源表结构进行抽取的,那么如果不重新构建ETL程序,新的指标就不会流入DW,问题如下图所示 创建了 ...

随机推荐

  1. bzoj 3173 最长上升子序列

    Written with StackEdit. Description 给定一个序列,初始为空.现在我们将\(1\)到\(N\)的数字插入到序列中,每次将一个数字插入到一个特定的位置.每插入一个数字, ...

  2. request.getDispatcher().forward(request,response)和response.sendRedirect()的区别

    在进行web开发时,跳转是最常见的,今天在这里来学习下2种跳转: 第一种是request.getDispatcher().forward(request,response): 1.属于转发,也是服务器 ...

  3. spring的<array>标签错误

    1,复习了一下spring xml的配置 单个默认命名空间 我们看到,在配置文件中,beans,bean等元素我们是没有使用命名空间前缀的.重复限定一个要在命名空间中使用的元素或属性可能会非常麻烦.这 ...

  4. el表达式的坑

    为了写作业,又用回去了jstl,有几个坑重复坑了 1,导入包 <dependency> <groupId>javax.servlet</groupId> <a ...

  5. PHP MysqlI操作数据库(转)

    1连接数据库. Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter. ...

  6. JMeter使用经历

    JMeter是Apache大树下的又一个果实,是一个压力测试工具,因为使用方便又开源免费,也被用来做功能测试.项目里也是拿JMeter来做功能性的接口自动化测试.这里大概说明下怎么用. 首先还是先下载 ...

  7. STM8S103 PB4和PB5

    STM8S103的PB4和PB5只能配置成开漏输出,用作I2C通讯: PB4和PB5不能配置为推挽输出,来控制LED之类的,因为内部没有上拉电阻,IO拉高电压只有1.8V左右,要想控制LED,只能通过 ...

  8. jvm是怎样调用方法的

    jvm内部有五种调用方法的指令 invokeinterface 用以调用接口方法,在运行时搜索一个实现了这个接口方法的对象,找出适合的方法进行调用.(Invoke interface method) ...

  9. gen_server的一些心得

    gen_server并不是我原来概念中的tcp_server或者udp_server的概念,只是一个纯粹的消息服务器,另外,附上它的一些回调函数的简单说明参考地址 http://hi.baidu.co ...

  10. 在Linux 64位系统下使用hugepage

    首先,为什么要介绍/使用HugePage? 在步入正题之前,先讲一个非常普遍的数据库性能问题. 众所周知,Oracle数据库使用共享内存(SGA)来管理可以共享的一些资源;比如shared pool中 ...