多语言调试
This commit is contained in:
parent
3e652f3e66
commit
db04cd939b
@ -111,6 +111,10 @@ namespace Logic.Editor
|
||||
{
|
||||
ExcelExportToAsset();
|
||||
}
|
||||
if (InspectorUtils.InspectorButtonWithTextWidth("去重"))
|
||||
{
|
||||
DuplicateRemoval();
|
||||
}
|
||||
EditorGUILayout.EndHorizontal();
|
||||
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
@ -155,18 +159,41 @@ namespace Logic.Editor
|
||||
{
|
||||
EditorGUILayout.BeginVertical(EditorStyles.helpBox);
|
||||
InspectorUtils.InspectorTextWidthRich($"<b>{item.ID} : </b>");
|
||||
InspectorUtils.InspectorTextWidthRich($" <b>中文:{item.ZH} </b>");
|
||||
InspectorUtils.InspectorTextWidthRich($" <b>中文:</b> {item.ZH}");
|
||||
if (!string.IsNullOrEmpty(item.EN))
|
||||
InspectorUtils.InspectorTextWidthRich($" <b>英语:{item.EN} </b>");
|
||||
InspectorUtils.InspectorTextWidthRich($" <b>英语:</b> {item.EN}");
|
||||
if (!string.IsNullOrEmpty(item.JP))
|
||||
InspectorUtils.InspectorTextWidthRich($" <b>日语:{item.JP} </b>");
|
||||
InspectorUtils.InspectorTextWidthRich($" <b>日语:</b> {item.JP}");
|
||||
if (!string.IsNullOrEmpty(item.KR))
|
||||
InspectorUtils.InspectorTextWidthRich($" <b>韩语:{item.KR} </b>");
|
||||
InspectorUtils.InspectorTextWidthRich($" <b>韩语:</b> {item.KR}");
|
||||
var unicode = "";
|
||||
foreach (var c in item.ZH) unicode+= $"{(int)c:X4} ";
|
||||
InspectorUtils.InspectorTextWidthRich($" <b>Unicode:</b> {unicode}");
|
||||
EditorGUILayout.EndVertical();
|
||||
EditorGUILayout.Space();
|
||||
}
|
||||
|
||||
// 新增辅助方法:移除 CSV 字段两端的引号并处理内部转义
|
||||
private void DuplicateRemoval()
|
||||
{
|
||||
// 排序 asset.items 保证id从小到大
|
||||
_asset.Items = _asset.Items.OrderBy(i => i.ID).ToList();
|
||||
_zhStrDict.Clear();
|
||||
var deleteItem = new HashSet<MultilingualItem>();
|
||||
foreach (var item in _asset.Items)
|
||||
{
|
||||
if (_zhStrDict.ContainsKey(item.ZH))
|
||||
{
|
||||
deleteItem.Add(item);
|
||||
continue;
|
||||
}
|
||||
|
||||
_zhStrDict[item.ZH] = item.ID;
|
||||
}
|
||||
|
||||
foreach (var item in deleteItem) _asset.Items.Remove(item);
|
||||
_asset.RefreshDict();
|
||||
}
|
||||
|
||||
private string RemoveCsvQuotes(string field)
|
||||
{
|
||||
if (string.IsNullOrEmpty(field)) return field;
|
||||
@ -283,7 +310,7 @@ namespace Logic.Editor
|
||||
StringBuilder sb = new StringBuilder();
|
||||
foreach (var item in _asset.Items)
|
||||
{
|
||||
sb.Append($"{item.ID}%$#@!{item.ZH}%$#@!{item.EN}%$#@!{item.JP}%$#@!{item.KR}!@#$%\n");
|
||||
sb.Append($"{item.ID}%$#@!{item.ZH}%$#@!{item.EN}%$#@!{item.JP}%$#@!{item.KR}!@#$%");
|
||||
}
|
||||
sw.Write(sb.ToString());
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user