@@ -3410,18 +3410,24 @@ There might be text before point."
3410
3410
" A `prettify-symbols-alist' usable for (La)TeX modes." )
3411
3411
3412
3412
(defun tex--prettify-symbols-compose-p (_start end _match )
3413
- (let* ((after-char (char-after end))
3414
- (after-syntax (char-syntax after-char)))
3415
- (not (or
3416
- ; ; Don't compose \alpha@foo.
3417
- (eq after-char ?@ )
3418
- ; ; The \alpha in \alpha2 or \alpha-\beta may be composed but
3419
- ; ; of course \alphax may not.
3420
- (and (eq after-syntax ?w )
3421
- (not (memq after-char
3422
- '(?0 ?1 ?2 ?3 ?4 ?5 ?6 ?7 ?8 ?9 ?+ ?- ?' ?\" ))))
3423
- ; ; Don't compose inside verbatim blocks.
3424
- (eq 2 (nth 7 (syntax-ppss )))))))
3413
+ (or
3414
+ ; ; If the matched symbol doesn't end in a word character, then we
3415
+ ; ; simply allow composition. The symbol is probably something like
3416
+ ; ; \|, \(, etc.
3417
+ (not (eq ?w (char-syntax (char-before end))))
3418
+ ; ; Else we look at what follows the match in order to decide.
3419
+ (let* ((after-char (char-after end))
3420
+ (after-syntax (char-syntax after-char)))
3421
+ (not (or
3422
+ ; ; Don't compose \alpha@foo.
3423
+ (eq after-char ?@ )
3424
+ ; ; The \alpha in \alpha2 or \alpha-\beta may be composed but
3425
+ ; ; of course \alphax may not.
3426
+ (and (eq after-syntax ?w )
3427
+ (not (memq after-char
3428
+ '(?0 ?1 ?2 ?3 ?4 ?5 ?6 ?7 ?8 ?9 ?+ ?- ?' ?\" ))))
3429
+ ; ; Don't compose inside verbatim blocks.
3430
+ (eq 2 (nth 7 (syntax-ppss ))))))))
3425
3431
3426
3432
(run-hooks 'tex-mode-load-hook )
3427
3433
0 commit comments