You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Lunarvim中fortls语言服务无法正常运行求助

Fortls LSP 在 LunarVim 中显示“Inactive”的排查思路

  • 手动验证 fortls 可执行性
    直接在终端运行 fortls,观察是否有报错输出:

    • 如果运行失败,说明是 fortls 本身的安装或依赖问题,比如 Ubuntu 20.04 自带的 Python 3.8 与部分 fortls 版本存在兼容冲突,可尝试手动通过 pip install fortls==2.12.0 安装,留意终端的依赖缺失提示(如 pygments 等依赖未安装)。
    • 确认 ~/.local/share/lvim/mason/bin/fortls 文件存在,且有执行权限(执行 chmod +x ~/.local/share/lvim/mason/bin/fortls 确保权限)。
  • 查看 LSP 启动日志
    在 LunarVim 中执行 :LspLog 直接查看日志,或打开本地日志文件 ~/.local/state/lvim/lsp.log,搜索 fortls 相关条目:

    • 重点关注 [ERROR] 或 [WARN] 级别的信息,比如是否存在“找不到可执行文件”“配置参数错误”“权限不足”等明确报错。
  • 检查 LSP 健康状态
    执行 :checkhealth lsp,查看 fortls 模块的检查结果:

    • 确认日志中显示“Found executable”且路径正确,若提示“Not found”,说明 LunarVim 未正确识别到 fortls 的安装路径。
  • 确认 LSP 配置未被跳过
    打开 ~/.config/lvim/config.lua,检查是否将 fortls 加入了自动配置跳过列表:

    • 确保配置中存在如下代码,移除 fortls 的跳过标记:
      lvim.lsp.automatic_configuration.skipped_servers = vim.tbl_filter(function(server)
        return server ~= "fortls"
      end, lvim.lsp.automatic_configuration.skipped_servers)
      
    • 也可手动指定 fortls 路径强制启动:
      require("lvim.lsp.manager").setup("fortls", {
        cmd = { "~/.local/share/lvim/mason/bin/fortls" },
        filetypes = { "fortran" },
      })
      
  • 验证 Fortran 文件类型关联
    打开一个 Fortran 文件(如 .f90、.f),执行 :set filetype?,确认输出为 fortran:

    • 如果文件类型识别错误,LSP 不会触发启动,可手动添加关联规则到 config.lua:
      vim.filetype.add({
        extension = {
          f90 = "fortran",
          f = "fortran",
          f77 = "fortran",
        },
      })
      
  • 排查 Python 环境冲突
    查看 fortls 可执行文件的 shebang 行:head -n1 ~/.local/share/lvim/mason/bin/fortls,确认指定的 Python 路径在系统中存在且正常:

    • Ubuntu 20.04 的系统 Python 环境可能与 Mason 安装的 fortls 存在依赖冲突,可尝试在 LunarVim 中指定 Python 环境路径,或手动补全对应环境的依赖包。

内容的提问来源于stack exchange,提问作者fpl

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 04:56:08