rbr4@uhura.cc.rochester.edu (Roland Roberts) (12/02/88)
Mark D Baushke <mdb@rutgers.edu> sent me a copy of unix diff output for the changes I made to sort.el. He also suggested having the use of UN*X sort(1) be conditional --- quite reasonable and obvious in hindsight. So I made the changes. Since I have access to a unix system, I've already tested this both on vms and unix and it works fine. The test is whether or not system-type is vax-vms. I don't know of anyone else who needs this test, so I didn't include it Also, my apologies for posting twice to those of you on bug-gnu-emacs, I didn't realize everything on info-gnu-emacs was sent to you.... *** dist-18.52/lisp/sort.el-dist Thu Dec 1 21:58:44 1988 --- dist-18.52/lisp/sort.el Thu Dec 1 21:58:21 1988 *************** *** 321,327 **** A prefix argument means sort into reverse order. ! Note that sort-columns uses the sort utility program and therefore ! cannot work on text containing TAB characters. Use M-x untabify ! to convert tabs to spaces before sorting." (interactive "P\nr") (save-excursion --- 321,327 ---- A prefix argument means sort into reverse order. ! Note that except on vax-vms systems, sort-columns uses the sort utility ! program and therefore cannot work on text containing TAB characters. ! Use M-x untabify to convert tabs to spaces before sorting." (interactive "P\nr") (save-excursion *************** *** 337,344 **** (setq col-start (min col-beg1 col-end1)) (setq col-end (max col-beg1 col-end1)) ! (if (search-backward "\t" beg1 t) ! (error "sort-columns does not work with tabs. Use M-x untabify.")) ! (call-process-region beg1 end1 "sort" t t nil ! (if reverse "-rt\n" "-t\n") ! (concat "+0." col-start) ! (concat "-0." col-end))))) --- 337,351 ---- (setq col-start (min col-beg1 col-end1)) (setq col-end (max col-beg1 col-end1)) ! (if (eq system-type 'vax-vms) ! (save-restriction ! (narrow-to-region beg1 end1) ! (goto-char beg1) ! (sort-subr reverse 'forward-line 'end-of-line ! (function (lambda () (move-to-column col-start) nil)) ! (function (lambda () (move-to-column col-end) nil)))) ! (if (search-backward "\t" beg1 t) ! (error "sort-columns does not work with tabs. Use M-x untabify.") ! (call-process-region beg1 end1 "sort" t t nil ! (if reverse "-rt\n" "-t\n") ! (concat "+0." col-start) ! (concat "-0." col-end))))))) -- Roland Roberts BITNET: roberts@uornsrl Nuclear Structure Research Lab INTERNET: rbr4@uhura.cc.rochester.edu 271 East River Road UUCP: rochester!ur-cc!rbr4 Rochester, NY 14267 AT&T: (716) 275-8962