Notepad++ PythonScript插件,添加自定义文本转换功能

目录

  • [一. 前期准备](#一. 前期准备)
  • [二. 配置转换代码](#二. 配置转换代码)
  • [三. 配置右键菜单选项](#三. 配置右键菜单选项)
  • [四. 效果](#四. 效果)

一. 前期准备

🔷安装Python Script插件

🔷准备文本转换代码,customer_upper.py

  • 支持python3的Python Script插件目前还处于先行版本
  • 目前稳定版的customer_upper.py插件只支持python2.7
  • 所以python脚本的开头需要声明# -*- coding: utf-8 -*-
python 复制代码
# -*- coding: utf-8 -*-
from Npp import editor, notepad

# 获取在Notepad++中选中的文本
text = editor.getSelText()

if not text:
    notepad.messageBox("请先选中一段文本", "提示")
else:
    # 自动处理换行, \r\n 和 \r  换行符都能处理
    lines = text.splitlines()
    
    result_lines = []
    for line in lines:
        
        # 如果为空, 则跳过
        if not line.strip():
            continue
            
        # 业务逻辑,自己根据需求使用python代码修改即可
        new_line = ">>> " + line.upper() + " <<<"
        result_lines.append(new_line)
    
    # Notepad++ 推荐用 \r\n
    result = "\r\n".join(result_lines)
    editor.replaceSel(result)

二. 配置转换代码

🔷如下图所示,将代码放到PythonScript插件的scripts文件夹中

  • 插件官方提供了Samples文件夹,可供开发者参考
  • 新建一个文件夹,可用来将转换脚本分类

🔷然后在插件的Configration中,将自定义转换代码添加到菜单项目中,便于快速调用。

如果需要在工具栏中显示的话,使用右侧的Add,将抓换功能添加到工具栏中即可,还可以自定义图标。


三. 配置右键菜单选项

🔷在【设置】→【编辑弹出菜单】中打开配置用的contextMenu.xml文件

  • 添加:<Item PluginEntryName="Python Script" PluginCommandItemName="customer_upper" ItemNameAs="★自定义大写转换" />
  • PluginEntryName="Python Script":填写对应的插件名称
  • PluginCommandItemName="customer_upper":转换脚本的名称
  • ItemNameAs:显示名称
  • <Item id="0"/>:分割线

🔺注意:

  • 修改完成之后,需要重启Notepad++,否则不会生效。

四. 效果

相关推荐
姜穆澜2 天前
OneID 从 0 到 1 完整生产案例(五)
大数据·notepad++
梦幻通灵3 天前
NotePad++将列转行实现方案
notepad++
www_aiyuanma_vip3 天前
家乡介绍小程序
小程序·notepad++
Buke..14 天前
【小程序逆向】某游快爆 AI 逆向 sign参数:AI 辅助分析与 MCP 工具链实战
前端·人工智能·爬虫·python·小程序·notepad++
码艺-Alimjan20 天前
JWT 的本质、误区与正确落地:一套不依赖任何框架的架构方法论-微信小程序代码案例-Api 安全性拉满
微信小程序·架构·notepad++
学习嵌入式的小周24 天前
Notepad++8.8.7下载安装(附安装包)
前端·notepad++
weixin_4692738125 天前
Notepad link:一款极简、免注册的在线记事本工具
notepad++
AI砖家1 个月前
AI编程—微信小程序开发规范
微信小程序·小程序·notepad++·ai编程
A24207349301 个月前
微信小程序开发:常用基础语法与指令详解
微信小程序·小程序·notepad++
吠品1 个月前
Java中实现拓扑排序的两种方式:Kahn算法和DFS
java·数据库·notepad++