[R-br] Vetor de caracter como objeto em um pacote
Jose Claudio Faria
joseclaudio.faria em gmail.com
Domingo Setembro 22 06:58:15 BRT 2013
Pessoal,
Estou tentando eliminar a necessidade do script de inicialização no
arquivo "etc/Rprofile.site" do R para uso com o editor Tinn-R. Contudo
estou com uma dúvida que não estou conseguindo contornar e a
comunidade talvez possa ajudar.
Se coloco o script abaixo no arquivo de inicialização (Rprofile.site)
funciona perfeitamente:
trPaths <- paste(paste(Sys.getenv('APPDATA'),
'\\Tinn-R\\tmp\\',
sep=''),
c('',
'search.txt',
'objects.txt',
'file.r',
'selection.r',
'block.r',
'lines.r',
'reformat-input.r',
'reformat-output.r'),
sep='')
> trPaths
[1] "C:\\Users\\jcfaria\\AppData\\Roaming\\Tinn-R\\tmp\\"
[2] "C:\\Users\\jcfaria\\AppData\\Roaming\\Tinn-R\\tmp\\search.txt"
[3] "C:\\Users\\jcfaria\\AppData\\Roaming\\Tinn-R\\tmp\\objects.txt"
[4] "C:\\Users\\jcfaria\\AppData\\Roaming\\Tinn-R\\tmp\\file.r"
[5] "C:\\Users\\jcfaria\\AppData\\Roaming\\Tinn-R\\tmp\\selection.r"
[6] "C:\\Users\\jcfaria\\AppData\\Roaming\\Tinn-R\\tmp\\block.r"
[7] "C:\\Users\\jcfaria\\AppData\\Roaming\\Tinn-R\\tmp\\lines.r"
[8] "C:\\Users\\jcfaria\\AppData\\Roaming\\Tinn-R\\tmp\\reformat-input.r"
[9] "C:\\Users\\jcfaria\\AppData\\Roaming\\Tinn-R\\tmp\\reformat-output.r"
Se crio um ambiente e coloco as funções nele no arquivo Rprofile.site,
tambén funciona perfeitamente:
# Package in development: TinnRcom
library(utils)
old.path <- getwd()
# New version of TinnRcom package
TinnRcom <- new.env()
setwd('C:/Users/jcfaria/Desktop/pkgs/TinnR_new/R/')
source('trArgs.R', local=TinnRcom)
source('trComplete.r', local=TinnRcom)
source('trCopy.R', local=TinnRcom)
source('trExport.data.frame.R', local=TinnRcom)
source('trExport.default.R', local=TinnRcom)
source('trExport.matrix.R', local=TinnRcom)
source('trExport.R', local=TinnRcom)
source('trObjList.R', local=TinnRcom)
source('trObjSearch.R', local=TinnRcom)
source('trStartIDE.R', local=TinnRcom)
source('trPaths.R', local=TinnRcom)
setwd(old.path)
attach(TinnRcom)
> trPaths
[1] "C:\\Users\\jcfaria\\AppData\\Roaming\\Tinn-R\\tmp\\"
[2] "C:\\Users\\jcfaria\\AppData\\Roaming\\Tinn-R\\tmp\\search.txt"
[3] "C:\\Users\\jcfaria\\AppData\\Roaming\\Tinn-R\\tmp\\objects.txt"
[4] "C:\\Users\\jcfaria\\AppData\\Roaming\\Tinn-R\\tmp\\file.r"
[5] "C:\\Users\\jcfaria\\AppData\\Roaming\\Tinn-R\\tmp\\selection.r"
[6] "C:\\Users\\jcfaria\\AppData\\Roaming\\Tinn-R\\tmp\\block.r"
[7] "C:\\Users\\jcfaria\\AppData\\Roaming\\Tinn-R\\tmp\\lines.r"
[8] "C:\\Users\\jcfaria\\AppData\\Roaming\\Tinn-R\\tmp\\reformat-input.r"
[9] "C:\\Users\\jcfaria\\AppData\\Roaming\\Tinn-R\\tmp\\reformat-output.r"
O problema que não estou conseguindo cotornar é ao colocar no novo
pacote (TinnRcom):
trPaths <- paste(paste(Sys.getenv('APPDATA'),
'\\Tinn-R\\tmp\\',
sep=''),
c('',
'search.txt',
'objects.txt',
'file.r',
'selection.r',
'block.r',
'lines.r',
'reformat-input.r',
'reformat-output.r'),
sep='')
na pasta "R" do pacote (juntamente com as funções) e declarar no
NAMESPACE assim:
export(trPaths)
Quando o pacote TinnRcom é carregado via
> library(TinnRcom)
o objeto trPaths não fica correto. Fica como abaixo:
> trPaths
[1] "\\Tinn-R\\tmp\\" "\\Tinn-R\\tmp\\search.txt"
[3] "\\Tinn-R\\tmp\\objects.txt" "\\Tinn-R\\tmp\\file.r"
[5] "\\Tinn-R\\tmp\\selection.r" "\\Tinn-R\\tmp\\block.r"
[7] "\\Tinn-R\\tmp\\lines.r" "\\Tinn-R\\tmp\\reformat-input.r"
[9] "\\Tinn-R\\tmp\\reformat-output.r"
ou seja, a parte
Sys.getenv('APPDATA')
não é interpretada.
Alguém teria alguma dica?
--
///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\
Jose Claudio Faria
Estatistica
UESC/DCET/Brasil
joseclaudio.faria at gmail.com
Telefones:
55(73)3680.5545 - UESC
55(73)9100.7351 - TIM
55(73)8817.6159 - OI
///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\
Mais detalhes sobre a lista de discussão R-br