`
lantian_123
  • 浏览: 1374165 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

每日一Vim(2) 简单搜索

 
阅读更多

每日一Vim(2)

上一篇主要讲解了Vim的翻页(整页,半页,往上,往下),移动(单词,在一行中),拷贝(主要是y的各种组合)删除(主要是d的各种组合),今天主要简要讲解一下vim的配置(直接在当前session中通过命令配置)以及简单的搜索功能。

配置

注:以下配置只能在当前vim窗口(Session)中生效,以后我们再了解如何在把这些设置写入配置文件中。

:set filetype=python   #设置默认语言
:set tabstop=4   #设置tab默认为4个空格
:set nu     #vim窗口左侧显示行号
:set ruler  #在vim窗口显示当前光标位置

如果是撤销以上配置,只需在命令前加no即可,如::set nonu 就是取消显示行号

撤销恢复

vim本身提供了一个vimtutor的命令,旨在为用户练习,可以随意操作,在终端输入vimtotur en就能打开英文的文本界面。

  • 撤销工作:u(前提是在normal模式下)怎么确定当前的操作是不是normal呢,按一下esc键,如果不确定是否已经是normal,那就多按几下esc。 如果发现自己撤销的时候撤销过了头,那么ctrl +r 就可以实现重做
  • 命令计数器: 前面知道了翻页的操作,那么我想具体的往上或往下移动那个光标呢,那么你可以使用命令计数器来实现,如果我要向上移动8行,那么直接8k就ok了。
  • 写程序时经常会寻找匹配的括号,用%就是实现该效果。

补个移动的命令

移动到最后一行:G
移动到指定的行就是nG

简单搜索

在normal模式下,使用斜杠 /string (string 就是你要搜索的字符串),它是向下搜索,如果有多个string,那么可以用n往下查找。 ?string/string相反,是往上搜,同样用n才查找下一个与之匹配的字符串。*就是往上找。

如果是要忽略大小写,估计你都猜出来了,:set ignorecase,这样一来,无论是String 还是 STRING都会去匹配。

上面这种方式如果是碰到一个aastringaa这样的字符串,同样会匹配到,如果把它忽略呢,用关键字 /\<string\>“>"匹配结尾处,"<"匹配开始处。如:/\<string\>

如果是要象eclipse一样,选中某个变量,然后就可以把该变量出现的位置都会高亮,vim同样可以做到
:set hlsearch (hl就是highlight的缩写)

今天有又重新看了一遍鸟哥的私房菜的基础网络概念,明天打算整理一篇文章出来,否则每次看了之后好像概念又忘的差不多了,如果是加上自己的理解做个笔记,下次回顾起来就很简单了。前几天在看他写的文件系统很受启发,因为之前断断续续看Linux内核相关知识有点头大,所以说,学东西如果有时候学不动了,就应该停下脚步,换个环境却是另一番风景。

转载请注明出处,谢谢合作,作者----zhijun

  • 大小: 4.3 KB
分享到:
评论
2 楼 lantian_123 2013-03-11  
isensen 写道
我用的GVIM 设置行号是 :set  nu   后面没冒号,是GVIM 的区别吗还是楼主手误

sorry,纯手误 ,已修正
1 楼 isensen 2013-03-11  
我用的GVIM 设置行号是 :set  nu   后面没冒号,是GVIM 的区别吗还是楼主手误

相关推荐

    note.sh:一个简单的shell脚本,用于管理您的笔记

    一个简单的shell脚本,用于管理您的随机每日笔记。 每次您运行note.sh它都会打开当天的Markdown文件。 例如,如果今天是2020年12月2日,它将在notes目录中创建一个名为2020-12-02.md的Markdown文件。 该脚本受到极...

    javassist-3.13.0-GA.jar中文文档.zip

    # 压缩文件中包含: 中文文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;

    scratch少儿编程逻辑思维游戏源码-光线投射引擎 v0.9.zip

    scratch少儿编程逻辑思维游戏源码-光线投射引擎 v0.9.zip

    全套S7-1200 PLC与KTP触摸屏实现恒压供水PID控制案例详解:程序样例+项目图纸+操作注释

    内容概要:本文详细介绍了基于S7-1200 PLC的一拖三恒压供水系统,涵盖PLC程序、PID控制、触摸屏界面及项目图纸等方面。PLC程序方面,重点讲解了PID控制功能块的应用及其参数配置,确保系统能够根据设定值和实际测量值调整输出,保持供水压力恒定。触摸屏程序提供了直观的操作界面,允许操作人员实时监控和调整系统参数。项目图纸展示了详细的硬件连接和布线方式,有助于理解和实施系统安装与调试。此外,文中还分享了许多调试经验和注意事项,如PID参数整定、泵组切换逻辑、报警处理机制等。 适合人群:从事自动化控制系统设计、调试的技术人员,尤其是对PLC编程和PID控制感兴趣的工程师。 使用场景及目标:适用于工业现场的恒压供水系统设计与实现,旨在提高系统的稳定性和效率,减少维护成本。通过学习本文,读者可以掌握S7-1200 PLC编程技巧、PID控制原理及触摸屏应用方法。 其他说明:本文不仅提供了理论知识,还包括大量的实战经验和调试技巧,帮助读者更好地理解和应用相关技术。

    aws-java-sdk-s3-1.12.259.jar中文文档.zip

    # 压缩文件中包含: 中文文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;

    网络仿真与自动化_华为ENSP模拟器_MobaXterm会话管理_Python脚本自动化生成Telnet会话文件_用于批量创建连接ENSP设备的MobaXterm会话_自动解析拓扑.zip

    网络仿真与自动化_华为ENSP模拟器_MobaXterm会话管理_Python脚本自动化生成Telnet会话文件_用于批量创建连接ENSP设备的MobaXterm会话_自动解析拓扑

    【Linux内核调试】基于KGDB的内核调试技术详解:从原理到实战案例

    内容概要:本文详细介绍了使用KGDB(Kernel GNU Debugger)调试Linux内核的方法及其重要性。文章首先强调了Linux内核作为系统核心的重要性及其调试的必要性,随后介绍了KGDB的基本原理和优势,包括其基于调试stub和GDB串行协议的工作机制。接着,文章详细描述了使用KGDB调试内核的具体步骤,包括准备工作、内核配置、设置启动参数、建立调试连接和进行调试操作。文中还通过一个实战案例展示了KGDB在解决实际问题中的应用,并总结了使用KGDB时的注意事项和常见问题的解决方法。最后,文章展望了KGDB未来的发展方向和应用场景,如优化调试性能、支持新型硬件架构以及在嵌入式系统、云计算和大数据领域的应用。 适合人群:具备一定Linux系统开发经验的研发人员,尤其是那些需要调试和优化Linux内核的工程师。 使用场景及目标:①帮助开发者深入了解Linux内核的运行状态,精准定位并修复内核问题;②优化内核性能,提高系统的稳定性和可靠性;③适用于嵌入式系统开发、远程服务器维护等场景,特别是在硬件资源有限或无法直接接触设备的情况下。 其他说明:在使用KGDB进行调试时,需特别注意串口设置的一致性、内核版本的兼容性以及调试信息的完整性。同时,要解决常见的连接失败、断点无效等问题,确保调试过程顺利进行。未来,KGDB有望在技术上不断优化,并拓展到更多应用场景中,为Linux系统的持续发展提供支持。

    CNC雕刻机STM32F407源码详解:带详细中文注解与原理图解析

    内容概要:本文深入剖析了一款基于STM32F407的CNC雕刻机控制系统,涵盖硬件原理图和源码实现。首先介绍了步进电机驱动部分,详细解释了XYZ三轴的方向引脚配置及时序控制,确保电机平稳运行。接着讨论了PWM脉冲生成的核心配置,通过定时器精确控制雕刻精度,并解决了高速雕刻时的脉冲丢失问题。串口通信部分采用DMA+空闲中断,显著提升了数据处理效率。运动插补算法利用定时器触发DMA传输脉冲,实现高效的三轴联动。此外,文中还涉及了G代码解析、运动前瞻算法以及硬件设计中的防呆措施,如IO口的TVS二极管和RC滤波。最后,分享了一些调试经验和隐藏的开发彩蛋,如通过LED灯效显示工作状态和电流检测实现堵转保护。 适合人群:具备嵌入式开发基础,尤其是对STM32和CNC雕刻机感兴趣的开发者和技术爱好者。 使用场景及目标:①帮助开发者理解和实现CNC雕刻机的控制系统;②提供详细的硬件和软件设计方案,便于动手制作;③分享调试技巧和实战经验,提高系统的稳定性和可靠性。 阅读建议:本文不仅提供了详细的代码实现和硬件设计,还包括了许多实战经验和调试技巧,因此在阅读过程中应重点关注这些细节,并尝试复现相关功能。

    aws-java-sdk-s3-1.12.265.jar中文文档.zip

    # 压缩文件中包含: 中文文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;

    ELMAN网络回归预测MATLAB代码:清晰注释,本地EXCEL数据读取,初学者易上手

    内容概要:本文详细介绍了如何使用MATLAB实现ELMAN神经网络进行时间序列预测。首先讲解了如何读取本地Excel数据,并进行了必要的数据预处理,如转置和归一化。接着,构建了ELMAN网络,设置了训练参数,并进行了模型训练。随后,展示了如何进行预测并将结果反归一化,以及如何通过可视化手段评估预测效果。文中还提供了多个调试技巧,帮助解决常见的新手问题。 适合人群:具备基本MATLAB编程能力,希望学习时间序列预测的新手。 使用场景及目标:适用于需要进行时间序列数据分析和预测的研究人员或工程师,目标是掌握ELMAN神经网络的基本原理及其在MATLAB中的具体实现方法。 其他说明:本文不仅提供完整的代码示例,还包括了许多实用的小贴士,如数据读取、归一化、网络结构调整等,帮助读者更快地上手并解决问题。

    winmm简谱播放器3音轨程序代码ZXQZQ-2025-5-4.txt

    winmm简谱播放器3音轨程序代码ZXQZQ-2025-5-4

    scratch少儿编程逻辑思维游戏源码-鼓手猴子.zip

    scratch少儿编程逻辑思维游戏源码-鼓手猴子.zip

    thymeleaf-1.0.0-beta5.jar中文-英文对照文档.zip

    # 压缩文件中包含: 中文-英文对照文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文-英文对照文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;

    基于改进二进制粒子群算法的含需求响应机组组合问题研究——MATLAB代码实现及复现国际学术研究A Modified Binary PSO在微电网中的创新应用

    内容概要:本文详细介绍了如何使用MATLAB实现改进二进制粒子群算法来解决含需求响应的机组组合问题。文章首先构建了机组组合问题的基本模型,定义了机组的数量及其最小和最大发电功率等参数。接着,在此基础上加入了需求响应机制,通过设置需求响应的最大可削减负荷量和补偿系数,实现了对负荷侧的管理。为了提高求解效率,采用了一种改进的二进制粒子群算法,该算法通过独特的更新策略使粒子更快更准地找到最优解。此外,还讨论了微电网调度中如何降低发电成本并确保供电稳定性,强调了需求响应在优化调度中的重要性。 适合人群:对电力系统优化、机组组合问题、需求响应机制以及改进粒子群算法感兴趣的科研人员和技术开发者。 使用场景及目标:适用于需要优化电力系统调度的研究项目或实际工程应用,旨在通过引入需求响应机制和改进的粒子群算法,降低发电成本,提高系统的灵活性和经济效益。 其他说明:文中提供的MATLAB代码示例有助于理解和复现算法的具体实现,同时提醒了一些常见的陷阱和注意事项,如负荷预测误差的影响和合理的参数选择。

    威纶触摸屏与台达变频器RS485通讯:控制正反转、点动及监视频率电流电压程序实现

    内容概要:本文详细介绍了威纶触摸屏与台达变频器通过RS485通讯实现控制与监视的方法。首先,文章解释了MODBUS RTU协议的基础,包括读写指令的数据帧格式。接着,描述了威纶触摸屏和台达变频器的通讯参数设置步骤,确保双方参数一致。随后,提供了具体的Lua脚本代码示例,展示了如何通过写入特定寄存器来控制变频器的启动、正反转、点动、停止等功能,以及如何读取变频器的频率、电流、电压等运行参数。此外,还提到了一些常见的调试技巧和注意事项,如数据类型的正确转换、线序连接、通讯超时处理等。 适合人群:从事自动化控制系统开发的技术人员,尤其是熟悉威纶触摸屏和台达变频器的工程师。 使用场景及目标:适用于需要通过RS485通讯接口实现威纶触摸屏对台达变频器进行远程控制和实时监测的应用场景。主要目标是提高系统的自动化程度和可靠性,减少人工干预。 其他说明:文中提供的代码和配置方法可以直接应用于实际项目中,但在具体应用时需要注意不同型号设备的具体参数差异。调试过程中可以借助串口助手等工具进行辅助验证。

    「高精度UWB模块测距代码程序,支持基站和标签设置编号,实时距离数据查看,烧录单片机」

    内容概要:本文详细介绍了基于UWB(超宽带)技术的多设备测距系统的设计与实现。主要内容涵盖设备ID管理、双向测距(TWR)算法、温度补偿、功耗优化、串口通信协议设计等方面。文中提供了具体的C语言代码片段,展示了如何通过宏定义控制设备类型,利用位操作高效管理设备ID,采用双向测距算法提高测距精度,通过加速度计动态调整测距频率以优化功耗,以及设计轻量级串口通信协议确保数据传输可靠性。此外,还讨论了一些常见的烧录和调试问题及其解决方案。 适合人群:具有一定嵌入式开发经验的研发人员,特别是从事无线通信、室内定位系统开发的技术人员。 使用场景及目标:适用于需要实现高精度室内定位系统的开发者,帮助他们理解和掌握UWB模块的工作原理及其实现细节,从而能够构建稳定的多设备测距系统。 其他说明:文中提到的具体实现方法和技术细节对于理解和优化UWB模块的应用非常有价值,尤其是关于设备管理和测距算法的部分。同时,文中提供的代码片段可以直接用于实际项目中,加快开发进度并提高系统的稳定性。

    即时通讯_分布式系统_WebSocket_Golang_Redis_MySQL_RabbitMQ_Gin_Logrus_Docker_微服务架构_高并发_消息队列_实时聊天_多节点.zip

    即时通讯_分布式系统_WebSocket_Golang_Redis_MySQL_RabbitMQ_Gin_Logrus_Docker_微服务架构_高并发_消息队列_实时聊天_多节点

    mybatis-3.4.4.jar中文-英文对照文档.zip

    # 压缩文件中包含: 中文-英文对照文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文-英文对照文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;

    mybatis-3.0.2.jar中文文档.zip

    # 压缩文件中包含: 中文文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;

    31 android 加载时闪烁点样式的启动画面

    31 android 加载时闪烁点样式的启动画面

Global site tag (gtag.js) - Google Analytics