流水账〔廿九〕

还是头疼,继续扯淡。先从前一篇「门纲目科属种」这六个字说起。这种叙述方式属于「艺术夸张」或「新闻加工」,当年码字巨侠原话不是这样的。纠结细节没啥意义,这里只用了「六个字」而不是四个或八个,也是有着深刻的技术内涵。因为HTML标准之下的标题,只有六层,从「h1」到「h6」共六个标签。

所以,惦记着在网上发表的内容,总是会以这样或那样的方式紧密团结在以W3C为核心的互联网标准周围。而别出心裁的举动,通常代表着政治和意识形态斗争新动向。

比如「第一次浏览器大战」,以微软在操作系统内绑定那「歪瓜裂枣般令互联网企业前端码农养成坚持每天以包括但不限于娘希匹妈卖批冚家铲在内的汉语方言常用词组问候随机用户的传统风俗习惯」的IE大胜网景告终。而「第二次浏览器大战」,以谷歌叫嚣「标准」扶持FireFox挤压IE然后翻脸抛弃之,再推出自家Chrome抢占市场份额,并自抽耳光的违反标准使用包括但不限于「-webkit-」等专用标签,打垮一向坚持标准的Opera为高潮。

回到网络内容,这一两天继续上网乱搜以弥补代沟,发现了已经比较流行的『Markdown』轻量级排版语言,其实就是个简单的与HTML标签互译的设计。细节各位可以自己搜索,当前中文互联网上对其提供的支持的各种博客架构与站点也很充沛,语法简单使用也不麻烦,只不过「源码」还是纯文本格式,如LaTeX那样实现效果需要「预览」而不是「所见即所得」编辑。

那么更新之后的构思,就是准备以「Markdown」实现方式为基础,设计或抄袭借鉴参考一套开放的「流文档」格式。因为「Markdown」已经完美的成型了,最后一次更新是十三年前。这不奇怪,除非HTML标准有重大改变,否则不需要别出心裁。

不过呢,第三方扩展也有,如增加「脚注」功能。实话实说,这个扩展还是有必要的,毕竟正文当中出现太多大段文字以超链接形式显示,确实有碍观瞻。而再进一步的扩展,比方说有用户需要「文献引用」(一看就是论文写多了)功能,就没有必要。如果是论文专业户,有得是功能更强大效果更出色的专业解决方案,包括但不限于WordLaTeX等商用或自由软件,没必要硬把「轻量级」填成不伦不类的「次重量级」。

然后需要的扩展,就是「公式编辑器」。商用软件当中,微软的Office早期直接使用「MathType」的商用方案,每次插入公式都能看见「这八个字母」出现,后来似乎不再显示其商标了,或是买了授权或是自己搞了一套。而苹果的情况不太清楚,Pages出现之前就不再用苹果了,上网搜索发现似乎直到现在也仍然依赖「MathType」而没有内置。

在开源和免费方案这边,如果是在线使用,有「MathJax」这个出色的解决方案,使用LaTeX语法的一个子集,集中精力于公式显示而去掉了其它排版部分。如果是本地编辑,还没找到对应的开源方案,但是从既存各种开源代码中弄一套也不困难。总之,面向被贫穷限制想像力的普通网友而推出的免费软件,开发成本也并不高昂。

再然后,就是「其它公式」的编辑与显示,比方说「化学」分子式和公式。有这个需求的普通网友不算多,不过LaTeX可以提供扩展包,圈内众所周知,而商用软件如Word就没有。从这个角度看,即便是散兵游勇作坊式的小股费拉流寇,面对微软等武德充沛兲命昭昭跨国大鳄财团,也并非没有一战之力只能按照九省通衢灌水机所宣传的那样「识大体顾大局懂政治讲规矩守纪律」纳头便拜将财帛妻女拱手献上企图混个从龙之功。

插一句,苹果自己的「iWork」从雄心壮志开始到无声无息结束,除了实在是没有能力与精力和微软经营许久的办公软件阵地对抗之外,恐怕还有点其它原因。比方说,微软的Office系列除了套装里面提供的那些之外,还有VisioProject等比套装还贵的专业软件。而苹果阵营这边,与之对应的,则是第三方「OmniGroup」提供的软件。不过呢,这个雪中送炭的「OmniGroup」偏偏扎根西雅图,与微软总部距离甚为接近。如果按照数学渣的职业习惯揣测,即便没有商业上的关系,也得有几代「世交」等私人关系,属于「走苹果的路,让苹果无路可走」战略之典型运用。

上面是从「文件格式」出发,以「后端」视角构思的过程,接下来轮到「前端」视角了。在开源和免费解决方案当中,提供「所见即所得」编辑功能的软件,比较流行的就是「LyX」和「TeXmacs」两个,都有广泛的用户群,并且提供了完整的LaTeX功能支持,其中就包括「文献引用」管理在内。

其中「LyX」主页有日语页面,按照经验判断,能支持日语的软件一定可以支持中文。而「TeXmacs」的中文支持似乎有点问题(网上看见的),但是其设计可以作为一堆软件的前端,其中就包括SageMath在内。这两套软件的文件格式都是自定义的,不是TeX规范,其设计也可供参考。

注意,这不是在暗示有志于别出心裁的业内企图推出「魔改版」以满足什么美好需求,这两套开源解决方案都是「重量级」的,都有专门的用途,都有各自的路线图和发展方向,没必要也不应该掺和进去。

那么为什么提到它们,还是因为弥补代沟之后更新计划的缘故。前面提到了,贫穷的我及人之幼,对《托马斯微积分》只提供MathematicaMaple课件深表遗憾,准备用SageMath改写一版供费拉不堪的穷学生使用。所以,正如不知道SageMath存在的时候企图用Maxima山寨Mathematica那幼稚构思一样,现在已知TeXmacs现状,相关构思同样需要更新。

就是说,有没有可能用「TeXmacs」写课件呢?这个疑问暂且保留,目前时间和精力都不足以支撑开工。如果其它有志之士于我心有戚戚焉,可以向着这个方向努力,但一定要记住开源至少是免费的根本原则。

到这里只考虑了「有部分学术内容需求」的功能,而对于「有情节的内容」(或曰「小说」「剧本」)之需求还考虑不够,正如本话题「缘起」时到处「泼冷水」那样站着说话不腰疼。

这也好办,前一篇提到的「写手咖啡」就是榜样,提供了包括但不限于「故事线」在内的功能,这才是「职业作家」的思维方式。虽然十几年来一直没再用过,但是各位读者从我的《设定集》的注释当中,也能看到这种思维方式对于构思作品所起到的作用。

就是说,立志当钦定文豪的码字巨侠们,除了「膝盖生根头顶绿得发黑贱到骨子里去了」之外,还得在百忙之中抽出宝贵的时间钻研业务吖,最起码也得去「写手咖啡」主页看看「Features」和「Screenshots」吧,看看真正的有「商业价值」的「大纲」应该是什么样的,可不是市面上销售的或赞助商指定的「第一章开挂→第二章升级→第三章装哔→第四章打脸」这种哟。

而「故事线」等功能存储需要的文件格式,肯定不那么简单。这也好办,因为当代主流办公文档格式都是zip包,里面xml文件要多少有多少,用得着的规格单开一份就可以了也。这都是细节,在构思阶段只需要稍微深入一点,没有必要消耗太多时间。

再然后开始反思前一篇提到的各种实现方式。开发工具无所谓,只要承担得起成本即可,即便是微软那一套,哪怕不开源,成品免费也可以。若是惦记着跨国大鳄路径依赖,商用软件兲命昭昭,那么要记住豪门贵种走兽派豢养的奴才畜牲极大充沛,总能塞到各种犄角旮旯里面去,用不着我等费拉不堪的贱种屁民操心。

顺便再扯一点脚本相关话题。前面提到了,开源办公软件当中,提供了OpenBasicPythonJavaScript™等几种脚本。而似乎微软计划在新时代Office当中引入TypeScriptJavaScript™的一个严格超集)取代老掉牙的Basic,并且TypeScript本身还是开源并且已经成为ECMAISO标准。于是有志之士可以考虑把精力集中在JavaScript™相关领域,与此同时还要出于SageMath的需求注意Python的可能应用。

不过呢,同样是数学渣的职业习惯,总是同时考虑多种替代方案。其中一种与「学术」关系比较密切的,是Lua,比Python还密切。因为TeX用户众所周知,LuaTeX是pdfTeX的后继,已经进入官方发布了。

稍微展开一点,其实业内也都知道,PDF可以视为PostScript的编译结果。而PostScript本来就是设计用于打印机芯片的简易脚本,其语法还是照顾机器而无人性的「操作符后置」的逆波兰表达式。所以,在信息技术突飞猛击几十年之后的当代,换成Lua其实顺理成章。

因此,到了实现阶段,就可以同时准备JavaScript™Lua两套方案互为备胎,都是公开的免费的甚至开源的,成本趋向于零。要擦亮眼睛准备斗争,根据豪门贵种走兽派多方下注左右逢源的风向,为避免多方围堵两面夹攻钦定死路一条的悲惨下场,随时切换可也。

算上今天,整整扯淡了两篇。其实就是以一个老迈年高的「精神病仆街写手不入流码农数学渣」的身份,传授了一点构思经验而已。惭愧吖,只干了这么一点微小的工作,各位看看就行,不用谢。


2018.1.7, Solis