包含编程语言名称宏的包?

包含编程语言名称宏的包?

有没有包含常见编程语言名称预定义宏的软件包?我的意思是,宏可以帮助以良好的方式编写 C++、C#、F# 等内容,就像 \TeX 一样?我已经编写了一些自己的宏来做到这一点,但肯定有人已经想到了这一点,并在软件包中准备了这样有用的宏。

编辑:这是我自己使用的宏。可能对其他人有用。

\newcommand{\CPP}{C\nolinebreak[4]\hspace{-.05em}\raisebox{.3ex}{\small++}\xspace}
\newcommand{\CS}{C\nolinebreak[4]\hspace{-.05em}\raisebox{.2ex}{\small\#}\xspace}
\newcommand{\FS}{F\nolinebreak[4]\hspace{-.05em}\raisebox{.2ex}{\small\#}\xspace}

答案1

作为答案排版“C++”(cplusplus)最漂亮的方法?show,对于如何排版这些花哨的名字,并没有统一的共识。也没有适合它们的包。

因此,你最好使用你的定义,可能以一种更独立于上下文的方式编写;例如你的

\newcommand{\CPP}{C\nolinebreak[4]\hspace{-.05em}\raisebox{.3ex}{\small++}\xspace}

如果在以较大尺寸排版的章节标题中使用,将会产生错误的结果,因为\small是硬编码的:

在此处输入图片描述

你可以用这个包做得更好relsize,或者,由于你需要的扩展不是很大,所以可以使用\scalebox

\documentclass{article}
\usepackage{xspace,graphicx}
\newcommand{\CPP}{C\kern-.05em \raisebox{.3ex}{\scalebox{.9}{++}}\xspace}

\begin{document}

{\Large\texttt{\string\Large} size: \CPP\par}

\texttt{normal} size: \CPP\par

{\small\texttt{\string\small} size: \CPP\par}

\end{document}

正如您在下图中看到的,字体大小得到了尊重。

在此处输入图片描述

使用\kern-.05em代替可\hspace{-.05em}确保在 C 和两个加号之间不插入断点。或者

\newcommand{\CPP}{\mbox{C\hspace{-.05em}\raisebox{.3ex}{\scalebox{.9}{++}}}\xspace}

也会这么做。

您可以对\CS和执行类似的操作\FS

相关内容