Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Подсчет литературных источников #33

Open
Lenchik opened this issue Jul 19, 2015 · 6 comments
Open

Подсчет литературных источников #33

Lenchik opened this issue Jul 19, 2015 · 6 comments

Comments

@Lenchik
Copy link
Collaborator

Lenchik commented Jul 19, 2015

Не знаю, возможно ли воплотить такое, но вот идея. Разделить список литературы на четыре (по количеству из общей характеристики работы + 1):

  • работы автора - в ваковских журналах
  • работы автора - в неваковских журналах
  • работы автора - тезисы на конференциях
  • чужие работы, на которые автор ссылается

И автоматически генерировать как-то кусок текста из общей характеристики работы в духе:
Основные результаты по теме диссертации изложены в ХХ печатных изданиях [1–4], Х из которых изданы в журналах, рекомендованных ВАК [1, 2], ХХ — в тезисах докладов [3, 4].

@AndreyAkinshin
Copy link
Owner

Да, было бы здорово. Заодно можно автоматом генерировать список литературы в автореферате (насколько я помню, там нужно отделать ВАК публикации от обычных статей и тезисов).
По поводу технической реализации: возможно будет полезна следующая ссылка: http://tex.stackexchange.com/questions/66829/count-number-of-references-using-biblatex

@Lenchik Lenchik changed the title Три файла списка литературы Подсчет литературных источников Aug 16, 2015
@Lenchik
Copy link
Collaborator Author

Lenchik commented Aug 16, 2015

Для biblatex как раз из примера по ссылке это реализуемо (как в одном файле bib, так и в нескольких). Вот только для этого нужна хотя бы одна реальная \cite ссылка в тексте, \nocite{*} не дает нужного результата, по крайней мере, в моих экспериментах.
Как такое реализовать для обычной библиографии на bibtex мне в голову пока не пришла идея.

Lenchik added a commit that referenced this issue Oct 25, 2015
…сточников) путем компиляции в lualatex (c biblatex+biber)

#33
@Lenchik
Copy link
Collaborator Author

Lenchik commented Oct 25, 2015

Сделал для biblatex. Для простой системы с bibtex ничего в голову не пришло. Может быть кто-то ещё реализует.

@Lenchik
Copy link
Collaborator Author

Lenchik commented Dec 25, 2015

Возможно, #98 (comment) и #98 (comment) пригодятся при будущих попытках сделать это для bibtex.

@blondquirk
Copy link

blondquirk commented May 20, 2016

Для чистого bibtex я сделал через подмену aux-файла перед финальной компиляцией:
в Make-файле: ./write_total_references_aux.sh disser.aux # set citation counter variable

в преамбуле:

\usepackage{totcount}
\newtotcounter{citations}
\newtotcounter{figures}
\newtotcounter{tables}
% actual values are set by a bash script
\AtBeginDocument{%
  %\setcounter{citations}{\value{compilation@totc}}%
  % when the aux file doesn't yet exist the value is -1
  % so we fix it
  \ifnum\value{citations}=-1 \setcounter{citations}{0}\fi
  \ifnum\value{figures}=-1 \setcounter{figures}{0}\fi
  \ifnum\value{tables}=-1 \setcounter{tables}{0}\fi
}

в тексте работы: Cписок литературы включает \total{citations} наименований.

write_total_references_aux.sh:

#!/bin/bash

CIT=$(cat $1|grep bibcite|wc -l)
IMAGES=$(cat $1|grep -E '\newlabel{fig'|wc -l)
TABLES=$(cat $1|grep -E '\newlabel{tab'|wc -l)

cat $1|grep -v "citations@totc" |grep -v "figures@totc"| grep -v "tables@totc" > /tmp/disser1.aux

echo "\expandafter\ifx\csname c@citations@totc\endcsname\relax\newcounter{citations@totc}\fi\setcounter{citations@totc}"{$CIT} >>  /tmp/disser1.aux
echo "\expandafter\ifx\csname c@figures@totc\endcsname\relax\newcounter{figures@totc}\fi\setcounter{figures@totc}"{$IMAGES} >>  /tmp/disser1.aux
echo "\expandafter\ifx\csname c@tables@totc\endcsname\relax\newcounter{tables@totc}\fi\setcounter{tables@totc}"{$TABLES} >>  /tmp/disser1.aux

cp  /tmp/disser1.aux $1

echo The work contains $CIT references, $IMAGES figures and $TABLES tables

@Lenchik
Copy link
Collaborator Author

Lenchik commented May 10, 2017

Можно было бы подумать о применении прямо внутри tex-файла кода lua — вроде бы в TeXLive (и, возможно, MikTeX) интерпретатор.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants