在 Linux 上 gedit 為何是最強:從筆記到程式碼片段的全能日常工具

提到 Linux 上處理文字的工具,往往會想到 VSCode、Neovim、Obsidian 等龐大工具。但「不需要那麼複雜」的時刻卻更常見。 此時最合適的選擇就是 gedit

本文不僅是「Linux 必試一次的 gedit 使用心得」,也是介紹 gedit 成為「像瀏覽器一樣常用」的日常工具。中間還會簡短比較 Windows 的記事本(Notepad)。


為什麼要選 gedit?



1. 啟動快 = 思緒不被打斷

VSCode、Obsidian 優秀,但啟動時往往會讓腦中已有的想法被打斷。相對地,gedit 具備:

  • 在終端執行 gedit & 或從啟動器啟動 → 幾乎即時
  • 開啟新文件幾乎沒有延遲
  • 能夠隨意寫下思緒
  • nano 更易用、可讀性更佳。

「想寫下筆記卻因為麻煩而放棄」的情況,gedit 能大幅減少。

2. 直覺 UI,無需說明

gedit 非常直觀。最小功能集中於三個菜單: - 上方的 open、save、tap。

僅看這個結構就能感受到「這樣就能用」的安心感。無需像 Vim 那樣理解模式,也不必像 VSCode 那樣調整大量設定。

3. 專注於「文字編輯器」

gedit 的基本哲學很簡單:

  • 開啟、寫入、儲存文件的最佳化
  • 不追求富文本格式、複雜專案管理或建置功能
  • 但提供:
  • 自動換行
  • 缩排、Tab/空格設定
  • 行號顯示
  • 基本搜尋/取代

這些「必備功能」足以滿足筆記、博客草稿、伺服器設定檔、簡易腳本等「只要文字就行」的工作。


我使用 gedit 的典型情境

1. 今日待辦、靈感草圖

  • 打開 todo-2025-12-04.txt,隨時記下待辦事項
  • 在工作中閃現的靈感與除錯點以關鍵字快速記錄

重點:不是「整理成文件」的階段,而是「先抓住想法」的階段。


2. 簡易程式碼/片段撰寫

例如寫一個小 Bash 腳本:

#!/usr/bin/env bash
DATE=$(date +"%Y-%m-%d %H:%M:%S")
echo "Backup started at $DATE"

# do something...

對於這類程式碼:

  • 無需建立 VSCode 專案
  • 無需在 nvim 中載入插件

只需 gedit backup.sh

  • 透過語法高亮提升可讀性
  • 儲存後 chmod +x backup.sh 即可執行

快速試寫、驗證想法的最佳工具


3. 快速修改設定檔

  • /etc/hosts
  • nginx.conf
  • .bashrc.zshrc

執行:

sudo gedit /etc/hosts

即可在 GUI 環境下以 root 權限輕鬆編輯,行號與自動換行讓結構更易把握。


讓 gedit 更方便的功能與設定



1. 必打開的基本選項

在 gedit 的「編輯 → 首選項」中,建議開啟:

檢視 (View) 標籤

  • ☑ 顯示行號 (Show line numbers)
  • ☑ 高亮目前行 (Highlight current line)
  • ☑ 顯示空白字元(如需要)(Show whitespace characters)

編輯 (Editor) 標籤

  • ☑ 自動縮排 (Enable automatic indentation)
  • Tab 寬度:根據喜好選 2 或 4
  • ☑ 用空格取代 Tab (Insert spaces instead of tabs) 建議啟用

僅此簡單設定,即可將「記事本」級別提升至「輕量級程式碼編輯器」。


2. 透過插件擴充

gedit 內建多個實用插件。進入「首選項 → 插件」可見,以下插件值得啟用:

  • Bracket Completion:輸入 ( 時自動補全 (),減少打字疲勞。
  • Draw Spaces:視覺化顯示 Tab/空格,對 YAML、Makefile 等空白敏感檔案特別有用。
  • External Tools:在 gedit 內執行 shell 腳本,例如以 python 執行目前檔案、使用 shellcheck 檢查等。
  • Snippets:將常用程式碼片段註冊為快捷鍵,例如 fn + Tab → 插入函式模板。

啟用這些插件後,gedit 就能成為「輕量但聰明」的編輯器。


(進階) 用 Python 自製專屬功能

這是 gedit 的隱藏優勢。gedit 不是單純的 C++ 程式,而是透過 Python 綁定可控制大部分功能的平臺。

對於 VSCode 擴充需要 Node.js、package.json 等複雜設定,gedit 只需兩個檔案即可。

以下示範 5 分鐘內完成「將目前時間以博客格式插入」的插件。

第 1 步:準備插件資料夾

若不存在,於 Linux 主目錄建立:

mkdir -p ~/.local/share/gedit/plugins

第 2 步:建立插件描述檔 (.plugin)

~/.local/share/gedit/plugins/my_stamper.plugin 中寫入:

[Plugin]
Loader=python3
Module=my_stamper
IAge=3
Name=My Blog Stamper
Description=Inserts a custom datetime format for my blog
Authors=Your Name <email@example.com>
Copyright=Copyright © 2025 Your Name
Website=http://www.example.com

第 3 步:撰寫 Python 邏輯 (.py)

~/.local/share/gedit/plugins/my_stamper.py 中寫入:

import gi
from datetime import datetime
gi.require_version('Gedit', '3.0')
from gi.repository import GObject, Gedit

class MyStamperPlugin(GObject.Object, Gedit.WindowActivatable):
    __gtype_name__ = "MyStamperPlugin"
    window = GObject.property(type=Gedit.Window)

    def do_activate(self):
        self._insert_timestamp()

    def do_deactivate(self):
        pass

    def do_update_state(self):
        pass

    def _insert_timestamp(self):
        doc = self.window.get_active_document()
        if not doc:
            return
        now_str = datetime.now().strftime("%Y-%m-%d [%a] %H:%M\n")
        doc.insert_at_cursor(now_str)

(此為簡化示例,實際可加入菜單項、訊號連結等)

第 4 步:啟用並確認

  1. 重新啟動 gedit。
  2. 前往「首選項 → 插件」即可看到 My Blog Stamper
  3. 勾選後即執行 Python 程式碼,功能即生效。

此方法的強大之處在於:可使用任何 Python 套件

  • requests 直接將 API 回應貼到編輯器
  • json 進行文字格式化
  • re 進行全文件正則取代

若 VSCode 擴充學習曲線過高,用已知的 Python 知識改造 gedit 是絕佳選擇。


VSCode / Neovim / Obsidian 與 gedit 的角色分工

gedit 雖然無法完全取代 VSCode、Neovim、Obsidian,但它的角色是:

  • VSCode:專案開發、除錯、Git、LSP、擴充生態 → 「開發環境」。
  • Neovim:鍵盤導向、強大文字操作、低資源 VM 友好 → 「鍵盤編輯器」。
  • Obsidian:知識整理、連結、圖譜視覺化 → 「腦力擴充」。
  • gedit:快速啟動、輕量、GUI 友好 → 「即時筆記 + 簡易程式碼編輯器」。

因此 gedit 是「進入大型工作空間前,先把想法捕捉」的第一道門檻。


推薦 gedit 使用流程

  1. 快捷執行:在啟動器中將「g」或 Super + T + gedit & 設為常用。
  2. 固定每日筆記檔:如 ~/notes/2025-12-04-daily.txt,整天只編輯此檔。
  3. 簡易程式碼/設定先用 gedit:複雜時再轉至 VSCode 或 nvim。
  4. 選擇 3~4 個插件: * Bracket Completion * Snippets * Draw Spaces * External Tools
  5. 自製 Python 插件:例如快捷鍵插入時間戳,感受「編輯器屬於自己」。

gedit 雖不華麗,但「每天使用」時會顯現其真實價值。像 VSCode、Neovim、Obsidian 各有定位,gedit 也能成為「思考與文字入口」的可靠工具。

image