【Unity】 HTFramework框架(六十八)StringEditor字符串复杂编辑器

更新日期:2025年11月20日。

Github 仓库:https://github.com/SaiTingHu/HTFramework

Gitee 仓库:https://gitee.com/SaiTingHu/HTFramework

索引

一、StringEditor字符串复杂编辑器

StringEditor字符串复杂编辑器用于在一个单独展开的窗口 中编辑一个字符串对象,支持一些基础的复杂编辑功能,比如Html标签语法,Markdown语法,Json语法等。

二、使用StringEditor

1.StringEditor窗口简介

StringEditor编辑窗口如下:

①.切换富文本显示模式

点击标题栏RichText可以切换为富文本显示模式:

②.快捷添加、编辑Html标签

点击标题栏Html下拉菜单可以快捷添加、编辑Html标签:

Set Bold:将当前选中文本设置为粗体 ;

Set Italic:将当前选中文本设置为斜体 ;

Set Hyperlink:将当前选中文本设置为超链接 ;

Set Color:将当前选中文本设置为改变文字颜色标签 ;

Set Size:将当前选中文本设置为缩放字体大小标签 ;

Clear selected tags:清除当前选中文本中所有的Html富文本标签;

Clear all tags:清除整个文本中所有的Html富文本标签;

③.快捷添加、编辑Markdown标签

点击标题栏Markdown下拉菜单可以快捷添加、编辑Markdown标签:

Set Bold:将当前选中文本设置为粗体 ;

Set Italic:将当前选中文本设置为斜体 ;

Set Hyperlink:将当前选中文本设置为超链接 ;

Set Strikethrough:将当前选中文本设置为删除线 ;

Set Code Block:将当前选中文本设置为代码块 ;

Set Code Fragment:将当前选中文本设置为代码片段 ;

Set Embedded Image:将当前选中文本设置为嵌入图像 ;

Add Table:添加一个表格 语法块;

Add Object:添加一个引用对象 语法块;

Add Menu:添加一个执行菜单 语法块;

Add Custom Action:添加一个自定义操作语法块;

④.编辑Json格式文本

点击标题栏Json下拉菜单可以编辑Json格式文本:

Format:将整个文本按Json字符串进行格式化。

⑤.保存编辑结果

点击下方Save按钮可保存编辑结果,可自定义保存方式,或保存到剪贴板。

2.自定义编辑任意字符串对象

可将任意字符串对象指定为使用StringEditor打开进行编辑(仅在编辑器环境下),使用如下代码即可:

csharp 复制代码
             if (GUILayout.Button("复杂编辑"))
             {
             	//第一个参数为复杂编辑窗口的宿主窗口,如果没有,可传入 SceneView 窗口等
             	//第二个参数为编辑的目标字符串,这里传入StringValue字段
             	//第三个参数为复杂编辑窗口的标题
             	//第四个参数为点击Save按钮的自定义保存回调,如果为空,将保存至剪贴板
                 StringValueEditor.OpenWindow(this, StringValue, "编辑字符串时的标题", (str) =>
                 {
                 	//将编辑的内容保存回StringValue字段
                     StringValue = str;
                 });
             }

点击复杂编辑按钮后,打开StringEditor窗口:

3.编辑剪贴板内容

也可以编辑剪贴板内容,在如下例子情况,控制台打印了一串Json文本,但看起来并不直观:

①.复制内容到剪贴板

我们选中这串Json文本,按下Ctrl + C复制文本:

②.打开复杂编辑器

然后再按下Alt + S打开StringEditor进行编辑(编辑器会自动获取剪贴板内容):

然后再点击Json → Format格式化字符串(格式化后显著提升可读性):

③.保存编辑内容到剪贴板

最后,点击Save to Clipboard按钮可将编辑后的内容保存回剪贴板,以便于在其他地方粘贴。

目前,框架中一些地方已支持使用StringEditor打开并编辑某些字符串字段。

相关推荐
WarPigs2 小时前
Unity对象不应该使用null传播的问题
unity
mklpo1473 小时前
在win7 sp1 系统上安装最新版 的 Visual Studio Code。2026-10-04
ide·vscode·编辑器
Highcharts.js1 天前
图表开发实战总结| 7 条“黄金法则”与“性能铁律”
前端·javascript·vue.js·编辑器·时序数据库·highcharts
每日出拳老爷子1 天前
【VR】【Unity】抓走转放系列21|一天搭完门和抽屉工具槽:小场景按这个次序拼装
unity·vr·驱动·排错·snap zone
淡海水2 天前
02-02-原理篇-分代GC
算法·unity·c#·游戏引擎·.net·gc
小贺儿开发2 天前
Unity 文物新生 会讲故事的文物展墙
人工智能·科技·unity·ai·视频·互动·演示
淡海水2 天前
02-03-原理篇-大对象堆
unity·c#·游戏引擎·.net·gc
广东帝工2 天前
智能防撞进入高增长周期:多技术融合推动桥梁防护从被动硬抗迈向主动预警时代
编辑器
WarPigs3 天前
Unity在Create菜单添加创建自定义脚本模板选项
unity
郝学胜-神的一滴3 天前
C++ Templates 01:拨开迷雾,读懂C++模板经典著作
开发语言·c++·程序人生·游戏·游戏引擎·软件构建