summaryrefslogtreecommitdiff
path: root/lisp/man.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/man.el')
-rw-r--r--lisp/man.el13
1 files changed, 11 insertions, 2 deletions
diff --git a/lisp/man.el b/lisp/man.el
index 5acf90baf28..0410626c655 100644
--- a/lisp/man.el
+++ b/lisp/man.el
@@ -1430,8 +1430,17 @@ manpage command."
(quit-restore-window
(get-buffer-window (current-buffer) t) 'kill)
(kill-buffer (current-buffer)))
- (message "Can't find the %s manpage"
- (Man-page-from-arguments args)))
+ ;; Entries hyphenated due to the window's width
+ ;; won't be found in the man database, so remove
+ ;; the hyphenation -- assuming Groff hyphenates
+ ;; either with hyphen-minus (ASCII 45, #x2d),
+ ;; hyphen (#x2010) or soft hyphen (#xad) -- and
+ ;; look again.
+ (if (string-match "[-‐­]" args)
+ (let ((str (replace-match "" nil nil args)))
+ (Man-getpage-in-background str))
+ (message "Can't find the %s manpage"
+ (Man-page-from-arguments args))))
(if Man-fontify-manpage-flag
(message "%s man page formatted"