根据平常使用的软件窗口、屏幕大小和文本的宽度,我自己设置了 frame 的宽度。
(when window-system (set-frame-size (selected-frame) 96 36))
在 spacemacs 中 SPC f e R
后确实生效,但是重启 Emacs 后只闪了一下(长宽都是自定义的大小),就变回了 spacemacs 的默认窗口大小。
我在 spacemacs 的设置中没找到专门的 length 和 width 设置,上面的代码是在 Emacs 的 wiki里找的,有什么不对的地方吗?请问如何自定义设置 frame 的大小更好?
(defun liu233w/reset-frame-size (&optional frame)
"重设窗体大小"
(interactive)
(when frame
(select-frame frame))
(set-frame-width (selected-frame) 100)
(set-frame-height (selected-frame) 30))
;;设置窗口大小
(liu233w/reset-frame-size)
;;在这里学到: https://github.com/syl20bnr/spacemacs/issues/4365 @raawaa
;;可以使用这个hook来在加载frame之后调用制定的函数,frame将作为参数被传递给
;;这个函数
(add-hook 'after-make-frame-functions 'liu233w/reset-frame-size)
可以参考我的配置: .spacemacs.d/config.el at master · Liu233w/.spacemacs.d · GitHub
1 个赞
Thx!
我试了这个配置,set-frame-height
和 set-frame-width
两行只有放在前面的一行生效,另一个不生效,交换位置后也是。
请问您遇到类似的问题吗?
kimim
4
I use following lines to define frame size, more here:
(cond
((eq window-system 'w32)
;; cleaner font setting
(set-fontset-font
"fontset-default"
'han (font-spec :family "NSimSun" :size 16))
(setq default-frame-alist
'((top . 80) (left . 250)
(width . 128) (height . 45)
;; if you like anti-alias, use this to have a try
(font . "Inconsolata-11")
)))
((eq window-system 'ns)
(set-fontset-font
"fontset-default"
'han (font-spec :family "Microsoft Yahei" :size 14))
;; OS X 下,只有雅黑字體的標點符號顯示的不是那麼難看
(set-fontset-font
"fontset-default"
'cjk-misc (font-spec :family "Microsoft Yahei" :size 14))
(setq default-frame-alist
'((top . 100) (left . 600)
(width . 166) (height . 70)
;; (font . "Bitstream Vera Sans Mono-14")
))))
1 个赞
并没有。。。我的配置基本上只在windows下测试过_(:зゝ∠)_
其实你可以把那两行直接改成你的 (set-frame-size (selected-frame) 96 36)
的。
1 个赞
好吧,我在 Linux 下测试,重启机器之后打开 Emacs 长宽两项都不起作用了,用 set-frame-size
这句也不行。