経験知ロゴ

VimRepressを導入して出るエラーと個人的対応策

※本ページはプロモーションが含まれています

Vimrepress

Vimで書いた記事をそのままWordPressへ投稿してくれるプラグイン、VimRepress。

とても便利なのですが、2012年から更新されていないので、2016年11月現在のVim8.0の環境で動かないコマンドがちらほらあります。

少しの修正で僕が欲しい機能は使えるようになったので、それまでに出たエラーの対処法を紹介します。

Vim8.0splhack/macvim-kaoriya: MacVim-KaoriYaを使い、VimRepressはpentie/VimRepressのバージョン3.2.0を使っています。

BlogOpenのエラー

vim-scripts/VimRepressで「BlogOpen」を行うとエラーが出る。

vim.error: Vim(echoerr):something wrong: Vim:E121: 未定義の変数です: VIMPRESS

VimPress時代の「VIMPRESS」が残ってしまっているのが原因。

pentie/VimRepressは変数とか細かいバグを修正してくれている。カラースキームも設定してくれているみたい。

Vim7.3では問題なく開けるが、7.4や8.0だとエラーが出る。

vim.eror: Vim(echoerr):something wrong: Vim(echoerr):Invalid Index: 1

下記ファイルを開き、

~/.vim/bundle/VimRepress/plugin/vimrepress.py

下記部分の「blog_index = 1」を「blog_index = 0」にしてあげるとエラーが出なくなった。

@exception_check
def blog_guess_open(what):
    """
    Tries several methods to get the post id from different user inputs, such as args, url, postid etc.
    """
    post_id = ''
    blog_index = -1
    if type(what) is str:

        if what.startswith(g_data.blog_url):
            blog_index = 1

BlogSaveのエラー

vim.error: Vim(echoerr):The package python-markdown is required and is either not present or not properly installed.

python-markdownがインストールされていないって怒られた。

「EditFormat」がMarkdownに指定されているので、送信時に「python-markdown」がないと怒られた。

"EditFormat : Markdown

Markdownで書く予定はないので、「EditFormat」を「HTML」に変更したら問題なく送信できた。

"EditFormat : HTML

デフォルトで「EditFormat」になっていて、いちいち「HTMl」へ戻すのが面倒なので、下記ファイルを開き、

~/.vim/bundle/VimRepress/plugin/vimrepress.py

下記部分の「Markdown」を「HTML」へ変更すればデフォルトでHTMLになる。

def fill_buffer(self):
        meta = dict(strid="", title="", slug="",
                cats="", tags="", editformat="Markdown", edittype="")
         #Use Markdown text if exists in custom fields
        for field in struct["custom_fields"]:
            if field["key"] == G.CUSTOM_FIELD_KEY:
                meta['editformat'] = "Markdown"

新しいタブで開くようにする

BlogNewやBlogOpenで記事作成画面を開くと、既存のウィンドウが上下分割されて開かれます。

記事を書くなら画面を大きく使いたいので、新しいタブで開くようにしました。

下記ファイルを開き、

~/.vim/bundle/VimRepress/plugin/vimrepress.py

615行目付近の「:new」を、

   vim.command(":new")

「:tabe」に変更します。

   vim.command(":new")

これで新規記事作成や記事編集時に画面分割でなく、新しいタブで開くようになります。

おわりに

バージョンアップがされていないので使い続ける不安がありますが、Pythonを使えればなんとかなりそうです。

Pythonも勉強すれば自分がやりたいこともできそうなので、快適なWordPress環境構築のため勉強しないとな〜

役に立ったらこの記事のシェアをお願いします

ブログのフォロー・RSS購読は下記ボタンから