Releases: MSmaili/wiremux.nvim
Releases · MSmaili/wiremux.nvim
Release list
v2.1.0
Added
- Added a
targetoption forsend()andcreate()to address a known target directly. - Added
wait_for_readysupport to timeout-wait for pane output to stabilize before pasting text.
Fixed
- Fixed
toggleto correctly respect configuredfocusbehavior. - Fixed send race conditions by moving
send-keysinto its own tmux batch. - Fixed placeholder timing by expanding placeholders before picker selection, preserving visual selection context.
- Fixed submit behavior for slower TUIs by introducing a small delay before submit keys.
Changed
- Refactored
send_keysinto a generic key-sending path and removed hardcoded Enter behavior. - Updated pane tracking to store the real tmux pane id for more reliable operations.
Tests
- Added
wait_for_readymocks and coverage for the newtargetoption. - Fixed index parsing coverage for
#-prefixed values. - Updated batching tests now that submit is executed in a separate call.
Documentation
- Improved README clarity and structure with more beginner-friendly guidance.
v2.0.0
Breaking Changes
- Configuration structure: Filter and sort options moved inside
pickerconfig.last_usednow stores timestamp instead of boolean (80f47bb) - Send API: Cleaner API with per-item visibility options (ebfd26b)
Features
- Add
mode = "auto"for send/toggle to make flow more explicit (9cf774c) - Add
titleandlabeloptions for dynamic picker naming and window titles (c7489dc) - Support showing definitions in picker alongside instances (7ea59af)
- Add command option for quick shell targets that close on exit (a01aee7)
- Add statusline component with custom handler, performant and lazy-loaded (5ef62ae)
Fixes
- Fix send command failing when creating targets with
shell = false(a89dc94) - Fix
diagnostics_allplaceholder being ignored, updated to newer API (8c86824) - Fix focus command to properly focus window/pane as batch when switching types (2ecfae7)
- Fix toggle to use correct instance when last_used was removed (8a09934)
- Improve error handling (93f3e3b)
Refactoring
- Clean up unnecessary exported functions (ef0e74a)
- Simplify statusline implementation (c30fa4b)
- Move filtering logic from backend to instances for clarity (f63697c)
- Remove alphabetic sorting (not needed) (57401e4)
- Small cleanups (c5f1626)
Documentation
- Update README with more clarity (7e8ca33)
- Add lualine integration example (b07609c)
- Update docs and help files (33cdf03)
- Document new filter, sort, and picker.adapter APIs (ddae843)
- Add basic information for send command (eebe92c)
- Add statusline documentation (f5212e2)
- Document pick selection for table-based kind option (a6fec3c)
Tests
- Add tests for title/label functionality (385806f)
- Refactor tests with helpers for mocking (9c199d3)
- Refactor tests to align with new changes (78dc680)
- Improve pipeline tests execution (f4c691b)
Full Changelog: v1.1.0...v2.0.0
1.1.0
Features
- Add statusline component with custom handler, performant and lazy-loaded (5ef62ae)
- Add option to select kind if multiple options are passed (199ef5c)
Fixes
- Fix toggle to use correct instance when last_used was removed (8a09934)
- Improve error handling (93f3e3b)
Refactoring
- Move filtering logic from backend to instances for clarity (f63697c)
- Remove alphabetic sorting (not needed) (57401e4)
- Clean up resolver and action:run (4edabab)
- Small cleanups (c5f1626)
Documentation
v1.0.0
Initial release of wiremux.nvim - a Neovim plugin for sending text to tmux panes/windows.
Features
- Core Actions: send, create, close, focus, toggle (b83ef19, 77ff7b1, c822651, 650018a, 23a0987)
- Context Resolvers: Placeholders like
{file},{selection},{diagnostics}, etc. (20710fd) - Tmux Backend: Commands with batching support for stdin operations (494cfdc)
- State Management: Persistent state stored in tmux pane variables (a170862)
- Picker System: Extensible picker (fzf-lua, vim.ui.select) (8c8e319)
- Window/Pane Creation: Create tmux windows and panes (522c070)
- Send Keys: Run commands on target creation (1009118)
- Send Motion: Send text via motion operator (8ced827)
- Submit Option: Auto-submit commands after sending (d3d928e)
- Shell Control: Option to skip shell and run commands directly (2d5bb02)
- Filtering: Global and per-action filters for instances and definitions (d73f4df)
- Health Check: Diagnostic health check for setup validation (188cbc4)
- User Commands: Lazy-loaded commands with auto-load (d37aadb)
- Notification System: User feedback for operations (99d6892)
Fixes
- Fix toggle to only toggle after first creation, focus for new targets (43b6491)
- Fix toggle to use resolver and pick when nothing is created (d1444bf)
- Fix toggle action to be smarter with zoom/focus based on kind (737f27d)
- Fix focus to update last_used (00098f7)
- Fix null backend check (757d875)
- Fix horizontal as default split direction (d824a23)
- Remove allow_create (unused from old plugin) (1aa033b)
Refactoring
- Add type annotations for config (b3fd473)
- Validate split directions (d09287b)
- Add notification error when not in tmux (78726ab)
- State improvements for easier handling (0e09a82)
- Add [+] label for targets and change pick behavior (a8df09d)
- Use vim.iter from Neovim 10+ (a20e748)
- Improve validation with log levels and debug option (d74068a)
Documentation
- Add simple README (2499d24)
- Add simple docs (2fb34ad)
- Adjust README with disclaimer and credits section (162518d)
Tests
- Add test setup (e850782)
- Test send-operation with batching command (47ea9db)
- Add tests for resolver actions and state (8574608)
- Update tests for new state handlers (7b658d8)
- Add tests for state filtering (26e8fb8)
Chore
- Add test CI script for GitHub Actions (1692d4f)