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

VSCode实现字符串粘贴转义复制反转义

  1. 插件市场搜索并安装multi-command
    在这里插入图片描述
  2. Command+shift+P搜索Open User Settings(JSON)打开settings.json并配置以下内容(用于复制反转义):
{// 其他配置..."multiCommand.commands": [{"command": "multiCommand.copyWithUnescape","sequence": ["editor.action.clipboardCopyAction","workbench.action.files.newUntitledFile","editor.action.clipboardPasteAction","editor.action.selectAll",{"command": "editor.action.insertSnippet","args": {"snippet": "${TM_SELECTED_TEXT/(\\\\\\\\)|(\\\\n)|(\\\\r)|(\\\\t)|(\\\\\")|(\\\\')/${1:+\\\\}${2:+\n}${3:+\r}${4:+\t}${5:+\"}${6:+'}/g}"}},"editor.action.selectAll","editor.action.clipboardCopyAction","undo","undo","workbench.action.closeActiveEditor"]}]
}

操作原理:

  1. 把当前选区复制到剪贴板(不改动原文件)。
  2. 新建一个 untitled 文件并切换到它。
  3. 把剪贴板粘贴到新文件(现在临时文件里就是原选区内容)。
  4. 全选临时文件内容。
  5. 用 snippet 对选中(即 TM_SELECTED_TEXT)做反转义替换,替换后的文本写回临时文件。
    全选(反转义后)文本。
  6. 复制反转义后的文本到剪贴板(覆盖原剪贴板)。8–9. 连续两次 undo:撤销替换与粘贴,保证临时文件回到干净未改动状态(不会变成 dirty)。
  7. 关闭临时文件(不会弹保存,因为已恢复为未改动),焦点回到原编辑器,原选区保持不变。
  1. Command+shift+P搜索Open Keyboard Shortcuts(JSON)打开keybinding.json并配置以下内容:
// 将键绑定放在此文件中以覆盖默认值
[// 粘贴转义字符串{"key": "cmd+shift+v","command": "editor.action.insertSnippet","when": "editorTextFocus","args": {"snippet": "${CLIPBOARD/(\\\\)|(\")|(\\n)|(\\r)|(\\t)/${1:+\\\\\\\\}${2:+\\\\\"}${3:+\\\\n}${4:+\\\\r}${5:+\\\\t}/g}"}},// 复制反转义字符串{"key": "cmd+shift+c","command": "extension.multiCommand.execute","when": "editorTextFocus && editorHasSelection","args": {"command": "multiCommand.copyWithUnescape"}},// 新前跳{"key": "cmd+[","command": "workbench.action.navigateBack"},// 去除 原前跳 快捷键位{"key": "ctrl+-","command": "-workbench.action.navigateBack"},// 新后跳{"key": "cmd+]","command": "workbench.action.navigateForward"},// 去除 原后跳 快捷键位{"key": "ctrl+shift+-","command": "-workbench.action.navigateForward"}
]
http://www.dtcms.com/a/426743.html

相关文章:

  • 第2章 三个小工具的编写(2)
  • 【DeepResearch】langgraph自主迭代研究能力的 AI 代理及分析
  • 专题:2025医药行业数智赋能与AI应用全景研究报告|附200+份报告PDF、数据仪表盘汇总下载
  • Alibaba Cloud Linux 3 +Docker 部署 ThinkPHP6 (宝塔环境)-问题篇
  • LeetCode 刷题【93. 复原 IP 地址】
  • Python类和对象----实例属性,类属性(这是我理解类和对象最透彻的一次!!)
  • 文档解析Logics-Parsing
  • 网站设计报价.doc网页端
  • IDEA中Add New Configuration找不到Tomcat
  • 学习笔记092——Windows如何将 jar 包启动设置成系统服务
  • React前端框架有哪些?
  • 文昌市建设局网站无锡工厂网站建设
  • 龙岗网站建设-信科网络深圳房地产论坛家在深圳
  • Ceph 分布式存储学习笔记(三):块存储和对象存储管理
  • Ubuntu22.4安装Samba服务器
  • 服务器安装Java与nginx与nacos
  • Navicat导入Excel至瀚高数据库
  • 网站的制作与调试微网站服务合同
  • JavaScript调试工具有哪些?常见问题与常用调试工具推荐
  • 网站项目建设策划方案超级外链发布
  • 使用 Lens连接阿里云k8s集群
  • UNIX下C语言编程与实践24-UNIX 标准文件编程库:无格式读写函数族(字符、行、块)的使用
  • mysql中的日志
  • Spring Cloud Nacos 配置中心详解:从基础使用到 MyBatis 整合(含多文档配置)
  • 去出海做产品吧,亚马逊爆款产品 属于电子类的消费产品。用全志A733完胜--
  • 设计配色网站租房合同范本下载word
  • 安卓生态进化史:从手机系统到全场景智能
  • 自适应网站开发工具网站优化排名提升
  • 中国建材网:重构建材行业生态的数字力量
  • 【有源码】基于Hadoop+Spark的豆瓣电影数据分析与可视化系统-基于大数据的电影评分趋势分析与可视化系统