tutorial tablas online numeracion mayor link insertar igual comandos markdown

tablas - Markdown para crear páginas y tabla de contenidos



numeracion en markdown (23)

Acabo de codificar una extensión para python-markdown , que usa su analizador para recuperar encabezados y genera un TOC como lista desordenada con formato Markdown con enlaces locales. El archivo es

... y debe colocarse en el directorio markdown/extensions/ en la instalación de rebajas. Entonces, todo lo que tiene que hacer es escribir las etiquetas de anclaje <a> con un id="..." como referencia, por lo que para un texto de entrada como este:

$ cat test.md Hello ===== ## <a id="sect one"></a>SECTION ONE ## something here ### <a id=''sect two''>eh</a>SECTION TWO ### something else #### SECTION THREE nothing here ### <a id="four"></a>SECTION FOUR also...

... la extensión se puede llamar así:

$ python -m markdown -x md_toc test.md * Hello * [SECTION ONE](#sect one) * [SECTION TWO](#sect two) * SECTION THREE * [SECTION FOUR](#four)

... y luego puede volver a pegar este documento en su documento de reducción (o tener un acceso directo en su editor de texto, que invoca el script en el documento actualmente abierto, y luego inserta el TOC resultante en el mismo documento).

Tenga en cuenta que las versiones anteriores de python-markdown no tienen un módulo __main__.py , y como tal, la llamada de línea de comando como la anterior no funcionará para esas versiones.

Empecé a usar mardown para tomar notas.

Uso marcado para ver mis notas de descuento y es hermoso.

Pero a medida que mis notas se hacen más largas, me resulta difícil encontrar lo que quiero.

Sé que markdown puede crear tablas, pero ¿es capaz de crear una tabla de contenidos, que salta a secciones, o define secciones de página en rebajas?

Alternativamente, hay lectores / editores de rebajas que podrían hacer tales cosas. La búsqueda sería una buena característica para tener también.

En resumen, quiero que sea mi herramienta para tomar notas y funciones increíbles, como escribir un libro, etc.


Aquí hay un método útil. Debe producir referencias clicables en cualquier editor de MarkDown.

# Table of contents 1. [Introduction](#introduction) 2. [Some paragraph](#paragraph1) 1. [Sub paragraph](#subparagraph1) 3. [Another paragraph](#paragraph2) ## This is the introduction <a name="introduction"></a> Some introduction text, formatted in heading 2 style ## Some paragraph <a name="paragraph1"></a> The first paragraph text ### Sub paragraph <a name="subparagraph1"></a> This is a sub paragraph, formatted in heading 3 style ## Another paragraph <a name="paragraph2"></a> The second paragraph text

Produce:

Tabla de contenido

  1. Introduction
  2. Algunos párrafos
    1. Sub párrafo
  3. Otro párrafo

Esta es la introducción

Algunos textos de introducción, formateados en el estilo del título 2

Algunos párrafos

El primer párrafo del texto

Sub párrafo

Este es un subpárrafo, formateado en el estilo del título 3

Otro párrafo

El texto del segundo párrafo


Basado en albertodebortoli, la respuesta creó la función con controles adicionales y la sustitución de los signos de puntuación.

# @fn def generate_table_of_contents markdown # {{{ # @brief Generates table of contents for given markdown text # # @param [String] markdown Markdown string e.g. File.read(''README.md'') # # @return [String] Table of content in markdown format. # def generate_table_of_contents markdown table_of_contents = "" i_section = 0 # to track markdown code sections, because e.g. ruby comments also start with # inside_code_section = false markdown.each_line do |line| inside_code_section = !inside_code_section if line.start_with?(''```'') forbidden_words = [''Table of contents'', ''define'', ''pragma''] next if !line.start_with?(''#'') || inside_code_section || forbidden_words.any? { |w| line =~ /#{w}/ } title = line.gsub("#", "").strip href = title.gsub(/(^[!.?:/(/)]+|[!.?:/(/)]+$)/, '''').gsub(/[!.,?:; /(/)-]+/, "-").downcase bullet = line.count("#") > 1 ? " *" : "#{i_section += 1}." table_of_contents << " " * (line.count("#") - 1) + "#{bullet} [#{title}](/##{href})/n" end table_of_contents end


Dependiendo de su flujo de trabajo, es posible que desee ver el strapdown

Esa es una bifurcación de la original ( http://strapdownjs.com ) que agrega la generación de la tabla de contenido.

Hay un archivo de configuración de Apache en el repositorio (puede que aún no se haya actualizado correctamente) para envolver el descuento simple sobre la marcha, si prefiere no escribir en archivos html.


Empecé a hacer lo mismo (tomar notas en Markdown). Uso Sublime Text 2 con el complemento MarkdownPreview . El analizador de rebajas integrado admite [TOC] .


Escribí una secuencia de comandos python que analiza un archivo de reducción y muestra una tabla de contenidos como una lista de reducción: md-to-toc

A diferencia de otros scripts que he encontrado, md-to-toc admite correctamente títulos duplicados. Tampoco requiere una conexión a Internet, por lo que funciona en cualquier archivo md, no solo los disponibles en un repositorio público.


Hay 2 formas de crear su TOC (resumen) en su documento de descuento.

1. Manualmente

# My Table of content - [Section 1](#id-section1) - [Section 2](#id-section2) <div id=''id-section1''/> ## Section 1 <div id=''id-section2''/> ## Section 2

2. Programáticamente

Puede usar, por ejemplo, un script que genere un resumen para usted, eche un vistazo a mi proyecto en github - summarizeMD -

También probé otro módulo script / npm (por ejemplo, doctoc ) pero nadie reproduce un TOC con anclajes de trabajo.


Las etiquetas de anclaje generadas por diferentes analizadores de Markdown no son pares.

Si está trabajando con los analizadores de Markdown GFM (GitHub Flavoured Markdown) o Redcarpet, escribí un plugin de Vim para manejar la tabla de contenido.

Caracteristicas

  1. Generar tabla de contenido para los archivos Markdown.

    Analizadores de Markdown admitidos:

    • GFM (GitHub Flavoured Markdown)
    • Alfombra roja
  2. Actualizar la tabla de contenidos existente.

  3. Actualice automáticamente la tabla de contenidos existente al guardar.

Capturas de pantalla

Uso

Generar tabla de contenido

Mueva el cursor a la línea que desea agregar a la tabla de contenido, luego escriba un comando a continuación que se adapte a usted. El comando generará encabezados después del cursor en la tabla de contenido.

  1. :GenTocGFM

    Generar tabla de contenido en el estilo de enlace GFM.

    Este comando es adecuado para los archivos Markdown en los repositorios GitHub, como README.md, y los archivos Markdown para GitBook.

  2. :GenTocRedcarpet

    Generar tabla de contenido en el estilo de enlace Redcarpet.

    Este comando es adecuado para Jekyll o en cualquier otro lugar que use Redcarpet como su analizador de reducción.

    Puede ver here para conocer las diferencias entre GFM y los enlaces toc de estilo Redcarpet.

Actualice la tabla de contenidos existente manualmente

En general, no es necesario que lo haga, la tabla de contenidos existente se actualizará automáticamente al guardar de manera predeterminada. Si desea hacerlo manualmente, solo use :UpdateToc comando :UpdateToc .

Descargas y documentos

https://github.com/mzlogin/vim-markdown-toc


No estoy seguro de cuál es la documentación oficial para el descuento. La referencia cruzada se puede escribir entre paréntesis [Heading] , o con corchetes vacíos [Heading][] .

Ambas obras usan pandoc . Así que creé un script bash rápido, que reemplazará $ TOC en el archivo md con su TOC. (Necesitará envsubst, que podría no ser parte de su distribución)

#!/bin/bash filename=$1 __TOC__=$(grep "^##" $filename | sed -e ''s/ /1. /;s/^##//;s/#/ /g;s//. /(.*/)$/. [/1][]/'') export __TOC__ envsubst ''$__TOC__'' < $filename



Para los usuarios de Visual Studio Code , una buena idea es utilizar el complemento Markdown TOC .

Para instalarlo, inicie el Código VS Abierto Rápidamente ( Ctrl + P ), pegue el siguiente comando y presione enter.

ext install markdown-toc

Y para generar el TOC, abra la paleta de comandos ( Ctrl + Shift + P ) y seleccione la Markdown TOC:Insert/Update option o use Ctrl + M T.


Puede probar este script de ruby para generar el TOC a partir de un archivo de reducción.

#!/usr/bin/env ruby File.open("your_file.md", ''r'') do |f| f.each_line do |line| forbidden_words = [''Table of contents'', ''define'', ''pragma''] next if !line.start_with?("#") || forbidden_words.any? { |w| line =~ /#{w}/ } title = line.gsub("#", "").strip href = title.gsub(" ", "-").downcase puts " " * (line.count("#")-1) + "* [#{title}](/##{href})" end end


Puede usar [TOC] en la primera línea y luego en la parte inferior; lo único que debe hacer es asegurarse de que los títulos tengan la misma fuente grande. La tabla de contenido saldría automáticamente. (Pero esto solo aparece en algunos editores de rebajas, no lo intenté todo)


Puedes generarlo usando este bash one-liner. Asume que su archivo de rebajas se llama FILE.md

echo "## Contents" ; echo ; cat FILE.md | grep ''^## '' | grep -v Contents | sed ''s/^## //'' | while read -r title ; do link=$(echo $title | tr ''A-Z '' ''a-z-'') ; echo "- [$title](#$link)" ; done


Puedes probar esto.

# Table of Contents 1. [Example](#example) 2. [Example2](#example2) 3. [Third Example](#third-example) ## Example ## Example2 ## Third Example


Si desea utilizar una herramienta javascript / node.js, eche un vistazo a markdown-toc .


Si usa Eclipse , puede usar el atajo Ctrl + O (contorno), esto mostrará el equivalente de la tabla de contenido y permitirá buscar en títulos de sección (autocompletar).

También puede abrir la vista de Esquema (Ventana -> Mostrar vista -> Contorno) pero no tiene búsqueda de autocompletar.


También puede usar pandoc , la "navaja suiza" para convertir "un formato de marcado en otro" . Puede generar automáticamente una tabla de contenido en el documento de salida si proporciona el argumento --toc .

Sugerencia: si desea una tabla de contenido en html , también debe proporcionar -s que genere un documento independiente.

Ejemplo de línea de comando de shell:

./pandoc -s --toc input.md -o output.html


Um ... usa los encabezados de Markdown?

Es decir:

# Esto es el equivalente de <h1>

## Esto es el equivalente de <h2>

### Esto es el equivalente de <h3>

Muchos editores le mostrarán un TOC. También puedes grep para las etiquetas de encabezado y crear la tuya.

¡Espero que ayude!

--JF




Typora genera una tabla de contenido agregando [TOC] a su documento.


# Table of Contents 1. [Example](#example) 2. [Example2](#example2) 3. [Third Example](#third-example) ## Example [](#){name=example} ## Example2 [](#){name=example2} ## [Third Example](#){name=third-example}

Si usa el descuento adicional, no olvide que puede agregar atributos especiales a enlaces, encabezados, vallas de código e imágenes.
https://michelf.ca/projects/php-markdown/extra/#spe-attr