You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Emacs日记与月历页面打印设置为Letter或非A4尺寸?

Emacs 修改日记与月历打印纸张为Letter尺寸

全局统一设置为Letter尺寸

这是最省事的方法,所有Emacs打印输出(包括日记、日历)都会默认用Letter纸:

  • 如果你用Emacs自带的PostScript打印后端,往配置文件(比如~/.emacs或~/.emacs.d/init.el)里加:
    (setq ps-paper-type 'letter)
    
  • 要是你的系统依赖lpr命令打印(大部分类Unix系统都是),直接给打印命令传参数:
    (setq lpr-switches '("-o" "media=Letter"))
    
    个别系统可能需要把参数改成"-o" "paper=letter",如果上面的不生效可以试试这个。

单独给日记打印设置Letter尺寸

不想全局改的话,可以写个自定义打印函数,只在打印日记时用Letter纸:

(defun my-diary-print-letter ()
  (interactive)
  (let ((ps-paper-type 'letter))
    (diary-print-entries)))

之后可以绑定个快捷键方便调用,比如:

(global-set-key (kbd "C-c d p") 'my-diary-print-letter)

以后按C-c d p就能直接用Letter尺寸打印日记了。

月历页面的非A4打印配置

日历相关的打印函数(比如calendar-print-month打印单月、calendar-print-year打印全年)会自动继承全局设置。如果只想针对日历单独改,可以给日历模式加钩子:

(add-hook 'calendar-mode-hook
          (lambda ()
            (setq-local ps-paper-type 'letter)))

这样只要进入日历模式,打印月历/年历就会用Letter纸,退出日历模式后全局设置不受影响。

内容的提问来源于stack exchange,提问作者Steven Buehler

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 11:20:33