28

我的 emacs(在 Windows 上)总是以设定的大小启动,这个大小相当小,如果我调整它的大小,下次启动时它不会“记住”。

我一直在玩以下游戏:

(set-frame-position (selected-frame) 200 2) ; pixels x y from upper left
(set-frame-size (selected-frame) 110 58) ; rows and columns w h

当我在暂存缓冲区中执行它时,它完全有效。我把它放在我的 .emacs 中,虽然现在当我启动程序时,我可以看到框架临时设置为该大小,但在*scratch*加载时,它会再次重置为小的默认值。

谁能帮我修复上面的代码,以便它在启动时“粘住”?

4

6 回答 6

39

这是我在我的~/.emacs

(add-to-list 'default-frame-alist '(left . 0))
(add-to-list 'default-frame-alist '(top . 0))
(add-to-list 'default-frame-alist '(height . 50))
(add-to-list 'default-frame-alist '(width . 155))
于 2008-12-02T21:30:27.187 回答
4
(setq initial-frame-alist '(
            (top . 40) (left . 10)
            (width . 128) (height . 68)
            )
  )
于 2009-02-26T10:34:33.460 回答
3

你试过这个吗:emacs -geometry 110x58+200+2 &

发现于:

http://web.mit.edu/answers/emacs/emacs_window_size.64R.html

于 2008-12-02T21:27:51.123 回答
3

之前发布的解决方案都无法解决我的大小调整问题,所以我想我会分享一个额外的解决方案:在启动时,Emacs 23 使用某种字体,然后切换到用户定义的字体;因此,如果这个字体很大,Emacs 也会减小窗口大小以适应屏幕。然后,应用用户字体,窗口可能看起来比用户想要的要小。因此,在我的 ~/.Xresource 中添加以下内容解决了这个问题:

Emacs.font: -*-fixed-*-*-*-*-8-*-*-*-*-*-*-*
Emacs.pane.menubar.*.fontList: 8x16
Emacs.menu*.fontList:         -*-fixed-*-*-*-*-8-*-*-*-*-*-*-*
Emacs.dialog*.fontList:        -*-fixed-*-*-*-*-8-*-*-*-*-*-*-*

这使得 Emacs 在启动时使用小字体,这样它的窗口就不会太大,也不会被截断。当然,您可能想在此处或在 Emacs 初始化文件中自定义您想要的字体。

于 2010-11-19T14:20:42.403 回答
2

在 Emacs 19 和 21 之间,我曾经有一个完美运行的 .emacs,通过区分默认帧和初始帧,它完全符合您的要求:

  (setq default-frame-alist '((foreground-color . "LightGray")
                  (background-color . "Black")
                  (cursor-color . "Medium Sea Green")
                  (width . 80)
                  (height . 36)
                  (menu-bar-lines . 1)
                  (vertical-scroll-bars . right)))

  (setq initial-frame-alist
                (cons '(width . 96)
                      (cons '(height . 72)
                        (cons '(menu-bar-lines . 1)
                          initial-frame-alist))))

唉,当我“升级”到 Emacs 23.2 时,上述内容不再完全。Emacs 不是我的职业。我将它用作工具,所以我不能花太多时间去研究为什么。所以我只是通过添加到 Emacs Windows XP 快捷方式“-geometry 96x72”来解决这个问题。所以快捷方式目标现在看起来:

C:\emacs-23.2\bin\runemacs.exe -geometry 96x72
于 2010-08-18T19:09:55.583 回答
1

对于windows上的emacs,我一般是放在注册表中的。

HKCU\Software\GNU\Emacs\
    Emacs.Geometry REG_SZ "245x74"

(这将机器本地设置保留在我与许多其他机器共享的 .emacs 文件之外......)

于 2008-12-02T21:39:20.320 回答