Vim

將 vim-latex 與 latexmk 和 evince 一起使用會導致文本亂碼(GLib-GObject-CRITICAL)

  • November 11, 2020

當我在 vim 中使用帶有\llusing的 vim-latex 外掛編譯一個乳膠文件時latexmk,我的 vim 終端文本內容中到處都是錯誤消息,如下所示:

(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.

這些消息來自 evince。當 evince 檢測到 PDF 文件更改並重新載入文件時,會發出它們。

您可以通過將stderrevince 重定向到/dev/null. 這意味著您可以在 vim-latex 外掛源中搜尋 evince 呼叫並替換類似

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

引用自:https://unix.stackexchange.com/questions/150372