[ Windows ] 109キーボードをHHK Lite2風に

109キーボードを、PFU製Happy Hacking Keyboard Lite 2(日本語配列)風に使うために、窓使いの憂鬱の定義ファイルを書いてみた。 とは言っても、左側だけ。

.mayu
# Happy Hacking Keyboard Lite 2(日本語配列)風キーマップ

# 標準のキーボード定義をロード
include "109.mayu"  # 109 キーボード設定
keymap Global

## "半角/全角"キー を "Esc"キー に変更
key 半角/全角  =  Esc

## "Caps Lock/英数"キー を "左Control"キー に変更
mod control  += 英数      # 英数キーにControlキー機能を付加
key *英数  =  *LControl   # 英数キーを左Controlキーに

## "左Alt"キー を "半角/全角"キー に変更
mod Alt -= LAlt           # 左AltキーからAltキー機能を奪う
key LAlt =  半角/全角     # 左Altキーを半角/全角に

## "左Windows"キー を "左Alt"キー に変更
mod Windows  -= LWindows  # 左WindowsキーからWindowsキー機能を奪う
mod Alt  += LWindows      # 左WindowsキーにAltキー機能を付加
key *LWindows  =  *LAlt   # 左Windowsキーを左Altキーに

## "左Control"キー を "Fn"キー(相当) に変更
mod control  -= LControl  # 左ControlからControl機能を奪う
mod Mod0  =  LControl     # 左ControlをMod0モディファイアに設定

## "Fn" + 1段目
key *C-*A-*S-M0-_1  =  *C-*A-*S-F1
key *C-*A-*S-M0-_2  =  *C-*A-*S-F2
key *C-*A-*S-M0-_3  =  *C-*A-*S-F3
key *C-*A-*S-M0-_4  =  *C-*A-*S-F4
key *C-*A-*S-M0-_5  =  *C-*A-*S-F5
key *C-*A-*S-M0-_6  =  *C-*A-*S-F6
key *C-*A-*S-M0-_7  =  *C-*A-*S-F7
key *C-*A-*S-M0-_8  =  *C-*A-*S-F8
key *C-*A-*S-M0-_9  =  *C-*A-*S-F9
key *C-*A-*S-M0-_0  =  *C-*A-*S-F10
key *C-*A-*S-M0-HyphenMinus  =  *C-*A-*S-F11
key *C-*A-*S-M0-CircumflexAccent  =  *C-*A-*S-F12
key *C-*A-*S-M0-YenSign    =  *C-*A-*S-Insert
key *C-*A-*S-M0-BackSpace  =  *C-*A-*S-Delete

## "Fn" + 2段目
key *C-*A-*S-M0-Tab  =  *C-*A-*S-英数

## "Fn" + 5段目
key *C-*A-*S-M0-LAlt  =  *C-*A-*S-LWindows

## "Fn" + カーソルキー(Home, End, PageUp, PageDown)
key *C-*A-*S-M0-←  =  *C-*A-*S-Home
key *C-*A-*S-M0-→  =  *C-*A-*S-End
key *C-*A-*S-M0-↑  =  *C-*A-*S-PageUp
key *C-*A-*S-M0-↓  =  *C-*A-*S-PageDown

投稿者 Kobito : 16:31 | コメント (1) | トラックバック

[ Windows ] wxWidgetsをVC6で使う

仕事に使えるかの評価を兼ねて、自宅のPCにwxWidgets-2.6.2をセットアップしてみた。
ネットに落ちている情報が古いバージョンを対象にしていて、動かすのに少し手間取ったのでメモを残しておく。
「とりあえず動く」ところまで。
なお、wxWidgetsのライセンスがLGPLのため、目的の都合から静的リンクではなく動的リンクを前提にしている。

wxWidgetsのセットアップ
  1. ダウンロードした資材をインストール
    以降、C:\wxWidgets-2.6.2にインストール(展開)したものとする。
  2. 環境変数WXWINの設定
    インストールディレクトリC:\wxWidgets-2.6.2を環境変数WXWINに設定する。
  3. Release版DLLのコンパイル
    > cd $(WXWIN)\build\msw
    > nmake -f makefile.vc SHARED=1 BUILD=release
    DLL他は以下のディレクトリに作成される。
    $(WXWIN)\lib\vc_dll
    nmake実行時にVENDORを指定しなければ、作成されるDLL名のサフィックスは_customになる。
    wxbase26_net_vc_custom.dll
    wxbase26_vc_custom.dll
    wxbase26_xml_vc_custom.dll
    wxmsw26_adv_vc_custom.dll
    wxmsw26_core_vc_custom.dll
    wxmsw26_html_vc_custom.dll
    wxmsw26_media_vc_custom.dll
    wxmsw26_xrc_vc_custom.dll
    nmake実行時にVENDORを指定すると、指定した文字列がサフィックスに使用される。
    ※VENDOR=fooの場合
    wxbase26_net_vc_foo.dll
    wxbase26_vc_foo.dll
    wxbase26_xml_vc_foo.dll
    wxmsw26_adv_vc_foo.dll
    wxmsw26_core_vc_foo.dll
    wxmsw26_html_vc_foo.dll
    wxmsw26_media_vc_foo.dll
    wxmsw26_xrc_vc_foo.dll
    wx/setup.hは以下のディレクトリに作成される。
    $(WXWIN)\lib\vc_dll\msw
  4. Debug版DLLのコンパイル
    > cd $(WXWIN)\build\msw
    > nmake -f makefile.vc SHARED=1 BUILD=debug
    DLL他は以下のディレクトリに作成される。
    $(WXWIN)\lib\vc_dll
    作成されるDLL名については、プレフィックス部分に'd'が付加される以外はRelease版と同じ。
    wxbase26d_*.dll
    wxmsw26d_*.dll
    wx/setup.hは以下のディレクトリに作成される。
    $(WXWIN)\lib\vc_dll\mswd

VCの設定
ここで設定した内容は、VCで使用する全てのプロジェクトに影響する。
個々のプロジェクトに指定しても同じ結果になるので、ここで設定しなければならないわけではない。
  1. [ツール]-[オプション]を開く。
  2. タブ:ディレクトリ
    • 表示するディレクトリ:インクルードファイルディレクトリ欄に以下を追加。
      $(WXWIN)\include
      $(WXWIN)\contrib\include
    • 表示するディレクトリ:ライブラリファイルディレクトリ欄に以下を追加。
      $(WXWIN)\lib\vc_dll


プロジェクトの設定
  1. タブ:C++
    • カテゴリ:コード生成
      • Release版のみ
        使用するランタイムライブラリを以下に変更
        マルチスレッド(DLL)
      • Debug版のみ
        使用するランタイムライブラリを以下に変更
        マルチスレッド(DLL、デバッグ)
    • カテゴリ:プリプロセッサ
      • Release版,Debug版共通
        プリプロセッサの定義から以下を削除
        _MBCS
        プリプロセッサの定義に以下を追加
        __WXMSW__,WINVER=0x0400,WXUSINGDLL
        インクルードパスをVC全体のオプションに設定しなかった場合は、インクルードファイルのパスに以下を追加。
        $(WXWIN)\include,$(WXWIN)\contrib\include
      • Release版のみ
        インクルードファイルのパスに以下を追加。
        $(WXWIN)\lib\vc_dll\msw
      • Debug版のみ
        プリプロセッサの定義に以下を追加
        __WXDEBUG__
        インクルードファイルのパスに以下を追加。
        $(WXWIN)\lib\vc_dll\mswd
  2. タブ:リンクライブラリ
    • カテゴリ:インプット
      • Release版,Debug版共通
        オブジェクト/ライブラリモジュールに以下を追加
        advapi32.lib comctl32.lib rpcrt4.lib winmm.lib wsock32.lib
        ライブラリパスをVC全体のオプションに設定しなかった場合は、追加ライブラリのパスに以下を追加。
        $(WXWIN)\lib\vc_dll
      • Release版のみ
        オブジェクト/ライブラリモジュールに以下を追加
        wxbase26.lib wxmsw26_core.lib
      • Debug版のみ
        オブジェクト/ライブラリモジュールに以下を追加
        wxbase26d.lib wxmsw26d_core.lib

...と長々と書いてはみたが、全て$(WXWIN)\docs\msw\install.txtに書いてあることばかり。
ググるのも良いが、まずは添付のドキュメントに従え、という事だな。

投稿者 Kobito : 17:31 | コメント (5414) | トラックバック

[ Windows ] 秀丸でGrep

ネタが無いので手元のメモから、WindowsのExplolerでフォルダを右クリックしたメニューから秀丸でGrepする方法。

  1. 下記を拡張子regのファイルとして保存。
    Windows Registry Editor Version 5.00

    [HKEY_CLASSES_ROOT\Directory\shell\秀丸でGrep]

    [HKEY_CLASSES_ROOT\Directory\shell\秀丸でGrep\command]
    @="\"C:\\Program Files\\Hidemaru\\Hidemaru.exe\" /d \"%1\" /g"

  2. 秀丸が"C:\Program files\HIdemaru"以外にインストールされてる場合は、上で保存したregファイルを変更する。
  3. regファイルをダブルクリックする。

投稿者 Kobito : 02:16 | コメント (4984) | トラックバック