<div dir="ltr"><div class="gmail_default" style="font-family:trebuchet ms,sans-serif">Eu uso o Emacs para edição de documentos R. Para compilar eu abro um terminal e dou instrução lá. Antes eu abria um terminal do linux e chamava o R dentro. Hoje já uso um shell script que facilita bem mais as coisas. Segue o shell script. Dentro tem o comentário logo no topo de como fazer o link simbólico.<br><br></div><div class="gmail_default"><span style="color:rgb(11,83,148)"><span style="font-family:monospace,monospace">## COMEÇA ARQUIVO render<br></span></span></div><div class="gmail_default"><span style="color:rgb(11,83,148)"><span style="font-family:monospace,monospace"><br>#!/bin/bash<br><br># Seguir as intruções aqui<br># <a href="https://github.com/rstudio/rmarkdown/blob/master/PANDOC.md">https://github.com/rstudio/rmarkdown/blob/master/PANDOC.md</a> para criar<br># links simbólicos para o pandoc. No caso, tem-se que fazer<br>#   $ sudo ln -s /usr/lib/rstudio/bin/pandoc/pandoc /usr/local/bin<br>#   $ sudo ln -s /usr/lib/rstudio/bin/pandoc/pandoc-citeproc /usr/local/bin<br># para poder usar esse bash.<br><br>#-----------------------------------------------------------------------------<br># Compilar *.Rmd para *.html com rmarkdown::render.<br>#                                                               Walmes Zeviani<br>#-----------------------------------------------------------------------------<br><br>echo<br>echo "============================================================================="<br>echo "Compilando *.Rmd para *.html com rmarkdown::render."<br>echo "                                                               Walmes Zeviani"<br>echo "============================================================================="<br>echo<br><br>##-----------------------------------------------------------------------------<br>## <a href="http://stackoverflow.com/questions/402377/using-getopts-in-bash-shell-script-to-get-long-and-short-command-line-options">http://stackoverflow.com/questions/402377/using-getopts-in-bash-shell-script-to-get-long-and-short-command-line-options</a><br><br>Options=$@<br>Optnum=$#<br><br>_usage() {<br>    #--------------------------------------------<br>    # Shows how use.<br>cat <<EOF<br>render $Options<br>$*<br>        Usage: render <[options]> file<br><br>          file       Is a filename with extension *.Rmd.<br><br>        Options:<br>                -h   --help           Show this message<br>                -p   --purl           To purl the file<br><br>EOF<br>}<br>if [ $# = 0 ]; then _usage; fi<br><br>#-----------------------------------------------------------------------------<br># NOTE: This requires GNU getopt. On Mac OS X and FreeBSD, you have to<br># install this separately.<br><br>TEMP=`getopt -o hp --long help,purl -n 'render' -- "$@"`<br>if [ $? != 0 ] ; then echo "Terminating." >&2 ; exit 1 ; fi<br><br># Note the quotes around `$TEMP': they are essential!<br>eval set -- "$TEMP"<br><br>PURL=<br>while true; do<br>    case "$1" in<br>        -h | --help )<br>            _usage<br>            break<br>            exit 1<br>            ;;<br>        -p | --purl )<br>            PURL=true<br>            shift<br>            ;;<br>        -- )<br>            shift; break ;;<br>        * )<br>            _usage<br>            break<br>            exit 1<br>            ;;<br>    esac<br>done<br><br>INPUT=$1<br>case "$INPUT" in<br>    *.Rmd ) <br>        echo; echo "Running rmarkdown::render(\"$INPUT\")."; echo<br>        Rscript -e "require(knitr); require(rmarkdown); render(\"$INPUT\")"<br>        ;;<br>    *)<br>        echo "The file $INPUT has a non supported file extension."<br>        exit 1<br>        ;;<br>esac<br><br>if [[ "$PURL" == "true" ]]<br>then<br>    purl -n $INPUT<br>fi<br><br>##-----------------------------------------------------------------------------<br><br>## Para fazer em batelada.<br>## for file in `ls *.Rmd`<br>## do<br>##    rmarkdownRender -p $file<br>## done<br><br></span></span></div><span style="color:rgb(11,83,148)"><span style="font-family:monospace,monospace">​</span></span><div class="gmail_default" style="font-family:trebuchet ms,sans-serif;display:inline"><span style="color:rgb(11,83,148)"><span style="font-family:monospace,monospace">​## FIM DO ARQUIVO render​</span></span><br><br><br>Esse arquivo "render" você pode deixar na sua pasta "/bin" do linux. Tem que dar permissão de execussão. Suponha que o arquivo seja criado num lugar qualquer então execute esses passos.<br><br><span style="font-family:monospace,monospace">$ ls -l render               ## Lista permissões.<br>$ chmod +x render            ## Permite execução.<br>$ ls -l render               ## Lista novamente.<br>$ sudo cp render /bin        ## Copia para a pasta /bin<br>$ render nome_do_arquivo.Rmd ## Modo de usar.</span><br><br></div><div class="gmail_default" style="font-family:trebuchet ms,sans-serif;display:inline">Eu na verdade prefiro deixar meus shell numa pasta própria ao inves da /bin. Vamos supor que seja a /home/bashs. Você só precisa adicionar o PATH ao conjunto de paths monitorados. Se faz isso incluindo a seguinte linha dentro do seu arquivo /home/walmes/.bashrc<br><br><span style="font-family:monospace,monospace">export PATH=$PATH:/home/walmes/bashs/</span><br><br></div><div class="gmail_default" style="font-family:trebuchet ms,sans-serif;display:inline">À disposição.<br></div><div class="gmail_default" style="font-family:trebuchet ms,sans-serif;display:inline">Walmes.<br></div></div>