hask-replace is a command-line tool that simplifies the process of renaming
Here's an example of how you would use
cabal unpack dhall cd dhall-1.5.0 hr module . "Dhall.Import" "Dhall.Dependencies" cabal new-build
As you can see, it's a lot less painful than whatever witchcraft you'd have to resort to to accomplish the same thing in bash.
The easiest way to install for most users is probably via a shell script, viz.
curl -LSfs https://japaric.github.io/trust/install.sh | sh -s -- --git vmchale/hask-replace
If the script doesn't work, you can also download prebuilt binaries. You can find binaries for various platforms on the release page.
First, install cargo. Then:
$ cargo install hask-replace
You will need to use the nightly release for this to work; if in doubt run
rustup run nightly cargo install hask-replace
|dhall||Rename Module||7.41 ms|
|haskell-src-exts||Rename Module||30.29 ms|
hr can also be used on Idris, viz.
git clone https://github.com/HuwCampbell/idris-lens.git cd idris-lens hr idris . Control.Lens.Maths Control.Lens.Math idris --build lens.ipkg