diff options
Diffstat (limited to 'emacsconf.el')
| -rw-r--r-- | emacsconf.el | 40 | 
1 files changed, 39 insertions, 1 deletions
| diff --git a/emacsconf.el b/emacsconf.el index 7157efd..d09167b 100644 --- a/emacsconf.el +++ b/emacsconf.el @@ -578,10 +578,28 @@            (subseq states (seq-position                            states "PLAYING"))))) +;; https://stackoverflow.com/questions/55855621/org-mode-getting-logbook-notes +(defun emacsconf-get-logbook-notes () +	(save-excursion +    (unless (org-at-heading-p) +      (outline-previous-heading)) +    (when (re-search-forward ":LOGBOOK:" (save-excursion +                                           (outline-next-heading) +                                           (point)) +                             t) +      (let* ((elt (org-element-property-drawer-parser nil)) +             (beg (org-element-property :contents-begin elt)) +             (end (org-element-property :contents-end elt))) +        (buffer-substring-no-properties beg end))))) + +(defun emacsconf-get-talk-logbook (o) +	(plist-put o :logbook (emacsconf-get-logbook-notes))) +  (defvar emacsconf-talk-info-functions    '(emacsconf-get-talk-info-from-properties      emacsconf-get-talk-categories      emacsconf-get-talk-abstract-from-subtree +		emacsconf-get-talk-logbook      emacsconf-add-talk-status      emacsconf-add-checkin-time      emacsconf-add-timezone-conversions @@ -1141,6 +1159,24 @@    (when (stringp track) (setq track (emacsconf-get-track track)))    (seq-filter (lambda (o) (string= (plist-get o :track) (plist-get track :name))) info)) +(defun emacsconf-filter-talks-by-slugs (slugs &optional info) +	(setq info (or info (emacsconf-get-talk-info))) +	(if slugs +			(seq-filter (lambda (o) +										(member (plist-get o :slug) +														slugs)) +									info) +		info)) + +(defun emacsconf-filter-talks-by-logbook (text &optional info) +	(setq info (or info (emacsconf-get-talk-info))) +	(if text +			(seq-remove (lambda (o) +										(and (plist-get o :logbook) +												 (string-match (regexp-quote text) (plist-get o :logbook)))) +									info) +		info)) +  (defvar emacsconf-shifts  	(list (list :id "sat-am-gen" :track "General" :start "2022-12-03T08:00:00-0500" :end "2022-12-03T12:00:00-0500" :host "zaeph" :streamer "sachac" :checkin "corwin" :irc "dto" :pad "publicvoit" :coord "sachac") (list :id "sat-pm-gen" :track "General" :start "2022-12-03T13:00:00-0500" :end "2022-12-03T18:00:00-0500" :host "zaeph" :streamer "sachac" :checkin "FlowyCoder" :irc "bandali" :pad "publicvoit" :coord "sachac") (list :id "sat-am-dev" :track "Development" :start "2022-12-03T08:00:00-0500" :end "2022-12-03T12:00:00-0500" :host "bandali" :streamer "sachac" :checkin "corwin" :irc "dto" :coord "sachac") (list :id "sat-pm-dev" :track "Development" :start "2022-12-03T13:00:00-0500" :end "2022-12-03T18:00:00-0500" :host "bandali" :streamer "sachac" :checkin "FlowyCoder" :irc "bandali" :coord "sachac") (list :id "sun-am-gen" :track "General" :start "2022-12-04T08:00:00-0500" :end "2022-12-04T12:00:00-0500" :host "zaeph" :streamer "sachac" :checkin "corwin" :irc "dto" :pad "publicvoit" :coord "sachac") (list :id "sun-pm-gen" :track "General" :start "2022-12-04T13:00:00-0500" :end "2022-12-04T18:00:00-0500" :host "zaeph" :streamer "jman" :checkin "FlowyCoder" :irc "bandali" :pad "publicvoit" :coord "sachac") (list :id "sun-am-dev" :track "Development" :start "2022-12-04T08:00:00-0500" :end "2022-12-04T12:00:00-0500" :host "bandali" :streamer "sachac" :checkin "corwin" :irc "dto" :coord "sachac") (list :id "sun-pm-dev" :track "Development" :start "2022-12-04T13:00:00-0500" :end "2022-12-04T18:00:00-0500" :host "bandali" :streamer "sachac" :checkin "FlowyCoder" :irc "bandali" :coord "sachac"))) @@ -1276,7 +1312,9 @@ Filter by TRACK if given.  Use INFO as the list of talks."            (re-search-forward (concat "\\<" (regexp-quote input)) nil t)            (goto-char (match-beginning 0))))          (insert "\n") -        (when (< (- (line-end-position) (point)) fill-column) +        (when (< (+ (- (line-end-position) (point)) +										(save-excursion (- (line-end-position) (line-beginning-position))) +										1) fill-column)            (save-excursion              (goto-char (line-end-position))              (insert " ") | 
