| 
					
				 | 
			
			
				@@ -2263,48 +2263,42 @@ field, or press @kbd{C-c @}} to toggle the display of a grid. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 Formulas can reference the value of another field in two ways.  Like in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 any other spreadsheet, you may reference fields with a letter/number 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 combination like @code{B3}, meaning the 2nd field in the 3rd row. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-@noindent 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 @vindex org-table-use-standard-references 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-Org prefers@footnote{Org will understand references typed by the user as 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-@samp{B4}, but it will not use this syntax when offering a formula for 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-editing.  You can customize this behavior using the variable 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+However, Org prefers@footnote{Org will understand references typed by the 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+user as @samp{B4}, but it will not use this syntax when offering a formula 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+for editing.  You can customize this behavior using the variable 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 @code{org-table-use-standard-references}.}  to use another, more general 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-operator that looks like this: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+representation that looks like this: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 @example 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 @@@var{row}$@var{column} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 @end example 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-@noindent 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-and allows relative references, i.e. references relative to the 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-row/column of the field whose value is being computed.  These relative 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-references make it possible to store a formula only once and use it in many 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-fields without copying and modifying it. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-Column references can be absolute like @samp{1}, @samp{2},...@samp{@var{N}}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-or relative to the current column like @samp{+1} or @samp{-2}.  @code{$>} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-references the last column in the table, and you can use offsets like 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-@code{$>-2}, meaning the third column from the right. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+Column specifications can be absolute like @code{$1}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+@code{$2},...@code{$@var{N}}, or relative to the current column (i.e.@: the 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+column of the field which is being computed) like @code{$+1} or @code{$-2}. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+@code{$<} and @code{$>} are immutable references to the first and last 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+column, respectively, and you can use @code{$>>>} to indicate the third 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+column from the right. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 The row specification only counts data lines and ignores horizontal separator 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 lines (hlines).  Like with columns, you can use absolute row numbers 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-@samp{1}...@samp{@var{N}}, and row numbers relative to the current row like 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-@samp{+3} or @samp{-1}, and @code{@@>} references the last row in the 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-table@footnote{For backward compatibility you can also use special names like 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-@samp{$LR5} and @samp{$LR12} to refer in a stable way to the 5th and 12th 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-field in the last row of the table.  However, this syntax is deprecated, it 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-should not be used for new documents.}.  You may also specify the row 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-relative to one of the hlines: @samp{I} refers to the first 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-hline@footnote{Note that only hlines are counted that @emph{separate} table 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-lines.  If the table starts with a hline above the header, it does not 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-count.}, @samp{II} to the second, etc@.  @samp{-I} refers to the first such 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-line above the current line, @samp{+I} to the first such line below the 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-current line.  You can also write @samp{III+2} which is the second data line 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+@code{@@1}, @code{@@2},...@code{@@@var{N}}, and row numbers relative to the 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+current row like @code{@@+3} or @code{@@-1}.  @code{@@<} and @code{@@>} are 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+immutable references the first and last@footnote{For backward compatibility 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+you can also use special names like @code{$LR5} and @code{$LR12} to refer in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+a stable way to the 5th and 12th field in the last row of the table. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+However, this syntax is deprecated, it should not be used for new documents. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+Use @code{@@>$} instead.} row in the table, respectively.  You may also 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+specify the row relative to one of the hlines: @code{@@I} refers to the first 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+hline, @code{@@II} to the second, etc@.  @code{@@-I} refers to the first such 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+line above the current line, @code{@@+I} to the first such line below the 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+current line.  You can also write @code{@@III+2} which is the second data line 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 after the third hline in the table. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-@samp{0} refers to the current row and column.  Also, if you omit 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-either the column or the row part of the reference, the current 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-row/column is implied. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+@code{@@0} and @code{$0} refer to the current row and column, respectively, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+i.e. to the row/column for the field being computed.  Also, if you omit 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+either the column or the row part of the reference, the current row/column is 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+implied. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 Org's references with @emph{unsigned} numbers are fixed references 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 in the sense that if you use the same reference in the formula for two 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2313,17 +2307,15 @@ Org's references with @emph{signed} numbers are floating 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 references because the same reference operator can reference different 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 fields depending on the field being calculated by the formula. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 Here are a few examples: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 @example 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-@@2$3      @r{2nd row, 3rd column} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-C2        @r{same as previous} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-$5        @r{column 5 in the current row} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-E&        @r{same as previous} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+@@2$3      @r{2nd row, 3rd column (same as @code{C2})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+$5        @r{column 5 in the current row (same as @code{E&})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 @@2        @r{current column, row 2} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 @@-1$-3    @r{the field one row up, three columns to the left} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 @@-I$2     @r{field just under hline above current row, column 2} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+@@>$5      @r{field in the last row, in column 5} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 @end example 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 @subsubheading Range references 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2338,12 +2330,12 @@ format at least for the first field (i.e the reference must start with 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 @samp{@@} in order to be interpreted correctly).  Examples: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 @example 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-$1..$3        @r{First three fields in the current row} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-$P..$Q        @r{Range, using column names (see under Advanced)} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-@@2$1..@@4$3    @r{6 fields between these two fields} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-A2..C4        @r{Same as above} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+$1..$3        @r{first three fields in the current row} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+$P..$Q        @r{range, using column names (see under Advanced)} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+$<<<..$>>     @r{start in third column, continue to the one but last} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+@@2$1..@@4$3    @r{6 fields between these two fields (same as @code{A2..C4})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 @@-1$-2..@@-1   @r{3 numbers from the column to the left, 2 up to current row} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-@@I..II        @r{Between first and second hline, short for @code{@@I..@@II}} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+@@I..II        @r{between first and second hline, short for @code{@@I..@@II}} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 @end example 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 @noindent Range references return a vector of values that can be fed 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2505,7 +2497,7 @@ taylor($3,x=7,2)     @r{Taylor series of $3, at x=7, second degree} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 Calc also contains a complete set of logical operations.  For example 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 @example 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-if($1<20,teen,string(""))  @r{``teen'' if age $1 less than 20, else empty} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+if($1<20,teen,string(""))  @r{"teen" if age $1 less than 20, else empty} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 @end example 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 @node Formula syntax for Lisp, Field and range formulas, Formula syntax for Calc, The spreadsheet 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2553,16 +2545,20 @@ the formula will be stored as the formula for this field, evaluated, and the 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 current field will be replaced with the result. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 @cindex #+TBLFM 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-Formulas are stored in a special line starting with @samp{#+TBLFM:} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-directly below the table.  If you type the equation in the 4th field of 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-the 3rd data line in the table, the formula will look like 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-@samp{@@3$4=$1+$2}.  When inserting/deleting/swapping column and rows 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-with the appropriate commands, @i{absolute references} (but not relative 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-ones) in stored formulas are modified in order to still reference the 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-same field.  Of course this is not true if you edit the table structure 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-with normal editing commands---then you must fix the equations yourself. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-Instead of typing an equation into the field, you may also use the 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-following command 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+Formulas are stored in a special line starting with @samp{#+TBLFM:} directly 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+below the table.  If you type the equation in the 4th field of the 3rd data 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+line in the table, the formula will look like @samp{@@3$4=$1+$2}.  When 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+inserting/deleting/swapping column and rows with the appropriate commands, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+@i{absolute references} (but not relative ones) in stored formulas are 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+modified in order to still reference the same field.  To avoid this from 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+happening, in particular in range references, anchor ranges at the table 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+borders (using @code{@@<}, @code{@@>}, @code{$<}, @code{$>}), or at hlines 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+using the @code{@@I} notation.  Automatic adaptation of field references does 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+of cause not happen if you edit the table structure with normal editing 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+commands---then you must fix the equations yourself. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+Instead of typing an equation into the field, you may also use the following 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+command 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 @table @kbd 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 @orgcmd{C-u C-c =,org-table-eval-formula} 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2582,7 +2578,7 @@ directly. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 Column formula, valid for the entire column.  This is so common that Org 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 treats these formulas in a special way, see @ref{Column formulas}. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 @item @@3= 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-Row formula, applies to all fields in the specified row.  @code{@@L=} means 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+Row formula, applies to all fields in the specified row.  @code{@@>=} means 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 the last row. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 @item @@1$2..@@4$3= 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 Range formula, applies to all fields in the given rectangular range.  This 
			 |