Ruh paketine alternatif mi?
Bağlam
Biri bir metni vurgulamak veya üzerine vurmak isteyebilir. Bu, o kadar iyi çalışmasa da, soulpaketle veya bir numara kullanılarakulem paketle yapılabilir .
Sorun
Ruhla ilgili sorunum, sözlüklerde, yeni komutlarda veya alıntılarda iyi davranmamasıdır. Temel olarak, metninizin tamamını alıp başka yerde\hl{} tartışıldığı gibi bir ile çevreleyemezsiniz . Ve bir çözüm ile veya hatta sadece hile yapın.\mbox{\gls{toto}}{\gls{toto}}
Örneğin, aşağıdaki asgari çalışma örneğine bakın:
\documentclass{article}
\usepackage{soul}
\usepackage[acronym]{glossaries}
\usepackage{color}
\newacronym{co2}{CO$_2$}{carbon dioxide}
\newcommand{\etal}{\textit{et al.}}
\begin{document}
Lorem ipsum \gls{co2} dolor by Toto \etal{}\cite{latexcompanion} sit amet, consectetur adipiscing elit.
Etiam tortor sapien, rutrum vitae lacinia sit amet, mollis ac est. Aenean tortor orci \gls{co2}.
\begin{thebibliography}{9}
\bibitem{latexcompanion}
Michel Goossens, Frank Mittelbach, and Alexander Samarin.
\textit{The \LaTeX\ Companion}.
Addison-Wesley, Reading, Massachusetts, 1993.
\end{thebibliography}
\end{document}
hangi süre iyi derlenir:
[...]
\begin{document}
\hl{Lorem ipsum \gls{co2} dolor by Toto \etal{}\cite{latexcompanion} sit amet, consectetur adipiscing elit.
Etiam tortor sapien, rutrum vitae lacinia sit amet, mollis ac est. Aenean tortor orci \gls{co2}.}
[...]
bir grup hata mesajı veriyor, kısmen düzeltilen:
[...]
\begin{document}
Lorem ipsum \mbox{\gls{co2}} \hl{dolor by Toto \mbox{\etal{}} {\cite{latexcompanion}} sit amet, consectetur adipiscing elit.
Etiam tortor sapien, rutrum vitae lacinia sit amet, mollis ac est. Aenean tortor orci \mbox{\gls{co2}}.}
[...]
hangi İlk eklerseniz başarısız \mbox{\gls{co2}}içinde \hl{}komuta. Belki çok uzun?
Sorular
- Tam olarak ne olduğunu arasındaki sorun
soulbireyin\hl{}komuta ve\cite{},\etal{}veya terimler sözlüğü girişleri? - Bu sorunlar nasıl çözülür? (önerilen çözümler yalnızca kısmen çalışır)
\hl{}Bir kod bloğunun tamamını çevreleyen, muhtemelen şekiller, metin vb. İçeren bir şeye izin veren bir alternatif var mı? Başka bir deyişle, kesin bir bölümün arka plan rengini değiştirmenin basit bir yolu var mı?
Bulduğum en iyi şey bir renk kutusu kullanmak (ayrıca buraya bakın ), şöyle:
[...]
\usepackage{tcolorbox}
\tcbuselibrary{breakable}
[...]
\begin{tcolorbox}[breakable,notitle,boxrule=0pt,colback=yellow,colframe=yellow]
Lorem ipsum \gls{co2} dolor by Toto \etal{}\cite{latexcompanion} sit amet, consectetur adipiscing elit.
Etiam tortor sapien, rutrum vitae lacinia sit amet, mollis ac est. Aenean tortor orci \gls{co2}.
\end{tcolorbox}
[...]
Ancak metin biçimlendirmesini değiştirir ...
Yanıtlar
ulemPaketi istediğini elde etmek için kullanabilirsin sanırım. soulİş yapmak için bir numara da var .
DÜZENLEME: İkinci sorunuzla ilgili olarak, muhtemelen şekiller, metin vb. İçeren kesin bir bölümün arka plan rengini değiştirmenin basit bir yolu olup olmadığı konusunda, bu o kadar kolay değildir. İçeriğinizi başka bir ortama ( mdframedveya gibi tcolorbox) saran yaklaşımları kullanabilirsiniz , ancak bu, biçimlendirmenizi etkileyebilir ve ayrıca içindeki belirli komutları / öğeleri, özellikle kayan değerleri kısıtlayabilir. tcolorboxEn azından basit içerik için çalışan aşağıya dayalı bir örnek ekledim. Ayrıca, afterpagesayfa arka planını değiştirmek için kullanılan alternatif bir yaklaşım ekledim .
ulem
Kendi hlkomutunuzu şöyle tanımlayın (cmp.https://tex.stackexchange.com/a/48549/223749):
\usepackage[normalem]{ulem}
\newcommand\hl{\bgroup\markoverwith
{\textcolor{yellow}{\rule[-.5ex]{.1pt}{2.5ex}}}\ULon}
Bununla, MWE'niz iyi bir şekilde derlenir. (Bir bak bakalımhttps://tex.stackexchange.com/a/254337/223749olası sorunlar için). Sizden gelen soutkomutu kullanarak, ulemMWE'de aynı metnin üstünü hatasız olarak da çizebilirsiniz.
Tam MWE (MWE'nizde bir \makeglossarieskomut eksikti ):
\documentclass{article}
\usepackage[normalem]{ulem}
\newcommand\hl{\bgroup\markoverwith
{\textcolor{yellow}{\rule[-.5ex]{.1pt}{2.5ex}}}\ULon}
\usepackage[acronym]{glossaries}
\usepackage{color}
\newacronym{co2}{CO$_2$}{carbon dioxide}
\newcommand{\etal}{\textit{et al.}}
\makeglossaries
\begin{document}
\hl{Lorem ipsum \gls{co2} dolor by Toto \etal{}\cite{latexcompanion} sit amet, consectetur adipiscing elit. Etiam tortor sapien, rutrum vitae lacinia sit amet, mollis ac est. Aenean tortor orci \gls{co2}.}
\sout{Lorem ipsum \gls{co2} dolor by Toto \etal{}\cite{latexcompanion} sit amet, consectetur adipiscing elit. Etiam tortor sapien, rutrum vitae lacinia sit amet, mollis ac est. Aenean tortor orci \gls{co2}.}
\begin{thebibliography}{9}
\bibitem{latexcompanion}
Michel Goossens, Frank Mittelbach, and Alexander Samarin.
\textit{The \LaTeX\ Companion}.
Addison-Wesley, Reading, Massachusetts, 1993.
\end{thebibliography}
\end{document}
ruh
Devam etmek istiyorsanız soul, \soulregisterbu cevabı izleyerek sorunlarınız için bir geçici çözüm de vardır (https://tex.stackexchange.com/a/139500/223749). Bu aynı zamanda üstü çizili bir olasılık sağlar.
Tam MWE:
\documentclass{article}
\usepackage{soul}
\soulregister\cite7
\soulregister\gls7
\soulregister\etal7
\usepackage[acronym]{glossaries}
\usepackage{color}
\newacronym{co2}{CO$_2$}{carbon dioxide}
\newcommand{\etal}{\textit{et al.}}
\makeglossaries
\begin{document}
\hl{Lorem ipsum \gls{co2} dolor by Toto \etal{}\cite{latexcompanion} sit amet, consectetur adipiscing elit. Etiam tortor sapien, rutrum vitae lacinia sit amet, mollis ac est. Aenean tortor orci \gls{co2}.}
\st{Lorem ipsum \gls{co2} dolor by Toto \etal{}\cite{latexcompanion} sit amet, consectetur adipiscing elit. Etiam tortor sapien, rutrum vitae lacinia sit amet, mollis ac est. Aenean tortor orci \gls{co2}.}
\begin{thebibliography}{9}
\bibitem{latexcompanion}
Michel Goossens, Frank Mittelbach, and Alexander Samarin.
\textit{The \LaTeX\ Companion}.
Addison-Wesley, Reading, Massachusetts, 1993.
\end{thebibliography}
\end{document}
tcolorbox
Bazı hilelerle, tcolorboxmuhtemelen şekiller, metin vb. İçeren kesin bir bölümün arka plan rengini değiştiren özel bir vurgulama ortamı tcolorboxyaratabilirsiniz. Tüm kenar boşluklarının ayarlandığı bir ortam kullanarak 0ve ardından geri yükleyerek \parindent, temelde metni almalısınız. kutunun dışında olacağı gibi. Ek olarak, floatpaketi kullanarak ve Hyerleştirme seçeneğini belirterek, gerçekte yüzer olmasalar da, gibi tableveya figureiçinde kayan ortamları dahil edebilirsiniz . Kullandığım ulemçizili için MWE içinde.
Aşağıdaki MWE bir şekil ve bir tablonun yanı sıra bir sayfa sonunu içerir.
\documentclass{article}
\usepackage{mwe}
\usepackage[acronym]{glossaries}
\usepackage{color}
\usepackage{float}
\usepackage[normalem]{ulem}
\newlength\defaultparindent
\AtBeginDocument{\setlength\defaultparindent{\parindent}}
\usepackage[breakable]{tcolorbox}
\newenvironment{highlighttcb}%
{\begin{tcolorbox}[colback=yellow,
colframe=white,
boxsep=0pt,
left=0pt,
right=0pt,
top=0pt,
bottom=0pt,
center,
valign=top,
before skip=0pt,
after skip=0pt,
width=\textwidth,
breakable,
boxrule=0pt,
frame empty,
sharp corners
]
\setlength{\parindent}{\defaultparindent}
}%
{\end{tcolorbox}}
\newacronym{co2}{CO$_2$}{carbon dioxide}
\newcommand{\etal}{\textit{et al.}}
\makeglossaries
\begin{document}
\blindtext
\blindtext
\blindtext
\blindtext
\blindtext
\begin{highlighttcb}%
Lorem ipsum \gls{co2} dolor by Toto \etal{}\cite{latexcompanion} sit amet, consectetur adipiscing elit. Etiam tortor sapien, rutrum vitae lacinia sit amet, mollis ac est. Aenean tortor orci \gls{co2}.
\sout{Lorem ipsum \gls{co2} dolor by Toto \etal{}\cite{latexcompanion} sit amet, consectetur adipiscing elit. Etiam tortor sapien, rutrum vitae lacinia sit amet, mollis ac est. Aenean tortor orci \gls{co2}.}
\begin{figure}[H]
\includegraphics[width=.4\textwidth]{example-image-a}\hfill
\includegraphics[width=.4\textwidth]{example-image-b}
\caption{This is a figure caption within tcolorbox.}
\end{figure}
\blindtext
\blindtext
\blindtext
\blindtext
\begin{table}[H]
\centering
\begin{tabular}{lcr}
a & b & c \\
a & b & c \\
a & b & c \\
\end{tabular}
\caption{This is a table caption within tcolorbox.}
\end{table}
\blindtext
\end{highlighttcb}
\begin{thebibliography}{9}
\bibitem{latexcompanion}
Michel Goossens, Frank Mittelbach, and Alexander Samarin.
\textit{The \LaTeX\ Companion}.
Addison-Wesley, Reading, Massachusetts, 1993.
\end{thebibliography}
\end{document}
sayfa rengi / sayfa sonrası
Son olarak, ilginç bir yaklaşım, colorve afterpagepaketlerini kullanarak sayfanın arka planını kısmen renklendirmektir (https://tex.stackexchange.com/a/237427/223749). Bu, içeriğinizi değiştirmenize gerek olmaması ve biçimlendirmenin etkilenmemesi avantajına sahiptir. Olası bir dezavantaj (amacınıza bağlı olarak), vurgulamanın sol ve sağ kenar boşluklarını da içermesi olabilir. Ayrıca, vurgulama ortamınızın içinde yüzen nesneler varsa ve onlar bunun dışında yüzerlerse, vurgulanmazlar.
Bir şekil ve sayfa sonu içeren tam MWE:
\documentclass{article}
\usepackage{mwe}
\usepackage[acronym]{glossaries}
\usepackage{color}
\usepackage[normalem]{ulem}
\usepackage{afterpage}
\makeatletter
% Macro \changepagecolor has the same syntax as \pagecolor or \color
% with an optional argument and a mandatory argument.
\newcommand*{\changepagecolor}{%
\@ifnextchar[\@changepagecolor@i\@changepagecolor@ii
}
% Case: \changepagecolor[...]{...}
\def\@changepagecolor@i[#1]#2{%
\@changepagecolor@do{[{#1}]{#2}}%
}
% Case: \changepagecolor{...}
\newcommand*{\@changepagecolor@ii}[1]{%
\@changepagecolor@do{{#1}}%
}
\newcommand*{\@changepagecolor@do}[1]{%
% Fill the remaining space with a colored rule
\begingroup
\offinterlineskip
\hbox to 0pt{%
\kern-\paperwidth
\vtop to 0pt{%
\color#1%
\hrule width 2\paperwidth height \paperheight
\vss
}%
\hss
}%
\endgroup
% Set page color for the next page
\afterpage{\pagecolor#1}%
}
\makeatother
\newenvironment{highlight}%
{\changepagecolor{yellow}}%
{\changepagecolor{white}}
\newacronym{co2}{CO$_2$}{carbon dioxide}
\newcommand{\etal}{\textit{et al.}}
\makeglossaries
\begin{document}
\blindtext
\blindtext
\blindtext
\blindtext
\begin{highlight}
Lorem ipsum \gls{co2} dolor by Toto \etal{}\cite{latexcompanion} sit amet, consectetur adipiscing elit. Etiam tortor sapien, rutrum vitae lacinia sit amet, mollis ac est. Aenean tortor orci \gls{co2}.
\sout{Lorem ipsum \gls{co2} dolor by Toto \etal{}\cite{latexcompanion} sit amet, consectetur adipiscing elit. Etiam tortor sapien, rutrum vitae lacinia sit amet, mollis ac est. Aenean tortor orci \gls{co2}.}
\blindtext
\begin{figure}[!h]
\includegraphics[width=.4\textwidth]{example-image-a}\hfill
\includegraphics[width=.4\textwidth]{example-image-b}
\caption{This is a figure caption within the custom highlight environment}
\end{figure}
\end{highlight}
\blindtext
\begin{thebibliography}{9}
\bibitem{latexcompanion}
Michel Goossens, Frank Mittelbach, and Alexander Samarin.
\textit{The \LaTeX\ Companion}.
Addison-Wesley, Reading, Massachusetts, 1993.
\end{thebibliography}
\end{document}
Bir alternatif, "düzeltme" paketini ve "\ hilite" komutunu kullanmaktır. Ancak, "\ gls" den önce "\ protec" komutunu kullanmalı ve "\ gls {}" sonrasındaki kaşlı ayraçları kapatmalısınız. Ardından metnin geri kalanını vurgulamak için tekrar "\ hilite" kullanın.
\documentclass{article}
\usepackage{soulutf8} % Only necessary if there are accented characters inside the curly braces
\usepackage{proofread}
\usepackage[xindy]{glossaries}
\makeglossaries
\newglossaryentry{euismod}{
name={euismod},
description={euismod sodales, sollicitudin vel, wisi. Morbi auctor lorem non justo.}
}
\begin{document}
Curabitur auctor semper nulla. Donec varius orci eget risus. Duis nibh mi, congue eu, \hilite{accumsan eleifend.
Nam dui ligula, fringilla a, \protect\gls{euismod}}\hilite{ sodales, sollicitudin vel, wisi. Morbi auctor lorem non justo}. Nam lacus libero, pretium at.
\printglossary
\end{document}