diff options
| author | Tom Tromey | 2013-03-08 11:57:29 -0700 |
|---|---|---|
| committer | Tom Tromey | 2013-03-08 11:57:29 -0700 |
| commit | 71f91792e3013b397996905224f387da5cc539a9 (patch) | |
| tree | 4c3d3ba909e76deea1cdf73b73fca67a57149465 /doc/misc | |
| parent | 6f4de085f065e11f4df3195d47479f28f5ef08ba (diff) | |
| parent | b5426561089d39f18b42bed9dbfcb531f43ed562 (diff) | |
| download | emacs-71f91792e3013b397996905224f387da5cc539a9.tar.gz emacs-71f91792e3013b397996905224f387da5cc539a9.zip | |
merge from trunk
Diffstat (limited to 'doc/misc')
36 files changed, 1021 insertions, 535 deletions
diff --git a/doc/misc/ChangeLog b/doc/misc/ChangeLog index 95c7ac7b233..44a0b7b3211 100644 --- a/doc/misc/ChangeLog +++ b/doc/misc/ChangeLog | |||
| @@ -1,3 +1,147 @@ | |||
| 1 | 2013-03-08 Glenn Morris <rgm@gnu.org> | ||
| 2 | |||
| 3 | * faq.texi (Top): Don't say this was updated @today. | ||
| 4 | That's irrelevant and leads to spurious diffs. | ||
| 5 | |||
| 6 | 2013-03-08 Jay Belanger <jay.p.belanger@gmail.com> | ||
| 7 | |||
| 8 | * calc.texi (Basic Operations on Units): Fix | ||
| 9 | cross-reference. | ||
| 10 | |||
| 11 | 2013-03-07 Katsumi Yamaoka <yamaoka@jpl.org> | ||
| 12 | |||
| 13 | * gnus-faq.texi (FAQ 3-11): Now Gnus supports POP3 UIDL. | ||
| 14 | |||
| 15 | 2013-03-06 Alan Mackenzie <acm@muc.de> | ||
| 16 | |||
| 17 | * cc-mode.texi (Custom Line-Up): Clarify position of point on | ||
| 18 | calling a line-up function. | ||
| 19 | |||
| 20 | 2013-03-04 Paul Eggert <eggert@cs.ucla.edu> | ||
| 21 | |||
| 22 | * emacs-mime.texi, htmlfontify.texi, mairix-el.texi, mh-e.texi: | ||
| 23 | * ses.texi: Switch from Latin-1 to UTF-8. | ||
| 24 | |||
| 25 | 2013-03-03 Michael Albinus <michael.albinus@gmx.de> | ||
| 26 | |||
| 27 | * tramp.texi (External methods): Tramp does not connect Android | ||
| 28 | devices by itself. | ||
| 29 | |||
| 30 | 2013-03-02 Bill Wohler <wohler@newt.com> | ||
| 31 | |||
| 32 | Release MH-E manual version 8.5. | ||
| 33 | |||
| 34 | * mh-e.texi (VERSION, EDITION, UPDATED, UPDATE-MONTH): Update for | ||
| 35 | release 8.5. | ||
| 36 | |||
| 37 | * mh-e.texi (Preface, Conventions, Getting Started) | ||
| 38 | (Using This Manual, Folder Selection, Viewing, Aliases) | ||
| 39 | (Identities, Speedbar, Menu Bar, Tool Bar, Scan Line Formats) | ||
| 40 | (Bug Reports, Mailing Lists, MH FAQ and Support, Getting MH-E): | ||
| 41 | Update URLs. | ||
| 42 | |||
| 43 | 2013-03-01 Michael Albinus <michael.albinus@gmx.de> | ||
| 44 | |||
| 45 | * tramp.texi (Inline methods): Remove "ssh1", "ssh2", "plink1" | ||
| 46 | and "plink2" entries. "plink2" is obsolete for a long time. | ||
| 47 | (External methods): Remove "scp1" and "scp2" entries. Explain | ||
| 48 | user name and host name specification for "adb". | ||
| 49 | |||
| 50 | 2013-02-28 Michael Albinus <michael.albinus@gmx.de> | ||
| 51 | |||
| 52 | * tramp.texi (External methods): Mention `tramp-adb-program'. | ||
| 53 | |||
| 54 | 2013-02-28 Bastien Guerry <bzg@gnu.org> | ||
| 55 | |||
| 56 | * org.texi (Visibility cycling): Suggest to set | ||
| 57 | `org-agenda-inhibit-startup' to nil if user wants the startup | ||
| 58 | visibility settings to be honored in any circumstances. | ||
| 59 | (Progress logging, Checkboxes): Fix typos. | ||
| 60 | |||
| 61 | 2013-02-28 Michael Albinus <michael.albinus@gmx.de> | ||
| 62 | |||
| 63 | * tramp.texi (top) [xxx, yyy, trampfn]: Provide two versions of | ||
| 64 | the macros, for Texinfo 4.13 and 5.0. | ||
| 65 | |||
| 66 | 2013-02-24 Michael Albinus <michael.albinus@gmx.de> | ||
| 67 | |||
| 68 | Port Tramp documentation to Texinfo 5.0. | ||
| 69 | * tramp.texi (top) [xxx, yyy, trampfn]: Remove superfluous @c. | ||
| 70 | (Filename Syntax): Do not use @trampfn{} in @item. | ||
| 71 | (Filename completion): Use @columnfractions in @multitable. | ||
| 72 | |||
| 73 | 2013-02-22 Glenn Morris <rgm@gnu.org> | ||
| 74 | |||
| 75 | * flymake.texi (Syntax check statuses): Fix multitable continued rows. | ||
| 76 | |||
| 77 | 2013-02-21 Paul Eggert <eggert@cs.ucla.edu> | ||
| 78 | |||
| 79 | * Makefile.in (html): New rule. | ||
| 80 | |||
| 81 | 2013-02-20 Michael Albinus <michael.albinus@gmx.de> | ||
| 82 | |||
| 83 | * tramp.texi (Android shell setup): Improve. Reported by Thierry | ||
| 84 | Volpiatto <thierry.volpiatto@gmail.com>. | ||
| 85 | |||
| 86 | 2013-02-16 Michael Albinus <michael.albinus@gmx.de> | ||
| 87 | |||
| 88 | * tramp.texi (Top, Configuration): Insert section `Android shell | ||
| 89 | setup' in menu. | ||
| 90 | (Android shell setup): New section. | ||
| 91 | (Connection types, Default Method) | ||
| 92 | (Frequently Asked Questions): Mention "scp" instead of "scpc". | ||
| 93 | (External methods): Remove "scpc" and "rsyncc" entries. | ||
| 94 | (Frequently Asked Questions): Remove entry about ControlPersist. | ||
| 95 | |||
| 96 | 2013-02-13 Glenn Morris <rgm@gnu.org> | ||
| 97 | |||
| 98 | * message.texi (News Headers): Don't mention yow any more. | ||
| 99 | |||
| 100 | 2013-02-09 Jay Belanger <jay.p.belanger@gmail.com> | ||
| 101 | |||
| 102 | * calc.texi (Basic Operations on Units): | ||
| 103 | (Customizing Calc): Mention the variable `calc-allow-units-as-numbers'. | ||
| 104 | |||
| 105 | 2013-02-08 Aidan Gauland <aidalgol@no8wireless.co.nz> | ||
| 106 | |||
| 107 | * eshell.texi: Fill most of the missing sections. | ||
| 108 | |||
| 109 | 2013-02-07 Bastien Guerry <bzg@gnu.org> | ||
| 110 | |||
| 111 | * org.texi (References): Clarify an example. | ||
| 112 | (Installation): Fix instructions. | ||
| 113 | (Org-Plot): Fix link. | ||
| 114 | (Checkboxes, Radio lists): Fix typos. | ||
| 115 | |||
| 116 | 2013-02-07 Glenn Morris <rgm@gnu.org> | ||
| 117 | |||
| 118 | * cl.texi (Equality Predicates): Mention memql. | ||
| 119 | |||
| 120 | 2013-02-07 Eric Ludlam <zappo@gnu.org> | ||
| 121 | |||
| 122 | * doc/misc/ede.texi (Creating a project): Make ede-new doc less | ||
| 123 | specific, and only about items it supports, indicating that there | ||
| 124 | might be more. Remove refs to simple project and direct automake | ||
| 125 | from ede new. | ||
| 126 | (Simple projects): Re-write to not talk about ede-simple-project | ||
| 127 | which is deprecated, and instead use the term to mean projects | ||
| 128 | that don't do much management, just project wrapping. Add | ||
| 129 | ede-generic-project link. | ||
| 130 | (ede-generic-project): New node (bug#11441). | ||
| 131 | |||
| 132 | 2013-02-07 Glenn Morris <rgm@gnu.org> | ||
| 133 | |||
| 134 | * cl.texi (Equality Predicates): Fix eq/eql pedantry. | ||
| 135 | |||
| 136 | 2013-02-01 Glenn Morris <rgm@gnu.org> | ||
| 137 | |||
| 138 | * calc.texi (Help Commands): Update calc-view-news description. | ||
| 139 | Mention etc/CALC-NEWS. | ||
| 140 | |||
| 141 | 2013-01-24 Michael Albinus <michael.albinus@gmx.de> | ||
| 142 | |||
| 143 | * tramp.texi (Filename Syntax): Filenames must be unibyte strings. | ||
| 144 | |||
| 1 | 2013-01-13 Bastien Guerry <bzg@gnu.org> | 145 | 2013-01-13 Bastien Guerry <bzg@gnu.org> |
| 2 | 146 | ||
| 3 | * org.texi (Installation): Simplify. | 147 | * org.texi (Installation): Simplify. |
diff --git a/doc/misc/Makefile.in b/doc/misc/Makefile.in index 3dac35aafee..add1b42a545 100644 --- a/doc/misc/Makefile.in +++ b/doc/misc/Makefile.in | |||
| @@ -192,6 +192,8 @@ webhack: clean | |||
| 192 | 192 | ||
| 193 | dvi: $(DVI_TARGETS) | 193 | dvi: $(DVI_TARGETS) |
| 194 | 194 | ||
| 195 | html: $(HTML_TARGETS) | ||
| 196 | |||
| 195 | pdf: $(PDF_TARGETS) | 197 | pdf: $(PDF_TARGETS) |
| 196 | 198 | ||
| 197 | # Note that all the Info targets build the Info files in srcdir. | 199 | # Note that all the Info targets build the Info files in srcdir. |
diff --git a/doc/misc/ada-mode.texi b/doc/misc/ada-mode.texi index 926d6a5749c..b5a640e13e0 100644 --- a/doc/misc/ada-mode.texi +++ b/doc/misc/ada-mode.texi | |||
| @@ -72,7 +72,7 @@ existing code and facilitates writing new code. | |||
| 72 | 72 | ||
| 73 | When the Gnu Ada compiler GNAT is used, the cross-reference | 73 | When the Gnu Ada compiler GNAT is used, the cross-reference |
| 74 | information output by the compiler is used to provide powerful code | 74 | information output by the compiler is used to provide powerful code |
| 75 | navigation (jump to definition, find all uses, etc). | 75 | navigation (jump to definition, find all uses, etc.). |
| 76 | 76 | ||
| 77 | When you open a file with a file extension of @file{.ads} or | 77 | When you open a file with a file extension of @file{.ads} or |
| 78 | @file{.adb}, Emacs will automatically load and activate Ada mode. | 78 | @file{.adb}, Emacs will automatically load and activate Ada mode. |
| @@ -1267,7 +1267,7 @@ Non-@code{nil} means that the current line will also be re-indented | |||
| 1267 | before inserting a newline, when you press @key{RET}. | 1267 | before inserting a newline, when you press @key{RET}. |
| 1268 | @end table | 1268 | @end table |
| 1269 | 1269 | ||
| 1270 | Most of the time, the indentation will be automatic, i.e when you | 1270 | Most of the time, the indentation will be automatic, i.e., when you |
| 1271 | press @key{RET}, the cursor will move to the correct column on the | 1271 | press @key{RET}, the cursor will move to the correct column on the |
| 1272 | next line. | 1272 | next line. |
| 1273 | 1273 | ||
diff --git a/doc/misc/bovine.texi b/doc/misc/bovine.texi index 48d5cf9e18a..978345e5cc8 100644 --- a/doc/misc/bovine.texi +++ b/doc/misc/bovine.texi | |||
| @@ -314,7 +314,7 @@ The first object spliced into the list (assuming it is a list from a | |||
| 314 | non-terminal). | 314 | non-terminal). |
| 315 | 315 | ||
| 316 | @item '$1 | 316 | @item '$1 |
| 317 | The first object matched, placed in a list. i.e. @code{( $1 )}. | 317 | The first object matched, placed in a list. I.e., @code{( $1 )}. |
| 318 | 318 | ||
| 319 | @item foo | 319 | @item foo |
| 320 | The symbol @code{foo} (exactly as displayed). | 320 | The symbol @code{foo} (exactly as displayed). |
diff --git a/doc/misc/calc.texi b/doc/misc/calc.texi index 5dabf5cd314..0bf7833ec34 100644 --- a/doc/misc/calc.texi +++ b/doc/misc/calc.texi | |||
| @@ -9909,9 +9909,9 @@ listed. | |||
| 9909 | 9909 | ||
| 9910 | @kindex h n | 9910 | @kindex h n |
| 9911 | The @kbd{h n} or @kbd{h C-n} (@code{calc-view-news}) command displays | 9911 | The @kbd{h n} or @kbd{h C-n} (@code{calc-view-news}) command displays |
| 9912 | the ``news'' or change history of Calc. This is kept in the file | 9912 | the ``news'' or change history of Emacs, and jumps to the most recent |
| 9913 | @file{README}, which Calc looks for in the same directory as the Calc | 9913 | portion concerning Calc (if present). For older history, see the file |
| 9914 | source files. | 9914 | @file{etc/CALC-NEWS} in the Emacs distribution. |
| 9915 | 9915 | ||
| 9916 | @kindex h C-c | 9916 | @kindex h C-c |
| 9917 | @kindex h C-d | 9917 | @kindex h C-d |
| @@ -14122,7 +14122,7 @@ conventions. Like C mode, Pascal mode interprets array brackets and uses | |||
| 14122 | a different table of operators. Hexadecimal numbers are entered and | 14122 | a different table of operators. Hexadecimal numbers are entered and |
| 14123 | displayed with a preceding dollar sign. (Thus the regular meaning of | 14123 | displayed with a preceding dollar sign. (Thus the regular meaning of |
| 14124 | @kbd{$2} during algebraic entry does not work in Pascal mode, though | 14124 | @kbd{$2} during algebraic entry does not work in Pascal mode, though |
| 14125 | @kbd{$} (and @kbd{$$}, etc.) not followed by digits works the same as | 14125 | @kbd{$} (and @kbd{$$}, etc.)@: not followed by digits works the same as |
| 14126 | always.) No special provisions are made for other non-decimal numbers, | 14126 | always.) No special provisions are made for other non-decimal numbers, |
| 14127 | vectors, and so on, since there is no universally accepted standard way | 14127 | vectors, and so on, since there is no universally accepted standard way |
| 14128 | of handling these in Pascal. | 14128 | of handling these in Pascal. |
| @@ -27866,11 +27866,6 @@ acres per meter-second.) Remainder units are expressed in terms of | |||
| 27866 | ``fundamental'' units like @samp{m} and @samp{s}, regardless of the | 27866 | ``fundamental'' units like @samp{m} and @samp{s}, regardless of the |
| 27867 | input units. | 27867 | input units. |
| 27868 | 27868 | ||
| 27869 | If you want to disallow using inconsistent units, you can set the customizable variable | ||
| 27870 | @code{calc-ensure-consistent-units} to @code{t} (@pxref{Customizing Calc}). In this case, | ||
| 27871 | if you request units which are inconsistent with the original units, you will be warned about | ||
| 27872 | it and no conversion will occur. | ||
| 27873 | |||
| 27874 | One special exception is that if you specify a single unit name, and | 27869 | One special exception is that if you specify a single unit name, and |
| 27875 | a compatible unit appears somewhere in the units expression, then | 27870 | a compatible unit appears somewhere in the units expression, then |
| 27876 | that compatible unit will be converted to the new unit and the | 27871 | that compatible unit will be converted to the new unit and the |
| @@ -27880,6 +27875,12 @@ change the @samp{s} to @samp{ms} to get @samp{9.8e-4 cm/ms^2}. | |||
| 27880 | The ``remainder unit'' @samp{cm} is left alone rather than being | 27875 | The ``remainder unit'' @samp{cm} is left alone rather than being |
| 27881 | changed to the base unit @samp{m}. | 27876 | changed to the base unit @samp{m}. |
| 27882 | 27877 | ||
| 27878 | If you want to disallow using inconsistent units, you can set the | ||
| 27879 | customizable variable @code{calc-ensure-consistent-units} to @code{t} | ||
| 27880 | (@pxref{Customizing Calc}). In this case, if you request units which | ||
| 27881 | are inconsistent with the original units, you will be warned about it | ||
| 27882 | and no conversion will occur. | ||
| 27883 | |||
| 27883 | You can use explicit unit conversion instead of the @kbd{u s} command | 27884 | You can use explicit unit conversion instead of the @kbd{u s} command |
| 27884 | to gain more control over the units of the result of an expression. | 27885 | to gain more control over the units of the result of an expression. |
| 27885 | For example, given @samp{5 m + 23 mm}, you can type @kbd{u c m} or | 27886 | For example, given @samp{5 m + 23 mm}, you can type @kbd{u c m} or |
| @@ -27912,10 +27913,16 @@ Composite units are expanded as if by @kbd{a x}, so that | |||
| 27912 | 27913 | ||
| 27913 | If the value on the stack does not contain any units, @kbd{u c} will | 27914 | If the value on the stack does not contain any units, @kbd{u c} will |
| 27914 | prompt first for the old units which this value should be considered | 27915 | prompt first for the old units which this value should be considered |
| 27915 | to have, then for the new units. Assuming the old and new units you | 27916 | to have, then for the new units. (If the value on the stack can be |
| 27916 | give are consistent with each other, the result also will not contain | 27917 | simplified so that it doesn't contain any units, like @samp{ft/in} can |
| 27917 | any units. For example, @kbd{@w{u c} cm @key{RET} in @key{RET}} | 27918 | be simplified to 12, then @kbd{u c} will still prompt for both old |
| 27918 | converts the number 2 on the stack to 5.08. | 27919 | units and new units. You can ignore the prompt for old units with |
| 27920 | @key{RET}, or turn off the prompt by setting the customizable variable | ||
| 27921 | @code{calc-allow-units-as-numbers} to @code{nil}; | ||
| 27922 | @pxref{Customizing Calc}.) Assuming the old and new units you give are | ||
| 27923 | consistent with each other, the result also will not contain any | ||
| 27924 | units. For example, @kbd{@w{u c} cm @key{RET} in @key{RET}} converts | ||
| 27925 | the number 2 on the stack to 5.08. | ||
| 27919 | 27926 | ||
| 27920 | @kindex u b | 27927 | @kindex u b |
| 27921 | @pindex calc-base-units | 27928 | @pindex calc-base-units |
| @@ -35694,6 +35701,17 @@ have different dimensions. The default value of @code{calc-ensure-consistent-uni | |||
| 35694 | is @code{nil}. | 35701 | is @code{nil}. |
| 35695 | @end defvar | 35702 | @end defvar |
| 35696 | 35703 | ||
| 35704 | @defvar calc-allow-units-as-numbers | ||
| 35705 | When converting units, the variable @code{calc-allow-units-as-numbers} | ||
| 35706 | determines whether or not values which can be simplified so that | ||
| 35707 | they don't contain units (such as @samp{ft/in} can be simplified to 12) | ||
| 35708 | can be regarded as not containing units. If | ||
| 35709 | @code{calc-allow-units-as-numbers} is non-@code{nil}, then @kbd{u c} | ||
| 35710 | will prompt for both old units and new units when converting an expression | ||
| 35711 | like @samp{ft/in}, otherwise @kbd{u c} will only prompt for the new units. | ||
| 35712 | The default value of @code{calc-allow-units-as-numbers} is @code{t}. | ||
| 35713 | @end defvar | ||
| 35714 | |||
| 35697 | @defvar calc-undo-length | 35715 | @defvar calc-undo-length |
| 35698 | The variable @code{calc-undo-length} determines the number of undo | 35716 | The variable @code{calc-undo-length} determines the number of undo |
| 35699 | steps that Calc will keep track of when @code{calc-quit} is called. | 35717 | steps that Calc will keep track of when @code{calc-quit} is called. |
diff --git a/doc/misc/cc-mode.texi b/doc/misc/cc-mode.texi index 55b7028101a..4fa4e12cf88 100644 --- a/doc/misc/cc-mode.texi +++ b/doc/misc/cc-mode.texi | |||
| @@ -4959,7 +4959,7 @@ the declaration is an annotation. | |||
| 4959 | 4959 | ||
| 4960 | There are a few occasions where a statement block might be used inside | 4960 | There are a few occasions where a statement block might be used inside |
| 4961 | an expression. One is in C or C++ code using the gcc extension for | 4961 | an expression. One is in C or C++ code using the gcc extension for |
| 4962 | this, e.g: | 4962 | this, e.g.: |
| 4963 | 4963 | ||
| 4964 | @example | 4964 | @example |
| 4965 | 1: int res = (@{ | 4965 | 1: int res = (@{ |
| @@ -5552,7 +5552,7 @@ parentheses and statements within brace blocks. | |||
| 5552 | @findex lineup-close-paren (c-) | 5552 | @findex lineup-close-paren (c-) |
| 5553 | Line up the closing paren under its corresponding open paren if the | 5553 | Line up the closing paren under its corresponding open paren if the |
| 5554 | open paren is followed by code. If the open paren ends its line, no | 5554 | open paren is followed by code. If the open paren ends its line, no |
| 5555 | indentation is added. E.g: | 5555 | indentation is added. E.g.: |
| 5556 | 5556 | ||
| 5557 | @example | 5557 | @example |
| 5558 | @group | 5558 | @group |
| @@ -5606,7 +5606,7 @@ discussion of this ``DWIM'' measure. | |||
| 5606 | 5606 | ||
| 5607 | @defun c-indent-one-line-block | 5607 | @defun c-indent-one-line-block |
| 5608 | @findex indent-one-line-block (c-) | 5608 | @findex indent-one-line-block (c-) |
| 5609 | Indent a one line block @code{c-basic-offset} extra. E.g: | 5609 | Indent a one line block @code{c-basic-offset} extra. E.g.: |
| 5610 | 5610 | ||
| 5611 | @example | 5611 | @example |
| 5612 | @group | 5612 | @group |
| @@ -5640,7 +5640,7 @@ which makes the function usable in list expressions. | |||
| 5640 | 5640 | ||
| 5641 | @defun c-indent-multi-line-block | 5641 | @defun c-indent-multi-line-block |
| 5642 | @findex indent-multi-line-block (c-) | 5642 | @findex indent-multi-line-block (c-) |
| 5643 | Indent a multiline block @code{c-basic-offset} extra. E.g: | 5643 | Indent a multiline block @code{c-basic-offset} extra. E.g.: |
| 5644 | 5644 | ||
| 5645 | @example | 5645 | @example |
| 5646 | @group | 5646 | @group |
| @@ -5679,7 +5679,7 @@ block, which makes the function usable in list expressions. | |||
| 5679 | Line up statements for coding standards which place the first statement | 5679 | Line up statements for coding standards which place the first statement |
| 5680 | in a block on the same line as the block opening brace@footnote{Run-in | 5680 | in a block on the same line as the block opening brace@footnote{Run-in |
| 5681 | style doesn't really work too well. You might need to write your own | 5681 | style doesn't really work too well. You might need to write your own |
| 5682 | custom line-up functions to better support this style.}. E.g: | 5682 | custom line-up functions to better support this style.}. E.g.: |
| 5683 | 5683 | ||
| 5684 | @example | 5684 | @example |
| 5685 | @group | 5685 | @group |
| @@ -5762,7 +5762,7 @@ indents relative to the surrounding block just like | |||
| 5762 | @defun c-lineup-whitesmith-in-block | 5762 | @defun c-lineup-whitesmith-in-block |
| 5763 | @findex lineup-whitesmith-in-block (c-) | 5763 | @findex lineup-whitesmith-in-block (c-) |
| 5764 | Line up lines inside a block in Whitesmith style. It's done in a way | 5764 | Line up lines inside a block in Whitesmith style. It's done in a way |
| 5765 | that works both when the opening brace hangs and when it doesn't. E.g: | 5765 | that works both when the opening brace hangs and when it doesn't. E.g.: |
| 5766 | 5766 | ||
| 5767 | @example | 5767 | @example |
| 5768 | @group | 5768 | @group |
| @@ -5816,7 +5816,7 @@ Line up the current argument line under the first argument. | |||
| 5816 | As a special case, if an argument on the same line as the open | 5816 | As a special case, if an argument on the same line as the open |
| 5817 | parenthesis starts with a brace block opener, the indentation is | 5817 | parenthesis starts with a brace block opener, the indentation is |
| 5818 | @code{c-basic-offset} only. This is intended as a ``DWIM'' measure in | 5818 | @code{c-basic-offset} only. This is intended as a ``DWIM'' measure in |
| 5819 | cases like macros that contain statement blocks, e.g: | 5819 | cases like macros that contain statement blocks, e.g.: |
| 5820 | 5820 | ||
| 5821 | @example | 5821 | @example |
| 5822 | @group | 5822 | @group |
| @@ -5852,7 +5852,7 @@ brace block. | |||
| 5852 | @defun c-lineup-multi-inher | 5852 | @defun c-lineup-multi-inher |
| 5853 | @findex lineup-multi-inher (c-) | 5853 | @findex lineup-multi-inher (c-) |
| 5854 | Line up the classes in C++ multiple inheritance clauses and member | 5854 | Line up the classes in C++ multiple inheritance clauses and member |
| 5855 | initializers under each other. E.g: | 5855 | initializers under each other. E.g.: |
| 5856 | 5856 | ||
| 5857 | @example | 5857 | @example |
| 5858 | @group | 5858 | @group |
| @@ -5895,7 +5895,7 @@ Line up Java implements and extends declarations. If class names | |||
| 5895 | follow on the same line as the @samp{implements}/@samp{extends} | 5895 | follow on the same line as the @samp{implements}/@samp{extends} |
| 5896 | keyword, they are lined up under each other. Otherwise, they are | 5896 | keyword, they are lined up under each other. Otherwise, they are |
| 5897 | indented by adding @code{c-basic-offset} to the column of the keyword. | 5897 | indented by adding @code{c-basic-offset} to the column of the keyword. |
| 5898 | E.g: | 5898 | E.g.: |
| 5899 | 5899 | ||
| 5900 | @example | 5900 | @example |
| 5901 | @group | 5901 | @group |
| @@ -5929,7 +5929,7 @@ same line as the throws keyword, they are lined up under each other. | |||
| 5929 | Otherwise, they are indented by adding @code{c-basic-offset} to the | 5929 | Otherwise, they are indented by adding @code{c-basic-offset} to the |
| 5930 | column of the @samp{throws} keyword. The @samp{throws} keyword itself | 5930 | column of the @samp{throws} keyword. The @samp{throws} keyword itself |
| 5931 | is also indented by @code{c-basic-offset} from the function declaration | 5931 | is also indented by @code{c-basic-offset} from the function declaration |
| 5932 | start if it doesn't hang. E.g: | 5932 | start if it doesn't hang. E.g.: |
| 5933 | 5933 | ||
| 5934 | @example | 5934 | @example |
| 5935 | @group | 5935 | @group |
| @@ -6014,7 +6014,7 @@ line. | |||
| 6014 | 6014 | ||
| 6015 | @defun c-lineup-argcont | 6015 | @defun c-lineup-argcont |
| 6016 | @findex lineup-argcont (c-) | 6016 | @findex lineup-argcont (c-) |
| 6017 | Line up a continued argument. E.g: | 6017 | Line up a continued argument. E.g.: |
| 6018 | 6018 | ||
| 6019 | @example | 6019 | @example |
| 6020 | @group | 6020 | @group |
| @@ -6101,7 +6101,7 @@ function is the same as specifying a list @code{(c-lineup-assignments | |||
| 6101 | Line up ``cascaded calls'' under each other. If the line begins with | 6101 | Line up ``cascaded calls'' under each other. If the line begins with |
| 6102 | @code{->} or @code{.} and the preceding line ends with one or more | 6102 | @code{->} or @code{.} and the preceding line ends with one or more |
| 6103 | function calls preceded by the same token, then the arrow is lined up | 6103 | function calls preceded by the same token, then the arrow is lined up |
| 6104 | with the first of those tokens. E.g: | 6104 | with the first of those tokens. E.g.: |
| 6105 | 6105 | ||
| 6106 | @example | 6106 | @example |
| 6107 | @group | 6107 | @group |
| @@ -6133,7 +6133,7 @@ Line up C++ stream operators (i.e., @samp{<<} and @samp{>>}). | |||
| 6133 | @findex lineup-string-cont (c-) | 6133 | @findex lineup-string-cont (c-) |
| 6134 | Line up a continued string under the one it continues. A continued | 6134 | Line up a continued string under the one it continues. A continued |
| 6135 | string in this sense is where a string literal follows directly after | 6135 | string in this sense is where a string literal follows directly after |
| 6136 | another one. E.g: | 6136 | another one. E.g.: |
| 6137 | 6137 | ||
| 6138 | @example | 6138 | @example |
| 6139 | @group | 6139 | @group |
| @@ -6242,7 +6242,7 @@ is equivalent to @code{(@r{@var{value}} . -1000)}. | |||
| 6242 | @findex lineup-knr-region-comment (c-) | 6242 | @findex lineup-knr-region-comment (c-) |
| 6243 | Line up a comment in the ``K&R region'' with the declaration. That is | 6243 | Line up a comment in the ``K&R region'' with the declaration. That is |
| 6244 | the region between the function or class header and the beginning of the | 6244 | the region between the function or class header and the beginning of the |
| 6245 | block. E.g: | 6245 | block. E.g.: |
| 6246 | 6246 | ||
| 6247 | @example | 6247 | @example |
| 6248 | @group | 6248 | @group |
| @@ -6282,7 +6282,7 @@ already has; think of it as an identity function for lineups. | |||
| 6282 | @defun c-lineup-cpp-define | 6282 | @defun c-lineup-cpp-define |
| 6283 | @findex lineup-cpp-define (c-) | 6283 | @findex lineup-cpp-define (c-) |
| 6284 | Line up macro continuation lines according to the indentation of the | 6284 | Line up macro continuation lines according to the indentation of the |
| 6285 | construct preceding the macro. E.g: | 6285 | construct preceding the macro. E.g.: |
| 6286 | 6286 | ||
| 6287 | @example | 6287 | @example |
| 6288 | @group | 6288 | @group |
| @@ -6409,7 +6409,7 @@ that those lines could be analyzed as either topmost-intro-cont or | |||
| 6409 | statement-cont. It's used for @code{topmost-intro-cont} by default, but | 6409 | statement-cont. It's used for @code{topmost-intro-cont} by default, but |
| 6410 | you might consider using @code{+} instead.}. For lines preceding a | 6410 | you might consider using @code{+} instead.}. For lines preceding a |
| 6411 | definition, zero is used. For other lines, @code{c-basic-offset} is | 6411 | definition, zero is used. For other lines, @code{c-basic-offset} is |
| 6412 | added to the indentation. E.g: | 6412 | added to the indentation. E.g.: |
| 6413 | 6413 | ||
| 6414 | @example | 6414 | @example |
| 6415 | @group | 6415 | @group |
| @@ -6475,13 +6475,14 @@ think is generally useful, you're very welcome to contribute it; | |||
| 6475 | please contact @email{bug-cc-mode@@gnu.org}. | 6475 | please contact @email{bug-cc-mode@@gnu.org}. |
| 6476 | 6476 | ||
| 6477 | Line-up functions are passed a single argument, the syntactic | 6477 | Line-up functions are passed a single argument, the syntactic |
| 6478 | element (see below). The return value is a @code{c-offsets-alist} | 6478 | element (see below). At the time of the call, point will be somewhere |
| 6479 | offset specification: for example, an integer, a symbol such as | 6479 | on the line being indented. The return value is a |
| 6480 | @code{+}, a vector, @code{nil}@footnote{Returning @code{nil} is useful | 6480 | @code{c-offsets-alist} offset specification: for example, an integer, |
| 6481 | when the offset specification for a syntactic element is a list | 6481 | a symbol such as @code{+}, a vector, @code{nil}@footnote{Returning |
| 6482 | containing the line-up function (@pxref{c-offsets-alist}).}, or even | 6482 | @code{nil} is useful when the offset specification for a syntactic |
| 6483 | another line-up function. Full details of these are in | 6483 | element is a list containing the line-up function |
| 6484 | @ref{c-offsets-alist}. | 6484 | (@pxref{c-offsets-alist}).}, or even another line-up function. Full |
| 6485 | details of these are in @ref{c-offsets-alist}. | ||
| 6485 | 6486 | ||
| 6486 | Line-up functions must not move point or change the content of the | 6487 | Line-up functions must not move point or change the content of the |
| 6487 | buffer (except temporarily). They are however allowed to do | 6488 | buffer (except temporarily). They are however allowed to do |
| @@ -6507,7 +6508,7 @@ earlier. Line-up functions are still passed this cons cell, so as to | |||
| 6507 | preserve compatibility with older configurations. In the future, we | 6508 | preserve compatibility with older configurations. In the future, we |
| 6508 | may decide to convert to using the full list format---you can prepare | 6509 | may decide to convert to using the full list format---you can prepare |
| 6509 | your setup for this by using the access functions | 6510 | your setup for this by using the access functions |
| 6510 | (@code{c-langelem-sym}, etc.) described below. | 6511 | (@code{c-langelem-sym}, etc.)@: described below. |
| 6511 | 6512 | ||
| 6512 | @vindex c-syntactic-element | 6513 | @vindex c-syntactic-element |
| 6513 | @vindex syntactic-element (c-) | 6514 | @vindex syntactic-element (c-) |
diff --git a/doc/misc/cl.texi b/doc/misc/cl.texi index c3657415078..83df411cb23 100644 --- a/doc/misc/cl.texi +++ b/doc/misc/cl.texi | |||
| @@ -703,14 +703,6 @@ The type symbol @code{real} is a synonym for @code{number}, and | |||
| 703 | The type symbols @code{character} and @code{string-char} match | 703 | The type symbols @code{character} and @code{string-char} match |
| 704 | integers in the range from 0 to 255. | 704 | integers in the range from 0 to 255. |
| 705 | 705 | ||
| 706 | @c No longer relevant, so covered by first item above (float -> floatp). | ||
| 707 | @ignore | ||
| 708 | @item | ||
| 709 | The type symbol @code{float} uses the @code{cl-floatp-safe} predicate | ||
| 710 | defined by this package rather than @code{floatp}, so it will work | ||
| 711 | correctly even in Emacs versions without floating-point support. | ||
| 712 | @end ignore | ||
| 713 | |||
| 714 | @item | 706 | @item |
| 715 | The type list @code{(integer @var{low} @var{high})} represents all | 707 | The type list @code{(integer @var{low} @var{high})} represents all |
| 716 | integers between @var{low} and @var{high}, inclusive. Either bound | 708 | integers between @var{low} and @var{high}, inclusive. Either bound |
| @@ -748,7 +740,7 @@ This function attempts to convert @var{object} to the specified | |||
| 748 | @var{type}. If @var{object} is already of that type as determined by | 740 | @var{type}. If @var{object} is already of that type as determined by |
| 749 | @code{cl-typep}, it is simply returned. Otherwise, certain types of | 741 | @code{cl-typep}, it is simply returned. Otherwise, certain types of |
| 750 | conversions will be made: If @var{type} is any sequence type | 742 | conversions will be made: If @var{type} is any sequence type |
| 751 | (@code{string}, @code{list}, etc.) then @var{object} will be | 743 | (@code{string}, @code{list}, etc.)@: then @var{object} will be |
| 752 | converted to that type if possible. If @var{type} is | 744 | converted to that type if possible. If @var{type} is |
| 753 | @code{character}, then strings of length one and symbols with | 745 | @code{character}, then strings of length one and symbols with |
| 754 | one-character names can be coerced. If @var{type} is @code{float}, | 746 | one-character names can be coerced. If @var{type} is @code{float}, |
| @@ -817,8 +809,9 @@ not compare strings against vectors of integers. | |||
| 817 | Also note that the Common Lisp functions @code{member} and @code{assoc} | 809 | Also note that the Common Lisp functions @code{member} and @code{assoc} |
| 818 | use @code{eql} to compare elements, whereas Emacs Lisp follows the | 810 | use @code{eql} to compare elements, whereas Emacs Lisp follows the |
| 819 | MacLisp tradition and uses @code{equal} for these two functions. | 811 | MacLisp tradition and uses @code{equal} for these two functions. |
| 820 | In Emacs, use @code{memq} (or @code{cl-member}) and @code{assq} (or | 812 | The functions @code{cl-member} and @code{cl-assoc} use @code{eql}, |
| 821 | @code{cl-assoc}) to get functions which use @code{eql} for comparisons. | 813 | as in Common Lisp. The standard Emacs Lisp functions @code{memq} and |
| 814 | @code{assq} use @code{eq}, and the standard @code{memql} uses @code{eql}. | ||
| 822 | 815 | ||
| 823 | @node Control Structure | 816 | @node Control Structure |
| 824 | @chapter Control Structure | 817 | @chapter Control Structure |
| @@ -2920,14 +2913,6 @@ This predicate tests whether @var{integer} is even. It is an | |||
| 2920 | error if the argument is not an integer. | 2913 | error if the argument is not an integer. |
| 2921 | @end defun | 2914 | @end defun |
| 2922 | 2915 | ||
| 2923 | @ignore | ||
| 2924 | @defun cl-floatp-safe object | ||
| 2925 | This predicate tests whether @var{object} is a floating-point | ||
| 2926 | number. On systems that support floating-point, this is equivalent | ||
| 2927 | to @code{floatp}. On other systems, this always returns @code{nil}. | ||
| 2928 | @end defun | ||
| 2929 | @end ignore | ||
| 2930 | |||
| 2931 | @node Numerical Functions | 2916 | @node Numerical Functions |
| 2932 | @section Numerical Functions | 2917 | @section Numerical Functions |
| 2933 | 2918 | ||
diff --git a/doc/misc/dired-x.texi b/doc/misc/dired-x.texi index 2cf25641350..1e3d11f6dc6 100644 --- a/doc/misc/dired-x.texi +++ b/doc/misc/dired-x.texi | |||
| @@ -882,7 +882,7 @@ Dired buffers, is like @code{shell-command}, but it runs with | |||
| 882 | 882 | ||
| 883 | @file{dired-x} provides a method of visiting or editing a file mentioned in | 883 | @file{dired-x} provides a method of visiting or editing a file mentioned in |
| 884 | the buffer you are viewing (e.g., a mail buffer, a news article, a | 884 | the buffer you are viewing (e.g., a mail buffer, a news article, a |
| 885 | @file{README} file, etc.) or to test if that file exists. You can then modify | 885 | @file{README} file, etc.)@: or to test if that file exists. You can then modify |
| 886 | this in the minibuffer after snatching the file name. | 886 | this in the minibuffer after snatching the file name. |
| 887 | 887 | ||
| 888 | When installed @file{dired-x} will substitute @code{dired-x-find-file} for | 888 | When installed @file{dired-x} will substitute @code{dired-x-find-file} for |
diff --git a/doc/misc/ede.texi b/doc/misc/ede.texi index cadd815025c..f2e787fd588 100644 --- a/doc/misc/ede.texi +++ b/doc/misc/ede.texi | |||
| @@ -450,9 +450,11 @@ ede-new}, or click on the @samp{Create Project} item in the | |||
| 450 | 450 | ||
| 451 | The @command{ede-new} command prompts for the type of project you | 451 | The @command{ede-new} command prompts for the type of project you |
| 452 | would like to create. Each project type has its own benefits or | 452 | would like to create. Each project type has its own benefits or |
| 453 | language specific enhancements. @ede{} supports four different | 453 | language specific enhancements. Not all projects that @ede{} supports |
| 454 | project types: @samp{Make}, @samp{Automake}, @samp{direct Automake}, | 454 | also allow creating a new project. Projects such as @code{emacs} |
| 455 | and @samp{Simple}. | 455 | or @code{linux} are designed to recognize existing projects only. |
| 456 | Project types such as @samp{Make} and @samp{Automake} do support | ||
| 457 | creating new project types with @command{ede-new}. | ||
| 456 | 458 | ||
| 457 | @itemize | 459 | @itemize |
| 458 | @item | 460 | @item |
| @@ -468,21 +470,6 @@ Unlike a @samp{Make} project, this project autogenerates a | |||
| 468 | @file{Makefile.am} file. @ede{} handles the Automake bootstrapping | 470 | @file{Makefile.am} file. @ede{} handles the Automake bootstrapping |
| 469 | routines, which import and maintain a @file{configure.am} script and | 471 | routines, which import and maintain a @file{configure.am} script and |
| 470 | other required files. | 472 | other required files. |
| 471 | |||
| 472 | @item | ||
| 473 | For the @samp{direct Automake} project type, @ede{} reads directly | ||
| 474 | from the Automake files. | ||
| 475 | |||
| 476 | You cannot create direct Automake projects with the @command{ede-new} | ||
| 477 | command. Instead, when you visit a project with existing Automake | ||
| 478 | files, @ede{} automatically detects them. | ||
| 479 | |||
| 480 | @item | ||
| 481 | The @samp{Simple} project type provides light-weight constructs for | ||
| 482 | identifying a project root and looking up files. If you already have | ||
| 483 | a non-@ede{} project infrastructure, you can use a @samp{Simple} | ||
| 484 | project to provide other Emacs packages, such as Semantic, with some | ||
| 485 | information about the project. @xref{Simple projects}. | ||
| 486 | @end itemize | 473 | @end itemize |
| 487 | 474 | ||
| 488 | A subproject is merely a project in a subdirectory of another project. | 475 | A subproject is merely a project in a subdirectory of another project. |
| @@ -795,24 +782,19 @@ able to find your SDK and compile your programs. | |||
| 795 | @node Simple projects | 782 | @node Simple projects |
| 796 | @section Simple Projects | 783 | @section Simple Projects |
| 797 | 784 | ||
| 798 | There is a wide array of Simple projects. The root for simple | 785 | There is a wide array of simple projects. In this case a simple |
| 799 | projects is the class @code{ede-simple-project}. This handles the | 786 | project is one that detects, or is directed to identify a directory as |
| 800 | infrastructure of storing a .ede file if needed. | 787 | belonging to a project, but doesn't provide many features of a typical |
| 801 | 788 | @ede{} project. Having the project however allows tools such as | |
| 802 | The class @code{ede-simple-project} is designed to be subclassed. | 789 | @semantic{} to find sources and perform project level completions. |
| 803 | Then key @ede{} methods can be overridden to provide a quick wrapper | ||
| 804 | over any project. | ||
| 805 | 790 | ||
| 806 | A second project type is @code{ede-cpp-root}. This project type is | ||
| 807 | designed to be created for a directory hierarchy full of C/C++ code. | ||
| 808 | It can be configured with minimal lisp knowledge to do header file | ||
| 809 | lookup for @semantic{}, improving code completion performance. | ||
| 810 | 791 | ||
| 811 | @menu | 792 | @menu |
| 812 | * ede-cpp-root:: This project marks the root of a C/C++ code project. | 793 | * ede-cpp-root:: This project marks the root of a C/C++ code project. |
| 813 | * ede-java-root:: This project marks the root of a Java project. | 794 | * ede-java-root:: This project marks the root of a Java project. |
| 814 | * ede-emacs:: A project for working with Emacs. | 795 | * ede-emacs:: A project for working with Emacs. |
| 815 | * ede-linux:: A project for working with Linux kernels. | 796 | * ede-linux:: A project for working with Linux kernels. |
| 797 | * ede-generic-project:: A project type for wrapping build systems with EDE. | ||
| 816 | * Custom Locate:: Customizing how to locate files in a simple project | 798 | * Custom Locate:: Customizing how to locate files in a simple project |
| 817 | @end menu | 799 | @end menu |
| 818 | 800 | ||
| @@ -1045,7 +1027,7 @@ tree, and enables EDE project mode for it. | |||
| 1045 | It pre-populates the C Preprocessor symbol map for correct parsing, | 1027 | It pre-populates the C Preprocessor symbol map for correct parsing, |
| 1046 | and has an optimized include file identification function. | 1028 | and has an optimized include file identification function. |
| 1047 | 1029 | ||
| 1048 | @node ede-linux, Custom Locate, ede-emacs, Simple projects | 1030 | @node ede-linux, ede-generic-project, ede-emacs, Simple projects |
| 1049 | @subsection ede-linux | 1031 | @subsection ede-linux |
| 1050 | 1032 | ||
| 1051 | The @code{ede-linux} project will automatically identify a Linux | 1033 | The @code{ede-linux} project will automatically identify a Linux |
| @@ -1054,7 +1036,60 @@ Kernel source tree, and enable EDE project mode for it. | |||
| 1054 | It pre-populates the C Preprocessor symbol map for reasonable parsing, | 1036 | It pre-populates the C Preprocessor symbol map for reasonable parsing, |
| 1055 | and has an optimized include file identification function. | 1037 | and has an optimized include file identification function. |
| 1056 | 1038 | ||
| 1057 | @node Custom Locate, , ede-linux, Simple projects | 1039 | @node ede-generic-project, Custom Locate, ede-linux, Simple projects |
| 1040 | @subsection ede-generic-project | ||
| 1041 | |||
| 1042 | The @code{ede-generic-project} is a project system that makes it easy | ||
| 1043 | to wrap up different kinds of build systems as an EDE project. | ||
| 1044 | Projects such as @ref{ede-emacs} require coding skills to create. | ||
| 1045 | Generic projects also require writing Emacs Lisp code, but the | ||
| 1046 | requirements are minimal. You can then use | ||
| 1047 | @command{customize-project} to configure build commands, includes, and | ||
| 1048 | other options for that project. The configuration is saved in | ||
| 1049 | @file{EDEConfig.el}. | ||
| 1050 | |||
| 1051 | Generic projects are disabled by default because they have the | ||
| 1052 | potential to interfere with other projects. To use the generic | ||
| 1053 | project system to start detecting projects, you need to enable it. | ||
| 1054 | |||
| 1055 | @deffn Command ede-enable-generic-projects | ||
| 1056 | Enable generic project loaders. | ||
| 1057 | |||
| 1058 | This enables generic loaders for projects that are detected using | ||
| 1059 | either a @file{Makefile}, @file{SConstruct}, or @file{CMakeLists}. | ||
| 1060 | |||
| 1061 | You do not need to use this command if you create your own generic | ||
| 1062 | project type. | ||
| 1063 | @end deffn | ||
| 1064 | |||
| 1065 | If you want to create your own generic project loader, you need to | ||
| 1066 | define your own project and target classes, and create an autoloader. | ||
| 1067 | The example for Makefiles looks like this: | ||
| 1068 | |||
| 1069 | @example | ||
| 1070 | ;;; MAKEFILE | ||
| 1071 | |||
| 1072 | (defclass ede-generic-makefile-project (ede-generic-project) | ||
| 1073 | ((buildfile :initform "Makefile") | ||
| 1074 | ) | ||
| 1075 | "Generic Project for makefiles.") | ||
| 1076 | |||
| 1077 | (defmethod ede-generic-setup-configuration ((proj ede-generic-makefile-project) config) | ||
| 1078 | "Setup a configuration for Make." | ||
| 1079 | (oset config build-command "make -k") | ||
| 1080 | (oset config debug-command "gdb ") | ||
| 1081 | ) | ||
| 1082 | |||
| 1083 | (ede-generic-new-autoloader "generic-makefile" "Make" | ||
| 1084 | "Makefile" 'ede-generic-makefile-project) | ||
| 1085 | @end example | ||
| 1086 | |||
| 1087 | This example project will detect any directory with the file | ||
| 1088 | @file{Makefile} in it as belonging to this project type. | ||
| 1089 | Customization of the project will allow you to make build and debug | ||
| 1090 | commands more precise. | ||
| 1091 | |||
| 1092 | @node Custom Locate, , ede-generic-project, Simple projects | ||
| 1058 | @subsection Custom Locate | 1093 | @subsection Custom Locate |
| 1059 | 1094 | ||
| 1060 | The various simple project styles all have one major drawback, which | 1095 | The various simple project styles all have one major drawback, which |
| @@ -1062,8 +1097,6 @@ is that the files in the project are not completely known to EDE@. | |||
| 1062 | When the EDE API is used to try and file files by some reference name | 1097 | When the EDE API is used to try and file files by some reference name |
| 1063 | in the project, then that could fail. | 1098 | in the project, then that could fail. |
| 1064 | 1099 | ||
| 1065 | @@TODO - Add ID Utils and CScope examples | ||
| 1066 | |||
| 1067 | @ede{} can therefore use some external locate commands, such as the unix | 1100 | @ede{} can therefore use some external locate commands, such as the unix |
| 1068 | ``locate'' command, or ``GNU Global''. | 1101 | ``locate'' command, or ``GNU Global''. |
| 1069 | 1102 | ||
| @@ -1093,6 +1126,11 @@ You can add your own locate tool but subclassing from | |||
| 1093 | methods. See the code in @file{ede-locate.el} for GNU Global as a | 1126 | methods. See the code in @file{ede-locate.el} for GNU Global as a |
| 1094 | simple example. | 1127 | simple example. |
| 1095 | 1128 | ||
| 1129 | @@TODO - Add ID Utils and CScope examples | ||
| 1130 | |||
| 1131 | More on idutils and cscope is in the CEDET manual, and they each have | ||
| 1132 | their own section. | ||
| 1133 | |||
| 1096 | @node Extending EDE, GNU Free Documentation License, Miscellaneous commands, Top | 1134 | @node Extending EDE, GNU Free Documentation License, Miscellaneous commands, Top |
| 1097 | @chapter Extending @ede{} | 1135 | @chapter Extending @ede{} |
| 1098 | 1136 | ||
| @@ -1918,7 +1956,7 @@ Type: @code{list} @* | |||
| 1918 | Default Value: @code{(quote ("/include" "../include/"))} | 1956 | Default Value: @code{(quote ("/include" "../include/"))} |
| 1919 | 1957 | ||
| 1920 | The default locate function expands filenames within a project. | 1958 | The default locate function expands filenames within a project. |
| 1921 | If a header file (.h, .hh, etc) name is expanded, and | 1959 | If a header file (.h, .hh, etc.)@: name is expanded, and |
| 1922 | the @code{:locate-fcn} slot is @code{nil}, then the include path is checked | 1960 | the @code{:locate-fcn} slot is @code{nil}, then the include path is checked |
| 1923 | first, and other directories are ignored. For very large | 1961 | first, and other directories are ignored. For very large |
| 1924 | projects, this optimization can save a lot of time. | 1962 | projects, this optimization can save a lot of time. |
diff --git a/doc/misc/ediff.texi b/doc/misc/ediff.texi index 1e4c888a9e7..378eee08c51 100644 --- a/doc/misc/ediff.texi +++ b/doc/misc/ediff.texi | |||
| @@ -1148,7 +1148,7 @@ packages also use this method). | |||
| 1148 | Regular files are treated by the @code{patch} utility in the usual manner, | 1148 | Regular files are treated by the @code{patch} utility in the usual manner, |
| 1149 | i.e., the original is renamed into @file{source-name.orig} and the result | 1149 | i.e., the original is renamed into @file{source-name.orig} and the result |
| 1150 | of the patch is placed into the file source-name (@file{_orig} is used | 1150 | of the patch is placed into the file source-name (@file{_orig} is used |
| 1151 | on systems like DOS, etc.) | 1151 | on systems like DOS, etc.). |
| 1152 | 1152 | ||
| 1153 | @node Customization | 1153 | @node Customization |
| 1154 | @chapter Customization | 1154 | @chapter Customization |
diff --git a/doc/misc/emacs-mime.texi b/doc/misc/emacs-mime.texi index 216e4733cd1..5f377e57725 100644 --- a/doc/misc/emacs-mime.texi +++ b/doc/misc/emacs-mime.texi | |||
| @@ -26,8 +26,8 @@ modify this GNU manual.'' | |||
| 26 | @end quotation | 26 | @end quotation |
| 27 | @end copying | 27 | @end copying |
| 28 | 28 | ||
| 29 | @c Node ``Interface Functions'' uses Latin-1 characters | 29 | @c Node ``Interface Functions'' uses non-ASCII characters |
| 30 | @documentencoding ISO-8859-1 | 30 | @documentencoding UTF-8 |
| 31 | 31 | ||
| 32 | @dircategory Emacs lisp libraries | 32 | @dircategory Emacs lisp libraries |
| 33 | @direntry | 33 | @direntry |
| @@ -993,7 +993,7 @@ Customization}). | |||
| 993 | The charset to be used can be overridden by setting the @code{charset} | 993 | The charset to be used can be overridden by setting the @code{charset} |
| 994 | @acronym{MML} tag (@pxref{MML Definition}) when composing the message. | 994 | @acronym{MML} tag (@pxref{MML Definition}) when composing the message. |
| 995 | 995 | ||
| 996 | The encoding of characters (quoted-printable, 8bit etc) is orthogonal | 996 | The encoding of characters (quoted-printable, 8bit, etc.)@: is orthogonal |
| 997 | to the discussion here, and is controlled by the variables | 997 | to the discussion here, and is controlled by the variables |
| 998 | @code{mm-body-charset-encoding-alist} and | 998 | @code{mm-body-charset-encoding-alist} and |
| 999 | @code{mm-content-transfer-encoding-defaults} (@pxref{Encoding | 999 | @code{mm-content-transfer-encoding-defaults} (@pxref{Encoding |
| @@ -1890,5 +1890,5 @@ Documentation of the text/plain format parameter for flowed text. | |||
| 1890 | 1890 | ||
| 1891 | @c Local Variables: | 1891 | @c Local Variables: |
| 1892 | @c mode: texinfo | 1892 | @c mode: texinfo |
| 1893 | @c coding: iso-8859-1 | 1893 | @c coding: utf-8 |
| 1894 | @c End: | 1894 | @c End: |
diff --git a/doc/misc/eshell.texi b/doc/misc/eshell.texi index 504940c5c6b..ec01f731daf 100644 --- a/doc/misc/eshell.texi +++ b/doc/misc/eshell.texi | |||
| @@ -2,6 +2,7 @@ | |||
| 2 | @c %**start of header | 2 | @c %**start of header |
| 3 | @setfilename ../../info/eshell | 3 | @setfilename ../../info/eshell |
| 4 | @settitle Eshell: The Emacs Shell | 4 | @settitle Eshell: The Emacs Shell |
| 5 | @defindex cm | ||
| 5 | @synindex vr fn | 6 | @synindex vr fn |
| 6 | @c %**end of header | 7 | @c %**end of header |
| 7 | 8 | ||
| @@ -42,7 +43,7 @@ modify this GNU manual.'' | |||
| 42 | @c -release- | 43 | @c -release- |
| 43 | @end ignore | 44 | @end ignore |
| 44 | @sp 3 | 45 | @sp 3 |
| 45 | @center John Wiegley | 46 | @center John Wiegley & Aidan Gauland |
| 46 | @c -date- | 47 | @c -date- |
| 47 | 48 | ||
| 48 | @page | 49 | @page |
| @@ -75,15 +76,14 @@ handling the sort of tasks accomplished by those tools. | |||
| 75 | * What is Eshell?:: A brief introduction to the Emacs Shell. | 76 | * What is Eshell?:: A brief introduction to the Emacs Shell. |
| 76 | * Command basics:: The basics of command usage. | 77 | * Command basics:: The basics of command usage. |
| 77 | * Commands:: | 78 | * Commands:: |
| 78 | * Arguments:: | 79 | * Expansion:: |
| 79 | * Input/Output:: | 80 | * Input/Output:: |
| 80 | * Process control:: | ||
| 81 | * Extension modules:: | 81 | * Extension modules:: |
| 82 | * Extras and Goodies:: | ||
| 83 | * Bugs and ideas:: Known problems, and future ideas. | 82 | * Bugs and ideas:: Known problems, and future ideas. |
| 84 | * GNU Free Documentation License:: The license for this documentation. | 83 | * GNU Free Documentation License:: The license for this documentation. |
| 85 | * Concept Index:: | 84 | * Concept Index:: |
| 86 | * Function and Variable Index:: | 85 | * Function and Variable Index:: |
| 86 | * Command Index:: | ||
| 87 | * Key Index:: | 87 | * Key Index:: |
| 88 | @end menu | 88 | @end menu |
| 89 | 89 | ||
| @@ -278,83 +278,56 @@ on your mind. Have fun! | |||
| 278 | @node Commands | 278 | @node Commands |
| 279 | @chapter Commands | 279 | @chapter Commands |
| 280 | 280 | ||
| 281 | In a command shell, everything is done by invoking commands. This | ||
| 282 | chapter covers command invocations in Eshell, including the command | ||
| 283 | history and invoking commands in a script file. | ||
| 284 | |||
| 281 | @menu | 285 | @menu |
| 282 | * Invocation:: | 286 | * Invocation:: |
| 283 | * Completion:: | 287 | * Arguments:: |
| 288 | * Built-ins:: | ||
| 289 | * Variables:: | ||
| 284 | * Aliases:: | 290 | * Aliases:: |
| 285 | * History:: | 291 | * History:: |
| 292 | * Completion:: | ||
| 293 | * for loop:: | ||
| 286 | * Scripts:: | 294 | * Scripts:: |
| 287 | * Built-ins:: | ||
| 288 | @end menu | 295 | @end menu |
| 289 | 296 | ||
| 290 | Essentially, a command shell is all about invoking commands---and | ||
| 291 | everything that entails. So understanding how Eshell invokes commands | ||
| 292 | is the key to comprehending how it all works. | ||
| 293 | |||
| 294 | @node Invocation | 297 | @node Invocation |
| 295 | @section Invocation | 298 | @section Invocation |
| 296 | |||
| 297 | Unlike regular system shells, Eshell never invokes kernel functions | 299 | Unlike regular system shells, Eshell never invokes kernel functions |
| 298 | directly, such as @code{exec(3)}. Instead, it uses the Lisp functions | 300 | directly, such as @code{exec(3)}. Instead, it uses the Lisp functions |
| 299 | available in the Emacs Lisp library. It does this by transforming the | 301 | available in the Emacs Lisp library. It does this by transforming the |
| 300 | command you specify into a callable Lisp form.@footnote{To see the Lisp | 302 | input line into a callable Lisp form.@footnote{To see the Lisp form that will be invoked, type: @samp{eshell-parse-command "echo hello"}} |
| 301 | form that will be invoked, type: @samp{eshell-parse-command "echo | 303 | |
| 302 | hello"}} | 304 | The command can be either an Elisp function or an external command. |
| 303 | 305 | Eshell looks first for an @ref{Aliases, alias} with the same name as the | |
| 304 | This transformation, from the string of text typed at the command | 306 | command, then a @ref{Built-ins, built-in command} or a function with the |
| 305 | prompt, to the ultimate invocation of either a Lisp function or external | 307 | same name; if there is no match, it then tries to execute it as an |
| 306 | command, follows these steps: | 308 | external command. |
| 307 | 309 | ||
| 308 | @enumerate | 310 | The semicolon (@code{;}) can be used to separate multiple command |
| 309 | @item Parse the command string into separate arguments. | 311 | invocations on a single line. A command invocation followed by an |
| 310 | @item | 312 | ampersand (@code{&}) will be run in the background. Eshell has no job |
| 311 | @end enumerate | 313 | control, so you can not suspend or background the current process, or |
| 312 | 314 | bring a background process into the foreground. That said, background | |
| 313 | @node Completion | 315 | processes invoked from Eshell can be controlled the same way as any |
| 314 | @section Completion | 316 | other background process in Emacs. |
| 315 | |||
| 316 | @node Aliases | ||
| 317 | @section Aliases | ||
| 318 | |||
| 319 | @node History | ||
| 320 | @section History | ||
| 321 | |||
| 322 | Eshell knows a few built-in variables: | ||
| 323 | |||
| 324 | @table @code | ||
| 325 | |||
| 326 | @item $+ | ||
| 327 | @vindex $+ | ||
| 328 | This variable always contains the current working directory. | ||
| 329 | |||
| 330 | @item $- | ||
| 331 | @vindex $- | ||
| 332 | This variable always contains the previous working directory (the | ||
| 333 | current working directory from before the last @code{cd} command). | ||
| 334 | |||
| 335 | @item $_ | ||
| 336 | @vindex $_ | ||
| 337 | It refers to the last argument of the last command. | ||
| 338 | |||
| 339 | @item $$ | ||
| 340 | @vindex $$ | ||
| 341 | This is the result of the last command. In case of an external | ||
| 342 | command, it is @code{t} or @code{nil}. | ||
| 343 | |||
| 344 | @item $? | ||
| 345 | @vindex $? | ||
| 346 | This variable contains the exit code of the last command (0 or 1 for | ||
| 347 | Lisp functions, based on successful completion). | ||
| 348 | |||
| 349 | @end table | ||
| 350 | |||
| 351 | @node Scripts | ||
| 352 | @section Scripts | ||
| 353 | 317 | ||
| 318 | @node Arguments | ||
| 319 | @section Arguments | ||
| 320 | Command arguments are passed to the functions as either strings or | ||
| 321 | numbers, depending on what the parser thinks they look like. If you | ||
| 322 | need to use a function that takes some other data type, you will need to | ||
| 323 | call it in an Elisp expression (which can also be used with | ||
| 324 | @ref{Expansion, expansions}). As with other shells, you can | ||
| 325 | escape special characters and spaces with the backslash (@code{\}) and | ||
| 326 | the single (@code{''}) and double (@code{""}) quotes. | ||
| 354 | 327 | ||
| 355 | @node Built-ins | 328 | @node Built-ins |
| 356 | @section Built-in commands | ||
| 357 | 329 | ||
| 330 | @section Built-in commands | ||
| 358 | Several commands are built-in in Eshell. In order to call the | 331 | Several commands are built-in in Eshell. In order to call the |
| 359 | external variant of a built-in command @code{foo}, you could call | 332 | external variant of a built-in command @code{foo}, you could call |
| 360 | @code{*foo}. Usually, this should not be necessary. You can check | 333 | @code{*foo}. Usually, this should not be necessary. You can check |
| @@ -368,7 +341,7 @@ eshell/ls is a compiled Lisp function in `em-ls.el' | |||
| 368 | @end example | 341 | @end example |
| 369 | 342 | ||
| 370 | If you want to discard a given built-in command, you could declare an | 343 | If you want to discard a given built-in command, you could declare an |
| 371 | alias, @ref{Aliases}. Eample: | 344 | alias, @ref{Aliases}. Example: |
| 372 | 345 | ||
| 373 | @example | 346 | @example |
| 374 | ~ $ which sudo | 347 | ~ $ which sudo |
| @@ -378,15 +351,96 @@ eshell/sudo is a compiled Lisp function in `em-unix.el' | |||
| 378 | sudo is an alias, defined as "*sudo $*" | 351 | sudo is an alias, defined as "*sudo $*" |
| 379 | @end example | 352 | @end example |
| 380 | 353 | ||
| 381 | Some of the built-in commands have a special behavior in Eshell: | 354 | @vindex eshell-prefer-lisp-functions |
| 355 | If you would prefer to use the built-in commands instead of the external | ||
| 356 | commands, set @var{eshell-prefer-lisp-functions} to @code{t}. | ||
| 357 | |||
| 358 | Some of the built-in commands have different behaviour from their | ||
| 359 | external counterparts, and some have no external counterpart. Most of | ||
| 360 | these will print a usage message when given the @code{--help} option. | ||
| 382 | 361 | ||
| 383 | @table @code | 362 | @table @code |
| 384 | 363 | ||
| 364 | @item addpath | ||
| 365 | @cmindex addpath | ||
| 366 | Adds a given path or set of paths to the PATH environment variable, or, | ||
| 367 | with no arguments, prints the current paths in this variable. | ||
| 368 | |||
| 369 | @item alias | ||
| 370 | @cmindex alias | ||
| 371 | Define an alias (@pxref{Aliases}). This does not add it to the aliases | ||
| 372 | file. | ||
| 373 | |||
| 374 | @item date | ||
| 375 | @cmindex date | ||
| 376 | Similar to, but slightly different from, the GNU Coreutils | ||
| 377 | @command{date} command. | ||
| 378 | |||
| 379 | @item define | ||
| 380 | @cmindex define | ||
| 381 | Define a varalias. @xref{Variable Aliases, , , elisp}. | ||
| 382 | |||
| 383 | @item diff | ||
| 384 | @cmindex diff | ||
| 385 | Use Emacs's internal @code{diff} (not to be confused with | ||
| 386 | @code{ediff}). @xref{Comparing Files, , , elisp}. | ||
| 387 | |||
| 388 | @item grep | ||
| 389 | @cmindex grep | ||
| 390 | @itemx agrep | ||
| 391 | @cmindex agrep | ||
| 392 | @itemx egrep | ||
| 393 | @cmindex egrep | ||
| 394 | @itemx fgrep | ||
| 395 | @cmindex fgrep | ||
| 396 | @itemx glimpse | ||
| 397 | @cmindex glimpse | ||
| 398 | The @command{grep} commands are compatible with GNU @command{grep}, but | ||
| 399 | use Emacs's internal @code{grep} instead. | ||
| 400 | |||
| 401 | @item info | ||
| 402 | @cmindex info | ||
| 403 | Same as the external @command{info} command, but uses Emacs's internal | ||
| 404 | Info reader. | ||
| 405 | |||
| 406 | @item jobs | ||
| 407 | @cmindex jobs | ||
| 408 | List subprocesses of the Emacs process, if any, using the function | ||
| 409 | @code{list-processes}. | ||
| 410 | |||
| 411 | @item kill | ||
| 412 | @cmindex kill | ||
| 413 | Kill processes. Takes a PID or a process object and an optional | ||
| 414 | signal specifier. | ||
| 415 | |||
| 416 | @item listify | ||
| 417 | @cmindex listify | ||
| 418 | Eshell version of @code{list}. Allows you to create a list using Eshell | ||
| 419 | syntax, rather than Elisp syntax. For example, @samp{listify foo bar} | ||
| 420 | and @code{("foo" "bar")} both evaluate to @code{("foo" "bar")}. | ||
| 421 | |||
| 422 | @item locate | ||
| 423 | @cmindex locate | ||
| 424 | Alias to Emacs's @code{locate} function, which simply runs the external | ||
| 425 | @command{locate} command and parses the results. @xref{Dired and `find', , , elisp}. | ||
| 426 | |||
| 427 | @item make | ||
| 428 | @cmindex make | ||
| 429 | Run @command{make} through @code{compile}. @xref{Running Compilations under Emacs, , , elisp}. | ||
| 430 | |||
| 431 | @item occur | ||
| 432 | @cmindex occur | ||
| 433 | Alias to Emacs's @code{occur}. @xref{Other Search-and-Loop Commands, , , elisp}. | ||
| 434 | |||
| 435 | @item printnl | ||
| 436 | @cmindex printnl | ||
| 437 | Print the arguments separated by newlines. | ||
| 438 | |||
| 385 | @item cd | 439 | @item cd |
| 386 | @findex cd | 440 | @cmindex cd |
| 387 | This command changes the current working directory. Usually, it is | 441 | This command changes the current working directory. Usually, it is |
| 388 | invoked as @samp{cd foo} where @file{foo} is the new working | 442 | invoked as @samp{cd foo} where @file{foo} is the new working directory. |
| 389 | directory. But @code{cd} knows about a few special arguments: | 443 | But @command{cd} knows about a few special arguments: |
| 390 | 444 | ||
| 391 | When it receives no argument at all, it changes to the home directory. | 445 | When it receives no argument at all, it changes to the home directory. |
| 392 | 446 | ||
| @@ -396,14 +450,73 @@ directory (this is the same as @samp{cd $-}). | |||
| 396 | The command @samp{cd =} shows the directory stack. Each line is | 450 | The command @samp{cd =} shows the directory stack. Each line is |
| 397 | numbered. | 451 | numbered. |
| 398 | 452 | ||
| 399 | With @samp{cd =foo}, Eshell searches the directory stack for a | 453 | With @samp{cd =foo}, Eshell searches the directory stack for a directory |
| 400 | directory matching the regular expression @samp{foo} and changes to | 454 | matching the regular expression @samp{foo} and changes to that |
| 401 | that directory. | 455 | directory. |
| 402 | 456 | ||
| 403 | With @samp{cd -42}, you can access the directory stack by number. | 457 | With @samp{cd -42}, you can access the directory stack by number. |
| 404 | 458 | ||
| 405 | @item history | 459 | @item su |
| 406 | @findex history | 460 | @cmindex su |
| 461 | @itemx sudo | ||
| 462 | @cmindex sudo | ||
| 463 | Uses TRAMP's @command{su} or @command{sudo} method to run a command via | ||
| 464 | @command{su} or @command{sudo}. | ||
| 465 | |||
| 466 | @end table | ||
| 467 | |||
| 468 | @subsection Built-in variables | ||
| 469 | Eshell knows a few built-in variables: | ||
| 470 | |||
| 471 | @table @code | ||
| 472 | |||
| 473 | @item $+ | ||
| 474 | @vindex $+ | ||
| 475 | This variable always contains the current working directory. | ||
| 476 | |||
| 477 | @item $- | ||
| 478 | @vindex $- | ||
| 479 | This variable always contains the previous working directory (the | ||
| 480 | current working directory from before the last @code{cd} command). | ||
| 481 | |||
| 482 | @item $_ | ||
| 483 | @vindex $_ | ||
| 484 | It refers to the last argument of the last command. | ||
| 485 | |||
| 486 | @item $$ | ||
| 487 | @vindex $$ | ||
| 488 | This is the result of the last command. In case of an external | ||
| 489 | command, it is @code{t} or @code{nil}. | ||
| 490 | |||
| 491 | @item $? | ||
| 492 | @vindex $? | ||
| 493 | This variable contains the exit code of the last command (0 or 1 for | ||
| 494 | Lisp functions, based on successful completion). | ||
| 495 | |||
| 496 | @end table | ||
| 497 | |||
| 498 | @node Variables | ||
| 499 | @section Variables | ||
| 500 | Since Eshell is just an Emacs REPL@footnote{Read-Eval-Print Loop}, it | ||
| 501 | does not have its own scope, and simply stores variables the same you | ||
| 502 | would in an Elisp program. Eshell provides a command version of | ||
| 503 | @code{setq} for convenience. | ||
| 504 | |||
| 505 | @node Aliases | ||
| 506 | @section Aliases | ||
| 507 | |||
| 508 | Aliases are commands that expand to a longer input line. For example, | ||
| 509 | @command{ll} is a common alias for @code{ls -l}, and would be defined | ||
| 510 | with the command invocation @samp{alias ll ls -l}; with this defined, | ||
| 511 | running @samp{ll foo} in Eshell will actually run @samp{ls -l foo}. | ||
| 512 | Aliases defined (or deleted) by the @command{alias} command are | ||
| 513 | automatically written to the file named by @var{eshell-aliases-file}, | ||
| 514 | which you can also edit directly (although you will have to manually | ||
| 515 | reload it). | ||
| 516 | |||
| 517 | @node History | ||
| 518 | @section History | ||
| 519 | @cmindex history | ||
| 407 | The @samp{history} command shows all commands kept in the history ring | 520 | The @samp{history} command shows all commands kept in the history ring |
| 408 | as numbered list. If the history ring contains | 521 | as numbered list. If the history ring contains |
| 409 | @code{eshell-history-size} commands, those numbers change after every | 522 | @code{eshell-history-size} commands, those numbers change after every |
| @@ -419,70 +532,233 @@ of the history ring. | |||
| 419 | argument of the last command beginning with @code{foo} is accessible | 532 | argument of the last command beginning with @code{foo} is accessible |
| 420 | by @code{!foo:n}. | 533 | by @code{!foo:n}. |
| 421 | 534 | ||
| 422 | @item su | 535 | The history ring is loaded from a file at the start of every session, |
| 423 | @findex su | 536 | and written back to the file at the end of every session. The file path |
| 424 | @itemx sudo | 537 | is specified in @var{eshell-history-file-name}. Unlike other shells, |
| 425 | @findex sudo | 538 | such as Bash, Eshell can not be configured to keep a history ring of a |
| 426 | @code{su} and @code{sudo} work as expected: they apply the following | 539 | different size than that of the history file. |
| 427 | commands (@code{su}), or the command being an argument (@code{sudo}) | 540 | |
| 428 | under the permissions of somebody else. | 541 | Since the default buffer navigation and searching key-bindings are |
| 429 | 542 | still present in the Eshell buffer, the commands for history | |
| 430 | This does not work only on | 543 | navigation and searching are bound to different keys: |
| 431 | the local host, but even on a remote one, when | 544 | |
| 432 | @code{default-directory} is a remote file name. The necessary | 545 | @table @kbd |
| 433 | proxy configuration of Tramp is performed | 546 | @item M-r |
| 434 | @ifinfo | 547 | @itemx M-s |
| 435 | automatically, @ref{Multi-hops, , , tramp}. | 548 | History I-search. |
| 436 | @end ifinfo | 549 | |
| 437 | @ifnotinfo | 550 | @item M-p |
| 438 | automatically. | 551 | @itemx M-n |
| 439 | @end ifnotinfo | 552 | Previous and next history line. If there is anything on the input |
| 440 | Example: | 553 | line when you run these commands, they will instead jump to the |
| 554 | precious or next line that begins with that string. | ||
| 555 | @end table | ||
| 556 | |||
| 557 | @node Completion | ||
| 558 | @section Completion | ||
| 559 | Eshell uses the pcomplete package for programmable completion, similar | ||
| 560 | to that of other command shells. Argument completion differs depending | ||
| 561 | on the preceding command: for example, possible completions for | ||
| 562 | @command{rmdir} are only directories, while @command{rm} completions can | ||
| 563 | be directories @emph{and} files. Eshell provides predefined completions | ||
| 564 | for the built-in functions and some common external commands, and you | ||
| 565 | can define your own for any command. | ||
| 566 | |||
| 567 | Eshell completion also works for lisp forms and glob patterns. If the | ||
| 568 | point is on a lisp form, then @key{TAB} will behave similarly to completion | ||
| 569 | in @code{elisp-mode} and @code{lisp-interaction-mode}. For glob | ||
| 570 | patterns, If there are few enough possible completions of the patterns, | ||
| 571 | they will be cycled when @key{TAB} is pressed, otherwise it will be removed | ||
| 572 | from the input line and the possible completions will be listed. | ||
| 573 | |||
| 574 | If you want to see the entire list of possible completions when it's | ||
| 575 | below the cycling threshold, press @kbd{M-?}. | ||
| 576 | |||
| 577 | @subsection pcomplete | ||
| 578 | Pcomplete, short for programmable completion, is the completion | ||
| 579 | library originally written for Eshell, but usable for command | ||
| 580 | completion@footnote{Command completion as opposed to code completion, | ||
| 581 | which is a beyond the scope of pcomplete.} in other modes. | ||
| 582 | |||
| 583 | Completions are defined as functions (with @code{defun}) named | ||
| 584 | @code{pcomplete/COMMAND}, where @code{COMMAND} is the name of the | ||
| 585 | command for which this function provides completions; you can also name | ||
| 586 | the function @code{pcomplete/MAJOR-MODE/COMMAND} to define completions | ||
| 587 | for a specific major mode. | ||
| 588 | |||
| 589 | @node for loop | ||
| 590 | @section @code{for} loop | ||
| 591 | Because Eshell commands can not (easily) be combined with lisp forms, | ||
| 592 | Eshell provides a command-oriented @command{for}-loop for convenience. | ||
| 593 | The syntax is as follows: | ||
| 441 | 594 | ||
| 442 | @example | 595 | @example |
| 443 | ~ $ cd /ssh:otherhost:/etc | 596 | @code{for VAR in TOKENS @{ command invocation(s) @}} |
| 444 | /ssh:user@@otherhost:/etc $ sudo find-file shadow | ||
| 445 | @end example | 597 | @end example |
| 446 | 598 | ||
| 447 | @end table | 599 | where @samp{TOKENS} is a space-separated sequence of values of |
| 448 | 600 | @var{VAR} for each iteration. This can even be the output of a | |
| 601 | command if @samp{TOKENS} is replaced with @samp{@{ command invocation @}}. | ||
| 449 | 602 | ||
| 450 | @node Arguments | 603 | @node Scripts |
| 451 | @chapter Arguments | 604 | @section Scripts |
| 605 | @cmindex source | ||
| 606 | @fnindex eshell-source-file | ||
| 607 | You can run Eshell scripts much like scripts for other shells; the main | ||
| 608 | difference is that since Eshell is not a system command, you have to run | ||
| 609 | it from within Emacs. An Eshell script is simply a file containing a | ||
| 610 | sequence of commands, as with almost any other shell script. Scripts | ||
| 611 | are invoked from Eshell with @command{source}, or from anywhere in Emacs | ||
| 612 | with @code{eshell-source-file}. | ||
| 613 | |||
| 614 | @cmindex . | ||
| 615 | If you wish to load a script into your @emph{current} environment, | ||
| 616 | rather than in a subshell, use the @code{.} command. | ||
| 617 | |||
| 618 | @node Expansion | ||
| 619 | @chapter Expansion | ||
| 620 | Expansion in a command shell is somewhat like macro expansion in macro | ||
| 621 | parsers (such as @command{cpp} and @command{m4}), but in a command | ||
| 622 | shell, they are less often used for constants, and usually for using | ||
| 623 | variables and string manipulation.@footnote{Eshell has no | ||
| 624 | string-manipulation expansions because the Elisp library already | ||
| 625 | provides many functions for this.} For example, @code{$var} on a line | ||
| 626 | expands to the value of the variable @code{var} when the line is | ||
| 627 | executed. Expansions are usually passed as arguments, but may also be | ||
| 628 | used as commands.@footnote{E.g., entering just @samp{$var} at the prompt | ||
| 629 | is equivalent to entering the value of @code{var} at the prompt.} | ||
| 452 | 630 | ||
| 453 | @menu | 631 | @menu |
| 454 | * The Parser:: | 632 | * Dollars Expansion:: |
| 455 | * Variables:: | ||
| 456 | * Substitution:: | ||
| 457 | * Globbing:: | 633 | * Globbing:: |
| 458 | * Predicates:: | ||
| 459 | @end menu | 634 | @end menu |
| 460 | 635 | ||
| 461 | @node The Parser | 636 | @node Dollars Expansion |
| 462 | @section The Parser | 637 | @section Dollars Expansion |
| 638 | Eshell has different @code{$} expansion syntax from other shells. There | ||
| 639 | are some similarities, but don't let these lull you into a false sense | ||
| 640 | of familiarity. | ||
| 463 | 641 | ||
| 464 | @node Variables | 642 | @table @code |
| 465 | @section Variables | ||
| 466 | 643 | ||
| 467 | @node Substitution | 644 | @item $var |
| 468 | @section Substitution | 645 | Expands to the value bound to @code{var}. This is the main way to use |
| 646 | variables in command invocations. | ||
| 469 | 647 | ||
| 470 | @node Globbing | 648 | @item $#var |
| 471 | @section Globbing | 649 | Expands to the length of the value bound to @code{var}. Raises an error |
| 650 | if the value is not a sequence (@pxref{Sequences Arrays and Vectors, Sequences, , elisp}). | ||
| 472 | 651 | ||
| 473 | @node Predicates | 652 | @item $(lisp) |
| 474 | @section Predicates | 653 | Expands to the result of evaluating the S-expression @code{(lisp)}. On |
| 654 | its own, this is identical to just @code{(lisp)}, but with the @code{$}, | ||
| 655 | it can be used in a string, such as @samp{/some/path/$(lisp).txt}. | ||
| 475 | 656 | ||
| 657 | @item $@{command@} | ||
| 658 | Returns the output of @command{command}, which can be any valid Eshell | ||
| 659 | command invocation, and may even contain expansions. | ||
| 476 | 660 | ||
| 477 | @node Input/Output | 661 | @item $var[i] |
| 478 | @chapter Input/Output | 662 | Expands to the @code{i}th element of the value bound to @code{var}. If |
| 663 | the value is a string, it will be split at whitespace to make it a list. | ||
| 664 | Again, raises an error if the value is not a sequence. | ||
| 665 | |||
| 666 | @item $var[: i] | ||
| 667 | As above, but now splitting occurs at the colon character. | ||
| 479 | 668 | ||
| 480 | @node Process control | 669 | @item $var[: i j] |
| 481 | @chapter Process control | 670 | As above, but instead of returning just a string, it now returns a list |
| 671 | of two strings. If the result is being interpolated into a larger | ||
| 672 | string, this list will be flattened into one big string, with each | ||
| 673 | element separated by a space. | ||
| 482 | 674 | ||
| 675 | @item $var["\\\\" i] | ||
| 676 | Separate on backslash characters. Actually, the first argument -- if it | ||
| 677 | doesn't have the form of a number, or a plain variable name -- can be | ||
| 678 | any regular expression. So to split on numbers, use @samp{$var["[0-9]+" 10 20]}. | ||
| 679 | |||
| 680 | @item $var[hello] | ||
| 681 | Calls @code{assoc} on @code{var} with @code{"hello"}, expecting it to be | ||
| 682 | an alist (@pxref{Association List Type, Association Lists, , elisp}). | ||
| 683 | |||
| 684 | @item $#var[hello] | ||
| 685 | Returns the length of the cdr of the element of @code{var} who car is equal | ||
| 686 | to @code{"hello"}. | ||
| 687 | |||
| 688 | @end table | ||
| 689 | |||
| 690 | @node Globbing | ||
| 691 | @section Globbing | ||
| 692 | Eshell's globbing syntax is very similar to that of Zsh. Users coming | ||
| 693 | from Bash can still use Bash-style globbing, as there are no | ||
| 694 | incompatibilities. Most globbing is pattern-based expansion, but there | ||
| 695 | is also predicate-based expansion. See @ref{Filename Generation, , , zsh} | ||
| 696 | for full syntax. To customize the syntax and behaviour of globbing in | ||
| 697 | Eshell see the Customize@footnote{@xref{Customization Settings, Customize, , elisp}.} | ||
| 698 | groups ``eshell-glob'' and ``eshell-pred''. | ||
| 699 | |||
| 700 | @node Input/Output | ||
| 701 | @chapter Input/Output | ||
| 702 | Since Eshell does not communicate with a terminal like most command | ||
| 703 | shells, IO is a little different. If you try to run programs from | ||
| 704 | within Eshell that are not line-oriented, such as programs that use | ||
| 705 | ncurses, you will just get garbage output, since the Eshell buffer is | ||
| 706 | not a terminal emulator. Eshell solves this problem by running | ||
| 707 | specified commands in Emacs's terminal emulator; to let Eshell know | ||
| 708 | which commands need to be run in a terminal, add them to the list | ||
| 709 | @var{eshell-visual-commands}. | ||
| 710 | |||
| 711 | Redirection is mostly the same in Eshell as it is in other command | ||
| 712 | shells. The output redirection operators @code{>} and @code{>>} as | ||
| 713 | well as pipes are supported, but there is not yet any support for | ||
| 714 | input redirection. Output can also be redirected to buffers, using | ||
| 715 | the @code{>>>} redirection operator, and Elisp functions, using | ||
| 716 | virtual devices. | ||
| 717 | |||
| 718 | The buffer redirection operator, @code{>>>}, expects a buffer object | ||
| 719 | on the right-hand side, into which it inserts the output of the | ||
| 720 | left-hand side. e.g., @samp{echo hello >>> #<buffer *scratch*>} | ||
| 721 | inserts the string @code{"hello"} into the @code{*scratch*} buffer. | ||
| 722 | |||
| 723 | @var{eshell-virtual-targets} is a list of mappings of virtual device | ||
| 724 | names to functions. Eshell comes with two virtual devices: | ||
| 725 | @file{/dev/kill}, which sends the text to the kill ring, and | ||
| 726 | @file{/dev/clip}, which sends text to the clipboard. | ||
| 727 | |||
| 728 | You can, of course, define your own virtual targets. They are defined | ||
| 729 | by adding a list of the form @code{("/dev/name" function mode)} to | ||
| 730 | @var{eshell-virtual-targets}. The first element is the device name; | ||
| 731 | @code{function} may be either a lambda or a function name. If | ||
| 732 | @code{mode} is nil, then the function is the output function; if it is | ||
| 733 | non-nil, then the function is passed the redirection mode as a | ||
| 734 | symbol--@code{overwrite} for @code{>}, @code{append} for @code{>>}, or | ||
| 735 | @code{insert} for @code{>>>}--and the function is expected to return | ||
| 736 | the output function. | ||
| 737 | |||
| 738 | The output function is called once on each line of output until | ||
| 739 | @code{nil} is passed, indicating end of output. | ||
| 483 | 740 | ||
| 484 | @node Extension modules | 741 | @node Extension modules |
| 485 | @chapter Extension modules | 742 | @chapter Extension modules |
| 743 | Eshell provides a facility for defining extension modules so that they | ||
| 744 | can be disabled and enabled without having to unload and reload them, | ||
| 745 | and to provide a common parent Customize group for the | ||
| 746 | modules.@footnote{ERC provides a similar module facility.} An Eshell | ||
| 747 | module is defined the same as any other library but one requirement: the | ||
| 748 | module must define a Customize@footnote{@xref{Customization Settings, Customize, , elisp}.} | ||
| 749 | group using @code{eshell-defgroup} (in place of @code{defgroup}) with | ||
| 750 | @code{eshell-module} as the parent group.@footnote{If the module has | ||
| 751 | no user-customizable options, then there is no need to define it as an | ||
| 752 | Eshell module.} You also need to load the following as shown: | ||
| 753 | |||
| 754 | @example | ||
| 755 | (eval-when-compile | ||
| 756 | (require 'cl) | ||
| 757 | (require 'esh-mode) | ||
| 758 | (require 'eshell)) | ||
| 759 | |||
| 760 | (require 'esh-util) | ||
| 761 | @end example | ||
| 486 | 762 | ||
| 487 | @menu | 763 | @menu |
| 488 | * Writing a module:: | 764 | * Writing a module:: |
| @@ -491,7 +767,6 @@ Example: | |||
| 491 | * Key rebinding:: | 767 | * Key rebinding:: |
| 492 | * Smart scrolling:: | 768 | * Smart scrolling:: |
| 493 | * Terminal emulation:: | 769 | * Terminal emulation:: |
| 494 | * Built-in UNIX commands:: | ||
| 495 | @end menu | 770 | @end menu |
| 496 | 771 | ||
| 497 | @node Writing a module | 772 | @node Writing a module |
| @@ -512,13 +787,6 @@ Example: | |||
| 512 | @node Terminal emulation | 787 | @node Terminal emulation |
| 513 | @section Terminal emulation | 788 | @section Terminal emulation |
| 514 | 789 | ||
| 515 | @node Built-in UNIX commands | ||
| 516 | @section Built-in UNIX commands | ||
| 517 | |||
| 518 | |||
| 519 | @node Extras and Goodies | ||
| 520 | @chapter Extras and Goodies | ||
| 521 | |||
| 522 | @node Bugs and ideas | 790 | @node Bugs and ideas |
| 523 | @chapter Bugs and ideas | 791 | @chapter Bugs and ideas |
| 524 | @cindex reporting bugs and ideas | 792 | @cindex reporting bugs and ideas |
| @@ -527,6 +795,8 @@ Example: | |||
| 527 | @cindex email to the author | 795 | @cindex email to the author |
| 528 | @cindex FAQ | 796 | @cindex FAQ |
| 529 | @cindex problems, list of common | 797 | @cindex problems, list of common |
| 798 | @cindex known bugs | ||
| 799 | @cindex bugs, known | ||
| 530 | 800 | ||
| 531 | If you find a bug or misfeature, don't hesitate to let me know! Send | 801 | If you find a bug or misfeature, don't hesitate to let me know! Send |
| 532 | email to @email{johnw@@gnu.org}. Feature requests should also be sent | 802 | email to @email{johnw@@gnu.org}. Feature requests should also be sent |
| @@ -537,16 +807,7 @@ If you have ideas for improvements, or if you have written some | |||
| 537 | extensions to this package, I would like to hear from you. I hope you | 807 | extensions to this package, I would like to hear from you. I hope you |
| 538 | find this package useful! | 808 | find this package useful! |
| 539 | 809 | ||
| 540 | @menu | 810 | Below is a complete list of known problems with Eshell version 2.4.2, |
| 541 | * Known problems:: | ||
| 542 | @end menu | ||
| 543 | |||
| 544 | @node Known problems | ||
| 545 | @section Known problems | ||
| 546 | @cindex known bugs | ||
| 547 | @cindex bugs, known | ||
| 548 | |||
| 549 | Below is complete list of known problems with Eshell version 2.4.2, | ||
| 550 | which is the version included with Emacs 22. | 811 | which is the version included with Emacs 22. |
| 551 | 812 | ||
| 552 | @table @asis | 813 | @table @asis |
| @@ -554,7 +815,7 @@ which is the version included with Emacs 22. | |||
| 554 | 815 | ||
| 555 | @item Differentiate between aliases and functions | 816 | @item Differentiate between aliases and functions |
| 556 | 817 | ||
| 557 | Allow for a bash-compatible syntax, such as: | 818 | Allow for a Bash-compatible syntax, such as: |
| 558 | 819 | ||
| 559 | @example | 820 | @example |
| 560 | alias arg=blah | 821 | alias arg=blah |
| @@ -838,7 +1099,7 @@ them; @code{min} would display the smallest figure, etc. | |||
| 838 | It would provide syntax, abbrev, highlighting and indenting support like | 1099 | It would provide syntax, abbrev, highlighting and indenting support like |
| 839 | @code{emacs-lisp-mode} and @code{shell-mode}. | 1100 | @code{emacs-lisp-mode} and @code{shell-mode}. |
| 840 | 1101 | ||
| 841 | @item In the history mechanism, finish the @command{bash}-style support | 1102 | @item In the history mechanism, finish the Bash-style support |
| 842 | 1103 | ||
| 843 | This means @samp{!n}, @samp{!#}, @samp{!:%}, and @samp{!:1-} as separate | 1104 | This means @samp{!n}, @samp{!#}, @samp{!:%}, and @samp{!:1-} as separate |
| 844 | from @samp{!:1*}. | 1105 | from @samp{!:1*}. |
| @@ -904,7 +1165,7 @@ it). | |||
| 904 | @item Make the shell spawning commands be visual | 1165 | @item Make the shell spawning commands be visual |
| 905 | 1166 | ||
| 906 | That is, make (@command{su}, @command{bash}, @command{telnet}, | 1167 | That is, make (@command{su}, @command{bash}, @command{telnet}, |
| 907 | @command{rlogin}, @command{rsh}, etc.) be part of | 1168 | @command{rlogin}, @command{rsh}, etc.)@: be part of |
| 908 | @code{eshell-visual-commands}. The only exception is if the shell is | 1169 | @code{eshell-visual-commands}. The only exception is if the shell is |
| 909 | being used to invoke a single command. Then, the behavior should be | 1170 | being used to invoke a single command. Then, the behavior should be |
| 910 | based on what that command is. | 1171 | based on what that command is. |
| @@ -1008,6 +1269,11 @@ Since it keeps the cursor up where the command was invoked. | |||
| 1008 | 1269 | ||
| 1009 | @printindex fn | 1270 | @printindex fn |
| 1010 | 1271 | ||
| 1272 | @node Command Index | ||
| 1273 | @unnumbered Command Index | ||
| 1274 | |||
| 1275 | @printindex cm | ||
| 1276 | |||
| 1011 | @node Key Index | 1277 | @node Key Index |
| 1012 | @unnumbered Key Index | 1278 | @unnumbered Key Index |
| 1013 | 1279 | ||
diff --git a/doc/misc/faq.texi b/doc/misc/faq.texi index 8f3c0c2d623..18e3340a474 100644 --- a/doc/misc/faq.texi +++ b/doc/misc/faq.texi | |||
| @@ -58,8 +58,7 @@ distribution.] | |||
| 58 | @node Top, FAQ notation, (dir), (dir) | 58 | @node Top, FAQ notation, (dir), (dir) |
| 59 | @top The GNU Emacs FAQ | 59 | @top The GNU Emacs FAQ |
| 60 | 60 | ||
| 61 | @c FIXME @today is just the day we ran `makeinfo'. | 61 | This is the GNU Emacs FAQ. |
| 62 | This is the GNU Emacs FAQ, last updated on @today{}. | ||
| 63 | 62 | ||
| 64 | This FAQ is maintained as a part of GNU Emacs. If you find any errors, | 63 | This FAQ is maintained as a part of GNU Emacs. If you find any errors, |
| 65 | or have any suggestions, please use @kbd{M-x report-emacs-bug} to report | 64 | or have any suggestions, please use @kbd{M-x report-emacs-bug} to report |
| @@ -1909,7 +1908,7 @@ following line to your @file{.emacs}: | |||
| 1909 | where @var{syntactic-symbol} is the name Emacs shows in the minibuffer | 1908 | where @var{syntactic-symbol} is the name Emacs shows in the minibuffer |
| 1910 | when you type @kbd{C-c C-o} at the beginning of the line, and | 1909 | when you type @kbd{C-c C-o} at the beginning of the line, and |
| 1911 | @var{offset} is one of the indentation symbols listed above (@code{+}, | 1910 | @var{offset} is one of the indentation symbols listed above (@code{+}, |
| 1912 | @code{/}, @code{0}, etc.) that you've chosen during the interactive | 1911 | @code{/}, @code{0}, etc.)@: that you've chosen during the interactive |
| 1913 | procedure. | 1912 | procedure. |
| 1914 | 1913 | ||
| 1915 | @item | 1914 | @item |
diff --git a/doc/misc/flymake.texi b/doc/misc/flymake.texi index 1807f108e3b..5dedda16ee1 100644 --- a/doc/misc/flymake.texi +++ b/doc/misc/flymake.texi | |||
| @@ -64,7 +64,7 @@ modify this GNU manual.'' | |||
| 64 | 64 | ||
| 65 | Flymake is a universal on-the-fly syntax checker implemented as an | 65 | Flymake is a universal on-the-fly syntax checker implemented as an |
| 66 | Emacs minor mode. Flymake runs the pre-configured syntax check tool | 66 | Emacs minor mode. Flymake runs the pre-configured syntax check tool |
| 67 | (compiler for C++ files, @code{perl} for perl files, etc.) in the | 67 | (compiler for C++ files, @code{perl} for perl files, etc.)@: in the |
| 68 | background, passing it a temporary copy of the current buffer, and | 68 | background, passing it a temporary copy of the current buffer, and |
| 69 | parses the output for known error/warning message patterns. Flymake | 69 | parses the output for known error/warning message patterns. Flymake |
| 70 | then highlights erroneous lines (i.e., lines for which at least one | 70 | then highlights erroneous lines (i.e., lines for which at least one |
| @@ -210,14 +210,14 @@ The following statuses are defined. | |||
| 210 | @multitable @columnfractions 0.25 0.75 | 210 | @multitable @columnfractions 0.25 0.75 |
| 211 | @item Flymake* or Flymake:E/W* | 211 | @item Flymake* or Flymake:E/W* |
| 212 | @tab Flymake is currently running. For the second case, E/W contains the | 212 | @tab Flymake is currently running. For the second case, E/W contains the |
| 213 | error and warning count for the previous run. | 213 | error and warning count for the previous run. |
| 214 | 214 | ||
| 215 | @item Flymake | 215 | @item Flymake |
| 216 | @tab Syntax check is not running. Usually this means syntax check was | 216 | @tab Syntax check is not running. Usually this means syntax check was |
| 217 | successfully passed (no errors, no warnings). Other possibilities are: | 217 | successfully passed (no errors, no warnings). Other possibilities are: |
| 218 | syntax check was killed as a result of executing | 218 | syntax check was killed as a result of executing |
| 219 | @code{flymake-compile}, or syntax check cannot start as compilation | 219 | @code{flymake-compile}, or syntax check cannot start as compilation |
| 220 | is currently in progress. | 220 | is currently in progress. |
| 221 | 221 | ||
| 222 | @item Flymake:E/W | 222 | @item Flymake:E/W |
| 223 | @tab Number of errors/warnings found by the syntax check process. | 223 | @tab Number of errors/warnings found by the syntax check process. |
| @@ -232,9 +232,9 @@ OFF for the buffer. | |||
| 232 | @multitable @columnfractions 0.25 0.75 | 232 | @multitable @columnfractions 0.25 0.75 |
| 233 | @item CFGERR | 233 | @item CFGERR |
| 234 | @tab Syntax check process returned nonzero exit code, but no | 234 | @tab Syntax check process returned nonzero exit code, but no |
| 235 | errors/warnings were reported. This indicates a possible configuration | 235 | errors/warnings were reported. This indicates a possible configuration |
| 236 | error (for example, no suitable error message patterns for the | 236 | error (for example, no suitable error message patterns for the |
| 237 | syntax check tool). | 237 | syntax check tool). |
| 238 | 238 | ||
| 239 | @item NOMASTER | 239 | @item NOMASTER |
| 240 | @tab Flymake was unable to find master file for the current buffer. | 240 | @tab Flymake was unable to find master file for the current buffer. |
| @@ -569,7 +569,7 @@ These modes are handled inside init/cleanup/getfname functions, see | |||
| 569 | Flymake contains implementations of all functionality required to | 569 | Flymake contains implementations of all functionality required to |
| 570 | support different syntax check modes described above (making temporary | 570 | support different syntax check modes described above (making temporary |
| 571 | copies, finding master files, etc.), as well as some tool-specific | 571 | copies, finding master files, etc.), as well as some tool-specific |
| 572 | (routines for Make, Ant, etc.) code. | 572 | (routines for Make, Ant, etc.)@: code. |
| 573 | 573 | ||
| 574 | 574 | ||
| 575 | @node Making a temporary copy | 575 | @node Making a temporary copy |
diff --git a/doc/misc/forms.texi b/doc/misc/forms.texi index 43ffab26c9b..17b117be961 100644 --- a/doc/misc/forms.texi +++ b/doc/misc/forms.texi | |||
| @@ -117,7 +117,7 @@ they make up a forms. | |||
| 117 | 117 | ||
| 118 | The contents of the forms consist of the contents of the fields of the | 118 | The contents of the forms consist of the contents of the fields of the |
| 119 | record (e.g., @samp{root}, @samp{0}, @samp{1}, @samp{Super User}) | 119 | record (e.g., @samp{root}, @samp{0}, @samp{1}, @samp{Super User}) |
| 120 | interspersed with normal text (e.g @samp{User : }, @samp{Uid: }). | 120 | interspersed with normal text (e.g., @samp{User : }, @samp{Uid: }). |
| 121 | 121 | ||
| 122 | If you modify the contents of the fields, Forms mode will analyze your | 122 | If you modify the contents of the fields, Forms mode will analyze your |
| 123 | changes and update the file appropriately. You cannot modify the | 123 | changes and update the file appropriately. You cannot modify the |
diff --git a/doc/misc/gnus-coding.texi b/doc/misc/gnus-coding.texi index 15393ad8032..4e5855627b8 100644 --- a/doc/misc/gnus-coding.texi +++ b/doc/misc/gnus-coding.texi | |||
| @@ -387,5 +387,5 @@ changed. | |||
| 387 | 387 | ||
| 388 | @c Local Variables: | 388 | @c Local Variables: |
| 389 | @c mode: texinfo | 389 | @c mode: texinfo |
| 390 | @c coding: iso-8859-1 | 390 | @c coding: utf-8 |
| 391 | @c End: | 391 | @c End: |
diff --git a/doc/misc/gnus-faq.texi b/doc/misc/gnus-faq.texi index 2a1f5ac2cc1..cb900626670 100644 --- a/doc/misc/gnus-faq.texi +++ b/doc/misc/gnus-faq.texi | |||
| @@ -3,8 +3,8 @@ | |||
| 3 | @c %**start of header | 3 | @c %**start of header |
| 4 | @c Copyright (C) 1995, 2001-2013 Free Software Foundation, Inc. | 4 | @c Copyright (C) 1995, 2001-2013 Free Software Foundation, Inc. |
| 5 | @c | 5 | @c |
| 6 | @setfilename gnus-faq.info | 6 | @c @setfilename gnus-faq.info |
| 7 | @settitle Frequently Asked Questions | 7 | @c @settitle Frequently Asked Questions |
| 8 | @c %**end of header | 8 | @c %**end of header |
| 9 | @c | 9 | @c |
| 10 | 10 | ||
| @@ -41,7 +41,7 @@ Please submit features and suggestions to the | |||
| 41 | @email{ding@@gnus.org, ding list}. | 41 | @email{ding@@gnus.org, ding list}. |
| 42 | 42 | ||
| 43 | @node FAQ - Changes | 43 | @node FAQ - Changes |
| 44 | @subheading Changes | 44 | @subsection Changes |
| 45 | 45 | ||
| 46 | 46 | ||
| 47 | 47 | ||
| @@ -57,7 +57,7 @@ reference to discontinued service. | |||
| 57 | @end itemize | 57 | @end itemize |
| 58 | 58 | ||
| 59 | @node FAQ - Introduction | 59 | @node FAQ - Introduction |
| 60 | @subheading Introduction | 60 | @subsection Introduction |
| 61 | 61 | ||
| 62 | This is the Gnus Frequently Asked Questions list. | 62 | This is the Gnus Frequently Asked Questions list. |
| 63 | 63 | ||
| @@ -705,32 +705,9 @@ retrieves via POP3? | |||
| 705 | 705 | ||
| 706 | @subsubheading Answer | 706 | @subsubheading Answer |
| 707 | 707 | ||
| 708 | First of all, that's not the way POP3 is intended to work, | 708 | Yes, if the POP3 server supports the UIDL control (maybe almost servers |
| 709 | if you have the possibility, you should use the IMAP | 709 | do it nowadays). To do that, add a @code{:leave VALUE} pair to each |
| 710 | Protocol if you want your messages to stay on the | 710 | POP3 mail source. See @pxref{Mail Source Specifiers} for VALUE. |
| 711 | server. Nevertheless there might be situations where you | ||
| 712 | need the feature, but sadly Gnus itself has no predefined | ||
| 713 | functionality to do so. | ||
| 714 | |||
| 715 | However this is Gnus county so there are possibilities to | ||
| 716 | achieve what you want. The easiest way is to get an external | ||
| 717 | program which retrieves copies of the mail and stores them | ||
| 718 | on disk, so Gnus can read it from there. On Unix systems you | ||
| 719 | could use, e.g., fetchmail for this, on MS Windows you can use | ||
| 720 | Hamster, an excellent local news and mail server. | ||
| 721 | |||
| 722 | The other solution would be, to replace the method Gnus | ||
| 723 | uses to get mail from POP3 servers by one which is capable | ||
| 724 | of leaving the mail on the server. If you use XEmacs, get | ||
| 725 | the package mail-lib, it includes an enhanced pop3.el, | ||
| 726 | look in the file, there's documentation on how to tell | ||
| 727 | Gnus to use it and not to delete the retrieved mail. For | ||
| 728 | GNU Emacs look for the file epop3.el which can do the same | ||
| 729 | (If you know the home of this file, please send me an | ||
| 730 | e-mail). You can also tell Gnus to use an external program | ||
| 731 | (e.g., fetchmail) to fetch your mail, see the info node | ||
| 732 | "Mail Source Specifiers" in the Gnus manual on how to do | ||
| 733 | it. | ||
| 734 | 711 | ||
| 735 | @node FAQ 4 - Reading messages | 712 | @node FAQ 4 - Reading messages |
| 736 | @subsection Reading messages | 713 | @subsection Reading messages |
| @@ -1218,7 +1195,7 @@ from using them): | |||
| 1218 | messages? | 1195 | messages? |
| 1219 | * FAQ 5-3:: How to set stuff like From, Organization, Reply-To, | 1196 | * FAQ 5-3:: How to set stuff like From, Organization, Reply-To, |
| 1220 | signature...? | 1197 | signature...? |
| 1221 | * FAQ 5-4:: Can I set things like From, Signature etc group based on | 1198 | * FAQ 5-4:: Can I set things like From, Signature etc. group based on |
| 1222 | the group I post too? | 1199 | the group I post too? |
| 1223 | * FAQ 5-5:: Is there a spell-checker? Perhaps even on-the-fly | 1200 | * FAQ 5-5:: Is there a spell-checker? Perhaps even on-the-fly |
| 1224 | spell-checking? | 1201 | spell-checking? |
diff --git a/doc/misc/gnus.texi b/doc/misc/gnus.texi index b5029e5d6a8..983887d721d 100644 --- a/doc/misc/gnus.texi +++ b/doc/misc/gnus.texi | |||
| @@ -2348,8 +2348,8 @@ Gnus considers groups from levels 1 to | |||
| 2348 | unsubscribed, @code{gnus-level-zombie} to be zombies (walking dead) | 2348 | unsubscribed, @code{gnus-level-zombie} to be zombies (walking dead) |
| 2349 | (default 8) and @code{gnus-level-killed} to be killed (completely dead) | 2349 | (default 8) and @code{gnus-level-killed} to be killed (completely dead) |
| 2350 | (default 9). Gnus treats subscribed and unsubscribed groups exactly the | 2350 | (default 9). Gnus treats subscribed and unsubscribed groups exactly the |
| 2351 | same, but zombie and killed groups have no information on what articles | 2351 | same, but zombie and killed groups store no information on what articles |
| 2352 | you have read, etc, stored. This distinction between dead and living | 2352 | you have read, etc. This distinction between dead and living |
| 2353 | groups isn't done because it is nice or clever, it is done purely for | 2353 | groups isn't done because it is nice or clever, it is done purely for |
| 2354 | reasons of efficiency. | 2354 | reasons of efficiency. |
| 2355 | 2355 | ||
| @@ -11140,7 +11140,7 @@ There will never be more than one dead summary buffer at any one time. | |||
| 11140 | 11140 | ||
| 11141 | @vindex gnus-use-cross-reference | 11141 | @vindex gnus-use-cross-reference |
| 11142 | The data on the current group will be updated (which articles you have | 11142 | The data on the current group will be updated (which articles you have |
| 11143 | read, which articles you have replied to, etc.) when you exit the | 11143 | read, which articles you have replied to, etc.)@: when you exit the |
| 11144 | summary buffer. If the @code{gnus-use-cross-reference} variable is | 11144 | summary buffer. If the @code{gnus-use-cross-reference} variable is |
| 11145 | @code{t} (which is the default), articles that are cross-referenced to | 11145 | @code{t} (which is the default), articles that are cross-referenced to |
| 11146 | this group and are marked as read, will also be marked as read in the | 11146 | this group and are marked as read, will also be marked as read in the |
| @@ -14022,7 +14022,7 @@ The address of the @acronym{NNTP} server. | |||
| 14022 | Port number to connect to the @acronym{NNTP} server. The default is | 14022 | Port number to connect to the @acronym{NNTP} server. The default is |
| 14023 | @samp{nntp}. If you use @acronym{NNTP} over | 14023 | @samp{nntp}. If you use @acronym{NNTP} over |
| 14024 | @acronym{TLS}/@acronym{SSL}, you may want to use integer ports rather | 14024 | @acronym{TLS}/@acronym{SSL}, you may want to use integer ports rather |
| 14025 | than named ports (i.e, use @samp{563} instead of @samp{snews} or | 14025 | than named ports (i.e., use @samp{563} instead of @samp{snews} or |
| 14026 | @samp{nntps}), because external @acronym{TLS}/@acronym{SSL} tools may | 14026 | @samp{nntps}), because external @acronym{TLS}/@acronym{SSL} tools may |
| 14027 | not work with named ports. | 14027 | not work with named ports. |
| 14028 | 14028 | ||
| @@ -14541,6 +14541,7 @@ maildir, for instance. | |||
| 14541 | 14541 | ||
| 14542 | @menu | 14542 | @menu |
| 14543 | * Mail Source Specifiers:: How to specify what a mail source is. | 14543 | * Mail Source Specifiers:: How to specify what a mail source is. |
| 14544 | * Mail Source Functions:: | ||
| 14544 | * Mail Source Customization:: Some variables that influence things. | 14545 | * Mail Source Customization:: Some variables that influence things. |
| 14545 | * Fetching Mail:: Using the mail source specifiers. | 14546 | * Fetching Mail:: Using the mail source specifiers. |
| 14546 | @end menu | 14547 | @end menu |
| @@ -15000,6 +15001,7 @@ useful when you use local mail and news. | |||
| 15000 | @end table | 15001 | @end table |
| 15001 | @end table | 15002 | @end table |
| 15002 | 15003 | ||
| 15004 | @node Mail Source Functions | ||
| 15003 | @subsubsection Function Interface | 15005 | @subsubsection Function Interface |
| 15004 | 15006 | ||
| 15005 | Some of the above keywords specify a Lisp function to be executed. | 15007 | Some of the above keywords specify a Lisp function to be executed. |
| @@ -16068,6 +16070,10 @@ Spool}). | |||
| 16068 | * Mail Spool:: Store your mail in a private spool? | 16070 | * Mail Spool:: Store your mail in a private spool? |
| 16069 | * MH Spool:: An mhspool-like back end. | 16071 | * MH Spool:: An mhspool-like back end. |
| 16070 | * Maildir:: Another one-file-per-message format. | 16072 | * Maildir:: Another one-file-per-message format. |
| 16073 | * nnmaildir Group Parameters:: | ||
| 16074 | * Article Identification:: | ||
| 16075 | * NOV Data:: | ||
| 16076 | * Article Marks:: | ||
| 16071 | * Mail Folders:: Having one file for each group. | 16077 | * Mail Folders:: Having one file for each group. |
| 16072 | * Comparing Mail Back Ends:: An in-depth looks at pros and cons. | 16078 | * Comparing Mail Back Ends:: An in-depth looks at pros and cons. |
| 16073 | @end menu | 16079 | @end menu |
| @@ -16375,6 +16381,7 @@ different in the future. If your split rules create new groups, | |||
| 16375 | remember to supply a @code{create-directory} server parameter. | 16381 | remember to supply a @code{create-directory} server parameter. |
| 16376 | @end table | 16382 | @end table |
| 16377 | 16383 | ||
| 16384 | @node nnmaildir Group Parameters | ||
| 16378 | @subsubsection Group parameters | 16385 | @subsubsection Group parameters |
| 16379 | 16386 | ||
| 16380 | @code{nnmaildir} uses several group parameters. It's safe to ignore | 16387 | @code{nnmaildir} uses several group parameters. It's safe to ignore |
| @@ -16485,6 +16492,7 @@ that are either marked with @code{tick} or not marked with | |||
| 16485 | @code{read}, plus a little extra. | 16492 | @code{read}, plus a little extra. |
| 16486 | @end table | 16493 | @end table |
| 16487 | 16494 | ||
| 16495 | @node Article Identification | ||
| 16488 | @subsubsection Article identification | 16496 | @subsubsection Article identification |
| 16489 | Articles are stored in the @file{cur/} subdirectory of each maildir. | 16497 | Articles are stored in the @file{cur/} subdirectory of each maildir. |
| 16490 | Each article file is named like @code{uniq:info}, where @code{uniq} | 16498 | Each article file is named like @code{uniq:info}, where @code{uniq} |
| @@ -16497,6 +16505,7 @@ about the corresponding article. The full pathname of an article is | |||
| 16497 | available in the variable @code{nnmaildir-article-file-name} after you | 16505 | available in the variable @code{nnmaildir-article-file-name} after you |
| 16498 | request the article in the summary buffer. | 16506 | request the article in the summary buffer. |
| 16499 | 16507 | ||
| 16508 | @node NOV Data | ||
| 16500 | @subsubsection NOV data | 16509 | @subsubsection NOV data |
| 16501 | An article identified by @code{uniq} has its @acronym{NOV} data (used | 16510 | An article identified by @code{uniq} has its @acronym{NOV} data (used |
| 16502 | to generate lines in the summary buffer) stored in | 16511 | to generate lines in the summary buffer) stored in |
| @@ -16510,6 +16519,7 @@ file, but @emph{beware}: this will also cause @code{nnmaildir} to | |||
| 16510 | assign a new article number for this article, which may cause trouble | 16519 | assign a new article number for this article, which may cause trouble |
| 16511 | with @code{seen} marks, the Agent, and the cache. | 16520 | with @code{seen} marks, the Agent, and the cache. |
| 16512 | 16521 | ||
| 16522 | @node Article Marks | ||
| 16513 | @subsubsection Article marks | 16523 | @subsubsection Article marks |
| 16514 | An article identified by @code{uniq} is considered to have the mark | 16524 | An article identified by @code{uniq} is considered to have the mark |
| 16515 | @code{flag} when the file @file{.nnmaildir/marks/flag/uniq} exists. | 16525 | @code{flag} when the file @file{.nnmaildir/marks/flag/uniq} exists. |
| @@ -19019,7 +19029,7 @@ agent as unread. | |||
| 19019 | @subsection Agent and flags | 19029 | @subsection Agent and flags |
| 19020 | 19030 | ||
| 19021 | The Agent works with any Gnus back end including those, such as | 19031 | The Agent works with any Gnus back end including those, such as |
| 19022 | nnimap, that store flags (read, ticked, etc) on the server. Sadly, | 19032 | nnimap, that store flags (read, ticked, etc.)@: on the server. Sadly, |
| 19023 | the Agent does not actually know which backends keep their flags in | 19033 | the Agent does not actually know which backends keep their flags in |
| 19024 | the backend server rather than in @file{.newsrc}. This means that the | 19034 | the backend server rather than in @file{.newsrc}. This means that the |
| 19025 | Agent, while unplugged or disconnected, will always record all changes | 19035 | Agent, while unplugged or disconnected, will always record all changes |
| @@ -19995,7 +20005,7 @@ the article was posted from. Time zones are such wholesome fun for the | |||
| 19995 | whole family, eh?) | 20005 | whole family, eh?) |
| 19996 | 20006 | ||
| 19997 | @item Head, Body, All | 20007 | @item Head, Body, All |
| 19998 | These three match keys use the same match types as the @code{From} (etc) | 20008 | These three match keys use the same match types as the @code{From} (etc.)@: |
| 19999 | header uses. | 20009 | header uses. |
| 20000 | 20010 | ||
| 20001 | @item Followup | 20011 | @item Followup |
| @@ -23816,7 +23826,7 @@ from Bulgarian IPs. | |||
| 23816 | 23826 | ||
| 23817 | This, unfortunately, is a great way to discard legitimate e-mail. The | 23827 | This, unfortunately, is a great way to discard legitimate e-mail. The |
| 23818 | risks of blocking a whole country (Bulgaria, Norway, Nigeria, China, | 23828 | risks of blocking a whole country (Bulgaria, Norway, Nigeria, China, |
| 23819 | etc.) or even a continent (Asia, Africa, Europe, etc.) from contacting | 23829 | etc.)@: or even a continent (Asia, Africa, Europe, etc.)@: from contacting |
| 23820 | you should be obvious, so don't do it if you have the choice. | 23830 | you should be obvious, so don't do it if you have the choice. |
| 23821 | 23831 | ||
| 23822 | In another instance, the very informative and useful RISKS digest has | 23832 | In another instance, the very informative and useful RISKS digest has |
| @@ -25850,8 +25860,8 @@ of all messages matching a particular set of criteria. | |||
| 25850 | 25860 | ||
| 25851 | @menu | 25861 | @menu |
| 25852 | * Gnus Registry Setup:: | 25862 | * Gnus Registry Setup:: |
| 25853 | * Fancy splitting to parent:: | ||
| 25854 | * Registry Article Refer Method:: | 25863 | * Registry Article Refer Method:: |
| 25864 | * Fancy splitting to parent:: | ||
| 25855 | * Store custom flags and keywords:: | 25865 | * Store custom flags and keywords:: |
| 25856 | * Store arbitrary data:: | 25866 | * Store arbitrary data:: |
| 25857 | @end menu | 25867 | @end menu |
| @@ -25869,7 +25879,7 @@ Fortunately, setting up the Gnus registry is pretty easy: | |||
| 25869 | 25879 | ||
| 25870 | This adds registry saves to Gnus newsrc saves (which happen on exit | 25880 | This adds registry saves to Gnus newsrc saves (which happen on exit |
| 25871 | and when you press @kbd{s} from the @code{*Group*} buffer. It also | 25881 | and when you press @kbd{s} from the @code{*Group*} buffer. It also |
| 25872 | adds registry calls to article actions in Gnus (copy, move, etc.) so | 25882 | adds registry calls to article actions in Gnus (copy, move, etc.)@: so |
| 25873 | it's not easy to undo the initialization. See | 25883 | it's not easy to undo the initialization. See |
| 25874 | @code{gnus-registry-initialize} for the gory details. | 25884 | @code{gnus-registry-initialize} for the gory details. |
| 25875 | 25885 | ||
| @@ -27946,7 +27956,7 @@ consist of a little new content at the top with a long, untrimmed | |||
| 27946 | message cited below. | 27956 | message cited below. |
| 27947 | 27957 | ||
| 27948 | @item | 27958 | @item |
| 27949 | Smileys (@samp{:-)}, @samp{;-)} etc) are now displayed graphically in | 27959 | Smileys (@samp{:-)}, @samp{;-)} etc.)@: are now displayed graphically in |
| 27950 | Emacs too. | 27960 | Emacs too. |
| 27951 | 27961 | ||
| 27952 | Put @code{(setq gnus-treat-display-smileys nil)} in @file{~/.gnus.el} to | 27962 | Put @code{(setq gnus-treat-display-smileys nil)} in @file{~/.gnus.el} to |
| @@ -28552,7 +28562,7 @@ A mail message or news article | |||
| 28552 | 28562 | ||
| 28553 | @item head | 28563 | @item head |
| 28554 | @cindex head | 28564 | @cindex head |
| 28555 | The top part of a message, where administrative information (etc.) is | 28565 | The top part of a message, where administrative information (etc.)@: is |
| 28556 | put. | 28566 | put. |
| 28557 | 28567 | ||
| 28558 | @item body | 28568 | @item body |
| @@ -29501,7 +29511,7 @@ There should be no result data from this function. | |||
| 29501 | @item (nnchoke-request-set-mark GROUP ACTION &optional SERVER) | 29511 | @item (nnchoke-request-set-mark GROUP ACTION &optional SERVER) |
| 29502 | 29512 | ||
| 29503 | Set/remove/add marks on articles. Normally Gnus handles the article | 29513 | Set/remove/add marks on articles. Normally Gnus handles the article |
| 29504 | marks (such as read, ticked, expired etc) internally, and store them in | 29514 | marks (such as read, ticked, expired etc.)@: internally, and store them in |
| 29505 | @file{~/.newsrc.eld}. Some back ends (such as @acronym{IMAP}) however carry | 29515 | @file{~/.newsrc.eld}. Some back ends (such as @acronym{IMAP}) however carry |
| 29506 | all information about the articles on the server, so Gnus need to | 29516 | all information about the articles on the server, so Gnus need to |
| 29507 | propagate the mark information to the server. | 29517 | propagate the mark information to the server. |
diff --git a/doc/misc/htmlfontify.texi b/doc/misc/htmlfontify.texi index 6cb8942bf15..e45234872e2 100644 --- a/doc/misc/htmlfontify.texi +++ b/doc/misc/htmlfontify.texi | |||
| @@ -123,8 +123,8 @@ reproduces the look of the current Emacs buffer as closely as possible. | |||
| 123 | entities, so you should even be able to do html-within-html fontified | 123 | entities, so you should even be able to do html-within-html fontified |
| 124 | display. | 124 | display. |
| 125 | 125 | ||
| 126 | You should, however, note that random control or eight-bit characters | 126 | You should, however, note that random control or non-ASCII characters |
| 127 | such as ^L (\x0c) or ¤ (\xa4) won't get mapped yet. | 127 | such as ^L (\x0c) or ¤ (\xa4) won't get mapped yet. |
| 128 | 128 | ||
| 129 | If the @var{srcdir} and @var{file} arguments are set, lookup etags | 129 | If the @var{srcdir} and @var{file} arguments are set, lookup etags |
| 130 | derived entries in the @ref{hfy-tags-cache} and add html anchors | 130 | derived entries in the @ref{hfy-tags-cache} and add html anchors |
diff --git a/doc/misc/idlwave.texi b/doc/misc/idlwave.texi index a756cc6b6c6..a432d4dc14a 100644 --- a/doc/misc/idlwave.texi +++ b/doc/misc/idlwave.texi | |||
| @@ -2182,8 +2182,8 @@ operators (outside of strings and comments, of course), try this in | |||
| 2182 | @end lisp | 2182 | @end lisp |
| 2183 | 2183 | ||
| 2184 | Note that the modified assignment operators which begin with a word | 2184 | Note that the modified assignment operators which begin with a word |
| 2185 | (@samp{AND=}, @samp{OR=}, @samp{NOT=}, etc.) require a leading space to | 2185 | (@samp{AND=}, @samp{OR=}, @samp{NOT=}, etc.)@: require a leading space to |
| 2186 | be recognized (e.g @code{vAND=4} would be interpreted as a variable | 2186 | be recognized (e.g., @code{vAND=4} would be interpreted as a variable |
| 2187 | @code{vAND}). Also note that since, e.g., @code{>} and @code{>=} are | 2187 | @code{vAND}). Also note that since, e.g., @code{>} and @code{>=} are |
| 2188 | both valid operators, it is impossible to surround both by blanks while | 2188 | both valid operators, it is impossible to surround both by blanks while |
| 2189 | they are being typed. Similarly with @code{&} and @code{&&}. For | 2189 | they are being typed. Similarly with @code{&} and @code{&&}. For |
| @@ -2195,7 +2195,7 @@ repad everything if @code{idlwave-do-actions} is on). | |||
| 2195 | @defopt idlwave-surround-by-blank (@code{nil}) | 2195 | @defopt idlwave-surround-by-blank (@code{nil}) |
| 2196 | Non-@code{nil} means enable @code{idlwave-surround}. If non-@code{nil}, | 2196 | Non-@code{nil} means enable @code{idlwave-surround}. If non-@code{nil}, |
| 2197 | @samp{=}, @samp{<}, @samp{>}, @samp{&}, @samp{,}, @samp{->}, and the | 2197 | @samp{=}, @samp{<}, @samp{>}, @samp{&}, @samp{,}, @samp{->}, and the |
| 2198 | modified assignment operators (@samp{AND=}, @samp{OR=}, etc.) are | 2198 | modified assignment operators (@samp{AND=}, @samp{OR=}, etc.)@: are |
| 2199 | surrounded with spaces by @code{idlwave-surround}. | 2199 | surrounded with spaces by @code{idlwave-surround}. |
| 2200 | @end defopt | 2200 | @end defopt |
| 2201 | 2201 | ||
diff --git a/doc/misc/mairix-el.texi b/doc/misc/mairix-el.texi index ff5b2ca6748..73a1294d28d 100644 --- a/doc/misc/mairix-el.texi +++ b/doc/misc/mairix-el.texi | |||
| @@ -3,7 +3,7 @@ | |||
| 3 | @setfilename ../../info/mairix-el | 3 | @setfilename ../../info/mairix-el |
| 4 | @settitle Emacs Interface for Mairix | 4 | @settitle Emacs Interface for Mairix |
| 5 | 5 | ||
| 6 | @documentencoding ISO-8859-1 | 6 | @documentencoding UTF-8 |
| 7 | 7 | ||
| 8 | @copying | 8 | @copying |
| 9 | Copyright @copyright{} 2008--2013 Free Software Foundation, Inc. | 9 | Copyright @copyright{} 2008--2013 Free Software Foundation, Inc. |
diff --git a/doc/misc/message.texi b/doc/misc/message.texi index 0e0bd115bb2..a98c7e48e53 100644 --- a/doc/misc/message.texi +++ b/doc/misc/message.texi | |||
| @@ -1817,17 +1817,14 @@ a string nor @code{nil}, use the user name only. However, it is highly | |||
| 1817 | unlikely that you should need to fiddle with this variable at all. | 1817 | unlikely that you should need to fiddle with this variable at all. |
| 1818 | @end table | 1818 | @end table |
| 1819 | 1819 | ||
| 1820 | @findex yow | ||
| 1821 | @cindex Mime-Version | 1820 | @cindex Mime-Version |
| 1822 | In addition, you can enter conses into this list. The @sc{car} of this cons | 1821 | In addition, you can enter conses into this list. The @sc{car} of this cons |
| 1823 | should be a symbol. This symbol's name is the name of the header, and | 1822 | should be a symbol. This symbol's name is the name of the header, and |
| 1824 | the @sc{cdr} can either be a string to be entered verbatim as the value of | 1823 | the @sc{cdr} can either be a string to be entered verbatim as the value of |
| 1825 | this header, or it can be a function to be called. This function should | 1824 | this header, or it can be a function to be called. This function should |
| 1826 | return a string to be inserted. For instance, if you want to insert | 1825 | take no arguments, and return a string to be inserted. For |
| 1827 | @code{Mime-Version: 1.0}, you should enter @code{(Mime-Version . "1.0")} | 1826 | instance, if you want to insert @code{Mime-Version: 1.0}, you should |
| 1828 | into the list. If you want to insert a funny quote, you could enter | 1827 | enter @code{(Mime-Version . "1.0")} into the list. |
| 1829 | something like @code{(X-Yow . yow)} into the list. The function | ||
| 1830 | @code{yow} will then be called without any arguments. | ||
| 1831 | 1828 | ||
| 1832 | If the list contains a cons where the @sc{car} of the cons is | 1829 | If the list contains a cons where the @sc{car} of the cons is |
| 1833 | @code{optional}, the @sc{cdr} of this cons will only be inserted if it is | 1830 | @code{optional}, the @sc{cdr} of this cons will only be inserted if it is |
| @@ -2344,7 +2341,7 @@ Valid values include: | |||
| 2344 | @table @code | 2341 | @table @code |
| 2345 | @item nil | 2342 | @item nil |
| 2346 | Generate the buffer name in the Message way (e.g., *mail*, *news*, *mail | 2343 | Generate the buffer name in the Message way (e.g., *mail*, *news*, *mail |
| 2347 | to whom*, *news on group*, etc.) and continue editing in the existing | 2344 | to whom*, *news on group*, etc.)@: and continue editing in the existing |
| 2348 | buffer of that name. If there is no such buffer, it will be newly | 2345 | buffer of that name. If there is no such buffer, it will be newly |
| 2349 | created. | 2346 | created. |
| 2350 | 2347 | ||
diff --git a/doc/misc/mh-e.texi b/doc/misc/mh-e.texi index 756d5d52996..154120f2e3b 100644 --- a/doc/misc/mh-e.texi +++ b/doc/misc/mh-e.texi | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | \input texinfo @c -*-texinfo-*- | 1 | \input texinfo @c -*- mode: texinfo; coding: utf-8; -*- |
| 2 | @c | 2 | @c |
| 3 | @c Note: This document requires makeinfo version 4.6 or greater to build. | 3 | @c Note: This document requires makeinfo version 4.6 or greater to build. |
| 4 | @c | 4 | @c |
| @@ -8,12 +8,12 @@ | |||
| 8 | @c %**end of header | 8 | @c %**end of header |
| 9 | 9 | ||
| 10 | @c Version of the software and manual. | 10 | @c Version of the software and manual. |
| 11 | @set VERSION 8.4 | 11 | @set VERSION 8.5 |
| 12 | @c Edition of the manual. It is either empty for the first edition or | 12 | @c Edition of the manual. It is either empty for the first edition or |
| 13 | @c has the form ", nth Edition" (without the quotes). | 13 | @c has the form ", nth Edition" (without the quotes). |
| 14 | @set EDITION | 14 | @set EDITION |
| 15 | @set UPDATED 2012-11-25 | 15 | @set UPDATED 2013-03-02 |
| 16 | @set UPDATE-MONTH November, 2012 | 16 | @set UPDATE-MONTH March, 2013 |
| 17 | 17 | ||
| 18 | @c Other variables. | 18 | @c Other variables. |
| 19 | @set MH-BOOK-HOME http://rand-mh.sourceforge.net/book/mh | 19 | @set MH-BOOK-HOME http://rand-mh.sourceforge.net/book/mh |
| @@ -236,7 +236,7 @@ read an online tutorial by starting GNU Emacs and typing @kbd{C-h t} | |||
| 236 | @ref{top, , GNU Emacs Manual, emacs, GNU Emacs Manual}, | 236 | @ref{top, , GNU Emacs Manual, emacs, GNU Emacs Manual}, |
| 237 | @end ifinfo | 237 | @end ifinfo |
| 238 | @ifhtml | 238 | @ifhtml |
| 239 | @uref{http://www.gnu.org/software/emacs/manual/html_node/, | 239 | @uref{http://www.gnu.org/software/emacs/manual/html_node/emacs/, |
| 240 | @cite{GNU Emacs Manual}}, | 240 | @cite{GNU Emacs Manual}}, |
| 241 | @end ifhtml | 241 | @end ifhtml |
| 242 | from the Free Software Foundation. | 242 | from the Free Software Foundation. |
| @@ -255,9 +255,9 @@ version is distributed with Emacs and can be accessed with the | |||
| 255 | @command{info} command (@samp{info mh-e}) or within Emacs (@kbd{C-h i | 255 | @command{info} command (@samp{info mh-e}) or within Emacs (@kbd{C-h i |
| 256 | m mh-e @key{RET}}). The online version is available at | 256 | m mh-e @key{RET}}). The online version is available at |
| 257 | @uref{http://mh-e.sourceforge.net/manual/, SourceForge}. Another great | 257 | @uref{http://mh-e.sourceforge.net/manual/, SourceForge}. Another great |
| 258 | online resource is the book @uref{http://www.ics.uci.edu/~mh/book/, | 258 | online resource is the book |
| 259 | @cite{MH & nmh: Email for Users & Programmers}} (also known as | 259 | @uref{http://rand-mh.sourceforge.net/book/, @cite{MH & nmh: Email for |
| 260 | @dfn{the MH book}). | 260 | Users & Programmers}} (also known as @dfn{the MH book}). |
| 261 | 261 | ||
| 262 | I hope you enjoy this manual! If you have any comments, or suggestions | 262 | I hope you enjoy this manual! If you have any comments, or suggestions |
| 263 | for this document, please let me know. | 263 | for this document, please let me know. |
| @@ -384,7 +384,7 @@ GNU Emacs Manual}. | |||
| 384 | @end ifnothtml | 384 | @end ifnothtml |
| 385 | @ifhtml | 385 | @ifhtml |
| 386 | See section | 386 | See section |
| 387 | @uref{http://www.gnu.org/software/emacs/manual/html_node/Easy-Customization.html, | 387 | @uref{http://www.gnu.org/software/emacs/manual/html_node/emacs/Easy-Customization.html, |
| 388 | Easy Customization} in @cite{The GNU Emacs Manual}. | 388 | Easy Customization} in @cite{The GNU Emacs Manual}. |
| 389 | @end ifhtml | 389 | @end ifhtml |
| 390 | @xref{Options}. | 390 | @xref{Options}. |
| @@ -404,7 +404,7 @@ GNU Emacs Manual}. | |||
| 404 | @end ifnothtml | 404 | @end ifnothtml |
| 405 | @ifhtml | 405 | @ifhtml |
| 406 | See section | 406 | See section |
| 407 | @uref{http://www.gnu.org/software/emacs/manual/html_node/Face-Customization.html, | 407 | @uref{http://www.gnu.org/software/emacs/manual/html_node/emacs/Face-Customization.html, |
| 408 | Face Customization} in @cite{The GNU Emacs Manual}. | 408 | Face Customization} in @cite{The GNU Emacs Manual}. |
| 409 | @end ifhtml | 409 | @end ifhtml |
| 410 | 410 | ||
| @@ -422,7 +422,7 @@ Emacs Manual} | |||
| 422 | @end ifnothtml | 422 | @end ifnothtml |
| 423 | @ifhtml | 423 | @ifhtml |
| 424 | See section | 424 | See section |
| 425 | @uref{http://www.gnu.org/software/emacs/manual/html_node/Hooks.html, | 425 | @uref{http://www.gnu.org/software/emacs/manual/html_node/emacs/Hooks.html, |
| 426 | Hooks} in @cite{The GNU Emacs Manual} | 426 | Hooks} in @cite{The GNU Emacs Manual} |
| 427 | @end ifhtml | 427 | @end ifhtml |
| 428 | for a description about @dfn{normal hooks} and @dfn{abnormal hooks}. | 428 | for a description about @dfn{normal hooks} and @dfn{abnormal hooks}. |
| @@ -473,7 +473,7 @@ point. | |||
| 473 | @end ifnothtml | 473 | @end ifnothtml |
| 474 | @ifhtml | 474 | @ifhtml |
| 475 | See the section | 475 | See the section |
| 476 | @uref{http://www.gnu.org/software/emacs/manual/html_node/Completion.html, | 476 | @uref{http://www.gnu.org/software/emacs/manual/html_node/emacs/Completion.html, |
| 477 | Completion} in @cite{The GNU Emacs Manual}. | 477 | Completion} in @cite{The GNU Emacs Manual}. |
| 478 | @end ifhtml | 478 | @end ifhtml |
| 479 | Note that @key{SPC} cannot be used for completing filenames and | 479 | Note that @key{SPC} cannot be used for completing filenames and |
| @@ -550,12 +550,12 @@ to install MH or tell MH-E where to find MH. | |||
| 550 | @cindex GNU mailutils MH | 550 | @cindex GNU mailutils MH |
| 551 | 551 | ||
| 552 | If you don't have MH on your system already, you must install a | 552 | If you don't have MH on your system already, you must install a |
| 553 | variant of MH@. The Debian mh-e package does this for you automatically | 553 | variant of MH@. The Debian mh-e package does this for you |
| 554 | (@pxref{Getting MH-E}). Most people use | 554 | automatically (@pxref{Getting MH-E}). Most people use |
| 555 | @uref{http://www.nongnu.org/nmh/, nmh}, but you may be interested in | 555 | @uref{http://www.nongnu.org/nmh/, nmh}, but you may be interested in |
| 556 | trying out @uref{http://www.gnu.org/software/mailutils/, GNU mailutils | 556 | trying out @uref{http://mailutils.org/, GNU mailutils MH}, which |
| 557 | MH}, which supports IMAP@. Your GNU/Linux distribution probably has | 557 | supports IMAP@. Your GNU/Linux distribution probably has packages for |
| 558 | packages for both of these. | 558 | both of these. |
| 559 | 559 | ||
| 560 | @cindex @command{install-mh} | 560 | @cindex @command{install-mh} |
| 561 | @cindex MH commands, @command{install-mh} | 561 | @cindex MH commands, @command{install-mh} |
| @@ -1121,27 +1121,27 @@ exist, | |||
| 1121 | @footnote{The @cite{GNU Emacs Lisp Reference Manual} may be available | 1121 | @footnote{The @cite{GNU Emacs Lisp Reference Manual} may be available |
| 1122 | online in the Info system by typing @kbd{C-h i m Emacs Lisp | 1122 | online in the Info system by typing @kbd{C-h i m Emacs Lisp |
| 1123 | @key{RET}}. It is also available online at @* | 1123 | @key{RET}}. It is also available online at @* |
| 1124 | @uref{http://www.gnu.org/software/emacs/elisp-manual/html_node/}. You | 1124 | @uref{http://www.gnu.org/savannah-checkouts/gnu/emacs/manual/html_node/elisp/}. |
| 1125 | can also order a printed manual, which has the desirable side-effect | 1125 | You can also order a printed manual, which has the desirable |
| 1126 | of helping to support the Free Software Foundation which made all this | 1126 | side-effect of helping to support the Free Software Foundation which |
| 1127 | great software available. You can find an order form by running | 1127 | made all this great software available. You can find an order form by |
| 1128 | @kbd{C-h C-d}, or you can request an order form from @i{gnu at | 1128 | running @kbd{C-h C-d}, or you can request an order form from @i{gnu at |
| 1129 | gnu.org}.} | 1129 | gnu.org}.} |
| 1130 | @end iftex | 1130 | @end iftex |
| 1131 | @ifinfo | 1131 | @ifinfo |
| 1132 | @footnote{@xref{Top, The GNU Emacs Lisp Reference Manual, , elisp, GNU | 1132 | @footnote{@xref{Top, The GNU Emacs Lisp Reference Manual, , elisp, GNU |
| 1133 | Emacs Lisp Reference Manual}, which may be available online in the | 1133 | Emacs Lisp Reference Manual}, which may be available online in the |
| 1134 | Info system. It is also available online at | 1134 | Info system. It is also available online at |
| 1135 | @uref{http://www.gnu.org/software/emacs/elisp-manual/html_node/}. You | 1135 | @uref{http://www.gnu.org/savannah-checkouts/gnu/emacs/manual/html_node/elisp/}. |
| 1136 | can also order a printed manual, which has the desirable side-effect | 1136 | You can also order a printed manual, which has the desirable |
| 1137 | of helping to support the Free Software Foundation which made all this | 1137 | side-effect of helping to support the Free Software Foundation which |
| 1138 | great software available. You can find an order form by running | 1138 | made all this great software available. You can find an order form by |
| 1139 | @kbd{C-h C-d}, or you can request an order form from @i{gnu at | 1139 | running @kbd{C-h C-d}, or you can request an order form from @i{gnu at |
| 1140 | gnu.org}.} | 1140 | gnu.org}.} |
| 1141 | @end ifinfo | 1141 | @end ifinfo |
| 1142 | @ifhtml | 1142 | @ifhtml |
| 1143 | @footnote{The | 1143 | @footnote{The |
| 1144 | @uref{http://www.gnu.org/software/emacs/elisp-manual/html_node/, | 1144 | @uref{http://www.gnu.org/savannah-checkouts/gnu/emacs/manual/html_node/elisp/, |
| 1145 | The GNU Emacs Lisp Reference Manual} may also be available online in | 1145 | The GNU Emacs Lisp Reference Manual} may also be available online in |
| 1146 | the Info system by typing @kbd{C-h i m Emacs Lisp @key{RET}}. You can | 1146 | the Info system by typing @kbd{C-h i m Emacs Lisp @key{RET}}. You can |
| 1147 | also order a printed manual, which has the desirable side-effect of | 1147 | also order a printed manual, which has the desirable side-effect of |
| @@ -1311,7 +1311,7 @@ When you choose a folder in MH-E via a command such as @kbd{o} | |||
| 1311 | @end ifnothtml | 1311 | @end ifnothtml |
| 1312 | @ifhtml | 1312 | @ifhtml |
| 1313 | (see the section | 1313 | (see the section |
| 1314 | @uref{http://www.gnu.org/software/emacs/manual/html_node/Completion.html, | 1314 | @uref{http://www.gnu.org/software/emacs/manual/html_node/emacs/Completion.html, |
| 1315 | Completion} in @cite{The GNU Emacs Manual}). | 1315 | Completion} in @cite{The GNU Emacs Manual}). |
| 1316 | @end ifhtml | 1316 | @end ifhtml |
| 1317 | In addition, MH-E has several ways of choosing a suitable default so | 1317 | In addition, MH-E has several ways of choosing a suitable default so |
| @@ -2089,8 +2089,7 @@ expressions are not allowed. Unique fields should have a @samp{:} | |||
| 2089 | suffix; otherwise, the element can be used to render invisible an | 2089 | suffix; otherwise, the element can be used to render invisible an |
| 2090 | entire class of fields that start with the same prefix. If you think a | 2090 | entire class of fields that start with the same prefix. If you think a |
| 2091 | header field should be generally ignored, please update | 2091 | header field should be generally ignored, please update |
| 2092 | @uref{https://sourceforge.net/tracker/index.php?func=detail&aid=1916032&group_id=13357&atid=113357, | 2092 | @uref{https://sourceforge.net/p/mh-e/bugs/245/, SF #245}. |
| 2093 | SF #1916032}. | ||
| 2094 | 2093 | ||
| 2095 | @cindex header field, @samp{Face:} | 2094 | @cindex header field, @samp{Face:} |
| 2096 | @cindex header field, @samp{X-Face:} | 2095 | @cindex header field, @samp{X-Face:} |
| @@ -2142,12 +2141,12 @@ Finally, MH-E will display images referenced by the | |||
| 2142 | @samp{X-Face:} fields are present@footnote{The display of the images | 2141 | @samp{X-Face:} fields are present@footnote{The display of the images |
| 2143 | requires the @uref{http://www.gnu.org/software/wget/wget.html, | 2142 | requires the @uref{http://www.gnu.org/software/wget/wget.html, |
| 2144 | @command{wget} program} to fetch the image and the @command{convert} | 2143 | @command{wget} program} to fetch the image and the @command{convert} |
| 2145 | program from the @uref{http://www.imagemagick.org/, ImageMagick | 2144 | program from the @uref{http://www.imagemagick.org/script/index.php, |
| 2146 | suite}.}. Of the three header fields this is the most efficient in | 2145 | ImageMagick suite}.}. Of the three header fields this is the most |
| 2147 | terms of network usage since the image doesn't need to be transmitted | 2146 | efficient in terms of network usage since the image doesn't need to be |
| 2148 | with every single mail. The option @code{mh-fetch-x-image-url} | 2147 | transmitted with every single mail. The option |
| 2149 | controls the fetching of the @samp{X-Image-URL:} header field image | 2148 | @code{mh-fetch-x-image-url} controls the fetching of the |
| 2150 | with the following values: | 2149 | @samp{X-Image-URL:} header field image with the following values: |
| 2151 | 2150 | ||
| 2152 | @table @samp | 2151 | @table @samp |
| 2153 | @item Ask Before Fetching | 2152 | @item Ask Before Fetching |
| @@ -4969,7 +4968,7 @@ Michael W Thelen <thelenm@@stop.mail-abuse.org> wrote: | |||
| 4969 | The attribution consists of the sender's name and email address | 4968 | The attribution consists of the sender's name and email address |
| 4970 | followed by the content of the option | 4969 | followed by the content of the option |
| 4971 | @code{mh-extract-from-attribution-verb}. This option can be set to | 4970 | @code{mh-extract-from-attribution-verb}. This option can be set to |
| 4972 | @samp{wrote:}, @samp{a écrit:}, and @samp{schrieb:}. You can also use | 4971 | @samp{wrote:}, @samp{a écrit:}, and @samp{schrieb:}. You can also use |
| 4973 | the @samp{Custom String} menu item to enter your own verb. | 4972 | the @samp{Custom String} menu item to enter your own verb. |
| 4974 | 4973 | ||
| 4975 | @vindex mail-citation-hook | 4974 | @vindex mail-citation-hook |
| @@ -6025,7 +6024,7 @@ GNU Emacs Manual}). | |||
| 6025 | @end ifnothtml | 6024 | @end ifnothtml |
| 6026 | @ifhtml | 6025 | @ifhtml |
| 6027 | (see the section | 6026 | (see the section |
| 6028 | @uref{http://www.gnu.org/software/emacs/manual/html_node/Regexps.html, | 6027 | @uref{http://www.gnu.org/software/emacs/manual/html_node/emacs/Regexps.html, |
| 6029 | Syntax of Regular Expressions} in | 6028 | Syntax of Regular Expressions} in |
| 6030 | @cite{The GNU Emacs Manual}). | 6029 | @cite{The GNU Emacs Manual}). |
| 6031 | @end ifhtml | 6030 | @end ifhtml |
| @@ -6175,7 +6174,7 @@ GNU Emacs Manual}). | |||
| 6175 | @end ifnothtml | 6174 | @end ifnothtml |
| 6176 | @ifhtml | 6175 | @ifhtml |
| 6177 | (see the section | 6176 | (see the section |
| 6178 | @uref{http://www.gnu.org/software/emacs/manual/html_node/Regexps.html, | 6177 | @uref{http://www.gnu.org/software/emacs/manual/html_node/emacs/Regexps.html, |
| 6179 | Syntax of Regular Expressions} in | 6178 | Syntax of Regular Expressions} in |
| 6180 | @cite{The GNU Emacs Manual}). | 6179 | @cite{The GNU Emacs Manual}). |
| 6181 | @end ifhtml | 6180 | @end ifhtml |
| @@ -6283,7 +6282,7 @@ You can also use the speedbar | |||
| 6283 | @end ifnothtml | 6282 | @end ifnothtml |
| 6284 | @ifhtml | 6283 | @ifhtml |
| 6285 | (see the section | 6284 | (see the section |
| 6286 | @uref{http://www.gnu.org/software/emacs/manual/html_node/Speedbar.html, | 6285 | @uref{http://www.gnu.org/software/emacs/manual/html_node/emacs/Speedbar.html, |
| 6287 | Speedbar Frames} in @cite{The GNU Emacs Manual}) | 6286 | Speedbar Frames} in @cite{The GNU Emacs Manual}) |
| 6288 | @end ifhtml | 6287 | @end ifhtml |
| 6289 | to view your folders. To bring up the speedbar, run @kbd{M-x speedbar | 6288 | to view your folders. To bring up the speedbar, run @kbd{M-x speedbar |
| @@ -6415,7 +6414,7 @@ For a description of the menu bar, please | |||
| 6415 | @end ifnothtml | 6414 | @end ifnothtml |
| 6416 | @ifhtml | 6415 | @ifhtml |
| 6417 | see the section | 6416 | see the section |
| 6418 | @uref{http://www.gnu.org/software/emacs/manual/html_node/Menu-Bar.html, | 6417 | @uref{http://www.gnu.org/software/emacs/manual/html_node/emacs/Menu-Bar.html, |
| 6419 | The Menu Bar} in @cite{The GNU Emacs Manual}. | 6418 | The Menu Bar} in @cite{The GNU Emacs Manual}. |
| 6420 | @end ifhtml | 6419 | @end ifhtml |
| 6421 | 6420 | ||
| @@ -6437,7 +6436,7 @@ tool bar, please | |||
| 6437 | @end ifnothtml | 6436 | @end ifnothtml |
| 6438 | @ifhtml | 6437 | @ifhtml |
| 6439 | see the section | 6438 | see the section |
| 6440 | @uref{http://www.gnu.org/software/emacs/manual/html_node/Tool-Bars.html, | 6439 | @uref{http://www.gnu.org/software/emacs/manual/html_node/emacs/Tool-Bars.html, |
| 6441 | Tool Bars} in @cite{The GNU Emacs Manual}. | 6440 | Tool Bars} in @cite{The GNU Emacs Manual}. |
| 6442 | @end ifhtml | 6441 | @end ifhtml |
| 6443 | 6442 | ||
| @@ -8219,7 +8218,7 @@ GNU Emacs Manual}. | |||
| 8219 | @end ifnothtml | 8218 | @end ifnothtml |
| 8220 | @ifhtml | 8219 | @ifhtml |
| 8221 | section | 8220 | section |
| 8222 | @uref{http://www.gnu.org/software/emacs/manual/html_node/Regexps.html, | 8221 | @uref{http://www.gnu.org/software/emacs/manual/html_node/emacs/Regexps.html, |
| 8223 | Syntax of Regular Expressions} in @cite{The GNU Emacs Manual}. | 8222 | Syntax of Regular Expressions} in @cite{The GNU Emacs Manual}. |
| 8224 | @end ifhtml | 8223 | @end ifhtml |
| 8225 | 8224 | ||
| @@ -8712,12 +8711,11 @@ I also point out some additional sources of information. | |||
| 8712 | @kindex M-x mh-version | 8711 | @kindex M-x mh-version |
| 8713 | 8712 | ||
| 8714 | Bug reports should be filed at | 8713 | Bug reports should be filed at |
| 8715 | @uref{https://sourceforge.net/tracker/?group_id=13357&atid=113357, | 8714 | @uref{https://sourceforge.net/p/mh-e/bugs/, SourceForge}. You need to |
| 8716 | SourceForge}. You need to be a SourceForge user to submit bug reports, | 8715 | be a SourceForge user to submit bug reports, but this is easy enough |
| 8717 | but this is easy enough to do that it shouldn't be a restriction for | 8716 | to do that it shouldn't be a restriction for you. Please include the |
| 8718 | you. Please include the output of @kbd{M-x mh-version} | 8717 | output of @kbd{M-x mh-version} (@pxref{Miscellaneous}) in any bug |
| 8719 | (@pxref{Miscellaneous}) in any bug report you send unless you're 110% | 8718 | report you send unless you're 110% positive we won't ask for it. |
| 8720 | positive we won't ask for it. | ||
| 8721 | 8719 | ||
| 8722 | @node Mailing Lists, MH FAQ and Support, Bug Reports, Odds and Ends | 8720 | @node Mailing Lists, MH FAQ and Support, Bug Reports, Odds and Ends |
| 8723 | @appendixsec MH-E Mailing Lists | 8721 | @appendixsec MH-E Mailing Lists |
| @@ -8728,7 +8726,7 @@ positive we won't ask for it. | |||
| 8728 | There are several mailing lists for MH-E@. They are @i{mh-e-users at | 8726 | There are several mailing lists for MH-E@. They are @i{mh-e-users at |
| 8729 | lists.sourceforge.net}, @i{mh-e-announce at lists.sourceforge.net}, | 8727 | lists.sourceforge.net}, @i{mh-e-announce at lists.sourceforge.net}, |
| 8730 | and @i{mh-e-devel at lists.sourceforge.net}. You can subscribe or view | 8728 | and @i{mh-e-devel at lists.sourceforge.net}. You can subscribe or view |
| 8731 | the archives at @uref{https://sourceforge.net/mail/?group_id=13357, | 8729 | the archives at @uref{https://sourceforge.net/p/mh-e/mailman/, |
| 8732 | SourceForge}. Do not report bugs on these lists; please submit them | 8730 | SourceForge}. Do not report bugs on these lists; please submit them |
| 8733 | via SourceForge (@pxref{Bug Reports}). | 8731 | via SourceForge (@pxref{Bug Reports}). |
| 8734 | 8732 | ||
| @@ -8746,11 +8744,10 @@ itself which you will find useful. | |||
| 8746 | 8744 | ||
| 8747 | @cindex support | 8745 | @cindex support |
| 8748 | 8746 | ||
| 8749 | You can find FAQs on MH-E at the | 8747 | You can find FAQs on MH-E by searching for @i{labels:support} on the |
| 8750 | @uref{https://sourceforge.net/tracker/?group_id=13357&atid=213357, | 8748 | @uref{https://sourceforge.net/p/mh-e/bugs/search/?q=labels%3Asupport, |
| 8751 | Support Requests} page on SourceForge. If you don't find the answer to | 8749 | Tickets} page on SourceForge. If you don't find the answer to your |
| 8752 | your question, file a support request and your question will become a | 8750 | question, file a ticket and your question will become a new FAQ! |
| 8753 | new FAQ! | ||
| 8754 | 8751 | ||
| 8755 | @node Getting MH-E, , MH FAQ and Support, Odds and Ends | 8752 | @node Getting MH-E, , MH FAQ and Support, Odds and Ends |
| 8756 | @appendixsec Getting MH-E | 8753 | @appendixsec Getting MH-E |
| @@ -8768,13 +8765,13 @@ distribution in @file{miscellany/mh-e}. | |||
| 8768 | @cindex release notes | 8765 | @cindex release notes |
| 8769 | 8766 | ||
| 8770 | New MH-E releases are always available for downloading at | 8767 | New MH-E releases are always available for downloading at |
| 8771 | @uref{https://sourceforge.net/project/showfiles.php?group_id=13357, | 8768 | @uref{https://sourceforge.net/projects/mh-e/files/, SourceForge} |
| 8772 | SourceForge} before they appear in an Emacs release. You can read the | 8769 | before they appear in an Emacs release. You can read the release notes |
| 8773 | release notes on that page to determine if the given release of MH-E | 8770 | on that page to determine if the given release of MH-E is already |
| 8774 | is already installed in your version of Emacs. You can also read the | 8771 | installed in your version of Emacs. You can also read the change log |
| 8775 | change log to see if you are interested in what the given release of | 8772 | to see if you are interested in what the given release of MH-E has to |
| 8776 | MH-E has to offer (although we have no doubt that you will be | 8773 | offer (although we have no doubt that you will be extremely interested |
| 8777 | extremely interested in all new releases). | 8774 | in all new releases). |
| 8778 | 8775 | ||
| 8779 | @cindex Debian | 8776 | @cindex Debian |
| 8780 | 8777 | ||
| @@ -8802,10 +8799,10 @@ MH-E@. Check that you're running the new version with the command | |||
| 8802 | @cindex documentation | 8799 | @cindex documentation |
| 8803 | 8800 | ||
| 8804 | In addition to the mh-e package, the | 8801 | In addition to the mh-e package, the |
| 8805 | @uref{https://sourceforge.net/project/showfiles.php?group_id=13357, | 8802 | @uref{https://sourceforge.net/projects/mh-e/files/, SourceForge} site |
| 8806 | SourceForge} site also contains doc and contrib packages. The former | 8803 | also contains doc and contrib packages. The former is the latest |
| 8807 | is the latest release of this manual, and the latter contains a few | 8804 | release of this manual, and the latter contains a few contributed |
| 8808 | contributed packages you might find useful. | 8805 | packages you might find useful. |
| 8809 | 8806 | ||
| 8810 | @node History, GFDL, Odds and Ends, Top | 8807 | @node History, GFDL, Odds and Ends, Top |
| 8811 | @appendix History of MH-E | 8808 | @appendix History of MH-E |
diff --git a/doc/misc/org.texi b/doc/misc/org.texi index d41d2848cc6..1d7de18ada6 100644 --- a/doc/misc/org.texi +++ b/doc/misc/org.texi | |||
| @@ -2,7 +2,7 @@ | |||
| 2 | @c %**start of header | 2 | @c %**start of header |
| 3 | @setfilename ../../info/org | 3 | @setfilename ../../info/org |
| 4 | @settitle The Org Manual | 4 | @settitle The Org Manual |
| 5 | @set VERSION 7.9.3d (GNU Emacs 24.3) | 5 | @set VERSION 7.9.3f (GNU Emacs 24.3) |
| 6 | 6 | ||
| 7 | @c Use proper quote and backtick for code sections in PDF output | 7 | @c Use proper quote and backtick for code sections in PDF output |
| 8 | @c Cf. Texinfo manual 14.2 | 8 | @c Cf. Texinfo manual 14.2 |
| @@ -903,17 +903,20 @@ $ git clone git://orgmode.org/org-mode.git | |||
| 903 | $ make autoloads | 903 | $ make autoloads |
| 904 | @end example | 904 | @end example |
| 905 | 905 | ||
| 906 | Note that @code{make autoloads} is mandatory: it defines Org's version and | 906 | Note that in this case, @code{make autoloads} is mandatory: it defines Org's |
| 907 | Org's autoloaded functions, respectively in @file{org-version.el} and in | 907 | version in @file{org-version.el} and Org's autoloads in |
| 908 | @file{org-loaddefs.el}. | 908 | @file{org-loaddefs.el}. |
| 909 | 909 | ||
| 910 | Remember to add the correct load-path as described in the method above. | 910 | Remember to add the correct load-path as described in the method above. |
| 911 | 911 | ||
| 912 | You can also compile and install Org from this git repository: check | 912 | You can also compile with @code{make}, generate the documentation with |
| 913 | @code{make help} to get the list of compilation/installation options. | 913 | @code{make doc}, create a local configuration with @code{make config} and |
| 914 | install Org with @code{make install}. Please run @code{make help} to get | ||
| 915 | the list of compilation/installation options. | ||
| 914 | 916 | ||
| 915 | For more detailed explanations on Org's build system, please check the Org | 917 | For more detailed explanations on Org's build system, please check the Org |
| 916 | Build System page on @uref{http://orgmode.org/worg/dev/org-build-system.html, Worg}. | 918 | Build System page on @uref{http://orgmode.org/worg/dev/org-build-system.html, |
| 919 | Worg}. | ||
| 917 | 920 | ||
| 918 | @node Activation, Feedback, Installation, Introduction | 921 | @node Activation, Feedback, Installation, Introduction |
| 919 | @section Activation | 922 | @section Activation |
| @@ -1293,6 +1296,7 @@ Copy the @i{visible} text in the region into the kill ring. | |||
| 1293 | @end table | 1296 | @end table |
| 1294 | 1297 | ||
| 1295 | @vindex org-startup-folded | 1298 | @vindex org-startup-folded |
| 1299 | @vindex org-agenda-inhibit-startup | ||
| 1296 | @cindex @code{overview}, STARTUP keyword | 1300 | @cindex @code{overview}, STARTUP keyword |
| 1297 | @cindex @code{content}, STARTUP keyword | 1301 | @cindex @code{content}, STARTUP keyword |
| 1298 | @cindex @code{showall}, STARTUP keyword | 1302 | @cindex @code{showall}, STARTUP keyword |
| @@ -1311,6 +1315,10 @@ buffer: | |||
| 1311 | #+STARTUP: showeverything | 1315 | #+STARTUP: showeverything |
| 1312 | @end example | 1316 | @end example |
| 1313 | 1317 | ||
| 1318 | The startup visibility options are ignored when the file is open for the | ||
| 1319 | first time during the agenda generation: if you want the agenda to honor | ||
| 1320 | the startup visibility, set @code{org-agenda-inhibit-startup} to nil. | ||
| 1321 | |||
| 1314 | @cindex property, VISIBILITY | 1322 | @cindex property, VISIBILITY |
| 1315 | @noindent | 1323 | @noindent |
| 1316 | Furthermore, any entries with a @samp{VISIBILITY} property (@pxref{Properties | 1324 | Furthermore, any entries with a @samp{VISIBILITY} property (@pxref{Properties |
| @@ -1423,7 +1431,7 @@ level). | |||
| 1423 | Move subtree down (swap with next subtree of same level). | 1431 | Move subtree down (swap with next subtree of same level). |
| 1424 | @orgcmd{M-h,org-mark-element} | 1432 | @orgcmd{M-h,org-mark-element} |
| 1425 | Mark the element at point. Hitting repeatedly will mark subsequent elements | 1433 | Mark the element at point. Hitting repeatedly will mark subsequent elements |
| 1426 | of the one just marked. E.g. hitting @key{M-h} on a paragraph will mark it, | 1434 | of the one just marked. E.g., hitting @key{M-h} on a paragraph will mark it, |
| 1427 | hitting @key{M-h} immediately again will mark the next one. | 1435 | hitting @key{M-h} immediately again will mark the next one. |
| 1428 | @orgcmd{C-c @@,org-mark-subtree} | 1436 | @orgcmd{C-c @@,org-mark-subtree} |
| 1429 | Mark the subtree at point. Hitting repeatedly will mark subsequent subtrees | 1437 | Mark the subtree at point. Hitting repeatedly will mark subsequent subtrees |
| @@ -2444,7 +2452,7 @@ $1..$3 @r{first three fields in the current row} | |||
| 2444 | $P..$Q @r{range, using column names (see under Advanced)} | 2452 | $P..$Q @r{range, using column names (see under Advanced)} |
| 2445 | $<<<..$>> @r{start in third column, continue to the one but last} | 2453 | $<<<..$>> @r{start in third column, continue to the one but last} |
| 2446 | @@2$1..@@4$3 @r{6 fields between these two fields (same as @code{A2..C4})} | 2454 | @@2$1..@@4$3 @r{6 fields between these two fields (same as @code{A2..C4})} |
| 2447 | @@-1$-2..@@-1 @r{3 numbers from the column to the left, 2 up to current row} | 2455 | @@-1$-2..@@-1 @r{in the first row up, 3 fields from 2 columns on the left} |
| 2448 | @@I..II @r{between first and second hline, short for @code{@@I..@@II}} | 2456 | @@I..II @r{between first and second hline, short for @code{@@I..@@II}} |
| 2449 | @end example | 2457 | @end example |
| 2450 | 2458 | ||
| @@ -3023,9 +3031,9 @@ functions. | |||
| 3023 | 3031 | ||
| 3024 | Org-Plot can produce 2D and 3D graphs of information stored in org tables | 3032 | Org-Plot can produce 2D and 3D graphs of information stored in org tables |
| 3025 | using @file{Gnuplot} @uref{http://www.gnuplot.info/} and @file{gnuplot-mode} | 3033 | using @file{Gnuplot} @uref{http://www.gnuplot.info/} and @file{gnuplot-mode} |
| 3026 | @uref{http://cars9.uchicago.edu/~ravel/software/gnuplot-mode.html}. To see | 3034 | @uref{http://xafs.org/BruceRavel/GnuplotMode}. To see this in action, ensure |
| 3027 | this in action, ensure that you have both Gnuplot and Gnuplot mode installed | 3035 | that you have both Gnuplot and Gnuplot mode installed on your system, then |
| 3028 | on your system, then call @code{org-plot/gnuplot} on the following table. | 3036 | call @code{org-plot/gnuplot} on the following table. |
| 3029 | 3037 | ||
| 3030 | @example | 3038 | @example |
| 3031 | @group | 3039 | @group |
| @@ -4072,7 +4080,7 @@ module @file{org-depend.el}. | |||
| 4072 | 4080 | ||
| 4073 | Org mode can automatically record a timestamp and possibly a note when | 4081 | Org mode can automatically record a timestamp and possibly a note when |
| 4074 | you mark a TODO item as DONE, or even each time you change the state of | 4082 | you mark a TODO item as DONE, or even each time you change the state of |
| 4075 | a TODO item. This system is highly configurable, settings can be on a | 4083 | a TODO item. This system is highly configurable; settings can be on a |
| 4076 | per-keyword basis and can be localized to a file or even a subtree. For | 4084 | per-keyword basis and can be localized to a file or even a subtree. For |
| 4077 | information on how to clock working time for a task, see @ref{Clocking | 4085 | information on how to clock working time for a task, see @ref{Clocking |
| 4078 | work time}. | 4086 | work time}. |
| @@ -4428,7 +4436,7 @@ lists. But you can allow it by modifying @code{org-list-automatic-rules} | |||
| 4428 | accordingly.} (@pxref{Plain lists}) can be made into a checkbox by starting | 4436 | accordingly.} (@pxref{Plain lists}) can be made into a checkbox by starting |
| 4429 | it with the string @samp{[ ]}. This feature is similar to TODO items | 4437 | it with the string @samp{[ ]}. This feature is similar to TODO items |
| 4430 | (@pxref{TODO Items}), but is more lightweight. Checkboxes are not included | 4438 | (@pxref{TODO Items}), but is more lightweight. Checkboxes are not included |
| 4431 | into the global TODO list, so they are often great to split a task into a | 4439 | in the global TODO list, so they are often great to split a task into a |
| 4432 | number of simple steps. Or you can use them in a shopping list. To toggle a | 4440 | number of simple steps. Or you can use them in a shopping list. To toggle a |
| 4433 | checkbox, use @kbd{C-c C-c}, or use the mouse (thanks to Piotr Zielinski's | 4441 | checkbox, use @kbd{C-c C-c}, or use the mouse (thanks to Piotr Zielinski's |
| 4434 | @file{org-mouse.el}). | 4442 | @file{org-mouse.el}). |
| @@ -4486,7 +4494,7 @@ off a box while there are unchecked boxes above it. | |||
| 4486 | @orgcmd{C-c C-c,org-toggle-checkbox} | 4494 | @orgcmd{C-c C-c,org-toggle-checkbox} |
| 4487 | Toggle checkbox status or (with prefix arg) checkbox presence at point. | 4495 | Toggle checkbox status or (with prefix arg) checkbox presence at point. |
| 4488 | With a single prefix argument, add an empty checkbox or remove the current | 4496 | With a single prefix argument, add an empty checkbox or remove the current |
| 4489 | one@footnote{`C-u C-c C-c' on the @emph{first} item of a list with no checkbox | 4497 | one@footnote{@kbd{C-u C-c C-c} on the @emph{first} item of a list with no checkbox |
| 4490 | will add checkboxes to the rest of the list.}. With a double prefix argument, set it to @samp{[-]}, which is | 4498 | will add checkboxes to the rest of the list.}. With a double prefix argument, set it to @samp{[-]}, which is |
| 4491 | considered to be an intermediate state. | 4499 | considered to be an intermediate state. |
| 4492 | @orgcmd{C-c C-x C-b,org-toggle-checkbox} | 4500 | @orgcmd{C-c C-x C-b,org-toggle-checkbox} |
| @@ -11987,7 +11995,7 @@ resource or resource node which is known to TaskJuggler, such as | |||
| 11987 | @samp{efficiency}, @samp{journalentry}, @samp{rate} for resources or | 11995 | @samp{efficiency}, @samp{journalentry}, @samp{rate} for resources or |
| 11988 | @samp{account}, @samp{start}, @samp{note}, @samp{duration}, @samp{end}, | 11996 | @samp{account}, @samp{start}, @samp{note}, @samp{duration}, @samp{end}, |
| 11989 | @samp{journalentry}, @samp{milestone}, @samp{reference}, @samp{responsible}, | 11997 | @samp{journalentry}, @samp{milestone}, @samp{reference}, @samp{responsible}, |
| 11990 | @samp{scheduling}, etc for tasks. | 11998 | @samp{scheduling}, etc.@: for tasks. |
| 11991 | 11999 | ||
| 11992 | @subsection Dependencies | 12000 | @subsection Dependencies |
| 11993 | 12001 | ||
| @@ -15987,7 +15995,7 @@ Here is a @LaTeX{} example. Let's say that you have this in your | |||
| 15987 | \end@{comment@} | 15995 | \end@{comment@} |
| 15988 | @end example | 15996 | @end example |
| 15989 | 15997 | ||
| 15990 | Pressing `C-c C-c' on @code{a new house} and will insert the converted | 15998 | Pressing @kbd{C-c C-c} on @code{a new house} and will insert the converted |
| 15991 | @LaTeX{} list between the two marker lines. | 15999 | @LaTeX{} list between the two marker lines. |
| 15992 | 16000 | ||
| 15993 | @node Dynamic blocks, Special agenda views, Tables in arbitrary syntax, Hacking | 16001 | @node Dynamic blocks, Special agenda views, Tables in arbitrary syntax, Hacking |
diff --git a/doc/misc/reftex.texi b/doc/misc/reftex.texi index 0ee206b1a4d..312b84146fa 100644 --- a/doc/misc/reftex.texi +++ b/doc/misc/reftex.texi | |||
| @@ -647,7 +647,7 @@ buffer. | |||
| 647 | @vindex reftex-toc-max-level | 647 | @vindex reftex-toc-max-level |
| 648 | Change the maximum level of toc entries displayed in the @file{*toc*} | 648 | Change the maximum level of toc entries displayed in the @file{*toc*} |
| 649 | buffer. Without prefix arg, all levels will be included. With prefix | 649 | buffer. Without prefix arg, all levels will be included. With prefix |
| 650 | arg (e.g @kbd{3 t}), ignore all toc entries with level greater than | 650 | arg (e.g., @kbd{3 t}), ignore all toc entries with level greater than |
| 651 | @var{arg} (3 in this case). Chapters are level 1, sections are level 2. | 651 | @var{arg} (3 in this case). Chapters are level 1, sections are level 2. |
| 652 | The mode line @samp{T<>} indicator shows the current value. The default | 652 | The mode line @samp{T<>} indicator shows the current value. The default |
| 653 | depth can be configured with the variable | 653 | depth can be configured with the variable |
| @@ -3501,7 +3501,7 @@ make use of this feature, try | |||
| 3501 | @item | 3501 | @item |
| 3502 | @b{@LaTeX{} commands}@* | 3502 | @b{@LaTeX{} commands}@* |
| 3503 | @cindex LaTeX commands, not found | 3503 | @cindex LaTeX commands, not found |
| 3504 | @code{\input}, @code{\include}, and @code{\section} (etc.) statements | 3504 | @code{\input}, @code{\include}, and @code{\section} (etc.)@: statements |
| 3505 | have to be first on a line (except for white space). | 3505 | have to be first on a line (except for white space). |
| 3506 | 3506 | ||
| 3507 | @item | 3507 | @item |
diff --git a/doc/misc/remember.texi b/doc/misc/remember.texi index c70b6212268..290c18a7b47 100644 --- a/doc/misc/remember.texi +++ b/doc/misc/remember.texi | |||
| @@ -169,7 +169,7 @@ typing it into a buffer, or using the contents of the selected region, | |||
| 169 | it will store that data---unindexed, uninterpreted---in a data pool. | 169 | it will store that data---unindexed, uninterpreted---in a data pool. |
| 170 | It will also try to remember as much context information as possible | 170 | It will also try to remember as much context information as possible |
| 171 | (any text properties that were set, where you copied it from, when, | 171 | (any text properties that were set, where you copied it from, when, |
| 172 | how, etc). Later, you can walk through your accumulated set of data | 172 | how, etc.). Later, you can walk through your accumulated set of data |
| 173 | (both organized, and unorganized) and easily begin moving things | 173 | (both organized, and unorganized) and easily begin moving things |
| 174 | around, and making annotations that will express the full meaning of | 174 | around, and making annotations that will express the full meaning of |
| 175 | that data, as far as you know it. | 175 | that data, as far as you know it. |
diff --git a/doc/misc/semantic.texi b/doc/misc/semantic.texi index de5019ee897..f43316f5012 100644 --- a/doc/misc/semantic.texi +++ b/doc/misc/semantic.texi | |||
| @@ -520,7 +520,7 @@ Regression tests from the older Semantic 1.x API. | |||
| 520 | @node Glossary | 520 | @node Glossary |
| 521 | @appendix Glossary | 521 | @appendix Glossary |
| 522 | 522 | ||
| 523 | @table @keyword | 523 | @table @asis |
| 524 | @item BNF | 524 | @item BNF |
| 525 | In semantic 1.4, a BNF file represented ``Bovine Normal Form'', the | 525 | In semantic 1.4, a BNF file represented ``Bovine Normal Form'', the |
| 526 | grammar file used for the 1.4 parser generator. This was a play on | 526 | grammar file used for the 1.4 parser generator. This was a play on |
diff --git a/doc/misc/ses.texi b/doc/misc/ses.texi index ce75f2ef91e..2c84d04c666 100644 --- a/doc/misc/ses.texi +++ b/doc/misc/ses.texi | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | \input texinfo @c -*-texinfo-*- | 1 | \input texinfo @c -*- mode: texinfo; coding: utf-8; -*- |
| 2 | @c %**start of header | 2 | @c %**start of header |
| 3 | @setfilename ../../info/ses | 3 | @setfilename ../../info/ses |
| 4 | @settitle @acronym{SES}: Simple Emacs Spreadsheet | 4 | @settitle @acronym{SES}: Simple Emacs Spreadsheet |
| @@ -901,7 +901,7 @@ Begins with an 014 character, followed by sets of cell-definition | |||
| 901 | macros for each row, followed by column-widths, column-printers, | 901 | macros for each row, followed by column-widths, column-printers, |
| 902 | default-printer, and header-row. Then there's the global parameters | 902 | default-printer, and header-row. Then there's the global parameters |
| 903 | (file-format ID, numrows, numcols) and the local variables (specifying | 903 | (file-format ID, numrows, numcols) and the local variables (specifying |
| 904 | @acronym{SES} mode for the buffer, etc.) | 904 | @acronym{SES} mode for the buffer, etc.). |
| 905 | 905 | ||
| 906 | When a @acronym{SES} file is loaded, first the numrows and numcols values are | 906 | When a @acronym{SES} file is loaded, first the numrows and numcols values are |
| 907 | loaded, then the entire data area is @code{eval}ed, and finally the local | 907 | loaded, then the entire data area is @code{eval}ed, and finally the local |
| @@ -1022,9 +1022,9 @@ Yusong Li @email{lyusong@@hotmail.com}@* | |||
| 1022 | Juri Linkov @email{juri@@jurta.org}@* | 1022 | Juri Linkov @email{juri@@jurta.org}@* |
| 1023 | Harald Maier @email{maierh@@myself.com}@* | 1023 | Harald Maier @email{maierh@@myself.com}@* |
| 1024 | Alan Nash @email{anash@@san.rr.com}@* | 1024 | Alan Nash @email{anash@@san.rr.com}@* |
| 1025 | François Pinard @email{pinard@@iro.umontreal.ca}@* | 1025 | François Pinard @email{pinard@@iro.umontreal.ca}@* |
| 1026 | Pedro Pinto @email{ppinto@@cs.cmu.edu}@* | 1026 | Pedro Pinto @email{ppinto@@cs.cmu.edu}@* |
| 1027 | Stefan Reichör @email{xsteve@@riic.at}@* | 1027 | Stefan Reichör @email{xsteve@@riic.at}@* |
| 1028 | Oliver Scholz @email{epameinondas@@gmx.de}@* | 1028 | Oliver Scholz @email{epameinondas@@gmx.de}@* |
| 1029 | Richard M. Stallman @email{rms@@gnu.org}@* | 1029 | Richard M. Stallman @email{rms@@gnu.org}@* |
| 1030 | Luc Teirlinck @email{teirllm@@dms.auburn.edu}@* | 1030 | Luc Teirlinck @email{teirllm@@dms.auburn.edu}@* |
diff --git a/doc/misc/sieve.texi b/doc/misc/sieve.texi index cbcd6a61f39..b84c3047ec1 100644 --- a/doc/misc/sieve.texi +++ b/doc/misc/sieve.texi | |||
| @@ -159,7 +159,7 @@ press RET on <new script> to create a new script. | |||
| 159 | @end example | 159 | @end example |
| 160 | 160 | ||
| 161 | One of the scripts are highlighted, and standard point navigation | 161 | One of the scripts are highlighted, and standard point navigation |
| 162 | commands (@kbd{<up>}, @kbd{<down>} etc) can be used to navigate the | 162 | commands (@kbd{<up>}, @kbd{<down>} etc.)@: can be used to navigate the |
| 163 | list. | 163 | list. |
| 164 | 164 | ||
| 165 | The following commands are available in the Manage Sieve buffer: | 165 | The following commands are available in the Manage Sieve buffer: |
diff --git a/doc/misc/speedbar.texi b/doc/misc/speedbar.texi index c017490d4aa..3cb0ec3aed8 100644 --- a/doc/misc/speedbar.texi +++ b/doc/misc/speedbar.texi | |||
| @@ -223,7 +223,7 @@ Text in speedbar consists of four different types of data. Knowing how | |||
| 223 | to read these textual elements will make it easier to navigate by | 223 | to read these textual elements will make it easier to navigate by |
| 224 | identifying the types of data available. | 224 | identifying the types of data available. |
| 225 | 225 | ||
| 226 | @subsubsection Groups | 226 | @subsection Groups |
| 227 | @cindex groups | 227 | @cindex groups |
| 228 | 228 | ||
| 229 | Groups summarize information in a single line, and provide a high level | 229 | Groups summarize information in a single line, and provide a high level |
| @@ -1158,7 +1158,7 @@ the next line. | |||
| 1158 | Create a tag line with @var{exp-button-type} for the small expansion | 1158 | Create a tag line with @var{exp-button-type} for the small expansion |
| 1159 | button. This is the button that expands or contracts a node (if | 1159 | button. This is the button that expands or contracts a node (if |
| 1160 | applicable), and @var{exp-button-char} the character in it (@samp{+}, | 1160 | applicable), and @var{exp-button-char} the character in it (@samp{+}, |
| 1161 | @samp{-}, @samp{?}, etc). @var{exp-button-function} is the function | 1161 | @samp{-}, @samp{?}, etc.). @var{exp-button-function} is the function |
| 1162 | to call if it's clicked on. Button types are @code{bracket}, | 1162 | to call if it's clicked on. Button types are @code{bracket}, |
| 1163 | @code{angle}, @code{curly}, @code{expandtag}, @code{statictag}, and | 1163 | @code{angle}, @code{curly}, @code{expandtag}, @code{statictag}, and |
| 1164 | @code{nil}. @var{exp-button-data} is extra data attached to the text | 1164 | @code{nil}. @var{exp-button-data} is extra data attached to the text |
| @@ -1167,7 +1167,7 @@ forming the expansion button. | |||
| 1167 | Next, @var{tag-button} is the text of the tag. | 1167 | Next, @var{tag-button} is the text of the tag. |
| 1168 | @var{tag-button-function} is the function to call if clicked on, and | 1168 | @var{tag-button-function} is the function to call if clicked on, and |
| 1169 | @var{tag-button-data} is the data to attach to the text field (such a | 1169 | @var{tag-button-data} is the data to attach to the text field (such a |
| 1170 | tag positioning, etc). @var{tag-button-face} is a face used for this | 1170 | tag positioning, etc.). @var{tag-button-face} is a face used for this |
| 1171 | type of tag. | 1171 | type of tag. |
| 1172 | 1172 | ||
| 1173 | Lastly, @var{depth} shows the depth of expansion. | 1173 | Lastly, @var{depth} shows the depth of expansion. |
diff --git a/doc/misc/texinfo.tex b/doc/misc/texinfo.tex index d64f45bbee9..85f184cc4cb 100644 --- a/doc/misc/texinfo.tex +++ b/doc/misc/texinfo.tex | |||
| @@ -3,7 +3,7 @@ | |||
| 3 | % Load plain if necessary, i.e., if running under initex. | 3 | % Load plain if necessary, i.e., if running under initex. |
| 4 | \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi | 4 | \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi |
| 5 | % | 5 | % |
| 6 | \def\texinfoversion{2013-01-01.15} | 6 | \def\texinfoversion{2013-02-01.11} |
| 7 | % | 7 | % |
| 8 | % Copyright 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995, | 8 | % Copyright 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995, |
| 9 | % 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, | 9 | % 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, |
| @@ -2496,7 +2496,7 @@ end | |||
| 2496 | \let-\codedash | 2496 | \let-\codedash |
| 2497 | \let_\codeunder | 2497 | \let_\codeunder |
| 2498 | \else | 2498 | \else |
| 2499 | \let-\realdash | 2499 | \let-\normaldash |
| 2500 | \let_\realunder | 2500 | \let_\realunder |
| 2501 | \fi | 2501 | \fi |
| 2502 | \codex | 2502 | \codex |
| @@ -2505,7 +2505,7 @@ end | |||
| 2505 | 2505 | ||
| 2506 | \def\codex #1{\tclose{#1}\endgroup} | 2506 | \def\codex #1{\tclose{#1}\endgroup} |
| 2507 | 2507 | ||
| 2508 | \def\realdash{-} | 2508 | \def\normaldash{-} |
| 2509 | \def\codedash{-\discretionary{}{}{}} | 2509 | \def\codedash{-\discretionary{}{}{}} |
| 2510 | \def\codeunder{% | 2510 | \def\codeunder{% |
| 2511 | % this is all so @math{@code{var_name}+1} can work. In math mode, _ | 2511 | % this is all so @math{@code{var_name}+1} can work. In math mode, _ |
| @@ -2520,9 +2520,9 @@ end | |||
| 2520 | } | 2520 | } |
| 2521 | 2521 | ||
| 2522 | % An additional complication: the above will allow breaks after, e.g., | 2522 | % An additional complication: the above will allow breaks after, e.g., |
| 2523 | % each of the four underscores in __typeof__. This is undesirable in | 2523 | % each of the four underscores in __typeof__. This is bad. |
| 2524 | % some manuals, especially if they don't have long identifiers in | 2524 | % @allowcodebreaks provides a document-level way to turn breaking at - |
| 2525 | % general. @allowcodebreaks provides a way to control this. | 2525 | % and _ on and off. |
| 2526 | % | 2526 | % |
| 2527 | \newif\ifallowcodebreaks \allowcodebreakstrue | 2527 | \newif\ifallowcodebreaks \allowcodebreakstrue |
| 2528 | 2528 | ||
| @@ -4188,7 +4188,7 @@ end | |||
| 4188 | % ..., but we might end up with active ones in the argument if | 4188 | % ..., but we might end up with active ones in the argument if |
| 4189 | % we're called from @code, as @code{@value{foo-bar_}}, though. | 4189 | % we're called from @code, as @code{@value{foo-bar_}}, though. |
| 4190 | % So \let them to their normal equivalents. | 4190 | % So \let them to their normal equivalents. |
| 4191 | \let-\realdash \let_\normalunderscore | 4191 | \let-\normaldash \let_\normalunderscore |
| 4192 | } | 4192 | } |
| 4193 | } | 4193 | } |
| 4194 | 4194 | ||
| @@ -9993,22 +9993,26 @@ directory should work if nowhere else does.} | |||
| 9993 | @gdef@otherbackslash{@let\=@realbackslash} | 9993 | @gdef@otherbackslash{@let\=@realbackslash} |
| 9994 | 9994 | ||
| 9995 | % Same as @turnoffactive except outputs \ as {\tt\char`\\} instead of | 9995 | % Same as @turnoffactive except outputs \ as {\tt\char`\\} instead of |
| 9996 | % the literal character `\'. | 9996 | % the literal character `\'. Also revert - to its normal character, in |
| 9997 | % | 9997 | % case the active - from code has slipped in. |
| 9998 | @def@normalturnoffactive{% | 9998 | % |
| 9999 | @let"=@normaldoublequote | 9999 | {@catcode`- = @active |
| 10000 | @let$=@normaldollar %$ font-lock fix | 10000 | @gdef@normalturnoffactive{% |
| 10001 | @let+=@normalplus | 10001 | @let-=@normaldash |
| 10002 | @let<=@normalless | 10002 | @let"=@normaldoublequote |
| 10003 | @let>=@normalgreater | 10003 | @let$=@normaldollar %$ font-lock fix |
| 10004 | @let\=@normalbackslash | 10004 | @let+=@normalplus |
| 10005 | @let^=@normalcaret | 10005 | @let<=@normalless |
| 10006 | @let_=@normalunderscore | 10006 | @let>=@normalgreater |
| 10007 | @let|=@normalverticalbar | 10007 | @let\=@normalbackslash |
| 10008 | @let~=@normaltilde | 10008 | @let^=@normalcaret |
| 10009 | @markupsetuplqdefault | 10009 | @let_=@normalunderscore |
| 10010 | @markupsetuprqdefault | 10010 | @let|=@normalverticalbar |
| 10011 | @unsepspaces | 10011 | @let~=@normaltilde |
| 10012 | @markupsetuplqdefault | ||
| 10013 | @markupsetuprqdefault | ||
| 10014 | @unsepspaces | ||
| 10015 | } | ||
| 10012 | } | 10016 | } |
| 10013 | 10017 | ||
| 10014 | % Make _ and + \other characters, temporarily. | 10018 | % Make _ and + \other characters, temporarily. |
diff --git a/doc/misc/tramp.texi b/doc/misc/tramp.texi index 3a859c62728..4a3e0ebc33c 100644 --- a/doc/misc/tramp.texi +++ b/doc/misc/tramp.texi | |||
| @@ -20,6 +20,33 @@ | |||
| 20 | @c xxx and yyy are auxiliary macros in order to omit leading and | 20 | @c xxx and yyy are auxiliary macros in order to omit leading and |
| 21 | @c trailing whitespace. Not very elegant, but I don't know it better. | 21 | @c trailing whitespace. Not very elegant, but I don't know it better. |
| 22 | 22 | ||
| 23 | @c There are subtle differences between texinfo 4.13 and 5.0. We must | ||
| 24 | @c declare two versions of the macro. This will be improved, hopefully. | ||
| 25 | |||
| 26 | @c Texinfo 5.0. | ||
| 27 | @ifset txicommandconditionals | ||
| 28 | @macro xxx {one} | ||
| 29 | @set \one\ | ||
| 30 | @end macro | ||
| 31 | |||
| 32 | @macro yyy {one, two} | ||
| 33 | @xxx{x\one\}@c | ||
| 34 | @ifclear x | ||
| 35 | \one\@w{}\two\@c | ||
| 36 | @end ifclear | ||
| 37 | @clear x\one\ | ||
| 38 | @end macro | ||
| 39 | |||
| 40 | @macro trampfn {method, user, host, localname} | ||
| 41 | @value{prefix}@c | ||
| 42 | @yyy{\method\,@value{postfixhop}}@c | ||
| 43 | @yyy{\user\,@@}@c | ||
| 44 | \host\@value{postfix}\localname\ | ||
| 45 | @end macro | ||
| 46 | @end ifset | ||
| 47 | |||
| 48 | @c Texinfo 4.13. | ||
| 49 | @ifclear txicommandconditionals | ||
| 23 | @macro xxx {one}@c | 50 | @macro xxx {one}@c |
| 24 | @set \one\@c | 51 | @set \one\@c |
| 25 | @end macro | 52 | @end macro |
| @@ -35,6 +62,7 @@ | |||
| 35 | @macro trampfn {method, user, host, localname}@c | 62 | @macro trampfn {method, user, host, localname}@c |
| 36 | @value{prefix}@yyy{\method\,@value{postfixhop}}@yyy{\user\,@@}\host\@value{postfix}\localname\@c | 63 | @value{prefix}@yyy{\method\,@value{postfixhop}}@yyy{\user\,@@}\host\@value{postfix}\localname\@c |
| 37 | @end macro | 64 | @end macro |
| 65 | @end ifclear | ||
| 38 | 66 | ||
| 39 | @copying | 67 | @copying |
| 40 | Copyright @copyright{} 1999--2013 Free Software Foundation, Inc. | 68 | Copyright @copyright{} 1999--2013 Free Software Foundation, Inc. |
| @@ -144,9 +172,6 @@ For the end user: | |||
| 144 | * Usage:: An overview of the operation of @value{tramp}. | 172 | * Usage:: An overview of the operation of @value{tramp}. |
| 145 | * Bug Reports:: Reporting Bugs and Problems. | 173 | * Bug Reports:: Reporting Bugs and Problems. |
| 146 | * Frequently Asked Questions:: Questions and answers from the mailing list. | 174 | * Frequently Asked Questions:: Questions and answers from the mailing list. |
| 147 | * Function Index:: @value{tramp} functions. | ||
| 148 | * Variable Index:: User options and variables. | ||
| 149 | * Concept Index:: An item for each concept. | ||
| 150 | 175 | ||
| 151 | For the developer: | 176 | For the developer: |
| 152 | 177 | ||
| @@ -155,6 +180,9 @@ For the developer: | |||
| 155 | * Issues:: Debatable Issues and What Was Decided. | 180 | * Issues:: Debatable Issues and What Was Decided. |
| 156 | 181 | ||
| 157 | * GNU Free Documentation License:: The license for this documentation. | 182 | * GNU Free Documentation License:: The license for this documentation. |
| 183 | * Function Index:: @value{tramp} functions. | ||
| 184 | * Variable Index:: User options and variables. | ||
| 185 | * Concept Index:: An item for each concept. | ||
| 158 | 186 | ||
| 159 | @detailmenu | 187 | @detailmenu |
| 160 | --- The Detailed Node Listing --- | 188 | --- The Detailed Node Listing --- |
| @@ -188,8 +216,9 @@ Configuring @value{tramp} for use | |||
| 188 | * Connection caching:: Reusing connection related information. | 216 | * Connection caching:: Reusing connection related information. |
| 189 | * Remote Programs:: How @value{tramp} finds and uses programs on the remote machine. | 217 | * Remote Programs:: How @value{tramp} finds and uses programs on the remote machine. |
| 190 | * Remote shell setup:: Remote shell setup hints. | 218 | * Remote shell setup:: Remote shell setup hints. |
| 191 | * Windows setup hints:: Issues with Cygwin ssh. | 219 | * Android shell setup:: Android shell setup hints. |
| 192 | * Auto-save and Backup:: Auto-save and Backup. | 220 | * Auto-save and Backup:: Auto-save and Backup. |
| 221 | * Windows setup hints:: Issues with Cygwin ssh. | ||
| 193 | 222 | ||
| 194 | Using @value{tramp} | 223 | Using @value{tramp} |
| 195 | 224 | ||
| @@ -515,6 +544,7 @@ Method}. | |||
| 515 | * Connection caching:: Reusing connection related information. | 544 | * Connection caching:: Reusing connection related information. |
| 516 | * Remote Programs:: How @value{tramp} finds and uses programs on the remote machine. | 545 | * Remote Programs:: How @value{tramp} finds and uses programs on the remote machine. |
| 517 | * Remote shell setup:: Remote shell setup hints. | 546 | * Remote shell setup:: Remote shell setup hints. |
| 547 | * Android shell setup:: Android shell setup hints. | ||
| 518 | * Auto-save and Backup:: Auto-save and Backup. | 548 | * Auto-save and Backup:: Auto-save and Backup. |
| 519 | * Windows setup hints:: Issues with Cygwin ssh. | 549 | * Windows setup hints:: Issues with Cygwin ssh. |
| 520 | @end menu | 550 | @end menu |
| @@ -557,9 +587,10 @@ startup may drown out the improvement in file transfer times. | |||
| 557 | External methods should be configured such a way that they don't | 587 | External methods should be configured such a way that they don't |
| 558 | require a password (with @command{ssh-agent}, or such alike). Modern | 588 | require a password (with @command{ssh-agent}, or such alike). Modern |
| 559 | @command{scp} implementations offer options to reuse existing | 589 | @command{scp} implementations offer options to reuse existing |
| 560 | @command{ssh} connections, see method @command{scpc}. If it isn't | 590 | @command{ssh} connections, which will be enabled by default if |
| 561 | possible, you should consider @ref{Password handling}, otherwise you | 591 | available. If it isn't possible, you should consider @ref{Password |
| 562 | will be prompted for a password every copy action. | 592 | handling}, otherwise you will be prompted for a password every copy |
| 593 | action. | ||
| 563 | 594 | ||
| 564 | 595 | ||
| 565 | @node Inline methods | 596 | @node Inline methods |
| @@ -618,13 +649,6 @@ Connect to the remote host with @command{ssh}. This is identical to | |||
| 618 | the previous option except that the @command{ssh} package is used, | 649 | the previous option except that the @command{ssh} package is used, |
| 619 | making the connection more secure. | 650 | making the connection more secure. |
| 620 | 651 | ||
| 621 | There are also two variants, @option{ssh1} and @option{ssh2}, that | ||
| 622 | call @samp{ssh -1} and @samp{ssh -2}, respectively. This way, you can | ||
| 623 | explicitly select whether you want to use the SSH protocol version 1 | ||
| 624 | or 2 to connect to the remote host. (You can also specify in | ||
| 625 | @file{~/.ssh/config}, the SSH configuration file, which protocol | ||
| 626 | should be used, and use the regular @option{ssh} method.) | ||
| 627 | |||
| 628 | All the methods based on @command{ssh} have an additional feature: you | 652 | All the methods based on @command{ssh} have an additional feature: you |
| 629 | can specify a host name which looks like @file{host#42} (the real host | 653 | can specify a host name which looks like @file{host#42} (the real host |
| 630 | name, then a hash sign, then a port number). This means to connect to | 654 | name, then a hash sign, then a port number). This means to connect to |
| @@ -720,16 +744,6 @@ remote host. | |||
| 720 | 744 | ||
| 721 | This supports the @samp{-P} argument. | 745 | This supports the @samp{-P} argument. |
| 722 | 746 | ||
| 723 | Additionally, the methods @option{plink1} and @option{plink2} are | ||
| 724 | provided, which call @samp{plink -1 -ssh} or @samp{plink -2 -ssh} in | ||
| 725 | order to use SSH protocol version 1 or 2 explicitly. | ||
| 726 | |||
| 727 | CCC: Do we have to connect to the remote host once from the command | ||
| 728 | line to accept the SSH key? Maybe this can be made automatic? | ||
| 729 | |||
| 730 | CCC: Say something about the first shell command failing. This might | ||
| 731 | be due to a wrong setting of @code{tramp-rsh-end-of-line}. | ||
| 732 | |||
| 733 | 747 | ||
| 734 | @item @option{plinkx} | 748 | @item @option{plinkx} |
| 735 | @cindex method plinkx | 749 | @cindex method plinkx |
| @@ -793,13 +807,6 @@ The cost of the cryptographic handshake at the start of an @command{scp} | |||
| 793 | session can begin to absorb the advantage that the lack of encoding and | 807 | session can begin to absorb the advantage that the lack of encoding and |
| 794 | decoding presents. | 808 | decoding presents. |
| 795 | 809 | ||
| 796 | There are also two variants, @option{scp1} and @option{scp2}, that | ||
| 797 | call @samp{ssh -1} and @samp{ssh -2}, respectively. This way, you can | ||
| 798 | explicitly select whether you want to use the SSH protocol version 1 | ||
| 799 | or 2 to connect to the remote host. (You can also specify in | ||
| 800 | @file{~/.ssh/config}, the SSH configuration file, which protocol | ||
| 801 | should be used, and use the regular @option{scp} method.) | ||
| 802 | |||
| 803 | All the @command{ssh} based methods support the @samp{-p} feature | 810 | All the @command{ssh} based methods support the @samp{-p} feature |
| 804 | where you can specify a port number to connect to in the host name. | 811 | where you can specify a port number to connect to in the host name. |
| 805 | For example, the host name @file{host#42} tells @value{tramp} to | 812 | For example, the host name @file{host#42} tells @value{tramp} to |
| @@ -867,51 +874,6 @@ to not print any shell prompt, which confuses @value{tramp} mightily. | |||
| 867 | This method supports the @samp{-p} argument. | 874 | This method supports the @samp{-p} argument. |
| 868 | 875 | ||
| 869 | 876 | ||
| 870 | @item @option{scpc}---@command{ssh} and @command{scp} | ||
| 871 | @cindex method scpc | ||
| 872 | @cindex scpc method | ||
| 873 | @cindex scp (with scpc method) | ||
| 874 | @cindex ssh (with scpc method) | ||
| 875 | |||
| 876 | Newer versions of @option{ssh} (for example OpenSSH 4) offer an option | ||
| 877 | @option{ControlMaster}. This allows @option{scp} to reuse an existing | ||
| 878 | @option{ssh} channel, which increases performance. | ||
| 879 | |||
| 880 | Before you use this method, you should check whether your @option{ssh} | ||
| 881 | implementation supports this option. Try from the command line | ||
| 882 | |||
| 883 | @example | ||
| 884 | ssh localhost -o ControlMaster=yes /bin/true | ||
| 885 | @end example | ||
| 886 | |||
| 887 | If that command succeeds silently, then you can use @option{scpc}; but | ||
| 888 | if it fails like | ||
| 889 | |||
| 890 | @example | ||
| 891 | command-line: line 0: Bad configuration option: ControlMaster | ||
| 892 | @end example | ||
| 893 | |||
| 894 | then you cannot use it. Note, that the option | ||
| 895 | @option{ControlPersist}, if it is supported by your @option{ssh} | ||
| 896 | version, must be set to @option{no}. | ||
| 897 | |||
| 898 | This method supports the @samp{-p} argument. | ||
| 899 | |||
| 900 | |||
| 901 | @item @option{rsyncc}---@command{ssh} and @command{rsync} | ||
| 902 | @cindex method rsyncc | ||
| 903 | @cindex rsyncc method | ||
| 904 | @cindex rsync (with rsyncc method) | ||
| 905 | @cindex ssh (with rsyncc method) | ||
| 906 | |||
| 907 | Like the @option{scpc} method, @option{rsyncc} improves the underlying | ||
| 908 | @command{ssh} connection by the option @option{ControlMaster}. This | ||
| 909 | allows @command{rsync} to reuse an existing @command{ssh} channel, | ||
| 910 | which increases performance. | ||
| 911 | |||
| 912 | This method supports the @samp{-p} argument. | ||
| 913 | |||
| 914 | |||
| 915 | @item @option{pscp}---@command{plink} and @command{pscp} | 877 | @item @option{pscp}---@command{plink} and @command{pscp} |
| 916 | @cindex method pscp | 878 | @cindex method pscp |
| 917 | @cindex pscp method | 879 | @cindex pscp method |
| @@ -1036,10 +998,26 @@ name. | |||
| 1036 | @cindex method adb | 998 | @cindex method adb |
| 1037 | @cindex adb method | 999 | @cindex adb method |
| 1038 | 1000 | ||
| 1039 | This special method uses the Android Debug Bridge for connecting | 1001 | This special method uses the Android Debug Bridge for accessing |
| 1040 | Android devices. The Android Debug Bridge, part of the Android SDK, | 1002 | Android devices. The Android Debug Bridge must be installed locally. |
| 1041 | must be installed locally. The variable @var{tramp-adb-sdk-dir} must | 1003 | Some GNU/Linux distributions offer it for installation, otherwise it |
| 1042 | be set to its installation directory. | 1004 | can be installed as part of the Android SDK. If the @command{adb} |
| 1005 | program is not found via the @code{$PATH} environment variable, the | ||
| 1006 | variable @var{tramp-adb-program} must point to its absolute path. | ||
| 1007 | |||
| 1008 | Tramp does not connect Android devices to @command{adb}. This must be | ||
| 1009 | performed outside @value{emacsname}. If there is exactly one Android | ||
| 1010 | device connected to @command{adb}, a host name is not needed in the | ||
| 1011 | remote file name. The default @value{tramp} name to be used is | ||
| 1012 | @file{@trampfn{adb, , ,}} therefore. Otherwise, one could find | ||
| 1013 | potential host names with the command @command{adb devices}. | ||
| 1014 | |||
| 1015 | Usually, the @command{adb} method does not need any user name. It | ||
| 1016 | runs under the permissions of the @command{adbd} process on the | ||
| 1017 | Android device. If a user name is specified, @value{tramp} applies an | ||
| 1018 | @command{su} on the device. This does not work with all Android | ||
| 1019 | devices, especially with unrooted ones. In that case, an error | ||
| 1020 | message is displayed. | ||
| 1043 | 1021 | ||
| 1044 | @end table | 1022 | @end table |
| 1045 | 1023 | ||
| @@ -1240,7 +1218,7 @@ user, see the @option{su} or @option{sudo} methods. They offer | |||
| 1240 | shortened syntax for the @samp{root} account, like | 1218 | shortened syntax for the @samp{root} account, like |
| 1241 | @file{@trampfn{su, , , /etc/motd}}. | 1219 | @file{@trampfn{su, , , /etc/motd}}. |
| 1242 | 1220 | ||
| 1243 | People who edit large files may want to consider @option{scpc} instead | 1221 | People who edit large files may want to consider @option{scp} instead |
| 1244 | of @option{ssh}, or @option{pscp} instead of @option{plink}. These | 1222 | of @option{ssh}, or @option{pscp} instead of @option{plink}. These |
| 1245 | external methods are faster than inline methods for large files. | 1223 | external methods are faster than inline methods for large files. |
| 1246 | Note, however, that external methods suffer from some limitations. | 1224 | Note, however, that external methods suffer from some limitations. |
| @@ -1343,7 +1321,7 @@ Like with methods and users, you can also specify different default | |||
| 1343 | hosts for certain method/user combinations via the variable | 1321 | hosts for certain method/user combinations via the variable |
| 1344 | @code{tramp-default-host-alist}. Usually, this isn't necessary, | 1322 | @code{tramp-default-host-alist}. Usually, this isn't necessary, |
| 1345 | because @code{tramp-default-host} should be sufficient. For some | 1323 | because @code{tramp-default-host} should be sufficient. For some |
| 1346 | methods, like @code{adb}, that default value must be overwritten, | 1324 | methods, like @option{adb}, that default value must be overwritten, |
| 1347 | which is already the initial value of @code{tramp-default-host-alist}. | 1325 | which is already the initial value of @code{tramp-default-host-alist}. |
| 1348 | 1326 | ||
| 1349 | @noindent | 1327 | @noindent |
| @@ -2047,6 +2025,77 @@ fi | |||
| 2047 | @end table | 2025 | @end table |
| 2048 | 2026 | ||
| 2049 | 2027 | ||
| 2028 | @node Android shell setup | ||
| 2029 | @section Android shell setup hints | ||
| 2030 | @cindex android shell setup | ||
| 2031 | |||
| 2032 | Android devices use a restricted shell. They can be accessed via the | ||
| 2033 | @option{adb} method. However, this restricts the access to a USB | ||
| 2034 | connection, and it requires the installation of the Android SDK on the | ||
| 2035 | local machine. | ||
| 2036 | |||
| 2037 | When an @command{sshd} process runs on the Android device, like | ||
| 2038 | provided by the @code{SSHDroid} app, any @option{ssh}-based method can | ||
| 2039 | be used. This requires some special settings. | ||
| 2040 | |||
| 2041 | The default shell @code{/bin/sh} does not exist. Instead, you shall | ||
| 2042 | use just @code{sh}, which invokes the shell installed on the device. | ||
| 2043 | You can instruct @value{tramp} by this form: | ||
| 2044 | |||
| 2045 | @lisp | ||
| 2046 | (add-to-list 'tramp-connection-properties | ||
| 2047 | (list (regexp-quote "192.168.0.26") "remote-shell" "sh")) | ||
| 2048 | @end lisp | ||
| 2049 | |||
| 2050 | @noindent | ||
| 2051 | with @samp{192.168.0.26} being the IP address of your Android device. | ||
| 2052 | |||
| 2053 | The user settings for the @code{$PATH} environment variable must be | ||
| 2054 | preserved. It has also been reported, that the commands in | ||
| 2055 | @file{/system/xbin} are better suited than the ones in | ||
| 2056 | @file{/system/bin}. Add these setting: | ||
| 2057 | |||
| 2058 | @lisp | ||
| 2059 | (add-to-list 'tramp-remote-path 'tramp-own-remote-path) | ||
| 2060 | (add-to-list 'tramp-remote-path "/system/xbin") | ||
| 2061 | @end lisp | ||
| 2062 | |||
| 2063 | @noindent | ||
| 2064 | If the Android device is not @samp{rooted}, you must give the shell a | ||
| 2065 | writable directory for temporary files: | ||
| 2066 | |||
| 2067 | @lisp | ||
| 2068 | (add-to-list 'tramp-remote-process-environment "TMPDIR=$HOME") | ||
| 2069 | @end lisp | ||
| 2070 | |||
| 2071 | @noindent | ||
| 2072 | Now you shall be able to open a remote connection with @kbd{C-x C-f | ||
| 2073 | @trampfn{ssh, , 192.168.0.26#2222, }}, given that @command{sshd} | ||
| 2074 | listens on port @samp{2222}. | ||
| 2075 | |||
| 2076 | It is also recommended to add a corresponding entry to your | ||
| 2077 | @file{~/.ssh/config} for that connection, like | ||
| 2078 | |||
| 2079 | @example | ||
| 2080 | Host android | ||
| 2081 | HostName 192.168.0.26 | ||
| 2082 | User root | ||
| 2083 | Port 2222 | ||
| 2084 | @end example | ||
| 2085 | |||
| 2086 | @noindent | ||
| 2087 | In this case, you must change the setting for the remote shell to | ||
| 2088 | |||
| 2089 | @lisp | ||
| 2090 | (add-to-list 'tramp-connection-properties | ||
| 2091 | (list (regexp-quote "android") "remote-shell" "sh")) | ||
| 2092 | @end lisp | ||
| 2093 | |||
| 2094 | @noindent | ||
| 2095 | You would open the connection with @kbd{C-x C-f @trampfn{ssh, , | ||
| 2096 | android, }} then. | ||
| 2097 | |||
| 2098 | |||
| 2050 | @node Auto-save and Backup | 2099 | @node Auto-save and Backup |
| 2051 | @section Auto-save and Backup configuration | 2100 | @section Auto-save and Backup configuration |
| 2052 | @cindex auto-save | 2101 | @cindex auto-save |
| @@ -2294,25 +2343,25 @@ using the default method. @xref{Default Method}. | |||
| 2294 | Some examples of @value{tramp} filenames are shown below. | 2343 | Some examples of @value{tramp} filenames are shown below. |
| 2295 | 2344 | ||
| 2296 | @table @file | 2345 | @table @file |
| 2297 | @item @trampfn{, , melancholia, .emacs} | 2346 | @item @value{prefix}melancholia@value{postfix}.emacs |
| 2298 | Edit the file @file{.emacs} in your home directory on the machine | 2347 | Edit the file @file{.emacs} in your home directory on the machine |
| 2299 | @code{melancholia}. | 2348 | @code{melancholia}. |
| 2300 | 2349 | ||
| 2301 | @item @trampfn{, , melancholia.danann.net, .emacs} | 2350 | @item @value{prefix}melancholia.danann.net@value{postfix}.emacs |
| 2302 | This edits the same file, using the fully qualified domain name of | 2351 | This edits the same file, using the fully qualified domain name of |
| 2303 | the machine. | 2352 | the machine. |
| 2304 | 2353 | ||
| 2305 | @item @trampfn{, , melancholia, ~/.emacs} | 2354 | @item @value{prefix}melancholia@value{postfix}~/.emacs |
| 2306 | This also edits the same file; the @file{~} is expanded to your | 2355 | This also edits the same file; the @file{~} is expanded to your |
| 2307 | home directory on the remote machine, just like it is locally. | 2356 | home directory on the remote machine, just like it is locally. |
| 2308 | 2357 | ||
| 2309 | @item @trampfn{, , melancholia, ~daniel/.emacs} | 2358 | @item @value{prefix}melancholia@value{postfix}~daniel/.emacs |
| 2310 | This edits the file @file{.emacs} in the home directory of the user | 2359 | This edits the file @file{.emacs} in the home directory of the user |
| 2311 | @code{daniel} on the machine @code{melancholia}. The @file{~<user>} | 2360 | @code{daniel} on the machine @code{melancholia}. The @file{~<user>} |
| 2312 | construct is expanded to the home directory of that user on the remote | 2361 | construct is expanded to the home directory of that user on the remote |
| 2313 | machine. | 2362 | machine. |
| 2314 | 2363 | ||
| 2315 | @item @trampfn{, , melancholia, /etc/squid.conf} | 2364 | @item @value{prefix}melancholia@value{postfix}/etc/squid.conf |
| 2316 | This edits the file @file{/etc/squid.conf} on the machine | 2365 | This edits the file @file{/etc/squid.conf} on the machine |
| 2317 | @code{melancholia}. | 2366 | @code{melancholia}. |
| 2318 | 2367 | ||
| @@ -2362,6 +2411,8 @@ number than the default one, given by the method. This is specified | |||
| 2362 | by adding @file{#<port>} to the host name, like in @file{@trampfn{ssh, | 2411 | by adding @file{#<port>} to the host name, like in @file{@trampfn{ssh, |
| 2363 | daniel, melancholia#42, .emacs}}. | 2412 | daniel, melancholia#42, .emacs}}. |
| 2364 | 2413 | ||
| 2414 | Note that @value{tramp} supports only filenames encoded in unibyte. | ||
| 2415 | |||
| 2365 | 2416 | ||
| 2366 | @node Alternative Syntax | 2417 | @node Alternative Syntax |
| 2367 | @section URL-like filename syntax | 2418 | @section URL-like filename syntax |
| @@ -2422,7 +2473,8 @@ If you, for example, type @kbd{C-x C-f @value{prefix}t | |||
| 2422 | @key{TAB}}, @value{tramp} might give you as result the choice for | 2473 | @key{TAB}}, @value{tramp} might give you as result the choice for |
| 2423 | 2474 | ||
| 2424 | @example | 2475 | @example |
| 2425 | @multitable {@trampfn{telnet, , melancholia.danann.net,}} {@trampfn{telnet, , 192.168.0.1,}} | 2476 | @c @multitable {@trampfn{telnet, , melancholia.danann.net,}} {@trampfn{telnet, , 192.168.0.1,}} |
| 2477 | @multitable @columnfractions .5 .5 | ||
| 2426 | @ifset emacs | 2478 | @ifset emacs |
| 2427 | @item @value{prefixhop}telnet@value{postfixhop} @tab tmp/ | 2479 | @item @value{prefixhop}telnet@value{postfixhop} @tab tmp/ |
| 2428 | @item @value{prefixhop}toto@value{postfix} @tab | 2480 | @item @value{prefixhop}toto@value{postfix} @tab |
| @@ -2449,7 +2501,8 @@ Next @kbd{@key{TAB}} brings you all machine names @value{tramp} detects in | |||
| 2449 | your @file{/etc/hosts} file, let's say | 2501 | your @file{/etc/hosts} file, let's say |
| 2450 | 2502 | ||
| 2451 | @example | 2503 | @example |
| 2452 | @multitable {@trampfn{telnet, , melancholia.danann.net,}} {@trampfn{telnet, , 192.168.0.1,}} | 2504 | @multitable @columnfractions .5 .5 |
| 2505 | @c @multitable {@trampfn{telnet, , melancholia.danann.net,}} {@trampfn{telnet, , 192.168.0.1,}} | ||
| 2453 | @item @trampfn{telnet, , 127.0.0.1,} @tab @trampfn{telnet, , 192.168.0.1,} | 2506 | @item @trampfn{telnet, , 127.0.0.1,} @tab @trampfn{telnet, , 192.168.0.1,} |
| 2454 | @item @trampfn{telnet, , @value{ipv6prefix}::1@value{ipv6postfix},} @tab @trampfn{telnet, , localhost,} | 2507 | @item @trampfn{telnet, , @value{ipv6prefix}::1@value{ipv6postfix},} @tab @trampfn{telnet, , localhost,} |
| 2455 | @item @trampfn{telnet, , melancholia.danann.net,} @tab @trampfn{telnet, , melancholia,} | 2508 | @item @trampfn{telnet, , melancholia.danann.net,} @tab @trampfn{telnet, , melancholia,} |
| @@ -2940,7 +2993,7 @@ host as well as the time needed to perform the operations there count. | |||
| 2940 | In order to speed up @value{tramp}, one could either try to avoid some | 2993 | In order to speed up @value{tramp}, one could either try to avoid some |
| 2941 | of the operations, or one could try to improve their performance. | 2994 | of the operations, or one could try to improve their performance. |
| 2942 | 2995 | ||
| 2943 | Use an external method, like @option{scpc}. | 2996 | Use an external method, like @option{scp}. |
| 2944 | 2997 | ||
| 2945 | Use caching. This is already enabled by default. Information about | 2998 | Use caching. This is already enabled by default. Information about |
| 2946 | the remote host as well as the remote files are cached for reuse. The | 2999 | the remote host as well as the remote files are cached for reuse. The |
| @@ -3066,20 +3119,6 @@ Host * | |||
| 3066 | 3119 | ||
| 3067 | 3120 | ||
| 3068 | @item | 3121 | @item |
| 3069 | How can I use @samp{ControlPersist}? | ||
| 3070 | |||
| 3071 | When @samp{ControlPersist} is set to @samp{yes}, the @option{scpc} | ||
| 3072 | method does not work. You can use @option{scpx} instead with the | ||
| 3073 | following settings in @file{~/.ssh/config}: | ||
| 3074 | |||
| 3075 | @example | ||
| 3076 | Host * | ||
| 3077 | ControlMaster auto | ||
| 3078 | ControlPersist yes | ||
| 3079 | @end example | ||
| 3080 | |||
| 3081 | |||
| 3082 | @item | ||
| 3083 | File name completion does not work with @value{tramp} | 3122 | File name completion does not work with @value{tramp} |
| 3084 | 3123 | ||
| 3085 | When you log in to the remote machine, do you see the output of | 3124 | When you log in to the remote machine, do you see the output of |
| @@ -3870,3 +3909,4 @@ for @value{emacsothername}. | |||
| 3870 | @c * Use `filename' resp. `file name' consistently. | 3909 | @c * Use `filename' resp. `file name' consistently. |
| 3871 | @c * Use `host' resp. `machine' consistently. | 3910 | @c * Use `host' resp. `machine' consistently. |
| 3872 | @c * Consistent small or capitalized words especially in menus. | 3911 | @c * Consistent small or capitalized words especially in menus. |
| 3912 | @c * Make a unique declaration of @trampfn. | ||
diff --git a/doc/misc/url.texi b/doc/misc/url.texi index 9e9dbc0a77d..49f8f3f0959 100644 --- a/doc/misc/url.texi +++ b/doc/misc/url.texi | |||
| @@ -890,7 +890,7 @@ containing the data cached for that URL. | |||
| 890 | 890 | ||
| 891 | @c With a large cache of documents on the local disk, it can be very handy | 891 | @c With a large cache of documents on the local disk, it can be very handy |
| 892 | @c when traveling, or any other time the network connection is not active | 892 | @c when traveling, or any other time the network connection is not active |
| 893 | @c (a laptop with a dial-on-demand PPP connection, etc). Emacs/W3 can rely | 893 | @c (a laptop with a dial-on-demand PPP connection, etc.). Emacs/W3 can rely |
| 894 | @c solely on its cache, and avoid checking to see if the page has changed | 894 | @c solely on its cache, and avoid checking to see if the page has changed |
| 895 | @c on the remote server. In the case of a dial-on-demand PPP connection, | 895 | @c on the remote server. In the case of a dial-on-demand PPP connection, |
| 896 | @c this will keep the phone line free as long as possible, only bringing up | 896 | @c this will keep the phone line free as long as possible, only bringing up |
diff --git a/doc/misc/vip.texi b/doc/misc/vip.texi index 01048d43dbf..7c998b37010 100644 --- a/doc/misc/vip.texi +++ b/doc/misc/vip.texi | |||
| @@ -356,7 +356,7 @@ you can abort a partially formed command by typing @kbd{C-g}.@refill | |||
| 356 | As in Vi, searching is done by @kbd{/} and @kbd{?}. The string will be | 356 | As in Vi, searching is done by @kbd{/} and @kbd{?}. The string will be |
| 357 | searched literally by default. To invoke a regular expression search, | 357 | searched literally by default. To invoke a regular expression search, |
| 358 | first execute the search command @kbd{/} (or @kbd{?}) with empty search | 358 | first execute the search command @kbd{/} (or @kbd{?}) with empty search |
| 359 | string. (I.e, type @kbd{/} followed by @key{RET}.) | 359 | string. (I.e., type @kbd{/} followed by @key{RET}.) |
| 360 | A search for empty string will toggle the search mode between vanilla | 360 | A search for empty string will toggle the search mode between vanilla |
| 361 | search and regular expression search. You cannot give an offset to the | 361 | search and regular expression search. You cannot give an offset to the |
| 362 | search string. (It is a limitation.) By default, search will wrap around | 362 | search string. (It is a limitation.) By default, search will wrap around |
diff --git a/doc/misc/viper.texi b/doc/misc/viper.texi index 9bcecf8e3de..8b4c9e93f7c 100644 --- a/doc/misc/viper.texi +++ b/doc/misc/viper.texi | |||
| @@ -3204,7 +3204,7 @@ and they don't look into the value of variable | |||
| 3204 | syntax tables in order to not thwart the various major modes that set these | 3204 | syntax tables in order to not thwart the various major modes that set these |
| 3205 | tables. | 3205 | tables. |
| 3206 | 3206 | ||
| 3207 | The usual Emacs convention is used to indicate Control Characters, i.e | 3207 | The usual Emacs convention is used to indicate Control Characters, i.e., |
| 3208 | C-h for Control-h. @emph{Do not confuse this with a sequence of separate | 3208 | C-h for Control-h. @emph{Do not confuse this with a sequence of separate |
| 3209 | characters | 3209 | characters |
| 3210 | C, -, h!!!} The @kbd{^} is itself, never used to indicate a | 3210 | C, -, h!!!} The @kbd{^} is itself, never used to indicate a |
diff --git a/doc/misc/woman.texi b/doc/misc/woman.texi index 3e4448ed1e0..9b9f9947da5 100644 --- a/doc/misc/woman.texi +++ b/doc/misc/woman.texi | |||
| @@ -904,7 +904,7 @@ for a man configuration file. The default is | |||
| 904 | 904 | ||
| 905 | @noindent | 905 | @noindent |
| 906 | [for GNU/Linux and Cygwin respectively.] A trailing separator (@file{/} | 906 | [for GNU/Linux and Cygwin respectively.] A trailing separator (@file{/} |
| 907 | for UNIX etc.) on directories is optional and the filename matched if a | 907 | for UNIX etc.)@: on directories is optional and the filename matched if a |
| 908 | directory is specified is the first to match the regexp | 908 | directory is specified is the first to match the regexp |
| 909 | @code{man.*\.conf}. If the environment variable @code{MANPATH} is not | 909 | @code{man.*\.conf}. If the environment variable @code{MANPATH} is not |
| 910 | set but a configuration file is found then it is parsed instead (or as | 910 | set but a configuration file is found then it is parsed instead (or as |