mirror of https://github.com/Chizi123/.emacs.d.git

Chizi123
2018-11-18 76bbd07de7add0f9d13c6914f158d19630fe2f62
commit | author | age
76bbd0 1 ;ELC
C 2 ;;; Compiled
3 ;;; in Emacs version 26.1
4 ;;; with all optimizations.
5
6 ;;; This file contains utf-8 non-ASCII characters,
7 ;;; and so cannot be loaded into Emacs 22 or earlier.
8 (and (boundp 'emacs-version)
9      (< (aref emacs-version (1- (length emacs-version))) ?A)
10      (string-lessp emacs-version "23")
11      (error "`%s' was compiled for Emacs 23 or later" #$))
12
13 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
14
15
16 (byte-code "\300\301!\210\300\302!\207" [require cl-lib org] 2)
17 #@225 Hook for functions attaching to `C-c C-c', if the table is sent.
18 This can be used to add additional functionality after the table is sent
19 to the receiver position, otherwise, if table is not sent, the functions
20 are not run.
21 (defvar orgtbl-after-send-table-hook nil (#$ . 473))
22 (defvar org-table-TBLFM-begin-regexp "^[     ]*|.*\n[     ]*#\\+TBLFM: ")
23 (byte-code "\300\301\302\303\304DD\305\306\307\310\311&\210\300\312\302\303\313DD\314\306\307\310\315&\210\316\317\320\321\322\323\306\307&\210\300\324\302\303\325DD\326\306\317\310\327&\210\300\330\302\303\331DD\332\306\317\310\333&\210\300\334\302\303\335DD\336\306\317\310\337&\210\316\340\320\341\322\342\306\307&\210\300\343\302\303\344DD\345\306\340\310\311&\210\300\346\302\303\347DD\350\306\340\310\311&\210\300\351\302\303\352DD\353\306\307\354\355\310\311&    \210\300\356\302\303\357DD\360\306\340\354\355\310\361&    \210\362\356\363\364#\210\300\365\302\303\366DD\367\306\340\310\311&\210\316\370\320\371\322\372\306\307&\210\300\373\302\303\374DD\375\306\370\310\376&\210\300\377\302\303\201@DD\201A\306\370\354\201B\201C\201D\310\201E& \210\300\201F\302\303\201GDD\201H\306\370\310\201I&\210\300\201J\302\303\201KDD\201L\306\370\354\355\310\201M&    \210\300\201N\302\303\201ODD\201P\306\370\354\201B\201C\201Q\310\311\201R\201S& \210\300\201T\302\303\201UDD\201V\306\317\354\355\310\327&    \210\300\201W\302\303\201XDD\201Y\306\370\310\311&\210\300\201Z\302\303\201[DD\201\\\306\370\310\311&\210\300\201]\302\303\201^DD\201_\306\370\310\201`&\210\300\201a\302\303\201bDD\201c\306\370\310\311&\210\300\201d\302\303\201eDD\201f\306\370\310\201g&\210\300\201h\302\303\201iDD\201j\306\370\354\201B\201C\201k\310\201l& \210\316\201m\320\201n\322\201o\306\307&\210\300\201p\302\303\201qDD\201r\306\201m\310\327&\210\300\201s\302\303\201tDD\201u\306\201m\310\201v\354\201B\201C\201w& \207" [custom-declare-variable orgtbl-optimized funcall function #[0 "\300\207" [t] 1] "Non-nil means use the optimized table editor version for `orgtbl-mode'.\n\nIn the optimized version, the table editor takes over all simple keys that\nnormally just insert a character.  In tables, the characters are inserted\nin a way to minimize disturbing the table structure (i.e. in overwrite mode\nfor empty fields).  Outside tables, the correct binding of the keys is\nrestored.\n\nChanging this variable requires a restart of Emacs to become\neffective." :group org-table :type boolean orgtbl-radio-table-templates #[0 "\300\207" [((latex-mode "% BEGIN RECEIVE ORGTBL %n\n% END RECEIVE ORGTBL %n\n\\begin{comment}\n#+ORGTBL: SEND %n orgtbl-to-latex :splice nil :skip 0\n| | |\n\\end{comment}\n") (texinfo-mode "@c BEGIN RECEIVE ORGTBL %n\n@c END RECEIVE ORGTBL %n\n@ignore\n#+ORGTBL: SEND %n orgtbl-to-html :splice nil :skip 0\n| | |\n@end ignore\n") (html-mode "<!-- BEGIN RECEIVE ORGTBL %n -->\n<!-- END RECEIVE ORGTBL %n -->\n<!--\n#+ORGTBL: SEND %n orgtbl-to-html :splice nil :skip 0\n| | |\n-->\n") (org-mode "#+ BEGIN RECEIVE ORGTBL %n\n#+ END RECEIVE ORGTBL %n\n\n#+ORGTBL: SEND %n orgtbl-to-orgtbl :splice nil :skip 0\n| | |\n"))] 1] "Templates for radio tables in different major modes.\nEach template must define lines that will be treated as a comment and that\nmust contain the \"BEGIN RECEIVE ORGTBL %n\" and \"END RECEIVE ORGTBL\"\nlines where \"%n\" will be replaced with the name of the table during\ninsertion of the template.  The transformed table will later be inserted\nbetween these lines.\n\nThe template should also contain a minimal table in a multiline comment.\nIf multiline comments are not possible in the buffer language,\nyou can pack it into a string that will not be used when the code\nis compiled or executed.  Above the table will you need a line with\nthe fixed string \"#+ORGTBL: SEND\", followed by instruction on how to\nconvert the table into a data structure useful in the\nlanguage of the buffer.  Check the manual for the section on\n\"Translator functions\", and more generally check out\nthe Info node `(org)Tables in arbitrary syntax'.\n\nAll occurrences of %n in a template will be replaced with the name of the\ntable, obtained by prompting the user." (repeat (list (symbol :tag "Major mode") (string :tag "Format"))) custom-declare-group org-table-settings nil "Settings for tables in Org mode." :tag "Org Table Settings" org-table-default-size #[0 "\300\207" [#1="5x2"] 1 #1#] "The default size for newly created tables, Columns x Rows." string org-table-number-regexp #[0 "\300\207" [#2="^\\([<>]?[-+^.0-9]*[0-9][-+^.0-9eEdDx()%:]*\\|[<>]?[-+]?0[xX][0-9a-fA-F.]+\\|[<>]?[-+]?[0-9]+#[0-9a-zA-Z.]+\\|nan\\|[-+u]?inf\\)$"] 1 #2#] "Regular expression for recognizing numbers in table columns.\nIf a table column contains mostly numbers, it will be aligned to the\nright.  If not, it will be aligned to the left.\n\nThe default value of this option is a regular expression which allows\nanything which looks remotely like a number as used in scientific\ncontext.  For example, all of the following will be considered a\nnumber:\n    12    12.2    2.4e-08    2x10^12    4.034+-0.02    2.7(10)  >3.5\n\nOther options offered by the customize interface are more restrictive." (choice (const :tag "Positive Integers" "^[0-9]+$") (const :tag "Integers" "^[-+]?[0-9]+$") (const :tag "Floating Point Numbers" "^[-+]?\\([0-9]*\\.[0-9]+\\|[0-9]+\\.[0-9]*\\)$") (const :tag "Floating Point Number or Integer" "^[-+]?\\([0-9]*\\.[0-9]+\\|[0-9]+\\.?[0-9]*\\)$") (const :tag "Exponential, Floating point, Integer" "^[-+]?[0-9.]+\\([eEdD][-+0-9]+\\)?$") (const :tag "Very General Number-Like, including hex and Calc radix" "^\\([<>]?[-+^.0-9]*[0-9][-+^.0-9eEdDx()%]*\\|[<>]?[-+]?0[xX][0-9a-fA-F.]+\\|[<>]?[-+]?[0-9]+#[0-9a-zA-Z.]+\\|nan\\|[-+u]?inf\\)$") (const :tag "Very General Number-Like, including hex and Calc radix, allows comma as decimal mark" "^\\([<>]?[-+^.,0-9]*[0-9][-+^.0-9eEdDx()%]*\\|[<>]?[-+]?0[xX][0-9a-fA-F.]+\\|[<>]?[-+]?[0-9]+#[0-9a-zA-Z.]+\\|nan\\|[-+u]?inf\\)$") (string :tag "Regexp:")) org-table-number-fraction #[0 "\300\207" [0.5] 1] "Fraction of numbers in a column required to make the column align right.\nIn a column all non-white fields are considered.  If at least\nthis fraction of fields is matched by `org-table-number-regexp',\nalignment to the right border applies." number org-table-editing "Behavior of tables during editing in Org mode." "Org Table Editing" org-table-automatic-realign #[0 "\300\207" [t] 1] "Non-nil means automatically re-align table when pressing TAB or RETURN.\nWhen nil, aligning is only done with `\\[org-table-align]', or after column\nremoval/insertion." org-table-auto-blank-field #[0 "\300\207" [t] 1] "Non-nil means automatically blank table field when starting to type into it.\nThis only happens when typing immediately after a field motion\ncommand (TAB, S-TAB or RET)." org-table-exit-follow-field-mode-when-leaving-table #[0 "\300\207" [t] 1] "Non-nil means automatically exit the follow mode.\nWhen nil, the follow mode will stay on and be active in any table\nthe cursor enters.  Since the table follow filed mode messes with the\nwindow configuration, it is not recommended to set this variable to nil,\nexcept maybe locally in a special file that has mostly tables with long\nfields." :version "24.1" org-table-fix-formulas-confirm #[0 "\300\207" [nil] 1] "Whether the user should confirm when Org fixes formulas." (choice (const :tag "with yes-or-no" yes-or-no-p) (const :tag "with y-or-n" y-or-n-p) (const :tag "no confirmation" nil)) put safe-local-variable #[257 "\211\300\235\207" [(yes-or-no-p y-or-n-p)] 3 "\n\n(fn X)"] org-table-tab-jumps-over-hlines #[0 "\300\207" [t] 1] "Non-nil means tab in the last column of a table with jump over a hline.\nIf a horizontal separator line is following the current line,\n`org-table-next-field' can either create a new row before that line, or jump\nover the line.  When this option is nil, a new line will be created before\nthis line." org-table-calculation "Options concerning tables in Org mode." "Org Table Calculation" org-table-use-standard-references #[0 "\300\207" [from] 1] "Non-nil means using table references like B3 instead of @3$2.\nPossible values are:\nnil     never use them\nfrom    accept as input, do not present for editing\nt       accept as input and present for editing" (choice (const :tag "Never, don't even check user input for them" nil) (const :tag "Always, both as user input, and when editing" t) (const :tag "Convert user input, don't offer during editing" from)) org-table-copy-increment #[0 "\300\207" [t] 1] "Non-nil means increment when copying current field with `\\[org-table-copy-down]'." "26.1" :package-version (Org . "8.3") (choice (const :tag "Use the difference between the current and the above fields" t) (integer :tag "Use a number" 1) (const :tag "Don't increment the value when copying a field" nil)) org-calc-default-modes #[0 "\300\207" [(calc-internal-prec 12 calc-float-format (float 8) calc-angle-mode deg calc-prefer-frac nil calc-symbolic-mode nil calc-date-format (YYYY "-" MM "-" DD " " Www (" " hh ":" mm)) calc-display-working-message t)] 1] "List with Calc mode settings for use in `calc-eval' for table formulas.\nThe list must contain alternating symbols (Calc modes variables and values).\nDon't remove any of the default settings, just change the values.  Org mode\nrelies on the variables to be present in the list." plist org-table-duration-custom-format #[0 "\300\207" [hours] 1] "Format for the output of calc computations like $1+$2;t.\nThe default value is `hours', and will output the results as a\nnumber of hours.  Other allowed values are `seconds', `minutes' and\n`days', and the output will be a fraction of seconds, minutes or\ndays. `hh:mm' selects to use hours and minutes, ignoring seconds.\nThe `U' flag in a table formula will select this specific format for\na single formula." (choice (symbol :tag "Seconds" 'seconds) (symbol :tag "Minutes" 'minutes) (symbol :tag "Hours  " 'hours) (symbol :tag "Days   " 'days) (symbol :tag "HH:MM  " 'hh:mm)) org-table-duration-hour-zero-padding #[0 "\300\207" [t] 1] "Non-nil means hours in table duration computations should be zero-padded.\nSo this is about 08:32:34 versus 8:33:34." (Org . "9.1") :safe booleanp org-table-formula-field-format #[0 "\300\207" [#3="%s"] 1 #3#] "Format for fields which contain the result of a formula.\nFor example, using \"~%s~\" will display the result within tilde\ncharacters.  Beware that modifying the display can prevent the\nfield from being used in another formula." org-table-formula-evaluate-inline #[0 "\300\207" [t] 1] "Non-nil means TAB and RET evaluate a formula in current table field.\nIf the current field starts with an equal sign, it is assumed to be a formula\nwhich should be evaluated as described in the manual and in the documentation\nstring of the command `org-table-eval-formula'.  This feature requires the\nEmacs calc package.\nWhen this variable is nil, formula calculation is only available through\nthe command `\\[org-table-eval-formula]'." org-table-formula-use-constants #[0 "\300\207" [t] 1] "Non-nil means interpret constants in formulas in tables.\nA constant looks like `$c' or `$Grav' and will be replaced before evaluation\nby the value given in `org-table-formula-constants', or by a value obtained\nfrom the `constants.el' package." org-table-formula-constants #[0 "\300\207" [nil] 1] "Alist with constant names and values, for use in table formulas.\nThe car of each element is a name of a constant, without the `$' before it.\nThe cdr is the value as a string.  For example, if you'd like to use the\nspeed of light in a formula, you would configure\n\n  (setq org-table-formula-constants \\='((\"c\" . \"299792458.\")))\n\nand then use it in an equation like `$1*$c'.\n\nConstants can also be defined on a per-file basis using a line like\n\n#+CONSTANTS: c=299792458. pi=3.14 eps=2.4e-6" (repeat (cons (string :tag "name") (string :tag "value"))) org-table-allow-automatic-line-recalculation #[0 "\300\207" [t] 1] "Non-nil means lines marked with |#| or |*| will be recomputed automatically.\n\\<org-mode-map>Automatically means when `TAB' or `RET' or `\\[org-ctrl-c-ctrl-c]' are pressed in the line." org-table-relative-ref-may-cross-hline #[0 "\300\207" [t] 1] "Non-nil means relative formula references may cross hlines.\nHere are the allowed values:\n\nnil    Relative references may not cross hlines.  They will reference the\n       field next to the hline instead.  Coming from below, the reference\n       will be to the field below the hline.  Coming from above, it will be\n       to the field above.\nt      Relative references may cross hlines.\nerror  An attempt to cross a hline will throw an error.\n\nIt is probably good to never set this variable to nil, for the sake of\nportability of tables." (choice (const :tag "Allow to cross" t) (const :tag "Stick to hline" nil) (const :tag "Error on attempt to cross" error)) org-table-formula-create-columns #[0 "\300\207" [nil] 1] "Non-nil means evaluation of formula can add new columns.\nWhen non-nil, evaluating an out-of-bounds field can insert as\nmany columns as needed.  When set to `warn', issue a warning when\ndoing so.  When set to `prompt', ask user before creating a new\ncolumn.  Otherwise, throw an error." (Org . "8.3") (choice (const :tag "Out-of-bounds field generates an error (default)" nil) (const :tag "Out-of-bounds field silently adds columns as needed" t) (const :tag "Out-of-bounds field adds columns, but issues a warning" warn) (const :tag "Prompt user when setting an out-of-bounds field" prompt)) org-table-import-export "Options concerning table import and export in Org mode." "Org Table Import Export" org-table-export-default-format #[0 "\300\207" [#4="orgtbl-to-tsv"] 1 #4#] "Default export parameters for `org-table-export'.\nThese can be overridden for a specific table by setting the\nTABLE_EXPORT_FORMAT property.  See the manual section on orgtbl\nradio tables for the different export transformations and\navailable parameters." org-table-convert-region-max-lines #[0 "\300\207" [999] 1] "Max lines that `org-table-convert-region' will attempt to process.\n\nThe function can be slow on larger regions; this safety feature\nprevents it from hanging emacs." integer (Org . "8.3")] 14)
24 #@60 Regexp matching a line marked for automatic recalculation.
25 (defconst org-table-auto-recalculate-regexp "^[     ]*| *# *\\(|\\|$\\)" (#$ . 14831))
26 #@50 Regexp matching a line marked for recalculation.
27 (defconst org-table-recalculate-regexp "^[     ]*| *[#*] *\\(|\\|$\\)" (#$ . 14980))
28 #@48 Regexp matching a line marked for calculation.
29 (defconst org-table-calculate-mark-regexp "^[     ]*| *[!$^_#*] *\\(|\\|$\\)" (#$ . 15117))
30 #@48 Regexp matching any line outside an Org table.
31 (defconst org-table-border-regexp "^[     ]*[^|     ]" (#$ . 15259))
32 (defvar org-table-last-highlighted-reference nil)
33 (defvar org-table-formula-history nil)
34 #@108 Alist with column names, derived from the `!' line.
35 This variable is initialized with `org-table-analyze'.
36 (defvar org-table-column-names nil (#$ . 15465))
37 #@110 Regular expression matching the current column names.
38 This variable is initialized with `org-table-analyze'.
39 (defvar org-table-column-name-regexp nil (#$ . 15628))
40 #@111 Alist with parameter names, derived from the `$' line.
41 This variable is initialized with `org-table-analyze'.
42 (defvar org-table-local-parameters nil (#$ . 15799))
43 #@311 Alist with locations of named fields.
44 Associations follow the pattern (NAME LINE COLUMN) where
45   NAME is the name of the field as a string,
46   LINE is the number of lines from the beginning of the table,
47   COLUMN is the column of the field, as an integer.
48 This variable is initialized with `org-table-analyze'.
49 (defvar org-table-named-field-locations nil (#$ . 15969))
50 #@90 Table row types in current table.
51 This variable is initialized with `org-table-analyze'.
52 (defvar org-table-current-line-types nil (#$ . 16343))
53 #@99 Current table begin position, as a marker.
54 This variable is initialized with `org-table-analyze'.
55 (defvar org-table-current-begin-pos nil (#$ . 16493))
56 #@92 Number of columns in current table.
57 This variable is initialized with `org-table-analyze'.
58 (defvar org-table-current-ncol nil (#$ . 16651))
59 #@170 Vector of data line line numbers in the current table.
60 Line numbers are counted from the beginning of the table.  This
61 variable is initialized with `org-table-analyze'.
62 (defvar org-table-dlines nil (#$ . 16798))
63 #@166 Vector of hline line numbers in the current table.
64 Line numbers are counted from the beginning of the table.  This
65 variable is initialized with `org-table-analyze'.
66 (defvar org-table-hlines nil (#$ . 17017))
67 #@53 Regular expression for matching ranges in formulas.
68 (defconst org-table-range-regexp "@\\([-+]?I*[-+]?[0-9]*\\)?\\(\\$[-+]?[0-9]+\\)?\\(\\.\\.@?\\([-+]?I*[-+]?[0-9]*\\)?\\(\\$[-+]?[0-9]+\\)?\\)?" (#$ . 17231))
69 #@38 Match a range for reference display.
70 (defconst org-table-range-regexp2 "\\(@[-0-9I$&]+\\|[a-zA-Z]\\{1,2\\}\\([0-9]+\\|&\\)\\|\\$[a-zA-Z0-9]+\\)\\.\\.\\(@?[-0-9I$&]+\\|[a-zA-Z]\\{1,2\\}\\([0-9]+\\|&\\)\\|\\$[a-zA-Z0-9]+\\)" (#$ . 17447))
71 #@66 Match a reference that needs translation, for reference display.
72 (defconst org-table-translate-regexp "\\(@[-0-9I$]+\\|[a-zA-Z]\\{1,2\\}\\([0-9]+\\|&\\)\\)" (#$ . 17690))
73 #@116 Save current field; execute BODY; restore field.
74 Field is restored even in case of abnormal exit.
75
76 (fn &rest BODY)
77 (defalias 'org-table-save-field '(macro . #[128 "\300\301!\300\302!\303\304B\305BD\306\307B\310D\311D\312\313BB\257E\207" [make-symbol "--line" "--column" let ((copy-marker (line-beginning-position))) ((org-table-current-column)) unwind-protect progn goto-char org-table-goto-column set-marker (nil)] 12 (#$ . 17868)]))
78 (put 'org-table-save-field 'edebug-form-spec '(body))
79 #@135 Use the table.el package to insert a new table.
80 If there is already a table at point, convert between Org tables
81 and table.el tables.
82 (defalias 'org-table-create-with-table\.el #[0 "\300\301!\210\302 \203\303\304!\205&\305 \207\306 \203#\303\307!\205&\310 \210\305 \207\311\312!\207" [require table org-at-table\.el-p y-or-n-p "Convert table to Org table? " org-table-convert org-at-table-p "Convert table to table.el table? " org-table-align call-interactively table-insert] 2 (#$ . 18375) nil])
83 #@359 Convert region to table, or create an empty table.
84 If there is an active region, convert it to a table, using the function
85 `org-table-convert-region'.  See the documentation of that function
86 to learn how the prefix argument is interpreted to determine the field
87 separator.
88 If there is no such region, create an empty table with `org-table-create'.
89
90 (fn ARG)
91 (defalias 'org-table-create-or-convert-from-region #[257 "\300 \203 \301\302 \303 #\207\304!\207" [org-region-active-p org-table-convert-region region-beginning region-end org-table-create] 5 (#$ . 18884) "P"])
92 #@124 Query for a size and insert a table skeleton.
93 SIZE is a string Columns x Rows like for example "3x2".
94
95 (fn &optional SIZE)
96 (defalias 'org-table-create #[256 "\211\204\301\302\303Q\304\305$\262`\306i\307\"\310\311\"\312A@!\312@!\313\314\315\316\317\"$\320P\321\322\323\324 `\"\"\203>\325\326!\210\202A\327 \210\330\211W\203U\211c\266\211T\262\202C\266b\210\326V\203i\326\210\331c\210b\210\332 \207" [org-table-default-size read-string "Table size Columns x Rows [e.g. " "]: " "" nil make-string 32 org-split-string " *x *" string-to-number apply concat "|" make-list "  |" "\n" string-match "^[     ]*$" buffer-substring-no-properties point-at-bol beginning-of-line 1 newline 0 "\n|-" org-table-align] 13 (#$ . 19463) "P"])
97 #@889 Convert region to a table.
98
99 The region goes from BEG0 to END0, but these borders will be moved
100 slightly, to make sure a beginning of line in the first line is included.
101
102 SEPARATOR specifies the field separator in the lines.  It can have the
103 following values:
104
105 (4)     Use the comma as a field separator
106 (16)    Use a TAB as field separator
107 (64)    Prompt for a regular expression as field separator
108 integer  When a number, use that many spaces, or a TAB, as field separator
109 regexp   When a regular expression, use it to match the separator
110 nil      When nil, the command tries to be smart and figure out the
111          separator in the following way:
112          - when each line contains a TAB, assume TAB-separated material
113          - when each line contains a comma, assume CSV material
114          - else, assume one or more SPACE characters as separator.
115
116 (fn BEG0 END0 &optional SEPARATOR)
117 (defalias 'org-table-convert-region #[770 "^]\301\302\"V\203\303\304\"\202\305\232\203\"\306\307!\262b\210\310\311!\210\312 \262b\210n\203:\313u\210\202=\311\210\312 \262\204cb\210\314\315\316#\204T\317\202a\314\320\316#\204`\321\202a\311\262b\210\322\232\203\306`W\203\323\324!\203~\325c\210\202l\323\326!\203\217\327\330!\210\310\331!\210\202l\323\332!\203\245\327\333!\210\323\334!\203l\334c\210\202l\323\335!\203\262\336\225b\210\202l\323\337!\203\277\327\340!\210\202l\310\331!\210\202l\341\232\203\320\342\202\343\232\203\332\344\202\250\203\362\311W\203\353\303\345!\202\346\347\"\202;\203\376\346\350\"\202\351\352!\262\314\316#\203\327\325\316\211#\210\202b\210\353 \207" [org-table-convert-region-max-lines nil count-lines user-error "Region is longer than `org-table-convert-region-max-lines' (%s) lines; not converting" (64) read-regexp "Regexp for field separator" beginning-of-line 1 point-marker -1 re-search-forward "^[^\n    ]+$" t (16) "^[^\n,]+$" (4) (4) looking-at "^" "| " "[     ]*$" replace-match " |" 2 "[     ]*\"\\([^\"\n]*\\)\"" "\\1" "\"" "[^,\n]+" 0 "[     ]*," " | " (4) "^\\|\"?[     ]*,[     ]*\"?" (16) "^\\|    " "Number of spaces in separator must be >= 1" format "^ *\\| *     *\\| \\{%d,\\}" "^ *\\|%s" error "This should not happen" org-table-align] 10 (#$ . 20215) "r\nP"])
118 #@695 Import FILE as a table.
119
120 The command tries to be smart and figure out the separator in the
121 following way:
122
123   - when each line contains a TAB, assume TAB-separated material
124   - when each line contains a comma, assume CSV material
125   - else, assume one or more SPACE characters as separator.
126
127 When non-nil, SEPARATOR specifies the field separator in the
128 lines.  It can have the following values:
129
130 (4)     Use the comma as a field separator
131 (16)    Use a TAB as field separator
132 (64)    Prompt for a regular expression as field separator
133 integer When a number, use that many spaces, or a TAB, as field separator
134 regexp  When a regular expression, use it to match the separator.
135
136 (fn FILE SEPARATOR)
137 (defalias 'org-table-import #[514 "n\204\300c\210`d\301!\210\302`dZ\\#\207" ["\n" insert-file-contents org-table-convert-region] 9 (#$ . 22479) "f\nP"])
138 #@680 Export table to a file, with configurable format.
139 Such a file can be imported into usual spreadsheet programs.
140
141 FILE can be the output file name.  If not given, it will be taken
142 from a TABLE_EXPORT_FILE property in the current entry or higher
143 up in the hierarchy, or the user will be prompted for a file
144 name.  FORMAT can be an export format, of the same kind as it
145 used when `orgtbl-mode' sends a table in a different format.
146
147 The command suggests a format depending on TABLE_EXPORT_FORMAT,
148 whether it is set locally or up in the hierarchy, then on the
149 extension of the given file name, and finally on the variable
150 `org-table-export-default-format'.
151
152 (fn &optional FILE FORMAT)
153 (defalias 'org-table-export #[512 "\301 \204    \302\303!\210\304 \210\206\305`\306\307#\211\2041\310\311!\262\312!\2031\313\314\315\"!\2041\302\316!\210\317!\203;\302\320!\210\321\322 !\203T\323\324!\324\321\322 !!\"\203T\302\325!\210\326!\327P\206b\305`\330\307#\211\204\225\331\332\333\334\332\335\336\337\340\341\342\343\344\345\346!\347\"\350\351%\n\"\"@\206\206\307\211%\307\211%\352\353\340\211%\266\203\354\355\"\203\361\356\357\360\"!\361\225\205\260\362\363\357\361\"\364Q!\365\366\367 \370 \"!\371!\204\303\302\372\"\210\340r\373!q\210p\262\374 \210\375 \210\"\335\261\210\376 \210)\377!\266\201@\201A!\266\203\202\366\302\201B!\266\202\207" [org-table-export-default-format org-at-table-p user-error "No table at point" org-table-align org-entry-get "TABLE_EXPORT_FILE" t read-file-name "Export table to: " file-exists-p y-or-n-p format "Overwrite file %s? " "File not written" file-directory-p "This is a directory path, not a file" buffer-file-name buffer-base-buffer file-equal-p file-truename "Please specify a file name that is different from current" file-name-extension "$" "TABLE_EXPORT_FORMAT" ("orgtbl-to-tsv" "orgtbl-to-csv" "orgtbl-to-latex" "orgtbl-to-html" "orgtbl-to-generic" "orgtbl-to-texinfo" "orgtbl-to-orgtbl" "orgtbl-to-unicode") replace-regexp-in-string "    " "\\t" "\n" "\\n" delq nil mapcar make-byte-code 257 "\300\302\303\304#)\266\203\205\211\207" vconcat vector [inhibit-changing-match-data nil t string-match] 8 "\n\n(fn F)" org-completing-read "Format: " string-match "\\([^      \n]+\\)\\( +.*\\)?" intern match-string 1 2 read "(" ")" org-table-to-lisp buffer-substring-no-properties org-table-begin org-table-end fboundp "No such transformation function %s" find-file-noselect erase-buffer fundamental-mode save-buffer kill-buffer message "Export done." "TABLE_EXPORT_FORMAT invalid"] 21 (#$ . 23339) nil])
154 #@125 Marker at the beginning of the table last aligned.
155 Used to check if cursor still is in that table, to minimize realignment.
156 (defvar org-table-aligned-begin-marker (make-marker) (#$ . 25923))
157 #@119 Marker at the end of the table last aligned.
158 Used to check if cursor still is in that table, to minimize realignment.
159 (defvar org-table-aligned-end-marker (make-marker) (#$ . 26121))
160 #@140 List of flags for flushright alignment, from the last re-alignment.
161 This is being used to correctly align a single field after TAB or RET.
162 (defvar org-table-last-alignment nil (#$ . 26311))
163 #@116 List of max width of fields in each column.
164 This is being used to correctly align a single field after TAB or RET.
165 (defvar org-table-last-column-widths nil (#$ . 26508))
166 #@90 Non-nil means debug table formulas.
167 When nil, simply write "#ERROR" in corrupted fields.
168 (defvar org-table-formula-debug nil (#$ . 26684))
169 (make-variable-buffer-local 'org-table-formula-debug)
170 #@50 Overlay coordinates after each align of a table.
171 (defvar org-table-overlay-coordinates nil (#$ . 26883))
172 (make-variable-buffer-local 'org-table-overlay-coordinates)
173 (defvar org-last-recalc-line nil)
174 (defvar org-table-do-narrow t)
175 #@53 Used as display property in narrowed table columns.
176 (defconst org-narrow-column-arrow "=>" (#$ . 27119))
177 #@57 Align the table at point by aligning all vertical bars.
178 (defalias 'org-table-align #[0 "\306 \307\310 !\307\311 !\312 \313\314\315\316\317\"\320\"\321$\216\322\"\210\323\223\210    \323\223\210b\210\324\325!\210\326\314!\327\330\331{\332\"\"\327\333\334\323\"\"\211\203T\335\336\327\337\"\"\202b\340\"\210\341\n!\210\342\343!\344\345\"\323\211\314\211W\203\342\211\327\313\346\347\316\317!\350\"\321\351%    \"\323\211\212\352\353\354#\206\230 \205\230\352\355\354#)\203p\3562\341\211\205\336\211@\357\360\"\203\327\361\225\203\271\326\361\"\262 \203\312\362\225\203\312\363\326\362\"!\262\204\322\203\327\364\356\323\"\210A\266\202\202\241\2620\210\203p\211\203o\211@\365!V\203h\366\323\367\370\371!P$\210\211G\357\f\"\206\f^\361\361V\204\342\372\326\314\"\"\210\365!U\203+\262\202@\361\262\365\314O!W\203@\211T\262\202.\373\374\354D$\210\373\375SO!\362Y\203\\S\202_\362Z\376 D$\266A\266\202\202\347\210\206}\335\336\361\327\365\"#B\262\211\203\222\211\227\377\232B\262\202\331\314\201H\211\203\315\211@\211\345\232\204\306_@\323\354A\357#)\266\203\203\274\361\202\275\314\\T\211\262\245\262A\266\202\202\227\210\211BY    B\262    \266\266\211T\262\202j\266\237\262\211\237\262\211CD\201I  \201J\201K$\204\201I  \201J\354$\203\231\314\211W\203\227\211\2118G\314\211W\203\216\211 8\233\211@\211;\203\205\211G\201I\314\201J\201K%\206U\201I\201J\354$\262\203\205\365!W\203\205\201L\365!Z\201M\"\f8\203P\202\202P\240\266\266\211T\262\202\"\266\211T\262\202\266\201NP\201NP\201O\201P\211\203\351\211@\211A\262\242\203\300\345\202\303\201Q\201R#P\262\201R\201L\201S\"\"P\262\210A\266\202\202\254\314\201TO\201NP\262\210    \211\203g\211@\211\203\335\201R\201U\211A\262\242 \"#\202`\201V {\211\232\203S\314\211\201W\374#\262\201W\374#\211\262\203E=\204(=\266\202\203S\323y\210\202^\332\261\210`\311\362!|\210\266A\266\202\202\370\266E\203\203\201X\201Y!\204\203b\210\201Z    !\204{    \323\211\223\210F\203\223\201F \210\323\211G\266\207)\266\202\207" [org-table-aligned-begin-marker org-table-aligned-end-marker org-table-default-size org-table-do-narrow org-bracket-link-regexp org-narrow-column-arrow org-table-begin copy-marker org-table-end line-beginning-position org-table-current-column make-byte-code 0 "\300b\210\302\301!\210\300\303\211\223\207" vconcat vector [org-table-goto-column nil] 3 font-lock-fontify-region nil looking-at "[     ]*" match-string mapcar #[257 "\301\302\303\304#)\266\203?\2052\211\302\305\203\306\202\307\310\305\311\310##\266\202\312\313G\314$\210\211\262\207" [inhibit-changing-match-data "\\`[     ]*|-" nil t string-match replace-regexp-in-string "\\`\\([     ]*\n\\)+" "\\`[     \n ]+" #1="" "[     \n ]+\\'" remove-text-properties 0 (display t org-cwidth t)] 10 "\n\n(fn L)"] org-split-string "\n" #[257 "\300\301\"\207" [org-split-string " *| *"] 4 "\n\n(fn L)"] remq apply max length kill-region org-table-create user-error "Empty table - created default table" make-list #1# 257 "\3008\206\301\207" [#1#] "\n\n(fn X)" re-search-forward "| *<[lrc][0-9]*> *\\(|\\|$\\)" t "| *<[lrc]?[0-9]+> *\\(|\\|$\\)" :exit string-match "\\`<\\([lrc]\\)?\\([0-9]+\\)?>\\'" 1 2 string-to-number throw org-string-width org-add-props help-echo "Clipped table field, use `\\[org-table-edit-field]' to edit.  Full value is:\n" substring-no-properties "Cannot narrow field starting with wide link \"%s\"" add-text-properties org-cwidth string-width display "r" org-table-number-regexp inhibit-changing-match-data org-table-number-fraction org-table-last-alignment org-table-last-column-widths orgtbl-mode org-table-overlay-coordinates org-table-may-need-update 0.0 text-property-any invisible org-link make-string 32 "|" " %%%s%ds |" "-%s-+" "-" format 45 -1 append line-end-position next-single-property-change derived-mode-p org-mode org-hide-wide-columns] 29 (#$ . 27230) nil])
179 #@221 Find the beginning of the table and return its position.
180 With a non-nil optional argument TABLE-TYPE, return the beginning
181 of a table.el-type table.  This function assumes point is on
182 a table.
183
184 (fn &optional TABLE-TYPE)
185 (defalias 'org-table-begin #[256 "\211\203\n\301\302\303 \"\207\212\304\305\306#\205\307\310!)\206e\207" [org-table-border-regexp org-element-property :post-affiliated org-element-at-point re-search-backward nil t line-beginning-position 2] 5 (#$ . 31327)])
186 #@209 Find the end of the table and return its position.
187 With a non-nil optional argument TABLE-TYPE, return the end of
188 a table.el-type table.  This function assumes point is on
189 a table.
190
191 (fn &optional TABLE-TYPE)
192 (defalias 'org-table-end #[256 "\212\211\203\301\302\303 \"b\210\304\305x\210\306\307!\2024\310\305\311#\203#\312\224\2024db\210\313\305x\210n\2032`\2024\314 )\207" [org-table-border-regexp org-element-property :end org-element-at-point "     \n" nil line-beginning-position 2 re-search-forward t 0 "     " line-end-position] 5 (#$ . 31818)])
193 #@156 Justify the current field, text to left, number to right.
194 Optional argument NEW may specify text to replace the current field content.
195
196 (fn &optional NEW)
197 (defalias 'org-table-justify-field-maybe #[256 "\211\204\206\253\304 \206\253\211\204)\305    !p=\203%`    W\204%`\nY\203)\306\211\207`\307 \211\310V\205\251\311\312x\210\313\314!\204B\306\211\202\251\211S 8\315\310!\315\316!\316\317!\320Z]\321\224\321\225U?\322\203b\323\202c\324\203l\325\202o\306\326#\204|\322\"\202\224\317    !X\203\215\322\n\"\202\224\306\322\327\n\"\211\232\204\244\312\330\306\211#\210)b\266\207\266\202\207" [org-table-may-need-update org-table-aligned-begin-marker org-table-aligned-end-marker org-table-last-alignment org-at-table-hline-p marker-buffer t org-table-current-column 0 "^|" nil looking-at " *\\([^|\n]*?\\) *\\(|\\|$\\)" match-string 1 org-string-width 3 2 format " %%%ds %s" " %%-%ds %s" "|" "" " %s |" replace-match] 14 (#$ . 32378)])
198 #@124 Go to the next field in the current table, creating new lines as needed.
199 Before doing so, re-align the table if necessary.
200 (defalias 'org-table-next-field #[0 "\303 \210\304 \210\203    \203\305 \210\306 \307 \203\310\210\3111a\312\313\"\210\314\315!\203/\312\313\"\210\314\316!\203E\n\203E\312\317\320#\203E\310\224b\210\314\316!\203U\321\322!\210\323\324!\202]\314\325!\205]\310u0\202e\210\323\324!\207" [org-table-automatic-realign org-table-may-need-update org-table-tab-jumps-over-hlines org-table-maybe-eval-formula org-table-maybe-recalculate-line org-table-align org-table-end org-at-table-hline-p 1 (error) re-search-forward "|" looking-at "[     ]*$" "-" "^[     ]*|\\([^-]\\)" t beginning-of-line 0 org-table-insert-row below " "] 5 (#$ . 33352) nil])
201 #@90 Go to the previous field in the table.
202 Before doing so, re-align the table if necessary.
203 (defalias 'org-table-previous-field #[0 "\303 \210\304 \210\203    \203\305 \210\306 \203\307\210\310 `\3111?\312\313\307\314$\210\315\316\317!)\262\205;\312\313\"\210\202'0\202F\210\211b\210\320\321!\266\317\322!\205Q\323\225b\207" [org-table-automatic-realign org-table-may-need-update inhibit-changing-match-data org-table-justify-field-maybe org-table-maybe-recalculate-line org-table-align org-at-table-hline-p nil org-table-begin (error) search-backward "|" 2 "|\\(?:-\\|[     ]*$\\)" t looking-at user-error "Cannot move to previous table field" "| ?" 0] 7 (#$ . 34132) nil])
204 #@210 Move to the beginning of the current table field.
205 If already at or before the beginning, move to the beginning of the
206 previous field.
207 With numeric argument N, move N-1 fields backward first.
208
209 (fn &optional N)
210 (defalias 'org-table-beginning-of-field #[256 "`\300V\203S\262\301 \210\202\302\303\304\305!\306#\204\"\307\310!\210\202/\305\225b\210\311\312!\203/\300u\210`Y\2058\313\314!\207" [1 org-table-previous-field re-search-backward "|" point-at-bol 0 t user-error "No more table fields before the current" looking-at " " org-table-beginning-of-field 2] 6 (#$ . 34824) "p"])
211 #@192 Move to the end of the current table field.
212 If already at or after the end, move to the end of the next table field.
213 With numeric argument N, move N-1 fields forward first.
214
215 (fn &optional N)
216 (defalias 'org-table-end-of-field #[256 "`\300V\203S\262\301 \210\202\302\303\304\300!\305#\2037\306u\210\307\310x\210`\206'`Sf\311\232\2037\312\307!\2037\300u\210`X\205@\313\314!\207" [1 org-table-next-field re-search-forward "|" point-at-eol t -1 " " nil 124 looking-at org-table-end-of-field 2] 6 (#$ . 35420) "p"])
217 #@106 Go to the next row (same column) in the current table.
218 Before doing so, re-align the table if necessary.
219 (defalias 'org-table-next-row #[0 "\302 \210\303 \210\203    \203\304 \210\305 \306\307!\210\310 \203!\311 \203)\306\312!\210\313\314!\210\315!\210\316\317x\210\320\321!\2059\317u\207" [org-table-automatic-realign org-table-may-need-update org-table-maybe-eval-formula org-table-maybe-recalculate-line org-table-align org-table-current-column beginning-of-line 2 org-at-table-p org-at-table-hline-p 0 org-table-insert-row below org-table-goto-column "^|\n " nil looking-at " "] 3 (#$ . 35950) nil])
220 #@760 Copy the value of the current field one row below.
221
222 If the field at the cursor is empty, copy the content of the
223 nearest non-empty field above.  With argument N, use the Nth
224 non-empty field.
225
226 If the current field is not empty, it is copied down to the next
227 row, and the cursor is moved with it.  Therefore, repeating this
228 command causes the column to be filled row-by-row.
229
230 If the variable `org-table-copy-increment' is non-nil and the
231 field is an integer or a timestamp, it will be incremented while
232 copying.  By default, increment by the difference between the
233 value in the current field and the one in the field above.  To
234 increment using a fixed integer, set `org-table-copy-increment'
235 to a number.  In the case of a timestamp, increment by days.
236
237 (fn N)
238 (defalias 'org-table-copy-down #[257 "\304 i\212\305 )\212\306\307 S\304 \")\206\310\311\312\"\311\312\"\313 \314\211\211\315 \210\204\246\212\3162_\317\320!\210\321\322#\205^\323 \322\"\210\324\325!\2030 S\211\262 \326X\2030\327\316\330\320!\"\210\20200\262\3162\224\317\320!\210\321\322#\205\223\323 \322\"\210\324\325!\203e S\211\262 \326X\203e\327\316\330\320!\"\210\202e0\262\205\240\311\312    \"\262)\202\305\314\331\203\262\332\202\263\333\310\331\334\310##\266\202\262\335 \210\336 \210\203\342\314\331\203\325\332\202\326\333\310\331\334\310##\266\202\262    \247\203\353    \202+\203*\311\n\"\203\311\n\"\203\337!\337!Z\202+\311\n\"\203\320\202+\311\340\"\203&\341!\341\330\326\"!Z\202+\320\202+\320\262\2047\342\343!\202\206    \203c\326\232\204c\344\314\322\311#)\266\203\203c\341!\345W\203c\346\347\350!Q!\262c\210\351\n!\210    \203|\352\353!\203|\354!\210\202\355 \210\356 \210\351\n!\207" [org-table-dataline-regexp org-table-copy-increment org-ts-regexp3 inhibit-changing-match-data org-table-current-column org-table-get-field org-table-get org-table-current-line "" string-match "[^     ]" org-table-begin nil org-table-check-inside-data-field exit beginning-of-line 1 re-search-backward t org-table-goto-column looking-at "|[     ]*\\([^|     ][^|]*?\\)[     ]*|" 0 throw match-string replace-regexp-in-string "\\`\\([     ]*\n\\)+" "\\`[     \n ]+" "[     \n ]+\\'" org-table-next-row org-table-blank-field org-time-string-to-absolute "\\([-+]\\)?\\(?:[0-9]+\\)?\\(?:.[0-9]+\\)?" string-to-number user-error "No non-empty field found" "^[-+^/*0-9eE.]+$" 100000000 calc-eval "+" number-to-string org-move-to-column org-at-timestamp-p lax org-timestamp-up-day org-table-maybe-recalculate-line org-table-align] 21 (#$ . 36567) "p"])
239 #@192 Is point inside a table data field?
240 I.e. not on a hline or before the first or after the last column?
241 This actually throws an error, so it aborts the current command.
242
243 (fn &optional NOERROR)
244 (defalias 'org-table-check-inside-data-field #[256 "\300 \203\212\301\302x\210n)\204\303 \204\304\305!?\206$\211\203!\302\207\306\307!\207" [org-at-table-p "     " nil org-at-table-hline-p looking-at "[     ]*$" user-error "Not in table data field"] 3 (#$ . 39153)])
245 #@30 Clipboard for table regions.
246 (defvar org-table-clip nil (#$ . 39619))
247 #@309 Get the field in table line LINE, column COLUMN.
248 If LINE is larger than the number of data lines in the table, the function
249 returns nil.  However, if COLUMN is too large, we will simply return an
250 empty string.
251 If LINE is nil, use the current line.
252 If COLUMN is nil, use the current column.
253
254 (fn LINE COLUMN)
255 (defalias 'org-table-get #[514 "\211\206\300 \262\212\203\301!\205+\302!\303\304\203 \305\202!\306\307\304\310\307##\266\202)\207" [org-table-current-column org-table-goto-line org-table-get-field nil replace-regexp-in-string "\\`\\([     ]*\n\\)+" "\\`[     \n ]+" "" "[     \n ]+\\'"] 11 (#$ . 39696)])
256 #@125 Put VALUE into line LINE, column COLUMN.
257 When ALIGN is set, also realign the table.
258
259 (fn LINE COLUMN VALUE &optional ALIGN)
260 (defalias 'org-table-put #[1027 "\206\300 \262\212\203\301!\205\302\303\304#\210\305\")\203%\306 \210\207" [org-table-current-column org-table-goto-line org-table-goto-column nil force org-table-get-field org-table-align] 8 (#$ . 40321)])
261 #@44 Return the index of the current data line.
262 (defalias 'org-table-current-line #[0 "`\301 \302\212\303 b\210\304\305#\203 \211T\211\262\203 \306 W\204    )\207" [org-table-dataline-regexp org-table-end 0 org-table-begin re-search-forward t point-at-eol] 7 (#$ . 40705)])
263 #@112 Go to the Nth data line in the current table.
264 Return t when the line exists, nil if it does not exist.
265
266 (fn N)
267 (defalias 'org-table-goto-line #[257 "\301 b\210\302 \303\304\305#\203\211T\211\262W\204\211U\207" [org-table-dataline-regexp org-table-begin org-table-end 0 re-search-forward t] 7 (#$ . 40985)])
268 #@49 Blank the current table field or active region.
269 (defalias 'org-table-blank-field #[0 "\301 \210\302\303!\203\304 \203\305\306\307 \310 \")\207\311\305x\210\312u\210\313\314!\205B\315\224\316\315!\317!\320\321\322S\323\"P!\210\324\\b\210\325\305O\266\203\207" [org-table-clip org-table-check-inside-data-field called-interactively-p any org-region-active-p nil org-table-cut-region region-beginning region-end "^|" -1 looking-at "|[^|\n]+" 0 match-string org-string-width replace-match "|" make-string 32 2 1] 8 (#$ . 41307) nil])
270 #@214 Return the value of the field in column N of current row.
271 N defaults to current column.  If REPLACE is a string, replace
272 field with this value.  The return value is always the old
273 value.
274
275 (fn &optional N REPLACE)
276 (defalias 'org-table-get-field #[512 "\203\301!\210\302\303x\210n\204\304\305\306!)\262\203\307\207\306\310!\210\311\224\211\311\225{\203<\312\307\232\2037\313\2028\305\211#\210\314 T^b\210\207" [inhibit-changing-match-data org-table-goto-column "^|\n" nil "[     ]*$" t looking-at "" "[^| \n]*" 0 replace-match " " line-end-position] 8 (#$ . 41854)])
277 #@84 Show info about the current field, and highlight any reference at point.
278
279 (fn ARG)
280 (defalias 'org-table-field-info #[257 "\303 \204    \304\305!\210\306 \210\212`\307 \310\311!\"@\310\312    \313 \"D\n\"@\314\315\316\317 \"!\320 \321\322#\323!\324\"\206?\324\"\324\321\325\n\"\"\206M\211\211\205W\326\327\330@#\211\203^\211\262\210\nb\210\3311n\332\333!0\202r\210\202s\210\334\335\f\f\203\205\336 P\202\206\337\n\n\203\230\336P\202\231\337    \203\304\340\341\342\343 @\"\204\262\342\344 @\"\203\266\337\202\267\343\f@\345AR!P\202\305\337&    \266\213)\207" [org-table-column-names org-table-current-begin-pos org-table-named-field-locations org-at-table-p user-error "Not at a table" org-table-analyze org-table-current-column rassoc int-to-string count-lines line-beginning-position org-table-expand-lhs-ranges mapcar #[257 "\300@!AB\207" [org-table-formula-handle-first/last-rc] 3 "\n\n(fn E)"] org-table-get-stored-formulas org-table-current-dline format "@%d$%d" org-table-convert-refs-to-an assoc "$%d" get-text-property 0 :orig-eqn (error) org-table-show-reference local message "line @%d, col $%s%s, ref @%d$%d or %s%s%s" " or $" "" ", formula: " org-table-formula-to-user string-prefix-p "$" "@" "="] 27 (#$ . 42440) "P"])
281 #@34 Find out which column we are in.
282 (defalias 'org-table-current-column #[0 "\212\300`\301 \210\302\303\304#\203T\262\202\266\202)\207" [0 beginning-of-line search-forward "|" t] 6 (#$ . 43722) nil])
283 #@74 Find out what table data line we are in.
284 Only data lines count for this.
285 (defalias 'org-table-current-dline #[0 "\212\301\302 \303 b\210`X\203\304!\203T\262\305y\210\202\266\202)\207" [org-table-dataline-regexp 0 line-beginning-position org-table-begin looking-at nil] 4 (#$ . 43933)])
286 #@319 Move the cursor to the Nth column in the current table line.
287 With optional argument ON-DELIM, stop with point before the left delimiter
288 of the field.
289 If there are less than N fields, just go to after the last delimiter.
290 However, when FORCE is non-nil, create new columns if necessary.
291
292 (fn N &optional ON-DELIM FORCE)
293 (defalias 'org-table-goto-column #[769 "\300\301!\210\302V\205OS\211\262\303V\203.\304\305\306 \307#\204\n\211\203.\301\210\310\311x\210\312c\210\202\n\211\203@\313\314!\204@\212\301\210\312c\210)\203G\303u\207\313\315!\205O\301u\207" [beginning-of-line 1 0 -1 search-forward "|" point-at-eol t "^|" nil " | " looking-at ".*|" " "] 7 (#$ . 44237) "p"])
294 #@37 Insert a new column into the table.
295 (defalias 'org-table-insert-column #[0 "\301 \204    \302\303!\210\304 \210\305\306 ]\307 \310\311 !\310\312 !\306 \313\314\315\316\317\"\320\"\321$\216b\210`W\203G\322 \204A\323\324\"\210\325c\210\326y\210\202.)\266\211\326\211\223\210\327 \210\203\\\330!\205k\331\332\326S\305$\210\331\333\326S\305$\207" [org-table-fix-formulas-confirm org-at-table-p user-error "Not at a table" org-table-find-dataline 1 org-table-current-column org-table-begin copy-marker org-table-end line-beginning-position make-byte-code 0 "\300b\210\302\301!\210\300\303\211\223\207" vconcat vector [org-table-goto-column nil] 3 org-at-table-hline-p org-table-goto-column t "|   " nil org-table-align "Fix formulas? " org-table-fix-formulas "$" "$LR"] 12 (#$ . 44929) nil])
296 #@77 Find a data line in the current table, which is needed for column commands.
297 (defalias 'org-table-find-dataline #[0 "\300 \203\f\301 \204\f\302\207i\303 \304!\210`W\203/iU\203$\301 \203/\305\306!\210\304!\210\202\300 \203=\301 \204=\302\202@\307\310!\207" [org-at-table-p org-at-table-hline-p t org-table-end org-move-to-column beginning-of-line 2 user-error "Please position cursor in a data line for column operations"] 4 (#$ . 45737)])
298 #@284 Turn a buffer line number into a data line number.
299
300 If there is no data line in this line, return nil.
301
302 If there is no matching dline (most likely the reference was
303 a hline), the first dline below it is used.  When ABOVE is
304 non-nil, the one above is used.
305
306 (fn LINE &optional ABOVE)
307 (defalias 'org-table-line-to-dline #[513 "\301GSHV\204HW\203\302\202fHU\203$\211\202f\3032f\211Z\301V\203\\\211\\\304\245H\211U\203G\305\303\"\210\202W\211V\203T\262\202W\262\266\202(\203d\202e\2110\207" [org-table-dlines 1 nil exit 2 throw] 9 (#$ . 46196)])
308 #@33 Delete a column from the table.
309 (defalias 'org-table-delete-column #[0 "\301 \204    \302\303!\210\304 \210\305 \210\306 \307 \310\311 !\310\312 !\306 \313\314\315\316\317\"\320\"\321$\216b\210`W\203O\322 \204I\323\324\"\210\325\326!\203I\327\330!\210\331y\210\202/)\266\211\331\211\223\210\323\332S]!\210\333 \210\203k\334!\205\206\335\336\337!\340BC\341%\210\335\342\337!\340BC\341%\207" [org-table-fix-formulas-confirm org-at-table-p user-error "Not at a table" org-table-find-dataline org-table-check-inside-data-field org-table-current-column org-table-begin copy-marker org-table-end line-beginning-position make-byte-code 0 "\300b\210\302\301!\210\300\303\211\223\207" vconcat vector [org-table-goto-column nil] 3 org-at-table-hline-p org-table-goto-column t looking-at "|[^|\n]+|" replace-match "|" nil 1 org-table-align "Fix formulas? " org-table-fix-formulas "$" number-to-string "INVALID" -1 "$LR"] 12 (#$ . 46786) nil])
310 #@27 Move column to the right.
311 (defalias 'org-table-move-column-right #[0 "\300\301!\207" [org-table-move-column nil] 2 (#$ . 47747) nil])
312 #@26 Move column to the left.
313 (defalias 'org-table-move-column-left #[0 "\300\301!\207" [org-table-move-column left] 2 (#$ . 47887) nil])
314 #@94 Move the current column to the right.  With arg LEFT, move to the left.
315
316 (fn &optional LEFT)
317 (defalias 'org-table-move-column #[256 "\301 \204    \302\303!\210\304 \210\305 \210\306 \203\211S\202\211\203$S\202&T\307 \310\311 !\203:\312U\203:\302\313!\210\204H\314\315!\203H\302\316!\210\310\317 !\306 \320\321\322\323\324\"\325\"\326$\216b\210`W\203\210\327 \204\202\330\331\"\210\314\332!\203\202\333\312\224\312\225\334\224\334\225$\210\335y\210\202`)\266\211\335\211\223\210\330!\210\336 \210\203\241\337!\205\316\340\341\342!\342!B\342!\342    !BD\"\210\340\343\342!\342!B\342!\342    !BD\"\207" [org-table-fix-formulas-confirm org-at-table-p user-error "Not at a table" org-table-find-dataline org-table-check-inside-data-field org-table-current-column org-table-begin copy-marker org-table-end 1 "Cannot move column further left" looking-at "[^|\n]*|[^|\n]*$" "Cannot move column further right" line-beginning-position make-byte-code 0 "\300b\210\302\301!\210\300\303\211\223\207" vconcat vector [org-table-goto-column nil] 3 org-at-table-hline-p org-table-goto-column t "|\\([^|\n]+\\)|\\([^|\n]+\\)|" transpose-regions 2 nil org-table-align "Fix formulas? " org-table-fix-formulas "$" number-to-string "$LR"] 15 (#$ . 48026) "P"])
318 #@22 Move table row down.
319 (defalias 'org-table-move-row-down #[0 "\300\301!\207" [org-table-move-row nil] 2 (#$ . 49312) nil])
320 #@20 Move table row up.
321 (defalias 'org-table-move-row-up #[0 "\300\301!\207" [org-table-move-row up] 2 (#$ . 49440) nil])
322 #@80 Move the current table line down.  With arg UP, move it up.
323
324 (fn &optional UP)
325 (defalias 'org-table-move-row #[256 "i`\212\302\303!\210\304!)\305 \211\203\306\202\303\\\203 \307\202!\310\311\2032e\312 U\2032\313\314!\210\302!\210\204?m\204D\315 \204Kb\210\313\314!\210\304!\262b\210\316\312 \312\310!\"\302!\210n\204e\317c\210\211c\210n\204o\317c\210\302\307!\210\320!\210\206\211\206\211    ?\206\210    \321!??\205\243\322\323\324!\324!B\324!\324    !BD\"\262\207" [org-table-hline-regexp org-table-fix-formulas-confirm beginning-of-line 1 looking-at org-table-current-dline -1 0 2 nil line-beginning-position user-error "Cannot move row further" org-at-table-p delete-and-extract-region "\n" org-move-to-column "Fix formulas? " org-table-fix-formulas "@" number-to-string] 15 (#$ . 49563) "P"])
326 #@125 Insert a new row above the current line into the table.
327 With prefix ARG, insert below the current line.
328
329 (fn &optional ARG)
330 (defalias 'org-table-insert-row #[256 "\303 \204    \304\305!\210\306 \307 {\310!\311\312\"\203#\313\314\315\"\316\211$\262\317\203,\320\202-\321!\210n\2046\322c\210\323\324\322\"\210)\317\315!\210\325\326\307 \316#\210\204Q    \203T\327 \210\n\203^\n\330!\205f\331\332\323\333 S\321$\207" [org-table-may-need-update org-table-overlay-coordinates org-table-fix-formulas-confirm org-at-table-p user-error "Not at a table" line-beginning-position line-end-position org-table-clean-line string-match "^[     ]*| *[#$] *|" replace-match match-string 0 t beginning-of-line 2 1 "\n" nil insert-before-markers re-search-forward "| ?" org-table-align "Fix formulas? " org-table-fix-formulas "@" org-table-current-dline] 8 (#$ . 50401) "P"])
331 #@137 Insert a horizontal-line below the current line into the table.
332 With prefix ABOVE, insert above the current line.
333
334 (fn &optional ABOVE)
335 (defalias 'org-table-insert-hline #[256 "\302 \204    \303\304!\210m\203\305c\210\306u\210\307\310\311 \203`\202!\312 {\262\310\313\314#)\266\203\2045\315 \210\316\311 \312 {!i\314\317\"\203Y\320\321\322\323\225\323\224Z\324\"\325Q\313\211$\262\202=\314\326\"\203h\320\325\313\211$\262\327\203q\323\202r\330!\210\305\261\210\327\203\202\323\202\203\306!\210\331!\210    \205\217\315 \207" [inhibit-changing-match-data org-table-overlay-coordinates org-at-table-p user-error "Not at a table" "\n" -1 "|[     ]*$" nil point-at-bol point-at-eol t string-match org-table-align org-table-clean-line "|\\( +\\)|" replace-match "+" make-string 1 45 "|" "\\+" beginning-of-line 2 org-move-to-column] 8 (#$ . 51274) "P"])
336 #@81 Insert a hline and move to the row below that line.
337
338 (fn &optional SAME-COLUMN)
339 (defalias 'org-table-hline-and-move #[256 "\300 \301 \210\302 \210\303 \210\304\210\305\306!\203\307c\210\310 \210\202 \311 \210\205'\312!\207" [org-table-current-column org-table-maybe-eval-formula org-table-maybe-recalculate-line org-table-insert-hline 2 looking-at "\n[     ]*|-" "\n|" org-table-align org-table-next-field org-table-goto-column] 4 (#$ . 52152) "P"])
340 #@134 Convert a table line S into a string with only "|" and space.
341 In particular, this does handle wide and invisible characters.
342
343 (fn S)
344 (defalias 'org-table-clean-line #[257 "\300\301\"\203\302\303\304#\211\262\207\300\305\"\203.\306\307\310\311\312\313\"!\314\"\307Q\315\211$\262\202\207" [string-match "^[     ]*|-" mapconcat #[257 "\211\300\235\203\301\207\302\207" [(124 43) "|" " "] 3 "\n\n(fn X)"] "" "|\\([     ]*?[^      \n|][^ \n|]*\\)|" replace-match "|" make-string org-string-width match-string 1 32 t] 8 (#$ . 52613)])
345 #@59 Delete the current row or horizontal line from the table.
346 (defalias 'org-table-kill-row #[0 "\302 \204    \303\304!\210i\305!?\205\306 \307\310 \311 Td^\"\210\302 \204&\312\313!\210\314!\210\211\205D    \2038    \315!\205D\316\317\320!\321BC\322%\207" [org-table-hline-regexp org-table-fix-formulas-confirm org-at-table-p user-error "Not at a table" org-match-line org-table-current-dline kill-region point-at-bol point-at-eol beginning-of-line 0 org-move-to-column "Fix formulas? " org-table-fix-formulas "@" number-to-string "INVALID" -1] 8 (#$ . 53154) nil])
347 #@1420 Sort table lines according to the column at point.
348
349 The position of point indicates the column to be used for
350 sorting, and the range of lines is the range between the nearest
351 horizontal separator lines, or the entire table of no such lines
352 exist.  If point is before the first column, you will be prompted
353 for the sorting column.  If there is an active region, the mark
354 specifies the first line and the sorting column, while point
355 should be in the last line to be included into the sorting.
356
357 The command then prompts for the sorting type which can be
358 alphabetically, numerically, or by time (as given in a time stamp
359 in the field, or as a HH:MM value).  Sorting in reverse order is
360 also possible.
361
362 With prefix argument WITH-CASE, alphabetic sorting will be case-sensitive.
363
364 If SORTING-TYPE is specified when this function is called from a Lisp
365 program, no prompting will take place.  SORTING-TYPE must be a character,
366 any of (?a ?A ?n ?N ?t ?T ?f ?F) where the capital letters indicate that
367 sorting should be done in reverse order.
368
369 If the SORTING-TYPE is ?f or ?F, then GETKEY-FUNC specifies
370 a function to be called to extract the key.  It must return a value
371 that is compatible with COMPARE-FUNC, the function used to compare
372 entries.
373
374 A non-nil value for INTERACTIVE? is used to signal that this
375 function is being called interactively.
376
377 (fn &optional WITH-CASE SORTING-TYPE GETKEY-FUNC COMPARE-FUNC INTERACTIVE\=\?)
378 (defalias 'org-table-sort-lines #[1280 "\302 \203    \303 b\210\212\304\305x\210n\203\306\307\310 \311#\210\312 \210)\313 \211\314V\203)\211\2024\2033\315\316!\2024\317\262\206=\320\321!\214\302 \203V\303 b\210`\212\322 b\210\323\324!)}\210\202~\325 \326 \212\327\311#\203i\323\324!\202j)\212\330\311#)\203z\314\224\202{}\266?\331e\323 \"iB\332\333\"\203\224\334\202\311\332\335\"\203\237\336\202\311\332\337\"\203\252\340\202\311\332\341\"\203\305\206\311\203\277\342\343!\206\311\344\345!\202\311\346\347\"\332\350\"\203\324\351\202\362\332\352\"\203\337\353\202\362\332\354\"\205\362\206\362\205\362\342\355\356\"eb\210\357\360>\361\362\363\314\364\365\366  \"\367\"\370$\305&\210@y\210\371A!)\266\203)\207" [org-table-hline-regexp sort-fold-case org-region-active-p region-beginning "     " nil search-forward "|" line-end-position t org-table-check-inside-data-field org-table-current-column 0 read-number "Use column N for sorting: " 1 read-char-exclusive "Sort Table: [a]lphabetic, [n]umeric, [t]ime, [f]unc.  A/N/T/F means reversed: " region-end line-beginning-position 2 org-table-begin org-table-end re-search-backward re-search-forward count-lines memql (110 78) string-to-number (97 65) org-sort-remove-invisible (116 84) #[257 "\301\"\203\302\303\304\305\"!!\207\306!\203\307!\207\301\310\"\203(\307\304\305\"!\207\305\207" [org-ts-regexp-both string-match float-time org-time-string-to-time match-string 0 org-duration-p org-duration-to-minutes "\\<[0-9]+:[0-9]\\{2\\}\\>"] 6 "\n\n(fn F)"] (102 70) org-read-function "Function for extracting keys: " error "Missing key extractor to sort rows" user-error "Invalid sorting type `%c'" (110 78 116 84) < (97 65) string< (102 70) "Function for comparing keys (empty for default `sort-subr' predicate): " allow-empty sort-subr (65 78 84 70) #[0 "\301y\210m?\205\302!?\205\301y\210\202\207" [org-table-dataline-regexp nil looking-at] 2] end-of-line make-byte-code "\301\302\300!\303\304\203\305\202\306\307\304\310\307##\266\202!\207" vconcat vector [org-table-get-field nil replace-regexp-in-string "\\`\\([     ]*\n\\)+" "\\`[     \n ]+" "" "[     \n ]+\\'"] 10 move-to-column] 21 (#$ . 53727) (byte-code "\301\211\211\302\257\207" [current-prefix-arg nil t] 5)])
379 #@143 Copy region in table to the clipboard and blank all relevant fields.
380 If there is no active region, use just the field at point.
381
382 (fn BEG END)
383 (defalias 'org-table-cut-region #[514 "\300\301#\207" [org-table-copy-region cut] 6 (#$ . 57454) (byte-code "\300 \203\n\301 \202 `\300 \203\302 \202`D\207" [org-region-active-p region-beginning region-end] 2)])
384 #@165 Copy rectangular region in table to clipboard.
385 A special clipboard is used which can only be accessed
386 with `org-table-paste-rectangle'.
387
388 (fn BEG END &optional CUT)
389 (defalias 'org-table-copy-region #[770 "^b\210\301 \210\302 \303 \304]b\210\301 \210\305\306 !\303 ^]\211ZT\205+\307b\210`W\203i\310 \204c\304\311\211W\203Y\211\312    \\\"B\262\210\211T\262\202>\266\211\237B\262\210\304y\210\202/\304\211\223\266\203v\313 \210\211\237\211\207" [org-table-clip org-table-check-inside-data-field line-beginning-position org-table-current-column nil copy-marker line-end-position "  " org-at-table-hline-p 0 org-table-get-field org-table-align] 19 (#$ . 57823) (byte-code "\301 \203\n\302 \202 `\301 \203\303 \202`E\207" [current-prefix-arg org-region-active-p region-beginning region-end] 3)])
390 #@274 Paste a rectangular region into a table.
391 The upper right corner ends up in the current field.  All involved fields
392 will be overwritten.  If the rectangle does not fit into the present table,
393 the table is enlarged as needed.  The process ignores horizontal separator
394 lines.
395 (defalias 'org-table-paste-rectangle #[0 ":\204    \302\303!\210\304 \210\305 \306\307\310 !\305 \311\312\313\314\315\"\316\"\317$\216\211\203q\211@\320 \2037\306y\210\202,n\203G\321\322!\204G\312\210\323 \210\211\203e\211@\324\306\325#\210\326\306\"\210T\262A\266\202\202I\266\306y\210A\266\202\202&\210)\266\327 )\207" [org-table-clip org-table-automatic-realign user-error "First cut/copy a region to paste!" org-table-check-inside-data-field org-table-current-column nil copy-marker line-beginning-position make-byte-code 0 "\300b\210\302\301!\210\300\303\211\223\207" vconcat vector [org-table-goto-column nil] 3 org-at-table-hline-p looking-at "[     ]*|" org-table-next-field org-table-goto-column force org-table-get-field org-table-align] 12 (#$ . 58663) nil])
396 #@545 Convert from `org-mode' table to table.el and back.
397 Obviously, this only works within limits.  When an Org table is converted
398 to table.el, all horizontal separator lines get lost, because table.el uses
399 these as cell boundaries and has no notion of horizontal lines.  A table.el
400 table can be converted to an Org table only if it does not do row or column
401 spanning.  Multiline cells will become multiple cells.  Beware, Org mode
402 does not test if the table can be successfully converted - it blindly
403 applies a recipe that works for simple tables.
404 (defalias 'org-table-convert #[0 "\300\301!\210\302 \203-\303\304\305!!\303\306\305!!\307\"\210b\210\310\311\305#\203*\312\313!\210\202b\207\314 \205\226\303\304 !\303\306 !b\210\310\315\305#\203L\312\313!\210\202=b\210\316\317!\210\320\321!\210\320\322!\210`W\203g\316 \210\202Wb\210\211\306 \323\223\262\310\324\305#\203\200\312\325!\210\202qb\210\310\326\305#\203\222\312\327!\210\202\203b\266\202\207" [require table org-at-table\.el-p copy-marker org-table-begin t org-table-end table-unrecognize-region re-search-forward "^\\([     ]*\\)\\+-.*\n" replace-match "" org-at-table-p "^\\([     ]*\\)|-.*\n" org-table-insert-hline above beginning-of-line -1 3 nil "^\\([     ]*\\)|-" "\\1+-" "-|[     ]*$" "-+"] 6 (#$ . 59734) nil])
405 #@260 Transpose Org table at point and eliminate hlines.
406 So a table like
407
408 | 1 | 2 | 4 | 5 |
409 |---+---+---+---|
410 | a | b | c | d |
411 | e | f | g | h |
412
413 will be transposed as
414
415 | 1 | a | e |
416 | 2 | b | f |
417 | 4 | c | g |
418 | 5 | d | h |
419
420 Note that horizontal lines disappear.
421 (defalias 'org-table-transpose-table-at-point #[0 "\300\301\302 \"\303 \304 \305\306\307\310\311\312!\313\"\314\315%@\"\316 b\210\317\320!\210\321u\210`\322 |\210\323\324\325#c\210\326!\210\327!\266\330 \207" [delete hline org-table-to-lisp org-table-current-line org-table-current-column mapcar make-byte-code 257 "\300C\301\302\303\304\305\306!\307\"\310\311%\300\"\207" vconcat vector [mapcar make-byte-code 257 "\300\242\211@\211A\240\210\266\202\242\300\211\242A\240\210\207" vconcat vector [] 6 "\n\n(fn _)"] 9 "\n\n(fn _)" org-table-begin re-search-forward "|" -1 org-table-end mapconcat #[257 "\300\301\302\303#\304Q\207" ["| " mapconcat identity " | " "  |\n"] 6 "\n\n(fn X)"] "" org-table-goto-line org-table-goto-column org-table-align] 10 (#$ . 61035) nil])
422 #@1197 Wrap several fields in a column like a paragraph.
423 This is useful if you'd like to spread the contents of a field over several
424 lines, in order to keep the table compact.
425
426 If there is an active region, and both point and mark are in the same column,
427 the text in the column is wrapped to minimum width for the given number of
428 lines.  Generally, this makes the table more compact.  A prefix ARG may be
429 used to change the number of desired lines.  For example, `C-2 \[org-table-wrap-region]'
430 formats the selected text to two lines.  If the region was longer than two
431 lines, the remaining lines remain empty.  A negative prefix argument reduces
432 the current number of lines by that amount.  The wrapped text is pasted back
433 into the table.  If you formatted it to more lines than it was before, fields
434 further down in the table get overwritten - so you might need to make space in
435 the table first.
436
437 If there is no region, the current field is split at the cursor position and
438 the text fragment to the right of the cursor is prepended to the field one
439 line down.
440
441 If there is no region, but you specify a prefix ARG, the current field gets
442 blank, and the content is appended to the field above.
443
444 (fn ARG)
445 (defalias 'org-table-wrap-region #[257 "\302 \210\303 \203H\304 \305\304 \306 \"\210@G\307V\203\310\311!\210\204&G\2024\307W\2033G\\\2024\312\313\314\315\316\317#\320#\"\210\211b\210\321 \207    \322\211\323=\203T\323\202\200\323=\203^\323\202\200\324\"\203m\324\"A\202\200\325\236A\211<\203}\326\320\"\202~\211\262\266\202\204\211\327\320w\210\211\203\310\330 \331 \332y\210\333 \203\237\332y\210\202\224\334!\210\335\320w\210\317\320x\210\317\320\336\203\267\337\202\270\340\341\336\342\341##\266\202\261\210\343 \207\344\345!\203\371\346\307!\347\350!\210\351\224b\210\352 \210\211\320\336\203\347\337\202\350\340\341\336\342\341##\266\202\317\261\210\343 \207\352 \207" [org-table-clip org-M-RET-may-split-line org-table-check-inside-data-field org-region-active-p region-beginning org-table-cut-region region-end 1 user-error "Region must be limited to single column" mapcar list org-wrap mapconcat car " " nil org-table-paste-rectangle table t assoc default delq "^ \n|" org-table-blank-field org-table-current-column -1 org-at-table-hline-p org-table-goto-column "^|" replace-regexp-in-string "\\`\\([     ]*\n\\)+" "\\`[     \n ]+" "" "[     \n ]+\\'" org-table-align looking-at "\\([^|]+\\)+|" match-string replace-match " |" 0 org-table-next-row] 13 (#$ . 62084) "P"])
446 (defvar org-field-marker nil)
447 #@343 Edit table field in a different window.
448 This is mainly useful for fields that contain hidden parts.
449
450 When called with a `\[universal-argument]' prefix, just make the full field
451 visible so that it can be edited in place.
452
453 When called with a `\[universal-argument] \[universal-argument]' prefix, toggle `org-table-follow-field-mode'.
454
455 (fn ARG)
456 (defalias 'org-table-edit-field #[257 "\306 \204    \307\310!\210\211\311\232\203\300\203\312\202\313!\207\211\203@\212\314\315x\210`)\212\316\315w\210`)\317\320#\210\321\301!\205?    \205?\322 \207\323 \n\324=\203T\325\326 !\327\330 !P\202_\331\327\330 !\332\327\326 !R\333 \334 \315b\210\335\336!\210\337\303!\203|\340 !\203| \315\211\223\210\341 \210\342\343\261\210\324\344 \210)\345\312!\210\315\3242d\211\262b\210\315\346\203\245\347\202\246\350\351\346\352\351##\266\202c\210\317d\353#\210\211b\210\354\355!\210\356-\354\357!\210/\354\303!\210\360\361!\207" [org-table-follow-field-mode font-lock-mode org-table-use-standard-references org-field-marker org-inhibit-startup truncate-lines org-at-table-p user-error "Not at a table" (16) -1 1 "^|" nil "^| \n" remove-text-properties (org-cwidth t invisible t display t intangible t) boundp font-lock-fontify-block point-marker t org-number-to-letters org-table-current-column int-to-string org-table-current-dline "@" "$" org-table-get-field current-window-configuration org-switch-to-buffer-other-window "*Org Table Edit Field*" local-variable-p markerp erase-buffer "#\n# Edit field " " and finish with C-c C-c\n#\n" org-mode auto-fill-mode replace-regexp-in-string "\\`\\([     ]*\n\\)+" "\\`[     \n ]+" "" "[     \n ]+\\'" (invisible t org-cwidth t display t intangible t) make-local-variable org-finish-function org-table-finish-edit-field org-window-configuration message "Edit and finish with C-c C-c" word-wrap] 15 (#$ . 64636) "P"])
457 #@148 Finish editing a table data field.
458 Remove all newline characters, insert the result into the table, realign
459 the table and kill the editing buffer.
460 (defalias 'org-table-finish-edit-field #[0 "    p\302eb\210\303\304\302\305#\203\306\307!\210\202\303\310\302\305#\203%\306\311!\210\202\312 \302\313\2031\314\2022\315\307\313\316\307##\266\202\262\317!\210\320!\210\321\322\323!!!\210b\210\302\211\223\210\324 \210\325\302\"\210\326 \210\327\330!\207" [org-field-marker org-window-configuration nil re-search-forward "^#.*\n?" t replace-match "" "\\([     ]*\n[     ]*\\)+" " " buffer-string replace-regexp-in-string "\\`\\([     ]*\n\\)+" "\\`[     \n ]+" "[     \n ]+\\'" set-window-configuration kill-buffer select-window get-buffer-window marker-buffer org-table-check-inside-data-field org-table-get-field org-table-align message "New field value inserted"] 13 (#$ . 66504)])
461 #@123 Non-nil if Org-Table-Follow-Field mode is enabled.
462 Use the command `org-table-follow-field-mode' to change this variable.
463 (defvar org-table-follow-field-mode nil (#$ . 67392))
464 (make-variable-buffer-local 'org-table-follow-field-mode)
465 #@303 Minor mode to make the table field editor window follow the cursor.
466 When this mode is active, the field editor window will always show the
467 current field.  The mode exits automatically when the cursor leaves the
468 table (but see `org-table-exit-follow-field-mode-when-leaving-table').
469
470 (fn &optional ARG)
471 (defalias 'org-table-follow-field-mode #[256 "\302 \303=\203 ?\202\304!\305V\211\203!\306\307\310\311\312$\210\202M\313\307\310\312#\210\314\315!\211\2051\316!\211\2039\317!\210\203Krq\210    \320\211\223\210)\321!\210\266\322\323\203W\324\202X\325\"\210\326\327!\203|\302 \203l\211\302 \232\203|\330\331\332\203w\333\202x\334#\266\210\335 \210\207" [org-table-follow-field-mode org-field-marker current-message toggle prefix-numeric-value 0 add-hook post-command-hook org-table-follow-fields-with-editor append local remove-hook get-buffer "*Org Table Edit Field*" get-buffer-window delete-window nil kill-buffer run-hooks org-table-follow-field-mode-hook org-table-follow-field-mode-on-hook org-table-follow-field-mode-off-hook called-interactively-p any " in current buffer" message "Org-Table-Follow-Field mode %sabled%s" "en" "dis" force-mode-line-update] 8 (#$ . 67633) (byte-code "\206\301C\207" [current-prefix-arg toggle] 1)])
472 (defvar org-table-follow-field-mode-hook nil)
473 (byte-code "\301\302N\204\f\303\301\302\304#\210\305\306\307\310\300!\205\311\211%\207" [org-table-follow-field-mode-map org-table-follow-field-mode-hook variable-documentation put "Hook run after entering or leaving `org-table-follow-field-mode'.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" add-minor-mode org-table-follow-field-mode " TblFollow" boundp nil] 6)
474 (defalias 'org-table-follow-fields-with-editor #[0 "\203 \301 \204 \302\303!\207\304\305!\205!\306 \307\310!\210\311 \210\312!\262\207" [org-table-exit-follow-field-mode-when-leaving-table org-at-table-p org-table-follow-field-mode -1 org-table-check-inside-data-field noerror selected-window org-table-edit-field nil org-fit-window-to-buffer select-window] 3])
475 #@635 Sum numbers in region of current table column.
476 The result will be displayed in the echo area, and will be available
477 as kill to be inserted with \[yank].
478
479 If there is an active region, it is interpreted as a rectangle and all
480 numbers in that rectangle will be summed.  If there is no active
481 region and point is located in a table column, sum all numbers in that
482 column.
483
484 If at least one number looks like a time HH:MM or HH:MM:SS, all other
485 numbers are assumed to be times as well (in decimal hours) and the
486 numbers are added as such.
487
488 If NLAST is a number, only the NLAST fields will actually be summed.
489
490 (fn &optional BEG END NLAST)
491 (defalias 'org-table-sum #[768 "\212\302\303\302\211\211\211\211\203\204Y\304 \203%\305 \262    \306 \262\202Y\307 \262\310 b\210\311\312\302\313#\2049\314\315!\210\316!\210`\262    \317 b\210\320\312\302\313#\204Q\314\315!\210\316!\210`\262\321\322\323  \"\"\204k\211\202\206GY\203w\211\202\206\324!\262S\233\302\241\210\211\237\325\302\326\327\"\"\321\330\"    \303U\203\235\331!\202\315\211\332_\262\333\332\245!\262\334\332\"\262\333\335\245!\262\334\335\"\262\262\336\337$\340!\210\341\342!\203\345\343\344\345\336\346G#!\"\210\266\204*\266\206)\207" [org-table-clip org-timecnt nil 0 org-region-active-p region-beginning region-end org-table-current-column org-table-begin re-search-forward "^[     ]*|[^-]" t user-error "No table data" org-table-goto-column org-table-end re-search-backward apply append org-table-copy-region reverse delq mapcar org-table-get-number-for-summing + number-to-string 3600 floor mod 60 format "%.0f:%02.0f:%02.0f" kill-new called-interactively-p interactive message "%s" substitute-command-keys "Sum of %d items: %-20s     (\\[yank] will insert result into buffer)"] 21 (#$ . 69773) nil])
492 #@10 
493
494 (fn S)
495 (defalias 'org-table-get-number-for-summing #[257 "\301\302\303\"\203\304\305\301\211$\262\302\306\"\203\304\305\301\211$\262\307!\262\302\310\"\2036\302\311\"\2036\312\202\213\302\313\"\203A\301\202\213\302\314\"\203\200\307\315\316\"\206Q\310!\307\315\317\"\206[\310!\307\315\320\"\206f\310!\321\300!\203pT\322\323\324\245\325\245#_\266\203\202\213\211\312\232\203\212\301\202\213\211\207" [org-timecnt nil string-match "^ *|? *" replace-match "" " *|? *$" string-to-number "0" "\\`[-+     0.edED]+\\'" 0 "\\`[     ]+\\'" "\\`\\([0-9]+\\):\\([0-9]+\\)\\(:\\([0-9]+\\)\\)?\\'" match-string 1 2 4 boundp 1.0 + 60.0 3600.0] 11 (#$ . 71597)])
496 #@226 Return the formula active for the current field.
497
498 Assumes that table is already analyzed.  If KEY is given, return
499 the key to this formula.  Otherwise return the formula preceded
500 with "=" or ":=".
501
502 (fn &optional KEY NOERROR)
503 (defalias 'org-table-current-field-formula #[512 "\303\304 \"\305!\211\203a\306 \307D    \"@\310\311\"\310\312\313 #\314!\315\"\2065\315\"\2065\315\"    \203?\211@\202\\\211\205\\\316@\317\320\321#)\266\203\203X\322\202Y\323AP\266\206\202l\203i\317\202l\324\325!\207" [org-table-current-begin-pos org-table-named-field-locations inhibit-changing-match-data count-lines line-beginning-position org-table-line-to-dline org-table-current-column rassoc format "$%d" "@%d$%d" org-table-current-dline org-table-get-stored-formulas assoc "^[0-9]+$" nil t string-match "=" ":=" error "No formula active for the current field"] 17 (#$ . 72286)])
504 #@151 Read a formula from the minibuffer, offer stored formula as default.
505 When NAMED is non-nil, look for a named equation.
506
507 (fn &optional EQUATION NAMED)
508 (defalias 'org-table-get-formula #[512 "\304 \305\306\307 \"\310 D    \"@\311\312\313 \310 #\204!\311\314\310 \"\2021\2030\315\316\"\2040\2021\211\2066\317\320\"A\211\203\\\203\\\321\317\322\315#)\266\203\203\\\211\202\210;\203g\202\210\323\324\325\311\326 \203u\327\202v\330#!\203\204\325!\202\205\331\332#!\317\315\333\"\204\245\334\320\n\"    \"\262\335!\210\336\337!\210\315\340\"\203\264\341\331\322\211$\262\315\342\"\203\303\341\331\322\211$\262\203\332\204\332\334\320\n\"    \"\262\322\262\203\351\320    \"\241\210\202\361BB\262\211\204\373\232\204\335!\210)\207" [org-table-current-begin-pos org-table-named-field-locations org-table-may-need-update inhibit-changing-match-data org-table-get-stored-formulas rassoc count-lines line-beginning-position org-table-current-column format "@%d$%d" org-table-current-dline "$%d" string-match "\\`LR[0-9]+\\'" nil assoc "^ *=? *$" t org-table-formula-from-user read-string org-table-formula-to-user "%s formula %s=" "Field" "Column" "" org-table-formula-history "\\S-" delq org-table-store-formulas user-error "Formula removed" "^ *=?" replace-match " *$"] 15 (#$ . 73182)])
509 #@167 Store the list of formulas below the current table.
510 If optional argument LOCATION is a buffer position, insert it at
511 LOCATION instead.
512
513 (fn ALIST &optional LOCATION)
514 (defalias 'org-table-store-formulas #[513 "\212\211\203\211b\210\301 \210\202\302 b\210\303\304\305!\203'\306\224b\210\306\224\307\225|\210\2023\310 \210\311\312!\2061\313c\210\314\315\316\317\320\"\321#\322\261*\207" [case-fold-search beginning-of-line org-table-end t looking-at "\\([     ]*\n\\)*[     ]*\\(#\\+TBLFM:\\)\\(.*\n?\\)" 3 0 org-indent-line match-string 2 "#+TBLFM:" " " mapconcat #[257 "\211@\300AQ\207" ["="] 4 "\n\n(fn X)"] sort org-table-formula-less-p "::" "\n"] 8 (#$ . 74545)])
515 #@10 
516
517 (fn A)
518 (defalias 'org-table-formula-make-cmp-string #[257 "\300\301\"\203,\302\303\304O!\305!\262\306\307\310\311\312U\203 \313\202!\314\315\303\304O!#\"\266\202\300\316\"\205d\317\225\203D\306\320\315\321\317\"!\"\202E\322\323\225\203W\306\324\315\321\323\"!\"\202X\322\325\225\205c\326\321\325\"PQ\207" [string-match "\\`$[<>]" string-to-char 1 nil org-table-formula-handle-first/last-rc format "$%d" + 10000 60 -1000 0 string-to-number "^\\(@\\([0-9]+\\)\\)?\\(\\$?\\([0-9]+\\)\\)?\\(\\$?[a-zA-Z0-9]+\\)?" 2 "@%05d" match-string "" 4 "$%05d" 5 "@@"] 11 (#$ . 75222)])
519 (put 'org-table-formula-make-cmp-string 'byte-optimizer 'byte-compile-inline-expand)
520 #@45 Compare two formulas for sorting.
521
522 (fn A B)
523 (defalias 'org-table-formula-less-p #[514 "@\300\301\"\203.\302\303\304O!\305!\262\306\307\310\311\312U\203\"\313\202#\314\315\303\304O!#\"\266\202\300\316\"\205f\317\225\203F\306\320\315\321\317\"!\"\202G\322\323\225\203Y\306\324\315\321\323\"!\"\202Z\322\325\225\205e\326\321\325\"PQ\262@\300\301\"\203\226\302\303\304O!\305!\262\306\307\310\311\312U\203\212\313\202\213\314\315\303\304O!#\"\266\202\300\316\"\205\316\317\225\203\256\306\320\315\321\317\"!\"\202\257\322\323\225\203\301\306\324\315\321\323\"!\"\202\302\322\325\225\205\315\326\321\325\"PQ\262\205\333\211\205\333\231\207" [string-match "\\`$[<>]" string-to-char 1 nil org-table-formula-handle-first/last-rc format "$%d" + 10000 60 -1000 0 string-to-number "^\\(@\\([0-9]+\\)\\)?\\(\\$?\\([0-9]+\\)\\)?\\(\\$?[a-zA-Z0-9]+\\)?" 2 "@%05d" match-string "" 4 "$%05d" 5 "@@"] 14 (#$ . 75907)])
524 #@295 Return an alist with the stored formulas directly after current table.
525 By default, only return active formulas, i.e., formulas located
526 on the first line after the table.  However, if optional argument
527 LOCATION is a buffer position, consider the formulas there.
528
529 (fn &optional NOERROR LOCATION)
530 (defalias 'org-table-get-stored-formulas #[512 "\212\211\203\211b\210\302 \210\202\303 b\210\304\305\306!\205\231\307\310\311!\312\"\313\211\211\203\223\211@\314\315\"\203\214\316\317\"\311\225\204=\211\202U\320\313\304\314#)\266\203\203Q\211\202U\316\311\"\262\316\321\"BB\262\235\204qB\262\202\212\203\205\322\323\"\210\324 \210\325\311!\210\202\212\326\323\"\210\266A\266\202\202#\237\262\266\203*\207" [case-fold-search inhibit-changing-match-data beginning-of-line org-table-end t looking-at "\\([     ]*\n\\)*[     ]*#\\+TBLFM: *\\(.*\\)" org-split-string match-string-no-properties 2 " *:: *" nil string-match "\\`\\(@[-+I<>0-9.$@]+\\|\\$\\([_a-zA-Z0-9]+\\|[<>]+\\)\\) *= *\\(.*[^     ]\\)" match-string 1 "\\`$\\([0-9]+\\|[<>]+\\)\\'" 3 message "Double definition `%s=' in TBLFM line, please fix by hand" ding sit-for user-error] 15 (#$ . 76866)])
531 #@231 Modify the equations after the table structure has been edited.
532 KEY is "@" or "$".  REPLACE is an alist of numbers to replace.
533 For all numbers larger than LIMIT, shift them by DELTA.
534
535 (fn KEY REPLACE &optional LIMIT DELTA REMOVE)
536 (defalias 'org-table-fix-formulas #[1282 "\212\301 b\210\302\303\304!)\205\352\305\306P\2053\307\232\204$\310\232\203/\311\312\313    !#\2023\311\314\"\315\211\211\203y\316\317 \302#\203y\320 \321\322\323\324\325!\326\"\327$\216\330\331!)\262\204;\322\224\206a`Sf\332\232\203r\333\334\335\322!\"\210\202;\336\337!\210\202;\316\317 \302#\203\342\320 \321\322\323\324\325!\340\"\327$\216\330\331!)\262\204y\335\341!\262\342!\262\343 \"\211\262\203\300\336 AP\302\211#\210\344!\210\202y\203y    V\203y\336 \345 \\!P\302\211#\210\344!\210\202y\266\315y\210\202)\207" [case-fold-search org-table-end t looking-at "[     ]*#\\+tblfm:" "The formulas in #+TBLFM have been updated" "\\([0-9]+\\)" "$" "$LR" format "\\(@[0-9]+\\)?%s%d=.*?\\(::\\|$\\)" regexp-quote "@%d\\$[0-9]+=.*?\\(::\\|$\\)" nil re-search-forward point-at-eol match-data make-byte-code 0 "\301\300\302\"\207" vconcat vector [set-match-data evaporate] 3 org-in-regexp "remote([^)]+?)" 46 user-error "Change makes TBLFM term %s invalid, use undo to recover" match-string replace-match "" [set-match-data evaporate] 1 string-to-number assoc message int-to-string] 18 (#$ . 78060)])
537 #@93 Check if the current field starts with "=" or ":=".
538 If yes, store the formula and apply it.
539 (defalias 'org-table-maybe-eval-formula #[0 "\205A\301 \206\n\302\303\304\203\305\202\306\302\304\307\302##\266\202\303\211\310\311\"\205?\312!\313\232\262\314\315\"\262\316\205;\317\320!\"\266\203\207" [org-table-formula-evaluate-inline org-table-get-field "" nil replace-regexp-in-string "\\`\\([     ]*\n\\)+" "\\`[     \n ]+" "[     \n ]+\\'" string-match "^:?=\\(.*[^=]\\)$" string-to-char 58 match-string 1 org-table-eval-formula (4) org-table-formula-from-user] 9 (#$ . 79486)])
540 #@99 List of commands triggering the recalculation of a line.
541 Will be filled automatically during use.
542 (defvar org-recalc-commands nil (#$ . 80080))
543 (defvar org-recalc-marks '((" " . "Unmarked: no special line, no automatic recalculation") ("#" . "Automatically recalculate this line upon TAB, RET, and C-c C-c in the line") ("*" . "Recalculate only when entire table is recalculated with `C-u C-c *'") ("!" . "Column name definition line.  Reference in formula as $name.") ("$" . "Parameter definition line name=value.  Reference in formula as $name.") ("_" . "Names for values in row below this one.") ("^" . "Names for values in row above this one.")))
544 #@373 Rotate the recalculation mark in the first column.
545 If in any row, the first field is not consistent with a mark,
546 insert a new column for the markers.
547 When there is an active region, change all the lines in the region,
548 after prompting for the marking character.
549 After each change, a message will be displayed indicating the meaning
550 of the new mark.
551
552 (fn &optional NEWCHAR)
553 (defalias 'org-table-rotate-recalc-marks #[256 "\302 \204    \303\304!\210\305 \211\205\212\306 b\210\307\310 !)\205'\212\311 b\210\307\310 !)\307\310 !\312 \2039\313\314\315!!\202:\212\316 b\210\317\320\321 \322#)\203V\323\"\204V\303\324\"\210\203]b\210\212\325 \210\326    !\204k\303\327!\210)\211\203w\330\331!\210\332 \210\333 \212\325 \210\326\334!\204\207\335\202\230\206\230\336\331!\337\340\341\"\342\"\235A@)\343\331\344\345\"\"\210\203\306\212\346y\210`X\203\305\326    !\203\277\343\331\344\345\"\"\210\346y\210\202\252)\333 U\204\320\347 \210\266b\210\330\203\337T\202\340!\210\203\353\346\211\223\210\203\364\346\211\223\210\346\211\223\210\350\351!\205\352\353\323\"A\"\207" [org-recalc-marks org-table-dataline-regexp org-at-table-p user-error "Not at a table" org-region-active-p region-beginning copy-marker line-beginning-position region-end org-table-current-column char-to-string read-char-exclusive "Change region to what mark?  Type # * ! $ or SPC: " org-table-begin re-search-forward "^[     ]*|[^-|][^|]*[^#!$*_^|     ][^|]*|" org-table-end t assoc "Invalid character `%s' in `org-table-rotate-recalc-marks'" beginning-of-line looking-at "Not at a table data line" org-table-goto-column 1 org-table-insert-column line-end-position "^[     ]*| *\\([#!$*^_ ]\\) *|" "#" match-string append mapcar car (" ") org-table-get-field format " %s " nil org-table-align called-interactively-p interactive message "%s"] 15 (#$ . 80738) nil])
554 #@372 Analyze table at point and store results.
555
556 This function sets up the following dynamically scoped variables:
557
558  `org-table-column-name-regexp',
559  `org-table-column-names',
560  `org-table-current-begin-pos',
561  `org-table-current-line-types',
562  `org-table-current-ncol',
563  `org-table-dlines',
564  `org-table-hlines',
565  `org-table-local-parameters',
566  `org-table-named-field-locations'.
567 (defalias 'org-table-analyze #[0 "\306 \307 \212b\210\310\212\311\312\313#)\203=\314\315\316\314!\317\"\211\203;\211@T\262\320\321\"\2034\211\322!BBA\266\202\202\266\237\323\324\325\326\327\"\313\"\"\310\212\311\330\313#\203\200\315\316\314!\317\"\211\203|\211@\320\331\"\203u\316\314\"\316\332\"B\nBA\266\202\202\\\210\202N)\310\212`\333B\311\334\313#\203\316\314!\315\316\332!\317\"\212\335\232\203\243\314\202\244\336y\210\337\340!\205\262\315\316\314!\317\"\211A\341@`\"\\\241\262\314`\240\210\203\203\211A\262\242\211A\262\242T\262;\203\373\211;\203\373\320\321\"\203\373B\nBE B\266\202\305\266)\266\202\207\210)\342\f!\203\f`\310\223\210\202\343 \333\310\211\211\337\344!\203O\314\225\203.\345\202/\346B\262\314\225\203@B\262\202EB\262\310y\210T\262\202\345B\262\347\350\237\"\347\350\310\237B\".\347\350\310\237B\"/\266b\210.\314Hy\210\315\351 \352 {\353\"\211G\310\2110.\211GSH\333\211W\203\272\211\211T\323\354\"EB\262\323\354\"\n8BB\262\266\211T\262\202\216\266\355 \"\355\n\"\211\266\204)\207" [org-table-column-names org-table-column-name-regexp org-table-local-parameters org-table-named-field-locations org-table-current-begin-pos org-table-current-line-types org-table-begin org-table-end nil re-search-forward "^[     ]*| *! *\\(|.*\\)" t 1 org-split-string match-string " *| *" string-match "\\`[a-zA-Z][_a-zA-Z0-9]*\\'" int-to-string format "\\$\\(%s\\)\\>" regexp-opt mapcar car "^[     ]*| *\\$ *\\(|.*\\)" "\\`\\([a-zA-Z][_a-zA-Z0-9]*\\|%\\) *= *\\(.*\\)" 2 0 "^[     ]*| *\\([_^]\\) *\\(|.*\\)" "_" -1 looking-at "^[     ]*|[^|]*\\(|.*\\)" count-lines markerp point-marker "[     ]*|\\(-\\)?" hline dline apply vector line-beginning-position line-end-position "[     ]*|[     ]*" "LR%d" append org-table-dlines org-table-hlines org-table-current-ncol] 14 (#$ . 82608)])
568 #@445 Move point to a specific field in the current table.
569
570 REF is either the name of a field its absolute reference, as
571 a string.  No column is created unless CREATE-COLUMN-P is
572 non-nil.  If it is a function, it is called with the column
573 number as its argument as is used as a predicate to know if the
574 column can be created.
575
576 This function assumes the table is already analyzed (i.e., using
577 `org-table-analyze').
578
579 (fn REF &optional CREATE-COLUMN-P)
580 (defalias 'org-table-goto-field #[513 "\303\"A\2062\304\305\"\203.\3061    \307\310\311\"!H0\202$\210\312\313\"\307\310\314\"!D\2022\312\315\"\211@A@\316!\203C!\202D\205S\nb\210y\210\317\320#\207" [org-table-named-field-locations org-table-dlines org-table-current-begin-pos assoc string-match "\\`@\\([1-9][0-9]*\\)\\$\\([1-9][0-9]*\\)\\'" (error) string-to-number match-string 1 user-error "Invalid row number in %s" 2 "Unknown field: %s" functionp org-table-goto-column nil] 10 (#$ . 84891)])
581 #@78 Recompute the current line if marked for it, and if we haven't just done it.
582 (defalias 'org-table-maybe-recalculate-line #[0 "\205$    \n>\205 \305 =?\205$\212\306\307!\210\310\f!)\205$\311 \205$\312\207" [org-table-allow-automatic-line-recalculation last-command org-recalc-commands org-last-recalc-line org-table-auto-recalculate-regexp line-beginning-position beginning-of-line 1 looking-at org-table-recalculate t] 2 (#$ . 85859) nil])
583 #@28 
584
585 (fn VAR &optional VALUE)
586 (defalias 'org-set-calc-mode #[513 ";\203\301\302\"\262\3038\262A@\262>\203%>A\240\210\202'\210\207" [org-tbl-calc-modes assoc (("D" calc-angle-mode deg) ("R" calc-angle-mode rad) ("F" calc-prefer-frac t) ("S" calc-symbolic-mode t)) 2] 5 (#$ . 86309)])
587 (put 'org-set-calc-mode 'byte-optimizer 'byte-compile-inline-expand)
588 #@1868 Replace the table field value at the cursor by the result of a calculation.
589
590 In a table, this command replaces the value in the current field with the
591 result of a formula.  It also installs the formula as the "current" column
592 formula, by storing it in a special line below the table.  When called
593 with a `\[universal-argument]' prefix the formula is installed as a field formula.
594
595 When called with a `\[universal-argument] \[universal-argument]' prefix, insert the active equation for the field
596 back into the current field, so that it can be edited there.  This is useful
597 in order to use \<org-table-fedit-map>`\[org-table-show-reference]' to check the referenced fields.
598
599 When called, the command first prompts for a formula, which is read in
600 the minibuffer.  Previously entered formulas are available through the
601 history list, and the last used formula is offered as a default.
602 These stored formulas are adapted correctly when moving, inserting, or
603 deleting columns with the corresponding commands.
604
605 The formula can be any algebraic expression understood by the Calc package.
606 For details, see the Org mode manual.
607
608 This function can also be called from Lisp programs and offers
609 additional arguments: EQUATION can be the formula to apply.  If this
610 argument is given, the user will not be prompted.
611
612 SUPPRESS-ALIGN is used to speed-up recursive calls by by-passing
613 unnecessary aligns.
614
615 SUPPRESS-CONST suppresses the interpretation of constants in the
616 formula, assuming that this has been done already outside the
617 function.
618
619 SUPPRESS-STORE means the formula should not be stored, either
620 because it is already stored, or because it is a modified
621 equation that should not overwrite the stored one.
622
623 SUPPRESS-ANALYSIS prevents analyzing the table and checking
624 location of point.
625
626 (fn &optional ARG EQUATION SUPPRESS-ALIGN SUPPRESS-CONST SUPPRESS-STORE SUPPRESS-ANALYSIS)
627 (defalias 'org-table-eval-formula #[1536 "\211\204\n\306 \210\307 \210\310\232\203\311 \312\313\"\210\314 \210\315\211\207\313\250\203*\202+\316\313\211\211\316V\203@\203@\202H\317\n\320\232\"\321 \322 !\313\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\323\324\"\203\315\325\324\"\211@\262\326\327 \"AA@P\262\n\323\330 \"\203 \331\332\316\f\"!\262\333\332\334\f\"!\262\335U\203\314\336;\203\263\326\337\"\262\3348\262A@\262\f>\203\303\f>A\240\210\202\305\f\210\f\266\202\202\340\326\341\"AD;\203\353\326\337\"\262\3348\262A@\262\f>\203\373\f>A\240\210\202\375\f\210\f\266\202\342\343\315\211 $\262\n\202{\323\344 \"\203@\332\345 \"\315\262\315\262\211\346\267\2023\313\2024@\2024\347\2024\313\262\342\343\315\211$\262 \210\323\350 \"\203T\315\262\342\343\315\211 $\262\n\323\351 \"\203h\315\262\342\343\315\211 $\262\n\323\352 \"\203|\315\262\342\343\315\211 $\262\n\323\353 \"\203\301\332\345 \"\313;\203\237\326\337\"\262\3348\262A@\262\f>\203\257\f>A\240\210\202\261\f\210\f\266\202\342\343\315\211 $\262\n\202|\323\354 \"\204\314\313\262\n\210\204\335A\203\335\355!\262\356\316\357#\206\347\360\262\361!\262\345V\203\325\362\363 \364 \"\313\365\203\366\202\367\343\365\370\343##\266\202\371\"\262\203!\372\373\"\262\315=\203/\372\374\"\262S\262\322!\262 G\334V\205I \345\334O\375\232\262\203V\203V\376\262\323\377\"\203\247\342\201P\201Q\201R \201S\345\201T\201U\201V!\201W\"\201X$\216\345\224\345\224TO\201Y\232\203\227\201Z \202\231\321 )\262\"\315\211$\262\202V\201[!\210\201\\!\262\323\201]\"\203\342\201R \201S\345\201T\201U\201V!\201^\"\201X$\216\201_\201`\332\316\"\332\334\"\"\203\211<\203\372\201a\"\202    \201b!\202    \211\262    $)\262\315\211$\262\202\266\323B\"\203\361\332\345\"G\316V\203\361\201R \201S\345\201T\201U\201V!\201c\"\201X$\216\201d\332\345\"C#)\262\262 \201R \201S\345\201T\201U\201V!\201e\"\201X$\216\201_\203\235\f<\203\224\372\201f\"\202\237\201b !\202\237\f$)\262\262\f\201R \201S\345\201T\201U\201V!\201g\"\201X$\216\323\201h!\")\262\204\344\342\f\315\211$\262\202\201i\201j\"\210\202\323\201k\"\203e\342\201R \201S\345\201T\201U\201V!\201l\"\201X$\216\201_\201m\201n\334\225\203-\202.\345\333\332\316\"!\201o#\201p\225\203E\202F\345\333\332\201X\"!\\#    $)\262\315\211$\262\202\361 \262 \323\201q\"\203\333\332\316\"!\334\225\203\204\202\205\345\\\262\345U\203\224\202\230\316]S8\262\201R \201S\345\201T\201U\201V!\201r\"\201X$\216\201_    $)\262\262\f\203\374\201R \201S\345\201T\201U\201V!\201s\"\201X$\216\323\201h!\")\262\203    \201i\201t\332\345\"\"\210\342\f\315\211$\262\202i\203`\201u10\201v\211\201w!!!0\2024\210\201x\262\247\203E\201y!\202G\262\203Y\201z\333!\"\202[\262\202\314\365D\201{#\262\365E\201|\315\211%\262\203\213\323\201}\"\203\213 \202\241\201~\fB?\205\240\205\240\201\"\262\203\310\201z\323\201}    \"\203\277\333\201b    !!\202\303\333!\"\202\312\262F\203\265Gr\201\200\201\201!q\210p\201\202 \210G\313\211HI\315\211J\315KL\201\203 \210\201\204\201\205!\210+\211M\201\206\201P\201\207\n%!\210:\203=\201\206\201P\201\210\201\211\f@\201\212\"\fA@#!\210\202g\201\206\201P\201\213 \206P\201\214\203b\201P\333!\"\202d $!\210\201\215!\210)\266\201\216\201\201!\262\n\201\217\n!\210\201\220\201\221!\203\217\203\265\313N\201\222\201\223!)\204\250\314 \210\201i\201\224!\210\201\225\n!\210\201\226\343!\210:\203\303\313\262    \201x\262\201\227\201PO    ;\204\326    \202\361 \203\350\201P\f\333\f!\"\202\361\365E\201\230\f#\"!\210\203\345V\203\201\231\201\232!\203\201\233\201\234!\210\202\357\345\262\202\357\203%\201\235 \210\2060\2050\314 +\207" [org-table-may-need-update org-table-automatic-realign case-fold-search org-calc-default-modes org-tbl-calc-modes org-table-local-parameters org-table-check-inside-data-field org-table-analyze (16) org-table-current-field-formula org-table-get-field nil org-table-align t 1 org-table-get-formula (4) org-table-current-column copy-sequence string-match ";" org-split-string assoc "%" "\\([pnfse]\\)\\(-?[0-9]+\\)" string-to-char match-string string-to-number 2 112 calc-internal-prec (("D" calc-angle-mode deg) ("R" calc-angle-mode rad) ("F" calc-prefer-frac t) ("S" calc-symbolic-mode t)) calc-float-format ((110 . float) (102 . fix) (115 . sci) (101 . eng)) replace-match "" "[tTU]" 0 #s(hash-table size 3 test equal rehash-size 1.5 rehash-threshold 0.8125 purecopy t data ("T" 294 "t" 298 "U" 303)) hh:mm "N" "L" "E" "[DRFS]" "\\S-" org-table-formula-substitute-names get-text-property :orig-formula "?" org-table-formula-handle-first/last-rc buffer-substring-no-properties line-beginning-position line-end-position replace-regexp-in-string "\\`\\([     ]*\n\\)+" "\\`[     \n ]+" "[     \n ]+\\'" " *| *" mapcar #[257 "\300!\207" [org-table-time-string-to-seconds] 3 "\n\n(fn X)"] #[257 "\300\301\"\203 \302\303!!\207\207" [string-match "\\S-" number-to-string string-to-number] 4 "\n\n(fn X)"] "'(" literal "[@$]#" org-table-duration-custom-format org-table-formula-use-constants org-table-range-regexp org-table-current-begin-pos org-ts-regexp-inactive org-ts-regexp org-table-formula-debug default-directory buffer-read-only buffer-file-name buffer-undo-list inhibit-modification-hooks inhibit-read-only standard-output inhibit-redisplay org-table-formula-field-format format "%d" match-data make-byte-code "\301\300\302\"\207" vconcat vector [set-match-data evaporate] 3 "@" org-table-current-dline org-table--error-on-old-row-references org-table-remote-reference-indirection "\\<remote([     ]*\\([^,)]+\\)[     ]*,[     ]*\\([^\n)]+\\))" [set-match-data evaporate] org-table-make-reference org-table-get-remote-range #[257 "\300!\207" [org-table-time-string-to-seconds] 3 "\n\n(fn X)"] org-table-time-string-to-seconds [set-match-data evaporate] org-table-get-range [set-match-data evaporate] #[257 "\300!\207" [org-table-time-string-to-seconds] 3 "\n\n(fn X)"] [set-match-data evaporate] regexp-quote user-error "Spreadsheet error: invalid reference \"%s\"" "\\$\\(\\([-+]\\)?[0-9]+\\)\\.\\.\\$\\(\\([-+]\\)?[0-9]+\\)" [set-match-data evaporate] cl-subseq + -1 4 "\\$\\(\\([-+]\\)?[0-9]+\\)" [set-match-data evaporate] [set-match-data evaporate] "Invalid field specifier \"%s\"" (error) eval read "#ERROR" number-to-string org-table-time-seconds-to-string "<\\1>" #[257 "\302\303\304\305\306\307\310#)\266\203!\311\312\313 \314\315\316\317\320!\321\"\322$\216\323!)\262\"\")\207" [system-time-locale inhibit-changing-match-data "C" format-time-string org-time-stamp-format "[0-9]\\{1,2\\}:[0-9]\\{2\\}" nil t string-match apply encode-time match-data make-byte-code 0 "\301\300\302\"\207" vconcat vector [set-match-data evaporate] 3 org-parse-time-string] 12 "\n\n(fn TS)"] "^[0-9]+:[0-9]+\\(?::[0-9]+\\)?$" calc-eval num get-buffer-create "*Substitution History*" kill-all-local-variables erase-buffer run-hooks temp-buffer-setup-hook princ "Substitution history of formula\nOrig:   %s\n$xyz->  %s\n@r$c->  %s\n$1->    %s\n" "        %s^\nError:  %s" make-string 45 "Result: %s\nFormat: %s\nFinal:  %s" "NONE" internal-temp-output-buffer-show get-buffer-window org-fit-window-to-buffer called-interactively-p any y-or-n-p "Debugging Formula.  Continue to next? " "Abort" delete-window message org-table-justify-field-maybe "[\\1]" looking-at ".*\n[     ]*|[^-]" call-interactively org-return org-table-maybe-recalculate-line] 40 (#$ . 86684) "P"])
628 #@19 
629
630 (fn PROP VALUE)
631 (defalias 'org-table-put-field-property #[514 "\212\300\301\302x\210`\301\302w\210`$)\207" [put-text-property "^|" nil] 7 (#$ . 96447)])
632 #@517 Get a calc vector from a column, according to descriptor DESC.
633
634 Optional arguments TBEG and COL can give the beginning of the table and
635 the current column, to avoid unnecessary parsing.
636
637 HIGHLIGHT means just highlight the range.
638
639 When CORNERS-ONLY is set, only return the corners of the range as
640 a list (line1 column1 line2 column2) where line1 and line2 are
641 line numbers relative to beginning of table, or TBEG, and column1
642 and column2 are table column numbers.
643
644 (fn DESC &optional TBEG COL HIGHLIGHT CORNERS-ONLY)
645 (defalias 'org-table-get-range #[1281 "\303\304\305\306#)\266\203\203\307\310\311#\202\206 \312 \206&\313 \314\315 \"\306    \"\2047\316\317\"\210\320\225\321\225\205C\322\321\"\323 \324\325\326\327\330!\331\"\320$\216\332!\205[\333\")\262\206b\262\334\225\205n\322\334\"\323 \324\325\326\327\330!\335\"\320$\216\332!\205\207\333\")\262\206\216\262\336\225\205\235\322\336\"\321\304O\211\203\251\337!\325U\203\256\202\300\337!\340!\341>\203\276\202\277\325\\\262\342\225\205\317\322\342    \"\321\304O\211\203\333\337!\325U\203\340\202\362\337!\340!\343>\203\360\202\361\325\\\262\212    \204?\203\nU\203?U\203?Zy\210\344\n!\204\304y\210\202\345!\304\307\203)\346\202*\347\350\307\351\350##\266\202 \203\251\352 \210\202\251^]^] \203XF\202\247\nZy\210\344\n!\204n\304y\210T\262\202^\353!\210`Zy\210\344\n!\204\204\354y\210\202x\353!\210`\203\227\352\355\304w\210`\"\210\356\357\360\361\362\"\"\"\262\262\266\204)\266\205\207" [inhibit-changing-match-data org-table-range-regexp org-table-dataline-regexp "\\`\\$[0-9]+\\.\\.\\$[0-9]+\\'" nil t string-match replace-regexp-in-string "\\$" "@0$" org-table-current-column org-table-begin count-lines line-beginning-position user-error "Invalid table range specifier `%s'" 3 1 match-string match-data make-byte-code 0 "\301\300\302\"\207" vconcat vector [set-match-data evaporate] org-string-nw-p org-table--descriptor-line 4 [set-match-data evaporate] 2 string-to-number string-to-char (45 43) 5 (45 43) looking-at org-table-get-field "\\`\\([     ]*\n\\)+" "\\`[     \n ]+" "" "[     \n ]+\\'" org-table-highlight-rectangle org-table-goto-column -1 "^|\n" mapcar org-trim apply append org-table-copy-region] 27 (#$ . 96611)])
646 #@135 Return relative line number corresponding to descriptor DESC.
647 The cursor is currently in relative line number CLINE.
648
649 (fn DESC CLINE)
650 (defalias 'org-table--descriptor-line #[514 "\302\303\"\203 \304!H\207\302\305\"\203-\306\225\204\307\225\203-\306\225\2032\307\225\2032\310\225\2042\311\312\"\210\306\225\205<\306\225\306\224Z\313\314\"\313\310\"\307\225\205P\304\313\307\"!\307\225\205b\315\225\203`\306\225?\206b\310\225\203|\204|\316\262\317\262    \316H\320=\203|S\262\204\214\203\214\204\214\311\321!\210\203\241\322\320\323\232\324\f&\262\203\265\322\325\323\232\f&\262\207" [org-table-dlines org-table-current-line-types string-match "\\`[0-9]+\\'" string-to-number "^\\(\\([-+]\\)?\\(I+\\)\\)?\\(\\([-+]\\)?\\([0-9]+\\)\\)?" 3 6 5 user-error "Invalid row descriptor `%s'" match-string 2 1 0 "+" hline "Should never happen" org-table--row-type "-" nil dline] 14 (#$ . 98928)])
651 #@292 Return relative line of Nth row with type TYPE.
652 Search starts from relative line I.  When BACKWARDS in non-nil,
653 look before I.  When RELATIVE is non-nil, the reference is
654 relative.  DESC is the original descriptor that started the
655 search, as a string.
656
657 (fn TYPE N I BACKWARDS RELATIVE DESC)
658 (defalias 'org-table--row-type #[1542 "G\3022|\303\211W\205y\211\203\304\202\305\\\211\262    \203q\303Y\203qW\203qH\n=\204q\203H\306=\203    \307=\204    \310\267\202[\311\312\"\202n\203f\304\202g\305Z\262\313\302\314\"\204\210\211T\262\202\266\2020\210\303W\204\211Y\203\220\311\315\"\202\235SU\203\234S\202\235\207" [org-table-current-line-types org-table-relative-ref-may-cross-hline :exit 0 -1 1 hline t #s(hash-table size 1 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (error 83)) user-error "Row descriptor %s crosses hline" throw nil "Row descriptor %s leads outside table"] 13 (#$ . 99877)])
659 #@10 
660
661 (fn S)
662 (defalias 'org-table--error-on-old-row-references #[257 "\300\301\"\205\n\302\303!\207" [string-match "&[-+0-9I]" user-error "Formula contains old &row reference, please rewrite using @-syntax"] 4 (#$ . 100850)])
663 #@356 Convert list ELEMENTS to something appropriate to insert into formula.
664 KEEP-EMPTY indicated to keep empty fields, default is to skip them.
665 NUMBERS indicates that everything should be converted to numbers.
666 LISPP non-nil means to return something appropriate for a Lisp
667 list, `literal' is for the format specifier L.
668
669 (fn ELEMENTS KEEP-EMPTY NUMBERS LISPP)
670 (defalias 'org-table-make-reference #[1028 ";\203N\211\203+\211\300=\203\207\301=\203\204\301\207\302\203(\303!\202)!\207\304\305\"\203B\203=\306\303!!\262\307\310Q\207\203J\203L\311\207\312\207\204\\\313\314\315\316\"\"\262\262\211\203w\317\320\321\322\323\324\"\325\"\326\327%\330#\207\331\317\320\321\332\323\324        \"\333\"\326\327%\334#\335Q\207" [literal "" prin1-to-string string-to-number string-match "\\S-" number-to-string "(" ")" "(0)" "nan" delq nil mapcar #[257 "\300\301\"\205\211\207" [string-match "\\S-"] 4 "\n\n(fn X)"] mapconcat make-byte-code 257 "\301\302=\203\207\303\300\203\304!\202!\207" vconcat vector [literal prin1-to-string string-to-number] 4 "\n\n(fn X)" " " "[" "\302\303\"\203\301\203\304\305!!\207\207\300\203\301\203\306\207\307\207" [string-match "\\S-" number-to-string string-to-number "0" "nan"] "," "]"] 13 (#$ . 101081)])
671 #@244 If there has been more than one second since T1, display message.
672 ARGS are passed as arguments to the `message' function.  Returns
673 current time if a message is printed, otherwise returns T1.  If
674 T1 is nil, always messages.
675
676 (fn T1 &rest ARGS)
677 (defalias 'org-table-message-once-per-second #[385 "\300 \203\301\302\"A@W\203\303\304\"\210\211\202\207" [current-time 0 time-subtract apply message] 7 (#$ . 102371)])
678 #@515 Recalculate the current table line by applying all stored formulas.
679
680 With prefix arg ALL, do this for all lines in the table.
681
682 When called with a `\[universal-argument] \[universal-argument]' prefix, or if ALL is the symbol `iterate',
683 recompute the table until it no longer changes.
684
685 If NOALIGN is not nil, do not re-align the table after the computations
686 are done.  This is typically used internally to save time, if it is
687 known that the table will be realigned a little later anyway.
688
689 (fn &optional ALL NOALIGN)
690 (defalias 'org-table-recalculate #[512 "    >\204\n    B\306 \204\307\310!\210\311=\204\312\232\203\"\313 \207\314 \210\315\316 \317\"\n?\f\320 \211\321\322\211\211\211\205\227\323\324 !\325 \326\321\327\330\331\"\332\"\333$\216\n\211\203\272\211@\334\335A!!@\335\336\337\"\203n\307\340!\202\215\336\341\"\203\214\335!\342\"\203\206\307\343#\210\211\262\202\215!\344\322\345\336#)\266\203\203\251\211B    B\262    \202\261\211BB\262\266A\266\202\202R\210\237\262\346\237!\262\f\203 \323\347 !\262@\211\262b\210\350A\345#\203\350B\262\n\202\350\f\345#\203\350C\345#\203\350\f\345#\203\321\224\262\202\324 \262\323\324\351!!\262b\210\352\353#\210\354@\324 \"\322\211\203\215\211@\211@\342D\"\211A@\206L\336\355\"\205LE\356\357\360\"!H\203\\\361\362\363!\3518#\202]\211\235\203i\307\364\"\210\211B\262\204{=\203\204\365!\210\366\367\345\"\210\266A\266\202\202)\266b\210\350\n\345#\203 \336\370\371\360!\"\204\222T\262\f\203\270\372\373    #\262\374F!\203\311F\324 \322\223\210\202\317\323\324 !F\211\203    \211@Fb\210\375\356@\360\322O!\322\376#\210\377`\367\"\204\201H\322A\201I\201J\201K\201L&\210A\266\202\202\320\210\202\222\211\203\\\211@\211@A\372\205 \f\201M@#\262\f\365\322\210\325 S\326\201N\201O\330\331!\201P\"\333\201Q%\262\"\210\201H\322\345\211\211\211&\266A\266\202\202\210)\266\352ed\201R#\210\322\211\223\210    \204\213G\203|\201S \210\n\203\213\372\201T#\210\372 \205\223\201U\")\207" [this-command org-recalc-commands debug-on-error inhibit-redisplay org-table-dataline-regexp inhibit-changing-match-data org-at-table-p user-error "Not at a table" iterate (16) org-table-iterate org-table-analyze sort org-table-get-stored-formulas #[514 "@@\231\207" [] 4 "\n\n(fn A B)"] current-time 0 nil copy-marker line-beginning-position org-table-current-column make-byte-code "\300b\210\302\301!\210\300\303\211\223\207" vconcat vector [org-table-goto-column nil] 3 org-table-formula-substitute-names org-table-formula-handle-first/last-rc string-match "\\`@-?I+" "Can't assign to hline relative reference" "\\`$[<>]" assoc "\"%s=\" formula tries to overwrite existing formula for column %s" "\\`\\$[0-9]+\\'" t org-table-expand-lhs-ranges org-table-end re-search-forward 2 remove-text-properties (:org-untouchable t) count-lines "\\`@\\([0-9]+\\)" string-to-number match-string 1 format "@%d$%d" org-table-line-to-dline "Several field/range formulas try to set %s" org-table-goto-field org-table-put-field-property :org-untouchable "\\` *[_^!$/] *\\'" org-table-get-field org-table-message-once-per-second "Re-applying formulas to full table...(line %d)" markerp org-table-goto-column force get-text-property org-table-current-begin-pos org-table-calculate-mark-regexp org-table-recalculate-regexp org-table-hline-regexp org-table-named-field-locations org-table-dlines org-last-recalc-line org-table-may-need-update org-table-eval-formula noalign nocst nostore noanalysis "Re-applying formula to field: %s" 257 "\211\302V\203\n\303\304!\210\211\300V\2051    \305=\2061    \306=\203\"\307\310!\210\305\207    \311=\203.\312\313!\2061\303\314!\207" [org-table-formula-create-columns 1000 user-error "Formula column target too large" t warn org-display-warning "Out-of-bounds formula added columns" prompt yes-or-no-p "Out-of-bounds formula.  Add columns? " "Missing columns in the table.  Aborting"] "\n\n(fn COLUMN)" (org-untouchable t) org-table-align "Re-applying formulas to %d lines... done" "Re-applying formulas... done"] 26 (#$ . 102801) "P"])
691 #@175 Recalculate the table until it does not change anymore.
692 The maximum number of iterations is 10, but you can choose a different value
693 with the prefix ARG.
694
695 (fn &optional ARG)
696 (defalias 'org-table-iterate #[256 "\211\203\n\300!\202 \301\302\303 \304 {\305\3062VW\203QT\262\307\310!\210\303 \304 {\262\230\2047\211\262\202\311V\203E\312\313\"\210\202I\312\314!\210\315\306\316\"\210\202\317\320\"0\207" [prefix-numeric-value 10 0 org-table-begin org-table-end nil exit org-table-recalculate all 1 message "Convergence after %d iterations" "Table was already stable" throw t user-error "No convergence after %d iterations"] 8 (#$ . 106969) "P"])
697 #@47 Recalculate all tables in the current buffer.
698 (defalias 'org-table-recalculate-buffer-tables #[0 "\212\214~\210\300\301\302\"*\207" [org-table-map-tables #[0 "\300\301\211\"\210\302 \207" [org-table-recalculate t org-table-align] 3] t] 3 (#$ . 107640) nil])
699 #@73 Iterate all tables in the buffer, to converge inter-table dependencies.
700 (defalias 'org-table-iterate-buffer-tables #[0 "\300\211\301\302 !\303\212\214~\210\3042N\305V\203DS\262\306\307\310\"\210\301\302 !\211\262\232\203>\306\311\310\"\210\312\313Z\"\210\314\304\310\"\210\202\211\262\202\306\311\310\"\210\315\316\"0*\207" [10 md5 buffer-string nil exit 0 org-table-map-tables #[0 "\300\301\211\"\207" [org-table-recalculate t] 3] t org-table-align message "Convergence after %d iterations" throw user-error "No convergence after %d iterations"] 8 (#$ . 107904) nil])
701 #@74 Apply the #+TBLFM in the line at point to the table.
702
703 (fn &optional ARG)
704 (defalias 'org-table-calc-current-TBLFM #[256 "\301 \204    \302\303!\210\304 \305 {\212\306 b\210\307 \310\261\210\307 \311\312!\210\313\314x\210\315\312\316\317\320\"\321\"\322$\216\323\2069\324\211\325!)\266\202)\262\262)\207" [current-prefix-arg org-at-TBLFM-p user-error "Not at a #+TBLFM line" line-beginning-position line-end-position org-table-TBLFM-begin point-marker "\n" beginning-of-line 0 "  \n    " nil make-byte-code "\300\301|\210\300\302\211\223\210\301\302\211\223\207" vconcat vector [nil] 3 org-table-recalculate t call-interactively] 11 (#$ . 108495) "P"])
705 #@123 Find the beginning of the TBLFM lines and return its position.
706 Return nil when the beginning of TBLFM line was not found.
707 (defalias 'org-table-TBLFM-begin #[0 "\212\301y\210\302\303\304#\205\305\306!)\207" [org-table-TBLFM-begin-regexp 1 re-search-backward nil t line-beginning-position 2] 4 (#$ . 109160)])
708 #@254 Expand list of formulas.
709 If some of the RHS in the formulas are ranges or a row reference,
710 expand them to individual field equations for each field.  This
711 function assumes the table is already analyzed (i.e., using
712 `org-table-analyze').
713
714 (fn EQUATIONS)
715 (defalias 'org-table-expand-lhs-ranges #[257 "\303\211\203\331\211@\211@A\304\303\305\306#)\266\203\203$B\262\202\320\307\303\305\306#)\266\203\203<B\262\202\320\310\303\305\306#)\266\203\203TB\262\202\320\306\311\"\203\204    \312\211W\203\211\313\314\315T#\316#BB\262\210\211T\262\202]\266\202\320\317\n\320\303\321%\322@!A@\322\3238\324\"\3258X\203\316X\203\305\313\314\326#\316#\nBB\262T\262\202\245\266T\262\202\235\266\266A\266\202\202\237\262\207" [inhibit-changing-match-data org-table-current-ncol org-table-current-begin-pos nil "\\`@-?[-+0-9]+\\$-?[0-9]+\\'" t string-match "\\`[a-zA-Z][_a-zA-Z0-9]*\\'" "\\`\\$[0-9]+\\'" "\\`@[0-9]+\\'" 0 propertize format "%s$%d" :orig-eqn org-table-get-range 1 corners org-table-line-to-dline 2 above 3 "@%d$%d"] 20 (#$ . 109478)])
716 #@528 Replace @<, @>, $<, $> with first/last row/column of the table.
717 So @< and $< will always be replaced with @1 and $1, respectively.
718 The advantage of these special markers are that structure editing of
719 the table will not change them, while @1 and $1 will be modified
720 when a line/row is swapped out of that privileged position.  So for
721 formulas that use a range of rows or columns, it may often be better
722 to anchor the formula with "I" row markers, or to offset from the
723 borders of the table using the @< @> $< $> makers.
724
725 (fn S)
726 (defalias 'org-table-formula-handle-first/last-rc #[257 "\302\211\211\211\303\304\305#\203~\306\225\203\306\225\262\202\307\310\"\311\232\203*GS\202+    \262\312\225\312\224Z\262\313\307\312\"!\262\314U\203G\202L\315\316#\262\310W\204ZV\203e\317\320\307\303    \"#\210\303\224\262\321\322\323\307\310\n\"#\324\211    $\262\202\266\207" [org-table-dlines org-table-current-ncol nil 0 string-match "\\([@$]\\)\\(<+\\|>+\\)\\|\\(remote([^)]+)\\)" 3 match-string 1 "@" 2 string-to-char 60 - -1 user-error "Reference \"%s\" in expression \"%s\" points outside table" replace-match format "%s%d" t] 12 (#$ . 110604)])
727 #@49 Replace $const with values in string F.
728
729 (fn F)
730 (defalias 'org-table-formula-substitute-names #[257 "\303\304!\305U?\306\307\310\311#)\266\203\312    \313\310\211%\311\314#\211\262\203~\315\225\2034\315\225\262\202T\262\316 \317\303\320\321\322!\323\"\324$\216\325\326\327\"!\330!\203\\\203\\\331!\202]\211\262)\262\211\203z\332\205l\333\205s\334Q\310\211$\262\210\202\n\203\213\335\336#\202\214\211\207" [inhibit-changing-match-data org-table-column-name-regexp org-table-formula-debug 0 string-to-char 39 ";.*[Tt].*\\'" nil t string-match replace-regexp-in-string #[257 "\301\302\303\304\"\"AP\207" [org-table-column-names "$" assoc match-string 1] 6 "\n\n(fn M)"] "\\$\\([a-zA-Z][_a-zA-Z0-9]*\\)\\|\\(\\<remote([^)]*)\\)" 2 match-data make-byte-code "\301\300\302\"\207" vconcat vector [set-match-data evaporate] 3 org-table-get-constant match-string 1 org-string-nw-p org-table-time-string-to-seconds replace-match "(" ")" propertize :orig-formula] 12 (#$ . 111783)])
731 #@95 Find the value for a parameter or constant in a formula.
732 Parameters get priority.
733
734 (fn CONST)
735 (defalias 'org-table-get-constant #[257 "\303\"A\206<\303    \"A\206<\303\n\"A\206<\304\305!\203$\305!\206<\211\306\307G^O\310\230\203;\311\312\307\312O\313#\206<\314\207" [org-table-local-parameters org-table-formula-constants-local org-table-formula-constants assoc fboundp constants-get 0 5 "PROP_" org-entry-get nil inherit "#UNDEFINED_NAME"] 6 (#$ . 112805)])
736 (defvar org-table-fedit-map (byte-code "\300 \301\302\303#\210\301\304\303#\210\301\305\303#\210\301\306\303#\210\301\307\310#\210\301\311\312#\210\301\313\314#\210\301\315\316#\210\301\317\320#\210\301\321\322#\210\301\323\324#\210\301\325\326#\210\301\327\330#\210\301\331\332#\210\301\333\334#\210\301\335\334#\210\301\336\337#\210\301\340\337#\210\301\341\342#\210\301\343\344#\210\211\207" [make-sparse-keymap org-defkey "" org-table-fedit-finish "" "" "'" "" org-table-fedit-abort "?" org-table-show-reference [(meta shift up)] org-table-fedit-line-up [(meta shift down)] org-table-fedit-line-down [(shift up)] org-table-fedit-ref-up [(shift down)] org-table-fedit-ref-down [(shift left)] org-table-fedit-ref-left [(shift right)] org-table-fedit-ref-right [(meta up)] org-table-fedit-scroll-down [(meta down)] org-table-fedit-scroll [(meta tab)] lisp-complete-symbol "\211" [(tab)] org-table-fedit-lisp-indent "    " "" org-table-fedit-toggle-ref-type "}" org-table-fedit-toggle-coordinates] 5))
737 #@24 Org Edit Formulas Menu
738 (defvar org-table-fedit-menu nil (#$ . 114313))
739 (easy-menu-do-define 'org-table-fedit-menu org-table-fedit-map "Org Edit Formulas Menu" '("Edit-Formulas" ["Finish and Install" org-table-fedit-finish t] ["Finish, Install, and Apply" (org-table-fedit-finish t) :keys "C-u C-c C-c"] ["Abort" org-table-fedit-abort t] "--" ["Pretty-Print Lisp Formula" org-table-fedit-lisp-indent t] ["Complete Lisp Symbol" lisp-complete-symbol t] "--" "Shift Reference at Point" ["Up" org-table-fedit-ref-up t] ["Down" org-table-fedit-ref-down t] ["Left" org-table-fedit-ref-left t] ["Right" org-table-fedit-ref-right t] "-" "Change Test Row for Column Formulas" ["Up" org-table-fedit-line-up t] ["Down" org-table-fedit-line-down t] "--" ["Scroll Table Window" org-table-fedit-scroll t] ["Scroll Table Window down" org-table-fedit-scroll-down t] ["Show Table Grid" org-table-fedit-toggle-coordinates :style toggle :selected (with-current-buffer (marker-buffer org-pos) org-table-overlay-coordinates)] "--" ["Standard Refs (B3 instead of @3$2)" org-table-fedit-toggle-ref-type :style toggle :selected org-table-buffer-is-an]))
740 #@42 Position of the TBLFM line being edited.
741 (defvar org-table--fedit-source nil (#$ . 115448))
742 #@62 Edit the formulas of the current table in a separate buffer.
743 (defalias 'org-table-edit-formulas #[0 "\306 \211\204\307 \204\310\311!\210\212\211\203\312\313!\210\314 \210)\315\316\317\"\320\321\322\205(`\"\323\"\324 \325\326 !\327\330 \331 \332\333\334!\210\335 \210\336\337 \210)\340\300!\210\341    D\340\302!\210\340\303!\210\340\304!\210\340\305!\210\342@!\210\343\344\345\322\211$\210\346A!\210\347\212\211\203~\211b\210n\203\206\327\202\207\350\351\327`\"\\)\262\262\211\203\211@\352\353@\"\203\245\354\202\263\355@!\356\232\203\262\357\202\263\360\211\236\211\203\322o\204\301\361c\210\362A\347\363B$c\210\364\"\262 @\232\203\366\347\212\211\203\343\211b\210n\203\353\327\202\354\350\351\327`\"\\)\262\262\355@!\365>\203\366\202\367@\370A\361\260\371\350G\372$\210\211c\266A\266\202\202\223\210C\322=\203*\373 \210\214~\210eb\210\211Sy)\266\374\375\376\377!\"\266\210\207" [font-lock-global-modes major-mode org-pos org-table--fedit-source org-window-configuration org-selected-window org-at-TBLFM-p org-at-table-p user-error "Not at a table" re-search-backward "^[     ]*|" org-table-analyze org-table-current-field-formula key noerror sort org-table-get-stored-formulas t org-table-formula-less-p point-marker copy-marker line-beginning-position 1 current-window-configuration selected-window ((column . "# Column Formulas\n") (field . "# Field and Range Formulas\n") (named . "# Named Field Formulas\n")) org-switch-to-buffer-other-window "*Edit Formulas*" erase-buffer (not fundamental-mode) fundamental-mode make-local-variable not use-local-map add-hook post-command-hook org-table-fedit-post-command easy-menu-add nil 0 count-lines string-match "\\`$\\([0-9]+\\|[<>]+\\)\\'" column string-to-char 64 field named "\n" org-add-props face remove (64 36) "" "$" " = " remove-text-properties (face nil) org-table-fedit-toggle-ref-type message "%s" substitute-command-keys "\\<org-mode-map>Edit formulas, finish with `\\[org-ctrl-c-ctrl-c]' or `\\[org-edit-special]'.  See menu for more commands." org-table-fedit-map org-table-fedit-menu font-lock-comment-face org-table-use-standard-references] 19 (#$ . 115546) nil])
744 (defalias 'org-table-fedit-post-command #[0 "\301>?\205\302 \212\3031\304 0\202\210\202\210\305!)\262\207" [this-command (lisp-complete-symbol) selected-window (error) org-table-show-reference select-window] 3])
745 #@65 Convert a formula from internal to user representation.
746
747 (fn S)
748 (defalias 'org-table-formula-to-user #[257 "\301=\203\n\302!\207\207" [org-table-use-standard-references t org-table-convert-refs-to-an] 3 (#$ . 117966)])
749 #@65 Convert a formula from user to internal representation.
750
751 (fn S)
752 (defalias 'org-table-formula-from-user #[257 "\203\301!\207\207" [org-table-use-standard-references org-table-convert-refs-to-rc] 3 (#$ . 118194)])
753 #@146 Convert spreadsheet references from A7 to @7$28.
754 Works for single references, but also for entire formulas and even the
755 full TBLFM line.
756
757 (fn S)
758 (defalias 'org-table-convert-refs-to-rc #[257 "\300\301\302#\203\202\303\225\203\300\225\262\202\300\224\300V\203<\300\224S\300]H\304\232\203<\300\224\305Z\300]H\304\232\204<\300\225\262\202\306\225\306\224Z\305V\203M\300\225\262\202\300\224\262\307\310\305\"\311\232\203h\312\313\314\310\306\"!\"\202y\312\315\316\310\305\"!\314\310\306\"!#\317\211$\262\202\207" [0 string-match "\\<\\([a-zA-Z]+\\)\\([0-9]+\\>\\|&\\)\\|\\(;[^ \n:]+\\|\\<remote([^,)]*)\\)" 3 46 2 1 replace-match match-string "&" format "$%d" org-letters-to-number "@%d$%d" string-to-number t] 10 (#$ . 118417)])
759 #@150 Convert spreadsheet references from to @7$28 to AB7.
760 Works for single references, but also for entire formulas and even the
761 full TBLFM line.
762
763 (fn S)
764 (defalias 'org-table-convert-refs-to-an #[257 "\300\301\"\203$\302\303\304\305\306\307\310\"!!\306\307\311\"!#\312\211$\262\202\300\313\"\203A\302\314\305\306\307\310\"!!\315Q\312\316$\262\202$\207" [string-match "@\\([0-9]+\\)\\$\\([0-9]+\\)" replace-match format "%s%d" org-number-to-letters string-to-number match-string 2 1 t "\\(^\\|[^0-9a-zA-Z]\\)\\$\\([0-9]+\\)" "\\1" "&" nil] 9 (#$ . 119185)])
765 #@98 Convert a base 26 number represented by letters into an integer.
766 For example:  AB -> 28.
767
768 (fn S)
769 (defalias 'org-letters-to-number #[257 "\300\226\262G\300V\203!\301\302_\303!\304\305$\262\305\306O\262\202\211\207" [0 + 26 string-to-char -65 1 nil] 7 (#$ . 119760)])
770 #@98 Convert an integer into a base 26 number represented by letters.
771 For example:  28 -> AB.
772
773 (fn N)
774 (defalias 'org-number-to-letters #[257 "\300\301V\203\302\303S\304\"\305\\!P\262S\304\245\262\202\211\207" ["" 0 char-to-string mod 26 65] 6 (#$ . 120043)])
775 #@182 Convert a time string into numerical duration in seconds.
776 S can be a string matching either -?HH:MM:SS or -?HH:MM.
777 If S is a string representing a number, keep this number.
778
779 (fn S)
780 (defalias 'org-table-time-string-to-seconds #[257 "\211\301\232\203\207\302\211\211\211\211\303\304\"\203Z\305\306\307\"GW\262\310\306\311\"!\262\310\306\312\"!\262\310\306\313\"!\262\203L\314\315_\316_#[\262\202\251\314\315_\316_#\262\202\251\303\"\204\243\303\317\"\203\243\305\306\307\"GW\262\310\306\311\"!\262\310\306\312\"!\262\203\227\315_\316_\\[\262\202\251\315_\316_\\\262\202\251\310!\262\320!\207" [org-ts-regexp-both "" nil string-match "\\(-?\\)\\([0-9]+\\):\\([0-9]+\\):\\([0-9]+\\)" 0 match-string 1 string-to-number 2 3 4 + 3600 60 "\\(-?\\)\\([0-9]+\\):\\([0-9]+\\)" number-to-string] 10 (#$ . 120314)])
781 #@163 Convert a number of seconds to a time string.
782 If OUTPUT-FORMAT is non-nil, return a number of days, hours,
783 minutes or seconds.
784
785 (fn SECS &optional OUTPUT-FORMAT)
786 (defalias 'org-table-time-seconds-to-string #[513 "\301!\302\267\202C\303\304\305!\306\245\"\202O\303\307\305!\310\245\"\202O\303\311\305!\312\245\"\202O\303\313\"\202O\314\203:\315\202;\316\"\317\320O\202O\314\203L\315\202M\316\"\317W\203[\321P\202\\\211\207" [org-table-duration-hour-zero-padding abs #s(hash-table size 5 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (days 9 hours 20 minutes 31 seconds 42 hh:mm 49)) format "%.3f" float 86400 "%.2f" 3600 "%.1f" 60 "%d" format-seconds "%.2h:%.2m:%.2s" "%h:%.2m:%.2s" 0 -3 "-"] 7 (#$ . 121183)])
787 #@71 Convert all references in this buffer, using FUNCTION.
788
789 (fn FUNCTION)
790 (defalias 'org-table-fedit-convert-buffer #[257 "\300\301 !eb\210m\204`\302 {!c\210`\302 |\210\303y\210\202\211b\210\211\303\211\223\207" [copy-marker line-beginning-position line-end-position nil] 5 (#$ . 121941)])
791 #@64 Convert all references in the buffer from B3 to @3$2 and back.
792 (defalias 'org-table-fedit-toggle-ref-type #[0 "\301\300!\210?\302\203\303\202\304!\210\305\306\203\307\202\310\"\207" [org-table-buffer-is-an make-local-variable org-table-fedit-convert-buffer org-table-convert-refs-to-an org-table-convert-refs-to-rc message "Reference type switched to %s" "A1 etc" "@row$column"] 3 (#$ . 122238) nil])
793 #@48 Shift the reference at point one row/hline up.
794 (defalias 'org-table-fedit-ref-up #[0 "\300\301!\207" [org-table-fedit-shift-reference up] 2 (#$ . 122657) nil])
795 #@50 Shift the reference at point one row/hline down.
796 (defalias 'org-table-fedit-ref-down #[0 "\300\301!\207" [org-table-fedit-shift-reference down] 2 (#$ . 122823) nil])
797 #@53 Shift the reference at point one field to the left.
798 (defalias 'org-table-fedit-ref-left #[0 "\300\301!\207" [org-table-fedit-shift-reference left] 2 (#$ . 122995) nil])
799 #@54 Shift the reference at point one field to the right.
800 (defalias 'org-table-fedit-ref-right #[0 "\300\301!\207" [org-table-fedit-shift-reference right] 2 (#$ . 123170) nil])
801 #@12 
802
803 (fn DIR)
804 (defalias 'org-table-fedit-shift-reference #[257 "\300\301!\203\211\302>\203\303\304\305=\"\207\306\307!\207\300\310!\2031\211\311>\203*\303\312\313=\"\207\303\304\305=\"\207\300\314!\205L\211\315>\203F\303\312\313=\316\225#\207\303\317\305=\"\207" [org-in-regexp "\\(\\<[a-zA-Z]\\)&" (left right) org-rematch-and-replace 1 left user-error "Cannot shift reference in this direction" "\\(\\<[a-zA-Z]\\{1,2\\}\\)\\([0-9]+\\)" (up down) 2 up "\\(@\\|\\.\\.\\)\\([-+]?\\(I+\\>\\|[0-9]+\\)\\)\\(\\$\\([-+]?[0-9]+\\)\\)?" (up down) 3 5] 5 (#$ . 123348)])
805 #@95 Re-match the group N, and replace it with the shifted reference.
806
807 (fn N &optional DECR HLINE)
808 (defalias 'org-rematch-and-replace #[769 "\225\204    \300\301!\210\224b\210\302\303\304!!!\205\"\305\306\304\307!#\310\211#\207" [user-error "Cannot shift reference in this direction" looking-at regexp-quote match-string replace-match org-table-shift-refpart 0 t] 8 (#$ . 123927)])
809 #@220 Shift a reference part REF.
810 If DECR is set, decrease the references row/column, else increase.
811 If HLINE is set, this may be a hline reference, it certainly is not
812 a translation reference.
813
814 (fn REF &optional DECR HLINE)
815 (defalias 'org-table-shift-refpart #[769 "\300 \301\302\303\304\305!\306\"\307$\216\310\311\"\312\203#\302\313O\262\313\312O\262\203\201\310\314\"\203\201\315\316G!P!\262\211\203C\317\202D\313\\\262\211\302U\203Z\211\203V\317\202W\313\\\262\203s\211\302W\203h\320\202i\321\262\322!\262\202x\313]\262\323\324\"P\202\337\310\325\"\203\276\315P!\262\211\203\232\317\202\233\313\\\262\203\266\211\302W\203\254\320\202\255\321\316\322!!P\202\337\316\313]!\202\337\310\326\"\203\334\327\313\330!\203\325\317\202\326\313\\]!\202\337\331\332!\266\202)\207" [match-data make-byte-code 0 "\301\300\302\"\207" vconcat vector [set-match-data evaporate] 3 string-match "^[-+]" nil 1 "^I+" string-to-number number-to-string -1 "-" "+" abs make-string 73 "^[0-9]+" "^[a-zA-Z]+" org-number-to-letters org-letters-to-number user-error "Cannot shift reference"] 10 (#$ . 124315)])
816 #@60 Toggle the display of coordinates in the referenced table.
817 (defalias 'org-table-fedit-toggle-coordinates #[0 "\301!r\302!q\210\212\211b\210\303 *\207" [org-pos marker-position marker-buffer org-table-toggle-coordinate-overlays] 3 (#$ . 125471) nil])
818 #@134 Parse the buffer for formula definitions and install them.
819 With prefix ARG, apply the new formulas to the table.
820
821 (fn &optional ARG)
822 (defalias 'org-table-fedit-finish #[256 "\306 \210\203 \307\310!\210\311\n \f\311eb\210\312\313\311\314#\203g\315\316!\315\317!\311\320\203,\321\202-\322\323\320\324\323##\266\202\211\323\232\204b\325\326\"\203O\327\330\314\211$\262\202=\331\"\203[\332\333\"\210BB\262\266\202\334 !\210\335!\210b\210\336!\210\311\211\223\210\311\211\223\210\337\340!\210\203\216\341\342!\202\221\343\344!\207" [org-table-use-standard-references org-table-buffer-is-an org-pos org-selected-window org-table--fedit-source org-window-configuration org-table-remove-rectangle-highlight org-table-fedit-convert-buffer org-table-convert-refs-to-rc nil re-search-forward "^\\(@[-+I<>0-9.$@]+\\|@?[0-9]+\\|\\$\\([a-zA-Z0-9]+\\|[<>]+\\)\\) *= *\\(.*\\(\n[     ]+.*$\\)*\\)" t match-string 1 3 replace-regexp-in-string "\\`\\([     ]*\n\\)+" "\\`[     \n ]+" "" "[     \n ]+\\'" string-match "[     ]*\n[     ]*" replace-match " " assoc user-error "Double formulas for %s" set-window-configuration select-window org-table-store-formulas kill-buffer "*Edit Formulas*" org-table-recalculate all message "New formulas installed - press C-u C-c C-c to apply."] 15 (#$ . 125730) "P"])
823 #@57 Abort editing formulas, without installing the changes.
824 (defalias 'org-table-fedit-abort #[0 "\303 \210    \304\n!\210\305!\210b\210\306\211\223\210\307\310!\207" [org-pos org-selected-window org-window-configuration org-table-remove-rectangle-highlight set-window-configuration select-window nil message "Formula editing aborted without installing changes"] 5 (#$ . 127039) nil])
825 #@68 Pretty-print and re-indent Lisp expressions in the Formula Editor.
826 (defalias 'org-table-fedit-lisp-indent #[0 "`\302\211\211\303\304!\210\305\306!\203b\210\307\310!\202\241\305\311!\203\"b\202\241\312\313!\204.\314\315!\202\241\305\316!\203\240\317\225\320Zb\210`\262\321i\322\"\262\3231N\324\304!0\202R\210\314\325!\210`\262\214}\210    =\203ueb\210\302\326\327\302\330#\203\232\331\332!\210\202f\313 \210\333ed\"\210eTb\210\326\334\302\330#\203\223\303\304!\210\211c\210\202\201db\210\335\304!\210)b\202\241\302\207" [last-command this-command nil beginning-of-line 1 looking-at "[     ]" call-interactively lisp-indent-line "[$&@0-9a-zA-Z]+ *= *[^     \n']" fboundp pp-buffer user-error "Cannot pretty-print.  Command `pp-buffer' is not available" "[$&@0-9a-zA-Z]+ *= *'(" 0 2 make-string 32 (error) forward-sexp "Cannot pretty-print Lisp expression: Unbalanced parenthesis" re-search-forward "[     ]*\n[     ]*" t replace-match " " untabify "^." org-delete-backward-char] 8 (#$ . 127427) nil])
827 (defvar org-show-positions nil)
828 #@140 Show the location/value of the $ expression at point.
829 When LOCAL is non-nil, show references for the table at point.
830
831 (fn &optional LOCAL)
832 (defalias 'org-table-show-reference #[256 "\306 \210\211\203\n\307 \210\3102\201\211\203`\202\311\312\313 \314\211\211\211\211\211\211\315\316!\203C\317\320!\320\321O\322\317\320!\320\321O\323R\262\324\202\221\315 !\204U\315\f!\204U\315 !\203q\325 \326\320\327\330\331!\332\"\333$\216\334\317\320!!)\262\262\324\202\221\315\335!\203{\336\202\221\315\337!\203\205\340\202\221 \204\216\314\202\221\341\342!\262\205\236\206\236\317\320!\262\203\264\320\224\343 \232\204\264\344\320\224\320\225\345#\210\346\347\306\"\210\336=\203\305\350\314O\262\324=\203\335\351!\352=\204\330\353P\262\354!\262 \204\212\314\210\355\356\314\312#\210\357 \210\360\361!\203\325 \326\320\327\330\331!\362\"\333$\216\334\317\350!!)\262\262\344\350\224\350\225\f#\210)\363 !\203C\364 !\203C\365\364\f!!\203:\366\365\364 !!!\210\202C\367\365\364 !!!\210\nb\210\370 \210 \203T@\202V\371 \203\246\350\314O\262\372\314\312A\373#)\266\203\203x\374!\210\202\227\375\314\312A\373#)\266\203\203\220\374!\210\202\227\376\377!!\210 `\314\223\210\201I\314\211 #\210\232\2041\2031\324=\203\320\201J1\310\201K\314\311$0\202\314\210\2021\210\2021\201LB\"\211\262\203\375\374!\210\201I \210\201M\201N\201O8A@#\210\2021\201LC\"\211\262\203P\376\377A!!\210\201I \210\211b\210\201P\201Q\201RQ\201S \312#\203G\350\224b\210\201I \210\201M\201TA\"\210\2021\341\201U!\210\2021\340=\203s\376\377\350\314O!!\210\201I \210\201M\201V\350\314O\"\210\2021\201LD\"\211\262\203\263\211b\210\201P\201W\201XQ\314\312#\203\252\350\224b\210\201I \210\201M\201Y!\210\2021\341\201Z!\210\2021\204\277\341\342!\210\2021\201LE\"\211\262\203\335\201M\201[A#\210\2021\201LF\"\211\262\203\373\201M\201\\A#\210\2021\201]\201^!\205 \201^!\211\262\203)\201M\201_\201`\201aG\"$\210\2021\341\201b\"\210 b\210    \203xH\201c>\204x     B\211    B\201d\201e    \"\201d\201f    \"\201g\313 \"\210\211b\210\201h!\204v\201g\313 \"\210\266\210\366!*\266\2130\207" [org-pos org-show-positions org-inhibit-highlight-removal org-table-range-regexp2 org-table-translate-regexp org-table-range-regexp org-table-remove-rectangle-highlight org-table-analyze exit highlight t selected-window nil org-in-regexp "^@[0-9]+[     =]" match-string 0 -1 "$1.." "$100" range match-data make-byte-code "\301\300\302\"\207" vconcat vector [set-match-data evaporate] 3 org-table-convert-refs-to-rc "\\$[a-zA-Z][a-zA-Z0-9]*" name "\\$[0-9]+" column user-error "No reference at point" point-at-bol org-table-add-rectangle-overlay secondary-selection add-hook before-change-functions 1 string-to-char 64 "@" org-table-formula-substitute-names re-search-backward "^\\S-" beginning-of-line looking-at "\\(\\$[0-9a-zA-Z]+\\|@[0-9]+\\$[0-9]+\\|[a-zA-Z]+\\([0-9]+\\|&\\)\\) *=" [set-match-data evaporate] markerp marker-buffer get-buffer-window select-window org-switch-to-buffer-other-window org-table-force-dataline org-table-begin "\\`\\$[a-zA-Z][a-zA-Z0-9]*" string-match org-table-goto-field "\\`@\\([1-9][0-9]*\\)\\$\\([1-9][0-9]*\\)\\'" org-table-goto-column string-to-number org-table-current-begin-pos inhibit-changing-match-data org-table-named-field-locations org-table-column-names org-table-local-parameters org-table-formula-constants-local org-table-formula-constants constants-unit-system this-command org-table-highlight-rectangle (error) org-table-get-range assoc message "Named field, column %d of line %d" 2 re-search-forward "^[     ]*| *! *.*?| *\\(" "\\) *|" org-table-end "Named column (column %s)" "Column name not found" "Column %s" "^[     ]*| *\\$ *.*?| *\\(" "=\\)" "Local parameter." "Parameter not found" "Local Constant: $%s=%s in #+CONSTANTS line." "Constant: $%s=%s in `org-table-formula-constants'." fboundp constants-get "Constant: $%s=%s, from `constants.el'%s." format " (%s units)" "Undefined name $%s" (org-table-fedit-scroll org-table-fedit-scroll-down) apply min max set-window-start pos-visible-in-window-p] 20 (#$ . 128476) nil])
833 #@51 Make sure the cursor is in a dataline in a table.
834 (defalias 'org-table-force-dataline #[0 "\212\301\302!\210\303!)?\205Q\212\304\305\306#)\212\307\305\306#)\203;\211\203;\310`Z!\310`Z!W\2036\2027\211b\202O\204C\211\203L\206H\211b\202O\311\312!\266\203\207" [org-table-dataline-regexp beginning-of-line 1 looking-at re-search-forward nil move re-search-backward abs user-error "No table dataline around here"] 7 (#$ . 132721)])
835 #@58 Move cursor one line up in the window showing the table.
836 (defalias 'org-table-fedit-line-up #[0 "\300\301!\207" [org-table-fedit-move previous-line] 2 (#$ . 133174) nil])
837 #@60 Move cursor one line down in the window showing the table.
838 (defalias 'org-table-fedit-line-down #[0 "\300\301!\207" [org-table-fedit-move next-line] 2 (#$ . 133351) nil])
839 #@140 Move the cursor in the window showing the table.
840 Use COMMAND to do the motion, repeat if necessary to end up in a data line.
841
842 (fn COMMAND)
843 (defalias 'org-table-fedit-move #[257 "\302\303 \302\304\305\306!!!\210`\262\307!\210\310 \203'\311 \203'\307!\210\202\310 \204/\211b\210`\302\223\210\304!)\207" [org-pos org-table-allow-automatic-line-recalculation nil selected-window select-window get-buffer-window marker-buffer call-interactively org-at-table-p org-at-table-hline-p] 9 (#$ . 133529)])
844 #@10 
845
846 (fn N)
847 (defalias 'org-table-fedit-scroll #[257 "\302!\303!)\207" [org-pos other-window-scroll-buffer marker-buffer scroll-other-window] 3 (#$ . 134044) "p"])
848 #@10 
849
850 (fn N)
851 (defalias 'org-table-fedit-scroll-down #[257 "\300[!\207" [org-table-fedit-scroll] 3 (#$ . 134213) "p"])
852 (defvar org-table-rectangle-overlays nil)
853 #@49 Add a new overlay.
854
855 (fn BEG END &optional FACE)
856 (defalias 'org-table-add-rectangle-overlay #[770 "\301\"\302\303\206\f\304#\210\211B\211\207" [org-table-rectangle-overlays make-overlay overlay-put face secondary-selection] 8 (#$ . 134376)])
857 #@236 Highlight rectangular region in a table.
858 When buffer positions BEG and END are provided, use them to
859 delimit the region to highlight.  Otherwise, refer to point.  Use
860 FACE, when non-nil, for the highlight.
861
862 (fn &optional BEG END FACE)
863 (defalias 'org-table-highlight-rectangle #[768 "\206`\206\n`^]\212b\210\302 \303 )B\212b\210\302 \303 )B\304\300!\2030BB@b\210AA^AA]@`X\203k\305    !\203e\306!\210\307\310x\210`\306!\210\307\310w\210\311` #\266\310y\210\202@\266@b\266\312\313\314\"\207" [org-show-positions org-table-dataline-regexp line-beginning-position org-table-current-column boundp looking-at org-table-goto-column "^|\n" nil org-table-add-rectangle-overlay add-hook before-change-functions org-table-remove-rectangle-highlight] 17 (#$ . 134631)])
864 #@51 Remove the rectangle overlays.
865
866 (fn &rest IGNORE)
867 (defalias 'org-table-remove-rectangle-highlight #[128 "?\205\302\303\304\"\210\305\306    \"\210\307\211\207" [org-inhibit-highlight-removal org-table-rectangle-overlays remove-hook before-change-functions org-table-remove-rectangle-highlight mapc delete-overlay nil] 4 (#$ . 135425)])
868 #@69 Collects the coordinate grid overlays, so that they can be removed.
869 (defvar org-table-coordinate-overlays nil (#$ . 135768))
870 (make-variable-buffer-local 'org-table-coordinate-overlays)
871 #@69 Add overlays to the table at point, to show row/column coordinates.
872 (defalias 'org-table-overlay-coordinates #[0 "\303\304\"\210\305\212\306\211\305\211\211\211\211\211\211\211\307 b\210\310 \205\246\311 \262\312\313 \313 T\"\262B\314    !\262\203B\315\316\nT\211\262\f\"\202K\315\317 T\211\262 \"\262\320\321\322$\210\203\237\306\262\323\324\325#\203\237\306\224T\262T\262\326\327!P\262\330!\262\n\325=\203\204\202\205\262\312\211G\\\"\262B\331\321\322$\210\202\\\332\333!\210\202\266\212)\207" [org-table-coordinate-overlays org-table-hline-regexp org-table-use-standard-references mapc delete-overlay nil 0 org-table-begin org-at-table-p point-at-eol make-overlay point-at-bol looking-at format "I*%-2d" "%4d" org-overlay-before-string org-special-keyword evaporate re-search-forward "[+|]\\(-+\\)" t "$" int-to-string org-number-to-letters org-overlay-display beginning-of-line 2] 15 (#$ . 135959) nil])
873 #@53 Toggle the display of Row/Column numbers in tables.
874 (defalias 'org-table-toggle-coordinate-overlays #[0 "?\302\303\203 \304\202\305\"\210\306 \203\203\307 \210?\205)\310\311    \"\210\312\211\207" [org-table-overlay-coordinates org-table-coordinate-overlays message "Tables Row/Column numbers display turned %s" "on" "off" org-at-table-p org-table-align mapc delete-overlay nil] 3 (#$ . 136919) nil])
875 #@40 Toggle the formula debugger in tables.
876 (defalias 'org-table-toggle-formula-debugger #[0 "?\301\302\203 \303\202\304\"\207" [org-table-formula-debug message "Formula debugging has been turned %s" "on" "off"] 3 (#$ . 137337) nil])
877 #@27 Keymap for `orgtbl-mode'.
878 (defvar orgtbl-mode-map (make-keymap) (#$ . 137578))
879 #@39 Local variable used by `orgtbl-mode'.
880 (defvar org-old-auto-fill-inhibit-regexp nil (#$ . 137663))
881 #@40 Matches a line belonging to an orgtbl.
882 (defconst orgtbl-line-start-regexp "[     ]*\\(|\\|#\\+\\(tblfm\\|orgtbl\\|tblname\\):\\)" (#$ . 137767))
883 #@70 Extra `font-lock-keywords' to be added when `orgtbl-mode' is active.
884 (defconst orgtbl-extra-font-lock-keywords (byte-code "\301\302Q\303\304\305FC\207" [orgtbl-line-start-regexp "^" ".*" 0 'org-table prepend] 4) (#$ . 137915))
885 (byte-code "\300\301\302\303#\210\300\301\304\305#\207" [put orgtbl-mode :included t :menu-tag "Org Table Mode"] 4)
886 #@91 Non-nil if Orgtbl mode is enabled.
887 Use the command `orgtbl-mode' to change this variable.
888 (defvar orgtbl-mode nil (#$ . 138265))
889 (make-variable-buffer-local 'orgtbl-mode)
890 #@87 The Org mode table editor as a minor mode for use in other modes.
891
892 (fn &optional ARG)
893 (defalias 'orgtbl-mode #[256 "\306 \307=\203 ?\202\310!\311V\312 \210\313\314!\203#\315\316!\210\202\246\203\317 \2031\320\317\321\"\210\300    \236\211\203?\211\322    \"B\210\323\302!\210\324\325\326\327\330\331$\210\323\304!\210 \323\303!\210 \203b \332 Q\202c \333\334!\210\335\336!\203w\336\3303\"\210\337 \210\3404!\210\202\246\f\341 \210\342\343!\210\344\326\327\324#\210\335\345!\203\235\345\3303\"\210\337 \210\3464!\210\347\350!\210\351\352\203\260\353\202\261\354\"\210\355\356!\203\325\306 \203\305\211\306 \232\203\325\357\315\360\203\320\361\202\321\362#\266\210\347 \210\207" [orgtbl-mode minor-mode-map-alist org-table-may-need-update auto-fill-inhibit-regexp org-old-auto-fill-inhibit-regexp orgtbl-line-start-regexp current-message toggle prefix-numeric-value 0 org-load-modules-maybe derived-mode-p org-mode message "Orgtbl mode is not useful in Org mode, command ignored" orgtbl-setup defalias #[0 "\300\207" [nil] 1] delq make-local-variable t add-hook before-change-functions org-before-change-function nil local "\\|" add-to-invisibility-spec (org-cwidth) fboundp font-lock-add-keywords org-restart-font-lock easy-menu-add org-table-cleanup-narrow-column-properties org-remove-from-invisibility-spec (org-cwidth) remove-hook font-lock-remove-keywords easy-menu-remove force-mode-line-update all run-hooks orgtbl-mode-hook orgtbl-mode-on-hook orgtbl-mode-off-hook called-interactively-p any " in current buffer" "Orgtbl mode %sabled%s" "en" "dis" orgtbl-extra-font-lock-keywords orgtbl-mode-menu] 7 (#$ . 138442) (byte-code "\206\301C\207" [current-prefix-arg toggle] 1)])
894 (defvar orgtbl-mode-hook nil)
895 (byte-code "\301\302N\204\f\303\301\302\304#\210\305\306\307\310\211%\207" [orgtbl-mode-map orgtbl-mode-hook variable-documentation put "Hook run after entering or leaving `orgtbl-mode'.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" add-minor-mode orgtbl-mode " OrgTbl" nil] 6)
896 #@62 Remove all properties related to narrow-column invisibility.
897 (defalias 'org-table-cleanup-narrow-column-properties #[0 "e\301d\302$\211\262\203\303\211T\304#\210\202e\262\301d\305\306$\211\262\2030\303\211T\307#\210\202e\262\301d\310\305$\211\262\205I\303\211T\311#\210\2023\207" [org-narrow-column-arrow text-property-any display remove-text-properties (display t) org-cwidth 1 (org-cwidth t) invisible (invisible t)] 6 (#$ . 140559)])
898 #@251 Create a function for binding in the table minor mode.
899 FUN is the command to call inside a table.  N is used to create a unique
900 command name.  KEYS are keys that should be checked in for a command
901 to execute outside of tables.
902
903 (fn FUN N &rest KEYS)
904 (defalias 'orgtbl-make-binding #[642 "\300\301\302\303\304!P!\305\306\307!\310\311\312\313\n\314#\315\260\316\317\320\321\322\fDD\323\324\321\325\326\327\330\"\331#DEF\257!\207" [eval defun intern "orgtbl-hijacker-command-" int-to-string (arg) "In tables, run `" symbol-name "'.\n" "Outside of tables, run the binding of `" mapconcat key-description "' or `" "'." (interactive "p") if (org-at-table-p) call-interactively quote let (orgtbl-mode) append (or) mapcar #[257 "\300D\207" [key-binding] 3 "\n\n(fn K)"] ('orgtbl-error)] 20 (#$ . 141024)])
905 #@57 Error when there is no default binding for a table key.
906 (defalias 'orgtbl-error #[0 "\300\301!\207" [user-error "This key has no function outside tables"] 2 (#$ . 141839) nil])
907 #@23 Setup orgtbl keymaps.
908 (defalias 'orgtbl-setup #[0 "\302\303\304\211\211\211\211A\262\242\211\262\2032T\262\305@!\262A@\262\306#\262\307#\210\202\307\310\306\311\312\313\314$#\210\307\314\306\311\315\314\316$#\210\307\317\306\320\321\322\323$#\210\307\323\306\320\324\323\325$#\210\307\326\306\327\330\331\332\323%#\210\307\333\306\334\335\336\337$#\210\307\340\306\327\341\342\343\344\345\323&#\210\307\346\306\327\347\350\351\352\353\323&#\210\307\354\306\355\356\354\357$#\210\307\360\306\355\361\362\354$#\210\307\363\364#\210\307\365\366#\210    \203\312\367\370\371\372\373\374\334&\210\307\375\376#\210\377\304!\210\201@\201A\201B\201C$\210\201D\207" [orgtbl-mode-map orgtbl-optimized 0 (([(meta shift left)] org-table-delete-column) ([(meta left)] org-table-move-column-left) ([(meta right)] org-table-move-column-right) ([(meta shift right)] org-table-insert-column) ([(meta shift up)] org-table-kill-row) ([(meta shift down)] org-table-insert-row) ([(meta up)] org-table-move-row-up) ([(meta down)] org-table-move-row-down) ("" org-table-cut-region) ("\367" org-table-copy-region) ("" org-table-paste-rectangle) ("" org-table-wrap-region) ("-" org-table-insert-hline) ("}" org-table-toggle-coordinate-overlays) ("{" org-table-toggle-formula-debugger) (" " org-table-next-row) ([(shift return)] org-table-copy-down) ("?" org-table-field-info) (" " org-table-blank-field) ("+" org-table-sum) ("=" org-table-eval-formula) ("'" org-table-edit-formulas) ("`" org-table-edit-field) ("*" org-table-recalculate) ("^" org-table-sort-lines) ("\341" org-table-beginning-of-field) ("\345" org-table-end-of-field) ([(control 35)] org-table-rotate-recalc-marks)) nil org-key orgtbl-make-binding org-defkey [(return)] orgtbl-ret 100 [(return)] " " 101 [(return)] [(tab)] orgtbl-tab 102 [(tab)] "    " 103 [(tab)] [(shift tab)] org-table-previous-field 104 [(shift tab)] [(tab)] [backspace] org-delete-backward-char 109 [backspace] "" [S-iso-lefttab] 107 [S-iso-lefttab] [backtab] [(shift tab)] [(tab)] [backtab] 108 [backtab] [S-iso-lefttab] [(shift tab)] [(tab)] "\215" org-table-wrap-region 105 [(meta return)] [(meta return)] 106 [(meta return)] "" orgtbl-ctrl-c-ctrl-c "|" orgtbl-create-or-convert-from-region org-remap self-insert-command orgtbl-self-insert-command delete-char org-delete-char delete-backward-char "|" org-force-self-insert (lambda (#1=#:def-tmp-var) (defvar orgtbl-mode-menu #1# #2="OrgTbl menu")) easy-menu-do-define orgtbl-mode-menu #2# ("OrgTbl" ["Create or convert" org-table-create-or-convert-from-region :active (not (org-at-table-p)) :keys "C-c |"] "--" ["Align" org-ctrl-c-ctrl-c :active (org-at-table-p) :keys "C-c C-c"] ["Next Field" org-cycle :active (org-at-table-p) :keys "TAB"] ["Previous Field" org-shifttab :active (org-at-table-p) :keys "S-TAB"] ["Next Row" org-return :active (org-at-table-p) :keys "RET"] "--" ["Blank Field" org-table-blank-field :active (org-at-table-p) :keys "C-c SPC"] ["Edit Field" org-table-edit-field :active (org-at-table-p) :keys "C-c ` "] ["Copy Field from Above" org-table-copy-down :active (org-at-table-p) :keys "S-RET"] "--" ("Column" ["Move Column Left" org-metaleft :active (org-at-table-p) :keys "M-<left>"] ["Move Column Right" org-metaright :active (org-at-table-p) :keys "M-<right>"] ["Delete Column" org-shiftmetaleft :active (org-at-table-p) :keys "M-S-<left>"] ["Insert Column" org-shiftmetaright :active (org-at-table-p) :keys "M-S-<right>"]) ("Row" ["Move Row Up" org-metaup :active (org-at-table-p) :keys "M-<up>"] ["Move Row Down" org-metadown :active (org-at-table-p) :keys "M-<down>"] ["Delete Row" org-shiftmetaup :active (org-at-table-p) :keys "M-S-<up>"] ["Insert Row" org-shiftmetadown :active (org-at-table-p) :keys "M-S-<down>"] ["Sort lines in region" org-table-sort-lines :active (org-at-table-p) :keys "C-c ^"] "--" ["Insert Hline" org-table-insert-hline :active (org-at-table-p) :keys "C-c -"]) ("Rectangle" ["Copy Rectangle" org-copy-special :active (org-at-table-p)] ["Cut Rectangle" org-cut-special :active (org-at-table-p)] ["Paste Rectangle" org-paste-special :active (org-at-table-p)] ["Fill Rectangle" org-table-wrap-region :active (org-at-table-p)]) "--" ("Radio tables" ["Insert table template" orgtbl-insert-radio-table (cl-assoc-if #'derived-mode-p orgtbl-radio-table-templates)] ["Comment/uncomment table" orgtbl-toggle-comment t]) "--" ["Set Column Formula" org-table-eval-formula :active (org-at-table-p) :keys "C-c ="] ["Set Field Formula" (org-table-eval-formula '(4)) :active (org-at-table-p) :keys "C-u C-c ="] ["Edit Formulas" org-table-edit-formulas :active (org-at-table-p) :keys "C-c '"] ["Recalculate line" org-table-recalculate :active (org-at-table-p) :keys "C-c *"] ["Recalculate all" (org-table-recalculate '(4)) :active (org-at-table-p) :keys "C-u C-c *"] ["Iterate all" (org-table-recalculate '(16)) :active (org-at-table-p) :keys "C-u C-u C-c *"] ["Toggle Recalculate Mark" org-table-rotate-recalc-marks :active (org-at-table-p) :keys "C-c #"] ["Sum Column/Rectangle" org-table-sum :active (or (org-at-table-p) (org-region-active-p)) :keys "C-c +"] ["Which Column?" org-table-current-column :active (org-at-table-p) :keys "C-c ?"] ["Debug Formulas" org-table-toggle-formula-debugger :active (org-at-table-p) :keys "C-c {" :style toggle :selected org-table-formula-debug] ["Show Col/Row Numbers" org-table-toggle-coordinate-overlays :active (org-at-table-p) :keys "C-c }" :style toggle :selected org-table-overlay-coordinates] "--" ("Plot" ["Ascii plot" orgtbl-ascii-plot :active (org-at-table-p) :keys "C-c \" a"] ["Gnuplot" org-plot/gnuplot :active (org-at-table-p) :keys "C-c \" g"])) t] 17 (#$ . 142022)])
909 #@157 If the cursor is inside a table, realign the table.
910 If it is a table to be sent away to a receiver, do it.
911 With prefix arg, also recompute table.
912
913 (fn ARG)
914 (defalias 'orgtbl-ctrl-c-ctrl-c #[257 "\303`\304\212\305\306!\210\307\310!\203\311\225\202&\307\312!\203\202&\307\313!\205&\314\262)\211\250\203R\211b\210\315 \210\203?\316\317!\210\202B\320 \210\316\321!\210\322\323!\205|\324\325!\202|\211\314=\203t\212\305\306!\210\326\304x\210\327 \205p\317\303\211\316!)\266\202)\202|\304\316\330\331!!))\207" [case-fold-search current-prefix-arg orgtbl-mode t nil beginning-of-line 1 looking-at "[     ]*#\\+ORGTBL:.*\n[     ]*|" 0 "[     ]*|" "[     ]*#\\+tblfm:" recalc org-table-maybe-eval-formula call-interactively org-table-recalculate org-table-maybe-recalculate-line org-table-align orgtbl-send-table maybe run-hooks orgtbl-after-send-table-hook "  \n    " org-at-table-p key-binding ""] 8 (#$ . 147719) "P"])
915 #@197 Create table or convert region to table, if no conflicting binding.
916 This installs the table binding `C-c |', but only if there is no
917 conflicting binding to this key outside orgtbl-mode.
918
919 (fn ARG)
920 (defalias 'orgtbl-create-or-convert-from-region #[257 "\301\302\303!\211\203\304!\202\304\305!)\207" [orgtbl-mode nil key-binding "|" call-interactively org-table-create-or-convert-from-region] 4 (#$ . 148649) "P"])
921 #@61 Justification and field motion for `orgtbl-mode'.
922
923 (fn ARG)
924 (defalias 'orgtbl-tab #[257 "\211\203\300\301!\207\302 \210\303 \207" [org-table-edit-field t org-table-justify-field-maybe org-table-next-field] 3 (#$ . 149074) "P"])
925 #@51 Justification and field motion for `orgtbl-mode'.
926 (defalias 'orgtbl-ret #[0 "o\203\300 \207\301 \210\302 \207" [newline org-table-justify-field-maybe org-table-next-row] 1 (#$ . 149310) nil])
927 #@218 Like `self-insert-command', use overwrite-mode for whitespace in tables.
928 If the cursor is in a table looking at whitespace, the whitespace is
929 overwritten, and the table is not marked as requiring realignment.
930
931 (fn N)
932 (defalias 'orgtbl-self-insert-command #[257 "\306 \203+\203    \307\235\203\310 \210\211\311=\203+\312\313!\203+\314\311\224\311\225|\210\315!)\207\316\314\211\317\f<\203E\320 \f\"\211\262\203EA\206H\321 !!\206M\315\322!\210\205\227\211\315=\205\227    \323=\204i\311\211\202\227\324Y\203w\311\211\202\227\325V\203\221\203\221A@\204\221\211AA\241\210T\211)\207" [org-table-auto-blank-field last-command org-table-may-need-update orgtbl-mode function-key-map last-input-event org-at-table-p (orgtbl-hijacker-command-100 orgtbl-hijacker-command-101 orgtbl-hijacker-command-102 orgtbl-hijacker-command-103 orgtbl-hijacker-command-104 orgtbl-hijacker-command-105 yas/expand) org-table-blank-field 1 looking-at "[^|\n]* \\( \\)|" nil self-insert-command t key-binding assoc vector call-interactively orgtbl-self-insert-command 20 0 org-self-insert-cluster-for-undo org-self-insert-command-undo-counter buffer-undo-list] 7 (#$ . 149511) "p"])
933 #@63 Regular expression matching exponentials as produced by calc.
934 (defvar orgtbl-exp-regexp "^\\([-+]?[0-9][0-9.]*\\)[eE]\\([-+]?[0-9]+\\)$" (#$ . 150713))
935 #@89 Gather a plist of :name, :transform, :params for each destination before
936 a radio table.
937 (defalias 'orgtbl-gather-send-defs #[0 "\212\301 b\210\302\303\304!\210\305\306!\203T\307\310!\302\211\203#\311\304G$\210\202+\312\304G\302$\210\266\202\313\307\314!!\315\225\205@\316\317\307\315!\320Q!\321\322\323\257B\262\303\304!\266\202\n\211\262)\207" [org-rm-props org-table-begin nil beginning-of-line 0 looking-at "[     ]*#\\+ORGTBL[:     ][     ]*SEND[     ]+\\([^      \n]+\\)[     ]+\\([^      \n]+\\)\\([     ]+.*\\)?" match-string 1 remove-text-properties set-text-properties intern 2 3 read "(" ")" :name :transform :params] 10 (#$ . 150871)])
938 #@56 Find and replace table NAME with TEXT.
939
940 (fn NAME TEXT)
941 (defalias 'orgtbl-send-replace-tbl #[514 "\212eb\210\300\301!\302\303\"\302\304\"\305\300\306#\203?\204\306\262\307\310!\305\300\306#\204/\311\312\"\210\313 \210\211`|\210\314\261\266\202?\205G\311\315!\266\204)\207" [nil regexp-quote format "BEGIN +RECEIVE +ORGTBL +%s\\([     ]\\|$\\)" "END +RECEIVE +ORGTBL +%s\\([     ]\\|$\\)" re-search-forward t line-beginning-position 2 user-error "Cannot find end of receiver location at %d" beginning-of-line "\n" "No valid receiver location found in the buffer"] 11 (#$ . 151519)])
942 #@282 Convert the table at point to a Lisp structure.
943 The structure will be a list.  Each item is either the symbol `hline'
944 for a horizontal separator line, or a list of field values as strings.
945 The table is taken from the parameter TXT, or from the buffer at point.
946
947 (fn &optional TXT)
948 (defalias 'org-table-to-lisp #[256 "\211\204 \300 \204 \301\302!\210\211\206\303\304 \305 \"\306\307\310\311\"\"\207" [org-at-table-p user-error "No table at point" buffer-substring-no-properties org-table-begin org-table-end mapcar #[257 "\301\"\203    \302\207\303\304\305\203\306\202\307\310\305\311\310##\266\202\312\"\207" [org-table-hline-regexp string-match hline org-split-string nil replace-regexp-in-string "\\`\\([     ]*\n\\)+" "\\`[     \n ]+" "" "[     \n ]+\\'" "\\s-*|\\s-*"] 11 "\n\n(fn X)"] org-split-string "[     ]*\n[     ]*"] 7 (#$ . 152120)])
949 #@176 Send a transformed version of table at point to the receiver position.
950 With argument MAYBE, fail quietly if no transformation is defined
951 for this table.
952
953 (fn &optional MAYBE)
954 (defalias 'orgtbl-send-table #[256 "\3002\203\301 \204 \302\303!\210\304\305!\203\306 \210\307 \310\311\312 \313 \"!\314\2045\2031\315\300\316\"\210\2025\302\317!\210\211\203h\211@\320\321\"\320\322\"\320\323\"\324!\204S\302\325\"\210\326    \"\"\266T\262A\266\202\2026\210\327\330\211\331V\203v\332\202w\333#\210\211\314V\205\200\211\266\2030\207" [exit org-at-table-p user-error "Not at a table" called-interactively-p any org-table-align orgtbl-gather-send-defs org-table-to-lisp buffer-substring-no-properties org-table-begin org-table-end 0 throw nil "Don't know how to transform this table" plist-get :name :transform :params fboundp "No such transformation function %s" orgtbl-send-replace-tbl message "Table converted and installed at %d receiver location%s" 1 "s" ""] 14 (#$ . 152972) nil])
955 #@129 Remove the elements in LIST with indices in INDICES.
956 First element has index 0, or I0 if given.
957
958 (fn LIST INDICES &optional I0)
959 (defalias 'org-remove-by-index #[770 "\211CC\211\242\204 \2029\211\242\250\203\211\242C\240\210\211\242\206 \300S\240\210\301\302\303\304\305\306\307\310\n\"\311\"\312\313%\"\"\207" [0 delq :rm mapcar make-byte-code 257 "\301\211\242T\240\210\301\242\300\242>\203\302\207\207" vconcat vector [:rm] 3 "\n\n(fn X)"] 15 (#$ . 153981)])
960 #@43 Comment or uncomment the orgtbl at point.
961 (defalias 'orgtbl-toggle-comment #[0 "\303\304\305    !\nQ\304\nP\212\306\307!\210\310!\203\303\202'\310!\203$\311\202'\312\313!)\211\2030\2021\311\211\212\306\307!\210\310!\203E\306\314!\210\2028\306\315!\210`\262\310!\203Y\306\315!\210\202L`\262)\316\205f\317#)\207" [case-fold-search comment-start orgtbl-line-start-regexp t "^" regexp-quote beginning-of-line 1 looking-at nil user-error "Not at an org table" 0 2 comment-region (4)] 10 (#$ . 154464) nil])
962 #@64 Insert a radio table template appropriate for this major mode.
963 (defalias 'orgtbl-insert-radio-table #[0 "\302\303\"\211A@\304\211\204\305\306    \"\210\307\310!\262\311\312\"\203*\313\314\211$\262\202n\2041\315c\210`\262c\210\211b\207" [orgtbl-radio-table-templates major-mode cl-assoc-if derived-mode-p nil user-error "No radio table setup defined for %s" read-string "Table name: " string-match "%n" replace-match t "\n"] 9 (#$ . 154994) nil])
964 #@2880 Convert the orgtbl-mode TABLE to some other format.
965
966 This generic routine can be used for many standard cases.
967
968 TABLE is a list, each entry either the symbol `hline' for
969 a horizontal separator line, or a list of fields for that
970 line.  PARAMS is a property list of parameters that can
971 influence the conversion.
972
973 Valid parameters are:
974
975 :backend, :raw
976
977   Export back-end used as a basis to transcode elements of the
978   table, when no specific parameter applies to it.  It is also
979   used to translate cells contents.  You can prevent this by
980   setting :raw property to a non-nil value.
981
982 :splice
983
984   When non-nil, only convert rows, not the table itself.  This is
985   equivalent to setting to the empty string both :tstart
986   and :tend, which see.
987
988 :skip
989
990   When set to an integer N, skip the first N lines of the table.
991   Horizontal separation lines do count for this parameter!
992
993 :skipcols
994
995   List of columns that should be skipped.  If the table has
996   a column with calculation marks, that column is automatically
997   discarded beforehand.
998
999 :hline
1000
1001   String to be inserted on horizontal separation lines.  May be
1002   nil to ignore these lines altogether.
1003
1004 :sep
1005
1006   Separator between two fields, as a string.
1007
1008 Each in the following group may be either a string or a function
1009 of no arguments returning a string:
1010
1011 :tstart, :tend
1012
1013   Strings to start and end the table.  Ignored when :splice is t.
1014
1015 :lstart, :lend
1016
1017   Strings to start and end a new table line.
1018
1019 :llstart, :llend
1020
1021   Strings to start and end the last table line.  Default,
1022   respectively, to :lstart and :lend.
1023
1024 Each in the following group may be a string or a function of one
1025 argument (either the cells in the current row, as a list of
1026 strings, or the current cell) returning a string:
1027
1028 :lfmt
1029
1030   Format string for an entire row, with enough %s to capture all
1031   fields.  When non-nil, :lstart, :lend, and :sep are ignored.
1032
1033 :llfmt
1034
1035   Format for the entire last line, defaults to :lfmt.
1036
1037 :fmt
1038
1039   A format to be used to wrap the field, should contain %s for
1040   the original field value.  For example, to wrap everything in
1041   dollars, you could use :fmt "$%s$".  This may also be
1042   a property list with column numbers and format strings, or
1043   functions, e.g.,
1044
1045     (:fmt (2 "$%s$" 4 (lambda (c) (format "$%s$" c))))
1046
1047 :hlstart :hllstart :hlend :hllend :hsep :hlfmt :hllfmt :hfmt
1048
1049  Same as above, specific for the header lines in the table.
1050  All lines before the first hline are treated as header.  If
1051  any of these is not present, the data line value is used.
1052
1053 This may be either a string or a function of two arguments:
1054
1055 :efmt
1056
1057   Use this format to print numbers with exponential.  The format
1058   should have %s twice for inserting mantissa and exponent, for
1059   example "%s\\times10^{%s}".  This may also be a property
1060   list with column numbers and format strings or functions.
1061   :fmt will still be applied after :efmt.
1062
1063 (fn TABLE PARAMS)
1064 (defalias 'orgtbl-to-generic #[514 "\304\305!\210\306\307\"\310\311\206\312\313\314\315!B\316\317!B\320\321    !B\322BBB$\323\211\324\325!r\211q\210\326\327\330\331\332!\333\"\334$\216\335\336 \210)p\323\211\203\206\211@\211\337=\203[\340\341!\210\202\211:\203\340\342!\210\211\211\203z\211@\340!\210\340\343!\210A\266\202\202e\210\340\344!\210A\266\202\202H\210*\323\345\346\347\323\n#\350\351    !D\"!)\262\352\306\353\"\354\355 \314\356\323\335%#\262*\210\203\3049\203\304\351!\204\304\357\360!\210\203\317\306\361\"\203\323\304\362!\210\306\363\"\211\203\376\364!\204\345\357\365!\210\327C\354\316\326\366\367\331\332        \"\370\"\371\372%\323\335%\266\210\306\373\"\211\203$\211:\204\357\374!\210\354\314\326\366\375\331\332!\376\"\377\201@%#\210\210\201A!\323C\354\2038\201B\2029\316\326\366\201C\331\332!\201D\"\201E\201F%#\210\201G\201H\242#\266\203\201I#\201J!\203w\201K\327\201L#\202z\201M\262\207" [org-inhibit-startup org-element-use-cache standard-output org-export-filters-alist require ox plist-get :backend org-export-create-backend :parent org :transcoders table org-table--to-generic-table table-row org-table--to-generic-row table-cell org-table--to-generic-cell ((macro lambda (m c i) (org-element-macro-interpreter m nil))) nil generate-new-buffer " *temp*" make-byte-code 0 "\301\300!\205    \302\300!\207" vconcat vector [buffer-name kill-buffer] 2 t org-mode hline princ "|--\n" "| " " |" "\n" org-export-install-filters org-combine-plists org-export-get-environment :back-end org-export-get-backend org-export-filter-apply-functions :filter-parse-tree org-element-map org-element-parse-buffer identity user-error "Unknown :backend value" :raw ox-org :skip wholenump "Wrong :skip value" 257 "\301\242\300Y\203    \302\207\303!\210\301\211\242T\240\210\304\207" [t org-element-extract-element nil] 3 "\n\n(fn ROW)" :skipcols "Wrong :skipcols value" "\301!\302!\211\205G\211@\303\304\"\305=\203@\306\203\306\202\307\302!\233\211\203>\211@\300>\2033\310!\210T\262A\266\202\202#\266A\266\202\202\262\207" [org-export-table-has-special-column-p org-element-contents org-element-property :type standard 1 0 org-element-extract-element] 9 "\n\n(fn TABLE)" org-export-table-has-special-column-p (table-cell table-row) "\301!\302=\203\303\304\"\202\305\304\"\205\300\300\242B\240\207" [org-element-type table-row org-export-table-row-is-special-p nil org-export-first-sibling-p] 4 "\n\n(fn DATUM)" plist-put :ignore-list org-export-data-with-backend org-string-nw-p substring-no-properties -1 ""] 18 (#$ . 155461)])
1065 #@50 
1066
1067 (fn VALUE NAME &optional WITH-CONS &rest ARGS)
1068 (defalias 'org-table--generic-apply #[898 "\204\300\207\301!\203\302\303DBB\207;\2033\211@:\203'\304\305BBB\207\211\2031\306BB\207\207\203f:\203f\307\310\311\312\313\303    DEDDC\314\315\316\306\310BBD\317\302\310BBD\320\321\322 ED\257E\207\321\322\"\207" [nil functionp funcall quote apply #'format format let val cadr memq column cond ((null val) contents) (stringp val) (functionp val) t user-error "Wrong %s value"] 14 (#$ . 160991)])
1069 #@132 Return custom table transcoder according to PARAMS.
1070 PARAMS is a plist.  See `orgtbl-to-generic' for more
1071 information.
1072
1073 (fn PARAMS)
1074 (defalias 'org-table--to-generic-table #[257 "\300\301\"\300\302\"\300\303\"\300\304\"\305\306\307\205%?\205%\307\310\311\"\312BB\2037\2047\2047\203;\313\202C\314\315    D\316BB\310?\205L\317\"FE\207" [plist-get :backend :splice :tstart :tend lambda (table contents info) concat org-table--generic-apply ":tstart" ("\n") contents org-export-with-backend quote (table contents info) ":tend"] 13 (#$ . 161512)])
1075 #@136 Return custom table row transcoder according to PARAMS.
1076 PARAMS is a plist.  See `orgtbl-to-generic' for more
1077 information.
1078
1079 (fn PARAMS)
1080 (defalias 'org-table--to-generic-row #[257 "\300\301\"\300\302\"\300\303\"\300\304\"\300\305\"\300\306\"\300\307\"\300\310\"\300    \311\"\300\n\312\"\300 \313\"\300\f\314\"\300 \315\"\316\317\320\321\322\323\"\203S\324\300\323\"\325\"\202`\205`\326\327D\330BB\331\332\204q\204q\f\205r\333D\334\204\203\204\203\f\205\204\335D\336BB\337\340\341\342 \205\233\334\324 \343\344$D \205\252\332\324\345\344$D\205\271\346\324\347\344$D\350\203\312\324\351\344    $\202G\352\342\204\326\205\345\334\352\324\353\"\340\324\354\"FD\204\357\205\376\332\352\324\355\"\340\324\356\"FD\204\205\346\352\324 \357\"\340\324\360\"FD\350 \204\"\2032\352\324\"\361\"\340\324 \362\"F\202C!\203B\326\327#D\363BB\202C\340D\257DD\257\262EEFE\207" [plist-get :backend :lstart :llstart :hlstart :hllstart :lend :llend :hlend :hllend :lfmt :llfmt :hlfmt :hllfmt lambda (row contents info) if (eq (org-element-property :type row) 'rule) plist-member :hline org-table--generic-apply ":hline" org-export-with-backend quote (row nil info) let headerp (org-export-table-row-in-header-p row info) last-header-p (org-export-table-row-ends-header-p row info) ((lastp (not (org-export-get-next-element row info)))) when contents (org-element-map row 'table-cell (lambda (cell) (org-export-data-with-backend cell (plist-get info :back-end) (org-combine-plists info '(:orgtbl-ignore-sep t)))) info) cond ":hllfmt" nil ":hlfmt" lastp ":llfmt" t ":lfmt" concat ":hllstart" ":hllend" ":hlstart" ":hlend" ":llstart" ":llend" ":lstart" ":lend" (row contents info)] 41 (#$ . 162084)])
1081 #@137 Return custom table cell transcoder according to PARAMS.
1082 PARAMS is a plist.  See `orgtbl-to-generic' for more
1083 information.
1084
1085 (fn PARAMS)
1086 (defalias 'org-table--to-generic-cell #[257 "\300\301\"\300\302\"\300\303\"\300\304\"\300\305\"\300\306\"\307\310\205)\300    \311\"\205)\312\313\314\2044\2055\315D\316\317\320\f  E\"\205E\321DD\322\323 \205_\322\324\313\325\326\323\327\330\331\332\333%EEE\334 \205q\314\326\323\327\335\331\323$ED \205\202\331\326\323\327\336\331\323$EDEF\204\216\203\315\337\340    ?\205\227\341\342BB \204\243\323\202\253\343\344D\345BB\346\323\f\203\301 \203\301\337\314 F\202\310 \206\310\fEF\202\336 \203\335\343\344 D\347BB\202\336\323FF\207" [plist-get :backend :efmt :fmt :hfmt :sep :hsep lambda (cell contents info) :raw (setq contents (replace-regexp-in-string "\n" " " (org-trim (org-element-interpret-data (org-element-contents cell))))) let headerp (org-export-table-row-in-header-p (org-export-get-parent-element cell) info) column cl-some #[257 "\211\242\250\207" [] 2 "\n\n(fn V)"] (1+ (cdr (org-export-table-cell-address cell info))) when contents (string-match orgtbl-exp-regexp contents) ((mantissa (match-string 1 contents)) (exponent (match-string 2 contents))) setq org-table--generic-apply ":efmt" t mantissa exponent cond ":hfmt" ":fmt" if or (not headerp) ((plist-get info :orgtbl-ignore-sep) (not (org-export-get-next-element cell info))) org-export-with-backend quote (cell contents info) concat (cell contents info)] 26 (#$ . 163874)])
1087 #@77 Convert the orgtbl-mode table to TAB separated material.
1088
1089 (fn TABLE PARAMS)
1090 (defalias 'orgtbl-to-tsv #[514 "\300\301\302\"\"\207" [orgtbl-to-generic org-combine-plists (:sep "    ")] 7 (#$ . 165420)])
1091 #@141 Convert the orgtbl-mode table to CSV material.
1092 This does take care of the proper quoting of fields with comma or quotes.
1093
1094 (fn TABLE PARAMS)
1095 (defalias 'orgtbl-to-csv #[514 "\300\301\302\"\"\207" [orgtbl-to-generic org-combine-plists (:sep "," :fmt org-quote-csv-field)] 7 (#$ . 165627)])
1096 #@604 Convert the orgtbl-mode TABLE to LaTeX.
1097
1098 TABLE is a list, each entry either the symbol `hline' for
1099 a horizontal separator line, or a list of fields for that line.
1100 PARAMS is a property list of parameters that can influence the
1101 conversion.  All parameters from `orgtbl-to-generic' are
1102 supported.  It is also possible to use the following ones:
1103
1104 :booktabs
1105
1106   When non-nil, use formal "booktabs" style.
1107
1108 :environment
1109
1110   Specify environment to use, as a string.  If you use
1111   "longtable", you may also want to specify :language property,
1112   as a string, to get proper continuation strings.
1113
1114 (fn TABLE PARAMS)
1115 (defalias 'orgtbl-to-latex #[514 "\300\301!\210\302\303\304\305\306\307\310\311\312\313 \314\"\315\311\316\313\317\"\206\320\257\f\"\"\207" [require ox-latex orgtbl-to-generic org-combine-plists :backend latex :latex-default-table-mode table :latex-tables-centered nil :latex-tables-booktabs plist-get :booktabs :latex-table-scientific-notation :latex-default-table-environment :environment "tabular"] 19 (#$ . 165923)])
1116 #@448 Convert the orgtbl-mode TABLE to HTML.
1117
1118 TABLE is a list, each entry either the symbol `hline' for
1119 a horizontal separator line, or a list of fields for that line.
1120 PARAMS is a property list of parameters that can influence the
1121 conversion.  All parameters from `orgtbl-to-generic' are
1122 supported.  It is also possible to use the following one:
1123
1124 :attributes
1125
1126   Attributes and values, as a plist, which will be used in
1127   <table> tag.
1128
1129 (fn TABLE PARAMS)
1130 (defalias 'orgtbl-to-html #[514 "\300\301!\210\302\303\304\305\306\307\310\311\312\313\314\315\316\317\320\"\203\"\321\320\"\202#\322\257\f\"\"\207" [require ox-html orgtbl-to-generic org-combine-plists :backend html :html-table-data-tags ("<td%s>" . "</td>") :html-table-use-header-tags-for-first-column nil :html-table-align-individual-fields t :html-table-row-tags ("<tr>" . "</tr>") :html-table-attributes plist-member :attributes plist-get (:border "2" :cellspacing "0" :cellpadding "6" :rules "groups" :frame "hsides")] 19 (#$ . 166961)])
1131 #@483 Convert the orgtbl-mode TABLE to Texinfo.
1132
1133 TABLE is a list, each entry either the symbol `hline' for
1134 a horizontal separator line, or a list of fields for that line.
1135 PARAMS is a property list of parameters that can influence the
1136 conversion.  All parameters from `orgtbl-to-generic' are
1137 supported.  It is also possible to use the following one:
1138
1139 :columns
1140
1141   Column widths, as a string.  When providing column fractions,
1142   "@columnfractions" command can be omitted.
1143
1144 (fn TABLE PARAMS)
1145 (defalias 'orgtbl-to-texinfo #[514 "\301\302!\210\303\304\305\306\307\310\311\310\257\"\"\312\313\"\211\204\310\2025\314\310\315\316#)\266\203\2032\211\2025\317P\262\211\204?\202H\320\321\315\310\322&\207" [inhibit-changing-match-data require ox-texinfo orgtbl-to-generic org-combine-plists :backend texinfo :texinfo-tables-verbatim nil :texinfo-table-scientific-notation plist-get :columns "{\\|@columnfractions " t string-match "@columnfractions " replace-regexp-in-string "@multitable \\(.*\\)" 1] 11 (#$ . 167968)])
1146 #@524 Convert the orgtbl-mode TABLE into another orgtbl-mode table.
1147
1148 TABLE is a list, each entry either the symbol `hline' for
1149 a horizontal separator line, or a list of fields for that line.
1150 PARAMS is a property list of parameters that can influence the
1151 conversion.  All parameters from `orgtbl-to-generic' are
1152 supported.
1153
1154 Useful when slicing one table into many.  The :hline, :sep,
1155 :lstart, and :lend provide orgtbl framing.  :tstart and :tend can
1156 be set to provide ORGTBL directives for the generated table.
1157
1158 (fn TABLE PARAMS)
1159 (defalias 'orgtbl-to-orgtbl #[514 "\300\301!\210\302\303\304\305D\"\"\207" [require ox-org orgtbl-to-generic org-combine-plists :backend org] 8 (#$ . 168999)])
1160 #@326 Convert the orgtbl-mode TABLE into a table.el table.
1161 TABLE is a list, each entry either the symbol `hline' for
1162 a horizontal separator line, or a list of fields for that line.
1163 PARAMS is a property list of parameters that can influence the
1164 conversion.  All parameters from `orgtbl-to-generic' are
1165 supported.
1166
1167 (fn TABLE PARAMS)
1168 (defalias 'orgtbl-to-table\.el #[514 "\300\301!r\211q\210\302\303\304\305\306!\307\"\310$\216\311\"c\210\312 \210\313\314\315\313\316\317\320\321 {##*\207" [generate-new-buffer " *temp*" make-byte-code 0 "\301\300!\205    \302\300!\207" vconcat vector [buffer-name kill-buffer] 2 orgtbl-to-orgtbl org-table-align replace-regexp-in-string "-|" "-+" "|-" "+-" 1 buffer-size] 11 (#$ . 169691)])
1169 #@706 Convert the orgtbl-mode TABLE into a table with unicode characters.
1170
1171 TABLE is a list, each entry either the symbol `hline' for
1172 a horizontal separator line, or a list of fields for that line.
1173 PARAMS is a property list of parameters that can influence the
1174 conversion.  All parameters from `orgtbl-to-generic' are
1175 supported.  It is also possible to use the following ones:
1176
1177 :ascii-art
1178
1179   When non-nil, use "ascii-art-to-unicode" package to translate
1180   the table.  You can download it here:
1181   http://gnuvola.org/software/j/aa2u/ascii-art-to-unicode.el.
1182
1183 :narrow
1184
1185   When non-nil, narrow columns width than provided width cookie,
1186   using "=>" as an ellipsis, just like in an Org mode buffer.
1187
1188 (fn TABLE PARAMS)
1189 (defalias 'orgtbl-to-unicode #[514 "\300\301!\210\302\303\304\305\306\307\310\311    \312\"?\313\311 \314\"\257\"\"\207" [require ox-ascii orgtbl-to-generic org-combine-plists :backend ascii :ascii-charset utf-8 :ascii-table-widen-columns plist-get :narrow :ascii-table-use-ascii-art :ascii-art] 15 (#$ . 170416)])
1190 #@496 Draw an ascii bar in a table.
1191 VALUE is the value to plot, it determines the width of the bar to draw.
1192 MIN is the value that will be displayed as empty (zero width bar).
1193 MAX is the value that will draw a bar filling all the WIDTH.
1194 WIDTH is the span in characters from MIN to MAX.
1195 CHARACTERS is a string that will compose the bar, with shades of grey
1196 from pure white to pure black.  It defaults to a 10 characters string
1197 of regular ascii characters.
1198
1199 (fn VALUE MIN MAX &optional WIDTH CHARACTERS)
1200 (defalias 'orgtbl-ascii-draw #[1283 "\300\206\301!\206\f\302\211GS\303\247\203\202\304    !!\211Z    Z\245\305\306#!\211\307W\203=\310\202d\211_V\203J\311\202d\211\245_Z\312\234\"\313\234!P\266\202\207" [ceiling 12 " .:;c!lhVHW" float string-to-number round * 0 "too small" "too large" make-string string] 17 (#$ . 171445)])
1201 #@338 Draw an ASCII bar plot in a column.
1202
1203 With cursor in a column containing numerical values, this function
1204 will draw a plot in a new column.
1205
1206 ASK, if given, is a numeric prefix to override the default 12
1207 characters width of the plot.  ASK may also be the `\[universal-argument]' prefix,
1208 which will prompt for the width.
1209
1210 (fn &optional ASK)
1211 (defalias 'orgtbl-ascii-plot #[256 "\300 \301\302\303 :\203\304\305\306\"\202\247\203\202\306@\307=\203*A\262\202\307>A\2062\211\203i\211@\211:\203bS8\262\310\311\"\203b\312!\262V\203Y\211\262W\203b\211\262A\266\202\2022\210\313 \210\314 \210\315\316\317T!P\320\321\322            &B\323 B!\210\324\325!\207" [org-table-current-column 1.0e+INF -1.0e+INF org-table-to-lisp read-number "Length of column " 12 hline string-match "^[-+]?\\([0-9]*[.]\\)?[0-9]*\\([eE][+-]?[0-9]+\\)?$" string-to-number org-table-insert-column org-table-move-column-right org-table-store-formulas "$" number-to-string format "'(%s $%s %s %s %s)" "orgtbl-ascii-draw" org-table-get-stored-formulas org-table-recalculate t] 15 (#$ . 172310) "P"])
1212 #@236 Draw a bar in a table using block unicode characters.
1213 It is a variant of orgtbl-ascii-draw with Unicode block
1214 characters, for a smooth display.  Bars appear as grids (to the
1215 extent the font allows).
1216
1217 (fn VALUE MIN MAX &optional WIDTH)
1218 (defalias 'orgtbl-uc-draw-grid #[1027 "\300\301%\207" [orgtbl-ascii-draw " ▏▎▍▌▋▊▉"] 10 (#$ . 173414)])
1219 #@230 Draw a bar in a table using block unicode characters.
1220 It is a variant of orgtbl-ascii-draw with Unicode block
1221 characters, for a smooth display.  Bars are solid (to the extent
1222 the font allows).
1223
1224 (fn VALUE MIN MAX &optional WIDTH)
1225 (defalias 'orgtbl-uc-draw-cont #[1027 "\300\301%\207" [orgtbl-ascii-draw " ▏▎▍▌▋▊▉█"] 10 (#$ . 173778)])
1226 #@617 Get a field value or a list of values in a range from table at ID.
1227
1228 NAME-OR-ID may be the name of a table in the current file as set
1229 by a "#+NAME:" directive.  The first table following this line
1230 will then be used.  Alternatively, it may be an ID referring to
1231 any entry, also in a different file.  In this case, the first
1232 table in that entry will be referenced.
1233 FORM is a field or range descriptor like "@2$3" or "B3" or
1234 "@I$2..@II$2".  All the references must be absolute, not relative.
1235
1236 The return value is either a single string for a single field, or a
1237 list of the fields in the rectangle.
1238
1239 (fn NAME-OR-ID FORM)
1240 (defalias 'org-table-get-remote-range #[514 "\306 \307\310\311\312\313!\314\"\315$\216\316\317\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211    \n% &\f' ()*\320!\262\212\214~\210eb\210\321\322\323!\324Q\317\316#\203pp\262\310\224\262\202\233\325\326\"\262\203\203\327!\204\211\330\331\"\210\332!\262\333!\262\317\211\223\210rq\210\212\214~\210\211b\210\334u\210\321\335\317\316#\203\266\334\224\203\274\330\336\"\210\337 \210\340\341!!\262\342+\"\203\347\343\310\"G\334V\203\347\344\343\310\" \334#\202\351.\266\221)\207" [org-table-last-column-widths org-table-last-alignment org-table-hlines org-table-current-ncol org-table-dlines org-table-current-begin-pos match-data make-byte-code 0 "\301\300\302\"\207" vconcat vector [set-match-data evaporate] 3 t nil org-table-convert-refs-to-rc re-search-forward "^[     ]*#\\+\\(tbl\\)?name:[     ]*" regexp-quote "[     ]*$" org-id-find marker markerp user-error "Can't find remote table \"%s\"" marker-buffer marker-position 1 "^\\(\\*+ \\)\\|^[     ]*|" "Cannot find a table at NAME or ID %s" org-table-analyze org-table-formula-substitute-names org-table-formula-handle-first/last-rc string-match match-string org-table-get-range org-table-current-line-types org-table-named-field-locations org-table-local-parameters org-table-column-name-regexp org-table-column-names case-fold-search org-table-range-regexp] 24 (#$ . 174139)])
1241 #@303 Return formula with table remote references substituted by indirection.
1242 For example "remote($1, @>$2)" => "remote(year_2013, @>$1)".
1243 This indirection works only with the format @ROW$COLUMN.  The
1244 format "B3" is not supported because it can not be
1245 distinguished from a plain table name or ID.
1246
1247 (fn FORM)
1248 (defalias 'org-table-remote-reference-indirection #[257 "\300\301\302\303\211\304&\207" ["\\<remote([     ]*\\([@$][^     ,]+\\)[     ]*,[     ]*\\([^\n)]+\\))" replace-regexp-in-string #[257 "\301 \302\303\304\305\306!\307\"\310$\216\311\312\313\"!\314\315\316\317\320#)\266\203\203+\321P\202,!\262)\207" [inhibit-changing-match-data match-data make-byte-code 0 "\301\300\302\"\207" vconcat vector [set-match-data evaporate] 3 org-table-formula-handle-first/last-rc match-string 1 org-table-get-range "\\`\\$[0-9]+\\'" nil t string-match "@0"] 11 "\n\n(fn M)"] t 1] 9 (#$ . 176224)])
1249 #@13 
1250
1251 (fn MODE)
1252 (defalias 'org-define-lookup-function '(macro . #[257 "\300!\301=\302=\211\203\303\202\304\305\306\307\310\"!\311\307\312\211\211%\313\314\2031\315B\2022\211\262\316    \203>\317\202?\320\321\322\f\205G\323\313\324\325\326\203T\327\202U\330EEF\331BBB\332BBB\257\262\207" [symbol-name first all "s" "" defun intern format "org-lookup-%s" (val s-list r-list &optional predicate) "Find %s occurrence%s of VAL in S-LIST; return corresponding element%s of R-LIST.\nIf R-LIST is nil, return matching element%s of S-LIST.\nIf PREDICATE is not nil, use it instead of `equal' to match VAL.\nMatching is done by (PREDICATE VAL S), where S is an element of S-LIST.\nThis function is generated by a call to the macro `org-define-lookup-function'." let ((p (or predicate 'equal)) (sl s-list) (rl (or r-list s-list)) (ret nil)) (match-p nil) while (and (not match-p) sl) sl when (funcall p val (car sl)) (setq match-p t) ((rval (car rl))) setq ret (append ret (list rval)) rval ((setq sl (cdr sl) rl (cdr rl))) (ret)] 21 (#$ . 177120)]))
1253 #@395 Find first occurrence of VAL in S-LIST; return corresponding element of R-LIST.
1254 If R-LIST is nil, return matching element of S-LIST.
1255 If PREDICATE is not nil, use it instead of `equal' to match VAL.
1256 Matching is done by (PREDICATE VAL S), where S is an element of S-LIST.
1257 This function is generated by a call to the macro `org-define-lookup-function'.
1258
1259 (fn VAL S-LIST R-LIST &optional PREDICATE)
1260 (defalias 'org-lookup-first #[1027 "\300\206\301\206\f\300\2040\2030    @\"\203%\302\262@\262A\262A\262\202 \207" [nil equal t] 12 (#$ . 178190)])
1261 #@394 Find last occurrence of VAL in S-LIST; return corresponding element of R-LIST.
1262 If R-LIST is nil, return matching element of S-LIST.
1263 If PREDICATE is not nil, use it instead of `equal' to match VAL.
1264 Matching is done by (PREDICATE VAL S), where S is an element of S-LIST.
1265 This function is generated by a call to the macro `org-define-lookup-function'.
1266
1267 (fn VAL S-LIST R-LIST &optional PREDICATE)
1268 (defalias 'org-lookup-last #[1027 "\211\206\300\206 \301\203(@\"\203@\262A\262A\262\202\f\207" [equal nil] 11 (#$ . 178758)])
1269 #@396 Find all occurrences of VAL in S-LIST; return corresponding elements of R-LIST.
1270 If R-LIST is nil, return matching elements of S-LIST.
1271 If PREDICATE is not nil, use it instead of `equal' to match VAL.
1272 Matching is done by (PREDICATE VAL S), where S is an element of S-LIST.
1273 This function is generated by a call to the macro `org-define-lookup-function'.
1274
1275 (fn VAL S-LIST R-LIST &optional PREDICATE)
1276 (defalias 'org-lookup-all #[1027 "\211\206\300\206 \301\203-@\"\203\"@\302C\"\266\202A\262A\262\202\f\207" [equal nil append] 12 (#$ . 179305)])
1277 (provide 'org-table)