No pude encontrar ninguna fuente real para esto. Estoy creando un sitio en ASP.NET MVC 3 y me gustaría aprovechar el editor Markdown que usa Stack Overflow. ¿Alguien tiene un buen tutorial?
¿Dónde se descarga la última rebaja? ¿En qué idioma está escrito? ¿Por dónde empezaría a integrar esto en un proyecto MVC 3? Incluso después de toda la búsqueda y lectura que he hecho, todavía estoy bastante confundido.
Me encontré con este sitio . Pero esto parece extravagantemente antiguo y parecería que tendría que aprender algo sobre CGI y Perl con lo que no tengo absolutamente ninguna experiencia. Una versión de JavaScript/jQuery sería espléndida.
Me di cuenta de que esta pregunta está recibiendo una buena cantidad de visitas, así que decidí actualizarla con algunas referencias útiles. Logré que un editor de Markdown funcionara bien en mi sitio web y escribí algunos blogs al respecto.
Stackoverflow abrió su versión de Markdown para el mundo. Se llama MarkdownSharp y está escrito en C#.
Alguien escribió un HtmlHelper aquí: http://blog.dantup.com/2011/03/an-asp-net-mvc-htmlhelper-extension-method-for-markdown-using-markdownsharp
Si está buscando cómo implementar un editor de JavaScript, existe una pregunta: Integrar el editor de texto Markitup al proyecto ASP.NET MVC
Probablemente estés buscando MarkdownSharp
Implementación de C# de código abierto del procesador Markdown, como se muestra en Stack Overflow.
Para integrarlo en una aplicación MVC:
En un controlador hasta o común, agregue el siguiente método de acción
public ActionResult FormatMarkdown(string markdownText) { var md = new MarkdownSharp.Markdown(); string html = md.Transform(markdownText); return Json(html, JsonRequestBehavior.AllowGet); }en la vista del lado del cliente:
@Html.TextArea("mdText", new { rows = 12, cols = 60 }) <div id="mdFormatted"></div>y JS del lado del cliente:
$(function () { var mdText = $("#mdText"); var mdFormatted = $("#mdFormatted"); function setFormatted(data) { mdFormatted.html(data); }; mdText.toObservable("keypress") .Throttle(200) .Subscribe(function () { $.getJSON("@VirtualPathUtility.ToAbsolute("~/Util/FormatMarkdown/")", { markdownText: mdText.val() }, setFormatted); })Descargue RxJs (de MSDN ) e incluya los siguientes dos archivos js
<script src="@Url.Content("~/Scripts/rx.js")" type="text/javascript"></script> <script src="@Url.Content("~/Scripts/rx.jquery.js")" type="text/javascript"></script>Sé que esta pregunta es antigua, pero encontré otra solución, markdowndeep , que es muy compatible con MVC.
Se puede instalar a través de nuget PM> Install-Package MarkdownDeep.Full
// Create an instance of Markdown var md = new MarkdownDeep.Markdown(); // Set options md.ExtraMode = true; md.SafeMode = false; string output = md.Transform(input);1.Copie los archivos js, css, png y htm proporcionados en su servidor. Dependiendo de dónde coloque estos archivos en su servidor, es posible que deba actualizar las direcciones URL de las imágenes en el archivo css.
2.Actualice su página para hacer referencia a jQuery, la biblioteca MarkdownDeep y el archivo css de MarkdownDeep (nuevamente, es posible que deba cambiar las rutas).
<link rel="stylesheet" href="mdd_styles.css" <script type="text/javascript" src="jQuery-1.4.2.min.js"> <script type="text/javascript" src="MarkdownDeepLib.min.js">NB: MarkdownDeepLib.min.js es una versión reducida y empaquetada de MarkdownDeep.js, MarkdownDeepEditor.js y MarkdownDeepEditorUI.js. Para la depuración, puede hacer referencia a estos tres archivos en su lugar.
3.Inserte el editor Markdown en su página de esta manera:
<div class="mdd_toolbar"></div> <textarea cols=50 rows=10 class="mdd_editor"></textarea> <div class="mdd_resizer"></div> <div class="mdd_preview"></div>Nota: los divs asociados son todos opcionales y, si faltan, el complemento los creará. Sin embargo... puede experimentar que la página salta durante la carga si hace esto. es decir: se recomienda incluirlos explícitamente.
4. Llamé al complemento MarkdownDeep jQuery para convertir el área de texto en un MarkdownEditor
$("textarea.mdd_editor").MarkdownDeep({ help_location: "/Content/mdd_help.html", disableTabHandling:true });Aunque me gusta mucho su producto , no estoy afiliado a los creadores de markdowndeep . Solo pensé que hicieron un buen producto.