Subject: bug#68487: [PATCH] Make jump commands usable for all skeletons

From: Eli Zaretskii <[email-masked]>
Date: Sat, 27 Jan 2024 11:13:00 +0200

> From: Martin Marshall <[email-masked]>
> Date: Mon, 15 Jan 2024 15:45:23 -0500
> 
> Dear Emacs Maintainers,
> 
> I noticed the following item in the Emacs TODO file:
> 
> > ** Improve the "code snippets" support
> > Consolidate skeleton.el, tempo.el, and expand.el (any other?) and then
> > advertise/use/improve it.
> 
> To that end, here's a patch which allows using expand.el's
> `expand-jump-to-next-slot' ("C-x a n") and
> `expand-jump-to-previous-slot' ("C-x a p") commands with all
> skeletons.
> 
> In the current Emacs release, an expanded skeleton adds the locations
> of `@' symbols to `skeleton-positions' list.  One could theoretically
> convert these positions to markers and write commands for navigating
> to the locations.  Fortunately, expand.el already implements this
> behavior.  The only problem is that it's limited to skeletons being
> expanded as abbrevs.  Skeletons invoked by a keybinding, menu entry,
> or "M-x" can't use expand.el's jumping commands.
> 
> This patch changes that by updating `define-skeleton', so that
> skeleton commands will update the list of markers in `expand-pos'
> whenever called outside of `expand-abbrev'.
> 
> What do you think?

Martin,

Is this patch still relevant, or you intend to resolve this while
consolidating the related packages, perhaps based on yasnippet?

Thanks.