Compare commits

...

4 Commits

Author SHA1 Message Date
knedlik
f8d711bb1e Erweiterung Templates und Anpassung Init-Files 2026-04-10 23:27:32 +02:00
knedlik
7be93eb0f9 Neu: Cheatsheet C-c c 2026-04-08 22:35:23 +02:00
knedlik
f0f19590ca Template Docs + Konfiguration 2026-04-08 21:12:07 +02:00
knedlik
0e49835736 Anpassung: init-Files auf debian angepasst 2026-04-08 09:32:50 +02:00
21 changed files with 311 additions and 105 deletions

View File

@@ -1,2 +1,2 @@
(("~/org/notes/neuer_neuer_test.org" "c1f0c054-6a3b-48e9-8f63-61c1061fa080") ("~/org/notes/neuer_test.org" "e136ede2-6fe1-48d9-9b43-dcbdb6e1c925"))
(("~/org/20260410092813-bjorn_bauml.org" "6fe5a97d-02ba-40f7-ab20-068e893d99bf") ("~/org/notes/neuer_neuer_test.org" "c1f0c054-6a3b-48e9-8f63-61c1061fa080") ("~/org/notes/neuer_test.org" "e136ede2-6fe1-48d9-9b43-dcbdb6e1c925") ("~/org/daily/2026-04-09.org" "e093392c-28f3-4f90-bb36-59efb35ec079"))

View File

@@ -3,9 +3,9 @@
;;; nevertheless, you probably don't want to edit it.
;;; -*- End Of Bookmark File Format Version Stamp -*-
(("org-capture-last-stored"
(filename . "~/org/notes/neuer_test.org")
(filename . "~/org/20260410092813-bjorn_bauml.org")
(front-context-string)
(rear-context-string . "category: Notes\n")
(position . 106)
(last-modified 27091 63383 132609 836000))
(rear-context-string . "le: Björn Bäuml\n")
(position . 89)
(last-modified 27096 42652 302432 121000))
)

117
cheatsheet.org Normal file
View File

@@ -0,0 +1,117 @@
#+title: Emacs Cheatsheet
* Tastenkombinationen
** Framenavigation (oder globale Shortcuts)
| Funktion | Shortcut |
|---------------+----------|
| Emacs beenden | C-x C-c |
** Fenster Shortcuts (Window)
| Funktion | Shortcut |
|--------------------------------------+----------|
| alle Fenster außer aktives schließen | C-x 1 |
| horizontal splitten | C-x 2 |
| vertikal splitte | C-x 3 |
| Fenster wechseln | C-x o |
| Fenster schließen | C-x 0 |
** Buffer Shortcuts
| Funktion | Shortcut |
|--------------------------------------------------+--------------------|
| Speichern | C-x C-s |
| Speichern unter | C-x C-w |
| Alle Buffer speichern (mit Bestätigung) | C-x s |
| Datei öffnen über Dateiexplorer in Emacs (dired) | C-x C-f Enter |
| Bestimmte Datei öffnen | C-x C-f <Filename> |
| Neue Datei erstellen (Filename existiert nicht) | C-x C-f <Filename> |
| Buffer wechseln | C-x b |
| Bufferliste | C-x C-b |
** Navigation in Dateien
| Funktion | Shortcut |
|----------------------------+----------|
| Zeichen vorwärts (forward) | C-f |
| Zeichen zurück (back) | C-b |
| Zeile nach oben (previous) | C-p |
| Zeile nach unten (next) | C-n |
| Zum Zeilenangang | C-a |
| Zum Zeilenende | C-e |
| Wort weiter | M-f |
| Wort zurück | M-b |
| Satz weiter | M-e |
| Satz zurück | M-a |
| Absatz vorwärt | M-} |
| Absatz zurück | M-{ |
| Seite vorwärts | C-v |
| Seite zurück | M-v |
| Zum Anfang des Dokuments | M-< |
| Zum Ende des Dokuments | M-> |
** Text bearbeiten
| Funktion | Shortcut |
|------------------------------+-----------------|
| Zeichen löschen rechts | C-d |
| Zeichen löschen links | DEL / Backspace |
| Wort vorwärts löschen | M-d |
| Wort rückwärts löschen | M-DEL |
| bis Zeilenende löschen | C-k |
| Text markieren | C-SPC |
| ausschneiden | C-w |
| kopieren | M-w |
| einfügen | C-y |
| einfügen (älteren Inhalt) | M-y |
| undo | C-/ oder C-x u |
| redo | C-g C-/ |
| Zeile nach oben verschieben | M-↑ |
| Zeile nach unten verschieben | M-↓ |
| Block aus-/einkommentieren | C-c # |
** Suchen (consult-ripgrep)
| Funktion | Shortcut |
|--------------------------+----------|
| Über Dateiinhalte suchen | C-c s |
| In einer Datei suchen | C-c f |
** Dateien suchen (org-roam-nodes)
| Funktion | Shortcut |
|--------------+----------|
| Nodes suchen | C-c r f |
** Links in org-roam
| Funktion | Shortcut |
|----------------------------------+----------|
| Neuen Link erstellen bzw. suchen | C-c r i |
| Link folgen | C-c C-o |
Links werden i.d.R. in einem Split-Fenster geöffnet!
* Latex
** Setupfile-Vorlage
#+SETUPFILE: /home/knedlik/.emacs.d/templates/org/latex-template.org
Einfach oben über der Überschrift einfügen! Dann wird die Latex-Vorlage für der Erstellung von PDF-Files gezogen.
** Seitenumbruch
#+LATEX: \newpage
An der Stelle im Dokument einfügen, an der man umbrechen möchte.

View File

@@ -1,4 +1,4 @@
;; ~/.emacs.d/init.el
;; ~/.emacs.d/init.el -*- lexical-binding: t; -*-
(add-to-list 'load-path "~/.emacs.d/lisp")
@@ -13,8 +13,8 @@
(require 'init-markdown)
(require 'init-search)
(require 'init-capture)
(require 'init-org-r)
(require 'init-org-roam)
(require 'init-system)
;; ;;; Package-System (optional, aber sinnvoll)

View File

@@ -1,4 +1,4 @@
;; (provide 'init-capture)
;; (provide 'init-capture) -*- lexical-binding: t; -*-
;; (defvar my/org-capture-title nil)
@@ -53,6 +53,12 @@
(setq s (replace-regexp-in-string "\\`-\\|-\\'" "" s))
s))
(defun my/org-new-id ()
"Erzeuge eine neue Org-ID."
(org-id-new))
(defun my/org-ensure-directory (dir)
(make-directory dir t)
dir)
@@ -81,24 +87,26 @@
(let ((my/org-capture-title title))
(org-capture nil key)))))
;; ===== Commands =====
(defun my/org-capture-new-task ()
(defun my/org-new-task ()
(interactive)
(let ((title (read-string "Task-Titel: ")))
(my/org-open-or-capture title "n" #'my/org-task-file-from-title)))
(defun my/org-capture-new-doc ()
(defun my/org-new-doc ()
(interactive)
(let ((title (read-string "Doku-Titel: ")))
(my/org-open-or-capture title "d" #'my/org-doc-file-from-title)))
(defun my/org-capture-new-kpi ()
(defun my/org-new-kpi ()
(interactive)
(let ((title (read-string "KPI-Titel: ")))
(my/org-open-or-capture title "k" #'my/org-doc-file-from-title)))
(defun my/org-capture-new-note ()
(defun my/org-new-note ()
(interactive)
(find-file (my/org-today-file))
(when (= (point-max) 1)
@@ -118,11 +126,11 @@
:unnarrowed t
:jump-to-captured t)
("d" "Neue Doku-Datei" plain
("d" "Neue Docs-Datei" plain
(file
(lambda ()
(my/org-doc-file-from-title my/org-capture-title)))
"#+title: %(or my/org-capture-title \"\")\n#+category: Docs\n\n:PROPERTIES:\n:ART: Analyse\n:END:\n\n* Überblick\n%?\n\n* Details\n\n* Referenzen\n"
(file "~/.emacs.d/templates/org/docs-template.org")
:unnarrowed t
:jump-to-captured t)
@@ -131,13 +139,15 @@
(file
(lambda ()
(my/org-doc-file-from-title my/org-capture-title)))
"#+title: %(or my/org-capture-title \"\")\n#+category: Docs\n\n:PROPERTIES:\n:ART: KPI-Steckbrief\n:VERANTWORTLICH: %^{Verantwortlich}\n:BEREICH: %^{Bereich}\n:END:\n\n* Definition\n%?\n\n* Berechnung\n#+begin_src sql\n\n#+end_src\n\n* Datenquelle\n\n* Interpretation\n\n* Hinweise\n"
(file "~/.emacs.d/templates/org/kpi-steckbrief-template.org")
;; "#+title: %(or my/org-capture-title \"\")\n#+category: Docs\n\n:PROPERTIES:\n:ART: KPI-Steckbrief\n:VERANTWORTLICH: %^{Verantwortlich}\n:BEREICH: %^{Bereich}\n:END:\n\n* Definition\n%?\n\n* Berechnung\n#+begin_src sql\n\n#+end_src\n\n* Datenquelle\n\n* Interpretation\n\n* Hinweise\n"
:unnarrowed t
:jump-to-captured t)))
;; ===== Agenda =====
(setq org-agenda-files '("~/org/todos/" "~/org/docs/"))
(setq org-agenda-files '("~/org/todos/"))
(provide 'init-capture)
;;; init-capture.el ends here

View File

@@ -1,10 +1,11 @@
;; -*- lexical-binding: t; -*-
;;; init-keybindings.el --- Keybindings -*- lexical-binding: t; -*-
(global-set-key (kbd "C-c t") #'my/org-capture-new-task)
(global-set-key (kbd "C-c d") #'my/org-capture-new-doc)
(global-set-key (kbd "C-c k") #'my/org-capture-new-kpi)
(global-set-key (kbd "C-c n") #'my/org-capture-new-note)
(global-set-key (kbd "C-c t") #'my/org-new-task)
(global-set-key (kbd "C-c d") #'my/org-new-doc)
(global-set-key (kbd "C-c k") #'my/org-new-kpi)
(global-set-key (kbd "C-c n") #'my/org-new-note)
;; org-roam-keybindings
@@ -12,6 +13,25 @@
(global-set-key (kbd "C-c r i") #'org-roam-node-insert)
(global-set-key (kbd "C-c r b") #'org-roam-buffer-toggle)
;; my cheatsheet
(defun my/open-cheatsheet ()
(interactive)
(find-file "~/.emacs.d/cheatsheet.org"))
(global-set-key (kbd "C-c c") #'my/open-cheatsheet)
;; consult-ripgrep direkt an Ordner Org binden
(defun my/search-org ()
(interactive)
(consult-ripgrep (expand-file-name "~/org/")))
(global-set-key (kbd "C-c s") #'my/search-org)
;;(global-set-key (kbd "C-c s") #'consult-ripgrep)
(global-set-key (kbd "C-c f") #'consult-line)
(global-set-key (kbd "C-c b") #'consult-buffer)
(global-set-key (kbd "C-c g") #'consult-git-grep)
(global-set-key (kbd "C-c #") #'comment-dwim)
(provide 'init-keybindings)
;;; init-keybindings.el ends here

View File

@@ -1,3 +1,4 @@
;; -*- lexical-binding: t; -*-
(require 'markdown-mode)
(add-to-list 'auto-mode-alist '("\\.md\\'" . markdown-mode))

View File

@@ -1,23 +0,0 @@
(require 'org-roam)
(setq org-roam-directory (file-truename "~/org"))
(org-roam-db-autosync-mode)
(setq org-roam-capture-templates
'(("d" "default" plain
"%?"
:if-new (file+head
"docs/${slug}.org"
"#+title: ${title}\n#+category: Docs\n")
:unnarrowed t)
("n" "note" plain
"%?"
:if-new (file+head
"notes/${slug}.org"
"#+title: ${title}\n#+category: Notes\n")
:unnarrowed t)))
(provide 'init-org-r)

33
lisp/init-org-roam.el Normal file
View File

@@ -0,0 +1,33 @@
;; -*- lexical-binding: t; -*-
(require 'org-roam)
(setq org-roam-directory (file-truename "~/org"))
(setq org-roam-dailies-directory "notes/")
(setq org-roam-db-location
(expand-file-name "org-roam.db" user-emacs-directory))
(org-roam-db-autosync-mode)
;; (setq org-roam-capture-templates
;; '(("d" "default" plain
;; "%?"
;; :if-new (file+head
;; "docs/${slug}.org"
;; "#+title: ${title}\n#+category: Docs\n")
;; :unnarrowed t)
;; ("n" "note" plain
;; "%?"
;; :if-new (file+head
;; "notes/${slug}.org"
;; "#+title: ${title}\n#+category: Notes\n")
;; :unnarrowed t)))
(setq org-roam-dailies-capture-templates
'(("d" "default" entry
"* %<%H:%M> %?\n"
:target
(file+head "%<%Y-%m-%d>.org"
"#+title: %<%Y-%m-%d>\n\n"))))
(provide 'init-org-roam)

View File

@@ -1,8 +1,21 @@
;; -*- lexical-binding: t; -*-
(setq org-adapt-indentation t)
(setq org-startup-indented t)
(add-hook 'org-mode-hook #'my/text-indentation-setup)
(add-hook 'org-mode-hook #'org-indent-mode)
(add-hook 'org-mode-hook
(lambda ()
(local-set-key (kbd "RET") #'org-return)))
(setq org-agenda-files '("~/org"))
(setq org-complete-tags-always-offer-all-agenda-tags t)
(defun my/org-export-to-tmp-pdf ()
(interactive)
(let ((org-export-show-temporary-export-buffer nil))
(org-latex-export-to-pdf nil nil nil t nil "/tmp/tmp.tex")))
(provide 'init-org)

View File

@@ -1,3 +1,4 @@
;; -*- lexical-binding: t; -*-
(require 'package)
(setq package-archives

View File

@@ -22,10 +22,10 @@
"rg --null --line-buffered --color=never --max-columns=300 --path-separator / --smart-case --no-heading --line-number .")
;; Nützliche Keybindings
(global-set-key (kbd "C-c s") #'consult-ripgrep)
(global-set-key (kbd "C-c f") #'consult-line)
(global-set-key (kbd "C-c b") #'consult-buffer)
(global-set-key (kbd "C-c g") #'consult-git-grep)
;; (global-set-key (kbd "C-c s") #'consult-ripgrep)
;; (global-set-key (kbd "C-c f") #'consult-line)
;; (global-set-key (kbd "C-c b") #'consult-buffer)
;; (global-set-key (kbd "C-c g") #'consult-git-grep)
(provide 'init-search)
;;; init-search.el ends here

9
lisp/init-system.el Normal file
View File

@@ -0,0 +1,9 @@
;;; init-system.el --- System-/OS-spezifische Konfiguration -*- lexical-binding: t; -*-
(require 'subr-x)
(setq org-file-apps
'((auto-mode . emacs)
("\\.pdf\\'" . "firefox \"%s\"")))
(provide 'init-system)

View File

@@ -1,3 +1,4 @@
;; -*- lexical-binding: t; -*-
(require 'subr-x)
(require 'doom-themes)
@@ -97,3 +98,5 @@
(save-buffer)))
(run-with-idle-timer 2 t #'my/auto-save-if-modified)

View File

@@ -0,0 +1,16 @@
:PROPERTIES:
:ID: %(my/org-new-id)
:DATUM: %<%Y-%m-%d>
:ART: %^{Art|allgemein|report|analyse|software}
:ZUORDNUNG: %^{Bereich||co|at|ku|sp|pw|ag|us|un}
:PROJEKT: %^{Projekt|none}
:ANFORDERER: none
:END:
#+title: %(or my/org-capture-title"")

View File

@@ -3,7 +3,7 @@
:ART: Kpi-Steckbrief
:VERANTWORTLICH: %^{Verantwortlicher}
:BEREICH: %^{Bereich}
:LAYER: strategisch, taktisch, operativ
:LAYER: %^{Layer||strategisch|taktisch|operativ}
:END:
#+title: %(or my/org-capture-title"")

View File

@@ -1,55 +0,0 @@
% Created 2026-04-06 Mo 21:40
% Intended LaTeX compiler: pdflatex
\documentclass[11pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{graphicx}
\usepackage{longtable}
\usepackage{wrapfig}
\usepackage{rotating}
\usepackage[normalem]{ulem}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{capt-of}
\usepackage{hyperref}
\date{\today}
\title{\%(or my/org-capture-title"")}
\hypersetup{
pdfauthor={},
pdftitle={\%(or my/org-capture-title"")},
pdfkeywords={},
pdfsubject={},
pdfcreator={Emacs 30.2 (Org mode 9.7.11)},
pdflang={English}}
\begin{document}
\maketitle
\tableofcontents
\section{Name}
\label{sec:org3887b4b}
\section{Ziel / Zweck}
\label{sec:org88753ba}
\section{Definition}
\label{sec:orga243ffc}
\section{Formel}
\label{sec:orgc2995c4}
\section{Inhalt / Abgrenzung}
\label{sec:orgd457ad1}
\section{Detaildefinitionen / Besonderheiten}
\label{sec:orgb35097d}
\section{Wirkzusammenhang und Nebenbedingungen}
\label{sec:org90a57fc}
\section{Guardrail-KPIs (Leitplanken -> Schutzfunktion)}
\label{sec:orgadbf801}
\section{Contraint-KPIs (Restriktionen -> )}
\label{sec:orga5afd81}
\end{document}

View File

@@ -0,0 +1,47 @@
#+LATEX_COMPILER: xelatex
#+OPTIONS: toc:nil num:nil title:nil author:nil date:nil
#+LATEX_CLASS: article
#+LATEX_HEADER: \usepackage[a4paper,margin=2cm]{geometry}
#+LATEX_HEADER: \usepackage{xcolor}
#+LATEX_HEADER: \usepackage{fontspec}
#+LATEX_HEADER: \setmainfont{DejaVu Serif}
#+LATEX_HEADER: \usepackage{datetime2}
#+LATEX_HEADER: \usepackage{fancyhdr}
#+LATEX_HEADER: \usepackage{lastpage}
#+LATEX_HEADER: \usepackage{titling}
#+LATEX_HEADER: \newcommand{\shortdate}{\ifnum\day<10 0\fi\number\day.\ifnum\month<10 0\fi\number\month.\number\year}
#+LATEX_HEADER: \pagestyle{fancy}
#+LATEX_HEADER: \fancyhf{}
#+LATEX_HEADER: \renewcommand{\headrulewidth}{0.4pt}
#+LATEX_HEADER: \renewcommand{\footrulewidth}{0.4pt}
#+LATEX_HEADER: \makeatletter
#+LATEX_HEADER: \lhead{\@title}
#+LATEX_HEADER: \makeatother
#+LATEX_HEADER: \rhead{\nouppercase{\leftmark}}
#+LATEX_HEADER: \lfoot{\textbf{\textcolor{blue}{GMN}} \textit{Controlling}}
#+LATEX_HEADER: \cfoot{\thepage\ /\ \pageref{LastPage}}
#+LATEX_HEADER: \rfoot{\shortdate}
#+LATEX_HEADER: \fancypagestyle{plain}{%
#+LATEX_HEADER: \fancyhf{}
#+LATEX_HEADER: \renewcommand{\headrulewidth}{0.4pt}
#+LATEX_HEADER: \renewcommand{\footrulewidth}{0.4pt}
#+LATEX_HEADER: \lhead{Kennzahlensystem}
#+LATEX_HEADER: \rhead{\nouppercase{\leftmark}}
#+LATEX_HEADER: \lfoot{\textbf{\textcolor{blue}{GMN}} \textit{Controlling}}
#+LATEX_HEADER: \cfoot{\thepage\ /\ \pageref{LastPage}}
#+LATEX_HEADER: \rfoot{\shortdate}
#+LATEX_HEADER: }
#+LATEX_HEADER: \pretitle{\begin{center}\Large\bfseries}
#+LATEX_HEADER: \posttitle{\par\end{center}\vspace{1em}}
#+LATEX_HEADER: \hypersetup{hidelinks}
#+EXPORT_FILE_NAME: /tmp/tmp

View File

@@ -0,0 +1,13 @@
:PROPERTIES:
:ID: %(my/org-new-id)
:ART: Report
:ZUORDNUNG: %^{Bereich||co|at|ku|sp|pw|ag|us|un}
:PROJEKT: %^{Projekt|none}
:END:
#+title: %(or my/org-capture-title"")
* %(or my/org-capture-title"")

View File

@@ -21,3 +21,4 @@
#+LATEX_HEADER: \lfoot{\textbf{\textcolor{blue}{GMN}} \textit{Controlling}}
#+LATEX_HEADER: \cfoot{\thepage\ /\ \pageref{LastPage}}
#+LATEX_HEADER: \rfoot{\shortdate}
#+EXPORT_FILE_NAME: /tmp/tmp