Examples

Revision History

A time machine for the document. Snapshots are stored in localStorage (or your server via revisionHistoryUrl). Open the browser, preview any past version in a sandboxed iframe, compare two revisions with an LCS line-diff, restore with one click, name snapshots (“Draft sent to legal”), or rename later.

Revision history demo

Edit freely, then click the History toolbar button. Press Ctrl+Shift+H to open the browser.

Example code

<link rel="stylesheet" href="/richtexteditor/rte_theme_default.css" />
        <script type="text/javascript" src="/richtexteditor/rte.js"></script>
        <script type="text/javascript" src='/richtexteditor/plugins/all_plugins.js'></script>

        <div id="rh_editor">
            <h3>Revision history demo</h3>
            <p>Edit freely, then click the <strong>History</strong> toolbar button. Press <kbd>Ctrl</kbd>+<kbd>Shift</kbd>+<kbd>H</kbd> to open the browser.</p>
        </div>

        <button type="button" onclick="takeNamed()" style="margin-top:.5rem; padding:6px 12px; border-radius:999px; background:#0f172a; color:#fff; border:0; cursor:pointer;">
            Take named snapshot
        </button>

        <script>
            var rhcfg = {
                revisionHistoryEnabled: true,
                revisionHistoryMaxEntries: 50,
                revisionHistoryAutoSnapshotMs: 10000,   // auto-snapshot after 10s idle
                toolbar: "default"
            };
            var rhEditor = new RichTextEditor("#rh_editor", rhcfg);

            function takeNamed() {
                if (rhEditor.revisionHistory) {
                    rhEditor.revisionHistory.promptAndSnapshot("Draft sent to legal");
                }
            }
        </script>