Function: ex-print-display-lines

ex-print-display-lines is a byte-compiled function defined in viper-ex.el.gz.

Signature

(ex-print-display-lines LINES &optional LINE-NUMBER UNAMBIGUOUSLY)

Source Code

;; Defined in /usr/src/emacs/lisp/emulation/viper-ex.el.gz
(defun ex-print-display-lines (lines &optional line-number unambiguously)
  (when unambiguously
    (dolist (char ex-ambiguous-char-map)
      (setq lines (string-replace (car char) (cdr char) lines))))
  (cond
   ;; String doesn't contain a newline.
   ((not (string-search "\n" lines))
    (if line-number
        (message "%s %s" line-number lines)
      (message "%s" lines)))
   ;; String contains only one newline at the end.  Strip it off.
   ((= (string-search "\n" lines) (1- (length lines)))
    (if line-number
        (message "%s %s" line-number (substring lines 0 -1))
      (message "%s" (substring lines 0 -1))))
   ;; String spans more than one line.  Use a temporary buffer.
   (t
    (save-current-buffer
      (with-output-to-temp-buffer " *viper-info*"
	(princ lines))
      (when line-number
        (with-current-buffer " *viper-info*"
          (setq-local display-line-numbers-offset (1- line-number))
          (display-line-numbers-mode 1)))))))