跳转到内容

W2 Markdown与Latex教程

Markdown 介绍与使用

简介

Markdown 是一种轻量级标记语言。

编辑器

如果在上一周的教程中开始学习使用 Obsidian ,可以直接用它来尝试写一些 Markdown 语句。

如果没有安装,可以先尝试在知乎、CSDN 或者 CC98 用 Markdown 写一些文字。

通用语法演示

我会先在 Obsidian 中演示,再在本网页中展示。

这是**加粗**,这是*斜体*,这是***加粗+斜体***。
↑按两次 Enter 才是换行。
# 这是一级标题
## 这是二级标题
### 三级标题
#### 四级标题
---
↑水平分割线
- 分级的内容
- tab
- 次次级
- shift tab
- 就是这样
1. 这有空格
2. 换行自动生成编号
> 引用或是什么
| 1 | 这是表格 |
---|---
| 2 | 白天 |
| 3 | 晚上 |
[百度](baidu.com)
![花](flower.png)

Markdown 的图片一般有路径,因编辑地方不同而异。

一般在知乎、CSDN 等网页直接粘贴即可。在项目中写 Markdown 需要用相对路径来写。

![s150](../../../assets/images/flower.png)

s150

更多彩的语法

Obsidian 的 note、caution 等。

>[!note]- 你好
>啊啊啊
>[!caution]+ 你好
>啊啊啊

对比我这里使用的 note、caution 等。

这些语法是非通用的,一般各个平台都会说明特殊的 Markdown 语法,比如Astro Starlight

Markdown 有很好的扩展性,插件很多,比如本网页使用的rehyperemark 插件,他也能让我缩放图片,他能让我的 Markdown 文档支持 Mathjax 数学公式输入。例如:

$\frac{R_1R_2}{R_1+R_2}$

插件相关各平台、框架也会有所说明,比如Astro

MDX

参见 MDX 文档

MDX 可以解释为一种结合 Markdown 与 JSX 的格式,允许在你在 Markdown 文档中使用前端三大件。主要是 JavaScript 相关的组件可以导入。例如,下面这个:

展开↓ 你好

<details>
<summary>展开↓</summary>
你好
</details>

Latex 介绍

简介

LaTex是一款开源免费,并且应用相当广泛的排版工具,它对能对文字,公式,图片进行精确而复杂的排版,并且能保证全文各个章节格式的一致性,并且还能保证全文各个章节格式的一致性。

  • 排版精细化
  • 支持数学公式的优雅展现

特别美观!名人推荐!科研必备!

编辑器

除了以下列举的三种编辑器外,还有Tex MakerMiktexlyx 等等。我不建议你每种都去尝试,然后找自己喜欢的编辑器,因为差别不太大,而且可能比较费时间(下载时间长)。最建议的方式是去 B站 找教程,你认为哪个国内资源丰富些,你觉得你会比较喜欢用,你就用哪种。

TexLive、TeXstudio 安装配置

Overleaf

个人认为这个很够用了,还方便。

国内版地址,海外版地址

  • 易于使用,支持模版;
  • 支持协作
  • 支持文档历史;
  • 离线使用,支持 Dropbox 和 GitHub 同步;

TeX Live

官方(无须翻墙)

  • 开源免费;
  • 全平台;

TeXstudio

官网(须翻墙)

  • 强大的编辑性能,内置丰富的数学符号,支持表格格式,强大的图像处理能力
  • 预览方便,内置结构视图,支持代码折叠、高级语法高亮、拼写检查、错误和警告提示
  • 内置 PDF 阅读器、支持公式和代码段的实时更新及预览、支持图像等内容的提示预览
  • 内置支持各种 LaTeX 编译器、索引、参考书目和词汇表工具

学习和使用

相比 Markdown ,Latex 有更庞大的语法内容需要学习,不建议一次性学完,而是采取用什么学什么的方式,比如β符号不会打,就去查,今天的教程会简单展示一些常规的使用语句。

我搜集了 Latex 的一些学习资源:

  1. 一站式 LaTex 资源库:内有入门教程、各种排版设计之类的。别去买什么什么课程,完全没有必要,不过下载教程可以看一下。
  2. 通用 LaTeX 数学公式语法手册:用于查找不会的符号等的打法。

其他遇到问题去 CSDN 等搜,一般都有。

写论文、写报告通常都是找一套模板,很少像这样从零开始纯手写的,我这里也提供一套模板,供下载使用。

Latex 入门教程

  1. 打开 Overleaf
  2. new project里面可以新建项目、选择模板
  3. 点击右侧Recompile可以得到预览,此时就算保存了

一般把begin{document}end{document}之间的称为正文区,在这之前的是导言区。

空白模版已经默认提供了一个大标题,我们可以加sub来获得小节和小小节。

\subsection{这是一个小节}
\subsubsection{这是一个小小节}

文档类型与包

文档类型: 一般LaTeX提供三种基本文档,articlereportbook,分别用来写小篇幅的文章、中篇幅的报告和长篇幅的书籍。

宏包:

  • amsmath:latex数学公式支持
  • graphicx:插入图片
  • algorithm和algorithmic:算法排版
  • listings:插入代码块

摘要与目录

已默认生成的代码

\maketitle % 显示标题等信息

以下部分放在正文当中,即/begin{document}后。

% 生成目录设置
\renewcommand{\contentsname}{目录} %将content转为目录
\tableofcontents
% 摘要开始部分
\begin{abstract}
该部分内容是放置摘要信息的。
\end{abstract}

公式

\usepackage{amsmath} %引用宏包
这是一个行内公式($a=2b$)的写法,用两个\$夹住。

这是一个行间公式的写法:

\begin{equation}
x = \frac{b^2}{2n} + \sqrt{n^2}
\end{equation}

图片

\usepackage{graphicx} %导入宏包

把你的图片上传到项目当中(拖入左侧栏目中)

%开始插入图片
\begin{figure}[htbp] % htbp代表图片插入位置的设置
\centering %图片居中
%添加图片;[]中为可选参数,可以设置图片的宽高;{}中为图片的相对位置
\includegraphics[width=12cm]{image.jpg}
\caption{红猪} % 图片标题
\label{pic1} % 图片标签
\end{figure}
  • h(here): 当前位置;将图形放置在 正文文本中给出该图形环境的地方。如果本页所剩的页面不够, 这一参数将不起作用。
  • t(top): 顶部;将图形放置在页面的顶部。
  • b(bottom): 底部;将图形放置在页面的底部。
  • p(page): 浮动页;将图形放置在允许有浮动对象的页面上。

此外关于图片插入的还有两个包:

\usepackage{subfigure}
\usepackage[graphicx]{realboxes}

布局与分段

现在我想给这张图片进行文字说明,我想文字居中怎么做呢?

\begin{center}
此段文字居中
\end{center}
\begin{flushright}
此段文字居右
\end{flushright}
\begin{flushleft}
此段文字居左
\end{flushleft}

此时,我们发现我们的文字跑到图片上方(上一页去了),是因为上一页图片放不下了。不妨用下面的语句,让文字放到图片之后。

\newpage %分出新页

但是一段一段用 begin 有点麻烦,在同一个 begin 范围内我们也可以分段,换行两次或者用\par

%无序列表
\begin{itemize}
\item 会显示一个小圆点
\item[2*] 会用方括号内文字代替小圆点
\end{itemize}
%有序列表
\begin{enumerate}
\item 第一点
\item 第二点
\end{enumerate}
%表格
\begin{table}[h] % htbp代表表格浮动位置
% 表格居中
\centering
% 添加表头
\caption{变量表}
% 创建table环境
\begin{tabular}{|cc|c|} % 3个c代表3列都居中,也可以设置l或r,|代表竖线位置
% 表格的输入
\hline % 一条水平线
x & y & z \\ % \\为换行符
\hline
11 & 22 & 33 \\
\hline
\end{tabular}
\end{table}

插入表格可以用这个(须翻墙)来获得 Latex 语句。

本周任务

1. 使用 Markdown 写一篇笔记或文章,尽可能用到本文提及的所有基础用法
2. 尝试用 Latex 撰写实验报告、课程论文