在 IDEA Intellij小技巧和插件 一文中简单介绍了一下IdeaVim插件。在这里详细总结一下这个插件在日常编程中的一些常用小技巧。
IdeaVim插件使用技巧在 IDEA Intellij小技巧和插件 一文中简单介绍了一下IdeaVim插件。在这里详细总结一下这个插件在日常编程中的一些常用小技巧。供有兴趣使用这个插件,但对Vim还不十分熟悉的朋友参考。当然基本的hjkl移动光标和几种常见模式等等基本概念就略过不提了。为了确保只包含常用操作,这里提到的技巧都没有从现成文档里抄,而是凭记忆列出(不常用自然就不记得了)。估计会有所遗漏,慢慢再补充。1. 切换Vim模拟器状态这个插件允许设置一个快捷键一键开启或关闭,在切换模式时会同时自动切换keymap,十分方便。默认键位是Ctrl+Alt+V,但这个键位覆盖了很常用的“抽取局部变量”功能,建议重设,在setting->keymap中查找VIM Emulator即可。由于开启和关闭状态分别使用两套keymap,因此两套都需要设定。可以把两套keymap下的都设为一样的键,也就是用同一个键切换。但个人建议设为不同的键,这样能清楚知道当前处于那种模式中。并且,如果在开启Vim的插入模式下关闭Vim模拟器,下次进入时仍然是插入模式,比较混乱(因为你关闭模拟器就是为了使用默认keymap输入大段代码,重新开启Vim模拟器就是为了使用普通模式下的命令)。因此建议把Vim keymap中的Exit Insert Mode设为与另一个keymap的Vim Emulator相同的键(也就是进入Vim模拟器的快捷键)。例如,我使用的设定是:Default keymap -> Vim Emulator : Ctrl+; (用Ctrl+分号开启Vim模拟器)Vim keymap -> Vim Emulator : Ctrl+, (用Ctrl+逗号关闭Vim模拟器)Vim keymap -> Vim Emulator : Ctrl+; (用Ctrl+分号退出插入模式,进入普通模式)这样,在任何时候只要连按两下ctrl+分号,就能保证必定在Vim模拟器的普通模式中。2. ScrollOff 参数启动Intellij后在Vim模拟器下输入命令 :set so=5 可以令屏幕滚动时在光标上下方保留5行预览代码(也就是光标会在第5行触发向上滚动,或者在倒数第5行触发向下滚动)。在代码窗口比较狭小时(例如单步跟踪调试时)非常方便。可惜仅在Vim模拟器开启时有效。3. 行号定位普通模式下输入 行号G 或 :行号 都能快速定位到某一行。区别在于前者在输入行号时屏幕上没有任何提示,后者则在Vim命令输入框中可以看到输入过程。(题外话:Sublime Text 2也是用 :行号 来快速定位到某行,应该是沿用了Vim的习惯)4. 进入修改进入插入模式的方式有很多,直接选用合适的方式进入插入模式比进入后再用箭头键移动光标要好。常用的有:o – 在当前行下方插入新行并自动缩进O – 在当前行上方插入新行并自动缩进 (普通模式下的大写字母命令用 shift+字母键 输入,下同)i – 在当前字符左方开始插入字符a – 在当前字符右方开始插入字符I – 光标移动到行首并进入插入模式A – 光标移动到行尾并进入插入模式s – 删除光标所在字符并进入插入模式S – 删除光标所在行并进入插入模式c – 删除光标所在位置周围某个范围的文本并进入插入模式。关于范围请看第5点,常用的组合有:caw – 删除一个单词包括它后面的空格并开始插入; ciw – 删除一个单词并开始插入; ci” – 删除一个字符串内部文本并开始插入; c$ – 从光标位置删除到行尾并开始插入; ct字符 – 从光标位置删除本行某个字符之前(保留该字符)并开始插入。等等。C – 删除光标位置到行尾的内容并进入插入模式 (相当于c$)r – 修改光标所在字符,然后返回普通模式R – 进入覆盖模式5. 范围操作某些普通模式的动作命令后面可以追加一些表示范围的指令,表示该动作将作用在整个范围上。这类命令常用的有:d – 删除一定范围内的文本c – 删除一定范围内的文本并进入插入模式y – 将范围内的文本放入0号和”号注册栏v – 选择范围内的文本= – 自动缩进范围内的文本gU – 将范围内的字符转换为大写gu – 将范围内的字符转换为小写> – 将范围中的内容缩进一格< – 将范围中的内容取消缩进一格常用的范围指令有:空格 – 光标所在位置字符。(例如 gU空格 – 将光标位置字符转为大写)重复某些动作命令 – 光标所在行。 (例如dd删除一行,yy复制一行,cc删除一行文本并开始插入,>> 当前行缩进一格,==自动缩进当前行)$ – 从光标位置到行尾^ – 从光标位置到行首,不包含缩进空白0 – 从光标位置到行首,包含缩进空白gg – 从光标位置到文件开头G – 从光标位置到文件结尾% – 从光标位置到另一边匹配的括号f – 从光标位置到光标右边某个字符首次出现的位置,包括该字
上次聊到,Java程序员赵可菲和C++程序员席双嘉在Rust大神贾克强的带领下,找到了AI编程小助手艾极思把Rust编程书中的游戏需求改成了“猜骰子冷热”,现在得重新写一遍代码了。
本教程并不是单纯的vim操作介绍,更多的是与Intellj Idea进行配合。需要同时具备Intellj Idea和vim使用基础的同学学习。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
下面的程序整理自jkp-ads.com,使用VBA代码来自动安装或者移除指定的加载宏。
1.*进行查找,一是光标会跳到下一个匹配项上,二是所有出现这个词的地方都会被高亮显示出来。如果没有高亮,运行:set hls
vim里操作的是寄存器,不是系统剪贴板,默认我们使用d删除或者y复制的内容都是放到了“无名寄存器”。 比如交换字符小技巧:可以使用x将一个字符放到无名寄存器,然后p将无名寄存器里的内容进行粘贴,可以达到交换字符位置的一个目的。
今年参加了几次攻防演练对抗赛,其它队伍依靠社工结合文件钓鱼得了不少分,自己之前并没有相关知识的积累,因此在这个方面吃了一些亏。
曾经我也天真的觉得如今很多软件都可以充当文本编辑器,像vim上手这么麻烦的可以替代
昨天匆忙间发布了使用外部程序/VSTO插件执行JSA宏的推文,其实还有一些后续的更劲爆的效果,在某些场景上可以有很好的发挥。
Fiddler抓取到的每条http请求(每一条称为一个session),会话列表 主要是Fiddler所抓取到的每一条http请求都会显示到这里。主要包含了请求的ID编号、状态码、协议、主机名、URL、内容类型、body大小、进程信息、自定义备注等信息,如下图所示:
此乃旧文,题目改一下,有点系统性,JSA助攻第一波:可以通过Application.Run接口,让外部程序或VSTO/ExcelDNA项目可以调用JSA的宏代码。
通过msf生成msi文件,python开启http服务,然后替换命令为攻击载荷,右键隐藏宏,并把文件执行方式改为
计算机二级知识知多少?小编又来普及了,希望大家能够好好学习计算机二级,争取一次过关。
按照常规套路我们依旧从原理剖析一下。首先,什么是宏?是一种可在其更广泛的环境中工作的编程语言编写的,可以理解成一个小程序,能在较大的程序中运行,可以代表用户自动执行任务,通常会指一项复杂或比较耗时的任务,它还在很多MMORPG(大型多人在线角色扮演游戏)社区和某些搜索引擎优化软件中使用
如何把word文档里自动序号转为文本,直接可以复制出来,这里提供一种方法。 宏命令处理 (别有恐惧心理,不难) 打开word文档,按下快捷键Alt+F8,在“宏名”栏中输入dao“编号转换为文本”,这是给它起个名字,然后点击“创建” 在新打开的窗口上,你会看到光标在闪烁,把下面这4行内容复制粘贴到此 Dim kgslist As List For Each kgslist In ActiveDocument.Lists kgslist.ConvertNumbersToText Next 然后按下快捷键Al
在前面的文章中,我们介绍了如何进行查找和替换,而替换是建立在查找基础之上的一个简单的应用,它只是将匹配文本修改为另一个。那么vim中还能针对匹配上的文本做哪些操作呢?在本篇文章中我们来对这个问题进行探讨。
有时候我们会在一个工作簿中建立很多工作表,怎样才能简单明了的管理工作表呢,当然能建一个目录最好了,这里我们就学习一种给工作表创建目录的方法。 1、在工作簿中新建一个工作表,命名为“目录”。 2、单击B
Vim是一个功能强大、高度可定制的文本编辑器; 具体有多强大,我现在还没体会到(orz)。在日新月异的互联网时代中,vim 可以算是一个历史悠久的产物,从诞生到现在都没有别的编辑器能替代(感兴趣可了解一下 Emacs)。目前主流的VSCode、Intellij 全家桶和Chrome等,都支持/提供了 vim plugin。
移动互联网时代,企业需要开源节流,需要提高员工整体工作效率。尤其对于互联网公司来说,要快速发展业务,更需要让团队工作简单、方便、高效。然而大多公司都面临以下低效阻碍:跨公司、跨部门沟通合作困难。不同部门和岗位的员工,沟通配合流程复杂,效率低下。团队日常沟通信息呈碎片化。今天给大家分享几款可以提高团队效率的工具。
在ReactiveCocoa 中,开源库作者为我们提供了很多种魔法,“黑”魔法,“红”魔法……今天就让先来看看“红”魔法。
使用IDEA Intellij已有两年,在此罗列一下在实践中觉得能有效提升开发效率的一些小技巧和插件。 1. 重设移动键 方向键和Home/End键离基键太远,经常把手移过去其实很费时。所以建议重设到主键盘上。考虑到后面会提到的IdeaVim插件,所以最好使用类似Vim的方案。我个人的设定是: Ctrl+H ← Ctrl+J ↓ Ctrl+K ↑ Ctrl+L → Ctrl+A End (Vim中Shift+A是在行尾插入) Ctrl+I Home (Vim中Shift+I是在行首插入) 被冲掉的原本的快捷键可以设到Alt上(最常用的Ctrl+A全选和Ctrl+J Live Template)。当然你也可以把移动键设在Alt上,不过使用标准键盘时,左Ctrl可以用手掌来按(使用emacs的必备技能),非常方便。所以我个人喜欢把常用操作设到Ctrl上。 2. 好用的Select Word at Caret快捷键 在IDEA的Keymap中有Select Word at Caret这个动作,字面意思是“选中光标所在的单词”,默认快捷键是Ctrl+W。但事实上,这个动作的实际操作是选中更上一层的语法结构。例如,如果你在一个字符串的一个单词中,按一下Ctrl+W,会选中光标所在单词。再按一下,会选中整个字符串的内容,不包括引号。再按一下,会选中包括引号的字符串。再按一下,会选中整个表达式(如果表达式含有括号,会逐层选中)。再按一下,会选中整个语句块。再按一下,会选中整个方法。再按一下,会选中整个类。 3. Ace Jump插件 可以说Ace Jump和IdeaVim这两个插件是我使用了Intellij后再也不想用eclipse的最主要原因。Ace Jump是一种从emacs上借鉴过来的快速光标跳转方式,操作方式是:你用某个快捷键进入Ace Jump模式后,再按任一个键,当前屏幕中所有该字符都被打上一个字母标记,你只要按这个字母,光标就会跳转到这个字符上。这种跳转方式非常实用,你根本不用管当前光标在什么位置,眼睛只需要盯着需要跳转到的位置,最多三四下按键就能准确把光标定位,开始编辑。按道理这种功能非常容易实现,但偏偏到目前为止我没有在eclipse上找到类似插件。 安装与使用: 在Intellij的Setting -> Plugins -> Browse repositories中查找acejump,可以找到两个插件,AceJump和emacsIDEAs。AceJump是最纯正的Ace Jump插件,功能单一,也比较稳定,但我个人感觉没有emacsIDEAs好用。两者最大的差异是,Ace Jump是先按键调出跳转标记,再通过不同功能键(Ctrl,Shift,Alt等)配合书签按键追加额外功能(例如从当前位置选中文本至书签位置)。而emacsIDEAs是使用不同的快捷键进入不同的功能模式(例如跳转到字符,跳转到单词,选中到标签等)同时调出书签标记,然后再按书签按钮实现跳转。感觉emacsIDEAs的方式比较符合我的思维习惯。 如果选择了AceJump插件,重启Intellij后即可使用,默认快捷键是Ctrl+;(分号)。但我习惯将它重设到Alt+K。下面是使用AceJump的效果
高级一些的编辑器,都会包含宏功能,vim当然不能缺少了,在vim中使用宏是非常方便的:
这就是我们的Hello world,最朴素的格式,也是最基础的框架。 在begin{document}和end{document}之间的就是我们的正文区,而在这之前的就是我们的导言区,这里通常会说明使用什么宏包,重新定义命令,规划文章的总体布局等。虽然有时候很长,但是如果想保持你的几篇文章格式一样的话,直接复制粘贴这一段就行了,还是很方便的。 导言区第一行documentclass{article} 是用来声明文章类型的,有论文(article),书籍(book)、报告(report)、及信笺(letter)等几种形式,一般我们用article; 在这里我们通常还会导入一些包包,比如美国数学会的数学公式宏包(amsmath)、美国数学会的数学符号宏包(amssymb)、LATEX 的数学符号宏包(latexsym)等。用如下格式:
稍微解释一下,当在normal模式下输入:qx后,你对文本的所有编辑动作将会被记录下来,再次输入q即退出了记录模
Editplus是一款常用的文本编辑器软件,它支持多种编程语言,并提供了丰富的功能和工具,以下是Editplus 2022的一些常见功能和使用技巧:
本文分享一个动态图表示例,效果如下图1所示。当按下工作表中不同的按钮时,图表会自动更新,高亮显示相应数据系列的数据点。
研发线上使用最多的编辑器,就是vi。无论是最快查看某个文件内容,还是快速编辑某个文件,vi都能帮上忙。
选择指定符号 (", ', ), }, ]) 区域内的内容 举个例子 : [ a + cda [daff ] ], 当前光标在 [daff] 范围
一、让数据按需排序 如果你要将员工按其所在的部门进行排序,这些部门名称既的有关信息不是按拼音顺序,也不是按笔画顺序,怎么办?可采用自定义序列来排序。 1.执行“格式→选项”命令,打开“选项”
Vim 是在 Linux 系统中广泛使用的强大文本编辑器。无论您是系统管理员、开发者还是普通用户,掌握 Vim 的基本操作和高级技巧都能极大地提高工作效率。
Vim是一个超牛的编辑器,命令功能十分强大 。而且这些命令大都可以进行组合 , 比如,9yy命令表示复制9行内容,9表示要复制的行数,同样100dd表示删除100行,当数字和命令合作的时候,就比单纯的
高级一些的编辑器,都会包括宏功能,vim当然不能缺少了,在vim中使用宏是很方便的: :qx 開始记录宏。并将结果存入寄存器x q 退出记录模式 @x 播放记录在x寄存器中的宏命令 略微解释一下。当在normal模式下输入:qx后,你对文本的全部编辑动作将会被记录下来。再次输入q即退出了记录模 式,然后输入@x对刚才记录下来的命令进行反复。此命令后可跟数字。表示要反复多少次。比方@x20,能够反复20次。这个在文本的批处理中是很实用的。
render 最终将交给 mountComponent 内部调用 -> 生成vnode -> diff对比 vnode 生成 dom 渲染页面
从XWiki企业版1.4M1版本开始,可以使用快捷键来使用某些XWiki功能。快捷键能帮助你节省时间,因为可以不需要鼠标,直接用键盘做很多操作。
首先需要添加一个宏包graphicx,在插入图片的位置可以直接点击LaTeX的插入图片快捷按钮,然后修改其中的 * 位置的内容既可(caption与label若不需要也可以删掉)。
前言 其实一开始对栈、堆的概念特别模糊,只知道好像跟内存有关,又好像事件循环也沾一点边。面试薄荷的时候,面试官正好也问到了这个问题,当时只能大方的承认不会。痛定思痛,回去好好的研究一番。 我们将从JS
本文介绍了C++中的宏定义、const关键字、static关键字、sizeof关键字的使用,以及它们在编程中的实际应用。
如上配置之后可以通过 <space><space>w{char} 快速跳转到包含特定字母的字符的开头
今天这个问题困扰了我好久,其实对于一个初学者来说,不必专研的太深,大致理解如下就可以了:
使用书签,可以方便地替换书签处的文本。例如,在下图9中的模板Bookmarks.dotx相应的文本位置定义了书签。
据Bleeping Computer网站8月30日消息,威胁分析师发现了一个名为“GO#WEBBFUSCATOR”的新恶意软件活动,该活动依赖网络钓鱼电子邮件、恶意文档和来自詹姆斯韦伯望远镜的空间图像来传播恶意软件。 该恶意软件由 Golang 编写,Golang 因其跨平台的特性(Windows、Linux、Mac)以及对逆向工程和分析的强抵抗力而越发得到网络犯罪分子的青睐。在 Securonix 的研究人员最近发现的活动中,攻击者会在 VirusTotal 扫描平台上投放当前未被防病毒引擎标记为病毒的
Vim基础操作 说明 C-字母 = Ctrl + 字母 char = 任意字符 开始编辑 insert 按键 功能 说明 i(I) insert 当前位置插入(当前行前) a(A) append 当前字符后面插入(当前行后) o(O) open a line below 当前行的下面(当前行上面) 模式 模式 功能 说明 普通模式(ESC) normal 操作和移动 插入模式(i,a,o) insert 编辑 命令模式(:) command 执行命令 可视模式(v,V,C-v) visual 选择 可视
大家好,又见面了,我是你们的朋友全栈君。 Excel宏教程 (宏的介绍与基本使用) Microsoft excel是一款功能非常强大的电子表格软件。它可以轻松地完成数据的各类数学运算,并用各种二维或三维图形形象地表示出来,从而大大简化了数据的处理工作。但若仅利用excel的常用功能来处理较复杂的数据,可能仍需进行大量的人工操作。但excel的强大远远超过人们的想象–宏的引入使其具有了无限的扩展性,因而可以很好地解决复杂数据的处理问题。 随着支持Windows的应用程序的不断增多和功能的不断增强,越来
领取专属 10元无门槛券
手把手带您无忧上云