MIT-Missing Semester_Topic 3:Editors (Vim) 练习题

文章目录

      • 练习一
      • 练习二
      • 练习三
      • 练习四
      • 练习五
      • 练习六
      • 练习七
      • 练习八

本 Topic 的 MIT 讲解网页(练习题未给解答)

练习一

自行完成 vimtutorvimtutor 是 Vim 本身附带的一个入门教程,在 shell 中直接输入 vimtutor 便能运行。注意该教程在 80×24 大小的窗口下使用最佳。

在我的 bash(WSL终端)中运行 vimtutor

cowbby@LAPTOP-UD6DKAMF:~$ vimtutor

会自动以 Vim 编辑器打开该教程,如下。注意肉眼可见似乎窗口大小不是最适合。

请添加图片描述

若想调节窗口大小至最佳,可以:右键 -> 属性 -> 布局 -> 调整 “窗口大小” 下的宽度与高度。

在 Windows 下,只要(开始键)搜索 ‘vimtutor’ 便能找到打开。

请添加图片描述

该教程简明扼要、设计精巧、讲练结合,共 7 个 Lesson,每个 Lesson 下若干小节,且最后有 Lesson 的 Summary,值得一看。

不过感觉不适合直接靠阅读这个来入门,还是先收看专业的讲解,通过 vimtutor 来回顾和初步练手这样更好。

练习二

下载老师高度推荐的基础 Vim 配置文件,存入配置文件 ~/.vimrc 中,并自行在 Vim 中通读其内容,并观察该配置给 Vim 编辑器外观及表现的细微变化。

按照要求做即可。下面汇总一下里面的主要内容。文件中有详细注释,可下载自行阅读。

set nocompatible
syntax on
set shortmess+=I
set number
set relativenumber
set laststatus=2
set backspace=indent,eol,start
set hidden
set ignorecase
set smartcase
nmap Q <Nop> 
set noerrorbells visualbell t_vb=
set mouse+=a

练习三

安装并配置 Vim 插件 CtrlP

  1. 创建插件目录:mkdir -p ~/.vim/pack/vendor/start
  2. 下载插件:cd ~/.vim/pack/vendor/start; git clone https://github.com/ctrlpvim/ctrlp.vim
  3. 阅读该插件的文档,尝试使用 CtrlP 来定位文件,打开 Vim 在其命令行中输入 :CtrlP
  4. ~/.vimrc 中增加配置以实现按 Ctrl-P 来打开 CtrlP

上面第 3 步效果如下:

请添加图片描述

再点击目标文件/上下键选中后回车便能打开。

第 4 个小任务待学习后完成……

练习四

自行用 Vim 更正 lecture 上演示的 demo,从而初步练习 Vim。

lecture 中老师有演示,并且可以讲解文档中有总结修改点。

练习五

使用 Vim 编辑器进行一个月内的所有的编辑工作。

Whenever something seems inefficient, or when you think “there must be a better way”, try Googling it, there probably is.

练习六

参考文档中的提示,在其它常用工具中配置 Vim 的功能。

值得一提的是,VSCode 中有模拟 Vim 的插件 Vim

请添加图片描述

练习七

进一步自定义 ~/.vimrc 以及安装更多插件。

练习八

(进阶)用 Vim 的宏将 XML 文件(示例文件)转换成 JSON 文件,若卡住则可回顾讲解文档中的宏。

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

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

相关文章

[ubuntu]split命令分割文件

split 命令 $ split --help Usage: split [OPTION]... [INPUT [PREFIX]] Output fixed-size pieces of INPUT to PREFIXaa, PREFIXab, ...; default size is 1000 lines, and default PREFIX is x. With no INPUT, or when INPUT is -, read standard input.Mandatory argume…

千里马平台设计说明-字典缓存

字典是软件开发中常用的功能。使用字典的核心问题是翻译&#xff0c;因为数据库中存储的是代码&#xff0c;前台页面展示的是描述。用于多语言环境时&#xff0c;翻译过程还需要根据语言环境进行适配。为了加快字典的加载速度&#xff0c;千里马平台采用了后台缓存前台缓存2级缓…

Gin 中使用 base64Captcha 生成图形验证码

验证码库 https://github.com/mojocn/base64Captcha 中文文档 Go进阶37:重构我的base64Captcha图形验证码项目 | &#x1f436;❤️&#x1f980; 在models文件夹中写一个验证码的文件&#xff0c;Captcha.go package modelsimport ("github.com/mojocn/base64Captcha&quo…

【小沐学GIS】基于C++QT绘制三维数字地球Earth(OpenGL)

&#x1f37a;三维数字地球系列相关文章如下&#x1f37a;&#xff1a;1【小沐学GIS】基于C绘制三维数字地球Earth&#xff08;456:OpenGL、glfw、glut&#xff09;第一期2【小沐学GIS】基于C绘制三维数字地球Earth&#xff08;456:OpenGL、glfw、glut&#xff09;第二期3【小沐…

QT:实现图片选择器

一、效果图 二、用到的类 qApp&#xff1a;可以快速获取到项目目录位置。 QSettings &#xff1a;编写config文件&#xff0c;记录上次打开图片的位置&#xff0c;下次打开图片会从上次的位置查找图片。 QPixmap&#xff1a;用于图片的缩放&#xff0c;防止图片过小&#xff0…

DVWA靶场下载安装

DVWA介绍 DVWA 一共包含了十个攻击模块&#xff0c;分别是:Brute Force(暴力破解)、Command Injection(命令行注入)、CSRF(跨站请求伪造)、File Inclusion(文件包含)、File Upload(文件上传)、Insecure CAPTCHA (不安全的验证码)、SQL Injection(SQL注入)、SQL Injection Blin…

【Java程序设计】【C00249】基于Springboot的私人健身与教练预约管理系统(有论文)

基于Springboot的私人健身与教练预约管理系统&#xff08;有论文&#xff09; 项目简介项目获取开发环境项目技术运行截图 项目简介 这是一个基于Springboot的私人健身与教练预约管理系统 本系统分为系统功能模块、管理员功能模块、教练功能模块以及用户功能模块。 系统功能模…

一、部署Oracle

部署Oracle 一、Docker部署1.Oracle11g1.1 测试环境1.1.1 拉取镜像1.1.2 启动容器1.1.3 配置容器环境变量1.1.4 修改sys、system用户密码1.1.5 创建表空间1.1.6 创建用户并授权1.1.5 使用DBeaver测试连接 二、安装包部署 一、Docker部署 1.Oracle11g 1.1 测试环境 当前只能用…

【Spring MVC篇】Cookie和Session的获取 Header的获取

个人主页&#xff1a;兜里有颗棉花糖 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 兜里有颗棉花糖 原创 收录于专栏【Spring MVC】 本专栏旨在分享学习Spring MVC的一点学习心得&#xff0c;欢迎大家在评论区交流讨论&#x1f48c; Cookie是客户端保存用…

「知识札记」1.Object[ ]数组

前言 这个系列主要记录一些比较零碎、细节的知识点&#xff0c;随缘更新啦~ 正文 Object[]类型的数组是一个非常灵活的数据结构&#xff0c;它可以存储任意类型对象的数组。 在Java中&#xff0c;所有的类都继承自Object类&#xff0c;所以Object[ ]类型的数组可以存储任意类…

基于Java (spring-boot)的职工管理系统

一、项目介绍 基于Java (spring-boot)的职工管理系统功能&#xff1a;登录、老板、职员人事经理、职员、部门列表、职工列表、权限修改、查看所有管理、正在审核列表、添加考勤、添加职工、添加奖惩、合同列表、合同信息、等等等。 适用人群&#xff1a;适合小白、大学生、毕业…

Python学习之路-初识爬虫:requests

Python学习之路-初识爬虫:requests requests的作用 作用&#xff1a;发送网络请求&#xff0c;返回响应数据 中文文档 &#xff1a; http://docs.python-requests.org/zh_CN/latest/index.html 为什么学requests而不是urllib requests的底层实现就是urllibrequests在pytho…

360网络安全面试题汇总

防范常见的 Web 攻击 重要协议分布层 arp 协议的工作原理 rip 协议是什么&#xff1f;rip 的工作原理 什么是 RARP&#xff1f;工作原理 OSPF 协议&#xff1f;OSPF 的工作原理 TCP 与 UDP 区别总结 什么是三次握手四次挥手&#xff1f; tcp 为什么要三次握手&#xff1f; dns…

PyTorch vs TensorFlow:谁拥有更多预训练深度学习模型?

众所周知,访问预先训练的深度学习模型对于当代深度学习应用至关重要。随着最先进的模型变得越来越大,达到数万亿个参数,在许多领域,尤其是自动语音识别等领域,从头开始训练高级模型不再有意义。 鉴于预训练深度学习模型的重要性,哪个深度学习框架(PyTorch 或 TensorFlo…

“程序员的秘密:为何我们的电脑从不眠眼——揭秘背后的奥秘!“

程序员们经常不关电脑&#xff0c;这背后确实有一些实际的原因和考虑&#xff0c;而不仅仅是因为“上瘾”。以下是一些为什么程序员倾向于让电脑持续运行的原因&#xff1a; 1. 长时间的任务 程序员可能会运行一些耗时较长的任务&#xff0c;比如大数据处理、模型训练或是复杂…

【PyTorch】PyTorch中张量(Tensor)切片操作

PyTorch深度学习总结 第三章 PyTorch中张量(Tensor)切片操作 文章目录 PyTorch深度学习总结一、前言二、获取张量中的元素1、切片&#xff08;行、列数&#xff09;方法2、torch.where()函数3、使元素置零的操作 一、前言 上文介绍了PyTorch中改变张量(Tensor)形状的操作&…

Science重磅_让大模型像婴儿一样学习语言

英文名称: Grounded language acquisition through the eyes and ears of a single child 中文名称: 通过一个孩子的眼睛和耳朵基于实践学习语言 文章: https://www.science.org/doi/10.1126/science.adi1374 代码: https://github.com/wkvong/multimodalbaby 作者: Wai Keen V…

腾讯云4核8G服务器多少钱?轻量和CVM报价2024新版

腾讯云4核8G服务器S5和轻量应用服务器优惠价格表&#xff0c;轻量应用服务器和CVM云服务器均有活动&#xff0c;云服务器CVM标准型S5实例4核8G配置价格15个月1437.3元&#xff0c;5年6490.44元&#xff0c;标准型SA2服务器1444.8元一年&#xff0c;轻量应用服务器4核8G12M带宽一…

java之filter过滤器

1、概念 2、过程 3. 实现 4. 参考链接 参考的b站链接

【网工】华为设备命令学习(综合实验一)

实验要求和实验成果如图所示。 LSW2不需要其他配置&#xff0c;其下就一台设备&#xff0c;不需要区分。 LSW3配置如下&#xff1a; <Huawei>sy Enter system view, return user view with CtrlZ. [Huawei]un in en //关闭系统提示信息 Info: Information …