第 4 章:全能萬用檢視器與內建編輯器¶
在正統雙面板檔案管理體系中,工作效率在很大程度上取決於檔案的審視與微調速度。僅僅為了驗證一個雜湊值、查閱一行配置檔案、裁剪一張截圖或翻看一份 PDF,就不得不啟動龐大笨重的整合開發環境 (IDE) 或外部大型軟體,不僅極大地消耗記憶體,還會造成大量視窗堆疊的認知負擔。
ATBCmder 透過在應用程式核心中直接整合一套多引擎、高效能的全能檢視與編輯子系統徹底解決了這一痛點。無論是在左右面板之間巡航時的低延遲無感即時預覽、深入二進位制位元組底層的 Hex 模式、在整理檔案時在後臺靜默播放的音樂播放器,還是具備語法高亮與原子級安全寫入的程式碼編輯器,均可透過純鍵盤瞬時召喚。
1. 快速上手:即時檔案審視與編輯¶
ATBCmder 將檔案的檢查與修改劃分為兩大清晰模式:
- 對側面板快速預覽 (
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] 開啟/關閉快速預覽 [F3] 全能檢視器 [F4] 內建輕量程式碼/影像編輯器│
└────────────────────────────────────────────────────────────────────────────────────────┘
核心預覽與編輯雙矩陣速查表¶
| 操作功能 | macOS 原生快速鍵 | 經典 Commander 鍵位 | 命令標識 (Command ID) | 功能說明 |
|---|---|---|---|---|
| 切換快速預覽 | Cmd+Q / ⌘Q |
Ctrl+Q |
cm_QuickView |
在對側閒置面板中即時開啟/關閉實時檔案預覽 |
| 全能檢視器 | F3 / Fn+F3 |
F3 |
cm_View |
在獨立視窗中開啟所選檔案(只讀多引擎預覽) |
| 內建雙模編輯器 | F4 / Fn+F4 |
F4 |
cm_Edit |
文字自動進程式碼編輯器,圖片自動進影象編輯器 |
| 新建並編輯檔案 | Shift+F4 / ⇧F4 |
Shift+F4 |
cm_EditNew |
輸入檔名,建立新檔案並立即開啟編輯 |
| 切換面板與翻轉 | Tab / ⇥ |
Tab |
cm_SwitchPanel |
切換面板焦點,同時將快速預覽對稱映像檔翻轉 |
| 十六進位制 Hex 模式 | 2 |
2 |
— (Lister 內部) | 在檢視器中瞬間切換為位元組級 Hex 十六進位制檢視 |
| 純文字模式 | 1 |
1 |
— (Lister 內部) | 退出 Hex 模式,恢復格式化文字顯示 |
| 自動折行切換 | Alt+W / ⌥W |
Alt+W |
— (Lister/Editor) | 切換長行文字自動軟折行顯示 |
| 行號顯隱切換 | Alt+L / ⌥L |
Alt+L |
— (Lister/Editor) | 開啟或隱藏左側程式碼行號槽 |
| 實時日誌跟蹤模式 | F5 / Fn+F5 |
F5 |
— (Lister 內部) | 實時流式捕獲追加的日誌輸出 (類似 tail -f) |
| 後臺音樂播放 | 點選 後臺播放 按鈕 |
— | — | 將音訊播放器無縫摺疊至右側面板狀態列中持續播放 |
| 配置檔案關聯 | 選單: 配置 | — | cm_FileAssoc |
自定義副檔名對應呼叫的外部工具與宏引數 |
2. 對側面板快速預覽 (Cmd+Q / Ctrl+Q / cm_QuickView)¶
對側快速預覽 (Quick View) 是雙面板管理器的效率王牌之一。無需頻繁開啟和關閉浮動視窗,當你在一側資料夾中順次翻閱成百上千張檔案時,對側面板會自動變為一個隨游標聯動的沉浸式視口。

圖 4.1:嵌入對側面板的快速預覽檢視,一邊瀏覽目錄一邊實時展現程式碼語法高亮。
2.1 雙面板協同預覽優勢¶
開啟快速預覽的工作流程:
- 在當前啟用面板中移動游標選定任意檔案或資料夾。
- 按下
Cmd+Q(⌘Q)或Ctrl+Q(cm_QuickView)。 - 對側閒置面板即刻退出原有的檔案列表,轉變為 快速預覽容器 (
QuickViewContainer),直接渲染游標所在檔案的真實內容。 - 再次按下
Cmd+Q或Ctrl+Q,即可一鍵關閉預覽,對側面板瞬間無損恢復原先的分頁與資料夾列表。
2.2 100 毫秒防抖動極速巡航¶
當長按鍵盤 ↑ 或 ↓ 鍵在海量目錄中快速滾動時,普通的預覽元件極易造成主介面嚴重卡頓甚至劇烈的磁碟尋道風暴。
ATBCmder 內建了精密調優的 100 毫秒單次防抖定時器 (_quick_view_timer):
- 當游標在行間疾速掠過時,系統僅在記憶體中暫存目標路徑;
- 只有當游標在某個條目上穩定停留超過 100 毫秒時,底層才會觸發檔案讀取、語法樹解析或多媒體解碼;
- 即便翻閱幾千張高畫素 RAW 照片或巨型資料轉儲,列表依然能穩定保持 60+ FPS 的絲滑體驗。
2.3 按 Tab 鍵實現對稱映像檔翻轉 (Symmetric Focus Flipping)¶
在許多傳統軟體中,一旦切換面板焦點,原有的預覽就會中斷消失。ATBCmder 首創了對稱映像檔翻轉引擎:
- 假設快速預覽正在右面板呈現,此時你按下
Tab鍵將鍵盤焦點轉移至右側: - 右面板會瞬間退出預覽模式,無縫還原為可互動的檔案表格,供你挑選檔案;
- 快速預覽檢視會自動映像檔切換至左面板,實時展示右面板游標當前高亮的檔案!
- 無論焦點落在左欄還是右欄,整個瀏覽審閱流程永不中斷。
2.4 智慧格式路由機制¶
快速預覽容器會智慧檢測副檔名、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)¶
當你把游標移動到資料夾目錄、或遇到完全未知的專有二進位制檔案時,快速預覽會自動無縫降級為後設資料屬性面板:
┌────────────────────────────────────────────────────────┐
│ 📁 release_builds │
│ /Volumes/ExternalSSD/Projects/release_builds │
├────────────────────────────────────────────────────────┤
│ 後設資料資訊 │
│ 絕對路徑: /Volumes/ExternalSSD/... │
│ 佔用大小: 資料夾目錄 (共 148,290,112 位元組) │
│ 修改時間: 2026-09-06 14:10:22 │
│ 訪問時間: 2026-09-06 15:02:18 │
├────────────────────────────────────────────────────────┤
│ UNIX 許可權矩陣 (chmod) │
│ 八進位制模式: 0755 │
│ 所有者: [✔] 讀取 [✔] 寫入 [✔] 執行 │
│ 所屬群組: [✔] 讀取 [ ] 寫入 [✔] 執行 │
│ 其他人: [✔] 讀取 [ ] 寫入 [✔] 執行 │
├────────────────────────────────────────────────────────┤
│ 統計與雜湊校驗 │
│ 包含內容: 42 個檔案, 8 個子資料夾 │
│ MD5 摘要: 正在非同步計算... ➔ 8f14e45fceea167a... │
│ SHA256: 正在非同步計算... ➔ 3a491d90bc1f4201... │
└────────────────────────────────────────────────────────┘
- 標頭資訊卡:展示高保真系統圖示、名稱及父級路徑。
- 精確後設資料:顯示單位元組大小與人類易讀規格(
KB,MB,GB)、修改時間 (mtime) 與訪問時間 (atime)。 - UNIX 許可權矩陣:實時顯示四位八進位制許可權碼(如
0755、0644)及只讀的 3x3 許可權矩陣勾選。 - 後臺非同步雜湊計算:針對檔案,後臺執行緒 (
HashWorker) 會在不阻塞介面的情況下計算 MD5 和 SHA-256 雜湊值;針對資料夾,則自動完成檔案與子目錄的遞迴統計。
3. 全能檢視器 Lister (F3 / Fn+F3 / cm_View)¶
如果說快速預覽旨在實現雙面板內部的高速檢視,那麼全能檢視器 Universal Lister(F3 / Fn+F3 / cm_View)則是為深度分析量身定製的獨立視窗 (UniversalViewerDialog)。你可以同時開啟多個檢視器視窗並排對照,甚至拖放到外接雙顯示器上持續監控實時日誌。
頂部快捷操作工具欄¶
檢視器頂部配備了一體化的高效控制條:
[文字 (1)] [Hex (2)] [自動換行 (Alt+W)] [顯示行號 (Alt+L)] [實時追蹤 (F5)] | [◀ 上一個 (P)] [下一個 ▶ (N)] | [🔍 查詢 (Ctrl+F)] [跳轉到行 (Ctrl+G)] | [系統開啟 (Ctrl+O)] [全屏 (F11)]
- 文字模式 (
1) / 十六進位制模式 (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 內建了強大的文件解析核心,無需等待笨重的 Office 辦公套件漫長啟動。
3.1.1 Word 與富文字文件 (DocumentPanel)¶
按下 F3 檢視 Word (.docx, .doc)、富文字 (.rtf) 或 OpenDocument (.odt) 檔案:
- 卡片式頁面排版:採用居中陰影卡片模式 (
.doc-page),邊距與排版嚴格貼合現代字處理排版標準。 - 格式完好保留:完整保留段落標題層級、加粗/斜體/下劃線、顏色微調、無序與有序列表,以及可點選的超連結。
- 多列表格與內嵌圖渲染:原生支援多列表格排版,自適應單元格間距,並高保真繪製內嵌圖。
- 縮放與全文檢索:支援平滑縮放(
Ctrl++/Ctrl+-),並透過ViewerSearchBar在數萬字的長文中進行快速檢索。
3.1.2 簡報幻燈片 (PresentationPanel)¶
針對 PowerPoint 簡報 (.pptx, .ppt):
- 幻燈片卡片瀏覽:每一張幻燈片均被提取為一個帶投影的獨立畫幅卡片 (
.slide-card),方便上下逐頁檢閱。 - 幻燈片側邊抽屜:左側滑動抽屜展示全部幻燈片的微縮索引圖,百頁 PPT 也能一秒直達。
- 內容全文搜尋:按
Cmd+F可穿透檢索幻燈片標題、正文要點、演講者備註及文字註釋框。
3.1.3 PDF 專業級閱讀器 (PdfPanel)¶
由 PySide6.QtPdf 與 QPdfView 原生硬核驅動:

圖 4.2:PDF 閱讀器具備大綱目錄樹、頁面縮圖側邊欄、全文高亮檢索與深色護眼模式。
- 連續平滑多頁滾動:支援連續滾動模式 (
QPdfView.PageMode.MultiPage),亦可自由切換單頁或雙頁跨頁模式。 - 多功能側邊導航欄:
- 目錄大綱樹:點選 PDF 章節書籤 (
QPdfBookmarkModel) 瞬間跳轉對應頁碼。 - 縮圖預覽列表:透過垂直側邊欄 (
PdfThumbnailList) 直觀翻閱圖文版式。 - 全文高亮與命中索引:按
Cmd+F實時檢索,命中的文字全部高亮顯示,並標註序號(如第 3 處 / 共 28 處),支援Enter/Shift+Enter來回穿梭。 - 三大閱讀主題:
- 標準模式:原版白紙黑字呈現。
- 反色夜間護眼模式:智慧反轉 RGB 畫素亮度 (
InvertColorEffect),夜間閱讀不刺眼。 - 暖色羊皮紙:大幅濾除有害藍光,呵護長時間文字閱讀。
- 加密解密與安全屬性:內建
PdfPasswordDialog優雅支援口令解密,並透過PdfPropertiesDialog檢視 PDF 作者與生成引擎資訊。
3.1.4 EPUB 電子書閱讀器 (EpubPanel)¶
針對技術手冊、電子教程及書籍 (.epub):
- 雙核架構:優先採用
QWebEngineView配套EpubUrlSchemeHandler渲染複雜 CSS 樣式與 SVG 向量排版;在極簡環境下自動平滑降級至QTextBrowser。 - 目錄樹側欄:透過
QTreeView展開層級章節,單機即閱。 - 字號無級縮放:底部工具欄滑動條實時縮放閱讀文字大小。
- 多主題適配:明亮白、暗夜黑與復古淺黃一鍵切換。
3.1.5 Markdown 格式化解析 (MarkdownPanel)¶
針對工程 README、技術備忘與開發規範 (.md, .markdown):
- GitHub 規範支援 (GFM):高保真排版各級標題、引用塊、分割線、任務打勾清單 (
- [x]) 與複雜表格。 - 程式碼塊專屬著色:對
```python、```bash等語法塊渲染專屬灰度背景、等寬程式碼字型及邊框。
3.2 領域 2:資料分析、表格與開發者套件¶
針對開發者、資料分析師與運維工程師,ATBCmder 提供了一整套免啟動第三方客戶端的離線輕量資料檢視工具。
3.2.1 高效能電子表格 (SpreadsheetPanel)¶
在大型 Office 套件中開啟幾十兆的 CSV 或多工作表 Excel 往往需要耗費十餘秒,而在 ATBCmder 中則是毫秒級瞬開:

全能檢視器中的 Excel 表格流式預覽,支援多工作表標籤欄與行列座標定位
- 全格式支援:相容 Excel (
.xlsx,.xls)、逗號分隔符 (.csv) 與製表符分隔符 (.tsv)。 - 多工作表標籤欄:包含多個 Sheet 的工作簿會在底部展示原生的
QTabBar標籤,點選自由切換。 - 虛擬表格流式模型 (
VirtualSpreadsheetModel):利用canFetchMore和fetchMore實現按需流式懶載入。面對幾十萬行的巨型 CSV 資料,記憶體消耗極低,上下滾動不卡頓。 - 行列座標凍結:表格頂部的字母列標(
A, B, C...)與左側的行號(1, 2, 3...)始終凍結懸浮定位。 - 剪貼簿 TSV 格式匯出:框選任意單元格區域按
Cmd+C(⌘C),內容自動以標準 TSV 製表符格式存入剪貼簿,可直接貼上到程式碼、終端機機機或 Slack 中。 - 單元格快速定位:按
Cmd+F輸入關鍵字,游標瞬移定位到命中行。
3.2.2 SQLite 資料庫極速檢視器 (SqlitePanel)¶
無需開啟外部 Navicat 或 DBeaver,直接穿透檢視 SQLite 庫檔案 (.sqlite, .sqlite3, .db):
- 表與檢視目錄樹:左側面板完整列出所有資料表和檢視名,並實時統計行數。點選任意表名即刻在右側載入。
- 虛擬化資料瀏覽:依託
VirtualSpreadsheetModel順暢翻閱數十萬條海量資料記錄。 - 互動式 SQL 查詢控制檯:在頂部的 SQL 編輯區輸入自定義語句,按下
Ctrl+Enter(或Cmd+Enter)即可立即執行並展示結果集。 - 安全資料型別化:二進位制資料流安全呈現為
<BLOB: N 位元組>,空值以斜體NULL標識,防止亂碼報錯。 - 結果集匯出:右鍵點選即可將當前查詢資料快速匯出為 CSV 或 TSV 格式。
3.2.3 Jupyter Notebook 離線免服務解析 (NotebookPanel)¶
檢視 Python 資料科學、AI 模型訓練與演算法 Notebook (.ipynb):
- 零服務端純本地離線解析:完全不需要在本地後臺啟動 Jupyter Server 或 Python 環境。
- 卡片式 Cell 互動排版:
- Markdown Cell:渲染為清晰易讀的圖文說明。
- Code Cell:帶語法高亮、行號及專屬執行批次角標(如
[1],[14])。 - Output 區域:完美呈現控制檯列印文字、報錯呼叫棧,以及嵌入的 base64 PNG/SVG 資料圖表。
3.2.4 原始碼與長文字流式檢視 (TextPanel)¶
主文字渲染引擎專為極速載入與超大日誌設計:
- 64 KB 分塊安全讀取 (
FileLoaderWorker):以 64 KB 為單位進行塊級流式載入,並智慧對齊換行邊界,杜絕主執行緒凍結與多位元組 UTF-8 截斷亂碼。 - Pygments 豐富語法著色:支援超過 150 種程式語言與配置檔案,並隨系統明暗主題自適應色彩。
- 智慧編碼檢測與切換:整合
chardet字符集探測,並在底部狀態列提供 UTF-8、GB18030、Big5、Shift-JIS、Windows-1252 等一鍵編碼過載。 - 實時日誌追加跟蹤 (
F5):啟用FileTailWatcher引擎,實時捕獲外界寫入的新日誌並自動滾屏,完美復刻 UNIXtail -f體驗。
3.2.5 原始二進位制 Hex 檢視模式 (2 / Hex Mode)¶
在分析可執行二進位制程式、韌體轉儲或損壞的檔案碎片時:
- 16 位元組 Hex 矩陣:經典三列結構——左側為 8 位十六進位制偏移地址,中間為每行 16 位元組(分成兩組 8 位元組)的十六進位制碼,右側為可見 ASCII 對映(不可見字元用
.標識)。 - 零位元組自動 Hex 探測:若在檔案開頭的 1 KB 內部探測到了空位元組