niszetの日記

細かい情報を載せていくブログ

(Pandoc)出力ファイルのチェックをするならテストに使っているファイルを使うのが一番。

そらそうだ。 PandocもCI使ってテストをしています。手元でもstack testとかでテストできますけどね。 この際に使っているファイルがコレ。native形式で書かれているので、native parserがしくじってなければ、コレが一番Readerに依存しない形ですね。賢い。…

(Pandoc) VerbatimChar文字スタイルはスタイル一覧に表示されないが、これはSourceCode段落スタイルのリンクスタイルなのであった。

linkスタイル死すべし慈悲はない 以前からPandocのdocxのスタイルについて調べていましたが、最近はHaskellのコードも読んでいるので以前よりもさらにわかってきました。 以前… niszet.hatenablog.com いつかちゃんとまとめたいですね…。 でもそれは大変なの…

(Pandoc)OpenDocument形式出力でsyntax highlightingを(ただしインラインCodeかつODTではない)

簡単とは思っていなかったけどやっぱり大変…。 ODT形式の出力はシンタックスハイライトに対応できていません。そのため、これに対応するべくPandocの修正を試みています。 とりあえずissue建てた。 github.com PRを1個出していて、これはOpenDocument形式で…

(Pandoc)Docx/ODT Writer中の文字コードの確認処理

時間を無駄に溶かしたのでメモをする。 はじめにPandocじゃない話を書いておくと、Rは"\uxxxx"でunicode文字を入れることが出来る。"\u2603"とかやれば☃だ。大文字のUを使えば、4桁で済まない文字も入れられるし、上4つを0で詰めておけば先と等価な文字コー…

(Pandoc)Span記法を使うとdocx出力にコメントを残すことが出来る

誰得だよ… マニュアルの何処にも書いてないと思いますが、docxに出力するときにSpanに特定のclassを与えることでWordのコメント機能を使えるということに気づきました。 入力にこんな感じの文を与えてdocxに変換します。 aaa[bbb]{.comment-start}ccc[ddd]{.…

(Pandoc)ODT出力にtoc-depthが設定できるようにしました

修正は2行だけ Pandocの、ODT形式での出力をdocx形式での出力と同程度のコトが出来るようにしたく、調査等をしています。 とりあえず手が付けられそうなtoc-depthの修正を試みました。 修正自体は2行だけなのですが、PR出すのは初めてなので色々手間取りまし…

(Pandoc) 各ファイルの役割はCONTRIBUTINGの中に簡単な説明があった…(メモ)

見落としていた… ODT Writerに関するPRを投げるために、CONTRIBUTINGのページを見ていたのですが、そこの最後の方にPandoc のソースコードの各ファイルについて簡単な説明が書いてありました。 pandoc.org 最初に概観するときに知っておきたかった…。 まぁ今…

(Pandoc) MS Word (docx) 出力でも --number-sections オプションに対応している(メモ)

仕様を追い切れていないが…。 Pandoc 2.10.1 から docx の出力で --number-sections オプションがサポートされました。 これをodtにも入れたいなぁと思ってコードを見ていましたが、Writerにべったり依存なのでコードをかなり追わないといけないなということ…

(Pandoc)複数のdocx/odtを結合する、をWordやLOWの機能でやるべきか…?(メモ)

検討中の話…。 docxはMS Word上で結合できます。リンク形式にする場合は下記のページの説明が分かりやすいです。 www.koikikukan.com これをunzipして見てみると、_relsに実際のファイル名を入れているため、word/document.xml単体では処理できないので、Pan…

(Pandoc)MANUALの更新を追っていけば良いのではという気づき(メモ)

簡単なことだったね(?) Pandocは日々進化しています。自分が使うファイル形式の更新はなくてもそれ以外の形式に対しては後進が入っていたりするので、マニュアルは日々更新されて行きます。 これを、releaseのたびに見ていくと大変なんですが、よくよく考…

(R)captionerパッケージがArchivedになっていたのでForkしておいた(メモ)

R

CRANから落ちてしまったらどうしようかねコレ…。 先日、色々見ていたら気づいたのですが、captionerパッケージがArchivedになっていました。 github.com ので、さっそくFork... github.com このパッケージはRMarkdownでWord文書を作ろうのときに使っていたの…

(R/OOXML)namespaceがないとw:を入れられない…

という気付きが結構前にあったらしい… 下書きのまま放置していたので、忘れてしまわないうちに書く。 stylexパッケージ、docxのstyleをR上で加工しやすくしようと思って作っていたのですが、docxファイルを記述しているOOXMLは、w:nameのようにw:のnamespace…

(R)Localeを英語設定に変更すると日本語を扱うとabortするので注意…(メモ)

R

考えてみれば当たり前なんだけども… こちらの記事とまったく同じモチベーションで、エラーメッセージを英語にして報告したいな、と。 dichika.hateblo.jp で、これを設定すると以降は英語でエラーメッセージが出てきて便利。 Sys.setlocale("LC_CTYPE","Engl…

(Pandoc)PandocのシンタックスハイライトはWriter依存

読み解くの大変っす…。 Pandocのシンタックスハイライトはskylightingが担っています。これはPandoc内に埋め込まれているので、フィルタ等で制御できる奴ではないです。 github.com で、Pandocは特定の出力形式にのみハイライト対応しています。 Currently h…

LibreOfficeのスタイルに関係する資料が分かりやすそうなので収集中…(メモ)

先人に感謝… ODT形式について調べていると、Wordのそれに比べるとすべてがスタイルで作られている、という設計思想が垣間見えるのでLibreOffice関係でスタイル関係の資料がないか検索したところ、いくつか良い資料が見つかったのでここにまとめておきます。…

(Pandoc)ODT形式での出力はraw記法もフォローしているのでやりたいことが大体出来る

ODT出力の場合に出来ることがどこまであるかを全部チェックしていく 他のファイル形式の出力と同様に、PandocでODT形式で出力する場合にも、generic-raw-attributeを使用して出力ファイルに直接文字列を埋め込むようなことが可能です。これは対象のファイル…

(Pandoc)PandocのODT出力はシンタックスハイライト未対応

マニュアルに書いてあるけど実際やってみてダメなのを確認。 docx出力では出来るがODT出力ではできないことのひとつに、シンタックスハイライトの対応があります。ODT出力では未対応。 マニュアルのシンタックスハイライトの箇所、 pandoc.org より引用。対…

(Pandoc)ODT形式は改ページ挿入のためのスタイルの指定が必要。

段々わかってきましたね…。 ODT形式は基本的に全てスタイルでやってしまおうという感じがありますが、改ページも改ページを指定したスタイルを使うことで実現しているようです。 PandocのpagebreakのLuaフィルタを使うことで、改ページを簡単に挿入できるこ…

ODT形式のzipがちょっと特殊なので気を付けること…

根本的な解決をまだしていない…。 LibreOffice6.0のころから、下記のページにあるようにODTファイルをunzipしてzipしなおすとLOWで開けないよ~という話があったようです。 ask.libreoffice.org これは、ドキュメント内のmimetypeというファイルがStoreで他…

PandocのODT形式のTOC出力は「目次と索引の更新」をしないと中身が空になる

対処法?があるかは確認中ですが…。 docx形式の場合、目次はフィールドコードが入ってます。一部抜粋するとこういうタグが…。 <w:fldChar w:fldCharType="begin" w:dirty="true" /> <w:instrText xml:space="preserve">TOC \o &quot;1-3&quot; \h \z \u</w:instrText> <w:fldChar w:fldCharType="separate" /> <w:fldChar w:fldCharType="end" /> ODT形式の場合は全てがstyleになっているようです。値はひょっ…</w:fldchar></w:fldchar></w:fldchar>

9月の目標

先月は読書量は増えたが、手を動かす時間が減っていたので今月は手を動かす方を重視したい。 今月は忘れずに目標を立てる。 技術同人誌 ODTについて書く。RMarkdownでODTを作ろう、かな? docxについて書く。スタイルを設定して書く、という話。 Rのパッケー…

(Haskell)Pandocコード読み: make-reference-files.hs

とりあえずわかるところを増やしていく。 今日読んでいるのはコレ。 github.com コレはreference.docxなどのテンプレート(正確にはtemplateは別にあるので、referenceと呼んだ方が良さそうだが)を作るためのHaskellのコード。 これは単体で実行できる(mai…

いつの間にかrmarkdownでpagebreakのlua filterが使われていたので簡単に紹介する。

各ファイル形式に対応している。 Pandocは、内部的にはファイルを読み込むReaderと書き出すWriterに機能が分けられており、Readerで読んだ文書は内部的にはPandoc's ASTというPandocが扱いやすくするためのデータ構造に一旦データを持ち直します。この中間デ…

8月の振り返り

目標も立てずに…? 8月は目標を立てるのを放置していましたが、結果だけは振り返ります。 今月は暑かったものの、先月に比べればやりやすかった。低気圧による頭痛がなかったので。 今月は自分の身の回りのことを結構やらねばならなかったのであまり本を読ん…

Pandoc 2.10からODT形式の出力でもcustom-styleが使用可能になっていた!

タイトルで言い切ったとおりです。 すっかり見逃していましたが、Pandoc 2.10から(現最新バージョンは2.10.1)docx形式と同様に、odt形式でもcustom-styleの使用が可能となりました。 以下リリースノートからの引用。 OpenDocument (and ODT) writer: Add c…

RMarkdownでODT形式で出力してもRStudioはMS Wordで開こうとしてくる…

どういうことなの…? RStudioはKnit後に出力されたファイルを自動で開いてくれます。コレは確かに便利なんですが、開いてほしくないときもアリ、これは制御できるようにしてほしいなぁと思う点ではあります。 さて、掲題の件です。問題は、odt_documentで生…

RStudioでもodt形式のファイルが出力できる(メモ)

新規作成時の画面には出てこないので自分で書きかえる必要がある点に注意 ちょっとODT(OpenDocument)形式について調べていて、RStudio上から出来たら便利なのになぁ…ないなら作るかぁ…と思ってちょっと調べたらrmarkdownパッケージに含まれていたのでその…

今年は日傘とサングラス装備したら少し楽だった

マスクも装備しているので完全に不審者 割と浸透しつつある気もしますが、今年は長雨からの急に本気の夏の天気となって体が追い付かなかったため、日傘とサングラスを購入して装備していました。 どちらもAmazonで2000円くらいのものなので、すごい性能が良…

(R)connpassのAPIを使って、過去自分が履修したセミナーの一覧をチェックする

R

書きなぐりメモ… 最近は時間があるので色々と受講しているのですが、タイミングがあって気になったものを気ままに受けていたので、どれを受けて受けてないのかが分からなくなってしまったので、じゃあRで確認するか…というのがモチベーションです。 というこ…

(Pandoc)BulletListの探索順序(メモ)

Lua filter特有かもしれないが… Lua filterでBulletListの処理順序を確認するために、下記のようなコードを書いた。 function BulletList(el) print(pandoc.utils.stringify(el)) end 子要素が全部潰されて1つの文字列になってしまうが、そこは目をつぶると…