;; I use spacemacs, add to user-config. If you just use emacs, add to your config file. ;; BTW: Remeber to set Iosevka as your default font. (setq prettify-symbols-unprettify-at-point 'right-edge) (defun setup-iosevka-ligatures () (setq prettify-symbols-alist (append prettify-symbols-alist '( ;; Double-ended hyphen arrows ---------------- ("<->" . #Xe100) ("<-->" . #Xe101) ("<--->" . #Xe102) ("<---->" . #Xe103) ("<----->" . #Xe104) ;; Double-ended equals arrows ---------------- ("<=>" . #Xe105) ("<==>" . #Xe106) ("<===>" . #Xe107) ("<====>" . #Xe108) ("<=====>" . #Xe109) ;; Double-ended asterisk operators ---------------- ("<**>" . #Xe10a) ("<***>" . #Xe10b) ("<****>" . #Xe10c) ("<*****>" . #Xe10d) ;; HTML comments ---------------- ("" . #Xe152) ("-->-" . #Xe153) ("-->--" . #Xe154) ("-->>" . #Xe155) ("-->>-" . #Xe156) ("-->>--" . #Xe157) ("-->>>" . #Xe158) ("-->>>-" . #Xe159) ("-->>>--" . #Xe15a) (">-" . #Xe15b) (">--" . #Xe15c) (">>-" . #Xe15d) (">>--" . #Xe15e) (">>>-" . #Xe15f) (">>>--" . #Xe160) ("=>" . #Xe161) ("=>=" . #Xe162) ("=>==" . #Xe163) ("=>>" . #Xe164) ("=>>=" . #Xe165) ("=>>==" . #Xe166) ("=>>>" . #Xe167) ("=>>>=" . #Xe168) ("=>>>==" . #Xe169) ("==>" . #Xe16a) ("==>=" . #Xe16b) ("==>==" . #Xe16c) ("==>>" . #Xe16d) ("==>>=" . #Xe16e) ("==>>==" . #Xe16f) ("==>>>" . #Xe170) ("==>>>=" . #Xe171) ("==>>>==" . #Xe172) (">=" . #Xe173) (">==" . #Xe174) (">>=" . #Xe175) (">>==" . #Xe176) (">>>=" . #Xe177) (">>>==" . #Xe178) ("<-" . #Xe179) ("-<-" . #Xe17a) ("--<-" . #Xe17b) ("<<-" . #Xe17c) ("-<<-" . #Xe17d) ("--<<-" . #Xe17e) ("<<<-" . #Xe17f) ("-<<<-" . #Xe180) ("--<<<-" . #Xe181) ("<--" . #Xe182) ("-<--" . #Xe183) ("--<--" . #Xe184) ("<<--" . #Xe185) ("-<<--" . #Xe186) ("--<<--" . #Xe187) ("<<<--" . #Xe188) ("-<<<--" . #Xe189) ("--<<<--" . #Xe18a) ("-<" . #Xe18b) ("--<" . #Xe18c) ("-<<" . #Xe18d) ("--<<" . #Xe18e) ("-<<<" . #Xe18f) ("--<<<" . #Xe190) ("<=" . #Xe191) ("=<=" . #Xe192) ("==<=" . #Xe193) ("<<=" . #Xe194) ("=<<=" . #Xe195) ("==<<=" . #Xe196) ("<<<=" . #Xe197) ("=<<<=" . #Xe198) ("==<<<=" . #Xe199) ("<==" . #Xe19a) ("=<==" . #Xe19b) ("==<==" . #Xe19c) ("<<==" . #Xe19d) ("=<<==" . #Xe19e) ("==<<==" . #Xe19f) ("<<<==" . #Xe1a0) ("=<<<==" . #Xe1a1) ("==<<<==" . #Xe1a2) ("=<" . #Xe1a3) ("==<" . #Xe1a4) ("=<<" . #Xe1a5) ("==<<" . #Xe1a6) ("=<<<" . #Xe1a7) ("==<<<" . #Xe1a8) ;; Monadic operators ---------------- (">=>" . #Xe1a9) (">->" . #Xe1aa) (">-->" . #Xe1ab) (">==>" . #Xe1ac) ("<=<" . #Xe1ad) ("<-<" . #Xe1ae) ("<--<" . #Xe1af) ("<==<" . #Xe1b0) ;; Composition operators ---------------- (">>" . #Xe1b1) (">>>" . #Xe1b2) ("<<" . #Xe1b3) ("<<<" . #Xe1b4) ;; Lens operators ---------------- (":+" . #Xe1b5) (":-" . #Xe1b6) (":=" . #Xe1b7) ("+:" . #Xe1b8) ("-:" . #Xe1b9) ("=:" . #Xe1ba) ("=^" . #Xe1bb) ("=+" . #Xe1bc) ("=-" . #Xe1bd) ("=*" . #Xe1be) ("=/" . #Xe1bf) ("=%" . #Xe1c0) ("^=" . #Xe1c1) ("+=" . #Xe1c2) ("-=" . #Xe1c3) ("*=" . #Xe1c4) ("/=" . #Xe1c5) ("%=" . #Xe1c6) ;; Logical ---------------- ("/\\" . #Xe1c7) ("\\/" . #Xe1c8) ;; Semigroup/monoid operators ---------------- ("<>" . #Xe1c9) ("<+" . #Xe1ca) ("<+>" . #Xe1cb) ("+>" . #Xe1cc) )))) (defun refresh-pretty () (prettify-symbols-mode -1) (prettify-symbols-mode +1)) ;; Hooks for modes in which to install the Iosevka ligatures (mapc (lambda (hook) (add-hook hook (lambda () (setup-iosevka-ligatures) (refresh-pretty)))) '(text-mode-hook prog-mode-hook)) (global-prettify-symbols-mode +1)