emacs markdown org-mode

Modo Emacs para el descuento de Stack Overflow



markdown org-mode (5)

Es fácil con Chrome también

Esto es menos una respuesta que una prueba de mi solución usando el complemento Edit with Emacs chrome y el Emacs Edit Server configurado para usar markdown-mode para Stackoverflow (y otros sitios de Stackexchange que uso). Todo lo que tuve que hacer después de instalar la extensión y los paquetes MELPA fue establecido

(setq edit-server-url-major-mode-alist ''(("mail.google.com" . org-mode) ("stackoverflow//.com" . markdown-mode) (".*//.stackexchange//.com" . markdown-mode) ("github//.com" . markdown-mode)))

Soporte de mensajes de Gmail

Tenga en cuenta que en la configuración anterior, estoy usando org-mode para mensajes de Gmail. Todavía necesita hacer un poco de trabajo aquí, pero es posible, con un pequeño esfuerzo, redactar su mensaje de Gmail utilizando org-mode y luego usar org-mime para generar html a partir de su texto estructurado de organización. Podrías usar markdown y un markdown para la conversión html.

Estoy usando Org-mode en Emacs para manejar toda mi documentación técnica. Me gustaría usar Emacs para preparar las preguntas que tengo para Stack Overflow. ¿Hay un modo Emacs para eso o, mejor aún, una extensión para que Org-mode maneje el formato Stack Overflow? Idealmente, debería incluir todas las opciones de formato compatibles con la sintaxis de rebajas utilizada en los búferes de preguntas / comentarios de desbordamiento de pila.


Integrando Emacs con desbordamiento de pila

Como se mencionó , puedes usar markdown-mode . Para integrar el modo de reducción con , puede usar el complemento de Firefox It''s All Text, que le permite editar áreas de texto con un editor externo. Aquí es cómo configurarlo:

  1. Instale markdown-mode . Si usa Debian o Ubuntu, puede instalarlo emitiendo

    sudo apt-get install emacs-goodies-el

    o si está en emacs 24 (o tiene package.el en emacs 23) y Marmalade o Melpa , puede instalarlo con

    M-x package-install RET markdown-mode

  2. Instalar es todo el texto .

  3. Establezca las preferencias de All The Text para usar Emacs. O puede configurarlo en el ejecutable (por ejemplo, / usr / bin / emacs) o el emacsclient .
  4. Agregue lo siguiente a sus .emacs para habilitar el modo de reducción para las áreas de texto de y Stack Exchange:

    ;; Integrate Emacs with Stack Exchange https://.com/a/10386560/789593 (add-to-list ''auto-mode-alist ''("stack//(exchange//|overflow//)//.com//.[a-z0-9]+//.txt" . markdown-mode))

    Alternativamente, si se define as-external-alist si Mx describe-variable RET as-external-alist no falla, es probable que anule a la auto-mode-alist . Tiene un formato ligeramente diferente (es una lista de pares en lugar de una lista de células cons), así que esto funcionará:

    (add-to-list ''as-external-alist ''("stack//(exchange//|overflow//)//.com//.[a-z0-9]+//.txt" markdown-mode))

  5. Presione el botón azul de edición en la parte inferior derecha de un área de texto para editarlo a través de emacs. El botón de edición azul se muestra en la siguiente captura de pantalla:

    En la siguiente captura de pantalla, se encuentra un búfer de Emacs en el modo de edición editando esta publicación:

  6. Cuando haya terminado de editar en Emacs, guarde el búfer para enviarlo a Firefox.

Si desea esta funcionalidad para otros dominios, debe cambiar la expresión regular anterior. Lo siguiente reconoce Stack Exchange, , Ask Ubuntu y Super User:

;; Integrate Emacs with Stack Exchange https://.com/a/10386560/789593 (add-to-list ''auto-mode-alist ''("//(stack//(exchange//|overflow//)//|superuser//|askubuntu//)//.com//.[a-z0-9]+//.txt" . markdown-mode))

Usando el modo de reducción con el modo Org

Para usar el modo markdow con Org-mode, puede usar esta función para trabajar con el código fuente . Con él puedes incluir bloques de rebajas dentro de tus búferes Org-mode que puedes editar a través del modo markdown. Puedes usarlo de la siguiente manera:

  1. Cuando se encuentre en un búfer de modo Org, ingrese <s en una nueva línea y presione Tab . Esto dará como resultado

    #+begin_src #+end_src

  2. Ingrese el markdown después de #+begin_src para que tenga

    #+begin_src markdown #+end_src

  3. Cuando se encuentre dentro del bloque fuente (entre #+begin_src markdown y #+end_src ), presione Cc '' para editar el bloque de origen con el modo de #+end_src .

  4. Edite el bloque fuente en el modo de reducción.

  5. Presione Cc '' para regresar al búfer Org-mode e insertar la edición. Esto puede parecerse a lo que muestra la siguiente captura de pantalla:



La respuesta de @NN también se aplica a Chrome, con estos cambios en los detalles.

Chrome tiene una extensión Edit with Emacs , que es similar a It''s all text. Después de instalarlo, encontrará más instrucciones en la página de opciones de extensión.

Existe un edit-server grupo de personalización de emacs con opciones, lo que es más importante, el cambio de modo principal por sitio se configura de forma diferente que en la respuesta de @NN:

(add-to-list ''edit-server-url-major-mode-alist ''("^" . markdown-mode))

Además, para que el servidor de edición funcione en terminales emacs, tuve que deshabilitar la opción edit-server-new-frame .


Pandoc tiene soporte para leer un subconjunto de org-mode y puede generar un descuento.

En otras palabras, puede seguir escribiendo en modo orgánico, incluyendo escribir en cursiva / como este /, y luego exportar a rebaja. Desde emacs puede convertir al marcado seleccionando la región, presionando Cu MS- y escribiendo pandoc -r org -t markdown, obteniendo un resultado como este:

In other words, you can keep writing in org-mode, including writing italics *like this*, and then export to markdown.

O bien, puede guardar el archivo y convertirlo en la línea de comando.