stuff that was painful for me to figure out

some things I couldn't easily find

dealing with floating point precision/error
RedHat Linux 4 KDE windows freeze; can't move or resize windows
Excel, Visual Basic, how to access the cell from which a user-defined function (UDF) is called
setting up aspell for ispell for xemacs on windows xp (win32)
when using bison, "error: 'YYLTYPE' does not name a type"
how to embed unformatted text or code in a web page with HTML
somewhat esoteric emacs/xemacs commands I found useful

dealing with floating point precision/error

cross-platform C/C++ code for comparing floats

RedHat Linux 4 KDE windows freeze; can't move or resize windows

at a terminal command line, enter, "kwin --replace" -- you may need to do this twice

Excel, Visual Basic, how to access the cell from which a user-defined function (UDF) is called

in your function, reference "Application.Caller" or "Application.Caller.Address"

setting up aspell for ispell for xemacs on windows xp (win32)

when using bison, "error: 'YYLTYPE' does not name a type"

Try adding a call to a function somewhere in the parse code with references to the file name and line number:

    myParseElement : myOtherParseElement
    {
      if ( isBad( $1 ) ) {
        parseError(myparser_filename, @1.first_line,
                   "%s is bad.", $1);
      }
    };

how to embed unformatted text or code in a web page with HTML

Use the <pre></pre> tags.
I use it below for the xemacs commands.

somewhat esoteric emacs/xemacs commands I found useful

   M-x make-frame-on-display

I copied my favorite pieces from a more complete list I found here.

Text Registers
C-x r s     M-x copy-to-register     Prompts for register letter. Saves text between point and mark in
                                     the register.
C-x r i     M-x insert-register      Prompts for register letter. Inserts the text saved in that register
                                     at point.

Position Registers
C-x r SPC   M-x point-to-register    Prompts for register letter. Saves point in register.
C-x r j     M-x jump-to-register     Prompts for register letter. Jumpts to point saved in that register.

Bookmarks
C-x r m     M-x bookmark-set         Prompts for bookmark name (default is buffer name). Saves point in a
                                     bookmark. This information is saved even if you close *Emacs*.
C-x r b     M-x bookmark-jump        Prompts for bookmark name. Jumpts to point saved in that bookmark
                                     (Even if you had closed your *emacs* session).
C-x r l     M-x bookmark-bmenu-list  Lists all saved bookmarks. Typing "j" when on a bookmark jumps to the
                                     file. Dired commands are used to delete bookmarks (Type "d" when on
                                     file - then "x" to delete bookmark).

Rectangles - (Priceless)
C-x r o     M-x open-rectangle       Opens rectangle of whitespace between point and mark.
C-x r t     M-x string-rectangle     Replaces text between point and mark with rectangle of text (prompts
                                     for text). This is a major timesaver. Typing
                                     C-x r t "Other Text" RET
                                     would replace
                                     <mark>Some Text                     <mark>Other Text
                                           Some Text              With         Other Text
                                           Some Text<point>                    Other Text<point>

*Search* and Replace
M-%         M-x query-replace         Requests two patterns. Searches for first pattern and replaces with
                                      second pattern. Prompts at each match. (y for "yes replace", n for
                                      "no next", and ! for "replace all").
C-u *C-s*   M-x isearch-forward-regex *Search* using a regular expression (as you type it).
M-C-%       M-x query-replace-regexp  Query replaces using a regular expression as the match.


M-t         M-x transpose-words       Swaps current and next word with one another.


C-x k       M-x kill-buffer           Kills the current buffer. If the buffer is modified you are prompted
                                      to save it.


M-BACKSPC   M-x backward-kill-word    Kills the word before the cursor location. Places on the kill ring.


M-z         M-x zap-to-char           Deletes the text from the point up to the first instance of the
                                      specifed character


Bradley Clement
Last modified: Wed Jun 29 16:22:00 PDT 2011