Rename doom-modeline-version to doom-modeline-env-version.

This commit is contained in:
Vincent Zhang 2019-02-18 18:57:16 +08:00
parent 11481cc647
commit 81635fdf36
4 changed files with 40 additions and 39 deletions

View file

@ -179,7 +179,7 @@ Strongly recommend to use
(setq doom-modeline-github-interval (* 30 60)) (setq doom-modeline-github-interval (* 30 60))
;; Whether display environment version or not. ;; Whether display environment version or not.
(setq doom-modeline-version t) (setq doom-modeline-env-version t)
;; Whether display mu4e notifications or not. Requires `mu4e-alert' package. ;; Whether display mu4e notifications or not. Requires `mu4e-alert' package.
(setq doom-modeline-mu4e t) (setq doom-modeline-mu4e t)

View file

@ -122,8 +122,9 @@ The icons may not be showed correctly in terminal and on Windows.")
(defvar doom-modeline-github-interval (* 30 60) (defvar doom-modeline-github-interval (* 30 60)
"The interval of checking github.") "The interval of checking github.")
(defvar doom-modeline-version t (defvar doom-modeline-env-version t
"Whether display environment version or not.") "Whether display environment version or not.")
(define-obsolete-variable-alias 'doom-modeline-version 'doom-modeline-env-version "1.7.4")
(defvar doom-modeline-mu4e t (defvar doom-modeline-mu4e t
"Whether display mu4e notifications or not. Requires `mu4e-alert' package.") "Whether display mu4e notifications or not. Requires `mu4e-alert' package.")

View file

@ -31,32 +31,32 @@
(require 'doom-modeline-core) (require 'doom-modeline-core)
;; Show version string for multi-version managers like rvm, rbenv, pyenv, etc. ;; Show version string for multi-version managers like rvm, rbenv, pyenv, etc.
(defvar-local doom-modeline-env-version nil (defvar-local doom-modeline-env--version nil
"The version to display with major-mode in mode-line. "The version to display with major-mode in mode-line.
Example: \"2.6.0\"") Example: \"2.6.0\"")
(defvar-local doom-modeline-env-command nil (defvar-local doom-modeline-env--command nil
"A program that we're looking to extract version information from. "A program that we're looking to extract version information from.
Example: \"ruby\"") Example: \"ruby\"")
(defvar-local doom-modeline-env-command-args nil (defvar-local doom-modeline-env--command-args nil
"A list of arguments to pass to `doom-modeline-env-command` to extract the version from. "A list of arguments to pass to `doom-modeline-env--command` to extract the version from.
Example: '(\"--version\") ") Example: '(\"--version\") ")
(defvar-local doom-modeline-env-parser nil (defvar-local doom-modeline-env--parser nil
"A function that returns version number from a programs --version (or similar) command. "A function that returns version number from a programs --version (or similar) command.
Example: 'doom-modeline-env--ruby") Example: 'doom-modeline-env--ruby")
(defun doom-modeline-update-env () (defun doom-modeline-update-env ()
"Update environment info on mode-line." "Update environment info on mode-line."
(when (and doom-modeline-version (when (and doom-modeline-env-version
doom-modeline-env-command doom-modeline-env--command
(executable-find doom-modeline-env-command) (executable-find doom-modeline-env--command)
doom-modeline-env-command-args doom-modeline-env--command-args
doom-modeline-env-parser) doom-modeline-env--parser)
(let ((default-directory (doom-modeline-project-root))) (let ((default-directory (doom-modeline-project-root)))
(doom-modeline-env--get doom-modeline-env-command (doom-modeline-env--get doom-modeline-env--command
doom-modeline-env-command-args doom-modeline-env--command-args
(lambda (prog-version) (lambda (prog-version)
(setq doom-modeline-env-version (setq doom-modeline-env--version
(funcall doom-modeline-env-parser prog-version))))))) (funcall doom-modeline-env--parser prog-version)))))))
(add-hook 'find-file-hook #'doom-modeline-update-env) (add-hook 'find-file-hook #'doom-modeline-update-env)
(with-no-warnings (with-no-warnings
@ -148,40 +148,40 @@ Example:
(add-hook 'python-mode-hook (add-hook 'python-mode-hook
(lambda () (lambda ()
(cond ((and (fboundp 'pipenv-project-p) (pipenv-project-p) (executable-find "pipenv")) (cond ((and (fboundp 'pipenv-project-p) (pipenv-project-p) (executable-find "pipenv"))
(setq doom-modeline-env-parser 'doom-modeline-env--python) (setq doom-modeline-env--parser 'doom-modeline-env--python)
(setq doom-modeline-env-command "pipenv") (setq doom-modeline-env--command "pipenv")
(setq doom-modeline-env-command-args '("run" "python" "--version"))) (setq doom-modeline-env--command-args '("run" "python" "--version")))
((and doom-modeline-python-executable ((and doom-modeline-python-executable
(executable-find doom-modeline-python-executable)) (executable-find doom-modeline-python-executable))
(setq doom-modeline-env-parser 'doom-modeline-env--python) (setq doom-modeline-env--parser 'doom-modeline-env--python)
(setq doom-modeline-env-command doom-modeline-python-executable) (setq doom-modeline-env--command doom-modeline-python-executable)
(setq doom-modeline-env-command-args '("--version")))))) (setq doom-modeline-env--command-args '("--version"))))))
(add-hook 'ruby-mode-hook (add-hook 'ruby-mode-hook
(lambda () (lambda ()
(setq doom-modeline-env-command "ruby") (setq doom-modeline-env--command "ruby")
(setq doom-modeline-env-command-args '("--version")) (setq doom-modeline-env--command-args '("--version"))
(setq doom-modeline-env-parser 'doom-modeline-env--ruby))) (setq doom-modeline-env--parser 'doom-modeline-env--ruby)))
(add-hook 'perl-mode-hook (add-hook 'perl-mode-hook
(lambda () (lambda ()
(setq doom-modeline-env-command "perl") (setq doom-modeline-env--command "perl")
(setq doom-modeline-env-command-args '("--version")) (setq doom-modeline-env--command-args '("--version"))
(setq doom-modeline-env-parser 'doom-modeline-env--perl))) (setq doom-modeline-env--parser 'doom-modeline-env--perl)))
(add-hook 'go-mode-hook (add-hook 'go-mode-hook
(lambda () (lambda ()
(setq doom-modeline-env-command "go") (setq doom-modeline-env--command "go")
(setq doom-modeline-env-command-args '("version")) (setq doom-modeline-env--command-args '("version"))
(setq doom-modeline-env-parser 'doom-modeline-env--go))) (setq doom-modeline-env--parser 'doom-modeline-env--go)))
(add-hook 'elixir-mode-hook (add-hook 'elixir-mode-hook
(lambda () (lambda ()
(setq doom-modeline-env-command "iex") (setq doom-modeline-env--command "iex")
(setq doom-modeline-env-command-args '("--version")) (setq doom-modeline-env--command-args '("--version"))
(setq doom-modeline-env-parser 'doom-modeline-env--elixir))) (setq doom-modeline-env--parser 'doom-modeline-env--elixir)))
(add-hook 'rust-mode-hook (add-hook 'rust-mode-hook
(lambda () (lambda ()
(setq doom-modeline-env-command "rustc") (setq doom-modeline-env--command "rustc")
(setq doom-modeline-env-command-args '("--version")) (setq doom-modeline-env--command-args '("--version"))
(setq doom-modeline-env-parser 'doom-modeline-env--rustc))) (setq doom-modeline-env--parser 'doom-modeline-env--rustc)))
(provide 'doom-modeline-env) (provide 'doom-modeline-env)

View file

@ -392,8 +392,8 @@ mouse-2: Show help for major mode\n\
mouse-3: Toggle minor modes" mouse-3: Toggle minor modes"
mouse-face mode-line-highlight mouse-face mode-line-highlight
local-map ,mode-line-major-mode-keymap)) local-map ,mode-line-major-mode-keymap))
(when (and doom-modeline-version doom-modeline-env-version) (when (and doom-modeline-env-version doom-modeline-env--version)
(format " %s" doom-modeline-env-version)) (format " %s" doom-modeline-env--version))
(and (boundp 'text-scale-mode-amount) (and (boundp 'text-scale-mode-amount)
(/= text-scale-mode-amount 0) (/= text-scale-mode-amount 0)
(format (format