├── LICENSE ├── README.md ├── install.sh ├── memo.md ├── vim_emu.xml ├── vim_emu ├── vim_emu_copy_cut.xml ├── vim_emu_core.xml ├── vim_emu_core_ck.xml ├── vim_emu_core_complement.xml ├── vim_emu_core_disable.xml ├── vim_emu_core_emu.xml ├── vim_emu_core_insert.xml ├── vim_emu_core_lb.xml ├── vim_emu_core_reset.xml ├── vim_emu_core_rm.xml ├── vim_emu_core_settings.xml ├── vim_emu_key_click_wrap.xml ├── vim_emu_key_wrap.xml ├── vim_emu_move.xml ├── vim_emu_move_down.xml ├── vim_emu_move_up.xml ├── vim_emu_repeat.xml ├── vim_emu_repeat_macro.xml ├── vim_emu_replace.xml ├── vim_emu_replacementdef.xml └── vim_emu_ydc_mode.xml ├── vim_emu_multi.xml └── vim_emu_test.xml /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2013 rcmdnk 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of 6 | this software and associated documentation files (the "Software"), to deal in 7 | the Software without restriction, including without limitation the rights to 8 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of 9 | the Software, and to permit persons to whom the Software is furnished to do so, 10 | subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS 17 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 18 | COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 19 | IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 20 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 21 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | vim_emu 2 | ======= 3 | 4 | Setting files of 5 | [Karabiner](https://pqrs.org/osx/karabiner/)(KeyRemap4MacBook) for VIM Emulation. 6 | 7 | Note: For users since macOS Sierra, use [Karabiner-Element](https://pqrs.org/osx/karabiner/) + [rcmdnk/KE-complex_modifications](https://github.com/rcmdnk/KE-complex_modifications) (Import **Vim Emulation** from [Karabiner-Elements complex_modifications rules by rcmdnk](https://rcmdnk.com/KE-complex_modifications/).) 8 | 9 | ## Installation 10 | 11 | ### Stable version is available in KeyRemap4MacBook as default (from 8.3.7) 12 | Now vim_emu was included in KeyRemap4MacBook from 8.3.7. 13 | If you use previous version, 14 | please update KeyRemap4MacBook or install files directly as below. 15 | If you are up-to-date at stable release but it is before 8.3.7, 16 | please try to check Beta version: follow [this instruction](https://github.com/tekezo/Files/blob/master/KeyRemap4MacBook/image/upgrade-to-the-latest-beta-version.png). 17 | 18 | Update: 2013/07/14 19 | New version which includes several ChangeKeys, Macro, etc... 20 | is available from 8.90.19. 21 | 22 | Note: currenlty, Repeat (e.g. 3w, y3d) and Visual Block are commented out. 23 | 24 | 25 | 26 | ### Install the latest vim_emu 27 | There could be some updates not included in KeyRemap4MacBook, yet. 28 | If you want to try the latest version, do: 29 | 30 | git clone git@github.com:rcmdnk/vim_emu.git 31 | cd vim_emu 32 | ./install.sh 33 | 34 | - - - 35 | If you have KeyRemap4MacBook version in which vim_emu is already installed, 36 | you need to comment out vim_emu in `/Applications/KeyRemap4MacBook.app/Contents/Resources/checkbox.xml` like: 37 | 38 | 39 | 40 | 41 | 42 | 43 | - - - 44 | 45 | Abobe work is no longer necessary. 46 | If you have line (~ top of the file): 47 | 48 | 49 | 50 | in `private.xml`, then please remove the line. 51 | 52 | You should have following line at the bottom of file instead: 53 | 54 | 55 | Note: You need to install [KeyRemap4MacBook](http://pqrs.org/macosx/keyremap4macbook/index.html) before installing these files. 56 | 57 | ## Uninstall (for using vim_emu.git repository) 58 | Remove `vim_emu_test.xml`, `vim_emu.xml`, `vim_emu` directory in 59 | `"$HOME/Library/Application Support/KeyRemap4MacBook/`. 60 | 61 | Remove the line (~at the end of file): 62 | 63 | 64 | 65 | in `"$HOME/Library/Application Support/KeyRemap4MacBook/private.xml`. 66 | 67 | ## Keyboards 68 | Currently, vim_emu supports US, JIS and German (partly) keyboards. 69 | 70 | ## Options 71 | Following checkboxes will appear in your setting panel: 72 | 73 | * ChangeKey1: Escape to enter Normal Mode, holding to emulate raw ESC. 74 | * ChangeKey2: + Escape to back in Insert Mode 75 | * ChangeKey3: Escape to back in Normal Mode in other than Inser Mode. 76 | * ChangeKey4: Ctrl-[ to enter Normal Mode, holding to emulate raw ESC. 77 | * ChangeKey5: + Ctrl-[ to back in Insert Mode 78 | * ChangeKey6: Ctrl-[ to back in Normal Mode in other than Inser Mode. 79 | * ChangeKey7: Simultaneous jk toggles Normal-Insert Mode. 80 | * ChangeKey8: Simultaneous qw toggles Normal-Insert Mode. 81 | * ChangeKey9: Simultaneous sd toggles Normal-Insert Mode. 82 | * ChangeKey10: Ctlr-l toggles Normal-Insert Mode. 83 | * ChangeKey11: Tap Left Cmd toggles Normal-Insert Mode. 84 | * ChangeKey12: Tap Right Cmd toggles Normal-Insert Mode. 85 | * ChangeKey13: Use customize key to enter Normal Mode. Key is defined by `VIM_EMU_CUSTOMIZE_KEY`. 86 | * ChangeKey14: Use customize toggle keys to enter Normal Mode. Key is defined by `VIM_EMU_CUSTOMIZE_SIMULTANEOUS_KEY`. 87 | * Enable Vim Emulation. 88 | * Enable Vim like complement. 89 | * Enable Vim Recording Macro. 90 | * Disable all non-assigned keys in other than Insert Mode. 91 | * Ctrl-[ to Escape for non-vim_emu apps. 92 | * Ctrl-[ to Escape in Noraml Mode. 93 | * Reset vim_emu at non-vim_emu apps. 94 | * Reset vim_emu at left click in any case. 95 | * Reset vim_emu at Cmd-Tab in any case. 96 | * Reset at Spotlight (Ctrl-Space or Ctrl-Option-Space) 97 | * Additional settings of Control + X at insert mode. 98 | 99 | Enable `Enable Vim Emulation` and at least one of ChangeKeys. 100 | 101 | For simultaneous jk/qw/sd, it works only in Insert/Normal modes. 102 | Therefore, at least one of ChangeKey 1, 3, 4, 6, 10-14 103 | needs to be checked to leave such Virtual mode. 104 | 105 | ChangeKey 3 and 6 works only in modes other than Insert/Normal modes, 106 | therefore they are useful if you use ESC/Ctrl-[ as is in Insert/Normal modes. 107 | 108 | For ChangeKey13, you can set a key as you like in your private.xml, like: 109 | 110 | 111 | VIM_EMU_CUSTOMIZE_KEY 112 | KeyCode::RETURN 113 | 114 | 115 | This setting makes `RETURN` key to enter normal mode. 116 | Under this setting, you can use `RETURN` by holding `RETURN` key. 117 | 118 | For ChangeKey14, you can set a key to toggle Normal-Insert as you like in your private.xml, like: 119 | 120 | 121 | VIM_EMU_CUSTOMIZE_SIMULTANEOUS_KEY 122 | KeyCode::O, KeyCode::P 123 | 124 | 125 | For Recording Macro, you need MadRuby (see below). 126 | 127 | If you check "Reset vim_emu at non-vim_emu apps", 128 | vim_emu Mode will change to "Insert Mode" (Non-vim_emu mode) 129 | when you push single key/click at non-vim_emu apps. 130 | e.g.) If you change vim_emu mode to Normal at TextEdit 131 | and change the application to Terminal and click or push key, 132 | vim_emu Mode is changed to "Insert Mode". 133 | It doesn't affect on Terminal, but just changes the mode for vim_emu apps. 134 | 135 | "Reset vim_emu at left click in any case" and "Reset vim_emu at Cmd-Tab in any case" 136 | are also similar options, but it reset mode even on vim_emu apps. 137 | 138 | 139 | Note: You can enable all vim features, but it may make your key input/mouse move slow. Such Yank/Delete/Change Mode is especially heavy. (To do: make it light...) 140 | 141 | 142 | Currently some options are disabled because they have too much key mappings 143 | and it affects on the performance of Mac. 144 | 145 | If you want, try [full_option](https://github.com/rcmdnk/vim_emu/tree/multi_option) branch. 146 | 147 | Currently, following options are available in addition to above: 148 | 149 | * Enable Vim Visual Block Mode. 150 | * Enable Vim Repeat (Currently comented out). 151 | 152 | ## Applications 153 | The default setting enables vim emulation on applications w/o Terminal (iTerm), 154 | Vi (MacVim), Firefox, Emacs, and password dialog. 155 | 156 | If you want to change applications, add replacement liens for `VIM_EMU_ONLY_APPS` (only on which enable) and `VIM_EMU_IGNORE_APPS` (on which don't enable) at the top of private.xml. 157 | 158 | e.g.) Enable for all but Terminal (iTerm), Vi (MacVim), Cathode, Firefox, Emacs, and password dialog (default setting). 159 | 160 | 161 | VIM_EMU_ONLY_APPS 162 | 163 | 164 | 165 | VIM_EMU_IGNORE_APPS 166 | TERMINAL, VI, CATHODE, PASSWORD, FIREFOX, EMACS 167 | 168 | 169 | e.g.) Enable only for MAIL. 170 | 171 | 172 | VIM_EMU_ONLY_APPS 173 | MAIL 174 | 175 | 176 | VIM_EMU_IGNORE_APPS 177 | 178 | 179 | 180 | Refer `/Applications/KeyRemap4MacBook.app/Contents/Resources/appdef.xml` 181 | or [Specify application](https://pqrs.org/macosx/keyremap4macbook/xml.html.ja#appdef) 182 | for definitions of applications. 183 | 184 | ## Main Modes 185 | Here are main modes of vim emulation. 186 | 187 | |Mode|Description| 188 | |:---|:----------| 189 | |Insert Mode|Normal Mac state| 190 | |Normal Mode|As in vim, a cursor is moved by hjkl, w, etc... and some vim like commands are available.| 191 | |Visual Mode|There are three visual mode: Character-wise, Line-wise, and Block-wise. Block-wise visual mode is optional and behaves a bit different from others.| 192 | |Command Mode|Can be used for saving file/quitting.| 193 | 194 | An initial state is `Insert Mode`, then `Esc` or `Ctrl-[` brings you to the normal mode. 195 | 196 | In the normal mode, `i` is the key to be back to the insert mode. 197 | 198 | `v` and `V` are the key to the Character-wise and Line-wise 199 | visual mode, respectively. 200 | 201 | After push `:`, a few commands to save/quit are available. 202 | 203 | There will be pop up like `-- VIM --` during modes other than Insert mode 204 | are enabled. 205 | 206 | ## Available commands at Insert mode 207 | |Key/Commands|Function| 208 | |:----------:|:-------| 209 | |ESC/Ctrl-[| Enter Normal mode. Holding these keys emulate normal ESC. In addition, toggle option is available.| 210 | |Simultaneous jk/qw/sd, Ctrl-l, Left-Cmd, Right-Cmd| Can be used for toggling Normal-Insert Modes.| 211 | |Ctrl-n/p| Enter Complement mode, if "Enable Vim like complement" is checked.| 212 | 213 | In Complement mode, use `Ctrl-n/p` to choose a candidate, 214 | `Ctrl-h` to skip, and `ESC/Ctrl-[` to choose a candidate. 215 | 216 | When you enable **Additional settings of Control + X at insert mode**, 217 | following commands are also available: 218 | 219 | |Key/Commands|Function| 220 | |:----------:|:-------| 221 | |Ctrl-c| Enter Normal mode.| 222 | |Ctrl-i| Insert Tab.| 223 | |Ctrl-j| Return.| 224 | |Ctrl-m| Return.| 225 | |Ctrl-t| Insert tab at the beginning of current line.| 226 | |Ctrl-u| Cut the text between the beginning of the line and the current position.| 227 | |Ctrl-w| Cut the word before the cursor.| 228 | 229 | Note: Some Control-X shortcut keys emacs like movements are originally available in OS X (see [Mac keyboard shortcuts - Apple Support](https://support.apple.com/en-ap/HT201236)). 230 | 231 | ## Available commands at Normal mode 232 | ### Mode Change 233 | |Key/Commands|Function| 234 | |:----------:|:-------| 235 | |i/I/a/A/o/O| Enter the insert mode at under the cursor/start of the line/next to the cursor/end of the line/next line/previous line.| 236 | |v/V|Enter the visual mode of Character-wise/Line-wise.| 237 | |:|Enter the command line mode| 238 | 239 | ### Move 240 | |Key/Commands|Function| 241 | |:----------:|:-------| 242 | |h/j/k/l|Left/Down/Up/Right.| 243 | |0/$| Move to the beginning/last of the line (Mac Cmd-left, Cmd-right).| 244 | |^| Move to the first character of the line.| 245 | |+/-| Move to the next/previous line's first character.| 246 | |{/}| Move to the beginning/end of the paragraph (Mac Ctrl-a, Ctrl-e. It works rather like "sentence". Sometime, it is actual sentence rather than 0/$).| 247 | |Ctrl-a/Ctrl-e| To the beginning/last of the line (emacs like).| 248 | |w/W/e/E| Move a word forward (w/W: the beginning of the word, e/E: the end of the word).| 249 | |b/B, ge/gE| Move a word backward (b/B: the beginning of the word, ge/gE: the end of the word).| 250 | |Ctrl-u/Ctrl-d| Go Up/Down 10 line.| 251 | |Ctrl-b/Ctrl-f| PageUp/PageDown.| 252 | |gg/G| Go to the top/bottom of the file| 253 | 254 | Note: Curretnly W/E/B/gE are disabled, as they are exactly same as w/e/b/ge. 255 | (for a speed up.) 256 | Ctrl-a/Ctrl-e are also disable. 257 | 258 | If you want to enable them, remove comments from corresponding lines in vim_emu/vim_emu_move.xml 259 | 260 | ### Yank/Cut(Delete)/Change/Paste 261 | |Key/Commands|Function| 262 | |:----------:|:-------| 263 | |yy, Y| Copy the line.| 264 | |dd| Cut the line.| 265 | |D| Cut from here to the end of the line.| 266 | |cc| Change the line (enter Insert mode).| 267 | |C| Cut from here to the end of the line and enter Insert mode.| 268 | |x/X| Delete a character under/before the cursor (not registered in the clipboard).| 269 | |s/S| Delete/Cut a character/a line under the cursor and enter Insert mode.| 270 | |p/P| Paste to the next/current place. If copy/cut was done with line-wise Visual mode, it pastes to the next/current line. Some commands (such yy/dd) also force to paste as line-wise.| 271 | 272 | y/d/c+Move Command can be used, too. 273 | * e.g.) `yw` -> copy next one word. 274 | 275 | Currently `Repeaat` feature is commented out. 276 | 277 | ### Others 278 | |Key/Commands|Function| 279 | |:----------:|:-------| 280 | |u(U)/Ctrl-r| Undo/Redo.| 281 | |r/R| Replace one character/multi characters.| 282 | |J| Combine two lines.| 283 | |M| Move current line to the middle. Need enough lines in above/below.| 284 | |.| It is fixed to do: `Replace a following word with a clipboard` (useful to use with a search).| 285 | |/| Start search (search box will be opened)| 286 | |n/N| Search next/previous.| 287 | |*| Search the word under the cursor.| 288 | |ZZ/ZQ|Save and Quit/Quit.| 289 | 290 | ### Non text edit commands 291 | |zi|Zoom in.| 292 | |zo|Zoom out.| 293 | |z0|Zoom reset.| 294 | 295 | ## Available commands at Visual mode 296 | |Key/Commands|Function| 297 | |:----------:|:-------| 298 | |ESC/Ctrl-[| Enter Normal mode.| 299 | |Move command| Most of move commands in the normal mode are available.| 300 | |y/d/x/c| Copy/Cut/Cut/Cut and insert (`d`=`x`)| 301 | |Y/D/X/C| Move to the end of line, then Copy/Cut/Cut/Cut and insert (`D`=`X`)| 302 | |*| Search the selected word.| 303 | 304 | Note: Currently, if you paste lines copied in visual line mode, 305 | there will be one empty line below the content 306 | if the content doesn't include the last line of the text. 307 | 308 | ## Available commands at Command mode 309 | |Key/Commands|Function| 310 | |:----------:|:-------| 311 | |ESC/Ctrl-[| Enter Normal mode.| 312 | |w + RETURN| Save | 313 | |w + SPACE | Save as | 314 | |w + q| Save and Quit | 315 | |q | Quit | 316 | |h | Open help of the application| 317 | 318 | ## Recording Macro 319 | Macro feature is available with additional application. 320 | In vim_emu, one option with [MadRuby](http://www.wingsforpigs.com/MadRuby/MadRuby.html) 321 | (Keyboard Macro Recorder, free application) 322 | is available. 323 | 324 | Before enabling Recording Macro in vim_emu, 325 | please install MadRuby, and set kyboard shortcuts in MadRuby like: 326 | 327 | |Function|Shortcut| 328 | |----------:|:-------| 329 | |Start Recording| Ctrl-Shift-Cmd-6| 330 | |Stop Recording| Ctrl-Shift-Cmd-7| 331 | |Play Macro| Ctrl-Shift-Cmd-8| 332 | |Multiple Play Macro| Ctrl-Shift-Cmd-9| 333 | 334 | Then, enable Recording Macro in KeyRemap4macbook/vim_emu. 335 | 336 | Following commands are available in Normal Mode. 337 | 338 | |Key/Commands|Function| 339 | |:----------:|:-------| 340 | |q| Start recording a macro.| 341 | |q(while recording macro)| Stop recording a macro.| 342 | |@| Execute the macro once.| 343 | |n@ (n=2-9)| Execute macro n-times.| 344 | 345 | Note: If you switch application to what ignoring vim_emu during recording macro, 346 | you need to stop recording macro by Ctrl-Shift-Cmd-7, using menubar dialog of MadRuby. 347 | -------------------------------------------------------------------------------- /install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | if [[ ! "$OSTYPE" =~ darwin ]];then 4 | echo Can be used only in Mac. 5 | exit 1 6 | fi 7 | 8 | files=(vim_emu_test.xml vim_emu.xml vim_emu) 9 | instdir="$HOME/Library/Application Support/Karabiner" 10 | 11 | backup="" 12 | overwrite=1 13 | makelink=0 14 | dryrun=0 15 | newlink=() 16 | exist=() 17 | curdir=$(pwd -P)darwin 18 | # help 19 | HELP="Usage: $0 [-ndl] [-b ] 20 | 21 | Make copies/links of Mac related files/directories 22 | 23 | Arguments: 24 | -b Set backup postfix, like \"bak\" (default: \"\": no back up is made) 25 | -n Don't overwrite if file is already exist 26 | -d Dry run, don't install anything 27 | -l Make link instead of copies 28 | -h Print Help (this message) and exit 29 | " 30 | while getopts b:ndlh OPT;do 31 | case $OPT in 32 | "b" ) backup=$OPTARG ;; 33 | "n" ) overwrite=0 ;; 34 | "d" ) dryrun=1 ;; 35 | "l" ) makelink=1 ;; 36 | "h" ) echo "$HELP" 1>&2; exit ;; 37 | * ) echo "$HELP" 1>&2; exit 1;; 38 | esac 39 | done 40 | 41 | echo "**********************************************************" 42 | echo "Install VIM Emulation setting files for Karabiner" 43 | echo "**********************************************************" 44 | echo 45 | if [ $dryrun -ne 0 ];then 46 | echo "*** This is dry run, not install anything ***" 47 | fi 48 | i=0 49 | while [ $i -lt ${#files[@]} ];do 50 | f=${files[$i]} 51 | d=$instdir 52 | i=$((i+1)) 53 | echo "install $f to $d" 54 | install=1 55 | if [ $dryrun -eq 1 ];then 56 | install=0 57 | fi 58 | if [ "$(ls "$d/$f" 2>/dev/null)" != "" ];then 59 | exist=(${exist[@]} "$f") 60 | if [ $dryrun -eq 1 ];then 61 | echo -n "" 62 | elif [ $overwrite -eq 0 ];then 63 | install=0 64 | elif [ "$backup" != "" ];then 65 | rm -rf "$d/${f}.$backup" 66 | mv "$d/$f" "$d/${f}.$backup" 67 | else 68 | rm -rf "${d:?}/${f}" 69 | fi 70 | else 71 | newlink=(${newlink[@]} "$f") 72 | fi 73 | if [ $install -eq 1 ];then 74 | if [ $makelink -eq 1 ];then 75 | ln -s "$curdir/$f" "$d/$f" 76 | else 77 | cp -r "$curdir/$f" "$d/$f" 78 | fi 79 | fi 80 | done 81 | if [ $dryrun -eq 0 ];then 82 | if ! grep -q vim_emu_test.xml "$instdir/private.xml";then 83 | sed -i ."$backup" 's/<\/root>/ <\/include>\ 84 | <\/root>/' "$instdir/private.xml" 85 | echo -n "$instdir/private.xml was updated" 86 | if [ "$backup" = "" ];then 87 | rm -f "$instdir/private.xml" 88 | echo "." 89 | else 90 | echo ", a backup (private.xml.$backup) was made." 91 | fi 92 | fi 93 | fi 94 | echo "" 95 | if [ $dryrun -eq 1 ];then 96 | echo "Following files don't exist:" 97 | else 98 | echo "Following files were newly installed:" 99 | fi 100 | echo " ${newlink[*]}" 101 | echo 102 | echo -n "Following files existed" 103 | if [ $dryrun -eq 1 ];then 104 | echo "Following files exist:" 105 | elif [ $overwrite -eq 0 ];then 106 | echo "Following files exist, remained as is:" 107 | else 108 | if [ "$makelink" -eq 1 ];then 109 | echo -n "Following files existed, replaced by new links" 110 | else 111 | echo -n "Following files existed, replaced by new copies" 112 | fi 113 | if [ "$backup" != "" ];then 114 | echo ", and backups (*.$backup) were made:" 115 | else 116 | echo ":" 117 | fi 118 | fi 119 | echo " ${exist[*]}" 120 | echo 121 | -------------------------------------------------------------------------------- /memo.md: -------------------------------------------------------------------------------- 1 | W/O new vim_emu 2 | Nov 10 23:46:27 pb-d-128-141-145-34 kernel[0]: KeyRemap4MacBook --Info-- RemapClass::allocation_count_ 481167/2097152 (memory usage: 22% of 8192KB) 3 | 4 | W/ new vim_emu 5 | Nov 10 23:45:32 pb-d-128-141-145-34 kernel[0]: KeyRemap4MacBook --Info-- RemapClass::allocation_count_ 588692/2097152 (memory usage: 28% of 8192KB) 6 | 7 | remove repeat 8 | Nov 11 00:39:41 pb-d-128-141-145-34 kernel[0]: KeyRemap4MacBook --Info-- RemapClass::allocation_count_ 579051/2097152 (memory usage: 27% of 8192KB) 9 | 10 | Reduce VIM_EMU_FORCE_OFF_ALL_BUT_LINE 11 | Nov 11 01:10:55 pb-d-128-141-145-34 kernel[0]: KeyRemap4MacBook --Info-- RemapClass::allocation_count_ 568021/2097152 (memory usage: 27% of 8192KB) 12 | 13 | Reduce more congfig 14 | Nov 11 01:35:39 pb-d-128-141-145-34 kernel[0]: KeyRemap4MacBook --Info-- RemapClass::allocation_count_ 565026/2097152 (memory usage: 26% of 8192KB) 15 | 16 | W/O replacements at other apps/change apps 17 | Nov 11 01:38:42 pb-d-128-141-145-34 kernel[0]: KeyRemap4MacBook --Info-- RemapClass::allocation_count_ 558758/2097152 (memory usage: 26% of 8192KB) 18 | , reversed (include other apps/change apps) 19 | 20 | Check W/O vim_emu in KeyRemap4MacBook 21 | Nov 11 01:42:35 pb-d-128-141-145-34 kernel[0]: KeyRemap4MacBook --Info-- RemapClass::allocation_count_ 373371/2097152 (memory usage: 17% of 8192KB) 22 | 23 | Check W/ vim_emu in KeyRemap4MacBook 24 | Nov 11 01:44:05 pb-d-128-141-145-34 kernel[0]: KeyRemap4MacBook --Info-- RemapClass::allocation_count_ 565026/2097152 (memory usage: 26% of 8192KB) 25 | 26 | 27 | Check W/O new vim_emu 28 | Nov 11 01:45:04 pb-d-128-141-145-34 kernel[0]: KeyRemap4MacBook --Info-- RemapClass::allocation_count_ 481167/2097152 (memory usage: 22% of 8192KB) 29 | 30 | Check W/ both 31 | Nov 11 01:45:17 pb-d-128-141-145-34 kernel[0]: KeyRemap4MacBook --Info-- RemapClass::allocation_count_ 565026/2097152 (memory usage: 26% of 8192KB) 32 | 33 | 34 | 35 | 36 | Previous Multi Option 37 | 171428 177850 659017/2097152 (memory usage: 31% of 8192KB) 38 | 39 | All 40 | 77811 84233 565400/2097152 (memory usage: 26% of 8192KB) 41 | 42 | All, enable repeat 43 | 635539641961 1123128/2097152 (memory usage: 53% of 8192KB) 44 | 45 | Non 46 | -6422 0 481167/2097152 (memory usage: 22% of 8192KB) 47 | 48 | Only setting 49 | 0 6422 487589/2097152 (memory usage: 23% of 8192KB) 50 | 51 | All, disable record macro's repeat 52 | 68523 74945 556112/2097152 (memory usage: 26% of 8192KB) 53 | 54 | Setting + Emulation 55 | 52526 58948 540115/2097152 (memory usage: 25% of 8192KB) 56 | 57 | Setting + Reord Macro 58 | 10496 16918 498085/2097152 (memory usage: 23% of 8192KB) 59 | 60 | Setting + Reset 61 | 6182 12604 493771/2097152 (memory usage: 23% of 8192KB) 62 | 63 | Setting + Visual Block 64 | 4930 11352 492519/2097152 (memory usage: 23% of 8192KB) 65 | 66 | Setting + ChangeKey 67 | 2226 8648 489815/2097152 (memory usage: 23% of 8192KB) 68 | 69 | Setting + Disable 70 | 1365 7787 488954/2097152 (memory usage: 23% of 8192KB) 71 | 72 | Setting + Reord Macro (no repeat) 73 | 1208 7630 488797/2097152 (memory usage: 23% of 8192KB) 74 | 75 | Setting + Repeat (not included in all) <- only 2-9 settings 76 | 184 6606 487773/2097152 (memory usage: 23% of 8192KB) 77 | 78 | Setting + Left Bracket to ESC 79 | 86 6508 487675/2097152 (memory usage: 23% of 8192KB) 80 | 81 | 82 | 83 | All, remove visual bell (default for below) 84 | 63593 70015 551182/2097152 (memory usage: 26% of 8192KB) 85 | 86 | All, remove replace 87 | 60193 66615 547782/2097152 (memory usage: 26% of 8192KB) 88 | 89 | All, only replace (revese of remove replace) 90 | 3400 9822 547782/2097152 (memory usage: 26% of 8192KB) 91 | 92 | All, only move in core_emu 93 | 13661 20083 501250/2097152 (memory usage: 23% of 8192KB) 94 | 95 | visual x 2 (13000x2.5), 96 | 97 | All 98 | 551185/2097152 (memory usage: 26% of 8192KB) 99 | 100 | All 101 | 551174/2097152 (memory usage: 26% of 8192KB) 102 | 103 | All reset + search reset (~6000) 104 | 557356/2097152 (memory usage: 26% of 8192KB) 105 | 106 | All using (~200) 107 | 551334/2097152 (memory usage: 26% of 8192KB) 108 | 109 | All using, spotloght (~900) 110 | 552110/2097152 (memory usage: 26% of 8192KB) 111 | 112 | 113 | 114 | 115 | commit 42950a17095dd558b19cfd45937bd644b00ed6b0 116 | fixed dd, optimized ydc 117 | 548056/2097152 (memory usage: 26% of 8192KB) 118 | 119 | commit 489d4cf560f5827bb93d8264c6b60d43c74efef9 120 | removed C-a/C-e 121 | 544716/2097152 (memory usage: 25% of 8192KB) 122 | 123 | commit f143a956b708a067bd724ac7c297b2ba57e59c1b 124 | added {} 125 | 546746/2097152 (memory usage: 26% of 8192KB) 126 | 127 | commit f143a956b708a067bd724ac7c297b2ba57e59c1b 128 | updated replace 129 | 546355/2097152 (memory usage: 26% of 8192KB) 130 | 131 | moved M from move to core_emu 132 | 545211/2097152 (memory usage: 25% of 8192KB) 133 | 134 | Test w/o ChangeKey 8-12 -> but it only affects on loading (not affect on performance if they are disabled.) 135 | 544179/2097152 (memory usage: 25% of 8192KB) 136 | 137 | 138 | 139 | New version () 140 | 411619/2097152 (memory usage: 19% of 8192KB) 141 | -------------------------------------------------------------------------------- /vim_emu.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | VIM Emulation 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /vim_emu/vim_emu_copy_cut.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | __KeyToKey__ KeyCode::Y, {{VIM_EMU_ADDITIONAL_MODIFIER}}ModifierFlag::NONE, 5 | {{VIM_EMU_BEFORE_COPY_CUT}}, 6 | KeyCode::C, VK_COMMAND, 7 | {{VIM_EMU_AFTER_MOVE}} 8 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 9 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_line_copy{{VIM_EMU_ALTCONFIG}}, 10 | {{VIM_EMU_LINECOPY}} 11 | 12 | 13 | __KeyToKey__ KeyCode::Y, {{VIM_EMU_ADDITIONAL_MODIFIER}} 14 | VK_SHIFT|ModifierFlag::NONE, 15 | {{VIM_EMU_BEFORE_COPY_CUT}}, 16 | KeyCode::E, VK_CONTROL|VK_SHIFT, 17 | KeyCode::C, VK_COMMAND, 18 | {{VIM_EMU_AFTER_MOVE}} 19 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 20 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_line_copy{{VIM_EMU_ALTCONFIG}}, 21 | 22 | 23 | __KeyToKey__ KeyCode::D, {{VIM_EMU_ADDITIONAL_MODIFIER}}ModifierFlag::NONE, 24 | {{VIM_EMU_BEFORE_COPY_CUT}}, 25 | KeyCode::X, VK_COMMAND, 26 | {{VIM_EMU_AFTER_MOVE}} 27 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 28 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_line_copy{{VIM_EMU_ALTCONFIG}}, 29 | {{VIM_EMU_LINECOPY}} 30 | 31 | 32 | __KeyToKey__ KeyCode::D, {{VIM_EMU_ADDITIONAL_MODIFIER}} 33 | VK_SHIFT|ModifierFlag::NONE, 34 | {{VIM_EMU_BEFORE_COPY_CUT}}, 35 | KeyCode::E, VK_CONTROL|VK_SHIFT, 36 | KeyCode::X, VK_COMMAND, 37 | {{VIM_EMU_AFTER_MOVE}} 38 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 39 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_line_copy{{VIM_EMU_ALTCONFIG}}, 40 | 41 | 42 | __KeyToKey__ KeyCode::X, {{VIM_EMU_ADDITIONAL_MODIFIER}}ModifierFlag::NONE, 43 | {{VIM_EMU_BEFORE_COPY_CUT}}, 44 | KeyCode::X, VK_COMMAND, 45 | {{VIM_EMU_AFTER_MOVE}} 46 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 47 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_line_copy{{VIM_EMU_ALTCONFIG}}, 48 | {{VIM_EMU_LINECOPY}} 49 | 50 | 51 | __KeyToKey__ KeyCode::X, {{VIM_EMU_ADDITIONAL_MODIFIER}} 52 | VK_SHIFT|ModifierFlag::NONE, 53 | {{VIM_EMU_BEFORE_COPY_CUT}}, 54 | KeyCode::E, VK_CONTROL|VK_SHIFT, 55 | KeyCode::X, VK_COMMAND, 56 | {{VIM_EMU_AFTER_MOVE}} 57 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 58 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_line_copy{{VIM_EMU_ALTCONFIG}}, 59 | 60 | 61 | __KeyToKey__ KeyCode::C, {{VIM_EMU_ADDITIONAL_MODIFIER}}ModifierFlag::NONE, 62 | {{VIM_EMU_BEFORE_COPY_CUT}}, 63 | KeyCode::X, VK_COMMAND, 64 | {{VIM_EMU_AFTER_MOVE}} 65 | {{VIM_EMU_EMU_OFF}} 66 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_line_copy{{VIM_EMU_ALTCONFIG}}, 67 | {{VIM_EMU_LINECOPY}} 68 | 69 | 70 | __KeyToKey__ KeyCode::C, {{VIM_EMU_ADDITIONAL_MODIFIER}} 71 | VK_SHIFT|ModifierFlag::NONE, 72 | {{VIM_EMU_BEFORE_COPY_CUT}}, 73 | KeyCode::E, VK_CONTROL|VK_SHIFT, 74 | KeyCode::X, VK_COMMAND, 75 | {{VIM_EMU_AFTER_MOVE}} 76 | {{VIM_EMU_EMU_OFF}} 77 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_line_copy{{VIM_EMU_ALTCONFIG}}, 78 | 79 | 80 | __KeyToKey__ KeyCode::KEY_8, {{VIM_EMU_ADDITIONAL_MODIFIER}} 81 | VK_SHIFT|ModifierFlag::NONE, 82 | {{VIM_EMU_BEFORE_COPY_CUT}}, 83 | KeyCode::C, VK_COMMAND, 84 | KeyCode::F, VK_COMMAND, 85 | KeyCode::V, VK_COMMAND, 86 | {{VIM_EMU_AFTER_MOVE}} 87 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 88 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_search{{VIM_EMU_ALTCONFIG}}, 89 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_line_copy{{VIM_EMU_ALTCONFIG}}, 90 | 91 | 92 | __KeyToKey__ KeyCode::JIS_COLON, {{VIM_EMU_ADDITIONAL_MODIFIER}} 93 | VK_SHIFT|ModifierFlag::NONE, 94 | {{VIM_EMU_BEFORE_COPY_CUT}}, 95 | KeyCode::C, VK_COMMAND, 96 | KeyCode::F, VK_COMMAND, 97 | KeyCode::V, VK_COMMAND, 98 | {{VIM_EMU_AFTER_MOVE}} 99 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 100 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_search{{VIM_EMU_ALTCONFIG}}, 101 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_line_copy{{VIM_EMU_ALTCONFIG}}, 102 | 103 | 104 | __KeyToKey__ KeyCode::BRACKET_RIGHT, {{VIM_EMU_ADDITIONAL_MODIFIER}} 105 | VK_SHIFT|ModifierFlag::NONE, 106 | {{VIM_EMU_BEFORE_COPY_CUT}}, 107 | KeyCode::C, VK_COMMAND, 108 | KeyCode::F, VK_COMMAND, 109 | KeyCode::V, VK_COMMAND, 110 | {{VIM_EMU_AFTER_MOVE}} 111 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 112 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_search{{VIM_EMU_ALTCONFIG}}, 113 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_line_copy{{VIM_EMU_ALTCONFIG}}, 114 | 115 | 116 | -------------------------------------------------------------------------------- /vim_emu/vim_emu_core.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Settings 5 | At least "Enable Vim Emulation" must be enabled. 6 | Then, choose mode change keyes as you like. 7 | Note: Simultaneous jk/qw/sd must be used with 8 | one of ChangeKey 1, 3, 4, 6, 10-12 9 | to leave such Virtual mode. 10 | ChangeKey 3 or 6 are useful if you want to use 11 | ESC/Ctrl-[ as is in modes other than Insert Mode. 12 | 13 | Currently, all {count} operator is disabled (such 3w to move 3 words). 14 | This feature makes too many remaps (9 times for most of moving), 15 | and even the mouse moving is affected if you enable these feature. 16 | (It makes the response too slow.) 17 | If you would try this feature, 18 | please remove comment out line in vim_emu/vim_emu_repeat.xml. 19 | 20 | Only APPs {{VIM_EMU_ONLY_APPS}} 21 | Ignore APPs {{VIM_EMU_IGNORE_APPS}} 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 35 | 36 | -------------------------------------------------------------------------------- /vim_emu/vim_emu_core_ck.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | ChangeKey1: Escape to enter Normal Mode 5 | Holding Esc emulate normal Esc. 6 | remap.vim_emu_escape{{VIM_EMU_ALTCONFIG}} 7 | {{VIM_EMU_ONLY_APPS}} 8 | {{VIM_EMU_IGNORE_APPS}} 9 | 10 | 11 | notsave.vim_emu_complement{{VIM_EMU_ALTCONFIG}} 12 | 13 | __HoldingKeyToKey__ KeyCode::ESCAPE, 14 | KeyCode::RETURN, 15 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_complement{{VIM_EMU_ALTCONFIG}}, 16 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 17 | KeyCode::VK_NONE, 18 | KeyCode::ESCAPE, Option::NOREPEAT 19 | 20 | 21 | 22 | notsave.vim_emu_search{{VIM_EMU_ALTCONFIG}} 23 | 24 | __HoldingKeyToKey__ KeyCode::ESCAPE, 25 | KeyCode::ESCAPE, 26 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_search{{VIM_EMU_ALTCONFIG}}, 27 | {{VIM_EMU_EMU_ON}} 28 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 29 | KeyCode::VK_NONE, 30 | KeyCode::ESCAPE, Option::NOREPEAT 31 | 32 | 33 | 34 | JAPANESE 35 | 36 | __HoldingKeyToKey__ KeyCode::ESCAPE, 37 | KeyCode::VK_CHANGE_INPUTSOURCE_ENGLISH, 38 | KeyCode::VK_CHANGE_INPUTSOURCE_JAPANESE, 39 | KeyCode::VK_CHANGE_INPUTSOURCE_ENGLISH, 40 | {{VIM_EMU_FORCE_ON_NORMAL_MODE}}, 41 | KeyCode::VK_NONE, 42 | KeyCode::ESCAPE, Option::NOREPEAT 43 | 44 | 45 | 46 | notsave.vim_emu_normal{{VIM_EMU_ALTCONFIG}} 47 | 48 | __HoldingKeyToKey__ KeyCode::ESCAPE, 49 | {{VIM_EMU_FORCE_ON_NORMAL_MODE}}, 50 | KeyCode::VK_NONE, 51 | KeyCode::ESCAPE, Option::NOREPEAT 52 | 53 | 54 | 55 | 56 | ChangeKey2: Escape to back in Insert Mode from Normal Mode 57 | Use with above, to toggle modes with Escape. 58 | Holding Esc emulate normal Esc. 59 | remap.vim_emu_escape_toggle{{VIM_EMU_ALTCONFIG}} 60 | {{VIM_EMU_ONLY_APPS}} 61 | {{VIM_EMU_IGNORE_APPS}} 62 | 63 | 64 | notsave.vim_emu_normal{{VIM_EMU_ALTCONFIG}} 65 | 66 | __HoldingKeyToKey__ KeyCode::ESCAPE, 67 | {{VIM_EMU_FORCE_OFF_ALL_BUT_LINE}}, 68 | KeyCode::VK_NONE, 69 | KeyCode::ESCAPE, Option::NOREPEAT 70 | 71 | 72 | 73 | 74 | 75 | ChangeKey3: Escape to back in Normal Mode in other than Insert Mode 76 | All parts are overlapped with 77 | "Escape to enter Normal Mode", 78 | but it doesn't switch on Normal Mode in Insert Mode. 79 | Useful to use with simultaneous keys. 80 | Holding Esc emulate normal Esc. 81 | remap.vim_emu_escape_not_insert{{VIM_EMU_ALTCONFIG}} 82 | {{VIM_EMU_ONLY_APPS}} 83 | {{VIM_EMU_IGNORE_APPS}} 84 | 85 | 86 | notsave.vim_emu_complement{{VIM_EMU_ALTCONFIG}} 87 | 88 | __HoldingKeyToKey__ KeyCode::ESCAPE, 89 | KeyCode::RETURN, 90 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_complement{{VIM_EMU_ALTCONFIG}}, 91 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 92 | KeyCode::VK_NONE, 93 | KeyCode::ESCAPE, Option::NOREPEAT 94 | 95 | 96 | 97 | notsave.vim_emu_search{{VIM_EMU_ALTCONFIG}} 98 | 99 | __HoldingKeyToKey__ KeyCode::ESCAPE, 100 | KeyCode::ESCAPE, 101 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_search{{VIM_EMU_ALTCONFIG}}, 102 | {{VIM_EMU_EMU_ON}} 103 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 104 | KeyCode::VK_NONE, 105 | KeyCode::ESCAPE, Option::NOREPEAT 106 | 107 | 108 | 109 | notsave.vim_emu{{VIM_EMU_ALTCONFIG}} 110 | 111 | __HoldingKeyToKey__ KeyCode::ESCAPE, 112 | {{VIM_EMU_FORCE_ON_NORMAL_MODE}}, 113 | KeyCode::VK_NONE, 114 | KeyCode::ESCAPE, Option::NOREPEAT 115 | 116 | 117 | 118 | 119 | 120 | ChangeKey4: Ctrl-[ to enter Normal Mode 121 | Holding Ctrl-[ emulate normal Esc. 122 | remap.vim_emu_ctrl_lb{{VIM_EMU_ALTCONFIG}} 123 | {{VIM_EMU_ONLY_APPS}} 124 | {{VIM_EMU_IGNORE_APPS}} 125 | 126 | 127 | notsave.vim_emu_complement{{VIM_EMU_ALTCONFIG}} 128 | 129 | __HoldingKeyToKey__ KeyCode::BRACKET_LEFT, 130 | VK_CONTROL, 131 | KeyCode::RETURN, 132 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_complement{{VIM_EMU_ALTCONFIG}}, 133 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 134 | KeyCode::VK_NONE, 135 | KeyCode::ESCAPE, Option::NOREPEAT 136 | 137 | 138 | 139 | notsave.vim_emu_search{{VIM_EMU_ALTCONFIG}} 140 | 141 | __HoldingKeyToKey__ KeyCode::BRACKET_LEFT, 142 | VK_CONTROL, 143 | KeyCode::ESCAPE, 144 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_search{{VIM_EMU_ALTCONFIG}}, 145 | {{VIM_EMU_EMU_ON}} 146 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 147 | KeyCode::VK_NONE, 148 | KeyCode::ESCAPE, Option::NOREPEAT 149 | 150 | 151 | 152 | JAPANESE 153 | 154 | __HoldingKeyToKey__ KeyCode::BRACKET_LEFT, 155 | VK_CONTROL, 156 | KeyCode::VK_CHANGE_INPUTSOURCE_ENGLISH, 157 | KeyCode::VK_CHANGE_INPUTSOURCE_JAPANESE, 158 | KeyCode::VK_CHANGE_INPUTSOURCE_ENGLISH, 159 | {{VIM_EMU_FORCE_ON_NORMAL_MODE}}, 160 | KeyCode::VK_NONE, 161 | KeyCode::ESCAPE, Option::NOREPEAT 162 | 163 | 164 | 165 | 166 | __HoldingKeyToKey__ KeyCode::BRACKET_LEFT, 167 | VK_CONTROL, 168 | {{VIM_EMU_FORCE_ON_NORMAL_MODE}}, 169 | KeyCode::VK_NONE, 170 | KeyCode::ESCAPE, Option::NOREPEAT 171 | 172 | 173 | 174 | 175 | ChangeKey5: Ctrl-[ to back in Insert Mode from Normal Mode 176 | Use with above, to toggle modes with Ctrl-[]. 177 | Holding Ctrl-[ emulate normal Esc. 178 | remap.vim_emu_ctrl_lb_toggles{{VIM_EMU_ALTCONFIG}} 179 | {{VIM_EMU_ONLY_APPS}} 180 | {{VIM_EMU_IGNORE_APPS}} 181 | 182 | 183 | notsave.vim_emu_normal{{VIM_EMU_ALTCONFIG}} 184 | 185 | __HoldingKeyToKey__ KeyCode::BRACKET_LEFT, 186 | VK_CONTROL, 187 | {{VIM_EMU_FORCE_OFF_ALL_BUT_LINE}}, 188 | KeyCode::VK_NONE, 189 | KeyCode::ESCAPE, Option::NOREPEAT 190 | 191 | 192 | 193 | 194 | 195 | ChangeKey6: Ctrl-[ to back in Normal mode in other than Insert Mode. 196 | All parts are overlapped with 197 | "Ctrl-[ to enter Normal Mode", 198 | but it doesn't switch on Normal Mode in Insert Mode. 199 | Holding Ctrl-[ emulate normal Esc. 200 | remap.vim_emu_ctrl_lb_not_insert{{VIM_EMU_ALTCONFIG}} 201 | {{VIM_EMU_ONLY_APPS}} 202 | {{VIM_EMU_IGNORE_APPS}} 203 | 204 | 205 | notsave.vim_emu_complement{{VIM_EMU_ALTCONFIG}} 206 | 207 | __HoldingKeyToKey__ KeyCode::BRACKET_LEFT, 208 | VK_CONTROL, 209 | KeyCode::RETURN, 210 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_complement{{VIM_EMU_ALTCONFIG}}, 211 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 212 | KeyCode::VK_NONE, 213 | KeyCode::ESCAPE, Option::NOREPEAT 214 | 215 | 216 | 217 | notsave.vim_emu_search{{VIM_EMU_ALTCONFIG}} 218 | 219 | __HoldingKeyToKey__ KeyCode::BRACKET_LEFT, 220 | VK_CONTROL, 221 | KeyCode::ESCAPE, 222 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_search{{VIM_EMU_ALTCONFIG}}, 223 | {{VIM_EMU_EMU_ON}} 224 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 225 | KeyCode::VK_NONE, 226 | KeyCode::ESCAPE, Option::NOREPEAT 227 | 228 | 229 | 230 | notsave.vim_emu{{VIM_EMU_ALTCONFIG}} 231 | 232 | __HoldingKeyToKey__ KeyCode::BRACKET_LEFT, 233 | VK_CONTROL, 234 | {{VIM_EMU_FORCE_ON_NORMAL_MODE}}, 235 | KeyCode::VK_NONE, 236 | KeyCode::ESCAPE, Option::NOREPEAT 237 | 238 | 239 | 240 | 241 | 242 | ChangeKey7: Simultaneous jk toggles Insert Mode - Normal Mode 243 | In Virtual or Command mode, nothing happens. 244 | remap.vim_emu_jk_toggle{{VIM_EMU_ALTCONFIG}} 245 | {{VIM_EMU_ONLY_APPS}} 246 | {{VIM_EMU_IGNORE_APPS}} 247 | __SimultaneousKeyPresses__ makes a problem 248 | if same combination is defined in different config state. 249 | If it is set as "Enter Normal Mode" in Insert Mode (no config) 250 | and set as "Back in Insert Mode" in Normal Mode, 251 | it shows repeat j/k when push j/k after entering Normal mode. 252 | Therefore, for simultaneous keys, 253 | only toggles are used only when Insert/Normal mode. 254 | As two options have to be toggled, 255 | it is not possible to support in such Viertual mode. 256 | Hence, the combination set to do nothing in such Virtual mode. 257 | 258 | 259 | {{VIM_EMU_NOT_NORMAL_MODE}} 260 | 261 | __SimultaneousKeyPresses__ 262 | KeyCode::J, KeyCode::K, 263 | {{VIM_EMU_MODE_TOGGLE}} 264 | 265 | 266 | 267 | 268 | 269 | ChangeKey8: Simultaneous qw toggles Insert Mode - Normal Mode 270 | In Virtual or Command mode, it changes to Insert Mode. 271 | remap.vim_emu_qw_toggle{{VIM_EMU_ALTCONFIG}} 272 | {{VIM_EMU_ONLY_APPS}} 273 | {{VIM_EMU_IGNORE_APPS}} 274 | 275 | 276 | {{VIM_EMU_NOT_NORMAL_MODE}} 277 | 278 | __SimultaneousKeyPresses__ 279 | KeyCode::Q, KeyCode::W, 280 | {{VIM_EMU_MODE_TOGGLE}} 281 | 282 | 283 | 284 | 285 | 286 | ChangeKey9: Simultaneous sd toggles Insert Mode - Normal Mode 287 | In Virtual or Command mode, nothing happens. 288 | remap.vim_emu_sd_toggle{{VIM_EMU_ALTCONFIG}} 289 | {{VIM_EMU_ONLY_APPS}} 290 | {{VIM_EMU_IGNORE_APPS}} 291 | 292 | 293 | {{VIM_EMU_NOT_NORMAL_MODE}} 294 | 295 | __SimultaneousKeyPresses__ 296 | KeyCode::S, KeyCode::D, 297 | {{VIM_EMU_MODE_TOGGLE}} 298 | 299 | 300 | 301 | 302 | 303 | ChangeKey10: Ctrl-l toggles Insert Mode - Normal Mode 304 | In Virtual or Command mode, nothing happens. 305 | remap.vim_emu_ctrl_l_toggles{{VIM_EMU_ALTCONFIG}} 306 | {{VIM_EMU_ONLY_APPS}} 307 | {{VIM_EMU_IGNORE_APPS}} 308 | 309 | 310 | notsave.vim_emu{{VIM_EMU_ALTCONFIG}} 311 | 312 | __KeyToKey__ KeyCode::L, 313 | VK_CONTROL, 314 | {{VIM_EMU_FORCE_OFF_ALL_BUT_LINE}} 315 | 316 | 317 | 318 | notsave.vim_emu_complement{{VIM_EMU_ALTCONFIG}} 319 | 320 | __KeyToKey__ KeyCode::L, 321 | VK_CONTROL, 322 | KeyCode::RETURN, 323 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_complement{{VIM_EMU_ALTCONFIG}}, 324 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 325 | 326 | 327 | 328 | notsave.vim_emu_search{{VIM_EMU_ALTCONFIG}} 329 | 330 | __KeyToKey__ KeyCode::L, 331 | VK_CONTROL, 332 | KeyCode::ESCAPE, 333 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_search{{VIM_EMU_ALTCONFIG}}, 334 | {{VIM_EMU_EMU_ON}} 335 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 336 | 337 | 338 | 339 | JAPANESE 340 | 341 | __KeyToKey__ KeyCode::L, 342 | VK_CONTROL, 343 | KeyCode::VK_CHANGE_INPUTSOURCE_ENGLISH, 344 | KeyCode::VK_CHANGE_INPUTSOURCE_JAPANESE, 345 | KeyCode::VK_CHANGE_INPUTSOURCE_ENGLISH, 346 | {{VIM_EMU_FORCE_ON_NORMAL_MODE}} 347 | 348 | 349 | 350 | __KeyToKey__ KeyCode::L, 351 | VK_CONTROL, 352 | {{VIM_EMU_FORCE_ON_NORMAL_MODE}} 353 | 354 | 355 | 356 | 357 | ChangeKey11: Left Cmd toggles Insert Mode - Normal Mode 358 | In Virtual or Command mode, it changes to Insert Mode. 359 | remap.vim_emu_l_cmd_toggles{{VIM_EMU_ALTCONFIG}} 360 | {{VIM_EMU_ONLY_APPS}} 361 | {{VIM_EMU_IGNORE_APPS}} 362 | 363 | 364 | notsave.vim_emu{{VIM_EMU_ALTCONFIG}} 365 | 366 | __KeyOverlaidModifier__ 367 | KeyCode::COMMAND_L, 368 | KeyCode::COMMAND_L, 369 | {{VIM_EMU_FORCE_OFF_ALL_BUT_LINE}} 370 | 371 | 372 | 373 | notsave.vim_emu_complement{{VIM_EMU_ALTCONFIG}} 374 | 375 | __KeyOverlaidModifier__ 376 | KeyCode::COMMAND_L, 377 | KeyCode::COMMAND_L, 378 | KeyCode::RETURN, 379 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_complement{{VIM_EMU_ALTCONFIG}}, 380 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 381 | 382 | 383 | 384 | notsave.vim_emu_search{{VIM_EMU_ALTCONFIG}} 385 | 386 | __KeyOverlaidModifier__ 387 | KeyCode::COMMAND_L, 388 | KeyCode::COMMAND_L, 389 | KeyCode::ESCAPE, 390 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_search{{VIM_EMU_ALTCONFIG}}, 391 | {{VIM_EMU_EMU_ON}} 392 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 393 | 394 | 395 | 396 | JAPANESE 397 | 398 | __KeyOverlaidModifier__ 399 | KeyCode::COMMAND_L, 400 | KeyCode::COMMAND_L, 401 | KeyCode::VK_CHANGE_INPUTSOURCE_ENGLISH, 402 | KeyCode::VK_CHANGE_INPUTSOURCE_JAPANESE, 403 | KeyCode::VK_CHANGE_INPUTSOURCE_ENGLISH, 404 | {{VIM_EMU_FORCE_ON_NORMAL_MODE}} 405 | 406 | 407 | 408 | __KeyOverlaidModifier__ 409 | KeyCode::COMMAND_L, 410 | KeyCode::COMMAND_L, 411 | {{VIM_EMU_FORCE_ON_NORMAL_MODE}} 412 | 413 | 414 | 415 | 416 | ChangeKey12: Rgiht Cmd toggles Insert Mode - Normal Mode 417 | In Virtual or Command mode, it changes to Insert Mode. 418 | remap.vim_emu_r_cmd_toggles{{VIM_EMU_ALTCONFIG}} 419 | {{VIM_EMU_ONLY_APPS}} 420 | {{VIM_EMU_IGNORE_APPS}} 421 | 422 | 423 | notsave.vim_emu{{VIM_EMU_ALTCONFIG}} 424 | 425 | __KeyOverlaidModifier__ 426 | KeyCode::COMMAND_R, 427 | KeyCode::COMMAND_R, 428 | {{VIM_EMU_FORCE_OFF_ALL_BUT_LINE}} 429 | 430 | 431 | 432 | notsave.vim_emu_complement{{VIM_EMU_ALTCONFIG}} 433 | 434 | __KeyOverlaidModifier__ 435 | KeyCode::COMMAND_R, 436 | KeyCode::COMMAND_R, 437 | KeyCode::RETURN, 438 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_complement{{VIM_EMU_ALTCONFIG}}, 439 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 440 | 441 | 442 | 443 | notsave.vim_emu_search{{VIM_EMU_ALTCONFIG}} 444 | 445 | __KeyOverlaidModifier__ 446 | KeyCode::COMMAND_R, 447 | KeyCode::COMMAND_R, 448 | KeyCode::ESCAPE, 449 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_search{{VIM_EMU_ALTCONFIG}}, 450 | {{VIM_EMU_EMU_ON}} 451 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 452 | 453 | 454 | 455 | JAPANESE 456 | 457 | __KeyOverlaidModifier__ 458 | KeyCode::COMMAND_R, 459 | KeyCode::COMMAND_R, 460 | KeyCode::VK_CHANGE_INPUTSOURCE_ENGLISH, 461 | KeyCode::VK_CHANGE_INPUTSOURCE_JAPANESE, 462 | KeyCode::VK_CHANGE_INPUTSOURCE_ENGLISH, 463 | {{VIM_EMU_FORCE_ON_NORMAL_MODE}} 464 | 465 | 466 | 467 | __KeyOverlaidModifier__ 468 | KeyCode::COMMAND_R, 469 | KeyCode::COMMAND_R, 470 | {{VIM_EMU_FORCE_ON_NORMAL_MODE}} 471 | 472 | 473 | 474 | 475 | ChangeKey13: Customize key to enter Normal Mode 476 | Set VIM_EMU_CUSTOMIZE_KEY, like (To RETURN) 477 | 478 | <replacementdef> 479 | <replacementname>VIM_EMU_CUSTOMIZE_KEY</replacementname> 480 | <replacementvalue>KeyCode::RETURN</replacementvalue> 481 | </replacementdef> 482 | 483 | Holding the key send original key function. 484 | The default key is ESC (exactly same as ChangeKey1) 485 | remap.vim_emu_customize{{VIM_EMU_ALTCONFIG}} 486 | {{VIM_EMU_ONLY_APPS}} 487 | {{VIM_EMU_IGNORE_APPS}} 488 | 489 | 490 | notsave.vim_emu_complement{{VIM_EMU_ALTCONFIG}} 491 | 492 | __HoldingKeyToKey__ {{VIM_EMU_CUSTOMIZE_KEY}}, 493 | KeyCode::RETURN, 494 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_complement{{VIM_EMU_ALTCONFIG}}, 495 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 496 | KeyCode::VK_NONE, 497 | {{VIM_EMU_CUSTOMIZE_KEY}}, Option::NOREPEAT 498 | 499 | 500 | 501 | notsave.vim_emu_search{{VIM_EMU_ALTCONFIG}} 502 | 503 | __HoldingKeyToKey__ {{VIM_EMU_CUSTOMIZE_KEY}}, 504 | KeyCode::ESCAPE, 505 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_search{{VIM_EMU_ALTCONFIG}}, 506 | {{VIM_EMU_EMU_ON}} 507 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 508 | KeyCode::VK_NONE, 509 | {{VIM_EMU_CUSTOMIZE_KEY}}, Option::NOREPEAT 510 | 511 | 512 | 513 | JAPANESE 514 | 515 | __HoldingKeyToKey__ {{VIM_EMU_CUSTOMIZE_KEY}}, 516 | KeyCode::VK_CHANGE_INPUTSOURCE_ENGLISH, 517 | KeyCode::VK_CHANGE_INPUTSOURCE_JAPANESE, 518 | KeyCode::VK_CHANGE_INPUTSOURCE_ENGLISH, 519 | {{VIM_EMU_FORCE_ON_NORMAL_MODE}}, 520 | KeyCode::VK_NONE, 521 | {{VIM_EMU_CUSTOMIZE_KEY}}, Option::NOREPEAT 522 | 523 | 524 | 525 | 526 | __HoldingKeyToKey__ {{VIM_EMU_CUSTOMIZE_KEY}}, 527 | {{VIM_EMU_FORCE_ON_NORMAL_MODE}}, 528 | KeyCode::VK_NONE, 529 | {{VIM_EMU_CUSTOMIZE_KEY}}, Option::NOREPEAT 530 | 531 | 532 | 533 | 534 | ChangeKey14: Customize simultaneous toggles Insert Mode - Normal Mode 535 | Set VIM_EMU_CUSTOMIZE_SIMULTANEOUS_KEY, like 536 | 537 | <replacementdef> 538 | <replacementname>VIM_EMU_CUSTOMIZE_SIMULTANEOUS_KEY</replacementname> 539 | <replacementvalue>KeyCode::O, KeyCode::P</replacementvalue> 540 | </replacementdef> 541 | 542 | The default key is O and P. 543 | remap.vim_emu_customize_toggle{{VIM_EMU_ALTCONFIG}} 544 | {{VIM_EMU_ONLY_APPS}} 545 | {{VIM_EMU_IGNORE_APPS}} 546 | 547 | 548 | {{VIM_EMU_NOT_NORMAL_MODE}} 549 | 550 | __SimultaneousKeyPresses__ 551 | {{VIM_EMU_CUSTOMIZE_SIMULTANEOUS_KEY}}, 552 | {{VIM_EMU_MODE_TOGGLE}} 553 | 554 | 555 | 556 | 557 | 558 | -------------------------------------------------------------------------------- /vim_emu/vim_emu_core_complement.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Enable Vim like complement 5 | remap.vim_emu_complement_{{VIM_EMU_ALTCONFIG}} 6 | {{VIM_EMU_ONLY_APPS}} 7 | {{VIM_EMU_IGNORE_APPS}} 8 | 9 | 10 | notsave.vim_emu{{VIM_EMU_ALTCONFIG}} 11 | 12 | __KeyToKey__ KeyCode::N, 13 | VK_CONTROL|ModifierFlag::NONE, 14 | KeyCode::ESCAPE, 15 | {{VIM_EMU_EMU_ON}} 16 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_complement{{VIM_EMU_ALTCONFIG}}, 17 | 18 | 19 | __KeyToKey__ KeyCode::P, 20 | VK_CONTROL|ModifierFlag::NONE, 21 | KeyCode::ESCAPE, 22 | {{VIM_EMU_EMU_ON}} 23 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_complement{{VIM_EMU_ALTCONFIG}}, 24 | 25 | 26 | 27 | 28 | 29 | notsave.vim_emu_complement{{VIM_EMU_ALTCONFIG}} 30 | 31 | __KeyToKey__ KeyCode::N, 32 | VK_CONTROL|ModifierFlag::NONE, 33 | KeyCode::CURSOR_DOWN, 34 | 35 | 36 | __KeyToKey__ KeyCode::P, 37 | VK_CONTROL|ModifierFlag::NONE, 38 | KeyCode::CURSOR_UP, 39 | 40 | 41 | __KeyToKey__ KeyCode::H, 42 | VK_CONTROL|ModifierFlag::NONE, 43 | KeyCode::ESCAPE, 44 | {{VIM_EMU_EMU_ON}} 45 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_complement{{VIM_EMU_ALTCONFIG}}, 46 | 47 | 48 | __KeyToKey__ KeyCode::RETURN, ModifierFlag::NONE, 49 | KeyCode::RETURN, 50 | {{VIM_EMU_EMU_OFF}} 51 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_complement{{VIM_EMU_ALTCONFIG}}, 52 | 53 | 54 | 55 | 56 | -------------------------------------------------------------------------------- /vim_emu/vim_emu_core_disable.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Disable all other non-assigned keys in other than Inser Mode 5 | Note: Keys with modifiers are not disabled. 6 | remap.vim_emu_disable{{VIM_EMU_ALTCONFIG}} 7 | {{VIM_EMU_ONLY_APPS}} 8 | {{VIM_EMU_IGNORE_APPS}} 9 | 10 | notsave.vim_emu{{VIM_EMU_ALTCONFIG}} 11 | 12 | 13 | 14 | 15 | VIM_EMU_REPLACE 16 | KeyCode::VK_NONE 17 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /vim_emu/vim_emu_core_emu.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Enable Vim Emulation 5 | remap.vim_emu_{{VIM_EMU_ALTCONFIG}} 6 | {{VIM_EMU_ONLY_APPS}} 7 | {{VIM_EMU_IGNORE_APPS}} 8 | 9 | 10 | 11 | notsave.vim_emu{{VIM_EMU_ALTCONFIG}} 12 | notsave.vim_emu_G{{VIM_EMU_ALTCONFIG}} 13 | 14 | __KeyToKey__ KeyCode::G, ModifierFlag::NONE, 15 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_G{{VIM_EMU_ALTCONFIG}}, 16 | 17 | 18 | 19 | 20 | 21 | notsave.vim_emu_normal{{VIM_EMU_ALTCONFIG}} 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | __KeyToKey__ 30 | KeyCode::M, VK_SHIFT|ModifierFlag::NONE, 31 | KeyCode::PAGEDOWN, VK_OPTION, 32 | KeyCode::PAGEUP, VK_OPTION, 33 | 34 | 35 | 36 | 37 | 38 | __KeyToKey__ KeyCode::I, ModifierFlag::NONE, 39 | {{VIM_EMU_NORMAL_OFF}} 40 | 41 | 42 | __KeyToKey__ KeyCode::I, 43 | VK_SHIFT|ModifierFlag::NONE, 44 | KeyCode::CURSOR_LEFT, VK_COMMAND, 45 | KeyCode::CURSOR_RIGHT, VK_OPTION, 46 | KeyCode::CURSOR_LEFT, VK_OPTION, 47 | {{VIM_EMU_NORMAL_OFF}} 48 | {{VIM_EMU_EMU_OFF}} 49 | 50 | 51 | __KeyToKey__ KeyCode::A, ModifierFlag::NONE, 52 | KeyCode::CURSOR_RIGHT, 53 | {{VIM_EMU_NORMAL_OFF}} 54 | 55 | 56 | __KeyToKey__ KeyCode::A, 57 | VK_SHIFT|ModifierFlag::NONE, 58 | KeyCode::CURSOR_RIGHT, VK_COMMAND, 59 | {{VIM_EMU_NORMAL_OFF}} 60 | 61 | 62 | __KeyToKey__ KeyCode::O, ModifierFlag::NONE, 63 | KeyCode::CURSOR_RIGHT, VK_COMMAND, KeyCode::RETURN, 64 | {{VIM_EMU_NORMAL_OFF}} 65 | 66 | 67 | __KeyToKey__ KeyCode::O, 68 | VK_SHIFT|ModifierFlag::NONE, 69 | KeyCode::CURSOR_UP, KeyCode::CURSOR_RIGHT, VK_COMMAND, 70 | KeyCode::RETURN, 71 | {{VIM_EMU_NORMAL_OFF}} 72 | 73 | 74 | 75 | 76 | 77 | __KeyToKey__ KeyCode::V, ModifierFlag::NONE, 78 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 79 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_visual{{VIM_EMU_ALTCONFIG}}, 80 | KeyCode::CURSOR_RIGHT, VK_SHIFT, 81 | 82 | 83 | 84 | 85 | 86 | __KeyToKey__ KeyCode::V, 87 | VK_SHIFT|ModifierFlag::NONE, 88 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 89 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_visual_line{{VIM_EMU_ALTCONFIG}}, 90 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_visual_line_first{{VIM_EMU_ALTCONFIG}}, 91 | KeyCode::CURSOR_LEFT, VK_COMMAND, 92 | KeyCode::CURSOR_DOWN, VK_SHIFT, 93 | 94 | 95 | 96 | 97 | 98 | __KeyToKey__ KeyCode::SEMICOLON, 99 | VK_SHIFT|ModifierFlag::NONE, 100 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 101 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_command{{VIM_EMU_ALTCONFIG}}, 102 | 103 | 104 | __KeyToKey__ KeyCode::JIS_COLON,ModifierFlag::NONE, 105 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 106 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_command{{VIM_EMU_ALTCONFIG}}, 107 | 108 | 109 | __KeyToKey__ KeyCode::DOT, VK_SHIFT|ModifierFlag::NONE, 110 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 111 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_command{{VIM_EMU_ALTCONFIG}}, 112 | 113 | 114 | 115 | 116 | 117 | __KeyToKey__ KeyCode::Z, 118 | VK_SHIFT|ModifierFlag::NONE, 119 | KeyCode::VK_LOCK_EXTRA2_FORCE_ON 120 | 121 | 122 | __KeyToKey__ KeyCode::Z, ModifierFlag::EXTRA2| 123 | VK_SHIFT|ModifierFlag::NONE, 124 | KeyCode::S, VK_COMMAND, 125 | KeyCode::W, VK_COMMAND, 126 | KeyCode::VK_LOCK_EXTRA2_FORCE_OFF, 127 | {{VIM_EMU_NORMAL_OFF}} 128 | 129 | 130 | __KeyToKey__ KeyCode::Q, ModifierFlag::EXTRA2| 131 | VK_SHIFT|ModifierFlag::NONE, 132 | KeyCode::W, VK_COMMAND, 133 | KeyCode::VK_LOCK_EXTRA2_FORCE_OFF, 134 | {{VIM_EMU_NORMAL_OFF}} 135 | 136 | 137 | 138 | 139 | 140 | __KeyToKey__ KeyCode::Z, ModifierFlag::NONE, 141 | KeyCode::VK_LOCK_EXTRA3_FORCE_ON 142 | 143 | 144 | __KeyToKey__ KeyCode::I, ModifierFlag::EXTRA3|ModifierFlag::NONE, 145 | KeyCode::EQUAL, VK_SHIFT|VK_COMMAND, 146 | KeyCode::VK_LOCK_EXTRA3_FORCE_OFF, 147 | 148 | 149 | __KeyToKey__ KeyCode::O, ModifierFlag::EXTRA3|ModifierFlag::NONE, 150 | KeyCode::MINUS, VK_COMMAND, 151 | KeyCode::VK_LOCK_EXTRA3_FORCE_OFF, 152 | 153 | 154 | __KeyToKey__ KeyCode::KEY_0, ModifierFlag::EXTRA3|ModifierFlag::NONE, 155 | KeyCode::KEY_0, VK_COMMAND, 156 | KeyCode::VK_LOCK_EXTRA3_FORCE_OFF, 157 | 158 | 159 | 160 | 161 | 162 | __KeyToKey__ KeyCode::SLASH, ModifierFlag::NONE, 163 | KeyCode::F, VK_COMMAND, 164 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu{{VIM_EMU_ALTCONFIG}}, 165 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 166 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_search{{VIM_EMU_ALTCONFIG}}, 167 | 168 | 169 | __KeyToKey__ KeyCode::KEY_7, 170 | VK_SHIFT|ModifierFlag::NONE, 171 | KeyCode::F, VK_COMMAND, 172 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu{{VIM_EMU_ALTCONFIG}}, 173 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 174 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_search{{VIM_EMU_ALTCONFIG}}, 175 | 176 | 177 | __KeyToKey__ KeyCode::N, ModifierFlag::NONE, 178 | KeyCode::F, VK_COMMAND, 179 | KeyCode::G, VK_COMMAND, 180 | KeyCode::G, VK_COMMAND, 181 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 182 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_search{{VIM_EMU_ALTCONFIG}}, 183 | 184 | 185 | __KeyToKey__ KeyCode::N, 186 | VK_SHIFT|ModifierFlag::NONE, 187 | KeyCode::F, VK_COMMAND, 188 | KeyCode::G, VK_SHIFT|VK_COMMAND, 189 | KeyCode::G, VK_SHIFT|VK_COMMAND, 190 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 191 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_search{{VIM_EMU_ALTCONFIG}}, 192 | 193 | 194 | __KeyToKey__ KeyCode::KEY_8, 195 | VK_SHIFT|ModifierFlag::NONE, 196 | KeyCode::CURSOR_LEFT, VK_OPTION, 197 | KeyCode::CURSOR_RIGHT, VK_OPTION|VK_SHIFT, 198 | KeyCode::C, VK_COMMAND, 199 | KeyCode::F, VK_COMMAND, 200 | KeyCode::V, VK_COMMAND, 201 | KeyCode::RETURN, 202 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 203 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_search{{VIM_EMU_ALTCONFIG}}, 204 | 205 | 206 | __KeyToKey__ KeyCode::JIS_COLON, 207 | VK_SHIFT|ModifierFlag::NONE, 208 | KeyCode::CURSOR_LEFT, VK_OPTION, 209 | KeyCode::CURSOR_RIGHT, VK_OPTION|VK_SHIFT, 210 | KeyCode::C, VK_COMMAND, 211 | KeyCode::F, VK_COMMAND, 212 | KeyCode::V, VK_COMMAND, 213 | KeyCode::RETURN, 214 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 215 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_search{{VIM_EMU_ALTCONFIG}}, 216 | 217 | 218 | __KeyToKey__ KeyCode::BRACKET_RIGHT, 219 | VK_SHIFT|ModifierFlag::NONE, 220 | KeyCode::CURSOR_LEFT, VK_OPTION, 221 | KeyCode::CURSOR_RIGHT, VK_OPTION|VK_SHIFT, 222 | KeyCode::C, VK_COMMAND, 223 | KeyCode::F, VK_COMMAND, 224 | KeyCode::V, VK_COMMAND, 225 | KeyCode::RETURN, 226 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 227 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_search{{VIM_EMU_ALTCONFIG}}, 228 | 229 | 230 | 231 | 232 | 233 | __KeyToKey__ KeyCode::Y, 234 | VK_SHIFT|ModifierFlag::NONE, 235 | KeyCode::A, VK_CONTROL|VK_SHIFT, 236 | KeyCode::E, VK_CONTROL|VK_SHIFT, 237 | KeyCode::C, VK_COMMAND, 238 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_line_copy{{VIM_EMU_ALTCONFIG}}, 239 | 240 | 241 | 242 | 243 | 244 | __KeyToKey__ KeyCode::D, 245 | VK_SHIFT|ModifierFlag::NONE, 246 | KeyCode::E, VK_CONTROL|VK_SHIFT, 247 | KeyCode::X, VK_COMMAND, 248 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_line_copy{{VIM_EMU_ALTCONFIG}}, 249 | 250 | 251 | 252 | 253 | 254 | __KeyToKey__ KeyCode::C, 255 | VK_SHIFT|ModifierFlag::NONE, 256 | KeyCode::E, VK_CONTROL|VK_SHIFT, 257 | KeyCode::X, VK_COMMAND, 258 | {{VIM_EMU_NORMAL_OFF}} 259 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_line_copy{{VIM_EMU_ALTCONFIG}}, 260 | 261 | 262 | 263 | 264 | 265 | __KeyToKey__ KeyCode::X, ModifierFlag::NONE, 266 | KeyCode::FORWARD_DELETE, 267 | 268 | 269 | __KeyToKey__ KeyCode::X, 270 | VK_SHIFT|ModifierFlag::NONE, 271 | KeyCode::DELETE, 272 | 273 | 274 | 275 | __KeyToKey__ KeyCode::S, ModifierFlag::NONE, 276 | KeyCode::FORWARD_DELETE, 277 | {{VIM_EMU_NORMAL_OFF}} 278 | 279 | 280 | __KeyToKey__ KeyCode::S, 281 | VK_SHIFT|ModifierFlag::NONE, 282 | KeyCode::A, VK_CONTROL, 283 | KeyCode::E, VK_CONTROL|VK_SHIFT, 284 | KeyCode::X, VK_COMMAND, 285 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_line_copy{{VIM_EMU_ALTCONFIG}}, 286 | {{VIM_EMU_NORMAL_OFF}} 287 | 288 | 289 | 290 | 291 | notsave.vim_emu_line_copy{{VIM_EMU_ALTCONFIG}} 292 | 293 | __KeyToKey__ KeyCode::P, ModifierFlag::NONE, 294 | KeyCode::CURSOR_LEFT, VK_COMMAND, 295 | KeyCode::CURSOR_DOWN, 296 | KeyCode::V, VK_COMMAND, 297 | KeyCode::RETURN, KeyCode::CURSOR_UP, 298 | 299 | 300 | __KeyToKey__ KeyCode::P, VK_SHIFT, 301 | KeyCode::CURSOR_LEFT, VK_COMMAND, 302 | KeyCode::V, VK_COMMAND, 303 | KeyCode::RETURN, KeyCode::CURSOR_UP, 304 | 305 | 306 | 307 | 308 | notsave.vim_emu_line_copy{{VIM_EMU_ALTCONFIG}} 309 | 310 | __KeyToKey__ KeyCode::P, ModifierFlag::NONE, 311 | KeyCode::CURSOR_RIGHT, KeyCode::V, VK_COMMAND,KeyCode::CURSOR_LEFT 312 | 313 | 314 | __KeyToKey__ KeyCode::P, 315 | VK_SHIFT|ModifierFlag::NONE, 316 | KeyCode::V, VK_COMMAND,KeyCode::CURSOR_LEFT 317 | 318 | 319 | 320 | 321 | __KeyToKey__ KeyCode::U, ModifierFlag::NONE, 322 | KeyCode::Z, VK_COMMAND, 323 | 324 | 325 | __KeyToKey__ KeyCode::U, 326 | VK_SHIFT|ModifierFlag::NONE, 327 | KeyCode::Z, VK_COMMAND, 328 | 329 | 330 | __KeyToKey__ KeyCode::R, 331 | VK_CONTROL|ModifierFlag::NONE, 332 | KeyCode::Z, VK_SHIFT|VK_COMMAND, 333 | 334 | 335 | 336 | 337 | 338 | __KeyToKey__ KeyCode::J, 339 | VK_SHIFT|ModifierFlag::NONE, 340 | KeyCode::CURSOR_RIGHT, VK_COMMAND, 341 | KeyCode::SPACE, KeyCode::FORWARD_DELETE, VK_SHIFT, 342 | KeyCode::CURSOR_LEFT, 343 | 344 | 345 | 346 | 347 | 348 | 349 | __KeyToKey__ KeyCode::DOT, ModifierFlag::NONE, 350 | KeyCode::CURSOR_RIGHT, VK_SHIFT|VK_OPTION, 351 | KeyCode::DELETE, KeyCode::V, VK_COMMAND 352 | 353 | 354 | 355 | 356 | 357 | __KeyToKey__ KeyCode::R, ModifierFlag::NONE, 358 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 359 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_R{{VIM_EMU_ALTCONFIG}}, 360 | 361 | 362 | __KeyToKey__ KeyCode::R, 363 | VK_SHIFT|ModifierFlag::NONE, 364 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 365 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_S_R{{VIM_EMU_ALTCONFIG}}, 366 | 367 | 368 | 369 | 370 | 371 | 372 | notsave.vim_emu_Y{{VIM_EMU_ALTCONFIG}} 373 | 374 | __KeyToKey__ KeyCode::Y, ModifierFlag::NONE, 375 | KeyCode::A, VK_CONTROL, 376 | KeyCode::CURSOR_RIGHT, VK_COMMAND|VK_SHIFT, 377 | KeyCode::C, VK_COMMAND, 378 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_Y{{VIM_EMU_ALTCONFIG}}, 379 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 380 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_line_copy{{VIM_EMU_ALTCONFIG}}, 381 | 382 | 383 | 384 | 385 | VIM_EMU_YDC_CHAR 386 | Y 387 | 388 | 389 | VIM_EMU_AFTER_MOVE 390 | 391 | KeyCode::C, VK_COMMAND, 392 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_Y{{VIM_EMU_ALTCONFIG}}, 393 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 394 | 395 | 396 | 397 | 398 | 399 | 400 | 401 | notsave.vim_emu_D{{VIM_EMU_ALTCONFIG}} 402 | 403 | __KeyToKey__ KeyCode::D, ModifierFlag::NONE, 404 | KeyCode::A, VK_CONTROL, 405 | KeyCode::CURSOR_RIGHT, VK_COMMAND|VK_SHIFT, 406 | KeyCode::X, VK_COMMAND, 407 | KeyCode::FORWARD_DELETE, 408 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_D{{VIM_EMU_ALTCONFIG}}, 409 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 410 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_line_copy{{VIM_EMU_ALTCONFIG}}, 411 | 412 | 413 | 414 | 415 | VIM_EMU_YDC_CHAR 416 | D 417 | 418 | 419 | VIM_EMU_AFTER_MOVE 420 | 421 | KeyCode::X, VK_COMMAND, 422 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_D{{VIM_EMU_ALTCONFIG}}, 423 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 424 | 425 | 426 | 427 | 428 | 429 | 430 | 431 | notsave.vim_emu_C{{VIM_EMU_ALTCONFIG}} 432 | 433 | __KeyToKey__ KeyCode::C, ModifierFlag::NONE, 434 | KeyCode::A, VK_CONTROL, 435 | KeyCode::CURSOR_RIGHT, VK_COMMAND|VK_SHIFT, 436 | KeyCode::X, VK_COMMAND, 437 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_C{{VIM_EMU_ALTCONFIG}}, 438 | {{VIM_EMU_EMU_OFF}} 439 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_line_copy{{VIM_EMU_ALTCONFIG}}, 440 | 441 | 442 | 443 | 444 | VIM_EMU_YDC_CHAR 445 | C 446 | 447 | 448 | VIM_EMU_AFTER_MOVE 449 | 450 | KeyCode::X, VK_COMMAND, 451 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_C{{VIM_EMU_ALTCONFIG}}, 452 | {{VIM_EMU_EMU_OFF}} 453 | 454 | 455 | 456 | 457 | 458 | 459 | notsave.vim_emu_visual{{VIM_EMU_ALTCONFIG}} 460 | 461 | 462 | 463 | 464 | VIM_EMU_AFTER_MOVE 465 | 466 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_visual{{VIM_EMU_ALTCONFIG}}, 467 | 468 | 469 | 470 | 471 | 472 | 473 | 474 | 475 | VIM_EMU_REPEAT_INPUT 476 | 477 | KeyCode::B, VK_CONTROL|ModifierFlag::NONE, 478 | 479 | 480 | 481 | VIM_EMU_REPEAT_OUTPUT 482 | 483 | KeyCode::PAGEUP, VK_SHIFT, 484 | 485 | 486 | 487 | 488 | 489 | VIM_EMU_REPEAT_INPUT 490 | 491 | KeyCode::F, VK_CONTROL|ModifierFlag::NONE, 492 | 493 | 494 | 495 | VIM_EMU_REPEAT_OUTPUT 496 | 497 | KeyCode::PAGEDOWN, VK_SHIFT, 498 | 499 | 500 | 501 | 502 | 503 | 504 | 505 | 506 | VIM_EMU_USE_SHIFT 507 | VK_SHIFT| 508 | 509 | 510 | 511 | 512 | 513 | 514 | notsave.vim_emu_visual_line_first{{VIM_EMU_ALTCONFIG}} 515 | 516 | 517 | 518 | VIM_EMU_REPEAT_INPUT 519 | 520 | KeyCode::B, VK_CONTROL|ModifierFlag::NONE, 521 | 522 | 523 | 524 | VIM_EMU_REPEAT_OUTPUT 525 | 526 | KeyCode::PAGEUP, VK_SHIFT, 527 | 528 | 529 | 530 | VIM_EMU_BEFORE_MOVE 531 | 532 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_visual_line_first{{VIM_EMU_ALTCONFIG}}, 533 | KeyCode::CURSOR_RIGHT, VK_COMMAND, 534 | KeyCode::CURSOR_RIGHT, 535 | KeyCode::CURSOR_UP, |VK_SHIFT, 536 | 537 | 538 | 539 | 540 | 541 | 542 | 543 | VIM_EMU_BEFORE_MOVE 544 | 545 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_visual_line_first{{VIM_EMU_ALTCONFIG}}, 546 | KeyCode::CURSOR_RIGHT, VK_COMMAND, 547 | KeyCode::CURSOR_RIGHT, 548 | KeyCode::CURSOR_UP, |VK_SHIFT, 549 | 550 | 551 | 552 | VIM_EMU_USE_SHIFT 553 | VK_SHIFT| 554 | 555 | 556 | 557 | 558 | 559 | notsave.vim_emu_visual_line{{VIM_EMU_ALTCONFIG}} 560 | 561 | 562 | 563 | VIM_EMU_LINECOPY 564 | 565 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_line_copy{{VIM_EMU_ALTCONFIG}} 566 | 567 | 568 | 569 | VIM_EMU_AFTER_MOVE 570 | 571 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_visual_line{{VIM_EMU_ALTCONFIG}}, 572 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_visual_line_first{{VIM_EMU_ALTCONFIG}}, 573 | 574 | 575 | 576 | 577 | 578 | 579 | 580 | 581 | VIM_EMU_REPEAT_INPUT 582 | 583 | KeyCode::B, VK_CONTROL|ModifierFlag::NONE, 584 | 585 | 586 | 587 | VIM_EMU_REPEAT_OUTPUT 588 | 589 | KeyCode::PAGEUP, VK_SHIFT, 590 | 591 | 592 | 593 | VIM_EMU_BEFORE_MOVE 594 | 595 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_visual_line_first{{VIM_EMU_ALTCONFIG}}, 596 | 597 | 598 | 599 | 600 | 601 | VIM_EMU_REPEAT_INPUT 602 | 603 | KeyCode::F, VK_CONTROL|ModifierFlag::NONE, 604 | 605 | 606 | 607 | VIM_EMU_REPEAT_OUTPUT 608 | 609 | KeyCode::PAGEDOWN, VK_SHIFT, 610 | 611 | 612 | 613 | VIM_EMU_BEFORE_MOVE 614 | 615 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_visual_line_first{{VIM_EMU_ALTCONFIG}}, 616 | 617 | 618 | 619 | 620 | __KeyToKey__ 621 | KeyCode::M, VK_SHIFT|ModifierFlag::NONE, 622 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_visual_line_first{{VIM_EMU_ALTCONFIG}}, 623 | KeyCode::PAGEDOWN, VK_SHIFT, 624 | KeyCode::PAGEUP, VK_SHIFT, 625 | 626 | 627 | 628 | 629 | 630 | 631 | VIM_EMU_USE_SHIFT 632 | VK_SHIFT| 633 | 634 | 635 | VIM_EMU_BEFORE_MOVE 636 | 637 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_visual_line_first{{VIM_EMU_ALTCONFIG}}, 638 | 639 | 640 | 641 | 642 | 643 | VIM_EMU_USE_SHIFT 644 | VK_SHIFT| 645 | 646 | 647 | VIM_EMU_BEFORE_MOVE 648 | 649 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_visual_line_first{{VIM_EMU_ALTCONFIG}}, 650 | 651 | 652 | 653 | 654 | 655 | 656 | 657 | notsave.vim_emu_command{{VIM_EMU_ALTCONFIG}} 658 | 659 | __KeyToKey__ KeyCode::W, ModifierFlag::NONE, 660 | KeyCode::VK_LOCK_EXTRA1_FORCE_ON 661 | 662 | 663 | __KeyToKey__ KeyCode::RETURN, ModifierFlag::EXTRA1|ModifierFlag::NONE, 664 | KeyCode::S, VK_COMMAND, 665 | KeyCode::VK_LOCK_EXTRA1_FORCE_OFF, 666 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_command{{VIM_EMU_ALTCONFIG}}, 667 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 668 | 669 | 670 | __KeyToKey__ KeyCode::SPACE, ModifierFlag::EXTRA1|ModifierFlag::NONE, 671 | KeyCode::S, VK_SHIFT|VK_COMMAND, 672 | KeyCode::VK_LOCK_EXTRA1_FORCE_OFF, 673 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_command{{VIM_EMU_ALTCONFIG}}, 674 | {{VIM_EMU_EMU_OFF}}, 675 | 676 | 677 | __KeyToKey__ KeyCode::Q, ModifierFlag::EXTRA1|ModifierFlag::NONE, 678 | KeyCode::S, VK_COMMAND, 679 | KeyCode::W, VK_COMMAND, 680 | KeyCode::VK_LOCK_EXTRA1_FORCE_OFF, 681 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_command{{VIM_EMU_ALTCONFIG}}, 682 | {{VIM_EMU_EMU_OFF}}, 683 | 684 | 685 | __KeyToKey__ KeyCode::Q, ModifierFlag::NONE, 686 | KeyCode::W, VK_COMMAND, 687 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_command{{VIM_EMU_ALTCONFIG}}, 688 | {{VIM_EMU_EMU_OFF}}, 689 | 690 | 691 | __KeyToKey__ KeyCode::H, ModifierFlag::NONE, 692 | KeyCode::SLASH, VK_SHIFT|VK_COMMAND, 693 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_command{{VIM_EMU_ALTCONFIG}}, 694 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 695 | 696 | 697 | 698 | 699 | notsave.vim_emu_search{{VIM_EMU_ALTCONFIG}} 700 | 701 | __KeyToKey__ KeyCode::RETURN, ModifierFlag::NONE, 702 | KeyCode::RETURN, 703 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu{{VIM_EMU_ALTCONFIG}}, 704 | 705 | 706 | 707 | 708 | notsave.vim_emu{{VIM_EMU_ALTCONFIG}} 709 | notsave.vim_emu_search{{VIM_EMU_ALTCONFIG}} 710 | 711 | __KeyToKey__ KeyCode::N, ModifierFlag::NONE, 712 | KeyCode::G, VK_COMMAND, 713 | 714 | 715 | __KeyToKey__ KeyCode::N, 716 | VK_SHIFT|ModifierFlag::NONE, 717 | KeyCode::G, VK_SHIFT|VK_COMMAND, 718 | 719 | 720 | 721 | 722 | notsave.vim_emu_R{{VIM_EMU_ALTCONFIG}} 723 | 724 | 725 | VIM_EMU_BEFORE 726 | 727 | KeyCode::FORWARD_DELETE, 728 | 729 | 730 | 731 | VIM_EMU_AFTER 732 | 733 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_R{{VIM_EMU_ALTCONFIG}}, 734 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 735 | 736 | 737 | 738 | 739 | 740 | notsave.vim_emu_S_R{{VIM_EMU_ALTCONFIG}} 741 | 742 | __KeyToKey__ KeyCode::H, 743 | VK_SHIFT|ModifierFlag::NONE, 744 | KeyCode::Z, VK_COMMAND, 745 | 746 | 747 | 748 | VIM_EMU_BEFORE 749 | 750 | KeyCode::FORWARD_DELETE, 751 | 752 | 753 | 754 | VIM_EMU_AFTER 755 | 756 | 757 | 758 | 759 | 760 | 761 | 762 | -------------------------------------------------------------------------------- /vim_emu/vim_emu_core_insert.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Additional settings of Control + X at insert mode 5 | remap.vim_emu_ctl_x_at_insert{{VIM_EMU_ALTCONFIG}} 6 | {{VIM_EMU_ONLY_APPS}} 7 | {{VIM_EMU_IGNORE_APPS}} 8 | 9 | 10 | notsave.vim_emu_complement{{VIM_EMU_ALTCONFIG}} 11 | 12 | __HoldingKeyToKey__ KeyCode::C, 13 | KeyCode::RETURN, 14 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_complement{{VIM_EMU_ALTCONFIG}}, 15 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 16 | KeyCode::VK_NONE, 17 | KeyCode::ESCAPE, Option::NOREPEAT 18 | 19 | 20 | 21 | notsave.vim_emu_search{{VIM_EMU_ALTCONFIG}} 22 | 23 | __HoldingKeyToKey__ KeyCode::C, 24 | KeyCode::ESCAPE, 25 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_search{{VIM_EMU_ALTCONFIG}}, 26 | {{VIM_EMU_EMU_ON}} 27 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 28 | KeyCode::VK_NONE, 29 | KeyCode::ESCAPE, Option::NOREPEAT 30 | 31 | 32 | 33 | JAPANESE 34 | 35 | __HoldingKeyToKey__ KeyCode::C, 36 | KeyCode::VK_CHANGE_INPUTSOURCE_ENGLISH, 37 | KeyCode::VK_CHANGE_INPUTSOURCE_JAPANESE, 38 | KeyCode::VK_CHANGE_INPUTSOURCE_ENGLISH, 39 | {{VIM_EMU_FORCE_ON_NORMAL_MODE}}, 40 | KeyCode::VK_NONE, 41 | KeyCode::ESCAPE, Option::NOREPEAT 42 | 43 | 44 | 45 | notsave.vim_emu_normal{{VIM_EMU_ALTCONFIG}} 46 | 47 | __HoldingKeyToKey__ KeyCode::C, 48 | {{VIM_EMU_FORCE_ON_NORMAL_MODE}}, 49 | KeyCode::VK_NONE, 50 | KeyCode::ESCAPE, Option::NOREPEAT 51 | 52 | 53 | 54 | __KeyToKey__ KeyCode::I, 55 | VK_CONTROL|ModifierFlag::NONE, 56 | KeyCode::TAB 57 | 58 | 59 | __KeyToKey__ KeyCode::J, 60 | VK_CONTROL|ModifierFlag::NONE, 61 | KeyCode::RETURN 62 | 63 | 64 | __KeyToKey__ KeyCode::M, 65 | VK_CONTROL|ModifierFlag::NONE, 66 | KeyCode::RETURN 67 | 68 | 69 | __KeyToKey__ KeyCode::T, 70 | VK_CONTROL|ModifierFlag::NONE, 71 | KeyCode::CURSOR_LEFT, VK_COMMAND, 72 | KeyCode::TAB 73 | 74 | 75 | __KeyToKey__ KeyCode::U, 76 | VK_CONTROL|ModifierFlag::NONE, 77 | KeyCode::CURSOR_LEFT, VK_COMMAND, VK_SHIFT, 78 | KeyCode::X, VK_COMMAND 79 | 80 | 81 | __KeyToKey__ KeyCode::W, 82 | VK_CONTROL|ModifierFlag::NONE, 83 | KeyCode::CURSOR_LEFT, VK_OPTION, VK_SHIFT, 84 | KeyCode::X, VK_COMMAND 85 | 86 | 87 | 88 | -------------------------------------------------------------------------------- /vim_emu/vim_emu_core_lb.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Control + [ to Esc for non-vim_emu apps 5 | remap.vim_emu_ctl_[_to_Esc_non_vim_emu{{VIM_EMU_ALTCONFIG}} 6 | {{VIM_EMU_IGNORE_APPS}} 7 | {{VIM_EMU_ONLY_APPS}} 8 | 9 | __KeyToKey__ KeyCode::BRACKET_LEFT, 10 | VK_CONTROL|ModifierFlag::NONE, 11 | KeyCode::ESCAPE 12 | 13 | 14 | 15 | Control + [ to Esc for Normal mode 16 | remap.vim_emu_ctl_[_to_Esc_normal_mode{{VIM_EMU_ALTCONFIG}} 17 | {{VIM_EMU_ONLY_APPS}} 18 | {{VIM_EMU_IGNORE_APPS}} 19 | notsave.vim_emu_normal{{VIM_EMU_ALTCONFIG}} 20 | 21 | __KeyToKey__ KeyCode::BRACKET_LEFT, 22 | VK_CONTROL|ModifierFlag::NONE, 23 | KeyCode::ESCAPE 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /vim_emu/vim_emu_core_reset.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Reset vim_emu at non-vim_emu apps 5 | When any buttons are pushed at non-vim_emu apps, 6 | it resets vim_emu (change to Insert Mode) 7 | for vim_emu apps. (no effect on non-vim_emu apps. 8 | remap.vim_emu_off_at_non_vim_emu_apps{{VIM_EMU_ALTCONFIG}} 9 | {{VIM_EMU_IGNORE_APPS}} 10 | {{VIM_EMU_ONLY_APPS}} 11 | notsave.vim_emu_using{{VIM_EMU_ALTCONFIG}} 12 | 13 | 14 | VIM_EMU_BEFORE 15 | 16 | {{VIM_EMU_FORCE_OFF_ALL_BUT_LINE}}, 17 | 18 | 19 | 20 | VIM_EMU_AFTER 21 | 22 | 23 | 24 | 25 | 26 | 27 | Reset vim_emu at left click in any case 28 | remap.vim_emu_off_with_left_click{{VIM_EMU_ALTCONFIG}} 29 | notsave.vim_emu_using{{VIM_EMU_ALTCONFIG}} 30 | 31 | __KeyToKey__ PointingButton::LEFT, 32 | {{VIM_EMU_FORCE_OFF_ALL_BUT_LINE}}, 33 | KeyCode::VK_MOUSEKEY_BUTTON_LEFT, 34 | 35 | 36 | 37 | Reset vim_emu at Cmd-Tab in any case 38 | remap.vim_emu_off_with_cmd_tab{{VIM_EMU_ALTCONFIG}} 39 | notsave.vim_emu_using{{VIM_EMU_ALTCONFIG}} 40 | 41 | __KeyToKey__ KeyCode::TAB, 42 | VK_COMMAND|ModifierFlag::NONE, 43 | {{VIM_EMU_FORCE_OFF_ALL_BUT_LINE}}, 44 | KeyCode::TAB, VK_COMMAND, 45 | 46 | 47 | 48 | Reset at Spotlight (Ctrl-Space or Ctrl-Option-Space) 49 | remap.vim_emu_off_at_spotlight{{VIM_EMU_ALTCONFIG}} 50 | notsave.vim_emu_using{{VIM_EMU_ALTCONFIG}} 51 | 52 | __KeyToKey__ KeyCode::SPACE, 53 | VK_CONTROL|ModifierFlag::NONE, 54 | {{VIM_EMU_FORCE_OFF_ALL_BUT_LINE}}, 55 | KeyCode::SPACE, VK_CONTROL 56 | 57 | 58 | __KeyToKey__ KeyCode::SPACE, 59 | VK_CONTROL|VK_OPTION|ModifierFlag::NONE, 60 | {{VIM_EMU_FORCE_OFF_ALL_BUT_LINE}}, 61 | KeyCode::SPACE, VK_CONTROL|VK_OPTION 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /vim_emu/vim_emu_core_rm.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Enable Vim Recording Macro 5 | q in Normal mode to start recording key inputs. 6 | q in Normal mode to stop recording key inputs. 7 | @ to execute recorded key inputs. 8 | n@ (n=2-9) to execute recorded key inputs n-times. 9 | Need additional application like MadRuby. 10 | MadRuby: http://www.wingsforpigs.com/MadRuby/MadRuby.html 11 | Set Keyboard Shortcuts like: 12 | Start Recording: Ctrl-Shift-Cmd-6 13 | Stop Recording: Ctrl-Shift-Cmd-7 14 | Play Macro: Ctrl-Shift-Cmd-8 15 | Multiple Play Macro: Ctrl-Shift-Cmd-9 16 | remap.vim_emu_record{{VIM_EMU_ALTCONFIG}} 17 | {{VIM_EMU_ONLY_APPS}} 18 | {{VIM_EMU_IGNORE_APPS}} 19 | 20 | notsave.vim_emu_normal{{VIM_EMU_ALTCONFIG}} 21 | notsave.vim_emu_record{{VIM_EMU_ALTCONFIG}} 22 | 23 | __KeyToKey__ KeyCode::Q, ModifierFlag::NONE, 24 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_record{{VIM_EMU_ALTCONFIG}}, 25 | KeyCode::KEY_6, VK_CONTROL| 26 | VK_SHIFT|VK_COMMAND 27 | 28 | 29 | 30 | notsave.vim_emu_normal{{VIM_EMU_ALTCONFIG}} 31 | notsave.vim_emu_record{{VIM_EMU_ALTCONFIG}} 32 | 33 | __KeyToKey__ KeyCode::Q, ModifierFlag::NONE, 34 | KeyCode::KEY_7, VK_CONTROL| 35 | VK_SHIFT|VK_COMMAND, 36 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_record{{VIM_EMU_ALTCONFIG}}, 37 | 38 | 39 | 40 | 41 | notsave.vim_emu_normal{{VIM_EMU_ALTCONFIG}} 42 | 43 | 44 | VIM_EMU_REPEAT_INPUT 45 | 46 | KeyCode::KEY_2, VK_SHIFT|ModifierFlag::NONE, 47 | 48 | 49 | 50 | 51 | 52 | VIM_EMU_REPEAT_INPUT 53 | 54 | KeyCode::JIS_ATMARK, ModifierFlag::NONE, 55 | 56 | 57 | 58 | 59 | 60 | VIM_EMU_REPEAT_INPUT 61 | 62 | KeyCode::Q, VK_OPTION|ModifierFlag::NONE, 63 | 64 | 65 | 66 | 67 | 68 | 69 | -------------------------------------------------------------------------------- /vim_emu/vim_emu_core_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 90 | 91 | Help 92 | 93 | Check https://github.com/rcmdnk/vim_emu for more details. 94 | 95 | 96 | Application choice 97 | 98 | 99 | 100 | 101 | If you want to change applications, add the following lines into private.xml. 102 | 103 | 104 | For example, enable only for MAIL: 105 | 106 | 107 | <replacementdef> 108 | <replacementname>VIM_EMU_ONLY_APPS</replacementname> 109 | <replacementvalue>MAIL</replacementvalue> 110 | </replacementdef> 111 | <replacementdef> 112 | <replacementname>VIM_EMU_IGNORE_APPS</replacementname> 113 | <replacementvalue></replacementvalue> 114 | </replacementdef> 115 | 116 | 117 | 118 | Insert Mode 119 | 120 | 121 | Starting from this mode 122 | ESC/Ctrl-[ (or other ChangeKeys): Enter VIM Normal mode 123 | Ctrl-n/p: Enter Complement mode, if "Enable Vim like complement" is checked: 124 | * In Complement mode, use Ctrl-n/p to choose a candidate. 125 | * Ctrl-h to skip, ESC/Ctrl-[ to choose a candidate. 126 | With **Additional settings of Control + X at insert mode.** 127 | * Ctrl-c: Change to normal mode. 128 | * Ctrl-i: Tab. 129 | * Ctrl-j: Return. 130 | * Ctrl-m: Return. 131 | * Ctrl-t: Insert Tab at the beggining of current line. 132 | * Ctrl-u: Cut the text between the beggining of the line and the current position. 133 | * Ctrl-w: Cut the word before the cursor. 134 | * Note: Some Control-X shortcut keys emacs like movements are originally available in Mac (see https://support.apple.com/en-ap/HT201236). 135 | 136 | 137 | 138 | Normal Mode 139 | 140 | Main Mode Change 141 | i/I/a/A/o/O: Enter Insert mode (OS standard state) at under the cursor/start of the 142 | line/next to the cursor/end of the line. 143 | 144 | v/V: Enter Visual/Visual Line Mode 145 | 146 | 147 | :(colon) : Enter Command mode. 148 | 149 | 150 | 151 | Move 152 | h/j/k/l: Left/Down/Up/Right. 153 | 154 | 0/$ : Move to the beginning/end of the line (Mac Cmd-left, Cmd-right). 155 | 156 | 157 | {/} : Move to the beginning/end of the paragraph (Mac Ctrl-a, Ctrl-e. It works rather like "sentence". Sometime, it is actual sentence rather than 0/$). 158 | 159 | 160 | ^ : Move to the first non-blanck character of the line. 161 | 162 | 163 | +/- : Move to the next/previous line's first character. 164 | 165 | 166 | w/e: Move to the next word 167 | (w: the beginning of the word, e: the end of the word). 168 | 169 | 170 | b/ge: Move to the previous word 171 | (b: the beginning of the word, ge: the end of the word). 172 | 173 | Ctrl-u/Ctrl-d: Go Up/Down 10 lines. 174 | Ctrl-b/Ctrl-f: PageUp/PageDown. 175 | Enter: Move to the first non-blanck character of the next line. 176 | gg/G: Go to top/bottom of the file. 177 | 178 | 179 | Yank/Cut/Change/Paste 180 | yy/Y: Copy the line. 181 | dd: Cut the line. 182 | D: Cut from here to end the line. 183 | cc: Change the line. 184 | C: Change from here to end the line. 185 | x/X: Cut a character under/before the cursor. 186 | s/S: Delete/Cut a character/a line under the cursor and enter Insert mode. 187 | p/P: Paste to the next/current place. 188 | 189 | 190 | Others 191 | * If the copy/cut was done as line-wise (such "yy"), it pastes to the next/current line. 192 | u/C-r: Undo/Redo. U can be used as same as u, too. 193 | r/R: Replace one/multi character/s. 194 | J: Combine two lines. 195 | M: Move current line to the middle (need enough lines in above/blow). 196 | .(period): Replace a following word with a clipboard (different from normal vim). 197 | /: Search. 198 | n/N: Search next/previous. 199 | *(asterisk): Search the word under the cursor. 200 | ZZ: Save and Quit. 201 | ZQ: Quit. 202 | 203 | 204 | Non text edit commands 205 | zi: Zoom in. 206 | zo: Zoom out. 207 | z0: Zoom reset. 208 | 209 | 210 | 211 | Visual Mode 212 | 213 | Mode Change 214 | ESC/Ctrl-[: Enter Normal mode 215 | 216 | 217 | Move 218 | Most of Move commands in Normal mode can be used. 219 | 220 | 221 | Yank/Cut/Change 222 | y: Copy the selected region 223 | Y: Copy the selected region + to the end of the line 224 | d: Cut the selected region 225 | D: Cut the selected region + to the end of the line 226 | c: Change the selected region 227 | C: Change the selected region + to the end of the line 228 | *(asterisk): Search the selected word 229 | 230 | Note: Currently, if you paste lines copied in visual line mode, 231 | there will be one empty line below the content 232 | if the content doesn't include the last line of the text. 233 | 234 | 235 | 236 | Command Mode 237 | 238 | ESC/Ctrl-[: Enter Normal mode 239 | w<RETURN>: Save 240 | w<SPACE>: Save As 241 | wq<RETURN>: Save and Quit 242 | q<RETURN>: Quit 243 | h<RETURN>: Help of the application 244 | 245 | 246 | 247 | 248 | -------------------------------------------------------------------------------- /vim_emu/vim_emu_key_click_wrap.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | __KeyToKey__ KeyCode::A, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::A, {{ VIM_EMU_AFTER }} 4 | __KeyToKey__ KeyCode::B, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::B, {{ VIM_EMU_AFTER }} 5 | __KeyToKey__ KeyCode::C, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::C, {{ VIM_EMU_AFTER }} 6 | __KeyToKey__ KeyCode::D, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::D, {{ VIM_EMU_AFTER }} 7 | __KeyToKey__ KeyCode::E, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::E, {{ VIM_EMU_AFTER }} 8 | __KeyToKey__ KeyCode::F, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::F, {{ VIM_EMU_AFTER }} 9 | __KeyToKey__ KeyCode::G, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::G, {{ VIM_EMU_AFTER }} 10 | __KeyToKey__ KeyCode::H, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::H, {{ VIM_EMU_AFTER }} 11 | __KeyToKey__ KeyCode::I, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::I, {{ VIM_EMU_AFTER }} 12 | __KeyToKey__ KeyCode::J, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::J, {{ VIM_EMU_AFTER }} 13 | __KeyToKey__ KeyCode::K, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::K, {{ VIM_EMU_AFTER }} 14 | __KeyToKey__ KeyCode::L, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::L, {{ VIM_EMU_AFTER }} 15 | __KeyToKey__ KeyCode::M, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::M, {{ VIM_EMU_AFTER }} 16 | __KeyToKey__ KeyCode::N, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::N, {{ VIM_EMU_AFTER }} 17 | __KeyToKey__ KeyCode::O, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::O, {{ VIM_EMU_AFTER }} 18 | __KeyToKey__ KeyCode::P, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::P, {{ VIM_EMU_AFTER }} 19 | __KeyToKey__ KeyCode::Q, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::Q, {{ VIM_EMU_AFTER }} 20 | __KeyToKey__ KeyCode::R, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::R, {{ VIM_EMU_AFTER }} 21 | __KeyToKey__ KeyCode::S, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::S, {{ VIM_EMU_AFTER }} 22 | __KeyToKey__ KeyCode::T, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::T, {{ VIM_EMU_AFTER }} 23 | __KeyToKey__ KeyCode::U, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::U, {{ VIM_EMU_AFTER }} 24 | __KeyToKey__ KeyCode::V, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::V, {{ VIM_EMU_AFTER }} 25 | __KeyToKey__ KeyCode::W, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::W, {{ VIM_EMU_AFTER }} 26 | __KeyToKey__ KeyCode::X, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::X, {{ VIM_EMU_AFTER }} 27 | __KeyToKey__ KeyCode::Y, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::Y, {{ VIM_EMU_AFTER }} 28 | __KeyToKey__ KeyCode::Z, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::Z, {{ VIM_EMU_AFTER }} 29 | __KeyToKey__ KeyCode::CURSOR_UP, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::CURSOR_UP, {{ VIM_EMU_AFTER }} 30 | __KeyToKey__ KeyCode::CURSOR_DOWN, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::CURSOR_DOWN, {{ VIM_EMU_AFTER }} 31 | __KeyToKey__ KeyCode::CURSOR_LEFT, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::CURSOR_LEFT, {{ VIM_EMU_AFTER }} 32 | __KeyToKey__ KeyCode::CURSOR_RIGHT, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::CURSOR_RIGHT, {{ VIM_EMU_AFTER }} 33 | __KeyToKey__ KeyCode::PAGEUP, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::PAGEUP, {{ VIM_EMU_AFTER }} 34 | __KeyToKey__ KeyCode::PAGEDOWN, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::PAGEDOWN, {{ VIM_EMU_AFTER }} 35 | __KeyToKey__ KeyCode::HOME, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::HOME, {{ VIM_EMU_AFTER }} 36 | __KeyToKey__ KeyCode::END, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::END, {{ VIM_EMU_AFTER }} 37 | __KeyToKey__ KeyCode::F1, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::F1, {{ VIM_EMU_AFTER }} 38 | __KeyToKey__ KeyCode::F2, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::F2, {{ VIM_EMU_AFTER }} 39 | __KeyToKey__ KeyCode::F3, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::F3, {{ VIM_EMU_AFTER }} 40 | __KeyToKey__ KeyCode::F4, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::F4, {{ VIM_EMU_AFTER }} 41 | __KeyToKey__ KeyCode::F5, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::F5, {{ VIM_EMU_AFTER }} 42 | __KeyToKey__ KeyCode::F6, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::F6, {{ VIM_EMU_AFTER }} 43 | __KeyToKey__ KeyCode::F7, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::F7, {{ VIM_EMU_AFTER }} 44 | __KeyToKey__ KeyCode::F8, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::F8, {{ VIM_EMU_AFTER }} 45 | __KeyToKey__ KeyCode::F9, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::F9, {{ VIM_EMU_AFTER }} 46 | __KeyToKey__ KeyCode::F10, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::F10, {{ VIM_EMU_AFTER }} 47 | __KeyToKey__ KeyCode::F11, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::F11, {{ VIM_EMU_AFTER }} 48 | __KeyToKey__ KeyCode::F12, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::F12, {{ VIM_EMU_AFTER }} 49 | __KeyToKey__ KeyCode::F13, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::F13, {{ VIM_EMU_AFTER }} 50 | __KeyToKey__ KeyCode::F14, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::F14, {{ VIM_EMU_AFTER }} 51 | __KeyToKey__ KeyCode::F15, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::F15, {{ VIM_EMU_AFTER }} 52 | __KeyToKey__ KeyCode::F16, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::F16, {{ VIM_EMU_AFTER }} 53 | __KeyToKey__ KeyCode::F17, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::F17, {{ VIM_EMU_AFTER }} 54 | __KeyToKey__ KeyCode::F18, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::F18, {{ VIM_EMU_AFTER }} 55 | __KeyToKey__ KeyCode::F19, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::F19, {{ VIM_EMU_AFTER }} 56 | __KeyToKey__ KeyCode::UK_SECTION, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::UK_SECTION, {{ VIM_EMU_AFTER }} 57 | __KeyToKey__ KeyCode::GERMAN_PC_LESS_THAN, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::GERMAN_PC_LESS_THAN, {{ VIM_EMU_AFTER }} 58 | __KeyToKey__ KeyCode::KEYPAD_0, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_0, {{ VIM_EMU_AFTER }} 59 | __KeyToKey__ KeyCode::KEYPAD_1, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_1, {{ VIM_EMU_AFTER }} 60 | __KeyToKey__ KeyCode::KEYPAD_2, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_2, {{ VIM_EMU_AFTER }} 61 | __KeyToKey__ KeyCode::KEYPAD_3, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_3, {{ VIM_EMU_AFTER }} 62 | __KeyToKey__ KeyCode::KEYPAD_4, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_4, {{ VIM_EMU_AFTER }} 63 | __KeyToKey__ KeyCode::KEYPAD_5, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_5, {{ VIM_EMU_AFTER }} 64 | __KeyToKey__ KeyCode::KEYPAD_6, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_6, {{ VIM_EMU_AFTER }} 65 | __KeyToKey__ KeyCode::KEYPAD_7, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_7, {{ VIM_EMU_AFTER }} 66 | __KeyToKey__ KeyCode::KEYPAD_8, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_8, {{ VIM_EMU_AFTER }} 67 | __KeyToKey__ KeyCode::KEYPAD_9, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_9, {{ VIM_EMU_AFTER }} 68 | __KeyToKey__ KeyCode::KEYPAD_COMMA, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_COMMA, {{ VIM_EMU_AFTER }} 69 | __KeyToKey__ KeyCode::KEYPAD_DOT, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_DOT, {{ VIM_EMU_AFTER }} 70 | __KeyToKey__ KeyCode::KEYPAD_EQUAL, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_EQUAL, {{ VIM_EMU_AFTER }} 71 | __KeyToKey__ KeyCode::KEYPAD_MINUS, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_MINUS, {{ VIM_EMU_AFTER }} 72 | __KeyToKey__ KeyCode::KEYPAD_MULTIPLY, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_MULTIPLY, {{ VIM_EMU_AFTER }} 73 | __KeyToKey__ KeyCode::KEYPAD_PLUS, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_PLUS, {{ VIM_EMU_AFTER }} 74 | __KeyToKey__ KeyCode::KEYPAD_SLASH, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_SLASH, {{ VIM_EMU_AFTER }} 75 | __KeyToKey__ KeyCode::KEY_0, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::KEY_0, {{ VIM_EMU_AFTER }} 76 | __KeyToKey__ KeyCode::KEY_1, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::KEY_1, {{ VIM_EMU_AFTER }} 77 | __KeyToKey__ KeyCode::KEY_2, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::KEY_2, {{ VIM_EMU_AFTER }} 78 | __KeyToKey__ KeyCode::KEY_3, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::KEY_3, {{ VIM_EMU_AFTER }} 79 | __KeyToKey__ KeyCode::KEY_4, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::KEY_4, {{ VIM_EMU_AFTER }} 80 | __KeyToKey__ KeyCode::KEY_5, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::KEY_5, {{ VIM_EMU_AFTER }} 81 | __KeyToKey__ KeyCode::KEY_6, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::KEY_6, {{ VIM_EMU_AFTER }} 82 | __KeyToKey__ KeyCode::KEY_7, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::KEY_7, {{ VIM_EMU_AFTER }} 83 | __KeyToKey__ KeyCode::KEY_8, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::KEY_8, {{ VIM_EMU_AFTER }} 84 | __KeyToKey__ KeyCode::KEY_9, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::KEY_9, {{ VIM_EMU_AFTER }} 85 | __KeyToKey__ KeyCode::DELETE, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::DELETE, {{ VIM_EMU_AFTER }} 86 | __KeyToKey__ KeyCode::ENTER, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::ENTER, {{ VIM_EMU_AFTER }} 87 | __KeyToKey__ KeyCode::ENTER_POWERBOOK, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::ENTER_POWERBOOK, {{ VIM_EMU_AFTER }} 88 | __KeyToKey__ KeyCode::ESCAPE, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::ESCAPE, {{ VIM_EMU_AFTER }} 89 | __KeyToKey__ KeyCode::FORWARD_DELETE, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::FORWARD_DELETE, {{ VIM_EMU_AFTER }} 90 | __KeyToKey__ KeyCode::HELP, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::PC_INSERT, {{ VIM_EMU_AFTER }} 91 | __KeyToKey__ KeyCode::RETURN, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::RETURN, {{ VIM_EMU_AFTER }} 92 | __KeyToKey__ KeyCode::SPACE, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::SPACE, {{ VIM_EMU_AFTER }} 93 | __KeyToKey__ KeyCode::TAB, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::TAB, {{ VIM_EMU_AFTER }} 94 | __KeyToKey__ KeyCode::KEYPAD_CLEAR, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_CLEAR, {{ VIM_EMU_AFTER }} 95 | __KeyToKey__ KeyCode::BACKQUOTE, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::BACKQUOTE, {{ VIM_EMU_AFTER }} 96 | __KeyToKey__ KeyCode::BACKSLASH, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::BACKSLASH, {{ VIM_EMU_AFTER }} 97 | __KeyToKey__ KeyCode::BRACKET_LEFT, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::BRACKET_LEFT, {{ VIM_EMU_AFTER }} 98 | __KeyToKey__ KeyCode::BRACKET_RIGHT, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::BRACKET_RIGHT, {{ VIM_EMU_AFTER }} 99 | __KeyToKey__ KeyCode::COMMA, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::COMMA, {{ VIM_EMU_AFTER }} 100 | __KeyToKey__ KeyCode::DOT, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::DOT, {{ VIM_EMU_AFTER }} 101 | __KeyToKey__ KeyCode::EQUAL, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::EQUAL, {{ VIM_EMU_AFTER }} 102 | __KeyToKey__ KeyCode::MINUS, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::MINUS, {{ VIM_EMU_AFTER }} 103 | __KeyToKey__ KeyCode::QUOTE, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::QUOTE, {{ VIM_EMU_AFTER }} 104 | __KeyToKey__ KeyCode::SEMICOLON, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::SEMICOLON, {{ VIM_EMU_AFTER }} 105 | __KeyToKey__ KeyCode::SLASH, ModifierFlag::NONE, {{ VIM_EMU_BEFORE }}, KeyCode::SLASH, {{ VIM_EMU_AFTER }} 106 | __KeyToKey__ PointingButton::LEFT, {{ VIM_EMU_BEFORE }}, KeyCode::VK_MOUSEKEY_BUTTON_LEFT, {{ VIM_EMU_AFTER }} 107 | __KeyToKey__ PointingButton::RIGHT, {{ VIM_EMU_BEFORE }}, KeyCode::VK_MOUSEKEY_BUTTON_RIGHT, {{ VIM_EMU_AFTER }} 108 | __KeyToKey__ PointingButton::MIDDLE, {{ VIM_EMU_BEFORE }}, KeyCode::VK_MOUSEKEY_BUTTON_MIDDLE, {{ VIM_EMU_AFTER }} 109 | 110 | -------------------------------------------------------------------------------- /vim_emu/vim_emu_key_wrap.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | __KeyToKey__ KeyCode::A, {{ VIM_EMU_BEFORE }}, KeyCode::A, {{ VIM_EMU_AFTER }} 4 | __KeyToKey__ KeyCode::B, {{ VIM_EMU_BEFORE }}, KeyCode::B, {{ VIM_EMU_AFTER }} 5 | __KeyToKey__ KeyCode::C, {{ VIM_EMU_BEFORE }}, KeyCode::C, {{ VIM_EMU_AFTER }} 6 | __KeyToKey__ KeyCode::D, {{ VIM_EMU_BEFORE }}, KeyCode::D, {{ VIM_EMU_AFTER }} 7 | __KeyToKey__ KeyCode::E, {{ VIM_EMU_BEFORE }}, KeyCode::E, {{ VIM_EMU_AFTER }} 8 | __KeyToKey__ KeyCode::F, {{ VIM_EMU_BEFORE }}, KeyCode::F, {{ VIM_EMU_AFTER }} 9 | __KeyToKey__ KeyCode::G, {{ VIM_EMU_BEFORE }}, KeyCode::G, {{ VIM_EMU_AFTER }} 10 | __KeyToKey__ KeyCode::H, {{ VIM_EMU_BEFORE }}, KeyCode::H, {{ VIM_EMU_AFTER }} 11 | __KeyToKey__ KeyCode::I, {{ VIM_EMU_BEFORE }}, KeyCode::I, {{ VIM_EMU_AFTER }} 12 | __KeyToKey__ KeyCode::J, {{ VIM_EMU_BEFORE }}, KeyCode::J, {{ VIM_EMU_AFTER }} 13 | __KeyToKey__ KeyCode::K, {{ VIM_EMU_BEFORE }}, KeyCode::K, {{ VIM_EMU_AFTER }} 14 | __KeyToKey__ KeyCode::L, {{ VIM_EMU_BEFORE }}, KeyCode::L, {{ VIM_EMU_AFTER }} 15 | __KeyToKey__ KeyCode::M, {{ VIM_EMU_BEFORE }}, KeyCode::M, {{ VIM_EMU_AFTER }} 16 | __KeyToKey__ KeyCode::N, {{ VIM_EMU_BEFORE }}, KeyCode::N, {{ VIM_EMU_AFTER }} 17 | __KeyToKey__ KeyCode::O, {{ VIM_EMU_BEFORE }}, KeyCode::O, {{ VIM_EMU_AFTER }} 18 | __KeyToKey__ KeyCode::P, {{ VIM_EMU_BEFORE }}, KeyCode::P, {{ VIM_EMU_AFTER }} 19 | __KeyToKey__ KeyCode::Q, {{ VIM_EMU_BEFORE }}, KeyCode::Q, {{ VIM_EMU_AFTER }} 20 | __KeyToKey__ KeyCode::R, {{ VIM_EMU_BEFORE }}, KeyCode::R, {{ VIM_EMU_AFTER }} 21 | __KeyToKey__ KeyCode::S, {{ VIM_EMU_BEFORE }}, KeyCode::S, {{ VIM_EMU_AFTER }} 22 | __KeyToKey__ KeyCode::T, {{ VIM_EMU_BEFORE }}, KeyCode::T, {{ VIM_EMU_AFTER }} 23 | __KeyToKey__ KeyCode::U, {{ VIM_EMU_BEFORE }}, KeyCode::U, {{ VIM_EMU_AFTER }} 24 | __KeyToKey__ KeyCode::V, {{ VIM_EMU_BEFORE }}, KeyCode::V, {{ VIM_EMU_AFTER }} 25 | __KeyToKey__ KeyCode::W, {{ VIM_EMU_BEFORE }}, KeyCode::W, {{ VIM_EMU_AFTER }} 26 | __KeyToKey__ KeyCode::X, {{ VIM_EMU_BEFORE }}, KeyCode::X, {{ VIM_EMU_AFTER }} 27 | __KeyToKey__ KeyCode::Y, {{ VIM_EMU_BEFORE }}, KeyCode::Y, {{ VIM_EMU_AFTER }} 28 | __KeyToKey__ KeyCode::Z, {{ VIM_EMU_BEFORE }}, KeyCode::Z, {{ VIM_EMU_AFTER }} 29 | 58 | __KeyToKey__ KeyCode::UK_SECTION, {{ VIM_EMU_BEFORE }}, KeyCode::UK_SECTION, {{ VIM_EMU_AFTER }} 59 | __KeyToKey__ KeyCode::GERMAN_PC_LESS_THAN, {{ VIM_EMU_BEFORE }}, KeyCode::GERMAN_PC_LESS_THAN, {{ VIM_EMU_AFTER }} 60 | __KeyToKey__ KeyCode::KEYPAD_0, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_0, {{ VIM_EMU_AFTER }} 61 | __KeyToKey__ KeyCode::KEYPAD_1, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_1, {{ VIM_EMU_AFTER }} 62 | __KeyToKey__ KeyCode::KEYPAD_2, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_2, {{ VIM_EMU_AFTER }} 63 | __KeyToKey__ KeyCode::KEYPAD_3, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_3, {{ VIM_EMU_AFTER }} 64 | __KeyToKey__ KeyCode::KEYPAD_4, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_4, {{ VIM_EMU_AFTER }} 65 | __KeyToKey__ KeyCode::KEYPAD_5, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_5, {{ VIM_EMU_AFTER }} 66 | __KeyToKey__ KeyCode::KEYPAD_6, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_6, {{ VIM_EMU_AFTER }} 67 | __KeyToKey__ KeyCode::KEYPAD_7, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_7, {{ VIM_EMU_AFTER }} 68 | __KeyToKey__ KeyCode::KEYPAD_8, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_8, {{ VIM_EMU_AFTER }} 69 | __KeyToKey__ KeyCode::KEYPAD_9, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_9, {{ VIM_EMU_AFTER }} 70 | __KeyToKey__ KeyCode::KEYPAD_COMMA, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_COMMA, {{ VIM_EMU_AFTER }} 71 | __KeyToKey__ KeyCode::KEYPAD_DOT, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_DOT, {{ VIM_EMU_AFTER }} 72 | __KeyToKey__ KeyCode::KEYPAD_EQUAL, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_EQUAL, {{ VIM_EMU_AFTER }} 73 | __KeyToKey__ KeyCode::KEYPAD_MINUS, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_MINUS, {{ VIM_EMU_AFTER }} 74 | __KeyToKey__ KeyCode::KEYPAD_MULTIPLY, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_MULTIPLY, {{ VIM_EMU_AFTER }} 75 | __KeyToKey__ KeyCode::KEYPAD_PLUS, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_PLUS, {{ VIM_EMU_AFTER }} 76 | __KeyToKey__ KeyCode::KEYPAD_SLASH, {{ VIM_EMU_BEFORE }}, KeyCode::KEYPAD_SLASH, {{ VIM_EMU_AFTER }} 77 | __KeyToKey__ KeyCode::KEY_0, {{ VIM_EMU_BEFORE }}, KeyCode::KEY_0, {{ VIM_EMU_AFTER }} 78 | __KeyToKey__ KeyCode::KEY_1, {{ VIM_EMU_BEFORE }}, KeyCode::KEY_1, {{ VIM_EMU_AFTER }} 79 | __KeyToKey__ KeyCode::KEY_2, {{ VIM_EMU_BEFORE }}, KeyCode::KEY_2, {{ VIM_EMU_AFTER }} 80 | __KeyToKey__ KeyCode::KEY_3, {{ VIM_EMU_BEFORE }}, KeyCode::KEY_3, {{ VIM_EMU_AFTER }} 81 | __KeyToKey__ KeyCode::KEY_4, {{ VIM_EMU_BEFORE }}, KeyCode::KEY_4, {{ VIM_EMU_AFTER }} 82 | __KeyToKey__ KeyCode::KEY_5, {{ VIM_EMU_BEFORE }}, KeyCode::KEY_5, {{ VIM_EMU_AFTER }} 83 | __KeyToKey__ KeyCode::KEY_6, {{ VIM_EMU_BEFORE }}, KeyCode::KEY_6, {{ VIM_EMU_AFTER }} 84 | __KeyToKey__ KeyCode::KEY_7, {{ VIM_EMU_BEFORE }}, KeyCode::KEY_7, {{ VIM_EMU_AFTER }} 85 | __KeyToKey__ KeyCode::KEY_8, {{ VIM_EMU_BEFORE }}, KeyCode::KEY_8, {{ VIM_EMU_AFTER }} 86 | __KeyToKey__ KeyCode::KEY_9, {{ VIM_EMU_BEFORE }}, KeyCode::KEY_9, {{ VIM_EMU_AFTER }} 87 | 99 | __KeyToKey__ KeyCode::BACKQUOTE, {{ VIM_EMU_BEFORE }}, KeyCode::BACKQUOTE, {{ VIM_EMU_AFTER }} 100 | __KeyToKey__ KeyCode::BACKSLASH, {{ VIM_EMU_BEFORE }}, KeyCode::BACKSLASH, {{ VIM_EMU_AFTER }} 101 | __KeyToKey__ KeyCode::BRACKET_LEFT, {{ VIM_EMU_BEFORE }}, KeyCode::BRACKET_LEFT, {{ VIM_EMU_AFTER }} 102 | __KeyToKey__ KeyCode::BRACKET_RIGHT, {{ VIM_EMU_BEFORE }}, KeyCode::BRACKET_RIGHT, {{ VIM_EMU_AFTER }} 103 | __KeyToKey__ KeyCode::COMMA, {{ VIM_EMU_BEFORE }}, KeyCode::COMMA, {{ VIM_EMU_AFTER }} 104 | __KeyToKey__ KeyCode::DOT, {{ VIM_EMU_BEFORE }}, KeyCode::DOT, {{ VIM_EMU_AFTER }} 105 | __KeyToKey__ KeyCode::EQUAL, {{ VIM_EMU_BEFORE }}, KeyCode::EQUAL, {{ VIM_EMU_AFTER }} 106 | __KeyToKey__ KeyCode::MINUS, {{ VIM_EMU_BEFORE }}, KeyCode::MINUS, {{ VIM_EMU_AFTER }} 107 | __KeyToKey__ KeyCode::QUOTE, {{ VIM_EMU_BEFORE }}, KeyCode::QUOTE, {{ VIM_EMU_AFTER }} 108 | __KeyToKey__ KeyCode::SEMICOLON, {{ VIM_EMU_BEFORE }}, KeyCode::SEMICOLON, {{ VIM_EMU_AFTER }} 109 | __KeyToKey__ KeyCode::SLASH, {{ VIM_EMU_BEFORE }}, KeyCode::SLASH, {{ VIM_EMU_AFTER }} 110 | 111 | -------------------------------------------------------------------------------- /vim_emu/vim_emu_move.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | VIM_EMU_REPEAT_INPUT 11 | KeyCode::H, ModifierFlag::NONE 12 | 13 | 14 | VIM_EMU_REPEAT_OUTPUT 15 | 16 | KeyCode::CURSOR_LEFT, {{VIM_EMU_USE_SHIFT}}ModifierFlag::NONE 17 | 18 | 19 | 20 | 21 | 22 | VIM_EMU_REPEAT_INPUT 23 | KeyCode::L, ModifierFlag::NONE 24 | 25 | 26 | VIM_EMU_REPEAT_OUTPUT 27 | 28 | KeyCode::CURSOR_RIGHT, {{VIM_EMU_USE_SHIFT}}ModifierFlag::NONE 29 | 30 | 31 | 32 | 33 | 34 | 35 | __KeyToKey__ KeyCode::KEY_0, ModifierFlag::NONE, 36 | {{VIM_EMU_BEFORE_MOVE}}, 37 | KeyCode::CURSOR_LEFT, {{VIM_EMU_USE_SHIFT}}VK_COMMAND, 38 | {{VIM_EMU_AFTER_MOVE}} 39 | 40 | 41 | __KeyToKey__ KeyCode::KEY_4, 42 | VK_SHIFT|ModifierFlag::NONE, 43 | {{VIM_EMU_BEFORE_MOVE}}, 44 | KeyCode::CURSOR_RIGHT, {{VIM_EMU_USE_SHIFT}}VK_COMMAND, 45 | {{VIM_EMU_AFTER_MOVE}} 46 | 47 | 48 | 49 | 65 | 66 | 67 | 68 | __KeyToKey__ KeyCode::KEY_6, 69 | VK_SHIFT|ModifierFlag::NONE, 70 | {{VIM_EMU_BEFORE_MOVE}}, 71 | KeyCode::CURSOR_LEFT, {{VIM_EMU_USE_SHIFT}}VK_COMMAND, 72 | KeyCode::CURSOR_RIGHT, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 73 | KeyCode::CURSOR_LEFT, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 74 | {{VIM_EMU_AFTER_MOVE}} 75 | 76 | 77 | __KeyToKey__ KeyCode::JIS_HAT, ModifierFlag::NONE, 78 | {{VIM_EMU_BEFORE_MOVE}}, 79 | KeyCode::CURSOR_LEFT, {{VIM_EMU_USE_SHIFT}}VK_COMMAND, 80 | KeyCode::CURSOR_RIGHT, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 81 | KeyCode::CURSOR_LEFT, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 82 | {{VIM_EMU_AFTER_MOVE}} 83 | 84 | 85 | __KeyToKey__ KeyCode::GERMAN_CIRCUMFLEX, ModifierFlag::NONE, 86 | {{VIM_EMU_BEFORE_MOVE}}, 87 | KeyCode::CURSOR_LEFT, {{VIM_EMU_USE_SHIFT}}VK_COMMAND, 88 | KeyCode::CURSOR_RIGHT, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 89 | KeyCode::CURSOR_LEFT, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 90 | {{VIM_EMU_AFTER_MOVE}} 91 | 92 | 93 | 94 | 95 | __KeyToKey__ KeyCode::BRACKET_LEFT, VK_SHIFT|ModifierFlag::NONE, 96 | {{VIM_EMU_BEFORE_MOVE}}, 97 | KeyCode::A, {{VIM_EMU_USE_SHIFT}}VK_CONTROL, 98 | {{VIM_EMU_AFTER_MOVE}} 99 | 100 | 101 | __KeyToKey__ KeyCode::BRACKET_RIGHT, VK_SHIFT|ModifierFlag::NONE, 102 | {{VIM_EMU_BEFORE_MOVE}}, 103 | KeyCode::E, {{VIM_EMU_USE_SHIFT}}VK_CONTROL, 104 | {{VIM_EMU_AFTER_MOVE}} 105 | 106 | 107 | 108 | 109 | notsave.vim_emu_G{{VIM_EMU_ALTCONFIG}} 110 | 111 | 112 | VIM_EMU_REPEAT_INPUT 113 | 114 | KeyCode::E, ModifierFlag::NONE 115 | 116 | 117 | 118 | VIM_EMU_REPEAT_OUTPUT 119 | 120 | KeyCode::CURSOR_LEFT, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 121 | KeyCode::CURSOR_LEFT, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 122 | KeyCode::CURSOR_RIGHT, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 123 | 124 | 125 | 126 | VIM_EMU_AFTER_MOVE 127 | 128 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_G{{VIM_EMU_ALTCONFIG}}, 129 | {{VIM_EMU_AFTER_MOVE}} 130 | 131 | 132 | 133 | 158 | 159 | 160 | 161 | 162 | 163 | VIM_EMU_REPEAT_INPUT 164 | KeyCode::W, ModifierFlag::NONE 165 | 166 | 167 | VIM_EMU_REPEAT_OUTPUT 168 | 169 | KeyCode::CURSOR_RIGHT, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 170 | KeyCode::CURSOR_RIGHT, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 171 | KeyCode::CURSOR_LEFT, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 172 | 173 | 174 | 175 | 193 | 194 | 195 | VIM_EMU_REPEAT_INPUT 196 | KeyCode::E, ModifierFlag::NONE 197 | 198 | 199 | VIM_EMU_REPEAT_OUTPUT 200 | 201 | KeyCode::CURSOR_RIGHT, {{VIM_EMU_USE_SHIFT}}VK_OPTION 202 | 203 | 204 | 205 | 221 | 222 | 223 | VIM_EMU_REPEAT_INPUT 224 | KeyCode::B, ModifierFlag::NONE 225 | 226 | 227 | VIM_EMU_REPEAT_OUTPUT 228 | 229 | KeyCode::CURSOR_LEFT, {{VIM_EMU_USE_SHIFT}}VK_OPTION 230 | 231 | 232 | 233 | 249 | 250 | 251 | 270 | 271 | 272 | 288 | 289 | 290 | 291 | -------------------------------------------------------------------------------- /vim_emu/vim_emu_move_down.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | VIM_EMU_REPEAT_INPUT 7 | KeyCode::J, ModifierFlag::NONE, 8 | 9 | 10 | VIM_EMU_REPEAT_OUTPUT 11 | 12 | KeyCode::CURSOR_DOWN, {{VIM_EMU_USE_SHIFT}}ModifierFlag::NONE, 13 | 14 | 15 | 16 | 17 | 18 | 19 | VIM_EMU_REPEAT_INPUT 20 | KeyCode::EQUAL, VK_SHIFT|ModifierFlag::NONE, 21 | 22 | 23 | VIM_EMU_REPEAT_OUTPUT 24 | 25 | KeyCode::CURSOR_DOWN, {{VIM_EMU_USE_SHIFT}}ModifierFlag::NONE, 26 | KeyCode::CURSOR_LEFT, {{VIM_EMU_USE_SHIFT}}VK_COMMAND, 27 | KeyCode::CURSOR_RIGHT, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 28 | KeyCode::CURSOR_LEFT, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 29 | 30 | 31 | 32 | 33 | 34 | 35 | VIM_EMU_REPEAT_INPUT 36 | 37 | KeyCode::D, VK_CONTROL|ModifierFlag::NONE, 38 | 39 | 40 | 41 | VIM_EMU_REPEAT_OUTPUT 42 | 43 | KeyCode::CURSOR_DOWN, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 44 | KeyCode::CURSOR_DOWN, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 45 | KeyCode::CURSOR_DOWN, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 46 | KeyCode::CURSOR_DOWN, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 47 | KeyCode::CURSOR_DOWN, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 48 | KeyCode::CURSOR_DOWN, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 49 | KeyCode::CURSOR_DOWN, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 50 | KeyCode::CURSOR_DOWN, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 51 | KeyCode::CURSOR_DOWN, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 52 | KeyCode::CURSOR_DOWN, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 53 | 54 | 55 | 56 | 57 | 58 | 59 | VIM_EMU_REPEAT_INPUT 60 | 61 | KeyCode::F, VK_CONTROL|ModifierFlag::NONE, 62 | 63 | 64 | 65 | VIM_EMU_REPEAT_OUTPUT 66 | 67 | KeyCode::PAGEDOWN, {{VIM_EMU_USE_SHIFT}}|VK_OPTION, 68 | 69 | 70 | 71 | 72 | 73 | __KeyToKey__ KeyCode::G, 74 | VK_SHIFT|ModifierFlag::NONE, 75 | {{VIM_EMU_BEFORE_MOVE}}, 76 | KeyCode::CURSOR_DOWN, {{VIM_EMU_USE_SHIFT}}VK_COMMAND, 77 | {{VIM_EMU_AFTER_MOVE}} 78 | 79 | 80 | -------------------------------------------------------------------------------- /vim_emu/vim_emu_move_up.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | VIM_EMU_REPEAT_INPUT 7 | KeyCode::K, ModifierFlag::NONE, 8 | 9 | 10 | VIM_EMU_REPEAT_OUTPUT 11 | 12 | KeyCode::CURSOR_UP, {{VIM_EMU_USE_SHIFT}}ModifierFlag::NONE, 13 | 14 | 15 | 16 | 17 | 18 | 19 | VIM_EMU_REPEAT_INPUT 20 | KeyCode::MINUS, ModifierFlag::NONE, 21 | 22 | 23 | VIM_EMU_REPEAT_OUTPUT 24 | 25 | KeyCode::CURSOR_UP, {{VIM_EMU_USE_SHIFT}}ModifierFlag::NONE, 26 | KeyCode::CURSOR_LEFT, {{VIM_EMU_USE_SHIFT}}VK_COMMAND, 27 | KeyCode::CURSOR_RIGHT, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 28 | KeyCode::CURSOR_LEFT, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 29 | 30 | 31 | 32 | 33 | 34 | 35 | VIM_EMU_REPEAT_INPUT 36 | 37 | KeyCode::U, VK_CONTROL|ModifierFlag::NONE, 38 | 39 | 40 | 41 | VIM_EMU_REPEAT_OUTPUT 42 | 43 | KeyCode::CURSOR_UP, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 44 | KeyCode::CURSOR_UP, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 45 | KeyCode::CURSOR_UP, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 46 | KeyCode::CURSOR_UP, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 47 | KeyCode::CURSOR_UP, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 48 | KeyCode::CURSOR_UP, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 49 | KeyCode::CURSOR_UP, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 50 | KeyCode::CURSOR_UP, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 51 | KeyCode::CURSOR_UP, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 52 | KeyCode::CURSOR_UP, {{VIM_EMU_USE_SHIFT}}VK_OPTION, 53 | 54 | 55 | 56 | 57 | 58 | 59 | VIM_EMU_REPEAT_INPUT 60 | 61 | KeyCode::B, VK_CONTROL|ModifierFlag::NONE, 62 | 63 | 64 | 65 | VIM_EMU_REPEAT_OUTPUT 66 | 67 | KeyCode::PAGEUP, {{VIM_EMU_USE_SHIFT}}|VK_OPTION, 68 | 69 | 70 | 71 | 72 | notsave.vim_emu_G{{VIM_EMU_ALTCONFIG}} 73 | 74 | __KeyToKey__ KeyCode::G, ModifierFlag::NONE, 75 | {{VIM_EMU_BEFORE_MOVE}}, 76 | KeyCode::CURSOR_UP, {{VIM_EMU_USE_SHIFT}}VK_COMMAND, 77 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_G{{VIM_EMU_ALTCONFIG}}, 78 | {{VIM_EMU_AFTER_MOVE}}, 79 | 80 | 81 | 82 | -------------------------------------------------------------------------------- /vim_emu/vim_emu_repeat.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | __KeyToKey__ {{VIM_EMU_REPEAT_INPUT}}, 5 | {{VIM_EMU_BEFORE_MOVE}}, 6 | {{VIM_EMU_REPEAT_OUTPUT}}, 7 | {{VIM_EMU_AFTER_MOVE}} 8 | 9 | 10 | -------------------------------------------------------------------------------- /vim_emu/vim_emu_repeat_macro.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | __KeyToKey__ {{VIM_EMU_REPEAT_INPUT}}, 5 | KeyCode::KEY_8, VK_CONTROL| 6 | VK_SHIFT|VK_COMMAND, 7 | 8 | 9 | -------------------------------------------------------------------------------- /vim_emu/vim_emu_replace.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | __KeyToKey__ KeyCode::A, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 4 | __KeyToKey__ KeyCode::B, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 5 | __KeyToKey__ KeyCode::C, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 6 | __KeyToKey__ KeyCode::D, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 7 | __KeyToKey__ KeyCode::E, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 8 | __KeyToKey__ KeyCode::F, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 9 | __KeyToKey__ KeyCode::G, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 10 | __KeyToKey__ KeyCode::H, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 11 | __KeyToKey__ KeyCode::I, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 12 | __KeyToKey__ KeyCode::J, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 13 | __KeyToKey__ KeyCode::K, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 14 | __KeyToKey__ KeyCode::L, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 15 | __KeyToKey__ KeyCode::M, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 16 | __KeyToKey__ KeyCode::N, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 17 | __KeyToKey__ KeyCode::O, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 18 | __KeyToKey__ KeyCode::P, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 19 | __KeyToKey__ KeyCode::Q, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 20 | __KeyToKey__ KeyCode::R, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 21 | __KeyToKey__ KeyCode::S, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 22 | __KeyToKey__ KeyCode::T, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 23 | __KeyToKey__ KeyCode::U, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 24 | __KeyToKey__ KeyCode::V, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 25 | __KeyToKey__ KeyCode::W, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 26 | __KeyToKey__ KeyCode::X, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 27 | __KeyToKey__ KeyCode::Y, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 28 | __KeyToKey__ KeyCode::Z, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 29 | 60 | 79 | __KeyToKey__ KeyCode::KEY_0, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 80 | __KeyToKey__ KeyCode::KEY_1, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 81 | __KeyToKey__ KeyCode::KEY_2, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 82 | __KeyToKey__ KeyCode::KEY_3, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 83 | __KeyToKey__ KeyCode::KEY_4, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 84 | __KeyToKey__ KeyCode::KEY_5, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 85 | __KeyToKey__ KeyCode::KEY_6, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 86 | __KeyToKey__ KeyCode::KEY_7, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 87 | __KeyToKey__ KeyCode::KEY_8, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 88 | __KeyToKey__ KeyCode::KEY_9, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 89 | 98 | __KeyToKey__ KeyCode::SPACE, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 99 | 103 | __KeyToKey__ KeyCode::BACKQUOTE, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 104 | __KeyToKey__ KeyCode::BACKSLASH, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 105 | __KeyToKey__ KeyCode::BRACKET_LEFT, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 106 | __KeyToKey__ KeyCode::BRACKET_RIGHT, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 107 | __KeyToKey__ KeyCode::COMMA, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 108 | __KeyToKey__ KeyCode::DOT, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 109 | __KeyToKey__ KeyCode::EQUAL, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 110 | __KeyToKey__ KeyCode::MINUS, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 111 | __KeyToKey__ KeyCode::QUOTE, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 112 | __KeyToKey__ KeyCode::SEMICOLON, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 113 | __KeyToKey__ KeyCode::SLASH, ModifierFlag::NONE, {{VIM_EMU_REPLACE}} 114 | 115 | -------------------------------------------------------------------------------- /vim_emu/vim_emu_replacementdef.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | VIM_EMU_ALTCONFIG 5 | 6 | 7 | 8 | VIM_EMU_ONLY_APPS 9 | 10 | 11 | 12 | VIM_EMU_IGNORE_APPS 13 | TERMINAL, VI, CATHODE, PASSWORD, FIREFOX, EMACS, LOGMEIN 14 | 15 | 16 | VIM_EMU_FORCE_OFF_ALL_BUT_LINE 17 | 18 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu{{VIM_EMU_ALTCONFIG}}, 19 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_using{{VIM_EMU_ALTCONFIG}}, 20 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 21 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_visual{{VIM_EMU_ALTCONFIG}}, 22 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_visual_line{{VIM_EMU_ALTCONFIG}}, 23 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_visual_line_first{{VIM_EMU_ALTCONFIG}}, 24 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_command{{VIM_EMU_ALTCONFIG}}, 25 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_G{{VIM_EMU_ALTCONFIG}}, 26 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_Y{{VIM_EMU_ALTCONFIG}}, 27 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_D{{VIM_EMU_ALTCONFIG}}, 28 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_C{{VIM_EMU_ALTCONFIG}}, 29 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_R{{VIM_EMU_ALTCONFIG}}, 30 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_S_R{{VIM_EMU_ALTCONFIG}}, 31 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_complement{{VIM_EMU_ALTCONFIG}}, 32 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_search{{VIM_EMU_ALTCONFIG}}, 33 | KeyCode::VK_LOCK_ALL_FORCE_OFF, 34 | KeyCode::VK_MOUSEKEY_LOCK_BUTTON_ALL_FORCE_OFF, 35 | 36 | 37 | 38 | VIM_EMU_FORCE_ON_NORMAL_MODE 39 | 40 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu{{VIM_EMU_ALTCONFIG}}, 41 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_using{{VIM_EMU_ALTCONFIG}}, 42 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 43 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_visual{{VIM_EMU_ALTCONFIG}}, 44 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_visual_line{{VIM_EMU_ALTCONFIG}}, 45 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_visual_line_first{{VIM_EMU_ALTCONFIG}}, 46 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_command{{VIM_EMU_ALTCONFIG}}, 47 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_G{{VIM_EMU_ALTCONFIG}}, 48 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_Y{{VIM_EMU_ALTCONFIG}}, 49 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_D{{VIM_EMU_ALTCONFIG}}, 50 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_C{{VIM_EMU_ALTCONFIG}}, 51 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_R{{VIM_EMU_ALTCONFIG}}, 52 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_S_R{{VIM_EMU_ALTCONFIG}}, 53 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_complement{{VIM_EMU_ALTCONFIG}}, 54 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_search{{VIM_EMU_ALTCONFIG}}, 55 | KeyCode::VK_LOCK_ALL_FORCE_OFF, 56 | KeyCode::VK_MOUSEKEY_LOCK_BUTTON_ALL_FORCE_OFF, 57 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu{{VIM_EMU_ALTCONFIG}}, 58 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_using{{VIM_EMU_ALTCONFIG}}, 59 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 60 | 61 | 62 | 63 | VIM_EMU_NOT_NORMAL_MODE 64 | 65 | notsave.vim_emu_visual{{VIM_EMU_ALTCONFIG}}, 66 | notsave.vim_emu_visual_line{{VIM_EMU_ALTCONFIG}}, 67 | notsave.vim_emu_visual_line_first{{VIM_EMU_ALTCONFIG}}, 68 | notsave.vim_emu_command{{VIM_EMU_ALTCONFIG}}, 69 | notsave.vim_emu_G{{VIM_EMU_ALTCONFIG}}, 70 | notsave.vim_emu_Y{{VIM_EMU_ALTCONFIG}}, 71 | notsave.vim_emu_D{{VIM_EMU_ALTCONFIG}}, 72 | notsave.vim_emu_C{{VIM_EMU_ALTCONFIG}}, 73 | notsave.vim_emu_R{{VIM_EMU_ALTCONFIG}}, 74 | notsave.vim_emu_S_R{{VIM_EMU_ALTCONFIG}}, 75 | notsave.vim_emu_complement{{VIM_EMU_ALTCONFIG}}, 76 | notsave.vim_emu_search{{VIM_EMU_ALTCONFIG}}, 77 | 78 | 79 | 80 | VIM_EMU_EMU_ON 81 | 82 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu{{VIM_EMU_ALTCONFIG}}, 83 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_using{{VIM_EMU_ALTCONFIG}}, 84 | 85 | 86 | 87 | VIM_EMU_NORMAL_ON 88 | 89 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu{{VIM_EMU_ALTCONFIG}}, 90 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_using{{VIM_EMU_ALTCONFIG}}, 91 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 92 | 93 | 94 | 95 | VIM_EMU_EMU_OFF 96 | 97 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu{{VIM_EMU_ALTCONFIG}}, 98 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_using{{VIM_EMU_ALTCONFIG}}, 99 | 100 | 101 | 102 | VIM_EMU_NORMAL_OFF 103 | 104 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu{{VIM_EMU_ALTCONFIG}}, 105 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_using{{VIM_EMU_ALTCONFIG}}, 106 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 107 | 108 | 109 | 110 | VIM_EMU_MODE_TOGGLE 111 | 112 | KeyCode::VK_CONFIG_TOGGLE_notsave_vim_emu{{VIM_EMU_ALTCONFIG}}, 113 | KeyCode::VK_CONFIG_TOGGLE_notsave_vim_emu_using{{VIM_EMU_ALTCONFIG}}, 114 | KeyCode::VK_CONFIG_TOGGLE_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 115 | 116 | 117 | 118 | VIM_EMU_ADDITIONAL_MODIFIER 119 | 120 | 121 | 122 | VIM_EMU_AFTER_MOVE 123 | 124 | 125 | 126 | VIM_EMU_BEFORE_COPY_CUT 127 | 128 | 129 | 130 | VIM_EMU_BEFORE_MOVE 131 | 132 | 133 | 134 | VIM_EMU_LINECOPY 135 | 136 | 137 | 138 | VIM_EMU_USE_SHIFT 139 | 140 | 141 | 142 | VIM_EMU_CUSTOMIZE_KEY 143 | KeyCode::ESCAPE 144 | 145 | 146 | VIM_EMU_CUSTOMIZE_SIMULTANEOUS_KEY 147 | KeyCode::O, KeyCode::P 148 | 149 | 150 | -------------------------------------------------------------------------------- /vim_emu/vim_emu_ydc_mode.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | notsave.vim_emu_normal{{VIM_EMU_ALTCONFIG}} 8 | 9 | __KeyToKey__ KeyCode::{{VIM_EMU_YDC_CHAR}}, ModifierFlag::NONE, 10 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_normal{{VIM_EMU_ALTCONFIG}}, 11 | KeyCode::VK_CONFIG_FORCE_ON_notsave_vim_emu_{{VIM_EMU_YDC_CHAR}}{{VIM_EMU_ALTCONFIG}}, 12 | KeyCode::VK_CONFIG_FORCE_OFF_notsave_vim_emu_line_copy{{VIM_EMU_ALTCONFIG}}, 13 | 14 | 15 | 16 | 17 | notsave.vim_emu_{{VIM_EMU_YDC_CHAR}}{{VIM_EMU_ALTCONFIG}} 18 | 19 | 20 | VIM_EMU_USE_SHIFT 21 | 22 | VK_SHIFT| 23 | 24 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /vim_emu_multi.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | VIM Emulation 5 | 6 | All Apps 7 | 8 | 9 | VIM_EMU_ALTCONFIG 10 | all 11 | 12 | 13 | 14 | 15 | All but Terminal (iTerm), Vi, Firefox, Emacs (recommended) 16 | 17 | 18 | VIM_EMU_ALTCONFIG 19 | recommend 20 | 21 | 22 | VIM_EMU_ONLY_APPS 23 | 24 | 25 | 26 | VIM_EMU_IGNORE_APPS 27 | TERMINAL, VI, FIREFOX, EMACS 28 | 29 | 30 | 31 | 32 | TextEdit 33 | 34 | 35 | VIM_EMU_ALTCONFIG 36 | editor 37 | 38 | 39 | VIM_EMU_ONLY_APPS 40 | EDITOR 41 | 42 | 43 | 44 | 45 | Xcode 46 | 47 | 48 | VIM_EMU_ALTCONFIG 49 | xcode 50 | 51 | 52 | VIM_EMU_ONLY_APPS 53 | XCODE 54 | 55 | 56 | 57 | 58 | Stickies 59 | 60 | 61 | VIM_EMU_ALTCONFIG 62 | stickies 63 | 64 | 65 | VIM_EMU_ONLY_APPS 66 | STICKIES 67 | 68 | 69 | 70 | 71 | mi 72 | 73 | 74 | VIM_EMU_ALTCONFIG 75 | mi 76 | 77 | 78 | VIM_EMU_ONLY_APPS 79 | MI 80 | 81 | 82 | 83 | 84 | Mail 85 | 86 | 87 | VIM_EMU_ALTCONFIG 88 | mail 89 | 90 | 91 | VIM_EMU_ONLY_APPS 92 | MAIL 93 | 94 | 95 | 96 | 97 | Thunderbird 98 | 99 | 100 | VIM_EMU_ALTCONFIG 101 | thunderbird 102 | 103 | 104 | VIM_EMU_ONLY_APPS 105 | THUNDERBIRD 106 | 107 | 108 | 109 | 110 | Outlook 111 | 112 | 113 | VIM_EMU_ALTCONFIG 114 | outlook 115 | 116 | 117 | VIM_EMU_ONLY_APPS 118 | OUTLOOK 119 | 120 | 121 | 122 | 123 | Firefox 124 | 125 | 126 | VIM_EMU_ALTCONFIG 127 | firefox 128 | 129 | 130 | VIM_EMU_ONLY_APPS 131 | FIREFOX 132 | 133 | 134 | 135 | 136 | Chrome 137 | 138 | 139 | VIM_EMU_ALTCONFIG 140 | chrome 141 | 142 | 143 | VIM_EMU_ONLY_APPS 144 | GOOGLE_CHROME 145 | 146 | 147 | 148 | 149 | OPERA 150 | 151 | 152 | VIM_EMU_ALTCONFIG 153 | opera 154 | 155 | 156 | VIM_EMU_ONLY_APPS 157 | OPERA 158 | 159 | 160 | 161 | 162 | Excel 163 | 164 | 165 | VIM_EMU_ALTCONFIG 166 | excel 167 | 168 | 169 | VIM_EMU_ONLY_APPS 170 | EXCEL 171 | 172 | 173 | 174 | 175 | PowerPoint 176 | 177 | 178 | VIM_EMU_ALTCONFIG 179 | powerpoint 180 | 181 | 182 | VIM_EMU_ONLY_APPS 183 | POWERPOINT 184 | 185 | 186 | 187 | 188 | Word 189 | 190 | 191 | VIM_EMU_ALTCONFIG 192 | word 193 | 194 | 195 | VIM_EMU_ONLY_APPS 196 | WORD 197 | 198 | 199 | 200 | 201 | 202 | -------------------------------------------------------------------------------- /vim_emu_test.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | LOGMEIN 5 | com.logmein.logmeinpluginhost 6 | 7 | 8 | 9 | 10 | 11 | VIM_EMU_ALTCONFIG 12 | TEST 13 | 14 | 15 | VIM_EMU_IGNORE_APPS 16 | TERMINAL, VI, CATHODE, PASSWORD, FIREFOX, EMACS, LOGMEIN 17 | 18 | 19 | VIM_EMU_ONLY_APPS 20 | 21 | 22 | 23 | 24 | --------------------------------------------------------------------------------