Skip to content

Toggle line comments in the code editor with Ctrl+/ #273

Closed

Description

@henrylee1003

A candidate writing code in the interview editor has no shortcut to comment lines out. Ctrl+/ (Cmd+/ on macOS) does nothing in the editor today, because the editor is a plain <textarea> and web/interview.js handles only Tab, Escape and Ctrl+Enter on it.

This comes up while debugging during the Test step of REACTO: the candidate wants to disable a few lines, run the tests, and bring the lines back. The present workaround is to type # or // at the start of each line by hand and delete them again afterwards, one line at a time, while the interview clock runs.

Proposed behavior, matching what VS Code and the LeetCode editor do:

  1. Ctrl+/ or Cmd+/ with a caret comments the current line, and the same chord again uncomments it.

  2. With a selection it toggles every line the selection touches. If every non-blank line is already commented, the comment markers are removed; otherwise one is added to each non-blank line.

  3. The marker is # for Python and // for JavaScript, C, C++ and Java, followed by one space, and is placed at the smallest indentation among the affected lines so the block stays aligned.

  4. Blank lines are left alone, and the selection still covers the same text afterwards.

  5. The edit goes through the same path as the existing Tab indent, so undo restores it in one step.

Scope: a pure function in web/editor.js beside indentSelection, a keydown branch in web/interview.js, and cases in tests/browser/editor.test.js. Block comments (/* */) are out of scope.

One open question for a maintainer: the limited editor mode from #252 lets a session turn off auto-indent and bracket auto-close. Should this shortcut follow one of those options, get its own, or stay always on? I would default to always on, since it changes nothing unless the candidate presses the chord.

I checked open and closed issues for "toggle comment", "comment shortcut" and "Ctrl+/" and found no existing thread. I have read web/editor.js and the editor tests and would like to work on this; Could I work on it if the behavior above is acceptable.

Activity

  1. added 3 commits that reference this issue on Oct 11, 2026
    a5b32ec
    a656b36
    47e3458
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions