From 345046cbbbb8b8ad486a0793a6eb047f17f0fa6c Mon Sep 17 00:00:00 2001 From: Kyle Meyer Date: Thu, 3 Mar 2016 23:13:43 -0500 Subject: Update for snakemake.el --- init.el | 29 ++++++++++------------------ lisp/km-snakemake.el | 53 ---------------------------------------------------- 2 files changed, 10 insertions(+), 72 deletions(-) delete mode 100644 lisp/km-snakemake.el diff --git a/init.el b/init.el index 4c503d4..e3ce03d 100644 --- a/init.el +++ b/init.el @@ -1691,31 +1691,22 @@ :load-path "~/src/emacs/snakemake-mode/" :defer t :init - (require 'snakemake-mode-autoloads) - (autoload 'snakemake-compile-command "snakemake-mode") - (setq snakemake-compile-command-options '("-p")) + (require 'snakemake-autoloads) + (define-key km/compile-map "s" #'snakemake-popup) + (after 'dired + (define-key dired-mode-map "b" #'snakemake-popup)) :config + (setq snakemake-root-dir-function #'projectile-project-root) + (defun km/snakemake-set-local-vars () - (set (make-local-variable 'compile-command) - (snakemake-compile-command)) (set (make-local-variable 'imenu-create-index-function) #'snakemake-imenu-create-index)) - - ;; Although `compile-command' and `imenu-create-index-function' are - ;; set when snakemake-mode is derived from Python mode, I need to - ;; define them again here because I have a Python mode hook that - ;; overrides the Python versions. + ;; Although `imenu-create-index-function' is set when snakemake-mode + ;; is derived from Python mode, I need to define it again here + ;; because I have a Python mode hook that overrides the Python + ;; version. (add-hook 'snakemake-mode-hook #'km/snakemake-set-local-vars)) -(use-package km-snakemake - :defer t - :init - (bind-keys :map km/compile-map - ("b" . km/snakemake-compile-project-rule) - ("p" . km/snakemake-compile-project-file)) - (after 'dired - (define-key dired-mode-map "b" #'km/snakemake-compile-project-file))) - (use-package ess-site :mode ("\\.[rR]\\'" . R-mode) :config diff --git a/lisp/km-snakemake.el b/lisp/km-snakemake.el deleted file mode 100644 index 01fa7f1..0000000 --- a/lisp/km-snakemake.el +++ /dev/null @@ -1,53 +0,0 @@ -;;; km-snakemake.el --- Extensions for Snakemake mode - -;; Copyright (C) 2012-2016 Kyle Meyer - -;; Author: Kyle Meyer -;; URL: https://github.com/kyleam/emacs.d - -;; This program is free software; you can redistribute it and/or modify -;; it under the terms of the GNU General Public License as published by -;; the Free Software Foundation, either version 3 of the License, or -;; (at your option) any later version. - -;; This program is distributed in the hope that it will be useful, -;; but WITHOUT ANY WARRANTY; without even the implied warranty of -;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -;; GNU General Public License for more details. - -;; You should have received a copy of the GNU General Public License -;; along with this program. If not, see . - -;;; Code: - -(require 'projectile) -(require 'km-projectile) -(require 'snakemake-mode) - -;;;###autoload -(defun km/snakemake-compile-project-file (jobs) - "Run Snakemake to produce project file at point. -The numeric prefix JOBS controls the number of jobs that -Snakemake runs (defaults to 1). If JOBS is zero, perform a dry -run. If JOBS is negative, just touch the output files." - (interactive "p") - (let* ((fname (or (km/project-filename-at-point) - (read-file-name "File: "))) - (job-flag (cond - ((> jobs 0) (format " -j%s " jobs)) - ((zerop jobs) " -n ") - (t " -t "))) - (compile-command (concat (snakemake-compile-command) job-flag - fname)) - (default-directory (projectile-project-root))) - (call-interactively 'compile))) - -;;;###autoload -(defun km/snakemake-compile-project-rule () - "Run `snakemake-compile-rule' from project root." - (interactive) - (let ((default-directory (projectile-project-root))) - (call-interactively #'snakemake-compile-rule))) - -(provide 'km-snakemake) -;;; km-snakemake.el ends here -- cgit v1.2.3