3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

VimAdvent Calendar 2024

Day 18

pdfをあえてvimで読む。その5つのメリットと方法

Last updated at Posted at 2024-12-17

PDFやwordをvimで読めるのか

いや、当然ながら読めるわけがないです。だから後半で無理矢理読むための設定を書きます。これだけだとまわりくどくて何が嬉しいのかわかりませんね?

しかし、これが、実に嬉しいのであります。特に長文の英文だと顕著です。それを共有したく記事を書いているのです。

AI

ほぼ出落ちですが、やはりこれです。

vimはプログラマ向けテキストエディタですから、有志がchatGPTとかを呼べるようにしています。僕もそんなのを作りました。これにより、本文を要約したり和訳したりできるのです。

そもそもの話ですが、PDFはフォーカスがおかしくなって生成AIにコピペしにくいんですよ。それだけでもQOLがあがります。

辞書

毎回AIに聞くまでもない事はよくあります。

vimはプログラマ向けテキストエディタですから、カーソル上の単語について辞書を引くプログラムを書く事ができます。僕もそんなのを作りました。これで、他のソフトで調べながら読む必要がなくなります。

検索エンジン

きっと皆様はおおきな論文はググりながら読みますよね。ウィンドウやタブの切り替えが面倒ではありませんか?

vimはターミナルで動くので、テキストブラウザを動かすことができます。w3m等が有名ですね。例えば、vimにGoogleというコマンドを作ればvim上でほぼ直接検索をかけられるわけです。

以下、僕のvimrcからの抜粋です。

command! -nargs=1 Google call s:terminal('w3m google.com/search\?q=<args>')

これによって、ブラウザのタブをいったりきたりという操作から、全てがキーボードできりかえる操作になります。人によってQOLの上り方はまちまちでしょうか。僕的にはうれしい事です。

w3mは流石にフル機能のブラウザには劣るので、本当に詳しく検索するときにはもちろんブラウザを使います。

マーカーやウィンドウ

地味に効いてくるやつ。

大論文を読む時には、以前に書いてあった所をみなおす必要があります。とてもわずらわしいです。そんな時、マーカーを使えばひとっとびです。ウィンドウを分割すれば同時に別のセクションを読めますね!

正規表現付き検索

大きな論文の中で、単語を検索する時に正規表現ほしくなりませんか?違う表現で同じ事を言っている事が長文ならばありますからね。
vimは手軽に正規表現で検索できます。例えばターミナルとコマンドラインを同じように検索したいとか、ありますよね?
例えばこうです。

/terminal\|commandline

そもそも読めないじゃん?

はい、vimでpdfなんか読めるわけないです。だからテキスト形式に変換するのです。

これをインストールすると、pdftotextコマンドを使えるようになるのです。

その上で、以下は僕のvimrcからの抜粋です。

function! ReadPDF(fname)
  exec $"e {a:fname}.txt"
  let s:command = $'pdftotext - <{a:fname} -'
  if has('nvim')
    call jobstart(s:command,
        \{'on_stdout': {j,d,e->appendbufline(bufname($"{a:fname}.txt"), line('$'), d)}})
  else
    call job_start('sh -c "'.s:command.'"',
          \{'out_cb': function('GotOutput', [bufname($"{a:fname}.txt")])})
  endif
endfunction

command! -nargs=1 -complete=file ReadPDF echo ReadPDF("<args>")

これによって下記コマンドを使えばpdfをテキストに変換して開けます。

ReadPDF [path to pdf]

図を見たいなら、あらかじめ同じツール群のpdftohtmlを使って図を抽出すればいいです。面倒ですって?それは確かにそう。だけれど大論文は図を見せるために2頁めくらせたりしてきますからね、僕は「別のウィンドウに表示した方がマシ」派なんですよ。

ちなみに、MSWORDの場合はwvを使うらしい。僕はあまりMSWORDでの大論文は見たことがないからしてないけれど。

PDFをあえてvimで読む?えっ?

むしろ僕はこの読み方のメリットを享受したり、この方法に慣れてしまって、何故「PDFをあえてvim以外で読むのか」が分らなくなってしまいました…。あれっ?頭が…

3
2
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?