切换到原生 TeXLive 安装程序后,`latexmk` 在终端中运行,但 neovim 中无法使用`vimtex`

切换到原生 TeXLive 安装程序后,`latexmk` 在终端中运行,但 neovim 中无法使用`vimtex`

vimtex我首先提供一些与 Arch 相关的背景,但有关和的问题仍然存在latexmk

昨天,我尝试在 Arch 上更新我的电脑。我收到了一个错误

installing texlive-core (2023.66587-1) breaks dependency 'texlive-core<2023' required by tllocalmgr

(或者非常类似的东西)。此链接建议我删除tllocalmgr、更新/升级然后重新安装tllocalmgr

但是,这个解决方案不起作用。tllocalmgr不再起作用,而且我在使用latexmk时遇到了困难tlmgr。最后,我删除了 中的所有texlive软件包pacman,清理了所有texlive,然后重新安装了本机的texliveonly perl,这似乎是更可靠的方法(请参阅这里)。 这边走,latexmk 从终端运行

但是我的vimtex集成neovim仍然中断。:checkhealth给出了一个干净的输出,我这样做不是出现“latexmk 不可执行”(好吧,不再可执行)。我可以使用其允许编辑的所有内容(数学区域、环境分隔符、切换分数……),但编译失败且未创建日志文件。MWE:

\documentclass{article}

\begin{document}

Compiling fails.

\end{document}

通过neovim使用vimtex,我只得到.aux一个

\relax 
\gdef \@abspage@last{1}

以及一个.fdb_latexmk文件

# Fdb version 4
["pdflatex"] 1687213270 "test_random.tex" "test_random.pdf" "test_random" 1687213270 2
  (generated)
  "test_random.aux"
  "test_random.log"
  "test_random.pdf"
  (rewritten before read)

作为内容。

从终端latexmk -pdf test_random.tex,我得到了相同的结果.aux,但是.fdb_latexmk读取

# Fdb version 4
["pdflatex"] 1687213361 "test_random.tex" "test_random.pdf" "test_random" 1687213362 0
  "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmr10.pfb" 1248133631 35752 024fb6c41858982481f6968b5fc26508 ""
  "/usr/local/texlive/2023/texmf-dist/tex/latex/base/article.cls" 1686341992 20144 fbcf51733730d8f1a62143512ff5b1fe ""
  "/usr/local/texlive/2023/texmf-dist/tex/latex/base/size10.clo" 1686341992 8448 74078c4a887f2cdcd57c3ec111622740 ""
  "/usr/local/texlive/2023/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def" 1681935207 29940 9473d58112bc8a88f5505b823a053dde ""
  "/usr/local/texlive/2023/texmf-dist/web2c/texmf.cnf" 1681165822 40967 d940221f8762fd5848760382d97d1226 ""
  "/usr/local/texlive/2023/texmf-var/fonts/map/pdftex/updmap/pdftex.map" 1687134019 4643411 5ced174c6d521e21dd58a10751c00482 ""
  "/usr/local/texlive/2023/texmf-var/web2c/pdftex/pdflatex.fmt" 1687134040 7903677 2d412a3b911ee16f5c4df729eb70373f ""
  "/usr/local/texlive/2023/texmf.cnf" 1687134016 455 5b996dcaa0eb4ef14a83b026bc0a008c ""
  "test_random.aux" 1687213362 32 3985256e7290058c681f74d7a3565a19 "pdflatex"
  "test_random.tex" 1687213261 76 405d82d3ea6d1935f53b22157943c78c ""
  (generated)
  "test_random.aux"
  "test_random.log"
  "test_random.pdf"
  (rewritten before read)

我得到了一个.fls.log文件。

我尝试重新安装vimtex,但无济于事。我vimtex.lua使用的配置文件lazyvim

return {
  {
    "lervag/vimtex",
    ft = "tex", -- without ft, it's not working too
    lazy = false,
    config = function()
      vim.g.vimtex_quickfix_enabled = 1
      vim.g.vimtex_syntax_enabled = 1
      vim.g.vimtex_quickfix_mode = 0
      vim.g.tex_flavor = "latex"
      vim.g.tex_conceal = "abdmg"
      vim.g.vimtex_compiler_method = "latexmk"
      vim.g.vimtex_view_method = "zathura"
      vim.g.latex_view_general_viewer = "zathura"
      vim.cmd("call vimtex#init()")
    end,
  },
}

但是我的终端echo $PATH和 neovim 的终端echo $PATH不匹配。我的latexmk位于/usr/local/texlive/2023/bin/x86_64-linux/latexmk,它位于我的终端 PATH 中。我的 neovim PATH 是/home/nora/.local/share/nvim/mason/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/home/nora/.dotnet/tools:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl。这似乎不是问题的根本原因,因为它vimtexlatexmk视为可执行文件(甚至提供了一个.fdb_latexmk文件)。

我没有.latexmkrc文件。

nvim --version输出

NVIM v0.9.1
Build type: Release
LuaJIT 2.1.0-beta3

   system vimrc file: "$VIM/sysinit.vim"
  fall-back for $VIM: "/usr/share/nvim"

:VimtexInfo给出

System info:
  OS: Arch Linux
  Vim version: NVIM v0.9.1
  Has clientserver: true
  Servername: /run/user/1000/nvim.651391.0

VimTeX project: test_random
  base: test_random.tex
  root: /home/nora/Documents/Enseignement/Prepa/2022/figures_generales
  tex: /home/nora/Documents/Enseignement/Prepa/2022/figures_generales/test_random.tex
  main parser: fallback current file
  document class: article
  compiler: latexmk
    engine: -pdf
    options:
      -verbose
      -file-line-error
      -synctex=1
      -interaction=nonstopmode
    callback: 1
    continuous: 1
    executable: latexmk
    job: 
      jobid: 19
      output: /tmp/nvim.nora/CaXhwO/0
      cmd: max_print_line=2000 latexmk -verbose -file-line-error -synctex=1 -interaction=nonstopmode -pdf -pvc -view=none -e '$compiling_cmd = ($compiling_cmd ? $compiling_cmd . " ; " : "") . "echo vimtex_compiler_callback_compiling"' -e '$success_cmd = ($success_cmd ? $success_cmd . " ; " : "") . "echo vimtex_compiler_callback_success"' -e '$failure_cmd = ($failure_cmd ? $failure_cmd . " ; " : "") . "echo vimtex_compiler_callback_failure"' 'test_random.tex'
      pid: 0
  viewer: Zathura
    xwin id: 0
  qf method: LaTeX logfile

感谢您给予我任何帮助!

答案1

.py我在偶然发现另一个使用 neovim ( )启动文件时的错误时发现了这个问题,不幸的是(或者也许是幸运的是)它是一个“愚蠢”的错误:我从同一个实例kpathsea: configuration file texmf.cnf not found in these directories启动我的文件,因此它没有来源。.texranger

从一个新的终端启动解决了所有问题(尽管我仍然必须tllocalmgr事先删除等,在此过程中我重新启动了几次)......好吧,现在vimtexCompilation failed!虽然日志没有说它确实如此并且编译有效,但我宁愿这样。

相关内容