# Should git init ? -------------------------------------------------------
if(init){gert::git_init(projname)}
# Generating TODO ---------------------------------------------------------
file.create(file.path(projname,"TODO.txt"))
sink(file.path(projname,"TODO.txt"))
cat("Welcome!
Project name: N/A
Notes
-----
")
sink()
# Generating a README -----------------------------------------------------
file.create(file.path(projname,"README.md"))
sink(file.path(projname,"README.md"))
cat("> Welcome to Your project !
Description of the project's architecture :
- `README.md` : The intro file is used to provide project orientation. The file defines project objectives and is intended to introduce project data, source code and configurations for repeatable research. The md file format is that of a basic text or markdown file. When saved to GitHub, it will be used to create an HTML project wiki.
- `TODO.txt` : A note file on a project's development or implementation status with a list of bugs and future improvement needs.
- `cache` : The cache is used to store data output.
- `data` : The data directory stores all data inputs in raw format.
- `docs` : Here you can store any source or reference material about the project.
- `img` : Used to store image output, including Rplots, image files or gif animations.
- `R` : R source code (Plain R files or Rmd/Qmd notebooks)
- `report` : Used to store output tables and reports. R is capable of supporting a broad range of outputs including Word, Powerpoint, pdf, LaTeX and HTML.
- `scripts` : Scripts other than R (SQL, python...)")
sink()
# Generating an Rmd notebook ---------------------------------------------------
InraeThemes est une collection non officielle de templates, thèmes et autres éléments graphiques basés sur des formats en lien avec R et en accords avec la charte graphique INRAE.
...
...
@@ -78,6 +78,7 @@ InraeThemes propose ces éléments :
- Un template de rapport basé sur la classe `book` de Quarto et proposant 3 formats de sortie : HTML, PDF et DOCX
- Deux templates de présentation et de rapports au format Rmarkdown
- Un template de carte de visite au format Rmarkdown
- Un template de projet Rstudio suivant un certain nombre de "bonnes pratiques"
## Palette de couleurs
...
...
@@ -227,6 +228,20 @@ Ces deux templates sont accessibles via l'interface de création de documents Rm
Une carte de visite, basée sur {pagedown}, avec logo INRAE peut-être produite en plusieurs exemplaires par page (nombre paramétrable) via l'interface de création de documents Rmarkdown sous Rstudio.
# Création d'un répertoire d'analyse
Nous proposons dans ce package un template de projet pour l'analyse de
"markdown":"# Preface {.unnumbered}\n\nThis is a Quarto book. \n\nTo learn more about Quarto books visit <https://quarto.org/docs/books>.\n\n::: {.cell}\n\n```{.r .cell-code}\n1 + 1\n```\n\n::: {.cell-output-stdout}\n```\n[1] 2\n```\n:::\n:::\n\nSed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?\n\nSed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?",
"markdown":"# Preface {.unnumbered}\n\nThis is a Quarto book. \n\nTo learn more about Quarto books visit <https://quarto.org/docs/books>.\n\n::: {.cell}\n\n```{.r .cell-code}\n1 + 1\n```\n\n::: {.cell-output-stdout}\n```\n[1] 2\n```\n:::\n:::\n\nSed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?\n\nSed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?",
"markdown":"# Preface {.unnumbered}\n\nThis is a Quarto book. \n\nTo learn more about Quarto books visit <https://quarto.org/docs/books>.\n\n::: {.cell}\n\n```{.r .cell-code}\n1 + 1\n```\n\n::: {.cell-output-stdout}\n```\n[1] 2\n```\n:::\n:::\n\nSed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?\n\nSed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?",
"markdown":"# Introduction\n\nThis is a book created from markdown and executable code.\n\nSee @knuth84 for additional discussion of literate programming.\n\n::: {.cell}\n\n```{.r .cell-code}\n1 + 1\n```\n\n::: {.cell-output-stdout}\n```\n[1] 2\n```\n:::\n:::\n",
"markdown":"# Introduction\n\nThis is a book created from markdown and executable code.\n\nSee @knuth84 for additional discussion of literate programming.\n\n::: {.cell}\n\n```{.r .cell-code}\n1 + 1\n```\n\n::: {.cell-output-stdout}\n```\n[1] 2\n```\n:::\n:::\n",
"markdown":"# Introduction\n\nThis is a book created from markdown and executable code.\n\nSee @knuth84 for additional discussion of literate programming.\n\n::: {.cell}\n\n```{.r .cell-code}\n1 + 1\n```\n\n::: {.cell-output-stdout}\n```\n[1] 2\n```\n:::\n:::\n",
!function(t,e){"object"==typeofexports&&"object"==typeofmodule?module.exports=e():"function"==typeofdefine&&define.amd?define([],e):"object"==typeofexports?exports.ClipboardJS=e():t.ClipboardJS=e()}(this,function(){returnn={686:function(t,e,n){"use strict";n.d(e,{default:function(){returno}});vare=n(279),i=n.n(e),e=n(370),u=n.n(e),e=n(817),c=n.n(e);functiona(t){try{returndocument.execCommand(t)}catch(t){return}}varf=function(t){t=c()(t);returna("cut"),t};varl=function(t){vare,n,o,r=1<arguments.length&&void0!==arguments[1]?arguments[1]:{container:document.body},i="";return"string"==typeoft?(e=t,n="rtl"===document.documentElement.getAttribute("dir"),(o=document.createElement("textarea")).style.fontSize="12pt",o.style.border="0",o.style.padding="0",o.style.margin="0",o.style.position="absolute",o.style[n?"right":"left"]="-9999px",n=window.pageYOffset||document.documentElement.scrollTop,o.style.top="".concat(n,"px"),o.setAttribute("readonly",""),o.value=e,o=o,r.container.appendChild(o),i=c()(o),a("copy"),o.remove()):(i=c()(t),a("copy")),i};functionr(t){return(r="function"==typeofSymbol&&"symbol"==typeofSymbol.iterator?function(t){returntypeoft}:function(t){returnt&&"function"==typeofSymbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeoft})(t)}vars=function(){vart=0<arguments.length&&void0!==arguments[0]?arguments[0]:{},e=t.action,n=void0===e?"copy":e,o=t.container,e=t.target,t=t.text;if("copy"!==n&&"cut"!==n)thrownewError('Invalid "action" value, use either "copy" or "cut"');if(void0!==e){if(!e||"object"!==r(e)||1!==e.nodeType)thrownewError('Invalid "target" value, use a valid Element');if("copy"===n&&e.hasAttribute("disabled"))thrownewError('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if("cut"===n&&(e.hasAttribute("readonly")||e.hasAttribute("disabled")))thrownewError('Invalid "target" attribute. You can\'t cut text from elements with "readonly" or "disabled" attributes')}returnt?l(t,{container:o}):e?"cut"===n?f(e):l(e,{container:o}):void0};functionp(t){return(p="function"==typeofSymbol&&"symbol"==typeofSymbol.iterator?function(t){returntypeoft}:function(t){returnt&&"function"==typeofSymbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeoft})(t)}functiond(t,e){for(varn=0;n<e.length;n++){varo=e[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"ino&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}functiony(t,e){return(y=Object.setPrototypeOf||function(t,e){returnt.__proto__=e,t})(t,e)}functionh(n){varo=function(){if("undefined"==typeofReflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeofProxy)return!0;try{returnDate.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch(t){return!1}}();returnfunction(){vart,e=m(n);returnt=o?(t=m(this).constructor,Reflect.construct(e,arguments,t)):e.apply(this,arguments),e=this,!(t=t)||"object"!==p(t)&&"function"!=typeoft?function(t){if(void0!==t)returnt;thrownewReferenceError("this hasn't been initialised - super() hasn't been called")}(e):t}}functionm(t){return(m=Object.setPrototypeOf?Object.getPrototypeOf:function(t){returnt.__proto__||Object.getPrototypeOf(t)})(t)}functionv(t,e){t="data-clipboard-".concat(t);if(e.hasAttribute(t))returne.getAttribute(t)}varo=function(){!function(t,e){if("function"!=typeofe&&null!==e)thrownewTypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&y(t,e)}(r,i());vart,e,n,o=h(r);functionr(t,e){varn;returnfunction(t){if(!(tinstanceofr))thrownewTypeError("Cannot call a class as a function")}(this),(n=o.call(this)).resolveOptions(e),n.listenClick(t),n}returnt=r,n=[{key:"copy",value:function(t){vare=1<arguments.length&&void0!==arguments[1]?arguments[1]:{container:document.body};returnl(t,e)}},{key:"cut",value:function(t){returnf(t)}},{key:"isSupported",value:function(){vart=0<arguments.length&&void0!==arguments[0]?arguments[0]:["copy","cut"],t="string"==typeoft?[t]:t,e=!!document.queryCommandSupported;returnt.forEach(function(t){e=e&&!!document.queryCommandSupported(t)}),e}}],(e=[{key:"resolveOptions",value:function(){vart=0<arguments.length&&void0!==arguments[0]?arguments[0]:{};this.action="function"==typeoft.action?t.action:this.defaultAction,this.target="function"==typeoft.target?t.target:this.defaultTarget,this.text="function"==typeoft.text?t.text:this.defaultText,this.container="object"===p(t.container)?t.container:document.body}},{key:"listenClick",value:function(t){vare=this;this.listener=u()(t,"click",function(t){returne.onClick(t)})}},{key:"onClick",value:function(t){vare=t.delegateTarget||t.currentTarget,n=this.action(e)||"copy",t=s({action:n,container:this.container,target:this.target(e),text:this.text(e)});this.emit(t?"success":"error",{action:n,text:t,trigger:e,clearSelection:function(){e&&e.focus(),document.activeElement.blur(),window.getSelection().removeAllRanges()}})}},{key:"defaultAction",value:function(t){returnv("action",t)}},{key:"defaultTarget",value:function(t){t=v("target",t);if(t)returndocument.querySelector(t)}},{key:"defaultText",value:function(t){returnv("text",t)}},{key:"destroy",value:function(){this.listener.destroy()}}])&&d(t.prototype,e),n&&d(t,n),r}()},828:function(t){vare;"undefined"==typeofElement||Element.prototype.matches||((e=Element.prototype).matches=e.matchesSelector||e.mozMatchesSelector||e.msMatchesSelector||e.oMatchesSelector||e.webkitMatchesSelector),t.exports=function(t,e){for(;t&&9!==t.nodeType;){if("function"==typeoft.matches&&t.matches(e))returnt;t=t.parentNode}}},438:function(t,e,n){varu=n(828);functioni(t,e,n,o,r){vari=function(e,n,t,o){returnfunction(t){t.delegateTarget=u(t.target,n),t.delegateTarget&&o.call(e,t)}}.apply(this,arguments);returnt.addEventListener(n,i,r),{destroy:function(){t.removeEventListener(n,i,r)}}}t.exports=function(t,e,n,o,r){return"function"==typeoft.addEventListener?i.apply(null,arguments):"function"==typeofn?i.bind(null,document).apply(null,arguments):("string"==typeoft&&(t=document.querySelectorAll(t)),Array.prototype.map.call(t,function(t){returni(t,e,n,o,r)}))}},879:function(t,n){n.node=function(t){returnvoid0!==t&&tinstanceofHTMLElement&&1===t.nodeType},n.nodeList=function(t){vare=Object.prototype.toString.call(t);returnvoid0!==t&&("[object NodeList]"===e||"[object HTMLCollection]"===e)&&"length"int&&(0===t.length||n.node(t[0]))},n.string=function(t){return"string"==typeoft||tinstanceofString},n.fn=function(t){return"[object Function]"===Object.prototype.toString.call(t)}},370:function(t,e,n){varf=n(879),l=n(438);t.exports=function(t,e,n){if(!t&&!e&&!n)thrownewError("Missing required arguments");if(!f.string(e))thrownewTypeError("Second argument must be a String");if(!f.fn(n))thrownewTypeError("Third argument must be a Function");if(f.node(t))returnc=e,a=n,(u=t).addEventListener(c,a),{destroy:function(){u.removeEventListener(c,a)}};if(f.nodeList(t))returno=t,r=e,i=n,Array.prototype.forEach.call(o,function(t){t.addEventListener(r,i)}),{destroy:function(){Array.prototype.forEach.call(o,function(t){t.removeEventListener(r,i)})}};if(f.string(t))returnt=t,e=e,n=n,l(document.body,t,e,n);thrownewTypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList");varo,r,i,u,c,a}},817:function(t){t.exports=function(t){vare,n="SELECT"===t.nodeName?(t.focus(),t.value):"INPUT"===t.nodeName||"TEXTAREA"===t.nodeName?((e=t.hasAttribute("readonly"))||t.setAttribute("readonly",""),t.select(),t.setSelectionRange(0,t.value.length),e||t.removeAttribute("readonly"),t.value):(t.hasAttribute("contenteditable")&&t.focus(),n=window.getSelection(),(e=document.createRange()).selectNodeContents(t),n.removeAllRanges(),n.addRange(e),n.toString());returnn}},279:function(t){functione(){}e.prototype={on:function(t,e,n){varo=this.e||(this.e={});return(o[t]||(o[t]=[])).push({fn:e,ctx:n}),this},once:function(t,e,n){varo=this;functionr(){o.off(t,r),e.apply(n,arguments)}returnr._=e,this.on(t,r,n)},emit:function(t){for(vare=[].slice.call(arguments,1),n=((this.e||(this.e={}))[t]||[]).slice(),o=0,r=n.length;o<r;o++)n[o].fn.apply(n[o].ctx,e);returnthis},off:function(t,e){varn=this.e||(this.e={}),o=n[t],r=[];if(o&&e)for(vari=0,u=o.length;i<u;i++)o[i].fn!==e&&o[i].fn._!==e&&r.push(o[i]);returnr.length?n[t]=r:deleten[t],this}},t.exports=e,t.exports.TinyEmitter=e}},r={},o.n=function(t){vare=t&&t.__esModule?function(){returnt.default}:function(){returnt};returno.d(e,{a:e}),e},o.d=function(t,e){for(varnine)o.o(e,n)&&!o.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},o.o=function(t,e){returnObject.prototype.hasOwnProperty.call(t,e)},o(686).default;functiono(t){if(r[t])returnr[t].exports;vare=r[t]={exports:{}};returnn[t](e,e.exports,o),e.exports}varn,r});
"markdown":"# Summary\n\nIn summary, this book has no content whatsoever.\n\n::: {.cell}\n\n```{.r .cell-code}\n1 + 1\n```\n\n::: {.cell-output-stdout}\n```\n[1] 2\n```\n:::\n:::\n\n::: {.cell}\n\n```{.r .cell-code}\nlibrary(InraeThemes)\nlibrary(ggplot2)\n\ndata(\"example_datasets\")\n\nggplot(example_datasets$cars, aes(x = mpg, fill = cyl,colour = cyl)) +\n geom_density(alpha = 0.75) +\n scale_fill_inrae() +\n scale_color_inrae() +\n labs(fill = \"Cylinders\", colour = \"Cylinders\", x = \"MPG\", y = \"Density\") +\n theme_inrae(base_family = \"\")\n```\n\n::: {.cell-output-display}\n\n:::\n:::\n\nSed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?\n\nSed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?",
"markdown":"# Summary\n\nIn summary, this book has no content whatsoever.\n\n::: {.cell}\n\n```{.r .cell-code}\n1 + 1\n```\n\n::: {.cell-output-stdout}\n```\n[1] 2\n```\n:::\n:::\n\n::: {.cell}\n\n```{.r .cell-code}\nlibrary(InraeThemes)\nlibrary(ggplot2)\n\ndata(\"example_datasets\")\n\nggplot(example_datasets$cars, aes(x = mpg, fill = cyl,colour = cyl)) +\n geom_density(alpha = 0.75) +\n scale_fill_inrae() +\n scale_color_inrae() +\n labs(fill = \"Cylinders\", colour = \"Cylinders\", x = \"MPG\", y = \"Density\") +\n theme_inrae(base_family = \"\")\n```\n\n::: {.cell-output-display}\n{width=672}\n:::\n:::\n\nSed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?\n\nSed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?",
"markdown":"# Summary\n\nIn summary, this book has no content whatsoever.\n\n::: {.cell}\n\n```{.r .cell-code}\n1 + 1\n```\n\n::: {.cell-output-stdout}\n```\n[1] 2\n```\n:::\n:::\n\n::: {.cell}\n\n```{.r .cell-code}\nlibrary(InraeThemes)\nlibrary(ggplot2)\n\ndata(\"example_datasets\")\n\nggplot(example_datasets$cars, aes(x = mpg, fill = cyl,colour = cyl)) +\n geom_density(alpha = 0.75) +\n scale_fill_inrae() +\n scale_color_inrae() +\n labs(fill = \"Cylinders\", colour = \"Cylinders\", x = \"MPG\", y = \"Density\") +\n theme_inrae(base_family = \"\")\n```\n\n::: {.cell-output-display}\n{fig-pos='H'}\n:::\n:::\n\nSed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?\n\nSed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?",