Based on the questions:
- How to show Not cited and Cited i times on pages ..., in the bibliography when using biblatex?,
- How to detect whether \PassOptionsToPackage was already called?
- How to detect whether the option citecounter was enabled on biblatex?
I build the following example:
But I would like for it to use a dot to separate my new cited entry, instead of using a comma. For example, instead of:
Visited on: 17 Feb. 2018, cited one time on page 1.
I would like to see: ......\/..... (dot here, not comma)
Visited on: 17 Feb. 2018. Cited one time on page 1.
\RequirePackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@mvbook{assis08,
author = {Machado de Assis},
title = {Obra completa em quatro volumes},
year = {2008},
editor = {Aluizio Leite and Ana Lima Cecilio and Heloisa Jahn},
editortype = {organizer},
edition = {2},
volumes = {4},
publisher = {Nova Fronteira},
location = {Rio de Janeiro},
series = {Biblioteca luso-brasileira. Série brasileira brasileira brasiled},
urlaccessdate = {2018-02-17},
}
@book{koma-scrguien,
author = {Markus Kohm},
edition = {2017-04-13},
howpublished = {\url{http://mirrors.ibiblio.org/CTAN/.../scrguien.pdf}},
publisher = {Online Material; \url{https://www.ctan.org/pkg/koma-script}},
title = {The Guide KOMA -Script},
urlaccessdate = {2017-08-28},
year = {2017},
}
\end{filecontents*}
\PassOptionsToPackage{brazil,main=english,spanish,french}{babel}
\documentclass[12pt,a4paper,english]{abntex2}
\usepackage[utf8]{inputenc}
\usepackage{csquotes}
\selectlanguage{english}
\usepackage[
style=abnt,repeatfields=true,backend=biber,backref=true,citecounter=true]{biblatex}
\pdfstringdefDisableCommands{\let\uppercase\relax}
\addbibresource{\jobname.bib}
\makeatletter
\newcommand{\biblatexcitedntimes}{\autocap{c}ited \arabic{citecounter} times}
\newcommand{\biblatexcitedonetime}{\autocap{c}ited one time}
\newcommand{\biblatexcitednotimes}{\autocap{n}o citation in the text}
\@ifpackageloaded{babel}{\@ifpackagewith{babel}{brazil}{\addto\captionsbrazil{%
\renewcommand{\biblatexcitedntimes}{\autocap{c}itado \arabic{citecounter} vezes}
\renewcommand{\biblatexcitedonetime}{\autocap{c}itado uma vez}
\renewcommand{\biblatexcitednotimes}{\autocap{n}enhuma citação no texto}
}}{}}{}
\makeatother
\ifx\blx@citecounter\relax
\message{Is citecounter defined? NO!^^J}
\else
\message{Is citecounter defined? YES!^^J}
\ifbacktracker
\message{Is backtracker defined? YES!^^J}
\renewbibmacro*{pageref}
{
\iflistundef{pageref}
{\printtext{\biblatexcitednotimes}}
{%
\printtext
{%
\ifnumgreater{\value{citecounter}}{1}
{\biblatexcitedntimes}
{\biblatexcitedonetime}
}%
\setunit{\addspace}%
\ifnumgreater{\value{pageref}}{1}
{\bibstring{backrefpages}\ppspace}
{\bibstring{backrefpage}\ppspace}%
\printlist[pageref][-\value{listtotal}]{pageref}%
}%
}
\DefineBibliographyStrings{brazil}
{
backrefpage = {na página},
backrefpages = {nas páginas},
}
\DefineBibliographyStrings{english}
{
backrefpage = {on page},
backrefpages = {on pages},
}
\else
\message{Is backtracker defined? NO!^^J}
\fi
\fi
\begin{document}
Citing \cite{assis08}.
Citing \cite{koma-scrguien}.
\printbibliography
\end{document}
Related questions:

abnt.bbxfrom the link? In that case it might help to replace\setunit{\bibpagerefpunct}%with\printunit{\bibpagerefpunct}%, but that is a long shot. As I said, with an up-to-date system the MWE from the question (without modifications) shows periods as you hoped, so it is hard to investigate what is going on at your end not knowing your package versions and additional changes that might be happening. If at all possible and viable (i.e. not before a tight deadline) I recommend an update. – moewe Nov 13 '19 at 06:27abnt.bbxfile. I use Debian 9 with TexLive 2016. For a deadline, I can update my current version ofabnt.bbxby manually download it and replacing my TexLive 2016 file. Other than that, I just would like to keep the document working out of the box when someone else also compiles it with some old version ofabnt.tex. When I get home, I will try your new suggestion. – user Nov 13 '19 at 16:23\setunit{\bibpagerefpunct}, but it did not worked neither. If you can look into, I use biblatex{2016/12/05} version{3.7}andabnt.cbx, 2017/07/28 v3.1. – user Nov 14 '19 at 02:18biblatex-abntit is once again enough to say\renewcommand*{\bibpagerefpunct}{\addperiod\space}%, you need no other modification from this answer. – moewe Nov 14 '19 at 06:23\renewcommand*{\bibpagerefpunct}{\addperiod\space}%and it worked! Thanks! Will it work fine on an updated version ofbiblatex, or I should add some checking(if version < XXX ... else ...), i.e., only use it for an outdated version ofbiblatex? – user Nov 15 '19 at 01:18biblatex-abntversion. Thebiblatexversion is largely irrelevant here (unless it is really ancient).\renewcommand*{\bibpagerefpunct}{\addperiod\space}%works in your outdated version and will work again once the version with https://github.com/abntex/biblatex-abnt/pull/55 is released. For versions in between (I didn't check exactly which, you can test yourself with the versions you can get from https://github.com/abntex/biblatex-abnt/releases) the longer workaround documented above is needed. – moewe Nov 15 '19 at 06:43