diff options
author | Thanos Apollo <[email protected]> | 2024-02-10 11:29:51 +0200 |
---|---|---|
committer | Thanos Apollo <[email protected]> | 2024-02-10 11:29:51 +0200 |
commit | 925cdbe626639f54b9aa4c35f749a86160d66726 (patch) | |
tree | c2b040c973f82f09060fc2b07ffb9fda6a980149 | |
parent | 5c711f345c0e1b113537fe15ebc78f7ba8b6749a (diff) |
Add yeetueb--sort-date
This function is from Boruch-Baum fork:
<https://github.com/Boruch-Baum/emacs-yeetube.el>
-rw-r--r-- | yeetube.el | 13 |
1 files changed, 13 insertions, 0 deletions
@@ -515,6 +515,19 @@ column." (< (string-to-number (replace-regexp-in-string ":" "" (aref (cadr a) 2))) (string-to-number (replace-regexp-in-string ":" "" (aref (cadr b) 2))))) +(defun yeetube--sort-date (a b) + "PREDICATE for function 'sort'. +Used by variable 'tabulated-list-format' to sort the \"Date\" +column." + (let* ((intervals '("second" "minute" "hour" "day" "week" "month" "year")) + (split-a (split-string (replace-regexp-in-string "s" "" (aref (cadr a) 3)))) + (split-b (split-string (replace-regexp-in-string "s" "" (aref (cadr b) 3)))) + (units-a (length (member (nth 1 split-a) intervals))) + (units-b (length (member (nth 1 split-b) intervals)))) + (if (= units-a units-b) + (< (string-to-number (nth 0 split-a)) (string-to-number (nth 0 split-b))) + (> units-a units-b)))) + (define-derived-mode yeetube-mode tabulated-list-mode "Yeetube" "Yeetube mode." :keymap yeetube-mode-map |