Web Search Provider:
- Type "? query" or "web query" to search the web
- Configurable search engine (duckduckgo, google, bing, startpage, etc.)
- Custom URL templates with {query} placeholder supported
- Opens browser via xdg-open
Calculator Fixes:
- Support "=5+3" without space (previously required "= 5+3")
- :calc mode now evaluates raw expressions directly
- Added looks_like_expression() for better detection
New config options:
- providers.websearch = true
- providers.search_engine = "duckduckgo"
UI updates:
- Added :web and :search prefixes
- Web badge with teal styling
- Updated hints bar to show "? web" syntax
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
68 lines
1.4 KiB
TOML
68 lines
1.4 KiB
TOML
[package]
|
|
name = "owlry"
|
|
version = "0.2.0"
|
|
edition = "2024"
|
|
rust-version = "1.90"
|
|
description = "A lightweight, owl-themed application launcher for Wayland"
|
|
authors = ["Your Name <you@example.com>"]
|
|
license = "GPL-3.0-or-later"
|
|
repository = "https://somegit.dev/Owlibou/owlry"
|
|
keywords = ["launcher", "wayland", "gtk4", "linux"]
|
|
categories = ["gui"]
|
|
|
|
[dependencies]
|
|
# GTK4 for the UI
|
|
gtk4 = { version = "0.9", features = ["v4_12"] }
|
|
|
|
# Layer shell support for Wayland overlay behavior
|
|
gtk4-layer-shell = "0.4"
|
|
|
|
# Async runtime for non-blocking operations
|
|
tokio = { version = "1", features = ["rt", "sync", "process", "fs"] }
|
|
|
|
# Fuzzy matching for search
|
|
fuzzy-matcher = "0.3"
|
|
|
|
# XDG desktop entry parsing
|
|
freedesktop-desktop-entry = "0.7"
|
|
|
|
# Directory utilities
|
|
dirs = "5"
|
|
|
|
# Low-level syscalls for stdin detection
|
|
libc = "0.2"
|
|
|
|
# Logging
|
|
log = "0.4"
|
|
env_logger = "0.11"
|
|
|
|
# Error handling
|
|
thiserror = "2"
|
|
|
|
# Configuration
|
|
serde = { version = "1", features = ["derive"] }
|
|
toml = "0.8"
|
|
|
|
# CLI argument parsing
|
|
clap = { version = "4", features = ["derive"] }
|
|
|
|
# Math expression evaluation for calculator
|
|
meval = "0.2"
|
|
|
|
# JSON serialization for data persistence
|
|
serde_json = "1"
|
|
|
|
# Date/time for frecency calculations
|
|
chrono = { version = "0.4", features = ["serde"] }
|
|
|
|
[profile.release]
|
|
lto = true
|
|
codegen-units = 1
|
|
panic = "abort"
|
|
strip = true
|
|
opt-level = "z" # Optimize for size
|
|
|
|
[profile.dev]
|
|
opt-level = 0
|
|
debug = true
|