Mercurial > emacs
comparison etc/PROBLEMS @ 35645:141f70353995
Add two items with solutions for Calc problems.
author | Eli Zaretskii <eliz@gnu.org> |
---|---|
date | Sat, 27 Jan 2001 13:00:18 +0000 |
parents | 3546f5667493 |
children | a3e5066d2077 |
comparison
equal
deleted
inserted
replaced
35644:e504a8bd3e9a | 35645:141f70353995 |
---|---|
218 - (setq after-change-function 'sgml-set-face-after-change) | 218 - (setq after-change-function 'sgml-set-face-after-change) |
219 + (setq before-change-functions '(sgml-note-change-at)) | 219 + (setq before-change-functions '(sgml-note-change-at)) |
220 + (setq after-change-functions '(sgml-set-face-after-change)) | 220 + (setq after-change-functions '(sgml-set-face-after-change)) |
221 ) | 221 ) |
222 | 222 |
223 * The Calc package fails to build and signals errors with Emacs 21. | |
224 | |
225 Apply the following patches which reportedly fix several problems: | |
226 | |
227 --- calc-ext.el.~1~ Sun Apr 3 02:26:34 1994 | |
228 +++ calc-ext.el Wed Sep 18 17:35:01 1996 | |
229 @@ -1354,6 +1354,25 @@ | |
230 (calc-fancy-prefix 'calc-inverse-flag "Inverse..." n) | |
231 ) | |
232 | |
233 +(defconst calc-fancy-prefix-map | |
234 + (let ((map (make-sparse-keymap))) | |
235 + (define-key map [t] 'calc-fancy-prefix-other-key) | |
236 + (define-key map (vector meta-prefix-char t) 'calc-fancy-prefix-other-key) | |
237 + (define-key map [switch-frame] nil) | |
238 + (define-key map [?\C-u] 'universal-argument) | |
239 + (define-key map [?0] 'digit-argument) | |
240 + (define-key map [?1] 'digit-argument) | |
241 + (define-key map [?2] 'digit-argument) | |
242 + (define-key map [?3] 'digit-argument) | |
243 + (define-key map [?4] 'digit-argument) | |
244 + (define-key map [?5] 'digit-argument) | |
245 + (define-key map [?6] 'digit-argument) | |
246 + (define-key map [?7] 'digit-argument) | |
247 + (define-key map [?8] 'digit-argument) | |
248 + (define-key map [?9] 'digit-argument) | |
249 + map) | |
250 + "Keymap used while processing calc-fancy-prefix.") | |
251 + | |
252 (defun calc-fancy-prefix (flag msg n) | |
253 (let (prefix) | |
254 (calc-wrapper | |
255 @@ -1364,6 +1383,8 @@ | |
256 (message (if prefix msg ""))) | |
257 (and prefix | |
258 (not calc-is-keypad-press) | |
259 + (if (boundp 'overriding-terminal-local-map) | |
260 + (setq overriding-terminal-local-map calc-fancy-prefix-map) | |
261 (let ((event (calc-read-key t))) | |
262 (if (eq (setq last-command-char (car event)) ?\C-u) | |
263 (universal-argument) | |
264 @@ -1376,9 +1397,18 @@ | |
265 (if (or (not (integerp last-command-char)) | |
266 (eq last-command-char ?-)) | |
267 (calc-unread-command) | |
268 - (digit-argument n)))))) | |
269 + (digit-argument n))))))) | |
270 ) | |
271 (setq calc-is-keypad-press nil) | |
272 + | |
273 +(defun calc-fancy-prefix-other-key (arg) | |
274 + (interactive "P") | |
275 + (if (or (not (integerp last-command-char)) | |
276 + (and (>= last-command-char 0) (< last-command-char ? ) | |
277 + (not (eq last-command-char meta-prefix-char)))) | |
278 + (calc-wrapper)) ; clear flags if not a Calc command. | |
279 + (calc-unread-command) | |
280 + (setq overriding-terminal-local-map nil)) | |
281 | |
282 (defun calc-invert-func () | |
283 (save-excursion | |
284 | |
285 --- Makefile.~1~ Sun Dec 15 23:50:45 1996 | |
286 +++ Makefile Thu Nov 30 15:09:45 2000 | |
287 @@ -41,7 +41,7 @@ | |
288 | |
289 # Other macros. | |
290 EFLAGS = -batch | |
291 -MAINT = -l calc-maint.elc | |
292 +MAINT = -l calc-maint.el | |
293 | |
294 # Control whether intermediate files are kept. | |
295 PURGE = -rm -f | |
296 @@ -154,10 +154,7 @@ | |
297 | |
298 | |
299 # All this because "-l calc-maint" doesn't work. | |
300 -maint: calc-maint.elc | |
301 -calc-maint.elc: calc-maint.el | |
302 - cp calc-maint.el calc-maint.elc | |
303 - | |
304 +maint: calc-maint.el | |
305 | |
306 # Create an Emacs TAGS file | |
307 tags: TAGS | |
308 | |
309 --- calc-aent.el.~1~ Sun Dec 15 23:50:36 1996 | |
310 +++ calc-aent.el Tue Nov 21 18:34:33 2000 | |
311 @@ -385,7 +385,7 @@ | |
312 (calc-minibuffer-contains | |
313 "\\`\\([^\"]*\"[^\"]*\"\\)*[^\"]*\"[^\"]*\\'")) | |
314 (insert "`") | |
315 - (setq alg-exp (buffer-string)) | |
316 + (setq alg-exp (field-string)) | |
317 (and (> (length alg-exp) 0) (setq calc-previous-alg-entry alg-exp)) | |
318 (exit-minibuffer)) | |
319 ) | |
320 @@ -393,14 +393,14 @@ | |
321 | |
322 (defun calcAlg-enter () | |
323 (interactive) | |
324 - (let* ((str (buffer-string)) | |
325 + (let* ((str (field-string)) | |
326 (exp (and (> (length str) 0) | |
327 (save-excursion | |
328 (set-buffer calc-buffer) | |
329 (math-read-exprs str))))) | |
330 (if (eq (car-safe exp) 'error) | |
331 (progn | |
332 - (goto-char (point-min)) | |
333 + (goto-char (field-beginning)) | |
334 (forward-char (nth 1 exp)) | |
335 (beep) | |
336 (calc-temp-minibuffer-message | |
337 @@ -455,14 +455,14 @@ | |
338 (interactive) | |
339 (if (calc-minibuffer-contains ".*[@oh] *[^'m ]+[^'m]*\\'") | |
340 (calcDigit-key) | |
341 - (setq calc-digit-value (buffer-string)) | |
342 + (setq calc-digit-value (field-string)) | |
343 (exit-minibuffer)) | |
344 ) | |
345 | |
346 (defun calcDigit-edit () | |
347 (interactive) | |
348 (calc-unread-command) | |
349 - (setq calc-digit-value (buffer-string)) | |
350 + (setq calc-digit-value (field-string)) | |
351 (exit-minibuffer) | |
352 ) | |
353 | |
354 --- calc.el.~1~ Sun Dec 15 23:50:47 1996 | |
355 +++ calc.el Wed Nov 22 13:08:49 2000 | |
356 @@ -2051,11 +2051,11 @@ | |
357 ;; Exercise for the reader: Figure out why this is a good precaution! | |
358 (or (boundp 'calc-buffer) | |
359 (use-local-map minibuffer-local-map)) | |
360 - (let ((str (buffer-string))) | |
361 + (let ((str (field-string))) | |
362 (setq calc-digit-value (save-excursion | |
363 (set-buffer calc-buffer) | |
364 (math-read-number str)))) | |
365 - (if (and (null calc-digit-value) (> (buffer-size) 0)) | |
366 + (if (and (null calc-digit-value) (> (field-end) (field-beginning))) | |
367 (progn | |
368 (beep) | |
369 (calc-temp-minibuffer-message " [Bad format]")) | |
370 @@ -2071,7 +2071,7 @@ | |
371 | |
372 (defun calc-minibuffer-contains (rex) | |
373 (save-excursion | |
374 - (goto-char (point-min)) | |
375 + (goto-char (field-end (point-min))) | |
376 (looking-at rex)) | |
377 ) | |
378 | |
379 @@ -2158,10 +2158,8 @@ | |
380 (upcase last-command-char)))) | |
381 (and dig | |
382 (< dig radix))))))) | |
383 - (save-excursion | |
384 - (goto-char (point-min)) | |
385 - (looking-at | |
386 - "[-+]?\\(.*\\+/- *\\|.*mod *\\)?\\([0-9]+\\.?0*[@oh] *\\)?\\([0-9]+\\.?0*['m] *\\)?[0-9]*\\(\\.?[0-9]*\\(e[-+]?[0-3]?[0-9]?[0-9]?[0-9]?[0-9]?[0-9]?[0-9]?\\)?\\|[0-9]:\\([0-9]+:\\)?[0-9]*\\)?[\"s]?\\'"))) | |
387 + (calc-minibuffer-contains | |
388 + "[-+]?\\(.*\\+/- *\\|.*mod *\\)?\\([0-9]+\\.?0*[@oh] *\\)?\\([0-9]+\\.?0*['m] *\\)?[0-9]*\\(\\.?[0-9]*\\(e[-+]?[0-3]?[0-9]?[0-9]?[0-9]?[0-9]?[0-9]?[0-9]?\\)?\\|[0-9]:\\([0-9]+:\\)?[0-9]*\\)?[\"s]?\\'")) | |
389 (if (and (memq last-command-char '(?@ ?o ?h ?\' ?m)) | |
390 (string-match " " calc-hms-format)) | |
391 (insert " ")) | |
392 @@ -2190,7 +2188,7 @@ | |
393 ((eq last-command 'calcDigit-start) | |
394 (erase-buffer)) | |
395 (t (backward-delete-char 1))) | |
396 - (if (= (buffer-size) 0) | |
397 + (if (= (field-beginning) (field-end)) | |
398 (progn | |
399 (setq last-command-char 13) | |
400 (calcDigit-nondigit))) | |
401 | |
402 * TeX'ing the Calc manual fails. | |
403 | |
404 The following patches allow to build the Calc manual using texinfo.tex | |
405 from Emacs 19.34 distribution: | |
406 | |
407 *** calc-maint.e~0 Mon Dec 16 07:11:26 1996 | |
408 --- calc-maint.el Sun Dec 10 14:32:38 2000 | |
409 *************** | |
410 *** 308,314 **** | |
411 (insert "@tex\n" | |
412 "\\global\\advance\\appendixno2\n" | |
413 "\\gdef\\xref#1.{See ``#1.''}\n") | |
414 ! (setq midpos (point)) | |
415 (insert "@end tex\n") | |
416 (insert-buffer-substring srcbuf sumpos endpos) | |
417 (insert "@bye\n") | |
418 --- 308,314 ---- | |
419 (insert "@tex\n" | |
420 "\\global\\advance\\appendixno2\n" | |
421 "\\gdef\\xref#1.{See ``#1.''}\n") | |
422 ! (setq midpos (point-marker)) | |
423 (insert "@end tex\n") | |
424 (insert-buffer-substring srcbuf sumpos endpos) | |
425 (insert "@bye\n") | |
426 *** Makefile.~0 Mon Dec 16 07:11:24 1996 | |
427 --- Makefile Sun Dec 10 14:44:00 2000 | |
428 *************** | |
429 *** 98,106 **** | |
430 # Format the Calc manual as one printable volume using TeX. | |
431 tex: | |
432 $(REMOVE) calc.aux | |
433 ! $(TEX) calc.texinfo | |
434 $(TEXINDEX) calc.[cfkptv]? | |
435 ! $(TEX) calc.texinfo | |
436 $(PURGE) calc.cp calc.fn calc.pg calc.tp calc.vr | |
437 $(PURGE) calc.cps calc.fns calc.kys calc.pgs calc.tps calc.vrs | |
438 $(PURGE) calc.toc | |
439 --- 98,106 ---- | |
440 # Format the Calc manual as one printable volume using TeX. | |
441 tex: | |
442 $(REMOVE) calc.aux | |
443 ! -$(TEX) calc.texinfo | |
444 $(TEXINDEX) calc.[cfkptv]? | |
445 ! -$(TEX) calc.texinfo | |
446 $(PURGE) calc.cp calc.fn calc.pg calc.tp calc.vr | |
447 $(PURGE) calc.cps calc.fns calc.kys calc.pgs calc.tps calc.vrs | |
448 $(PURGE) calc.toc | |
449 *** calc.texinfo.~1~ Thu Oct 10 18:18:56 1996 | |
450 --- calc.texinfo Mon Dec 11 08:25:00 2000 | |
451 *************** | |
452 *** 12,17 **** | |
453 --- 12,19 ---- | |
454 % Because makeinfo.c exists, we can't just define new commands. | |
455 % So instead, we take over little-used existing commands. | |
456 % | |
457 + % Suggested by Karl Berry <karl@@freefriends.org> | |
458 + \gdef\!{\mskip-\thinmuskip} | |
459 % Redefine @cite{text} to act like $text$ in regular TeX. | |
460 % Info will typeset this same as @samp{text}. | |
461 \gdef\goodtex{\tex \let\rm\goodrm \let\t\ttfont \turnoffactive} | |
462 *************** | |
463 *** 23686,23692 **** | |
464 a vector of the actual parameter values, written as equations: | |
465 @cite{[a = 3, b = 2]}, in case you'd rather read them in a list | |
466 than pick them out of the formula. (You can type @kbd{t y} | |
467 ! to move this vector to the stack; @pxref{Trail Commands}) | |
468 | |
469 Specifying a different independent variable name will affect the | |
470 resulting formula: @kbd{a F 1 k RET} produces @kbd{3 + 2 k}. | |
471 --- 23689,23695 ---- | |
472 a vector of the actual parameter values, written as equations: | |
473 @cite{[a = 3, b = 2]}, in case you'd rather read them in a list | |
474 than pick them out of the formula. (You can type @kbd{t y} | |
475 ! to move this vector to the stack; see @ref{Trail Commands}.) | |
476 | |
477 Specifying a different independent variable name will affect the | |
478 resulting formula: @kbd{a F 1 k RET} produces @kbd{3 + 2 k}. | |
479 | |
480 | |
223 * On systems with shared libraries you might encounter run-time errors | 481 * On systems with shared libraries you might encounter run-time errors |
224 from the dynamic linker telling you that it is unable to find some | 482 from the dynamic linker telling you that it is unable to find some |
225 shared libraries, for instance those for Xaw3d or image support. | 483 shared libraries, for instance those for Xaw3d or image support. |
226 These errors mean Emacs has been linked with a library whose shared | 484 These errors mean Emacs has been linked with a library whose shared |
227 library is not in the default search path of the dynamic linker. | 485 library is not in the default search path of the dynamic linker. |