DevToysHtmlEscape 1.0.1-preview

This is a prerelease version of DevToysHtmlEscape.
dotnet add package DevToysHtmlEscape --version 1.0.1-preview
                    
NuGet\Install-Package DevToysHtmlEscape -Version 1.0.1-preview
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="DevToysHtmlEscape" Version="1.0.1-preview" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="DevToysHtmlEscape" Version="1.0.1-preview" />
                    
Directory.Packages.props
<PackageReference Include="DevToysHtmlEscape" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add DevToysHtmlEscape --version 1.0.1-preview
                    
#r "nuget: DevToysHtmlEscape, 1.0.1-preview"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package DevToysHtmlEscape@1.0.1-preview
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=DevToysHtmlEscape&version=1.0.1-preview&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=DevToysHtmlEscape&version=1.0.1-preview&prerelease
                    
Install as a Cake Tool

DevToys HTML Escape / HTML 转义扩展

一个为 DevToys 2.0 开发的扩展插件,提供 HTML 转义(Escape) 与 反转义(Unescape) 工具。

  • 在「编码/解码」分组中新增 "HTML Escape / HTML 转义" 工具
  • 顶部开关切换 转义 ⇄ 反转义,模式自动记忆
  • 输入即时转换到输出框;切换模式时输入输出内容互换
  • 中英文界面随系统语言自动切换
  • 核心转义逻辑使用 .NET 内置的 System.Net.WebUtility.HtmlEncode/HtmlDecode

项目结构

DevToysHtmlEscape/
├── DevToysHtmlEscape.csproj              # net8.0 + DevToys.Api + 打包配置
├── Properties/launchSettings.json        # F5 调试启动配置
├── DevToysHtmlEscape.resx                # 英文(默认)字符串资源
├── DevToysHtmlEscape.zh-Hans.resx        # 简体中文字符串资源
├── DevToysHtmlEscape.Designer.cs         # 手写资源访问类
├── HtmlEscapeResourceAssemblyIdentifier.cs  # 告诉 DevToys 如何定位本扩展资源
└── HtmlEscapeUnescapeGuiTool.cs          # 工具主体(IGuiTool)

开发环境准备(一次性)

按 官方 Setup 文档:

  1. 安装 DevToys(安装器版默认位于 C:\Users\<用户名>\AppData\Local\Programs\DevToys\DevToys.exe)与 DevToys CLI。

  2. 在 PowerShell 中设置调试入口环境变量(指向你机器上的实际路径):

    [Environment]::SetEnvironmentVariable("DevToysGuiDebugEntryPoint", "C:\Users\<用户名>\AppData\Local\Programs\DevToys\DevToys.exe", "User")
    [Environment]::SetEnvironmentVariable("DevToysCliDebugEntryPoint", "C:\Users\<用户名>\AppData\Local\Programs\DevToys\DevToys.CLI.exe", "User")
    
  3. 编辑器任选其一:Visual Studio 2022(需 ".NET desktop development" 工作负载)、VS Code(C# DevKit)、或 JetBrains Rider。

构建与调试

cd DevToysHtmlEscape
dotnet build
  • 用 Visual Studio / VS Code (C# DevKit) / Rider 打开项目后直接 F5:会构建并拉起 DevToys,EXTRAPLUGIN 环境变量会把本扩展加载进去(见 Properties/launchSettings.json)。

  • 不用 IDE 也可以手动冒烟测试:

    cd DevToysHtmlEscape
    dotnet build
    $env:EXTRAPLUGIN = "$PWD\bin\Debug\net8.0"
    & $env:DevToysGuiDebugEntryPoint
    
  • DevToys 已开启热重载时,调试状态下改代码 → 点 DevToys 右上角的 Hot Reload 按钮 重新加载 UI。

提示:若工具未出现在列表中,多半是 NuGet 上 DevToys.Api 的版本与你安装的 DevToys 预览版差异过大,请在 csproj 中把 DevToys.Api 版本对齐到本机版本。

打包发布

cd DevToysHtmlEscape
dotnet pack -c Release
# 产物: bin/Release/DevToysHtmlEscape.<version>.nupkg
  • 直接把 .nupkg 分发给他人(官网文档推荐渠道:nuget.org(记得打 devtoys-app 标签)、私有 NuGet 源、GitHub Releases、自有网站)。
  • 发布前请补充 csproj 里的 PackageProjectUrl / RepositoryUrl,并把 <Version> 改成正式版本号。

参考

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.1-preview 86 8/27/2026
1.0.0-preview 66 8/27/2026