Function: emacs-version

emacs-version is an interactive and byte-compiled function defined in version.el.gz.

Signature

(emacs-version &optional HERE)

Documentation

Display the version of Emacs that is running in this session.

With a prefix argument, insert the Emacs version string at point instead of displaying it. If called from Lisp, by default return the version string; but if the optional argument HERE is non-nil, insert the string at point instead.

Don't use this function in programs to choose actions according to the system configuration; look at system-configuration instead.

View in manual

Probably introduced at or before Emacs version 19.1.

Key Bindings

Aliases

version

Source Code

;; Defined in /usr/src/emacs/lisp/version.el.gz
(defun emacs-version (&optional here)
  "Display the version of Emacs that is running in this session.
With a prefix argument, insert the Emacs version string at point
instead of displaying it.
If called from Lisp, by default return the version string; but
if the optional argument HERE is non-nil, insert the string at
point instead.

Don't use this function in programs to choose actions according
to the system configuration; look at `system-configuration' instead."
  (interactive "P")
  (let ((version-string
         (format "GNU Emacs %s (build %s, %s%s%s%s)%s"
                 emacs-version
                 emacs-build-number
		 system-configuration
		 (cond ((featurep 'motif)
			(concat ", " (substring motif-version-string 4)))
		       ((featurep 'gtk)
			(concat ", GTK+ Version " gtk-version-string))
		       ((featurep 'x-toolkit) ", X toolkit")
		       ((featurep 'ns)
			(format ", NS %s" ns-version-string))
                       ((featurep 'haiku)
                        (format ", Haiku %s" (haiku-get-version-string)))
		       (t ""))
		 (if (featurep 'cairo)
		     (format ", cairo version %s" cairo-version-string)
		   "")
		 (if (and (boundp 'x-toolkit-scroll-bars)
			  (memq x-toolkit-scroll-bars '(xaw xaw3d)))
		     (format ", %s scroll bars"
			     (capitalize (symbol-name x-toolkit-scroll-bars)))
		   "")
		 (if emacs-build-time
		     (format-time-string (concat
					  (if (called-interactively-p
					       'interactive)
					      "" "\n")
					  " of %Y-%m-%d")
					 emacs-build-time)
		   ""))))
    (if here
        (insert version-string)
      (if (called-interactively-p 'interactive)
          (message "%s" version-string)
        version-string))))