Age | Commit message (Collapse) | Author |
|
Magit switched to Transient for its popups a while go. Magit Popup is
still around for third-party libraries that may use it, but it's not
actively developed.
At the moment, this switch is trading one external library for another
(improved) one. However, Transient will ship with Emacs starting with
the upcoming 28.1 release.
Message-Id: <20220222030207.204401-2-kyle@kyleam.com>
|
|
public-inbox has started to drop dates from its copyright lines,
pointing to the recommendation at
https://www.linuxfoundation.org/blog/copyright-notices-in-open-source-software-projects/
I regularly fail to keep copyright lines up to date, so I'll gladly
follow suit.
Drop the dates and change the copyright holder to (almost match) the
variants recommended in the above article.
|
|
|
|
|
|
|
|
Register "container" as both a field key and a top-level command
because an example of both is present in the Snakemake docs.
Reported-by: Nicholas Knoblauch <knoblauch.nicholas@gene.com>
Message-Id: <87eelcak64.fsf@kyleam.com>
|
|
|
|
|
|
|
|
|
|
In Emacs 27, specifically 36b64e087e (Add
'font-lock-maximum-decoration' levels for Python, 2018-07-19),
python-font-lock-keywords was changed to a list of symbols that define
different fontification levels, so we can no longer simply tack
snakemake-font-lock-keywords onto it.
Instead define a set of levels that mirrors Python mode's. For
Snakemake mode, the same decoration is used for all levels, but at
least we will honor the level of decoration that the user has set for
Python.
Reported-by: Nicholas Knoblauch <nwknoblauch@gmail.com>
Closes #29.
|
|
This will make it easier to work around a change to
python-font-lock-keywords in Emacs 27.
|
|
snakemake-font-lock-keywords is extended with
python-font-lock-keywords, but the non-keyword bits that python.el
defines for font-lock-defaults are discarded. Keep those too because
python.el sets a value for font-lock-syntactic-face-function.
|
|
|
|
|
|
|
|
|
|
|
|
With the addition of 'report', the built-in names and command names
are no longer disjoint sets. All occurrences of 'report' are
fontified as a built-in because the built-in regexp is a substring of
the command regexp. Move the command regexp before the built-in
regexp so that the 'report:' command is highlighted as a command.
|
|
|
|
This has been around forever.
|
|
|
|
|
|
|
|
|
|
|
|
python.el changed its indentation engine in Emacs 24.5. We rely on a
python-indent-calculate-indentation that is specific for the newer
version.
Re: #28
|
|
|
|
|
|
In addition the per-rule singularity field, Snakemake supports a
top-level global directive (since v4.8.0, I think).
|
|
This has been around since Snakemake 3.9.0.
|
|
|
|
|
|
Closes #24.
|
|
|
|
Subworkflow blocks support a "configfile" field as of Snakemake's
1f02ae9 (Allow to specify configfile for subworkflows., 2016-08-24).
Add "configfile" as a field-key so that the subworkflow variant is
fontified as a key rather than a command. As with "workdir", the
tradeoff is that an indented, non-subworkflow "configfile" is
fontified as a key rather than a command.
Fixes #23.
|
|
|
|
Closes #22.
|
|
This function was added in Snakemake v3.10.0.
|
|
|
|
|
|
|
|
As of Emacs 25, single quotes in doc-strings are rendered according to
text-quoting-style, which by default results in single quotes being
displayed as curved quotes. Instead of protecting single quotes with
"\\=", switch some to double quotes (which still need to be escaped,
but in a less jarring way), and avoid quoting symbols, which are
better represented within `'.
|
|
The changes to the first paragraph will make the following commit
cleaner.
Also, there's no need to tell users where to set mmm-global-mode.
|
|
|
|
Using "input" here overrides the highlighting of "input" by
python-font-lock-keywords, although in either case
font-lock-builtin-face is used. The addition of "output" to the
regexp means that output and input are now displayed with a consistent
face in run blocks.
Fixes #20.
|
|
Instead of distinguishing built-ins from field keys by a trailing "(",
make the field key regexp, which is more specific, have a higher
precedence. This allows Snakemake built-ins to be highlighted
correctly even if they are not called as functions.
|
|
The sm-builtin regexp will be extended to support built-in Snakemake
objects like "input" and "output", at which point "function" will no
longer be an accurate description.
|
|
|
|
|