Download the following <ahref="https://app-learninglab.inria.fr/gitlab/learning-lab/mooc-rr-ressources/raw/master/module2/ressources/replicable_article/replicable_article.tgz">archive</a>, untar it and simply <code>make</code> to generate the
Download the following <ahref="https://app-learninglab.inria.fr/gitlab/learning-lab/mooc-rr-ressources/raw/master/module2/ressources/replicable_article/replicable_article.tgz">archive</a>, uncompress it and simply <code>make</code> to generate the
article. You should then be able to open the <ahref="https://app-learninglab.inria.fr/gitlab/learning-lab/mooc-rr-ressources/blob/master/module2/ressources/replicable_article/article.pdf">resulting article</a>. This
article. You should then be able to open the <ahref="https://app-learninglab.inria.fr/gitlab/learning-lab/mooc-rr-ressources/blob/master/module2/ressources/replicable_article/article.pdf">resulting article</a>. This
is summarized in the following command:
is summarized in the following command:
</p>
</p>
...
@@ -356,7 +349,7 @@ command line to load your personal emacs configuration.</li>
...
@@ -356,7 +349,7 @@ command line to load your personal emacs configuration.</li>
</ul>
</ul>
<p>
<p>
Finally, when you'll be tired of always reexecuting all the source
Finally, when you'll be tired of always re-executing all the source
code when exporting, just look for the following line in <ahref="https://app-learninglab.inria.fr/gitlab/learning-lab/mooc-rr-ressources/blob/master/module2/ressources/replicable_article/article.org">article.org</a>:
code when exporting, just look for the following line in <ahref="https://app-learninglab.inria.fr/gitlab/learning-lab/mooc-rr-ressources/blob/master/module2/ressources/replicable_article/article.org">article.org</a>:
<listyle="margin-bottom:0;"><ahref="https://app-learninglab.inria.fr/gitlab/learning-lab/mooc-rr-ressources/blob/master/module2/ressources/rr_org/journal.org">Common and step-by-step emacs shortcuts for our <i>reproducible research</i> configuration</a></li>
<listyle="margin-bottom:0;"><ahref="https://app-learninglab.inria.fr/gitlab/learning-lab/mooc-rr-ressources/blob/master/module2/ressources/rr_org/journal.org">Common and step-by-step emacs shortcuts for our <i>reproducible research</i> configuration</a></li>
<listyle="margin-bottom:0;"><ahref="https://www.gnu.org/software/emacs/refcards/pdf/refcard.pdf">The official GNU emacs refcard</a></li>
<listyle="margin-bottom:0;"><ahref="https://www.gnu.org/software/emacs/refcards/pdf/refcard.pdf">The official GNU emacs refcard</a></li>
...
@@ -395,9 +387,9 @@ cheat-sheats. Here is a selection in case it helps:
...
@@ -395,9 +387,9 @@ cheat-sheats. Here is a selection in case it helps:
<listyle="margin-bottom:0;"><ahref="https://app-learninglab.inria.fr/gitlab/learning-lab/mooc-rr-ressources/blob/master/module2/ressources/rr_org/journal.org">Common and step-by-step org-mode shortcuts for our <i>reproducible research</i> configuration</a></li>
<listyle="margin-bottom:0;"><ahref="https://app-learninglab.inria.fr/gitlab/learning-lab/mooc-rr-ressources/blob/master/module2/ressources/rr_org/journal.org">Common and step-by-step org-mode shortcuts for our <i>reproducible research</i> configuration</a></li>
<listyle="margin-bottom:0;"><ahref="https://orgmode.org/worg/orgcard.html">The official org-mode refcard</a></li>
<listyle="margin-bottom:0;"><ahref="https://orgmode.org/worg/orgcard.html">The official org-mode refcard</a></li>
...
@@ -406,35 +398,40 @@ cheat-sheats. Here is a selection in case it helps:
...
@@ -406,35 +398,40 @@ cheat-sheats. Here is a selection in case it helps:
<listyle="margin-bottom:0;"><ahref="https://github.com/dfeich/org-babel-examples">Many examples illustrating the use of different languages in org-mode</a></li>
<listyle="margin-bottom:0;"><ahref="https://github.com/dfeich/org-babel-examples">Many examples illustrating the use of different languages in org-mode</a></li>
The version numbers you get will depend on the distribution you are
The version numbers you get will depend on the distribution you are
running. _You really want to make sure you do not rely on org-mode 8_,
running. _You really want to make sure you do not rely on org-mode 8_,
which is now deprecated.
which is now deprecated.
*** Mac OS X
** Mac OS X
- *Option 1*: Install the =.dmg= file from [[http://vgoulet.act.ulaval.ca/][Vincent Goulet]]:
- *Option 1*: Install the =.dmg= file from [[http://vgoulet.act.ulaval.ca/][Vincent Goulet]]:
https://vigou3.github.io/emacs-modified-macos/. It ships with recent
https://vigou3.github.io/emacs-modified-macos/. It ships with recent
versions:
versions:
...
@@ -73,17 +75,16 @@ which is now deprecated.
...
@@ -73,17 +75,16 @@ which is now deprecated.
brew install auctex # The name may be slightly more complicated here
brew install auctex # The name may be slightly more complicated here
brew install wget
brew install wget
#+end_src
#+end_src
*** Windows
** Windows
Install the =.exe= file from [[http://vgoulet.act.ulaval.ca/][Vincent Goulet]]:
Install the =.exe= file from [[http://vgoulet.act.ulaval.ca/][Vincent Goulet]]:
https://vigou3.github.io/emacs-modified-windows/. It ships with recent
https://vigou3.github.io/emacs-modified-windows/. It ships with recent
versions:
versions:
- Emacs 26.1
- Emacs 26.1
- Org-mode 9.1.13
- Org-mode 9.1.13
- ESS 17.11
- ESS 17.11
** TODO A simple "/reproducible research/" emacs configuration
* A simple "/reproducible research/" emacs configuration
#+BEGIN_QUOTE
This section is illustrated in a video tutorial (in French). Watching
There will be a mini video illustrating these steps at some point
it before following the instructions given in this section may help.
#+END_QUOTE
Emacs comes with very basic default configuration and it appears like
Emacs comes with very basic default configuration and it appears like
everyone has its own taste. You will for example find [[https://www.emacswiki.org/emacs/StarterKits][here]] several
everyone has its own taste. You will for example find [[https://www.emacswiki.org/emacs/StarterKits][here]] several
...
@@ -91,10 +92,10 @@ default Emacs configurations that reflect the preferences of their
...
@@ -91,10 +92,10 @@ default Emacs configurations that reflect the preferences of their
creators. Likewise the configuration of Org-Mode is incredibly
creators. Likewise the configuration of Org-Mode is incredibly
flexible (see for example [[https://orgmode.org/worg/org-configs/index.html][the org-mode website]] for more
flexible (see for example [[https://orgmode.org/worg/org-configs/index.html][the org-mode website]] for more
references). In the context of this MOOC, we propose you a relatively
references). In the context of this MOOC, we propose you a relatively
minimalistic one that is rather "/reproducible research/" oriented by
minimalist one that is rather "/reproducible research/" oriented by
adding a few org-mode specific configurations.
adding a few org-mode specific configurations.
*** Step 0: Backup and download our configuration
** Step 0: Backup and download our configuration
The procedure we propose will wipe your already existing custom emacs
The procedure we propose will wipe your already existing custom emacs
configuration if you already have one. *You should thus beforehand make
configuration if you already have one. *You should thus beforehand make
a backup of =~/.emacs= and of =~/.emacs.d/init.el=* (if these file
a backup of =~/.emacs= and of =~/.emacs.d/init.el=* (if these file
...
@@ -117,7 +118,7 @@ tar tzf rr_org_archive.tgz
...
@@ -117,7 +118,7 @@ tar tzf rr_org_archive.tgz
: rr_org/init.el
: rr_org/init.el
: rr_org/journal.org
: rr_org/journal.org
*** Step 1: Prepare your journal
** Step 1: Prepare your journal
Create an =org/= directory in the top of your home:
Create an =org/= directory in the top of your home:
#+begin_src sh :results output :exports both
#+begin_src sh :results output :exports both
mkdir -p ~/org/
mkdir -p ~/org/
...
@@ -127,13 +128,13 @@ file will be your laboratory notebook and all the notes you will
...
@@ -127,13 +128,13 @@ file will be your laboratory notebook and all the notes you will
capture with =C-c c= will go automatically go in this file. The first
capture with =C-c c= will go automatically go in this file. The first
entry of this notebook is populated with [[https://app-learninglab.inria.fr/gitlab/learning-lab/mooc-rr-ressources/blob/master/module2/ressources/rr_org/journal.org][many emacs shortcuts]] that you
entry of this notebook is populated with [[https://app-learninglab.inria.fr/gitlab/learning-lab/mooc-rr-ressources/blob/master/module2/ressources/rr_org/journal.org][many emacs shortcuts]] that you
should give a try.
should give a try.
*** Step 2: Set up Emacs configuration
** Step 2: Set up Emacs configuration
Copy =rr_org/init.el= in your =~/.emacs.d/= directory.
Copy =rr_org/init.el= in your =~/.emacs.d/= directory.
Alternatively, if you do not want to mess with your already existing
Alternatively, if you do not want to mess with your already existing
emacs configuration, you may launch emacs with this specific
emacs configuration, you may launch emacs with this specific
configuration with the following command: =emacs -q -l rr_org/init.el=.
configuration with the following command: =emacs -q -l rr_org/init.el=.
*** Step 3: Check whether the installation is working or not
** Step 3: Check whether the installation is working or not
Open a new instance of Emacs and open a =foo.org= file. Copy the
Open a new instance of Emacs and open a =foo.org= file. Copy the
following lines in this file:
following lines in this file:
: #+begin_src shell :session foo :results output :exports both
: #+begin_src shell :session foo :results output :exports both
...
@@ -151,16 +152,15 @@ In the video, we already have demonstrated the main features and
...
@@ -151,16 +152,15 @@ In the video, we already have demonstrated the main features and
shortcuts of emacs/org-mode that will help you maintain a document and
shortcuts of emacs/org-mode that will help you maintain a document and
benefit from literate programming. The list of features and shortcuts
benefit from literate programming. The list of features and shortcuts
is demonstrated in the [[https://app-learninglab.inria.fr/gitlab/learning-lab/mooc-rr-ressources/blob/master/module2/ressources/rr_org/journal.org][first entry of your labbook]].
is demonstrated in the [[https://app-learninglab.inria.fr/gitlab/learning-lab/mooc-rr-ressources/blob/master/module2/ressources/rr_org/journal.org][first entry of your labbook]].
*** Step 4: Open and play with your journal:
** Step 4: Open and play with your journal:
In step 1, you were told to create an journal in
In step 1, you were told to create an journal in
=~org/journal.org=. First you probably want to make sure this file is
=~org/journal.org=. First you probably want to make sure this file is
backed up in a revision control system like git. We leave it up to set
backed up in a revision control system like git. We leave it up to set
this up but if you have any trouble, feel free to ask on the FUN
this up but if you have any trouble, feel free to ask on the FUN
forums.
forums.
** TODO A stub of replicable article
* A stub of replicable article
#+BEGIN_QUOTE
This section is illustrated in a video tutorial (in French). Watching
There will be a mini video illustrating these steps at some point
it before following the instructions given in this section may help.
#+END_QUOTE
Remember, you need a working LaTeX and R environment. If you can't
Remember, you need a working LaTeX and R environment. If you can't
open a terminal and run the commands =R=, =pdflatex=, and =python=, you will not be
open a terminal and run the commands =R=, =pdflatex=, and =python=, you will not be
...
@@ -175,7 +175,7 @@ make -C replicable_article/ all replicable_article.tgz
...
@@ -175,7 +175,7 @@ make -C replicable_article/ all replicable_article.tgz
#+RESULTS:
#+RESULTS:
Download the following [[https://app-learninglab.inria.fr/gitlab/learning-lab/mooc-rr-ressources/raw/master/module2/ressources/replicable_article/replicable_article.tgz][archive]], untar it and simply =make= to generate the
Download the following [[https://app-learninglab.inria.fr/gitlab/learning-lab/mooc-rr-ressources/raw/master/module2/ressources/replicable_article/replicable_article.tgz][archive]], uncompress it and simply =make= to generate the
article. You should then be able to open the [[https://app-learninglab.inria.fr/gitlab/learning-lab/mooc-rr-ressources/blob/master/module2/ressources/replicable_article/article.pdf][resulting article]]. This
article. You should then be able to open the [[https://app-learninglab.inria.fr/gitlab/learning-lab/mooc-rr-ressources/blob/master/module2/ressources/replicable_article/article.pdf][resulting article]]. This
is summarized in the following command:
is summarized in the following command:
#+begin_src sh :results output :exports both
#+begin_src sh :results output :exports both
...
@@ -196,7 +196,7 @@ tar zxf replicable.tgz; cd replicable; make ; evince article.pdf
...
@@ -196,7 +196,7 @@ tar zxf replicable.tgz; cd replicable; make ; evince article.pdf
system-wide. In that case, try to remove the =-q= in the previous
system-wide. In that case, try to remove the =-q= in the previous
command line to load your personal emacs configuration.
command line to load your personal emacs configuration.
Finally, when you'll be tired of always reexecuting all the source
Finally, when you'll be tired of always re-executing all the source
code when exporting, just look for the following line in [[https://app-learninglab.inria.fr/gitlab/learning-lab/mooc-rr-ressources/blob/master/module2/ressources/replicable_article/article.org][article.org]]:
code when exporting, just look for the following line in [[https://app-learninglab.inria.fr/gitlab/learning-lab/mooc-rr-ressources/blob/master/module2/ressources/replicable_article/article.org][article.org]]:
#+BEGIN_EXAMPLE
#+BEGIN_EXAMPLE
# #+PROPERTY: header-args :eval never-export
# #+PROPERTY: header-args :eval never-export
...
@@ -227,9 +227,12 @@ channel with many step by step emacs tutorials]].
...
@@ -227,9 +227,12 @@ channel with many step by step emacs tutorials]].
[[http://company-mode.github.io/][Company-mode]] is a text completion framework for Emacs. It allows to
[[http://company-mode.github.io/][Company-mode]] is a text completion framework for Emacs. It allows to
have smart completion in emacs for the most common languages. If you
have smart completion in emacs for the most common languages. If you
feel this is needed, you should follow the instructions from the
feel this is needed, you should follow the instructions from the
official webpage: http://company-mode.github.io/
official Web page: http://company-mode.github.io/
*** Magit
*** Magit
[[https://magit.vc/][Magit]] is an emacs interface for Git. It is very powerfull and we use
Magit]] is an emacs interface for Git. It is briefly illustrated in a
video tutorial.
It is very powerful and we use
it on a daily basis but you should definitely understand what git does
it on a daily basis but you should definitely understand what git does
behind the scene beforehand. If you feel this would be useful for you,
behind the scene beforehand. If you feel this would be useful for you,