عن المشروع

hitori.vim is a Vim/Neovim plugin designed to ensure only one instance of the editor is running, functioning similarly to neovim-remote and vim-singleton. Built on denops.vim, it leverages Deno for cross-platform compatibility, including Windows support. Core functionality involves running a WebSocket server (default port 7070) within the active Vim/Neovim instance. When a new file opening command is issued, the plugin checks if a server is already running. If so, it sends the file path to the existing instance instead of launching a new editor process. This prevents multiple editor windows from cluttering the workspace. Key features include: - **Cross-Platform Support**: Works on Unix-like systems and Windows via denops.vim. - **WSL Integration**: Automatically handles path conversion between Windows and WSL environments when enabled. - **CLI Tool**: Provides a `hitori` command (installable via Deno) that can be used as a wrapper for `nvim`, `nvim-qt`, or `neovide`. This command checks for an active WebSocket server and either sends the file path to it or starts a new editor instance if none is found. - **Customization**: Configurable via Vim variables to adjust the opener method (e.g., tab drop, vsplit), port number, debug mode, and ignore patterns for temporary or git-related files. - **Enable/Disable Commands**: Users can toggle the singleton behavior dynamically using `:Enablehitori` and `:Disablehitori`. Installation is straightforward using common plugin managers like lazy.nvim or dvpm, requiring Deno and denops.vim as dependencies.