Commit Graph

1 Commits

  • Fix handling of Shift+Enter in e.g. Ghostty (#338)
    Fix: Shift + Enter no longer prints “[27;2;13~” in the single‑line
    input. Validated as working and necessary in Ghostty on Linux.
    
    ## Key points
    - src/components/vendor/ink-text-input.tsx
    - Added early handler that recognises the two modifyOtherKeys
    escape‑sequences
        - [13;<mod>u  (mode 2 / CSI‑u)
        - [27;<mod>;13~ (mode 1 / legacy CSI‑~)
    - If Ctrl is held (hasCtrl flag) → call onSubmit() (same as plain
    Enter).
    - Otherwise → insert a real newline at the caret (same as Option+Enter).
      - Prevents the raw sequence from being inserted into the buffer.
    
    - src/components/chat/multiline-editor.tsx
    - Replaced non‑breaking spaces with normal spaces to satisfy eslint
    no‑irregular‑whitespace rule (no behaviour change).
    
    All unit tests (114) and ESLint now pass:
    npm test ✔️
    npm run lint ✔️