昨天突然发现,公司用的JIRA issue中,居然是用Textile做为标记语言。html
这也是一种轻量级标记语言,能力比流行的Markdown更强大,由于设计目的不一样。Markdown是为了写做而设计,而Textile是为了更快地写HTML。
可是在JIRA上却有诸多限制,也许是为了某种程度的简单,而删减掉了吧。git
第一个是中文,其它全是英文。程序员
上述语法介绍,在 JIRA 上并不是所有有效。spa
h1. 标题一插件
h2. 标题二设计
h3. 标题三
h4. 标题四
h5. 标题五
h6. 标题六
显示 | 输入 |
---|---|
黑体 | *黑体* |
斜体 | _斜体_ |
-删除线- |
|
下划线 | +下划线+ |
下标sub | 下标 ~sub~ |
上标sup | 上标 ^sup^ |
全部这些标记基本都要保证*
、-
这些字符不在一个英文单词或中文句子的中间,不然无效。能够在外面再加一层空格。
bq. 这是引用,不能换行。
这是引用,不能换行。
其实bq.
能用已经让我很诧异了,由于其它b
开头的标记都挂了。
Textile一般是用p.
来区分段落的,而在JIRA上禁用它后用的是换行符,所以bq.
只能做用与一行。
用两个!
包裹起来。
!/path/to/image! !https://camo.githubusercontent.com/313d034adacb3426c4347317ce9047c23161e6b2/68747470733a2f2f646c2e64726f70626f7875736572636f6e74656e742e636f6d2f752f3637333231342f74657874696c652d776f72646d61726b2d737065632e706e67!
不支持各类杂七杂八的Textile图片语法,例如:
!/path/to/image 10w 20h! !/path/to/image 20%x40%! !/path/to/image 20%! !/path/to/image (Alt text)! 这些通通不支持!
Textile是只能用*
,这里JIRA上能够用-
。
* 无序列表一 * 无序列表二 ** 无序列表缩进一次 *** 无序列表缩进二次 ** 无序列表缩进一次 * 无序列表三
无序列表一
无序列表二
无序列表缩进一次
无序列表缩进二次
无序列表缩进一次
无序列表三
有序列表不用标序。
# 有序列表一 # 有序列表二 ## 有序列表缩进一次 ### 有序列表缩进二次 ## 有序列表缩进一次 # 有序列表三
有序列表一
有序列表二
有序列表缩进一次
有序列表缩进二次
有序列表缩进一次
有序列表三
| First name | Family name | | Stephen | Hawking | | Steve | Jobs |
First name | Family name |
---|---|
Stephen | Hawking |
Steve | Jobs |
不支持各类杂七杂八的表格语法。
支持显式连接、邮箱,例如:
https://en.wikipedia.org/wiki/Textile_(markup_language) mail@company.com
直接可得:
https://en.wikipedia.org/wiki/Textile_(markup_language)
mail@company.com
不支持其它任何形式的隐式连接。
也支持 JIRA issue ID 号自动转换为连接。
基本上能够说不支持插入代码,由于不管是内联代码@inline@
、仍是代码块bc. code block
,都不支持。
可是利用穷举法,居然发现了一个相似代码块的东西。
以|monospace test|
或||bold monospace text||
,居然能够获得两种被线框起来的文字,前者是白底,后者是灰底。
而代码块,或者说一种相似代码块的东西,只能以|
的方式给出。|
必须在行首(也就是说不能伪装内联代码),后面能够空格,不能空行,必须跟着非空字符。最后收尾的|
能够去掉。大括号必须转义,空格缩进无效。
|#include <stdio.h> int main(void) \{ printf("Hello world!"); return 0; \}|
而若是用||
,结果更有喜感:
这不是Textile的语法。并且,这种效果简直不能忍!
看来给程序员进行软件项目管理的JIRA,不适合写代码块。
不支持脚注
不支持对齐
不支持缩进
不支持p.
不支持pre.或pre..
不支持特殊字符(c)
、(tm)
等。
不支持HTML插入
我通常不用Textile,因此没有研究过专门的编辑器。
在JIRA上,经过Firefox的Vimperator的Ctrl+i
,把编辑区转到Vim中编辑。
Plugin 'timcharper/textile.vim'
经过上述插件,能够实现语法高亮,比大多数Vim的Markdown插件好得多。
虽然也支持预览,可是很遗憾个人工做平台是Windows,没有配置Ruby环境。
我不知道为何JIRA用的是Textile这种标记语言,但整体来讲,它的一些语法细节仍是比流行的Markdown更合适作工做内容交流。好比多重列表,在不能输入TAB的网页编辑区内,它就很是合适。
若是没有被删减、或者至少保留Code的语法,就更好了。
若是说前面都是一些可能会在工做中用到的技术记录,那么后面就是感慨了。
我在这家公司,用这个系统已经有一年半了,历来没有人提起过、使用过其Textile功能!每个issue的页面,哪怕是会被自动导入每个新项目的CR,也都是纯文本的渣排版!
虽然Textile的确是一种难以“误触”的标记语言,没有哪一个特别的语法是和普通输入混淆的。自动超连接因为太常见,因此被忽略了。我若是没有发现其自动去除行首空字符、自动把我贴上去的一段Java块注释解析成列表,我也不会发现这里居然有一个标记语言!而后,经过三个试探出的已知语法,黑体、斜体、列表,去全部轻量级标记语言(Lightweight Markup Language)里,找到了惟一的匹配——Textile。
目前,彷佛在我之外都没有其它任何人发现、使用这个功能,让海量的issue可以摆脱纯文本的呈现方式,提升工做效率。除了文本内容之外,我最不能忍的是工做环境中的图片呈现。
不少issue内容,是以图片为第一内容的,好比界面上出现了一个显示问题。而如今全部的issue图片,都做为附件的方式附在上面,打开前要手动下载!另外还有一种图片,须要跳转到另外一个页面观看,但少有人用。除了由于上传时稍微麻烦些,更重要的是,这种查看体验和下载也没什么区别。
若是换成Textile的图片连接,显然能够大幅提升工做效率。
Textile,或者任何一种标记语言,对程序员来讲都不算什么高门槛,没人发现、没人使用,更重要的仍是一种技术的钝感。对新技术缺少渴望,对工做相关的事物全不在乎,对提升本身和同事的工做效率毫无兴趣。
而那些系统的维护者,对本身维护的JIRA系统不作任何推广。新开发的小功能一封邮件了事,JIRA自己就有的功能也绝不传播。我刚进公司、不知JIRA为什么物时,居然没有任何培训!直到如今,咱们的JIRA上仍然充斥着不知道JIRA为什么物的人,随意地改状态、写comment、骂战……
文案、issue的撰写者,依旧知足于在JIRA上用纯文本加上各类自定义格式来表达想法、不行就用doc文件在各个地方传来传去,对既有的或新兴的其它高效方式不闻不问。
在这样的环境中,一年的工做经验能够用十年。
我不得不考虑……