Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/2kabhishek/dexe
The exe launcher 🐚🚀
https://github.com/2kabhishek/dexe
cli dmenu fzf launcher productivity shell utility
Last synced: 2 days ago
JSON representation
The exe launcher 🐚🚀
- Host: GitHub
- URL: https://github.com/2kabhishek/dexe
- Owner: 2KAbhishek
- License: gpl-3.0
- Created: 2024-07-07T04:55:35.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-12-15T06:08:08.000Z (about 1 month ago)
- Last Synced: 2025-01-08T11:48:05.058Z (6 days ago)
- Topics: cli, dmenu, fzf, launcher, productivity, shell, utility
- Language: Shell
- Homepage:
- Size: 126 KB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
dexe, pronounced `the E X E or dexy` is a nix CLI launcher that helps you run any executable, alias, and function on your system.
## ✨ Features
- List all executables in yqur PATH
- List all aliases and functions defined in your shell
- Powerful fuzzy finding with fzf
- Glance over help info for any available executable
- Easily integrates with neovim, shell, tmux and other tools## ⚡ Setup
### ⚙️ Requirements
- bash, fzf
### 💻 Installation
```bash
git clone https://github.com/2kabhishek/dexe
cd dexe
# Link dexe to a directory that's in PATH (~/.local/bin here)
ln -sfnv "$PWD/dexe.sh" ~/.local/bin/dexe
```## 🚀 Usage
```bash
dexe: Execute and Launch CLI Tools 🚀✨Usage: dexe [optional pass-through args]
dexe --wait-before-exit -- Wait for input before exiting
dexe -h, --help -- Display this help menudexe README.md -- Run selected command with README.md
dexe --verbose -- Run selected command with --verbose flag
```Use the `--wait-before-exit` flag when you want to "hold" the session even after the command completes, useful in situations where the shell exits after command finishes.
### Integrations
- neovim:
I use `dexe` mapped to Leader t d in my [neovim which-key config](https://github.com/2kabhishek/nvim2k/blob/main/lua/plugins/tools/which-key.lua) with [termim.nvim](https://github.com/2kabhishek/termim.nvim)
You can add it using this in your which-key config:
```lua
t = {
name = 'Terminal',
d = { 'Sterm dexe', 'Exe Launcher' },
w = { 'Sterm dexe --wait-before-exit', 'Exe Launcher, Wait' },
},
```- tmux:
`dexe` is mapped to Alt + d using [tmux-tilit](https://github.com/2kabhishek/tmux-tilit)
You can add it using this in your `tmux.conf`:
```bash
bind-key -n M-d run-shell "dexe"
```- zsh:
`dexe` is mapped to Ctrl + d in my [zsh config](https://github.com/2KAbhishek/dots2k/blob/main/config/zsh/keys.zsh)
You can add it using this in your `.zshrc`
```bash
bindkey -s "^d" ' dexe^M ^M'
```## 🏗️ What's Next
You tell me!
## 🧑💻 Behind The Code
### 🌈 Inspiration
Needed a quick way to run tools that runs both on macOS and Linux.
### 💡 Challenges/Learnings
- Writing pipes to parse all of the executables in PATH
- Figuring out that configured aliases and functions only show up in interactive mode### 🧰 Tooling
- [dots2k](https://github.com/2kabhishek/dots2k) — Dev Environment
- [nvim2k](https://github.com/2kabhishek/nvim2k) — Personalized Editor
- [sway2k](https://github.com/2kabhishek/sway2k) — Desktop Environment
- [qute2k](https://github.com/2kabhishek/qute2k) — Personalized Browser### 🔍 More Info
- [bare-minimum](https://github.com/2kabhishek/bare-minimum) — General purpose template
- [tiny-web](https://github.com/2kabhishek/tiny-web) — Web app template
⭐ hit the star button if you found this useful ⭐
Source
| Blog
| More Links
| Other Projects