| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
| 29 | 30 | 31 |
- Tarantula
- 시에라
- high sierra
- catalina
- 에어팟
- 3D 프린터
- asahi linux
- Mac
- 모하비
- iOS 13
- IOS
- 컨트롤러
- tevo
- sierra
- 버그
- 맥
- 아이폰
- beta
- 맥북프로
- Linux
- macos
- 터치바
- 애플
- 터미널
- Fedora
- 업데이트
- mojave
- AirPods
- asahi
- 3D프린터
- Today
- Total
elsa in mac
Ghostty 1.3.0 새롭게 추가된 기능들을 살펴 봅니다. 본문

2026년 3월 9일, ghostty가 1.3 정식버전을 릴리즈 했습니다.
이번 1.3 버전에서 새롭게 등장한 몇 가지 주요 기능들이 있습니다. scrollback search(스크롤백 검색), native scrollbar, 쉘 프롬프트 클릭을 통한 커서 이동, 명령어 종료 알림, 키 테이블 및 체인 바인딩, 서식 유지 복사 기능 등입니다.
쉘 프롬프트 클릭, 커서 이동
우선, 사용환경으로 대부분의 사용자들이 많이 사용하는 zsh 환경을 기준으로 설명을 해 봅니다.
이 기능을 사용하기 위해서는 ghostty shell integration 기능이 활성화 되어 있어야 합니다. ghostty의 설정파일인 config 파일을 열고, 아래와 같이 shell integration(쉘 통합) 기능을 활성화해 줍니다.

그리고, .zshrc 파일을 열고 아래와 같이 추가해 줍니다.

# Ghostty 셸 통합 스크립트 로드
if [[ -n "$GHOSTTY_RESOURCES_DIR" ]]; then
source "$GHOSTTY_RESOURCES_DIR/shell-integration/zsh/ghostty-integration"
fi
추가를 했다면, ghostty를 종료한 후에 다시 ghostty를 실행해 줍니다. 그럼, mouse click 을 이용하여, cursor를 shell 명령행의 원하는 특정위치로 곧바로 이동시킬 수 있게 됩니다.
명령행이 긴데, 중간에 옵션을 수정하거나 할 경우 마우스를 이용하여 수정할 부분으로 빠르게 이동하여 수정할 때 편리한 기능입니다.
스크롤백 검색(Scrollback Search)
shell 에서 매우 긴 문장이나 log 를 출력했을 때, scroll up 하거나 page up으로 이미 출력된 내용을 확인할 수 있는데, 이때 특정 검색어로 검색을 할 수 있는 기능입니다. 검색어에 해당하는 부분이 hightlight 되어 빠르게 원하는 내용을 확인할 수 있는 기능입니다.

기본 설정키는 macOS에서는 ctrl+f, linux 에서는 ctrl+shift+f 입니다.
명령어 종료 알림
세 번째 기능은 컴파일이나 이미지 혹은 비디오 처리등 시간이 꽤 오래 걸리는 경우, 해당 명령이 끝난 후에 데스크톱 알림이나 벨소리로 명령행 처리가 끝났음을 통보하는 기능입니다.
ghostty의 설정 파일인 ~/.config/ghostty/config 파일에 관련된 옵션을 설정해 줘야 합니다.
notify-on-command-finish = unfocused
notify-on-command-finish-action = no-bell,notify
notify-on-command-finish-after = 30s
이 기능의 핵심은 단순이 명령어가 끝났다는 것을 짐작하는 것이 아니라, 쉘이 보내주는 OSC 133 시퀀스를 통해 실제 실행 상태를 정확히 추적한다는 것입니다.
notify-on-command-finish 는 언제 알림을 보낼지를 결정하는 것으로 never 는 "알림 안함", unfocused는 터미널 창이 포커스 되어 있지 않을 때문 알림을 울리는 것 입니다. alwasys는 무조건 알림을 통보 합니다.
notify-on-command-finish-action은 어떤 방법으로 알릴지를 결정하는 것으로 bell 은 터미널 벨소리를 이용합니다. notify는 OS 데스크톱 알림 인터페이스를 이용하여 통보합니다. 위의 예처럼 no-bell,notify 라고 하면 소리는 끄고 알림 창만 띄우게 됩니다.
notify-on-command-finish-after는 얼마나 오래 걸리는 작업부터 통보기능을 사용할지를 지정하는 옵션입니다. 기본값은 5초이며, 위의 예를 보면 30s 죽, 30초 이상 걸리는 경우에 한하여 통보 기능을 사용한다고 선언하고 있는 것을 알 수 있습니다.
이 기능 역시 OSC 133 특수코드를 이용하는 방법이므로 shell integration이 설정되어 있어야 사용할 수 있습니다.
키 테이블 및 체인 바인딩
키 테이블 및 체인 바인딩은 tmux 처럼 모드형 키 바인딩을 만들거나, 하나의 키에 여러 동작을 연결(chain)할 수 있는 기능입니다.
keybind = ctrl+a=activate_key_table:resize
keybind = resize/arrow_up=resize_split:up,10
keybind = resize/arrow_down=resize_split:down,10
keybind = resize/arrow_left=resize_split:left,10
keybind = resize/arrow_right=resize_split:right,10
keybind = resize/escape=deactivate_key_table
keybind = resize/catch_all=ignore
위의 예는 ctrl+a 키를 resize 라는 active_key_table에 mapping 하고 있는 것을 알 수 있습니다. 그리고, resize/arrow_up 키를 resize_spilit:up,10 으로 mapping 하고 있는 것을 알 수 있습니다. 즉, ctrl+a 키를 누른 후에 윗 방향키를 누르면 split Pane 즉 분할된 화면의 경계선을 위로 10 픽셀 이동시키라는 의미가 됩니다.
이것은 tmux의 prefix 모드와 유사한 사용자 환경을 제공하는 것입니다. 해당 모드 전환이 이뤄진 후에는 정의된 키 이외의 다른 키들은 입력이 무시되며, esc 키를 눌러 종료 시키게 됩니다. 이를 위해 resize/escape=deactivate_key_table와 resize/catch_all=ignore를 keybinding 하고 있는 것을 알 수 있습니다. 해당 기능을 사용한다면 필수적으로 넣어 줘야 합니다.
tmux와 달리 prefix 키를 1개 이상 설정할 수 있다는 점이 장점이라고 볼 수 있으며, 더욱이 하나의 테이블 안에서 또 다른 테이블을 호출할 수 있는 nested tables(계층구조)를 구성할 수 있다는 점도 장점이라고 할 수 있습니다.
아래의 예는 계층적 구성을 한 예 입니다 .
# ---------------------------------------------------------
# 루트 관리 모드 진입 (Ctrl + a)
# ---------------------------------------------------------
keybind = ctrl+a=activate_key_table:admin
# admin 모드 설정
keybind = admin/s=activate_key_table:split_manager
keybind = admin/t=activate_key_table:tab_manager
keybind = admin/escape=deactivate_key_table
keybind = admin/catch_all=ignore
# ---------------------------------------------------------
# 분할 창 관리 하위 모드 (admin > s)
# ---------------------------------------------------------
# 상하좌우 화살표로 크기 조절
keybind = split_manager/up=resize_split:up,10
keybind = split_manager/down=resize_split:down,10
keybind = split_manager/left=resize_split:left,10
keybind = split_manager/right=resize_split:right,10
# q를 누르면 다시 상위 admin 모드로 복귀
keybind = split_manager/q=activate_key_table:admin
keybind = split_manager/escape=deactivate_key_table
keybind = split_manager/catch_all=ignore
# ---------------------------------------------------------
# 탭 관리 하위 모드 (admin > t)
# ---------------------------------------------------------
# n은 새 탭, x는 탭 닫기
keybind = tab_manager/n=new_tab
keybind = tab_manager/x=close_tab
keybind = tab_manager/right=next_tab
keybind = tab_manager/left=previous_tab
# q를 누르면 다시 상위 admin 모드로 복귀
keybind = tab_manager/q=activate_key_table:admin
keybind = tab_manager/escape=deactivate_key_table
keybind = tab_manager/catch_all=ignore
ctrl+a 를 눌러 prefix 모드로 진입을 한 후, s 키를 누르면 split 모드로 진입을 하게 되고, 여기서 다시 방향키를 누르면 분할 창의 크기를 조정할 수 있으며, q 키를 눌러 main prefix 모드로 나갈 수 있도록 구성되어 있습니다. 여기서 다시 t 키를 누르면 tab 모드로 진입을 할 수 있고 n, x, 오른쪽 방향키, 왼쪽 방향키를 사용하여 새로운 tab을 생성하거나 생성된 tab을 종료하거나 tab간을 이동할 수 있도록 구성되었다는 것을 알 수 있습니다.
즉, 여러 개의 prefix를 개별적으로 만들 수도 있고, 하나의 prefix를 통해 여러 모드를 계층적으로 구성할 수 있는 확장성이 지원됩니다.
서식 유지 복사(Rich Clipboard Copy)
마지막으로 서식 유지 복사 기능은 터미널의 색상과 스타일을 유치한 체 HTML 형식 등으로 복사하여 문서 편집기에 붙여 넣을 수 있는 기능을 제공합니다.
플렛폼 별 주요 업데이트
macOS 에서는 AppleScript 를 통해, 창, 탭, 분할화면등을 제어하고 자동화할 수 있으며, 분할된 화면 상단의 핸들을 이용하여 위치를 옮기거나 탭 또는 창으로 분리할 수 있습니다. 여기에 Ghostty를 시스템 기본 터미널로 설정하는 옵션도 추가되었습니다.
Linux (GTK) 에서는 Renderer를 재 설계하여 터미널 lock time을 최대 4배 단축하여 보다 더 부드러운 화면을 제공합니다.
그 밖에 메모리 최적화, 안정성 테스트를 통한 app crash 발생 빈도를 줄였으며, 유니코드 17을 지원하여 뱅골어등 복잡한 문자 체계에 대한 rendering이 정확해졌고, 최신 이모지등을 정상적으로 표시할 수 있도록 되었으며, 새 탑이나 창을 열 때 현재의 디렉터리를 유지할지 여부를 설정할 수 있고, Drag & Drop 및 붙여 넣기 시 제어 문자를 통한 악의적인 코드 실행을 방지할 수 있는 보안성을 강화했습니다.
- - - - - - - -
Ghostty 가 대중에게 공개되었을 당시, 사용자들과의 활발한 소통과 지원을 얼마나 잘할 수 있는 가가 터미널 에뮬레이터 분야의 후발주자임에도 불구하고 사용자들의 지지와 사랑을 받을 수 있는 성공의 열쇠라고 포스팅했던 기억이 나는데, 결론적으로 Ghostty는 현재까지 잘 진행되고 있고, 개인적인 기대를 넘어 잘 성장하고 있는 것 같습니다.
필자의 경우에도 Ghostty를 주력으로 사용하고 있으며, 점점 더 많은 신뢰감을 갖게 하는 훌륭한 터미널 에뮬레이터입니다. 앞으로의 성장을 응원하고 더 많은 성장과 발전을 기대해 봅니다.
'Terminal(CLI,TUI)' 카테고리의 다른 글
| Gemini 3.1 Pro 가 나왔네요? 이제 좀 쓸만해 졌나 ? (0) | 2026.02.20 |
|---|---|
| 이미지 화질개선 도구 - image upscaler (CLI) (0) | 2025.12.20 |
| Asahi Linux, Kernel 6.16 릴리즈 (0) | 2025.09.01 |
| 유용한 terminal CLI 도구들 (2025.07) #1 (0) | 2025.07.15 |
| bluetooth 헤드폰/이어폰 사용 시, CAVA 와의 latency를 없애는 방법 (0) | 2025.07.15 |