ionide / ionide/FsAutoComplete
Extract `TipFormatters` into its own package
- Dominant language
- F#
- Stars
- 486
- Forks
- 169
- Avg merge
- 2d 8h
- Merged PRs (30d)
- 5
Description
### Details
Hello,
I am working on improving [F# formatting API](https://github.com/fsprojects/FSharp.Formatting/pull/932) documentation and one of the main element is to improve the Tooltip formatting.
This leads to having to duplicate `TipFormatter` code between FSAC and F# Formatting. Would you be ok if we make it a standalone package?
The portion of the `TipFormatter` that I would like to export is only the portion responsible for converting a `XMLDoc` into a formatted text.
It should correspond more or less to this portion of the file:
https://github.com/ionide/FsAutoComplete/blob/fc79e99f59c3da89cca0c1e4367307263228409d/src/FsAutoComplete.Core/TipFormatter.fs#L17-L858
Having a separate library means:
- Both project can benefit from improvements made to the XMLDoc formatter
- Add tests to capture future regressions.
I think there are currently no tests regarding XMLDoc formatting in FSAC (at least I never wrote ones when I worked a lot with that portion of the code)
Extracting that portion of the code should not be too much of big deal because it doesn't depends on FSC or things complex like that. It just want an XMLElement and return a string / class instance.
It could be named something like `Ionide.XMLDocFormatter`? I worked on that code several times and volunteer to scaffold that project.
### Checklist
- [X] I have looked through existing issues to make sure that this feature has not been requested before
- [X] I have provided a descriptive title for this issue
- [X] I am aware that even valid feature requests may be rejected if they do not align with the project's goals
- [X] I or my company would be willing to contribute this feature
Contributor guide
Assessment
This issue has not been assessed yet.