Repository navigation
v1.1.0
helperAI v1.1.0 - Enhanced User Experience Update
A Neovim plugin that seamlessly integrates Exa API search capabilities directly into your editor. Never leave Neovim to search for documentation or references again!
🌟 Key Features
- Visual Mode Search Integration: Highlight text and press
<leader>sto instantly search - Interactive Floating Window: Clean, syntax-highlighted results appear in a non-intrusive floating window
- Smart Result Ranking: Results are ranked by relevance and content quality
- Animated Results Display: Smooth, line-by-line animation of search results
- Comprehensive Syntax Highlighting: Custom highlight groups for better readability
- Titles in blue (
#7aa2f7) - Descriptions in green (
#9ece6a) - URLs in purple with underline (
#bb9af7) - Search terms highlighted in results (
#3b4261background) - Content in light blue (
#c0caf5)
- Titles in blue (
🆕 New in This Release
- Interactive URL Opening: Press
Enteron any URL to open it in your default browser - Content Expansion: Press
cto toggle full content view for any result - Hover URL Previews: Hover over a URL to see a floating tooltip with the URL
- Search Term Highlighting: Your search terms are now highlighted in the results for easy scanning
- Improved Windowing: Switched from split buffers to a more elegant floating window interface
🔧 Requirements
- Neovim 0.10 or higher
- Python 3.x
- Python packages:
exa_py,python-dotenv - Exa API key
📦 Installation
Using Lazy.nvim
{
"ralphmodales/helperAI",
config = function()
require("helperAI").setup()
end,
}Manual Setup Required
- Create the HelperAI config directory:
mkdir -p ~/.config/nvim/helperAI- Copy
search.pyto the config directory:
cp ~/.local/share/nvim/lazy/helperAI/search.py ~/.config/nvim/helperAI/- Set up your Exa API key:
cp ~/.local/share/nvim/lazy/helperAI/.env.example ~/.config/nvim/helperAI/.env
# Edit .env and add your API key🎨 Configuration
Default configuration with customization options:
require("helperAI").setup({
keymap = "<leader>s" -- Change this to your preferred keybinding
})Customizing Colors
Modify the highlight groups to match your colorscheme:
vim.api.nvim_set_hl(0, "HelperAITitle", { fg = "#7aa2f7", bold = true })
vim.api.nvim_set_hl(0, "HelperAIDescription", { fg = "#9ece6a" })
vim.api.nvim_set_hl(0, "HelperAIURL", { fg = "#bb9af7", underline = true })
vim.api.nvim_set_hl(0, "HelperAISearchTerm", { bg = "#3b4261", fg = "#7dcfff" })
vim.api.nvim_set_hl(0, "HelperAIContent", { fg = "#c0caf5" })🐛 Bug Fixes
- Fixed result window sizing for better visibility
- Improved search term processing for more accurate results
- Enhanced cross-platform browser opening support
📝 Notes
- Upgraded from v1.0.0 with significant UX improvements
- Tested with Neovim 0.10.0 and Python 3.8+
🚧 Known Limitations
- Maximum of 5 results per search
- Requires valid Exa API key
- Search descriptions limited to 200 characters
- Full content limited to 500 characters
🔜 Planned Features
- Configurable number of results
- Custom highlight groups
- Asynchronous result fetching
- Result caching
- Multiple search provider support
For full documentation and setup instructions, please see the README.md.
Report bugs or suggest features in the [issue tracker](https://github.com/ralphmodales/helperAI/issues).