Browse Source

Remove autoload-eval-lazily

master
10sr 4 years ago
parent
commit
050b63fbe0
Signed by: 10sr GPG Key ID: 7BEC428194130EB2
1 changed files with 92 additions and 98 deletions
  1. +92
    -98
      emacs.el

+ 92
- 98
emacs.el View File

@@ -59,41 +59,40 @@ Otherwize hook it."
;; (message "safe-require-or-eval: Trying to require %s" ,feature)
;; (require ,feature nil t)))

;; TODO: Remove: Defining autoload is no more needed for most cases
(defmacro autoload-eval-lazily (feature &optional functions &rest body)
"Define autoloading FEATURE that defines FUNCTIONS.
FEATURE is a symbol. FUNCTIONS is a list of symbols. If FUNCTIONS is nil,
the function same as FEATURE is defined as autoloaded function. BODY is passed
to `eval-after-load'.
After this macro is expanded, this returns the path to library if FEATURE
found, otherwise returns nil."
(declare (indent 2) (debug t))
(let* ((libname (symbol-name (eval feature)))
(libpath (locate-library libname)))
`(progn
(when (locate-library ,libname)
,@(mapcar (lambda (f)
`(unless (fboundp ',f)
(progn
(message "Autoloaded function `%S' defined (%s)"
(quote ,f)
,libpath)
(autoload (quote ,f)
,libname
,(concat "Autoloaded function defined in \""
libpath
"\".")
t))))
(or (eval functions)
`(,(eval feature)))))
(eval-after-load ,feature
(quote (progn
,@body)))
(locate-library ,libname))))

(when (autoload-eval-lazily 'tetris nil
(message "Tetris loaded!"))
(message "Tetris found!"))
;; (defmacro autoload-eval-lazily (feature &optional functions &rest body)
;; "Define autoloading FEATURE that defines FUNCTIONS.
;; FEATURE is a symbol. FUNCTIONS is a list of symbols. If FUNCTIONS is nil,
;; the function same as FEATURE is defined as autoloaded function. BODY is passed
;; to `eval-after-load'.
;; After this macro is expanded, this returns the path to library if FEATURE
;; found, otherwise returns nil."
;; (declare (indent 2) (debug t))
;; (let* ((libname (symbol-name (eval feature)))
;; (libpath (locate-library libname)))
;; `(progn
;; (when (locate-library ,libname)
;; ,@(mapcar (lambda (f)
;; `(unless (fboundp ',f)
;; (progn
;; (message "Autoloaded function `%S' defined (%s)"
;; (quote ,f)
;; ,libpath)
;; (autoload (quote ,f)
;; ,libname
;; ,(concat "Autoloaded function defined in \""
;; libpath
;; "\".")
;; t))))
;; (or (eval functions)
;; `(,(eval feature)))))
;; (eval-after-load ,feature
;; (quote (progn
;; ,@body)))
;; (locate-library ,libname))))

;; (when (autoload-eval-lazily 'tetris nil
;; (message "Tetris loaded!"))
;; (message "Tetris found!"))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; package
@@ -689,7 +688,7 @@ found, otherwise returns nil."
": "))
(prompt-text-mode 1))

(autoload-eval-lazily 'helm nil
(with-eval-after-load 'helm
(defvar helm-map)
(define-key helm-map (kbd "C-h") (kbd "DEL")))

@@ -1175,7 +1174,7 @@ found, otherwise returns nil."
'("\\.dtl\\'" . web-mode))
)

(when (autoload-eval-lazily 'wgrep)
(when (locate-library "wgrep")
(set-variable 'wgrep-auto-save-buffer t)
(with-eval-after-load 'grep
(defvar grep-mode-map)
@@ -1306,7 +1305,7 @@ found, otherwise returns nil."
(lambda ()
(setq imenu-generic-expression
`(("Sections" ";;;\+\n;; \\(.*\\)\n" 1)
,@imenu-generic-expression))))
,@imenu-generic-expression))))
;; TODO: Try paraedit http://daregada.blogspot.com/2012/03/paredit.html

(with-eval-after-load 'compile
@@ -1423,12 +1422,12 @@ found, otherwise returns nil."
;; (when (fboundp 'flycheck-black-check-setup)
;; (flycheck-black-check-setup)))

(when (autoload-eval-lazily 'ilookup)
(when (fboundp 'ilookup-open-word)
(define-key ctl-x-map "d" 'ilookup-open-word))

(set-variable 'ac-ignore-case nil)

(when (autoload-eval-lazily 'term-run '(term-run-shell-command term-run))
(when (fboundp 'term-run-shell-command)
(define-key ctl-x-map "t" 'term-run-shell-command))

(add-to-list 'safe-local-variable-values
@@ -1522,18 +1521,16 @@ found, otherwise returns nil."
'(setq reb-re-syntax 'foreign-regexp)
))

(autoload-eval-lazily 'sql '(sql-mode)
(with-eval-after-load 'sql
(require 'sql-indent nil t))
(add-to-list 'auto-mode-alist
'("\\.hql\\'" . sql-mode))

(when (autoload-eval-lazily 'git-command)
(when (fboundp 'git-command)
(define-key ctl-x-map "g" 'git-command))

;; This keybind cause unexpected call really many many times
;; (when (autoload-eval-lazily 'gited)
;; (define-key ctl-x-map (kbd "C-g") 'gited-list))
(defalias 'gited 'gited-list)
(when (fboundp 'gited-list)
(defalias 'gited 'gited-list))

(when (fboundp 'global-git-commit-mode)
(add-hook 'after-first-visit-hook
@@ -1542,8 +1539,6 @@ found, otherwise returns nil."
(add-hook 'git-commit-setup-hook
'turn-off-auto-fill t))

(autoload-eval-lazily 'sl)

(with-eval-after-load 'rst
(defvar rst-mode-map)
(define-key rst-mode-map (kbd "C-m") 'newline-and-indent))
@@ -1557,7 +1552,7 @@ found, otherwise returns nil."

;; Cannot enable error thrown. Why???
;; https://github.com/m0smith/malabar-mode#Installation
;; (when (autoload-eval-lazily 'malabar-mode)
;; (when (require 'malabar-mode nil t)
;; (add-to-list 'load-path
;; (expand-file-name (concat user-emacs-directory "/cedet")))
;; (require 'cedet-devel-load nil t)
@@ -1622,10 +1617,10 @@ found, otherwise returns nil."

(set-variable 'sh-here-document-word "__EOC__")

(when (autoload-eval-lazily 'adoc-mode
nil
(defvar adoc-mode-map (make-sparse-keymap))
(define-key adoc-mode-map (kbd "C-m") 'newline))
(with-eval-after-load 'adoc-mode
(defvar adoc-mode-map)
(define-key adoc-mode-map (kbd "C-m") 'newline))
(when (fboundp 'adoc-mode)
(setq auto-mode-alist
`(("\\.adoc\\'" . adoc-mode)
("\\.asciidoc\\'" . adoc-mode)
@@ -1640,12 +1635,13 @@ found, otherwise returns nil."
)

;; TODO: check if this is required
(when (autoload-eval-lazily 'groovy-mode nil
(defvar groovy-mode-map (make-sparse-keymap))
(define-key groovy-mode-map "(" 'self-insert-command)
(define-key groovy-mode-map ")" 'self-insert-command)
(define-key groovy-mode-map (kbd "C-m") 'newline-and-indent)
)
(with-eval-after-load 'groovy-mode
(defvar groovy-mode-map)
(define-key groovy-mode-map "(" 'self-insert-command)
(define-key groovy-mode-map ")" 'self-insert-command)
(define-key groovy-mode-map (kbd "C-m") 'newline-and-indent)
)
(when (fboundp 'groovy-mode)
(add-to-list 'auto-mode-alist
'("build\\.gradle\\'" . groovy-mode)))

@@ -1664,7 +1660,7 @@ found, otherwise returns nil."
(with-eval-after-load 'text-mode
(define-key text-mode-map (kbd "C-m") 'newline))

(autoload-eval-lazily 'info nil
(with-eval-after-load 'info
(defvar Info-additional-directory-list)
(dolist (dir (directory-files (concat user-emacs-directory
"info")
@@ -1713,16 +1709,13 @@ found, otherwise returns nil."
(add-to-list 'auto-mode-alist (cons "\\.ol\\'" 'outline-mode))

(add-to-list 'auto-mode-alist (cons "\\.md\\'" 'outline-mode))
(when (autoload-eval-lazily 'markdown-mode
'(markdown-mode gfm-mode)
(defvar gfm-mode-map (make-sparse-keymap))
(define-key gfm-mode-map (kbd "C-m") 'electric-indent-just-newline)
(define-key gfm-mode-map "`" nil) ;; markdown-electric-backquote
)
(with-eval-after-load 'markdown-mode
(defvar gfm-mode-map)
(define-key gfm-mode-map (kbd "C-m") 'electric-indent-just-newline)
(define-key gfm-mode-map "`" nil) ;; markdown-electric-backquote
)
(when (fboundp 'gfm-mode)
(add-to-list 'auto-mode-alist (cons "\\.md\\'" 'gfm-mode))
(set-variable 'markdown-command (or (executable-find "markdown")
(executable-find "markdown.pl")
""))
(add-hook 'markdown-mode-hook
(lambda ()
(outline-minor-mode 1)
@@ -1742,7 +1735,7 @@ found, otherwise returns nil."
(add-to-list 'c-default-style
'(c++-mode . "k&r")))

(autoload-eval-lazily 'js2-mode nil
(with-eval-after-load 'js2-mode
;; currently do not use js2-mode
;; (add-to-list 'auto-mode-alist '("\\.js\\'" . js2-mode))
;; (add-to-list 'auto-mode-alist '("\\.jsm\\'" . js2-mode))
@@ -1822,7 +1815,7 @@ found, otherwise returns nil."
(add-to-list 'auto-mode-alist
'("tox\\.ini\\'" . conf-unix-mode))

(when (autoload-eval-lazily 'toml-mode)
(when (fboundp 'toml-mode)
(add-to-list 'auto-mode-alist
'("/tox\\.ini\\'" . toml-mode))
(add-to-list 'auto-mode-alist
@@ -1831,7 +1824,7 @@ found, otherwise returns nil."
'("/poetry\\.lock\\'" . toml-mode))
)

(when (autoload-eval-lazily 'json-mode)
(when (fboundp 'json-mode)
(add-to-list 'auto-mode-alist
'("/Pipfile\\.lock\\'" . json-mode)))

@@ -1841,7 +1834,7 @@ found, otherwise returns nil."
(add-hook 'before-save-hook' 'gofmt-before-save nil t)
(define-key go-mode-map (kbd "M-.") 'godef-jump)))

(when (autoload-eval-lazily 'k8s-mode)
(when (fboundp 'k8s-mode)
(add-to-list 'auto-mode-alist
'("\\.k8s\\'" . k8s-mode)))

@@ -1854,29 +1847,30 @@ found, otherwise returns nil."
(declare-function bs-refresh "bs")
(declare-function bs-message-without-log "bs")
(declare-function bs--current-config-message "bs")
(when (autoload-eval-lazily 'bs '(bs-show)
(add-to-list 'bs-configurations
'("specials" "^\\*" nil ".*" nil nil))
(add-to-list 'bs-configurations
'("files-and-specials" "^\\*" buffer-file-name ".*" nil nil))
(defvar bs-mode-map)
(defvar bs-current-configuration)
(define-key bs-mode-map (kbd "t")
;; TODO: fix toggle feature
(lambda ()
(interactive)
(if (string= "specials"
bs-current-configuration)
(bs-set-configuration "files")
(bs-set-configuration "specials"))
(bs-refresh)
(bs-message-without-log "%s"
(bs--current-config-message))))
;; (setq bs-configurations (list
;; '("processes" nil get-buffer-process ".*" nil nil)
;; '("files-and-scratch" "^\\*scratch\\*$" nil nil
;; bs-visits-non-file bs-sort-buffer-interns-are-last)))
)
(with-eval-after-load 'bs
(add-to-list 'bs-configurations
'("specials" "^\\*" nil ".*" nil nil))
(add-to-list 'bs-configurations
'("files-and-specials" "^\\*" buffer-file-name ".*" nil nil))
(defvar bs-mode-map)
(defvar bs-current-configuration)
(define-key bs-mode-map (kbd "t")
;; TODO: fix toggle feature
(lambda ()
(interactive)
(if (string= "specials"
bs-current-configuration)
(bs-set-configuration "files")
(bs-set-configuration "specials"))
(bs-refresh)
(bs-message-without-log "%s"
(bs--current-config-message))))
;; (setq bs-configurations (list
;; '("processes" nil get-buffer-process ".*" nil nil)
;; '("files-and-scratch" "^\\*scratch\\*$" nil nil
;; bs-visits-non-file bs-sort-buffer-interns-are-last)))
)
(when (fboundp 'bs-show)
(defalias 'list-buffers 'bs-show)
(set-variable 'bs-default-configuration "files-and-specials")
(set-variable 'bs-default-sort-name "by nothing")
@@ -2132,12 +2126,12 @@ ARG is num to show, or defaults to 7."
(with-eval-after-load 'dired
(define-key dired-mode-map "P" 'pack-dired-dwim)))

(when (autoload-eval-lazily 'dired-list-all-mode)
(when (fboundp 'dired-list-all-mode)
(setq dired-listing-switches "-lhF")
(with-eval-after-load 'dired
(define-key dired-mode-map "a" 'dired-list-all-mode))))

(when (autoload-eval-lazily 'dired-filter)
(when (fboundp 'dired-filter-mode)
(add-hook 'dired-mode-hook
'dired-filter-mode))
(set-variable 'dired-filter-stack nil)


Loading…
Cancel
Save