(つ`ω´)つ says to Ubuntu 台灣社群
FIM:Linux 畫面緩衝區(framebuffer)影像檢視器 (★ 102 分) FIM 是從早期 Linux framebuffer (直接對顯示緩衝區繪圖的介面) 影像檢視器 fbi 分支出來的輕量級工具,主打鍵盤操作、高度可客製與可寫腳本,設計理念明顯受到 Vim 與 Mutt 影響。它雖以 GNU/Linux 為核心,但也可建置在多種 Unix 系統,甚至在調整後執行於 Windows、WebAssembly (可在瀏覽器環境執行的格式) 與 Android 的 Termux 終端環境。FIM 會依環境自動挑選輸出模式,包含 GTK3 (圖形介面函式庫)、SDL (Simple DirectMedia Layer,跨平台圖形多媒體函式庫)、Linux framebuffer,以及透過 libcaca 或 AAlib 輸出的 ASCII art (以文字字元模擬圖像),因此既能全螢幕看圖,也能在純終端或遠端連線情境下工作。 這套工具的重點不只是開圖,而是把影像瀏覽變成可編排的工作流程。使用者可以遞迴讀入相片目錄,以 n、p、+、- 等快捷鍵切換、縮放、旋轉、鏡射,也能透過說明檔為每張圖附加註解、自訂欄位與篩選條件,再配合 limit 篩選命令與標記機制快速縮小清單、挑選照片或在結束時輸出名單。FIM 還能在狀態列顯示 EXIF (Exchangeable Image File Format,相機影像中繼資料),例如快門、光圈與 ISO 感光度,並允許在 ~/.fimrc 中自訂狀態列格式、按鍵綁定、別名與自動命令;文章也示範它如何透過 mailcap 設定整合 Mutt,在 SSH (Secure Shell,安全殼層) 連線時自動改用 ASCII art 模式。 官網同時提供相當完整的手冊與語言參考,說明 FIM 內建命令語言的文法、變數、別名與啟動參數;它甚至能從標準輸入讀圖、呼叫外部轉換器處理 XCF (GIMP 原生格式)、SVG (Scalable Vector Graphics,向量圖)、NEF (Nikon RAW 格式)、PDF 等格式,或透過 fimgs 包裝腳本瀏覽 PDF、PostScript (頁面描述語言)、DVI (TeX 排版輸出格式) 與壓縮漫畫檔。2024 年 5 月的 0.7.1 版延續 0.7.0 的大改版方向,新增 GTK3 視窗模式、Wayland (Linux 新式顯示協定) 偵測、AVIF/WebP/QOI 等新圖像格式讀取、滑鼠捲動與更完整的搜尋功能,並修正 SDL、GTK、建置流程與記憶體相關問題。整體而言,FIM 雖然介面古樸,卻是一個把影像檢視、整理、腳本控制與多環境輸出整合在一起的「瑞士刀」式工具,並以 GPLv2 (GNU 通用公共授權第二版) 或更新版本釋出。 留言區最有價值的補充,是把 FIM 放回「沒有桌面環境也能完成工作」的脈絡來看。多位使用者認為,framebuffer 仍是老硬體、嵌入式設備、模擬器,甚至非常小型顯示器上的最低共同標準;對單純影像檢視器來說,它夠簡單、夠普遍,不一定要全面轉向 DRM (Direct Rendering Manager,Linux 直接轉譯管理) 或更厚重的圖形堆疊。不過也有人指出,現代 DRM 或極簡 Wayland 工作階段能帶來較好的硬體加速與零拷貝路徑,特別是影片播放與省電表現,framebuffer 反而可能把工作推回 CPU 與 RAM,這也是現代 Linux 圖形工具漸漸遠離 fbdev (Linux 傳統 framebuffer 介面) 的原因。 其他留言則分享了很實際的搭配方式,例如用 mplayer、mpv、ffplay 在 framebuffer 或 DRM 模式播放影片,用 fbpdf2 閱讀 PDF,或用 links/elinks 維持純文字或半圖形工作流程;也有人提到 SDL 可切到 fbcon、kmsdrm、caca、aalib 等驅動,甚至把遊戲或影像轉成 ASCII art 經由 SSH 顯示。另有讀者提醒,FIM 不只侷限於純文字 TTY 主控台,若編譯時啟用 GTK 或 SDL,同樣能在 X11 (傳統 Linux 視窗系統) 或 Wayland 環境中使用;也有人補充它的檔頭特徵值搜尋與位移開檔能力,對檔案救援或從損毀媒體挖圖有額外價值。至於延伸提到的 kitty graphics protocol、sixel 與 timg,則被視為另一條較新的終端圖像路線,但它們更仰賴現代終端功能,而 FIM 的吸引力正是在低資源、純終端與高度自動化情境下仍然很好用。 👥 54 則討論、評論 💬 https://news.ycombinator.com/item?id=47803323