在emacs中,我可以通过text-scale-adjust来改变当前缓冲区的字体大小。 但是,为了改变字体,我只能find像set-face-font或set-frame-font这样的函数,它们会在emacs中全局更改字体(或者在当前帧中更改所有缓冲区的字体)。
emacs中是否有一个函数只改变当前缓冲区的字体(默认字体),而不修改任何其他缓冲区中的字体?
Mac与Windows浏览器字体高度渲染问题
从AWS Cloudfront提供服务时,请发出加载Web字体的问题
如果我使用客户机上未安装的字体,会发生什么情况?
无法安装字体
@ font-face:为什么在Windows上这个单独的字体看起来不一样?
从Emacs 23开始,可以通过Mx buffer-face-set更改每个Mx buffer-face-set 。 请参阅http://www.emacswiki.org/emacs/FacesPerBuffer 。 所以,拿Firegun的回答,你可以像这样使用buffer-set-face :
(defun jmi/set-buffer-local-family (font-family) "Sets font in current buffer" (interactive "sFont Family: ") (defface tmp-buffer-local-face '((t :family font-family)) "Temporary buffer-local face") (buffer-face-set 'tmp-buffer-local-face))
(注意:这仍然面临着面名本身是全球性的问题)
不,据我所知,你不能。 在GNU Emacs中,字体是脸部的一部分。 除非你,例如,只使用一个特定的脸部缓冲区你想要的,你把那个脸的字体设置为你想要的,我不认为你可以实现你的要求。
我找到了一个办法,虽然它有一些副作用,因为它改变了全局变量buffer-face-mode-face
例如,我想设置当前的缓冲区,我可以评估这个函数定义并运行它
(defun my-buffer-face-mode-serif () "Sets a fixed width (monospace) font in current buffer" (interactive) (setq buffer-face-mode-face '(:family "Times New Roman")) (buffer-face-mode))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。