利用IDEA/WebStorm/pycharm的【多光标输入】提高开发效率

通过本文,我们将学会如何在jetbrains 系列的编辑器中添加多光标,从而提高开发效率。

本文提供了基础知识实战案例,帮助读者更好地理解和掌握这些方法。

基础知识

使用鼠标添加多光标

按住Alt键,点击想要插入光标的位置即可在该处添加光标

同样,点击已添加的光标可以删除该光标

使用键盘在当前光标上方或下方添加多光标

双击Ctrl键,之后按住Ctrl键不松手,然后按上下箭头,即可在当前光标上方或下方添加光标

列选择模式

按快捷键Shift+Alt+Insert可切换为列选择模式 ,在该模式下按Shift+上/下箭头可在当前光标的上方或下方添加光标。

再次按Shift+Alt+Insert可取消列选择模式。而在正常情况下,按Shift+上/下箭头是选择文本功能。

将光标移动到行首或行尾

  • 按键盘的Home键,可以将所有光标定位到每行第一个字符的位置
  • 按键盘的End键,可以将所有光标定位到每行的最后一个字符的位置

取消多个光标

之前我们已经提到过按住Alt键点击光标可取消指定的光标,而,按ESC键或者点击任意位置可以取消所有光标。

选择多次出现的文本内容

首先我们使用鼠标框选一段文本,之后按Alt+J键,可以选择下方出现的相同文本内容,并添加光标。按Shift+Alt+J可以取消上一次选中的文本。

如果想要跳过某个文本内容,可以在按Alt+J键出现多光标之后,按F3键,同样Shift+F3键可以跳回到上一个匹配的内容

鼠标中键(滚轮键)

按住鼠标滚轮键拖动选择区域可以快速在该区域中插入多光标

实战案例

批量添加前缀

假设我们需要在一份代码中的多处相同变量名前添加一个统一的前缀,比如给以下CSS类选择器添加前缀 .theme-

css 复制代码
.button {
  /* ... */
}

.container {
  /* ... */
}

.footer {
  /* ... */
}

我们可以通过以下步骤批量操作:

  1. 使用鼠标点击.button类选择器行的任意位置。
  2. 按下Alt键,依次点击其它类选择器的任意位置添加光标。
  3. Home键,将多个光标定位在每行的起始位置
  4. 删除.,键入前缀.theme-,之后按ESC取消多光标。

同时编辑多行

假定我们有一个列表项的HTML代码,我们想要给所有列表项添加class="item"属性。

tsx 复制代码
export const Test = () => {
  return (
    <div>
      <li>辰火流光</li>
      <li>辰火流光</li>
      <li>辰火流光</li>
      <li>辰火流光</li>
    </div>
  )
}

可以这样操作:

  1. 将光标放在第一个<li>标签的末尾。
  2. 双击Ctrl键,然后不放开Ctrl键,同时按下向下的箭头键,将会在下方相同位置的<li>标签末尾各添加一个光标。
  3. 输入 className="item"

总结

在本文中,我们详细学习了如何在jetbrains 系列编辑器中有效地使用多光标 功能,这一强大功能无疑能够显著提升编程和编辑工作的效率。我们探索了从基本的鼠标和键盘操作,到高级的列选择和文本选择技巧。通过具体的实战案例,我们展示了如何将这些技术应用到日常的开发任务中。

无论你是在重构代码,编辑配置文件,还是寻求批量处理文本的方法,多光标技术都能为你节省宝贵的时间。希望通过这篇文章的详解和示例操作,你已经能够熟练地将多光标功能应用在实际编码过程中,做到事半功倍。

最后,不要忘记练习是掌握任何一项新技能的关键。建议读者在阅读完本文之后,立即在自己的项目中尝试使用多光标,以便更好地掌握和巩固所学知识。实践出真知,愿你在编程的路上越走越远,效率越来越高。

相关推荐
耶啵奶膘15 分钟前
uniapp-是否删除
linux·前端·uni-app
王哈哈^_^2 小时前
【数据集】【YOLO】【目标检测】交通事故识别数据集 8939 张,YOLO道路事故目标检测实战训练教程!
前端·人工智能·深度学习·yolo·目标检测·计算机视觉·pyqt
cs_dn_Jie2 小时前
钉钉 H5 微应用 手机端调试
前端·javascript·vue.js·vue·钉钉
开心工作室_kaic3 小时前
ssm068海鲜自助餐厅系统+vue(论文+源码)_kaic
前端·javascript·vue.js
有梦想的刺儿3 小时前
webWorker基本用法
前端·javascript·vue.js
cy玩具4 小时前
点击评论详情,跳到评论页面,携带对象参数写法:
前端
qq_390161774 小时前
防抖函数--应用场景及示例
前端·javascript
John.liu_Test5 小时前
js下载excel示例demo
前端·javascript·excel
Yaml45 小时前
智能化健身房管理:Spring Boot与Vue的创新解决方案
前端·spring boot·后端·mysql·vue·健身房管理
PleaSure乐事5 小时前
【React.js】AntDesignPro左侧菜单栏栏目名称不显示的解决方案
前端·javascript·react.js·前端框架·webstorm·antdesignpro