unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Re: Bug#443439: emacs: run-octave captures the shell directory tracker
       [not found]       ` <18163.59086.203111.308676@segfault.lan>
@ 2007-09-22 11:57         ` Richard Stallman
  2007-10-05 17:56           ` John W. Eaton
  0 siblings, 1 reply; 3+ messages in thread
From: Richard Stallman @ 2007-09-22 11:57 UTC (permalink / raw)
  To: John W. Eaton; +Cc: schwab, pot, emacs-devel

    This patch does not apply cleanly to the octave-inf.el file that is
    distributed with Octave.  I think the octave-{inf,mod,hlp}.el files
    that are included with Emacs have diverged from the versions that are
    distributed with Octave.  It would be helpful if someone could
    reconcile the differences.

Have both versions been differently maintained?  If only the versions
in Emacs have been changed, then it's simple.

      Should we even continue to distribute
    these files with Octave?

I think there is no reason to do so, now that they are in Emacs.
However, if improvements have been made in the versions distributed
with Octave, we should merge them into Emacs.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Bug#443439: emacs: run-octave captures the shell directory tracker
  2007-09-22 11:57         ` Bug#443439: emacs: run-octave captures the shell directory tracker Richard Stallman
@ 2007-10-05 17:56           ` John W. Eaton
  2007-10-06  1:52             ` Glenn Morris
  0 siblings, 1 reply; 3+ messages in thread
From: John W. Eaton @ 2007-10-05 17:56 UTC (permalink / raw)
  To: rms; +Cc: schwab, pot, emacs-devel, John W. Eaton

[-- Attachment #1: message body text --]
[-- Type: text/plain, Size: 1369 bytes --]

On 22-Sep-2007, Richard Stallman wrote:

|     This patch does not apply cleanly to the octave-inf.el file that is
|     distributed with Octave.  I think the octave-{inf,mod,hlp}.el files
|     that are included with Emacs have diverged from the versions that are
|     distributed with Octave.  It would be helpful if someone could
|     reconcile the differences.
| 
| Have both versions been differently maintained?  If only the versions
| in Emacs have been changed, then it's simple.
| 
|       Should we even continue to distribute
|     these files with Octave?
| 
| I think there is no reason to do so, now that they are in Emacs.
| However, if improvements have been made in the versions distributed
| with Octave, we should merge them into Emacs.

Sorry for the delay in responding.

The only reason I can think of is if some Octave users have lost their
way and are XEmacs users.  But then I think the fix is relatively easy
at this point as it only requires removing the last two args from the
calls to define-abbrev.

In any case, I'd rather not have duplicated versions, so I'm happy to
remove the Octave mode files from the Octave distribution and
recommend that people use GNU Emacs for editing Octave files.

I noticed the following changes that were in my copy of octave-mod.el
are not in the latest version in the Emacs CVS archive.

Thanks,

jwe



[-- Attachment #2: diffs --]
[-- Type: text/plain, Size: 8306 bytes --]

2007-10-05  John W. Eaton  <jwe@octave.org>

	* octave-mod.el: Include abbrev for "until".
	(octave-begin-keywords): Include "do" in list.
	(octave-end-keywords): Remove "end" from list.
	(octave-block-match-alist): Remove end from lists of block-end
	keywords.
	(octave-reserved-words): Include "end" in the list.  Remove
	"all_va_args", "gplot", and "gsplot".
	(octave-text-functions): Remove "gset", "gshow", "set", and "show"
	from the list.
	(octave-variables): Remove "IMAGEPATH", "INFO_FILE",
	"INFO_PROGRAM", "LOADPATH", "__error_text__", "automatic_replot",
	"default_return_value", "define_all_return_values",
	"do_fortran_indexing", "empty_list_elements_ok",
	"gnuplot_has_multiplot", "implicit_str_to_num_ok",
	"ok_to_lose_imaginary_part", "prefer_column_vectors",
	"prefer_zero_one_indexing", "propagate_empty_matrices",
	"resize_on_range_error", "treat_neg_dim_as_zero",
	"warn_assign_as_truth_value", "warn_comma_in_global_decl",
	"warn_divide_by_zero", "warn_function_name_clash",
	"warn_missing_semicolon", "whitespace_in_literal_matrix" from the
	list.  Add "DEFAULT_EXEC_PATH", "DEFAULT_LOADPATH", "IMAGE_PATH",
	"crash_dumps_octave_core", "sighup_dumps_octave_core",
	"sigterm_dumps_octave_core" to the list.
	(octave-mode): Update ftp site address.


diff -ur emacs-cvs-orig/octave-mod.el emacs-cvs/octave-mod.el
--- emacs-cvs-orig/octave-mod.el	2007-10-05 12:52:05.000000000 -0400
+++ emacs-cvs/octave-mod.el	2007-10-05 13:05:53.000000000 -0400
@@ -89,6 +89,7 @@
   (define-abbrev octave-abbrev-table "`r" "return" nil 0 t)
   (define-abbrev octave-abbrev-table "`s" "switch" nil 0 t)
   (define-abbrev octave-abbrev-table "`t" "try" nil 0 t)
+  (define-abbrev octave-abbrev-table "`u" "until ()" nil 0 t)
   (define-abbrev octave-abbrev-table "`up" "unwind_protect" nil 0 t)
   (define-abbrev octave-abbrev-table "`upc" "unwind_protect_cleanup" nil 0 t)
   (define-abbrev octave-abbrev-table "`w" "while ()" nil 0 t))
@@ -102,32 +103,34 @@
   "Regexp to match the start of an Octave comment up to its body.")
 
 (defvar octave-begin-keywords
-  '("for" "function" "if" "switch" "try" "unwind_protect" "while"))
+  '("do" "for" "function" "if" "switch" "try" "unwind_protect" "while"))
 (defvar octave-else-keywords
   '("case" "catch" "else" "elseif" "otherwise" "unwind_protect_cleanup"))
+;; FIXME: only use specific "end" tokens here to avoid confusion when "end"
+;; is used in indexing (the real fix is much more complex).
 (defvar octave-end-keywords
-  '("end" "endfor" "endfunction" "endif" "endswitch" "end_try_catch"
-    "end_unwind_protect" "endwhile"))
+  '("endfor" "endfunction" "endif" "endswitch" "end_try_catch"
+    "end_unwind_protect" "endwhile" "until"))
 
 (defvar octave-reserved-words
   (append octave-begin-keywords
 	  octave-else-keywords
 	  octave-end-keywords
-	  '("all_va_args" "break" "continue" "global" "gplot" "gsplot"
-	    "replot" "return"))
+	  '("break" "continue" "end" "global" "persistent" "return"))
   "Reserved words in Octave.")
 
 (defvar octave-text-functions
   '("casesen" "cd" "chdir" "clear" "diary" "dir" "document" "echo"
-    "edit_history" "format" "gset" "gshow" "help" "history" "hold"
-    "load" "ls" "more" "run_history" "save" "set" "show" "type"
+    "edit_history" "format" "help" "history" "hold"
+    "load" "ls" "more" "run_history" "save" "type"
     "which" "who" "whos")
-  "Text functions in Octave (these names are also reserved).")
+  "Text functions in Octave.")
 
 (defvar octave-variables
-  '("EDITOR" "EXEC_PATH" "F_DUPFD" "F_GETFD" "F_GETFL" "F_SETFD"
-    "F_SETFL" "I" "IMAGEPATH" "INFO_FILE" "INFO_PROGRAM" "Inf" "J"
-    "LOADPATH" "NaN" "OCTAVE_VERSION" "O_APPEND" "O_CREAT" "O_EXCL"
+  '("DEFAULT_EXEC_PATH" "DEFAULT_LOADPATH"
+    "EDITOR" "EXEC_PATH" "F_DUPFD" "F_GETFD" "F_GETFL" "F_SETFD"
+    "F_SETFL" "I" "IMAGE_PATH" "Inf" "J"
+    "NaN" "OCTAVE_VERSION" "O_APPEND" "O_CREAT" "O_EXCL"
     "O_NONBLOCK" "O_RDONLY" "O_RDWR" "O_TRUNC" "O_WRONLY" "PAGER" "PS1"
     "PS2" "PS4" "PWD" "SEEK_CUR" "SEEK_END" "SEEK_SET" "__F_DUPFD__"
     "__F_GETFD__" "__F_GETFL__" "__F_SETFD__" "__F_SETFL__" "__I__"
@@ -135,29 +138,23 @@
     "__O_CREAT__" "__O_EXCL__" "__O_NONBLOCK__" "__O_RDONLY__"
     "__O_RDWR__" "__O_TRUNC__" "__O_WRONLY__" "__PWD__" "__SEEK_CUR__"
     "__SEEK_END__" "__SEEK_SET__" "__argv__" "__e__" "__eps__"
-    "__error_text__" "__i__" "__inf__" "__j__" "__nan__" "__pi__"
+    "__i__" "__inf__" "__j__" "__nan__" "__pi__"
     "__program_invocation_name__" "__program_name__" "__realmax__"
     "__realmin__" "__stderr__" "__stdin__" "__stdout__" "ans" "argv"
-    "automatic_replot" "beep_on_error" "completion_append_char"
-    "default_return_value" "default_save_format"
-    "define_all_return_values" "do_fortran_indexing" "e"
-    "echo_executing_commands" "empty_list_elements_ok" "eps"
-    "error_text" "gnuplot_binary" "gnuplot_has_multiplot" "history_file"
-    "history_size" "ignore_function_time_stamp" "implicit_str_to_num_ok"
-    "inf" "nan" "nargin" "ok_to_lose_imaginary_part"
-    "output_max_field_width" "output_precision"
+    "beep_on_error" "completion_append_char"
+    "crash_dumps_octave_core" "default_save_format"
+    "e" "echo_executing_commands" "eps"
+    "error_text" "gnuplot_binary" "history_file"
+    "history_size" "ignore_function_time_stamp"
+    "inf" "nan" "nargin" "output_max_field_width" "output_precision"
     "page_output_immediately" "page_screen_output" "pi"
-    "prefer_column_vectors" "prefer_zero_one_indexing"
     "print_answer_id_name" "print_empty_dimensions"
-    "program_invocation_name" "program_name" "propagate_empty_matrices"
-    "realmax" "realmin" "resize_on_range_error"
-    "return_last_computed_value" "save_precision" "saving_history"
+    "program_invocation_name" "program_name"
+    "realmax" "realmin" "return_last_computed_value" "save_precision"
+    "saving_history" "sighup_dumps_octave_core" "sigterm_dumps_octave_core"
     "silent_functions" "split_long_rows" "stderr" "stdin" "stdout"
     "string_fill_char" "struct_levels_to_print"
-    "suppress_verbose_help_message" "treat_neg_dim_as_zero"
-    "warn_assign_as_truth_value" "warn_comma_in_global_decl"
-    "warn_divide_by_zero" "warn_function_name_clash"
-    "warn_missing_semicolon" "whitespace_in_literal_matrix")
+    "suppress_verbose_help_message")
   "Builtin variables in Octave.")
 
 (defvar octave-function-header-regexp
@@ -349,15 +346,17 @@
   (concat octave-block-begin-regexp "\\|" octave-block-end-regexp))
 (defvar octave-block-else-or-end-regexp
   (concat octave-block-else-regexp "\\|" octave-block-end-regexp))
+;; FIXME: only use specific "end" tokens here to avoid confusion when "end"
+;; is used in indexing (the real fix is much more complex).
 (defvar octave-block-match-alist
-  '(("for" . ("end" "endfor"))
-    ("function" . ("end" "endfunction"))
-    ("if" . ("else" "elseif" "end" "endif"))
-    ("switch" . ("case" "otherwise" "end" "endswitch"))
-    ("try" . ("catch" "end" "end_try_catch"))
-    ("unwind_protect" . ("unwind_protect_cleanup" "end"
-			 "end_unwind_protect"))
-    ("while" . ("end" "endwhile")))
+  '(("do" . ("until"))
+    ("for" . ("endfor"))
+    ("function" . ("endfunction"))
+    ("if" . ("else" "elseif" "endif"))
+    ("switch" . ("case" "otherwise" "endswitch"))
+    ("try" . ("catch" "end_try_catch"))
+    ("unwind_protect" . ("unwind_protect_cleanup" "end_unwind_protect"))
+    ("while" . ("endwhile")))
   "Alist with Octave's matching block keywords.
 Has Octave's begin keywords as keys and a list of the matching else or
 end keywords as associated values.")
@@ -425,7 +424,7 @@
 is why you need this mode!).
 
 The latest released version of Octave is always available via anonymous
-ftp from bevo.che.wisc.edu in the directory `/pub/octave'.  Complete
+ftp from ftp.octave.org in the directory `/pub/octave'.  Complete
 source and binaries for several popular systems are available.
 
 Type \\[list-abbrevs] to display the built-in abbrevs for Octave keywords.
@@ -480,7 +479,7 @@
 
   (add-to-list 'auto-mode-alist '(\"\\\\.m\\\\'\" . octave-mode))
 
-To automatically turn on the abbrev and auto-fill,
+To automatically turn on the abbrev and auto-fill features,
 add the following lines to your `.emacs' file as well:
 
   (add-hook 'octave-mode-hook

[-- Attachment #3: Type: text/plain, Size: 142 bytes --]

_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-devel

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Bug#443439: emacs: run-octave captures the shell directory tracker
  2007-10-05 17:56           ` John W. Eaton
@ 2007-10-06  1:52             ` Glenn Morris
  0 siblings, 0 replies; 3+ messages in thread
From: Glenn Morris @ 2007-10-06  1:52 UTC (permalink / raw)
  To: John W. Eaton; +Cc: schwab, pot, rms, emacs-devel

"John W. Eaton" wrote:

> I noticed the following changes that were in my copy of octave-mod.el
> are not in the latest version in the Emacs CVS archive.

Thanks; installed.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2007-10-06  1:52 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <E1IYf44-000867-OA@tucano.isti.cnr.it>
     [not found] ` <E1IYfkv-0008G3-Fj@tucano.isti.cnr.it>
     [not found]   ` <jebqbwgsnr.fsf@sykes.suse.de>
     [not found]     ` <E1IYgyM-00005q-E2@tucano.isti.cnr.it>
     [not found]       ` <18163.59086.203111.308676@segfault.lan>
2007-09-22 11:57         ` Bug#443439: emacs: run-octave captures the shell directory tracker Richard Stallman
2007-10-05 17:56           ` John W. Eaton
2007-10-06  1:52             ` Glenn Morris

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).