Skip to content

스마트 탭 탐색 ​

VMark의 Tab 및 Shift+Tab 키는 컨텍스트 인식적입니다 — 화살표 키를 누르지 않고도 서식화된 텍스트, 괄호, 링크를 효율적으로 탐색할 수 있습니다.

실험적 기능인 워크스페이스 레일을 사용하면, 탭 순환과 탭 스트립은 활성 워크스페이스의 탭만 다룹니다.

빠른 개요 ​

컨텍스트Tab 동작Shift+Tab 동작
괄호 안 () [] {}닫는 괄호 건너뛰기여는 괄호 앞으로 이동
따옴표 안 "" ''닫는 따옴표 건너뛰기여는 따옴표 앞으로 이동
CJK 괄호 안 「」 『』닫는 괄호 건너뛰기여는 괄호 앞으로 이동
굵게, 기울임꼴, 코드, 취소선 안서식 후로 이동서식 전으로 이동
링크 안링크 후로 이동링크 전으로 이동
테이블 셀 안다음 셀로 이동이전 셀로 이동
목록 항목 안항목 들여쓰기항목 내어쓰기 (가장 바깥 수준에서 멈춤)

괄호 및 따옴표 탈출 ​

커서가 닫는 괄호나 따옴표 바로 앞에 있을 때 Tab을 누르면 건너뜁니다. 커서가 여는 괄호나 따옴표 바로 뒤에 있을 때 Shift+Tab을 누르면 앞으로 이동합니다.

지원되는 문자 ​

표준 괄호 및 따옴표:

  • 소괄호: ( )
  • 대괄호: [ ]
  • 중괄호: { }
  • 큰따옴표: " "
  • 작은따옴표: ' '
  • 백틱: `

CJK 괄호:

  • 전각 괄호: ( )
  • 렌티큘러 괄호: 【 】
  • 코너 괄호: 「 」
  • 흰색 코너 괄호: 『 』
  • 이중 꺾쇠 괄호: 《 》
  • 꺾쇠 괄호: 〈 〉

곡선 따옴표:

  • 이중 곡선 따옴표: " "
  • 단일 곡선 따옴표: ' '

작동 방식 ​

text
function hello(world|)
                    ↑ ) 앞에 커서

Tab 누르기:

text
function hello(world)|
                     ↑ ) 뒤에 커서

이는 중첩된 괄호에서도 작동합니다 — Tab은 바로 인접한 닫는 문자를 건너뜁니다.

Shift+Tab 은 반대 방향으로 작동합니다 — 커서가 여는 문자 바로 뒤에 있는 경우:

text
function hello(|world)
               ↑ ( 뒤에 커서

Shift+Tab 누르기:

text
function hello|(world)
              ↑ ( 앞에 커서

CJK 예시 ​

text
这是「测试|」文字
         ↑ 」 앞에 커서

Tab 누르기:

text
这是「测试」|文字
          ↑ 」 뒤에 커서

서식 탈출 (WYSIWYG 모드) ​

WYSIWYG 모드에서 Tab 및 Shift+Tab은 인라인 서식 마크에서 탈출할 수 있습니다.

지원되는 서식 ​

  • 굵게 텍스트
  • 기울임꼴 텍스트
  • 인라인 코드
  • 취소선
  • 링크

작동 방식 ​

커서가 서식화된 텍스트 어디에 있든:

text
This is **bold te|xt** here
                 ↑ 굵게 안에 커서

Tab 누르기:

text
This is **bold text**| here
                     ↑ 굵게 후 커서

Shift+Tab은 반대 방향으로 작동합니다 — 서식 시작으로 이동합니다:

text
This is **bold te|xt** here
                 ↑ 굵게 안에 커서

Shift+Tab 누르기:

text
This is |**bold text** here
        ↑ 굵게 전 커서

링크 탈출 ​

Tab 및 Shift+Tab은 링크에서도 탈출합니다:

text
Check out [VMark|](https://vmark.app)
               ↑ 링크 텍스트 안에 커서

Tab 누르기:

text
Check out [VMark](https://vmark.app)| and...
                                    ↑ 링크 후 커서

링크 안에서 Shift+Tab 을 누르면 시작으로 이동합니다:

text
Check out |[VMark](https://vmark.app) and...
          ↑ 링크 전 커서

링크 탐색 (소스 모드) ​

소스 모드에서 Tab은 마크다운 링크 구문 내에서 스마트 탐색을 제공합니다.

중첩된 및 이스케이프된 괄호 ​

VMark는 복잡한 링크 구문을 올바르게 처리합니다:

markdown
[text [with nested] brackets](url)     ✓ 작동
[text \[escaped\] brackets](url)       ✓ 작동
[link](https://example.com/page(1))    ✓ 작동

Tab 탐색은 중첩되거나 이스케이프된 괄호에서도 링크 경계를 올바르게 식별합니다.

표준 링크 ​

markdown
[link text|](url)
          ↑ 텍스트 안에 커서

Tab 누르기 → 커서가 URL로 이동:

markdown
[link text](|url)
            ↑ URL 안에 커서

Tab 다시 누르기 → 커서가 링크를 빠져나감:

markdown
[link text](url)|
                ↑ 링크 후 커서

위키 링크 ​

markdown
[[page name|]]
           ↑ 링크 안에 커서

Tab 누르기:

markdown
[[page name]]|
             ↑ 링크 후 커서

소스 모드: 마크다운 문자 탈출 ​

소스 모드에서 Tab은 마크다운 서식 문자를 건너뜁니다:

문자사용 용도
*굵게/기울임꼴
_굵게/기울임꼴
^위첨자
~~취소선 (단위로 건너뜀)
==하이라이트 (단위로 건너뜀)

예시 ​

markdown
This is **bold|** text
              ↑ ** 앞에 커서

Tab 누르기:

markdown
This is **bold**| text
                ↑ ** 후 커서

INFO

소스 모드는 마크다운 문자에 대한 Shift+Tab 탈출이 없습니다 — Shift+Tab은 내어쓰기 (선행 공백 제거)만 합니다.

소스 모드: 자동 쌍 ​

소스 모드에서 서식 문자를 입력하면 자동으로 닫는 쌍이 삽입됩니다:

문자쌍동작
**|* 또는 **|**지연 기반 — 단일 vs 이중 감지를 위해 150ms 대기
~~|~ 또는 ~~|~~지연 기반
__|_ 또는 __|__지연 기반
===|==항상 이중으로 쌍
``|`단일 백틱은 지연 후 쌍
```코드 펜스줄 시작의 삼중 백틱은 펜스드 코드 블록 생성

자동 쌍은 펜스드 코드 블록 안에서 비활성화 됩니다 — 코드 블록에서 *를 입력하면 쌍 없이 리터럴 *이 삽입됩니다.

쌍 사이에서 백스페이스하면 두 반쪽이 모두 삭제됩니다: *\|* → 백스페이스 → 비어 있음.

테이블 탐색 ​

커서가 테이블 안에 있을 때:

동작키
다음 셀Tab
이전 셀Shift + Tab
행 추가 (마지막 셀에서)Tab

마지막 행의 마지막 셀에서 Tab을 누르면 자동으로 새 행이 추가됩니다.

목록 들여쓰기 ​

커서가 목록 항목에 있을 때:

동작키
항목 들여쓰기Tab
항목 내어쓰기Shift + Tab

내어쓰기는 중첩을 한 단계 제거하며 가장 바깥 수준에서 멈춥니다 — 항목을 목록 밖으로 꺼내지는 않습니다. 목록에서 완전히 벗어나려면 목록 제거 를 사용하거나, 목록 버튼을 다시 눌러 목록을 해제하세요.

설정 ​

탭 탈출 동작은 설정 → 에디터 에서 사용자 정의할 수 있습니다:

설정효과
괄호 자동 쌍괄호 쌍 및 Tab 탈출 활성화/비활성화
CJK 괄호CJK 괄호 쌍 포함
곡선 따옴표곡선 따옴표 쌍 포함 (“” ‘’). 입력한 곧은 따옴표는 곡선 따옴표 쌍이 됩니다

TIP

Tab 탈출이 워크플로우와 충돌하는 경우 괄호 자동 쌍을 완전히 비활성화할 수 있습니다. 그러면 Tab은 평소처럼 공백을 삽입합니다 (목록/테이블에서는 들여쓰기).

비교: WYSIWYG vs 소스 모드 ​

기능Tab (WYSIWYG)Shift+Tab (WYSIWYG)Tab (소스)Shift+Tab (소스)
괄호 탈출✓✓✓—
CJK 괄호 탈출✓✓✓—
곡선 따옴표 탈출✓✓✓—
마크 탈출 (굵게 등)✓✓N/AN/A
링크 탈출✓✓✓ (필드 탐색)—
마크다운 문자 탈출 (*, _, ~~, ==)N/AN/A✓—
마크다운 자동 쌍 (*, ~, _, =)N/AN/A✓ (지연 기반)N/A
테이블 탐색다음 셀이전 셀N/AN/A
목록 들여쓰기들여쓰기내어쓰기들여쓰기내어쓰기
멀티 커서 지원✓✓✓—
코드 블록 안에서 건너뜀✓✓✓N/A

멀티 커서 지원 ​

탭 탈출은 여러 커서에서 작동합니다 — 각 커서가 독립적으로 처리됩니다.

작동 방식 ​

여러 커서가 있을 때 Tab 또는 Shift+Tab을 누르면:

  • Tab: 서식 안의 커서는 끝으로 탈출; 닫는 괄호 앞의 커서는 건너뜀
  • Shift+Tab: 서식 안의 커서는 시작으로 탈출; 여는 괄호 뒤의 커서는 앞으로 이동
  • 일반 텍스트의 커서는 그 자리에 유지됨

예시 ​

text
**bold|** and [link|](url) and plain|
     ^1          ^2            ^3

Tab 누르기:

text
**bold**| and [link](url)| and plain|
        ^1               ^2         ^3

각 커서가 컨텍스트에 따라 독립적으로 탈출합니다.

TIP

이것은 대량 편집에 특히 강력합니다 — Mod + D로 여러 항목을 선택한 다음 Tab을 사용하여 한 번에 모두 탈출합니다.

우선순위 및 코드 블록 동작 ​

탈출 우선순위 ​

여러 탈출 대상이 겹치는 경우 Tab은 가장 안쪽에서 먼저 처리합니다:

text
**bold text(|)** here
               ↑ Tab이 먼저 ) 건너뜀 (괄호가 가장 안쪽)

Tab 다시 누르기:

text
**bold text()**| here
               ↑ Tab이 굵게 마크 탈출

즉, 괄호 건너뛰기가 항상 마크 탈출보다 먼저 실행됩니다 — Tab이 먼저 괄호를 탈출한 다음 서식을 탈출한다는 것을 기억하세요.

코드 블록 가드 ​

Tab 및 Shift+Tab 괄호 건너뛰기는 코드 블록 안에서 비활성화 됩니다 — code_block 노드와 인라인 코드 스팬 모두. 이는 괄호가 리터럴 구문인 코드에서 Tab이 괄호를 건너뛰는 것을 방지합니다:

text
`array[index|]`
              ↑ Tab이 인라인 코드에서 ] 건너뛰지 않음 — 대신 공백 삽입

자동 쌍 삽입도 WYSIWYG 모드와 소스 모드 모두에서 코드 블록 안에서 비활성화됩니다.

팁 ​

  1. 근육 기억 — Tab 탈출에 익숙해지면 화살표 키 없이 훨씬 빠르게 탐색할 수 있습니다.

  2. 자동 쌍과 함께 작동 — (를 입력하면 VMark가 자동으로 )를 삽입합니다. 안에서 입력한 후 Tab만 누르면 나갑니다.

  3. 중첩된 구조 — Tab은 한 번에 한 레벨씩 탈출합니다. ((nested))의 경우 완전히 탈출하려면 Tab을 두 번 눌러야 합니다.

  4. Shift + Tab — Tab의 거울 이미지. 마크, 링크, 여는 괄호에서 역방향으로 탈출합니다. 테이블에서는 이전 셀로 이동하고, 목록에서는 항목 내어쓰기입니다.

  5. 멀티 커서 — Tab 탈출은 모든 커서에 동시에 작동하여 대량 편집을 더욱 빠르게 합니다.

열린 탭 사이 전환 ​

탭은 창 아래쪽의 상태 표시줄에 있습니다. 탭 사이를 이동하는 방법은 세 가지입니다:

동작단축키참고
마지막으로 사용한 탭Ctrl + Tab이 탭 직전에 있던 탭으로 이동합니다. 다시 누르면 곧바로 돌아옵니다.
다음 / 이전 탭Mod + Shift + ] / Mod + Shift + [최근 사용 여부와 관계없이 스트립을 따라 순서대로 이동합니다.
빠른 열기Mod + O입력하여 필터링합니다. 열린 탭이 먼저 나열되며, 가장 최근에 사용한 탭이 맨 위에 있습니다.

마지막으로 사용한 탭은 순환이 아니라 토글입니다. 가장 최근에 있던 문서로 이동하고, 한 번 더 누르면 시작한 곳으로 돌아옵니다 — 두 파일을 오가며 작업하는 빠른 방법입니다. 반면 다음 탭과 이전 탭은 스트립을 위치 순서대로 이동하며, 되돌아가는 것이 아니라 무언가를 찾고 있을 때 유용합니다.

이 기능은 단축키이자 메뉴 항목 (보기 → 마지막으로 사용한 탭) 이기도 하며, 그 덕분에 내장 브라우저가 키보드 포커스를 가지고 있을 때도 계속 동작합니다.

탭이 너무 많아 다 보이지 않을 때 ​

탭 스트립은 스크롤됩니다. 어느 쪽 가장자리 밖에 탭이 있으면 그 가장자리가 흐려지고 작은 화살표가 나타납니다 — 클릭하면 한 화면만큼 스크롤됩니다. 어떤 방법으로든 탭을 전환하면 새 탭이 보이도록 스크롤되므로, 강조된 탭이 화면 밖에 숨는 일은 없습니다.

스트립 자체도 키보드로 접근할 수 있습니다: Tab으로 이동한 다음 화살표 키를 사용하세요.

두 문서를 나란히 ​

보기 → 편집기 분할 — 문서 두 개 (Alt + Mod + \) 는 현재 문서 옆에 두 번째 문서를 표시합니다. 어떤 문서를 표시할지 고르려면 아무 탭이나 오른쪽 클릭하고 옆에 열기 를 선택하세요.

동작단축키
편집기 분할 — 문서 두 개Alt + Mod + \
창 닫기Alt + Mod + Shift + \
다른 창에 포커스Alt + Mod + Shift + O
스크롤 동기화(기본값 없음)

동작에 관한 참고 사항:

  • 다른 창에 표시된 탭은 탭 스트립에 옅은 밑줄로 표시되므로, 화면에 어떤 두 문서가 있고 입력이 어느 쪽으로 들어가는지 항상 알 수 있습니다.
  • 둘 중 하나를 닫으면 나머지 하나로 합쳐집니다 — 관련 없는 탭으로 이동하지 않습니다. 남은 문서는 그대로 유지됩니다.
  • 스크롤 동기화 는 두 창의 스크롤을 비례적으로 연결합니다. 기본적으로 꺼져 있으며 분할마다 따로 설정됩니다.
  • 두 창은 하나의 보기 모드를 공유합니다. 소스 모드(F6)는 두 창을 함께 전환하며, 창 사이를 이동해도 현재 모드가 유지됩니다.
  • 분할하려면 문서 두 개가 열려 있어야 합니다. 브라우저 탭은 문서가 아니므로 분할이 적용되지 않습니다.

탭 컨텍스트 메뉴 ​

탭을 오른쪽 클릭하면 메뉴가 열립니다. 화살표 키, Home, End로 이동하고, Enter 또는 Space로 항목을 실행하며, Escape로 닫습니다.

항목기능사용 가능한 경우
새 창으로 이동탭을 새 창으로 옮기며, 확인 메시지에 실행 취소 가 있습니다. 비게 된 보조 창은 닫힙니다.문서가 로드되어 있고, 메인 창의 유일한 탭이 아닐 때
고정 / 고정 해제탭을 고정하거나 고정을 해제합니다 — 고정된 탭 참조.항상
옆에 열기탭을 다른 분할 창에 표시합니다 — 두 문서를 나란히 참조.이 탭과 활성 탭이 모두 문서이고, 이 탭이 활성 탭이 아닐 때 (브라우저 탭에는 표시되지 않음)
이름 변경탭 안에서 바로 파일 이름을 바꿉니다 — 파일 이름 바꾸기 참조.문서가 저장되어 있을 때
경로 복사파일의 절대 경로를 복사합니다.문서가 저장되어 있을 때
상대 경로 복사워크스페이스 폴더 기준 상대 경로를 복사합니다.워크스페이스가 열려 있고 파일이 그 안에 있을 때
Finder에서 보기Finder에서 파일을 보여 줍니다 (Windows에서는 탐색기에서 보기, Linux에서는 파일 관리자에서 보기).문서가 저장되어 있을 때
디스크로 복원탭의 내용을 원래 경로에 다시 씁니다.열려 있는 동안 파일이 디스크에서 삭제되었을 때
저장된 상태로 되돌리기확인 후 변경 사항을 버리고 디스크에서 파일을 다시 불러옵니다.탭에 저장되지 않은 변경 사항이 있고 파일이 아직 존재할 때
닫기탭을 닫습니다 (저장되지 않은 변경 사항이 있으면 먼저 저장할지 묻습니다).탭이 고정되지 않았을 때
다른 탭 닫기고정되지 않은 다른 모든 탭을 닫습니다.고정되지 않은 다른 탭이 있을 때
오른쪽 탭 닫기오른쪽에 있는 고정되지 않은 탭을 닫습니다.그런 탭이 있을 때
고정되지 않은 탭 모두 닫기이 탭을 포함해 고정되지 않은 모든 탭을 닫습니다.고정되지 않은 탭이 있을 때
모두 닫기고정된 탭을 포함한 모든 탭을 닫습니다. 고정된 탭이 닫히게 되면 그 개수를 알려 주며 먼저 확인을 요청하고, 취소하면 아무것도 닫지 않습니다.항상

일괄 닫기는 현재 워크스페이스의 탭에 적용되며 탭을 하나씩 닫습니다. 저장되지 않은 변경 사항이 있는 탭마다 먼저 묻고, 그중 하나라도 취소하면 나머지는 중단됩니다.

고정된 탭 ​

탭을 가까이 두려면 컨텍스트 메뉴에서 고정하세요:

  • 탭이 스트립 왼쪽의 고정 그룹으로 이동하고, 핀 아이콘이 표시되며, 닫기 버튼이 사라집니다. 고정된 탭과 고정되지 않은 탭 사이의 경계를 넘어 탭을 끌 수 없으며 ("고정된 탭은 왼쪽에 유지됩니다. 드롭이 차단되었습니다."), 고정된 탭은 창 밖으로 끌어낼 수 없습니다.
  • 고정을 해제하기 전까지는 Mod + W, 가운데 클릭, 닫기, 일괄 닫기 등 어떤 방법으로도 닫을 수 없습니다. 시도하면 "닫기 전에 고정을 해제하세요" 가 표시됩니다. 의도적인 두 가지 닫기만 예외입니다. 모두 닫기 는 확인하면 고정된 탭도 닫고, 레일에서 작업 공간을 닫으면 그 작업 공간의 고정된 탭도 다른 탭과 함께 닫힙니다.
  • 고정된 탭이 있는 창을 닫으면 확인을 요청합니다 — "이 창에 N개의 고정된 탭이 있습니다. 그래도 닫으시겠습니까?" — 단, 이미 저장 대화 상자가 표시된 경우는 제외입니다.
  • 고정은 탭을 다른 창이나 워크스페이스로 옮기거나 업데이트로 재시작해도 유지되지만, VMark를 종료하면 유지되지 않습니다: 다음 실행 때 다시 열린 탭은 고정되지 않은 상태입니다.

고정에는 키보드 단축키가 없습니다.

파일 이름 바꾸기 ​

탭의 컨텍스트 메뉴에서 이름 변경 을 선택하세요. 탭 안에서 이름을 편집할 수 있게 되며, 확장자 앞부분이 선택됩니다. Enter를 누르거나 다른 곳을 클릭하면 적용되고, Escape를 누르면 취소됩니다. 파일 이름이 디스크에서 바뀌며, 그 파일을 가리키는 열린 탭이 모두 따라갑니다. VMark는 절대 덮어쓰지 않습니다: 이름이 이미 사용 중이면 "X"(이)라는 이름의 파일이 이미 있습니다. 라는 대화 상자가 표시됩니다. 비어 있거나, 바뀌지 않았거나, . 또는 .. 이거나, / 또는 \ 를 포함하는 이름은 거부되거나 무시됩니다. 입력한 내용이 이름 전체입니다 — 확장자를 지우면 파일에서 확장자가 사라집니다.

macOS 에서는 설정 → 외관 → 제목 표시줄에 파일 이름 표시 가 켜져 있으면, 제목 표시줄의 파일 이름을 더블 클릭해서 이름을 바꿀 수도 있습니다. 규칙과 메시지는 같으며, 이름 충돌이나 오류 뒤에도 이름이 편집 가능한 상태로 남아 다른 이름을 시도할 수 있습니다. 파일 확장자 표시 가 꺼져 있으면, 확장자 없이 이름을 입력할 때 원래 확장자가 유지됩니다. 저장되지 않은 문서의 제목을 더블 클릭하면 대신 저장 이 열립니다.

탭과 창 닫기 ​

저장되지 않은 변경 사항이 있으면 묻지 않고 닫는 일은 없습니다.

  • 저장되지 않은 변경 사항이 있는 탭 하나를 닫으면 (Mod + W, 탭의 ×, 또는 닫기) "…의 변경 사항을 저장할까요?" 라고 묻고 저장, 저장 안 함, 취소 를 제공합니다. 한 번도 저장하지 않은 문서에서 저장 을 누르면 기본 저장 폴더에서 저장 대화 상자가 열리며, 탭 제목이 이름으로 제안됩니다. 그 대화 상자를 취소하거나 저장에 실패하면 탭은 열린 채로 유지됩니다.
  • 저장되지 않은 문서가 하나인 창을 닫으면 같은 질문을 합니다. 두 개 이상이면 대화 상자 하나에 모두 나열되며 — 한 번도 저장하지 않은 문서에는 (새 문서) 표시가 붙습니다 — 모두 저장, 저장 안 함, 취소 를 제공합니다.
  • 모두 저장 은 파일이 있는 모든 문서를 저장합니다. 한 번도 저장하지 않은 문서는 위치를 묻습니다: 하나뿐이면 저장 대화 상자 하나, 여러 개이면 폴더 선택기 하나 ("새 문서 N개의 폴더 선택") 가 열립니다. 그런 다음 각 문서가 그 폴더에 제목으로 저장되며, 이미 사용 중인 이름에는 번호가 붙으므로 (Untitled 2.md) 아무것도 덮어쓰지 않습니다.
  • 종료 (Mod + Q) 는 모든 창에서 한 번에 한 창씩 같은 확인을 실행하며, 어느 창에서든 취소하면 종료가 취소됩니다. 설정 → 파일 및 이미지 → 종료 확인 이 켜져 있으면 (기본값), 처음 누를 때는 "⌘Q를 다시 눌러 종료" 만 표시됩니다 — 2초 안에 다시 누르세요. 운영 체제에서 오는 종료 (예: 시스템 종료) 는 두 번 누르기를 건너뜁니다.
  • 모두 저장하고 종료 는 모든 창의 저장되지 않은 문서를 대화 상자 없이 저장한 다음 (한 번도 저장하지 않은 문서는 그 문서가 있는 창에서 여전히 위치를 묻습니다. 하나면 저장 대화 상자, 여러 개면 폴더 선택 한 번) 종료합니다. 저장할 수 없는 문서가 있거나 그 대화 상자를 취소하면 종료가 중단됩니다. 그 창은 열린 채로 남고, 저장에 실패하면 이유가 표시됩니다.

macOS에서는 마지막 창을 닫아도 VMark가 계속 실행됩니다. Windows와 Linux에서는 마지막 창을 닫으면 종료됩니다 — 단, Windows에서 설정 → 파일 및 이미지 → 닫을 때 트레이로 최소화 가 켜져 있으면 예외로, 마지막 창이 대신 시스템 트레이에 숨겨지며 아무것도 닫히지 않고 저장 확인도 없습니다 (설정 참조).