MicrosoftDocs / feedback

šŸ“¢ docs.microsoft.com site feedback
https://learn.microsoft.com
Creative Commons Attribution 4.0 International
239 stars 160 forks source link

Add support for grid tables #2052

Open mvelosop opened 4 years ago

mvelosop commented 4 years ago

Is your feature request related to a problem? Please describe. Some times you need to create a table in html because the content can't be easily prepared in MD, for example, when using breaks in table cells.

Case in point: https://docs.microsoft.com/en-us/dotnet/architecture/microservices/net-core-net-framework-containers/container-framework-choice-factors

The original html table was:

<table>
<thead>
<tr class="header">
<th><strong>Architecture / App Type</strong></th>
<th><strong>Linux containers</strong></th>
<th><strong>Windows Containers</strong></th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td>Microservices on containers</td>
<td>.NET Core</td>
<td>.NET Core</td>
</tr>
<tr class="even">
<td>Monolithic app</td>
<td>.NET Core</td>
<td><p>.NET Framework</p>
<p>.NET Core</p></td>
</tr>
<tr class="odd">
<td>Best-in-class performance and scalability</td>
<td>.NET Core</td>
<td>.NET Core</td>
</tr>
<tr class="even">
<td>Windows Server legacy app ("brown-field") migration to containers</td>
<td>--</td>
<td>.NET Framework</td>
</tr>
<tr class="odd">
<td>New container-based development ("green-field")</td>
<td>.NET Core</td>
<td>.NET Core</td>
</tr>
<tr class="even">
<td>ASP.NET Core</td>
<td>.NET Core</td>
<td><p>.NET Core (recommended)</p>
<p>.NET Framework</p></td>
</tr>
<tr class="odd">
<td>ASP.NET 4 (MVC 5, Web API 2, and Web Forms)</td>
<td>--</td>
<td>.NET Framework</td>
</tr>
<tr class="even">
<td>SignalR services</td>
<td>.NET Core 2.1 or higher version</td>
<td><p>.NET Framework</p>
<p>.NET Core 2.1 or higher version</p></td>
</tr>
<tr class="odd">
...

Describe the solution you'd like Use the grid tables extension already supported by markdig

It'd be like this with grid tables:

+---------------------------------------+---------------------------------------+---------------------------------------+
| **Architecture / App Type**           | **Linux containers**                  | **Windows Containers**                |
+=======================================+=======================================+=======================================+
| Microservices on containers           | .NET Core                             | .NET Core                             |
+---------------------------------------+---------------------------------------+---------------------------------------+
| Monolithic app                        | .NET Core                             | .NET Framework                        |
|                                       |                                       |                                       |
|                                       |                                       | .NET Core                             |
+---------------------------------------+---------------------------------------+---------------------------------------+
| Best-in-class performance and         | .NET Core                             | .NET Core                             |
| scalability                           |                                       |                                       |
+---------------------------------------+---------------------------------------+---------------------------------------+
| Windows Server legacy app             | \--                                   | .NET Framework                        |
| (\"brown-field\") migration to        |                                       |                                       |
| containers                            |                                       |                                       |
+---------------------------------------+---------------------------------------+---------------------------------------+
| New container-based development       | .NET Core                             | .NET Core                             |
| (\"green-field\")                     |                                       |                                       |
+---------------------------------------+---------------------------------------+---------------------------------------+
| ASP.NET Core                          | .NET Core                             | .NET Core (recommended)               |
|                                       |                                       |                                       |
|                                       |                                       | .NET Framework                        |
+---------------------------------------+---------------------------------------+---------------------------------------+
| ASP.NET 4 (MVC 5, Web API 2, and Web  | \--                                   | .NET Framework                        |
| Forms)                                |                                       |                                       |
+---------------------------------------+---------------------------------------+---------------------------------------+
| SignalR services                      | .NET Core 2.1 or higher version       | .NET Framework                        |
|                                       |                                       |                                       |
|                                       |                                       | .NET Core 2.1 or higher version       |
+---------------------------------------+---------------------------------------+---------------------------------------+
| WCF, WF, and other legacy frameworks  | WCF in .NET Core (only the WCF client | .NET Framework                        |
|                                       | library)                              |                                       |
|                                       |                                       | WCF in .NET Core (only the WCF client |
|                                       |                                       | library)                              |
+---------------------------------------+---------------------------------------+---------------------------------------+
| Consumption of Azure services         | .NET Core                             | .NET Framework                        |
|                                       |                                       |                                       |
|                                       | (eventually all Azure services will   | .NET Core                             |
|                                       | provide client SDKs for .NET Core)    |                                       |
|                                       |                                       | (eventually all Azure services will   |
|                                       |                                       | provide client SDKs for .NET Core)    |
+---------------------------------------+---------------------------------------+---------------------------------------+

As for authoring a Grid Table, this VS Code extension could help: https://marketplace.visualstudio.com/items?itemName=shuworks.vscode-table-formatter

Describe alternatives you've considered Using standard, more readable (šŸ¤”?) md that still needs some html:

| Architecture / App Type | Linux containers | Windows Containers |
|-------------------------|------------------|--------------------|
| Microservices on containers | .NET Core | .NET Core |
| Monolithic app | .NET Core | .NET Framework <br/> .NET Core |
| Best-in-class performance and scalability | .NET Core | .NET Core |
| Windows Server legacy app ("brown-field") migration to containers | -- | .NET Framework |
| New container-based development ("green-field") | .NET Core | .NET Core |
| ASP.NET Core | .NET Core | .NET Core (recommended) <br/> .NET Framework |
| ASP.NET 4 (MVC 5, Web API 2, and Web Forms) | -- | .NET Framework |
| SignalR services | .NET Core 2.1 or higher version | .NET Framework <br/> .NET Core 2.1 or higher version |
| WCF, WF, and other legacy frameworks | WCF in .NET Core (client library only) | .NET Framework <br/> WCF in .NET Core (client library only) |
| Consumption of Azure services | .NET Core <br/> (eventually all Azure services will provide client SDKs for .NET Core) | .NET Framework <br/> .NET Core <br/> (eventually all Azure services will provide client SDKs for .NET Core) |

Additional context Nothing else.

Thanks šŸ˜Š

welcome[bot] commented 4 years ago

Thank you for creating the issue! One of our team members will get back to you shortly with additional information. If this is a product issue, please close this and contact the particular product's support instead (see https://support.microsoft.com/allproducts for the list of support websites).

mairaw commented 4 years ago

Thanks @mvelosop for filing this issue. @SyntaxC4 @meganbradley would you be the right folks to discuss this customer suggestion with?

meganbradley commented 4 years ago

@mairaw @mvelosop @SyntaxC4 we aren't likely to implement support for Markdown grid tables, but are planning to create a new Docs Markdown extension for tables to address various issues. I've added a link to this request in the iternal feature so we can consider these requirements when we create the new extension.

https://ceapex.visualstudio.com/Engineering/_workitems/edit/119502

mvelosop commented 4 years ago

Thanks @meganbradley.

Just let me know in case you need some help in whatever form.

I'm also an indirect stakeholder here, because I developed a docx+pdf generator, that generates e-books from the docs repo, that's currently used to generate five e-books for the .NET Architecture Guides site.

Since I'll have to adapt to the new table format, I'd like to get started as soon as there's something to work on.

Thanks a lot!