File: debian-changes

package info (click to toggle)
emacs-openwith 0.8g-7
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 88 kB
  • sloc: lisp: 133; makefile: 4
file content (47 lines) | stat: -rw-r--r-- 2,136 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
The Debian packaging of emacs-openwith is maintained in git, using the
merging workflow described in dgit-maint-merge(7).  There isn't a
patch queue that can be represented as a quilt series.

A detailed breakdown of the changes is available from their
canonical representation - git commits in the packaging repository.
For example, to see the changes made by the Debian maintainer in
the first upload of upstream version 1.2.3, you could use:

    % git clone https://git.dgit.debian.org/emacs-openwith
    % cd emacs-openwith
    % git log --oneline 1.2.3..debian/1.2.3-1 -- . ':!debian'

(If you have dgit, use `dgit clone emacs-openwith`, rather than plain
`git clone`.)

A single combined diff, containing all the changes, follows.
--- emacs-openwith-0.8g.orig/openwith.el
+++ emacs-openwith-0.8g/openwith.el
@@ -69,6 +69,18 @@ where the symbol 'file' is replaced by t
   :group 'openwith
   :type 'boolean)
 
+(defun openwith-open (command arglist)
+  "Run external command COMMAND, in such a way that it is
+  disowned from the parent Emacs process.  If Emacs dies, the
+  process spawned here lives on.  ARGLIST is a list of strings,
+  each an argument to COMMAND."
+  (let ((shell-file-name "/bin/sh"))
+    (start-process-shell-command
+     "openwith-process" nil
+     (concat "exec nohup " command " "
+             (mapconcat 'shell-quote-argument arglist " ")
+             " >/dev/null"))))
+
 (defun openwith-file-handler (operation &rest args)
   "Open file with external program, if an association is configured."
   (when (and openwith-mode (not (buffer-modified-p)) (zerop (buffer-size)))
@@ -86,7 +98,7 @@ where the symbol 'file' is replaced by t
             (when (or (not openwith-confirm-invocation)
                       (y-or-n-p (format "%s %s? " (cadr oa)
                                         (mapconcat #'identity params " "))))
-              (apply #'start-process "openwith-process" nil (cadr oa) params)
+              (openwith-open (cadr oa) params)
               (kill-buffer nil)
               ;; inhibit actions that would follow the regular
               ;; insertion of file contents