References:

  1. 你是你吃出来的》,夏萌,ISBN: 9787539060453;
  2. 体重管理指导原则(2024 年版)》,国家卫生健康委;
  3. 居民体重管理核心知识(2024 年版)释义》,国家卫生健康委;
  4. Timeframe of 8-hour restricted eating irrelevant to weight loss》, NIH (National Institute on Aging);
  5. Effects of early, late and self-selected time-restricted eating on visceral adipose tissue and cardiometabolic health in participants with overweight or obesity: a randomized controlled trial》, _Nature Medicine_. 2025. Epub Jan. 7. doi: 10.1038/s41591-024-03375-y;
  6. 我们为什么要睡觉?(Why We Sleep: Unlocking the Power of Sleep and Dreams)》,作者: [英] 马修·沃克

体重过重,或者说高度疑似肥胖,这个问题自己该管管了。


动因 (Motive)

每年体检报告

每年体检报告中历历在目的各项超标或预警项,包括但不限于:

  • BMI超标, 28.5(2024.11), 26.6(2022.11), 已经进入“肥胖”标准范围;
  • 腰围:100cm;表明脂肪在腹部过多积累,增加患心血管及内分泌等慢性病风险;
  • 脂肪肝并血脂高(甘油三酯,即脂肪);
  • 肝功能异常-丙氨酸氨基转移酶高;
  • 肾功能异常-尿酸高(痛风),有囊肿;
  • 甲状腺回声欠佳;
  • 肺部有结节(连续三年未见明显增大);
  • 窦性心动过缓;

感觉就剩下肠胃功能无异常了,所以才这么容易吃出这么多其他问题。

潜在健康风险

Visceral body fat is associated with cardiometabolic diseases such as heart attack, stroke, diabetes, and insulin resistance.(内脏脂肪与心脏病、中风、糖尿病和胰岛素抵抗等心脏代谢疾病有关。)
--《Timeframe of 8-hour restricted eating irrelevant to weight loss》, NIH (National Institute on Aging);

超重和肥胖是糖尿病、高血压等心脑血管疾病、部分癌 症等疾病的重要危险因素。
--《居民体重管理核心知识(2024 年版)释义》,国家卫生健康委;

真的不想突然哪天小手一抖,满汤匙钻石撒光了,后面的小格子们都用不上了。

实际身体感受

明显感觉到:

  • 体力差,尤其是耐力差,跑动时最明显;
  • 时常精神不好,易疲劳;
  • 痛风发作;

外表

明显能看到:

  • 腰粗;
  • 肚大;
  • 双下巴;
  • 黑眼圈;

没有一点好处的状态为什么不去改变它呢?
就从现在开始。


方法 (Solution)

生活方式干预。

管住嘴

吃什么

保证膳食多样。

各类食物选择举例。
注:当儿童体重在正常范围内,应该尽量选择“优选食物”。当儿童体重 属于消瘦范围,可适度增加“限量食物”。当儿童体重处于超重和肥胖时, 严控“限量食物”和“不宜食物”,同时减少总能量的 1/3~1/2,增加蔬菜 类食物,改进烹调方式。
--《体重管理指导原则(2024 年版)》,国家卫生健康委;
分类优选食物限量食物不宜食物
谷薯类蒸煮烹饪、粗细搭 配的杂米饭、红薯 饭、杂粮面、意面 等精白米面类制品,如白米 饭、白面条、白馒头、白 面包、粉丝、年糕等深加工糯米制品,如酒酿 圆子、五花肉粽子等;高 油烹饪类主食,如油条、 烧饼、炸薯条等;富含添 加糖、奶油、黄油的点心 零食,如奶油蛋糕、黄油 面包、奶油爆米花等
蔬菜类非淀粉类蔬菜,如 叶类、花类、瓜茄 类、果实类等部分根茎类蔬菜、淀粉类 蔬菜,如土豆、芋艿、山 药等高糖高油烹饪的蔬菜,如 炸藕夹、油焖茄子等
水果类绝大部分水果,如 浆果类、核果类、 瓜果类等冬枣、山楂;部分热带水 果,如香蕉、榴莲等各类高糖分的罐头水果 和果汁
畜禽类畜类脂肪含量低 的部位和制品,如 里脊、腱子肉、血 制品等;少脂禽 类,如胸脯肉、去 皮腿肉、血制品和 鸡鸭胗等畜类脂肪相对高的部位, 如排骨、肩部肉、舌等; 带皮禽类;较多油脂、精 制糖、盐等烹饪的畜禽类 菜肴畜类脂肪含量高的部位, 如肥肉、五花肉、蹄髈、 脑花等;富含油脂的内 脏,如大肠、鹅肝等;油 炸、红烧等高油高盐高糖 烹饪的畜禽
水产类绝大部分清蒸和 水煮河鲜和海鲜较多油脂、精制糖、盐等 烹饪的水产类菜肴,如煎 带鱼、糖醋鱼等蟹黄、蟹膏等富含脂肪和 胆固醇的河海鲜部位;油 炸、红烧等高油高盐高糖 等烹饪的水产
豆类大豆和杂豆制品, 如豆腐、无糖豆 浆、低盐豆腐干、 低糖豆沙等添加糖和脂肪含量相对高 的豆制品,如腐竹、素鸡、 豆沙馅等高糖高油高盐加工的豆 制品,如兰花豆、油豆腐、 油面筋、咸豆腐等
蛋乳类原味乳制品,如纯 奶、无糖酸奶、低 盐奶酪等,蒸煮加 工的蛋类含有少量调味添加的乳制 品和蛋类制品,如含糖酸 奶、咸奶酪、少油煎蛋等含有大量添加糖、油脂加 工的乳制品和蛋类制品, 如复原乳、果味酸奶、炒 蛋等
坚果类无添加糖和盐的 原味坚果少量盐调味的坚果大量盐、奶油、糖等调味 的坚果制品
调味品类各种植物油、醋、 低钠盐、天然植物 香辛料等含大量盐的调味品,如豆 瓣酱、黄酱、酱油等;含 大量添加糖或淀粉的调味 品,如果酱、甜面酱、蜂 蜜等;高饱和脂肪酸的调 味品,如黄油、猪油等盐、食糖、糖果;含大量 反式脂肪酸的调味品,如 人造奶油、起酥油等

我猜,我也需要严控“限量食物”和“不宜食物”,减量,多选择蔬菜水果。

吃多少

七大营养素:
•碳水化合物(又称为糖类,包括葡萄糖、果糖、麦芽糖、淀粉等)
•蛋白质(分为必需氨基酸和非必需氨基酸)
•脂类(分为脂肪和类脂,脂肪又叫甘油三酯,分为必需脂肪酸和非 必需脂肪酸;类脂包括磷脂、胆固醇、胆固醇脂、糖脂)
•维生素(分为脂溶性维生素和水溶性维生素)
•矿物质(分为常量元素和微量元素)
•膳食纤维(分为可溶性膳食纤维和不可溶性膳食纤维)
•水
碳水化 合物、蛋白质和脂类,被称为“产能营养素”。 碳水化合物每克产生4千卡能量,蛋白质每克产生4千卡能量,脂类每 克产生9千卡能量。1克酒精产生7千卡能量。
--《你是你吃出来的》,夏萌,ISBN: 9787539060453;

第一步:要知道他的标准体重。 标准体重(千克)=身高(厘米)-105,因此这位男士的标准体重是 175-105=70(千克)。
第二步:他是个轻体力劳动者,而且不是大胖子,也不是很瘦的人, 因此每日每千克体重所需能量为30千卡,这位男士每日所需总能量为 70×30=2100(千卡)。
第三步:计算三大能量比例。
碳水化合物占总能量的55%:2100×55%=1155(千卡),每克碳水化 合物产生4千卡能量,此人每日应该摄入碳水化合物为1155÷4= 288.75(克)。算出288.75克的碳水化合物后,在实际操作中还有一 个技巧可以用,就是将这些碳水化合物一分为二,一半是粗粮和谷 薯,另一半是米面。如果是体力劳动者或者比较瘦的人,还有胃肠功 能差的人,我会把细粮的比例加大;如果是肥胖者或者运动量很少的 人,我会把粗粮的比例加大。
蛋白质占总能量的15%:2100×15%=315(千卡),每克蛋白质产生4 千卡能量,所需蛋白质315÷4=78.75(克)。其中动植物蛋白质应该 各占一半,即各39.375克。一个中等大小鸡蛋差不多含有6克蛋白质, 200毫升牛奶含有6克蛋白质,瘦肉(四条腿或两条腿的动物)以及鱼 类基本上含有17%~20%的蛋白质,即每100克肉含有17~20克蛋白质。 所以此人应该每天吃1个鸡蛋、300毫升牛奶和约150克肉类或鱼类(相 当于3两)。实际操作时必须注意,蛋白质的摄入量不能打折扣,鼓励 尽量多一些,但不要超过20%。
脂类占总能量的30%:2100×30%=630(千卡),每克脂类产生9千卡 能量,因此需要630÷9=70(克)。其中植物油占一半,为每天35 克。动物油在吃鸡蛋、肉类食物和喝牛奶时可以获得,为35克。如果 一个人吃得很素,动物油来源少,那么他的植物油必须增加。脂类的 摄入在保证数量的同时还要注重比例,单不饱和脂肪酸和多不饱和脂 肪酸要更多一些,因此鱼、虾和海藻要多吃一些。
如果平时消耗能量很大,比如送快递的快递员、下地的农民,即使身 高、体重不变,但因为能量消耗大大增加了,所以每种营养素的摄入 都要相应有一个较大幅度的提高。 年龄大的人一般能量消耗少,要相应减少饮食的总能量,但是三大能 量比例不要变。
--《你是你吃出来的》,夏萌,ISBN: 9787539060453;

按照我的体重80kg计算:

  • 标准体重应该是:171-105=66kg;(难度高,高中以后就没低过70kg)
  • 轻体力劳动者,每日所需总能量为:66x30=1980(千卡),考虑到现在要减重,再打个八折吧,1980x80%=1584(千卡);
  • 碳水化合物占总能量的55%:1584x55%=871.2(千卡),每克碳水化 合物产生4千卡能量,我每日应该摄入碳水化合物为871.2÷4= 217.8(克),也就是四两最多冒头。不吃米面了,全留给粗粮和谷薯吧。
  • 蛋白质总能量的15%:1584x15%=237.6(千卡),每克蛋白质产生4 千卡能量,所需蛋白质237.6÷4=59.4(克),也就是一两多一丢丢。这个真的是很难控制,要多加留意,稍一不留神就吃多了。
  • 脂类占总能量的30%:1584x30%=475.2(千卡),每克脂类产生9千卡能量,因此需要475.2÷9=52.8(克),一样也是一两多一丢丢。这个注意避免油炸、油多的食物应该就能达到。尽量多选择鱼、虾和海藻。

差不多就是每天的摄入要控制在四两碳水,一两蛋白质,一两脂肪的水平。
作为参考,一颗中等大小的鸡蛋约重60克,即1.2两。

怎么吃

轻断食:

  • 隔日断食;(不容易坚持)
  • 每天的进食严格控制在从早餐开始的8小时以内,其余的16小时禁食;(感觉更合理,更容易执行);
  • 8小时内尽可能分少量多次进食;
  • 每周回顾,第一周期一个月,第二周期三个月总结效果;

The results showed all three time-restricted eating groups achieved more weight loss — averages of 5.3 pounds, 6.4 pounds, and 6.8 pounds, respectively — than the control group. There were no differences among the morning, afternoon, and self-selected time-restricted eating groups and the Mediterranean diet control in reducing visceral body fat. However, the morning group demonstrated a greater reduction in subcutaneous body fat and improved cardiometabolic health markers, such as lower fasting glucose levels, than the control group. (研究结果显示,三组受时间限制的饮食组比对照组减掉了更多的体重 (平均分别为 5.3 磅、6.4 磅和 6.8 磅)。上午、下午和自我选择时间限制饮食组与地中海饮食控制组在减少内脏脂肪方面没有差异。然而,与对照组相比,早晨组皮下脂肪的减少和心脏代谢健康指标的改善,例如空腹血糖水平的降低。)
--《Timeframe of 8-hour restricted eating irrelevant to weight loss》, NIH (National Institute on Aging);

人饿的时候,碳水化合物先被用光,之后才是皮下脂肪和蛋白质。 一般来讲,人在饥饿时,以脂肪分解为主,占80%左右,蛋白质的分解 约占20%,脂肪和蛋白质的分解比例约为4∶1。
--《你是你吃出来的》,夏萌,ISBN: 9787539060453;

迈开退

要多运动,但要注意频次和强度:

  • 每周一足球,基本能做到100%出勤;(有氧运动,高强度)
  • 周一至周四傍晚15km骑行,不下雨不刮大风不降温基本都能执行;(有氧运动,中等强度)
  • 每天早晨的10min晨练,要增加至30min/天,逐渐增加至60min/天;(抗阻运动,低强度)
  • 踢球、骑行、肌群练习后的拉伸,不要遗漏;(柔韧性练习)

休息好

睡眠

别熬夜,划不来:

  • 睡眠时间:22:00,最晚不超过23:00;
  • 睡眠时长:7小时,至少6小时;
要使大脑和身体健康恢复到最佳状态,我们唯一能做的也是最有效的事,就是睡觉,它是大自然赐予我们的 最佳对抗死亡方法。
-- 我们为什么要睡觉?(Why We Sleep: Unlocking the Power of Sleep and Dreams)》,作者: [英] 马修·沃克

目标 (Target)

短期

  • 去掉双下巴;
  • 去掉腰部脂肪,减小腰围;

中期

  • 体重控制在75kg以内;
  • BMI不进入“肥胖”分类,低于“过重”分类;

长期

  • 消除皮下脂肪、内脏脂肪;
  • 适当增加肌肉;
  • 远离心血管疾病、癌症、慢性疾病风险;

开始 (Kickoff)

已经从2025-03-31 周一开始执行,坚持。
拭目以待。

Inspired by:
The Tail End
Your Life in Weeks
-- from "Wait But Why" by Tim Urban

How Many Left?

试想一下:从此刻算起,我的人生旅途还有多长?

这是读完这两篇博文之后自己脑中的第一反应。

直观反应应该是估摸一下目前的人类平均寿命和自己当年的年龄,不考虑其他突发情况,按年算怎么也还有个几十年吧,不急。

要是按月算,那就更多了。2016左右网上流行的“A4纸人生”(看时间貌似就是从引用的这两篇博文起始的)就是把人的平均年龄按照90年计,换算成月共有1080个月,按照12x90个格子全部画在一张A4纸上,那这张纸大概就是你的全部人生时间。从出生开始算,每过一个月涂掉一个格子的话,那到现在已经涂掉多少了?还剩多少了?

这么一画是不是感觉自己的人生时间账户余额比例更清晰了?人的大脑对数字的具体意义的想象很孱弱,但若是转换成图表,则更会有个具象化的理解,更容易比较大小,看出比例高低(这也是社畜都爱用PPT的原因)。

但是把人生时间按照年亦或是月的颗粒度来划分,对于大多数人来说还是太粗,跨度太大,对于每一个格子的流失还是不会有更真切的体会。而假如真的要按日来计算,不是画不下,但在一张A4纸上密密麻麻画上32877个小小的格子或是圆点,无论当前已标记到底几个,反正第一感受还是余额充足的,不用太在意。

周是个不错的选择,颗粒度不会过粗或过细,而且现代社会绝大多数人的学习、工作、生活基础周期都是按周来计,大家早已习惯每周一(或周日)是一个新的起始。那么在一张A4纸上按照52x90个格子来画出来的,就是一个多大多数人来说每个格子都有比较清晰的时间边界感和记忆的最小单位。

American Life in Weeks

上图来自原文,是一个典型美国人一生的周计时间。其实全世界绝大多数人生阶段分布也都如此。

估摸一下自己现在正在那个格子上?本周自己经历了哪些事?已规划了哪些事要去完成?下周呢?下下周呢?后面的每一个格子都有已计划了吗?这些格子我都能用得上吗?

Famous Deaths in Weeks

看看上图这一个个熟悉的名字,都没能把这些小格子填到最后部分。

那我呢?

How To Do?

由此再展开去想一下,自己有很多事是想要在余下的这些格子里完成的:

  • 在得到App和电脑里收集的想读而未读的书单(很多大部头,还在持续增加中,都是人类思想精华啊);
  • 收集的博客文章(已经好几千篇了,持续增加中);
  • 在Steam中已购买的那些经典CRPG(每一个的游戏剧情都不短,本来是想留给退休后填充时间的,现在算算不提前启动可能完不成);
  • 欠账多年的剧集、电影、动画、纪录片(list很长,也在持续增加中);
  • 世界那么大,还没怎么看;
  • ...

随便列一列就已经这么多,之前已过去的时间不说了,余下的每个格子都必须精打细算地用才行。

按照目前的说法,基于当前的医疗、营养、科技、生物技术的发展前提,我们这一代人大概率平均寿命会到100岁,那换算成周一共也就约5200个。按照原文描述,假如每个周都是一个直径约2mm,重量约0.05克拉的钻石,那这5200颗钻石也就刚好装满一个普通汤匙。

Spoonful of Diamonds

我的汤匙里还有多少颗钻石?

鉴于还有那么多想要完成的事情,余下的每一周不就像是一颗颗钻石一样宝贵吗?可不能再无知无觉地让它从指缝中溜走了。

面对这个人人都有的问题,有两个方向的做法:

  1. 像我等普通民众最多只能尽力去想办法,让自己剩下的那每一个格子尽量都被使用到。锻炼身体,健康饮食,充分睡眠,心情舒畅,尽量避免哪天小手一抖汤匙一撒;
  2. 这个世界上总是有一些有资源有能力有意愿的顶层人士或组织一直在探索如何让自己余下的格子变得更多,远的有秦始皇、汉武帝的寻仙访药,近的有Peter Thiel的冷冻人体和Bryan Johnson的亲子换血等等颇不靠谱的探索;

这些方法真的会有多大的效果?因人而异。

但任何人都能立刻做到的就是,从这一刻起,认真仔细地过好每一周,让自己账户里剩下的每个格子不白花。

.05 Carat Diamond

Typecho的后台文章编辑器支持Markdown,作为第一篇,先放一份Markdown教程在这里,也方便自己日后参考时避免再到处去找。

转发自“yikelee 成雙醬”。

(貌似Obsidian中使用的Markdown语法在这里不能100%兼容,但总比没有强吧。)


MarkDown语法 超详细教程

MD语法教程,适合新手入门,也适合老手瞅瞅
初稿写了一周左右,前前后后又修改了一个多月
应该是比较完善了

Mermaid ,iframe , Latex 部分 在论坛里显示有问题
可以去 网页发布版 或 MD源文件 获得最佳阅读体验

本教程有发布publish上
Markdown 超级教程by成雙醬 8.9k

需要原 MD文档 和 PDF 的,可以戳下面的网盘链接

百度网盘:
链接:https://pan.baidu.com/s/13ZoKSRZkqQc_JuxK3AGFmA 10.3k
提取码:tqp8

阿里云盘:
链接:https://www.aliyundrive.com/s/eooT6xPzLhh 4.8k

以下是教程内容

什么是 Markdown?

  1. Markdown 是一款轻量级标记语言,不同于HTML (Hypertext Markup Language)Markdown 的语法非常简单,且容易上手
  2. Markdown 以 纯文本格式 编写文档,依赖键盘而非鼠标,专注于写作本身,感受书写的魅力
  3. Markdown 的通过添加一些简单的 标识符,让文本具有恰到好处的格式
  4. Markdown 核心特征就是 删繁剪芜, 简扼 + 精炼
  5. Markdown 是 笔记 与 网页文章 的最佳载体
  6. Down 的核心:坐  来,就能把思维写  来

    • 牛津高阶英汉双解词典第九版 中,关于 down 的释义:

 title=

为什么要使用 Markdown?

有朋友问我 ,Markdown 的效果 用Word 完全可以复现,甚至功能更多,那为何要用 Markdown 呢?

答:

  • 功能多,不一定是好事

    • 功能一多,选择就会变多,然后你会开始纠结……

      • 这个字号是不是该大一点呢?
      • 这个颜色好像有点不太搭呢?
      • 这个粗体,是不是该再加点颜色呢?
      • 这个图片的位置看起来有点不大对劲呢?
    • 结果,写了半天,就憋出一点点东西

      • 写出来的内容...好像...也不咋滴

MD的优势:

  1. Markdown 让我们免于 被繁杂臃肿的功能晃花了眼 的困扰
  2. Markdown 让我们回归内容本身,拥抱笔记的内核,而非浮于表象的样式,写出高效精练的笔记!

用 Markdown 写东西,记住一个原则

能用10个字搞定的,绝不用11个字

经常使用 Markdown 书写的朋友,也许会有一种奇妙的感触

  • 书写,会==倒逼==思维的跃进。像是有东西拽着你的思绪往前冲

    • 倒逼:逆向逼迫,反向推动

关于标识符的滥用

这个其实是写在最后的,之所以放在这里,是因为它很重要

如果你有一定的MD语法基础,可以直接点击跳转

Markdown 相关软件推荐

  • Markdown 书写软件 推荐:Typora 优秀的 MD网页文章 书写软件

  • Markdown 笔记软件 推荐:Obsidian 银河系最强 MD+双向链 笔记软件

Markdown 语法

  • 提示1: 本教程推荐使用 Obsidian 打开阅读
  • 提示2: 下文提到的所有标识符都是 英文状态 的 

1. 标题&目录

1.1 标题

  • Markdown标题共有 六级,和 HTML 一样
  • 区分 一级标题 → 六级标题

    • 标题 的格式:

      • # × 标题级数 + 空格 + 文本内容
这是一段普通的文本

# 这是一级标题
## 这是二级标题
### 这是三级标题
#### 这是四级标题
##### 这是五级标题
###### 这是六级标题 

1.2 目录

  • 目录的 格式:

    • 在文档的顶部 输入 [toc] ,会根据 标题 自动生成目录 ( Table of Content )
  • 不是所有 MD编辑器 都支持目录生成

    • Obsidian 就不支持,不过 OB 是自带大纲的,就是目录的效果
输入下方内容会生成一个目录:

[toc]

2. 斜体&粗体

2.1 斜体

  • 斜体 的格式:

    1. * + 文本内容 + *
    2. _ + 文本内容 + _ ( 下划线 )
  • 说明:

    • 斜体文本,首尾只有 单个 标识符
这是一段普通文本

*这里是一段斜体文本*
_这也是一段斜体文本_

示范

这是一段普通文本

这里是一段斜体文本
这也是一段斜体文本

2.2 粗体

  • 粗体 的格式:

    1. ** + 文本内容 + **
    2. __ + 文本内容 + __ (这里是两个 _ )
  • 说明:

    • 粗体文本,首尾各有 两个 标识符
这是一段普通文本

**这里是一段加粗文本**
__这也是一段加粗文本__

示范

这是一段普通文本

这里是一段加粗文本
这也是一段加粗文本

2.3 粗斜体 (斜粗体)

  • 粗斜体 的格式:

    1. *** + 文本内容 + ***
    2. ___ + 文本内容 + ___ ( 这里是3个 _ )
    3. **_ + 文本内容 + _**
    4. __* + 文本内容 + *__
    5. *__ + 文本内容 + __*
    6. _** + 文本内容 + **_
  • 说明:

    • 粗斜体文本,首尾各有 三个 标识符
这是一段普通文本

***粗斜体文本1***
___粗斜体文本2___
**_粗斜体文本3_**
__*粗斜体文本4*__
*__粗斜体文本5__*
_**粗斜体文本6**_

示范

这是一段普通文本

粗斜体文本1
粗斜体文本2
粗斜体文本3
粗斜体文本4
粗斜体文本5
粗斜体文本6

2.4 斜体包含粗体

  • 斜体中包含粗体 的格式:

    1. * + 斜体文本 + ** + 粗体文本 + ** + 斜体文本 + *
    2. _ + 斜体文本 + __ + 粗体文本 + __ + 斜体文本 + _ ( 这里是两个 _ )
    3. * + 斜体文本 + __ + 粗体文本 + __ + 斜体文本 + *
    4. _ + 斜体文本 + ** + 粗体文本 + ** + 斜体文本 + _
  • 说明:

    • 斜体 中包含 粗体,其实就是嵌套的关系,外层 是 斜体内层 是 粗体
    • 外层是斜体,标识符是单个;内层是粗体,标识符是两个
    • 因为 粗体 是被包裹在 斜体 中的,所以显示效果为 斜粗体
这是一段普通文本

*这里是一段斜体中**包含粗体**的文字*
_这也是一段斜体中**包含粗体**的文字_
*这又是一段斜体中__包含粗体__的文字*
_这还是一段斜体中**包含粗体**的文字_

示范

这是一段普通文本

这里是一段斜体中包含粗体的文字
这也是一段斜体中包含粗体的文字
这又是一段斜体中包含粗体的文字
这还是一段斜体中包含粗体的文字

2.5 粗体包含斜体

  • 粗体中包含斜体 的格式:

    1. ** + 粗体文本 + * + 斜体文本 + * + 粗体文本 + **
    2. __ + 粗体文本 + _ + 斜体文本 + _ + 粗体文本 + __ ( 这里是两个 _ )
    3. ** + 粗体文本 + _ + 斜体文本 + _ + 粗体文本 + **
    4. __ + 粗体文本 + * + 斜体文本 + * + 粗体文本 + __
  • 说明:

    • 粗体 中包含 斜体,也就是嵌套的关系,外层 是 粗体内层 是 斜体
    • 外层是粗体,标识符是两个;内层是斜体,标识符是单个
    • 因为 斜体 是被包裹在 粗体 中的,所以显示效果为 粗斜体
这是一段普通文本

**这里是一段粗体中*包含斜体*的文字**
__这也是一段粗体中_包含斜体_的文字__
**这又是一段粗体中_包含斜体_的文字**
__这还是一段粗体中*包含斜体*的文字__

示范

这是一段普通文本

这里是一段粗体中_包含斜体_的文字
这也是一段粗体中_包含斜体_的文字
这又是一段粗体中_包含斜体_的文字
这还是一段粗体中_包含斜体_的文字

3. 线

3.1 水平分割线

  • 水平分割线由至少 3 个 * 或 - 组成
下面是一条水平分割线:
---
***

示范



3.2 文本删除线

  • 删除线 的格式:

    • ~~ + 文本内容 +~~ 首尾各加两个 ~ 波浪号
~~这是一段加了删除线的文本~~

示范

这是一段加了删除线的文本

3.3 文本下划线

  • 下划线的格式,和 HTML 是一样的

    • <u> + 文本内容 + </u>
<u>这是一段加了下划线的文本</u>

示范

这是一段加了下划线的文本

4. 列表&引用

4.1 有序列表

  • 有序列表 的格式:

    • 1. + 空格 + 文本内容
  • 说明:

    • 输入文本内容后,敲击 Enter 自动补全格式,并进入 下个 有序列表
    • 若需要在同个列表内,增加 换行显示 的内容 (但不进入下个列表)
      敲击 Shift + Enter ,即可另起一行输入文本
    • 在有序列表的中间,插入一个新的列表,后面列表的 数字序号 会自动 递进 一层
    • 即便在源代码模式中修改了数字序号,渲染界面依然是 依照顺序 显示的
1. 这是第一个有序列表 <!-- (Enter) -->
2. 这是第二个有序列表 <!-- (Enter) -->
3. 这是第三个有序列表 


1. 这是第一个有序列表 <!-- (Shift + Enter) -->
   这是同个列表下,另起一行的文本内容 <!-- (Enter) -->
2. 这是第二个有序列表 <!-- (Shift + Enter) -->
   这是同个列表下,另起一行的文本内容 

示范

  1. 这是第一个有序列表
  2. 这是第二个有序列表
  3. 这是第三个有序列表
  4. 这是第一个有序列表
    这是同个列表下,另起一行的文本内容
  5. 这是第二个有序列表
    这是同个列表下,另起一行的文本内容

补充

  • 由于有序列表存在强制排序性,它的数字序号必然是逐一递进
    若你希望内容前的数字,不依照递进顺序排序,或者以 整百整十数 排序
  • 可以配合无序列表,在无序列表中输入:

    • 数字 + . + 内容
      #注意 点号 与 内容 之间,没有空格 (其实有空格也行,就是会感觉有点奇怪)
- 10.这是无序列表下,整十数排列的内容
- 20.这是无序列表下,整十数排列的内容
- 30.这是无序列表下,整十数排列的内容


- 100.这是无序列表下,整百数排列的内容
- 200.这是无序列表下,整百数排列的内容
- 300.这是无序列表下,整百数排列的内容

效果:

  • 10.这是无序列表下,整十数排列的内容
  • 20.这是无序列表下,整十数排列的内容
  • 30.这是无序列表下,整十数排列的内容
  • 100.这是无序列表下,整百数排列的内容
  • 200.这是无序列表下,整百数排列的内容
  • 300.这是无序列表下,整百数排列的内容

4.2 无序列表

  • 无序列表 的格式:
  • - + 空格 + 文本内容
  • 说明:

    • 输入文本内容后,敲击 Enter 自动补全格式,并进入 下个 无序列表
    • 若需要在同个列表内,增加换行显示的内容 (但不进入下个列表)
      敲击 Shift + Enter ,即可另起一行输入文本
- 这是第1个无序列表 <!-- (Enter) -->
- 这是第2个无序列表 <!-- (Enter) -->
- 这是第3个无序列表

- 这是第一个无序列表 <!-- (Shift + Enter) -->
  这是同个列表下,另起一行的文本内容
- 这是第二个无序列表 <!-- (Shift + Enter) -->
  这是同个列表下,另起一行的文本内容 

示范

  • 这是第1个无序列表
  • 这是第2个无序列表
  • 这是第3个无序列表
  • 这是第一个无序列表
    这是同个列表下,另起一行的文本内容
  • 这是第二个无序列表
    这是同个列表下,另起一行的文本内容
列表可在OB中,设置快捷键,在 批量处理与取消上 会更方便

4.3 引用

  • 引用 的格式:

    • > + 空格 + 文本内容 (空格可加可不加,我推荐是加上)
  • 说明:

    • 同个引用段落内的换行直接敲击 Enter 即可
    • 若需添加 第二个独立引用段落 ,连续敲击 两下 Enter 即可
> 这是第一段引用文本的第1行 <!-- (Enter) -->
> 这是第一段引用文本的第2行 <!-- (Enter) -->
<!-- (Enter) -->
> 这是第二段引用文本的第1行 <!-- (Enter) -->
> 这是第二段引用文本内第2行

注: 后面的 > 敲回车会自动补上

示范

这是第一段引用文本的第1行
这是第一段引用文本的第2行

这是第二段引用文本的第1行
这是第二段引用文本的第2行

4.4 缩进&退格

在列表和引用的书写过程中,我们需要利用 ==缩进== 与 ==退格== ,让文章肌理分明,更具层级

  • 缩进:

    1. Tab
    2. Ctrl + [   (左中括号)
  • 退格:

    1. Shift + Tab
    2. Ctrl + ] (右中括号)

4.4.1 有序列表的缩&退

1. 第一级有序列表1 <!-- (Enter) -->
    1. 第二级有序列表1    <!-- 写文本之前,先( Tab 或 Ctrl + ] ) ;写完文本后,再(Enter) -->
    2. 第二级有序列表2 <!-- (Enter) -->
2. 第一级有序列表2    <!-- 写文本前,先 ( Shift + Tab 或 Ctrl + [ ) --> 
  • 补充说明:

    • 有序列表的数字序号,即便你在源代码模式里 强行改掉 数字,它仍然会 依照顺序 显示
示范
  1. 第一级有序列表1

    1. 第二级有序列表1
    2. 第二级有序列表2
  2. 第一级有序列表2

4.4.2 无序列表的缩&退

- 第一级无序列表1 <!-- (Enter) -->
    - 第二级无序列表1  <!-- 写文本前,先( Tab 或 Ctrl + ] ) ;写完后,再(Enter) -->
    - 第二级无序列表2 <!-- (Enter) -->
- 第一级无序列表2  <!-- 写文本前,先 ( Shift + Tab 或 Ctrl + [ ) -->
示范
  • 第一级无序列表1

    • 第二级无序列表1
    • 第二级无序列表2
  • 第一级无序列表2

4.4.3 引用的缩&退

  • 引用的 缩进 和列表 不同

    • 引用需另起一行,并额外多打一个 > 来完成 缩进
  • 如果要退回上一级,敲2下回车键即可
源码
> 这是第一级引用
> > 这是第二级引用 <!-- 这里手动加一个 > ,打完后,敲 2 下回车键 -->
> 
> 这里又是第一级引用了

示范

这是第一级引用

这是第二级引用

这里又是第一级引用了

4.4.4 有序&无序&引用 连续套娃

  • 有序列表无序列表引用 三者之间,可以相互嵌套
  • 核心键 : Shift + Enter & Enter & Shift + Tab ( 或 Ctrl + [ )

    • Shift + Enter 在切换格式的嵌套中,是 自带一层 缩进 效果的
1. 第一级 有序列表1 <!-- (Shift + Enter) --> 
    - 第二级 无序列表1 <!-- (Shift + Enter) -->
        >第三级 引用1  <!-- (Enter) -->
            - 第四级 无序列表2 <!-- (Shift + Enter) -->
                1. 第五级 有序列表2 <!-- (Enter) -->
            - 第四级 无序列表3   <!-- 写文本前,先( Shift + Tab 或 Ctrl + [ ) ;写完后再 (Enter) -->
        >第三级 引用2  <!-- 写文本前,先( Shift + Tab 或 Ctrl + [ ) ;写完后再 (Enter × 2) -->
    - 第二级 无序列表4  <!-- 写文本前,先( Shift + Tab 或 Ctrl + [ ) -->
2. 第一级 有序列表3  <!-- 写文本前,先( Shift + Tab 或 Ctrl + [ ) -->
示范
  1. 第一级 有序列表1

    • 第二级 无序列表1

      第三级 引用1

      • 第四级 无序列表2

        1. 第五级 有序列表2
      • 第四级 无序列表3

      第三级 引用2

    • 第二级 无序列表4
  2. 第一级 有序列表3

4.4.5 Obsidian 的一些缩退问题

  • Obsidian 在列表首行使用缩进的时候,后续的列表会出现一些问题

    • Tab 和 Shift + tab 会无法 缩进 退格

      • 可以使用 Ctrl + ] 与 Ctrl + [ 来解决问题
- - 这是第一段就被缩进的列表
    - 这是第二段被再次缩进的列表  <!-- 这里需按两次 Ctrl + ] ,Tab键是无效的 -->
  - 这是第三段列表  <!-- Ctrl + [ -->
    • 这是第一段就被缩进的列表

      - 这是第二段被再次缩进的列表
      • 这是第三段列表

5. 网页链接与图像

5.1 网页链接

  • 网页链接的 格式:

    • [ + 显示文本内容 + ] + ( + 链接地址 + 空格 + " + 提示信息文本 + " + )
  • 说明:

    • 显示文本内容,是在渲染界面实际 可见 的文本,用以 说明 链接
    • 提示信息文本,需鼠标悬停于 显示文本内容 方可触发,用于增加额外提示信息

      • #注意 "提示信息文本" 是可选项,一般不会填
      • 一般来讲,需按住 Ctrl + 鼠标左键点击 才可跳转链接,不过也有 直接鼠标点击 就能跳转的
[显示文本内容](链接地址 "提示信息文本")

[百度一下,你就知道](http://www.baidu.com "按住Ctrl点击跳转百度")

示范:

百度一下,你就知道

5.1.1链接的加粗

  • 格式有两种:

    1. 把一对 ** 加在 ==显示文本内容==的首尾

    2. 把一对 ** 加在 链接格式==整体== 的首尾

5.2 图像

  • 图像格式:

    • 图像格式,就是在网页链接前面加个 ! (英文格式的),! 代表 可见
    • 图片的提示信息,和网页链接一样,写在 " " 内
    • [ ] 方括号里的文字信息在 Markdown 没啥实质的作用,只是方便在源代码模式下,知道这个图片是什么,在渲染界面是不会显示的。有点类似于HTML img标签 里的 alt属性
![文字信息](图片链接 "提示文本信息")    

![湘湖1](https://z3.ax1x.com/2021/08/06/fuNkXq.jpg "湘湖一角")
  • 补充:

    • 图像链接可以是本地的,也可以是在线

      • 本地图像直接 Ctrl + C 黏贴,Ctrl + V 复制 就可以
      • 在线图像推荐使用 图床
    • 调整图像的大小需要使用 HTML 和 CSS,在 Typora编辑器 中右键可以直接缩放图片
      本质是转成了HTML的格式,最后会有一个 style="zoom: %;" ,这里数值可以自己修改
    • 如果有使用 Obsidian 的朋友,在线图片链接是通用的。不过,因为 Obsidian 是双向链笔记
      它的本地图片格式不太一样

      • ![[图片名]]

        • Obsidian 中的图片是以双链的格式引用在目标笔记中,用 ! 使它可见
        • Obsidian的图片设置大小是用 | 分隔,后面写宽度数值,单位默认是 px
          设定好宽度,高度会自动等比例调整

          • ![[图片名|宽度数值]]

            • 若想自主调整图片宽高,则用:

              • ![[图片名|宽度数值x高度数值]]

                • #提示 这里的 x 是 英文字母x
    • 如果是在线图床,需要调整图片大小:

      • ![图床|宽度数值](链接地址)

示范

 title=

6. 表格

  • Markdown的表格,比HTML简单很多

    • | 是构成表格的主要 框架
    • - 区分 表头 和 表格主体
    • : 控制 表格内 文本内容 的 对齐方式
    • Typora编辑器中 输入 Ctrl + T 即可快速插入表格,自由定义样式
|这里是表头1|这里是表头2|这里是表头3|
|:-|:-:|-:|    <!--区分表头和表格主体,:代表文本对齐方式,分别是左对齐,居中对齐,右对齐-->
|单元格数据1|单元格数据2|单元格数据3|
|单元格数据4|单元格数据5|单元格数据6|

示范

这里是表头1这里是表头2这里是表头3
单元格数据1单元格数据2单元格数据3
单元格数据4单元格数据5单元格数据6

6.1 表格中文本内容的换行

  • Mardown中表格,它的宽高是由 单元格数据内的文本内容 撑开 的
  • 当我们输入一段很长很长的文本,它所在的单元格会变得过宽

如下图所示:

表头1表头2
这是一段很长很长很长很长很长很长很长很长很长很长很长很长很长很长的文本普通文本
  • 若想对一段长文本进行换行,可以在 中间 插入一个 <br> ( 换行标签 )
| 表头1 |  表头2 |
|:-:|:-:|
|这是第一行文本<br>这是另起一行的文本|普通文本|

示范

表头1表头2
这是第一行文本
这是另起一行的文本
普通文本

7. 代码域

7.1 行内代码

  • 行内代码 的格式:

    • 输入两个 ` 反引号 ,在中间写代码内容
  • 补充:

    • 行内代码不一定非得写代码,也可以作为着重标记,突出显示内容
    • 行内代码中,源代码界面和渲染界面是完全一致的,标识符会失效
    • 所谓行内代码: 只要你的屏幕足够宽,它就不会换行
`这是一段行内代码`

`<table border="1" cellspacing="0" width="500" height="500">`

`print("Hello, World!")`

`这是一行突出显示的文本内容`

示范

<table border="1" cellspacing="0" width="500" height="500">

print("Hello, World!")

这是一行突出显示的文本内容

7.2 代码块

  • 代码块 的格式:

    1. 在首行和末行各加 三个 ` 反引号
    • `  + 语言种类
      代码内容
      `
    1. 在首行和末行各加 三个 ~ 波浪号

      • ~~~ + 语言种类
        代码内容
        ~~~
  • 补充:

    • 在代码块也不一定要写代码,可以写一段突出的文本内容,语言类型可以填写 txt 或者 干脆不写
    • 代码块中,源代码界面和渲染界面是完全一致的,标识符会失效
    • 在 Typora编辑器 ,用键盘按键脱离代码块区域,需输入: Ctrl + Enter
```语言种类
代码内容
代码内容
代码内容
```

下面是HTML代码块

```html
<table border="1">
    <tr>
        <td>row 1, cell 1</td>
        <td>row 1, cell 2</td>
    </tr>
    <tr>
        <td>row 2, cell 1</td>
        <td>row 2, cell 2</td>
    </tr>
</table>
```

下面是CSS代码块

```css
.box {
    width: 600px;
    height: 400px;
    margin: 100px auto;
    background-image: linear-gradient(black 33.3%,red 33.3%, red 66.6%, yellow 66.6%, yellow);
}    
```

下面是JavaScript代码块

```js
    // 定义一个30个整数的数组,按顺序分别赋予从2开始的偶数;然后按顺序每五个数求出一个平均值,放在另一个数组中并输出。试编程
    let arr = [2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60]
    let newarr = [];
    for (let i = 0, count = 0, sum = 0, len = arr.length; i < len; i++) {
        sum += arr.shift();
        count++;
        if (count % 5 === 0) {
            newarr.push(sum / 5);
            sum =  0;
        }
    }
    console.log(newarr);

    let arr = [2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60]
    let newarr = [];
    for (let i = 0, len = arr.length; i < len / 5; i++) {
        let subarr = arr.splice(0, 5)
        for (let j = 0, sum = 0; j < subarr.length; j++) {
            sum += subarr[j];
        }
        newarr.push(sum / 5);
    }
    console.log(newarr);
```


下面是Python代码块

```python
#!/usr/bin/python
# -*- coding: UTF-8 -*-

i = 2
while(i < 100):
   j = 2
   while(j <= (i/j)):
      if not(i%j): break
      j = j + 1
   if (j > i/j) : print i, " 是素数"
   i = i + 1
 
print "Good bye!"
```

下面是一块突出显示的文本

```txt
这是一段
突出显示的
文本内容
```

示范

<table border="1">
    <tr>
        <td>row 1, cell 1</td>
        <td>row 1, cell 2</td>
    </tr>
    <tr>
        <td>row 2, cell 1</td>
        <td>row 2, cell 2</td>
    </tr>
</table>
.box {
    width: 600px;
    height: 400px;
    margin: 100px auto;
    background-image: linear-gradient(black 33.3%, red 33.3%, red 66.6%, yellow 66.6%, yellow);
}    
// 定义一个30个整数的数组,按顺序分别赋予从2开始的偶数;然后按顺序每五个数求出一个平均值,放在另一个数组中并输出。试编程
let arr = [2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60]
let newarr = [];
for (let i = 0, count = 0, sum = 0, len = arr.length; i < len; i++) {
    sum += arr.shift();
    count++;
    if (count % 5 === 0) {
        newarr.push(sum / 5);
        sum =  0;
    }
}
console.log(newarr);

let arr = [2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60]
let newarr = [];
for (let i = 0, len = arr.length; i < len / 5; i++) {
    let subarr = arr.splice(0, 5)
    for (let j = 0, sum = 0; j < subarr.length; j++) {
        sum += subarr[j];
    }
    newarr.push(sum / 5);
}
console.log(newarr);
#!/usr/bin/python
# -*- coding: UTF-8 -*-

i = 2
while(i < 100):
   j = 2
   while(j <= (i/j)):
      if not(i%j): break
      j = j + 1
   if (j > i/j) : print i, " 是素数"
   i = i + 1
 
print "Good bye!"
这是一段
突出显示的
文本内容

7.2.1 代码块的嵌套

格式:

  • 使用4个  `  包裹 3个  `
示范
````txt
```js
// 3. 输出 100以内(不包括100) 所有偶数的和
// 这类求和问题的核心 : 利用循环  (总和 = 旧数的和 + 新数)

let sum = 0;

for (let i = 1, sum = 0; i < 100; i++) {
 if (i % 2 == 0) {
 // 筛选偶数
 sum += i; // sum = sum + i // 累加偶数并赋值给sum
 // sum为(旧的,已经进入循环的数)的和,i 为新进入循环的数。当加到(最后一个新数i)时,sum就是最后的 总和
 }
}

console.log(sum); // 打印总和
```
````

如果要再套一层,就在最外层 加 5个  `  ,以此类推……

7.3 如何在行内代码里显示反引号

首尾各用 两个反引号 ` 空格 包裹

格式:

``+空格+带`的内容+空格+``  <!-- 不要忘记前后的两个空格 -->

`` 这是一段能显示`反引号`的行内代码 ``

效果:

这是一段能显示`反引号`的行内代码

8. 任务列表(待办)

  • 任务列表 的格式:

    • - + 空格 +[ ] +空格 + 任务列表内容 ( 中括号[ ] 里面必须有个空格)
    • 给待办任务列表打  ,变成 已办

      1. 在渲染界面,直接鼠标左键点击框框
      2. 在源代码界面,在中括号内输入 英文字母x

        • 部分编辑器,在 中括号内 输入任意字符都可以打  ( 例如 Obsidian )
  • 补充:

    • 大部分 MD编辑器 支持输入第一个任务列表后,按下 Enter 进入下一行会 自动补全待办格式
    • Obsidian中,输入 Ctrl + Enter ,即可生成一个待办列表

      • 再输入一次 Ctrl + Enter ,会在待办列表 打 
  • 格式:
- [ ] 待办任务列表1
- [ ] 待办任务列表2
- [x] 已办任务列表1    <!-- 英文字母X -->
- [x] 已办任务列表2

示范

  • [ ] 待办任务列表1
  • [ ] 待办任务列表2
  • [x] 已办任务列表1
  • [x] 已办任务列表2
  • 任务列表也是可以缩进+退格的,操作跟 无序、有序列表一样

示范

  • [ ] 第一级待办列表1

    • [ ] 第二级待办列表1
      另起一行的第二级待办列表1

      • [x] 第三级已办列表1
      • [x] 第三级已办列表2
    • [ ] 第二级待办列表2
      另起一行的第二级待办列表2
  • [ ] 第一级待办列表2

9. 注释

Markdown 的 注释 和 HMTL 一样,注释的内容在 渲染界面 不可见 (部分编辑器可见)

  • 注释 的格式:

    • <!-- 这里是注释的内容 -->

      • 注释可以是单行,也可以是多行
    • 如果有在使用 Obsidian 的,它的注释格式是不一样的

      • %%这是Obsidian的注释内容%%
<!-- 这里是一行注释 -->

<!--
这里是
一段
假装有
很多行的
注释
-->

%%这是一行Obsidian里的注释%%

%%
这里是
一段
假装有
很多行的
Obsidian里的
注释
%%

示范 (只有切换至 编辑模式 才能看到喔)

10. 变量

10.1 网页链接变量

  • 网页链接变量 的格式:

    1. 首先输入

      • [显示文本内容] + [变量名]

        • 变量名可以自己取,没啥限制,任意字符都可以
    2. 在文档任意一个区域,输入:

      • [变量名] + : + 空格 + 链接地址 (这个空格 不打也没事)
[百度一下,你就知道][度娘]
[知乎-有问题,就会有答案][知乎]

<!-- 这里是变量区域 -->
[度娘]: http://www.baidu.com 
[知乎]: https://www.zhihu.com    

示范

百度一下,你就知道

知乎-有问题,就会有答案

10.2 脚注

  • 脚注 的格式:

    • 在需要脚注的地方,输入:

      • [^脚注代号] ( 脚注代号会直接显示在渲染界面 )

        • 脚注代号可以随便命名,不过推荐使用 数字序号
    • 在其他区域,输入:

      • [^脚注代号] + : + 空格 + 脚注内容 (这个 空格 不打也没事)
鲁迅原名是什么[^1] ,浙江哪里人[^2]

<!-- 这里是变量区域 -->
[^1]: 周树人
[^2]: 绍兴人

示范

鲁迅原名是什么[[1]](https://publish.obsidian.md/#fn-1-a142f421385130e7),浙江哪里人[[2]](https://publish.obsidian.md/#fn-2-a142f421385130e7)

11. 拓展文本格式标记

  • Markdown 想实现更多的文本显示效果,只能依赖HTML标记实现
  • 个人不是很推荐在 MD 中使用 HTML,不过一些简单的标记还是可以 轻度使用 的

11.1 键盘文本

  • 键盘文本的 格式:

    • <kbd>键盘文本</kbd>
    • <kbd>Ctrl</kbd> + <kbd>X</kbd>
  • 效果:

    • 键盘文本
    • Ctrl + X ( 剪切 )
  • 说明:

    • 键盘文本也不一定非得是键盘按键,也可以作为着重文本突出显示

      • 效果: 这也算一种着重文本的方式

11.1.1 加粗键盘文本

  • 加粗键盘文本的格式有两种

    • <kbd>**键盘文本**</kbd>
    • **<kbd>ctrl + x</kbd>**
  • 效果:

    1. 键盘文本
    2. ctrl + x

11.2 放大文本

  • 放大文本 的格式:

    • 这是一段普通文本
      <big>这是一段放大文本</big>
  • 效果:

    • 这是一段普通文本
      这是一段放大文本

11.2.1 放大粗体文本

  • 放大加粗文本的格式有两种

    1. **<big>这是一段放大粗体文本</big>**
    2. <big>**这是一段放大粗体文本**</big>
  • 效果:

    1. 这是一段放大粗体文本
    2. 这是一段放大粗体文本

11.3 缩小文本

  • 缩小文本 的格式:

    • 这是一段普通文本
      <small>这是一段缩小文本</small>
  • 效果:

    • 这是一段普通文本
      这是一段缩小文本

11.3.1 缩小斜体文本

  • 斜体缩小文本 的格式有两种

    1. <small>*这是一段缩小斜体文本*</small>
    2. *<small>这是一段缩小斜体文本</small>*
  • 效果:

    1. 这是一段缩小斜体文本
    2. 这是一段缩小斜体文本

11.4 多彩文本

  • 多彩文本 的格式:

    • <font color=orange>这是一段橘色文本</font>
  • 效果:

    • 这是一段橘色文本

11.4.1 多彩粗体文本

  • 只需要在上面示例的基础上,加上 加粗标识符,有两种格式:

    1. 格式1: **<font color=teal>这是一段加粗的水鸭色文本</font>**

      • 效果: 这是一段加粗的水鸭色文本
    2. 格式2: <font color=teal>**这是一段加粗的水鸭色文本**</font>

      • 效果: 这是一段加粗的水鸭色文本
  • 若上述混搭方法的样式失效 ,可以使用 纯HTML标记

    • 格式: <strong style="color:teal;">这是一段加粗的水鸭色文本</strong> (标记略复杂,不是很推荐)
    • 效果: 这是一段加粗的水鸭色文本

11.4.2 多彩斜体文本

  • 跟多彩加粗文本完全一样,只需把首尾的 ** 换成 * 即可
  1. 格式1: *<font color=teal>This is an italic teal text</font>*

    • 效果: _This is an italic teal text_
  2. 格式2: <font color=teal>*This is an italic teal text*</font>

    • 效果: _This is an italic teal text_

11.4.2 多彩粗斜体文本

  • 首尾换成 ***
  1. 格式1: ***<font color=teal>This is a bold italic teal text</font>***

    • 效果: This is a bold italic teal text
  2. 格式2: <font color=teal>***This is a bold italic teal text***</font>

    • 效果: This is a bold italic teal text

#注意 多彩文本尽量慎用,Markdown 的核心就是 简洁精炼,注重 实质内容,而非花哨的 颜色样式

12. 拓展文本显示效果

  • 拓展显示效果既不是原生 Markdown语法 支持的,也非 HTML标记,而是部分编辑器 提供的 额外标识符,属于拓展语法,旨在为 Markdown使用者 提供更多样式选择
  • 不同编辑器,支持不一样,这里以 Typora编辑器 为例

12.1 文本高亮

  • 文本高亮 的格式:

    • ==这里是一段高亮文本==
  • 效果:

    • ==这里是一段高亮文本==

12.2 上标

  • 用一对 ^ 包裹 (Shift+ 6)

    • 格式: x^2^
    • 效果: x^2^
  • Obsidian 没效果的,可以用后面会讲的 Latex
  • 或者,也可以使用 HTML标记

    • <sup>这里是上标内容</sup>
    • X<sup>2</sup>
  • 效果:

    • X2

12.3 下标

  • 用一对 ~ 包裹 (Shift + `)

    • 格式: H~2~O
    • 效果: H~2~O
  • Obsidian 没效果的,可以用后面会讲的 Latex
  • 或者,也可以使用 HTML标记

    • <sub>这里是下标内容</sub>
    • H<sub>2</sub>O
  • 效果:

    • H2O

12.4 Emoji 符号

用一对 : 包裹,里面是 Emoji 符号的 语义化文本 ( Typora编辑器 中,输入 : 就会带提示器 )

  • 示例:

    • :smile:
      :sweat:
      :cat:
      :woman_cartwheeling:
  • 效果:

    • :smile:
      :sweat:
      :cat:
      :woman_cartwheeling:
  • 补充:

    • 不支持上述方式的 MD编辑器或笔记软件,直接用 输入法 输入也是可以的
    • Windows系统 用户 win + . 就可以输入 Emoji 了
    • Obsidian 用户可以安装第三方插件来支持 Emoji 的输入,推荐两个

      1. ==Emoji Shortcodes==
      2. ==Emoji Toolbar==

13. 转义字符

  • 在 Markdown 中,我们 通过 标识符 改变 文本显示效果
  • 现在我们希望它不作为标识符,而是 作为字符本身呈现出来 (不具备改变文本显示效果的功能,只是一个普通字符)

    • 首先我们可以用前面介绍的 代码域 ,因为代码模式的显示效果就是源代码完全一致
    • 还有一种方法,可以利用转义字符,在这些标识符 前面 加上 反斜线 * ( 反斜线要紧贴在标识符前面,不能 有 空格* )

      • 原理:

        • \ 的作用是让标识符 转义 变为一个普通字符,完成这个效果后,反斜线会自动隐藏
        • 隐藏后的反斜线仅在源代码界面可见,在渲染界面不可见
        • 反斜线只争对标识符起作用,其他字符添加 \\ 不会自动隐藏
      • 补充:

        • 如果想给已经被加在标识符前面,会自动隐藏的 \ 显示出来,可以在反斜线前面再加一个 * ,用它自己来转义自己*

          • 示例: 这里紧跟在标识符前面的反斜线\\*会被转义成普通字符显示出来,不会自动隐藏,且这段文件会是斜体*
          • 效果: 这里紧跟在标识符前面的 反斜线\_会被转义成普通字符显示出来,不会自动隐藏,且这段文件会是斜体_

例1 以普通字符显示星号

  • 如何让被一对或多对 * 号 包裹的文本内容,能够正常显示 * ,且文本不改变格式

    • \*这段文本被一对星号包裹,但不会倾斜\*

      • 效果: 这段文本被1对星号包裹,但不会倾斜
    • \*\*这段文本被2对星号包裹,但不会加粗\*\*

      • 效果: 这段文本被2对星号包裹,但不会加粗
    • \*\*\*这段文本被3对星号包裹,但它既不倾斜也不加粗\*\*\*

      • 效果: 这段文本被3对星号包裹,但它既不倾斜也不加粗

例2 表格内 单元格中的竖杠

  • 在表格中,使用 | 作为单元格的内容,但不会被识别为表格的结构,不会增加额外的单元格
|表头1|表头2|
|-|-|
|这里的文本被\|分隔|这里的文本也被\|分隔|
  • 效果:
表头1表头2
这里的文本被\分隔这里的文本也被\分隔

#补充 该技巧可用于 Obsidian 表格内 双链的文本修饰

文本修饰:

在 双链[[ ]]内 以 | 引导的内容

  • 格式: [[链接的内容|文本修饰]]
  • 说明: 文本修饰是渲染界面实际显示的文本,便于更好地融入语境

表格内的格式:

在 | 前面加上 \

  • [[表格内的链接内容\|文本修饰]]

示例:

|                  表头1                  |                        表头2                        |
|:---------------------------------------:|:---------------------------------------------------:|
| [[#例2 表格内 单元格中的竖杠\|单元格中的竖杠]] | [[#例3 不会变成代码的反引号\|不会变成代码的反引号]] |

效果:

表头1表头2
单元格中的竖杠不会变成代码的反引号

例3 不会变成代码的反引号

使用 转义符号\ 让 反引号 `  变成普通字符,不再具有行内代码的标识符功能

格式:

\`这段被反引号包裹的内容不会变成行内代码\`

效果:

这段被反引号包裹的内容不会变成行内代码

例4 链接中的中括号

在 网页链接 的 显示文本内容 中,使用 中括号 [ ]

  • 在显示文本内容中,在其中一个中括号前面,加上转义符号 反斜杠 **

    • 格式: [链接里的 \[中括号\] 能被正常显示](https://www.runoob.com)
    • 效果: [链接里的 [中括号] 能被正常显示](https://www.runoob.com/)

例5 不是列表的连接符(横杠)

  • 引用一段话,一般会在换行之后,加上 - 出处
  • 因为 - 是标识符,会变成一个无序列表

如下所示:

The Web, the Tree, and the String.
写作之难,在于把网状的思考,用树状结构,体现在线性展开的语句里。

  • 史蒂芬·平克
  • 解决方法:

    • 在 - 前面加上 转义符号 **
    >The Web, the Tree, and the String.
    >写作之难,在于把网状的思考,用树状结构,体现在线性展开的语句里。
    >\- 史蒂芬·平克   <!-- 加上转义符号 \ , 不会变成无序列表 -->
  • 效果:

The Web, the Tree, and the String.
写作之难,在于把网状的思考,用树状结构,体现在线性展开的语句里。

  • 史蒂芬·平克

例6 不是标题的

让 # 不被识别为标题标识符

格式:

\# 这里的内容不会被识别为标题

效果:

这里的内容不会被识别为标题

例7 不会注释的 %

在 Obsidian 中 注释是前后各两个 % 号

使用 转义符号\,让 %% 作为普通字符显示出来,不具备注释的功能

  • 格式: \%\%这里的内容可以被显示喔\%\%
  • 效果: %%这里的内容可以被显示喔%%

例8 木有链接的双链

Obsidian 的双向链格式是2个方括号 [[ ]] (双方),使用 转义符号\,让 [ ] 不再具有 双链功能

格式:

\[\[这段文本被双方包裹,但不是一个双向链\]\]

效果:

[[这段文本被双方包裹,但不是一个双向链]]

例9 页链接里 显示文本内的 中括号

使用转义符号\,让中括号可以作为显示文本 在网页链接中显示出来

格式:

[\[这是一个带中括号的网页链接显示文本,点击会跳转至百度\]](https://www.baidu.com/)

效果:

[[这是一个带中括号的网页链接显示文本,点击会跳转至百度]](https://www.baidu.com/)

特殊情况 文本修饰的中括号

文本修饰的 中括号[ ] 不需要使用 转义符号\

示范:

[[#例8 木有链接的双链|[这是一个带中括号的文本修饰]]]

效果:

[这是一个带中括号的文本修饰]

14. 空格&换行&强制删除

14.1 空格

  • 在一些编辑器或者支持MD的笔记软件里,无论你打多少个空格,它只会显示单个 空格 的距离

    • 可以使用 HTML中 空格 的 字符实体 —— &nbsp;
    • 若要添加 多个 空格,就输入多个 —— &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  • 格式:

    • 这里有&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;6个空格分隔
  • 效果:

    • 这里有      6个空格分隔

14.2 换行

场景1:

  • 在一些编辑器或者支持MD的笔记软件里,无论你打多少个 回车,它只会显示单个 回车 的空行间距

    • 可以使用之前表格里提到的 <br> 标签,在 单独一行 中使用,增加额外的空行间距
    • 如果要增加 多个,就输入 多个 —— <br><br><br><br><br>
    • #注意 当单独一行使用 <br> 标签的时候,如果前后有标题标识符或者列表标识符,确保 br元素 前后两行都是空白行

格式:

这里是第一段文本

<br><br><br><br><br>     <!-- 这里插入了5个空行间距 -->

这里是第二段文本

效果:

这里是第一段文本

这里是第二段文本

场景2:

  • 在列表中也可以插入换行符
- 这是一段无序列表
  <br>     <!-- 插入一个空行间距,需单独一行,上下不用预留空格 -->
  这是同一段无序列表中,空一行距离显示的内容
- 这是第二段无序列表

效果:

  • 这里是第一段无序列表

  
这里是同一段无序列表中,空一行距离显示的内容
  • 这里是第二段无序列表
  • 补充:

    • 有一些MD编辑器或笔记软件,严格遵循MD的换行规则,你敲一个回车是没法换行的,必须在 行末 敲 2个空格,再按回车键

      • 格式:

        • 这里是一段想换行的文本空格 空格 Enter
          这是换行后的文本

14.3 强制删除

  • 很多编辑器都有英文标点自动补全功能,自动生成一对,光标落在中间
    只想删除前面1个,却会把 一整对 都删掉
  • 在多个列表的嵌套中,也许会遇到一些 无法被删除 的 列表标识符
  • 解决方法:
    使用 Shift + Backspace 即可强制删除

    • Bcakspace   ( 退格键 )

15. 嵌入

  • 嵌入都是依赖 HTML标签 实现的,嵌入的都是在线链接格式

    • 如果是本地的,Obsidian 中音频是有自带的可录制的录音机插件的,其他的 音频、视频 直接复制黏贴就可以了,也可以直接拖拽到OB的笔记界面

      • 其他的媒体文件在 Obsidian 也和图片一样,以双链的格式引用在目标笔记中,使用 ! 使它可见

15.1 嵌入音频

  • 格式:

    • <audio controls="controls" preload="none" src="音频链接地址"></audio>
  • 示例:
<audio controls="controls" preload="none" src="https://www.ldoceonline.com/media/english/exaProns/p008-001803372.mp3?version=1.2.37"></audio>
  • 效果:

15.2 嵌入视频

  • 格式:
<video width="600" height="420" controls>
  <source src="movie.mp4" type="video/mp4">
  <source src="movie.ogg" type="video/ogg">
  <source src="movie.webm" type="video/webm">  
</video>
  • 说明:

    • width ( 宽度 ) height ( 高度 ) ,可以自己设置,直接输入数字即可,单位默认是 px(像素)
      也可以使用 百分比
      width=100% 代表水平撑满整个窗口
      height=50% 代表垂直撑满半个窗口
    • Video标签 支持的视频格式 :MP4 ogg webm

15.3 嵌入页面

  • 格式: <iframe width=600 height=400 src="页面链接地址" scrolling="auto" border="0" frameborder="no" framespacing="0" allowfullscreen="true"> </iframe>
<iframe width=600 height=400 src="https://www.runoob.com/html/html-tutorial.html" scrolling="auto" border="0" frameborder="no" framespacing="0" allowfullscreen="true"> </iframe>
  • 效果:
  • iframe标签 除了嵌入页面,也可以嵌入在线视频,主流的视频网站都会提供嵌入代码

    • 具体可以看这个 iframe视频嵌入教程
    • B站 的视频,得在 // 前面补充 http:
    • 不是所有的 编辑器和笔记软件 都支持这个
  • 示例:
<iframe width=600 height=400 src="http://player.bilibili.com/player.html?aid=20190823&bvid=BV1yW411s7og&cid=32964980&page=1" scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true"> </iframe>
  • 宽高设置和前面的 video 一样
  • 效果:

16. Latex 数学公式

  • 主要用于 数学公式 与 化学公式 的书写

16.1 行内公式

  • 格式:

    • $** + 行内公式 + **$
  • 示例:

    • $x^2 + 2x + 5 + \sqrt x = 0$
    • $\ce{CO2 + C -> 2 CO}$
    • $\ce{CO2 + C -> 2 CO}$
    • $\ce{2Mg + O2 ->[燃烧] 2 MgO}$
  • 效果:

    • 燃烧

16.2 公式块

  • 格式:

    • $$
      公式块
      $$
  • 示例:
% 化学公式
$$
\ce{Zn^2+  <=>[+ 2OH-][+ 2H+]  $\underset{\text{amphoteres Hydroxid}}{\ce{Zn(OH)2 v}}$  <=>[+ 2OH-][+ 2H+]  $\underset{\text{Hydroxozikat}}{\ce{[Zn(OH)4]^2-}}$}
$$
% 麦克斯韦方程组
$$
\begin{array}{lll}
\nabla\times E &=& -\;\frac{\partial{B}}{\partial{t}}   
\ \nabla\times H &=& \frac{\partial{D}}{\partial{t}}+J   
\ \nabla\cdot D &=& \rho
\ \nabla\cdot B &=& 0
\ \end{array}
$$
% 薛定谔方程
$$
i\hbar\frac{\partial \psi}{\partial t} = \frac{-\hbar^2}{2m} \left(\frac{\partial^2}{\partial x^2} + \frac{\partial^2}{\partial y^2}+\frac{\partial^2}{\partial z^2} \right) \psi + V \psi
$$
  • 效果:

17. Mermaid

17.1 流程图

源码1:

```mermaid
graph TB
    %% s=start  e=end  f=fork  n=normal
    
    s([开始])-->f1{{if条件}};

    %% 分支点2
    f1--true-->n1[if语句块]-->e([结束]);
    f1--false-->f2{{else if条件}};

    %% 分支点1
    f2--true-->n2[else if语句块]-->e;
    f2--false-->n3[else语句块]-->e;
```

渲染1:

源码2:

```mermaid
graph LR
    %% s=start  e=end  f= fork n=normal 
    
    %% 虚线
    s[朱百六]-.->|子|n1[朱四九]-.->|子|n2[朱五四]-.->|子|f1_帝((朱八八))
    
    %% 分支点 朱八八
    f1_帝-->|长子|f2[朱标]
    f1_帝-->|次子|n3[朱樉]
    f1_帝-->|三子|n4[朱棢]
    f1_帝-->|四子|n5_帝((朱棣))
    
    %% 分支点 朱标
    f2-->|长子|e1[朱雄英]
    f2-->|次子|e2_帝((朱允炆))
    
    n5_帝-->|长子|e3[朱高炽]
```

渲染2:

17.2 饼图

源码:

```mermaid
pie
    title 为什么总是宅在家里?
    "喜欢宅" : 45
    "天气太热" : 70
    "穷" : 500
    "关你屁事" : 95
```

渲染:

6%10%70%13%为什么总是宅在家里?喜欢宅天气太热穷关你屁事

17.3 序列图 (时序图)

源码:

```mermaid
sequenceDiagram
    %% 自动编号
    autonumber
    %% 定义参与者并取别名,aliases:别名
        participant A as Aly
        participant B as Bob
        participant C as CofCai
        %% 便签说明
        Note left of A: 只复习了一部分
        Note right of B: 没复习
        Note over A,B: are contacting
        
        A->>B: 明天是要考试吗?
        B-->>A: 好像是的!
        
        %% 显示并行发生的动作,parallel:平行
        %% par [action1]
        rect rgb(0, 25, 155)
            par askA
                C -->> A:你复习好了吗?
            and askB
                C -->> B:你复习好了吗?
            and self
                C ->>C:我还没准备复习......
            end
        end
        
        %% 背景高亮,提供一个有颜色的背景矩形
        rect rgb(25, 55, 0)
            loop 自问/Every min
            %% <br/>可以换行
            C ->> C:我什么时候<br/>开始复习呢?
            end
        end
        
        %% 可选择路径
        rect rgb(153, 83, 60)
            alt is good
                A ->> C:复习了一点
            else is common
                B ->> C:我也是
            end
            %% 没有else时可以提供默认的opt
            opt Extra response
                C ->> C:你们怎么不回答我
            end
        endsequenceDiagram
    %% 自动编号
    autonumber
    %% 定义参与者并取别名,aliases:别名
        participant A as Aly
        participant B as Bob
        participant C as CofCai
        %% 便签说明
        Note left of A: 只复习了一部分
        Note right of B: 没复习
        Note over A,B: are contacting
        
        A->>B: 明天是要考试吗?
        B-->>A: 好像是的!
        
        %% 显示并行发生的动作,parallel:平行
        %% par [action1]
        rect rgb(0, 25, 155)
            par askA
                C -->> A:你复习好了吗?
            and askB
                C -->> B:你复习好了吗?
            and self
                C ->>C:我还没准备复习......
            end
        end
        
        %% 背景高亮,提供一个有颜色的背景矩形
        rect rgb(25, 55, 0)
            loop 自问/Every min
            %% <br/>可以换行
            C ->> C:我什么时候<br/>开始复习呢?
            end
        end
        
        %% 可选择路径
        rect rgb(153, 83, 60)
            alt is good
                A ->> C:复习了一点
            else is common
                B ->> C:我也是
            end
            %% 没有else时可以提供默认的opt
            opt Extra response
                C ->> C:你们怎么不回答我
            end
        end
```

渲染:

AlyBobCofCai只复习了一部分没复习are contactingparaskA[self]loop[自问/Everymin]altis goodopt[Extraresponse]明天是要考试吗?1好像是的!2你复习好了吗?3你复习好了吗?4我还没准备复习......5我什么时候开始复习呢?6复习了一点7我也是8你们怎么不回答我9AlyBobCofCai

17.4 甘特图

源码:

```mermaid
gantt
    title A Gantt Diagram
    dateFormat  YYYY-MM-DD
    section Section
    A task           :a1, 2014-01-01, 30d
    Another task     :after a1  , 20d
    section Another
    Task in sec      :2014-01-12  , 12d
    another task      : 24d
```

渲染:

2014-01-052014-01-122014-01-192014-01-262014-02-022014-02-092014-02-16A taskTask in secanother taskAnother taskSectionAnotherA Gantt Diagram

17.5 类图

源码:

```mermaid
classDiagram
    Animal <|-- Duck
    Animal <|-- Fish
    Animal <|-- Zebra
    Animal : +int age
    Animal : +String gender
    Animal: +isMammal()
    Animal: +mate()
    class Duck{
      +String beakColor
      +swim()
      +quack()
    }
    class Fish{
      -int sizeInFeet
      -canEat()
    }
    class Zebra{
      +bool is_wild
      +run()
    }
```

渲染:

18. 标签 (Tag)

  • 标签是 Obsidian 特有的一个功能,标签可以通过点击唤起快速搜索 (搜索包含该标签的所有笔记)

格式:

  • # + 标签名

    • #标签名

关于空格

  • 在一段正文文本的后面添加 Tag, # 的前面 需要有个空格

    • 空格 + # + 标签名
  • 与 标签名 之间不能有空格,否则就变成 一级标题 了

  • 标签名的内部不允许使用空格,若想区分标签中的词语,可使用以下三种方法:

    1. 驼峰式大小写: #BlueTopaz
    2. 下划线: #blue_topaz
    3. 连字符: #blue-topaz

关于数字

  • 标签内允许使用数字,但不能完全由数字组成

    • #1984 ❌
    • #1984Date ⭕
    • #da_1984_te ⭕
    • #date-1984 ⭕

标签的嵌套

在标签名内,使用 / 斜杠 可以实现标签的嵌套

格式:

  • #主标签/子标签1
  • #主标签/子标签2
  • #主标签/子标签3

嵌套标签可以像普通标签一样通过点击来唤起搜索,嵌套标签允许你选择搜索的层次。例如:

  • 搜索 #主标签 ,即可找到包含任意一个子标签的所有笔记

    • 返回的结果会是上述的三个例子
  • 当你在一个主分类下设置了多个子分类,想找到这个主分类包含的所有内容时,该功能会很实用

能被使用的符号

综上所述,标签内能被使用的符号共有三种

  1. _ 下划线
  2. - 连字符
  3. / 斜杠

如何让 # 不被识别

可以使用前面提到的转义符号 \ 反斜杠,与上述的 转义标题 类似

格式:

\#这里的内容不会被识别为标签

效果:

这里的内容不会被识别为标签

19. 避免标识符的滥用

即使在 Markdown 中,也要尽量避免标识符的滥用

比如我的这篇教程,就存在一定程度的滥用

  • 其实是因为我这篇是教学性质的,不太一样,有些不能避免

    • (好吧,我就是在甩锅)

标识符的本质是突出显示,代表重点

  • 一篇笔记里的某段文本,使用各式各样的的标识符,会造成重点不清晰

三种标识,慎用

  1. 词中对单个汉字的标识

    1. 卧==虎==藏==龙==
  2. 短语中对单个英语单词的标识

    1. get a ==bang== out of
  3. 标识符的多层嵌套

    1. 我感觉快要==原地起飞==了

原因:

  • 词义的割裂
  • 视觉的混乱
  • 不利于搜索

    • 卧==虎==藏==龙==

      • 搜 卧虎 -- 搜不到
      • 搜 藏龙 -- 搜不到

20. Callouts

20.1 Callouts 语法

Callouts 以前是第三方插件 Admonitions 的功能,现在被内置到OB自身,在 ==Publish== 中也可使用

  • 最方便的使用方式,是安装第三方插件—— Admonitions

    • ctrl+p 命令 ,输入 admontion

命令 嵌入callot.png


  • 也可以直接 输入 callout

直接输入 callout 命令.png


admonition 设置.png

也可 用 / 引导,输入 /callout 也可快速插入

格式

> [!类型] 标题
> 内容

注:

  1. 不要忘记 >
  2. ] 与 标题 间有空格

示范

这是一个callout标题

这里是callout里的内容
callout内部支持双链

  • 同样支持==MD语法==

源码

> [!note] 这是一个callout标题
> 这里是callout里的内容
> [[#20 Callout blocks|callout]]内部支持双链
> - 同样支持==MD语法==

20.2 折叠与展开

[!note] 默认是展开的,且不能折叠

如果想让 Callouts 有折叠的功能,可在 ] 后面加上 + 加号

  • 注意,是没空格的

示范

> [!note]+ 这是一个可折叠的标题
> 这里的内容可通过点击 **Callouts标题** 折叠起来

效果

这是一个可折叠的标题

这里的内容可通过点击 Callouts标题 折叠起来


在后面加上 - 减号,默认处于折叠状态 [!note]-

示范

> [!note]- 这是一个已被折叠的标题 (点击可展开)
> 里面的内容默认看不到

效果

这是一个已被折叠的标题(点击可展开)

20.3 Callouts 类别

默认共支持12种类别 (可自己在 Admonitions插件 里添加)

  1. note
  2. abstract, summary, tldr
  3. info, todo
  4. tip, hint, important
  5. success, check, done
  6. question, help, faq
  7. warning, caution, attention
  8. failure, fail, missing
  9. danger, error
  10. bug
  11. example
  12. quote, cite

举例

> [!bug] 这是一个bug类别
> 这里是内容

这是一个bug类别

这里是内容

20.4 多层嵌套

Callouts 支持多层嵌套

示范

> [!failure] 这是第一层
> 这里是第一层的内容
>> [!bug]+ 这是嵌套的第二层
>> 这里是第二层的内容
>>> [!warning]- 这是嵌套的第三层,且默认为折叠状态
>>> 这里是第三层被折叠的内容

效果

这是第一层

这里是第一层的内容

这是嵌套的第二层

这里是第二层的内容

这是嵌套的第三层,且默认为折叠状态


支持用CSS来自定义类型和图标,不过我个人没怎么用

具体可戳 Use callouts - Obsidian Help


  1. 周树人↩︎
  2. 绍兴人↩︎