<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apheleia.git, branch main</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/apheleia.git/'/>
<entry>
<title>Check changelog properly</title>
<updated>2026-04-22T02:53:38+00:00</updated>
<author>
<name>Radon Rosborough</name>
<email>radon@intuitiveexplanations.com</email>
</author>
<published>2026-04-22T02:53:32+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/apheleia.git/commit/?id=7a2136052f4174c178b28da1a2c632904bf08176'/>
<id>7a2136052f4174c178b28da1a2c632904bf08176</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>fix: sync lisp-indent-offset and lisp-body-indent in apheleia-indent-lisp-buffer (#393)</title>
<updated>2026-04-22T02:53:05+00:00</updated>
<author>
<name>Chris Chen</name>
<email>chrischen@ignity.xyz</email>
</author>
<published>2026-04-22T02:53:05+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/apheleia.git/commit/?id=1720200b1271a9e70ebfc86c0f942ff02aefcdd1'/>
<id>1720200b1271a9e70ebfc86c0f942ff02aefcdd1</id>
<content type='text'>
apheleia-indent-lisp-buffer copies several buffer-local variables to the
scratch buffer before running indent-region, but lisp-indent-offset and
lisp-body-indent are missing. When either of these is set in the
original
buffer, the scratch buffer falls back to different defaults, producing
indentation that disagrees with what indent-region would produce
interactively.

Reproducer: with lisp-indent-offset set to 2, the following form

(setopt
lsp-inlay-hint-enable t
lsp-log-io nil)

formats to one space of indentation instead of two.

Fix: sync lisp-indent-offset and lisp-body-indent from the original
buffer
to the scratch buffer, the same way the existing code already does for
indent-line-function, lisp-indent-function, and indent-tabs-mode.

---------

Co-authored-by: Radon Rosborough &lt;radon@intuitiveexplanations.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
apheleia-indent-lisp-buffer copies several buffer-local variables to the
scratch buffer before running indent-region, but lisp-indent-offset and
lisp-body-indent are missing. When either of these is set in the
original
buffer, the scratch buffer falls back to different defaults, producing
indentation that disagrees with what indent-region would produce
interactively.

Reproducer: with lisp-indent-offset set to 2, the following form

(setopt
lsp-inlay-hint-enable t
lsp-log-io nil)

formats to one space of indentation instead of two.

Fix: sync lisp-indent-offset and lisp-body-indent from the original
buffer
to the scratch buffer, the same way the existing code already does for
indent-line-function, lisp-indent-function, and indent-tabs-mode.

---------

Co-authored-by: Radon Rosborough &lt;radon@intuitiveexplanations.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Add OpenTofu, use by default for Terraform (#391)</title>
<updated>2026-04-14T22:38:43+00:00</updated>
<author>
<name>Radon Rosborough</name>
<email>radon@beeper.com</email>
</author>
<published>2026-04-14T22:38:43+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/apheleia.git/commit/?id=14316996958ec8962d9395bc4d986411f77971de'/>
<id>14316996958ec8962d9395bc4d986411f77971de</id>
<content type='text'>
Seems fairly straightforward to me, Terraform is no longer open-source,
OpenTofu is the compatible open-source successor, similar to the
Redis/Valkey situation.

Of course, if someone still prefers to use Terraform instead, they can
easily customize using:

```tf
(setf (alist-get 'terraform-mode apheleia-mode-alist) 'terraform)
```

We don't have a mechanism for allowing multiple formatters to be
registered for the same major mode, where later ones could be used if
earlier ones are not installed. That might be a nice addition.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Seems fairly straightforward to me, Terraform is no longer open-source,
OpenTofu is the compatible open-source successor, similar to the
Redis/Valkey situation.

Of course, if someone still prefers to use Terraform instead, they can
easily customize using:

```tf
(setf (alist-get 'terraform-mode apheleia-mode-alist) 'terraform)
```

We don't have a mechanism for allowing multiple formatters to be
registered for the same major mode, where later ones could be used if
earlier ones are not installed. That might be a nice addition.</pre>
</div>
</content>
</entry>
<entry>
<title>OCaml: Add neocaml modes for ocamlformat (#389)</title>
<updated>2026-03-13T00:35:06+00:00</updated>
<author>
<name>Mattias</name>
<email>mattias@kojin.tech</email>
</author>
<published>2026-03-13T00:35:06+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/apheleia.git/commit/?id=e6e5d5523d229735ab5f8ec83e10beefcfd00d76'/>
<id>e6e5d5523d229735ab5f8ec83e10beefcfd00d76</id>
<content type='text'>
Add neocaml-mode and neocaml-interface-mode to the list of modes that
can be formatted with ocamlformat</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add neocaml-mode and neocaml-interface-mode to the list of modes that
can be formatted with ocamlformat</pre>
</div>
</content>
</entry>
<entry>
<title>fix: support for gdiff in UNIX-like systems (#388)</title>
<updated>2026-03-06T23:17:42+00:00</updated>
<author>
<name>Jose Maldonado</name>
<email>63384398+yukiteruamano@users.noreply.github.com</email>
</author>
<published>2026-03-06T23:17:42+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/apheleia.git/commit/?id=011e7b999552f3c0730035183a4a6dfb60c10182'/>
<id>011e7b999552f3c0730035183a4a6dfb60c10182</id>
<content type='text'>
In OpenBSD and FreeBSD, `diff` don't have support for `--rcs`. In these
cases, we need to use `gdiff` or `GNU diff` for this support.

This change, fix the use of `diff `or `gdiff` for these OSes and make
apheleia work.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In OpenBSD and FreeBSD, `diff` don't have support for `--rcs`. In these
cases, we need to use `gdiff` or `GNU diff` for this support.

This change, fix the use of `diff `or `gdiff` for these OSes and make
apheleia work.</pre>
</div>
</content>
</entry>
<entry>
<title>Release version 4.4.3</title>
<updated>2026-02-21T20:01:15+00:00</updated>
<author>
<name>Radon Rosborough</name>
<email>radon@intuitiveexplanations.com</email>
</author>
<published>2026-02-21T20:01:15+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/apheleia.git/commit/?id=2bc2bb4cc2caad111e6f2f1b9daf20ec388101ff'/>
<id>2bc2bb4cc2caad111e6f2f1b9daf20ec388101ff</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove --no-doc argument from yq-yaml formatter (#386)</title>
<updated>2026-01-21T00:13:44+00:00</updated>
<author>
<name>Andreas Kurth</name>
<email>github@akurth.de</email>
</author>
<published>2026-01-21T00:13:44+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/apheleia.git/commit/?id=143c1dffed15f1cab3eb06e148fe11224e39471c'/>
<id>143c1dffed15f1cab3eb06e148fe11224e39471c</id>
<content type='text'>
The --no-doc argument removes existing document separators (---) from
yaml files. It is perfectly valid and common practice to use multiple
documents within a single file, e.g. in the kubernetes universe.
Formatting such files with --no-doc breaks their validity.

See also the prettier-yaml test, which preserves the document separator,
too.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The --no-doc argument removes existing document separators (---) from
yaml files. It is perfectly valid and common practice to use multiple
documents within a single file, e.g. in the kubernetes universe.
Formatting such files with --no-doc breaks their validity.

See also the prettier-yaml test, which preserves the document separator,
too.</pre>
</div>
</content>
</entry>
<entry>
<title>apheleia-npx: return silently when formatter is missing (#383)</title>
<updated>2025-12-23T19:24:34+00:00</updated>
<author>
<name>Frédéric Giquel</name>
<email>frederic.giquel@laposte.net</email>
</author>
<published>2025-12-23T19:24:34+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/apheleia.git/commit/?id=426616cf1799dbce89800ae2fe9f155311436503'/>
<id>426616cf1799dbce89800ae2fe9f155311436503</id>
<content type='text'>
Behavior of `aphaleia-npx` currently differs from other formatters by
triggering an error when formatter is missing (causing a message to be
displayed in minibuffer and an error buffer to be created).

This PR adds a test to check if command is on user's PATH before
executing it in order to make `aphaleia-npx` silently ends when the
formatter command is not found at project and system level.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Behavior of `aphaleia-npx` currently differs from other formatters by
triggering an error when formatter is missing (causing a message to be
displayed in minibuffer and an error buffer to be created).

This PR adds a test to check if command is on user's PATH before
executing it in order to make `aphaleia-npx` silently ends when the
formatter command is not found at project and system level.</pre>
</div>
</content>
</entry>
<entry>
<title>Add support for oxfmt formatter (#382)</title>
<updated>2025-12-13T20:23:25+00:00</updated>
<author>
<name>Mike Olson</name>
<email>me@mwolson.org</email>
</author>
<published>2025-12-13T20:23:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/apheleia.git/commit/?id=8a6b75008d0cb5c5dabb08281ad2393ba4341d1c'/>
<id>8a6b75008d0cb5c5dabb08281ad2393ba4341d1c</id>
<content type='text'>
## Summary

- Add oxfmt (Oxc Formatter) as a new formatter option for JavaScript and
TypeScript files

## Details

[Oxfmt](https://oxc.rs/docs/guide/usage/formatter) is a Rust-powered,
Prettier-compatible code formatter from the Oxc project. It's currently
in alpha but offers significant performance improvements (30x+ faster
than Prettier).

Key points:
- Uses `inplace` mode since oxfmt doesn't support stdin/stdout
- Works with all common JS/TS extensions (.js, .jsx, .mjs, .cjs, .ts,
.tsx, .mts)
- Not added to `apheleia-mode-alist` - users can opt-in by setting
`apheleia-formatter` to `oxfmt`
- Defaults are already sensible: 2-space indent, printWidth 100, no tabs

Example usage:
```elisp
(setf (alist-get 'oxfmt apheleia-formatters)
      '("apheleia-npx" "oxfmt" inplace))

;; To use for JS/TS files:
(setq-default apheleia-formatter 'oxfmt)
;; Or per-mode:
(setf (alist-get 'typescript-ts-mode apheleia-mode-alist) 'oxfmt)
```</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
## Summary

- Add oxfmt (Oxc Formatter) as a new formatter option for JavaScript and
TypeScript files

## Details

[Oxfmt](https://oxc.rs/docs/guide/usage/formatter) is a Rust-powered,
Prettier-compatible code formatter from the Oxc project. It's currently
in alpha but offers significant performance improvements (30x+ faster
than Prettier).

Key points:
- Uses `inplace` mode since oxfmt doesn't support stdin/stdout
- Works with all common JS/TS extensions (.js, .jsx, .mjs, .cjs, .ts,
.tsx, .mts)
- Not added to `apheleia-mode-alist` - users can opt-in by setting
`apheleia-formatter` to `oxfmt`
- Defaults are already sensible: 2-space indent, printWidth 100, no tabs

Example usage:
```elisp
(setf (alist-get 'oxfmt apheleia-formatters)
      '("apheleia-npx" "oxfmt" inplace))

;; To use for JS/TS files:
(setq-default apheleia-formatter 'oxfmt)
;; Or per-mode:
(setf (alist-get 'typescript-ts-mode apheleia-mode-alist) 'oxfmt)
```</pre>
</div>
</content>
</entry>
<entry>
<title>Pass --force-exclusion to rubocop (#380)</title>
<updated>2025-12-10T23:52:02+00:00</updated>
<author>
<name>Ibrahim Awwal</name>
<email>ibrahim@volition.co</email>
</author>
<published>2025-12-10T23:52:02+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/apheleia.git/commit/?id=fa5cb9b1d62a63f59e48649e478284d9fd6bb339'/>
<id>fa5cb9b1d62a63f59e48649e478284d9fd6bb339</id>
<content type='text'>
This make rubocop obey exclusions from config files. Otherwise, even if
a file is excluded from in .rubocop.yml, apheleia will still format it.

See
https://docs.rubocop.org/rubocop/usage/basic_usage.html#command-line-flags</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This make rubocop obey exclusions from config files. Otherwise, even if
a file is excluded from in .rubocop.yml, apheleia will still format it.

See
https://docs.rubocop.org/rubocop/usage/basic_usage.html#command-line-flags</pre>
</div>
</content>
</entry>
</feed>
