detexの利用

detexの利用

- 林 正人 の投稿
返信数: 6
最近は,文法チェックのサイトが沢山あり,これを利用するには,テキスト形式か,word 形式のファイルでないと受け付けてもらえません.TeXをword形式に変換する方法は複数ありますが,結局,不要な数式のところで引っかかりあまりうまくいきません.同時に余計な改行が入ることも文法チェックの障害となります.
それで,色々と調べたところ,detexというものがあり,これを利用すれば,余計な数式などを除いたテキストファイルが手に入ることが分かったのですが,どうやったら使えるようになるのかわからず,こちらに質問させていただくことになりました.
こちらの利用環境は,Windows 10 で,TeX live でインストールしたTexworks を用いています.
Texworks にて,「編集」→「設定」→「タイプセット」のところに行き,
detex を
プログラム C:/w32tex/bin/detex.exe
引数 $fullname
として設定しました.フォルダ「C:/w32tex/bin/」にdetex.exeが存在することは確認済みです.
その上で detex を実行したところ,tex コマンドを抜いたテキストファイルができることを期待したのですが,何もファイルが出来ませんでした.
detex の利用法について教えていただけると幸いです。
林 正人 への返信

Re: detexの利用

- Akira Kakuto の投稿
TeX Live と W32TeX がごっちゃになっていませんように...

detex の出力は stdout (標準出力) です。
使用法は
texdoc detex
で表示されるでしょう。
ソースに日本語が入っていると,だめだと思います。
あまり実用になると期待しないほうがよいでしょう。

例:
detex -clr sample2e.tex >test.txt
Akira Kakuto への返信

Re: detexの利用

- 林 正人 の投稿
お返事ありがとうございます.
ご説明頂いた方法で実行したら,detex を実行することができました.
しかし,detex の精度が悪く,数式の外の文字まで削除されましたので,全く,私の用途には使えないことが分かりました.
林 正人 への返信

Re: detexの利用

- Yamamoto Munehiro "munepi" の投稿
もし Pandoc https://pandoc.org をお試しでなければ、

    pandoc test.tex -t docx -o test.docx

を実行しますと、とりあえずの docx 形式の Word 文章ファイルに変換できます。
とくに、標準的な LaTeX コマンドで記述されていると、数式もそれなりの精度で docxの数式(OMML形式)に変換してくれます。

以上、簡単な返信のみでございます。
Yamamoto Munehiro "munepi" への返信

Re: detexの利用

- 林 正人 の投稿
有難うございます.
実は,数式があるのが面倒なので,数式がうまく,消えるような変換の方が良いのです.
英文法チェックのサイトはdocxを受け付けるのですが,upload した際に、数式が削除されます.
自分の環境では,pandoc はインストールされていないようでした.
一方,latex2rtf というものがインストールされており,こちらは,結構,数式が省略されるようです.
こちらを試したら,幾つかのソースファイルでは,いくつかの数式を削除したうえで,rtf ファイルが生成されたのですが,一部のファイルではうまくコンパイルが通りませんでした.エラーメッセージを見ても,原因が分からないのですが,参考のため以下に添付します.

Document format <IEEEtran> unknown, using article format

Warning line=2 Unknown style option conference ignored

Warning line=5 Unknown style option amsmath ignored

Warning line=6 Unknown style option latexsym ignored

Warning line=7 Unknown style option amssymb ignored

Warning line=8 Unknown style option bm ignored

Warning line=144 Command \unhbox not found - ignored

Warning line=144 Command \voidb not found - ignored

Warning line=145 Command \unhbox not found - ignored

Warning line=145 Command \voidb not found - ignored

Warning line=171 Environment <align> ignored. Not defined in commands.c

Warning line=173 Environment <align*> ignored. Not defined in commands.c

Warning line=179 Environment <align*> ignored. Not defined in commands.c

Warning line=188 Environment <align> ignored. Not defined in commands.c

Warning line=190 Environment <align> ignored. Not defined in commands.c

Warning line=223 Environment <align> ignored. Not defined in commands.c

Warning line=233 Command \mathbb not found - ignored

Warning line=237 Command \mathbb not found - ignored

Warning line=244 Command \unhbox not found - ignored

Warning line=244 Command \voidb not found - ignored

Warning line=245 Command \mathbb not found - ignored

Warning line=248 Command \mathbb not found - ignored

Warning line=250 Command \mathbb not found - ignored

Warning line=256 Command \mathbb not found - ignored

Warning line=280 Command \mathbb not found - ignored

Warning line=284 Command \mathbb not found - ignored

Warning line=289 Environment <align> ignored. Not defined in commands.c

Warning line=293 Environment <align> ignored. Not defined in commands.c

Warning line=295 Environment <align> ignored. Not defined in commands.c

Warning line=297 Environment <align> ignored. Not defined in commands.c

Warning line=327 Environment <align> ignored. Not defined in commands.c

Warning line=328 Command \square not found - ignored

Warning line=334 Environment <align> ignored. Not defined in commands.c

Warning line=335 Command \square not found - ignored

Warning line=344 Command \unhbox not found - ignored

Warning line=344 Command \voidb not found - ignored

Warning line=349 Environment <align*> ignored. Not defined in commands.c

Warning line=350 Command \square not found - ignored

Warning line=357 Command \mathop not found - ignored

Warning line=359 Environment <align> ignored. Not defined in commands.c

Warning line=360 Command \square not found - ignored

Warning line=365 Environment <align*> ignored. Not defined in commands.c

Warning line=366 Command \square not found - ignored

Warning line=382 Environment <align*> ignored. Not defined in commands.c

Warning line=383 Command \square not found - ignored

Warning line=384 Environment <proof> ignored. Not defined in commands.c

Warning line=419 Environment <align> ignored. Not defined in commands.c

Warning line=420 Command \eqref not found - ignored

Warning line=428 Environment <align> ignored. Not defined in commands.c

Warning line=429 Command \eqref not found - ignored

Warning line=444 Environment <align> ignored. Not defined in commands.c

Warning line=445 Command \square not found - ignored

Warning line=470 Environment <align> ignored. Not defined in commands.c

Warning line=473 Environment <align> ignored. Not defined in commands.c

Warning line=475 Command \eqref not found - ignored

Warning line=497 Environment <align*> ignored. Not defined in commands.c

Warning line=498 Command \eqref not found - ignored

Warning line=514 Environment <align> ignored. Not defined in commands.c

Warning line=520 Command \eqref not found - ignored

Warning line=521 Environment <align> ignored. Not defined in commands.c

Warning line=523 Environment <align> ignored. Not defined in commands.c

Warning line=524 Command \eqref not found - ignored

Warning line=524 Command \eqref not found - ignored

Warning line=525 Command \eqref not found - ignored

Warning line=536 Command \eqref not found - ignored

Warning line=536 Command \eqref not found - ignored

Warning line=537 Command \hspace* ignored

Error! line=677 \begin{align} found before \begin{document}. Giving up. Sorry


Warning line=677 Mismatched '{' in RTF file, Conversion may cause problems.

Warning line=677 Try translating with 'latex2rtf -Z1 List-short4.tex'

林 正人 への返信

Re: detexの利用

- 和田 勇 の投稿
latex2rtf は latex の全てを理解しているわけではないのでそれを理解して利用してください。

さて、\documentclass{IEEEtran} で始まるものをコンパイルしようとしたのかしら?

ソースプログラムを見るとサポートしているのは book report letter article slides apa だけのようです。オプションを指定すると通らないケースも有るようです。

\documentclass[9pt]{article} .... 9pt なんて知らないと怒られます


その後の警告メッセージは preamble 部分で latex2rtf には想定外のものなのでしょう。

今回の検証は  http://wfiot2018.iot.ieee.org/files/2017/07/IEEEtran_HOWTO.pdf 
と https://okumuralab.org/tex/mod/forum/post.php?edit=15264 
をちら見して作成したものです。コンパイルエラー原因が不明な場合は以下のソースに追加してエラーが出る状態にして質問されると良いと思います。

\documentclass[9pt,technote]{IEEEtran}
\usepackage[T1]{fontenc} % optional
\usepackage{amsmath}
\usepackage[cmintegrals]{newtxmath}
\begin{document}

\[
\frac{\pi}{2} =
\left( \int_{0}^{\infty} \frac{\sin x}{\sqrt{x}} dx \right)^2 =
\sum_{k=0}^{\infty} \frac{(2k)!}{2^{2k}(k!)^2} \frac{1}{2k+1} =
\prod_{k=1}^{\infty} \frac{4k^2}{4k^2 - 1}
\]


さんぷる
\end{document}

追伸 pandoc はとても便利なドキュメント変換アプリケーションです。インストール権限をお持ちなら導入されることをおすすめします。ちなみに pandoc もlatex を全て知っているか不明ですが少なくとも上記サンプルは通ります。またdocx 化したときは数式は削除されません。
和田 勇 への返信

Re: detexの利用

- 林 正人 の投稿
有難うございます。
pandoc はまだ試していません.時間のある時に行おうと思います。

実は、latex2rtf が通った他の2つのファイルも,IEEEtran.cls ではじまるものです.
latex2rtf は,知らないコマンドがあっても,igonred して,コンパイルを進めるようです.
実は,英文法チェックのサイトではword 形式を受け付けますが,最終的にテキストに変換して処理します.
そのときに欲しいのは数式のないもの(できれば,数式がある特定の文字に置き換わっているもの)です.
したがって,数式が削除されないというのは,私にとってはあまり利点ではありません.
latex2rtfが通らなったファイルも、途中までうまくいっていたようで,途中でおかしくなっています。しかも,エラーの行表示があるのですが,どうやら生成された rtf ファイルでの行表示で,しかも,rtf ファイルはきちんと生成されていないので,開けないという状況です.
したがって,エラーの箇所の行が表示されていますが,全く意味がありません.
結局,latex2rtfが通らなったファイルと通ったファイルとの違いも良くわからない状況です.