Me gustaría usar el sabor SE de Markdown en mis emacs. El modo Markdown predeterminado tiene algunas características (backticks y código de marca de sangría, #
crea un encabezado y >
también cambia la fuente) pero también me gustaría tener:
*
para hacer un elemento de la lista, incluida la sangría.[foo](http://example.com)
para aparecer como foo y abrir un navegadorhttp://example.com
al hacer clic en él.
Idealmente, me gustaría que esto se muestre en mis emacs como Markdown. Por ejemplo, si tuviera que escribir:
## Header
* item 1
* item 2
while true; do echo foo; done
End of list and more code
while true; do echo bar; done
See [here](http://example.com) for details
Me gustaría que se representara así en emacs:
Encabezamiento
- Objeto 1
elemento 2
while true; do echo foo; done
Fin de la lista y más código
while true; do echo bar; done
Ver aquí para más detalles
¿Se puede lograr esto y, de ser así, cómo?
xdg-open
o incluso simplemente mostrando la dirección de destino cuando se hace clic, pero el texto del enlace cuando no se hace: "Haga clic aquí " para convertirseClick [here](http://example.com)
cuando se hace clic. Solo una forma rápida de incluir URL sin problemas en mis documentos de texto.Respuestas:
** EDITAR: ** Desde este escrito, parece que parte de las características se han implementado directamente en modo de reducción. Mira este comentario y los enlaces que contiene.
Configuración
Hay dos enfoques que puede tomar.
Explico aquí cómo implementar el número 2. Simplemente copie todo el código a continuación a su archivo de inicio.
Agregar las reglas de bloqueo de fuente
Esta variable controla cómo desea que se vean las listas. Agrega algo de espacio para sangrar la lista, y usa un punto bonito (si su fuente puede mostrarlo).
Este es el comando que realmente agrega las reglas. Hay uno para listas y otro para enlaces.
Hacer el enlace editable
Debido a que estamos usando la
display
propiedad para ocultar parte del enlace, necesitamos decirle a font-lock que debe borrar esa propiedad cada vez que elimine parte del enlace (de esa manera aún podemos editarlo).También podemos definir un comando para editarlo fácilmente, vinculado
C-c C-l
, como en el modo org.(Opcional) Configurar algunas caras
Eso debería ser suficiente para los puntos que solicitó. Si desea que su búfer se parezca aún más al descuento de SE, llame
y cambia lo que creas conveniente. Hice algunas configuraciones yo mismo, y esto es lo que obtuve.
Resultados
Esto es lo que obtendrá después del primer conjunto de 2 configuraciones:
Esto es lo que obtendrá después de configurar caras también. Es discutible si esto se ve mejor, personalmente me quedaré con el anterior.
fuente
[foo]
y[foo](http://bar.com)
haciendo clic? No me importan demasiado los detalles, pero me gustaría una manera de mostrar fácilmente la URL si lo desea. Por el momento, tengo que eliminar uno de los corchetes para que aparezca. Puedo vivir con eso, pero estaría interesado en una mejor manera."Unknown rx form
group-n '". Output of
--debug-init` aquí . ¿Alguna idea?group-n X
con sologroup
. Eso aún podría funcionar.Un buen lugar para comenzar sería el
markdown-mode.el
que se puede descargar desde aquí .Este modo no ofrece
org-mode
embellecimiento de estilo, pero ofrece resaltado de sintaxis y un conjunto decustomize
opciones.Para obtener este estilo de embellecimiento, alguien necesitaría escribir una extensión para markdown-mode.el implementando font-faces.
La mayoría de las caras de org-mode.el están definidas en org-faces.el .
Además, querrá ver cómo el modo org reemplaza visualmente el texto con caracteres. Ese código está en org-entity.el . Este es el código que reemplaza el látex
\pm
con ±.fuente
*
niveles de denotación y cambia el tamaño del título en función de dónde se encuentra en el documento. También es capaz de formatear enlaces bonitos.