vim怎么使用,vim使用教程,vimtutor怎么切换中文 汉化

vim 使用

在安装了 vim 的 unix 系统下可以使用 vimtutor zh_cn 开启下面的教程

序言

===============================================================================
=      欢     迎     阅     读   《 V I M  教  程 》   ——      版本 1.7       =
===============================================================================Vim 是一个具有很多命令的功能非常强大的编辑器。限于篇幅,在本教程当中就不详细介绍了。本教程的设计目标是讲述一些必要的基本命令,而掌握好这些命令,您就能够很容易地将 Vim 当作一个通用编辑器来使用了。完成本教程的内容大约需要25-30分钟,取决于您训练的时间。注意:每一节的命令操作将会更改本文。推荐您复制本文的一个副本,然后在副本上进行训练(如果您是通过"vimtutor"来启动教程的,那么本文就已经是副本了)。切记一点:本教程的设计思路是在使用中进行学习的。也就是说,您需要通过执行命令来学习它们本身的正确用法。如果您只是阅读而不操作,那么您可能会很快遗忘这些命令的!好了,现在请确定您的Shift-Lock(大小写锁定键)还没有按下,然后按键盘上的字母键 j 足够多次来移动光标,直到第一节的内容能够完全充满屏幕。

第一讲第一节:移动光标

             ** 要移动光标,请依照说明分别按下 h、j、k、l 键。 **^k              提示: h 的键位于左边,每次按下就会向左移动。< h       l >               l 的键位于右边,每次按下就会向右移动。j                     j 键看起来很象一支尖端方向朝下的箭头。v1. 请随意在屏幕内移动光标,直至您觉得舒服为止。2. 按下下行键(j),直到出现光标重复下行。---> 现在您应该已经学会如何移动到下一讲吧。3. 现在请使用下行键,将光标移动到第一讲第二节。提示:如果您不敢确定您所按下的字母,请按下<ESC>键回到正常(Normal)模式。然后再次从键盘输入您想要的命令。提示:光标键应当也能正常工作的。但是使用hjkl键,在习惯之后您就能够更快地在屏幕内四处移动光标。真的是这样!

注意

hjkl并不是特定单词的缩写。这些字符hjkl仅仅是为了方便在Vim编辑器中表示上下左右方向而选定的按键。它们没有特定的含义或单词背后的缩写。

第一讲第二节:VIM的进入和退出

  !! 特别提示:敬请阅读本一节的完整内容,然后再执行以下所讲解的命令。1. 按<ESC>键(这是为了确保您处在正常模式)。2. 然后输入:                 :q! <回车>这种方式的退出编辑器会丢弃您进入编辑器以来所做的改动。3. 如果您看到了命令行提示符,请输入能够带您回到本教程的命令,那就是:vimtutor <回车>4. 如果您自信已经牢牢记住了这些步骤的话,请从步骤1执行到步骤3退出,然后再次进入编辑器。提示: :q! <回车> 会丢弃您所做的任何改动。几讲之后您将学会如何保存改动到文件。5. 将光标下移到第一讲第三节。

注意

qquit(退出)单词缩写

第一讲第三节:文本编辑之删除

   ** 在正常(Normal)模式下,可以按下 x 键来删除光标所在位置的字符。**1. 请将光标移动到本节中下面标记有 ---> 的那一行。2. 为了修正输入错误,请将光标移至准备删除的字符的位置处。3. 然后按下 x 键将错误字符删除掉。4. 重复步骤2到步骤4,直到句子修正为止。---> The ccow jumpedd ovverr thhe mooon.5. 好了,该行已经修正了,下面是第一讲第四节。特别提示:在浏览本教程时,不要强行记忆。记住一点:在使用中学习。

第一讲第四节:文本编辑之插入

         ** 在正常模式下,可以按下 i 键来插入文本。**1. 请将光标移动到本节中下面标记有 ---> 的第一行。2. 为了使得第一行内容雷同于第二行,请将光标移至文本第一个准备插入字符的位置。3. 然后按下 i 键,接着输入必要的文本字符。4. 每个错误修正完毕后,请按下 <ESC> 键返回正常模式。重复步骤2至步骤4以便修正句子。---> There is text misng this .
---> There is some text missing from this line.5. 如果您对文本插入操作已经很满意,请接着阅读下面的第一讲第五节。

注意

iinsert(插入)单词的缩写

I键(小写):在当前光标所在字符的前面进入插入模式。

按下I键后,光标会保持在当前字符的位置,然后你可以开始输入新的文本。这对于在行的任何位置开始添加内容很有用。

第一讲第五节:文本编辑之添加

                        ** 按 A 键以添加文本。 **1. 移动光标到下面第一个标记有 ---> 的一行。光标放在那一行的哪个字符上并不重要。2. 按 A 键输入必要的添加内容。3. 文本添加完毕后,按 <ESC> 键回到正常模式。4. 移动光标到下面第二个标记有 ---> 的一行。重复步骤2和步骤3以改正这个句子。---> There is some text missing from thThere is some text missing from this line.
---> There is also some text missThere is also some text missing here.5. 当您对添加文本操作感到满意时,请继续学习第一讲第六节。

注意

aappend(添加)单词的缩写

A键(小写):在当前光标所在字符的后面进入插入模式。

按下A键后,光标会移动到当前行的末尾,然后你可以开始输入新的文本。这对于在行的末尾添加内容很方便。

第一讲第六节:编辑文件

                    ** 使用 :wq 以保存文件并退出。 **特别提示:在执行以下步骤之前,请先读完整个小节!1. 如您在第一讲第二节中所做的那样退出本教程: :q!或者,如果您可以访问另一个终端,请在那里执行以下操作。2. 在 shell 的提示符下输入命令: vim tutor <回车>'vim'是启动 Vim 编辑器的命令,'tutor'是您希望编辑的文件的名字。请使用一个可以改动的文件。3. 使用您在前面的教程中学到的命令插入删除文本。4. 保存改动过的文件并退出 Vim,按这些键: :wq  <回车>5. 如果您在步骤1中已经退出 vimtutor,请重启 vimtutor 移动到下面的小结一节。6. 阅读完以上步骤,弄懂它们的意义,然后在实践中进行练习。

注意
:wq 中的 wwrite(写入)的缩写

第一讲小结

  1. 光标在屏幕文本中的移动既可以用箭头键,也可以使用 hjkl 字母键。h (左移)       j (下行)       k (上行)     l (右移)2. 欲进入 Vim 编辑器(从命令行提示符),请输入:vim 文件名 <回车>3. 欲退出 Vim 编辑器,请输入 <ESC>   :q!   <回车> 放弃所有改动。或者输入 <ESC>   :wq   <回车> 保存改动。4. 在正常模式下删除光标所在位置的字符,请按: x5. 欲插入或添加文本,请输入:i   输入欲插入文本   <ESC>             在光标前插入文本A   输入欲添加文本   <ESC>             在一行后添加文本特别提示:按下 <ESC> 键会带您回到正常模式或者撤消一个不想输入或部分完整
的命令。好了,第一讲到此结束。下面接下来继续第二讲的内容。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/24541.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

elasticsearch 将时间类型为时间戳保存格式的时间字段格式化返回

dsl查询用法如下&#xff1a; GET /your_index/_search {"_source": {"includes": ["timestamp", // Include the timestamp field in the search results// Other fields you want to include],"excludes": []},"query": …

外国机构在中国境内提供金融信息服务23家许可名单

6月30日&#xff0c;国家互联网信息办公室公布23家外国&#xff08;境外&#xff09;机构在中国境内提供金融信息服务许可名单&#xff0c;如下&#xff1a;

LeetCode643. 子数组最大平均数 I

题干 给你一个由 n 个元素组成的整数数组 nums 和一个整数 k 。 请你找出平均数最大且 长度为 k 的连续子数组&#xff0c;并输出该最大平均数。 任何误差小于 10^-5 的答案都将被视为正确答案。 示例1&#xff1a; 输入&#xff1a;nums [1,12,-5,-6,50,3], k 4 输出&am…

前端小练习:案例4.3D图片旋转展示(旋转木马)

一.效果预览图 二.实现思路 1.实现旋转木马效果的第一步是先准备好自己需要的图片&#xff0c;创建html文件 2.旋转木马的实现&#xff0c;关键点在3D形变和关键帧动画。 3.步骤&#xff0c;定义一个div使其居中&#xff0c;&#xff0c;把图片放进div盒子里&#xff0c;因为图…

Vue系列第七篇:Element UI之el-main,el-table,el-dialog,el-pagination,el-breadcrumb等控件使用

本篇实现主页面功能&#xff0c;包括主页面排版布局&#xff0c;学生管理模块实现&#xff0c;后台接口实现等功能。 目录 1.运行效果 1.1登录页面 1.2主页面 1.3学生管理 - 信息列表 1.4学生管理 - 信息管理 1.5学生管理 - 作业列表 1.6学生管理 - 作业管理 2.前端代码…

统计方形(c++题解)

题目背景 1997年普及组第一题 题目描述 有一个 nm 方格的棋盘&#xff0c;求其方格包含多少正方形、长方形&#xff08;不包含正方形&#xff09;。 输入格式 一行&#xff0c;两个正整数 n,m&#xff08;n≤5000,m≤5000&#xff09;。 输出格式 一行&#xff0c;两个正…

npm install时出现的问题Failed at the node-sass@4.14.1 postinstall script

从阿里云上拉取下来项目后&#xff0c;首先使用npm install 命令进行安装所需依赖&#xff0c;意想不到的事情发生了&#xff0c;报出了Failed at the node-sass4.14.1 postinstall script&#xff0c;这个问题&#xff0c;顿时一脸懵逼&#xff1b;询问前端大佬&#xff0c;给…

危大工程智慧工地源码,微服务+Java+Spring Cloud +UniApp +MySql 物联网、人工智能、视频AI分析

一套智慧工地管理平台源码&#xff0c;PC端移动APP端可视货数据管理端源码 智慧工地可视化系统利用物联网、人工智能、云计算、大数据、移动互联网等新一代信息技术&#xff0c;通过工地中台、三维建模服务、视频AI分析服务等技术支撑&#xff0c;实现智慧工地高精度动态仿真&a…

【新人指南】给新人软件开发工程师的干货建议

在我是新人时&#xff0c;如果有前辈能够指导方向一下&#xff0c;分享一些踩坑经历&#xff0c;或许会让我少走很多弯路&#xff0c;节省更多的学习的成本。 这篇文章根据我多年的工作经验&#xff0c;给新人总结了一些建议&#xff0c;希望对你会有所帮助。 写好注释 没有注…

ELFK——ELK结合filebeat日志分析系统(2)

目录 一、filebeat 二、ELFK 1.原理简介 2.在ELK基础上部署filebeat 一、filebeat Filebeat&#xff0c;轻量级的开源日志文件数据搜集器。通常在需要采集数据的客户端安装 Filebeat&#xff0c;并指定目录与日志格式&#xff0c;Filebeat 就能快速收集数据&#xff0c;并…

解决宝塔面板升级获取更新包失败,请稍后更新或联系宝塔运维

宝塔Linux面板执行升级命令后失败&#xff0c;提示“获取更新包失败&#xff0c;请稍后更新或联系宝塔运维”如何解决&#xff1f;新手站长分享宝塔面板升级失败的解决方法&#xff1a; 宝塔面板升级失败解决方法 1、使用root账户登录到你的云服务器上&#xff0c;宝塔Linux面…

LLVM笔记1

参考&#xff1a;https://www.bilibili.com/video/BV1D84y1y73v/?share_sourcecopy_web&vd_sourcefc187607fc6ec6bbd2c74a3d0d7484cf 文章目录 零、入门名词解释1. Compiler & Interpreter2. AOT静态编译和JIT动态解释的编译方式3. Pass4. Intermediate Representatio…

基于netty的rpc远程调用

QPRC &#x1f680;&#x1f680;&#x1f680;这是一个手写RPC项目&#xff0c;用于实现远程过程调用&#xff08;RPC&#xff09;通信&#x1f680;&#x1f680;&#x1f680; 欢迎star串门&#xff1a;https://github.com/red-velet/ &#x1f680;Q-PRC 一、功能特性 …

关于HIVE的分区与分桶

1.分区 1.概念 Hive中的分区就是把一张大表的数据按照业务需要分散的存储到多个目录&#xff0c;每个目录就称为该表的一个分区。在查询时通过where子句中的表达式选择查询所需要的分区&#xff0c;这样的查询效率会提高很多 个人理解白话:按表中或者自定义的一个列,对数据进…

C#中XML文档与Treeview控件操作的数据同步

在前文《C#使用XML和Treeview结合实现复杂数据采集功能》中&#xff0c;使用Treeview展示了XML的数据&#xff0c;问题是如果在Treeview上进行了操作&#xff0c;怎样同步更改XML数据的内容呢&#xff1f; 这个问题看似简单&#xff0c;实现起来有一点小麻烦。 要实现的操作功能…

C语言假期作业 DAY 13

一、选择题 1、如果 x2014 &#xff0c;下面函数的返回值是&#xff08; &#xff09; int fun(unsigned int x) { int n 0; while(x 1) { n; x x | (x 1); } return n; } A: 20 B: 21 C: 23 D 25 答案解析 正确答案&#xff1a;C 这个作用是对整型中0的个数进行统计&…

Spring(九) - 解惑 spring 嵌套事务.2

1. 事务传播特性 在所有使用 spring 的应用中, 声明式事务管理可能是使用率最高的功能了, 但是, 从我观察到的情况看,绝大多数人并不能深刻理解事务声明中不同事务传播属性配置的的含义, 让我们来看一下 TransactionDefinition 接口中的定义 Java代码 /** * Support a cu…

K8s中的Secret

Secret作用&#xff1a;加密数据存在etcd里面&#xff0c;让pod容器以挂载Volume方式进行访问。场景&#xff1a;凭据

linux允许root远程ssh登录

修改文件/etc/ssh/sshd_config # cat /etc/ssh/sshd_config ... #LoginGraceTime 2m #PermitRootLogin prohibit-password #StrictModes yes #MaxAuthTries 6 #MaxSessions 10 ...将 #PermitRootLogin prohibit-password标注为&#xff1a; PermitRootLogin yes样例&#xf…

规划路线(微信小程序、H5)

//地图getLocationDian(e1, e2) {console.log(e1, e2);let self this;self.xx1 [];self.xx2 [];self.points [];// self.markers[]console.log(self.markers, >marks);// self.$jsonp(url, data).then(re > {// var coors re.result.routes[0].polyline;// for (v…