22.5: Bind the remaining CS6 keymap shortcuts

未关闭
#79 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

维护者通常 1 天内回复

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
48/100
Issue 类型
功能
描述清晰度
描述清楚
活跃度
活跃
技术栈
rust
领域
desktop, devtools

调研方向

Read docs/research/fw-ui-evidence.md for the shortcut encoding, then compare the CS6 shortcut data with the menu rows and SHORTCUTS table in crates/app/src/menus.rs. Start by identifying rows without accelerators and checking modifier mappings; keep any Adobe source bytes out of commits. Done means each new binding matches in both places, the two named tests pass, no modifier+key is duplicated, and the bound and unbound counts plus reasons are documented.

由索引模型根据 Issue 内容生成。

描述

enhancement parity

Phase 22.5 (CS6 shell fidelity): the shell binds only part of the CS6 keymap, so muscle memory from Fireworks CS6 does not carry over.

Source of truth

  • source/Adobe Fireworks CS6/English/Keyboard Shortcuts/Fireworks.xml — the CS6 shortcut set (<command id="cmd_ZoomIn"><shortcut text="4 187"/></command>). The mods bitfield is 4=Ctrl, 1=Alt, 2=Shift; the second number is a Windows virtual-key code. The encoding is recorded in docs/research/fw-ui-evidence.md.
  • source/ is git-ignored analysis input. No Adobe file bytes may enter a commit — only derived data.

Work

  • Decode the CS6 shortcut set and join it to the menu rows in crates/app/src/menus.rs (each row carries a CS6 resource id, a label and an accelerator string).
  • Bind the rows that currently have no accelerator, updating both the row's accel string and the SHORTCUTS table so the key actually fires.
  • Correct the modifier mismatches: CS6's mods bitfield 5 is Ctrl+Alt, and rows declared Ctrl+Shift where CS6 says Ctrl+Alt must change.
  • Where a row genuinely cannot be bound, leave it unbound and record the reason.

Acceptance

  • Every newly bound row has both an accel string and a matching SHORTCUTS entry, and the existing shortcuts_cover_the_core_map / every_shortcut_has_a_help_name tests still hold.
  • No two commands are bound to the same modifier+key.
  • The count of bound vs still-unbound rows is documented, with a reason per remaining gap.

Tracking: tasks #204, #169, #186.

主要语言
Rust
星标
11
派生
1
平均合并
9 小时 48 分钟
30 天内合并 PR
13

环境准备

这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

aliasfoxkde/FireCraft 的其他 Issue

查看 aliasfoxkde/FireCraft 的全部 Issue

相似的 Issue

更多 Rust Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。