SHELLEX(1)
π SHELLEX(1) β the shellex manual, bestie edition π
okay so you're looking at shellex, and I'm gonna walk you through the whole thing like we're texting at 2am. buckle up. π
β¨ NAME β¨
shellex β a shell-based launcher. that's the whole vibe. π
πΈ SYNOPSIS πΈ
shellex [...]
π OPTIONS π
okay so here's the tea: all the command-line parameters get passed straight on to urxvt β plus a couple that are shellex-specific. so yeah, you can totally do stuff like -bg grey20 if you want a lighter background. π¦
β οΈ but listen. if you start using this for stuff that's more than just customizing the appearance β like, say, adding your own extensions β it might legitimately stop shellex from working. so be careful, bestie. no cap. π
if you want the full list of options, go read urxvt(1). she's got the receipts. π
π DESCRIPTION π
so shellex is a shell-based launcher that has a lot more features and a much simpler design. it's giving efficiency. it's giving main character.
what it does: it launches a shell (currently zsh(1)) and shows it in a tiny little terminal (currently urxvt(1)), and it wraps every single command with a lil bit of extra magic β redirecting stdout, redirecting stderr, disowning, and closing the shell β so you get that more typical launcher-behaviour. β¨
and the result? a simple launcher with tab-completion and all the other shell features, fully configurable in shell. obsessed, honestly. π«Ά
π§ RESOURCES π§
right now shellex uses two X-Resources to mess with how it behaves. here they are:
shellex.posβ if it's set topointer, shellex shows the window on the window that the mousepointer is on. if it's set tofocus, it uses the output where most of the currently focused window is. defaults tofocus. π±οΈshellex.edgeβ which screen edge to show the launcher on (toporbottom). defaults totop. β¬οΈ
plus!! all the resources defined by urxvt β but with the class shellex instead of urxvt β can be used to customize the appearance or behaviour of the terminal window it uses. so you're not stuck with default anything. π
π CONFIGURATION π
shellex configuration snippets live in /usr/lib/shellex/. π
on start, shellex puts together a list of snippet basenames by looking at all of the paths listed below. then, for each snippet basename, shellex loads the first file it finds when it looks through the paths in order:
$XDG_CONFIG_HOME/.shellexβ typically unset, and defaults to$HOME/.config/shellex.$HOME/.shellex/etc/shellexβ these are the shellex defaults, symlinks to/usr/lib/shellex/conf/
so to customize shellex, here's the stuff you can do inside $XDG_CONFIG_HOME/.shellex or $HOME/.shellex/:
- Overwrite a default by creating a new snippet of the same name.
- Not include a default by creating a symlink to
/dev/nullof the same name. - Include an example-snippet that isn't used by default, by creating a symlink to
/usr/lib/shellex/snippet. - Write your own snippets with a currently unused name. main character energy, honestly. π
π‘ pro tip from the manpage itself: to avoid naming-conflicts in the future, you should add a common suffix to all your own snippets.
snippets are run in ascending order. so by choosing a number that sorts between/after the existing snippet(s), you can make sure it runs at exactly the time you want. for example: if your snippet beeps on errors, name it 15-errorbeep so that it sorts before 20-nobeep. π
π¦ AUTHORS π¦
Axel Wagner <mail@merovius.de> and contributors. love that for them. π
and that's the whole page, bestie!! this was shellex 0.3, dated 12/11/2018. slay, go forth and launch things. π β¨π
π¦ where this page comes from
- debian bookworm: shellex 0.3-1 Β· BSD-3-Clause
- debian trixie: shellex 0.3-1 Β· BSD-3-Clause
- ubuntu jammy: shellex 0.3-1 Β· BSD-3-Clause
- ubuntu noble: shellex 0.3-1 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms