The "special" faces in cperl-mode are one of the things which seem to annoy perl-mode users. I didn't expect many of them here, in a Perl-only forum, but they contribute to the discussion in the Emacs lists. Some of the themes which ship with Emacs (e.g. the Modus themes by Protesilaos Stavrou) map these faces to standard faces, which makes them look "nice" in light and dark mode, but they are somewhat ... inconsistent. And none of the themes takes cperl-nonoverridable-face into consideration.

As a part of the merge of Perl modes, the faces might undergo some refactoring anyway: cperl-hash-face and cperl-array-face will probably indeed end up as inheriting from font-lock-variable-name-face with some extra decoration (perl-mode uses underline for both hashes and arrays, I'd like to keep them distinguishable). The comments by LanX and Smonff suggest that I can get away with that. :-) cperl-nonoverridable-face will inherit from whatever is used for overridable builtins (font-lock-builtin-face comes into mind).

Some "standard" faces are not (yet) used by cperl-mode, and Emacs 29.1 brings more standard faces which make sense for cperl-mode.

All that will take some time, though.


In reply to Re^3: Writing Perl with Emacs: Are there perl-mode users around? by haj
in thread Writing Perl with Emacs: Are there perl-mode users around? by haj

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.