Configuring Prettify Symbols Mode











up vote
2
down vote

favorite












I've configured prettify-symbols-mode as below. However, only in the scratch buffer is any drawing performed. Further, lambda (λ) is the only multi-character token drawn as a unicode glyph. Is something missing or incorrectly set in the prettify configuration?



;; Globally prettify symbols
(global-prettify-symbols-mode 1)
(setq prettify-symbols-alist '(("lambda" . 955)
("->" . 8594)
("->>" . 21A0)
("=>" . 8658)
("map" . 8614)
("/=" . 2260)
("==" . 2261)
("<=" . 2264)
(">=" . 2265)
("=<<" . 226A)
(">>=" . 226B)
("<=<" . 21A2)
(">=>" . 21A3)
("&&" . 2227)
("||" . 2228)
("not" . 00AC)))


Update



(defun configure-prettify-symbols-alist ()
"Set prettify symbols alist."
(setq prettify-symbols-alist '(("lambda" . ?λ)
("->" . ?→)
("->>" . ?↠)
("=>" . ?⇒)
("map" . ?↦)
("/=" . ?≠)
("!=" . ?≠)
("==" . ?≡)
("<=" . ?≤)
(">=" . ?≥)
("=<<" . ?=≪)
(">>=" . ?≫=)
("<=<" . ?↢)
(">=>" . ?↣)
("&&" . ?∧)
("||" . ?∨)
("not" . ?¬))))









share|improve this question




















  • 2




    I believe phils gave you the right answer, but note also that 21A2 is wrong (as are all the other codes). You need to tell Emacs that you're writing your codes in hexadecimal. You can write ?u21A2 or just ?↢ which will also be more readable ;-)
    – Stefan
    Dec 11 at 14:20










  • @Stefan thanks for pointing out the error and sharing the helpful tip. I updated the configuration to use glyphs directly, but now I receive the error: Invalid read syntax: "?". Any ideas on this issue?
    – Ari
    Dec 11 at 20:35






  • 2




    Your new problem is ?=≪ and ?≫=. ?x is the read syntax for a single character x, and =≪ and ≫= are each two characters. If you remove those, it should work.
    – phils
    Dec 11 at 21:09








  • 2




    For those, you could try ("=<<" . (?= (Br . Bl) ?≪)) and (">>=" . (?≫ (Br . Bl) ?=)) respectively. Refer to emacs.stackexchange.com/q/34808/454
    – phils
    Dec 11 at 21:16










  • Thanks, the above suggestion resolved the issue. As a follow-up, do you know of any documentation on "reference-point-alist" aside from this?
    – Ari
    Dec 11 at 23:52















up vote
2
down vote

favorite












I've configured prettify-symbols-mode as below. However, only in the scratch buffer is any drawing performed. Further, lambda (λ) is the only multi-character token drawn as a unicode glyph. Is something missing or incorrectly set in the prettify configuration?



;; Globally prettify symbols
(global-prettify-symbols-mode 1)
(setq prettify-symbols-alist '(("lambda" . 955)
("->" . 8594)
("->>" . 21A0)
("=>" . 8658)
("map" . 8614)
("/=" . 2260)
("==" . 2261)
("<=" . 2264)
(">=" . 2265)
("=<<" . 226A)
(">>=" . 226B)
("<=<" . 21A2)
(">=>" . 21A3)
("&&" . 2227)
("||" . 2228)
("not" . 00AC)))


Update



(defun configure-prettify-symbols-alist ()
"Set prettify symbols alist."
(setq prettify-symbols-alist '(("lambda" . ?λ)
("->" . ?→)
("->>" . ?↠)
("=>" . ?⇒)
("map" . ?↦)
("/=" . ?≠)
("!=" . ?≠)
("==" . ?≡)
("<=" . ?≤)
(">=" . ?≥)
("=<<" . ?=≪)
(">>=" . ?≫=)
("<=<" . ?↢)
(">=>" . ?↣)
("&&" . ?∧)
("||" . ?∨)
("not" . ?¬))))









share|improve this question




















  • 2




    I believe phils gave you the right answer, but note also that 21A2 is wrong (as are all the other codes). You need to tell Emacs that you're writing your codes in hexadecimal. You can write ?u21A2 or just ?↢ which will also be more readable ;-)
    – Stefan
    Dec 11 at 14:20










  • @Stefan thanks for pointing out the error and sharing the helpful tip. I updated the configuration to use glyphs directly, but now I receive the error: Invalid read syntax: "?". Any ideas on this issue?
    – Ari
    Dec 11 at 20:35






  • 2




    Your new problem is ?=≪ and ?≫=. ?x is the read syntax for a single character x, and =≪ and ≫= are each two characters. If you remove those, it should work.
    – phils
    Dec 11 at 21:09








  • 2




    For those, you could try ("=<<" . (?= (Br . Bl) ?≪)) and (">>=" . (?≫ (Br . Bl) ?=)) respectively. Refer to emacs.stackexchange.com/q/34808/454
    – phils
    Dec 11 at 21:16










  • Thanks, the above suggestion resolved the issue. As a follow-up, do you know of any documentation on "reference-point-alist" aside from this?
    – Ari
    Dec 11 at 23:52













up vote
2
down vote

favorite









up vote
2
down vote

favorite











I've configured prettify-symbols-mode as below. However, only in the scratch buffer is any drawing performed. Further, lambda (λ) is the only multi-character token drawn as a unicode glyph. Is something missing or incorrectly set in the prettify configuration?



;; Globally prettify symbols
(global-prettify-symbols-mode 1)
(setq prettify-symbols-alist '(("lambda" . 955)
("->" . 8594)
("->>" . 21A0)
("=>" . 8658)
("map" . 8614)
("/=" . 2260)
("==" . 2261)
("<=" . 2264)
(">=" . 2265)
("=<<" . 226A)
(">>=" . 226B)
("<=<" . 21A2)
(">=>" . 21A3)
("&&" . 2227)
("||" . 2228)
("not" . 00AC)))


Update



(defun configure-prettify-symbols-alist ()
"Set prettify symbols alist."
(setq prettify-symbols-alist '(("lambda" . ?λ)
("->" . ?→)
("->>" . ?↠)
("=>" . ?⇒)
("map" . ?↦)
("/=" . ?≠)
("!=" . ?≠)
("==" . ?≡)
("<=" . ?≤)
(">=" . ?≥)
("=<<" . ?=≪)
(">>=" . ?≫=)
("<=<" . ?↢)
(">=>" . ?↣)
("&&" . ?∧)
("||" . ?∨)
("not" . ?¬))))









share|improve this question















I've configured prettify-symbols-mode as below. However, only in the scratch buffer is any drawing performed. Further, lambda (λ) is the only multi-character token drawn as a unicode glyph. Is something missing or incorrectly set in the prettify configuration?



;; Globally prettify symbols
(global-prettify-symbols-mode 1)
(setq prettify-symbols-alist '(("lambda" . 955)
("->" . 8594)
("->>" . 21A0)
("=>" . 8658)
("map" . 8614)
("/=" . 2260)
("==" . 2261)
("<=" . 2264)
(">=" . 2265)
("=<<" . 226A)
(">>=" . 226B)
("<=<" . 21A2)
(">=>" . 21A3)
("&&" . 2227)
("||" . 2228)
("not" . 00AC)))


Update



(defun configure-prettify-symbols-alist ()
"Set prettify symbols alist."
(setq prettify-symbols-alist '(("lambda" . ?λ)
("->" . ?→)
("->>" . ?↠)
("=>" . ?⇒)
("map" . ?↦)
("/=" . ?≠)
("!=" . ?≠)
("==" . ?≡)
("<=" . ?≤)
(">=" . ?≥)
("=<<" . ?=≪)
(">>=" . ?≫=)
("<=<" . ?↢)
(">=>" . ?↣)
("&&" . ?∧)
("||" . ?∨)
("not" . ?¬))))






init-file prettify-symbols-mode






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Dec 11 at 20:31

























asked Dec 11 at 4:05









Ari

1593




1593








  • 2




    I believe phils gave you the right answer, but note also that 21A2 is wrong (as are all the other codes). You need to tell Emacs that you're writing your codes in hexadecimal. You can write ?u21A2 or just ?↢ which will also be more readable ;-)
    – Stefan
    Dec 11 at 14:20










  • @Stefan thanks for pointing out the error and sharing the helpful tip. I updated the configuration to use glyphs directly, but now I receive the error: Invalid read syntax: "?". Any ideas on this issue?
    – Ari
    Dec 11 at 20:35






  • 2




    Your new problem is ?=≪ and ?≫=. ?x is the read syntax for a single character x, and =≪ and ≫= are each two characters. If you remove those, it should work.
    – phils
    Dec 11 at 21:09








  • 2




    For those, you could try ("=<<" . (?= (Br . Bl) ?≪)) and (">>=" . (?≫ (Br . Bl) ?=)) respectively. Refer to emacs.stackexchange.com/q/34808/454
    – phils
    Dec 11 at 21:16










  • Thanks, the above suggestion resolved the issue. As a follow-up, do you know of any documentation on "reference-point-alist" aside from this?
    – Ari
    Dec 11 at 23:52














  • 2




    I believe phils gave you the right answer, but note also that 21A2 is wrong (as are all the other codes). You need to tell Emacs that you're writing your codes in hexadecimal. You can write ?u21A2 or just ?↢ which will also be more readable ;-)
    – Stefan
    Dec 11 at 14:20










  • @Stefan thanks for pointing out the error and sharing the helpful tip. I updated the configuration to use glyphs directly, but now I receive the error: Invalid read syntax: "?". Any ideas on this issue?
    – Ari
    Dec 11 at 20:35






  • 2




    Your new problem is ?=≪ and ?≫=. ?x is the read syntax for a single character x, and =≪ and ≫= are each two characters. If you remove those, it should work.
    – phils
    Dec 11 at 21:09








  • 2




    For those, you could try ("=<<" . (?= (Br . Bl) ?≪)) and (">>=" . (?≫ (Br . Bl) ?=)) respectively. Refer to emacs.stackexchange.com/q/34808/454
    – phils
    Dec 11 at 21:16










  • Thanks, the above suggestion resolved the issue. As a follow-up, do you know of any documentation on "reference-point-alist" aside from this?
    – Ari
    Dec 11 at 23:52








2




2




I believe phils gave you the right answer, but note also that 21A2 is wrong (as are all the other codes). You need to tell Emacs that you're writing your codes in hexadecimal. You can write ?u21A2 or just ?↢ which will also be more readable ;-)
– Stefan
Dec 11 at 14:20




I believe phils gave you the right answer, but note also that 21A2 is wrong (as are all the other codes). You need to tell Emacs that you're writing your codes in hexadecimal. You can write ?u21A2 or just ?↢ which will also be more readable ;-)
– Stefan
Dec 11 at 14:20












@Stefan thanks for pointing out the error and sharing the helpful tip. I updated the configuration to use glyphs directly, but now I receive the error: Invalid read syntax: "?". Any ideas on this issue?
– Ari
Dec 11 at 20:35




@Stefan thanks for pointing out the error and sharing the helpful tip. I updated the configuration to use glyphs directly, but now I receive the error: Invalid read syntax: "?". Any ideas on this issue?
– Ari
Dec 11 at 20:35




2




2




Your new problem is ?=≪ and ?≫=. ?x is the read syntax for a single character x, and =≪ and ≫= are each two characters. If you remove those, it should work.
– phils
Dec 11 at 21:09






Your new problem is ?=≪ and ?≫=. ?x is the read syntax for a single character x, and =≪ and ≫= are each two characters. If you remove those, it should work.
– phils
Dec 11 at 21:09






2




2




For those, you could try ("=<<" . (?= (Br . Bl) ?≪)) and (">>=" . (?≫ (Br . Bl) ?=)) respectively. Refer to emacs.stackexchange.com/q/34808/454
– phils
Dec 11 at 21:16




For those, you could try ("=<<" . (?= (Br . Bl) ?≪)) and (">>=" . (?≫ (Br . Bl) ?=)) respectively. Refer to emacs.stackexchange.com/q/34808/454
– phils
Dec 11 at 21:16












Thanks, the above suggestion resolved the issue. As a follow-up, do you know of any documentation on "reference-point-alist" aside from this?
– Ari
Dec 11 at 23:52




Thanks, the above suggestion resolved the issue. As a follow-up, do you know of any documentation on "reference-point-alist" aside from this?
– Ari
Dec 11 at 23:52










1 Answer
1






active

oldest

votes

















up vote
3
down vote



accepted











prettify-symbols-alist is a variable defined in ‘prog-mode.el’.



Automatically becomes buffer-local when set.




So your setq sets it only for a single buffer.



While setq-default could be used to set a default value, what you should do is use the appropriate major mode hooks to setq the value to a sensible value for each of the modes you are interested in.



This is partly because global-prettify-symbols-mode only enables the mode in buffers which have a buffer-local value for prettify-symbols-alist -- setting a default value doesn't trigger it.






share|improve this answer





















    Your Answer








    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "583"
    };
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function() {
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled) {
    StackExchange.using("snippets", function() {
    createEditor();
    });
    }
    else {
    createEditor();
    }
    });

    function createEditor() {
    StackExchange.prepareEditor({
    heartbeatType: 'answer',
    convertImagesToLinks: false,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: null,
    bindNavPrevention: true,
    postfix: "",
    imageUploader: {
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    },
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    });


    }
    });














    draft saved

    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2femacs.stackexchange.com%2fquestions%2f46529%2fconfiguring-prettify-symbols-mode%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes








    up vote
    3
    down vote



    accepted











    prettify-symbols-alist is a variable defined in ‘prog-mode.el’.



    Automatically becomes buffer-local when set.




    So your setq sets it only for a single buffer.



    While setq-default could be used to set a default value, what you should do is use the appropriate major mode hooks to setq the value to a sensible value for each of the modes you are interested in.



    This is partly because global-prettify-symbols-mode only enables the mode in buffers which have a buffer-local value for prettify-symbols-alist -- setting a default value doesn't trigger it.






    share|improve this answer

























      up vote
      3
      down vote



      accepted











      prettify-symbols-alist is a variable defined in ‘prog-mode.el’.



      Automatically becomes buffer-local when set.




      So your setq sets it only for a single buffer.



      While setq-default could be used to set a default value, what you should do is use the appropriate major mode hooks to setq the value to a sensible value for each of the modes you are interested in.



      This is partly because global-prettify-symbols-mode only enables the mode in buffers which have a buffer-local value for prettify-symbols-alist -- setting a default value doesn't trigger it.






      share|improve this answer























        up vote
        3
        down vote



        accepted







        up vote
        3
        down vote



        accepted







        prettify-symbols-alist is a variable defined in ‘prog-mode.el’.



        Automatically becomes buffer-local when set.




        So your setq sets it only for a single buffer.



        While setq-default could be used to set a default value, what you should do is use the appropriate major mode hooks to setq the value to a sensible value for each of the modes you are interested in.



        This is partly because global-prettify-symbols-mode only enables the mode in buffers which have a buffer-local value for prettify-symbols-alist -- setting a default value doesn't trigger it.






        share|improve this answer













        prettify-symbols-alist is a variable defined in ‘prog-mode.el’.



        Automatically becomes buffer-local when set.




        So your setq sets it only for a single buffer.



        While setq-default could be used to set a default value, what you should do is use the appropriate major mode hooks to setq the value to a sensible value for each of the modes you are interested in.



        This is partly because global-prettify-symbols-mode only enables the mode in buffers which have a buffer-local value for prettify-symbols-alist -- setting a default value doesn't trigger it.







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Dec 11 at 4:33









        phils

        25.5k23564




        25.5k23564






























            draft saved

            draft discarded




















































            Thanks for contributing an answer to Emacs Stack Exchange!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.





            Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


            Please pay close attention to the following guidance:


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2femacs.stackexchange.com%2fquestions%2f46529%2fconfiguring-prettify-symbols-mode%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            "Incorrect syntax near the keyword 'ON'. (on update cascade, on delete cascade,)

            Alcedinidae

            Origin of the phrase “under your belt”?