emacs预览图片时禁止smooth-scrolling

Posted in 2016-12-20 12:41 | Category: Linux | Tags: linux emacs org-mode

Table of Contents

需求

在使用 org-mode 写文档时,插入图片后默认不显示,想要直接在 org文件中预览图片,可以使用

org-toggle-inline-images

但是问题来了,开启预览模式后,移动光标跳过文件内容,找了一下

参考链接 1 那么问题来了,如何只在开启 org-toggle-inline-images 后关闭 smooth-scrooling, 关闭 org-toggle-inline-images 后开启 smooth-scrooling

解决

给出代码,使用 defadvice

(defadvice org-toggle-inline-images (after org-open-at-point activate)
  (if smooth-scrolling-mode (smooth-scrolling-mode -1)
        (smooth-scrolling-mode 1)))

Footnotes:

1
[https://github.com/syl20bnr/spacemacs/issues/3824](https://github.com/syl20bnr/spacemacs/issues/3824)

emacs解决中英文表格对齐

Posted in 2016-8-14 15:42 | Category: Linux | Tags: linux emacs org-mode

为什么要解决?

其实也没什么,主要是中英文表格不对齐的话太难看,不直观,外加强迫症

首先来预览一下未对齐之前与之后的效果:

未对齐的

algin

对齐的 align

怎么解决?

之前我用网上搜索到的,分别设置英文字体和中文字体

;; 中英文表格对齐
(set-default-font "Dejavu Sans Mono 10")
(if (and (fboundp 'daemonp) (daemonp))
    (add-hook 'after-make-frame-functions
              (lambda (frame)
                (with-selected-frame frame
                  (set-fontset-font "fontset-default"
                                    'unicode "WenQuanyi Micro Hei Mono 11"))))
  (set-fontset-font "fontset-default" 'unicode "WenQuanYi Micro Hei Mono 11"))
;; 这里是因为默认英文字体太小,所以进行等比例放大
(setq face-font-rescale-alist '(("Dejavu Sans Mono" . 1.1) ("WenQuanyi Micro Hei Mono"  . 1.32)))
;; (setq face-font-rescale-alist '(("Dejavu Sans Mono" . 1.15) ("WenQuanyi Micro Hei Mono"  . 1.38)))

这样虽然可以对齐了,但是如果我以 daemon 启动,字体会变得很大,而且显示效果相当不舒服

所以,自己摸索了一下,得到如下结果

(if (and (fboundp 'daemonp) (daemonp))
    (add-hook 'after-make-frame-functions
              (lambda (frame)
                (with-selected-frame frame
                  (set-face-font 'org-table "-Misc-Fixed-normal-normal-normal-*-18-*-*-*-c-90-iso10646-1")
                  )))
  (set-face-font 'org-table "-Misc-Fixed-normal-normal-normal-*-18-*-*-*-c-90-iso10646-1"))

这样单独设置 org-table 的字体,在非 org-table 的字体为默认设置