최근 제작된 Sphinx 확장에 대해 간단히 소개(2022년 04월 편)
홍보와 함께 무엇을 할 수 있는지 간단히 소개해 드리겠습니다.
이마
주로'영입 후 할 수 있는 일'을 소개한다.
프로그램 라이브러리를 소개할 때 기재된 URL로 이동하면 README를 참조할 수 있으므로 설치 방법 등을 개별적으로 보십시오.
본편을 소개하다
sphinxcontrib-budoux
Google이 공개한 BudouX 를 이용하여 Sphinx 문서의 일본어 문장을 적당한 위치에 삽입하는 확장입니다.
이러한 reStructuredText 문서의 경우
index.rst
あなたに寄り添う最先端のテクノロジー
====================================
일반적으로 내보낼 때 다음 HTML을 내보냅니다.before.html
<h1>あなたに寄り添う最先端のテクノロジー</h1>
sphinxcontrib-budoux
를 유효하게 설정하면 이런 출력이 발생합니다.after.html
<h1 style="word-break: keep-all; overflow-wrap: break-word;">あなたに<wbr/>寄り添う<wbr/>最先端の<wbr/>テクノロジー</h1>
BudouX가 문장으로 판단되는 곳에 탭<wbr>
을 삽입하고 속성style
을 추가하면 브라우저는 필요할 때 줄을 바꾸어 표시합니다.sphinxcontrib-external-link
외부 링크로 판단되는 인용 요소를 중단 처리
target="_blank"
하고rel="noreferrer"
의 확장입니다.일반 Sphinx 문서는 같은 창/탭에서 모든 링크로 이동합니다.
이 확장을 사용하면 모든 URL에 지정된 내용이 다른 창/태그에 열립니다.
※ 속성을 무조건 추가하기 위해서는 길고 짧은 시간이 필요합니다.
sphinxcontrib-oembed
포함된 형식
.. oembed:: URL
만 있으면 HTML 생성 시 oEmbed API를 통해 얻은 iframe을 포함할 수 있습니다... oembed:: https://twitter.com/attakei/status/1517152841550376961
위의reST원본에서 ↓의 충전을 간단하게 실현할 수 있다.또 사이트 축소판 그림에 게재된 공급업체 일람 JSON를 이용했기 때문에 상당 종류의 URL을 표준으로 대응할 수 있다.
sphinxcontrib-mixed-builder
HTML 출력 시 여러 빌더를 혼합할 수 있는 확장자입니다.
conf.py
mixed_builders = ["html", "revealjs"]
mixed_rules = [
{
"equal": "index",
"builder": "html",
},
{
"start": "slides/",
"builder": "revaljs"
},
]
예를 들어 상기 설정을 사용하여 실행make mixed
하면 다음과 같은 규칙에 따라 파일을 생성한다.index
의 문서는 컴파일러에 일반 HTMLhtml
로 시작하는 문서는 slides/
구조기에서 Revel입니다.js 형식의 HTML 생성 revealjs
에서 컴파일러에 일반 HTML 생성외국 편
googlefonts-markup
Pytohon에서 Google Fonts의 URL을 쉽게 처리할 수 있는 프로그램 라이브러리입니다.
>>> from googlefonts_markup import Font
>>> noto_sans_jp = Font(family_name="Noto Sans JP")
>>> noto_sans_jp.css_url()
'https://fonts.googleapis.com/css2?family=Noto+Sans+JP'
>>> noto_sans_jp.css_tag()
'<link href="https://fonts.googleapis.com/css2?family=Noto+Sans+JP" rel="stylesheet">'
html
는 클래스를 제공하기 때문에 Google Fonts의 CSS를 관리할 때 가독성을 약간 높일 수 있습니다.conf.py
# Sphinxでの利用例
from googlefonts_markup import Font
html_css_files = [
Font(family_name="Noto Sans JP").css_url(),
]
cookiecutter-sphinxcontrib
위의 Sphinx 확장을 작성하는 동안 직접 사용한 쿠키cutter 템플릿을 정리한 것입니다.
다음과 같은 내용이 첨부되어 있다.
Reference
이 문제에 관하여(최근 제작된 Sphinx 확장에 대해 간단히 소개(2022년 04월 편)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/attakei/articles/sphinx-extensions-202204텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)