Nominate our 2022 Qt Champions!

YAWYSIWYGEE - Yet another what-you-see-is-what-you-get equation editor (widget)

  • YAWYSIWYGEE ( is a Qt widget for inline editing of typeset equations.


    The target is a code editor style rather than a document editor style (think Notepad++ with equations versus MS Word or LyX). Such an equation code editor could be used for:

    • Computer algebra systems
    • Symbolic math
    • Scientific computing languages
    • Mathematical scratchpads
    • Online forums by compiling to WebAssembly

    The name is perhaps overly self-deprecating; although there are many inline equation editors, there is not an abundance of open source options, and a Qt widget should be useful.

    This is the first large project I've built to completion, and it took ~5 iterations! Math constructs (roots, matrices, etc.) may be nested arbitrarily deep, so documents have a tree structure. The different mathematical constructs are drawn in a QGraphicsScene.

    I floundered around figuring out how to interact with the document, until I realized that the Qt team is never wrong, so I made TypesetDocument and TypesetCursor classes similar to QTextDocument and QTextCursor. I never realized there were so many ways to interact with text editors until I had to implement them all for a tree doc!

  • Lifetime Qt Champion


    Thanks for sharing ! It looks great :-)

Log in to reply