2012-04-12 27 views
22

Nuevo para R, Rstudio y SO - mis disculpas de antemano por cualquier paso en falso.Cómo conservar el formato de rstudio al copiar/pegar en Word?

Quiero reproducir mi código en Word 2010 para una tarea. Los guiones se escribieron en rstudio, y me gustaría conservar el formato de rstudio al pegarlo en Word. Principalmente, me gustan los colores de fuente y el espaciado que usa rstudio. Me parece que cuando pego de SAS a Word, el formato se conserva, pero no hay ningún dado aquí.

Por lo general, busco copiar especiales/pegar opciones especiales para hacer esto, pero no puedo encontrar ninguna. Cuando intento pegar palabra especial, solo se presentan opciones de texto sin formato. Prefiero no volver a formatear el texto línea por línea, porque creo que se ve bastante bien en rstudio.

Pensé en intentar guardar el script en rstudio en algún formato que conservara su formato, pero no pude encontrar ninguna forma de hacerlo. ¿Alguien tiene una idea de cómo podría lograr esto?

Gracias de antemano

+0

StackOverflow es para preguntas de programación. Copiar y pegar no es programación, por lo que su pregunta es bastante fuera de tema. –

+0

Joran, Josh, disculpa por haber salido del tema aquí ... todavía me estoy acostumbrando a mi entorno. Y sí, me doy cuenta de que parece una necedad, pero eso es lo que ella quiere. Si el consenso general es que es OT, eliminaré post-haste. – dubhousing

+14

Deberíamos ser un poco menos dogmáticos. Creo que para alguien que comienza este negocio, esto está cerca de la programación. –

Respuesta

23

No está del todo claro si está pegando desde el editor de scripts de RStudio (que tiene 4 o 5 colores) o desde la consola R (script + salida) dentro de RStudio (que solo tiene 2 colores).

Si está pegando desde la consola, compruebe "Pegar especial" nuevamente. Debería haber una opción para "Formato HTML" que hará lo que necesita (aunque es posible que necesite cambiar el tamaño de la fuente para que todo encaje correctamente según los márgenes de su página).

Si está pegando desde el editor de scripts, no tiene suerte con una solución directa de copiar y pegar. Pero hay una solución de copiar y pegar y copiar y pegar ...

Una solución podría ser usar Notepad++. Desde RStudio, guarde su script (con una extensión ".R") y luego abra el script en Notepad ++. (O copie y pegue desde RStudio a Notepad ++, pero asegúrese de configurar el idioma del archivo, desde el menú "Idioma", a R). Cuando su script esté resaltado correctamente en Notepad ++, vaya al menú "Complementos> NppExport> Copiar HTML al portapapeles" para copiar el archivo abierto. Esto se puede pegar en MS Word con formato HTML.

+0

¡Fantástico! Estoy trabajando en el editor de scripts y estaba buscando pegar desde allí. No me di cuenta de que Notepad ++ era tan inteligente. ¡Muchas gracias! – dubhousing

+0

Funciona como se esperaba. Marcaré como correcto, no noté la opción debajo de los botones de votos a favor/en contra (que no puedo usar todavía). ¡Gracias de nuevo! – dubhousing

+0

Funciona con PowerPoint 2016 en Windows 10 también – scs

0

Después de copiar desde la ventana de la consola rstudio y pegar en un documento de Word, es necesario poner de relieve todo el texto acaba de copiar y cambiar la fuente a Courier New. Esto le dará el mismo espacio y alineación que tenía en la ventana de Rstudio Console.

+1

Casi. Habrá demasiado espacio entre las líneas, porque cada una comienza un nuevo párrafo. Lo mejor es definir un código de hoja de estilo y establecer "después" en 0pt. –

+0

Gracias muchachos, intentaré unir sus dos sugerencias. – dubhousing

6

Asumiendo que tiene acceso a internet

  1. copiar y pegar para gist.gisthub.com
  2. Seleccione 'R' como el idioma - Esto debería proporcionar colores
  3. Hit crear GIST (secreta o pública)
  4. Copiar y pegue desde la esencia a su procesador de textos.

En comparación con el Notepad ++ solución:

  • Una copia de seguridad en línea a su código, con una grabación del momento en el que pegó muy.
  • No tiene que instalar ningún otro software, útil si es un estudiante que usa una computadora pública.
+0

OK, esto es increíble. ¡Gracias por mencionarlo! – dubhousing

+1

Buena respuesta. El único problema es que tal vez no desee compartir su código públicamente. – fsmart

+1

ya no funciona, parecen haber eliminado la opción de elegir su idioma – stats0007

13

Sólo en caso de que alguien busca a esta pregunta ...

Otra manera de tener todo el código fuente en un documento de Word con un formato de buen aspecto usando rstudio es utilizar la opción File/Compile Notebook, la elección MS Word como el formato de salida.

Al usar esta opción, se generará un documento .docx con la salida de su script así como el código fuente original. Sin embargo, el script se ejecutará.

Si no desea que se evalúe su código (solo desea un simple copiar y pegar), puede agregar #+eval=FALSE al comienzo de su secuencia de comandos y luego el código fuente se reproducirá en el documento de Word sin ser evaluado.

Este enfoque se basa en knitr. Aquí hay un ejemplo si alguien quiere comenzar a jugar con esto.

#' --- 
#' title: "My homework" 
#' author: John Doe 
#' date: June 15, 2015 
#' output: word_document 
#' --- 

# The header above sets some metadata used in the knitr output 

# Conventional comments are formatted as regular comments 

# Comments starting with "#+" control different knitr options. 

#+echo=FALSE,message=FALSE,warning=FALSE 
library(ggplot2) 


#+echo=TRUE 
#' Comments with a "+" sign are used to tell knitr what should be 
#' done with the chunk of code: 
#' 
#' - echo: Show the original code or not 
#' - eval: Run the original code or not 
#' - message: Print messages 
#' - warning: Print warnings 
#' - error: Print errors 
#' ... 

#' Comments with an apostrophe "'" will be printed as regular text. 
#' This is very useful to explain what you are actually doing! 

# Regular comments can be used to document the code as usual 
# Figures are printed: 
ggplot(mpg, aes(x=cty, y=hwy)) + geom_point(aes(color=class)) 

#' Formatting **options** are possible. 
#' Even [links](http://stackoverflow.com/questions/10128702/how-to-preserve-formatting-from-rstudio-when-copy-pasting-to-word) 
#' 


#' This will show all the packages and versions used to generate this document. 
#' It can be used to make sure that your teacher has all he needs to run your script 
#' if he/she wants to. 
sessionInfo() 

Word document example

0

Estoy de acuerdo con que el uso de zeehio Knitr es probablemente la mejor opción. Pero otra forma es usar los pasos Pretty R tool y "abrir documento de texto" here. Básicamente solo copie y pegue su código en la bonita R, y copie y pegue la salida (no el html) en el documento abierto.

Cuestiones relacionadas