diff options
author | Kyle Meyer <kyle@kyleam.com> | 2017-04-01 01:11:31 -0400 |
---|---|---|
committer | Kyle Meyer <kyle@kyleam.com> | 2017-04-01 01:20:56 -0400 |
commit | 83323d47463a5c0597c9eef4f22d2d833314bd54 (patch) | |
tree | 296180beed949b9bb9019c86b0407e57e9c0ef07 /snakemake-mode.el | |
parent | 43f8536aee86d52e52cfa4cfc6d2e00e2ca4b04c (diff) | |
download | snakemake-mode-83323d47463a5c0597c9eef4f22d2d833314bd54.tar.gz |
Add a user option to always send commands to a terminal
The primary motivation behind having a terminal interface is that it
works better with tools like Guix because the environment persists
across calls. And the primary reason one would want to use Guix with
Snakemake is so that the dependencies to a workflow/analysis can be
specified and tightly controlled.
However, the user can accidentally step outside of this controlled
environment by running a build command before running
snakemake-term-start. The changes from this mistake can be hard to
confidently reverse and may require a wide removal of output files.
If a user wanted to make sure to only use the Guix-controlled
environment, one approach would be to remove the Snakemake executable
from the environment in which Emacs is started (most likely the
default environment), exposing it only in the workflow environments.
The problem with this is that snakemake.el requires the Snakemake
executable for things like generating lists of targets. Also, it
would be a global change, but a user could reasonably want to control
dependencies with Guix for one project but go through the compile
interface for another.
Add a user option that allows the user to avoid the compile interface
at a global or per-project level.
Diffstat (limited to 'snakemake-mode.el')
0 files changed, 0 insertions, 0 deletions