Commit aa4589a7 authored by Chong Yidong's avatar Chong Yidong
Browse files

Fix how the `character' custom type handles space chars.

* lisp/wid-edit.el (widget-field-value-get): New optional arg to
suppress trailing whitespace truncation.
(character): Use it.

Fixes: debbugs:2689
parent e1161b06
2012-02-05 Chong Yidong <cyd@gnu.org>
* wid-edit.el (widget-field-value-get): New optional arg to
suppress trailing whitespace truncation.
(character): Use it (Bug#2689).
2012-02-05 Andreas Schwab <schwab@linux-m68k.org>
* progmodes/gud.el (gud-pv): Use pv instead of pv1.
......
......@@ -1987,10 +1987,14 @@ the earlier input."
(when (overlayp overlay)
(delete-overlay overlay))))
(defun widget-field-value-get (widget)
"Return current text in editing field."
(defun widget-field-value-get (widget &optional no-truncate)
"Return current text in editing field.
Normally, trailing spaces within the editing field are truncated.
But if NO-TRUNCATE is non-nil, include them."
(let ((from (widget-field-start widget))
(to (widget-field-text-end widget))
(to (if no-truncate
(widget-field-end widget)
(widget-field-text-end widget)))
(buffer (widget-field-buffer widget))
(secret (widget-get widget :secret))
(old (current-buffer)))
......@@ -3407,6 +3411,7 @@ To use this type, you must define :match or :match-alternatives."
:format "%{%t%}: %v\n"
:valid-regexp "\\`.\\'"
:error "This field should contain a single character"
:value-get (lambda (w) (widget-field-value-get w t))
:value-to-internal (lambda (_widget value)
(if (stringp value)
value
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment