Software Documentation

Software Documentation

ScriptingDocumentation

Integration Intermediate Last updated: October 10, 2023

1 Copy/paste and the fill handle

Most of the table editing features in Finale 3D are modelled after Excel.  Copy/paste and the “fill handle” are no exception.  Copy/paste applies to cells, or rectangular selections of cells, or rows, or selection sets of rows.  The “fill handle” is the small black dot in the lower right corner of a selected cell that provides a user interface to “fill down” with a cell value or a continuing pattern.

 

Selecting cells and rows

Clicking on an unselected cell may select the entire row, or just the cell, depending on the user settings:

  • File > User settings > Set click action for effects window
  • File > User settings > Set click action for other windows

By default, the click action for the effects window selects an entire row; whereas the click action for other windows selects only the clicked-on cell.  If the click action selects a cell, you can always select a row instead by clicking on the row number in the left-most column.  If the click action selects a row, you can always select and focus a cell by double-clicking on the cell.

When a cell or row is selected, the arrow keys on the keyboard will move the selection.  Hold shift and press the arrow keys to extend the selection, growing it from a single cell or row to a rectangle of cells or a range of rows.  Whereas cell selection sets are restricted to a rectangular grid of cells, row selection sets can include any subset of rows, not just a contiguous range of rows.  To select multiple rows by clicking, hold the control key and click on a row to toggle it selected or unselected.  To select a rectangular range of cells or a contiguous range of rows by clicking, select the first cell or row, and then click on another cell or row while holding the shift key to select the range between them.

 

The copy buffer

Control-C and control-V are the usual hot keys for copy/paste in the tables.  Equivalently, you can right click a row or cell and choose “Copy” or “Paste” from the context menu.  The contents of a copy operation are stored in the system clipboard, as text, making it possible to copy/paste between applications and making it possible to examine the contents of the copy buffer simply by pasting it into Notepad or any text editor.

Copied cells are represented in the copy buffer straight forwardly as the editable cell text with tab and newline delimiters separating the cells.  In some cases, the editable cell text may be different from the unfocused cell text shown in the table, which may have fewer digits after the decimal point, for example, to make the table more readable.  The editable cell text always has the maximal resolution.

Copied rows are also represented in the copy buffer, but in a more complex manner that depends on which table the rows are copied from.  To facilitate copy/paste between shows, or between applications, the copy buffer for rows contains the rows’ explicit data and any rows from other tables that the copied rows depends on.  For example, copying a row in the script representing an event must include the row from the effects window defining the effect used in the event and the row from the positions window defining the position at which the event is located.  The representation of all this information in the copy buffer is human readable text, but it is not as straight forward as copied cells.  The details of the copy buffer are described in Copy/paste.

 

Copy/pasting over cells or rows

If you want to fill an entire column with the value from one cell, select the cell, then copy it with control-C or using the right-click context menu, then right-click the column header and choose “Select this column”, then paste with control-V or using the right-click context menu.  The copied value is pasted over all the selected cells.

You can also paste a single cell value over any rectangular range of selected cells in a similar manner.

Pasting rows is different.  Unlike cells, pasting rows adds the copied rows without removing any rows that are selected at the time of pasting.  Depending on the type of table, the pasted rows may be modified as appropriate.  For example, pasted events are pasted at the time of the playhead (modifying the times of the rows from the copy buffer).  Pasted positions or effects are another example.  Since the positions and effects tables require that every row has a unique name or part number, the pasted rows will have their names or part numbers modified to make them unique.

 

The fill handle

The fill handle is the dot in the lower right corner of a selected cell, or of the bottom selected cell if a vertical column of cells is selected.  If you click on the fill handle and drag down, you will fill the dragged-over cells with the value from the selected cell or with values continuing a pattern defined by the selected cells, such an increasing sequence of numbers .

 

Table 1 – What the fill handle does, depending on the selected cells

Contents of selected cells Number of cells selected Modifiers keys held Cells filled with Example
Integers 1 Incrementing by 1 1 –> 1, 2, 3, 4…
Integers 1 Control Same numbers 1 –> 1, 1, 1, 1…
Integers 2 Incrementing numbers by delta 1, 3 –> 1, 3, 5, 7…
Integers 2 Control Repeating pattern 1, 3 –> 1, 3, 1, 3…
Integers 3 or more Control or none Repeating pattern 1, 3, 10 –> 1, 3, 10, 1, 3, 10…
Strings ending in integers 1 Incrementing numbers Pos-01 –> Pos-01, Pos-02, Pos-03, …
Strings ending in integers 1 Control Same string Pos-01 –> Pos-01, Pos-01, Pos-01, …
Strings ending in integers 2 Incrementing numbers by delta Pos-01, Pos-03 –> Pos-01, Pos-03, Pos-05, …
Strings ending in integers 2 Control Repeating pattern Pos-01, Pos-03 –> Pos-01, Pos-03, Pos-01, …
Strings ending in integers 3 or more Control or none Repeating pattern Pos-01, Pos-03, Pos-10 –> Pos-01, Pos-03, Pos-10, Pos-01, …
Time 2 Times incrementing by delta 00:05.10, 00:05.20 –> 00:05.10, 00:05.20, 00:05.30, …
Time 2 Control Repeating pattern 00:05.10, 00:05.20 –> 00:05.10, 00:05.20, 00:05.10, …
Floating point number 2 Incrementing by delta 2.5, 3.1 –> 2.5, 3.1, 3.7, …
Floating point number 2 Control Repeating pattern 2.5, 3.1 –> 2.5, 3.1, 2.5, …
Coordinates or angles with three components 2 Incrementing by delta for each component (0, 30, 30), (0, 40, 30) –> (0, 30, 30), (0, 40, 30), (0, 50, 30), …
Coordinates or angles with three components 2 Control or none Repeating pattern (0, 30, 30), (0, 40, 30) –> (0, 30, 30), (0, 40, 30), (0, 50, 30), …
Anything else Anything else Control or none Repeating pattern Apple, Banana –> Apple, Banana, Apple, Banana, …

 

Loosely speaking, if you select one cell containing an integer or string ending in an integer and drag down its fill handle, you’ll get a sequence of incrementing numbers.  If you hold control while dragging, you’ll fill with a copy of the original cell.

If you select two cells containing some form of numerical delta or string ending in an integer and drag down the fill handle, you’ll get a stepping sequence defined by the delta between the initial two selected cells.  If you hold control while dragging, you’ll fill with a copy of the original cell.

In all other circumstances, you’ll get a repeating pattern defined by the initially selected cell or cells.