* 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
* 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.