Notepad++ for macOS는 전 세계에서 가장 사랑받는 텍스트 및 소스 코드 에디터인 Notepad++를 macOS 환경에 맞추어 완벽하게 포팅한 네이티브 애플리케이션입니다. Apple Clang C++20, Cocoa (AppKit/Foundation), Scintilla Cocoa, Lexilla, WebKit을 기반으로 구축되었으며, macOS Human Interface Guidelines (HIG) 표준을 준수하면서 Notepad++ 원본의 강력한 편집 기능과 94개국 다국어 환경을 완벽하게 제공합니다.
- 공식 94개국 로컬라이제이션 완벽 내장:
- Notepad++ 원본의 94개국 공식 언어 팩 XML(
PowerEditor/installer/nativeLang/*.xml)을 네이티브 파서(pugixml)와 연동하여 실시간 제공합니다. - 환경설정 (
⌘,) > 일반(General) > 표시 언어(Display Language) 드롭다운에서 클릭 한 번으로 앱의 모든 언어를 즉시 전환할 수 있습니다. - 주요 인기 16개국 언어(
한국어,English,日本語,简体中文,繁體中文,Français,Deutsch,Español,Italiano,Русский,Português,Brazilian Portuguese,Nederlands,Polski,Türkçe,Tiếng Việt)를 상단에 우선 배치하고 구분선 이후 나머지 78개국 언어를 가나다/알파벳 순으로 편리하게 선택할 수 있습니다.
- Notepad++ 원본의 94개국 공식 언어 팩 XML(
- 앱 전체 UI 실시간 동적 반영:
- macOS 상단 메뉴바: 11개 대메뉴 및 모든 서브메뉴/명령어 실시간 번역
- 찾기 & 바꾸기 바 (
NppFindBarView): 라벨, 버튼, 옵션 체크박스 완벽 번역 - 사이드/하단 3대 패널: 탐색기, 터미널, 미리보기 패널 헤더 및 툴팁
- 열 편집기 대화상자 (
NppColumnEditor): 모든 그룹박스, 라벨, 진법 및 버튼 - 환경설정 창 (
NppPreferences): 좌측 11개 카테고리 탭 목록 및 내부 모든 세부 옵션 - 상태 표시줄 (
StatusBar): 줄/열, 선택 범위, 인코딩, 줄바꿈 포맷
- macOS 최적화 정제 & 세션 지속성:
- 윈도우 전용 가속기 키(
(&F),(&E),&)를 자동으로 정제하여 깔끔한 macOS 네이티브 텍스트로 렌더링합니다. - 선택된 언어 설정은
session.json에 실시간 기록되어 다음 앱 실행 시에도 100% 자동 유지됩니다.
- 윈도우 전용 가속기 키(
- Notepad++ Help Guide 대화상자 (
⇧⌘/또는 F1):- 상단 메뉴의 도움말(Help) > Notepad++ Help Guide (사용자 가이드 & 예시) 또는 단축키
⇧⌘/(F1)를 통해 언제든지 인터랙티브 가이드를 호출할 수 있습니다. - 열 모드(Column Mode) 단축키 조합 및 사각형 블록 편집 방법
- 3대 분할 패널(탐색기/터미널/실시간 미리보기) 활용 팁
- 인코딩 감지(uchardet) 및 줄바꿈(CRLF/LF) 변환 가이드
- 매크로 기록/재생 및 해시/인코딩 도구 상세 설명과 예시 수록
- 상단 메뉴의 도움말(Help) > Notepad++ Help Guide (사용자 가이드 & 예시) 또는 단축키
- 고속 시각적 풍선 도움말 (Enhanced Quick Tooltips):
- 툴바 및 주요 인터랙티브 버튼에 0.05초 초고속 반응 및 2배 확대(14pt) 가독성 극대화 풍선 도움말을 적용하여 각 기능의 이름과 단축키를 직관적으로 확인할 수 있습니다.
- 체계적인 프로젝트 개발 및 기술 문서:
- BUILD_MAC.md: macOS 네이티브 아키텍처 구조, 빌드 파이프라인 및 테스트 스위트 상세 안내
- ScintillaCocoaIME.md: 편집기·터미널의 공통 텍스트 입력 구조, CJK/한글 IME 결함 분석 및 검증 범위
- CONTRIBUTING.md: 프로젝트 기여 가이드라인 및 코드 스타일 표준
- 열 모드 (Column Mode):
- 사각형 블록 선택:
⌥(Option) + 드래그 또는⌥⇧(Option+Shift) + 방향키로 선택합니다. 열 모드를 켜 두면 일반 드래그와⇧+ 방향키도 사각형 선택으로 동작합니다. - 다중 커서 동시 입력 & 열 다중 붙여넣기:
⌘+ 클릭으로 여러 위치에 커서를 두고 동시 타이핑, 각 열 라인에 대응한 다중 붙여넣기 지원
- 사각형 블록 선택:
- 열 편집기 대화상자 (Column Editor Dialog):
- 단축키:
⌥⌘C(또는 Edit 메뉴 >Column Editor... (열 편집기)) 및 툴바 버튼 - 텍스트 삽입 (Text to Insert): 선택된 열의 모든 라인에 접두어 또는 문자열 일괄 삽입
- 숫자 증가 삽입 (Number to Insert): 시작 숫자, 증가치, 반복 횟수, 진법(10진수/16진수/8진수/2진수), 패딩 문자(None/0 채우기/공백 채우기)
- 단축키:
- Primary Side Panel (좌측 - Finder 스타일 탐색기):
- 툴바 상단 버튼(
sidebar.left) 또는⌥⌘1로 토글 - 기본 위치는 **
~/(사용자 홈 디렉토리)**이며, 저장된 파일 탭 활성화 시 해당 파일의 폴더로 자동 연동 - 네이티브 macOS Finder 시스템 아이콘 및 지연 로딩(Lazy Loading) 적용으로 멈춤 없는 고속 탐색 지원
- 툴바 상단 버튼(
- Bottom Panel (하단 - 내장 터미널 분할 콘솔):
- 툴바 상단 버튼(
dock.rectangle) 또는⌥⌘2로 토글 - 실시간
/bin/zsh실행, 프롬프트$, 디렉토리 추적(cd), 명령어 히스토리 지원 - 상단에
Open in Terminal.app버튼을 제공하여 실제 외장 맥 터미널 창도 원클릭으로 실행 가능
- 툴바 상단 버튼(
- Secondary Side Panel (우측 - 언어 가이드 & 실시간 WebKit 미리보기):
- 툴바 상단 버튼(
sidebar.right) 또는⌥⌘3으로 토글 - 기본 화면: 상단 메뉴의 **
Language**에서 언어를 선택하도록 안내하는 가이드 카드 및 빠른 선택 칩 제공 - 실시간 렌더링: Markdown, HTML, JSON, XML/SVG, C++, Python, SQL 등을 에디터 타이핑과 실시간 동기화하여 렌더링
- 툴바 상단 버튼(
- 외부 파일 변경: 앱이 활성화되어 있을 때 1초 주기와 앱 재활성화 시 열린 파일을 확인합니다. 변경 알림에서 Reload from Disk 또는 Keep in Editor를 선택하며, 미저장 편집 내용을 다시 읽기로 교체할 때도 동의를 받습니다. Keep은 현재 디스크 상태에 대한 알림만 처리하므로 이후 수정은 다시 알려 줍니다. 외부에서 삭제된 파일도 편집기에 남고, 디스크와 다른 내용을 저장할 때는 덮어쓰기를 확인합니다.
- 새 파일 열기와 세션 복원: Finder·명령줄에서 전달된 파일은 이전 세션 복원 후 추가로 엽니다. 내용이 없는
new 1,new 2도 보존하며 탭은 사용자가 닫기 명령을 실행할 때만 제거합니다. 미저장 내용과 탭·창·패널 상태를session.json에 저장합니다. - 세션 백업과 복구: 새 스냅샷을 원자적으로 저장하기 전에 기존의 유효한 스냅샷을
.bak에 보관합니다. 기본 세션의 JSON 또는 문서 구조가 잘못되면 유효한 백업에서 복원하며, 손상된 기본 파일은 다음 저장 때 별도 복구 파일로 남깁니다. 자동 테스트는 임시 파일에서 백업 복원, 잘못된 데이터 거부, 저장 실패 시 기존 스냅샷 보존을 확인합니다. - 지속되는 열 모드: 편집 > 줄 연산 > 열 모드에서 명시적으로 켜고 끕니다. 입력·IME 조합·커서 이동·탭 전환으로 모드가 풀리지 않으며, 탭을 오갈 때 각 문서의 다중 커서·사각형 선택·가상 공간·스크롤 상태를 보존합니다.
⌥⌘C는 별도의 열 편집기 대화상자를 엽니다.
- 공통
NppTextInputSession이 조합 문자열·범위·종료 규칙을 관리하며, Scintilla 어댑터는 조합 중 편집과 확정된 문서 변경을 구분합니다. - 터미널은 조합 문자열을 출력 화면과 분리하고, 확정된 문자만 PTY로 전달합니다. 자동 테스트는 입력 콜백과 상태를 검증하며 실제 macOS 입력기의 키보드 전환·후보 선택 검증과는 구분합니다.
- 구조와 검증 범위는 ScintillaCocoaIME.md를 참고하십시오.
- Notepad++: 프로그램 정보, 환경설정 (
⌘,), 서비스, 가리기 (⌘H), 기타 가리기 (⌥⌘H), 종료 (⌘Q) - File (파일):
- 새로 만들기 (
⌘N), 열기 (⌘O), 디스크에서 다시 읽기 (⌘R), 저장 (⌘S), 다른 이름으로 저장 (⇧⌘S), 모두 저장 (⌥⌘S) - 파일 이름 변경, Finder에서 위치 열기 (
⇧⌘R), 터미널에서 열기 (⌥⌘T), 전체 경로/파일명/디렉토리 경로 복사 - 탭 닫기 (
⌘W), 모두 닫기 (⇧⌘W), 현재 탭 외 모두 닫기
- 새로 만들기 (
- Edit (편집):
- 실행 취소 (
⌘Z), 다시 실행 (⇧⌘Z), 잘라내기 (⌘X), 복사 (⌘C), 붙여넣기 (⌘V), 전체 선택 (⌘A) - 열 편집기... (
⌥⌘C): 텍스트 및 자동 증가 번호 일괄 삽입 - 줄 연산: 줄 복제 (
⌘D), 줄 나누기, 줄 합치기 (⌃J), 줄 위/아래로 이동 (⌥↑/⌥↓), 줄 오름차순/내림차순 정렬, 중복 줄 제거, 빈 줄 제거 - 공백 연산: 뒤쪽 공백 제거, 앞쪽 공백 제거, 양쪽 공백 제거, TAB을 공백으로, 공백을 TAB으로
- 대소문자 변환: 대문자로 변환 (
⇧⌘U), 소문자로 변환 (⌘U) - 주석: 한 줄 주석 토글 (
⌘/)
- 실행 취소 (
- Search (검색):
- 찾기 (
⌘F), 다음 찾기 (⌘G), 이전 찾기 (⇧⌘G), 바꾸기 (⌥⌘F), 선택 영역으로 찾기 (⌘E) - 줄로 이동 (
⌘L), 짝 맞춤 괄호로 이동 (⌘B) - 북마크: 북마크 설정/해제 (
⌘F2), 다음 북마크 (F2), 이전 북마크 (⇧F2), 모든 북마크 지우기
- 찾기 (
- View (보기):
- 좌측 Finder 탐색기 패널 토글 (
⌥⌘1), 하단 내장 터미널 토글 (⌥⌘2), 우측 실시간 렌더링 패널 토글 (⌥⌘3) - 확대 (
⌘+), 축소 (⌘-), 기본 확대/축소 복원 (⌘0) - 자동 줄 바꿈 (
⌥⌘W), 줄 번호 표시, 모든 문자 표시 (공백/줄바꿈 기호), 들여쓰기 가이드 표시 - 다크 모드 토글 (
⇧⌘D)
- 좌측 Finder 탐색기 패널 토글 (
- Encoding (인코딩):
- UTF-8 (기본), UTF-8 BOM, UTF-16 LE, UTF-16 BE, ANSI (CP1252), 한국어 (EUC-KR), 일본어 (Shift-JIS), 중국어 (Big5, GB2312)
- 줄바꿈 변환: Unix (LF), Windows (CRLF), Macintosh (CR)
- Language (언어): C/C++, Python, JavaScript/TypeScript, HTML, XML, JSON, CSS, Markdown, SQL, Rust, Go, Java, Swift, Kotlin, PHP, YAML, Shell 등 24개 이상 지원
- Settings (설정):
- 환경설정... (
⌘,): 11개 세부 설정 카테고리 마스터-디테일 창 - 스타일 환경설정...: 7대 테마 및 폰트 크기 직접 선택
- 환경설정... (
- Tools (도구 & 암호화):
- MD5 / SHA-256 해시 생성 (클립보드 자동 복사)
- Window (창): 창 최소화, 확대, 창 관리
- Help (도움말): Notepad++ Help Guide (
⇧⌘/또는 F1), About Notepad++
# 1. 실행 파일 빌드 (bin/notepad++)
make -f Makefile.mac all
# 2. 자동 테스트 실행
make -f Makefile.mac test
# 3. 독립형 macOS 애플리케이션 번들 생성 (bin/Notepad++.app)
make -f Makefile.mac bundle
# 4. 애플리케이션 실행
open bin/Notepad++.app# 1. VS Code 에디션 전체 컴파일
make -f Makefile.mac vscode-all
# 2. Electron 독립 모드 실행
make -f Makefile.mac vscode-run자동 테스트 러너(bin/npp_tests)는 문자열·인코딩 변환, 파일 변경 탐지, 문서 읽기·쓰기, 세션 저장·복구, Scintilla 선택 상태와 IME 콜백, 터미널 엔진 및 실제 PTY 입력을 검증합니다. 현재 테스트 수와 결과는 다음 명령의 실행 결과에서 확인할 수 있습니다.
make -f Makefile.mac testNotepad++는 GNU General Public License v3 하에 배포됩니다. macOS 네이티브 Cocoa 프론트엔드로 포팅되었습니다.