@celenius-本当にそのページブレイクを取り除きたいのなら、これはそれを行うための非常に汚いトリックです...
\ makeatletter
\ let \ O @@ input @ \ @ input @
\ def \ @noclearpage {\ @ ifnextchar \ clearpage \ @gobble \ relax}
\ def \ @ input @#1 {\ O @@ input @ {#1} \ @ noclearpage}
\ let \ O @@ include \ @include
\ def \ @include {\ expandafter \ @noclearpage \ O @@ include}
\ let \ O @ include \ include
\ def \ include {\ expandafter \ @noclearpage \ O @ include}
\ makeatother
\include
基本的に、すべてのインスタンスを取り除くためにマクロに対して手術を行い\clearpage
ますが、ご覧のとおり、これを行う最もクリーンな方法はまだ本当に汚いです。これはひどくもろく、article
クラスでしか機能しない可能性が高いため、別\documentclass
のを使用している場合は運が悪いです。私は基本的に、ファイルを有効\tracingcommands=1
にしてgrepすることでこれ\tracingmacros=1
を導き出し、.log
ファイル\clearpage
を挿入する前に呼び出されたものをハックできるようにしました\@noclearpage
。
私はこの解決策をお勧めしません-それが生成する個別のファイルにchapterbib
依存することなく、どのように機能するかを調べて正しい方法で修正する方がはるかに良いでしょう...しかし、それはかなり難しい作業になると確信しています。別の回避策は、実際にインクルードを実行せずに、ファイルの分割をエミュレートするコマンドを作成することだと思います...\include
.aux
\include
.aux
編集:さて、ここに急ごしらえがあります
\ makeatletter
\ newenvironment {auxfile} [1] {\ Relax
\ ifnum \ @ auxout = \ @ partaux
\ @ latex @error{auxfile環境をネストまたは\string\included}することはできません
\ @eha
\ else \ @changeaux {#1} \ fi
} {\ immediate \ closeout \ @partaux \ let \ @auxout \ @mainaux}
\ def \ @ changeaux#1 {%
\ immediate \ write \ @mainaux {\ string \ @input {#1.aux}}%
\ let \ @auxout \ @partaux
\ immediate \ openout \ @ partaux#1.aux%
\ immediate \ write \ @partaux {\ relax}}
\ makeatother
次に、挿入するだけで、通常のファイルの代わりに\begin{auxfile}{foo}...\end{auxfile}
使用されます。これはと完全に互換性があります。CTANにはこのようなものはないと思うので、ミニパッケージとして提出するかもしれません。foo.aux
.aux
chapterbib