---
name: "waybar-niri-language"
section: "5"
platform: "linux"
package: "waybar"
version: "0.15.0-3"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/waybar-niri-language"
---

# waybar-niri-language(5)

niri language module

## NAME

waybar - niri language module

## DESCRIPTION

The **language** module displays the currently selected language in niri.

## CONFIGURATION

Addressed by **niri/language**

**format**: \
 typeof: string \
 default: {} \
 The format, how information should be displayed.

**format-\<lang\>** \
 typeof: string\
 Provide an alternative name to display per language where \<lang\> is the language of your choosing. Can be passed multiple times with multiple languages as shown by the example below.

**menu**: \
 typeof: string \
 Action that popups the menu.

**menu-file**: \
 typeof: string \
 Location of the menu descriptor file. There need to be an element of type GtkMenu with id **menu**

**menu-actions**: \
 typeof: array \
 The actions corresponding to the buttons of the menu.

**expand**: \
 typeof: bool \
 default: false \
 Enables this module to consume all left over space dynamically.

## FORMAT REPLACEMENTS

**{short}**: Short name of layout (e.g. "us"). Equals to {}.

**{shortDescription}**: Short description of layout (e.g. "en").

**{long}**: Long name of layout (e.g. "English (Dvorak)").

**{variant}**: Variant of layout (e.g. "dvorak").

## EXAMPLES

```
"niri/language": {
	"format": "Lang: {long}",
	"format-en": "AMERICA, HELL YEAH!",
	"format-tr": "As bayrakları"
}
```

## STYLE

- •

  **#language**

Additionally, a CSS class matching the current layout's short name is added to the widget. This allows per-language styling, for example:

```
#language.us { color: #00ff00; }
#language.de { color: #ff0000; }
#language.fr { color: #0000ff; }
```
