# -*- mode: snippet -*- # name: ADR - Architectural Decision Record # key: ;adr # -- | ID | `(let ((max-id 0)) (save-excursion (goto-char (point-min)) (while (re-search-forward "| ID\\s-+|\\s-+ADR-\\([0-9]+\\)" nil t) (setq max-id (max max-id (string-to-number (match-string 1)))))) (format "ADR-%04d" (1+ max-id)))` | | Subject | ${1:Title of the decision} | |----------------------+-------------------------------------------| | Problem statement | ${2:What is the problem?} | | Decision | ${3:What was decided?} | | Alternatives | ${4:What alternatives were considered?} | | Justification | ${5:Why this decision?} | | Implications | ${6:What are the implications?} | | Derived requirements | ${7:What requirements derive from this?} | | Status | ${8:Proposed} | $0