.bib 파일을 사용하는 논문에 "기호 목록"을 사용할 때 오류가 발생합니까?

.bib 파일을 사용하는 논문에 "기호 목록"을 사용할 때 오류가 발생합니까?

나는 효과적인 방법을 사용하여 용어집을 만들고 다양한 목록(약어, 두문자어, 기호, 용어집 등)에 있는 항목의 다양한 "유형"을 분류할 수 있기를 원합니다.

나는 환상적이고 조언하는 두 개의 게시물을 따랐습니다.

그만큼첫 번째에서는 기호용 .bib 파일을 사용하여 다양한 항목을 분류하는 방법을 보여줍니다. 나는 방법 4를 사용하여 그것을 따랐다.두 번째 게시물기호, 약어, 정의 등을 포함하는 용어집을 생성하는 이 방법을 따르는 방법을 보여줍니다.

저는 LaTex를 처음 접했지만 이러한 방법을 따르면서 많은 것을 배웠습니다(Nicola Talbot에게 감사드립니다). 거의 다 왔지만 결과에는 여전히 약간의 오류가 있습니다. 나는 달성하고 싶은 것을 테스트하기 위해 테스트 파일을 만들었습니다.

제가 테스트 중인 코드는 다음과 같습니다.

\documentclass{report}

\usepackage{amssymb}
\usepackage{siunitx}


\usepackage[record,abbreviations,acronyms,symbols,stylemods={tree},style=treegroup]{glossaries-extra}


% always set the abbreviation style before \GlsXtrLoadResources
\setabbreviationstyle{short-long-desc}
\setabbreviationstyle[acronym]{short-long}


% Assign group titles:
\glsxtrsetgrouptitle{latin}{Latin Symbols}
\glsxtrsetgrouptitle{greek}{Greek Symbols}

\GlsXtrLoadResources[
  src={no-interpret-preamble,glossary},% bib files
  sort={en-US},% sort according to this locale
  set-widest,% needed for 'alttree' styles
%  save-locations=false % use this command to pring only the acronyms you are using
  selection=all% select all entries in the .bib files
]


\GlsXtrLoadResources[
 src={symbols-greek},
 sort={letter-case}, % sort according Unicode value
 field-aliases={
   unitname=name,
   unitsymbol=symbol,
   measurement=description
 },
 symbol-sort-fallback=name,
 type=symbols,
 group=greek,
 set-widest,% needed for 'alttree' styles
 save-locations=false % pring only used symbols.
]

\GlsXtrLoadResources[
 src={symbols-latin},
  sort={letter-case},% sort according Unicode value
  symbol-sort-fallback=name,
  type=symbols,
  group=latin,
  set-widest,% needed for 'alttree' styles
  selection=all% select all entries in the .bib files
]




\begin{document}

\section*{Examples}
In this section, I will use the following greek symbols: \gls{alpha}, \gls{alphalin} and \gls{delta}.

One acronym is for example \glstext{ad} and one abbreviation is given by \glstext{html}.



\printunsrtglossary[type=acronyms,style=alttree,title={List of Acronyms}]
\printunsrtglossary[type=abbreviations,style=alttree,title={List of Abbreviations}]
\printunsrtglossary[style=alttree,title={Glossary}] % By not specifing the type, I pring only the entries
\printunsrtglossary[type=symbols,style=alttreegroup,title={List of Symbols}]
\end{document}

파일을 찾을 수 있습니다no-interpret-preamble.bib여기. 파일은 glossary.bib다음 symbols-latin.bibsymbols-greek.bib같습니다(Nicola Talbot의 작품에서 영감을 얻었습니다.):

용어집.bib:

% glossary.bib

% This file is public domain. See the "Examples" chapter
% in the bib2gls user manual for a more detailed description
% of this file.

% Encoding: UTF-8

@preamble{"\providecommand{\abbrvtag}[1]{#1}"}
@string{markuplang="\abbrvtag{m}arkup \abbrvtag{l}anguage"}

@entry{TeX,
  name={{}\TeX},
  description={a format for describing complex type and page layout
    often used for mathematics, technical, and academic publications},
  identifier={markuplanguage}
}

@entry{LaTeX,
  name={{}\LaTeX},
  description={a format of \glstext{TeX} designed to separate
   content from style},
  identifier={markuplanguage}
}

@entry{markdown,
  name={markdown},
  description={a lightweight markup language with plain text
    formatting syntax},
  identifier={markuplanguage}
}


@acronym{ad,
  short={AD},
  long={Affinity Diagram},
  description={Tool that gathers large amounts of language data and organizes them into groupings based on their natural relationships},
  identifier={acronym}
}

@acronym{dom,
  short={DOM},
  long={Document Object Model},
  description={Cross-platform and language-independent application programming interface},
  identifier={acronym}
}


@acronym{spa,
  short={SPA},
  long={Single Page Application},
  description={Web applicaiton of web site that interacts with the user by dynanically rewriting the current page},
  identifier={acronym}
}


@acronym{svp,
  short={SVG},
  long={Scalable Vector Graphics},
  description={{}\glstext{xml}-based vector image format for two-dimensional graphics with support for interactivity and animation},
  identifier={acronym}
}

@abbreviation{xml,
  short={XML},
  long={e\abbrvtag{x}tensible }#markuplang,
  description={a markup language that defines a set of rules for
    encoding documents},
  identifier={markuplanguage}
}

@abbreviation{html,
  short={HTML},
  long={\abbrvtag{h}yper\abbrvtag{t}ext }#markuplang,
  description={the standard markup language for creating web pages},
  identifier={markuplanguage}
}

@abbreviation{mathml,
  short={MathML},
  long={\abbrvtag{m\NoCaseChange{ath}}ematical }#markuplang,
  description={markup language for describing mathematical notation},
  identifier={markuplanguage}
}

@abbreviation{xhtml,
  short={XHTML},
  long={e\abbrvtag{x}tensible \abbrvtag{h}yper\abbrvtag{t}ext }
    # markuplang,
  description={{}\glstext{xml} version of \glstext{html}},
  identifier={markuplanguage}
}

기호-그리스어.bib:

% symbols-greek.bib

% Put here all greek symbols
% Encoding: UTF-8

@symbol{alpha,
 name={\ensuremath{\alpha}},
 description={angular acceleration},
 indentifier={mathgreek}
}
@symbol{alphalin,
 name={\ensuremath{\alpha_{L}}},
 description={linear coefficient of thermal expansion},
 indentifier={mathgreek}
}
@symbol{delta,
 name={\ensuremath{\delta}},
 description={Kronecker delta},
 indentifier={mathgreek}
}
@symbol{lambda,
 name={\ensuremath{\lambda}},
 description={Lagrange multiplier},
 indentifier={mathgreek}
}
@symbol{chi,
 name={\ensuremath{\chi}},
 description={chromatic number},
 indentifier={mathgreek}
}
@symbol{rho,
 name={\ensuremath{\rho}},
 description={density},
 indentifier={mathgreek}
}
@symbol{zeta,
 name={\ensuremath{\zeta}},
 description={Riemann zeta function},
 indentifier={mathgreek}
}

기호-latin.bib:

% symbols-latin.bib

% Put here all latin symbols
% Encoding: UTF-8

@symbol{x,
 name={\ensuremath{x}},
 description={position},
 indentifier={mathlatin}
}
@symbol{v,
 name={\ensuremath{v}},
 description={velocity},
 indentifier={mathlatin}
}
@symbol{a,
 name={\ensuremath{a}},
 description={acceleration},
 indentifier={mathlatin}
}
@symbol{t,
 name={\ensuremath{t}},
 description={time},
 indentifier={mathlatin}
}
@symbol{E,
 name={\ensuremath{E}},
 description={Young's modulus},
 indentifier={mathlatin}
}
@symbol{F,
 name={\ensuremath{F}},
 description={force},
 indentifier={mathlatin}
}
@symbol{Tm,
 name={\ensuremath{T_{m}}},
 description={melting point temperature},
 indentifier={mathlatin}
}
@symbol{KIC,
 name={\ensuremath{K_{IC}}},
 description={stress intensity factor},
 indentifier={mathlatin}
}
@symbol{Z,
 name={\ensuremath{Z}},
 description={atomic number},
 indentifier={mathlatin}
}

그러나 얻은 결과는 만족스럽지 않습니다.

내가 도대체 ​​뭘 잘못하고있는 겁니까? 약어 목록을 얻을 수 없는 이유는 무엇입니까? 약어 목록을 읽기 쉽게 만들려면 어떻게 해야 합니까?

귀하의 도움에 매우 감사하겠습니다. 거의 다 왔어...

답변1

성적표에서 몇 가지 경고를 발견해야 합니다.

Package glossaries-extra Warning: Glossary type `acronyms' doesn't exist on input line 65.
Package glossaries-extra Warning: No entries defined in glossary `acronyms' on input line 65.

약어 용어집의 레이블은 다음과 같이 필요 acronym하지 않습니다 .acronyms

\printunsrtglossary[type=acronym,style=alttree,title={List of Acronyms}]

또는

\printunsrtglossary[type=\acronymtype,style=alttree,title={List of Acronyms}]

set-widest옵션은 가장 넓은 이름을 가진 항목을 결정하려고 시도하지만 약어/두문자어에 대해 bib2gls알지 못하므로 name(문서에 설정된 스타일 정보에 액세스할 수 없기 때문에) 이름이 단지 짧은 형식이라고 가정합니다. 기본적으로 측정을 수행할 때 긴 형식을 고려하지 않습니다. 그러나 이 alttree스타일은 설명을 위한 공간이 매우 작기 때문에 설명이 포함된 약어에는 적합하지 않습니다. 런닝 스타일(예: tree)이나 설명 앞에 공백을 넣는 스타일(예: )을 사용하는 것이 좋습니다 altlist.

예를 들어:

\printunsrtglossary[type=abbreviations,style=altlist,title={List of Abbreviations}]

덧붙여서, 약어와 함께 사용하지 않는 것이 가장 좋습니다 \glstext. 약어 사용 여부에 관계없이 짧은 형식만 표시하려면 스타일 중 하나를 사용하세요. 1 ( 캡션 \gls이나 short-nolong제목에 대한 짧은 형식을 보장하려면 을 사용하세요 \glsfmtshort.) 약어 스타일이 정확합니다.\gls\glstext


¹v1.39 short-nolong-desc에서 수정된 스타일 에 버그가 있습니다 .glossaries-extra

관련 정보