我感兴趣的是创建一个可以从命令行(pref.linux)运行的工具,它将搜索一组选定的文件(反过来认为.gitignore),解析这些文件,并创建一个看起来像的图像像这样Conceptboard。它不需要看起来那样,但我应该能够控制盒装元素的图形效果和布局。每个盒装元素应该只有顶部的文件名,以及下面文件的内容。
我的问题是:
编辑:graphviz绝对可以使用,但是它能够显示文件内容吗?
答案 0 :(得分:0)
Graphviz无法直接显示文件内容,但我经常将其与java或python中的代码相结合以构建相应的.dot文件,然后在该.dot文件上运行graphviz以生成最终图形,像这样的伪代码:
open .dot text file and add graphviz header information
for each file in directory:
save filename for future reference
read and save file contents
create node in .dot file formatted with filename at top and contents below
for each file in directory:
parse file to locate links to other files
if filename has been processed above, add a link line to .dot output file
add graphviz footer to .dot file
run DOT on .dot file
最终的.dot文件看起来像这样,只有更长的时间:
digraph fileStructure {
node [shape=box, color=black, fontsize=14, fillcolor=white, style=filled]
1 [label="filename\nfile contents"]
2 [label="filename\nfile contents"]
3 [label="filename\nfile contents"]
1 -> 2
1 -> 3
}
有大多数主要编程语言的库可以简化创建.dot文件和运行graphviz的过程,但直接做起来并不难。
需要多长时间取决于你的技能水平,但我不认为这需要花费几个多小时才能完成。