Mac에서 코드 조각 OCR하기: 튜토리얼·스크린샷의 코드 복사
작성: Eduard Bruch, Optic 개발자 · 업데이트
이미지로만 표시된 코드를 복사하려면 OCR이 화면에서 읽게 한 다음 실행하기 전에 검토하세요. 라이브 텍스트는 Apple 앱 속 이미지에 쓸 수 있고, 코드 모드가 있는 화면 OCR 앱은 어디서든 작동하며 들여쓰기를 유지합니다.
짧은 답: 미리보기에서 열 수 있는 스크린샷 속 코드라면 라이브 텍스트를 써 보세요. 영상 속 코드, 채팅의 IDE 스크린샷, 이미지로만 된 문서의 코드라면 제 추천은 Optic입니다. 화면에서 드래그한 영역의 텍스트를 복사하는 메뉴 막대 앱이며(Mac App Store에서 4.99달러(일회성 구매)) 코드를 위한 코드 모드가 있습니다.
공개: 저는 Optic을 만듭니다.
코드가 다시 입력하기 가장 어려운 텍스트인 이유
산문은 작은 오류를 용서하지만 코드는 그렇지 않습니다. 밑줄 대신 하이픈을 쓰면 import가 깨지고, 괄호가 빠지면 함수가 깨지고, 엉뚱한 곳의 소문자 하나가 변수를 바꿉니다. 긴 셸 명령어, 정규식 패턴, 설정 블록은 사람들이 스크린샷으로 공유하는 바로 그것이며 가장 오타 내기 쉬운 바로 그것입니다.
방법 1: 라이브 텍스트
라이브 텍스트는 Apple이 지원하는 곳, 즉 미리보기, 사진, 퀵 룩, Safari의 이미지와 일부 플레이어에서 일시 정지한 영상 프레임에서 작동합니다. 임의의 앱 윈도우, 화상 통화, UI 텍스트에서는 작동하지 않습니다. 미리보기에 있는 코드 스크린샷 하나라면 텍스트를 선택해 복사해 볼 만합니다. 일반적인 텍스트 인식이 자주 어려워하는 부분이 들여쓰기이므로 붙여넣은 뒤 확인하세요.
방법 2: 코드 모드를 쓰는 Optic
Optic은 화면 어디에 있는 코드든 읽습니다. 튜토리얼 페이지, 일시 정지한 영상, Slack의 스크린샷, 풀 리퀘스트 댓글 등입니다.
- Optic의 설정에서 코드 모드를 켭니다(한 번만).
- 코드를 화면에 표시합니다.
- 메뉴 막대의 Optic 아이콘을 클릭하고 텍스트 캡처를 선택합니다.
- 코드 조각 위로 상자를 끕니다.
- Command-V로 편집기나 터미널에 붙여넣습니다.
코드 모드가 바꾸는 것은 다음과 같습니다.
- 들여쓰기가 유지됩니다. Optic은 이미지에서 텍스트가 놓인 위치를 바탕으로 각 줄의 들여쓰기를 계산하므로 중첩된 블록이 중첩된 채로 나옵니다. Python과 YAML에서 중요한 부분입니다.
- 언어 교정이 꺼집니다. 일반적인 텍스트 인식은 특이한 단어를 실제 단어 쪽으로 "교정"할 수 있습니다. 코드에서는 식별자가 바뀌게 되므로 코드 모드가 이를 끕니다.
인식은 Mac에서 Apple의 Vision 프레임워크로 이루어져 인터넷이 필요 없고 Optic에는 네트워크 접근이 없습니다. 스크린샷에 사내 코드가 있을 때 유용합니다.
대표적인 경우
- 문서의 터미널 명령어. 터미널 스크린샷에서 설치 또는 빌드 명령어를 복사합니다.
- 동료의 IDE 스크린샷. 채팅 스크린샷의 코드를 직접 읽고 테스트할 수 있는 편집기로 가져옵니다. Mac에서 Slack 이미지의 텍스트 복사하기를 보세요.
- 코딩 영상. 영상을 일시 정지하고 화면의 코드를 캡처합니다.
- 한 튜토리얼의 여러 코드 조각. 각 블록을 차례로 캡처하세요. 최근 캡처 20개가 메뉴 막대 기록에 남아 있으므로, 프로젝트에서 해당 부분에 이르렀을 때 각각 다시 복사할 수 있습니다.
실행하기 전에 검토하세요
OCR은 선명한 고해상도 코드에서는 좋지만 비슷한 문자를 여전히 혼동할 수 있습니다. 0과 O, 1과 l과 I, 직선 따옴표와 둥근 따옴표가 그렇고, 작거나 흐릿한 텍스트에서 특히 그렇습니다. 붙여넣은 내용을 실행하기 전에 끝까지 읽고, 편집기의 구문 강조가 이상한 부분을 알려 주게 하세요. OCR 출력을 읽지 않은 채 루트 권한의 셸에 곧바로 붙여넣지 마세요.
Optic이 맞지 않는 경우
- 파일 가져오기 없음. 이미지나 PDF를 열지 않으므로 먼저 화면에 표시하세요.
- 일괄 처리 없음. 한 번 드래그하면 한 번 캡처하므로, 코드 목록이 담긴 30페이지 PDF는 문서 OCR 도구의 일입니다.
- 구문 인식 없음. Optic은 문자를 인식할 뿐 코드를 검사하거나 포맷하지 않습니다.
- 손으로 쓴 글. 화이트보드 사진 속 코드를 읽는 것은 Optic이 약속하지 않는 일입니다.
코드 스크린샷에 대해 더 알아보려면 Mac에서 스크린샷의 코드 복사하기를 보세요.
FAQ
Mac에서 YouTube 튜토리얼의 코드는 어떻게 복사하나요?
코드가 선명하도록 영상을 일시 정지한 다음, 코드 모드를 켠 Optic 같은 화면 OCR 앱으로 그 위를 드래그하고 편집기에 붙여넣으세요.
OCR이 코드의 들여쓰기를 유지하나요?
Optic의 코드 모드에서는 유지합니다. 각 줄의 위치로부터 들여쓰기를 복원합니다. 코드 모드가 없으면 많은 OCR 도구가 앞쪽 공백 없이 줄을 돌려줍니다.
OCR로 얻은 코드를 믿고 실행해도 될까요?
대개 비슷하지만 확인하세요. 비슷하게 생긴 문자가 흔한 오류이므로 실행하기 전에 코드를 읽어 보세요.
Optic이 내 코드를 어딘가로 보내나요?
아니요. 인식은 Mac에서 실행되며 앱에는 네트워크 접근이 없습니다.
Mac App Store에서 Optic 받기 · Optic 관련 모든 사실. Optic에는 macOS 14 Sonoma 이상이 필요합니다. 도구를 비교하고 있나요? Optic vs TextSniper를 보세요.