Sublime Text如何配置Fortran环境_Sublime Text科学计算高亮设置【科研】

陌雪姑娘_5670

陌雪姑娘_5670

2026-05-15

754人浏览

原创

sublime text无法识别fortran文件是因语法包未安装、构建系统selector不匹配及gfortran未被正确继承环境变量;需装官方fortran包、手动设语法为fortranfreeform、配置含file_regex的构建系统并彻底重启。

sublime text如何配置fortran环境_sublime text科学计算高亮设置【科研】

Sublime Text 本身不识别 .f90 或 .f 文件,也不会自动调用 gfortran;你看到的“没高亮”“Ctrl+B 没反应”“错误不跳转”,基本都卡在这三步:语法包没装对、构建系统 selector 不匹配、gfortran 没被 Sublime 真正继承到环境变量里。

Fortran 语法高亮为什么不起作用

不是插件没装,是 Sublime 根本没把当前文件当成 Fortran 来处理。默认打开 .f90 就是 Plain Text,所有后续功能(缩进、关键词变色、补全提示)全失效。

  • 必须先通过 Package Control 安装官方 Fortran 包(作者是 sublimelsp,别选错成 Modern Fortran 或带 Auto-Compile 的第三方包)
  • 装完后,打开一个 .f90 文件 → 右下角点击当前语法名(如 Plain Text)→ 选 Fortran > FortranFreeForm
  • 想一劳永逸:按 Ctrl+Shift+P → 输入 Set Syntax: Fortran → 回车,它会自动把所有 .f90 关联过去
  • .f(固定格式)文件要单独处理:菜单栏 View → Syntax → Open all with current extension as… → Fortran Fixed Format

gfortran 编译命令怎么写进 Build System

Sublime 的构建系统是纯 JSON 驱动,不能直接套 C/C++ 模板,也不能只写 gfortran main.f90 —— 那样出错时 Sublime 压根不知道哪行错了,更没法双击跳转。

玄鲸Timeline
玄鲸Timeline

一款AI办公效率工具,主要用于一个AI驱动的历史时间线生成平台,适合需要提升相关任务效率的用户。

下载
  • 新建 Tools → Build System → New Build System,填入以下内容并保存为 Fortran.sublime-build:
{
  "cmd": ["gfortran", "-Wall", "-Wextra", "-o", "${file_base_name}", "${file}"],
  "file_regex": "^(..[^:]*):([0-9]+):([0-9]+):? ?(.*)$",
  "working_dir": "${file_path}",
  "selector": "source.fortran"
}
  • cmd 中加 -Wall -Wextra 是关键,否则隐式类型声明等常见科研代码问题不会报错
  • file_regex 必须严格匹配 gfortran 默认输出格式,例如 main.f90:12:5: Error: Unclassifiable statement
  • Windows 用户要把 gfortran 换成完整路径,如 ["C:\msys64\mingw64\bin\gfortran.exe", ...],注意双反斜杠
  • macOS/Linux 用户若用 Homebrew 安装,gfortran 通常在 /opt/homebrew/bin/gfortran(Apple Silicon)或 /usr/local/bin/gfortran(Intel),但 GUI 启动的 Sublime 不读 shell 配置文件
  • 为什么 Ctrl+B 按了没反应或报 “command not found”

    这不是配置写错了,是 Sublime 启动时根本没加载到 gfortran 所在路径 —— 终端里能跑 gfortran --version,不等于 Sublime 就能看见。

    • macOS:不要从 Dock 或 Spotlight 启动 Sublime;改用终端执行 env PATH="/opt/homebrew/bin:$PATH" subl
    • Linux:如果用 snap 安装的 Sublime,它被沙盒隔离,PATH 再全也没用;换 tarball 或 deb 版本
    • Windows:确认 MinGW-w64 的 bin 目录已加入系统 PATH,且 Sublime 是彻底重启(不是关闭再开)
    • 即使 gfortran 可用,也要检查当前文件右下角是否显示 FortranFreeForm;如果是 Plain Text,selector 再对也白搭
    • 构建系统没手动激活:Tools → Build System → Fortran(选你保存的文件名,不含 .sublime-build 后缀)

    如何让编译后直接运行生成的可执行文件

    Build System 支持 variants,可以加一个 Run 变体,但要注意平台差异和工作目录——否则会提示 No such file or directory。

    • 在上面的 JSON 中追加 variants 字段:
    "variants": [
      {
        "name": "Run",
        "cmd": ["./${file_base_name}"],
        "working_dir": "${file_path}"
      }
    ]
  • macOS/Linux 下命令是 ./${file_base_name},Windows 下得改成:["cmd", "/c", "${file_path}\${file_base_name}.exe"]
  • working_dir 必须显式指定,否则 Sublime 默认在用户主目录下找可执行文件
  • 如果 Fortran 程序依赖外部 .mod 或 .o 文件,需在 cmd 中加 -J./(指定模块搜索路径)或 -I./(头文件路径)
  • 最常被忽略的一点:Sublime 的构建系统不会自动感知你改了 PATH 或重装了 gfortran;每次环境有变动,都要彻底重启 Sublime,而不是关掉再开。另外,file_regex 对 gfortran 4.8+ 有效,老版本可能需要微调正则表达式中的列号捕获组位置。

    相关文章

    PHP速学视频免费教程(入门到精通)
    PHP速学视频免费教程(入门到精通)

    PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

    下载

    相关标签:

    sublime

    本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

    相关专题

    更多
    FrankenPHP集成Laravel详细教程
    FrankenPHP集成Laravel详细教程

    本专题提供FrankenPHP集成Laravel的详细配置指南,全面解析运行原理、开发环境搭建、Caddyfile配置、Octane工作模式、数据库连接、队列任务、定时任务和生产环境优化,解决部署过程中常见的报错与兼容性问题。

    2026.10.08

    0

    20

    LLVM自定义Pass怎么写
    LLVM自定义Pass怎么写

    本专题聚焦LLVM自定义Pass开发,整理Pass类结构、run()方法、PreservedAnalyses、CMake构建、插件注册、-load-pass-plugin加载和测试用例编写流程。

    2026.09.30

    120

    10

    LLVM RISC-V参数配置教程
    LLVM RISC-V参数配置教程

    本专题介绍LLVM对RISC-V基础ISA和扩展的支持方式,涵盖RV32、RV64、标准扩展、实验性扩展、厂商扩展、-menable-experimental-extensions和版本差异。

    2026.09.30

    100

    14

    LLVM IR中间表示入门指南
    LLVM IR中间表示入门指南

    本专题整理LLVM IR的核心概念,包括中间表示作用、模块结构、函数、基本块、SSA形式、类型系统和常见语法,帮助新手理解LLVM编译流程中的关键层。

    2026.09.30

    80

    12

    PDF转图片方法
    PDF转图片方法

    需要把 PDF 页面用于上传、预览、分享或图片归档时,PDF 转图片方法专题整理 JPG/PNG 格式选择、逐页导出、清晰度设置、批量下载和结果检查等流程,帮助用户稳定完成 PDF 图片化处理。

    2026.09.30

    80

    26

    PixTV AI视频生成与无限画布创作
    PixTV AI视频生成与无限画布创作

    PixTV专题整理AI视频与视觉内容创作相关功能使用教程,涵盖AI生图、视频生成、无限画布、多模型创作、素材管理、声音音乐及视频剪辑等功能,帮助用户快速掌握PixTV从创意到成片的完整制作方法。

    2026.09.29

    100

    15

    Buffalo框架数据库开发全教程
    Buffalo框架数据库开发全教程

    本专题围绕Buffalo框架数据库开发,讲解database.yml多环境配置、soda与fizz迁移生成回滚、模型结构体标签、增删改查与条件查询、一对多与多对多关联、数据校验、回调钩子、事务处理及原生SQL执行能力。

    2026.09.23

    300

    15

    Buffalo框架路由与请求处理实操指南
    Buffalo框架路由与请求处理实操指南

    本专题讲解Buffalo框架路由与请求处理机制,涵盖路由注册与分组、资源路由、Handler编写规范、Context上下文方法、参数绑定、中间件编写挂载、Session与Cookie读写、Flash消息及错误页面定制方法。

    2026.09.23

    180

    15

    Buffalo框架零基础入门教程
    Buffalo框架零基础入门教程

    本专题整理Buffalo框架入门内容,涵盖Go环境准备、buffalo CLI安装、新项目生成、目录结构说明、dev热加载启动、数据库连接配置与常见报错排查,帮助新手按约定优于配置的思路跑通第一个Buffalo框架应用。

    2026.09.23

    140

    15

    热门下载

    更多
    网站特效
    /
    网站源码
    /
    网站素材
    /
    前端模板

    精品课程

    更多
    相关推荐
    /
    热门推荐
    /
    最新课程