From a7683f16bfee4bb24ff5d43e228285ca99ece9f9 Mon Sep 17 00:00:00 2001 From: vikingowl Date: Mon, 6 Apr 2026 02:02:06 +0200 Subject: [PATCH] docs: update config example and README to reflect provider field removal --- README.md | 58 ++++++++++++++++++++++++++++++---------- data/config.example.toml | 58 +++++++++++----------------------------- 2 files changed, 59 insertions(+), 57 deletions(-) diff --git a/README.md b/README.md index 8477cfa..5d2ac8a 100644 --- a/README.md +++ b/README.md @@ -254,7 +254,7 @@ Type `:config` to browse and modify settings without editing files: | Command | What it does | |---------|-------------| | `:config` | Show all setting categories | -| `:config providers` | Toggle providers on/off | +| `:config providers` | Toggle built-in providers on/off (calculator, converter, system, frecency) | | `:config theme` | Select color theme | | `:config engine` | Select web search engine | | `:config frecency` | Toggle frecency, set weight | @@ -265,6 +265,8 @@ Type `:config` to browse and modify settings without editing files: Changes are saved to `config.toml` immediately. Some settings (theme, frecency) take effect on the next search. Others (font size, dimensions) require a restart. +> **Note:** `:config providers` only covers built-in providers. To enable or disable plugins, use `owlry plugin enable/disable ` or set `disabled_plugins` in `[plugins]`. + ### Search Prefixes | Prefix | Provider | Example | @@ -332,33 +334,54 @@ Or configure from within the launcher: type `:config` to interactively change se ```toml [general] show_icons = true -max_results = 10 -tabs = ["app", "cmd", "uuctl"] -# terminal_command = "kitty" # Auto-detected -# use_uwsm = false # Enable for systemd session integration +max_results = 100 +tabs = ["app", "cmd", "uuctl"] # Provider tabs shown in the header bar +# terminal_command = "kitty" # Auto-detected; overrides $TERMINAL and xdg-terminal-exec +# use_uwsm = false # Enable for systemd session integration (uwsm app --) [appearance] width = 850 height = 650 font_size = 14 border_radius = 12 -# theme = "owl" # Or: catppuccin-mocha, nord, dracula, etc. +# theme = "owl" # Or: catppuccin-mocha, nord, dracula, etc. (see Theming section) -[plugins] -disabled = [] # Plugin IDs to disable, e.g., ["emoji", "pomodoro"] +# Optional per-element color overrides — all fields are optional, unset inherits from theme +# [appearance.colors] +# background = "#1e1e2e" +# background_secondary = "#313244" +# border = "#45475a" +# text = "#cdd6f4" +# accent = "#cba6f7" +# badge_app = "#a6e3a1" # All badge_* keys: app, cmd, clip, ssh, emoji, file, +# badge_web = "#89dceb" # script, sys, uuctl, web, calc, bm, dmenu, +# badge_media = "#f38ba8" # media, weather, pomo [providers] applications = true # .desktop files commands = true # PATH executables -calculator = true # Built-in math expressions -converter = true # Built-in unit/currency conversion +calculator = true # Built-in math expressions (= or calc trigger) +converter = true # Built-in unit/currency converter (> trigger) system = true # Built-in shutdown/reboot/lock actions frecency = true # Boost frequently used items -frecency_weight = 0.3 # 0.0-1.0 +frecency_weight = 0.3 # 0.0 = disabled, 1.0 = strong boost -# Web search engine: google, duckduckgo, bing, startpage, brave, ecosia +# Web search engine: google, duckduckgo, bing, startpage, searxng, brave, ecosia +# Or a custom URL with a {query} placeholder: "https://example.com/search?q={query}" search_engine = "duckduckgo" +[plugins] +# disabled_plugins = ["emoji", "pomodoro"] # Plugin IDs to disable +# enabled_plugins = [] # Empty = all discovered plugins are loaded +# registry_url = "https://..." # Custom plugin registry URL + +# Sandboxing for Lua/Rune user plugins (~/.config/owlry/plugins/) +# [plugins.sandbox] +# allow_filesystem = false # Allow access outside plugin directory +# allow_network = false # Allow outbound network requests +# allow_commands = false # Allow shell command execution +# memory_limit = 67108864 # Lua memory cap in bytes (default: 64 MB) + # Profiles: named sets of modes [profiles.dev] modes = ["app", "cmd", "ssh"] @@ -382,10 +405,17 @@ Add plugin IDs to the disabled list in your config: ```toml [plugins] -disabled = ["emoji", "pomodoro"] +disabled_plugins = ["emoji", "pomodoro"] ``` -Or toggle providers interactively: type `:config providers` in the launcher. +Or use the CLI: + +```bash +owlry plugin disable emoji +owlry plugin enable emoji +``` + +> **Note:** `:config providers` in the launcher only manages built-in providers (calculator, converter, system). Use `disabled_plugins` or `owlry plugin disable` for plugins. ### Plugin Management CLI diff --git a/data/config.example.toml b/data/config.example.toml index 0f019b3..5101a94 100644 --- a/data/config.example.toml +++ b/data/config.example.toml @@ -59,8 +59,10 @@ max_results = 100 # Requires: uwsm to be installed # use_uwsm = true -# Header tabs - providers shown as toggle buttons (Ctrl+1, Ctrl+2, etc.) -# Values: app, cmd, uuctl, bookmark, calc, clip, dmenu, emoji, file, script, ssh, sys, web +# Header tabs — provider tabs shown in the UI bar (Ctrl+1..9 to toggle) +# Core values: app, cmd, dmenu +# Plugin values: uuctl, calc, clip, emoji, file, script, ssh, sys, web, bm +# Any installed plugin's type_id is valid (e.g. "weather", "media") tabs = ["app", "cmd", "uuctl"] # ═══════════════════════════════════════════════════════════════════════ @@ -140,55 +142,25 @@ disabled_plugins = [] # PROVIDERS # ═══════════════════════════════════════════════════════════════════════ # -# Enable/disable providers and configure their settings. -# Core providers (applications, commands) are built into the binary. -# Plugin providers require their .so to be installed. +# Controls built-in providers only. Plugins are enabled/disabled via +# [plugins] disabled_plugins or `owlry plugin enable/disable `. [providers] -# Core providers (always available) +# Core providers applications = true # .desktop applications from XDG dirs commands = true # Executables from $PATH -# Frecency - boost frequently/recently used items +# Built-in providers (compiled into owlry-core) +calculator = true # Math expressions (= or calc trigger) +converter = true # Unit/currency conversion (> trigger) +system = true # System actions: shutdown, reboot, lock, etc. + +# Frecency — boost frequently/recently used items # Data stored in: ~/.local/share/owlry/frecency.json frecency = true frecency_weight = 0.3 # 0.0 = disabled, 1.0 = strong boost -# ───────────────────────────────────────────────────────────────────────── -# Plugin provider toggles (require corresponding plugin installed) -# ───────────────────────────────────────────────────────────────────────── -uuctl = true # systemd user units -system = true # System commands (shutdown, reboot, etc.) -ssh = true # SSH hosts from ~/.ssh/config -clipboard = true # Clipboard history (requires cliphist) -bookmarks = true # Browser bookmarks -emoji = true # Emoji picker -scripts = true # Custom scripts from ~/.local/share/owlry/scripts/ -files = true # File search (requires fd or mlocate) -calculator = true # Calculator (= expression) -websearch = true # Web search (? query) - -# ───────────────────────────────────────────────────────────────────────── -# Widget providers (displayed at top of results) -# ───────────────────────────────────────────────────────────────────────── -media = true # MPRIS media player controls -weather = false # Weather widget (disabled by default) -pomodoro = false # Pomodoro timer (disabled by default) - -# ───────────────────────────────────────────────────────────────────────── -# Provider settings -# ───────────────────────────────────────────────────────────────────────── - -# Web search engine +# Web search engine (used by owlry-plugin-websearch) # Options: google, duckduckgo, bing, startpage, searxng, brave, ecosia -# Or custom URL: "https://search.example.com/?q={query}" +# Or a custom URL: "https://search.example.com/?q={query}" search_engine = "duckduckgo" - -# Weather settings (when weather = true) -# weather_provider = "wttr.in" # Options: wttr.in, openweathermap, open-meteo -# weather_location = "Berlin" # City name or coordinates -# weather_api_key = "" # Required for openweathermap - -# Pomodoro settings (when pomodoro = true) -# pomodoro_work_mins = 25 # Work session duration -# pomodoro_break_mins = 5 # Break duration