| Age | Commit message (Collapse) | Author |
|
Integrated LanguageTool as an on-demand grammar checker, replacing the
previously disabled proselint checker.
Changes:
- Created scripts/languagetool-flycheck wrapper for flycheck integration
- Converts LanguageTool JSON output to flycheck format
- Includes suggestions in error messages
- 30-second timeout for large files
- Updated modules/flycheck-config.el:
- Defined languagetool checker for text/markdown/org/gfm modes
- Updated cj/flycheck-prose-on-demand to use LanguageTool
- Added installation instructions (sudo pacman -S languagetool)
- Improved documentation clarity
- Usage: Press C-; ? in org/text/markdown files
- Enables flycheck with LanguageTool
- Shows errors in *Flycheck errors* buffer
- On-demand only (no performance impact)
- Updated docs/NOTES.org:
- Added best practice: Test Emacs launch after non-trivial changes
- Example: emacs --eval "(kill-emacs)"
- Catches startup errors before committing
- Disabled weather debug mode (wttrin-debug nil)
- Marked todo.org grammar checker task as DONE
LanguageTool catches real grammar issues (subject-verb agreement, tense,
punctuation, common mistakes) that proselint missed.
Installation: LanguageTool 6.6 (222MB) from Arch repos
Dependencies: Python 3 (for wrapper script)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
|
- Fixed critical "Selecting deleted buffer" error on startup
- wttrin-mode-line-mode now activates after init completes
- Uses after-init-hook to prevent async buffer deletion
- Weather widget loads safely after Emacs finishes initializing
- Improved modeline right-side spacing
- Added 2 non-breaking spaces after misc-info segment
- Prevents weather icon from appearing flush with edge
- Non-breaking spaces survive right-align trimming
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
|
Changed transcription submenu keybindings:
- C-; t t → C-; t a (transcribe audio)
- C-; t b → C-; t v (view transcriptions)
- C-; t k → unchanged (kill transcription)
More intuitive mnemonics: a=audio, v=view, k=kill
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
|
Implemented full transcription system with local Whisper and OpenAI API
support. Includes comprehensive test suite (60 tests) and reorganized
keybindings for better discoverability.
Features:
- Async transcription (non-blocking workflow)
- Desktop notifications (started/complete/error)
- Output: audio.txt (transcript) + audio.log (process logs)
- Modeline integration showing active transcription count
- Dired integration (press T on audio files)
- Process management and tracking
Scripts:
- install-whisper.sh: Install Whisper via AUR or pip
- uninstall-whisper.sh: Clean removal with cache cleanup
- local-whisper: Offline transcription using installed Whisper
- oai-transcribe: Cloud transcription via OpenAI API
Tests (60 passing):
- Audio file detection (16 tests)
- Path generation logic (11 tests)
- Log cleanup behavior (5 tests)
- Duration formatting (9 tests)
- Active counter & modeline (11 tests)
- Integration workflows (8 tests)
Keybindings:
- Reorganized gcal to C-; g submenu (s/t/r/c)
- Added C-; t transcription submenu (t/b/k)
- Dired: T to transcribe file at point
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
|
Session Summary:
- Fixed all checkdoc linting errors in modeline-config.el
- Created /wrap-it-up workflow automation (slash command + phrase recognition)
- Added reminder for Flymake/Flycheck modeline integration decision
All work committed and pushed. Clean session ending.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
|
Added new "PENDING DECISIONS" section to NOTES.org with reminder about
modeline error/warning integration discussion.
Questions to decide:
- Flymake vs Flycheck
- Format preference (counts vs symbols, clickable?)
- Placement (left vs right side)
- Active window only?
Implementation ready - just needs user preferences.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
|
Created comprehensive session wrap-up workflow triggered by:
- Slash command: /wrap-it-up
- Phrases: "let's wrap it up", "that's a wrap", "let's call it a wrap"
Workflow:
1. Write session notes to docs/NOTES.org (decisions, work, context)
2. Git commit and push all changes to all remotes
3. Friendly goodbye summary with accomplishments and reminders
Added dual documentation:
- .claude/commands/wrap-it-up.md for explicit /wrap-it-up command
- docs/NOTES.org terminology section for phrase recognition
Makes session endings consistent and ensures no work is lost.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
|
Resolved 6 checkdoc linting warnings:
- Added double spaces after periods in docstrings (Emacs convention)
- Changed "calls" to "call" in docstring (imperative form)
All linting checks now pass:
- checkdoc: ✓ No warnings
- make lint: ✓ Passes
- All 83 tests: ✓ Still passing
Also updated docs/sessions/refactor.org to be more generic/reusable.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
|
Print operations are now safer and more intuitive:
Keybinding changes:
- C-; b p → copy file path (safe, common action)
- C-; b P → print to PostScript (dramatic, requires shift)
Print function improvements:
- Add y-or-n-p confirmation before printing
- C-u prefix skips confirmation and enables color printing
- Prevents accidental waste of paper/toner
Serves V2MOM Values:
- Intuitive: Dramatic actions require shift key
- Intuitive: Prevents muscle memory mistakes
- Simple: Reliability through confirmation
Also updated docs/NOTES.org with Makefile availability note.
Closes inbox items from emacs-inbox-zero session (2025-11-03).
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
|
Document lessons learned from chime-org-contacts.el development about
preventing parenthesis errors in Emacs Lisp code.
Key Topics:
- AI code generation strategies (small functions, immediate testing)
- Human developer tools (paredit, smartparens, rainbow-delimiters)
- Real-world case study from chime-org-contacts.el refactoring
- Tools and workflow summary table
Problem Identified:
Both AI and humans struggle with deeply nested Emacs Lisp functions
due to difficulty counting parentheses manually.
Solution Documented:
Break complex functions into small (< 15 line) helpers:
- Easier to verify correctness
- Easier to test independently
- Self-documenting through clear function names
- AI and humans both succeed
Tools Referenced:
- Structural editing: paredit, smartparens, lispy
- Real-time validation: flycheck, flymake
- Visual aids: rainbow-delimiters-mode
- CI/CD: pre-commit hooks with check-parens
This section serves as permanent reference for future Emacs Lisp
development in this repository and others.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
|
Created emacs-inbox-zero session definition and validated it by
executing the workflow. Processed 5 inbox items to zero in 10 minutes.
Session Framework:
- Created docs/sessions/ directory for session definitions
- Added create-session.org (meta-workflow for creating sessions)
- Added emacs-inbox-zero.org (weekly inbox processing workflow)
- Updated NOTES.org with terminology and session tracking
Inbox Zero Results:
- Deleted 1 duplicate task (chime fix)
- Moved 2 to Method 1: org-capture performance [#B], EMMS keybindings [#D]
- Moved 2 to someday-maybe: dashboard icons, persistence files
- Recognized perfectionism pattern (V2MOM Obstacle #4)
Learnings captured in living documents:
- Save Q&A answers incrementally during session creation
- Capture useful context during triage (impact estimates, theories)
- Validation by execution catches what theory misses
Files reorganized:
- Renamed docs files to UPPERCASE for consistency
- Removed SESSION-HANDOFF-ACTIVE-PROJECT.org (replaced by NOTES.org)
V2MOM Metrics fulfilled:
- Weekly triage consistency: ✓ (2025-11-01)
- Active todo count: 29 items (working toward < 20)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
|
- wrote a v2mom about what the config should deliver
- focused the inbox only on tasks related to the v2mom
- moved all other tasks to someday-maybe
|
|
Introduce detailed session handoff documents for Craig's Emacs
configuration project. These provide strategic clarity using the
V2MOM framework and outline current progress, project goals,
recommended actions, and key insights. This addition aims to
streamline handovers and ensure continuity between sessions,
facilitating a systematic approach to addressing identified
challenges and opportunities for improvement.
|