Vim 文件编码

【linux】vim和vi使用 要选中内容进行剪切,先在命令模式下按 v 进入 Visual Mode,然后用 方向键 或 hjkl 选择文本,再按 d 进行剪切。要选中内容进行复制,先在命令模式下按 v 进入 Visual Mode,然后用方向键 或 hjkl 选择文本,再按 y 进行复制。与indent有关的配置,会自动缩进,从window复制代码时候,会造成多行乱缩进,去掉含有indent字符串的配置。"Ny (双引号 + 粘贴板号 + y):复制到粘贴板N ,N 为粘贴板号。:set+空格+tab,可以看到有哪些set命令可用。 阅读详情

从Linux往 windows拷贝文件或者从windows往Linux拷贝文件,有时会出现中文文件名乱码的情况,出现这种问题的原因是因为,windows的文件名中文编码默认为GBK,而Linux中默认文件名编码为UTF8,由于编码不一致,所以导致了文件名乱码的问题,解决这个问题需要对文件名进行转码。

在Linux中专门提供了一种工具convmv进行文件名编码的转换,可以将文件名从GBK转换成UTF-8编码,或者从UTF-8转换到GBK。

首先看一下你的系统上是否安装了convmv,如果没安装的话用:
yum -y install convmv
安装。

下面看一下convmv的具体用法:

convmv -f 源编码 -t 新编码 [选项] 文件名

常用参数:
-r 递归处理子文件夹
--notest 真正进行操作,请注意在默认情况下是不对文件进行真实操作的,而只是试验。
--list 显示所有支持的编码
--unescap 可以做一下转义,比如把%20变成空格
比如我们有一个utf8编码的文件名,转换成GBK编码,命令如下:

convmv -f UTF-8 -t GBK --notest utf8编码的文件名

这样转换以后"utf8编码的文件名"会被转换成GBK编码(只是文件名编码的转换,文件内容不会发生变化)

vim 编码方式的设置


和所有的流行文本编辑器一样,Vim 可以很好的编辑各种字符编码的文件,这当然包括UCS-2、UTF-8 等流行的 Unicode 编码方式。然而不幸的是,和很多来自 Linux 世界的软件一样,这需要你自己动手设置。 

Vim 有四个跟字符编码方式有关的选项,encoding、fileencoding、fileencodings、termencoding (这些选项可能的取值请参考 Vim 在线帮助 :help encoding-names),它们的意义如下: 

* encoding: Vim 内部使用的字符编码方式,包括 Vim 的 buffer (缓冲区)、菜单文本、消息文本等。默认是根据你的locale选择.用户手册上建议只在 .vimrc 中改变它的值,事实上似乎也只有在.vimrc 中改变它的值才有意义。你可以用另外一种编码来编辑和保存文件,如你的vim的encoding为utf-8,所编辑的文件采用cp936编码,vim会自动将读入的文件转成utf-8(vim的能读懂的方式),而当你写入文件时,又会自动转回成cp936(文件的保存编码). 

* fileencoding: Vim 中当前编辑的文件的字符编码方式,Vim 保存文件时也会将文件保存为这种字符编码方式 (不管是否新文件都如此)。 

* fileencodings: Vim自动探测fileencoding的顺序列表, 启动时会按照它所列出的字符编码方式逐一探测即将打开的文件的字符编码方式,并且将 fileencoding 设置为最终探测到的字符编码方式。因此最好将Unicode 编码方式放到这个列表的最前面,将拉丁语系编码方式 latin1 放到最后面。 

* termencoding: Vim 所工作的终端 (或者 Windows 的 Console 窗口) 的字符编码方式。如果vim所在的term与vim编码相同,则无需设置。如其不然,你可以用vim的termencoding选项将自动转换成term的编码.这个选项在 Windows 下对我们常用的 GUI 模式的 gVim 无效,而对 Console 模式的Vim 而言就是 Windows 控制台的代码页,并且通常我们不需要改变它。 

好了,解释完了这一堆容易让新手犯糊涂的参数,我们来看看 Vim 的多字符编码方式支持是如何工作的。 

1. Vim 启动,根据 .vimrc 中设置的 encoding 的值来设置 buffer、菜单文本、消息文的字符编码方式。 

2. 读取需要编辑的文件,根据 fileencodings 中列出的字符编码方式逐一探测该文件编码方式。并设置 fileencoding 为探测到的,看起来是正确的 (注1) 字符编码方式。 

3. 对比 fileencoding 和 encoding 的值,若不同则调用 iconv 将文件内容转换为encoding 所描述的字符编码方式,并且把转换后的内容放到为此文件开辟的 buffer 里,此时我们就可以开始编辑这个文件了。注意,完成这一步动作需要调用外部的 iconv.dll(注2),你需要保证这个文件存在于 $VIMRUNTIME 或者其他列在 PATH 环境变量中的目录里。 

4. 编辑完成后保存文件时,再次对比 fileencoding 和 encoding 的值。若不同,再次调用 iconv 将即将保存的 buffer 中的文本转换为 fileencoding 所描述的字符编码方式,并保存到指定的文件中。同样,这需要调用 iconv.dll由于 Unicode 能够包含几乎所有的语言的字符,而且 Unicode 的 UTF-8 编码方式又是非常具有性价比的编码方式 (空间消耗比 UCS-2 小),因此建议 encoding 的值设置为utf-8。这么做的另一个理由是 encoding 设置为 utf-8 时,Vim 自动探测文件的编码方式会更准确 (或许这个理由才是主要的 ;)。我们在中文 Windows 里编辑的文件,为了兼顾与其他软件的兼容性,文件编码还是设置为 GB2312/GBK 比较合适,因此 fileencoding 建议设置为 chinese (chinese 是个别名,在 Unix 里表示 gb2312,在 Windows 里表示cp936,也就是 GBK 的代码页)。

ARM Cortex平台NEON指令集优化实战指南 本文为ARM Cortex平台开发者提供了一份全面的NEON指令集优化实战指南。文章从NEON的SIMD架构原理讲起,详细介绍了开发环境搭建、NEON内联函数与自动向量化两种核心编程方法、关键数据类型与指令,并通过图像饱和运算、矩阵乘法等实战案例,深入解析了性能调优技巧与常见避坑指南,旨在帮助开发者充分释放ARM处理器的并行计算潜力。 阅读详情

相关推荐

一体化伺服电机与施耐德PLC TM241CEC24T在Canopen协议下的应用

一.硬件组成 软件组成:施耐德SoMachineV4.3二.○1.打开SoMachineV4.3,点击“新建项目”○2.点击“空白项目”○3.项目命名○4.点击“创建项目” 三. 点击“Logic Builder” 四. ○1.右击项目”PMM_CANOPEN_ST”添加设备○2.点击”LogicController”选择PLC型号TM241CEC24T/U○3.点击“添加设备” 五. ○1.右击CAN_1,添加设备○2.选择“CANopen Perfomance”○3.点击“添加设备”

m0_46512607的博客 2520

vim 编码方式的设置

  和所有的流行文本编辑器一样,Vim 可以很好的编辑各种字符编码的文件,这当然包括UCS-2、UTF-8 等流行的 Unicode 编码方式。然而不幸的是,和很多来自 Linux 世界的软件一样,这需要你自己动手设置。Vim 有四个跟字符编码方式有关的选项,encoding、fileencoding、fileencodings、termencoding (这些

billhu专栏 804

【小贪】万字长文介绍因果推断和增益模型

本文首先从一个实例出发阐述了因果性不等于相关性,进而引出因果推断和增益模型。然后简单介绍了因果推断的基础内容,并介绍了主要的三类增益模型:元学习、增益直接建模、表示学习,每一类模型都简要介绍了其经典模型。之后介绍了增益模型的评价指标,包括uplift bins、uplift curve和qini曲线。增益模型实际上是一大类模型框架,本质上可以用传统响应模型或其他机器学习模型嵌入增益模型的框架,但是预测结果并不是一个概率,模型评价方式也有变化。训练样本收集增益模型建模强依赖于ab实验,数据要求很高。

打瞌睡_的博客 2506

vim中的encoding、fileencoding、fileencodings如何设置

encoding: Vim 内部使用的字符编码方式,包括 Vim 的 buffer (缓冲区)、菜单文本、消息文本等。用户手册上建议只在 .vimrc 中改变它的值,事实上似乎也只有在 .vimrc 中改变它的值才有意义。 fileencoding: Vim 中当前编辑的文件的字符编码方式,Vim 保存文件时也会将文件保存为这种字符编码方式 (不管是否新文件都如此)。 fileencoding

天天water的专栏 1万+

Ubuntu单系统安装全攻略:从删除Windows到UEFI引导设置(避坑指南)

本文提供Ubuntu单系统安装的完整指南,涵盖从安全删除Windows系统到UEFI引导设置的详细步骤。通过专业工具准备、分区方案设计、引导加载器配置等关键环节,帮助用户避免常见安装问题,实现纯净高效的Ubuntu单系统环境。特别强调UEFI引导的深度配置与安装后的性能优化,适合希望彻底转向Linux的用户。

weixin_29210727的博客 409

用V E S C 6-M K V I 第六代调速控制器给VESC电调刷固件

文章摘要:本文介绍了一款先进的电机控制器,具备多项创新技术。核心亮点包括三相电流/电压检测、四象限无缝运行、多模式兼容等先进电机控制技术,以及智能感知与安全保护、高效能电源管理、多样化连接与扩展功能。此外,该控制器支持实时数据监测与用户交互,具备开源生态和工业级可靠性,适用于电动载具、机器人及工业领域。用户需注意散热要求和兼容性提示,可通过VESC-Tool软件进行灵活配置。产品可在常竹科技淘宝店购买,并加入技术交流群获取支持。

2403_89422757的博客 1364

Vim 编码问题详解

vim 中有 4 个与编码相关的配置,分别是 `encoding`、`termencoding`、`fileencoding` 和 `fileencodings`。在实际使用中任何一个配置有问题都可能会导致乱码,因此我们应该清楚每个配置的含义。

Gldwolf的博客 2287

OpenRA引擎实战:如何从零开始搭建一个经典RTS游戏模组(附资源包)

本文详细介绍了如何利用开源游戏引擎OpenRA从零开始搭建经典RTS游戏模组。内容涵盖开发环境配置、资源管线处理、YAML规则定义、地图编辑与Lua脚本编写等全流程实战指南,并提供了资源包,帮助开发者和爱好者快速创建属于自己的即时战略游戏世界。

silver的专栏 904

VIM 文件编码识别与乱码处理

From: http://edyfox.codecarver.org/html/vim_fileencodings_detection.html 在 Vim 中,有四个与编码有关的选项,它们是:fileencodings、fileencoding、encoding 和 termencoding。在实际使用中,任何一个选项出现错误,都会导致出现乱码。因此,每一个 Vim 用户都应该明确这四个

JoeBlackZQQ的专栏 1128

CrackerXI+脱壳实战:解决iOS应用逆向中的加密文件问题

本文详细介绍了如何使用CrackerXI+工具对iOS应用进行脱壳,解决App Store应用因FairPlay DRM加密而无法进行静态分析的难题。通过图形化界面一键操作,CrackerXI+能高效获取解密后的可执行文件,为逆向工程奠定基础。文章涵盖工具选型、实战步骤及常见问题排查,是iOS逆向入门与进阶的实用指南。

seed的博客 258

华硕ROG幻16笔记本电脑模式切换管理工具完美替代华硕奥创中心管理工具

参考文档1这个工具可以完美替代华硕奥创中心工具,可以定制化不同模式下的CPU、GPU、风扇转速、电池计划等。是由华硕开发人员开发的一个纯绿色的系统管理工具。直接展示启动后的工具界面效果图:这个工具也可以一键式停止正在运行的华硕ASUS服务,减少不必要的资源消耗。

追梦&天空的博客 1万+

在Vim中查看文件编码

:set fileencoding 即可显示文件编码格式。 如果你只是想查看其它编码格式的文件或者想解决 用Vim查看文件乱码的问题,那么在 ~/.vimrc 文件中添加以下内容: set encoding=utf-8 fileencodings=utf-8 这样,就可以让vim自动识别文件编码(可以自动识别UTF-8或 者GBK编码的文件),其实就是依照fileencodings提供的编码列...

极客on之路 4701

迪文屏【0】——从零搭建工程:图片显示、文本变量配置与串口数据交互实战

本文以迪文屏T5L系列为例,详细介绍了从零搭建HMI工程的完整流程。内容涵盖硬件软件准备、DGUS工程创建、背景图片显示、文本变量配置,并重点演示了如何通过串口指令实时修改屏幕数据变量,实现动态交互。旨在帮助开发者快速掌握迪文屏开发的核心步骤与数据交互方法。

alpha的博客 349

vim查看文件编码/转换文件编码

一、查看编码 vim打开文件,进入命令模式 :set fileencoding 回车后显示文件编码 二、转换文件编码吗 iconv -f gbk -t utf8 file-name1 -o file-name2 -f:文件源编码 -t:目标目标编码 file-name1:待转换文件名 -o:指定转换后的内容保存到的文件 file-name2:转换后保存的新文件名 eg:iconv -f gb...

tterminator的专栏 1万+

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

在Vim中查看文件编码和文件编码转换

在Vim中查看文件编码和文件编码转换 风亡小窝关注 0.22016.09.26 22:43*字数 244阅读 5663评论 0喜欢 2 在Vim中查看文件编码 :set fileencoding即可显示文件编码格式。 如果你只是想查看其它编码格式的文件或者想解决 用Vim查看文件乱码的问题,那么在~/.vimrc文件中添加以下内容...

weixin_30367543的博客 320

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

vim中查询修改文件编码格式

vim中查询修改文件编码格式 set fileencoding 查看现在文本的编码 :set fenc=编码 转换当前文本的编码为指定的编码 :set enc=编码 以指定的编码显示文本,但不保存到文件中。 这里的“编码”常见为gbk utf-8 big5 cp936 :set ff? 查看当前文本的模式类型,一般为dos,unix :s

finding的专栏 1万+

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

vim查看文件编码

vim aa.txt 然后在命令模式下 : set fileencoding  就可以看到文件的编码了 结果:  fileencoding=cp936

wusecaiyun的专栏 1454

学习笔记整理——vim,vim文件编码,vim配置文件

vim 命令详解,常用模式介绍,以及配置文件相关配置选项。

热心市民王先生 945

Vim查看和设置文件编码

1、查看文件编码 首先用vim + 文件名 打开某一文件; 使用命令 :set fileencoding 即可显示文件的编码 2、以指定的编码打开某文件 vim file.txt -c "e ++enc=GB18030" 3、文件编码转换 在vim中进行文件编码转换,比如将文件编码转换为utf-8的格式 :set fileencoding=utf-8 查看文件格式 :set fileformat? 设置文件格式为 unix :set fileformat=unix ...

weixin_42203004的博客 5660

vim 文件编码

如果你需要在Linux中操作windows下的文 件,那么你可能会经常遇到文件编码转换的问题。Windows中默认的文件格式是GBK(gb2312),而Linux一般都是UTF-8。下面介绍一 下,在Linux中如何查看文件的编码及如何进行对文件进行编码转换。 查看文件编码 在Linux中查看文件编码可以通 过以下几种方式: 1.在Vim中可以直接查看文件编码 :set filee

swust_long的专栏 797

vim 用指定编码保存文件

本文主要讲解下,让Vim能正确显示和保存各种编码文件的一些常用方法。 Vim编码配置里面有3个选项,分别是encoding 、fileencodings、fileencoding 简写分别对应为enc、fencs、fenc。 encoding(enc): 此项目配置的是vim的默认显示编码,如果你打开的文件编码与该属性配置的编码不同,那么Vim会将编码自动转换到这种编码然后再显示,

nciaebupt 1057

linux vim 修改文件编码,Vim中文件编码处理与重新打开乱码文件详解

前言Vim 中有两个与编码有关的变量,如果理解了基本就不会再为编码问题头疼了。encoding :Vim 内部编码,例如 buffer、寄存器、文本等。这个值一般用户不要设置,另外打开 Vim 之后再设置这个值也是没有意义的。大家可以将这个值看作是 Vim 程序自己的变量,如果在工作中遇到文件的编码问题,和 encoding 这个变量是万万没有关系的。fileencoding :顾名思义了,...

weixin_29664739的博客 612

vim打开gbk编码的文件

let &termencoding=&encoding set fileencodings=utf-8,gb18030,gbk,gb2312,big5把以上拷贝到~/.vimrc中

Lance的博客 3311

VIM用指定编码保存文件

本文主要讲解下,让Vim能正确显示和保存各种编码文件的一些常用方法。 Vim编码配置里面有3个选项,分别是encoding 、fileencodings、fileencoding 简写分别对应为enc、fencs、fenc。 encoding(enc): 此项目配置的是vim的默认显示编码,如果你打开的文件编码与该属性配置的编码不同,那么Vim会将编码自动转换到这种编码然后再显示,

故纸堆 876

vim 设置文件编码格式

在Vim中直接进行转换文件编码,比如将一个文件转换成utf-8格式 在打开的文件中输入:set fileencoding=utf-8 参考

濯君 3191
上一篇: 硬盘物理坏道处理方法
下一篇: 《 Unix环境高级编程 》1~5章笔记
juagle
博客等级 码龄16年 9粉丝 14原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值