• クリップボードロギングツール

    C#学習中… 学習目的なので車輪の再開発です。

    バグ修正

    以下のバグを修正しました。

    • 任意の項目をCtrl+ダブルクリックするとアプリが異常終了する。
    • Deleteキーでファイルを削除後、項目選択フォーカスが先頭行に強制される。
    • 複数の項目を選択できる。
    • 再起動時にタブおよび項目の並び順がリセットされる。
    • アプリの再起動に時間がかかり応答しなくなる。

    機能修正

    • タブの選択時に最左端・最右端でループするように修正しました。
    • 項目の選択時にCtrl+HomeキーとHomeキーだけの動作を統一しました。Ctrl+EndキーとEndキーだけの動作を統一しました。
    • エクスプローラの表示時にメイン画面を閉じるように修正しました。

    機能追加

    • ランチャー機能

    作ったもの

    https://github.com/kozawa-tokyo/clipboardio
    clipboardio_20250322.zip

    使用方法

    ランチャー機能

    launcherDataフォルダ配下に任意のフォルダを作成し、実行したいファイルを格納してください。

    C:\tool\clipboardio
    └─ launcherData
        └─ 「ランチャー」フォルダ

    フォルダ名がタブ名になります。「ランチャー」フォルダ配下の.txt、.exe、.lnk(ショートカット)ファイルが起動できること確認済です。フォルダは対象外です。

    その他の機能説明などについては、過去の投稿を参照してください。
    https://kozawa.tokyo/blog/?tag=clipboardio

    補足

    「クリップボードロギングツール」は、左手は添えるだけ、「キーのリマッピング(KeyRemap.ahk)」は、右手は添えるだけです。高尚なコンセプトのもと制作しております。🙏

    1. 右手で右Shiftを2回押下する。
      →クリップボードロギングツールが表示される。
    2. 「ランチャー」タブからアプリを起動する。
      →アプリの画面が表示される。
    3. 左手でAlt+1キーなどを押下する。
      →キーのリマッピング(KeyRemap.ahk)でアプリの画面が移動される。
    4. 左手でAltキーを押下したまま、右手で矢印キーを操作して画面サイズを微調整する。(ここで伏線は回収されましたよ?)
    5. アプリを使用する。
    6. Alt+F4キーでアプリを終了する。

    マウスを使用せずにちょっとした作業が完結できます。「クリップボードロギングツール」と「キーのリマッピング(KeyRemap.ahk)」はセット商品です。ご愛顧くださいませ。( ー`дー´)キリッ

    既知の不具合

    まだまだバグだらけです…

    所感

    以下のWin32APIでIniFileの読み書きを行っていたけれどサードパーティー製ライブラリに置き換えました。

    GetPrivateProfileString 関数 (winbase.h)
    WritePrivateProfileStringW 関数 (winbase.h)

    Win32APIが遅すぎるのWin32APIのバグですよね?

    あとは、ランチャーのアイコンを横に並べて「CLaunch」みたいに作りたかったけど、左右キーはタブの切り替えで使用していて、タブのキーボードフォーカス、論理フォーカスの制御ができず一旦挫折。

    フォーカスの概要

    リストのアイテムを選択するのにも苦労させられていますし、WPFアプリ難しいですねえ。Formアプリで作った方が良かったかもしれない。

    応援・寄付のお願い

    Amazonギフトカード
    欲しいものリスト

    メールアドレス「develop.kozawa@gmail.com」です。
    🍻より良いフリーソフトのためにー 🐾

  • キーのリマッピング

    自分用に修正したので貼っておこー

    機能追加

    Winキー:Shiftキーと同じ処理を割り当てました。Alt+Qなどを複数回押下するときにAlt+Win+Qで画面サイズの変更の方向を逆転します。左手の親指でAlt+Winを押下することを想定しています。

    2ストローク:Alt+Q、A、W、Sキーで画面高さを変更した後、Alt+1、3キーで画面幅を変更できるよう修正しました。Alt+Q、A、W、Sキーで高さ、Alt+1、3で幅を変更してください。

    補足

    2ストロークキーのタイムアウト処理や2キー目のクリア処理等が必要ですが未実装です。前回のキー操作を内部で保持しているため、初回のキー操作では意図した方向に画面サイズが変更されない場合があります。その場合は、Alt+2キーで画面位置を初期化後、再度操作してください。(Alt+2キーは2ストローク未対応です)

    機能変更(仕様変更)

    修正前:2024/07/21公開
    Alt + q,a,w,sキーの押下後にAlt + 矢印キーで画面移動を追加(実用的な機能ではない)

    修正後:本投稿公開日
    Alt + q,a,w,s,e,d,1,3キーの押下後にAlt + 矢印キーで画面サイズを変更(実用的な機能への伏線?)

    右手は添えるだけで左手だけで完結したいけどAlt+Q、A、W、Sキーで高さ、Alt+1、3で幅を変更するのは分かりづらい使いづらい。だからと言ってマウスの上にいる右手をいちいちキーボートの矢印キーまで移動して画面サイズを変更するのか?そんなことをするなら素直にマウスで画面サイズを変更するよな。常考。

    画面サイズの変更間隔を10%から5%に修正しました。

    ; 画面サイズ定義1
    LEFT_WIDTH := [0.5, 0.6, 0.7, 0.3, 0.4]
    CENTER_WIDTH := [0.5, 0.6, 0.7, 0.3, 0.4]
    RIGHT_WIDTH := [0.5, 0.6, 0.7, 0.3, 0.4]
    UPPER_HEIGHT := [0.5, 0.6, 0.7, 0.8, 0.9, 1.0, 0.3, 0.4]
    LOWER_HEIGHT := [0.5, 0.6, 0.7, 0.8, 0.9, 1.0, 0.3, 0.4]
    ; 画面サイズ定義2
    LEFT_WIDTH := [0.5, 0.55, 0.6, 0.65, 0.7, 0.75, 0.8, 0.85, 0.9, 0.95, 1.0, 0.25, 0.3, 0.35, 0.4, 0.45]
    CENTER_WIDTH := [0.5, 0.55, 0.6, 0.65, 0.7, 0.75, 0.8, 0.85, 0.9, 0.95, 1.0, 0.25, 0.3, 0.35, 0.4, 0.45]
    RIGHT_WIDTH := [0.5, 0.55, 0.6, 0.65, 0.7, 0.75, 0.8, 0.85, 0.9, 0.95, 1.0, 0.25, 0.3, 0.35, 0.4, 0.45]
    UPPER_HEIGHT := [0.5, 0.55, 0.6, 0.65, 0.7, 0.75, 0.8, 0.85, 0.9, 0.95, 1.0, 0.25, 0.3, 0.35, 0.4, 0.45]
    LOWER_HEIGHT := [0.5, 0.55, 0.6, 0.65, 0.7, 0.75, 0.8, 0.85, 0.9, 0.95, 1.0, 0.25, 0.3, 0.35, 0.4, 0.45]

    10%間隔の定義も残していますのでお好みで修正してください。

    スクリプトの処理が上から下に流れます。画面サイズ定義1の値を画面サイズ定義2の値で上書きしています。25行目~29行目の先頭にセミコロンを付けるか行ごと削除すると19行目~23行目の処理が有効になり従来の10%間隔の定義となります。

    スクリプト実行中にスクリプトファイルを修正した場合、タスクトレイから「Reload Script」を実行してください。

    作ったもの

    https://github.com/kozawa-tokyo/keyremap
    keyremap_20250322.zip

    その他

    コードをリファクタリングしました。不具合対応の処理を移動したりコメントの修正など行っています。

    今回変更していないファイルもすべて圧縮しました。使用しているDLLも最新(Windows 11 binary, works with 24H2, 26100.2605)版をバンドルしています。Windows 10などの旧環境で問題が発生する場合は以下のサイトからDLLをダウンロードして差し替えてください。

    ; ----------------------------------------
    ; DLL関連関数
    ; VirtualDesktopAccessor.dll
    ; Copyright (c) 2015-2023 Jari Otto Oskari Pennanen
    ; https://github.com/Ciantic/VirtualDesktopAccessor
    ; https://opensource.org/license/mit
    ; ----------------------------------------

    フォルダ構成を変更しました。dllフォルダを追加しています。

    C:\tool\keyremap*
    │ KeyRemap.ahk
    ├─dll
    │ VirtualDesktopAccessor.dll
    └─images
       ├─dark
       │   1.png
       │   2.png
       │   3.png
       │   4.png
       │   5.png
       │   6.png
       │   R.png
       └─light
          1.png
          2.png
          3.png
          4.png
          5.png
          6.png
          R.png

    *:任意のフォルダで使用できます。

    また、過去の投稿に「keyremap」タグを付けて参照できるようにしました。大きく3つの機能があります。

    • キーのリマップ
    • アクティブ画面の移動
    • 仮想デスクトップの移動

    使用方法の詳細については、過去の投稿を参照してください。

    https://kozawa.tokyo/blog/?tag=keyremap

    応援・寄付のお願い

    Amazonギフトカード
    欲しいものリスト

    メールアドレス「develop.kozawa@gmail.com」です。
    🍻より良いフリーソフトのためにー 

  • 未来のレモンサワー オリジナルレモンサワー

    https://www.asahibeer.co.jp/osakenomirai

    今日はこれ。おいしーーーーい!

    🍋レモンが真っ白になってて食べられる感じはしなかったな。。