annotate man/ses.texi @ 63576:7c3d537469b0

(grep-regexp-alist): Use backreference at the end of first regexp to limit the match to the position between line number and source line with same separator character as used between file name and line number. In the second regexp limit mouse-face area to file name and line number by adding new group for them and referring it in HYPERLINK arg. (grep-regexp-alist, grep-mode-font-lock-keywords): Use shy group. (grep-mode): Set font-lock-lines-before to 0 to not refontify the previous line where grep markers may be already removed.
author Juri Linkov <juri@jurta.org>
date Sat, 18 Jun 2005 12:56:14 +0000
parents 3f04dc96bdc4
children df65ae1d9d1b bf0d492ea2d5
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
1 \input texinfo @c -*-texinfo-*-
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
2 @c %**start of header
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
3 @setfilename ../info/ses
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
4 @settitle SES: Simple Emacs Spreadsheet
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
5 @setchapternewpage off
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
6 @c %**end of header
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
7
47737
0a70200bde27 use @copying instead of @ifinfo.
Karl Berry <karl@gnu.org>
parents: 47668
diff changeset
8 @copying
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
9 This file documents SES: the Simple Emacs Spreadsheet.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
10
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
11 Copyright @copyright{} 2002, 2005 Free Software Foundation, Inc.
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
12
47737
0a70200bde27 use @copying instead of @ifinfo.
Karl Berry <karl@gnu.org>
parents: 47668
diff changeset
13 @quotation
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
14 Permission is granted to copy, distribute and/or modify this document
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
15 under the terms of the GNU Free Documentation License, Version 1.1 or
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
16 any later version published by the Free Software Foundation; with no
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
17 Invariant Sections, with the Front-Cover texts being ``A GNU
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
18 Manual,'' and with the Back-Cover Texts as in (a) below. A copy of the
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
19 license is included in the section entitled ``GNU Free Documentation
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
20 License'' in the Emacs manual.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
21
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
22 (a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
23 this GNU Manual, like GNU software. Copies published by the Free
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
24 Software Foundation raise funds for GNU development.''
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
25
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
26 This document is part of a collection distributed under the GNU Free
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
27 Documentation License. If you want to distribute this document
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
28 separately from the collection, you can do so by adding a copy of the
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
29 license to the document, as described in section 6 of the license.
47737
0a70200bde27 use @copying instead of @ifinfo.
Karl Berry <karl@gnu.org>
parents: 47668
diff changeset
30 @end quotation
0a70200bde27 use @copying instead of @ifinfo.
Karl Berry <karl@gnu.org>
parents: 47668
diff changeset
31 @end copying
0a70200bde27 use @copying instead of @ifinfo.
Karl Berry <karl@gnu.org>
parents: 47668
diff changeset
32
0a70200bde27 use @copying instead of @ifinfo.
Karl Berry <karl@gnu.org>
parents: 47668
diff changeset
33 @dircategory Emacs
0a70200bde27 use @copying instead of @ifinfo.
Karl Berry <karl@gnu.org>
parents: 47668
diff changeset
34 @direntry
0a70200bde27 use @copying instead of @ifinfo.
Karl Berry <karl@gnu.org>
parents: 47668
diff changeset
35 * SES: (ses). Simple Emacs Spreadsheet
0a70200bde27 use @copying instead of @ifinfo.
Karl Berry <karl@gnu.org>
parents: 47668
diff changeset
36 @end direntry
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
37
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
38 @finalout
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
39
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
40 @titlepage
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
41 @title SES
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
42 @subtitle Simple Emacs Spreadsheet
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
43 @author Jonathan A. Yavner
55365
fb268a65aee2 Change email address
Jonathan Yavner <jyavner@member.fsf.org>
parents: 54771
diff changeset
44 @author @email{jyavner@@member.fsf.org}
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
45
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
46 @page
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
47 @vskip 0pt plus 1filll
47737
0a70200bde27 use @copying instead of @ifinfo.
Karl Berry <karl@gnu.org>
parents: 47668
diff changeset
48 @insertcopying
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
49 @end titlepage
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
50
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
51 @contents
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
52
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
53 @c ===================================================================
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
54
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
55 @ifnottex
47668
bcc91f26d220 Fix Texinfo build failure by running `texinfo-all-menus-update'.
Robert J. Chassell <bob@rattlesnake.com>
parents: 47667
diff changeset
56 @node Top, Sales Pitch, (dir), (dir)
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
57 @comment node-name, next, previous, up
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
58 @top SES: Simple Emacs Spreadsheet
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
59
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
60 @display
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
61 SES is a major mode for GNU Emacs to edit spreadsheet files, which
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
62 contain a rectangular grid of cells. The cells' values are specified
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
63 by formulas that can refer to the values of other cells.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
64 @end display
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
65 @end ifnottex
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
66
52042
c195b419ef52 Updated contact address.
Jonathan Yavner <jyavner@member.fsf.org>
parents: 47737
diff changeset
67 To report bugs, send email to @email{jyavner@@member.fsf.org}.
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
68
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
69 @menu
47668
bcc91f26d220 Fix Texinfo build failure by running `texinfo-all-menus-update'.
Robert J. Chassell <bob@rattlesnake.com>
parents: 47667
diff changeset
70 * Sales Pitch:: Why use SES?
bcc91f26d220 Fix Texinfo build failure by running `texinfo-all-menus-update'.
Robert J. Chassell <bob@rattlesnake.com>
parents: 47667
diff changeset
71 * The Basics:: Basic spreadsheet commands
bcc91f26d220 Fix Texinfo build failure by running `texinfo-all-menus-update'.
Robert J. Chassell <bob@rattlesnake.com>
parents: 47667
diff changeset
72 * Advanced Features:: Want to know more?
bcc91f26d220 Fix Texinfo build failure by running `texinfo-all-menus-update'.
Robert J. Chassell <bob@rattlesnake.com>
parents: 47667
diff changeset
73 * For Gurus:: Want to know @emph{even more}?
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
74 * Index:: Concept, Function and Variable Index
47668
bcc91f26d220 Fix Texinfo build failure by running `texinfo-all-menus-update'.
Robert J. Chassell <bob@rattlesnake.com>
parents: 47667
diff changeset
75 * Acknowledgements:: Acknowledgements
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
76 @end menu
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
77
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
78 @c ===================================================================
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
79
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
80 @node Sales Pitch, The Basics, Top, Top
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
81 @comment node-name, next, previous, up
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
82 @chapter Sales Pitch
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
83 @cindex features
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
84
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
85 @itemize @bullet
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
86 @item Create and edit simple spreadsheets with a minimum of fuss.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
87 @item Full undo/redo/autosave.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
88 @item Immune to viruses in spreadsheet files.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
89 @item Cell formulas are straight Emacs Lisp.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
90 @item Printer functions for control of cell appearance.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
91 @item Intuitive keystroke commands: C-o = insert row, M-o = insert column, etc.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
92 @item ``Spillover'' of lengthy cell values into following blank cells.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
93 @item Header line shows column letters or a selected row.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
94 @item Completing-read for entering symbols as cell values.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
95 @item Cut, copy, and paste can transfer formulas and printer functions.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
96 @item Import and export of tab-separated values or tab-separated formulas.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
97 @item Plaintext, easily-hacked file format.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
98 @end itemize
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
99
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
100 @c ===================================================================
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
101
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
102 @node The Basics, Advanced Features, Sales Pitch, Top
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
103 @comment node-name, next, previous, up
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
104 @chapter The Basics
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
105 @cindex basic commands
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
106 @findex ses-jump
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
107 @findex ses-mark-row
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
108 @findex ses-mark-column
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
109 @findex ses-mark-whole-buffer
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
110 @findex set-mark-command
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
111 @findex keyboard-quit
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
112
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
113 A @dfn{cell identifier} is a symbol with a column letter and a row
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
114 number. Cell B7 is the 2nd column of the 7th row. For very wide
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
115 spreadsheets, there are two column letters: cell AB7 is the 28th
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
116 column of the 7th row.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
117
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
118 @table @kbd
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
119 @item j
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
120 Moves point to cell, specified by identifier (@code{ses-jump}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
121 @end table
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
122
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
123 Point is always at the left edge of a cell, or at the empty endline.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
124 When mark is inactive, the current cell is underlined. When mark is
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
125 active, the range is the highlighted rectangle of cells (SES always
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
126 uses transient mark mode). Drag the mouse from A1 to A3 to create the
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
127 range A1-A2. Many SES commands operate only on single cells, not
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
128 ranges.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
129
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
130 @table @kbd
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
131 @item C-SPC
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
132 @itemx C-@@
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
133 Set mark at point (@code{set-mark-command}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
134
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
135 @item C-g
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
136 Turn off the mark (@code{keyboard-quit}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
137
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
138 @item M-h
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
139 Highlight current row (@code{ses-mark-row}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
140
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
141 @item S-M-h
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
142 Highlight current column (@code{ses-mark-column}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
143
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
144 @item C-x h
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
145 Highlight all cells (@code{mark-whole-buffer}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
146 @end table
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
147
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
148 @menu
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
149 * Formulas::
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
150 * Resizing::
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
151 * Printer functions::
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
152 * Clearing cells::
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
153 * Copy/cut/paste::
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
154 * Customizing SES::
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
155 @end menu
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
156
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
157 @node Formulas, Resizing, The Basics, The Basics
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
158 @section Cell formulas
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
159 @cindex formulas
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
160 @cindex formulas, entering
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
161 @findex ses-read-cell
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
162 @findex ses-read-symbol
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
163 @findex ses-edit-cell
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
164 @findex ses-recalculate-cell
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
165 @findex ses-recalculate-all
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
166
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
167 To enter a number into the current cell, just start typing:
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
168
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
169 @table @kbd
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
170 @item 0..9
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
171 Self-insert a digit (@code{ses-read-cell}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
172
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
173 @item -
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
174 Self-insert a negative number (@code{ses-read-cell}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
175
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
176 @item .
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
177 Self-insert a fractional number (@code{ses-read-cell}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
178
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
179 @item "
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
180 Self-insert a quoted string. The ending double-quote
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
181 is inserted for you (@code{ses-read-cell}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
182
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
183 @item (
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
184 Self-insert an expression. The right-parenthesis is inserted for you
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
185 (@code{ses-read-cell}). To access another cell's value, just use its
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
186 identifier in your expression. Whenever the other cell is changed,
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
187 this cell's formula will be reevaluated. While typing in the
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
188 expression, you can use @kbd{M-TAB} to complete symbol names.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
189
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
190 @item ' @r{(apostrophe)}
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
191 Enter a symbol (ses-read-symbol). SES remembers all symbols that have
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
192 been used as formulas, so you can type just the beginning of a symbol
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
193 and use @kbd{SPC}, @kbd{TAB}, and @kbd{?} to complete it.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
194 @end table
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
195
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
196 To enter something else (e.g., a vector), begin with a digit, then
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
197 erase the digit and type whatever you want.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
198
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
199 @table @kbd
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
200 @item RET
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
201 Edit the existing formula in the current cell (@code{ses-edit-cell}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
202
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
203 @item C-c C-c
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
204 Force recalculation of the current cell or range (@code{ses-recalculate-cell}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
205
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
206 @item C-c C-l
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
207 Recalculate the entire spreadsheet (@code{ses-recalculate-all}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
208 @end table
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
209
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
210 @node Resizing, Printer functions, Formulas, The Basics
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
211 @section Resizing the spreadsheet
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
212 @cindex resizing spreadsheets
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
213 @findex ses-insert-row
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
214 @findex ses-insert-column
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
215 @findex ses-delete-row
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
216 @findex ses-delete-column
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
217 @findex ses-set-column-width
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
218 @findex ses-forward-or-insert
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
219 @findex ses-append-row-jump-first-column
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
220
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
221
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
222 Basic commands:
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
223
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
224 @table @kbd
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
225 @item C-o
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
226 (@code{ses-insert-row})
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
227
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
228 @item M-o
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
229 (@code{ses-insert-column})
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
230
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
231 @item C-k
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
232 (@code{ses-delete-row})
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
233
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
234 @item M-k
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
235 (@code{ses-delete-column})
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
236
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
237 @item w
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
238 (@code{ses-set-column-width})
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
239
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
240 @item TAB
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
241 Moves point to the next rightward cell, or inserts a new column if
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
242 already at last cell on line, or inserts a new row if at endline
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
243 (@code{ses-forward-or-insert}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
244
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
245 @item C-j
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
246 Linefeed inserts below the current row and moves to column A
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
247 (@code{ses-append-row-jump-first-column}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
248 @end table
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
249
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
250 Resizing the spreadsheet (unless you're just changing a column width)
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
251 relocates all the cell-references in formulas so they still refer to
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
252 the same cells. If a formula mentioned B1 and you insert a new first
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
253 row, the formula will now mention B2.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
254
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
255 If you delete a cell that a formula refers to, the cell-symbol is
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
256 deleted from the formula, so @code{(+ A1 B1 C1)} after deleting the third
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
257 column becomes @code{(+ A1 B1)}. In case this is not what you wanted:
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
258
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
259 @table @kbd
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
260 @item C-_
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
261 @itemx C-x u
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
262 Undo previous action (@code{(undo)}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
263 @end table
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
264
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
265
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
266 @node Printer functions, Clearing cells, Resizing, The Basics
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
267 @section Printer functions
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
268 @cindex printer functions
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
269 @findex ses-read-cell-printer
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
270 @findex ses-read-column-printer
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
271 @findex ses-read-default-printer
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
272 @findex ses-center
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
273 @findex ses-center-span
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
274 @findex ses-dashfill
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
275 @findex ses-dashfill-span
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
276 @findex ses-tildefill-span
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
277
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
278
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
279 Printer functions convert binary cell values into the print forms that
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
280 Emacs will display on the screen.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
281
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
282 A printer can be a format string, like @samp{"$%.2f"}. The result
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
283 string is right-aligned within the print cell. To get left-alignment,
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
284 use parentheses: @samp{("$%.2f")}. A printer can also be a
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
285 one-argument function (a symbol or a lambda), whose result is a string
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
286 (right-aligned) or list of one string (left-aligned). While typing in
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
287 a lambda, you can use @kbd{M-TAB} to complete the names of symbols.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
288
56279
b1ae5333057a * ses.texi, viper.texi, search.texi, flymake.texi, faq.texi:
Jesper Harder <harder@ifa.au.dk>
parents: 55365
diff changeset
289 Each cell has a printer. If @code{nil}, the column-printer for the cell's
b1ae5333057a * ses.texi, viper.texi, search.texi, flymake.texi, faq.texi:
Jesper Harder <harder@ifa.au.dk>
parents: 55365
diff changeset
290 column is used. If that is also @code{nil}, the default-printer for the
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
291 spreadsheet is used.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
292
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
293 @table @kbd
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
294 @item p
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
295 Enter a printer for current cell or range (@code{ses-read-cell-printer}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
296
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
297 @item M-p
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
298 Enter a printer for the current column (@code{ses-read-column-printer}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
299
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
300 @item C-c C-p
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
301 Enter the default printer for the spreadsheet
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
302 (@code{ses-read-default-printer}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
303 @end table
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
304
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
305 The @code{ses-read-@r{XXX}-printer} commands have their own minibuffer
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
306 history, which is preloaded with the set of all printers used in this
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
307 spreadsheet, plus the standard printers.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
308
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
309 The standard printers are suitable only for cells, not columns or
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
310 default, because they format the value using the column-printer (or
56279
b1ae5333057a * ses.texi, viper.texi, search.texi, flymake.texi, faq.texi:
Jesper Harder <harder@ifa.au.dk>
parents: 55365
diff changeset
311 default-printer if @code{nil}) and then center the result:
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
312
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
313 @table @code
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
314 @item ses-center
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
315 Just centering.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
316
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
317 @item ses-center-span
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
318 Centering with spill-over to following blank cells.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
319
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
320 @item ses-dashfill
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
321 Centering using dashes (-) instead of spaces.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
322
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
323 @item ses-dashfill-span
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
324 Centering with dashes and spill-over.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
325
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
326 @item ses-tildefill-span
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
327 Centering with tildes (~) and spill-over.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
328 @end table
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
329
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
330
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
331 @node Clearing cells, Copy/cut/paste, Printer functions, The Basics
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
332 @section Clearing cells
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
333 @cindex clearing commands
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
334 @findex ses-clear-cell-backward
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
335 @findex ses-clear-cell-forward
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
336
56279
b1ae5333057a * ses.texi, viper.texi, search.texi, flymake.texi, faq.texi:
Jesper Harder <harder@ifa.au.dk>
parents: 55365
diff changeset
337 These commands set both formula and printer to @code{nil}:
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
338
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
339 @table @kbd
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
340 @item DEL
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
341 Clear cell and move left (@code{ses-clear-cell-backward}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
342
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
343 @item C-d
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
344 Clear cell and move right (@code{ses-clear-cell-forward}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
345 @end table
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
346
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
347
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
348 @node Copy/cut/paste, Customizing SES, Clearing cells, The Basics
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
349 @section Copy, cut, and paste
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
350 @cindex copy
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
351 @cindex cut
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
352 @cindex paste
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
353 @findex kill-ring-save
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
354 @findex mouse-set-region
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
355 @findex mouse-set-secondary
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
356 @findex ses-kill-override
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
357 @findex yank
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
358 @findex clipboard-yank
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
359 @findex mouse-yank-at-click
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
360 @findex mouse-yank-at-secondary
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
361 @findex ses-yank-pop
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
362
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
363 The copy functions work on rectangular regions of cells. You can paste the
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
364 copies into non-SES buffers to export the print text.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
365
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
366 @table @kbd
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
367 @item M-w
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
368 @itemx [copy]
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
369 @itemx [C-insert]
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
370 Copy the highlighted cells to kill ring and primary clipboard
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
371 (@code{kill-ring-save}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
372
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
373 @item [drag-mouse-1]
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
374 Mark a region and copy it to kill ring and primary clipboard
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
375 (@code{mouse-set-region}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
376
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
377 @item [M-drag-mouse-1]
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
378 Mark a region and copy it to kill ring and secondary clipboard
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
379 (@code{mouse-set-secondary}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
380
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
381 @item C-w
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
382 @itemx [cut]
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
383 @itemx [S-delete]
56279
b1ae5333057a * ses.texi, viper.texi, search.texi, flymake.texi, faq.texi:
Jesper Harder <harder@ifa.au.dk>
parents: 55365
diff changeset
384 The cut functions do not actually delete rows or columns---they copy
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
385 and then clear (@code{ses-kill-override}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
386
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
387 @item C-y
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
388 @itemx [S-insert]
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
389 Paste from kill ring (@code{yank}). The paste functions behave
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
390 differently depending on the format of the text being inserted:
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
391 @itemize @bullet
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
392 @item
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
393 When pasting cells that were cut from a SES buffer, the print text is
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
394 ignored and only the attached formula and printer are inserted; cell
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
395 references in the formula are relocated unless you use @kbd{C-u}.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
396 @item
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
397 The pasted text overwrites a rectangle of cells whose top left corner
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
398 is the current cell. If part of the rectangle is beyond the edges of
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
399 the spreadsheet, you must confirm the increase in spreadsheet size.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
400 @item
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
401 Non-SES text is usually inserted as a replacement formula for the
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
402 current cell. If the formula would be a symbol, it's treated as a
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
403 string unless you use @kbd{C-u}. Pasted formulas with syntax errors
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
404 are always treated as strings.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
405 @end itemize
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
406
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
407 @item [paste]
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
408 Paste from primary clipboard or kill ring (@code{clipboard-yank}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
409
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
410 @item [mouse-2]
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
411 Set point and paste from primary clipboard (@code{mouse-yank-at-click}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
412
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
413 @item [M-mouse-2]
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
414 Set point and paste from secondary clipboard (@code{mouse-yank-secondary}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
415
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
416 @item M-y
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
417 Immediately after a paste, you can replace the text with a preceding
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
418 element from the kill ring (@code{ses-yank-pop}). Unlike the standard
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
419 Emacs yank-pop, the SES version uses @code{undo} to delete the old
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
420 yank. This doesn't make any difference?
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
421 @end table
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
422
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
423 @node Customizing SES, , Copy/cut/paste, The Basics
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
424 @section Customizing SES
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
425 @cindex customizing
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
426 @vindex enable-local-eval
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
427 @vindex ses-mode-hook
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
428 @vindex safe-functions
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
429 @vindex enable-local-eval
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
430
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
431
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
432 By default, a newly-created spreadsheet has 1 row and 1 column. The
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
433 column width is 7 and the default printer is @samp{"%.7g"}. Each of these
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
434 can be customized. Look in group ``ses''.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
435
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
436 After entering a cell value, point normally moves right to the next
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
437 cell. You can customize @code{ses-after-entry-functions} to move left or
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
438 up or down. For diagonal movement, select two functions from the
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
439 list.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
440
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
441 @code{ses-mode-hook} is a normal mode hook (list of functions to
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
442 execute when starting SES mode for a buffer).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
443
54771
Jesper Harder <harder@ifa.au.dk>
parents: 54477
diff changeset
444 The variable @code{safe-functions} is a list of possibly-unsafe
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
445 functions to be treated as safe when analysing formulas and printers.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
446 @xref{Virus protection}. Before customizing @code{safe-functions},
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
447 think about how much you trust the person who's suggesting this
54771
Jesper Harder <harder@ifa.au.dk>
parents: 54477
diff changeset
448 change. The value @code{t} turns off all anti-virus protection. A
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
449 list-of-functions value might enable a ``gee whiz'' spreadsheet, but it
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
450 also creates trapdoors in your anti-virus armor. In order for virus
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
451 protection to work, you must always press @kbd{n} when presented with
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
452 a virus warning, unless you understand what the questionable code is
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
453 trying to do. Do not listen to those who tell you to customize
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
454 @code{enable-local-eval}---this variable is for people who don't wear
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
455 safety belts!
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
456
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
457
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
458 @c ===================================================================
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
459
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
460 @node Advanced Features, For Gurus, The Basics, Top
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
461 @chapter Advanced Features
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
462 @cindex advanced features
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
463 @findex ses-read-header-row
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
464
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
465
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
466 @table @kbd
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
467 @item C-c M-C-h
53945
1961753a8c65 (Advanced Features): New functionality for
Jonathan Yavner <jyavner@member.fsf.org>
parents: 52401
diff changeset
468 (@code{ses-set-header-row}). The header line at the top of the SES
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
469 window normally shows the column letter for each column. You can set
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
470 it to show a copy of some row, such as a row of column titles, so that
53945
1961753a8c65 (Advanced Features): New functionality for
Jonathan Yavner <jyavner@member.fsf.org>
parents: 52401
diff changeset
471 row will always be visible. Default is to set the current row as the
1961753a8c65 (Advanced Features): New functionality for
Jonathan Yavner <jyavner@member.fsf.org>
parents: 52401
diff changeset
472 header; use C-u to prompt for header row. Set the header to row 0 to
1961753a8c65 (Advanced Features): New functionality for
Jonathan Yavner <jyavner@member.fsf.org>
parents: 52401
diff changeset
473 show column letters again.
1961753a8c65 (Advanced Features): New functionality for
Jonathan Yavner <jyavner@member.fsf.org>
parents: 52401
diff changeset
474 @item [header-line mouse-3]
1961753a8c65 (Advanced Features): New functionality for
Jonathan Yavner <jyavner@member.fsf.org>
parents: 52401
diff changeset
475 Pops up a menu to set the current row as the header, or revert to
1961753a8c65 (Advanced Features): New functionality for
Jonathan Yavner <jyavner@member.fsf.org>
parents: 52401
diff changeset
476 column letters.
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
477 @end table
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
478
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
479 @menu
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
480 * The print area::
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
481 * Ranges in formulas::
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
482 * Sorting by column::
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
483 * Standard formula functions::
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
484 * More on cell printing::
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
485 * Import and export::
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
486 * Virus protection::
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
487 * Spreadsheets with details and summary::
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
488 @end menu
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
489
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
490 @node The print area, Ranges in formulas, Advanced Features, Advanced Features
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
491 @section The print area
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
492 @cindex print area
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
493 @findex widen
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
494 @findex ses-renarrow-buffer
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
495 @findex ses-reprint-all
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
496
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
497 A SES file consists of a print area and a data area. Normally the
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
498 buffer is narrowed to show only the print area. The print area is
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
499 read-only except for special SES commands; it contains cell values
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
500 formatted by printer functions. The data area records the formula and
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
501 printer functions, etc.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
502
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
503 @table @kbd
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
504 @item C-x n w
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
505 Show print and data areas (@code{widen}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
506
47668
bcc91f26d220 Fix Texinfo build failure by running `texinfo-all-menus-update'.
Robert J. Chassell <bob@rattlesnake.com>
parents: 47667
diff changeset
507 @item C-c C-n
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
508 Show only print area (@code{ses-renarrow-buffer}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
509
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
510 @item S-C-l
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
511 @itemx M-C-l
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
512 Recreate print area by reevaluating printer functions for all cells
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
513 (@code{ses-reprint-all}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
514 @end table
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
515
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
516 @node Ranges in formulas, Sorting by column, The print area, Advanced Features
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
517 @section Ranges in formulas
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
518 @cindex ranges
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
519 @findex ses-insert-range-click
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
520 @findex ses-insert-range
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
521 @findex ses-insert-ses-range-click
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
522 @findex ses-insert-ses-range
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
523 @vindex from
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
524 @vindex to
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
525
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
526 A formula like
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
527 @lisp
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
528 (+ A1 A2 A3)
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
529 @end lisp
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
530 is the sum of three specific cells. If you insert a new second row,
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
531 the formula becomes
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
532 @lisp
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
533 (+ A1 A3 A4)
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
534 @end lisp
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
535 and the new row is not included in the sum.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
536
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
537 The macro @code{(ses-range @var{from} @var{to})} evalutes to a list of
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
538 the values in a rectangle of cells. If your formula is
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
539 @lisp
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
540 (apply '+ (ses-range A1 A3))
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
541 @end lisp
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
542 and you insert a new second row, it becomes
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
543 @lisp
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
544 (apply '+ (ses-range A1 A4))
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
545 @end lisp
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
546 and the new row is included in the sum.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
547
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
548 While entering or editing a formula in the minibuffer, you can select
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
549 a range in the spreadsheet (using mouse or keyboard), then paste a
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
550 representation of that range into your formula. Suppose you select
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
551 A1-C1:
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
552
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
553 @table @kbd
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
554 @item [S-mouse-3]
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
555 Inserts "A1 B1 C1" @code{(ses-insert-range-click})
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
556
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
557 @item C-c C-r
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
558 Keyboard version (@code{ses-insert-range}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
559
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
560 @item [C-S-mouse-3]
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
561 Inserts "(ses-range A1 C1)" (@code{ses-insert-ses-range-click}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
562
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
563 @item C-c C-s
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
564 Keyboard version (@code{ses-insert-ses-range}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
565 @end table
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
566
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
567 If you delete the @var{from} or @var{to} cell for a range, the nearest
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
568 still-existing cell is used instead. If you delete the entire range,
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
569 the formula relocator will delete the ses-range from the formula.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
570
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
571 If you insert a new row just beyond the end of a one-column range, or
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
572 a new column just beyond a one-row range, the new cell is included in
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
573 the range. New cells inserted just before a range are not included.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
574
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
575
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
576 @node Sorting by column, Standard formula functions, Ranges in formulas, Advanced Features
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
577 @section Sorting by column
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
578 @cindex sorting
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
579 @findex ses-sort-column
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
580 @findex ses-sort-column-click
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
581
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
582 @table @kbd
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
583 @item C-c M-C-s
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
584 Sort the cells of a range using one of the columns
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
585 (@code{ses-sort-column}). The rows (or partial rows if the range
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
586 doesn't include all columns) are rearranged so the chosen column will
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
587 be in order.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
588
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
589 @item [header-line mouse-2]
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
590 The easiest way to sort is to click mouse-2 on the chosen column's header row
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
591 (@code{ses-sort-column-click}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
592 @end table
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
593
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
594 The sort comparison uses @code{string<}, which works well for
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
595 right-justified numbers and left-justified strings.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
596
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
597 With prefix arg, sort is in descending order.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
598
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
599 Rows are moved one at a time, with relocation of formulas. This works
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
600 well if formulas refer to other cells in their row, not so well for
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
601 formulas that refer to other rows in the range or to cells outside the
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
602 range.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
603
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
604
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
605 @node Standard formula functions, More on cell printing, Sorting by column, Advanced Features
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
606 @section Standard formula functions
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
607 @cindex standard formula functions
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
608 @cindex *skip*
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
609 @cindex *error*
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
610 @findex ses-delete-blanks
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
611 @findex ses-average
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
612 @findex ses+
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
613
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
614 Oftentimes you want a calculation to exclude the blank cells. Here
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
615 are some useful functions to call from your formulas:
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
616
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
617 @table @code
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
618 @item (ses-delete-blanks &rest @var{args})
56279
b1ae5333057a * ses.texi, viper.texi, search.texi, flymake.texi, faq.texi:
Jesper Harder <harder@ifa.au.dk>
parents: 55365
diff changeset
619 Returns a list from which all blank cells (value is either @code{nil} or
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
620 '*skip*) have been deleted.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
621
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
622 @item (ses+ &rest @var{args})
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
623 Sum of non-blank arguments.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
624
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
625 @item (ses-average @var{list})
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
626 Average of non-blank elements in @var{list}. Here the list is passed
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
627 as a single argument, since you'll probably use it with @code{ses-range}.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
628 @end table
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
629
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
630 @node More on cell printing, Import and export, Standard formula functions, Advanced Features
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
631 @section More on cell printing
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
632 @cindex cell printing, more
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
633 @findex ses-truncate-cell
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
634 @findex ses-recalculate-cell
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
635
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
636 Special cell values:
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
637 @itemize
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
638 @item nil prints the same as "", but allows previous cell to spill over.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
639 @item '*skip* replaces nil when the previous cell actually does spill over;
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
640 nothing is printed for it.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
641 @item '*error* indicates that the formula signalled an error instead of
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
642 producing a value: the print cell is filled with hash marks (#).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
643 @end itemize
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
644
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
645 If the result from the printer function is too wide for the cell and
56279
b1ae5333057a * ses.texi, viper.texi, search.texi, flymake.texi, faq.texi:
Jesper Harder <harder@ifa.au.dk>
parents: 55365
diff changeset
646 the following cell is @code{nil}, the result will spill over into the
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
647 following cell. Very wide results can spill over several cells. If
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
648 the result is too wide for the available space (up to the end of the
56279
b1ae5333057a * ses.texi, viper.texi, search.texi, flymake.texi, faq.texi:
Jesper Harder <harder@ifa.au.dk>
parents: 55365
diff changeset
649 row or the next non-@code{nil} cell), the result is truncated if the cell's
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
650 value is a string, or replaced with hash marks otherwise.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
651
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
652 SES could get confused by printer results that contain newlines or
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
653 tabs, so these are replaced with question marks.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
654
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
655 @table @kbd
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
656 @item C-c C-t
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
657 Confine a cell to its own column (@code{ses-truncate-cell}). This
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
658 alows you to move point to a rightward cell that would otherwise be
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
659 covered by a spill-over. If you don't change the rightward cell, the
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
660 confined cell will spill over again the next time it is reprinted.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
661
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
662 @item C-c C-c
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
663 When applied to a single cell, this command displays in the echo area any
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
664 formula error or printer error that occurred during
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
665 recalculation/reprinting (@code{ses-recalculate-cell}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
666 @end table
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
668 When a printer function signals an error, the default printer
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
669 @samp{"%s"} is substituted. This is useful when your column printer
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
670 is numeric-only and you use a string as a cell value.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
671
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
672
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
673 @node Import and export, Virus protection, More on cell printing, Advanced Features
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
674 @section Import and export
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
675 @cindex import and export
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
676 @cindex export, and import
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
677 @findex ses-export-tsv
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
678 @findex ses-export-tsf
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
679
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
680 @table @kbd
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
681 @item x t
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
682 Export a range of cells as tab-separated values (@code{ses-export-tsv}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
683 @item x T
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
684 Export a range of cells as tab-separated formulas (@code{ses-export-tsf}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
685 @end table
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
686
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
687 The exported text goes to the kill ring --- you can paste it into
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
688 another buffer. Columns are separated by tabs, rows by newlines.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
689
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
690 To import text, use any of the yank commands where the text to paste
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
691 contains tabs and/or newlines. Imported formulas are not relocated.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
692
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
693 @node Virus protection, Spreadsheets with details and summary, Import and export, Advanced Features
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
694 @section Virus protection
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
695 @cindex virus protection
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
696
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
697 Whenever a formula or printer is read from a file or is pasted into
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
698 the spreadsheet, it receives a ``needs safety check'' marking. Later,
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
699 when the formula or printer is evaluated for the first time, it is
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
700 checked for safety using the @code{unsafep} predicate; if found to be
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
701 ``possibly unsafe'', the questionable formula or printer is displayed
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
702 and you must press Y to approve it or N to use a substitute. The
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
703 substitute always signals an error.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
704
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
705 Formulas or printers that you type in are checked immediately for
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
706 safety. If found to be possibly unsafe and you press N to disapprove,
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
707 the action is cancelled and the old formula or printer will remain.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
708
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
709 Besides viruses (which try to copy themselves to other files),
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
710 @code{unsafep} can also detect all other kinds of Trojan horses, such as
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
711 spreadsheets that delete files, send email, flood Web sites, alter
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
712 your Emacs settings, etc.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
713
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
714 Generally, spreadsheet formulas and printers are simple things that
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
715 don't need to do any fancy computing, so all potentially-dangerous
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
716 parts of the Emacs Lisp environment can be excluded without cramping
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
717 your style as a formula-writer. See the documentation in @file{unsafep.el}
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
718 for more info on how Lisp forms are classified as safe or unsafe.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
719
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
720 @node Spreadsheets with details and summary, , Virus protection, Advanced Features
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
721 @section Spreadsheets with details and summary
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
722 @cindex details and summary
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
723 @cindex summary, and details
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
724
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
725 A common organization for spreadsheets is to have a bunch of ``detail''
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
726 rows, each perhaps describing a transaction, and then a set of
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
727 ``summary'' rows that each show reduced data for some subset of the
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
728 details. SES supports this organization via the @code{ses-select}
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
729 function.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
730
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
731 @table @code
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
732 @item (ses-select @var{fromrange} @var{test} @var{torange})
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
733 Returns a subset of @var{torange}. For each member in @var{fromrange}
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
734 that is equal to @var{test}, the corresponding member of @var{torange}
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
735 is included in the result.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
736 @end table
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
737
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
738 Example of use:
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
739 @lisp
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
740 (ses-average (ses-select (ses-range A1 A5) 'Smith (ses-range B1 B5)))
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
741 @end lisp
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
742 This computes the average of the B column values for those rows whose
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
743 A column value is the symbol 'Smith.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
744
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
745 Arguably one could specify only @var{fromrange} plus
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
746 @var{to-row-offset} and @var{to-column-offset}. The @var{torange} is
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
747 stated explicitly to ensure that the formula will be recalculated if
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
748 any cell in either range is changed.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
749
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
750 File @file{etc/ses-example.el} in the Emacs distribution is an example of a
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
751 details-and-summary spreadsheet.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
752
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
753
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
754 @c ===================================================================
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
755
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
756 @node For Gurus, Index, Advanced Features, Top
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
757 @chapter For Gurus
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
758 @cindex advanced features
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
759
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
760 @menu
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
761 * Deferred updates::
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
762 * Nonrelocatable references::
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
763 * The data area::
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
764 * Buffer-local variables in spreadsheets::
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
765 * Uses of defadvice in SES::
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
766 @end menu
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
767
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
768 @node Deferred updates, Nonrelocatable references, For Gurus, For Gurus
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
769 @section Deferred updates
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
770 @cindex deferred updates
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
771 @cindex updates, deferred
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
772 @vindex run-with-idle-timer
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
773
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
774 To save time by avoiding redundant computations, cells that need
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
775 recalculation due to changes in other cells are added to a set. At
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
776 the end of the command, each cell in the set is recalculated once.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
777 This can create a new set of cells that need recalculation. The
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
778 process is repeated until either the set is empty or it stops changing
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
779 (due to circular references among the cells). In extreme cases, you
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
780 might see progress messages of the form ``Recalculating... (@var{nnn}
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
781 cells left)''. If you interrupt the calculation using @kbd{C-g}, the
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
782 spreadsheet will be left in an inconsistent state, so use @kbd{C-_} or
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
783 @kbd{C-c C-l} to fix it.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
784
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
785 To save even more time by avoiding redundant writes, cells that have
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
786 changes are added to a set instead of being written immediately to the
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
787 data area. Each cell in the set is written once, at the end of the
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
788 command. If you change vast quantities of cells, you might see a
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
789 progress message of the form ``Writing... (@var{nnn} cells left)''.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
790 These deferred cell-writes cannot be interrupted by @kbd{C-g}, so
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
791 you'll just have to wait.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
792
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
793 SES uses @code{run-with-idle-timer} to move the cell underline when
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
794 Emacs will be scrolling the buffer after the end of a command, and
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
795 also to narrow and underline after @kbd{C-x C-v}. This is visible as
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
796 a momentary glitch after C-x C-v and certain scrolling commands. You
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
797 can type ahead without worrying about the glitch.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
798
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
799
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
800 @node Nonrelocatable references, The data area, Deferred updates, For Gurus
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
801 @section Nonrelocatable references
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
802 @cindex nonrelocatable references
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
803 @cindex references, nonrelocatable
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
804
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
805 @kbd{C-y} relocates all cell-references in a pasted formula, while
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
806 @kbd{C-u C-y} relocates none of the cell-references. What about mixed
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
807 cases?
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
808
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
809 You can use
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
810 @lisp
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
811 (symbol-value 'B3)
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
812 @end lisp
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
813 to make an @dfn{absolute reference}. The formula relocator skips over
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
814 quoted things, so this will not be relocated when pasted or when
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
815 rows/columns are inserted/deleted. However, B3 will not be recorded
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
816 as a dependency of this cell, so this cell will not be updated
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
817 automatically when B3 is changed.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
818
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
819 The variables @code{row} and @code{col} are dynamically bound while a
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
820 cell formula is being evaluated. You can use
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
821 @lisp
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
822 (ses-cell-value row 0)
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
823 @end lisp
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
824 to get the value from the leftmost column in the current row. This
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
825 kind of dependency is also not recorded.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
826
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
827
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
828 @node The data area, Buffer-local variables in spreadsheets, Nonrelocatable references, For Gurus
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
829 @section The data area
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
830 @cindex data area
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
831 @findex ses-reconstruct-all
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
832
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
833 Begins with an 014 character, followed by sets of cell-definition
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
834 macros for each row, followed by column-widths, column-printers,
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
835 default-printer, and header-row. Then there's the global parameters
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
836 (file-format ID, numrows, numcols) and the local variables (specifying
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
837 SES mode for the buffer, etc.)
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
838
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
839 When a SES file is loaded, first the numrows and numcols values are
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
840 loaded, then the entire data area is @code{eval}ed, and finally the local
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
841 variables are processed.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
842
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
843 You can edit the data area, but don't insert or delete any newlines
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
844 except in the local-variables part, since SES locates things by
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
845 counting newlines. Use @kbd{C-x C-e} at the end of a line to install
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
846 your edits into the spreadsheet data structures (this does not update
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
847 the print area, use e.g. @kbd{C-c C-l} for that).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
848
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
849 The data area is maintained as an image of spreadsheet data
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
850 structures that area stored in buffer-local variables. If the data
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
851 area gets messed up, you can try reconstructing the data area from the
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
852 data structures:
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
853
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
854 @table @kbd
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
855 @item C-c M-C-l
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
856 (@code{ses-reconstruct-all}).
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
857 @end table
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
858
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
859
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
860 @node Buffer-local variables in spreadsheets, Uses of defadvice in SES, The data area, For Gurus
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
861 @section Buffer-local variables in spreadsheets
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
862 @cindex buffer-local variables
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
863 @cindex variables, buffer-local
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
864
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
865 You can add additional local variables to the list at the bottom of
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
866 the data area, such as hidden constants you want to refer to in your
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
867 formulas.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
868
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
869 You can override the variable @code{symbolic-formulas} to be a list of
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
870 symbols (as parenthesized strings) to show as completions for the '
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
871 command. This initial completions list is used instead of the actual
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
872 set of symbols-as-formulas in the spreadsheet.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
873
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
874 For examples of these, see file @file{etc/ses-example.ses}.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
875
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
876 If (for some reason) you want your formulas or printers to save data
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
877 into variables, you must declare these variables as buffer-locals in
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
878 order to avoid a virus warning.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
879
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
880 You can define functions by making them values for the fake local
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
881 variable @code{eval}. Such functions can then be used in your
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
882 formulas and printers, but usually each @code{eval} is presented to
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
883 the user during file loading as a potential virus --- this can get
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
884 annoying.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
885
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
886 You can define functions in your @file{.emacs} file. Other people can
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
887 still read the print area of your spreadsheet, but they won't be able
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
888 to recalculate or reprint anything that depends on your functions. To
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
889 avoid virus warnings, each function used in a formula needs
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
890 @lisp
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
891 (put 'your-function-name 'safe-function t)
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
892 @end lisp
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
893
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
894 @node Uses of defadvice in SES, , Buffer-local variables in spreadsheets, For Gurus
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
895 @section Uses of defadvice in SES
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
896 @cindex defadvice
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
897 @cindex undo-more
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
898 @cindex copy-region-as-kill
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
899 @cindex yank
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
900
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
901 @table @code
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
902 @item undo-more
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
903 Defines a new undo element format (@var{fun} . @var{args}), which
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
904 means ``undo by applying @var{fun} to @var{args}''. For spreadsheet
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
905 buffers, it allows undos in the data area even though that's outside
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
906 the narrowing.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
907
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
908 @item copy-region-as-kill
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
909 When copying from the print area of a spreadsheet, treat the region as
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
910 a rectangle and attach each cell's formula and printer as 'ses
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
911 properties.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
912
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
913 @item yank
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
914 When yanking into the print area of a spreadsheet, first try to yank
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
915 as cells (if the yank text has 'ses properties), then as tab-separated
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
916 formulas, then (if all else fails) as a single formula for the current
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
917 cell.
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
918 @end table
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
919
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
920 @c ===================================================================
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
921 @node Index, Acknowledgements, For Gurus, Top
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
922 @unnumbered Concept Index
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
923
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
924 @printindex cp
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
925
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
926 @heading Function Index
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
927
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
928 @printindex fn
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
929
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
930 @heading Variable Index
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
931
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
932 @printindex vr
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
933
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
934
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
935 @c ===================================================================
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
936
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
937 @node Acknowledgements, , Index, Top
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
938 @chapter Acknowledgements
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
939
53945
1961753a8c65 (Advanced Features): New functionality for
Jonathan Yavner <jyavner@member.fsf.org>
parents: 52401
diff changeset
940 Coding by:
1961753a8c65 (Advanced Features): New functionality for
Jonathan Yavner <jyavner@member.fsf.org>
parents: 52401
diff changeset
941 @quotation
1961753a8c65 (Advanced Features): New functionality for
Jonathan Yavner <jyavner@member.fsf.org>
parents: 52401
diff changeset
942 Jonathan Yavner @email{jyavner@@member.fsf.org}@*
1961753a8c65 (Advanced Features): New functionality for
Jonathan Yavner <jyavner@member.fsf.org>
parents: 52401
diff changeset
943 Stefan Monnier @email{monnier@@gnu.org}
1961753a8c65 (Advanced Features): New functionality for
Jonathan Yavner <jyavner@member.fsf.org>
parents: 52401
diff changeset
944 @end quotation
1961753a8c65 (Advanced Features): New functionality for
Jonathan Yavner <jyavner@member.fsf.org>
parents: 52401
diff changeset
945
60140
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
946 @noindent
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
947 Texinfo manual by:
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
948 @quotation
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
949 Jonathan Yavner @email{jyavner@@member.fsf.org}@*
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
950 Brad Collins <brad@@chenla.org>
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
951 @end quotation
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
952
3f04dc96bdc4 ses.texi: Add concept/function/variable indices
Jonathan Yavner <jyavner@member.fsf.org>
parents: 56279
diff changeset
953 @noindent
53945
1961753a8c65 (Advanced Features): New functionality for
Jonathan Yavner <jyavner@member.fsf.org>
parents: 52401
diff changeset
954 Ideas from:
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
955 @quotation
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
956 Christoph Conrad @email{christoph.conrad@@gmx.de}@*
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
957 CyberBob @email{cyberbob@@redneck.gacracker.org}@*
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
958 Syver Enstad @email{syver-en@@online.no}@*
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
959 Ami Fischman @email{fischman@@zion.bpnetworks.com}@*
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
960 Thomas Gehrlein @email{Thomas.Gehrlein@@t-online.de}@*
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
961 Chris F.A. Johnson @email{c.f.a.johnson@@rogers.com}@*
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
962 Yusong Li @email{lyusong@@hotmail.com}@*
54477
dcd8f8cbdae9 Small fix.
Juri Linkov <juri@jurta.org>
parents: 53945
diff changeset
963 Juri Linkov @email{juri@@jurta.org}@*
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
964 Harald Maier @email{maierh@@myself.com}@*
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
965 Alan Nash @email{anash@@san.rr.com}@*
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
966 François Pinard @email{pinard@@iro.umontreal.ca}@*
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
967 Pedro Pinto @email{ppinto@@cs.cmu.edu}@*
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
968 Stefan Reichör @email{xsteve@@riic.at}@*
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
969 Oliver Scholz @email{epameinondas@@gmx.de}@*
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
970 Richard M. Stallman @email{rms@@gnu.org}@*
53945
1961753a8c65 (Advanced Features): New functionality for
Jonathan Yavner <jyavner@member.fsf.org>
parents: 52401
diff changeset
971 Luc Teirlinck @email{teirllm@@dms.auburn.edu}@*
47667
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
972 J. Otto Tennant @email{jotto@@pobox.com}@*
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
973 Jean-Philippe Theberge @email{jphil@@acs.pagesjaunes.fr}
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
974 @end quotation
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
975
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
976 @c ===================================================================
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
977
96b260e0ff3d New major mode "SES" for spreadsheets.
Jonathan Yavner <jyavner@member.fsf.org>
parents:
diff changeset
978 @bye
52401
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 52042
diff changeset
979
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 52042
diff changeset
980 @ignore
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 52042
diff changeset
981 arch-tag: 10a4ee1c-7ef4-4c06-8b7a-f975e39f0dec
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 52042
diff changeset
982 @end ignore