From 4a247afc22b661de6d0a19a03514a309ee68aa99 Mon Sep 17 00:00:00 2001 From: Tom Willemse Date: Thu, 17 Dec 2015 09:38:24 +0100 Subject: Add compilation and alert customizations --- emacs/.emacs.d/init.el | 6 ++++++ emacs/.emacs.d/site-lisp/oni-compile.el | 37 +++++++++++++++++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 emacs/.emacs.d/site-lisp/oni-compile.el diff --git a/emacs/.emacs.d/init.el b/emacs/.emacs.d/init.el index 7ed086a..00d1f44 100644 --- a/emacs/.emacs.d/init.el +++ b/emacs/.emacs.d/init.el @@ -919,6 +919,9 @@ If no direction is given, don't split." (add-hook 'prog-mode-hook 'highlight-numbers-mode) (add-hook 'compilation-filter-hook 'colorize-compilation-buffer) +;; Notify me of the finished status of compilation. +(add-hook 'compilation-finish-functions 'oni:alert-compilation-finish) + (oni:add-function-to-hooks #'oni:make-readable 'Info-mode-hook 'gnus-article-mode-hook 'gnus-group-mode-hook 'org-agenda-mode-hook) @@ -1078,6 +1081,9 @@ If no direction is given, don't split." (setq select-enable-primary t) (setq projectile-completion-system 'helm) +;; Use the notifications library with alert. +(setq alert-default-style 'notifications) + ;;;; Misc modes (oni:enable '(downcase-region narrow-to-page narrow-to-region scroll-left diff --git a/emacs/.emacs.d/site-lisp/oni-compile.el b/emacs/.emacs.d/site-lisp/oni-compile.el new file mode 100644 index 0000000..31e546a --- /dev/null +++ b/emacs/.emacs.d/site-lisp/oni-compile.el @@ -0,0 +1,37 @@ +;;; oni-compile.el --- Extra compilation functions and commands -*- lexical-binding: t; -*- + +;; Copyright (C) 2015 Tom Willemse + +;; Author: Tom Willemse +;; Keywords: + +;; 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 . + +;;; Commentary: + +;; Here are some compilations functions and commands. + +;;; Code: + +(require 'alert) +(require 'compile) + +(defun oni:alert-compilation-finish (buffer status) + (with-current-buffer buffer + (when (eql major-mode 'compilation-mode) + (alert (format "Compilation command ā€œ%sā€ %s" + (car compilation-arguments) status))))) + +(provide 'oni-compile) +;;; oni-compile.el ends here -- cgit v1.2.3-54-g00ecf