LaTeXの\ includeの後に改ページしない方法


110

私のサブセクションは別々のファイルにあるため、私のLaTeXは各サブセクションの後に改ページを作成します。使用\include{file}後に改ページを追加するコマンドを使用しています。

の使用による改ページを避けたい\include{file}

include-commandを使用した後、どのように改ページできないのですか?


2
通常、サブセクションの後に改ページが表示されるとは思わない。どのドキュメントクラスを使用していますか?
カスカベル

1
ヘッダー(\ begin {document}までのすべて)を投稿して、何が問題かを教えていただけますか?
ジェラルドセナルクレンドゥグランシー

10
使用\input、それ以外の場合は使用、\inputまたは使用しない場合\input
egreg、2014年

回答:


4

Will Robertsonによって提案されたnewcludeパッケージは、クリアページを回避するためにかなり便利です。が機能するため\includeonlyには、の直後にパッケージを呼び出す必要があります\documentclass{...}。私の論文の複雑な環境では、参照が壊れる問題も発生しました。

最終バージョンにincludeonlyが必要ない場合の適切な回避策は、ドラフトでのみincludeを使用することです。

\newif\ifdraft\drafttrue

または

\newif\ifdraft\draftfalse

\ifdraft
  \include{...}
\fi

\ifdraft
  \include{file}
\else
  \input{file}
\fi

最初の行はmakefileによって簡単に追加でき、ドラフトバージョンまたはプロダクションバージョンをプロダクションのmakeターゲットにすることができます。

\includeonly{file1,file2,...}で呼び出されるソースファイルのリストを指定できます\include{file1}file1は例です)。結果のドキュメントに表示されます。その他は表示されませんが、対応するauxファイルが含まれている場合は、カウンター、ラベル、目次と見なされます。

言い換えれば、使用することによってinclude、およびincludeonly正しい参照を持ちながら一つはドラフトでコンパイル時の短いを維持することができます。ウィキブックスのさらなる読み物。

@ウィルロバートソン

\include\includeonly{...}必要なセクションのみを構築できるため、非常に便利です。長いテキストで作業する場合、長い章のセクションのみを含めると、コンパイル時間にかなりの違いが生じる可能性があります。また、ある時点で作業しているときに長いドラフトに目を通す必要がないため、非常に便利です。最後に、ソースコードのファイルが小さいほど、gitなどのバージョン管理で扱いやすくなります。


非常に長いワーキングペーパーの1つのセクションのみをコンパイルする方法の例を挙げていただけますか?私はpagesel\discardpagesfromhereとで次の回答のこれらの方法を使用しました\keeppagesfromhere。それらは互いに少し重複しているので、このドラフト管理をよりうまく処理できるかどうかを知りたいと思います。tex.stackexchange.com/a/267555/13173
レオ・レオポルド・ヘルツ준 영

1
私はcorrecltyそれを理解していれば、pageselは以上達成することであるincludeonlyページが最終ビルドに含まれている細かな制御を可能にすることにより。インクルードの範囲ははるかに小さく、オンとオフを切り替えることができる方法でソースコードをインクルードします。
gschenk 2016年

152

\include常にを使用し\clearpageます。これは完全に実用的なデフォルトではありません。サブセクションではなく、章全体を対象としています(とにかく、なぜサブセクションを別のファイルにしたいのですか?)。

代わりにパッケージを使用\input{filename}またはロードしてnewclude書き込むことで修正できます\include*{filename}


私のデータベースプロジェクトには、システムのセットアップ方法を示すための計画ドキュメント「ビルディング」ドキュメントが必要です。それらは私のLaTeXファイルのセクションです。
レオ・レオポルド・ヘルツ준 영

7
サブセクションを別のファイルに配置する理由のスタックを考えることができます。最初に頭に浮かぶのは、ターゲットやジョブアプリケーションに応じて、さまざまな詳細レベルのCVを作成することです。一度は、単一の「%」記号を使用して、ビットを簡単に切断または挿入できます。
ニコラスハミルトン

8
私がこの回答を書いてから久しぶりですが、括弧は皮肉であることが意図されていたと思います:)
ウィルロバートソン

\include新しいページを開始する理由は、\includeonly適切に機能できるためです。
Carsten S

セクションをさまざまなファイルにトリミングするもう1つの理由:最初に常にmaketitleが付いているが、常に1つの練習用シートだけを印刷物に含める練習用シートを書くことを検討してください。私自身、すべてのエクササイズシートを章自体とは見なしませんでした。特に、レクチャーの1つのチャプターを参照する演習シートが増えるためです。includeは、演習付きのシート1(1.1〜1.4)、演習付きのシート2(2.1〜2.3)などの演習シートのカウントとしてのみ機能します。
C-Star-W-Star

30

前に\include置くことによって引き起こされる改ページを停止でき\let\clearpage\relaxます。そう、

\let\clearpage\relax
\include{file1}
\include{file2}
\include{file3}

3つのファイル(およびその後にインクルードされるファイル)の内容を、改ページなしでまとめます。\clearpageコマンドの緩和をやめたい場合は、次のようにファイルをラップして、グループ内で改ページなしで含めます。

\begingroup
\let\clearpage\relax
\include{file1}
\include{file2}
\endgroup
\include{file3}

これにより、file1とfile2の間の改ページが停止しますが、file2の後に通常の改ページが挿入されます。(注:これが問題ないかと思いますが、これが参照とページ番号付けに干渉するかどうかはわかりません。)


1
ありがとう!この回答は、複数のインクルードとリファレンスがあり、それらに新しいページが必要ない場合に有効です。最後のグループに1つと参考文献部分を含め、クリアページではないようにするだけです。
Manuel Ferreria、2012年

2
Manuelは\begingroup\let\clearpage\relax ...\endgroup正解です。参考文献をテキストと同じページに配置したい場合など、好きな場所でトリックを使用できます---特定のセクションまたはパーツ間の改ページを停止するなど
John

1
この解決策は、参照に関して私にいくつかの問題を引き起こしたようです。2つの列挙リストを含むインクルードファイルで、2番目のリストのアイテムへの参照が機能しませんでした。なぜそうなるのか私にはわかりませんが、newcludeに切り替えると問題が修正されました。
Mike Shulman

1
この方法を使用しないことをお勧めます。それは解決するよりも多くの問題を作成します(最初にいくつかの問題を解決するとします):tex.stackexchange.com/a/185237/4427を
egreg

2

ありがとう、ケンブリッジ

\ inputの代わりに\ includeを使用し、\ includeonlyコマンドを使用して処理するセクションを選択します


2
これは最善のアドバイスではありません。これらの状況を想定している実際のコマンドがあるのに、なぜ\include{...]ジョブに使用したいの\input{...}ですか?
Florian R. Klein

1
この答えは質問にまったく答えていないようです。(それ以外の点では有用なアドバイスですが、良い参考資料です。)
jciloa

これは質問の答えにはなりません。
EL_DON 2018
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.