물론 대답은 여러 가지 요소에 따라 달라질 수 있지만 , 올바른 형식의 일반 텍스트 코드로 시작하면 여기에서 다소 일반화 할 수 있습니다.
소스 텍스트의 초기 '포맷'은
개행 문자 , 공백 및 탭 문자입니다. 줄 바꿈과 수동 줄 바꿈 (DTP 소프트웨어에서와 같이)은 같지 않으며, 그 반대의 경우도 있지만, 일부 희귀 언어 는
다른 형식 문자를 허용 할 수 있습니다 .
주석은 코드의 실행 가능한 부분이 아니므로 실제로 주석인지 알고 있으면 위험없이 다시 포맷 할 수 있습니다. 먼저 살펴볼 것은 주석에 태그를 지정하는 방법입니다.
초기 일반 텍스트 형식에 대한 몇 가지 기본 사항을 알고 있으면 좋습니다. 예를 들어 Python의 경우 PEP8 스타일 안내서가 있습니다. Python 용으로 작성되었지만이 형식 안내서는 C / C ++ 및 Java와 같은 주요 언어에 대한 참조로 사용될 수 있습니다. 다양한 예제 프로젝트를 살펴보면 의심이가는 경우 도움이 될 수 있습니다.
따라서 첫 번째 원칙은 다음과 같습니다 . 소스 텍스트를 변경하지 마십시오.
체크리스트를 살펴볼 것입니다.
- 어떤 단계에서도 문자 자동 교체 가 발생하지 않습니다.
- 100 % 확실하지 않으면 텍스트를 편집하지 않습니다.
- 줄 바꿈이 나타나지 않습니다.
- 들여 쓰기는 시각적으로 유지되며 일관됩니다 ( 들여 쓰기 레벨 당 4 개의 x 너비).
- 초기 (0) 들여 쓰기 수준이 표시되어야합니다.
- 정의 된 스타일은 구문의 서식을 손상시키지 않습니다 (구문 강조 표시가 사용되는 경우).
- 원본 형식을 다시 확인하거나 새로 시작할 수 있도록 원본을 일반 텍스트로 백업하십시오.
- 줄 번호 (있는 경우)는 설명에서 참조 할 경우 특히 손상되지 않아야합니다.
실제로 원본 소스의 형식이 올바른 경우 줄 바꿈이 없어야합니다. 줄 바꿈 된 줄이 여전히 나타나고 피할 수없는 경우에는 한 단계 매달린 들여 쓰기가 가장 일반적인 솔루션입니다 (위의 링크 된 PEP 참조). 줄 바꿈이 필요한 경우 스타일 가이드 나 작성자에게 문의하십시오.
여전히 일부 사소한 '공백'문자는 교체가 필요할 수 있습니다. 소스는 탭 문자를 포함 할 수 있기 때문에, 이것은 조판자가 각 줄의 시작 부분에있는 모든 탭이 일관되도록해야합니다. 즉, 중첩 된 들여 쓰기는 시각적으로 유지되고 모든 다음 들여 쓰기 레벨은 동일한 너비입니다 (약 4 x x 한 수준의 들여 쓰기 당 너비).
공백 문자 나 혼합 공백 및 탭으로 만든 들여 쓰기는 표로 바꾸어야하며, 필요한 경우 들여 쓰기를 조정하는 것이 더 쉬울 수 있습니다.
물론 공백을 남길 수는 있지만 글꼴을 변경할 때 너비를 관리하기가 어려워지고 테이블 열과 같이 내부 줄 들여 쓰기를 맞추기가 더 어려울 수 있습니다.
고정 폭 글꼴 + 공백
소스가 의도적으로 공백으로 포맷되어 있고 고정 폭 글꼴로만 읽도록 의도 된 경우 (예 : ASCII 다이어그램 또는 ASCII 아트) 공백을 완전히 변경하지 않아야하지만 처음부터 결정해야합니다. 이 경우 "Courier New"글꼴이 가장 일반적입니다. 그래도 실제로 필요하지 않다면, 오늘날에는 점점 더 적은 수의 새로운 사람들이 코딩을 위해 고정 폭을 선택하기 때문에 고정 폭에 반대하는 것이 좋습니다.
일반적으로 압축 된 (예 : Arial 좁은) 작은 글꼴은 더 잘 작동 할 수 있습니다. 본문과 대조적으로 강조하고 코드를 더 작게 만들므로 원치 않는 줄 바꿈이 나타날 가능성이 줄어 듭니다.
여기에 선을 그릴 수 있다고 생각하고 위의 작업을 수행하면 적어도 색상이없는 일반 단일 글꼴 코드 블록의 경우 모든 것이 잘 될 확률이 99 %입니다.
도구 및 고급 형식
또한 구문 강조를 사용하여 모양을 크게 개선 할 수 있습니다.
컬러 인쇄 또는 화면보기 : 풀 컬러 레이아웃에서는 강조 표시의 모든 기능을 사용할 수 있으므로 최상의 시나리오이지만 인쇄시 약간의 색상이 변경 될 수 있습니다.
회색조 또는 흑백 인쇄 : 여기서 굵은 체 (예 : 키워드) 또는 기울임 꼴 (예 : 주석)을 사용할 수 있지만 색상은 모든 결과에서 회색으로 변환됩니다. 예를 들어 회색으로 표시된 주석은 디스플레이에서 잘 보이지만 용지에는 너무 희미해질 수 있습니다.
가장 중요한 질문은 레이아웃 제작자가 코드를 읽을 수있는 형태로 표현할 수있는 도구를 가지고 있는지 여부입니다. 다행스럽게도 코드 편집을위한 많은 무료 도구가 있으며, Windows 용으로 가장 두드러진 도구는 Notepad ++, VSCode, Visual Studio 입니다. 그러나 탭이 공백으로 암시 적으로 자동 변환 될 수 있다는 점에 유의하십시오.
메모장 ++에는 코드를 RTF 로 내보내는 옵션 이 있으며 소스의 모든 서식과 구문 강조 표시를 유지합니다.
코드 프리젠 테이션에서 레이아웃이 텍스트 흐름을 변경하지 않아도되는 경우 이미지 (스크린 샷)를 직접 사용할 수 있습니다. 텍스트처럼 유연하지는 않지만 100 % 서식 및 줄 번호를 유지하고 많은 시간을 절약 할 수 있습니다. 예를 들어 줄 번호는 텍스트 형식으로 유지하기 까다로울 수 있습니다. PDF 로 내보내는 것도 좋은 대안입니다. 그러나 모든 DTP 소프트웨어가 PDF를 포함 할 수있는 것은 아니며 PDF로 인쇄 할 때 일부 형식이 손실 될 수 있습니다.
예를 들어 Notepad ++에서 Python 코드 설정은 다음과 같습니다.
이것은 단지 스크린 샷을 직접 사용할 수 있으며 실제로 가장 쉬운 방법 일 수 있음을 설명하기위한 것입니다. 화면 캡처에 도움이되는 다양한 도구가 있습니다. 고해상도 이미지를 위해 화면을 '스티칭'해야 할 수도 있습니다.
색상 체계는 물론 지원되는 언어를 이미 알고있는 편집기의 스타일 구성자에 정의 된 개별 구성에 따라 구문을 모르더라도 잘못된 형식을 만들기가 어렵습니다. 여기에는 일반적인 타이포그래피 규칙이 적용됩니다. 너무 많은 색상, 일관된 글꼴, 들여 쓰기, 편안한 줄 간격.
사용자 정의 언어 정의를위한 추가 도구 / 플러그인도 일반적이지만 구문 지식이 필요합니다.