나는 내가 필요하다는 것을 알았다Carnegie Mellon University 글꼴XeLaTeX를 사용하여 러시아어 텍스트를 조판하는 기능. NixOS에서 사용 가능cm-unicode
패키지, 설치했습니다
nix-env -iA nixos.cm_unicode
그러나 XeLaTeX는 여전히 그것을 찾을 수 없습니다. Ubuntu에서 XeLaTeX를 사용하여 컴파일할 수 있는 LaTeX 파일이 NixOS에서 XeLaTeX를 사용하여 컴파일되지 않고 표시된 CMU 글꼴을 찾을 수 없다는 오류가 발생합니다.
내 시스템에 설치된 모든 글꼴을 나열할 수 있다는 것을 배웠습니다.fc-list
, 그래서 실행을 시도했지만 fc-list | grep -i cmu
결과가 없습니다.fc-list | grep -i com
fc-list | grep -i unic
이 글꼴을 어떻게 설치하나요? NixOS 17.09용입니다.
그런데 이미 Latin Modern 글꼴을 수동으로 설치해야 했습니다. 처음에는 XeLaTeX에서 선택할 수 없었지만 lmodern
패키지를 설치한 후에는 nix-env -i
제대로 작동했습니다.
방금 다시 테스트했습니다. 제거하면 라틴 모던이 결과 lmodern
에서 제거되고 설치하면 복원됩니다. nix-env -e
하지만 작동하지 않습니다.fc-list
font-manager
nix-env -i
cm_unicode
관련이 있을 수 있는 질문이 있어 여기에 올립니다. (해당 사항이 없는 것으로 판명되면 간단한 의견이나 설명을 주시면 감사하겠습니다.)
내 TeX Live 환경과 모든 종속성을 내 에서 정의하고 싶었 .nixpkgs/config.nix
기 때문에 이렇게 했습니다.
# .nixpkgs/config.nix
{ # ...
packageOverrides = pkgs: {
myTexLive = pkgs.texlive.combine {
inherit (pkgs.texlive) scheme-basic
collection-bibtexextra
collection-fontsrecommended
collection-genericrecommended
collection-langcyrillic
collection-langfrench
collection-latex
collection-latexextra
collection-latexrecommended
collection-mathextra
collection-xetex
cm-unicode # from `collection-fontsextra`
latexmk
lm # from `collection-fontsrecommended`
lm-math # from `collection-fontsrecommended`
texdoc;
};
}
lm
TeX Live 패키지가 있으면 Latin Modern 및 CMU 글꼴을 설치하기에 충분할 것이라고 기대했지만 cm-unicode
작동하지 않습니다.
필요한 글꼴을 종속성으로 선언하는 방법이 있습니까 myTexLive
?
답변1
nix-env
NixOS에서는 글꼴을 찾으려면 일종의 데이터베이스를 만들어야 하기 때문에 글꼴을 설치할 수 없습니다 . 여기에는 부작용이 필요하지만 Nix 패키지는 순수한 기능입니다. 일반적으로 부작용 코드는 nixos-rebuild
;에 의해 처리되는 것으로 생각할 수 있습니다. 따라서 다음을 사용해야 합니다 configuration.nix
.
fonts.fonts = [ pkgs.cm_unicode ];
너는 내 것을 봐도 돼동영상NixOS 글꼴에서 시연됩니다. 내 로봇 목소리를 실례합니다.
라텍스 관련 정보는 다음을 참조하세요.https://nixos.org/nixpkgs/manual/#sec-언어-texlive