2012-04-12 36 views
22

Nowość w R, Rstudio i SO - z góry przepraszam za każde faux pas.Jak zachować formatowanie z rstudio podczas kopiowania/wklejania do Worda?

Chcę skopiować mój kod w Word 2010 do zadania domowego. Skrypty zostały napisane w rstudio i chciałbym zachować formatowanie rstudio podczas wklejania do Worda. Zasadniczo lubię kolory i odstępy między czcionkami używane przez rstudio. Uważam, że po wklejeniu z SAS do programu Word formatowanie jest zachowywane, ale nie ma tu kości.

Zazwyczaj szukam kopii specjalnych/wkleić specjalne opcje, aby to zrobić, ale nie mogę znaleźć żadnych. Kiedy próbuję wkleić słowo specjalne do słowa, prezentowane są tylko niesformatowane opcje tekstu. Wolałbym nie formatować tekstu wiersz po wierszu, ponieważ wydaje mi się, że wygląda całkiem nieźle w rstudio.

Pomyślałem o próbie zapisania skryptu w rstudio w jakimś formacie, który zachowałby jego formatowanie, ale nie mogłem znaleźć żadnego sposobu, aby to zrobić. Czy ktoś ma pomysł, jak mogę to wyłączyć?

góry dzięki

+0

StackOverflow służy do programowania pytań. Kopiowanie i wklejanie nie jest programowaniem, więc twoje pytanie jest zupełnie nie na temat. –

+0

Joran, Josh, przepraszam, że odszedłem od tematu ... wciąż przyzwyczajam się do otoczenia. I tak, zdaję sobie sprawę, że to jest nierozsądne, ale tego właśnie chce. Jeśli ogólny konsensus jest taki, że jest OT, usuwam pośpiech. – dubhousing

+14

Powinniśmy być nieco mniej dogmatyczni. Myślę, że dla kogoś, kto rozpoczyna tę działalność, jest blisko programowania. –

Odpowiedz

23

Nie jest całkowicie jasne, czy wklejasz z edytora skryptów RStudio (który ma 4 lub 5 kolorów) lub z konsoli R (skrypt + wyjście) w RStudio (który ma tylko 2 kolory).

Jeśli wklejasz z konsoli - ponownie sprawdź "Wklej specjalnie". Powinna istnieć opcja "Format HTML", który zrobi to, czego potrzebujesz (chociaż może być konieczna zmiana rozmiaru czcionki, aby wszystko było poprawnie dopasowane w zależności od marginesów strony).

Jeśli wklejasz tekst z edytora skryptów, oznacza to, że nie masz szczęścia dzięki bezpośredniemu rozwiązaniu kopiowania i wklejania. Ale istnieje rozwiązanie typu "kopiuj i wklej" oraz "kopiuj i wklej" ...

Jednym rozwiązaniem może być użycie Notepad++. Z RStudio zapisz swój skrypt (z rozszerzeniem ".R"), a następnie otwórz skrypt w Notepad ++. (Lub skopiuj i wklej z RStudio do Notepad ++, ale upewnij się, że ustawiłeś język pliku - z menu "Język" - na R). Po poprawnym zaznaczeniu skryptu w Notatniku ++ przejdź do menu "Wtyczki> NppExport> Kopiuj HTML do schowka", aby skopiować otwarty plik. Można to następnie wkleić do MS Word z formatem HTML.

+0

Fantastyczne! Pracuję w edytorze skryptów i chciałam tam wkleić. Nie zdawałem sobie sprawy, że Notepad ++ był tak sprytny. Dziękuję bardzo! – dubhousing

+0

Działa zgodnie z oczekiwaniami. Zaznaczę to jako poprawne - nie zauważyłem opcji poniżej przycisków upvote/downvote (których nie mogę jeszcze użyć). Jeszcze raz dziękuję! – dubhousing

+0

Działa z programem PowerPoint 2016 na Windows 10 również – scs

0

Po skopiowaniu z okna Rstudio Console i wkleić do dokumentu programu Word, należy zaznaczyć cały ten właśnie skopiowany tekst i zmienić czcionkę na Courier New. Zapewni to takie same odstępy i skład, jak w oknie Konsola Rstudio.

+1

Prawie. Między wierszami będzie zbyt dużo miejsca, ponieważ każdy z nich rozpoczyna nowy akapit. Najlepiej zdefiniować kod arkusza stylów i ustawić "po" na 0pt. –

+0

Dzięki chłopaki, spróbuję połączyć twoje dwie sugestie. – dubhousing

6

Zakładając, że mamy dostęp do internetu

  1. Kopiuj i wklej do gist.gisthub.com
  2. Wybierz 'R' jako język - to powinno zapewnić kolory
  3. Hit stworzenia (tajne lub publiczne) Istota
  4. Copy i wklej z istoty do edytora tekstu.

porównaniu z Notepad ++ rozwiązanie:

  • kopii zapasowych online do kodu, z nagraniem czasu kiedy go obcięty.
  • Nie musisz instalować żadnego innego oprogramowania, przydatne, jeśli jesteś studentem korzystającym z publicznego komputera.
+0

OK, to jest niesamowite. Dzięki za wskazanie tego! – dubhousing

+1

Dobra odpowiedź. Jedynym problemem jest to, że może nie chcesz publicznie udostępniać swojego kodu. – fsmart

+1

nie działa, wydaje się, że usunęło opcję wyboru języka – stats0007

13

wszelki wypadek ktoś wygląda na to pytanie ...

Innym sposobem, aby mieć cały kod źródłowy w dokumencie programu Word z dobrym wyglądzie formacie wykorzystaniem RStudio jest użycie opcji File/Compile Notebook, wybierając MS Word jako format wyjściowy.

Użycie tej opcji spowoduje wygenerowanie dokumentu .docx wraz z danymi wyjściowymi skryptu oraz oryginalnego kodu źródłowego. Skrypt zostanie jednak wykonany.

Jeśli nie chcesz, aby Twój kod był oceniany (potrzebujesz tylko prostej kopii-wklejania), możesz dodać #+eval=FALSE na początku skryptu, a następnie kod źródłowy zostanie odtworzony w dokumencie tekstowym bez ocenione.

Podejście to opiera się na knitr. Oto przykład, jeśli ktoś chce zacząć grać z tym.

#' --- 
#' 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

zgadzam się z zeehio że używanie Knitr jest chyba najlepszym rozwiązaniem. Ale innym sposobem jest użycie Pretty R tool i kroków "tekst otwartego tekstu" here. Zasadniczo po prostu skopiuj i wklej swój kod do ładnego R, a następnie skopiuj i wklej wynik (a nie html) do otwartego dokumentu.

Powiązane problemy