写了一篇关于 org-capture 的博客

http://www.zmonster.me/2018/02/28/org-mode-capture.html

欢迎交流、分享 capture 模板

16 个赞

不明觉厉。Linux 上确实是个好东西 :grin:

最近我也在折腾这个,有点疑问请教一下:

  1. Deprecated date/weektree capture templates changed to ‘file+olp+datetree’. 根据文档,要调整下了
  2. 我想建立一个任务,自动插入schedule time,怎么实现?
  3. %^C,具体是什么意思?貌似只能选killring,不能选clip

虽然我用的是mac 但是还是把笔记需求全部转到org-mode上了

之前omnifocus+evernote/onenote/各种markdown/etc 全都用过 写了不少AppleScript想把他们连起来

后来入了emacs的坑 认识到AppleScript再怎么写都不可能完全达到我想要的效果 而且不是所有app都支持AppleScript

于是就一头扎进了Emacs大坑

  1. 这个在看源代码的时候注意到了,感谢提醒,后面会调整一下

  2. 插入 schedule time 其实就在内容模板里写一个 SCHEDULED: %t 或者 SCHEDULED: %^t 就可以,DEADLINE 同理

  3. 按照文档解释,应该就是 kill ringclipboard 中的内容,不过这两个东西我现在没有搞太清楚,等我细看下再和你讨论哈……

嗯,之前我还有用一些 PDF 标注工具来看论文什么的,现在有 pdf-tools,这块也可以转到本地用 org-mode 来做了

我基本只有资料搜集需求,完全不整理。连分级文件夹都懒得建,tag 也懒得打。

但确实经常需要在手机上搜索,所以同步功能对我很重要。

综上,我需要的只是系统自带的 Notes,和 Evernote。实际上,Evernote 对我来说也有点重。

每个人有自己的使用需求,并不是说 org-mode 就是适用于所有人的,我也一直坚持说合适自己的就是好的,包括 Emacs/Vim 这种争论。

像「手机上搜索」这种需求,我就完全没有。

各取所需吧。

另外实际上我主要也就三个文件

  • inbox.org: 纯收集,不分类

  • journal.org: 自己日常生活、工作的日志

  • notes.org: 一些分类比较明确的笔记

其他我也不咋用,搜索的话用 org-rifle 和 ag 基本够用。

evernote有一个很重要的功能是网页剪辑,Emacs有没有什么对应的方法啊。

文中有提,用 org-protocol,见 用 org-capture 来做网页内容收集 一节

1 个赞

后面计划再写一篇文章讲 org-protocol ,如果有什么感兴趣的场景或者建议可以先讨论下~~

:grin:

1 个赞

我对org了解不是很多,基本是当markdown用的,可能讨论的质量不会很高。: P

org-mode,或者说纯文本有一点麻烦的地方就是插图不好整理,org-protocol是怎么处理网页里的插图的?么?

图的话用 org-protocol 处理不了。

如果只是要单独收集网页上的图片,用 org-download 可能更合适些。

如果是希望图文一起剪辑,目前我也没有什么好的办法。

纯粹的来表示一下感谢。 本人伸手党、英语盲、非程序员。对于本人来说,想稍微用一下org-capture,你的这篇博客是最简单易懂、最有深度、最好的说明。

1 个赞
(defun firemiles/display-inline-images ()
  (interactive)
  (condition-case nil
      (org-display-inline-images)
    (error nil)))

(defun firemiles/org-insert-screenshot (fullname)
  (interactive "P")
  (setq default-name
        (concat (file-name-directory (buffer-file-name))
                "imgs/"
                (file-name-base (buffer-file-name))
                "_"
                (format-time-string "%Y%m%d_%H%M%S")
                ".png"))

  (setq fullname (read-from-minibuffer "Input image save path: " default-name))
  (unless (file-exists-p (file-name-directory fullname))
    (make-directory (file-name-directory fullname)))

  (call-process "pngpaste" nil nil nil fullname)

  (if (not (file-exists-p fullname))
      (message "Can't find screenshot in clipboard!")

    (insert "#+CAPTION:" (file-name-base fullname) "\n")
    (insert "#+ATTR_ORG: :width 300px\n")
    (insert (concat "[[file:" fullname "]]"))
    (org-display-inline-images)))

插入图片我都用上面这个函数挺顺手,mac下借助用pngpaste,window用 https://github.com/firemiles/imgpaste/releases ,不过这个工具对中文路径支持不好,会崩溃。

1 个赞

这个可行,应该也有可能不用外部工具,我这里用 Mac Port 有办法获得 Clipboard 里的文件的完整路径,甚至能直接插入图片,等有时间再看看。

没有设置局部变量就用 setq 会产生不必要的全局变量。

1 个赞

mac 下直接调 screencapture 命令就行;

linux 下调 scrot 。就是不一定在所有 linux 发行版里都存在;

window 下就不清楚了。

1 个赞

这跟 pngpaste 作用不同,图片可以来自任何地方,不只是屏幕截图,也可以来自文件。

1 个赞

调 AppleScript 好像可以做到,用 Hammerspoon 的话效果更好。

就是没法跨平台了。