Skip to content

posit-dev/air

Repository files navigation

Air

Actions status

An R formatter and language server, written in Rust.

Installation

Air is usable both as a command line tool and as a language server inside your favorite code editors. If you'd like to use Air within a code editor, we recommend reading our editors guide. If you'd just like to use Air from the command line, you can install Air using our standalone installers.

On macOS and Linux:

curl -LsSf https://github.com/posit-dev/air/releases/latest/download/air-installer.sh | sh

On Windows:

powershell -ExecutionPolicy Bypass -c "irm https://github.com/posit-dev/air/releases/latest/download/air-installer.ps1 | iex"

For a specific version:

curl -LsSf https://github.com/posit-dev/air/releases/download/0.9.0/air-installer.sh | sh
powershell -ExecutionPolicy Bypass -c "irm https://github.com/posit-dev/air/releases/download/0.9.0/air-installer.ps1 | iex"

The installer scripts will automatically add Air to your PATH. The very first time you install Air, for the PATH modifications to be applied you'll need to restart your terminal.

uv

If you use uv, you can install Air via the air-formatter package:

# Global install
uv tool install air-formatter
air format path/to/my/script.R

# Invoke once without installing
uvx --from air-formatter air format path/to/my/script.R

Homebrew

If you're on macOS and are familiar with Homebrew, you can install the air formula with:

brew install air

Air's Homebrew formula is community-maintained.

Pixi

You can use Pixi to install Air from conda-forge:

# Add to a project
pixi add air
pixi run air format path/to/my/script.R

# Install globally
pixi global install air

# Run one-off command
pixi exec air format path/to/my/script.R

Air's conda-forge package is community-maintained.

mise

You can use mise to install Air from conda-forge:

# Add to a project
mise use conda:air
air format path/to/my/script.R

# Install globally
mise use --global conda:air

# Run one-off command
mise exec conda:air -- air format path/to/my/script.R

Air's conda-forge package is community-maintained.

Acknowledgements and inspiration

First and foremost, Air would not exist without the preexisting work and dedication poured into styler. Created by Lorenz Walthert and Kirill Müller, styler proved that the R community does care about how their code is formatted, and had been the primary implementation of the tidyverse style guide for many years.

Additionally, Air draws inspiration from many non-R sources including rust-analyzer, prettier, biome, and ruff. These are all excellent tools that provide either formatters, language servers, or both, all of which have influenced design decisions in Air, produced libraries on which we depend, or wrote code that we included in the project.

We are particularly thankful to biome, as Air is built on top of their language agnostic tooling for both building a rowan syntax tree and implementing a formatter. Biome is an open source project maintained by community members, please consider sponsoring them.

About

R formatter and language server

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors