2019/05/03 発散しすぎて収拾つかないのでばいちゃ
このドキュメントについて
Windows PC の操作を効率化するための概念や手法全般をひたすら簡潔な備忘録で貯める試み。
書き方について
- 大見出しはカテゴリ
- 中見出しはネタ単位
- 小見出し以降は使わない
ウィンドウ
列挙、表示、制御……と観点がまだ見えないのでいっしょくたにする。
MDI
単一アプリウィンドウ中に、そのアプリを親とするウィンドウたちを閉じ込める形の UI。タブインタフェースの台頭によりオワコン。
タブインタフェース
単一アプリウィンドウが持つ「そのアプリを親とするウィンドウたち」をタブの形で並べて、自由に切り替えられるようにした UI。昨今の主流。
Altab
Alt + Tab のこと。
- シンプルに代替するタイプ
- Vista Switcher
- Joe
- インクリメンタルサーチで探せるようにするタイプ
- cltc
- 決め打ちでアクセス
- AutoHotkey(リマップで WinActivate させるなど)
仮想デスクトップ
デスクトップの表示状態(どのウィンドウがどこに表示されているか)を複数個保持して切り替えられるようにする。
歴史
- 元々 Mac では搭載していたが、Win7 以前では搭載されておらず、多くのフリーソフトが生まれた
- Win10 では搭載している
種類
- n枚デスクトップ
- 画面があたかも n 枚に増えたかのようなタイプ
- 一度に表示できるのはデスクトップ i のみ
- n倍デスクトップ
- 画面があたかも n 倍に広がったかのようなタイプ
- ウィンドウ全体をスライドさせることで擬似的にスクロールしているように見せる
トラブル
- ANAW(Activation of Non Active Window) Problem
- 画面1にアプリA、画面2にアプリBがあって、アプリBを使っているとする
- この時、アプリAで開くファイルを開いたとする
- アプリAはどうやって表示するべき?
- 案1: 画面1にあるものをこちら(今の画面2)に持ってくる
- 案2: 画面1に切り替える
- 案3: 新規にアプリAを立ち上げる(画面1のアプリAと二重になる)
- Autonomy Showing Problem
- アプリの中には自身のウィンドウ表示状態を自ら制御するものがある
- 例: HideWindow などで Hide されたら自動で Show に切り替える
- 仮想デスクトップは ShowWindow/HideWindow により実現されている
- したがって、自ら制御するアプリに対しては仮想デスクトップが効かない
- アプリの中には自身のウィンドウ表示状態を自ら制御するものがある
リサイズ
ウィンドウの表示位置や表示サイズを素早く変更する。
種類
- Absolute - 絶対値を即座にセットするもの
- 例: 640x480 に変更する
- Sizer など
- Relative - 現在値から +- で少しだけ増やすもの
- システムメニュー > 移動/サイズ変更 を独自に実装したもの
Window Shade
ウィンドウをタイトルバーサイズに折りたたむ。タイトルバーのホイールクリックなどでトグル実行するタイプが多い。古い Mac に備わっていた機能で、これに憧れてフリーソフトがつくられたが、Win7 時点でオワコン。
Window Manager
ウィンドウの表示方法を完全にシステムに任せる。これを導入するとタイトルバーを掴んで位置サイズ変更、といった操作がゼロになる。タイル状に並べるものが主流。CUI ベースな UNIX で見られる文化で、Windows では馴染みがない(しかしフリーソフトがいくつかあった気がする)。
参考
- ウィンドウマネージャ - Wikipedia
- タイル型ウィンドウマネージャ - Wikipedia
- Windows 用フリーソフトに詳しい
Caption Control
ウィンドウやタブのタイトル文字列を固定したり、色付けしたりして視覚的に見易くする。タブの場合は固定(ロック)して仕切りにしたり誤クローズ防止させたりすることもある。
アプリ単位
- XFinder はタブのみだが優秀。ロックも色付けもサポートしている。
- Firefox は Quantum 前の Tab Mix Plus がロックをサポートしていた。
- 秀丸エディタはマクロ使えばできないことはない。
専用アプリ
- Teraterm を複数枚使ってた時は「指定ウィンドウの指定タイトルを指定文字列に固定する」ツールを自作して運用していた
- n秒ごとに監視して機械的にタイトル文字列を置き換える感じ
- SetWindowTextA function (winuser.h) - Microsoft Docs
Smart Grabbing
タイトルバーを D&D することなしにウィンドウの位置サイズを変更する。Shift キーなど修飾キーを押しながらマウスカーソルを動かすことで発動する。
例:
- Windows
- 窓掴み、suwisuwin、シフトムーブ
- Mac
- Bettertouchtool
System Menu Disabling
システムメニューを無効化することで関連操作を無効にするもの。たとえば「閉じる」を無効化すれば当該ウィンドウは閉じることができなくなり、これを用いたフリーソフトもある。
操作アサイン系
マウスジェスチャー
ホットキー
Security Breaking
スクリーンセーバーブレイク
スケジューリング設定変更
ターゲット変更による特殊フォルダ名変更
ファイルアクセス
プログラムランチャ
ファイルを素早く起動するツール。
- メニュー型
- ボタン型
- キーワード登録型
- スキャン型
- ホットキー型
ファイラー
コマンドエイリアス
doskey とか、path 通したコマンド置くとか、あと環境変数。
path、pathext もここ?
履歴管理
バージョン管理
git。
System Recent
最近使ったファイル
Application Recent
アプリのファイル履歴全般。データはレジストリだったり appdata 配下にファイルとして存在してたり。引き継ぎ時はたいてい死にデータになる。スクリとかでデータ抽出してランチャーに入れてやると便利。
クリップボード履歴
画像系
キャプチャツール
winshot
画像ビューワ
Massigra みたいなやつ。サムネイル image2html もこれか。ファイラーから直接見るタイプ(xfinderやあふw)
レジストリ管理
regjumpみたいにregedit操作する系
俺エディタみたいに独自エディタ
reg コマンドなど cui
regedit
●misc
・汎用的 ・単発キー massigra,あふw,… ・二段 sskeylaucncher,tritask menu ・local better than cloud ブラウザ利用ではなくクライアントソフト利用 ・why not gui but cui なぜCUIなのか
・menu accelerator ・process control ・do not tidy, find everythingとか? ・movie player windows media player からの脱却? ・ide ・ファイル比較 winmerge ・ブックマーク理論 ・パッケージ管理 ・圧縮解凍最適化? ・ドキュメントビルド ・エディタ系 ・スクリプト系 bat vbs py ahk macro ・自動化とは コマンド使うこと 仕組みが自動化に対応していること ・表示時間処理時間の削減?
・窓の杜 https://forest.watch.impress.co.jp/library/nav/genre/dktp/ デスクトップ ・デスクトップ機能拡張 ・ウィンドウ機能拡張 ・ランチャ ・アイコンカーソル ・クリボ ・画面キャプチャ ・カレンダー ・時計タイマー ・付箋メモ ・vector https://www.vector.co.jp/vpack/filearea/win/util/index.html?ref=top ユーティリティ ・クリボ ・タスク制御 ・ファイル管理 ファイラ 検索 コピー 削除系 ・セキュリティ パスワード生成管理 暗号化 起動終了ロギング ・システム起動 スタートアップ タイマー終了「 ・テキストファイル系 ・デスクトップ系 サイズ位置変更 表示拡大 ・ランチャ ・操作 キーボ系 マウス系 ・環境設定 窓の手とかそういう系