summaryrefslogtreecommitdiff
path: root/modules/custom-buffer-file.el
AgeCommit message (Collapse)Author
2025-11-09feat:buffer-diff: Add syntax-aware buffer diffing with difftasticCraig Jennings
Introduce enhanced buffer comparison with saved file using difftastic for syntax-aware diffing, with a fallback to regular unified diff if difftastic is unavailable. Output is displayed in separate buffers, leveraging ansi-color for improved readability. Also includes comprehensive integration tests covering the diff workflow, handling cases like added, removed, and modified lines, and ensuring graceful handling of special cases and errors.
2025-11-03feat: Upgrade diff-buffer-with-file to ediff and add difftastic for gitCraig Jennings
Two improvements for better diff experience: 1. **Upgraded cj/diff-buffer-with-file to use ediff** (custom-buffer-file.el) - Replaced basic unified diff with ediff-current-file - Now uses existing ediff config (horizontal split, j/k navigation) - C-; b D now launches interactive ediff instead of text diff - Simplified from 17 lines to 5 lines - Removed TODO comment about difftastic integration 2. **Added difftastic for git diffs** (vc-config.el) - Installed binary: difftastic 0.64.0 via pacman - Added difftastic.el package integrated with magit - Keybindings in magit-diff: - D → difftastic-magit-diff (dwim) - S → difftastic-magit-show - Provides structural, language-aware diffs for git changes - Better visualization of code structure changes **Result:** - Buffer vs file: Interactive ediff (can navigate, merge, revert) - Git history: Structural difftastic (language-aware visualization) - Right tool for each job Serves Method 3: "Make Fixing Emacs Frictionless" - Better diffs = easier debugging and code review Updated todo.org: Method 1 progress 7/13 (was 5/13) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-03fix: Swap print keybinding and add confirmation promptCraig Jennings
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>
2025-11-03feat: Add copy-to-top and copy-to-bottom buffer methods with testsCraig Jennings
Add two new methods to copy buffer content regions: - cj/copy-to-bottom-of-buffer: copies from point to end of buffer - cj/copy-to-top-of-buffer: copies from beginning of buffer to point Reorganize copy operations under C-; b c submenu: - C-; b c w: copy whole buffer - C-; b c t: copy to top (beginning to point) - C-; b c b: copy to bottom (point to end) Other copy operations (buffer name, file path, file link) remain at C-; b base level for quick access. Add comprehensive ERT tests (22 tests total): - test-custom-buffer-file-copy-to-bottom-of-buffer.el (11 tests) - test-custom-buffer-file-copy-to-top-of-buffer.el (11 tests) - Tests cover normal, boundary, and error cases including unicode, narrowing, whitespace, and read-only buffers All tests pass. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-01feat:buffer: Add diffing buffer contents with saved fileCraig Jennings
Introduce a new function `cj/diff-buffer-with-file` to compare current buffer with saved file version using unified diff format. Bind it to "C-; b D" for easy access. This enhances buffer management capabilities by allowing users to view changes before saving.
2025-10-31feat:custom-buffer-file: add mark, revert buffer keybindingsCraig Jennings
Added new keybindings for marking the whole buffer and reverting the buffer. Updated the descriptions to reflect these additions.
2025-10-27refactor: Rename custom-file-buffer to custom-buffer-fileCraig Jennings
Renamed the module 'custom-file-buffer' to 'custom-buffer-file' to ensure consistency across the codebase. This change affects module imports and test files. Additionally, new module 'system-commands.el' has been created to handle system power and session management commands, removing these functionalities from 'wip.el'.