Awesome Open Source
Awesome Open Source

win-vind

Vim Key Binder for Windows

Coverity Scan Build Status

Description

win-vind provides a lightweight hybrid UI system of CUI and GUI for Windows. And everything is inspired by Vim and its plugins. Simply put, it is a Vim-oriented toy box consisting of various useful features.

Features

  • Fast binding system
  • Vim-like mode management
  • GUI operation without mouse
  • Vim emulation everywhere
  • Process control like :!vim ~/.vimrc on resident command line
  • .vimrc style configuration
  • Low-level key mapping (e.g. Capslock -> Ctrl)
  • Running in user permission
  • Oneshot use for Vim or AHK (e.g. $ win-vind -f easy_click_left)
  • Tiling window manager
  • Hinting feature like Vimium or EasyMotion for GUI.

Demo


Download

Chocolatey Version

win-vind supports installation using Chocolatey. To install win-vind with Chocolatey, run the following command from the command line or from PowerShell.

$ choco install win-vind

winget Version

winget is also supported. To install the package, run the following command from your command line.

$ winget install win-vind

Installer Version

Portable Version

Usage

You can refer to the installation and quick tutorial in Usage - win-vind.

.vindrc samples

You can configure it in .vimrc style. What you can do in .vindrc is switch options, set parameters, remap low-level keys, and define function bindings.

" ------------ Example ------------
" Virtual command line options
set shell = cmd
set cmd_fontsize = 14
set cmd_roughpos = LowerLeft
set cmd_maxchar = 100

" Enable block style caret
set blockstylecaret
set blockstylecaret_mode = solid

" Low-level key mapping in resident mode
rmap <capslock> <ctrl>

" Define bindings in GUI Normal mode
gnnoremap <c-h> select_left_window
gnnoremap <c-l> select_right_window
gnnoremap <c-k> select_upper_window
gnnoremap <c-j> select_lower_window

" Define bindings in insert mode
imap <capslock> <f16>
inoremap <f16> to_edi_normal

imap <ralt> <f17>
inoremap <f17> easy_click_left

imap <app> <f18>
inoremap <f18> window_resizer

The Functions page lists all supported functions, the Options document lists parameters and useful extensions, and the Keyword List contains keyword notations for writing .vindrc. If you want to know the default bindings, refer to Default Mappings.

Known Issues

  • EasyClick does not seem to work properly for some applications on older Windows 10 before 1803. The cause is not known. (#11)

Contribute

If you would like to contribute to win-vind, see CONTRIBUTING.md.

Related Pages

Similar Projects

License

This software is provided by MIT License.

Author

  • pit-ray

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
C Plus Plus (370,326
Windows (9,689
Vim (5,649
Mouse (477
Window Manager (341
Hotkeys (242
Related Projects