기능
VMark는 현대적인 글쓰기 워크플로우를 위해 설계된 기능이 풍부한 마크다운 에디터입니다. 다음은 포함된 기능들입니다.
에디터 모드
리치 텍스트 모드 (WYSIWYG)
기본 편집 모드는 진정한 "보이는 대로 얻는" 경험을 제공합니다:
- 타이핑하면서 실시간 서식 미리보기
- 커서 호버 시 인라인 문법 표시
- 직관적인 툴바와 컨텍스트 메뉴
- 원활한 마크다운 문법 입력
소스 모드
전체 구문 강조와 함께 원시 마크다운 편집으로 전환합니다:
- CodeMirror 6 기반 에디터
- 완전한 구문 강조
- 수식, 링크, 이미지, 위키 링크, 미디어를 위한 인터랙티브 팝업——WYSIWYG 와 동일한 편집 경험
- 스마트 붙여넣기——웹 페이지와 Word 문서의 HTML 이 자동으로 깔끔한 Markdown 으로 변환
- 클립보드 이미지 붙여넣기——스크린샷과 복사된 이미지가 에셋 폴더에 저장되고
로 삽입 - 코드 펜스 인식 멀티 커서와 CJK 단어 경계 지원
- 고급 사용자에게 적합
F6으로 모드를 전환합니다.
소스 미리보기
WYSIWYG 모드를 벗어나지 않고 단일 블록의 원시 마크다운을 편집합니다. F5를 눌러 커서 위치의 블록에 대한 소스 미리보기를 엽니다.
레이아웃:
- 블록 유형 레이블과 동작 버튼이 있는 헤더 바
- 블록의 마크다운 소스를 보여주는 CodeMirror 에디터
- 원래 블록이 흐릿한 미리보기로 표시됨 (실시간 미리보기가 켜져 있을 때)
컨트롤:
| 동작 | 단축키 |
|---|---|
| 변경사항 저장 | Cmd/Ctrl + Enter |
| 취소 (되돌리기) | Escape |
| 실시간 미리보기 토글 | 눈 아이콘 클릭 |
실시간 미리보기:
- 꺼짐 (기본값): 자유롭게 편집, 저장 시에만 변경사항 적용
- 켜짐: 타이핑하면서 즉시 변경사항 적용, 미리보기가 아래에 표시
제외된 블록: 일부 블록은 자체 편집 메커니즘이 있어 소스 미리보기를 건너뜁니다:
- 코드 블록 (Mermaid, LaTeX 포함) — 더블 클릭으로 편집
- 블록 이미지 — 이미지 팝업 사용
- 프론트매터, HTML 블록, 수평선
소스 미리보기는 시각적 에디터에 머물면서 정밀한 마크다운 편집 (표 문법 수정, 목록 들여쓰기 조정)에 유용합니다.
멀티 커서 편집
여러 위치를 동시에 편집합니다 — VMark는 WYSIWYG 및 소스 모드 모두에서 완전한 멀티 커서를 지원합니다.
| 동작 | 단축키 |
|---|---|
| 다음 일치에 커서 추가 | Mod + D |
| 일치 건너뛰고 다음으로 이동 | Mod + Shift + D |
| 모든 항목 선택 | Mod + Shift + L |
| 위/아래에 커서 추가 | Mod + Alt + 위/아래 |
| 클릭으로 커서 추가 | Alt + 클릭 |
| 마지막 커서 실행 취소 | Alt + Mod + Z |
| 단일 커서로 축소 | Escape |
모든 표준 편집 (타이핑, 삭제, 클립보드, 탐색)이 각 커서에서 독립적으로 작동합니다. 관련 없는 섹션에서의 의도치 않은 편집을 방지하기 위해 기본적으로 블록 범위로 제한됩니다.
자동 쌍 및 탭 탈출
여는 괄호, 따옴표 또는 백틱을 입력하면 VMark가 닫는 쌍을 자동 삽입합니다. Tab 을 눌러 화살표 키를 누르는 대신 닫는 문자를 건너뜁니다.
- 괄호:
()[]{} - 따옴표:
""''` ` - CJK:
「」『』()【】《》〈〉 - 중괄호 따옴표:
""'' - WYSIWYG의 서식 마크: 굵게, 기울임꼴,
코드,취소선, 링크
쌍이 비어있을 때 Backspace는 두 문자를 모두 삭제합니다. 자동 쌍과 탭 괄호 점프는 모두 코드 블록 및 인라인 코드 내에서 비활성화 됩니다 — 코드의 괄호는 그대로 유지됩니다. 설정 → 에디터 에서 구성 가능합니다.
텍스트 서식
기본 스타일
- 굵게, 기울임꼴, 밑줄,
취소선 인라인 코드, ==하이라이트==- 아래첨자 및 위첨자
- 미리보기 팝업이 있는 링크, 위키 링크, 북마크 링크
- 인라인 편집이 가능한 각주
- HTML 주석 토글 (
Mod + /) - 서식 지우기 명령
텍스트 변환
서식 → 변환을 통해 텍스트 케이스를 빠르게 변경합니다:
| 변환 | 단축키 |
|---|---|
| 대문자 | Ctrl + Shift + U (macOS) / Alt + Shift + U (Win/Linux) |
| 소문자 | Ctrl + Shift + L (macOS) / Alt + Shift + L (Win/Linux) |
| 제목 케이스 | Ctrl + Shift + T (macOS) / Alt + Shift + T (Win/Linux) |
| 케이스 토글 | — |
블록 요소
- 단축키로 쉽게 조작 가능한 제목 1-6 (레벨 늘리기/줄이기:
Mod + Alt + ]/[) - 인용문 (중첩 지원)
- 구문 강조가 있는 코드 블록
- 순서 있는, 순서 없는, 작업 목록
- 목록 유형 순환: 단락을 글머리 기호, 번호 매기기, 작업 목록 순으로 변환
- 수평선
- 완전한 편집 지원이 있는 테이블
강제 줄 바꿈
단락 내에서 강제 줄 바꿈을 삽입하려면 Shift + Enter를 누릅니다. VMark는 최대 호환성을 위해 기본적으로 두 칸 스타일을 사용합니다. 설정 > 에디터 > 공백 에서 구성합니다.
줄 작업
편집 → 줄을 통한 강력한 줄 조작:
| 동작 | 단축키 |
|---|---|
| 줄 위로 이동 | Alt + 위 |
| 줄 아래로 이동 | Alt + 아래 |
| 줄 복제 | Shift + Alt + 아래 |
| 줄 삭제 | Mod + Shift + K |
| 줄 합치기 | Mod + J |
| 빈 줄 제거 | — |
| 줄 오름차순 정렬 | F4 |
| 줄 내림차순 정렬 | Shift + F4 |
테이블
완전한 기능의 테이블 편집:
- 메뉴 또는 단축키로 테이블 삽입
- 행과 열 추가/삭제
- 셀 정렬 (왼쪽, 가운데, 오른쪽)
- 드래그로 열 크기 조정
- 빠른 작업을 위한 컨텍스트 툴바
- 키보드 탐색 (Tab, 화살표, Enter)
이미지
포괄적인 이미지 지원:
- 파일 대화 상자를 통해 삽입
- 파일 시스템에서 드래그 앤 드롭
- 클립보드에서 붙여넣기
- 프로젝트 에셋 폴더에 자동 복사
- 컨텍스트 메뉴로 크기 조정
- 소스 경로, 대체 텍스트, 크기 편집을 위해 더블 클릭
- 인라인과 블록 표시 간 전환
비디오 및 오디오
HTML5 태그를 사용한 완전한 미디어 지원:
- 툴바 파일 선택기를 통해 비디오 및 오디오 삽입
- 에디터로 미디어 파일 드래그 앤 드롭
- 프로젝트
.assets/폴더에 자동 복사 - 클릭으로 소스 경로, 제목, 포스터 (비디오) 편집
- 개인 정보 보호 강화 iframe으로 YouTube 삽입 지원
- 이미지 문법 폴백:
자동으로 비디오로 승격 - 유형별 색상 테두리가 있는 소스 모드 데코레이션
- 자세히 알아보기 →
Frontmatter 패널
WYSIWYG 모드에서 소스 모드로 전환하지 않고 YAML frontmatter 를 직접 편집합니다.
- 기본 접힘——frontmatter 가 있으면 문서 상단에 작은 "Frontmatter" 레이블이 표시됩니다
- 클릭하여 펼치기——YAML 내용을 위한 일반 텍스트 에디터가 열립니다
Mod + Enter——변경 사항을 저장하고 패널을 접습니다Escape——마지막 저장 값으로 되돌리고 접습니다- 블러 자동 저장——다른 곳을 클릭하면 짧은 지연 후 변경 사항이 자동으로 저장됩니다
패널은 에디터 히스토리에 실행 취소 포인트를 생성하므로, Mod + Z로 언제든 frontmatter 변경 사항을 되돌릴 수 있습니다.
특별 콘텐츠
정보 박스
GitHub 스타일 마크다운 알림:
- NOTE — 일반 정보
- TIP — 유용한 제안
- IMPORTANT — 핵심 정보
- WARNING — 잠재적 문제
- CAUTION — 위험한 작업
접을 수 있는 섹션
<details> HTML 요소를 사용하여 확장 가능한 콘텐츠 블록을 만듭니다.
수학 방정식
KaTeX 기반 LaTeX 렌더링:
- 인라인 수학:
$E = mc^2$ - 디스플레이 수학:
$$...$$블록 - 완전한 LaTeX 문법 지원
- 문법 힌트가 있는 유용한 오류 메시지
다이어그램
실시간 미리보기가 있는 Mermaid 다이어그램 지원:
- 플로우차트, 시퀀스 다이어그램, 간트 차트
- 클래스 다이어그램, 상태 다이어그램, ER 다이어그램
- 소스 모드의 실시간 미리보기 패널 (드래그, 크기 조정, 확대/축소)
- 자세히 알아보기 →
SVG 그래픽
```svg 코드 블록을 통해 원시 SVG 인라인 렌더링:
- 팬, 줌, PNG 내보내기가 가능한 즉시 렌더링
- WYSIWYG 및 소스 모드 모두에서 실시간 미리보기
- AI 생성 차트 및 사용자 정의 일러스트레이션에 이상적
- 자세히 알아보기 →
AI 지니
원하는 제공자를 선택할 수 있는 내장 AI 글쓰기 지원:
- 편집, 창의, 구조, 도구 등 네 가지 카테고리에 걸쳐 13개의 지니
- 검색 및 자유형 프롬프트가 있는 스포트라이트 스타일 선택기 (
Mod + Y) - 인라인 제안 렌더링 — 키보드 단축키로 수락 또는 거부
- CLI 제공자 (Claude, Codex, Gemini) 및 REST API (Anthropic, OpenAI, Google AI, Ollama) 지원
검색 및 바꾸기
Mod + F로 찾기 바를 엽니다. 에디터 영역 상단에 인라인으로 표시되며 WYSIWYG 및 소스 모드 모두에서 작동합니다.
탐색:
| 동작 | 단축키 |
|---|---|
| 다음 일치 찾기 | Enter 또는 Mod + G |
| 이전 일치 찾기 | Shift + Enter 또는 Mod + Shift + G |
| 찾기에 선택 사용 | Mod + E |
| 찾기 바 닫기 | Escape |
검색 옵션 — 찾기 바의 버튼으로 토글:
- 대소문자 구분 — 정확한 문자 대소문자 일치
- 전체 단어 — 부분 문자열이 아닌 완전한 단어만 일치
- 정규 표현식 — 정규식 패턴 사용 (먼저 설정에서 활성화)
바꾸기:
찾기 바의 확장 꺽쇠를 클릭하여 바꾸기 행을 표시합니다. 대체 텍스트를 입력한 다음 바꾸기 (단일 일치) 또는 모두 바꾸기 (한 번에 모든 일치)를 사용합니다. 일치 카운터는 현재 위치와 전체 수를 표시합니다 (예: "3/12").
마크다운 린트
VMark에는 문서의 일반적인 구문 오류와 접근성 문제를 검사하는 내장 마크다운 린터가 포함되어 있습니다. 설정 > 마크다운 > 린트 에서 활성화합니다.
사용 방법:
| 동작 | 단축키 |
|---|---|
| 린트 검사 실행 | Alt + Mod + V |
| 다음 문제로 이동 | F2 |
| 이전 문제로 이동 | Shift + F2 |
린트 검사를 실행하면 진단 결과가 인라인 하이라이트와 여백 마커로 표시됩니다. 문제가 없으면 토스트 알림으로 문서가 깨끗함을 확인합니다. 문제는 오류 또는 경고로 분류됩니다.
검사되는 규칙 (총 13개):
- 정의되지 않은 참조 링크
- 테이블 열 수 불일치
- 역순 링크 문법
(텍스트)[url](올바른 형식:[텍스트](url)) - 제목의
#뒤에 공백 누락 - 강조 마커 안의 공백
- 빈 링크 텍스트 또는 빈 링크 URL
- 중복 링크/이미지 정의
- 사용하지 않는 링크/이미지 정의
- 레벨을 건너뛰는 제목 레벨 증가 (예: H1에서 H3)
- 대체 텍스트가 없는 이미지 (접근성)
- 닫히지 않은 펜스 코드 블록
- 깨진 프래그먼트 링크 (
#앵커가 어떤 제목과도 일치하지 않음)
린트 결과는 일시적이며 문서를 편집하면 지워집니다. Alt + Mod + V로 언제든 검사를 다시 실행할 수 있습니다.
유니버설 툴바
에디터 하단에 고정된 서식 툴바로, WYSIWYG와 소스 모드 모두에서 모든 서식 작업에 빠르게 접근할 수 있습니다.
- 토글:
Mod + Shift + P로 툴바를 열고 포커스를 줍니다. 다시 누르면 툴바를 표시한 채로 에디터에 포커스를 돌려줍니다. - 키보드 탐색:
왼쪽/오른쪽화살표로 그룹 간 이동.Enter또는Space로 드롭다운 메뉴를 엽니다. 화살표 키로 메뉴 내 탐색. - 2단계 Escape: 드롭다운 메뉴가 열려 있으면
Escape가 먼저 메뉴를 닫습니다.Escape를 다시 누르면 전체 툴바가 닫힙니다. - 세션 기억: 툴바는 현재 세션에서 마지막으로 포커스된 버튼을 기억하여, 다시 포커스할 때 그 위치에서 이어갑니다.
- AI 지니 단축키: 툴바에는 지니 선택기를 여는 AI 지니 버튼이 포함되어 있습니다 (
Mod + Y).
내보내기 옵션
VMark는 문서를 공유하기 위한 유연한 내보내기 옵션을 제공합니다.
HTML 내보내기
두 가지 패키징 모드로 독립형 HTML로 내보내기:
- 폴더 모드 (기본값): 하위 폴더에 에셋이 있는
Document/index.html생성 - 단일 파일 모드: 이미지가 내장된 독립형
.html파일 생성
내보낸 HTML에는 설정, 목차, 이미지 라이트박스 등에 대한 대화형 컨트롤이 있는 VMark Reader가 포함됩니다.
PDF 내보내기
기본 시스템 대화 상자 (Cmd/Ctrl + P)로 PDF에 인쇄합니다.
HTML로 복사
다른 앱에 붙여넣기 위해 서식 있는 콘텐츠를 복사합니다 (Cmd/Ctrl + Shift + C).
복사 형식
기본적으로 WYSIWYG에서 복사하면 클립보드에 일반 텍스트 (서식 없음)가 들어갑니다. 설정 > 에디터 > 동작 에서 마크다운 복사 형식을 활성화하면 대신 text/plain에 마크다운 문법이 들어갑니다 — 제목은 #를 유지하고, 링크는 URL을 유지합니다. 터미널, 코드 에디터 또는 채팅 앱에 붙여넣을 때 유용합니다.
CJK 서식
내장된 중국어/일본어/한국어 텍스트 서식:
- 20개 이상의 구성 가능한 서식 규칙
- CJK-영어 간격
- 전각 문자 변환
- 문장 부호 정규화
- 아포스트로피/프라임 감지가 있는 스마트 따옴표 쌍 맞춤
- 기술적 구조 보호 (URL, 버전, 시간, 소수점)
- 상황별 따옴표 변환 (CJK에는 중괄호, 라틴에는 직선)
- 커서에서 따옴표 스타일 토글 (
Shift + Mod + ') - 자세히 알아보기 →
문서 히스토리
VMark는 문서의 스냅샷을 자동으로 저장하여 이전 버전을 복구할 수 있습니다.
- 구성 가능한 간격의 자동 저장이 백그라운드에서 스냅샷을 캡처
- 문서별 히스토리가 JSONL 형식으로 로컬에 저장
Ctrl + Shift + 3으로 히스토리 사이드바를 열어 이전 버전 탐색- 스냅샷은 날짜별로 그룹화되며 각 버전의 정확한 저장 시간이 타임스탬프로 표시
- 스냅샷 옆의 복원 버튼을 클릭하여 이전 버전을 복원 (확인 대화 상자로 실수 복원 방지)
- 더 이상 필요하지 않은 개별 스냅샷을 휴지통 버튼으로 삭제
- 복원 전에 현재 내용이 새 스냅샷으로 저장되므로 작업을 잃지 않습니다
- 히스토리에는 문서가 파일로 저장되어 있어야 합니다 (제목 없는 문서에는 히스토리가 없음)
- 설정 > 일반 에서 히스토리 추적을 활성화 또는 비활성화
세션 복구 (Hot Exit)
VMark를 종료하거나 예기치 않게 종료되면 세션이 보존되고 다음 실행 시 복원됩니다.
저장되는 내용:
- 모든 열린 탭과 그 내용 (저장되지 않은 변경 사항 포함)
- 커서 위치 및 실행 취소/다시 실행 히스토리
- UI 레이아웃: 사이드바 상태, 개요 표시 여부, 소스/포커스/타이프라이터 모드, 터미널 상태
- 창 위치 및 크기
- 활성 워크스페이스 및 파일 탐색기 설정
작동 방식:
- 종료 시 VMark가 모든 창의 전체 세션 상태를 캡처
- 재실행 시 탭이 떠난 상태 그대로 복원되며, 변경된 (저장되지 않은) 문서는 해당 표시와 함께 복원
- 예기치 않은 종료 후 크래시 복구가 자동으로 실행되어 주기적 복구 스냅샷에서 문서를 복원
- 7일이 지난 복구 스냅샷은 자동으로 정리
설정이 필요 없습니다. 세션 복구는 항상 활성 상태입니다.
보기 및 포커스
포커스 모드 (F8)
포커스 모드는 현재 편집 중인 블록을 제외한 모든 블록을 흐리게 하여 단일 단락에 집중할 수 있도록 시각적 노이즈를 줄입니다. 활성 블록은 전체 불투명도로 강조되고 주변 콘텐츠는 흐릿한 색상으로 바랩니다. F8로 토글합니다 — WYSIWYG 및 소스 모드 모두에서 작동하며 토글을 끄기 전까지 유지됩니다.
타이프라이터 모드 (F9)
타이프라이터 모드는 활성 줄을 뷰포트의 세로 중앙에 유지하여 문서가 아래로 스크롤되는 동안 눈이 고정된 위치에 머무르게 합니다 — 마치 실제 타이프라이터처럼. F9로 토글합니다. 두 편집 모드에서 모두 작동하며 커서 이동 시 흔들림을 방지하기 위해 작은 임계값이 있는 부드러운 스크롤을 사용합니다.
포커스 + 타이프라이터 조합
포커스 모드와 타이프라이터 모드를 동시에 활성화할 수 있습니다. 함께 사용하면 완전히 방해 없는 글쓰기 환경을 제공합니다: 주변 블록은 흐릿하고 현재 줄은 화면 중앙에 유지됩니다.
자동 줄 바꿈 (Alt + Z)
Alt + Z로 소프트 줄 바꿈을 토글합니다. 활성화하면 긴 줄이 가로로 스크롤하는 대신 에디터 너비에서 줄 바꿈됩니다. 설정은 세션 간에 유지됩니다.
읽기 전용 모드 (F10)
문서를 잠가 실수 편집을 방지합니다. F10으로 토글합니다. 활성화되면 모든 키보드 입력과 서식 명령이 차단됩니다 — 스크롤, 텍스트 선택, 복사는 여전히 가능합니다. 완성된 문서를 검토하거나 다른 탭에서 글을 쓰면서 내용을 참조할 때 유용합니다.
개요 패널 (Ctrl + Shift + 1)
개요 패널은 문서의 제목 구조를 사이드바의 접을 수 있는 트리로 표시합니다. Ctrl + Shift + 1로 엽니다.
- 제목을 클릭하여 해당 섹션으로 에디터 스크롤
- 제목 그룹을 접고 펼쳐 문서의 특정 부분에 집중
- 스크롤하거나 입력할 때 현재 활성 제목이 강조 표시
- 제목을 추가, 제거 또는 이름을 변경하면 실시간 업데이트
확대/축소
설정을 열지 않고 에디터 글꼴 크기를 조정합니다:
| 동작 | 단축키 |
|---|---|
| 확대 | Mod + = |
| 축소 | Mod + - |
| 기본값으로 재설정 | Mod + 0 |
확대/축소는 에디터 글꼴 크기를 2px 단위로 변경합니다 (범위: 12px ~ 32px). 설정 > 외관 에 있는 동일한 글꼴 크기 값을 수정하므로, 키보드 확대/축소와 설정 슬라이더가 항상 동기화됩니다.
텍스트 유틸리티
VMark에는 서식 메뉴에서 사용할 수 있는 텍스트 정리 및 서식 유틸리티가 포함됩니다:
텍스트 정리 (서식 → 텍스트 정리)
- 후행 공백 제거: 줄 끝의 공백 제거
- 빈 줄 축소: 여러 빈 줄을 하나로 줄이기
CJK 서식 (서식 → CJK)
내장된 중국어/일본어/한국어 텍스트 서식 도구. 자세히 알아보기 →
이미지 정리 (파일 → 사용하지 않는 이미지 정리)
에셋 폴더에서 고아 이미지를 찾아 제거합니다.
통합 터미널
여러 세션, 복사/붙여넣기, 검색, 클릭 가능한 파일 경로 및 URL, 컨텍스트 메뉴, 테마 동기화, 구성 가능한 폰트 설정을 갖춘 내장 터미널 패널. Ctrl + `로 토글합니다. 자세히 알아보기 →
자동 업데이트
VMark는 자동으로 업데이트를 확인하고 앱 내에서 다운로드 및 설치할 수 있습니다:
- 실행 시 자동 업데이트 확인
- 원클릭 업데이트 설치
- 업데이트 전 릴리즈 노트 미리보기
워크스페이스 지원
- 워크스페이스로 폴더 열기
- 사이드바의 파일 트리 탐색
- 빠른 파일 전환
- 최근 파일 추적
- 세션 간 창 크기 및 위치 기억
사용자 정의
테마
다섯 가지 내장 색상 테마:
- White (깔끔하고 미니멀한)
- Paper (따뜻한 오프화이트)
- Mint (부드러운 녹색 계열)
- Sepia (빈티지 룩)
- Night (다크 모드)
폰트
다음에 대한 별도 폰트 구성:
- 라틴 텍스트
- CJK (중국어/일본어/한국어) 텍스트
- 모노스페이스 (코드)
레이아웃
다음을 조정합니다:
- 폰트 크기
- 줄 높이
- 블록 간격 (단락과 블록 사이의 간격)
- CJK 자간 (CJK 가독성을 위한 미묘한 간격)
- 에디터 너비
- 블록 요소 폰트 크기 (목록, 인용문, 테이블, 알림)
- 제목 정렬 (왼쪽 또는 가운데)
- 이미지 및 테이블 정렬 (왼쪽 또는 가운데)
키보드 단축키
설정 → 단축키에서 모든 단축키를 사용자 정의할 수 있습니다.
기술적 세부 사항
VMark는 최신 기술로 구축되었습니다:
| 구성 요소 | 기술 |
|---|---|
| 데스크톱 프레임워크 | Tauri v2 (Rust) |
| 프론트엔드 | React 19, TypeScript |
| 상태 관리 | Zustand v5 |
| 리치 텍스트 에디터 | Tiptap (ProseMirror) |
| 소스 에디터 | CodeMirror 6 |
| 스타일링 | Tailwind CSS v4 |
모든 처리는 로컬 컴퓨터에서 이루어집니다 — 클라우드 서비스나 계정이 필요하지 않습니다.