【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打开并编辑某些字符串字段。

相关推荐
Codiggerworld8 小时前
Vim配置从0到1:打造专属编辑器
编辑器·vim·excel
lqj_本人9 小时前
鸿蒙electron跨端框架PC青简笔记实战:从笔记列表、编辑器到桌面导出,一次做完整
笔记·编辑器
相信神话202112 小时前
第四章:创建《酒魂》项目与场景结构
游戏·游戏引擎·godot·2d游戏开发
mxwin13 小时前
Unity Shader URP 使用模板测试 · 深度测试实现秘境空间效果
unity·游戏引擎·shader
图像僧14 小时前
没有sudo权限也能安装和使用 VSCode
ide·vscode·编辑器
咬人喵喵14 小时前
E2编辑器里的零高容器是什么?怎么用?
低代码·微信·编辑器·交互·svg
真鬼1231 天前
【Unity 6】Unity6快捷下载,快速下载
unity·游戏引擎
小e说说1 天前
主流活动策划工具特点比较
编辑器
winlife_1 天前
把 Godot 编辑器接入 AI:Funplay MCP for Godot 介绍
人工智能·编辑器·godot·ai编程·游戏开发·mcp
会潜水的小火龙1 天前
unity打包apk报错Failure to initialize问题解决方法
unity·游戏引擎