使用Pandoc将Markdown转PDF
安装好 Pandoc
详细可以参考 Pandoc - Installing pandoc。
先安装依赖软件wkhtmltopdf
1 | paru -S wkhtmltopdf |
官网上给出的简单的不修改格式的将 Markdown 转换为 PDF 命令如下:
1 | pandoc file.md -f markdown -t html -o index.pdf |
详细可以参考 Pandoc - Installing pandoc。
先安装依赖软件wkhtmltopdf
1 | paru -S wkhtmltopdf |
官网上给出的简单的不修改格式的将 Markdown 转换为 PDF 命令如下:
1 | pandoc file.md -f markdown -t html -o index.pdf |
在数字化写作和出版领域, LaTeX 和 Markdown
各自拥有独特的魅力。 LaTeX
是一个高质量的排版系统,尤其擅长处理包含大量数学公式和技术文档;而
Markdown
则以其简单易用的标记语法受到许多写作者的喜爱。然而,随着写作需求的多样化,用户往往希望找到一种方式,既能享受
Markdown 的简洁,又能利用 LaTeX
的强大功能。
markdown 宏包——由 Vít Novotný
维护的一个宏包,它的核心机制使用 Lua 编写,并提供了针对
PlainTeX/LaTeX/ConTeXt 等格式的接口。这个宏包不仅简化了
Markdown 文档到 LaTeX 的转换过程,还允许直接在 LaTeX 中嵌入 Markdown
标记,使得两者之间的协作更加紧密。
markdown 宏包具有以下几个显著优势:
--shell-escape 标记即可使用 markdown
宏包。markdown 宏包更好地集成了 LaTeX
系统,避免了转换过程中可能出现的问题。markdown 环境和
\markdownInput 命令,分别用于在 LaTeX 文稿中直接书写
Markdown 内容或从外部文件读取。markdown 宏包都预设了相应的 LaTeX
宏实现,例如图片渲染等。1 | \documentclass{article} |
通过 markdown 宏包,我们可以轻松地在 LaTeX 中嵌入
Markdown 标记。例如,当遇到如下 Markdown 图片标签时:
1 |  |
Lua 解释器会将其翻译成 LaTeX 宏命令:
1 | \markdownRendererImage{图像标签}{路径}{路径}{图像标题} |
随后,根据 \markdownRendererImage
的定义,TeX
引擎会在后续步骤展开这个宏,完成最终的排版工作。
综上所述,markdown 宏包为我们提供了一种全新的解决方案,使我们可以更方便地使用 Markdown 进行写作,同时享受 LaTeX 的专业排版效果。这对于那些既追求写作效率又重视文档质量的用户来说,无疑是一个理想的选择。正如 Harry Chen 所说:“你喜爱的 Markdown 写作,现更以 LaTeX 呈现。”
在DNS解析中,存在多种类型的记录,每种记录都有其特定的用途。本文列举一些常见的DNS记录类型:
这些记录构成了DNS系统的骨干,确保互联网上的设备能够找到彼此并交换信息。根据需要,还可以配置更多特定用途的DNS记录。
Yarn 是一个快速、可靠且安全的依赖管理工具,主要用于 JavaScript 项目。它由 Facebook 与社区成员共同开发,旨在解决 npm(Node Package Manager)存在的性能问题和一些功能上的局限性。Yarn 的设计目标是加速包的安装过程、确保操作的可重复性和安全性,同时简化开发者的工作流程。
yarn.lock 文件,Yarn
可以确保不同环境中安装的依赖版本完全一致,从而减少了因版本差异导致的问题。1 | # 查看 yarn 全局安装过的包 |
当安装一个模块时,yarn 默认从 https://github.com 下载,
但有时网络不通,所以可以采用直接添加 ssh
地址的方法,此后更新也会从新的地址更新。例如
1 | yarn add @next-theme/plugins@git+ssh://github.com/next-theme/plugins.git |
1 | # 国内 淘宝 镜像源 |
1 | sudo yarn global add nrm |
nrm使用方法,请参考本文末参考文章。使用nrm test列出各源,并给出源的网速,使用nrm use huawei切换到速度最快的华为源。
在使用 cat 或echo
等命令,将一些内容添加到root权限的文件,比如/etc/hosts时,系统会报出“权限不够”的错误。
以向/etc/hosts中添加一条记录为例,通常代码写为
1 | sudo echo "220.181.111.232 www.baidu.com" >> /etc/hosts |
此时,bash 拒绝这么做会提示权限不够,是因为重定向符号
> 和 >> 也是 bash
的命令。由于使用 sudo 只是让 echo 命令具有了
root 权限,但是没有让 > 和
>> 命令也具有 root 权限,所以
bash
会认为这两个命令都没有向/etc/hosts写入信息的权限。
sh -csh -c 命令,可以让 bash
将一个字串作为完整的命令来执行,这样就可以将 sudo
的影响范围扩展到整条命令。具体用法如下:
1 | sudo sh -c 'echo "220.181.111.232 www.baidu.com" >> /etc/hosts' |
tee利用管道和 tee 命令,该命令可以从标准输入中读入信息并将其写入标准输出或文件中,具体用法如下:
1 | echo "220.181.111.232 www.baidu.com" | sudo tee -a /etc/hosts |
注意: tee 命令的 -a 选项的作用等同于
>> 命令。如果去除该选项,那么 tee
命令的作用就等同于 > 命令。
今天升级 ArchLinu 后发现 sudo
命令无法接收密码,即使正确的密码它也会返回 "密码错误"
的提示。修复方法有三个:
重新启动 Linux 系统是修复任何临时系统故障的最流行且最简单的解决方案之一。在最好的情况下,sudo 密码不起作用错误只是 Linux 中的一个临时故障,只需快速注销登录或重新启动系统即可神奇地修复它。
su, 切换到 root用户。passwd 命令,更改用户的sudo密码:
passwd username多数情况下我们习惯了某一密码,所以尽量不使用本方法修改密码。
systemd-homed 是一个核心 systemd 服务,负责为用户的主目录提供支持。重新启动它可能会解决该问题,因为它会重置身份验证机制并可能修复任何临时系统故障。重新启动服务的步骤:
su 命令切换到 root。systemd-homed服务:
1 | systemctl start systemd-homed.service |
2025年01月03日, 使用此方法解决问题,建议使用此方法。
最近在使用校园网时,发现这有限的流量消耗的特别快,其中一项就是自己维护这个博客。经过考虑,对此博客做一些优化.
这时遵守一个原则:网站必备的文件,包括主题、基本配置和文章MarkDown文件, 其他的内容都不必存放在私人仓库中。屏蔽掉这些内容,可以极大的减少数据传输量,提高效率的同时,也节省的仓库空间。
1 | .deploy_git/ |
.gitignore:
这是一个git的配置文件,里面定义了不列入git管理的内容设置.deploy_git:
这个应该是git部署用的文件。比如你写好的博客想部署到 GitHub
Pages上去的话,可以用git部署插件,那个插件会创建这个目录.
为了确保每次增删博客时能够准确执行,则每次都要重建,所以它可以不用备份。public: 这应该是hero编译之后的网站的目录,
每次生成博客都是存放在此处,所以其也不用备份。db.json:
搜索插件的数据库文件,由于每次增删博客后它也是会发生变化,且可以随时生成,所以也不用备份。原本在GitHub上建立了三个仓库,以https://fungzhenhua.github.io
作为主力,
最初的一个仓库准备弃用,辅助的博客如果也要同步更新就会产生双份的流量,这在目前不合算,于是准备将辅助博客间隔较长时间更新。
| 厂商 | 网址 | 备注 |
|---|---|---|
| cdnjs | cdnjs.com | cdnjs |
| jsdelivr | www.jsdelivr.com | jsdelivr |
| 饿了么 | npm.elemecdn.com | 阿里云境内 CDN;未公开发布,曾经有段时间暂停回源;仅包含 npm(unpkg) |
| 360奇舞团 | cdn.baomitu.com | 北京联通+上海电信;包含 cdnjs 以及 Google Fonts;好像有段时间没有更新了 |
| 字节跳动 | cdn.bytedance.com | 字节自家 CDN,电信:北京电信,移动:河北廊坊移动,联通:河北廊坊联通;境外:北京(但是依然很快);仅包含 cdnjs |
| 又拍云赞助 | www.zstatic.net | 又拍云 CDN;仅同步 cdnjs |
| 个人 | 网址 | 备注 |
|---|---|---|
| 7ED Services | www.7ed.net | 非常全的镜像站,几乎啥都有;前端文件镜像 CDN 为境内华为云,境外 Vercel |
| jsdelivr mirror site / China Jsdelivr | cdn.jsdmirror.com blog.jsdmirror.com | 境内腾讯云 EdgeOne / 百度云,境外CF;反代 jsdelivr;挺好 |
| webcache | webcache.cn | fonts: HK 单节点 反代 (电信绕日NTT,线路爆炸,不可用;移动CMI->HE,勉强能用;联通绕日NTT,勉强能用);ajax 阿里云CDN/CF;cdnjs 阿里云境内CDN/HK单节点;npm 阿里云境内CDN/HK单节点;github 阿里云境内 |
| 晓白/AKASS | cdn.akass.cn | 境内多吉云 CDN,境外 Cloudflare;回源使用自建 CDN;npm(unpkg), cdnjs, Github Raw, jsd;自建 CDN 偶有污染,被刷绕自建 CDN |
| 玉兔/未闻花名静态资源加速 | cdnjs.snrat.com | 境内白山云 CDN,境外301官方;回源南方科技大 |
| GamerNoTitle | cdn.bili33.top | Vercel反代jsdelivr |
| 烧饼 | u.sb/css-cdn | Cloudflare 自选,速度一般,污染比官方严重,除了被墙的Gravatar,其他基本不如使用官方原版;cdnjs, Google Fonts, Gravatar |
| zkeq | cdn.onmicrosoft.cn | 全部使用cloudflare,打赢复活赛了。 |
| 镜像 | 网址 | 备注 |
|---|---|---|
| Gravatar | https://cravatar.cn/ | 速度快 |
| Weavatar | https://weavatar.com/ | 速度快 |
| 镜像 | 网址 | 备注 |
|---|---|---|
| 南方科技大学 | https://mirrors.sustech.edu.cn/help/cdnjs.html | 速度快 |
| 路由器品牌或类型 | 后台登录 IP | 后台登录网址 | 品牌官网 |
|---|---|---|---|
| TP-Link 路由器 | 192.168.1.1 | tplogin.cn | www.tp-link.com.cn |
| D-Link 路由器 | 192.168.0.1 | www.dlink.com.cn | |
| 华为路由器 | 192.168.3.1 | consumer.huawei.com | |
| 192.168.101.1 | consumer.huawei.com | ||
| 荣耀路由器 | 192.168.3.1 | www.hihonor.com | |
| 192.168.101.1 | www.hihonor.com | ||
| 网件(Netgear)路由器 | 192.168.1.1 | routerlogin.com | www.netgear.com.cn |
| 华硕(Asus)路由器 | 192.168.1.1 | router.asus.com | www.asus.com.cn |
| 192.168.50.1 | router.asus.com | www.asus.com.cn | |
| 小米路由器 | 192.168.31.1 | miwifi.com | www.miwifi.com |
| 360安全路由 | 192.168.0.1 | luyou.360.cn | luyou.360.cn |
| 192.168.100.1 | luyou.360.cn | luyou.360.cn | |
| 水星(MERCURY)路由 | 192.168.1.1 | melogin.cn | www.mercurycom.com.cn |
| 腾达(Tenda)无线路由器 | 192.168.0.1 | tendawifi.com | www.tenda.com.cn |
| H3C 路由器 | 192.168.0.1 | www.h3c.com | |
| 京东云无线宝路由 | 192.168.68.1 | jdcloudwifi.com | jdbox.jdcloud.com |
| ZTE 中兴路由 | 192.168.5.1 | zte.home | www.zte.com.cn |
| 极路由 | 192.168.199.1 | 官网已关闭 | |
| Newifi 智能路由器 | 192.168.99.1 | 官网已关闭 | |
| 斐讯(PHICOMM)路由 | 192.168.2.1 | p.to | 官网已关闭 |
Firefox 是 Linux 下最流行的浏览器,但是有时候访问网站会受到 DNS 污染,特别是有时候一些不良 DNS 服务返回的 IP 会跳转到广告、挂马的恶意网站。 为了避免上述情况,本文记录针对 Firefox 的关键配置。
设置→隐私与安全→“基于HTTPS的DNS”启用策略→增强防护→Cloudflare(默认)
在上一节,启用方法中如果选择默认保护,则基于HTTPS的DNS是关闭的,这可能会导致有此DNS服务器返回被污染的IP.
如果选择最大保护,
则所有的网站都会使用基于HTTPS的DNS,
这会严重降低网站的访问速度。所以选择增强防护是一个折中的选择,它只在安全
DNS出现问题时才使用默认 DNS
解析器,因此这是一个兼顾速度和安全的方案。