在本地安装 Unison

了解如何在本地安装 Unison,从而在自己的电脑上完成 Exercism 的练习


安装方式

当前的 Unison 版本支持 Mac OS X、64 位 Linux 和 Windows 用户!如果你正在试用 Unison,希望你能来 Exercism 论坛或 Unison Discord 和我们聊聊。欢迎提问,遇到问题也欢迎反馈!我们希望你在入门时能有一段友好、愉快的体验!😊

Unison 可以通过 homebrew、Nix 下载,也可以直接使用打包好的二进制文件。所有这些下载方式都写在我们网站的安装说明页面里。装好 UCM 之后,就回到这里吧!

方式 1:使用 Homebrew

如果还没安装,请先安装 homebrew。

然后在命令行中输入以下命令:

brew tap unisonweb/unison
brew install unison-language

这会安装 Unison 代码库管理器可执行文件,也就是ucm。如果你是从旧版本升级,直接执行这条命令即可:

brew upgrade unison-language.

注意:如果这时系统提示你输入 GitHub 用户名和密码,请确认 unisonweb/unison 拼写正确。

方式 2:Mac 和 Linux 用户手动安装

Linux 和 Mac 的手动安装链接就在对应的 Linux 和 Mac 手动下载部分里。

你要在 shell 中运行的命令大致如下,不过上面那个链接里才有最新的二进制文件:

mkdir unisonlanguage
curl -L https://github.com/unisonweb/unison/releases/download/release_VERSION_NAME/ucm-YOUR_PLATFORM.tar.gz --output unisonlanguage/ucm.tar.gz
tar -xzf unisonlanguage/ucm.tar.gz -C unisonlanguage
./unisonlanguage/ucm

方式 3:Windows 用户手动安装

  1. 为了获得最佳效果,请把默认终端应用设置为“Windows Terminal”。在 Settings 中搜索“Terminal”,或者按这篇操作指南操作。
  2. 如果不确定是否已经安装,请安装 Git:
  • 通过 winget:winget install --id Git.Git -e --source winget
  • 如果你用的是 Windows 10,而且没有 winget,可以从 Microsoft Store 安装,然后再运行上面的命令。
  1. 用这里提供的链接下载 UCM,然后解压到你选定的位置。
  2. 运行ucm.exe

方式 4:使用 Nix 安装

前往 https://github.com/ceedubs/unison-nix/#usage,按照那里的 readme 中的说明操作。

创建你的 Unison 代码库

运行ucm,在$HOME/.unison中初始化一个 Unison 代码库。Unison 会在这里存放函数定义、类型、命名空间等等。默认情况下,Unison 代码库管理器(缩写为“UCM”)会开始下载标准库base,你写 Unison 代码时会用到它。这可能需要一点时间!🕰

Unison 工作流

想要写 Unison 代码时,运行ucm命令来启动代码库管理器。UCM 会监视它所在目录中所有以.u结尾的文件的变化。比如,你可能在~/exercism/unison/my-exercise/目录下的scratch.u文件里实现函数。这时你应该cd到~/exercism/unison/my-exercise/,然后运行ucm。这样就能确保 UCM 在监视scratch.u文件的变化。

如果你搞不清ucm在监视哪个目录下的文件变化,启动 CLI 时,欢迎界面里会显示出来。

👀 I'm watching for changes to .u files under /Users/myUser/exercism/unison/my-exercise

这里还有更多工作流技巧!

编辑器支持

你可以用任何文本编辑器来编写.u文件。Unison 提供 LSP 支持,你常用的 IDE 就能在悬停显示类型、自动补全等方面帮上忙。下面列出了几个支持 Unison 的常用编辑器:

Vim

使用 vim-plug:

  1. 如果还没安装,先安装 vim-plug。
  2. 把下面这行加到 .vimrc 中:Plug 'unisonweb/unison', { 'branch': 'trunk', 'rtp': 'editor-support/vim' }
  3. 执行 vim 命令:PlugInstall。

想了解更多信息,可以在 vim 里运行:help unison,或者查看在线帮助文档。

Atom

在控制台中运行:

apm install unisonweb/atom-unison

VS Code

  1. 点击 VS Code 侧边 Activity Bar 中的 Extensions 图标,或按 ⇧⌘X,打开 Extensions 视图。
  2. 搜索“unison”
  3. 安装 Unison VS Code 扩展

Emacs

安装 unison-mode。