1 00:00:00,000 --> 00:00:02,590 >> [研讨会的Vim] 2 00:00:02,590 --> 00:00:04,210 [刘布兰登] [哈佛大学] 3 00:00:04,210 --> 00:00:07,500 [这是CS50。] [CS50.TV] 4 00:00:07,500 --> 00:00:09,880 >>今天将是一个介绍Vim的。 5 00:00:09,880 --> 00:00:12,310 怎么你们的很多人听说过的Vim? 6 00:00:12,310 --> 00:00:15,620 你听到了什么关于Vim? 7 00:00:15,620 --> 00:00:17,590 [学生]:它解决了所有的问题。 8 00:00:17,590 --> 00:00:19,450 [布兰登L.]它解决了所有的问题。 9 00:00:19,450 --> 00:00:23,840 别的你们听说过Vim的?任何印象如何? 10 00:00:23,840 --> 00:00:27,990 [学生]几乎每个人我已经说过了喜欢使用Vim的。 11 00:00:27,990 --> 00:00:29,960 哦,甜美。 12 00:00:29,960 --> 00:00:31,090 [学生]:很多人都知道我喜欢用Vim。 13 00:00:31,090 --> 00:00:35,050 好吧,这是很好的,因为有很多人在CS51 14 00:00:35,050 --> 00:00:38,000 开始回升的Emacs,因为Emacs有稍微更好的支持 15 00:00:38,000 --> 00:00:40,100 对于语言你会在CS51使用, 16 00:00:40,100 --> 00:00:42,770 我担心没有足够的人在哈佛使用Vim, 17 00:00:42,770 --> 00:00:46,190 所以我真的尝试做鼓励Vim的使用方面做得很好。 18 00:00:46,190 --> 00:00:51,110 >>但这里是一个典型的XKCD漫画的你们可能会觉得有趣。 19 00:00:51,110 --> 00:00:53,800 有你们用纳米之前呢? 20 00:00:53,800 --> 00:00:57,380 这本漫画说纳米?真正的程序员使用Emacs。 21 00:00:57,380 --> 00:00:59,040 嘿,真正的程序员用Vim。 22 00:00:59,040 --> 00:01:03,130 不,真正的程序员使用爱德是这个 - 你永远不要想用埃德。 23 00:01:03,130 --> 00:01:05,990 这是真的,真的老了,真的太差了,真正的程序员使用 24 00:01:05,990 --> 00:01:08,440 磁化针和一个稳定的手。 25 00:01:08,440 --> 00:01:16,010 而且你可以阅读休息,但它是相当有趣的。 26 00:01:16,010 --> 00:01:18,320 而有趣的是在最后。 27 00:01:18,320 --> 00:01:20,310 他们说,“当然,哦,是的,有一个Emacs命令来做到这一点。” 28 00:01:20,310 --> 00:01:25,050 好老的Cx MC M-蝴蝶,这是一个排序时戳的Emacs 29 00:01:25,050 --> 00:01:28,520 因为Emacs的是历史上被称为是一个有点臃肿 30 00:01:28,520 --> 00:01:32,310 并有命令,几乎所有的东西,所以这是个玩笑似的为Emacs的。 31 00:01:32,310 --> 00:01:35,320 >> Vim是什么? VIM是一种先进的程序员的文本编辑器。 32 00:01:35,320 --> 00:01:40,040 我真的想使文本编辑器之间的区别 33 00:01:40,040 --> 00:01:42,000 和类似的文档处理器。 34 00:01:42,000 --> 00:01:44,340 Microsoft Word中被称为一个文件处理器。 35 00:01:44,340 --> 00:01:49,090 可以设置页边距,使事情加粗,加下划线的东西, 36 00:01:49,090 --> 00:01:51,480 通过罢工的事情,改变字体大小和诸如此类的东西。 37 00:01:51,480 --> 00:01:54,380 一个文本编辑器做无非只是编辑文本。 38 00:01:54,380 --> 00:01:56,020 从字面上看,你只需要字符。 39 00:01:56,020 --> 00:02:01,650 有没有那种造型,大小,字体,颜色,或类似的东西的。 40 00:02:01,650 --> 00:02:06,360 你要做的就是编辑文本,而Vim编程而特别制作。 41 00:02:06,360 --> 00:02:09,240 它有很多内置在短短的编程功能。 42 00:02:09,240 --> 00:02:11,360 它明确地专为高效的文本编辑。 43 00:02:11,360 --> 00:02:15,190 >>总的来说,Vim中是已知的,基本上最快的文本编辑器 44 00:02:15,190 --> 00:02:19,110 你可以使用一个带任何其他文本编辑器,有可能进行比较。 45 00:02:19,110 --> 00:02:22,480 很多IDE的类似的功能不直接内置到Vim中, 46 00:02:22,480 --> 00:02:26,850 所以如果你使用的IDE和你已经习惯了像编译和自动运行 47 00:02:26,850 --> 00:02:30,880 或调试什么在你的IDE或不同的东西一大堆 48 00:02:30,880 --> 00:02:32,290 Vim不会来与自然, 49 00:02:32,290 --> 00:02:36,330 但有一大堆的插件,你可以用它来之类的功能添加到Vim中。 50 00:02:36,330 --> 00:02:40,890 Vim的本身侧重于文本编辑和做文字编辑真的,真的很好。 51 00:02:40,890 --> 00:02:43,340 最后,它是真正可定制和可扩展的, 52 00:02:43,340 --> 00:02:48,740 而且基本的Vim已经出现,或VI,其中的Vim是建立在, 53 00:02:48,740 --> 00:02:53,790 已经存在了超过40年,这是一个非常,非常深的程序, 54 00:02:53,790 --> 00:02:58,850 人们会用它一辈子,从不真正掌握程序发挥到极致, 55 00:02:58,850 --> 00:03:01,530 而你将永远继续学习贯穿你的生活,多年来, 56 00:03:01,530 --> 00:03:03,390 总是越来越好。 57 00:03:03,390 --> 00:03:07,480 >>有基本没有结束你可以学到什么,有多少你可以用Vim的提高, 58 00:03:07,480 --> 00:03:09,300 这实在是令人振奋的。 59 00:03:09,300 --> 00:03:12,730 你不想把它当作可怕的东西,因为你可能会变得非常,非常精通 60 00:03:12,730 --> 00:03:16,650 在Vim中,在短短几个星期,但它有点像一个持续的, 61 00:03:16,650 --> 00:03:18,870 你总是可以学到更多,学到更多,做的东西好, 62 00:03:18,870 --> 00:03:20,880 这对我来说是很兴奋。 63 00:03:20,880 --> 00:03:23,810 这是一个什么样的Vim看起来像一个例子。 64 00:03:23,810 --> 00:03:27,630 这不是我的。你会看到一些现场演示现在。 65 00:03:27,630 --> 00:03:29,350 这是Vim的可能是什么样子的例子。 66 00:03:29,350 --> 00:03:33,590 >>什么我们今天要做的是我们要开始了与 67 00:03:33,590 --> 00:03:35,260  快速展示一下Vim可以做。 68 00:03:35,260 --> 00:03:39,040 我会做一些技巧和诸如此类的东西对你们 69 00:03:39,040 --> 00:03:43,020 所以你可以看到为什么我喜欢Vim的这么多,为什么人们喜欢Vim的那么多, 70 00:03:43,020 --> 00:03:46,470 然后从那里我们将进入一个简单的介绍。 71 00:03:46,470 --> 00:03:49,530 事实上,这将是一个有点快,介绍了Vim的。 72 00:03:49,530 --> 00:03:53,410 我会问你们去下载一个文本文件,并与我跟着如果你能。 73 00:03:53,410 --> 00:03:58,080 这是Vim的,而且在这里我使用的MacVim, 74 00:03:58,080 --> 00:04:00,520 所以如果你们有苹果电脑你可能要考虑使用的MacVim 75 00:04:00,520 --> 00:04:04,210 因为它的Vim的图形化版本,虽然正规的Vim, 76 00:04:04,210 --> 00:04:06,210 什么在你的命令行,工作得很好。 77 00:04:06,210 --> 00:04:09,890 我要告诉你一些随机的技巧和窍门 78 00:04:09,890 --> 00:04:15,330 您可以使用Vim会告诉你为什么它是如此凉爽。 79 00:04:15,330 --> 00:04:18,940 >>就在几个随机的东西我会去。 80 00:04:18,940 --> 00:04:21,700 的第一件事是文本对象,并有周围的文本对象的几个命令, 81 00:04:21,700 --> 00:04:25,010 而我居然会教你什么文本对象在后面详细的研讨会上, 82 00:04:25,010 --> 00:04:30,050 但例如,让我们说我我的名字拼错, 83 00:04:30,050 --> 00:04:32,380 Barndon刘,我想改变它。 84 00:04:32,380 --> 00:04:36,140 我所要做的就是让我的光标在某个地方我在命令名称和类型 85 00:04:36,140 --> 00:04:38,900 CIW,它会删除我的全名,把我在插入模式下, 86 00:04:38,900 --> 00:04:41,050 我可以输入我的名字,并修复它。 87 00:04:41,050 --> 00:04:45,550 同样,如果我想改变引号内的东西有也是一个命令。 88 00:04:45,550 --> 00:04:47,330 我可以删除引号内的东西。 89 00:04:47,330 --> 00:04:50,260 没有更多的双击,移动你的手放在鼠标, 90 00:04:50,260 --> 00:04:52,230 双击,然后输入一些内容。互动 91 00:04:52,230 --> 00:05:02,000 您可以从键盘做的一切,不管它是什么。 92 00:05:02,000 --> 00:05:06,430 或者,或者,让我们说我有这样的图像标记这个锚标记内。 93 00:05:06,430 --> 00:05:08,160 >>有你们的HTML覆盖在课堂上了吗? 94 00:05:08,160 --> 00:05:10,570 是啊,也许我想删除这个标签, 95 00:05:10,570 --> 00:05:13,080 通常你所要做的就是,你必须使用你的鼠标 96 00:05:13,080 --> 00:05:16,040 并仔细高亮显示您希望删除,并删除它到底是什么。 97 00:05:16,040 --> 00:05:21,320 但在Vim中,这根本DIT,你真的可以快速删除它, 98 00:05:21,320 --> 00:05:28,020 我会向你解释什么所有这些命令的意思是,你如何使用它们在第二。 99 00:05:28,020 --> 00:05:30,320 另外一个例子,我有一些代码在这里, 100 00:05:30,320 --> 00:05:33,640 让我们说我要缩进的代码,但我要缩进的代码 101 00:05:33,640 --> 00:05:39,940 只是在括号内,而我也可以使用3个命令缩进代码 102 00:05:39,940 --> 00:05:45,360 使用基本> IB。 103 00:05:45,360 --> 00:05:49,960 另一件事,真的很酷关于Vim是一种叫做可视块编辑。 104 00:05:49,960 --> 00:05:52,380 我不知道,如果你们曾经想突出 105 00:05:52,380 --> 00:05:55,690 文字在你的代码中的矩形块,有时 106 00:05:55,690 --> 00:06:00,570 而不必做这种怪异的那种东西线跨越所有不同的线路。 107 00:06:00,570 --> 00:06:02,450 例如,在Vim中你可以做到这一点。 108 00:06:02,450 --> 00:06:05,260 我可以突出显示矩形就是这样,这是很酷, 109 00:06:05,260 --> 00:06:07,950 但同时,我可以编辑使用该功能。 110 00:06:07,950 --> 00:06:12,050 例如,如果我想给一些前缀给我们所有的名字 111 00:06:12,050 --> 00:06:18,100 我可以突出一个块,然后添加一些东西。 112 00:06:18,100 --> 00:06:22,060 >>同样,我也可以突出这个块,并选择将其删除, 113 00:06:22,060 --> 00:06:26,300 也许我将重点介绍该块并将其更改为D,因为我们都是医生。 114 00:06:26,300 --> 00:06:29,430 不管是什么,你可以做所有这些不同的事情。 115 00:06:29,430 --> 00:06:31,270 最后,折叠是真的很酷。 116 00:06:31,270 --> 00:06:33,840 很多的IDE有这个,你可以折叠不同的功能拿出来看 117 00:06:33,840 --> 00:06:35,590 如果你不想看到他们。 118 00:06:35,590 --> 00:06:40,120 例如,假设我有这样的一堆文字在这里,我真的不希望看到它。 119 00:06:40,120 --> 00:06:42,710 我想保持它的看法,因为我编辑别的文件中。 120 00:06:42,710 --> 00:06:50,580 我可以把它折叠起来使这一切都崩溃了, 121 00:06:50,580 --> 00:06:52,150 而这种方式是拿出来看, 122 00:06:52,150 --> 00:06:54,310 我可以编辑的页面上的其他东西,这真是太棒了。 123 00:06:54,310 --> 00:06:57,550 您可以折叠起来的功能和诸如此类的东西或折叠起来的类,当你编程 124 00:06:57,550 --> 00:06:59,380 只是为了让他们拿出来看,当你不编辑它们, 125 00:06:59,380 --> 00:07:04,330 后来当你想看到他们,你可以打开它们。 126 00:07:04,330 --> 00:07:09,260 而且你可以看到它刚开业一切。 127 00:07:09,260 --> 00:07:11,220 制表符,缓冲区和窗口。 128 00:07:11,220 --> 00:07:13,260 Vim的是在这很酷 129 00:07:13,260 --> 00:07:16,280 通常在很多文本编辑器只能编辑一个文件时, 130 00:07:16,280 --> 00:07:18,960 像纳米,或者如果你使用记事本或gedit的。 131 00:07:18,960 --> 00:07:21,470 我其实从来没有使用gedit的非常多,但至少在记事本+ + 132 00:07:21,470 --> 00:07:26,700 你可以有标签,但Vim有标签,缓冲区和窗口的概念。 133 00:07:26,700 --> 00:07:28,760 例如,您可以打开了一堆新的标签。 134 00:07:28,760 --> 00:07:31,790 >>您可以在这里看到,在最高层我现在有一堆选项卡, 135 00:07:31,790 --> 00:07:34,350 我可以关闭它们。 136 00:07:34,350 --> 00:07:37,550 另外,还有缓冲器的概念, 137 00:07:37,550 --> 00:07:40,110 这是想法,一旦你打开一个文件 138 00:07:40,110 --> 00:07:43,910 它停留在活着的缓冲区,如果你想真正快速定位到该文件 139 00:07:43,910 --> 00:07:46,290 您可以在缓冲区内找到它真的很快为好, 140 00:07:46,290 --> 00:07:51,890 进而,在一个窗格中,您也可以分割你的窗口分成多个窗口。 141 00:07:51,890 --> 00:07:55,890 举例来说,如果我想要分割窗口分成多个窗口 142 00:07:55,890 --> 00:08:00,080 你可以看到在这里,我可以有两次相同的密码, 143 00:08:00,080 --> 00:08:03,800 我可以分裂越来越多,而现在它看起来并不好 144 00:08:03,800 --> 00:08:07,340 因为默认情况下我有默认的窗口大小是那种大 145 00:08:07,340 --> 00:08:09,490 因此,所有的人都压扁了, 146 00:08:09,490 --> 00:08:12,000 但通常,当我在我的电脑,而不是这台投影机上 147 00:08:12,000 --> 00:08:15,920 我可以有几个窗格打开在同一时间,这是非常好的对 148 00:08:15,920 --> 00:08:21,450 编辑多个文件在​​同一时间。 149 00:08:21,450 --> 00:08:23,800 你也可以有东西像选择和替换, 150 00:08:23,800 --> 00:08:27,900 我们将实际上涵盖在研讨会上, 151 00:08:27,900 --> 00:08:29,250 所以我将跳过,对于现在。 152 00:08:29,250 --> 00:08:32,039 您也可以用在各种不同的方式在命令行交互。 153 00:08:32,039 --> 00:08:36,380 例如,如果我这里有一些名单,我想对它进行排序, 154 00:08:36,380 --> 00:08:43,039 我不知道,让我们添加另一个水果,葡萄, 155 00:08:43,039 --> 00:08:45,450 我可以使用高亮功能突出这 156 00:08:45,450 --> 00:08:48,980 并调用排序,它会自动排序对我来说。 157 00:08:48,980 --> 00:08:52,150 >>同样,如果你要进行编辑的CSS,我相信你可能会做 158 00:08:52,150 --> 00:08:54,190 为您的最终项目,大多数人做的, 159 00:08:54,190 --> 00:09:00,200 也许你想保持你的CSS按字母顺序排序这些组织。 160 00:09:00,200 --> 00:09:04,410 您也可以选中它们,并调用排序,它会整理它们。 161 00:09:04,410 --> 00:09:07,380 这些都是一些的东西,Vim可以做例子, 162 00:09:07,380 --> 00:09:10,760 你会发现,我真正想要的关键是要提请你注意 163 00:09:10,760 --> 00:09:14,740 是,我是从键盘做的一切, 164 00:09:14,740 --> 00:09:18,020 如果你能看到我的手放在 165 00:09:18,020 --> 00:09:21,210 你还会看到我的手从来没有真正从母排移动。 166 00:09:21,210 --> 00:09:24,790 通常,当你正在编辑的文本,通常必须先使用鼠标 167 00:09:24,790 --> 00:09:28,030 并点击和诸如此类的东西,和那种运动的拖累你失望 168 00:09:28,030 --> 00:09:32,280 和浪费时间,或者你家里行和箭头键之间移动, 169 00:09:32,280 --> 00:09:35,620 所以你来回移动这样的,这是一个有点麻烦 170 00:09:35,620 --> 00:09:38,750 但也减慢你失望的,就是一旦你在Vim的真的很不错 171 00:09:38,750 --> 00:09:42,350 你想要做的一切,而不必移动你的手做 172 00:09:42,350 --> 00:09:50,730 从母排,这是伟大的。 173 00:09:50,730 --> 00:09:54,870 等一下,我要打开这个应用程序。我们走吧。 174 00:09:54,870 --> 00:09:58,320 >>现在你可以看到什么命令都跑到右下角的窗口。 175 00:09:58,320 --> 00:10:03,190 所有,我只是表明你是被默认包含Vim的东西的功能, 176 00:10:03,190 --> 00:10:06,820 但也有一个巨大的插件,你也可以用数 177 00:10:06,820 --> 00:10:08,390 提高你的Vim的经验。 178 00:10:08,390 --> 00:10:10,540 如果您下载了我包括配置文件, 179 00:10:10,540 --> 00:10:13,150 并有关于如何安装他们在PowerPoint中的说明 180 00:10:13,150 --> 00:10:17,840 以及在电子邮件我送出去,我已经安装了约40插件 181 00:10:17,840 --> 00:10:20,490 也许30插件,每一一个 182 00:10:20,490 --> 00:10:24,000 带来了额外的功能,Vim会提高你的Vim的经验。 183 00:10:24,000 --> 00:10:26,960 例如,我的最爱之一是一种叫做surround.vim, 184 00:10:26,960 --> 00:10:29,760 它基本上可以让你与周围的工作 185 00:10:29,760 --> 00:10:32,200 或分隔字符更容易。 186 00:10:32,200 --> 00:10:35,960 >>一个例子,我不知道你们在LaTeX永远代码, 187 00:10:35,960 --> 00:10:38,830 但乳胶是一种用于使一个数学排版语言 188 00:10:38,830 --> 00:10:42,950 非常好看的数学,每当你想要的东西看起来像数学 189 00:10:42,950 --> 00:10:47,050 你把它包在美元符号,并让我们说我打字的一些公式如F = MA, 190 00:10:47,050 --> 00:10:49,240 我忘了把它包在美元符号。 191 00:10:49,240 --> 00:10:58,270 然后,我可以强调这一点,并把它包在美元符号就这样。 192 00:10:58,270 --> 00:11:03,640 另外,Vim允许你删除标签内的事情 193 00:11:03,640 --> 00:11:07,300 和删除标签和诸如此类的东西,但Vim的性质 194 00:11:07,300 --> 00:11:10,400 不允许您更改标签,因此,例如,我有这样的div标签, 195 00:11:10,400 --> 00:11:13,060 我想升级到HTML5和使用新的头标记。 196 00:11:13,060 --> 00:11:22,290 我可以做改变周围的标记和类型的头, 197 00:11:22,290 --> 00:11:26,540 它会自动改变,对我来说。 198 00:11:26,540 --> 00:11:29,620 同样,假设我们有东西在括号中, 199 00:11:29,620 --> 00:11:33,230 我想改变,从括号放在括号中或类似的东西。 200 00:11:33,230 --> 00:11:36,520 我也可以改变,真正轻松地通过键入C语言的变化, 201 00:11:36,520 --> 00:11:39,330 S代表环绕,括号中。 202 00:11:39,330 --> 00:11:42,170 哦,我想我必须更快型。 203 00:11:42,170 --> 00:11:45,380 括号和大括号或中括号,它会自动改变,对我来说, 204 00:11:45,380 --> 00:11:48,570 这是非常好的,否则通常它真的很麻烦。 205 00:11:48,570 --> 00:11:51,310 >>这是非常好的也许单引号之间切换 206 00:11:51,310 --> 00:11:53,060 和双引号字符串或类似的东西。 207 00:11:53,060 --> 00:11:56,250 这是一个示例用例。 208 00:11:56,250 --> 00:11:58,750 有一个叫逃犯插件 209 00:11:58,750 --> 00:12:00,260 它集成了使用Git。 210 00:12:00,260 --> 00:12:03,000 我猜也许你们还没有使用Git的那么多的CS50, 211 00:12:03,000 --> 00:12:05,530 但你会发现自己使用Git越来越多, 212 00:12:05,530 --> 00:12:09,530 不仅在整个班级哈佛,而且在工作和诸如此类的东西, 213 00:12:09,530 --> 00:12:12,650 而通常你必须之间来回切换 214 00:12:12,650 --> 00:12:15,950 命令行和Vim用Git的互动, 215 00:12:15,950 --> 00:12:18,590 但有插件来使用Git从内部集成Vim 216 00:12:18,590 --> 00:12:23,020 同时也给你的Git之上,甚至更多的功能。 217 00:12:23,020 --> 00:12:25,520 还有一种叫NERDTree,你可以用它来探索 218 00:12:25,520 --> 00:12:27,860 该文件结构在Vim内。 219 00:12:27,860 --> 00:12:31,710 >>例如,我可以打开NERDTree在右窗格中, 220 00:12:31,710 --> 00:12:35,100 你基本上可以看到随机文件 221 00:12:35,100 --> 00:12:38,720 和开不税,不看我的税。 222 00:12:38,720 --> 00:12:43,460 你可以看一下文件和诸如此类的东西,并打开其他文件等等等等。 223 00:12:43,460 --> 00:12:47,610 我不会去为其他的插件,所以我们基本可以在潜水 224 00:12:47,610 --> 00:12:51,640 并开始开发Vim,但也有插件,让您 225 00:12:51,640 --> 00:12:55,420 更轻松地发表意见,插件,让您更轻松地跳档之间, 226 00:12:55,420 --> 00:12:57,820 插件,让你的语法在Vim内检查, 227 00:12:57,820 --> 00:13:00,210 这是真的很酷,和它给你的语法检查 228 00:13:00,210 --> 00:13:03,710 对于大多数语言正确的开箱即用, 229 00:13:03,710 --> 00:13:07,460 事情像彩虹括号,这实际上是真的,真的很酷。 230 00:13:07,460 --> 00:13:09,110 让我给你这样一个例子,现在。 231 00:13:09,110 --> 00:13:11,150 >>让我们来看看。 232 00:13:11,150 --> 00:13:15,460 下面是我在写一些随机代码, 233 00:13:15,460 --> 00:13:19,720 你会发现,括号和括号都是彩色的, 234 00:13:19,720 --> 00:13:26,120 和同色的括号和括号匹配,这是很好的 235 00:13:26,120 --> 00:13:29,380 有时提高了代码的可读性。 236 00:13:29,380 --> 00:13:32,030 您还可以自动完成,表格格式。 237 00:13:32,030 --> 00:13:37,240 当你有,你想获得的所有注释排队的东西 238 00:13:37,240 --> 00:13:40,820 或者你想使一个表中的文字,你要 239 00:13:40,820 --> 00:13:43,870 把一切看,而不必手动格式化,像一个漂亮的表, 240 00:13:43,870 --> 00:13:46,830 有插件,会格式化你等等,等等。 241 00:13:46,830 --> 00:13:49,400 这样的例子不胜枚举和和。 242 00:13:49,400 --> 00:13:53,890 我可以花时间探索所有存在不同的Vim插件, 243 00:13:53,890 --> 00:13:59,780 和它的令人难以置信的外面的东西。 244 00:13:59,780 --> 00:14:05,880 >>到目前为止,有问题吗?甜蜜。 245 00:14:05,880 --> 00:14:10,180 在这种情况下,我们将开始用Vim玩弄, 246 00:14:10,180 --> 00:14:12,620 我想你们的工作有一些Vim的我 247 00:14:12,620 --> 00:14:17,650 这样你就可以感受得到它,我可以指导你用Vim工作的第一步 248 00:14:17,650 --> 00:14:20,590 因为很多人不堪重负,当他们打开Vim的了, 249 00:14:20,590 --> 00:14:24,730 有时,如果你甚至不知道该命令退出,你甚至不能脱身的Vim, 250 00:14:24,730 --> 00:14:26,350 但它不是那么糟糕。 251 00:14:26,350 --> 00:14:28,820 你只是从别人谁也有用的Vim需要指导几分钟 252 00:14:28,820 --> 00:14:32,220 或阅读一些教程在网上,你会用自己的方式在任何时间。 253 00:14:32,220 --> 00:14:34,570 这里有一些说明来安装Vim的,如果你还没有。 254 00:14:34,570 --> 00:14:39,130 你可以提出后看看这些幻灯片,如果你想安装更多的东西。 255 00:14:39,130 --> 00:14:42,660 >>此外,这些都为我的安装配置文件的一些指令, 256 00:14:42,660 --> 00:14:48,230 你也可以在以后遵循这些说明,如果你还没有。 257 00:14:48,230 --> 00:14:52,390 如果你们可以去这个网站,并下载一个文本文件。 258 00:14:52,390 --> 00:14:56,640 该链接将带你到这个文本文件,我想请你下载并在Vim中开拓, 259 00:14:56,640 --> 00:15:01,580 并有一堆练习和诸如此类的东西在那里,你可以和我一起跟随周边 260 00:15:01,580 --> 00:15:09,160 并开始得到一些做法与一些Vim的基本操作。 261 00:15:09,160 --> 00:15:12,740 好。 262 00:15:12,740 --> 00:15:18,430 当你打开那个了,我要去给一个简短的介绍,以2真正的关键原则 263 00:15:18,430 --> 00:15:23,080 在Vim的编辑,这是真正重要的是了解你潜入Vim的时候, 264 00:15:23,080 --> 00:15:25,720 这就是模式的编辑和运营商和议案。 265 00:15:25,720 --> 00:15:28,600 我将介绍莫代尔编辑第一,然后我们将讨论运营商和运动 266 00:15:28,600 --> 00:15:30,980 在一点点。 267 00:15:30,980 --> 00:15:36,910 >> Vim的和几乎所有其他的第一个关键区别 268 00:15:36,910 --> 00:15:39,870 任何形式的文本编辑器就是Vim的是一个模式的编辑器, 269 00:15:39,870 --> 00:15:42,260 而当你使用Vim的意思是指 270 00:15:42,260 --> 00:15:44,120 你可以在许多不同的模式之一。 271 00:15:44,120 --> 00:15:46,590 有普通模式,还有插入模式,有可视化模式, 272 00:15:46,590 --> 00:15:50,790 等等等等,而事情是,你的按键采取不同的行动, 273 00:15:50,790 --> 00:15:54,160 采取不同的含义,这取决于你是哪个模式中。 274 00:15:54,160 --> 00:15:58,110 正如一个例子,正常模式下是你,当你走动的方式, 275 00:15:58,110 --> 00:16:01,820 所以我会用钥匙J可向下移动, 276 00:16:01,820 --> 00:16:05,430 但在插入模式下,您可以使用键J可实际键入通知J在屏幕上, 277 00:16:05,430 --> 00:16:08,230 这就是为什么很多人感​​到困惑,因为他们不习惯 278 00:16:08,230 --> 00:16:11,630 在不同的模式是所有的时间,所以他们会打字出来的东西, 279 00:16:11,630 --> 00:16:14,490 而你习惯了不管你输入显示在屏幕上, 280 00:16:14,490 --> 00:16:18,370 但在Vim中也许你的光标移动所有的地方 281 00:16:18,370 --> 00:16:21,020 因为你输入的字符怪异,突然你会得到 282 00:16:21,020 --> 00:16:24,710 转移到插入模式,因为您键入一些关键 283 00:16:24,710 --> 00:16:27,150 这使你进入插入模式,然后文本开始飞了出去, 284 00:16:27,150 --> 00:16:29,940 很容易让人因为这一点困惑。 285 00:16:29,940 --> 00:16:32,960 但是你要跟踪你在什么模式下, 286 00:16:32,960 --> 00:16:35,260 并且,如果你的Vim的底部工具栏 287 00:16:35,260 --> 00:16:37,410 应该有一个指示灯,告诉你,你现在在什么模式下, 288 00:16:37,410 --> 00:16:39,350 这应该是有帮助的。 289 00:16:39,350 --> 00:16:42,650 >>但在一般情况下,3个主要模式,你应该知道, 290 00:16:42,650 --> 00:16:46,440 有可能只有6或7或8或模式的话, 291 00:16:46,440 --> 00:16:49,180 但是你花大部分的时间在3。 292 00:16:49,180 --> 00:16:52,150 第一件事就是正常模式。这是你花你的大部分时间。 293 00:16:52,150 --> 00:16:55,620 所有击键记录为某种命令, 294 00:16:55,620 --> 00:16:58,870 而我们将全天今天学习了很多的命令。 295 00:16:58,870 --> 00:17:03,160 另一种模式是插入模式,这就是你真正打字出来的东西, 296 00:17:03,160 --> 00:17:06,410 和插入模式基本上是你平时用的模式。 297 00:17:06,410 --> 00:17:08,650 你输入的东西,它只是涉及在屏幕上, 298 00:17:08,650 --> 00:17:11,800 和视觉模式的东西,你可以做高亮。 299 00:17:11,800 --> 00:17:14,750 你前面看到的地方,有时我会被突出显示文本 300 00:17:14,750 --> 00:17:21,900 并操纵它以不同的方式,那就是使用可视化模式的一个例子。 301 00:17:21,900 --> 00:17:27,819 >>我们将与您需要在Vim中生存的绝对基本的开始吧, 302 00:17:27,819 --> 00:17:30,610 它基本上是这7个命令就在这里。 303 00:17:30,610 --> 00:17:34,250 HJKL使用来浏览周围的文件, 304 00:17:34,250 --> 00:17:37,140 和它们对应于左,下,上和右, 305 00:17:37,140 --> 00:17:39,460 而你可以自由地使用箭头键为好, 306 00:17:39,460 --> 00:17:43,110 但我们真的鼓励您使用HJKL尽可能 307 00:17:43,110 --> 00:17:46,690 因为这个想法是,你正在编辑的同时,你可以在文档中移动 308 00:17:46,690 --> 00:17:49,350 而无需移动的箭头键之间 309 00:17:49,350 --> 00:17:52,210 并在你打字,这是真的,真的很好。 310 00:17:52,210 --> 00:17:54,390 你只是想在移动几个字符。 311 00:17:54,390 --> 00:17:58,020 你没有给你的整个移交移位,这是种不错的了。 312 00:17:58,020 --> 00:18:01,920 一些Vim的专家其实他们的方向键映射到其他功能 313 00:18:01,920 --> 00:18:06,880 因为他们已经有HJKL,并且它们可以用于其它功能的方向键,以及。 314 00:18:06,880 --> 00:18:09,080 HJKL移动你身边,而你在正常模式。 315 00:18:09,080 --> 00:18:11,650 如果你想进入插入模式并输入一些内容 316 00:18:11,650 --> 00:18:15,370 您可以按i插入模式,并让你在插入模式下, 317 00:18:15,370 --> 00:18:17,820 您可以输入一些东西,而你输入逃逸 318 00:18:17,820 --> 00:18:20,270 从插入模式,回到正常模式。 319 00:18:20,270 --> 00:18:23,280 逃避永远向您发送回正常模式 320 00:18:23,280 --> 00:18:26,740 无论你是在的,如果有什么模式,你要离开 321 00:18:26,740 --> 00:18:29,760 您可以键入:WQ进入, 322 00:18:29,760 --> 00:18:32,640 你能记住这一点的方法是w代表写, 323 00:18:32,640 --> 00:18:34,960 和q表示退出,所以:WQ, 324 00:18:34,960 --> 00:18:39,680 和结肠运行命令,所以:WQ输入要运行的命令 325 00:18:39,680 --> 00:18:41,840 保存并退出。 326 00:18:41,840 --> 00:18:46,700 >>如果你打开​​该文件了,我们将通过第一个练习一起去。 327 00:18:46,700 --> 00:18:49,450 步骤1尚存在Vim中, 328 00:18:49,450 --> 00:18:53,490 并希望你们都有这个开放。 329 00:18:53,490 --> 00:18:58,460 好了,我们有一些简单的练习,为您习惯使用这些键。 330 00:18:58,460 --> 00:19:03,000 HJKL确实似乎直观起初不, 331 00:19:03,000 --> 00:19:08,710 这是初始块1,而使用Vim的人们有 332 00:19:08,710 --> 00:19:10,820 就是使用这些键来浏览周围。 333 00:19:10,820 --> 00:19:13,650 这不是直观的,但一旦你习惯了它 334 00:19:13,650 --> 00:19:19,590 果然集成到你的头脑,而且很多人经常发现自己 335 00:19:19,590 --> 00:19:23,550 在Word或同时在Chrome中使用J和K, 336 00:19:23,550 --> 00:19:26,530 实际上人们已经创造了这个浏览器插件叫做Vimium 337 00:19:26,530 --> 00:19:29,220 您可以使用在Chrome或铬来浏览Chrome浏览器 338 00:19:29,220 --> 00:19:31,380 用Vim般的快捷键使用键盘, 339 00:19:31,380 --> 00:19:35,050 所以人们都非常热衷,但继续尝试和使用 340 00:19:35,050 --> 00:19:41,720 HJKL的数字之间进行导航,所以您可以熟悉 341 00:19:41,720 --> 00:19:45,660 这些东西是如何工作的。 342 00:19:45,660 --> 00:19:50,440 >>一旦你完成,你也可以去玩弄这个迷宫,我创建 343 00:19:50,440 --> 00:19:53,580 只是为了好玩,你可以排序按照虚线 344 00:19:53,580 --> 00:19:59,060 尽量不要撞到墙上 345 00:19:59,060 --> 00:20:07,860 并尽量做到迷宫的尽头。 346 00:20:07,860 --> 00:20:11,840 如果你使用Gmail的快捷方式或任何数量的不同应用 347 00:20:11,840 --> 00:20:15,130 你会发现,J和K,例如,经常被用来上下移动, 348 00:20:15,130 --> 00:20:19,930 而且主要来自Vim的本质,所以你有J和K, 349 00:20:19,930 --> 00:20:22,690 它真的很好,因为你可以上下移动,而无需 350 00:20:22,690 --> 00:20:26,210 移动你的手来回的箭头键。 351 00:20:26,210 --> 00:20:29,410 现在让我们尝试进入插入模式,走出的插入模式。 352 00:20:29,410 --> 00:20:34,370 你会发现,现在我的光标是一个大大的黑盒子, 353 00:20:34,370 --> 00:20:37,300 而当你进入插入模式,你会发现, 354 00:20:37,300 --> 00:20:39,670 它变成一个狭窄的游标就像你已经习惯了。 355 00:20:39,670 --> 00:20:43,730 如果你使用的Vim的终端,你可能不会发现这是事实 356 00:20:43,730 --> 00:20:46,970 因为终端不支持这种薄光标, 357 00:20:46,970 --> 00:20:49,890 但如果你使用的MacVim或gVim的Windows上 358 00:20:49,890 --> 00:20:54,590 然后你会发现,它变成一个游标,这是一个非常快速的可视指示器。 359 00:20:54,590 --> 00:20:58,270 这对你,告诉你无论你在正常模式或插入模式。 360 00:20:58,270 --> 00:21:02,890 >>让我们继续前进,并尝试编辑这条线。 361 00:21:02,890 --> 00:21:06,220 它使用自己的信息或不管它是补中, 362 00:21:06,220 --> 00:21:11,750 以及如何做到这一点是您可以移动到空白的结束, 363 00:21:11,750 --> 00:21:16,040 TYPE I进入插入模式,你可以退格 364 00:21:16,040 --> 00:21:21,100 并输入你的名字,当你完成输入 365 00:21:21,100 --> 00:21:26,520 您可以按Escape键离开插入模式, 366 00:21:26,520 --> 00:21:35,930 你可以搬过来这里,类型插入,删除的是, 367 00:21:35,930 --> 00:21:42,700 键入逃生摆脱插入模式​​,你可以输入:w进入 368 00:21:42,700 --> 00:21:44,720 保存该文件。 369 00:21:44,720 --> 00:21:47,420 您可以输入刚:w来保存文件。 370 00:21:47,420 --> 00:21:50,560 您可以输入刚:Q不保存退出, 371 00:21:50,560 --> 00:21:53,750 或者您可以键入:wq保存并退出。 372 00:21:53,750 --> 00:21:58,850 当然,我们并不想退出,因此你可以键入:瓦特 373 00:21:58,850 --> 00:22:01,780 也许这似乎有点低效先 374 00:22:01,780 --> 00:22:05,600 因为移动到那个地方你不得不J型一群倍, 375 00:22:05,600 --> 00:22:08,670 也许我一堆时间去那个地方, 376 00:22:08,670 --> 00:22:11,260 你必须按退格一群倍,似乎真的没有效率 377 00:22:11,260 --> 00:22:13,260 而通常你可能会移动你的鼠标移到那里, 378 00:22:13,260 --> 00:22:15,880 双击并开始打字,当然, 379 00:22:15,880 --> 00:22:19,190 事情是,当你第一次开始Vim的,你只知道这些基本的命令, 380 00:22:19,190 --> 00:22:22,810 是的,这将是一个有点慢,但很快你学习一些更强大的命令, 381 00:22:22,810 --> 00:22:26,380 这将允许您在整个文件更快速地移动, 382 00:22:26,380 --> 00:22:29,410 你不会有这个很麻烦的使用 383 00:22:29,410 --> 00:22:34,330 重复的JS和重复KS和LS等等等等。 384 00:22:34,330 --> 00:22:41,340 >>到目前为止,有问题吗?固体。 385 00:22:41,340 --> 00:22:44,000 返回到PowerPoint中。 386 00:22:44,000 --> 00:22:49,140 现在,我们要引入先进的运动几个命令。 387 00:22:49,140 --> 00:22:52,680 你经历不必键入也许我有很多或H了很多, 388 00:22:52,680 --> 00:22:57,200 这里有一些更多的命令,你可以用它来更快地走动。 389 00:22:57,200 --> 00:23:02,990 假设你的光标在O上的一些“这是一些文本。” 390 00:23:02,990 --> 00:23:06,840 这里有5个命令,你可以用它来跨线更容易移动。 391 00:23:06,840 --> 00:23:09,820 所以,^和$分别移动到开始和结束行, 392 00:23:09,820 --> 00:23:14,300 在某些时候,当你学习正则表达式或其他各种事情 393 00:23:14,300 --> 00:23:17,390 你会发现,这些排序约定的情况非常普遍。 394 00:23:17,390 --> 00:23:19,360 在^一般是指该行的开头。 395 00:23:19,360 --> 00:23:21,090 元通常指的是行的结尾。 396 00:23:21,090 --> 00:23:24,130 这些都是很容易记住,同样,B,E和W, 397 00:23:24,130 --> 00:23:28,340 他们容易记住的好,因为B对应到后或开始, 398 00:23:28,340 --> 00:23:30,630 E对应于目的,它是字的结尾, 399 00:23:30,630 --> 00:23:35,530 和w对应到下一个单词,所以w代表词。 400 00:23:35,530 --> 00:23:37,750 如果你继续键入e或继续键入瓦特 401 00:23:37,750 --> 00:23:43,520 你发现你可以字之间跳跃,而且它不仅仅是打字升得更快。 402 00:23:43,520 --> 00:23:46,600 >>现在,接下来的事情就是操作符 - 动作模型。 403 00:23:46,600 --> 00:23:50,310 其实,这是关键原因,Vim可以这么强大的一个, 404 00:23:50,310 --> 00:23:54,890 并且那是因为你基本上可以组成不同的元素 405 00:23:54,890 --> 00:23:58,250 为更强大的功能,所以一般 406 00:23:58,250 --> 00:24:01,000 当你在Vim中做任何事情,你可以把它作为 407 00:24:01,000 --> 00:24:03,280 结合运动操作。 408 00:24:03,280 --> 00:24:07,310 到目前为止,我们只处理了动作,像HJKL。 409 00:24:07,310 --> 00:24:10,770 他们移动你的周围,然后B和W,他们也打动你身边不同的方式, 410 00:24:10,770 --> 00:24:14,600 但我们还没有去还没有能够删除的东西或改变的事情,或诸如此类的东西, 411 00:24:14,600 --> 00:24:19,320 而当你把运营商提供的运动那么你就能够有 412 00:24:19,320 --> 00:24:22,510 更强大的效果,因此,例如, 413 00:24:22,510 --> 00:24:26,360 如果我想删除2个字,我可以用d表示删除操作员, 414 00:24:26,360 --> 00:24:29,420 我可以添加一个2来表示我要删除2个字, 415 00:24:29,420 --> 00:24:31,130 然后我有一个运动。 416 00:24:31,130 --> 00:24:33,490 我可能包括瓦特说删除2个字。 417 00:24:33,490 --> 00:24:37,740 我可以使用类似J可说删除下调2倍 418 00:24:37,740 --> 00:24:39,880 并删除2行我下面。 419 00:24:39,880 --> 00:24:43,870 我可以说D2B删除向后两次, 420 00:24:43,870 --> 00:24:46,450 并有比那些我在这里表现得更加运动 421 00:24:46,450 --> 00:24:52,120 真的,真正使您的Vim编辑功能更强大。 422 00:24:52,120 --> 00:24:55,450 >>这些都是一些最流行或最常用的运算符 423 00:24:55,450 --> 00:24:57,030 而且很容易记住。 424 00:24:57,030 --> 00:24:59,040 D表示删除,C改变。 425 00:24:59,040 --> 00:25:01,560 C是基本上是完全相同的东西改变,只是 426 00:25:01,560 --> 00:25:05,990 当你自动使用C你得到把进入插入模式之后。 427 00:25:05,990 --> 00:25:08,050 通常,当你使用删除您从正常模式下使用它, 428 00:25:08,050 --> 00:25:10,950 你删除你留在正常模式下的东西后。 429 00:25:10,950 --> 00:25:13,380 但是,如果你想改变的东西,你可以使用C 430 00:25:13,380 --> 00:25:15,960 删除的东西,然后立即进入插入模式 431 00:25:15,960 --> 00:25:17,740 这样你就可以开始输入文字和修复的东西。 432 00:25:17,740 --> 00:25:21,160 Y是为粘贴。 433 00:25:21,160 --> 00:25:25,130 它基本上是复制的Vim的概念。 434 00:25:25,130 --> 00:25:29,220 例如,如果我想复制下一个2的话我可以做Y2W或类似的东西, 435 00:25:29,220 --> 00:25:32,120 和v是用于高亮显示,基本上。 436 00:25:32,120 --> 00:25:35,550 还什么是真正酷的是,如果你输入一个操作符两次 437 00:25:35,550 --> 00:25:38,890 它会作用于整行,所以如果我要删除一整行 438 00:25:38,890 --> 00:25:41,060 我可以输入dd来删除整行, 439 00:25:41,060 --> 00:25:47,370 或者,如果我想复制整行,我可以使用yy或类似的东西。 440 00:25:47,370 --> 00:25:51,600 >>让我们来试试这个更多一些。 441 00:25:51,600 --> 00:25:56,280 这里有一个在这里锻炼一个先进的移动运营商,以及 442 00:25:56,280 --> 00:25:59,230 甚至一些其他的事情我不打算在今天将PowerPoint覆盖, 443 00:25:59,230 --> 00:26:02,250 但你可以随意查看他们后来和玩弄他们 444 00:26:02,250 --> 00:26:05,990 并熟悉它们。 445 00:26:05,990 --> 00:26:07,630 操作符与动作。 446 00:26:07,630 --> 00:26:14,220 例如,假设有你只是想在句子中删除这些2个字。 447 00:26:14,220 --> 00:26:17,110 什么,你会想要做的就是你要确保你的 448 00:26:17,110 --> 00:26:21,000 光标在要删除的第一个字的开头, 449 00:26:21,000 --> 00:26:26,230 您可以输入D2W,它将删除那些2个字给你。 450 00:26:26,230 --> 00:26:33,140 并使用这个确切的命令,D2W,似乎有点麻烦 451 00:26:33,140 --> 00:26:35,940 和毫无意义的,但它应该表达的想法 452 00:26:35,940 --> 00:26:39,380 您可以以防万一撰写这些不同的东西,也 453 00:26:39,380 --> 00:26:42,730 你碰巧是在这种情况,那么你就可以最终使用DW或D2W, 454 00:26:42,730 --> 00:26:45,600 这点我偶尔使用。 455 00:26:45,600 --> 00:26:50,030 DD和CC我用得更频繁,因为你可以在整个线采取行动。 456 00:26:50,030 --> 00:26:52,000 >>例如,让我们说我有这样的随机列表在这里, 457 00:26:52,000 --> 00:26:59,030 也许我想删除,说哈士奇,因为它不适合就行了,只是因为, 458 00:26:59,030 --> 00:27:01,200 我不希望它进入插入模式之后。 459 00:27:01,200 --> 00:27:03,530 我想删除它,在这种情况下,我可以键入日, 460 00:27:03,530 --> 00:27:07,090 并且,将删除整行。 461 00:27:07,090 --> 00:27:11,680 但是,假设现在有,我要删除这个其他线路, 462 00:27:11,680 --> 00:27:16,850 但我也想修复它,并重写它,在这种情况下,我会尝试像CC, 463 00:27:16,850 --> 00:27:19,550 并删除整条生产线,但使我在插入模式下,你可以看到, 464 00:27:19,550 --> 00:27:24,970 我可以从那里修复它。 465 00:27:24,970 --> 00:27:28,510 而且有很多很多不同的方式,你可以结合运营商和议案, 466 00:27:28,510 --> 00:27:31,360 和您使用Vim越来越多的您更多地了解不同的方式 467 00:27:31,360 --> 00:27:36,300 您可以使用这些命令,你会变得越来越好。 468 00:27:36,300 --> 00:27:40,180 真棒,现在这里有一些其他杂七杂八的命令 469 00:27:40,180 --> 00:27:44,700 这也是非常非常常用的,也将帮助你成为在Vim的更好。 470 00:27:44,700 --> 00:27:48,780 >>比如,我们谈到了小写字母V的视觉高亮显示。 471 00:27:48,780 --> 00:27:51,530 我们也可以使用大写V的视线高亮。 472 00:27:51,530 --> 00:27:55,880 这样,你可以很容易地突出在整个时间线等等。 473 00:27:55,880 --> 00:27:59,180 您可以使用O当你在正常模式下,基本插入新行 474 00:27:59,180 --> 00:28:03,620 线下你目前并付诸插入模式开始打字。 475 00:28:03,620 --> 00:28:07,270 您可以使用小写字母x删除的字符这是你的当前光标下。 476 00:28:07,270 --> 00:28:10,230 您也可以使用u撤消,这是种不错的, 477 00:28:10,230 --> 00:28:14,180 您也可以使用大写字母A追加到当前行的末尾, 478 00:28:14,180 --> 00:28:18,310 所以也许你的光标就行了某个地方,你要添加到该行的末尾。 479 00:28:18,310 --> 00:28:21,150 然后,您可以键入大写的A,立即跳转到该行的末尾 480 00:28:21,150 --> 00:28:25,140 并进入插入模式,这样你可以添加到该行的末尾。 481 00:28:25,140 --> 00:28:30,840 >>我觉得我有一些更多的练习了,我们可以尝试一下。 482 00:28:30,840 --> 00:28:33,240 事实上,我没有,我没有。不是那些。 483 00:28:33,240 --> 00:28:35,810 但是,我们有下一节我们将看到一些更多的练习。 484 00:28:35,810 --> 00:28:38,420 但是,这些你可以尝试自己为好。 485 00:28:38,420 --> 00:28:45,610 例如,如果你在正规的V型,你会得到你已经习惯了喜欢这个经常高亮。 486 00:28:45,610 --> 00:28:49,800 如果您在首都V型,你可以得到全系强调这样的, 487 00:28:49,800 --> 00:28:55,850 或者如果我输入的邻它基本上会打开一个新行对我来说,这是种不错的。 488 00:28:55,850 --> 00:28:58,850 X I可以用它来删除字符上的光标。 489 00:28:58,850 --> 00:29:00,800 我可以按x一群倍和删除的东西。 490 00:29:00,800 --> 00:29:06,720 我可以按u撤消了这一切。 491 00:29:06,720 --> 00:29:09,600 A,我可以键入立即到该行的末尾, 492 00:29:09,600 --> 00:29:14,040 我也包括了许多很好的钥匙 493 00:29:14,040 --> 00:29:19,240 您还可以看看介绍之后,学习一些其他命令。 494 00:29:19,240 --> 00:29:21,250 >> [学生]有什么替代呢? 495 00:29:21,250 --> 00:29:23,050 [布兰登L.]更换也很酷 496 00:29:23,050 --> 00:29:26,240 基本上,如果你去的地方 - 497 00:29:26,240 --> 00:29:30,060 你有没有,人们并不真正使用它那么多了,这些天, 498 00:29:30,060 --> 00:29:34,340 但你们见过在Microsoft Word中,如果您键入插入 499 00:29:34,340 --> 00:29:37,840 你突然进入这个奇怪的模式,你输入的每一个字符 500 00:29:37,840 --> 00:29:39,570 基本上取代了下一个字符? 501 00:29:39,570 --> 00:29:41,020 我不知道,如果你们已经见过了。 502 00:29:41,020 --> 00:29:43,250 这是类似的。 503 00:29:43,250 --> 00:29:47,150 例如,如果我想覆盖什么我现在有出于某种原因 504 00:29:47,150 --> 00:29:51,300 我可以输入大写的R,而现在我会在替换模式下,你可以在左下角看到。 505 00:29:51,300 --> 00:29:58,380 如果我输入的东西它覆盖的东西,我也可以退格,这是一种很酷的, 506 00:29:58,380 --> 00:30:00,140 我可以撤消。 507 00:30:00,140 --> 00:30:06,980 我不使用,很多时候,但每一个现在,然后它变得得心应手。 508 00:30:06,980 --> 00:30:14,150 >>让我们来谈谈文本对象,这是我的一个关于Vim喜欢的东西,说实话。 509 00:30:14,150 --> 00:30:19,660 文本对象基本上都是定义某种文本块的这个概念 510 00:30:19,660 --> 00:30:26,550 您的文本文件里面,我就去了这些键第一, 511 00:30:26,550 --> 00:30:29,860 然后我会给你一些示范让你更充分地明白这意味着什么。 512 00:30:29,860 --> 00:30:34,650 W是指一个单词,如文本对象作为一个词, 513 00:30:34,650 --> 00:30:36,480 所以有些话,你通常知道, 514 00:30:36,480 --> 00:30:39,300 如果有标点符号的字旁 515 00:30:39,300 --> 00:30:43,490 那么它将不包括标点符号一般。 516 00:30:43,490 --> 00:30:46,440 但是,举例来说,如果您要包含标点符号由于某种原因 517 00:30:46,440 --> 00:30:49,080 或者你正在做的事情,这不是英文,你要包括 518 00:30:49,080 --> 00:30:51,180 所有由空白划定的字符 519 00:30:51,180 --> 00:30:55,390 您还可以使用资本W到得到的四周空白的一切。 520 00:30:55,390 --> 00:30:58,510 您也可以使用括号来引用文本对象 521 00:30:58,510 --> 00:31:00,170 这是一组括号内。 522 00:31:00,170 --> 00:31:03,950 你可以做同样的事情用方括号,尖括号, 523 00:31:03,950 --> 00:31:06,450 花括号和引号为好,最后, 524 00:31:06,450 --> 00:31:10,970 您还可以使用T指一些标记。 525 00:31:10,970 --> 00:31:15,390 >>让我来告诉你如何实际发挥出来。 526 00:31:15,390 --> 00:31:21,380 例如,这是我在我展示的第一个例子。 527 00:31:21,380 --> 00:31:26,950 有在这句话中的一些词,我想改变, 528 00:31:26,950 --> 00:31:30,560 我们聊大约W被用作运动, 529 00:31:30,560 --> 00:31:33,170 但你也可以把它作为像这样的文本对象。 530 00:31:33,170 --> 00:31:40,940 例如,一个方法,我可以改变奥巴马的名字或基本修改 531 00:31:40,940 --> 00:31:46,730 是我可以去这个字和类型的开始在C的变化和w代表词, 532 00:31:46,730 --> 00:31:51,650 并且,将删除整个单词并把它变成插入模式。 533 00:31:51,650 --> 00:31:54,240 但它是非常恼人的,让我有去的话所有的时间的开始。 534 00:31:54,240 --> 00:31:56,530 这真的很烦人。我不希望有这样做。 535 00:31:56,530 --> 00:32:00,390 其实我可以在里面他的名字在任何地方 536 00:32:00,390 --> 00:32:03,930 并在CIW,而i代表内心, 537 00:32:03,930 --> 00:32:06,590 所以,如果我输入CIW它代表改变一个字, 538 00:32:06,590 --> 00:32:10,150 或者换句话说,改变我目前里面的字, 539 00:32:10,150 --> 00:32:13,280 它会给你确切的同样的效果。 540 00:32:13,280 --> 00:32:17,130 你可以解决这个问题。 541 00:32:17,130 --> 00:32:21,390 >>同样,也许我有一些像这样的情况下, 542 00:32:21,390 --> 00:32:27,920 其中由于某种原因,也有一些分隔符或者类似的东西, 543 00:32:27,920 --> 00:32:31,700 或者有一些标点符号,我想删除整个事情。 544 00:32:31,700 --> 00:32:36,530 如果我输入CIW它会​​删除什么这些定界符, 545 00:32:36,530 --> 00:32:39,830 但我想拿到的四周空白整个事情, 546 00:32:39,830 --> 00:32:42,750 所以我可以使用CIW删除整个事情。 547 00:32:42,750 --> 00:32:51,000 我会输入5,做同样的事情,并在六人。 548 00:32:51,000 --> 00:32:53,670 同样,如果我想改变的东西,在括号中 549 00:32:53,670 --> 00:32:58,340 我可以在CI型)删除一切的括号内 550 00:32:58,340 --> 00:33:05,460 然后填写任何我想做的事情,如int的argc,不管你想要做什么, 551 00:33:05,460 --> 00:33:07,330 同样,同样的事情引号。 552 00:33:07,330 --> 00:33:13,130 我可以修复文本的引号里面, 553 00:33:13,130 --> 00:33:21,540 而且我还可以改变的事情,是标签内。 554 00:33:21,540 --> 00:33:24,400 这是否有道理? 555 00:33:24,400 --> 00:33:27,020 >>你可以做的另一件事情是你没有用c。 556 00:33:27,020 --> 00:33:30,690 您也可以使用d如果你想删除什么这些标签里面。 557 00:33:30,690 --> 00:33:35,370 如果我要删除一个标签内的文字,我可以使用DIT删除该标签。 558 00:33:35,370 --> 00:33:40,360 我也可以用维生素突出什么,在标签内,例如。 559 00:33:40,360 --> 00:33:43,920 另一件事是,而不是用我在中间,你也可以使用, 560 00:33:43,920 --> 00:33:49,490 这代表所有的,所以记住,如果你使用我会参考文本对象 561 00:33:49,490 --> 00:33:52,260 或使用的包含在定界符文本对象, 562 00:33:52,260 --> 00:33:56,000 但如果您使用的是它将包括文本以及作为分隔符本身。 563 00:33:56,000 --> 00:33:59,180 例如,如果我想强调这个文本及周边标签 564 00:33:59,180 --> 00:34:05,390 我可以使用增值税,V为视觉亮点,一为all,然后吨的标记。 565 00:34:05,390 --> 00:34:08,350 你可以做这样的事情为好。 566 00:34:08,350 --> 00:34:15,810 也许我要删除这个google.com与它周围的引号为好, 567 00:34:15,810 --> 00:34:22,860 我可以使用类似哒“删除所有的,例如。 568 00:34:22,860 --> 00:34:26,520 >>到目前为止,有问题吗? 569 00:34:26,520 --> 00:34:32,270 我知道我对你倾倒了大量的Vim命令的全部一次, 570 00:34:32,270 --> 00:34:36,210 这基本上是因为我要揭露你的所有不同的命令 571 00:34:36,210 --> 00:34:39,480 给你介绍了这些命令在Vim中。 572 00:34:39,480 --> 00:34:41,460 但是,当你回去什么事情要发生的是 573 00:34:41,460 --> 00:34:44,250 你将不得不慢慢地拿起这些命令一个接一个。 574 00:34:44,250 --> 00:34:47,880 你不想压倒自己,因为那是过于庞大。 575 00:34:47,880 --> 00:34:50,460 如果你想拿起Vim你要真正做的是 576 00:34:50,460 --> 00:34:53,590 开始第一个基本集,我已经打破它分为教训你 577 00:34:53,590 --> 00:34:57,830 使您更容易遵循,并尝试和掌握每一个命令集 578 00:34:57,830 --> 00:35:00,400 一个接一个,每次一个。 579 00:35:00,400 --> 00:35:03,500 这是太多的事情要做面面俱到,所以当你回去是你应该做的 580 00:35:03,500 --> 00:35:10,950 去的第一课,这是HJKL,插入模式,逃进正常模式, 581 00:35:10,950 --> 00:35:13,790 和保存并退出,而这一切你真的需要在Vim中生存, 582 00:35:13,790 --> 00:35:15,220 并获得非常,非常舒服。 583 00:35:15,220 --> 00:35:18,270 以后一旦你很舒服的那几天 584 00:35:18,270 --> 00:35:21,170 你应该移动到更先进的运动运营商, 585 00:35:21,170 --> 00:35:25,890 更先进的运动,并在给运营商等等等等。 586 00:35:25,890 --> 00:35:32,160 >>我知道我经历了很多,但我希望得到你接触到了很多不同的东西。 587 00:35:32,160 --> 00:35:36,080 但是,如果你准备好迎接挑战,我可以告诉你 588 00:35:36,080 --> 00:35:43,690 如何使用大多数我们今天刚刚获悉把这一切放在一起, 589 00:35:43,690 --> 00:35:46,280 你也可以跟着,如果你想, 590 00:35:46,280 --> 00:35:48,590 但是我创造了一些随机的运动。 591 00:35:48,590 --> 00:35:51,140 假设我们有某种名册这样 592 00:35:51,140 --> 00:35:53,200 在那里你有这些块用别人的名字, 593 00:35:53,200 --> 00:35:55,440 房子,年,浓度和诸如此类的东西, 594 00:35:55,440 --> 00:35:59,240 你想添加自己的新条目。 595 00:35:59,240 --> 00:36:01,530 什么是为你做这一点的最好方法是什么? 596 00:36:01,530 --> 00:36:03,240 让我们像这样做。 597 00:36:03,240 --> 00:36:06,620 我们为什么不首先强调这个块。 598 00:36:06,620 --> 00:36:08,710 你会选择它,我们可以按y键猛拉它, 599 00:36:08,710 --> 00:36:11,180 所以现在我们基本上可以复制和粘贴第一这个模板 600 00:36:11,180 --> 00:36:16,500 而不必从头开始重写了整个事情。 601 00:36:16,500 --> 00:36:20,390 现在,我会按J键向下一堆次下井, 602 00:36:20,390 --> 00:36:22,560 我会按p来粘贴。 603 00:36:22,560 --> 00:36:26,990 也许我会加上一个空格一些额外的线条, 604 00:36:26,990 --> 00:36:31,130 并让我们说现在我想改变你的名字的人。 605 00:36:31,130 --> 00:36:36,220 然后我就可以去这里并在C2W像以前一样改变这个名字。 606 00:36:36,220 --> 00:36:38,860 鲍勃·琼斯,谁知道。 607 00:36:38,860 --> 00:36:41,470 也许,如果我想改变房子我可以去到中间位置 608 00:36:41,470 --> 00:36:44,230 和类型的CIW,把卡博特众议院。 609 00:36:44,230 --> 00:36:47,850 >>这里可能是,您可能要考虑使用一个例子 610 00:36:47,850 --> 00:36:52,970 替换模式下,如果你想改变你的毕业一年, 611 00:36:52,970 --> 00:36:54,890 或者我们也可以使用CIW为好。 612 00:36:54,890 --> 00:36:57,550 不要紧 613 00:36:57,550 --> 00:37:07,180 也许你想改变你的专业。 614 00:37:07,180 --> 00:37:11,310 而这就是你要做的。 615 00:37:11,310 --> 00:37:17,170 也许我会给你什么,我可能会做一个示范 616 00:37:17,170 --> 00:37:23,820 如果我是,如果你继续学习Vim的更高级的命令 617 00:37:23,820 --> 00:37:25,690 因为我们几乎没有划伤表面在这里, 618 00:37:25,690 --> 00:37:28,960 我可以做这样的编辑速度甚至超过了我在这里向您展示 619 00:37:28,960 --> 00:37:32,860 因为我知道更多的命令,我还没有得到一个机会展示你今天。 620 00:37:32,860 --> 00:37:37,500 例如,如果我想强调这我能做到它这样, 621 00:37:37,500 --> 00:37:39,960 向下移动。 622 00:37:39,960 --> 00:37:43,860 我已经添加了我自己的映射 623 00:37:43,860 --> 00:37:48,100 基本上自动突出显示的东西对我来说 624 00:37:48,100 --> 00:38:02,610 我可以,我不知道。 625 00:38:02,610 --> 00:38:05,260 我的意思是,这只是想告诉你,你可真,真 626 00:38:05,260 --> 00:38:08,180 开始编辑东西比较快,尤其是当你把所有这些不同的领域, 627 00:38:08,180 --> 00:38:10,620 而且通常你可能会做的是那种一下 628 00:38:10,620 --> 00:38:13,530 并强调,然后键入。 629 00:38:13,530 --> 00:38:18,530 你可以做的一切一下子,复制和粘贴, 630 00:38:18,530 --> 00:38:21,640 向上和向下移动的文件之间, 631 00:38:21,640 --> 00:38:24,060 刚刚划定的东西,格式化的东西。 632 00:38:24,060 --> 00:38:29,670 这一切都可以在Vim的多,更快速地完成。 633 00:38:29,670 --> 00:38:32,580 >>最后的一点点东西,我认为可能是非常好的, 634 00:38:32,580 --> 00:38:34,820 这是查找和替换。 635 00:38:34,820 --> 00:38:36,460 那些你们谁使用Gmail的快捷键 636 00:38:36,460 --> 00:38:41,050 你也知道,如果你键入/它发送到你的搜索框, 637 00:38:41,050 --> 00:38:44,210 而在很多不同一般的应用程序,你会发现斜线 638 00:38:44,210 --> 00:38:47,300 也许控制斜线或是与斜线 639 00:38:47,300 --> 00:38:49,870 将会把你带入某种搜索模式, 640 00:38:49,870 --> 00:38:53,240 而这也主要来自Vim的本质 641 00:38:53,240 --> 00:38:58,670 因为斜线运营商或斜杠命令允许你输入 642 00:38:58,670 --> 00:39:01,770 某种形式的字符串,你可以用它来在文档中搜索。 643 00:39:01,770 --> 00:39:05,350 你可以n和资本n转到下一个和以前发生的, 644 00:39:05,350 --> 00:39:10,700 你也可以使用类似的搜索和文档内更换。 645 00:39:10,700 --> 00:39:15,060 我给你什么可以做一个示范。 646 00:39:15,060 --> 00:39:18,200 >>也许如果我想找到这个文件中的字符串抽出的所有实例 647 00:39:18,200 --> 00:39:23,310 我可以键入/猛拉,因为你可以在左下角看到, 648 00:39:23,310 --> 00:39:26,350 当我输入输入它强调所有实例。 649 00:39:26,350 --> 00:39:34,160 我可以使用基本上n到来回跳转所有这些不同的实例之间, 650 00:39:34,160 --> 00:39:40,420 让我们假设我要搜索和替换抽出一些随机单词 651 00:39:40,420 --> 00:39:42,180 这也是在文档中。 652 00:39:42,180 --> 00:39:47,070 我可以按:开始输入在Vim某种命令, 653 00:39:47,070 --> 00:39:49,610 一些命令,这比走动更复杂 654 00:39:49,610 --> 00:39:51,370 或删除或类似的东西。 655 00:39:51,370 --> 00:39:56,860 我会键入%符号来引用我想用这个替换命令 656 00:39:56,860 --> 00:39:58,230 在整个文档。 657 00:39:58,230 --> 00:40:02,380 键入以s为替换。这来自于珍珠本质。 658 00:40:02,380 --> 00:40:07,040 而这一个命令,你会发现珍珠一个非常标准的命令 659 00:40:07,040 --> 00:40:09,790 而不是和其他编程语言,你会 660 00:40:09,790 --> 00:40:13,170 可能会开始学习,因为你做更多的计算机科学, 661 00:40:13,170 --> 00:40:20,130 我基本上可以使用/在我要查找和替换的单词键入/,类型 662 00:40:20,130 --> 00:40:24,280 然后键入另一个/在什么的话,我想替换这个词型。 663 00:40:24,280 --> 00:40:27,450 谁知道,也许nyancat。 664 00:40:27,450 --> 00:40:30,390 我这样做,然后你会看到一切都得到了更换。 665 00:40:30,390 --> 00:40:34,000 >>但是你会发现,有这个词在这里。 666 00:40:34,000 --> 00:40:37,620 由于某种原因,我们的部分抽出的实例将被替换,但不是全部 667 00:40:37,620 --> 00:40:40,250 那是因为路这样的说词已经写入 668 00:40:40,250 --> 00:40:43,550 不仅在Vim的,但在其他地方是,当你运行该命令替换 669 00:40:43,550 --> 00:40:46,470 它只会替换每一行中的单词的第一个实例, 670 00:40:46,470 --> 00:40:52,810 所以如果我想其实在替换每一行字的所有实例 671 00:40:52,810 --> 00:40:56,890 然后我必须做同样的事情,但将银旗在最后, 672 00:40:56,890 --> 00:41:00,810 这代表全球,然后,将实际 673 00:41:00,810 --> 00:41:06,200 替换所有实例。 674 00:41:06,200 --> 00:41:09,710 而一旦你学会了正则表达式,那里实际上是一个CS50研讨会 675 00:41:09,710 --> 00:41:12,120 正则表达式,所以如果您想了解正则表达式 676 00:41:12,120 --> 00:41:16,970 你也可以采取座谈会,了解更多。 677 00:41:16,970 --> 00:41:19,920 >>但是例如,让我们说我有一个这样的名称的列表, 678 00:41:19,920 --> 00:41:23,920 我想,而不必姓,逗号,名字重新排列,所以 679 00:41:23,920 --> 00:41:27,490 我想重新安排它,所以它说名字,空格,姓氏。 680 00:41:27,490 --> 00:41:30,750 实际上,你可以使用此命令在这里 681 00:41:30,750 --> 00:41:33,600 从根本上为你做的,所以你可以在这里看到 682 00:41:33,600 --> 00:41:37,170 我们先从一个s,这意味着我们想要做一个查找和替换, 683 00:41:37,170 --> 00:41:42,970 然后我添加了一个标志称为\ V,这是一种叫这个神奇的标志 684 00:41:42,970 --> 00:41:45,810 在Vim里,让您更轻松地做正则表达式。 685 00:41:45,810 --> 00:41:49,370 然后从那里我们基本上匹配任何一行 686 00:41:49,370 --> 00:41:55,960 即形式的一组字,逗号,空格,和一组单词或一组字母。 687 00:41:55,960 --> 00:41:59,240 \ W +基本上是指一个或多个字符, 688 00:41:59,240 --> 00:42:04,030 而括号是用来捕获这些群体 689 00:42:04,030 --> 00:42:06,120 所以我以后可以参考它们。 690 00:42:06,120 --> 00:42:09,910 正如你所看到的,也就是说,一旦这些捕获2块 691 00:42:09,910 --> 00:42:11,690 这是一个逗号,空格分隔 692 00:42:11,690 --> 00:42:15,510 那么我们要取代它的是我用\ 2 \ 1 693 00:42:15,510 --> 00:42:18,130 参考以前被抓获的话 694 00:42:18,130 --> 00:42:20,950 在实际find命令, 695 00:42:20,950 --> 00:42:24,970 等\ 2是指任何被包含在第二组括号, 696 00:42:24,970 --> 00:42:28,140 \ 1是指任何被包含在第一组括号, 697 00:42:28,140 --> 00:42:31,680 正如你所看到的,我把2 1以空格分隔前 698 00:42:31,680 --> 00:42:36,650 尝试和姓氏前移动的第一个名字。 699 00:42:36,650 --> 00:42:38,380 这是否有道理? 700 00:42:38,380 --> 00:42:43,450 >>而我所能做的就是,我可以隐藏这些第一次,所以我只能在这些线路上运行此命令, 701 00:42:43,450 --> 00:42:53,720 然后我会在键入此命令。 702 00:42:53,720 --> 00:42:57,050 你可以看到它不正是因为划分。 703 00:42:57,050 --> 00:42:59,400 再次,这是勉强划伤表面, 704 00:42:59,400 --> 00:43:03,020 如果你去正规表达式研讨会话,我敢肯定你会学习 705 00:43:03,020 --> 00:43:05,070 有更多不同的东西,你可以使用正则表达式做, 706 00:43:05,070 --> 00:43:08,910 这基本上开始暗示你真的可以用Vim做 707 00:43:08,910 --> 00:43:10,850 如果你真的开始成为它的主人。 708 00:43:10,850 --> 00:43:14,520 也许你要重构的东西,你想找到的所有实例 709 00:43:14,520 --> 00:43:16,980 的一些功能如下几种命名模式。 710 00:43:16,980 --> 00:43:18,570 你想改变这种状况的命名方式。 711 00:43:18,570 --> 00:43:21,140 你可以写一些像这样做,对你sort命令的, 712 00:43:21,140 --> 00:43:23,850 这就是灵活性的那种你可以在Vim中得到 713 00:43:23,850 --> 00:43:30,210 那你只是不会得到在其他的文本编辑器。 714 00:43:30,210 --> 00:43:34,830 >>,基本上涵盖了所有我想今天来教你在今天的研讨会上的东西, 715 00:43:34,830 --> 00:43:38,580 但同样,我真的想强调的是,如果你想拿起Vim的 716 00:43:38,580 --> 00:43:42,120 这是事实,有一个在一开始就稍高的学习曲线。 717 00:43:42,120 --> 00:43:44,230 在一开始你会略显不足生产力 718 00:43:44,230 --> 00:43:47,010 比你可能会在其他方面,但如果你坚持下去 719 00:43:47,010 --> 00:43:49,890 在数天或数周,取决于你学习的速度有多快, 720 00:43:49,890 --> 00:43:56,300 你会变得非常非常快,我想给你示范 721 00:43:56,300 --> 00:43:59,070 关于什么的Vim能够,但我并没有真正得到一个机会向您展示 722 00:43:59,070 --> 00:44:03,230 当我常举例来说,在课堂上我输入了我的笔记用Vim会发生什么。 723 00:44:03,230 --> 00:44:07,920 那是因为我可以工作,所以比我快得多的Vim与任何其他程序。 724 00:44:07,920 --> 00:44:14,480 这是字面上的Vim相比其他方案2或3时生产率的提高, 725 00:44:14,480 --> 00:44:18,800 不仅文字编辑的速度,而且在路上我可以在文档中移动 726 00:44:18,800 --> 00:44:21,510 我可以访问我的计算机上的其他文件的方式 727 00:44:21,510 --> 00:44:23,110 并跳转它们之间等等等等。 728 00:44:23,110 --> 00:44:27,600 这只是一个非常非常巨大的生产力提升。 729 00:44:27,600 --> 00:44:30,550 >>但是当你学习,你要确保你了解一件事的时候, 730 00:44:30,550 --> 00:44:34,970 尽量不要淹没自己有太多不同的命令 731 00:44:34,970 --> 00:44:39,090 因为有很多命令和很多不同的快捷方式,您可以在Vim中学习。 732 00:44:39,090 --> 00:44:41,780 你要一点点回暖的时间和多年来 733 00:44:41,780 --> 00:44:48,990 逐渐积累的Vim越来越大的理解。 734 00:44:48,990 --> 00:44:51,790 如果您想继续了解更多,这些都是一些比较高级的主题 735 00:44:51,790 --> 00:44:55,900 您可以继续了解,即使这样勉强皮毛。 736 00:44:55,900 --> 00:44:59,050 以下是一些流行的插件,你可以随时检查出来和谷歌他们 737 00:44:59,050 --> 00:45:03,750 和玩弄他们,如果你想,只是看到什么样的插件都在那里。 738 00:45:03,750 --> 00:45:06,260 然后在这个PowerPoint演示结束时,我有一堆链接 739 00:45:06,260 --> 00:45:08,740 各种资源,你可以使用来自学习。 740 00:45:08,740 --> 00:45:12,700 这里有一堆不同的链接,您可以用它来开始使用的Vim。 741 00:45:12,700 --> 00:45:15,150 他们有不同的教程和诸如此类的东西, 742 00:45:15,150 --> 00:45:17,770 最后,这些都是一些可以使用更高级的东西 743 00:45:17,770 --> 00:45:19,790 也检查出来为好, 744 00:45:19,790 --> 00:45:22,340 一些屏幕的演员和Vim的一些更先进的技术 745 00:45:22,340 --> 00:45:26,450 也有一些不同的部分源代码,你可以看看在GitHub上 746 00:45:26,450 --> 00:45:28,760 只是为了看看别人的配置文件 747 00:45:28,760 --> 00:45:32,710 还是来看看在Vim插件等等等等。 748 00:45:32,710 --> 00:45:40,380 >>这就是我对你的。 749 00:45:40,380 --> 00:45:43,000 [CS50.TV]