| Server IP : 217.160.0.212 / Your IP : 216.73.217.75 Web Server : Apache System : Linux www 6.18.52-i1-ampere #1203 SMP Mon Sep 14 18:29:59 CEST 2026 aarch64 User : sws1073854427 ( 1073854427) PHP Version : 8.4.23 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /usr/share/emacs/28.2/lisp/textmodes/ |
Upload File : |
;ELC
;;; Compiled
;;; in Emacs version 28.2
;;; with all optimizations.
(byte-code "\300\301!\210\302\303\304\305\306\307\310\311\312\313\314\315&\210\302\316\304\317\312\303%\210\320\321\322\323\324DD\325\306\326\327\330\312\303& \210\320\331\322\323\332DD\333\306\334\327\330\312\303& \210\320\335\322\323\336DD\337\327\340\306\341\312\303& \210\342\343\344\345\306\346\312\303&\210\320\347\322\323\350DD\351\306\352\327\353\312\303& \210\320\354\322\323\355DD\356\306\357\327\360\312\303& \210\320\361\322\323\362DD\363\306\364\327\360\312\303& \210\320\365\322\323\366DD\367\306\370\327\360\312\303& \210\320\371\322\323\372DD\373\306\374\327\375\312\303& \210\320\376\322\323\377DD\201@ \306\201A \327\353\312\303& \210\320\201B \322\323\201C DD\201D \306\201E \327\375\312\303& \210\320\201F \322\323\201G DD\201H \306\201I \327\201J \312\303& \210\320\201K \322\323\201L DD\201M \306\201N \327\201J \312\303& \210\320\201O \322\323\201P DD\201Q \306\201R \327\353\312\303& \210\320\201S \322\323\201T DD\201U \306\201V \327\353\312\303& \210\320\201W \322\323\201X DD\201Y \306\201Z \327\201J \312\303& \210\320\201[ \322\323\201\\ DD\201] \306\201^ \327\201_ \312\316& \210\320\201` \322\323\201a DD\201b \306\201c \327\375\312\303& \210\320\201d \322\323\201e DD\201f \306\201g \327\375\312\303& \210\320\201h \322\323\201i DD\201j \327\201_ \312\316&\210\201k \201h \201l \201m #\210\320\201n \322\323\201o DD\201p \327\201_ \312\316&\210\320\201q \322\323\201r DD\201s \327\201_ \312\316&\207" [require regexp-opt custom-declare-group table nil "Text based table manipulation utilities." :tag "Table" :prefix "table-" :group text :version "22.1" table-hooks "Hooks for table manipulation utilities." custom-declare-variable table-time-before-update funcall function #[0 "\300\207" [0.2] 1 #1=""] "Time in seconds before updating the cell contents after typing.\nUpdating the cell contents on the screen takes place only after this\nspecified amount of time has passed after the last modification to the\ncell contents. When the contents of a table cell changes repetitively\nand frequently the updating the cell contents on the screen is\ndeferred until at least this specified amount of quiet time passes. A\nsmaller number wastes more computation resource by unnecessarily\nfrequent screen update. A large number presents noticeable and\nannoying delay before the typed result start appearing on the screen." "Time Before Cell Update" :type number table-time-before-reformat #[0 "\300\207" [0.2] 1 #1#] "Time in seconds before reformatting the table.\nThis many seconds must pass in addition to `table-time-before-update'\nbefore the table is updated with newly widened width or heightened\nheight." "Time Before Cell Reformat" table-command-prefix #[0 "\300\207" [[(control c) (control c)]] 1 #1#] "Key sequence to be used as prefix for table command key bindings." (vector (repeat :inline t sexp)) "Table Command Prefix" custom-declare-face table-cell ((((min-colors 88) (class color)) :foreground "gray90" :background "blue1") (((class color)) :foreground "gray90" :background "blue") (t :weight bold)) "Face used for table cell contents." "Cell Face" table-cell-horizontal-chars #[0 "\300\207" ["-="] 1 #1#] "Characters that may be used for table cell's horizontal border line." "Cell Horizontal Boundary Characters" string table-cell-vertical-char #[0 "\300\207" [124] 1 #1#] "Character that forms table cell's vertical border line." "Cell Vertical Boundary Character" character table-cell-intersection-char #[0 "\300\207" [43] 1 #1#] "Character that forms table cell's corner." "Cell Intersection Character" table-word-continuation-char #[0 "\300\207" [92] 1 #1#] "Character that indicates word continuation into the next line.\nThis character has a special meaning only in the fixed width mode,\nthat is when `table-fixed-width-mode' is non-nil . In the fixed width\nmode this character indicates that the location is continuing into the\nnext line. Be careful about the choice of this character. It is\ntreated substantially different manner than ordinary characters. Try\nselect a character that is unlikely to appear in your document." "Cell Word Continuation Character" table-detect-cell-alignment #[0 "\300\207" [t] 1 #1#] "Detect cell contents alignment automatically.\nWhen non-nil cell alignment is automatically determined by the\nappearance of the current cell contents when recognizing tables as a\nwhole. This applies to `table-recognize', `table-recognize-region'\nand `table-recognize-table' but not to `table-recognize-cell'." "Detect Cell Alignment" boolean table-dest-buffer-name #[0 "\300\207" ["table"] 1 #1#] "Default buffer name (without a suffix) for source generation." "Source Buffer Name" table-html-delegate-spacing-to-user-agent #[0 "\300\207" [nil] 1 #1#] "Non-nil delegates cell contents spacing entirely to user agent.\nOtherwise, when nil, it preserves the original spacing and line breaks." "HTML delegate spacing" table-html-th-rows #[0 "\300\207" [0] 1 #1#] "Number of top rows to become header cells automatically in HTML generation." "HTML Header Rows" integer table-html-th-columns #[0 "\300\207" [0] 1 #1#] "Number of left columns to become header cells automatically in HTML generation." "HTML Header Columns" table-html-table-attribute #[0 "\300\207" ["border=\"1\""] 1 #1#] "Table attribute that applies to the table in HTML generation." "HTML table attribute" table-html-cell-attribute #[0 "\300\207" [#1#] 1 #1#] "Cell attribute that applies to all cells in HTML generation.\nDo not specify \"align\" and \"valign\" because they are determined by\nthe cell contents dynamically." "HTML cell attribute" table-cals-thead-rows #[0 "\300\207" [1] 1 #1#] "Number of top rows to become header rows in CALS table." "CALS Header Rows" table-cell-map-hook #[0 "\300\207" [nil] 1 #1#] "Normal hooks run when finishing construction of `table-cell-map'.\nUser can modify `table-cell-map' by adding custom functions here." "Cell Keymap Hooks" hook table-disable-incompatibility-warning #[0 "\300\207" [nil] 1 #1#] "Disable compatibility warning notice.\nWhen nil user is reminded of known incompatible issues." "Disable Incompatibility Warning" table-abort-recognition-when-input-pending #[0 "\300\207" [t] 1 #1#] "Abort current recognition process when input pending.\nAbort current recognition process when we are not sure that no input\nis available. When non-nil lengthy recognition process is aborted\nsimply by any key input." "Abort Recognition When Input Pending" table-load-hook #[0 "\300\207" [nil] 1 #1#] "List of functions to be called after the table is first loaded." make-obsolete-variable "use `with-eval-after-load' instead." "28.1" table-point-entered-cell-hook #[0 "\300\207" [nil] 1 #1#] "List of functions to be called after point entered a table cell." table-point-left-cell-hook #[0 "\300\207" [nil] 1 #1#] "List of functions to be called after point left a table cell."] 12)
#@26 Yank handler for tables.
(defvar table-yank-handler '(nil nil t nil) (#$ . 6975))
(setplist 'table-disable-incompatibility-warning nil)
#@69 Regexp for beginning of a line that starts OR separates paragraphs.
(defconst table-paragraph-start "[ \n\f]" (#$ . 7117))
#@25 Cell cache buffer name.
(defconst table-cache-buffer-name " *table cell cache*" (#$ . 7247))
#@63 Zero based coordinate of the cached cell's left upper corner.
(defvar table-cell-info-lu-coordinate nil (#$ . 7346))
#@65 Zero based coordinate of the cached cell's right bottom corner.
(defvar table-cell-info-rb-coordinate nil (#$ . 7469))
#@45 Number of characters per cached cell width.
(defvar table-cell-info-width nil (#$ . 7594))
#@41 Number of lines per cached cell height.
(defvar table-cell-info-height nil (#$ . 7691))
#@47 Justification information of the cached cell.
(defvar table-cell-info-justify nil (#$ . 7785))
#@52 Vertical alignment information of the cached cell.
(defvar table-cell-info-valign nil (#$ . 7886))
#@27 Counter for undo control.
(defvar table-cell-self-insert-command-count 0 (#$ . 7991))
#@33 Keymap for table cell contents.
(defvar table-cell-map nil (#$ . 8083))
#@72 Alist of copy of global maps that are substituted in `table-cell-map'.
(defvar table-cell-global-map-alist nil (#$ . 8161))
#@42 Menu map created via `easy-menu-define'.
(defvar table-global-menu-map nil (#$ . 8291))
#@42 Menu map created via `easy-menu-define'.
(defvar table-cell-menu-map nil (#$ . 8385))
#@38 Buffer that contains the table cell.
(defvar table-cell-buffer nil (#$ . 8477))
#@52 Cache point coordinate based from the cell origin.
(defvar table-cell-cache-point-coordinate nil (#$ . 8563))
#@51 Cache mark coordinate based from the cell origin.
(defvar table-cell-cache-mark-coordinate nil (#$ . 8679))
#@36 Timer id for deferred cell update.
(defvar table-update-timer nil (#$ . 8793))
#@36 Timer id for deferred cell update.
(defvar table-widen-timer nil (#$ . 8878))
#@36 Timer id for deferred cell update.
(defvar table-heighten-timer nil (#$ . 8962))
#@157 Non-nil inhibits implicit cell and cache updates.
It inhibits `table-with-cache-buffer' to update data in both directions,
cell to cache and cache to cell.
(defvar table-inhibit-update nil (#$ . 9050))
#@173 Non-nil inhibits auto fill paragraph when `table-with-cache-buffer' exits.
This is always set to nil at the entry to `table-with-cache-buffer' before
executing body forms.
(defvar table-inhibit-auto-fill-paragraph nil (#$ . 9259))
#@26 For mode line indicator.
(defvar table-mode-indicator nil (#$ . 9496))
(byte-code "\302\300!\210 \236\204 \303 B\302\207" [table-mode-indicator minor-mode-alist make-variable-buffer-local (table-mode-indicator (table-fixed-width-mode " Fixed-Table" " Table"))] 2)
#@29 Supported source languages.
(defconst table-source-languages '(html latex cals wiki mediawiki) (#$ . 9769))
#@73 General storage for temporary information used while generating source.
(defvar table-source-info-plist nil (#$ . 9883))
(defvar table-cell-span-direction-history '("right"))
(defvar table-cell-split-orientation-history '("horizontally"))
(defvar table-cell-split-contents-to-history '("split"))
(defvar table-insert-row-column-history '("row"))
(defvar table-justify-history '("center"))
(defvar table-columns-history '("3"))
(defvar table-rows-history '("3"))
(defvar table-cell-width-history '("5"))
(defvar table-cell-height-history '("1"))
(defvar table-source-caption-history '("Table"))
(defvar table-sequence-string-history '("0"))
(defvar table-sequence-count-history '("0"))
(defvar table-sequence-increment-history '("1"))
(defvar table-sequence-interval-history '("1"))
(defvar table-sequence-justify-history '("left"))
(defvar table-source-language-history '("html"))
(defvar table-col-delim-regexp-history '(""))
(defvar table-row-delim-regexp-history '(""))
(defvar table-capture-justify-history '("left"))
(defvar table-capture-min-cell-width-history '("5"))
(defvar table-capture-columns-history '(""))
(defvar table-target-history '("cell"))
#@35 Bindings for table cell commands.
(defconst table-cell-bindings '(([(control 105)] . table-forward-cell) ([(control 73)] . table-backward-cell) ([tab] . table-forward-cell) ([(shift backtab)] . table-backward-cell) ([(shift iso-lefttab)] . table-backward-cell) ([(shift tab)] . table-backward-cell) ([backtab] . table-backward-cell) ([return] . *table--cell-newline) ([(control 109)] . *table--cell-newline) ([(control 106)] . *table--cell-newline-and-indent) ([mouse-3] . *table--present-cell-popup-menu) ([(control 62)] . table-widen-cell) ([(control 60)] . table-narrow-cell) ([(control 125)] . table-heighten-cell) ([(control 123)] . table-shorten-cell) ([(control 45)] . table-split-cell-vertically) ([(control 124)] . table-split-cell-horizontally) ([(control 42)] . table-span-cell) ([(control 43)] . table-insert-row-column) ([(control 33)] . table-fixed-width-mode) ([(control 35)] . table-query-dimension) ([(control 94)] . table-generate-source) ([(control 58)] . table-justify)) (#$ . 11049))
#@69 List of the form (ORIGINAL-COMMAND . TABLE-VERSION-OF-THE-COMMAND).
(defvar table-command-remap-alist '((self-insert-command . *table--cell-self-insert-command) (completion-separator-self-insert-autofilling . *table--cell-self-insert-command) (completion-separator-self-insert-command . *table--cell-self-insert-command) (delete-char . *table--cell-delete-char) (delete-forward-char . *table--cell-delete-char) (delete-backward-char . *table--cell-delete-backward-char) (backward-delete-char . *table--cell-delete-backward-char) (backward-delete-char-untabify . *table--cell-delete-backward-char) (newline . *table--cell-newline) (newline-and-indent . *table--cell-newline-and-indent) (open-line . *table--cell-open-line) (quoted-insert . *table--cell-quoted-insert) (describe-mode . *table--cell-describe-mode) (describe-bindings . *table--cell-describe-bindings) (dabbrev-expand . *table--cell-dabbrev-expand) (dabbrev-completion . *table--cell-dabbrev-completion)) (#$ . 12060))
#@51 List of commands that override original commands.
(defvar table-command-list (mapcar 'cdr table-command-remap-alist) (#$ . 13048))
(defconst table-global-menu '("Table" ("Insert" ["a Table..." table-insert :active (and (not buffer-read-only) (not (table--probe-cell))) :help "Insert a text based table at point"] ["Row" table-insert-row :active (table--row-column-insertion-point-p) :help "Insert row(s) of cells in table"] ["Column" table-insert-column :active (table--row-column-insertion-point-p 'column) :help "Insert column(s) of cells in table"]) "----" ("Recognize" ["in Buffer" table-recognize :active t :help "Recognize all tables in the current buffer"] ["in Region" table-recognize-region :active (and mark-active (not (eq (mark t) (point)))) :help "Recognize all tables in the current region"] ["a Table" table-recognize-table :active (table--probe-cell) :help "Recognize a table at point"] ["a Cell" table-recognize-cell :active (let ((cell (table--probe-cell))) (and cell (null (table--at-cell-p (car cell))))) :help "Recognize a cell at point"]) ("Unrecognize" ["in Buffer" table-unrecognize :active t :help "Unrecognize all tables in the current buffer"] ["in Region" table-unrecognize-region :active (and mark-active (not (eq (mark t) (point)))) :help "Unrecognize all tables in the current region"] ["a Table" table-unrecognize-table :active (table--probe-cell) :help "Unrecognize the current table"] ["a Cell" table-unrecognize-cell :active (let ((cell (table--probe-cell))) (and cell (table--at-cell-p (car cell)))) :help "Unrecognize the current cell"]) "----" ["Capture Region" table-capture :active (and (not buffer-read-only) mark-active (not (eq (mark t) (point))) (not (table--probe-cell))) :help "Capture text in the current region as a table"] ["Release" table-release :active (table--editable-cell-p) :help "Release the current table as plain text"]))
(defconst table-cell-menu '("Table" ("Insert" ["Row" table-insert-row :active (table--row-column-insertion-point-p) :help "Insert row(s) of cells in table"] ["Column" table-insert-column :active (table--row-column-insertion-point-p 'column) :help "Insert column(s) of cells in table"]) ("Delete" ["Row" table-delete-row :active (table--editable-cell-p) :help "Delete row(s) of cells in table"] ["Column" table-delete-column :active (table--editable-cell-p) :help "Delete column(s) of cells in table"]) "----" ("Split a Cell" ["Horizontally" table-split-cell-horizontally :active (table--cell-can-split-horizontally-p) :help "Split the current cell horizontally at point"] ["Vertically" table-split-cell-vertically :active (table--cell-can-split-vertically-p) :help "Split the current cell vertical at point"]) ("Span a Cell to" ["Right" (table-span-cell 'right) :active (table--cell-can-span-p 'right) :help "Span the current cell into the right cell"] ["Left" (table-span-cell 'left) :active (table--cell-can-span-p 'left) :help "Span the current cell into the left cell"] ["Above" (table-span-cell 'above) :active (table--cell-can-span-p 'above) :help "Span the current cell into the cell above"] ["Below" (table-span-cell 'below) :active (table--cell-can-span-p 'below) :help "Span the current cell into the cell below"]) "----" ("Shrink Cells" ["Horizontally" table-narrow-cell :active (table--editable-cell-p) :help "Shrink the current cell horizontally"] ["Vertically" table-shorten-cell :active (table--editable-cell-p) :help "Shrink the current cell vertically"]) ("Expand Cells" ["Horizontally" table-widen-cell :active (table--editable-cell-p) :help "Expand the current cell horizontally"] ["Vertically" table-heighten-cell :active (table--editable-cell-p) :help "Expand the current cell vertically"]) "----" ("Justify" ("a Cell" ["Left" (table-justify-cell 'left) :active (table--editable-cell-p) :help "Left justify the contents of the current cell"] ["Center" (table-justify-cell 'center) :active (table--editable-cell-p) :help "Center justify the contents of the current cell"] ["Right" (table-justify-cell 'right) :active (table--editable-cell-p) :help "Right justify the contents of the current cell"] "----" ["Top" (table-justify-cell 'top) :active (table--editable-cell-p) :help "Top align the contents of the current cell"] ["Middle" (table-justify-cell 'middle) :active (table--editable-cell-p) :help "Middle align the contents of the current cell"] ["Bottom" (table-justify-cell 'bottom) :active (table--editable-cell-p) :help "Bottom align the contents of the current cell"] ["None" (table-justify-cell 'none) :active (table--editable-cell-p) :help "Remove vertical alignment from the current cell"]) ("a Row" ["Left" (table-justify-row 'left) :active (table--editable-cell-p) :help "Left justify the contents of all cells in the current row"] ["Center" (table-justify-row 'center) :active (table--editable-cell-p) :help "Center justify the contents of all cells in the current row"] ["Right" (table-justify-row 'right) :active (table--editable-cell-p) :help "Right justify the contents of all cells in the current row"] "----" ["Top" (table-justify-row 'top) :active (table--editable-cell-p) :help "Top align the contents of all cells in the current row"] ["Middle" (table-justify-row 'middle) :active (table--editable-cell-p) :help "Middle align the contents of all cells in the current row"] ["Bottom" (table-justify-row 'bottom) :active (table--editable-cell-p) :help "Bottom align the contents of all cells in the current row"] ["None" (table-justify-cell 'none) :active (table--editable-cell-p) :help "Remove vertical alignment from all cells in the current row"]) ("a Column" ["Left" (table-justify-column 'left) :active (table--editable-cell-p) :help "Left justify the contents of all cells in the current column"] ["Center" (table-justify-column 'center) :active (table--editable-cell-p) :help "Center justify the contents of all cells in the current column"] ["Right" (table-justify-column 'right) :active (table--editable-cell-p) :help "Right justify the contents of all cells in the current column"] "----" ["Top" (table-justify-column 'top) :active (table--editable-cell-p) :help "Top align the contents of all cells in the current column"] ["Middle" (table-justify-column 'middle) :active (table--editable-cell-p) :help "Middle align the contents of all cells in the current column"] ["Bottom" (table-justify-column 'bottom) :active (table--editable-cell-p) :help "Bottom align the contents of all cells in the current column"] ["None" (table-justify-cell 'none) :active (table--editable-cell-p) :help "Remove vertical alignment from all cells in the current column"]) ("a Paragraph" ["Left" (table-justify-cell 'left t) :active (table--editable-cell-p) :help "Left justify the current paragraph"] ["Center" (table-justify-cell 'center t) :active (table--editable-cell-p) :help "Center justify the current paragraph"] ["Right" (table-justify-cell 'right t) :active (table--editable-cell-p) :help "Right justify the current paragraph"])) "----" ["Query Dimension" table-query-dimension :active (table--probe-cell) :help "Get the dimension of the current cell and the current table"] ["Generate Source" table-generate-source :active (table--probe-cell) :help "Generate source of the current table in the specified language"] ["Insert Sequence" table-insert-sequence :active (table--editable-cell-p) :help "Travel cells forward while inserting a specified sequence string in each cell"] ("Unrecognize" ["a Table" table-unrecognize-table :active (table--probe-cell) :help "Unrecognize the current table"] ["a Cell" table-unrecognize-cell :active (let ((cell (table--probe-cell))) (and cell (table--at-cell-p (car cell)))) :help "Unrecognize the current cell"]) ["Release" table-release :active (table--editable-cell-p) :help "Release the current table as plain text"] ("Configure Width to" ["Auto Expand Mode" (table-fixed-width-mode -1) :active t :style radio :selected (not table-fixed-width-mode) :help "A mode that allows automatic horizontal cell expansion"] ["Fixed Width Mode" (table-fixed-width-mode 1) :active t :style radio :selected table-fixed-width-mode :help "A mode that does not allow automatic horizontal cell expansion"]) ("Navigate" ["Forward Cell" table-forward-cell :active (table--probe-cell) :help "Move point forward by cell(s)"] ["Backward Cell" table-backward-cell :active (table--probe-cell) :help "Move point backward by cell(s)"])))
#@20 Table global menu.
(defvar table-global-menu-map nil (#$ . 21429))
(byte-code "\302\301\303\304$\210\305\306 \307\310#\210\305\306 \311 #\207" [table-global-menu table-global-menu-map easy-menu-do-define nil "Table global menu." easy-menu-add-item current-global-map ("menu-bar" "tools") "--" ("menu-bar" "tools")] 5)
#@966 Execute the forms in BODY with table cache buffer as the current buffer.
This macro simplifies the rest of the work greatly by condensing the
common idiom used in many of the cell manipulation functions. It does
not return any meaningful value.
Save the current buffer and set the cache buffer as the current
buffer. Move the point to the cache buffer coordinate
`table-cell-cache-point-coordinate'. After BODY forms are executed,
the paragraph is filled as long as `table-inhibit-auto-fill-paragraph'
remains nil. BODY can set it to t when it does not want to fill the
paragraph. If necessary the cell width and height are extended as the
consequence of cell content modification by the BODY. Then the
current buffer is restored to the original one. The last cache point
coordinate is stored in `table-cell-cache-point-coordinate'. The
original buffer's point is moved to the location that corresponds to
the last cache point coordinate.
(fn &rest BODY)
(defalias 'table-with-cache-buffer '(macro . #[128 "\300\301!\300\302!\303D\304\305\306\307\310\311\312\313\f\314\315\316\317BB\320\321\322BB\323\324\325\326F\327BBBB\316\330\331BBE\332\316\333BB\257\"BBBBBB\320\334\335BB\336\337BBE\320\334\340BB\341 \342BBE\343BBBBBB\207" [make-symbol "height-expansion-var-symbol" "width-expansion-var-symbol" let (unless table-inhibit-update (table-recognize-cell)) with-current-buffer (get-buffer-create table-cache-buffer-name) (set-mark (table--goto-coordinate table-cell-cache-mark-coordinate)) (table--goto-coordinate table-cell-cache-point-coordinate) (table--untabify-line) (setq table-inhibit-auto-fill-paragraph nil) append (unless table-inhibit-auto-fill-paragraph (if (and table-cell-info-justify (not (eq table-cell-info-justify 'left))) (table--fill-region (point-min) (point-max)) (table--fill-region (save-excursion (forward-paragraph -1) (point)) (save-excursion (forward-paragraph 1) (point))))) (setq table-cell-cache-point-coordinate (table--get-coordinate)) setq ((table--measure-max-width)) if <= (table-cell-info-width) nil table--fill-region (point-min) (point-max) ((setq table-cell-cache-point-coordinate (table--get-coordinate))) - (table-cell-info-width) (if (looking-at "\\s *\\'") nil (goto-char (point-min)) (if (re-search-forward "\\(\\s *\\)\\'" nil t) (goto-char (match-beginning 1)))) ((- (cdr (table--get-coordinate)) (1- table-cell-info-height))) > (0) table-widen-cell ('no-copy 'no-update) (0) table-heighten-cell ('no-copy 'no-update) ((with-current-buffer (get-buffer-create table-cache-buffer-name) (table--goto-coordinate table-cell-cache-point-coordinate) (setq table-cell-cache-point-coordinate (table--valign))) (table--goto-coordinate (table--transcoord-cache-to-table table-cell-cache-point-coordinate)) (unless table-inhibit-update (table--update-cell)))] 24 (#$ . 21755)]))
(byte-code "\300\301\302\303#\210\304\301\305\306#\307\310\311\"\207" [put table-with-cache-buffer edebug-form-spec (body) function-put lisp-indent-function 0 font-lock-add-keywords emacs-lisp-mode ("\\<table-with-cache-buffer\\>")] 4)
#@58 Register source generation information.
(fn PROP VALUE)
(defalias 'table-put-source-info '(macro . #[514 "\300\301F\207" [put 'table-source-info-plist] 6 (#$ . 24845)]))
#@52 Retrieve source generation information.
(fn PROP)
(defalias 'table-get-source-info '(macro . #[257 "\300\301E\207" [get 'table-source-info-plist] 4 (#$ . 25024)]))
(byte-code "\301\211\2034 \211@\302\303\304\"!\303\305\"\306\307\310\311\312\313 !\314\"\315\316&\"\210BB\266A\266\202\202 \210\317\211\203i \211@\302\303\304\"!\303\305\"\306\307\310\320\312\313 !\321\"\315\316&\"\210BB\266A\266\202\2026 \210\322\211\203\236 \211@\302\303\304\"!\303\305\"\306\307\310\323\312\313 !\324\"\315\316&\"\210BB\266A\266\202\202k \210\325\211\203\323 \211@\302\303\304\"!\303\305\"\306\307\310\326\312\313 !\327\"\315\316&\"\210BB\266A\266\202\202\240 \207" [table-command-remap-alist (move-beginning-of-line beginning-of-line move-end-of-line end-of-line beginning-of-buffer end-of-buffer forward-word backward-word forward-sentence backward-sentence forward-paragraph backward-paragraph) intern format "*table--cell-%s" "Table remapped function for `%s'." defalias make-byte-code 128 "\306\307\310 \210\311\312!\210\307\211\n\204 \311 \210r\313!q\210\314\315\f!!\210\315
!\210\316 \210\307 \317\300!\210\306 \320 \321 \262\211!X\204H \322ed#\210\320 \211!Z\262\323\324!\204c eb\210\325\326\307\306#\203c \327\224b\210\320 A\"SZ\262)\211\330V\203y \331\332\333#\210\330V\203\205 \334\332\333#\210r\313!q\210\315
!\210\335 )\315\336
!!\210\n?\205\240 \337 \266\202*\207" vconcat vector [deactivate-mark table-inhibit-update table-cache-buffer-name table-cell-cache-mark-coordinate table-cell-cache-point-coordinate t nil table--finish-delayed-tasks table-recognize-cell force get-buffer-create set-mark table--goto-coordinate table--untabify-line call-interactively table--get-coordinate table--measure-max-width table--fill-region looking-at #1="\\s *\\'" re-search-forward #2="\\(\\s *\\)\\'" 1 0 table-widen-cell no-copy no-update table-heighten-cell table--valign table--transcoord-cache-to-table table--update-cell table-inhibit-auto-fill-paragraph table-cell-info-width table-cell-info-height] 7 nil (kill-region kill-ring-save delete-region copy-region-as-kill kill-line kill-word backward-kill-word kill-sentence backward-kill-sentence kill-paragraph backward-kill-paragraph kill-sexp backward-kill-sexp) "\306 \210\307\310!\210\311\211 \204 \307 \210r\312\n!q\210\313\314!!\210\314\f!\210\315 \210\311\316ed\"\210\317ed\"\210\320\300!\210
\204\\ %\203K %\321=\204K \322ed\"\210\202\\ \322\212\323\324!\210`)\212\323\325!\210`)\"\210\326 \327 \262\211&X\204s \322ed#\210\326 \211&Z\262\330\331!\204\216 eb\210\332\333\311\334#\203\216 \325\224b\210\326 A'SZ\262)\211\335V\203\244 \336\337\340#\210\335V\203\260 \341\337\340#\210r\312\n!q\210\314\f!\210\342 )\314\343\f!!\210 \204\313 \344 \210\266\306 \207" [table-inhibit-update table-cache-buffer-name table-cell-cache-mark-coordinate table-cell-cache-point-coordinate table-inhibit-auto-fill-paragraph table--finish-delayed-tasks table-recognize-cell force nil get-buffer-create set-mark table--goto-coordinate table--untabify-line table--remove-cell-properties table--remove-eol-spaces call-interactively left table--fill-region forward-paragraph -1 1 table--get-coordinate table--measure-max-width looking-at #1# re-search-forward #2# t 0 table-widen-cell no-copy no-update table-heighten-cell table--valign table--transcoord-cache-to-table table--update-cell table-cell-info-justify table-cell-info-width table-cell-info-height] (yank clipboard-yank yank-clipboard-selection insert) "\306 \210\307\310!\210\311\211 \204 \307 \210r\312\n!q\210\313\314!!\210\314\f!\210\315 \210\311\316\300!\210\317ed\"\210\320ed\"\210\321\322 \323 \262\211!X\204L \320ed#\210\322 \211!Z\262\324\325!\204g eb\210\326\327\311\321#\203g \330\224b\210\322 A\"SZ\262)\211\331V\203} \332\333\334#\210\331V\203\211 \335\333\334#\210r\312\n!q\210\314\f!\210\336 )\314\337\f!!\210 \204\244 \340 \210\266\306 \207" [table-inhibit-update table-cache-buffer-name table-cell-cache-mark-coordinate table-cell-cache-point-coordinate table-inhibit-auto-fill-paragraph table--finish-delayed-tasks table-recognize-cell force nil get-buffer-create set-mark table--goto-coordinate table--untabify-line call-interactively table--untabify table--fill-region t table--get-coordinate table--measure-max-width looking-at #1# re-search-forward #2# 1 0 table-widen-cell no-copy no-update table-heighten-cell table--valign table--transcoord-cache-to-table table--update-cell table-cell-info-width table-cell-info-height] (center-line center-region center-paragraph fill-paragraph) "\306 \210\307\310!\210\311\211 \204 \307 \210r\312\n!q\210\313\314!!\210\314\f!\210\315 \210\311 !\316\300!\210)\317\320 \321 \262\211 X\204G \322ed#\210\320 \211 Z\262\323\324!\204b eb\210\325\326\311\317#\203b \327\224b\210\320 A\"SZ\262)\211\330V\203x \331\332\333#\210\330V\203\204 \334\332\333#\210r\312\n!q\210\314\f!\210\335 )\314\336\f!!\210 \204\237 \337 \210\266\306 \207" [table-inhibit-update table-cache-buffer-name table-cell-cache-mark-coordinate table-cell-cache-point-coordinate table-inhibit-auto-fill-paragraph table--finish-delayed-tasks table-recognize-cell force nil get-buffer-create set-mark table--goto-coordinate table--untabify-line call-interactively t table--get-coordinate table--measure-max-width table--fill-region looking-at #1# re-search-forward #2# 1 0 table-widen-cell no-copy no-update table-heighten-cell table--valign table--transcoord-cache-to-table table--update-cell table-cell-info-width fill-column table-cell-info-height]] 13)
#@5042 Insert an editable text table.
Insert a table of specified number of COLUMNS and ROWS. Optional
parameter CELL-WIDTH and CELL-HEIGHT can specify the size of each
cell. The cell size is uniform across the table if the specified size
is a number. They can be a list of numbers to specify different size
for each cell. When called interactively, the list of number is
entered by simply listing all the numbers with space characters
delimiting them.
Examples:
\[table-insert] inserts a table at the current point location.
Suppose we have the following situation where `-!-' indicates the
location of point.
-!-
Type \[table-insert] and hit ENTER key. As it asks table
specification, provide 3 for number of columns, 1 for number of rows,
5 for cell width and 1 for cell height. Now you shall see the next
table and the point is automatically moved to the beginning of the
first cell.
+-----+-----+-----+
|-!- | | |
+-----+-----+-----+
Inside a table cell, there are special key bindings. \<table-cell-map>
M-9 \[table-widen-cell] (or \[universal-argument] 9 \[table-widen-cell]) widens the first cell by 9 character
width, which results as
+--------------+-----+-----+
|-!- | | |
+--------------+-----+-----+
Type TAB \[table-widen-cell] then type TAB M-2 M-7 \[table-widen-cell] (or \[universal-argument] 2 7 \[table-widen-cell]). Typing
TAB moves the point forward by a cell. The result now looks like this:
+--------------+------+--------------------------------+
| | |-!- |
+--------------+------+--------------------------------+
If you knew each width of the columns prior to the table creation,
what you could have done better was to have had given the complete
width information to `table-insert'.
Cell width(s): 14 6 32
instead of
Cell width(s): 5
This would have eliminated the previously mentioned width adjustment
work all together.
If the point is in the last cell type S-TAB S-TAB to move it to the
first cell. Now type \[table-heighten-cell] which heighten the row by a line.
+--------------+------+--------------------------------+
|-!- | | |
| | | |
+--------------+------+--------------------------------+
Type \[table-insert-row-column] and tell it to insert a row.
+--------------+------+--------------------------------+
|-!- | | |
| | | |
+--------------+------+--------------------------------+
| | | |
| | | |
+--------------+------+--------------------------------+
Move the point under the table as shown below.
+--------------+------+--------------------------------+
| | | |
| | | |
+--------------+------+--------------------------------+
| | | |
| | | |
+--------------+------+--------------------------------+
-!-
Type \[table-insert-row] instead of \[table-insert-row-column]. \[table-insert-row-column] does not work
when the point is outside of the table. This insertion at
outside of the table effectively appends a row at the end.
+--------------+------+--------------------------------+
| | | |
| | | |
+--------------+------+--------------------------------+
| | | |
| | | |
+--------------+------+--------------------------------+
|-!- | | |
| | | |
+--------------+------+--------------------------------+
Text editing inside the table cell produces reasonably expected
results.
+--------------+------+--------------------------------+
| | | |
| | | |
+--------------+------+--------------------------------+
| | |Text editing inside the table |
| | |cell produces reasonably |
| | |expected results.-!- |
+--------------+------+--------------------------------+
| | | |
| | | |
+--------------+------+--------------------------------+
Inside a table cell has a special keymap.
\{table-cell-map}
(fn COLUMNS ROWS &optional CELL-WIDTH CELL-HEIGHT)
(defalias 'table-insert #[1026 "\305 \210\204 @\262\211\204 @\262;\203 \306!\262;\203'