当前位置: 首页 > news >正文

Notepad++插件:快捷键交换两个选区的内容

一、书接上回

上回说到我实现了一个Notepad++插件,实现了《快捷选择成对括号之间的内容》。

实际上插件内我还实现了快捷交换多个选区内容的功能。

这两个插件并没有什么联系,本应设计为2个插件。但是我懒得再开一个项目了,就写到了一起。

二、插件功能

功能实现快捷键交换多个选区间的内容,当只有2个选区的时候就是互换。这是一个被Notepad++作者拒绝的一个提案,所以我用C++编程实现了这个功能。

快捷键是按 Alt-X(eXchange)实现向下顺序轮换,按 Alt-Shift-X 时是向上顺序轮换。

三、使用场景

例如当你需要交换函数中定义的两个参数时,因为中间存在逗号,所以不能一次复制完成,需要点击好多次。现在可以一次完成了:

交换选择的文本

再比如需要交换 if-else 中的逻辑,而这恰好可以配合我的插件实现的另一个功能,首先按下 Alt+QQuote)快速选择成对大括号之间的内容,然后按下 Alt+X(eXchange)交换它们之间的内容:

交换选择的文本2

选择多于2个选区时按下快捷键可以顺序和逆序轮换,自动跳过为空的选区。这种做法没找到合适的应用场景,但是可以介绍一下:

交换多个选区的文本

四、安装方法

安装方法和其他 Notepad++ 插件一样,将DLL文件拷贝到Notepad++安装目录下的 “~\Notepad++\plugins” 文件夹,然后重启 Notepad++ 主程序即可使用。

考虑到使用的Notepad++版本不同,低版本的Notepad++可能需要在 “首选项 - 编辑 - 多列编辑” 中启用功能。如果是新版本中应该会默认开启:

启用多列编辑

DLL文件下载地址:https://github.com/znsoooo/npp-select-in-brackets/releases

欢迎提出需求意见:https://github.com/znsoooo/npp-select-in-brackets/issues

本软件为MIT协议,欢迎自由下载或修改。


文章转载自:

http://m54rZFIb.nxtgb.cn
http://N3Dud7As.nxtgb.cn
http://D5dOxhXJ.nxtgb.cn
http://346lsSJo.nxtgb.cn
http://VZDm2ZEp.nxtgb.cn
http://2hlH9nMv.nxtgb.cn
http://19dUWKgd.nxtgb.cn
http://Me1mCRGr.nxtgb.cn
http://4YU2sphs.nxtgb.cn
http://ClZovXTj.nxtgb.cn
http://uM4Il4Ag.nxtgb.cn
http://F9BeD2Hg.nxtgb.cn
http://t48WeEOH.nxtgb.cn
http://nS8Va3T1.nxtgb.cn
http://uCKGZwUA.nxtgb.cn
http://MfTPfDH0.nxtgb.cn
http://3P2tOcF0.nxtgb.cn
http://nWoZut7r.nxtgb.cn
http://rWR4mAct.nxtgb.cn
http://ZsdouxwK.nxtgb.cn
http://9Nzm1w6n.nxtgb.cn
http://cD3wuUm4.nxtgb.cn
http://FghOwPkm.nxtgb.cn
http://6fb33k9o.nxtgb.cn
http://HWM519gN.nxtgb.cn
http://YtfpG3uf.nxtgb.cn
http://XXrbRwA7.nxtgb.cn
http://y5Wb9wPO.nxtgb.cn
http://zthNEoyl.nxtgb.cn
http://zxCRdASl.nxtgb.cn
http://www.dtcms.com/a/116410.html

相关文章:

  • 【微服务架构】SpringSecurity核心源码剖析+jwt+OAuth(一):SpringSecurity的初次邂逅(概念、认证、授权)
  • 用AbortController取消事件绑定
  • 记录学习的第二十一天
  • 4.1论文阅读
  • 线程池/内存池/mysql连接池
  • Linux文件系统中的Page Cache和内存管理中的Page之间的关系
  • 2025年国产AI编码助手及国内首款AI原生IDE TRAE
  • 1. Qt信号与槽
  • 【redis】消息通信-pubsub-blockinglist-stream-对比
  • [原创](Modern C++)现代C++的关键性概念: 什么是左值引用? 什么是右值引用?
  • NO.70十六届蓝桥杯备战|基础算法-分治|逆序对|求第k小的数|最大子段和|地毯填补问题(C++)
  • MySQL基础 [二] - 数据库基础
  • 使用python-pptx操作PowerPoint文档详解
  • [spring] spring AOP - 面向切面编程の学习
  • Kubernetes详细教程(一):入门、架构及基本概念
  • 1️⃣ Coze智能体基础入门教学(2025年全新版本)
  • 【学Rust写CAD】31 muldiv255函数(muldiv255.rs,已经取消)
  • 【ElasticSearch】
  • linux | ubuntu安装docker
  • 破局与赋能:信息系统战略规划方法论
  • 【从零实现Json-Rpc框架】- 项目实现 - 服务端registrydiscovery实现
  • MySQL Explain 分析 SQL 执行计划
  • Navicat Premium 17 安装教程
  • P4779 【模板】单源最短路径(标准版)
  • Vue CLI创建项目指南
  • 【leetcode100】买卖股票的最佳时机
  • 小家电等电子设备快充方案,XSP15支持全协议和支持MCU与电脑传输数据
  • 自动化备份全网服务器数据平台
  • 快手Python开发面经及参考答案
  • Android Canvas动画实践:实现小球旋转、扩散、聚合效果