pandoc 模板-适配HTML的变量
前置:注释、定界符等基本语法
HTML 变量
document-css
启用在 styles.html 部分中包含的大部分 CSS(可以使用命令 pandoc --print-default-data-file=templates/styles.html
查看)。除非你使用 --css
,否则此变量默认设置为 true
。你可以使用例如 pandoc -M document-css=false
来禁用它。
前置:注释、定界符等基本语法
document-css
启用在 styles.html 部分中包含的大部分 CSS(可以使用命令 pandoc --print-default-data-file=templates/styles.html
查看)。除非你使用 --css
,否则此变量默认设置为 true
。你可以使用例如 pandoc -M document-css=false
来禁用它。
title
, author
, date
(标题,作者,日期)
能够帮助我们识别文档的基本信息。这些信息可以通过 LaTeX 和 ConTeXt 设置在 PDF 的元数据中。我们可以通过 pandoc title block 来设置这些信息,这种方式支持多作者,或者我们也可以通过 YAML 元数据块来设置,例如:
由于 Next.js 默认是服务端加载模式,
所以需要在 useEffect 中 import Web 组件(仅在客户端加载的静态组件)。
示例:
import { useEffect } from "react";
function Home() {
useEffect(() => {
import("../public/components/my-loading.js"), [];
});
return (
<>
<my-loading></mc-loading>
</>
);
}
export default Home;
在 Rust 中,有几种方法可以连接字符串。你可以使用 +
运算符,format!
宏或 push_str()
方法。下面是一些示例代码:
直接测试代码可以使用官方提供的 rust playground
fn main() {
let s1 = "Hello";
let s2 = "World";
// 使用+运算符连接字符串
let result = s1.to_string() + " " + s2;
println!("{}", result); // 输出: "Hello World"
//注意,如下方式是错误的:
// let result = s1 + " " + s2;
// Error:
// `+` cannot be used to concatenate two `&str`strings`
// note: string concatenation requires an owned `String` on the left
// 使用format!宏连接字符串
let result = format!("{} {}", s1, s2);
println!("{}", result); // 输出: "Hello World"
// 使用push_str方法连接字符串
let mut result = s1.to_string();
result.push_str(" ");
result.push_str(s2);
println!("{}", result); // 输出: "Hello World"
}
Docker
https://www.docker.com/
应用容器引擎。
OrbStack
https://orbstack.dev/
Mac平台。快速、轻量的Docker Desktop 替代品。运行 Docker 和 Linux。
Podman
https://podman.io/
免费、开源的容器工具。
文章 Podman Vs Docker
DockStation
https://dockstation.io/
管理 Docker 项目
Portainer
https://portainer.io/
基于网页管理 Docker 容器和 swarm 集群。
默认情况,当 export 静态网站时,图片因为路径问题无法正常显示。
处理方法:自定义一个 image loader
const nextConfig = {
images: {
loader: "custom",
},
};
function imageLoader({ src }) {
return `/images/${src}`; // REPLACE WITH YOUR IMAGE DIRECTORY (in /public dir)
}
Image
标签时,添加一个 loader
参数<Image
src="icon.png"
loader={imageLoader}
width={14}
height={14}
alt="icon"
/>
参考:
AI助力的问题解答、代码补全。
AI 编程搭档。 真正的智能补全代码。效率倍增。
官网: https://github.com/features/copilot
付费,但值得。
还提供了命令行(CLI)版的 copilot
Rust 写的 WASM 放在网页端使用,想在Rust代码中获悉当前网页的网址该如何实现?
首先要在 rust 项目的依赖文件中启用 web-sys 的 Window
和 Document
特性,示例:
Cargo.toml
[lib]
crate-type = ["cdylib"]
[dependencies]
wasm-bindgen = "0.2"
[dependencies.web-sys]
version = "0.3.66"
features = ["Document", "Window"]
然后使用(类似JS的方式访问)浏览器API接口,示例:
有时候,某个父级元素没有特征,需要依靠子元素来定位父级元素。
css select parent element/node/tag by child elements
可使用 CSS 函数式伪类 :has() 来实现。
示例1:
<div>
<li>
<span class="active"></span>
</li>
</div>
li:has(> span.active) { /* 会选择 li tag */ }
div:has(li > span.active) { /* 会选择 div tag */ }
示例2: