emacs.rst
author Oleksandr Gavenko <gavenkoa@gmail.com>
Sun, 01 Aug 2010 19:34:14 +0300
changeset 478 d602ea06bb76
parent 477 88bb97fd33c5
child 499 ab94e51efbc6
permissions -rw-r--r--
Emacs games.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
179
e225b746945d Correct encoding.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 177
diff changeset
     1
-*- mode: outline; coding: utf-8 -*-
18
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     2
219
a6a5839b7423 Set variables in emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 182
diff changeset
     3
* Variables.
a6a5839b7423 Set variables in emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 182
diff changeset
     4
a6a5839b7423 Set variables in emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 182
diff changeset
     5
Select one of:
a6a5839b7423 Set variables in emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 182
diff changeset
     6
a6a5839b7423 Set variables in emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 182
diff changeset
     7
  (set 'variable value)
a6a5839b7423 Set variables in emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 182
diff changeset
     8
  (setq variable value)
a6a5839b7423 Set variables in emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 182
diff changeset
     9
  (defvar variable value "documentation")
a6a5839b7423 Set variables in emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 182
diff changeset
    10
268
b99a51c4e605 Emacs treat text as local variable definition, escape text.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 225
diff changeset
    11
or (replace <colon> with :)
219
a6a5839b7423 Set variables in emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 182
diff changeset
    12
268
b99a51c4e605 Emacs treat text as local variable definition, escape text.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 225
diff changeset
    13
  # Local variables<colon>
b99a51c4e605 Emacs treat text as local variable definition, escape text.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 225
diff changeset
    14
  # variable<colon> value
b99a51c4e605 Emacs treat text as local variable definition, escape text.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 225
diff changeset
    15
  # End<colon>
219
a6a5839b7423 Set variables in emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 182
diff changeset
    16
171
8e806cddee36 Debugging emacs (about edebug).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    17
* Debugging.
8e806cddee36 Debugging emacs (about edebug).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    18
382
1f499471d603 What functions and variables Emacs load and from which files?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 296
diff changeset
    19
** What functions and variables Emacs load and from which files?
1f499471d603 What functions and variables Emacs load and from which files?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 296
diff changeset
    20
1f499471d603 What functions and variables Emacs load and from which files?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 296
diff changeset
    21
See value of variable 'load-history' (by C-h v load-history RET).
1f499471d603 What functions and variables Emacs load and from which files?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 296
diff changeset
    22
171
8e806cddee36 Debugging emacs (about edebug).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    23
** Using edebug.
8e806cddee36 Debugging emacs (about edebug).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    24
177
02b79b857ee1 Use plain ascii chars instead of UTF-8.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 171
diff changeset
    25
Execute 'M-x edebug-defun' (also on 'C-u C-M-x') on defun in source code to
171
8e806cddee36 Debugging emacs (about edebug).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    26
enable debugging for desired function. When next time this function invoked
213
af6fdb4adbf3 Correct spell.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 212
diff changeset
    27
you entered to its debugging (jumped to its source code).
171
8e806cddee36 Debugging emacs (about edebug).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    28
8e806cddee36 Debugging emacs (about edebug).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    29
To start debug execute code which used debugged function.
18
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    30
171
8e806cddee36 Debugging emacs (about edebug).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    31
You can disable edebug on a function by evaluating the function again using
177
02b79b857ee1 Use plain ascii chars instead of UTF-8.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 171
diff changeset
    32
'C-M-x'.
171
8e806cddee36 Debugging emacs (about edebug).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    33
8e806cddee36 Debugging emacs (about edebug).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    34
** How debug func?
8e806cddee36 Debugging emacs (about edebug).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    35
8e806cddee36 Debugging emacs (about edebug).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    36
Use M-x debug-on-entry and M-x cancel-debug-on-entry to control
8e806cddee36 Debugging emacs (about edebug).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    37
which functions will enter the debugger when called.
8e806cddee36 Debugging emacs (about edebug).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    38
8e806cddee36 Debugging emacs (about edebug).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    39
When next time that function called automatically loaded debug-mode.
8e806cddee36 Debugging emacs (about edebug).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    40
8e806cddee36 Debugging emacs (about edebug).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    41
** How debug ini file?
18
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    42
213
af6fdb4adbf3 Correct spell.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 212
diff changeset
    43
When your ini has a bug, or when you load external files that cause
18
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    44
errors, the bug is often hard to find, because the Emacs Lisp reader does not
179
e225b746945d Correct encoding.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 177
diff changeset
    45
know about line numbers and files - it just knows an error happened, and
e225b746945d Correct encoding.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 177
diff changeset
    46
that's it.
18
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    47
415
3ae537fcc132 Check if bug in ini file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 382
diff changeset
    48
*** Check if bug in ini file.
3ae537fcc132 Check if bug in ini file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 382
diff changeset
    49
3ae537fcc132 Check if bug in ini file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 382
diff changeset
    50
First run Emacs without loading anything:
3ae537fcc132 Check if bug in ini file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 382
diff changeset
    51
3ae537fcc132 Check if bug in ini file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 382
diff changeset
    52
  $ emacs --no-init-file --no-site-file
3ae537fcc132 Check if bug in ini file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 382
diff changeset
    53
3ae537fcc132 Check if bug in ini file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 382
diff changeset
    54
If bug not reproduced bug lies in ini files!
3ae537fcc132 Check if bug in ini file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 382
diff changeset
    55
171
8e806cddee36 Debugging emacs (about edebug).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    56
*** Binary Search.
18
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    57
86
72175e4fc069 Reformat and add CLI switches.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 44
diff changeset
    58
Select half of the file in a region, and M-x eval-region. Depending on whether
72175e4fc069 Reformat and add CLI switches.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 44
diff changeset
    59
that causes the error or not, split this half or the other half again, and
72175e4fc069 Reformat and add CLI switches.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 44
diff changeset
    60
repeat.
72175e4fc069 Reformat and add CLI switches.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 44
diff changeset
    61
171
8e806cddee36 Debugging emacs (about edebug).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    62
*** Elisp.
18
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    63
86
72175e4fc069 Reformat and add CLI switches.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 44
diff changeset
    64
 - Use a keyboard macro that moves forward one expression (sexp) and evaluates
72175e4fc069 Reformat and add CLI switches.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 44
diff changeset
    65
   it.
72175e4fc069 Reformat and add CLI switches.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 44
diff changeset
    66
 - Try C-x check-parens.
72175e4fc069 Reformat and add CLI switches.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 44
diff changeset
    67
 - Set (setq debug-on-error t).
72175e4fc069 Reformat and add CLI switches.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 44
diff changeset
    68
171
8e806cddee36 Debugging emacs (about edebug).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    69
*** CLI.
18
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    70
86
72175e4fc069 Reformat and add CLI switches.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 44
diff changeset
    71
  $ emacs --no-init-file --no-site-file --debug-init
72175e4fc069 Reformat and add CLI switches.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 44
diff changeset
    72
171
8e806cddee36 Debugging emacs (about edebug).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    73
*** Simplified Binary Search.
19
2230f25e0375 add about edebug.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 18
diff changeset
    74
177
02b79b857ee1 Use plain ascii chars instead of UTF-8.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 171
diff changeset
    75
Add (error 'No error until here') in the middle of your file. If you get the
02b79b857ee1 Use plain ascii chars instead of UTF-8.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 171
diff changeset
    76
error 'No error until here' when reloading the file, move the expression
86
72175e4fc069 Reformat and add CLI switches.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 44
diff changeset
    77
towards the back of the file, otherwise towards the front of the file.
181
4202927c15ac Text based WWW browser for emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    78
223
1f1a18891bc2 Call tree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 213
diff changeset
    79
** Call tree.
1f1a18891bc2 Call tree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 213
diff changeset
    80
1f1a18891bc2 Call tree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 213
diff changeset
    81
Before byte compiling file execute
1f1a18891bc2 Call tree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 213
diff changeset
    82
1f1a18891bc2 Call tree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 213
diff changeset
    83
  (setq byte-compile-generate-call-tree t)
1f1a18891bc2 Call tree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 213
diff changeset
    84
181
4202927c15ac Text based WWW browser for emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    85
* WWW.
4202927c15ac Text based WWW browser for emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    86
4202927c15ac Text based WWW browser for emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    87
** Text based WWW browser.
4202927c15ac Text based WWW browser for emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    88
4202927c15ac Text based WWW browser for emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    89
  http://en.wikipedia.org/wiki/W3m
4202927c15ac Text based WWW browser for emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    90
  http://emacs-w3m.namazu.org/
4202927c15ac Text based WWW browser for emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 86
diff changeset
    91
  http://www.gnu.org/software/w3/
212
5715a5193fd4 Sort and uniquify lines.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 182
diff changeset
    92
5715a5193fd4 Sort and uniquify lines.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 182
diff changeset
    93
* Tricks.
5715a5193fd4 Sort and uniquify lines.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 182
diff changeset
    94
5715a5193fd4 Sort and uniquify lines.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 182
diff changeset
    95
** Sort and uniquify lines.
5715a5193fd4 Sort and uniquify lines.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 182
diff changeset
    96
5715a5193fd4 Sort and uniquify lines.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 182
diff changeset
    97
Select region, type C-u M-| sort -u RET.
5715a5193fd4 Sort and uniquify lines.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 182
diff changeset
    98
5715a5193fd4 Sort and uniquify lines.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 182
diff changeset
    99
With transient-mark-mode and delete-selection-mode enabled: select region,
5715a5193fd4 Sort and uniquify lines.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 182
diff changeset
   100
type M-| sort -u RET to replace selection with sorted and uniquified lines.
5715a5193fd4 Sort and uniquify lines.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 182
diff changeset
   101
472
cfe17c4a293b Emacs paths.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 454
diff changeset
   102
** Determining running environment.
cfe17c4a293b Emacs paths.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 454
diff changeset
   103
cfe17c4a293b Emacs paths.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 454
diff changeset
   104
Check such variable:
cfe17c4a293b Emacs paths.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 454
diff changeset
   105
477
88bb97fd33c5 Determining running environment.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 472
diff changeset
   106
  emacs-major-version
88bb97fd33c5 Determining running environment.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 472
diff changeset
   107
  emacs-minor-version
472
cfe17c4a293b Emacs paths.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 454
diff changeset
   108
  window-system - 'nil' if in terminal, 'w32' if native Windows build, 'x' if under X Window.
cfe17c4a293b Emacs paths.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 454
diff changeset
   109
  window-system-version
477
88bb97fd33c5 Determining running environment.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 472
diff changeset
   110
  operating-system-release
88bb97fd33c5 Determining running environment.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 472
diff changeset
   111
  system-configuration - like configuration triplet: cpu-manufacturer-os
88bb97fd33c5 Determining running environment.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 472
diff changeset
   112
  system-name
88bb97fd33c5 Determining running environment.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 472
diff changeset
   113
  system-time-locale
88bb97fd33c5 Determining running environment.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 472
diff changeset
   114
  system-type
88bb97fd33c5 Determining running environment.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 472
diff changeset
   115
  system-uses-terminfo
88bb97fd33c5 Determining running environment.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 472
diff changeset
   116
  window-size-fixed
472
cfe17c4a293b Emacs paths.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 454
diff changeset
   117
cfe17c4a293b Emacs paths.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 454
diff changeset
   118
Run such checks:
cfe17c4a293b Emacs paths.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 454
diff changeset
   119
cfe17c4a293b Emacs paths.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 454
diff changeset
   120
  (when window-system ...)
cfe17c4a293b Emacs paths.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 454
diff changeset
   121
  (when (eq window-system 'x) ...)
cfe17c4a293b Emacs paths.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 454
diff changeset
   122
  (when (>= emacs-major-version 22) ...)
cfe17c4a293b Emacs paths.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 454
diff changeset
   123
  (when (fboundp '...) ...)
cfe17c4a293b Emacs paths.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 454
diff changeset
   124
  (when (featurep '...) ...)
cfe17c4a293b Emacs paths.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 454
diff changeset
   125
269
77c8799aa8de Finding emacs packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 268
diff changeset
   126
* Finding emacs packages.
77c8799aa8de Finding emacs packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 268
diff changeset
   127
77c8799aa8de Finding emacs packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 268
diff changeset
   128
See
77c8799aa8de Finding emacs packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 268
diff changeset
   129
77c8799aa8de Finding emacs packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 268
diff changeset
   130
  http://anc.ed.ac.uk/~stephen/emacs/ell.html
77c8799aa8de Finding emacs packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 268
diff changeset
   131
  http://www.emacswiki.org/emacs/WikifiedEmacsLispList
296
a1447ce5751b About ELPA.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 283
diff changeset
   132
  http://tromey.com/elpa/index.html
a1447ce5751b About ELPA.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 283
diff changeset
   133
                Emacs Lisp Package Archive
a1447ce5751b About ELPA.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 283
diff changeset
   134
a1447ce5751b About ELPA.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 283
diff changeset
   135
** ELPA.
a1447ce5751b About ELPA.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 283
diff changeset
   136
a1447ce5751b About ELPA.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 283
diff changeset
   137
ELPA goal is to make it simple to install, use, and upgrade Emacs Lisp
a1447ce5751b About ELPA.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 283
diff changeset
   138
packages.
a1447ce5751b About ELPA.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 283
diff changeset
   139
a1447ce5751b About ELPA.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 283
diff changeset
   140
  http://tromey.com/elpa/upload.html
a1447ce5751b About ELPA.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 283
diff changeset
   141
                how to contribute
270
f11742a1e175 Compiling emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 269
diff changeset
   142
f11742a1e175 Compiling emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 269
diff changeset
   143
* Compiling emacs.
f11742a1e175 Compiling emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 269
diff changeset
   144
f11742a1e175 Compiling emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 269
diff changeset
   145
** Windows.
f11742a1e175 Compiling emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 269
diff changeset
   146
f11742a1e175 Compiling emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 269
diff changeset
   147
Get MSYS for POSIX shell and utilities . Get MinGW for GCC. Get Gnuwin32 for
f11742a1e175 Compiling emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 269
diff changeset
   148
jpeg, ungif, tiff, xpm, png, zlib libraries.
f11742a1e175 Compiling emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 269
diff changeset
   149
f11742a1e175 Compiling emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 269
diff changeset
   150
Read emacs/nt/INSTALL.
f11742a1e175 Compiling emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 269
diff changeset
   151
f11742a1e175 Compiling emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 269
diff changeset
   152
  $ cmd
f11742a1e175 Compiling emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 269
diff changeset
   153
  $ cd emacs\nt
275
3b1d21da03e3 Correct configure.bat options.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 270
diff changeset
   154
  $ configure.bat --prefix %INST_ROOT% --with-gcc --cflags -I%GNUWIN32_ROOT%/include --ldflags -L%GNUWIN32_ROOT%/lib  --ldflags -lregex
270
f11742a1e175 Compiling emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 269
diff changeset
   155
  $ make bootstrap
f11742a1e175 Compiling emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 269
diff changeset
   156
  $ make info
f11742a1e175 Compiling emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 269
diff changeset
   157
  $ make install
280
4739b9c54c18 About CheckDoc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 275
diff changeset
   158
4739b9c54c18 About CheckDoc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 275
diff changeset
   159
* Documentation.
4739b9c54c18 About CheckDoc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 275
diff changeset
   160
4739b9c54c18 About CheckDoc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 275
diff changeset
   161
** Elisp documentation.
4739b9c54c18 About CheckDoc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 275
diff changeset
   162
283
74036be9b6f9 Elisp documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 280
diff changeset
   163
  ;;; <file-name>.el --- <one-line-description>
74036be9b6f9 Elisp documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 280
diff changeset
   164
74036be9b6f9 Elisp documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 280
diff changeset
   165
  ;; Copyright (C) <years> <person>
74036be9b6f9 Elisp documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 280
diff changeset
   166
74036be9b6f9 Elisp documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 280
diff changeset
   167
  ;; Author: <person> <mail>
74036be9b6f9 Elisp documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 280
diff changeset
   168
  ;; Maintainer: <person> <mail>
74036be9b6f9 Elisp documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 280
diff changeset
   169
  ;; Created: <date>
74036be9b6f9 Elisp documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 280
diff changeset
   170
  ;; Version: <version>
74036be9b6f9 Elisp documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 280
diff changeset
   171
  ;; Keywords: <look for 'finder-by-keyword' output, separate by comma>
74036be9b6f9 Elisp documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 280
diff changeset
   172
  ;; URL: <file-location>
74036be9b6f9 Elisp documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 280
diff changeset
   173
74036be9b6f9 Elisp documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 280
diff changeset
   174
  ;;; Commentary:
74036be9b6f9 Elisp documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 280
diff changeset
   175
  <bla-bla-bla>
74036be9b6f9 Elisp documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 280
diff changeset
   176
  ;;; Code:
74036be9b6f9 Elisp documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 280
diff changeset
   177
  <lisp-code>
74036be9b6f9 Elisp documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 280
diff changeset
   178
  ;;; <file-name> ends here
74036be9b6f9 Elisp documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 280
diff changeset
   179
74036be9b6f9 Elisp documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 280
diff changeset
   180
See
74036be9b6f9 Elisp documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 280
diff changeset
   181
74036be9b6f9 Elisp documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 280
diff changeset
   182
  http://www.gnu.org/software/emacs/elisp-manual/html_node/Library-Headers.html
280
4739b9c54c18 About CheckDoc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 275
diff changeset
   183
  http://www.emacswiki.org/cgi-bin/wiki/ElispAreaConventions
4739b9c54c18 About CheckDoc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 275
diff changeset
   184
4739b9c54c18 About CheckDoc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 275
diff changeset
   185
*** CheckDoc.
4739b9c54c18 About CheckDoc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 275
diff changeset
   186
4739b9c54c18 About CheckDoc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 275
diff changeset
   187
CheckDoc checks your EmacsLisp code for errors in documentation and style.
4739b9c54c18 About CheckDoc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 275
diff changeset
   188
4739b9c54c18 About CheckDoc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 275
diff changeset
   189
  http://cedet.sourceforge.net/checkdoc.shtml
4739b9c54c18 About CheckDoc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 275
diff changeset
   190
                home page before including it into GNU Emacs
4739b9c54c18 About CheckDoc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 275
diff changeset
   191
  http://www.emacswiki.org/emacs/CheckDoc
454
56dce8c7f298 Installing Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 415
diff changeset
   192
56dce8c7f298 Installing Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 415
diff changeset
   193
* Installing Emacs.
56dce8c7f298 Installing Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 415
diff changeset
   194
56dce8c7f298 Installing Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 415
diff changeset
   195
** From sources.
56dce8c7f298 Installing Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 415
diff changeset
   196
56dce8c7f298 Installing Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 415
diff changeset
   197
  http://ftp.gnu.org/pub/gnu/emacs
56dce8c7f298 Installing Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 415
diff changeset
   198
56dce8c7f298 Installing Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 415
diff changeset
   199
** Windows.
56dce8c7f298 Installing Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 415
diff changeset
   200
56dce8c7f298 Installing Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 415
diff changeset
   201
  http://ftp.gnu.org/pub/gnu/emacs/windows
56dce8c7f298 Installing Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 415
diff changeset
   202
  http://alpha.gnu.org/gnu/emacs/windows
56dce8c7f298 Installing Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 415
diff changeset
   203
                beta releases for windows
56dce8c7f298 Installing Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 415
diff changeset
   204
56dce8c7f298 Installing Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 415
diff changeset
   205
** Debian.
56dce8c7f298 Installing Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 415
diff changeset
   206
56dce8c7f298 Installing Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 415
diff changeset
   207
  $ apt-get install emacs
472
cfe17c4a293b Emacs paths.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 454
diff changeset
   208
cfe17c4a293b Emacs paths.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 454
diff changeset
   209
* Emacs paths.
cfe17c4a293b Emacs paths.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 454
diff changeset
   210
cfe17c4a293b Emacs paths.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 454
diff changeset
   211
  source-directory data-directory doc-directory exec-directory invocation-directory trash-directory
cfe17c4a293b Emacs paths.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 454
diff changeset
   212
  tutorial-directory user-emacs-directory widget-image-directory
478
d602ea06bb76 Emacs games.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 477
diff changeset
   213
d602ea06bb76 Emacs games.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 477
diff changeset
   214
* Emacs games.
d602ea06bb76 Emacs games.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 477
diff changeset
   215
d602ea06bb76 Emacs games.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 477
diff changeset
   216
  hanoi hanoi-unix life pong tetris gomoku
d602ea06bb76 Emacs games.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 477
diff changeset
   217