On 05/19/2017 06:31 PM, Paul Johnson wrote:
Can you help me make output of \code{} in inline logical markup look
similar to the listings output for code sections? I'd like to do this
in a Beamer slideshow.
The \code{} result is typewriter font, but not colorized like the
listings output I'm using.
I found out here:
https://tex.stackexchange.com/questions/28179/colored-background-in-inline-listings
that I can insert
\usepackage{realbox}
\definecolor{light-gray}{gray}{0.95}
in the preamble and get more-or less what I want from \Colorbox, with
ERT like this
\Colorbox{light-gray}{\lstinline{A=@#$%^&*()1}}
I don't want to manually type that (or something like it) every place
where I've used the LyX right-click code logical markup. Would you
tell me if I can redefine \code{} in preamble?
The easiest solution is probably to hack the module file. Copy the
original file (/usr/share/lyx/layouts/logicalmkup.module on my system;
YMMV) to your personal layout directory (~/.lyx/layouts on my system;
again, YMMV). If you want the gray background whenever you use the code
markup, you can keep the same name (so that selecting the logical markup
module always grabs your hacked version); otherwise, you'll need to give
it a new name and also change the first line to give it a distinctive
name (e.g., #\DeclareLyXModule{PJ's Logical Markup}).
I've attached a version I hacked. All the changes are near the end of
the file. I used a darker version of "light gray" than you did, because
I was having trouble seeing the lighter version in my PDF viewer. Feel
free to adjust that to taste.
Paul
#\DeclareLyXModule{Logical Markup}
#DescriptionBegin
#Defines some character styles for logical markup: noun, emph, strong, and code.
#DescriptionEnd
#Category: charstyles
# Author : Martin vermeer <martin.verm...@hut.fi>
Format 60
InsetLayout Flex:Noun
LyxType charstyle
LabelString noun
LatexType command
LatexName noun
Font
Shape Smallcaps
EndFont
Requires noun
InToc true
HTMLTag span
HTMLAttr class='noun'
HTMLStyle
span.noun {
font-family: sans-serif;
}
EndHTMLStyle
ResetsFont true
End
InsetLayout Flex:Emph
LyxType charstyle
LabelString emph
LatexType command
LatexName emph
Font
Shape Italic
EndFont
InToc true
HTMLTag em
ResetsFont true
End
InsetLayout Flex:Strong
LyxType charstyle
LabelString strong
LatexType command
LatexName strong
Font
Series Bold
EndFont
Preamble
\providecommand*{\strong}[1]{\textbf{#1}}
EndPreamble
InToc true
HTMLTag strong
ResetsFont true
End
InsetLayout Flex:Code
LyxType charstyle
LabelString code
LatexType command
LatexName code
Font
Family Typewriter
EndFont
Preamble
\RequirePackage{xcolor, realboxes}
\definecolor{light-gray}{gray}{0.85}
\providecommand*{\code}[1]{\Colorbox{light-gray}{\texttt{#1}}}
EndPreamble
InToc true
HTMLTag code
ResetsFont true
Spellcheck false
End