Move capture templates to specific file

This commit is contained in:
Marcus Kammer 2024-10-11 10:09:02 +02:00
parent 80375deb97
commit 07866b49f9
Signed by: marcuskammer
GPG key ID: C374817BE285268F
2 changed files with 239 additions and 211 deletions

239
bundle/bundle--ct.el Normal file
View file

@ -0,0 +1,239 @@
;;; bundle--ct.el --- Bunch of capture tempates -*- lexical-binding: t; -*-
;; Copyright (C) 2024 Marcus Kammer
;; Author: Marcus Kammer <marcus.kammer@mailbox.org>
;; Keywords:
;; This program is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;; This program is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with this program. If not, see <https://www.gnu.org/licenses/>.
;;; Commentary:
;;
;;; Code:
;; Note Capture Template
;; Purpose: To capture general notes. These notes can optionally be linked to a currently clocked-in task.
;; Fields: Heading, optional task link, initial content, and a timestamp.
(add-to-list 'org-capture-templates
`("n" "Note" entry (file "notes.org")
,(concat "* %? :NOTE:\n"
":PROPERTIES:\n"
":ID: %(org-id-new)\n"
"%(mk/link-to-current-task)"
":END:\n"
"Entered on: %U\n")))
;; Task Capture Template
;; Purpose: To capture tasks and automatically assign a unique ID to each task.
;; Fields: Heading, unique ID, timestamp, and link to where the capture was made.
(add-to-list 'org-capture-templates
`("t" "Task" entry (file "agenda/tasks.org")
,(format "* TODO %%? :TASK:\n:PROPERTIES:\n:ID: %s\n:Project: %%^{Project}\n:END:\nEntered on %%U\n" (org-id-new))))
;; Journal Capture Template
;; Purpose: To capture end-of-day reflections.
;; Fields: Heading, timestamp, and prompts for what went well, what could be improved, and focus for tomorrow.
(add-to-list 'org-capture-templates
'("j" "Journal" entry (file+olp+datetree "agenda/journal.org")
"* %T - End of Day Reflection :JOURNAL:\n- Was ist heute gut gelaufen?\n %?\n- Was könnte verbessert werden?\n \n- Worauf konzentriere ich mich morgen?\n "
:empty-lines 1))
;; Updated Appointment Capture Template
;; Purpose: To capture and plan detailed appointments with agenda and preparation tasks.
;; Fields: Title, Date/Time, Location, Attendees, Agenda Items, Preparation Tasks, Notes.
(add-to-list 'org-capture-templates
'("a" "Appointment" entry (file "agenda/appt.org")
"* %^{Title} %^g
:PROPERTIES:
:LOCATION: %^{Location}
:ATTENDEES: %^{Attendees}
:END:
%^{Date}t
** Agenda
%?
** Preparation Tasks
- [ ]
- [ ]
- [ ]
** Notes
" :empty-lines 1))
;; Meeting Capture Template
;; Purpose: To capture meeting notes and automatically start a clock for time tracking.
;; Fields: Topic, timestamp, and additional notes.
(add-to-list 'org-capture-templates
'("m" "Meeting" entry (file "agenda/meetings.org")
"* %^{Topic} \n%T\n%?"
:clock-in t
:empty-lines 1))
;; Log Capture Template
;; Purpose: To capture activities in a chronological order and automatically start a clock for time tracking.
;; Fields: Timestamp, activity description.
(add-to-list 'org-capture-templates
'("l" "Log" entry (file+olp+datetree "logbook.org")
"* %T - %^{Activity} :LOG:\n%?"
:clock-in t
:empty-lines 1))
;; UTM Parameters Capture Template
;; Purpose: To capture UTM parameters for marketing tracking.
;; Fields: Campaign name, source, medium, term, and content.
(add-to-list 'org-capture-templates
'("u" "UTM Parameters" entry (file+headline "utm.org" "UTM Parameters")
"* %^{Campaign Name}\n:PROPERTIES:\n:Source: %^{utm_source}\n:Medium: %^{utm_medium}\n:Term: %^{utm_term}\n:Content: %^{utm_content}\n:END:\n"))
;; Bookmark Capture Template
;; Purpose: To capture bookmarks with tags and a timestamp.
;; Fields: URL, tags, timestamp.
(add-to-list 'org-capture-templates
'("b" "Bookmark" table-line (file+headline "bookmarks.org" "Bookmarks")
"| %^{URL} | %^{Tags} | %u |" :prepend t))
;; Code Snippet Capture Template
;; Purpose: To capture code snippets and specify the programming language.
;; Fields: Code snippet, language specification.
(add-to-list 'org-capture-templates
'("c" "Code Snippet" entry (file+headline "code.org" "Snippets")
"* %?\n#+begin_src %^{language}\n%i\n#+end_src"))
;; Capture Templates for Interviews
;;
;; The following capture templates are designed to facilitate the collection
;; of questions and insights for user interviews. Given the importance of
;; user-centered design in experience architecture, these templates aim to
;; streamline the preparation process for interviews.
;; Interview Sub-menu
;;
;; This entry serves as a sub-menu for all interview-related capture templates.
(add-to-list 'org-capture-templates
'("i" "Interviews"))
;; How Might We (HMW) Template
;;
;; This template is designed to capture "How Might We" questions that are often
;; used to frame problems and opportunities in user interviews. These questions
;; can be crucial for guiding the interview in a direction that yields
;; actionable insights.
(add-to-list 'org-capture-templates
'("ih" "How Might We" entry (file+headline "interviews.org" "HMW Questions")
"* WKW/HMW %? :HMW:\n%U\n:PROPERTIES:\n:Interviewee: %^{Interviewee}\n:Context: %^{Context}\n:END:"))
;; Interview Question Template
;;
;; Use this template to quickly capture questions that you intend to ask during
;; user interviews. The template prompts for the topic of the interview and
;; the project it is associated with, allowing for easy categorization and
;; retrieval later.
(add-to-list 'org-capture-templates
'("iq" "Interview Question" entry (file+headline "interviews.org" "Interview Questions")
"* %^{Interview Topic} :INTERVIEW:\n:PROPERTIES:\n:Project: %^{Project Name}\n:Date: %T\n:END:\n- %?\n"))
;; User Interview Quotes Capture Template
;; Purpose: To capture important quotes from user interviews.
;; Fields: Quote, Interviewee, Timestamp in Video, Project, Context
(add-to-list 'org-capture-templates
'("io" "Quote from User Interview" entry (file+headline "interviews.org" "Quotes")
"* %^{Quote} :QUOTE:\n:PROPERTIES:\n:Interviewee: %^{Interviewee}\n:Timestamp: %^{Timestamp in Video}\n:Project: %^{Project}\n:Context: %^{Context}\n:END:\n"))
;; Capture Templates for Project Management and Achievements
;;
;; These templates are designed to facilitate the tracking of project details
;; and individual achievements. Given the focus on agile methodologies and
;; continuous improvement, these templates aim to provide a structured way
;; to capture essential information.
;; Project Template
;;
;; This template captures the essential details of a new project. It prompts
;; for the project name, start date, and end date, and provides sections for
;; outlining the project's objectives and challenges. Each project is assigned
;; a unique ID for easy referencing.
(add-to-list 'org-capture-templates
`("p" "Project" entry (file "agenda/projects.org")
,(format "* %%^{Project Name} :PROJECT:\n:PROPERTIES:\n:ID: %s\n:Start Date: %%T\n:End Date: %%^{End Date}\n:END:\n** Objective\n%%?\n** Challenges\n- [ ] %%^{Challenge 1}\n- [ ] %%^{Challenge 2}\n" (org-id-new))))
;; Achievement Template
;;
;; This template is designed to capture individual achievements. It prompts for
;; the title of the achievement, the project it is associated with, and the date.
;; Additionally, it provides fields for describing the achievement, its impact,
;; and any associated tasks. This can be particularly useful for end-of-year
;; reviews or for maintaining a portfolio of accomplishments.
(add-to-list 'org-capture-templates
`("v" "Achievement" entry (file+olp+datetree "achievements.org")
,(concat "* %^{Achievement Title} :ACHIEVEMENT:\n"
":PROPERTIES:\n"
":Project: %^{Project}\n"
":Date: %T\n"
":END:\n"
"- Description: %?\n"
"- Impact: %^{Impact}\n"
"- Associated Tasks: %^{Tasks}\n")))
(add-to-list 'org-capture-templates
'("A" "Accounting"))
;; Expense Tracking
;; Purpose: To capture individual expenses for accounting in a table.
;; Fields: Amount, Category, Note, Date
(add-to-list 'org-capture-templates
'("Ae" "Expense" table-line (file+headline "accounting.org" "Expenses")
"| %U | %^{Amount} | %^{Category} | %? |"))
;; Income Tracking
;; Purpose: To capture instances of income for accounting in a table.
;; Fields: Amount, Source, Date
(add-to-list 'org-capture-templates
'("Ai" "Income" table-line (file+headline "accounting.org" "Income")
"| %U | %^{Amount} | %^{Source} | %? |"))
;; Invoice Tracking
;; Purpose: To capture invoices sent for services or products in a table.
;; Fields: Client, Amount, Due Date
(add-to-list 'org-capture-templates
'("AI" "Invoice" table-line (file+headline "accounting.org" "Invoices")
"| %T | %^{Client} | %^{Amount} | %^{Due Date} | %? |"))
;; Budget Planning
;; Purpose: To capture budget plans for personal or business accounting in a table.
;; Fields: Estimated Income, Estimated Expenses
(add-to-list 'org-capture-templates
`("Ab" "Budget" table-line (file+headline "accounting.org" "Budget")
,(concat "| " (format-time-string "%Y") " | " (format-time-string "%B") " | %^{Estimated Income} | %^{Estimated Expenses} | %? |")))
;; Investment Tracking
;; Purpose: To capture investment details for accounting in a table.
;; Fields: Type, Amount, Notes
(add-to-list 'org-capture-templates
'("Av" "Investment" table-line (file+headline "accounting.org" "Investments")
"| %U | %^{Type} | %^{Amount} | %? |"))
;; Stock Recommendation Capture Template
;; Purpose: To capture stock recommendations for potential investment.
;; Fields: Stock Symbol, Recommender, Notes, Date
(add-to-list 'org-capture-templates
'("s" "Stock Recommendation" entry (file+headline "stocks.org" "Stock Recommendations")
"* %^{Stock Name} :STOCK:\n:PROPERTIES:\n:Date: %T\n:WKN: %^{WKN}\n:ISIN: %^{ISIN}\n:END:\n%?"))
(add-to-list 'org-capture-templates
'("B" "Bücherliste" table-line
(file+headline "books.org" "Meine Bücherliste")
"| %^{Buchtitel} | %^{Autor} | %^{Status||Geplant|In Bearbeitung|Fertig} | %U |" :kill-buffer t))
(provide 'bundle--ct)
;;; bundle--ct.el ends here

211
init.el
View file

@ -1744,217 +1744,6 @@ Uses `mk/hyperspec-dir-locations' to find the directory."
(":-)" . "&#x1f60a;") (":-)" . "&#x1f60a;")
(":-(" . "&#x1f61e;"))) (":-(" . "&#x1f61e;")))
;; Note Capture Template
;; Purpose: To capture general notes. These notes can optionally be linked to a currently clocked-in task.
;; Fields: Heading, optional task link, initial content, and a timestamp.
(add-to-list 'org-capture-templates
`("n" "Note" entry (file "notes.org")
,(concat "* %? :NOTE:\n"
":PROPERTIES:\n"
":ID: %(org-id-new)\n"
"%(mk/link-to-current-task)"
":END:\n"
"Entered on: %U\n")))
;; Task Capture Template
;; Purpose: To capture tasks and automatically assign a unique ID to each task.
;; Fields: Heading, unique ID, timestamp, and link to where the capture was made.
(add-to-list 'org-capture-templates
`("t" "Task" entry (file "agenda/tasks.org")
,(format "* TODO %%? :TASK:\n:PROPERTIES:\n:ID: %s\n:Project: %%^{Project}\n:END:\nEntered on %%U\n" (org-id-new))))
;; Journal Capture Template
;; Purpose: To capture end-of-day reflections.
;; Fields: Heading, timestamp, and prompts for what went well, what could be improved, and focus for tomorrow.
(add-to-list 'org-capture-templates
'("j" "Journal" entry (file+olp+datetree "agenda/journal.org")
"* %T - End of Day Reflection :JOURNAL:\n- Was ist heute gut gelaufen?\n %?\n- Was könnte verbessert werden?\n \n- Worauf konzentriere ich mich morgen?\n "
:empty-lines 1))
;; Updated Appointment Capture Template
;; Purpose: To capture and plan detailed appointments with agenda and preparation tasks.
;; Fields: Title, Date/Time, Location, Attendees, Agenda Items, Preparation Tasks, Notes.
(add-to-list 'org-capture-templates
'("a" "Appointment" entry (file "agenda/appt.org")
"* %^{Title} %^g
:PROPERTIES:
:LOCATION: %^{Location}
:ATTENDEES: %^{Attendees}
:END:
%^{Date}t
** Agenda
%?
** Preparation Tasks
- [ ]
- [ ]
- [ ]
** Notes
" :empty-lines 1))
;; Meeting Capture Template
;; Purpose: To capture meeting notes and automatically start a clock for time tracking.
;; Fields: Topic, timestamp, and additional notes.
(add-to-list 'org-capture-templates
'("m" "Meeting" entry (file "agenda/meetings.org")
"* %^{Topic} \n%T\n%?"
:clock-in t
:empty-lines 1))
;; Log Capture Template
;; Purpose: To capture activities in a chronological order and automatically start a clock for time tracking.
;; Fields: Timestamp, activity description.
(add-to-list 'org-capture-templates
'("l" "Log" entry (file+olp+datetree "logbook.org")
"* %T - %^{Activity} :LOG:\n%?"
:clock-in t
:empty-lines 1))
;; UTM Parameters Capture Template
;; Purpose: To capture UTM parameters for marketing tracking.
;; Fields: Campaign name, source, medium, term, and content.
(add-to-list 'org-capture-templates
'("u" "UTM Parameters" entry (file+headline "utm.org" "UTM Parameters")
"* %^{Campaign Name}\n:PROPERTIES:\n:Source: %^{utm_source}\n:Medium: %^{utm_medium}\n:Term: %^{utm_term}\n:Content: %^{utm_content}\n:END:\n"))
;; Bookmark Capture Template
;; Purpose: To capture bookmarks with tags and a timestamp.
;; Fields: URL, tags, timestamp.
(add-to-list 'org-capture-templates
'("b" "Bookmark" table-line (file+headline "bookmarks.org" "Bookmarks")
"| %^{URL} | %^{Tags} | %u |" :prepend t))
;; Code Snippet Capture Template
;; Purpose: To capture code snippets and specify the programming language.
;; Fields: Code snippet, language specification.
(add-to-list 'org-capture-templates
'("c" "Code Snippet" entry (file+headline "code.org" "Snippets")
"* %?\n#+begin_src %^{language}\n%i\n#+end_src"))
;; Capture Templates for Interviews
;;
;; The following capture templates are designed to facilitate the collection
;; of questions and insights for user interviews. Given the importance of
;; user-centered design in experience architecture, these templates aim to
;; streamline the preparation process for interviews.
;; Interview Sub-menu
;;
;; This entry serves as a sub-menu for all interview-related capture templates.
(add-to-list 'org-capture-templates
'("i" "Interviews"))
;; How Might We (HMW) Template
;;
;; This template is designed to capture "How Might We" questions that are often
;; used to frame problems and opportunities in user interviews. These questions
;; can be crucial for guiding the interview in a direction that yields
;; actionable insights.
(add-to-list 'org-capture-templates
'("ih" "How Might We" entry (file+headline "interviews.org" "HMW Questions")
"* WKW/HMW %? :HMW:\n%U\n:PROPERTIES:\n:Interviewee: %^{Interviewee}\n:Context: %^{Context}\n:END:"))
;; Interview Question Template
;;
;; Use this template to quickly capture questions that you intend to ask during
;; user interviews. The template prompts for the topic of the interview and
;; the project it is associated with, allowing for easy categorization and
;; retrieval later.
(add-to-list 'org-capture-templates
'("iq" "Interview Question" entry (file+headline "interviews.org" "Interview Questions")
"* %^{Interview Topic} :INTERVIEW:\n:PROPERTIES:\n:Project: %^{Project Name}\n:Date: %T\n:END:\n- %?\n"))
;; User Interview Quotes Capture Template
;; Purpose: To capture important quotes from user interviews.
;; Fields: Quote, Interviewee, Timestamp in Video, Project, Context
(add-to-list 'org-capture-templates
'("io" "Quote from User Interview" entry (file+headline "interviews.org" "Quotes")
"* %^{Quote} :QUOTE:\n:PROPERTIES:\n:Interviewee: %^{Interviewee}\n:Timestamp: %^{Timestamp in Video}\n:Project: %^{Project}\n:Context: %^{Context}\n:END:\n"))
;; Capture Templates for Project Management and Achievements
;;
;; These templates are designed to facilitate the tracking of project details
;; and individual achievements. Given the focus on agile methodologies and
;; continuous improvement, these templates aim to provide a structured way
;; to capture essential information.
;; Project Template
;;
;; This template captures the essential details of a new project. It prompts
;; for the project name, start date, and end date, and provides sections for
;; outlining the project's objectives and challenges. Each project is assigned
;; a unique ID for easy referencing.
(add-to-list 'org-capture-templates
`("p" "Project" entry (file "agenda/projects.org")
,(format "* %%^{Project Name} :PROJECT:\n:PROPERTIES:\n:ID: %s\n:Start Date: %%T\n:End Date: %%^{End Date}\n:END:\n** Objective\n%%?\n** Challenges\n- [ ] %%^{Challenge 1}\n- [ ] %%^{Challenge 2}\n" (org-id-new))))
;; Achievement Template
;;
;; This template is designed to capture individual achievements. It prompts for
;; the title of the achievement, the project it is associated with, and the date.
;; Additionally, it provides fields for describing the achievement, its impact,
;; and any associated tasks. This can be particularly useful for end-of-year
;; reviews or for maintaining a portfolio of accomplishments.
(add-to-list 'org-capture-templates
`("v" "Achievement" entry (file+olp+datetree "achievements.org")
,(concat "* %^{Achievement Title} :ACHIEVEMENT:\n"
":PROPERTIES:\n"
":Project: %^{Project}\n"
":Date: %T\n"
":END:\n"
"- Description: %?\n"
"- Impact: %^{Impact}\n"
"- Associated Tasks: %^{Tasks}\n")))
(add-to-list 'org-capture-templates
'("A" "Accounting"))
;; Expense Tracking
;; Purpose: To capture individual expenses for accounting in a table.
;; Fields: Amount, Category, Note, Date
(add-to-list 'org-capture-templates
'("Ae" "Expense" table-line (file+headline "accounting.org" "Expenses")
"| %U | %^{Amount} | %^{Category} | %? |"))
;; Income Tracking
;; Purpose: To capture instances of income for accounting in a table.
;; Fields: Amount, Source, Date
(add-to-list 'org-capture-templates
'("Ai" "Income" table-line (file+headline "accounting.org" "Income")
"| %U | %^{Amount} | %^{Source} | %? |"))
;; Invoice Tracking
;; Purpose: To capture invoices sent for services or products in a table.
;; Fields: Client, Amount, Due Date
(add-to-list 'org-capture-templates
'("AI" "Invoice" table-line (file+headline "accounting.org" "Invoices")
"| %T | %^{Client} | %^{Amount} | %^{Due Date} | %? |"))
;; Budget Planning
;; Purpose: To capture budget plans for personal or business accounting in a table.
;; Fields: Estimated Income, Estimated Expenses
(add-to-list 'org-capture-templates
`("Ab" "Budget" table-line (file+headline "accounting.org" "Budget")
,(concat "| " (format-time-string "%Y") " | " (format-time-string "%B") " | %^{Estimated Income} | %^{Estimated Expenses} | %? |")))
;; Investment Tracking
;; Purpose: To capture investment details for accounting in a table.
;; Fields: Type, Amount, Notes
(add-to-list 'org-capture-templates
'("Av" "Investment" table-line (file+headline "accounting.org" "Investments")
"| %U | %^{Type} | %^{Amount} | %? |"))
;; Stock Recommendation Capture Template
;; Purpose: To capture stock recommendations for potential investment.
;; Fields: Stock Symbol, Recommender, Notes, Date
(add-to-list 'org-capture-templates
'("s" "Stock Recommendation" entry (file+headline "stocks.org" "Stock Recommendations")
"* %^{Stock Name} :STOCK:\n:PROPERTIES:\n:Date: %T\n:WKN: %^{WKN}\n:ISIN: %^{ISIN}\n:END:\n%?"))
(add-to-list 'org-capture-templates
'("B" "Bücherliste" table-line
(file+headline "books.org" "Meine Bücherliste")
"| %^{Buchtitel} | %^{Autor} | %^{Status||Geplant|In Bearbeitung|Fertig} | %U |" :kill-buffer t))
(require 'request) (require 'request)
(use-package org-roam (use-package org-roam