整理VIM常用命令

ZYNQ平台上基于SGMII接口的IEEE1588/PTP协议高效实现方案 本文深入探讨了在Xilinx ZYNQ平台上,利用SGMII接口实现高精度IEEE1588/PTP协议的方案。通过将硬件时间戳单元集成在PL端的AXI以太网子系统IP核中,该方案绕过了软件协议栈和外部PHY的延迟,实现了亚微秒级的时间同步精度。文章详细解析了硬件设计、Vivado IP配置、Linux驱动移植及PTP协议栈部署等关键步骤,为工业控制、通信等领域的高精度网络同步提供了高效、灵活的解决路径。 阅读详情

个人非常喜欢VIM来写代码,简洁、易用,但是刚开始使用的时候,有些命令还是很难记忆的。这里整理一下。

 

以下/代表或者。比如p/P代表p或者P;ctrl+f/b/u代表ctrl+f或者ctrl+b或者ctrl+u。

 

VIM分为几种模式:普通模式、插入模式、命令行、可视模式、执行shell命令等。

其中普通模式为打开vi的默认模式,它响应键盘,进行光标操作、复制、粘贴等。

插入模式,或者说是编辑模式,使用i、I、a、A、o、O、s、S等可以由普通模式进入,然后进行编辑。

命令行模式,在屏幕的最下方,使用Ctrl+c由插入模式转化到普通模式,再:由普通模式转化到命令行模式。该模式下执行VIM的命令,比如保存、退出、查找、替换等。

可视模式,使用V或者v,由普通模式转化到可视模式。这样可以按行、或者区块选定区域(使用上下左右键),然后复制等。

执行shell命令,在命令行模式下,使用:! 后面跟上shell命令,就可以执行了。

 

 

普通模式下,光标移动比较常用:hjkl和方向键一样的效果,还有ctrl+f/b/u等进行翻页,^$进行行首尾的定位,w/b按单词位移,gg回到文件首,G到文件末尾等。

 

普通模式下,字母的替换为:在当前光标位置按r,则当前字母被替换为下一输入的字母。

 

普通模式下,撤销与反撤销: u,U,ctrl+r。

 

普通模式下,复制与粘贴:yy是复制一行,3yy是复制3行(依此类推);dd是删除当前行,3dd是删除3行;p/P是粘贴(可以粘贴y或者d的内容)。vi中可以使用多个复制缓冲区,("ay是复制到缓存区a,"ap是从缓冲区a粘贴,可以用26个字母命名缓冲区)

 

普通模式下,给文章加个行标记,下次从文件别的地方跳转回来:ma是给当前行标记为a,然后用'a跳转回来。

 

 

命令行模式下,查找:/为向下查找,?为向上查找,比如/aaaa,是查找匹配aaaa的字符串。n/N向下/上的下一个。为了避免输入,可以在当前光标所在单词处,使用*/#,向下/上查找当前单词(但是注意,这里实际上是匹配“整个”单词,就是包括单词边界,比如split实际上是/<split/>,也就是不可以匹配vsplit。)

 

命令行模式下,替换:语法为 :%s/aaaa/bbb/g,将所有的aaaa替换为bbb;后面的g代表全部替换,否则仅替换一次。这里支持一些正则。

 

命令行模式下,保存退出等: :w 保存; :q 退出; :wq保存并退出; :q!不保存退出。(在普通模式下,ZZ就是保存退出了)

 

命令行模式下,打开新窗口:split filename(水平打开),vspilt filename(垂直打开)。之后,使用ctrl+w加一些组合键来操作这些窗口。(Ctrl+w ctrl+w)在窗口间切换,(ctrl+w ,)方向键也是切换。(ctrl+w =)窗口等大小。(ctrl+w _)当前窗口最大化。(ctrl+w +/-)当前窗口变大/小一行。(移动窗口:ctrl+w H|J|K|L)

更方便的移动方式,在.vimrc中加入:

nmap <C-j> <C-W>j

nmap <C-k> <C-W>k

nmap <C-h> <C-W>h

nmap <C-l> <C-W>l

这样就可以利用 ctrl+h|j|k|l 来模拟 ctrl+w 再加hjkl的命令了。

 

命令行模式下,打开其他文件: :e filename,缓存会切换到新文件处,所以打开之前需要保存当前文件(不保持也没关系,它会提醒你的)。然后使用ctrl+^在文件间切换。

使用:e打开的多个文件其实都在文件缓冲区内,可以通过 :ls 命令查看,然后通过 :buffer Num 或者 Num ctrl+^ 切换。

 

(vim其实一下子可以打开多个文件,vi file1 file2 .. filen,之后使用:n/N在文件间切换)

(vi -d file1 file2打开两个文件,并且使用diff比较它们的异同)

 

可视模式,我唯一使用它的就是区域选择,然后可以使用yy、dd,或者命令行下的替换。

 

插入模式,经常使用的是补完,比如之前输入过单词verylong,那么下次输入到very的时候,ctrl+p/n可以补完。(ctrl+x ctrl+f)是在系统中搜索,补完文件名。(ctrl+x ctrl+l)是补完一条句子。

 

写代码的时候,可能想看看某个文件在什么地方,或者执行一些shell命令,这时可以(:! ls *)。

 

ps: set indentexpr=

 

最后,要多用help命令。在命令行模式下 :help pattern可以看到pattern相关的帮助,如果不带参数,就会看到vi的帮助文档。

 

使用ctrl+]|T (同ctags)在帮助文档的主题之间跳转。

 

---------------------------------------------------

重要能把ctags用到php上面了,这里总结一下(ps:同时说说Project插件)

 

1、下载vim的project插件,解压到home的.vimrc下面就可以了(具体我记得我上面博客说过)

2、使用/C,/R来新建和更新project,空格来缩放窗口

 

3、首先看看ctags的默认语言映射(就是用什么语言机制来解析一种后缀名的文件):

ctags --list-map

为了使.inc后缀的文件也映射到PHP,我们使用以下命令生成tag:

ctags --langmap=PHP:+.inc -R * 

 

4、使用ctrl+] 、ctrl+t来在function之间跳转

5、如果报找不到tag,那么看~/.vimrc有没有一些关于ctags的配置,默认vim会在当前目录去load tag文件的

 

 

-------------------------------------------------------

 

在用鼠标粘贴内容到vim中的时候,它的自动补完、缩进等有时会很讨厌,这时可以这样:

 

在粘贴文本到 vim 前,先:

:
set paste

完了再恢复:

:
set paste!


其实先禁用 smartindent

也一样的,不过至少 paste

比 smartindent

短 6 个字符,呵呵。

---------------------------------------------------------

 

vim配置问题:

 

1、打开vim,恢复到上次关闭的位置

if has("autocmd")
autocmd BufRead *.txt set tw=78
autocmd BufReadPost *
/ if line("'/"") > 0 && line ("'/"") <= line("$") |
/ exe "normal g'/"" |
/ endif
endif

参考文档: http://man.lupaworld.com/content/manage/ringkee/vim.htm

-----------------------------------------------------------

vim +Tlist +Project

参考文档: http://www.ibm.com/developerworks/cn/linux/l-tip-vim2/index.html

 

1、下载并按照project插件

 

2、下载 vim的taglist插件 :http://www.vim.org/scripts/download_script.php?src_id=7701

unzip taglist.zip -d ~/.vim

该插件特性:

  • 可以显示宏(macro)、函数(function)、变量(variable)、类型定义(typedef)、类(class)、结构(struct)等多种内容信息;
  • 打开多个文件时,可以同时看到多个文件的结构信息;
  • 在左边的 taglist 窗口显示的名称上双击鼠标或按回车键,右边主窗口中会跳转到相应的定义位置;
  • 右边窗口中光标的位置改变,左边的窗口也会在 4 秒内(缺省值,参见“:help 'updatetime'”)黄色加亮显示相应的名称;
  • 在启用/关闭 taglist 时,插件能够自动改变当前 Vim 窗口的大小(不管是文本模式的 Vim 还是图形界面的 Vim),除非使用“:let Tlist_Inc_Winwidth=0”关闭这一功能(当使用这一功能导致兼容性问题时)。

图8

 

3、 vim +Tlist +Project filename

 

使用ctrl+ww在窗口之间切换。或者ctrl+w -- h|l 控制向左|右窗口。

taglist 的折叠使用 - 控制。

 

 

----------------------------------------------------

vim对grep和make的支持:

Make [17] 和grep [18] 应当算是 Unix 世界里无人不晓的基本工具了吧。很自然的,Vim 对它们有着特殊的支持。该支持主要通过访问一个特殊的快速修订窗口(quickfix window)来实现。直接在 Vim 的命令模式里输入相应的 make 或 grep 命令(如“:grep foo *.c”)即可将命令的执行结果放入该窗口,同时根据返回的结果跳转到第一个错误(make 的情况;在使用 grep 时是匹配成功之处)。以下是常用的“快速修订”命令:

  • :cn(显示下一个错误)
  • :cp(显示上一个错误)
  • :cl(列出所有的错误及其编号)
  • :cc(跳转到指定编号的错误)
  • :copen(打开快速修订窗口,在其中显示所有错误,可在错误上双击鼠标或按回车键跳转至该错误;示例参见图 4)

    图 4
    图4
  • :cclose(关闭快速修订窗口)

Vim 的这个特性也可以与 make 和 grep 以外的程序一起工作(事实上,在 Windows XP 上,“:grep”命令一般调起的是“findstr /n”)。具体调用那个程序由选项 makeprg(Linux 下缺省为“make”)和 grepprg(Linux 下缺省为“grep -n $* /dev/null”)控制,而如何解析返回的内容则由选项 errorformat 和 grepformat 控制。鉴于在 Unix/Linux 下一般不需更改这些选项的内容,此处不再详述

 

 

-----------------------

vim 查找 取反:

:g!/searchkeyword

 

数字人接大模型第二步:语音克隆 推荐XTTS-v2项目,由Coqui公司开发的语音生成模型,专为多语言语音克隆和生成设计。它支持17种语言,包括英语、西班牙语、法语、德语、意大利语、葡萄牙语、波兰语、土耳其语、俄罗斯语、荷兰语、捷克语、阿拉伯语、中文、日语、匈牙利语、韩语和印地语。XTTS-v2的核心优势在于其仅需6秒的音频片段即可实现语音克隆,无需大量的训练数据。此外,它还支持情感和风格转移、跨语言语音克隆以及多语言语音生成,采样率高达24kHz。地址:https://github.com/archwesome/XTTS-v2。 阅读详情

相关推荐

手把手实战:快速构建合同智能审查Agent

配置“模型供应商”,选择 “OpenAI-API-compatible”,输入申请到的 “API Key” 和 “URL” 后点击“保存”,如下图示例完成 “AlayaNew/DeepSeek-R1。至此,我们完成了合同智能审核Agent的构建,我们也可以在Dify中把这个智能体发布为API服务,这样企业其它应用如OA就可以通过API集成,在原合同流程中实现智能审核工作。该节点“输入变量”中,配置从“开始”节点中获取上传的文件,输出变量就是合同的内容,配置如下图。接下来我们开始创建智能体。

weixin_46880696的博客 4403

Python numpy中的hsplit()和vsplit()函数详细解释

在网上看到了一些关于vsplit()函数和hsplit()函数的解释,感觉不是很好理解, 同时有的也不是很全面。这里我想根据我的个人理解,用我自己的语言表达出这两个函数的解释。 vsplit():按列对数组进行拆分 import numpy as np x=np.arange(16).reshape(4,4) print(x) """"x=[[ 0 1 2 3] [ 4 5...

page190017的博客 4964

PointNet/PointNet++模型调参实战:如何用PyTorch让你的点云分割精度再涨5个点?

本文深入探讨了PointNet/PointNet++模型在点云分割中的调参技巧,通过PyTorch实现精度提升5个点的实战方法。重点分析了点云密度自适应策略、感受野与细节保留的平衡,以及训练加速与稳定性技巧,适用于电力巡检、自动驾驶等场景的激光点云数据处理。

weixin_30836759的博客 476

Vim 常用命令学习

Ctrl + f 屏幕向下移动一页 Ctrl + b 屏幕向上移动一页 0 或功能键 Home 移动到这一行的最前面字符处 $ 或功能键 End 移动到这一行的最后面字符处 G 移动到这个文件的最后一行 gg 移动到这个文件的第一行,相当于1G N[Enter 光标向下移动n行 /word 向下查找一个名称为word的字符 ?word 向上查找一个名称为word的字符 n 重复前一个查找的操作 :w 将编辑的数据写到硬盘,但是不会退出。 :q 如果文件没修改,正常退出;如果文件修改了但.

Looking的网页备忘录和个人知识库 889

【博弈论基础与几大经典模型】古诺模型、斯塔克尔伯格模型Stackelberg Game、价格领导模型、Bertrand模型、Sweezy模型

博弈论中经典模型☞古诺模型、斯塔克尔伯格模型、价格领导模型等

学习记录 3万+

AUTOSAR网络管理配置详解:Vector DaVinci工具全面讲解

手把手带你用Vector DaVinci完成AUTOSAR网络管理模块的配置,涵盖NmChannel、NmPdu、重复帧抑制等关键参数设置,深入解析CAN总线上的NM报文调度与唤醒机制,助你扎实掌握AUTOSAR网络管理核心实践。

weixin_42504649的博客 168

vim 常用命令

vim Linux中常用的文本操作工具, 以下列举一些常见的操作命令. 使用vim刚打开一个文件时处于一般模式, 可以直接使用一些命令。在一般模式下可以按冒号进入命令模式,可输入一些命令按回车执行, 执行完后自动退回一般模式。按字母"i", 'a'等进入编辑模式, 按"esc"键,从编辑模式退回到一般模式 一般模式:在编辑模式下按“esc”, 命令模式下,命令执行完自动处于一般模式 ...

zona 769

数字滤波器应用介绍

线性滤波器FIR ,会引起恒定延迟,通过补零的方式补偿非线性滤波器IIR,会引起频率相关的延迟,通过零相位延迟filtfilt补偿从信号中去除不需要的频谱时,通过滤波和补偿实现。如果需要去除的频率与采样率相差甚远,比如4kHz 与100Hz, 可通过 低通滤波->补偿->降采样–> 滤波 补偿 -->上采样还原的方法。*降采样前一定要先低通滤波为了防止混叠。

weixin_39107270的博客 274

vim使用方法

Vim的使用方法

qq_45126578的博客 783

【Python3教程】Python3高级篇之uWSGI 安装配置

本文介绍了在Python 3环境中安装和配置uWSGI的完整流程,涵盖基本安装、Flask/Django应用部署、Nginx集成以及systemd管理等关键环节。主要内容包括:uWSGI的安装前提条件,创建简单WSGI应用,编写uWSGI配置文件(.ini格式),与Nginx配合实现生产环境部署,以及使用systemd实现服务管理。文章还提供了常见Web框架(Flask、Django)的部署示例和高级配置建议,如负载均衡、HTTPS设置等。最后列出了权限、端口占用等常见问题的解决方案,为开发者提供了一套完整

No8g攻城狮的博客 437

基于Qt C++开发一款国产化的福昕风格PDF编辑工具

QString text = QInputDialog::getText(this, "文本批注", "输入批注内容:", QLineEdit::Normal, "", &ok);QString savePath = QFileDialog::getSaveFileName(this, "保存加密PDF", "", "PDF文件 (*.pdf)");QAction* zoomInAct = new QAction(QIcon::fromTheme("zoom-in"), "放大", this);

寒寒豆豆软件公司的博客 236

Vim 编辑器的常用命令整理

掌握这些命令后,Vim 的编辑效率会显著提升!练习时建议从常用操作开始逐步熟悉。

笔记 1003

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

常用命令整理一(git、adb、vim、cmd、sh)

常用命令整理(git)1、git篇(1)安装git(2)配置(3)使用(4)基础概念 1、git篇 (1)安装git # 查看git版本 git --version (2)配置 # --system # --global:针对当前用户 # --local:针对某个仓库 git config --global user.name "your_username" # --global 选项对系统上所有仓库生效,去掉该参数只对当前仓库有效 git config --global user.email "your

LilyZJ的博客 1858

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Vim常用命令整理

Vim命令浩如烟云,我们很难精通所有命令,在实际工作中我们常用的命令也就那么几十个。文本整理了工作中常用的vim命令,掌握了以下命令就基本满足我们工作需要。 文件命令 我们经常使用vim file 命令打开一个文件,同时我们也可以使用vim file1 file2 file3 ...打开多个文件。 如果我们已经打开了某个文件file1,使用 :open file2 在新窗口中打开其他文件。这...

JKshenzhao的博客 872

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

vim常用命令整理

vim编辑器常用命令整理(持续更新)常用命令vim test.md 直接新建了一个test.md文件。保存文件:点击 `ESC` 键,在英文输入法状态下输入:`:wq` 保存并退出; `:wq!`强制保存并退出;`:w`保存但不退出;`:q`退出但不保存&lt;!--more--&gt;删除:`dd` 删除光标所在当前行(点击`ESC`输入`dd`即可,不用输入`:`) 删除当前行后面的全部内...

TyCoding的博客 508

vi/vim常用命令整理

vi/vim常用命令整理

weixin_49114503的博客 1480

Linux 之 Ubuntu 上 Vim 的安装、配置、常用命令的简单整理

Linux/开发的一些知识整理,方便后期遇到类似的问题,能够及时查阅使用。本节介绍,Ubuntu 上 vim 的安装、配置、常用命令的简单整理。如果有不足之处,欢迎指出,或者你有更好的方法,欢迎留言。Vim是从 vi 发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用,和Emacs并列成为类Unix系统用户最喜欢的文本编辑器。[1]vim的设计理念是命令的组合。

仙魁XAN 2万+

vim 常用命令整理

vim 常用命令整理vim 常用命令整理vi/ vim 进入编辑模式保存文件显示行删除复制粘贴 vim 常用命令整理 vi/ vim 进入编辑模式 vim a.txt 按 [i],[a],[o] 键盘 进入编辑模式 按 [esc] 退出编辑模式 保存文件 输入 : wq,回车,保存并退出 vim 编辑 输入 : q! 回车, 退出 vim 编辑 显示行 临时显示行数 :set number 回车 :set nonumber 回车 删除 [x] 删除单个字符 [dd] 删除行 [3dd] 删除3行 [

u010226719的博客 337

【Linus VIM】常用命令整理

所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在。vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。但是目前我们使用比较多的是 vim 编辑器。基本上 vi/vim 共分为三种模式,

m0_58239800的博客 166

Vim主要命令整理

Vim常用命令整理 多多练习哦!

studyhardi的博客 217

vim 命令_Vim 基础和常用命令整理

0. 前言大家好,我是多选参数的程序锅,一个正在”捣鼓“操作系统、学数据结构和算法以及 Java 的废物菜鸡。由于自己比较喜欢 Vim(VSCode 下都在使用 Vim 的插件),并且 Vim 操作起来也比较方便,所以整理了一下 Vim 的基础和常用命令的整理(PS:说到 Linux ,大炮是我心中的 Linux 大神)。另外,程序锅整了一个关于算法的 github 仓库:https:/...

weixin_39958631的博客 241

vi vim常用命令整理

vi vim常用命令整理编辑命令移动其他操作文本创建和操作命令 编辑命令 文本目标 修改 删除 复制 1个单词 cw dw yw 2个单词 c2w or 2cw 2dw or d2w 2yw or y2w 向后3个单词 3cw or c3w 3dw or 3wd 3cy or c3y 一整行 cc dd yy or Y 光标位置到行尾 c$ or C d$ or D...

SiriusMoon的博客 359

Vim 基础和常用命令整理

0. 前言大家好,我是多选参数的程序锅,一个正在”捣鼓“操作系统、学数据结构和算法以及 Java 的废物菜鸡。由于自己比较喜欢 Vim(VSCode 下都在使用 Vim 的插件),并且 ...

多选参数 273
上一篇: 浏览器兼容性相关的一些小问题
下一篇: 最近疑惑的问题
flykobesummer
博客等级 码龄19年 23粉丝 177原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值