Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >简化 kramdown 列表嵌套内容缩进的 Vim 插件

简化 kramdown 列表嵌套内容缩进的 Vim 插件

作者头像
零式的天空
发布于 2022-03-28 05:35:01
发布于 2022-03-28 05:35:01
1.2K00
代码可运行
举报
文章被收录于专栏:零域Blog零域Blog
运行总次数:0
代码可运行

kramdown 的列表嵌套内容的缩进规则很「奇葩」,不是使用自然的 Tab 缩进。

问题

kramdown 的作者对列表嵌套内容的缩进规则的 描述 是:

kramdown does not allow 4 space indent, …… Indentation for list items is always calculated based on the first non-space character after the list item marker.

在年初 GitHub 宣布 GitHub Pages 服务将只支持 kramdown 这个 Markdown 解析引擎时,我曾经总结过从 Redcarpet 迁移到 kramdown 需要做的一些更改,将 GitHub Pages 从 Redcarpet 切换到 kramdown 里有说到,嵌套在列表项里的代码块,如果不按如上规则做缩进的话,将会解析不正常。

比如:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
1. list item one

    ```python
    print 'hello, world'

list item two

list item two

这当然不是我们想要的,我们应该如何写呢?

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
1. list item one

   ```python
   print 'hello, world'

list item two

list item two

看出来区别了吗?没错,这种情况下代码块必须缩进三个空格,因为除开列表记号后的第一个非空字符的缩进是三。

那么问题来了,有时候是有序列表,序号是个位数时需要缩进三个空格,序号是两位数时需要缩进四个空格,序号是三位数时(弄这么大的列表是闹哪样?)需要缩进五个空格……有时候是无序列表,只需要缩进两个空格。

当然这是最简单的一级嵌套的情况,如果是多级列表嵌套,那情况就更复杂了,每一次都去手打空格缩进吗?作为一名 Vimer,当然 say no!

所以为此我做了一个简单的小 Vim 插件专门用于解决此问题。

下载地址

使用方法

安装完此插件后,在你需要对列表嵌套内容进行缩进时,不用掰着手指头去数要打多少个空格了,只用按 LeaderTab 就好了。

安装方法

推荐使用 Vundle 来管理你的 Vim 插件,这样你就可以简单三步完成安装:

在你的 vimrc 文件中添加如下内容:

:so $MYVIMRC

:PluginInstall

屏幕截图

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-03-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
封装Unity的网络请求中常用功能
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
bering
2019/12/03
1.6K0
【100个 Unity实用技能】| Unity读取本地文件(Json,txt等)的三种方法示例
在Unity中经常会用到读取本地文件的方法,所以本篇文章写了两种简单的方法做示例来看一下,如果有更方便的方法也希望看到本文的小伙伴在评论区补充一下哦!
呆呆敲代码的小Y
2022/09/28
3.3K0
【100个 Unity实用技能】| Unity读取本地文件(Json,txt等)的三种方法示例
Unity 接入高德天气接口API
接入接口前首先申请应用密钥Key,登录高德开发者开放平台,创建应用,获取密钥。
CoderZ
2022/08/29
2.2K0
Unity 接入高德天气接口API
获取天气信息以及地方位置(Unity3D)
前段时间有小伙伴问到如何用Unity制作天气预报,博主也是在网上找了很多资料,发现天气API接口稳定的确实没有,除非是天气官方提供的, 但是我观察了下,要是合作伙伴才有开放的可能。
恬静的小魔龙
2022/08/07
1.4K0
获取天气信息以及地方位置(Unity3D)
u3d www json http
立羽
2023/08/24
1780
未来已来——如何在VR游戏中实现3D语音
我们实际使用GME SDK完成相关的开发,一起来看下代码是如何运行的。本篇是基于Google开源的CardBoard SDK进行的示例程序。
shusen
2020/09/23
2.1K0
未来已来——如何在VR游戏中实现3D语音
Unity3D--网络(三)服务器返回的数据解析
使用Unity做游戏开发,包括以后的VR游戏等联网功能是必不可少的,所以跟服务器打交道也就必不可少。其实在其他语言开发环境中也需要与服务器打交道,而所使用的数据格式都是一样的。所以说,我们可以不会搭建服务器的业务逻辑,但是服务器返回给客户端的数据,是我们必须要会的。
孙寅
2020/06/02
1.4K0
Coroutine,你究竟干了什么?
  使用Unity已经有一段时间了,对于Component、GameObject之类的概念也算是有所了解,而脚本方面从一开始就选定了C#,目前来看还是挺明智的:Boo太小众,而且支持有限;JS(或着说UnityScript)的话稍稍自由散漫了些,不太符合我们这些略显严谨的程序猿;相比之下,C#各方面都十分沁人心腑,使用起来还是相当舒畅的 :)
用户2615200
2018/08/02
1.1K0
Coroutine,你究竟干了什么?
Unity中使用WWW封装下载类管理代码片段
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
bering
2019/12/03
6060
Unity基础(15)-Application与SceneManager类
StreamingAssets在各个平台上的文本支持读取方式 string path = System.IO.Path.Combine(Application.streamingAssetsPath,"version.txt");
孙寅
2020/06/02
1.5K0
unity3d:http www get传输中文与空格
立羽
2023/08/24
2310
unity3d:http www get传输中文与空格
Unity应用架构设计(11)——一个网络层的构建
对于客户端应用程序,免不了和远程服务打交道。设计一个良好的『服务层』能帮我们规范和分离业务代码,提高生产效率。服务层最核心的模块一定是怎样发送请求,虽然Mono提供了很多C#网络请求类,诸如WebClient,HttpWebRequest,但考虑到跨平台,这些类不一定适用。不过不用担心,Unity 5.x提供了新的与网络相关类UnityWebRequest用来替代原先的WWW,这是官方推荐的,也是最佳选择。 使用Token进行身份验证 首先我们必须要考虑的是,怎样和Web服务安全的通信。没错,肯定是身份验
用户1161731
2018/03/28
1.5K0
Unity应用架构设计(11)——一个网络层的构建
Unity3D网络通讯(六)-- UnityWebRequest实现WebService通讯
前面几篇文章把主要的网络通讯方式都已经讲完了,今天是这个系列的最后一讲,关于WebService的通讯,主要是现在这个也不是主流,但是像如果对数据交互的老系统中用过WebSerive的,我们还是简单讲一下。
Vaccae
2020/09/27
1.8K0
Unity3D网络通讯(六)-- UnityWebRequest实现WebService通讯
Unity3D网络通讯(二)--UnityWebRequest及JsonUtility请求Http Restful
上一篇《Unity3D网络通讯(一)--Asp.Net Core WebApi创建发布注意事项》已经把Asp.Net Core的WebApi搭建出来了,今天这篇就来看一下Unity3D使用UnityWebRequest和JsonUnity实现Api接口的通讯。
Vaccae
2020/09/10
2.1K0
UnityWebRequest教程☀️2021,你还在使用过时的 www API吗?
UnityWebRequest数据传输,除了一般我们用的最多的Post、Get,其实还有Put、Head
星河造梦坊官方
2024/08/15
1620
UnityWebRequest教程☀️2021,你还在使用过时的 www API吗?
Unity 数据读取|(二)多种方式读取文本文件
游戏开发小Y
2024/01/18
1.3K0
Unity 接入高德开放API - IP定位
Http接口,根据输入的IP地址,快速定位IP所在位置,仅支持IPV4,不支持国外IP解析。
CoderZ
2022/08/29
1.3K0
Unity 接入高德开放API - IP定位
Unity & 微信公众号 - 实现扫码关注登录
功能需求:登录时呈现公众号二维码,用户扫描二维码后,点击关注,事件响应给程序,实现登录,若已经关注,自动进入会话,事件同样响应给程序,实现登录。
CoderZ
2022/08/29
2.8K0
Unity & 微信公众号 - 实现扫码关注登录
Unity3D网络通讯(三)-- HttpRestful请求的简单封装
上一篇《Unity3D网络通讯(二)--UnityWebRequest及JsonUtility请求Http Restful》已经实现了Unit3d使用UnityWebRequest与后台WebApi的Get和Post的通信,如果在正式做项目中,我们就不能按Demo的那样写法来调用了,所以这一篇针对UnityWebRequest做一个简单的封装。
Vaccae
2020/09/11
3.1K0
Unity3D网络通讯(三)-- HttpRestful请求的简单封装
Unity网络交互☀️Unity Web弱联网的实现
该脚本为PHP脚本,用于将从Unity获得的数据传到数据库存储起来。默认已经设置好PHP运行环境
星河造梦坊官方
2024/08/15
2120
Unity网络交互☀️Unity Web弱联网的实现
推荐阅读
相关推荐
封装Unity的网络请求中常用功能
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验