home.social

#graphviz — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #graphviz, aggregated by home.social.

  1. I recently more often view generated SVGs in #Emacs

    - build system task dependency graph like codeberg.org/harald/pythonbuil
    - class dependency graph for a TypeScript project generated from github.com/PSeitz/ts-dependenc

    In both cases it would be great if clicking on a node would result in some emacs command being called.

    Any ideas?

    #pythonbuilder #tsDependencyGraph #graphviz #svg

  2. Книга в Markdown: Автоматическая сборка статического сайта mdBook и файла DOCX с оформлением по ГОСТ

    Текст книг, учебных пособий, научно-технических статей, документации, дипломных и курсовых работ часто набирается и редактируется в WYSIWYG-редакторе, таком как Microsoft Word, в том числе вследствие того, что издательства и организации требуют от авторов оформленный по ГОСТ или внутренним стандартам docx-документ. Процесс работы в Microsoft Word и аналогичных редакторах не лишён недостатков: docx-файлы трудно версионировать в git, а для объединения нескольких документов в один придётся перенумеровывать источники, рисунки, таблицы, формулы. Альтернативой docx является LaTeX. Однако работа со стилями в LaTeX простотой и минималистичным синтаксисом не отличается , причём издательства от использования формата docx отказываться не торопятся. А инструменты в духе typst отличаются нестандартным синтаксисом языка для описания документов, причём возможность генерации сайтов в typst имеет пометку «in preview». Markdown — популярный и удобный язык разметки, но это также и очень ограниченный формат. Поэтому задача написания в Markdown сложной технической документации по ГОСТ, научной статьи с автоматической настройкой оформления для заданного издательства или хорошо оформленного онлайн-учебника может показаться неосуществимой. В этой статье рассмотрим способ работы над научно-техническими статьями и книгами в формате Markdown на основе подхода Docs as Code с учётом строгих ограничений на оформление, используемый Петром Советовым @true-grue и мной при подготовке учебных материалов в РТУ МИРЭА. Способ заключается в применении утилиты pandoc для построения дерева абстрактного синтаксиса (AST) Markdown-документа с последующим переписыванием AST набором фильтров на Lua и трансляцией AST в форматы docx и pdf, соответствующие ГОСТ, а также в диалект markdown, совместимый с mdBook , для генерации онлайн-учебника в виде статического сайта. Исходный код книги , написанной с использованием описанного в статье подхода, опубликован на GitHub.

    habr.com/ru/articles/987982/

    #pandoc #markdown #lua #python #документирование #гост #docx #graphviz #mdbook #github

  3. Having the freedom to chose my work environment on the computer, I move more and more tasks to Emacs recently, like running terminal windows with codeberg.org/harald/terminal-f . Another pet of mine is my python build system: codeberg.org/harald/pythonbuil

    The latter can produce a nice SVG graph, using #graphviz, of the dependency tree of the build setup.

    And should I forget which targets the build has, it is just a C-x C-f dependencies.svg away to see that graph.😀

    #emacs #terminal_frame #pythonbuilder

  4. Explore the craft of transforming text into diagrams in this insightful presentation. Master the art of compiling dot files with ease using , , and .

    youtu.be/gmlEFPsqUgw

  5. One of the things I'll be talking about in the stream tomorrow: Understanding that thi.ng/rstream constructs are essentially defining a #dataflow #graph much like you'd know from a node-graph based editor (a la Blender/Houdini etc.), only obviously with the difference of actually creating such a graph programmatically rather than manually via visual editing. Personally I find this programmatic approach much more powerful, but a visual representation makes it of course much easier to debug & analyze such graph topologies, also to explain & illustrate to others how data and state changes are flowing through the app/system and/or where to attach new features/nodes or optimize/restructure the topology...

    Another massive benefit: This approach makes it much easier to build features such that only the most minimal amount of work needs to be done, helping to achieve better performance...

    The attached diagram was generated with #Graphviz via thi.ng/rstream-dot and shows the dataflow graph for the image vectorization tool mentioned in previous toots.

    Full size version:
    demo.thi.ng/umbrella/trace-bit

    The tool itself:
    demo.thi.ng/umbrella/trace-bit

    The second image shows the minimal code required to generate the #visualization source file...