all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Eduardo Ochs <eduardoochs@gmail.com>
To: Psionic K <psionik@positron.solutions>
Cc: Emacs developers <emacs-devel@gnu.org>
Subject: Re: Proposing elisp-eval-target for eval-last-sexp and related commands
Date: Tue, 17 Aug 2021 14:30:26 -0300	[thread overview]
Message-ID: <CADs++6hFFTSgzEScKgCMwhSh=R419tWNtbUn-xuwRUrPgv7xpQ@mail.gmail.com> (raw)
In-Reply-To: <CADQMGAT65nAGKFB4PWRh7FpH15fGk1sXn6NK9tXEh6zf-L_kjA@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 1631 bytes --]

Have you considered the possibility of implementing a _variant_ of
eval-last-sexp that does what you want? That's what I do in eev... take a
look at the section "0. How to use this" of this tutorial:
http://angg.twu.net/eev-intros/find-lexical-intro.html

  Cheers,
    Eduardo Ochs
    http://angg.twu.net/#eev



On Tue, 17 Aug 2021, 13:41 Psionic K, <psionik@positron.solutions> wrote:

> Proposing to patch the eslip module so that if a buffer-local
> `elisp-eval-target` has been set, `eval-last-sexp` and similar commands
> will execute lisp in the context of another buffer.
>
> The use case is when developing elisp to operate on non-elisp buffers,
> interacting with functionality for other languages such as when using LSP.
>
> This change would bring buffer-based development in line with ielm's
> `ielm-change-working-buffer` behavior.
>
> While the `eval-last-sexp` commands are very ergonomic, there is no way to
> direct them at another buffer without wrapping the last sexp in
> `with-current-buffer`.  Advising deep into `eval-last-sexp` is difficult
> because we must call `set-buffer` after computing the elisp we want to
> evaluate.
>
> With this support available, the users can then update the buffer local in
> shortcut commands for buffer-based development of elisp for other modes.
>
> I intend to develop a patch.  The main difficulty I can identify so far is
> setting the buffer at the correct points so that the setup for evaluation
> continues to occur in the correct context.
>
> --
> Psionic K <psionik@positron.solutions>
> Software Engineer
>
> *Positron Solutions <https://positron.solutions>*
>

[-- Attachment #2: Type: text/html, Size: 2848 bytes --]

  reply	other threads:[~2021-08-17 17:30 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-17 16:11 Proposing elisp-eval-target for eval-last-sexp and related commands Psionic K
2021-08-17 17:30 ` Eduardo Ochs [this message]
2021-08-18  5:22   ` Psionic K
2021-08-17 18:10 ` Stefan Monnier
2021-08-18  5:19   ` Psionic K
2021-08-21 14:37     ` Stefan Monnier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CADs++6hFFTSgzEScKgCMwhSh=R419tWNtbUn-xuwRUrPgv7xpQ@mail.gmail.com' \
    --to=eduardoochs@gmail.com \
    --cc=emacs-devel@gnu.org \
    --cc=psionik@positron.solutions \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.