LaTeX: Печать количества слов воображаемого раздела

LaTeX: Печать количества слов воображаемого раздела

Я хотел бы вывести количество слов в разделе документа. Однако раздел не означает \section{...}. Это просто произвольный набор абзацев. Количество слов должно исключать подписи и сноски.

\begin{document}

stuff

% start word count

paragraph #1 \footnotes{...}

\begin{figures}...\end{figures}

paragraph #2

% end word count

\wordcount 
% or some other command that prints the word count

other stuff

\end{document}

Использовать ли мне какой-либо контейнер? Эквивалент тегов div в LaTeX? Или мне все равно использовать \section{...}, но скрыть заголовок раздела?

Будем очень признательны за решение!

решение1

Это можно сделать с помощьюTeXcount, который является скриптом Perl. Вероятно, он доступен вам как часть установки TeX или его можно найти в веб-размере вместе с онлайн-приложением, которое вы можете попробовать.

TeXcount устанавливает контрольные точки, для которых генерируются подсчеты.

Точки останова по умолчанию установлены во всех заголовках глав/разделов, которые вам придется отключить: используйте параметр командной строки -sub=noneдля скрипта или выберитеПодсчеты: нетв веб-интерфейсе.

Точки останова можно вставлять в документ с помощью строк комментариев TeX в форме

%TC:break breakpoint-title

где вы вводите название своей точки останова (пробелы допускаются), которая затем инициирует новый подсчет.

Альтернативой является определение макроса, например \CountSection, который принимает один аргумент (который будет заголовком точки останова), и указание, что TeXcount должен вставить туда точку останова:

%TC:breakmacro \CountSection countsection

где countsectionлюбая непустая строка (без пробелов), которая будет префиксом только заголовка, чтобы указать, какой это тип счета. Это все еще требует опции -sub=none.

Вы можете попробовать это навеб приложениево-первых. Вам не обязательно вводить полный документ, достаточно фрагмента кода.


Позвольте мне подробнее рассказать об этом и ответить на вопросы в комментариях: во-первых, пример того, как заставить работать подсчеты с выводом на консоль; во-вторых, как включить подсчеты в документ.

TeXcount использует контрольные точки для разделения счетов на подсчеты. "Конечных контрольных точек" нет: подсчет продолжается до следующей контрольной точки.

С другой стороны, если вам действительно нужно игнорировать части документа при подсчете, а не разбивать его на несколько сегментов, можно пометить сегменты, которые следует игнорировать, с помощью

%TC:ignore
...
%TC:endignore

Существует два способа вставки точек останова для разделения документа на подобласти: либо явно установив точку останова в документе с помощью инструкции %TC:breakpoint, либо указав макросы, которые автоматически устанавливают точку останова. По умолчанию ( -sub=section), TeXcount добавляет точки останова в \chapter, \section, и т. д.; использование опции -sub=noneпозволяет избежать этого. Затем вы можете использовать %TC:breakmacroинструкцию для указания других макросов, которые должны установить точку останова.

Вот краткий пример, который не является полным документом, а представляет собой лишь фрагмент кода:

%% Use \CountSection to set subcount breakpoints
\newcommand\CountSection[1]{}  % No output in document

% Set macro handling rule: ignore text in argument
%TC:macro \CountSection [ignore]

% Specify that \CountSection sets a new breakpoint
%TC:breakmacro \CountSection Subcount


Any text occurring before a breakpoint will be part of the initial subcount
named \textit{top}.

\CountSection{First count section}

This text will be counted as part of the subcount labeled \textit{First count
section}, which will continue until the next breakpoint.

\CountSection{Second count section}

This will be counted as another subcount.

%TC:break Subcount text at the end

This will be the final subcount induced by an explicit breakpoint.

Вы можете попробовать запустить его через TeXcount на своем компьютере или в онлайн-приложении, а затем попробовать, как это работает. Если вы добавите \sectionмакросы в код, они добавят дополнительные точки останова, если вы не укажете -sub=none. Кстати, -subэто просто сокращение от -subcount, и используется только для выбора между несколькими альтернативами макросов начальных точек останова, а не для указания ваших собственных.

TeXcount по умолчанию выводит счетчики (и другой вывод) на консоль. Вместо этого вы можете записать вывод в файл, что часто бывает полезно либо для импорта вывода в документ, либо при записи вывода в виде HTML.

Есть несколько приемов для импорта счетчика обратно в документ, все из которых требуют, чтобы TeXcount записал вывод в файл, а затем этот файл был импортирован в документ. Есть некоторыеинформация об этом в FAQ TeXcount, ипример на StackExchange. Можно настроить формат вывода с помощью шаблонов (Пример StackExchange), но это немного более продвинутый вариант, и прежде чем приступить к нему, вам следует правильно освоить подсчет.

Связанный контент