Skip to content

Advanced editor features

Understand's editor does more than let you read code. This page collects the features that repay learning once — editing several lines at a time, marking up what you're studying, and moving without the mouse.

Every keystroke below is the default binding and can be changed. The full list lives in Tools → Options → Key Bindings (Understand → Preferences → Key Bindings on macOS), which is also where you search for a command by name. See Keyboard shortcuts for the reference table.

Edit several lines at once

Column (block) selection — hold Alt (Option on macOS) while dragging to select a rectangular region rather than whole lines. Type with that selection active and the text is inserted on every selected line, which is how you add a prefix to a run of lines or line up a column of assignments in one pass.

Multiple cursors — hold Ctrl (Cmd on macOS) and click in several places to put a caret at each one. Everything you type then appears at all of them. Useful when the edits aren't in a rectangle.

Keep more than one thing highlighted

Selecting an entity highlights its occurrences, but the highlight moves with your selection. A persistent highlight stays put, so you can mark several entities in different colors and compare how they flow through a function — up to six at once.

Assign a key to it first: in Key Bindings, search for highlight and give Toggle Persistent Highlight a sequence (the two commands ship unbound so they don't take a keystroke from something you use more).

Command Does
Toggle Persistent Highlight Highlights the selected entity in the next color — or removes it if it's already highlighted
Clear Persistent Highlights Removes all of them at once

Each new highlight takes the next color in the series, so successive entities are visually distinct.

Highlighting an arbitrary range instead

Persistent highlights follow an entity. To colour a region of text that isn't an entity — say two related blocks of macro definitions — create a style under Tools → Options → Editor → Styles, give it a background colour, then right-click a selection and pick it from Apply User Style. Clear removes them again.

Line-manipulation macros

These act on the current line, so you don't have to select it first.

Command Default Does
Cut Line Ctrl+K Cuts the current line to the clipboard
Copy Line Ctrl+Shift+T Copies the current line to the clipboard
Transpose Line Ctrl+T Swaps the current line with the line above
Select Block Ctrl+Shift+J Selects the current block
Go to Matching Brace Ctrl+J Jumps to the matching token — the fastest way out of deeply nested code
Line Scroll Up / Down Ctrl+Up / Ctrl+Down Scrolls the view one line without moving the cursor, to glance at nearby context and keep your place

Move between open windows

With dozens of files open, the Window Selector beats hunting through tabs.

  • Ctrl+Tab / Ctrl+Shift+Tab step to the next and previous document of the same type, so editors cycle among editors and graphs among graphs.
  • Check Sticky to keep the selector open. You can then type to filter the list — .h narrows it to headers — arrow to the one you want, and press Enter.
  • Window → Window Selector opens it as a dock, if you'd rather keep the list of open tabs permanently in view.

Spellcheck comments and strings

Understand spellchecks your comments by default, underlining suspect words with a squiggle. Right-click an underlined word to correct it or add it to your custom dictionary. Because Understand knows the entity names in the file, it treats those as words too — so identifiers don't get flagged.

To check string literals as well, turn on the strings squiggles under Tools → Options → Editor → Advanced, in the Spellcheck section (Preferences on macOS). Both comments and strings have their own toggle, so you can run either or both.