mamori017.log

歴史的クソブログ

Microsoft Edgeで取得できるkeydown・keyupイベントのキーコード一覧

Microsoft Edge(38.14393.0.0)上でjQueryのkeydown、keyupイベントからキーコードを取得してみたので調べた。

キー

キーコード キー メモ
229 同時押ししないとキーコードが取得できないキーを押した場合に出力。
49 1
50 2
51 3
52 4
53 5
54 6
55 7
56 8
57 9
48 0
65 A
66 B
67 C
68 D
69 E
70 F
71 G
72 H
73 I
74 J
75 K
76 L
77 M
78 N
79 O
80 P
81 Q
82 R
83 S
84 T
85 U
86 V
87 W
88 X
89 Y
90 Z
189 -
222 ^
220 \
192 @
219 [
187 ;
186 :
221 ]
188 ,
190 .
191 /
226 _
27 Esc
243、244 半角/全角 Shift or Ctrlと同時押しで出力。単独で229。
8 BackSpace
13 Enter
9 Tab
240 CapsLock Ctrl or Altと同時押しで出力。Shiftと同時押しで20。単独で229。
16 Shift
17 Ctrl
18 Alt
91 Windows
32 Space
28 変換 Shift or Alt or Ctrlと同時押しで出力。単独で229。
242 カタカナ/ひらがな Altと同時押しで245、246。単独で229。
93 Menu
29 無変換
45 Insert
46 Delete
36 Home
35 End
33 PageUp
34 PageDown
44 PrintScreen Keyupイベントで取得。先に別のキーが押されていないと出力されないっぽい。
145 ScrollLock
19 Pause

ファンクションキー

キーコード キー メモ
112 F1
113 F2
114 F3
115 F4
116 F5
117 F6
118 F7
119 F8
120 F9
121 F10
122 F11
123 F12

カーソル

キーコード キー メモ
37
38
39
40

テンキー

キーコード キー メモ
96 0 NumLockを押してないとInsert。
97 1 NumLockを押してないとEnd。
98 2 NumLockを押してないと↓。
99 3 NumLockを押してないとPageDown。
100 4 NumLockを押してないと←。
101 5 NumLockを押してないとClear。
102 6 NumLockを押してないと→。
103 7 NumLockを押してないとHome。
104 8 NumLockを押してないと↑。
105 9 NumLockを押してないとPageUp。
144 NumLock
106 *
107 +
109 -
110 .
111 /

Opencoverのカバレッジチェック対象を名前空間で除外する

OpenCoverでコードカバレッジを計測する対象がVB.NETのプロジェクトのとき、 テストプロジェクトとプロジェクト内のMy Projectディレクトリ配下のコードについては カバレッジの計測は不要と考えたので-filter:パラメータを使用して除外することにした。

github.com

例えば、ソリューション内にプロジェクトBuildTargetとテストプロジェクトUnitTestが存在している場合で、 BuildTargetディレクトリをカバレッジ計測の対象とし、 UnitTestディレクトリとMy Projectディレクトリ(名前空間Myのもの)をカバレッジ計測から除外するとき、 Opencoverのフィルタパラメータは-filter:"+[BuildTarget*]* -[UnitTest*]* -[*]*.My.*""を指定する。

フィルタの記述ルールについては、Usage · OpenCover/opencover Wiki · GitHubに詳細が書かれているが、 大きく以下の4点を覚えておけばある程度対応できると思う。

  • フィルタの記述がない場合は+[*]*が適用され、すべてを対象とする
  • +[○○*]*は、○○から始まる全てのアセンブリを対象とする
  • -[△△*]*は、△△から始まる全てのアセンブリを除外する
  • -[*]××は、全てのアセンブリ内で××名前空間のものを除外する

フィルタについては、除外したいキーワードだけ指定してもテスト結果は出力されないようなので注意しなければならないのと、 本来であれば、ディレクトリ単位で除外したい場合はWikiにある通り-excludedirs:パラメータを使用すべきだと思う。*1

*1:-excludedirsがうまくいかなかったので諦めた。