### 2025-01-15 星期三更新

----
#### SuperDesign    V3.0.2501.1501
#### 项目功能->更新日志
- *.[新增]发布日志时自动填写到MD文件里的更新日志将自动携带表情信息。
- *.[修复]修复更新日志为空时右键添加日志报错的BUG。
- *.[修复]修复当存在分组时,右键菜单插入日志可能填入的位置不对的BUG。
This commit is contained in:
紫林软件 2025-01-15 13:24:59 +08:00
parent 9d3c5a384f
commit 747a97a1c9
13 changed files with 116 additions and 32 deletions

View File

@ -1,15 +1,36 @@
### 2025-01-14 星期二更新 ### 2025-01-15 星期三更新
----
#### SuperDesign V3.0.2501.1501
#### 项目功能->更新日志
- *.[新增]发布日志时自动填写到MD文件里的更新日志将自动携带表情信息。
- *.[修复]修复更新日志为空时右键添加日志报错的BUG。
- *.[修复]修复当存在分组时,右键菜单插入日志可能填入的位置不对的BUG。
### 2025-01-14 星期二更新
---- ----
#### SuperDesign V3.0.2501.1401 #### SuperDesign V3.0.2501.1401
#### 项目功能 #### 项目功能
- *.[新增]生成列表Html日志支持分组显示。
- *.[新增]更新日志新增支持显示距离最近一次更新的用时。 - :cactus:[新增]生成列表Html日志支持分组显示。
- *.[改进]优化双击更新日志时的日志展示。
- *.[改进]右键插入更新日志时,支持识别分组并插入。 - :cactus:[新增]更新日志新增支持显示距离最近一次更新的用时。
- *.[修复]修复更新日志如果包含####,生成的MD日志格式不正确的BUG。
#### 网页抓取工具 - :butterfly:[改进]优化双击更新日志时的日志展示。
- *.[新增]新增提交时间显示。
- :butterfly:[改进]右键插入更新日志时,支持识别分组并插入。
- :lady_beetle:[修复]修复更新日志如果包含####,生成的MD日志格式不正确的BUG。
#### 网页抓取工具
- :cactus:[新增]新增提交时间显示。
### 2025-01-13 星期一更新 ### 2025-01-13 星期一更新
@ -43,7 +64,7 @@
#### RySmartEditor V1.0.2501.0801 #### RySmartEditor V1.0.2501.0801
- *.[改进]复制文件到其它站点同位置功能支持复制文件夹。 - *.[改进]复制文件到其它站点同位置功能支持复制文件夹。
#### SuperDesign V3.0.2501.0801 #### SuperDesign V3.0.2501.0801
- *.[新增]支持直接设置主项目的功能。 - *.[新增]支持直接设置主项目的功能。

View File

@ -1,15 +1,23 @@
# 开发辅助工具 # 开发辅助工具
#### 介绍 ---
开发辅助工具是一款专为开发人员设计的工具,内置了多种开发人员常见工具。
- 支持各种编码解码 ##### 开发辅助工具是一款专为开发人员设计的工具,内置了多种开发人员常见工具。
- 支持时间戳转换
支持OS:Windows 支持框架:.NET 4.6.2 [更新日志](CHANGELOG.md)
---
#### 特性
- 支持各种编码解码。
- 支持时间戳转换。
- 更好用的网页抓取工具。 - 更好用的网页抓取工具。
- XPath测试工具 - XPath测试工具
- 正则表达式测试工具。 - 正则表达式测试工具。
- 字符串转代码工具 - 字符串转代码工具
- Json格式化工具 - Json格式化工具
- 二维码生成与解析工具 - 二维码生成与解析工具
- 字符串统计工具 - 字符串统计工具
- 颜色转换工具 - 颜色转换工具
- 毕方架构解析和辅助工具。 - 毕方架构解析和辅助工具,支持项目更新日志快速更新

View File

@ -12,7 +12,7 @@ namespace SuperDesign.Manager
{ {
public class APIManager public class APIManager
{ {
public static string GetMdLogText(JArray jarr, DateTime dt) public static string GetMdLogText(JArray jarr, DateTime dt,bool UseEmoji=false)
{ {
string log_text = "### " + DateTime.Now.ToString("yyyy-MM-dd dddd") + "更新"; string log_text = "### " + DateTime.Now.ToString("yyyy-MM-dd dddd") + "更新";
log_text += "\r\n----"; log_text += "\r\n----";
@ -25,14 +25,30 @@ namespace SuperDesign.Manager
{ {
if (logs[m].Length == 0) { continue; } if (logs[m].Length == 0) { continue; }
var log_item = logs[m].Replace("[开发]",""); var log_item = logs[m].Replace("[开发]","");
if (log_item.StartsWith("*."))
{
log_item = "- " + log_item;
}
if (UseEmoji)
{
var type_item = logs[m].GetStr("- *.[", "]");
if (type_item == "修复")
{
log_item = log_item.Replace("*.[" + type_item + "]", ":lady_beetle:[" + type_item + "]");
}
else if (type_item == "改进")
{
log_item = log_item.Replace("*.[" + type_item + "]", ":butterfly:[" + type_item + "]");
}
else if (type_item == "新增")
{
log_item = log_item.Replace("*.[" + type_item + "]", ":cactus:[" + type_item + "]");
}
}
if (log_item.StartsWith("- *.")) if (log_item.StartsWith("- *."))
{ {
log_text += "\r\n" + log_item; log_text += "\r\n" + log_item;
} }
else if (log_item.StartsWith("*."))
{
log_text += "\r\n- " + log_item;
}
else if (log_item.StartsWith("#### ")) else if (log_item.StartsWith("#### "))
{ {
log_text += "\r\n" + log_item; log_text += "\r\n" + log_item;

View File

@ -31,5 +31,5 @@ using System.Runtime.InteropServices;
// 可以指定所有值,也可以使用以下所示的 "*" 预置版本号和修订号 // 可以指定所有值,也可以使用以下所示的 "*" 预置版本号和修订号
// 方法是按如下所示使用“*”: : // 方法是按如下所示使用“*”: :
// [assembly: AssemblyVersion("1.0.*")] // [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("3.0.2501.1401")] [assembly: AssemblyVersion("3.0.2501.1501")]
[assembly: AssemblyFileVersion("3.0.2501.1401")] [assembly: AssemblyFileVersion("3.0.2501.1501")]

View File

@ -1178,7 +1178,7 @@ namespace 开发辅助工具.Tools
Main_Version = first_tag.Version; Main_Version = first_tag.Version;
} }
#region #region
var log_text = SuperDesign.Manager.APIManager.GetMdLogText(jarr, DateTime.Now); var log_text = SuperDesign.Manager.APIManager.GetMdLogText(jarr, DateTime.Now,true);
var CHANGELOG = RyFiles.ReadAllText(_path+ "\\CHANGELOG.md").Trim(); var CHANGELOG = RyFiles.ReadAllText(_path+ "\\CHANGELOG.md").Trim();
CHANGELOG = log_text + "\r\n\r\n" + CHANGELOG; CHANGELOG = log_text + "\r\n\r\n" + CHANGELOG;
RyFiles.WriteAllText(_path + "\\CHANGELOG.md", CHANGELOG); RyFiles.WriteAllText(_path + "\\CHANGELOG.md", CHANGELOG);
@ -1510,11 +1510,14 @@ namespace 开发辅助工具.Tools
if (line_index < 0) { line_index = 0; } if (line_index < 0) { line_index = 0; }
else else
{ {
for (int j = line_index; j>=0; j--) if (lines.Count > 0)
{ {
if (lines[j].StartsWith("#### ")) for (int j = line_index; j >= 0; j--)
{ {
line_index = j+1;break; if (lines[j].StartsWith("#### "))
{
line_index = j + 1; break;
}
} }
} }
} }

View File

@ -28,6 +28,7 @@
/// </summary> /// </summary>
private void InitializeComponent() private void InitializeComponent()
{ {
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmPublishLogs));
this.BtnCopyMD = new ryControls.ButtonEx(); this.BtnCopyMD = new ryControls.ButtonEx();
this.BtnCopyHtml = new ryControls.ButtonEx(); this.BtnCopyHtml = new ryControls.ButtonEx();
this.SuspendLayout(); this.SuspendLayout();
@ -66,6 +67,7 @@
this.Controls.Add(this.BtnCopyHtml); this.Controls.Add(this.BtnCopyHtml);
this.Controls.Add(this.BtnCopyMD); this.Controls.Add(this.BtnCopyMD);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MaximizeBox = false; this.MaximizeBox = false;
this.MinimizeBox = false; this.MinimizeBox = false;
this.Name = "FrmPublishLogs"; this.Name = "FrmPublishLogs";

View File

@ -117,4 +117,20 @@
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAABAAEAICAAAAAAIABYAgAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAgAAAAIAgGAAAAc3p69AAAAARn
QU1BAACxjwv8YQUAAAIPSURBVFhH7Ze/SwMxFMcz+AMFdXMQhJt1lOZORSyCoF2chPNyiBWxk06Ci6h/
gS7OujgIIi6Km+IkuIgODi6Oig4dHBwj35ytSa65u3B16we+0KYved/kvUtbQlpkwQ1KhLILfdgIYjEn
F57v1OUulAkNL5UxkwBiMUcfz0yB3RDKXiW9E8peSCFY0sbjctkRoeHj7xz1s8wgWHYtShBeKjFJiBOQ
SoC18htgV0pMEohtqgEwNN+hvE9Cj22KgTy0DOQ24LFZQhm3EubU5+c1ANBYNpJpioE8tAxgLS8s6sNm
GhkYX+6JaWS+T4kBNNjpHV3b73YrD53uymeXWzkV3yFW6AYK4UysyyPd12M832mn5bvBsd3vyeIZX5x+
5uszH3xu6pYPTxx8tdHyW2xTRnQDaeB4KeNIvF3iQoebnJ/vRa+h8eJJtctdrWYrhaUBHDd2XEsGXR9H
ksdwGuIkUrExUAiWBsa2qnIikwEI5UjvCQsDaDLsTE9kMoCTwonp66hYGECno9n0REj++vRnpGYGsell
sDDQqP7QXllNLp+GeIISsTCAR6+RAZNQLnE3JGJhoH90cwONpScyCfdEU5sQcaYy6EJMev2BjQHg+Q4u
Gfki0oXk0e+Ef7iIBJ7vYHcoB+qMboeQGLdgdBVnSQ7En4vYvd9YslHPd9ATaLLoi2i1Kp55Guwo67eQ
+AGrnEALTX7CoAAAAABJRU5ErkJggg==
</value>
</data>
</root> </root>

View File

@ -28,6 +28,7 @@
/// </summary> /// </summary>
private void InitializeComponent() private void InitializeComponent()
{ {
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmUpdateLog));
this.tabControl1 = new System.Windows.Forms.TabControl(); this.tabControl1 = new System.Windows.Forms.TabControl();
this.SuspendLayout(); this.SuspendLayout();
// //
@ -48,6 +49,7 @@
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(786, 580); this.ClientSize = new System.Drawing.Size(786, 580);
this.Controls.Add(this.tabControl1); this.Controls.Add(this.tabControl1);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.Name = "FrmUpdateLog"; this.Name = "FrmUpdateLog";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "更新日志"; this.Text = "更新日志";

View File

@ -106,7 +106,7 @@ namespace SuperDesign.Tools
} }
if(line.StartsWith("#### ")) if(line.StartsWith("#### "))
{ {
line ="<b>"+ line + "</b>"; line ="<br /><b>"+ line.Substring(5) + "</b>";
} }
LogText += line; LogText += line;
} }

View File

@ -117,4 +117,20 @@
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAABAAEAICAAAAAAIABYAgAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAgAAAAIAgGAAAAc3p69AAAAARn
QU1BAACxjwv8YQUAAAIPSURBVFhH7Ze/SwMxFMcz+AMFdXMQhJt1lOZORSyCoF2chPNyiBWxk06Ci6h/
gS7OujgIIi6Km+IkuIgODi6Oig4dHBwj35ytSa65u3B16we+0KYved/kvUtbQlpkwQ1KhLILfdgIYjEn
F57v1OUulAkNL5UxkwBiMUcfz0yB3RDKXiW9E8peSCFY0sbjctkRoeHj7xz1s8wgWHYtShBeKjFJiBOQ
SoC18htgV0pMEohtqgEwNN+hvE9Cj22KgTy0DOQ24LFZQhm3EubU5+c1ANBYNpJpioE8tAxgLS8s6sNm
GhkYX+6JaWS+T4kBNNjpHV3b73YrD53uymeXWzkV3yFW6AYK4UysyyPd12M832mn5bvBsd3vyeIZX5x+
5uszH3xu6pYPTxx8tdHyW2xTRnQDaeB4KeNIvF3iQoebnJ/vRa+h8eJJtctdrWYrhaUBHDd2XEsGXR9H
ksdwGuIkUrExUAiWBsa2qnIikwEI5UjvCQsDaDLsTE9kMoCTwonp66hYGECno9n0REj++vRnpGYGsell
sDDQqP7QXllNLp+GeIISsTCAR6+RAZNQLnE3JGJhoH90cwONpScyCfdEU5sQcaYy6EJMev2BjQHg+Q4u
Gfki0oXk0e+Ef7iIBJ7vYHcoB+qMboeQGLdgdBVnSQ7En4vYvd9YslHPd9ATaLLoi2i1Kp55Guwo67eQ
+AGrnEALTX7CoAAAAABJRU5ErkJggg==
</value>
</data>
</root> </root>