org-mode

Real-time document (pdf) preview in org-mode

いやーなんと2020年7月以来約2年ぶりの記事である.本業多忙でしばらく放置していると,ブログの書き方まで忘れてしまいすっかり億劫になり,今回この夏休みにようやく取り掛かる決心がついた.まずはリハビリも兼ねて軽めの記事を書く事にした.以前の記事(Emacsのorg-modeで論文を書く(その1:pdfとhtmlへの出力))でorg-modeで文書を書いてpdfにexportする方法をまとめた.ただ,exportする際にC-c C-e l oと打ってcompileされるのを待つのが結構面倒なのである.この部分を自動化する方法,つまり,org-mode文書を保存すれば何もしなくても自動的にpdfが更新されるようになる設定を見つけたので,それについてまとめてみた.

How to embed presentation slides created by reveal.js and org-mode (org-reveal) in web page.

前回までの2回でプレゼンテーション用スライドをorg-revealを介してreveal.jsで作成する方法を説明してきた.今回は,作成したスライドをwebで公開したり,web pageにそのスライドを埋め込む方法を紹介する.

How to create presentation slides by reveal.js and org-mode (org-reveal) Part2

コロナ肺炎(COVID-19)について COVID-19に対する緊急事態宣言が5月末まで延長されることになった.現状を鑑みればやむを得ない判断であろう.今回の会見で,ようやくPCR検査が少ないことを認めた.山中伸弥による新型コロナウイルス情報発信から辿れるTesting coverageに行けば,PCR検査の国別の比較の最新データを見ることができる.冒頭の写真はいつものお気楽な観光写真ではなく,このサイトからのグラフである.一目瞭然ではあるが,既にこれまでも報道されてきた通り,日本のPCR検査数は圧倒的に少ない.「途上国並み」と揶揄する報道もあったが,それでは多くの途上国に失礼になるような数字である.グラフは1000人あたりのPCR検査数を示しており,アイスランドの147.8人(人口の15%!)は別格として,いわゆる先進国は2桁以上である.トルコ,韓国も12ー13,台湾 2.71,ベトナム 2.68などに対して, 日本は1.46 である. PCR検査が少ないことを認めたわけなので,今後は一刻も早く増やしてもらいたい.脳卒中,心筋梗塞,外傷などの救急治療や癌の手術などは延期することは困難であり,救急に携わる医療スタッフ,救急医,麻酔科医,外科医,手術室スタッフなどは高い感染リスクに晒されている.特に,全身麻酔の際に気管内挿管を行う麻酔科医はエアロゾルを直接浴びることになる.基本的に通常の手術の前でも,B型肝炎,C型肝炎,梅毒,HIVなどの感染症をルーチンに調べる.緊急手術か定期手術かにかかわらず,術前検査にCOVID-19のPCRを加えることは医療崩壊を防ぐためにも必須であろう.僅かではあるが,既にそうしている病院もある.中国からの報告によれば,COVID-19 の確定患者の29%は医療従事者であり,12%は入院患者,即ち,合計41%が院内感染であることを肝に銘じる必要がある(JAMA. 2020 Feb 7. doi: 10.1001/jama.2020.1585). さて,今回はコロナ肺炎の話で始まってしまったが,ここからの内容は前回のreveal.jsによるスライド作成に関する追加である.弄っているうちに多少装飾もできるようになってきたので報告する.ほとんどは,Cascading Style Sheets (CSS)に関することになるので,分かってる人には不要な話かも...😅

How to create presentation slides by reveal.js and org-mode (org-reveal)

このブログを始めた頃にLaTeXを用いたスライド作成について一連の記事(beamerでスライド原稿用pdfを作成する(その1)など)にまとめた.しかし,10年以上もこの方法を使ってきて,少々飽きてきたと言うのが正直な感想である.そんな時に気になっていたのが, reveal.js である.今回は,思いきってreveal.jsによるスライド作成に挑んでみたので,その顛末をまとめておく.私にはhtmlやjavascriptはさっぱりなので,例によってorg-modeを介しての作成となった.

Org-rifle

学会続きで,久方ぶりの更新である.org fileの中を検索する際に,Swiper, ivy, avy, migemoによるEmacsの検索強化で取り上げた swiper を,もっぱら使用しているのだが,そうすると,ファイル内のどこにいるのかが分からなくなることがある.検索ファイルのパスなどがorg fileの中で分かる検索ソフトはないものかと探したところ,このorg-rifleが見つかった.

How to update hugo and academic theme (Part3)

先日,ブログのアップデートについて2回に分けてまとめたが(How to update hugo and academic theme (Part1), How to update hugo and academic theme (Part2)),読み直してみるとhugoとacademic themeの全体的なアップデートのことで終わっていて,具体的な内容のアップデートについてはあまり書いていないことに気がついた.そこで,今回はその辺の細かいところについて,後日の自分のためにも,まとめておくことにした.今回の内容に関しては,ox-hugoのレベル,つまり,org-mode file ではどうすれば良いのか分からず,直接マークダウンファイルを弄らざるを得ない事が多かった.

How to update hugo and academic theme (Part2)

前回(How to update hugo and academic theme (Part 1))にhutoとacademicのアップデートをまとめたが,やはり,githubにdeployするときのエラーが,どうしても気になる.そこで,今回は,Academic themeのインストールを一からやり直すことにした. Hugoとox-hugoのインストールやアップデートは前回の記事(How to update hugo and academic theme (Part 1))を参考にしていただきたい. <!–more–> Table of Contents References Install Academic Kickstart with Git Migrate Content References Install Academicご本家の解説 Update Academicご本家の解説 Install Academic Kickstart with Git やはり,公式ドキュメントに従うのが良いだろうと考え,上記のリンク先のInstallの解説の通りにしてみた.git submoduleを使うので,よく分からんと敬遠していたのだが,やってみると(作業自体は)簡単であった. Git submodule の基礎 によれば,「git submodule は、外部の git リポジトリを、自分の git リポジトリのサブディレクトリとして登録し、特定の commit を参照する仕組み」である. 1. まず,Academic Kickstart repository を自分のウェブサイトを作るためにクローンする. {{% alert note %}} またも間違っていた.上述の公式ドキュメントにはちゃんと,Fork the Academic Kickstart repository to create a new website と書いてあったのに読み過ごしていた. {{% /alert %}} ということで,まず,academic-kickstart に行って,右上の Fork ボタンを押して,自分のgithub pageにacademic-kickstartのrepositoryを作成する. ついで,この自分のgithub pageのforkをgit cloneで自分のサイトにクローンする. $ pwd /Data/MyBlog $ git clone https://github.

How to update hugo and academic theme (Part 1)

最近のニュースを見ていて思い出した言葉がある. “True patriotism hates injustice in its own land more than anywhere else.” ― Clarence Darrow “Patriotism is the last refuge of a scoundrel.” ― Samuel Johnson “Violence is the last refuge of the incompetent.”” ― Salvor Hardin ( Isaac Asimov) 3番目はオマケ 閑話休題,以前の記事(How to add horizontal scrollbar for codeblock in academic theme of hugo)で触れたように,このブログは,Hugoという静的サイトジェネレーター(themeはacademic)で作成している.

Emacsでpdfを読む (pdf-tools) (2019.07.17追記)

Emacsでpdf文書を読もうとするとdefaultではDocViewで読むことになるが,解像度がイマイチで動きもややモッサリとしていて使い勝手が悪かったため,サクッと止めて,skimを使っている.ただ,pdf-toolsというのがあって,こちらは割とスグレモノらしいとの噂は聞いていた.そこで,今回はこれを試してみることにした.

peep-diredで画像をチラ見して,orgファイルに簡単にリンクを貼り付ける(おまけ:最近開けたdirectoryを一覧表示する方法)

最近Rネタばかり書いていたが,今回は久しぶりのEmacsネタである.org-modeで文書を書いているときに画像を貼り付けたいことがある.そのためには画像ファイルの名前とパスが必要となる.要するに毎回画像ファイルのパスを調べて/hoge/fuga/hogefuga/hugo.jpgというようなことをタイプしなければならず面倒である.そこで,peep-diredの出番である.peep-diredとは,diredでファイルにカーソルを持っていくと中身が見える,すなわち,画像ファイルなら画像が見え,テキストファイルならテキストが読めるというminor modeである.これが画像リンクの貼り付けに便利なのでまとめておく. Table of Contents References peep-diredのインストールと設定 peep-diredの使い方 bjm/ivy-dired-recent-dirs - 最近開けたdirectoryを一覧表示する方法(おまけ) References peep-dired QUICKLY PREVIEW IMAGES AND OTHER FILES WITH PEEP-DIRED peep-diredのインストールと設定 例によって,use-packagを用いて以下のように,init.orgに書けばよい. #+begin_src emacs-lisp (use-package peep-dired :ensure t :defer t ; don't access `dired-mode-map' until `peep-dired' is loaded :bind (:map dired-mode-map ("P" . peep-dired))) #+end_src 設定は上記参照サイトのパクリで,diredで"P"を打つとpeep-dired modeとなってdiredのリストの画像ファイルが見られるようになり,もう一度"P"と打つとpeep-dired modeは終了する. peep-diredの使い方 File viewerとしてだけなら,どうということはないのだが,org-modeと組み合わせて使うと便利さが増す.たとえば,下図のように画像をおいているdirectoryをdiredで開いて"P"を打ってpeep-dired modeに入り,画像を確かめながら文書に挿入する画像を決める.上段のdiredのバッファにおいてIMG_1996.jpgにカーソルがあり,下段のバッファにその画像が表示されている.画像が決まったらその画像ファイルにカーソルが合っていることを確認した上で,C-c lを打つ.これで,画像へのリンクがフルパスも含めてコピーされる. ついで,org-mode文書内の画像を挿入したいところにカーソルを持って行き,そこで,C-c C-lとすると,下部に新たなorg-insert-linkのウィンドウが開いて下図のように先程コピーしたリンクが一番上にフルパスでハイライトされて表示される.ここでリターンすればフルパスのリンクがorg-mode文書内に挿入される. 文章で説明すると複雑だが,実際にやってみると実に簡単で有用である.このやり方に気がつくまでは,いちいちフルパスを手入力したり,コピペしたりしていたが,その必要がなくなり非常に楽になった. bjm/ivy-dired-recent-dirs - 最近開けたdirectoryを一覧表示する方法(おまけ) diredでdirectoryを開けるときにその名前を入力する必要があるが,これが結構面倒である.特に深いところにあるファイルはフルパスを書くのが大変である.どうせ,同じファイルに何回も行くことが多いので,「最近訪れたdirectoryの履歴」みたいなのが一覧表示されると嬉しい.まさに,こんなのぞみにピッタリのものが,bjm/ivy-dired-recent-dirsである.これについては,以前に書いたのでそちらを参考にしていただきたい.というか,以前に書いた事自体を忘れていたので,自分への戒めとして記録しておく...(^^;;; Ref: 最近開いたディレクトリを開く