The built-in Dracula used purple-tinted surfaces (#251b33) instead of the
official Dracula Classic ones. Switch it to the specification's surfaces
(#282a36, #21222c, #343746, #44475a) and add Dracula Light from the official
Alucard Classic palette (cream background).
Both themes now take the bundled JSON as their single color source through
palette_from_theme, like the WindTerm themes, so the hard-coded Dracula
palette is removed. The theme id and every color the existing tests pin
(primary, hover, on-primary, focus ring, link, accent) are unchanged, so
saved settings keep working.
The light theme keeps ANSI black dark so black text stays visible on the
light background, unlike the specification's inverted mapping.
- Introduced two new built-in themes: WindTerm Dark and WindTerm Light, based on WindTerm's dige-black and dige-white palettes, respectively.
- Updated the themes' color configurations to adapt to NyaTerm's UI and terminal settings.
- Enhanced theme management tests to ensure proper functionality and validation of the new themes.
- Updated documentation to include details about the new themes and their usage.
Validated with comprehensive tests and documentation updates to ensure consistency and accuracy in theme representation.
- Added a new `management.rs` module for theme management, including structures for `ThemeSettings`, `ThemeMutation`, and `ThemeCommit`.
- Implemented functionality to apply, save, and delete themes, allowing for granular control over UI and terminal themes.
- Enhanced the `ThemeDesignerState` to manage theme drafts and user interactions more effectively.
- Updated tests to validate theme application and mutation behaviors, ensuring correct functionality across different scenarios.
Validated on Windows with workspace checks, tests, formatting, and all-target clippy.
- Introduced a new `themes` module to manage custom themes, including a `ThemeCatalog` for storing and validating themes.
- Added support for CSS color parsing with the `csscolorparser` dependency, enabling advanced color handling in themes.
- Implemented a theme designer interface for users to create, edit, and manage custom themes, with options to import and export themes in JSON format.
- Enhanced the UI to reflect theme changes immediately, ensuring a seamless user experience when switching themes.
- Updated localization files to include new strings related to theme management features in multiple languages.
- Added tests to verify theme validation, import/export functionality, and color parsing accuracy.
The migrated prose leaned on a small set of constructions and repeated them
until they stopped carrying information. Across ~3.7k lines the source had 78
uses of "适合", 63 of "如果你", and 34 contrastive "而不是" clauses, most of
them attached to bullet lists that restated the feature name.
What changed:
- Replaced the "适合场景 / 适合:" tail hanging off nearly every section with
either a plain sentence or nothing. "适合" is now 0, "如果你" is 0, and the
18 remaining "而不是" clauses each rule out an assumption a reader would
actually make (a rejected password is not truncated; a font name is not a
bundled file; a decoder panic must not exit silently).
- Removed the closing editorial lines that asserted significance without adding
information ("这也是 NyaTerm 和普通多标签终端差异较大的地方"), and the
meta-commentary where the docs explained their own conventions.
- Dropped the relative time anchors that were already going stale: "新的 SFTP
后端", "较新的工作区", "现在可以", "Newer Agent workflows".
- Deleted the "如果你准备录制文档素材" passage, which told the reader how to
stage screenshots for the docs rather than how to use the recorder.
- Removed seven `:::tip Screenshot suggestion` blocks that shipped only in the
English pages. They were internal authoring notes and pointed at a
/img/docs/ tree and scripts/demo-*.sh files that do not exist in this repo.
- Dropped "推荐的工作流组合", four permutations of features documented
elsewhere, and gave the synchronized input group one home instead of the
three partial copies it had across two pages.
- Rewrote the cloud-sync conflict choices to lead with what is lost, since
"适合:你确认云端版本才是应该保留的版本" buried the fact that local
unsynced changes are discarded.
Also closes the remaining English gaps found while doing this: selection and
bulk operations, content-fingerprint upload, two FAQ entries, and two
quick-start steps existed only in Chinese. Chinese and English now carry the
same heading count on every page.
Verified with `pnpm --dir docs-site build` (both locales) and by re-resolving
all 22 cross-page anchors against the generated heading ids.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
The page layout still reflected the Tauri-era docs, where RDP and VNC were a
table row and terminal.md absorbed whatever did not have a home.
Sidebar:
- Drop sidebar_position from all 46 pages. sidebars.ts enumerates every entry
explicitly, so the values never affected ordering, and four of them collided
(guide had two 2s, three 5s, two 6s, two 8s) while implying an order that did
not match the real one.
- Reorder the guide by workflow: session types, per-protocol configuration,
workspace, terminal, monitoring, files, commands, AI, network, auth,
security, appearance, sync, shortcuts.
New pages:
- guide/rdp.md and guide/vnc.md. RDP and VNC are two of the six session types
and had no page of their own. Both document the real config fields, the
validation ranges, the certificate/security policies, and the error kinds,
and both note the helper-process requirement.
- guide/remote-monitoring.md, extracted from terminal.md, covering all five
panels.
Deduplication:
- terminal.md drops from 345 to 253 lines. Its AI, provider, translation, and
risk-tier sections restated ai-assistant.md and translation.md; they are now
the terminal-specific entry points plus a link. The risk tier table moves to
ai-assistant.md, which owns the setting that gates it.
- session-types.md keeps the comparison table and links out for RDP/VNC detail
instead of carrying a second copy of it.
- The migration format list appeared verbatim in four pages. ssh-connection.md
is now the single source; installation.md, quick-start.md, and faq.md link to
it.
- installation.md drops from 112 to 63 lines: its workspace tour, settings
checklist, and "suggested first run" were quick-start.md again.
Verified with `pnpm --dir docs-site build` (both locales) and by resolving
every cross-page anchor against the generated heading ids, since
onBrokenAnchors is set to ignore.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
The docs-site pages were migrated from the Tauri build and patched for GPUI
keywords, which left a set of statements that contradict the current code.
Verified each against the implementation and fixed:
- Process Manager and Docker Manager are on by default, not off
(ui_show_process_manager / ui_show_docker_manager default to true).
- There are five SSH monitoring panels, not four. Ascend NPU monitoring was
undocumented; add it and record every panel's real default and interval.
- The AI risk table misfiled its own examples. Bare chmod/chown are medium and
only -R raises them to high; critical is mkfs/wipefs/dd-to-device/fork
bomb/shutdown/rm -rf /. Also replace the invented "level to behavior" mapping
with the real model: effective risk is max(model, local rules), gated by the
three command execution policies and the smart auto-execute ceiling.
- The Command Palette does not contain application actions. QuickSwitchItem
only carries sessions, pending sessions, and saved connections, and the
"session quick switcher" is that same overlay, not a second feature.
- JetBrains Mono / Noto Sans SC Variable / Inter are default font *names*
resolved from system fonts, not bundled files. Nothing under assets/ or
gpui-component's asset crate embeds a font.
- There are two high-contrast themes (Nya HC, Nya HC White).
- Shortcuts are configurable today via Settings -> Keybindings; regroup the
page to match the six in-app categories, add Shift+Insert, and correct
Ctrl+Shift+P, which opens the bottom quick commands panel.
- setup.md omitted that the RDP/VNC helpers must be built or both protocols
fail with HelperMissing, and called the patched dependencies "vendored" when
they are pinned fork revisions. Document the fork/patch workflow.
- architecture.md was missing nyaterm-remote-desktop and both helper crates,
along with the helper-process isolation boundary they exist for.
- Document Vulkan/X11-or-Wayland as a Linux runtime requirement.
- Add the undocumented settings: minimum contrast (WCAG steps), low latency
mode, zebra stripes, multi-line paste review, OSC 52 clipboard writes,
Option-as-Meta, and the scrollback/keep-alive ranges.
Also fills the English mirror gaps this touched: command risk assessment,
command cards, and provider/model sections were absent from the English
terminal page entirely.
Verified with `pnpm --dir docs-site build` (both locales) and by checking the
generated heading anchors the new cross-links point at.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
- Deleted `check-icon-references.sh` script which verified icon references in the UI.
- Removed `icons.manifest` file that served as a vendor manifest for bundled icon assets.
- Eliminated `package-windows.ps1` script used for packaging the Windows application.
- Removed `sync-icons.sh` script responsible for syncing icon assets from upstream sources.
- Eliminated the ligatures customization option from the appearance settings in both the UI and backend.
- Updated documentation to reflect the removal of ligatures from the terminal and themes sections.
- Introduced a searchable session quick switcher for easier navigation between saved connections and local sessions.
- Added an auto-start recording feature that begins recording automatically when a session opens.
- Enhanced terminal functionality to serialize text for reconnecting sessions and allow closing of disconnected panes.
- Improved file explorer and clipboard management with new features and optimizations.
- Updated documentation to reflect these new features and enhancements.
- Added new features including `Background Image` customization and `Backspace Mode` for Telnet and Serial sessions.
- Improved UI for font selection and OTP input layout.
- Fixed CSP asset protocol handling for local assets.
- Enhanced performance by loading system fonts asynchronously.
- Updated README and guides to reflect new features and improvements.
This commit replaces all instances of "Dragonfly" with "NyaTerm" in various files, including documentation, configuration, and UI elements. The changes ensure consistency in branding and improve clarity for users transitioning from the previous version. Additionally, updates to the changelog and README reflect the new application name and its features.
Add a complete documentation site under docs-site/ using Docusaurus 3,
with Chinese (default) and English translations. Includes user guide
(SSH, SFTP, terminal, quick commands, themes, translation, security,
shortcuts), developer docs (architecture, setup, frontend, backend,
contributing), FAQ, and a custom landing page.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>