zoukankan      html  css  js  c++  java
  • vim 特殊用法用法

    启动时间分布

    vim --startuptime vim.log
    

    执行当前vim脚本的代码

    使用@命令,@命令用于执行寄存器中的vim命令,把当前代码copy到寄存器 {0-9a-z".=*+},再使用@{0-9a-z".=*+} 执行寄存器的内容。

    删除行尾的^M:%s/ //g

    重复Ex命令

    . Repeat last change, with count replaced with [count].
    @: Repeat last command-line [count] times

    列编辑模式

    删除列
    1.光标定位到要操作的地方。
    2.CTRL+v 进入“可视 块”模式,选取这一列操作多少行。
    3.d 删除。

    插入列
    插入操作的话知识稍有区别。例如我们在每一行前都插入"() ":
    1.光标定位到要操作的地方。
    2.CTRL+v 进入“可视 块”模式,选取这一列操作多少行。
    3.SHIFT+i(I) 输入要插入的内容。
    4.ESC 按两次,会在每行的选定的区域出现插入的内容。

    格式化json 文件

    %!python -m json.tool

    在wq保存时发现权限不足

    这时候输入以下命令解决,(w 后面有空格)
    w !sudo tee %

    命令解析:
    w !{cmd} 指示 保存时执行额外命令;
    tee 用于将输入定位到文件或管道,%指当前管道。

    vim的next 命令

    vim的grep

    :grep xxx -r dir
    然后输入

    :copen
    就能看到结果了,切换到 quickfix list,选择要查看的指定文件,然后回车即可

    vim 查找相同的两行,以及删除重复行

    要查找相同的两行,先将内容排序,然后查找前一行等于后一行者

    :sort

    /^(.+)$ 1

    删除重复行(先排一下序):

    :sort
    :g/^(.+)$ 1/d

    用VIM设置UTF-8编码的BOM标记

    1. 去掉BOM标记:

    :set nobomb

    1. 加上BOM标记:

    :set bomb

    1. 查询当前UTF-8编码的文件是否有BOM标记:

    :set bomb?

    1. 更高级一点的:

    :%!xxd "以16进制模式打开文件
    :%!xxd -r "将以16进制格式打开的文件返回文本模式编辑

    所以,先用第一个命令将文件以16进制打开,删除文件开头的EF BB BF,然后再用第二个命令返回文本模式。

    解决linux下vim乱码的情况:(修改vimrc的内容)

    全局的情况下:即所有用户都能用这个配置

    文件地址:/etc/vimrc

    在文件中添加:

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

    命令模式下粘贴寄存器内容

    vim中,复制一些内容就是将内容放到寄存器里。
    而在命令模式下粘贴寄存器的内容方法是CTRL-R加寄存器的名字。

    复制之后的内容一般在寄存器"中。

    举例说明:

    比如visual模式下复制了内容:aaabbb。
    然后希望替换这些内容,于是输入命令:%s/
    这个时候使用Ctrl-R在按",那么复制的内容就会出现在命令行中。

    shell脚本执行错误 $' ':command not found

    存现这种错误是因为 编写的 shell脚本是在win下编写的,每行结尾是 的Unix 结果行是 所以在Linux下运行脚本 会任务 是一个字符,所以运行错误,需要把文件转换下

    方法一、

    sed -i 's/ //' 脚本名

    方法二、

    yum -y install dos2unix

    dos2unix 脚本名

  • 相关阅读:
    爬虫笔记(四)------关于BeautifulSoup4解析器与编码
    sublime_text_2 ubuntu下无法输入中文 解决方法
    PHP 随手记
    PHP与apache环境配置
    5分钟学会如何创建spring boot项目
    Java 解压zip压缩包
    利用JavaScript来实现用动态检验密码强度
    金融行业是如何丢失1分钱的
    Java多线程的三种实现方式
    教你如何快速定制 SpringBoot banner
  • 原文地址:https://www.cnblogs.com/ims-/p/10842032.html
Copyright © 2011-2022 走看看