<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dotemacs.git/.gitignore, branch v0.7.2</title>
<subtitle>my Emacs configuration
</subtitle>
<id>https://git.cjennings.net/dotemacs.git/atom?h=v0.7.2</id>
<link rel='self' href='https://git.cjennings.net/dotemacs.git/atom?h=v0.7.2'/>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs.git/'/>
<updated>2026-04-05T11:15:49+00:00</updated>
<entry>
<title>chore: gitignore and untrack CLAUDE.md</title>
<updated>2026-04-05T11:15:49+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-05T11:15:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs.git/commit/?id=660f0adf5a388c0659b3ae267000fd6264cb7adc'/>
<id>urn:sha1:660f0adf5a388c0659b3ae267000fd6264cb7adc</id>
<content type='text'>
</content>
</entry>
<entry>
<title>chore: gitignore and untrack build artifacts, vendored assets, personal files</title>
<updated>2026-04-05T11:15:13+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-05T11:15:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs.git/commit/?id=16f67628b09a67882e735586bf7ea56eb7651644'/>
<id>urn:sha1:16f67628b09a67882e735586bf7ea56eb7651644</id>
<content type='text'>
Untrack .cask/, .localrepo/ (61M), emojis/ (7.2M), inbox/, todo.org,
v2mom.org, .time-zones.el. Move test-reporter-spec.org to docs/ (already
gitignored). Reduces tracked repo size significantly.
</content>
</entry>
<entry>
<title>feat(reveal): add org-reveal presentation workflow with ERT tests</title>
<updated>2026-02-14T09:21:13+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-02-14T09:21:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs.git/commit/?id=176ea668cdd83beddd54a24334a8a9db3cc87dfb'/>
<id>urn:sha1:176ea668cdd83beddd54a24334a8a9db3cc87dfb</id>
<content type='text'>
Replaced pandoc-based reveal.js export with native ox-reveal integration.
New org-reveal-config.el module provides offline, self-contained HTML export
with keybindings under C-; p. Includes setup script for reveal.js 5.1.0
and 34 ERT tests covering header template and title-to-filename helpers.
</content>
</entry>
<entry>
<title>feat(calendar-sync): add RECURRENCE-ID exception handling for recurring events</title>
<updated>2026-02-03T13:39:50+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-02-03T13:39:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs.git/commit/?id=84a02097bf842e96f7f4dd4e4ac39e78faf64989'/>
<id>urn:sha1:84a02097bf842e96f7f4dd4e4ac39e78faf64989</id>
<content type='text'>
Handle rescheduled instances of recurring calendar events by processing
RECURRENCE-ID properties from ICS files. When someone reschedules a single
instance of a recurring meeting in Google Calendar, the calendar-sync module
now shows the rescheduled time instead of the original RRULE time.

New functions:
- calendar-sync--get-recurrence-id: Extract RECURRENCE-ID from event
- calendar-sync--get-recurrence-id-line: Get full line with TZID params
- calendar-sync--parse-recurrence-id: Parse into (year month day hour minute)
- calendar-sync--collect-recurrence-exceptions: Collect all exceptions by UID
- calendar-sync--occurrence-matches-exception-p: Match occurrences to exceptions
- calendar-sync--apply-single-exception: Apply exception data to occurrence
- calendar-sync--apply-recurrence-exceptions: Apply all exceptions to occurrences

Also adds DeepSat calendar configuration (dcal-file) to user-constants,
init.el, and org-agenda-config.

48 unit and integration tests added covering normal, boundary, and error cases.
</content>
</entry>
<entry>
<title>chore: untrack calendar sync generated data</title>
<updated>2026-01-27T14:22:42+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-01-27T14:22:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs.git/commit/?id=deff0a3df2bed6cae5c89626a3db2676358a4a0f'/>
<id>urn:sha1:deff0a3df2bed6cae5c89626a3db2676358a4a0f</id>
<content type='text'>
These files change every sync and don't belong in version control.
</content>
</entry>
<entry>
<title>chore: add .stignore to gitignore, add terminal pinentry TODO</title>
<updated>2026-01-24T18:39:40+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-01-24T18:39:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs.git/commit/?id=8fb50fa29252d12165a51f885cb8424598635061'/>
<id>urn:sha1:8fb50fa29252d12165a51f885cb8424598635061</id>
<content type='text'>
- Ignore .stignore (Syncthing config)
- Add TODO [#C] for terminal GPG pinentry work (branch: terminal-pinentry)
</content>
</entry>
<entry>
<title>chore: updated tasks</title>
<updated>2025-11-15T00:37:43+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2025-11-15T00:37:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs.git/commit/?id=324497c3cdd9d4655e68e17c2a5b4120bbb0f33d'/>
<id>urn:sha1:324497c3cdd9d4655e68e17c2a5b4120bbb0f33d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>chore: Move .claude folder to .gitignore</title>
<updated>2025-11-06T06:48:12+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2025-11-06T06:48:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs.git/commit/?id=c0bef757c0aaf8958537a24dcfdbd2d7ea5c1ea8'/>
<id>urn:sha1:c0bef757c0aaf8958537a24dcfdbd2d7ea5c1ea8</id>
<content type='text'>
Removed .claude/ from version control to keep personal Claude Code
configuration and custom commands private. The folder remains on disk
but is no longer tracked by git.

Files removed from tracking:
- .claude/commands/wrap-it-up.md (custom command)
- .claude/settings.local.json (local settings)

The .claude/ folder still exists locally but is now gitignored.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>chore: Move docs folder to .gitignore</title>
<updated>2025-11-06T06:44:46+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2025-11-06T06:44:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs.git/commit/?id=0f955307ed566985af114fc75e5bfcf4ec0a22d3'/>
<id>urn:sha1:0f955307ed566985af114fc75e5bfcf4ec0a22d3</id>
<content type='text'>
Removed docs/ from version control to keep session notes, personal
workflows, and V2MOM documentation private. These files remain on disk
but are no longer tracked by git.

Files removed from tracking:
- docs/NOTES.org (session history)
- docs/EMACS-CONFIG-V2MOM.org (personal goals)
- docs/SOMEDAY-MAYBE.org (research backlog)
- docs/values-comparison.org
- docs/workflows/*.org (workflow templates)

The docs/ folder still exists locally but is now gitignored.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>chore: ignoring flycheck temp files</title>
<updated>2025-10-26T01:14:35+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2025-10-26T01:14:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs.git/commit/?id=7f7c8bb51fc745ee1eaf8d7fa01b67c7dde8e722'/>
<id>urn:sha1:7f7c8bb51fc745ee1eaf8d7fa01b67c7dde8e722</id>
<content type='text'>
</content>
</entry>
</feed>
