首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Vim学习笔记上篇

例如普通模式命令dd删除当前行,但是第一个”d”的后面可以跟另外的移动命令来代替第二个d,比如用移动到下一行的”j”键就可以删除当前行和下一行。...在插入模式中,可以按ESC键回到普通模式。 可视模式 这个模式与普通模式比较相似。但是移动命令会扩大高亮的文本区域。高亮区域可以是字符、行或者是一块文本。...当执行一个非移动命令时,命令会被执行到这块高亮的区域上。Vim的”文本对象”也能和移动命令一样用在这个模式中。 选择模式 这个模式和无模式编辑器的行为比较相似(Windows标准文本控件的方式)。...nG(n Shift+g) 游标移动到第 n 行(如果默认没有显示行号,请先进入命令模式,输入:set nu以显示行号) gg 游标移动到到第一行 G(Shift+g) 到最后一行 小技巧:你在完成依次跳转后...y复制 普通模式中,yy复制游标所在的整行(3yy表示复制3行) 普通模式中,y^ 复制至行首,或y0。

62430

Vim从理解到应用

插入模式(Insert mode)(常用) 在这个模式中,大多数按键都会向文本缓冲中插入文本。大多数新用户希望文本编辑器编辑过程中一直保持这个模式。...在插入模式中,可以按ESC键回到普通模式。 可视模式(Visual mode) 这个模式与普通模式比较相似。但是移动命令会扩大高亮的文本区域。高亮区域可以是字符、行或者是一块文本。...当执行一个非移动命令时,命令会被执行到这块高亮的区域上。Vim的"文本对象"也能和移动命令一样用在这个模式中。...2.2、游标移动与跳转 在普通模式下,使用方向键或者反人类的h、j、k、l键可以移动游标,并通过w、b、e等键进行游标的跳转,具体内容参见下表: 按键 说明 nG(n Shift+g) 游标移动到第n行...(行间跳转) gg 游标移动到第一行(行间跳转) G(Shift+g) 游标移动到最后一行(行间跳转) b 到前一个单词的开头 w 到下一个单词的开头 e 到当前单词的结尾 ge 到前一个单词的结尾 0

53020
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【总结】vim命令使用总结,该来的还是躲不掉啊晕

    '{}', '[]' - 在vim中使用 :h matchpairs 获得更多信息) 0 - 移动到行首 ^ - 移动到行首的非空白符 $ - 移动到行尾 g_ - 移动到行内最后一个非空白符 gg...- 移动到文件第一行 G - 移动到文件最后一行 5gg or 5G - 移动到第五行 gd - 跳转到局部定义 gD - 跳转到全局定义 fx - 移动到字符 x 下次出现的位置 tx - 移动到字符...T操作 } - 移动到下一个段落 (当编辑代码时则为函数/代码块) { - 移动到上一个段落 (当编辑代码时则为函数/代码块) zz - 移动屏幕使光标居中 zt - position cursor on...(矩阵选择) O - 切换光标到选择区的角 aw - 选择当前单词 ab - 选择被 () 包裹的区域(含括号) aB - 选择被 {} 包裹的区域(含花括号) at - 选择被 标签包裹的区域(...含标签) ib - 选择被 () 包裹的区域(不含括号) iB - 选择被 {} 包裹的区域(不含花括号) it - 选择被 标签包裹的区域(不含标签) Esc - 退出可视化模式 注:

    55721

    Vim快速入门

    例如普通模式命令dd删除当前行,但是第一个"d"的后面可以跟另外的移动命令来代替第二个d,比如用移动到下一行的"j"键就可以删除当前行和下一行。...大多数新用户希望文本编辑器编辑过程中一直保持这个模式。 在插入模式中,可以按ESC键回到普通模式。 可视模式(Visual mode) 这个模式与普通模式比较相似。但是移动命令会扩大高亮的文本区域。...高亮区域可以是字符、行或者是一块文本。当执行一个非移动命令时,命令会被执行到这块高亮的区域上。Vim的"文本对象"也能和移动命令一样用在这个模式中。...在该模式下您可以输入文本信息,下面请输入如下三行信息: 12345678 abcdefghijk shiyanlou.com 按Esc进入普通模式,在该模式下使用方向键或者h,j,k,l键可以移动游标。...1.普通模式下删除vim文本信息 进入普通模式,使用下列命令可以进行文本快速删除: 命令 说明 x 删除游标所在的字符 X 删除游标所在前一个字符 Delete 同x dd 删除整行 dw 删除一个单词

    57070

    Vim入门

    gg # 回到最前一行 G # 回到最后一行 nG # 跳到第n行(n为int数值) ctl+b # 向上滚动一页 ctl+f # 向下滚动一页 dd # 删除一行 x # 删除游标所在的字符 X #...删除游标所在字符的前一个字符 d^ # 删除至行首 2dd # 删除2行 u # 撤销修改 全局替换命令为::%s/源字符串/目的字符串/g 在普通模式有如下方位键 h # 左 l # 右(小写L)...j # 下 k # 上 w # 移动到下一个单词 b # 移动到上一个单词 命令行模式(Command-Line) 在命令行模式中可以输入会被解释成并执行的文本。...在这个模式中,大多数按键都会向文本缓冲中插入文本。大多数新用户希望文本编辑器编辑过程中一直保持这个模式。在插入模式中,可以按ESC键回到普通模式。...但是移动命令会扩大高亮的文本区域。高亮区域可以是字符、行或者是一块文本。当执行一个非移动命令时,命令会被执行到这块高亮的区域上。Vim的”文本对象”也能和移动命令一样用在这个模式中。

    28420

    打造聊天框丝滑滚动体验:AI 聊天框的翻转之道

    如果在 web 什么也不做,聊天体验可能是这样的,需要用户手动滚动到最新消息:试想一下如何在 web 中实现微信的效果。每当聊天框中接收到新消息时,都需要调用滚动方法滚动到消息底部。...如果仍使用 scrollIntoView 来滚动到底部,就需要监听消息体的变化,每次消息更新时都要通过 JavaScript 调用一次滚动方法,会造成一些问题:频繁的 JavaScript 滚动调用。...自然列表:灵感来源聊天框接收到新消息时滚动到最新位置,总感觉这应该是一个很自然的行为,不需要这么多 Javascript 代码去实现滚动行为。...于是联想到了 Excel 表格,当我们在表格中第一行插入一行,这一行后边的内容会被很自然的挤下去。并不需要做什么滚动,这一行就会出现在最顶部的位置。...不需要对聊天框和消息体再进行旋转操作,也不需要反转滚动条的行为。以上两种方法都存在一个相同的问题,当一开始聊天消息还很少时,聊天消息也会紧贴着底部,顶部会留出一片空白。

    1.7K21

    Python操作MySQL(2)

    没关系,这里游标cursor中还提供了三种提取数据的方法:fetchone、fetchmany、fetchall,每个方法都会导致游标游动,所以必须注意游标的位置 cursor. fetchone()...获取游标所在处的一行数据,返回的是元组,没有则返回None, cursor. fetchmany(size=None) 接收size条返回结果行。...,并以元组的形式返回,元组的每一个元素都也是一个由一行数据组成的元组,如果游标所在处没有数据,将返回空元组。...执行完这个方法后,游标将移动到数据库表的最后 更新数据 更新单条数据 #encoding=utf-8 import pymysql try: conn = pymysql.connect(...='relative') 移动指针到参数value指定的行; Mode = relative则表示从当前所在行前移value行 Mode=absolute表示移动到绝对位置的value行。

    91240

    vim常用命令总结

    、 11.移动到行首或行尾   "$"命令将光标移动到当前行行尾。如果你的键盘上有一个键,它的作用也一样。"^"命令将光标移动到当前行的第一个非空白字符上。"...0"命令则总是把光标移动到当前行的第一个字符上。键也是如此。"$"命令还可接受一个计数,如"1$"会将光标移动到当前行行尾,"2$"则会移动到下一行的行尾,如此类推。"...18.在文本中查找下一个word 把光标定位于这个word上然后按下"*"键。Vim将会取当前光标所在的word并将它作用目标字符串进行搜索。"#"命令是"*"的反向版。...32.复制文本(VIM编辑器内复制)   "y"操作符命令会把文本复制到一个寄存器3中。然后可以用"p"命令把它取回。因为"y"是一个操作符命令,所以你可以用"yw"来复制一个word. ...e   移动到下个字的最後一个字母 w    移动到下个字的第一个字母。 b    移动到上个字的第一个字母。 ^    移至该行的第一个字元处。 H    移至视窗的第一行。

    1.3K10

    【Linux文本编辑艺术】:从入门到熟练,Vim大师之路揭秘

    在可视模式下,你可以选择一块文本区域,并对其进行复制、剪切、粘贴等操作。按下 Esc 键可以退出可视模式返回到命令模式。...0 或功能键[Home] 这是数字『 0 』:移动到这一行的最前面字符处 (常用) $ 或功能键[End] 移动到这一行的最后面字符处(常用) H 光标移动到这个屏幕的最上方那一行的第一个字符 M 光标移动到这个屏幕的中央那一行的第一个字符...L 光标移动到这个屏幕的最下方那一行的第一个字符 G 移动到这个档案的最后一行(常用) nG n 为数字。...d1G 删除光标所在到第一行的所有数据 dG 删除光标所在到最后一行的所有数据 d$ 删除游标所在处,到该行的最后一个字符 d0 那个是数字的 0 ,删除游标所在处,到该行的最前面一个字符 yy 复制游标所在的那一行...复制光标所在的向下 n 行,例如 20yy 则是复制 20 行(常用) y1G 复制游标所在行到第一行的所有数据 yG 复制游标所在行到最后一行的所有数据 y0 复制光标所在的那个字符到该行行首的所有数据

    16010

    python中MySQLdb模块用法实例

    (self, query, args) //移动到下一个结果集 nextset(self) cursor用来接收返回值的方法 //接收全部的返回结果行. fetchall(self) //接收size条返回结果行....如果size的值大于返回的结果行的数量,则会返回cursor.arraysize条数据 fetchmany(self, size=None) //返回一条结果行fetchone(self) //移动指针到某一行...持续性也称永久性(permanence),指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其有任何影响。...db.rollback() 对于支持事务的数据库, 在Python数据库编程中,当游标建立之时,就自动开始了一个隐形的数据库事务。...commit()方法提交游标的所有更新操作,rollback()方法回滚当前游标的所有操作。每一个方法都开始了一个新的事务。

    72010

    JS事件篇

    和scrollHeight获取元素整个滚动区域的宽和高 元素.scrollLeft和scrollTop获取水平和垂直滚动条滚动滚动距离 当满足scrollHeight - scrollTop == clientHeight...,读取到一行就运行一行,如果将script标签写到页面上边,在代码执行的时候,页面还没有完全加载 window.onload事件会在整个页面加载完成之后,才会触发,将对应的script代码,写在里面,可以确保...属性会获取包括文本节点在内的所有节点,注意DOM标签与标签之间的空白也会被当成文本节点 在IE8一下的浏览器中,不会将空白文本当成子节点,所以该属性再IE8中会返回4个子元素,而其他浏览器都是9个 -...等,尽管解决了返回顶部的问题但仍存在其他缺陷 (3)事件处理函数的工作机制中,在给某元素添加事件处理函数后,一旦事件发生,相应JavaScript代码就会执行,所调用的JavaScript代码的返回值被传递给事件处理函数...} 当满足scrollHeight - scrollTop == clientHeight时,表明垂直滚动条滚动到底了 ---

    12.6K10

    Python3 MySQL 数据库连接 - PyMySQL 驱动

    游标用来接收返回结果 cursor返回一个游标实例对象,其中包含了很多操作数据的方法 execute(op) 执行一个数据库的查询命令 fetchone() 取得结果集的下一行 fetchmany(size...conn.close()#再关闭数据库连接 print('创建数据表成功') 插入操作: 当要将记录创建到数据库表中时,需要执行INSERT操作。...cursor.fetchone():获取游标所在处的一行数据,返回元组,没有返回None cursor.fetchmany(size):接受size行返回结果行。...,并以元组的形式返回,元组的每一个元素都也是一个由一行数据组成的元组,如果游标所在处没有数据,将返回空元组。...执行完这个方法后,游标将移动到数据库表的最后 更新操作: 单条数据更新操作: #打开数据库连接 conn=pymysql.connect(host='localhost',user='root',password

    34010

    游标

    一:什么是游标 游标是可以在结果集中上下游动的指针 二:创建一个简单的游标 use xland go  --声明变量以后有用 declare @id int declare @title varchar...说明游标是全局的 但不建议这样使用游标 四:游标的滚动 next --移动到下一条记录 prior --移动到上一条记录 first  --移动到第一条记录 last  --移动到最后一条记录 看例子...for  select a.id,a.title,u.username from mytable a join [user] u on u.id = a.uid open tablecursor --滚过来...   asdfasdf 其中一行受影响就是 select 语句的执行结果,为 2 测试看看 4 这是我更新的数据 5 asdfasdf 静态游标:一旦创建就与实体记录分开了,并不维持任何锁 实体表发生了更新...9     应该没问题 10     暗暗 (1 行受影响) (1 行受影响) (1 行受影响) (8 行受影响) delete 4   这不是我更新的数据 5   asdfasdf 6   全文索引全文索引全文索引

    51030

    游标--数据库

    一,游标是什么? 游标是一段私有的SQL工作区,也就是一段内存区域,用于暂时存放受SQL语句影响到的数据。通俗理解就是将受影响的数据暂时放到了一个内存区域的虚表中,而这个虚表就是游标。...1,大家都知道数据库中的事物可以回滚,而游标在其中起着非常重要的作用,由于对数据库的操作我们会暂时放在游标中,只要不提交,我们就可以根据游标中内容进行回滚,在一定意义有利于数据库的安全。                 ...三,类型:                 1,隐式游标:增删改等操作Oracle都会自动创建游标,暂时保存操作结果,也就是能够回滚的操作都会引发游标的创建。                ...2,显示游标:由开发人员通过程序显式控制,用于从表中取出多行数据,并将多行数据一行一行的单独进行处理....Open 打开游标 3 Fetch 取出游标中的一条记录装入变量 4 Close 释放游标           2,当然游标中可以存放一条数据,也可以存放多条数据,后者是我们用游标,前者我们通过PL

    82330

    学会这21条,你离Vim大神就不远了

    # 向前(上)寻找游标所在处的单词 以上两种查找,n,N 的继续查找命令依然可以适用 精准查找:匹配单词查找 如果文本中有这三个单词 hellohelloworldhellopython...利用p命令可以对剪切的内容进行粘贴 :1,10d 将1-10行剪切。利用p命令可将剪切后的内容进行粘贴。 :1, 10 m 20 将第1-10行移动到第20行之后。 10....以行为单位移动 # 10指代所有数字,可任意指定 10h 左移10个字符 10l 右移10个字符 10k 上移10行 10j 下移10行 $ 移动到行尾 3$ 移动到下面3行的行尾 以单词为单位移动...以句为单位移动 ( 移动到句首 ) 移动到句尾 跳转到文件的首尾 gg 移动到文件头。 = [[ == `` G 移动到文件尾。...显示option的设定值 :set nooption 取消当期设定值 :ver 显示vim的所有信息(包括版本和参数等) # 需要注意:全屏模式下 :args 查看当前打开的文件列表,当前正在编辑的文件会用

    1.7K30

    学会这21条,你离 Vim 大神就不远了!

    # 向前(上)寻找游标所在处的单词 以上两种查找,n,N 的继续查找命令依然可以适用 精准查找:匹配单词查找 如果文本中有这三个单词 hellohelloworldhellopython...利用p命令可以对剪切的内容进行粘贴 :1,10d 将1-10行剪切。利用p命令可将剪切后的内容进行粘贴。 :1, 10 m 20 将第1-10行移动到第20行之后。 10....以行为单位移动 # 10指代所有数字,可任意指定 10h 左移10个字符 10l 右移10个字符 10k 上移10行 10j 下移10行 $ 移动到行尾 3$ 移动到下面3行的行尾...以句为单位移动 ( 移动到句首 ) 移动到句尾 跳转到文件的首尾 gg 移动到文件头。 = [[ == `` G 移动到文件尾。...显示option的设定值 :set nooption 取消当期设定值 :ver 显示vim的所有信息(包括版本和参数等) # 需要注意:全屏模式下 :args 查看当前打开的文件列表,当前正在编辑的文件会用

    1.1K30

    vim 回顾

    在当前行 ( current line ) 有效的移动光标 当光标从一点移动到另外一点,在这两点之间的文本(包括这两个点)称作被“跨过”,这里的命令也被称作是 motion。...zz : 使光标所在的行成为屏幕的中间行。 enter : 使光标移动到下一行的第一个字符。.... - : 使光标移动到上一行的第一个字符。 gg ( go ): 移动光标到文件首。 G :移动光标到文件尾。 numgg ( num go go ) : 移动光标到指定行即num行。...替换(更改)文本 ~ : 游标所在处字符进行大小写替换。 r ( replace ) : 替换单个字符,不必进入插入模式(insert mode)。...hello 为 sky :n,$s/hello/sky/g 替换第 n 行开始到最后一行中每一行所有 hello 为 sky(n 为数字,若 n 为 .

    58820

    Js处理滚动条和日期框

    滚动条不是html页面的元素,它是浏览器的元素。想获取浏览器的元素,就不能走常规套路啦,要通过javascript来执行。 不是所有的元素都一定要拖动到可见区域才能操作的。...例如百度搜索中,最后选择这个页面跳转: ? 例如底部的页面跳转:有的系统,虽然进来是这个地方,想操作页面底部的元素,可以操作,也不需要拖动滚动条,它会自动将它拖动到可见区域,然后去操作它。...5)找到的element对象传给argument[0] 6)方法.scrolllntoView()滚动到可见区域。...例如元素在页面正中间,想将它滚动到可见区域,必须有向上滚和向下滚这2种做法。 如果你希望他向上滚。 一种,.scrolllntoView()默认跟页面顶部对齐: ?...Js中innerText的用法: innerText可获取或设置指定元素标签内的文本值,从该元素标签的起始位置到终止位置的全部文本内容(不包含html标签)。

    10.9K10

    Python+MySQL数据库编程

    请求不支持的功能,如回滚 连接和游标 要使用底层的数据库系统,必须先连接到它,为此可使用名称贴切的函数connect。...之后,连接对象及其游标将不可用 commit() 提交未提交的事务——如果支持的话;否则什么都不做 rollback() 回滚未提交的事务(可能不可用) cursor() 返回连接的游标对象 方法rollback...可用时,这个方法撤销所有未提交的事务。 方法commit总是可用的,但如果数据库不支持事务,这个方法就什么都不做。关闭连接时,如果还有未提交的事务,将隐式的回滚它们——但仅当数据库支持回滚时才如此!...在文件ABBREV.txt中,每一行都是一条数据记录,字段之间用脱字符(^)分隔。数字字段直接包含数字,而文本字段用两个波浪字符(~)将其字符串值括起。...这样,你就可使用类似下面的条件: "kcal = 10 AND sugar ORDER BY sugar" 这要求仅当sugar包含实际数据时才返回相应的行。

    2.8K10
    领券