comparison src/dired.c @ 5089:99f8ebc082d9

Make #'substring an alias of #'subseq; give the latter the byte code. src/ChangeLog addition: 2010-03-03 Aidan Kehoe <kehoea@parhasard.net> * fns.c (Fsubstring): Removed. * search.c (Freplace_match): * minibuf.c (Ftry_completion): * lisp.h: * keymap.c (ensure_meta_prefix_char_keymapp): * dired.c (user_name_completion, file_name_completion): * console-x.c (x_canonicalize_console_connection): * bytecode.c (Bsubseq): * bytecode-ops.h (subseq): Move #'substring to Lisp, as an alias for #'subseq; change all C Fsubstring() calls to Fsubseq(), change the Bsubstring bytecode to Bsubseq. Motivation; not accepting vectors in #'substring is incompatible with GNU, and Common Lisp prefers #'subseq, it has no #'substring. lisp/ChangeLog addition: 2010-03-03 Aidan Kehoe <kehoea@parhasard.net> Move byte code #o117 to #'subseq, not #'substring. Make #'substring available as an alias for #'subseq in Lisp. * bytecomp.el (79, subseq, substring): * bytecomp.el (byte-compile-subseq): New. * update-elc.el (update-elc-chop-extension): Use #'subseq, not #'substring, the latter is not yet available. * subr.el (substring): New alias, to #'subseq. man/ChangeLog addition: 2010-03-03 Aidan Kehoe <kehoea@parhasard.net> * lispref/tips.texi (Comment Tips): * lispref/text.texi (Text Properties): * lispref/strings.texi (Creating Strings): * lispref/processes.texi (Input to Processes): * lispref/functions.texi (Argument List): * lispref/extents.texi (Duplicable Extents): Move examples that used substring to using subseq; in strings.texi, do not change the examples, but document that in this XEmacs, it is an alias for subseq, and that there may be some incompatibilities if you depend on that.
author Aidan Kehoe <kehoea@parhasard.net>
date Wed, 03 Mar 2010 18:40:12 +0000
parents 16112448d484
children 2e528066e2fc
comparison
equal deleted inserted replaced
5088:207dad9e74f7 5089:99f8ebc082d9
506 506
507 if (all_flag || NILP (bestmatch)) 507 if (all_flag || NILP (bestmatch))
508 return bestmatch; 508 return bestmatch;
509 if (matchcount == 1 && bestmatchsize == file_name_length) 509 if (matchcount == 1 && bestmatchsize == file_name_length)
510 return Qt; 510 return Qt;
511 return Fsubstring (bestmatch, Qzero, make_int (bestmatchsize)); 511 return Fsubseq (bestmatch, Qzero, make_int (bestmatchsize));
512 } 512 }
513 513
514 514
515 static Lisp_Object user_name_completion (Lisp_Object user, 515 static Lisp_Object user_name_completion (Lisp_Object user,
516 int all_flag, 516 int all_flag,
770 770
771 if (all_flag || NILP (bestmatch)) 771 if (all_flag || NILP (bestmatch))
772 return bestmatch; 772 return bestmatch;
773 if (matchcount == 1 && bestmatchsize == user_name_length) 773 if (matchcount == 1 && bestmatchsize == user_name_length)
774 return Qt; 774 return Qt;
775 return Fsubstring (bestmatch, Qzero, make_int (bestmatchsize)); 775 return Fsubseq (bestmatch, Qzero, make_int (bestmatchsize));
776 } 776 }
777 777
778 778
779 Lisp_Object 779 Lisp_Object
780 make_directory_hash_table (const Ibyte *path) 780 make_directory_hash_table (const Ibyte *path)