update
|
@ -0,0 +1,115 @@
|
||||||
|
---
|
||||||
|
title: "MANUSCRIPT TITLE"
|
||||||
|
subtitle: "Supplementary Information"
|
||||||
|
submitjournal: "JOURNAL"
|
||||||
|
submitid:
|
||||||
|
lang: en
|
||||||
|
date: ""
|
||||||
|
# bibliography: [BB/Ref.bib, BB/localRef.bib]
|
||||||
|
affilstyle: alphabeta # number
|
||||||
|
author:
|
||||||
|
- name: Xxxxx Yyyy
|
||||||
|
affiliations:
|
||||||
|
- ref: kleac
|
||||||
|
# email: 13586740928@163.com
|
||||||
|
attributes:
|
||||||
|
corresponding: false
|
||||||
|
equal-contributor: true
|
||||||
|
role:
|
||||||
|
- data-curation: lead
|
||||||
|
- methodology: lead
|
||||||
|
- formalanalysis: lead
|
||||||
|
- writingoriginal: equal
|
||||||
|
- writingediting: eqaul
|
||||||
|
- visualisation: supporting
|
||||||
|
- name: Ming Su
|
||||||
|
email: mingsu@rcees.ac.cn
|
||||||
|
url: https://drwater.net/team/ming-su/
|
||||||
|
role:
|
||||||
|
- conceptualization: lead
|
||||||
|
- methodology: supporting
|
||||||
|
- formalanalysis: lead
|
||||||
|
- writingoriginal: equal
|
||||||
|
- writingediting: equal
|
||||||
|
- visualisation: lead
|
||||||
|
- projectadmin: lead
|
||||||
|
- supervision
|
||||||
|
affiliations:
|
||||||
|
- ref: kleac
|
||||||
|
- ref: ucas
|
||||||
|
attributes:
|
||||||
|
corresponding: true
|
||||||
|
equal-contributor: true
|
||||||
|
- name: Min Yang
|
||||||
|
email: yangmin@rcees.ac.cn
|
||||||
|
affiliations:
|
||||||
|
- ref: kleac
|
||||||
|
- ref: ucas
|
||||||
|
attributes:
|
||||||
|
corresponding: true
|
||||||
|
affiliations:
|
||||||
|
- id: kleac
|
||||||
|
name: State Key Laboratory of Environmental Aquatic Chemistry, Research Center for Eco-Environmental Sciences, Chinese Academy of Sciences
|
||||||
|
# address: No. 18 Shuangqing Road
|
||||||
|
city: Beijing
|
||||||
|
postal-code: 100085
|
||||||
|
country: China
|
||||||
|
url: https://www.skleac.ac.cn
|
||||||
|
- id: ucas
|
||||||
|
name: University of Chinese Academy of Sciences
|
||||||
|
# address: No. 19A Yuquan Road
|
||||||
|
city: Beijing
|
||||||
|
postal-code: 100049
|
||||||
|
country: China
|
||||||
|
url: https://www.ucas.ac.cn
|
||||||
|
prefer-html: true
|
||||||
|
format:
|
||||||
|
# elsevier-html:
|
||||||
|
# toc: true
|
||||||
|
# css: _extensions/drwater/dwms/inst/css/style.css
|
||||||
|
# docx:
|
||||||
|
# reference-doc: _extensions/drwater/dwms/inst/word/MS.docx
|
||||||
|
pdf:
|
||||||
|
fontsize: 12pt
|
||||||
|
keep-md: false
|
||||||
|
keep-tex: true
|
||||||
|
filters:
|
||||||
|
# - latex-environment
|
||||||
|
- authoraffil
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
```{r}
|
||||||
|
#| include: false
|
||||||
|
#| cache: false
|
||||||
|
|
||||||
|
lang <- "en"
|
||||||
|
isRendering <- isTRUE(getOption("knitr.in.progress"))
|
||||||
|
require(tidyverse)
|
||||||
|
require(drwateR)
|
||||||
|
require(patchwork)
|
||||||
|
rmdify::rmd_init()
|
||||||
|
dwfun::init()
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
{{< pagebreak >}}
|
||||||
|
|
||||||
|
# Abstract {-}
|
||||||
|
|
||||||
|
|
||||||
|
{{< pagebreak >}}
|
||||||
|
|
||||||
|
|
||||||
|
{{< pagebreak >}}
|
||||||
|
|
||||||
|
<!-- {{< include _est.qmd >}} -->
|
||||||
|
|
||||||
|
# References {-}
|
||||||
|
|
||||||
|
::: {#refs}
|
||||||
|
:::
|
||||||
|
|
||||||
|
{{< pagebreak >}}
|
||||||
|
|
||||||
|
<!-- {{< include _nature.qmd >}} -->
|
|
@ -0,0 +1,280 @@
|
||||||
|
% Options for packages loaded elsewhere
|
||||||
|
% Options for packages loaded elsewhere
|
||||||
|
\PassOptionsToPackage{unicode}{hyperref}
|
||||||
|
\PassOptionsToPackage{hyphens}{url}
|
||||||
|
\PassOptionsToPackage{dvipsnames,svgnames,x11names}{xcolor}
|
||||||
|
%
|
||||||
|
\documentclass[
|
||||||
|
english,
|
||||||
|
12pt,
|
||||||
|
letterpaper,
|
||||||
|
DIV=11,
|
||||||
|
numbers=noendperiod]{scrartcl}
|
||||||
|
\usepackage{xcolor}
|
||||||
|
\usepackage{amsmath,amssymb}
|
||||||
|
\setcounter{secnumdepth}{-\maxdimen} % remove section numbering
|
||||||
|
\usepackage{iftex}
|
||||||
|
\ifPDFTeX
|
||||||
|
\usepackage[T1]{fontenc}
|
||||||
|
\usepackage[utf8]{inputenc}
|
||||||
|
\usepackage{textcomp} % provide euro and other symbols
|
||||||
|
\else % if luatex or xetex
|
||||||
|
\usepackage{unicode-math} % this also loads fontspec
|
||||||
|
\defaultfontfeatures{Scale=MatchLowercase}
|
||||||
|
\defaultfontfeatures[\rmfamily]{Ligatures=TeX,Scale=1}
|
||||||
|
\fi
|
||||||
|
\usepackage{lmodern}
|
||||||
|
\ifPDFTeX\else
|
||||||
|
% xetex/luatex font selection
|
||||||
|
\fi
|
||||||
|
% Use upquote if available, for straight quotes in verbatim environments
|
||||||
|
\IfFileExists{upquote.sty}{\usepackage{upquote}}{}
|
||||||
|
\IfFileExists{microtype.sty}{% use microtype if available
|
||||||
|
\usepackage[]{microtype}
|
||||||
|
\UseMicrotypeSet[protrusion]{basicmath} % disable protrusion for tt fonts
|
||||||
|
}{}
|
||||||
|
\makeatletter
|
||||||
|
\@ifundefined{KOMAClassName}{% if non-KOMA class
|
||||||
|
\IfFileExists{parskip.sty}{%
|
||||||
|
\usepackage{parskip}
|
||||||
|
}{% else
|
||||||
|
\setlength{\parindent}{0pt}
|
||||||
|
\setlength{\parskip}{6pt plus 2pt minus 1pt}}
|
||||||
|
}{% if KOMA class
|
||||||
|
\KOMAoptions{parskip=half}}
|
||||||
|
\makeatother
|
||||||
|
% Make \paragraph and \subparagraph free-standing
|
||||||
|
\makeatletter
|
||||||
|
\ifx\paragraph\undefined\else
|
||||||
|
\let\oldparagraph\paragraph
|
||||||
|
\renewcommand{\paragraph}{
|
||||||
|
\@ifstar
|
||||||
|
\xxxParagraphStar
|
||||||
|
\xxxParagraphNoStar
|
||||||
|
}
|
||||||
|
\newcommand{\xxxParagraphStar}[1]{\oldparagraph*{#1}\mbox{}}
|
||||||
|
\newcommand{\xxxParagraphNoStar}[1]{\oldparagraph{#1}\mbox{}}
|
||||||
|
\fi
|
||||||
|
\ifx\subparagraph\undefined\else
|
||||||
|
\let\oldsubparagraph\subparagraph
|
||||||
|
\renewcommand{\subparagraph}{
|
||||||
|
\@ifstar
|
||||||
|
\xxxSubParagraphStar
|
||||||
|
\xxxSubParagraphNoStar
|
||||||
|
}
|
||||||
|
\newcommand{\xxxSubParagraphStar}[1]{\oldsubparagraph*{#1}\mbox{}}
|
||||||
|
\newcommand{\xxxSubParagraphNoStar}[1]{\oldsubparagraph{#1}\mbox{}}
|
||||||
|
\fi
|
||||||
|
\makeatother
|
||||||
|
|
||||||
|
|
||||||
|
\usepackage{longtable,booktabs,array}
|
||||||
|
\usepackage{calc} % for calculating minipage widths
|
||||||
|
% Correct order of tables after \paragraph or \subparagraph
|
||||||
|
\usepackage{etoolbox}
|
||||||
|
\makeatletter
|
||||||
|
\patchcmd\longtable{\par}{\if@noskipsec\mbox{}\fi\par}{}{}
|
||||||
|
\makeatother
|
||||||
|
% Allow footnotes in longtable head/foot
|
||||||
|
\IfFileExists{footnotehyper.sty}{\usepackage{footnotehyper}}{\usepackage{footnote}}
|
||||||
|
\makesavenoteenv{longtable}
|
||||||
|
\usepackage{graphicx}
|
||||||
|
\makeatletter
|
||||||
|
\newsavebox\pandoc@box
|
||||||
|
\newcommand*\pandocbounded[1]{% scales image to fit in text height/width
|
||||||
|
\sbox\pandoc@box{#1}%
|
||||||
|
\Gscale@div\@tempa{\textheight}{\dimexpr\ht\pandoc@box+\dp\pandoc@box\relax}%
|
||||||
|
\Gscale@div\@tempb{\linewidth}{\wd\pandoc@box}%
|
||||||
|
\ifdim\@tempb\p@<\@tempa\p@\let\@tempa\@tempb\fi% select the smaller of both
|
||||||
|
\ifdim\@tempa\p@<\p@\scalebox{\@tempa}{\usebox\pandoc@box}%
|
||||||
|
\else\usebox{\pandoc@box}%
|
||||||
|
\fi%
|
||||||
|
}
|
||||||
|
% Set default figure placement to htbp
|
||||||
|
\def\fps@figure{htbp}
|
||||||
|
\makeatother
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
\ifLuaTeX
|
||||||
|
\usepackage[bidi=basic]{babel}
|
||||||
|
\else
|
||||||
|
\usepackage[bidi=default]{babel}
|
||||||
|
\fi
|
||||||
|
% get rid of language-specific shorthands (see #6817):
|
||||||
|
\let\LanguageShortHands\languageshorthands
|
||||||
|
\def\languageshorthands#1{}
|
||||||
|
\ifLuaTeX
|
||||||
|
\usepackage[english]{selnolig} % disable illegal ligatures
|
||||||
|
\fi
|
||||||
|
|
||||||
|
|
||||||
|
\setlength{\emergencystretch}{3em} % prevent overfull lines
|
||||||
|
|
||||||
|
\providecommand{\tightlist}{%
|
||||||
|
\setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
\KOMAoption{captions}{tableheading}
|
||||||
|
\makeatletter
|
||||||
|
\@ifpackageloaded{float}{}{\usepackage{float}}
|
||||||
|
\floatstyle{plain}
|
||||||
|
\@ifundefined{c@chapter}{\newfloat{sfg}{h}{lost}}{\newfloat{sfg}{h}{lost}[chapter]}
|
||||||
|
\floatname{sfg}{Supplementary Fig.}
|
||||||
|
\newcommand*\listofsfgs{\listof{sfg}{List of Supplementary Figures}}
|
||||||
|
\makeatother
|
||||||
|
\makeatletter
|
||||||
|
\@ifpackageloaded{float}{}{\usepackage{float}}
|
||||||
|
\floatstyle{plain}
|
||||||
|
\@ifundefined{c@chapter}{\newfloat{stb}{h}{lost}}{\newfloat{stb}{h}{lost}[chapter]}
|
||||||
|
\floatname{stb}{Supplementary Table}
|
||||||
|
\newcommand*\listofstbs{\listof{stb}{List of Supplementary Tables}}
|
||||||
|
\makeatother
|
||||||
|
\makeatletter
|
||||||
|
\@ifpackageloaded{float}{}{\usepackage{float}}
|
||||||
|
\floatstyle{plain}
|
||||||
|
\@ifundefined{c@chapter}{\newfloat{seq}{h}{lost}}{\newfloat{seq}{h}{lost}[chapter]}
|
||||||
|
\floatname{seq}{Supplementary Eq.}
|
||||||
|
\newcommand*\listofseqs{\listof{seq}{List of Supplementary Equations}}
|
||||||
|
\makeatother
|
||||||
|
\makeatletter
|
||||||
|
\@ifpackageloaded{float}{}{\usepackage{float}}
|
||||||
|
\floatstyle{plain}
|
||||||
|
\@ifundefined{c@chapter}{\newfloat{rfg}{h}{lost}}{\newfloat{rfg}{h}{lost}[chapter]}
|
||||||
|
\floatname{rfg}{Fig. R}
|
||||||
|
\newcommand*\quartorfgref[1]{Fig. \hyperref[#1]{R\ref{#1}}}
|
||||||
|
\@ifpackageloaded{caption}{}{\usepackage{caption}}
|
||||||
|
\DeclareCaptionLabelFormat{quartorfgreflabelformat}{#1#2}
|
||||||
|
\captionsetup[rfg]{labelformat=quartorfgreflabelformat}
|
||||||
|
\newcommand*\listofrfgs{\listof{rfg}{List of Revision Figures}}
|
||||||
|
\makeatother
|
||||||
|
\makeatletter
|
||||||
|
\@ifpackageloaded{float}{}{\usepackage{float}}
|
||||||
|
\floatstyle{plain}
|
||||||
|
\@ifundefined{c@chapter}{\newfloat{rtb}{h}{lost}}{\newfloat{rtb}{h}{lost}[chapter]}
|
||||||
|
\floatname{rtb}{Table R}
|
||||||
|
\newcommand*\quartortbref[1]{Table \hyperref[#1]{R\ref{#1}}}
|
||||||
|
\@ifpackageloaded{caption}{}{\usepackage{caption}}
|
||||||
|
\DeclareCaptionLabelFormat{quartortbreflabelformat}{#1#2}
|
||||||
|
\captionsetup[rtb]{labelformat=quartortbreflabelformat}
|
||||||
|
\newcommand*\listofrtbs{\listof{rtb}{List of Revision Tables}}
|
||||||
|
\makeatother
|
||||||
|
\makeatletter
|
||||||
|
\@ifpackageloaded{float}{}{\usepackage{float}}
|
||||||
|
\floatstyle{plain}
|
||||||
|
\@ifundefined{c@chapter}{\newfloat{req}{h}{lost}}{\newfloat{req}{h}{lost}[chapter]}
|
||||||
|
\floatname{req}{Eq R}
|
||||||
|
\newcommand*\quartoreqref[1]{Eq \hyperref[#1]{R\ref{#1}}}
|
||||||
|
\@ifpackageloaded{caption}{}{\usepackage{caption}}
|
||||||
|
\DeclareCaptionLabelFormat{quartoreqreflabelformat}{#1#2}
|
||||||
|
\captionsetup[req]{labelformat=quartoreqreflabelformat}
|
||||||
|
\newcommand*\listofreqs{\listof{req}{List of Revision Equations}}
|
||||||
|
\makeatother
|
||||||
|
\makeatletter
|
||||||
|
\@ifpackageloaded{caption}{}{\usepackage{caption}}
|
||||||
|
\AtBeginDocument{%
|
||||||
|
\ifdefined\contentsname
|
||||||
|
\renewcommand*\contentsname{Table of contents}
|
||||||
|
\else
|
||||||
|
\newcommand\contentsname{Table of contents}
|
||||||
|
\fi
|
||||||
|
\ifdefined\listfigurename
|
||||||
|
\renewcommand*\listfigurename{List of Figures}
|
||||||
|
\else
|
||||||
|
\newcommand\listfigurename{List of Figures}
|
||||||
|
\fi
|
||||||
|
\ifdefined\listtablename
|
||||||
|
\renewcommand*\listtablename{List of Tables}
|
||||||
|
\else
|
||||||
|
\newcommand\listtablename{List of Tables}
|
||||||
|
\fi
|
||||||
|
\ifdefined\figurename
|
||||||
|
\renewcommand*\figurename{Fig.}
|
||||||
|
\else
|
||||||
|
\newcommand\figurename{Fig.}
|
||||||
|
\fi
|
||||||
|
\ifdefined\tablename
|
||||||
|
\renewcommand*\tablename{Table}
|
||||||
|
\else
|
||||||
|
\newcommand\tablename{Table}
|
||||||
|
\fi
|
||||||
|
}
|
||||||
|
\@ifpackageloaded{float}{}{\usepackage{float}}
|
||||||
|
\floatstyle{ruled}
|
||||||
|
\@ifundefined{c@chapter}{\newfloat{codelisting}{h}{lop}}{\newfloat{codelisting}{h}{lop}[chapter]}
|
||||||
|
\floatname{codelisting}{Listing}
|
||||||
|
\newcommand*\listoflistings{\listof{codelisting}{List of Listings}}
|
||||||
|
\captionsetup{labelsep=colon}
|
||||||
|
\makeatother
|
||||||
|
\makeatletter
|
||||||
|
\makeatother
|
||||||
|
\makeatletter
|
||||||
|
\@ifpackageloaded{caption}{}{\usepackage{caption}}
|
||||||
|
\@ifpackageloaded{subcaption}{}{\usepackage{subcaption}}
|
||||||
|
\makeatother
|
||||||
|
\usepackage{bookmark}
|
||||||
|
\IfFileExists{xurl.sty}{\usepackage{xurl}}{} % add URL line breaks if available
|
||||||
|
\urlstyle{same}
|
||||||
|
\hypersetup{
|
||||||
|
pdftitle={MANUSCRIPT TITLE},
|
||||||
|
pdfauthor={, , and },
|
||||||
|
pdflang={en},
|
||||||
|
colorlinks=true,
|
||||||
|
linkcolor={blue},
|
||||||
|
filecolor={Maroon},
|
||||||
|
citecolor={Blue},
|
||||||
|
urlcolor={Blue},
|
||||||
|
pdfcreator={LaTeX via pandoc}}
|
||||||
|
|
||||||
|
|
||||||
|
\title{MANUSCRIPT TITLE}
|
||||||
|
\usepackage{etoolbox}
|
||||||
|
\makeatletter
|
||||||
|
\providecommand{\subtitle}[1]{% add subtitle to \maketitle
|
||||||
|
\apptocmd{\@title}{\par {\large #1 \par}}{}{}
|
||||||
|
}
|
||||||
|
\makeatother
|
||||||
|
\subtitle{Supplementary Information}
|
||||||
|
\author{Xxxxx Yyyy\textsuperscript{a,\#} \and Ming
|
||||||
|
Su\textsuperscript{a,b,\#,*} \and Min Yang\textsuperscript{a,b,*}}
|
||||||
|
\date{}
|
||||||
|
\begin{document}
|
||||||
|
\maketitle
|
||||||
|
|
||||||
|
|
||||||
|
\textsuperscript{\#} These authors contributed equally to this work.
|
||||||
|
|
||||||
|
\textsuperscript{a} State Key Laboratory of Environmental Aquatic
|
||||||
|
Chemistry, Research Center for Eco-Environmental Sciences, Chinese
|
||||||
|
Academy of Sciences, Beijing 100085, China.\\
|
||||||
|
\textsuperscript{b} University of Chinese Academy of Sciences, Beijing
|
||||||
|
100049, China.
|
||||||
|
|
||||||
|
\textsuperscript{*} Corresponding to:
|
||||||
|
\href{mailto:mingsu@rcees.ac.cn}{Ming Su (mingsu@rcees.ac.cn)},
|
||||||
|
\href{mailto:yangmin@rcees.ac.cn}{Min Yang (yangmin@rcees.ac.cn)}
|
||||||
|
|
||||||
|
\newpage{}
|
||||||
|
|
||||||
|
\section*{Abstract}\label{abstract}
|
||||||
|
\addcontentsline{toc}{section}{Abstract}
|
||||||
|
|
||||||
|
\newpage{}
|
||||||
|
|
||||||
|
\newpage{}
|
||||||
|
|
||||||
|
\section*{References}\label{references}
|
||||||
|
\addcontentsline{toc}{section}{References}
|
||||||
|
|
||||||
|
\phantomsection\label{refs}
|
||||||
|
|
||||||
|
\newpage{}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
\end{document}
|
|
@ -0,0 +1,16 @@
|
||||||
|
title: Authors and affiliation formatting for quarto
|
||||||
|
authors:
|
||||||
|
- name: Ming Su
|
||||||
|
email: mingsu@rcees.ac.cn
|
||||||
|
orcid: 0000-0001-9821-1268
|
||||||
|
url: https://drwater.net/team/ming-su/
|
||||||
|
- name: Lorenz A. Kapsner
|
||||||
|
orcid: 0000-0003-1866-860X
|
||||||
|
- name: Albert Krewinkel
|
||||||
|
orcid: 0000-0002-9455-0796
|
||||||
|
- name: Robert Winkler
|
||||||
|
version: 0.3.2
|
||||||
|
quarto-required: ">=1.3.0"
|
||||||
|
contributes:
|
||||||
|
filters:
|
||||||
|
- authoraffil.lua
|
|
@ -0,0 +1,75 @@
|
||||||
|
--[[
|
||||||
|
authors-block – affiliations block extension for quarto
|
||||||
|
Copyright (c) 2023 Lorenz A. Kapsner
|
||||||
|
Permission to use, copy, modify, and/or distribute this software for any purpose
|
||||||
|
with or without fee is hereby granted, provided that the above copyright notice
|
||||||
|
and this permission notice appear in all copies.
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
||||||
|
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
||||||
|
FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
||||||
|
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
|
||||||
|
OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
|
||||||
|
TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
|
||||||
|
THIS SOFTWARE.
|
||||||
|
]]
|
||||||
|
|
||||||
|
local List = require("pandoc.List")
|
||||||
|
local from_utils = require("utils")
|
||||||
|
local normalize_affiliations = from_utils.normalize_affiliations
|
||||||
|
local normalize_authors = from_utils.normalize_authors
|
||||||
|
local from_authors = require("from_author_info_blocks")
|
||||||
|
local default_marks = from_authors.default_marks
|
||||||
|
local create_equal_contributors_block = from_authors.create_equal_contributors_block
|
||||||
|
local create_affiliations_blocks = from_authors.create_affiliations_blocks
|
||||||
|
local create_correspondence_blocks = from_authors.create_correspondence_blocks
|
||||||
|
local is_corresponding_author = from_authors.is_corresponding_author
|
||||||
|
local author_inline_generator = from_authors.author_inline_generator
|
||||||
|
local create_authors_inlines = from_authors.create_authors_inlines
|
||||||
|
|
||||||
|
function Pandoc(doc)
|
||||||
|
local meta = doc.meta
|
||||||
|
local body = List:new({})
|
||||||
|
local mark = function(mark_name)
|
||||||
|
return default_marks[mark_name]
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Process CRediT roles
|
||||||
|
if meta.authors then
|
||||||
|
local credit_roles = List:new({})
|
||||||
|
for i, author in ipairs(meta.authors) do
|
||||||
|
if author.role then
|
||||||
|
local roles = List:new({})
|
||||||
|
for role, level in pairs(author.role) do
|
||||||
|
roles:insert(pandoc.Str(role .. ": " .. stringify(level)))
|
||||||
|
end
|
||||||
|
if #roles > 0 then
|
||||||
|
local author_name = stringify(author.name)
|
||||||
|
credit_roles:insert(pandoc.Para({
|
||||||
|
pandoc.Str(author_name .. ": "),
|
||||||
|
pandoc.Str(table.concat(roles:map(stringify), ", ")),
|
||||||
|
}))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
if #credit_roles > 0 then
|
||||||
|
body:insert(pandoc.Header(2, pandoc.Str("Author Contributions")))
|
||||||
|
body:extend(credit_roles)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
body:extend(create_equal_contributors_block(meta.authors, mark) or {})
|
||||||
|
body:extend(create_affiliations_blocks(meta.affiliations, meta) or {})
|
||||||
|
body:extend(create_correspondence_blocks(meta.authors, mark) or {})
|
||||||
|
body:extend(doc.blocks)
|
||||||
|
|
||||||
|
for _i, author in ipairs(meta.authors) do
|
||||||
|
author.test = is_corresponding_author(author)
|
||||||
|
end
|
||||||
|
|
||||||
|
meta.affiliations = normalize_affiliations(meta.affiliations or {})
|
||||||
|
meta.author = meta.authors:map(normalize_authors(meta.affiliations))
|
||||||
|
meta.author = pandoc.MetaInlines(create_authors_inlines(meta.author, mark, meta))
|
||||||
|
meta.affiliations = nil
|
||||||
|
|
||||||
|
return pandoc.Pandoc(body, meta)
|
||||||
|
end
|
|
@ -0,0 +1,297 @@
|
||||||
|
--[[
|
||||||
|
affiliation-blocks – generate title components
|
||||||
|
Copyright © 2017–2021 Albert Krewinkel
|
||||||
|
Permission to use, copy, modify, and/or distribute this software for any purpose
|
||||||
|
with or without fee is hereby granted, provided that the above copyright notice
|
||||||
|
and this permission notice appear in all copies.
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
||||||
|
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
||||||
|
FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
||||||
|
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
|
||||||
|
OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
|
||||||
|
TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
|
||||||
|
THIS SOFTWARE.
|
||||||
|
]]
|
||||||
|
|
||||||
|
local from_utils = require("utils")
|
||||||
|
local has_key = from_utils.has_key
|
||||||
|
local List = require("pandoc.List")
|
||||||
|
local utils = require("pandoc.utils")
|
||||||
|
local stringify = utils.stringify
|
||||||
|
|
||||||
|
local M = {}
|
||||||
|
|
||||||
|
local default_marks = {
|
||||||
|
corresponding_author = FORMAT == "latex" and { pandoc.RawInline("latex", "*") } or { pandoc.Str("*") },
|
||||||
|
equal_contributor = FORMAT == "latex" and { pandoc.RawInline("latex", "\\#") } or { pandoc.Str("#") },
|
||||||
|
}
|
||||||
|
|
||||||
|
local function get_orcid_mark(orcid_value)
|
||||||
|
if not orcid_value then
|
||||||
|
return {}
|
||||||
|
end
|
||||||
|
local orcid_str
|
||||||
|
if type(orcid_value) == "string" then
|
||||||
|
orcid_str = orcid_value
|
||||||
|
elseif type(orcid_value) == "table" then
|
||||||
|
if orcid_value.text then
|
||||||
|
orcid_str = orcid_value.text
|
||||||
|
elseif orcid_value[1] and orcid_value[1].text then
|
||||||
|
orcid_str = orcid_value[1].text
|
||||||
|
else
|
||||||
|
return {}
|
||||||
|
end
|
||||||
|
else
|
||||||
|
return {}
|
||||||
|
end
|
||||||
|
orcid_str = orcid_str:gsub("[%-%s]", "")
|
||||||
|
if FORMAT == "latex" then
|
||||||
|
return { pandoc.RawInline("latex", "\\orcidlink{" .. orcid_str .. "}") }
|
||||||
|
elseif FORMAT:match("docx") then
|
||||||
|
local orcid_url = "https://orcid.org/" .. orcid_str
|
||||||
|
return {
|
||||||
|
pandoc.Str(" "),
|
||||||
|
pandoc.Link("ID", orcid_url),
|
||||||
|
}
|
||||||
|
else
|
||||||
|
local orcid_url = "https://orcid.org/" .. orcid_str
|
||||||
|
return { pandoc.Link(pandoc.Str(""), orcid_url, "", { class = "orcid" }) }
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
M.default_marks = default_marks
|
||||||
|
|
||||||
|
local function is_equal_contributor(author)
|
||||||
|
if has_key(author, "attributes") then
|
||||||
|
return author.attributes["equal-contributor"]
|
||||||
|
end
|
||||||
|
return nil
|
||||||
|
end
|
||||||
|
|
||||||
|
local function create_equal_contributors_block(authors, mark)
|
||||||
|
local has_equal_contribs = List:new(authors):find_if(is_equal_contributor)
|
||||||
|
if not has_equal_contribs then
|
||||||
|
return nil
|
||||||
|
end
|
||||||
|
local contributors = {
|
||||||
|
pandoc.Superscript(mark("equal_contributor")),
|
||||||
|
pandoc.Space(),
|
||||||
|
pandoc.Str("These authors contributed equally to this work."),
|
||||||
|
}
|
||||||
|
return List:new({ pandoc.Para(contributors) })
|
||||||
|
end
|
||||||
|
M.create_equal_contributors_block = create_equal_contributors_block
|
||||||
|
|
||||||
|
local function intercalate(lists, elem)
|
||||||
|
local result = List:new({})
|
||||||
|
for i = 1, (#lists - 1) do
|
||||||
|
result:extend(lists[i])
|
||||||
|
result:extend(elem)
|
||||||
|
end
|
||||||
|
if #lists > 0 then
|
||||||
|
result:extend(lists[#lists])
|
||||||
|
end
|
||||||
|
return result
|
||||||
|
end
|
||||||
|
|
||||||
|
local function is_corresponding_author(author)
|
||||||
|
if has_key(author, "attributes") then
|
||||||
|
if author.attributes["corresponding"] then
|
||||||
|
return author.email
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return nil
|
||||||
|
end
|
||||||
|
M.is_corresponding_author = is_corresponding_author
|
||||||
|
|
||||||
|
local function create_correspondence_blocks(authors, mark)
|
||||||
|
local corresponding_authors = List:new({})
|
||||||
|
for _, author in ipairs(authors) do
|
||||||
|
if is_corresponding_author(author) then
|
||||||
|
local mailto = "mailto:" .. stringify(author.email)
|
||||||
|
local author_with_mail = List:new(
|
||||||
|
author.name.literal
|
||||||
|
.. List:new({ pandoc.Space(), pandoc.Str("(") })
|
||||||
|
.. author.email
|
||||||
|
.. List:new({ pandoc.Str(")") })
|
||||||
|
)
|
||||||
|
local link = pandoc.Link(author_with_mail, mailto)
|
||||||
|
table.insert(corresponding_authors, { link })
|
||||||
|
end
|
||||||
|
end
|
||||||
|
if #corresponding_authors == 0 then
|
||||||
|
return nil
|
||||||
|
end
|
||||||
|
local correspondence = List:new({
|
||||||
|
pandoc.Superscript(mark("corresponding_author")),
|
||||||
|
pandoc.Space(),
|
||||||
|
pandoc.Str("Corresponding to:"),
|
||||||
|
pandoc.Space(),
|
||||||
|
})
|
||||||
|
local sep = List:new({ pandoc.Str(","), pandoc.Space() })
|
||||||
|
return { pandoc.Para(correspondence .. intercalate(corresponding_authors, sep)) }
|
||||||
|
end
|
||||||
|
|
||||||
|
M.create_correspondence_blocks = create_correspondence_blocks
|
||||||
|
|
||||||
|
local function author_inline_generator(get_mark, meta)
|
||||||
|
return function(author)
|
||||||
|
local author_marks = List:new({})
|
||||||
|
if has_key(author, "orcid") then
|
||||||
|
author_marks[#author_marks + 1] = get_orcid_mark(author.orcid)
|
||||||
|
end
|
||||||
|
local affilstyle = meta and meta.affilstyle and stringify(meta.affilstyle) or "alphabeta"
|
||||||
|
for _, idx in ipairs(author.affiliations) do
|
||||||
|
local idx_num = tonumber(stringify(idx)) -- Convert MetaString/MetaInlines to number
|
||||||
|
if not idx_num then
|
||||||
|
error("Invalid affiliation index: " .. tostring(idx))
|
||||||
|
end
|
||||||
|
local idx_str
|
||||||
|
if affilstyle == "number" then
|
||||||
|
idx_str = tostring(idx_num)
|
||||||
|
else
|
||||||
|
if idx_num > 26 then
|
||||||
|
error("Too many affiliations: only up to 26 (a-z) are supported")
|
||||||
|
end
|
||||||
|
idx_str = string.char(96 + idx_num)
|
||||||
|
end
|
||||||
|
author_marks[#author_marks + 1] = { pandoc.Str(idx_str) }
|
||||||
|
end
|
||||||
|
if has_key(author, "attributes") then
|
||||||
|
if author.attributes["equal-contributor"] then
|
||||||
|
author_marks[#author_marks + 1] = get_mark("equal_contributor")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
if is_corresponding_author(author) then
|
||||||
|
author_marks[#author_marks + 1] = get_mark("corresponding_author")
|
||||||
|
end
|
||||||
|
if FORMAT:match("latex") then
|
||||||
|
author.name.literal[#author.name.literal + 1] = pandoc.Superscript(intercalate(author_marks, { pandoc.Str(",") }))
|
||||||
|
return author
|
||||||
|
else
|
||||||
|
local res = List.clone(author.name.literal)
|
||||||
|
res[#res + 1] = pandoc.Superscript(intercalate(author_marks, { pandoc.Str(",") }))
|
||||||
|
return res
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
M.author_inline_generator = author_inline_generator
|
||||||
|
|
||||||
|
local function create_authors_inlines(authors, mark, meta)
|
||||||
|
local inlines_generator = author_inline_generator(mark, meta)
|
||||||
|
local inlines = List:new(authors):map(inlines_generator)
|
||||||
|
local and_str = List:new({ pandoc.Space(), pandoc.Str("and"), pandoc.Space() })
|
||||||
|
local last_author = inlines[#inlines]
|
||||||
|
inlines[#inlines] = nil
|
||||||
|
local result = intercalate(inlines, { pandoc.Str(","), pandoc.Space() })
|
||||||
|
if #authors > 1 then
|
||||||
|
if #authors == 2 then
|
||||||
|
result:extend(and_str)
|
||||||
|
else
|
||||||
|
result:extend(List:new({ pandoc.Str(",") }) .. and_str)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
result:extend(last_author)
|
||||||
|
return result
|
||||||
|
end
|
||||||
|
M.create_authors_inlines = create_authors_inlines
|
||||||
|
|
||||||
|
local function create_affiliations_blocks_alphabeta(affiliations, meta)
|
||||||
|
local affilstyle = meta and meta.affilstyle and stringify(meta.affilstyle) or "alphabeta"
|
||||||
|
local affil_lines = List:new(affiliations):map(function(affil, i)
|
||||||
|
if affilstyle == "number" then
|
||||||
|
num_inlines = pandoc.List:new({
|
||||||
|
pandoc.Superscript(pandoc.Str(tostring(i))),
|
||||||
|
pandoc.Space(),
|
||||||
|
})
|
||||||
|
else
|
||||||
|
num_inlines = pandoc.List:new({
|
||||||
|
pandoc.Superscript(pandoc.Str(string.char(96 + i))),
|
||||||
|
pandoc.Space(),
|
||||||
|
})
|
||||||
|
end
|
||||||
|
local name_inlines = type(affil.name) == "table" and affil.name or { pandoc.Str(tostring(affil.name)) }
|
||||||
|
local city_inlines = type(affil.city) == "table" and affil.city or { pandoc.Str(tostring(affil.city)) }
|
||||||
|
local postcode_inlines = type(affil["postal-code"]) == "table" and affil["postal-code"]
|
||||||
|
or { pandoc.Str(tostring(affil["postal-code"])) }
|
||||||
|
local country_inlines = type(affil.country) == "table" and affil.country
|
||||||
|
or { pandoc.Str(tostring(affil.country or affil["postal-code"])) }
|
||||||
|
return num_inlines
|
||||||
|
:extend(name_inlines)
|
||||||
|
:extend({ pandoc.Str(", ") })
|
||||||
|
:extend(city_inlines)
|
||||||
|
:extend({ pandoc.Space() })
|
||||||
|
:extend(postcode_inlines)
|
||||||
|
:extend({ pandoc.Str(", ") })
|
||||||
|
:extend(country_inlines)
|
||||||
|
:extend({ pandoc.Str(".") })
|
||||||
|
end)
|
||||||
|
local combined_inlines = pandoc.List:new()
|
||||||
|
for i, line in ipairs(affil_lines) do
|
||||||
|
combined_inlines:extend(line)
|
||||||
|
if i < #affil_lines then
|
||||||
|
combined_inlines:extend({ pandoc.LineBreak() })
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return { pandoc.Para(combined_inlines) }
|
||||||
|
end
|
||||||
|
|
||||||
|
local function create_affiliations_blocks_number(affiliations, meta)
|
||||||
|
local affilstyle = meta and meta.affilstyle and stringify(meta.affilstyle) or "alphabeta"
|
||||||
|
local affil_lines = List:new(affiliations):map(function(affil, i)
|
||||||
|
local num_inlines = pandoc.List:new({
|
||||||
|
pandoc.Superscript(pandoc.Str(tostring(i))),
|
||||||
|
pandoc.Space(),
|
||||||
|
})
|
||||||
|
local name_inlines = type(affil.name) == "table" and affil.name or { pandoc.Str(tostring(affil.name)) }
|
||||||
|
local city_inlines = type(affil.city) == "table" and affil.city or { pandoc.Str(tostring(affil.city)) }
|
||||||
|
local postcode_inlines = type(affil["postal-code"]) == "table" and affil["postal-code"]
|
||||||
|
or { pandoc.Str(tostring(affil["postal-code"])) }
|
||||||
|
local country_inlines = type(affil.country) == "table" and affil.country
|
||||||
|
or { pandoc.Str(tostring(affil.country or affil["postal-code"])) }
|
||||||
|
return num_inlines
|
||||||
|
:extend(name_inlines)
|
||||||
|
:extend({ pandoc.Str(", ") })
|
||||||
|
:extend(city_inlines)
|
||||||
|
:extend({ pandoc.Space() })
|
||||||
|
:extend(postcode_inlines)
|
||||||
|
:extend({ pandoc.Str(", ") })
|
||||||
|
:extend(country_inlines)
|
||||||
|
:extend({ pandoc.Str(".") })
|
||||||
|
end)
|
||||||
|
local combined_inlines = pandoc.List:new()
|
||||||
|
for i, line in ipairs(affil_lines) do
|
||||||
|
combined_inlines:extend(line)
|
||||||
|
if i < #affil_lines then
|
||||||
|
combined_inlines:extend({ pandoc.LineBreak() })
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return { pandoc.Para(combined_inlines) }
|
||||||
|
end
|
||||||
|
|
||||||
|
M.create_affiliations_blocks = create_affiliations_blocks_alphabeta
|
||||||
|
|
||||||
|
function Meta(meta)
|
||||||
|
local affilstyle = meta and meta.affilstyle and stringify(meta.affilstyle) or "alphabeta"
|
||||||
|
M.create_affiliations_blocks = affilstyle == "number" and create_affiliations_blocks_number
|
||||||
|
or create_affiliations_blocks_alphabeta
|
||||||
|
if meta.authors then
|
||||||
|
meta.author = create_authors_inlines(meta.authors, M.default_marks, meta)
|
||||||
|
end
|
||||||
|
if meta.affiliations then
|
||||||
|
meta.institute = M.create_affiliations_blocks(meta.affiliations, meta)
|
||||||
|
end
|
||||||
|
if meta.authors then
|
||||||
|
local equal_contributors = create_equal_contributors_block(meta.authors, M.default_marks)
|
||||||
|
if equal_contributors then
|
||||||
|
meta["equal-contributors"] = equal_contributors
|
||||||
|
end
|
||||||
|
local correspondence = create_correspondence_blocks(meta.authors, M.default_marks)
|
||||||
|
if correspondence then
|
||||||
|
meta.correspondence = correspondence
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return meta
|
||||||
|
end
|
||||||
|
|
||||||
|
return M
|
|
@ -0,0 +1,51 @@
|
||||||
|
--[[
|
||||||
|
ScholarlyMeta – normalize author/affiliation meta variables
|
||||||
|
Copyright (c) 2017-2021 Albert Krewinkel, Robert Winkler
|
||||||
|
Permission to use, copy, modify, and/or distribute this software for any purpose
|
||||||
|
with or without fee is hereby granted, provided that the above copyright notice
|
||||||
|
and this permission notice appear in all copies.
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
||||||
|
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
||||||
|
FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
||||||
|
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
|
||||||
|
OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
|
||||||
|
TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
|
||||||
|
THIS SOFTWARE.
|
||||||
|
]]
|
||||||
|
|
||||||
|
local List = require("pandoc.List")
|
||||||
|
local utils = require("pandoc.utils")
|
||||||
|
local stringify = utils.stringify
|
||||||
|
|
||||||
|
local M = {}
|
||||||
|
|
||||||
|
local function has_id(id)
|
||||||
|
return function(x)
|
||||||
|
return x.id == id
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
local function resolve_institutes(institute, known_institutes)
|
||||||
|
local unresolved_institutes
|
||||||
|
if institute == nil then
|
||||||
|
unresolved_institutes = {}
|
||||||
|
elseif type(institute) == "string" or type(institute) == "number" then
|
||||||
|
unresolved_institutes = { institute }
|
||||||
|
else
|
||||||
|
unresolved_institutes = institute
|
||||||
|
end
|
||||||
|
local result = List:new({})
|
||||||
|
for i, inst in ipairs(unresolved_institutes) do
|
||||||
|
local intermed_val = known_institutes:find_if(has_id(stringify(inst)))
|
||||||
|
if intermed_val then
|
||||||
|
result[i] = pandoc.MetaString(tostring(intermed_val.index))
|
||||||
|
else
|
||||||
|
result[i] = pandoc.MetaString(tostring(inst))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return result
|
||||||
|
end
|
||||||
|
M.resolve_institutes = resolve_institutes
|
||||||
|
|
||||||
|
return M
|
||||||
|
|
|
@ -0,0 +1,49 @@
|
||||||
|
--[[
|
||||||
|
authors-block – affiliations block extension for quarto
|
||||||
|
Copyright (c) 2023 Lorenz A. Kapsner
|
||||||
|
Permission to use, copy, modify, and/or distribute this software for any purpose
|
||||||
|
with or without fee is hereby granted, provided that the above copyright notice
|
||||||
|
and this permission notice appear in all copies.
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
||||||
|
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
||||||
|
FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
||||||
|
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
|
||||||
|
OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
|
||||||
|
TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
|
||||||
|
THIS SOFTWARE.
|
||||||
|
]]
|
||||||
|
|
||||||
|
local List = require("pandoc.List")
|
||||||
|
local utils = require("pandoc.utils")
|
||||||
|
local stringify = utils.stringify
|
||||||
|
local from_scholarly = require("from_scholarly_metadata")
|
||||||
|
local resolve_institutes = from_scholarly.resolve_institutes
|
||||||
|
|
||||||
|
local M = {}
|
||||||
|
|
||||||
|
local function normalize_affiliations(affiliations)
|
||||||
|
local affiliations_norm = List:new(affiliations or {}):map(function(affil, i)
|
||||||
|
affil.index = pandoc.MetaString(tostring(i))
|
||||||
|
affil.id = pandoc.MetaString(stringify(affil.id or affil.name))
|
||||||
|
return affil
|
||||||
|
end)
|
||||||
|
return affiliations_norm
|
||||||
|
end
|
||||||
|
M.normalize_affiliations = normalize_affiliations
|
||||||
|
|
||||||
|
local function has_key(set, key)
|
||||||
|
return set[key] ~= nil
|
||||||
|
end
|
||||||
|
M.has_key = has_key
|
||||||
|
|
||||||
|
local function normalize_authors(affiliations)
|
||||||
|
return function(auth)
|
||||||
|
auth.id = pandoc.MetaString(stringify(auth.name))
|
||||||
|
auth.affiliations = resolve_institutes(auth.affiliations or {}, affiliations)
|
||||||
|
return auth
|
||||||
|
end
|
||||||
|
end
|
||||||
|
M.normalize_authors = normalize_authors
|
||||||
|
|
||||||
|
return M
|
||||||
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
.Rproj.user
|
||||||
|
.Rhistory
|
||||||
|
.RData
|
||||||
|
.Ruserdata
|
||||||
|
site_libs/
|
||||||
|
/.quarto/
|
||||||
|
site_libs/
|
||||||
|
BB/Ref.bib
|
||||||
|
_variables.yml
|
||||||
|
_freeze/
|
||||||
|
www/
|
||||||
|
.source_state
|
|
@ -0,0 +1,56 @@
|
||||||
|
---
|
||||||
|
title: "报告名称"
|
||||||
|
author: "中国科学院生态环境研究中心"
|
||||||
|
lang: zh
|
||||||
|
date: today
|
||||||
|
csl: _extensions/drwater/inst/tex/china-national-standard-gb-t-7714-2015-numeric.csl
|
||||||
|
format:
|
||||||
|
# html:
|
||||||
|
# theme: cosmo
|
||||||
|
# css: _extensions/drwater/inst/css/style.css
|
||||||
|
# docx:
|
||||||
|
# toc: true
|
||||||
|
# reference-doc: _extensions/drwater/inst/word/repcn.docx
|
||||||
|
# epub: default
|
||||||
|
dwbk-pdf: default
|
||||||
|
---
|
||||||
|
|
||||||
|
::: {.content-visible when-format="html"}
|
||||||
|
# Color tip {.unnumbered}
|
||||||
|
|
||||||
|
- [Something should be deleted]{.del}
|
||||||
|
- [Something bad]{.bad}
|
||||||
|
- [Something good]{.good}
|
||||||
|
- [Something todo]{.todo}
|
||||||
|
- [Something should be added]{.add}
|
||||||
|
- [I am a comment]{.com}
|
||||||
|
:::
|
||||||
|
|
||||||
|
|
||||||
|
```{r}
|
||||||
|
#| label: setup
|
||||||
|
#| include: false
|
||||||
|
#| cache: false
|
||||||
|
lang <- "cn"
|
||||||
|
RM <- "F" # global rendermode, L: load pdata; F: fast load pdf
|
||||||
|
isRendering <- !isTRUE(getOption('knitr.in.progress'))
|
||||||
|
require(lubridate)
|
||||||
|
require(tidyverse)
|
||||||
|
require(patchwork)
|
||||||
|
require(drwateR)
|
||||||
|
rmdify::rmd_init()
|
||||||
|
```
|
||||||
|
|
||||||
|
# 摘要
|
||||||
|
|
||||||
|
# 项目背景与国内外现状介绍
|
||||||
|
|
||||||
|
# 主要进展1
|
||||||
|
|
||||||
|
# 主要进展2
|
||||||
|
|
||||||
|
# 结论与下一步计划
|
||||||
|
|
||||||
|
|
||||||
|
# 参考文献{-}
|
||||||
|
|
|
@ -0,0 +1,47 @@
|
||||||
|
title: dwms-pdf-quarto
|
||||||
|
author: Ming Su
|
||||||
|
version: 0.0.1
|
||||||
|
quarto-required: ">=1.3.0"
|
||||||
|
contributes:
|
||||||
|
formats:
|
||||||
|
common:
|
||||||
|
knitr:
|
||||||
|
opts_chunk:
|
||||||
|
echo: false
|
||||||
|
message: false
|
||||||
|
warning: false
|
||||||
|
pdf:
|
||||||
|
documentclass: ctexbook # 使用ctexbook文档类专门处理中文
|
||||||
|
classoption:
|
||||||
|
- fntef
|
||||||
|
- UTF8
|
||||||
|
# - scheme=plain # 标题样式方案
|
||||||
|
- zihao=-4 # 正文字号小四
|
||||||
|
papersize: a4
|
||||||
|
geometry: [left=2.5cm, right=2.5cm, top=2.54cm, bottom=2.54cm]
|
||||||
|
linestretch: 1.25
|
||||||
|
toc: true
|
||||||
|
toc-depth: 3
|
||||||
|
number-sections: true
|
||||||
|
lang: zh-CN
|
||||||
|
fig-pos: "!t"
|
||||||
|
colorlinks: true
|
||||||
|
urlcolor: blue
|
||||||
|
sansfont: "Gill Sans"
|
||||||
|
sansfontoptions:
|
||||||
|
- Color=39729E
|
||||||
|
mainfont: "Source Sans 3" #| Verdana (fontsize: 11pt) # Source Sans 3 | Times New Roman| Helvetica | PT Sans
|
||||||
|
monofont: "JetBrains Mono"
|
||||||
|
mathfont: "Cambria Math"
|
||||||
|
# 确保中文标点符号正确处理
|
||||||
|
CJKoptions: |
|
||||||
|
AutoFakeBold=true
|
||||||
|
block-headings: false
|
||||||
|
include-in-header: header.tex
|
||||||
|
template-partials:
|
||||||
|
- "partials/title.tex"
|
||||||
|
- "partials/before-body.tex"
|
||||||
|
- "partials/after-body.tex"
|
||||||
|
filters:
|
||||||
|
- latex-environment
|
||||||
|
lightbox: auto
|
|
@ -0,0 +1,106 @@
|
||||||
|
% -----------------------
|
||||||
|
% CUSTOM PREAMBLE STUFF
|
||||||
|
% -----------------------
|
||||||
|
\usepackage{xeCJK}
|
||||||
|
\usepackage{enumitem}
|
||||||
|
\usepackage{fontspec}
|
||||||
|
\usepackage{float}
|
||||||
|
\usepackage[normalem]{ulem}
|
||||||
|
\usepackage{hyperref}
|
||||||
|
\usepackage{nameref} %needed by zref-xr
|
||||||
|
\usepackage{xr-hyper}
|
||||||
|
\usepackage[normalem]{ulem}
|
||||||
|
\usepackage{setspace}
|
||||||
|
\usepackage{lineno}
|
||||||
|
\usepackage{caption}
|
||||||
|
\captionsetup{singlelinecheck=off}
|
||||||
|
\usepackage[UTF8, scheme=plain]{ctex}
|
||||||
|
\usepackage{orcidlink}
|
||||||
|
\usepackage{eso-pic}
|
||||||
|
|
||||||
|
\usepackage{ctexcap} % 中文标题处理
|
||||||
|
\usepackage[perpage]{footmisc} % 脚注每页重置
|
||||||
|
\setlength{\parindent}{2em} % 中文段落缩进2字符
|
||||||
|
|
||||||
|
\setCJKmainfont[AutoFakeBold=true]{SimHei}
|
||||||
|
\setCJKsansfont[AutoFakeBold]{Microsoft YaHei}
|
||||||
|
% \setCJKmonofont[AutoFakeBold]{KaiTi}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
% -----------------
|
||||||
|
% Title block stuff
|
||||||
|
% -----------------
|
||||||
|
|
||||||
|
% Title
|
||||||
|
\makeatletter
|
||||||
|
\renewcommand{\title}[1]{\gdef\@title{\Huge\textbf{#1}}} % Adjust \Huge or other font commands
|
||||||
|
\makeatother
|
||||||
|
|
||||||
|
|
||||||
|
% ------------------
|
||||||
|
% Section headings
|
||||||
|
% ------------------
|
||||||
|
\usepackage{titlesec}
|
||||||
|
\titleformat*{\section}{\Large\sffamily\bfseries\raggedright}
|
||||||
|
\titleformat*{\subsection}{\large\sffamily\bfseries\raggedright}
|
||||||
|
\titleformat*{\subsubsection}{\normalsize\sffamily\bfseries\raggedright}
|
||||||
|
\titleformat*{\paragraph}{\small\sffamily\bfseries\raggedright}
|
||||||
|
|
||||||
|
%\titlespacing{<command>}{<left>}{<before-sep>}{<after-sep>}
|
||||||
|
% Starred version removes indentation in following paragraph
|
||||||
|
\titlespacing*{\section}{0em}{2em}{0.1em}
|
||||||
|
\titlespacing*{\subsection}{0em}{1.25em}{0.1em}
|
||||||
|
\titlespacing*{\subsubsection}{0em}{0.75em}{0em}
|
||||||
|
|
||||||
|
% ------------------
|
||||||
|
% Headers/Footers
|
||||||
|
% ------------------
|
||||||
|
\usepackage{fancyhdr}
|
||||||
|
\pagestyle{fancy}
|
||||||
|
|
||||||
|
\fancyhf{}
|
||||||
|
\fancyhead[L,C,R]{}
|
||||||
|
\fancyfoot[L,C]{}
|
||||||
|
\fancyfoot[R]{\thepage}
|
||||||
|
\fancyfootoffset{3.5cm}
|
||||||
|
\renewcommand{\headrulewidth}{1pt}
|
||||||
|
\fancypagestyle{plain}{%
|
||||||
|
\renewcommand{\headrulewidth}{0pt}%
|
||||||
|
\fancyhf{}%
|
||||||
|
\fancyfoot[R]{\thepage}%
|
||||||
|
}
|
||||||
|
\renewcommand\footnoterule{\rule{\linewidth}{0.1pt}\vspace{5pt}}
|
||||||
|
|
||||||
|
% ------------------
|
||||||
|
% Captions
|
||||||
|
% ------------------
|
||||||
|
\usepackage[labelfont=bf,labelsep=period]{caption}
|
||||||
|
\captionsetup[figure]{font=footnotesize,justification=raggedright,singlelinecheck=false,format=hang}
|
||||||
|
|
||||||
|
|
||||||
|
% ---------------------------
|
||||||
|
% END CUSTOM PREAMBLE STUFF
|
||||||
|
% ---------------------------
|
||||||
|
%
|
||||||
|
%
|
||||||
|
%% Let's define some colours
|
||||||
|
\definecolor{light}{HTML}{ECF1EC}
|
||||||
|
\definecolor{highlight}{HTML}{800080}
|
||||||
|
\definecolor{dark}{HTML}{330033}
|
||||||
|
|
||||||
|
%% Let's add the border on the left hand side
|
||||||
|
\AddToShipoutPicture{%
|
||||||
|
\AtPageLowerLeft{%
|
||||||
|
\put(0,0){% % 从页面左下角(0,0)开始
|
||||||
|
\color{light}\rule{2.4cm}{\LenToUnit\paperheight}% % 左侧3cm宽的边框
|
||||||
|
}%
|
||||||
|
}%
|
||||||
|
% logo
|
||||||
|
\AtPageLowerLeft{% start the bar at the bottom left of the page
|
||||||
|
\put(0.5cm,27.2cm){% % 从左侧边缘向右移动0.75cm,垂直位置27.2cm
|
||||||
|
\color{light}\includegraphics[width=1.5cm]{_extensions/drwater/dwbk/logo.png}
|
||||||
|
}%
|
||||||
|
}%
|
||||||
|
}
|
||||||
|
|
After Width: | Height: | Size: 81 KiB |
|
@ -0,0 +1,33 @@
|
||||||
|
$-- Implements the frontmatter, title page, and abstract.
|
||||||
|
|
||||||
|
% for some reason this does not work in header
|
||||||
|
\renewcommand{\abstractname}{Abstract.}
|
||||||
|
|
||||||
|
% add the short title to the fancy header
|
||||||
|
$if(shorttitle)$
|
||||||
|
\fancyhead[R]{$shorttitle$}
|
||||||
|
$endif$
|
||||||
|
$if(shortauthors)$
|
||||||
|
\fancyhead[L]{$shortauthors$}
|
||||||
|
$endif$
|
||||||
|
|
||||||
|
$if(has-frontmatter)$
|
||||||
|
\frontmatter
|
||||||
|
$endif$
|
||||||
|
$if(title)$
|
||||||
|
\maketitle
|
||||||
|
%\noindent \rule{\linewidth}{.5pt}
|
||||||
|
$if(abstract)$
|
||||||
|
\begin{abstract}
|
||||||
|
$abstract$
|
||||||
|
\end{abstract}
|
||||||
|
$if(keywords)$
|
||||||
|
\begin{keywords}
|
||||||
|
\def\sep{;\ }
|
||||||
|
$for(keywords/allbutlast)$$keywords$\sep $endfor$
|
||||||
|
$for(keywords/last)$$keywords$$endfor$
|
||||||
|
\end{keywords}
|
||||||
|
$endif$
|
||||||
|
$endif$
|
||||||
|
%\noindent \rule{\linewidth}{.5pt}
|
||||||
|
$endif$
|
|
@ -0,0 +1,15 @@
|
||||||
|
$if(title)$
|
||||||
|
\title{$title$$if(thanks)$\thanks{$thanks$}$endif$}
|
||||||
|
$endif$
|
||||||
|
$if(subtitle)$
|
||||||
|
\usepackage{etoolbox}
|
||||||
|
\makeatletter
|
||||||
|
\providecommand{\subtitle}[1]{% add subtitle to \maketitle
|
||||||
|
\apptocmd{\@title}{\par {\large\sffamily\bfseries #1 \par}}{}{}
|
||||||
|
}
|
||||||
|
\makeatother
|
||||||
|
\subtitle{$subtitle$}
|
||||||
|
$endif$
|
||||||
|
$-- This supports Quarto's authors normalization
|
||||||
|
\author{$for(authors)$\footnotesize $it.name.literal$$sep$ \and $endfor$}
|
||||||
|
\date{$date$}
|
|
@ -99,7 +99,7 @@
|
||||||
% logo
|
% logo
|
||||||
\AtPageLowerLeft{% start the bar at the bottom left of the page
|
\AtPageLowerLeft{% start the bar at the bottom left of the page
|
||||||
\put(0.5cm,27.2cm){% % 从左侧边缘向右移动0.75cm,垂直位置27.2cm
|
\put(0.5cm,27.2cm){% % 从左侧边缘向右移动0.75cm,垂直位置27.2cm
|
||||||
\color{light}\includegraphics[width=1.5cm]{_extensions/drwater/dwen/logo.png}
|
\color{light}\includegraphics[width=1.5cm]{_extensions/drwater/dwbk/logo.png}
|
||||||
}%
|
}%
|
||||||
}%
|
}%
|
||||||
}
|
}
|
||||||
|
|
After Width: | Height: | Size: 81 KiB |
|
@ -0,0 +1,12 @@
|
||||||
|
.Rproj.user
|
||||||
|
.Rhistory
|
||||||
|
.RData
|
||||||
|
.Ruserdata
|
||||||
|
site_libs/
|
||||||
|
/.quarto/
|
||||||
|
site_libs/
|
||||||
|
BB/Ref.bib
|
||||||
|
_variables.yml
|
||||||
|
_freeze/
|
||||||
|
www/
|
||||||
|
.source_state
|
|
@ -0,0 +1,17 @@
|
||||||
|
title: PrettyPDF
|
||||||
|
author: Nicola Rennie
|
||||||
|
version: 0.0.5
|
||||||
|
contributes:
|
||||||
|
project:
|
||||||
|
project:
|
||||||
|
type: book
|
||||||
|
formats:
|
||||||
|
pdf:
|
||||||
|
include-in-header:
|
||||||
|
- "header.tex"
|
||||||
|
include-before-body:
|
||||||
|
- "partials/before-body.tex"
|
||||||
|
toc: false
|
||||||
|
code-block-bg: light
|
||||||
|
linkcolor: highlight
|
||||||
|
urlcolor: highlight
|
|
@ -0,0 +1,59 @@
|
||||||
|
% load packages
|
||||||
|
\usepackage{geometry}
|
||||||
|
\usepackage{xcolor}
|
||||||
|
\usepackage{eso-pic}
|
||||||
|
\usepackage{fancyhdr}
|
||||||
|
\usepackage{sectsty}
|
||||||
|
\usepackage{fontspec}
|
||||||
|
\usepackage{titlesec}
|
||||||
|
|
||||||
|
%% Set page size with a wider right margin
|
||||||
|
\geometry{a4paper, total={170mm,257mm}, left=20mm, top=20mm, bottom=20mm, right=50mm}
|
||||||
|
|
||||||
|
%% Let's define some colours
|
||||||
|
\definecolor{light}{HTML}{ECF1EC}
|
||||||
|
\definecolor{highlight}{HTML}{800080}
|
||||||
|
\definecolor{dark}{HTML}{330033}
|
||||||
|
|
||||||
|
%% Let's add the border on the right hand side
|
||||||
|
\AddToShipoutPicture{%
|
||||||
|
\AtPageLowerLeft{%
|
||||||
|
\put(\LenToUnit{\dimexpr\paperwidth-3cm},0){%
|
||||||
|
\color{light}\rule{3cm}{\LenToUnit\paperheight}%
|
||||||
|
}%
|
||||||
|
}%
|
||||||
|
% logo
|
||||||
|
\AtPageLowerLeft{% start the bar at the bottom right of the page
|
||||||
|
\put(\LenToUnit{\dimexpr\paperwidth-2.25cm},27.2cm){% move it to the top right
|
||||||
|
\color{light}\includegraphics[width=1.5cm]{_extensions/drwater/dwen/logo.png}
|
||||||
|
}%
|
||||||
|
}%
|
||||||
|
}
|
||||||
|
|
||||||
|
%% Style the page number
|
||||||
|
\fancypagestyle{mystyle}{
|
||||||
|
\fancyhf{}
|
||||||
|
\renewcommand\headrulewidth{0pt}
|
||||||
|
\fancyfoot[R]{\thepage}
|
||||||
|
\fancyfootoffset{3.5cm}
|
||||||
|
}
|
||||||
|
\setlength{\footskip}{20pt}
|
||||||
|
|
||||||
|
%% style the chapter/section fonts
|
||||||
|
\chapterfont{\color{dark}\fontsize{20}{16.8}\selectfont}
|
||||||
|
\sectionfont{\color{dark}\fontsize{20}{16.8}\selectfont}
|
||||||
|
\subsectionfont{\color{dark}\fontsize{14}{16.8}\selectfont}
|
||||||
|
\titleformat{\subsection}
|
||||||
|
{\sffamily\Large\bfseries}{\thesection}{1em}{}[{\titlerule[0.8pt]}]
|
||||||
|
|
||||||
|
% left align title
|
||||||
|
\makeatletter
|
||||||
|
\renewcommand{\maketitle}{\bgroup\setlength{\parindent}{0pt}
|
||||||
|
\begin{flushleft}
|
||||||
|
{\sffamily\huge\textbf{\MakeUppercase{\@title}}} \vspace{0.3cm} \newline
|
||||||
|
{\Large {\@subtitle}} \newline
|
||||||
|
\@author
|
||||||
|
\end{flushleft}\egroup
|
||||||
|
}
|
||||||
|
\makeatother
|
||||||
|
|
After Width: | Height: | Size: 81 KiB |
|
@ -0,0 +1 @@
|
||||||
|
\pagestyle{mystyle}
|
|
@ -0,0 +1,25 @@
|
||||||
|
---
|
||||||
|
title: "Pretty PDFs with Quarto"
|
||||||
|
format: dwen-pdf
|
||||||
|
---
|
||||||
|
|
||||||
|
## Quarto
|
||||||
|
|
||||||
|
Quarto enables you to weave together content and executable code into a finished document. To learn more about Quarto see <https://quarto.org>.
|
||||||
|
|
||||||
|
### Running Code
|
||||||
|
|
||||||
|
When you click the **Render** button a document will be generated that includes both content and the output of embedded code. You can embed code like this:
|
||||||
|
|
||||||
|
```{r}
|
||||||
|
1 + 1
|
||||||
|
```
|
||||||
|
|
||||||
|
You can add options to executable code like this
|
||||||
|
|
||||||
|
```{r}
|
||||||
|
#| echo: false
|
||||||
|
2 * 2
|
||||||
|
```
|
||||||
|
|
||||||
|
The `echo: false` option disables the printing of code (only output is displayed).
|
|
@ -0,0 +1,12 @@
|
||||||
|
.Rproj.user
|
||||||
|
.Rhistory
|
||||||
|
.RData
|
||||||
|
.Ruserdata
|
||||||
|
site_libs/
|
||||||
|
/.quarto/
|
||||||
|
site_libs/
|
||||||
|
BB/Ref.bib
|
||||||
|
_variables.yml
|
||||||
|
_freeze/
|
||||||
|
www/
|
||||||
|
.source_state
|
|
@ -0,0 +1,180 @@
|
||||||
|
---
|
||||||
|
msname: MS
|
||||||
|
smname: SM
|
||||||
|
title: "MANUSCRIPT TITLE"
|
||||||
|
subtitle: "Supplementary Information"
|
||||||
|
submitjournal: "JOURNAL"
|
||||||
|
submitid:
|
||||||
|
lang: en
|
||||||
|
date: ""
|
||||||
|
# bibliography: [BB/Ref.bib, BB/localRef.bib]
|
||||||
|
affilstyle: alphabeta # number
|
||||||
|
author:
|
||||||
|
- name: Xxxxx Yyyy
|
||||||
|
affiliations:
|
||||||
|
- ref: kleac
|
||||||
|
# email: 13586740928@163.com
|
||||||
|
attributes:
|
||||||
|
corresponding: false
|
||||||
|
equal-contributor: true
|
||||||
|
role:
|
||||||
|
- data-curation: lead
|
||||||
|
- methodology: lead
|
||||||
|
- formalanalysis: lead
|
||||||
|
- writingoriginal: equal
|
||||||
|
- writingediting: eqaul
|
||||||
|
- visualisation: supporting
|
||||||
|
- name: Ming Su
|
||||||
|
email: mingsu@rcees.ac.cn
|
||||||
|
orcid: 0000-0001-9821-1268
|
||||||
|
url: https://drwater.net/team/ming-su/
|
||||||
|
role:
|
||||||
|
- conceptualization: lead
|
||||||
|
- methodology: supporting
|
||||||
|
- formalanalysis: lead
|
||||||
|
- writingoriginal: equal
|
||||||
|
- writingediting: equal
|
||||||
|
- visualisation: lead
|
||||||
|
- projectadmin: lead
|
||||||
|
- supervision
|
||||||
|
affiliations:
|
||||||
|
- ref: kleac
|
||||||
|
- ref: ucas
|
||||||
|
attributes:
|
||||||
|
corresponding: true
|
||||||
|
equal-contributor: true
|
||||||
|
- name: Min Yang
|
||||||
|
email: yangmin@rcees.ac.cn
|
||||||
|
affiliations:
|
||||||
|
- ref: kleac
|
||||||
|
- ref: ucas
|
||||||
|
attributes:
|
||||||
|
corresponding: true
|
||||||
|
affiliations:
|
||||||
|
- id: kleac
|
||||||
|
name: State Key Laboratory of Environmental Aquatic Chemistry, Research Center for Eco-Environmental Sciences, Chinese Academy of Sciences
|
||||||
|
# address: No. 18 Shuangqing Road
|
||||||
|
city: Beijing
|
||||||
|
postal-code: 100085
|
||||||
|
country: China
|
||||||
|
url: https://www.skleac.ac.cn
|
||||||
|
- id: ucas
|
||||||
|
name: University of Chinese Academy of Sciences
|
||||||
|
# address: No. 19A Yuquan Road
|
||||||
|
city: Beijing
|
||||||
|
postal-code: 100049
|
||||||
|
country: China
|
||||||
|
url: https://www.ucas.ac.cn
|
||||||
|
crossref:
|
||||||
|
fig-title: Fig. # (default is "Figure")
|
||||||
|
tbl-title: Table # (default is "Table")
|
||||||
|
eq-title: Eq. # (default is "Equation")
|
||||||
|
title-delim: ":" # (default is ":")
|
||||||
|
fig-prefix: Fig. # (default is "Figure")
|
||||||
|
tbl-prefix: Table # (default is "Table")
|
||||||
|
eq-prefix: Eq.
|
||||||
|
ref-hyperlink: true # (default is true)
|
||||||
|
custom:
|
||||||
|
- kind: float
|
||||||
|
key: sfg
|
||||||
|
reference-prefix: "Supplementary Fig."
|
||||||
|
space-before-numbering: true
|
||||||
|
caption-prefix: "Supplementary Fig."
|
||||||
|
latex-env: sfg
|
||||||
|
latex-list-of-file-extension: lost
|
||||||
|
latex-list-of-description: Supplementary Figure
|
||||||
|
- kind: float
|
||||||
|
key: stb
|
||||||
|
reference-prefix: "Supplementary Table"
|
||||||
|
space-before-numbering: true
|
||||||
|
caption-prefix: "Supplementary Table"
|
||||||
|
latex-env: stb
|
||||||
|
latex-list-of-file-extension: lost
|
||||||
|
latex-list-of-description: Supplementary Table
|
||||||
|
- kind: float
|
||||||
|
key: seq
|
||||||
|
reference-prefix: "Supplementary Eq."
|
||||||
|
space-before-numbering: true
|
||||||
|
caption-prefix: "Supplementary Eq."
|
||||||
|
latex-env: seq
|
||||||
|
latex-list-of-file-extension: lost
|
||||||
|
latex-list-of-description: Supplementary Equation
|
||||||
|
- kind: float
|
||||||
|
key: rfg
|
||||||
|
reference-prefix: "Fig. R"
|
||||||
|
space-before-numbering: false
|
||||||
|
caption-prefix: "Fig. R"
|
||||||
|
latex-env: rfg
|
||||||
|
latex-list-of-file-extension: lost
|
||||||
|
latex-list-of-description: Revision Figure
|
||||||
|
- kind: float
|
||||||
|
key: rtb
|
||||||
|
reference-prefix: "Table R"
|
||||||
|
space-before-numbering: false
|
||||||
|
caption-prefix: "Table R"
|
||||||
|
latex-env: rtb
|
||||||
|
latex-list-of-file-extension: lost
|
||||||
|
latex-list-of-description: Revision Table
|
||||||
|
- kind: float
|
||||||
|
key: req
|
||||||
|
reference-prefix: "Eq R"
|
||||||
|
space-before-numbering: false
|
||||||
|
caption-prefix: "Eq R"
|
||||||
|
latex-env: req
|
||||||
|
latex-list-of-file-extension: lost
|
||||||
|
latex-list-of-description: Revision Equation
|
||||||
|
prefer-html: true
|
||||||
|
format:
|
||||||
|
# elsevier-html:
|
||||||
|
# toc: true
|
||||||
|
# css: _extensions/drwater/dwms/inst/css/style.css
|
||||||
|
# docx:
|
||||||
|
# reference-doc: _extensions/drwater/dwms/inst/word/MS.docx
|
||||||
|
dwms-pdf:
|
||||||
|
fontsize: 12pt
|
||||||
|
keep-md: false
|
||||||
|
keep-tex: true
|
||||||
|
header-includes:
|
||||||
|
- \usepackage{endfloat}
|
||||||
|
- \doublespacing
|
||||||
|
- \linenumbers
|
||||||
|
# filters:
|
||||||
|
# - latex-environment
|
||||||
|
# - authoraffil
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
```{r}
|
||||||
|
#| include: false
|
||||||
|
#| cache: false
|
||||||
|
|
||||||
|
lang <- "en"
|
||||||
|
isRendering <- isTRUE(getOption("knitr.in.progress"))
|
||||||
|
require(tidyverse)
|
||||||
|
require(drwateR)
|
||||||
|
require(patchwork)
|
||||||
|
rmdify::rmd_init()
|
||||||
|
dwfun::init()
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
{{< pagebreak >}}
|
||||||
|
|
||||||
|
# Abstract {-}
|
||||||
|
|
||||||
|
|
||||||
|
{{< pagebreak >}}
|
||||||
|
|
||||||
|
|
||||||
|
{{< pagebreak >}}
|
||||||
|
|
||||||
|
<!-- {{< include _est.qmd >}} -->
|
||||||
|
|
||||||
|
# References {-}
|
||||||
|
|
||||||
|
::: {#refs}
|
||||||
|
:::
|
||||||
|
|
||||||
|
{{< pagebreak >}}
|
||||||
|
|
||||||
|
<!-- {{< include _nature.qmd >}} -->
|
|
@ -0,0 +1,405 @@
|
||||||
|
% Options for packages loaded elsewhere
|
||||||
|
% Options for packages loaded elsewhere
|
||||||
|
\PassOptionsToPackage{unicode}{hyperref}
|
||||||
|
\PassOptionsToPackage{hyphens}{url}
|
||||||
|
\PassOptionsToPackage{dvipsnames,svgnames,x11names}{xcolor}
|
||||||
|
\PassOptionsToPackage{space}{xeCJK}
|
||||||
|
%
|
||||||
|
\documentclass[
|
||||||
|
english,
|
||||||
|
12pt,
|
||||||
|
letterpaper,
|
||||||
|
]{article}
|
||||||
|
\usepackage{xcolor}
|
||||||
|
\usepackage[margin=1in]{geometry}
|
||||||
|
\usepackage{amsmath,amssymb}
|
||||||
|
\setcounter{secnumdepth}{-\maxdimen} % remove section numbering
|
||||||
|
\usepackage{iftex}
|
||||||
|
\ifPDFTeX
|
||||||
|
\usepackage[T1]{fontenc}
|
||||||
|
\usepackage[utf8]{inputenc}
|
||||||
|
\usepackage{textcomp} % provide euro and other symbols
|
||||||
|
\else % if luatex or xetex
|
||||||
|
\usepackage{unicode-math} % this also loads fontspec
|
||||||
|
\defaultfontfeatures{Scale=MatchLowercase}
|
||||||
|
\defaultfontfeatures[\rmfamily]{Ligatures=TeX,Scale=1}
|
||||||
|
\fi
|
||||||
|
\usepackage{lmodern}
|
||||||
|
\ifPDFTeX\else
|
||||||
|
% xetex/luatex font selection
|
||||||
|
\setmainfont[]{Source Sans 3}
|
||||||
|
\setsansfont[Color=39729E]{Gill Sans}
|
||||||
|
\setmonofont[]{JetBrains Mono}
|
||||||
|
\setmathfont[]{Cambria Math}
|
||||||
|
\ifXeTeX
|
||||||
|
\usepackage{xeCJK}
|
||||||
|
\setCJKmainfont[]{SimHei}
|
||||||
|
\fi
|
||||||
|
\ifLuaTeX
|
||||||
|
\usepackage[]{luatexja-fontspec}
|
||||||
|
\setmainjfont[]{SimHei}
|
||||||
|
\fi
|
||||||
|
\fi
|
||||||
|
% Use upquote if available, for straight quotes in verbatim environments
|
||||||
|
\IfFileExists{upquote.sty}{\usepackage{upquote}}{}
|
||||||
|
\IfFileExists{microtype.sty}{% use microtype if available
|
||||||
|
\usepackage[]{microtype}
|
||||||
|
\UseMicrotypeSet[protrusion]{basicmath} % disable protrusion for tt fonts
|
||||||
|
}{}
|
||||||
|
\makeatletter
|
||||||
|
\@ifundefined{KOMAClassName}{% if non-KOMA class
|
||||||
|
\IfFileExists{parskip.sty}{%
|
||||||
|
\usepackage{parskip}
|
||||||
|
}{% else
|
||||||
|
\setlength{\parindent}{0pt}
|
||||||
|
\setlength{\parskip}{6pt plus 2pt minus 1pt}}
|
||||||
|
}{% if KOMA class
|
||||||
|
\KOMAoptions{parskip=half}}
|
||||||
|
\makeatother
|
||||||
|
|
||||||
|
|
||||||
|
\usepackage{longtable,booktabs,array}
|
||||||
|
\usepackage{calc} % for calculating minipage widths
|
||||||
|
% Correct order of tables after \paragraph or \subparagraph
|
||||||
|
\usepackage{etoolbox}
|
||||||
|
\makeatletter
|
||||||
|
\patchcmd\longtable{\par}{\if@noskipsec\mbox{}\fi\par}{}{}
|
||||||
|
\makeatother
|
||||||
|
% Allow footnotes in longtable head/foot
|
||||||
|
\IfFileExists{footnotehyper.sty}{\usepackage{footnotehyper}}{\usepackage{footnote}}
|
||||||
|
\makesavenoteenv{longtable}
|
||||||
|
\usepackage{graphicx}
|
||||||
|
\makeatletter
|
||||||
|
\newsavebox\pandoc@box
|
||||||
|
\newcommand*\pandocbounded[1]{% scales image to fit in text height/width
|
||||||
|
\sbox\pandoc@box{#1}%
|
||||||
|
\Gscale@div\@tempa{\textheight}{\dimexpr\ht\pandoc@box+\dp\pandoc@box\relax}%
|
||||||
|
\Gscale@div\@tempb{\linewidth}{\wd\pandoc@box}%
|
||||||
|
\ifdim\@tempb\p@<\@tempa\p@\let\@tempa\@tempb\fi% select the smaller of both
|
||||||
|
\ifdim\@tempa\p@<\p@\scalebox{\@tempa}{\usebox\pandoc@box}%
|
||||||
|
\else\usebox{\pandoc@box}%
|
||||||
|
\fi%
|
||||||
|
}
|
||||||
|
% Set default figure placement to htbp
|
||||||
|
\def\fps@figure{htbp}
|
||||||
|
\makeatother
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
\ifLuaTeX
|
||||||
|
\usepackage[bidi=basic]{babel}
|
||||||
|
\else
|
||||||
|
\usepackage[bidi=default]{babel}
|
||||||
|
\fi
|
||||||
|
\ifPDFTeX
|
||||||
|
\else
|
||||||
|
\babelfont{rm}[]{Source Sans 3}
|
||||||
|
\fi
|
||||||
|
% get rid of language-specific shorthands (see #6817):
|
||||||
|
\let\LanguageShortHands\languageshorthands
|
||||||
|
\def\languageshorthands#1{}
|
||||||
|
\ifLuaTeX
|
||||||
|
\usepackage[english]{selnolig} % disable illegal ligatures
|
||||||
|
\fi
|
||||||
|
|
||||||
|
|
||||||
|
\setlength{\emergencystretch}{3em} % prevent overfull lines
|
||||||
|
|
||||||
|
\providecommand{\tightlist}{%
|
||||||
|
\setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
% -----------------------
|
||||||
|
% CUSTOM PREAMBLE STUFF
|
||||||
|
% -----------------------
|
||||||
|
\usepackage{enumitem}
|
||||||
|
\usepackage{fontspec}
|
||||||
|
\usepackage{float}
|
||||||
|
\usepackage[normalem]{ulem}
|
||||||
|
\usepackage{hyperref}
|
||||||
|
\usepackage{nameref} %needed by zref-xr
|
||||||
|
\usepackage{zref-xr,zref-hyperref,zref-user}
|
||||||
|
\usepackage{xr-hyper}
|
||||||
|
\usepackage[normalem]{ulem}
|
||||||
|
\usepackage{setspace}
|
||||||
|
\usepackage{lineno}
|
||||||
|
\usepackage{caption}
|
||||||
|
\captionsetup{singlelinecheck=off}
|
||||||
|
\usepackage[UTF8, scheme=plain]{ctex}
|
||||||
|
\usepackage{orcidlink}
|
||||||
|
|
||||||
|
% \setkomafont{author}{\normalsize}
|
||||||
|
|
||||||
|
% for revision
|
||||||
|
\usepackage{adjustbox}
|
||||||
|
% \usepackage{xcolor}
|
||||||
|
\usepackage{mdframed}
|
||||||
|
\newmdenv[topline=false,
|
||||||
|
leftline=true,
|
||||||
|
bottomline=false,
|
||||||
|
rightline=false,
|
||||||
|
linewidth=3pt,
|
||||||
|
%backgroundcolor=lightgray,
|
||||||
|
linecolor=gray!30,
|
||||||
|
backgroundcolor=gray!5,
|
||||||
|
skipabove=\topsep,
|
||||||
|
skipbelow=\topsep,
|
||||||
|
leftmargin=0pt,
|
||||||
|
rightmargin=0pt,
|
||||||
|
innertopmargin=0pt,
|
||||||
|
innerbottommargin=0pt
|
||||||
|
]{refquote}
|
||||||
|
\newmdenv[topline=false,
|
||||||
|
leftline=true,
|
||||||
|
bottomline=false,
|
||||||
|
rightline=false,
|
||||||
|
linewidth=3pt,
|
||||||
|
%backgroundcolor=lightgray,
|
||||||
|
backgroundcolor=red!3!white,
|
||||||
|
linecolor=red!30!white,
|
||||||
|
skipabove=\topsep,
|
||||||
|
skipbelow=\topsep,
|
||||||
|
leftmargin=0pt,
|
||||||
|
rightmargin=0pt,
|
||||||
|
innertopmargin=10pt,
|
||||||
|
innerbottommargin=10pt
|
||||||
|
]{question}
|
||||||
|
% setup hyperlink for page and line number
|
||||||
|
\def\msname{MS}
|
||||||
|
\def\smname{SM}
|
||||||
|
\setenumerate{labelsep=*, leftmargin=1.0pc}
|
||||||
|
%\zexternaldocument*{ManuscriptNew\veraa}
|
||||||
|
\zexternaldocument*{\msname}
|
||||||
|
\zexternaldocument*{\smname}
|
||||||
|
\newcommand{\hlabel}[1]{\label{#1}\hypertarget{#1}{
|
||||||
|
\linelabel{line:#1}}}
|
||||||
|
%\externaldocument[si-]{\smname\veraa}[\smname\veraa.pdf]
|
||||||
|
\makeatletter
|
||||||
|
\newcommand{\clab}[2][]{
|
||||||
|
\protected@write\@auxout{\let\clab\@secondoftwo}{
|
||||||
|
\string\newlabel{r:#1}{{#2}{}}}%
|
||||||
|
\hlabel{#1}#2\hlabel{#1end}}
|
||||||
|
\makeatother
|
||||||
|
\newcommand{\zhypera}[1]{\href[pdfnewwindow]{\msname.pdf\##1}{\\[1ex]\textbf{Page \zpageref{#1}, Line
|
||||||
|
\zref{line:#1}--\zref{line:#1end}:}\\}}
|
||||||
|
\newcommand{\cref}[1]{\begin{refquote}\zhypera{#1}{\zref{r:#1}}\\[-0.5ex]\end{refquote}}
|
||||||
|
% \newenvironment{ra}[1][\unskip]{\par \noindent \\[-1ex] \textbf{Response/Action:}\par\bf}{\ \\}
|
||||||
|
\renewenvironment{quote}{\begin{question}}{\end{question}}
|
||||||
|
% \renewenvironment{verbatim}{\begin{ra}}{\end{ra}}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
% -----------------
|
||||||
|
% Title block stuff
|
||||||
|
% -----------------
|
||||||
|
|
||||||
|
% Title
|
||||||
|
\makeatletter
|
||||||
|
\renewcommand{\title}[1]{\gdef\@title{\large\textbf{#1}}} % Adjust \Huge or other font commands
|
||||||
|
\makeatother
|
||||||
|
|
||||||
|
|
||||||
|
% ------------------
|
||||||
|
% Section headings
|
||||||
|
% ------------------
|
||||||
|
\usepackage{titlesec}
|
||||||
|
\titleformat*{\section}{\Large\sffamily\bfseries\raggedright}
|
||||||
|
\titleformat*{\subsection}{\large\sffamily\bfseries\raggedright}
|
||||||
|
\titleformat*{\subsubsection}{\normalsize\sffamily\bfseries\raggedright}
|
||||||
|
\titleformat*{\paragraph}{\small\sffamily\bfseries\raggedright}
|
||||||
|
|
||||||
|
%\titlespacing{<command>}{<left>}{<before-sep>}{<after-sep>}
|
||||||
|
% Starred version removes indentation in following paragraph
|
||||||
|
\titlespacing*{\section}{0em}{2em}{0.1em}
|
||||||
|
\titlespacing*{\subsection}{0em}{1.25em}{0.1em}
|
||||||
|
\titlespacing*{\subsubsection}{0em}{0.75em}{0em}
|
||||||
|
|
||||||
|
% ------------------
|
||||||
|
% Headers/Footers
|
||||||
|
% ------------------
|
||||||
|
% \usepackage{fancyhdr}
|
||||||
|
% \pagestyle{fancy}
|
||||||
|
% \fancyhf{}
|
||||||
|
% \fancyhead[L,C,R]{}
|
||||||
|
% \fancyfoot[L,C]{}
|
||||||
|
% \fancyfoot[R]{\thepage}
|
||||||
|
% \renewcommand{\headrulewidth}{1pt}
|
||||||
|
% \fancypagestyle{plain}{%
|
||||||
|
% \renewcommand{\headrulewidth}{0pt}%
|
||||||
|
% \fancyhf{}%
|
||||||
|
% \fancyfoot[R]{\thepage}%
|
||||||
|
% }
|
||||||
|
% \renewcommand\footnoterule{\rule{\linewidth}{0.1pt}\vspace{5pt}}
|
||||||
|
|
||||||
|
% ------------------
|
||||||
|
% Captions
|
||||||
|
% ------------------
|
||||||
|
\usepackage[labelfont=bf,labelsep=period]{caption}
|
||||||
|
\captionsetup[figure]{font=footnotesize,justification=raggedright,singlelinecheck=false,format=hang}
|
||||||
|
|
||||||
|
|
||||||
|
% ---------------------------
|
||||||
|
% END CUSTOM PREAMBLE STUFF
|
||||||
|
% ---------------------------
|
||||||
|
\usepackage{endfloat}
|
||||||
|
\doublespacing
|
||||||
|
\linenumbers
|
||||||
|
\makeatletter
|
||||||
|
\@ifpackageloaded{float}{}{\usepackage{float}}
|
||||||
|
\floatstyle{plain}
|
||||||
|
\@ifundefined{c@chapter}{\newfloat{sfg}{h}{lost}}{\newfloat{sfg}{h}{lost}[chapter]}
|
||||||
|
\floatname{sfg}{Supplementary Fig.}
|
||||||
|
\newcommand*\listofsfgs{\listof{sfg}{List of Supplementary Figures}}
|
||||||
|
\makeatother
|
||||||
|
\makeatletter
|
||||||
|
\@ifpackageloaded{float}{}{\usepackage{float}}
|
||||||
|
\floatstyle{plain}
|
||||||
|
\@ifundefined{c@chapter}{\newfloat{stb}{h}{lost}}{\newfloat{stb}{h}{lost}[chapter]}
|
||||||
|
\floatname{stb}{Supplementary Table}
|
||||||
|
\newcommand*\listofstbs{\listof{stb}{List of Supplementary Tables}}
|
||||||
|
\makeatother
|
||||||
|
\makeatletter
|
||||||
|
\@ifpackageloaded{float}{}{\usepackage{float}}
|
||||||
|
\floatstyle{plain}
|
||||||
|
\@ifundefined{c@chapter}{\newfloat{seq}{h}{lost}}{\newfloat{seq}{h}{lost}[chapter]}
|
||||||
|
\floatname{seq}{Supplementary Eq.}
|
||||||
|
\newcommand*\listofseqs{\listof{seq}{List of Supplementary Equations}}
|
||||||
|
\makeatother
|
||||||
|
\makeatletter
|
||||||
|
\@ifpackageloaded{float}{}{\usepackage{float}}
|
||||||
|
\floatstyle{plain}
|
||||||
|
\@ifundefined{c@chapter}{\newfloat{rfg}{h}{lost}}{\newfloat{rfg}{h}{lost}[chapter]}
|
||||||
|
\floatname{rfg}{Fig. R}
|
||||||
|
\newcommand*\quartorfgref[1]{Fig. \hyperref[#1]{R\ref{#1}}}
|
||||||
|
\@ifpackageloaded{caption}{}{\usepackage{caption}}
|
||||||
|
\DeclareCaptionLabelFormat{quartorfgreflabelformat}{#1#2}
|
||||||
|
\captionsetup[rfg]{labelformat=quartorfgreflabelformat}
|
||||||
|
\newcommand*\listofrfgs{\listof{rfg}{List of Revision Figures}}
|
||||||
|
\makeatother
|
||||||
|
\makeatletter
|
||||||
|
\@ifpackageloaded{float}{}{\usepackage{float}}
|
||||||
|
\floatstyle{plain}
|
||||||
|
\@ifundefined{c@chapter}{\newfloat{rtb}{h}{lost}}{\newfloat{rtb}{h}{lost}[chapter]}
|
||||||
|
\floatname{rtb}{Table R}
|
||||||
|
\newcommand*\quartortbref[1]{Table \hyperref[#1]{R\ref{#1}}}
|
||||||
|
\@ifpackageloaded{caption}{}{\usepackage{caption}}
|
||||||
|
\DeclareCaptionLabelFormat{quartortbreflabelformat}{#1#2}
|
||||||
|
\captionsetup[rtb]{labelformat=quartortbreflabelformat}
|
||||||
|
\newcommand*\listofrtbs{\listof{rtb}{List of Revision Tables}}
|
||||||
|
\makeatother
|
||||||
|
\makeatletter
|
||||||
|
\@ifpackageloaded{float}{}{\usepackage{float}}
|
||||||
|
\floatstyle{plain}
|
||||||
|
\@ifundefined{c@chapter}{\newfloat{req}{h}{lost}}{\newfloat{req}{h}{lost}[chapter]}
|
||||||
|
\floatname{req}{Eq R}
|
||||||
|
\newcommand*\quartoreqref[1]{Eq \hyperref[#1]{R\ref{#1}}}
|
||||||
|
\@ifpackageloaded{caption}{}{\usepackage{caption}}
|
||||||
|
\DeclareCaptionLabelFormat{quartoreqreflabelformat}{#1#2}
|
||||||
|
\captionsetup[req]{labelformat=quartoreqreflabelformat}
|
||||||
|
\newcommand*\listofreqs{\listof{req}{List of Revision Equations}}
|
||||||
|
\makeatother
|
||||||
|
\makeatletter
|
||||||
|
\@ifpackageloaded{caption}{}{\usepackage{caption}}
|
||||||
|
\AtBeginDocument{%
|
||||||
|
\ifdefined\contentsname
|
||||||
|
\renewcommand*\contentsname{Table of contents}
|
||||||
|
\else
|
||||||
|
\newcommand\contentsname{Table of contents}
|
||||||
|
\fi
|
||||||
|
\ifdefined\listfigurename
|
||||||
|
\renewcommand*\listfigurename{List of Figures}
|
||||||
|
\else
|
||||||
|
\newcommand\listfigurename{List of Figures}
|
||||||
|
\fi
|
||||||
|
\ifdefined\listtablename
|
||||||
|
\renewcommand*\listtablename{List of Tables}
|
||||||
|
\else
|
||||||
|
\newcommand\listtablename{List of Tables}
|
||||||
|
\fi
|
||||||
|
\ifdefined\figurename
|
||||||
|
\renewcommand*\figurename{Fig.}
|
||||||
|
\else
|
||||||
|
\newcommand\figurename{Fig.}
|
||||||
|
\fi
|
||||||
|
\ifdefined\tablename
|
||||||
|
\renewcommand*\tablename{Table}
|
||||||
|
\else
|
||||||
|
\newcommand\tablename{Table}
|
||||||
|
\fi
|
||||||
|
}
|
||||||
|
\@ifpackageloaded{float}{}{\usepackage{float}}
|
||||||
|
\floatstyle{ruled}
|
||||||
|
\@ifundefined{c@chapter}{\newfloat{codelisting}{h}{lop}}{\newfloat{codelisting}{h}{lop}[chapter]}
|
||||||
|
\floatname{codelisting}{Listing}
|
||||||
|
\newcommand*\listoflistings{\listof{codelisting}{List of Listings}}
|
||||||
|
\captionsetup{labelsep=colon}
|
||||||
|
\makeatother
|
||||||
|
\makeatletter
|
||||||
|
\makeatother
|
||||||
|
\makeatletter
|
||||||
|
\@ifpackageloaded{caption}{}{\usepackage{caption}}
|
||||||
|
\@ifpackageloaded{subcaption}{}{\usepackage{subcaption}}
|
||||||
|
\makeatother
|
||||||
|
\usepackage{bookmark}
|
||||||
|
\IfFileExists{xurl.sty}{\usepackage{xurl}}{} % add URL line breaks if available
|
||||||
|
\urlstyle{same}
|
||||||
|
\hypersetup{
|
||||||
|
pdftitle={MANUSCRIPT TITLE},
|
||||||
|
pdfauthor={Xxxxx Yyyy; Ming Su; Min Yang},
|
||||||
|
pdflang={en},
|
||||||
|
colorlinks=true,
|
||||||
|
linkcolor={blue},
|
||||||
|
filecolor={Maroon},
|
||||||
|
citecolor={Blue},
|
||||||
|
urlcolor={blue},
|
||||||
|
pdfcreator={LaTeX via pandoc}}
|
||||||
|
|
||||||
|
|
||||||
|
\title{MANUSCRIPT TITLE}
|
||||||
|
\usepackage{etoolbox}
|
||||||
|
\makeatletter
|
||||||
|
\providecommand{\subtitle}[1]{% add subtitle to \maketitle
|
||||||
|
\apptocmd{\@title}{\par {\large\sffamily\bfseries #1 \par}}{}{}
|
||||||
|
}
|
||||||
|
\makeatother
|
||||||
|
\subtitle{Supplementary Information}
|
||||||
|
\author{\footnotesize Xxxxx Yyyy \and \footnotesize Ming
|
||||||
|
Su \and \footnotesize Min Yang}
|
||||||
|
\date{2025-07-27}
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
% for some reason this does not work in header
|
||||||
|
\renewcommand{\abstractname}{Abstract.}
|
||||||
|
|
||||||
|
% add the short title to the fancy header
|
||||||
|
|
||||||
|
\maketitle
|
||||||
|
%\noindent \rule{\linewidth}{.5pt}
|
||||||
|
%\noindent \rule{\linewidth}{.5pt}
|
||||||
|
|
||||||
|
|
||||||
|
\newpage{}
|
||||||
|
|
||||||
|
\section*{Abstract}\label{abstract}
|
||||||
|
\addcontentsline{toc}{section}{Abstract}
|
||||||
|
|
||||||
|
\newpage{}
|
||||||
|
|
||||||
|
\newpage{}
|
||||||
|
|
||||||
|
\section*{References}\label{references}
|
||||||
|
\addcontentsline{toc}{section}{References}
|
||||||
|
|
||||||
|
\phantomsection\label{refs}
|
||||||
|
|
||||||
|
\newpage{}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
\end{document}
|
|
@ -0,0 +1,11 @@
|
||||||
|
\relax
|
||||||
|
\providecommand\zref@newlabel[2]{}
|
||||||
|
\providecommand \babel@aux [2]{\global \let \babel@toc \@gobbletwo }
|
||||||
|
\@nameuse{bbl@beforestart}
|
||||||
|
\providecommand\hyper@newdestlabel[2]{}
|
||||||
|
\providecommand*\HyPL@Entry[1]{}
|
||||||
|
\HyPL@Entry{0<</S/D>>}
|
||||||
|
\babel@aux{english}{}
|
||||||
|
\@writefile{lost}{\contentsline {sfg}{\numberline {1}{\ignorespaces Caption of demo figure}}{3}{sfg.1}\protected@file@percent }
|
||||||
|
\newlabel{sfg-demo}{{1}{3}{Caption of demo figure}{sfg.1}{}}
|
||||||
|
\gdef \@abspage@last{3}
|
|
@ -0,0 +1,197 @@
|
||||||
|
---
|
||||||
|
msname: MS
|
||||||
|
smname: SM
|
||||||
|
title: "MANUSCRIPT TITLE"
|
||||||
|
subtitle: "Supplementary Information"
|
||||||
|
submitjournal: "JOURNAL"
|
||||||
|
submitid:
|
||||||
|
lang: en
|
||||||
|
date: ""
|
||||||
|
# bibliography: [BB/Ref.bib, BB/localRef.bib]
|
||||||
|
affilstyle: alphabeta # number
|
||||||
|
author:
|
||||||
|
- name: Xxxxx Yyyy
|
||||||
|
affiliations:
|
||||||
|
- ref: kleac
|
||||||
|
# email: 13586740928@163.com
|
||||||
|
attributes:
|
||||||
|
corresponding: false
|
||||||
|
equal-contributor: true
|
||||||
|
role:
|
||||||
|
- data-curation: lead
|
||||||
|
- methodology: lead
|
||||||
|
- formalanalysis: lead
|
||||||
|
- writingoriginal: equal
|
||||||
|
- writingediting: eqaul
|
||||||
|
- visualisation: supporting
|
||||||
|
- name: Ming Su
|
||||||
|
email: mingsu@rcees.ac.cn
|
||||||
|
orcid: 0000-0001-9821-1268
|
||||||
|
url: https://drwater.net/team/ming-su/
|
||||||
|
role:
|
||||||
|
- conceptualization: lead
|
||||||
|
- methodology: supporting
|
||||||
|
- formalanalysis: lead
|
||||||
|
- writingoriginal: equal
|
||||||
|
- writingediting: equal
|
||||||
|
- visualisation: lead
|
||||||
|
- projectadmin: lead
|
||||||
|
- supervision
|
||||||
|
affiliations:
|
||||||
|
- ref: kleac
|
||||||
|
- ref: ucas
|
||||||
|
attributes:
|
||||||
|
corresponding: true
|
||||||
|
equal-contributor: true
|
||||||
|
- name: Min Yang
|
||||||
|
email: yangmin@rcees.ac.cn
|
||||||
|
affiliations:
|
||||||
|
- ref: kleac
|
||||||
|
- ref: ucas
|
||||||
|
attributes:
|
||||||
|
corresponding: true
|
||||||
|
affiliations:
|
||||||
|
- id: kleac
|
||||||
|
name: State Key Laboratory of Environmental Aquatic Chemistry, Research Center for Eco-Environmental Sciences, Chinese Academy of Sciences
|
||||||
|
# address: No. 18 Shuangqing Road
|
||||||
|
city: Beijing
|
||||||
|
postal-code: 100085
|
||||||
|
country: China
|
||||||
|
url: https://www.skleac.ac.cn
|
||||||
|
- id: ucas
|
||||||
|
name: University of Chinese Academy of Sciences
|
||||||
|
# address: No. 19A Yuquan Road
|
||||||
|
city: Beijing
|
||||||
|
postal-code: 100049
|
||||||
|
country: China
|
||||||
|
url: https://www.ucas.ac.cn
|
||||||
|
crossref:
|
||||||
|
fig-title: Fig. # (default is "Figure")
|
||||||
|
tbl-title: Table # (default is "Table")
|
||||||
|
eq-title: Eq. # (default is "Equation")
|
||||||
|
title-delim: ":" # (default is ":")
|
||||||
|
fig-prefix: Fig. # (default is "Figure")
|
||||||
|
tbl-prefix: Table # (default is "Table")
|
||||||
|
eq-prefix: Eq.
|
||||||
|
ref-hyperlink: true # (default is true)
|
||||||
|
custom:
|
||||||
|
- kind: float
|
||||||
|
key: sfg
|
||||||
|
reference-prefix: "Supplementary Fig."
|
||||||
|
space-before-numbering: true
|
||||||
|
caption-prefix: "Supplementary Fig."
|
||||||
|
latex-env: sfg
|
||||||
|
latex-list-of-file-extension: lost
|
||||||
|
latex-list-of-description: Supplementary Figure
|
||||||
|
- kind: float
|
||||||
|
key: stb
|
||||||
|
reference-prefix: "Supplementary Table"
|
||||||
|
space-before-numbering: true
|
||||||
|
caption-prefix: "Supplementary Table"
|
||||||
|
latex-env: stb
|
||||||
|
latex-list-of-file-extension: lost
|
||||||
|
latex-list-of-description: Supplementary Table
|
||||||
|
- kind: float
|
||||||
|
key: seq
|
||||||
|
reference-prefix: "Supplementary Eq."
|
||||||
|
space-before-numbering: true
|
||||||
|
caption-prefix: "Supplementary Eq."
|
||||||
|
latex-env: seq
|
||||||
|
latex-list-of-file-extension: lost
|
||||||
|
latex-list-of-description: Supplementary Equation
|
||||||
|
- kind: float
|
||||||
|
key: rfg
|
||||||
|
reference-prefix: "Fig. R"
|
||||||
|
space-before-numbering: false
|
||||||
|
caption-prefix: "Fig. R"
|
||||||
|
latex-env: rfg
|
||||||
|
latex-list-of-file-extension: lost
|
||||||
|
latex-list-of-description: Revision Figure
|
||||||
|
- kind: float
|
||||||
|
key: rtb
|
||||||
|
reference-prefix: "Table R"
|
||||||
|
space-before-numbering: false
|
||||||
|
caption-prefix: "Table R"
|
||||||
|
latex-env: rtb
|
||||||
|
latex-list-of-file-extension: lost
|
||||||
|
latex-list-of-description: Revision Table
|
||||||
|
- kind: float
|
||||||
|
key: req
|
||||||
|
reference-prefix: "Eq R"
|
||||||
|
space-before-numbering: false
|
||||||
|
caption-prefix: "Eq R"
|
||||||
|
latex-env: req
|
||||||
|
latex-list-of-file-extension: lost
|
||||||
|
latex-list-of-description: Revision Equation
|
||||||
|
prefer-html: true
|
||||||
|
format:
|
||||||
|
dwms-pdf:
|
||||||
|
latex-clean: false # to keep aux
|
||||||
|
keep-md: false
|
||||||
|
keep-tex: true
|
||||||
|
header-includes:
|
||||||
|
- \doublespacing
|
||||||
|
- \linenumbers
|
||||||
|
- \let\oldsection\section
|
||||||
|
- \renewcommand{\section}{\clearpage\oldsection}
|
||||||
|
- \let\oldsubsection\subsection
|
||||||
|
- \renewcommand{\subsection}{\clearpage\oldsubsection}
|
||||||
|
# filters:
|
||||||
|
# - authoraffil
|
||||||
|
---
|
||||||
|
|
||||||
|
\thispagestyle{empty}
|
||||||
|
|
||||||
|
```{r}
|
||||||
|
#| include: false
|
||||||
|
#| cache: false
|
||||||
|
options(tinytex.clean = FALSE)
|
||||||
|
lang <- "en"
|
||||||
|
RM <- "F" # global rendermode, L: load pdata; F: fast load pdf
|
||||||
|
isRendering <- isTRUE(getOption('knitr.in.progress'))
|
||||||
|
require(tidyverse)
|
||||||
|
require(patchwork)
|
||||||
|
require(drwateR)
|
||||||
|
rmdify::rmd_init()
|
||||||
|
```
|
||||||
|
|
||||||
|
Figures and/or tables are provided below as the supplementary evidences to the main text.
|
||||||
|
|
||||||
|
{{< pagebreak >}}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
```{=latex}
|
||||||
|
\clearpage
|
||||||
|
{
|
||||||
|
\hypersetup{linkcolor=black}
|
||||||
|
\setcounter{tocdepth}{3}
|
||||||
|
\tableofcontents
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
{{< pagebreak >}}
|
||||||
|
|
||||||
|
|
||||||
|
::: {#sfg-demo}
|
||||||
|
|
||||||
|
```{r}
|
||||||
|
#| out-width: "40%"
|
||||||
|
|
||||||
|
if (!isRendering) {
|
||||||
|
data.frame(x = 1:10, y = 1:10) |>
|
||||||
|
ggplot(aes(x, y)) +
|
||||||
|
geom_point() +
|
||||||
|
theme_sci(3, 2.0)
|
||||||
|
|
||||||
|
ggsavep("../figures/demo.pdf", loadit = FALSE)
|
||||||
|
}
|
||||||
|
|
||||||
|
ggsavep("../figures/demo", loadit = TRUE)
|
||||||
|
```
|
||||||
|
|
||||||
|
Caption of demo figure
|
||||||
|
|
||||||
|
:::
|
||||||
|
|
|
@ -0,0 +1,422 @@
|
||||||
|
% Options for packages loaded elsewhere
|
||||||
|
% Options for packages loaded elsewhere
|
||||||
|
\PassOptionsToPackage{unicode}{hyperref}
|
||||||
|
\PassOptionsToPackage{hyphens}{url}
|
||||||
|
\PassOptionsToPackage{dvipsnames,svgnames,x11names}{xcolor}
|
||||||
|
\PassOptionsToPackage{space}{xeCJK}
|
||||||
|
%
|
||||||
|
\documentclass[
|
||||||
|
english,
|
||||||
|
12pt,
|
||||||
|
letterpaper,
|
||||||
|
]{article}
|
||||||
|
\usepackage{xcolor}
|
||||||
|
\usepackage[margin=1in]{geometry}
|
||||||
|
\usepackage{amsmath,amssymb}
|
||||||
|
\setcounter{secnumdepth}{-\maxdimen} % remove section numbering
|
||||||
|
\usepackage{iftex}
|
||||||
|
\ifPDFTeX
|
||||||
|
\usepackage[T1]{fontenc}
|
||||||
|
\usepackage[utf8]{inputenc}
|
||||||
|
\usepackage{textcomp} % provide euro and other symbols
|
||||||
|
\else % if luatex or xetex
|
||||||
|
\usepackage{unicode-math} % this also loads fontspec
|
||||||
|
\defaultfontfeatures{Scale=MatchLowercase}
|
||||||
|
\defaultfontfeatures[\rmfamily]{Ligatures=TeX,Scale=1}
|
||||||
|
\fi
|
||||||
|
\usepackage{lmodern}
|
||||||
|
\ifPDFTeX\else
|
||||||
|
% xetex/luatex font selection
|
||||||
|
\setmainfont[]{Source Sans 3}
|
||||||
|
\setsansfont[Color=39729E]{Gill Sans}
|
||||||
|
\setmonofont[]{JetBrains Mono}
|
||||||
|
\setmathfont[]{Cambria Math}
|
||||||
|
\ifXeTeX
|
||||||
|
\usepackage{xeCJK}
|
||||||
|
\setCJKmainfont[]{SimHei}
|
||||||
|
\fi
|
||||||
|
\ifLuaTeX
|
||||||
|
\usepackage[]{luatexja-fontspec}
|
||||||
|
\setmainjfont[]{SimHei}
|
||||||
|
\fi
|
||||||
|
\fi
|
||||||
|
% Use upquote if available, for straight quotes in verbatim environments
|
||||||
|
\IfFileExists{upquote.sty}{\usepackage{upquote}}{}
|
||||||
|
\IfFileExists{microtype.sty}{% use microtype if available
|
||||||
|
\usepackage[]{microtype}
|
||||||
|
\UseMicrotypeSet[protrusion]{basicmath} % disable protrusion for tt fonts
|
||||||
|
}{}
|
||||||
|
\makeatletter
|
||||||
|
\@ifundefined{KOMAClassName}{% if non-KOMA class
|
||||||
|
\IfFileExists{parskip.sty}{%
|
||||||
|
\usepackage{parskip}
|
||||||
|
}{% else
|
||||||
|
\setlength{\parindent}{0pt}
|
||||||
|
\setlength{\parskip}{6pt plus 2pt minus 1pt}}
|
||||||
|
}{% if KOMA class
|
||||||
|
\KOMAoptions{parskip=half}}
|
||||||
|
\makeatother
|
||||||
|
|
||||||
|
|
||||||
|
\usepackage{longtable,booktabs,array}
|
||||||
|
\usepackage{calc} % for calculating minipage widths
|
||||||
|
% Correct order of tables after \paragraph or \subparagraph
|
||||||
|
\usepackage{etoolbox}
|
||||||
|
\makeatletter
|
||||||
|
\patchcmd\longtable{\par}{\if@noskipsec\mbox{}\fi\par}{}{}
|
||||||
|
\makeatother
|
||||||
|
% Allow footnotes in longtable head/foot
|
||||||
|
\IfFileExists{footnotehyper.sty}{\usepackage{footnotehyper}}{\usepackage{footnote}}
|
||||||
|
\makesavenoteenv{longtable}
|
||||||
|
\usepackage{graphicx}
|
||||||
|
\makeatletter
|
||||||
|
\newsavebox\pandoc@box
|
||||||
|
\newcommand*\pandocbounded[1]{% scales image to fit in text height/width
|
||||||
|
\sbox\pandoc@box{#1}%
|
||||||
|
\Gscale@div\@tempa{\textheight}{\dimexpr\ht\pandoc@box+\dp\pandoc@box\relax}%
|
||||||
|
\Gscale@div\@tempb{\linewidth}{\wd\pandoc@box}%
|
||||||
|
\ifdim\@tempb\p@<\@tempa\p@\let\@tempa\@tempb\fi% select the smaller of both
|
||||||
|
\ifdim\@tempa\p@<\p@\scalebox{\@tempa}{\usebox\pandoc@box}%
|
||||||
|
\else\usebox{\pandoc@box}%
|
||||||
|
\fi%
|
||||||
|
}
|
||||||
|
% Set default figure placement to htbp
|
||||||
|
\def\fps@figure{htbp}
|
||||||
|
\makeatother
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
\ifLuaTeX
|
||||||
|
\usepackage[bidi=basic]{babel}
|
||||||
|
\else
|
||||||
|
\usepackage[bidi=default]{babel}
|
||||||
|
\fi
|
||||||
|
\ifPDFTeX
|
||||||
|
\else
|
||||||
|
\babelfont{rm}[]{Source Sans 3}
|
||||||
|
\fi
|
||||||
|
% get rid of language-specific shorthands (see #6817):
|
||||||
|
\let\LanguageShortHands\languageshorthands
|
||||||
|
\def\languageshorthands#1{}
|
||||||
|
\ifLuaTeX
|
||||||
|
\usepackage[english]{selnolig} % disable illegal ligatures
|
||||||
|
\fi
|
||||||
|
|
||||||
|
|
||||||
|
\setlength{\emergencystretch}{3em} % prevent overfull lines
|
||||||
|
|
||||||
|
\providecommand{\tightlist}{%
|
||||||
|
\setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
% -----------------------
|
||||||
|
% CUSTOM PREAMBLE STUFF
|
||||||
|
% -----------------------
|
||||||
|
\usepackage{enumitem}
|
||||||
|
\usepackage{fontspec}
|
||||||
|
\usepackage{float}
|
||||||
|
\usepackage[normalem]{ulem}
|
||||||
|
\usepackage{hyperref}
|
||||||
|
\usepackage{nameref} %needed by zref-xr
|
||||||
|
\usepackage{zref-xr,zref-hyperref,zref-user}
|
||||||
|
\usepackage{xr-hyper}
|
||||||
|
\usepackage[normalem]{ulem}
|
||||||
|
\usepackage{setspace}
|
||||||
|
\usepackage{lineno}
|
||||||
|
\usepackage{caption}
|
||||||
|
\captionsetup{singlelinecheck=off}
|
||||||
|
\usepackage[UTF8, scheme=plain]{ctex}
|
||||||
|
\usepackage{orcidlink}
|
||||||
|
|
||||||
|
% \setkomafont{author}{\normalsize}
|
||||||
|
|
||||||
|
% for revision
|
||||||
|
\usepackage{adjustbox}
|
||||||
|
% \usepackage{xcolor}
|
||||||
|
\usepackage{mdframed}
|
||||||
|
\newmdenv[topline=false,
|
||||||
|
leftline=true,
|
||||||
|
bottomline=false,
|
||||||
|
rightline=false,
|
||||||
|
linewidth=3pt,
|
||||||
|
%backgroundcolor=lightgray,
|
||||||
|
linecolor=gray!30,
|
||||||
|
backgroundcolor=gray!5,
|
||||||
|
skipabove=\topsep,
|
||||||
|
skipbelow=\topsep,
|
||||||
|
leftmargin=0pt,
|
||||||
|
rightmargin=0pt,
|
||||||
|
innertopmargin=0pt,
|
||||||
|
innerbottommargin=0pt
|
||||||
|
]{refquote}
|
||||||
|
\newmdenv[topline=false,
|
||||||
|
leftline=true,
|
||||||
|
bottomline=false,
|
||||||
|
rightline=false,
|
||||||
|
linewidth=3pt,
|
||||||
|
%backgroundcolor=lightgray,
|
||||||
|
backgroundcolor=red!3!white,
|
||||||
|
linecolor=red!30!white,
|
||||||
|
skipabove=\topsep,
|
||||||
|
skipbelow=\topsep,
|
||||||
|
leftmargin=0pt,
|
||||||
|
rightmargin=0pt,
|
||||||
|
innertopmargin=10pt,
|
||||||
|
innerbottommargin=10pt
|
||||||
|
]{question}
|
||||||
|
% setup hyperlink for page and line number
|
||||||
|
\def\msname{MS}
|
||||||
|
\def\smname{SM}
|
||||||
|
\setenumerate{labelsep=*, leftmargin=1.0pc}
|
||||||
|
%\zexternaldocument*{ManuscriptNew\veraa}
|
||||||
|
\zexternaldocument*{\msname}
|
||||||
|
\zexternaldocument*{\smname}
|
||||||
|
\newcommand{\hlabel}[1]{\label{#1}\hypertarget{#1}{
|
||||||
|
\linelabel{line:#1}}}
|
||||||
|
%\externaldocument[si-]{\smname\veraa}[\smname\veraa.pdf]
|
||||||
|
\makeatletter
|
||||||
|
\newcommand{\clab}[2][]{
|
||||||
|
\protected@write\@auxout{\let\clab\@secondoftwo}{
|
||||||
|
\string\newlabel{r:#1}{{#2}{}}}%
|
||||||
|
\hlabel{#1}#2\hlabel{#1end}}
|
||||||
|
\makeatother
|
||||||
|
\newcommand{\zhypera}[1]{\href[pdfnewwindow]{\msname.pdf\##1}{\\[1ex]\textbf{Page \zpageref{#1}, Line
|
||||||
|
\zref{line:#1}--\zref{line:#1end}:}\\}}
|
||||||
|
\newcommand{\cref}[1]{\begin{refquote}\zhypera{#1}{\zref{r:#1}}\\[-0.5ex]\end{refquote}}
|
||||||
|
% \newenvironment{ra}[1][\unskip]{\par \noindent \\[-1ex] \textbf{Response/Action:}\par\bf}{\ \\}
|
||||||
|
\renewenvironment{quote}{\begin{question}}{\end{question}}
|
||||||
|
% \renewenvironment{verbatim}{\begin{ra}}{\end{ra}}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
% -----------------
|
||||||
|
% Title block stuff
|
||||||
|
% -----------------
|
||||||
|
|
||||||
|
% Title
|
||||||
|
\makeatletter
|
||||||
|
\renewcommand{\title}[1]{\gdef\@title{\large\textbf{#1}}} % Adjust \Huge or other font commands
|
||||||
|
\makeatother
|
||||||
|
|
||||||
|
|
||||||
|
% ------------------
|
||||||
|
% Section headings
|
||||||
|
% ------------------
|
||||||
|
\usepackage{titlesec}
|
||||||
|
\titleformat*{\section}{\Large\sffamily\bfseries\raggedright}
|
||||||
|
\titleformat*{\subsection}{\large\sffamily\bfseries\raggedright}
|
||||||
|
\titleformat*{\subsubsection}{\normalsize\sffamily\bfseries\raggedright}
|
||||||
|
\titleformat*{\paragraph}{\small\sffamily\bfseries\raggedright}
|
||||||
|
|
||||||
|
%\titlespacing{<command>}{<left>}{<before-sep>}{<after-sep>}
|
||||||
|
% Starred version removes indentation in following paragraph
|
||||||
|
\titlespacing*{\section}{0em}{2em}{0.1em}
|
||||||
|
\titlespacing*{\subsection}{0em}{1.25em}{0.1em}
|
||||||
|
\titlespacing*{\subsubsection}{0em}{0.75em}{0em}
|
||||||
|
|
||||||
|
% ------------------
|
||||||
|
% Headers/Footers
|
||||||
|
% ------------------
|
||||||
|
% \usepackage{fancyhdr}
|
||||||
|
% \pagestyle{fancy}
|
||||||
|
% \fancyhf{}
|
||||||
|
% \fancyhead[L,C,R]{}
|
||||||
|
% \fancyfoot[L,C]{}
|
||||||
|
% \fancyfoot[R]{\thepage}
|
||||||
|
% \renewcommand{\headrulewidth}{1pt}
|
||||||
|
% \fancypagestyle{plain}{%
|
||||||
|
% \renewcommand{\headrulewidth}{0pt}%
|
||||||
|
% \fancyhf{}%
|
||||||
|
% \fancyfoot[R]{\thepage}%
|
||||||
|
% }
|
||||||
|
% \renewcommand\footnoterule{\rule{\linewidth}{0.1pt}\vspace{5pt}}
|
||||||
|
|
||||||
|
% ------------------
|
||||||
|
% Captions
|
||||||
|
% ------------------
|
||||||
|
\usepackage[labelfont=bf,labelsep=period]{caption}
|
||||||
|
\captionsetup[figure]{font=footnotesize,justification=raggedright,singlelinecheck=false,format=hang}
|
||||||
|
|
||||||
|
|
||||||
|
% ---------------------------
|
||||||
|
% END CUSTOM PREAMBLE STUFF
|
||||||
|
% ---------------------------
|
||||||
|
\doublespacing
|
||||||
|
\linenumbers
|
||||||
|
\let\oldsection\section
|
||||||
|
\renewcommand{\section}{\clearpage\oldsection}
|
||||||
|
\let\oldsubsection\subsection
|
||||||
|
\renewcommand{\subsection}{\clearpage\oldsubsection}
|
||||||
|
\makeatletter
|
||||||
|
\@ifpackageloaded{float}{}{\usepackage{float}}
|
||||||
|
\floatstyle{plain}
|
||||||
|
\@ifundefined{c@chapter}{\newfloat{sfg}{h}{lost}}{\newfloat{sfg}{h}{lost}[chapter]}
|
||||||
|
\floatname{sfg}{Supplementary Fig.}
|
||||||
|
\newcommand*\listofsfgs{\listof{sfg}{List of Supplementary Figures}}
|
||||||
|
\makeatother
|
||||||
|
\makeatletter
|
||||||
|
\@ifpackageloaded{float}{}{\usepackage{float}}
|
||||||
|
\floatstyle{plain}
|
||||||
|
\@ifundefined{c@chapter}{\newfloat{stb}{h}{lost}}{\newfloat{stb}{h}{lost}[chapter]}
|
||||||
|
\floatname{stb}{Supplementary Table}
|
||||||
|
\newcommand*\listofstbs{\listof{stb}{List of Supplementary Tables}}
|
||||||
|
\makeatother
|
||||||
|
\makeatletter
|
||||||
|
\@ifpackageloaded{float}{}{\usepackage{float}}
|
||||||
|
\floatstyle{plain}
|
||||||
|
\@ifundefined{c@chapter}{\newfloat{seq}{h}{lost}}{\newfloat{seq}{h}{lost}[chapter]}
|
||||||
|
\floatname{seq}{Supplementary Eq.}
|
||||||
|
\newcommand*\listofseqs{\listof{seq}{List of Supplementary Equations}}
|
||||||
|
\makeatother
|
||||||
|
\makeatletter
|
||||||
|
\@ifpackageloaded{float}{}{\usepackage{float}}
|
||||||
|
\floatstyle{plain}
|
||||||
|
\@ifundefined{c@chapter}{\newfloat{rfg}{h}{lost}}{\newfloat{rfg}{h}{lost}[chapter]}
|
||||||
|
\floatname{rfg}{Fig. R}
|
||||||
|
\newcommand*\quartorfgref[1]{Fig. \hyperref[#1]{R\ref{#1}}}
|
||||||
|
\@ifpackageloaded{caption}{}{\usepackage{caption}}
|
||||||
|
\DeclareCaptionLabelFormat{quartorfgreflabelformat}{#1#2}
|
||||||
|
\captionsetup[rfg]{labelformat=quartorfgreflabelformat}
|
||||||
|
\newcommand*\listofrfgs{\listof{rfg}{List of Revision Figures}}
|
||||||
|
\makeatother
|
||||||
|
\makeatletter
|
||||||
|
\@ifpackageloaded{float}{}{\usepackage{float}}
|
||||||
|
\floatstyle{plain}
|
||||||
|
\@ifundefined{c@chapter}{\newfloat{rtb}{h}{lost}}{\newfloat{rtb}{h}{lost}[chapter]}
|
||||||
|
\floatname{rtb}{Table R}
|
||||||
|
\newcommand*\quartortbref[1]{Table \hyperref[#1]{R\ref{#1}}}
|
||||||
|
\@ifpackageloaded{caption}{}{\usepackage{caption}}
|
||||||
|
\DeclareCaptionLabelFormat{quartortbreflabelformat}{#1#2}
|
||||||
|
\captionsetup[rtb]{labelformat=quartortbreflabelformat}
|
||||||
|
\newcommand*\listofrtbs{\listof{rtb}{List of Revision Tables}}
|
||||||
|
\makeatother
|
||||||
|
\makeatletter
|
||||||
|
\@ifpackageloaded{float}{}{\usepackage{float}}
|
||||||
|
\floatstyle{plain}
|
||||||
|
\@ifundefined{c@chapter}{\newfloat{req}{h}{lost}}{\newfloat{req}{h}{lost}[chapter]}
|
||||||
|
\floatname{req}{Eq R}
|
||||||
|
\newcommand*\quartoreqref[1]{Eq \hyperref[#1]{R\ref{#1}}}
|
||||||
|
\@ifpackageloaded{caption}{}{\usepackage{caption}}
|
||||||
|
\DeclareCaptionLabelFormat{quartoreqreflabelformat}{#1#2}
|
||||||
|
\captionsetup[req]{labelformat=quartoreqreflabelformat}
|
||||||
|
\newcommand*\listofreqs{\listof{req}{List of Revision Equations}}
|
||||||
|
\makeatother
|
||||||
|
\makeatletter
|
||||||
|
\@ifpackageloaded{caption}{}{\usepackage{caption}}
|
||||||
|
\AtBeginDocument{%
|
||||||
|
\ifdefined\contentsname
|
||||||
|
\renewcommand*\contentsname{Table of contents}
|
||||||
|
\else
|
||||||
|
\newcommand\contentsname{Table of contents}
|
||||||
|
\fi
|
||||||
|
\ifdefined\listfigurename
|
||||||
|
\renewcommand*\listfigurename{List of Figures}
|
||||||
|
\else
|
||||||
|
\newcommand\listfigurename{List of Figures}
|
||||||
|
\fi
|
||||||
|
\ifdefined\listtablename
|
||||||
|
\renewcommand*\listtablename{List of Tables}
|
||||||
|
\else
|
||||||
|
\newcommand\listtablename{List of Tables}
|
||||||
|
\fi
|
||||||
|
\ifdefined\figurename
|
||||||
|
\renewcommand*\figurename{Fig.}
|
||||||
|
\else
|
||||||
|
\newcommand\figurename{Fig.}
|
||||||
|
\fi
|
||||||
|
\ifdefined\tablename
|
||||||
|
\renewcommand*\tablename{Table}
|
||||||
|
\else
|
||||||
|
\newcommand\tablename{Table}
|
||||||
|
\fi
|
||||||
|
}
|
||||||
|
\@ifpackageloaded{float}{}{\usepackage{float}}
|
||||||
|
\floatstyle{ruled}
|
||||||
|
\@ifundefined{c@chapter}{\newfloat{codelisting}{h}{lop}}{\newfloat{codelisting}{h}{lop}[chapter]}
|
||||||
|
\floatname{codelisting}{Listing}
|
||||||
|
\newcommand*\listoflistings{\listof{codelisting}{List of Listings}}
|
||||||
|
\captionsetup{labelsep=colon}
|
||||||
|
\makeatother
|
||||||
|
\makeatletter
|
||||||
|
\makeatother
|
||||||
|
\makeatletter
|
||||||
|
\@ifpackageloaded{caption}{}{\usepackage{caption}}
|
||||||
|
\@ifpackageloaded{subcaption}{}{\usepackage{subcaption}}
|
||||||
|
\makeatother
|
||||||
|
\usepackage{bookmark}
|
||||||
|
\IfFileExists{xurl.sty}{\usepackage{xurl}}{} % add URL line breaks if available
|
||||||
|
\urlstyle{same}
|
||||||
|
\hypersetup{
|
||||||
|
pdftitle={MANUSCRIPT TITLE},
|
||||||
|
pdfauthor={Xxxxx Yyyy; Ming Su; Min Yang},
|
||||||
|
pdflang={en},
|
||||||
|
colorlinks=true,
|
||||||
|
linkcolor={blue},
|
||||||
|
filecolor={Maroon},
|
||||||
|
citecolor={Blue},
|
||||||
|
urlcolor={blue},
|
||||||
|
pdfcreator={LaTeX via pandoc}}
|
||||||
|
|
||||||
|
|
||||||
|
\title{MANUSCRIPT TITLE}
|
||||||
|
\usepackage{etoolbox}
|
||||||
|
\makeatletter
|
||||||
|
\providecommand{\subtitle}[1]{% add subtitle to \maketitle
|
||||||
|
\apptocmd{\@title}{\par {\large\sffamily\bfseries #1 \par}}{}{}
|
||||||
|
}
|
||||||
|
\makeatother
|
||||||
|
\subtitle{Supplementary Information}
|
||||||
|
\author{\footnotesize Xxxxx Yyyy \and \footnotesize Ming
|
||||||
|
Su \and \footnotesize Min Yang}
|
||||||
|
\date{}
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
% for some reason this does not work in header
|
||||||
|
\renewcommand{\abstractname}{Abstract.}
|
||||||
|
|
||||||
|
% add the short title to the fancy header
|
||||||
|
|
||||||
|
\maketitle
|
||||||
|
%\noindent \rule{\linewidth}{.5pt}
|
||||||
|
%\noindent \rule{\linewidth}{.5pt}
|
||||||
|
|
||||||
|
|
||||||
|
\thispagestyle{empty}
|
||||||
|
|
||||||
|
Figures and/or tables are provided below as the supplementary evidences
|
||||||
|
to the main text.
|
||||||
|
|
||||||
|
\newpage{}
|
||||||
|
|
||||||
|
\clearpage
|
||||||
|
{
|
||||||
|
\hypersetup{linkcolor=black}
|
||||||
|
\setcounter{tocdepth}{3}
|
||||||
|
\tableofcontents
|
||||||
|
}
|
||||||
|
|
||||||
|
\newpage{}
|
||||||
|
|
||||||
|
\begin{sfg}
|
||||||
|
|
||||||
|
\centering{
|
||||||
|
|
||||||
|
\begin{verbatim}
|
||||||
|
#> NULL
|
||||||
|
\end{verbatim}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
\caption{\label{sfg-demo}Caption of demo figure}
|
||||||
|
|
||||||
|
\end{sfg}%
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
\end{document}
|
|
@ -0,0 +1 @@
|
||||||
|
\babel@toc {english}{}\relax
|
|
@ -36,6 +36,6 @@ contributes:
|
||||||
- "partials/after-body.tex"
|
- "partials/after-body.tex"
|
||||||
filters:
|
filters:
|
||||||
- latex-environment
|
- latex-environment
|
||||||
- authors-block
|
- authoraffil.lua
|
||||||
lightbox: auto
|
lightbox: auto
|
||||||
commands: [clab]
|
commands: [clab]
|
||||||
|
|
|
@ -0,0 +1,41 @@
|
||||||
|
title: dwms-pdf-quarto
|
||||||
|
author: Ming Su
|
||||||
|
version: 0.0.1
|
||||||
|
quarto-required: ">=1.3.0"
|
||||||
|
contributes:
|
||||||
|
formats:
|
||||||
|
common:
|
||||||
|
knitr:
|
||||||
|
opts_chunk:
|
||||||
|
echo: false
|
||||||
|
message: false
|
||||||
|
warning: false
|
||||||
|
pdf:
|
||||||
|
documentclass: article
|
||||||
|
toc: false
|
||||||
|
papersize: letter
|
||||||
|
fontsize: 12pt
|
||||||
|
geometry: margin=1in
|
||||||
|
fig-height: 4 # smaller fig heights make floating easier
|
||||||
|
fig-width: 7.5 # set to the (full width - margins) of letter
|
||||||
|
fig-pos: "!t"
|
||||||
|
colorlinks: true
|
||||||
|
urlcolor: blue
|
||||||
|
sansfont: "Gill Sans"
|
||||||
|
sansfontoptions:
|
||||||
|
- Color=39729E
|
||||||
|
mainfont: "Source Sans 3" #| Verdana (fontsize: 11pt) # Source Sans 3 | Times New Roman| Helvetica | PT Sans
|
||||||
|
monofont: "JetBrains Mono"
|
||||||
|
mathfont: "Cambria Math"
|
||||||
|
CJKmainfont: SimHei
|
||||||
|
block-headings: false # to deal with titlesec problems
|
||||||
|
include-in-header: header.tex
|
||||||
|
template-partials:
|
||||||
|
- "partials/title.tex"
|
||||||
|
- "partials/before-body.tex"
|
||||||
|
- "partials/after-body.tex"
|
||||||
|
filters:
|
||||||
|
- latex-environment
|
||||||
|
- authoraffil.lua
|
||||||
|
lightbox: auto
|
||||||
|
commands: [clab]
|
|
@ -0,0 +1,133 @@
|
||||||
|
% -----------------------
|
||||||
|
% CUSTOM PREAMBLE STUFF
|
||||||
|
% -----------------------
|
||||||
|
\usepackage{enumitem}
|
||||||
|
\usepackage{fontspec}
|
||||||
|
\usepackage{float}
|
||||||
|
\usepackage[normalem]{ulem}
|
||||||
|
\usepackage{hyperref}
|
||||||
|
\usepackage{nameref} %needed by zref-xr
|
||||||
|
\usepackage{zref-xr,zref-hyperref,zref-user}
|
||||||
|
\usepackage{xr-hyper}
|
||||||
|
\usepackage[normalem]{ulem}
|
||||||
|
\usepackage{setspace}
|
||||||
|
\usepackage{lineno}
|
||||||
|
\usepackage{caption}
|
||||||
|
\captionsetup{singlelinecheck=off}
|
||||||
|
\usepackage[UTF8, scheme=plain]{ctex}
|
||||||
|
\usepackage{orcidlink}
|
||||||
|
|
||||||
|
% \setkomafont{author}{\normalsize}
|
||||||
|
|
||||||
|
% for revision
|
||||||
|
\usepackage{adjustbox}
|
||||||
|
% \usepackage{xcolor}
|
||||||
|
\usepackage{mdframed}
|
||||||
|
\newmdenv[topline=false,
|
||||||
|
leftline=true,
|
||||||
|
bottomline=false,
|
||||||
|
rightline=false,
|
||||||
|
linewidth=3pt,
|
||||||
|
%backgroundcolor=lightgray,
|
||||||
|
linecolor=gray!30,
|
||||||
|
backgroundcolor=gray!5,
|
||||||
|
skipabove=\topsep,
|
||||||
|
skipbelow=\topsep,
|
||||||
|
leftmargin=0pt,
|
||||||
|
rightmargin=0pt,
|
||||||
|
innertopmargin=0pt,
|
||||||
|
innerbottommargin=0pt
|
||||||
|
]{refquote}
|
||||||
|
\newmdenv[topline=false,
|
||||||
|
leftline=true,
|
||||||
|
bottomline=false,
|
||||||
|
rightline=false,
|
||||||
|
linewidth=3pt,
|
||||||
|
%backgroundcolor=lightgray,
|
||||||
|
backgroundcolor=red!3!white,
|
||||||
|
linecolor=red!30!white,
|
||||||
|
skipabove=\topsep,
|
||||||
|
skipbelow=\topsep,
|
||||||
|
leftmargin=0pt,
|
||||||
|
rightmargin=0pt,
|
||||||
|
innertopmargin=10pt,
|
||||||
|
innerbottommargin=10pt
|
||||||
|
]{question}
|
||||||
|
% setup hyperlink for page and line number
|
||||||
|
\def\msname{MS}
|
||||||
|
\def\smname{SM}
|
||||||
|
\setenumerate{labelsep=*, leftmargin=1.0pc}
|
||||||
|
%\zexternaldocument*{ManuscriptNew\veraa}
|
||||||
|
\zexternaldocument*{\msname}
|
||||||
|
\zexternaldocument*{\smname}
|
||||||
|
\newcommand{\hlabel}[1]{\label{#1}\hypertarget{#1}{
|
||||||
|
\linelabel{line:#1}}}
|
||||||
|
%\externaldocument[si-]{\smname\veraa}[\smname\veraa.pdf]
|
||||||
|
\makeatletter
|
||||||
|
\newcommand{\clab}[2][]{
|
||||||
|
\protected@write\@auxout{\let\clab\@secondoftwo}{
|
||||||
|
\string\newlabel{r:#1}{{#2}{}}}%
|
||||||
|
\hlabel{#1}#2\hlabel{#1end}}
|
||||||
|
\makeatother
|
||||||
|
\newcommand{\zhypera}[1]{\href[pdfnewwindow]{\msname.pdf\##1}{\\[1ex]\textbf{Page \zpageref{#1}, Line
|
||||||
|
\zref{line:#1}--\zref{line:#1end}:}\\}}
|
||||||
|
\newcommand{\cref}[1]{\begin{refquote}\zhypera{#1}{\zref{r:#1}}\\[-0.5ex]\end{refquote}}
|
||||||
|
% \newenvironment{ra}[1][\unskip]{\par \noindent \\[-1ex] \textbf{Response/Action:}\par\bf}{\ \\}
|
||||||
|
\renewenvironment{quote}{\begin{question}}{\end{question}}
|
||||||
|
% \renewenvironment{verbatim}{\begin{ra}}{\end{ra}}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
% -----------------
|
||||||
|
% Title block stuff
|
||||||
|
% -----------------
|
||||||
|
|
||||||
|
% Title
|
||||||
|
\makeatletter
|
||||||
|
\renewcommand{\title}[1]{\gdef\@title{\large\textbf{#1}}} % Adjust \Huge or other font commands
|
||||||
|
\makeatother
|
||||||
|
|
||||||
|
|
||||||
|
% ------------------
|
||||||
|
% Section headings
|
||||||
|
% ------------------
|
||||||
|
\usepackage{titlesec}
|
||||||
|
\titleformat*{\section}{\Large\sffamily\bfseries\raggedright}
|
||||||
|
\titleformat*{\subsection}{\large\sffamily\bfseries\raggedright}
|
||||||
|
\titleformat*{\subsubsection}{\normalsize\sffamily\bfseries\raggedright}
|
||||||
|
\titleformat*{\paragraph}{\small\sffamily\bfseries\raggedright}
|
||||||
|
|
||||||
|
%\titlespacing{<command>}{<left>}{<before-sep>}{<after-sep>}
|
||||||
|
% Starred version removes indentation in following paragraph
|
||||||
|
\titlespacing*{\section}{0em}{2em}{0.1em}
|
||||||
|
\titlespacing*{\subsection}{0em}{1.25em}{0.1em}
|
||||||
|
\titlespacing*{\subsubsection}{0em}{0.75em}{0em}
|
||||||
|
|
||||||
|
% ------------------
|
||||||
|
% Headers/Footers
|
||||||
|
% ------------------
|
||||||
|
% \usepackage{fancyhdr}
|
||||||
|
% \pagestyle{fancy}
|
||||||
|
% \fancyhf{}
|
||||||
|
% \fancyhead[L,C,R]{}
|
||||||
|
% \fancyfoot[L,C]{}
|
||||||
|
% \fancyfoot[R]{\thepage}
|
||||||
|
% \renewcommand{\headrulewidth}{1pt}
|
||||||
|
% \fancypagestyle{plain}{%
|
||||||
|
% \renewcommand{\headrulewidth}{0pt}%
|
||||||
|
% \fancyhf{}%
|
||||||
|
% \fancyfoot[R]{\thepage}%
|
||||||
|
% }
|
||||||
|
% \renewcommand\footnoterule{\rule{\linewidth}{0.1pt}\vspace{5pt}}
|
||||||
|
|
||||||
|
% ------------------
|
||||||
|
% Captions
|
||||||
|
% ------------------
|
||||||
|
\usepackage[labelfont=bf,labelsep=period]{caption}
|
||||||
|
\captionsetup[figure]{font=footnotesize,justification=raggedright,singlelinecheck=false,format=hang}
|
||||||
|
|
||||||
|
|
||||||
|
% ---------------------------
|
||||||
|
% END CUSTOM PREAMBLE STUFF
|
||||||
|
% ---------------------------
|
|
@ -0,0 +1,33 @@
|
||||||
|
$-- Implements the frontmatter, title page, and abstract.
|
||||||
|
|
||||||
|
% for some reason this does not work in header
|
||||||
|
\renewcommand{\abstractname}{Abstract.}
|
||||||
|
|
||||||
|
% add the short title to the fancy header
|
||||||
|
$if(shorttitle)$
|
||||||
|
\fancyhead[R]{$shorttitle$}
|
||||||
|
$endif$
|
||||||
|
$if(shortauthors)$
|
||||||
|
\fancyhead[L]{$shortauthors$}
|
||||||
|
$endif$
|
||||||
|
|
||||||
|
$if(has-frontmatter)$
|
||||||
|
\frontmatter
|
||||||
|
$endif$
|
||||||
|
$if(title)$
|
||||||
|
\maketitle
|
||||||
|
%\noindent \rule{\linewidth}{.5pt}
|
||||||
|
$if(abstract)$
|
||||||
|
\begin{abstract}
|
||||||
|
$abstract$
|
||||||
|
\end{abstract}
|
||||||
|
$if(keywords)$
|
||||||
|
\begin{keywords}
|
||||||
|
\def\sep{;\ }
|
||||||
|
$for(keywords/allbutlast)$$keywords$\sep $endfor$
|
||||||
|
$for(keywords/last)$$keywords$$endfor$
|
||||||
|
\end{keywords}
|
||||||
|
$endif$
|
||||||
|
$endif$
|
||||||
|
%\noindent \rule{\linewidth}{.5pt}
|
||||||
|
$endif$
|
|
@ -0,0 +1,15 @@
|
||||||
|
$if(title)$
|
||||||
|
\title{$title$$if(thanks)$\thanks{$thanks$}$endif$}
|
||||||
|
$endif$
|
||||||
|
$if(subtitle)$
|
||||||
|
\usepackage{etoolbox}
|
||||||
|
\makeatletter
|
||||||
|
\providecommand{\subtitle}[1]{% add subtitle to \maketitle
|
||||||
|
\apptocmd{\@title}{\par {\large\sffamily\bfseries #1 \par}}{}{}
|
||||||
|
}
|
||||||
|
\makeatother
|
||||||
|
\subtitle{$subtitle$}
|
||||||
|
$endif$
|
||||||
|
$-- This supports Quarto's authors normalization
|
||||||
|
\author{$for(authors)$\footnotesize $it.name.literal$$sep$ \and $endfor$}
|
||||||
|
\date{$date$}
|
|
@ -0,0 +1,3 @@
|
||||||
|
*_files
|
||||||
|
*.html
|
||||||
|
/*.png
|
|
@ -0,0 +1,23 @@
|
||||||
|
title: revealjs format for drwater
|
||||||
|
author: Ming Su
|
||||||
|
version: 1.0.0
|
||||||
|
quarto-required: ">=1.3.0"
|
||||||
|
contributes:
|
||||||
|
formats:
|
||||||
|
revealjs:
|
||||||
|
theme: [default, dwsd.css]
|
||||||
|
slide-number: true
|
||||||
|
date-format: long
|
||||||
|
logo: rceeslogo.png
|
||||||
|
format-resources: ["rceeslogo.png"]
|
||||||
|
chalkboard:
|
||||||
|
buttons: true
|
||||||
|
preview-links: auto
|
||||||
|
lang: zh
|
||||||
|
toc: true
|
||||||
|
toc-depth: 1
|
||||||
|
toc-title: 大纲
|
||||||
|
pointer:
|
||||||
|
key: "p"
|
||||||
|
color: "#32cd32"
|
||||||
|
pointerSize: 18
|
|
@ -0,0 +1,23 @@
|
||||||
|
title: revealjs format for drwater
|
||||||
|
author: Ming Su
|
||||||
|
version: 1.0.0
|
||||||
|
quarto-required: ">=1.3.0"
|
||||||
|
contributes:
|
||||||
|
formats:
|
||||||
|
revealjs:
|
||||||
|
theme: [default, dwsd.css]
|
||||||
|
slide-number: true
|
||||||
|
date-format: long
|
||||||
|
logo: rceeslogo.png
|
||||||
|
format-resources: ["rceeslogo.png"]
|
||||||
|
chalkboard:
|
||||||
|
buttons: true
|
||||||
|
preview-links: auto
|
||||||
|
lang: zh
|
||||||
|
toc: true
|
||||||
|
toc-depth: 1
|
||||||
|
toc-title: 大纲
|
||||||
|
pointer:
|
||||||
|
key: "p"
|
||||||
|
color: "#32cd32"
|
||||||
|
pointerSize: 18
|
|
@ -0,0 +1,23 @@
|
||||||
|
title: revealjs format for drwater
|
||||||
|
author: Ming Su
|
||||||
|
version: 1.0.0
|
||||||
|
quarto-required: ">=1.3.0"
|
||||||
|
contributes:
|
||||||
|
formats:
|
||||||
|
revealjs:
|
||||||
|
theme: [default, dwsd.css]
|
||||||
|
slide-number: true
|
||||||
|
date-format: long
|
||||||
|
logo: rceeslogo.png
|
||||||
|
format-resources: ["rceeslogo.png"]
|
||||||
|
chalkboard:
|
||||||
|
buttons: true
|
||||||
|
preview-links: auto
|
||||||
|
lang: zh
|
||||||
|
toc: true
|
||||||
|
toc-depth: 1
|
||||||
|
toc-title: 大纲
|
||||||
|
pointer:
|
||||||
|
key: "p"
|
||||||
|
color: "#32cd32"
|
||||||
|
pointerSize: 18
|
|
@ -0,0 +1,345 @@
|
||||||
|
:root {
|
||||||
|
--r-background-color: #fff;
|
||||||
|
--r-main-font: Source Sans Pro, simhei, microsoft yahei;
|
||||||
|
--r-main-font-size: 28px;
|
||||||
|
--r-main-color: #222;
|
||||||
|
--r-block-margin: 12px;
|
||||||
|
--r-heading-margin: 0 0 12px 0;
|
||||||
|
--r-heading-font: Source Sans Pro, microsoft yahei, simhei;
|
||||||
|
--r-heading-color: #0c4c8a;
|
||||||
|
--r-heading-line-height: 1.2em;
|
||||||
|
--r-heading-letter-spacing: normal;
|
||||||
|
--r-heading-text-transform: none;
|
||||||
|
--r-heading-text-shadow: none;
|
||||||
|
--r-heading-font-weight: 900;
|
||||||
|
--r-heading1-text-shadow: none;
|
||||||
|
--r-heading1-size: 2.5em;
|
||||||
|
--r-heading2-size: 1.6em;
|
||||||
|
--r-heading3-size: 1.3em;
|
||||||
|
--r-heading4-size: 1em;
|
||||||
|
--r-code-font: SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono,
|
||||||
|
Courier New, monospace;
|
||||||
|
--r-link-color: #ef562d;
|
||||||
|
--r-link-color-dark: #ef562d;
|
||||||
|
--r-link-color-hover: #d13076;
|
||||||
|
--r-selection-background-color: #98bdef;
|
||||||
|
--r-selection-color: #fff;
|
||||||
|
--quarto-hl-fu-color: #c53800;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal .title-slide h1 {
|
||||||
|
text-align: center;
|
||||||
|
line-height: var(--r-heading-line-height);
|
||||||
|
}
|
||||||
|
|
||||||
|
section#title-slide p.author,
|
||||||
|
section#title-slide p.institute,
|
||||||
|
section#title-slide p.date {
|
||||||
|
font-size: var(--r-heading2-size);
|
||||||
|
color: gray;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#title-slide h1.title:after {
|
||||||
|
content: " ";
|
||||||
|
display: block;
|
||||||
|
border: 3px solid;
|
||||||
|
border-image: linear-gradient(to right, white, var(--r-heading-color), white)
|
||||||
|
1;
|
||||||
|
border-radius: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#title-slide p.subtitle {
|
||||||
|
font-size: var(--r-heading3-size);
|
||||||
|
text-decoration: underline;
|
||||||
|
color: gray;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#title-slide a {
|
||||||
|
color: gray;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal .slide-number a {
|
||||||
|
color: #bbbbbb;
|
||||||
|
font-size: 10pt;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#title-slide a:hover {
|
||||||
|
color: var(--r-link-color-hover);
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal[data-navigation-mode="linear"] .title-slide h1 {
|
||||||
|
font-size: var(--r-heading2-size);
|
||||||
|
}
|
||||||
|
|
||||||
|
section#TOC {
|
||||||
|
vertical-align: middle;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#TOC h2 {
|
||||||
|
font-size: var(--r-heading2-size);
|
||||||
|
font-weight: bold;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#TOC h2:after {
|
||||||
|
content: " ";
|
||||||
|
display: block;
|
||||||
|
border: 3px solid;
|
||||||
|
border-image: linear-gradient(to right, white, var(--r-heading-color), white)
|
||||||
|
1;
|
||||||
|
border-radius: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#TOC ul {
|
||||||
|
text-align: left;
|
||||||
|
vertical-align: middle;
|
||||||
|
margin-top: 3em;
|
||||||
|
line-height: 1.6em;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#TOC ol li {
|
||||||
|
font-size: var(--r-heading3-size);
|
||||||
|
font-weight: bold;
|
||||||
|
color: gray;
|
||||||
|
list-style-type: number;
|
||||||
|
line-height: 1.6em;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#TOC strong,
|
||||||
|
section#TOC b {
|
||||||
|
color: black;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#TOC ul li {
|
||||||
|
font-size: var(--r-heading3-size);
|
||||||
|
font-weight: bold;
|
||||||
|
color: gray;
|
||||||
|
list-style-type: circle;
|
||||||
|
line-height: 1.6em;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#TOC a {
|
||||||
|
color: black;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#TOC a:hover {
|
||||||
|
color: var(--r-link-color-hover);
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal h2 {
|
||||||
|
text-align: left;
|
||||||
|
margin-top: 0px;
|
||||||
|
line-height: var(--r-heading-line-height);
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal .title-slide h1:after {
|
||||||
|
content: " ";
|
||||||
|
display: block;
|
||||||
|
border: 3px solid;
|
||||||
|
border-image: linear-gradient(to right, white, var(--r-heading-color), white)
|
||||||
|
1;
|
||||||
|
border-radius: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal h2:after {
|
||||||
|
content: " ";
|
||||||
|
display: block;
|
||||||
|
border: 3px solid;
|
||||||
|
border-image: linear-gradient(to right, var(--r-heading-color), white) 1;
|
||||||
|
border-radius: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal ul {
|
||||||
|
list-style-type: circle;
|
||||||
|
}
|
||||||
|
|
||||||
|
li:hover {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal p:hover {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal ul li {
|
||||||
|
line-height: 1.2em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal .thank h2 {
|
||||||
|
font-size: var(--r-heading1-size);
|
||||||
|
line-height: var(--r-heading-line-height);
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal .thank {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal .thank h2:after {
|
||||||
|
content: " ";
|
||||||
|
display: block;
|
||||||
|
border: 3px solid;
|
||||||
|
border-image: linear-gradient(to right, white, var(--r-heading-color), white)
|
||||||
|
1;
|
||||||
|
border-radius: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.panel-tabset [role="tab"] {
|
||||||
|
border-bottom: 1px solid red;
|
||||||
|
}
|
||||||
|
|
||||||
|
.panel-tabset [role="tab"][aria-selected="true"] {
|
||||||
|
background-color: #ffdddd;
|
||||||
|
border-bottom: 1px solid red;
|
||||||
|
}
|
||||||
|
|
||||||
|
.white {
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
.orange {
|
||||||
|
color: #e09a25;
|
||||||
|
}
|
||||||
|
.green {
|
||||||
|
color: #006e51;
|
||||||
|
}
|
||||||
|
.pink {
|
||||||
|
color: #d13076;
|
||||||
|
}
|
||||||
|
|
||||||
|
.dusty {
|
||||||
|
color: #ad5d5d;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flame {
|
||||||
|
color: #ef562d;
|
||||||
|
}
|
||||||
|
.kale {
|
||||||
|
color: #5c7148;
|
||||||
|
}
|
||||||
|
.blue {
|
||||||
|
color: #0c4c8a;
|
||||||
|
}
|
||||||
|
.red {
|
||||||
|
color: #b93a32;
|
||||||
|
}
|
||||||
|
.clay {
|
||||||
|
color: #9e4624;
|
||||||
|
}
|
||||||
|
.bodacious {
|
||||||
|
color: #b76ba3;
|
||||||
|
}
|
||||||
|
.serenity {
|
||||||
|
color: #91a8d0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cognac {
|
||||||
|
color: #60413c;
|
||||||
|
}
|
||||||
|
.sangria {
|
||||||
|
color: #760030;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alumium {
|
||||||
|
color: #75796a;
|
||||||
|
}
|
||||||
|
|
||||||
|
.marsala {
|
||||||
|
color: #964f4c;
|
||||||
|
}
|
||||||
|
.purple {
|
||||||
|
color: #702fa8;
|
||||||
|
}
|
||||||
|
|
||||||
|
.blank {
|
||||||
|
background-color: "Yellow";
|
||||||
|
width: 100%;
|
||||||
|
color: red;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal .slide aside {
|
||||||
|
position: absolute;
|
||||||
|
margin: 0 auto;
|
||||||
|
left: 2%;
|
||||||
|
font-size: 0.7em;
|
||||||
|
text-align: end;
|
||||||
|
max-width: 90%;
|
||||||
|
width: fit-content;
|
||||||
|
color: gray;
|
||||||
|
bottom: -6%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ref {
|
||||||
|
position: absolute;
|
||||||
|
margin: 0 auto;
|
||||||
|
right: 2%;
|
||||||
|
font-size: 1em;
|
||||||
|
text-align: end;
|
||||||
|
max-width: 90%;
|
||||||
|
width: fit-content;
|
||||||
|
color: gray;
|
||||||
|
bottom: -6%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.con {
|
||||||
|
position: absolute;
|
||||||
|
margin: 0 auto;
|
||||||
|
font-size: 1.4em;
|
||||||
|
text-align: center;
|
||||||
|
font-family: inherit;
|
||||||
|
max-width: 100%;
|
||||||
|
width: fit-content;
|
||||||
|
color: #023047;
|
||||||
|
bottom: -2%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.center {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tiny {
|
||||||
|
font-size: 60%;
|
||||||
|
}
|
||||||
|
|
||||||
|
figure > figcaption {
|
||||||
|
margin-top: -0.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal .slide figure > figcaption,
|
||||||
|
.reveal .slide img.stretch + p.caption,
|
||||||
|
.reveal .slide img.r-stretch + p.caption {
|
||||||
|
font-size: 0.9em;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal strong, .reveal b {
|
||||||
|
font-weight: bold;
|
||||||
|
color: crimson;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal pre code {
|
||||||
|
background-color: #554433;
|
||||||
|
line-height: 1.2em;
|
||||||
|
color: #fff;
|
||||||
|
/* font-size: x-large; */
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal pre code:hover{
|
||||||
|
font-size: x-large;
|
||||||
|
line-height: 120%;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#title-slide p.subtitle {
|
||||||
|
font-size: var(--r-heading3-size);
|
||||||
|
text-decoration: none;
|
||||||
|
color: gray;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal div.sourceCode pre code {
|
||||||
|
background-color: #002233;
|
||||||
|
min-height: 100%;
|
||||||
|
/* font-size: x-large; */
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal div.sourceCode pre code:hover {
|
||||||
|
font-size: x-large;
|
||||||
|
}
|
After Width: | Height: | Size: 81 KiB |
After Width: | Height: | Size: 222 KiB |
|
@ -0,0 +1,374 @@
|
||||||
|
/*-- scss:defaults --*/
|
||||||
|
|
||||||
|
/* Modified version of the metropolis theme ported into Quarto by Patrick Schwartz */
|
||||||
|
|
||||||
|
// fonts
|
||||||
|
@import url("https://fonts.googleapis.com/css?family=Fira+Sans:300,300i,400,400i,500,500i,700,700i");
|
||||||
|
@import url("https://fonts.googleapis.com/css?family=Fira+Code:300,300i,400,400i,500,500i,700,700i");
|
||||||
|
@import url("https://fonts.googleapis.com/css?family=Roboto+Mono|JetBrains+Mono&display=swap");
|
||||||
|
@import url("https://fonts.googleapis.com/css?family=Roboto:300,400,500,700&display=swap");
|
||||||
|
|
||||||
|
$font-family-sans-serif: "Fira Sans", "Roboto", "Droid Serif", serif !default;
|
||||||
|
$font-family-monospace: "Fira Code", "JetBrains Mono", monospace;
|
||||||
|
$presentation-font-size-root: 32px;
|
||||||
|
$presentation-line-height: 1.5em;
|
||||||
|
$presentation-heading-font-weight: 400;
|
||||||
|
|
||||||
|
// colors
|
||||||
|
$body-bg: #fafafa !default;
|
||||||
|
$body-color: #000 !default;
|
||||||
|
// $link-color: #EB811B !default;
|
||||||
|
$selection-bg: #26351c;
|
||||||
|
|
||||||
|
// headings
|
||||||
|
// $presentation-heading-font: "Palatino Linotype", "Book Antiqua", Palatino,
|
||||||
|
// FreeSerif, serif !default;
|
||||||
|
// $presentation-heading-color: #383d3d !default;
|
||||||
|
|
||||||
|
/*-- scss:rules --*/
|
||||||
|
|
||||||
|
:root {
|
||||||
|
--r-background-color: #fff;
|
||||||
|
--r-main-font: Source Sans Pro, simhei, microsoft yahei;
|
||||||
|
--r-main-font-size: 28px;
|
||||||
|
--r-main-color: #222;
|
||||||
|
--r-block-margin: 12px;
|
||||||
|
--r-heading-margin: 0 0 12px 0;
|
||||||
|
--r-heading-font: Source Sans Pro, microsoft yahei, simhei;
|
||||||
|
--r-heading-color: #0c4c8a;
|
||||||
|
--r-heading-line-height: 1.2em;
|
||||||
|
--r-heading-letter-spacing: normal;
|
||||||
|
--r-heading-text-transform: none;
|
||||||
|
--r-heading-text-shadow: none;
|
||||||
|
--r-heading-font-weight: 900;
|
||||||
|
--r-heading1-text-shadow: none;
|
||||||
|
--r-heading1-size: 2.5em;
|
||||||
|
--r-heading2-size: 1.6em;
|
||||||
|
--r-heading3-size: 1.3em;
|
||||||
|
--r-heading4-size: 1em;
|
||||||
|
--r-code-font: SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono,
|
||||||
|
Courier New, monospace;
|
||||||
|
--r-link-color: #ef562d;
|
||||||
|
--r-link-color-dark: #ef562d;
|
||||||
|
--r-link-color-hover: #d13076;
|
||||||
|
--r-selection-background-color: #98bdef;
|
||||||
|
--r-selection-color: #fff;
|
||||||
|
--quarto-hl-fu-color: #c53800;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal .title-slide h1 {
|
||||||
|
text-align: center;
|
||||||
|
line-height: var(--r-heading-line-height);
|
||||||
|
}
|
||||||
|
|
||||||
|
section#title-slide p.author,
|
||||||
|
section#title-slide p.institute,
|
||||||
|
section#title-slide p.date {
|
||||||
|
font-size: var(--r-heading2-size);
|
||||||
|
color: gray;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#title-slide h1.title:after {
|
||||||
|
content: " ";
|
||||||
|
display: block;
|
||||||
|
border: 3px solid;
|
||||||
|
border-image: linear-gradient(to right, white, var(--r-heading-color), white)
|
||||||
|
1;
|
||||||
|
border-radius: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#title-slide p.subtitle {
|
||||||
|
font-size: var(--r-heading3-size);
|
||||||
|
text-decoration: underline;
|
||||||
|
color: gray;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#title-slide a {
|
||||||
|
color: gray;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal .slide-number a {
|
||||||
|
color: #bbbbbb;
|
||||||
|
font-size: 10pt;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#title-slide a:hover {
|
||||||
|
color: var(--r-link-color-hover);
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal[data-navigation-mode="linear"] .title-slide h1 {
|
||||||
|
font-size: var(--r-heading2-size);
|
||||||
|
}
|
||||||
|
|
||||||
|
section#TOC {
|
||||||
|
vertical-align: middle;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#TOC h2 {
|
||||||
|
font-size: var(--r-heading2-size);
|
||||||
|
font-weight: bold;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#TOC h2:after {
|
||||||
|
content: " ";
|
||||||
|
display: block;
|
||||||
|
border: 3px solid;
|
||||||
|
border-image: linear-gradient(to right, white, var(--r-heading-color), white)
|
||||||
|
1;
|
||||||
|
border-radius: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#TOC ul {
|
||||||
|
text-align: left;
|
||||||
|
vertical-align: middle;
|
||||||
|
margin-top: 3em;
|
||||||
|
line-height: 1.6em;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#TOC ol li {
|
||||||
|
font-size: var(--r-heading3-size);
|
||||||
|
font-weight: bold;
|
||||||
|
color: gray;
|
||||||
|
list-style-type: number;
|
||||||
|
line-height: 1.6em;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#TOC strong,
|
||||||
|
section#TOC b {
|
||||||
|
color: black;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#TOC ul li {
|
||||||
|
font-size: var(--r-heading3-size);
|
||||||
|
font-weight: bold;
|
||||||
|
color: gray;
|
||||||
|
list-style-type: circle;
|
||||||
|
line-height: 1.6em;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#TOC a {
|
||||||
|
color: black;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#TOC a:hover {
|
||||||
|
color: var(--r-link-color-hover);
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal h2 {
|
||||||
|
text-align: left;
|
||||||
|
margin-top: 0px;
|
||||||
|
line-height: var(--r-heading-line-height);
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal .title-slide h1:after {
|
||||||
|
content: " ";
|
||||||
|
display: block;
|
||||||
|
border: 3px solid;
|
||||||
|
border-image: linear-gradient(to right, white, var(--r-heading-color), white)
|
||||||
|
1;
|
||||||
|
border-radius: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal h2:after {
|
||||||
|
content: " ";
|
||||||
|
display: block;
|
||||||
|
border: 3px solid;
|
||||||
|
border-image: linear-gradient(to right, var(--r-heading-color), white) 1;
|
||||||
|
border-radius: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal ul {
|
||||||
|
list-style-type: circle;
|
||||||
|
}
|
||||||
|
|
||||||
|
li:hover {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal p:hover {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal ul li {
|
||||||
|
line-height: 1.2em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal .thank h2 {
|
||||||
|
font-size: var(--r-heading1-size);
|
||||||
|
line-height: var(--r-heading-line-height);
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal .thank {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal .thank h2:after {
|
||||||
|
content: " ";
|
||||||
|
display: block;
|
||||||
|
border: 3px solid;
|
||||||
|
border-image: linear-gradient(to right, white, var(--r-heading-color), white)
|
||||||
|
1;
|
||||||
|
border-radius: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.panel-tabset [role="tab"] {
|
||||||
|
border-bottom: 1px solid red;
|
||||||
|
}
|
||||||
|
|
||||||
|
.panel-tabset [role="tab"][aria-selected="true"] {
|
||||||
|
background-color: #ffdddd;
|
||||||
|
border-bottom: 1px solid red;
|
||||||
|
}
|
||||||
|
|
||||||
|
.white {
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
.orange {
|
||||||
|
color: #e09a25;
|
||||||
|
}
|
||||||
|
.green {
|
||||||
|
color: #006e51;
|
||||||
|
}
|
||||||
|
.pink {
|
||||||
|
color: #d13076;
|
||||||
|
}
|
||||||
|
|
||||||
|
.dusty {
|
||||||
|
color: #ad5d5d;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flame {
|
||||||
|
color: #ef562d;
|
||||||
|
}
|
||||||
|
.kale {
|
||||||
|
color: #5c7148;
|
||||||
|
}
|
||||||
|
.blue {
|
||||||
|
color: #0c4c8a;
|
||||||
|
}
|
||||||
|
.red {
|
||||||
|
color: #b93a32;
|
||||||
|
}
|
||||||
|
.clay {
|
||||||
|
color: #9e4624;
|
||||||
|
}
|
||||||
|
.bodacious {
|
||||||
|
color: #b76ba3;
|
||||||
|
}
|
||||||
|
.serenity {
|
||||||
|
color: #91a8d0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cognac {
|
||||||
|
color: #60413c;
|
||||||
|
}
|
||||||
|
.sangria {
|
||||||
|
color: #760030;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alumium {
|
||||||
|
color: #75796a;
|
||||||
|
}
|
||||||
|
|
||||||
|
.marsala {
|
||||||
|
color: #964f4c;
|
||||||
|
}
|
||||||
|
.purple {
|
||||||
|
color: #702fa8;
|
||||||
|
}
|
||||||
|
|
||||||
|
.blank {
|
||||||
|
background-color: "Yellow";
|
||||||
|
width: 100%;
|
||||||
|
color: red;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal .slide aside {
|
||||||
|
position: absolute;
|
||||||
|
margin: 0 auto;
|
||||||
|
left: 2%;
|
||||||
|
font-size: 0.7em;
|
||||||
|
text-align: end;
|
||||||
|
max-width: 90%;
|
||||||
|
width: fit-content;
|
||||||
|
color: gray;
|
||||||
|
bottom: -6%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ref {
|
||||||
|
position: absolute;
|
||||||
|
margin: 0 auto;
|
||||||
|
right: 2%;
|
||||||
|
font-size: 1em;
|
||||||
|
text-align: end;
|
||||||
|
max-width: 90%;
|
||||||
|
width: fit-content;
|
||||||
|
color: gray;
|
||||||
|
bottom: -6%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.con {
|
||||||
|
position: absolute;
|
||||||
|
margin: 0 auto;
|
||||||
|
font-size: 1.4em;
|
||||||
|
text-align: center;
|
||||||
|
font-family: inherit;
|
||||||
|
max-width: 100%;
|
||||||
|
width: fit-content;
|
||||||
|
color: #023047;
|
||||||
|
bottom: -2%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.center {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tiny {
|
||||||
|
font-size: 60%;
|
||||||
|
}
|
||||||
|
|
||||||
|
figure > figcaption {
|
||||||
|
margin-top: -0.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal .slide figure > figcaption,
|
||||||
|
.reveal .slide img.stretch + p.caption,
|
||||||
|
.reveal .slide img.r-stretch + p.caption {
|
||||||
|
font-size: 0.9em;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal strong, .reveal b {
|
||||||
|
font-weight: bold;
|
||||||
|
color: crimson;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal pre code {
|
||||||
|
background-color: #554433;
|
||||||
|
line-height: 1.2em;
|
||||||
|
color: #fff;
|
||||||
|
/* font-size: x-large; */
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal pre code:hover{
|
||||||
|
font-size: x-large;
|
||||||
|
line-height: 120%;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#title-slide p.subtitle {
|
||||||
|
font-size: var(--r-heading3-size);
|
||||||
|
text-decoration: none;
|
||||||
|
color: gray;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal div.sourceCode pre code {
|
||||||
|
background-color: #002233;
|
||||||
|
min-height: 100%;
|
||||||
|
/* font-size: x-large; */
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal div.sourceCode pre code:hover {
|
||||||
|
font-size: x-large;
|
||||||
|
}
|
After Width: | Height: | Size: 81 KiB |
After Width: | Height: | Size: 222 KiB |
|
@ -0,0 +1,374 @@
|
||||||
|
/*-- scss:defaults --*/
|
||||||
|
|
||||||
|
/* Modified version of the metropolis theme ported into Quarto by Patrick Schwartz */
|
||||||
|
|
||||||
|
// fonts
|
||||||
|
@import url("https://fonts.googleapis.com/css?family=Fira+Sans:300,300i,400,400i,500,500i,700,700i");
|
||||||
|
@import url("https://fonts.googleapis.com/css?family=Fira+Code:300,300i,400,400i,500,500i,700,700i");
|
||||||
|
@import url("https://fonts.googleapis.com/css?family=Roboto+Mono|JetBrains+Mono&display=swap");
|
||||||
|
@import url("https://fonts.googleapis.com/css?family=Roboto:300,400,500,700&display=swap");
|
||||||
|
|
||||||
|
$font-family-sans-serif: "Fira Sans", "Roboto", "Droid Serif", serif !default;
|
||||||
|
$font-family-monospace: "Fira Code", "JetBrains Mono", monospace;
|
||||||
|
$presentation-font-size-root: 32px;
|
||||||
|
$presentation-line-height: 1.5em;
|
||||||
|
$presentation-heading-font-weight: 400;
|
||||||
|
|
||||||
|
// colors
|
||||||
|
$body-bg: #fafafa !default;
|
||||||
|
$body-color: #000 !default;
|
||||||
|
// $link-color: #EB811B !default;
|
||||||
|
$selection-bg: #26351c;
|
||||||
|
|
||||||
|
// headings
|
||||||
|
// $presentation-heading-font: "Palatino Linotype", "Book Antiqua", Palatino,
|
||||||
|
// FreeSerif, serif !default;
|
||||||
|
// $presentation-heading-color: #383d3d !default;
|
||||||
|
|
||||||
|
/*-- scss:rules --*/
|
||||||
|
|
||||||
|
:root {
|
||||||
|
--r-background-color: #fff;
|
||||||
|
--r-main-font: Source Sans Pro, simhei, microsoft yahei;
|
||||||
|
--r-main-font-size: 28px;
|
||||||
|
--r-main-color: #222;
|
||||||
|
--r-block-margin: 12px;
|
||||||
|
--r-heading-margin: 0 0 12px 0;
|
||||||
|
--r-heading-font: Source Sans Pro, microsoft yahei, simhei;
|
||||||
|
--r-heading-color: #0c4c8a;
|
||||||
|
--r-heading-line-height: 1.2em;
|
||||||
|
--r-heading-letter-spacing: normal;
|
||||||
|
--r-heading-text-transform: none;
|
||||||
|
--r-heading-text-shadow: none;
|
||||||
|
--r-heading-font-weight: 900;
|
||||||
|
--r-heading1-text-shadow: none;
|
||||||
|
--r-heading1-size: 2.5em;
|
||||||
|
--r-heading2-size: 1.6em;
|
||||||
|
--r-heading3-size: 1.3em;
|
||||||
|
--r-heading4-size: 1em;
|
||||||
|
--r-code-font: SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono,
|
||||||
|
Courier New, monospace;
|
||||||
|
--r-link-color: #ef562d;
|
||||||
|
--r-link-color-dark: #ef562d;
|
||||||
|
--r-link-color-hover: #d13076;
|
||||||
|
--r-selection-background-color: #98bdef;
|
||||||
|
--r-selection-color: #fff;
|
||||||
|
--quarto-hl-fu-color: #c53800;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal .title-slide h1 {
|
||||||
|
text-align: center;
|
||||||
|
line-height: var(--r-heading-line-height);
|
||||||
|
}
|
||||||
|
|
||||||
|
section#title-slide p.author,
|
||||||
|
section#title-slide p.institute,
|
||||||
|
section#title-slide p.date {
|
||||||
|
font-size: var(--r-heading2-size);
|
||||||
|
color: gray;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#title-slide h1.title:after {
|
||||||
|
content: " ";
|
||||||
|
display: block;
|
||||||
|
border: 3px solid;
|
||||||
|
border-image: linear-gradient(to right, white, var(--r-heading-color), white)
|
||||||
|
1;
|
||||||
|
border-radius: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#title-slide p.subtitle {
|
||||||
|
font-size: var(--r-heading3-size);
|
||||||
|
text-decoration: underline;
|
||||||
|
color: gray;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#title-slide a {
|
||||||
|
color: gray;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal .slide-number a {
|
||||||
|
color: #bbbbbb;
|
||||||
|
font-size: 10pt;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#title-slide a:hover {
|
||||||
|
color: var(--r-link-color-hover);
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal[data-navigation-mode="linear"] .title-slide h1 {
|
||||||
|
font-size: var(--r-heading2-size);
|
||||||
|
}
|
||||||
|
|
||||||
|
section#TOC {
|
||||||
|
vertical-align: middle;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#TOC h2 {
|
||||||
|
font-size: var(--r-heading2-size);
|
||||||
|
font-weight: bold;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#TOC h2:after {
|
||||||
|
content: " ";
|
||||||
|
display: block;
|
||||||
|
border: 3px solid;
|
||||||
|
border-image: linear-gradient(to right, white, var(--r-heading-color), white)
|
||||||
|
1;
|
||||||
|
border-radius: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#TOC ul {
|
||||||
|
text-align: left;
|
||||||
|
vertical-align: middle;
|
||||||
|
margin-top: 3em;
|
||||||
|
line-height: 1.6em;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#TOC ol li {
|
||||||
|
font-size: var(--r-heading3-size);
|
||||||
|
font-weight: bold;
|
||||||
|
color: gray;
|
||||||
|
list-style-type: number;
|
||||||
|
line-height: 1.6em;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#TOC strong,
|
||||||
|
section#TOC b {
|
||||||
|
color: black;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#TOC ul li {
|
||||||
|
font-size: var(--r-heading3-size);
|
||||||
|
font-weight: bold;
|
||||||
|
color: gray;
|
||||||
|
list-style-type: circle;
|
||||||
|
line-height: 1.6em;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#TOC a {
|
||||||
|
color: black;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#TOC a:hover {
|
||||||
|
color: var(--r-link-color-hover);
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal h2 {
|
||||||
|
text-align: left;
|
||||||
|
margin-top: 0px;
|
||||||
|
line-height: var(--r-heading-line-height);
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal .title-slide h1:after {
|
||||||
|
content: " ";
|
||||||
|
display: block;
|
||||||
|
border: 3px solid;
|
||||||
|
border-image: linear-gradient(to right, white, var(--r-heading-color), white)
|
||||||
|
1;
|
||||||
|
border-radius: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal h2:after {
|
||||||
|
content: " ";
|
||||||
|
display: block;
|
||||||
|
border: 3px solid;
|
||||||
|
border-image: linear-gradient(to right, var(--r-heading-color), white) 1;
|
||||||
|
border-radius: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal ul {
|
||||||
|
list-style-type: circle;
|
||||||
|
}
|
||||||
|
|
||||||
|
li:hover {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal p:hover {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal ul li {
|
||||||
|
line-height: 1.2em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal .thank h2 {
|
||||||
|
font-size: var(--r-heading1-size);
|
||||||
|
line-height: var(--r-heading-line-height);
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal .thank {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal .thank h2:after {
|
||||||
|
content: " ";
|
||||||
|
display: block;
|
||||||
|
border: 3px solid;
|
||||||
|
border-image: linear-gradient(to right, white, var(--r-heading-color), white)
|
||||||
|
1;
|
||||||
|
border-radius: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.panel-tabset [role="tab"] {
|
||||||
|
border-bottom: 1px solid red;
|
||||||
|
}
|
||||||
|
|
||||||
|
.panel-tabset [role="tab"][aria-selected="true"] {
|
||||||
|
background-color: #ffdddd;
|
||||||
|
border-bottom: 1px solid red;
|
||||||
|
}
|
||||||
|
|
||||||
|
.white {
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
.orange {
|
||||||
|
color: #e09a25;
|
||||||
|
}
|
||||||
|
.green {
|
||||||
|
color: #006e51;
|
||||||
|
}
|
||||||
|
.pink {
|
||||||
|
color: #d13076;
|
||||||
|
}
|
||||||
|
|
||||||
|
.dusty {
|
||||||
|
color: #ad5d5d;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flame {
|
||||||
|
color: #ef562d;
|
||||||
|
}
|
||||||
|
.kale {
|
||||||
|
color: #5c7148;
|
||||||
|
}
|
||||||
|
.blue {
|
||||||
|
color: #0c4c8a;
|
||||||
|
}
|
||||||
|
.red {
|
||||||
|
color: #b93a32;
|
||||||
|
}
|
||||||
|
.clay {
|
||||||
|
color: #9e4624;
|
||||||
|
}
|
||||||
|
.bodacious {
|
||||||
|
color: #b76ba3;
|
||||||
|
}
|
||||||
|
.serenity {
|
||||||
|
color: #91a8d0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cognac {
|
||||||
|
color: #60413c;
|
||||||
|
}
|
||||||
|
.sangria {
|
||||||
|
color: #760030;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alumium {
|
||||||
|
color: #75796a;
|
||||||
|
}
|
||||||
|
|
||||||
|
.marsala {
|
||||||
|
color: #964f4c;
|
||||||
|
}
|
||||||
|
.purple {
|
||||||
|
color: #702fa8;
|
||||||
|
}
|
||||||
|
|
||||||
|
.blank {
|
||||||
|
background-color: "Yellow";
|
||||||
|
width: 100%;
|
||||||
|
color: red;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal .slide aside {
|
||||||
|
position: absolute;
|
||||||
|
margin: 0 auto;
|
||||||
|
left: 2%;
|
||||||
|
font-size: 0.7em;
|
||||||
|
text-align: end;
|
||||||
|
max-width: 90%;
|
||||||
|
width: fit-content;
|
||||||
|
color: gray;
|
||||||
|
bottom: -6%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ref {
|
||||||
|
position: absolute;
|
||||||
|
margin: 0 auto;
|
||||||
|
right: 2%;
|
||||||
|
font-size: 1em;
|
||||||
|
text-align: end;
|
||||||
|
max-width: 90%;
|
||||||
|
width: fit-content;
|
||||||
|
color: gray;
|
||||||
|
bottom: -6%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.con {
|
||||||
|
position: absolute;
|
||||||
|
margin: 0 auto;
|
||||||
|
font-size: 1.4em;
|
||||||
|
text-align: center;
|
||||||
|
font-family: inherit;
|
||||||
|
max-width: 100%;
|
||||||
|
width: fit-content;
|
||||||
|
color: #023047;
|
||||||
|
bottom: -2%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.center {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tiny {
|
||||||
|
font-size: 60%;
|
||||||
|
}
|
||||||
|
|
||||||
|
figure > figcaption {
|
||||||
|
margin-top: -0.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal .slide figure > figcaption,
|
||||||
|
.reveal .slide img.stretch + p.caption,
|
||||||
|
.reveal .slide img.r-stretch + p.caption {
|
||||||
|
font-size: 0.9em;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal strong, .reveal b {
|
||||||
|
font-weight: bold;
|
||||||
|
color: crimson;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal pre code {
|
||||||
|
background-color: #554433;
|
||||||
|
line-height: 1.2em;
|
||||||
|
color: #fff;
|
||||||
|
/* font-size: x-large; */
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal pre code:hover{
|
||||||
|
font-size: x-large;
|
||||||
|
line-height: 120%;
|
||||||
|
}
|
||||||
|
|
||||||
|
section#title-slide p.subtitle {
|
||||||
|
font-size: var(--r-heading3-size);
|
||||||
|
text-decoration: none;
|
||||||
|
color: gray;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal div.sourceCode pre code {
|
||||||
|
background-color: #002233;
|
||||||
|
min-height: 100%;
|
||||||
|
/* font-size: x-large; */
|
||||||
|
}
|
||||||
|
|
||||||
|
.reveal div.sourceCode pre code:hover {
|
||||||
|
font-size: x-large;
|
||||||
|
}
|
|
@ -0,0 +1,35 @@
|
||||||
|
---
|
||||||
|
title: "〇、R语言实践前篇"
|
||||||
|
subtitle: 《区域水环境污染数据分析实践》<br>Data analysis practice of regional water environment pollution
|
||||||
|
author: 苏命、王为东<br>中国科学院大学资源与环境学院<br>中国科学院生态环境研究中心
|
||||||
|
date: today
|
||||||
|
lang: zh
|
||||||
|
format:
|
||||||
|
dwsd-revealjs: default
|
||||||
|
---
|
||||||
|
|
||||||
|
```{r}
|
||||||
|
#| include: false
|
||||||
|
#| cache: false
|
||||||
|
lang <- "cn"
|
||||||
|
require(tidyverse)
|
||||||
|
knitr::opts_chunk$set(echo = TRUE)
|
||||||
|
```
|
||||||
|
|
||||||
|
## R语言实践部分课程简介
|
||||||
|
|
||||||
|
**接下来的课程由我来带着大家一起学习、实践基于R语言的数据分析。**
|
||||||
|
|
||||||
|
### 自我介绍
|
||||||
|
|
||||||
|
- 苏命:来自中国科学院生态环境研究中心
|
||||||
|
- 主要从事**水源水质水生态**方面的研究
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## 欢迎讨论!{.center}
|
||||||
|
|
||||||
|
|
||||||
|
`r rmdify::slideend(wechat = FALSE, type = "public", tel = FALSE, thislink = "../")`
|