2

LaTeXコードを書くときは、次のC風のインデント/ブレーススタイルを使用します。

\foo{
  blah blah... this line is getting too long and should be wrapped
}

オプション (この例では 50)に従って、ブロック/段落を再ラップ (技術的にはrefill ) する必要があるときはいつでも、 を押します。これにより、ブレースの位置も変更されます。fill-columnM-q

\foo{ blah blah blah... this line is getting too
  long and should be wrapped }

これは私の目を痛めます :-( 確かにブレースを元の位置、つまり:

\foo{ 
  blah blah blah... this line is getting too
  long and should be wrapped 
}

fill-nobreak-predicateAUCTeX 用のカスタム フックを追加するかparagraph-start、 andparagraph-separateをカスタマイズする必要があると思いますが、私は emacs lisp にそれほど熟練していません...

この質問はどのマークアップ テキスト モードにも当てはまる可能性があるため、自由に記入してアップストリームに移動してください。

4

2 に答える 2

2

実際には、fill-nobreak-predicate は (名前が示すように) いくつかの場所で行を分割することを避けるためのものですが、いくつかの場所で強制的に行を分割したい場合もあります。おそらく、次の方法でより適切に機能するでしょう: 段落の一部としてのみを含むか、または考慮すべきでないparagraph-separate行を宣言します。}\cmd{

于 2012-06-13T16:57:14.540 に答える
0

@Stefanの提案により、私はこれを思いつきました。簡単なテストでは、うまく機能しているようです。

(add-hook 'LaTeX-mode-hook
          '(lambda ()
            (setq paragraph-separate (concat " *}\\|^ *\\\\[a-zA-Z]* ?{\\|"
                                              paragraph-separate))))
于 2012-06-18T20:55:35.960 に答える