코드에 å ä ö가 포함된 가져온 .m 파일을 사용하여 생성됨

코드에 å ä ö가 포함된 가져온 .m 파일을 사용하여 생성됨

첫째, 유용한 정보를 알려드리겠습니다.

  • 파이썬 버전: 3.8.0
  • 피그먼트 버전 2.5.1
  • 텍스라이브 2019
  • 텍스메이커 5.0.3
  • PDFLaTeX를 사용하여 빌드(XeLaTeX 및 LuaLaTeX도 시도)
  • Windows 10(그게 중요하다면...?)

내가 원하는 것

다음과 같은 문자가 포함된 matlab 스크립트 파일(*.m)을 가져오려고 합니다.,그리고영형패키지를 사용합니다 minted.

문제

내 코드를 가져오고 표시했지만 위에서 언급한 엔진/빌더마다 조금씩 다르기는 하지만 해당 문자가 누락되었습니다.

즉, \inputminted...*.m 파일을 가져오는 데 사용하는 대신 matlab 코드를 내부에 직접 붙여 넣으면 모든 것이 잘 작동합니다 \begin{minted}{matlab}... \end{minted}. 내 뜻은'에스,'모래영형'이 올바르게 표시됩니다.

minted이렇게 하면 분명히 문제가 해결되지만, 의 가져오기 기능이 제대로 작동하지 않는 이유는 여전히 혼란스럽습니다 .

MWE:

\documentclass[a4paper,12pt]{article}

\usepackage[utf8]{inputenc}
\usepackage[swedish]{babel}
\usepackage{minted}

\begin{document}

\section{Pasted code}

\begin{minted}{matlab}
Hönökakan åts upp av änkan.
\end{minted}

\section{Imported code}

\inputminted{matlab}{test.m} % Contains the same sentence as above

\end{document}

산출

4개의 오류 메시지:

! Package inputenc Error: Invalid UTF-8 byte "F6.See the inputenc package documentation for explanation.Type H <return> for immediate help.... ...{n}{H�n�kakan }\PYG{l+s}{�ts upp av �nkan.}

! Package inputenc Error: Invalid UTF-8 byte "F6.See the inputenc package documentation for explanation.Type H <return> for immediate help.... ...{n}{H�n�kakan }\PYG{l+s}{�ts upp av �nkan.}

! Package inputenc Error: Invalid UTF-8 byte sequence.See the inputenc package documentation for explanation.Type H <return> for immediate help.... ...{n}{H�n�kakan }\PYG{l+s}{�ts upp av �nkan.}

! Package inputenc Error: Invalid UTF-8 byte sequence.See the inputenc package documentation for explanation.Type H <return> for immediate help.... ...{n}{H�n�kakan }\PYG{l+s}{�ts upp av �nkan.}

어느 정도 inputenc. 이러한 오류는 PDFLaTeX를 사용할 때만 발생합니다. (XeLaTeX는 inputenc 사용에 대해 손가락을 때리고 용서하지만 LuaLaTeX는 잘못된 utf-8 시퀀스를 사용하고 있다고 선언하는 오류도 제공합니다.)

답변1

여기 앉아 질문을 쓰면서 로그 파일을 살펴보며 가치 있는 것이 있는지 확인하게 되었습니다. 물론 있었습니다. 문제는 TeX이나 가 minted아니라 MATLAB이 인코딩하는 방식에 있었습니다.

The document does not appear to be in UTF-8 encoding.
Try adding \UseRawInputEncoding as the first line of the file
or specify an encoding such as \usepackage [latin1]{inputenc}
in the document preamble.
Alternatively, save the file in UTF-8 using your editor or another tool

MATLAB(R2019)에서 생성한 *.m 파일의 인코딩이 다를 수 있다고 의심하여 ​​코드를 메모장에 복사/붙여넣고 UTF-8로 저장했습니다(그리고 *.m 파일로 저장했지만 중요하지 않을 수도 있음). ) 그리고 이제 mintedPDFLaTeX를 실행할 때 문제가 발생하지 않았습니다.

관련 정보