diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index e08416a..9ff407a 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -7,6 +7,8 @@
+
+
@@ -197,4 +199,7 @@
+
+
+
\ No newline at end of file
diff --git a/frame/__pycache__/CompareViews.cpython-312.pyc b/frame/__pycache__/CompareViews.cpython-312.pyc
new file mode 100644
index 0000000..4fcd5ba
Binary files /dev/null and b/frame/__pycache__/CompareViews.cpython-312.pyc differ
diff --git a/manage/NovelManage.py b/manage/NovelManage.py
index 9e3fcaa..3656688 100644
--- a/manage/NovelManage.py
+++ b/manage/NovelManage.py
@@ -3,10 +3,12 @@ import subprocess as xsub
import sys
import time
from typing import List
+from PyQt5.QtWidgets import QApplication
sys.path.append(os.path.dirname(os.path.dirname(os.path.realpath(__file__))))
from parse.StoryMap import XAST_ParseTool, storyline_list2map
from parse.StorylineCmp import CmpTool
from manage.MileStone import base_store_path, current_store_path
+from frame.CompareViews import CompareWindow
def git_save(target_dir: str):
@@ -41,7 +43,7 @@ def nsc_compile(target_dir: str):
if __name__ == "__main__":
- print(sys.argv)
+ app = QApplication(sys.argv)
cmd_line = ":".join(sys.argv[1:])
#wnss:-cmp
@@ -51,8 +53,12 @@ if __name__ == "__main__":
ast_old = XAST_ParseTool(base_store_path)
ast_new = XAST_ParseTool(current_store_path)
map_old = storyline_list2map(ast_old.story_list)
+ ast_old.storylines_plait(map_old)
map_new = storyline_list2map(ast_new.story_list)
+ ast_new.storylines_plait(map_new)
cmp_tool = CmpTool()
all_changed = cmp_tool.graph_compare(map_new, map_old)
- print(all_changed)
\ No newline at end of file
+ present_view = CompareWindow(map_new, all_changed, None)
+ present_view.show()
+ app.exec()
\ No newline at end of file
diff --git a/manage/wnss.bat b/manage/wnss.bat
index 5a7081c..bdb1c23 100644
--- a/manage/wnss.bat
+++ b/manage/wnss.bat
@@ -6,5 +6,10 @@ for %%i in (%0) do (
set "ScriptName=NovelManage.py"
set ScriptPath=%FolderPath%%ScriptName%
-@echo on
-python %ScriptPath% wnss -cmp
\ No newline at end of file
+set args_opt=wnss%1
+
+if %args_opt% == wnss-cmp (
+python %ScriptPath% wnss -cmp
+) else (
+echo ¶Ô±È»ùÏߣº wnss -cmp
+)
\ No newline at end of file
diff --git a/parse/StoryMap.py b/parse/StoryMap.py
index c8cfefb..d9ed95c 100644
--- a/parse/StoryMap.py
+++ b/parse/StoryMap.py
@@ -32,6 +32,7 @@ class StoryMap:
self.story_name = name
self.sort_index = 0
self.empty_head = FragmentSlice()
+ self.empty_head.set_to_memory("<空节点>")
self.slice_list: List[FragmentSlice] = [self.empty_head]
pass
diff --git a/parse/__pycache__/StoryMap.cpython-312.pyc b/parse/__pycache__/StoryMap.cpython-312.pyc
index c7824f1..84dda60 100644
Binary files a/parse/__pycache__/StoryMap.cpython-312.pyc and b/parse/__pycache__/StoryMap.cpython-312.pyc differ