使用 Ulysses 输出带有图片描述的 PDF 文档

在用Ulysses插入图片时会出现下面的界面:

图片插入图例

图片插入图例

图片插入图例

按照正常的逻辑,应该可以直接输出描述或者Title,虽然我不明白Ulysses对描述和Title理解的区别,但是在文章里,「简述一幅图片插入的理由」应该是毫无疑问的需求。Ulysses对这点支持得很不好,比如,插好图片并且填写信息后,在使用 HTML 和 PDF 预览时却产生了这样的差异:

HTML和PDF输出图片描述差异

也就是说HTML格式预览可以显示对图片的描述,而PDF不可以。对于学术写作非常不友好,这里我找到两种方法解决该问题。

2. HTML 转 PDF

既然 HTML 可以直接输出描述,那么只要将 HTML 直接转换成 PDF 就是曲线救国的思路。因此,如果使用 Mac Ulysses App,那么很简单:

  1. 使用自带Safari浏览器(或者任意浏览器)打开HTML预览
  2. Safari + 预览,将网页转化为自定义尺寸 PDF | 一日一技

预览演示

如果经常使用 iOS Ulysses App,那么稍微麻烦一点。@Reagan 在Ulysses 导出带有图片说明的 PDF 文件 | 一日一技 这篇文章里给出一种 Ulysses+iCab Mobile 的实现方式。其实使用 Readdle家 PDF Expert或者可能任何类似App都可以打开带有图片标题的HTML。但是,采用HTML转PDF的问题也很多,比如说图片尺寸不令人满意。

那么能不能直接在PDF输出带有图片描述的文章呢?答案是可以的:

直接输出PDF图片描述的对比

左边是没修改之前的状态,右边是修改后的PDF,总体思路是将图片下第一行文字和图片一样进行居中处理。

3. 直接输出带有图片描述的PDF

在具体修改之前,有必要Ulysses的自定义功能。Ulysses 的自定义功能太丰富,导致很多人望而却步,不像 Byword 你也没啥可修改的反而省事,all it depends. Ulysses 有两个地方可以自定义,分别是 Markup 和 Styles,在preference里面可以找到:

Markup

Styles

就我个人而言,Markup属于一种对 Markdown 语法的标记修改,更偏向主题或者是皮肤的修改。Styles 则是对整篇文章的布局、字体等的修改,具体可以对应到不同格式的修改,比如PDF或者HTML。

3.1 修改 PDF Style

首先打开PDF 目标格式的.ulss文件,如果是Ulysses自带的文件需要先复制再用text editor打开。如果觉得有些复杂,你只需要对自己说,嗨,这就是一个文本文档。

打开路径

打开之后的界面

移动光标到paragraph styles

添加标记的这一段:

paragraph-figure + paragraph {
	text-alignment:	center
	first-line-indent:	0pt
	margin-bottom:	2.75pt
	}

这段的意思是将图片下面第一行居中处理,看起来就恰好是图片的描述。如果想限制图片大小,可以添加下面这段,你可以自己修改数据直到自己满意为止。


//	Images
//

paragraph-figure {
	margin-top:				2.5mm
	margin-bottom:			2.5mm
	margin-left:			15mm
	margin-right:			15mm
}

4.尾巴

Ulysses修改格式纷繁杂乱,刚开始真不知道从何处下笔,于是从挑选解决我痛点的PDF图片描述修改开始,大家也可以告知我有哪些需要,从点出发是一个很不错的学习方式。

从对 Apple Watch 友好的日历应用说起

日常的一天从七点开始,尽量在晚上十一点之前结束。良好的作息是自我管理的一种方式,通常我会借助 Apple Watch 显示的日历来提醒自己哪一段时间该干什么。我习惯用 Apple Watch 看日历的原因是,每次在看时间的时候顺便看一眼接下来,比如「cardio」有氧运动的时间,这样你大概心里有个数就不慌不忙。在这之前我也开启了通知中心的提醒,但是效果不好。一来容易打乱思路,我很讨厌在工作的时候它提醒你十分钟之后要干什么,很可能我就被通知中心的其他通知吸引去干别的了,分心;二来我觉得提醒有一种 push 的感觉,不是你主动掌握时间,而是时间推动你往前走,要明白是谁在管理时间,往往接下来要完成的日历事件,很需要前面时间的积累,比如备课和预习这样的事情,就是说有一种成竹在胸的大局观很重要,事情是琐碎的但是要明白重点是要完成什么事。

日历对我很重要,在没有 Apple Watch 之前我也依次经历了以下五个日历应用,且每个日历应用都最起码用过一个月以上的时间。

  • 自带
  • Calendar 5
  • Fantastical
  • Google Calendar
  • Timepage

经过我长达半天的测试(其实就是下载全部五个应用,然后对比 Apple Watch表盘),发现其中有小插件的是自带应用、Fantastical 和 Timepage,他们对同一事项的细节最多的插件的表盘为:

这也是我最常用的表盘,分为时间日期区、日历区和摄入卡路里、音乐和南京时区的时间。从图上可以看出,自带日历和Timepage有着完整的细节,下午四点到五点,有氧运动,而Fantastical是在买萌吗?

我一般不点进去看应用,因为在Apple Watch 上还是不要过多操作,脖子来的比较舒服。好吧,我点进去试一下:

顺序跟刚才一样,自带日历的信息没有增加,点了跟没点一样,要再转动 Digital crown才会有反应,而且是卡片式的翻页界面,不连续显示日历。Fantastical 就比较神奇了,我前面还在说它在卖萌不显示日历,我点进去之后,它应该是同步了一下,所以找到了日历并且显示了出来,看下图:

本来我打算批判一下 Fantastical,但现在有些尴尬,好像它也显示了细节,但同步速度比别人慢本身就是硬伤。Timepage 除了完成前两者都有的功能外还贴心地显示了天气和温度(华氏度)。另外,在 Apple Watch 初代的时候,Timepage 一度同步无能,我给开发者写过邮件,答复当然是他们正在加班加点的修bug,所以我只好卸载了 Timepage,因为我看不到同步的日历会着急。后来,也就是这半年,加快更新步伐后的 Timepage,同步速度几乎跟自带没有区别,也没有出现过 Fantastical 这样「卖萌」的状况,再加上 iOS 上的界面也极其漂亮,也就没有其他理由放弃它了。

那么其他两个日历应用,Calendar 5 和 Google Calendar ,虽然没有小插件,但我还真不删除他们,因为…接下来会讲。

我的日历观

细数过去,刚开始尝试使用日历应用的时候,是根本不知道怎么使用日历,而且每天也没有过于复杂的事情(比如跟别人协同办公)。因此我将几门课全部安排进了代办提醒,设置周期和备注,比如告诉我教室在哪里等等。我也知道有很好的课表应用,尝试过觉得有些复杂,而且我除了上课还有实验和组会要开,于是就索性放在同一个地方,显得比较有秩序感:

在同一个地方的好处是,每学期结束之后,浏览一下这学期完成的事项,似乎完成了很多事情。但是后来发现什么都用代办事项提醒本身就不对,因为一眼看不到一天时间是如何分配的,对每天空白时间没有把握,而且很多琐碎和简单的事情都记下来代办,简直就是自娱自乐地打勾。你看,上课这件事是每周重复的,可以用周期性的代办事项标注,也可以用日历标注,两者都能提醒你教室在哪,似乎GTD打勾和日历事件都 make sense,但区别是「日历可以看得见这块时间分配给了这门课」,而代办事项打勾后就没了,因此日历更关注时间分配,而GTD更注重一件一件具体的事情以及对项目进行子任务分配,比如:

这是一个论文大纲,也是任务分配图,我基本上会打印出来贴在眼前,时刻提醒自己还有什么需要完成,所以在下面的日历中「Dissertation」这个大块时间,我是一章一节进行细分的,而不是呆写。但本文不想过多描述GTD。

日历的属性表示着是固定时间做的事情,有时候你会觉得一天一天在重复,很无聊。我想说这就是生活,让自己感觉不到无聊的方法就是使自己忙起来。比如你5点下班,下班后去健身房和下班后回家吃着炸鸡看美剧,都是选择,恕我直言,纯粹的吸收就是无聊的根源。你要释放身上的能量,去创作和流汗,达到一种动态平衡,无聊自然而然 fade out。所以我一般就会把时间安排地紧凑,比如这样:

这是三月-四月的日历,比较复杂,抽出其中一天:

就跟其他每一天比较相似,算是我认为 organized 的生活:

早晨写论文,午餐时间学习 Coursera 的课程,下午组会,健身,打扫实验室,修改论文。其实早晨写论文并不是全部时间在写,而是那段时间的中心是围绕大论文需要的东西来一项一项的完成,比如脑图中建立的子项目,例如采集数据、整理数据和研读论文等等。日历的核心在固定的时间做一项有核心的事件。之前每天晚上十点之后是 Kindle 的时间,但最近确实比较忙,诚实面对自己所以把它删了,不能自欺欺人,明明没有在做这件事还硬要写在上面。当然,「忙」和「没有时间」都是借口,只是不愿意分配时间而已。前天我睡前眯着眼睛看了几页Kindle,书名是sweetbitter。讲述了女主人公从家乡来到纽约的一家餐厅打工的经历,认识了从酒保到高级侍者到大都会博物馆形形色色的人和物。你不知道这是开始还是结束,你要像甜一样喜欢苦。就像每个人每一天的生活一样,好像永远没有开始和结束,只是一直在忙碌,觉得自己很辛苦。

如何制定日历

太多人不知道怎么制定日历,比如周六中午去买菜,是日历呢还是代办事项呢?我没有看太多GTD的书,我就是觉得,这如果是接下来的几周你每周这个时间都要做的事情,更多是关于时间分配,那请写在日历里。类似「每天回家的班车时间(通勤时间)」这样重复性较强的事情,请记在日历里,加班没有固定时间?那就不设好了,人在江湖加班不由己,(但愿如此,而不是因为自己上班就在浪费时间)。接下来再给自己分配一些固定时间做的事,比如周日早上是shopping time,每周二、四、六下午五点后是力量(还可细分为胸、背、臀腿)+有氧日,就好像生活大爆炸里周五是Laundry Day还是什么Day,我忘记了,但就是这样的概念。

「重复事件」和「分配事件」两者的区别在于,前者是不受你主观意志转移的,而后者你更自由,添加日历有助于让意志往积极的方向走,日历 is watching you。

下面谈谈工作中的日历,都说工作时最好用番茄时间,这点对搞科研或者难度很大的事件根本不适用。比如看文章的人知道,文献是越看越多,二十五分钟根本不够我想半个问题,你要我现在休息,前面的二十五分钟思路就断了,打乱思路等于谋杀,这个很可怕。那到了缓冲期怎么做选择?也就是说当你看着满桌的 paper,低头扫了一眼 Apple Watch,心中怒飙脏话「卧槽,来不及了」,因为一分钟后你该去做实验了,但你还有一些关于 paper 的理论没有搞懂怎么办?首先问题在分配时间范围的时候,先要估计自己花多久看一篇文章,这是经验和对自己的认知;其次,你要想一想是不是再半个小时你还是搞不懂这篇文章。所以在你正确估计时长的情况下,应该切换思维去做实验。你搞不懂的事情很可能在潜意识里面就想明白了,但是你当下很混乱没办法厘清这个道理。我自己就常常在分不清梦境与现实的情况思考一些很抽象的事情,比如线阵CCD曝光时间和扫频光源一次sweep时间的问题,其实就发生在昨天梦里(否则不可能记这么清晰)。换个脑子也是提高效率的方式。可能上班的人没有时间给天天健身,但换个脑子做一些其他不同类型的工作也可以帮到你。实在不行,自己打翻水,再收拾一下都是极端的放松的例子,我是认真的。

如果你跟我一样日历比较复杂,除了自己的个人日历外还要订阅团队的日历,那么请往下看。

订阅和分享日历

日历账户一般跟邮箱绑定,也可以在 iPhone 上建立单纯的日历而不绑定任何账户,绑定的目的是为了同步和分享(我认为)。我用 Gmail账户的 Google Calendar,所以用它来说明。

在我的日历截图中,有黄色(个人日历)和蓝绿色(团队日历):

淡掉的颜色表示这一天已经过去。

界面的左下角依次可以看见我的所有日历:

  • 我的日历
    • Yue Zhu – 我主动添加的日历 – 橙色
    • Birthday – 生日提醒 – 青紫色?
    • Reminders – 代办事项提醒 – 青紫色?
  • 我订阅的日历
    • Holidays in US – 订阅的美国节假日日历 – 蓝绿色?
    • SBO – 订阅的实验室日历 – 淡蓝色?

在右边一周日历的方格中会显示对应的颜色,你也可以设置喜欢的颜色,自己认为重要的颜色区分开比较合适。

订阅日历的方式是找到目标日历的链接,通常是一串地址+.ics,比如下面这个是美国公共节假日的日历:https://calendar.google.com/calendar/ical/en.usa%23holiday%40group.v.calendar.google.com/public/basic.ics

找到这样格式的目标日历,点击订阅即可。需要注意的是,当你是使用gmail帐号订阅别人的日历时,很有可能在 Timepage 上不显示(因为 Timepage 只抓取了gmail 账户的日历,而不是gmail账户订阅的日历,有差别),而使用 Calendar 5 则完全没有问题,而且我喜欢 Readdle 设计应用的风格,这也是前面说的不能删除它的原因。所以我的建议是在 iPhone 上订阅日历,订阅之后在设置-日历-账户里看见这样的界面,则表示订阅成功:

那么在 Timepage 中就能看见 SBO 的日历,因为是系统订阅,Timepage对系统订阅的日历抓取完全没问题。

另外,在 Google Calendar 的网页版里,也可以在设置里选择分享你的日历,比如点击下图右侧的Share this calendar

现在你订阅好了团队(SBO)的日历,后来你成为了leader,成为管理这个日历的人,那么请接着往下看。

多账户管理日历

这时就涉及到多账户的日历管理问题,我熟悉的方法是使用 Google calendar 这个应用。团队的日历通常比较复杂,需要在日历下建立很多次级项目,不同的项目对应不同的受众。比如你的团队有十个人两个项目,其中7个在做项目1,8个人在做项目2,比较有秩序的做法当然是用色块区别开两个项目,但是你们属于一个团队,在针对全员的情况则不需要区分。在下面三款日历应用添加事件时,对帐号的选则只有「Gmail主帐号」这一个可选项(例如下图中的dxmcyr@gmail.com 或者 xxxx@gmail.com),没有次级项目可选。

而次级项目在 Google Calendar 中则显示为:

  • xxxx@gmail.com(团队日历)
    • Events(主要事件)
    • Class+Vacation(项目)
    • SBO(表示SBO这个项目)
    • Superlum BroadLighter Source(项目)
    • Telesto System(项目)
  • dxmcyr@gmail.com(个人日历)
    • Events(主要事件)
    • SBO(我用个人账户订阅的SBO日历)

你可以在gmail帐号里选择次级项目,进行事件的添加。这就是前面我提到需要保存 Google Calendar 的原因,iPad 版本的 Google Calendar 是最近才有,所以它现在是通用版,但很可惜不支持 Apple Watch 的插件。你注意到这里没有聊 Timepage,它甚至只能有一个 Gmail 帐号,也就是说你要用其他 Gmail 帐号的日历时需要退出当前,so awful。

尾巴

日历应该是具有时间分配属性的东西,而 Apple Watch 的使用则更凸显了这一特性:低头看一眼时间的同时掌握接下来要进行的工作:

比如现在,no more events,同时今天摄入的卡路里比目标值少13大卡,然后我就该去睡觉了。

我的中国胃

四月中旬,带着自己「做」的食物。看见燕麦片就顿生恶心,看着像猪食,正想着胃就逐渐疼起来,还以为是饿着了。

没有时间做菜。每天八点去学校,健身后晚上八点才吃上晚饭,房东说 Time is an excuse。每周固定做菜的时间是周日早晨的九点到十一点,对于蔬菜就是买个5-7种,用白水煮熟,等凉后放在一个个的小盒子里,再放进冰箱;对于蛋白质就是两种肉,用盐、胡椒、橄榄油、罗勒等腌渍十五分钟,再放进烤箱。最后是碳水,燕麦、全麦切片,之前是意面、米饭、豆类。食材还是这些食材,不同的是烹饪技巧、耐心和天份。比如说我就很不擅长放佐料,没有糖、很少盐、少油、也不用酱油,结果就是不好吃。对于吃,我也不是很追求,好吃的当然很开心,但蔬菜沙拉给我带来的clean感也很好,所以一直自以为是。在学校吃饭也是不好吃的大颗 broccoli ,干瘪的 teryaki tofu,肉类食物特别烂,我牙口还很年轻,请给我符合我牙口的食物。

撑完这份猪食午餐后,我胃已经翻江倒海。然后自觉支撑不了就上了趟厕所,果然拉稀,洗洗手打 Uber 回家,路上强忍疼痛听着 Uber pool 司机和前排乘客打情骂俏。回来也没吃饭就躺下睡觉,迷迷糊糊到九点开始刷微博,点开朋友圈发一个自怨自艾post,后来的结果就是关闭了朋友圈。做好不被理解的打算,还是不够,还要反省,还要修行。

第二天中午,点苏杭外卖,姜丝牛肉和扬州煮干丝,其实我还点了一份素三鲜,他居然没听见,各吃了一点点就吃不下了。如果瘦子就是这样的胃口,真满不幸的。姜丝牛肉,想起来新鲜的三丁包,一叠小醋,十来根姜丝浸没香醋中,用两根筷子夹起一撮带有醋汁的姜丝,放在已经被咬掉一口的三丁包上,看着冒着热气和香气的内馅,咬它一大口。

晚上房东太太回来,我说我有点发烧,她给我一份速食鸡汤面,她说妈妈会在孩子生病的时候煮鸡汤,即使是速溶鸡汤,然后还问我要不要吃pizza,我说我真没有这胃口。煮了她给我的鸡汤面速溶粉,check 了一下盐含量,我天,我必须加豆芽,我放下去半包豆芽。依然很咸,我想,为了多喝点水,也喝了这碗鸡汤。除了有点晕眩,which means 还在发烧中。

我一直以为我没有中国胃,可曾试想,正常的时候当然中国胃可有可无,当生病想家的时候,想念的还是那一碗白粥,一叠点心,中国人的血液永远在流淌。美国人太不会吃蔬菜了,除了沙拉就没别的。说饭不好吃加老干妈,我觉得这种想法特别可怕,这不就是饮鸩止渴吗?但是,我自己做菜特别淡,天然抵触酱油和糖,也算是极品一枚,能吃出每种菜叶子不同的甜度,有的还是先苦再回甘。比较害怕即使标记了organic还有农药残留,因为水果懒得削皮,草莓据说农药残留NO.1,所以一般直接吃香蕉。

碎碎念,还是有些晕眩,明天可以再休息一天吗?

Hit the Back Mar 31, 2017

3163 Middlefield Rd
Palo Alto‎ CA‎ 94306
United States

Strength

  1. Pullup 85lb
  2. Lat pulldown 55lb
  3. One-arm dumbell row 15lb
  4. Straight-leg Deadlift 40lb
  5. MTS High row 40lb
  6. Standing Calf 50lb
  7. Latetal Raise 15lb

每组二十,一共四组,做到力竭即可

Cardio

  1. Stepper Master 40min

改天游泳试试

改天🏊试一试

改天🏊试一试

Hit the Gym Diary Mar 27, 2017

875 Blake Wilbur Dr
Palo Alto‎ CA‎ 94304
United States

Strength

  1. Deadlift 40lb 20 20 25 25 30
  2. Deep Squat 30lb 20 25 25 30
  3. Leg extension 25lb 20
  4. Seated leg curl 35lb 20
  5. Calf Extension 30lb 20
  6. 肩平举 5lb 20
  7. 撑肱三头 自重
  8. Chest press 30lb 25
  9. Hip Abduction 90lb 20

Cardio

  1. Stair master 30min

没电的 Apple Watch

但我有新玩具啦

而且今天写文章的效率还可以喔