hugo에서 수식 입력은 보통 테마에서 KaTeX를 쓸 수 있게 해주는 숏코드가 있으면 그걸 사용해서 수식을 입력한다.
만약 TeX 수식 부분에 마크다운 처리 과정에서 다른 글자로 바뀌는 부분이 있다면 수식 블록 안의 내용까지 바꿔버린다. 대충 살펴보니 렌더링된 html에서 수식 부분을 찾아서 그 부분을 수식으로 렌더링 하는 방식이였다.
문제가 되는 것 중에서 대표적으로 역슬래시가 있는데, 예를 들어 TeX에서 줄바꿈을 하는 \\는 마크다운 처리 과정에서 역슬래시 1개로 바뀌기 때문에 줄바꿈이 되지 않는다.
그래서 마크다운 처리 과정에서 다른 문자로 바뀌는 것을 고려해서 적어야 하는데 역슬래시를 3개 적어야 2개 적은 것 처럼 작동한다.
예시
TeX 코드
\int f(x)dx
\\\
\int f(x) \, dx
\\
\int f(x) \\, dx
출력 $$ \int f(x)dx \\ \int f(x) , dx \ \int f(x) \, dx $$
그런데 일부 테마는 숏코드를 사용하지 않고 코드블록 ```에 언어를 math로 하고 수식을 코드블록 안에 쓰는 식인데 마크다운은 코드 블록 안에 있는 코드를 건들진 않을테니 그건 어떻게 될지 모르겠다.
그런데 글을 쓰기 위해서 찾아보다 발견한 것인데 올해 1월의 업데이트(v0.122.0)에서 hugo 공식 문서에 수식 입력에 대한 내용이 생긴 것을 확인했다.
https://gohugo.io/content-management/mathematics/
그런데 저것도 결국 사용하려면 테마 파일의 파일을 수정하는게 필요하다.
마크다운을 사용하는 위키인 Gollum에도 비슷한 문제가 있다. https://github.com/gollum/gollum/wiki#mathematics
Reply by Email