6
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

vim でエロ漫画を読む

Last updated at Posted at 2022-01-29

#注意
ふざけた内容です。
試す際には自己責任でお願いします。

対象者

windows terminal上のvimでネットサーフィンからプログラミングまでやってるような奇特な方

……どういうことなの?

そのまんまの意味です。
みなさん、vimでエロ漫画を読みたくなることってありませんか?
ありますよね?
そう、あるんですよ!

というわけで、外部ツールとちょっとしたコードでvimに画像表示機能を付けようというのがこの記事の趣旨です(それも、ANSIエスケープシーケンスのみで)。

作業内容

外部ツールの導入

画像をANSIエスケープシーケンスで表示するためのプログラムを導入します。
何でも構いませんが、今回はimgcatを使用します。
https://github.com/danielgatis/imgcat
を参考にインストールします。

vimrc の編集

vimrcに以下を追記します。

augroup ImgOpener
    autocmd!
    if executable('imgcat')
        func! ImgDriver(filename, buftype)
            let l:img_to_open = ''
            if a:buftype==''
                setlocal nobuflisted
                if exists('b:netrw_tmpfile')
                    let l:img_to_open = fnamemodify(b:netrw_tmpfile, ":r").'.'.fnamemodify(a:filename, ":e")
                else
                    let l:img_to_open = a:filename
                endif
                exe "terminal ++curwin imgcat ".shellescape(l:img_to_open)
                setlocal buftype=nowrite
                setlocal buflisted
                setlocal hidden
            endif
        endfunc
        autocmd BufEnter *.jpg,*.png,*.gif,*.tiff,*.jfif,*.bmp :call ImgDriver(@%, &buftype)
    endif
augroup END

再起動したvimで適当な画像ファイルを開くと、画面上に画像がちゃんと表示されるはずです。image.png

いかがでしたか?
多少不便なのは否めませんが、vimからエロ漫画(画像)が閲覧可能であることがお分かりいただけたことと思います。
ではまた。

参考

余談

sixelが恋しい。

6
5
0

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
6
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?