当前位置:首页 > 下载列表 > OCaml and Reason IDE

OCaml and Reason IDE 1.0.38

新的介绍内容:OCaml和ReasonIDE:为VisualStudioCode带来强大功能OCaml和ReasonIDE是专为VisualStudioCode设计的扩展工具,为OCaml和Reason语言的开发者提供了全面的支持。无论您是刚开始学习还是已经是经验丰富的开发者,该扩展都能帮助您提高编程效率和代码质量。讨论与反馈有任何想法、需要帮助或其他反馈,欢迎加入ReasonDis
点击下载 相关下载
功能介绍

新的介绍内容:

screenshot

OCaml和Reason IDE:为Visual Studio Code带来强大功能

OCaml和Reason IDE是专为Visual Studio Code设计的扩展工具,为OCaml和Reason语言的开发者提供了全面的支持。无论您是刚开始学习还是已经是经验丰富的开发者,该扩展都能帮助您提高编程效率和代码质量。

讨论与反馈

有任何想法、需要帮助或其他反馈,欢迎加入Reason Discord服务器的#editorsupport频道,通常可以找到@freebroccolo在线交流。

主要功能

  • 高亮显示

    • 高级语法高亮支持Reason
    • 基本高亮支持Merlin、OCamlbuild和Opam文件
  • 编辑功能

    • 文档格式化(可在保存时启用,设置editor.formatOnSave)
    • 代码补全和代码片段
    • 重命名符号(F2或右键点击)
    • 模式拆分
  • 导航功能

    • 缓冲区符号大纲(⇧⌘O,列表中输入:排序项目)
    • 项目符号大纲(⌘T,支持正则表达式)
    • 跳转到定义(⌃点击)和代码预览(⌘悬停)
    • 查找引用(⇧F12或右键点击)
  • 静态分析

    • Merlin集成,支持增量编辑同步
    • 在定义上显示类型(可通过editor.codeLens设置禁用)
    • 悬停显示类型和Markdown渲染的文档
    • 在线代码检查和编译器诊断,提供建议修复
      • 切换诊断面板(⇧⌘M)
      • 循环浏览当前文件的诊断(F8)
      • 点击灯泡图标查看建议修复
    • 内置支持在编辑器中显示BuckleScript的bsb错误,与Merlin的诊断互补

入门指南

推荐语法主题

尽管语法高亮在大多数主题下都能正常显示,我们推荐并测试了以下主题:

默认主题

  • Dark(推荐;此主题经过最彻底的测试)

其他主题

  • Atom One Dark
  • Dracula
  • Flatland Monokai
  • Oceanic Next

配置

Reason

安装Reason时会自动安装Merlin,因此可以跳过Merlin的安装步骤。

Merlin

如果您已经安装了Reason并计划将其用于JS编译,则Merlin已为您配置好。可以跳过此步骤。

此扩展高度依赖于Merlin,因此需要在项目中设置Merlin以启用补全和悬停信息。请参阅Merlin wiki了解详细步骤。基本需求是在项目根目录下有一个.merlin文件,列出源目录、库和使用的扩展。

Bsb

您可以选择直接从编辑器启动bsb,并在编辑器内显示命令行错误。请在Code > Preferences > Settings中添加以下内容:

"reason.diagnostics.tools": [
  "merlin",
  "bsb"
]

Merlin的诊断是尽力而为的,可能会有误;bsb的诊断100%正确。bsb诊断也适用于Windows

安装

注意:由于现有问题,请确保从命令行在项目根目录打开vscode!

像安装其他扩展一样安装此Visual Studio Code扩展。

搜索reason并安装由Darin Morrison提供的OCaml和Reason IDE。

要启用保存时的格式化,请在Code > Preferences > Settings中添加以下内容:

{
  "editor.formatOnSave": true
}

如果要启用codelens,请在Code > Preferences > Settings中添加以下内容:

"reason.codelens.enabled": true

高级功能

模式拆分

对于下面的示例,表示当前VS Code编辑器光标的位置。

引入switch语句

要引入switch语句,请执行以下步骤:

  1. 选择一个标识符或将光标移动到其单词范围内的任何位置(如下面所示)
  2. 打开调色板(⇧⌘P)并运行Reason: case split(输入case应会调出)
之前
let foo (arg: list 'a) => a<cursor>rg;
之后
let foo (arg: list 'a) => switch arg {
  | [] => failwith "<case>"
  | [_, ..._] => failwith "<case>"
};

嵌套switch表达式

switch引入功能也适用于嵌套switch表达式:

之前
let foo (arg: list 'a) => switch arg {
  | [] => failwith "<case>"
  | [_, ...xs] => x<cursor>s
};
之后
let foo (arg: list 'a) => switch arg {
  | [] => failwith "<case>"
  | [_, ...xs] => switch xs {
    | [] => failwith "<case>"
    | [_, ..._] => failwith "<case>"
  }
};

拆分模式而不引入switch

模式拆分功能可用于进一步拆分现有模式:

之前
let foo (arg: list 'a) => switch arg {
  | [] => failwith "<case>"
  | [x, ...x<cursor>s] => failwith "<case>"
};
之后
let foo (arg: list 'a) => switch arg {
  | [] => failwith "<case>"
  | [_] | [_, _, ..._] => failwith "<case>"
};
版本声明
本文转载于:https://marketplace.visualstudio.com/items?itemName=freebroccolo.reasonml 如有侵犯,请联系study_golang@163.com删除
查看更多
课程推荐
  • Golang云原生架构师课程
    Golang云原生架构师课程
    Go是一门并发支持、垃圾回收的编译型系统编程语言;本课程转载自哔哩哔哩:https://www.bilibili.com/video/BV1Mh411M7A
    204次学习
  • MySQL数据管理之备份恢复案例解析视频教程
    MySQL数据管理之备份恢复案例解析视频教程
    《MySQL数据管理之备份恢复案例解析视频教程》MySQL是一个开放源码的小型关联式数据库管理系统,目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
    160次学习
  • MySQL索引优化解决方案
    MySQL索引优化解决方案
    本套课程是根据MySQL索引的设计理念与数据结构、索引使用场景、索引分类、索引运用场景、索引性能分析、查询优化、MySQL索引的慢查询等组成,主要讲述了MySQL索引优化的解决方案,非常适合有MySQL使用基础或者有一定工作经验的同学。课程讲解了解决大数量查询慢的问题、如何编写一个高效的SQL、查询语句应该如何优化、索引的实现原理是什么、索引又应该如何优化...等诸多SQL索引优化的难点和面试点。
    182次学习
  • 极客学院Docker视频教程
    极客学院Docker视频教程
    Docker是PaaS提供商dotCloud开源的一个基于LXC的高级容器引擎,源代码托管在Github上,基于go语言并遵从Apache2.0协议开源。Docker自2013年以来非常火热,无论是从github上的代码活跃度,还是各大厂商的支持,都使Docker成为了时下最受关注的技术,甚至微软都声称在下一代WindowsServer中集成对Docker的支持。所以我们收集了《极客学院Docke
    243次学习
  • Golang进阶实战编程
    Golang进阶实战编程
    本课程是在《Go语言基础视频》基础之上录制的,是Go语言基础的后半部分。包括包的管理,IO操作,Go语言最大的亮点:高并发,goroutine,channel,反射等。本视频主要为了帮助Go语言的初学者,从零到一的快速入门。学完本套课程,可以学会如果通过包管理Go项目,并发模型,以及并发实现,channel通道如何传递数据,反射等等。
    127次学习
  • JavaScript极速入门
    JavaScript极速入门
    本套课程将帮助大家迅速掌握JavaScript这门高端的、动态的、弱类型编程语言。知识点简单明了,让你学习0压力,适合新手观看学习......
    431次学习
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议隐私政策
返回登录
  • 重置密码