ctrl+shift+p filters: :st2 :st3 :win :osx :linux
Browse

Graphvizer

by Hao Lee ST3

Preview Graphviz in real time with Sublime Text 3

Details

Installs

  • Total 442
  • Win 199
  • OS X 163
  • Linux 80
May 20 May 19 May 18 May 17 May 16 May 15 May 14 May 13 May 12 May 11 May 10 May 9 May 8 May 7 May 6 May 5 May 4 May 3 May 2 May 1 Apr 30 Apr 29 Apr 28 Apr 27 Apr 26 Apr 25 Apr 24 Apr 23 Apr 22 Apr 21 Apr 20 Apr 19 Apr 18 Apr 17 Apr 16 Apr 15 Apr 14 Apr 13 Apr 12 Apr 11 Apr 10 Apr 9 Apr 8 Apr 7 Apr 6 Apr 5
Windows 1 0 2 6 6 2 1 1 0 1 1 1 4 1 2 0 2 8 3 3 2 2 0 1 3 2 4 3 1 1 2 1 5 2 5 0 0 5 0 0 2 4 0 3 4 0
OS X 0 3 0 1 4 2 1 0 0 1 3 2 1 4 1 0 7 3 2 2 1 0 2 3 3 0 2 6 1 2 2 1 1 2 3 0 4 0 0 1 4 2 2 0 1 1
Linux 0 0 2 0 4 2 0 0 1 1 0 1 0 0 0 0 0 7 3 0 0 0 0 1 2 1 0 3 0 0 0 0 1 1 1 0 1 0 0 1 1 0 0 0 0 3

Readme

Source
raw.​githubusercontent.​com

Graphvizer

Graphvizer is a Graphviz plugin for Sublime Text 3. It can make your experience more pleasant when editing a dot language file. You just need to edit your file at the speed of thought and this plugin will render the image and refresh it in real time. If the syntax is invalid, the plugin will show you some error messages.

Features

  • Real-time rendering
  • Real-time syntax checking
  • Error message prompting

Usage

Note: Please ensure the file syntax is set to Graphviz (DOT). You can do this by View -> Syntax or clicking the bottom right corner of Sublime Text window.

Open image window

ctrl+shift+g or Tools -> Graphvizer -> Open Rendered Image

ctrl+shift+g to open the image window

Open Graphvizer panel

ctrl+shift+x or Tools -> Graphvizer -> Show Graphvizer Panel

ctrl+shift+g to open the Graphvizer panel

About Key Bindings

If you want to change the default key bindings, use Preference -> Package Settings -> Graphvizer -> Key Bindings - User to do that.

Why do I create this plugin?

Graphviz is an awesome visualization tool, but it's very inconvenient to write a dot file by hand. I have to use dot file.dot -Tpng -o file.png to render image manually again and again and I don't know whether the syntax is correct or not instantly. Atom editor has an excellent plugin called GraphViz preview+, but I can't find any plugins like this on packagecontrol.io. Finally, I create Graphvizer.

Installation

1. Prerequisites

I can't implement the Graphviz visualization algorithm from scratch, so this plugin needs dot command to render the image. In other words, you need to install the official Graphviz on your system.

For Linux/Mac

Use your operating system package manager (e.g. dnf or apt-get) to install Graphviz.

On my Fedora 27 X86_64, the command is:

sudo dnf install graphviz

Use dot -V to make sure you have configured all things correctly and you should see the version info of Graphviz.

For Windows

Download from here: https://graphviz.gitlab.io/download/. The installation is very simple but you need additional configuration. Otherwise, the plugin don't know where to invoke the dot command.

Method 1: Add the path of dot.exe (e.g. D:\Graphviz\bin) to the PATH environment variable of your system. Then the dot command can be accessed from the command prompt(a.k.a. cmd) and this plugin can also invoke it. If you don't know what the PATH is, Google may help you. I won't explain the full details. Sorry about that.

Type dot -V in Windows cmd window and hit enter. If everything is OK, you will see the version info of Graphviz.

Method 2: Specify the path of dot explicitly with settings file. Open Preference -> Package Settings -> Graphvizer -> Settings - User. Copy the following content to the opened file and set dot_cmd_path according to your system.

{
    // "dot_cmd_path" is the path of dot command. Here are some examples.
    // For Windows: "D:\\Graphviz\\bin\\dot.exe"
    // For Linux: "/usr/bin/dot"
    // For OSX: "/usr/bin/dot"
    // If you have added this path to the PATH environment variable, you can
    // use "dot" instead of the full absolute path.
    "dot_cmd_path": "dot"
}

2. Installing Graphvizer

Using Package Control

The easiest way to install Graphvizer is through Package Control. You must have known how to do this.

Bring up the Command Palette (Control+Shift+P on Linux/Windows, Command+Shift+P on Mac). Select Package Control: Install Package and then search Graphvizer to install it.

Manually

git clone this project to your system or just download the zip file from GitHub and decompress it. Now you have got the Graphvizer directory.

Using the Sublime Text 3 menu Preferences -> Browse Packages... to find out your package directory path. On my Windows 7, the path is D:\Sublime Text 3\Data\Packages. Move the entire Graphvizer directory into the package directory. Done!

Other Configurations

Set timeout for dot command

If you are editing a very large graph, the dot command may need a long time to complete and your CPU may be exhausted. For this reason, I set a timeout for dot command and it will be terminated if it takes too long to complete. You can change the timeout if you want. Open Preference -> Package Settings -> Graphvizer -> Settings - User. Copy the following content to the opened file and set dot_timeout as needed.

{
    // If the dot command takes more than `dot_timeout` seconds, it will be
    // terminated. The default value is 6 seconds.
    "dot_timeout": 6
}

To-Do List

  • [x] Configure the dot command path in Settings.
  • [x] Key Bindings for Window/Linux/OSX separately.
  • [x] Add Preference -> Package Settings menu items to custom user settings.
  • [ ] Display image in another layout instead of a new window.
  • [x] Set timeout for dot command.
  • For other features, please open an issue.

LICENSE

GNU GENERAL PUBLIC LICENSE Version 2 (GPLv2)