¿Cuál es la sintaxis para almacenar un comentario en un archivo de descuento, por ejemplo, un comentario CVS $ Id $ en la parte superior del archivo? No encontré nada en el proyecto de rebajas .
¿Cuál es la sintaxis para almacenar un comentario en un archivo de descuento, por ejemplo, un comentario CVS $ Id $ en la parte superior del archivo? No encontré nada en el proyecto de rebajas .
Respuestas:
Creo que todas las soluciones propuestas anteriormente (aparte de aquellas que requieren implementaciones específicas) dan como resultado que los comentarios se incluyan en el HTML de salida, incluso si no se muestran.
Si desea un comentario estrictamente para usted (los lectores del documento convertido no deberían poder verlo, incluso con "ver fuente") podría (ab) usar las etiquetas de enlace (para usar con enlaces de estilo de referencia) que son disponible en la especificación central de Markdown:
http://daringfireball.net/projects/markdown/syntax#link
Es decir:
[comment]: <> (This is a comment, it will not be included)
[comment]: <> (in the output file unless you use it in)
[comment]: <> (a reference style link.)
O podrías ir más allá:
[//]: <> (This is also a comment.)
Para mejorar la compatibilidad de la plataforma (y guardar una pulsación de tecla) también es posible usar #
(que es un objetivo de hipervínculo legítimo) en lugar de <>
:
[//]: # (This may be the most platform independent comment)
Para obtener la máxima portabilidad, es importante insertar una línea en blanco antes y después de este tipo de comentarios, porque algunos analizadores de Markdown no funcionan correctamente cuando las definiciones rozan el texto normal. La investigación más reciente con Babelmark muestra que las líneas en blanco antes y después son importantes. Algunos analizadores generarán el comentario si no hay una línea en blanco antes, y algunos analizadores excluirán la siguiente línea si no hay una línea en blanco después.
En general, este enfoque debería funcionar con la mayoría de los analizadores Markdown, ya que es parte de la especificación central. (incluso si el comportamiento cuando se definen múltiples enlaces, o cuando se define un enlace pero nunca se usa, no se especifica estrictamente).
[//]: # "Comment"
y [//]: # (Comment)
parece funcionar en una variedad más amplia de implementaciones, porque #
es un URI relativo válido. GitHub, por ejemplo, rechaza <>
, y toda la línea se hace visible. También vale la pena señalar que las etiquetas de enlace a menudo necesitan estar separadas de otro contenido por una línea en blanco.
Yo uso etiquetas HTML estándar, como
<!---
your comment goes here
and here
-->
Tenga en cuenta el triple guión. La ventaja es que funciona con pandoc cuando se genera salida TeX o HTML. Hay más información disponible en el grupo de discusión de pandoc .
Esta pequeña investigación prueba y refina la respuesta de Magnus.
La sintaxis más independiente de la plataforma es
(empty line)
[comment]: # (This actually is the most platform independent comment)
Ambas condiciones son importantes:
#
(y no <>
)La estricta especificación Markdown CommonMark solo funciona según lo previsto con esta sintaxis (y no con <>
y / o una línea vacía)
Para probar esto, usaremos el Babelmark2, escrito por John MacFarlane. Esta herramienta verifica la representación de un código fuente particular en 28 implementaciones de Markdown.
( +
- pasó la prueba, -
- no pasó, ?
- deja algo de basura que no se muestra en HTML renderizado).
<>
13+, 15-<>
20+, 8-<>
20+, 8-#
13+ 1? 14-#
23+ 1? 4-#
23+ 1? 4-Esto prueba las declaraciones anteriores.
Estas implementaciones fallan en las 7 pruebas. No hay posibilidad de usar comentarios excluidos en el render con ellos.
#
funciona para todos menos para GFM y <>
funciona para GFM pero no para un par más. Lástima que GFM sea un caso de esquina y también un sabor muy popular.
#
desde el 21 de enero de 2016. Cebe todavía no lo maneja.
(...)
solo, lo rompe. Al menos en Visual Studio Code 1.19.
%s/^\(.*\)$/[comment]: # (\1)/g
Si está utilizando Jekyll o Octopress, el siguiente también funcionará.
{% comment %}
These commments will not include inside the source.
{% endcomment %}
Las etiquetas Liquid {% comment %}
se analizan primero y se eliminan antes de que el procesador MarkDown llegue a ellas. Los visitantes no verán cuando intenten ver la fuente desde su navegador.
{#
comentarios multilínea aquí#}
Una alternativa es colocar comentarios dentro de etiquetas HTML estilizadas. De esta manera, puede alternar su visibilidad según sea necesario. Por ejemplo, defina una clase de comentario en su hoja de estilo CSS.
.comment { display: none; }
Luego, el siguiente MARKDOWN mejorado
We do <span class="comment">NOT</span> support comments
aparece como sigue en un NAVEGADOR
We do support comments
Esto funciona en GitHub:
[](Comment text goes here)
El HTML resultante se ve así:
<a href="Comment%20text%20goes%20here"></a>
Que es básicamente un enlace vacío. Obviamente, puede leer eso en la fuente del texto renderizado, pero puede hacerlo en GitHub de todos modos.
some text [](hidden text) blah blah
.
[](Comment text goes here)
Los usuarios de Vim Instant-Markdown deben usar
<!---
First comment line...
//
_NO_BLANK_LINES_ARE_ALLOWED_
//
_and_try_to_avoid_double_minuses_like_this_: --
//
last comment line.
-->
También vea Critic Markup, respaldado por un número creciente de herramientas de Markdown.
Comment {>> <<}
Lorem ipsum dolor sit amet.{>>This is a comment<<}
Highlight+Comment {== ==}{>> <<}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. {==Vestibulum at orci magna. Phasellus augue justo, sodales eu pulvinar ac, vulputate eget nulla.==}{>>confusing<<} Mauris massa sem, tempor sed cursus et, semper tincidunt lacus.
¿Qué hay de poner los comentarios en un bloque R sin evaluación ni eco? es decir,
```{r echo=FALSE, eval=FALSE}
All the comments!
```
Parece que funciona bien para mí.
cat("# Some Header")
dentro de los bloques de código "comentados" y usarlos results = "asis"
, y puede agregar secciones comentadas completas a su código que pueden activarse / desactivarse al alternar eval = FALSE
, ya que la evaluación R se realiza antes de compilación de pandoc. Gracias por la idea!
Divulgación: escribí el complemento.
Como la pregunta no especifica una implementación específica de rebajas, me gustaría mencionar el complemento de comentarios para python-markdown , que implementa el mismo estilo de comentario de pandoc mencionado anteriormente.
<!--- ... -->
No funciona en Pandoc Markdown (Pandoc 1.12.2.1). Los comentarios aún aparecieron en html. Lo siguiente funcionó:
Blank line
[^Comment]: Text that will not appear in html source
Blank line
Luego use la extensión de pie de página +. Es esencialmente una nota al pie de página a la que nunca se hace referencia.
[#]:
.
Lo siguiente funciona muy bien
<empty line>
[whatever comment text]::
ese método aprovecha la sintaxis para crear enlaces a través de la referencia,
ya que la referencia de enlace creada con [1]: http://example.org
no se representará, del mismo modo, tampoco se representará ninguno de los siguientes
<empty line>
[whatever]::
[whatever]:whatever
[whatever]: :
[whatever]: whatever
pandoc
tan bien como las instancias en línea actuales de Gitlab y GitHub .
Para pandoc, una buena forma de bloquear comentarios es usar un metabloque yaml, como lo sugiere el autor de pandoc . Me he dado cuenta de que esto da resaltado de sintaxis más adecuada de los comentarios en comparación con muchas de las otras soluciones propuestas, al menos en mi entorno ( vim
, vim-pandoc
y vim-pandoc-syntax
).
Utilizo comentarios de bloque yaml en combinación con comentarios en línea html , ya que los comentarios html no se pueden anidar . Desafortunadamente, no hay forma de bloquear los comentarios dentro del metabloque yaml , por lo que cada línea debe comentarse individualmente. Afortunadamente, solo debe haber una línea en un párrafo de formato suave.
En mi ~/.vimrc
, he configurado accesos directos personalizados para comentarios de bloque:
nmap <Leader>b }o<Esc>O...<Esc>{ji#<Esc>O---<Esc>2<down>
nmap <Leader>v {jddx}kdd
Utilizo ,
como mi <Leader>
tecla, de modo ,b
y ,v
comentario y elimine el comentario de un párrafo, respectivamente. Si necesito comentar varios párrafos, me mapeo j,b
a una macro (generalmente Q
) y ejecuto <number-of-paragraphs><name-of-macro>
(p 3Q
. Ej. ( ). Lo mismo funciona para descomentar.
kramdown , el motor de reducción basado en Ruby que es el predeterminado para Jekyll y, por lo tanto, para las páginas de GitHub, tiene soporte para comentarios incorporado a través de su sintaxis de extensión :
{::comment}
This text is completely ignored by kramdown - a comment in the text.
{:/comment}
Do you see {::comment}this text{:/comment}?
{::comment}some other comment{:/}
Esto tiene el beneficio de permitir comentarios en línea, pero la desventaja de no ser portátil a otros motores Markdown.
Puedes hacer esto (bloque YAML):
~~~
# This is a
# multiline
# comment
...
Lo intenté solo con salida de látex, confirma para otros.