50 lines
1.7 KiB
EmacsLisp
50 lines
1.7 KiB
EmacsLisp
(setq inhibit-startup-screen t)
|
|
|
|
(if (getenv "LEAN_ROOTDIR")
|
|
(setq lean-rootdir (getenv "LEAN_ROOTDIR"))
|
|
(error "LEAN_ROOTDIR environment variable must be set"))
|
|
|
|
(if (getenv "LEAN_EMACS_PATH")
|
|
(setq-local lean-emacs-path (getenv "LEAN_EMACS_PATH"))
|
|
(error "LEAN_EMACS_PATH environment variable must be set"))
|
|
|
|
(setq lean-emacs-dependencies-path (format "%s/dependencies" lean-emacs-path))
|
|
|
|
(setq lean-logo (create-image (format "%s/lean.pgm" lean-emacs-path)))
|
|
(setq lean-required-packages '(company dash dash-functional f fill-column-indicator flycheck lua-mode mmm-mode s))
|
|
|
|
(setq load-path
|
|
(append
|
|
(list lean-emacs-path)
|
|
(mapcar (lambda (p) (format "%s/%s" lean-emacs-dependencies-path p)) lean-required-packages)
|
|
load-path))
|
|
|
|
(require 'package)
|
|
(require 'lean-mode)
|
|
|
|
(defun lean-welcome ()
|
|
(let ((cbuf (current-buffer))
|
|
(buf (get-buffer-create "Lean Welcome"))
|
|
(cpoint (point-min)))
|
|
(set-buffer buf)
|
|
(setq fill-column (window-width))
|
|
(if buffer-read-only (toggle-read-only))
|
|
(erase-buffer)
|
|
(insert "\n\n")
|
|
(insert " ")
|
|
(insert-image lean-logo)
|
|
(setq cpoint (1+ (point)))
|
|
(insert "\n")
|
|
(insert "\n\nPlease check our website periodically for news of later versions")
|
|
(insert "\nat http://leanprover.github.io")
|
|
(insert "\n\nBug reports and suggestions for improvement should be posted at\nhttps://github.com/leanprover/lean/issues")
|
|
(insert "\n\nTo start using Lean, open a .lean or .hlean file")
|
|
(set-buffer-modified-p nil)
|
|
(text-mode)
|
|
(toggle-read-only)
|
|
(goto-char (point-min))
|
|
(switch-to-buffer buf)
|
|
(set-buffer cbuf)
|
|
buf))
|
|
|
|
(lean-welcome)
|