Pregunta Frecuente: ¿Cómo dar formato a su código?

Formateando código: Lo básico

Todo código o salida de consola que incluya en sus publicaciones debe estar apropiadamente formateado. Afortunadamente, ¡esto es muy fácil de hacer! Simplemente use el boton de texto preformateado en la parte superior de la caja de edición de publicaiones.

  1. Seleccione algún código

  2. ¡Presione el boton </>!

El botón de formateo de texto automáticamente agrega símbolos Markdown especiales de formateo a cualquier cosa que seleccione. Si revisa el panel de vista previa a la derecha de su publicación, verá que el software del foro ahora genera código correctamente formateado :sparkles::grinning:.

¡El botón de formateo de código es bastante inteligente! Puede diferenciar entre fragmentos de código que son parte de una oración y bloques de código independientes. A veces el software incluso detectará que está pegando código y agregará los símbolos de formato ¡automáticamente! :mage:

¿Por qué debo formatear el código y la salida de la consola?

¡Hay muchas buenas razones para aprender a formatear correctamente su código!

  1. Mantener las cosas ordenadas es uno de nuestros principios básicos en la comunidad :broom:
  2. El código sin formato es difícil de leer para otras personas :dizzy_face:
    • Dejar su código sin formato hace que sea menos probable que reciba respuestas :disappointed:.
    • Continuar publicando código sin formato después de que alguien le haya pedido que lo arregle a menudo parece grosero :flushed:.
  3. La salida de la consola a menudo contiene caracteres que el software del foro interpreta como símbolos de formato especiales (Por ejemplo, $ o < y >). ¡Esto puede hacer que partes del texto se vuelvan irreconocibles o incluso desaparezcan por completo! :anguished: Marcar la salida de consola como código la mantiene a salvo de un formateo accidental confuso.

¿No puedo simplemente publicar una captura de pantalla?

Por favor no publique capturas de pantalla de código. Las capturas de pantalla de código son aún peores que el código sin formato :confounded:. Este es el por qué:

  • Las capturas de pantalla son a menudo difíciles de leer (e inútil para cualquiera que use un lector de pantalla).
  • Los personas que ayudan generalmente quieren intentar ejecutar su código, no solo leerlo. Las capturas de pantalla obligan a las personas que lo están ayudando a escribir todo de nuevo a mano :weary:. Eso es mucho pedir y muchas personas no se molestarán.
  • Las capturas de pantalla no se pueden buscar, por lo que no ayudan a otras personas con problemas similares a encontrar su publicación más adelante.

Formateando código: Más allá de lo básico

¿Cómo formateo la fuente de R Markdown?

Use cuatro tildes invertidas y la sugerencia de sintaxis "markdown" para rodear la fuente de los documentos R Markdown:

Escriba esto: Vea esto:
````markdown
---
title: "It's full of cars!"
output: html_document
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```

## R Markdown

This is an R Markdown document. 
Markdown is a simple formatting 
syntax for authoring HTML, PDF, 
and MS Word documents.

```{r cars}
summary(cars)
```
````
---
title: "It's full of cars!"
output: html_document
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```

## R Markdown

This is an R Markdown document. 
Markdown is a simple formatting 
syntax for authoring HTML, PDF,
and MS Word documents. 

```{r cars}
summary(cars)
```

¿Qué es este símbolo de "tilde invertida"?

El símbolo tilde invertida luce así:

`

No es lo mismo que un apostrofe solo. Técnicamente es el símbolo de acento grave, pero usado solo y no combinado con ninguna letra.

En los teclados QWERTY, la tilde invertida se encuentra en la misma tecla que la virgulilla (~), inmediatamente a la izquierda de la tecla 1:

Adaptado de: Denelson83, CC BY-SA 3.0

¡Mi teclado no tiene una tilde invertida!

La tilde invertida no está disponible en algunas distribuciones de teclado, y puede ser difícil de encontrar en otros.

En estos casos, lo más fácil es probablemente usar los botones de formato de código en lugar de escribir las tildes invertidas manualmente. Sin embargo, también puede hacer clic en el botón de formato de código sin nada seleccionado para insertar tildes invertidas en el cuadro de edición de publicaciones. ¡Luego copie y pegue esas tildes invertidas donde las necesite!

¿De qué maneras puedo formatear el código a mano?

El código puede formatearse a mano de varias maneras:

  • Use cualquiera de los Estilos de formato de código de marcado de CommonMark: bloques de código sangrado, bloques de código cercado y código en línea de una sola tilde invertida.

    Para bloques de código cercado, puede proporcionar sugerencias de resaltado de sintaxis, similar a Github-flavored Markdown. Si no proporciona una sugerencia, el resaltador lo adivinará. La sugerencia para código R es ```r, pero en este sitio, el resaltador generalmente identificará el código R correctamente sin una sugerencia.

  • Use sintaxis BBCode: [code] y [/code]

  • Use HTML: <code></code> para código en linea, y <pre><code></code></pre> para bloques de código.

Escriba esto: Vea esto:
```javascript
var body = d3.select("body");
var div = body.append("div");
div.html("Hello, world!");
```
var body = d3.select("body");
var div = body.append("div");
div.html("Hello, world!");
[code]
var body = d3.select("body");
var div = body.append("div");
div.html("Hello, world!");
[/code]
var body = d3.select("body");
var div = body.append("div");
div.html("Hello, world!");
<pre><code>
var body = d3.select("body");
var div = body.append("div");
div.html("Hello, world!");
</code></pre>
var body = d3.select("body");
var div = body.append("div");
div.html("Hello, world!");

:memo: Versión: Basado en la Versión 1.0.0 de FAQ: How to format your code?

¿Tiene algo que preguntar o agregar?

Las publicaciones de "Pregunta Frecuente" están cerradas a respuestas. Si tiene preguntas o sugerencias, por favor visite el hilo de conversación correspondiente: https://community.rstudio.com/t/faq-discussion-how-to-format-your-code/37220