使用Markdown编写适用于GitHub的README.md文件的目录结构

news2024/11/26 8:32:49

文章目录

    • @[toc]
  • 顶部
  • 1. 使用`[TOC]`自动生成
  • 2. VSCode中的插件
  • 3. 手搓目录
  • 目录
  • 相关资料
  • 本文相关代码
  • 一、概述
    • 1.1 基本概念
    • 1.2 两种处理模型
      • (1)微批处理
      • (2)持续处理
    • 1.3 Structured Streaming和Spark SQL、Spark Streaming关系
  • 二、编写Structured Streaming程序的基本步骤
  • 三、输入源
    • 3.1 File源
      • (1)创建程序生成JSON格式的File源测试数据
      • (2)创建程序对数据进行统计
      • (3)测试运行程序
      • (4)处理警告
      • (5)总结分析
    • 3.2 Kafka源
      • (1)启动Kafka
      • (2)编写生产者(Producer)程序
      • (3)安装Python3的Kafka支持
      • (4)运行生产者程序
      • (5)编写并运行消费者(Consumer)程序
        • 方式一
        • 方式二
      • 总结
    • 3.3 Socket源
    • 3.4 Rate源
  • surprise

顶部

1. 使用[TOC]自动生成

在文档开头第一行单独输入[TOC],Markdown编辑器就会根据文档中的标题层级自动生成目录。在博客园和csdn中可以通过此方法来实现自动生成目录(为了演示,本文开头的目录就是使用[TOC]所生成),但是要**注意[TOC] 通常会生成文档中所有标题的目录。如果读者只想生成指定标题的目录(例如,前三个标题),可以手动创建一个自定义的目录,而不是使用自动生成的功能。
==
默认在GitHub中并不支持TOC的自动生成目录**==

2. VSCode中的插件

首先得有VSCode,在VSCode中下载Markdown All in One插件(使用Markdown All in One或Markdown Preview Enhanced皆可,此处以Markdown All in One为例)后,将需要编辑的Markdown文档使用VSCode打开进行编辑,按下万能键CTRL+SHIFT+PF1,输入Markdown All in One: Create Table of Contents后回车即可
image

该插件适用于GitHub中的Markdown的语法结构
现附上插件GitHub链接
v3.6.2下载链接
插件键盘快捷方式:
image

3. 手搓目录

接下来介绍如何手搓适用于GitHub的Markdown的结构的目录😎
以下为笔者的拙见,如有错误,请同志不吝指教
首先在编写目录之前请笔者明确目录结构
可以使用无序列表来实现目录的层级结构,之后就是创建链接锚点(每一个标题都是一个锚点),在目录的无序列表结构中使用[回到顶部](#顶部)这样的结构来链接到顶部标题,同理,链接到其他标题也是如此结构,如下:

语法效果
[回到顶部](#顶部)回到顶部

简单总结一下在GitHub编写README.md文件的规律总结:

  1. 标题处理:

    • 若标题为纯中文或中英文结合,无标点等特殊字符,直接用 # 加上标题名称,例如:# 一概述 对应 [一、概述](#一概述)
  2. 特殊符号处理:

    • 若标题中包含中文符号如 ()等标点,则在链接中忽略这些标点,例如:# (1)微批处理 对应 [(1)微批处理](#1微批处理)
  3. 数字结构处理:

    • 对于标题中含有类似 1.1 这样的结构,可以在链接中忽略 .或者吧.-代替,例如:# 1.1 基本概念 对应 [1.1 基本概念](#11-基本概念)[1.1 基本概念](#1-1-基本概念)
  4. 空格处理:

    • 标题中的空格在链接中用 - 替代,例如:# 3.2 Kafka源 对应 [3.2 Kafka源](#32-kafka源)
  5. 保持一致性:

    • 所有链接都采用小写字母和连字符风格,确保在Markdown中保持一致的链接格式。

下面结合一个实例来看:

目录

  • 相关资料
    • 本文相关代码
  • 一、概述
    • 1.1 基本概念
    • 1.2 两种处理模型
      • (1)微批处理
      • (2)持续处理
    • 1.3 Structured Streaming和Spark SQL、Spark Streaming关系
  • 二、编写Structured Streaming程序的基本步骤
  • 三、输入源
    • 3.1 File源
      • (1)创建程序生成JSON格式的File源测试数据
      • (2)创建程序对数据进行统计
      • (3)测试运行程序
      • (4)处理警告
      • (5)总结分析
    • 3.2 Kafka源
      • (1)启动Kafka
      • (2)编写生产者(Producer)程序
      • (3)安装Python3的Kafka支持
      • (4)运行生产者程序
      • (5)编写并运行消费者(Consumer)程序
        • 方式一
        • 方式二
      • 总结
    • 3.3 Socket源
    • 3.4 Rate源

相关资料

相关资料内容

本文相关代码

本文相关代码内容

一、概述

概述内容

1.1 基本概念

基本概念内容

1.2 两种处理模型

两种处理模型内容

(1)微批处理

微批处理内容

(2)持续处理

持续处理内容

1.3 Structured Streaming和Spark SQL、Spark Streaming关系

Structured Streaming和Spark SQL、Spark Streaming关系内容

二、编写Structured Streaming程序的基本步骤

编写Structured Streaming程序的基本步骤内容

三、输入源

输入源内容

3.1 File源

File源内容

(1)创建程序生成JSON格式的File源测试数据

创建程序生成JSON格式的File源测试数据内容

(2)创建程序对数据进行统计

创建程序对数据进行统计内容

(3)测试运行程序

测试运行程序内容

(4)处理警告

处理警告内容

(5)总结分析

总结分析内容

3.2 Kafka源

Kafka源内容

(1)启动Kafka

启动Kafka内容

(2)编写生产者(Producer)程序

编写生产者(Producer)程序内容

(3)安装Python3的Kafka支持

安装Python3的Kafka支持内容

(4)运行生产者程序

运行生产者程序内容

(5)编写并运行消费者(Consumer)程序

编写并运行消费者(Consumer)程序内容

方式一

方式一内容

方式二

方式二内容

总结

总结内容

3.3 Socket源

Socket源内容

3.4 Rate源

Rate源内容


上述内容的markdown代码为:

# **目录**
- [相关资料](#相关资料)
  - [本文相关代码](#本文相关代码)
- [一、概述](#一概述)
  - [1.1 基本概念](#11-基本概念)
  - [1.2 两种处理模型](#12-两种处理模型)
    - [(1)微批处理](#1微批处理)
    - [(2)持续处理](#2持续处理)
  - [1.3 Structured Streaming和Spark SQL、Spark Streaming关系](#13-structured-streaming和spark-sqlspark-streaming关系)
- [二、编写Structured Streaming程序的基本步骤](#二编写structured-streaming程序的基本步骤)
- [三、输入源](#三输入源)
  - [3.1 File源](#31-file源)
    - [(1)创建程序生成JSON格式的File源测试数据](#1创建程序生成json格式的file源测试数据)
    - [(2)创建程序对数据进行统计](#2创建程序对数据进行统计)
    - [(3)测试运行程序](#3测试运行程序)
    - [(4)处理警告](#4处理警告)
    - [(5)总结分析](#5总结分析)
  - [3.2 Kafka源](#32-kafka源)
    - [(1)启动Kafka](#1启动kafka)
    - [(2)编写生产者(Producer)程序](#2编写生产者producer程序)
    - [(3)安装Python3的Kafka支持](#3安装python3的kafka支持)
    - [(4)运行生产者程序](#4运行生产者程序)
    - [(5)编写并运行消费者(Consumer)程序](#5编写并运行消费者consumer程序)
      - [方式一](#方式一)
      - [方式二](#方式二)
    - [总结](#总结)
  - [3.3 Socket源](#33-socket源)
  - [3.4 Rate源](#34-rate源)



# 相关资料
相关资料内容

# 本文相关代码
本文相关代码内容

# 一、概述
概述内容

## 1.1 基本概念
基本概念内容

## 1.2 两种处理模型
两种处理模型内容

### (1)微批处理
微批处理内容

### (2)持续处理
持续处理内容

## 1.3 Structured Streaming和Spark SQL、Spark Streaming关系
Structured Streaming和Spark SQL、Spark Streaming关系内容

# 二、编写Structured Streaming程序的基本步骤
编写Structured Streaming程序的基本步骤内容

# 三、输入源
输入源内容

## 3.1 File源
File源内容

### (1)创建程序生成JSON格式的File源测试数据
创建程序生成JSON格式的File源测试数据内容

### (2)创建程序对数据进行统计
创建程序对数据进行统计内容

### (3)测试运行程序
测试运行程序内容

### (4)处理警告
处理警告内容

### (5)总结分析
总结分析内容

## 3.2 Kafka源
Kafka源内容

### (1)启动Kafka
启动Kafka内容

### (2)编写生产者(Producer)程序
编写生产者(Producer)程序内容

### (3)安装Python3的Kafka支持
安装Python3的Kafka支持内容

### (4)运行生产者程序
运行生产者程序内容

### (5)编写并运行消费者(Consumer)程序
编写并运行消费者(Consumer)程序内容

#### 方式一
方式一内容

#### 方式二
方式二内容

### 总结
总结内容

## 3.3 Socket源
Socket源内容

## 3.4 Rate源
Rate源内容

🤡笔者发布文章后3分钟续写🤡
emm,笔者试了一下,笔者在编辑该文章时(即在编辑页面)是可以实现链接锚点跳转的,但不知为何,发布该文章后进入文章进行读取时无法实现通过手动编写的目录进行跳转,但是通过[TOC]生成的目录可以进行跳转。。。━━( ̄ー ̄*|||━━🤡👈🤣
笔者初步分析是因为笔者在写作时是在Markdown编辑器中进行的,所以使用markdown语法在编辑器中可以实现跳转功能,但是一旦发布后通过网页进行阅读并跳转时,网页是根据地址栏中的链接的参数进行定位的,故在阅读文章时能通过[TOC]生成的目录在浏览器中阅读时可以进行跳转,而不能通过使用手动编写的目录链接进行跳转。
如下:
点击[TOC]生成的目录进行跳转到1.1 基本概念时地址栏链接为https://www.cnblogs.com/wkkwk/p/18523776#tid-Wp58ZW

image

而使用手动编写的目录链接进行跳转到1.1 基本概念时地址栏链接为
https://www.cnblogs.com/wkkwk/p/18523776#11-基本概念
但是复制出来粘贴到记事本为
https://www.cnblogs.com/wkkwk/p/18523776#11-%E5%9F%BA%E6%9C%AC%E6%A6%82%E5%BF%B5
上述现象是由于URL编码造成的。在浏览器地址栏中,某些字符(例如中文字符和空格)会以可读的方式显示,而在实际的URL中,这些字符会被编码为特定的格式。(可以认为它俩是等价的)

image

写到这里,我突然有个想法,我将https://www.cnblogs.com/wkkwk/p/18523776#11-基本概念复制到新开的标签页的地址栏中,ai~,您猜怎么着,他跳转了到了对应标题处🤣🤣🤣,如下:

image

我心里顿时一万个cnm飘过,好在结果是好的,证明笔者写作的思路和内容是没有问题的🙆(❁´◡`❁)🙆

读者可以将文末代码块中的markdown代码复制到VSCode或Typora中进行测试!!!

surprise

笔者在此将家底双手奉上😎(❤️´艸`❤️),下列是一些有助于读者了解并熟练掌握Markdown语法与结构的网站分享:
Markdown教程|菜鸟教程
Markdown 基本语法
Markdown 基本语法 | Markdown 官方教程
README文件语法解读,即Github Flavored Markdown语法介绍
Markdown Emoji表情
同时也分享一个RGB颜色代码表🎨

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2235125.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

旧衣回收小程序:提高回收效率,扩大服务范围

近年来,旧衣回收作为一种新兴回收模式,逐渐走入了大众的生活中,在回收市场中形成了新的商业模式,也为大众带来了新的创业选择。 随着社会生活的快速发展,人们的生活水平不断提高,为旧衣市场发展提供了基础…

0-基于图的组合优化算法学习(NeurIPS 2017)(未完)

文章目录 Abstract1 Introduction2 图上的贪婪算法的通用表述3 表示:图嵌入3.1 Structure2Vec3.2 参数化 Q ^ ( h ( S ) , v ; Θ ) \widehat{Q}(h(S), v; \Theta) Q ​(h(S),v;Θ)4 Training: Q-learningAbstract 为NP-hard组合优化问题设计好的启发式或近似算法通常需要大…

python验证码滑块图像识别

文章目录 1、案例图片1、需求说明2、代码实现总结 1、案例图片 1、需求说明 python 3.10,写一个滑块验证码的自动化程序。需要一个opencv的函数,能准确的计算,在这同一张图片上,滑块形状和缺口形状的坐标位置及两个形状之间在X轴上的距离。请…

Spring AI 核心概念

SpringAI 核心概念 1. Models2. Prompts3. Prompt Templates4. Embeddings5. Tokens6. Structured Output7. Bringing Your Data & APIs to the AI Model7.1 Retrieval Augmented Generation7.2 Function Calling 1. Models AI 模型是用于处理和生成信息的算法&#xff0c…

从0开始学习Linux——文本编辑器

往期目录: 1、从0开始学习Linux——Linux简介&安装 2、从0开始学习Linux——搭建属于自己的Linux系统 我们通过前面教程的学习已经了解了什么是Linux,并且我们也定制安装了属于我们自己的一个Linux系统。从这个章节开始我们将开始学习如何去操作Linu…

外包干了三年,精神严重内耗。。。

前段时间我同事(做测试的一个妹子)跟我讲,感觉早上起来十分的疲惫,不想上班,问我们这是什么样的现象,其实有时候我也有这种感觉,虽然我卷,但我也是肉体凡胎啊!不是机器人…

华宇TAS应用中间件入围鲲鹏应用创新大赛2024全国总决赛

近日,鲲鹏应用创新大赛2024全国总决赛入围名单出炉。华宇TAS应用中间件经过区域赛、半决赛一路披荆斩棘,在众多优秀的解决方案中脱颖而出,成功入围全国总决赛。 这也表明华宇TAS应用中间件在方案创新性、技术领先性、商业前景、社会价值等方…

惊爆!内容创业新纪元:AI工作流助你打造自媒体帝国!

又是一个研究AI工作流的深夜。看着扣子商店里各种神奇的智能体,我不禁感叹技术的魔力。一个简单的工作流模板,居然能把过去需要一整天才能完成的工作,压缩到几分钟… 扣子模板 大家好,我是momo,一个专注教人使用AI工作流做自媒体的创业者。今天想和你分享一个能让内容创作效率…

史上最大应用层DDoS攻击 H2 Rapid Reset攻击研究

前言 2023年10月Cloudflare、Google、AWS等厂商公布了一种利用HTTP/2快速重置进行应用层DDoS攻击的0day漏洞(CVE-2023-44487)[1][2],即H2 Rapid Reset DDoS。Google宣传其监控到此种攻击峰值超过每秒3.98亿个请求,打破互联网历史最大应用层DDoS攻击记录…

饱和限幅器MATLAB和CODESYS平台下的实现

1、博途PLC限幅器(SCL代码) 博途PLC限幅器(SCL代码)-CSDN博客文章浏览阅读182次。本文详细介绍了博途PLC的限幅器功能,包括饱和限幅器的概念,并提供了完整的SCL编程代码示例,帮助读者理解和应用PLC限幅器。https://rxxw-control.blog.csdn.net/article/details/136029196 …

在 CSS 中,gap 是 布局容器(flex 或 grid)的属性。它用于设置容器内子元素之间的间距。

在 CSS 中,gap 是 布局容器(flex 或 grid)的属性。它用于设置容器内子元素之间的间距。以下是 gap 属性在不同布局中的应用: 1. 在 CSS Grid 布局中 gap 定义了网格行和列之间的间距。可以分别使用 row-gap 和 column-gap 设置行…

JavaWeb项目-----博客系统

一.设计数据库 1.创建数据库 create database if not exists java108_blog_system character set utf8; drop table if exists user; drop table if exists blog;2.创建博客列表 create table blog(blogId int primary key auto_increment,title varchar(20),content varcha…

一文读懂:AIOps 从自动化运维到智能化运维

今天跟大家聊一聊AIOps(人工智能运维) 为了应对企业面临着日益复杂的运营挑战,AIOps(人工智能运维)作为一种创新的方法应运而生,结合了人工智能和机器学习技术,来提升IT运营的效率和性能。 这…

从0开始学习Linux——文件目录

往期目录: 从0开始学习Linux——简介&安装 从0开始学习Linux——搭建属于自己的Linux虚拟机 从0开始学习Linux——文本编辑器 从0开始学习Linux——Yum工具 从0开始学习Linux——远程连接工具 上期教程我们学习了如何使用远程连接工具去连接Linux系统&#xff0…

C++入门基础知识140—【关于C++ 类构造函数 析构函数】

成长路上不孤单😊😊😊😊😊😊 【14后😊///C爱好者😊///持续分享所学😊///如有需要欢迎收藏转发///😊】 今日分享关于C 类构造函数 & 析构函数的相关内容…

MSC“名实之辩”:精准鉴定只为精准治疗

前 言 MSC是一群来源广泛、能够体外增殖分化的异质性细胞。MSC具有免疫调节、促进组织修复等作用,应用于多种疾病的治疗。由于科学进程、习惯等原因,MSC具有多种名称。自先秦以来,就有“名实之辩”,今日我们就讲一讲MSC的名称与…

零基础 Vue 入门:个人主页完整示例教程” “Vue 实战:构建简洁美观的个人主页界面” “从零开始使用 Vue 构建个人主页,包含详细代码解析”

效果图 博客教程:使用 Vue 构建简易个人主页界面 目录 前言项目结构和准备HTML 与 CSS 布局Vue 数据绑定和渲染功能实现总结 前言 本教程将带你逐步使用 Vue.js 创建一个简易的“个人主页”界面。通过学习该项目,你将掌握 Vue 的基本数据绑定、指令的…

(二)基于Bayes方法的道路分割

一、实验目的 1、实验目标 学习掌握Bayes定理(Bayes Theorem)的基本原理及推导过程,以及公式中的先验概率、条件概率、后验概率、相似度等概念。在MATLAB的概率分布函数基础上,通过编写程序,实现图像块内结果统计和序…

从新手到专家:7款电脑平面设计软件评测

平面设计在时尚、广告等多个领域扮演着重要角色,而创作出独特且富有创意的设计作品则需要依赖优秀的电脑平面设计软件。市场上的电脑平面设计软件众多,每款软件都有其独到之处。本文将为你推荐几款值得关注的电脑平面设计软件,并分析它们的特…

Django安装

在终端创建django项目 1.查看自己的python版本 输入对应自己本机python的版本,列如我的是3.11.8 先再全局安装django依赖包 2.在控制窗口输入安装命令: pip3.11 install django 看到Successflully 说明我们就安装成功了 python的Scripts文件用于存…