There's a way to set arrow left and right margin? In simple terms, make horizontal spaces befor and after the arrow itself. In this way, "B" and "C" are too sticked to the arrow
\documentclass{article}
\usepackage[italian]{babel}
\usepackage[T1]{fontenc}
\usepackage{textcomp}
\usepackage{chemfig}
\begin{document}
\begin{figure}[!htb]
\centering
\schemestart
\setchemfig{%
fixed length=true,
atom sep=2em,
}
\chemfig{A}
\+
\chemfig{B}
\arrow(.base east--.base west){->[][][3pt]}
\chemfig{C}
\+
\chemfig{D}
\schemestop
\end{figure}
\end{document}
Command \setchemfig{ arrow offset=12pt }
has an inconvenience: reduce arrow lenght.
Any idea?