sublime怎么配置erlang开发环境_sublime编写erlang代码设置【方法】

发布时间 - 2026-01-05 00:00:00    点击率:
必须先安装 Erlang 并配置 PATH,再通过 Package Control 安装官方 Erlang 插件,接着手动配置 Build System 实现编译运行,最后排查常见编码、路径和语法高亮问题。

安装 Erlang 插件前先确认 erl 命令是否可用

Sublime Text 本身不支持 Erlang,必须依赖外部工具链。第一步不是装插件,而是确保系统 PATH 中能调用 erlescript —— 否则后续所有编译、运行、语法检查都会失败。

  • 在终端执行 erl -version,应输出类似 Erlang/OTP 26 [erts-14.2]
  • 若提示 command not found,需先安装 Erlang(推荐用 asdf 或官网二进制包,避免通过 apt/yum 安装过旧版本)
  • Windows 用户注意:安装时勾选「Add Erlang to PATH」,或手动把 C:\Program Files\erl-XX.X\bin 加入系统环境变量

用 Package Control 安装 Erlang 插件(非 erlang-sublime

Sublime 上最稳定、持续维护的 Erlang 支持插件是官方命名的 Erlang(作者是 erlang-editors),不是名字带 “sublime” 或 “syntax” 的其他变体。装错会导致无高亮、无构建系统、甚至快捷键冲突。

  • Ctrl+Shift+P(Win/Linux)或 Cmd+Shift+P(Mac),输入 Package Control: Install Package
  • 等待列表加载后,输入 Erlang,选择并回车安装
  • 安装完成后,打开任意 .erl 文件,状态栏应显示 Erlang(而非 Plain Text
  • 若仍为纯文本,右键 → Set Syntax → Erlang → Erlang 手动切换一次,之后会自动识别

配置构建系统让 Ctrl+B 能编译并运行模块

默认插件只提供语法高亮和基础命令,不自带构建系统。要实现 Ctrl+B 编译当前文件、Ctrl+Shift+B 运行,需手动添加 Build System

  • 菜单栏 → Tools → Build System → New Build System…
  • 替换全部内容为以下配置(适配 Linux/macOS;Windows 需将 shell_cmd 中的 erlc 改为 erlc.bat):
{
    "cmd": ["erlc", "$file"],
    "file_regex": "^(.+):([0-9]+):([0-9]+):.*$",
    "working_dir": "$file_path",
    "selector": "source.erlang",
    "variants": [
        {
            "name": "Run",
            "cmd": ["escript", "-s", "$file_base_name"]
        }
    ]
}
  • 保存为 Erlang.sublime-build(路径自动为 Packages/User/
  • 再按 Ctrl+Shift+PBuild System → Erlang 激活它
  • 注意:Run 变体仅适用于含 -export([start/0]). 且导出 start/0 的模块;否则改用 erl -noshell -s mod fun args -s init stop 形式自定

调试与常见报错处理

即使配置完成,实际开发中仍常遇到两类问题:一是构建失败但无提示,二是语法高亮异常。根本原因往往不在 Sublime 本身。

  • erlc: command not found:Sublime 在 macOS/Linux 下默认不读取 shell 的 ~/.zshrc~/.bash_profile,需在 Preferences → Settings – User 中显式设置 PATH
{
    "path": "/usr/local/bin:/opt/homebrew/bin:/usr/lib/erlang/bin"
}
  • 编辑 .hrl 头文件时无高亮:插件默认只对 .erl.app.src 启用,可右键 → Set Syntax → Erlang → Erlang Header
  • 中文注释乱码或保存后变问号:在 Preferences → Settings 中确认 "default_encoding": "UTF-8" 且文件本身编码为 UTF-8(无 BOM)

真正麻烦的是 OTP 应用结构支持——Sublime 不解析 rebar.configmix.exs,无法跳转到依赖模块定义。这类需求得换 VS Code + erlang-ls,Sublime 只适合单文件脚本或学习阶段快速验证。


# linux  # sublime  # windows  # 编码  # app  # 工具  # mac  # ai  # macos  # 环境变量  # win  # erlang  # bom  # sublime text  # 右键  # 的是  # 一是  # 适用于  # 这类  # 不支持  # 自带  # 报错  # 而非  # 只提供 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 专业企业网站设计制作公司,如何理解商贸企业的统一配送和分销网络建设?  网站制作免费,什么网站能看正片电影?  非常酷的网站设计制作软件,酷培ai教育官方网站?  Thinkphp 中 distinct 的用法解析  Laravel怎么生成URL_Laravel路由命名与URL生成函数详解  为什么要用作用域操作符_php中访问类常量与静态属性的优势【解答】  Laravel软删除怎么实现_Laravel Eloquent SoftDeletes功能使用教程  零基础网站服务器架设实战:轻量应用与域名解析配置指南  JavaScript Ajax实现异步通信  详解Android图表 MPAndroidChart折线图  javascript事件捕获机制【深入分析IE和DOM中的事件模型】  佛山网站制作系统,佛山企业变更地址网上办理步骤?  如何用美橙互联一键搭建多站合一网站?  Linux后台任务运行方法_nohup与&使用技巧【技巧】  网站建设整体流程解析,建站其实很容易!  Laravel Eloquent:优雅地将关联模型字段扁平化到主模型中  iOS正则表达式验证手机号、邮箱、身份证号等  Laravel如何生成URL和重定向?(路由助手函数)  HTML5空格和nbsp有啥关系_nbsp的作用及使用场景【说明】  Laravel如何实现用户注册和登录?(Auth脚手架指南)  如何在阿里云购买域名并搭建网站?  JavaScript常见的五种数组去重的方式  Laravel如何使用缓存系统提升性能_Laravel缓存驱动和应用优化方案  动图在线制作网站有哪些,滑动动图图集怎么做?  Laravel怎么实现API接口鉴权_Laravel Sanctum令牌生成与请求验证【教程】  在线教育网站制作平台,山西立德教育官网?  php在windows下怎么调试_phpwindows环境调试操作说明【操作】  如何在万网利用已有域名快速建站?  如何在景安云服务器上绑定域名并配置虚拟主机?  制作公司内部网站有哪些,内网如何建网站?  东莞专业网站制作公司有哪些,东莞招聘网站哪个好?  美食网站链接制作教程视频,哪个教做美食的网站比较专业点?  php中::能调用final静态方法吗_final修饰静态方法调用规则【解答】  Win11怎样安装网易有道词典_Win11安装词典教程【步骤】  JS碰撞运动实现方法详解  Laravel控制器是什么_Laravel MVC架构中Controller的作用与实践  Laravel PHP版本要求一览_Laravel各版本环境要求对照  Win11怎么设置虚拟桌面 Win11新建多桌面切换操作【技巧】  Laravel如何使用Vite进行前端资源打包?(配置示例)  ,交易猫的商品怎么发布到网站上去?  北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?  中山网站制作网页,中山新生登记系统登记流程?  如何在IIS中新建站点并配置端口与物理路径?  如何快速配置高效服务器建站软件?  Laravel怎么实现软删除SoftDeletes_Laravel模型回收站功能与数据恢复【步骤】  Win11怎么恢复误删照片_Win11数据恢复工具使用【推荐】  香港服务器租用每月最低只需15元?  Laravel中DTO是什么概念_在Laravel项目中使用数据传输对象(DTO)  Laravel如何集成第三方登录_Laravel Socialite实现微信QQ微博登录  Laravel DB事务怎么使用_Laravel数据库事务回滚操作