Mercurial > emacs
comparison man/misc.texi @ 69737:cd14e584d88e
Many cleanups.
(beginning): Add to summary of topics.
(Shell): Put eshell xref at the end. Remove eshell from table.
(Thumbnails): New node.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Fri, 31 Mar 2006 15:32:20 +0000 |
parents | dc2d5a6655a3 |
children | 2a84440a03fb 482dfed28bee |
comparison
equal
deleted
inserted
replaced
69736:5b3262d81466 | 69737:cd14e584d88e |
---|---|
7 | 7 |
8 This chapter contains several brief topics that do not fit anywhere | 8 This chapter contains several brief topics that do not fit anywhere |
9 else: reading netnews, running shell commands and shell subprocesses, | 9 else: reading netnews, running shell commands and shell subprocesses, |
10 using a single shared Emacs for utilities that expect to run an editor | 10 using a single shared Emacs for utilities that expect to run an editor |
11 as a subprocess, printing hardcopy, sorting text, narrowing display to | 11 as a subprocess, printing hardcopy, sorting text, narrowing display to |
12 part of the buffer, editing double-column files and binary files, saving | 12 part of the buffer, editing double-column files and binary files, |
13 an Emacs session for later resumption, emulating other editors, and | 13 saving an Emacs session for later resumption, following hyperlinks, |
14 various diversions and amusements. | 14 browsing images, emulating other editors, and various diversions and |
15 amusements. | |
15 | 16 |
16 @end iftex | 17 @end iftex |
17 | 18 |
18 @ifnottex | 19 @ifnottex |
19 @raisesections | 20 @raisesections |
47 @end menu | 48 @end menu |
48 | 49 |
49 @node Buffers of Gnus | 50 @node Buffers of Gnus |
50 @subsection Gnus Buffers | 51 @subsection Gnus Buffers |
51 | 52 |
52 As opposed to most normal Emacs packages, Gnus uses a number of | 53 Unlike most Emacs packages, Gnus uses several buffers to display |
53 different buffers to display information and to receive commands. The | 54 information and to receive commands. The three Gnus buffers users use |
54 three buffers users spend most of their time in are the @dfn{group | 55 most are the @dfn{group buffer}, the @dfn{summary buffer} and the |
55 buffer}, the @dfn{summary buffer} and the @dfn{article buffer}. | 56 @dfn{article buffer}. |
56 | 57 |
57 The @dfn{group buffer} contains a list of groups. This is the first | 58 The @dfn{group buffer} contains a list of newsgroups. This is the |
58 buffer Gnus displays when it starts up. It normally displays only the | 59 first buffer Gnus displays when it starts up. It normally displays |
59 groups to which you subscribe and that contain unread articles. Use | 60 only the groups to which you subscribe and that contain unread |
60 this buffer to select a specific group. | 61 articles. Use this buffer to select a specific group. |
61 | 62 |
62 The @dfn{summary buffer} lists one line for each article in a single | 63 The @dfn{summary buffer} lists one line for each article in a single |
63 group. By default, the author, the subject and the line number are | 64 group. By default, the author, the subject and the line number are |
64 displayed for each article, but this is customizable, like most aspects | 65 displayed for each article, but this is customizable, like most aspects |
65 of Gnus display. The summary buffer is created when you select a group | 66 of Gnus display. The summary buffer is created when you select a group |
66 in the group buffer, and is killed when you exit the group. Use this | 67 in the group buffer, and is killed when you exit the group. Use this |
67 buffer to select an article. | 68 buffer to select an article. |
68 | 69 |
69 The @dfn{article buffer} displays the article. In normal Gnus usage, | 70 The @dfn{article buffer} displays the article. In normal Gnus usage, |
70 you don't select this buffer---all useful article-oriented commands work | 71 you see this buffer but you don't select it---all useful |
71 in the summary buffer. But you can select the article buffer, and | 72 article-oriented commands work in the summary buffer. But you can |
72 execute all Gnus commands from that buffer, if you want to. | 73 select the article buffer, and execute all Gnus commands from that |
74 buffer, if you want to. | |
73 | 75 |
74 @node Gnus Startup | 76 @node Gnus Startup |
75 @subsection When Gnus Starts Up | 77 @subsection When Gnus Starts Up |
76 | 78 |
77 At startup, Gnus reads your @file{.newsrc} news initialization file | 79 At startup, Gnus reads your @file{.newsrc} news initialization file |
109 Select articles from the summary buffer. Each article selected is | 111 Select articles from the summary buffer. Each article selected is |
110 displayed in the article buffer in a large window, below the summary | 112 displayed in the article buffer in a large window, below the summary |
111 buffer in its small window. | 113 buffer in its small window. |
112 @end enumerate | 114 @end enumerate |
113 | 115 |
114 Each Gnus buffer has its own special commands; however, the meanings | 116 Each Gnus buffer has its own special commands; the meanings of any |
115 of any given key in the various Gnus buffers are usually analogous, even | 117 given key in the various Gnus buffers are usually analogous, even if |
116 if not identical. Here are commands for the group and summary buffers: | 118 not identical. Here are commands for the group and summary buffers: |
117 | 119 |
118 @table @kbd | 120 @table @kbd |
119 @kindex q @r{(Gnus Group mode)} | 121 @kindex q @r{(Gnus Group mode)} |
120 @findex gnus-group-exit | 122 @findex gnus-group-exit |
121 @item q | 123 @item q |
312 | 314 |
313 Emacs has commands for passing single command lines to inferior shell | 315 Emacs has commands for passing single command lines to inferior shell |
314 processes; it can also run a shell interactively with input and output | 316 processes; it can also run a shell interactively with input and output |
315 to an Emacs buffer named @samp{*shell*} or run a shell inside a terminal | 317 to an Emacs buffer named @samp{*shell*} or run a shell inside a terminal |
316 emulator window. | 318 emulator window. |
317 | |
318 There is a shell implemented entirely in Emacs, documented in a separate | |
319 manual. @xref{Top,Eshell,Eshell, eshell, Eshell: The Emacs Shell}. | |
320 | 319 |
321 @table @kbd | 320 @table @kbd |
322 @item M-! @var{cmd} @key{RET} | 321 @item M-! @var{cmd} @key{RET} |
323 Run the shell command line @var{cmd} and display the output | 322 Run the shell command line @var{cmd} and display the output |
324 (@code{shell-command}). | 323 (@code{shell-command}). |
331 You can then give commands interactively. | 330 You can then give commands interactively. |
332 @item M-x term | 331 @item M-x term |
333 Run a subshell with input and output through an Emacs buffer. | 332 Run a subshell with input and output through an Emacs buffer. |
334 You can then give commands interactively. | 333 You can then give commands interactively. |
335 Full terminal emulation is available. | 334 Full terminal emulation is available. |
336 @item M-x eshell | |
337 @findex eshell | |
338 Start the Emacs shell. | |
339 @end table | 335 @end table |
336 | |
337 @kbd{M-x eshell} invokes a shell implemented entirely in Emacs. It | |
338 is documented in a separate manual. @xref{Top,Eshell,Eshell, eshell, | |
339 Eshell: The Emacs Shell}. | |
340 | 340 |
341 @menu | 341 @menu |
342 * Single Shell:: How to run one shell command and return. | 342 * Single Shell:: How to run one shell command and return. |
343 * Interactive Shell:: Permanent shell taking input via Emacs. | 343 * Interactive Shell:: Permanent shell taking input via Emacs. |
344 * Shell Mode:: Special Emacs commands used with permanent shell. | 344 * Shell Mode:: Special Emacs commands used with permanent shell. |
377 | 377 |
378 If the shell command line ends in @samp{&}, it runs asynchronously. | 378 If the shell command line ends in @samp{&}, it runs asynchronously. |
379 For a synchronous shell command, @code{shell-command} returns the | 379 For a synchronous shell command, @code{shell-command} returns the |
380 command's exit status (0 means success), when it is called from a Lisp | 380 command's exit status (0 means success), when it is called from a Lisp |
381 program. You do not get any status information for an asynchronous | 381 program. You do not get any status information for an asynchronous |
382 command, since it hasn't finished yet. | 382 command, since it hasn't finished yet when @code{shell-command} returns. |
383 | 383 |
384 @kindex M-| | 384 @kindex M-| |
385 @findex shell-command-on-region | 385 @findex shell-command-on-region |
386 @kbd{M-|} (@code{shell-command-on-region}) is like @kbd{M-!} but | 386 @kbd{M-|} (@code{shell-command-on-region}) is like @kbd{M-!} but |
387 passes the contents of the region as the standard input to the shell | 387 passes the contents of the region as the standard input to the shell |
388 command, instead of no input. If a numeric argument is used, meaning | 388 command, instead of no input. With a numeric argument, meaning insert |
389 insert the output in the current buffer, then the old region is deleted | 389 the output in the current buffer, it deletes the old region and the |
390 first and the output replaces it as the contents of the region. It | 390 output replaces it as the contents of the region. It returns the |
391 returns the command's exit status when it is called from a Lisp program. | 391 command's exit status, like @kbd{M-!}. |
392 | 392 |
393 One use for @kbd{M-|} is to run @code{gpg} to see what keys are in | 393 One use for @kbd{M-|} is to run @code{gpg} to see what keys are in |
394 the buffer. For instance, if the buffer contains a GPG key, type | 394 the buffer. For instance, if the buffer contains a GPG key, type |
395 @kbd{C-x h M-| gpg @key{RET}} to feed the entire buffer contents | 395 @kbd{C-x h M-| gpg @key{RET}} to feed the entire buffer contents to |
396 to the @code{gpg} program. That program will ignore everything except | 396 the @code{gpg} program. That program will ignore everything except |
397 the encoded keys, and will output a list of the keys it contains. | 397 the encoded keys, and will output a list of the keys the buffer |
398 contains. | |
398 | 399 |
399 @vindex shell-file-name | 400 @vindex shell-file-name |
400 Both @kbd{M-!} and @kbd{M-|} use @code{shell-file-name} to specify the | 401 Both @kbd{M-!} and @kbd{M-|} use @code{shell-file-name} to specify |
401 shell to use. This variable is initialized based on your @env{SHELL} | 402 the shell to use. This variable is initialized based on your |
402 environment variable when Emacs is started. If the file name does not | 403 @env{SHELL} environment variable when Emacs is started. If the file |
403 specify a directory, the directories in the list @code{exec-path} are | 404 name is relative, Emacs searches the directories in the list |
404 searched; this list is initialized based on the environment variable | 405 @code{exec-path}; this list is initialized based on the environment |
405 @env{PATH} when Emacs is started. Your @file{.emacs} file can override | 406 variable @env{PATH} when Emacs is started. Your @file{.emacs} file |
406 either or both of these default initializations.@refill | 407 can override either or both of these default initializations. |
407 | 408 |
408 Both @kbd{M-!} and @kbd{M-|} wait for the shell command to complete, | 409 Both @kbd{M-!} and @kbd{M-|} wait for the shell command to complete, |
409 unless you end the command with @samp{&} to make it asynchronous. To | 410 unless you end the command with @samp{&} to make it asynchronous. To |
410 stop waiting, type @kbd{C-g} to quit; that terminates the shell | 411 stop waiting, type @kbd{C-g} to quit; that terminates the shell |
411 command with the signal @code{SIGINT}---the same signal that @kbd{C-c} | 412 command with the signal @code{SIGINT}---the same signal that @kbd{C-c} |
412 normally generates in the shell. Emacs waits until the command | 413 normally generates in the shell. Emacs then waits until the command |
413 actually terminates. If the shell command doesn't stop (because it | 414 actually terminates. If the shell command doesn't stop (because it |
414 ignores the @code{SIGINT} signal), type @kbd{C-g} again; this sends | 415 ignores the @code{SIGINT} signal), type @kbd{C-g} again; this sends |
415 the command a @code{SIGKILL} signal which is impossible to ignore. | 416 the command a @code{SIGKILL} signal which is impossible to ignore. |
416 | 417 |
417 Asynchronous commands ending in @samp{&} feed their output into | 418 Asynchronous commands ending in @samp{&} feed their output into |
420 | 421 |
421 To specify a coding system for @kbd{M-!} or @kbd{M-|}, use the command | 422 To specify a coding system for @kbd{M-!} or @kbd{M-|}, use the command |
422 @kbd{C-x @key{RET} c} immediately beforehand. @xref{Communication Coding}. | 423 @kbd{C-x @key{RET} c} immediately beforehand. @xref{Communication Coding}. |
423 | 424 |
424 @vindex shell-command-default-error-buffer | 425 @vindex shell-command-default-error-buffer |
425 Error output from the command is normally intermixed with the regular | 426 Error output from these commands is normally intermixed with the |
426 output. If you set the variable | 427 regular output. But if the variable |
427 @code{shell-command-default-error-buffer} to a string, which is a buffer | 428 @code{shell-command-default-error-buffer} has a string as value, and |
428 name, error output is inserted before point in the buffer of that name. | 429 it's the name of a buffer, @kbd{M-!} and @kbd{M-|} insert error output |
430 before point in that buffer. | |
429 | 431 |
430 @node Interactive Shell | 432 @node Interactive Shell |
431 @subsection Interactive Inferior Shell | 433 @subsection Interactive Inferior Shell |
432 | 434 |
433 @findex shell | 435 @findex shell |
454 | 456 |
455 To make multiple subshells, you can invoke @kbd{M-x shell} with a | 457 To make multiple subshells, you can invoke @kbd{M-x shell} with a |
456 prefix argument (e.g. @kbd{C-u M-x shell}), which will read a buffer | 458 prefix argument (e.g. @kbd{C-u M-x shell}), which will read a buffer |
457 name and create (or reuse) a subshell in that buffer. You can also | 459 name and create (or reuse) a subshell in that buffer. You can also |
458 rename the @samp{*shell*} buffer using @kbd{M-x rename-uniquely}, then | 460 rename the @samp{*shell*} buffer using @kbd{M-x rename-uniquely}, then |
459 create a new @samp{*shell*} buffer using plain @kbd{M-x shell}. All the | 461 create a new @samp{*shell*} buffer using plain @kbd{M-x shell}. |
460 subshells in different buffers run independently and in parallel. | 462 Subshells in different buffers run independently and in parallel. |
461 | 463 |
462 @vindex explicit-shell-file-name | 464 @vindex explicit-shell-file-name |
463 @cindex environment variables for subshells | 465 @cindex environment variables for subshells |
464 @cindex @env{ESHELL} environment variable | 466 @cindex @env{ESHELL} environment variable |
465 @cindex @env{SHELL} environment variable | 467 @cindex @env{SHELL} environment variable |
477 @var{shellname} is the name of the file that the shell was loaded | 479 @var{shellname} is the name of the file that the shell was loaded |
478 from. For example, if you use bash, the file sent to it is | 480 from. For example, if you use bash, the file sent to it is |
479 @file{~/.emacs_bash}. | 481 @file{~/.emacs_bash}. |
480 | 482 |
481 To specify a coding system for the shell, you can use the command | 483 To specify a coding system for the shell, you can use the command |
482 @kbd{C-x @key{RET} c} immediately before @kbd{M-x shell}. You can also | 484 @kbd{C-x @key{RET} c} immediately before @kbd{M-x shell}. You can |
483 specify a coding system after starting the shell by using @kbd{C-x | 485 also change the coding system for a running subshell by typing |
484 @key{RET} p} in the shell buffer. @xref{Communication Coding}. | 486 @kbd{C-x @key{RET} p} in the shell buffer. @xref{Communication |
487 Coding}. | |
485 | 488 |
486 @cindex @env{EMACS} environment variable | 489 @cindex @env{EMACS} environment variable |
487 Unless the environment variable @env{EMACS} is already defined, | 490 Unless the environment variable @env{EMACS} is already defined, |
488 Emacs defines it in the subshell, with value @code{t}. A shell script | 491 Emacs defines it in the subshell, with value @code{t}. A shell script |
489 can check this variable to determine whether it has been run from an | 492 can check this variable to determine whether it has been run from an |
503 @table @kbd | 506 @table @kbd |
504 @item @key{RET} | 507 @item @key{RET} |
505 @kindex RET @r{(Shell mode)} | 508 @kindex RET @r{(Shell mode)} |
506 @findex comint-send-input | 509 @findex comint-send-input |
507 At end of buffer send line as input; otherwise, copy current line to | 510 At end of buffer send line as input; otherwise, copy current line to |
508 end of buffer and send it (@code{comint-send-input}). When a line is | 511 end of buffer and send it (@code{comint-send-input}). Copying a line |
509 copied, any prompt at the beginning of the line (text output by | 512 in this way omits any prompt at the beginning of the line (text output |
510 programs preceding your input) is omitted. @xref{Shell Prompts}, for | 513 by programs preceding your input). @xref{Shell Prompts}, for how |
511 how Shell mode recognizes prompts. | 514 Shell mode recognizes prompts. |
512 | 515 |
513 @item @key{TAB} | 516 @item @key{TAB} |
514 @kindex TAB @r{(Shell mode)} | 517 @kindex TAB @r{(Shell mode)} |
515 @findex comint-dynamic-complete | 518 @findex comint-dynamic-complete |
516 Complete the command name or file name before point in the shell buffer | 519 Complete the command name or file name before point in the shell buffer |
2183 @findex wordstar-mode | 2186 @findex wordstar-mode |
2184 @kbd{M-x wordstar-mode} provides a major mode with WordStar-like | 2187 @kbd{M-x wordstar-mode} provides a major mode with WordStar-like |
2185 key bindings. | 2188 key bindings. |
2186 @end table | 2189 @end table |
2187 | 2190 |
2188 @node Hyperlinking, Dissociated Press, Emulation, Top | 2191 @node Hyperlinking, Thumbnails, Emulation, Top |
2189 @section Hyperlinking and Navigation Features | 2192 @section Hyperlinking and Navigation Features |
2190 | 2193 |
2191 @cindex hyperlinking | 2194 @cindex hyperlinking |
2192 @cindex navigation | 2195 @cindex navigation |
2193 Various modes documented elsewhere have hypertext features so that | 2196 Various modes documented elsewhere have hypertext features so that |
2349 @kindex C-S-Mouse-3 @r{(FFAP)} | 2352 @kindex C-S-Mouse-3 @r{(FFAP)} |
2350 Display a menu of files and URLs mentioned in current buffer, then | 2353 Display a menu of files and URLs mentioned in current buffer, then |
2351 find the one you select (@code{ffap-menu}). | 2354 find the one you select (@code{ffap-menu}). |
2352 @end table | 2355 @end table |
2353 | 2356 |
2354 @node Dissociated Press, Amusements, Hyperlinking, Top | 2357 @node Thumbnails, Dissociated Press, Hyperlinking, Top |
2358 @section Viewing Images as Thumbnails | |
2359 @cindex tumme mode | |
2360 @cindex thumbnails | |
2361 | |
2362 Tumme is a facility for browsing image files. It provides viewing | |
2363 of the original file, either as a thumbnail or in full size, inside | |
2364 Emacs or in an external viewer. | |
2365 | |
2366 To enter Tumme, type @kbd{M-x tumme}. It prompts for a directory; | |
2367 specify one that has images files. This creates thumbnails for all | |
2368 the images in that directory, and displays them all in the ``thumbnail | |
2369 buffer''. This takes a long time if the directory contains many image | |
2370 files, and it won't operate if the number of image files exceeds | |
2371 @code{tumme-show-all-from-dir-max-files}. | |
2372 | |
2373 @kindex C-t d @r{(Tumme)} | |
2374 @findex tumme-display-thumbs | |
2375 You can also enter Tumme through Dired. Mark the image files you | |
2376 want to look at, using @kbd{m} as usual, then type @kbd{C-t d} | |
2377 (@code{tumme-display-thumbs}). This too creates and switches to | |
2378 a buffer containing thumbnails, corresponding to the marked files. | |
2379 | |
2380 With point in the thumbnail buffer, type @kbd{RET} | |
2381 (@code{tumme-display-thumbnail-original-image}) to display a sized | |
2382 version of it in another window. This sizes the image to fit the | |
2383 window. Use the arrow keys to move around in the buffer. For easy | |
2384 browing, type @kbd{SPC} (@code{tumme-display-next-thumbnail-original}) | |
2385 to advance and display the next image. Typing @kbd{DEL} | |
2386 (@code{tumme-display-previous-thumbnail-original}) backs up to the | |
2387 previous thumbnail and displays that instead. | |
2388 | |
2389 @vindex tumme-external-viewer | |
2390 To view and the image in its original size, either provide a prefix | |
2391 argument (@kbd{C-u}) before pressing @kbd{RET}, or type @kbd{C-@key{RET}} | |
2392 (@code{tumme-thumbnail-display-external}) to display the image in an | |
2393 external viewer. You must first configure | |
2394 @code{tumme-external-viewer}. | |
2395 | |
2396 You can delete images through Tumme also. Type @kbd{d} | |
2397 (@code{tumme-flag-thumb-original-file}) to flag the image file for | |
2398 deletion in the Dired buffer. You can also delete the thumbnail image | |
2399 from the thumbnail buffer with @kbd{C-d} (@code{tumme-delete-char}). | |
2400 | |
2401 More advanced features include @dfn{image tags}, which are metadata | |
2402 used to categorize image files. The tags are stored in a plain text | |
2403 file. | |
2404 @c ??? What is the file name? | |
2405 | |
2406 To tag image files, mark them in the dired buffer and type @kbd{C-t | |
2407 t} (@code{tumme-tag-files}). You will be prompted for a tag. To mark | |
2408 files having a certain tag, type @kbd{C-t f} | |
2409 (@code{tumme-mark-tagged-files}). After marking image files with a | |
2410 certain tag, you can use @kbd{C-t d} to view them. | |
2411 | |
2412 @c ??? Remove what? The tag? | |
2413 You can also tag a file from the thumbnail buffer by typing @kbd{t | |
2414 t} and remove it by typing @kbd{t r}. There is also a special ``tag'' | |
2415 called ``comment'' for each file (it is not a tag in the exact same | |
2416 sense as the other tags, it is handled slightly different). That is | |
2417 used to enter a comment or description about the image. You comment a | |
2418 file from the thumbnail buffer by typing @kbd{c}. You will be | |
2419 prompted for a comment. Type @kbd{C-t c} to add a comment from Dired | |
2420 (@code{tumme-dired-comment-files}). | |
2421 | |
2422 Tumme also provides simple image manipulation. In the thumbnail | |
2423 buffer, type @kbd{L} to rotate the original image 90 degrees anti | |
2424 clockwise, and @kbd{R} to rotate it 90 degrees clockwise. This | |
2425 rotation is lossless, and uses an external utility called JpegTRAN. | |
2426 | |
2427 @node Dissociated Press, Amusements, Thumbnails, Top | |
2355 @section Dissociated Press | 2428 @section Dissociated Press |
2356 | 2429 |
2357 @findex dissociated-press | 2430 @findex dissociated-press |
2358 @kbd{M-x dissociated-press} is a command for scrambling a file of text | 2431 @kbd{M-x dissociated-press} is a command for scrambling a file of text |
2359 either word by word or character by character. Starting from a buffer of | 2432 either word by word or character by character. Starting from a buffer of |
2374 one run of consecutive words or characters and the start of the next. | 2447 one run of consecutive words or characters and the start of the next. |
2375 That is, if it has just output `president' and then decides to jump | 2448 That is, if it has just output `president' and then decides to jump |
2376 to a different point in the file, it might spot the `ent' in `pentagon' | 2449 to a different point in the file, it might spot the `ent' in `pentagon' |
2377 and continue from there, producing `presidentagon'.@footnote{This | 2450 and continue from there, producing `presidentagon'.@footnote{This |
2378 dissociword actually appeared during the Vietnam War, when it was very | 2451 dissociword actually appeared during the Vietnam War, when it was very |
2379 appropriate.} Long sample texts produce the best results. | 2452 appropriate. Bush has made it appropriate again.} Long sample texts |
2453 produce the best results. | |
2380 | 2454 |
2381 @cindex againformation | 2455 @cindex againformation |
2382 A positive argument to @kbd{M-x dissociated-press} tells it to operate | 2456 A positive argument to @kbd{M-x dissociated-press} tells it to operate |
2383 character by character, and specifies the number of overlap characters. A | 2457 character by character, and specifies the number of overlap characters. A |
2384 negative argument tells it to operate word by word and specifies the number | 2458 negative argument tells it to operate word by word, and specifies the number |
2385 of overlap words. In this mode, whole words are treated as the elements to | 2459 of overlap words. In this mode, whole words are treated as the elements to |
2386 be permuted, rather than characters. No argument is equivalent to an | 2460 be permuted, rather than characters. No argument is equivalent to an |
2387 argument of two. For your againformation, the output goes only into the | 2461 argument of two. For your againformation, the output goes only into the |
2388 buffer @samp{*Dissociation*}. The buffer you start with is not changed. | 2462 buffer @samp{*Dissociation*}. The buffer you start with is not changed. |
2389 | 2463 |
2390 @cindex Markov chain | 2464 @cindex Markov chain |
2391 @cindex ignoriginal | 2465 @cindex ignoriginal |
2392 @cindex techniquitous | 2466 @cindex techniquitous |
2393 Dissociated Press produces nearly the same results as a Markov chain | 2467 Dissociated Press produces results fairly like those of a Markov |
2394 based on a frequency table constructed from the sample text. It is, | 2468 chain based on a frequency table constructed from the sample text. It |
2395 however, an independent, ignoriginal invention. Dissociated Press | 2469 is, however, an independent, ignoriginal invention. Dissociated Press |
2396 techniquitously copies several consecutive characters from the sample | 2470 techniquitously copies several consecutive characters from the sample |
2397 between random choices, whereas a Markov chain would choose randomly for | 2471 between random choices, whereas a Markov chain would choose randomly |
2398 each word or character. This makes for more plausible sounding results, | 2472 for each word or character. This makes for more plausible sounding |
2399 and runs faster. | 2473 results, and runs faster. |
2400 | 2474 |
2401 @cindex outragedy | 2475 @cindex outragedy |
2402 @cindex buggestion | 2476 @cindex buggestion |
2403 @cindex properbose | 2477 @cindex properbose |
2404 @cindex mustatement | 2478 @cindex mustatement |
2405 @cindex developediment | 2479 @cindex developediment |
2406 @cindex userenced | 2480 @cindex userenced |
2407 It is a mustatement that too much use of Dissociated Press can be a | 2481 It is a mustatement that too much use of Dissociated Press can be a |
2408 developediment to your real work. Sometimes to the point of outragedy. | 2482 developediment to your real work, sometimes to the point of outragedy. |
2409 And keep dissociwords out of your documentation, if you want it to be well | 2483 And keep dissociwords out of your documentation, if you want it to be well |
2410 userenced and properbose. Have fun. Your buggestions are welcome. | 2484 userenced and properbose. Have fun. Your buggestions are welcome. |
2411 | 2485 |
2412 @node Amusements, Customization, Dissociated Press, Top | 2486 @node Amusements, Customization, Dissociated Press, Top |
2413 @section Other Amusements | 2487 @section Other Amusements |
2427 | 2501 |
2428 @findex blackbox | 2502 @findex blackbox |
2429 @findex mpuz | 2503 @findex mpuz |
2430 @findex 5x5 | 2504 @findex 5x5 |
2431 @cindex puzzles | 2505 @cindex puzzles |
2432 @kbd{M-x blackbox}, @kbd{M-x mpuz} and @kbd{M-x 5x5} are kinds of puzzles. | 2506 @kbd{M-x blackbox}, @kbd{M-x mpuz} and @kbd{M-x 5x5} are puzzles. |
2433 @code{blackbox} challenges you to determine the location of objects | 2507 @code{blackbox} challenges you to determine the location of objects |
2434 inside a box by tomography. @code{mpuz} displays a multiplication | 2508 inside a box by tomography. @code{mpuz} displays a multiplication |
2435 puzzle with letters standing for digits in a code that you must | 2509 puzzle with letters standing for digits in a code that you must |
2436 guess---to guess a value, type a letter and then the digit you think it | 2510 guess---to guess a value, type a letter and then the digit you think it |
2437 stands for. The aim of @code{5x5} is to fill in all the squares. | 2511 stands for. The aim of @code{5x5} is to fill in all the squares. |