• 
      

    Add a dark theme for syntax highlighting.

    Review Request #13775 — Created April 23, 2024 and submitted — Latest diff uploaded

    Information

    Review Board
    release-7.x

    Reviewers

    This updates our syntax highlighting to render well in dark mode, when
    placed on a dark background.

    The dark theme mirrors the light theme generally, but leans more on
    purples, reds, cyans, and oranges as the main colors. This looks good on
    a dark background, and on the insert/delete/replace lines (which are
    defined in this change but not yet used in the diff viewer).

    Some old CSS selectors have been removed in the process (from a time
    when we rendered some syntax highlighting client-side), and others have
    been added (to try to better align Pygments and CodeMirror styling).

    There was a greater plan to make diff themes more pluggable. This work
    exists in a branch, but is no longer in scope for Review Board 7.
    However, some of the naming in this change prepares for that eventual
    support.

    As of this change, code is almost impossible to read in the diff viewer
    on dark mode, due to the bright colors in the diff viewer. The next
    change will add the necessary styling to correct this.

    Tested in CodeMirror on light and dark modes, with a variety of code
    samples that tested every syntax-highlighted token supported in both
    Pygments and CodeMirror.

    Tested in the diff viewer as well. Right now, it's unusable, but I've
    also tested with the in-progress diff viewer changes.


    Commits

    Files