gpt4 book ai didi

graphviz - 自动缩进 graphviz .dot 文件

转载 作者:行者123 更新时间:2023-12-04 13:49:57 24 4
gpt4 key购买 nike

我正在处理一个长而复杂的架构图。文档缩进混合了制表符、空格和缩进级别,这让我抓狂。

有没有简单的方法可以在 Linux 环境下自动缩进 graphviz .dot 文件?

一个纯命令行工具是最好的,但是像 vim 这样流行的编辑器的插件也是一个很好的解决方案。

更新:

vim 缩进有一个错误,: 在边缘的节点名称中。例如,server_a:event -> log_server; 导致下一行进一步缩进,大概是因为 : 被解析为 block 声明(参见 Harry Pehkonen's answer 上的注释) ).引用节点名称(例如 "server_a":event -> log_server;)解决了这个问题:

#!/usr/bin/python3

import re

dot=open('components.dot').read()
reg=re.compile("(\s)(\S+)(\:.*\-\>)")
print(reg.sub(r'\1"\2"\3', dot))

最佳答案

Vim 具有开箱即用的点语法知识,似乎可以为我重新缩进点文件。

我删除了所有缩进,转到文件顶部,然后做了 =G

您的全局制表符相关值决定是否使用制表符/空格、多少等。

如果需要,您可以创建一个脚本:

> vim -W reIndentAndSave whatever.dot

通过从顶部重新缩进来编辑您的点文件

gg=G

...保存

:x

然后,对于您想要通过刚刚录制的脚本重新缩进的每个文件,

> vim -s reIndentAndSave somegraph.dot

关于graphviz - 自动缩进 graphviz .dot 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20946940/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com