summaryrefslogtreecommitdiffstats
path: root/emacs/.emacs.d/site-lisp/my-smt.el
diff options
context:
space:
mode:
authorGravatar Tom Willemse2015-04-27 12:39:53 +0200
committerGravatar Tom Willemse2015-04-27 12:39:53 +0200
commitc6d4ada60ff19dfaf8ac0fa6d2346bf552f172c8 (patch)
treec18c81498023b3155c3ecfaa71c1cb3288eabed1 /emacs/.emacs.d/site-lisp/my-smt.el
parent1df8832757582edba93811bb2a0723812047d098 (diff)
downloaddotfiles-c6d4ada60ff19dfaf8ac0fa6d2346bf552f172c8.tar.gz
dotfiles-c6d4ada60ff19dfaf8ac0fa6d2346bf552f172c8.zip
Rename my-smt to oni-smt
Diffstat (limited to 'emacs/.emacs.d/site-lisp/my-smt.el')
-rw-r--r--emacs/.emacs.d/site-lisp/my-smt.el176
1 files changed, 0 insertions, 176 deletions
diff --git a/emacs/.emacs.d/site-lisp/my-smt.el b/emacs/.emacs.d/site-lisp/my-smt.el
deleted file mode 100644
index 4c4f6ee..0000000
--- a/emacs/.emacs.d/site-lisp/my-smt.el
+++ /dev/null
@@ -1,176 +0,0 @@
-;;; my-smt.el --- My SVG mode-line theme -*- lexical-binding: t; -*-
-
-;; Copyright (C) 2014 Tom Willemse
-
-;; Author: Tom Willemse <tom@ryuslash.org>
-;; Keywords: faces
-
-;; 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 <http://www.gnu.org/licenses/>.
-
-;;; Commentary:
-
-;;
-
-;;; Code:
-
-(require 'svg-mode-line-themes)
-(require 'flycheck)
-(require 'cl)
-
-(defun oni-smt-flycheck-errors-text (_)
- "Show an indicator of the number of errors and warnings from flycheck."
- (when flycheck-mode
- (let* ((counts (flycheck-count-errors flycheck-current-errors))
- (err-color (if (smt/window-active-p) "#a85454" "#969696"))
- (warn-color (if (smt/window-active-p) "#a88654" "#969696"))
- (info-color (if (smt/window-active-p) "#5476a8" "#969696"))
- (err-count (alist-get 'error counts 0))
- (warn-count (alist-get 'warning counts 0))
- (info-count (alist-get 'info counts 0)))
- `(tspan " " (tspan :fill ,err-color ,err-count)
- "/" (tspan :fill ,warn-color ,warn-count)
- "/" (tspan :fill ,info-color ,info-count)))))
-
-(smt/defwidget oni-smt-flycheck-errors
- :text #'oni-smt-flycheck-errors-text)
-
-(smt/defwidget my-smt-jabber-activity
- :text (lambda (widget)
- (ignore widget)
- (if (and (smt/window-active-p)
- (boundp 'jabber-activity-mode-string)
- (not (equal jabber-activity-mode-string "")))
- (concat jabber-activity-mode-string " "))))
-
-;;; TODO Turn:
-;; #("message: (FORMAT-STRING &rest ARGS)"
-;; 0 7 (face font-lock-function-name-face)
-;; 10 23 (face eldoc-highlight-function-argument))
-;;; into:
-;;; (tspan (tspan :fill (fg-color font-lock-function-name-face) "message:")
-;;; " ("
-;;; (tspan :fill (fg-color highlight-function-argument) "FORMAT-STRING")
-;;; " &rest ARGS)")
-(defun my-smt-eldoc-minibuffer-message (format-string &rest args)
- (if (minibufferp)
- (progn
- (add-hook 'minibuffer-exit-hook
- (lambda () (setq my-smt-eldoc-message nil
- eldoc-mode-line-string nil
- eldoc-last-message nil))
- nil t)
- (setq my-smt-eldoc-message
- (when (stringp format-string)
- (apply 'format format-string args)))
- (force-mode-line-update t))
- (apply 'message format-string args)))
-
-(defvar my-smt-eldoc-message nil)
-(smt/defwidget my-smt-eldoc-message
- :text (lambda (widget)
- (ignore widget)
- (when my-smt-eldoc-message
- `(tspan :fill "#bfbfbf" " (" (tspan :fill "#5476a8" ,my-smt-eldoc-message) ")"))))
-
-(defun my-smt-yoshi-title-style (widget)
- "Fill color for either active or inactive windows.
-
-WIDGET is ignored."
- (ignore widget)
- (list :fill (if (smt/window-active-p)
- "#a85454"
- "#969696")))
-
-(smt/defwidget my-smt-po-counters
- :text (lambda (widget)
- (ignore widget)
- (when (eql major-mode 'po-mode)
- (format " %dt+%df+%du+%do" po-translated-counter
- po-fuzzy-counter po-untranslated-counter
- po-obsolete-counter))))
-
-(smt/defwidget my-smt-buffer-identification
- :style 'my-smt-yoshi-title-style
- :text (lambda (widget)
- (ignore widget)
- (concat
- (s-trim
- (substring-no-properties
- (format-mode-line mode-line-buffer-identification)))
- (when (and (or buffer-file-name
- buffer-offer-save)
- (buffer-modified-p))
- "*"))))
-
-(smt/defwidget my-smt-current-dictionary
- :text (lambda (widget)
- (ignore widget)
- (if flyspell-mode
- (concat " " (or ispell-current-dictionary
- ispell-local-dictionary
- flyspell-default-dictionary)))))
-
-(smt/defwidget my-smt-position
- :text (lambda (widget)
- (ignore widget)
- (format-mode-line "%l/%c:%p")))
-
-(defun my-smt-extra-minor-modes (minor-modes)
- "Add some more info to MINOR-MODES."
- (if (boundp 'evil-state)
- (let ((l (capitalize (elt (symbol-name evil-state) 0))))
- `(tspan ,minor-modes (tspan :fill "#54a875" ,(char-to-string l))))
- minor-modes))
-
-(add-function
- :filter-return
- (symbol-function 'smt/minor-mode-indicator-text)
- #'my-smt-extra-minor-modes)
-
-(smt/defrow my-smt-right
- :prototype 'default-right
- :widgets '(my-smt-jabber-activity
- major-mode
- my-smt-current-dictionary
- oni-smt-flycheck-errors
- version-control minor-modes)
- :margin 16)
-
-(smt/defrow my-smt-left
- :prototype 'default-left
- :widgets '(buffer-info my-smt-buffer-identification my-smt-po-counters
- which-function my-smt-eldoc-message))
-
-(smt/defrow my-smt-position
- :prototype 'default-position
- :widgets '(my-smt-position))
-
-(defun my-smt-major-mode-style (widget)
- (ignore widget)
- '(:fill "#ccc" :font-family "Fantasque Sans" :filter nil
- :font-weight "bold" :font-style "italic"))
-
-(smt/deftheme my-smt
- :prototype 'black-crystal
- :local-widgets (list (cons 'major-mode
- (smt/make-widget
- :prototype 'major-mode
- :style 'my-smt-major-mode-style)))
- :rows '(my-smt-left my-smt-position my-smt-right))
-
-(add-function :override (symbol-function 'eldoc-minibuffer-message)
- #'my-smt-eldoc-minibuffer-message)
-
-(provide 'my-smt)
-;;; my-smt.el ends here