전자책 편집하는 중¶
calibre에는 EPUB, KEPUB(Kobo), AZW3(Kindle) 형식의 책을 편집할 수 있는 통합 전자책 편집기가 포함되어 있습니다. 이 편집기는 책 파일 내부에서 사용되는 HTML과 CSS를 보여 주며, 변경 사항을 적용하면 실시간으로 업데이트되는 미리보기를 함께 제공합니다. 또한 일반적인 정리 및 수정 작업을 수행하는 다양한 자동화 도구도 포함하고 있습니다.
calibre에서 아무 책이나 마우스 오른쪽 버튼으로 클릭한 다음 :guilabel:`책 편집`을 선택하면 이 편집기를 사용할 수 있습니다.
기본 작업흐름¶
참고
calibre 전자책 편집기의 동영상 안내는 :website:`여기 <demo#tutorials>`에서 볼 수 있습니다.
책 편집 도구로 책을 처음 열면 왼쪽에 파일 목록이 표시됩니다. 여기에는 책의 내용을 구성하는 개별 HTML 파일, 스타일시트, 이미지 등이 포함됩니다. 파일을 두 번 클릭하면 바로 편집을 시작할 수 있습니다. 다만 몇 가지 작은 수정 이상의 작업을 하려면 `HTML Tutorial <https://www.w3schools.com/Html/default.asp>`_과 `CSS Tutorial <https://www.w3schools.com/css/default.asp>`_을 알고 있어야 합니다.
편집기에서 HTML이나 CSS를 수정하면 오른쪽 미리보기 패널에 변경 사항이 실시간으로 반영됩니다. 변경 결과가 마음에 들면 저장 버튼을 클릭하거나 :guilabel:`파일->저장`을 사용해 변경 내용을 전자책에 저장하십시오.
유용한 기능 중 하나가 :guilabel:`체크포인트`입니다. 본격적인 편집을 시작하기 전에 체크포인트를 만들 수 있습니다. 체크포인트는 현재 책의 상태를 보존해 두므로, 나중에 변경 결과가 마음에 들지 않으면 체크포인트를 만든 시점의 상태로 되돌릴 수 있습니다. 체크포인트를 만들려면 :guilabel:`편집->체크포인트 만들기`를 사용하십시오. 전역 검색 및 바꾸기 같은 자동화 도구를 실행할 때도 체크포인트가 자동으로 만들어집니다. 체크포인트 기능은 개별 파일 편집 시 사용하는 일반 실행 취소/다시 실행 기능과 별개입니다. 체크포인트는 변경 사항이 책의 여러 파일에 걸쳐 있을 때 특히 필요합니다.
이것이 책 편집의 기본 작업 흐름입니다. 즉, 파일을 열고, 수정하고, 미리 본 뒤 저장하는 것입니다. 이 설명서의 나머지 부분에서는 특정 작업을 효율적으로 수행할 수 있도록 다양한 도구와 기능을 설명합니다.
파일 탐색기¶
:guilabel:`파일 탐색기`는 편집 중인 책 내의 다양한 파일에 대한 개요를 제공합니다. 파일은 범주별로 정렬되며 상단에는 텍스트(HTML) 파일이 있고 그 다음에는 스타일시트(CSS) 파일, 이미지 등이 있습니다. 파일을 두 번 클릭하면 편집이 시작됩니다. HTML, CSS 및 이미지 파일에 대한 편집이 지원됩니다. 텍스트 파일의 순서는 책을 읽고 있는 경우 표시되는 순서와 같습니다. 다른 모든 파일은 알파벳순으로 정렬됩니다.
항목 위에 마우스를 올리면 파일 크기를 볼 수 있고, 화면 아래쪽에서는 책 내부의 해당 파일 전체 경로도 확인할 수 있습니다. 전자책 내부의 파일은 압축되어 있으므로 최종 책 크기는 개별 파일 크기의 합과 같지 않다는 점에 유의하십시오.
책 안의 많은 파일에는 특별한 의미가 있습니다. 이런 파일은 보통 이름 옆에 아이콘이 표시되어 그 의미를 알려 줍니다. 예를 들어 왼쪽 그림에서는 cover_image.jpg`와 :guilabel:`titlepage.xhtml 파일 이름 옆에 표지 아이콘이 보이는데, 이는 각각 책 표지 이미지와 표지 페이지라는 뜻입니다. 마찬가지로 content.opf 파일 옆의 메타데이터 아이콘은 이 파일에 책 메타데이터가 들어 있음을 뜻하고, toc.ncx 파일 옆의 T 아이콘은 이것이 목차 파일임을 뜻합니다.
개별 파일을 마우스 오른쪽 버튼으로 클릭하면 다양한 작업을 수행할 수 있습니다.
파일 이름 바꾸기¶
개별 파일은 마우스 오른쪽 버튼으로 클릭한 뒤 :guilabel:`이름 바꾸기`를 선택해 이름을 바꿀 수 있습니다. 파일 이름을 바꾸면 책 전체에서 해당 파일을 가리키는 모든 링크와 참조가 자동으로 업데이트됩니다. 따라서 새 이름만 입력하면 나머지는 calibre가 처리합니다.
여러 파일의 이름을 한 번에 바꿀 수도 있습니다. 파일 이름에 단순한 규칙을 적용하고 싶을 때 유용합니다. 예를 들어 모든 HTML 파일의 이름을 Chapter-1.html, Chapter-2.html처럼 바꾸고 싶을 수 있습니다. Shift 또는 Ctrl 키를 누른 채 파일을 클릭해 일괄 이름 바꾸기를 적용할 파일을 선택하십시오. 그런 다음 마우스 오른쪽 버튼을 눌러 :guilabel:`일괄 이름 바꾸기`를 선택합니다. 접두어와 자동 번호 매기기를 시작할 숫자를 입력한 뒤 확인을 누르면 끝입니다. 일괄 이름 바꾸기 대화 상자에서는 선택한 순서가 아니라 책에 나타나는 순서대로 파일 이름을 바꾸는 기능도 제공하므로, 예를 들어 모든 이미지를 등장 순서대로 이름 바꿀 때 유용합니다.
마지막으로 선택한 모든 파일의 확장자를 한 번에 바꿀 수도 있습니다. 위와 같이 여러 파일을 선택한 다음 마우스 오른쪽 버튼을 눌러 :guilabel:`선택한 파일의 확장자 변경`을 선택하십시오.
파일 병합¶
때로는 두 HTML 파일이나 두 CSS 파일을 하나로 합치고 싶을 수 있습니다. 모든 내용을 하나의 파일에 넣는 것이 유용할 때가 있습니다. 다만 많은 내용을 하나의 파일에 넣으면 일반적인 전자책 리더에서 책을 볼 때 성능 문제가 생길 수 있으므로 주의하십시오.
여러 파일을 병합하려면 Ctrl 키를 누른 채 파일을 클릭해 선택하십시오. 이때 반드시 한 종류의 파일만 선택해야 합니다. 즉, HTML 파일만 선택하거나 CSS 파일만 선택해야 합니다. 그런 다음 마우스 오른쪽 버튼을 눌러 병합을 선택하면 됩니다. 그러면 calibre가 파일을 병합하면서 병합된 파일에 대한 모든 링크와 참조도 자동으로 옮겨 줍니다. 단, 개별 파일이 서로 다른 스타일시트를 사용했을 수 있으므로 파일을 병합하면 텍스트 스타일이 바뀔 수 있다는 점에 유의하십시오.
텍스트 파일을 선택한 뒤 다른 텍스트 파일 위로 끌어다 놓아, 끌어놓은 텍스트 파일을 대상 텍스트 파일에 병합할 수도 있습니다.
텍스트 파일 순서 변경¶
책을 읽을 때 텍스트(HTML) 파일이 열리는 순서는 파일 탐색기`에서 파일을 끌어다 놓거나, 이동할 파일을 클릭한 뒤 :kbd:`Ctrl+Shift`와 :kbd:`위, 아래, Home, End 키를 함께 눌러 다시 정렬할 수 있습니다. 기술적으로는 이를 책의 spine 순서를 다시 정렬한다고 합니다.
항목은 다른 항목 *사이*에 놓아야 하며, 다른 항목 위에 바로 놓으면 안 됩니다. 익숙해지기 전에는 조금 까다롭게 느껴질 수 있습니다. 다른 파일 위에 놓으면 파일이 병합됩니다.
표지 지정¶
전자책에는 일반적으로 표지 이미지가 있습니다. 이 이미지는 :guilabel:`파일 탐색기`에서 이미지 이름 옆에 갈색 책 아이콘으로 표시됩니다. 다른 이미지를 표지로 지정하려면 파일을 마우스 오른쪽 버튼으로 클릭하고 :guilabel:`표지로 표시하기`를 선택하면 됩니다.
또한 EPUB 파일에는 *표지 페이지(titlepage)*라는 개념이 있습니다. 표지 페이지는 책의 제목 페이지/표지 역할을 하는 HTML 파일입니다. EPUB을 편집할 때는 마우스 오른쪽 버튼 메뉴를 사용해 HTML 파일을 표지 페이지로 지정할 수 있습니다. 단, 지정하는 파일에는 표지 정보만 들어 있어야 한다는 점에 주의하십시오. 만약 첫 장 같은 다른 내용이 들어 있다면, 사용자가 나중에 calibre에서 EPUB 파일을 다른 형식으로 변환할 때 그 내용이 사라질 수 있습니다. 변환 시 calibre는 지정된 표지 페이지에 표지만 있고 다른 내용은 없다고 가정하기 때문입니다.
파일 삭제¶
파일은 마우스 오른쪽 버튼 메뉴를 사용하거나 선택한 뒤 Delete 키를 눌러 삭제할 수 있습니다. 파일을 삭제하면 OPF 파일에서 해당 파일에 대한 모든 참조가 제거되므로 그 수고를 덜 수 있습니다. 다만 다른 위치의 참조는 제거되지 않으므로, 책 검사 도구를 사용해 쉽게 찾아 제거하거나 바꿀 수 있습니다.
파일 내보내기¶
책 내부의 파일을 컴퓨터의 다른 위치로 내보낼 수 있습니다. 이는 전문 도구를 사용해 파일만 따로 작업하고 싶을 때 유용합니다. 이렇게 하려면 파일을 마우스 오른쪽 버튼으로 클릭하고 :guilabel:`내보내기`를 선택하십시오.
내보낸 파일 작업을 마쳤다면, 파일을 다시 마우스 오른쪽 버튼으로 클릭하고 :guilabel:`파일로 바꾸기…`를 선택해 책 안으로 다시 가져올 수 있습니다. 그러면 앞서 내보낸 파일로 책 속의 해당 파일을 교체할 수 있습니다.
여러 편집기 인스턴스 사이에서 파일을 복사할 수도 있습니다. :guilabel:`파일 탐색기`에서 복사할 파일을 선택한 다음 마우스 오른쪽 버튼을 눌러 :guilabel:`선택한 파일을 다른 편집기 인스턴스로 복사`를 선택하십시오. 그런 다음 다른 편집기 인스턴스의 :guilabel:`파일 탐색기`에서 마우스 오른쪽 버튼을 눌러 :guilabel:`다른 편집기 인스턴스에서 파일 붙여넣기`를 선택하면 됩니다.
새 이미지/글꼴/기타 추가 또는 새 빈 파일 만들기¶
컴퓨터에 있는 새 이미지, 글꼴, 스타일시트 등을 파일 → 새 파일`을 클릭해 책에 추가할 수 있습니다. 여기서는 :guilabel:`리소스 파일 가져오기 버튼을 눌러 파일을 가져오거나, 새 파일 이름 상자에 이름을 입력해 빈 HTML 파일이나 스타일시트를 새로 만들 수 있습니다.
파일->책으로 파일 가져오기를 사용하면 여러 파일을 한 번에 책으로 가져올 수도 있습니다.
파일 바꾸기¶
파일을 마우스 오른쪽 버튼으로 클릭하고 바꾸기를 선택하면 책 안의 기존 파일을 쉽게 교체할 수 있습니다. 교체 파일의 이름이 기존 파일과 다르더라도, 모든 링크와 참조가 자동으로 업데이트됩니다.
HTML 파일에 스타일시트 효율적으로 연결하기¶
편의상 파일 탐색기에서 여러 HTML 파일을 선택하고 마우스 오른쪽 버튼을 클릭한 다음 스타일시트 연결을 선택하여 캘리버가 선택한 모든 HTML 파일에 해당 스타일시트에 대한 태그를 자동으로 삽입하도록 할 수 있습니다.
검색 & 교체¶
책 편집에는 현재 파일, 모든 파일, 현재 파일의 표시된 영역 등에서 텍스트를 검색하고 바꿀 수 있는 매우 강력한 검색 및 바꾸기 인터페이스가 있습니다. 일반 검색 또는 정규식을 사용해 검색할 수 있습니다. 고급 검색에 정규식을 사용하는 방법은 :ref:`regexptutorial`을 참조하십시오.
검색 및 바꾸기는 검색 → 찾기/바꾸기 메뉴 항목에서 시작할 수 있습니다. 이 기능을 사용하려면 HTML 또는 CSS 파일을 편집 중이어야 합니다.
찾을 텍스트는 찾기 상자에, 바꿀 텍스트는 바꾸기 상자에 입력하십시오. 그런 다음 적절한 버튼을 눌러 다음 일치를 찾거나, 현재 일치를 바꾸거나, 모든 일치를 한꺼번에 바꿀 수 있습니다.
상자 아래쪽의 드롭다운을 사용하면 현재 파일, 모든 텍스트 파일, 모든 스타일 파일, 또는 모든 파일을 대상으로 검색할 수 있습니다. 검색 모드는 일반(문자열) 검색과 정규식 검색 중에서 선택할 수 있습니다.
검색 식의 모든 일치 개수는 :guilabel:`검색->모두 개수 세기`로 확인할 수 있습니다. 개수 세기는 드롭다운 상자에서 현재 선택한 파일/영역 전체를 대상으로 실행됩니다.
현재 열려 있는 편집기에서 특정 줄로 이동하려면 :guilabel:`검색->줄로 이동`을 사용하십시오.
참고
검색 및 바꾸기의 강력한 기능을 제대로 활용하려면 정규식을 사용해야 합니다. :ref:`regexptutorial`을 참조하십시오.
저장된 검색¶
자주 사용하는 검색/바꾸기 식(함수 모드 식 포함)은 저장해 두고 여러 번 재사용할 수 있습니다. 검색을 저장하려면 찾기 상자에서 마우스 오른쪽 버튼을 눌러 :guilabel:`현재 검색 저장`을 선택하면 됩니다.
저장된 검색은 검색 → 저장된 검색`에서 불러올 수 있습니다. 그러면 적용할 수 있는 검색 및 바꾸기 식 목록이 표시됩니다. :kbd:`Ctrl 키를 누른 채 항목을 클릭하면 목록에서 여러 항목을 선택해 한 번에 여러 검색/바꾸기 식을 실행할 수도 있습니다.
함수 모드¶
함수 모드에서는 모든 찾기/바꾸기 작업에 대해 실행되는 매우 강력한 Python 함수를 직접 작성할 수 있습니다. 함수 모드에서는 사실상 원하는 거의 모든 텍스트 조작을 수행할 수 있습니다. 자세한 내용은 :doc:`function_mode`를 참조하십시오.
자동화 도구¶
책 편집에는 일반적인 작업을 돕는 다양한 도구가 있습니다. 이 도구들은 도구 메뉴에서 사용할 수 있습니다.
목차 편집¶
목차 편집을 쉽게 해 주는 전용 도구가 있습니다. :guilabel:`도구->목차->목차 편집`으로 실행하십시오.
목차 편집 도구는 현재 목차(있는 경우)를 왼쪽에 보여 줍니다. 항목을 두 번 클릭하면 텍스트를 바꿀 수 있습니다. 끌어서 놓기나 오른쪽의 버튼을 사용해 항목 순서를 다시 정렬할 수도 있습니다.
기존 목차가 없는 책의 경우, 이 도구는 텍스트에서 목차를 자동으로 생성하는 여러 옵션을 제공합니다. 문서의 제목, 링크, 개별 파일 등을 기준으로 생성할 수 있습니다.
개별 항목은 해당 항목을 클릭한 다음 이 항목이 가리키는 위치 변경 버튼을 눌러 편집할 수 있습니다. 그러면 책의 미니 미리보기가 열립니다. 책 보기 패널 위로 마우스 커서를 움직여 원하는 위치를 클릭하면 됩니다. 굵은 녹색 선이 위치를 표시해 줍니다. 원하는 위치가 맞으면 확인을 누르십시오.
책 검사¶
책 검사 도구는 실제 리더 장치에서 책이 의도한 대로 동작하지 못하게 할 수 있는 문제를 검색합니다. :guilabel:`도구->책 검사`로 실행하십시오.
발견된 문제는 사용하기 쉬운 목록으로 보기 좋게 보고됩니다. 목록의 항목을 클릭하면 해당 오류에 대한 도움말이 표시되며, 자동으로 수정할 수 있는 오류라면 자동 수정 옵션도 제공됩니다. 오류를 두 번 클릭하면 편집기에서 오류 위치를 열어 직접 수정할 수도 있습니다.
수행되는 검사 중 일부는 다음과 같습니다.
잘못된 HTML 마크업. 올바른 XML 형식으로 해석되지 않는 HTML 마크업은 모두 보고됩니다. 이를 수정하면 모든 환경에서 의도한 대로 마크업이 동작하도록 할 수 있습니다. calibre는 이런 오류를 자동으로 고칠 수도 있지만, 자동 수정은 때때로 예상 밖의 결과를 낼 수 있으므로 주의해서 사용하십시오. 늘 그렇듯 자동 수정 전에 체크포인트가 만들어지므로 모든 변경 사항을 쉽게 되돌릴 수 있습니다. 자동 수정은 HTML5 알고리즘(오류 허용성이 매우 높은 방식)으로 마크업을 해석한 뒤, 이를 올바른 XML로 변환하는 방식으로 동작합니다.
잘못되었거나 알 수 없는 CSS 스타일. 유효하지 않거나 CSS 2.1 표준(및 일부 CSS 3 속성)에 정의되지 않은 속성을 사용하는 CSS는 모두 보고됩니다. CSS는 모든 스타일시트, 인라인 style 속성, HTML 파일 안의 <style> 태그에서 검사됩니다.
끊어진 링크. 책 내부의 누락된 파일을 가리키는 링크를 보고합니다.
참조되지 않는 파일. 책 안에 있지만 다른 파일에서 참조되지 않거나 spine에 포함되지 않은 파일을 보고합니다.
중복된 spine 또는 manifest 항목, 잘못된 idref나 메타 표지 태그, 필수 구역 누락 등 OPF 파일의 다양한 일반 문제.
리더 장치에서 책이 제대로 동작하지 않을 수 있는 알려진 문제를 검사하는 다양한 호환성 검사.
표지 추가¶
:guilabel:`도구->표지 추가하기`를 통해 책에 표지를 쉽게 추가할 수 있습니다. 이렇게 하면 책에 있는 기존 이미지를 표지로 선택하거나 새 이미지를 책으로 가져와 표지로 만들 수 있습니다. EPUB 파일을 편집할 때 표지용 HTML 래퍼가 자동으로 생성됩니다. 책의 기존 표지가 발견되면 교체됩니다. 이 도구는 또한 자동으로 표지 파일을 OPF의 표지로 올바르게 표시합니다.
참조된 글꼴 포함하기¶
:guilabel:`도구->참조 글꼴 포함`에서 사용할 수 있는 이 도구는 책에서 참조하는 모든 글꼴을 찾고, 아직 포함되어 있지 않다면 컴퓨터에서 해당 글꼴을 찾아 책 안에 포함합니다. 단, 상용 라이선스 글꼴을 포함하기 전에 필요한 저작권/라이선스 권한을 갖추었는지 반드시 확인하십시오.
내장된 글꼴의 사용된 문자만 취하기 (Subsetting embedded fonts)¶
:guilabel:`도구->포함된 글꼴 서브셋 만들기`에서 사용할 수 있는 이 도구는 책의 모든 글꼴을 실제로 책 안에 मौजूद한 텍스트에 필요한 글리프만 포함하도록 줄여 줍니다. 일반적으로 글꼴 파일 크기를 약 50% 줄일 수 있습니다. 다만 글꼴을 서브셋으로 만들고 난 뒤 이전에 없던 문자를 포함한 새 텍스트를 추가하면, 해당 새 텍스트에는 글꼴이 동작하지 않을 수 있습니다. 따라서 이 작업은 작업 흐름의 마지막 단계에서만 수행하는 것이 좋습니다.
지능적 문장부호 처리¶
일반 텍스트의 대시, 줄임표, 따옴표, 여러 개의 하이픈 등을 올바른 조판 기호로 변환합니다. 단축형 단어 앞의 작은따옴표가 포함된 경우처럼 알고리즘이 때때로 잘못된 결과를 낼 수 있다는 점에 유의하십시오. :guilabel:`도구->구두점 스마트하게 바꾸기`에서 사용할 수 있습니다.
CSS 속성 변형하는 중¶
책의 스타일을 변환하는 규칙을 만듭니다. 예를 들어 빨간색 텍스트를 모두 초록색으로 바꾸거나, 책 안의 모든 텍스트 글꼴 크기를 두 배로 늘리거나, 특정 글꼴 계열의 텍스트를 기울임꼴로 만드는 규칙 등을 만들 수 있습니다.
규칙 작성은 간단하며, 규칙은 다음과 같은 자연어 형식을 따릅니다.
속성 color*가 *red*이면 *green*으로 *변경
속성 font-size*가 *임의의 값*이면 그 값을 *2*배로 *곱함
:guilabel:`도구->스타일 변환`에서 사용할 수 있습니다.
사용하지 않는 CSS 규칙 제거 중¶
스타일시트와 <style> 태그에서 사용되지 않는 CSS 규칙을 모두 제거합니다. 제작용 템플릿에서 만든 일부 책에는 실제 내용과 맞지 않는 불필요한 CSS 규칙이 많이 들어 있을 수 있습니다. 이런 불필요한 규칙은 모두 처리해야 하는 리더의 속도를 늦출 수 있습니다. :guilabel:`도구->사용되지 않는 CSS 제거`에서 사용할 수 있습니다.
HTML 수정¶
이 도구는 XML로 해석할 수 없는 HTML을 올바른 형식의 XML로 변환합니다. 전자책에는 올바른 XML 형식이 아닌 HTML이 들어 있는 경우가 매우 흔하므로, 이 도구는 그런 HTML을 고치는 과정을 자동화해 줍니다. HTML5 알고리즘(모든 현대 브라우저가 사용하는 알고리즘)으로 HTML을 해석한 뒤 그 결과를 XML로 변환하는 방식으로 동작합니다. 다만 자동 수정은 때때로 직관과 다른 결과를 낼 수 있다는 점을 기억하십시오. 원한다면 앞서 설명한 책 검사 도구를 사용해 HTML의 문제를 찾아 수동으로 수정할 수도 있습니다. :guilabel:`도구->HTML 수정`에서 사용할 수 있습니다.
파일 서식 정리¶
이 도구는 모든 HTML 및 CSS 파일을 자동으로 서식화하여 “보기 좋게” 만듭니다. 코드는 들여쓰기가 자동으로 맞춰지고, 필요한 곳에 빈 줄이 삽입되는 등 정리됩니다. 파일 서식 정리에는 깨진 HTML/CSS 자동 수정도 포함된다는 점에 유의하십시오. 따라서 자동 수정을 원하지 않는다면 먼저 책 검사 도구로 모든 문제를 고친 다음 그 후에 서식 정리를 실행하십시오. :guilabel:`도구->모든 파일 서식 정리`에서 사용할 수 있습니다.
참고
HTML에서는 CSS의 white-space 지시어에 따라 어떤 텍스트든 공백이 의미를 가질 수 있습니다. 따라서 서식 정리는 잠재적으로 HTML의 렌더링 결과를 바꿀 수 있습니다. 이를 최대한 피하기 위해 서식 정리 알고리즘은 다른 블록 수준 태그를 포함하는 블록 수준 태그만 정리합니다. 예를 들어 <p> 태그 내부 텍스트의 공백은 바꾸지 않습니다. 하지만 <body> 태그 안에 <p>, <div> 같은 블록 태그만 들어 있다면 서식 정리가 적용됩니다. 그래서 적절한 블록 수준 태그가 없는 파일은 서식 정리의 영향을 받지 않을 수도 있습니다. 이런 경우에는 좀 더 덜 신중한 다른 정리 도구를 시도해 볼 수 있습니다. 예를 들어 HTML Tidy 같은 도구가 있습니다.
본문 안에 목차 삽입¶
일반적으로 전자책에서 목차는 본문과 분리되어 있으며, 보통 전자책 읽기 장치의 전용 목차 버튼/메뉴를 통해 접근합니다. calibre를 사용하면 본문 일부가 되는 인라인 목차를 자동으로 생성할 수도 있습니다. 이 목차는 현재 정의된 목차를 바탕으로 만들어집니다.
이 도구를 여러 번 사용하면 실행할 때마다 이전에 만들어진 인라인 목차가 새 것으로 바뀝니다. 이 도구는 :guilabel:`도구->목차->본문 안에 목차 삽입`에서 사용할 수 있습니다.
의미 정보 설정¶
이 도구는 EPUB 파일에서 *의미 정보(semantics)*를 설정하는 데 사용됩니다. 의미 정보란 간단히 말해, 책 안의 특정 위치가 특별한 의미를 가진다는 것을 식별해 주는 OPF 파일의 링크입니다. 이를 사용하면 머리말, 헌사, 표지, 목차 등을 지정할 수 있습니다. 지정하려는 의미 정보의 종류를 선택한 다음, 링크가 가리켜야 할 책 속 위치를 선택하면 됩니다. 이 도구는 :guilabel:`도구->의미 정보 설정`에서 사용할 수 있습니다.
스타일 정보 필터링¶
이 도구를 사용하면 지정한 CSS 스타일 속성을 책 전체에서 손쉽게 제거할 수 있습니다. 예를 들어 color, background-color, line-height 같은 속성을 지정하면 스타일시트, <style> 태그, 인라인 style 속성 등 해당 속성이 나타나는 모든 곳에서 제거합니다. 스타일 정보를 제거한 뒤에는 변경된 모든 내용의 요약이 표시되어 정확히 무엇이 바뀌었는지 확인할 수 있습니다. 이 도구는 :guilabel:`도구->스타일 정보 필터링`에서 사용할 수 있습니다.
책 내부 구조 업그레이드¶
가능한 경우 이 도구를 사용해 책의 내부 구조를 업그레이드할 수 있습니다. 예를 들어 EPUB 2 책을 EPUB 3 책으로 업그레이드합니다. 이 도구는 :guilabel:`책 내부 구조 업그레이드`에서 사용할 수 있습니다.
체크포인트¶
:guilabel:`체크포인트`는 책의 현재 상태를 “특별한 상태”로 표시하는 방법입니다. 이후 책에 원하는 변경을 계속한 다음 결과가 마음에 들지 않으면 체크포인트를 만든 상태로 돌아갈 수 있습니다. 체크포인트는 앞 절에서 설명한 자동화 도구를 실행할 때마다 자동으로 만들어집니다.
체크포인트는 :guilabel:`편집->체크포인트 만들기`로 만들 수 있습니다. 이전 체크포인트로 돌아가려면 :guilabel:`편집->되돌리기 …`를 사용하십시오.
체크포인트 기능은 개별 파일을 편집할 때의 일반적인 실행 취소/다시 실행 기능에 추가로 제공됩니다. 변경 사항이 책의 여러 파일에 걸쳐 있거나, 서로 관련된 큰 변경 묶음을 한 번에 되돌리고 싶을 때 체크포인트가 필요합니다.
사용 가능한 체크포인트 목록은 보기 → 체크포인트`에서 확인할 수 있습니다. 관심 있는 체크포인트를 선택하고 :guilabel:`비교 버튼을 클릭하면 전자책 비교 도구를 사용해 현재 책 상태와 해당 체크포인트를 비교할 수 있습니다. 되돌리기 버튼을 누르면 해당 체크포인트가 만들어진 이후의 모든 변경 사항을 취소하고 책을 선택한 체크포인트 상태로 복원합니다.
실시간 미리보기 패널¶
실시간 미리보기 패널은 현재 수행 중인 변경 사항을 실시간으로 보여 줍니다(1~2초 정도 지연될 수 있음). HTML 또는 CSS 파일을 편집하면 변경 사항이 반영되도록 미리보기 패널이 자동으로 업데이트됩니다. 편집기에서 커서를 움직이면 미리보기 패널도 그 위치를 따라가며 책에서 대응되는 위치를 보여 줍니다. 미리보기 패널을 클릭하면 편집기의 커서가 클릭한 요소 위로 이동합니다. 책 안의 다른 파일을 가리키는 링크를 클릭하면 해당 파일이 편집기와 미리보기 패널에서 자동으로 열립니다.
미리보기 패널 아래의 버튼을 사용하면 위치 자동 동기화와 변경 사항의 실시간 미리보기를 끌 수 있습니다. 미리보기 패널은 편집기에서 활발히 타이핑 중이 아닐 때만 실시간으로 갱신되므로, 렌더링을 기다리느라 방해받거나 작업 속도가 느려지지 않습니다.
미리보기 패널은 텍스트가 실제로 어떻게 보일지 보여 줍니다. 하지만 미리보기 패널은 실제 리더 장치에서 책을 시험해 보는 것을 대신할 수는 없습니다. 실제 리더보다 더 잘하는 부분도 있고 덜하는 부분도 있습니다. 대부분의 리더 장치보다 오류나 느슨한 마크업을 더 잘 허용하기도 합니다. 반대로 페이지 여백, 페이지 나눔, 글꼴 이름 별칭을 사용하는 내장 글꼴 등은 보여 주지 못합니다. 작업 중에는 미리보기 패널을 활용하되, 작업을 마친 뒤에는 실제 리더 장치나 소프트웨어 에뮬레이터에서 다시 검토하십시오.
참고
글꼴 파일 내부의 글꼴 이름이 CSS @font-face 규칙의 이름과 일치하지 않으면 미리보기 패널에서는 해당 내장 글꼴을 지원하지 않습니다. 이런 문제 글꼴은 책 검사 도구를 사용해 빠르게 찾아 수정할 수 있습니다.
HTML 파일 분할¶
미리보기 패널의 잘 알려지지 않은 유용한 활용법 중 하나는 긴 HTML 파일을 분할하는 것입니다. 분할하려는 파일을 보고 있는 상태에서 미리보기 패널 아래의 분할 모드 버튼 |spmb|을 클릭하십시오. 그런 다음 파일을 나누고 싶은 위치로 마우스를 움직여 클릭하면 됩니다. 마우스를 움직이는 동안 굵은 녹색 선이 분할이 일어날 정확한 위치를 보여 줍니다. 원하는 위치를 찾으면 클릭하기만 하면 분할이 수행됩니다.
파일을 분할하면 파일의 아래쪽 절반을 가리키던 모든 링크와 참조가 자동으로 업데이트되며, 새로 분할된 파일이 편집기에서 열립니다.
편집기에서 파일 내부를 마우스 오른쪽 버튼으로 클릭하고 :guilabel:`여러 위치에서 분할`을 선택하면, 하나의 HTML 파일을 여러 위치에서 자동으로 분할할 수도 있습니다. 이를 이용하면 큰 파일을 모든 제목 태그 위치나 특정 클래스를 가진 모든 태그 위치에서 쉽게 나눌 수 있습니다.
실시간 CSS 패널¶
실시간 CSS 패널은 현재 편집 중인 태그에 적용되는 모든 스타일 규칙을 보여 줍니다. 편집기에서의 줄 번호와 함께 태그 이름이 표시되고, 그 아래에 일치하는 스타일 규칙 목록이 표시됩니다.
어떤 태그에 어떤 스타일 규칙이 적용되는지 빠르게 확인할 수 있는 훌륭한 방법입니다. 이 보기에는 클릭 가능한 링크(파란색)도 있으며, 스타일 규칙을 수정하고 싶을 때 해당 스타일이 정의된 위치로 바로 이동할 수 있습니다. 태그에 직접 적용되는 규칙뿐 아니라 상위 태그에서 상속된 규칙도 함께 표시됩니다.
이 패널은 해당 태그에 대해 최종적으로 계산된 스타일도 보여 줍니다. 우선순위가 더 높은 규칙에 의해 덮어쓰인 속성은 목록에서 취소선으로 표시됩니다.
실시간 CSS 패널은 :guilabel:`보기->실시간 CSS`에서 켤 수 있습니다.
기타 도구¶
책을 편집하는 동안 유용하게 쓸 수 있는 도구가 몇 가지 더 있습니다.
목차 보기¶
목차 보기는 책의 현재 목차를 보여 줍니다. 항목을 두 번 클릭하면 해당 항목이 가리키는 위치가 편집기에서 열립니다. 마우스 오른쪽 버튼을 눌러 목차를 편집하거나, 보기를 새로 고치거나, 모든 항목을 펼치거나 접을 수 있습니다. 이 보기는 :guilabel:`보기->목차`에서 열 수 있습니다.
책에 있는 단어의 철자 검사¶
:guilabel:`도구->철자 검사`를 통해 철자 검사기를 실행할 수 있습니다.
단어는 책에 나타나는 횟수와 해당 단어가 속한 언어와 함께 표시됩니다. 언어 정보는 책의 메타데이터와 HTML 파일의 lang 속성에서 가져옵니다. 덕분에 여러 언어의 텍스트가 섞여 있는 책에서도 맞춤법 검사기가 잘 동작합니다. 예를 들어 아래 HTML 예제에서 color라는 단어는 미국 영어로, colour라는 단어는 영국 영어로 검사됩니다.
<div lang="en_US">color <span lang="en_GB">colour</span></div>
참고
단어를 두 번 클릭하면 편집기에서 그 단어의 다음 출현 위치가 강조 표시됩니다. 단어를 직접 수정하거나 어떤 문맥에서 쓰였는지 보고 싶을 때 유용합니다.
단어를 변경하려면 오른쪽에 제안된 대체 철자 중 하나를 두 번 클릭하거나, 나만의 수정한 철자를 직접 입력하고 선택한 단어를 다음으로 변경 버튼을 클릭하십시오. 이것은 책에 나오는 모든 단어를 대체합니다. 또한 메인 단어 목록에서 단어를 오른쪽 클릭하면 오른쪽 클릭 메뉴에서 편리하게 단어를 변경할 수 있습니다.
Ignore 버튼을 클릭하여 철자 검사기가 현재 세션의 단어를 무시하도록 할 수 있습니다. 사전에 추가하기 버튼을 클릭하여 사용자 사전에 단어를 추가할 수도 있습니다. 철자 검사기는 여러 사용자 사전을 지원하므로 단어를 추가할 사전을 선택할 수 있습니다.
철자 검사기가 철자가 잘못된 단어뿐만 아니라 책의 모든 단어를 표시하도록 할 수도 있습니다. 이것은 책에서 가장 많이 사용되는 단어를 확인하고 간단한 검색을 실행하고 개별 단어를 바꿀 때 유용합니다.
참고
맞춤법 검사 도구를 열어 둔 상태에서 파일을 편집해 책을 변경했다면, 맞춤법 검사 도구의 새로 고침 버튼을 클릭해야 합니다. 그렇게 하지 않고 계속 맞춤법 검사 도구를 사용하면 편집기에서 한 변경 사항을 잃을 수 있습니다.
참고
맞춤법 검사 도구를 실행할 때 특정 파일을 검사 대상에서 제외하려면 파일 제외 버튼을 사용하거나, 해당 파일의 시작 태그 바로 아래에 다음 주석을 추가하십시오.
<!-- calibre-no-spell-check -->
새 사전 추가¶
철자 검사기에는 영어 및 스페인어 사전이 내장된되어 있습니다. :guilabel:`환경설정->편집기->철자 사전 관리`를 통해 나만의 사전을 설치할 수 있습니다. 철자 검사기는 LibreOffice 프로그램의 사전(.oxt 형식)을 사용할 수 있습니다. 이 사전은 `LibreOffice Extensions 저장소 <https://extensions.libreoffice.org/?Tags%5B%5D=50>`_에서 다운로드할 수 있습니다.
특수 문자 삽입¶
편집 → 특수 문자 삽입 도구를 사용하면 입력하기 어려운 문자를 넣을 수 있습니다. 이 도구는 모든 유니코드 문자를 보여 주며, 입력하려는 문자를 클릭하기만 하면 됩니다. 클릭할 때 Ctrl 키를 누르고 있으면 선택한 문자를 넣은 뒤 창이 자동으로 닫힙니다. 이 도구는 본문뿐 아니라 검색 및 바꾸기 도구 같은 사용자 인터페이스의 다른 영역에도 특수 문자를 삽입할 때 사용할 수 있습니다.
문자가 아주 많기 때문에, 먼저 표시될 나만의 즐겨찾기 문자를 지정할 수 있습니다. 문자를 마우스 오른쪽 버튼으로 클릭하면 즐겨찾기로 표시됩니다. 즐겨찾기에 있는 문자도 마우스 오른쪽 버튼으로 클릭해 즐겨찾기에서 제거할 수 있습니다. 마지막으로 즐겨찾기 재배열 버튼을 클릭한 뒤 끌어서 놓아 즐겨찾기 문자의 순서를 바꿀 수 있습니다.
키보드를 사용해 특수 문자를 직접 입력할 수도 있습니다. 방법은 문자의 유니코드 코드(16진수)를 입력한 뒤 Alt+X 키를 누르는 것입니다. 그러면 방금 입력한 코드가 해당 문자로 변환됩니다. 예를 들어 ÿ를 입력하려면 ff를 입력한 다음 Alt+X`를 누르면 됩니다. 줄바꿈 없는 공백은 a0 다음 :kbd:`Alt+X, 가로 줄임표는 2026 다음 :kbd:`Alt+X`를 사용하면 됩니다.
마지막으로 HTML 이름 엔터티를 사용해 특수 문자를 입력할 수도 있습니다. 예를 들어 를 입력한 뒤 세미콜론을 치면 줄바꿈 없는 공백으로 바뀝니다. 이 치환은 세미콜론을 입력하는 순간에만 일어납니다.
코드 검사기 보기¶
이 보기는 현재 관심 있는 요소에 적용되는 HTML 코드와 CSS를 보여 줍니다. 미리보기 패널의 위치를 마우스 오른쪽 버튼으로 클릭한 뒤 :guilabel:`검사`를 선택하면 열 수 있습니다. 이 보기를 사용하면 해당 요소의 HTML 코드와, 더 중요하게는 그 요소에 적용되는 CSS 스타일을 확인할 수 있습니다. 스타일을 동적으로 편집해 변경 효과를 즉시 확인할 수도 있습니다. 다만 여기서 스타일을 편집해도 실제 책 내용이 바뀌는 것은 아니며, 빠른 실험을 위한 기능일 뿐입니다. 검사기 내부의 실시간 편집 기능은 현재 개발 중입니다.
외부 링크 검사¶
이 도구를 사용하면 책 안에서 외부 웹사이트를 가리키는 모든 링크를 검사할 수 있습니다. 이 도구는 외부로 연결된 모든 웹사이트에 접속을 시도하며, 접속에 실패하면 끊어진 링크를 수정하기 쉬운 형식으로 보고해 줍니다.
외부 리소스 다운로드 중¶
이 도구를 사용하면 책에 포함되어 있지 않은 이미지/스타일시트 등의 리소스(즉 인터넷상의 위치를 가리키는 URL을 가진 리소스)를 자동으로 다운로드할 수 있습니다. 이런 리소스를 모두 찾아 자동으로 내려받아 책에 추가하고, 그 리소스를 가리키는 모든 참조를 다운로드한 파일을 사용하도록 바꿉니다.
파일을 형식별 폴더로 정리¶
종종 어딘가에서 가져온 EPUB 파일을 편집할 때 EPUB 내부의 파일이 다른 하위 폴더에 아무렇게나 배열되어 있음을 알 수 있습니다. 이 도구를 사용하면 모든 파일을 유형에 따라 자동으로 하위 폴더로 이동할 수 있습니다. :guilabel:`도구->폴더에 정렬`을 통해 액세스합니다. 이 도구는 EPUB 내에서 파일이 정렬되는 방식만 변경하며 파일 탐색기에 표시되는 방식은 변경하지 않습니다.
다른 전자책 형식의 파일을 EPUB로 가져오는 중¶
이 편집기에는 전체 변환 과정을 거치지 않고 다른 전자책 형식의 파일을 바로 새 EPUB으로 가져오는 기능이 있습니다. 이 기능은 손수 편집한 HTML 파일에서 EPUB 파일을 직접 만들 때 특히 유용합니다. :guilabel:`파일->HTML 또는 DOCX 파일을 새 책으로 가져오기`에서 사용할 수 있습니다.
보고서 도구¶
이 편집기에는 도구 → 보고서`에서 사용할 수 있는 훌륭한 *보고서* 도구가 있어, 책에서 사용된 파일, 이미지, 링크, 단어, 문자, 스타일의 요약을 보여 줍니다. 보고서의 모든 줄은 클릭 가능한 링크입니다. 줄을 두 번 클릭하면 책 안에서 해당 항목이 사용되거나 정의된 위치로 바로 이동합니다. 예를 들어 :guilabel:`링크 보기에서는 원본 열의 항목을 두 번 클릭해 링크가 정의된 위치로 이동하고, 대상 열의 항목을 두 번 클릭해 링크가 가리키는 위치로 이동할 수 있습니다.
코드 편집기의 특수 기능¶
calibre HTML 편집기는 매우 강력합니다. HTML(및 CSS) 편집을 더 쉽게 해 주는 많은 기능을 갖추고 있습니다.
구문 강조표시¶
HTML 편집기에는 매우 정교한 구문 강조 기능이 있습니다. 예를 들면 다음과 같습니다.
굵게, 기울임꼴, 제목 태그 내부의 텍스트가 굵게/기울임꼴로 표시됩니다.
HTML 안에서 커서를 움직이면 짝이 맞는 HTML 태그가 강조 표시되며, Ctrl+{ 및 Ctrl+} 단축키를 사용해 여는 태그나 닫는 태그로 바로 이동할 수 있습니다. 비슷하게 Ctrl+Alt+T 또는 :kbd:`Ctrl+Shift+T`로 태그 내부 내용을 선택할 수도 있습니다.
잘못된 HTML은 빨간 밑줄로 강조 표시됩니다.
제목과 같은 속성 및 HTML 태그 내 텍스트의 철자 오류가 강조 표시됩니다. 철자 검사는 현재 태그의
lang속성 값과 전체 책 언어를 기반으로 언어를 인식합니다.
<style>태그 안에 포함된 CSS가 강조 표시됩니다.줄바꿈 없는 공백, 서로 다른 종류의 하이픈 등 구분하기 어려운 특수 문자도 강조 표시됩니다.
<a>,<img>,<link>태그 안에서 다른 파일을 가리키는 링크는 모두 파일명이 강조 표시됩니다. 그리고 그 파일명이 가리키는 대상이 존재하지 않으면 파일명에 빨간 밑줄이 표시됩니다.
문맥에 맞는 도움말¶
HTML 태그 이름이나 CSS 속성 이름을 마우스 오른쪽 버튼으로 클릭하면 해당 태그나 속성에 대한 도움말을 볼 수 있습니다.
Ctrl 키를 누른 채 링크 태그 안의 파일명을 클릭하면 해당 파일이 편집기에서 자동으로 열립니다. 마찬가지로 클래스 이름을 Ctrl 클릭하면 해당 태그와 클래스에 일치하는 첫 번째 스타일 규칙으로 이동합니다.
HTML 파일에서 클래스 이름을 마우스 오른쪽 버튼으로 클릭하면 클래스 이름을 바꿀 수 있으며, 그러면 책 전체와 모든 스타일시트에 있는 해당 클래스의 모든 출현 위치가 함께 변경됩니다.
자동 완성¶
전자책을 편집할 때 가장 번거로운 작업 중 하나는 책 안의 다른 파일, CSS 스타일시트, 이미지 등에 대한 링크를 만드는 일입니다. 올바른 파일명과 상대 경로를 직접 알아내야 하기 때문입니다. 편집기에는 이를 더 쉽게 해 주는 자동 완성 기능이 있습니다.
파일명을 입력하기 시작하면 편집기가 자동으로 추천 목록을 표시합니다. Tab 키를 눌러 올바른 파일명을 선택하면 됩니다. 편집기는 다른 HTML 파일 안의 앵커를 가리키는 링크에 대해서도 추천을 제공합니다. # 문자를 입력하면 편집기가 대상 파일의 모든 앵커 목록을 보여 주며, 올바른 앵커를 고를 수 있도록 짧은 텍스트 조각도 함께 표시합니다.
대부분의 다른 자동 완성 시스템과 달리, 편집기의 자동 완성 시스템은 부분 수열 매칭을 사용합니다. 즉 파일명 어디에서든 두세 글자만 입력해도 파일명을 완성할 수 있습니다. 예를 들어 ``../images/arrow1.png``라는 파일명을 원한다면, 그냥 ``ia1``을 입력하고 :kbd:`Tab`을 눌러 완성할 수 있습니다. 일치를 찾을 때 자동 완성 시스템은 단어 시작 부분에 있는 문자나 경로 구분자 바로 뒤에 있는 문자를 우선시합니다. 이 방식에 익숙해지면 시간과 수고를 많이 아낄 수 있다는 것을 알게 될 것입니다.
토막글¶
calibre 전자책 편집기는 *스니펫*을 지원합니다. 스니펫은 자주 재사용되거나 중복된 텍스트가 많이 들어 있는 텍스트 조각입니다. 편집기에서는 몇 번의 키 입력만으로 스니펫을 삽입할 수 있습니다. 스니펫은 매우 강력해서, 이동 가능한 자리표시자, 반복된 텍스트의 자동 미러링 같은 다양한 기능을 제공합니다. 자세한 내용은 :doc:`snippets`를 참조하십시오.
