セクション見出しの右側のテキスト

セクション見出しの右側のテキスト

これはプロジェクトの見出しを定義するマクロです

   \newcommand{\project}[2]{
    %1: project name
    %2: percentage of time
    \subsection*{#1 \begin{flushright} \textcolor{darkgray}{#2\%}\end{flushright}}
    }

コマンドと出力は次のとおりです。

\project{My Project}{25}

ここに画像の説明を入力してください

パーセンテージをプロジェクト名と同じ行に表示したいのですが、どのようにフォーマットすればよいでしょうか?

答え1

@Johannes_B の提案に従って、コメントを回答に変えました。

希望する外観を実現するには、flushright環境を削除し、\hfill代わりに以下を使用します。

\newcommand{\project}[2]{\subsection*{#1\hfill\textcolor{darkgray}{#2\%}}}

実際、最初にflushright行うことは を呼び出すことであり\parsep\parskip、基本的に新しい行を開始します。

完全なコード:

\documentclass{article}
\usepackage{xcolor}
\usepackage{lipsum}
\newcommand{\project}[2]{%
  \subsection*{#1\hfill\textcolor{darkgray}{#2\%}}}
\begin{document}
\section{Test}
\subsection{Whatever}
\project{My Project}{25}
\lipsum[1]% dummy text, to show line width
\end{document}

ここに画像の説明を入力してください

注記

\project目次にエントリを追加したいと思い、の定義で\subsection*を に変更すると、結果は醜いものになります。\subsection\project

関連情報