about summary refs log tree commit diff
diff options
context:
space:
mode:
authorWilliam Carroll <wpcarro@gmail.com>2019-12-22T21·34+0000
committerWilliam Carroll <wpcarro@gmail.com>2019-12-24T15·21+0000
commit7bd668ee8fcc56289cca4c87c14223d6599b00e1 (patch)
treec8bc4b4eb3930d601791057056fad29f6df098d4
parentd1566dd0e64befd79e5db149456032dfb5a0c505 (diff)
Defensively install all-the-icons assets
Wrap installation call with a predicate that checks on the file-system for the
icon assets. Along the way, document other parts of the wpc-ui package.
-rw-r--r--configs/shared/.emacs.d/wpc/packages/wpc-ui.el30
1 files changed, 10 insertions, 20 deletions
diff --git a/configs/shared/.emacs.d/wpc/packages/wpc-ui.el b/configs/shared/.emacs.d/wpc/packages/wpc-ui.el
index 4c850e5b4b40..bbd80b9062c8 100644
--- a/configs/shared/.emacs.d/wpc/packages/wpc-ui.el
+++ b/configs/shared/.emacs.d/wpc/packages/wpc-ui.el
@@ -12,10 +12,7 @@
 
 (require 'prelude)
 (require 'alist)
-(require 'wallpaper)
-(require 'fonts)
 (require 'themes)
-(require 'window-manager)
 (require 'device)
 (require 'laptop-battery)
 
@@ -68,8 +65,8 @@
 ;; set default buffer for Emacs
 (setq initial-buffer-choice constants/current-project)
 
-;; integration with wpgtk (in vendor directory)
 ;; TODO: Re-enable this when base16-wpgtk are looking better.
+;; integration with wpgtk (in vendor directory)
 ;; (require 'wpgtk-theme)
 
 ;; base-16 themes to integrate with wpgtk
@@ -124,9 +121,8 @@
 ;; all-the-icons
 (use-package all-the-icons
   :config
-  ;; Only run this once after installing.
-  ;; (all-the-icons-install-fonts)
-  )
+  (unless (f-exists? "~/.local/share/fonts/all-the-icons.ttf")
+    (all-the-icons-install-fonts)))
 
 ;; icons for Ivy
 (use-package all-the-icons-ivy
@@ -136,27 +132,20 @@
 
 ;; disable menubar
 (menu-bar-mode -1)
-(when (string-equal system-type "darwin")
-  (setq ns-auto-hide-menu-bar t))
 
 ;; reduce noisiness of auto-revert-mode
 (setq auto-revert-verbose nil)
 
-;; highlight lines that are over 100 characters long
+;; highlight lines that are over `constants/fill-column' characters long
 (use-package whitespace
   :config
+  ;; TODO: This should change depending on the language and project. For
+  ;; example, Google Java projects prefer 100 character width instead of 80
+  ;; character width.
   (setq whitespace-line-column constants/fill-column)
   (setq whitespace-style '(face lines-tail))
   (add-hook 'prog-mode-hook #'whitespace-mode))
 
-;; rebalance emacs windows after splits are created
-;; (defadvice split-window-below (after rebalance-windows activate)
-;;   (balance-windows))
-;; (defadvice split-window-right (after rebalance-windows activate)
-;;   (balance-windows))
-;; (defadvice delete-window (after rebalance-window activate)
-;;   (balance-windows))
-
 ;; dirname/filename instead of filename<dirname>
 (setq uniquify-buffer-name-style 'forward)
 
@@ -166,6 +155,8 @@
 ;; hide the scroll-bars in the GUI
 (scroll-bar-mode -1)
 
+;; TODO: Learn how to properly integrate this with dunst or another system-level
+;; notification program.
 ;; GUI alerts in emacs
 (use-package alert
   :commands (alert)
@@ -178,8 +169,7 @@
   (laptop-battery/display))
 
 ;; Load a theme
-(->> (themes/random)
-     themes/set)
+(themes/set (themes/random))
 
 (provide 'wpc-ui)
 ;;; wpc-ui.el ends here