emacs.rst
author Oleksandr Gavenko <gavenkoa@gmail.com>
Mon, 22 Feb 2016 12:46:36 +0200
changeset 1905 fba288d59662
parent 1654 f361c89e693f
child 1912 8b81a8f0f692
permissions -rw-r--r--
Include only local subsections into TOC. This prevent duplication of TOC when build single page HTML document. Also this make unnecessary CSS hack to hide document title as top level section.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     1
.. -*- coding: utf-8; -*-
1334
9bf0d5a1f0cf Include common header with quick links.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1274
diff changeset
     2
.. include:: HEADER.rst
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     3
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     4
========
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     5
 Emacs.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     6
========
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     7
.. contents::
1905
fba288d59662 Include only local subsections into TOC. This prevent duplication of
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1654
diff changeset
     8
   :local:
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     9
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    10
About.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    11
======
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    12
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    13
  http://elpa.gnu.org/
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    14
                Packages for Emacs. This requires Emacs version 24.1 or
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    15
                higher.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    16
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    17
Getting help.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    18
=============
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    19
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    20
 * http://news.gmane.org/gmane.emacs.help
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    21
 * http://news.gmane.org/gmane.emacs.announce
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    22
 * http://news.gmane.org/gmane.emacs.auctex.announce
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    23
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    24
Installing Emacs.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    25
=================
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    26
1265
f98228108bb6 Official alpha build of GNU Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1189
diff changeset
    27
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    28
  http://ftp.gnu.org/gnu/emacs/windows/
1265
f98228108bb6 Official alpha build of GNU Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1189
diff changeset
    29
                Clean GNU Emacs for 32-bit Windows.
f98228108bb6 Official alpha build of GNU Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1189
diff changeset
    30
  http://alpha.gnu.org/gnu/emacs/windows/
f98228108bb6 Official alpha build of GNU Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1189
diff changeset
    31
                Official alpha build of GNU Emacs.
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    32
  http://emacsformacosx.com/
1265
f98228108bb6 Official alpha build of GNU Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1189
diff changeset
    33
                Clean GNU Emacs for Mac OS X.
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    34
1652
a653ec78b1b8 Find variable/function/feature by name or value.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1477
diff changeset
    35
Development.
a653ec78b1b8 Find variable/function/feature by name or value.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1477
diff changeset
    36
============
a653ec78b1b8 Find variable/function/feature by name or value.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1477
diff changeset
    37
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    38
Variables.
1652
a653ec78b1b8 Find variable/function/feature by name or value.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1477
diff changeset
    39
----------
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    40
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    41
Select one of::
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    42
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    43
  (set 'variable value)
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    44
  (setq variable value)
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    45
  (defvar variable value "documentation")
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    46
1652
a653ec78b1b8 Find variable/function/feature by name or value.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1477
diff changeset
    47
or file local::
a653ec78b1b8 Find variable/function/feature by name or value.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1477
diff changeset
    48
a653ec78b1b8 Find variable/function/feature by name or value.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1477
diff changeset
    49
  # Local variables:
a653ec78b1b8 Find variable/function/feature by name or value.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1477
diff changeset
    50
  # variable: value
a653ec78b1b8 Find variable/function/feature by name or value.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1477
diff changeset
    51
  # End:
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    52
1652
a653ec78b1b8 Find variable/function/feature by name or value.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1477
diff changeset
    53
Find variable/function/feature by name or value.
a653ec78b1b8 Find variable/function/feature by name or value.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1477
diff changeset
    54
------------------------------------------------
a653ec78b1b8 Find variable/function/feature by name or value.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1477
diff changeset
    55
::
a653ec78b1b8 Find variable/function/feature by name or value.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1477
diff changeset
    56
a653ec78b1b8 Find variable/function/feature by name or value.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1477
diff changeset
    57
  (apropos-value "PATT")
a653ec78b1b8 Find variable/function/feature by name or value.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1477
diff changeset
    58
  (apropos-variable "PATT")
a653ec78b1b8 Find variable/function/feature by name or value.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1477
diff changeset
    59
  (apropos-function "PATT")
a653ec78b1b8 Find variable/function/feature by name or value.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1477
diff changeset
    60
  (apropos-library "PATT")
a653ec78b1b8 Find variable/function/feature by name or value.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1477
diff changeset
    61
  (apropos-documentation "PATT")
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    62
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    63
Debugging.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    64
==========
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    65
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    66
Evaluating elisp expression on the fly.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    67
---------------------------------------
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    68
1477
652e9d14c7cc Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1476
diff changeset
    69
Type ``M-:`` than lisp expression than type ``RET``.
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    70
1477
652e9d14c7cc Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1476
diff changeset
    71
Or in any buffer place point at the end of lisp expression and type ``C-x C-e``.
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    72
1477
652e9d14c7cc Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1476
diff changeset
    73
Or invoke elisp "shell" by ``M-x ielm``.
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    74
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    75
What functions and variables Emacs load and from which files?
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    76
-------------------------------------------------------------
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    77
1189
78104ca7c163 symbol-file
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1143
diff changeset
    78
See value of variable ``load-history`` (by C-h v load-history RET)::
78104ca7c163 symbol-file
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1143
diff changeset
    79
1653
f9aae584ecb4 symbol-file, http://stackoverflow.com/a/27755252/173149
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1652
diff changeset
    80
  (symbol-file 'scheme 'provide)        ; Who provide feature.
f9aae584ecb4 symbol-file, http://stackoverflow.com/a/27755252/173149
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1652
diff changeset
    81
  (symbol-file 'nxml-mode-hook 'defvar) ; Where variable defined.
f9aae584ecb4 symbol-file, http://stackoverflow.com/a/27755252/173149
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1652
diff changeset
    82
  (symbol-file 'message-send 'defun)    ; Where function defined.
1654
f361c89e693f Look for symbol despite its type.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1653
diff changeset
    83
  (symbol-file 'scheme)  ; Look for symbol despite its type.
1476
f437a8297ba2 locate-library
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1420
diff changeset
    84
  load-history
f437a8297ba2 locate-library
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1420
diff changeset
    85
  (locate-library "gnus.el")
1653
f9aae584ecb4 symbol-file, http://stackoverflow.com/a/27755252/173149
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1652
diff changeset
    86
  (find-lisp-object-file-name 'c-mode (symbol-function 'c-mode))
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    87
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    88
Using edebug.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    89
-------------
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    90
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    91
Execute ``M-x edebug-defun`` (also on ``C-u C-M-x``) on defun in source code to
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    92
enable debugging for desired function. When next time this function invoked
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    93
you entered to its debugging (jumped to its source code).
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    94
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    95
To start debug execute code which used debugged function.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    96
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    97
You can disable edebug on a function by evaluating the function again using
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    98
``C-M-x``.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    99
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   100
How debug func?
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   101
---------------
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   102
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   103
Use M-x debug-on-entry and M-x cancel-debug-on-entry to control
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   104
which functions will enter the debugger when called.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   105
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   106
When next time that function called automatically loaded debug-mode.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   107
1274
3860a2e28d4d How to print a trace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1266
diff changeset
   108
You can use ``(debug)`` in your function to automatically enter to debugger.
3860a2e28d4d How to print a trace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1266
diff changeset
   109
3860a2e28d4d How to print a trace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1266
diff changeset
   110
You can use ``(backtrace)`` to print a trace of Lisp function.
3860a2e28d4d How to print a trace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1266
diff changeset
   111
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   112
How debug ini file?
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   113
-------------------
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   114
1477
652e9d14c7cc Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1476
diff changeset
   115
When your ini has a bug, or when you load external files that cause errors, the
652e9d14c7cc Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1476
diff changeset
   116
bug is often hard to find, because the Emacs Lisp reader does not know about
652e9d14c7cc Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1476
diff changeset
   117
line numbers and files - it just knows an error happened, and that's it.
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   118
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   119
Try run Emacs with ``--debug-init`` to see backtrace.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   120
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   121
How debug long running command?
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   122
-------------------------------
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   123
1477
652e9d14c7cc Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1476
diff changeset
   124
``M-x debug-on-quit RET`` and then just hit ``C-g`` next time it gets ``stuck``
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   125
somewhere.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   126
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   127
Check if bug in ini file not in Emacs itself.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   128
---------------------------------------------
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   129
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   130
First run Emacs without loading anything::
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   131
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   132
  $ emacs --no-init-file --no-site-file
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   133
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   134
or more shortly (as ``-Q`` imply ``-q``, ``--no-site-file``, and ``--no-splash``
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   135
together)::
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   136
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   137
  $ emacs -Q
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   138
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   139
If bug not reproduced bug lies in ini files!
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   140
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   141
Debug by binary search.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   142
-----------------------
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   143
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   144
Select half of the file in a region, and M-x eval-region. Depending on whether
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   145
that causes the error or not, split this half or the other half again, and
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   146
repeat.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   147
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   148
Simplified Binary Search.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   149
~~~~~~~~~~~~~~~~~~~~~~~~~
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   150
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   151
Add (error ``No error until here``) in the middle of your file. If you get the
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   152
error ``No error until here`` when reloading the file, move the expression
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   153
towards the back of the file, otherwise towards the front of the file.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   154
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   155
Elisp debug tips.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   156
-----------------
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   157
1477
652e9d14c7cc Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1476
diff changeset
   158
 * Use a keyboard macro that moves forward one expression (sexp) and evaluates
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   159
   it.
1477
652e9d14c7cc Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1476
diff changeset
   160
 * Try C-x check-parens.
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   161
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   162
Enable debug mode (also on loading).
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   163
------------------------------------
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   164
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   165
Set in source::
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   166
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   167
  (setq debug-on-error t)
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   168
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   169
or invoke Emacs like::
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   170
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   171
  $ emacs --debug-init
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   172
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   173
where ``--debug-init`` binds ``debug-on-error`` to ``t`` while loading the init
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   174
file, and bypasses the ``condition-case`` which normally catches errors in the
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   175
init file.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   176
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   177
Call tree.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   178
----------
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   179
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   180
Before byte compiling file execute::
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   181
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   182
  (setq byte-compile-generate-call-tree t)
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   183
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   184
Veiw buffer local variables.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   185
----------------------------
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   186
::
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   187
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   188
  (pp (buffer-local-variables))
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   189
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   190
Emacs profiling.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   191
================
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   192
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   193
benchmark.el.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   194
-------------
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   195
::
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   196
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   197
  (benchmark-run 1 (revert-buffer))
1207
b014c71fdb7d benchmark.el
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1189
diff changeset
   198
  (benchmark-run-compiled 1 (hi-lock-face-phrase-buffer "hello" 'hi-yellow))
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   199
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   200
elp.el.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   201
-------
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   202
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   203
Enter a prefix for ``M-x elp-instrument-package``, perform action and see result
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   204
by ``M-x elp-results``. To perform new measurement don't forget to run
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   205
``M-x elp-reset-all``.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   206
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   207
WWW.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   208
====
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   209
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   210
Text based WWW browser.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   211
-----------------------
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   212
1477
652e9d14c7cc Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1476
diff changeset
   213
 * http://en.wikipedia.org/wiki/W3m
652e9d14c7cc Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1476
diff changeset
   214
 * http://emacs-w3m.namazu.org/
652e9d14c7cc Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1476
diff changeset
   215
 * http://www.gnu.org/software/w3/
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   216
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   217
Tricks.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   218
=======
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   219
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   220
Sort and uniquify lines.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   221
------------------------
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   222
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   223
Select region, type ``C-u M-| sort -u RET``.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   224
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   225
With transient-mark-mode and delete-selection-mode enabled: select region,
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   226
type M-| sort -u RET to replace selection with sorted and uniquified lines.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   227
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   228
Determining running environment/platform.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   229
=========================================
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   230
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   231
Check variables::
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   232
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   233
  emacs-major-version
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   234
  emacs-minor-version
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   235
  window-system             - ``nil`` if in terminal, ``w32`` if native Windows build, ``x`` if under X Window
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   236
  window-system-version     - for windows only
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   237
  window-size-fixed
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   238
  operating-system-release  - release of the operating system Emacs is running on
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   239
  system-configuration      - like configuration triplet: cpu-manufacturer-os
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   240
  system-configuration-options
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   241
  system-name               - host name of the machine you are running on
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   242
  system-time-locale
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   243
  system-type               - indicating the type of operating system you are using:
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   244
                              ``gnu`` (GNU Hurd),
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   245
                              ``gnu/linux``,
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   246
                              ``gnu/kfreebsd``, ``berkeley-unix`` for (FreeBSD),
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   247
                              ``darwin`` (GNU-Darwin, Mac OS X),
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   248
                              ``ms-dos``,
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   249
                              ``windows-nt``,
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   250
                              ``cygwin``
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   251
  system-uses-terminfo
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   252
  dynamic-library-alist or deprecated image-library-alist
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   253
                            - alist of image types vs external libraries needed to display them
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   254
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   255
and check functions::
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   256
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   257
  (fboundp ...)             - return t if SYMBOL's function definition is not void
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   258
  (featurep ...)            - returns t if FEATURE is present in this Emacs
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   259
  (display-graphic-p)       - return non-nil if DISPLAY is a graphic display; graphical
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   260
                              displays are those which are capable of displaying several
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   261
                              frames and several different fonts at once
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   262
  (display-multi-font-p)    - same as ``display-graphic-p``
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   263
  (display-multi-frame-p)   - same as ``display-graphic-p``
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   264
  (display-color-p)         - return t if DISPLAY supports color
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   265
  (display-images-p)        - return non-nil if DISPLAY can display images
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   266
  (display-grayscale-p)     - return non-nil if frames on DISPLAY can display shades of gray
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   267
  (display-mouse-p)         - return non-nil if DISPLAY has a mouse available
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   268
  (display-popup-menus-p)   - return non-nil if popup menus are supported on DISPLAY
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   269
  (display-selections-p)    - return non-nil if DISPLAY supports selections
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   270
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   271
Run those checks as below::
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   272
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   273
  (when window-system ...)
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   274
  (when (eq window-system 'x) ...)
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   275
  (when (>= emacs-major-version 22) ...)
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   276
  (when (fboundp '...) ...)
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   277
  (when (featurep '...) ...)
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   278
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   279
Compiling emacs.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   280
================
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   281
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   282
Windows.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   283
--------
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   284
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   285
Get MSYS for POSIX shell and utilities . Get MinGW for GCC. Get Gnuwin32 for
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   286
jpeg, ungif, tiff, xpm, png, zlib libraries.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   287
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   288
Read emacs/nt/INSTALL::
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   289
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   290
  $ cmd
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   291
  $ cd emacs\nt
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   292
  $ configure.bat --prefix %INST_ROOT% --with-gcc --cflags -I%GNUWIN32_ROOT%/include --ldflags -L%GNUWIN32_ROOT%/lib  --ldflags -lregex
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   293
  $ make bootstrap
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   294
  $ make info
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   295
  $ make install
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   296
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   297
Documentation.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   298
==============
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   299
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   300
Elisp documentation.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   301
--------------------
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   302
::
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   303
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   304
  ;;; <file-name>.el --- <one-line-description>
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   305
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   306
  ;; Copyright (C) <years> <person>
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   307
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   308
  ;; Author: <person> <mail>
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   309
  ;; Maintainer: <person> <mail>
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   310
  ;; Created: <date>
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   311
  ;; Version: <version>
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   312
  ;; Keywords: <look for ``finder-by-keyword`` output, separate by comma>
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   313
  ;; URL: <file-location>
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   314
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   315
  ;;; Commentary:
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   316
  <bla-bla-bla>
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   317
  ;;; Code:
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   318
  <lisp-code>
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   319
  ;;; <file-name> ends here
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   320
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   321
See
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   322
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   323
 * http://www.gnu.org/software/emacs/elisp-manual/html_node/Library-Headers.html
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   324
 * http://www.emacswiki.org/cgi-bin/wiki/ElispAreaConventions
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   325
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   326
CheckDoc.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   327
---------
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   328
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   329
CheckDoc checks your EmacsLisp code for errors in documentation and style.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   330
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   331
  http://cedet.sourceforge.net/checkdoc.shtml
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   332
                home page before including it into GNU Emacs
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   333
  http://www.emacswiki.org/emacs/CheckDoc
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   334
                CheckDoc
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   335
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   336
Installing Emacs.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   337
=================
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   338
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   339
From sources.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   340
-------------
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   341
1477
652e9d14c7cc Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1476
diff changeset
   342
 * http://ftp.gnu.org/pub/gnu/emacs
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   343
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   344
Windows.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   345
--------
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   346
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   347
  http://ftp.gnu.org/pub/gnu/emacs/windows
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   348
                Releases for Windows.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   349
  http://alpha.gnu.org/gnu/emacs/windows
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   350
                Beta releases for Windows.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   351
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   352
Debian.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   353
-------
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   354
::
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   355
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   356
  $ apt-get install emacs
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   357
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   358
Emacs paths.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   359
============
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   360
::
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   361
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   362
  source-directory data-directory doc-directory exec-directory
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   363
  invocation-directory trash-directory tutorial-directory user-emacs-directory
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   364
  widget-image-directory
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   365
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   366
Emacs games.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   367
============
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   368
::
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   369
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   370
  hanoi hanoi-unix life pong tetris gomoku
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   371
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   372
Long lines.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   373
===========
1477
652e9d14c7cc Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1476
diff changeset
   374
::
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   375
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   376
  (setq longlines-show-hard-newlines t)
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   377
  (setq longlines-wrap-follows-window-size t)
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   378
  (longlines-mode 1)
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   379
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   380
Printing Emacs structures.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   381
==========================
1477
652e9d14c7cc Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1476
diff changeset
   382
::
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   383
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   384
  (message "%S" '(a b 123 "hello" 'set))
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   385
  (pp '(a b 123 "hello" 'set))
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   386
  (prin1-to-string '(1 2))
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   387
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   388
  (symbol-name 'f)
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   389
  (symbol-value 'f)
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   390
  (symbol-function 'f)
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   391
  (symbol-plist 'f)
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   392
1143
3a3389b22964 (local-variable-p var buffer)
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1142
diff changeset
   393
  (local-variable-p var buffer)
3a3389b22964 (local-variable-p var buffer)
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1142
diff changeset
   394
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   395
File manager.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   396
=============
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   397
1477
652e9d14c7cc Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1476
diff changeset
   398
 * http://www.emacswiki.org/emacs/Sunrise_Commander
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   399
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   400
Semantic.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   401
=========
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   402
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   403
  semantic-lex-spp-describe
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   404
                Describe the current list of spp macros.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   405
  semantic-lex-c-preprocessor-symbol-file
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   406
                List of C/C++ files that contain preprocessor macros for the C lexer.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   407
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   408
Debugging C code.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   409
=================
1477
652e9d14c7cc Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1476
diff changeset
   410
::
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   411
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   412
  -*- mode: grep; mode: auto-revert-tail; default-directory: "~/devel/proj" -*-
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   413
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   414
XML modes.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   415
==========
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   416
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   417
XSLT-process.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   418
-------------
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   419
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   420
XSLT-process is a minor mode for GNU Emacs/XEmacs which transforms it into a powerful editor with
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   421
XSLT processing and debugging capabilities.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   422
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   423
The mode currently supports two Java XSLT processors:
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   424
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   425
 * Saxon - fully supported, including debugging capabilities.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   426
 * Xalan - fully supported, including debugging capabilities.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   427
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   428
  http://xslt-process.sourceforge.net/
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   429
                home page
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   430
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   431
Useful program logging.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   432
=======================
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   433
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   434
Put first line to your log file, you must replace ``default-directory`` to dir where you build
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   435
program::
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   436
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   437
  -*- mode: compilation-minor; mode: auto-revert-tail; default-directory: "~/devel/proj" -*-
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   438
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   439
Program must use one of supported by ``compilation-minor-mode`` (see
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   440
``compilation-error-regexp-alist``), like::
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   441
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   442
  printf(__FILE__ ":%d: %s\n", __LINE__, msg);  /* msg - user defined string */
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   443
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   444
or in second form (in this case line number included in format string, so easy searchable in
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   445
debugger)::
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   446
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   447
  #define NUM2STR(x) STR(x)
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   448
  #define STR(x) #x
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   449
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   450
  printf(__FILE__ ":" NUM2STR(__LINE__) ": %s\n", msg);
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   451
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   452
Or some faster use ``grep-mode``, but you restricted with GNU like error format::
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   453
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   454
  -*- mode: grep; mode: auto-revert-tail; default-directory: "~/devel/proj" -*-
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   455
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   456
Edit HTML.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   457
==========
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   458
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   459
 * psgml-mode
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   460
 * nxml-mode
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   461
 * sgml-mode
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   462
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   463
html-helper-mode.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   464
-----------------
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   465
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   466
Highlighting, autocompletion, and auto-insertion of closing tags.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   467
1477
652e9d14c7cc Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1476
diff changeset
   468
 * http://www.emacswiki.org/emacs/HtmlHelperMode
652e9d14c7cc Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1476
diff changeset
   469
 * http://savannah.nongnu.org/projects/baol-hth/
652e9d14c7cc Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1476
diff changeset
   470
 * http://www.nongnu.org/baol-hth/
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   471
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   472
Source.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   473
=======
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   474
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   475
Get main development sources::
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   476
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   477
  $ bzr init-repo --2a emacs
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   478
  $ cd emacs
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   479
  $ bzr branch http://bzr.savannah.gnu.org/r/emacs/trunk trunk
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   480
  $ cd trunk
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   481
  $ bzr bind http://bzr.savannah.gnu.org/r/emacs/trunk
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   482
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   483
To update with latest changes::
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   484
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   485
  $ cd emacs/trunk
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   486
  $ bzr update
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   487
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   488
See:
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   489
1477
652e9d14c7cc Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1476
diff changeset
   490
 * http://www.emacswiki.org/emacs/BzrForEmacsDevs
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   491
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   492
Emacs Git mirror.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   493
-----------------
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   494
1477
652e9d14c7cc Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1476
diff changeset
   495
 * http://www.emacswiki.org/emacs/EmacsFromGit
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   496
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   497
Patch.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   498
======
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   499
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   500
  http://debbugs.gnu.org/cgi/bugreport.cgi?bug=5719
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   501
                [patch] fix bat-generic-mode highlighting pattern for CLI
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   502
                switch.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   503
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   504
How report bug.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   505
===============
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   506
1477
652e9d14c7cc Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1476
diff changeset
   507
Visit http://debbugs.gnu.org or ``M-x report-emacs-bug``.
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   508
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   509
Finding emacs packages.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   510
=======================
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   511
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   512
 * http://anc.ed.ac.uk/~stephen/emacs/ell.html
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   513
 * http://www.emacswiki.org/emacs/WikifiedEmacsLispList
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   514
 * http://www.emacswiki.org/emacs/RationalElispPackaging
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   515
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   516
  http://tromey.com/elpa/index.html
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   517
                Emacs Lisp Package Archive
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   518
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   519
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   520
EPLA.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   521
-----
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   522
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   523
ELPA goal is to make it simple to install, use, and upgrade Emacs Lisp packages.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   524
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   525
Currently (2011-02-15) available such sources::
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   526
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   527
  (setq package-archives '(("ELPA" . "http://tromey.com/elpa/")
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   528
                           ("gnu" . "http://elpa.gnu.org/packages/")
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   529
                           ("marmalade" . "http://marmalade-repo.org/packages/")
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   530
                           ))
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   531
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   532
 * http://www.emacswiki.org/emacs/ELPA
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   533
 * http://marmalade-repo.org/
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   534
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   535
  http://elpa.gnu.org/
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   536
                official GNU Emacs Lisp Package Archive
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   537
  http://tromey.com/elpa/
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   538
                old Emacs Lisp Package Archive home page
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   539
  http://tromey.com/elpa/upload.html
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   540
                how to contribute
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   541
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   542
Emacswiki.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   543
----------
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   544
1477
652e9d14c7cc Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1476
diff changeset
   545
 * http://www.emacswiki.org/emacs/ElispArea
652e9d14c7cc Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1476
diff changeset
   546
 * http://www.emacswiki.org/emacs/WikifiedEmacsLispList
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   547
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   548
emacsmirror.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   549
------------
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   550
1477
652e9d14c7cc Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1476
diff changeset
   551
 * https://github.com/emacsmirror/p/wiki
652e9d14c7cc Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1476
diff changeset
   552
 * http://www.emacsmirror.org/
652e9d14c7cc Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1476
diff changeset
   553
 * http://www.emacswiki.org/emacs/Emacsmirror
1142
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   554
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   555
Funny Emacs modes.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   556
==================
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   557
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   558
  glasses
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   559
                Minor mode for making identifiers likeThis readable.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   560
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   561
Useful commands.
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   562
================
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   563
::
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   564
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   565
  flush-lines keep-lines
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   566
  align-regexp
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   567
  C-x C-o
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   568
  M-PageUp/M-PageDown
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   569
  command-history
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   570
  M-=
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   571
  C-x l
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   572
  locate-library find-library
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   573
  features load-history
3059b0c6c39a symbol-plist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   574