Clarion Assistant 5.5.0
Clarion Assistant 5.5
5.5 turns two read-only surfaces into working ones: CA Compare becomes an editable diff with apply-change arrows, and the Data pad gains master/detail plus drag-and-drop of fields straight into an editor. Underneath, the CodeGraph indexer stops confusing same-named procedures — a fix that finds 59% more call edges and indexes about 40% faster. The editor picks up horizontal splits, outline sorting, and a long list of parity and reliability work.
Supported: Clarion 10, 11, 11.1, and 12 (32‑bit IDE). The installer lets you pick which version(s) to install.
Highlights
🔀 CA Compare — editable diffs
The diff viewer becomes a working surface rather than a read-only one. Both panes unlock for editing, and each hunk gets a single apply-change arrow that copies it to the other side; copy direction is chosen per-compare, not per-hunk. Each side saves independently through a write-back path that can't clobber an edit made on the other, Ctrl+S saves every changed side at once, and closing the tab — not just the Close button — prompts when either side is dirty.
🗂️ CA Explorer — Files tab restructure
The omnibox is rebuilt around a split-button Open plus a single search field, joined by a type dropdown, scope pills, and a header Trace with mouse-pickable targets, sticky headers, and an actionable trace log. Compare pairs are remembered — re-run, swap, or pin a pair straight from the Files tab. The environment banner names the active .red, and view state round-trips so the tab comes back the way you left it.
🧬 Data pad — master/detail and field drag-and-drop
Variable rows and the table tree both gain master/detail: type-icon slide-down panels for variables, and table/key/column/relation panels for the tree. Column detail now comes from the live dictionary in full, including auto-number and exclude chips on keys. Fields can be dragged from the pad into an editor — Monaco surfaces and legacy ICSharpCode editors both accept a point-drop, with visible drop feedback while you drag.
🗺️ CodeGraph — overloaded and shadowed names attribute correctly (#165)
"What does this procedure call?" used to collapse every same-named procedure onto one arbitrary winner — genuine parameter-type overloads, case variants (Setup alongside SetUp), and a local ROUTINE sharing its enclosing PROCEDURE's name all folded together. In one production module an entire procedure body was credited to a routine defined 50 lines below the code in question. Resolution is now keyed on each procedure's own definition line.
Measured across a 1,659-file production solution: no call sites lost, 19,774 gained (calls rows up 59%), and 6,240 procedures that never appeared as a caller at all now do. Removing four O(symbols) reverse-scans from the inner loop also cut full-index time by roughly 40%.
⚠️ Re-index your solutions after upgrading. This changes what the indexer writes, so every existing.codegraph.dbkeeps returning the old answers until it's rebuilt. Use Reindex (full) — Update is not enough, because the incremental path compares source timestamps and your code hasn't changed.
⬍ Horizontal split panes (#157)
Right-click the editor Split button for Vertical (side by side) or Horizontal (top / bottom). Changing orientation while already split repositions the panes in place — content, scroll, and cursor preserved. The choice persists across sessions.
🔤 Editor and completion
- Sort the Document Structure outline (#153) — orders symbols A–Z independently at each level, hierarchy intact.
- Field-equate completion on
?(#159/#160) — typing?triggers completion directly, and bare-prefix globals no longer outrank the equate you were reaching for. - Contract all / Expand all (#147) — a fold button whose icon shows which action the next click performs, read from the live folding model each time.
- Snippet parameter splitting (#154) —
${SELECTED:N}takes the Nth comma-separated part of the selection. - Hover placement and size (#164) — hovers render below the line, clear of the label column, one pixel under the editor font.
🧭 Zero-reload error navigation
Clicking a row in the IDE's Errors pane used to close and reopen the embeditor. Navigation is now dispatched into the live overlay, repositioning it in place — and unsaved overlay edits survive Clarion's own embed re-open.
⌨️ Native embeditor parity
Ctrl+Q mimics the native save-and-exit gesture (#137). The as-you-type aids are individually switchable (#138). OMIT/COMPILE blocks fold (#133). Indentation follows Options → Text Editor → Behavior instead of assuming 4 (#126).
🐞 Fixed
Editor & Embeditor
- Hover inside a string or comment showed an unrelated symbol (#166) — hovering
'Total'surfaced a local variable of the same name. The CodeGraph fallback now bails on strings and!comments the way the language server already did. - Hover and completion respect procedure scope (#152) — a local declared in the current buffer outranks a same-named symbol elsewhere; typing
PROwhere a localPROexists no longer commitsPROCEDURE. - Fold triangles on ordinary statement lines (#158) — structure keywords inside string literals opened phantom folds; one production 9,000-line file contained 64 such literals.
- Phantom "END has no matching structure" warnings (#156) — bare screen
GROUPcontrols and anonymousRECORD, PRE()structures no longer desync the balance checker. - More keyword-as-label misreads (#132/#136/#150) —
MENU,SHEET,TAB,OPTION,TOOLBARas plain variable names. - Duplicate entries in member completion (#151).
- Go-to-definition no longer jumps to itself (#143).
Reliability
- Output pane deafness (#140) — the IDE's Output pane couldn't be clicked into while a Monaco editor was active.
- Cold-open navigation lands on the right line (#162) — Errors-pane clicks, bookmarks, and Find Next targeting a not-yet-open file.
- Cross-instance WebView2 crashes (#141) — each Clarion process gets an isolated WebView2 profile.
- CA Editor watches its file for external read-only and content changes (#146), saves dirty tabs before a build (#134), and Reload now actually works (#135) — it was a no-op since day one.
- CA Find theme and first-Ctrl+F focus (#148, #139).
- Errors-pane caret mirroring (#144).
⚠️ Known issues
- Check the install folder if you have two installs of the same Clarion version (#142). Setup derives each Clarion root from the registry (
HKLM\SOFTWARE\SoftVelocity\Clarion<version>\root) on every run and does not remember a folder you picked by hand. If the registry points at one Clarion 11 install and you launch a different one, setup defaults to the registry's copy and installs where you don't run it. The symptom is confusing: the IDE loads an older addin and behaves like the bugs you just upgraded to fix. Verify the path on the install page — and if you correct it, expect to correct it again next time. If you're unsure which build you're running, the CA panel reports the version of the DLL Clarion actually loaded. A proper fix is queued for the next cycle.
🙏 Thanks
This cycle's community contributions:
- geircodes — the bulk of 5.5 across 23 merged PRs: horizontal split panes (#157), outline sort (#153), field-equate completion (#159/#160), scoping fixes (#152), the GROUP/RECORD and keyword-as-label diagnostics (#132, #136, #150, #156), cold-open navigation (#162), CA Editor reliability (#134, #135, #146), WebView2 profile isolation (#141), and the CodeGraph overload-attribution fix (#165) — which shipped with a compiling repro fixture, its own regression SQL, and a measurement of the damage first.
- Mark Sarson — removing the dead overlay Find-All results-tools row (#145).
- Andrew Santarelli — snippet parameter splitting (#155).
- BoxSoft — Ctrl+Q parity (#137), the as-you-type opt-outs (#138), the case for quoting code over line numbers (#69), and the installer path report (#142).
- armisoftware — OMIT/COMPILE folding (#133), Contract all / Expand all (#147), and the Find pad's theme (#148).
📦 Install
- Download
ClarionAssistant-5.5-Setup.exebelow (code‑signed). - Close the Clarion IDE.
- Run the installer and pick your Clarion version(s) (10 / 11 / 11.1 / 12) — check the folder if you have more than one install of the same version (see Known issues).
- Start Clarion — the Clarion Assistant pane docks automatically (Tools → Clarion Assistant, or Ctrl+Alt+C).
- Reindex your solution so CodeGraph picks up the attribution fix.
Upgrading from 5.1/5.2/5.3/5.4 installs cleanly over the top.
Clarion Assistant is an AI‑powered coding assistant embedded in the Clarion IDE. See the bundled User Guide (Help) for the full walkthrough.