提交 b81dcf30 编写于 作者: M Mars Liu

fixed index if something been dropped

上级 5fa899dc
{
"keywords": [],
"children": []
"children": [],
"node_id": "java-461a08a44ae845018b7f0356ea928085"
}
\ No newline at end of file
{
"keywords": [],
"children": []
"children": [],
"node_id": "java-a02b334b2e364161badae34636a0284f"
}
\ No newline at end of file
{
"keywords": [],
"children": []
"children": [],
"node_id": "java-5d28bfbed25f4ae2b4d21fc1f2222e49"
}
\ No newline at end of file
{
"keywords": [],
"children": []
"children": [],
"node_id": "java-b06b5b2c7a6b44cc87744168729b31e6"
}
\ No newline at end of file
{
"keywords": [],
"children": []
"children": [],
"node_id": "java-e06f6fb888f940b4894e835d9afc9138"
}
\ No newline at end of file
{
"node_id": "java-e7f48c927ca6465dbdd3af4c4d795441",
"keywords": [],
"children": [],
"export": [],
"title": "测试使用Lambda的方法的行为"
}
\ No newline at end of file
{
"node_id": "java-6d6fd33e57cd48f9b76243f7ba534f0d",
"keywords": [],
"children": [],
"export": [],
"title": "将复杂的Lambda表达式分为不同的方法"
}
\ No newline at end of file
{
"node_id": "java-4ce628b8b7eb483faa286ee8d3000573",
"keywords": [],
"children": [
{
"函数式接口": {
"keywords": [],
"children": [],
"node_id": "java-f079f0add4d44e6bbc108f5189827c56",
"title": "函数式接口"
}
},
{
"函数描述符": {
"keywords": [],
"children": [],
"node_id": "569d5e11c4fc5de7844053d9a733c5e8",
"title": "函数描述符"
}
}
],
"export": [],
"title": "在哪里以及如何使用Lambda"
}
\ No newline at end of file
{
"node_id": "java-1cd095cedaae4df0abc6760f425f2157",
"keywords": [],
"children": [
{
"第 1 步:记得行为参数化": {
"keywords": [],
"children": [],
"node_id": "java-a2abd41288974a7bb1e4870e3a1dcd12",
"title": "第 1 步:记得行为参数化"
}
},
{
"第 2 步:使用函数式接口来传递行为": {
"keywords": [],
"children": [],
"node_id": "569d5e11c4fc5de7844053d9a733c5e8",
"title": "第 2 步:使用函数式接口来传递行为"
}
},
{
"第 3 步:执行一个行为": {
"keywords": [],
"children": [],
"node_id": "569d5e11c4fc5de7844053d9a733c5e8",
"title": "第 3 步:执行一个行为"
}
},
{
"第 4 步:传递Lambda": {
"keywords": [],
"children": [],
"node_id": "569d5e11c4fc5de7844053d9a733c5e8"
}
}
],
"export": [],
"title": "把Lambda付诸实践:环绕执行模式"
}
\ No newline at end of file
{
"node_id": "java-b4495bc9b8694eda8bf27c699d795f76",
"keywords": [],
"children": [
{
"比较器复合": {
"keywords": [],
"children": [],
"node_id": "java-76960eb8ee414dca8ea8082fe41df360",
"title": "比较器复合"
}
},
{
"谓词复合": {
"keywords": [],
"children": [],
"node_id": "569d5e11c4fc5de7844053d9a733c5e8",
"title": "谓词复合"
}
},
{
"函数复合": {
"keywords": [],
"children": [],
"node_id": "569d5e11c4fc5de7844053d9a733c5e8",
"title": "函数复合"
}
}
],
"export": [],
"title": "复合Lambda表达式的有用方法"
}
\ No newline at end of file
{
"node_id": "java-4e36ec97875946d0b23b1fe9aa162925",
"keywords": [],
"children": [
{
"积分": {
"keywords": [],
"children": [],
"node_id": "java-e7c688fbe3174abf890b1c47cfcfbf7b",
"title": "积分"
}
},
{
"与Java 8的Lambda联系起来": {
"keywords": [],
"children": [],
"node_id": "569d5e11c4fc5de7844053d9a733c5e8",
"title": "与Java 8的Lambda联系起来"
}
}
],
"export": [],
"title": "数学中的类似思想"
}
\ No newline at end of file
{
"node_id": "java-e32903621c3145bdb7664eb20537cd16",
"keywords": [],
"children": [],
"export": [],
"title": "测试可见Lambda函数的行为"
}
\ No newline at end of file
此差异已折叠。
......@@ -119,7 +119,8 @@ class TreeWalker:
level_path = os.path.join(self.root, level)
num, config = self.load_level_node(level_path)
levels.append((num, config))
levels.sort(key=lambda item: item[0])
levels = self.resort_children(self.root, levels)
root_node["children"] = [item[1] for item in levels]
return root_node
......@@ -145,7 +146,7 @@ class TreeWalker:
num, chapter = self.load_chapter_node(full_name)
chapters.append((num, chapter))
chapters.sort(key=lambda item: item[0])
chapters = self.resort_children(base, chapters)
level_node["children"] = [item[1] for item in chapters]
return level_node
......@@ -157,10 +158,21 @@ class TreeWalker:
num, section = self.load_section_node(full_name)
sections.append((num, section))
sections.sort(key=lambda item: item[0])
sections = self.resort_children(base, sections)
chapter_node["children"] = [item[1] for item in sections]
return chapter_node
def resort_children(self, base, children):
children.sort(key=lambda item: item[0])
for index, [number, element] in enumerate(children):
title = list(element.keys())[0]
origin = os.path.join(base, f"{number}.{title}")
posted = os.path.join(base, f"{index+1}.{title}")
if origin != posted:
self.logger.info(f"rename [{origin}] to [{posted}]")
os.rename(origin, posted)
return children
def ensure_chapters(self):
for subdir in os.listdir(self.root):
self.ensure_level_config(subdir)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册