Skip to content
ReShiki / guide

Shortcuts and editable examples

Implementation notes and historical checks. Open the visual guide →.

Open Help at the bottom of the tool strip, or press ? (away from atoms and bonds; over one, ? opens its properties), F1 or Cmd/Ctrl+Shift+/ (Cmd+? on macOS). Cmd/Ctrl+/ remains Fit drawing. Help is a searchable list of every shortcut. Type part of an action, description or key: wedge, boc, ring, ⇧R or shift r all work, and a few synonyms per entry such as stereo or naphthalene find the matching key. Lowercase and uppercase keys rank separately: r finds the ring tool and Variable R, while R finds the saturated/aromatic toggle. With keyboard drawing on and Select or Lasso active, rows that work in that mode win equal-score ties; classic empty-canvas keys carry an F8 off note. With keyboard drawing off or another drawing tool active, the usual registry tie-break applies. An empty search always keeps registry order.

Each row shows the keys as the menus show them (symbols on macOS, words elsewhere), the action, a one-line description and where it applies: atom, bond, selection, empty canvas, keyboard drawing or anywhere. Up/Down (or Page Up/Page Down) move the selection, Enter or a click selects a row, and Escape closes Help. Selecting a row never runs the command; Help is a reference only.

The preview pane labels its drawings Example: before and Example: after. They use a small fixture, separate from your drawing, and ReShiki’s own drawing code applies the same edit as the key. Atom keys and most bond keys use a chain; ring-fusion keys use a benzene bond, so a shows benzene becoming naphthalene. The target atom or bond is highlighted in the example’s before drawing.

Press : to open the command palette. Over an atom or bond : opens it too, since it has no drawing meaning there; inside a text field, : is typed as usual. Type part of a command and press Enter (or click a row) to run it; unlike Help, the palette runs the command and closes. Up/Down move, Page Up/Page Down move a screenful, Home/End go to the first and last result, and Escape closes. Each one-line row shows its category and its shortcut, if it has one, so the palette also teaches the keys; the selected row’s description is shown below the list. The chips under the search field (All, Insert, Bond…) show how many results each category has: click one, or press Tab / Shift+Tab, to show only that category.

Commands opens near the top of the window, horizontally centered, and shrinks to fit its results up to its maximum height. Its hint names the pointed target or counts the selected objects. Keyboard navigation scrolls only far enough to keep the highlighted row fully visible; a new query or filter returns the list to the top. Help keeps its centered dialog.

The palette searches the same way as Help. Each word you type may start any word of a command’s name, keywords or shortcut, in any order (ben to finds Benzene tool). A word that matches nothing more directly may be the initials of the name’s words (bt), letters in order (bnz), or, in five or more letters, carry one typo (benzne). An exact name ranks first; stored template keywords of two or more letters, such as Phe, rank the same way. Then come names whose words all start with what you typed, then keyword and description matches. It lists:

  • Insert: rings (cyclopropane to cyclooctane, benzene, chairs, cyclopentadiene, Haworth rings), the template library, the import examples, every abbreviation preset (OMe, Boc, Ph, Ts, TBS…, also found by name such as methoxy or tosyl) and every element (by symbol or name, such as bromine).
  • Bond and Atom edits: every bond style (single, double, triple, wedges, wavy, bold, dashed, dative, hydrogen bond…), double-bond line position, bond direction and depth, charge, radicals and the contextual atom keys (extend chain, carbonyl, tert-butyl, Cp ligand…).
  • Edit, Analyze, File, View and Tool commands from the menus, toolbar and panels: undo, flips, rotation, alignment, clean up, 3D optimization, Predict NMR, formula and properties, naming, reaction roles and mapping, save, export formats, copy formats, zoom, guides, themes, journal styles, every inspector panel and every drawing tool, including a tool for each ring preset (Benzene tool, Cyclopentadiene tool, Chair A/B tool, Haworth 5/6 tool) that chooses the Ring tool with that preset.

Commands act on the selection; with nothing selected, on the atom or bond under the pointer (or the keyboard-drawing hotspot). double bond makes the selected bonds double; with no bond, it chooses the double-bond tool. benzene attaches a ring to the selected atom or fuses it to the selected bond the same way the a key does, and otherwise adds it at the center of the view and selects it. Every edit is one Undo step. Commands whose name or shortcut key matches rank above those matched only by keyword or description. A command that needs a target it does not have stays listed, greyed and below the commands that can run, with the reason under the list. With an empty search, recently run commands come first; commands for the current target rank higher. Recent commands that cannot run come after those that can.

A template command places once and returns to Select, including when placement is refused. It keeps the Templates tool’s Keep placing preference unchanged.

Some commands take a value after their word: rotate 30 (or rotate ccw 30), tilt up 20 (also down, left, right, or tilt x -15 and tilt y 15, in degrees as the Tilt X/Y fields take them), scale 150 (percent, relative and uniform, as the Scale field), zoom 150, charge -1, element Pd, font size 12, bond length 14 (for new bonds), ring 7 and chain 5. Any prefix of two or more letters works for the word, as in rot 30, zo 150, ch -1 or bond len 14; the row with the value ranks first, greyed with the reason when it cannot run yet, and the chemical-name row below is not offered. Font sizes accept 4–144 pt, rings 3–8 atoms and chains 1–512 atoms; values outside those ranges stay first, greyed with the allowed range. Tilt turns a molecule shown as a 3D model, as the Tilt X/Y fields do; scale follows the Scale field, which asks you to switch such a molecule to 2D first. A flip of a selection shown only as 3D models is also greyed; for one whole model, scale and flip offer Show as 2D drawing immediately below. Each command is one Undo step. When nothing matches well, the palette offers to insert the text as a chemical name (ibuprofen) or, if it is valid SMILES, as SMILES (c1ccccc1O).

Vim-style commands rank first when typed exactly:

Command Action
:w Save
:sav / :saveas Save as, suggesting the current drawing’s name
:w name / :sav name / :saveas name Save as, suggesting name.rsk in the location dialog
:q Close the tab, asking to save changes
:q! Close the tab without saving
:wq / :x Save, then close the tab
:qa Close the window, asking about each unsaved tab
:e Open a file chosen in the dialog
:e name / :edit name Open name.rsk next to the current saved drawing, if it exists
:tabnew / :new / :enew New drawing
:tabn / :tabp Next / previous tab
:u / :red Undo / redo
:noh Clear highlight colors from the selection

A file name that already has a native extension (.rsk, .reshiki or .moruno) keeps it. A named :e that cannot find its file shows a status message and keeps the current drawing open.

In Help, choose Open shortcut examples. This opens one editable drawing in a tab named Shortcut examples in the current window. If an unchanged examples tab is already open, it comes to the front. Save asks for a location for your own copy. It contains nine sections of labeled structures made with the same operations as the keyboard shortcuts.

Download the shortcut examples (.rsk). This is a single document, not a template collection. Open it with Open, or double-click the downloaded file. The gallery uses the normal unbounded canvas, without print pages or a page-navigation panel.

  1. Scroll vertically or sideways to pan. Cmd/Ctrl+scroll zooms at the pointer; +/− and Fit also work.
  2. Double-click a structure to select its molecule. Its caption stays separate.
  3. Cmd/Ctrl+C, switch to your drawing, then Cmd/Ctrl+V.
  4. Edit the pasted atoms and bonds normally. Save as keeps your own copy of the reference.

The sections cover common groups; elements, variables and charges; atom growth; ring attachment; bond styles and double-line placement; ring fusion; ligands and typed labels; drawing tools; and selection transforms. The structures are editable molecular objects, not embedded pictures. Group and template definitions are the current implementation and may be extended or revised in future releases.

The editable shortcut reference on the normal canvas

View all nine example sections and the drawing gestures.

The canvas fills the drawing area. Rulers reserve only their top and left gutters when enabled; the crosshair is an overlay. View → Page setup… is optional and is intended for printing and multipage PDF export.

Lowercase and uppercase are different: m inserts Me at an atom; M means Shift+m and inserts MgBr. In Select/Lasso, mouse and keyboard drawing work together by default. Actual mouse motion or a click chooses an atom, bond, or empty-position hotspot; keyboard navigation and editing keep their new target while the pointer stays still. F8 toggles this behavior for the current tab. Other drawing tools suspend it and retain their usual shortcuts.

An atom’s visible label is part of its target, including the hydrogen count, isotope and charge. Hovering the ₂ in NH₂ targets that nitrogen. g, ? and / refresh the target’s property fields just as clicking to select it does.

Text fields keep ordinary typing, and Cmd/Ctrl shortcuts never type their letter into a field. Enter applies a field and leaves it, so Cmd/Ctrl+Z then undoes the drawing; while a field is still focused, Undo and Redo do nothing. Cmd means Command on macOS; Ctrl is the corresponding modifier on Windows and Linux. Alt is Option on macOS. Uppercase letters in modified shortcuts, such as Cmd/Ctrl+C, do not imply Shift unless it is written explicitly.

In Select/Lasso, keyboard drawing works without requiring F8. A single selected atom or bond’s two selected endpoints provide a visible initial target; otherwise the nearest visible atom or bond to the view centre is used, with the marker and target text hidden. Blank drawings initially target the view centre, also hidden. The first actual pointer motion over the canvas, canvas click, or arrow or drawing key reveals the hotspot. A drawing key uses that initial target immediately. Move the pointer or click to transfer the hotspot to an atom, bond, or empty position. After a keyboard step, a stationary pointer does not steal its new target.

Key Result with keyboard drawing on
Arrow Navigate atom → bond → atom in the chosen direction
Shift+arrow Navigate atom → atom or bond → bond, skipping the other kind
1 at an atom Extend a chain; the new endpoint becomes active
0 at an atom Add a branch; its origin remains active
v Attach/fuse a three-member ring, or seed one at an empty hotspot
l Enter Cl at an atom or empty hotspot; place the double line left at a bond
Enter at an atom Edit its label, including after a ring selected several atoms
[ / ] Mark an atom / connect the active atom to the marked atom with a single bond
} Coordinate the marked donor atom to the active metal (dative bond)
F8 / Keyboard drawing control Turn keyboard drawing off for this tab; classic arrow nudging returns
F8 when off Turn it back on and return to Select
Escape Ordinary cancel/return to Select; preserve this tab’s on/off choice

The existing atom and bond tables below apply to the hotspot. On empty canvas, an atom letter creates the first atom, 1 creates a C–C bond, and 3 / 6 / 7 starts phenyl / a six-member / a five-member ring. On a new blank drawing, n → 1 → 1 makes an N–C–C chain without F8. Ring attachment keeps its attachment hotspot; use arrows to choose a bond before changing its order or fusing a ring. Navigation does not edit the drawing.

With hotspot drawing on, contextual chemistry takes priority: v draws a three-member ring, and l enters Cl at an atom or empty hotspot (or positions the double line at a bond). Choose Select or Lasso with the tool buttons; Escape cancels the current operation or returns to Select. Escape preserves the tab’s keyboard drawing preference.

Enter uses the hotspot while keyboard drawing is on: an atom opens its label draft, while a bond or empty position opens Properties. It does not contract a multi-atom selection. Turn keyboard drawing off with F8 to use classic Enter for Contract selection, or to edit the label of a fully selected existing abbreviation.

For a branch, navigate back to the desired atom and press 0. For closure, press [ at one endpoint, navigate to the other, and press ]. Rejected connections do not change the drawing. Committed edits are Undo steps, and Undo/Redo restore their hotspot and mark.

F8/Off is a per-tab opt-out that survives tool and tab changes; new tabs start on. Other drawing tools suspend the hotspot and clear a pending mark. Returning to Select/Lasso resumes it automatically unless opted out. Without a selected atom or bond, the resumed target stays hidden until pointer motion, a canvas click, or an arrow or drawing key, including after applying a text label. Text fields, label drafts, and dialogs retain their typing and caret keys. Cmd/Ctrl and Alt keep their modified commands, and Shift+3–8 still chooses ring tools. Escape preserves the on/off preference.

With keyboard drawing off, classic contextual keys use hover or selection, and arrows nudge the selection by 1 / 10 drawing units. Clear the selection and point to empty canvas to use v / l as Select/Lasso tool aliases; their chemical actions still apply at classic atom or bond targets.

ChemDraw remains the reference for contextual chemistry, rather than an exact compatibility promise. The ChemDraw 21 manual describes contextual arrow navigation with selection tools and assigns F8 to View → Reduce (zoom out). ReShiki’s per-tab F8 toggle, default hotspot lifecycle, empty-canvas seeding, branch focus, and [ / ] connection commands follow the ReShiki contract above.

See 3D optimization and keyboard drawing for reviewer steps, force-field choices, pins, rotation, and retained depth appearance.

  • Choose Benzene in Rings (or, with keyboard drawing off, press j over empty canvas). A normal click places alternating bonds. Hold Cmd on Mac or Ctrl on Windows/Linux while clicking or dragging to place the circle form. This modifier also works with regular rings and cyclopentadiene; it leaves chairs and Haworth projections unchanged.
  • With Select, click inside an existing aromatic ring (or select all its atoms), move the pointer off its atoms and bonds, then press lowercase a to toggle circle / alternating bonds. Over an atom or bond, a attaches a ring even if the previous ring was automatically selected. The modifier shortcut Cmd/Ctrl+Alt+K remains available. The display change preserves molecular identity.

Choose an element in Atoms, then drag from an existing atom to add it with a single bond. A click still replaces the existing atom. Dragging to another existing atom connects the two without relabeling either; an existing bond keeps its order. Normal bond length and angle constraints apply. Hold Option/Alt while dragging for free placement. Each committed edit is one Undo step.

Key Result
c / n / o / s / p / f / h C / N / O / S / P / F / H
b / C / B / i / L / S Br / Cl / B / I / Li / Si
l / w / q Additional aliases for Cl / N / O
d Deuterium
+ / − Increase / decrease formal charge
r / x Variable R / X label
m / e / y / P Me / Et / Boc / Ph
A / E / F / H Ac / CO₂Me / CF₃ / Cbz
N / O / Q NO₂ / OMe / Fmoc
M / Z MgBr / N₃
j / J Add Cp / arene with a multi-center attachment
0 / 1 Add branch / extend chain
2 Add carbonyl: a terminal acetyl group or an internal ketone
4 / 5 Grow through a wedge / hashed wedge
8 / 9 Add =CH₂ / dimethyl
z / K / k Alkyne / tert-butyl / sulfonyl
3 or a Attach phenyl
6 / 7 / v / u Attach a 6 / 5 / 3 / 4 member ring
Enter or = Edit atom label
g / ? Select target / open its properties

Group keys replace endpoints and isolated atoms. At other atoms with an implicit H to spare, they add a single bond and the group in one Undo step, using the same placement as 1 followed by the group key. Non-endpoints without a free H and atoms inside a group refuse the edit.

Defined groups keep their underlying atoms and bonds, so molecular properties include their composition. Variable R/X labels do not define a complete molecular formula. j and J retain the metal as the target for repeated ligand insertion; chemical charges are retained. The initial ligand uses a 60° perspective tilt with tapered front edges and the metal contact behind the ring. Its X/Y/Z coordinates are retained, so the 3D Tilt tool can rotate it further and update the thick/tapered perspective edges. Crossing clearance is recalculated from depth as you drag or tilt the ligand; the contact can pass in front of the far ring edge and ellipse. Cp carries −1 in the chemical data; arene is neutral. Cp’s minus sign is hidden by default in the drawing. Charge display can be changed in Atoms → Show charge without changing that data. Native documents retain the 3D model. Tested Cp/arene ligands also copy as editable CDX, including aromatic ellipses, perspective edges, hidden ligand charges and multi-center targets. Other unsupported appearances are converted only in the external copy, or use a reported picture fallback; see the compatibility table.

9 adds two methyl groups directly to an atom with available valence. At aniline’s NH₂, it gives N,N-dimethylaniline; at toluene’s terminal carbon, it gives cumene. A heteroatom without room for two methyl bonds reports an error without changing the drawing. A crowded carbon retains its isopropyl attachment behavior, and K retains a tert-butyl carbon center.

Saturated ring keys 6 / 7 / u / v share the target atom when its valence allows two new ring bonds. For example, 6 at aniline’s nitrogen makes N-phenylpiperidine. If sharing would exceed the target’s valence, a ring may instead connect through a single bond using the existing attachment checks. In particular, 3 / a at a neutral aniline nitrogen attach phenyl, and 2 attaches acetyl; they do not intentionally create an overvalent nitrogen. Explicitly entered hydrogen counts and stereochemistry retain their existing editing constraints.

For a terminal carbonyl made with 2, the new carbon continues the normal chain direction and oxygen occupies the other side. The hotspot moves to that new carbon so another growth key continues the chain. At an internal carbon, 2 adds only oxygen and keeps the hotspot on the existing carbon.

With keyboard drawing off and multiple atoms selected, Enter opens Contract selection so you can name the fragment. A fully selected existing abbreviation opens its label draft instead. With keyboard drawing on, Enter uses the active hotspot as described above.

Key Result
1 / 2 / 3 Single / double / triple
2 again on a double bond Cycle second-line placement
l / c / r Place the double line left / centered / right
b / B Bold / bold double
w / h or W Wedge / hashed wedge
d / D / H / y Dashed / partial double / hashed / wavy
f Bring the bond forward at a crossing
v / 4 / 5 / 6 / 7 / 8 Fuse a 3 / 4 / 5 / 6 / 7 / 8 member ring
a / z Fuse benzene / diene
9 / 0 Fuse the two chair orientations
g / ? Select target / open its properties

Acyclic triple-bond edits straighten the adjacent branches. Bond appearance and placement edits keep chemical assignments when the chosen style permits it. Each edit is one Undo step.

These classic tool-selection mappings apply when keyboard drawing is off or another drawing tool is active. In the default Select/Lasso behavior, supported atom and growth/ring keys instead seed a drawing at the empty hotspot as explained above; in particular, v / l retain their contextual chemistry. Keys without a contextual chemistry action, such as X / t / T / G, still choose their drawing tools with keyboard drawing on. To use the complete classic empty-canvas table, turn keyboard drawing off, clear the selection, and move to empty canvas.

Key Tool or action
Space or v / l Select / lasso
1 or x or b Single bond
2 / 3 / 4 Double / triple / quadruple bond
X Straight chain
Shift+3–8 Select a saturated 3–8-membered ring tool
r Ring tool, retaining its last size
R Toggle saturated/aromatic ring drawing, retaining member count
j / J Benzene / cyclopentadiene
a or e / t / T Reaction arrow / text / brackets
E / G Circled plus / p orbital
Element key Select its atom tool when there is no contextual edit
Escape Cancel the current operation / return to selection

With keyboard drawing off, or with the hotspot on empty canvas, R can also convert a selected complete 3–8 member ring. This changes its bonds; it is different from changing an aromatic ring’s circle representation. Benzene starts with alternating bonds.

Shift+3–8 selects the corresponding saturated ring size without editing the drawing or its selection. The unshifted digit shortcuts retain their atom, bond and tool actions. Ring palette hover hints show one tool-selection key.

Keys Action
? / F1 / Cmd/Ctrl+Shift+/ Searchable shortcut finder and editable examples
: Command palette: search for a command and run it
Cmd/Ctrl+N / O / S New / open, each in a new tab / save
Cmd/Ctrl+Shift+S Save as
Cmd/Ctrl+W Close tab
Ctrl+Tab / Ctrl+Shift+Tab Next / previous tab
Cmd/Ctrl+1–8 / 9 Tab 1–8 / last tab
Cmd/Ctrl+P Print
Cmd/Ctrl+I Import
Cmd/Ctrl+Shift+E Open Export
Cmd/Ctrl+C / X / V Copy / cut / paste editable selection
Cmd/Ctrl+Shift+C Copy as an image
Cmd/Ctrl+D Copy CDXML text
Cmd/Ctrl+Alt+C / O Copy chemical text (SMILES, or ChemDoodle JSON for one reaction) / MOL text
Cmd/Ctrl+Alt+P Paste
Cmd/Ctrl+Z / Shift+Z Undo / redo; Windows also supports Ctrl+Y
Cmd/Ctrl+Enter Finish editing a label or caption

In the browser editor, Cmd is Command on a Mac as in the desktop app, and the other keys are the same, except three that browsers keep for their own windows and tabs: New is Alt+N, Close tab is Alt+W and Next / previous tab are Alt+] / Alt+[; on a Mac they use Control: ⌃N, ⌃W and ⌃] / ⌃[. Menus, tooltips and Help show these keys. Control-click on a Mac opens the context menu, as a right-click does.

Cmd/Ctrl+C copies the drawing for ReShiki, ChemDraw, Office and image apps. To paste a structure into a text field such as SciFinder’s, select it and use Cmd/Ctrl+Alt+C. With one clear reaction arrow, that shortcut copies bounded ChemDoodle reaction JSON; without an arrow, it copies molecular SMILES.

Keys Action
Cmd/Ctrl+- Turn subscript on or off for the selected characters
Cmd/Ctrl++ / = Turn superscript on or off for the selected characters
Cmd/Ctrl+T Plain: remove the formatting
Enter / Escape Apply / cancel

With nothing selected, these keys format the whole label. Chemical abbreviations and group labels cannot be formatted.

Keys or gesture Action
Cmd/Ctrl+A / Shift+A Select all / invert selection
Cmd/Ctrl+G / Shift+G Group / ungroup
Cmd/Ctrl+Shift+D Start 3D optimization (MMFF94, MMFF94s, or UFF); preview before Apply
Cmd/Ctrl+Shift+Right Add a reaction arrow and a copy of the selected molecule to its right
Space with Select active Select the whole most recently edited molecule
Cmd/Ctrl+J Join two fragments, merge three or more atoms, or connect a donor to a metal
Cmd/Ctrl+Shift+K Preview cleanup
Cmd/Ctrl+L / E Toggle fixed bond length / fixed angles
Option/Alt-drag Temporarily draw or move freely, without bond constraints or smart guides
Drag an object Snap its edges, center and gaps to other objects on screen (smart guides)
Cmd/Ctrl-drag Drag a copy, leaving the original in place; the copy snaps to guides too
Shift-drag Move horizontally or vertically only; guides snap along that axis
Cmd/Ctrl+Shift-drag Drag a copy along one axis, snapping along it
Cmd/Ctrl+Alt+K Toggle a selected aromatic ring’s circle / alternating bonds; Windows also supports Alt+K
Cmd/Ctrl+[ / ] Send crossing bonds behind / bring forward
Cmd/Ctrl+/ Fit drawing
Cmd/Ctrl+; Toggle rulers
Cmd/Ctrl+Alt+X Toggle crosshair
Delete or Backspace Delete selection
Arrow / Shift+arrow (keyboard drawing off) Nudge 1 / 10 drawing units; nudges never snap
Double-click an atom Select its molecule
Shift-click Add to or toggle the selection
Side handle / corner handle Resize one axis / resize proportionally

Cmd/Ctrl+Shift+Right completes partial atom/bond selections to whole molecules, preserves selected groups and their captions, and selects the product copy. Each press creates a new forward arrow with explicit reactant/product assignments in one Undo step. Repeating the shortcut extends the scheme from the new product. Select molecular objects without existing arrows; make room on the right if another molecule, caption, arrow or foreground graphic occupies the destination. Background graphics remain in place and do not block the shortcut.

Space switches other drawing tools to Select as before. Press it again with Select active to recall the most recent molecular edit, even after deselecting or selecting another object. If one edit changed several molecules, Space selects all of those molecules; selection alone and caption edits do not change this memory. Undo and Redo restore the corresponding edit context. Newly opened drawings have no remembered edit until a molecule is changed. With no remembered molecule, the current selection stays intact. Space is idempotent while Select remains active. Text fields and open text drafts retain their typing and caret shortcuts; neither new shortcut modifies the drawing from those contexts.

Keys Action
Alt+Up / Down Rotate −15° / +15°
Alt+Left / Right Rotate −1° / +1°
Shift+Alt+Up / Down 3D tilt around X by −12° / +12°
Shift+Alt+Left / Right 3D tilt around Y by +12° / −12°
Cmd/Ctrl+Shift+V / H Flip horizontally / vertically
Cmd/Ctrl+Shift+Alt+L / R Align left / right edges
Cmd/Ctrl+Shift+Alt+T / B Align top / bottom edges
Cmd/Ctrl+Shift+Alt+C Align to the same vertical midpoint (same Y)
Cmd/Ctrl+Shift+Alt+M Align to the same horizontal midpoint (same X)
Cmd/Ctrl+Shift+Alt+H / V Distribute horizontally / vertically

Tilt changes the drawing projection, not chemical stereochemistry. Aromatic circles and inner curves follow their owning atoms. Select a whole molecule or group to transform it together.