main
  1general:
  2  ui_type: native
  3  theme: light
  4  font_family: JetBrainsMono Nerd Font Mono
  5  font_size: 16
  6  theme_colors:
  7    bg_base: '#ffffff'
  8    bg_input: '#f2f2f2'
  9    accent: '#005f5f'
 10    accent_hover: '#005e8b'
 11    text_main: '#000000'
 12    text_muted: '#595959'
 13    selection_bg: '#dae5ec'
 14    border: '#9f9f9f'
 15addons:
 16  currency:
 17    enabled: true
 18    trigger: 
 19    default_currency: EUR
 20    currencies:
 21    - EUR
 22    - USD
 23    - GBP
 24    - CHF
 25    - JPY
 26  calculator:
 27    enabled: true
 28  emoji:
 29    enabled: true
 30  file_browser:
 31    enabled: true
 32  script_filters:
 33  - name: Timezones
 34    keyword: tz
 35    command: batz
 36    args:
 37    - -j
 38    icon: clock
 39  - name: Worktrees
 40    keyword: wt
 41    command: ~/.config/raffi/scripts/lazyworktree-raffi
 42    icon: folder-git
 43    action: kitty --title Worktrees --directory {value} lazyworktree
 44  - name: Pull Requests
 45    keyword: lpr
 46    command: ~/.config/raffi/scripts/lazypr-raffi
 47    icon: github
 48    action: kitty --title 'PRs' lazypr {value}
 49  - name: Shpool Sessions
 50    keyword: sp
 51    command: ~/.config/raffi/scripts/shpool-raffi
 52    icon: utilities-terminal
 53    action: kitty --title shpool:{value} ssh {value}
 54  - name: Open in Emacs
 55    keyword: ed
 56    command: ~/.config/raffi/scripts/emacs-recentf-raffi
 57    icon: emacs
 58    action: emacsclient -c -a emacs {value}
 59  - name: Org Search
 60    keyword: org
 61    command: ~/.config/raffi/scripts/org-search-raffi
 62    icon: emacs
 63    action: emacsclient -c -a emacs --eval '(find-file "{value}")'
 64  - name: Denote Notes
 65    keyword: dn
 66    command: ~/.config/raffi/scripts/denote-raffi
 67    icon: emacs
 68    action: emacsclient -c -a emacs {value}
 69  - name: Kitty SSH
 70    keyword: ssh
 71    command: ~/.config/raffi/scripts/ssh-raffi
 72    icon: utilities-terminal
 73    action: 'kitty --title ''SSH: {value}'' ssh {value}'
 74  - name: Man Pages
 75    keyword: man
 76    command: ~/.config/raffi/scripts/man-raffi
 77    icon: help-contents
 78    action: kitty --title 'man {value}' sh -c 'man {value} | col -bx | bat -l man -p'
 79  - name: Window Switcher
 80    keyword: win
 81    command: ~/.config/raffi/scripts/niri-windows-raffi
 82    icon: preferences-system-windows
 83    action: niri msg action focus-window --id {value}
 84  - name: Kill Window
 85    keyword: kill
 86    command: ~/.config/raffi/scripts/niri-windows-raffi
 87    icon: window-close
 88    action: niri msg action close-window --id {value}
 89  - name: Org Capture
 90    keyword: cap
 91    command: ~/.config/raffi/scripts/org-capture-raffi
 92    icon: emacs
 93    action: emacsclient -c -F '((name . "capture") (width . 150) (height . 90) (vde/window-popup-frame . t))' -e '(org-capture nil "{value}")' &
 94  - name: Bluetooth
 95    keyword: bt
 96    command: ~/.config/raffi/scripts/bluetooth-raffi
 97    icon: bluetooth
 98    action: bluetoothctl connect {value}
 99    secondary_action: bluetoothctl disconnect {value}
100  - name: IDs & Timestamps
101    keyword: uid
102    command: ~/.config/raffi/scripts/uid-raffi
103    icon: clock
104  - name: Power Profile
105    keyword: pw
106    command: ~/.config/raffi/scripts/power-profile-raffi
107    icon: battery
108    action: busctl set-property net.hadess.PowerProfiles /net/hadess/PowerProfiles net.hadess.PowerProfiles ActiveProfile s {value}
109  - name: YubiKey OATH
110    keyword: otp
111    command: ~/.config/raffi/scripts/yubikey-oath-raffi
112    icon: security-high
113    action: ~/.config/raffi/scripts/yubikey-oath-copy {value}
114  - name: GitHub Pull Requests
115    keyword: pr
116    command: ~/.config/raffi/scripts/pr-raffi
117    args:
118    - --color
119    icon: github
120    action: xdg-open {value}
121    secondary_action: echo -n {value} | wl-copy
122  text_snippets:
123  - name: Emails
124    keyword: em
125    icon: email
126    file: ~/sync/raffi-snippets/emails.yaml
127  - name: Addresses
128    keyword: addr
129    icon: contact
130    file: ~/sync/raffi-snippets/addresses.yaml
131  - name: Red Hat
132    keyword: rh
133    icon: key
134    file: ~/sync/raffi-snippets/redhat.yaml
135  - name: Links
136    keyword: lnk
137    icon: insert-link
138    snippets:
139    - name: GitHub (vdemeester)
140      value: https://github.com/vdemeester
141    - name: GitHub PRs (review requested)
142      value: https://github.com/pulls/review-requested
143    - name: NixOS Search
144      value: https://search.nixos.org
145    - name: Nix PR Tracker
146      value: https://nixpk.gs/pr-tracker.html
147    - name: Home Manager Options
148      value: https://nix-community.github.io/home-manager/options.xhtml
149    - name: Jira Board
150      value: https://issues.redhat.com/secure/RapidBoard.jspa
151    - name: Prow (OpenShift CI)
152      value: https://prow.ci.openshift.org
153  - name: Email Signatures
154    keyword: sig
155    icon: mail
156    file: ~/sync/raffi-snippets/signatures.yaml
157  - name: Git Trailers
158    keyword: git
159    icon: git
160    snippets:
161    - name: Signed-off-by
162      value: 'Signed-off-by: Vincent Demeester <vincent@sbr.pm>'
163    - name: Signed-off-by (Red Hat)
164      value: 'Signed-off-by: Vincent Demeester <vdemeest@redhat.com>'
165    - name: Acked-by
166      value: 'Acked-by: Vincent Demeester <vincent@sbr.pm>'
167    - name: Reviewed-by
168      value: 'Reviewed-by: Vincent Demeester <vincent@sbr.pm>'
169    - name: Tested-by
170      value: 'Tested-by: Vincent Demeester <vincent@sbr.pm>'
171    - name: Co-authored-by
172      value: 'Co-authored-by: Vincent Demeester <vincent@sbr.pm>'
173    - name: /lgtm
174      value: /lgtm
175    - name: /approve
176      value: /approve
177    - name: /lgtm + /approve
178      value: |-
179        /lgtm
180        /approve
181    - name: /retest
182      value: /retest
183    - name: LGTM message
184      value: Thanks for the contribution! LGTM.
185    - name: WIP
186      value: '[WIP] This is a work in progress, please do not merge yet.'
187  web_searches:
188  - name: Google
189    keyword: g
190    url: https://google.com/search?q={query}
191    icon: google
192  - name: GitHub
193    keyword: gh
194    url: https://github.com/search?q={query}&type=repositories
195    icon: github
196  - name: Nix Packages
197    keyword: nix
198    url: https://search.nixos.org/packages?query={query}
199    icon: nix
200  - name: YouTube
201    keyword: yt
202    url: https://www.youtube.com/results?search_query={query}
203    icon: youtube
204  - name: Wikipedia
205    keyword: wp
206    url: https://en.wikipedia.org/w/index.php?search={query}
207    icon: wikipedia
208version: 1
209launchers:
210  firefox:
211    binary: firefox
212    description: Firefox
213    icon: firefox
214  firefox-private:
215    binary: firefox
216    args:
217    - --private-window
218    description: Firefox Private Window
219    icon: firefox
220  firefox-profile-manager:
221    binary: firefox
222    args:
223    - --ProfileManager
224    description: Firefox Profile Manager
225    icon: firefox
226  feishin:
227    binary: feishin
228    description: Feishin (Music)
229    icon: feishin
230  slack:
231    description: Slack
232    icon: slack
233    script: |
234      if command -v slack >/dev/null; then exec slack
235      else exec flatpak run com.slack.Slack; fi
236  mpv-clipboard:
237    description: Play URL from clipboard (mpv)
238    icon: mpv
239    ifexist: mpv
240    script: |
241      wl-paste | xargs mpv
242  dino:
243    binary: dino
244    description: Dino (XMPP)
245    icon: dino
246  gh-news:
247    description: GitHub Notifications
248    icon: github
249    ifexist: gh
250    script: |
251      kitty --title "gh-news" gh-news
252  htop:
253    description: System Monitor
254    icon: htop
255    ifexist: htop
256    script: |
257      kitty --title "htop" htop
258  emacs:
259    binary: emacsclient
260    args:
261    - -c
262    - -a
263    - emacs
264    description: Emacs
265    icon: emacs
266  org-capture:
267    binary: org-capture
268    description: Org Capture
269    icon: emacs
270  kitty:
271    binary: kitty
272    description: Kitty Terminal
273    icon: kitty
274  nautilus:
275    binary: nautilus
276    args:
277    - ~/desktop/downloads
278    description: File Manager (Downloads)
279    icon: system-file-manager
280  cliphist:
281    binary: cliphist
282    args:
283    - list
284    description: Clipboard History
285    icon: accessories-clipboard
286    script: |
287      cliphist list | fuzzel -d | cliphist decode | wl-copy
288    ifenvset: NIRI_SOCKET
289  screenshot-select-clipboard:
290    binary: shotty
291    args:
292    - select-clipboard
293    description: Screenshot selection to clipboard
294    icon: applets-screenshooter
295    ifenvset: NIRI_SOCKET
296  screenshot-select-file:
297    binary: shotty
298    args:
299    - select-file
300    description: Screenshot selection to file
301    icon: applets-screenshooter
302    ifenvset: NIRI_SOCKET
303  screenshot-select-edit:
304    binary: shotty
305    args:
306    - select-edit
307    description: Screenshot selection and edit (satty)
308    icon: applets-screenshooter
309    ifenvset: NIRI_SOCKET
310  screenshot-window:
311    binary: shotty
312    args:
313    - window-file
314    description: Screenshot focused window
315    icon: applets-screenshooter
316    ifenvset: NIRI_SOCKET
317  screenshot-screen:
318    binary: shotty
319    args:
320    - screen-file
321    description: Screenshot full screen
322    icon: applets-screenshooter
323    ifenvset: NIRI_SOCKET
324  recording-toggle:
325    binary: shotty
326    args:
327    - record-toggle
328    - --audio
329    description: Toggle screen recording (with audio)
330    icon: media-record
331    ifenvset: NIRI_SOCKET
332  recording-stop:
333    binary: shotty
334    args:
335    - record-stop
336    description: Stop screen recording
337    icon: media-playback-stop
338    ifenvset: NIRI_SOCKET
339  toggle-color-scheme:
340    binary: toggle-color-scheme
341    description: Toggle dark/light color scheme
342    icon: preferences-desktop-theme
343  org-agenda:
344    description: Org Agenda
345    icon: emacs
346    ifexist: emacsclient
347    script: |
348      emacsclient -c -a emacs --eval '(vde/agenda)'
349  emacs-type:
350    description: Type & Paste (Emacs)
351    icon: emacs
352    ifexist: emacsclient
353    script: |
354      emacsclient -a emacs --eval '(vde/type)'
355  journal-entry:
356    description: Journal Entry
357    icon: emacs
358    ifexist: emacsclient
359    script: |
360      emacsclient -n -c -F '((name . "capture") (width . 150) (height . 90) (vde/window-popup-frame . t))' -e '(org-capture nil "j")'
361  mu4e:
362    description: Email (mu4e)
363    icon: mail-client
364    ifexist: emacsclient
365    script: |
366      emacsclient -c -a emacs --eval '(mu4e)'
367  magit:
368    description: Magit (Git)
369    icon: git
370    ifexist: emacsclient
371    script: |
372      emacsclient -c -a emacs --eval '(magit-status)'
373  obs-studio:
374    binary: obs
375    description: OBS Studio
376    icon: obs
377    ifexist: obs
378  pwvucontrol:
379    binary: pwvucontrol
380    description: Audio Settings
381    icon: audio-volume-high
382  redhat-vpn:
383    binary: redhat-vpn
384    description: Connect Red Hat VPN
385    icon: network-vpn
386    ifexist: redhat-vpn
387  redhat-vpn-disconnect:
388    binary: redhat-vpn-disconnect
389    description: Disconnect Red Hat VPN
390    icon: network-vpn
391    ifexist: redhat-vpn-disconnect