設定は無視されていません。上記の動作が見られる理由は、before-make-frame-hook
上と左に 25 を追加する ns-win.el が原因です。
上記の影響を回避するには、以下を .emacs ファイルに追加します。
(setq default-frame-alist '((left . 0) (top . 0) (width . 80) (height . 55)))
(defvar parameters)
(add-hook 'before-make-frame-hook
(lambda ()
(let ((left (cdr (assq 'left (frame-parameters))))
(top (cdr (assq 'top (frame-parameters)))))
(setq parameters (cons (cons 'left (+ left 0))
(cons (cons 'top (+ top 0))
parameters))))))
上記が機能しない場合は、 から取得した次の方法を試すことができますns-win.el before-make-frame-hook
。
(setq default-frame-alist '((left . 0) (top . 0) (width . 80) (height . 55)))
(defvar parameters)
(add-hook 'before-make-frame-hook
(lambda ()
(let ((left (cdr (assq 'left (frame-parameters))))
(top (cdr (assq 'top (frame-parameters)))))
(if (consp left) (setq left (cadr left)))
(if (consp top) (setq top (cadr top)))
(cond
((or (assq 'top parameters) (assq 'left parameters)))
((or (not left) (not top)))
(t
(setq parameters (cons (cons 'left (+ left 0))
(cons (cons 'top (+ top 0))
parameters))))))))