質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Vim

VimとはUnix / Linux 系のOSに標準搭載されているターミナル上で動くテキストエディタです。

Q&A

解決済

1回答

674閲覧

gvimのキーマップを変更したい

nisekonsan

総合スコア7

Vim

VimとはUnix / Linux 系のOSに標準搭載されているターミナル上で動くテキストエディタです。

0グッド

0クリップ

投稿2020/08/14 09:11

gvimのキーマップを変更したいです。
自作のキーマップを作りたいと考えており、
C:\Program Files\vim\vim82\keymap フォルダ内の .vim ファイルを編集しています。

困りごとというのは、Shift+0(テンキーではない方)にキー割り当てができないことです。
(ちなみにNeovimでは割り当てできたのですが、gvimでも実現したいので。。。)

実際に書いたのは以下のコード、Shift+0以外はすべて割り当てできました。
アドバイスお願いします。

dvorak.vim

1let b:keymap_name = "en-dv" 2 3loadkeymap 4q ' 5w , 6e . 7r p 8t y 9y f 10u g 11i c 12o r 13p l 14@ / 15[ = 16a a 17s o 18d e 19f u 20g i 21h d 22j h 23k t 24l n 25; s 26: - 27] \ 28z ; 29x q 30c j 31v k 32b x 33n b 34m m 35, w 36. v 37/ z 38\ ` 39Q " 40W < 41E > 42R P 43T Y 44Y F 45U G 46I C 47O R 48P L 49A A 50S O 51D E 52F U 53G I 54H D 55J H 56K T 57L N 58+ S 59* _ 60Z : 61X Q 62C J 63V K 64B X 65N B 66M M 67< W 68> V 69? Z 70_ ~ 71\" @ 72& ^ 73' & 74( * 75) ( 76{ + 77} | 78- [ 79= { 80` ? 81^ ] 82~ } 83<S-0> ) 84

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

Vimの実装の制限でマッピングできないと思われます。

:help :loadkeymap に詳細がありますが、keymap ファイルの設定は :lnoremap コマンドによるマッピングと同等です。
Vim はキーコードの発生しない組み合わせのキー入力に対してマッピングができません。
また Shift-<number> にマッピングしたい場合、環境のキーボード入力で対応する記号を {lhs} に設定する必要がありますが、(日本語キーボードの場合) Shift-0 には対応する記号がないため設定することはできません。

その他の制限やできること。

  • Ctrl-<number> も同様に設定できません。
  • Ctrl-<letter>Ctrl-Shift-<letter> が内部的に区別されないため、別々のマッピングを設定できません。
  • GUI (gVim) では Alt-<number> は設定できます。

neovim はキー入力の実装が変更されているため上記の制限がありません。

投稿2020/08/14 10:40

Milly

総合スコア167

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nisekonsan

2020/08/14 11:30

ご回答ありがとうございます。悲しいですが、gvimでかつ日本語キーボードではShift+0にキー割り当てする手段は無い、、、ということですね。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問