unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Tak Ota <Takaaki.Ota@am.sony.com>
Subject: table.el 1.6.3
Date: Thu, 21 Mar 2002 22:01:35 -0800 (PST)	[thread overview]
Message-ID: <20020321.220135.01365190.Takaaki.Ota@am.sony.com> (raw)
In-Reply-To: <20020319.212249.60850794.Takaaki.Ota@am.sony.com>

Tue, 19 Mar 2002 21:22:49 -0800: Tak Ota <Takaaki.Ota@am.sony.com> wrote:

> Attached is the latest table.el that does not use function advice
> anymore.  It depends on the new command remap feature therefore won't
> run correctly in the previous versions of emacs.
> 
> So far I find one problem.  Somehow when point goes inside a table
> cell the table menu does not appear in the menu bar.  For this part
> the same code works fine under emacs-21.1.90 although command remap is
> missing.  Has the menu mechanism in keymap changed under 21.3?

Following is a patch from table.el 1.6.1 to 1.6.3.  The version 1.6.3
fixes the table cell filling problem introduced by the new definition
of `paragraph-start'.  The table menu problem is now fixed in the
latest keyboard.c from the CVS by Kim F. Storm.

-Tak


*** table-1.6.1.el	Thu Mar 21 21:48:01 2002
--- table.el	Thu Mar 21 21:49:23 2002
***************
*** 4,20 ****
  
  ;; Emacs Lisp Archive Entry
  ;; Filename:      table.el
! ;; Version:       1.6.1
  ;; Keywords:      wp, convenience
  ;; Author:        Takaaki Ota <Takaaki.Ota@am.sony.com>
  ;; Maintainer:    Takaaki Ota <Takaaki.Ota@am.sony.com>
  ;; Created:       Sat Jul 08 2000 13:28:45 (PST)
! ;; Revised:       Wed Mar 13 2002 21:20:00 (PST)
  ;; Description:   create and edit WYSIWYG text based embedded tables
  ;; Compatibility: Require Emacs 21.3 or lator
  ;; URL:           http://table.sourceforge.net/
  
! (defconst table-version "1.6.1"
    "Table version number.
  The latest version is available from http://table.sourceforge.net/")
  
--- 4,20 ----
  
  ;; Emacs Lisp Archive Entry
  ;; Filename:      table.el
! ;; Version:       1.6.3
  ;; Keywords:      wp, convenience
  ;; Author:        Takaaki Ota <Takaaki.Ota@am.sony.com>
  ;; Maintainer:    Takaaki Ota <Takaaki.Ota@am.sony.com>
  ;; Created:       Sat Jul 08 2000 13:28:45 (PST)
! ;; Revised:       Thu Mar 21 2002 17:52:43 (PST)
  ;; Description:   create and edit WYSIWYG text based embedded tables
  ;; Compatibility: Require Emacs 21.3 or lator
  ;; URL:           http://table.sourceforge.net/
  
! (defconst table-version "1.6.3"
    "Table version number.
  The latest version is available from http://table.sourceforge.net/")
  
***************
*** 868,873 ****
--- 868,875 ----
  ;;; Internal variables and constants
  ;;; No need of user configuration
  
+ (defconst table-paragraph-start "[ \t\n\f]"
+   "*Regexp for beginning of a line that starts OR separates paragraphs.")
  (defconst table-cache-buffer-name " *table cell cache*"
    "Cell cache buffer name.")
  (defvar table-cell-info-lu-coordinate nil
***************
*** 4317,4322 ****
--- 4319,4357 ----
      (car (table--get-coordinate (cdr (table--horizontal-cell-list nil t))))
      (1+ (cdr (table--get-coordinate (cdr (table--vertical-cell-list nil t))))))))
  
+ (defun table-call-interactively (function &optional recoard-flag keys)
+   "Call FUNCTION, or a table version of it if applicable.
+ See `call-interactively' for full description of the arguments."
+   (let ((table-func (intern-soft (format "*table--cell-%s" function))))
+     (call-interactively
+      (if (and table-func
+ 	      (table--point-in-cell-p))
+ 	 table-func
+        function) recoard-flag keys)))
+ 
+ (defun table-funcall (function &rest arguments)
+   "Call FUNCTION, or a table version of it if applicable.
+ See `funcall' for full description of the arguments."
+   (let ((table-func (intern-soft (format "*table--cell-%s" function))))
+     (apply
+      (if (and table-func
+ 	      (table--point-in-cell-p))
+ 	 table-func
+        function)
+      arguments)))
+ 
+ (defmacro table-apply (function &rest arguments)
+   "Call FUNCTION, or a table version of it if applicable.
+ See `apply' for full description of the arguments."
+   (let ((table-func (make-symbol "table-func")))
+     `(let ((,table-func (intern-soft (format "*table--cell-%s" ,function))))
+        (apply
+ 	(if (and ,table-func
+ 		 (table--point-in-cell-p))
+ 	    ,table-func
+ 	  ,function)
+ 	,@arguments))))
+ 
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  ;;
  ;; Utility functions
***************
*** 4558,4564 ****
  	(if (memq justify valign-symbols)
  	    (table--valign)
  	  (table--remove-eol-spaces beg end 'bol)
! 	  (fill-region beg end table-cell-info-justify)))
        (setq table-inhibit-auto-fill-paragraph t)
        (set-marker end nil)))
    (table--update-cell 'now))
--- 4593,4600 ----
  	(if (memq justify valign-symbols)
  	    (table--valign)
  	  (table--remove-eol-spaces beg end 'bol)
! 	  (let ((paragraph-start table-paragraph-start))
! 	    (fill-region beg end table-cell-info-justify))))
        (setq table-inhibit-auto-fill-paragraph t)
        (set-marker end nil)))
    (table--update-cell 'now))
***************
*** 5399,5405 ****
      (table--remove-eol-spaces (point-min) (point-max))
      (if table-fixed-width-mode
  	(table--fill-region-strictly marker-beg marker-end)
!       (fill-region marker-beg marker-end justify nil t))
      (goto-char marker-point)
      (set-marker marker-beg nil)
      (set-marker marker-end nil)
--- 5435,5442 ----
      (table--remove-eol-spaces (point-min) (point-max))
      (if table-fixed-width-mode
  	(table--fill-region-strictly marker-beg marker-end)
!       (let ((paragraph-start table-paragraph-start))
! 	(fill-region marker-beg marker-end justify nil t)))
      (goto-char marker-point)
      (set-marker marker-beg nil)
      (set-marker marker-end nil)
***************
*** 5422,5428 ****
  			    end t)
      (delete-region (match-beginning 1) (match-end 1)))
    ;; then fill as normal
!   (fill-region beg end nil nil t)
    ;; now fix up
    (goto-char beg)
    (while (let ((col (move-to-column fill-column t)))
--- 5459,5466 ----
  			    end t)
      (delete-region (match-beginning 1) (match-end 1)))
    ;; then fill as normal
!   (let ((paragraph-start table-paragraph-start))
!     (fill-region beg end nil nil t))
    ;; now fix up
    (goto-char beg)
    (while (let ((col (move-to-column fill-column t)))

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


      parent reply	other threads:[~2002-03-22  6:01 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-03-20  5:22 table.el 1.6.1 Tak Ota
2002-03-21  1:38 ` Stefan Monnier
2002-03-21  5:37   ` Tak Ota
2002-03-21  8:41     ` Kim F. Storm
2002-03-21 21:43       ` Kim F. Storm
2002-03-21 22:20         ` Tak Ota
2002-03-21  8:45     ` Kim F. Storm
2002-03-21  9:13       ` Tak Ota
2002-03-22 12:26     ` Richard Stallman
2002-03-22 15:01       ` Kim F. Storm
2002-03-22 15:12         ` Kim F. Storm
2002-03-22 15:48           ` Tak Ota
2002-03-22 16:13             ` Kim F. Storm
2002-03-22 17:00             ` Stefan Monnier
2002-03-22 18:15               ` Tak Ota
2002-03-23 16:14         ` Richard Stallman
2002-03-23 17:11           ` Kim F. Storm
2002-03-25  0:19             ` Richard Stallman
2002-03-25 21:59             ` Stefan Monnier
2002-03-25 22:26               ` Kim F. Storm
2002-03-28 20:48                 ` Richard Stallman
2002-03-28 23:21                   ` Kim F. Storm
2002-03-30  3:43                     ` Richard Stallman
2002-03-31 20:40                       ` Kim F. Storm
2002-03-31 21:56                         ` Miles Bader
2002-03-22  6:01 ` Tak Ota [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20020321.220135.01365190.Takaaki.Ota@am.sony.com \
    --to=takaaki.ota@am.sony.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).