]> git.eshelyaron.com Git - emacs.git/commitdiff
Fontify _emphasis_ in info nodes
authorDrew Adams <drew.adams@oracle.com>
Tue, 25 Jun 2019 12:53:05 +0000 (14:53 +0200)
committerLars Ingebrigtsen <larsi@gnus.org>
Tue, 25 Jun 2019 12:53:52 +0000 (14:53 +0200)
* lisp/info.el (Info-fontify-node): Fontify _emphasis_ (bug#23798).
(info-emphasis): New face.

lisp/info.el

index c211887a39aedafcaac2e6c7012dc60b7e87f3c8..9ecb187e958bbf40d1d1f066c029002a4d163ed6 100644 (file)
@@ -136,6 +136,12 @@ The Lisp code is executed when the node is selected.")
   :version "22.1"
   :group 'info)
 
+(defface info-emphasis
+  '((t (:inherit italic)))
+  "*Face for emphasized text (enclosed with underscores)."
+  :version "25.1"
+  :group 'info)
+
 (defcustom Info-fontify-visited-nodes t
   "Non-nil to fontify references to visited nodes in `info-xref-visited' face."
   :version "22.1"
@@ -4688,6 +4694,17 @@ first line or header line, and for breadcrumb links.")
                  (put-text-property (match-beginning 1) (match-end 1)
                                     'invisible t)))))))
 
+      ;; Fontify emphasis: _..._
+      (goto-char (point-min))
+      (when (and font-lock-mode  not-fontified-p)
+        (while (re-search-forward "_\\(\\sw+\\)_" nil t)
+          (add-text-properties (match-beginning 0) (1+ (match-beginning 0))
+                               '(invisible t front-sticky nil rear-nonsticky t))
+          (add-text-properties (1- (match-end 0)) (match-end 0)
+                               '(invisible t front-sticky nil rear-nonsticky t))
+          (put-text-property (match-beginning 1) (match-end 1)
+                             'font-lock-face 'info-emphasis)))
+
       ;; Fontify titles
       (goto-char (point-min))
       (when (and font-lock-mode not-fontified-p)