Latex의 cls에서 각주 번호와 각주 텍스트 사이의 간격을 조정하시겠습니까?

Latex의 cls에서 각주 번호와 각주 텍스트 사이의 간격을 조정하시겠습니까?

우리 학교 Latex 템플릿에서는 각주 번호와 각주 텍스트 사이의 간격이 너무 가까워서 더 넓게 만들고 싶었습니다. 이전에 이 코드를 사용했을 때 \begin{document}:

\usepackage[hang]{footmisc}
\setlength{\footnotemargin}{2mm}

오류가 표시되었습니다.cls각주 스타일을 제어하는 ​​폴더의 파일입니다.

그런 다음 cls를 열었고 각주 스타일과 관련이 있을 수 있는 코드를 발견했습니다. 그런데 이해가 안 되서 어떻게 조정해야 할지 모르겠어요.cls. ~각주 번호 사이에 각주 텍스트를 추가하고 싶습니다 .

\tl_set:Nn \@makefnmark
  {
    \kern \c_zero_dim \textsuperscript { \circled { \@thefnmark } }
  }

\RenewDocumentCommand { \@makefntext } { m }
  {
    \noindent \hangindent 1 em \circled { \@thefnmark } #1 \hangafter 1
  }

\skip_set_eq:NN \headheight \baselineskip
\skip_set_eq:NN \footskip   \baselineskip

\dim_set:Nn \footnotesep { 6 pt }
\setlength { \skip \footins } { \skip_eval:n { 2 \baselineskip } plus 1 fill }
\tl_set:Nn \footnotesize { \songti \zihao { 5 } }
\tl_set:Nn \footnoterule
  { \noindent \rule [ 1 pt ] { 0.3 \columnwidth } { 1 pt } }

\NewDocumentCommand { \circled } { m }
  {
    \resizebox { 1 em } { ! }
      {
        \tikz [ baseline = ( char.base ) ]
          {
            \node [ shape = circle , draw , inner ~ sep = \c_zero_dim ,
              minimum ~ size = 1 em ] ( char ) {#1};
          } 
      }
  }

도와주실 수 있나요? 감사해요.

답변1

우리 대화에 따르면 여기에 중국어로 된 코드를 게시하는 것이 어렵습니다. 약속대로 오류를 추적하는 데 도움이 될 수 있는 가이드를 제공하겠습니다.

이 코드는 최근 게시된 코드와 유사하며 오류가 포함되어 있습니다. 가장 좋은 예는 아닐 수도 있지만 다음과 같은 아이디어를 얻을 수 있습니다.

\documentclass{article}
\usepackage{hyperref}
\let\foo\textit

\begin{document}

\section{Command \foo{aliasing}}
Here I use \texttt{\textbackslash foo} to
\foo{to typeset this in italic}.

\end{document}

오류는 다음과 같습니다. 여기에 이미지 설명을 입력하세요

표시가 충분히 도움이 되지 않는다고 가정해 보겠습니다. 무엇을 해야 할까요?

전략: 코드를 "반"으로 분할하여 각 부분이 여전히 컴파일되고 둘 다 컴파일될 수 있도록 합니다. 오류가 있는지 확인하세요. 오류를 발견할 수 있을 때까지 오류가 포함된 축소 버전을 반복합니다.

IDEA: "half1" = 내용, "half2" = 서문

따라서 일부 텍스트를 포함하면 다음이 통과됩니다.

\documentclass{article}
\usepackage{hyperref}
\let\foo\textit

\begin{document}
hello world
\end{document}

"half2": 하이퍼참조를 제거하면 \let 부분이 (다른) 오류와 함께 컴파일됩니다.

그럼 서문을 다시 "반"으로 나누어 보겠습니다. 이것은 다음을 컴파일합니다.

\documentclass{article}
%\usepackage{hyperref}
\let\foo\textit

\begin{document}

\section{Command \foo{aliasing}}
Here I use \texttt{\textbackslash foo} to
\foo{to typeset this in italic}.

\end{document}

반면에 이것은 그렇지 않습니다:

\documentclass{article}
\usepackage{hyperref}
%\let\foo\textit

\begin{document}

\section{Command \foo{aliasing}}
Here I use \texttt{\textbackslash foo} to
\foo{to typeset this in italic}.

\end{document}

사용된 정의가 제거되었기 때문에 그럴 수 없습니다.

이제 새로운 통찰력을 분석할 시간입니다. 이 설정에서 "\usepackage{hyperref}"는 문제를 일으키는 요소입니다. 코드 자체에는 개선이 필요할 수 있지만 적어도 계속할 수 있는 방법을 찾았습니다. 이 패키지를 제외하세요.

확신합니다. 코드 복사본에 이 전략을 시도하면 문제의 범위를 좁힐 수 있습니다.

관련 정보