#module #rename #haskell #tool #command-line-tool #speed

app hask-replace

以 Rust 速度重命名 Haskell 模块

23 个版本 (4 个破坏性更新)

使用旧的 Rust 2015

0.6.0 2017年10月15日
0.4.6 2017年9月16日
0.4.2 2017年8月18日
0.3.5 2017年8月10日
0.1.6 2017年7月29日

#44#haskell

每月50次下载

自定义许可证

23KB
519 代码行

hask-replace

Windows build status Build Status

hask-replace 是一个命令行工具,简化了重命名 Haskell、Elm 和 Idris 模块的过程。它还可以用于重命名包。

卖点

以下是一个使用 hr 的示例

cabal unpack dhall
cd dhall-1.5.1/
hr module . "Dhall.Import" "Dhall.Dependencies"
cabal new-build

如您所见,这比在 bash 中完成相同任务所需的任何魔法都要简单得多。不仅如此,它还适用于 Idris 和 Elm!

安装

脚本

对于大多数用户来说,最简单的方式可能是通过 shell 脚本安装,如下所示。

curl -LSfs https://japaric.github.io/trust/install.sh | sh -s -- --git vmchale/hask-replace

二进制发布

如果脚本不起作用,您还可以下载预先构建的二进制文件。您可以在发布页面找到各种平台的二进制文件。

Cargo

首先,安装 cargo。然后

 $ cargo install hask-replace

您需要使用夜间的发布版才能使此功能生效;如果有疑问,请运行

rustup run nightly cargo install hask-replace

性能

任务 时间
lens 重命名模块 14.77ms
dhall 重命名模块 7.41 ms
haskell-src-exts 重命名模块 30.29 ms

使用

hr 也可以用于 Idris。

git clone https://github.com/HuwCampbell/idris-lens.git
cd idris-lens
hr idris . Control.Lens.Maths Control.Lens.Math
idris --build lens.ipkg

Vim 插件

这里有一个 hask-replace 的 Vim 插件 在此处。它支持复制和移动 Haskell、Elm 和 Idris 模块。

依赖

~5–13MB
~155K SLoC