Commit Graph
16 Commits
Author SHA1 Message Date
Kang 3bb1d66517 fix(ui): keep Dracula success labels readable on hover 2026-11-03 16:37:20 +08:00
Jakub Werwinski ec17cb2d11 feat(ui): follow the official Dracula palette and add Dracula Light
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.
2026-11-02 21:52:55 +01:00
Kang 2b7b4ebeed feat(themes): add WindTerm Dark and WindTerm Light themes
- 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.
2026-10-21 17:24:19 +08:00
Kang e389e25473 feat(theme): introduce theme management module with mutation handling
- 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.
2026-10-17 15:09:26 +08:00
Kang 55883ade12 feat(theme): add custom theme management and CSS color parsing support
- 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.
2026-10-16 01:46:04 +08:00
KangandClaude Opus 5 e18cb3902e docs: cut the template phrasing and the authoring notes
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>
2026-08-22 11:27:47 +08:00
KangandClaude Opus 5 049a5a4329 docs: restructure the guide around the pages the features deserve
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>
2026-08-22 11:27:47 +08:00
KangandClaude Opus 5 46d1104440 docs: correct claims that no longer match the implementation
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>
2026-08-22 11:27:47 +08:00
Kang 2a0e705e0e refactor: Remove icon management scripts and related assets
- 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.
2026-08-16 20:34:06 +08:00
Kang 63ff274888 refactor: migrate to GPUI 2026-07-05 17:26:19 +08:00
Kang 5270e45c79 refactor(appearance): remove font ligatures setting from appearance options
- 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.
2026-06-30 10:22:03 +08:00
Kang 1d8fb85009 docs: update documentation
- 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.
2026-06-13 01:36:06 +08:00
Kang 3709f202b1 docs: update changelog and documentation for version 1.0.7
- 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.
2026-05-22 22:09:33 +08:00
Kang f7875d7871 refactor: Update references from Dragonfly to NyaTerm across documentation and codebase
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.
2026-05-05 20:05:53 +08:00
Kang 0e501c08ba docs: enhance documentation with updates on terminal features, file transfer capabilities, and security enhancements including translation support and improved session management 2026-04-15 09:26:52 +08:00
KangandClaude Opus 4.6 7de160ed04 docs: add Docusaurus documentation site with bilingual support
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>
2026-03-20 13:09:15 +08:00