Sway support removed. Moved I38 specific scripts out of the branch covered by dex.

This commit is contained in:
Storm Dragon committed 2026-05-14 21:18:02 -04:00
1 parent 45eb3ae4fc
commit 3a9c2ab6f1
13 files changed
+147 -449

No files matched your search

+18 -107
View File
@@ -187,124 +187,35 @@ The AI assistant stores its configuration in `~/.config/stormux/I38/ai.conf` usi
**Ollama**: Requires Ollama service to be running locally. Automatically discovers available models and supports text analysis.
## Custom Applications in Ratpoison Mode
## Personal Mode
I38 now includes a powerful system for adding custom applications to ratpoison mode with user-defined keybindings. During the configuration process, after setting up window event sounds, you'll be prompted to add custom applications that will be accessible through ratpoison mode.
Personal Mode is a user-defined mode where you can add your own keybindings without worrying about them being overwritten when you update I38.
### How It Works
### Setup
The system will prompt you through a series of questions for each application you want to add:
When you run `i38.sh`, you are prompted to choose a personal mode key (or you can skip it). If you selected one, pressing that key enters Personal Mode.
1. **Application Name**: A descriptive name for the application
2. **Execution Command**: The full path or command to run the application
3. **Command Flags**: Optional command-line arguments
4. **Keybinding**: A custom key combination using I38's notation system
### Adding Custom Bindings
### Keybinding Notation System
Edit `~/.config/i3/customizations` to add your own shortcuts. This file is never overwritten by I38. Inside the `mode "personal" { ... }` block, add i3 `bindsym` commands and end each one with `, mode "default"` so the mode exits after the action.
I38 uses a simple notation system to define keybindings that supports modifiers and special keys:
Example:
#### Modifiers
- `^` = Control (Ctrl)
- `!` = Alt
- `#` = Super (Windows/Cmd key)
- `m` = Your chosen mod key (configured during setup)
- Uppercase letters automatically add Shift (e.g., `C` = Shift+c)
#### Special Keys
- **Function Keys**: `f1`, `f2`, ... `f12`
- **Arrow Keys**: `up`, `down`, `left`, `right`
- **Navigation Keys**: `home`, `end`, `pageup`, `pagedown`
- **Editing Keys**: `insert`, `delete`, `backspace`
- **Other Keys**: `space`, `tab`, `return`, `escape`, `print`
#### Example Keybindings
- `c` = Just the 'c' key
- `^c` = Control+c
- `!f1` = Alt+F1
- `mspace` = Your mod key + Space
- `^!up` = Control+Alt+Up arrow
- `#pagedown` = Super+Page Down
- `C` = Shift+c
- `^C` = Control+Shift+c
### Example Configuration Session
Here's what the configuration prompts look like:
```
Enter application name (or press enter when finished): Discord
Enter execution path/command for Discord: discord
Enter command line flags for Discord (optional): --no-sandbox
Enter keybinding for Discord (Examples: c, ^c, !f1, mspace, ^!up) or ? for help: d
```i3
mode "personal" {
bindsym f exec firefox, mode "default"
bindsym Shift+f exec firefox --private-window, mode "default"
bindsym Escape mode "default"
bindsym Control+g mode "default"
}
```
Another example:
```
Enter application name (or press enter when finished): Terminal Calculator
Enter execution path/command for Terminal Calculator: gnome-calculator
Enter command line flags for Terminal Calculator (optional):
Enter keybinding for Terminal Calculator (Examples: c, ^c, !f1, mspace, ^!up) or ? for help: ^#c
```
With this example, pressing your personal mode key followed by `f` opens Firefox. `Shift+f` opens a private window.
### Getting Help During Configuration
If you type `?` when prompted for a keybinding, I38 will display a comprehensive help screen with:
- Complete modifier notation reference
- List of all supported special keys
- Multiple examples of different keybinding combinations
- Rules about uppercase letters and Shift
### Conflict Detection
I38 automatically prevents keybinding conflicts by:
- Maintaining a list of all existing ratpoison mode bindings
- Checking your custom keybinding against reserved keys
- Showing an error message if you try to use a taken keybinding
- Asking you to choose a different key combination
### Reserved Keybindings
The following keys are already used in ratpoison mode and cannot be assigned to custom applications:
- `c` = Terminal
- `e` = Text editor
- `f` = File manager
- `w` = Web browser
- `k` = Kill window
- `m` = Mumble (if installed)
- `p` = Pidgin (if installed)
- `g` = Game controller status
- Various modifier combinations for volume, music controls, etc.
### Using Your Custom Applications
Once configured, access your custom applications by:
1. Press your ratpoison mode key (e.g., Alt+Escape)
2. Press your custom keybinding (e.g., `d` for Discord)
3. The application launches and ratpoison mode exits
### Advanced Examples
**Media Applications:**
- `vlc` bound to `v` for VLC media player
- `spotify` bound to `^s` for Spotify with Control+s
**Development Tools:**
- `code` bound to `mf2` for VS Code with mod+F2
- `gimp` bound to `!g` for GIMP with Alt+g
**System Tools:**
- `htop` bound to `^#h` for system monitor with Control+Super+h
- `pavucontrol` bound to `!space` for audio control with Alt+Space
### Tips for Choosing Keybindings
1. **Keep it memorable**: Use the first letter of the application name when possible
2. **Group related apps**: Use similar modifiers for related applications
3. **Consider frequency**: Use simpler keys for frequently used applications
4. **Avoid conflicts**: The system will warn you, but plan ahead for a logical layout
### Default Bindings
- `F1` — Show personal mode keybindings
- `Escape` or `Control+g` — Exit Personal Mode
## Panel Mode