# Changelog - WiseTrax (WiseTracker VST Edition)

All notable user-facing changes to the WiseTrax VST3 plugin.

## [0.1.5] - 2026-06-07 - Closed Beta

### Added
- **Undo and redo buttons in the toolbar.** Two labeled buttons next to the logo show what your next undo or redo will do -- "Undo Edit note", "Redo Paste" -- so you can see what's queued without guessing. They grey out when there's nothing to undo/redo, and work from any view (the tracker grid or the sampler), since they share the same history as Ctrl+Z. Hover either one for the action name and the keyboard shortcut.
- **Undo/redo now tells you what it did.** When you press Ctrl+Z or Ctrl+Y, a small label briefly appears showing the action -- "Undid: Paste", "Redid: Edit note", "Undid: Delete instrument", and so on -- so you always know what just changed. It shows wherever you're working (the tracker grid or the sampler). Pressing undo/redo with nothing left says "Nothing to undo" / "Nothing to redo" instead of doing nothing silently. Cell edits are named by what you actually changed -- "Edit note", "Edit instrument", "Edit volume", "Edit effect", or "Clear" -- rather than a blanket "Edit note".
- **Instrument list panel.** A foldable panel on the right lists every instrument in the song in a scrollable list, so you can reach any of them (and add a new one with "+ Add instrument") no matter how many there are. Drag its left edge to resize it, or collapse it to a thin tab to give the grid more room; the size and folded state are remembered. Collapsing and reopening it slides smoothly, and the collapsed tab shows the section colour, an open arrow, and a vertical "INSTRUMENTS" label. Click a row to pick that instrument and hear it at the same time -- a short preview plays it at the current octave (imported modules preview at the correct pitch too). Empty slots stay silent. Each row with a sample shows a small waveform of it on the right, so you can spot the sound you want at a glance.

- **Sample inspector.** Selecting an instrument shows a panel under the list with that sample's details: root note, tempo (when known), length, sample rate, channels, loop type, and how many patterns it's actually used in. It also draws a waveform of the sample, with the loop region marked in green. A small line tells you if it's a native sample or an imported module sample, and hovering any field gives a plain-language explanation (with the precise detail for power users). Empty slots show a tidy placeholder. You can preview the sample right there with a play/stop button, plus a loop toggle: off plays the sample once through, on repeats it until you press stop. While it plays, a marker rides the waveform and the play button follows the real sound -- it stops exactly when the sample does. An "Auto-preview" toggle controls whether clicking an instrument in the list plays it: turn it off to browse silently and use the play button to hear only what you choose. The inspector can be folded away by clicking its title row -- it slides shut to give the instrument list more room and slides back open when you click it again, so the sample info is never lost when the panel gets short. The Auto-preview setting and the folded state are both remembered per instance.

- **Manage instruments by right-click.** Right-click an instrument -- its tab up top, or a row in the list -- to Rename, Duplicate, or Delete it. The list's menu matches the rest of the app's menus.

- **Load several samples at once.** Drag a batch of audio files onto the instrument panel -- each file becomes its own instrument slot, instead of only the first one loading. You can also right-click a slot, choose Load sample, and select more than one file in the picker.

- **"+" in the instrument panel header.** Add a new instrument straight from the top of the list, without scrolling a long list down to the "+ Add instrument" row. The list jumps to the new slot so you can name it or drop a sample on it right away.

- **Load samples from the instrument list, not just by dragging.** Right-click an instrument in the list to load a sample into it -- or replace the one it already has -- and you can pick several files at once. Right-click the "+" (in the panel header or the "+ Add instrument" row), or any empty space in the list, to choose between adding an empty slot and loading sample files straight into new slots.

- **Load a whole folder of samples at once.** Drag a folder onto the instrument panel, or use "Load folder..." in the "+" menu, and every audio file inside loads into its own slot, in name order (kick1, kick2, ... kick10). A short summary tells you how many loaded, and warns if the kit filled up before they all fit.

- **Drag an instrument onto the grid to place a note.** Drag any instrument from the list onto the pattern editor and drop it on a cell -- it writes a note there set to that instrument, at the same pitch you hear when you preview it (the sample's natural playback pitch). The target cell highlights and shows the note before you let go, and it's a single undo.

- **Undo for instrument changes.** Adding, duplicating, and deleting an instrument can now be undone with Ctrl+Z (and redone with Ctrl+Y or Ctrl+Shift+Z), the same key that undoes grid edits. Undoing a delete restores the instrument together with the notes that referenced it.

### Changed
- **One set of undo/redo buttons for the whole plugin.** The sampler's own undo/redo arrows were removed -- the toolbar undo/redo buttons (and Ctrl+Z / Ctrl+Y) already cover the sampler, so there's a single place to undo from no matter which view you're in.
- **The toolbar stays usable when the window is small or zoomed in.** When space gets tight, the undo/redo buttons and the MIDI chip drop their text and shrink to icons (their tooltips still spell everything out) instead of overlapping each other. They return to full labels when there's room again.
- **The MIDI drag-out chip moved next to the other controls.** The green "MIDI" chip (drag it onto your DAW to drop the current pattern as a MIDI clip) now sits in the right-hand control cluster, next to the on-screen-keyboard button, instead of out on its own next to the logo. The toolbar reads more as one tidy group, and frees space on the left.
- **Deleting an instrument that's in use now asks first.** If an instrument is used by notes in your patterns, deleting it (from the list or a tab) shows a confirm that tells you how many notes it affects; an unused instrument deletes without a prompt.
- **The window resizes cleanly now.** It has a sensible minimum size so the layout never collapses into overlapping or cut-off controls, and when the pattern/sequence row gets narrow, the Oct / Step / LPB / Page / note-off controls tuck into a "..." button (click it to reach them) instead of overlapping the pattern slots.
- **Calmer, clearer colour scheme.** Panel frames and most controls are now neutral, and each theme's accent colour is reserved for what's active or selected (the playing row, the chosen instrument, primary buttons) instead of tinting everything. The SAMPLES / TRACKER / INSTRUMENTS sections carry a small colour on their badge to tell them apart -- one coherent colour family per theme (a blue family on the default themes, teal on Petrol, amber on Phosphor) rather than three unrelated colours, so the panels read as a set. The settings gear, fold arrows, and the title now follow this on all four themes, and the on-screen-keyboard button is drawn as real piano keys (and lights up while the keyboard is open).

- **Pick a pattern from a searchable grid.** "Change to pattern" now opens a compact picker -- a grid of pattern numbers you can type-to-filter (type a number to jump, arrows to move, Enter to pick) -- instead of a long scrolling menu. Every right-click menu now shares one consistent themed look, too.

### Fixed
- **Deleting or duplicating an instrument now updates the grid display immediately.** The pattern grid already renumbered its instrument references and played the right sounds, but it wasn't being redrawn after a delete/duplicate, so it could keep showing the old numbers. It now refreshes right away, so what you see matches what plays.
- **The layout stays clean at high zoom and small window sizes.** When there isn't room for both the instrument panel and a usable tracker, the instrument panel now folds to its tab on its own (and reopens when you make the window bigger), so the controls never overlap -- and the window never resizes itself.
- **Setting a loop in the sampler now links to the sample inspector and actually loops.** When you set a loop end (or "Fit Loop to Whole Sample", or drag the loop-end handle), the loop turns on automatically, and the inspector panel updates to show the loop and its region right away. Editing or cropping a sample also refreshes the inspector. (Setting only the loop *start* still leaves it as a start marker, and imported module loops are untouched.)
- **The on-screen keyboard button glows gold when open**, instead of a blue frame.
- **Duplicating or deleting an instrument no longer breaks the grid.** When you add or remove an instrument, the pattern cells that reference instruments are renumbered to follow the change, so notes keep playing the sample they always did (previously, duplicating an instrument shifted the others and the grid started playing the wrong sounds).

## [0.1.4] - 2026-06-04 - Closed Beta

### Added
- **Pattern view modes (Settings -> Pattern view).** Choose how the grid behaves during playback: **Cinema** (the playhead stays put and the grid scrolls, as before), **Classic** (the grid stays still and a highlight bar moves down the rows), or **Locked** (Classic, but the view doesn't follow playback so you can edit one pattern while the song plays elsewhere). On big / 4K displays, Classic and Locked redraw far less of the screen. Saved per plugin instance.
- **Import FastTracker II modules (.xm).** Drag an `.xm` file onto the plugin and it loads as a full editable song - patterns, instruments, and the sequence, at the correct pitch automatically (no manual octave setting). On import you get a summary showing the module's original **tempo** (so you can match your DAW's BPM - the plugin follows the host tempo), the pattern/instrument counts, and a note of anything that was approximated.
- **More actions can be undone.** Ctrl+Z (and redo) now covers renaming a track, muting/soloing tracks (including "mute all" and exclusive-solo - one undo restores the whole previous mute/solo state), changing a track's colour, volume, or pan (a whole fader drag is a single undo), and adding, removing, renaming, auto-marking, and clearing bookmarks (including "clear all bookmarks in song" in a single undo), alongside the pattern-grid edits that were already undoable. Editing the sequence strip is now undoable too - reordering pattern slots (drag), inserting/removing/pasting a slot, stepping a slot to a different pattern, setting the loop-range brackets, renaming a pattern, and adding, duplicating, making-unique, deleting, or clearing a whole pattern. Undo now covers essentially every edit in the tracker. (Clearing or deleting a pattern used to warn "this cannot be undone" - it now says so correctly: you can undo it.)
- **The footer tells you when an effect's value is capped.** For effects with a limited range (Set Volume, Set Global Volume), the status strip at the bottom of the grid now shows the limit, and if you enter a value above it, shows what actually plays - e.g. `C9F -> 7F` - so a value that gets clamped is never a silent surprise.

### Changed
- **The tracker now keeps the keyboard from the host.** Clicking anywhere in WiseTrax reclaims keyboard focus from the DAW, so SPACE (Edit mode), Ctrl+Z (undo), and all the tracker keys reliably reach WiseTrax instead of the host - even right after you've pressed the host's Play/transport. Previously, after touching the host the next Ctrl+Z could be swallowed by the DAW (in Reason that removed the device).
- **Volume now reads in decibels and feels right.** The volume pop-ups (track, note, and the Cxx volume effect) show the level in dB - e.g. `-5.8 dB`, with `-inf dB` at silence - and keep the 0-127 value and hex underneath. The fader also uses a perceptual (logarithmic) taper, so moving it changes loudness evenly across the whole throw instead of barely doing anything near the top, and shows a dB scale down the side (0, -6, -12, -24 dB) with the 0 dB unity mark highlighted. The stored value and the sound are unchanged - this is display and feel only, so existing songs are identical. The "Half" quick-button now sets about half the perceived loudness (~-10 dB) instead of half the raw number, so it actually sounds half; "Mute" and "Full" are unchanged.
- **Auto note-off now starts OFF.** The "auto note-off on key release" toggle (in the sequence strip, between LPB and the + button) now defaults to off. Recording no longer drops a Note-Off into the grid when you let go of a key - you write note-offs yourself (CapsLock writes one in the focused cell), the classic tracker way. Turn the toggle on any time you want the automatic note-offs back.
- **A couple of keystrokes now explain themselves instead of doing nothing.** Pressing paste with an empty clipboard shows "Nothing to paste", and interpolate without a 3+ row selection shows "Select 3+ rows to interpolate", in the footer - rather than silently failing.
- **Retrigger volume modes now read in plain language.** The first digit of a retrigger (`Rxy`) is a volume mode - an opaque `0`-`F` that nobody could guess. Now the footer, the effect picker, and Help all spell it out: `R71` reads "vol: halve", `RF1` reads "vol: double", `R03` reads "vol: no change", and so on. The Help entry was also corrected (it wrongly said retrigger counts "ticks" and listed the wrong volume table).
- **Retrigger keeps rolling on short samples - and a second one changes the rate.** A retrigger (`Rxy` / `E9x`) used to go quiet after the first hit when the sample was shorter than the gap between hits - so a short hi-hat couldn't roll at `R03`/`R04`. Now it re-strikes the note each time, so it rolls cleanly no matter how short the sound is, and keeps going until you stop it (a new note, a note-off, `R00`, or pressing Stop). Putting a different retrigger further down the same track now re-aims the speed with no gap at the switch - e.g. `R03` then `R02` then `R01` gives a clean accelerating fill. An instrument's envelope shape is preserved on every retriggered hit.
- **Two-setting effects now show two labelled faders.** Effects that pack two values into one - Volume Slide (Up / Down), Vibrato (Speed / Depth), Tremor (On / Off), Multi-Retrigger, Pan Slide and more - now show two named faders instead of a single slider, so you set each part directly with no hex in your head. Works the same whether you pick the effect from the menu or from "Choose Effect...".
- **"Choose Effect..." moved to the top of the cell right-click menu** so the by-name effect picker is the first thing you reach.
- **Clearer volume names.** The menus now spell out which volume you're changing: "Track Volume" (the whole track), "Note Volume" (how loud one note is), and "Set Volume (Cxx effect)" (the effect-column command). Each dialog's title matches its menu item.
- **Typed notes play at full volume by default.** Notes you type now leave the volume column blank and play at the instrument's full volume - the standard tracker behaviour - instead of being stamped at a fixed lower level. Type a value into the Vol column only when you want one note quieter.
- **Hover tooltips look like the rest of the app and read correctly.** Tooltips now use the themed rounded-card style instead of the plain box, the volume column tooltip says "7F = full (127)" (it wrongly said FF), and the two extra effect columns (F2 / P2) now have tooltips too.

### Fixed
- **Imported XM samples with a zero-length loop no longer buzz.** Some `.xm` files mark a sample as looping but give the loop a length of zero. These now play once (one-shot), the way FastTracker 2 plays them, instead of being forced into a 1-sample loop that buzzed.
- **Imported module notes play from the start of the sample again.** A note from an imported module (`.xm`) now begins at the very start of the sample - its attack - the way the original tracker plays it, instead of jumping straight into the sample's loop. Each note's onset now sounds correct (this also fixed a subtle "the next note sounds different" character on sustained/looped instruments). Loops you set yourself on a sample in the sampler are unchanged - they still start at the loop point.
- **Clicking a sample in the sampler plays it at the right pitch.** After the XM-import octave fix, clicking a sample to audition it played an octave too low (slow-motion) for imported modules. It now previews at the correct playing pitch (matching the keyboard's note), so you can actually listen to imported samples. (Dropped-WAV samples were already correct.)
- **The pattern grid scrolls smoothly during playback.** It used to jump a whole row at a time, which read as juddery / hard to follow - especially on large or 4K displays. The rows now glide between lines, so the grid stays readable while it moves. This applies to Cinema (always) and to Classic when it actually scrolls (Classic stays perfectly still - and clearest - when zoomed out so the whole pattern fits). Locked stays static for editing while the song plays.
- **Scrolling the pattern slots no longer jumps playback.** When there are enough patterns to need the < > overflow arrows, clicking an arrow to scroll the slot strip (especially clicking fast) used to leap the song to a slot deep in the track. The arrows now only scroll the view; jumping to a slot still happens only when you double-click the slot itself.
- **Ctrl+Z no longer risks removing the plugin.** On a fresh load, if you only touched the sequence strip (added or reordered patterns) and never clicked the grid, keyboard focus stayed with the host - so Ctrl+Z went to the host, which read it as "undo = remove the device" and deleted WiseTrax. The grid now takes keyboard focus when the plugin opens, and the sequence strip hands focus back after every edit, so Ctrl+Z always lands inside WiseTrax.
- **Ctrl+Z behaves while a value pop-up is open.** With a volume/pan/effect pop-up open, pressing Ctrl+Z now reverts that pop-up's in-progress change back to where it opened (for the sliders) instead of doing nothing - and it can no longer slip past the pop-up to undo an unrelated earlier edit. Esc still cancels. Covers every value picker and dialog, not just one.
- **Mouse-wheel scrolling keeps the cursor on screen.** Scrolling the pattern grid with the wheel moves the cursor, but the view used to stay frozen so the cursor scrolled out of sight (only the arrow keys brought the view along). Now the view follows the cursor on a wheel scroll too, exactly like the arrow keys.
- **Ctrl+C / Ctrl+X now work on a single cell.** Copy and Cut used to do nothing unless you'd made a selection first - on a single cell under the cursor they silently failed (so a later paste replayed whatever you last copied). Now `Ctrl+C` / `Ctrl+X` copy or cut the cell under the cursor when there's no selection, like every tracker.
- **The "Welcome" card now sits dead-centre.** It was drifting slightly to the right and down at larger sizes; it's now properly centred at any zoom.
- **Retriggers no longer click.** A fast or sustained retrigger (a held bass, a roll) used to click each time it restarted the sound, like a bad loop point. Restarts now crossfade smoothly, so rolls and stutters are clean.
- **Retrigger now repeats at exactly the rate you set.** A note with a retrigger effect (`Rxy` multi-retrigger or `E9x`) used to fire one row too slowly and with an uneven first gap - so `R04` on a kick didn't line up as a clean four-on-the-floor. Now the spacing is exact and even from the first hit: `R04` = a hit every 4 rows, `R02` = every 2, `R01` = every row.
- **No more crash when editing a sample's loop or cropping it while it plays.** Setting a loop region (or cropping) on a sample that was sounding - especially at high tempo with a note retriggering fast - could crash the plugin (and the host) in the audio engine. The loop now plays through safely even mid-edit; a loop that briefly has no length just plays to the end instead of crashing.

## [0.1.3] - 2026-06-02 - Closed Beta

Pick effects by name, every value pop-up and confirm/rename/number dialog now
opens inside the plugin window (nothing hides behind the host), and a cell's
volume is capped at full so it can't overdrive.

### Added
- **Rename Track uses a new in-window dialog.** Renaming a track now opens a themed dialog *inside* the plugin (a dimmed background + a centered card) instead of a separate system window that could hide behind the plugin. (More text/confirm dialogs move to this next.)
- **Keyboard and scrub control for the value pop-ups.** The Set Volume / Set Pan pop-ups now take the keyboard: arrow keys nudge the value (Shift or PageUp/PageDown for bigger steps, Home/End jump to min/max), Enter applies, Esc cancels back to where it started. You can also drag the number itself to scrub it (hold Shift for fine), or double-click it to reset to the default. The track header briefly flashes when its pop-up opens, so you can see which track you're editing.
- **More cell pop-ups use the same picker.** Right-click a cell -> Effects -> (any effect), and right-click -> Quick FX -> Set Volume / Set Pan / Set Tempo / Fade In / Fade Out, now open the same fader-style picker as the track Volume/Pan controls instead of the old small sliders (tempo and fade length show as a plain number). Set a value and press Enter to apply (a single undo step); Esc cancels.
- **Right-click menus follow your theme.** The right-click menus now use your theme's colours with rounded corners, a soft shadow, and an accent highlight on the hovered item, instead of the plain system-grey menu.
- **Set Volume on a cell uses the picker too - and no longer hides behind the plugin.** Right-click a cell -> Set Volume... (the volume column) now opens the same in-window picker, with a **Clear** button to remove the volume; it applies across a selection. Previously it was a plain box that could slip behind the plugin window.
- **Choose an effect by name.** Right-click a cell -> Effects -> "Choose Effect..." opens an in-window dialog where you pick the effect from a list by its plain-language name and set its value on a slider (shown in decimal and hex), with the effect's meaning displayed below. Applies across a selection and can be undone. Replaces the old hex-only box and reaches effects that box couldn't enter.
- **Value pop-ups have an OK button + bigger text.** Set Volume / Set Pan / effect-value pop-ups now have a clear **OK** button (a visible mouse accept, alongside Enter / click-away), all use the same fader, and their text is larger so it reads on big / high-DPI screens.

### Changed
- **Confirm dialogs open inside the plugin, with a clearer warning.** The "Delete Track", "Clear pattern", and "Delete pattern" confirmations now open as in-window dialogs (they can't hide behind the plugin window anymore). The title and the confirm button are shown in red, and the safe option - Cancel - is selected by default, so pressing Enter cancels instead of deleting; you click the red button (or Tab to it) to confirm. Long messages wrap onto more than one line.
- **Rename dialogs open inside the plugin too.** Renaming a pattern (song strip) and naming a section/bookmark (grid gutter) now open the same in-window text dialog as Rename Track, instead of a separate system window that could hide behind the plugin.
- **Number-entry dialogs open inside the plugin.** Go To Line, Auto-mark Every N Lines, and the custom Pattern length dialog now use the same in-window dialog instead of a separate system window.

### Fixed
- **The volume column now tops out at full instead of going past it.** A cell's volume now stops at 127 (7F = full) everywhere you set it - the Set Volume pop-up, typing in the grid, dragging, the mouse wheel, and interpolate. Before, it allowed up to 254, and anything above 127 played louder than full (a doubling at 254) which could distort. Existing patterns that were set above 127 now also play at full rather than overdriving.
- **Effect value sliders stop at each effect's real maximum.** The Set Volume effect slider now stops at 127 (7F) and Set Global Volume at 64 (40), instead of running to 255 where the extra range did nothing. The picker's range follows the chosen effect.
- **Menu shortcuts no longer get cut off.** Right-click menu keyboard shortcuts (e.g. Ctrl+Shift+V, Shift+Delete, Alt+X) now show in full instead of truncating to "Ctrl...". Other custom labels (pattern names in the ghost view, card headers, sampler buttons) now shrink to fit rather than clip silently.
- **Default track names are consistent.** The four starting tracks are now named "Track 1"-"Track 4" to match the names new tracks get (they were "1"-"4").
- **Value pop-up text no longer gets cut off.** Titles and the one-line description in the Set Volume / Set Pan / effect pop-ups now shrink to fit (and the description can wrap to two lines), so longer effect explanations show in full. Also fixed a doubled word in effect titles ("Set Set Volume" -> "Set Volume").

## [0.1.2] - 2026-05-31 - Closed Beta

Reworked Set Volume and Set Pan pop-ups, a fix for the pop-ups that could hide
behind the plugin, and What's New now opens itself once when you update.

### Added
- **Set Volume picker.** Right-click a track header -> Set Volume now opens a slider with the volume shown as both a big decimal *and* hex, a tick at the default, and one-click **Mute / Half / Full** buttons. It follows your theme, scales with the plugin zoom, and stays inside the window.
- **Set Pan picker.** Set Pan uses the same picker - a left<->right slider with a centre point, an "L 32 / C / R 14" readout, and one-click **L / C / R** buttons. Both pop-ups share the same look (rounded panel, soft shadow) and follow your theme.
- **"What's New" opens automatically after you update.** When you load a newer build of WiseTrax, the What's New page pops open once on its own so you can see what changed - then stays out of your way until the next update. Brand-new users still get the friendly welcome card instead.

### Changed
- **Number values show as decimal *and* hex together** in the Set Volume / Set Pan pop-ups - decimal first, hex alongside. (Foundation for a future option to show everything as decimal.)

### Fixed
- **Pop-up sliders no longer hide behind the plugin.** The little value pop-ups (set Volume / Pan, and the Quick FX sliders like Pitch Slide and the fades) used to open as their own floating window - which could slip *behind* the WiseTrax window after you resized the plugin, so it looked like nothing happened until you clicked the grid again. They now open *inside* the plugin window, so they always stay in front where you can see them.
- **Right-click menus and value pop-ups now open exactly where you click.** On scaled / high-DPI displays the track-header menu (and the value pop-ups) could open a couple of tracks to the *left* of the click. They now anchor precisely at the spot you clicked.

## [0.1.1] - 2026-05-31 - Closed Beta

Tracker-grid editing update: work on one sub-column at a time (copy / cut /
paste / clear), type effect letters directly, a cleaner right-click menu, and
a couple of fixes from beta feedback.

### Added
- **Version badge on the welcome card.** A small `v0.1.1` chip sits in the top-right of the welcome card - click it to jump straight to "What's New" in Help. Handy for knowing which build you're on when reporting bugs.
- **Copy only the FX (or Note, or Vol) column.** New `Ctrl+Shift+C` copies just the sub-column band under the cursor - Note (with instrument), Vol, or FX. A plain `Ctrl+V` then overlays only those fields onto the destination cell and leaves the others alone, so you can move FX patterns around without touching the notes. Also available from the right-click menu under Copy -> Whole Cell / Note Only / Vol Only / FX Only. Plain `Ctrl+C` still copies whole cells. Reported by beta tester.
- **Scoped Cut and smart-paste partner.** `Alt+X` cuts just the sub-column band under the cursor (mirror of `Ctrl+Shift+C`; uses Alt because every major DAW host intercepts `Ctrl+Shift+X` for its own "Cut Time"). `Ctrl+Shift+V` does the smart-paste: same scope-aware overlay as plain `Ctrl+V`, but if your cursor isn't already in the matching sub-column band, it jumps the cursor there first and flashes the destination so you can see where it landed. The right-click Cut and Paste menus also gain the 4-scope submenu - and `Paste -> FX Only` (etc.) lets you spray just one sub-column out of a whole-cell clipboard without re-copying.
- **Note Off in the right-click menu.** The `1` key has always written a Note Off (the green `OFF` release marker) in the note column - now it's also in the right-click menu, near the top, with its `1` shortcut shown, so it's easy to find. Writing it keeps any FX already on the row.
- **Type effect letters straight into the FX column.** In the Fx / F2 column you can now type the extended effect letters directly - `G H K L O P R T X` - instead of only hex digits or the right-click menu. (e.g. cursor on the Fx letter, press `R` -> writes a Multi-Retrigger.) Hex `0-9 / A-F` still works as before.
- **Scoped Clear.** `Alt+Delete` (or `Alt+Backspace`) wipes only the sub-column band your cursor is in - Note (with instrument), Vol, or FX - across the selection if you have one, or just the cursor cell. Plain `Delete` still wipes the whole cell so muscle memory is preserved. The right-click "Clear" menu now opens the same 4-scope submenu as Cut/Copy (Whole Cell / Note Only / Vol Only / FX Only), and scope items grey out when there's nothing in that band to clear - so the menu shows at a glance what would actually do something. Footer pill says "Cleared: fx" (or note/vol) in the matching column colour. Uses `Alt+Delete` instead of `Ctrl+Delete` because Reason, Reaper and Cubase all bind that chord at the host level - it would never reach the plugin.

### Changed
- **Cleaner right-click menu: Presets / Quick FX / Effects.** The old "Insert Preset" menu mixed musical templates with effect shortcuts that duplicated "Set Effect". It's now three clear menus: **Presets** (Beats, Chords - ready-made musical content), **Quick FX** (guided slider helpers: Pitch Slide, Fade In/Out, Set Volume/Pan/Tempo, Loop Pattern, End Pattern Early), and **Effects** (renamed from "Set Effect" - the full effect picker by code, including the percent `O` offset). No more duplicated entries across menus.
- **Right-click menu now shows keyboard shortcuts** next to every action that has one (Clear / Insert Row / Delete Row / Select All / Go To Line / Transpose / Interpolate Volume in addition to the existing Cut / Copy / Paste). Pure visual addition - no behaviour changed.
- **Copy/cut/paste now show a status message** in the bottom bar (e.g. "Copied: FX", "Pasted: note") - a small colour-coded pill that fades out after a couple of seconds, right under the grid where your eye already is. The scope word is tinted in its column colour (note/volume/FX) so you can tell what you grabbed at a glance.
- **Richer, friendlier welcome card.** The first-run "Quick start" card is rebuilt: colour-coded sections, a CLIPBOARD and SELECT section, a highlighted "right-click any cell" pro tip, an "Open the full guide" link to Help, and it now scales up so it's readable on big screens. The dismiss controls changed: a small **Close** button hides it for now (it returns next time), and a separate **"Don't show again"** checkbox hides it for good (re-enable any time in Settings -> General).

### Fixed
- **The percent Sample Offset (`O`) is now in the right-click effect menu.** It already worked if you typed `O`, but it was missing from the Set Effect list, so it was easy to think it wasn't there. The frame offset is now labelled `9 Sample Offset (frame)` and the percent one `O Sample Offset (percent)` so the pair reads clearly.
- **Right-click "Clear" now clears the clicked cell** when there's no selection. Previously it was a silent no-op in that case (the Delete key always worked though). Menu and key now agree.
- **Note entry no longer wipes the effect columns.** Typing a note (PC keyboard, MIDI piano, or drum pad) on a row that already has an effect (`R03`, `E 00`, etc.) now preserves the effect - same as every classic tracker. Previously, typing a pitch silently cleared any effect already on that row. Reported by beta tester. Commit `6fc45a5`.

## [0.1.0] - 2026-05-29 - Closed Beta

First closed beta. **Early build:** plenty is still missing or half-built and
there will be bugs - please report them (as specifically as possible) in the
Discord.

### Highlights
- **Sampler + tracker in one** - drop a `.wav/.aif/.flac/.ogg` and play it from a
  MIDI clip, a MIDI keyboard, or the QWERTY keys.
- **Tracker grid** with multi-pattern **Song mode** that follows the host
  transport and tempo (SONG / PATTERN toggle).
- **Auto BPM + slice detection** on dropped loops, with a dedicated sampler view
  and waveform tools (normalize, reverse, fades, crop, loop, slice).
- **Pattern -> MIDI drag-out** - drag the green "MIDI" chip in the top bar onto
  your DAW to drop the current pattern as a `.mid` clip. Notes, velocities and
  per-instrument channels carry over; tracker effect columns don't (by design).
  Optional drag-out velocity override in Settings -> MIDI.
- **On-screen keyboard**, multiple instruments, **four dark themes**, free
  whole-plugin zoom (50-200%) and host-resizable UI.
- **In-app Help & Settings**, per-instance and saved with the host project.
- **Community:** Discord link in the Help panel.

### Known limitations (beta)
- Many planned features are not in yet; expect rough edges and bugs.
- Tracker effect columns and sub-line timing are not exported in MIDI drag-out.
- Pattern-effect tempo changes (Fxx) aren't reflected in SONG mode yet.
