Next: , Previous: , Up: Build Scripts   [Index]


B.2 Ignore

(defun get-parsed-tree (buf)
  "Given a buffer BUF, return a parsed tree."
  (with-current-buffer buf
    (org-element-parse-buffer 'headline)))

(defun oep (p e)
  "Given a property P and element E, return that property's value."
  (org-element-property p e))

(defun start-end (buf prop)
  "Given a buffer BUF and a property PROP, return the starting and ending points."
  (org-element-map
      (get-parsed-tree buf)
      'headline
      (lambda (e) (when (string= (oep :CUSTOM_ID e) prop)
                    (list
                     (oep :begin e)
                     (oep :end e))))
      nil t))

(defun update-old-project (&optional title author bucket)
  "Update an old project with new code."
  (with-current-buffer (car (find-file-noselect "./*.org" nil nil t))
    (save-excursion
    (goto-char (point-min))
    ;; (when title
    ;;   (re-search-forward "^#[+]title:\s*\\(.*\\)$")
    ;;   (replace-match title t nil nil 1))
    ;; (when author
    ;;   (re-search-forward "^#[+]author:\s*\\(.*\\)$")
    ;;   (replace-match author t nil nil 1))
    ;; (when bucket
    ;;   (re-search-forward "^#[+]bucket:\s*\\(.*\\)$")
    ;;   (replace-match bucket t nil nil 1))
    (let* ((curbuf (current-buffer))
          (orgsyncbuf (find-file-noselect (expand-file-name "Template.org" "/usr/local/dev/Templates/Org")))
          (start-end-curbuf (start-end curbuf "build-tools"))
          (start-end-sync (start-end orgsyncbuf "build-tools")))
      (list start-end-curbuf start-end-sync)))))
(update-old-project)

((4928 36833) (4928 36833))