summaryrefslogtreecommitdiff
path: root/lisp/man.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/man.el')
-rw-r--r--lisp/man.el26
1 files changed, 12 insertions, 14 deletions
diff --git a/lisp/man.el b/lisp/man.el
index 0e1c92956b3..798e78bbe76 100644
--- a/lisp/man.el
+++ b/lisp/man.el
@@ -21,7 +21,7 @@
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
-;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
+;; along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>.
;;; Commentary:
@@ -278,7 +278,7 @@ Used in `bookmark-set' to get the default bookmark name."
:type 'hook
:group 'man)
-(defvar Man-name-regexp "[-a-zA-Z0-9_­+][-a-zA-Z0-9_.:­+]*"
+(defvar Man-name-regexp "[-[:alnum:]_­+][-[:alnum:]_.:­+]*"
"Regular expression describing the name of a manpage (without section).")
(defvar Man-section-regexp "[0-9][a-zA-Z0-9+]*\\|[LNln]"
@@ -286,16 +286,16 @@ Used in `bookmark-set' to get the default bookmark name."
(defvar Man-page-header-regexp
(if (string-match "-solaris2\\." system-configuration)
- (concat "^[-A-Za-z0-9_].*[ \t]\\(" Man-name-regexp
+ (concat "^[-[:alnum:]_].*[ \t]\\(" Man-name-regexp
"(\\(" Man-section-regexp "\\))\\)$")
(concat "^[ \t]*\\(" Man-name-regexp
"(\\(" Man-section-regexp "\\))\\).*\\1"))
"Regular expression describing the heading of a page.")
-(defvar Man-heading-regexp "^\\([A-Z][A-Z0-9 /-]+\\)$"
+(defvar Man-heading-regexp "^\\([[:upper:]][[:upper:]0-9 /-]+\\)$"
"Regular expression describing a manpage heading entry.")
-(defvar Man-see-also-regexp "SEE ALSO"
+(defvar Man-see-also-regexp "\\(SEE ALSO\\|VOIR AUSSI\\|SIEHE AUCH\\|VÉASE TAMBIÉN\\|VEJA TAMBÉM\\|VEDERE ANCHE\\|ZOBACZ TAKŻE\\|İLGİLİ BELGELER\\|参照\\|参见 SEE ALSO\\|參見 SEE ALSO\\)"
"Regular expression for SEE ALSO heading (or your equivalent).
This regexp should not start with a `^' character.")
@@ -1174,10 +1174,7 @@ See the variable `Man-notify-method' for the different notification behaviors."
(unless (eq t (compare-strings "latin-" 0 nil
current-language-environment 0 6 t))
(goto-char (point-min))
- (let ((str "\255"))
- (if enable-multibyte-characters
- (setq str (string-as-multibyte str)))
- (while (search-forward str nil t) (replace-match "-")))))
+ (while (search-forward "­" nil t) (replace-match "-"))))
(defun Man-fontify-manpage ()
"Convert overstriking and underlining to the correct fonts.
@@ -1516,16 +1513,17 @@ The following key bindings are currently in effect in the buffer:
(set (make-local-variable 'bookmark-make-record-function)
'Man-bookmark-make-record))
-(defsubst Man-build-section-alist ()
+(defun Man-build-section-list ()
"Build the list of manpage sections."
- (setq Man--sections nil)
+ (setq Man--sections ())
(goto-char (point-min))
(let ((case-fold-search nil))
- (while (re-search-forward Man-heading-regexp (point-max) t)
+ (while (re-search-forward Man-heading-regexp nil t)
(let ((section (match-string 1)))
(unless (member section Man--sections)
(push section Man--sections)))
- (forward-line 1))))
+ (forward-line)))
+ (setq Man--sections (nreverse Man--sections)))
(defsubst Man-build-references-alist ()
"Build the list of references (in the SEE ALSO section)."
@@ -1805,7 +1803,7 @@ Specify which REFERENCE to use; default is based on word at point."
(widen)
(goto-char page-start)
(narrow-to-region page-start page-end)
- (Man-build-section-alist)
+ (Man-build-section-list)
(Man-build-references-alist)
(goto-char (point-min)))))