Welcome to Timink
Timink is a Inkscape (effect) extension with a GTK+ user interface for easy creation and editing of publication quality (digital) timing diagrams.
The native file format of Inkscape is SVG, which can be rendered by almost all modern web browsers. Inkscape provides excellent export capabilities (PDF, EPS, WMF, PNG...), so the integration of the diagrams into your favorite text procession environment (LaTeX, Open Office, MS Word...) will be no problem.
Timink is intended as a tool for documentation (e.g. for specifying digital interfaces) with emphasis on graphical annotation. It is not suitable for managing precise machine-checkable timing requirements or for generating testbenchs.
Basic Idea
Drawing high-quality timing diagrams without a specialized drawing tool is possible, but cumbersome and time-consuming. (The best open-source tool I know for this purpose is Open Office Draw, whose connectors allow moving signal edges without adjusting all connected lines manually.)
Timink tries to simplify this process by transforming a simple text-based signal cluster specification given by the user into its graphical representation (the Timink object, representing the signal cluster). For example:
A Timink object is a normal SVG <g> element with a certain structure and certain Timink specific attributes, which contains the graphical representation for the given signal cluster specification.
A Timink object can be edited (by selecting any element in the Timink object and running the Timink extension) to change the signal cluster specification and update its graphical representation.
Being an Inkscape extension, Timink cannot directly interact with the user on a per-object basis. Instead, it tries to take into account user-changes on the generated graphical objects as far as possible. For example, the user can reposition and transform a <g> element representing the graph of a signal interactively with Inkscape. When changing the (textual) signal cluster specification, this information is taken into account and used for the updated graphical representation.
Usage
To create a Timink object in Inkscape:
- (If a satisfying template exists: Copy the Timink object [the signal cluster] and select it.)
- Select Extensions > Timink to enter the signal cluster specification.
- Format the generated graphical elements representing the signal cluster and make annotations as necessary.
By selecting the generated Timink object and selecting Extensions > Timink, all properties of the Timink object (e.g. the signal cluster specification) can be changed afterwards. The formatting of the graphical elements is preserved as far as possible.
Documentation
- User Manual
- FAQ
- Examples:
Development status
Timink is fully usable on FreeBSD 8.x and MS Windows. The SVG representation of the Timink objects is frozen. This means that timing diagrams created by Timink ≥ 0.1.0 are expected to be properly handled by future versions.
Known bugs and limitations: #5, #8. Feel free to comment the tickets.
You're welcome to add bug reports and feature requests here.
Development roadmap: /roadmap.
Installation and prerequisites
Supported platforms
Primary development platform is FreeBSD 8.x. However, it is a design goal to have it run on MS Windows 7, too.
Required components
(Tested configuration in parentheses.)
component FreeBSD MS Windows Inkscape ≥ 0.46 (0.47) ≥ 0.48 (0.48) Python 2.x ≥ 2.6 (2.6.5) ≥ 2.6 (2.6.5 of Inkscape 0.48) GTK+ 2.x (2.20.1) (2.16 of Inkscape 0.48) pygtk (2.17.0) (2.16 of pygtk-2.16_for_inkscape-0.48.zip) lxml (2.2.4) (? of Inkscape 0.48)
Installation instructions
FreeBSD
Get the latest timink-x.y.z.tar.gz here and extract it to the extension directory of Inkscape. For Inkscape 0.47, this is:
- ~/.config/inkscape/extensions ("private" installation)
- /usr/local/share/inkscape/extensions (system wide)
If installed properly, timink.inx resides directly in one of these directories.
After restarting Inkscape, the menu item Extensions > Timink should appear.
MS Windows
- Get the matching pygtk "package" pygtk-x.y_for_inkscape-u.v.zip here an follow the installation instructions in the included README-pygtk.txt.
- Get the latest timink-x.y.z.tar.gz here and extract it to the extension directory of Inkscape. For Inkscape 0.48 this is: <inkscape-install-dir>\share\extensions. If installed properly, timink.inx resides directly in this directory.
After restarting Inkscape, the menu item Extensions > Timink should appear.
See also
- Project on Sourceforge:
- Tex Text - LaTeX integration for Inkscape, useful for annotation of (not only, of course) timing diagrams
- Other tools for timing diagrams:
- TimingTool (commercial)
- Timing Diagrammer Pro (commercial)
- TimingEditor
- Waveform viewers: http://en.wikipedia.org/wiki/Waveform_viewer
Attachments
-
usage1.png
(87.0 KB) - added by daniellutz
3 years ago.
Typical usage steps
