Repository: wagtail/wagtail
File: wagtail/admin/templatetags/wagtailadmin_tags.py (Python)

Code before:
@register.simple_tag()
def workflow_status_with_date(workflow_state):
    translation_context = {
        "finished_at": naturaltime(workflow_state.current_task_state.finished_at),
        "started_at": naturaltime(workflow_state.current_task_state.started_at),
        "task_name": workflow_state.current_task_state.task.name,
        "status_display": workflow_state.get_status_display,
    }

    if workflow_state.status == "needs_changes":
        return _("Changes requested %(finished_at)s") % translation_context

    if workflow_state.status == "in_progress":
        return _("Sent to %(task_name)s %(started_at)s") % translation_context

    return _("%(status_display)s %(task_name)s %(started_at)s") % translation_context


@register.inclusion_tag(
    "wagtailadmin/shared/keyboard_shortcuts_dialog.html", takes_context=True
)
def keyboard_shortcuts_dialog(context):
    user_agent = context["request"].headers.get("User-Agent", "")
    is_mac = re.search(r"Mac|iPod|iPhone|iPad", user_agent)
    modifier = "⌘" if is_mac else "Ctrl"
    shortcuts = {
        ("common-actions", _("Common Actions")): [
            {"label": _("Copy"), "shortcut": f"{modifier} + c"},
            {"label": _("Cut"), "shortcut": f"{modifier} + x"},
            {"label": _("Paste"), "shortcut": f"{modifier} + v"},
            {
                "label": _("Paste and Match Style")
                if is_mac
                else _("Paste without formatting"),
                "shortcut": f"{modifier} + shift + v",
            },
            {"label": _("Undo"), "shortcut": f"{modifier} + z"},
            {
                "label": _("Redo"),
                "shortcut": f"{modifier} + Shift + z" if is_mac else f"{modifier} + y",
            },
        ],
        ("page-editing-actions", _("Page editing actions")): [
            {"label": _("Save changes"), "shortcut": f"{modifier} + s"},
            {"label": _("Preview"), "shortcut": f"{modifier} + p"},
        ],
        ("text-formatting", _("Text Formatting")): [
            {"label": _("Bold"), "shortcut": f"{modifier} + b"},
            {"label": _("Italic"), "shortcut": f"{modifier} + i"},
            {"label": _("Underline"), "shortcut": f"{modifier} + u"},
            {

Review comment (suggestion):
Sorry for the back and forth on structure here but a few changes I will do when merging but wanted to explain.

1. Let's use tuples for the shortcuts ->  `{"label": _("Copy"), "shortcut": f"{modifier} + c"}` would be `(_("Copy"), f"{modifier} + c")`. This is a bit easier to read when looking at a lot of these.
2. Let's stick to the same casing for `Shift` not a mix of `Shift` and `shift`.
3. Let's stick to the same casing for titles and labels, e.g. `Common actions` not `Common Actions` and `Paste and match style` not `Paste and Match Style`. Leaning towards 'Sentence case' not 'Title Case'.
4. Might be nice to add a simple docstring on this class for explanation.

```
    """
    Renders the keyboard shortcuts dialog content with the
    appropriate shortcuts for the user's platform.
    Note: Shortcut keys are intentionally not translated.
    """
```

Code after:
@register.simple_tag()
def workflow_status_with_date(workflow_state):
    translation_context = {
        "finished_at": naturaltime(workflow_state.current_task_state.finished_at),
        "started_at": naturaltime(workflow_state.current_task_state.started_at),
        "task_name": workflow_state.current_task_state.task.name,
        "status_display": workflow_state.get_status_display,
    }

    if workflow_state.status == "needs_changes":
        return _("Changes requested %(finished_at)s") % translation_context

    if workflow_state.status == "in_progress":
        return _("Sent to %(task_name)s %(started_at)s") % translation_context

    return _("%(status_display)s %(task_name)s %(started_at)s") % translation_context


@register.inclusion_tag(
    "wagtailadmin/shared/keyboard_shortcuts_dialog.html",
    takes_context=True,
)
def keyboard_shortcuts_dialog(context):
    """
    Renders the keyboard shortcuts dialog content with the
    appropriate shortcuts for the user's platform.
    Note: Shortcut keys are intentionally not translated.
    """

    user_agent = context["request"].headers.get("User-Agent", "")
    is_mac = re.search(r"Mac|iPod|iPhone|iPad", user_agent)
    modifier = "⌘" if is_mac else "Ctrl"

    return {
        "shortcuts": {
            ("actions-common", _("Common actions")): [
                (_("Copy"), f"{modifier} + c"),
                (_("Cut"), f"{modifier} + x"),
                (_("Paste"), f"{modifier} + v"),
                (
                    _("Paste and match style")
                    if is_mac
                    else _("Paste without formatting"),
                    f"{modifier} + Shift + v",
                ),
                (_("Undo"), f"{modifier} + z"),
                (
                    _("Redo"),
                    f"{modifier} + Shift + z" if is_mac else f"{modifier} + y",
                ),
            ],