2025-06-02 00:37:00
中国传统文化中的「慎独」理念可谓融贯三教,深远而恒久。此词源于《中庸》,强调即使在独处无人、缺乏外在监督的情况下,仍要谨慎自持,不做任何有违道德的事情:
莫见乎隐,莫显乎微,故君子慎其独也。
若究其深意,正如《大学》所阐述:
所谓诚其意者:毋自欺也,如恶恶臭,如好好色,此之谓自谦,故君子必慎其独也!
在葡萄牙的传统文化中,也存在着相似的理念,被称为 "autocontrole" —— 即以健康的方式处理思想、感情和情绪,从而应对问题或意外情况的能力。这一理念深深植根于天主教传统之中,被视为一种重要的生活智慧。
除了 "autocontrole" 之外,葡萄牙文化还孕育了一个独特而深刻的概念 —— "Saudade"。这个词汇承载着「通常由某物或某人的距离或缺席所引发的,一系列复杂的感情」。它体现了葡萄牙人深层的内在情感反思传统,是一种对失去或远离事物的深切怀念,同时交织着希望与忧郁的复杂情感。这种独特的情感文化源于葡萄牙悠久的海洋传统。
在「大发现时代」,勇敢的水手们远航探索未知海域,与家人往往要分离数年甚至永远无法重逢。正因如此,葡萄牙本土音乐 Fado(法朵),成为表达 Saudade 最生动、最真挚的方式。那忧郁深沉的旋律、令人难忘的嗓音和充满诗意的歌词,经常触及爱情、失去和渴望等永恒主题,诉说着人类内心最深处的情感。
本文初稿在 Tana 上完成,这是一款通过将 AI 驱动的结构化数据库与流畅的大纲列表相结合的笔记软件,重新定义了现代知识管理,使用户能够无缝地组织相互关联的想法,同时保持自由形式思考的灵活性。
2025-05-13 05:18:00
今天看到了这样一个有趣的网站,理查德·西尔斯(Richard Sears),一个美国人,他花了 20 多年的时间整理了数万个甲骨文、金文和篆字的字形变体(包括 31000 多个甲骨文拓片、24000 多个金文铭文和 49000 多个篆书字形),并制作成了一个叫做字源的网站。打开网站之后,只需要输入一个汉字,点击一个按钮就能看到这个汉字在甲骨文,金文,篆体中的样子。
于是我想到了之前写过的一则笔记——「为什么汉字起源于象形而非拼音」。
汉字作为世界上最古老的仍在使用的文字系统之一,从其诞生之初就采用了以象形和表意为基础的系统,而非纯粹的拼音系统。这一特性的形成有着深刻的历史和语言学根源。
汉字在其起源时就是以图形和符号为基础,而非直接记录语音的拼音文本,其历史可追溯至远古时期。汉字最初可能源于原始图画,传说中虽有黄帝史官仓颉根据自然物体形状创造的故事,但现代学者普遍认为汉字系统是由古代先民在长期社会实践中集体智慧逐步形成的,而非一人一时所创。考古发现表明,最早的汉字雏形可能追溯至约 4800 年前的大汶口文化晚期陶器刻画符号等史前刻符,并在商朝(约公元前 1300 年开始)的甲骨文时期发展成为成熟的文字系统。这些早期文字主要通过直观的图像和符号来记录事物与概念,体现了典型的象形与表意特性。
汉字的构成方法,后人总结为「六书」原则:象形、指事、会意、形声、转注、假借。这些方法展现了汉字构造的多元性:
尽管包含了表音成分,但这种构造方式记录的是语素(有意义的音节)而非纯粹的语音流,与完全基于发音的拼音文字系统有着本质区别。例如,「臭」字在古代由表示鼻子的「自」和「犬」组合而成(会意),因为古人观察到狗的嗅觉灵敏,以此表达「气味」乃至后来的「难闻气味」之意。
汉语(尤其是其核心语素)具有显著的单音节特性,即一个字通常对应一个有意义的音节,这导致了语言中存在大量的同音字(或同音语素)。以现代标准汉语(普通话)为例,尽管有声母、韵母和声调的变化,但实际有效的带声调音节总数大约也只有 1200 到 1300 种左右。然而,汉字的数量却极为庞大,例如清代的《康熙字典》就收录了约四万七千个汉字,而现代大型汉语字典收录的汉字数量更多。
这种音节数量远少于文字数量的现象,必然导致大量同音字的存在。例如,发音为 "shì"(去声)的字,就有「是、事、市、世、视、适、士、势、试、释」等等,如果算上所有读作 "shi" 的音(包括四个声调),对应的汉字数量更为可观。若仅仅使用拼音(即使包含声调)来书写,将在很多情况下无法有效区分意义。
语言学家赵元任先生创作的《施氏食狮史》便是一个极端的例子:
石室诗士施氏,嗜狮,誓食十狮。施氏时时适市视狮。十时,适十狮适市。是时,适施氏适市。施氏视是十狮,恃矢势,使是十狮逝世。氏拾是十狮尸,适石室。石室湿,氏使侍拭石室。石室拭,氏始试食是十狮尸。食时,始识是十狮尸,实十石狮尸。试释是事。
全文九十余字皆读作 "shi" 的不同声调,仅凭拼音朗读几乎无法理解,但书写出来的汉字却文意清晰,生动地展示了汉字在区分同音语素上的优势。
虽然汉字的形体经历了漫长的演变,从甲骨文、金文到大篆、小篆,再到隶书、楷书等,字形发生了显著变化,但其作为语素文字(记录意义与声音相结合的语素)的核心特性始终保持了高度的连续性。这种连续性使得现代人通过专门学习,依然能够追溯部分现代汉字与数千年前殷商时期甲骨文的明确联系,一些高度象形的简单文字(如「日」、「月」、「山」、「水」等)的演变轨迹甚至能被普通人辨认出来,这体现了中华文明某种程度上未曾中断的特点,是许多其他古老文明的后继者难以企及的。
综上所述,汉字采用以形表意(或形音结合)的语素文字系统而非纯粹的拼音系统,是深深植根于汉语自身特点(尤其是同音语素繁多)的必然结果。这种系统能够:
这也解释了为何在历史上乃至现代,将汉语完全改造为拼音文字系统的各种尝试,虽然在注音、教学、信息处理等领域取得了重要应用,但最终都未能取代汉字本身——汉字系统的独特性质与文化承载决定了它难以被纯粹的拼音系统所完全替代。
清末民初,面对西方文化的冲击,在救亡图存的时代背景下,以鲁迅、瞿秋白等为代表的一批知识分子曾竭力主张汉字拼音化(罗马字母化),并认为汉字是文化落后的象征,是阻碍中国现代化的绊脚石。鲁迅甚至断言:「汉字不灭,中国必亡」。
虽说站在当今的视角去看待他们的观点,能够理解为矫枉必须过正。但这些主张中所反映出的「左派」的狂热,到底有多少不是被煽动的呢?「一声炮响」到底送来了些什么杂碎,自不必多言。
好在汉字不仅是一种书写工具,还是中华文明传承的载体。最终扛过了不堪回首的混乱年代,历久而弥新。
本文初稿在 Tana 上完成,这是一款通过将 AI 驱动的结构化数据库与流畅的大纲列表相结合的笔记软件,重新定义了现代知识管理,使用户能够无缝地组织相互关联的想法,同时保持自由形式思考的灵活性。
2025-04-25 18:57:00
1974 年,那是一个春天,有一群士兵将鲜红的康乃馨插在枪口上。一场几乎不流血的革命,就此改变了一个国家的命运。这是属于葡萄牙的「春天的故事」。
十九世纪末,欧洲列强争相瓜分非洲大陆,葡萄牙虽国力衰退,却仍死死攥住安哥拉、莫桑比克等非洲殖民地。进入二十世纪后,葡萄牙政局动荡,1910 年共和革命后仍未稳定,1926 年军方再度政变夺权,安东尼奥·萨拉查这位经济学教授逐步崛起。他建立了「新国家」(Estado Novo)威权体制,将葡萄牙变为欧洲大陆威权统治的顽固堡垒,尽管整个国家表明和平静谧,内里却是暗流汹涌。
「新国家」号称致力经济繁荣民族强盛,实则专制极权、愚民统治。秘密警察成了悬在人们头上的「达摩克利斯之剑」,学者、记者缄默不言,教师、学生人人自危,言论和思想自由只存在于临睡前的呢喃或梦呓。
更使生活雪上加霜的是自 1961 年始,葡萄牙为控制非洲殖民地展开了一场毫无前景的远方战争。无数青年葬送异乡沙场,或干脆逃往法国、美国避难。人们越来越质疑,一场毫无意义的殖民战争,如何值得年轻人用生命去耗费?
1968 年 9 月,萨拉查在其夏季住所遭遇了一场严重意外——他坐的藤椅突然断裂,导致他重重摔倒在混凝土地面上,造成颅内出血。当时所有人,包括医生在内,都认为这位 79 岁的独裁者活不过秋天。时任葡萄牙总统阿梅里科·托马斯迅速任命马塞洛·卡埃塔诺为新总理。
然而,出人意料的是,萨拉查的病情有所好转。此时,他的亲信和新政府官员在两难中做出决定——这位前独裁者隐瞒真相。为了维持这一骗局,他们专门为萨拉查定制假报纸,伪造政府文件和会议记录,甚至安排忠实的前部长们定期「向他汇报工作」。萨拉查在完全不知情的情况下,继续「统治」着国家,直到 1970 年去世,始终以为自己仍然掌控着政权。
这一幕与袁世凯称帝前的情形颇为相似。袁世凯在窥视帝位时,同样被周围的人蓄意误导,被告知全国各地民众都热切盼望他登基为帝。他的儿子和幕僚们伪造报纸、假托民意,制造了一出出假象,让他相信称帝是天下归心。然而,一旦袁世凯真的称帝,却立即引发全国反对浪潮,最终不得不宣布取消帝制,黯然离世。
而卡埃塔诺接任总理后,确实试图进行有限改革,但为时已晚,殖民战争仍在继续,国内矛盾日益尖锐。他既不能完全延续萨拉查的强硬路线,又不敢彻底改革,结果是内外交困,最终引发了军方的不满。
普通民众在心灰意冷,军队中的不满情绪也在滋生。年轻军官们,许多曾在非洲殖民地服役,亲眼目睹了战争的残酷与无谓。他们秘密组建了「武装部队运动」(MFA),计划推翻独裁政权。其中,一位名叫奥特洛·萨拉瓦的上校扮演了关键角色,成为军队内部民主力量的核心人物。
1974 年 3 月,MFA 成员出版了一本名为《葡萄牙与未来》的书,公开批评政府政策。政府随即解除了参与此书的将军职务,却不料这一举动反而加速了革命进程,终于在 4 月 25 日,破晓而至。
那天,里斯本的清晨格外宁静。广播里,一首被禁的民谣《格兰多拉,维拉·莫雷纳》(Grândola, Vila Morena)轻声响起。对普通听众来说,这只是一首优美的歌曲;但对军中的变革者而言,这是约定好的行动信号——革命,正式开始。
军人们迅速行动,坦克开上街头,战略要地被一一占领。然而,令人惊奇的是,这并不是一场普通的军事政变。街头没有枪声,没有爆炸,没有流血冲突。相反,士兵们得到了民众的热烈欢迎。
此时,里斯本的花市正好在售卖康乃馨。一位花店的女孩,大胆地将一朵红色康乃馨插在了士兵的枪管上。这一举动如涟漪般扩散,很快,无数民众走上街头,将红色的康乃馨送给士兵,士兵则将花朵插在枪管上——枪口不再喷吐火焰,而是绽放鲜花。
就这样,一场本可能血腥的军事行动,因为人民的支持与军人的克制,成为了历史上少有的几乎不流血的革命。一个维持了 48 年的独裁政权,在不到 24 小时内被和平推翻。卡埃塔诺总理被捕,随后流亡巴西。一个由军人和文职人员组成的「国家救济委员会」接管了政权,承诺举行自由选举,建立真正的民主政体。
革命之后,葡萄牙迎来了翻天覆地的变化。葡萄牙国民首次拥有真正的普选权,言论自由得到了保障,新闻出版禁令被废除,结束了在非洲的殖民战争……然而,革命后的道路并非一帆风顺。在随后的两年间,葡萄牙经历了六个临时政府,政局动荡。左翼激进派与温和改革派之间的斗争日益激烈。1975 年,葡萄牙几乎陷入内战。所幸的是,最终温和派占据上风,确立了民主改革的方向。
1976 年举行的首次自由选举中,温和的社会党获胜,马里奥·苏亚雷斯成为民主葡萄牙的首位民选总理。国家也通过新宪法,确立民主共和制度。与此同时,葡萄牙结束了对非洲殖民地的统治,让这个昔日的海洋帝国得以将精力转向国内建设和融入欧洲共同体。
康乃馨革命为何意义非凡?因为它透过美丽的象征向全人类传递了一种极为罕见而宝贵的讯息:民主真正值得追求,正是因为它体现了对人权和自由的关怀,以及人类尊严的珍重。民主保障的不仅是选举权利,更是保障每个人能够自由表达其思想、不因言获罪、不因权力的随心所欲而受凌辱的尊严生活。
若无自由与民主,人们即使可以衣食无忧,却仍活在一种精神上的贫乏、恐惧与焦虑的环境中;而民主的制度建设,也需要一代又一代有觉悟、有勇气且愿意积极捍卫这些价值的人们努力才可巩固。
让我们把目光从亚欧大陆的最西端转向最东端。
半岛上的韩国,自光州民主化运动发轫,最终在 1987 年实现了宪政改革。然而,韩式民主似乎被某种「魔咒」所困扰——前总统或自杀,或入狱,青瓦台的光环下掩盖着难以摆脱的政治悲剧,民主的花朵在寒风中摇曳不定。
至于那「弹丸之地」的台湾,虽然有着「野百合学运」、「美丽岛事件」等社会运动,虽然有着政治精英的改革决策,虽然从 1987 年解除戒严,到党禁报禁的解除,再到首次全民普选和政党轮替,经历了一场相对和平的民主化进程——却仍难逃各种冠以「民主」之名的闹剧。
而 1989 年的广场上,莘莘学子和民众高举民主、自由、反腐败的旗帜,期望国家能够深化民主宪政。这场声势浩大的运动,按照后来的叙事,促成了更加深化的市场经济体制改革,也最终走向了高质量的全过程人民民主,不仅成为独树一帜的标杆,也为全球民主的发展、提升指明了方向。多么美妙的叙事!
Valeu a pena? Tudo vale a pena. Se a alma não é pequena.
Fernando Pessoa
葡萄牙诗人费尔南多·佩索阿说过:「一切都值得做,如果灵魂不渺小。」民主这场事业,从来都需要无数勇敢者代代相传,因为专制的诱惑从未消退过,而尊严和自由之花又是如此柔弱脆嫩,需要每一代人的悉心呵护。
从 1976 年以来,每年 4 月 25 日,葡萄牙都会庆祝「自由日」,纪念那一天花瓣轻巧的重量如何终结了坚硬的枪炮统治。肩抗自由大旗的人,必然懂得民主绝非轻易得手。康乃馨不只是往事的回忆,更是对专制永远保持警惕的号角。
期许在其他尚在黑夜挣扎的国度里,人们能够记起这一朵小花——枪炮最终都要为生命与民主服务;再黑暗的专制也无法永葆统治,因为追求自由的灵魂从未熄灭过希望之光。
愿长记此花的寓意,共勉之。
本文初稿在 Tana 上完成,这是一款通过将 AI 驱动的结构化数据库与流畅的大纲列表相结合的笔记软件,重新定义了现代知识管理,使用户能够无缝地组织相互关联的想法,同时保持自由形式思考的灵活性。
2025-04-21 05:13:00
好久沒有寫過詩了。這首《春別》是我到里斯本後寫的第一首,合平水韻八庚律。
燕子來時春料峭,梨花帶雨曉風輕。
七丘遠黛接天碧,特茹連波映日明。
往事如煙隨歲去,離人似夢惜光情。
紅箋小字敘離別,一紙相思寄遠端。
這些年,陸陸續續寫過一些古體詩,有一些已經遺失,有一些並不合韻,只能算姑且上口。
本文初稿在 Tana 上完成,這是一款通過將 AI 驅動的結構化資料庫與流暢的大綱列表相結合的筆記軟體,重新定義了現代知識管理,使使用者能夠無縫地組織相互關聯的想法,同時保持自由形式思考的靈活性。
2025-04-20 16:37:00
二零一三年四月廿日晨六時廿六分,淨慧長老於四祖寺安詳示寂,享壽八十有一,僧臘六十七,戒臘六十三。
去歲,本老示寂,長老便暗囑備龕。春,因肺疾入院。
四月十八日,長老與門人黃明堯居士通話,問曰:「後日何日?」答:「穀雨。」長老應之曰:「吾明日當出院歸寺。」
十九日薄暮,歸寺後,長老喜曰:「歸來甚好。」次晨,長老起如廁,返臥室坐床沿,謂侍者:「吾將去矣。」侍者惶曰:「師父切勿出此言。」長老默然。
須臾,侍者見神色異,急召寺中執事速來。長老已作吉祥臥。執事至,長老氣促,遂清誦一句「阿彌陀佛」,氣息漸弱。約一刻之後,氣息止焉。醫者聞訊而至,見長老心脈血壓皆已絕矣。
時值穀雨,遂成永念。
長老一生,如流水行雲,八十餘載,當擔則擔,當舍則舍,末後一著,盡顯禪者本色。
年初,長老做自讚四聯:
早歲參禪悅,截流識此心;雲門蒙授記,趙州作主人。
生活禪風立,修行不擇根;把握在當下,電光石火頃。
七旬承道信,八旬侍弘忍;五載當陽道,玉泉度門興。
寶掌千年壽,虛公百廿春;同參東西祖,道絕去來今。
本文初稿在 Tana 上完成,這是一款通過將 AI 驅動的結構化資料庫與流暢的大綱列表相結合的筆記軟體,重新定義了現代知識管理,使使用者能夠無縫地組織相互關聯的想法,同時保持自由形式思考的靈活性。
2025-03-06 16:38:00
Quaily 是一个新兴的、AI 驱动的现代化 Newsletter 服务,也是少有的由华人开发的产品。我初次了解这个平台是通过 Quaily 首席 Lyric 的一条推文,年代久远我就不去翻找了,大意是他比较了市面上的几个 Newsletter 平台后不甚满意,于是决定亲自开发一个。最初使用时,Quaily 的功能还不像现在这样完善,但其页面精美与时尚感就已经深深吸引了我。再加上听说 Lyric 本人也是位不折不扣的帅哥,对于一个「颜狗」来说,好看即正义!无脑冲呗。
事实证明,真正的帅哥魅力不仅来自外表,更在于能力与审美的完美结合。想想蒋丞、顾飞、江添、顾望……咳咳,言归正传。
Quaily 绝非徒有其表,而是拥有众多实用功能的专业工具。我并不想把这篇文章写成软文,具体功能介绍可以移步用户手册查看。下面,我将分享如何利用 AppleScript 实现一键发布的便捷操作。
AppleScript 是 macOS 内置的自动化脚本语言,它使用户能够创建自动化工作流程,控制各种支持脚本的应用程序。选择 AppleScript 的优势在于:
区别于其他 Newsletter 服务,Quaily 提供了 Quail CLI 这款强大的命令行工具,可实现用户认证自动化、Markdown 文章管理以及用户详情获取等操作。它通过与 Quaily API 交互,让用户在命令行环境中完成各种操作,如登录、获取用户信息、文章的创建、更新、发布、取消发布和删除等,无需通过网页界面。这些功能为通过脚本实现自动化发布奠定了坚实基础。(具体使用说明请参见《介绍 Quail CLI:简化你的工作流》)。
注意:如果我们使用的是 Obsidian,可以直接使用 Quaily 官方提供的插件,无需自己编写脚本这么麻烦。
在构建自动化脚本之前,您需要先安装并配置 Quail CLI。安装过程十分简单,只需执行一条命令:
go install github.com/quailyquaily/quail-cli@latest
当然,前提是系统中已安装 Go 语言环境。或者您也可以直接从 GitHub 上安装 Quaily 官方编译好的二进制文件,截至 2025 年 3 月 6 日,二进制文件的版本号为 v.0.0.3。
安装完成后,需要进行登录认证。打开终端,执行 quail-cli login
命令,系统会启动 OAuth 流程完成 Quaily 身份验证。终端中会显示一个 URL,您需要访问该链接并授权应用程序访问您的账户。认证成功后,登录信息会保存在配置文件中(默认位于 $HOME/.config/quail-cli/config.yaml),今后操作就不再需要重复登录了。
配置文件包含您的认证信息和一些自定义设置,例如前置元数据映射等,这些设置能帮助您更好地适应自己的工作流程。比如,您可以自定义 frontmatter 中的键映射,将 featureImage 映射到 cover_image_url,使其更符合您的使用习惯。
脚本的目标是实现一键发布到 Quaily,而 AppleScript 的关键优势在于它能执行 shell 命令,从而调用 Quail CLI。
在 AppleScript 中,执行 shell 命令通过 do shell script
命令实现。这个命令由 macOS 中的 Standard Additions 脚本扩展提供,让您可以在 AppleScript 中执行任何命令行工具。例如,要执行 ls /Applications/
这样的简单命令,您可以这样写:do shell script "ls /Applications/"
。
需要注意的是,当 shell 命令包含空格或特殊字符时,必须正确引用这些字符。最简便的方法是使用 AppleScript 的 quoted form of
属性,它会返回一个安全的字符串形式,不受 shell 进一步解释的影响。例如:do shell script "ls " & quoted form of "/Library/Application Support/"
。
对于包含中文等非 ASCII 字符的文件路径或命令,正确设置环境变量至关重要。这能确保 UTF-8 编码的正确处理,避免乱码和路径识别错误,特别是在处理包含中文字符的 Markdown 文件或文件夹时。使用以下方式设置环境变量:
do shell script "export LC_ALL=en_US.UTF-8; export LANG=en_US.UTF-8; your_command_here"
这样,即使您的文件名或路径包含中文字符,AppleScript 也能正确处理而不会出现编码问题。
现在就可以结合前面的知识,构建一个完整的 AppleScript 脚本,实现一键发布到 Quaily 了。这个脚本包括以下步骤:选择要发布的 Markdown 文件,使用 Quail CLI 上传并发布该文件。
首先,需要选择一个 Markdown 文件。这可以通过 AppleScript 的 choose file
命令实现:
set markdownFile to choose file with prompt "请选择要发布的 Markdown 文件:" of type {"md", "markdown"}
接下来,获取用户的列表(list)信息。为简便起见,可以在脚本中预设列表的 slug,或者通过对话框输入:
set listSlug to text returned of (display dialog "请输入要发布到的列表 slug:" default answer "your_list_slug")
然后,使用 Quaily CLI 的 post upsert
命令上传文件:
set uploadCommand to "export LC_ALL=en_US.UTF-8; export LANG=en_US.UTF-8; quail-cli post upsert " & quoted form of (POSIX path of markdownFile) & " -l " & quoted form of listSlug
set uploadResult to do shell script uploadCommand
上传成功后,Quaily CLI 会返回包含帖子信息的 JSON 响应,您可以从中提取 slug 信息:
-- 假设 uploadResult 是类似 {"status":"success","data":{"id":"12345","slug":"my-post-slug",...}} 的 JSON 字符串
-- 使用简单的文本处理来提取 slug
set slugExtractCommand to "echo " & quoted form of uploadResult & " | grep -o '\"slug\":\"[^\"]*\"' | cut -d\\" -f4"
set postSlug to do shell script slugExtractCommand
这段代码使用管道命令组合 grep
和 cut
从 JSON 响应中提取 slug 值。grep -o
查找包含 "slug" 的部分,然后 cut
命令分割字符串并提取 slug 的实际值。
获取到 slug 后,继续使用 post publish
命令发布该帖子:
set publishCommand to "export LC_ALL=en_US.UTF-8; export LANG=en_US.UTF-8; quail-cli post publish -l " & quoted form of listSlug & " -p " & quoted form of postSlug
set publishResult to do shell script publishCommand
最后,显示操作结果:
display dialog "帖子已成功发布!" buttons {"确定"} default button "确定"
将这些步骤组合起来,您就拥有了一个实用的一键发布脚本。
为了进一步提升自动化流程的效率,可以考虑以下高级优化策略:
自动提取 Markdown 前置元数据(frontmatter)是一个非常实用的功能。通过 shell 命令如 grep
和 sed
,可以解析 Markdown 文件并提取其中的 slug 信息,无需手动输入:
set extractSlugCommand to "grep -m 1 'slug:' " & quoted form of (POSIX path of markdownFile) & " | sed 's/slug: *//' | tr -d '\r\n'"
set postSlug to do shell script extractSlugCommand
加入错误处理机制也很重要,确保脚本在各种情况下都能稳定运行。例如,检查文件是否存在,检查上传和发布过程中是否有错误等。使用 AppleScript 的 try...on error...end try
结构实现:
try
-- 脚本主体
on error errorMessage
display dialog "发生错误:" & errorMessage buttons {"确定"} default button "确定" with icon stop
end try
AppleScript 支持将脚本保存为独立应用程序,并可添加到 Dock 或设置键盘快捷键,实现真正的「一键」发布。创建应用程序的步骤很简单:在 Script Editor 中编写脚本,然后选择「文件」→「输出」,在格式中选择「应用程序」。
此外,如果需要在发布过程中加入其他步骤,如预处理 Markdown 文件、自动生成标签、上传图片等,都可以通过扩展脚本来实现。
在实际的内容创作工作流中,一键发布脚本可以与其他工具和流程无缝集成。例如,将其与 Markdown 编辑器结合,当文章编辑完成后,直接点击按钮或使用快捷键触发发布。就像我使用的文本编辑器 BBEdit,内置了 AppleScript 管理功能,可通过快捷键直接触发脚本。
您还可以考虑与其他自动化工具结合,如 Hazel、Keyboard Maestro 或 macOS 自带的 Automator,构建更复杂的工作流。例如,当将新的 Markdown 文件放入指定文件夹时,自动触发发布流程;或设置定时任务,在特定时间自动发布预先准备好的内容。
通过这些集成和扩展,一键发布脚本可以成为一个强大的内容管理和发布解决方案,大幅提升工作效率。
在本文中,我并未提供自己使用的完整脚本,而是希望帮助您理解如何使用 AppleScript 和 Quail CLI 实现一键发布,并鼓励您根据自身需求定制和扩展这个解决方案。通过自动化处理重复性任务,我们可以将更多时间和精力投入到创意和内容质量上,这正是技术为创作者带来的最大价值。
注:本文中的 API 端点和参数仅为示例,实际使用时请参考 Quaily 的官方文档。
本文初稿在 Tana 上完成,这是一款通过将 AI 驱动的结构化数据库与流畅的大纲列表相结合的笔记软件,重新定义了现代知识管理,使用户能够无缝地组织相互关联的想法,同时保持自由形式思考的灵活性。