精华内容
下载资源
问答
  • 先用vim打开文件,然后: 1、vim用数字+G来移动行,比如...2、vim用数字+l(小写的L)来移动列,先按数字0将光标移动到行首,然后敲数字,最后敲l,光标就会移动那么多格。比如你要移第10,那就是9l。 完毕。 ...

    先用vim打开文件,然后:

    1、vim用数字+G来移动行,比如你要移动到12行,先敲数字12,最后敲G,光标就会移动到12行。
    2、vim用数字+l(小写的L)来移动列,先按数字0将光标移动到行首,然后敲数字,最后敲l,光标就会移动那么多格。比如你要移到第10列,那就是9l。

    完毕。

    展开全文
  • 如题,貌似这个简单的问题,没有什么人写过、问过。 依旧是查阅各位大牛的资料和Qt说明之后,总结如下: ...2、SelectionMode为MultiSelection时比较简单,只要知道需要选中的Index所在行/: **选中多行

    如题,貌似这个简单的问题,没有什么人写过、问过。

    依旧是查阅各位大牛的资料和Qt说明之后,总结如下:

    1、QTableView设置选择模式(SelectionMode)为MultiSelection或者ExtendedSelection,以便能允许选中多行


    2、SelectionMode为MultiSelection时比较简单,只要知道需要选中的Index所在行/列:

    **选中多行:直接连续多次执行TableView->selectRow(int);

    **选中多个单元格:TableView->selectionModel()->select(QModelIndex,QItemSelectionModel::Select),第二个参数请参看QtCreator自带的帮助文档


    3、SelectionMode为ExtendedSelection时,也需要首先知道要选中的Index所在行/列,但是直接采用MultiSelection模式的方法进行选择的话,后面的步骤会将前面步骤的光标全部冲掉,只留下最后一步的选择结果,这不是我们想要的。

    我们需要用到QItemSelection的merge()即拼接函数,如下:

        QItemSelectionModel* selection_model = ui->tableView->selectionModel();
    
        QItemSelection selection;
    
        foreach(QModelIndex index, indexes) {
    
        	QModelIndex left =model->index(index.row(), 0);
    
        	QModelIndex right =model->index(index.row(),model->columnCount()-1);
    
        	QItemSelection sel(left, right);
    
        	selection.merge(sel, QItemSelectionModel::Select);	//将每一个单元格/每一行都作为一个QItemSelection 对象,并拼接到总的QItemSelection 对象中
    
        }
    
        selection_model->select(selection, QItemSelectionModel::Select);
    思路:将每一个单元格/每一行都创建一个QItemSelection 对象,并拼接到总的QItemSelection 对象中,最后再给selection_model设置selection。

    展开全文
  • 今天在POWER BI群里看到群友发出一个反馈,如何实现部分向右移动,如下图,将错行的姓名向右移动到column2这一 因为资源数据不可共享问题,仅仅做一个小测试,当做参考思路--随手做了一个类似的表格,因为...

    今天在POWER BI群里看到群友发出一个反馈,如何实现部分列向右移动,如下图,将错行的姓名向右移动到column2这一列

    因为资源数据不可共享问题,仅仅做一个小测试,当做参考思路--随手做了一个类似的表格,因为懒惰,,连标题都没写= =

     张三11
     李四22
    王五33 

     

    如何实现将王五向右移动一个格子

    跳转到power query编辑器

    最开始基本就是这样~~

    然后转置表格---PS:转置表格无需刻意点击某一列,默认将整个表格进行转置

    向上填充

    再次转置

    拆分列,点击第一列,点击分隔符

    如下图

    再次转置

    点击最后一列,向下填充

    再次转置

    选中这两列,删除列

    结果如下

    方法较为繁琐,希望以后可以发现更加简便的方法~~

    展开全文
  • 由于在.vimrc文件中设置了 filetype plugin indent on 和 set cindent ...在命令行模式下,首先使用“gg”将光标移动到文档开头,然后使用“v”切换可视模式,再用“G”将光标移动到文档尾部(相

    由于在.vimrc文件中设置了

    filetype plugin indenton

    set cindentshiftwidth=4

    在SecureCRT中使用鼠标复制-粘贴时,代码的自动缩进导致每一行都比上一行缩进一个tab,手工调整很麻烦,幸好发现了vim的自动排版方法:

    在命令行模式下,首先使用“gg”将光标移动到文档开头,然后使用“v”切换到可视模式,再用“G”将光标移动到文档尾部(相当于全选),最后使用“=”,即可完成整个文档的自动排版。

     

    Vim多行缩进技巧

    1.按v进入visual状态,选择多行,用>或<缩进或缩出

    2. 通常根据语言特征使用自动缩进排版:在命令状态下对当前行用== (连按=两次),或对多行用n==(n是自然数)表示自动缩进从当前行起的下面n行。你可以试试把代码缩进任意打乱再用n==排版,相当于一般IDE里的codeformat。使用gg=G可对整篇代码进行排版。

    3.gg   shift+G首尾
    4.全文字眼替换  %s/source/dist/g 或者 :1,$s/source/dist/g
      :s/vivian/sky/ 替换当前行第一个 vivian 为sky

      :s/vivian/sky/g替换当前行所有 vivian 为 sky

      :n,$s/vivian/sky/ 替换第n 行开始到最后一行中每一行的第一个 vivian 为 sky

      :n,$s/vivian/sky/g 替换第n 行开始到最后一行中每一行所有 vivian 为 sky

      n 为数字,若 n 为.,表示从当前行开始到最后一行

      :%s/vivian/sky/(等同于:g/vivian/s//sky/) 替换每一行的第一个 vivian 为sky

      :%s/vivian/sky/g(等同于:g/vivian/s//sky/g) 替换每一行中所有 vivian 为sky

      可以使用 # 作为分隔符,此时中间出现的 /不会作为分隔符

      :s#vivian/#sky/#替换当前行第一个 vivian/ 为 sky/

      :%s+/oradata/apras/+/user01/apras1+ (使用+ 来 替换 / ):/oradata/apras/替换成/user01/apras1/

      *************************************

      1.:s/vivian/sky/替换当前行第一个 vivian 为 sky

      :s/vivian/sky/g替换当前行所有 vivian 为 sky

      2. :n,$s/vivian/sky/替换第 n 行开始到最后一行中每一行的第一个 vivian 为 sky

      :n,$s/vivian/sky/g 替换第n 行开始到最后一行中每一行所有 vivian 为 sky

      (n 为数字,若 n 为.,表示从当前行开始到最后一行)

      3. :%s/vivian/sky/(等同于:g/vivian/s//sky/) 替换每一行的第一个 vivian 为sky

      :%s/vivian/sky/g(等同于:g/vivian/s//sky/g) 替换每一行中所有 vivian 为sky

      4. 可以使用 #作为分隔符,此时中间出现的 / 不会作为分隔符

      :s#vivian/#sky/#替换当前行第一个 vivian/ 为 sky/

      5.删除文本中的^M

      问题描述:对于换行,window下用回车换行(0A0D)来表示,linux下是回车(0A)来表示。这样,将window上的文件拷到unix上用时,总会有个^M.请写个用在unix下的过滤windows文件的换行符(0D)的shell或c程序。

      · 使用命令:cat filename1 |tr -d “^V^M” > newfile;

      · 使用命令:sed -e“s/^V^M//” filename >outputfilename。需要注意的是在1、2两种方法中,^V和^M指的是Ctrl+V和Ctrl+M。你必须要手工进行输入,而不是粘贴。

      ·在vi中处理:首先使用vi打开文件,然后按ESC键,接着输入命令:%s/^V^M//。

      ·:%s/^M$//g

      如果上述方法无用,则正确的解决办法是:

      · tr -d "\r" < src>dest

      · tr -d "\015"dest

      · stringsA>B

      6.其它

      利用 :s命令可以实现字符串的替换。具体的用法包括:

      :s/str1/str2/ 用字符串str2 替换行中首次出现的字符串 str1

      :s/str1/str2/g 用字符串str2 替换行中所有出现的字符串 str1

      :.,$ s/str1/str2/g用字符串 str2 替换正文当前行到末尾所有出现的字符串 str1

      :1,$ s/str1/str2/g用字符串 str2 替换正文中所有出现的字符串 str1

      :g/str1/s//str2/g功能同上

      从上述替换命令可以看到:g放在命令末尾,表示对搜索字符串的每次出现进行替换;不加g,表示只对搜索

      字符串的首次出现进行替换;g放在命令开头,表示对正文中所有包含搜索字符串的行进行替换操作。

    可视模式让你可以选择文件的一部分内容,以便作比如删除,复制等工作。

    进入可视模式

    v

    用v命令进入可视模式。当光标移动时,就能看到有一些文本被高亮显示了,它们就是被选中的内容。

    三种可视模式

    v

    一个字符一个字符地选。从按下v的那个字符起,一直到光标所移动到的位置之间的内容都被选中。

    V

    一行一行地选。从按下V的那行起,一直到光标所移动到的行之间的所有行都被选中。

    Ctrl-v(可以用来删除一列和多列)

    它选中屏幕上的一个矩形区域。以按下Ctrl-v的位置为一个角,光标所在位置为它的对角。

    离开可视模式

    按下就会离开可视模式。

    可视模式下的编辑

    在可视模式下删除文本

    d

    删除所选中的部分。

    D

    删除所选中部分所在的行。即使没有把一行都选中,也把一行都删除。

    复制

    v

    复制选中的部分。

    D

    复制所选中部分所在行。即使没有把一行都选中,也把一行都复制。

    更改模式

    可以随时在可视模式中的三种之间切换,只需按进入想要切换到的模式的命令即可。

    更改文本

    c

    删除所选中的部分并切换到输入模式。

    C

    删除所选中的部分所在的行并切换到输入模式。

    合并行

    当选中想合并在一起的行以后,按下

    J(大写)

    就可以了。

    程序员的命令

    >

    所选中的部分都缩进一个tab。

    在所选中的部分删除一个tab的缩进。

    =

    自动排列所选中的内容。

    查看man

    K

    命令查看关键字的man page,在可视模式它会以选中的文本为关键字。

    可视块模式

    通过Ctrl-v进入的模式为可视块模式,它会选中一个矩形区域。

    插入内容

    I字符串

    会在每一行所选中内容的开始前添加”字符串”

    改变文本

    c字符串

    会把选中的内空删除并进入输入模式。你只需要在选中的第一行输入一个字符串,当按下后所有行的选中部分都会和第一行一样。这里的字符串中不能包含换行符,如果包含了换行符的话,它就不会这么神奇,就会根普通模式下的c一样了。

    C(大写)

    会直接删除到行尾,其它与c一样。

    A(大写)

    会在选中的块后面添加文本。它们是对齐的。

    如果要在选中的块紧接每行末尾添加内容,则需用$来指定选择到行尾,而不是简单地用光标。

    替换内容

    r

    用来把选中的内容替换成同一个字符。

    缩进

    >

    >将选中的块缩进一个shiftwidth

    留言

    Vim简明教程5:窗口

    打开一个新窗口

    最简单的打开新窗口的方法是

    :split

    它把一个窗口分成两个,光标留在上面的那个窗口中。

    通过

    Ctrl-w+方向键

    来在窗口间切换

    比如

    Ctrl-ww 或 Ctrl-w Ctrl-w

    切换到下一个窗口;

    Ctrl-wj 和 Ctrl-wk

    分别切换到下一个窗口和上一个窗口。

    要关闭窗口,用

    :q 或 ZZ 或 Ctrl-wc

    找开一个新窗口并在其中打开一个文件

    :split 文件名

    也可以给split命令分配一个初始命令,也就是说执行完split接着要做的

    :split +命令 文件名

    比如

    :split +/printf three.c

    命令会把当前窗口分成两个然后在上面的窗口中查找printf这个字符串。

    控制窗口大小

    如果给split命令指定一个参数,则表示新找开窗口的高度

    比如

    :3split alpha.c

    打开一个高度为3的窗口并在其中打开alpha.c

    :new命令

    :new

    命令用起来就跟split差不多,只有一点不同:new命令会在新窗口中新建一个文件,而split只是在新窗口中打开原窗口中的内容。

    分割并查看(Split and View)

    :sview

    命令新建一个窗口并且其中的内容是只读的。

    改变窗口大小

    行数Ctrl-w+

    把当前窗口高度增加”行数”行(如不指定行数,默认为1)

    行数Ctrl-w-

    把当前窗口高度减少”行数”行(如不指定行数,默认为1)

    Ctrl-w=

    让所有窗口一样高

    行数Ctrl-w_

    把当前窗口的高度设为”行数“,如不指定则把它最大化。

    缓冲

    Vim用缓冲来代表一个文件。当你在编缉一个文件时,只是在编缉它的缓冲。当你完成编辑保存时,Vim把缓冲中的内容保存进文件。当然,事情并不是  这么简单。在Vim中设置的标记之类的也保存在缓冲中。你可以同时拥有多个缓冲,当你编辑多个文件时就是这样。当你想要一个Vim窗口,并且想编辑多个文 件时,把这个窗口最大化是不管用的,因为这不是一个窗口,其它的窗口还是能看得见的。此时你可以把不编辑的缓冲隐藏(hide),用命令

    :hide

    一个缓冲有三种可能的状态:

    活动:显示在屏幕上的窗口

    隐藏:没有显示在屏幕上的在编辑的缓冲

    不活动:缓冲没有在编辑,但是保存着它的信息

    第三种状态需要多解释一下,当你编辑另一个文件时,当前文件的内容就没有用了。Vim就关掉它。但是它的一些其它信息可能还有用。(这一部分比较混乱,原文说得也不是很清楚,不懂也无所谓)

    要查看缓冲的列表,用

    :buffers

    命令。输出的第一列是缓冲编号,第二列是状态,第三列是与缓冲对应的文件。

    状态共且以下几种:

    - 不活动的缓冲
    h 隐藏的缓冲
    % 当前缓冲
    # 其它缓冲
    + 文件被编辑而未保存

    选择一个缓冲

    :buffer 缓冲编号

    如果你不知道缓冲的编号,可以用

    :buffer 文件名

    下面的命令分割窗品并编辑指定的缓冲

    :sbuffer 缓冲编号

    :sbuffer 文件名

    还有很多关于缓冲的命令:

    :bnext      去下一个缓冲
    :count bnext     执行count次去下一个缓冲
    :count sbnext     先分割窗口,然后执行:count bnext
    :count bprevious    去上一个缓冲。如果指定了count,则执行count次
    :count sbprevious   先分割窗口,然后执行:count bprevious
    :count bNext     同:count bprevious
    :count sbNext     同:count sbprevious
    :blast      去最后一个缓冲
    :sblast      先分割窗口再执行:blast
    :brewind     去第一个窗口
    :sbrewind     先分割窗口再执行:brewind
    :bmodified count    去第count个编辑过的缓冲
    :sbmodified count   等于:split加:bmodified

    缓冲选项

    通常当所有编辑一个文件的窗口都关掉后,这个窗口的缓冲就变成”不活动”,如果不想这样,可以设置

    :set hidden

    让它变成隐藏而不是不活动。

    通常分割/缓冲相关的命令会分割当前窗口,但是也可以让Vim在已经有窗口打开所指定的缓冲时,切换到那个窗口而不是新建一个:

    :set switchbuf=useopen

    更多关于switchbuf的内容参见23章。

    留言

    Vim简明教程4:块和多文件编辑

    这是我在看一本叫做Vim Tutorial的书时作的笔记,去掉了例子,作了一下总结。放上来作为一个Vim的小教程分享一下。本系列文章可转载,但请注明出处:http://mingfal.bloggerspaces.com

    剪切,粘贴和复制

    当你在删除文字的时候,比如d, x之类的,被删除的内容都被保存了下来。你可以通过

    p

    来粘贴它们。

    交换字符
    有时你会把两个字母打反,比如把the打成teh。用

    xp

    命令就可以把它们调换位置。原理是这样的,首先x会把e删除并保存,p会把它粘贴到光标所在位置,也就是h之后。

    关于粘贴的更多
    p命令可以用多次。p命令把内容粘贴在光标之后,而

    P

    把内容粘贴在光标之前。

    标记

    Vim允许你在文本中做标记。命令

    ma

    会在光标所在处做一个名为a的标记。你最多可以在文本中做26个标记(a-z)。

    要移动到一个标记,用命令

    `标记

    其中`是在键盘左上角数字一左边的那个键

    要移动到一个标记所在行的行首,用命令

    ‘标记

    其中‘是单引号

    标记在删除大量文件内容人时很有用。比如

    在你想要删除的文本的开始处做标记ma

    然后移动到想删除文本的末尾,用d`a删除从此位置到标记a间的内容。

    注意,标记会跟着它所标记处的文本移动(比如在它之前插入或删除了东西)

    标记都在哪呢?

    :marks

    命令会列出所有标记的列表。

    复制

    y

    命令用来复制,它的用法与d很相似。

    复制一行

    Y(大写)

    复制一行内容

    管道

    !动作 命令

    会把由”动作”选中的文本作为”命令”的输入,并用”命令”的输出替换选中的文本。

    举个例子,sort命令会对一个文件的内容排序。如果想对当前正在编辑文件的前10行排序,可以这样:

    先把光标移动到第一行,然后

    !10G sort

    !!命令

    命令把当前行作为“命令”的输入。(这是一个把系统命令的输出放到文件里的好方法)。

    编辑另一个文件

    :vi 或 :e

    可以关闭当前文件,并打开新的文件。

    如果当前文件没有保存,则会出现提示。这时使用

    :w

    会保存未保存的文件。

    View命令

    :view 文件

    会在Vim中以只读方式打开文件。

    处理多个文件

    可以在调用Vim时指定多个参数以依次编辑多个文件

    Vim 文件1 文件2 文件3 …

    默认情况下Vim每次只会编辑一个文件,当编辑完一个文件时,

    :next

    命令会关闭光前文件打开下个文件开始编辑。

    我在哪里
    当你在编辑多个文件时有时会忘了自己在编辑哪个。

    :args

    命令会显示当前正在编辑哪个文件。

    编辑上一个文件

    当要编辑上一个文件时,用命令

    :previous 或 :Next。

    编辑每一个或最后一个文件

    要编辑第一个文件,用

    :rewind

    要编辑最后一个文件,用

    :last

    编辑两个文件

    当同时编辑两个文件时,正在编辑的是当前文件,没在编辑的会被当成“另一个文件”,在这两个文件间切换要方便的多。用命令:

    Ctrl+^

    留言

    Vim简明教程3:查找

    这是我在看一本叫做Vim Tutorial的书时作的笔记,去掉了例子,作了一下总结。放上来作为一个Vim的小教程分享一下。本系列文章可转载,但请注明出处:http://mingfal.bloggerspaces.com

    简单查找

    /要查找内容

    用/向后查找,紧随其后的要查找的内容。然后按下回车,Vim就会去为你找你想要的东西了。

    要注意

    .*%/\?!$ 还有空格

    都有特殊意义,如果要查找的内容中包含这些字符,要在前面加上一个\。

    要查找区配的下一处,用命令

    \ 或 n

    它们的作用是相同的。

    查找历史

    查找命令可以允许你来查看查找的历史,在输入一个/以后,不要按回车,然后再按上下键就可以查看上一条或下一条查工历史了。在某个历史处如果按回车,就会查找此内容。

    查找选项

    高亮

    :set hlsearch

    命令可以让所有的查找都高亮显示匹配的部分。

    :set nohlsearch

    取消高亮选项

    增量查找

    一般情况下,Vim在查找时要等待用户输入整个要查找的内容,然后再去查找。增量查找则是不等用户输入完毕,就查找已输入的部分。要使用它需要进行下面设置:

    :set incsearch

    如查取消,则

    :set noincsearch

    反向查找

    ?要查找的内容

    命令从当前位置开始反向查找,即向文件的开始查找。

    改变方向

    N

    命令可以改变查找的方向并查找改变方向后的下一处匹配。

    基本的正则表达式

    行首(^)和行尾($)

    ^表示一行的开始,include会匹配每一处的include,而^include只会匹配在行首的include。
    $表示一行的结束,was$只会匹配在行末的was。
    如果想要匹配只有一个词the的行,用^the$。

    匹配任意单个字符(.)

    .匹配任一个字符,比如c.m表示以c开头以m结尾的有三个字母的字符串。

    匹配特殊字符

    好多字符在正则表达式中有特殊含意。要匹配这一类字符,要在前面加一个\。比如,要匹配the.,就要用the\.

    留言

    Vim简明教程2:编辑得更快一些

    这是我在看一本叫做Vim Tutorial的书时作的笔记,去掉了例子,作了一下总结。放上来作为一个Vim的小教程分享一下。本系列文章可转载,但请注明出处:http://mingfal.bloggerspaces.com

    按词移动

    w

    按下w会前进一个词。

    b

    按下b会后退一个词。

    这里,就像在Vim中的大部分情况下一样,在这两个命令前面加上一个数字可以让它们重复做多次。

    移动到行首或行末

    $

    $会让你移动到所在行的末尾。

    ^

    ^会让你移动到所在行的开始。也可以做相似的事。不过^会移动到第一个非空的字符处,而会移动到行首。

    这两个命令也接受数字参数,比如

    2$

    会移动到下一行末。

    在行上查找

    f要查找的字符

    f用来在一行上查找一个字符并移动到该字符所在处。比如

    fx

    用来移动到此行当标后第一个x处。如果有一个数字参数,就可以指定移动到某个指定的匹配位置。

    F

    F用来向左查找。

    移动到指定行

    行号G

    G命令会把你带到用行号指定的行。如果使用没有行号的G,将会移动到最后一行。

    显示当前所在位置

    :set number

    Vim的可制定性是很强的,所以你可以通过:set设定很多选项。number就是其中之一。它是一个布尔选项,用来控制是否在最左边显示行号。

    :set number

    可以把它打开。

    :set nonumber

    则可以关闭此选项。

    Ctrl+g

    Ctrl+g会显示当然后在的位置。

    向上和向下翻屏

    Ctrl+u

    会向上翻半屏

    Ctrl+d

    会向下翻半屏

    删除文本

    dw

    dw会删除一个词。你应该可以看得出来,这里的w代表的就是word(词).其实d后面可以加好多东西来控制删除的对象。比如:

    d$

    会删除从当前位置到行末的所有内容。

    数字放在哪

    这里有一个疑问,如果想删除三个词,那么应该怎么办?是d3w,还是3dw。其实它们都能做到,不过原理不太一样。d3w是一次删除三个词,而3dw是执行三次删除一个词。其实这两者可以混起来,比如2d3w。

    改变文本

    c

    c用来改变文本。它的用法跟d一样。

    cc

    用来删除一行并进入输入状态。

    cw

    用来删除一个词并进入输入状态等。

    但是cw跟dw有一个不同之处。dw删除了一个词以后,还删除该词后面的空格。而cw只是会删除这个单词,空格仍然保留。

    .

    .命令会重复上一次所做的删除(d, x)或改变(c)命令。

    合并行

    J

    J(大写)将当下一行接在当前行后,并在两者间插入一个空格来合并这两行。

    替换字符

    r替换的字符

    r命令把当标处的字符替换成在r命令中指定的字符。

    更改大小写

    ~

    通过~可以把光标处的字符用它的大写(如果现在是小写)或小写(如果现在是大写)替换。

    Vim有着简洁而强大的宏功能。

    q宏名

    按下 q+宏名 后会进入宏录制状态,也就是说,此后发生的一切操作都会记录到名为“宏名”的宏中。如果名为“宏名”的宏已经存在,则将它覆盖。

    @宏名

    会调用名为“宏名”的宏。

    特殊字符

    当要输入特殊字符时,可以用

    Ctrl+k特殊字符代号

    可以通过命令

    :digraph

    来得到一个完整的对应表,来查看特殊符号所对应的代号。

    比如,要输入á, 则要通过下面的方法

    Ctrl+ka’

    留言

    Vim简明教程1:基本编辑

    这是我在看一本叫做Vim Tutorial的书时作的笔记,去掉了例子,作了一下总结。放上来作为一个Vim的小教程分享一下。本系列文章可转载,但请注明出处:http://mingfal.bloggerspaces.com

    开始之前要做的

    touch ~/.Vimrc

    这会创建空的~/.Vimrc文件,这会告诉Vim你想要让Vim以Vim方式工作。如果不这样做的话,Vim会以Vi兼空模式运行,会有好多有用的功能没法使用。这也可以在Vim运行过程中通过

    :set nocompatible

    来实现。

    第一运行Vim

    gVim file.txt

    会运行gvim(Vim的图行化前端),并在其中打开file.txt文件

    Vim命令

    Vim

    会让你在终端打开Vim编辑,而不是像刚才那样打开一个新的窗口。

    模式

    Vim是一个模式化的编辑器。也就是说,它在不同的模式下会有不同的表现。当最下面的一行是文件名或为空时表示正在普通模式。如果是–INSERT–表示是在编辑模式。而–VISUAL–则表示目前是可视化模式。

    插入文本

    i

    键入i后会从普通模式转变到编辑模式。此时输入的东西将会作为文件的一部分。

    当你编辑完毕后,按下就会从编辑模式转回普通模式。同时,不管现在是在什么模式下,都会把你带回普通模式。

    移动光标

    当你回到命令模式(即普通模式)时,可以用下面的键来移动光标

    h(左), j(下), k(上), l(右)

    这可能看上去比较奇怪,谁会用l去表示右???但是实际上这是有原因的。移动光标上是在编辑过程中经常要做的,而h , j, k, l就在放右手手指的地方,也就是说按这几个键是最快的。当然,也可以用方向键来移动光标,不过那会大大减低你的编辑速度。

    删除字符

    x

    当你想删除一个字符时,把光标移动到它上面,然后按下x键,它就会消失。

    撤消和重做

    u

    在普通模式下按下u会撤消上一布的操作。

    Ctrl+R

    如果撤消的次数过多,按下 Ctrl+R 会重做上次撤消的操作。

    U

    U(大字)是一个特殊的撤消键,它会撤消在在最后编辑的行上所作的所有操作。

    退出

    ZZ

    ZZ会退出Vim并对所编辑的文件保存。

    取消修改

    :q!

    当你编辑完一个文件发现你并不想这样编辑它时,:q! 会让你退出Vim而不保存所作的修改。

    追加

    a

    i会在光标所在安符前插入字符,而a会让你在当标所在的位置之后继续输入内容。

    删除一行

    dd

    dd命令会删除当前所在的一行内容。

    新开始一行内容

    o

    o命令会在光标所在行下面加入一行,并将光标移动的此行的开始以供输入。

    O

    如果想在光标所在行的上面加入一行,请使用命令O(大写)

    获得帮助

    :help

    :help命令让你可以进入和查看Vim的帮助。用ZZ退出帮助。同时可以用像在Vim一样的h, j, k, l键来移动光标。帮助中会有一些被竖线括起来的词,那其实是超级链接。用Ctrl+]就可以跟随它,Ctrl+t用来后退。如果要查找某一特定主题的帮助,使用

    :help 主题

    同时

    也会起到和:help一样的效果。

    重复命令

    当要做多次同样的操作时,可以用计数来加快这一过程。

    9k

    会让你向上移动9行。通过在命令前加一个数字n,就可以执行这一命令n次。

    Vim教程

    Vim自带了一份Vim教程

    :vimtutor

    会打开它。

     

    展开全文
  • 十一、上下左右移动光标位 private void moveLeft() { object moveUnit = Microsoft.Office.Interop.Word.WdUnits.wdWord; object moveCount = 1; object moveExtend = Microsoft.Office.Interop.Word....
  • SubCheckNum() iCount=0 iRow=ActiveSheet.Range("s65535").End(xlUp).Row'取最后一行 iCol=ActiveSheet.Range("dz2").End(xlToLeft).Column'取最后 MsgBox"i...
  • excel如何快速选择到最后一行

    千次阅读 2013-09-23 20:33:34
    利用ctrl+End可以快速移动到最后当前列最后一行,无论中间是否有空行。   利用ctrl+shift+end可以快速选中最后最后一行,无论中间是否有空格。   利用ctrl+g,输入定位区域,也可以实现任何一个区域的...
  • idea 快速从光标处选中内容行首或行尾
  • sublime 模式 编辑

    千次阅读 2018-07-17 11:18:54
    mac:option + 鼠标左键 按住左键不放,移动鼠标往下拉就能选中下面当 window: shift + 鼠标右键 如果每行的字符串长度不同,而你需要删除每行的最后几个字符时,可以如下操作 1. Ctrl+A 全选 2. Ctrl+Shift+...
  • 今天在公司的Windows server 2003服务器上安装oracle11g,安装文件两个多G,通过网络传输比较慢,就直接用移动硬盘复制,发现插服务器上不能显示出来移动硬盘,于是网上搜一下解决方法,我是用方法一就直接解决。...
  • excel将B数据放在A后面

    千次阅读 2020-04-01 15:20:57
    首先第一步,在a的后面写公式接上c的第一个选中A9行的右下角鼠标变成‘+’时向右移动 然后选中一行继续放在右下角显现‘+’往下移动直到那行出现全是0 然后在选中状态下右键复制占粘贴一下将带公式的单元格...
  • 2011-06-09 10:58:13更新只要把重载的selectrow函数中的setrow改为scrolltorow就可以很好的解决问题了 :) 在pb11.5中测试发现, scrolltorow总是可以正确的触发rowfocus事件,它不像setrow那样受item的focus的影响...
  • 二.移动 1.以word为单位进行移动 e/w 向前以word为单位移动 2.其他移动命令 ... G 文档最后一行第一 3.上下文搜索 1. /charactor 进行上下文搜索,按下回车后,可按下n进行下一个搜索,
  • 前言:移动智能设备的发展,推动了安卓另一个领域,包括智能电视和智能家居,以及可穿戴设备的大量使用,但是这些设备上的开发并不是和传统手机开发一样,特别是焦点控制和用户操作体验风格上有很大的区别,本系列...
  • vim 编辑

    千次阅读 2012-11-12 10:21:49
    有的时候,我们用vim进行编辑的时候...首先说编辑,光标移动到指定,然后ctrl+v进入选择状态,向下移动进行选择,或者直接按g,选中整列。如果要在前面进行插入,你可以按shift+i,就可以插入了,插入完后,按esc
  • 一种新的移动N层体系结构( 10部分)这是这个系列的最后一帖。为有一个完整的参考,这里出以前的部分: 第1部分 总体介绍 第2部分 谈了底层的变化(逻辑+数据,LINQ2SQL) 第3部分 讨论了消息通讯(WCF) 第...
  • Excel快捷键之移动&选择

    千次阅读 2016-12-12 20:42:32
     在Excel中【shift】是和选中有关的按键,【Ctrl】是和移动有关的按键,【Alt】是改变【PgUp】【PgDn】(下文称之为页面键)快捷键的方向。  1.【箭头键】组合  按【Ctrl】+【箭头键】可移动到工作表中当前...
  • gVim 按操作

    千次阅读 2019-05-14 14:09:45
    然后把光标移动(必须用h(左)j(下)k(上)l(右)键盘移动首行,最后,看到第一行已经选好了。然后输入(行数)j(例如1000000j)选定要删除多少行(多于最大行数则选定到最后一行)。再按d键,就可以删除...
  • web移动开发总结(三)

    千次阅读 2018-12-06 12:49:52
    移动京东的项目搭建 公共样式的定义 顶部通栏的布局 轮播图的布局 导航条的布局 秒杀商品布局 京东超市布局 原生移动web开发 响应式开发: 写一个页面同时适配多个终端 原生的移动web开发: 分别针对每个端都写...
  • 移动web开发笔记

    万次阅读 2016-05-15 20:12:27
    移动web开发笔记移动web开发笔记
  • 移动APP测试

    千次阅读 2018-09-11 15:33:04
    移动观象台:http://mi.talkingdata.com/terminals.html 1 确定APP的设备 选定被测试的设备终端。 记录设备的品牌 记录设备的型号 记录设备的屏幕分辨率 记录设备的屏幕大小 1.2 确定APP的版本 确定被测试的...
  • 移动 App 测试

    万次阅读 2017-12-11 15:05:15
    移动观象台:http://mi.talkingdata.com/terminals.html Snap2.jpg Snap3.jpg Snap4.jpg 1.1 确定APP的设备 选定被测试的设备终端。 记录设备的品牌 记录设备的型号 记录设备
  • IDEA操作

    千次阅读 2019-05-21 07:18:06
    但有时候的我们的内容没有共同特征,这时可以先选中内容,再按快捷键Shift+Alt+Insert,也可以进行操作,效果如图: 下面是一个更详细的操作编辑示例: 把一个Json状态码转为枚举类,原始的json状态码如下: ...
  • vi之操作——步步为营+实例

    千次阅读 2014-10-31 15:31:40
    3 j移动光标选择编辑行(按shift+g移动到文件底部) 4 输入大写I 5 输入输入要插入的文本 6 esc 7 保存完成 eg:文件内容如下: 12345 56789 67755 hghgh ... ... 45975 现在需在第一插入#, ...
  • vim 中如何进行编辑。

    万次阅读 2016-01-09 12:54:01
    在vim中编辑的功能还是经常使用的,使用了几次,特...2:选择所需要的:光标移动到要注释区块的最后一行(若干个j,或者直接输入行号再按G,或者按G到最后一行) 3:针对的操作: 例如  删除 输入d ;
  • vi之操作

    千次阅读 2018-08-10 10:01:54
    1、对插入步骤: ...  j移动光标选择编辑行(按shift+g移动到文件底部)  输入大写I  输入输入要插入的文本  esc  保存完成 eg:文件内容如下: 12345 56789 67755 hghgh ......
  • VIM编辑

    千次阅读 2013-08-07 23:18:43
    类似UltraEdit中编辑(Alt+C),称为模式。 VIM 中模式使用 ...选择区域块: 移动操作可以用于选择。 3. 操作: 删除 d(x等删除操作), 替换c, 插入 Shift+i (I)。 4. 操作作用:按两次ESE
  • 移动平台unity3d优化

    千次阅读 2013-12-28 15:13:48
    如果你想,你也可以直接使用GLSL,但是这样做会限制你发布在OpenGL的平台(例如移动平台+Mac),因为目前没有GLSLHLSL的转换工具。当你在HLSL中使用float/half/fixed 类型时,在GLSL ES中它们是由highp/mediump/...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 54,580
精华内容 21,832
关键字:

怎么选中列移动到最后