第4章:万能ビューアーと内蔵エディター¶
従来のデュアルパネルファイル管理では、速度は検査速度に大きく依存します。 チェックサムを確認したり、構成行をチェックしたり、スクリーンショットをトリミングしたり、PDF を検査したりするためだけに、重量のある統合開発環境 (IDE) や肥大化したデスクトップ アプリケーションを起動すると、認知的摩擦やウィンドウの煩雑さが生じます。
ATBCmder は、アプリケーション コアに直接組み込まれた統合されたマルチエンジンの表示および編集サブシステムを提供することで、この問題を解決します。 フォルダー間を移動する際のリアルタイムのインライン プレビュー、16 進モードでの詳細なバイト レベルのフォレンジック分析、ファイルの整理中にバックグラウンドで再生を続けるオーディオ プレーヤー、またはアトミックな構文認識コード エディターが必要な場合でも、ATBCmder を使用すると、キーボードを瞬時に制御できます。
1. ビジュアルクイックスタート: 即時ファイル検査と編集¶
ATBCmder は、ファイルの検査と変更を 2 つの異なるパラダイムに分割します。
- 反対側のパネル クイック ビュー (
Cmd+Q/Ctrl+Q): 個別のウィンドウを生成せずに、非アクティブなパネル内にライブのデバウンス プレビューを直接埋め込みます。 - 専用のユニバーサル リスター (
F3) および内部エディター (F4): 特殊なフォーマット エンジン、全文検索、メディア再生、構文ハイライトをサポートする独立した非モーダル ウィンドウを開きます。
┌────────────────────────────────────────────────────────────────────────────────────────┐
│ アクティブパネル (ファイル一覧) 非アクティブパネル (Quick View) │
│ /Users/brain/Projects/atbcmder/src [プレビュー表示中: main.py] │
├──────────────────────────────────────────────┬───┬─────────────────────────────────────┤
│ 名前 サイズ 更新日時│ │ 0001: """ │
│ ▸ [..] --:-- │ Q │ 0002: メインエントリポイント │
│ ✔ main.py 8.4 KB 15:10 │ U │ 0003: """ │
│ ● config.xml 12.1 KB 14:20 │ I │ 0004: import sys │
│ ● hero_banner.png 248.5 KB 09:12 │ C │ 0005: from PySide6.QtWidgets import │
│ ● sample_invoice.pdf 512.0 KB 11:30 │ K │ 0006: QApplication │
│ ● release_theme.mp3 4.2 MB 16:45 │ │ │
│ ● firmware_dump.bin 1.0 MB 10:00 │ V │ [UTF-8] [Python] [LF] [行 1/140] │
├──────────────────────────────────────────────┴───┴─────────────────────────────────────┤
│ [Cmd+Q / Ctrl+Q] Quick View切替 [F3] Lister表示 [F4] 内蔵エディタ起動 │
└────────────────────────────────────────────────────────────────────────────────────────┘
デュアルマトリックスの検査と編集に関するチートシート¶
| アクション | macOS ショートカット | クラシック コマンダー キー | コマンドID | 説明 |
|---|---|---|---|---|
| クイックビューを切り替え | Cmd+Q / ⌘Q |
Ctrl+Q |
cm_QuickView |
反対側のパネルでライブ プレビューを開きます。 |
| ユニバーサル リスター | F3 / Fn+F3 |
F3 |
cm_View |
選択した項目を Universal Lister で開きます。 |
| 内部編集者 | F4 / Fn+F4 |
F4 |
cm_Edit |
テキストの場合はコード エディター、グラフィックの場合はイメージ エディターが開きます。 |
| 新しいファイルの作成と編集 | Shift+F4 / ⇧F4 |
Shift+F4 |
cm_EditNew |
名前の入力を求められ、エディタが開きます。 |
| スイッチ パネルのフォーカス | Tab / ⇥ |
Tab |
cm_SwitchPanel |
フォーカスを切り替えます。 クイックビューを対称的に反転します。 |
| 16 進ビュー モード | 2 |
2 |
— (リスト) | Lister でのバイトレベルの 16 進検査を切り替えます。 |
| テキストビューモード | 1 |
1 |
— (リスト) | Lister をフォーマットされたプレーン テキスト モードに戻します。 |
| ワードラップトグル | Alt+W / ⌥W |
Alt+W |
— (リスター/編集者) | リスターとエディターでのソフト ライン ラッピングを切り替えます。 |
| 行番号切り替え | Alt+L / ⌥L |
Alt+L |
— | 左ガター行番号を切り替えます。 |
| ライブログテールモード | F5 / Fn+F5 |
F5 |
— | 新しく追加されたログ エントリをリアルタイムでストリーミングします。 |
| バックグラウンドオーディオ | Background ボタン |
— | — | オーディオ再生をパネルのステータス ストリップにドッキングします。 |
| 関連付けを構成する | 設定メニュー | — | cm_FileAssoc |
ファイル拡張子とヘルパー ツールを設定します。 |
2. クイック ビュー パネル (Cmd+Q / Ctrl+Q / cm_QuickView)¶
クイック ビュー パネルは、従来のファイル マネージャーの中で最も強力なワークフローの 1 つです。 クイック ビューは、数百のアイテムを含むフォルダーを検査するときにフローティング ウィンドウを開いたり閉じたりするのではなく、非アクティブなパネルを埋め込まれたコンテキスト ビューポートに変換します。
図 4.1: ディレクトリ ナビゲーションの横にライブ構文で強調表示されたコードを表示する、反対側のパネルに埋め込まれたクイック ビュー。
2.1 デュアルパネルプレビューの利点¶
クイックビューを有効にするには:
- アクティブなパネル内の任意のファイルまたはディレクトリに移動します。
- macOS の場合は
Cmd+Q(⌘Q)、またはCtrl+Q(cm_QuickView) を押します。 - 反対側のパネルが通常のディレクトリ リストから クイック ビュー コンテナ (
QuickViewContainer) に瞬時に切り替わり、カーソルの下に項目の内容が表示されます。 Cmd+QまたはCtrl+Qをもう一度押すと、プレビューが閉じ、場所を失うことなく、反対側のパネルの前のタブとフォルダーのリストが復元されます。
2.2 100ms デバウンスされたリアルタイム更新¶
Up または Down 矢印キーを押したままにして、数千のファイルが含まれるフォルダーをすばやくスクロールすると、標準のファイル プレビューアーではユーザー インターフェイスがフリーズしたり、激しいディスク スラッシングが発生したりすることがよくあります。
ATBCmder は、内部 100 ミリ秒のシングルショット デバウンス タイマー (_quick_view_timer) を通じてこれを解決します。
- 行間を素早く移動すると、アクティブなファイル パスがメモリ内にステージングされます。
- 大量のファイルの読み込み、構文解析、およびサムネイルのレンダリングは、項目上でカーソルが少なくとも 100 ミリ秒停止した場合にのみトリガーされます。
- マルチギガバイトのメディア ディレクトリや生のディスク ダンプを参照している場合でも、スクロールは 60 フレーム/秒以上で完全にスムーズなままです。
2.3 Tab での対称フォーカスフリップ¶
デュアルパネル マネージャーでよくある問題は、パネルを切り替えるときにプレビューが失われることです。 ATBCmder のクイック ビューには 対称フォーカス反転 機能があります。
- 右パネルでクイック ビューがアクティブで、
Tabを押してアクティブ フォーカスを右パネルに切り替える場合: - 右パネルはすぐに通常のファイル テーブルを復元し、ファイルを操作できるようになります。
- クイック ビューは、自動的かつシームレスに左パネルに切り替わり、右パネルで強調表示されているファイルのライブ プレビューを表示します。
- これにより、どのパネルで作業しているかに関係なく、中断のないナビゲーションと検査ループが維持されます。
2.4 インテリジェントなコンテンツルーティング¶
Quick View Container は、ファイル拡張子、MIME 署名、生のバイト ヘッダーを動的に検出して、最適なプレビュー エンジンを選択します。
| コンテンツ タイプ | 拡張機能 / 署名 | 組み込みプレビュー エンジン |
|---|---|---|
| ソース コードとテキスト | .py、.rs、.cpp、.c、.h、.js、.ts、 .html、.css、.json、.xml、.yaml、.md、プレーン テキスト ヒューリスティック |
TextPanel Pygments 構文の強調表示と行番号。 |
| ラスター画像とベクター画像 | .png、.jpg、.jpeg、.webp、.svg、.bmp、.gif、 .ico、.tiff |
ImagePanel はスムーズなダウンサンプリングとアスペクト比の維持を備えています。 |
| PDF ドキュメント | .pdf |
PdfPanel とネイティブ PySide6.QtPdf ページ レンダリング (幅に合わせる)。 |
| オーディオとビデオ メディア | .mp3、.wav、.flac、.aac、.m4a、.ogg、.mp4、 .mkv、.mov、.avi、.webm |
MediaPanel ミュートされたオーディオ プレビューと再生コントロールを備えています。 |
| 表形式のデータ | .csv、.tsv、.xlsx、.xls、.ods |
SpreadsheetPanel は読み取り専用のテーブル グリッドと列の自動サイズ調整を備えています。 |
| ドキュメントと電子書籍 | .docx、.odt、.rtf、.epub |
DocumentPanel / EpubPanel リッチテキスト ドキュメント レンダラー。 |
| データベース ファイル | .sqlite、.sqlite3、.db |
SqlitePanel とスキーマ ブラウザおよびテーブル データ ビューア。 |
| アーカイブ | .zip、.tar、.gz、.bz2、.xz、.7z |
ArchiveInspectorPanel は、圧縮されていないメンバー階層を表示します。 |
2.5 メタデータ プロパティのフォールバック (QuickViewPropertiesWidget)¶
テキストまたはメディアとしてレンダリングできないディレクトリまたはファイル形式を強調表示すると、ATBCmder は自動的に プロパティ フォールバック ビュー (QuickViewPropertiesWidget) に切り替わります。
┌────────────────────────────────────────────────────────┐
│ 📁 release_builds │
│ /Volumes/ExternalSSD/Projects/release_builds │
├────────────────────────────────────────────────────────┤
│ Metadata │
│ Full Path: /Volumes/ExternalSSD/... │
│ Size: Directory (or 148,290,112 bytes) │
│ Last Modified: 2026-09-06 14:10:22 │
│ Last Accessed: 2026-09-06 15:02:18 │
├────────────────────────────────────────────────────────┤
│ Permissions (UNIX) │
│ Octal Mode: 0755 │
│ Owner: [✔] Read [✔] Write [✔] Execute │
│ Group: [✔] Read [ ] Write [✔] Execute │
│ Others: [✔] Read [ ] Write [✔] Execute │
├────────────────────────────────────────────────────────┤
│ Checksums / Stats │
│ Contents: 42 files, 8 folders │
│ MD5: Calculating... ➔ 8f14e45fceea167a... │
│ SHA256: Calculating... ➔ 3a491d90bc1f4201... │
└────────────────────────────────────────────────────────┘
- ヘッダー カード: 高解像度のシステム アイコン、ファイル名、および親パスが表示されます。
- ファイル メタデータ: 正確なバイト サイズ、人間が判読できるサイズ (
KB、MB、GB、TB)、変更タイムスタンプ (mtime)、およびアクセス タイムスタンプを表示します。 (atime)。 - UNIX 権限マトリックス: 4 桁の 8 進数の権限モード (
0755、0644) を、所有者、グループ、その他の読み取り専用の 3x3 チェックボックス マトリックス (rwx) と並べて表示します。 - 非同期バックグラウンド ハッシュ: ファイルの場合、非同期バックグラウンド スレッド (
HashWorker) は、インターフェイスをブロックせずに MD5 および SHA-256 暗号化ハッシュを計算します。 ディレクトリの場合は、ネストされたファイルとサブフォルダーの合計数をスキャンしてレポートします。
3. ユニバーサル リスター (F3 / Fn+F3 / cm_View)¶
Quick View はデュアルパネル ウィンドウ内での高速プレビュー用に最適化されていますが、Universal Lister (F3 / Fn+F3 / cm_View) は、専用のトップレベルの非モーダル ウィンドウ (UniversalViewerDialog) を開きます。 複数の Universal Lister ウィンドウを同時に開くことができるため、ドキュメントを並べて比較したり、セカンダリ ディスプレイでログをストリーミングし続けることができます。
上部のクイックアクションツールバー¶
Lister には、ビュー モード、ナビゲーション、および表示設定に迅速にアクセスできる統合されたクイック アクション ツールバーが備えられています。
[Text (1)] [Hex (2)] [Wrap (Alt+W)] [Line Numbers (Alt+L)] [Tail (F5)] | [◀ Prev (P)] [Next ▶ (N)] | [🔍 Search (Ctrl+F)] [Go to Line (Ctrl+G)] | [Open in System (Ctrl+O)] [Fullscreen (F11)]
- テキスト モード (
1) / 16 進モード (2): デコードされた文字の表示と生のバイト検査を瞬時に切り替えます。 - ワードラップ (
Alt+W/⌥W): 長い行のソフトワードラップを切り替えます。 - 行番号 (
Alt+L/⌥L): 行番号のガターを切り替えます。 - テール モード (
F5): 自動的にスクロールし、新しく書き込まれたログ データをリアルタイムでキャプチャします。 - 前のファイル (
P) / 次のファイル (N): ビューア ウィンドウを閉じずに、親フォルダーのファイル テーブル内の隣接するファイルに移動します。 - 検索 (
Ctrl+F/Cmd+F): ドッキングされた下部の検索バーを開きます。 - 行に移動 (
Ctrl+G/Cmd+G): ターゲット コードに直接ジャンプするための行番号の入力を求めます。 - システムで開く (
Ctrl+O/Cmd+O): ファイルを macOS システムのデフォルト アプリケーション (プレビュー、Safari、Xcode など) に渡します。 - 全画面 (
F11/Alt+Enter): リスター ウィンドウを最大化してディスプレイ全体に表示します。
3.1 ドメイン 1: ドキュメントと構造化された書籍¶
ATBCmder には、構造化ドキュメント、スライドデッキ、電子ブック、書式設定されたテキスト用の特殊なレイアウト エンジンが組み込まれているため、外部のオフィス スイートの起動を待つ必要がなくなります。
3.1.1 Word およびリッチ テキスト ドキュメント (DocumentPanel)¶
Microsoft Word (.docx、.doc)、リッチ テキスト (.rtf)、または OpenDocument (.odt) ファイルで F3 を押すと、ATBCmder は DocumentPanel を実行します。
- ドキュメント ページ カード: 構造化されたページを中央の紙カード (
.doc-page) にレンダリングし、現代のワード プロセッサのレイアウトに一致する鮮明なタイポグラフィと余白を備えます。 - 書式設定の保持: 段落階層、太字/斜体/下線スタイル、フォントの色のバリエーション、順序なしリストと番号付きリスト、およびインライン ハイパーリンクを保持します。
- 複雑なテーブルと埋め込み画像のレンダリング: 境界線付きのセル間隔を持つ複雑な複数列のテーブル グリッドを解析し、埋め込まれたインライン ラスター イラストをレンダリングします。
- ページ ズームと検索: 詳細なページ ズーム コントロール (
Ctrl++/Ctrl+-またはズーム スピン ボックス) と統合された文書内検索バー (ViewerSearchBar)。
3.1.2 プレゼンテーション スライドデッキ (PresentationPanel)¶
For Microsoft PowerPoint presentations (.pptx, .ppt), ATBCmder launches PresentationPanel:
- スライド カード リーダー: 各スライドは抽出され、影付きの個別のプレゼンテーション カード (
.slide-card) としてフォーマットされるため、コンテンツを順番に確認できます。 - スライド セレクター ストリップ: ビジュアル ナビゲーション ドロワーには、サムネイル インデックス付きのすべてのスライドがリストされ、100 枚のスライド デッキ内の任意のスライドに即座にジャンプできます。
- スライド検索:
Cmd+Fを押して、スライドのタイトル、箇条書き、スピーカー ノート、吹き出しテキスト ブロックをデッキ全体で検索します。
3.1.3 PDF ドキュメント ビューア (PdfPanel)¶
PySide6.QtPdf および QPdfView をネイティブに利用する ATBCmder には、エンタープライズ グレードの PDF リーダーが組み込まれています。
図 4.2: ブックマークの概要、ページのサムネイル ストリップ、文書内検索、および読書テーマを備えた統合 PDF ビューア。
- 連続複数ページ スクロール: 複数ページ モード (
QPdfView.PageMode.MultiPage) で数百ページにわたってシームレスにスクロールするか、1 ページおよび 2 ページの本の見開きビューに切り替えます。 - ドキュメントサイドバー:
- 概要/ブックマーク ツリー: PDF 目次 (
QPdfBookmarkModel) の章またはセクションの見出しをクリックすると、そのセクションに直接ジャンプします。 - ページ サムネイル ストリップ: 垂直サムネイル リスト (
PdfThumbnailList) を介して、レイアウトとグラフィック要素を視覚的にスキャンします。 - ドキュメント内の検索と強調表示:
Cmd+Fを押してドキュメント全体のテキストを検索します。 リアルタイムの出現インデックス作成 (Match 3 of 28) により、一致したものが画面上で強調表示されます。EnterまたはShift+Enterを使用してオカレンス間をジャンプします。 - 読書テーマ:
- 通常: 標準的なドキュメント用紙のレンダリング。
- 反転ナイトモード: RGB ピクセルの輝度 (
InvertColorEffect) を反転し、暗い環境でも目に負担をかけずに快適に読書できます。 - セピアの暖かさ: 長時間にわたる文書レビュー中のブルーライトの放射を軽減する、柔らかい温かみのあるトーン。
- セキュリティと暗号化:
PdfPasswordDialogを介して暗号化された PDF ファイルのパスワードの入力をシームレスに要求し、PdfPropertiesDialogを介して作成者/プロデューサーのメタデータを検査します。
3.1.4 EPUB 電子ブック (EpubPanel)¶
EPUB 形式 (.epub) での技術文書、マニュアル、またはデジタル ブックの管理は、ATBCmder にネイティブです。
- デュアルエンジン アーキテクチャ: 最小限の環境では
QTextBrowserへの自動フォールバックを備えた高忠実度 Web エンジン レンダラー (豊富な CSS スタイルおよび SVG ベクター イラストレーション用のQWebEngineViewとEpubUrlSchemeHandler) を採用します。 - 目次サイドバー: ネストされた章ツリー (
QTreeView) を表示し、ワンクリックで本の章と付録の間を移動できます。 - タイポグラフィとフォントのスケーリング: 下部のツールバーのフォント スライダーを使用して、読み上げテキストのサイズを動的に調整します。
- 快適な読書テーマ: ライト、ダーク、セピアのカラー パレットを瞬時に切り替えます。
3.1.5 マークダウンドキュメント (MarkdownPanel)¶
README ファイル、テクニカル ノート、開発者ドキュメント (.md、.markdown) については、次のとおりです。
- GitHub-Flavored Markdown (GFM): ヘッダー、ブロック引用符、水平ルール、タスク リスト (
- [x])、および複数列テーブルをレンダリングします。 - コード ブロックの構文スタイル: 明確な背景のシェーディング、等幅のタイポグラフィ、および構文の色付けを使用して、フェンスで囲まれたコード ブロック (
python,bash, ```json) を自動的にフォーマットします。
3.2 ドメイン 2: データ、テーブル、開発者ランタイム¶
ATBCmder は、技術ユーザー、データ アナリスト、ソフトウェア エンジニア向けに、外部データベース クライアントやスプレッドシート アプリケーションのオーバーヘッドを排除する即時オフライン データ検査ツールを提供します。
3.2.1 高性能スプレッドシート (SpreadsheetPanel)¶
負荷の高いオフィス スイートで大きな CSV ファイルや複数シートの Excel ワークブックを開くと、10 ~ 20 秒かかることがあります。 ATBCmder の SpreadsheetPanel はそれらを即座にレンダリングします。
マルチシート タブと固定座標を備えた Universal Lister での高性能 Excel スプレッドシート プレビュー
- 形式のサポート: Microsoft Excel (
.xlsx、.xls)、カンマ区切り値 (.csv)、およびタブ区切り値 (.tsv)。 - マルチシート タブ: 複数のシートを含むワークブックには下部のタブ バー (
QTabBar) があり、データ シート間の素早い切り替えが可能になります。 - 仮想テーブル モデル (
VirtualSpreadsheetModel):canFetchMoreおよびfetchMoreを介した遅延増分行ロードを利用します。 最小限のメモリ使用量で、数十万行の CSV またはワークシートをスムーズにスクロールできます。 - 固定された列ヘッダーと行ヘッダー: 方向を明確にするために、標準のスプレッドシート座標 (
A, B, C...および1, 2, 3...) はスクロール中に固定されたままになります。 - クリップボード TSV エクスポート: 任意のセル範囲を選択し、
Cmd+C(⌘C) を押して、コード、Slack、またはターミナル パイプに貼り付ける準備ができたきれいなタブ区切り値としてフォーマットされたデータをコピーします。 - 高速検索:
Cmd+Fを押して、リアルタイムのセル フォーカスですべての列のセルの内容を検索します。
3.2.2 SQLite データベース ブラウザ (SqlitePanel)¶
外部 GUI クライアントを使用せずに SQLite データベース (.sqlite、.sqlite3、.db) を直接検査します。
- テーブルとビューのディレクトリ: 左側のサイドバーには、すべてのデータベース テーブルとビューがアクティブな行数とともにリストされます。 いずれかのテーブルをクリックすると、その内容がすぐにロードされます。
- 仮想化データ ビュー: 高性能
VirtualSpreadsheetModelを使用して、大規模なテーブルをシームレスにスクロールします。 - Interactive SQL クエリ コンソール: 上部のクエリ エディターにカスタム SQL クエリを入力し、
Ctrl+Return(またはCmd+Return) を押して実行します。 結果はテーブル ビューに即座に取り込まれます。 - データ型の書式設定: データを安全に処理します。バイナリ BLOB を
<BLOB: N B>として書式設定し、空のフィールドを斜体のNULLとして表示します。 - データのエクスポート: 右クリックして、選択したレコードをコピーするか、クエリ結果を CSV または TSV にエクスポートします。
3.2.3 Jupyter ノートブック (NotebookPanel)¶
データ サイエンスの実験、機械学習の実行、Python 分析ノートブック (.ipynb) を確認します。
- ゼロサーバー ネイティブ レンダリング: アクティブな Jupyter または JupyterLab サーバー デーモンを必要とせずに、JSON ノートブック構造を完全にオフラインで解析します。
- カードベースのセル レイアウト:
- マークダウン セル: 見出し、太字のテキスト、リストを備えたきれいなタイポグラフィーにレンダリングされます。
- コードセル: 構文強調表示された Python コード、行番号、セル実行バッジ (
[1]、[14]) でフォーマットされます。 - 出力ブロック: コンソール出力ストリーム、エラー トレースバック、およびインライン Base64 エンコードされたチャートとグラフ (PNG/SVG) を表示します。
3.2.4 コードとプレーンテキストの表示 (TextPanel)¶
主要なテキスト検査エンジンは、高速ブラウジングと膨大なデータ ダンプ向けに最適化されています。
- チャンク 64 KB ローダー (
FileLoaderWorker): 自動改行境界スナップ機能を使用して、大きなファイルを 64 KB ブロックで読み取り、スレッドのフリーズや UTF-8 マルチバイト文字の破損を防ぎます。 - Pygments 構文ハイライト: 動的なライト/ダーク モード適応により、150 を超えるプログラミングおよび構成言語がサポートされています。
- ダイナミック エンコーディング スイッチャー: ステータス バーの UTF-8、GB18030、Big5、Shift-JIS、Windows-1252、および ISO-8859-1 間の手動切り替えによる統計的文字セット検出 (
chardet)。 - ライブ テール モード (
F5):FileTailWatcherを使用して、追加ログ行をリアルタイムでストリーミングし、UNIXtail -fと一致させます。 もう一度F5を押して一時停止します。
3.2.5 未加工の 16 進バイト検査 (2 / 16 進モード)¶
バイナリ、ファームウェア ダンプ、コンパイルされたライブラリ、または破損したファイルを検査する場合:
- 16 バイトの 16 進グリッド: 8 桁の 16 進オフセット アドレス、2 つの 8 バイトのビジュアル列に分割された 16 の 16 進数バイト、および右側に印刷可能な ASCII テキスト (制御バイトの場合は
.) を表示します。 - 自動 16 進数検出: ファイルの最初の 1 KB 内でヌル バイト (
\x00) が検出された場合、ATBCmder は端末の文字化けを防ぐために自動的に 16 進数モードに切り替えます。
3.3 ドメイン 3: メディアとシステム資産¶
ATBCmder には、コアに直接組み込まれたハードウェア アクセラレーションのメディア プレーヤー、グラフィック ビューア、およびタイポグラフィ インスペクターが含まれています。
3.3.1 画像ビューア (ImagePanel)¶
サポートされている画像形式 (.png、.jpg、.webp、.svg、.gif、.bmp、 .ico、.tiff):
図 4.3: インタラクティブなキャンバスのズーム、回転、および EXIF メタデータ抽出を備えた統合イメージ ビューアー。
- インタラクティブ キャンバス: カーソル位置に固定されたスムーズなマウス ホイール ズーム (
SmoothPixmapTransform)、1:1 ピクセル検査、ウィンドウに合わせる、およびハンド ドラッグ パン。 - EXIF テレメトリ インスペクター: EXIF 情報 をクリックすると、カメラのメタデータ (メーカー、モデル、レンズの焦点距離、露出時間、絞り、ISO、GPS 座標) が抽出されます。
- チェッカーボード透明シーン (
CheckerboardScene): PNG、WebP、SVG 画像の透明アルファ チャネルは、業界標準のグレーと白のチェッカーボード グリッド上にレンダリングされます。
3.3.2 オーディオ プレーヤーとバックグラウンド再生モード (AudioPlayerDialog)¶
作業中にポッドキャスト、効果音、または音楽コレクションを再生します。
図 4.4: ID3 タグ解析、アルバム アートワーク、ドラッグ アンド ドロップ プレイリスト管理を備えた統合オーディオ プレーヤー。
- サポートされている形式: MP3、FLAC、WAV、AAC、M4A、OGG、およびミュータジェン ID3 タグとカバー アートワークの抽出を含む AIFF。
- バックグラウンド再生モード: プレーヤーの バックグラウンド ボタンをクリックします。 プレーヤー ウィンドウは、右パネルのバックグラウンド操作バー (
bg_ops_container) のコンパクトな ミニ プレーヤー コントローラー にドッキングされます。 - 現在再生中のトラックタイトルとアーティストを表示します。
- インタラクティブ再生ボタン: 前へ (
⏮)、再生/一時停止 (▶/⏸)、次へ (⏭)。 - ファイルの参照中、名前の一括変更の実行中、またはフォルダーの同期中も、音楽は中断されずに再生されます。
- ファイル パネルで追加のオーディオ ファイルに対して
F3を押すと、それらのファイルが実行中のプレイリストに自動的に追加されます。
図 4.5: パネル操作バーに直接埋め込まれたバックグラウンド ミニプレーヤー。
3.3.3 ハードウェア アクセラレーション ビデオ プレーヤー (MediaPanel)¶
ビデオ ファイルの場合 (.mp4、.mkv、.mov、.avi、.webm):
図 4.6: フローティング オンスクリーン ディスプレイ (OSD) コントロールを備えたハードウェア アクセラレーション ビデオ プレーヤー。
- ゼロオーバーヘッドデコーディング: macOS VideoToolbox と Apple Silicon GPU アクセラレーションを利用した
QtMultimediaを搭載しています。 - 自動フェード OSD コントロール: フローティング タイムライン スクラバー、ボリューム スライダー、再生コントロールは再生中にフェードアウトします。
- 字幕とトラックの切り替え: 埋め込みオーディオ ストリームと外部字幕ファイル (
.srt、.vtt) を切り替えます。 - 全画面モード:
F11を押すか、ダブルクリックして全画面表示にします。Escを押して戻ります。
3.3.4 フォント タイポグラフィ インスペクター (FontPanel)¶
システム フォントとデザイン フォントのプレビュー (.ttf、.otf、.woff、.woff2、.ttc):
- ウォーターフォール サイズ プレビュー: 標準デザイン ポイント サイズ: 12、16、20、24、32、48、および 64 ポイントにわたってプレビュー テキストをレンダリングします。
- カスタム テスト文字列: カスタム文字列を入力して、特定の文字のカーニングと句読点をテストします。
- バイリンガル パングラム: デフォルトのプレビューには、完全なバイリンガル パングラムが表示されます: 「素早い茶色のキツネが怠惰な犬を飛び越える 1234567890 敏捷的棕狐跃过懒狗」。
3.4 ドメイン 4: システム アーカイブとコミュニケーション¶
3.4.1 リスター内アーカイブ インスペクター (ArchivePanel)¶
Enter を押しながら、アーカイブ VFS 経由でファイル パネルでアーカイブを直接開き、アーカイブ (.zip、.tar、.7z、.tar.gz、 .tar.bz2、.tar.xz) は アーカイブ インスペクター を開きます。
- 高速な読み取り専用ツリー ビューで、内部ディレクトリ階層、メンバー数、非圧縮バイト サイズ、圧縮バイト サイズ、圧縮率を検査します。
3.4.2 電子メール アーカイブ ビューア (EmailPanel)¶
保存された電子メール通信およびメッセージ アーカイブの場合 (.eml、.msg):
- RFC 2047 MIME ヘッダー デコード: 国際的な送信者名、日付、CC 受信者、電子メールの件名を正確にデコードします。
- ビジュアル ヘッダー カード: 電子メール ヘッダーをクリーンなメタデータ カードにフォーマットします。
- リッチボディ切り替え: 書式設定された HTML メール本文と生のプレーンテキストを切り替えます。
- 添付ファイルの抽出: すべての埋め込み添付ファイルとファイル サイズを一覧表示し、ファイルを直接ディスクに抽出するための [添付ファイルを名前を付けて保存...] ボタンを提供します。
4. 内部エディタ: デュアルモード アーキテクチャ (F4 / Fn+F4 / cm_Edit)¶
ATBCmder は、インテリジェントな デュアルモード エディター ディスパッチ エンジン を備えています。
- カーソルがテキスト、コード、または設定ファイル上にある場合:
F4を押すと、内部コード エディタ (EditorWindow) が開きます。 - カーソルが画像ファイル (
.png、.jpg、.webp、.bmp、.svg) 上にある場合:F4を押すと、専用の画像エディタが自動的に起動します。 (ImageEditorDialog)!
アクティブなフォルダーで新しいファイルを最初から作成して編集するには、Shift+F4 (cm_EditNew) を押します。 ATBCmder は、ファイル名 (deploy.sh または docker-compose.yml) の入力を求め、ファイルを初期化し、すぐにエディターで開きます。
4.1 内部コードエディター (EditorWindow)¶
┌────────────────────────────────────────────────────────────────────────────────────────┐
│ Edit: /Users/brain/Projects/atbcmder/scripts/deploy.sh [*] │
├────────────────────────────────────────────────────────────────────────────────────────┤
│ [💾 Save] [Save As] | [↶ Undo] [↷ Redo] | [🔍 Find] [Replace] | [Wrap] [Lines] [Zoom] │
├──────┬─────────────────────────────────────────────────────────────────────────────────┤
│ 0001 │ #!/usr/bin/env bash │
│ 0002 │ set -euo pipefail │
│ 0003 │ │
│ 0004 │ echo "Deploying ATBCmder release bundle..." │
│ 0005 │ TARGET_DIR="/opt/atbcmder" │
│ 0006 │ if [ ! -d "$TARGET_DIR" ]; then │
│ 0007 │ mkdir -p "$TARGET_DIR" │
│ 0008 │ fi │
├──────┴─────────────────────────────────────────────────────────────────────────────────┤
│ Find: [deploy ] Replace: [release ] [Match 1 of 3] │
│ [Aa] Match Case [\b] Whole Word [.*] RegEx [Find Next] [Replace] [Replace All] │
├────────────────────────────────────────────────────────────────────────────────────────┤
│ Line 5, Col 12 | 8 lines | UTF-8 | LF (UNIX) | Bash Shell | [Modified *] │
└────────────────────────────────────────────────────────────────────────────────────────┘
コアコードエディター機能¶
- Pygments 構文ハイライト: ファイル拡張子やシバン行からの自動言語検出により、150 を超えるプログラミング、スクリプト、構成形式を認識します。
- 動的行番号ガッター: 視覚的な位置合わせで行番号を収容できるように、左マージンが動的に拡張されます。
- スマート自動インデントとブロック インデント:
Enterを押すと、インデントの空白が前方に進みます。 ブロックを選択し、Tabを押してインデントするか、Shift+Tabを押してインデントを解除します。 - ソフト ワード ラップ (
Alt+W/⌥W): ハード改行を挿入せずに、ウィンドウ境界で長い行を折り返します。 - ズーム コントロール:
Cmd++(⌘+)、Cmd+-(⌘-) を使用してタイポグラフィを簡単に拡大縮小するか、Cmd+0(⌘0) でリセットします。
インタラクティブな検索と置換バー (EditorReplaceBar)¶
Cmd+F (⌘F) または Cmd+Option+F (⌥⌘F) を押すと、検索と置換バーが下部にドッキングされます。
- 出現インデックスを使用したリアルタイム増分検索 (
Match 4 of 19)。 - 検索フラグ: 大文字と小文字を区別 (
[Aa])、単語全体 ([\b])、および Python 正規表現 ([.*])。 - バッチ アクション: 置換 (現在の箇所) および すべて置換 (ドキュメント全体)。
ステータスバーとアトミックセーブ保護¶
- テレメトリ: 行、列、総行数、エンコーディング、および改行規則 (
LFとCRLF) を表示します。 - ダーティ状態バッジ: 未保存の編集が存在する場合は、目立つ
*インジケーターがタイトル バーとステータス バーに表示されます。 - アトミック保存保護:
Cmd+Sを押すと、ATBCmder は同じボリューム上の一時ファイルにデータを書き込み、ディスク バッファを同期し、アトミック置換を実行します。これにより、保存中にクラッシュや電源切断が発生した場合でも、元のファイルが破損することがなくなります。
4.2 専用画像エディター (ImageEditorDialog)¶
グラフィックまたはスクリーンショット上で F4 を押すと、ATBCmder は包括的な 画像エディタ を開きます。
インタラクティブなキャンバスと変換¶
- チェッカーボードの背景 (
CheckerboardScene): 透明なグラフィックスがきれいなグレーと白のグリッド上にレンダリングされ、アルファ境界線が明確に表示されます。 - 回転と反転: 時計回り/反時計回りに 90 度回転し、任意のレベリング角度を微調整したり、水平および垂直にミラーリングしたりできます。
- ズームとパン: カーソル追跡とハンドドラッグナビゲーションによるスムーズなズーム。
アスペクト比プリセットによるトリミング¶
- キャンバスのハンドルをドラッグして、トリミングの境界を定義します。
- フリーフォーム、1:1 スクエア (アバター/アプリ アイコン)、4:3 クラシック、16:9 シネマ アスペクト比を切り替えます。
Enterを押して適用します。
ベクトル注釈¶
- 長方形と円: カスタムの境界線の幅とパレットの色を使用してインターフェイス要素を強調表示します。
- 方向矢印: 鋭いベクトル吹き出し矢印を描画します。
- フリーハンド ペン: フリーハンドの修正や署名をキャンバスに直接スケッチします。
- テキスト スタンプ: カスタマイズ可能なフォント、サイズ、色、微妙なドロップ シャドウを使用してタイポグラフィを追加します。
プライバシー編集 (モザイク / ぼかし)¶
機密トークン、顧客名、電話番号を含むスクリーンショットを共有する必要がありますか?
- モザイク/ぼかしツールを選択します。
- 選択ボックスを機密情報の上にドラッグします。
- ATBCmder は、可変半径ピクセル化またはガウスぼかしを適用し、エクスポート前に機密データを安全に編集します。
ウォーターマークモジュール¶
4 つのプリセット配置を使用して、プロフェッショナルなオーナーシップのブランディングを適用します。
- タイル表示 (
tiled): キャンバス全体を覆う斜めの繰り返し透かしパターン (機密ドラフトに最適)。 - スタンプ (
stamp): 右下隅に配置される個別の認証スタンプ。 - バナー (
banner): キャンバス全体に表示される水平方向の半透明のブランド バナー。 - 単一ロゴ (
single): 不透明度スライダーを使用して、自由に配置可能な単一ロゴまたはテキスト透かし。
4.3 シームレスなラウンドトリップ VFS 編集 (リモートおよびアーカイブ)¶
ATBCmder のエディタ サブシステムの最も強力な点は、ユニバーサル VFS 統合 です。
- リモート SFTP サーバーに保存されているシェル スクリプト、AWS Nextcloud WebDAV マウント内の設定ファイル、またはネストされた
.zipアーカイブ (vfs://) 内のスクリーンショットでF4を押すかどうか: - ATBCmder は、ファイルを安全な一時サンドボックスに非同期的にダウンロードします。
- ファイルは
EditorWindowまたはImageEditorDialogで開きます。 Cmd+Sを押すと、ATBCmder は保存イベントをインターセプトし、変更されたファイルを同期し、更新されたデータを SFTP/SMB 経由で自動的にストリーミングして戻すか、RepackWorkerを実行してアーカイブを再パックします。- エディタを閉じると、一時キャッシュ ファイルがきれいにスクラブされます。 ファイルを手動で解凍、編集、再アップロードする必要はありません。
5. ⚡ プロのヒントと詳細¶
これらの高度な機能をマスターして、検査と編集の効率を最大限に高めます。
プロのヒント 1: F3 を使用した動的オーディオ キューの取り込み¶
音楽コレクションを参照しているときにオーディオ プレーヤーを バックグラウンド再生モード で実行している場合、さらに音楽をキューに入れるためにダイアログを再度開く必要はありません。
- いずれかのファイル パネルで 1 つ以上のオーディオ ファイルを強調表示します。
F3(またはFn+F3) を押します。- ATBCmder は、オーディオ プレーヤー インスタンスがすでにアクティブであることを検出し、現在再生中のトラックを中断することなく、実行中のプレイリスト (
append_tracks) に自動的に選択されたトラックを追加します。
プロのヒント 2: カスタム ファイルの関連付け (cm_FileAssoc)¶
デフォルトでは、F3 を押すとユニバーサル リスターが開き、F4 を押すと内部コード エディターが開きます。 ただし、ファイル関連付けマネージャー (cm_FileAssoc) を使用して、特定のファイル拡張子を外部デスクトップ アプリケーションまたはカスタム シェル コマンドにマップできます。
構成 ➔ ファイル関連付けの構成 に移動します。
- 拡張機能 (
*.rs、*.py、*.psdなど) をカスタム アクションにマッピングできます。 - 内部コマンド: 内部コマンダーのアクションにバインドします (例:
cm_View、cm_Edit)。 - トークン置換を使用した外部シェル コマンド:
%f➔ 絶対ファイル パスに置き換えられます (例:/Users/brain/main.rs)。%d➔ 親ディレクトリのパスに置き換えられます (例:/Users/brain)。%n➔ 拡張子なしのファイル名に置き換えられます (例:main)。%e➔ ドットなしのファイル拡張子に置き換えられます (例:rs)。
Rust ファイルの外部関連付けの例:
bash
code --goto %f
### プロのヒント 3: DevOps ログのライブ テール モード (`F5`)
ローカル サーバー デーモン、Docker コンテナ、またはビルド スクリプトをデバッグするときは、Universal Lister でログ ファイル (`F3`) を開き、**`F5`** を押します。
- `FileTailWatcher` デーモンを使用します。
- Lister は自動的に一番下までスクロールし、新しく追加された行をリアルタイムで画面にストリーミングし、UNIX `tail -f` の動作と一致します。
- 発生したエラーを追跡しながら、検索フィルターをアクティブにしておくことができます。
### プロのヒント 4: マルチギガバイト ファイルの任意のオフセット ストリーミング
20 GB のデータベース ダンプまたはディスク イメージを検査する必要がある場合は、標準のエディターで開かないでください。 ATBCmder のユニバーサル リスターでは次のようになります。
- **行に移動 (`Ctrl+G`)** またはジャンプ スライダー コントロールを使用します。
- 基礎となる `FileLoaderWorker` は、直接バイナリ ファイル ポインター シーク (`fh.seek(offset)`) を使用し、ビューのレンダリングに必要な正確な 64 KB ブロックのみを読み取ります。
- メモリ オーバーヘッドをゼロにしながら、数テラバイトのボリュームの任意のセクタを瞬時に検査できます。
---
## 6. ステップバイステップの実践的なレシピ
### レシピ 1: 機密性の高いスクリーンショットの検査と編集
**目標**: 機密 API トークンまたは顧客情報を含むスクリーンショットをキャプチャしたので、公開問題追跡ツールにアップロードする前にそれを編集する必要があります。
7. 安全性とシステムの警告¶
Warning
外部変更ウォッチャー
内部エディタ (F4) での作業中に、開いているファイルが外部アプリケーションによって変更または切り捨てられると、ATBCmder は保存する前に外部変更の競合警告を表示します。 最新のディスク バージョンを検査するには常に [再ロード] を選択し、ローカルの変更を別のファイルに保存するには [名前を付けて保存] を選択してください。
Important
バイナリ ファイルの安全性: テキスト モードと 16 進モード
不明なバイナリ ファイルをテキスト モードで開き、ディスクに保存し直すと、UTF-8 デコード置換によりファイルが永久に破損する可能性があります (\ufffd)。 ATBCmder の Universal Lister はデフォルトで読み取り専用なので、検査中にバイナリ ファイルが誤って上書きされることはありません。
Caution
リモート ネットワーク共有のパフォーマンスを簡単に表示
クイック ビュー (Cmd+Q) がアクティブな状態で高遅延リモート サーバー (FTP、SFTP、または WebDAV) を参照している場合、大量のリモート ビデオまたはアーカイブ ファイルをプレビューすると、リモート ストリーミングがトリガーされます。 ネットワーク帯域幅が制限されている場合は、クイック ビューをオフ (Cmd+Q) に切り替えて、ディレクトリ ツリーをフルスピードで参照します。
Tip
macOS ファンクション キーのアクセシビリティ
最新の Apple MacBook および Magic Keyboard では、ファンクション キー (F1-F12) はデフォルトでハードウェア コントロール (明るさ、メディア再生) にマップされています。 F3 または F4 をトリガーするには、Fn キーを押し続けます (例: Fn+F3、Fn+F4)。 あるいは、macOS システム設定 ➔ キーボード ➔ キーボード ショートカット ➔ ファンクション キー で 「F1、F2 などのキーを標準のファンクション キーとして使用する」 を有効にします。
8. デュアル マトリックス キーボードのリファレンス テーブル¶
| 機能エリア | アクションの説明 | macOS ショートカット | クラシック コマンダー キー | コマンドID |
|---|---|---|---|---|
| クイックビュー | 反対側のパネルのプレビューを切り替え | Cmd+Q / ⌘Q |
Ctrl+Q |
cm_QuickView |
| クイックビュー | スイッチパネルとフリッププレビュー | Tab / ⇥ |
Tab |
cm_SwitchPanel |
| リスター | Universal Lister でファイルを開く | F3 / Fn+F3 |
F3 |
cm_View |
| リスター | プレーンテキスト表示モード | 1 |
1 |
— (リスト) |
| リスター | 生の 16 進表示モード | 2 |
2 |
— (リスト) |
| リスター | ワードラップを切り替え | Alt+W / ⌥W |
Alt+W |
— (リスター/編集者) |
| リスター | 行番号を切り替え | Alt+L / ⌥L |
Alt+L |
— (リスター/編集者) |
| リスター | ライブログテールモードを切り替える | F5 / Fn+F5 |
F5 |
— (リスト) |
| リスター | ディレクトリ内の前のファイル | P |
P |
— (リスト) |
| リスター | ディレクトリ内の次のファイル | N |
N |
— (リスト) |
| リスター | テキストを検索 | Cmd+F / ⌘F |
Ctrl+F |
— (リスター/編集者) |
| リスター | 行番号に移動 | Cmd+G / ⌘G |
Ctrl+G |
— (リスター/編集者) |
| リスター | システムのデフォルトのアプリで開く | Cmd+O / ⌘O |
Ctrl+O |
— (リスト) |
| リスター | 全画面切り替え | F11 / Fn+F11 |
F11 |
cm_FullScreen |
| 編集者 | 選択したファイルを編集 (コード/画像) | F4 / Fn+F4 |
F4 |
cm_Edit |
| 編集者 | 新しいファイルの作成と編集 | Shift+F4 / ⇧F4 |
Shift+F4 |
cm_EditNew |
| 編集者 | ファイルの保存 (アトミック) | Cmd+S / ⌘S |
Ctrl+S |
— |
| 編集者 | ファイルに名前を付けて保存 | Shift+Cmd+S / ⇧⌘S |
F12 |
— |
| 編集者 | ファイルを再ロード/元に戻す | Cmd+R / ⌘R |
Ctrl+R |
— |
| 編集者 | エディタウィンドウを閉じる | Cmd+W / ⌘W |
Esc |
— |
| 編集者 | ドキュメント内で検索 | Cmd+F / ⌘F |
Ctrl+F |
— |
| 編集者 | 検索と置換 | Cmd+Option+F / ⌥⌘F |
Ctrl+H |
— |
| 編集者 | 選択したブロックをインデントする | Tab / ⇥ |
Tab |
— |
| 編集者 | 選択したブロックのインデントを解除 | Shift+Tab / ⇧⇥ |
Shift+Tab |
— |
| 編集者 | 拡大/縮小/リセット | ⌘+ / ⌘- / ⌘0 |
Ctrl++ / Ctrl+- / Ctrl+0 |
— |
| メディア | バックグラウンドオーディオ再生 | [Background] をクリックします。 — |
— | |
| メディア | オーディオをプレイリストに追加 | F3 (再生時) |
F3 |
cm_View |
| 構成 | ファイル関連付けマネージャー | 設定メニュー | — | cm_FileAssoc |
複雑なワークフローとバッチ処理を自動化する準備はできましたか?