【从Python基础到深度学习】 8. VIM两种状态

一、安装

sudo apt install vim

二、VIM两种模式 - 命令状态/编辑状态

1.1 进入/退出VIM

进入VIM

vim

退出vim 

:q <enter>

2.2 根目录下添加配置文件

window下创建vimrc类型文件内容如下:

set nu
set cursorline
set hlsearch
set tabstop=4

使用Winscp 将vimrc文件拖入根目录下(Winscp使用见【从Python基础到深度学习】3. Winscp与Ubuntu使用及配置-CSDN博客)

更改配置文件为隐藏文件

cp vimrc .vimrc

2.3 进入vim后默认为命令模式

2.4 命令模式与编辑模式切换

按 i 键后左下角出现 insert 即进入编辑模式

编辑模式下可对文本正常进行输入

 

按 ESC键回到命令模式 

三、文档保存与退出

结束编辑:
:q
在未修改文档的情况下退出
: q !
放弃文档的修改,强行退出
: w
文档存盘
: wq文档存盘退出其他:
:help命令查看该命令的帮助提示(不常用,当不小心按F1时,通过:q进行退出>
: % ! xxd十六进制模式
: %!xxd -r 返回文本模式中间有一个空格的
如果在编辑过程中不小心按了Ctrl+s, vim 会处于僵死状态,按Ctrl+q可以恢复。
 

四、删除与修改

X 删除光标处的字符
dd 删除光标所在的整行
[n]dd 删除光标所在行以及下面的两行(删除[n]行,[n]表示一个整数)
D 删除光标到行尾的文本,常用语删除注释语句(d$)
yy 复制光标所在的整行
[n]yy 从光标开始往下复制n行,[n]表示一个整数

p 将复制后的文本粘贴到光标处
u 撤销上次操作

先yy后再去p的效果就是复制粘贴的效果
先dd后再去p的效果就是剪切的效果
 

五、光标移动

^光标移动到行首
$光标移动到行尾
Ctr1+d向下翻半页
Ctrl+f向下翻一页
Ctrl+u向上翻半页
Ctrl+b向上翻一页
gg光标定位到文档头
G光标定位到文档尾
H光标定位到当前页首
L光标定位到当前页的最后一行的行首
w光标往后移一个字
b光标往前移一个字
[n]+光标向后移动n行,[n]表示一个整数10+
[n]-光标向前移动n行,[n]表示一个整数10-
[n]G光标定位到第n行行首,[n]表示一个整数20G
:[n]到达第[n]行

六、查找与替换

/[str]
查找字符串str,[str]表示要查找的字符串回车后会加亮显示所有找到的字符串,接着
命令n移动到下一个找到的字符串,命令N(shift + n)移动到上一个找到的字符串。


:s/[src]/ [dst] 

部分替换(只能替换光标之所在的行) /i忽略大小写 /g全部匹配
:3,6s/[src]/[dst]/ig   (3-6行中进行替换)



: %s/[src]/[dst]/g 

全部替换,将文档中所有src的字符串替换为dst字符串

:%s/^ l/g

将文档每一行的行首的空格去掉
 

七、 块操作

v 可视化块选择状态

  • 选中块之后,可以对块进行删除(d),复制(y),剪切(x),粘贴(p)

Ctrl +v 竖向选择模式,主要用于批量注释代码,输入步骤如下:

  1. 首先按ctr1+v,竖选选中要注释的行
  2. 输入Ⅰ(注意是大写的I),然后输入/ /3、再输入esc,就会看到选中的行被注释了。
     

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

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

相关文章

14-k8s控制器资源-rs控制器replicasets

replicaset副本控制器&#xff0c;简称&#xff1a;rs控制器&#xff1b; 用法&#xff1a;与rc控制器“几乎”相同&#xff1b; 能力&#xff1a;可以指定pod的副本始终存活&#xff0c;相比于rc控制器&#xff1b;支持标签匹配&#xff0c;也支持标签表达式 注意&#xff1a;…

ssm的网上招聘系统(有报告)。Javaee项目。ssm项目。

演示视频&#xff1a; ssm的网上招聘系统&#xff08;有报告&#xff09;。Javaee项目。ssm项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系结构&#xff0c;通过Spring SpringMv…

platformio 提示 fatal error: TimeLib.h: No such file or directory 的解决方案

在platformio编译arduino项目的时候&#xff0c;如果提示fatal error: TimeLib.h: No such file or directory&#xff0c;解决方法有2&#xff1a; 方法1&#xff1a; 在项目的platformio.ini文件中&#xff0c;添加 lib_deps # Using library Id44方法2&#xff1a; 通过…

java的面向对象编程(oop)——认识枚举

前言 打好基础&#xff0c;daydayup! 枚举 1&#xff0c;认识枚举&#xff1a; 枚举是一种特殊类&#xff0c;用enum语句修饰。与普通类不同的是&#xff1a;枚举类的第一行只能写一些合法的标识符&#xff08;名称&#xff09;&#xff0c;多个名称用逗号隔开。这些标识符&a…

后端接口如何部署到前端

先跑通后端 把后端接口路径写入前端两个env.js中的BASE_API 这里以后要替换成个人域名,目前就可以对前端进行打包,改了代码记得先重新打包

安卓TextView 拖动命名

需求&#xff1a;该布局文件使用线性布局来排列三个文本视图和一个按钮&#xff0c;分别用于显示两个动物名称以及占位文本视图。在占位文本视图中&#xff0c;我们为其设置了背景和居中显示样式&#xff0c;并用其作为接收拖放操作的目标 效果图&#xff1b; 实现代码 第一布…

如何查找Windows的桌面文件夹?这里提供详细步骤

当你的电脑上有不同的用户时&#xff0c;Windows 11、10、…上的桌面文件夹或桌面目录特别有用&#xff0c;那么哪里才是真正的桌面文件夹目录。 自己的Windows桌面目录 1、启动Windows资源管理器 2、按F4键并输入%UserProfile% 3、点击桌面 这是你个人桌面的正确文件夹路径…

【送码】【IOS付费榜92名】春节不打烊,功德加倍攒

整体效果概览图 船新玩法&#xff0c;换个姿势攒功德 竞品玩法 过于简单&#xff1a;都是敲敲&#xff0c;然后设置里换换木鱼样式、音色等 本APP玩法 功德上云&#xff1a;敲击之后&#xff0c;会将所积攒的功德上传至fo祖云端 功德可视化&#xff1a;每日功德、3D功德地…

Calendar的使用(Java)

直接从需求来理解&#xff1a;将2024年2月16日增加一个月 如果不使用Calendar的话&#xff0c;我们需要定义字符串记住这个日期&#xff0c;然后把字符串解析成Date日期对象&#xff0c;通过Date日期对象获取其毫秒值&#xff0c;然后增加一个月的毫秒值&#xff0c;再格式化时…

东莞添威电子开关电源测控软件开发

加我微信hezkz17&#xff0c;可学习嵌入式开关电源开发技术进答疑群 1 ATE 2 开关电源产品

2024年!PyCharm快捷键大全

收藏&#xff01;PyCharm快捷键大全 工欲善其事必先利其器&#xff0c;PyCharm 是最popular的Python开发工具&#xff0c;它提供的功能非常强大&#xff0c;是构建大型项目的理想工具之一&#xff0c;如果能挖掘出里面实用技巧&#xff0c;能带来事半功倍的效果。 本文主要向大…

try catch中的finally代码一定会执行吗?

1.正常情况 正常运行的情况下&#xff0c;finally 中的代码是一定会执行的&#xff0c;但是&#xff0c;如果遇到以下异常情况&#xff0c;那么 finally 中的代码就不会继续执行了&#xff1a; 程序在 try 块中遇到 System.exit() 方法&#xff0c;会立即终止程序的执行&#…

Kubernetes(K8S)集群部署实战

目录 一、准备工作1.1、创建3台虚拟机1.1.1、下载虚拟机管理工具1.1.2、安装虚拟机管理工具1.1.3、下载虚Centos镜像1.1.4、创建台个虚拟机1.1.5、设置虚拟机网络环境 1.2、虚拟机基础配置&#xff08;3台虚拟机进行相同处理&#xff09;1.2.1、配置host1.2.2、关闭防火墙1.2.3…

构造题记录

思路&#xff1a;本题要求构造一个a和b数组相加为不递减序列&#xff0c;并且b数组的极差为最小的b数组。 可以通过遍历a数组并且每次更新最大值&#xff0c;并使得b数组为这个最大值和当前a值的差。 #include <bits/stdc.h> using namespace std; #define int long lon…

【BUUCTF 加固题】Ezsql 速通

&#x1f36c; 博主介绍&#x1f468;‍&#x1f393; 博主介绍&#xff1a;大家好&#xff0c;我是 hacker-routing &#xff0c;很高兴认识大家~ ✨主攻领域&#xff1a;【渗透领域】【应急响应】 【Java】 【VulnHub靶场复现】【面试分析】 &#x1f389;点赞➕评论➕收藏 …

阿里云/腾讯云幻兽帕鲁服务器据点最大帕鲁工作数量最多15个,改成20不生效?

例如&#xff0c;在阿里云的计算巢管理中&#xff0c;找到你的这台部署幻兽帕鲁的服务器实例&#xff0c;选择右上角的“修改游戏配置” 然后选择“基地内工作帕鲁的最大数量”改成20 有人说更改上面的数字&#xff0c;根本不起作用。原因可能如下&#xff1a; 参考资料&#…

SORA:OpenAI最新文本驱动视频生成大模型技术报告解读

Video generation models as world simulators&#xff1a;作为世界模拟器的视频生成模型 1、概览2、Turning visual data into patches&#xff1a;将视觉数据转换为补丁3、Video compression network&#xff1a;视频压缩网络4、Spacetime Latent Patches&#xff1a;时空潜在…

《数电》理论笔记-第3章-常用组合逻辑电路及MSI组合电路模块的应用

一&#xff0c;编码器和译码器 1&#xff0c;编码器 编码:用由0和1组成的代码表示不同的事物。 编码器:实现编码功能的电路&#xff0c; 常见编码器:普通编码器、优先编码器、二进制编码器二-十进制编码器等等 1.1 三位二进制普通编码器和三位二进制优先编码器 1分58秒开始 …

为什么您的企业 AI 战略可能会在 2024 年失败:模型下降与数据上升

我怀疑有些人会指责我设置引诱性标题。 其他人会说&#xff0c;这并不是真正的范围——大多数人在最初的人工智能尝试中都会失败&#xff0c;但这并不重要&#xff0c;学习是值得的。在某种程度上&#xff0c;两者都是对的——但我认为为什么企业会失败是值得探索的&#xff0c…

并发编程(1)基础篇

1 概览 1.1 这门课讲什么 这门课中的【并发】一词涵盖了在 Java 平台上的 进程线程并发并行 以及 Java 并发工具、并发问题以及解决方案&#xff0c;同时也会讲解一些其它领域的并发 1.2 为什么学这么课 我工作中用不到并发啊&#xff1f; 那你还是没有接触到复杂项目. …