在「Writing a Book with Pandoc, Make, and Vim」這邊看到作者在講他怎麼用 Pandoc + GNU Make + Vim 寫書,不過我這邊看到兩個有趣的東西 (標題提到的那兩個),拉出來寫一下...
一個是 Vim 的 set virtualedit=all
,可以不受限制的移動,等到實際編輯時再產生出對應需要的空白,這對於畫表格會方便不少:
另外一個是 GNU Make 的用法,平常我們都是在 .PHONY
裡指定實際上不會存在的 target:
.PHONY: clean clean: rm -rf ./output
這邊作者提供的方式是產生一個叫做 phony
的 target,然後就不需要在 .PHONY
裡條列,而是各自在自己的 target 裡面引用 phony
:
.PHONY: phony clean: phony rm -rf ./output
不過作者有提到效能問題:
Note that this trick can slow down huge Makefiles.
另外作者又提醒我 draw.io 這個好用的工具,之前用過幾次後就忘記了...
分享另一個關於 Makefile .PHONY 的寫法:
- https://unix.stackexchange.com/a/217308
- https://clarkgrubb.com/makefile-style-guide#phony-targets
範例:
```
.PHONY: foo
foo:
echo "execute foo"
.PHONY: bar
bar:
echo "execute bar"
```