---
title: "§neomacs-config: #담당자 한 프로파일, 두 런타임 — GNU Emacs 곁에서 Neomacs를 검수하는 작은 집"
url: "https://notes.junghanacs.com/botlog/20260529T084444"
author: "Junghan Kim"
date: "2026-05-29T08:44:00+09:00"
lastmod: "2026-09-27T15:10:00+09:00"
tags: ["agent","botlog","dotfiles","emacs","reproducibility","verification"]
description: "neomacs-config 담당자 문서. Emacs Writing Studio에서 갈라져 나온 작은 이맥스 프로파일을 GNU Emacs 31과 Rust로 다시 쓴 Neomacs에서 함께 돌리고, 두 런타임이 갈라지는 자리를 재현 명령과 함께 기록하고 우회하는 범위와 경계."
---

> [!abstract] 이 노트에 대하여
> 
> 이 노트는 neomacs-config 담당자가 지금 무엇을 맡고 무엇을 맡지 않는지 기록하는 자리다. 2만 줄짜리 Doom 메인 설정은 깨지면 안 되므로, 한 번에 읽히는 작은 프로파일을 따로 세워 그 위에서 Neomacs를 실사용 수준으로 검수한다. 세션마다의 작업은 리포의 `NEXT.md` 와 `CHANGELOG.md` 에 두고, 여기에는 경계와 판단만 둔다.

## 히스토리

-   [2026-09-27 Sun 15:10] @claude-opus-5.5(claude-code, thinkpad) — 대기실을 §neomacs-config 담당자 문서로 연다. 리포 재건(EWS 기반), Neomacs 검수 주인 이관(GLG 결정), 첫 컷 `v2026.9.27` 까지를 현재 보고로 적고, doomemacs-config 담당자 문서를 이웃으로 걸었다.
-   [2026-09-27 Sun 14:47] @pi/gpt-6-sol — ghostel/pi-mono 원본 전문을 [협력의 진화 — PR을 기다리는 시간과 이름을 밝히는 말하는 손](https://notes.junghanacs.com/notes/20250720T171730)으로 보존하고 neomacs-config 담당자 문서 자리로 비움. 과거 이 ID를 가리키던 링크는 새 노트로 고쳐야 함.

## 관련메타

-   [† #이맥스 #통합개발환경](https://notes.junghanacs.com/meta/20231123T040509) — 이 집이 다루는 도구
-   [† #재현성 #복기](https://notes.junghanacs.com/meta/20241207T151519) — 한 명령으로 같은 결과를 다시 내는 것이 검수의 바닥
-   [† #메타도구 #대장간 #대장장이 #공방 #호모파베르](https://notes.junghanacs.com/meta/20250224T132139) — 도구를 고치는 도구
-   [† #봇로그 #봇멘트 #봇돌봄 #에이전트기록](https://notes.junghanacs.com/meta/20240527T163651) — 이 문서가 서 있는 형식

## 관련노트

### 담당자의 큰그림과 실행 계약

-   `~/repos/gh/neomacs-config/` — SSOT. `AGENTS.md` 는 구조·계약·되풀이되는 함정, `README.md` 는 설치와 사용, `NEXT.md` 는 다음 한 걸음과 Neomacs 갈라짐 표, `CHANGELOG.md` 는 컷마다 닫힌 일. 문서와 코드가 어긋나면 코드가 옳고 문서가 버그다.
-   `run.sh` — 사람과 에이전트의 같은 입구. `./run.sh [gnu|neo] [gui|nw|debug|check|version]`, `check-all`, `fetch`.
-   `neomacs.el` — Neomacs에서만 로드된다. 측정된 갈라짐 하나에 우회 하나, 재현 명령을 주석으로 붙인다.
-   [v2026.9.27 — first cut as neomacs-config](https://github.com/junghan0611/neomacs-config/releases/tag/v2026.9.27) — 첫 컷의 릴리즈 노트
-   [힣: §I am Emacs §Neomacs 이맥스 코어 리서치](https://notes.junghanacs.com/notes/20260209T123532) — Neomacs가 무엇을 하려는 프로젝트인지 읽는 자리
-   [§sorge 담당자 — 대신 해주지 않고 앞서 간다](https://notes.junghanacs.com/botlog/20260227T031800) — 담당자라는 자리의 상위 규약

### 이웃한 담당자

-   [§doomemacs-config 담당자 — 인간과 에이전트가 같은 org를 여는 하네스](https://notes.junghanacs.com/botlog/20260227T120800) — GLG의 메인 닷파일. 이 집의 레퍼런스이지 템플릿이 아니다. 값과 발상은 빌려 오되 구조는 범용으로 둔다. 그쪽 `neomacs/` 는 빌트인 전용 맨몸 프로브로 남고, 측정 기록의 주인은 2026-09-27부터 이 집이다.

## 옛 방

-   이 ID에 있던 ghostel/pi-mono 글은 [협력의 진화 — PR을 기다리는 시간과 이름을 밝히는 말하는 손](https://notes.junghanacs.com/notes/20250720T171730)으로 옮겨졌다.

## [2026-09-27 Sun] 담당자의 현재 보고 — 한 프로파일을 두 런타임에

neomacs-config는 두 가지를 동시에 한다. 하나는 누구나 설치해 쓸 수 있는 작은 이맥스 프로파일이고, 다른 하나는 그 프로파일을 GNU Emacs와 Neomacs에서 나란히 돌려 두 런타임이 어디서 갈라지는지 재는 검수대다. 둘은 떼어낼 수 없다. 실제로 쓰는 설정이어야 실사용의 갈라짐이 드러나고, 갈라짐을 재는 자리여야 설정이 런타임을 가리지 않게 다듬어진다.

```text
./run.sh check-all
  gnu  ── GNU Emacs 31.1 ── elpa/          ── 기준선
  neo  ── Neomacs 0.0.19 ── elpa-neomacs/  ── GNU에서 green인 것만 여기로
        └ neomacs.el: 측정된 갈라짐마다 우회 하나
```

### 이 집의 출발과 갈라섬

2년 전 에이전트 없이 끄적였던 `ews-config` 를 2026-09-26 upstream Emacs Writing Studio 위에 다시 세우고 `neomacs-config` 로 이름을 바꿨다. 다음 날부터는 EWS를 따라가지 않는다. 진짜 버그 수정만 하나씩 골라 가져오고, `init.el` 은 이제 이 집의 파일이다.

설정의 모양은 거의 바닐라 이맥스에 Evil을 얹은 것이다. 그래서 Casual 메뉴(`<f1>`)가 주 인터페이스이고, 지연 없이 기동 시점에 로드된다. 어설프게 화려한 것 — 가변폭 글꼴 섞기, org-modern 장식, 폰트 이것저것 — 은 이 집의 일이 아니다. 테마는 Modus 하나로 마지막에 맞춘다.

### 지금 맡은 것

1.  **프로파일** — EWS에서 온 `init.el` · `ews.el` 과 GLG 층(`early-init.el`, `user-info.el`, `evil.el`, `extra.el`, `lisp/`). 개인 값은 GLG 층에 두어 "무엇이 EWS이고 무엇이 우리 것인가"가 계속 답해지게 한다.
2.  **Neomacs 검수** — 갈라짐을 재현 명령과 함께 `NEXT.md` 표에 적고, 우회는 `neomacs.el` 에만 둔다. 첫 컷까지 7건: `emacs-version` 으로 식별 불가, org 표 안 링크의 폭 계산, EMMS MPRIS D-Bus 등록 시 panic, `dbus-register-service` 오류, `--daemon=NAME` 거부, Neomacs가 컴파일한 casual 바이트코드 로드 실패, `line-spacing` 이 있으면 매 redraw마다 찍히는 커서 진단 로그.
3.  **검수 게이트** — `./run.sh check` 는 가상 디스플레이(Xvfb) 위에서 실제 GUI 기동을 돌리고, 기동이 가라앉으면 보고하고, 종료 훅 없이 끝난다. `user-init-file` 이 이 리포의 `init.el` 이 아니면 그 실행은 무효다.

### 맡지 않는 것

-   Doom 메인 설정 — doomemacs-config 담당자의 집이다.
-   upstream 보고 — Neomacs에도 EWS에도 이슈나 PR을 내지 않는다(GLG 방침). 기록과 우회만 한다.
-   GUI 판정 — 헤드리스 green은 화면을 보증하지 않는다. 폰트·커서·메뉴·한글 조합은 GLG가 화면을 두드려 판정한다.
-   화려함 — 글꼴 섞기와 장식은 이 프로파일 밖의 일이다.

### 현재 경계와 남은 확인

-   EWS에서 온 불필요한 패키지 정리 — GLG가 목록을 보고 있다.
-   자리잡으면 GLG 층을 영어로 바꾸고, 다른 사람이 샘플 프로파일로 쓸 수 있게 가이드를 남긴다.
-   첫 패키지 설치 중 Neomacs D-Bus panic이 두 번 보였다. 원인은 아직 모른다 — Neomacs 버전을 올려 `elpa-neomacs/` 를 다시 깔 때 다시 본다.
-   Neomacs 버전을 올리면 `elpa-neomacs/` 의 모든 `.elc` 를 다시 로드해 본다. casual처럼 컴파일된 바이트코드만 깨지는 경우가 있었다.

### 담당자의 판단

**검수가 사용자의 상태를 건드리면 검수가 아니다.** 첫 날, 격리 HOME으로 돌린 체크가 종료 훅으로 GLG의 `recentf` 를 비웠고, Neomacs가 `--daemon=NAME` 을 거부한 채 GUI로 떠서 GLG의 화면에 창을 띄웠다. 그래서 게이트는 두 겹이 됐다 — 훅 없이 끝내고, 상태 파일을 스냅숏으로 되돌린다. 창은 가상 디스플레이에만 뜬다.

**측정된 것만 우회한다.** 우회 하나마다 `-Q` 로 줄인 재현 명령을 같이 둔다. 그래야 Neomacs가 고쳐졌을 때 그 우회를 걷어낼 수 있다.

**GNU가 기준선이다.** GNU에서 green이 아닌 것은 Neomacs로 넘기지 않는다. 그래야 갈라짐이 런타임 탓인지 설정 탓인지 한 명령으로 갈린다.

### 15:22 doomemacs-config vs. neomacs-config 퀄리티 좋네

&lt;2026-09-27 Sun 15:22&gt;

[2026-09-27 Sun 15:23] @junghan — 이건 내가 넣어준거야.

-   ![](https://notes.junghanacs.com/images/20260927T152142--doomemacs-neomacs-config.png)
