← Package directory
Available on winget

Install Air

R formatter and language server

Install with winget
winget install --id Posit.Air
Upgrade
winget upgrade --id Posit.Air
Uninstall
winget uninstall --id Posit.Air

About Air

An R formatter and language server, written in Rust.

What's new in 0.9.0

Release Notes - New --stdin-file-path <path> to read from stdin. Read more about this on the website (#471). - Air's behavior relating to directly supplied files and the exclude / default-exclude options has changed to be safer by default. Previously, air format cpp11.R would format cpp11.R, even though it was part of the set of default-excludes, because we assumed that a direct request from a user like this could override these rules. However, tools such as pre-commit or IDEs that format via stdin will blindly call air format on any file that changes and have no knowledge of whether that file should be excluded or not. For this reason, we now exclude files that match exclude or default-exclude patterns even if they are directly supplied on the command line. Similarly, air format my.qmd no longer attempts to format my.qmd. This file is not excluded by exclude or default-exclude, but is also not included by our internal set of default-includes, which currently only accept .R and .r files. Rather than blindly trying to format this directly supplied file, Air now ignores it (#476). - New --force flag to bypass all exclusion and inclusion rules and force a file or folder to be formatted. This flag applies recursively, meaning that all files within a forced folder will also be forcibly formatted, regardless of file type. This flag should rarely be needed, but serves as an escape hatch for cases like air format r-code.txt --force, which is no longer automatically formatted by Air as of this release due to the change mentioned above (#478). - New air generate-shell-completion <SHE...

Read release notes

Version history

Version Updated Notes
0.9.0 Unknown Release Notes - New --stdin-file-path <path> to read from stdin. Read more about this on the website (#471). - Air's behavior relating to directly supplied files and the exclude / default-exclude options has changed to b...
0.5.0 Unknown Release Notes - Added support for a skip field in air.toml (#273). This is an extension of the # fmt: skip comment feature that provides a single place for you to list functions you never want formatting for. For example...
0.4.1 Unknown Release Notes - Language server configuration variables are now fully optional, avoiding issues in editors like Zed or Helix (#246). Install air 0.4.1 Install prebuilt binaries via shell script curl --proto '=https' --tl...
0.4.0 Unknown Release notes