pkg update and first config fix

org-brain not working, add org-roam
This commit is contained in:
2022-12-19 23:02:34 +01:00
parent 02b3e07185
commit 82f05baffe
885 changed files with 356098 additions and 36993 deletions

View File

@@ -1,12 +1,12 @@
;;; ox-icalendar.el --- iCalendar Back-End for Org Export Engine -*- lexical-binding: t; -*-
;; Copyright (C) 2004-2021 Free Software Foundation, Inc.
;; Copyright (C) 2004-2022 Free Software Foundation, Inc.
;; Author: Carsten Dominik <carsten.dominik@gmail.com>
;; Nicolas Goaziou <n dot goaziou at gmail dot com>
;; Maintainer: Nicolas Goaziou <n.goaziou at gmail dot com>
;; Nicolas Goaziou <mail@nicolasgoaziou.fr>
;; Maintainer: Nicolas Goaziou <mail@nicolasgoaziou.fr>
;; Keywords: outlines, hypermedia, calendar, wp
;; Homepage: https://orgmode.org
;; URL: https://orgmode.org
;; This file is part of GNU Emacs.
@@ -32,10 +32,16 @@
;;; Code:
(require 'org-macs)
(org-assert-version)
(require 'cl-lib)
(require 'org-agenda)
(require 'ox-ascii)
(declare-function org-bbdb-anniv-export-ical "ol-bbdb" nil)
(declare-function org-at-heading-p "org" (&optional _))
(declare-function org-back-to-heading "org" (&optional invisible-ok))
(declare-function org-next-visible-heading "org" (arg))
@@ -66,6 +72,17 @@ for timed events. If non-zero, alarms are created.
:version "24.1"
:type 'integer)
(defcustom org-icalendar-force-alarm nil
"Non-nil means alarm will be created even if is set to zero.
This overrides default behaviour where zero means no alarm. With
this set to non-nil and alarm set to zero, alarm will be created
and will fire at the event start."
:group 'org-export-icalendar
:type 'boolean
:package-version '(Org . "9.6")
:safe #'booleanp)
(defcustom org-icalendar-combined-name "OrgMode"
"Calendar name for the combined iCalendar representing all agenda files."
:group 'org-export-icalendar
@@ -84,6 +101,21 @@ keyword."
:group 'org-export-icalendar
:type '(repeat (string :tag "Tag")))
(defcustom org-icalendar-scheduled-summary-prefix "S: "
"String prepended to exported scheduled headlines."
:group 'org-export-icalendar
:type 'string
:package-version '(Org . "9.6")
:safe #'stringp)
(defcustom org-icalendar-deadline-summary-prefix "DL: "
"String prepended to exported headlines with a deadline."
:group 'org-export-icalendar
:type 'string
:package-version '(Org . "9.6")
:safe #'stringp)
(defcustom org-icalendar-use-deadline '(event-if-not-todo todo-due)
"Contexts where iCalendar export should use a deadline time stamp.
@@ -276,14 +308,14 @@ re-read the iCalendar file.")
;;; Define Back-End
(org-export-define-derived-backend 'icalendar 'ascii
:translate-alist '((clock . ignore)
(footnote-definition . ignore)
(footnote-reference . ignore)
:translate-alist '((clock . nil)
(footnote-definition . nil)
(footnote-reference . nil)
(headline . org-icalendar-entry)
(inner-template . org-icalendar-inner-template)
(inlinetask . ignore)
(planning . ignore)
(section . ignore)
(inlinetask . nil)
(planning . nil)
(section . nil)
(template . org-icalendar-template))
:options-alist
'((:exclude-tags
@@ -300,7 +332,9 @@ re-read the iCalendar file.")
(:icalendar-store-UID nil nil org-icalendar-store-UID)
(:icalendar-timezone nil nil org-icalendar-timezone)
(:icalendar-use-deadline nil nil org-icalendar-use-deadline)
(:icalendar-use-scheduled nil nil org-icalendar-use-scheduled))
(:icalendar-use-scheduled nil nil org-icalendar-use-scheduled)
(:icalendar-scheduled-summary-prefix nil nil org-icalendar-scheduled-summary-prefix)
(:icalendar-deadline-summary-prefix nil nil org-icalendar-deadline-summary-prefix))
:filters-alist
'((:filter-headline . org-icalendar-clear-blank-lines))
:menu-entry
@@ -430,7 +464,7 @@ format (e.g. \"Europe/London\"). In either case, the value of
t)))
;; Convert timestamp into internal time in order to use
;; `format-time-string' and fix any mistake (i.e. MI >= 60).
(encode-time 0 mi h d m y)
(org-encode-time 0 mi h d m y)
(and (or (string-equal tz "UTC")
(and (null tz)
with-time-p
@@ -598,7 +632,9 @@ inlinetask within the section."
;; "VEVENT" component from scheduled, deadline, or any
;; timestamp in the entry.
(let ((deadline (org-element-property :deadline entry))
(use-deadline (plist-get info :icalendar-use-deadline)))
(use-deadline (plist-get info :icalendar-use-deadline))
(deadline-summary-prefix (org-icalendar-cleanup-string
(plist-get info :icalendar-deadline-summary-prefix))))
(and deadline
(pcase todo-type
(`todo (or (memq 'event-if-todo-not-done use-deadline)
@@ -607,9 +643,12 @@ inlinetask within the section."
(_ (memq 'event-if-not-todo use-deadline)))
(org-icalendar--vevent
entry deadline (concat "DL-" uid)
(concat "DL: " summary) loc desc cat tz class)))
(concat deadline-summary-prefix summary)
loc desc cat tz class)))
(let ((scheduled (org-element-property :scheduled entry))
(use-scheduled (plist-get info :icalendar-use-scheduled)))
(use-scheduled (plist-get info :icalendar-use-scheduled))
(scheduled-summary-prefix (org-icalendar-cleanup-string
(plist-get info :icalendar-scheduled-summary-prefix))))
(and scheduled
(pcase todo-type
(`todo (or (memq 'event-if-todo-not-done use-scheduled)
@@ -618,7 +657,8 @@ inlinetask within the section."
(_ (memq 'event-if-not-todo use-scheduled)))
(org-icalendar--vevent
entry scheduled (concat "SC-" uid)
(concat "S: " summary) loc desc cat tz class)))
(concat scheduled-summary-prefix summary)
loc desc cat tz class)))
;; When collecting plain timestamps from a headline and its
;; title, skip inlinetasks since collection will happen once
;; ENTRY is one of them.
@@ -792,8 +832,11 @@ Return VALARM component as a string, or nil if it isn't allowed."
(let ((alarm-time
(let ((warntime
(org-element-property :APPT_WARNTIME entry)))
(if warntime (string-to-number warntime) 0))))
(and (or (> alarm-time 0) (> org-icalendar-alarm-time 0))
(if warntime (string-to-number warntime) nil))))
(and (or (and alarm-time
(> alarm-time 0))
(> org-icalendar-alarm-time 0)
org-icalendar-force-alarm)
(org-element-property :hour-start timestamp)
(format "BEGIN:VALARM
ACTION:DISPLAY
@@ -801,8 +844,10 @@ DESCRIPTION:%s
TRIGGER:-P0DT0H%dM0S
END:VALARM\n"
summary
(if (zerop alarm-time) org-icalendar-alarm-time alarm-time)))))
(cond
((and alarm-time org-icalendar-force-alarm) alarm-time)
((and alarm-time (not (zerop alarm-time))) alarm-time)
(t org-icalendar-alarm-time))))))
;;;; Template
@@ -824,8 +869,7 @@ as a communication channel."
(if (not (plist-get info :with-author)) ""
(org-export-data (plist-get info :author) info))
;; Timezone.
(if (org-string-nw-p org-icalendar-timezone) org-icalendar-timezone
(cadr (current-time-zone)))
(or (org-string-nw-p org-icalendar-timezone) (format-time-string "%Z"))
;; Description.
(org-export-data (plist-get info :title) info)
contents))
@@ -972,7 +1016,7 @@ This function assumes major mode for current buffer is
(org-icalendar--vcalendar
org-icalendar-combined-name
user-full-name
(or (org-string-nw-p org-icalendar-timezone) (cadr (current-time-zone)))
(or (org-string-nw-p org-icalendar-timezone) (format-time-string "%Z"))
org-icalendar-combined-description
contents)))
(run-hook-with-args 'org-icalendar-after-save-hook file)))
@@ -995,7 +1039,7 @@ FILES is a list of files to build the calendar from."
user-full-name
;; Timezone.
(or (org-string-nw-p org-icalendar-timezone)
(cadr (current-time-zone)))
(format-time-string "%Z"))
;; Description.
org-icalendar-combined-description
;; Contents.