在用org-mode记笔记的时候,有的时候需要截个图嵌进来,因此搜罗并改写了这个小巧的截图elisp代码,其中在retina下通过ImageMagick的命令行工具Convert把截图缩放到50%使截图看起来不辣么大:triumph: ,截图会集中存放在以org文件名开头的"_imgs"文件夹下,可以将此函数绑定到喜欢的键位,我是绑定到了C-c s c,我感觉挺好用的。
(defun my-org-screenshot ()
"Take a screenshot into a time stamped unique-named file in the
same directory as the org-buffer and insert a link to this file."
(interactive)
(org-display-inline-images)
(setq filename
(concat
(make-temp-name
(concat (file-name-nondirectory (buffer-file-name))
"_imgs/"
(format-time-string "%Y%m%d_%H%M%S_")) ) ".png"))
(unless (file-exists-p (file-name-directory filename))
(make-directory (file-name-directory filename)))
; take screenshot
(if (eq system-type 'darwin)
(progn
(call-process-shell-command "screencapture" nil nil nil nil " -s " (concat
"\"" filename "\"" ))
(call-process-shell-command "convert" nil nil nil nil (concat "\"" filename "\" -resize \"50%\"" ) (concat "\"" filename "\"" ))
))
(if (eq system-type 'gnu/linux)
(call-process "import" nil nil nil filename))
; insert into file if correctly taken
(if (file-exists-p filename)
(insert (concat "[[file:" filename "]]")))
(org-display-inline-images)
)
(global-set-key (kbd "C-c s c") 'my-org-screenshot)
14 个赞
貌似我的配置中也有类似的这么一段代码,非常好用,就是不能在截图上面再做一些标注。
Emacs本身是能够控制图像的大小的,不过编译的时候需要带上ImageMagick,否则不会生效。
是吗? 那我加入了ImageMagick编译了,如何控制图像大小呢?
我试了下,这个好像是控制导出HTML中图像的大小的样子,在buffer里头的图像大小依旧:confused:
不好意思我没看清就把链接发给你了😂
(setq org-image-actual-width 300)
=> always resize inline images to 300 pixels
(setq org-image-actual-width '(400))
=> if there is a #+ATTR.*: width=“200”, resize to 200,
otherwise resize to 400
(setq org-image-actual-width nil)
=> if there is a #+ATTR.*: width=“200”, resize to 200,
otherwise don’t resize
参见:https://lists.gnu.org/archive/html/emacs-orgmode/2012-08/msg01402.html
2 个赞
这个是一直都有的。超帅的链接叫 OneBox 还能识别视频 等等
直接粘贴视频链接就可以显示成这样么?需要特殊的 markdown 标记吗?
OneBox 支持超多链接种类 直接放链接就可以识别 URL 可识别的种类也可以进行扩展
话说我一直不会编译 Emacs 怎么整呢?给个链接咯
Mac 用户直接 homebrew 大法嘛, brew info emacs
应有尽有,
==> Options
--with-cocoa
Build a Cocoa version of emacs
--with-ctags
Don't remove the ctags executable that emacs provides
--with-d-bus
Build with d-bus support
--with-glib
Build with glib support
--with-gnutls
Build with gnutls support
--with-imagemagick
Build with imagemagick support
--with-librsvg
Build with librsvg support
--with-mailutils
Build with mailutils support
--with-x11
Build with x11 support
--without-libxml2
Don't build with libxml2 support
--devel
Install development version 25.0.92
--HEAD
Install HEAD version
然后 brew install emacs --with-imagemagick --with-gnutls --with-cocoa
什么的参数自己按照需要选
2 个赞
@xcodebuild Linux 勒。。。单位是 Linux 给我个链接我自己可以去挖挖看。之前 apt-get 装的 Emacs 老版本,为了装新的版本搞了一早上。开启论坛 Chrome 的自动提醒,感觉这个提醒功能变得好好用哟。
哦哦啦 谢谢谢谢 么么哒 话说 你的名字 我根本不任意 余不出头是啥字?
你是外星人吧 这么偏的姓 没跑了 外星人 佘 佘佘佘佘 翻了10遍候选字才找到 没文化 真可怕
新华字典的解释是: 佘,用作姓
话说Chrome通知确实是好用。(我们是不是太水了😂)
1 个赞
呵呵呵呵呵呵呵 好啦好啦 不说啦 这是最后一条 请别回