From 050b63fbe06e57b8e8033673b48e8e05cfff9a44 Mon Sep 17 00:00:00 2001 From: 10sr <8.slashes@gmail.com> Date: Wed, 22 Jan 2020 19:55:28 +0900 Subject: [PATCH] Remove autoload-eval-lazily --- emacs.el | 190 +++++++++++++++++++++++++++---------------------------- 1 file changed, 92 insertions(+), 98 deletions(-) diff --git a/emacs.el b/emacs.el index 628f742..318af50 100644 --- a/emacs.el +++ b/emacs.el @@ -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)