summaryrefslogtreecommitdiff
path: root/.config
diff options
context:
space:
mode:
authorbd <bdunahu@operationnull.com>2024-07-21 20:10:08 -0600
committerbd <bdunahu@operationnull.com>2024-07-21 20:10:08 -0600
commitcb62d1fee12e0fa33e746e0e1d497fbee2154601 (patch)
treed38d07313d69d13f64a318af9eb876ab26fee398 /.config
parentf52526765cba9b33617b0e76c5da3416120e21de (diff)
Move current track, time, to tab bar. Tab bar always on.
Diffstat (limited to '.config')
-rw-r--r--.config/emacs/modules/bd--emms.el20
-rw-r--r--.config/emacs/modules/bd--modeline.el36
-rw-r--r--.config/emacs/modules/bd--tabs.el18
3 files changed, 45 insertions, 29 deletions
diff --git a/.config/emacs/modules/bd--emms.el b/.config/emacs/modules/bd--emms.el
index db07176..c2a9a8e 100644
--- a/.config/emacs/modules/bd--emms.el
+++ b/.config/emacs/modules/bd--emms.el
@@ -17,9 +17,6 @@ playback."
(use-package emms
:bind (("C-z C-s" . 'emms-quickstart)
("C-z C-p" . 'emms-play-playlist))
- :hook
- (emms-playlist-selection-changed . (lambda ()
- (start-process-shell-command "refreshstatus" nil "refreshstatus")))
:config
(emms-all)
(require 'emms-player-mpd)
@@ -30,8 +27,18 @@ playback."
(if (get-buffer emms-playlist-buffer-name)
(display-buffer emms-playlist-buffer-name)
(message "The Ainur cannot hear you..."))))
- ;; "emms-playlist-mode-bury-buffer" plays poorly with shackle
- (keymap-set emms-playlist-mode-map "q" #'quit-window)
+ (emms-playing-time-disable-display)
+ (setopt emms-track-description-function
+ '(lambda (track)
+ (let ((artist (emms-track-get track 'info-artist))
+ (title (emms-track-get track 'info-title)))
+ (cond
+ ((and artist title)
+ (concat artist " - " title))
+ (title
+ title)
+ (t
+ (emms-track-simple-description track))))))
:custom
;; make sure mpd is configured similarly
(emms-player-mpd-server-name "localhost")
@@ -43,8 +50,7 @@ playback."
;; misc
(emms-info-report-each-num-tracks 2000)
(emms-playlist-buffer-name "*Playlist*")
- (emms-mode-line-disable))
-
+ (emms-mode-line-format " %s "))
(provide 'bd--emms)
;;; bd-emms ends here
diff --git a/.config/emacs/modules/bd--modeline.el b/.config/emacs/modules/bd--modeline.el
index 8d82497..9adafa0 100644
--- a/.config/emacs/modules/bd--modeline.el
+++ b/.config/emacs/modules/bd--modeline.el
@@ -5,7 +5,6 @@
;;; Code:
-(require 'time)
(defun mode-line-fill (reserve)
"Return empty space, leaving RESERVE space on the right."
(unless reserve
@@ -34,23 +33,24 @@
(global-set-key (kbd "C-c ,") 'minor-mode-blackout-mode)
-;;;; time and date
-(setq display-time-format "%m/%d/%y %H:%M (%a)"
- display-time-default-load-average nil)
-(display-time)
-
-(defvar-local bd/time-mode-line
- '(:eval
- (when (mode-line-window-selected-p)
- display-time-string))
- "displays current time and date in selected window.")
-(display-time)
-
-
(defvar-local bd/buffer-identification-mode-line
'(:eval (format "%s" (buffer-name)))
"Formats the modeline-buffer-name.")
+(defvar-local bd/modeline-buffer-file-state-icon
+ '(:eval
+ (cond (buffer-read-only
+ (propertize "L" 'face `(:foreground ,(ef-themes-get-color-value 'warning))))
+ ((and buffer-file-name (buffer-modified-p))
+ (propertize "S" 'face `(:foreground ,(ef-themes-get-color-value 'warning))))
+ ((and buffer-file-name
+ ;; Avoid freezing while connection is lost
+ (not (file-remote-p buffer-file-name))
+ (not (file-exists-p buffer-file-name)))
+ (propertize "?" 'face `(:foreground ,(ef-themes-get-color-value 'err))))
+ (t "")))
+ "Formats the file modification status.")
+
;;;; pos
(defvar-local bd/line-position
'(:eval
@@ -89,14 +89,12 @@
bd/buffer-identification-mode-line
" "
mode-line-modes
- " "
- mode-line-modified
+ bd/modeline-buffer-file-state-icon
bd/vc-mode-line
" "
- (mode-line-fill 39)
+ (mode-line-fill 16)
bd/line-position
- " "
- bd/time-mode-line))
+ " "))
(setq-default mode-line-format nil)
diff --git a/.config/emacs/modules/bd--tabs.el b/.config/emacs/modules/bd--tabs.el
index 3f627b7..089c852 100644
--- a/.config/emacs/modules/bd--tabs.el
+++ b/.config/emacs/modules/bd--tabs.el
@@ -3,14 +3,26 @@
;;; Code:
+;;;; time and date
+(require 'time)
+(setq display-time-format "%m/%d/%y %H:%M (%a)"
+ display-time-default-load-average nil)
+;; (display-time)
+
+
;;;; turn tabs on, undo/redo mode
-(setq tab-bar-show 1)
+(setq tab-bar-show t)
(tab-bar-history-mode)
+(tab-bar-select-tab 1)
+(tab-bar-mode)
;;;; remove useless gui elements
(setopt tab-bar-format
- '(tab-bar-format-tabs)
+ '(tab-bar-format-tabs
+ tab-bar-format-align-right
+ tab-bar-format-global)
+
tab-bar-close-button-show nil
;; size
@@ -21,7 +33,7 @@
tab-bar-select-tab-modifiers '(meta))
-;;;; use project name if it exists
+;; use project name if it exists
(defun bd/tab-bar-name-function ()
(mapconcat (lambda (buffer)
(let* ((file (buffer-file-name buffer))