blob: 8398f88d172707594fd509ae679e9c1acf0d7296 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
#!/usr/bin/bash
# 配置变量
GARDEN_DIR="$HOME/niwa" # 项目根目录
NOTES_DIR="$GARDEN_DIR/notes" # 每篇笔记的目录
SCRIPTS_DIR="$GARDEN_DIR/scripts" # 脚本文件目录
PUBLIC_DIR="$GARDEN_DIR/public" # html文件目录
TEMPLATE_FILE="$GARDEN_DIR/template/template.org" # 模板文件目录
# 命令
COMMAND_NEW="new" # 新建笔记
COMMAND_BUILD="build"
new_note() {
file_name=$1
cp $TEMPLATE_FILE "$NOTES_DIR/${file_name}.org" && echo "创建笔记成功:$NOTES_DIR/${file_name}.org"
echo "#+EXPORT_FILE_NAME: $PUBLIC_DIR/${file_name}.html" >> "$NOTES_DIR/${file_name}.org"
}
build() {
emacs --batch \
--no-init-file \
--no-site-file \
-l "${SCRIPTS_DIR}/publish.el" \
--eval "(setq package-archives '((\"gnu\" . \"https://elpa.gnu.org/packages/\") (\"melpa\" . \"https://melpa.org/packages/\")))" \
--eval "(package-initialize)" \
--eval "(unless (package-installed-p 'org) (package-refresh-contents) (package-install 'org))" \
--eval "(unless (package-installed-p 'htmlize) (package-refresh-contents) (package-install 'htmlize))" \
--eval "(org-publish-project \"niwa\" t)"
}
if test $1 = $COMMAND_NEW; then
new_note $2
fi
if test $1 = $COMMAND_BUILD; then
build
fi
|