all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [ELPA] New package: shelisp
@ 2019-04-07  1:21 Michael Mauger
  2019-04-11  0:54 ` Troy Hinckley
  2019-04-16  1:35 ` Michael Mauger
  0 siblings, 2 replies; 5+ messages in thread
From: Michael Mauger @ 2019-04-07  1:21 UTC (permalink / raw)
  To: emacs-devel@gnu.org

shelisp --- execute elisp in shell

Comint process (likely shell-mode) can write out Emacs Lisp
expressions and have them executed.

When the shell process writes out a string of the form:
  \e_#EMACS# elisp-expr \a

Where, "elisp-expr" is a valid elisp expression.  The elisp
expression is executed as if you had invoked the function
within Emacs itself.  The elisp expression may include a call to
the function `f' which will expand the filename parameter into an
appropriate filename for Emacs using the appropriate Tramp prefix
if necessary.

This script also defines an Alist variable that creates shell
commands and the `printf'-style format to generate the full elisp
expression with command parameters substituted into the command.  A
function is placed in the `shell-mode-hook' to actually create the
shell functions and aliases to format the elisp expressions and
embed them in an escape sequence so that they are detected and
executed.

In most usage this mode merely allows you to type "e filename"
rather than "C-x C-f filename" which isn't much of a savings.
However, with this mode enabled, you can write shell scripts to
invoke Emacs Lisp functions.  But beware, the shell script will not
wait for completion of the elisp expression, nor return anything
back.

This package gives the illusion of having emacsclient on any host
in any shell-mode session.

--
MICHAEL@MAUGER.COM // FSF and EFF member // GNU Emacs sql.el maintainer





^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2019-04-16  2:05 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-04-07  1:21 [ELPA] New package: shelisp Michael Mauger
2019-04-11  0:54 ` Troy Hinckley
2019-04-11  1:13   ` Michael Mauger
2019-04-16  1:35 ` Michael Mauger
2019-04-16  2:05   ` Michael Heerdegen

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.