* Re: About traditional Lisp primitives [not found] <mailman.21530.1362559820.855.help-gnu-emacs@gnu.org> @ 2013-03-06 10:39 ` Barry Margolin 2013-03-07 10:54 ` gvfs-open in eshell/shell-command Phillip Lord 0 siblings, 1 reply; 5+ messages in thread From: Barry Margolin @ 2013-03-06 10:39 UTC (permalink / raw To: help-gnu-emacs In article <mailman.21530.1362559820.855.help-gnu-emacs@gnu.org>, Xue Fuqiao <xfq.free@gmail.com> wrote: > In (info "(elisp) Coding Conventions"): > > This recommendation applies even to names for traditional Lisp > primitives that are not primitives in Emacs Lisp--such as > `copy-list'. > > I don't know what "traditional Lisp primitives" means here. What are > the differences between traditional Lisp primitives and primitives in > Emacs Lisp? Are they implemented in C? What they mean is a function in a traditional Lisp dialect (e.g. Common Lisp or Maclisp) that doesn't exist in Emacs Lisp. If you want to use such a function in your own package, you need to write it yourself -- and the recommendation is that you personalize it with a prefix, so you don't conflict with another package that has a similar need. -- Barry Margolin, barmar@alum.mit.edu Arlington, MA *** PLEASE post questions in newsgroups, not directly to me *** ^ permalink raw reply [flat|nested] 5+ messages in thread
* gvfs-open in eshell/shell-command 2013-03-06 10:39 ` About traditional Lisp primitives Barry Margolin @ 2013-03-07 10:54 ` Phillip Lord 2013-03-12 13:48 ` Michael Albinus [not found] ` <mailman.21924.1363096112.855.help-gnu-emacs@gnu.org> 0 siblings, 2 replies; 5+ messages in thread From: Phillip Lord @ 2013-03-07 10:54 UTC (permalink / raw To: help-gnu-emacs I'm attempting to get gvfs-open to work in eshell. This is a little gnome utility that opens a file in what ever application it's supposed to be launched in. I use it frequently as I normally navigate directories at the terminal, then use this to DWIM with a file. In *shell* this works fine. You just run the command, everybody is happy. In *eshell* not a thing. Nothing pops up, nothing appears to happen. M-x shell-command does work, although Emacs halts while whatever application it launches exists. M-x shell-command with an "&" fails, presumable for the same reason as *eshell* does. On the command line, gvfs-open returns immediately, and does not block which the application is open. So, clearly it's not eshell per se. I am guessing that child processes are dying when gvfs-open closes. So far my best attempt is: (defun eshell/open (&rest args) (shell-command (format "gvfs-open %s;sleep 3d &" (mapconcat 'identity args " ")))) Not good. Stuck, no ideas left, help gratefully recieved. Phil ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: gvfs-open in eshell/shell-command 2013-03-07 10:54 ` gvfs-open in eshell/shell-command Phillip Lord @ 2013-03-12 13:48 ` Michael Albinus [not found] ` <mailman.21924.1363096112.855.help-gnu-emacs@gnu.org> 1 sibling, 0 replies; 5+ messages in thread From: Michael Albinus @ 2013-03-12 13:48 UTC (permalink / raw To: Phillip Lord; +Cc: help-gnu-emacs phillip.lord@newcastle.ac.uk (Phillip Lord) writes: > I'm attempting to get gvfs-open to work in eshell. This is a little > gnome utility that opens a file in what ever application it's supposed > to be launched in. I use it frequently as I normally navigate > directories at the terminal, then use this to DWIM with a file. > > In *shell* this works fine. You just run the command, everybody is > happy. In *eshell* not a thing. Nothing pops up, nothing appears to > happen. Try in both *shell* and *eshell* the command with debug output: G_DBUS_DEBUG=all gvfs-open ~/.emacs When you compare the output, it starts to differ significantly when it comes to file descriptors. I have no clue, why. Maybe you can find something more. > So far my best attempt is: > > (defun eshell/open (&rest args) > (shell-command (format "gvfs-open %s;sleep 3d &" > (mapconcat 'identity args " ")))) > > Not good. When I wrap the gvfs-open call into a shell in eshell, I get ~ $ *sh -c gvfs-open ~/.emacs gvfs-open: missing locations Try "gvfs-open --help" for more information. I don't know gvfs-open by heart, and I also don't know whether this is related to the problem. > Stuck, no ideas left, help gratefully recieved. > > Phil Best regards, Michael. ^ permalink raw reply [flat|nested] 5+ messages in thread
[parent not found: <mailman.21924.1363096112.855.help-gnu-emacs@gnu.org>]
* Re: gvfs-open in eshell/shell-command [not found] ` <mailman.21924.1363096112.855.help-gnu-emacs@gnu.org> @ 2013-03-14 17:42 ` politza 2013-03-18 12:19 ` Phillip Lord 0 siblings, 1 reply; 5+ messages in thread From: politza @ 2013-03-14 17:42 UTC (permalink / raw To: gnu.emacs.help; +Cc: help-gnu-emacs, Phillip Lord On Tuesday, March 12, 2013 2:48:12 PM UTC+1, Michael Albinus wrote: > phillip.lord@newcastle.ac.uk (Phillip Lord) writes: > > > > > I'm attempting to get gvfs-open to work in eshell. Try setting/letting `process-connection-type' to nil . -ap ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: gvfs-open in eshell/shell-command 2013-03-14 17:42 ` politza @ 2013-03-18 12:19 ` Phillip Lord 0 siblings, 0 replies; 5+ messages in thread From: Phillip Lord @ 2013-03-18 12:19 UTC (permalink / raw To: politza; +Cc: help-gnu-emacs, gnu.emacs.help <politza@googlemail.com> writes: > On Tuesday, March 12, 2013 2:48:12 PM UTC+1, Michael Albinus wrote: >> phillip.lord@newcastle.ac.uk (Phillip Lord) writes: >> >> >> >> > I'm attempting to get gvfs-open to work in eshell. > > Try setting/letting `process-connection-type' to nil . ;; process-connection-type is essential or nothing works. What it does? No idea. (defun eshell/open (&rest args) ;; need a delay in here or it doesn't work. Why? No idea! (let ((process-connection-type nil)) (setq proc (start-process "eshell-open" phil-eshell-buffer shell-file-name shell-command-switch (format "gvfs-open %s" (mapconcat 'identity args " "))))) (set-process-sentinel proc 'phil-open-sentinel) (set-process-filter proc 'comint-output-filter)) (defun phil-open-sentinel (&rest args) ) And this works perfectly. So, yes, process-connection-type seems to be the trick. Thanks very much for the suggestion. Phil ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2013-03-18 12:19 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- [not found] <mailman.21530.1362559820.855.help-gnu-emacs@gnu.org> 2013-03-06 10:39 ` About traditional Lisp primitives Barry Margolin 2013-03-07 10:54 ` gvfs-open in eshell/shell-command Phillip Lord 2013-03-12 13:48 ` Michael Albinus [not found] ` <mailman.21924.1363096112.855.help-gnu-emacs@gnu.org> 2013-03-14 17:42 ` politza 2013-03-18 12:19 ` Phillip Lord
Code repositories for project(s) associated with this external index https://git.savannah.gnu.org/cgit/emacs.git https://git.savannah.gnu.org/cgit/emacs/org-mode.git This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.