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
|
||||
\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/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"
|
||||
filters:
|
||||
- latex-environment
|
||||
- authors-block
|
||||
- authoraffil.lua
|
||||
lightbox: auto
|
||||
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 = "../")`
|