彻底解决基于Debian发行系统的vim鼠标模式(可视模式)问题

您所在的位置:网站首页 linux鼠标不能用 彻底解决基于Debian发行系统的vim鼠标模式(可视模式)问题

彻底解决基于Debian发行系统的vim鼠标模式(可视模式)问题

2024-05-24 23:48| 来源: 网络整理| 查看: 265

目录 一、概述问题来源问题分析处理准备 二、处理解决临时解决永久解决1.针对当前用户2.针对全局用户 三、其他备注

一、概述 问题来源

同时用过基于RedHat发行版系统(如CentOS)和基于Debian发行版系统(如Ubuntu)的人,会发现两者在vim的操作上有着很大不同:

默认情况下,基于Debian发行版系统,在使用vim编辑一个文件,操作鼠标时会显示为可视模式,无法使用鼠标正常操作,这是因为基于Debian发行版的系统启用了vim的鼠标模式的原因;而基于RedHat发行版系统,则不会出现这种情况,使用vim编辑文件时,也可以正常使用鼠标来操作,例如选中文本后右键等操作。 问题分析

经过我长时间的谷歌查询,并结合Vim官网说明、vim - Debian官网以及Running VIM 8 at RHEL - RedHat官网的相关资料,分析得出:

原来是vim默认的配置文件便是开启了鼠标模式的配置!而基于RedHat发行版的系统则针对vim定制了一套属于自己的默认/etc/vimrc配置文件,该配置文件完全抛弃了Vim默认配置文件,采用了RedHat自己的一套配置;但基于Debian发行版的系统,则依然采用Vim的官方默认配置文件,并通过/etc/vim/vimrc来调用该配置文件。 处理准备

为了解决问题,我们需要知道以下信息:

:echo $VIMRUNTIME:在vim、vim -v或vim filename界面下,输入此命令语句可以查询Vim运行路径(配置路径)所在的绝对路径(注意前面有英文冒号),查询出来的路径就是下面所用到的路径。 /usr/share/vim/vim**/debian.vim:此文件定义vim软件包的所有选项值,且每次vim升级后,该文件都会被升级后的新文件覆盖;/usr/share/vim/vim**/defaults.vim:如果/home/username/目录下没有.vimrc配置文件的话,那么vim将默认调用加载此配置文件,该文件也是下文永久解决方案所需要修改处理的文件。 二、处理解决 临时解决

用户可以在使用vim时,在编辑界面,直接输入:set mouse=或:set mouse=""后,按Enter回车键,即可临时关闭鼠标模式。

永久解决 1.针对当前用户 #将vim官方默认配置文件放到当前用户目录下 wget --no-check-certificate https://raw.githubusercontent.com/vim/vim/master/runtime/vimrc_example.vim -O ~/.vimrc #如果出现“失败:拒绝连接”的话添加下HOST解析 sudo vim /etc/hosts #在最下面加上一句:199.232.68.133 raw.githubusercontent.com后再执行: wget --no-check-certificate https://raw.githubusercontent.com/vim/vim/master/runtime/vimrc_example.vim -O ~/.vimrc #此时可以为该vim配置文件添加一些常用的配置,如下示例: echo >> ~/.vimrc #设置语法高亮 echo 'syntax on' >> ~/.vimrc #开启行号显示【简写方式】或下面的【标准方式】也可以 echo 'set nu' >> ~/.vimrc #开启行号显示【标准方式】或上面的【简写方式】也可以 echo 'set number' >> ~/.vimrc #开启拼写检查 echo 'set spell' >> ~/.vimrc #重点:关闭鼠标模式 echo 'set mouse=""' >> ~/.vimrc 2.针对全局用户 首先查询出当前vim的运行路径(配置路径)位置:执行vim然后输入:echo $VIMRUNTIME编辑上一步查询出的路径下的默认配置文件:sudo vim $VIMRUNTIME/defaults.vim找到包含if has('mouse')这句,将下面的set mouse=a修改为set mouse="",可能下面还有一句set mouse=nvi,这句可改可不用改【个人建议将原本的内容前面加上"注释掉即可】保存文件完成修改::wq无需重启,直接找一个文件编辑测试一下看看:vim ~/.vimrc 三、其他备注

由于基于Debian发行版的系统,绝大部分都默认非root用户,所以在执行以上命令时,需要添加sudo命令; 我在写以上操作时,已经默认加上了sudo命令,以防止非root用户在操作时出现无权限的问题。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3