Pragtical 세션 전환: 미저장 텍스트를 남기고 다른 작업 열기
같은 프로젝트를 여러 창에서 열다 보니 저장된 세션이 여러 개가 됐고, 다시 열면 엉뚱한 탭 묶음이 복원된다. 저장하지 않은 텍스트를 잃지 않고 원하는 세션으로 갈아탈 수 있을까?

- Pragtical 3.14는 현재 프로젝트의 저장된 세션을 직접 고르는 메뉴를 추가했다.
- 불러오기는 현재 작업을 백업한 뒤 문서 배치를 바꾸며, 저장하지 않은 텍스트도 백업에 포함한다.
- 저장된 세션을 지워도 현재 탭은 닫히지 않고 다른 프로젝트의 세션은 남는다.
File → Sessions에서 돌아갈 작업을 고른다
10월 20일 나온 Pragtical 3.14는 저장된 작업 세션을 선택해 불러오는 기능을 추가했다. 한 프로젝트 안에 남아 있는 여러 작업 상태 가운데 필요한 것을 고를 수 있다. 명령 이름을 외우지 않아도 File → Sessions 메뉴로 들어갈 수 있다.
메뉴의 Load Session… 또는 명령 팔레트의 workspace:load-session이 진입점이다. 3.14 구현은 세션의 탭 수와, 저장 시각이 있으면 그 시각도 표시한다. 저장본이 없다면 불러올 세션이 없다는 메시지를 남긴다.
자동 복원은 있었고, 이제 고르는 기능이 생겼다
이번 변화는 자동 저장의 첫 도입이 아니다. 직전 3.13.1은 프로젝트를 바꿀 때 빈 세션이 저장되거나 돌아온 프로젝트의 탭이 복원되지 않는 문제를 고쳤다. Windows 경로의 대소문자와 구분자 처리도 함께 수정했다.
사용자 Vinfall이 남긴 이슈에는 별도 고민이 있었다. 같은 프로젝트에 여러 세션이 남는데 그중 하나를 선택할 방법이 없다는 점이다. 개발자는 같은 디렉터리를 여러 편집기 창에서 열면 여러 세션이 생길 수 있다고 설명했다. 3.14의 관리 메뉴는 이런 저장본을 직접 고르고 정리하는 수단이다.
다른 세션을 열기 전에 현재 내용을 백업한다
세션 관리 기능의 변경 기록은 현재 작업을 먼저 백업하고 미저장 텍스트도 포함한다고 명시한다. 별도 세션을 선택하면 지금의 문서 배치를 그 세션의 배치로 교체한다. 현재 작업을 모두 원본 파일에 덮어쓴 뒤 전환하는 기능은 아니다.
workspace API는 백업이나 복원에 실패하면 기존 배치와 선택한 저장본을 그대로 남긴다고 설명한다. 반대로 복원이 성공하면 불러온 저장본은 목록에서 제거된다. 따라서 세션은 작업 상태를 바꾸는 도구로 이해하는 편이 맞다. 모든 과거 상태를 계속 남기는 버전 이력과 용도가 다르다.
저장본을 지워도 지금 열린 탭은 남는다
세션을 불러오는 동작과 정리하는 동작은 결과가 다르다. 목적에 맞춰 메뉴나 명령을 선택해야 한다.
| 하려는 일 | 명령 | 결과 |
|---|---|---|
| 다른 작업 상태로 전환 | workspace:load-session | 현재 작업을 백업하고 선택한 배치를 복원한다. |
| 저장본 하나 정리 | workspace:remove-session | 선택한 저장본을 지우며 열린 탭은 유지한다. |
| 현재 프로젝트 저장본 정리 | workspace:clear-sessions | 다른 프로젝트의 세션과 현재 열린 작업은 유지한다. |
clear-sessions는 자동 저장을 끄는 설정이 아니다. 현재 작업은 종료할 때 정상적으로 다시 저장된다. 다른 배치로 돌아가려면 불러오기를, 불필요한 저장본만 줄이려면 삭제를 선택하면 된다.