리눅스에서 텍스트를 다루는 도구라고 하면 대부분 VSCode, Neovim, Obsidian 같은 거대한 툴을 떠올립니다. 하지만 “그 정도까지는 안 필요한데…” 싶은 순간이 훨씬 더 많죠. 그럴 때 딱 필요한 게 바로 gedit입니다.

이 글은 “리눅서라면 한 번쯤은 제대로 써봐야 할” gedit 사용기이자, 실제 일상에서 브라우저만큼 자주 쓰는 도구로서의 gedit을 소개하는 글입니다. 중간에 살짝 Windows의 메모장(Notepad) 과 비교도 넣어볼게요.


왜 굳이 gedit인가?



1. 실행이 빠르다 = 생각이 끊기지 않는다

VSCode, Obsidian은 훌륭하지만, 실행하는 순간 이미 마음속에 든 생각은 반쯤 사라져버리기 쉽습니다. 반면 gedit는:

  • 터미널에서 gedit & 또는 런처에서 실행 → 거의 즉시 뜸
  • 새 문서를 여는 데에 딜레이가 거의 없음
  • 의식의 흐름대로 바로 적어 내려가기 좋음
  • nano 보다 사용하기 편하고 가독성이 뛰어남.

“메모하려다가 귀찮아서 그냥 안 적었다” 하는 상황을 줄여주는 도구가 바로 gedit입니다.

2. 직관적인 UI, 설명이 필요 없다

gedit는 매우 직관적입니다. 최소한의 기능들이 햄버거 메뉴에 모여있고, - 상단에 open, save, tap 이 세가지가 전부입니다.

딱 이 구조만 봐도 “아, 이건 그냥 써도 되겠다”라는 느낌이 듭니다. Vim처럼 모드를 이해할 필요도, VSCode처럼 방대한 설정을 손댈 필요도 없습니다.

3. “텍스트 편집기”에 충실하다

gedit의 기본 철학은 단순합니다.

  • 문서를 열고, 쓰고, 저장하는 것에 최적화
  • 리치 텍스트 포맷, 복잡한 프로젝트 관리, 빌드 기능 등에 집착하지 않음
  • 대신:

  • 자동 줄바꿈

  • 들여쓰기, 탭/스페이스 설정
  • 줄 번호 표시
  • 기본적인 검색/치환 이런 필수 기능들만 빠르게 제공

그래서 메모, 블로그 초안, 서버 설정 파일 수정, 간단 스크립트 작성 등 “텍스트만 잘 다루면 되는 작업”에서 압도적으로 편합니다.


내가 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 열어서:

  • 문법 강조(Syntax Highlighting)로 가독성을 확보하고
  • 저장 후 chmod +x backup.sh로 실행 권한만 주면 끝

빠르게 코드를 쳐보고, 아이디어를 검증하는 용도로 최적입니다.


3. 설정 파일 빠르게 수정할 때

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

같은 파일을 편집할 때도,

sudo gedit /etc/hosts

처럼 실행하면:

  • root 권한으로 GUI 환경에서 편하게 수정
  • 줄 번호, 자동 줄바꿈 덕분에 구조 파악이 쉬움

CLI 에디터가 익숙하다면 vi, nvim도 좋지만, “눈으로 한 번에 구조를 보고 싶을 때” gedit는 생각보다 자주 떠오릅니다.


gedit를 진짜로 편하게 만들어 주는 기능 & 설정



1. 꼭 켜두면 좋은 기본 옵션들

gedit 메뉴에서:

  • 편집(Edit) → 기본 설정(Preferences) 에서 다음을 추천합니다.

보기(View) 탭

  • ☑ 줄 번호 표시(Show line numbers)
  • ☑ 현재 줄 강조(Highlight current line)
  • ☑ 공백 문자 표시(필요하다면, Show whitespace characters)

편집(Editor) 탭

  • ☑ 자동 들여쓰기(Enable automatic indentation)
  • 탭 너비: 2 또는 4 중 선호에 따라
  • 탭을 공백으로 치환(Insert spaces instead of tabs) 활성화 추천

간단한 설정만으로도 “메모장” 수준에서 “가벼운 코드 에디터” 수준으로 업그레이드됩니다.


2. 플러그인(Plugins)으로 확장하기

gedit는 은근히 쓸만한 플러그인을 여럿 가지고 있습니다. 기본설정(Preference) → 플러그인(Plugins) 메뉴를 보면 기본 제공 플러그인들이 보이는데, 다음을 추천합니다.

  • Bracket Completion

  • 괄호 자동 완성: ( 치면 () 자동으로 완성

  • 짧은 코드 작성할 때 타이핑 피로도를 줄여줌

  • Draw Spaces

  • 탭/스페이스를 시각적으로 보여줌

  • YAML, Makefile 같이 공백이 중요한 파일에서 특히 유용

  • External Tools

  • gedit 내부에서 쉘 스크립트를 실행해 특정 기능을 추가 가능

  • 예: 현재 파일을 python으로 실행, shellcheck로 검사 등

  • Snippets

  • 자주 쓰는 코드 조각/문구를 스니펫으로 등록

  • 예: fn + Tab → 자주 쓰는 함수 템플릿 삽입

이 정도만 활성화해도 “가벼우면서도 나름 똑똑한 에디터”가 됩니다.


(심화) Python으로 나만의 기능 직접 만들기

이 부분이 gedit의 숨겨진 진가입니다. gedit는 단순한 C++ 프로그램이 아니라, Python 바인딩을 통해 에디터의 거의 모든 기능을 제어할 수 있는 플랫폼입니다.

VSCode 확장을 만들려면 Node.js 환경 설정하고, package.json 만지고 복잡하죠? gedit는 파일 두 개만 있으면 됩니다.

파이썬 개발자라면 5분 만에 만들 수 있는 **'현재 시간을 내 블로그 포맷에 맞춰 삽입하는 플러그인'**을 예로 들어보겠습니다.

1단계: 플러그인 폴더 준비

리눅스 홈 디렉터리에 아래 경로가 없다면 만들어줍니다.

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단계: 로직 작성하기 (.py)

이제 실제 파이썬 코드를 작성합니다. GObjectGedit 라이브러리를 사용해 에디터 객체에 접근합니다. ~/.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

        # 내가 원하는 포맷 (예: 2025-12-04 [Thu] 10:00)
        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의 모든 라이브러리를 쓸 수 있다는 점입니다.

  • requests를 import 해서 API 결과를 바로 에디터에 뿌리기
  • json 모듈로 선택한 텍스트 포맷팅하기
  • 정규식(re)으로 문서 내 특정 패턴 일괄 치환하기

VSCode 확장을 배우는 러닝 커브가 부담스럽다면, 이미 알고 있는 파이썬 지식으로 내 에디터를 개조할 수 있는 gedit가 정답일 수 있습니다.


VSCode / Neovim / Obsidian과 gedit의 역할 분담

솔직히 말해서, gedit가 VSCode나 Neovim, Obsidian을 완전히 대체하진 못합니다. 대신 역할이 다릅니다.

  • VSCode

  • 프로젝트 단위 개발, 디버깅, Git 연동, LSP, 확장 생태계

  • → “개발 환경”

  • Neovim

  • 키보드 중심, 강력한 텍스트 조작, 서버 환경에서도 동일한 경험, 터미널 그 그자체를 이용

  • → “강력한 키보드 기반 편집기, 시스템 리소스가 매우낮은 VM서버에서 유용”

  • Obsidian

  • 지식 정리, 연결, 노트 간 링크, 그래프 뷰

  • → “두뇌 확장용 노트 시스템”

  • gedit

  • 실행 속도 빠름, 가볍고 단순, GUI 친화적

  • “생각이 막 떠오를 때 바로 열어 쓰는 메모 + 간단 코드 에디터”

즉, gedit는 거대한 워크스페이스에 들어가기 전, 생각을 1차로 받아주는 첫 관문 같은 역할을 합니다.


리눅서들에게 추천하는 gedit 활용 루틴

마무리로, 리눅스 사용자가 gedit를 “진짜 일상 도구”로 쓰기 위한 간단 루틴을 제안해 봅니다.

  1. 단축 실행 루틴 만들기
  • 런처에서 “g”만 쳐도 gedit가 뜨도록 즐겨찾기 고정
  • 또는 Super + T로 터미널 열고, gedit & 습관화
  1. 하루 메모 파일 고정
  • ~/notes/2025-12-04-daily.txt 같은 형식으로 파일 하나를 정해두고
  • 하루 종일 gedit로 그 파일만 계속 편집
  1. 간단 코드/설정은 gedit로 시작
  • 복잡해지면 그때 VSCode나 nvim으로 옮기되,
  • “처음 손이 가는 도구는 gedit”으로 두기
  1. 플러그인 3~4개만 골라 꾸준히 사용
  • Bracket Completion
  • Snippets
  • Draw Spaces
  • External Tools 정도만 써도 상당히 편해짐
  1. Python으로 나만의 플러그인 하나 만들어 보기
  • 예: 단축키 하나로 현재 커서 위치에 스탬프 삽입
  • “에디터를 내 손에 맞춘다”는 감각을 느끼기 좋음

gedit는 화려하진 않지만, 매일 쓰다 보면 그 진가가 드러나는 조용한 일꾼 같은 에디터입니다.

VSCode, Neovim, Obsidian이 각각의 역할을 가진 것처럼, 당신의 리눅스 환경에서 gedit가 “생각과 텍스트의 입구” 역할을 해주길 바랍니다.

image