WSL2의 LaTeX는 빠릅니다.

12007 단어 WSL2WindowsLaTeX

LaTeX를 WSL2에서 사용



WSL2에서 LaTeX를 사용해 보니 네이티브 Windows에서 사용하는 것보다 빠르기 때문에 기사를 썼습니다. 실수 등 있으면 지적 부탁드립니다.
덧붙여 환경 구축에 관해서는 texlive2020(basic) 설치 on WSL - 晴耕雨読 의 기사를 전면적으로 참고로 하고 있습니다.

WSL2 넣기



Windows 10용 Windows Subsystem for Linux 설치 가이드
이번에는 배포판으로 우분투 20.04 LTS를 선택했습니다. 넣으면 sudo apt updatesudo apt upgrade 해 둡시다.

TeX Live 설치



먼저 설치 대상 리포지토리를 만들어 둡니다.

bash
$ sudo mkdir /usr/local/texlive
$ sudo chown -R $(whoami):$(whoami) /usr/local/

적절한 미러 서버에서 설치 패키지를 가져옵니다. 관동이라면 리켄의 서버가 가장 가까운 것일까요?

bash
$ wget http://ftp.riken.jp/CTAN/systems/texlive/tlnet/install-tl-unx.tar.gz
$ tar -zxvf install-tl-unx.tar.gz
$ cd install-tl-*    #*には日付が入っているはず
$ $ ./install-tl

그리고는 CUI에 따라 포치포치 설치해 갑니다. 난
  • scheme은 custom (full 또는 custom이 아니면 일본어 패키지가 들어가지 않는다)
  • collections에서 Game, Humanities, TeXworks editor, Music 제거
  • option에서 심볼릭 링크를 배치하기 위해 O 에서

  • bash
    ===============================================================================
    Options customization:
    
     <P> use letter size instead of A4 by default: [ ]
     <E> execution of restricted list of programs: [X]
     <F> create all format files:                  [X]
     <D> install font/macro doc tree:              [X]
     <S> install font/macro source tree:           [X]
     <L> create symlinks in standard directories:  [ ]
                binaries to:
                manpages to:
                    info to:
    
    Actions: (disk space required: 6940 MB)
     <R> return to main menu
     <Q> quit
    
    Enter command:
    

    L 누르고 나서 Enter 3회 연타

    bash
    ===============================================================================
    Options customization:
    
     <P> use letter size instead of A4 by default: [ ]
     <E> execution of restricted list of programs: [X]
     <F> create all format files:                  [X]
     <D> install font/macro doc tree:              [X]
     <S> install font/macro source tree:           [X]
     <L> create symlinks in standard directories:  [X]
                binaries to: /usr/local/bin
                manpages to: /usr/local/man
                    info to: /usr/local/info
    
    Actions: (disk space required: 6940 MB)
     <R> return to main menu
     <Q> quit
    
    Enter command:
    

    했다. 그리고 I를 누르면 설치가 시작됩니다. 30분부터 1시간 정도면 끝날 것입니다. 끝난 후에 tex --version 어쨌든 버전 표시가 나오면 성공하고 있을 것입니다.

    VScode 측 설정



    텍스트 편집기로 이번에는 VScode를 사용합니다. 우선 확장 기능에서 Remote - WSL과 LaTeX Workshop을 넣어 두고 latexmk에서 luatex와 uptex를 사용하기 위해 settings.json에서 다음을 설정합니다. LaTeX Workshop에 대해서는 LaTeX Workshop이란? 어떻게 사용합니까? 조사해 보았다!

    settings.json
    "latex-workshop.latex.recipes": [
            {
                "name": "latexmk(lualatex)",
                "tools": [
                    "latexmk(lualatex)",
                ]
            },
            {
                "name": "latexmk(uplatex)",
                "tools": [
                    "latexmk(uplatex)",
                ]
            }
        ],
    "latex-workshop.latex.tools": [
            {
                "name": "latexmk(lualatex)",
                "command": "latexmk",
                "args": [
                    "-e",
                    "$lualatex=q/lualatex %O -synctex=1 -interaction=nonstopmode -file-line-error %S/",
                    "-e",
                    "$bibtex=q/upbibtex %O %B/",
                    "-e",
                    "$biber=q/biber %O --bblencoding=utf8 -u -U --output_safechars %B/",
                    "-e",
                    "$makeindex=q/upmendex %O -o %D %S/",
                    "-norc",
                    "-gg",
                    "-pdflua",
                    "%DOC%"
                ],
            },
            {
                "name": "latexmk(uplatex)",
                "command": "latexmk",
                "args": [
                    "-e",
                    "$latex=q/uplatex %O -kanji=utf8 -no-guess-input-enc -synctex=1 -interaction=nonstopmode -file-line-error %S/",
                    "-e",
                    "$bibtex=q/upbibtex %O %B/",
                    "-e",
                    "$biber=q/biber %O --bblencoding=utf8 -u -U --output_safechars %B/",
                    "-e",
                    "$makeindex=q/upmendex %O -o %D %S/",
                    "-e",
                    "$dvipdf=q/dvipdfmx %O -o %D %S/",
                    "-norc",
                    "-gg",
                    "-pdfdvi",
                    "%DOC%"
                ]
            },
        ],
    

    이것은 그대로 Windows에서도 사용할 수 있는 것 같습니다.

    속도 비교



    폐학과는 졸업설계라 하는 것이 있는 탓에 다른 학과보다 졸업논문의 마감이 다른 학과보다 빠릅니다. 그래서 여기에 57페이지의 초등학교 5학년 여름방학의 자유연구 졸업논문이 있습니다. 이 녀석을 벤치마크로 컴파일해 보겠습니다.

    또한 WSL에서 Windows의 C: 측에 있는 것에 액세스하면 느리기 때문에 파일은 WSL로 컴파일할 때에는 파일은 WSL상에 놓았습니다.

    Windows(LuaLaTeX)





    WSL2(LuaLaTeX)





    Windows(upLaTeX)




    이미지가 많은 탓인지 엉망이었다.

    WSL2(upLaTeX)





    요약





    LuaLaTeX
    upLaTeX


    Windows
    63.55 초
    134.51s

    WSL2
    44.53 초
    38.99 초


    그래서 WSL2가 전체적으로 Windows보다 빠르다는 결과가 나왔습니다. 이유는 모른다. WSL2상에서도 Windows와 같이 자유롭게 폰트를 변경할 수 있는 것은 확인하고 있어, TeX 사용해 리포트 쓸 때라든가는 기본 WSL2를 사용해 버려도 좋을까요.

    참고 URL



    texlive2020(basic) 설치 on WSL - 晴耕雨読
    Windows 10용 Windows Subsystem for Linux 설치 가이드
    LaTeX Workshop이란? 어떻게 사용합니까? 조사해 보았다! - Qiita

    좋은 웹페이지 즐겨찾기