文件编码相关

有权限但是没法保存问题

E513: write error, conversion failed (make 'fenc' empty to override)"
原因:新建的文件编码有问题。
解决办法:
先查看一下当前的编码:
:set fenc?
如果不是utf-8的编码格式,用下面的命令改成utf-8的格式
:set fileencoding=utf-8

针对使用vim打开某个页面出现乱码的遭遇,下面将介绍一下linux下字符集编码问题:

将vim配置自动识别多个编码:

在~目录下打开.vimrc文件,在文件中增加如下配置:

      set encoding=utf-8 fileencodings=ucs-bom,utf-8,cp936,gbk,gb18030,gb2312

该配置的作用是,让vim编辑器默认使用utf-8编码打开文件,如果是乱码,则vim会自动使用fileencodings中使用的编码。

在vim中查看某个文件的字体编码『:set fileencoding』

将文件编码格式转换命令:iconv

输入/输出格式规范:

-f, --from-code=名称 原始文本编码      
-t, --to-code=名称 输出编码   信息:      
-l, --list 列举所有已知的字符集

输出控制:

-c 从输出中忽略无效的字符     
-o, --output=FILE 输出文件     
-s, --silent 关闭警告     
--verbose 打印进度信息样例:iconv -f utf-8 -t gb2312 /server_test/reports/software_.txt > /server_test/reports/software_asserts.txt

注意线上配置文件的字符编码一般都为cp936和gb18030

如果你的.vimrc配置中是如下配置:

set ts=4set sts=4set sw=4set expandtabset autoindentset smarttabset smartindent

那么你的vim默认就是tab键为四个空格,同时开启了自动注释。
此时,如果发现复制配置文件时,总是默认将所有行都加上『#』,可以在vim中使用如下命令:

:set fo-=r 
:set noautoindent

表示关闭自动注释,如果想重新打开自动注释,使用如下命令:

:set fo=r :set autoindent

如果想让tab键在某个文件中临时变成\t,可以使用set noexpandtab
如果想看隐藏字符,可以使用set invlist :

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Ubuntu的发音 Ubuntu,源于非洲祖鲁人和科萨人的语言,发作 oo-boon-too 的音。了解发音是有意...
    萤火虫de梦阅读 99,539评论 9 467
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,886评论 18 139
  • macvim配置 最终效果如下: 系统环境 macos10.12.4 homebrew1.2.1 python3....
    Like_eb56阅读 69,807评论 5 65
  • 安装依赖库(支持Python 3、Lua、Ruby) sudo apt-get install libncurse...
    Cyfeng阅读 2,148评论 0 2
  • 《尘》 冬天很快就走 风还停留 在上一场雪中 犹记得那时 我手起刀落 斩落自己上一世的桃花 及锋芒,涕零如雨 漫过...
    Pan一一1984阅读 170评论 0 2