<feed xmlns='http://www.w3.org/2005/Atom'>
<title>nvim-config/plugin/50-autowrite.lua, branch dev</title>
<subtitle>Neovim configuration</subtitle>
<id>http://git.tvcloud.fr/nvim-config/atom/plugin/50-autowrite.lua?h=dev</id>
<link rel='self' href='http://git.tvcloud.fr/nvim-config/atom/plugin/50-autowrite.lua?h=dev'/>
<link rel='alternate' type='text/html' href='http://git.tvcloud.fr/nvim-config/'/>
<updated>2026-07-14T15:15:31Z</updated>
<entry>
<title>refactor: remove lua/dotfiles subfolder</title>
<updated>2026-07-14T15:15:31Z</updated>
<author>
<name>Thomas Vanbesien</name>
<email>tvanbesi@proton.me</email>
</author>
<published>2026-07-14T14:11:45Z</published>
<link rel='alternate' type='text/html' href='http://git.tvcloud.fr/nvim-config/commit/?id=a411f79725c92d7ef89484a87a239aa2e0bc5c98'/>
<id>urn:sha1:a411f79725c92d7ef89484a87a239aa2e0bc5c98</id>
<content type='text'>
</content>
</entry>
<entry>
<title>style(nvim): rewrap comments to satisfy the comment checker</title>
<updated>2026-07-11T13:18:00Z</updated>
<author>
<name>Thomas Vanbesien</name>
<email>tvanbesi@proton.me</email>
</author>
<published>2026-07-11T13:18:00Z</published>
<link rel='alternate' type='text/html' href='http://git.tvcloud.fr/nvim-config/commit/?id=eac1a9022da82aa052c299a057a84882bb4a5608'/>
<id>urn:sha1:eac1a9022da82aa052c299a057a84882bb4a5608</id>
<content type='text'>
Break comment lines after sentence-ending punctuation, give function
comments a period-terminated one-line summary, and wrap comment lines
to 100 columns.
Comments only, no behavior change.
</content>
</entry>
<entry>
<title>feat: rework buffer &amp; spell toggle commands and keymaps</title>
<updated>2026-07-03T21:35:25Z</updated>
<author>
<name>Thomas Vanbesien</name>
<email>tvanbesi@proton.me</email>
</author>
<published>2026-07-03T21:35:25Z</published>
<link rel='alternate' type='text/html' href='http://git.tvcloud.fr/nvim-config/commit/?id=d0170737823552eadcd9120e3dcfef85ba8923fc'/>
<id>urn:sha1:d0170737823552eadcd9120e3dcfef85ba8923fc</id>
<content type='text'>
Rename the toggle commands to consistent CamelCase: FormatToggle →
AutoFormatToggle, AutowriteToggle → AutoWriteToggle, AutoreloadToggle →
AutoReloadToggle; capitalize the AutoWrite/AutoReload feature names in
prose too.

Group the per-buffer toggles under &lt;Leader&gt;b: bs (save), bf (format),
br (reload), bw (wrap, was &lt;Leader&gt;w), bh (LSP hints, was &lt;Leader&gt;lh);
drop the &lt;C-s&gt; autosave map.
Group spelling under &lt;Leader&gt;s: ss (toggle), se/sf/sb (en/fr/en-fr).
Register every command and map in the General help category.
</content>
</entry>
<entry>
<title>feat: group the cheatsheet by feature and scope commands to buffers</title>
<updated>2026-07-03T12:44:16Z</updated>
<author>
<name>Thomas Vanbesien</name>
<email>tvanbesi@proton.me</email>
</author>
<published>2026-07-03T12:44:16Z</published>
<link rel='alternate' type='text/html' href='http://git.tvcloud.fr/nvim-config/commit/?id=401b7585b4a27dd6e9d63e818b2505aedd082be0'/>
<id>urn:sha1:401b7585b4a27dd6e9d63e818b2505aedd082be0</id>
<content type='text'>
Break the single "Global" cheatsheet bucket into one section per
feature, and label buffer-local sections "&lt;feature&gt; (buffer-local)" so
each entry's scope is explicit. Drop the completion cursor-motion
entries.

Correct commands that were declared global but only act on the current
buffer, making them buffer-local:
- NotesRename and NotesRenameSection, created in init_notes_buffer.
- ClaudeBashHistory, ClaudeBashHistoryNext and ClaudeBashHistoryPrevious,
  created in the per-buffer init (set_monitor_keymaps renamed to
  init_monitor_buffer, which now sets commands too).
- MarkdownCheck and MarkdownUncheck, created from a new FileType
  markdown autocmd.

ClaudeBashMonitor stays global: it is the opener with session-name
completion and must be callable from any buffer.
</content>
</entry>
<entry>
<title>feat(help): declarative cheatsheet engine and floating window</title>
<updated>2026-07-03T11:34:46Z</updated>
<author>
<name>Thomas Vanbesien</name>
<email>tvanbesi@proton.me</email>
</author>
<published>2026-07-03T11:34:46Z</published>
<link rel='alternate' type='text/html' href='http://git.tvcloud.fr/nvim-config/commit/?id=79956264beb1d1dde959f164b011d4fc73d4916e'/>
<id>urn:sha1:79956264beb1d1dde959f164b011d4fc73d4916e</id>
<content type='text'>
Replace the treesitter source scan, ctags tagfile, and fzf-lua tag
picker with a `dotfiles.help` engine and a plain floating window.

The engine's `register(scope, spec)` records metadata only — it sets
no keymap or command — so a feature can declare its buffer-local maps
at load time and they are listed at startup regardless of what buffers
have been opened, and each entry carries a scope.

Features declare their user-facing maps and commands through
`help.register`; the float renders them grouped by scope, keymaps with
Vim's per-mode prefix and commands as `:Name`. `g?` and `:Cheatsheet`
open it; `q`, `&lt;Esc&gt;`, and `&lt;C-c&gt;` close it.
</content>
</entry>
<entry>
<title>fix(autowrite): run the on-write formatter</title>
<updated>2026-07-02T22:02:53Z</updated>
<author>
<name>Thomas Vanbesien</name>
<email>tvanbesi@proton.me</email>
</author>
<published>2026-07-02T21:20:46Z</published>
<link rel='alternate' type='text/html' href='http://git.tvcloud.fr/nvim-config/commit/?id=975e931262f0f37c888e6b3c889326a971348dea'/>
<id>urn:sha1:975e931262f0f37c888e6b3c889326a971348dea</id>
<content type='text'>
The TextChanged/InsertLeave autocmd calls :update from inside an autocmd
callback, and Vim does not fire nested autocmds by default, so the
:update's BufWritePre never ran and the format engine was skipped: the
buffer saved but stayed unformatted. Mark the autocmd nested so :update
fires BufWritePre and 50-format.lua reformats on autowrite.
</content>
</entry>
<entry>
<title>feat(autowrite): turn &lt;C-s&gt; into a per-buffer autosave toggle</title>
<updated>2026-07-02T15:47:30Z</updated>
<author>
<name>Thomas Vanbesien</name>
<email>tvanbesi@proton.me</email>
</author>
<published>2026-07-02T15:47:30Z</published>
<link rel='alternate' type='text/html' href='http://git.tvcloud.fr/nvim-config/commit/?id=8b3c69fd7e5e4de373aa6c50fc59dabd53243f54'/>
<id>urn:sha1:8b3c69fd7e5e4de373aa6c50fc59dabd53243f54</id>
<content type='text'>
Replace the plain &lt;C-s&gt; save keymap with a new 50-autowrite.lua feature.
A buffer flagged for autowrite is written on every normal-mode change and on leaving insert mode, and turning the flag on saves the buffer immediately.
The state lives in vim.b.autowrite, off by default, and shows as a +W statusline flag next to +R.
</content>
</entry>
</feed>
