comparison lisp/select.el @ 89943:4c90ffeb71c5

Revision: miles@gnu.org--gnu-2004/emacs--unicode--0--patch-15 Merge from emacs--cvs-trunk--0 Patches applied: * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-218 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-220 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-221 Restore deleted tagline in etc/TUTORIAL.ru * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-222 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-228 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-229 Remove TeX output files from the archive * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-230 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-247 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-248 src/lisp.h (CYCLE_CHECK): Macro moved from xfaces.c * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-249 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-256 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-258 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-263 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-264 Update from CVS: lispref/display.texi: emacs -> Emacs. * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-265 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-274 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-275 Update from CVS: man/makefile.w32-in: Revert last change * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-276 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-295 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-296 Allow restarting an existing debugger session that's exited * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-297 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-299 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-300 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-327 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-328 Update from CVS: src/.gdbinit (xsymbol): Fix last change. * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-329 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-344 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-345 Tweak source regexps so that building in place won't cause problems * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-346 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-351 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-352 Update from CVS: lisp/flymake.el: New file. * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-353 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-361 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-362 Support " [...]" style defaults in minibuffer-electric-default-mode * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-363 (read-number): Use canonical format for default in prompt. * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-364 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-367 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-368 Improve display-supports-face-attributes-p on non-ttys * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-369 Rewrite face-differs-from-default-p * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-370 Move `display-supports-face-attributes-p' entirely into C code * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-371 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-372 Simplify face-differs-from-default-p; don't consider :stipple. * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-373 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-374 (tty_supports_face_attributes_p): Ensure attributes differ from default * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-375 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-376 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-377 (Fdisplay_supports_face_attributes_p): Work around bootstrapping problem * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-378 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-380 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-381 Face merging cleanups * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-382 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-384 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-385 src/xfaces.c (push_named_merge_point): Return 0 if a cycle is detected * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-386 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-395 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-396 Tweak arch tagging to make build/install-in-place less annoying * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-397 Work around vc-arch problems when building eshell * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-398 Tweak permissions * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-399 Tweak directory permissions * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-400 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-401 More build-in-place tweaking of arch tagging * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-402 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-403 Yet more build-in-place tweaking of arch tagging * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-404 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-409 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-410 Make sure image types are initialized for lookup too * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-411 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-416 Update from CVS
author Miles Bader <miles@gnu.org>
date Mon, 28 Jun 2004 07:56:49 +0000
parents 68c22ea6027c f2f742f020fb
children c08afac24467
comparison
equal deleted inserted replaced
89942:9cb747ae49af 89943:4c90ffeb71c5
174 str 174 str
175 (setq coding (or next-selection-coding-system selection-coding-system)) 175 (setq coding (or next-selection-coding-system selection-coding-system))
176 (if coding 176 (if coding
177 (setq coding (coding-system-base coding)) 177 (setq coding (coding-system-base coding))
178 (setq coding 'raw-text)) 178 (setq coding 'raw-text))
179 ;; Suppress producing escape sequences for compositions. 179 (let ((inhibit-read-only t))
180 (remove-text-properties 0 (length str) '(composition nil) str) 180 ;; Suppress producing escape sequences for compositions.
181 (cond 181 (remove-text-properties 0 (length str) '(composition nil) str)
182 ((eq type 'TEXT) 182 (cond
183 (if (not (multibyte-string-p str)) 183 ((eq type 'TEXT)
184 ;; Don't have to encode unibyte string. 184 (if (not (multibyte-string-p str))
185 (setq type 'STRING) 185 ;; Don't have to encode unibyte string.
186 ;; If STR contains only ASCII, Latin-1, and raw bytes, 186 (setq type 'STRING)
187 ;; encode STR by iso-latin-1, and return it as type 187 ;; If STR contains only ASCII, Latin-1, and raw bytes,
188 ;; `STRING'. Otherwise, encode STR by CODING. In that 188 ;; encode STR by iso-latin-1, and return it as type
189 ;; case, the returing type depends on CODING. 189 ;; `STRING'. Otherwise, encode STR by CODING. In that
190 (let ((charsets (find-charset-string str))) 190 ;; case, the returing type depends on CODING.
191 (setq charsets 191 (let ((charsets (find-charset-string str)))
192 (delq 'ascii 192 (setq charsets
193 (delq 'latin-iso8859-1 193 (delq 'ascii
194 (delq 'eight-bit-control 194 (delq 'latin-iso8859-1
195 (delq 'eight-bit-graphic charsets))))) 195 (delq 'eight-bit-control
196 (if charsets 196 (delq 'eight-bit-graphic charsets)))))
197 (setq str (encode-coding-string str coding) 197 (if charsets
198 type (if (memq coding '(compound-text 198 (setq str (encode-coding-string str coding)
199 compound-text-with-extensions)) 199 type (if (memq coding '(compound-text
200 'COMPOUND_TEXT 200 compound-text-with-extensions))
201 'STRING)) 201 'COMPOUND_TEXT
202 (setq type 'STRING 202 'STRING))
203 str (encode-coding-string str 'iso-latin-1)))))) 203 (setq type 'STRING
204 204 str (encode-coding-string str 'iso-latin-1))))))
205 ((eq type 'COMPOUND_TEXT) 205
206 (setq str (encode-coding-string str coding))) 206 ((eq type 'COMPOUND_TEXT)
207 207 (setq str (encode-coding-string str coding)))
208 ((eq type 'STRING) 208
209 (if (memq coding '(compound-text 209 ((eq type 'STRING)
210 compound-text-with-extensions)) 210 (if (memq coding '(compound-text
211 (setq str (string-make-unibyte str)) 211 compound-text-with-extensions))
212 (setq str (encode-coding-string str coding)))) 212 (setq str (string-make-unibyte str))
213 213 (setq str (encode-coding-string str coding))))
214 ((eq type 'UTF8_STRING) 214
215 (setq str (encode-coding-string str 'utf-8))) 215 ((eq type 'UTF8_STRING)
216 216 (setq str (encode-coding-string str 'utf-8)))
217 (t 217
218 (error "Unknow selection type: %S" type)) 218 (t
219 )) 219 (error "Unknow selection type: %S" type))
220 )))
220 221
221 (setq next-selection-coding-system nil) 222 (setq next-selection-coding-system nil)
222 (cons type str)))) 223 (cons type str))))
223 224
224 225