Sublime Text配置Fortran科学计算_Sublime Text数值计算环境高亮【科研】

阿芳吖_2457

阿芳吖_2457

2026-06-01

494人浏览

原创

sublime text 默认不识别 fortran 文件,需手动关联语法、配置构建系统、补充配色规则并理解其功能边界。

sublime text配置fortran科学计算_sublime text数值计算环境高亮【科研】

Sublime Text 默认完全不认 Fortran 文件,.f90 打开就是 Plain Text——高亮、缩进、编译、跳错全失效,不是你漏步骤,是它压根没加载语法识别层。

Fortran 语法包装了但还是 Plain Text?检查 selector 和文件后缀是否对得上

装完官方 Fortran 包(作者 sublimelsp)只是第一步。Sublime 不会自动把 .f90 关联到 Fortran 语法,必须手动触发:

  • 打开任意 .f90 文件 → 点右下角语言名(如 Plain Text)→ 选 Fortran > FortranFreeForm
  • 若菜单里没有 Fortran 项,按 Ctrl+Shift+P 输入 Reload Syntax Definitions 刷新;仍无效说明包没装成功或被其他插件屏蔽
  • 想一劳永逸:选好 FortranFreeForm 后,再按 Ctrl+Shift+P 输入 Set Syntax: FortranFreeForm → 选 Open all with current extension as…,这样所有 .f90 文件下次打开就自动匹配
  • .f(固定格式)文件必须单独处理:右下角选 Fortran > FortranFixedForm,再用同法绑定后缀,否则注释 c 行、续行 & 都无法识别

Ctrl+B 没反应或报 “No build system”?构建系统里的 selector 必须是 source.fortran

高亮有了,但按下 Ctrl+B 没输出、状态栏一闪消失,大概率是构建系统没激活,或者 selector 和当前文件实际语法 scope 不匹配。

魔搭GPT(ModelScopeGPT)
魔搭GPT(ModelScopeGPT)

魔搭GPT(ModelScopeGPT)是一款AI视频创作工具,阿里达摩院推出的大小模型协同的智能助手,具备作诗、绘画、视频生成、语音播放等多模态能力。

下载
  • 新建构建系统:Tools → Build System → New Build System,粘贴以下内容并保存为 Fortran.sublime-build:
{
  "shell_cmd": "gfortran -Wall -Wextra -J./ -c $file_name && gfortran -o ${file_base_name} $file_name",
  "file_regex": "^(..[^:]*):([0-9]+):([0-9]+):? ?(.*)$",
  "working_dir": "$file_path",
  "selector": "source.fortran"
}
  • "selector": "source.fortran" 是硬性要求——它必须和你在右下角选的 FortranFreeForm 对应的 scope 完全一致;写成 source.f90 或 source.fortran90 都会失败
  • 确认终端中能运行 gfortran --version;Windows 用户若用 MinGW-w64,建议把 ucrt64\bin 加进系统环境变量,别在 shell_cmd 里硬写绝对路径(路径含空格或反斜杠极易崩)
  • file_regex 必须匹配 gfortran 默认错误格式,例如 main.f90:12:5: Error: Unclassifiable statement;加了 -fbacktrace 或换用 ifort 就得重调正则
  • 关键字不变色、注释灰成一片?配色方案缺 Fortran 专属 scope 规则

    语法包只负责切分 token(比如把 program 标为 keyword.control.fortran),最终颜色由当前 .sublime-color-scheme 决定。多数主题根本不定义 fortran 相关 scope,直接回落到通用色。

    • 按 Ctrl+Shift+P 输入 Inspect Scope,把光标停在 program 或 ! 上,看输出的完整 scope 链,例如 keyword.control.fortran 或 comment.line.exclamation.fortran
    • 查当前配色方案名:Preferences → Color Scheme;再用 PackageResourceViewer: Open Resource 找到对应 .sublime-color-scheme 文件
    • 在 "rules" 数组末尾添加规则,例如:
    {"scope": "keyword.control.fortran", "foreground": "#FF8C00"},
    {"scope": "comment.line.exclamation.fortran", "foreground": "#6A9955"}
    
  • 保存后需重新选择一遍当前配色方案(ST3 建议重启,ST4 可实时预览)
  • LSP 补全/跳转弱?Fortran 模块机制天然限制,别强求 IDE 级体验

    Sublime 原生不解析模块依赖,use mymod 后无法跳转定义、补全变量名也基本靠猜。这不是配置问题,是 Fortran 语言特性 + 编辑器定位决定的。

    • 若坚持要补全,可配 lsp-fortran + fortls,但必须先禁用旧版 Fortran 语法包(否则高亮错乱)
    • 更务实的做法:用 ctags 生成标签文件(ctags -R --fortran-kinds=+i *.f90),配合 SublimeCodeIntel 或原生 goto_definition(需手动维护 tags 文件)
    • 科研场景中,print *, + 终端 gdb 仍是主力调试方式;别指望 Sublime 实现断点单步

    最容易被忽略的是:所有配置都建立在“当前文件已被正确识别为 Fortran”这一前提上。右下角语言名不是装饰,它是整个链路的起点——点错一次,后续所有功能全部静默失效,且没有任何提示告诉你卡在哪一步。

    相关文章

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

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

    下载

    相关标签:

    sublime

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

    相关专题

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

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

    2026.09.30

    80

    10

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

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

    2026.09.30

    80

    14

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

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

    2026.09.30

    80

    12

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

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

    2026.09.30

    60

    26

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

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

    2026.09.29

    60

    15

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

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

    2026.09.23

    280

    15

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

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

    2026.09.23

    160

    15

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

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

    2026.09.23

    140

    15

    Conan创建软件包配方指南
    Conan创建软件包配方指南

    本专题介绍通过conanfile.py创建软件包的方法,讲解包名、版本、依赖和构建设置等基础信息,以及source、build、package、package_info等常用方法的作用及编写思路。

    2026.09.22

    80

    12

    热门下载

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

    精品课程

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