文献同步与管理By GoodNotes&Google Drive&Notion (Win)
需求:在iPad上学习、批注文献,Windows端使用Notion对文献集中管理。文献要实时同步,Win端要能看到最新的批注情况。
探索了一段时间,尝试过Foxit、Notability、GoodNotes、PDFViewer、iCloud甚至百度云,但综合价格、批注习惯和生态等因素,用GoodNotes+Google Drive对文献进行同步是相对最适合我的。(0$哈哈哈)
文献同步
- GoodNotes开启GoogleDrive备份。Notes中所有内容会被同结构地备份到GoogleDrive下自动生成的GoodNotes文件夹中,至此实现了文件的云端备份。
顺其自然的,在电脑端直接浏览GoogleDrive里的文献就是最新批注的。
使用网页版GoogleDrive体验不如桌面版的,缓冲时间很不友好,有时网络问题甚至可能打不开了,因此: - 下载GoogleDrive Desktop,并将同步模式设置为镜像模式。此时你就可以指定一个目录镜像地存放Drive中所有文件。
之所以不使用Stream这种节省空间的模式是因为他会把文件挂到xx/My Drive/下,路径中有个带空格的My Drive!路径带空格根本忍不了,甚至如果你没有把系统改成英文的(如果你是家庭版Windows还不能改成英文系统!),安装下来的GoogleDrive只会是中文版的,他会把文件挂到xx/我的云盘/下,路径带中文!关键这个路径名不能被更改。
我选择自定义的文件路径为:E:/Google/Drive/,那我GoodNotes里的论文就在本地的E:/Google/Drive/GoodNotes/文件夹下同步存在着。GoodNotes修改论文后自动同步到Drive里,电脑的Drive自动同步后,点击E:/Google/Drive/GoodNotes/xxx.pdf看到的就是最新的批注论文。
但是在电脑端对GoodNotes文件夹下的pdf修改后,GoodNotes是看不到修改的,并且GoodNotes对其修改后会覆盖掉。这个问题我这个方案是无解的,没办法,这受限于GoodNotes操作的文件本质是GoodNotes File而非PDF,鱼和熊掌不可兼得。
文献管理
使用Notion管理文献,需要在使用Notion时跳转到最新的批注文献(本地),比如上文中的E:/Google/Drive/GoodNotes/xxx.pdf,但是非会员限制单个文件<5MB,会员好贵的!!!而且就真的是上传上去了,不能同步更新了。所以通过在Notion中嵌入本地文件链接,直接通过链接打开文件。使用Ngnix。
下载并配置Nginx
下载地址,我选择的是Stable的nginx/Windows-1.22.1。下载并解压。
双击执行文件夹中nginx.exe,浏览器中输入并转到localhost,正常会显示Nginx的欢迎界面。
下面配置安装目录下的conf/nginx.conf,主要是配置location。打开后在原server的location字段下添加新的location字段:
1 | location /goodnotes/ { |
这里alias和root是有区别的,我用了alias,root与alias主要区别在于nginx如何解释location后面的uri,这使两者分别以不同的方式将请求映射到服务器文件上。参考nginx配置静态资源访问
然后终端中输入nginx -s stop停止服务后start nginx开启服务。
按说
nginx -s reload就可以起到更新conf文件后重新加载nginx服务的作用,但是我这边实践证明reload多少有问题,conf没有得到更新还是老内容,所以还是先stop再start了。参考了解决nginx退出后却依然能访问页面的问题
tasklist /fi "IMAGENAME eq nginx.exe"查看所有运行了的Nginx进程taskkill /f /pid 16708杀死PID16708的进程
此时浏览器中输入localhost/goodnotes/Interpretable/xxx.pdf就可以打开本机的E:/Google/Drive/GoodNotes/Interpretable/xxx.pdf了。
设置开机自启动nginx服务:右键nginx.exe生成快捷方式,将快捷方式剪切到系统的启动文件夹下。(Win+R输入shell:startup跳转过去)
Notion链接“本地”文献


至此,只实现了对pdf类型的跳转打开,期间尝试了Nginx - Shell Script CGI,但是没成功,网上大部分都是Linux或者苹果的博客。后续我会再试的。
参考文章
在 Notion 中插入本地文件和目录链接
Nginx支持web界面执行bash|python等系统命令和脚本
nginx配置静态资源访问