mirror of https://github.com/skeeto/enchive.git
enchive-mode.el: choose major mode without '.enchive' suffix (#13)
parent
ff83f9259e
commit
5959e29b41
|
@ -16,9 +16,12 @@
|
||||||
(defcustom enchive-program-name "enchive"
|
(defcustom enchive-program-name "enchive"
|
||||||
"Path to the locally installed enchive binary.")
|
"Path to the locally installed enchive binary.")
|
||||||
|
|
||||||
(defvar enchive-handler-entry (cons "\\.enchive$" #'enchive-file-handler)
|
(defvar enchive-handler-entry (cons "\\.enchive\\'" #'enchive-file-handler)
|
||||||
"Entry for `enchive-mode' in `file-name-handler-alist'.")
|
"Entry for `enchive-mode' in `file-name-handler-alist'.")
|
||||||
|
|
||||||
|
(defvar enchive-auto-mode-entry (list "\\.enchive\\'" nil 'enchive)
|
||||||
|
"Entry for `enchive-mode' in `auto-mode-alist'.")
|
||||||
|
|
||||||
(defun enchive-file-handler (operation &rest args)
|
(defun enchive-file-handler (operation &rest args)
|
||||||
"Handler for `file-name-handler-alist' for automatic encrypt/decrypt."
|
"Handler for `file-name-handler-alist' for automatic encrypt/decrypt."
|
||||||
(let ((file-name-handler-alist ()))
|
(let ((file-name-handler-alist ()))
|
||||||
|
@ -41,9 +44,13 @@
|
||||||
:global t
|
:global t
|
||||||
(setf file-name-handler-alist
|
(setf file-name-handler-alist
|
||||||
(delq enchive-handler-entry file-name-handler-alist))
|
(delq enchive-handler-entry file-name-handler-alist))
|
||||||
(if enchive-mode
|
(setf auto-mode-alist
|
||||||
(setf file-name-handler-alist
|
(delq enchive-auto-mode-entry auto-mode-alist))
|
||||||
(cons enchive-handler-entry file-name-handler-alist))))
|
(when enchive-mode
|
||||||
|
(setf file-name-handler-alist
|
||||||
|
(cons enchive-handler-entry file-name-handler-alist))
|
||||||
|
(setf auto-mode-alist
|
||||||
|
(cons enchive-auto-mode-entry auto-mode-alist))))
|
||||||
|
|
||||||
(provide 'enchive-mode)
|
(provide 'enchive-mode)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue