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

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

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

相关推荐
陈随易5 分钟前
为什么今天还会有新语言?MoonBit 想解决什么问题?
前端·后端·程序员
西洼工作室5 分钟前
unipp+vue3+python h5+app极验验证码集成全流程解析
前端·uni-app·全栈·极验
ZC跨境爬虫5 分钟前
跟着 MDN 学 HTML day_15:(媒体缓冲、拖动与时间范围控制)
前端·笔记·ui·html·edge浏览器·媒体
李白的天不白21 分钟前
webpack 与 webpack-cli 版本匹配问题
前端·webpack·node.js
tool23 分钟前
Hermes Agent 从安装到生产:我的完整踩坑记录
前端
kyriewen1131 分钟前
奥特曼借GPT-5.5干杯,而你的Copilot正按Token收钱
前端·gpt·ai·copilot
空中海44 分钟前
05 React架构设计、项目实践与专家清单
前端·react.js·前端框架
人生鹿呀1 小时前
AI 情绪陪伴助手:从 0 到 1 的 PWA + 跨端应用实战
前端
人生鹿呀1 小时前
从零打造滑板文化社区平台:React 19 + Node.js + AI 微服务全栈实战
前端
网络工程小王2 小时前
【LCEL 链式调用详解】调用篇-2
java·服务器·前端·数据库·人工智能