精华内容
下载资源
问答
  • 2012-12-18 13:12:00
      命令行模式 (command mode/一般模式)
       任何时候,不管用户处于何种模式,只要按一下键,即可使Vi进入命令行模式;我们在shell环境(提示符为$)下输入启动Vi命令,进入编辑器时,也是处于该模式下。 
       在该模式下,用户可以输入各种合法的Vi命令,用于管理自己的文档。此时从键盘上输入的任何字符都被当做编辑命令来解释,若输入的字符是合法的Vi命令,则Vi在接受用户命令之后完成相应的动作。但需注意的是,所输入的命令并不在屏幕上显示出来。若输入的字符不是Vi的合法命令,Vi会响铃报警。
     
       文本输入模式 (input mode/编辑模式)
       在命令模式下输入插入命令i、附加命令a 、打开命令o、修改命令c、取代命令r或替换命令s都可以进入文本输入模式。在该模式下,用户输入的任何字符都被Vi当做文件内容保存起来,并将其显示在屏幕上。在文本输入过程中,若想回到命令模式下,按键即可。 

       末行模式 (last line mode/指令列命令模式)
       末行模式也称ex转义模式。 
       Vi和Ex编辑器的功能是相同的,二者主要区别是用户界面。在Vi中,命令通常是单个键,例如i、a、o等;而在Ex中,命令是以按回车键结束的正文行。Vi有一个专门的“转义”命令,可访问很多面向行的Ex命令。在命令模式下,用户按“:”键即可进入末行模式下,此时Vi会在显示窗口的最后一行(通常也是屏幕的最后一行)显示一个“:”作为末行模式的提示符,等待用户输入命令。多数文件管理命令都是在此模式下执行的(如把编辑缓冲区的内容写到文件中等)。末行命令执行完后,Vi自动回到命令模式。
    更多相关内容
  • vim打开文件的几种方式 命令 作用 vim +n filename 打开文件,并定位到第n行 vim + filename 打开文件,并定位到最后一行 vim +/pattern filename 打开文件,定位至第一次被pattern匹配到的行的行首 ...

    在这里插入图片描述

    vim打开文件的几种方式

    命令作用
    vim +n filename打开文件,并定位到第n行
    vim + filename打开文件,并定位到最后一行
    vim +/pattern filename打开文件,定位至第一次被pattern匹配到的行的行首

    按行或pattern,可以快速打开到配置文件错误的地方,或者日志中报错的地方。

    如从监控系统,或者邮件收到报错信息时,直接根据时间定位到相应的日志位置

    vim +/"2019-02-17 23:01:49.994" server.log
    

    vim的三种模式

    命令模式(command mode)

    命令模式是Vim的默认操作模式,当使用vim命令打开一个文件时,默认进入的就是命令模式。不管用户处于何种模式,只要按下Esc键就可使进入命令行模式

    编辑模式(input mode)

    只有在vim编辑模式下,才能将键盘键入的内容输入到当前打开的文件中

    尾行模式(last line mode)

    尾行模式主要用于保存文件或退出Vim,同时也可以设置编辑环境和一些编译工作,如列出行号(set nu)、寻找字符串(/target)等

    在命令模式下,用户按冒号键(:)即可进入末行模式下,此时Vi会在显示窗口的最后一行显示一个”:“作为末行模式的提示符,等待用户输入命令

    三种模式的切换如下图
    在这里插入图片描述

    命令模式下命令

    光标移动命令

    上 下 左 右

    用键盘上的方向键也可,看个人习惯,这种方式比较省时间

    命令作用
    h
    j
    k
    l

    行级移动

    命令作用
    0移动光标到当前行行首
    $移动光标到当前行行尾
    ^移动光标到当前行的第一个非空字符
    nG或者ngg移动光标到当前文件的第n行
    :n移动光标到当前文件的第n行 (同上)

    文件首尾移动

    命令作用
    gg 或 :0移动光标到当前文件的第一行
    G或 : $移动光标到当前未经的最后一行

    :和$中间没空格,markdown显示有问题,所以加了空格

    翻页

    命令作用
    Ctrl + b向前滚动一页
    Ctrl + f向后滚动一页
    Ctrl + u向前滚动半页
    Ctrl + d向后滚动半页

    文本编辑命令

    插入

    在命令模式下按以下按键可进入编辑模式,执行插入操作,具体包括:

    命令作用
    a在当前光标所在字符的后面开始插入
    A在当前光标所在行的行尾开始插入
    i在当前光标所在字符的前面 开始插入
    I在当前光标所在行的行首开始插入
    o从光标当前所在行的下一行处开始插入
    O从光标当前所在行的上一行处开始插入
    s删除当前光标所在的字符开始插入
    S删除当前光标所在的行 开始插入

    删除

    命令作用
    x删除当前光标所在的字符
    X删除当前光标所在字符的前一个字符
    dd删除/剪切光标所在的行

    复制 粘贴

    命令作用
    yw复制从光标所在位置到当前【单词结束】部分的内容
    yy复制光标所在【行】的所有字符 (包含换行符)
    p将最后一次删除或复制操作的文本内容粘贴到光标所在字符之【后】
    P将最后一个删除或复制操作的文本内容粘贴到光标当前字符之【前】

    撤销 反撤销

    命令作用
    u撤销最近的一次操作
    <Ctrl> + r恢复最近的一次操作(取消撤销)

    多次执行u 命令可以连续撤销最近的操作

    查找命令

    基本搜索

    在Vim命令模式下,输入 / 或 ? 符号就进入了搜索模式,/ 用于正向往下搜索,? 用于反向往上搜索

    命令作用
    n查找下一个
    N查找上一个

    正则表达式搜索

    为了更好的进行搜索,Vim支持正则表达式,最基本的正则表达式规则包括:

    符号含义
    ^表示一行的开头
    $表示一行的结尾
    .表示任意一个字符
    *匹配0次或n次

    如查找行首为test的行,命令模式下输入如下即可

    /^test
    

    跳转到第n行

    :n
    

    尾行模式下命令

    命令作用
    :w保存文本
    :q退出vim,没有修改过文件
    :w!强制保存,在root用户下,文件只读也可保存
    :q!强制退出,所有改动不生效
    :wq保存并退出
    :x保存并退出
    ZZ等同于:wq
    :set nu显示行号
    :set nonu不显示行号
    :set readonly设置只读

    参考

    从Vim小白到Vim superstar
    [1]https://blog.csdn.net/xlinsist/article/details/54143380
    vim入坑指南
    [2]https://juejin.im/post/5ab1275d5188255588053e70
    思否大佬
    [3]https://segmentfault.com/a/1190000002445024
    [4]https://segmentfault.com/a/1190000002447171
    vim系列教程

    Vim文本编辑命令汇总
    [5]https://vim.ink/vim-edit-command.html
    Vim光标移动命令汇总
    [6]https://vim.ink/vim-cursor.html
    Vim搜索命令使用方法和技巧
    [7]https://vim.ink/vim-search.html

    展开全文
  • VIM 自定义TabLine禁签

    2020-06-29 23:04:08
    vim的标签页的切换可以用[n]gt命令来实现,n是第几个标签,但有时需要数一下才知是第几个,有点麻烦,看了一下vim的帮助,可以自定义标签,加个序号进去。并改了一下样式(在颜色方案里改TabLine TabLineFill ...

    环境:macOS1015.3 

    vim 的标签页的切换可以用[n]gt命令来实现,n是第几个标签,但有时需要数一下才知是第几个,有点麻烦,看了一下vim的帮助,可以自定义标签,加个序号进去。 并改了一下样式(在颜色方案里改TabLine TabLineFill TabLineSel颜色),加点装饰,先看效果:

    修改方式:

    在.vimrc里添加下面 vimscript

    " 自定定义tabpage的label (参考:help tabpage)
    set tabline=%!MyTabLine()
    function MyTabLine()
        let s = ''
        for i in range(tabpagenr('$'))
            " select the highlighting
            if i + 1 == tabpagenr()
                let s .= '%#TabLineSel#'
            else
                let s .= '%#TabLine#'
            endif
    
            " set the tab page number (for mouse clicks)
            let s .= '%' . (i + 1) . 'T'
    
            " the label is made by MyTabLabel()
            let s .= '%{MyTabLabel(' . (i + 1) . ')}'
        endfor
    
        " after the last tab fill with TabLineFill and reset tab page nr
        let s .= '%#TabLineFill#%T'
    
        " right-align the label to close the current tab page
        if tabpagenr('$') > 1
            let s .= '%=%#TabLine#%999XX'
        endif
    
        return s
    endfunction
    function MyTabLabel(n)
        let buflist = tabpagebuflist(a:n)
        let winnr = tabpagewinnr(a:n)
    
        " Add '+' if one of the buffers in the tab page is modified
        let label = ''
        for bufnr in buflist
            if getbufvar(bufnr, "&modified")
                let label = '+'
                break
            endif
        endfor 
    
        "添加tabpage序号,方便ngt切换
        let bg=['☰','☱','☲','☳','☴','☵','☶','☷'][(a:n-1)%8]
        return '  🐶['.a:n.label.']'.pathshorten(bufname(buflist[winnr - 1])).' '
    endfunction
    

     

     

    参考:原创 在线vim配色加term与gui统一颜色调整python脚本

    展开全文
  • 命令行模式 (command mode/一般模式)文本输入模式 (input mode/编辑模式)末行模式 (last line mode/指令列命令模式)打开文件、保存、关闭文件(vi命令模式下使用)插入文本或行(vi命令模式下使用,执行下面命令...
  • 本来不算写 Vim 使用教程的,因为我想网上应该会有很多,然后我去搜了一下看到别人写的好丑好乱啊,于是... 跳至指定行4、Last line mode下命令简介A) 列出行号B) 跳到文件中的某一行C) 查找字符D) 保存文件E) 离开 Vim
  • vim常用指令.7z

    2020-07-22 15:07:54
    基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)。 这三种模式的作用分别是: 命令模式: 用户刚刚启动 vi/vim,便进入了命令模式。 此...
  • 主要叙述vim的三种模式(其实有好多模式,目前掌握这3种即可),分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下: 正常/普通/命令模式(Normal mode) ...
  • JuliaFormatter.vim 使用在(n)vim中格式化Julia代码的插件。 安装 使用任何插件管理器: Plug ' kdheepak/JuliaFormatter.vim ' ..." format from line 5 to line 15 inclusive : 5 , 15 JuliaFormatterFormat
  • Vim provides different shortcuts for copy, cut and paste operations. These commands are one of the most used and problematic commands because of vim command or shortcut based work style. Vim为复制,...

    Vim provides different shortcuts for copy, cut and paste operations. These commands are one of the most used and problematic commands because of vim command or shortcut based work style.

    Vim为复制,剪切和粘贴操作提供了不同的快捷方式。 由于vim命令或基于快捷方式的工作风格,这些命令是最常用和问题最多的命令之一。

    复制当前行 (Copy Current Line)

    We can copy current line with the yy command which is named yank. But the cursor should be located in the line we want to copy.

    我们可以使用名为yank的yy命令复制当前行。 但是光标应位于我们要复制的行中。

    yy
    

    复制行 (Copy Lines)

    We will again use yy command in order to copy multiple lines. But in this situation we should specify the range or line counts. We will provide the line count we want to copy between y‘s . In this example we will copy 5 lines from current cursor.

    我们将再次使用yy命令以复制多行。 但是在这种情况下,我们应该指定范围或行数。 我们将提供要在y之间复制的行数。 在此示例中,我们将从当前光标复制5行。

    y5y
    

    复制字词 (Copy Word)

    We can copy the next word where cursor locates with yw command. Words are separated with spaces.

    我们可以使用yw命令将下一个单词复制到光标所在的位置。 单词用空格分隔。

    yw
    

    切断电流线 (Cut Current Line)

    We can use dd command in order to cut current line. dd command is actually used to delete line but  after delete operation the deleted line will be put into the buffer where we can use and put the line with yy command.

    我们可以使用dd命令来剪切当前行。 dd命令实际上是用于删除行的,但是在删除操作之后,已删除的行将被放入缓冲区中,我们可以使用该缓冲区并将其与yy命令一起放入。

    dd
    

    剪切多行 (Cut Multiple Lines)

    We can cut multiple lines with dd command. In this example we will cut 10 lines by putting 10 between d commands. Cut start location is the cursor location.

    我们可以使用dd命令剪切多行。 在此示例中,我们将在d命令之间放置10行,以剪切10行。 剪切开始位置是光标位置。

    d10d
    

    切字 (Cut Word)

    We can cut word which is next one with dw command.

    我们可以用dw命令剪切下一个单词。

    dw
    

    (Paste)

    Cut and copy operations will put the content to the buffer. This buffer will be used to paste text. We will use p shortcut in order to paste last item in the buffer like below.

    剪切和复制操作会将内容放入缓冲区。 此缓冲区将用于粘贴文本。 我们将使用p快捷方式来将最后一项粘贴到缓冲区中,如下所示。

    p
    
    LEARN MORE  How To Download, Install and Use Vim In Windows
    了解更多如何在Windows中下载,安装和使用Vim

    翻译自: https://www.poftut.com/vim-copy-cut-paste-commands-operations/

    展开全文
  • Vim 配置

    2021-06-14 05:48:45
    1、编辑vim ~/.vimrcvim ~/.vimrc" Use Vim settings, rather then Vi settings. This setting must be as early as" possible, as it has side effects.set nocompatible" Highlight current lineset cursorline ...
  • vim详解

    2021-09-06 10:55:43
    1.编辑器简介 vi编辑器是所有Unix及Linux系统下标准的编辑器,相当于windows系统中的记事本一样,它的强大不逊色于任何最新的文本编辑器。是使用Linux系统不能缺少的工具。由于对Unix及Linux系统的任何版本...vim .
  • 小伙伴看到我各种vim的快捷指令使用,有点惊讶了:“卧槽,你怎么做到记得这么清楚的?这谁能记得住?教教我呗?”。 其实很简单:多写多用多练,例如:之前的一个同事,写代码只用vim编辑模式,我就是从这来学来的...
  • 作者:Mintimate ... Mintimate’s Blog,只为与你分享 [外链图片转存失败,源站可能有防盗...Vim是一款跨平台的文本编辑器,不但可以运行在Unix,还可以运行在GNU、Windows平台,并且还支持丰富的插件,助力开发和使用。
  • vim常用操作

    千次阅读 2022-03-04 18:53:13
    vim filename :如果已有文件,则打开;没有该文件,则创建并打开一个文件filename。 Ctrl+q :当vim卡住时,可以取消正在执行的命令 2.一般命令模式、编辑模式、命令行模式 &进入vim后,按下i 键,则进入编辑...
  • linux vim

    2021-05-17 09:17:59
    1、vi的基本概念基本上vi可以分为三种状态,分别是命令模式(command mode)插入模式(Insert mode)底行模式(last line mode)1) 命令行模式command mode)控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入...
  • mac选手使用vim的时候发现,代码全是白色的!我的天,我用的是vi吗? 但是编辑/usr/share/vim/vimrc中会发现系统不让用户改因为没有权限,这样可以直接在当前用户下实现同样的功能。步骤如下: 新建vimrc文件 vim ~/...
  • vim 编辑的基本操作

    2020-06-18 10:09:38
    在设置环境变量的时候,恰巧进入 vim 编辑中,可是始终无法修改 vi ~/ 打开的文件,遂上网查vim 的相关操作,看完基本就会操作了。 转载自:https://www.cnblogs.com/php-71/p/6733500.html vi编辑器是所有Unix及...
  • 分享我的vim配置文件

    2022-04-21 11:48:32
    配置vim
  • linux vim的使用方法

    千次阅读 2021-05-17 10:05:25
    linux vim的使用方法vi的基本概念基本上vi可分为三种操作状态,分别是命令模式(Command mode)、插入模式(Insert mode)和底线命令模式(Last line mode),各模式的功能区分如下:1. Comand mode:控制屏幕光标的移动,...
  • Vim基本使用方法

    2021-05-16 10:05:38
    为什么要学习VimVim和Vi的区别,Vim的基本使用方法(部分)为什么很多大型网站都采用Linux作为服务器?1. 为什么要学习Vim,是为了装B吗?在Windows操作系统横行的今天,为什么要学习使用Vim这样需要各种快捷键的...
  • vscode-vim常用快捷键

    2021-12-22 13:48:19
    vscode vim 插件快捷键速览
  • Ubuntu-vim 命令

    2021-11-09 16:32:09
    底线命令模式(Last line mode) 先通过一个简单的关系图 来看一下这三个模式 的工作关系 命令模式(Command mode) 当 用户输入 vi/vim a.txt,便进入了命令模式 此状态下敲击键盘动作会被Vim识别为命令,而非...
  • ubuntu vim配置(参考)

    2021-08-30 13:59:05
    安装好ubuntu虚拟机后,一般都会安装vim,但是原生的vim编辑器一般都不太好用。 结合网上的一些参考配置,就写了一份自己的配置,特此用此博客记录下,需要的自取即可。 执行如下指令: vim /etc/vim/vimrc 将下列...
  • Linux系统 | vim配置

    2021-08-27 20:59:43
    Linux系统 | vim配置 fly@fly-vm:~$ cat /etc/vim/vimrc " All system-wide defaults are set in $VIMRUNTIME/debian.vim and sourced by " the call to :runtime you can find below. If you wish to change any ...
  • vim操作命令

    2022-01-18 16:46:10
    1. 控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode。 2. 按一下「:」冒号键进入「Last line mode」 3. 按「i」切换进入插入模式「insert mode」,按“i”进入...
  • vim命令

    2021-01-16 07:07:24
    vi/vim 分为三种模式,命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)。使用 vi/vim 可以快速编辑文件而无需使用类似文本编辑器软件,特别是在生产环境 Linux 服务器上进行操作。...
  • Linux—vim编辑器的使用

    多人点赞 热门讨论 2022-03-01 10:02:54
    Linux—vim编辑器的使用...入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下: 1、正常/普通/命令模式(Normal mode) 控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mo
  • vim报错: E37: No write since last change E162: No write since last change for buffer "camera.c
  • 以下展示一个简单的vim配置文件, 请保存到用户宿主目录下的~/.vimrc set nu "" the general indentation setting set tabstop=4 set shiftwidth=4 set softtabstop=4 " set expandtab set noautoindent "" match ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 23,530
精华内容 9,412
关键字:

vim lastline

友情链接: Multisim7.rar