1

Python コードを正しく表示するために Microsoft Word と格闘しており、助けが必要です。

大量の Python スクリプトを Microsoft Word に貼り付け、スニペットの周りにドキュメント テキストを貼り付けようとしています。これらの Python スニペットには、数行のものもあれば、1 ページを超える長さのものもあります。ドキュメントは現在約 500 ページの長さであるため、ドキュメント全体に約 200 のスニペット ブロックが散らばっています。

作成したフォント スタイルをスニペットに設定しています。そのため、それらすべてのフォントサイズ、色、スタイルなどを一度に変更できます。しかし、単語の折り返しに大きな問題があります。Python の長いステートメントは単語にラップされ、インデントが失われるため読みにくくなります。「ぶら下げインデント」を使用して、レベル 1 の折り返し行を正常にインデントできます。しかし、ネストされたものはさらにインデントされるため、レベル 2 またはレベル 3 のインデントについては何もできません。

例(スペースを削除し続けたため、スペースの代わりにドットを使用しました)

This is a statement
This is another statement
if (condition):
.........This is a third statement
.........This is a fourth statement
.........for loop : 
..................This is a fifth statement
..................This is a sixth statement
..................if (condition):
...........................This is a seventh statement

各ステートメントがかなり長く、単語ページの次の行に折り返されていると想像してください。私は得る

This is a statement
This is another statement
if (condition):
.........This is a third     
statement
.........This is a fourth     
statement
.........for loop:
.................This is
a fifth statement
.................This is a
sixth statement 

これを単語で修正するにはどうすればよいですか?ぶら下げインデントは、レベル 1 のインデント (if 条件のステートメント) を修正しますが、レベル 2 のインデント (for ループのステートメント) は修正しません。

注: Word 内で何らかのオプション、プラグイン、またはマクロを使用したいと考えています。コード エディターを使用して、コードを rtf またはその他の形式でコピー アンド ペーストすることができません。これを 200 回実行してすべてのコード スニペットを置き換えたとしても、ドキュメントのフォント サイズを変更すると、すべてが再び台無しになります。もう 1 つのオプションは、Word に埋め込みまたはリンクし (コピー アンド ペーストする必要なし)、独自の環境でフォント スタイルとサイズを変更できる IDE で、Word ですべての出現時に自動的に更新されます。

できれば助けてください。私は狂ったように検索しましたが、うまくいくものは何も見つかりませんでした...

4

5 に答える 5

0

pycode私は単語を使用しませんが、LibreOffice では、段落の書式設定を使用できます。インデント ( 、 )のレベルごとに新しい段落スタイルを作成しますpycode_indent1...。必要なすべての書式設定 (等幅、段落間隔なしなど) を最上位スタイルに配置し、インデントされたスタイルがそれを親として使用するようにします。次に、それぞれの子スタイルに適切なインデントを追加します。これは基本的に、箇条書きのない複数の深さの箇条書きリストと同じ考え方です。次に、各行に適切なインデント段落スタイルを選択します (ヒント: LibreOffice では ctrl+mouse を使用して、連続していない複数の行を選択できます)。

確かに、この方法では行ごとに実行する必要があり、これはお尻に大きな苦痛を与える可能性があります. しかし、問題になっているのがほんの数個のスニペットである場合はうまくいくかもしれません。

于 2014-09-04T00:30:08.093 に答える
0

docutilsを使用します。

MS-Word (およびその他の WYSIWYG エディター) と戦う代わりに、docutils を使用する方がはるかに簡単です。

  1. ドキュメントをほぼプレーン テキストで記述します。非常にシンプルで軽量な RST マークアップを使用します。

  2. 変換を実行してrst2html.py、ソースから見栄えの良い HTML ページを作成します。

  3. 変換を実行してrst2latex.py、ソースから LaTeX を作成します。LaTeX から PDF を生成できるさまざまなツールがあります。

この場合、コード スニペットは毎回完全に処理されます。仕事がありません。

本当に大きくて複雑なものを書いているなら、これにはSphinxを使うべきです。これは、コード スニペット用のさらに優れたマークアップ機能を備えた docutils の拡張機能です。

于 2011-04-22T14:41:45.617 に答える
0

Word を使用してテキスト形式の文書の下書きを試したことはありますか? 後でいつでも変換できます。

于 2011-04-22T13:26:07.077 に答える
0

1) PEP-8 の推奨に従い、80 文字未満の行を維持します。時々、これは非常に困難または不便に思えます。このような場合、最大 90 ~ 95 文字まで使用できます。行が長くなるのは、おそらくコードの設計が悪いか、変数名の選択が間違っているためです。(最大 120 文字の標準サイズで作業している人がいますが、おそらく、Word のコードを縦向きモードで公開しようとしているわけではありません)。

2) 等幅フォントを使用する

3) 1 行あたり 80 ~ 95 文字を提供できるように、フォント サイズを十分に小さくしてください。

于 2011-04-22T15:03:19.103 に答える
0

シンタックス ハイライトを使用して、Python 対応のコード エディターでコードを記述します。スニペットを保存します。スクリーンショットを撮ります。それらを MS Word に貼り付けます。必要に応じて画像のサイズを変更し、トリミングします。

あとは、画像のワードラップで MS Word と戦うだけです。

于 2011-04-22T13:51:20.023 に答える