% This file is embedded in glossaries-extra-manual.pdf
% Example 154 Using bib2gls: record counting
% Label: "ex:bib2glsrecordcounting"
% arara: pdflatex
% arara: bib2gls: { recordcount: on }
% arara: pdflatex
% arara: pdfcrop
\documentclass[12pt]{article}
\pagestyle{empty}
\begin{filecontents*}{terms.bib}
@entry{bird,
 name={bird},
 description={feathered animal},
 see={[see also]duck,goose}
} 

@entry{duck,
 name={duck},
 description={a waterbird with short legs}
} 

@entry{goose,
 name="goose",
 plural="geese",
 description={a waterbird with a long neck}
}
\end{filecontents*}
\begin{filecontents*}{abbrvs.bib}
@string{ssi={server-side includes}}
@string{html={hypertext markup language}} 

@abbreviation{shtml,
 short="shtml",
 long= ssi # " enabled " # html,
 description={a combination of \gls{html} and \gls{ssi}}
} 

@abbreviation{html,
 short ="html",
 long = html,
 description={a markup language for creating web pages}
} 

@abbreviation{ssi,
 short="ssi",
 long = ssi,
 description={a simple interpreted server-side scripting language}
}

@abbreviation{xml,
 short={xml}, long={extensible markup language}, description={a simple text-base format for representing structured information} }
\end{filecontents*}
\begin{filecontents*}{symbols.bib}
@preamble{"\providecommand{\mtx}[1]{\boldsymbol{#1}}"} 

@symbol{M,
 name={\ensuremath{\mtx{M}}},
 description={a matrix}
} 

@symbol{v,
 name={\ensuremath{\vec{v}}},
 description={a vector}
} 

@symbol{S,
 name={\ensuremath{\mathcal{S}}},
 description={a set}
}
\end{filecontents*}
\usepackage[colorlinks]{hyperref}
\usepackage[record]{glossaries-extra} 

\newignoredglossary{ignored}
\setabbreviationstyle{long-short-sc-desc} 

\GlsXtrLoadResources[
 src={terms,abbrvs,symbols},
 trigger-type=ignored,
 category={same as entry}
] 

\glsxtrenablerecordcount
\GlsXtrSetRecordCountAttribute{symbol,abbreviation}{1} 

\glsdefpostlink{entry}{\glsxtrpostlinkAddDescOnFirstUse}
\glsdefpostlink{symbol}{\glsxtrpostlinkAddDescOnFirstUse} 
\begin{document}
\gls{M}, \gls{ssi}, \gls{bird}, \gls{html},
\gls{M}, \gls{html}. 

\printunsrtglossaries 
\end{document}
