(car (car Info-index-alternatives))
(nth 2 (car Info-index-alternatives))
(if (cdr Info-index-alternatives)
- "(`,' tries to find next)"
+ (format "(%s total; use `,' for next)"
+ (length Info-index-alternatives))
"(Only match)")))
(defun Info-find-index-name (name)
(if (display-graphic-p)
(let ((map (make-sparse-keymap)))
(tool-bar-local-item-from-menu 'Info-exit "close" map Info-mode-map)
- (tool-bar-local-item-from-menu 'Info-prev "left_arrow" map Info-mode-map)
- (tool-bar-local-item-from-menu 'Info-next "right_arrow" map Info-mode-map)
- (tool-bar-local-item-from-menu 'Info-up "up_arrow" map Info-mode-map)
- (tool-bar-local-item-from-menu 'Info-history-back "back_arrow" map Info-mode-map)
- (tool-bar-local-item-from-menu 'Info-history-forward "fwd_arrow" map Info-mode-map)
+ (tool-bar-local-item-from-menu 'Info-prev "left-arrow" map Info-mode-map)
+ (tool-bar-local-item-from-menu 'Info-next "right-arrow" map Info-mode-map)
+ (tool-bar-local-item-from-menu 'Info-up "up-arrow" map Info-mode-map)
+ (tool-bar-local-item-from-menu 'Info-history-back "back-arrow" map Info-mode-map)
+ (tool-bar-local-item-from-menu 'Info-history-forward "fwd-arrow" map Info-mode-map)
(tool-bar-local-item-from-menu 'Info-top-node "home" map Info-mode-map)
(tool-bar-local-item-from-menu 'Info-index "index" map Info-mode-map)
- (tool-bar-local-item-from-menu 'Info-goto-node "jump_to" map Info-mode-map)
+ (tool-bar-local-item-from-menu 'Info-goto-node "jump-to" map Info-mode-map)
(tool-bar-local-item-from-menu 'Info-search "search" map Info-mode-map)
map)))
((equal tag "Up") Info-up-link-keymap))))))
(when Info-use-header-line
(goto-char (point-min))
- (let ((header-end (line-end-position))
- header)
- ;; If we find neither Next: nor Prev: link, show the entire
- ;; node header. Otherwise, don't show the File: and Node:
- ;; parts, to avoid wasting precious space on information that
- ;; is available in the mode line.
- (if (re-search-forward
- "\\(next\\|up\\|prev[ious]*\\): "
- header-end t)
- (progn
- (goto-char (match-beginning 1))
- (setq header (buffer-substring (point) header-end)))
- (if (re-search-forward "node:[ \t]*[^ \t]+[ \t]*" header-end t)
- (setq header
+ (let* ((header-end (line-end-position))
+ (header
+ ;; If we find neither Next: nor Prev: link, show the entire
+ ;; node header. Otherwise, don't show the File: and Node:
+ ;; parts, to avoid wasting precious space on information that
+ ;; is available in the mode line.
+ (if (re-search-forward
+ "\\(next\\|up\\|prev[ious]*\\): "
+ header-end t)
+ (progn
+ (goto-char (match-beginning 1))
+ (buffer-substring (point) header-end))
+ (if (re-search-forward "node:[ \t]*[^ \t]+[ \t]*"
+ header-end t)
(concat "No next, prev or up links -- "
- (buffer-substring (point) header-end)))
- (setq header (buffer-substring (point) header-end))))
+ (buffer-substring (point) header-end))
+ (buffer-substring (point) header-end)))))
(put-text-property (point-min) (1+ (point-min))
'header-line
(replace-regexp-in-string
;; Fontify titles
(goto-char (point-min))
- (when not-fontified-p
- (while (re-search-forward "\n\\([^ \t\n].+\\)\n\\(\\*\\*+\\|==+\\|--+\\|\\.\\.+\\)$"
- nil t)
+ (when (and font-lock-mode not-fontified-p)
+ (while (and (re-search-forward "\n\\([^ \t\n].+\\)\n\\(\\*\\*+\\|==+\\|--+\\|\\.\\.+\\)$"
+ nil t)
+ ;; Only consider it as an underlined title if the ASCII
+ ;; underline has the same size as the text. A typical
+ ;; counter example is when a continuation "..." is alone
+ ;; on a line.
+ (= (- (match-end 1) (match-beginning 1))
+ (- (match-end 2) (match-beginning 2))))
(let* ((c (preceding-char))
(face
(cond ((= c ?*) 'info-title-1)
(paragraph-separate ".*\\.[ \t]*\n[ \t]\\|[ \t]*[-*]\\|[ \t\f]*$")
(adaptive-fill-mode nil))
(goto-char (point-max))
- (while paragraph-markers
- (let ((m (car paragraph-markers)))
- (setq paragraph-markers (cdr paragraph-markers))
- (when (< m (point))
- (goto-char m)
- (beginning-of-line)
- (let ((beg (point)))
- (when (zerop (forward-paragraph))
- (fill-individual-paragraphs beg (point) nil nil)
- (goto-char beg))))
- (set-marker m nil)))))
+ (dolist (m paragraph-markers)
+ (when (< m (point))
+ (goto-char m)
+ (beginning-of-line)
+ (let ((beg (point)))
+ (when (zerop (forward-paragraph))
+ (fill-individual-paragraphs beg (point) nil nil)
+ (goto-char beg))))
+ (set-marker m nil))))
;; Fontify menu items
(goto-char (point-min))
"mouse-2: go to this node")
'mouse-face 'highlight)))
(when (or not-fontified-p fontify-visited-p)
- (add-text-properties
+ (put-text-property
(match-beginning 1) (match-end 1)
- (list
- 'font-lock-face
- ;; Display visited menu items in a different face
- (if (and Info-fontify-visited-nodes
- (save-match-data
- (let ((node (if (equal (match-string 3) "")
- (match-string 1)
- (match-string 3)))
- (file (file-name-nondirectory Info-current-file))
- (hl Info-history-list)
- res)
- (if (string-match "(\\([^)]+\\))\\([^)]*\\)" node)
- (setq file (file-name-nondirectory
- (match-string 1 node))
- node (if (equal (match-string 2 node) "")
- "Top"
- (match-string 2 node))))
- (while hl
- (if (and (string-equal node (nth 1 (car hl)))
- (string-equal file
- (file-name-nondirectory
- (nth 0 (car hl)))))
- (setq res (car hl) hl nil)
- (setq hl (cdr hl))))
- res))) 'info-xref-visited 'info-xref))))
+ 'font-lock-face
+ ;; Display visited menu items in a different face
+ (if (and Info-fontify-visited-nodes
+ (save-match-data
+ (let ((node (if (equal (match-string 3) "")
+ (match-string 1)
+ (match-string 3)))
+ (file (file-name-nondirectory Info-current-file))
+ (hl Info-history-list)
+ res)
+ (if (string-match "(\\([^)]+\\))\\([^)]*\\)" node)
+ (setq file (file-name-nondirectory
+ (match-string 1 node))
+ node (if (equal (match-string 2 node) "")
+ "Top"
+ (match-string 2 node))))
+ (while hl
+ (if (and (string-equal node (nth 1 (car hl)))
+ (string-equal file
+ (file-name-nondirectory
+ (nth 0 (car hl)))))
+ (setq res (car hl) hl nil)
+ (setq hl (cdr hl))))
+ res))) 'info-xref-visited 'info-xref)))
(when (and not-fontified-p (memq Info-hide-note-references '(t hide)))
(put-text-property (match-beginning 2) (1- (match-end 6))
'invisible t)