From 9bc684ab6e990cc06fc9a9e1919ef689ca08211f Mon Sep 17 00:00:00 2001 From: "J. S" Date: Wed, 19 Jan 2022 15:37:43 -0500 Subject: [PATCH] Improve qualified import plugin readme After seeing #2603 might as well improve the docs a little so we can maybe link to it. --- .../README.md | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/plugins/hls-qualify-imported-names-plugin/README.md b/plugins/hls-qualify-imported-names-plugin/README.md index 0313231af9..caab371ec9 100644 --- a/plugins/hls-qualify-imported-names-plugin/README.md +++ b/plugins/hls-qualify-imported-names-plugin/README.md @@ -2,6 +2,34 @@ ![Qualify Imported Names Demo](qualify-imported-names-demo.gif) +## Summary + +Rewrite imported names to be qualified. + +## Motivation + +You've imported a number of modules, and have written a lot of code with unqualified names. You want to import a new module but you know there will be a number name clashes so you want to switch your current usage of names to be qualified. + +It would be nice if you could change +``` +import Blah +``` +to +``` +import Blah as Bloo +``` +then magically qualify all the previous names imported from `Blah` with `Bloo`. After doing that you could then change +``` +import Blah as Bloo +``` +to +``` +import qualified Blah as Bloo +``` +and import your the new module using names from it without worry. + +Well, now you can... + ## Usage 1. Put cursor over the import declaration you want to qualify names from. @@ -14,6 +42,9 @@ - If the import declaration has an explicit import list then the plugin will qualify only names on the list. - If the import declaration has an explicit hiding list then the plugin will qualify names from the imported module that are not on the list. +## Future possibilities +- It may be possible to use the LSP rename functionality to ask for a name so that we don't have to do the `as Alias` dance. + ## Change log ### 1.0.0.1 - GHC 9.2.1 compatibility