emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/ssh-deploy 93a0e18 128/133: Resolved hydra declaration


From: Stefan Monnier
Subject: [elpa] externals/ssh-deploy 93a0e18 128/133: Resolved hydra declaration if hydra is not installed
Date: Sat, 27 Mar 2021 14:48:58 -0400 (EDT)

branch: externals/ssh-deploy
commit 93a0e189a06d49b03627c65fe77652bee9f129d4
Author: Christian Johansson <christian@cvj.se>
Commit: Christian Johansson <christian@cvj.se>

    Resolved hydra declaration if hydra is not installed
---
 Makefile            |  2 +-
 ssh-deploy-hydra.el | 78 +++++++++++++++++++++++++----------------------------
 ssh-deploy.el       |  2 +-
 3 files changed, 38 insertions(+), 44 deletions(-)

diff --git a/Makefile b/Makefile
index 2f607b6..8a456d9 100644
--- a/Makefile
+++ b/Makefile
@@ -5,7 +5,7 @@ endif
 
 EMACS_CMD := $(EMACS) -Q -batch -L .
 
-EL  := ssh-deploy-diff-mode.el ssh-deploy-test.el ssh-deploy.el
+EL  := ssh-deploy-diff-mode.el ssh-deploy-hydra.el ssh-deploy-test.el 
ssh-deploy.el
 ELC := $(EL:.el=.elc)
 
 .PHONY: test
diff --git a/ssh-deploy-hydra.el b/ssh-deploy-hydra.el
index 2f406e2..b3b21e3 100644
--- a/ssh-deploy-hydra.el
+++ b/ssh-deploy-hydra.el
@@ -28,31 +28,21 @@
 ;;; Code:
 
 
-(autoload 'ssh-deploy-upload-handler-forced "ssh-deploy")
-(autoload 'ssh-deploy-upload-handler "ssh-deploy")
-(autoload 'ssh-deploy-download-handler "ssh-deploy")
-(autoload 'ssh-deploy-delete-handler "ssh-deploy")
-(autoload 'ssh-deploy-diff-handler "ssh-deploy")
-(autoload 'ssh-deploy-remote-terminal-eshell-base-handler "ssh-deploy")
-(autoload 'ssh-deploy-remote-terminal-eshell-handler "ssh-deploy")
-(autoload 'ssh-deploy-remote-terminal-shell-base-handler "ssh-deploy")
-(autoload 'ssh-deploy-remote-terminal-shell-handler "ssh-deploy")
-(autoload 'ssh-deploy-remote-changes-handler "ssh-deploy")
-(autoload 'ssh-deploy-rename-handler "ssh-deploy")
-(autoload 'ssh-deploy-browse-remote-base-handler "ssh-deploy")
-(autoload 'ssh-deploy-browse-remote-handler "ssh-deploy")
-(autoload 'ssh-deploy-open-remote-file-handler "ssh-deploy")
-(autoload 'ssh-deploy-remote-sql-mysql-handler "ssh-deploy")
-(autoload 'ssh-deploy-run-deploy-script-handler "ssh-deploy")
-
-(require 'hydra)
+(require 'ssh-deploy)
 
-;;;###autoload
-(defun ssh-deploy-hydra (shortcut)
-  "Attach hydra at SHORTCUT."
-  (when (fboundp 'defhydra)
-    (defhydra ssh-deploy-hydra (:color red :hint nil)
-      "
+(defmacro ssh-deploy--fboundp-macro (name body)
+  "Expand to BODY if NAME is bound.
+Takes care of byte-compilation issues where the `byte-code' for the latter 
could signal an error if it has been compiled with Emacs 24.1 and is then later 
run by Emacs 24.5."
+  (declare (indent 2) (debug (symbolp form &rest form)))
+  (if (fboundp name)
+      body
+    `(when (fboundp ',name)
+       (eval ',body))))
+
+(ssh-deploy--fboundp-macro
+ defhydra
+ (defhydra ssh-deploy-hydra (:color red :hint nil)
+   "
     SSH Deploy Menu
     
     _u_: Upload                              _f_: Force Upload
@@ -67,24 +57,28 @@
     _o_: Open current file on remote         _m_: Open sql-mysql on remote
     _s_: Run deploy script
     "
-      ("f" #'ssh-deploy-upload-handler-forced)
-      ("u" #'ssh-deploy-upload-handler)
-      ("d" #'ssh-deploy-download-handler)
-      ("D" #'ssh-deploy-delete-handler)
-      ("x" #'ssh-deploy-diff-handler)
-      ("t" #'ssh-deploy-remote-terminal-eshell-base-handler)
-      ("T" #'ssh-deploy-remote-terminal-eshell-handler)
-      ("h" #'ssh-deploy-remote-terminal-shell-base-handler)
-      ("H" #'ssh-deploy-remote-terminal-shell-handler)
-      ("e" #'ssh-deploy-remote-changes-handler)
-      ("R" #'ssh-deploy-rename-handler)
-      ("b" #'ssh-deploy-browse-remote-base-handler)
-      ("B" #'ssh-deploy-browse-remote-handler)
-      ("o" #'ssh-deploy-open-remote-file-handler)
-      ("m" #'ssh-deploy-remote-sql-mysql-handler)
-      ("s" #'ssh-deploy-run-deploy-script-handler))
-    (when (fboundp 'ssh-deploy-hydra/body)
-      (global-set-key (kbd shortcut) #'ssh-deploy-hydra/body))))
+   ("f" #'ssh-deploy-upload-handler-forced)
+   ("u" #'ssh-deploy-upload-handler)
+   ("d" #'ssh-deploy-download-handler)
+   ("D" #'ssh-deploy-delete-handler)
+   ("x" #'ssh-deploy-diff-handler)
+   ("t" #'ssh-deploy-remote-terminal-eshell-base-handler)
+   ("T" #'ssh-deploy-remote-terminal-eshell-handler)
+   ("h" #'ssh-deploy-remote-terminal-shell-base-handler)
+   ("H" #'ssh-deploy-remote-terminal-shell-handler)
+   ("e" #'ssh-deploy-remote-changes-handler)
+   ("R" #'ssh-deploy-rename-handler)
+   ("b" #'ssh-deploy-browse-remote-base-handler)
+   ("B" #'ssh-deploy-browse-remote-handler)
+   ("o" #'ssh-deploy-open-remote-file-handler)
+   ("m" #'ssh-deploy-remote-sql-mysql-handler)
+   ("s" #'ssh-deploy-run-deploy-script-handler)))
+
+;;;###autoload
+(defun ssh-deploy-hydra (shortcut)
+  "Attach hydra at SHORTCUT."
+  (when (fboundp 'ssh-deploy-hydra/body)
+    (global-set-key (kbd shortcut) #'ssh-deploy-hydra/body)))
 
 (provide 'ssh-deploy-hydra)
 ;;; ssh-deploy-hydra.el ends here
diff --git a/ssh-deploy.el b/ssh-deploy.el
index 50c53b0..64d57b7 100644
--- a/ssh-deploy.el
+++ b/ssh-deploy.el
@@ -5,7 +5,7 @@
 ;; Author: Christian Johansson <christian@cvj.se>
 ;; Maintainer: Christian Johansson <christian@cvj.se>
 ;; Created: 5 Jul 2016
-;; Modified: 16 Sep 2019
+;; Modified: 17 Sep 2019
 ;; Version: 3.1.10
 ;; Keywords: tools, convenience
 ;; URL: https://github.com/cjohansson/emacs-ssh-deploy



reply via email to

[Prev in Thread] Current Thread [Next in Thread]