emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: John Hendy <jw.hendy@gmail.com>
To: emacs-orgmode <emacs-orgmode@gnu.org>
Subject: Re: :dir argument does not seem to be working
Date: Fri, 10 Aug 2012 16:32:59 -0500	[thread overview]
Message-ID: <CA+M2ft9rWNXqBiShRDAonEhLH64-HFiMc6QnsKUZEQ4u-RTryg@mail.gmail.com> (raw)
In-Reply-To: <CA+M2ft_+s0fiRPm2OFVT9ErvNLv3_ew6QRZ_vTt3_AZfZo8jCQ@mail.gmail.com>

On Fri, Aug 10, 2012 at 3:13 PM, John Hendy <jw.hendy@gmail.com> wrote:
> On Fri, Aug 10, 2012 at 3:05 PM, John Hendy <jw.hendy@gmail.com> wrote:
>> Here's a hopefully reproducible example:
>>
>> ----------
>>
>> * Test
>>
>> #+header: :dir C:/Users/username/Desktop :file test.png
>> #+begin_src R :session R :results output graphics :exports results
>> setwd("C:/Users/username/Documents")
>> x <- 1:10
>> y <- x^2
>> plot(x,y)
>> #+end_src
>>
>> ----------
>>
>> I prefer to use R on Linux, but need to stay in Windows at work
>> sometimes. I'm trying to export my plots to a different directory than
>> the org file I'm using. I tend to start R in
>> "C:/Users/username/Documents" on Windows 7 because that's where I set
>> my library directory and R has trouble loading things if I don't start
>> there first, load my libraries, and then move to my data directory.
>>
>> In any case, for the above, when I switch to the R session called =R=,
>> and do =getwd()= I get C:/Users/username/Documents, which is where the
>> png ends up, not on the Desktop.
>>
>> Is this something in my usage I'm doing wrong?
>>
>>
>> Thanks,
>> John
>
> Oddly, the first time I now open this file and execute the block, the
> file shows up on the Desktop. If I delete it and re-execute, it puts
> it in C:/Users/username/Documents! Why would this be? I used =setwd()=
> above just to make sure R was elsewhere than the Desktop because I
> have another file in which I thought :dir was working properly, but in
> fact it was just the default R dir and so the plots were going there
> anywhere. Changing the working dir caused the :dir on that block to
> reveal that it wasn't working after all.
>
> In the above, even removing the =setwd()= line produces the same
> behavior. First time creates file on Desktop, subsequent times puts it
> in Documents.

I read the bottom notes in the manual about :dir and it states that
once the session is started when using :session in the header, :dir
won't change the default directory... so it seems that the above is
the behavior to be expected. Sorry to have missed that.

I've worked around by simply using setwd() to change to my data
directory and read the files, and then setwd() again to switch to the
directory where I want my plots.

I'm still having an issue, though...

Here is  my block:

----------
#+name: test
#+header: :width 9 :height 6 :file test.pdf :dir ~/Desktop
#+begin_src R :session model :results output graphics :exports results
setwd("~/Desktop")
x <- 1:10
y <- x^2
plot(x,y)
#+end_src

#+RESULTS: test
[[file:/home/jwhendy/Desktop/test.pdf]]
---------

For some reason, however, when exporting the .tex file just contains this:

---------
\includegraphics[width=.9\linewidth]{test.pdf}
---------

For some reason LaTeX isn't picking up the director argument from [[file:/...]]

If I use the whole path in :file, it works correctly. I was trying to
get around having to type my full path each time with either :dir or
setting the R working directory. Is this not possible?  Is it only
possible to set the file via the relative path to the directory where
the .org file resides? This is probably fine in most cases, but
sometimes the relative path is just as long as the full path
(depending on how deep one is the relative path might be
../../../../../dir vs. just typing ~/dir).

Thanks for any input on what I'm missing.


Thanks,
John

      reply	other threads:[~2012-08-10 21:33 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-08-10 20:05 :dir argument does not seem to be working John Hendy
2012-08-10 20:13 ` John Hendy
2012-08-10 21:32   ` John Hendy [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CA+M2ft9rWNXqBiShRDAonEhLH64-HFiMc6QnsKUZEQ4u-RTryg@mail.gmail.com \
    --to=jw.hendy@gmail.com \
    --cc=emacs-orgmode@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).