Rofi Dmenu Mode

主題

相關文件

相關文件
man rofi-dmenu
Rofi / Wiki / User scripts

相關議題

範例

範例
show-image

實作案例

實作案例
gh0stzk / RiceSelector
gh0stzk / WallSelect
adi1090x / rofi
christianholman / rofi_notes

相關筆記

Dmenu Mode

撰寫「Rofi 擴充腳本」,除了另一篇介紹的「自訂 Rofi啟動模式」。

關於「自訂 Rofi啟動模式」的範例指令如下

rofi -show my-mode -modes "my-mode:my-script.sh"

然而「Rofi」也提供另一種「模式」,

就是本篇所要探討的「Dmenu Mode」,執行指令如下

rofi -dmenu

在這個「模式」,「rofi」會讀取「standard in」來當作「列表的資料」。

範例指令如下

echo -en "aaa\nbbb\nccc\n" | rofi -dmenu

就會在「rofi」顯示如下的列表

aaa
bbb
ccc

假如我們在「rofi」選擇了「bbb」,按下「Enter」,

則會在「Terminal」的「standard out」顯示

bbb

實作上可以改寫成如下,將選項的結果,紀錄到「selected」這個變數,以利後續的操作。

selected=$(echo -en "aaa.txt\nbbb.txt\nccc.txt\n" | rofi -dmenu)

echo "Selected: ${selected}"

vim ${selected}

或是也可以搭配「xargs」來操作。

echo -en "aaa.txt\nbbb.txt\nccc.txt\n" | rofi -dmenu | xargs -o vim
ls | rofi -dmenu | xargs -o vim