Rofi non è solo un lanciatore di applicazioni, ma permette di fare molte più cose, tra cui:
- aprire file;
- eseguire comandi bash;
- navigare tra le finestre aperte;
- ...
## Modalità
Rofi ha diverse modalità integrate che implementano casi d'uso comuni e possono essere estese da vari script o plugin.
Di seguito è riportato un elenco delle diverse modalità:
- **run**: permette di lanciare eseguibili nel terminale, a partire dal loro `$PATH`;
- **drun**: avvia le applicazioni installate nel sistema;
- **window**: permette di passare tra le varie finestre aperte;
- **ssh**: avvia il collegamento a un host remoto via ssh;
- **combi**: combina più modalità.
## Installazione su Debian e derivate
```bash
sudo apt update && sudo apt install -y rofi
```
## Configurazione
Per generare il file di configurazione predefinito:
```bash
mkdir -p ~/.config/rofi
rofi -dump-config > ~/.config/rofi/config.rasi
```
Questo comando crea un file chiamato `config.rasi` nel seguente percorso: `~/.config/rofi/`. È possibile modificare questo file per personalizzare rofi, anche graficamente con dei temi personalizzati.
È sufficiente specificare un elenco ordinato e separato da virgole delle modalità da abilitare. Ecco un esempio, con abilitate solo le modalità `run` e `ssh`:
```bash
rofi -modes "run,ssh" -show run
```
Per ottenere una visione combinata di due o più modalità:
Quindi, per scegliere lo stile, modificare il file `~/.config/rofi/launchers/type-X/launcher.sh`, dove `X` è un numero da 1 a 7, inserendo lo stile prescelto.
In questo modo, è possibile lanciare comandi bash direttamente da rofi, tramite la seguente sintassi:
```bash
terminal_name command
konsole ncdu
```
oppure passare tra le finestre attive, infine selezionare i risultati con delle scorciatoie (`Alt+X`), dove `X` indica un numero maggiore o uguale a 1, corrispondente al risultato dell'applicazione che si desidera avviare.