GNU bug report logs -
#2532
NS: ns-expand-space / slider in Preferences dialog not functional
Previous Next
Full log
Message #17 received at 2532 <at> emacsbugs.donarmstrong.com (full text, mbox):
[Message part 1 (text/plain, inline)]
On 4 Mar 2009, at 16:35, Adrian Robert wrote:
>> Setting `ns-expand-space' doesn't work, and neither does changing its
>> value via the slider the the preferences panel.
>>
>> Also, the doc string of the above variable says that one shouldn't
>> set
>> it directly - if so, how is one supposed to (programmatically) set
>> this?
>> Studying the source code (nsterm.m:setValuesFromPanel), it seems to
>> me
>> that setting the value should work just fine (I even tried calling
>> ns-
>> save-preferences).
>
> Emacs must be restarted, unfortunately. It mentions this in the
> manual. The variable doc string should be updated.
>
The UI does not reflect that. Users need some indication that they
need to restart Emacs for this to work.
The `ns-set-resource' Elisp interface is better than none on the Elisp
side, but what happened to Emacs customization variables?
As said before on this list, introducing another way (beyond .emacs
and customization/custom-file) creates a new failure point for
people's configurations. This is bad in two respects: they won't be
able to reset Emacs to a vanilla state, or troubleshoot a faulty
configuration. And, second, it is going to be harder on us to
troubleshoot people's problems. Right now, with GNU Emacs 22, we have
~/.emacs and ~/.emacs.d (IIRC), and maybe a few site-lisp files. I
speak from experience - in Aquamacs, youthful optimism led me to add
eight further locations for a version of .emacs called Preferences.el
- two would have done the job to satisfy my goal of Mac
compatibility. In addition to that, we split custom-file from .emacs
(a good choice, per se). All of these things make it harder to
support users. "emacs -q" is helpful, but at the end of the day,
people want to run "emacs". Especially seasoned users will complain
that they have to find and delete ~/Library/Preferences/
org.gnu.emacs.plist.
In anticipation of one pro-resource argument: X Resources are much
more limited than the NS parameters system. Why recreate it on NS?
What follows is an excerpt from ns-win.el that shows how many of these
"NS resources" are set.
(ns-set-resource nil "AlternateModifier" (symbol-name ns-alternate-
modifier))
(ns-set-resource nil "CommandModifier" (symbol-name ns-command-
modifier))
(ns-set-resource nil "ControlModifier" (symbol-name ns-control-
modifier))
(ns-set-resource nil "FunctionModifier" (symbol-name ns-function-
modifier))
(ns-set-resource nil "ExpandSpace"
(if ns-expand-space
(number-to-string ns-expand-space)
"NO"))
(ns-set-resource nil "GSFontAntiAlias" (if ns-antialias-text "YES"
"NO"))
(ns-set-resource nil "UseQuickdrawSmoothing"
(if ns-use-qd-smoothing "YES" "NO"))
(ns-set-resource nil "UseSystemHighlightColor"
(if ns-use-system-highlight-color "YES" "NO"))
(ns-set-resource nil "ConfirmQuit"
(if ns-confirm-quit "YES" "NO"))
;; Default frame parameters
(let ((p (frame-parameters))
v)
(if (setq v (assq 'font p))
(ns-set-resource nil "Font" (ns-font-name (cdr v))))
(if (setq v (assq 'fontsize p))
...
(let ((fl (face-list)))
(while (consp fl)
(or (eq 'default (car fl))
;; dont save Default* since it causes all created faces to
;; inherit its values. The properties of the default face
;; have already been saved from the frame-parameters anyway.
(let* ((name (symbol-name (car fl)))
(font (face-font (car fl)))
;; (fontsize (face-fontsize (car fl)))
(foreground (face-foreground (car fl)))
(background (face-background (car fl)))
(underline (face-underline-p (car fl)))
(italic (face-italic-p (car fl)))
(bold (face-bold-p (car fl)))
(stipple (face-stipple (car fl))))
;; (ns-set-resource nil (concat name ".attributeFont")
;; (if font font nil))
;; (ns-set-resource nil (concat name ".attributeFontSize")
;; (if fontsize (number-to-string
fontsize) nil))
(ns-set-resource nil (concat name ".attributeForeground")
(if foreground foreground nil))
(ns-set-resource nil (concat name ".attributeBackground")
(if background background nil))
(ns-set-resource nil (concat name ".attributeUnderline")
...
[smime.p7s (application/pkcs7-signature, attachment)]
This bug report was last modified 16 years and 79 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.