problemas de quebra de linha de listagens inline

problemas de quebra de linha de listagens inline

Estou tendo problemas com a quebra de linhas de listagens in-line. Como você pode ver na imagem vinculada, o ponto final da frase está na próxima linha devido à quebra automática do cite-websitetexto. O pacote de listagens decidiu quebrar o texto mesmo que ele esteja inteiro na primeira linha. Se a seta vermelha em forma de gancho não estivesse lá, o ponto final caberia ali.

imagem de problemas de empacotamento de listagens

MWE:

\documentclass[twoside]{article}
\usepackage{lmodern}
\usepackage{amssymb,amsmath}
\usepackage{microtype}
\UseMicrotypeSet[protrusion]{basicmath} % disable protrusion for tt fonts
\usepackage{listings}
\usepackage[vmargin=1in,headheight=13pt,twoside,twocolumn,a5paper]{geometry}
\usepackage{accsupp}
\usepackage{MnSymbol}
\usepackage{textcomp}
\usepackage[usenames,dvipsnames,svgnames,table]{xcolor}

\newcommand{\noncopy}[1]{%
    \BeginAccSupp{method=escape,ActualText={}}%
    #1%
    \EndAccSupp{}%
}

\lstset{breaklines=true,
  xleftmargin=1.5em,framexleftmargin=1em,
  basicstyle=\ttfamily,
  upquote=true,
  literate={`}{{\BeginAccSupp{method=plain,ActualText=`}‵\EndAccSupp{}}}1
  {"}{{\BeginAccSupp{method=plain,ActualText="}"\EndAccSupp{}}}1
  {'}{{\BeginAccSupp{method=plain,ActualText='}'\EndAccSupp{}}}1,
  showstringspaces=false,
  numbers=left, numberstyle=\scriptsize\noncopy,
  %postbreak=\raisebox{0ex}[0ex][0ex]{\noncopy{\ensuremath{\color{red}\hookrightarrow}}},
  prebreak=\raisebox{0ex}[0ex][0ex]{\noncopy{\ensuremath{\color{red}\rhookswarrow}}}
}

\begin{document}
Foo bar baaz \lstinline!cite-website!.
\end{document}

ATUALIZAÇÃO 1

Aqui está um MWE menor. Estou mantendo o texto acima na postagem porque, na verdade, estou usando todas essas coisas no documento real:

\documentclass[twoside]{article}
\usepackage{lmodern}
\usepackage{amssymb,amsmath}
\usepackage{listings}
\usepackage[vmargin=1in,headheight=13pt,twoside,twocolumn,a5paper]{geometry}
\usepackage{MnSymbol}
\usepackage{textcomp}

\lstset{breaklines=true,
  basicstyle=\ttfamily,
  showstringspaces=false,
  prebreak=\raisebox{0ex}[0ex][0ex]{\ensuremath{\rhookswarrow}}}

\begin{document}
Foo bar baaz \lstinline!cite-website!.
\end{document}

Responder1

Acabei de começar a experimentar listings. Você já tentou adicionar esta linha à sua \lstsetdefinição?

breakatwhitespace=true,

Essa configuração determina se as quebras automáticas devem ocorrer apenas em espaços em branco (acho que, por padrão, elas podem ocorrer em qualquer lugar da linha, para acomodar pessoas que estão escrevendo tipos de código sem muitos espaços em branco).

Fonte:https://en.wikibooks.org/wiki/LaTeX/Source_Code_Listings#Settings

informação relacionada