Linux

キーボード考

はじめに

引用(Happy Hacking Keyboard ホームページ)

  •  アメリカ西部のカウボーイたちは、馬が死ぬと馬はそこに残していくが、どんなに砂漠を歩こうとも、鞍は自分で担いで往く。
    馬は消耗品であり、鞍は自分の体に馴染んだインタフェースだからだ。
    いまやパソコンは消耗品であり、キーボードは大切な、生涯使えるインタフェースであることを忘れてはいけない。
    [東京大学 和田英一 名誉教授の談話]

以下に紹介するキーボードで、個人的な別満足度順

RealForce? > リベルタッチ > Buffalo ゲーミングキーボード > Magestouch

  • 理由など
    • リベルタッチと RealFoce? の頂上対決ですが、個人的には RealForce? 静音タイプの方が
      打ちやすいです。理由としては、スコスコ感?打鍵感?が個人的に心地いいです。
      また、キートップのガタツキも RealForce? の方が少ない気がします。
      しかしながら、リベルタッチが打ちにくいか、といえばそうではなくて、
      こちらは値段相応(1万円以上)のとても打ちやすいキーボードだと思います。
      多分、RealForce? が2万円という値段の分、いろいろとコストをかけられるため、
      少しだけ品質が高いのかも?と感じました。
    • あと、自分は静音性重視ですが、これが静音性軽視、打鍵感重視だと評価は変わってきます。
      Magestouch が最下位なのはそのせいです。Mafestouch については、
      打鍵感は最高だと思います。カチャカチャと音はなりますが、打ってる、という感覚は
      一番感じます。

キーボードの選ぶ時に考慮すること

  1. 打鍵音の大きさ
    • メンブレン、パンタグラフ、静電容量無接点方式が優れています
  2. 打鍵感
    • メンブレン、メカニカル、静電容量無接点方式のどれでも該当する物が有ります
  3. 価格
    • 2,000円〜5,000円
      • メンブレン
    • 10,000円前後
      • メカニカル
    • 20,000円前後
      • 静電容量無接点方式
  4. 英語配列、日本語配列
    • 英語配列は日本でリモートデスクトップを行う場合は無理です。
    • 英語配列は一般的にノートPCの配列と違うので戸惑います。
  5. テンキーの有無
    • これはお好みで。数字を多く打つ方はテンキー有り
    • 小スペースにこだわる方はテンキー無し。
  6. 変態配列について
    • Happy Hacking Keyboard のような変態配列は、
      Happy Hacking Keyboard を使用していない時、
      ノートPCからリモートデスクトップする場合に大変苦労します。
      それ以外なら意外にありなのでは?と思いました。

種類について

種類一覧

  • 参考(kakaku.com) のサイト
    種類価格打鍵感静音性備考
    メンブレン打鍵感がいまいちの場合が多い
    パンタグラフ薄型のためノートPCなどに多く採用される
    メカニカル音がうるさい
    静電容量無接点方式価格が高い(2万円位)。打鍵感は最高

メンブレン

  • 柔らかい樹脂の突起を押すイメージのキーボード。 樹脂の反発を利用してキーが戻ってくる。耐久性は無いが安価。
    音は静かな物が多いが、打鍵感もそれなりの物が多い印象。

メンブレンキーボードのお勧め

  1. BUFFALO 有線ゲーミングキーボード BSKBC16BK
  2. 富士通コンポーネント Libertouch ホワイト FKB8540-051/W
    • 色々調べると必ず検索に引っかかる有名キーボード。
      デザインに難あり(Libertouchのフォントがださい、右上の突起と凹みの意味がわからない、全体的に大きいなど)
      荷重が45gでとても軽いのが印象的で、付属物に、ソフトラバーとハードラバーが(十数個ずつ)、
      キートップ引き抜き工具、予備用バネが付属してくることもうれしいです。
      音も比較的静かで、会社での使用も問題ないでしょう。
      テンキーが付いてるのは賛否両論ですが、個人的にはあってもいいし、無くてもいいし(笑)
      打鍵感もとてもよく、家用としてメインで使用しています。
      最初に買う高級キーボードとしては、当たり障りがなくオススメできます(^^) ※以下、amazon リンク

パンタグラフ

  • 主にノートPCで使用される薄型のキーボード。
    ストロークが短いのが特徴だが、打鍵感は好みの別れるところ。
    静音性もさほど良くない。
  • パンタグラフキーボードのお勧め
    • 残念ながらパンタグラフ型のキーボードでおすすめできるものはありません。
      打鍵感が致命的に貧弱なので自分は使用していないです。すみません。。。

メカニカル

  • 1つ1つのキーがスイッチ式。
    打鍵音がうるさいのが特徴。ただし耐久性は良く、打鍵感も良い。
    少し高価(1万円前後)なキーボードが多い。
    有名なメーカーとしては Filco などが上げられる。
     また軸と呼ばれるキーを認識する1つ1つのキースイッチは
    ほぼドイツのCherry社製となっておりFilcoで扱っている軸は以下4つ。
    1. 茶軸
      押下圧:45gと比較的軽めで、クリック感あり。
      筆者は茶軸のキーボードを1台所有している。
      「クリック感」が何を指しているのか不明だが、
      クリック感有り無しに関わらず音はうるさい。
    2. 黒軸 押下圧:60gと一番重い。クリック感なし。
    3. 青軸 押下圧:50g。クリック感:あり
    4. 赤軸 押下圧:45gと軽い。クリック感:無し
      茶軸のクリック感無し版。

メカニカルキーボードのお勧め

  • Majestouch 2 FKBN108MRL/JB2
    • 自分が今買うとしたら Filco の赤軸ですかね。
      自分はキーの押下圧が軽いほうが好みです。
      ちなみにこの文章は Filco の茶軸で書いてます(^^)
      ※以下 amazon リンク

静電容量無接点方式

  • キーを押した時の接点が無く、キーを押した時の静電容量の差で
    キーが押されたことを感知する。とても高価(2万円くらい)。
    静音性に重きを置いた製品も多く、耐久性もとても高い。
    また打鍵感は最高。これ以上打ちやすいキーボードを自分は知らない。

静電容量無接点方式キーボードのお勧め

キースワップソフト

共通

  • Windows と Linux に共通する内容として、IME(日本語変換)のオン・オフは
    「Ctrl」+「Spaceキー」が使いやすいかなぁ、と感じました。
  • Windows ならIMEのキー設定で、Linux でも日本語入力設定のキー設定で変更できます。

Windows

PC再起動型

レジストリを変更するなどPCの再起動が必要なツール

  1. ctrl2cap
    Microsoft 製のCapsLock?キー(英数キー)を Ctrlキーに切り替えるツール。
    「インストール」という形が必要で再起動も必要。
    短所として、CapsLock?キーのみがCtrlへ切り替わるためCapsLock?キーが消失する。
  2. KeySwap?
    Vector_ダウンロードリンク
    レジストリを直変更の方式ではないが、別箇所のレジストリ変更が必要。
    短所として、リモートデスクトップの接続先で反映されない。
  3. 直接レジストリを編集
    参考サイト
    リモートデスクトップ先でもキースワップが可能。
    短所はキーの入れ替え時、PCの再起動が必要なことくらい。
    • やり方
      1. 「Windowsキー + r」を押し「ファイル名を指定して実行」で「regedit」を入力し「エンターキー」を押す。
        (あるいは「Windowsキー」を一度押し、そのまま「regedit」と入力し「エンター」キーを押す)
      2. 左のツリーから以下を選択。
        HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Keyboard Layout
      3. 「Scancode Map」というバイナリ値を追加
      4. このレジストリデータに、 変更したいキーボードの変更前・後のスキャンコードを指定する

        フォーマット

        DWORD ヘッダ:バージョン情報 (All 0)
        DWORD ヘッダ:フラグ (All 0)
        DWORD マッピングとターミネータのデータ長 = 変えたいキーボード・キーの数+1
        DWORD マッピング = 元のスキャンコード(1 byte) と 新しく割り当てたいスキャンコード(1 byte)
        ・・・  (マッピングの繰り返し)
        DWORD ターミネータ  (All 0)

        変更したいキーボード配列の数が4
        データ長は 4+1=5
        マッピング例
         マッピング1 CapsLock (0x3A)  ⇒ 左Ctrl (0x1D)
         マッピング2 左Ctrl (0x1D)  ⇒ CapsLock (0x3A)
         マッピング3 全角/半角 (0x29) ⇒ 無変換 (0x7B)
         マッピング4 無変換 (0x7B)  ⇒ 全角/半角 (0x29))
        レジストリにセットする値
         ヘッダ	0000 0000
         ヘッダ	0000 0000
         データ長	0500 0000
         マッピング1   1D00 3A00
         マッピング2   3A00 1D00 
         マッピング3   7B00 2900
         マッピング4   2900 7B00 
         ターミネータ   0000 0000
        Scancode Map
        0000 00 00 00 00 00 00 00 00
        0008 05 00 00 00 1D 00 3A 00
        0010 3A 00 1D 00 7B 00 29 00
        0018 29 00 7B 00 00 00 00 00

ソフト型(Auto Hot Key)

  1. Auto Hot Key
    日本語wikiリンク
    非常に高機能なソフト型キースワップソフト。
    長所は、PCを再起動すること無く、キーのスワップが可能なこと。
    (キーを状況によって切り替えることが容易)
    短所は、「CapsLock?」「かな」などのロックキー動作が不安定なこと、
    リモートデスクトップでキー変更が反映されないことなどがある。
    • {Blind}の説明
      • {Blind}がなんなのか少しわかりにくいので説明。
      • 以下のキーバインドを例として説明する。
        ;無変換 + j -> 左矢印キー
        sc07b & j::
        	send,{Blind}{Left}
        	return
      • {Blind}が無いと、例えばシフトキーを押しながらの挙動はこうなる。
        スクリプト例)
        ;無変換 + j -> 左矢印キー
        sc07b & j::
        	send,{Left}
        	return
        挙動
        キー入力:「Shiftキー」 + 「無変換」 + 「j」
        変換されたキー出力:Shiftキー(Down) -> 無変換(Down) -> j(Down) -> Shiftキー(Up) -> 左矢印(Down) -> 左矢印(Up) -> Shift(Down) -> j(Up) -> 無変換(Up) -> Shift(Up)
        変換されたキー(矢印キー)が入力される前に修飾キーがアップされる。よって、文字列などは選択で出来ない。
      • {Blind}を付けるとこうなる。 スクリプト例)
        ;無変換 + j -> 左矢印キー
        sc07b & j::
        	send,{Blind}{Left}
        	return
        挙動
        キー入力:「Shiftキー」 + 「無変換」 + 「j」
        変換されたキー出力:Shiftキー(Down) -> 無変換(Down) -> j(Down) -> 左矢印(Down) -> 左矢印(Up) -> j(Up) -> 無変換(Up) -> Shift(Up)
        シフト、無変換、jと綺麗に押しっぱなしになっているので、文字列などを選択できる。
    • スクリプト例
      無変換キーと一緒に押すことでいろいろな事をします。
      #NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
      #Warn  ; Enable warnings to assist with detecting common errors.
      sendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
      ;SendMode Play  ; Recommended for new scripts due to its superior speed and reliability.
      ;SendMode Event  ; Recommended for new scripts due to its superior speed and reliability.
      ;SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.
      
      ;#InstallKeybdHook
      ;#UseHook on
      
      ;無変換 + j -> 左矢印キー
      sc07b & j::
      	send,{Blind}{Left}
      	return
      
      ;無変換 + k -> 右矢印キー
      sc07b & k::
      	send,{Blind}{Right}
      	return
      
      ;無変換 + h -> BackSpace キー
      sc07b & h::
      	send,{Blind}{BackSpace}
      	return
      
      ;無変換 + u -> 上矢印キー
      sc07b & u::
      	send,{Blind}{Up}
      	return
      
      ;無変換 + m -> 下矢印キー
      sc07b & m::
      	send,{Blind}{Down}
      	return
      
      ;無変換 + i -> Home キー
      sc07b & i::
      	send,{Blind}{Home}
      	return
      
      ;無変換 + o -> End キー
      sc07b & o::
      	send,{Blind}{End}
      	return
      
      ;無変換 + , -> PageUp キー
      sc07b & ,::
      	send,{Blind}{PgUp}
      	return
      
      ;無変換 + . -> PageDown キー
      sc07b & .::
      	send,{Blind}{PgDn}
      	return
      
      ;無変換 + y -> Delete キー
      sc07b & y::
      	send,{Blind}{Delete}
      	return
      
      ;無変換 + n -> Enter キー
      sc07b & n::
      	send,{Blind}{Enter}
      	return
    • その他, トラブル
      1. キーが押しっぱなしになる
        「sendMode Input」と「SendMode? Event」はコードに互換性があるため
        とりあえず「sendMode Input」->「SendMode? Event」へ変更してみる。
        自分はこれで解決した。

Linux

xmodmap

  1. Link [#yb2fdc76]
  2. cui-xmodmap [#ce82ae67]
    • 共通
      1. xmodmap の反映方法
         xmodmap ~/.xmodmap
      2. キーコード調査ソフト

        xev

    • xmodmap
      • 例1) Windows キーと全角半角ボタンの入れ替え

        vi .xmodmap
        以下を追加(! はコメントアウト)

        !keycode  49 = Zenkaku_Hankaku Kanji Zenkaku_Hankaku Kanji
        keycode  49 = Super_L NoSymbol Super_L
        
        !keycode 133 = Super_L NoSymbol Super_L
        keycode 133 = Zenkaku_Hankaku Kanji Zenkaku_Hankaku Kanji
      • 例2) いろいろ切替例
        clear Lock
        clear Control
        !clear mod5
        
        remove Control = Mode_switch
        !remove mod1
        !remove mod5 = Mode_switch
        
        !Muhenkan
        !左コントロール -> CapsLock
        keycode 37 = Caps_Lock
        !英数 -> Control_L
        keycode 66 = Control_L
        !無変換 -> Mode_switch
        keycode 102 = Mode_switch
        !無変換 + j -> 左矢印
        keycode 44 = j J Left Left
        !無変換 + k -> 右矢印
        keycode 45 = k K Right Right
        !無変換 + u -> 上矢印
        keycode 30 = u U Up Up
        !無変換 + m -> 下矢印
        keycode 58 = m M Down Down
        
        !無変換 + i -> Home
        keycode 31 = i I Home Home
        !無変換 + o -> End
        keycode 32 = o O End End
        !無変換 + , -> PageUp
        keycode 59 = comma less Prior Prior
        !無変換 + . -> PageDown
        keycode 60 = period greater Next Next
        
        !無変換 + h -> BackSpace
        keycode 43 = h H BackSpace BackSpace
        !無変換 + y -> Delete
        keycode 29 = y Y Delete Delete
        !無変換 + n -> Enter
        keycode 57 = n N Return Return
        
        
        add Control = Control_L Control_R
        !add mod1 = Alt_L
        !add mod5 = Mode_switch
    • cui-/etc/default/keyboard [#kfe232cb]
      • sudo vim /etc/default/keyboard
      • 以下を変更
        XKBOPTIONS="ctrl:nocaps"
      • 変更後の全部
        # KEYBOARD CONFIGURATION FILE
        
        # Consult the keyboard(5) manual page.
        
        XKBMODEL="pc105"
        XKBLAYOUT="jp"
        XKBVARIANT=""
        #XKBOPTIONS=""
        XKBOPTIONS="ctrl:nocaps"
        BACKSPACE="guess"
  3. gui [#cad2b3d8]
    • kde
      • 通常キーボードで CapsLock? を Control キーにする。

        1.「KDE システム設定」 -> 「入力デバイス」
        2.「キーボード」 -> 「詳細」
        3.「ctrlキーの位置」 -> 「Ctrl と Caps Lock を入れ替える」にチェック
        4.Ctrl + Space で IME On,Off

        • Linux
        • 「入力メソッドの設定」で Ctrl + Space でオン・オフを設定

XKB

xmodmap が少し古い技術なって、XKBの方が望ましいとのことなので、この際調べてみました(^^)

  1. 参考Link
  2. やりたいこと
    1. ctrl <-> caps lock の入れ替え
    2. 無変換キーを押しながら
      • Y : delete
      • U : 上矢印キー
      • I : Home
      • O : End
      • H : Back space
      • J : 左矢印キー
      • K : 右矢印キー
      • N : Enter
      • M : 下矢印キー
      • , : Page Up
      • . : Page Down
  3. ファイル構成

    ~/.xkb/

    .xkb
    ├── compat
    │   └── mycompat
    ├── keymap
    │   └── mykbd
    ├── symbols
    │   └── mysymbols
    └── types
        └── mytypes
  4. フォルダの作成
    mkdir -p ~/.xkb/compat
    mkdir -p ~/.xkb/keymap
    mkdir -p ~/.xkb/symbols
    mkdir -p ~/.xkb/types
  5. 設定ファイルの作成
    1. compat
      • vi ~/.xkb/compat/mycompat
        xkb_compatibility "muhenkan" {
          interpret Muhenkan { action = SetMods(modifiers=Mod5); };
        };
    2. keymap
      • vi ~/.xkb/keymap/mykbd
        xkb_keymap {
            xkb_keycodes  { include "evdev+aliases(qwerty)" };
            xkb_types     { include "complete+mytypes(muhenkan)"  };
            xkb_compat    { include "complete+japan+mycompat(muhenkan)"   };
            xkb_symbols   { include "pc+jp+inet(evdev)+mysymbols(muhenkankeys)+ctrl(nocaps)"   };
            xkb_geometry  { include "pc(pc105)" };
        };
    3. symbols
      • vi ~/.xkb/symbols/mysymbols
        xkb_symbols "muhenkankeys" {
         
        key.type = "MUHENKAN";
        //  key <AE01> { [ 1, exclam      ] };
        //  key <AE02> { [ 2, quotedbl        ] };
        //  key <AE03> { [ 3, numbersign  ] };
        //  key <AE04> { [ 4, dollar      ] };
        //  key <AE05> { [ 5, percent     ] };
        //  key <AE06> { [ 6, ampersand       ] };
        //  key <AE07> { [ 7, apostrophe  ] };
        //  key <AE08> { [ 8, parenleft       ] };
        //  key <AE09> { [ 9, parenright  ] };
        //  key <AE11> { [ minus, equal       ] };
        //  key <AE12> { [ asciicircum,   asciitilde] };
          
        //  key <AD01> { [ q, Q           ] };
        //  key <AD02> { [ w, W           ] };
        //  key <AD03> { [ e, E, Escape ] };
        //  key <AD04> { [ r, R           ] };
        //  key <AD05> { [ t, T           ] };
        //  key <AD06> { [ y, Y           ] };
            key <AD06> { [ y, Y, Delete     ] };
        //  key <AD07> { [ u, U           ] };
            key <AD07> { [ u, U, Up         ] };
            key <AD08> { [ i, I, Home       ] };
        //  key <AD09> { [ o, O           ] };
            key <AD09> { [ o, O, End        ] };
        //  key <AD10> { [ p, P, Up ] };
        //  key <AD11> { [ at, grave      ] };
        //  key <AD12> { [ bracketleft,   braceleft ] };
          
        //  key <CAPS> { [ Eisu_toggle, Caps_Lock ] };
         
         
        //  key <AC01> { [ a, A           ] };
        //  key <AC02> { [ s, S           ] };
        //  key <AC03> { [ d, D           ] };
        //  key <AC04> { [ f, F           ] };
        //  key <AC05> { [ g, G           ] };
            key <AC06> { [ h, H, BackSpace] };
            key <AC07> { [ j, J, Left ] };
            key <AC08> { [ k, K, Right ] };
        //  key <AC09> { [ l, L, Right ] };
        //  key <AC10> { [ semicolon, plus, End ] };
        //  key <AC11> { [ colon, asterisk, Delete ] };
         
        //  key <AB01> { [ z, Z, Return ] };
        //  key <AB02> { [ x, X, BackSpace ] };
        //  key <AB03> { [ c, C, Delete ] };
        //  key <AB04> { [ v, V           ] };
        //  key <AB05> { [ b, B           ] };
        //  key <AB06> { [ n, N, Down ] };
            key <AB06> { [ n, N, Return ] };
        //  key <AB07> { [ m, M, Return ] };
            key <AB07> { [ m, M, Down ] };
            key <AB08> { [ comma,  less, Prior       ] };
            key <AB09> { [ period, greater, Next     ] };
        //  key <AB10> { [ slash, question    ] };
        //  key <AB11> { [ backslash, underscore] };
        };
    4. types
      • vi ~/.xkb/types/mytypes
        xkb_types "muhenkan" {
          type "MUHENKAN" {
            modifiers = Shift+Control+Mod5;
            map[Shift] = Level2;
            map[Mod5] = Level3;
            map[Mod5+Control] = Level3;
            map[Mod5+Shift] = Level3;
            map[Mod5+Shift+Control] = Level3;
         
            preserve[Mod5+Control] = Control;
            preserve[Mod5+Shift] = Shift;
            preserve[Mod5+Shift+Control] = Shift+Control;
         
            level_name[Level1] = "Base";
            level_name[Level2] = "Shift";
            level_name[Level3] = "Muhenkan";
          };
        };
  6. 反映
    xkbcomp -I$HOME/.xkb ~/.xkb/keymap/mykbd $DISPLAY 2> /dev/null
  7. 日本語入力オン, オフで設定が元に戻ってしまう
    gsettings set org.gnome.settings-daemon.plugins.keyboard active false
  8. 自動起動設定

    ~/.bashrc へ追加

    • vim ~/.bashrc
      xkbcomp -I$HOME/.xkb ~/.xkb/keymap/mykbd $DISPLAY 2> /dev/null
  9. 日本語入力時、無変換キーが認識してしまう
    • mozcの設定 -> 「キー設定の選択」から無変換キー設定の除去
  10. jp キーボードのデフォルト設定を確認する
    /usr/share/X11/xkb/symbols/jp
  11. 設定確認
    setxkbmap -print

今までに経験したキーボードの所感

東プレ REALFORCE91UBK-S テンキーレス日本語配列 静音タイプ 変荷重 ブラック

特徴と所感

  • 静電容量無接点方式のキーボードで、高額キーボードの代名詞的存在。
    キーの軽さ、打鍵感、静粛性、どれを取っても一級品でまったくストレスを感じません。
    またシリンドリカルなキー形状も多分打ち易さの秘密かもしれません。
    お値段2万円は値段相応か?という点は、値段相応だと思います。
    開発費を含め1万円ではちょっと作れないかなぁ、と感じました。
    ※以下 amazon リンク

富士通 Libertouch(リベルタッチ)

特徴と所感

  • メンブレン方式、1万円ちょっとのお値段で買えるキーボードです。
    メンブレン方式とは思えない打鍵感と、ラバーの交換による押下圧の変更により
    かなり快適にタイピングできます。
    メンブレン方式とは言っても、実際にはバネを使った反発とのハイブリッドで、
    完全なメンブレン方式ではないのも特徴の1つです。
    キーボードを買った時に、押下圧の弱いラバーが10個ほど、キー引きぬき工具、
    予備のバネがついてくるのも嬉しいです。
    打鍵感は非常によく、まぁまぁ静か、RealForce? がなければ文句なしで一番ですね。
    現在、RealForce? は会社で、リブレタッチは家で使用しています。
    (なんとも贅沢な環境に我ながらうっとりです(^^)

BUFFALO 有線ゲーミングキーボード BSKBC16BK

特徴

メンブレンキーボードで安価(2000円位)で、比較的軽いキーと
打鍵感が良い、また音が静かなのが特徴。
この値段でこのクオリティーは凄い。

所感

お店でたまたま展示品があり、キータッチに惹かれ購入しました。
性能は、キーの重さ、打鍵感、静かさなど実用十分であり、
自分は家と会社の2台体制で2年位使いました。
特に不満は無いのですが、会社で Happy Hacking Keyboard Lite2 が
発掘されて以来、キーボードについて調べているうちに道を踏み外しました(^^;)
今でもこのキーボードの評価は変わっておらず、良いキーボードと思います。
ただし、RealForce? のような2万円のキーボードを使ってみると少し粗が目立ちますが、
値段ほどの差はもちろんありません。このキーボードが2千円なら
RealForce? は3千円くらいでもいいと思います(性能差1.5倍程度と感じます)
※以下は amazon リンク

Happy Hacking Keyboard JP Lite2

keyboardHHKJPLite2Black.jpg

特徴

ジャンル的には「変態配列キーボード」に分類されると思う

  1. Ctrlキーが「A」キーの左側にある
  2. ファンクションキーがなく、「Fn」+数字キーで入力する
  3. PrintScreen?,ScrollLock?,Pause キーなども「Fn」キーを押しながらとなる

結論

以下3つのうちどれかに当てはまる場合は厳しい。

  1. リモートデスクトップ多用する
  2. かなり多くのPCを所有する(1つ1つに設定を入れられないくらい)
  3. ノートPCのキーボードも使用する

しかしながら、通常キーボードで、Ctrl と CapsLock? を切り替えるのは
作業効率的に有効かもしれない。

経緯と理由

  1. 会社でHappy Hacking Keyboard Lite2 の英語版が発掘される
    • 英語キーボードで致命的なのは、リモートデスクトップの接続先が日本語の場合、
      アンダースコア(アンダーバー)がどうしても打てない事。これは致命的。
      自分は仕事柄、何十台というコンピューターにリモートデスクトップで接続するため
      これはどうしても見過ごせない大きな問題。
  2. Happy Hacking Keyboard Lite2 の日本語版を購入。
    • 日本語版はいろいろと問題も少なく、1週間ほど使用した。
      ノートPCにHappy Hacking Keyboard をUSB接続する使い方だったが、
      ノートPCキーボードとの併用がとてもむずかしく諦めた。
  3. キーボード変換が必要な環境まとめ
    Happy Hacking Keyboard通常キーボード(ノートPCキーボード)
    Windows
    設定ソフト:AutoHotKey?
    Windowsキーと全角半角キーの入れ替え

    設定ソフト:AutoHotKey?
    CtrlキーとCapsLock?キーの切り替え
    Linux
    設定ソフト:xmodmap
    Windowsキーと全角半角キーの入れ替え

    設定ソフト:xmodmap
    CtrlキーとCapsLock?キーの切り替え
  4. 試したキーコンフィグツール
    1. Windows
      このページ「キースワップソフト」「Windows」を参照
    2. ソフト型
      このページ「キースワップソフト」「Linux」を参照
  5. 以上を踏まえた自分の利用環境ごとの対応について
    以下の環境で致命的な不整合が起きた
    • 「PCを移動時、 Happy Hacking Keyboard が繋がっていない状態でリモートデスクトップを行う時」
      PC の再起動が不要のキースワップツール「Auto Hot Key」では、リモートデスクトップ越しのキー変更は出来ない。

      -> リモートデスクトップ先で CpasLock?(英数) を Ctrl キーとして扱う方法が無い。
      これが Happy Hacking Keyboard を使う上で克服できない致命的な事象でした。

    • 上記をふまえ、逆に普通のキーボードを使用し、レジストリで「Ctrl」と「CapsLock?(英数)」を切り替えることにより
      「A」キーの左に「Ctrl」キーの状態は維持できます。
      またこの方式にすることにより以下のように対応が可能です。
      リモートデスクトップPC画面
      USBキーボードCtrl と CapsLock? の入れ替えが可能Ctrl と CapsLock? の入れ替えが可能
      ノートPCキーボードCtrl と CapsLock? の入れ替えが可能Ctrl と CapsLock? の入れ替えが可能
      詳細はこのページ「キースワップソフト」「Windows」を参照

Filco Majestouch FKB108M/JB(茶軸)

特徴

メカニカルキーボードの老舗、Filco が出している Majestouch。
種類はメカニカルで Cherry社製のスイッチ(茶軸)を採用。
値段は1万円くらいでした。

結論

音がうるさすぎて会社では使えませんでした。
このキーボードでタイピングしているとみんなが振り返るレベルです。
家でも同居人が居る場合は絶対うるさいです。
1キーを入力するごとに硬いプラスチック同士がぶつかる甲高い音が響きます。
メカニカルキーボード、打鍵感と反応は最高なのですが、
この音が致命的にうるさいので、家専用で会社使用は出来ませんでした。。。

個人的Todo,メモ

  1. Filco、静音化検討結果
  2. AutoHotKey?,検討メモ
    #NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
    ; #Warn  ; Enable warnings to assist with detecting common errors.
    ;SendMode event  ; Recommended for new scripts due to its superior speed and reliability.
    SendMode input  ; Recommended for new scripts due to its superior speed and reliability.
    SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.
    
    #InstallKeybdHook
    #UseHook
    
    ;「全角半角」キー(キーボード表記)が押された時、200msの間、同時に押されたキーを記憶し送る。
    ;なぜか「全角半角」(キーボード表記)が押された時、先に Up が来て、あとに Down が来るので
    ;下記で入れ替えてる。
    SetKeyDelay, 200
    sc029 up::
    	sendEvent,{blind}{LWin down}
    	return
    sc029::
    	sendEvent,{blind}{LWin up}
    	return
    
    ;変換キー+j で BackSpace
    sc079 & j::
    	sendEvent,{BackSpace}
    	return
    
    ;変換キー+k で Delete
    sc079 & k::
    	sendEvent,{Delete}
    	return
    
    
    
    ;変換キー
    ;sc079 & j::
    ;	send,{Blind}{Home}
    ;	return
    
    ;sc079 & k::
    ;	send,{Blind}{End}
    ;	return
    
    
    
    ;かな(不安定)
    ;sc070 & j::
    ;	send,{Blind}{Home}
    ;	return
    
    ;sc070 & k::
    ;	send,{Blind}{End}
    ;	return
    
    
    ;^j::Home
    ;^k::End
    
    ;sc07b up::
    ;	send,{LCtrl up}
    ;	return
    
    ;sc07b::
    ;	send,{LCtrl down}
    ;	return
    
    ;	
    ;+sc07b::
    ;	send,{CapsLock}
    ;	return
    
    ;#HotkeyModifierTimeout 200
    ;SetKeyDelay, 200
    ;#InstallKeybdHook off
    ;#UseHook off
    ;#HotkeyModifierTimeout 200
    ;SetKeyDelay, 200
    
    
    ;Capslock::Ctrl
    ;sc03a::
    ;	Send {Blind}{sc03a}
    ;	Send {Blind}{sc03a Up}{LCtrl DownTemp}
    ;	Send {Lctrl Up}{LCtrl DownTemp}
    ;	Send {LCtrl DownTemp}{Lctrl Up}
    ;	Send {LCtrl}
    ;	Send {Lctrl Up}
    ;	return
    
    ;sc03a::
    ;	Send {Blind}{sc03a}
    ;	Send {Blind}{sc03a Up}{LCtrl DownTemp}
    ;	return
    
    ;sc03a down::
    ;	send,{LCtrl down}
    ;	send,{LCtrl up}
    ;	return

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2018-10-22 (月) 18:12:41 (24d)