texi2dvi com TeX 3.14159265 (TeX Live 2015) em R não está funcionando

3

No passado eu estava usando

texi2dvi("ABC.tex", pdf = TRUE)

em R para produzir pdf de tex . No entanto, depois de usar

sudo apt-get update && sudo apt-get upgrade

Agora usando

texi2dvi("ABC.tex", pdf = TRUE)

gera o seguinte erro

Error in texi2dvi(file = file, pdf = TRUE, clean = clean, quiet = quiet,  : 
  Running 'texi2dvi' on 'ABC.tex' failed.
Messages:
mkdir: cannot create directory ‘Yaseen/XYZ’: No such file or directory
/usr/bin/texi2dvi: cannot create directory: Yaseen/XYZ

Meu nome de diretório também contém espaços (não posso mudar porque muitos diretórios têm espaços em seus nomes).

Por meio da navegação, deparei-me com o link que diz:

  

Para construir a documentação em PDF, você precisará de uma versão do TeX Live ou texinfo que inclua o texi2dvi (CUIDADO: o recente TeX Live e alguns texinfo RPMs, NÃO incluam o texi2dvi).

Minha tex --version output é

TeX 3.14159265 (TeX Live 2015)
kpathsea version 6.2.1
Copyright 2015 D.E. Knuth.
There is NO warranty.  Redistribution of this software is
covered by the terms of both the TeX copyright and
the Lesser GNU General Public License.
For more information about these matters, see the file
named COPYING and the TeX source.
Primary author of TeX: D.E. Knuth.

Qualquer ajuda para descobrir o problema será muito apreciada. Obrigado

Editado

Meu setwd() em R é

setwd(
  file.path(
    "/media"
    , "yaseen"
    , "D"
    , "Muhammad Yaseen"
  )
)

getwd()
[1] "/media/yaseen/D/Muhammad Yaseen"

e

texi2dvi("ABC.tex", pdf = TRUE)
    
por MYaseen208 05.07.2016 / 17:39

1 resposta

2

A mensagem de erro que você postou sugere que o caminho fornecido para o arquivo não existe. O Yaseen/XYZ existe? se não, crie primeiro e tente novamente.

Se os nomes dos diretórios contiverem espaços, tente escapar usando \ no comando:

path/to\ my\ files/

Ou use aspas ( " / ' ):

"path/to my files/"

Se você estiver fazendo isso a partir de R, certifique-se de usar \ para garantir que o caractere de escape seja transmitido:

texi2dvi("/media/yaseen/D/Muhammad\ Yaseen/ABC.tex", pdf = TRUE)

Editar: observe a documentação para isso em R ( ?texi2dvi ):

  

Existem várias versões do script texi2dvi no Unix-alikes e vários bugs foram vistos, alguns dos quais esse wrapper R funciona.

     

Um que estava presente no texi2dvi versão 4.8 (como fornecido no OS X) é que ele não funcionará corretamente para caminhos que contenham espaços, nem se o caminho absoluto para um arquivo contiver espaços.

Isso é obviamente um erro idiota, então a melhor solução é evitar caminhos com espaços.

    
por amc 05.07.2016 / 18:11

Tags