mirror of
https://github.com/l0ng-ai/openidea.git
synced 2026-11-06 16:08:05 +00:00
- Graphviz: `.dot` / `.gv` files open beside a live preview (a web view rendering with Graphviz compiled to WebAssembly) in any layout engine, with zoom, pan, Fit and SVG / PNG export through the save dialog. What Graphviz reports goes from the page to the plugin's code, which publishes it as problems on the named line. A DOT language, file icons and a New Graphviz Graph template. - Regex Tester: a tool window whose html view sends pattern, flags, text and replacement as you type; the plugin matches with Rust's regex (linear time) and answers with matches, groups and the replacement in UTF-16 offsets. Use Selection and Test Selection take the editor's selection. - License Header: files without a copyright / SPDX header are reported when they open and on save; a quick fix and a command add one in the file's comment syntax (after a shebang or encoding line); a project scan in a background task reports the rest. Holder and license are settings. - Harbor Night becomes an official plugin and the one source of the theme files: `openidea-plugin new --template theme`, the theme docs and tests start from it. - Tool windows' renders and events carry the window's active editor, as commands do, so a view's buttons can act on what the user is editing. - knip leaves plugins' web pages (projects of their own) alone.
39 lines
1.2 KiB
TOML
39 lines
1.2 KiB
TOML
id = "openidea.graphviz"
|
|
name = "Graphviz"
|
|
version = "0.1.0"
|
|
description = "Graphviz DOT files (.dot, .gv) with a live preview beside the text: rendered as you type with any layout engine, syntax errors in the editor and the Problems view, export to SVG and PNG."
|
|
authors = ["OpenIDEA contributors"]
|
|
license = "Apache-2.0"
|
|
change-notes = "0.1.0 — first release: live preview (Graphviz compiled to WebAssembly), layout engines, zoom, errors as problems, SVG and PNG export."
|
|
engines.openidea = "^1.0"
|
|
wasm = "dist/plugin.wasm"
|
|
activation = ["on-view:preview"]
|
|
|
|
[capabilities]
|
|
# Problems: published for the project's file (project.read), on the lines
|
|
# Graphviz names (editor.read: the previewed text).
|
|
required = ["editor.read", "project.read"]
|
|
|
|
[[contributes.customEditors]]
|
|
id = "preview"
|
|
title = "Preview"
|
|
patterns = ["*.dot", "*.gv"]
|
|
priority = "default"
|
|
layout = "split"
|
|
web = "web/index.html"
|
|
|
|
[[contributes.languages]]
|
|
path = "languages/dot.toml"
|
|
|
|
[[contributes.fileIcons]]
|
|
id = "graphviz"
|
|
patterns = ["*.dot", "*.gv"]
|
|
icon = "icons/graphviz.svg"
|
|
iconDark = "icons/graphviz_dark.svg"
|
|
|
|
[[contributes.fileTemplates]]
|
|
id = "graph"
|
|
name = "Graphviz Graph"
|
|
extension = "dot"
|
|
path = "templates/graph.dot"
|