Latexmkとevinceでvim-latexを使用すると、テキストが壊れます(GLib-GObject-CRITICAL)。

Latexmkとevinceでvim-latexを使用すると、テキストが壊れます(GLib-GObject-CRITICAL)。

\llvim-latex プラグインを使用して vim で Latex ファイルをコンパイルすると、latexmkvim 端末のテキスト内容が次のエラーメッセージで埋められます.

(evince:10013): GLib-GObject-CRITICAL **: g_object_unref: assertion 'G_IS_OBJECT (object)' failed

evinceがログ出力をvimウィンドウに捨てるようです。どういうわけかこれを防ぐことができますか?

解決済み @maxschlepzigのおかげでこれをlet g:Tex_ViewRule_pdf = "evince 2>/dev/null"私に~/.vimrc

ベストアンサー1

この情報は明らかな場所から来ます。 evinceがPDFファイルの変更を検出し、ファイルを再読み込みするとリリースされます。

stderrevinceをリダイレクトしてこの問題を解決できます/dev/null。つまり、evince呼び出しのvim-latexプラグインソースを検索し、同様のエントリを置き換えることができます。

evince <OPTS> <INPUT>

そして:

evince <OPTS> <INPUT> 2>/dev/null

PATHあるいは、vim-latexプラグインを使用してvimを実行するときに小さなラッパースクリプトを配置することもできます。たとえば、次のようになります。

$ mkdir -p ~/local/bin
$ cat ~/local/bin/evince
#!/bin/sh
exec /usr/bin/evince "$@" 2>/dev/null
$ chmod 755 ~/local/bin/evince
$ PATH=$HOME/local/bin:$PATH vim some_latex_file

おすすめ記事