Mercurial > emacs
changeset 90128:13796b0653c7
Revision: miles@gnu.org--gnu-2005/emacs--unicode--0--patch-29
Merge from emacs--cvs-trunk--0
Patches applied:
* emacs--cvs-trunk--0 (patch 192-205)
- Update from CVS
- Use gdb-ui breakpoint faces on ttys too
- Tweak gdb-ui breakpoint faces
- Tweak info/.arch-inventory to identify info/.cvsignore as source
- Clean up gdb-ui breakpoint faces
line wrap: on
line diff
--- a/etc/ChangeLog Sat Mar 19 02:42:17 2005 +0000 +++ b/etc/ChangeLog Thu Mar 24 18:41:26 2005 +0000 @@ -1,3 +1,11 @@ +2005-03-23 David Ponce <david@dponce.com> + + * NEWS: Mention recentf-keep. + +2005-03-17 Lute Kamstra <lute@gnu.org> + + * TODO: Remove define-generic-mode entry (DONE). + 2005-03-10 Michael Albinus <michael.albinus@gmx.de> * NEWS: Explain how to default Tramp to FTP.
--- a/etc/NEWS Sat Mar 19 02:42:17 2005 +0000 +++ b/etc/NEWS Thu Mar 24 18:41:26 2005 +0000 @@ -104,6 +104,7 @@ choose one of them in case your language setup doesn't automatically select the right one. +--- ** You can build Emacs with Gtk+ widgets by specifying `--with-x-toolkit=gtk' when you run configure. This requires Gtk+ 2.0 or newer. This port provides a way to display multilingual text in menus (with some caveats). @@ -111,6 +112,7 @@ --- ** Emacs can now be built without sound support. +--- ** The `emacsserver' program has been removed, replaced with elisp code. --- @@ -149,6 +151,7 @@ item was added to the menu bar that makes it easy accessible (Help->More Manuals->Introduction to Emacs Lisp). +--- ** Support for Cygwin was added. --- @@ -164,6 +167,7 @@ --- ** Support for GNU/Linux systems on X86-64 machines was added. +--- ** Mac OS 9 port now uses the Carbon API by default. You can also create non-Carbon build by specifying `NonCarbon' as a target. See the files mac/README and mac/INSTALL for build instructions. @@ -178,6 +182,7 @@ * Changes in Emacs 22.1 ++++ ** The commands copy-file, rename-file, make-symbolic-link and add-name-to-file, when given a directory as the "new name" argument, convert it to a file name by merging in the within-directory part of @@ -185,27 +190,34 @@ commands cp, mv, and ln follow.) Thus, M-x copy-file RET ~/foo RET /tmp RET copies ~/foo to /tmp/foo. ++++ ** M-o now is the prefix key for setting text properties; M-o M-o requests refontification. ++++ ** M-g is now a prefix key. M-g g and M-g M-g run goto-line. ++++ ** font-lock-lines-before specifies a number of lines before the current line that should be refontified when you change the buffer. The default value is 1. ++++ ** C-u M-x goto-line now switches to the most recent previous buffer, and goes to the specified line in that buffer. When goto-line starts to execute, if there's a number in the buffer at point then it acts as the default argument for the minibuffer. -** Emacs now responds to mouse-clicks on the mode-line, header-line -and display margin, when run in an xterm. - +--- +** Emacs now responds to mouse-clicks on the mode-line, header-line and +display margin, when run in an xterm. + ++++ ** M-SPC (just-one-space) when given a numeric argument N converts whitespace around point to N spaces. ++++ ** Control characters and escape glyphs are now shown in the new escape-glyph face. @@ -219,8 +231,10 @@ you don't want the .type-break file in your home directory or are annoyed by the need for interaction when you kill Emacs. +--- ** display-battery has been replaced by display-battery-mode. +--- ** calculator.el now has radix grouping mode, which is available when `calculator-output-radix' is non-nil. In this mode a separator character is used every few digits, making it easier to see byte @@ -280,6 +294,7 @@ (beyond the value of `undo-outer-limit'), Emacs discards it and warns you about it. ++++ ** line-move-ignore-invisible now defaults to t. ** In Outline mode, hide-body no longer hides lines at the top @@ -315,6 +330,7 @@ will start up Emacs on an initial frame of 100x20 with red background, irrespective of geometry or background setting on the Windows registry. +--- ** The terminal emulation code in term.el has been improved, it can run most curses applications now. @@ -324,21 +340,26 @@ *** The function `eval-defun' (C-M-x) called on defface reinitializes the face to the value specified in the defface expression. ++++ *** Typing C-x C-e twice prints the value of the integer result in additional formats (octal, hexadecimal, character) specified by the new function `eval-expression-print-format'. The same function also defines the result format for `eval-expression' (M-:), `eval-print-last-sexp' (C-j) and some edebug evaluation functions. +--- ** New input method chinese-sisheng for inputting Chinese Pinyin characters. ++++ ** New command quail-show-key shows what key (or key sequence) to type in the current input method to input a character at point. ++++ ** Convenient commands to switch buffers in a cyclic order are C-x <left> (prev-buffer) and C-x <right> (next-buffer). +--- ** Commands winner-redo and winner-undo, from winner.el, are now bound to C-c <left> and C-c <right>, respectively. This is an incompatible change. @@ -385,13 +406,16 @@ ** New command line option -nbc or --no-blinking-cursor disables the blinking cursor on graphical terminals. ++++ ** C-h v and C-h f commands now include a hyperlink to the C source for variables and functions defined in C (if the C source is available). +--- ** When used interactively, `format-write-file' now asks for confirmation before overwriting an existing file, unless a prefix argument is supplied. This behavior is analogous to `write-file'. ++++ ** You can now use Auto Revert mode to `tail' a file. If point is at the end of a file buffer before reverting, Auto Revert mode keeps it at the end after reverting. Similarly if point is @@ -406,6 +430,7 @@ mode Auto Revert Tail mode. The function `auto-revert-tail-mode' toggles this mode. ++++ ** Auto Revert mode is now more careful to avoid excessive reverts and other potential problems when deciding which non-file buffers to revert. This matters especially if Global Auto Revert mode is enabled @@ -422,10 +447,12 @@ which it is active. If the option is nil, the default, then this info only gets updated whenever the buffer gets reverted. ++++ ** New command `Buffer-menu-toggle-files-only' toggles display of file buffers only in the Buffer Menu. It is bound to `T' in Buffer Menu mode. +--- ** M-x compile has become more robust and reliable Quite a few more kinds of messages are recognized. Messages that are @@ -455,23 +482,28 @@ ** Grep has been decoupled from compilation mode setup. +--- *** There's a new separate package grep.el. +--- *** M-x grep has been adapted to new compile Hits are fontified in green, and hits in binary files in orange. Grep buffers can be saved and automatically revisited with the new Grep mode. +--- *** Grep commands now have their own submenu and customization group. +++ *** `grep-find' is now also available under the name `find-grep' where people knowing `find-grep-dired' would probably expect it. +--- *** The new variables `grep-window-height', `grep-auto-highlight', and `grep-scroll-output' can be used to override the corresponding compilation mode settings for grep commands. ++++ *** New option `grep-highlight-matches' highlightes matches in *grep* buffer. It uses a special feature of some grep programs which accept --color option to output markers around matches. When going to the next @@ -479,6 +511,7 @@ buffer. Otherwise, if `grep-highlight-matches' is nil, the whole source line is highlighted. ++++ *** New key bindings in grep output window: SPC and DEL scrolls window up and down. C-n and C-p moves to next and previous match in the grep window. RET jumps to the source line of @@ -487,10 +520,12 @@ previous or next file in the grep output. TAB also jumps to the next file. ++++ ** New options `next-error-highlight' and `next-error-highlight-no-select' specify the method of highlighting of the corresponding source line in new face `next-error'. ++++ ** A new minor mode `next-error-follow-minor-mode' can be used in compilation-mode, grep-mode, occur-mode, and diff-mode (i.e. all the modes that can use `next-error'). In this mode, cursor motion in the @@ -498,8 +533,10 @@ matches, compilation errors, etc. This minor mode can be toggled with C-c C-f. ++++ ** M-x diff uses diff-mode instead of compilation-mode. ++++ ** M-x compare-windows now can automatically skip non-matching text to resync points in both windows. @@ -520,13 +557,16 @@ +++ ** Desktop package ++++ *** Desktop saving is now a minor mode, desktop-save-mode. Variable desktop-enable is obsolete. Customize desktop-save-mode to enable desktop saving. +--- *** Buffers are saved in the desktop file in the same order as that in the buffer list. ++++ *** The desktop package can be customized to restore only some buffers immediately, remaining buffers are restored lazily (when Emacs is idle). @@ -552,6 +592,7 @@ - desktop-lazy-verbose. Verbose reporting of lazily created buffers. - desktop-lazy-idle-delay. Idle delay before starting to create buffers. ++++ *** New command line option --no-desktop *** New hooks: @@ -631,6 +672,7 @@ enclosed in single quotes and preceded by `info anchor' or `Info anchor' (in addition to earlier `info node' and `Info node'). ++++ ** The max size of buffers and integers has been doubled. On 32bit machines, it is now 256M (i.e. 268435455). @@ -716,6 +758,7 @@ ** Enhancements to apropos commands: ++++ *** The apropos commands now accept a list of words to match. When more than one word is specified, at least two of those words must be present for an item to match. Regular expression matching is still @@ -737,17 +780,20 @@ When enabled, it makes all invisible text visible. When disabled, it restores the previous value of `buffer-invisibility-spec'. +--- ** New command `kill-whole-line' kills an entire line at once. By default, it is bound to C-S-<backspace>. ** New commands to operate on pairs of open and close characters: `insert-pair', `delete-pair', `raise-sexp'. ++++ ** A prefix argument of C-M-q in Emacs Lisp mode pretty-printifies the list starting after point. ** Dired mode: +--- *** New faces dired-header, dired-mark, dired-marked, dired-flagged, dired-ignored, dired-directory, dired-symlink, dired-warning introduced for Dired mode instead of font-lock faces. @@ -767,6 +813,7 @@ doublequotes make no difference in the shell, but they prevent special treatment in `dired-do-shell-command'. ++++ *** In Dired, the w command now copies the current line's file name into the kill ring. With a zero prefix arg, copies absolute file names. @@ -801,9 +848,11 @@ ** Info mode: ++++ *** A numeric prefix argument of `info' selects an Info buffer with the number appended to the *info* buffer name (e.g. "*info*<2>"). +--- *** isearch in Info uses Info-search and searches through multiple nodes. Before leaving the initial Info node isearch fails once with the error message [initial node], and with subsequent C-s/C-r continues through @@ -856,6 +905,7 @@ --- *** Info-index offers completion. +--- ** Support for the SQLite interpreter has been added to sql.el by calling 'sql-sqlite'. @@ -903,10 +953,12 @@ *** The new command bibtex-copy-summary-as-kill pushes summary of BibTeX entry to kill ring (bound to C-c C-t). ++++ ** When display margins are present in a window, the fringes are now displayed between the margins and the buffer's text area, rather than at the edges of the window. ++++ ** A window may now have individual fringe and scroll-bar settings, in addition to the individual display margin settings. @@ -919,11 +971,12 @@ These functions return the current locations of the vertical and horizontal scroll bars in a frame or window. ---- ++++ ** Emacs now supports drag and drop for X. Dropping a file on a window opens it, dropping text inserts the text. Dropping a file on a dired buffer copies or moves the file to that directory. ++++ ** Under X, mouse-wheel-mode is turned on by default. ** The X resource useXIM can be used to turn off use of XIM, which may @@ -932,16 +985,20 @@ If the configure option `--without-xim' was used to turn off use of XIM by default, the X resource useXIM can be used to turn it on. ++++ ** `undo-only' does an undo which does not redo any previous undo. ** `uniquify-strip-common-suffix' tells uniquify to prefer `file|dir1' and `file|dir2' to `file|dir1/subdir' and `file|dir2/subdir'. ++++ ** If the user visits a file larger than `large-file-warning-threshold', Emacs prompts her for confirmation. +--- ** A UTF-7 coding system is available in the library `utf-7'. +--- ** GUD mode has its own tool bar for controlling execution of the inferior and other common debugger commands. @@ -951,25 +1008,30 @@ enabled. The new option `recentf-auto-cleanup' controls when to do automatic cleanup. +The `recentf-keep' option replaces `recentf-keep-non-readable-files-p' +and provides a more general mechanism to customize which file names to +keep in the recent list. + With the more advanced option: `recentf-filename-handler', you can specify a function that transforms filenames handled by recentf. For example, if set to `file-truename', the same file will not be in the recent list with different symbolic links. -To follow naming convention, `recentf-keep-non-readable-files-flag' -and `recentf-menu-append-commands-flag' respectively replace the -misnamed options `recentf-keep-non-readable-files-p' and -`recentf-menu-append-commands-p'. The old names remain available as -aliases, but have been marked obsolete. - +To follow naming convention, `recentf-menu-append-commands-flag' +replaces the misnamed option `recentf-menu-append-commands-p'. The +old name remains available as alias, but has been marked obsolete. + ++++ ** The default for the paper size (variable ps-paper-type) is taken from the locale. ++++ ** Init file changes You can now put the init files .emacs and .emacs_SHELL under ~/.emacs.d or directly under ~. Emacs will find them in either place. +--- ** partial-completion-mode now does partial completion on directory names. ** skeleton.el now supports using - to mark the skeleton-point without @@ -989,6 +1051,7 @@ `--display' which tell Emacs respectively to evaluate the given elisp expression and to use the given display when visiting files. ++++ ** User option `server-mode' can be used to start a server process. +++ @@ -996,6 +1059,7 @@ When the file is maintained under version control, that information appears between the position information and the major mode. ++++ ** C-x s (save-some-buffers) now offers an option `d' to diff a buffer against its file, so you can see what changes you would be saving. @@ -1018,6 +1082,7 @@ want to make the buffer writable. (As root, you can in fact alter the file.) ++++ ** The new command `revert-buffer-with-coding-system' (C-x RET r) revisits the current file using a coding system that you specify. @@ -1055,12 +1120,14 @@ specified for that character, the commands by default customize those faces. +--- ** New language environments: French, Ukrainian, Tajik, Bulgarian, Belarusian, Ukrainian, UTF-8, Windows-1255, Welsh, Latin-6, Latin-7, Lithuanian, Latvian, Swedish, Slovenian, Croatian, Georgian, Italian, Russian, Malayalam, Tamil, Russian, Chinese-EUC-TW. (Set up automatically according to the locale.) +--- ** Indian support has been updated. The in-is13194 coding system is now Unicode-based. CDAC fonts are assumed. There is a framework for supporting various @@ -1088,6 +1155,7 @@ and windows-1251 are preloaded since the former is so common and the latter is used by GNU locales. +--- ** The utf-8/16 coding systems have been enhanced. By default, untranslatable utf-8 sequences are simply composed into single quasi-characters. User option `utf-translate-cjk-mode' (it is @@ -1101,13 +1169,16 @@ one-dimensional internal charsets, specifically the ISO-8859 ones. The utf-16 coding system is affected similarly. +--- ** New variable `utf-translate-cjk-unicode-range' controls which Unicode characters to translate in `utf-translate-cjk-mode'. +--- ** iso-10646-1 (`Unicode') fonts can be used to display any range of characters encodable by the utf-8 coding system. Just specify the fontset appropriately. +--- ** New command `ucs-insert' inserts a character specified by its unicode. @@ -1131,6 +1202,7 @@ mule-unicode-0100-24ff charsets) on decoding. Note that this mode will often effectively clobber data with an iso-2022 encoding. +--- ** There is support for decoding Greek and Cyrillic characters into either Unicode (the mule-unicode charsets) or the iso-8859 charsets, when possible. The latter are more space-efficient. This is @@ -1222,12 +1294,15 @@ `auto-hscroll-mode'. The old name is still available as an alias. ** TeX modes: + *** C-c C-c prompts for a command to run, and tries to offer a good default. + +++ *** The user option `tex-start-options-string' has been replaced by two new user options: `tex-start-options', which should hold command-line options to feed to TeX, and `tex-start-commands' which should hold TeX commands to use at startup. + *** verbatim environments are now highlighted in courier by font-lock and super/sub-scripts are made into super/sub-scripts. @@ -1270,6 +1345,7 @@ `query-replace' and related functions simply ignore a match if part of it has a read-only property. ++++ ** When used interactively, the commands `query-replace-regexp' and `replace-regexp' allow \,expr to be used in a replacement string, where expr is an arbitrary Lisp expression evaluated at replacement @@ -1280,9 +1356,11 @@ replacement string to specify a position where the replacement string can be edited for each replacement. ++++ ** query-replace uses isearch lazy highlighting when the new user option `query-replace-lazy-highlight' is non-nil. +--- ** The current match in query-replace is highlighted in new face `query-replace' which by default inherits from isearch face. @@ -1508,6 +1586,7 @@ You can go back to that backup value by selecting "Use Backup Value" under the "[State]" button. +--- ** The new customization type `float' specifies numbers with floating point (no integers are allowed). @@ -1618,6 +1697,7 @@ previous mark, i.e. C-u C-SPC C-SPC C-SPC ... cycles through the mark ring. Use C-u C-u C-SPC to set the mark immediately after a jump. ++++ ** Movement commands `beginning-of-buffer', `end-of-buffer', `beginning-of-defun', `end-of-defun' do not set the mark if the mark is already active in Transient Mark mode. @@ -1648,6 +1728,7 @@ ** mouse-wheels can now scroll a specific fraction of the window (rather than a fixed number of lines) and the scrolling is `progressive'. +--- ** Unexpected yanking of text due to accidental clicking on the mouse wheel button (typically mouse-2) during wheel scrolling is now avoided. This behavior can be customized via the mouse-wheel-click-event and @@ -1675,6 +1756,7 @@ of `cursor-in-non-selected-windows' in the buffer that the cursor appears in. ++++ ** The variable `cursor-in-non-selected-windows' can now be set to any of the recognized cursor types. @@ -1727,6 +1809,7 @@ `appt-display-format' controls how reminders are displayed, replacing appt-issue-message, appt-visible, and appt-msg-window. ++++ ** The new functions `diary-from-outlook', `diary-from-outlook-gnus', and `diary-from-outlook-rmail' can be used to import diary entries from Outlook-format appointments in mail messages. The variable @@ -1754,6 +1837,7 @@ allows you to specify a compression level using the "-z#" option for CVS. ++++ *** New backends for Subversion and Meta-CVS. ** EDiff changes. @@ -2141,6 +2225,7 @@ The function c-toggle-syntactic-indentation can be used to toggle syntactic indentation. ++++ ** The command line option --no-windows has been changed to --no-window-system. The old one still works, but is deprecated. @@ -2188,10 +2273,11 @@ Adapt this to match the format of any compiler directives you use. Lines that match are never indented, and are given distinctive font-locking. ---- ++++ ** F90 mode has new navigation commands `f90-end-of-block', `f90-beginning-of-block', `f90-next-block', `f90-previous-block'. +--- ** F90 mode now has support for hs-minor-mode (hideshow). It cannot deal with every code format, but ought to handle a sizeable majority. @@ -2227,6 +2313,7 @@ to the text before point. If there is text in the buffer after point, it remains unchanged. +--- ** Enhanced visual feedback in *Completions* buffer. Completions lists use faces to highlight what all completions @@ -2604,6 +2691,10 @@ * Incompatible Lisp Changes in Emacs 22.1 +** The new interactive-specification `G' reads a file name +much like `F', but if the input is a directory name (even defaulted), +it returns just the directory name. + +++ ** `suppress-keymap' now works by remapping `self-insert-command' to the command `undefined'. (In earlier Emacs versions, it used @@ -2618,11 +2709,6 @@ * Lisp Changes in Emacs 22.1 +++ -** The new interactive-specification `G' reads a file name -much like `F', but if the input is a directory name (even defaulted), -it returns just the directory name. - -+++ ** An element of buffer-undo-list can now have the form (apply FUNNAME . ARGS), where FUNNAME is a symbol other than t or nil. That stands for a high-level change that should be undone by evaluating (apply @@ -2767,12 +2853,14 @@ (kbd "C-x C-f") => "\^x\^f" ++++ ** The sentinel is now called when a network process is deleted with delete-process. The status message passed to the sentinel for a deleted network process is "deleted". The message passed to the sentinel when the connection is closed by the remote peer has been changed to "connection broken by remote peer". ++++ ** If the buffer's undo list for the current command gets longer than undo-outer-limit, garbage collection empties it. This is to prevent it from using up the available memory and choking Emacs. @@ -2786,14 +2874,17 @@ click-event-style position information for a given visible buffer position or for a given window pixel coordinate. ++++ ** skip-chars-forward and skip-chars-backward now handle character classes such as [:alpha:], along with individual characters and ranges. ++++ ** Function pos-visible-in-window-p now returns the pixel coordinates and partial visiblity state of the corresponding row, if the PARTIALLY arg is non-nil. ++++ ** The function `eql' is now available without requiring the CL package. +++ @@ -2858,6 +2949,7 @@ If the line-spacing property may be a float or cons, the line spacing is calculated as specified above for the line-height property. ++++ ** The buffer local line-spacing variable may now have a float value, which is used as a height relative to the default frame line height. @@ -2924,6 +3016,7 @@ position. The cursor may now be placed on any character of such strings by giving that character a non-nil `cursor' text property. ++++ ** New macro with-local-quit temporarily sets inhibit-quit to nil for use around potentially blocking or long-running code in timers and post-command-hooks. @@ -2954,9 +3047,9 @@ previously created bitmap, or restore a built-in bitmap. *** New function 'set-fringe-bitmap-face' can now be used to set a -specific face to be used for a specific fringe bitmap. Normally, -this should be a face derived from the `fringe' face, specifying -the foreground color as the desired color of the bitmap. +specific face to be used for a specific fringe bitmap. The face is +automatically merged with the `fringe' face, so normally, the face +should only specify the foreground color of the bitmap. *** There are new display properties, left-fringe and right-fringe, that can be used to show a specific bitmap in the left or right fringe @@ -2965,11 +3058,13 @@ Format is 'display '(left-fringe BITMAP [FACE]), where BITMAP is a symbol identifying a fringe bitmap, either built-in or defined with `define-fringe-bitmap', and FACE is an optional face name to be used -for displaying the bitmap. +for displaying the bitmap instead of the default `fringe' face. +When specified, FACE is automatically merged with the `fringe' face. *** New function `fringe-bitmaps-at-pos' returns the current fringe bitmaps in the display line at a given buffer position. ++++ ** Multiple overlay arrows can now be defined and managed via the new variable `overlay-arrow-variable-list'. It contains a list of varibles which contain overlay arrow position markers, including @@ -3018,6 +3113,7 @@ ** `declare' is now a macro. This change was made mostly for documentation purposes and should have no real effect on Lisp code. ++++ ** The new hook `before-save-hook' is invoked by `basic-save-buffer' before saving buffers. This allows packages to perform various final tasks, for example; it can be used by the copyright package to make @@ -3076,13 +3172,16 @@ ** Mouse event enhancements: ++++ *** Mouse clicks on fringes now generates left-fringe or right-fringes events, rather than a text area click event. ++++ *** Mouse clicks in the left and right marginal areas now includes a sensible buffer position corresponding to the first character in the corresponding text row. ++++ *** Function `mouse-set-point' now works for events outside text area. +++ @@ -3118,6 +3217,7 @@ click, the x and y pixel coordinates relative to the top left corner of that object, and the total width and height of that object. ++++ ** New function `force-window-update' can initiate a full redisplay of one or all windows. Normally, this is not needed as changes in window contents are detected automatically. However, certain implicit @@ -3415,6 +3515,7 @@ #!/usr/bin/emacs --script ++++ ** The option --directory DIR now modifies `load-path' immediately. Directories are added to the front of `load-path' in the order they appear on the command line. For example, with this command line: @@ -3798,10 +3899,12 @@ called with two arguments, the start and end of the current region. FUNCTION may set `yank-undo-function' to override the UNDO value. ++++ *** The functions kill-new, kill-append, and kill-region now have an optional argument to specify the yank-handler text property to put on the killed text. ++++ *** The function yank-pop will now use a non-nil value of the variable `yank-undo-function' (instead of delete-region) to undo the previous yank or yank-pop command (or a call to insert-for-yank). The function @@ -3865,6 +3968,7 @@ recommended, but may be necessary for specific applications, such as speech synthesis. +--- *** Adaptive read buffering of subprocess output. On some systems, when emacs reads the output from a subprocess, the @@ -3960,6 +4064,7 @@ +++ ** New function `call-process-shell-command'. ++++ ** New function `process-file'. This is similar to `call-process', but obeys file handlers. The file @@ -4169,6 +4274,7 @@ ** describe-vector now takes a second argument `describer' which is called to print the entries' values. It defaults to `princ'. ++++ ** defcustom and other custom declarations now use a default group (the last prior group defined in the same file) when no :group was given. @@ -4311,6 +4417,7 @@ The Windows specific variable w32-system-coding-system, which was formerly used for that purpose is now an alias for locale-coding-system. +--- ** Functions y-or-n-p, read-char, read-key-sequence and the like, that display a prompt but don't use the minibuffer, now display the prompt using the text properties (esp. the face) of the prompt string. @@ -4318,6 +4425,7 @@ ** New function x-send-client-message sends a client message when running under X. ++++ ** Arguments for remove-overlays are now optional, so that you can remove all overlays in the buffer by just calling (remove-overlay).
--- a/etc/TODO Sat Mar 19 02:42:17 2005 +0000 +++ b/etc/TODO Thu Mar 24 18:41:26 2005 +0000 @@ -15,9 +15,6 @@ ought to be possible to omit text which is invisible (due to a text-property, overlay, or selective display) from the kill-ring. -** Redefine define-generic-mode as a macro, so the compiler - sees the definitions it generates. - ** Change the way define-minor-mode handles autoloading. It should not generate :require. Or :require in defcustom should not be recorded in the user's custom-set-variables call.
--- a/info/.arch-inventory Sat Mar 19 02:42:17 2005 +0000 +++ b/info/.arch-inventory Thu Mar 24 18:41:26 2005 +0000 @@ -1,19 +1,20 @@ -# Only two real source files: "dir", and this file, ".arch-inventory" -source ^(dir|\.arch-inventory)$ +# There are only three real source files in this directory: +# +# "dir", ".cvsignore", and this file, ".arch-inventory" # Everything else is generated at compile time. Unfortunately, the "backup" # category overrides the "source" category, so we have to have horrible # regexp that matches everything _except_ "dir"... # 1 or 2 characters long -backup ^[-_.a-zA-Z0-9][-_.a-zA-Z0-9]?$ +backup ^[a-zA-Z0-9][-_.a-zA-Z0-9]?$ # 4 or more characters long -backup ^[-_.a-zA-Z0-9][-_.a-zA-Z0-9][-_.a-zA-Z0-9][-_.a-zA-Z0-9]+$ +backup ^[a-zA-Z0-9][-_.a-zA-Z0-9][-_.a-zA-Z0-9][-_.a-zA-Z0-9]+$ # 3 chars long, but 1st char not "d" -backup ^[-_.abce-zA-Z0-9][-_.a-zA-Z0-9][-_.a-zA-Z0-9]$ +backup ^[abce-zA-Z0-9][-_.a-zA-Z0-9][-_.a-zA-Z0-9]$ # 3 chars long, but 2nd char not "i" -backup ^[-_.a-zA-Z0-9][-_.a-hj-zA-Z0-9][-_.a-zA-Z0-9]$ +backup ^[a-zA-Z0-9][-_.a-hj-zA-Z0-9][-_.a-zA-Z0-9]$ # 3 chars long, but 3rd char not "r" -backup ^[-_.a-zA-Z0-9][-_.a-zA-Z0-9][-_.a-qs-zA-Z0-9]$ +backup ^[a-zA-Z0-9][-_.a-zA-Z0-9][-_.a-qs-zA-Z0-9]$ # arch-tag: 60144ab9-cdc1-45b6-8193-b9683c80ec86
--- a/lisp/ChangeLog Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/ChangeLog Thu Mar 24 18:41:26 2005 +0000 @@ -1,3 +1,255 @@ +2005-03-23 Miles Bader <miles@gnu.org> + + * progmodes/gdb-ui.el (breakpoint-enabled, breakpoint-disabled): + Remove tty-specific variants, as they're no longer needed. + +2005-03-23 Lute Kamstra <lute@gnu.org> + + * generic-x.el: Code cleanup: make arguments constant whenever + possible. + (installshield-statement-keyword-list) + (installshield-system-functions-list) + (installshield-system-variables-list, installshield-types-list) + (installshield-funarg-constants-list): Make them constants. + + * generic.el (generic-make-keywords-list): Add autoload cookie. + + * calendar/time-date.el: Add comment on time value formats. Don't + require parse-time. + (with-decoded-time-value): New macro. + (encode-time-value): New function. + (time-to-seconds, time-less-p, time-subtract, time-add): Use them. + (days-to-time): Return a valid time value when arg is huge. + (time-since): Use time-subtract. + (time-to-number-of-days): Use time-to-seconds. + +2005-03-23 David Ponce <david@dponce.com> + + * recentf.el: (recentf-keep): New option. + (recentf-menu-action): Default to `find-file'. + (recentf-keep-non-readable-files-flag) + (recentf-keep-non-readable-files-p) + (recentf-file-readable-p, recentf-find-file) + (recentf-cleanup-remote): Remove. + (recentf-include-p): More robust. + (recentf-keep-p): New function. + (recentf-remove-if-non-kept): Rename from + `recentf-remove-if-non-readable'. Use `recentf-keep-p'. All + callers updated. + (recentf-menu-items-for-commands): Fix help string. + (recentf-track-closed-file): Update. Doc fix. + (recentf-cleanup): Update. Count removed files. Doc fix. + +2005-03-23 Kim F. Storm <storm@cua.dk> + + * progmodes/gdb-ui.el (breakpoint-enabled, breakpoint-disabled): + Don't inherit from fringe face (now happens automatically). + +2005-03-22 Kim F. Storm <storm@cua.dk> + + * tooltip.el (tooltip-show-help-function): Ignore negative mouse + position values. + +2005-03-22 Stefan Monnier <monnier@iro.umontreal.ca> + + * menu-bar.el (showhide-date-time): Remove. + (menu-bar-showhide-menu): Use menu-bar-make-mm-toggle. + (menu-bar-make-mm-toggle): Simplify. + +2005-03-22 JUAN-LEON Lahoz Garcia <juanleon1@gmail.com> + + * progmodes/perl-mode.el (perl-font-lock-keywords-2): + Accept qualified variable and function names. + +2005-03-22 Thien-Thi Nguyen <ttn@gnu.org> + + * bindings.el (completion-ignored-extensions): + Remove ".lis" for `vax-vms'. + +2005-03-22 Andreas Schwab <schwab@suse.de> + + * generic-x.el: Revert last change. + * ldefs-boot.el: Update. + +2005-03-22 Jay Belanger <belanger@truman.edu> + + * calc/calc-embed (calc-embedded-original-modes): New variable. + (calc-embedded-save-original-modes) + (calc-embedded-restore-original-modes): New functions. + (calc-do-embedded): Save original modes when entering embedded mode + and restore when leaving embedded mode. + (calc-embedded-modes-change): Change the value of + calc-embedded-original-modes to reflect permanent changes. + +2005-03-22 Lute Kamstra <lute@gnu.org> + + * generic-x.el: Require generic again. + +2005-03-22 Miles Bader <miles@gnu.org> + + * progmodes/gdb-ui.el (breakpoint-enabled, breakpoint-disabled): + Tweak details to look good on both ttys and bitmap displays, light + or dark background, etc. + +2005-03-21 Kim F. Storm <storm@cua.dk> + + * tooltip.el (tooltip-show-help-function): Check car and cdr of + mouse position. + +2005-03-21 Stefan Monnier <monnier@iro.umontreal.ca> + + * icomplete.el: Don't forcibly turn on the mode upon load. + (icomplete-mode): Use define-minor-mode. + (icomplete-eoinput): Default to nil. + (icomplete-minibuffer-setup): Remove autoload. + (icomplete-tidy): Simplify. + (icomplete-exhibit): Use buffer-undo-list to determine if we're still + in the initial state or if the user has modified the field. + Fix handling of icomplete-max-delay-chars. + Remove code that handles the oddball case where + minibuffer-completion-table is an integer. + Wrap icomplete-completions in while-no-input in case building + completions takes more time than expected. + (icomplete-completions): Simplify. + +2005-03-21 Richard M. Stallman <rms@gnu.org> + + * jka-compr.el (jka-compr-really-do-compress): + Make variable buffer-local. + + * image-mode.el: Handle .xpm files too. + (image-toggle-display): Preserve modification flag. + + * help.el (where-is): Don't mention aliases with no key bindings. + +2005-03-21 Lute Kamstra <lute@gnu.org> + + * generic.el: Fix commentary section. Don't require cl for + compilation. + (generic-mode-list): Add autoload cookie. + (generic-use-find-file-hook, generic-lines-to-scan) + (generic-find-file-regexp, generic-ignore-files-regexp) + (generic-mode, generic-mode-find-file-hook) + (generic-mode-ini-file-find-file-hook): Fix docstrings. + (define-generic-mode): Make it a defmacro. Fix docstring. + (generic-mode-internal): Code cleanup. Add autoload cookie. + (generic-mode-set-comments): Code cleanup. + * generic-x.el: Don't prevent compilation. Don't require generic. + Follow coding conventions. Minor code cleanup. + (etc-fstab-generic-mode): Add some keywords. + * font-lock.el (lisp-font-lock-keywords-1): Font lock a call to + define-generic-mode like a function declaration. + +2005-03-21 Jay Belanger <belanger@truman.edu> + + * calc/calc-embed.el (calc-do-embedded): Put data on stack before + changing modes. + +2005-03-21 Sam Steingold <sds@gnu.org> + + * add-log.el (add-log-current-defun): Support more C DEFUN forms. + +2005-03-21 Thien-Thi Nguyen <ttn@gnu.org> + + * progmodes/dcl-mode.el (dcl-font-lock-keywords): + Add underscore to "f$ lexicals" regexp. + +2005-03-20 Juri Linkov <juri@jurta.org> + + * subr.el (progress-reporter-do-update): When `min-value' is equal + to `max-value', set `percentage' to 0 and prevent division by zero. + +2005-03-20 Michael Albinus <michael.albinus@gmx.de> + + Sync with Tramp 2.0.48. + + * tramp.el (all): Change all addresses to .gnu.org. + (tramp-append-tramp-buffers): New defun. + (tramp-bug): Apply `tramp-append-tramp-buffers' as post-hook. + Catch `dont-send' signal. + (tramp-set-auto-save-file-modes): Set always permissions, because + there might be an old auto-saved file belonging to another + original file. This could be a security threat. Reported by + Kjetil Kjernsmo <kjetil@kjernsmo.net>. + Check for Emacs 21.3.50 removed. + + * tramp-smb.el (all): Remove debug construct for + `with-parsed-tramp-file-name'. + (tramp-smb-prompt): Prompt can contain spaces inside directory + names. + (tramp-smb-handle-delete-directory, tramp-smb-handle-delete-file): + No error message if DIRECTORY or FILENAME doesn't exist. + (tramp-smb-open-connection): Check existence of + `tramp-smb-program'. + +2005-03-20 Miles Bader <miles@gnu.org> + + * progmodes/gdb-ui.el (gdb-put-breakpoint-icon): Use breakpoint faces + in text-mode too. Change to new face names. + (breakpoint-enabled): Renamed from `breakpoint-enabled-bitmap-face'. + Add `:weight bold' attribute. + (breakpoint-disabled): Renamed from `breakpoint-disabled-bitmap-face'. + +2005-03-19 Juri Linkov <juri@jurta.org> + + * files.el (auto-mode-alist): Add comment. Optimize jar/ear/war. + + * international/mule.el (auto-coding-alist): Sync with + `auto-mode-alist' by adding upper case archive file extensions + and adding ear/war to jar extension. + +2005-03-19 David Casperson <casper@unbc.ca> (tiny change) + + * textmodes/tex-mode.el (tex-view): If tex-shell process is not + running, restart it. + +2005-03-19 Yoichi NAKAYAMA <yoichi@geiin.org> (tiny changes) + + * finder.el (finder-current-item): Throw an error on an empty + line. + + * man.el (Man-follow-manual-reference): If current-word returns + nil, use "". + +2005-03-19 Matt Hodges <MPHodges@member.fsf.org> + + * simple.el (goto-line): Doc fix. + +2005-03-19 Aaron Hawley <Aaron.Hawley@uvm.edu> (tiny change) + + * files.el (save-buffer): Doc fix. + +2005-03-19 Michael R. Mauger <mmaug@yahoo.com> + + * recentf.el (recentf-cleanup-remote): New variable. + (recentf-cleanup): Use it to conditionally check availablity of + remote files. + +2005-03-19 Joe Edmonds <joe-bugs-debian-org@elem.com> (tiny change) + + * emacs-lisp/lisp-mode.el (lisp-mode-variables): Recognize `@' in + function names. + +2005-03-19 Eli Zaretskii <eliz@gnu.org> + + * language/thai-word.el: New file. + +2005-03-19 JUAN-LEON Lahoz Garcia <juanleon1@gmail.com> + + * files.el (backup-buffer): If the file's directory is not + writable, use copy instead of move to backup the file. + +2005-03-19 Eli Zaretskii <eliz@gnu.org> + + * obsolete/keyswap.el: Moved to obsolete/ from term/. + +2005-03-19 Vinicius Jose Latorre <viniciusjl@ig.com.br> + + * ps-print.el (ps-generate-string-list, ps-generate-header-line): Use + functionp instead of symbolp and fboundp. Reported by Drkm + <darkman_spam@yahoo.fr>. + (ps-print-version): New version 6.6.6. + 2005-03-18 Tak Ota <Takaaki.Ota@am.sony.com> * textmodes/table.el (table--line-column-position): New idiom.
--- a/lisp/add-log.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/add-log.el Thu Mar 24 18:41:26 2005 +0000 @@ -812,7 +812,7 @@ (looking-at "[ \t\n]")) (forward-line -1)) ;; See if this is using the DEFUN macro used in Emacs, - ;; or the DEFUN macro used by the C library. + ;; or the DEFUN macro used by the C library: (if (condition-case nil (and (save-excursion (end-of-line) @@ -824,16 +824,20 @@ (looking-at "DEFUN\\b")) (>= location tem)) (error nil)) + ;; DEFUN ("file-name-directory", Ffile_name_directory, Sfile_name_directory, ...) ==> Ffile_name_directory + ;; DEFUN(POSIX::STREAM-LOCK, stream lockp &key BLOCK SHARED START LENGTH) ==> POSIX::STREAM-LOCK (progn (goto-char tem) (down-list 1) - (if (= (char-after (point)) ?\") - (progn - (forward-sexp 1) - (skip-chars-forward " ,"))) + (when (= (char-after (point)) ?\") + (forward-sexp 1) + (search-forward ",")) + (skip-syntax-forward " ") (buffer-substring-no-properties (point) - (progn (forward-sexp 1) + (progn (search-forward ",") + (forward-char -1) + (skip-syntax-backward " ") (point)))) (if (looking-at "^[+-]") (change-log-get-method-definition)
--- a/lisp/bindings.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/bindings.el Thu Mar 24 18:41:26 2005 +0000 @@ -503,7 +503,7 @@ ".a" ".ln" ".blg" ".bbl" ".dll" ".drv" ".vxd" ".386")) ((eq system-type 'vax-vms) '(".obj" ".exe" ".bin" ".lbin" ".sbin" - ".brn" ".rnt" ".lni" ".lis" + ".brn" ".rnt" ".lni" ".olb" ".tlb" ".mlb" ".hlb")) (t '(".o" "~" ".bin" ".lbin" ".so"
--- a/lisp/calc/calc-embed.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/calc/calc-embed.el Thu Mar 24 18:41:26 2005 +0000 @@ -149,6 +149,59 @@ ;;; rather than using buffer-local variables because the latter are ;;; thrown away when a buffer changes major modes. +(defvar calc-embedded-original-modes nil + "The mode settings for Calc buffer when put in embedded mode.") + +(defun calc-embedded-save-original-modes () + "Save the current Calc modes when entereding embedded mode." + (let ((calcbuf (save-excursion + (calc-create-buffer) + (current-buffer))) + lang modes) + (if calcbuf + (with-current-buffer calcbuf + (setq lang + (cons calc-language calc-language-option)) + (setq modes + (list (cons 'calc-display-just + calc-display-just) + (cons 'calc-display-origin + calc-display-origin))) + (let ((v calc-embedded-mode-vars)) + (while v + (let ((var (cdr (car v)))) + (unless (memq var '(the-language the-display-just)) + (setq modes + (cons (cons var (symbol-value var)) + modes)))) + (setq v (cdr v)))) + (setq calc-embedded-original-modes (cons lang modes))) + (setq calc-embedded-original-modes nil)))) + +(defun calc-embedded-restore-original-modes () + "Restore the original Calc modes when leaving embedded mode." + (let ((calcbuf (get-buffer "*Calculator*")) + (changed nil) + (lang (car calc-embedded-original-modes)) + (modes (cdr calc-embedded-original-modes))) + (if (and calcbuf calc-embedded-original-modes) + (with-current-buffer calcbuf + (unless (and + (equal calc-language (car lang)) + (equal calc-language-option (cdr lang))) + (calc-set-language (car lang) (cdr lang)) + (setq changed t)) + (while modes + (let ((mode (car modes))) + (unless (equal (symbol-value (car mode)) (cdr mode)) + (set (car mode) (cdr mode)) + (setq changed t))) + (setq modes (cdr modes))) + (when changed + (calc-refresh) + (calc-set-mode-line)))) + (setq calc-embedded-original-modes nil))) + ;; The variables calc-embed-outer-top, calc-embed-outer-bot, ;; calc-embed-top and calc-embed-bot are ;; local to calc-do-embedded, calc-embedded-mark-formula, @@ -193,6 +246,7 @@ buffer-read-only nil) (use-local-map (nth 1 mode)) (set-buffer-modified-p (buffer-modified-p)) + (calc-embedded-restore-original-modes) (or calc-embedded-quiet (message "Back to %s mode" mode-name)))) @@ -214,11 +268,13 @@ calc-embed-top calc-embed-bot calc-embed-outer-top calc-embed-outer-bot info chg ident) (barf-if-buffer-read-only) + (calc-embedded-save-original-modes) (or calc-embedded-globals (calc-find-globals)) (setq info (calc-embedded-make-info (point) nil t arg end obeg oend)) (if (eq (car-safe (aref info 8)) 'error) (progn + (setq calc-embedded-original-modes nil) (goto-char (nth 1 (aref info 8))) (error (nth 2 (aref info 8))))) (let ((mode-line-buffer-identification mode-line-buffer-identification) @@ -227,10 +283,13 @@ (calc-wrapper (let* ((okay nil) (calc-no-refresh-evaltos t)) - (setq chg (calc-embedded-set-modes - (aref info 15) (aref info 12) (aref info 13))) (if (aref info 8) - (calc-push (calc-normalize (aref info 8))) + (progn + (calc-push (calc-normalize (aref info 8))) + (setq chg (calc-embedded-set-modes + (aref info 15) (aref info 12) (aref info 13)))) + (setq chg (calc-embedded-set-modes + (aref info 15) (aref info 12) (aref info 13))) (calc-alg-entry))) (setq calc-undo-list nil calc-redo-list nil @@ -1197,7 +1256,27 @@ (prin1-to-string (car values)) "]" calc-embedded-close-mode)))) (setq vars (cdr vars) - values (cdr values)))))))) + values (cdr values)))))) + (when (and vars calc-embedded-original-modes (eq calc-mode-save-mode 'save)) + (cond ((equal vars '(the-language)) + (setcar calc-embedded-original-modes + (cons calc-language calc-language-option))) + ((equal vars '(the-display-just)) + (let* ((modes (cdr calc-embedded-original-modes)) + (just (assq 'calc-display-just modes)) + (origin (assq 'calc-display-origin modes))) + (if just + (setcdr just calc-display-just)) + (if origin + (setcdr origin calc-display-origin)))) + (t + (let ((modes (cdr calc-embedded-original-modes))) + (while vars + (let* ((var (car vars)) + (cell (assq var modes))) + (if cell + (setcdr cell (symbol-value var)))) + (setq vars (cdr vars))))))))) (defun calc-embedded-var-change (var &optional buf) (if (symbolp var)
--- a/lisp/calendar/time-date.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/calendar/time-date.el Thu Mar 24 18:41:26 2005 +0000 @@ -1,5 +1,5 @@ ;;; time-date.el --- date and time handling functions -;; Copyright (C) 1998, 1999, 2000, 2004 Free Software Foundation, Inc. +;; Copyright (C) 1998, 1999, 2000, 2004, 2005 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen <larsi@gnus.org> ;; Masanobu Umeda <umerin@mse.kyutech.ac.jp> @@ -24,9 +24,71 @@ ;;; Commentary: +;; Time values come in three formats. The oldest format is a cons +;; cell of the form (HIGH . LOW). This format is obsolete, but still +;; supported. The two other formats are the lists (HIGH LOW) and +;; (HIGH LOW MICRO). The first two formats specify HIGH * 2^16 + LOW +;; seconds; the third format specifies HIGH * 2^16 + LOW + MICRO / +;; 1000000 seconds. We should have 0 <= MICRO < 1000000 and 0 <= LOW +;; < 2^16. If the time value represents a point in time, then HIGH is +;; nonnegative. If the time value is a time difference, then HIGH can +;; be negative as well. The macro `with-decoded-time-value' and the +;; function `encode-time-value' make it easier to deal with these +;; three formats. See `time-subtract' for an example of how to use +;; them. + ;;; Code: -(require 'parse-time) +(defmacro with-decoded-time-value (varlist &rest body) + "Decode a time value and bind it according to VARLIST, then eval BODY. + +The value of the last form in BODY is returned. + +Each element of the list VARLIST is a list of the form +\(HIGH-SYMBOL LOW-SYMBOL MICRO-SYMBOL [TYPE-SYMBOL] TIME-VALUE). +The time value TIME-VALUE is decoded and the result it bound to +the symbols HIGH-SYMBOL, LOW-SYMBOL and MICRO-SYMBOL. + +The optional TYPE-SYMBOL is bound to the type of the time value. +Type 0 is the cons cell (HIGH . LOW), type 1 is the list (HIGH +LOW), and type 3 is the list (HIGH LOW MICRO)." + (declare (indent 1) + (debug ((&rest (symbolp symbolp symbolp &or [symbolp form] form)) + body))) + (if varlist + (let* ((elt (pop varlist)) + (high (pop elt)) + (low (pop elt)) + (micro (pop elt)) + (type (unless (eq (length elt) 1) + (pop elt))) + (time-value (car elt)) + (gensym (make-symbol "time"))) + `(let* ,(append `((,gensym ,time-value) + (,high (pop ,gensym)) + ,low ,micro) + (when type `(,type))) + (if (consp ,gensym) + (progn + (setq ,low (pop ,gensym)) + (if ,gensym + ,(append `(setq ,micro (car ,gensym)) + (when type `(,type 2))) + ,(append `(setq ,micro 0) + (when type `(,type 1))))) + ,(append `(setq ,low ,gensym ,micro 0) + (when type `(,type 0)))) + (with-decoded-time-value ,varlist ,@body))) + `(progn ,@body))) + +(defun encode-time-value (high low micro type) + "Encode HIGH, LOW, and MICRO into a time value of type TYPE. +Type 0 is the cons cell (HIGH . LOW), type 1 is the list (HIGH LOW), +and type 3 is the list (HIGH LOW MICRO)." + (cond + ((eq type 0) (cons high low)) + ((eq type 1) (list high low)) + ((eq type 2) (list high low micro)))) (autoload 'timezone-make-date-arpa-standard "timezone") @@ -49,33 +111,37 @@ (defun time-to-seconds (time) "Convert time value TIME to a floating point number. You can use `float-time' instead." - (+ (* (car time) 65536.0) - (cadr time) - (/ (or (nth 2 time) 0) 1000000.0))) + (with-decoded-time-value ((high low micro time)) + (+ (* 1.0 high #x10000) + low + (/ micro 1000000.0)))) ;;;###autoload (defun seconds-to-time (seconds) "Convert SECONDS (a floating point number) to a time value." - (list (floor seconds 65536) - (floor (mod seconds 65536)) + (list (floor seconds #x10000) + (floor (mod seconds #x10000)) (floor (* (- seconds (ffloor seconds)) 1000000)))) ;;;###autoload (defun time-less-p (t1 t2) "Say whether time value T1 is less than time value T2." - (or (< (car t1) (car t2)) - (and (= (car t1) (car t2)) - (< (nth 1 t1) (nth 1 t2))))) + (with-decoded-time-value ((high1 low1 micro1 t1) + (high2 low2 micro2 t2)) + (or (< high1 high2) + (and (= high1 high2) + (or (< low1 low2) + (and (= low1 low2) + (< micro1 micro2))))))) ;;;###autoload (defun days-to-time (days) "Convert DAYS into a time value." (let* ((seconds (* 1.0 days 60 60 24)) - (rest (expt 2 16)) - (ms (condition-case nil (floor (/ seconds rest)) - (range-error (expt 2 16))))) - (list ms (condition-case nil (round (- seconds (* ms rest))) - (range-error (expt 2 16)))))) + (high (condition-case nil (floor (/ seconds #x10000)) + (range-error most-positive-fixnum)))) + (list high (condition-case nil (floor (- seconds (* 1.0 high #x10000))) + (range-error #xffff))))) ;;;###autoload (defun time-since (time) @@ -84,11 +150,7 @@ (when (stringp time) ;; Convert date strings to internal time. (setq time (date-to-time time))) - (let* ((current (current-time)) - (rest (when (< (nth 1 current) (nth 1 time)) - (expt 2 16)))) - (list (- (+ (car current) (if rest -1 0)) (car time)) - (- (+ (or rest 0) (nth 1 current)) (nth 1 time))))) + (time-subtract (current-time) time)) ;;;###autoload (defalias 'subtract-time 'time-subtract) @@ -97,37 +159,36 @@ (defun time-subtract (t1 t2) "Subtract two time values. Return the difference in the format of a time value." - (let ((borrow (< (cadr t1) (cadr t2)))) - (list (- (car t1) (car t2) (if borrow 1 0)) - (- (+ (if borrow 65536 0) (cadr t1)) (cadr t2))))) + (with-decoded-time-value ((high low micro type t1) + (high2 low2 micro2 type2 t2)) + (setq high (- high high2) + low (- low low2) + micro (- micro micro2) + type (max type type2)) + (when (< micro 0) + (setq low (1- low) + micro (+ micro 1000000))) + (when (< low 0) + (setq high (1- high) + low (+ low #x10000))) + (encode-time-value high low micro type))) ;;;###autoload (defun time-add (t1 t2) "Add two time values. One should represent a time difference." - (let ((high (car t1)) - (low (if (consp (cdr t1)) (nth 1 t1) (cdr t1))) - (micro (if (numberp (car-safe (cdr-safe (cdr t1)))) - (nth 2 t1) - 0)) - (high2 (car t2)) - (low2 (if (consp (cdr t2)) (nth 1 t2) (cdr t2))) - (micro2 (if (numberp (car-safe (cdr-safe (cdr t2)))) - (nth 2 t2) - 0))) - ;; Add - (setq micro (+ micro micro2)) - (setq low (+ low low2)) - (setq high (+ high high2)) - - ;; Normalize - ;; `/' rounds towards zero while `mod' returns a positive number, - ;; so we can't rely on (= a (+ (* 100 (/ a 100)) (mod a 100))). - (setq low (+ low (/ micro 1000000) (if (< micro 0) -1 0))) - (setq micro (mod micro 1000000)) - (setq high (+ high (/ low 65536) (if (< low 0) -1 0))) - (setq low (logand low 65535)) - - (list high low micro))) + (with-decoded-time-value ((high low micro type t1) + (high2 low2 micro2 type2 t2)) + (setq high (+ high high2) + low (+ low low2) + micro (+ micro micro2) + type (max type type2)) + (when (>= micro 1000000) + (setq low (1+ low) + micro (- micro 1000000))) + (when (>= low #x10000) + (setq high (1+ high) + low (- low #x10000))) + (encode-time-value high low micro type))) ;;;###autoload (defun date-to-day (date) @@ -180,7 +241,7 @@ (defun time-to-number-of-days (time) "Return the number of days represented by TIME. The number of days will be returned as a floating point number." - (/ (+ (* 1.0 65536 (car time)) (cadr time)) (* 60 60 24))) + (/ (time-to-seconds time) (* 60 60 24))) ;;;###autoload (defun safe-date-to-time (date)
--- a/lisp/emacs-lisp/lisp-mode.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/emacs-lisp/lisp-mode.el Thu Mar 24 18:41:26 2005 +0000 @@ -205,7 +205,7 @@ (setq font-lock-defaults '((lisp-font-lock-keywords lisp-font-lock-keywords-1 lisp-font-lock-keywords-2) - nil nil (("+-*/.<>=!?$%_&~^:" . "w")) nil + nil nil (("+-*/.<>=!?$%_&~^:@" . "w")) nil (font-lock-mark-block-function . mark-defun) (font-lock-syntactic-face-function . lisp-font-lock-syntactic-face-function))))
--- a/lisp/files.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/files.el Thu Mar 24 18:41:26 2005 +0000 @@ -1775,8 +1775,10 @@ ("\\.pro\\'" . idlwave-mode) ("\\.prolog\\'" . prolog-mode) ("\\.tar\\'" . tar-mode) - ("\\.\\(arc\\|zip\\|lzh\\|zoo\\|ear\\|jar\\|war\\)\\'" . archive-mode) - ("\\.\\(ARC\\|ZIP\\|LZH\\|ZOO\\|EAR\\|JAR\\|WAR\\)\\'" . archive-mode) + ;; The list of archive file extensions should be in sync with + ;; `auto-coding-alist' with `no-conversion' coding system. + ("\\.\\(arc\\|zip\\|lzh\\|zoo\\|[jew]ar\\)\\'" . archive-mode) + ("\\.\\(ARC\\|ZIP\\|LZH\\|ZOO\\|[JEW]AR\\)\\'" . archive-mode) ("\\.sx[dmicw]\\'" . archive-mode) ; OpenOffice.org ;; Mailer puts message to be edited in ;; /tmp/Re.... or Message @@ -2687,6 +2689,7 @@ backup-by-copying ;; Don't rename a suid or sgid file. (and modes (< 0 (logand modes #o6000))) + (not (file-writable-p (file-name-directory real-file-name))) (and backup-by-copying-when-linked (> (file-nlinks real-file-name) 1)) (and (or backup-by-copying-when-mismatch @@ -3103,18 +3106,19 @@ ancestor)))))) (defun save-buffer (&optional args) - "Save current buffer in visited file if modified. Versions described below. + "Save current buffer in visited file if modified. Variations are described below. By default, makes the previous version into a backup file if previously requested or if this is the first save. -With 1 \\[universal-argument], marks this version +Prefixed with one \\[universal-argument], marks this version to become a backup when the next save is done. -With 2 \\[universal-argument]'s, +Prefixed with two \\[universal-argument]'s, unconditionally makes the previous version into a backup file. -With 3 \\[universal-argument]'s, marks this version +Prefixed with three \\[universal-argument]'s, marks this version to become a backup when the next save is done, and unconditionally makes the previous version into a backup file. -With argument of 0, never make the previous version into a backup file. +With a numeric argument of 0, never make the previous version +into a backup file. If a file's name is FOO, the names of its numbered backup versions are FOO.~i~ for various integers i. A non-numbered backup file is called FOO~.
--- a/lisp/finder.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/finder.el Thu Mar 24 18:41:26 2005 +0000 @@ -301,11 +301,13 @@ (finder-summary))) (defun finder-current-item () - (if (and finder-headmark (< (point) finder-headmark)) - (error "No keyword or filename on this line") - (save-excursion - (beginning-of-line) - (current-word)))) + (let ((key (save-excursion + (beginning-of-line) + (current-word)))) + (if (or (and finder-headmark (< (point) finder-headmark)) + (= (length key) 0)) + (error "No keyword or filename on this line") + key))) (defun finder-select () "Select item on current line in a finder buffer."
--- a/lisp/font-lock.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/font-lock.el Thu Mar 24 18:41:26 2005 +0000 @@ -1910,7 +1910,7 @@ ;; Function declarations. "\\(advice\\|varalias\\|alias\\|generic\\|macro\\*?\\|method\\|" "setf\\|subst\\*?\\|un\\*?\\|" - "ine-\\(condition\\|\\(?:derived\\|minor\\)-mode\\|" + "ine-\\(condition\\|\\(?:derived\\|minor\\|generic\\)-mode\\|" "method-combination\\|setf-expander\\|skeleton\\|widget\\|" "function\\|\\(compiler\\|modify\\|symbol\\)-macro\\)\\)\\|" ;; Variable declarations.
--- a/lisp/generic-x.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/generic-x.el Thu Mar 24 18:41:26 2005 +0000 @@ -1,6 +1,6 @@ -;;; generic-x.el --- Extra Modes for generic-mode -*- no-byte-compile: t -*- +;;; generic-x.el --- Extra Modes for generic-mode -;; Copyright (C) 1997, 1998, 2003 Free Software Foundation, Inc. +;; Copyright (C) 1997, 1998, 2003, 2005 Free Software Foundation, Inc. ;; Author: Peter Breton <pbreton@cs.umb.edu> ;; Created: Tue Oct 08 1996 @@ -34,7 +34,7 @@ ;; (require 'generic-x) ;; ;; You can decide which modes to load by setting the variable -;; `generic-extras-enable-list'. Some platform-specific modes are +;; `generic-extras-enable-list'. Some platform-specific modes are ;; affected by the variables `generic-define-mswindows-modes' and ;; `generic-define-unix-modes' (which see). ;; @@ -92,7 +92,6 @@ ;;; Code: -(require 'generic) (require 'font-lock) (defgroup generic-x nil @@ -103,53 +102,52 @@ (defcustom generic-extras-enable-list nil "*List of generic modes to enable by default. -Each entry in the list should be a symbol. -The variables `generic-define-mswindows-modes' and `generic-define-unix-modes' -also affect which generic modes are defined. -Please note that if you set this variable after generic-x is loaded, -you must reload generic-x to enable the specified modes." +Each entry in the list should be a symbol. The variables +`generic-define-mswindows-modes' and `generic-define-unix-modes' +also affect which generic modes are defined. Please note that if +you set this variable after generic-x is loaded, you must reload +generic-x to enable the specified modes." :group 'generic-x - :type '(repeat sexp) - ) + :type '(repeat sexp)) (defcustom generic-define-mswindows-modes - (memq system-type (list 'windows-nt 'ms-dos)) + (memq system-type '(windows-nt ms-dos)) "*If non-nil, some MS-Windows specific generic modes will be defined." :group 'generic-x - :type 'boolean - ) + :type 'boolean) (defcustom generic-define-unix-modes - (not (memq system-type (list 'windows-nt 'ms-dos))) + (not (memq system-type '(windows-nt ms-dos))) "*If non-nil, some Unix specific generic modes will be defined." :group 'generic-x - :type 'boolean - ) + :type 'boolean) (and generic-define-mswindows-modes - (setq generic-extras-enable-list - (append (list 'bat-generic-mode 'ini-generic-mode - 'inf-generic-mode 'rc-generic-mode - 'reg-generic-mode 'rul-generic-mode - 'hosts-generic-mode - 'apache-conf-generic-mode - 'apache-log-generic-mode - ) - generic-extras-enable-list))) + (setq generic-extras-enable-list + (append '(bat-generic-mode + ini-generic-mode + inf-generic-mode + rc-generic-mode + reg-generic-mode + rul-generic-mode + hosts-generic-mode + apache-conf-generic-mode + apache-log-generic-mode) + generic-extras-enable-list))) (and generic-define-unix-modes (setq generic-extras-enable-list - (append (list 'apache-conf-generic-mode - 'apache-log-generic-mode - 'samba-generic-mode - 'hosts-generic-mode 'fvwm-generic-mode - 'x-resource-generic-mode - 'alias-generic-mode - 'inetd-conf-generic-mode - 'etc-services-generic-mode - 'etc-passwd-generic-mode - 'etc-fstab-generic-mode - ) + (append '(apache-conf-generic-mode + apache-log-generic-mode + samba-generic-mode + hosts-generic-mode + fvwm-generic-mode + x-resource-generic-mode + alias-generic-mode + inetd-conf-generic-mode + etc-services-generic-mode + etc-passwd-generic-mode + etc-fstab-generic-mode) generic-extras-enable-list))) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; @@ -157,68 +155,58 @@ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; Apache -(and - (memq 'apache-conf-generic-mode generic-extras-enable-list) +(when (memq 'apache-conf-generic-mode generic-extras-enable-list) -(define-generic-mode 'apache-conf-generic-mode - (list ?#) - nil - '(("^\\s-*\\(<.*>\\)" 1 'font-lock-constant-face) - ("^\\s-*\\(\\sw+\\)\\s-" 1 'font-lock-variable-name-face)) - (list "srm\\.conf\\'" "httpd\\.conf\\'" "access\\.conf\\'") - (list - (function - (lambda () +(define-generic-mode apache-conf-generic-mode + '(?#) + nil + '(("^\\s-*\\(<.*>\\)" 1 font-lock-constant-face) + ("^\\s-*\\(\\sw+\\)\\s-" 1 font-lock-variable-name-face)) + '("srm\\.conf\\'" "httpd\\.conf\\'" "access\\.conf\\'") + (list + (function + (lambda () (setq imenu-generic-expression '((nil "^\\([-A-Za-z0-9_]+\\)" 1) ("*Directories*" "^\\s-*<Directory\\s-*\\([^>]+\\)>" 1) - ("*Locations*" "^\\s-*<Location\\s-*\\([^>]+\\)>" 1) - )) - ))) - "Generic mode for Apache or HTTPD configuration files.")) + ("*Locations*" "^\\s-*<Location\\s-*\\([^>]+\\)>" 1)))))) + "Generic mode for Apache or HTTPD configuration files.")) -(and - (memq 'apache-log-generic-mode generic-extras-enable-list) +(when (memq 'apache-log-generic-mode generic-extras-enable-list) -(define-generic-mode 'apache-log-generic-mode +(define-generic-mode apache-log-generic-mode nil nil ;; Hostname ? user date request return-code number-of-bytes '(("^\\([-a-zA-z0-9.]+\\) - [-A-Za-z]+ \\(\\[.*\\]\\)" (1 font-lock-constant-face) - (2 font-lock-variable-name-face)) - ) - (list "access_log\\'") + (2 font-lock-variable-name-face))) + '("access_log\\'") nil "Mode for Apache log files")) ;;; Samba -(and - (memq 'samba-generic-mode generic-extras-enable-list) +(when (memq 'samba-generic-mode generic-extras-enable-list) -(define-generic-mode 'samba-generic-mode - (list ?\; ?#) - nil - '( - ("^\\(\\[.*\\]\\)" 1 'font-lock-constant-face) - ("^\\s-*\\(.+\\)=\\([^\r\n]*\\)" - (1 'font-lock-variable-name-face) - (2 'font-lock-type-face)) - ) - (list "smb\\.conf\\'") - (list 'generic-bracket-support) - "Generic mode for Samba configuration files.")) +(define-generic-mode samba-generic-mode + '(?\; ?#) + nil + '(("^\\(\\[.*\\]\\)" 1 font-lock-constant-face) + ("^\\s-*\\(.+\\)=\\([^\r\n]*\\)" + (1 font-lock-variable-name-face) + (2 font-lock-type-face))) + '("smb\\.conf\\'") + '(generic-bracket-support) + "Generic mode for Samba configuration files.")) ;;; Fvwm ;; This is pretty basic. Also, modes for other window managers could ;; be defined as well. -(and -(memq 'fvwm-generic-mode generic-extras-enable-list) +(when (memq 'fvwm-generic-mode generic-extras-enable-list) -(define-generic-mode 'fvwm-generic-mode - (list ?#) - (list - "AddToMenu" +(define-generic-mode fvwm-generic-mode + '(?#) + '("AddToMenu" "AddToFunc" "ButtonStyle" "EndFunction" @@ -230,435 +218,391 @@ "Mouse" "PixmapPath" "Popup" - "Style" - ) - nil - (list "\\.fvwmrc\\'" "\\.fvwm2rc\\'") - nil - "Generic mode for FVWM configuration files.")) + "Style") + nil + '("\\.fvwmrc\\'" "\\.fvwm2rc\\'") + nil + "Generic mode for FVWM configuration files.")) ;;; X Resource ;; I'm pretty sure I've seen an actual mode to do this, but I don't ;; think it's standard with Emacs -(and - (memq 'x-resource-generic-mode generic-extras-enable-list) +(when (memq 'x-resource-generic-mode generic-extras-enable-list) -(define-generic-mode 'x-resource-generic-mode - (list ?!) - nil - '(("^\\([^:\n]+:\\)" 1 'font-lock-variable-name-face)) - (list "\\.Xdefaults\\'" "\\.Xresources\\'" "\\.Xenvironment\\'" "\\.ad\\'") - nil - "Generic mode for X Resource configuration files.")) +(define-generic-mode x-resource-generic-mode + '(?!) + nil + '(("^\\([^:\n]+:\\)" 1 font-lock-variable-name-face)) + '("\\.Xdefaults\\'" "\\.Xresources\\'" "\\.Xenvironment\\'" "\\.ad\\'") + nil + "Generic mode for X Resource configuration files.")) ;;; Hosts -(and - (memq 'hosts-generic-mode generic-extras-enable-list) +(when (memq 'hosts-generic-mode generic-extras-enable-list) -(define-generic-mode 'hosts-generic-mode - (list ?#) - (list "localhost") - '(("\\([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+\\)" 1 'font-lock-constant-face)) - (list "[hH][oO][sS][tT][sS]\\'") - nil - "Generic mode for HOSTS files.")) +(define-generic-mode hosts-generic-mode + '(?#) + '("localhost") + '(("\\([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+\\)" 1 font-lock-constant-face)) + '("[hH][oO][sS][tT][sS]\\'") + nil + "Generic mode for HOSTS files.")) ;;; Windows INF files -(and - (memq 'inf-generic-mode generic-extras-enable-list) +(when (memq 'inf-generic-mode generic-extras-enable-list) -(define-generic-mode 'inf-generic-mode - (list ?\;) - nil - '(("^\\(\\[.*\\]\\)" 1 'font-lock-constant-face)) - (list "\\.[iI][nN][fF]\\'") - (list 'generic-bracket-support) - "Generic mode for MS-Windows INF files.")) +(define-generic-mode inf-generic-mode + '(?\;) + nil + '(("^\\(\\[.*\\]\\)" 1 font-lock-constant-face)) + '("\\.[iI][nN][fF]\\'") + '(generic-bracket-support) + "Generic mode for MS-Windows INF files.")) ;;; Windows INI files ;; Should define escape character as well! -(and - (memq 'ini-generic-mode generic-extras-enable-list) +(when (memq 'ini-generic-mode generic-extras-enable-list) -(define-generic-mode 'ini-generic-mode - (list ?\;) - nil - '(("^\\(\\[.*\\]\\)" 1 'font-lock-constant-face) - ("^\\([^=\n\r]*\\)=\\([^\n\r]*\\)$" - (1 font-lock-function-name-face) - (2 font-lock-variable-name-face))) - (list "\\.[iI][nN][iI]\\'") - (list - (function - (lambda () - (setq imenu-generic-expression - '((nil "^\\[\\(.*\\)\\]" 1) - ("*Variables*" "^\\s-*\\([^=]+\\)\\s-*=" 1))) - ))) - "Generic mode for MS-Windows INI files.")) +(define-generic-mode ini-generic-mode + '(?\;) + nil + '(("^\\(\\[.*\\]\\)" 1 font-lock-constant-face) + ("^\\([^=\n\r]*\\)=\\([^\n\r]*\\)$" + (1 font-lock-function-name-face) + (2 font-lock-variable-name-face))) + '("\\.[iI][nN][iI]\\'") + (list + (function + (lambda () + (setq imenu-generic-expression + '((nil "^\\[\\(.*\\)\\]" 1) + ("*Variables*" "^\\s-*\\([^=]+\\)\\s-*=" 1)))))) + "Generic mode for MS-Windows INI files.")) ;;; Windows REG files ;;; Unfortunately, Windows 95 and Windows NT have different REG file syntax! -(and - (memq 'reg-generic-mode generic-extras-enable-list) +(when (memq 'reg-generic-mode generic-extras-enable-list) -(define-generic-mode 'reg-generic-mode - '(?\;) - '("key" "classes_root" "REGEDIT" "REGEDIT4") - '(("\\(\\[.*]\\)" 1 'font-lock-constant-face) - ("^\\([^\n\r]*\\)\\s-*=" 1 'font-lock-variable-name-face)) - '("\\.[rR][eE][gG]\\'") - (list - (function - (lambda () - (setq imenu-generic-expression - '((nil "^\\s-*\\(.*\\)\\s-*=" 1)))))) - "Generic mode for MS-Windows Registry files.")) +(define-generic-mode reg-generic-mode + '(?\;) + '("key" "classes_root" "REGEDIT" "REGEDIT4") + '(("\\(\\[.*]\\)" 1 font-lock-constant-face) + ("^\\([^\n\r]*\\)\\s-*=" 1 font-lock-variable-name-face)) + '("\\.[rR][eE][gG]\\'") + (list + (function + (lambda () + (setq imenu-generic-expression + '((nil "^\\s-*\\(.*\\)\\s-*=" 1)))))) + "Generic mode for MS-Windows Registry files.")) ;;; DOS/Windows BAT files -(if (not (memq 'bat-generic-mode generic-extras-enable-list)) - nil -(define-generic-mode 'bat-generic-mode - nil - nil +(when (memq 'bat-generic-mode generic-extras-enable-list) + +(define-generic-mode bat-generic-mode + nil + nil + (eval-when-compile (list ;; Make this one first in the list, otherwise comments will ;; be over-written by other variables - (list "^[@ \t]*\\([rR][eE][mM][^\n\r]*\\)" 1 'font-lock-comment-face t) - (list "^[ \t]*\\(::.*\\)" 1 'font-lock-comment-face t) - (list - "^[@ \t]*\\([bB][rR][eE][aA][kK]\\|[vV][eE][rR][iI][fF][yY]\\)[ \t]+\\([oO]\\([nN]\\|[fF][fF]\\)\\)" - '(1 font-lock-builtin-face) - '(2 font-lock-constant-face t t)) + '("^[@ \t]*\\([rR][eE][mM][^\n\r]*\\)" 1 font-lock-comment-face t) + '("^[ \t]*\\(::.*\\)" 1 font-lock-comment-face t) + '("^[@ \t]*\\([bB][rR][eE][aA][kK]\\|[vV][eE][rR][iI][fF][yY]\\)[ \t]+\\([oO]\\([nN]\\|[fF][fF]\\)\\)" + (1 font-lock-builtin-face) + (2 font-lock-constant-face t t)) ;; Any text (except ON/OFF) following ECHO is a string. - (list - "^[@ \t]*\\([eE][cC][hH][oO]\\)[ \t]+\\(\\([oO]\\([nN]\\|[fF][fF]\\)\\)\\|\\([^>|\r\n]+\\)\\)" - '(1 font-lock-builtin-face) - '(3 font-lock-constant-face t t) - '(5 font-lock-string-face t t)) + '("^[@ \t]*\\([eE][cC][hH][oO]\\)[ \t]+\\(\\([oO]\\([nN]\\|[fF][fF]\\)\\)\\|\\([^>|\r\n]+\\)\\)" + (1 font-lock-builtin-face) + (3 font-lock-constant-face t t) + (5 font-lock-string-face t t)) ;; These keywords appear as the first word on a line. (Actually, they ;; can also appear after "if ..." or "for ..." clause, but since they ;; are frequently used in simple text, we punt.) ;; In `generic-bat-mode-setup-function' we make the keywords ;; case-insensitive (generic-make-keywords-list - (list - "for" - "if" - ) + '("for" + "if") 'font-lock-keyword-face "^[@ \t]*") ;; These keywords can be anywhere on a line ;; In `generic-bat-mode-setup-function' we make the keywords ;; case-insensitive (generic-make-keywords-list - (list - "do" - "exist" - "errorlevel" - "goto" - "not" - ) 'font-lock-keyword-face) + '("do" + "exist" + "errorlevel" + "goto" + "not") + 'font-lock-keyword-face) ;; These are built-in commands. Only frequently-used ones are listed. (generic-make-keywords-list - (list - "CALL" "call" "Call" - "CD" "cd" "Cd" - "CLS" "cls" "Cls" - "COPY" "copy" "Copy" - "DEL" "del" "Del" - "ECHO" "echo" "Echo" - "MD" "md" "Md" - "PATH" "path" "Path" - "PAUSE" "pause" "Pause" - "PROMPT" "prompt" "Prompt" - "RD" "rd" "Rd" - "REN" "ren" "Ren" - "SET" "set" "Set" - "START" "start" "Start" - "SHIFT" "shift" "Shift" - ) 'font-lock-builtin-face "[ \t|\n]") - (list "^[ \t]*\\(:\\sw+\\)" 1 'font-lock-function-name-face t) - (list "\\(%\\sw+%\\)" 1 'font-lock-variable-name-face t) - (list "\\(%[0-9]\\)" 1 'font-lock-variable-name-face t) - (list "\\(/[^/ \"\t\n]+\\)" 1 'font-lock-type-face) - (list "[\t ]+\\([+-][^\t\n\" ]+\\)" 1 'font-lock-type-face) - (list "[ \t\n|]\\<\\([gG][oO][tT][oO]\\)\\>[ \t]*\\(\\sw+\\)?" - '(1 font-lock-keyword-face) - '(2 font-lock-function-name-face nil t)) - (list "[ \t\n|]\\<\\([sS][eE][tT]\\)\\>[ \t]*\\(\\sw+\\)?[ \t]*=?" - '(1 font-lock-builtin-face) - '(2 font-lock-variable-name-face t t)) + '("CALL" "call" "Call" + "CD" "cd" "Cd" + "CLS" "cls" "Cls" + "COPY" "copy" "Copy" + "DEL" "del" "Del" + "ECHO" "echo" "Echo" + "MD" "md" "Md" + "PATH" "path" "Path" + "PAUSE" "pause" "Pause" + "PROMPT" "prompt" "Prompt" + "RD" "rd" "Rd" + "REN" "ren" "Ren" + "SET" "set" "Set" + "START" "start" "Start" + "SHIFT" "shift" "Shift") + 'font-lock-builtin-face "[ \t|\n]") + '("^[ \t]*\\(:\\sw+\\)" 1 font-lock-function-name-face t) + '("\\(%\\sw+%\\)" 1 font-lock-variable-name-face t) + '("\\(%[0-9]\\)" 1 font-lock-variable-name-face t) + '("\\(/[^/ \"\t\n]+\\)" 1 font-lock-type-face) + '("[\t ]+\\([+-][^\t\n\" ]+\\)" 1 font-lock-type-face) + '("[ \t\n|]\\<\\([gG][oO][tT][oO]\\)\\>[ \t]*\\(\\sw+\\)?" + (1 font-lock-keyword-face) + (2 font-lock-function-name-face nil t)) + '("[ \t\n|]\\<\\([sS][eE][tT]\\)\\>[ \t]*\\(\\sw+\\)?[ \t]*=?" + (1 font-lock-builtin-face) + (2 font-lock-variable-name-face t t)))) + '("\\.[bB][aA][tT]\\'" + "\\`[cC][oO][nN][fF][iI][gG]\\." + "\\`[aA][uU][tT][oO][eE][xX][eE][cC]\\.") + '(generic-bat-mode-setup-function) + "Generic mode for MS-Windows BAT files.") - ) - (list - "\\.[bB][aA][tT]\\'" - "\\`[cC][oO][nN][fF][iI][gG]\\." - "\\`[aA][uU][tT][oO][eE][xX][eE][cC]\\." ) - (list 'generic-bat-mode-setup-function) - "Generic mode for MS-Windows BAT files.") +(defvar bat-generic-mode-syntax-table nil + "Syntax table in use in bat-generic-mode buffers.") - (defvar bat-generic-mode-syntax-table nil - "Syntax table in use in bat-generic-mode buffers.") - - (defvar bat-generic-mode-keymap (make-sparse-keymap) - "Keymap for bet-generic-mode.") +(defvar bat-generic-mode-keymap (make-sparse-keymap) + "Keymap for bet-generic-mode.") - (defun bat-generic-mode-compile () - "Run the current BAT file in a compilation buffer." - (interactive) - (let ((compilation-buffer-name-function - (function - (lambda(ign) - (concat "*" (buffer-file-name) "*"))) - ) - ) - (compile - (concat (w32-shell-name) " -c " (buffer-file-name))))) +(defun bat-generic-mode-compile () + "Run the current BAT file in a compilation buffer." + (interactive) + (let ((compilation-buffer-name-function + (function + (lambda(ign) + (concat "*" (buffer-file-name) "*"))))) + (compile + (concat (w32-shell-name) " -c " (buffer-file-name))))) - (defun bat-generic-mode-run-as-comint () - "Run the current BAT file in a comint buffer." - (interactive) - (require 'comint) - (let* ((file (buffer-file-name)) - (buf-name (concat "*" file "*"))) - (save-excursion - (set-buffer - (get-buffer-create buf-name)) - (erase-buffer) - (comint-mode) - (comint-exec - buf-name - file - (w32-shell-name) - nil - (list - "-c" - file - ) - ) - (display-buffer buf-name)))) +(defun bat-generic-mode-run-as-comint () + "Run the current BAT file in a comint buffer." + (interactive) + (require 'comint) + (let* ((file (buffer-file-name)) + (buf-name (concat "*" file "*"))) + (save-excursion + (set-buffer + (get-buffer-create buf-name)) + (erase-buffer) + (comint-mode) + (comint-exec + buf-name + file + (w32-shell-name) + nil + (list "-c" file)) + (display-buffer buf-name)))) - (define-key bat-generic-mode-keymap "\C-c\C-c" 'bat-generic-mode-compile) +(define-key bat-generic-mode-keymap "\C-c\C-c" 'bat-generic-mode-compile) - ;; Make underscores count as words - (if bat-generic-mode-syntax-table - nil - (setq bat-generic-mode-syntax-table (make-syntax-table)) - (modify-syntax-entry ?_ "w" bat-generic-mode-syntax-table)) +;; Make underscores count as words +(unless bat-generic-mode-syntax-table + (setq bat-generic-mode-syntax-table (make-syntax-table)) + (modify-syntax-entry ?_ "w" bat-generic-mode-syntax-table)) - ;; bat-generic-mode doesn't use the comment functionality of generic-mode - ;; because it has a three-letter comment-string, so we do it - ;; here manually instead - (defun generic-bat-mode-setup-function () - (make-local-variable 'parse-sexp-ignore-comments) - (make-local-variable 'comment-start) - (make-local-variable 'comment-start-skip) - (make-local-variable 'comment-end) - (setq imenu-generic-expression '((nil "^:\\(\\sw+\\)" 1)) - parse-sexp-ignore-comments t - comment-end "" - comment-start "REM " - comment-start-skip "[Rr][Ee][Mm] *" - ) - (set-syntax-table bat-generic-mode-syntax-table) - ;; Make keywords case-insensitive - (setq font-lock-defaults (list 'generic-font-lock-defaults nil t)) - (use-local-map bat-generic-mode-keymap) - ) - ) +;; bat-generic-mode doesn't use the comment functionality of generic-mode +;; because it has a three-letter comment-string, so we do it +;; here manually instead +(defun generic-bat-mode-setup-function () + (make-local-variable 'parse-sexp-ignore-comments) + (make-local-variable 'comment-start) + (make-local-variable 'comment-start-skip) + (make-local-variable 'comment-end) + (setq imenu-generic-expression '((nil "^:\\(\\sw+\\)" 1)) + parse-sexp-ignore-comments t + comment-end "" + comment-start "REM " + comment-start-skip "[Rr][Ee][Mm] *") + (set-syntax-table bat-generic-mode-syntax-table) + ;; Make keywords case-insensitive + (setq font-lock-defaults '(generic-font-lock-defaults nil t)) + (use-local-map bat-generic-mode-keymap))) ;;; Mailagent -;; Mailagent is a Unix mail filtering program. Anyone wanna do a generic mode -;; for procmail? -(and - (memq 'mailagent-rules-generic-mode generic-extras-enable-list) +;; Mailagent is a Unix mail filtering program. Anyone wanna do a +;; generic mode for procmail? +(when (memq 'mailagent-rules-generic-mode generic-extras-enable-list) -(define-generic-mode 'mailagent-rules-generic-mode - (list ?#) - (list "SAVE" "DELETE" "PIPE" "ANNOTATE" "REJECT") - '(("^\\(\\sw+\\)\\s-*=" 1 'font-lock-variable-name-face) - ("\\s-/\\([^/]+\\)/[i, \t\n]" 1 'font-lock-constant-face)) - (list "\\.rules\\'") - (list 'mailagent-rules-setup-function) - "Mode for Mailagent rules files.") +(define-generic-mode mailagent-rules-generic-mode + '(?#) + '("SAVE" "DELETE" "PIPE" "ANNOTATE" "REJECT") + '(("^\\(\\sw+\\)\\s-*=" 1 font-lock-variable-name-face) + ("\\s-/\\([^/]+\\)/[i, \t\n]" 1 font-lock-constant-face)) + '("\\.rules\\'") + '(mailagent-rules-setup-function) + "Mode for Mailagent rules files.") (defun mailagent-rules-setup-function () - (make-local-variable 'imenu-generic-expression) - (setq imenu-generic-expression - '((nil "\\s-/\\([^/]+\\)/[i, \t\n]" 1)))) - ) + (make-local-variable 'imenu-generic-expression) + (setq imenu-generic-expression + '((nil "\\s-/\\([^/]+\\)/[i, \t\n]" 1))))) ;; Solaris/Sys V prototype files -(and - (memq 'prototype-generic-mode generic-extras-enable-list) +(when (memq 'prototype-generic-mode generic-extras-enable-list) -(define-generic-mode 'prototype-generic-mode - (list ?#) - nil - '( - ("^\\([0-9]\\)?\\s-*\\([a-z]\\)\\s-+\\([A-Za-z_]+\\)\\s-+\\([^\n\r]*\\)$" - (2 font-lock-constant-face) - (3 font-lock-keyword-face)) - ("^\\([a-z]\\) \\([A-Za-z_]+\\)=\\([^\n\r]*\\)$" - (1 font-lock-constant-face) - (2 font-lock-keyword-face) - (3 font-lock-variable-name-face)) - ("^\\(!\\s-*\\(search\\|include\\|default\\)\\)\\s-*\\([^\n\r]*\\)$" - (1 font-lock-keyword-face) - (3 font-lock-variable-name-face)) - ("^\\(!\\s-*\\sw+\\)=\\([^\n\r]*\\)$" - (1 font-lock-keyword-face) - (2 font-lock-variable-name-face)) - ) - (list "prototype\\'") - nil - "Mode for Sys V prototype files.")) +(define-generic-mode prototype-generic-mode + '(?#) + nil + '(("^\\([0-9]\\)?\\s-*\\([a-z]\\)\\s-+\\([A-Za-z_]+\\)\\s-+\\([^\n\r]*\\)$" + (2 font-lock-constant-face) + (3 font-lock-keyword-face)) + ("^\\([a-z]\\) \\([A-Za-z_]+\\)=\\([^\n\r]*\\)$" + (1 font-lock-constant-face) + (2 font-lock-keyword-face) + (3 font-lock-variable-name-face)) + ("^\\(!\\s-*\\(search\\|include\\|default\\)\\)\\s-*\\([^\n\r]*\\)$" + (1 font-lock-keyword-face) + (3 font-lock-variable-name-face)) + ("^\\(!\\s-*\\sw+\\)=\\([^\n\r]*\\)$" + (1 font-lock-keyword-face) + (2 font-lock-variable-name-face))) + '("prototype\\'") + nil + "Mode for Sys V prototype files.")) ;; Solaris/Sys V pkginfo files -(and - (memq 'pkginfo-generic-mode generic-extras-enable-list) +(when (memq 'pkginfo-generic-mode generic-extras-enable-list) -(define-generic-mode 'pkginfo-generic-mode - (list ?#) - nil - '( - ("^\\([A-Za-z_]+\\)=\\([^\n\r]*\\)$" - (1 font-lock-keyword-face) - (2 font-lock-variable-name-face)) - ) - (list "pkginfo\\'") - nil - "Mode for Sys V pkginfo files.")) +(define-generic-mode pkginfo-generic-mode + '(?#) + nil + '(("^\\([A-Za-z_]+\\)=\\([^\n\r]*\\)$" + (1 font-lock-keyword-face) + (2 font-lock-variable-name-face))) + '("pkginfo\\'") + nil + "Mode for Sys V pkginfo files.")) ;; Javascript mode ;; Includes extra keywords from Armando Singer [asinger@MAIL.COLGATE.EDU] -(define-generic-mode 'javascript-generic-mode - (list "//" '("/*" . "*/")) - (list - "break" - "case" - "continue" - "default" - "delete" - "do" - "else" - "export" - "for" - "function" - "if" - "import" - "in" - "new" - "return" - "switch" - "this" - "typeof" - "var" - "void" - "while" - "with" - ;; words reserved for ECMA extensions below - "catch" - "class" - "const" - "debugger" - "enum" - "extends" - "finally" - "super" - "throw" - "try" - ;; Java Keywords reserved by JavaScript - "abstract" - "boolean" - "byte" - "char" - "double" - "false" - "final" - "float" - "goto" - "implements" - "instanceof" - "int" - "interface" - "long" - "native" - "null" - "package" - "private" - "protected" - "public" - "short" - "static" - "synchronized" - "throws" - "transient" - "true" - ) - (list - (list "^\\s-*function\\s-+\\([A-Za-z0-9_]+\\)" - '(1 font-lock-function-name-face)) - (list "^\\s-*var\\s-+\\([A-Za-z0-9_]+\\)" - '(1 font-lock-variable-name-face)) - ) - (list "\\.js\\'") +(define-generic-mode javascript-generic-mode + '("//" ("/*" . "*/")) + '("break" + "case" + "continue" + "default" + "delete" + "do" + "else" + "export" + "for" + "function" + "if" + "import" + "in" + "new" + "return" + "switch" + "this" + "typeof" + "var" + "void" + "while" + "with" + ;; words reserved for ECMA extensions below + "catch" + "class" + "const" + "debugger" + "enum" + "extends" + "finally" + "super" + "throw" + "try" + ;; Java Keywords reserved by JavaScript + "abstract" + "boolean" + "byte" + "char" + "double" + "false" + "final" + "float" + "goto" + "implements" + "instanceof" + "int" + "interface" + "long" + "native" + "null" + "package" + "private" + "protected" + "public" + "short" + "static" + "synchronized" + "throws" + "transient" + "true") + '(("^\\s-*function\\s-+\\([A-Za-z0-9_]+\\)" + (1 font-lock-function-name-face)) + ("^\\s-*var\\s-+\\([A-Za-z0-9_]+\\)" + (1 font-lock-variable-name-face))) + '("\\.js\\'") (list (function (lambda () (setq imenu-generic-expression '((nil "^function\\s-+\\([A-Za-z0-9_]+\\)" 1) - ("*Variables*" "^var\\s-+\\([A-Za-z0-9_]+\\)" 1) - )) - ))) + ("*Variables*" "^var\\s-+\\([A-Za-z0-9_]+\\)" 1)))))) "Mode for JavaScript files.") ;; VRML files -(define-generic-mode 'vrml-generic-mode - (list ?#) - (list - "DEF" - "NULL" - "USE" - "Viewpoint" - "ambientIntensity" - "appearance" - "children" - "color" - "coord" - "coordIndex" - "creaseAngle" - "diffuseColor" - "emissiveColor" - "fieldOfView" - "geometry" - "info" - "material" - "normal" - "orientation" - "position" - "shininess" - "specularColor" - "texCoord" - "texture" - "textureTransform" - "title" - "transparency" - "type" - ) - (list - (list "USE\\s-+\\([-A-Za-z0-9_]+\\)" - '(1 font-lock-constant-face)) - (list "DEF\\s-+\\([-A-Za-z0-9_]+\\)\\s-+\\([A-Za-z0-9]+\\)\\s-*{" - '(1 font-lock-type-face) - '(2 font-lock-constant-face)) - (list "^\\s-*\\([-A-Za-z0-9_]+\\)\\s-*{" - '(1 font-lock-function-name-face)) - (list - "^\\s-*\\(geometry\\|appearance\\|material\\)\\s-+\\([-A-Za-z0-9_]+\\)" - '(2 font-lock-variable-name-face)) - ) - (list "\\.wrl\\'") +(define-generic-mode vrml-generic-mode + '(?#) + '("DEF" + "NULL" + "USE" + "Viewpoint" + "ambientIntensity" + "appearance" + "children" + "color" + "coord" + "coordIndex" + "creaseAngle" + "diffuseColor" + "emissiveColor" + "fieldOfView" + "geometry" + "info" + "material" + "normal" + "orientation" + "position" + "shininess" + "specularColor" + "texCoord" + "texture" + "textureTransform" + "title" + "transparency" + "type") + '(("USE\\s-+\\([-A-Za-z0-9_]+\\)" + (1 font-lock-constant-face)) + ("DEF\\s-+\\([-A-Za-z0-9_]+\\)\\s-+\\([A-Za-z0-9]+\\)\\s-*{" + (1 font-lock-type-face) + (2 font-lock-constant-face)) + ("^\\s-*\\([-A-Za-z0-9_]+\\)\\s-*{" + (1 font-lock-function-name-face)) + ("^\\s-*\\(geometry\\|appearance\\|material\\)\\s-+\\([-A-Za-z0-9_]+\\)" + (2 font-lock-variable-name-face))) + '("\\.wrl\\'") (list (function (lambda () @@ -666,1013 +610,976 @@ '((nil "^\\([A-Za-z0-9_]+\\)\\s-*{" 1) ("*Definitions*" "DEF\\s-+\\([-A-Za-z0-9_]+\\)\\s-+\\([A-Za-z0-9]+\\)\\s-*{" - 1))) - ))) + 1)))))) "Generic Mode for VRML files.") ;; Java Manifests -(define-generic-mode 'java-manifest-generic-mode - (list ?#) - (list - "Name" - "Digest-Algorithms" - "Manifest-Version" - "Required-Version" - "Signature-Version" - "Magic" - "Java-Bean" - "Depends-On" - ) +(define-generic-mode java-manifest-generic-mode + '(?#) + '("Name" + "Digest-Algorithms" + "Manifest-Version" + "Required-Version" + "Signature-Version" + "Magic" + "Java-Bean" + "Depends-On") '(("^Name:\\s-+\\([^\n\r]*\\)$" (1 font-lock-variable-name-face)) ("^\\(Manifest\\|Required\\|Signature\\)-Version:\\s-+\\([^\n\r]*\\)$" - (2 font-lock-constant-face)) - ) - (list "[mM][aA][nN][iI][fF][eE][sS][tT]\\.[mM][fF]\\'") + (2 font-lock-constant-face))) + '("[mM][aA][nN][iI][fF][eE][sS][tT]\\.[mM][fF]\\'") nil "Mode for Java Manifest files") ;; Java properties files -(define-generic-mode 'java-properties-generic-mode - (list ?! ?#) +(define-generic-mode java-properties-generic-mode + '(?! ?#) nil - (let ((java-properties-key - "\\(\\([-A-Za-z0-9_\\./]\\|\\(\\\\[ =:]\\)\\)+\\)") - (java-properties-value - "\\([^\r\n]*\\)") - ) - ;; Property and value can be separated in a number of different ways: - ;; * whitespace - ;; * an equal sign - ;; * a colon - (mapcar - (function - (lambda (elt) - (list - (concat "^" java-properties-key elt java-properties-value "$") - '(1 font-lock-constant-face) - '(4 font-lock-variable-name-face) - ))) - ;; These are the separators - (list ":\\s-*" "\\s-+" "\\s-*=\\s-*") - ) - ) + (eval-when-compile + (let ((java-properties-key + "\\(\\([-A-Za-z0-9_\\./]\\|\\(\\\\[ =:]\\)\\)+\\)") + (java-properties-value + "\\([^\r\n]*\\)")) + ;; Property and value can be separated in a number of different ways: + ;; * whitespace + ;; * an equal sign + ;; * a colon + (mapcar + (function + (lambda (elt) + (list + (concat "^" java-properties-key elt java-properties-value "$") + '(1 font-lock-constant-face) + '(4 font-lock-variable-name-face)))) + ;; These are the separators + '(":\\s-*" "\\s-+" "\\s-*=\\s-*")))) nil (list (function (lambda () (setq imenu-generic-expression - '((nil "^\\([^#! \t\n\r=:]+\\)" 1))) - ))) + '((nil "^\\([^#! \t\n\r=:]+\\)" 1)))))) "Mode for Java properties files.") ;; C shell alias definitions -(and - (memq 'alias-generic-mode generic-extras-enable-list) +(when (memq 'alias-generic-mode generic-extras-enable-list) -(define-generic-mode 'alias-generic-mode - (list ?#) - (list "alias" "unalias") +(define-generic-mode alias-generic-mode + '(?#) + '("alias" "unalias") '(("^alias\\s-+\\([-A-Za-z0-9_]+\\)\\s-+" (1 font-lock-variable-name-face)) ("^unalias\\s-+\\([-A-Za-z0-9_]+\\)\\s-*$" - (1 font-lock-variable-name-face)) - ) - (list "alias\\'") + (1 font-lock-variable-name-face))) + '("alias\\'") (list (function (lambda () (setq imenu-generic-expression - '((nil "^\\(alias\\|unalias\\)\\s-+\\([-a-zA-Z0-9_]+\\)" 2))) - ))) - "Mode for C Shell alias files.") -) + '((nil "^\\(alias\\|unalias\\)\\s-+\\([-a-zA-Z0-9_]+\\)" 2)))))) + "Mode for C Shell alias files.")) ;;; Windows RC files ;; Contributed by ACorreir@pervasive-sw.com (Alfred Correira) -(and - (memq 'rc-generic-mode generic-extras-enable-list) +(when (memq 'rc-generic-mode generic-extras-enable-list) -(define-generic-mode 'rc-generic-mode -;; (list ?\/) - (list "//") - '("ACCELERATORS" - "AUTO3STATE" - "AUTOCHECKBOX" - "AUTORADIOBUTTON" - "BITMAP" - "BOTTOMMARGIN" - "BUTTON" - "CAPTION" - "CHARACTERISTICS" - "CHECKBOX" - "CLASS" - "COMBOBOX" - "CONTROL" - "CTEXT" - "CURSOR" - "DEFPUSHBUTTON" - "DESIGNINFO" - "DIALOG" - "DISCARDABLE" - "EDITTEXT" - "EXSTYLE" - "FONT" - "GROUPBOX" - "GUIDELINES" - "ICON" - "LANGUAGE" - "LEFTMARGIN" - "LISTBOX" - "LTEXT" - "MENUITEM SEPARATOR" - "MENUITEM" - "MENU" - "MOVEABLE" - "POPUP" - "PRELOAD" - "PURE" - "PUSHBOX" - "PUSHBUTTON" - "RADIOBUTTON" - "RCDATA" - "RIGHTMARGIN" - "RTEXT" - "SCROLLBAR" - "SEPARATOR" - "STATE3" - "STRINGTABLE" - "STYLE" - "TEXTINCLUDE" - "TOOLBAR" - "TOPMARGIN" - "VERSIONINFO" - "VERSION" - ) - ;; the choice of what tokens go where is somewhat arbitrary, - ;; as is the choice of which value tokens are included, as - ;; the choice of face for each token group - (list - (eval-when-compile - (generic-make-keywords-list - (list - "FILEFLAGSMASK" +(define-generic-mode rc-generic-mode + ;; '(?\/) + '("//") + '("ACCELERATORS" + "AUTO3STATE" + "AUTOCHECKBOX" + "AUTORADIOBUTTON" + "BITMAP" + "BOTTOMMARGIN" + "BUTTON" + "CAPTION" + "CHARACTERISTICS" + "CHECKBOX" + "CLASS" + "COMBOBOX" + "CONTROL" + "CTEXT" + "CURSOR" + "DEFPUSHBUTTON" + "DESIGNINFO" + "DIALOG" + "DISCARDABLE" + "EDITTEXT" + "EXSTYLE" + "FONT" + "GROUPBOX" + "GUIDELINES" + "ICON" + "LANGUAGE" + "LEFTMARGIN" + "LISTBOX" + "LTEXT" + "MENUITEM SEPARATOR" + "MENUITEM" + "MENU" + "MOVEABLE" + "POPUP" + "PRELOAD" + "PURE" + "PUSHBOX" + "PUSHBUTTON" + "RADIOBUTTON" + "RCDATA" + "RIGHTMARGIN" + "RTEXT" + "SCROLLBAR" + "SEPARATOR" + "STATE3" + "STRINGTABLE" + "STYLE" + "TEXTINCLUDE" + "TOOLBAR" + "TOPMARGIN" + "VERSIONINFO" + "VERSION") + ;; the choice of what tokens go where is somewhat arbitrary, + ;; as is the choice of which value tokens are included, as + ;; the choice of face for each token group + (eval-when-compile + (list + (generic-make-keywords-list + '("FILEFLAGSMASK" "FILEFLAGS" "FILEOS" "FILESUBTYPE" "FILETYPE" "FILEVERSION" - "PRODUCTVERSION" - ) 'font-lock-type-face)) - (eval-when-compile - (generic-make-keywords-list - (list - "BEGIN" + "PRODUCTVERSION") + 'font-lock-type-face) + (generic-make-keywords-list + '("BEGIN" "BLOCK" "END" - "VALUE" - ) 'font-lock-function-name-face)) - '("^#[ \t]*include[ \t]+\\(<[^>\"\n]+>\\)" 1 font-lock-string-face) - '("^#[ \t]*define[ \t]+\\(\\sw+\\)(" 1 font-lock-function-name-face) - '("^#[ \t]*\\(elif\\|if\\)\\>" - ("\\<\\(defined\\)\\>[ \t]*(?\\(\\sw+\\)?" nil nil - (1 font-lock-constant-face) (2 font-lock-variable-name-face nil t))) - '("^#[ \t]*\\(\\sw+\\)\\>[ \t]*\\(\\sw+\\)?" - (1 font-lock-constant-face) (2 font-lock-variable-name-face nil t))) - (list "\\.[rR][cC]$") - nil - "Generic mode for MS-Windows Resource files.")) + "VALUE") + 'font-lock-function-name-face) + '("^#[ \t]*include[ \t]+\\(<[^>\"\n]+>\\)" 1 font-lock-string-face) + '("^#[ \t]*define[ \t]+\\(\\sw+\\)(" 1 font-lock-function-name-face) + '("^#[ \t]*\\(elif\\|if\\)\\>" + ("\\<\\(defined\\)\\>[ \t]*(?\\(\\sw+\\)?" nil nil + (1 font-lock-constant-face) + (2 font-lock-variable-name-face nil t))) + '("^#[ \t]*\\(\\sw+\\)\\>[ \t]*\\(\\sw+\\)?" + (1 font-lock-constant-face) + (2 font-lock-variable-name-face nil t)))) + '("\\.[rR][cC]$") + nil + "Generic mode for MS-Windows Resource files.")) ;; InstallShield RUL files ;; Contributed by Alfred.Correira@Pervasive.Com ;; Bugfixes by "Rolf Sandau" <Rolf.Sandau@marconi.com> -(and -(memq 'rul-generic-mode generic-extras-enable-list) +(when (memq 'rul-generic-mode generic-extras-enable-list) + +(eval-when-compile + ;;; build the regexp strings using regexp-opt -(defvar installshield-statement-keyword-list - (list - "abort" - "begin" - "call" - "case" - "declare" - "default" - "downto" - "elseif" - "else" - "endfor" - "endif" - "endswitch" - "endwhile" - "end" - "exit" - "external" - "for" - "function" - ;; "goto" -- handled elsewhere - "if" - "program" - "prototype" - "repeat" - "return" - "step" - "switch" - "then" - "to" - "typedef" - "until" - "void" - "while" - ) +(defconst installshield-statement-keyword-list + '("abort" + "begin" + "call" + "case" + "declare" + "default" + "downto" + "elseif" + "else" + "endfor" + "endif" + "endswitch" + "endwhile" + "end" + "exit" + "external" + "for" + "function" + ;; "goto" -- handled elsewhere + "if" + "program" + "prototype" + "repeat" + "return" + "step" + "switch" + "then" + "to" + "typedef" + "until" + "void" + "while") "Statement keywords used in InstallShield 3 and 5.") -(defvar installshield-system-functions-list - (list - "AddFolderIcon" - "AddProfString" - "AddressString" - "AppCommand" - "AskDestPath" - "AskOptions" - "AskPath" - "AskText" - "AskYesNo" - "BatchDeleteEx" - "BatchFileLoad" - "BatchFileSave" - "BatchFind" - "BatchGetFileName" - "BatchMoveEx" - "BatchSetFileName" - "ChangeDirectory" - "CloseFile" - "CmdGetHwndDlg" - "ComponentAddItem" ; differs between IS3 and IS5 - "ComponentCompareSizeRequired" ; IS5 only - "ComponentDialog" - "ComponentError" ; IS5 only - "ComponentFileEnum" ; IS5 only - "ComponentFileInfo" ; IS5 only - "ComponentFilterLanguage" ; IS5 only - "ComponentFilterOS" ; IS5 only - "ComponentGetData" ; IS5 only - "ComponentGetItemInfo" ; IS3 only - "ComponentGetItemSize" ; differs between IS3 and IS5 - "ComponentIsItemSelected" ; differs between IS3 and IS5 - "ComponentListItems" - "ComponentMoveData" ; IS5 only - "ComponentSelectItem" ; differs between IS3 and IS5 - "ComponentSetData" ; IS5 only - "ComponentSetItemInfo" ; IS3 only - "ComponentSetTarget" ; IS5 only - "ComponentSetupTypeEnum" ; IS5 only - "ComponentSetupTypeGetData" ; IS5 only - "ComponentSetupTypeSet" ; IS5 only - "ComponentTotalSize" - "ComponentValidate" ; IS5 only - "CompressAdd" ; IS3 only - "CompressDel" ; IS3 only - "CompressEnum" ; IS3 only - "CompressGet" ; IS3 only - "CompressInfo" ; IS3 only - "CopyFile" - "CreateDir" - "CreateFile" - "CreateProgramFolder" - "DeinstallSetReference" ; IS5 only - "DeinstallStart" - "Delay" - "DeleteDir" - "DeleteFile" - "DialogSetInfo" - "Disable" - "DoInstall" - "Do" - "Enable" - "EnterDisk" - "ExistsDir" - "ExistsDisk" - "ExitProgMan" - "EzBatchAddPath" - "EzBatchAddString" - "EzBatchReplace" - "EzConfigAddDriver" - "EzConfigAddString" - "EzConfigGetValue" - "EzConfigSetValue" - "EzDefineDialog" - "FileCompare" - "FileDeleteLine" - "FileGrep" - "FileInsertLine" - "FileSetBeginDefine" ; IS3 only - "FileSetEndDefine" ; IS3 only - "FileSetPerformEz" ; IS3 only - "FileSetPerform" ; IS3 only - "FileSetReset" ; IS3 only - "FileSetRoot" ; IS3 only - "FindAllDirs" - "FindAllFiles" - "FindFile" - "FindWindow" - "GetDiskSpace" - "GetDisk" - "GetEnvVar" - "GetExtents" - "GetFileInfo" - "GetLine" - "GetProfInt" - "GetProfString" - "GetSystemInfo" - "GetValidDrivesList" - "GetVersion" - "GetWindowHandle" - "InstallationInfo" - "Is" - "LaunchApp" - "LaunchAppAndWait" - "ListAddItem" - "ListAddString" - "ListCount" - "ListCreate" - "ListDestroy" - "ListFindItem" - "ListFindString" - "ListGetFirstItem" - "ListGetFirstString" - "ListGetNextItem" - "ListGetNextString" - "ListReadFromFile" - "ListSetCurrentItem" - "ListSetNextItem" - "ListSetNextString" - "ListSetIndex" - "ListWriteToFile" - "LongPathToQuote" - "LongPathToShortPath" - "MessageBox" - "NumToStr" - "OpenFileMode" - "OpenFile" - "ParsePath" - "PathAdd" - "PathDelete" - "PathFind" - "PathGet" - "PathMove" - "PathSet" - "Path" - "PlaceBitmap" - "PlaceWindow" - "PlayMMedia" ; IS5 only - "ProgDefGroupType" - "RegDBCreateKeyEx" - "RegDBDeleteValue" - "RegDBGetItem" - "RegDBKeyExist" - "RegDBSetItem" - "RegDBGetKeyValueEx" - "RegDBSetKeyValueEx" - "RegDBSetDefaultRoot" - "RenameFile" - "ReplaceFolderIcon" - "ReplaceProfString" - "SdAskDestPath" - "SdAskOptions" - "SdAskOptionsList" - "SdBitmap" - "SdCloseDlg" - "SdComponentAdvCheckSpace" - "SdComponentAdvInit" - "SdComponentAdvUpdateSpace" - "SdComponentDialog" - "SdComponentDialog2" - "SdComponentDialogAdv" - "SdComponentDialogEx" - "SdComponentDlgCheckSpace" - "SdComponentMult" - "SdConfirmNewDir" - "SdConfirmRegistration" - "SdDiskSpace" - "SdDisplayTopics" - "SdDoStdButton" - "SdEnablement" - "SdError" - "SdFinish" - "SdFinishInit32" - "SdFinishReboot" - "SdGeneralInit" - "SdGetItemName" - "SdGetTextExtent" - "SdGetUserCompanyInfo" - "SdInit" - "SdIsShellExplorer" - "SdIsStdButton" - "SdLicense" - "SdMakeName" - "SdOptionInit" - "SdOptionSetState" - "SdOptionsButtons" - "SdOptionsButtonsInit" - "SdPlugInProductName" - "SdProductName" - "SdRegEnableButton" - "SdRegExEnableButton" - "SdRegisterUser" - "SdRegisterUserEx" - "SdRemoveEndSpace" - "SdSelectFolder" - "SdSetSequentialItems" - "SdSetStatic" - "SdSetupTypeEx" ; IS5 only - "SdSetupType" - "SdShowAnyDialog" - "SdShowDlgEdit1" - "SdShowDlgEdit2" - "SdShowDlgEdit3" - "SdShowFileMods" - "SdShowInfoList" - "SdShowMsg" - "SdStartCopy" - "SdUnInit" - "SdUpdateComponentSelection" - "SdWelcome" - "SendMessage" - "SetColor" - "SetFont" - "SetDialogTitle" - "SetDisplayEffect" ; IS5 only - "SetFileInfo" - "SetForegroundWindow" - "SetStatusWindow" - "SetTitle" - "SetupType" - "ShowProgramFolder" - "Split" ; IS3 only - "SprintfBox" - "Sprintf" - "StatusUpdate" - "StrCompare" - "StrFind" - "StrGetTokens" - "StrLength" - "StrRemoveLastSlash" - "StrToLower" - "StrToNum" - "StrToUpper" - "StrSub" - "VarRestore" - "VarSave" - "VerCompare" - "VerGetFileVersion" - "WaitOnDialog" - "Welcome" - "WriteLine" - "WriteProfString" - "XCopyFile" - ) +(defconst installshield-system-functions-list + '("AddFolderIcon" + "AddProfString" + "AddressString" + "AppCommand" + "AskDestPath" + "AskOptions" + "AskPath" + "AskText" + "AskYesNo" + "BatchDeleteEx" + "BatchFileLoad" + "BatchFileSave" + "BatchFind" + "BatchGetFileName" + "BatchMoveEx" + "BatchSetFileName" + "ChangeDirectory" + "CloseFile" + "CmdGetHwndDlg" + "ComponentAddItem" ; differs between IS3 and IS5 + "ComponentCompareSizeRequired" ; IS5 only + "ComponentDialog" + "ComponentError" ; IS5 only + "ComponentFileEnum" ; IS5 only + "ComponentFileInfo" ; IS5 only + "ComponentFilterLanguage" ; IS5 only + "ComponentFilterOS" ; IS5 only + "ComponentGetData" ; IS5 only + "ComponentGetItemInfo" ; IS3 only + "ComponentGetItemSize" ; differs between IS3 and IS5 + "ComponentIsItemSelected" ; differs between IS3 and IS5 + "ComponentListItems" + "ComponentMoveData" ; IS5 only + "ComponentSelectItem" ; differs between IS3 and IS5 + "ComponentSetData" ; IS5 only + "ComponentSetItemInfo" ; IS3 only + "ComponentSetTarget" ; IS5 only + "ComponentSetupTypeEnum" ; IS5 only + "ComponentSetupTypeGetData" ; IS5 only + "ComponentSetupTypeSet" ; IS5 only + "ComponentTotalSize" + "ComponentValidate" ; IS5 only + "CompressAdd" ; IS3 only + "CompressDel" ; IS3 only + "CompressEnum" ; IS3 only + "CompressGet" ; IS3 only + "CompressInfo" ; IS3 only + "CopyFile" + "CreateDir" + "CreateFile" + "CreateProgramFolder" + "DeinstallSetReference" ; IS5 only + "DeinstallStart" + "Delay" + "DeleteDir" + "DeleteFile" + "DialogSetInfo" + "Disable" + "DoInstall" + "Do" + "Enable" + "EnterDisk" + "ExistsDir" + "ExistsDisk" + "ExitProgMan" + "EzBatchAddPath" + "EzBatchAddString" + "EzBatchReplace" + "EzConfigAddDriver" + "EzConfigAddString" + "EzConfigGetValue" + "EzConfigSetValue" + "EzDefineDialog" + "FileCompare" + "FileDeleteLine" + "FileGrep" + "FileInsertLine" + "FileSetBeginDefine" ; IS3 only + "FileSetEndDefine" ; IS3 only + "FileSetPerformEz" ; IS3 only + "FileSetPerform" ; IS3 only + "FileSetReset" ; IS3 only + "FileSetRoot" ; IS3 only + "FindAllDirs" + "FindAllFiles" + "FindFile" + "FindWindow" + "GetDiskSpace" + "GetDisk" + "GetEnvVar" + "GetExtents" + "GetFileInfo" + "GetLine" + "GetProfInt" + "GetProfString" + "GetSystemInfo" + "GetValidDrivesList" + "GetVersion" + "GetWindowHandle" + "InstallationInfo" + "Is" + "LaunchApp" + "LaunchAppAndWait" + "ListAddItem" + "ListAddString" + "ListCount" + "ListCreate" + "ListDestroy" + "ListFindItem" + "ListFindString" + "ListGetFirstItem" + "ListGetFirstString" + "ListGetNextItem" + "ListGetNextString" + "ListReadFromFile" + "ListSetCurrentItem" + "ListSetNextItem" + "ListSetNextString" + "ListSetIndex" + "ListWriteToFile" + "LongPathToQuote" + "LongPathToShortPath" + "MessageBox" + "NumToStr" + "OpenFileMode" + "OpenFile" + "ParsePath" + "PathAdd" + "PathDelete" + "PathFind" + "PathGet" + "PathMove" + "PathSet" + "Path" + "PlaceBitmap" + "PlaceWindow" + "PlayMMedia" ; IS5 only + "ProgDefGroupType" + "RegDBCreateKeyEx" + "RegDBDeleteValue" + "RegDBGetItem" + "RegDBKeyExist" + "RegDBSetItem" + "RegDBGetKeyValueEx" + "RegDBSetKeyValueEx" + "RegDBSetDefaultRoot" + "RenameFile" + "ReplaceFolderIcon" + "ReplaceProfString" + "SdAskDestPath" + "SdAskOptions" + "SdAskOptionsList" + "SdBitmap" + "SdCloseDlg" + "SdComponentAdvCheckSpace" + "SdComponentAdvInit" + "SdComponentAdvUpdateSpace" + "SdComponentDialog" + "SdComponentDialog2" + "SdComponentDialogAdv" + "SdComponentDialogEx" + "SdComponentDlgCheckSpace" + "SdComponentMult" + "SdConfirmNewDir" + "SdConfirmRegistration" + "SdDiskSpace" + "SdDisplayTopics" + "SdDoStdButton" + "SdEnablement" + "SdError" + "SdFinish" + "SdFinishInit32" + "SdFinishReboot" + "SdGeneralInit" + "SdGetItemName" + "SdGetTextExtent" + "SdGetUserCompanyInfo" + "SdInit" + "SdIsShellExplorer" + "SdIsStdButton" + "SdLicense" + "SdMakeName" + "SdOptionInit" + "SdOptionSetState" + "SdOptionsButtons" + "SdOptionsButtonsInit" + "SdPlugInProductName" + "SdProductName" + "SdRegEnableButton" + "SdRegExEnableButton" + "SdRegisterUser" + "SdRegisterUserEx" + "SdRemoveEndSpace" + "SdSelectFolder" + "SdSetSequentialItems" + "SdSetStatic" + "SdSetupTypeEx" ; IS5 only + "SdSetupType" + "SdShowAnyDialog" + "SdShowDlgEdit1" + "SdShowDlgEdit2" + "SdShowDlgEdit3" + "SdShowFileMods" + "SdShowInfoList" + "SdShowMsg" + "SdStartCopy" + "SdUnInit" + "SdUpdateComponentSelection" + "SdWelcome" + "SendMessage" + "SetColor" + "SetFont" + "SetDialogTitle" + "SetDisplayEffect" ; IS5 only + "SetFileInfo" + "SetForegroundWindow" + "SetStatusWindow" + "SetTitle" + "SetupType" + "ShowProgramFolder" + "Split" ; IS3 only + "SprintfBox" + "Sprintf" + "StatusUpdate" + "StrCompare" + "StrFind" + "StrGetTokens" + "StrLength" + "StrRemoveLastSlash" + "StrToLower" + "StrToNum" + "StrToUpper" + "StrSub" + "VarRestore" + "VarSave" + "VerCompare" + "VerGetFileVersion" + "WaitOnDialog" + "Welcome" + "WriteLine" + "WriteProfString" + "XCopyFile") "System functions defined in InstallShield 3 and 5.") -(defvar installshield-system-variables-list - (list - "BATCH_INSTALL" - "CMDLINE" - "COMMONFILES" - "CORECOMPONENTHANDLING" - "DIALOGCACHE" - "ERRORFILENAME" - "FOLDER_DESKTOP" - "FOLDER_PROGRAMS" - "FOLDER_STARTMENU" - "FOLDER_STARTUP" - "INFOFILENAME" - "ISRES" - "ISUSER" - "ISVERSION" - "MEDIA" - "MODE" - "PROGRAMFILES" - "SELECTED_LANGUAGE" - "SRCDIR" - "SRCDISK" - "SUPPORTDIR" - "TARGETDIR" - "TARGETDISK" - "UNINST" - "WINDIR" - "WINDISK" - "WINMAJOR" - "WINSYSDIR" - "WINSYSDISK" - ) +(defconst installshield-system-variables-list + '("BATCH_INSTALL" + "CMDLINE" + "COMMONFILES" + "CORECOMPONENTHANDLING" + "DIALOGCACHE" + "ERRORFILENAME" + "FOLDER_DESKTOP" + "FOLDER_PROGRAMS" + "FOLDER_STARTMENU" + "FOLDER_STARTUP" + "INFOFILENAME" + "ISRES" + "ISUSER" + "ISVERSION" + "MEDIA" + "MODE" + "PROGRAMFILES" + "SELECTED_LANGUAGE" + "SRCDIR" + "SRCDISK" + "SUPPORTDIR" + "TARGETDIR" + "TARGETDISK" + "UNINST" + "WINDIR" + "WINDISK" + "WINMAJOR" + "WINSYSDIR" + "WINSYSDISK") "System variables used in InstallShield 3 and 5.") -(defvar installshield-types-list - (list - "BOOL" - "BYREF" - "CHAR" - "HIWORD" - "HWND" - "INT" - "LIST" - "LONG" - "LOWORD" - "LPSTR" - "NUMBER" - "NUMBERLIST" - "POINTER" - "QUAD" - "RGB" - "SHORT" - "STRINGLIST" - "STRING" - ) +(defconst installshield-types-list + '("BOOL" + "BYREF" + "CHAR" + "HIWORD" + "HWND" + "INT" + "LIST" + "LONG" + "LOWORD" + "LPSTR" + "NUMBER" + "NUMBERLIST" + "POINTER" + "QUAD" + "RGB" + "SHORT" + "STRINGLIST" + "STRING") "Type keywords used in InstallShield 3 and 5.") ;;; some might want to skip highlighting these to improve performance -(defvar installshield-funarg-constants-list - (list - "AFTER" - "APPEND" - "ALLCONTENTS" - "BACKBUTTON" - "BACKGROUNDCAPTION" - "BACKGROUND" - "BACK" - "BASEMEMORY" - "BEFORE" - "BIOS" - "BITMAPICON" - "BK_BLUE" - "BK_GREEN" - "BK_RED" - "BLUE" - "BOOTUPDRIVE" - "CANCEL" - "CDROM_DRIVE" - "CDROM" - "CHECKBOX95" - "CHECKBOX" - "CHECKLINE" - "CHECKMARK" - "COLORS" - "COMMANDEX" - "COMMAND" - "COMP_NORMAL" - "COMP_UPDATE_DATE" - "COMP_UPDATE_SAME" - "COMP_UPDATE_VERSION" - "COMPACT" - "CONTINUE" - "CPU" - "CUSTOM" - "DATE" - "DEFWINDOWMODE" - "DIR_WRITEABLE" - "DIRECTORY" - "DISABLE" - "DISK_TOTALSPACE" - "DISK" - "DLG_OPTIONS" - "DLG_PATH" - "DLG_TEXT" - "DLG_ASK_YESNO" - "DLG_ENTER_DISK" - "DLG_ERR" - "DLG_INFO_ALTIMAGE" - "DLG_INFO_CHECKSELECTION" - "DLG_INFO_KUNITS" - "DLG_INFO_USEDECIMAL" - "DLG_MSG_INFORMATION" - "DLG_MSG_SEVERE" - "DLG_MSG_WARNING" - "DLG_STATUS" - "DLG_WARNING" - "DLG_USER_CAPTION" - "DRIVE" - "ENABLE" - "END_OF_FILE" - "END_OF_LIST" - "ENVSPACE" - "EQUALS" - "EXCLUDE_SUBDIR" - "EXCLUSIVE" - "EXISTS" - "EXIT" - "EXTENDED_MEMORY" - "EXTENSION_ONLY" - "FAILIFEXISTS" - "FALSE" - "FEEDBACK_FULL" - "FILE_ATTR_ARCHIVED" - "FILE_ATTR_DIRECTORY" - "FILE_ATTR_HIDDEN" - "FILE_ATTR_NORMAL" - "FILE_ATTR_READONLY" - "FILE_ATTR_SYSTEM" - "FILE_ATTRIBUTE" - "FILE_DATE" - "FILE_LINE_LENGTH" - "FILE_MODE_APPEND" - "FILE_MODE_BINARYREADONLY" - "FILE_MODE_BINARY" - "FILE_MODE_NORMAL" - "FILE_NO_VERSION" - "FILE_NOT_FOUND" - "FILE_SIZE" - "FILE_TIME" - "FILENAME_ONLY" - "FILENAME" - "FIXED_DRIVE" - "FOLDER_DESKTOP" - "FOLDER_PROGRAMS" - "FOLDER_STARTMENU" - "FOLDER_STARTUP" - "FREEENVSPACE" - "FULLWINDOWMODE" - "FULL" - "FONT_TITLE" - "GREATER_THAN" - "GREEN" - "HKEY_CLASSES_ROOT" - "HKEY_CURRENT_USER" - "HKEY_LOCAL_MACHINE" - "HKEY_USERS" - "HOURGLASS" - "INCLUDE_SUBDIR" - "INDVFILESTATUS" - "INFORMATION" - "IS_WINDOWSNT" - "IS_WINDOWS95" - "IS_WINDOWS" - "IS_WIN32S" - "ISTYPE" - "LANGUAGE_DRV" - "LANGUAGE" - "LESS_THAN" - "LIST_NULL" - "LISTFIRST" - "LISTNEXT" - "LOCKEDFILE" - "LOGGING" - "LOWER_LEFT" - "LOWER_RIGHT" - "MAGENTA" - "MOUSE_DRV" - "MOUSE" - "NETWORK_DRV" - "NETWORK" - "NEXT" - "NONEXCLUSIVE" - "NORMALMODE" - "NOSET" - "NOTEXISTS" - "NOWAIT" - "NO" - "OFF" - "ONLYDIR" - "ON" - "OSMAJOR" - "OSMINOR" - "OS" - "OTHER_FAILURE" - "PARALLEL" - "PARTIAL" - "PATH_EXISTS" - "PATH" - "RED" - "REGDB_APPPATH_DEFAULT" - "REGDB_APPPATH" - "REGDB_BINARY" - "REGDB_ERR_CONNECTIONEXISTS" - "REGDB_ERR_CORRUPTEDREGSITRY" - "REGDB_ERR_INITIALIZATION" - "REGDB_ERR_INVALIDHANDLE" - "REGDB_ERR_INVALIDNAME" - "REGDB_NUMBER" - "REGDB_STRING_EXPAND" - "REGDB_STRING_MULTI" - "REGDB_STRING" - "REGDB_UNINSTALL_NAME" - "REMOTE_DRIVE" - "REMOVALE_DRIVE" - "REPLACE_ITEM" - "REPLACE" - "RESET" - "RESTART" - "ROOT" - "SELFREGISTER" - "SERIAL" - "SET" - "SEVERE" - "SHAREDFILE" - "SHARE" - "SILENTMODE" - "SRCTARGETDIR" - "STATUSBAR" - "STATUSDLG" - "STATUSOLD" - "STATUS" - "STYLE_NORMAL" - "SW_MAXIMIZE" - "SW_MINIMIZE" - "SW_RESTORE" - "SW_SHOW" - "SYS_BOOTMACHINE" - "TIME" - "TRUE" - "TYPICAL" - "UPPER_LEFT" - "UPPER_RIGHT" - "VALID_PATH" - "VERSION" - "VIDEO" - "VOLUMELABEL" - "YELLOW" - "YES" - "WAIT" - "WARNING" - "WINMAJOR" - "WINMINOR" - "WIN32SINSTALLED" - "WIN32SMAJOR" - "WIN32SMINOR" - ) - "Function argument constants used in InstallShield 3 and 5.") +(defconst installshield-funarg-constants-list + '("AFTER" + "APPEND" + "ALLCONTENTS" + "BACKBUTTON" + "BACKGROUNDCAPTION" + "BACKGROUND" + "BACK" + "BASEMEMORY" + "BEFORE" + "BIOS" + "BITMAPICON" + "BK_BLUE" + "BK_GREEN" + "BK_RED" + "BLUE" + "BOOTUPDRIVE" + "CANCEL" + "CDROM_DRIVE" + "CDROM" + "CHECKBOX95" + "CHECKBOX" + "CHECKLINE" + "CHECKMARK" + "COLORS" + "COMMANDEX" + "COMMAND" + "COMP_NORMAL" + "COMP_UPDATE_DATE" + "COMP_UPDATE_SAME" + "COMP_UPDATE_VERSION" + "COMPACT" + "CONTINUE" + "CPU" + "CUSTOM" + "DATE" + "DEFWINDOWMODE" + "DIR_WRITEABLE" + "DIRECTORY" + "DISABLE" + "DISK_TOTALSPACE" + "DISK" + "DLG_OPTIONS" + "DLG_PATH" + "DLG_TEXT" + "DLG_ASK_YESNO" + "DLG_ENTER_DISK" + "DLG_ERR" + "DLG_INFO_ALTIMAGE" + "DLG_INFO_CHECKSELECTION" + "DLG_INFO_KUNITS" + "DLG_INFO_USEDECIMAL" + "DLG_MSG_INFORMATION" + "DLG_MSG_SEVERE" + "DLG_MSG_WARNING" + "DLG_STATUS" + "DLG_WARNING" + "DLG_USER_CAPTION" + "DRIVE" + "ENABLE" + "END_OF_FILE" + "END_OF_LIST" + "ENVSPACE" + "EQUALS" + "EXCLUDE_SUBDIR" + "EXCLUSIVE" + "EXISTS" + "EXIT" + "EXTENDED_MEMORY" + "EXTENSION_ONLY" + "FAILIFEXISTS" + "FALSE" + "FEEDBACK_FULL" + "FILE_ATTR_ARCHIVED" + "FILE_ATTR_DIRECTORY" + "FILE_ATTR_HIDDEN" + "FILE_ATTR_NORMAL" + "FILE_ATTR_READONLY" + "FILE_ATTR_SYSTEM" + "FILE_ATTRIBUTE" + "FILE_DATE" + "FILE_LINE_LENGTH" + "FILE_MODE_APPEND" + "FILE_MODE_BINARYREADONLY" + "FILE_MODE_BINARY" + "FILE_MODE_NORMAL" + "FILE_NO_VERSION" + "FILE_NOT_FOUND" + "FILE_SIZE" + "FILE_TIME" + "FILENAME_ONLY" + "FILENAME" + "FIXED_DRIVE" + "FOLDER_DESKTOP" + "FOLDER_PROGRAMS" + "FOLDER_STARTMENU" + "FOLDER_STARTUP" + "FREEENVSPACE" + "FULLWINDOWMODE" + "FULL" + "FONT_TITLE" + "GREATER_THAN" + "GREEN" + "HKEY_CLASSES_ROOT" + "HKEY_CURRENT_USER" + "HKEY_LOCAL_MACHINE" + "HKEY_USERS" + "HOURGLASS" + "INCLUDE_SUBDIR" + "INDVFILESTATUS" + "INFORMATION" + "IS_WINDOWSNT" + "IS_WINDOWS95" + "IS_WINDOWS" + "IS_WIN32S" + "ISTYPE" + "LANGUAGE_DRV" + "LANGUAGE" + "LESS_THAN" + "LIST_NULL" + "LISTFIRST" + "LISTNEXT" + "LOCKEDFILE" + "LOGGING" + "LOWER_LEFT" + "LOWER_RIGHT" + "MAGENTA" + "MOUSE_DRV" + "MOUSE" + "NETWORK_DRV" + "NETWORK" + "NEXT" + "NONEXCLUSIVE" + "NORMALMODE" + "NOSET" + "NOTEXISTS" + "NOWAIT" + "NO" + "OFF" + "ONLYDIR" + "ON" + "OSMAJOR" + "OSMINOR" + "OS" + "OTHER_FAILURE" + "PARALLEL" + "PARTIAL" + "PATH_EXISTS" + "PATH" + "RED" + "REGDB_APPPATH_DEFAULT" + "REGDB_APPPATH" + "REGDB_BINARY" + "REGDB_ERR_CONNECTIONEXISTS" + "REGDB_ERR_CORRUPTEDREGSITRY" + "REGDB_ERR_INITIALIZATION" + "REGDB_ERR_INVALIDHANDLE" + "REGDB_ERR_INVALIDNAME" + "REGDB_NUMBER" + "REGDB_STRING_EXPAND" + "REGDB_STRING_MULTI" + "REGDB_STRING" + "REGDB_UNINSTALL_NAME" + "REMOTE_DRIVE" + "REMOVALE_DRIVE" + "REPLACE_ITEM" + "REPLACE" + "RESET" + "RESTART" + "ROOT" + "SELFREGISTER" + "SERIAL" + "SET" + "SEVERE" + "SHAREDFILE" + "SHARE" + "SILENTMODE" + "SRCTARGETDIR" + "STATUSBAR" + "STATUSDLG" + "STATUSOLD" + "STATUS" + "STYLE_NORMAL" + "SW_MAXIMIZE" + "SW_MINIMIZE" + "SW_RESTORE" + "SW_SHOW" + "SYS_BOOTMACHINE" + "TIME" + "TRUE" + "TYPICAL" + "UPPER_LEFT" + "UPPER_RIGHT" + "VALID_PATH" + "VERSION" + "VIDEO" + "VOLUMELABEL" + "YELLOW" + "YES" + "WAIT" + "WARNING" + "WINMAJOR" + "WINMINOR" + "WIN32SINSTALLED" + "WIN32SMAJOR" + "WIN32SMINOR") + "Function argument constants used in InstallShield 3 and 5.")) -(progn - (defvar rul-generic-mode-syntax-table nil - "Syntax table to use in rul-generic-mode buffers.") +(defvar rul-generic-mode-syntax-table nil + "Syntax table to use in rul-generic-mode buffers.") + +(setq rul-generic-mode-syntax-table + (make-syntax-table c++-mode-syntax-table)) - (setq rul-generic-mode-syntax-table - (make-syntax-table c++-mode-syntax-table)) +(modify-syntax-entry ?\r "> b" rul-generic-mode-syntax-table) +(modify-syntax-entry ?\n "> b" rul-generic-mode-syntax-table) - (modify-syntax-entry ?\r "> b" rul-generic-mode-syntax-table) - (modify-syntax-entry ?\n "> b" rul-generic-mode-syntax-table) - - (modify-syntax-entry ?/ ". 124b" rul-generic-mode-syntax-table) - (modify-syntax-entry ?* ". 23" rul-generic-mode-syntax-table) +(modify-syntax-entry ?/ ". 124b" rul-generic-mode-syntax-table) +(modify-syntax-entry ?* ". 23" rul-generic-mode-syntax-table) - ;; here manually instead - (defun generic-rul-mode-setup-function () - (make-local-variable 'parse-sexp-ignore-comments) - (make-local-variable 'comment-start) - (make-local-variable 'comment-start-skip) - (make-local-variable 'comment-end) - (setq imenu-generic-expression - '((nil "^function\\s-+\\([A-Za-z0-9_]+\\)" 1)) - parse-sexp-ignore-comments t - comment-end "*/" - comment-start "/*" -;; comment-end "" -;; comment-start "//" -;; comment-start-skip "" - ) -;; (set-syntax-table rul-generic-mode-syntax-table) - (setq font-lock-syntax-table rul-generic-mode-syntax-table) - ) +;; here manually instead +(defun generic-rul-mode-setup-function () + (make-local-variable 'parse-sexp-ignore-comments) + (make-local-variable 'comment-start) + (make-local-variable 'comment-start-skip) + (make-local-variable 'comment-end) + (setq imenu-generic-expression + '((nil "^function\\s-+\\([A-Za-z0-9_]+\\)" 1)) + parse-sexp-ignore-comments t + comment-end "*/" + comment-start "/*" +;;; comment-end "" +;;; comment-start "//" +;;; comment-start-skip "" + ) + ;; (set-syntax-table rul-generic-mode-syntax-table) + (setq font-lock-syntax-table rul-generic-mode-syntax-table)) - ;; moved mode-definition behind defun-definition to be warning-free - 15.11.02/RSan - (define-generic-mode 'rul-generic-mode - ;; Using "/*" and "*/" doesn't seem to be working right - (list "//" '("/*" . "*/" )) - installshield-statement-keyword-list - (list - ;; preprocessor constructs - '("#[ \t]*include[ \t]+\\(<[^>\"\n]+>\\)" - 1 font-lock-string-face) - '("#[ \t]*\\(\\sw+\\)\\>[ \t]*\\(\\sw+\\)?" - (1 font-lock-reference-face) - (2 font-lock-variable-name-face nil t)) - ;; indirect string constants - '("\\(@[A-Za-z][A-Za-z0-9_]+\\)" 1 font-lock-builtin-face) - ;; gotos - '("[ \t]*\\(\\sw+:\\)" 1 font-lock-reference-face) - '("\\<\\(goto\\)\\>[ \t]*\\(\\sw+\\)?" - (1 font-lock-keyword-face) - (2 font-lock-reference-face nil t)) - ;; system variables - (generic-make-keywords-list - installshield-system-variables-list - 'font-lock-variable-name-face "[^_]" "[^_]") - ;; system functions - (generic-make-keywords-list - installshield-system-functions-list - 'font-lock-function-name-face "[^_]" "[^_]") - ;; type keywords - (generic-make-keywords-list - installshield-types-list - 'font-lock-type-face "[^_]" "[^_]") - ;; function argument constants - (generic-make-keywords-list - installshield-funarg-constants-list - 'font-lock-variable-name-face "[^_]" "[^_]") ; is this face the best choice? - ) - (list "\\.[rR][uU][lL]$") - (list 'generic-rul-mode-setup-function) - "Generic mode for InstallShield RUL files.") -) +;; moved mode-definition behind defun-definition to be warning-free - 15.11.02/RSan +(define-generic-mode rul-generic-mode + ;; Using "/*" and "*/" doesn't seem to be working right + '("//" ("/*" . "*/" )) + (eval-when-compile installshield-statement-keyword-list) + (eval-when-compile + (list + ;; preprocessor constructs + '("#[ \t]*include[ \t]+\\(<[^>\"\n]+>\\)" + 1 font-lock-string-face) + '("#[ \t]*\\(\\sw+\\)\\>[ \t]*\\(\\sw+\\)?" + (1 font-lock-reference-face) + (2 font-lock-variable-name-face nil t)) + ;; indirect string constants + '("\\(@[A-Za-z][A-Za-z0-9_]+\\)" 1 font-lock-builtin-face) + ;; gotos + '("[ \t]*\\(\\sw+:\\)" 1 font-lock-reference-face) + '("\\<\\(goto\\)\\>[ \t]*\\(\\sw+\\)?" + (1 font-lock-keyword-face) + (2 font-lock-reference-face nil t)) + ;; system variables + (generic-make-keywords-list + installshield-system-variables-list + 'font-lock-variable-name-face "[^_]" "[^_]") + ;; system functions + (generic-make-keywords-list + installshield-system-functions-list + 'font-lock-function-name-face "[^_]" "[^_]") + ;; type keywords + (generic-make-keywords-list + installshield-types-list + 'font-lock-type-face "[^_]" "[^_]") + ;; function argument constants + (generic-make-keywords-list + installshield-funarg-constants-list + 'font-lock-variable-name-face "[^_]" "[^_]"))) ; is this face the best choice? + '("\\.[rR][uU][lL]$") + '(generic-rul-mode-setup-function) + "Generic mode for InstallShield RUL files.") + (define-skeleton rul-if - "Insert an if statement." - "condition: " - "if(" str ") then" \n - > _ \n - ( "other condition, %s: " - > "elseif(" str ") then" \n - > \n) - > "else" \n - > \n - resume: - > "endif;" - ) + "Insert an if statement." + "condition: " + "if(" str ") then" \n + > _ \n + ( "other condition, %s: " + > "elseif(" str ") then" \n + > \n) + > "else" \n + > \n + resume: + > "endif;") (define-skeleton rul-function "Insert a function statement." "function: " "function " str " ()" \n ( "local variables, %s: " - > " " str ";" \n) + > " " str ";" \n) > "begin" \n > _ \n resume: - > "end;") - -) + > "end;")) ;; Additions by ACorreir@pervasive-sw.com (Alfred Correira) -(define-generic-mode 'mailrc-generic-mode - (list ?#) - (list - "alias" - "else" - "endif" - "group" - "if" - "ignore" - "set" - "source" - "unset" - ) +(define-generic-mode mailrc-generic-mode + '(?#) + '("alias" + "else" + "endif" + "group" + "if" + "ignore" + "set" + "source" + "unset") '(("^\\s-*\\(alias\\|group\\)\\s-+\\([-A-Za-z0-9_]+\\)\\s-+\\([^\n\r#]*\\)\\(#.*\\)?$" (2 font-lock-constant-face) (3 font-lock-variable-name-face)) ("^\\s-*\\(unset\\|set\\|ignore\\)\\s-+\\([-A-Za-z0-9_]+\\)=?\\([^\n\r#]*\\)\\(#.*\\)?$" (2 font-lock-constant-face) (3 font-lock-variable-name-face)) ("^\\s-*\\(source\\)\\s-+\\([^\n\r#]*\\)\\(#.*\\)?$" (2 font-lock-variable-name-face))) - (list "\\.mailrc\\'") + '("\\.mailrc\\'") nil "Mode for mailrc files.") ;; Inetd.conf -(and - (memq 'inetd-conf-generic-mode generic-extras-enable-list) +(when (memq 'inetd-conf-generic-mode generic-extras-enable-list) -(define-generic-mode 'inetd-conf-generic-mode - (list ?#) - (list - "stream" - "dgram" - "tcp" - "udp" - "wait" - "nowait" - "internal" - ) - '( - ("^\\([-A-Za-z0-9_]+\\)" - 1 'font-lock-type-face) - ) +(define-generic-mode inetd-conf-generic-mode + '(?#) + '("stream" + "dgram" + "tcp" + "udp" + "wait" + "nowait" + "internal") + '(("^\\([-A-Za-z0-9_]+\\)" 1 font-lock-type-face)) '("/etc/inetd.conf\\'") (list (function (lambda () (setq imenu-generic-expression - '((nil "^\\([-A-Za-z0-9_]+\\)" 1))) - ))) - ) -) + '((nil "^\\([-A-Za-z0-9_]+\\)" 1)))))))) ;; Services -(and - (memq 'etc-services-generic-mode generic-extras-enable-list) +(when (memq 'etc-services-generic-mode generic-extras-enable-list) -(define-generic-mode 'etc-services-generic-mode - (list ?#) - (list - "tcp" - "udp" - "ddp" - ) - '( - ("^\\([-A-Za-z0-9_]+\\)\\s-+\\([0-9]+\\)/" - (1 'font-lock-type-face) - (2 'font-lock-variable-name-face) - ) - ) +(define-generic-mode etc-services-generic-mode + '(?#) + '("tcp" + "udp" + "ddp") + '(("^\\([-A-Za-z0-9_]+\\)\\s-+\\([0-9]+\\)/" + (1 font-lock-type-face) + (2 font-lock-variable-name-face))) '("/etc/services\\'") (list (function (lambda () (setq imenu-generic-expression - '((nil "^\\([-A-Za-z0-9_]+\\)" 1))) - ))) - ) -) + '((nil "^\\([-A-Za-z0-9_]+\\)" 1)))))))) ;; Password and Group files -(and - (memq 'etc-passwd-generic-mode generic-extras-enable-list) +(when (memq 'etc-passwd-generic-mode generic-extras-enable-list) -(define-generic-mode 'etc-passwd-generic-mode +(define-generic-mode etc-passwd-generic-mode nil ;; No comment characters - (list "root") ;; Only one keyword - (list + '("root") ;; Only one keyword + (eval-when-compile (list - (concat - "^" - ;; User name -- Never blank! - "\\([^:]+\\)" - ":" - ;; Password, UID and GID - (mapconcat - 'identity - (make-list 3 "\\([^:]+\\)") + (list + (concat + "^" + ;; User name -- Never blank! + "\\([^:]+\\)" ":" - ) - ":" - ;; GECOS/Name -- might be blank - "\\([^:]*\\)" - ":" - ;; Home directory and shell - "\\([^:]+\\)" - ":?" - "\\([^:]*\\)" - "$" - ) - '(1 'font-lock-type-face) - '(5 'font-lock-variable-name-face) - '(6 'font-lock-constant-face) - '(7 'font-lock-warning-face) - ) - '("^\\([^:]+\\):\\([^:]*\\):\\([0-9]+\\):\\(.*\\)$" - (1 'font-lock-type-face) - (4 'font-lock-variable-name-face) - ) - ) + ;; Password, UID and GID + (mapconcat + 'identity + (make-list 3 "\\([^:]+\\)") + ":") + ":" + ;; GECOS/Name -- might be blank + "\\([^:]*\\)" + ":" + ;; Home directory and shell + "\\([^:]+\\)" + ":?" + "\\([^:]*\\)" + "$") + '(1 font-lock-type-face) + '(5 font-lock-variable-name-face) + '(6 font-lock-constant-face) + '(7 font-lock-warning-face)) + '("^\\([^:]+\\):\\([^:]*\\):\\([0-9]+\\):\\(.*\\)$" + (1 font-lock-type-face) + (4 font-lock-variable-name-face)))) '("/etc/passwd\\'" "/etc/group\\'") (list (function (lambda () (setq imenu-generic-expression - '((nil "^\\([-A-Za-z0-9_]+\\):" 1))) - ))) - ) -) + '((nil "^\\([-A-Za-z0-9_]+\\):" 1)))))))) ;; Fstab -(and - (memq 'etc-fstab-generic-mode generic-extras-enable-list) +(when (memq 'etc-fstab-generic-mode generic-extras-enable-list) -(define-generic-mode 'etc-fstab-generic-mode - (list ?#) - (list - "ext2" - "fd" - "iso9660" - "nfs" - "proc" - "swap" - "ufs" - ) - '( - ("^\\([/-A-Za-z0-9_]+\\)\\s-+\\([/-A-Za-z0-9_]+\\)" - (1 'font-lock-type-face) - (2 'font-lock-variable-name-face) - ) - ) +(define-generic-mode etc-fstab-generic-mode + '(?#) + '("adfs" + "affs" + "autofs" + "coda" + "coherent" + "cramfs" + "devpts" + "efs" + "ext2" + "ext3" + "hfs" + "hpfs" + "iso9660" + "jfs" + "minix" + "msdos" + "ncpfs" + "nfs" + "ntfs" + "proc" + "qnx4" + "reiserfs" + "romfs" + "smbfs" + "sysv" + "tmpfs" + "udf" + "ufs" + "umsdos" + "vfat" + "xenix" + "xfs" + "swap" + "auto" + "ignore") + '(("^\\([/-A-Za-z0-9_]+\\)\\s-+\\([/-A-Za-z0-9_]+\\)" + (1 font-lock-type-face) + (2 font-lock-variable-name-face))) '("/etc/[v]*fstab\\'") (list (function (lambda () (setq imenu-generic-expression - '((nil "^\\([/-A-Za-z0-9_]+\\)\\s-+" 1))) - ))) - ) -) + '((nil "^\\([/-A-Za-z0-9_]+\\)\\s-+" 1)))))))) ;; From Jacques Duthen <jacques.duthen@sncf.fr> (defvar show-tabs-generic-mode-font-lock-defaults-1 - '( ;; trailing spaces must come before... - ("[ \t]+$" . 'show-tabs-space-face) - ;; ...embedded tabs - ("[^\n\t]\\(\t+\\)" (1 'show-tabs-tab-face)))) + '(;; trailing spaces must come before... + ("[ \t]+$" . show-tabs-space-face) + ;; ...embedded tabs + ("[^\n\t]\\(\t+\\)" (1 show-tabs-tab-face)))) (defvar show-tabs-generic-mode-font-lock-defaults-2 - '( ;; trailing spaces must come before... - ("[ \t]+$" . 'show-tabs-space-face) - ;; ...tabs - ("\t+" . 'show-tabs-tab-face))) + '(;; trailing spaces must come before... + ("[ \t]+$" . show-tabs-space-face) + ;; ...tabs + ("\t+" . show-tabs-tab-face))) (defface show-tabs-tab-face '((((class grayscale) (background light)) (:foreground "LightGray" :weight bold)) @@ -1692,12 +1599,12 @@ "Font Lock mode face used to highlight spaces." :group 'show-tabs) -(define-generic-mode 'show-tabs-generic-mode - () ;; no comment char - () ;; no keywords - show-tabs-generic-mode-font-lock-defaults-1 - () ;; no auto-mode-alist - ;; (list 'show-tabs-generic-mode-hook-fun) +(define-generic-mode show-tabs-generic-mode + nil ;; no comment char + nil ;; no keywords + show-tabs-generic-mode-font-lock-defaults-1 + nil ;; no auto-mode-alist + ;; '(show-tabs-generic-mode-hook-fun) nil "Generic mode to show tabs and trailing spaces") @@ -1705,41 +1612,35 @@ ;; DNS modes ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -(define-generic-mode 'named-boot-generic-mode - ;;List of comment characters - (list ?\;) - ;;List of keywords - (list "cache" "primary" "secondary" "forwarders" "limit" "options" - "directory" "check-names") - ;;List of additional font-lock-expressions - (list - (list "\\([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+\\)" 1 'font-lock-constant-face) - (list "^directory\\s-+\\(.*\\)" 1 'font-lock-variable-name-face) - (list "^\\(primary\\|cache\\)\\s-+\\([.A-Za-z]+\\)\\s-+\\(.*\\)" - (list 2 'font-lock-variable-name-face) - (list 3 'font-lock-constant-face)) - ) - ;;List of additional automode-alist expressions - (list "/etc/named.boot\\'") - ;;List of set up functions to call +(define-generic-mode named-boot-generic-mode + ;; List of comment characters + '(?\;) + ;; List of keywords + '("cache" "primary" "secondary" "forwarders" "limit" "options" + "directory" "check-names") + ;; List of additional font-lock-expressions + '(("\\([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+\\)" 1 font-lock-constant-face) + ("^directory\\s-+\\(.*\\)" 1 font-lock-variable-name-face) + ("^\\(primary\\|cache\\)\\s-+\\([.A-Za-z]+\\)\\s-+\\(.*\\)" + (2 font-lock-variable-name-face) + (3 font-lock-constant-face))) + ;; List of additional automode-alist expressions + '("/etc/named.boot\\'") + ;; List of set up functions to call + nil) + +(define-generic-mode named-database-generic-mode + ;; List of comment characters + '(?\;) + ;; List of keywords + '("IN" "NS" "CNAME" "SOA" "PTR" "MX" "A") + ;; List of additional font-lock-expressions + '(("\\([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+\\)" 1 font-lock-constant-face) + ("^\\([.A-Za-z0-9]+\\)" 1 font-lock-variable-name-face)) + ;; List of additional automode-alist expressions nil - ) - -(define-generic-mode 'named-database-generic-mode - ;;List of comment characters - (list ?\;) - ;;List of keywords - (list "IN" "NS" "CNAME" "SOA" "PTR" "MX" "A") - ;;List of additional font-lock-expressions - (list - (list "\\([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+\\)" 1 'font-lock-constant-face) - (list "^\\([.A-Za-z0-9]+\\)" 1 'font-lock-variable-name-face) - ) - ;;List of additional automode-alist expressions - nil - ;;List of set up functions to call - nil - ) + ;; List of set up functions to call + nil) (defvar named-database-time-string "%Y%m%d%H" "Timestring for named serial numbers.") @@ -1747,166 +1648,147 @@ (defun named-database-print-serial () "Print a serial number based on the current date." (interactive) - (insert (format-time-string named-database-time-string (current-time))) - ) + (insert (format-time-string named-database-time-string (current-time)))) -(define-generic-mode 'resolve-conf-generic-mode - ;;List of comment characters - (list ?#) - ;;List of keywords - (list "nameserver" "domain" "search" "sortlist" "options") - ;;List of additional font-lock-expressions +(define-generic-mode resolve-conf-generic-mode + ;; List of comment characters + '(?#) + ;; List of keywords + '("nameserver" "domain" "search" "sortlist" "options") + ;; List of additional font-lock-expressions nil - ;;List of additional automode-alist expressions - (list "/etc/resolv[e]?.conf\\'") - ;;List of set up functions to call - nil - ) + ;; List of additional automode-alist expressions + '("/etc/resolv[e]?.conf\\'") + ;; List of set up functions to call + nil) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Modes for spice and common electrical engineering circuit netlist formats ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -(define-generic-mode 'spice-generic-mode +(define-generic-mode spice-generic-mode nil - (list - "and" - "cccs" - "ccvs" - "delay" - "nand" - "nor" - "npwl" - "or" - "par" - "ppwl" - "pwl" - "vccap" - "vccs" - "vcr" - "vcvs" - ) - '( - ("^\\s-*\\([*].*\\)" 1 'font-lock-comment-face) - (" \\(\\$ .*\\)$" 1 'font-lock-comment-face) - ("^\\(\\$ .*\\)$" 1 'font-lock-comment-face) - ("\\([*].*\\)" 1 'font-lock-comment-face) - ("^\\([+]\\)" 1 'font-lock-string-face) - ("^\\s-*\\([.]\\w+\\>\\)" 1 'font-lock-keyword-face) - ("\\(\\([.]\\|_\\|\\w\\)+\\)\\s-*=" 1 'font-lock-variable-name-face) - ("\\('[^']+'\\)" 1 'font-lock-string-face) - ("\\(\"[^\"]+\"\\)" 1 'font-lock-string-face) - ) - (list "\\.[sS][pP]\\'" - "\\.[sS][pP][iI]\\'" - "\\.[sS][pP][iI][cC][eE]\\'" - "\\.[iI][nN][cC]\\'") + '("and" + "cccs" + "ccvs" + "delay" + "nand" + "nor" + "npwl" + "or" + "par" + "ppwl" + "pwl" + "vccap" + "vccs" + "vcr" + "vcvs") + '(("^\\s-*\\([*].*\\)" 1 font-lock-comment-face) + (" \\(\\$ .*\\)$" 1 font-lock-comment-face) + ("^\\(\\$ .*\\)$" 1 font-lock-comment-face) + ("\\([*].*\\)" 1 font-lock-comment-face) + ("^\\([+]\\)" 1 font-lock-string-face) + ("^\\s-*\\([.]\\w+\\>\\)" 1 font-lock-keyword-face) + ("\\(\\([.]\\|_\\|\\w\\)+\\)\\s-*=" 1 font-lock-variable-name-face) + ("\\('[^']+'\\)" 1 font-lock-string-face) + ("\\(\"[^\"]+\"\\)" 1 font-lock-string-face)) + '("\\.[sS][pP]\\'" + "\\.[sS][pP][iI]\\'" + "\\.[sS][pP][iI][cC][eE]\\'" + "\\.[iI][nN][cC]\\'") (list 'generic-bracket-support ;; Make keywords case-insensitive (function (lambda() - (setq font-lock-defaults (list 'generic-font-lock-defaults nil t)))) - ) - "Generic mode for SPICE circuit netlist files." - ) + (setq font-lock-defaults '(generic-font-lock-defaults nil t))))) + "Generic mode for SPICE circuit netlist files.") -(define-generic-mode 'ibis-generic-mode - (list ?|) +(define-generic-mode ibis-generic-mode + '(?|) nil - '( - ("[[]\\([^]]*\\)[]]" 1 'font-lock-keyword-face) - ("\\(\\(_\\|\\w\\)+\\)\\s-*=" 1 'font-lock-variable-name-face) - ) - (list "\\.[iI][bB][sS]\\'") - (list 'generic-bracket-support) - "Generic mode for IBIS circuit netlist files." - ) + '(("[[]\\([^]]*\\)[]]" 1 font-lock-keyword-face) + ("\\(\\(_\\|\\w\\)+\\)\\s-*=" 1 font-lock-variable-name-face)) + '("\\.[iI][bB][sS]\\'") + '(generic-bracket-support) + "Generic mode for IBIS circuit netlist files.") -(define-generic-mode 'astap-generic-mode +(define-generic-mode astap-generic-mode nil - (list - "analyze" - "description" - "elements" - "execution" - "features" - "functions" - "ground" - "model" - "outputs" - "print" - "run" - "controls" - "table" - ) - '( - ("^\\s-*\\([*].*\\)" 1 'font-lock-comment-face) - (";\\s-*\\([*].*\\)" 1 'font-lock-comment-face) - ("^\\s-*\\([.]\\w+\\>\\)" 1 'font-lock-keyword-face) - ("\\('[^']+'\\)" 1 'font-lock-string-face) - ("\\(\"[^\"]+\"\\)" 1 'font-lock-string-face) - ("[(,]\\s-*\\(\\([.]\\|_\\|\\w\\)+\\)\\s-*=" 1 'font-lock-variable-name-face) - ) - (list "\\.[aA][pP]\\'" - "\\.[aA][sS][xX]\\'" - "\\.[aA][sS][tT][aA][pP]\\'" - "\\.[pP][sS][pP]\\'" - "\\.[dD][eE][cC][kK]\\'" - "\\.[gG][oO][dD][aA][tT][aA]") + '("analyze" + "description" + "elements" + "execution" + "features" + "functions" + "ground" + "model" + "outputs" + "print" + "run" + "controls" + "table") + '(("^\\s-*\\([*].*\\)" 1 font-lock-comment-face) + (";\\s-*\\([*].*\\)" 1 font-lock-comment-face) + ("^\\s-*\\([.]\\w+\\>\\)" 1 font-lock-keyword-face) + ("\\('[^']+'\\)" 1 font-lock-string-face) + ("\\(\"[^\"]+\"\\)" 1 font-lock-string-face) + ("[(,]\\s-*\\(\\([.]\\|_\\|\\w\\)+\\)\\s-*=" 1 font-lock-variable-name-face)) + '("\\.[aA][pP]\\'" + "\\.[aA][sS][xX]\\'" + "\\.[aA][sS][tT][aA][pP]\\'" + "\\.[pP][sS][pP]\\'" + "\\.[dD][eE][cC][kK]\\'" + "\\.[gG][oO][dD][aA][tT][aA]") (list 'generic-bracket-support ;; Make keywords case-insensitive (function (lambda() - (setq font-lock-defaults (list 'generic-font-lock-defaults nil t)))) - ) - "Generic mode for ASTAP circuit netlist files." - ) + (setq font-lock-defaults '(generic-font-lock-defaults nil t))))) + "Generic mode for ASTAP circuit netlist files.") -(define-generic-mode 'etc-modules-conf-generic-mode - ;;List of comment characters - (list ?#) - ;;List of keywords - (list - "above" - "alias" - "below" - "define" - "depfile" - "else" - "elseif" - "endif" - "if" - "include" - "insmod_opt" - "install" - "keep" - "options" - "path" - "generic_stringfile" - "pcimapfile" - "isapnpmapfile" - "usbmapfile" - "parportmapfile" - "ieee1394mapfile" - "pnpbiosmapfile" - "probe" - "probeall" - "prune" - "post-install" - "post-remove" - "pre-install" - "pre-remove" - "remove" - "persistdir") - ;;List of additional font-lock-expressions +(define-generic-mode etc-modules-conf-generic-mode + ;; List of comment characters + '(?#) + ;; List of keywords + '("above" + "alias" + "below" + "define" + "depfile" + "else" + "elseif" + "endif" + "if" + "include" + "insmod_opt" + "install" + "keep" + "options" + "path" + "generic_stringfile" + "pcimapfile" + "isapnpmapfile" + "usbmapfile" + "parportmapfile" + "ieee1394mapfile" + "pnpbiosmapfile" + "probe" + "probeall" + "prune" + "post-install" + "post-remove" + "pre-install" + "pre-remove" + "remove" + "persistdir") + ;; List of additional font-lock-expressions nil - ;;List of additional automode-alist expressions - (list "/etc/modules.conf" "/etc/conf.modules") - ;;List of set up functions to call - nil - ) + ;; List of additional automode-alist expressions + '("/etc/modules.conf" "/etc/conf.modules") + ;; List of set up functions to call + nil) (provide 'generic-x)
--- a/lisp/generic.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/generic.el Thu Mar 24 18:41:26 2005 +0000 @@ -34,27 +34,31 @@ ;; Generic-mode is a meta-mode which can be used to define small modes ;; which provide basic comment and font-lock support. These modes are -;; intended for the many configuration files and such which are too small -;; for a "real" mode, but still have a regular syntax, comment characters -;; and the like. +;; intended for the many configuration files and such which are too +;; small for a "real" mode, but still have a regular syntax, comment +;; characters and the like. ;; ;; Each generic mode can define the following: ;; ;; * List of comment-characters. The entries in this list should be ;; either a character, a one or two character string or a cons pair. -;; If the entry is a character or a one-character string -;; LIMITATIONS: Emacs does not support comment strings of more than +;; If the entry is a character or a string, it is added to the +;; mode's syntax table with `comment-start' syntax. If the entry is +;; a cons pair, the elements of the pair are considered to be +;; `comment-start' and `comment-end' respectively. (The latter +;; should be nil if you want comments to end at end of line.) +;; LIMITATIONS: Emacs does not support comment strings of more than ;; two characters in length. ;; ;; * List of keywords to font-lock. Each keyword should be a string. -;; If you have additional keywords which should be highlighted in a face -;; different from `font-lock-keyword-face', you can use the convenience -;; function `generic-make-keywords-list' (which see), and add the -;; result to the following list: +;; If you have additional keywords which should be highlighted in a +;; face different from `font-lock-keyword-face', you can use the +;; convenience function `generic-make-keywords-list' (which see), +;; and add the result to the following list: ;; ;; * Additional expressions to font-lock. This should be a list of -;; expressions, each of which should be of the same form -;; as those in `font-lock-keywords'. +;; expressions, each of which should be of the same form as those in +;; `font-lock-keywords'. ;; ;; * List of regular expressions to be placed in auto-mode-alist. ;; @@ -79,35 +83,35 @@ ;; Use the `define-generic-mode' function to define new modes. ;; For example: ;; -;; (require 'generic) ;; (define-generic-mode 'foo-generic-mode -;; (list ?% ) -;; (list "keyword") -;; nil -;; (list "\\.FOO\\'") -;; (list 'foo-setup-function)) +;; (list ?%) +;; (list "keyword") +;; nil +;; (list "\\.FOO\\'") +;; (list 'foo-setup-function)) ;; ;; defines a new generic-mode `foo-generic-mode', which has '%' as a -;; comment character, and "keyword" as a keyword. When files which end in -;; '.FOO' are loaded, Emacs will go into foo-generic-mode and call -;; foo-setup-function. You can also use the function `foo-generic-mode' -;; (which is interactive) to put a buffer into foo-generic-mode. +;; comment character, and "keyword" as a keyword. When files which +;; end in '.FOO' are loaded, Emacs will go into foo-generic-mode and +;; call foo-setup-function. You can also use the function +;; `foo-generic-mode' (which is interactive) to put a buffer into +;; foo-generic-mode. ;; ;; AUTOMATICALLY ENTERING GENERIC MODE: ;; -;; Generic-mode provides a hook which automatically puts a -;; file into default-generic-mode if the first few lines of a file in -;; fundamental mode start with a hash comment character. To disable +;; Generic-mode provides a hook which automatically puts a file into +;; default-generic-mode if the first few lines of a file in +;; fundamental mode start with a hash comment character. To disable ;; this functionality, set the variable `generic-use-find-file-hook' -;; to nil BEFORE loading generic-mode. See the variables -;; `generic-lines-to-scan' and `generic-find-file-regexp' for customization -;; options. +;; to nil BEFORE loading generic-mode. See the variables +;; `generic-lines-to-scan' and `generic-find-file-regexp' for +;; customization options. ;; ;; GOTCHAS: ;; -;; Be careful that your font-lock definitions are correct. Getting them -;; wrong can cause emacs to continually attempt to fontify! This problem -;; is not specific to generic-mode. +;; Be careful that your font-lock definitions are correct. Getting +;; them wrong can cause Emacs to continually attempt to fontify! This +;; problem is not specific to generic-mode. ;; ;; Credit for suggestions, brainstorming, help with debugging: @@ -117,9 +121,6 @@ ;; ;;; Code: -(eval-when-compile - (require 'cl)) - ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Internal Variables ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; @@ -128,6 +129,7 @@ "Global defaults for font-lock in a generic mode.") (make-variable-buffer-local 'generic-font-lock-defaults) +;;;###autoload (defvar generic-mode-list nil "A list of mode names for `generic-mode'. Do not add entries to this list directly; use `define-generic-mode' @@ -143,139 +145,140 @@ :group 'extensions) (defcustom generic-use-find-file-hook t - "*If non-nil, add a hook to enter default-generic-mode automatically. -This is done if the first few lines of a file in fundamental mode start -with a hash comment character." + "*If non-nil, add a hook to enter `default-generic-mode' automatically. +This is done if the first few lines of a file in fundamental mode +start with a hash comment character." :group 'generic - :type 'boolean - ) + :type 'boolean) (defcustom generic-lines-to-scan 3 "*Number of lines that `generic-mode-find-file-hook' looks at. -Relevant when deciding whether to enter `generic-mode' automatically. +Relevant when deciding whether to enter Default-Generic mode automatically. This variable should be set to a small positive number." :group 'generic - :type 'integer - ) + :type 'integer) (defcustom generic-find-file-regexp "^#" "*Regular expression used by `generic-mode-find-file-hook'. -Files in fundamental mode whose first few lines contain a match for -this regexp, should be put into `default-generic-mode' instead. -The number of lines tested for the matches is specified by the value -of the variable `generic-lines-to-scan', which see." +Files in fundamental mode whose first few lines contain a match +for this regexp, should be put into Default-Generic mode instead. +The number of lines tested for the matches is specified by the +value of the variable `generic-lines-to-scan', which see." :group 'generic - :type 'regexp - ) + :type 'regexp) (defcustom generic-ignore-files-regexp "[Tt][Aa][Gg][Ss]\\'" "*Regular expression used by `generic-mode-find-file-hook'. Files whose names match this regular expression should not be put -into `default-generic-mode', even if they have lines which match the -regexp in `generic-find-file-regexp'. If the value is nil, +into Default-Generic mode, even if they have lines which match +the regexp in `generic-find-file-regexp'. If the value is nil, `generic-mode-find-file-hook' does not check the file names." :group 'generic - :type '(choice (const :tag "Don't check file names" nil) regexp) - ) + :type '(choice (const :tag "Don't check file names" nil) regexp)) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Functions ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;###autoload -(defun define-generic-mode (name comment-list keyword-list font-lock-list - auto-mode-list function-list - &optional description) - "Create a new generic mode with NAME. +(defmacro define-generic-mode (mode comment-list keyword-list + font-lock-list auto-mode-list + function-list &optional docstring) + "Create a new generic mode MODE. -NAME should be a symbol; its string representation is used as the function -name. If DESCRIPTION is provided, it is used as the docstring for the new -function. +MODE is the name of the command for the generic mode; it need not +be quoted. The optional DOCSTRING is the documentation for the +mode command. If you do not supply it, a default documentation +string will be used instead. -COMMENT-LIST is a list, whose entries are either a single character, -a one or two character string or a cons pair. If the entry is a character -or a one-character string, it is added to the mode's syntax table with -`comment-start' syntax. If the entry is a cons pair, the elements of the -pair are considered to be `comment-start' and `comment-end' respectively. -\(The latter should be nil if you want comments to end at end of line.) -Note that Emacs has limitations regarding comment characters. +COMMENT-LIST is a list, whose entries are either a single +character, a one or two character string or a cons pair. If the +entry is a character or a string, it is added to the mode's +syntax table with `comment-start' syntax. If the entry is a cons +pair, the elements of the pair are considered to be +`comment-start' and `comment-end' respectively. (The latter +should be nil if you want comments to end at end of line.) Note +that Emacs has limitations regarding comment characters. -KEYWORD-LIST is a list of keywords to highlight with `font-lock-keyword-face'. -Each keyword should be a string. +KEYWORD-LIST is a list of keywords to highlight with +`font-lock-keyword-face'. Each keyword should be a string. -FONT-LOCK-LIST is a list of additional expressions to highlight. Each entry -in the list should have the same form as an entry in `font-lock-keywords'. +FONT-LOCK-LIST is a list of additional expressions to highlight. +Each entry in the list should have the same form as an entry in +`font-lock-keywords'. -AUTO-MODE-LIST is a list of regular expressions to add to `auto-mode-alist'. -These regexps are added to `auto-mode-alist' as soon as `define-generic-mode' -is called; any old regexps with the same name are removed. +AUTO-MODE-LIST is a list of regular expressions to add to +`auto-mode-alist'. These regexps are added to `auto-mode-alist' +as soon as `define-generic-mode' is called. -FUNCTION-LIST is a list of functions to call to do some additional setup. +FUNCTION-LIST is a list of functions to call to do some +additional setup. See the file generic-x.el for some examples of `define-generic-mode'." - - ;; Add a new entry - (add-to-list 'generic-mode-list (symbol-name name)) + (let* ((name-unquoted (if (eq (car-safe mode) 'quote) ; Backward compatibility. + (eval mode) + mode)) + (name-string (symbol-name name-unquoted)) + (pretty-name (capitalize (replace-regexp-in-string + "-mode\\'" "" name-string)))) - ;; Add it to auto-mode-alist - (dolist (re auto-mode-list) - (add-to-list 'auto-mode-alist (cons re name))) + `(progn + ;; Add a new entry. + (add-to-list 'generic-mode-list ,name-string) + + ;; Add it to auto-mode-alist + (dolist (re ,auto-mode-list) + (add-to-list 'auto-mode-alist (cons re ',name-unquoted))) - ;; Define a function for it using `defalias' (not `fset') to make - ;; the mode appear on load-history. - (defalias name - `(lambda nil - ,(or description (concat "Generic mode for type " (symbol-name name))) - (interactive) - (generic-mode-internal ',name ',comment-list ',keyword-list - ',font-lock-list ',function-list))) - ) + (defun ,name-unquoted () + ,(or docstring + (concat pretty-name " mode.\n" + "This a generic mode defined with `define-generic-mode'.")) + (interactive) + (generic-mode-internal ',name-unquoted ,comment-list ,keyword-list + ,font-lock-list ,function-list))))) +;;;###autoload (defun generic-mode-internal (mode comments keywords font-lock-list funs) - "Go into the generic-mode MODE." - (let* ((generic-mode-hooks (intern (concat (symbol-name mode) "-hook"))) - (modename (symbol-name mode)) - (name (if (string-match "-mode\\'" modename) - (substring modename 0 (match-beginning 0)) - modename)) - ) + "Go into the generic mode MODE." + (let* ((modename (symbol-name mode)) + (generic-mode-hooks (intern (concat modename "-hook"))) + (pretty-name (capitalize (replace-regexp-in-string + "-mode\\'" "" modename)))) - ;; Put this after the point where we read generic-mode-name! (kill-all-local-variables) - (setq - major-mode mode - mode-name (capitalize name) - ) + (setq major-mode mode + mode-name pretty-name) - (generic-mode-set-comments comments) + (generic-mode-set-comments comments) ;; Font-lock functionality ;; Font-lock-defaults are always set even if there are no keywords ;; or font-lock expressions, so comments can be highlighted. (setq generic-font-lock-defaults nil) - (generic-mode-set-font-lock keywords font-lock-list) - (make-local-variable 'font-lock-defaults) + (generic-mode-set-font-lock keywords font-lock-list) + (make-local-variable 'font-lock-defaults) (setq font-lock-defaults (list 'generic-font-lock-defaults nil)) ;; Call a list of functions (mapcar 'funcall funs) - (run-hooks generic-mode-hooks) - ) - ) + (run-hooks generic-mode-hooks))) ;;;###autoload -(defun generic-mode (type) - "Basic comment and font-lock functionality for `generic' files. -\(Files which are too small to warrant their own mode, but have -comment characters, keywords, and the like.) +(defun generic-mode (mode) + "Enter generic mode MODE. + +Generic modes provide basic comment and font-lock functionality +for \"generic\" files. (Files which are too small to warrant their +own mode, but have comment characters, keywords, and the like.) To define a generic-mode, use the function `define-generic-mode'. Some generic modes are defined in `generic-x.el'." (interactive - (list (completing-read "Generic Type: " generic-mode-list nil t))) - (funcall (intern type))) + (list (completing-read "Generic mode: " generic-mode-list nil t))) + (funcall (intern mode))) ;;; Comment Functionality (defun generic-mode-set-comments (comment-list) @@ -283,16 +286,16 @@ (let ((st (make-syntax-table)) (chars nil) (comstyles)) - (make-local-variable 'comment-start) - (make-local-variable 'comment-start-skip) - (make-local-variable 'comment-end) + (make-local-variable 'comment-start) + (make-local-variable 'comment-start-skip) + (make-local-variable 'comment-end) ;; Go through all the comments (dolist (start comment-list) - (let ((end nil) (comstyle "")) + (let (end (comstyle "")) ;; Normalize (when (consp start) - (setq end (or (cdr start) end)) + (setq end (cdr start)) (setq start (car start))) (when (characterp start) (setq start (char-to-string start))) (cond @@ -360,18 +363,20 @@ imenu-case-fold-search t)) ;; This generic mode is always defined -(define-generic-mode 'default-generic-mode (list ?#) nil nil nil nil) +(define-generic-mode default-generic-mode (list ?#) nil nil nil nil) ;; A more general solution would allow us to enter generic-mode for ;; *any* comment character, but would require us to synthesize a new ;; generic-mode on the fly. I think this gives us most of what we ;; want. (defun generic-mode-find-file-hook () - "Hook function to enter `default-generic-mode' automatically. -Done if the first few lines of a file in `fundamental-mode' start with -a match for the regexp in `generic-find-file-regexp', unless the -file's name matches the regexp which is the value of the variable -`generic-ignore-files-regexp'. + "Hook function to enter Default-Generic mode automatically. + +Done if the first few lines of a file in Fundamental mode start +with a match for the regexp in `generic-find-file-regexp', unless +the file's name matches the regexp which is the value of the +variable `generic-ignore-files-regexp'. + This hook will be installed if the variable `generic-use-find-file-hook' is non-nil. The variable `generic-lines-to-scan' determines the number of lines to look at." @@ -390,8 +395,8 @@ (default-generic-mode))))) (defun generic-mode-ini-file-find-file-hook () - "Hook function to enter default-generic-mode automatically for INI files. -Done if the first few lines of a file in `fundamental-mode' look like an + "Hook function to enter Default-Generic mode automatically for INI files. +Done if the first few lines of a file in Fundamental mode look like an INI file. This hook is NOT installed by default." (and (eq major-mode 'fundamental-mode) (save-excursion @@ -402,6 +407,7 @@ (and generic-use-find-file-hook (add-hook 'find-file-hooks 'generic-mode-find-file-hook)) +;;;###autoload (defun generic-make-keywords-list (keywords-list face &optional prefix suffix) "Return a regular expression matching the specified KEYWORDS-LIST. The regexp is highlighted with FACE."
--- a/lisp/gnus/ChangeLog Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/gnus/ChangeLog Thu Mar 24 18:41:26 2005 +0000 @@ -1,3 +1,9 @@ +2005-03-22 Stefan Monnier <monnier@iro.umontreal.ca> + + * gnus-start.el (gnus-display-time-event-handler): + Check display-time-timer at runtime rather than only at load time + in case display-time-mode is turned off in the mean time. + 2005-03-16 Reiner Steib <Reiner.Steib@gmx.de> * nnimap.el (nnimap-open-connection): Print which authinfo file is @@ -11,8 +17,8 @@ 2005-03-15 Reiner Steib <Reiner.Steib@gmx.de> - * nnmaildir.el (nnmaildir-request-accept-article): Use - `nnheader-cancel-timer' for compatibility with current XEmacs. + * nnmaildir.el (nnmaildir-request-accept-article): + Use `nnheader-cancel-timer' for compatibility with current XEmacs. 2005-03-13 Steve Youngs <steve@sxemacs.org> @@ -26,12 +32,12 @@ for `with-timeout'. * mail-source.el: Require timer-funcs at compile time when in - XEmacs for `run-with-idle-timer'. + XEmacs for `run-with-idle-timer'. * gnus-async.el: Ditto. * dgnushack.el: No need to ignore `run-with-idle-timer', XEmacs - has this function now. + has this function now. 2005-03-16 Lute Kamstra <lute@gnu.org> @@ -43,8 +49,7 @@ 2005-03-10 Arne J,Ax(Brgensen <arne@arnested.dk> (tiny change) - * nnimap.el (nnimap-retrieve-headers-from-server): Fix off-by-one - flaw. + * nnimap.el (nnimap-retrieve-headers-from-server): Fix off-by-one flaw. 2005-03-08 Bjorn Solberg <bjorn_ding@hekneby.org> (tiny change)
--- a/lisp/gnus/ChangeLog.2 Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/gnus/ChangeLog.2 Thu Mar 24 18:41:26 2005 +0000 @@ -2916,7 +2916,7 @@ * spam-report.el (spam-report-gmane): gnus-summary-article-number is not necessary, just use the function parameter -2003-04-29 Karl Pflysterer <sigurd@12move.de> +2003-04-29 Karl Pfl,Ad(Bsterer <sigurd@12move.de> * spam-stat.el (spam-stat-save): No longer font-locks the file when saving
--- a/lisp/gnus/gnus-start.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/gnus/gnus-start.el Thu Mar 24 18:41:26 2005 +0000 @@ -1,5 +1,5 @@ ;;; gnus-start.el --- startup functions for Gnus -;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 +;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 ;; Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -3085,12 +3085,10 @@ (file-name-as-directory (expand-file-name gnus-default-directory)) default-directory))) -(eval-and-compile -(defalias 'gnus-display-time-event-handler - (if (gnus-boundp 'display-time-timer) - 'display-time-event-handler - (lambda () "Does nothing as `display-time-timer' is not bound. -Would otherwise be an alias for `display-time-event-handler'." nil)))) +(defun gnus-display-time-event-handler () + (if (and (fboundp 'display-time-event-handler) + (gnus-boundp 'display-time-timer)) + (display-time-event-handler))) ;;;###autoload (defun gnus-fixup-nnimap-unread-after-getting-new-news () @@ -3109,7 +3107,7 @@ (provide 'gnus-start) -;;; arch-tag: f4584a22-b7b7-4853-abfc-a637329af5d2 +;; arch-tag: f4584a22-b7b7-4853-abfc-a637329af5d2 ;;; gnus-start.el ends here
--- a/lisp/help.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/help.el Thu Mar 24 18:41:26 2005 +0000 @@ -486,6 +486,7 @@ (let ((func (indirect-function definition)) (defs nil) (standard-output (if insert (current-buffer) t))) + ;; In DEFS, find all symbols that are aliases for DEFINITION. (mapatoms (lambda (symbol) (and (fboundp symbol) (not (eq symbol definition)) @@ -493,27 +494,37 @@ (indirect-function symbol) (error symbol))) (push symbol defs)))) - (princ (mapconcat - #'(lambda (symbol) - (let* ((remapped (command-remapping symbol)) - (keys (where-is-internal - symbol overriding-local-map nil nil remapped)) - (keys (mapconcat 'key-description keys ", "))) - (if insert - (if (> (length keys) 0) - (if remapped - (format "%s (%s) (remapped from %s)" - keys remapped symbol) - (format "%s (%s)" keys symbol)) - (format "M-x %s RET" symbol)) - (if (> (length keys) 0) - (if remapped - (format "%s is remapped to %s which is on %s" - definition symbol keys) - (format "%s is on %s" symbol keys)) - (format "%s is not on any key" symbol))))) - (cons definition defs) - ";\nand "))) + ;; Look at all the symbols--first DEFINITION, + ;; then its aliases. + (dolist (symbol (cons definition defs)) + (let* ((remapped (command-remapping symbol)) + (keys (where-is-internal + symbol overriding-local-map nil nil remapped)) + (keys (mapconcat 'key-description keys ", ")) + string) + (setq string + (if insert + (if (> (length keys) 0) + (if remapped + (format "%s (%s) (remapped from %s)" + keys remapped symbol) + (format "%s (%s)" keys symbol)) + (format "M-x %s RET" symbol)) + (if (> (length keys) 0) + (if remapped + (format "%s is remapped to %s which is on %s" + definition symbol keys) + (format "%s is on %s" symbol keys)) + ;; If this is the command the user asked about, + ;; and it is not on any key, say so. + ;; For other symbols, its aliases, say nothing + ;; about them unless they are on keys. + (if (eq symbol definition) + (format "%s is not on any key" symbol))))) + (when string + (unless (eq symbol definition) + (princ ";\n its alias ")) + (princ string))))) nil) (defun string-key-binding (key)
--- a/lisp/icomplete.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/icomplete.el Thu Mar 24 18:41:26 2005 +0000 @@ -1,7 +1,7 @@ ;;; icomplete.el --- minibuffer completion incremental feedback -;; Copyright (C) 1992, 1993, 1994, 1997, 1999, 2001 -;;; Free Software Foundation, Inc. +;; Copyright (C) 1992, 1993, 1994, 1997, 1999, 2001, 2005 +;; Free Software Foundation, Inc. ;; Author: Ken Manheimer <klm@i.am> ;; Maintainer: Ken Manheimer <klm@i.am> @@ -69,19 +69,6 @@ :prefix "icomplete-" :group 'minibuffer) -(defcustom icomplete-mode nil - "*Toggle incremental minibuffer completion. -As text is typed into the minibuffer, prospective completions are indicated -in the minibuffer. -Setting this variable directly does not take effect; -use either \\[customize] or the function `icomplete-mode'." - :set (lambda (symbol value) - (icomplete-mode (if value 1 -1))) - :initialize 'custom-initialize-default - :type 'boolean - :group 'icomplete - :require 'icomplete) - ;;;_* User Customization variables (defcustom icomplete-prospects-length 80 "*Length of string displaying the prospects." @@ -131,8 +118,8 @@ ;;;_* Initialization ;;;_ + Internal Variables -;;;_ = icomplete-eoinput 1 -(defvar icomplete-eoinput 1 +;;;_ = icomplete-eoinput nil +(defvar icomplete-eoinput nil "Point where minibuffer input ends and completion info begins.") (make-variable-buffer-local 'icomplete-eoinput) ;;;_ = icomplete-pre-command-hook @@ -173,18 +160,15 @@ ;;;_ > icomplete-mode (&optional prefix) ;;;###autoload -(defun icomplete-mode (&optional arg) +(define-minor-mode icomplete-mode "Toggle incremental minibuffer completion for this Emacs session. With a numeric argument, turn Icomplete mode on iff ARG is positive." - (interactive "P") - (let ((on-p (if (null arg) - (not icomplete-mode) - (> (prefix-numeric-value arg) 0)))) - (setq icomplete-mode on-p) - (when on-p + :global t :group 'icomplete + (if icomplete-mode ;; The following is not really necessary after first time - ;; no great loss. - (add-hook 'minibuffer-setup-hook 'icomplete-minibuffer-setup)))) + (add-hook 'minibuffer-setup-hook 'icomplete-minibuffer-setup) + (remove-hook 'minibuffer-setup-hook 'icomplete-minibuffer-setup))) ;;;_ > icomplete-simple-completing-p () (defun icomplete-simple-completing-p () @@ -193,29 +177,28 @@ Conditions are: the selected window is a minibuffer, and not in the middle of macro execution, - and minibuffer-completion-table is not a symbol (which would + and `minibuffer-completion-table' is not a symbol (which would indicate some non-standard, non-simple completion mechanism, like file-name and other custom-func completions)." (and (window-minibuffer-p (selected-window)) (not executing-kbd-macro) - (not (symbolp minibuffer-completion-table)))) + minibuffer-completion-table + ;; (or minibuffer-completing-file-name + (not (functionp minibuffer-completion-table)))) ;; ) ;;;_ > icomplete-minibuffer-setup () -;;;###autoload (defun icomplete-minibuffer-setup () "Run in minibuffer on activation to establish incremental completion. Usually run by inclusion in `minibuffer-setup-hook'." - (cond ((and icomplete-mode (icomplete-simple-completing-p)) - (add-hook 'pre-command-hook - (function (lambda () - (run-hooks 'icomplete-pre-command-hook))) - nil t) - (add-hook 'post-command-hook - (function (lambda () - (run-hooks 'icomplete-post-command-hook))) - nil t) - (run-hooks 'icomplete-minibuffer-setup-hook)))) + (when (and icomplete-mode (icomplete-simple-completing-p)) + (add-hook 'pre-command-hook + (lambda () (run-hooks 'icomplete-pre-command-hook)) + nil t) + (add-hook 'post-command-hook + (lambda () (run-hooks 'icomplete-post-command-hook)) + nil t) + (run-hooks 'icomplete-minibuffer-setup-hook))) ; @@ -226,60 +209,47 @@ "Remove completions display \(if any) prior to new user input. Should be run in on the minibuffer `pre-command-hook'. See `icomplete-mode' and `minibuffer-setup-hook'." - (if (icomplete-simple-completing-p) - (if (and (boundp 'icomplete-eoinput) - icomplete-eoinput) + (when icomplete-eoinput - (if (> icomplete-eoinput (point-max)) - ;; Oops, got rug pulled out from under us - reinit: - (setq icomplete-eoinput (point-max)) - (let ((buffer-undo-list buffer-undo-list )) ; prevent entry - (delete-region icomplete-eoinput (point-max)))) + (unless (>= icomplete-eoinput (point-max)) + (let ((buffer-undo-list t)) ; prevent entry + (delete-region icomplete-eoinput (point-max)))) - ;; Reestablish the local variable 'cause minibuffer-setup is weird: - (make-local-variable 'icomplete-eoinput) - (setq icomplete-eoinput 1)))) + ;; Reestablish the safe value. + (setq icomplete-eoinput nil))) ;;;_ > icomplete-exhibit () (defun icomplete-exhibit () "Insert icomplete completions display. Should be run via minibuffer `post-command-hook'. See `icomplete-mode' and `minibuffer-setup-hook'." - (if (icomplete-simple-completing-p) - (let ((contents (buffer-substring (minibuffer-prompt-end)(point-max))) - (buffer-undo-list t)) - (save-excursion - (goto-char (point-max)) - ; Register the end of input, so we - ; know where the extra stuff - ; (match-status info) begins: - (if (not (boundp 'icomplete-eoinput)) - ;; In case it got wiped out by major mode business: - (make-local-variable 'icomplete-eoinput)) - (setq icomplete-eoinput (point)) + (when (icomplete-simple-completing-p) + (save-excursion + (goto-char (point-max)) + ;; Register the end of input, so we know where the extra stuff + ;; (match-status info) begins: + (setq icomplete-eoinput (point)) ; Insert the match-status information: - (if (and (> (point-max) (minibuffer-prompt-end)) - (or - ;; Don't bother with delay after certain number of chars: - (> (point-max) icomplete-max-delay-chars) - ;; Don't delay if alternatives number is small enough: - (if minibuffer-completion-table - (cond ((numberp minibuffer-completion-table) - (< minibuffer-completion-table - icomplete-delay-completions-threshold)) - ((sequencep minibuffer-completion-table) - (< (length minibuffer-completion-table) - icomplete-delay-completions-threshold)) - )) - ;; Delay - give some grace time for next keystroke, before - ;; embarking on computing completions: - (sit-for icomplete-compute-delay))) - (insert - (icomplete-completions contents - minibuffer-completion-table - minibuffer-completion-predicate - (not - minibuffer-completion-confirm)))))))) + (if (and (> (point-max) (minibuffer-prompt-end)) + buffer-undo-list ; Wait for some user input. + (or + ;; Don't bother with delay after certain number of chars: + (> (- (point) (field-beginning)) icomplete-max-delay-chars) + ;; Don't delay if alternatives number is small enough: + (and (sequencep minibuffer-completion-table) + (< (length minibuffer-completion-table) + icomplete-delay-completions-threshold)) + ;; Delay - give some grace time for next keystroke, before + ;; embarking on computing completions: + (sit-for icomplete-compute-delay))) + (let ((text (while-no-input + (icomplete-completions + (field-string) + minibuffer-completion-table + minibuffer-completion-predicate + (not minibuffer-completion-confirm)))) + (buffer-undo-list t)) + (if text (insert text))))))) ;;;_ > icomplete-completions (name candidates predicate require-match) (defun icomplete-completions (name candidates predicate require-match) @@ -322,9 +292,7 @@ (concat open-bracket-determined (substring most (length name)) close-bracket-determined))) - (open-bracket-prospects "{") - (close-bracket-prospects "}") - ;"-prospects" - more than one candidate + ;;"-prospects" - more than one candidate (prospects-len 0) prospects most-is-exact comp) (if (eq most-try t) @@ -338,30 +306,25 @@ prospects-len (+ (length comp) 1 prospects-len)))))) (if prospects (concat determ - open-bracket-prospects + "{" (and most-is-exact ",") (mapconcat 'identity (sort prospects (function string-lessp)) ",") (and comps ",...") - close-bracket-prospects) + "}") (concat determ " [Matched" (let ((keys (and icomplete-show-key-bindings (commandp (intern-soft most)) (icomplete-get-keys most)))) - (if keys - (concat "; " keys) - "")) + (if keys (concat "; " keys) "")) "]")))))) -(if icomplete-mode - (icomplete-mode 1)) - ;;;_* Local emacs vars. ;;;Local variables: ;;;outline-layout: (-2 :) ;;;End: -;;; arch-tag: 339ec25a-0741-4eb6-be63-997532e89b0f +;; arch-tag: 339ec25a-0741-4eb6-be63-997532e89b0f ;;; icomplete.el ends here
--- a/lisp/image-mode.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/image-mode.el Thu Mar 24 18:41:26 2005 +0000 @@ -43,6 +43,7 @@ ;;;###autoload (push '("\\.tiff\\'" . image-mode) auto-mode-alist) ;;;###autoload (push '("\\.tif\\'" . image-mode) auto-mode-alist) ;;;###autoload (push '("\\.xbm\\'" . image-mode) auto-mode-alist) +;;;###autoload (push '("\\.xpm\\'" . image-mode) auto-mode-alist) ;;;###autoload (push '("\\.pbm\\'" . image-mode) auto-mode-alist) ;;;###autoload (push '("\\.pgm\\'" . image-mode) auto-mode-alist) ;;;###autoload (push '("\\.ppm\\'" . image-mode) auto-mode-alist) @@ -75,10 +76,12 @@ (interactive) (if (get-text-property (point-min) 'display) (let ((inhibit-read-only t) - (buffer-undo-list t)) + (buffer-undo-list t) + (modified (buffer-modified-p))) (remove-list-of-text-properties (point-min) (point-max) '(display intangible read-nonsticky read-only front-sticky)) + (set-buffer-modified-p modified) (kill-local-variable 'cursor-type) (kill-local-variable 'truncate-lines) (message "Repeat this command to go back to displaying the image")) @@ -97,8 +100,10 @@ ;; read-only when we're visiting the file (as ;; opposed to just inserting it). read-only t front-sticky (read-only))) - (buffer-undo-list t)) + (buffer-undo-list t) + (modified (buffer-modified-p))) (add-text-properties (point-min) (point-max) props) + (set-buffer-modified-p modified) ;; Inhibit the cursor when the buffer contains only an image, ;; because cursors look very strange on top of images. (setq cursor-type nil)
--- a/lisp/international/mule.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/international/mule.el Thu Mar 24 18:41:26 2005 +0000 @@ -1508,8 +1508,9 @@ ;;; FILE I/O (defcustom auto-coding-alist - '(("\\.\\(arc\\|zip\\|lzh\\|zoo\\|jar\\|sx[dmicw]\\|tar\\)\\'" . no-conversion-multibyte) - ("\\.tgz\\'" . no-conversion) + '(("\\.\\(arc\\|zip\\|lzh\\|zoo\\|[jew]ar\\)\\'" . no-conversion) + ("\\.\\(ARC\\|ZIP\\|LZH\\|ZOO\\|[JEW]AR\\)\\'" . no-conversion) + ("\\.\\(sx[dmicw]\\|tar\\|tgz\\)\\'" . no-conversion) ("\\.\\(gz\\|Z\\|bz\\|bz2\\|gpg\\)\\'" . no-conversion) ("/#[^/]+#\\'" . emacs-mule)) "Alist of filename patterns vs corresponding coding systems.
--- a/lisp/jka-compr.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/jka-compr.el Thu Mar 24 18:41:26 2005 +0000 @@ -229,7 +229,10 @@ "The entry in `file-name-handler-alist' used by the jka-compr I/O functions.") (defvar jka-compr-really-do-compress nil - "Non-nil in a buffer whose visited file was uncompressed on visiting it.") + "Non-nil in a buffer whose visited file was uncompressed on visiting it. +This means compress the data on writing the file, even if the +data appears to be compressed already.") +(make-variable-buffer-local 'jka-compr-really-do-compress) (put 'jka-compr-really-do-compress 'permanent-local t) ;;; Functions for accessing the return value of jka-compr-get-compression-info
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lisp/language/thai-word.el Thu Mar 24 18:41:26 2005 +0000 @@ -0,0 +1,11054 @@ +;;; thai-word.el -- find Thai word boundaries + +;; Copyright (C) 2000, 2001, 2002, 2003, 2004 +;; Electrotechnical Laboratory, JAPAN. + +;; Author: Kenichi HANDA <handa@etl.go.jp> + +;; Keywords: thai, word break, emacs + +;; This program is free software; you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation; either version 2, or (at your option) +;; any later version. + +;; This program is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with GNU Emacs; see the file COPYING. If not, write to +;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. + +;; The used Thai word list has been taken from IBM's ICU4J project +;; (file `thai6.ucs', version 1.4, converted to TIS encoding, with +;; removal of three incorrect entries) to which the following license +;; applies: +;; +;; COPYRIGHT AND PERMISSION NOTICE +;; +;; +;; Copyright (c) 1995-2001 International Business Machines +;; Corporation and others +;; +;; All rights reserved. +;; +;; +;; Permission is hereby granted, free of charge, to any person +;; obtaining a copy of this software and associated documentation +;; files (the "Software"), to deal in the Software without +;; restriction, including without limitation the rights to use, +;; copy, modify, merge, publish, distribute, and/or sell copies of +;; the Software, and to permit persons to whom the Software is +;; furnished to do so, provided that the above copyright notice(s) +;; and this permission notice appear in all copies of the Software +;; and that both the above copyright notice(s) and this permission +;; notice appear in supporting documentation. +;; +;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +;; EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +;; OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +;; NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE +;; COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE BE LIABLE +;; FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +;; OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR +;; PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +;; TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +;; PERFORMANCE OF THIS SOFTWARE. +;; +;; Except as contained in this notice, the name of a copyright +;; holder shall not be used in advertising or otherwise to promote +;; the sale, use or other dealings in this Software without prior +;; written authorization of the copyright holder. + + +;; This file implements an algorithm to find Thai word breaks using a +;; dictionary. It is based on the C program `cttex' written by +;; Vuthichai Ampornaramveth <vuthi@nii.ac.jp>. + + +;; Table of Thai words. It is a nested alist (see `nested-alist-p'), +;; which means that you can easily index the list character by +;; character. + +(defconst thai-word-table nil) + + +;; Set up `thai-word-table'. + +(let + ((l + '("¡¡" + "¡¡Å" + "¡¡Ø¸Àѳ±ì" + "¡§" + "¡§¡ÒÃ" + "¡§ÊØÅ" + "¡§àµê¡" + "¡®" + "¡®ËÁÒÂ" + "¡°Ô¹" + "¡´" + "¡µÑªÅÕ" + "¡µÑصÒ" + "¡µÑÙ" + "¡µÒ¸Ô¡ÒÃ" + "¡µÒÀÔ¹ÔËÒÃ" + "¡µÔ¡Ò" + "¡µàÇ·ÔµÒ" + "¡µàÇ·Õ" + "¡¶Ò" + "¡·Á" + "¡·ÅÕ" + "¡¹" + "¡¹¡" + "¡¹ÔÉ°Ò" + "¡º" + "¡º¯" + "¡º´Ò¹" + "¡º·Ù" + "¡ºÒÅ" + "¡ºÔ¹·Ãì" + "¡ºÔÅ" + "¡ºÕè" + "¡ÁÅ" + "¡Ã" + "¡Ã¡®" + "¡Ã¡®Ò¤Á" + "¡Ã¡¯" + "¡Ã§" + "¡Ã³±ì" + "¡Ã³Õ" + "¡Ã³Õ¡Ԩ" + "¡Ã³ÕÂì" + "¡Ã´" + "¡Ã¹" + "¡Ãº" + "¡ÃºÙÃ" + "¡ÃÁ" + "¡ÃÁ·èÒ" + "¡ÃÁ¸ÃÃÁì" + "¡ÃÃ" + "¡Ãêԧ" + "¡Ãó" + "¡ÃóԡÒÃì" + "¡ÃþØÁ" + "¡ÃÃÁ" + "¡ÃÃÁ¡Ã" + "¡ÃÃÁ¡ÒÃ" + "¡ÃÃÁªÇÒµ" + "¡ÃÃÁÒª¹" + "¡ÃÃÁÒªÕ¾" + "¡ÃÃÁÒ¸Ô¡ÒÃ" + "¡ÃÃà¨Õ¡" + "¡ÃÃàªÕ§" + "¡ÃÃá·Ã¡" + "¡ÃÃ⪡" + "¡ÃÃä¡Ã" + "¡ÃÇ´" + "¡ÃǺ" + "¡ÃÇÂ" + "¡ÃÍ" + "¡ÃÍ¡" + "¡ÃÍ¡á¡Ã¡" + "¡Ãͧ" + "¡Ãͧ¡ÃÍÂ" + "¡ÃÍ´" + "¡Ãͺ" + "¡ÃÍÁ" + "¡ÃÐ" + "¡ÃЧ¡¡ÃÐà§Ôè¹" + "¡ÃЧèͧ¡ÃÐá§è§" + "¡ÃЧè͹¡ÃÐá§è¹" + "¡ÃШ¡" + "¡ÃШ͡" + "¡ÃШͧÍá§" + "¡ÃШѧ" + "¡ÃШѺ" + "¡ÃШҴ" + "¡ÃШҺ" + "¡ÃШÒÂ" + "¡ÃШԴ" + "¡ÃШԺ" + "¡ÃШÔÃÔ´" + "¡ÃШء" + "¡ÃШغ¡ÃШԺ" + "¡ÃШØÂ" + "¡ÃШØ맡ÃШÔë§" + "¡ÃШØëÁ¡ÃШÔëÁ" + "¡ÃШÙë¡ÃШÕë" + "¡ÃШèÒ§" + "¡ÃШé͹" + "¡ÃЩ͡" + "¡ÃЩѺ¡ÃÐ੧" + "¡ÃЩٴ" + "¡ÃЩè͹" + "¡ÃЪ͹" + "¡ÃЪѺ" + "¡ÃЪÑé¹" + "¡ÃЪҡ" + "¡ÃЪØ" + "¡ÃЫԡ" + "¡ÃЫԺ" + "¡ÃЮØÁ¾Õ" + "¡Ãд¡" + "¡Ãдͧ" + "¡Ãд͹" + "¡Ãдѧ§Ò" + "¡Ãдҡ" + "¡ÃдҧÅÒ§" + "¡Ãдҹ" + "¡ÃдÒÉ" + "¡Ãдԡ" + "¡ÃдÔè§" + "¡ÃдÕè" + "¡Ãд׺" + "¡ÃдØÁ" + "¡Ãд١" + "¡Ãдé§" + "¡ÃдéÒ§" + "¡Ãеԡ" + "¡ÃеԺ" + "¡ÃеÔê´" + "¡Ãе×ÍÃ×ÍÃé¹" + "¡Ãеء" + "¡ÃеØ駡ÃеÔé§" + "¡ÃеØé¹" + "¡Ãеèͧ¡ÃÐáµè§" + "¡ÃеèÒÂ" + "¡ÃеéÇÁ¡ÃÐàµÕéÂÁ" + "¡Ãеêͺ" + "¡ÃжԹ" + "¡Ãз§" + "¡Ãзº" + "¡ÃзÃǧ" + "¡ÃзÐ" + "¡ÃзÑè§" + "¡Ãзԧ" + "¡Ãз׺" + "¡Ãзا" + "¡ÃзÙé" + "¡ÃзèÍÁ" + "¡Ãзé͹" + "¡ÃзéÍÁ¡ÃÐá·éÁ" + "¡ÃйÑé¹" + "¡Ãкǹ" + "¡ÃкÇÂ" + "¡Ãк͡" + "¡Ãкͧ" + "¡ÃкÐ" + "¡ÃкÔ" + "¡ÃкÕè" + "¡Ãк×Í" + "¡Ãкا" + "¡ÃлÃÕé¡ÃÐà»ÃèÒ" + "¡ÃлÑéÇ¡ÃÐà»ÕéÂ" + "¡ÃлèÓ" + "¡ÃлéÍ¡ÃÐá»é" + "¡Ãлëͧ" + "¡ÃмÅÕ¡ÃмÅÒÁ" + "¡Ãмա" + "¡ÃоÕé" + "¡Ãо×Í" + "¡ÃоØé§" + "¡ÃпѴ¡ÃÐà¿Õ´" + "¡ÃпÙÁ¡ÃпÒÂ" + "¡ÃÐÁÍÁ¡ÃÐáÁÁ" + "¡ÃÐÁѧ" + "¡ÃÐÂÒ˧ѹ" + "¡ÃÐÂÖ¡¡ÃÐÂ×Í" + "¡ÃÐÂè͹" + "¡ÃÐÃÍ¡" + "¡ÃÐÅÍÁ" + "¡ÃÐÅÑÁ¾Ã" + "¡ÃÐÇÔ¹" + "¡ÃÐÇÕ¡ÃÐÇÒ´" + "¡ÃÐÉÑÂ" + "¡ÃÐÉÒ»³ì" + "¡ÃÐÊͺ" + "¡ÃÐÊѧ" + "¡ÃÐÊѹ" + "¡ÃÐÊÒ" + "¡ÃÐÊ×Í" + "¡ÃÐÊا¡ÃÐÊÔ§" + "¡ÃÐÊع" + "¡ÃÐ˹¡" + "¡ÃÐ˹Һ" + "¡ÃÐ˹èÓ" + "¡ÃÐËÁÔº" + "¡ÃÐËÁèÍÁ" + "¡ÃÐËÂÔèÁ" + "¡ÃÐËÒÂ" + "¡ÃÐËÖÁ" + "¡ÃÐËÖèÁ" + "¡ÃÐÍͺ" + "¡ÃÐÍÑ¡" + "¡ÃÐÍÑ¡¡ÃÐÍèǹ" + "¡ÃÐà§éÒ¡ÃЧʹ" + "¡ÃÐà¨Ò" + "¡ÃÐà¨Ô§" + "¡ÃÐà¨Ô´¡ÃÐà¨Ô§" + "¡ÃÐà¨Õêº" + "¡ÃÐàªéÒ" + "¡ÃÐà«Í" + "¡ÃÐà«Ô§" + "¡ÃÐà«ç¹" + "¡ÃÐà«éÒ" + "¡ÃÐà´Ô´" + "¡ÃÐà´Õ´" + "¡ÃÐà´×Í¡" + "¡ÃÐà´×èͧ" + "¡ÃÐà´ç¹" + "¡ÃÐà´éÒ" + "¡ÃÐ൧" + "¡ÃÐàµÒÐ" + "¡ÃÐàµ×éͧ" + "¡ÃÐàµç¹" + "¡ÃÐà¶Ôº" + "¡ÃÐà·ÕÂÁ" + "¡ÃÐà·×͹" + "¡ÃÐູ" + "¡ÃÐàºÕ´" + "¡ÃÐàº×éͧ" + "¡ÃÐà»ÒÐ" + "¡ÃÐà»ëÒ" + "¡ÃÐà¾ÒÐ" + "¡ÃÐà¾×èÍÁ" + "¡ÃÐàÂéÍ¡ÃÐáËÂè§" + "¡ÃÐàÃÕ¹" + "¡ÃÐàÊÕ¹" + "¡ÃÐàÊÕÂÃ" + "¡ÃÐàÊ繡ÃÐÊÒÂ" + "¡ÃÐàÊèÒ" + "¡ÃÐàËÁç´¡ÃÐáËÁè" + "¡ÃÐá¨Ð" + "¡ÃÐá«Ð" + "¡ÃÐá´Ð" + "¡ÃÐá´èÇ" + "¡ÃÐáµ" + "¡ÃÐá·¡" + "¡ÃÐáÊ" + "¡ÃÐáÍÁ" + "¡ÃÐ⨹" + "¡ÃÐâ¨Á" + "¡ÃÐâ©¡¡ÃÐà©¡" + "¡ÃÐâ´¡" + "¡ÃÐâ´¡¡ÃÐà´¡" + "¡ÃÐâ´§" + "¡ÃÐâ´´" + "¡ÃÐⶹ" + "¡ÃÐâºÁ" + "¡ÃÐâ»Ã§" + "¡ÃÐâËé" + "¡ÃÑ¡" + "¡Ãѧ" + "¡Ãѹ" + "¡ÃѺ" + "¡ÃÑÁ" + "¡ÃÒ¡" + "¡ÃÒ§" + "¡ÃÒ´" + "¡ÃÒ¹" + "¡ÃÒº" + "¡ÃÒ¿" + "¡ÃÒ¿¿Ô¡" + "¡ÃÒ¿Ô¡" + "¡ÃÒÁ" + "¡ÃÒÂ" + "¡ÃÒÇ" + "¡ÃÓ" + "¡ÃÔ¡" + "¡ÃÔ§¡ÃÔÇ" + "¡ÃÔª" + "¡ÃÔº" + "¡ÃÔÁ" + "¡ÃÔÂÒ" + "¡ÃÔÇ" + "¡ÃÔè§" + "¡ÃÔèÁ" + "¡ÃÔéÇ" + "¡ÃÔê¡" + "¡ÃÔê§" + "¡ÃÕ" + "¡ÃÕ¡" + "¡ÃÕ±Ò" + "¡ÃÕ´" + "¡ÃÕ¸Ò" + "¡ÃÕê´" + "¡ÃØ" + "¡ÃØ¡" + "¡Ãا" + "¡Ãا෾" + "¡ÃسÒ" + "¡ÃسҸԤس" + "¡Ãع" + "¡Ãغ" + "¡ÃØÂ" + "¡ÃØè¹" + "¡ÃØèÁ" + "¡ÃØéÁ¡ÃÔèÁ" + "¡ÃØê»" + "¡ÃÙ" + "¡ÃÙ´" + "¡ÃçÍ¡¡ÃëÍÂ" + "¡Ãè͹" + "¡ÃèÍÂ" + "¡ÃèÒ§" + "¡ÃèÒÂ" + "¡ÃèÓ" + "¡ÃéÇÁ" + "¡ÃéÍ" + "¡ÃéÒ¹" + "¡ÃéÒÇ" + "¡ÄɮաÒ" + "¡ÄɳÒ" + "¡Å" + "¡Å´" + "¡Åº" + "¡ÅÁ" + "¡ÅÂØ·¸ì" + "¡Åǧ" + "¡ÅÍ¡" + "¡Åͧ" + "¡Å͹" + "¡ÅÍÂ" + "¡ÅÑ¡" + "¡ÅÑ´" + "¡ÅѺ" + "¡ÅÑÇ" + "¡ÅÑè¹" + "¡ÅÑé¹" + "¡ÅÑéÇ" + "¡ÅÒ¡" + "¡ÅÒ§" + "¡ÅÒ´" + "¡ÅÒÂ" + "¡ÅÒâËÁ" + "¡ÅÔè§" + "¡ÅÔè¹" + "¡ÅÔé§" + "¡ÅÔéÁ" + "¡ÅÕ" + "¡ÅÕº" + "¡ÅÕè" + "¡ÅÖ§" + "¡Å×¹" + "¡ÅØèÁ" + "¡ÅØéÁ" + "¡ÅÙâ¤Ê" + "¡ÅàÁç´" + "¡Åè¹" + "¡Åèͧ" + "¡Åè͹" + "¡ÅèÍÁ" + "¡ÅèÒÇ" + "¡ÅèÓ" + "¡ÅéÇÂ" + "¡ÅéÇÂäÁé" + "¡ÅéÍ" + "¡Åéͧ" + "¡Åé͹" + "¡ÅéÍÁá¡ÅéÁ" + "¡ÅéÒ" + "¡ÅéÒÁ" + "¡ÅéÓ" + "¡Ç´" + "¡Ç¹" + "¡ÇÁ" + "¡ÇÂ" + "¡Ç¨Ñêº" + "¡Ç¨Õê" + "¡ÇÑ¡" + "¡ÇÑ´" + "¡ÇÒ§" + "¡ÇÒ§µØé§" + "¡ÇÒ´" + "¡ÇÒÇà¤Ã×Í" + "¡ÇÕ" + "¡ÇèÒ" + "¡ÇéÒ§" + "¡ÇéÒ¹" + "¡ÇêÒ¹" + "¡ÉѵÃÔÂì" + "¡ÉÑÂ" + "¡ÉÒ»³ì" + "¡ÊÔ" + "¡ÊÔ¡Ã" + "¡ÊÔ¡ÃÃÁ" + "¡ÊÔ³" + "¡Í" + "¡Í¡" + "¡Í§" + "¡Í«" + "¡Í´" + "¡Íº" + "¡Í»Ã" + "¡ÍÂ" + "¡ÍÃÔÅÅÒ" + "¡ÍÅì¿" + "¡ÍàÍÕêÂÐ" + "¡Ð" + "¡ÐªÖ衡ЪÑè¡" + "¡Ð«Ç¡" + "¡Ð´Õè" + "¡ÐµéÓ" + "¡ÐµêÒ¡" + "¡Ð·¡Ã¡" + "¡Ð·Ñ´ÃÑ´" + "¡Ð·Ñ¹Ëѹ" + "¡Ð·Ô" + "¡Ð·×Í" + "¡ÐºÑ§ÅÁ" + "¡ÐºÔé§" + "¡Ð»ÃÔ´¡Ð»ÃÍÂ" + "¡Ð»Ç¡¡Ðà»Õ¡" + "¡Ð»Ð" + "¡Ð»Ô" + "¡Ð¾§" + "¡Ð¾ÃÔº" + "¡Ð¾Åèͧ¡Ðá¾Åè§" + "¡Ð¾éÍ" + "¡ÐÃѵ" + "¡ÐÃØ觡ÐÃÔè§" + "¡ÐÅÇÂ" + "¡ÐÅÍ" + "¡ÐÅлѧËÒ" + "¡ÐÅÐÁѧ" + "¡ÐÅÐáÁ" + "¡ÐÅÒ" + "¡ÐÅÒÊÕ" + "¡ÐÅÔéÁ¡ÐàËÅÕèÂ" + "¡ÐÅè͹" + "¡ÐÅèÍÁ¡ÐáÅèÁ" + "¡ÐÅèÍ¡ÐËÅÔº" + "¡ÐÊéÒËÍÂ" + "¡Ð˹ا¡Ð˹ԧ" + "¡Ð˹çͧ¡Ðá˹ç§" + "¡ÐËÃÍ´" + "¡ÐËÃÕè" + "¡ÐËÃçÍÁ¡ÐáËÃçÁ" + "¡ÐËÃèͧ" + "¡ÐËÅÕè" + "¡ÐËÅØ¡¡ÐËÅÔ¡" + "¡ÐËÅèÓ" + "¡Ðà´¡" + "¡Ð൧" + "¡Ðà·Â" + "¡Ðà·ÒÐ" + "¡Ðà»Ô꺡лêÒº" + "¡Ðà¼Å¡" + "¡ÐàÃÕè¡ÐÃÒ´" + "¡ÐàÅÔ´" + "¡ÐàÅèÍ¡ÐÅèÒ" + "¡ÐàËÃÕè§" + "¡ÐàËÅÒÐà»ÒÐ" + "¡Ðáªè" + "¡Ðⵧ¡Ð൧" + "¡Ðâµé§âËè§" + "¡Ðâµê¡" + "¡Ðâ»Ã§" + "¡Ðâ»âÅ" + "¡Ðâ¼Å¡¡Ðà¼Å¡" + "¡ÐâËÅ¡" + "¡Ñ¡" + "¡Ñ¡¢ÌÐ" + "¡Ñ§" + "¡Ñ§¡éÒ" + "¡Ñ§¢Ò" + "¡Ñ§©Ô¹" + "¡Ñ§¿Ù" + "¡Ñ§ÇÅ" + "¡Ñ§ÇÒ¹" + "¡Ñ§Ê´ÒÅ" + "¡Ñ§Ëѹ" + "¡Ñ§äÊ" + "¡ÑªÒ" + "¡ÑÒ" + "¡Ñ³±ì" + "¡Ñ´" + "¡Ñ¹" + "¡Ñ¹´ÒÃ" + "¡Ñ¹µì" + "¡Ñ¹ÂÒ¹" + "¡Ñ¹Âì" + "¡Ñº" + "¡Ñ»" + "¡Ñ»µÑ¹" + "¡ÑÁ»¹Ò·" + "¡ÑÁ»ÃÐâ´" + "¡ÑÁ¾ÙªÒ" + "¡ÑÁÁѹµÀÒ¾ÃѧÊÕ" + "¡ÑÁÁѹµÃѧÊÕ" + "¡Ñź¡" + "¡ÑÅ»¾Ä¡Éì" + "¡ÑŻѧËÒ" + "¡ÑÅ»ÒÇÊÒ¹" + "¡ÑÅ»ì" + "¡ÑÅÂÒ" + "¡ÑÅÂÒ³" + "¡ÑÅÂÒ³ÁÔµÃ" + "¡ÑÅÂÒ³Õ" + "¡ÑÅâª" + "¡Ñè¹" + "¡Ñé§" + "¡Ñé¹" + "¡Ñé¹ËÂÑè¹" + "¡Ñê¡" + "¡Ò" + "¡Ò¡" + "¡Ò¡Õ" + "¡Ò§" + "¡Ò§à¡§" + "¡Ò§à¢¹" + "¡Ò«ÐÅͧ" + "¡Ò¨¹ºØÃÕ" + "¡Ò¨¹Ò" + "¡Ò´" + "¡Ò¹" + "¡Ò¹´Ò" + "¡Ò¹¾ÅÙ" + "¡Òº" + "¡Ò½Ò¡" + "¡Ò¾Âì" + "¡ÒÁ" + "¡ÒÁÒÃÁ³ì" + "¡ÒÂ" + "¡Ò¡ÃÃÁ" + "¡ÒÂÀÒ¾" + "¡ÒÂÇÔÀÒ¤" + "¡ÒÂÊÔ·¸Ôì" + "¡ÒÂҾ¾" + "¡ÒÃ" + "¡Òóì" + "¡ÒúÙÃ" + "¡ÒÃÐà¡´" + "¡ÒÃѳÂì" + "¡ÒÃѹµì" + "¡ÒÃØ" + "¡ÒÃسÂì" + "¡ÒÃàÇ¡" + "¡ÒÃì" + "¡ÒÃì´" + "¡ÒÃìµÙ¹" + "¡ÒÅ" + "¡ÒÅ¡Ô³Õ" + "¡ÒÅÕ" + "¡ÒÅà·ÈÐ" + "¡ÒÇ" + "¡ÒÈ" + "¡ÒÊ" + "¡ÒÊÃ" + "¡ÒÊÔâ¹" + "¡ÒËŧ" + "¡ÒÌ" + "¡ÒàËÇèÒ" + "¡Òá¿" + "¡ÒáÅç¡«Õ" + "¡Ó" + "¡Ó¡ÇÁ" + "¡Ó¡Ñ´" + "¡Ó¡Ñº" + "¡Ó¨Ã" + "¡Ó¨Ñ´" + "¡Ó¨ÒÂ" + "¡ÓªÑº" + "¡Ó«Òº" + "¡Ó´Ñ´" + "¡Ó¸Ã" + "¡Ó¹Ñ¹" + "¡Ó¹ÑÅ" + "¡ÓºÑ§" + "¡Ó»Ñè¹" + "¡Ó¾ÃéÒ" + "¡Ó¾×´" + "¡ÓÁжѹ" + "¡ÓÁÐÅÍ" + "¡ÓÁÐËÂÕè" + "¡ÓÂÒ¹" + "¡ÓÂÓ" + "¡ÓÃÒº" + "¡ÓÅѧ" + "¡ÓÊÃÇÅ" + "¡Ó˹´" + "¡Ó˹Ѵ" + "¡Óà´Ò" + "¡Óà¹Ô´" + "¡ÓàÃÔº" + "¡Óà˹ç¨" + "¡Óᾧ" + "¡Óá˧" + "¡ÓäÃ" + "¡ÓäÅ" + "¡Ô¡" + "¡Ô¡Ð" + "¡Ô¨" + "¡Ô¨¡ÃÃÁ" + "¡Ô¨¡ÒÃ" + "¡Ô¨¨ÐÅѡɳÐ" + "¡Ô¨¨Ò" + "¡ÔµµÔ" + "¡ÔµµÔ¤Ø³" + "¡ÔµµÔÁÈÑ¡´Ôì" + "¡ÔµµÔÈѾ·ì" + "¡Ô¹" + "¡Ô¹¹Ã" + "¡Ô¹ÃÕ" + "¡ÔÃÔ³Õ" + "¡ÔÃÔÂÒ" + "¡ÔàŹ" + "¡ÔàÅÊ" + "¡ÔâÁâ¹" + "¡Ôâµչ" + "¡ÔâÅ" + "¡ÔâÅ¡ÃÑÁ" + "¡ÔâÅÅÔµÃ" + "¡ÔâÅàÁµÃ" + "¡ÔâÅàÎÔõ«ì" + "¡Ôè§" + "¡ÔèÇ" + "¡Ô駡×Í" + "¡Ô駡èÒ" + "¡Ôê¡" + "¡Ôêº" + "¡ÔëÇ" + "¡Õ¯ÇÔ·ÂÒ" + "¡Õ´" + "¡ÕµÒÃì" + "¡Õº" + "¡ÕÌÒ" + "¡Õè" + "¡Õé" + "¡Õë" + "¡Ö¡" + "¡Ö¡¡éͧ" + "¡Öè§" + "¡Öë¹" + "¡Ø" + "¡Ø¡" + "¡Ø¡¡Ñ¡" + "¡ØªÃ" + "¡Øá¨" + "¡Ø®ØÁ¾Õ" + "¡Ø¯°Ñ§" + "¡Ø¯Ô" + "¡Ø³±Å" + "¡Ø´" + "¡Ø´Ñ§" + "¡Ø´Ñè¹" + "¡Ø¹" + "¡Ø¹«×Í" + "¡Ø¹àªÕ§" + "¡Øº" + "¡ØÁ" + "¡ØÁÀÒ" + "¡ØÁÀì" + "¡ØÁÒÃ" + "¡ØÁÒÃÒ" + "¡ØÁÒÃÕ" + "¡ØÂ" + "¡ØªèÒÂ" + "¡ØÂàΧ" + "¡ØÅ" + "¡ØŸԴÒ" + "¡ØźصÃ" + "¡ØÅʵÃÕ" + "¡ØÅÒ" + "¡ØÅÕ" + "¡ØÅաبÍ" + "¡ØÈÅ" + "¡ØÈâźÒÂ" + "¡ØËÅÒº" + "¡ØèÁ" + "¡Øé§" + "¡Øê¡" + "¡Øê¹" + "¡ØêÂ" + "¡ØëÂ" + "¡Ù" + "¡Ù³±ì" + "¡Ù´" + "¡Ùº" + "¡Ùè" + "¡Ùé" + "¡àÌÇÃÒ¡" + "¡ç" + "¡è§" + "¡è¹" + "¡èÍ" + "¡èͧ" + "¡è͹" + "¡èÒÂ" + "¡èÓ" + "¡é§â¤é§" + "¡é¹" + "¡éÁ" + "¡éÍ" + "¡éͧ" + "¡é͹" + "¡éÍÁ" + "¡éÍÂ" + "¡éÍÃèÍ¡é͵ԡ" + "¡éÒ§" + "¡éÒ¹" + "¡éÒÁ" + "¡éÒÇ" + "¡éÓ" + "¡éÓ¡Öè§" + "¡éÓà¡Ô¹" + "¡ê¡" + "¡ê§" + "¡êÍ¡" + "¡êͺ»Õé" + "¡êÍ»»Õé" + "¡êÒ«" + "¡êÒ´" + "¡ë§" + "¡ëÇÂàµÕëÂÇ" + "¡ëÍÂ" + "¡ëÒ" + "¢§¨×êÍ" + "¢¨Ã" + "¢¨Ñ´" + "¢¨ÒÂ" + "¢¨Õ" + "¢¨ØÂ" + "¢³Ð" + "¢´" + "¢¹" + "¢¹§" + "¢¹´" + "¢¹¹" + "¢¹º" + "¢¹Á" + "¢¹Áͺ" + "¢¹Ñ´" + "¢¹Ñ¹" + "¢¹Ò¡" + "¢¹Ò§" + "¢¹Ò´" + "¢¹Ò¹" + "¢¹Òº" + "¢¹ÒÂ" + "¢¹ÔÉ°Ò" + "¢¹Ø¹" + "¢º" + "¢º¶" + "¢ºÇ¹" + "¢Á" + "¢ÁÇ´" + "¢Áͧ" + "¢ÁÍÂ" + "¢Áѧ" + "¢ÁѺ" + "¢ÁÒ" + "¢ÁÔº" + "¢ÁÔé¹" + "¢ÁÕ¢Áѹ" + "¢ÁÖ§" + "¢ÁØ¡¢ÁÍÁ" + "¢ÁØ¡¢ÁÑÇ" + "¢Áغ" + "¢Áغ¢ÁÔº" + "¢ÁèÍÁ" + "¢ÁéÓ" + "¢ÂÍ¡" + "¢Âͧ" + "¢ÂÐ" + "¢ÂÑ¡" + "¢Âѹ" + "¢ÂѺ" + "¢ÂÑé¹" + "¢ÂÒ´" + "¢ÂÒº" + "¢ÂÒÂ" + "¢ÂÓ" + "¢ÂÔ¡" + "¢ÂÔº" + "¢ÂÔèÁ" + "¢ÂÕé" + "¢ÂØ¡¢ÂÔ¡" + "¢ÂØ¡¢ÂØÂ" + "¢Âغ" + "¢Âغ¢ÂÔº" + "¢ÂØÁ" + "¢ÂØÂ" + "¢ÂØéÁ" + "¢ÂèÁ" + "¢Âè͹" + "¢Âé͹" + "¢ÂéÓ" + "¢ÃÁ" + "¢Ãäì" + "¢ÃÑÇ" + "¢ÃÔº" + "¢ÃÖÁ" + "¢ÃØ¢ÃÐ" + "¢Åѧ" + "¢ÅѺ" + "¢ÅÒ" + "¢ÅÒ´" + "¢ÅÔº" + "¢ÅØ¡" + "¢ÅØ¡¢ÅÑ¡" + "¢ÅØ¡¢ÅÔ¡" + "¢Åغ" + "¢ÅØÁ" + "¢ÅØèÂ" + "¢Ç§" + "¢Ç´" + "¢Ç¹¢ÇÒÂ" + "¢Çº" + "¢ÇÂ" + "¢ÇÑ¡ä¢Çè" + "¢ÇÑ" + "¢ÇÑ´" + "¢ÇѺ" + "¢ÇѺà¢ÇÕÂÇ" + "¢ÇÑé¹" + "¢ÇÒ" + "¢ÇÒ¡" + "¢ÇÒ§" + "¢ÇÒ´" + "¢ÇÒ¹" + "¢ÇÒ¢ǹ" + "¢ÇÔ´" + "¢ÇéÒ§" + "¢Í" + "¢Í¡" + "¢Í§" + "¢Í´" + "¢Í¹" + "¢Íº" + "¢Íº¤Ø³" + "¢Íºã¨" + "¢ÍÁ" + "¢ÐÁÍÁ¢ÐáÁÁ" + "¢ÐÁÑ¡à¢Áé¹" + "¢ÐÁØ¡¢ÐÁÍÁ" + "¢ÐÂÔ¡" + "¢ÐÂØ¡" + "¢ÐàÂéÍá¢Âè§" + "¢ÐáÂÐ" + "¢Ñ§" + "¢Ñ³±Ê¡Ã" + "¢Ñ³±ÊÕÁÒ" + "¢Ñ´" + "¢ÑµµÔÂÁÒ¹Ð" + "¢Ñ¹" + "¢Ñ¹ªÐà¹ÒÐ" + "¢Ñ¹µÔ" + "¢Ñ¹·Õ" + "¢Ñ¹¸ì" + "¢Ñ¹ËÁÒ¡" + "¢Ñ¹âµ¡" + "¢Ñº" + "¢ÑÂ" + "¢Ñé¹" + "¢ÑéÇ" + "¢Ò" + "¢Ò¡" + "¢Ò¡êÇÂ" + "¢Ò§" + "¢Ò´" + "¢Ò¹" + "¢Òº" + "¢ÒÁ" + "¢ÒÂ" + "¢ÒÅ" + "¢ÒÇ" + "¢Ó" + "¢Ô¡" + "¢Ô§" + "¢ÔÁ" + "¢Ôè§" + "¢Õ´" + "¢Õ»¹ÒÇظ" + "¢Õè" + "¢Õé" + "¢ÕéàËÃè" + "¢Ö§" + "¢Öé§" + "¢Öé¹" + "¢Ö鹩èÒÂ" + "¢×¹" + "¢×è¹" + "¢×èÍ" + "¢Ø¡" + "¢Ø´" + "¢Ø¹" + "¢Ø¹·Í§" + "¢Ø¹á¼¹" + "¢ØÁ" + "¢ØÂ" + "¢Øè¹" + "¢Ù´" + "¢Ùè" + "¢âÁÂ" + "¢èÁ" + "¢èǹ" + "¢èÍ" + "¢è͹" + "¢èÍÂ" + "¢èÒ" + "¢èÒ§" + "¢èÒÂ" + "¢èÒÇ" + "¢èÒÇÊÒÃ" + "¢é¹" + "¢éÍ" + "¢éͧ" + "¢é͹" + "¢éÍÁÙÅ" + "¢éÍÂ" + "¢éÒ" + "¢éÒ§" + "¢éÒ¾à¨éÒ" + "¢éÒÁ" + "¢éÒÇ" + "¢éÒÇÊÒÃ" + "¢éÒÇàÁèÒ" + "¢éÒÇâ¾´" + "¢éÒÈÖ¡" + "¢éÒËÅǧ" + "¤¤¹ÑÁ¾Ã" + "¤¤¹Ò§¤ì" + "¤¤¹Ò¹µì" + "¤§" + "¤§¤Ò" + "¤ªÃÒª" + "¤ªÊÒÃ" + "¤ªÒªÒµÔ" + "¤ªÒªÕ¾" + "¤ªÒ¸ÒÃ" + "¤ªÒÀóì" + "¤³¹Ò" + "¤³º´Õ" + "¤³Ð" + "¤³Ò¨ÒÃÂì" + "¤³Ò¸Ô¡ÒÃ" + "¤³Ò¸Ô»äµÂ" + "¤³Ò¹Ñº" + "¤³Ô¡Ò" + "¤³Ôµ" + "¤³ÔµÈÒʵÃì" + "¤´" + "¤´Õ" + "¤µÔ" + "¤µÔ¸ÃÃÁ" + "¤µÔ¾¨¹ì" + "¤·Ò" + "¤¹" + "¤¹¸Ãþì" + "¤¹â·" + "¤º" + "¤Á" + "¤Á¹Ò¡ÒÃ" + "¤Á¹Ò¤Á" + "¤Ã¡" + "¤Ãº" + "¤ÃêԵ" + "¤ÃÃÀ" + "¤ÃÃÀì" + "¤ÃÃÅͧ" + "¤ÃÃâŧ" + "¤ÃÃäÅ" + "¤ÃÇ" + "¤ÃÇÑ¡" + "¤ÃÇÕ" + "¤ÃËÒ" + "¤ÃÍ¡" + "¤Ãͧ" + "¤Ãͧá¤Ã§" + "¤Ãͺ" + "¤Ãͺ¤ÃÑÇ" + "¤ÃÐ" + "¤ÃÑ´à¤Ãè§" + "¤Ãѹ" + "¤ÃѺ" + "¤ÃÑÇ" + "¤ÃÑè§" + "¤ÃÑè¹" + "¤ÃÑé§" + "¤ÃÑé¹" + "¤ÃÒ" + "¤ÃÒ¡" + "¤ÃÒ§" + "¤ÃÒ" + "¤ÃÒ´" + "¤ÃÒº" + "¤ÃÒÁ" + "¤ÃÒÇ" + "¤ÃÒÊ" + "¤ÃÓ" + "¤ÃÔʵ¡ÒÅ" + "¤ÃÔʵѧ" + "¤ÃÔʵì" + "¤ÃÔʵìÁÒÊ" + "¤ÃÔÊàµÕ¹" + "¤ÃÕº" + "¤ÃÕÁ" + "¤ÃÖ" + "¤ÃÖ¡¤Ã×é¹" + "¤ÃÖ¡â¤ÃÁ" + "¤ÃÖ¹" + "¤ÃÖÁ" + "¤ÃÖè§" + "¤ÃÖéÁ" + "¤Ã×´" + "¤Ã×¹" + "¤Ã×Í" + "¤Ã×é¹" + "¤Ã×鹤ÃÖ¡" + "¤ÃØ" + "¤Ãر" + "¤ÃØÁà¤Ã×Í" + "¤ÃØÂ" + "¤ÃØè¹" + "¤ÃÙ" + "¤ÃÙ´" + "¤ÃÙè" + "¤Ãè§" + "¤ÃèÍÁ" + "¤ÃèÒ" + "¤ÃèÒÇ" + "¤ÃèÓ" + "¤ÃéÒ¹" + "¤ÃéÒÁ" + "¤ÄË" + "¤ÄËÑʶì" + "¤ÄËÒʹì" + "¤ÅÍ" + "¤ÅÍ¡" + "¤Åͧ" + "¤ÅÍ´" + "¤Å͹" + "¤ÅÍÃÕ¹" + "¤ÅÍâÿÍÃìÁ" + "¤ÅÍâÿÕÅÅì" + "¤ÅÐ" + "¤ÅÑ¡" + "¤Åѧ" + "¤Åѵªì" + "¤ÅѺ" + "¤ÅÑè¡" + "¤ÅÑè§" + "¤ÅÒ" + "¤ÅÒ§á¤Å§" + "¤ÅÒ´" + "¤ÅÒ¹" + "¤ÅÒÂ" + "¤ÅÒÊ" + "¤ÅÒÊÊÔ¤" + "¤ÅÓ" + "¤ÅÔ¹Ô¡" + "¤ÅÔé¡" + "¤ÅÕ" + "¤ÅÕ¹Ô¤" + "¤ÅÕè" + "¤ÅÖ§" + "¤Å×è¹" + "¤Å×è¹àËÕ¹" + "¤Å×è¹äÊé" + "¤ÅØ¡" + "¤ÅØÁ" + "¤ÅØèÁ" + "¤ÅØé§" + "¤ÅØéÁ" + "¤Åèͧ" + "¤Åèͧá¤ÅèÇ" + "¤ÅèÓ" + "¤Åéͧ" + "¤ÅéÍÂ" + "¤ÅéÒÂ" + "¤ÅéÓ" + "¤Ç§" + "¤Çº" + "¤ÇÃ" + "¤ÇÑ¡" + "¤Çѹ" + "¤ÇÑè¹" + "¤ÇÒ¡" + "¤ÇÒ" + "¤ÇÒ¹" + "¤ÇÒÁ" + "¤ÇÒÂ" + "¤ÇÔ¹Ô¹" + "¤ÇÕ¹" + "¤ÇèÓ" + "¤ÇéÒ" + "¤ÇéÒ§" + "¤ÇéÒ¹" + "¤Ë¡ÃÃÁ" + "¤Ë¡ÃÃÁÈÒʵÃì" + "¤Ëº´Õ" + "¤Ë»µÒ¹Õ" + "¤Í" + "¤Í¡" + "¤Í´" + "¤Í¹" + "¤Í¹¡ÃÕµ" + "¤Í¹¿Ô¡" + "¤Í¹à´¹à«ÍÃì" + "¤Í¹àÊÔÃìµ" + "¤Í¹àÊÔÃì·" + "¤Í¹áǹµì" + "¤ÍÁ" + "¤ÍÁ¾ÔÇàµÍÃì" + "¤ÍÁÁÒ¹â´" + "¤ÍÁÁÔǹÔʵì" + "¤ÍÁᾤ" + "¤ÍÁâ¾à¹¹·ì" + "¤ÍÂ" + "¤ÍÂÅì" + "¤ÍÃÑ»ªÑè¹" + "¤ÍÃì«Ô¡Ò" + "¤ÍÃì´" + "¤ÍÃì»ÍàêÑè¹" + "¤ÍÅÑÁ¹ì" + "¤ÍʵÒÃÔ¡Ò" + "¤ÍफÍ´ì" + "¤ÍàÅÊàµÍÃÍÅ" + "¤Ð" + "¤Ð¹Í§" + "¤Ð¹Ö§" + "¤Ð¹éÒ" + "¤ÐÁÓ" + "¤ÐÂÑ鹤ÐÂÍ" + "¤Ðà¹" + "¤ÐàÂÍ" + "¤Ðá¹¹" + "¤Ñ¡" + "¤Ñ¤¹ÑÁ¾Ã" + "¤Ñ¤¹Ò§¤ì" + "¤Ñ¤¹Ò¹µì" + "¤Ñ³±ÊÙµÃ" + "¤Ñ´" + "¤Ñ·ÅÕÂÒ" + "¤Ñ¹" + "¤Ñ¹©ÒÂ" + "¤Ñ¹·Ã§" + "¤Ñº" + "¤ÑÁÀÕÃÀÒ¾" + "¤ÑÁÀÕÃì" + "¤Ñè¡" + "¤Ñè§" + "¤Ñè¹" + "¤ÑèÇ" + "¤Ñé¹" + "¤Ò" + "¤Ò§" + "¤Ò§¤¡" + "¤Ò´" + "¤Ò¶Ò" + "¤Ò·ÍÅÔ¡" + "¤Ò¹" + "¤Òº" + "¤ÒÁ" + "¤ÒÁÇÒÊÕ" + "¤ÒÂ" + "¤ÒÃÁ" + "¤ÒÃÇÐ" + "¤ÒÃÒÇÒ¹" + "¤ÒÃÒàµé" + "¤ÒÃÒâÍà¡Ð" + "¤ÒÃì" + "¤ÒÃìºÍ¹" + "¤ÒÃìºÍ¹Á͹͡䫴ì" + "¤ÒÃìºÍ¹ä´ÍÍ¡ä«´ì" + "¤ÒÃìºÍÅÔ¡" + "¤ÒÃìºÍ๵" + "¤ÒÃìºÙàÃàµÍÃì" + "¤ÒÃìÅ" + "¤ÒÃìâºäÎà´Ãµ" + "¤ÒÇ" + "¤ÒÇÕ" + "¤Òà¸Âì" + "¤Òà¿è" + "¤Ó" + "¤Ó¹Ç³" + "¤Ó¹Ñº" + "¤Ó¹Ö§" + "¤Óù" + "¤Óú" + "¤ÓÃÒÁ" + "¤Óá˧" + "¤Óãµé" + "¤Ô¡" + "¤Ô§" + "¤Ô´" + "¤ÔÁËѹµì" + "¤ÔÇ" + "¤ÔéÇ" + "¤Õµ" + "¤Õ¹ÂÒ" + "¤Õº" + "¤ÕÁ" + "¤ÕÂì" + "¤ÕÂìºÍÃì´" + "¤ÕÃÕ" + "¤Õè" + "¤Ö¡" + "¤Ö¡¤Ñ¡" + "¤Öè¡" + "¤×¹" + "¤×º" + "¤×Í" + "¤Ø" + "¤Ø¡" + "¤Ø¡¡Õé" + "¤Ø³" + "¤Ø³¸ÃÃÁ" + "¤Ø³ÀÒ¾" + "¤Ø³ÇزÔ" + "¤Ø³ÈѾ·ì" + "¤Ø³ÊÁºÑµÔ" + "¤Ø³Ò¡Ã" + "¤Ø³Ù»¡ÒÃ" + "¤Ø´" + "¤Ø´·ÐÃÒ´" + "¤ØÁ" + "¤ØÂ" + "¤ØÃØ" + "¤Øâ³»¡ÒÃ" + "¤ØèÁ" + "¤Øé§" + "¤Øé¹" + "¤ØéÁ" + "¤ØéÂ" + "¤Ù" + "¤Ù³" + "¤Ù¹" + "¤Ù»Í§" + "¤ÙËÒ" + "¤Ùè" + "¤Ùé" + "¤à¹¨Ã" + "¤çÍ¡à·Å" + "¤è͹" + "¤èÍÁ" + "¤èÍÂ" + "¤èÐ" + "¤èÒ" + "¤èÒ§" + "¤èÒÂ" + "¤èÓ" + "¤é¹" + "¤é͹" + "¤éÍÁ" + "¤éÒ" + "¤éÒ§" + "¤éÒ§¤ÒÇ" + "¤éÒ§àµÔè§" + "¤éÒ¹" + "¤éÓ" + "¦ÃÒÇÒÊ" + "¦Òµ" + "¦Òµ¡Ã" + "¦Òµ¡ÃÃÁ" + "¦èÒ" + "¦éͧ" + "§¡" + "§§" + "§§§ÇÂ" + "§´" + "§º" + "§Á" + "§Ç§" + "§Ç´" + "§Ç§§" + "§Í" + "§Í¡" + "§Í¡á§¡" + "§Í´" + "§Í´á§´" + "§Í¹" + "§Í¹Ë§èÍ" + "§Íº" + "§ÍÁ" + "§ÍÂ" + "§Íá§" + "§Ð" + "§Ñ¡" + "§Ñ´" + "§Ñ¹" + "§Ñº" + "§ÑÇ" + "§ÑÇà§ÕÂ" + "§Ñè¡" + "§Ñè§" + "§ÑèÇ" + "§Ò" + "§Ò¹" + "§Òº" + "§ÒÁ" + "§ÒÂ" + "§Ó" + "§ÔéÇ" + "§Õº" + "§Ö¡" + "§ÖÁ" + "§ÖÁ§Ó" + "§Ø´" + "§Ø¹§§" + "§Øº" + "§Øº§Ôº" + "§ØÂ" + "§Ø蹧èÒ¹" + "§ØèÁ§èÒÁ" + "§ØéÁ" + "§Ù" + "§ÙÊÇÑ´" + "§èǧ" + "§èǹ" + "§èͧ" + "§è͹" + "§èÍÂ" + "§èÒ" + "§èÒ¹" + "§èÒÁ" + "§èÒÂ" + "§èÓ" + "§éǹ" + "§éÍ" + "§éÍÁ" + "§éÒ§" + "§éÒÇ" + "§éÓ" + "¨¡" + "¨§" + "¨§¡Å¹Õ" + "¨§ÍÒ§" + "¨´" + "¨µØ" + "¨µØç¤ì" + "¨µØþԸ" + "¨µØÊ´ÁÀì" + "¨¹" + "¨º" + "¨Á" + "¨ÁÙ¡" + "¨Ã" + "¨Ã¨Ñ´" + "¨Ã´" + "¨ÃÃÂÒ" + "¨ÃÃâŧ" + "¨ÃÅÕ" + "¨ÃÇ´" + "¨ÃÐà¢é" + "¨ÃÑÅ" + "¨ÃÑÊ" + "¨ÃÒ¨Ã" + "¨ÃÔ§" + "¨ÃÔµ" + "¨ÃÔ¸ÃÃÁ" + "¨ÃÔÂÈÒʵÃì" + "¨ÃÔÂÈÖ¡ÉÒ" + "¨ÃÔÂÒ" + "¨Ãا" + "¨ÃÙ" + "¨Å" + "¨Å¹¾ÅÈÒʵÃì" + "¨Å¹ÈÒʵÃì" + "¨ÅÒ¨Å" + "¨Ç¡" + "¨Ç§" + "¨Ç¹" + "¨Çº" + "¨ÇÑ¡" + "¨Í" + "¨Í¡" + "¨Í§" + "¨Í§Ëͧ" + "¨Í´" + "¨Í¹" + "¨Íº" + "¨ÍÁ" + "¨ÍÃìá´¹" + "¨Íá¨" + "¨Ð" + "¨Ð¡ÅÐ" + "¨Ð¡ÅÒÁ" + "¨ÐÅÐËÇÑè¹" + "¨ÐÅÐàÁç´" + "¨Ðà¢é" + "¨Ñ¡" + "¨Ñ¡¢Ø" + "¨Ñ¡¨Ñè¹" + "¨Ñ¡Ã" + "¨Ñ¡Ã¾ÃôÔ" + "¨Ñ¡ÃÀ¾" + "¨Ñ¡ÃÂÒ¹" + "¨Ñ¡ÃÇÃôÔ" + "¨Ñ¡ÃÇÒÅ" + "¨Ñ¡ÃÕ" + "¨Ñ¡ÉØ" + "¨Ñ¡áËÅè¹" + "¨Ñ§" + "¨Ñ§¡Íº" + "¨Ñ§¡éÒ" + "¨Ñ§§Ñ§" + "¨Ñ§ËÇÐ" + "¨Ñ§ËÇÑ´" + "¨Ñ§Ëѹ" + "¨Ñ§äÃ" + "¨ÑäÃ" + "¨Ñ³±ÒÅ" + "¨Ñ³±ì" + "¨Ñ´" + "¨Ñ´¡ÒÃ" + "¨ÑµÇÒ" + "¨ÑµØÃÑÊ" + "¨Ñ¹" + "¨Ñ¹·¹ì" + "¨Ñ¹·ºØÃÕ" + "¨Ñ¹·Ã" + "¨Ñ¹·Ã¤µÔ" + "¨Ñ¹·Ã¤ÃÒÊ" + "¨Ñ¹·ÃØ»ÃÒ¤Ò" + "¨Ñ¹·Ãì" + "¨Ñº" + "¨Ñº¡Ñ§" + "¨Ñº©èÒÂ" + "¨Ñè¹" + "¨ÑèÇ" + "¨Ñé¡" + "¨ÑꡨÕé" + "¨Ñê¡à´ÕÂÁ" + "¨ÑêÇÐ" + "¨Ò¡" + "¨Ò§" + "¨Ò´" + "¨ÒµØç¤Êѹ¹ÔºÒµ" + "¨Ò¹" + "¨Òº" + "¨ÒºÑÅ" + "¨ÒºÑÅÂì" + "¨ÒÁ" + "¨ÒÁ¨ØÃÕ" + "¨ÒÁÃ" + "¨ÒÁÃÕ" + "¨ÒÃ" + "¨ÒÃкÕ" + "¨ÒÃÐä¹" + "¨ÒÃÔ¡" + "¨ÒÃÕ" + "¨ÒÃÕµ" + "¨ÒÃÖ¡" + "¨ÒÇ" + "¨ÒÇÒ" + "¨ÒàÁ¡Ò" + "¨Ó" + "¨Ó¡Ñ´" + "¨Ó¹§" + "¨Ó¹¹" + "¨Ó¹ÃèÒ" + "¨Ó¹Ãèì" + "¨Ó¹Ç¹" + "¨Ó¹Í§" + "¨Ó¹Ó" + "¨Ó»Ò" + "¨Ó»Õ" + "¨Ó¾Ç¡" + "¨ÓÃÑÊ" + "¨ÓÃÙ" + "¨ÓÅͧ" + "¨Ó˹èÒÂ" + "¨ÓÍÇ´" + "¨Óà¾ÒÐ" + "¨ÓàÃÔ" + "¨ÓàÃÕ§" + "¨ÓàÅÂ" + "¨Óṡ" + "¨Ô¡" + "¨Ô§â¨é" + "¨Ôµ" + "¨ÔµÃ" + "¨ÔµÃ¡Ã" + "¨ÔµÃ¡ÃÃÁ" + "¨ÔµÃÅ´Ò" + "¨ÔµÇÔ·ÂÒ" + "¨ÔµàǪ" + "¨Ôµá¾·Âì" + "¨Ô¹´Ò" + "¨Ô¹µ¡ÇÕ" + "¨Ô¹µ¹Ò" + "¨Ô¹µ¹Ò¡ÒÃ" + "¨Ô¹µÀÒ¾" + "¨Ôº" + "¨Ô»Ò¶Ð" + "¨ÔèÁ" + "¨Ô駨¡" + "¨Ô駨͡" + "¨Ôé§ËÃÕ´" + "¨Ôé§àËŹ" + "¨ÔéÁ" + "¨ÔëÇ" + "¨Õ¹" + "¨Õ¹áÊ" + "¨Õº" + "¨ÕÇÃ" + "¨Õè" + "¨Õé" + "¨Õê" + "¨Õê´" + "¨Õë" + "¨Ö§" + "¨Öè§" + "¨Öé§" + "¨×´" + "¨Ø" + "¨Ø¡" + "¨Ø´" + "¨ØµÔ" + "¨Ø¹" + "¨Øº" + "¨Øº¨Ôº" + "¨ØÁ¾¯" + "¨ØÁ¾Ôµ" + "¨ØŨÍÁ" + "¨ØŪվ" + "¨ØŪÕÇѹ" + "¨ØŪÕÇÔ¹" + "¨ØÅ·ÃÃȹì" + "¨ØÅÀÒ¤" + "¨ØÅÇÃä" + "¨ØÅÈÑ¡ÃÒª" + "¨ØÅÊÒÃ" + "¨ØÅÔ¹·ÃÕÂì" + "¨ØÌÒ" + "¨ØÌÒŧ¡Ã³ì" + "¨Øè§" + "¨Øè¹" + "¨ØèÁ" + "¨Øé¹" + "¨Ø鹨Ùê" + "¨ØéÁ" + "¨ØéÂ" + "¨Øê¡¡ÃÙê" + "¨Øêº" + "¨Øêºá¨§" + "¨Ø맨Ôë§" + "¨ØëÁ¨ÔëÁ" + "¨Ù" + "¨Ù§" + "¨Ùº" + "¨Ùè" + "¨Ùé" + "¨Ùê´" + "¨Ùë" + "¨àÃ" + "¨èÍ" + "¨èÍÁ" + "¨èÒ" + "¨èÒ§" + "¨èÒÂ" + "¨é¹" + "¨éǧ" + "¨éÍ" + "¨éÍ¡" + "¨éÍ¡á¨é¡" + "¨éͧ" + "¨é͹" + "¨éÍÂ" + "¨éÐ" + "¨éÒ" + "¨éÒ§" + "¨éÒ¹" + "¨éÒÅÐËÇÑè¹" + "¨éÒÇ" + "¨éÓ" + "¨éÓ¨Õé" + "¨éÓÁèÓ" + "¨êÍ¡" + "¨êÐ" + "¨ëÍ" + "¨ëͧ" + "¨ëÍÂ" + "¨ëÐ" + "¨ëÒ" + "©¡" + "©¡Ãèì" + "©¡ÉѵÃÔÂì" + "©¡Ò¨" + "©¡ÒÁÒ¾¨Ã" + "©§¹" + "©§ÒÂ" + "©¹Ç¹" + "©¹Ñ§" + "©¹Ò¡" + "©¹Ó" + "©ºÑ§" + "©ºÑº" + "©Á" + "©ÁÇ¡" + "©Áѧ" + "©ÁÒ" + "©ÁÓ" + "©Å" + "©ÅÇÂ" + "©Åͧ" + "©ÅÍÁ" + "©ÅÑ¡" + "©ÅÒ¡" + "©ÅÒ´" + "©ÅÒÁ" + "©ÅÒÂ" + "©ÅÔÇ" + "©ÅØ" + "©ÅØ¡©ÅÇÂ" + "©ÅÙ" + "©ÇÂ" + "©ÇÑ´à©ÇÕ¹" + "©ÇÒ§" + "©ÇÕ" + "©È¡" + "©Í¡" + "©Í´" + "©ÍàÅÒÐ" + "©Ð" + "©Ð©Ò¹" + "©Ð¹Ñé¹" + "©Ð¹Õé" + "©ÐÍé͹" + "©ÑµÃ" + "©Ñ¹" + "©Ñ¹·Åѡɳì" + "©Ñ¹·Ð" + "©Ñ¹·Ò" + "©Ñ¹·Ò¹ØÁѵÔ" + "©Ñ¹·ì" + "©Ñº" + "©Ò¡" + "©Ò§" + "©Ò´" + "©Ò¹" + "©Òº" + "©ÒÂ" + "©ÒÂÒ" + "©ÒÇ" + "©Ó©Ò" + "©Ô¹" + "©Ôº" + "©ÔÁ¾ÅÕ" + "©ÔÇ" + "©Ôè§" + "©Õ¡" + "©Õ´" + "©Õè" + "©Ø" + "©Ø¡" + "©Ø¡à©Ô¹" + "©Ø´" + "©Ø¹" + "©ØÂ" + "©Ù´" + "©Ùè" + "©èͧ" + "©èÍÂ" + "©èÒ" + "©èÒ§" + "©èÓ" + "©éÍ" + "ª¡" + "ª§" + "ª§â¤" + "ª®Ò" + "ª´" + "ª¹" + "ª¹¡" + "ª¹¹Õ" + "ª¹Á¾ÃÃÉÒ" + "ª¹Áì" + "ª¹Ç¹" + "ª¹Ð" + "ª¹Ñ¡" + "ª¹Ô´" + "ªºÒ" + "ªÁ" + "ªÁ´ªÁéÍÂ" + "ªÁ¾Ù" + "ªÁ¾Ù¹·" + "ªÁ¾Ù¹Ø·" + "ªÁ¾Ùè" + "ªÁÃÁ" + "ªÁÒ" + "ªÁéÍÂ" + "ªÁéÒÂ" + "ªÂ" + "ªÃ" + "ªÃÐ" + "ªÃÑÇ" + "ªÃÒ" + "ªÅ" + "ªÅ¸ÒÃ" + "ªÅ¸Õ" + "ªÅ¹Ò" + "ªÅ»Ãзҹ" + "ªÅÒÅÑÂ" + "ªÅÒÈÑÂ" + "ªÇ" + "ªÇ´" + "ªÇ¹" + "ªÇÃ" + "ªÇÅÔµ" + "ªÇÒ" + "ªÇÒÅ" + "ªÍ¡" + "ªÍ¡ªéÓ" + "ªÍ§" + "ªÍ¹" + "ªÍº" + "ªÍ»»Ôé§" + "ªÍÁ" + "ªÍÅì¡" + "ªÍ×éÍ" + "ªÍØèÁ" + "ªÍèÓ" + "ªÐ" + "ªÐ§Ñ¡" + "ªÐ§Ñ´" + "ªÐ§ØéÁ" + "ªÐ§è͹" + "ªÐ§éÓ" + "ªÐµÒ" + "ªÐ¹Õ" + "ªÐÁ´" + "ªÐÁÑ´" + "ªÐÃÍÂ" + "ªÐÅÍ" + "ªÐÅÍÁ" + "ªÐÅÙ´" + "ªÐÅèÒ" + "ªÐà§éÍ" + "ªÐà¹ÒÐ" + "ªÐá§é" + "ªÐáŧ" + "ªÐ⧡" + "ªÐâ´" + "ªÑ¡" + "ªÑ§" + "ªÑªÇÒÅ" + "ªÑ¯" + "ªÑ´" + "ªÑ¹" + "ªÑ¹¹ÐµØ" + "ªÑ¹ÉÒ" + "ªÑ¹ÊÙµÃ" + "ªÑÂ" + "ªÑ¾ġÉì" + "ªÑÂÀÙÁÔ" + "ªÑè§" + "ªÑèÇ" + "ªÑèÇâÁ§" + "ªÑé¹" + "ªÑéÇ" + "ªÒ" + "ªÒ" + "ªÒ´" + "ªÒ´¡" + "ªÒµÃÕ" + "ªÒµÐ" + "ªÒµÔ" + "ªÒ¹" + "ªÒ¹Ø" + "ªÒÁ" + "ªÒÂ" + "ªÒÂÒ" + "ªÒÅÒ" + "ªÒÇ" + "ªÒÇàÅ" + "ªÓ" + "ªÓ¹Ñ" + "ªÓ¹Ò" + "ªÓ¹Ô" + "ªÓÃÐ" + "ªÓÃØ´" + "ªÓÃèÇÂ" + "ªÓà¹Õ¹" + "ªÓà¹ÕÂÃ" + "ªÓàÃÒ" + "ªÓàÅ×ͧ" + "ªÓáËÅÐ" + "ªÔ" + "ªÔ¤Òâ¡" + "ªÔ§" + "ªÔ§ªéÒ" + "ªÔ´" + "ªÔ¹" + "ªÔ»" + "ªÔ¾" + "ªÔÁ" + "ªÔÁỹ«Õ" + "ªÔÇËÒ" + "ªÔè§" + "ªÔé¹" + "ªÕ" + "ªÕ»Ð¢ÒÇ" + "ªÕ¾" + "ªÕ¾ÔµÑ¡ÉÑÂ" + "ªÕÇ»ÃÐÇѵÔ" + "ªÕÇÇÔ·ÂÒ" + "ªÕÇÒµÁì" + "ªÕÇÒÅÑÂ" + "ªÕÇÔµ" + "ªÕÇԵѡÉÑÂ" + "ªÕÇÔ¹" + "ªÕÇÕ" + "ªÕÇà¤ÁÕ" + "ªÕé" + "ª×´" + "ª×è¹" + "ª×è¹Á×è¹" + "ª×èÍ" + "ª×é¹" + "ª×éÍ" + "ªØ¡" + "ªØ´" + "ªØ¹" + "ªØº" + "ªØÁ" + "ªØÁ¹ØÁ" + "ªØÁ¾Ã" + "ªØÅÁع" + "ªØÅÕ" + "ªØèÁ" + "ªØèÂ" + "ªØé§" + "ªÙ" + "ªÙé" + "ªâÂ" + "ªâÅ·Ã" + "ªâÅÁ" + "ªäÁ" + "ªçÍ¡â¡àŵ" + "ªçÍ¡â¡áŵ" + "ªèǧ" + "ªèÇÂ" + "ªèÍ" + "ªèͧ" + "ªè͹" + "ªèÒ§" + "ªèÓ" + "ªèӪͧ" + "ªéͧ" + "ªé͹" + "ªéÍÂ" + "ªéÒ" + "ªéÒ§" + "ªéÓ" + "«¡" + "«´" + "«¹" + "«º" + "«Á" + "«Ç´à«" + "«Ç¹" + "«ÇÂ" + "«Í" + "«Í¡" + "«Í§" + "«Í¹" + "«Í¿µìáÇÃì" + "«Í¿·ì" + "«Í¿·ìáÇÃì" + "«ÍÁ«èÍ" + "«ÍÂ" + "«ÍÊ" + "«Ñ¡" + "«Ñ§" + "«Ñ´" + "«Ñ¹" + "«Ñ¹µÒ¤ÅÍÊ" + "«Ñº" + "«Ñ¾¾ÍÃìµ" + "«ÑÅ¿Ò" + "«Ò" + "«Ò¡" + "«Ò¡ØÃÐ" + "«Ò§" + "«Ò¹" + "«Òº«Öé§" + "«Òº«èÒ¹" + "«ÒÁÙäÃ" + "«ÒÅÒà»Ò" + "«ÒÇ" + "«ÒÇ´ì" + "«Ô" + "«Ô¡" + "«Ô¡ÒÃì" + "«Ô¡á«ç¡" + "«Ô¹áÊ" + "«Ôº" + "«Ô»" + "«Ô¿ÔÅÔÊ" + "«ÔÅԤ͹" + "«ÔÇ" + "«Ôè¹" + "«Õ" + "«Õ¡" + "«Õ´" + "«Õ´Õ" + "«Õ¹Í¹" + "«ÕÃÍ¡«ì" + "«Õà¡ÁÊì" + "«ÕàÁ¹µì" + "«ÕàÃÕÂ" + "«Õè" + "«Õé" + "«Ö§" + "«ÖÁ" + "«Öè§" + "«Öé§" + "«×èÍ" + "«×éÍ" + "«Ø¡" + "«Ø§" + "«Ø¹" + "«Øº" + "«Ø»" + "«ØÂ" + "«ØèÁ" + "«ØèÁ«èÒÁ" + "«ØéÁ" + "«ÙªÔ" + "«Ù´«Ò´" + "«Ù´Ò¹" + "«Ùº" + "«Ùà»ÍÃìÁÒà¡çµ" + "«Ùâ¤ÃÊ" + "«Ùè" + "«è¡" + "«èͧ" + "«è͹" + "«èÍÁ" + "«èÒ" + "«èÒ¹" + "«èÒËÃÔèÁ" + "«é¹" + "«éͧ" + "«é͹" + "«éÍÁ" + "«éÒÂ" + "«éÓ" + "¬Ò¹" + "¬Ò»¹¡Ô¨" + "¬Ò»¹Ê¶Ò¹" + "ǹ" + "ѵµÔ" + "Ò³" + "ÒµÔ" + "Õè»Øè¹" + "°Ò¹" + "°Ò¹Ð" + "°Ò¹Ñ¹´Ã" + "°Ò»¹Ò" + "´¡" + "´§" + "´¹µÃÕ" + "´¹â´è" + "´Á" + "´Ãê¹Õ" + "´ÃÒ¿µì" + "´Ãس" + "´ÃسÕ" + "´Å" + "´Ç§" + "´Ç´" + "´ÇÅ" + "´Í¡" + "´Í¡àºÕéÂ" + "´Í¡äÁé" + "´Í§" + "´Í´" + "´Í¹" + "´ÍÁ" + "´ÍÂ" + "´ÍÅÅÒÃì" + "´ÍÊ" + "´Ð" + "´Ñ¡" + "´Ñ¡´Ò¹" + "´Ñ¡á´é" + "´Ñ§" + "´Ñª¹Õ" + "´Ñ´" + "´Ñµ«ì" + "´Ñ¹" + "´Ñº" + "´ÑºàºÔéÅ" + "´ÑÁ¾ì" + "´ÑÊ¡Ã" + "´Ñè§" + "´Ñé§" + "´Ñé¹" + "´Ò" + "´Ò¡" + "´Ò´" + "´ÒµéÒ" + "´Ò¹" + "´Òº" + "´ÒºÊ" + "´ÒÁ" + "´ÒÁ¾ì" + "´ÒÂ" + "´ÒóÕ" + "´ÒôÒÉ" + "´ÒÃÒ" + "´ÒÃì" + "´ÒÅ" + "´ÒÅÑ´" + "´ÒÇ" + "´ÒÇ´Ö§Êì" + "´ÒǹìâËÅ´" + "´ÒÇ⨹Êì" + "´ÒÉ" + "´ÒÉ´Ò" + "´Ó" + "´Óç" + "´ÓÃÑÊ" + "´ÓÃÔ" + "´ÓÄɳÒ" + "´Óà¡Ô§" + "´Óà¹Ô¹" + "´Óᤧ" + "´Ô" + "´Ô¡" + "´Ô¨ÔµÍÅ" + "´Ô©Ñ¹" + "´Ô¶Õ" + "´Ô¹" + "´Ôº" + "´ÔÃѨ©Ò¹" + "´ÔÅ¡" + "´ÔÇÔªÑè¹" + "´ÔʹÕÂì" + "´ÔÊࡵ" + "´Ôè§" + "´ÔèÇ" + "´Ôé¹" + "´ÔéÇ" + "´Õ" + "´Õ¡ÃÕ" + "´Õ´" + "´Õ´Õ·Õ" + "´ÕºØ¡" + "´ÕÇÕ´Õ" + "´Õà«Å" + "´Õà»ÃʪÑè¹" + "´Õ䫹ì" + "´Õä«à¹ÍÃì" + "´Ö¡" + "´Ö¡´ÓºÃþì" + "´Ö§" + "´Ö§ÊÐ" + "´Öè§" + "´ÖèÁ" + "´×Í" + "´×è¹" + "´×èÁ" + "´×éÍ" + "´Ø" + "´Ø¡" + "´Ø¨" + "´Ø´" + "´Ø¹" + "´Øº" + "´ØÁ" + "´Øç¤ì" + "´ØÃÔÂÒ§¤ÈÒʵÃì" + "´ØÃÔÂÒ§¤ÈÔÅ»ì" + "´ØÃÔÂÒ§¤ì" + "´ØÅ" + "´ØžԹԨ" + "´ØÅÀÒ¤" + "´ØžԹԨ" + "´ØÅÂÀÒ¾" + "´ØÉ®Õ" + "´ØɳÕ" + "´ØÉÔµ" + "´ØÊÔµ" + "´ØàËÇèÒ" + "´ØèÁ" + "´ØèÂ" + "´Øé§" + "´Ø駴Ôé§" + "´Øé¹" + "´Ù" + "´Ù¡Ã" + "´Ù´" + "´ÙÃÒ" + "´èǹ" + "´è͹" + "´èÍÁ" + "´èÒ" + "´èÒ§" + "´èÒ¹" + "´èÒÇ" + "´èÓ" + "´é§" + "´é¹" + "´éǧ" + "´éǹ" + "´éÇÂ" + "´éÍÁ" + "´éÍÂ" + "´éÒ¹" + "´éÒÁ" + "´éÒÂ" + "´éÒÇ" + "´éÓ" + "µ¡" + "µ¡Å§" + "µ§" + "µ§©Ô¹" + "µ§Ô´" + "µ´" + "µ¶Ò¤µ" + "µ¹" + "µº" + "µºÐ" + "µÁ" + "µÃ§" + "µÃÁ" + "µÃÁµÃÍÁ" + "µÃáÇÔ·ÂÒ" + "µÃáÈÒʵÃì" + "µÃáÐ" + "µÃǨ" + "µÃǹ" + "µÃÍ¡" + "µÃͧ" + "µÃÍÁµÃÁ" + "µÃÍÁã¨" + "µÃÐ" + "µÃСÙÅ" + "µÃÐ˧èÒ¹" + "µÃÐ˹¡" + "µÃÐ˹ѡ" + "µÃÐ˹Õè" + "µÃÐàǹ" + "µÃѧ" + "µÃѺ" + "µÃÑÂ" + "µÃÑÊ" + "µÃÒ" + "µÃÒ¡µÃÓ" + "µÃÒº" + "µÃÒÊѧ" + "µÃÓ" + "µÃÔ" + "µÃÕ" + "µÃÕÂÑÁ»ÇÒÂ" + "µÃÕ⡳" + "µÃÖ¡" + "µÃÖ§" + "µÃØ" + "µÃØÉ" + "µÃÙ" + "µÃÙè" + "µÄ³" + "µÅ¡" + "µÅº" + "µÅÍ´" + "µÅѺ" + "µÅÒ´" + "µÅÔè§" + "µÇ§" + "µÇÑ´" + "µÇÒ´" + "µÍ" + "µÍ¡" + "µÍ§" + "µÍ´" + "µÍ¹" + "µÍº" + "µÍÁ" + "µÍÃì" + "µÍÃì»Ôâ´" + "µÍáÂ" + "µÍáËÅ" + "µÐ" + "µÐ¡Ãѹ" + "µÐ¡ÃØ´" + "µÐ¡ÃØÁ" + "µÐ¡ÃéÍ" + "µÐ¡ÃéÒ" + "µÐ¡ÅÐ" + "µÐ¡ÅÒÁ" + "µÐ¡Í¹" + "µÐ¡Ñ§" + "µÐ¡ÑèÇ" + "µÐ¡Ø¡µÐ¡Ñ¡" + "µÐ¢Í" + "µÐ¢Òº" + "µÐ¢Ô´µÐ¢Ç§" + "µÐ¤ÃÔÇ" + "µÐ¤Ãغ" + "µÐ¤Í¡" + "µÐ¹ÍÂ" + "µÐºÍ§" + "µÐºÍÂ" + "µÐºÑ¹" + "µÐ»ØèÁµÐ»èÓ" + "µÐ¾Òº" + "µÐ¾Ö´" + "µÐ¾Ö´µÐ¾×Í" + "µÐ¾Øè¹" + "µÐÅÕµÐÅÒ¹" + "µÐÅÖ§" + "µÐÅا" + "µÐÅØÁºÍ¹" + "µÐÅØÁ¾Ø¡" + "µÐÅèÍÁ" + "µÐÇѹ" + "µÐËÅÔÇ" + "µÐà¡Õ¡µÐ¡ÒÂ" + "µÐà¡Õ§" + "µÐà¡Õº" + "µÐà¢çº" + "µÐà¤Õ¹" + "µÐà¦è" + "µÐàºç§" + "µÐà¾Ô´" + "µÐà¾Ôè¹" + "µÐà¾Õ¹" + "µÐàÀÒ" + "µÐàŧ" + "µÐá¡Ã§" + "µÐᤧ" + "µÐầ" + "µÐâ¡" + "µÐâ¡¡" + "µÐ⡹" + "µÐâ¡é" + "µÐ⢧" + "µÐâºÁ" + "µÐ⾡" + "µÐâ˧¡" + "µÐä¡Ã" + "µÐä¤Ãè" + "µÐä¤Ãé" + "µÐäº" + "µÐäÅ" + "µÑ¡" + "µÑ¡ÉÑÂ" + "µÑ§" + "µÑ§©èÒÂ" + "µÑ§à¡" + "µÑ§àÁ" + "µÑ§âÍë" + "µÑ³ËÒ" + "µÑ´" + "µÑ´ÊÔ¹" + "µÑ¹" + "µÑ¹Ë§" + "µÑº" + "µÑÇ" + "µÑè§" + "µÑé§" + "µÑé§áµè" + "µÑéÇâ¼" + "µÑê¡áµ¹" + "µÑëÇ" + "µÒ" + "µÒ¡" + "µÒ´" + "µÒ¹" + "µÒ¹Õ" + "µÒº" + "µÒÁ" + "µÒÂ" + "µÒÅ" + "µÒŻѵÃ" + "µÓ" + "µÓ¹Ò¹" + "µÓºÅ" + "µÓÃǨ" + "µÓÃѺ" + "µÓÃÒ" + "µÓÅÖ§" + "µÓ˹ѡ" + "µÓ˹Ô" + "µÓáÂ" + "µÓá˹è§" + "µÔ" + "µÔ¡ÒËÃѧ" + "µÔ§" + "µÔ³" + "µÔ´" + "µÔÃѨ©Ò¹" + "µÔÅ¡" + "µÔè§" + "µÔéÇ" + "µÔê¡" + "µÔë§" + "µÕ" + "µÕ¹" + "µÕº" + "µÕè" + "µÕë" + "µÖ" + "µÖ¡" + "µÖ§" + "µÖ´µ×ëÍ" + "µÖé¡" + "µÖ页Ñé¡" + "µÖê´µ×ëÍ" + "µ×´" + "µ×ÍÎǹ" + "µ×è¹" + "µ×é¹" + "µ×éÍ" + "µ×êÍ" + "µ×ëÍ" + "µØ" + "µØ¡µÔ¡" + "µØ§" + "µØ¹" + "µØ¹Ò˧ѹ" + "µØº" + "µØáÕ" + "µØÅÒ" + "µØÅÒ¡ÒÃ" + "µØÅÒ¤Á" + "µØËÃÑ´µØàËÃè" + "µØè¹" + "µØèÁ" + "µØèÂ" + "µØ駡èÒ" + "µØ駵Ôé§" + "µØéº" + "µØéÁ" + "µØéÂ" + "µØê" + "µØê¡" + "µØ꡵Ò" + "µØê¡á¡" + "µØê´" + "µØêµêÐ" + "µØ꺻èͧ" + "µØêÂ" + "µØë¹" + "µØëÁ" + "µØëµØèÂ" + "µÙ" + "µÙ¡" + "µÙ´" + "µÙº" + "µÙÁ" + "µÙè" + "µÙé" + "µèǹ" + "µèÍ" + "µèͧáµè§" + "µèÍÁ" + "µèÍÂ" + "µèÒ§" + "µèÓ" + "µé¹" + "µéÁ" + "µéÇÁàµÕéÂÁ" + "µéÍ" + "µéͧ" + "µéͧàµ" + "µé͹" + "µéÍÂ" + "µé͵Ôè§" + "µé͵ÕÇÔ´" + "µéÒ¹" + "µêÍ¡" + "µêÍ¡µëÍÂ" + "µë§" + "µëÍÁ" + "¶¡" + "¶´" + "¶¹¹" + "¶¹ÍÁ" + "¶¹Ñ´" + "¶¹Ñ´¶¹Õè" + "¶¹ÔÁ" + "¶Á" + "¶ÁÖ§·Ö§" + "¶Å¡" + "¶Å¹" + "¶ÅÍ¡" + "¶Åѹ" + "¶ÅÒ" + "¶ÅÒ¡" + "¶ÅÓ" + "¶ÅÕ¶ÅÓ" + "¶ÅÖ§µÒ" + "¶Åا" + "¶Åع" + "¶ÅèÁ" + "¶ÇÑÅÂì" + "¶ÇÒÂ" + "¶ÇÔÅ" + "¶Í¡" + "¶Í§" + "¶Í´" + "¶Í¹" + "¶ÍÂ" + "¶Ð" + "¶Ñ¡" + "¶Ñ§" + "¶Ñ´" + "¶Ñ¹" + "¶ÑÇ" + "¶ÑèÇ" + "¶Ò" + "¶Ò¡" + "¶Ò§" + "¶Ò´" + "¶Ò¹" + "¶ÒÁ" + "¶ÒÇÃ" + "¶Ôè¹" + "¶Õº" + "¶Õè" + "¶Ö¡" + "¶Ö§" + "¶×Í" + "¶Ø§" + "¶Ø¹" + "¶ØÂ" + "¶Ù" + "¶Ù¡" + "¶èÁ" + "¶èǧ" + "¶èÍ" + "¶èͧ" + "¶èÍÁ" + "¶èÍÂ" + "¶èÒ§" + "¶èÒ¹" + "¶èÒÂ" + "¶éǹ" + "¶éÇÂ" + "¶éÍÂ" + "¶éÒ" + "¶éÓ" + "·¡" + "·¡ÅéÒ" + "·´" + "·¹" + "·¹µì" + "·¹ÒÂ" + "·¹â·è" + "·º" + "·º·Ç¹" + "·ºÇ§" + "·ÁÔÌ" + "·ÂÍÂ" + "·Ã¡ÃÃÁ" + "·Ã§" + "·Ãª¹" + "·ÃªÒµÔ" + "·Ã¾ÔÉ" + "·Ã¾Õ" + "·ÃÁÒ¹" + "·ÃÂÈ" + "·ÃÂؤ" + "·Ãû" + "·ÃÃȹÐ" + "·ÃÃÒª" + "·ÃÅѡɳì" + "·Ãǧ" + "·ÃÇ´·Ã§" + "·ÃË´" + "·ÃѾÂÒ¡Ã" + "·ÃѾÂì" + "·ÃѾÂìÊÔ¹" + "·ÃÑÁà»çµ" + "·ÃÒ¹«ÔÊàµÍÃì" + "·ÃÒº" + "·ÃÒÁ" + "·ÃÒÂ" + "·ÃØ´" + "·ÄÉ®Õ" + "·ÅÒÂ" + "·Ç§" + "·Ç´" + "·Ç¹" + "·ÇÂ" + "·ÇÒ·È" + "·ÇÒÂ" + "·ÇÒÃ" + "·ÇÔ" + "·ÇÕ" + "·ÇÕ¸ÒÀÔàÉ¡" + "·ÇÕ»" + "·ÇèÒ" + "·È" + "·È¹ÔÂÁ" + "·ËÒÃ" + "·Í" + "·Í¡" + "·Í§" + "·Í§¡ÇÒÇ" + "·Í§ËÅÒ§" + "·Í´" + "·Í¹" + "·Í¹«ÔÅ" + "·Í¿¿Õè" + "·ÍÂ" + "·ÍÅì¤" + "·Ð¹§" + "·Ð¹Ò¹" + "·Ð¹Ø" + "·ÐÁÑ´·ÐáÁ§" + "·ÐÁÖ¹" + "·ÐÁ×è¹" + "·ÐÂÒ¹" + "·ÐÅǧ" + "·ÐÅÑ¡" + "·ÐÅÒÂ" + "·ÐÅÖè§" + "·ÐÅØ" + "·ÐÇÒÂ" + "·ÐàºÕ¹" + "·ÐàÂÍ·ÐÂÒ¹" + "·ÐàÅ" + "·ÐàÅÒÐ" + "·ÐàÅèÍ·ÐÅèÒ" + "·ÐàÅé¹" + "·ÐáÁè§" + "·Ñ¡" + "·Ñ¡¢Ô" + "·Ñ¡¢Ô³Ò" + "·Ñ¡¢Ô³ÒÇѯ" + "·Ñ¡¢ì" + "·Ñ¡ÉÐ" + "·Ñ¡ÉÔ³" + "·Ñ¡ÉÔ³Ò" + "·Ñ¡ÉÔ³ÒÇÃõ" + "·Ñ¡ÉÔâ³·¡" + "·Ñ§Ê൹" + "·Ñ³±¡ÃÃÁ" + "·Ñ³±¦Òµ" + "·Ñ³±Ê¶Ò¹" + "·Ñ³±ì" + "·Ñ´" + "·Ñ¹" + "·Ñ¹µá¾·Âì" + "·Ñ¹µì" + "·Ñ¹·Õ" + "·Ñº" + "·ÑºÊÁÔ§¤ÅÒ" + "·Ñ¾" + "·Ñ¾¾Õ" + "·Ñȹ¤µÔ" + "·ÑȹÇÔÊÑÂ" + "·ÑȹÈÖ¡ÉÒ" + "·ÑȹÐ" + "·ÑȹÒ" + "·ÑȹҨÃ" + "·ÑȹÕÂÀÒ¾" + "·ÑȹÕÂì" + "·Ñȹٻ¡Ã³ì" + "·Ñȹì" + "·ÑÈä¹Â" + "·Ñè§" + "·ÑèÇ" + "·Ñé§" + "·Ò" + "·Ò¡" + "·Ò§" + "·Ò¹" + "·Òº" + "·ÒÁ" + "·ÒÂ" + "·ÒÂÒ´" + "·ÒÂÒ·" + "·Òá" + "·ÒÃÔ¡Ò" + "·ÒÃس" + "·ÒÃì«Ò¹" + "·ÒÊ" + "·Ó" + "·Ó¹º" + "·Ó¹Í§" + "·Ó¹ÒÂ" + "·Ó¹Ø" + "·ÓÅÒÂ" + "·Óà¹Ò" + "·Óà¹Õº" + "·ÓàÅ" + "·ÓäÁ" + "·Ô¤ÑÁ¾Ã" + "·Ô¦ÑÁ¾Ã" + "·Ô§à¨ÍÃì" + "·Ô°Ô" + "·Ô´" + "·Ô¾Â¨Ñ¡ÉØ" + "·Ô¾ÂÒ³" + "·Ô¾ÂÃÊ" + "·Ô¾Â๵Ã" + "·Ô¾Âì" + "·Ô¾Ò¡Ã" + "·ÔÁ" + "·ÔÇ" + "·Ôǧ¤µ" + "·ÔÇ·Ñȹì" + "·ÔÇÒ" + "·ÔÈ" + "·ÔÈÒ" + "·ÔÈҹطÔÈ" + "·Ôີ" + "·ÔèÁ" + "·Ôé§" + "·Õ" + "·Õ¦ªÒµÔ" + "·ÕÁ" + "·Õà͹·Õ" + "·Õè" + "·Õè´Ô¹" + "·Ö¡" + "·Ö¹·Ö¡" + "·Öº" + "·ÖÁ" + "·Öè§" + "·ÖèÁ" + "·Öé§" + "·×èÍ" + "·Ø" + "·Ø¡" + "·Ø¡¢ÅÒÀ" + "·Ø¡¢ÒÃÁ³ì" + "·Ø¡¢àÇ·¹Ò" + "·Ø¡¢ì" + "·Ø¡Ã¡ÔÃÔÂÒ" + "·Ø¤µÔ" + "·Ø¨ÃÔµ" + "·Ø´" + "·Ø¹" + "·Øº" + "·Ø¾¾Å" + "·Ø¾ÀÔ¡¢ÀÑÂ" + "·ØÂ" + "·Øáѹ´ÒÃ" + "·Øê¹" + "·ØêҵÔ" + "·Øù·ØÃÒÂ" + "·ØþÅ" + "·ØÅÑ¡·ØàÅ" + "·ØÈÕÅ" + "·ØàÃÈ" + "·ØàÃÕ¹" + "·ØàÅÒ" + "·Øè§" + "·Øè¹" + "·ØèÁ" + "·Øé§" + "·ØéÁ" + "·ØéÂ" + "·Ù" + "·Ùµ" + "·ÙµÒ¹Ø·Ùµ" + "·Ù¹" + "·Ùº" + "·ÙÁ" + "·ÙÅ" + "·Ùè" + "·Ùé" + "·á¡ÅéÇ" + "·á§" + "·âÁ¹" + "·èǧ·Ó¹Í§" + "·èǧ·Õ" + "·èǧ·èÒ" + "·èÇÁ" + "·èÍ" + "·èͧ" + "·è͹" + "·èÍÁ" + "·èÒ" + "·èÒ¹" + "·èÒÁ¡ÅÒ§" + "·é¹" + "·éǧ" + "·éǹ" + "·éÇÁ" + "·éÍ" + "·éͧ" + "·éÒ" + "·éÒÂ" + "·éÒÇ" + "¸§" + "¸¹" + "¸¹ºÑµÃ" + "¸¹ºØÃÕ" + "¸¹ÊÁºÑµÔ" + "¸¹ÊÒÃ" + "¸¹Ò¤ÒÃ" + "¸¹Ò³ÑµÔ" + "¸¹ÒÃÑ¡Éì" + "¸¹Ù" + "¸Á" + "¸Ã" + "¸Ã³Õ" + "¸ÃÃÁ" + "¸ÃÃÁ¡ÒÂ" + "¸ÃÃÁªÒµÔ" + "¸ÃÃÁ´Ò" + "¸ÃÃÁÈÒʵÃì" + "¸ÃÃÁÐ" + "¸ÃÃÁиÑÁâÁ" + "¸ÃÃÁÒ·ÔµÂì" + "¸ÃÃÁÒ¸ÃÃÁ" + "¸ÃÃÁÒ¸Ô»äµÂ" + "¸ÃÃÁÒ¸ÔÉ°Ò¹" + "¸ÃÃÁÒ¹ØÊÒ¹" + "¸ÃÃÁÒÀÔÁØ¢" + "¸ÃÃÁÒÀÔÊÁÑÂ" + "¸ÃÃÁÒµ¹Ð" + "¸ÃÃÁÒÃÁ³ì" + "¸ÃÃÁÒʹì" + "¸ÃÃÁÔ¡" + "¸ÃÒ¸Ã" + "¸ÃÒ¸ÒÃ" + "¸ÃÒ¸Ôº´Õ" + "¸ÃÒ¸Ô»" + "¸Ñ" + "¸ÑÒËÒÃ" + "¸Ñ¾×ª" + "¸Ñ¹ÇÒ¤Á" + "¸ÑÁÁÐ" + "¸ÒµØ" + "¸Ò¹Õ" + "¸ÒÃ" + "¸ÒÃÒ" + "¸ÓÁç¤ì" + "¸Óç" + "¸Ô´Ò" + "¸Ôີ" + "¸Ø´§¤ì" + "¸ØáÃÃÁ" + "¸ØáÒÃ" + "¸ØáԨ" + "¸ØÃÐ" + "¸ØÅÕ" + "¸ØÇ´ÒÃÒ" + "¸ØÇÀÒ¤" + "¸ØÇÁ³±Å" + "¸Ù»" + "¹¡" + "¹¤Ã" + "¹¤ÃÃÒªÊÕÁÒ" + "¹¤ÃÔ¹·Ãì" + "¹¤àÃÈ" + "¹§¤ÃÒ" + "¹§¹Øª" + "¹§¾Ð§Ò" + "¹§¾ÒÅ" + "¹§ÃÒÁ" + "¹§Åѡɳì" + "¹§àÂÒÇì" + "¹·Õ" + "¹¹·ºØÃÕ" + "¹¹·ÃÕ" + "¹¹·ÅÕ" + "¹º" + "¹¾" + "¹¾»®Å" + "¹¾È¡" + "¹¾ÈÙÅ" + "¹ÀÒ" + "¹ÀÒÅÑÂ" + "¹Á" + "¹ÁÑÊ¡ÒÃ" + "¹Ã¡" + "¹ÃÊÔ§Ëì" + "¹ÃÕàǪ" + "¹ÃÕá¾·Âì" + "¹Ä¤ËÔµ" + "¹Ä¹Ò·" + "¹ÄÁÅ" + "¹ÄÁÔµ" + "¹ÅÒ¯" + "¹ÅÔ¹Õ" + "¹Ç´" + "¹Ç¹ÔÂÒÂ" + "¹ÇÁ" + "¹ÇÂ" + "¹ÇÅ" + "¹ÇÅÅÍÍ" + "¹ÇÅÅÐÍͧ" + "¹Í" + "¹Í¡" + "¹Í§" + "¹Íµ" + "¹Í¹" + "¹Íº" + "¹ÍÂ" + "¹ÍÃìàÇÂì" + "¹Ð" + "¹Ñ¡" + "¹Ñ¡¢Ñµ" + "¹Ñ¡ÈÖ¡ÉÒ" + "¹Ñ¡ÉѵÃ" + "¹Ñ¡àÃÕ¹" + "¹Ñ§¤ÑÅ" + "¹Ñ´" + "¹Ñ´´Ò" + "¹Ñµ¶Øì" + "¹Ñ¹·¹Ò¡ÒÃ" + "¹Ñº" + "¹ÑÂ" + "¹Ñ¹ì" + "¹ÑÇ" + "¹Ñè§" + "¹Ñè¹" + "¹Ñé¹" + "¹Ò" + "¹Ò¡" + "¹Ò¤" + "¹Ò¤Ã" + "¹Ò¤ÃÒª" + "¹Ò¤Õ" + "¹Ò§" + "¹Ò§ÊÒÇ" + "¹Ò§áÍè¹" + "¹Ò«Ò" + "¹Ò¯" + "¹Ò´" + "¹Ò¶" + "¹Ò·" + "¹Ò·Õ" + "¹Ò¹" + "¹Ò¹Ñ»¡ÒÃ" + "¹Ò¹Ò" + "¹Òº" + "¹ÒÀÕ" + "¹ÒÁ" + "¹ÒÁ¡Ã" + "¹ÒÁÊ¡ØÅ" + "¹ÒÁҹءÃÁ" + "¹ÒÁÒÀÔä¸Â" + "¹ÒÂ" + "¹Ò¡" + "¹ÒÃÒ³ì" + "¹ÒÃÕ" + "¹ÒÇÒ" + "¹ÒÇÔ¡" + "¹ÒÇÔ¹" + "¹ÒÇÕ" + "¹ÒÊÔ¡" + "¹ÒÌÔ¡Ò" + "¹ÒÌÔà¡" + "¹Òâ¹" + "¹Ó" + "¹Ô" + "¹Ô¡Ã" + "¹Ô¡ÃÍ´ì" + "¹Ô¡ÒÂ" + "¹Ô¡à¡ÔÅ" + "¹Ô¤Á" + "¹Ô¤Ã¹¶ì" + "¹Ô¤ËÔµ" + "¹Ô¨" + "¹Ô´" + "¹ÔµÂÊÒÃ" + "¹ÔµÂì" + "¹ÔµÔ" + "¹Ô·ÃÃÈ" + "¹Ô·ÃÒ" + "¹Ô·Ñȹì" + "¹Ô·Ò¹" + "¹Ô¹·Ò" + "¹ÔºÒµ" + "¹Ô¾¹¸ì" + "¹Ô¾¾Ò¹" + "¹ÔÁ¹µì" + "¹ÔÁÁÒ¹" + "¹ÔÁÁҹôÕ" + "¹ÔÁÔµ" + "¹ÔÂÁ" + "¹ÔÂÒÁ" + "¹ÔÂÒÂ" + "¹Ô÷ء¢ì" + "¹ÔùÒÁ" + "¹ÔÃÀÑÂ" + "¹ÔÃÁÅ" + "¹ÔÃÁÔµ" + "¹ÔÃѹ´Ã" + "¹ÔÃÒÈ" + "¹ÔÃâ·É" + "¹ÔÅ" + "¹ÔÅغÅ" + "¹ÔÇ¡Ô¹Õ" + "¹ÔǤÅÔÍÔ¡" + "¹ÔÇ«ÕᏴì" + "¹ÔǵÃ͹" + "¹ÔÇÂÍÃì¤" + "¹ÔÇóì" + "¹ÔÇѵ" + "¹ÔÇѵ¹ì" + "¹ÔÇÒµ" + "¹ÔÇÒÊ" + "¹ÔÇà¤ÅÕÂÃì" + "¹ÔÇà¤ÅÕÂÊ" + "¹ÔÊÑÂ" + "¹ÔÊÔµ" + "¹Ôà·È" + "¹ÔàÇÈ" + "¹ÔàÇȹì" + "¹Ô⤵Թ" + "¹Ôâø" + "¹ÔâźÅ" + "¹Ôè§" + "¹ÔèÁ" + "¹ÔèÇ" + "¹ÔéÇ" + "¹Õ" + "¹ÕÍ͹" + "¹ÕâÍ´ÔàÁÕÂÁ" + "¹Õè" + "¹Õé" + "¹Ö¡" + "¹Öè§" + "¹Ø§" + "¹Øª" + "¹Øè§" + "¹Øè¹" + "¹ØèÁ" + "¹ØéÂ" + "¹Ù¹" + "¹Ùè¹" + "¹Ùé¹" + "¹àÃÈÇÃ" + "¹âºÒÂ" + "¹âôÁ" + "¹èÇÁ" + "¹èͧ" + "¹èÒ" + "¹èÒ¹" + "¹éͧ" + "¹éÍÁ" + "¹éÍÂ" + "¹éÍÂ˹èÒ" + "¹éÍÂâ˹è§" + "¹éÒ" + "¹éÒÇ" + "¹éÓ" + "¹éÓÁѹ" + "¹éÓà§Ô¹" + "º¡" + "º¡¾Ãèͧ" + "º§" + "º§¡ª" + "º´" + "º´Ô¹·Ãà´ªÒ" + "º´Ô¹·Ãì" + "º´Õ" + "º·" + "º¹" + "º¾ÔµÃ" + "º¾Ô¸" + "ºÃÁ" + "ºÃÁѵ¶ì" + "ºÃÃ" + "ºÃè§" + "ºÃè¶Ã³ì" + "ºÃèº" + "ºÃèǺ" + "ºÃèØ" + "ºÃó" + "ºÃóҡÒÃ" + "ºÃóҤÁ" + "ºÃóҸԡÒÃ" + "ºÃóҹءÃÁ" + "ºÃóÒÃÑ¡ÉÈÒʵÃì" + "ºÃóÒÃÑ¡Éì" + "ºÃôÒ" + "ºÃ÷Á" + "ºÃ÷Ѵ" + "ºÃ÷ء" + "ºÃþ" + "ºÃþªÒ" + "ºÃþªÔµ" + "ºÃþµ" + "ºÃþºØÃØÉ" + "ºÃç" + "ºÃç¡ì" + "ºÃÃÂÒ¡ÒÈ" + "ºÃÃÂÒÂ" + "ºÃÃÅÑÂ" + "ºÃÃÅØ" + "ºÃÃÉÑ·" + "ºÃÃËÒÃ" + "ºÃÃà¨Ô´" + "ºÃÃà·Ò" + "ºÃÃàŧ" + "ºÃÃâÅÁ" + "ºÃÑè¹´Õ" + "ºÃÒÇà«ÍÃì" + "ºÃÔ" + "ºÃÔ¡ÃÃÁ" + "ºÃÔ¡ÒÃ" + "ºÃÔ¢ÒÃ" + "ºÃÔ¤³Ëì" + "ºÃÔ¨Ò¤" + "ºÃÔ¨Òá" + "ºÃÔ¨ÒÃÔ¡Ò" + "ºÃÔºÒÅ" + "ºÃÔºÙóì" + "ºÃԾѵÃ" + "ºÃÔ¾ÒÃ" + "ºÃÔÀѳ±ì" + "ºÃÔÀÒÉ" + "ºÃÔÃÑ¡Éì" + "ºÃÔÃÒª" + "ºÃÔÇÒÃ" + "ºÃÔÉÑ·" + "ºÃÔÊØ·¸Ôì" + "ºÃÔËÒÃ" + "ºÃÔà©·" + "ºÃÔ൹" + "ºÃÔàdz" + "ºÃÔâÀ¤" + "ºÅçÍ¡" + "ºÇ¡" + "ºÇ§" + "ºÇª" + "ºÇ¹" + "ºÇº" + "ºÇÁ" + "ºÇÃ" + "ºÍ" + "ºÍ¡" + "ºÍ´" + "ºÍ´Õé" + "ºÍ¹" + "ºÍº" + "ºÍÃì¡" + "ºÍÃì´" + "ºÍÃìà¹ÕÂÇ" + "ºÍÅ" + "ºÍÅÅÙ¹" + "ºÐËÁÕè" + "ºÑ¡" + "ºÑ¤àµÃÕ" + "ºÑ§" + "ºÑ§¡ÐâÅ" + "ºÑ§¤Á" + "ºÑ§¤Å" + "ºÑ§¤Ñº" + "ºÑ§ÊØ¡ØÅ" + "ºÑ§ÍÃ" + "ºÑ§ÍÒ¨" + "ºÑ§à¡Ô´" + "ºÑ§àËÕ¹" + "ºÑ§àÍÔ" + "ºÑªÃ" + "ºÑªÒ" + "ºÑªÕ" + "ºÑѵÔ" + "ºÑ³±Ôµ" + "ºÑ³±ÔµÂì" + "ºÑ³±Ø" + "ºÑ³±ÙÃ" + "ºÑ³³ÒÊ" + "ºÑ³ÃÊ" + "ºÑ³ÃÊÕ" + "ºÑ³à±ÒСì" + "ºÑ³à±ÒÐÇì" + "ºÑ´" + "ºÑ´¡ÃÕ" + "ºÑ´«º" + "ºÑ´ÊÕ" + "ºÑµÃ" + "ºÑ¹" + "ºÑ¹´ÒÅ" + "ºÑ¹·Ö¡" + "ºÑ¹ÂкѹÂѧ" + "ºÑ¹Å×Í" + "ºÑ¹à·Ô§" + "ºÑ¹ä´" + "ºÑ»¼ÒÊÐ" + "ºÑ¾" + "ºÑÅ¡ÒàÃÕÂ" + "ºÑÅÅѧ¡ì" + "ºÑÅÅÙ¹" + "ºÑÇ" + "ºÑÊ" + "ºÑè¹" + "ºÑé§" + "ºÑé¹" + "ºÑê¡" + "ºÒ" + "ºÒ¡" + "ºÒ§" + "ºÒ´" + "ºÒ´·ÐÂÑ¡" + "ºÒ´ÒÅ" + "ºÒµ" + "ºÒµÃ" + "ºÒ·" + "ºÒ·º§ÊØì" + "ºÒ·ËÅǧ" + "ºÒ·Ò¸Ö¡" + "ºÒ·Ø¡Ò" + "ºÒ¹" + "ºÒ¹ª×è¹" + "ºÒ¹ºØÃÕ" + "ºÒ¹ÕÂÐ" + "ºÒ¹àªéÒ" + "ºÒ¹àÂç¹" + "ºÒ»" + "ºÒÂ" + "ºÒÃÁÕ" + "ºÒÃÍÁÔàµÍÃì" + "ºÒÃì" + "ºÒÃìàÃÅ" + "ºÒÅ" + "ºÒÅÕ" + "ºÒÈ" + "ºÒÈ¡ì" + "ºÒÊࡵºÍÅ" + "ºÒËÅÕ" + "ºÓ¹Ò" + "ºÓºÑ´" + "ºÓÃÒº" + "ºÓÃÒÈ" + "ºÓÃا" + "ºÓÃÙ" + "ºÓà¾ç" + "ºÓàÃÍ" + "ºÓà˹ç¨" + "ºÔ" + "ºÔ°" + "ºÔ³±ºÒµ" + "ºÔ´" + "ºÔ´¾ÅÔéÇ" + "ºÔ´Ã" + "ºÔ´Ò" + "ºÔµ" + "ºÔ¹" + "ºÔÅ" + "ºÔÅàÅÕ´" + "ºÔè¹" + "ºÕ±Ò" + "ºÕ¹" + "ºÕº" + "ºÕé" + "ºÖ¡" + "ºÖ¡ºÖ¹" + "ºÖ§" + "ºÖè§" + "ºÖé§" + "ºØ" + "ºØ¡" + "ºØ¡ÃØ¡" + "ºØ¡É¡" + "ºØ¤¤Å" + "ºØ¤ÅÒ¡Ã" + "ºØ¤ÅÒ¸ÔÉ°Ò¹" + "ºØ¤ÅÔ¡" + "ºØ¤ÅÔ¡ÀÒ¾" + "ºØ" + "ºØÒ¹ØÀÒ¾" + "ºØÒÀÔ¹ÔËÒÃ" + "ºØ³±ÃÔ¡" + "ºØ³Âì" + "ºØµÃ" + "ºØµÃÒ" + "ºØµÃÕ" + "ºØº" + "ºØ»¼ªÒµÔ" + "ºØ¾¡ÃÃÁ" + "ºØ¾¡ÒÃÕ" + "ºØ¾¡Ô¨" + "ºØ¾ªÒµÔ" + "ºØ¾·Ñ¡ÉÔ³" + "ºØ¾¹ÔÁÔµ" + "ºØ¾º·" + "ºØ¾¾Ò¨ÒÃÂì" + "ºØ¾à¾Êѹ¹ÔÇÒÊ" + "ºØ¿à¿èµì" + "ºØþ·ÔÈ" + "ºØþº·" + "ºØþҨÒÃÂì" + "ºØÃÒ³" + "ºØÃÔÁ·ÔÈ" + "ºØÃÔÁ¾ÃÃÉÒ" + "ºØÃÔÁÊÔ·¸Ô" + "ºØÃÕ" + "ºØÃØÉ" + "ºØÉ¡Ã" + "ºØɺ§" + "ºØɺÒ" + "ºØÉÂÁÒÊ" + "ºØÉÃÒ¤ÑÁ" + "ºØ˧ѹ" + "ºØ˧Ò" + "ºØËç" + "ºØËÃÕè" + "ºØËÅѹ" + "ºØâ÷Ñè§" + "ºØèÁºèÒÁ" + "ºØé§" + "ºØéÂ" + "ºØëÁ" + "ºÙªÒ" + "ºÙªÒÂÑ" + "ºÙ´" + "ºÙµ" + "ºÙóÀÒ¾" + "ºÙóÐ" + "ºÙþÒ" + "ºÙþҨÒÃÂì" + "ºÙé" + "ºÙê" + "ºè" + "ºè§" + "ºè¹" + "ºèÁ" + "ºèǧ" + "ºèÍ" + "ºèͧ" + "ºè͹" + "ºèÍÂ" + "ºèÒ" + "ºèÒ§" + "ºèÒÂ" + "ºèÒÇ" + "ºéǹ" + "ºéͧ" + "ºéͧáºêÇ" + "ºéÍÁ" + "ºéÒ" + "ºéÒ§" + "ºéÒ¹" + "ºéÒÃÐËèÓ" + "ºê§àºê§" + "ºêÇÂ" + "ºêͧ" + "ºêÐ" + "ºëÍÁ" + "ºëÍÂ" + "ºëÓ" + "»¡" + "»¡¤Ãͧ" + "»¡µÔ" + "»¡Ã³ì" + "»¡ÒÃ" + "»¡Ô³¡Ð" + "»¯Ñ¡" + "»¯Ô¡Ã³ì" + "»¯Ô¡ÃÃÁ" + "»¯Ô¡ÔÃÔÂÒ" + "»¯Ô¡ÙÅ" + "»¯Ô¤Á" + "»¯ÔªÕǹÐ" + "»¯ÔÒ" + "»¯ÔÒ³" + "»¯Ô·Ô¹" + "»¯Ôº¶" + "»¯ÔºÑµÔ" + "»¯Ô»·Ò" + "»¯Ô»Ñ¡Éì" + "»¯Ô¾Ñ·¸ì" + "»¯Ô¾Ò¡Âì" + "»¯ÔÀÒ¤" + "»¯ÔÀÒ³" + "»¯ÔÁÒ" + "»¯ÔÁÒ¡Ã" + "»¯ÔÂØ·¸ì" + "»¯ÔÃÙ»" + "»¯ÔÇѵÔ" + "»¯ÔÇÒµ" + "»¯ÔÇÒ·" + "»¯Ôʹ¸Ô" + "»¯ÔÊѧ¢Ã³ì" + "»¯ÔÊѹ¶ÒÃ" + "»¯ÔÊÑÁ¾Ñ¹¸ì" + "»¯ÔàǸ" + "»¯Ôàʸ" + "»¯ÔâÅÁ" + "»°¾Õ" + "»°Á" + "»°Á·Ñȹì" + "»°Á¹Ôà·È" + "»°Á¾ÂÒºÒÅ" + "»°ÁÄ¡Éì" + "»°ÁÇÑÂ" + "»°Áà·È¹Ò" + "»³µ" + "»³Ô¸Ò¹" + "»´" + "»¶¾Õ" + "»·Ò¹Ø¡ÃÁ" + "»·ØÁ" + "»·ØÁ¸Ò¹Õ" + "»¹" + "»¹Ñ´´Ò" + "»¹à»" + "»º" + "»Á" + "»Ã¡" + "»Ã¡µÔ" + "»Ã§" + "»Ã¹" + "»Ã¹¹ÔºÑµÔ" + "»Ã¹ÑÂ" + "»Ãº" + "»Ã»Ñ¡Éì" + "»ÃÁѵ¶ì" + "»ÃÁÒ¨ÒÃÂì" + "»ÃÁÒ³Ù" + "»ÃÁÒÀÔàÉ¡" + "»ÃÁÒÀÔä¸Â" + "»ÃÇ´" + "»Ãǹá»Ã" + "»ÃÇÒ·Õ" + "»ÃÊÔµ" + "»Ãͧ´Í§" + "»ÃÍ´" + "»ÃÍ·" + "»ÃÍÂ" + "»ÃÐ" + "»ÃСº" + "»ÃСǴ" + "»ÃСͺ" + "»ÃСѹ" + "»ÃСѺ" + "»ÃСÒÂ" + "»ÃСÒÃ" + "»ÃСÒÈ" + "»ÃСÒȹÕºѵÃ" + "»ÃСÒÈÔµ" + "»ÃСԴ" + "»ÃФº" + "»ÃФº»ÃÐ˧Á" + "»ÃФͧ" + "»ÃФÓ" + "»ÃШº" + "»ÃШǺ" + "»ÃШѡÉì" + "»ÃШÑ" + "»ÃШѹ" + "»ÃШҤ" + "»ÃШҹ" + "»ÃШÓ" + "»ÃШÔÁ" + "»ÃШØ" + "»ÃШëÍ»ÃÐá¨ë" + "»ÃЪ´" + "»ÃЪÇÃ" + "»ÃЪѹ" + "»ÃЪÒ" + "»ÃЪҪ¹" + "»ÃЪҸԻѵÂì" + "»ÃЪҸԻäµÂ" + "»ÃЪÒÀÔºÒÅ" + "»ÃЪԴ" + "»ÃЪØÁ" + "»Ãгµ" + "»ÃгÁ" + "»ÃгÒÁ" + "»ÃгԸҹ" + "»ÃгԸÔ" + "»Ãгյ" + "»Ãд¹" + "»Ãдǹ" + "»Ãд͹" + "»Ãдѡ»ÃÐà´Ô´" + "»Ãдѧ" + "»ÃдѺ" + "»ÃдÒ" + "»Ãдһ" + "»ÃдÒÉ" + "»ÃдԴ»ÃдÍÂ" + "»ÃдԷԹ" + "»ÃдÔÉ°Ò¹" + "»ÃдÔÉ°ì" + "»Ãдا" + "»Ãдب" + "»ÃдÙè" + "»ÃеÙ" + "»ÃжÁ" + "»Ãзǹ" + "»ÃзѡÉì" + "»Ãзѧ" + "»ÃзѴ" + "»ÃзѺ" + "»Ãзҹ" + "»ÃзԹ" + "»ÃзÔè¹" + "»Ãзջ" + "»Ãзع" + "»ÃзØÉ" + "»ÃзØÉÃéÒÂ" + "»Ãзéǧ" + "»Ãиҹ" + "»ÃиҹҸԺ´Õ" + "»ÃйÁ" + "»ÃйÍÁ" + "»ÃйջÃйÍÁ" + "»ÃлÃÒÂ" + "»ÃлÒ" + "»ÃоĵÔ" + "»ÃоĸÔì" + "»Ãоѷ¸ì" + "»Ãоѹ¸ì" + "»Ãоҵ" + "»ÃоÒÊ" + "»ÃоÒÌ" + "»ÃоԳ" + "»Ãоط¸ì" + "»ÃÐÀÑÊÊÃ" + "»ÃÐÀÒ" + "»ÃÐÀÒ¤ÒÃ" + "»ÃÐÀÒ¾" + "»ÃÐÀÒÊ" + "»ÃÐÁ§" + "»ÃÐÁÇ" + "»ÃÐÁÇÅ" + "»ÃÐÁÒ³" + "»ÃÐÁÒ·" + "»ÃÐÁØ¢" + "»ÃÐÁØ·" + "»ÃÐÁÙÅ" + "»ÃÐÂØ¡µì" + "»ÃÐÂØ·¸ì" + "»ÃÐÂÙÃ" + "»ÃÐÅÁ¾ì" + "»ÃÐÅͧ" + "»ÃÐÅÑÂ" + "»ÃÐÅÒµ" + "»ÃÐÇÃõ" + "»ÃÐÇÃõ¹ì" + "»ÃÐÇѵÔ" + "»ÃÐÇѵԡÒóì" + "»ÃÐÇѵÔÈÒʵÃì" + "»ÃÐÇÒµ" + "»ÃÐÇÒÅ" + "»ÃÐÇÒÊ" + "»ÃÐÇÔ§" + "»ÃÐÇÔª" + "»ÃÐÇÔµÃ" + "»ÃÐÇÕ³" + "»ÃÐÈÁ" + "»ÃÐÈÒʹì" + "»ÃÐÊ¡" + "»ÃÐʧ¤ì" + "»ÃÐʺ" + "»ÃÐʺ¡Òóì" + "»ÃÐʾ" + "»ÃÐÊÒ" + "»ÃÐÊÒ·" + "»ÃÐÊÒ¹" + "»ÃÐÊÔ·¸Ô¼Å" + "»ÃÐÊÔ·¸ÔÀÒ¾" + "»ÃÐÊÔ·¸Ôì" + "»ÃÐÊÙµÔ" + "»ÃÐËÁèÒ" + "»ÃÐËÂÑ´" + "»ÃÐËÅÒ´" + "»ÃÐËÅèÓ" + "»ÃÐËÒÃ" + "»ÃÐÎÒÁ" + "»ÃÐह" + "»ÃÐਡ" + "»ÃÐà¨Ô´»ÃÐà¨éÍ" + "»ÃÐà¨Õ´" + "»ÃÐà´" + "»ÃÐà´ÔÁ" + "»ÃÐà´Õ§" + "»ÃÐà´ÕëÂÇ" + "»ÃÐà´ÕëÂÇ»ÃдëÒÇ" + "»ÃÐà´ç¹" + "»ÃÐà·È" + "»ÃÐà·ÈÃÒª" + "»ÃÐà·Èä·Â" + "»ÃÐà·×ͧ" + "»ÃÐླÕ" + "»ÃÐàÀ·" + "»ÃÐàÁÔ¹" + "»ÃÐàdzÕ" + "»ÃÐàÇÈ" + "»ÃÐàÇȹì" + "»ÃÐàÊÃÔ°" + "»ÃÐá¡¡" + "»ÃÐá¨" + "»ÃÐâ¤Á" + "»ÃÐâ¤" + "»ÃÐ⪹ì" + "»ÃÐâÅÁ" + "»ÃÑ¡" + "»Ãѧ" + "»ÃѪÒ" + "»ÃѵÂصºÑ¹" + "»ÃѵÂغѹ" + "»Ãѹ" + "»ÃѺ" + "»ÃÑÁ»ÃÒ" + "»ÃÑȹÕ" + "»ÃÑÈÇì" + "»ÃÒ¡¯" + "»ÃÒ¡ÃÁ" + "»ÃÒ¡ÒÃ" + "»ÃÒ¤ÀÒÃ" + "»ÃÒ§" + "»ÃÒ§¤ì" + "»ÃÒ¨Õ¹" + "»ÃÒªÒ" + "»ÃÒªì" + "»ÃÒªÑÂ" + "»ÃÒªÔµ" + "»ÃÒ³" + "»ÃÒ³Õ" + "»ÃÒ´" + "»ÃÒ¹Õ" + "»ÃÒº" + "»ÃÒº´ÒÀÔàÉ¡" + "»ÃÒ»µì" + "»ÃÒÀ¾" + "»ÃÒÁ" + "»ÃÒÁÒÊ" + "»ÃÒÂ" + "»ÃÒö¹Ò" + "»ÃÒÃÀ" + "»ÃÒÃÁÀì" + "»ÃÒÈ" + "»ÃÒÈÃÑÂ" + "»ÃÒÈÒÃ" + "»ÃÒɳÕ" + "»ÃÒÉÒ³" + "»ÃÒÊÒ·" + "»ÃÒâÁª" + "»ÃÒâÁ·Âì" + "»ÃÓ" + "»ÃÔ" + "»ÃÔ¡" + "»ÃÔ¤³Ëì" + "»ÃÔ¨Ò¤" + "»ÃÔ¨ÒÃÔ¡Ò" + "»ÃÔ«ÖÁ" + "»ÃÔÒ" + "»ÃÔ³ÒÁ" + "»ÃÔ³Ò¡" + "»ÃÔµ" + "»ÃÔµµÐ" + "»ÃÔµÃ" + "»ÃÔ·ÃÃȹì" + "»ÃÔ·Ñȹì" + "»ÃÔ¹" + "»ÃÔ¹Êì" + "»ÃÔ¹Ô¾¾Ò¹" + "»ÃÔº" + "»ÃÔÁ³±Å" + "»ÃÔÁÑ·" + "»ÃÔÁÒ³" + "»ÃÔÁÒµÃ" + "»ÃÔÂѵÔ" + "»ÃÔÂÒÂ" + "»ÃÔÇÃõ" + "»ÃÔÇÒÊ" + "»ÃÔȹÒ" + "»ÃÔà©·" + "»ÃÔèÁ" + "»ÃÕªÒ" + "»ÃÕ´Ò" + "»ÃÕ´Ôì" + "»ÃÕÂÒ" + "»ÃÕè" + "»ÃÕê´" + "»ÃÖ¡ÉÒ" + "»Ã×Í" + "»Ã×ëÍ" + "»ÃØ" + "»Ãا" + "»ÃÙ´" + "»ÃÙê´»ÃêÒ´" + "»ÃÙê¿" + "»ÃàÁ¹·Ãì" + "»ÃâÅ¡" + "»ÃèÒ" + "»ÃëÍ" + "»Ä¨©Ò" + "»Äɮҧ¤ì" + "»Å¡" + "»Å§" + "»Å´" + "»ÅÇ¡" + "»ÅÍ¡" + "»ÅÍ´" + "»ÅÍ´ÀÑÂ" + "»Åͺ" + "»ÅÍÁ" + "»ÅÐ" + "»ÅÑ¡" + "»ÅÑ´" + "»ÅÑè§" + "»ÅÑê¡" + "»ÅÑê¡ÍÔ¹" + "»ÅÒ" + "»ÅÒµ" + "»ÅÒº" + "»ÅÒÂ" + "»ÅÒÇÒÌ" + "»ÅÒʹҡÒÃ" + "»ÅÒÊàµÍÃì" + "»ÅÔ§" + "»ÅÔ´" + "»ÅÔÇ" + "»ÅÔ⾸" + "»ÅÔèÁ" + "»ÅÔé¹" + "»ÅÕ" + "»ÅÕ¡" + "»Å×éÁ" + "»ÅØ¡" + "»ÅÙ¡" + "»Åè§" + "»Åèͧ" + "»ÅèÍÂ" + "»Åé¹" + "»Åéͧ" + "»Åé͹" + "»ÅéÓ" + "»Ç¡à»Õ¡" + "»Ç§" + "»Ç´" + "»ÇÒóÒ" + "»ÈØ" + "»Í" + "»Í¡" + "»Í§" + "»Í´" + "»Í¹" + "»Í¹´ì" + "»Íº" + "»ÍÂ" + "»ÍÃì" + "»ÍÃìµØà¡Ê" + "»Ð" + "»Ð¡¹" + "»Ð¡ÒÃѧ" + "»Ð¢ÒÇ" + "»Ð·Ð" + "»Ð·Ø" + "»Ð˧Ѻ" + "»ÐàËÅÒÐ" + "»ÐáÅèÁ" + "»Ðâŧ" + "»Ñ¡" + "»Ñ¡¡Ôè§" + "»Ñ¡ÉÒ" + "»Ñ¡ÉÒÇÊÒ¹" + "»Ñ¡ÉÔ³" + "»Ñ¡ÉÔ¹" + "»Ñ¡ÉÕ" + "»Ñ¡Éì" + "»Ñ¡à»éÒ" + "»Ñ§" + "»Ñ§ÊØ¡ØÅ" + "»Ñ¨¨Ñ¹µ¤ÒÁ" + "»Ñ¨¨Ñ¹µª¹º·" + "»Ñ¨¨Ñ¹µ»ÃÐà·È" + "»Ñ¨¨Ñ¹µì" + "»Ñ¨¨ÑÂ" + "»Ñ¨¨ÒÁÔµÃ" + "»Ñ¨¨ØºÑ¹" + "»Ñ¨¨ØÊÁÑÂ" + "»Ñ¨©Ò" + "»Ñ¨©ÔÁ" + "»Ñ¨à¨¡" + "»Ñ¨ÇѤ¤ÕÂì" + "»ÑÒ" + "»ÑËÒ" + "»Ñ´" + "»ÑµµÒ¹Õ" + "»ÑµµÒàÇÕÂ" + "»Ñ·Áì" + "»Ñ¹" + "»Ñº" + "»Ñ»¼ÒÊÐ" + "»ÑÊÊÒÇÐ" + "»ÑÊÊÒÊÐ" + "»Ñè¹" + "»Ñé¹" + "»Ñêº" + "»ÑêÁ" + "»Ñë§" + "»Ò" + "»Ò¡" + "»Ò¡¡Ò" + "»Ò¡Õʶҹ" + "»Ò§" + "»Ò¯ÔËÒÃÔÂì" + "»Ò°¡" + "»Ò°¡¶Ò" + "»Ò³ÒµÔºÒµ" + "»Ò´" + "»ÒµÔâÁ¡¢ì" + "»Ò·Ñ§¡Ò" + "»Ò·èͧâ¡ë" + "»Ò¹" + "»Ò»ÑÇ" + "»ÒÁ" + "»ÒÂÒÊ" + "»ÒÃÒªÔ¡" + "»ÒÃԩѵÃ" + "»ÒÃÔªÒµ" + "»ÒÃÕÊ" + "»ÒÃìࡵì" + "»ÒÅÕ" + "»ÒÅìÁ" + "»ÒÇ" + "»Ò˹ѹ" + "»ÒËÕè" + "»ÒâÁ¡¢ì" + "»Ó" + "»Ô¡¹Ô¡" + "»Ô§»Í§" + "»Ô®¡" + "»Ô´" + "»ÔµÒ" + "»ÔµÔ" + "»ÔµØ" + "»ÔµØ¦Òµ" + "»ÔµØÀÙÁÔ" + "»ÔµØÅÒ" + "»ÔÂÁÔµÃ" + "»ÔÂÐ" + "»ÔÈÒ¨" + "»ÔâµÃàÅÕÂÁ" + "»ÔâÂÃÊ" + "»Ôè¹" + "»Ôè¹âµ" + "»ÔèÁ" + "»Ôé§" + "»ÔéÁ" + "»ÔëÇ" + "»Õ" + "»Õ¡" + "»Õ¹" + "»Õº" + "»ÕÁÐâÇé" + "»ÕÈÒ¨" + "»Õè" + "»Õé" + "»Õê´" + "»Õêº" + "»Õë" + "»Ö¡" + "»Ö§" + "»Öè§" + "»Öé´" + "»Öë§" + "»×¹" + "»×é¹" + "»×ëÍ" + "»Ø" + "»Ø¡" + "»Ø¨©Ò" + "»Ø´" + "»Ø¶Øª¹" + "»Øº" + "»ØÂ" + "»ØâÃËÔµ" + "»ØèÁ" + "»Ø駡Õë" + "»ØéÁ" + "»Øê" + "»Øêº" + "»ØëÁ" + "»ØëÂ" + "»Ù" + "»Ùª¹Õºؤ¤Å" + "»Ùª¹ÕÂÇѵ¶Ø" + "»Ù´" + "»Ù¹" + "»ÙÁ" + "»Ùè" + "»ÙéÂÕé»ÙéÂÓ" + "»àdzÕ" + "»è¹" + "»èǧ" + "»èǹ" + "»èÇÂ" + "»èͧ" + "»èÒ" + "»èÒ¹" + "»èÒÂ" + "»èÒÇ" + "»éǹ" + "»éǹà»Õé¹" + "»éÍ" + "»éͧ" + "»éͧ¡Ñ¹" + "»é͹" + "»éÍÁ" + "»éÍÂ" + "»éÍá»é" + "»éÒ" + "»éÒ§" + "»éÒ¹" + "»éÒº" + "»éÒÂ" + "»éÓ" + "»êÍ¡¡Õé" + "»êÒº" + "»ëÍ" + "»ëÍÁ" + "»ëÒ" + "¼¡" + "¼¡Ò" + "¼¡ÒÂ" + "¼§" + "¼§¡" + "¼§Ð" + "¼§Ò´" + "¼¨§" + "¼¨" + "¼´" + "¼´Ø§" + "¼¹Ç¡" + "¼¹Çª" + "¼¹Ñ§" + "¼¹Ö¡" + "¼Á" + "¼Áºêͺ" + "¼Âͧ" + "¼ÃØÊÇÒ·" + "¼Å" + "¼ÅÐ" + "¼ÅÑ¡" + "¼ÅÑ´" + "¼ÅÑÇÐ" + "¼ÅÒ" + "¼ÅÒ¹ÔʧÊì" + "¼ÅÒ¼Å" + "¼ÅÒËÒÃ" + "¼ÅÔ" + "¼ÅÔµ" + "¼ÅÔµÀѳ±ì" + "¼ÅÕ¼ÅÒÁ" + "¼ÅÖ¡" + "¼ÅÖè§" + "¼ÅØ" + "¼Åا" + "¼ÅØ´" + "¼Åع" + "¼Åغ" + "¼ÅØÂ" + "¼ÅÙ" + "¼ÅçÍÂ" + "¼Ç¹" + "¼ÇÂ" + "¼ÇÒ" + "¼ÊÁ" + "¼ÊÒ¹" + "¼ÊÒÂ" + "¼Í¡" + "¼Í§" + "¼Í´" + "¼Íº" + "¼ÍÁ" + "¼ÍÇ´" + "¼ÍÙ¹" + "¼Ð" + "¼Ñ¡" + "¼Ñ§" + "¼Ñ´" + "¼Ñ¹" + "¼Ñ¹¼Ç¹" + "¼Ñº" + "¼ÑÇ" + "¼ÑÇÐ" + "¼Ò" + "¼Ò¡" + "¼Ò§" + "¼Ò³Ôµ" + "¼Ò´" + "¼ÒÂ" + "¼Ô" + "¼Ô§" + "¼Ô´" + "¼Ô¹" + "¼ÔÇ" + "¼Õ" + "¼Ö§" + "¼Öè§" + "¼Öé§" + "¼×¹" + "¼×è¹" + "¼Ø" + "¼Ø´" + "¼Ø¼§" + "¼Ù¡" + "¼Ùé" + "¼çÍÂ" + "¼èͧ" + "¼è͹" + "¼èÍÂ" + "¼èÒ" + "¼èÒ¹" + "¼èÒ¼ÍÁ" + "¼èÒÇ" + "¼éÒ" + "½¹" + "½ÃÑè§" + "½ÃÑè§àÈÊ" + "½ÍÂ" + "½Ñ¡" + "½Ñ§" + "½Ñ´" + "½Ñ¹" + "½Ñè§" + "½Ò" + "½Ò¡" + "½Ò§" + "½Ò´" + "½Ò¹" + "½ÒÂ" + "½Ôè¹" + "½Õ" + "½Ö¡" + "½×´" + "½×¹" + "½Øè¹" + "½Ù§" + "½èÍ" + "½èÒ" + "½èÒÂ" + "½éÒ" + "½éÒÂ" + "¾¡" + "¾§" + "¾§ÈÒÇ´ÒÃ" + "¾§Èì" + "¾¨¹Ò" + "¾¨¹Ò¹Ø¡ÃÁ" + "¾¨¹Òö" + "¾¨¹ÕÂì" + "¾¨¹ì" + "¾¨ÁÒ¹" + "¾¨Õ" + "¾Ò" + "¾ÒÅÍ" + "¾³Ôª" + "¾³ÔªÂì" + "¾´" + "¾¸Ù" + "¾¹Á" + "¾¹Ñ¡" + "¾¹Ñ¡§Ò¹" + "¾¹Ñ§" + "¾¹Ñ¹" + "¾¹ÑÊ" + "¾¹Ò" + "¾¹Ò´Ã" + "¾¹ÒÃÒÁ" + "¾¹ÒÅÑÂ" + "¾¹Ô´Ò" + "¾º" + "¾ÁèÒ" + "¾Â¹µì" + "¾ÂÈ" + "¾ÂÑ¡" + "¾ÂÑ¡¾àÂÔ´" + "¾ÂѤ¦Ò" + "¾ÂѤ¦Ô¹" + "¾ÂѤ¦Õ" + "¾ÂѤ¦ì" + "¾ÂѪ¹Ð" + "¾Âѵ" + "¾ÂѺ" + "¾Âҡóì" + "¾ÂÒ§¤ì" + "¾ÂÒ¸Ô" + "¾ÂÒ¹" + "¾ÂÒºÒ·" + "¾ÂÒºÒÅ" + "¾ÂÒÂÒÁ" + "¾ÂØ" + "¾Âا" + "¾ÂØËÂÒµÃÒ" + "¾ÂØËÐ" + "¾ÂØËàʹÒ" + "¾Ã" + "¾Ãµ" + "¾ÃÁ" + "¾ÃÃ" + "¾Ãä" + "¾Ãäì" + "¾Ãó" + "¾Ãó¹Ò" + "¾ÃÃÉ" + "¾ÃÃÉÒ" + "¾ÃÇ´" + "¾Ãǹ" + "¾ÃËÁ" + "¾ÃËÁ¨ÃÃÂì" + "¾ÃËÁ¨ÒÃÔ³Õ" + "¾ÃËÁ¨ÒÃÕ" + "¾ÃÍ´" + "¾ÃÐ" + "¾ÃÐÃÒªÇѧ" + "¾ÃÐͧ¤ì" + "¾ÃÐà¨éÒÍÂÙèËÑÇ" + "¾ÃÑ¡¾ÃéÍÁ" + "¾ÃÑ´" + "¾ÃÑè§" + "¾ÃÑè¹" + "¾ÃÒ¡" + "¾ÃÒ§" + "¾ÃÒ´" + "¾ÃÒ¹" + "¾ÃÒÂ" + "¾ÃÒÇ" + "¾ÃÒËÁ³ì" + "¾ÃÓ" + "¾ÃÔ¡" + "¾ÃÔ¹àµÍÃì" + "¾ÃÔº" + "¾ÃÔé§" + "¾ÃÔéÁ" + "¾ÃÕàÁÕÂÁ" + "¾ÃÕàÁÕÂÃì" + "¾ÃÖ§" + "¾ÃÖ¹" + "¾ÃÖº" + "¾Ã×´" + "¾ÃØ" + "¾ÃØ¡" + "¾Ãع" + "¾ÃØè§" + "¾ÃÙ" + "¾ÃÙ´" + "¾Ãèͧ" + "¾ÃèÍÁ¾ÃéÍ" + "¾ÃèÍÂ" + "¾ÃèÒ" + "¾ÃèÒ§" + "¾ÃèÓ" + "¾Ãéͧ" + "¾ÃéÍÁ" + "¾ÃéÍÁ¾ÃÑ¡" + "¾ÃéÍÂ" + "¾ÃéÒ" + "¾ÃéÓ" + "¾Ä¡ÉªÒµÔ" + "¾Ä¡É·Å" + "¾Ä¡ÉÃÒª" + "¾Ä¡ÉÈÒʵÃì" + "¾Ä¡ÉÒ" + "¾Ä¡Éà·Ç´Ò" + "¾Ä¡Éì" + "¾Ä²" + "¾Ä²Ò" + "¾Ä²Ò¨ÒÃÂì" + "¾Ä²Ô" + "¾Äµ" + "¾ÄµÔ" + "¾ÄµÔ¡ÃÃÁ" + "¾ÄµÔ¡Òóì" + "¾ÄµÔ¹ÑÂ" + "¾Ä·¸Ôì" + "¾Ä·¸ì" + "¾Ä¹µì" + "¾Ä¹·ì" + "¾ÄȨÔ" + "¾ÄȨԡÒ¹" + "¾ÄÉÀ" + "¾ÄÉÀÒ¤Á" + "¾ÄËÑÊ" + "¾ÄËÑʺ´Õ" + "¾Å" + "¾Å¡ÒÃ" + "¾Å¤ÇÒÁ" + "¾Åº" + "¾Åǧ" + "¾ÅÇѵ" + "¾ÅÈÖ¡ÉÒ" + "¾Åͧ" + "¾ÅÍ´" + "¾ÅÍÁá¾ÅÁ" + "¾ÅÍÂ" + "¾ÅÐ" + "¾Åѧ" + "¾Åѧ§Ò¹" + "¾ÅÑ´" + "¾Åѹ" + "¾ÅѺ" + "¾ÅѺ¾ÅÒ" + "¾ÅѺ¾ÅÖ§" + "¾ÅÑè¡" + "¾ÅÑè§" + "¾ÅÑèÇ" + "¾ÅÑé§" + "¾ÅÒ¡Ã" + "¾ÅÒ§" + "¾ÅÒ´" + "¾ÅÒ¸Ô¡ÒÃ" + "¾ÅÒ¹ÒÁÑÂ" + "¾ÅÒÁ" + "¾ÅÒÂ" + "¾ÅÒʵԡ" + "¾ÅÒÊÁÒ" + "¾ÅÒË¡" + "¾ÅÔ¡" + "¾ÅÔéÇ" + "¾ÅÕ" + "¾ÅØ" + "¾ÅØ¡" + "¾ÅØè¡" + "¾ÅØè§" + "¾ÅØéÂ" + "¾ÅÙ" + "¾ÅàÁ×ͧ" + "¾ÅàÃ×͹" + "¾ÅâÅ¡" + "¾ÅèÍÂ" + "¾ÅèÒ" + "¾ÅèÒ¹" + "¾ÅèÒÁ" + "¾ÅéÓ" + "¾Ç¡" + "¾Ç§" + "¾Ç¹" + "¾ÇÂ" + "¾Ê¡" + "¾ÊظÒ" + "¾ËÅ" + "¾ËÅâ¸Թ" + "¾ËØ" + "¾ËÙ" + "¾ËÙ¾¨¹ì" + "¾ËÙÊÙµ" + "¾Í" + "¾Í¡" + "¾Í§" + "¾Í·ÑÅ" + "¾ÍÃìµ" + "¾Ð" + "¾Ð¾Ô§" + "¾ÐÂÙ¹" + "¾ÐÃا¾ÐÃѧ" + "¾Ðǧ" + "¾ÐÇÑ¡¾Ðǹ" + "¾ÐÇéÒ¾ÐÇѧ" + "¾Ðͧ" + "¾ÐÍ×´¾ÐÍÁ" + "¾Ðà¹Õ§" + "¾Ðà¹éҾйÍ" + "¾ÐàÂÔº" + "¾ÐàÂÔº¾ÐÂÒº" + "¾Ðṧ" + "¾ÐâÅé" + "¾Ñ¡" + "¾Ñ¡µÃì" + "¾Ñ§" + "¾Ñ§§Ò" + "¾Ñ§¼×´" + "¾Ñ§¾ÇÂ" + "¾Ñ§¾Í¹" + "¾Ñ§¾Òº" + "¾Ñ§à¾Â" + "¾ÑªÃ" + "¾Ñ²¹Ð" + "¾Ñ²¹Ò" + "¾Ñ´" + "¾ÑµÃ" + "¾Ñ·¸ÊÕÁÒ" + "¾Ñ·ÂÒ" + "¾Ñ·Åا" + "¾Ñ¹" + "¾Ñ¹·Ò§" + "¾Ñ¹¸¡Ã³Õ" + "¾Ñ¹¸·Ô¾Âì" + "¾Ñ¹¸¹Ò¡ÒÃ" + "¾Ñ¹¸ºÑµÃ" + "¾Ñ¹¸ÁÔµÃ" + "¾Ñ¹¸Ð" + "¾Ñ¹¸Ø" + "¾Ñ¹¸Øì" + "¾Ñ¹¸ì" + "¾Ñº" + "¾ÑÅÅÀ" + "¾ÑÅÇѹ" + "¾ÑÇ" + "¾ÑÇÐ" + "¾ÑÈ´Õ" + "¾ÑÊ´Ø" + "¾ÑʵÃì" + "¾Ñʶҹ" + "¾Ò" + "¾Ò¡" + "¾Ò¡Âì" + "¾Ò§" + "¾Ò³" + "¾Ò³Ôª" + "¾Ò³ÔªÂì" + "¾Ò³Õ" + "¾Ò³Õ¹Õ" + "¾Ò´" + "¾Òµ" + "¾Ò·" + "¾Ò·Âì" + "¾Ò¸" + "¾Ò¸Ò" + "¾Ò¹" + "¾Ò¹Ã" + "¾ÒÁ" + "¾ÒÂ" + "¾ÒÂѾ" + "¾ÒÂØ" + "¾Òó" + "¾ÒÃÒ" + "¾ÒÃÒ¿Ô¹" + "¾ÒÃì" + "¾ÒÅ" + "¾ÒÅÕ" + "¾ÒÊ" + "¾ÒʹÒ" + "¾Òʹì" + "¾ÒÊØ¡ÃÕ" + "¾ÒÊàÇÔÃì´" + "¾Ò˹Ð" + "¾ÒËÐ" + "¾ÒËÒ" + "¾ÒËØ" + "¾ÒËØÃÑ´" + "¾ÒÌËÐ" + "¾Òà¹Å" + "¾ÒàËô" + "¾ÒàËÕÂÃ" + "¾ÒâÅ" + "¾Ó" + "¾Ó¹Ñ¡" + "¾Ô¡Å" + "¾Ô¡Ñ´" + "¾Ô¡ÑµÔ" + "¾Ô¡ÒÃ" + "¾Ô¡ØÅ" + "¾Ô¦Òµ" + "¾Ô¦à¹È" + "¾Ô§" + "¾Ô¨ÒóÒ" + "¾Ô¨Òóì" + "¾Ô¨ÔµÃ" + "¾ÔªÑÂ" + "¾ÔªÒ¹" + "¾ÔªÔµ" + "¾Ô««èÒ" + "¾Ô³" + "¾Ô¶Õ¾Ô¶Ñ¹" + "¾Ô·ÂÒ" + "¾Ô·Ñ¡Éì" + "¾Ô¸Ò¹" + "¾Ô¸Õ" + "¾Ô¹·Ø" + "¾Ô¹Íº¾Ôà·Ò" + "¾Ô¹ÑÂ" + "¾Ô¹ÒÈ" + "¾Ô¹Ô¨" + "¾Ô¹Ôµ" + "¾Ô¹ÔÈ" + "¾ÔºÑµÔ" + "¾ÔºÙÅ" + "¾Ô¾Áì" + "¾Ô¾Ñ¡¾Ô¾èǹ" + "¾Ô¾Ñ²¹ì" + "¾Ô¾Ò¡ÉÒ" + "¾Ô¾Ò¡Éì" + "¾Ô¾Ò·" + "¾Ô¾Ô¸" + "¾Ô¾Ô¸Àѳ±Ê¶Ò¹" + "¾Ô¾Ô¸Àѳ±ì" + "¾ÔÀ¾" + "¾ÔÁ¾ì" + "¾ÔÁÅ" + "¾ÔÁÒ¹" + "¾ÔÁØ¢" + "¾ÔÁàʹ" + "¾ÔÃÍ´" + "¾ÔÃÒº" + "¾ÔÃÒÅÑÂ" + "¾ÔÃÕé¾ÔäÃ" + "¾ÔÃس" + "¾ÔÃظ" + "¾ÔÅÒ»" + "¾ÔÅÒÊ" + "¾ÔÅÖ¡" + "¾ÔÅÖ¡¡Ö¡¡×Í" + "¾ÔÅÖ¡¾ÔÅÑè¹" + "¾ÔÈ" + "¾ÔÈǧ" + "¾ÔÈÇÒÊ" + "¾ÔÈÒÅ" + "¾ÔÈØ·¸Ôì" + "¾ÔÈØ·¸ì" + "¾ÔÉ" + "¾ÔɳØâÅ¡" + "¾ÔÉʧ" + "¾ÔÊ´ÒÃ" + "¾ÔÊÁÑÂ" + "¾ÔÊÑÂ" + "¾ÔÊÔ°" + "¾ÔÊØ·¸Ôì" + "¾ÔÊÙ¨¹ì" + "¾ÔËÒÃ" + "¾ÔÌÒÃ" + "¾Ôà¤ÃÒÐËì" + "¾ÔàÈÉ" + "¾Ô⡾Ôࡹ" + "¾Ôâ¤" + "¾Ôâø" + "¾ÔäÃ" + "¾ÔäÅ" + "¾Õ" + "¾Õª¤³Ôµ" + "¾Õ«Õ" + "¾ÕÃÐÁÔ´" + "¾Õè" + "¾Õé" + "¾Ö§" + "¾ÖÁ" + "¾ÖÁ¾Ó" + "¾Öè§" + "¾Öèº" + "¾×ª" + "¾×´" + "¾×é¹" + "¾×é¹·Õè" + "¾Ø" + "¾Ø¡" + "¾Ø§" + "¾Ø²" + "¾Ø²Ô" + "¾Ø´" + "¾Ø·¸" + "¾Ø·¸Ð" + "¾Ø·¸ÒÇÒÊ" + "¾Ø·¸Ô" + "¾Ø·ÃÒ" + "¾Ø·â¸è" + "¾Ø¸" + "¾Øè§" + "¾ØèÁ" + "¾ØéÂ" + "¾Ù" + "¾Ù´" + "¾Ù¹" + "¾Ùè" + "¾Ùé¹" + "¾à¹¨Ã" + "¾è¹" + "¾èǧ" + "¾èÍ" + "¾èÒ§" + "¾èÒ¹" + "¾èÒÂ" + "¾èÒËì" + "¾é¹" + "¾éÍ" + "¾éͧ" + "¾éÍÁ" + "¿¡" + "¿ÃÍ´ì" + "¿ÃÕ" + "¿ÅÍàù«ì" + "¿ÅÙÍÍÃÕ¹" + "¿Í¡" + "¿Í§" + "¿Í´" + "¿Í¹" + "¿Í¹µì" + "¿ÍÃìÁ" + "¿ÍÃìÁÒÅ´Õäδì" + "¿ÍÃìÁÒÅÔ¹" + "¿ÍÃìáÁµ" + "¿ÍÊ«ÔÅ" + "¿ÍÊ¿ÍÃÑÊ" + "¿ÍÊ࿵" + "¿Ñ¡" + "¿Ñ§" + "¿Ñ§¡ìªÑ¹" + "¿Ñ§¡ìªÑè¹" + "¿Ñ´" + "¿Ñ¹" + "¿Ñè¹" + "¿Ñé¹" + "¿Ò¡" + "¿Ò§" + "¿Ò´" + "¿Ò·ÍÁ" + "¿Ò¹" + "¿ÒÂ" + "¿ÒÃìÁ" + "¿ÒÊ«Ôʵì" + "¿Ô¡" + "¿Ô´" + "¿Ô¹áŹ´ì" + "¿Ôº" + "¿ÔÅ´ì" + "¿ÔÅÔ»»Ô¹Êì" + "¿ÔÅìÁ" + "¿ÔÇÊì" + "¿ÔÊÔ¡Êì" + "¿Õ¿èÒ" + "¿Õè" + "¿Õé" + "¿×¹" + "¿×Á" + "¿×é¹" + "¿Ø" + "¿Øµ" + "¿ØµºÍÅ" + "¿Ø¹" + "¿Øº" + "¿Ø¿Ð" + "¿ØÅÊá¡ê»" + "¿Øèº" + "¿ØèÁà¿×ÍÂ" + "¿Øé§" + "¿Ù" + "¿Ù¡" + "¿Ù¨Ô" + "¿Ù´" + "¿ÙÁ" + "¿ÙÁ¿ÒÂ" + "¿Ùè" + "¿èÍ" + "¿èͧ" + "¿è͹" + "¿èÒ§" + "¿èÒÁ" + "¿éÍ" + "¿éͧ" + "¿é͹" + "¿éÒ" + "À¤¹Õ" + "À¾" + "ÀÁÃ" + "ÀÂѹµÃÒÂ" + "Àõ" + "ÀÃÃ" + "ÀÃÃÂÒ" + "ÀÃÒ´Ã" + "ÀÃÔÂÒ" + "ÀǵѳËÒ" + "ÀÇѧ¤ì" + "ÀÑ¡´Õ" + "ÀÑ¡ÉÒ" + "ÀÑ¡ÉÒËÒÃ" + "Àѳ±ì" + "ÀѵµÒ¤ÒÃ" + "ÀѵµÒËÒÃ" + "ÀÑ·Ã" + "ÀѾ" + "ÀÑÂ" + "ÀÑÊ´Ò" + "ÀÑʵÃÒ" + "ÀÒ¤" + "ÀÒ¤Õ" + "ÀÒª¹Ð" + "ÀÒ³Ø" + "ÀÒ¾" + "ÀҾ¹µÃì" + "ÀÒÂ" + "ÀÒÃ" + "ÀÒáԨ" + "ÀÒôÕ" + "ÀÒõ" + "ÀÒÃÐ" + "ÀÒÃÒ" + "ÀÒÃâç" + "ÀÒǹÒ" + "ÀÒÇÐ" + "ÀÒÉ" + "ÀÒÉ¡" + "ÀÒɳì" + "ÀÒÉÒ" + "ÀÒÉÔµ" + "ÀÒÉÕ" + "ÀÒÊ¡Ã" + "ÀÒʹì" + "ÀÒÊÇÃ" + "ÀÔ¡¢Ò" + "ÀÔ¡¢Ò¨ÒÃ" + "ÀÔ¡¢Ø" + "ÀÔ¡¢Ø¹Õ" + "ÀÔ¡ÉÒ" + "ÀÔ¡ÉØ" + "ÀÔ¡ÉسÕ" + "ÀÔ§¤ÒÃ" + "ÀÔâ" + "ÀÔ¹·¹Ò¡ÒÃ" + "ÀÔ¹·ì" + "ÀÔÃÁÂì" + "Àت" + "Àت§¤ì" + "ÀØÁÃÒ" + "ÀØÁÃÔ¹" + "ÀØÁÃÕ" + "ÀÙ" + "ÀÙµ" + "ÀÙµÔ" + "ÀÙÁÔ" + "ÀÙÁÔ»ÃÐà·È" + "ÀÙÁÔÀÒ¤" + "ÀÙÁÔÅÓà¹Ò" + "ÀÙÁÔÈÒʵÃì" + "ÀÙÁÕ" + "ÀÙÃÔ" + "ÀÙÃÕ" + "ÀÙÇ´Å" + "ÀÙǹҶ" + "ÀÙÇ๵Ã" + "ÀÙÇä¹Â" + "ÀÙÉÒ" + "ÀÙÉÔµ" + "ÀÙà¡çµ" + "ÀÙè" + "Á¡" + "Á¡Ã" + "Á¡ÃÒ¤Á" + "Á¡Ø®" + "Á¡ØÅ" + "Á§¡Ø®" + "Á§¤Å" + "Á³±¡" + "Á³±»" + "Á³±Å" + "Á³Õ" + "Á³à±ÕÂÃ" + "Á´" + "ÁµÔ" + "Á¸Ø" + "Á¹" + "Á¹µÃÕ" + "Á¹µÃì" + "Á¹µì" + "Á¹ÊÔ¡ÒÃ" + "Á¹ÑÊ" + "Á¹ÑÊÇÕ" + "Á¹ÔÅÒ" + "Á¹ØɪҵÔ" + "Á¹ØɸÃÃÁ" + "Á¹ØÉÂÈÒʵÃì" + "Á¹ØÉÂÊÑÁ¾Ñ¹¸ì" + "Á¹ØÉÂà·¾" + "Á¹ØÉÂâÅ¡" + "Á¹ØÉÂì" + "Á¹à·ÕÂÃ" + "ÁÂØÃÒ" + "ÁÂØÃÕ" + "ÁÂØàÃÈ" + "ÁÂÙÃ" + "ÁÃ" + "Ááµ" + "ÁóÐ" + "Áóì" + "Áô¡" + "ÁÃä" + "ÁÃä¹Ò¡" + "ÁÃäÒ" + "ÁÃÃÂÒ" + "ÁÃÃÂÒ·" + "ÁÃÊØÁ" + "ÁĤ" + "ÁĵÂÙ" + "ÁÅ" + "ÁÅ·Ô¹" + "ÁÅÒÂ" + "ÁÅÒÂÙ" + "ÁÅéÒ§" + "Áǹ" + "ÁÇÂ" + "ÁÇÅ" + "ÁË¡ÃÃÁ" + "ÁËó¾" + "ÁËÃó¾" + "ÁËÃʾ" + "ÁËѹµâ·É" + "ÁËѹµì" + "ÁËÑȨÃÃÂì" + "ÁËÒ" + "ÁËÒª¹" + "ÁËÒ´àÅç¡" + "ÁËÒ´ä·Â" + "ÁËÒµÁÐ" + "ÁËÒÂÒ¹" + "ÁËÒÃÒª" + "ÁËÒÇÔ·ÂÒÅÑÂ" + "ÁËÒÈÒÅ" + "ÁËÒÊÁØ·Ã" + "ÁËÒËÔ§¤Øì" + "ÁËÔ§Êì" + "ÁËÔ´Å" + "ÁËÔÁÒ" + "ÁËÖÁÒ" + "ÁÍ" + "Áͧ" + "Áͧâ¡ÅÍ´ì" + "ÁÍ" + "ÁÍ´" + "Á͹ÔàµÍÃì" + "Áͺ" + "ÁÍÁ" + "ÁÍÁáÁÁ" + "ÁÍÃͤâ¤" + "ÁÍÃì¿Õ¹" + "ÁÍÅâ·Ê" + "ÁÍÊâ¤Çì" + "ÁÍàµÍÃì" + "ÁÐ" + "ÁСÃÙ´" + "ÁС͡" + "ÁСÐâùÕ" + "ÁТÇÔ´" + "ÁТÒÁ" + "ÁТèǧ" + "ÁФèÒ" + "ÁЧÑèÇ" + "ÁЧØÁÁЧÒËÃÒ" + "ÁЫҧ" + "Áдѹ" + "ÁекÐ" + "ÁеÖè§" + "ÁеÙÁ" + "Áеéͧ" + "ÁйÒÇ" + "ÁлÃÒ§" + "ÁоÃéÒÇ" + "ÁоÅѺ" + "Áоٴ" + "ÁÐÁèǧ" + "ÁÐÂÁ" + "ÁÐÃÐ" + "ÁÐÃ×¹" + "ÁÐÅСÍ" + "ÁÐÅÔ" + "ÁÐËÐËÁÑ´" + "ÁÐÎÍ¡¡Ò¹Õ" + "ÁÐà¡Å×Í" + "ÁÐà¢×Í" + "ÁÐà´×èÍ" + "ÁÐà¿×ͧ" + "ÁÐàÃç§" + "ÁÐàÊç§" + "ÁÐáÁ" + "ÁÐâç" + "ÁÐä¿" + "ÁÑ¡" + "ÁÑ¡¡ÐÊѹ" + "ÁѤ¤Øà·È¡ì" + "ÁѤ¹Ò¡" + "ÁѦÇÒ¹" + "Áѧ¡Ã" + "Áѧ¤Ø´" + "Áѧ¤èÒ" + "ÁѨ¨Ø" + "ÁѨ©Ò" + "ÁѪ¬ÔÁÂÒÁ" + "ÁѪ¬ÔÁÇÑÂ" + "ÁѪ¬ÔÁÒ" + "Áѳ±¹ÈÔÅ»ì" + "Áѳ±¹Ò" + "ÁÑ´" + "ÁѵÊÂÒ" + "ÁÑ·¹Ð" + "ÁÑ·¹ÕÂÐ" + "ÁÑ·ÂÐ" + "ÁѸ°ҹ" + "ÁѸÂÁ" + "ÁѸÂÑʶì" + "Áѹ" + "ÁѺ" + "ÁÑÁÁÕè" + "ÁÑÂ" + "ÁÑŵÔ" + "ÁÑÅÅÔ¡Ò" + "ÁÑÇ" + "ÁÑÈÂÒ" + "ÁÑʵÒÃì´" + "ÁÑÊÁÑè¹" + "ÁÑÊÂÔ´" + "ÁÑÊÅÔ¹" + "ÁÑè§" + "ÁÑè¹" + "ÁÑèÇ" + "ÁÒ" + "ÁÒ¡" + "ÁÒ¡¡ÇèÒ" + "ÁÒ¦ºÙªÒ" + "ÁÒ¦Ð" + "ÁÒ³¾" + "ÁÒ³ÇÔ¡Ò" + "ÁÒ´" + "ÁÒµÃ" + "ÁҵáÒÃ" + "Áҵðҹ" + "ÁÒµÃÒ" + "ÁÒµØ" + "ÁÒµØÅÒ" + "ÁÒ¹" + "ÁÒ¹¾" + "ÁÒ¹Ð" + "ÁÒ¹Ôµ" + "ÁÒ¹Õ" + "ÁÒ¹ØÉ" + "ÁÒ¹ØÉÂÇÔ·ÂÒ" + "ÁÒºµÒ¾Ø´" + "ÁÒÂ" + "ÁÒÂÒ" + "ÁÒÂÒÇÕ" + "ÁÒÃ" + "ÁÒä" + "ÁÒôÃ" + "ÁÒôÒ" + "ÁÒÃÂÒ" + "ÁÒÃÂÒ·" + "ÁÒÃÈÃÕ" + "ÁÒÃص" + "ÁÒÅÑÂ" + "ÁÒÅÒàÃÕÂ" + "ÁÒÅÕ" + "ÁÒÈ" + "ÁÒÊ" + "ÁÒÊàµÍÃì" + "ÁÒàÅà«ÕÂ" + "ÁÒâ¤Ã" + "ÁÒ⹪ì" + "ÁÓàÅ×ͧ" + "ÁÔ" + "ÁÔ¤ÊÑÕ" + "ÁÔ¨©Ò" + "ÁÔ´" + "ÁÔµÃ" + "ÁÔµÔ" + "ÁԶعÒ¹" + "ÁÔÂѹÁèÒ" + "ÁÔÅÅÔ¡ÃÑÁ" + "ÁÔÅÅÔºÒÃì" + "ÁÔÅÅÔÅÔµÃ" + "ÁÔÅÅÔàÁµÃ" + "ÁÔÅÒµ" + "ÁÔÇÊÔ¤" + "ÁÔÊ" + "ÁÔÊ«Ò" + "ÁÔÊàµÍÃì" + "ÁÔàµÍÃì" + "ÁÔè§" + "ÁÔéÁ" + "ÁÕ" + "ÁÕ´" + "ÁÕ¹" + "ÁÕ¹Ò¤Á" + "ÁÕà·¹" + "ÁÕè" + "ÁÕèÊÑéÇ" + "ÁÖ§" + "ÁÖ¹" + "Á×´" + "Á×¹" + "Á×Í" + "Á×è¹" + "Á×éÍ" + "ÁØ" + "ÁØ¡" + "ÁØ¡´Ò" + "ÁØ¡´ÒËÒÃ" + "ÁØ¢" + "Áا" + "ÁبÅÔ¹·ì" + "ÁØ´" + "Áص¡Ô´" + "ÁØ·ÔµÒ" + "ÁØ·Ø" + "ÁعԹ·Ãì" + "ÁعÕ" + "Áغ" + "ÁغÁÔº" + "ÁØÁ" + "ÁØÊÅÔÁ" + "ÁØÊÒ" + "ÁØè§" + "ÁØè¹" + "ÁØèÂ" + "ÁØé§" + "ÁÙ¡" + "ÁÙµÃ" + "ÁÙ¹" + "ÁÙÁÁÒÁ" + "ÁÙÅ" + "ÁÙŤèÒ" + "ÁÙÅ°Ò¹" + "ÁÙŹԸÔ" + "ÁÙà«Í" + "ÁÙè·Ùè" + "ÁÙèÅÕè" + "ÁàËÈÇÃ" + "ÁàËÊÕ" + "ÁàËÒÌÒÃ" + "Áâ¹" + "Áâ¹ÃÒËì" + "Áâ¹ÊÒàÃè" + "ÁâËÃʾ" + "ÁâËÃз֡" + "ÁâËÃÕ" + "ÁâËÌÒÃ" + "Áèǧ" + "Áèǹ" + "Áè͵éÍ" + "ÁèÍÂ" + "ÁèÍÎèÍÁ" + "ÁèÒ¹" + "ÁèÒÂ" + "Áéǹ" + "ÁéÇÂ" + "ÁéÒ" + "ÁéÒ¹" + "ÁéÒÁ" + "¡" + "¡Âèͧ" + "§" + "§âÂè" + "µÔ" + "¶ҡÃÃÁ" + "¹µÃì" + "¹µì" + "ÂÁ" + "ÂÁ¡" + "ÂÃç" + "ÂÅ" + "Âǧ" + "ÂÇ´" + "Âǹ" + "ÂǺ" + "ÂÈ" + "ÂÍ" + "ÂÍ¡" + "Âͧ" + "ÂÍ´" + "Â͹" + "Âͺ" + "ÂÍÁ" + "ÂÐ" + "ÂÑ¡" + "ÂÑ¡¢Ô¹Õ" + "ÂÑ¡¢ì" + "ÂÑ¡ÂÍ¡" + "ÂÑ¡ÉÔ³Õ" + "ÂÑ¡ÉÕ" + "ÂÑ¡Éì" + "Âѧ" + "ÂÑ´" + "ÂÑ´àÂÕ´" + "Âѹ" + "ÂѹµÃ¡ÃÃÁ" + "ÂѹµÃì" + "Âѹµì" + "ÂѺ" + "ÂÑè§Â×¹" + "ÂÑè¹" + "ÂÑèÇ" + "ÂÑé§" + "ÂÑéÇ" + "ÂÑéÇàÂÕéÂ" + "ÂÒ" + "ÂÒ¡" + "ÂÒ§" + "ÂÒ¨¡" + "ÂÒ´" + "ÂÒ´Ò" + "ÂÒµÃ" + "ÂÒµÃÒ" + "ÂÒ¹" + "ÂÒ¹Õ" + "ÂÒº" + "ÂÒºéÒ" + "ÂÒÁ" + "ÂÒÂ" + "ÂÒÇ" + "ÂÓ" + "ÂÔ¡" + "ÂÔ§" + "ÂÔ¹" + "ÂÔº" + "ÂÔ»«ÑÁ" + "ÂÔ»«Õ" + "ÂÔÁ¹Òʵԡ" + "ÂÔÇ" + "ÂÔËÇÒ" + "ÂÔè§" + "ÂÔéÁ" + "ÂÕ" + "ÂÕ¹" + "ÂÕÃÒ¿" + "ÂÕè" + "ÂÕèÊ¡" + "ÂÕèʧ" + "ÂÕèÊØè¹" + "ÂÕèÊèÒ¹" + "ÂÕèËÃÐ" + "ÂÕèËÃèÒ" + "ÂÕèËéÍ" + "ÂÖ¡Â×Í" + "ÂÖ´" + "Â×´" + "Â×¹" + "Â×Á" + "Â×è¹" + "Â×éÍ" + "ÂØ" + "ÂØ¡µì" + "Âؤ" + "ÂؤÅ" + "Âا" + "ÂØ´" + "ÂصÔ" + "ÂصԸÃÃÁ" + "ÂØ·¸" + "ÂØ·¸¡ÒÃ" + "ÂØ·¸¹Ò" + "ÂØ·¸ì" + "Âط⸻¡Ã³ì" + "Âغ" + "Âؾ´Õ" + "Âؾ§" + "ÂؾÃÒª" + "ÂؾàÂÒÇì" + "ÂؾàÃÈ" + "ÂØÃÂÒµÃ" + "ÂØǪ¹" + "ÂØâû" + "ÂØè§" + "ÂØèÁÂèÒÁ" + "ÂØèÂ" + "ÂØé§" + "ÂØéÂ" + "ÂÙ§" + "ÂÙ¹Ô¡«ì" + "ÂÙÃÂÒµÃ" + "ÂÙÃÔ¡" + "ÂÙÊà«ÍÃì" + "ÂÙàùÑÊ" + "ÂÙàÃà¹ÕÂÁ" + "ÂÙâ¡ÊÅÒàÇÕÂ" + "ÂÙâ´" + "ÂÙâÃ" + "ÂÙè" + "ÂâÊ" + "Âè¹" + "ÂèÍ" + "Âèͧ" + "ÂèÍÁ" + "ÂèÍÂ" + "ÂèÐ" + "ÂèÒ" + "ÂèÒ§" + "ÂèÒ¹" + "ÂèÒÁ" + "ÂèÓ" + "ÂéÇÂ" + "Âé͹" + "ÂéÍÁ" + "ÂéÍÂ" + "ÂéÒÂ" + "ÂéÓ" + "á" + "ç" + "ç¤Çѵ¶Ø" + "ç¤ì" + "è¹Ò" + "èԵ" + "èàè" + "èàÅ¢" + "ó" + "óѰ" + "ô" + "ôÕ" + "õÐ" + "õÔ" + "ö" + "öàÁÅì" + "ù" + "ú" + "þ" + "þÕ" + "ÃÁ" + "ÃÁ³Õ" + "ÃÁ³ÕÂì" + "ÃÁÂì" + "ÃÂÒ§¤ì" + "ÃÇ¡" + "Ãǧ" + "ÃÇ´" + "Ãǹ" + "ÃǹàÃ" + "ÃǺ" + "ÃÇÁ" + "ÃÇÂ" + "ÃÇÔ" + "ÃÇÕ" + "ÃȹÒ" + "ÃÊ" + "ÃʹÒ" + "ÃÊÒ¹àÇ·" + "ÃÊÔ¡" + "ÃËÑÊ" + "ÃËÔµ" + "ÃÍ" + "ÃÍ¡" + "Ãͧ" + "Ãͧà§ç§" + "ÃÍ´" + "Ã͹" + "Ãͺ" + "Ãͺ¤Íº" + "ÃÍÁ" + "ÃÍÂ" + "ÃÐ" + "ÃСÓ" + "ÃФ¹" + "ÃФÒÂ" + "ÃЦѧ" + "ÃЧÁ" + "ÃЧѺ" + "ÃдÁ" + "ÃдѺ" + "ÃдÙ" + "Ãз´" + "ÃзÁ" + "ÃзÇÂ" + "Ãз֡" + "ÃйҴ" + "ÃйҺ" + "ÃйÒÇ" + "Ãкº" + "ÃкÁ" + "Ãкͺ" + "ÃкѺ" + "ÃкÒ" + "ÃкҴ" + "ÃкÒÂ" + "ÃкÓ" + "ÃкÔÅ" + "Ãк×Í" + "ÃкØ" + "ÃÐÂÐ" + "ÃÐÂѺ" + "ÃÐÂÓ" + "ÃÐÂÔº" + "ÃÐÂéÒ" + "ÃÐÃÔ¡" + "ÃÐÅÍ¡" + "ÃÐÅÖ¡" + "ÃÐÇѧ" + "ÃÐÇÒ§" + "ÃÐËÇèÒ§" + "ÃÐËØÂ" + "ÃÐÍÒ" + "ÃÐÍØ" + "ÃÐ๹" + "ÃÐà¹ÃйҴ" + "ÃÐà¹Õ´" + "ÃÐàºÔ´" + "ÃÐàºÕ§" + "ÃÐàºÕ¹" + "ÃÐàºÕº" + "ÃÐàºç§" + "ÃÐàÁÕÂÃ" + "ÃÐàËÂ" + "ÃÐàËÔ´" + "ÃÐàËç¨" + "ÃÐá¤Ð" + "ÃÐá§é" + "ÃÐṧ" + "ÃÐáǧ" + "ÃÑ¡" + "ÃÑ¡¢ì" + "ÃÑ¡ºÕé" + "ÃÑ¡ÉÒ" + "ÃÑ¡Éì" + "ÃÑ¡áÃé" + "Ãѧ" + "ÃѧÊÔµ" + "ÃѧÊÕ" + "Ãѧá¡" + "Ãѧá¤" + "ÃѨ©Ò" + "ÃѪ" + "ÃѪ®ÒÀÔàÉ¡" + "ÃѪ´ÒÀÔàÉ¡" + "ÃѪ¹Õ" + "ÃѨǹ" + "ÃÑ°" + "ÃÑ°ºÒÅ" + "ÃÑ°ºØÃØÉ" + "ÃÑ°»ÃÐÈÒʹÈÒʵÃì" + "ÃÑ°»ÃÐËÒÃ" + "ÃÑ°Á¹µÃÕ" + "ÃÑ°ÇÔÊÒË¡Ô¨" + "ÃÑ°ÈÒʵÃì" + "ÃÑ°ÊÀÒ" + "ÃÑ´" + "Ãѵ" + "ÃѵµÔ" + "Ãѵ¹" + "Ãѵ¹µÃÑÂ" + "Ãѵ¹ºÑÅÅѧ¡ì" + "Ãѵ¹Ð" + "Ãѵ¹Ò" + "Ãѵ¹â¡ÊÔ¹·Ãì" + "Ãѵ¹ì" + "ÃѶÂÒ" + "Ãѹ" + "Ãѹ·´" + "ÃѺ" + "ÃѺÃͧ" + "ÃÑÁÀÒ" + "ÃÑÁÁÕè" + "ÃÑÇ" + "ÃÑÈÁÔÁѵ" + "ÃÑÈÁÔÁÒ¹" + "ÃÑÈÁÕ" + "ÃÑɮҡÃ" + "ÃÑÊà«ÕÂ" + "ÃÑèÇ" + "ÃÑé§" + "ÃÑé¹" + "ÃÑéÇ" + "ÃÒ" + "ÃÒ¡" + "ÃÒ¡ÉÊ" + "ÃÒ¤Ð" + "ÃÒ¤Ò" + "ÃÒ¤Ô¹" + "ÃÒ¤Õ" + "ÃÒ§" + "ÃÒ§ªÒ§" + "ÃÒ§ÇÑÅ" + "ÃÒª" + "ÃÒª¡ÒÃ" + "ÃÒª¹Ô¡ØÅ" + "ÃÒªºÑ³±ÔµÂʶҹ" + "ÃÒªÂì" + "ÃҪǧÈì" + "ÃÒªÇâç¡ÒÃ" + "ÃÒªÊÕÁÒ" + "ÃÒªÊÕËì" + "ÃҪѹÂì" + "ÃÒªÒ" + "ÃÒªÒ¸ÔÃÒª" + "ÃÒªÒÀÔàÉ¡" + "ÃÒªÒÇ´Õ" + "ÃÒªÔ¹Ô¡ØÅ" + "ÃÒªÔ¹Õ" + "ÃÒªÔ¹Ù»¶ÑÁÀì" + "ÃÒªÙ»¶ÑÁÀì" + "ÃÒªÙ»âÀ¤" + "ÃÒ" + "ÃÒ´" + "ÃÒµ" + "ÃÒµÃ" + "ÃÒµÃÕ" + "ÃÒ¹" + "ÃÒº" + "ÃÒ¾³ÒÊÙÃ" + "ÃÒÁ" + "ÃÒÁ¤Óá˧" + "ÃÒÁÊÙÃ" + "ÃÒÁÑ" + "ÃÒÁÒ" + "ÃÒÁÒ¸Ôº´Õ" + "ÃÒÁà¡ÕÂõÔì" + "ÃÒÂ" + "ÃÒ¡ÒÃ" + "ÃÒ§ҹ" + "ÃÒÇ" + "ÃÒÇÕ" + "ÃÒÈÕ" + "ÃÒÉ®Ã" + "ÃÒÉ®Ãì" + "ÃÒËÙ" + "ÃÒહ·Ãì" + "ÃÒ⪺ÒÂ" + "ÃÒâªÇÒ·" + "ÃÓ" + "ÃÓ¤Ò" + "ÃӨǹ" + "ÃӾѹ" + "ÃÓ¾Ö§" + "ÃÓÁйÒ" + "ÃÓÅÖ¡" + "ÃÓà¾Â" + "ÃÔ" + "ÃÔ¡" + "ÃÔ´Êմǧ" + "ÃÔ¹" + "ÃÔº" + "ÃÔººÔé¹" + "ÃÔÁ" + "ÃÔÉÂÒ" + "ÃÔé¹" + "ÃÔéÇ" + "ÃÕ" + "ÃÕ¨ÔÊ·ÃÕ" + "ÃÕ´" + "ÃÕµ" + "ÃÕº" + "ÃÕÁ" + "ÃÕÇÔÇ" + "ÃÕàÊÔÃìª" + "ÃÕàÊÔÃì«" + "ÃÕâÁµ" + "ÃÕè" + "ÃÕé" + "ÃÖ§" + "ÃÖé§" + "Ã×è¹" + "Ã×éÍ" + "ÃØ" + "ÃØ¡" + "ÃØ¡¢¡Ð" + "ÃØ¡¢ªÒµÔ" + "ÃØ¡¢ÁÙÅ" + "ÃØ¡¢à·Ç´Ò" + "ÃØ¡¢ì" + "ÃاÃѧ" + "ÃبÔ" + "ÃبÕ" + "ÃØ´" + "Ãص" + "ÃØ·¸ì" + "ÃØ·Ã" + "Ãع" + "Ãعáç" + "ÃغÃÙè" + "ÃØÁ" + "ÃØɯì" + "ÃØÊâ«" + "ÃØè§" + "ÃØè¹" + "ÃØèÁ" + "ÃØèÁÃèÒÁ" + "ÃØèÂ" + "ÃØé§" + "ÃÙ" + "ÃÙ´" + "ÃÙ»" + "ÃÙÁÒà¹ÕÂ" + "ÃÙÊà«ÕÂ" + "ÃÙàÁà¹ÕÂ" + "ÃÙàÅçµµì" + "ÃÙè" + "ÃÙé" + "ÃÙé¨Ñ¡" + "ÃâË" + "Ãè¹" + "ÃèÁ" + "Ãèǧ" + "Ãèǹ" + "ÃèÇÁ" + "ÃèÍ" + "Ãèͧ" + "Ãè͹" + "ÃèÍÂ" + "ÃèÒ" + "ÃèÒ§" + "ÃèÒ¹" + "ÃèÒÂ" + "ÃèÓ" + "ÃèÓÃÇÂ" + "Ãé¹" + "Ãéͧ" + "Ãé͹" + "ÃéÍÂ" + "ÃéÒ" + "ÃéÒ§" + "ÃéÒ¹" + "ÃéÒÂ" + "ÃéÒÇ" + "Ä¡Éì" + "ĪÒ" + "ĪØ" + "ij" + "Ä´Õ" + "Ä´Ù" + "ĵ" + "Ä·¸Ò" + "Ä·¸Ôì" + "Ä·ÑÂ" + "ÄÉÀ" + "ÄÉÕ" + "Äå" + "ŧ" + "Å´" + "Å´Ò" + "Å´ÒÇÑÅÂì" + "Ź" + "ź" + "žºØÃÕ" + "ÅÁ" + "ÅŹÒ" + "ÅÅÒ¯" + "ÅÅÔµ" + "ÅÇ¡" + "Åǧ" + "ÅÇ´" + "ÅǹÅÒÁ" + "ÅǹÐ" + "ÅÇÐ" + "ÅËØ" + "ÅÍ¡" + "ÅÍ¡ÒÃÔ·ÖÁ" + "Åͧ" + "Åͧ¡Í§" + "Åͧ¨Ô¨Ù´" + "ÅÍ´" + "Å͵àµÍÃÕè" + "Å͹" + "Å͹´Í¹" + "Åͺ" + "ÅÍÁ" + "ÅÍÂ" + "ÅÍÍ" + "ÅÐ" + "ÅФÃ" + "ÅеԨٴ" + "ÅеԹ" + "ÅкѴ" + "ÅÐÁÑè§" + "ÅÐÁع" + "ÅÐÁèÍÁ" + "ÅÐÁéÒÂ" + "ÅÐÅÇÂ" + "ÅÐËÁÒ´" + "ÅÐËÒ¹" + "ÅÐËØè§" + "ÅÐÍͧ" + "ÅÐÍÒÂ" + "ÅÐàÁÍ" + "ÅÐàÁÒÐ" + "ÅÐàÁÔ´" + "ÅÐàÁÕ´" + "ÅÐàŧ" + "ÅÐàÅÔ§" + "ÅÐàÅÕ´" + "ÅÐàǧ" + "ÅÐàËÕèÂ" + "ÅÐàÍÕ´" + "ÅÐáÇ¡" + "ÅÐâÁº" + "ÅÐâÇé" + "ÅÐäÁ" + "ÅÑ¡" + "ÅÑ¡¢³Ð" + "ÅѡɳÐ" + "ÅÑ¡ÉÁÕ" + "ÅѤ¤Ð" + "ÅѤ¹Ò" + "ÅѤ¹ì" + "Åѧ" + "ÅѧàÅ" + "ÅѪªÒ" + "ÅѪªÕ" + "ÅѨ¡Ã" + "ÅѨ¹ì" + "ÅÑ©" + "ÅÑ©¡Ã" + "ÅÑ©¹ì" + "ÅÑ´" + "ÅÑ´Ò" + "ÅÑ·¸Ô" + "ÅÑ·¸ì" + "Åѹ" + "ÅѺ" + "ÅѾ¸ì" + "ÅÑÂ" + "ÅÑè¹" + "ÅÑè¹·Á" + "ÅÒ" + "ÅÒ¡" + "ÅÒ§" + "ÅÒ" + "ÅÒ´" + "ÅÒ¹" + "ÅÒº" + "ÅÒ»" + "ÅÒÀ" + "ÅÒÁ" + "ÅÒÁ¡" + "ÅÒÂ" + "ÅÒÂÊ×Í" + "ÅÒŹÐ" + "ÅÒÅÊ" + "ÅÒÇ" + "ÅÒÇ¡" + "ÅÒÇѳÂì" + "ÅÒÇÒ" + "ÅÒʹÐ" + "ÅÓ" + "ÅӴǹ" + "ÅӴѺ" + "ÅÓºÒ¡" + "ÅӾǹ" + "ÅӾͧ" + "ÅӾѧ" + "ÅÓÀآѹ" + "ÅÓÂͧ" + "ÅÓà¤ç" + "ÅÓà¨Õ¡" + "ÅÓà¹Ò" + "ÅÓà¾Ò" + "ÅÓàÅÔ¡" + "ÅÓàÅÕ§" + "ÅÓ⾧" + "ÅÓäÂ" + "ÅÔ" + "ÅÔ¡ä¹µì" + "ÅÔ¢ÊÔ·¸Ôì" + "ÅÔ¢Ôµ" + "ÅÔ§" + "ÅÔ§¡ì" + "ÅÔ§¤ì" + "ÅÔ´" + "ÅÔµ" + "ÅÔµÁÑÊ" + "ÅÔµÃ" + "ÅÔ¹Ô¹" + "ÅÔº" + "ÅÔ»´Ò" + "ÅÔ»µì" + "ÅԻʵԡ" + "ÅÔ»Ô" + "ÅÔ¿µì" + "ÅÔÅÔµ" + "ÅÔÇ" + "ÅÔʧ" + "ÅÔà¡" + "ÅÔàºÕÂ" + "ÅÔàÇÍÃì¾ÙÅ" + "ÅÔèÁ" + "ÅÔèÇ" + "ÅÔé¹" + "ÅÔ鹨Õè" + "ÅÔéÁ" + "ÅÕ" + "ÅÕ¡" + "Åչء«ì" + "ÅÕº" + "ÅÕÅÒ" + "ÅÕÅÒÈ" + "ÅÕè" + "ÅÕé" + "ÅÖ¡" + "ÅÖ§¤ì" + "Å×´" + "Å׺" + "Å×Á" + "Å×Í" + "Å×è¹" + "Å×èÍ" + "Å×é¹" + "Å×éÍ" + "ÅØ" + "ÅØ¡" + "Åا" + "ÅØÂ" + "ÅØè¹" + "ÅØèÁ" + "ÅØèÂ" + "ÅØé§" + "ÅØéÂ" + "ÅÙ¡" + "ÅÙ¡¤éÒ" + "ÅÙ¡ºÒÈ¡ì" + "ÅÙº" + "ÅÙè" + "Åç͡ࡵ" + "Åè¹" + "ÅèÁ" + "Åèǧ" + "ÅèÇÁ" + "ÅèÍ" + "Åèͧ" + "Åè͹" + "ÅèÍÂ" + "ÅèÍáÅè" + "ÅèÐ" + "ÅèÒ" + "ÅèÒ§" + "ÅèÒ¹" + "ÅèÒÁ" + "ÅèÓ" + "Åé§àÅé§" + "Åé¹" + "ÅéÁ" + "Åéǧ" + "Åéǹ" + "ÅéÍ" + "ÅéÍÁ" + "ÅéÒ" + "ÅéÒ§" + "ÅéÒµéÒ" + "ÅéÒ¹" + "ÅéÓ" + "Ç¡" + "Ç¡Ð" + "ǧ" + "ǧ¡µ" + "ǧ¡ì" + "ǧ¨Ã" + "ǧȡÃ" + "ǧÈÒ" + "ǧÈì" + "Ǩ¹Ð" + "ǨÐ" + "ǨÕ" + "ǪÐ" + "ǪÔÃÐ" + "ǪÔÃÒÇظ" + "dzºÑµÃ" + "dz¾Ñ¹¸¹ì" + "dzÐ" + "dzԪ" + "dzԪªÒ" + "dzԪÂÒ" + "dzԪÂì" + "dzԾ¡" + "Ç´Õ" + "ǵÐ" + "Ç·Ð" + "Ç·ÑصÒ" + "ǸءÒ" + "ǸÙ" + "ǹ" + "ǹÑÊ" + "ǹÒ" + "ǹҹµì" + "ǹԴÒ" + "ǹԾ¡" + "ÇÂÑÊÂì" + "Çç¤ì" + "ÇóÐ" + "ÇÃÁËÒÇÔËÒÃ" + "ÇÃä" + "ÇÃäÂì" + "ÇÃê" + "ÇÃêÂì" + "ÇÃó¡ÃÃÁ" + "ÇÃó¤´Õ" + "ÇÃó¹Ò" + "ÇÃó¾ÄµÔ" + "ÇÃóÂØ¡µì" + "ÇÃóÂص" + "ÇÃóÈÔÅ»ì" + "ÇÃóÐ" + "ÇÃó֡" + "ÇÃø¡" + "ÇÃø¹Ð" + "ÇÃÃÉ" + "ÇÃÃÉÒ" + "ÇÃÇÔËÒÃ" + "ÇÃÑÙ" + "ÇÃÒ§¤¹Ò" + "ÇÃÒËÐ" + "ÇÃÒËì" + "ÇÃس" + "ÇÅѪ¹ì" + "ÇÅÑÂ" + "ÇÅÒË¡" + "ÇÅÕ" + "ÇÈÐ" + "ÇÊÊÐ" + "ÇÊÊÕ" + "ÇÊÐ" + "ÇÊѹµ´ÔÅ¡" + "ÇÊѹµì" + "ÇÊÒ" + "ÇÊÕ" + "ÇÊØ" + "ÇÊظÒ" + "ÇÊع¸ÃÒ" + "ÇÊØÁ´Õ" + "ÇËÐ" + "ÇËÒ" + "ÇÍ" + "ÇÍ¡" + "ÇÍ¡áÇ¡" + "ÇÍ´" + "Ç͹" + "ÇÍÃìáù·ì" + "ÇÍÅÅìʵÃÕ·" + "ÇÍÅàÅÂì" + "ÇÍÅàÅÂìºÍÅ" + "ÇÍáÇ" + "ÇÐ" + "ÇÑ¡" + "ÇÑ¡¡Ð" + "ÇѤ" + "ÇѤ¤ÕÂì" + "ÇѤ¤Ø" + "ÇѤ«Õ¹" + "Çѧ" + "Çѧ¡ì" + "Çѧàǧ" + "ÇѨ¹Ð" + "ÇѪ" + "ÇѪ¬ì" + "ÇѪÃÐ" + "ÇѪÃÔ¹·Ãì" + "ÇѪÃÕ" + "Çѯ¨Ñ¡Ã" + "Çѯ¯Ô" + "ÇѯʧÊÒÃ" + "ÇѲ¡Ð" + "ÇѲ¡Õ" + "ÇѲ¹¸ÃÃÁ" + "ÇѲ¹Ð" + "ÇѲ¹Ò" + "Çѳ" + "Çѳ¯ì" + "Çѳ¹Ò" + "ÇÑ´" + "Çѵ" + "ÇѵµÒ" + "Çѵµì" + "Çѵ¶Ø" + "Çѵ¶ì" + "Çѵ¹Ð" + "ÇѵÃ" + "ÇѵÔ" + "Çѹ" + "Çѹ·¹Ò" + "Çѹ·¹ÕÂì" + "Çѹ·ÂËѵ¶ì" + "Çѹ·ÂÒÇظ" + "Çѹ·Ò" + "ÇѺ" + "ÇÑ»»Ð" + "ÇÑÁÁÔ¡" + "ÇÑÂ" + "ÇÑÅÂì" + "ÇÑÅÅÀ" + "ÇÑÅÅÕ" + "ÇÑÇ" + "ÇÑÊ´Ø" + "ÇÑÊÊÐ" + "ÇÑÊÊÒ¹Ð" + "ÇÑÊâÊ·¡" + "ÇÒ" + "ÇÒ¡" + "ÇÒ¡ÂÊÑÁ¾Ñ¹¸ì" + "ÇÒ¡ÂÐ" + "ÇÒ§" + "ÇÒ¨¡" + "ÇÒ¨Ò" + "ÇÒ³Ôª" + "ÇÒ³ÔªÂì" + "ÇÒ³Õ" + "ÇÒ´" + "ÇÒµÀÑÂ" + "ÇÒµÐ" + "ÇÒ·" + "ÇÒ·¡" + "Çҷ¡Ã" + "ÇÒ·Âì" + "ÇÒ·Ôµ" + "ÇÒ·Ô¹" + "ÇÒ·Õ" + "ÇÒ¹" + "ÇÒ¹Ã" + "ÇÒ¹ÃÔ¹·Ãì" + "ÇÒº" + "ÇÒ»Ð" + "ÇÒ»ÔµÐ" + "ÇÒ»Õ" + "ÇÒÁ" + "ÇÒÁÐ" + "ÇÒÂ" + "ÇÒ·Ùà¤" + "ÇÒÂÊÐ" + "ÇÒÃ" + "ÇÒÃÊÒÃ" + "ÇÒÃÔ" + "ÇÒÃÕ" + "ÇÒÃس" + "ÇÒÃسÕ" + "ÇÒÅ" + "ÇÒÅìÇ" + "ÇÒÇ" + "ÇÒʹÐ" + "ÇÒʹÒ" + "ÇÒʾ" + "ÇÒËÐ" + "ÇÒËÔ¹Õ" + "ÇÒÌ" + "ÇÔ¡ÃÁ" + "Çԡĵ" + "Çԡĵ¡Òóì" + "ÇԡĵÔ" + "ÇÔ¡Å" + "ÇÔ¡ÊÔµ" + "ÇÔ¡Ñ»" + "ÇÔ¡ÒÅ" + "ÇÔ¤ËÐ" + "ÇÔ§" + "ÇÔ§Ç͹" + "ÇÔ¨Âص" + "ÇԨóÐ" + "ÇÔ¨Å" + "ÇԨѡ¢³ì" + "ÇԨѡɳì" + "ÇÔ¨ÑÂ" + "ÇÔ¨ÒÃ" + "ÇÔ¨Òóҳ" + "ÇÔ¨Òóì" + "ÇÔ¨Ô" + "ÇÔ¨Ô¡Ô¨©Ò" + "ÇÔ¨Ôµ" + "ÇÔ¨ÔµÃ" + "ÇÔ¨Ô¹" + "ÇԨس" + "ÇÔ¨Øó" + "ÇÔªªÒ" + "ÇÔªªØ" + "ÇÔªªØÅ´Ò" + "ÇÔªÐ" + "ÇÔª¹Õ" + "ÇÔªÒ" + "ÇÔªÒ¹¹Ð" + "ÇÔªÔµ" + "ÇÔѵÔ" + "ÇÔÒ³" + "ÇÔÙ" + "ÇÔ±ÙÃÂì" + "ÇÔ´" + "ÇÔ´ÕâÍ" + "ÇÔµ¡" + "ÇÔµ¶ÒÃ" + "ÇÔµÒÁÔ¹" + "ÇÔ¶Õ" + "ÇԷ°ҹÐ" + "ÇÔ·ÂÒ" + "ÇÔ·ÂÒÅÑÂ" + "ÇÔ·ÂØ" + "ÇÔ·Âص" + "ÇÔ·ÇÑÊ" + "ÇÔ·Òóì" + "ÇÔ·ÒŹì" + "ÇÔ·Ôµ" + "ÇÔ·Ù" + "ÇÔ·ÙÃ" + "ÇÔ¸" + "ÇÔ¸ÇÒ" + "ÇÔ¸Ò" + "ÇÔ¸Ò¹" + "ÇÔ¸Õ" + "ÇÔ¸Ù»¹Ð" + "ÇԹѹµÙ" + "ÇÔ¹ÑÂ" + "ÇÔ¹Ò·Õ" + "ÇÔ¹ÒÈ" + "ÇÔ¹Ô¨" + "ÇÔ¹Ô¨©ÑÂ" + "ÇÔ¹Ôµ" + "ÇÔ¹ÔºÒµ" + "ÇÔ¹Ô»ÒµÔ¡" + "ÇÔ¹â´ÇÊì" + "ÇÔ¹â´Çì" + "ÇԺѵÔ" + "ÇÔºÒ¡" + "ÇÔºØÅ" + "ÇÔºØÅÂì" + "ÇÔºÙÅ" + "ÇÔºÙÅÂì" + "ÇÔ»¡ÒÃ" + "ÇÔ»¯ÔÊÒÃ" + "ÇÔ»ÃСÒÃ" + "ÇÔ»ÃеÔÊÒÃ" + "ÇÔ»ÃÐÅÒ»" + "ÇÔ»ÃÐÇÒÊ" + "ÇÔ»ÃÔµ" + "ÇÔ»ÅÒ»" + "ÇÔ»ÅÒÊ" + "ÇÔ»ÇÒÊ" + "ÇԻѡÉì" + "ÇÔ»ÑÊÊ¡" + "ÇÔ»ÑÊʹÒ" + "ÇÔ»â¤" + "ÇÔ¾Ò¡Éì" + "ÇÔ¾Ô¸·ÑȹÒ" + "ÇÔÀǵѳËÒ" + "ÇÔÀѧ¤ì" + "ÇÔÀѪ" + "ÇÔÀѵµÔ" + "ÇÔÀÒ" + "ÇÔÀÒÇ´Õ" + "ÇÔÁѵÔ" + "ÇÔÁص" + "ÇÔÁصµÔ" + "ÇÔõÐ" + "ÇÔÃÁ³Ð" + "ÇÔÃÃø¹ì" + "ÇÔÃÇÐ" + "ÇÔÃѪ" + "ÇÔÃѵ" + "ÇÔÃѵÔ" + "ÇÔÃÔÂÀÒ¾" + "ÇÔÃÔÂÐ" + "ÇÔÃظ" + "ÇÔÃØÌË¡" + "ÇÔÃØÌËì" + "ÇÔÅѹ´Ò" + "ÇÔÅÒ´" + "ÇÔÅÒ»" + "ÇÔÅÒÇѳÂì" + "ÇÔÅÒÈ" + "ÇÔÅÒÊ" + "ÇÔÅÒÊÔ¹Õ" + "ÇÔÇ" + "ÇÔÇóì" + "ÇÔÇÃÐ" + "ÇÔÇѯ" + "ÇÔÇѲ¹Ò¡ÒÃ" + "ÇÔÇѲ¹ì" + "ÇÔÇÒ·" + "ÇÔÇÒËÁ§¤Å" + "ÇÔÇÒËÐ" + "ÇÔÇÒËì" + "ÇÔÇÔ¨" + "ÇÔÇÔµ" + "ÇÔÇÔ¸" + "ÇÔÈÃص" + "ÇÔÈÇ¡Ã" + "ÇÔÈÇ¡ÃÃÁ" + "ÇÔÈÑÅÂì" + "ÇÔÈÒ¢Ð" + "ÇÔÈÒ¢Ò" + "ÇÔÈÒ§¤ì" + "ÇÔÈÒÅ" + "ÇÔÈÔÉ°ì" + "ÇÔÈØ·¸Ôì" + "ÇÔÈØ·¸ì" + "ÇÔɳØ" + "ÇÔɸÃ" + "ÇÔÉÑ¡µì" + "ÇÔÉÑÂ" + "ÇÔÉÒ³" + "ÇÔÉØÇѵ" + "ÇÔÊ¡Õé" + "ÇÔÊÃê¹ÕÂì" + "ÇÔÊĵ" + "ÇÔÊÊØ¡ÃÃÁ" + "ÇÔÊѪ¹Ò" + "ÇÔÊÑÕ" + "ÇÔÊÑÂ" + "ÇÔÊÒ¢ºÙªÒ" + "ÇÔÊÒ¢Ð" + "ÇÔÊÒÁÑ" + "ÇÔÊÒÊÐ" + "ÇÔÊÒË¡Ô¨" + "ÇÔÊÔ°" + "ÇÔÊا¤ÒÁÊÕÁÒ" + "ÇÔÊØ·¸Ôì" + "ÇÔÊØ·¸ì" + "ÇÔÊÙµÃ" + "ÇÔˤ" + "ÇÔ˧¤ì" + "ÇÔËÅÑè¹" + "ÇÔËÒÂÊÐ" + "ÇÔËÒÃ" + "ÇÔËÔ§ÊÐ" + "ÇÔËÔ§ÊÒ" + "ÇÔÌѧ¤ì" + "ÇÔÌÒÃ" + "ÇÔÌÒÃì" + "ÇÔà¤ÃÒÐËì" + "ÇÔàªÕÂÃ" + "ÇÔà·ÇÉ" + "ÇÔà·È" + "ÇÔà·âȺÒÂ" + "ÇÔ๵" + "ÇÔà¹" + "ÇÔàù·Ãì" + "ÇÔàÅ»" + "ÇÔàÇ¡" + "ÇÔàÈÉ" + "ÇÔàÈɳì" + "ÇÔàÊ·" + "ÇÔàËÊÒ" + "ÇÔâ¹·¡" + "ÇÔâÁ¡¢ì" + "ÇÔâ¤" + "ÇÔâè" + "ÇÔâè¹ì" + "ÇÔâò" + "ÇÔâø" + "ÇÔâø¹ì" + "ÇÔâŨ¹Ð" + "ÇÔäÅ" + "ÇÔè§" + "ÇÔè§à»ÕéÂÇ" + "ÇÔè¹" + "ÇÕ" + "ÇÕ¨Ô" + "ÇÕª¹Õ" + "ÇÕ«èÒ" + "ÇÕ³Ò" + "ÇÕáÃÃÁ" + "ÇÕê¹" + "ÇÕúØÃØÉ" + "ÇÕÃʵÃÕ" + "ÇÕèÇѹ" + "ÇÕèáÇÇ" + "ÇÕé´" + "ÇØ°Ô" + "Çز" + "ÇزÔ" + "ÇØ´" + "Çغ" + "ÇØè¹" + "ÇØé§" + "ÇØé¹" + "ÇØéÂ" + "ÇÙ´ÇÒ´" + "ÇÙ¸Ù" + "ÇÙº" + "ÇÙèÇÒÁ" + "ÇÙé" + "Ç๨Ã" + "Çâ¹·ÂÒ¹" + "ÇâÃ" + "ÇâáÒÊ" + "ÇâôÁ" + "Çèͧ" + "Çè͹" + "ÇèÒ" + "ÇèÒ§" + "ÇèÒ¹" + "ÇèÒÂ" + "ÇèÒÇ" + "ÇéÒ" + "ÇéÒ§" + "ÇéÒÂ" + "È¡" + "ȵ" + "ȵÇÃÃÉ" + "Ⱦ" + "ÈÃ" + "ÈÃÑ·¸Ò" + "ÈÃÑÂ" + "ÈÃÕ" + "ÈÃÕÇÔäÅÄ·¸Ôì" + "ÈÃÕÉÐà¡É" + "Èħ¤ÒÃ" + "ÈÈÔ" + "ÈÍ" + "ÈÍ¡" + "ÈÑ¡´Ò" + "ÈÑ¡´Ô¹Ò" + "ÈÑ¡´Ôì" + "ÈÑ¡ÂÀÒ¾" + "ÈÑ¡ÂÐ" + "ÈÑ¡Âì" + "ÈÑ¡ÃÒª" + "ÈѵÃÙ" + "ÈѾ·ì" + "ÈÑÅ¡ÃÃÁ" + "ÈÑÅÂÈÒʵÃì" + "ÈÑÅÂá¾·Âì" + "ÈÑÅÂì" + "Èҡ¾ط¸" + "ÈÒ¡ÂÁعÕ" + "ÈÒ¡ÂÐ" + "ÈÒµÃÒ¨ÒÃÂì" + "ÈÒ¹µÔ" + "ÈÒ¹µì" + "ÈÒ÷" + "ÈÒ÷ÙÅ" + "ÈÒÅ" + "ÈÒÅÒ" + "ÈÒÊ¡" + "ÈÒÊ´Ò" + "ÈÒʵÃÒ" + "ÈÒʵÃÒ¨ÒÃÂì" + "ÈÒʵÃì" + "ÈÒʹ¨Ñ¡Ã" + "ÈÒʹÒ" + "ÈÒʹٻ¶ÑÁÀ¡" + "ÈÒʹì" + "ÈÔ¢ÃÔ¹" + "ÈÔÃÔÃÒª" + "ÈÔÅ»¡Ã" + "ÈÔÅ»¡ÃÃÁ" + "ÈÔÅ»¡ÒÃ" + "ÈÔÅ»¡Ô¨" + "ÈÔÅ»ÇÔ·ÂÒ" + "ÈÔÅ»ÈÒʵÃì" + "ÈÔÅ»Ð" + "ÈÔŻҡÃ" + "ÈÔŻԹ" + "ÈÔÅ»Õ" + "ÈÔÅ»ì" + "ÈÔÅÒ" + "ÈÔÇÅÖ§¤ì" + "ÈÔÇÐ" + "ÈÔÇàÇ·" + "ÈÔÇâÁ¡¢ì" + "ÈÔÉÂì" + "ÈÔâÃÃÒº" + "ÈÕÃÉÐ" + "ÈÕÅ" + "ÈÖ¡" + "ÈÖ¡ÉÒ" + "ÈÖ¡ÉÒ¸Ô¡ÒÃ" + "ÈÖ¡ÉÒ¹Ôà·È¡ì" + "ÈØ¡Ãì" + "ÈØÀ¡Ã" + "ÈØÀ¹ÔÁÔµ" + "ÈØÀÁÑÊ´Ø" + "ÈØÀÁÒµÃÒ" + "ÈØÀÁÒÊ" + "ÈØÀÍÑ¡ÉÃ" + "ÈØÀÒ§¤ì" + "ÈØÀà¤ÃÒÐËì" + "ÈØÅ¡Ò¡Ã" + "ÈØÅ¡ÒÃÑ¡Éì" + "ÈØÅÕ" + "ÈÙ·Ã" + "ÈÙ¹Âì" + "Ê¡" + "Ê¡¹¸ì" + "Ê¡»Ã¡" + "Ê¡Å" + "Ê¡ÇÒ·Õ" + "ʡ͵Ᏼì" + "Ê¡Ñ´" + "Ê¡Ò" + "Ê¡ÒÇ" + "Ê¡Õ" + "ʡس" + "ʡسÒ" + "ʡسÕ" + "ʡعµì" + "Ê¡ØÅ" + "Ê¡ç͵Ᏼì" + "ʧ" + "ʧ¡ÃÒ¹µì" + "ʧ¡Ò" + "ʧ¢ÅÒ" + "ʧ¤ÃÒÁ" + "ʧ¦ì" + "ʧº" + "ʧǹ" + "ʧÊÑÂ" + "ʧÊÒÃ" + "ʧÊÒÃÇѯ" + "ʧѴ" + "ʧà¤ÃÒÐËì" + "ʧèÒ" + "ʳ±ì" + "Ê´" + "Ê´ÁÀì" + "ʴѺ" + "Ê´Ø´Õ" + "ʵÃÕ" + "ʵ͡" + "ʵѿ¿ì" + "ʵҧ¤ì" + "ʵÒÃì·" + "ʵÔ" + "ʵÔê¡à¡ÍÃì" + "ʵÙ" + "ʵêÍ¡" + "ʶÅ" + "ʶҹ" + "ʶҹ¡Òóì" + "ʶҹÐ" + "ʶҹÕ" + "ʶҺѹ" + "ʶһ¹Ò" + "ʶһ¹Ô¡" + "ʶһѵ¡ÃÃÁ" + "ʶҾÃ" + "ʶÒÇÃ" + "ʶԵ" + "ʶԵÂ" + "ʶԵÂÈÒʵÃì" + "ʶԵÂì" + "ʶԵÔ" + "ʶØÅ" + "ʶٻ" + "ʷ;" + "ʹ" + "ʹ·¹Ò" + "ʹ¸ÂÒ" + "ʹ¸Ô" + "ʹ¹ÃÒ¤Ò" + "ʹÁ" + "ʹͧ" + "ʹѺ" + "ʹѺʹع" + "ʹÑè¹" + "ʹҹ" + "ʹÒÁ" + "ʹԷ" + "ʹÔÁ" + "ʹء" + "ʹØè¹" + "ʹà·È" + "ʹà·èËì" + "ʹã¨" + "ʺ" + "ʺ§" + "ʺ¶" + "ʺÒÂ" + "ʺÙè" + "Ê»ÃÔ§" + "Ê»ÒÂ" + "Ê»ÒࡵµÕ" + "Ê»ÔÃÔµ" + "ÊÀÒ" + "ÊÀÒ¾" + "ÊÀҾѲ¹ì" + "ÊÀÒÇÐ" + "ÊÁ" + "ÊÁ¡ÒÃ" + "ÊÁ¤ÇÃ" + "ÊÁÒ" + "ÊÁ³ÈÑ¡´Ôì" + "ÊÁ³Ð" + "ÊÁ´ØÅ" + "ÊÁ¶Ð" + "ÊÁ¹Ò¤Ø³" + "ÊÁºÑµÔ" + "ÊÁºÙóÒÒÊÔ·¸ÔÃÒªÂì" + "ÊÁºÙóì" + "ÊÁ»ÃдÕ" + "ÊÁ»Ä´Õ" + "ÊÁÀ¾" + "ÊÁÀÒÃ" + "ÊÁÁµ" + "ÊÁÁµÔ" + "ÊÁÁÒµÃ" + "ÊÁÁصÔ" + "ÊÁÃ" + "ÊÁÃö" + "ÊÁÃö¹Ð" + "ÊÁÃÊ" + "ÊÁÍ" + "ÊÁͧ" + "ÊÁѤÃ" + "ÊÁѪªÒ" + "ÊÁѹ" + "ÊÁÑÂ" + "ÊÁÒ" + "ÊÁÒ¤Á" + "ÊÁÒ¨ÒÃ" + "ÊÁÒªÔ¡" + "ÊÁÒ¸Ô" + "ÊÁÒ¹" + "ÊÁҺѵÔ" + "ÊÁÒÊ" + "ÊÁÔ§" + "ÊÁÔµ" + "ÊÁÕ" + "ÊÁد°Ò¹" + "ÊÁØ´" + "ÊÁØ·Ã" + "ÊÁØ·ÑÂ" + "ÊÁع" + "ÊÁعä¾Ã" + "ÊÁØËì" + "ÊÁà´ç¨" + "ÊÁྪ" + "ÊÁàÊÃç¨" + "ÊÁ⾸Ô" + "ÊÁâÀ¤" + "ÊÁâÀª" + "ÊÁèÓàÊÁÍ" + "Ê´" + "ʺ" + "ÊÂÁÀÙ" + "ÊÂͧ" + "ÊÂÒÁ" + "ÊÂÒÂ" + "ÊÂÔÇ" + "ÊÂØÁ¾Ã" + "ÊÂØÁÀÙ" + "Êç" + "ÊóÐ" + "ÊóҤÁ¹ì" + "ÊõÐ" + "ÊÃÃ" + "ÊÃäì" + "ÊÃþ" + "ÊÃþҡÃ" + "ÊÃþҧ¤ì" + "ÊÃÃྪ" + "ÊÃÃàÊÃÔ" + "ÊÃǧ" + "ÊÃÇÁ" + "ÊÃÇÅ" + "ÊÃÐ" + "ÊÃÒ" + "ÊÃÕáԨ" + "ÊÃÕøҵØ" + "ÊÃÕÃÇÔ·ÂÒ" + "ÊÃÕÃÈÒʵÃì" + "ÊÃÕÃÐ" + "ÊÃØ»" + "ÊÃè§" + "ÊÃèÒ§" + "ÊÃéÍÂ" + "ÊÃéÒ§" + "ÊÃéÒÇàÊÕÂÇ" + "Êĵ" + "ÊÄɯì" + "ÊÅ" + "ÊÅ´" + "Êź" + "ÊÅǹ" + "ÊÅÇÂ" + "ÊÅÍ´" + "ÊÅ͹" + "ÊÅÍÂ" + "ÊÅÐ" + "ÊÅÑ¡" + "ÊÅÑ¡àµé" + "ÊÅÑ´" + "ÊÅÑ´ä´" + "ÊÅѺ" + "ÊÅÑÁ" + "ÊÅÑÇ" + "ÊÅÒ" + "ÊÅÒ¡" + "ÊÅÒ´" + "ÊÅҵѹ" + "ÊÅÒº" + "ÊÅÒÂ" + "ÊÅÔ´" + "ÊÅÔÅ" + "ÊÅÖ¡" + "ÊÅÖ§" + "ÊÅص" + "ÊÅغ" + "ÊÅØÁ¾Ã" + "ÊÅç͵" + "ÊÅéÒ§" + "ÊÇ¡" + "ÊÇ´" + "Êǹ" + "ÊǹÐ" + "ÊǹҡÒÃ" + "ÊǺ" + "ÊÇÁ" + "ÊÇÂ" + "ÊÇÃ" + "ÊÇÃäµ" + "ÊÇÃäÒÅÑÂ" + "ÊÇÃäì" + "ÊÇÃÃÂÒ" + "ÊÇÍ»" + "ÊÇÐ" + "ÊÇÑÊ´Ô¡ÒÃ" + "ÊÇÑÊ´ÔÀÒ¾" + "ÊÇÑÊ´Ôì" + "ÊÇÑÊ´Õ" + "ÊÇÑʵԡÐ" + "ÊÇÒ" + "ÊÇÒ§" + "ÊÇÒ´" + "ÊÇÒ·" + "ÊÇÒÁÔ" + "ÊÇÒÁÕ" + "ÊÇÒÂ" + "ÊÇÒÊ´Ôì" + "ÊÇÒËÐ" + "ÊÇÔ§" + "ÊÇÔµªì" + "ÊÇÔµ«ì" + "ÊÇÔÊà«ÍÃìᏴì" + "ÊÇÕà´¹" + "ÊÇèÒ§" + "ÊÇèÒ¹" + "ÊÇéÒ¹" + "ÊÊÒÃ" + "Êˡóì" + "ÊË¡ÒÃ" + "Ê˨Ã" + "Ê˪ҵÔ" + "ÊË»ÃЪҪҵÔ" + "Ê˾ѹ¸ÃÑ°" + "Ê˾ѹ¸ì" + "ÊËÀÒ¾" + "ÊËÃÑ°" + "ÊËÇÔÃÔÂÒ" + "ÊËÈÖ¡ÉÒ" + "ÊËѪ" + "ÊËÑÁº´Õ" + "ÊËÑʹѹì" + "ÊËÑÊÇÃÃÉ" + "ÊËÑÊÊÐ" + "ÊËÑÊÊÒ" + "ÊËÒÂ" + "ÊÍ" + "Êͧ" + "ÊÍ´" + "Ê͹" + "Êͺ" + "Ê;ÅÍ" + "ÊÍÂ" + "ÊÐ" + "ÊС´" + "ÊСԴ" + "ÊФÃÒ" + "ÊдÁ" + "Êдǡ" + "ÊдÔé§" + "Êд֧" + "Êд×Í" + "Êдش" + "ÊдØé§" + "ÊеÍ" + "ÊеÖ" + "Êе×Í" + "Êзé͹" + "ÊзéÒ¹" + "Êкѡ" + "ÊкѴ" + "ÊкѴÊкÔé§" + "ÊкÑé¹" + "ÊкéÒ" + "ÊоÃÑ¡" + "ÊоÃÑè§" + "ÊоѴ" + "ÊоÑé¹" + "Êоҹ" + "ÊоÒÂ" + "ÊÐÃеÐ" + "ÊÐÃÐá˹è" + "ÊÐÅÖÁÊÐÅ×Í" + "ÊÐÇÕé´ÊÐÇéÒ´" + "ÊÐÊÁ" + "ÊÐÊÒ§" + "ÊÐÍÒ§" + "ÊÐÍÒ´" + "ÊÐÍÔ´ÊÐàÍÕ¹" + "ÊÐÍÔé§" + "ÊÐÍÖ¡" + "ÊÐÍ×é¹" + "ÊÐÍéÒ¹" + "ÊÐà¡ç´" + "ÊÐà´ç´" + "ÊÐà·Ôé¹" + "ÊÐà·×͹" + "ÊÐà·×é͹" + "ÊÐà¾ÃèÒ" + "ÊÐàÍÍÐ" + "ÊÐ⾡" + "ÊÐâÍ´ÊÐͧ" + "ÊÐãÀé" + "ÊÑ¡" + "ÊÑ¡¢Õ" + "ÊÑ¡ÇÒ" + "ÊÑ¡ËÅÒ´" + "ÊÑ¢ÂÐ" + "Êѧ¡Á·ÃѾÂì" + "Êѧ¡Ã" + "Êѧ¡Ã³Õ" + "Êѧ¡ÐµÑ§" + "Êѧ¡ÐÊÕ" + "Êѧ¡Ñ´" + "Êѧ¡Ñ»»Ð" + "Êѧ¡Ò" + "Êѧ¡ÒÈ" + "Êѧ¢ÂÒ" + "Êѧ¢ÒÃ" + "Êѧ¢ì" + "Êѧ¤ÒµÔ" + "Êѧ¤Á" + "Êѧ¤Ñ§" + "Êѧ¤Ò¹Ò" + "Êѧ¤Ò¹ÒÂ" + "Êѧ¤Õµ" + "Êѧ¤ì" + "Êѧ¦¡ÃÃÁ" + "Êѧ¦¹Ò¡" + "Êѧ¦Á³±Å" + "Êѧ¦Á¹µÃÕ" + "Êѧ¦ÃÒª" + "Êѧ¦ÊÀÒ" + "Êѧ¦Ò¯Ô" + "Êѧ¦ÒÇÒÊ" + "ÊѧÇÃ" + "ÊѧÇѸÂÒÂ" + "ÊѧÇÒÅ" + "ÊѧÇÒÊ" + "ÊѧʴÁÀì" + "ÊѧÊÃäì" + "ÊѧÊÒÃÇѯ" + "ÊѧËÃ" + "ÊѧËóì" + "ÊѧËÒÃ" + "ÊѧËÒÃÔÁ·ÃѾÂì" + "ÊѧËÔµ" + "Êѧࡵ" + "Êѧࢻ" + "Êѧà¤ÃÒÐËì" + "ÊѧàǤÐ" + "ÊѧàǪ" + "ÊѧàÇÂ" + "ÊѧàÇÕ¹" + "Êѧâ¤" + "Êѧ⪹ì" + "ÊѨ" + "ÊѨ¡ÔÃÔÂÒ" + "ÊѨ¨Ð" + "ÊѨҳ" + "ÊѨ¹ÔÂÁ" + "ÊѨ¾¨¹ì" + "ÊѪ¬Ø" + "ÊѨÃ" + "ÊѨÒÃ" + "ÊѪҵҳ" + "ÊѪҵÔ" + "ÊѬÒ" + "ÊÑÒ" + "ÊÑÒ³" + "ÊÑÕ" + "ÊÑ»ÃСÒÈ" + "ÊÑÅѡɳì" + "ÊÑਵ¹Ò" + "Êѳ°Ò¹" + "Êѳ±ì" + "ÊѳËì" + "ÊÑ´" + "Êѵ" + "ÊѵµÐ" + "ÊѵºÃó" + "ÊѵÂҺѹ" + "ÊѵÂì" + "ÊѵǺÒÅ" + "ÊѵÇÇÔ·ÂÒ" + "ÊѵÇÒ" + "ÊѵÇÒÃ" + "ÊѵÇá¾·Âì" + "ÊѵÇâÅ¡" + "ÊѵÇì" + "ÊÑ·¸ÃÃÁ" + "ÊÑ·¸Ò" + "ÊÑ·ÈÒʵÃì" + "Êѹ" + "Êѹ´Ò¹" + "Êѹ´Ò»" + "ÊѹµÐ»Ò»Ò" + "ÊѹµÔ" + "Êѹµì" + "Êѹ¶ÇäÁµÃÕ" + "Êѹ¶Ñµ" + "Êѹ¶ÒÃ" + "Êѹ·¹Ð" + "Êѹ·¹Ò¡ÒÃ" + "Êѹ·Ð" + "Êѹ·Ñ´" + "Êѹ¸Ò¹" + "Êѹ¹ÔºÒµ" + "Êѹ¹ÔÇÒÊ" + "Êѹ¹ÔÉ°Ò¹" + "Êѹ¹ÔàÇÊ" + "Êѹʡĵ" + "Êѹâ´É" + "ÊѺ" + "ÊѺ»ÅѺ" + "ÊѺ»Ðô" + "ÊÑ»¤Ñº" + "ÊÑ»´¹" + "ÊÑ»´ÒËì" + "ÊÑ»·¹" + "ÊÑ»ÃÐÂØ·¸ì" + "Êѻ˧¡" + "ÊÑ»àËÃèÍ" + "ÊѾ" + "ÊѾ¾Ð" + "ÊѾ¾ÑÙ" + "ÊѾÂÍ¡" + "ÊѾà¾àËÃÐ" + "ÊÑÁºÙóì" + "ÊÑÁ»ªÑÐ" + "ÊÑÁ»·Ò" + "ÊÑÁ»·Ò¹" + "ÊÑÁ»Âص" + "ÊÑÁ»ÃÐÊÔ·¸Ôì" + "ÊÑÁ»ÃÐËÒÃ" + "ÊÑÁ»ÃÒÂÀ¾" + "ÊÑÁ»ÃÒÂÔ¡À¾" + "ÊÑÁ»â¤" + "ÊÑÁ¼ÑÊ" + "ÊÑÁ¾Ñ·¸ì" + "ÊÑÁ¾Ñ¹¸¹ì" + "ÊÑÁ¾Ñ¹¸ÀÒ¾" + "ÊÑÁ¾Ñ¹¸ÁÔµÃ" + "ÊÑÁ¾Ñ¹¸äÁµÃÕ" + "ÊÑÁ¾Ñ¹¸ì" + "ÊÑÁ¾Ò¸Ð" + "ÊÑÁ¾Ø·¸Ð" + "ÊÑÁÀÒÃÐ" + "ÊÑÁÀÒɳì" + "ÊÑÁÁ¹Ò" + "ÊÑÁÁÒ" + "ÊÑÁÁÒªÕ¾" + "ÊÑÁÄ·¸Ôì" + "ÊÑÁ⾸Ô" + "ÊÑÁâÁ·¹Õ¡¶Ò" + "ÊÑÊ´Õ" + "ÊÑÊÊÐ" + "ÊÑè§" + "ÊÑè¹" + "ÊÑé¹" + "ÊÒ" + "ÊÒ¡" + "ÊÒ¡Ãèì" + "ÊÒ¡Å" + "ÊÒ¢Ò" + "ÊÒ¤Ã" + "ÊÒ¤Ù" + "ÊÒ¤àÃÊ" + "ÊÒ§" + "ÊÒ´" + "ÊÒ·Ã" + "ÊÒ·ÔÊ" + "ÊÒ¸¡" + "ÊÒ¸ÂÒÂ" + "ÊÒ¸ÒóÀÑÂ" + "ÊÒ¸ÒóÃÑ°" + "ÊÒ¸ÒóÊØ¢" + "ÊÒ¸ÒóÐ" + "ÊÒ¸Òóٻ¡ÒÃ" + "ÊÒ¸ÒóٻâÀ¤" + "ÊÒ¸Ôµ" + "ÊÒ¸Ø" + "ÊÒ¹" + "ÊÒ¹ØÈÔÉÂì" + "ÊÒº" + "ÊÒºÊÙ" + "ÊÒºÒ¹" + "ÊÒ»" + "ÊÒÁ" + "ÊÒÁѤ¤Õ" + "ÊÒÁÑ" + "ÊÒÁÒ¹Âì" + "ÊÒÁÒö" + "ÊÒÁÔµ" + "ÊÒÁÔÀÑ¡´Ôì" + "ÊÒÁÕ" + "ÊÒÁà³Ã" + "ÊÒÂ" + "ÊÒªÙ" + "ÊÒÂÂÙ" + "ÊÒÂѳËì" + "ÊÒÃ" + "ÊÒä´Õ" + "ÊÒöÕ" + "ÊÒ÷" + "ÊÒùÔà·È" + "ÊÒúº" + "ÊÒúÃó" + "ÊÒúÑ" + "ÊÒúѺ" + "ÊÒúÒ" + "ÊÒþѴ" + "ÊÒþѹ" + "ÊÒþҧ¤ì" + "ÊÒÃÀÒ¾" + "ÊÒÃÀÕ" + "ÊÒÃÇѵÃ" + "ÊÒÃÐ" + "ÊÒÃÐá¹" + "ÊÒÃÑ·¸ì" + "ÊÒÃÑÁÀì" + "ÊÒÃÒ³Õ¡Ã" + "ÊÒÃҹءÃÁ" + "ÊÒÃÕÃÔ¡¸ÒµØ" + "ÊÒÅÐǹ" + "ÊÒÅÔ¡Ò" + "ÊÒÅÔ¹Õ" + "ÊÒÅÕ" + "ÊÒÅÕè" + "ÊÒÇ" + "ÊÒÇ¡" + "ÊÒÇÔ¡Ò" + "ÊÒÇÔµÃ" + "ÊÒÇÔµÃÕ" + "ÊÒʹì" + "ÊÒÊì¹" + "ÊÒËÃèÒÂ" + "ÊÒËÑÊ" + "ÊÒà¡" + "ÊÒà˵Ø" + "ÊÒáËá" + "ÊÒâ·" + "ÊÒâê" + "ÊÒä¶Â" + "ÊÓ" + "ÊÓ¤Ñ" + "ÊӷѺ" + "Êӹǹ" + "Êӹѡ" + "ÊÓ¹Ö¡" + "ÊӺѴÊӹǹ" + "ÊÓ»ÐËÅѧ" + "ÊÓ»Ñé¹" + "ÊÓÁÐËÒ" + "ÊÓÁÐàÅà·àÁÒ" + "ÊÓÁÐ⹤ÃÑÇ" + "ÊÓÃǨ" + "ÊÓÃÇÁ" + "ÊÓÃÇÂ" + "ÊÓÃÇÅ" + "ÊÓÃÍ¡" + "ÊÓÃͧ" + "ÊÓÃѺ" + "ÊÓÃÒ¡" + "ÊÓÃÒ" + "ÊÓÃÔ´" + "ÊÓÅÑ¡" + "ÊÓÅÒ¹" + "ÊÓÅÕ" + "ÊÓÊè͹" + "ÊÓËÃѺ" + "ÊÓËÒ" + "ÊÓÍÍÂ" + "ÊÓÍÒ§" + "ÊÓà¹Ò" + "ÊÓà¹Õ§" + "ÊÓàÀÒ" + "ÊÓàÃÔ§" + "ÊÓàÃç¨" + "ÊÓà˹Õ¡" + "ÊÓàËÃè" + "ÊÓá´§" + "ÊÓáŧ" + "ÊÓâç" + "ÊÔ" + "ÊÔ¡¢Ò" + "ÊÔ¢Ã" + "ÊÔ¤ÒÅ" + "ÊÔ§" + "ÊÔ§¢Ã" + "ÊÔ§¤ÒÃ" + "ÊÔ§¤ÒÅ" + "ÊÔ§¤â»Ãì" + "ÊÔ§¤ì" + "ÊÔ§ÊÒÃÒÊѵÇì" + "Êԧ˹ҷ" + "Êԧ˺ѪÃ" + "ÊÔ§ËÃÒª" + "ÊÔ§ËÅ" + "ÊÔ§ËÒ¤Á" + "ÊÔ§ËÒʹì" + "ÊÔ§Ëì" + "ÊÔ§âµ" + "ÊÔ¨¹ì" + "ÊÔµ" + "ÊÔ¶ÔÅ" + "ÊÔ·¸" + "ÊÔ·¸Ò" + "ÊÔ·¸Òö" + "ÊÔ·¸Ô" + "ÊÔ·¸Ôì" + "ÊÔ¹" + "ÊÔ¹¤éÒ" + "ÊÔ¹¸Ø" + "ÊÔ¹Õ" + "ÊÔ¹à¸ÒÇì" + "ÊÔº" + "ÊÔÁ¾ÅÕ" + "ÊÔÃÔ" + "ÊÔÃÔ¡ÔµÔì" + "ÊÔÅÒ" + "ÊÔÇ" + "ÊÔà¹Ë¡" + "ÊÔà¹ËÒ" + "ÊÔà¹èËÒ" + "ÊÔè§" + "ÊÔèÇ" + "ÊÔé¹" + "ÊÕ" + "ÊÕ¡Ò" + "ÊÕ´Í" + "ÊÕè" + "ÊÖ¡" + "Ê׺" + "Ê×èÍ" + "ÊØ" + "ÊØ¡" + "ÊØ¡¢ì" + "ÊØ¡Ã" + "ÊØ¡ÕéÂÒ¡Õé" + "ÊØ¢" + "ÊØ¢Ð" + "ÊØ¢Ò" + "ÊØ¢ÒÀÔºÒÅ" + "ÊØ¢ÒÃÁ³ì" + "ÊØ¢ÒÇ´Õ" + "ÊØ¢Õ" + "ÊØ¢ØÁ" + "ÊØ¢ØÁÒÅ" + "Êؤµ" + "ÊؤµÔ" + "Êؤ¹¸ÃÊ" + "Êؤ¹¸ì" + "Êؤѹ¸ì" + "Êا¡Ò¡Ã" + "ÊاÊÔ§" + "ÊبÃÔµ" + "Êب˹Õè" + "ÊبÔ" + "Êت¹" + "ÊتҴÒ" + "ÊØ" + "ÊØÒ¡ÒÈ" + "Êس" + "ÊسÔÊÒ" + "ÊØ´" + "ÊØ´Ò" + "Êص" + "ÊصµÐ" + "ÊصÔ" + "ÊØ·¸ÒÇÒÊ" + "ÊØ·¸Ô" + "ÊØ·¸ì" + "ÊØ·Ñȹì" + "ÊظÒ" + "ÊظÕ" + "Êع·Ã" + "Êع·ÃÕ" + "Êع·ÃÕÂÀÒ¾" + "Êع·ÃÕÂÈÒʵÃì" + "ÊعѢ" + "Êعѹ·ì" + "ÊغÃó" + "ÊغԹ" + "ÊؾÃó" + "ÊØÀѤ" + "ÊØÀÒ¾" + "ÊØÀÒÉÔµ" + "ÊØÁ" + "ÊØÁ·ØÁ" + "ÊØÁ¹" + "ÊØÁ¹Ò" + "ÊØÁÒÅÕ" + "ÊØÃÊÕ˹ҷ" + "ÊØÃѵÔ" + "ÊØÃÑÊÇ´Õ" + "ÊØÃÒ" + "ÊØÃÒ§¤¹Ò" + "ÊØÃÒ§¤¹Ò§¤ì" + "ÊØÃÒÃÑ¡Éì" + "ÊØÃÒÅÑÂ" + "ÊØÃÒÉ®Ãì" + "ÊØÃÔ¹·Ãì" + "ÊØÃÔ¡ÒÃ" + "ÊØÃÔ¡ÒÅ" + "ÊØÃÔ¤µÔ" + "ÊØÃÔ¤ÃÒÊ" + "ÊØÃÔ§" + "ÊØÃÔ¹" + "ÊØÃÔÂÁ³±Å" + "ÊØÃÔÂÐ" + "ÊØÃÔÂѹ" + "ÊØÃÔÂÒ" + "ÊØÃÔÂØ»ÃÒ¤Ò" + "ÊØÃÔÂà¤ÃÒÐËì" + "ÊØÃÔ๷Ãì" + "ÊØÃÔàÂÈ" + "ÊØÃÔâÂ" + "ÊØÃÕÂì" + "ÊØÃØèÂÊØÃèÒÂ" + "ÊØÃàÊÕ§" + "ÊØŵèÒ¹" + "ÊØÇÀÒ¾" + "ÊØÇÃó" + "ÊØÇÒ¹" + "ÊØÇÔ·Âì" + "ÊØÇÔ¹ÑÂ" + "ÊØÇÔÁÅ" + "ÊØÊÒ¹" + "ÊØ˹ѵ" + "ÊØËÃèÒÂ" + "ÊØàÁ¸" + "ÊØàÁÃØ" + "ÊØàËÃèÒ" + "ÊØàÍ«" + "ÊØèÁ" + "ÊØéÁ" + "ÊÙ" + "ÊÙ§" + "ÊÙ¨Ô" + "ÊÙ" + "ÊÙ´" + "ÊÙµ" + "ÊÙµÃ" + "ÊÙµÔ" + "ÊÙµÔ¡ÃÃÁ" + "ÊٵԺѵÃ" + "ÊÙµÔÈÒʵÃì" + "ÊÙµÔá¾·Âì" + "ÊÙ·" + "ÊÙº" + "ÊÙÊÕ" + "ÊÙè" + "ÊÙé" + "Êࡵ" + "ÊàµÍÃÔâÍ" + "Êàµç¡" + "Êà¹èËì" + "Ê໡" + "Ê໡µÃÑÁ" + "Ê໹" + "Êà»Ã´ªÕµ" + "Ê᡹" + "Êáŧ" + "ÊâÁÊÃ" + "Êâê" + "ÊäµÅì" + "Êäº" + "ÊäÅ´ì" + "Êè§" + "Êèǹ" + "ÊèÇÂ" + "ÊèÍ" + "Êèͧ" + "Êè͹" + "ÊèÒ" + "ÊèÒ¹" + "ÊèÒÂ" + "ÊèÒËÃÕè" + "ÊèÒàËÅéÒ" + "ÊèÓ" + "Êé¹" + "ÊéÁ" + "ÊéÁ»èÍÂ" + "Êéǧ" + "ÊéÇÁ" + "ÊéÇÂ" + "Êéͧ" + "ÊéÍÁ" + "Ë¡" + "˧" + "˧Êì" + "˧Í" + "˧͡" + "˧ʹ" + "˧͹" + "˧ÍÂ" + "˧ѡ" + "˧Ѻ" + "˧ÒÂ" + "˧Ó" + "˧ԡ" + "˧ԧ" + "˧ÔÁ" + "˧֡" + "˧ا˧ԧ" + "˧ش˧Դ" + "˧غ" + "˧ØèÂ" + "˧èÍÁ" + "˧èÒ§" + "˧èÒÇ" + "ËÔ§" + "ËÔº" + "ËéÒ" + "Ë´" + "Ë·ÑÂ" + "˹" + "˹ǡ" + "˹Ǵ" + "˹Í" + "˹͡" + "˹ͧ" + "˹͹" + "˹ѡ" + "˹ѧ" + "˹ѧÊ×Í" + "˹Ѻ" + "˹Ñè¹" + "˹Ò" + "˹Ҵ" + "˹ҹ" + "˹ÒÁ" + "˹ÒÇ" + "˹Ó" + "˹ÓàÅÕéº" + "˹Õ" + "˹պ" + "˹Õé" + "˹ֺ" + "˹Öè§" + "˹״" + "˹Ø" + "˹ع" + "˹غ" + "˹ØèÁ" + "˹ØèÂ" + "˹Ù" + "˹çÍÂá¹è" + "˹èǧ" + "˹èÇÂ" + "˹èÇ¡Ե" + "˹èÍ" + "˹èÍÂ" + "˹èÒ" + "˹èÒ§" + "˹èÒÂ" + "˹éÒ" + "˹éÒ·Õè" + "ËÁ¡" + "ËÁ´" + "ËÁÇ¡" + "ËÁÇ´" + "ËÁÍ" + "ËÁÍ¡" + "ËÁͧ" + "ËÁ͹" + "ËÁͺ" + "ËÁÍÂ" + "ËÁÑ¡" + "ËÁÑ´" + "ËÁѹ" + "ËÁѺ" + "ËÁÑè¹" + "ËÁÑé¹" + "ËÁÒ" + "ËÁÒ¡" + "ËÁÒ¡ÎÍÊ" + "ËÁÒ§" + "ËÁÒ´" + "ËÁÒÂ" + "ËÁÔè¹" + "ËÁÕ" + "ËÁÕè" + "ËÁÖ¡" + "ËÁ×è¹" + "ËÁØ´" + "ËÁع" + "ËÁغ" + "ËÁغËÁÔº" + "ËÁØèÂ" + "ËÁÙ" + "ËÁÙè" + "ËÁè¹" + "ËÁèͧ" + "ËÁè͹" + "ËÁèÍÁ" + "ËÁèÒ" + "ËÁèÓ" + "ËÁéÍ" + "ËÁéÒÂ" + "Ë¡" + "Ë´" + "ËÂÇ¡" + "ËÂǺ" + "ËÂÍ¡" + "ËÂÍ¡àÍÔ¹" + "ËÂͧ" + "ËÂÍ´" + "ËÂÍÁáËÂÁ" + "ËÂÍÂ" + "ËÂÑ¡" + "ËÂѧ" + "ËÂÑ´" + "ËÂѹ" + "ËÂѺ" + "ËÂÑè§" + "ËÂÒ¡äÂè" + "ËÂÒ´" + "ËÂÒº" + "ËÂÒÁ" + "ËÂÒÇ" + "ËÂÓà»" + "ËÂÔ¡" + "ËÂÔº" + "ËÂÔÁ" + "ËÂÔè§" + "ËÂÕ" + "ËÂØ¡ËÂÔ¡" + "ËÂØ´" + "ËÂغ" + "ËÂØÁËÂÔÁ" + "ËÂØè¹" + "ËÂÙ¡ÂÒ" + "ËÂçͧáËÂç§" + "ËÂè§" + "ËÂèͧ" + "ËÂè͹" + "ËÂèÍÁ" + "ËÂèÍÂ" + "ËÂèÒ" + "ËôÕ" + "ËÃÃÉÒ" + "ËÃÍ" + "ËÃÍ¡" + "ËÃÍÂ" + "ËÃÒ" + "ËÃÔ" + "ËÃÔè§" + "ËÃÕ´" + "ËÃÕè" + "ËÃ×Í" + "ËÃغ" + "ËÃغÃÙè" + "ËÃغËÃÙè" + "ËÃØèÁ" + "ËÃÙ" + "ËÃçÍÁáËÃçÁ" + "ËÄ·ÑÂ" + "ËÄËÃÃÉì" + "ËÄâË´" + "ËÅ" + "Ëŧ" + "ËÅ´" + "ËŹ" + "Ëź" + "ËÅǧ" + "ËÅÇÁ" + "ËÅÍ" + "ËÅÍ¡" + "ËÅÍ´" + "ËÅ͹" + "ËÅÍÁ" + "ËÅÐ" + "ËÅÑ¡" + "ËÅѧ" + "ËÅÑ´" + "ËÅѺ" + "ËÅÑÇ" + "ËÅÑè§" + "ËÅÑè¹" + "ËÅÒ" + "ËÅÒ¡" + "ËÅÒ¹" + "ËÅÒº" + "ËÅÒÁ" + "ËÅÒÂ" + "ËÅÒÇ" + "ËÅÔ¡" + "ËÅÔÁ" + "ËÅÔÇ" + "ËÅÔèÇ" + "ËÅÕ" + "ËÅÕ¡" + "ËÅÕÎ×éÍ" + "ËÅ׺" + "ËÅØ¡ËÅÔ¡" + "ËÅØ´" + "ËÅع" + "ËÅغ" + "ËÅØÁ" + "ËÅÙè" + "ËÅè¹" + "ËÅèÁ" + "ËÅèÍ" + "ËÅè͹" + "ËÅèÐ" + "ËÅéÒ" + "Ëǧ" + "ËÇ´" + "Ëǹ" + "ËÇÂ" + "ËÇÍ" + "ËÇÍ´" + "ËÇÐ" + "ËÇѧ" + "ËÇÑ´" + "ËÇÑÇ" + "ËÇÑÇÃèÍ" + "ËÇÑè¹" + "ËÇÒ" + "ËÇÒ´" + "ËÇÒ¹" + "ËÇÒÁ" + "ËÇÒÂ" + "ËÇÓ" + "ËÇÔ´" + "ËÇÔÇ" + "ËÇÕ" + "ËÇÕ´" + "ËÇÕè" + "ËÇ×Í" + "ËÇØ´ËÇÔ´" + "ËÇØÁ" + "ËÇÙ´" + "ËÇçÍÂ" + "ËÇèÒ" + "ËÇèÒ§" + "ËÇèÒ¹" + "ËÇéÒ" + "ËÍ" + "ËÍ¡" + "Ëͧ" + "Ë͹" + "Ëͺ" + "ËÍÁ" + "ËÍÂ" + "ËÐáá" + "ËÑ¡" + "ËÑ´" + "Ëѵ¶¡ÃÃÁ" + "Ëѵ¶¡ÒÃ" + "Ëѵ¶¡Ô¨" + "Ëѵ¶ºÒÊ" + "Ëѵ¶ÈÔÅ»ì" + "Ëѵ¶ÈÖ¡ÉÒ" + "Ëѵ¶Õ" + "Ëѵ¶ì" + "Ëѹ" + "ËѺ" + "ËÑÇ" + "ËÑǺء" + "ËÑÇ˹éÒ" + "ËÑÇàÃÒÐ" + "ËÑÊ" + "ËÑè¹" + "ËÑé¹" + "ËÒ" + "ËÒ¡" + "ËÒ§" + "ËÒ" + "ËÒ´" + "ËÒ¹" + "ËÒº" + "ËÒÁ" + "ËÒÂ" + "ËÒ¹Ð" + "ËÒÃ" + "ËÒÃ×Í" + "ËÒÇ" + "ËÓ" + "ËÔ§ÊÒ" + "ËÔ§ËéÍÂ" + "ËÔ´" + "ËÔ¹" + "ËÔÁÐ" + "ËÔÁÒÅÑÂ" + "ËÔÃÑ" + "ËÔÃÔ" + "ËÔÇ" + "ËÔè§ËéÍÂ" + "ËÔé§" + "ËÔéÇ" + "ËÕ¹ÂÒ¹" + "ËÕº" + "ËÖ" + "ËÖ§" + "ËÖè§" + "Ë×´" + "Ë×¹" + "Ë×Í" + "Ë×è¹" + "Ë×éÍ" + "Ëا" + "Ëع" + "Ëغ" + "ËØÂÎÒ" + "ËØè¹" + "ËØé¹" + "ËØéÁ" + "ËÙ" + "ËÙ¡" + "ËÙ´" + "ËÙè" + "Ëâ´Á" + "ËèÁ" + "Ëèǧ" + "ËèÇÂ" + "ËèÍ" + "Ëè͹" + "ËèÒ" + "ËèÒ§" + "ËèÒ¹" + "ËèÒÁ" + "Ëéǧ" + "Ëéǹ" + "ËéÇÂ" + "ËéÍ" + "Ëéͧ" + "ËéÍÁ" + "ËéÍÂ" + "ËéÒ" + "ËéÒ§" + "ËéÒÁ" + "ËéÒÇ" + "ËéÓ" + "Í¡" + "Í¡µÑصÒ" + "Í¡µÑÙ" + "Í¡¹ÔÉ°ì" + "͡óÕÂì" + "Í¡ÃÃÁ¡ÃÔÂÒ" + "Í¡ØÈÅ" + "ͤµÔ" + "ͤҸ" + "ͧ¡ì" + "ͧ¤ªÒµÔ" + "ͧ¤Á¹µÃÕ" + "ͧ¤ÁÃÃÉ" + "ͧ¤ÃÑ¡Éì" + "ͧ¤ÇÔ·ÂÒ" + "ͧ¤Ò¾Â¾" + "ͧ¤ØÅ" + "ͧ¤ØÅÕ" + "ͧ¤ì" + "ͧ¤ì¡Ã" + "ͧ¤ì¡ÒÃ" + "ͧÈÒ" + "ͧÍÒ¨" + "ͧØè¹" + "ͨÅÒ" + "ͨԵµÔ" + "ͨԹµÒ" + "ͨԹäµÂ" + "ͨÔÃÐ" + "ͪ" + "ͪÒ" + "ͪԹ" + "ͪԹÕ" + "ͪÔÃ" + "ͯÇÕ" + "ͳÔ" + "ͳØ" + "ͳÙ" + "Í´" + "Í´Ô¶Õ" + "Í´ÔÈÃ" + "Í´ÔÈÇÃ" + "Í´ÔÈÑÂ" + "Í´Ôà·¾" + "Í´Ôàá" + "Í´Õµ" + "Í´ØÅ" + "Í´ØÅÂ" + "Í´ØÅÂì" + "͵Ԫҵ" + "͵ÔÁÒ¹Ð" + "͵ÔÃÒª" + "͵ÔÊÒÃ" + "͵Ôàá" + "Í·Ô¹¹Ò·Ò¹" + "͸ÃÃÁ" + "͸ԡÁÒÊ" + "͸ԡóì" + "͸ԡÇÒÃ" + "͸ԡÊØ÷Թ" + "͸ԡÒÃ" + "͸ԤÁ" + "͸ԯ°Ò¹" + "͸Ժ´Õ" + "͸ԺÒÂ" + "͸Ի" + "͸ԻäµÂ" + "͸ÔÃÒª" + "͸ÔÉ°Ò¹" + "͸֡" + "͹§¤³Ð" + "͹§¤àÅ¢Ò" + "͹§¤ì" + "͹§àÅ¢" + "͹¸¡ÒÃ" + "͹ѵµÒ" + "͹ѹµì" + "͹Ҥµ" + "͹ҤÒÁÕ" + "͹ҨÒÃ" + "͹Ҷ" + "͹ҶÒ" + "͹ҷÃ" + "͹ҸԻäµÂ" + "͹ÒÁÑÂ" + "͹Òê¹" + "͹ÒøÃÃÁ" + "͹ÒÃÂÐ" + "͹ÒÅÑÂ" + "͹Ԩ" + "͹Ԩ¨Ñ§" + "͹Ԩ¨Ò" + "͹ԯ°ÒÃÁÂì" + "͹ÔÂÁ" + "͹Öè§" + "͹Ø" + "͹ءÃ" + "͹ءÃÁ" + "͹ءÃÃÁ¡ÒÃ" + "͹ءҪҴ" + "͹ءÒÃ" + "͹ءÙÅ" + "͹بÃ" + "͹ت¹" + "͹تÒ" + "͹تҵ" + "͹تԵ" + "͹ØÒµ" + "͹ØÒâµµØÅÒ¡ÒÃ" + "͹طԹ" + "͹غ·" + "͹غÒÅ" + "͹ػÃÔÒ" + "͹ؾ§Èì" + "͹ؾѹ¸ì" + "͹ØÀÃÃÂÒ" + "͹ØÀÃÔÂÒ" + "͹ØÀÒ¤" + "͹ØÁѵÔ" + "͹ØÁÒµÃÒ" + "͹ØÁÒ¹" + "͹ØÁÙÅ" + "͹ØÃѡɹÔÂÁ" + "͹ØÃÑ¡Éì" + "͹ØÃÒª" + "͹ØÃÙ»" + "͹ØǧÈì" + "͹ØÇѵ" + "͹ØÈÒÊ¡" + "͹ØÈÒʵÃÒ¨ÒÃÂì" + "͹ØÈÒʹì" + "͹ØÈÔɯì" + "͹ØʵÔ" + "͹Øʹ¸Ô" + "͹ØÊÃ" + "͹ØÊóì" + "͹ØÊÑÒ" + "͹ØÊÑÂ" + "͹ØÊÒÇÃÕÂì" + "͹ØÊÒʹÕ" + "͹Øà¤ÃÒÐËì" + "͹Øà¶ÃÐ" + "͹ØâÁ·¹Ò" + "͹Øâ¤" + "͹ØâÅÁ" + "ͺ" + "ͺÒÂ" + "ͺÒÂÀÙÁÔ" + "ͺÒÂÁØ¢" + "Í»Á§¤Å" + ";¾" + ";ÒÃìµàÁ¹µì" + "ÍÀÑÂ" + "ÍÀÔª¹" + "ÍÀÔªÒµ" + "ÍÀÔÒ" + "ÍÀÔ¸ÃÃÁ" + "ÍÀÔ¸Ò¹" + "ÍÀԹѹ·ì" + "ÍÀÔ¹ÑÂ" + "ÍÀÔ¹ÔËÒÃ" + "ÍÀÔºÒÅ" + "ÍÀÔ»ÃѪÒ" + "ÍÀÔ»ÃÒÂ" + "ÍÀÔÁËÒÍÓ¹Ò¨" + "ÍÀÔÁÒ¹Ð" + "ÍÀÔÁØ¢" + "ÍÀÔôÕ" + "ÍÀÔÃÁÂì" + "ÍÀÔÃÑ¡Éì" + "ÍÀÔÅÑ¡¢ÔµÊÁÑÂ" + "ÍÀÔÇѹ·ì" + "ÍÀÔÇÒ·¹ì" + "ÍÀÔÊÁÑÂ" + "ÍÀÔÊÁÒ¨ÒÃ" + "ÍÀÔÊÁ⾸Ô" + "ÍÀÔÊÑÁ⾸Ô" + "ÍÀÔÊÔ·¸Ôì" + "ÍÀÔàÅ»¹ì" + "ÍÀÔàÉ¡" + "ÍÀÔä¸Â" + "ÍÁ" + "ÍÁµÐ" + "ÍÁ¹ØÉÂì" + "ÍÁÃ" + "ÍÁÃÒ" + "ÍÁÃÒÇ´Õ" + "ÍÁÃÔ¹·Ãì" + "ÍÁĵ" + "ÍÁĵÂÙ" + "ÍÁÔµÃ" + "ÍÁàÃÈ" + "ÍÂÒ¡" + "ÍÂظÂÒ" + "ÍÂÙè" + "ÍÂèÒ" + "ÍÂèÒ§" + "ÍÃ" + "ÍêÃ" + "ÍÃó¾" + "ÍÃö" + "ÍÃöҸԺÒÂ" + "ÍÃËÐ" + "ÍÃËѧ" + "ÍÃËѹµì" + "ÍÃÑ" + "ÍÃÔ" + "ÍÃÔºؤ¤Å" + "ÍÃÔÂÐ" + "ÍÃÔÊâµàµÔÅ" + "ÍÃس" + "ÍÃØâ³·ÑÂ" + "ÍÃä·" + "ÍÃèÍÂ" + "ÍÃèÒÁ" + "Íŧ¡µ" + "Íŧ¡Ã³ì" + "Íŧ¡ÒÃ" + "ÍÅǹ" + "ÍÅËÁèÒ¹" + "ÍÅѧ¡ÒÃ" + "ÍÅѪªÕ" + "ÍÅÖ觩Öè§" + "ÍÅàǧ" + "ÍÅèͧ©èͧ" + "ÍÅèÒ§©èÒ§" + "ÍÇ¡ÒÈ" + "ÍÇ´" + "ÍǵÒÃ" + "Íǹ" + "ÍǺ" + "ÍÇÁ§¤Å" + "ÍÇÂ" + "ÍÇÅ" + "ÍÇÊÒ¹" + "ÍÇËÒÃ" + "ÍÇÑÂÇÐ" + "ÍÇÔªªÒ" + "Íʧä¢Â" + "Íʹպҵ" + "ÍÊÁ¡ÒÃ" + "ÍÊÁÁÒµÃ" + "ÍÊþÔÉ" + "ÍÊѧËÒÃÔÁ·ÃѾÂì" + "ÍÊÑÕ" + "ÍÊÑá´ËÇÒ" + "ÍÊѵÂì" + "ÍÊÕµÔ" + "ÍÊبÔ" + "ÍÊعպҵ" + "ÍÊØáÒÂ" + "ÍÊØÃÕ" + "ÍÊÙÃ" + "ÍËѧ¡ÒÃ" + "ÍËÔ§ÊÒ" + "ÍËÔÇÒµ¡âä" + "ÍÍ" + "ÍÍ¡" + "ÍÍ¡«Ôਹ" + "ÍÍ¡«Ôപѹ" + "ÍÍ¡Ò" + "ÍÍ¡ä«´ì" + "ÍÍ´" + "ÍÍ´ÔâÍ" + "Í͹ªÍÃì" + "Í͹«Í¹" + "Í͹«ì" + "Í͹äŹì" + "ÍÍ»ªÑ¹" + "ÍÍ»à¨ç¡µì" + "ÍÍ¿" + "ÍÍ¿ªÍÃì" + "ÍÍ¿¿ÔÈ" + "ÍÍÁ" + "ÍÍÃÒà¤ÔÅ" + "ÍÍÃì᡹" + "ÍÍÊ" + "ÍÍÊàµÃàÅÕÂ" + "ÍФÃéÒÇ" + "ÍдÃÕ¹ÒÅÔ¹" + "ÍеÍÁ" + "ÍÐÃéÒÍÃèÒÁ" + "ÍÐÅØèÁÍÅèÇÂ" + "ÍÐÅØéÁÍÅèÇÂ" + "ÍÐÅÙÁÔà¹ÕÂÁ" + "ÍÐà¤×éÍ" + "ÍÐà«·ÔÅÕ¹" + "ÍÐäÃ" + "ÍÐäËÅè" + "ÍÑ¡" + "ÍÑ¡¢" + "ÍÑ¡¢ÃÇÔ¸Õ" + "ÍÑ¡¢ÃÇԺѵÔ" + "ÍÑ¡¢ÃÊÁÑÂ" + "ÍÑ¡¢ÃÐ" + "ÍÑ¡ÉÃ" + "ÍÑ¡ÉÐ" + "ÍÑ¡àʺ" + "ÍÑ¡â¢" + "ÍѤ¤Ð" + "ÍѤ¤Õ" + "ÍѤ¹Õ" + "ÍѤêÒÂÒ" + "ÍѤÃÁàËÊÕ" + "ÍѤÃÃÒª·Ùµ" + "Íѧ" + "Íѧ¡ÄÉ" + "Íѧ¡ÐÅا" + "Íѧ¤³Ò" + "Íѧ¤ÒÃ" + "Íѧ¤ÒÊ" + "ÍѧʵÃÍÁ" + "ÍѧʹÒ" + "ÍѨ¡ÅѺ" + "ÍѨ¨Ñ¹µì" + "ÍѨ¨ÑÂ" + "ÍѨ¨Ô" + "ÍѨ©ÃÒ" + "ÍѨ©ÃÔºؤ¤Å" + "ÍѨ©ÃÔÂÐ" + "ÍѨ¹Ò" + "ÍѪ¬Ò" + "ÍѪ¬ÒÊÑÂ" + "ÍѪ¹Ð" + "ÍѪÅÕ" + "ÍѪѹ" + "ÍÑ»ÃСÒÈ" + "ÍÑÁ³Õ" + "ÍÑÁÑÐ" + "ÍÑÃÙ»" + "ÍÑàªÔ" + "Íѯ" + "Íѯ°Ð" + "ÍÑ°" + "ÍÑ°ÌÊ" + "ÍÑ°Ô" + "ÍѲ¨Ñ¹·Ãì" + "ÍѲÀÒ¤" + "ÍѲÁ³±Å" + "ÍѲÁÒÊ" + "ÍѲÃѵµÔ" + "Íѳ±ªÐ" + "Íѳ±Ð" + "Íѳ±Ò¡ÒÃ" + "ÍÑ´" + "Íѵ¤Ñ´" + "ÍѵªÕÇ»ÃÐÇѵÔ" + "ÍѵµÐ" + "ÍѵµÒ" + "ÍѵµÒ¸Ô»äµÂ" + "Íѵ¹ÑÂ" + "ÍѵÀÒ¾" + "ÍѵÃÒ" + "ÍѵÇÔ¹ÔºÒµ¡ÃÃÁ" + "Íѵâ¹ÁѵÔ" + "ÍѸÂÒÈÑÂ" + "Íѹ" + "Íѹ´Ñº" + "ÍѹµÃ¸Ò¹" + "ÍѹµÃÒÂ" + "Íѹ¸¡ÒÃ" + "Íѹ¸¾ÒÅ" + "Íѹà´ÍÃì" + "ÍѺ" + "ÍÑ»ÀÒ¤Âì" + "ÍÑ»Á§¤Å" + "ÍÑ»ÂÈ" + "ÍÑ»ÃÐÁÒ³" + "ÍÑ»ÃÒªÑÂ" + "ÍÑ»ÃÕÂì" + "ÍÑ»Åѡɳì" + "ÍÑ»ÊÃ" + "ÍÑ»à»ËÔ" + "ÍѾà¡Ã´" + "ÍѾവ" + "ÍѾഷ" + "ÍÑ¿" + "ÍÑÁ¾Ã" + "ÍÑÁ¾Ä¡Éì" + "ÍÑÁ¾Ò" + "ÍÑÁ¾Òµ" + "ÍÑÁ¾Øª" + "ÍÑÁÊàµÍÃì´ÑÁ" + "ÍÑ¡Ò" + "ÍÑ¡ÒÃ" + "ÍÑÂÂÔ¡Ò" + "ÍÑŨÕàÃÕÂ" + "ÍÑźÑéÁ" + "ÍÑźÒà¹ÕÂ" + "ÍÑÅàºà¹ÕÂ" + "ÍÑȨÃÃÂì" + "ÍÑÈÇÔ¹" + "ÍÑÈÇÔ¹Õ" + "ÍÑÈà¨ÃÕÂì" + "ÍÑÉ®ÒÂØ·" + "ÍÑÉ®ÒÇظ" + "ÍÑÊ´§" + "ÍÑÊ´§¤µ" + "ÍÑÊ´Ã" + "ÍÑʹÕ" + "ÍÑÊÊÐ" + "ÍÑÊÊÒÊÐ" + "ÍÑÊÊØ" + "ÍÑé¡" + "ÍÑé§ÂÕè" + "ÍÑé§âÅè" + "ÍÑé¹" + "ÍÑê¡" + "ÍÑë¹" + "ÍÒ" + "ÍÒ¡Ã" + "ÍÒ¡Ñ»¡ÔÃÔÂÒ" + "ÍÒ¡ÒÃ" + "ÍÒ¡ÒÈ" + "ÍÒ¡ÙÅ" + "ÍÒ¡éÒ" + "ÍÒ¢ÂÒ¹" + "ÍÒ¤Á" + "ÍҤѹµØ¡Ð" + "ÍÒ¤ÒÃ" + "ÍÒ¤à¹Âì" + "ÍÒ¦Òµ" + "ÍÒ§¢¹Ò§" + "ÍÒ¨" + "ÍÒ¨Á" + "ÍÒ¨ÃÔÂÇѵÃ" + "ÍÒ¨Ò´" + "ÍÒ¨ÒÃÂì" + "ÍÒ¨Ô³" + "ÍÒªÒ" + "ÍÒªÒ" + "ÍÒªÒä¹Â" + "ÍÒªÕ¾" + "ÍÒªÕÇÈÖ¡ÉÒ" + "ÍÒªÕÇÐ" + "ÍÒÒ" + "ÍҳѵÔ" + "ÍÒ³Ò" + "ÍÒ´" + "ÍÒ´ÙÃ" + "ÍÒµÁÀÒ¾" + "ÍÒµÁÒ" + "ÍÒ¶Ãþ³ì" + "ÍÒ¶Ãþì" + "ÍÒ·Ã" + "ÍÒ·Ô" + "ÍÒ·ÔµÂì" + "ÍÒ¹" + "ÍÒ¹ÔʧÊì" + "ÍÒ¹ØÀÒ¾" + "ÍÒº" + "ÍҺѵÔ" + "ÍÒ¾Ò¸" + "ÍÒ¿¡Ò¹Ôʶҹ" + "ÍÒ¿ÃÔ¡Ò" + "ÍÒÀóì" + "ÍÒÀѾ" + "ÍÒÀÒ" + "ÍÒÁÔÊ" + "ÍÒÂ" + "ÍÒµ¹Ð" + "ÍÒÂÑ´" + "ÍÒÂØ" + "ÍÒÂØÃÈÒʵÃì" + "ÍÒÂØÃàǪ" + "ÍÒÂØÃá¾·Âì" + "ÍÒúԤ" + "ÍÒÃÁ³ì" + "ÍÒê¹" + "ÍÒêҵÔ" + "ÍÒøÃÃÁ" + "ÍÒûÃÐà·È" + "ÍÒÃÂÐ" + "ÍÒÃÂѹ" + "ÍÒÃÑ¡¢Ò" + "ÍÒÃÑ¡Éì" + "ÍÒÃÑÁÀ¡¶Ò" + "ÍÒÃÑÁÀº·" + "ÍÒÃÒ¸¹Ò" + "ÍÒÃÒÁ" + "ÍÒÃÒÁÔ¡" + "ÍÒÃÒàºÕÂ" + "ÍÒÃÕ" + "ÍÒÃ줵ԡ" + "ÍÒÃìૹÍÅ" + "ÍÒÅ»¹Ð" + "ÍÒÅÐÇÒ´" + "ÍÒÅѡɳì" + "ÍÒÅÑÂ" + "ÍÒÅÑÇ" + "ÍÒÇ" + "ÍÒÇóì" + "ÍÒÇÒÊ" + "ÍÒÇÒËÐ" + "ÍÒÇظ" + "ÍÒÇØâÊ" + "ÍÒÇì" + "ÍÒÈÃÁ" + "ÍÒÈÑÂ" + "ÍÒÈÔÃÇÒ·" + "ÍÒʹÐ" + "ÍÒʹì" + "ÍÒÊÑ" + "ÍÒÊÒ" + "ÍÒÊÒÌ˺٪Ò" + "ÍÒÊÙÃ" + "ÍÒËÃѺ" + "ÍÒËÒÃ" + "ÍÒà¨Õ¹" + "ÍÒà«ÕÂ" + "ÍÒàÃàºÕÂ" + "ÍÒàǤ" + "ÍÒàÇÈ" + "ÍÒàÈÕÂÃÇÒ·" + "ÍÓ" + "ÍÓ¹ÇÂ" + "ÍÓ¹Ò¨" + "ÍӾйÓ" + "ÍӾѹ" + "ÍÓÁĵ" + "ÍÓÁËÔµ" + "ÍÓÁÒµÂì" + "ÍÓÅÒ" + "ÍÓàÀÍ" + "ÍÓä¾" + "ÍÔ§" + "ÍÔ§¤ì" + "ÍÔ§¤ìà¨çµ" + "ÍÔ¨©Ò" + "Íԩѹ" + "ÍÔ¯°ÒÃÁ³ì" + "ÍÔ°" + "ÍÔ´" + "ÍÔµ¶Õ" + "ÍÔµÒÅÕ" + "ÍÔµÒàÅÕ¹" + "ÍÔ·¸Ô" + "ÍÔ¹" + "ÍÔ¹«ÙÅÔ¹" + "ÍÔ¹·¹ÔÅ" + "ÍÔ¹·¼ÅÑÁ" + "ÍÔ¹·Ã¸¹Ù" + "ÍÔ¹·ÃǧÈì" + "ÍÔ¹·ÃÇÔàªÕÂÃ" + "ÍÔ¹·ÃÒ" + "ÍÔ¹·ÃÒà¹çµ" + "ÍÔ¹·ÃÕ" + "ÍÔ¹·ÃÕÂÊѧÇÃ" + "ÍÔ¹·ÃÕÂì" + "ÍÔ¹·Ãì" + "ÍÔ¹¾Øµ" + "ÍÔ¹¿ÃÒàô" + "ÍÔ¹¿ÍÃìÁÔ¡" + "ÍԹѧ" + "ÍÔ¹à´ÕÂ" + "ÍÔ¹à´Õ¹ᴧ" + "ÍÔ¹àµÍÃì" + "ÍÔ¹àµÍÃìà¹çµ" + "ÍÔ¹àµÍÃìà¿«" + "ÍÔ¹à·Å" + "ÍÔ¹à·ÍÃì๵" + "ÍÔ¹à·ÍÃìà¹çµ" + "ÍÔ¹à·ÍÃìà¿«" + "ÍԹⴹÔà«ÕÂ" + "ÍԹⴹÕà«ÕÂ" + "ÍÔ¹â´à«ÕÂ" + "ÍÔÁ¾ÍÃìµ" + "ÍÔÁàÁ¨" + "ÍÔÂÔ»µì" + "ÍÔÃÔÂÒº¶" + "ÍÔÈÇÃ" + "ÍÔɯÕ" + "ÍÔɯì" + "ÍÔÊ" + "ÍÔʵÃÕ" + "ÍÔÊÃÀÒ¾" + "ÍÔÊÃÐ" + "ÍÔÊÃÒàÍÅ" + "ÍÔÊÃÔÂÂÈ" + "ÍÔÊÃÔÂÐ" + "ÍÔÊÃÔÂÒÀóì" + "ÍÔÊÊÒ" + "ÍÔÊÔ" + "ÍÔÊÕ" + "ÍÔËÁèÒÁ" + "ÍÔËÃèÒ¹" + "ÍÔËÅÑ¡ÍÔàËÅ×èÍ" + "ÍÔàÅ硵Ã͹" + "ÍÔàÅç¡·Ã͹ԡÊì" + "ÍÔàÅç¡â·¹" + "ÍÔèÁ" + "ÍÕ" + "ÍÕ¡" + "ÍÕ¡Ò" + "ÍÕ¡éÍ" + "ÍÕ¤ÍÁàÁÔÃì«" + "ÍչاµØ§¹Ñ§" + "ÍÕÁÙ" + "ÍÕÂÔ»µì" + "ÍÕÅØè©ØÂá©¡" + "ÍÕÅØéÁ" + "ÍÕÊÒ¹" + "ÍÕÊØ¡ÍÕãÊ" + "ÍÕËÃͺ" + "ÍÕËÅÑ¡ÍÔàËÅ×èÍ" + "ÍÕËÅÕ" + "ÍÕàµéÍ" + "ÍÕà·ÍÃì" + "ÍÕàÁÅì" + "ÍÕàËÅÐà¢Ð¢Ð" + "ÍÕâËÅ¡â¢Å¡à¢Å¡" + "ÍÕê´" + "ÍÕë" + "ÍÖ" + "ÍÖ¡" + "ÍÖ¡·Ö¡" + "ÍÖ¡ÍÑ¡" + "ÍÖ§" + "ÍÖ§ÁÕè" + "ÍÖ§ÍÅ" + "ÍÖ´" + "ÍÖè§" + "ÍÖé§" + "ÍÖé´·Öè´" + "ÍÖê¡" + "Í×´" + "Í×Í" + "Í×è¹" + "Í×é¹" + "Í×éÍ" + "ÍØ" + "ÍØ¡" + "ÍØ¡¡ÒºÒµ" + "ÍØ¡Äɯì" + "Íب¨ÒÃÐ" + "ÍبҴ" + "ÍبÒÃÁÃä" + "Íب੷" + "ÍتØ" + "Íد°Ò¡ÒÃ" + "ÍسËÀÙÁÔ" + "ÍسËÐ" + "ÍسËÒ¡ÒÃ" + "ÍسËÔÊ" + "ÍسÒ" + "ÍØ´" + "ÍØ´Á" + "ÍØ´Ã" + "Íش˹ع" + "Íص¾Ô´" + "ÍصôԵ¶ì" + "ÍصÃÔ" + "ÍصÅØ´" + "ÍصÊÒË¡ÃÃÁ" + "ÍصÊÒËÐ" + "ÍصÊèÒËì" + "ÍصØ" + "ÍØ·¡" + "ÍØ·¸Ã³ì" + "ÍØ·¸Ñ¨" + "ÍØ·ÂÒ¹" + "ÍØ·Ã" + "ÍØ·ÅØÁ" + "ÍطѪ" + "ÍØ·ÑÂ" + "ÍØ·Ò¹" + "ÍØ·ÒÃ" + "ÍØ·ÒËóì" + "ÍØ·ÔÈ" + "ÍØ·ØÁ¾Ã" + "ÍظѨ" + "Íغ" + "ÍغÅ" + "ÍغÍÔº" + "ÍغÐ" + "ÍغѵÔ" + "Íغҷ" + "ÍغҷÇì" + "ÍغÒÂ" + "ÍغÒÊ¡" + "ÍغÒÊÔ¡Ò" + "ÍغêÐ" + "ÍØ»" + "ÍØ»¡Ã³ì" + "ÍØ»¡ÃÁ" + "ÍØ»¡ÒÃÐ" + "ÍØ»¡ÒÃÕ" + "ÍØ»¶ÑÁÀ¡" + "ÍØ»¶ÑÁÀì" + "ÍØ»·Ò¹" + "ÍØ»·Ùµ" + "ÍØ»¹ÑÂ" + "ÍØ»¹Ò¡" + "ÍØ»¹ÔÊÑÂ" + "ÍØ»ÁÒ" + "ÍØ»ÁÒ¹" + "ÍØ»ÃÒª" + "Íػʧ¤ì" + "ÍØ»ÊÁº·" + "ÍØ»ÊÃä" + "ÍØ»ÊÑÁ»·Ò" + "ÍػѪ¬ÒÂÐ" + "ÍػѪ¬ÒÂì" + "Íػѯ°Ò¡" + "Íػѯ°Ò¹Ð" + "ÍػѷÇѹµÃÒÂ" + "ÍػѷÇà˵Ø" + "Íػҷҹ" + "ÍØ»âÀ¤" + "ÍØ»â¤" + "ÍØ»âÅ¡¹ì" + "ÍØ»äÁÂ" + "ÍØÂ" + "ÍØÃÐ" + "ÍØÃѧÍصѧ" + "ÍØÃÒ" + "ÍØÃØ" + "ÍØÃاÍصѧ" + "ÍØɳÕÂì" + "ÍØÉÒ" + "ÍØÊÒ" + "ÍØÊØ" + "ÍØມ¢Ò" + "ÍØàËÁè" + "ÍØáÇé" + "ÍØâ¦É" + "ÍØâºÊ¶" + "ÍØâÁ§¤ì" + "ÍØäÃ" + "ÍØè¹" + "ÍØèÂ" + "ÍØé§" + "ÍØéÁ" + "ÍØéÂ" + "ÍØêÂ" + "ÍÙ" + "ÍÙ°" + "ÍÙ´" + "ÍÙÁ" + "ÍÙÃØ" + "ÍÙè" + "ÍÙé" + "ÍÙéÍÕé" + "ÍÙëÍÕë" + "Íà¨Å¡" + "Íà¨ÅÐ" + "Í๡" + "Í๡¤Ø³" + "Í๨͹Ҷ" + "Íà»ËÔ" + "ÍàÁ" + "ÍàÁÃԡѹ" + "ÍàÁÃÔ¡Ò" + "ÍàǨÕ" + "Íá´»àµÍÃì" + "Íâ¦ÉÐ" + "Íâ³·ÑÂ" + "Í⹪Ò" + "Íâ¹´Òµ" + "ÍâÅËÐ" + "ÍâÈ¡" + "ÍâËÊÔ" + "Íèͧ" + "Íè͹" + "ÍèÍÂ" + "ÍèÒ" + "ÍèÒ§" + "ÍèÒ¹" + "ÍèÒÇ" + "ÍèÓ" + "Íé¹" + "ÍéÇ¡" + "Íéǹ" + "ÍéÍ" + "Íé͹" + "Íé͹áÍé¹" + "ÍéÍÁ" + "ÍéÍÂ" + "ÍéÍÂÊéÍÂ" + "ÍéÍÂÍÔè§" + "ÍéÒ" + "ÍéÒ§" + "ÍéÒÂ" + "ÍéÒÇ" + "ÍéÓÍÖé§" + "ÍêÍ´" + "ÍêÐ" + "ÍëÍ" + "Íëͧ" + "ÍëÍÂ" + "Ρà¡Õé¹" + "Îǧ«ØéÂ" + "Îǹ" + "ÎǺ" + "ÎÍ¡¡Õé" + "ÎÍ´" + "Î͹â¹ÅÙÅÙ" + "ÎÍÃìâÁ¹" + "ÎÍÅѹ´Ò" + "ÎÍÅᏴì" + "ÎÐ" + "ÎÑ¡" + "Îѧ¡ÒÃÕ" + "ÎÑè¹" + "ÎÑéÇ" + "ÎÒ" + "ÎÒÁ" + "ÎÒÃì´´Ôʤì" + "ÎÒÃì´áÇÃì" + "ÎÒàÃçÁ" + "ÎÒâÅÇÕ¹" + "ÎÔµ" + "ÎÔ¹´Ù" + "ÎÔ»â»â»àµÁÑÊ" + "ÎÔÊ·ÕàÃÕÂ" + "ÎÕàÅÕÂÁ" + "ÎÕâÃè" + "ÎÖ" + "ÎÖ¡" + "ÎÖ´" + "ÎÖ´ÎÑ´" + "ÎÖÁ" + "ÎÖÂ" + "ÎÖèÁ" + "Î×´ÎÒ´" + "Î×Í" + "Î×èÍ" + "Î×éÍ" + "Îغ" + "ÎØÂàÅÎØÂ" + "ÎÙ¡" + "ÎÙÁ" + "ÎÙé" + "ÎèÍ" + "Îèͧ¡§" + "Îèͧàµé" + "ÎéÍ" + "ÎéÒ" + "à¡" + "à¡¡ÁÐàËá" + "ࡨÔÍÒ¨ÒÃÂì" + "ࡳ±ì" + "à¡´" + "ࡵØ" + "ࡹ" + "à¡Á" + "à¡ÁÊì" + "à¡Â" + "à¡Ã§" + "à¡Ã´" + "à¡ÃÍÐ" + "à¡ÃÒÐ" + "à¡ÃÔ¡" + "à¡ÃÔè¹" + "à¡ÃÕ¡" + "à¡ÃÕ§" + "à¡ÃÕ¹" + "à¡ÃÕº" + "à¡ÃÕÂÁ" + "à¡ÃÕÂÇ" + "à¡ÃÕéÂÇ" + "à¡Ãç§" + "à¡Ãç´" + "à¡ÃèÍ" + "à¡Å" + "à¡ÅÍ" + "à¡ÅÒ" + "à¡ÅÕ§" + "à¡ÅÕ´" + "à¡ÅÕÂÇ" + "à¡ÅÕèÂ" + "à¡ÅÕéÂ" + "à¡ÅÕé§" + "à¡Å×Í" + "à¡Å×Í¡" + "à¡Å×è͹" + "à¡Å×éÍ" + "à¡Å×é͹" + "à¡Åç´" + "à¡ÅéÒ" + "à¡ÇÕ¹" + "à¡È" + "à¡ÈÒ" + "à¡ÈÔ¹Õ" + "à¡ÉµÃ" + "à¡ÉµÃ¡Ã" + "à¡ÉµÃ¡ÃÃÁ" + "à¡ÉÁ" + "à¡ÉÕ³" + "à¡ÉÕ¹" + "à¡ÊÃ" + "à¡Í" + "à¡ÍÃì" + "à¡ÍÔªÒ" + "à¡Ð" + "à¡Ð¡Ð" + "à¡Ò" + "à¡Òµì" + "à¡Ò·Ñ³±ì" + "à¡ÒÅÑ´" + "à¡ÒËÅÕ" + "à¡ÒÐ" + "à¡ÒàËÅÒ" + "à¡Ô§" + "à¡Ô´" + "à¡Ô¹" + "à¡ÕÂ" + "à¡Õ§" + "à¡Õ¨" + "à¡Õ´" + "à¡Õ¹" + "à¡ÕÂõÔ" + "à¡ÕÂõԤس" + "à¡ÕÂõԹÔÂÁ" + "à¡ÕÂõԻÃÐÇѵÔ" + "à¡ÕÂõÔÀÙÁÔ" + "à¡ÕÂõÔÂÈ" + "à¡ÕÂõÔÈÑ¡´Ôì" + "à¡ÕÂõÔì" + "à¡ÕÂÃì" + "à¡ÕèÂ" + "à¡Õè§" + "à¡ÕèÂÇ" + "à¡ÕéÂÁÍÕë" + "à¡ÕéÂÁä©è" + "à¡ÕéÂÇ" + "à¡ÕêÂÇ" + "à¡ÕêÂÐ" + "à¡×Í¡" + "à¡×ͺ" + "à¡×éÍ" + "à¡àÃ" + "à¡ç§" + "à¡ç¨" + "à¡çº" + "à¡è§" + "à¡è§¡Ò¨" + "à¡è¹" + "à¡èÒ" + "à¡é" + "à¡é§" + "à¡é§¡éÒ§" + "à¡éÍ" + "à¡éÒ" + "à¡éÒÍÕé" + "à¡ê" + "à¡ê¡" + "à¡ê¡ÎÇÂ" + "à¡ë" + "à¡ë§" + "à¡ëÒ" + "à¢" + "ࢡ" + "ࢵ" + "ࢹ" + "ࢹ§" + "ࢹÂ" + "ࢹç´" + "ࢺ稢ºÇ¹" + "ࢺçµ" + "à¢ÁÃ" + "à¢ÁÒ" + "à¢Á×ͺ" + "à¢Áç§" + "à¢Áç´á¢Áè" + "à¢Áè¹" + "à¢ÁèÒ" + "à¢Áé¹" + "à¢Â" + "à¢Â¡" + "à¢ÂÔº" + "à¢Â×é͹" + "à¢Âè§" + "à¢ÂèÒ" + "à¢ÂéÍá¢Âè§" + "à¢ÃÍÐ" + "à¢Å§" + "à¢ÅÍÐ" + "à¢ÅÐ" + "à¢ÅÒ" + "à¢ÅÒÐ" + "à¢Ç" + "à¢ÉÁ" + "à¢ÌÐ" + "à¢Ð¢Ð" + "à¢Ò" + "à¢Ô¹" + "à¢Õ§" + "à¢Õ´" + "à¢Õ¹" + "à¢ÕÂÁ" + "à¢ÕÂÇ" + "à¢ÕèÂ" + "à¢ÕéÂÇ" + "à¢×Í" + "à¢×èͧ" + "à¢×è͹" + "à¢ç" + "à¢ç´" + "à¢ç¹" + "à¢çÁ" + "à¢è§" + "à¢è¹" + "à¢èÒ" + "à¢éÁ" + "à¢éÒ" + "हÂÒ" + "à¤ÁÕ" + "à¤Â" + "à¤Ã§" + "à¤Ã´Ôµ" + "à¤ÃÒ" + "à¤ÃÒÐËì" + "à¤ÃÕ´" + "à¤Ã×Í" + "à¤Ã×èͧ" + "à¤Ã×èͧ¾ÔÁ¾ì" + "à¤Ãè§" + "à¤Ã觤ÃÑ´" + "à¤ÅÔºà¤ÅÔéÁ" + "à¤ÅÔéÁ" + "à¤ÅÕÂ" + "à¤Å×ͺ" + "à¤Å×è͹" + "à¤Åç´" + "à¤Åé¹" + "à¤ÅéÒ" + "à¤Çé§" + "à¤Ë" + "à¤ËÐ" + "à¤ËÒ" + "à¤ÍÃìà¹Å" + "à¤ÍÐ" + "à¤Ò¹ìàµÍÃì" + "à¤Òþ" + "à¤ÒÐ" + "à¤Õ§" + "à¤Õ´" + "à¤Õ¹" + "à¤ÕÂÇ" + "à¤ÕèÂÁ" + "à¤ÕèÂÇ" + "à¤ÕéÂÇ" + "à¤×ͧ" + "à¤àºÔÅ" + "à¤çÁ" + "à¤é¡" + "à¤é¹" + "à¤éÒ" + "à¤éà¡é" + "à¦Õè¹" + "ৡ" + "à§Â" + "à§ÍÐ" + "à§ÍЧÐ" + "à§Ò" + "à§ÒÐ" + "à§Ô¹" + "à§Õº" + "à§Õè§" + "à§Õè¹" + "à§ÕèÂËÙ" + "à§ÕéÂÇ" + "à§×Í¡" + "à§×Í´" + "à§×ͺ" + "à§×èͧ" + "à§×è͹" + "à§×è͹ä¢" + "à§×éÍ" + "à§×éÍÁ" + "à§èÒ" + "à§éÒ" + "à¨" + "਴ÕÂʶҹ" + "਴ÕÂì" + "ਵ" + "ਵ¤µÔ" + "ਵ¨Ó¹§" + "ਵ¹Ò" + "ਵ¹ÒÃÁ³ì" + "ਵÀÙµ" + "ਵÊÔ¡" + "ਹ" + "à¨ÁÊì" + "à¨Ã¨Ò" + "à¨ÃÔ" + "à¨ÃÔ´" + "à¨Çç´" + "à¨É®Ò" + "à¨Í" + "à¨ÍÃì" + "à¨ÍÐ" + "à¨ÒÐ" + "à¨Ô´" + "à¨ÔÁ" + "à¨Ôè§" + "à¨Ôè¹" + "à¨Õ´" + "à¨Õ¹" + "à¨ÕÂÁ" + "à¨ÕÂÃÐä¹" + "à¨ÕÂÇ" + "à¨Õêº" + "à¨ÕêÂÇ" + "à¨ÕêÂǨêÒÇ" + "à¨Õë¹" + "à¨ÕëÂÁà¨ÕéÂÁ" + "à¨×Í" + "à¨×è͹" + "à¨×éÍÂ" + "à¨ç´" + "à¨çº" + "à¨èÍ" + "à¨èÒ" + "à¨éÒ" + "à¨éÒªÙé" + "à¨ê" + "à¨ê¡" + "à¨ê§" + "à¨êµ" + "à¨êÒ" + "à¨ëÍ" + "à©" + "à©¡" + "à©´" + "੾ÒÐ" + "à©Â" + "à©ÂàÁÂ" + "à©ÅÂ" + "à©ÅÒ" + "à©ÅÔÁ" + "à©ÅÕ§" + "à©ÅÕÂÇ" + "à©ÅÕèÂ" + "à©ÇÕ§" + "à©ÇÕ¹" + "à©ÍÐá©Ð" + "à©Ò" + "à©Ò¡êÇÂ" + "à©ÒÐ" + "à©Ô´" + "à©Ôº" + "à©Õ§" + "à©Õ´" + "à©Õº" + "à©ÕÂÇ" + "à©ÕèÂÇ" + "à©×͹" + "à©×èÍÂ" + "à©â¡" + "à©è§" + "હ" + "àªÂ" + "àªÅ" + "àªÅÂ" + "àªÉ°Ò" + "àªÍ" + "àªÍÃì" + "àªÒǹì" + "àªÒÇì" + "àªÔ§" + "àªÔ" + "àªÔ´" + "àªÔéµ" + "àªÕ§" + "àªÕ§ãËÁè" + "àªÕº" + "àªÕÂÃì" + "àªÕÂÇ" + "àªÕè¹" + "àªÕèÂÇ" + "àª×Í¡" + "àª×Í´" + "àª×͹" + "àª×èÍ" + "àª×èͧ" + "àª×èÍÁ" + "àª×éÍ" + "àªç¤" + "àªç´" + "àªè¹" + "àªèÒ" + "àªé§" + "àªéÒ" + "à«" + "૵" + "ૹ" + "ૹµÔ¡ÃÑÁ" + "ૹµÔÅÔµÃ" + "ૹµÔà¡Ã´" + "ૹµÔàÁµÃ" + "ૹµì" + "ૻѡµÃСÃéÍ" + "à«¿" + "à«ÃØèÁ" + "à«ÅÅÙÅÍ´ì" + "à«ÅÅÙâÅÊ" + "à«ÅÅì" + "à«ÅÊì" + "à«Åà«ÕÂÊ" + "à«Í" + "à«ÍÃì" + "à«ÍÃìÇÔÊ" + "à«ÍÐ" + "à«Ò" + "à«ÒÐ" + "à«Ô§" + "à«ÔÃì¿àÇÍÃì" + "à«Ôé§" + "à«Õ¹" + "à«ÕÂÁ«Õ" + "à«ÕÂÇ" + "à«Õè§äÎé" + "à«×èͧ" + "à«ç¡àÁ¹µì" + "à«ç§" + "à«ç¹" + "à«ç¹àµÍÃì" + "à«è§" + "à«è¹" + "à«èÍ" + "à«é§" + "à«éÒ«Õé" + "à¬Í" + "à¬ÍàÍÁ" + "à²èÒ" + "à³Ã" + "à´¡«ìâ·ÃÊ" + "à´¤Ò¡ÃÑÁ" + "à´¤ÒÅÔµÃ" + "à´¤ÒàÁµÃ" + "à´ª" + "à´ªÐ" + "à´«Ô¡ÃÑÁ" + "à´«ÔÅÔµÃ" + "à´«ÔàÁµÃ" + "à´¹" + "à´¹ÁÒÃì¡" + "à´¹ÁÒÃì¤" + "à´ºÔµ" + "à´ÃѨ©Ò¹" + "à´ÅÅì" + "à´ÇÔ´" + "à´Ê¡ì·Í»" + "à´ÍÐ" + "à´Ò" + "à´ÒÐ" + "à´Ô¹" + "à´ÔÁ" + "à´ÕÂ" + "à´Õ§" + "à´Õ´" + "à´ÕÂÃ" + "à´ÕÂôÒÉ" + "à´ÕÂöÕÂì" + "à´ÕÂÃѨ©Ò¹" + "à´ÕÂÇ" + "à´ÕÂÐ" + "à´ÕèÂÇ" + "à´ÕéÂ" + "à´ÕëÂÇ" + "à´×Í´" + "à´×͹" + "à´×ÍÂ" + "à´âª" + "à´ç¡" + "à´ç¨" + "à´ç´" + "à´è" + "à´è¹" + "à´èÒ" + "à´é§" + "à´éÒ" + "à´ëÍ" + "à´ëÍ´ëÒ" + "àµÂ" + "àµÃÕÂ" + "àµÃÕ´" + "àµÃÕÂÁ" + "àµÃç´" + "àµÃè" + "àµÅÔ´" + "àµÇç´" + "àµÍÃì" + "àµÍÃì¡Õ" + "àµÍÐ" + "àµÐ" + "àµÒ" + "àµÒÐáµÐ" + "àµÔº" + "àµÔÁ" + "àµÔè§" + "àµÕ§" + "àµÕ¹" + "àµÕº" + "àµÕèÂ" + "àµÕèÂÇ" + "àµÕéÂ" + "àµÕëÂÁ" + "àµ×͹" + "àµ×éÍ" + "àµç§" + "àµç¹·ì" + "àµçÁ" + "àµè§" + "àµèÍ" + "àµèÒ" + "àµé¹" + "àµéÒ" + "àµéÒ·Ö§" + "àµéÒÊèǹ" + "àµéÒËÙé" + "àµéÒÎÇÂ" + "àµéÒà¨ÕéÂÇ" + "àµéÒàÊÕº" + "àµê¡" + "àµêÐ" + "àµëÒ" + "ඡԧ" + "ඹ" + "à¶Ã" + "à¶ÃÐ" + "à¶ÃÒ¹Øà¶ÃÐ" + "à¶ÅÔ§" + "à¶Å×Í¡¶Å¹" + "à¶Åä¶Å" + "à¶ÍÐ" + "à¶Ò" + "à¶ÒÇÑÅÂì" + "à¶ÒÐ" + "à¶Ô¡" + "à¶Ô´" + "à¶Ô´à·Ô§" + "à¶Ô¹" + "à¶Õ§" + "à¶×Í" + "à¶×Í¡" + "à¶×è͹" + "à¶èÍ" + "à¶éÒ" + "à·" + "à·¤¹Ô¤" + "à·¤â¹âÅÂÕ" + "à·¹¹ÔÊ" + "à·»" + "à·¾" + "à·¾´Ò" + "à·¾¸Ô´Ò" + "à·¾¹Á" + "෾´Ò" + "à·¾Âà¨éÒ" + "à·¾ÒÃÑ¡Éì" + "à·¾Õ" + "à·¾à¨éÒ" + "à·Á»ØÃÐ" + "à·Ã´à´ÍÃì" + "à·Ã¹à¹ÍÃì" + "à·Ç´Ò" + "à·Ç·Ñ³±ì" + "à·Ç·Ùµ" + "à·Ç¸ÃÃÁ" + "à·Ç¸Ô´Ò" + "à·Ç¹ÔÂÁ" + "à·ÇÃÙ»" + "à·ÇÉ" + "à·Çʶҹ" + "à·ÇÑ" + "à·Çѹ" + "à·ÇÒÅÑÂ" + "à·ÇÕ" + "à·ÇâÅ¡" + "à·È" + "à·È¡ÒÅ" + "à·È¹Ò" + "à·È¹ì" + "à·ÈºÒÅ" + "à·ÈÁ¹µÃÕ" + "à·ÈÒÀÔºÒÅ" + "à·Êµì" + "à·ËÇѵ¶Ø" + "à·Ëì" + "à·Í" + "à·ÍÁ" + "à·ÍÃìâÁÁÔàµÍÃì" + "à·ÍзÐ" + "à·Ò" + "à·Ô´" + "à·Ô¹" + "à·Ôº" + "à·Ôè§" + "à·ÔéÁ" + "à·Õ¹" + "à·Õº" + "à·ÕÂÁ" + "à·ÕÂÇ" + "à·Õè§" + "à·ÕèÂÇ" + "à·×Í¡" + "à·àºÔÅ" + "à·àŤÍÁ" + "à·àÇÈÃì" + "à·àÇÈÇÃì" + "à·â¾" + "à·ç¨" + "à·è" + "à·èÍ" + "à·èÒ" + "à·é§àµé§" + "à·éÍ" + "à·éÒ" + "ู" + "ูÊì" + "à¸Í" + "๤ä·" + "๵" + "๵Ã" + "๵Êऻ" + "๵Ô" + "๺ÔÇÅÒ" + "๻¨Ù¹" + "๻ÒÅ" + "à¹Â" + "à¹Ã¤Ø³" + "à¹ÃÁÔµ" + "à¹Ãà·È" + "à¹Ò" + "à¹Ô¹" + "à¹Ôº" + "à¹Ôè¹" + "à¹ÕÂ" + "à¹Õ¹" + "à¹ÕÂÁ" + "à¹×ͧ" + "à¹×ÍÂ" + "à¹×èͧ" + "à¹×éÍ" + "à¹çµ" + "à¹çµàÇÔÃì¡" + "à¹çµàÇÔÃì¤" + "à¹èÒ" + "à¹é¹" + "à¹éÍ" + "àº" + "຤͹" + "ວ¡ÍÅ" + "ຨ" + "ຨ¡" + "ຨ¡ÑÅÂÒ³Õ" + "ຨ¡ÒÁ¤Ø³" + "ຨ¸ÃÃÁ" + "ຨºÃþµ" + "ຨÁÒÈ" + "ຨç¤ì" + "ຨÒ" + "ຨҧ¤»ÃдÔÉ°ì" + "ຨҧ¤ì" + "ຨà¾Ê" + "ີéÒ" + "ູ" + "ູ«Ô¹" + "ູ«ì" + "àºÃ¡" + "àºÃì¡" + "àºÅàÂÕèÂÁ" + "àºÈ" + "àºÊ" + "àºÊºÍÅ" + "àºÍÃì" + "àºÍÃìÅÔ¹" + "àºÍÐ" + "àºÍкÐ" + "àºÐ" + "àºÒ" + "àºÒÐ" + "àºÒÐáÊ" + "àºÔ¡" + "àºÔÃì¡" + "àºÔè§" + "àºÕ´" + "àºÕ¹" + "àºÕÂÃì" + "àºÕè§" + "àºÕéÂ" + "àºÕéÂÇ" + "àº×Í" + "àº×͹" + "àº×èÍ" + "àº×éÍ" + "àº×éͧ" + "àºç´" + "àºç´àµÅç´" + "àºç´àÊÃç¨" + "àºè§" + "àºé" + "àºéÍ" + "àºéÍàÃÔèÁ" + "àºéÍàÃèÍ" + "àºéÒ" + "໡" + "à»Ãµ" + "à»ÃÁ" + "à»ÃÂ" + "à»ÃÍ" + "à»ÃÍÐ" + "à»ÃÒÐ" + "à»ÃÕ§" + "à»ÃÕÂ" + "à»ÃÕº" + "à»ÃÕÂÇ" + "à»ÃÕÂÐ" + "à»ÃÕé§" + "à»ÃÕéÂÇ" + "à»ÃÕêÂÐ" + "à»Ã×èͧ" + "à»Ã×éÍÂ" + "à»Å" + "à»ÅÇ" + "à»ÅÒÐ" + "à»ÅÕè¹" + "à»ÅÕèÂÇ" + "à»ÅÕéÂ" + "à»Å×Í¡" + "à»Å×ͧ" + "à»Å×ÍÂ" + "à»Å×éͧ" + "à»Åè§" + "à»ÅèÒ" + "à»Í" + "à»ÍÃì" + "à»ÍÃìà«ç¹µì" + "à»Ð" + "à»Ò" + "à»ÒÐ" + "à»Òà»Ò" + "à»Ô¡" + "à»Ô§" + "à»Ô´" + "à»Ôº" + "à»Ôè¹" + "à»Ôêº" + "à»ÕÂ" + "à»Õ¡" + "à»ÕèÂÁ" + "à»ÕéÂÇ" + "à»Õê¡" + "à»ÕêÂÐ" + "à»×Í¡" + "à»×èÍÂ" + "à»×é͹" + "à»ç´" + "à»ç¹" + "à»ç¹µé¹" + "à»è§" + "à»èÒ" + "à»é" + "à»é§" + "à»éÒ" + "à»ê¡" + "à»ë" + "à»ë§" + "à»ëÍ" + "à»ëÍàËÅÍ" + "à»ëÒ" + "à»ëÒÎ×éÍ" + "à¼" + "༧" + "༪Ô" + "༴ÔÁ" + "༴Õ§" + "༴ç¨" + "à¼Â" + "à¼ÂÍ" + "à¼ÅÍ" + "à¼ÅÍä¼Å" + "à¼ÅÐ" + "à¼ÅÒÐ" + "à¼Åè" + "à¼ÍÔ" + "à¼ÍàÃÍ" + "à¼Ð" + "à¼Ò" + "à¼ÒÐ" + "à¼Ô¹" + "à¼×Í¡" + "à¼×Í´" + "à¼×èÍ" + "à¼ç´" + "à¼è¹" + "à¼èÒ" + "à¼éÒ" + "à½×Í" + "à½×Í¡" + "à½×è͹" + "à½éÒ" + "à¾" + "ྨ" + "ྪ¬¦Òµ" + "ྪÃ" + "ྪÃÒÂظ" + "ྴҹ" + "ྷ¹Ò" + "ྷÒÂ" + "ྷغÒÂ" + "ྐྵ¡ÇÔ¹" + "ྐྵÕ´" + "ྐྵà·ÕÂÁ" + "à¾Ã§" + "à¾ÃÒ" + "à¾ÃÒÐ" + "à¾ÃÔ´" + "à¾ÃÔÈ" + "à¾ÃÕ¡" + "à¾ÃÕ§" + "à¾ÃÕº" + "à¾ÃÕÂÇ" + "à¾Ã×èÍ" + "à¾Å" + "à¾Å§" + "à¾ÅÒ" + "à¾ÅÒÐ" + "à¾ÅÔ§" + "à¾ÅÔ´à¾ÅÔ¹" + "à¾ÅÔ¹" + "à¾ÅÕÂ" + "à¾ÅÕè§" + "à¾ÅÕéÂ" + "à¾È" + "à¾ÒÐ" + "à¾Ô¡" + "à¾Ô§" + "à¾Ôè§" + "à¾ÔèÁ" + "à¾Õ§" + "à¾Õº" + "à¾ÕÂÃ" + "à¾ÕéÂ" + "à¾Õé§" + "à¾Õé¹" + "à¾×èÍ" + "à¾×è͹" + "à¾ç§" + "à¾ç¨" + "à¾ç" + "à¾ç´·ÙÅ" + "à¾è§" + "à¾è¹¾èÒ¹" + "à¾èÍ" + "à¾éÍ" + "à¿´" + "à¿Í" + "à¿ÍÃì" + "à¿ÍÃì¹Ôà¨ÍÃì" + "à¿ÍÃìàÁÕÂÁ" + "à¿ÍÐ" + "à¿Ð" + "à¿Ô¹" + "à¿ÕéÂÁ" + "à¿ÕéÂÇ" + "à¿×Í" + "à¿×ͧ" + "à¿×͹" + "à¿×ÍÂ" + "à¿×èͧ" + "à¿×éÍ" + "à¿×éͧ" + "à¿×éÍÂ" + "à¿ç´" + "à¿é¹" + "à¿éÍ" + "àÀµÃÒ" + "àÀ·" + "àÀ·ØºÒÂ" + "àÀÃÕ" + "àÀÊѪ" + "àÁ" + "àÁ¡Ð" + "àÁ¡ÐàÎÔõ«ì" + "àÁ¢ÅÒ" + "àÁ¦" + "àÁ¦Ò" + "àÁ¦Ô¹·Ãì" + "àÁ¦Õ" + "àÁµµÒ" + "àÁµÃ" + "àÁµÃÔ¡" + "àÁ¶Ø¹" + "àÁ·¹Õ" + "àÁ·Ô¹Õ" + "àÁ¸Ò" + "àÁ¸Õ" + "àÁ¹·ÍÅ" + "àÁ¹ºÍÃì´" + "àÁ¹Ù" + "àÁÁâÁÃÕ" + "àÁÃÑÂ" + "àÁÃØ" + "àÁÅ×ͧ" + "àÁÅ×èÍÂ" + "àÁÅ×éÍÂ" + "àÁÅç´" + "àÁÅì" + "àÁÉ" + "àÁÉÒ¹" + "àÁÐ" + "àÁÒ" + "àÁÒÅÕ" + "àÁÒÊì" + "àÁÒÌÕ" + "àÁÒÐ" + "àÁÔ¹" + "àÁÕÂ" + "àÁÕ§" + "àÁÕè§" + "àÁÕé¹" + "àÁ×Í¡" + "àÁ×ͧ" + "àÁ×èÍ" + "àÁ×èÍÂ" + "àÁâÁÃÕ" + "àÁç¡«Ôâ¡" + "àÁç´" + "àÁè¹" + "àÁèÒ" + "àÁéÁ" + "àÁéÒÊì" + "àÂ" + "à§" + "à«Ù" + "à¹" + "àÂÍ" + "àÂÍÃÁѹ" + "àÂÍÃÁѹ¹Õ" + "àÂÍÃÁѹÕ" + "àÂÍÐ" + "àÂÒ" + "àÂÒǪ¹" + "àÂÒǾÒ" + "àÂÒǾҹ" + "àÂÒÇÁÒÅÂì" + "àÂÒÇÂÍ´" + "àÂÒÇÃÒª" + "àÂÒÇÅѡɳì" + "àÂÒÇàÃÈ" + "àÂÒÇì" + "àÂÒÐ" + "àÂÔ¹" + "àÂÔº" + "àÂÔè¹" + "àÂÔè¹àÂéÍ" + "àÂÔéÁ" + "àÂÕÂ" + "àÂÕ¹" + "àÂÕº" + "àÂÕÂÇ" + "àÂÕè§" + "àÂÕèÂÁ" + "àÂÕèÂÇ" + "àÂ×Í¡" + "àÂ×͹" + "àÂ×èÍ" + "àÂ×éÍ" + "àÂ×éͧ" + "àÂ×é͹" + "àÂç¹" + "àÂçº" + "àÂè¹" + "àÂèÍ" + "àÂé" + "àÂéÂ" + "àÂéÒ" + "àâ" + "àâÒ" + "àâҤ³Ôµ" + "àóÙ" + "àô͹" + "àôÒÃì" + "àÃÃǹ" + "àÃÇ´Õ" + "àÃÍ" + "àÃÒ" + "àÃÒÐ" + "àÃÔ§" + "àÃÔ´" + "àÃÔÁ" + "àÃÔèÁ" + "àÃÔéÁ" + "àÃÕ¡" + "àÃÕ§" + "àÃÕ´" + "àÃÕ¹" + "àÃÕº" + "àÃÕÂÁ" + "àÃÕÂÇ" + "àÃÕèÂ" + "àÃÕèÂÁ" + "àÃÕèÂÇ" + "àÃÕéÂÇá" + "àÃ×Í" + "àÃ×Í¡" + "àÃ×ͧ" + "àÃ×Í´" + "àÃ×͹" + "àÃ×èÍ" + "àÃ×èͧ" + "àÃ×èÍÂ" + "àÃ×éÍ" + "àÃ×é͹" + "àÃäÃ" + "àÃçÇ" + "àÃè" + "àÃè§" + "àÃèÍ" + "àÃèÒ" + "àÃé¹" + "àÃéÒ" + "àÅ¢" + "àÅ¢Ò" + "àÅ¢Ò¸Ô¡ÒÃ" + "àŢҹءÒÃ" + "àÅ´Õé" + "àŵ" + "àŹ" + "àŹÊì" + "àźҹ͹" + "àÅÂ" + "àÅÇ" + "àÅÈ" + "àÅËÅѧ" + "àÅÍ" + "àÅÍÐ" + "àÅÍÐà·ÍÐ" + "àÅÐ" + "àÅÐà·Ð" + "àÅÒ" + "àÅÒÐ" + "àÅÔ¡" + "àÅÔ¡ÅÑè¡" + "àÅÔ¹àÅèÍ" + "àÅÔÈ" + "àÅÔé§" + "àÅÕÂ" + "àÅÕ§" + "àÅÕ¹" + "àÅÕº" + "àÅÕÂÁ" + "àÅÕÂÇ" + "àÅÕè§" + "àÅÕè¹" + "àÅÕèÂÁ" + "àÅÕé§" + "àÅÕéÂÇ" + "àÅ×Í¡" + "àÅ×Í´" + "àÅ×͹" + "àÅ×èͧ" + "àÅ×è͹" + "àÅ×èÍÁ" + "àÅ×èÍÁãÊ" + "àÅ×èÍÂ" + "àÅ×éÍÂ" + "àÅà«ÍÃì" + "àÅà¾" + "àÅç¡" + "àÅç§" + "àÅç´" + "àÅç¹" + "àÅçº" + "àÅçÁ" + "àÅè¹" + "àÅèÁ" + "àÅèËì" + "àÅèÍ" + "àÅèÒ" + "àÅé§" + "àÅéÒ" + "àǤ" + "àǤԹ" + "àǤÕ" + "àǨ" + "àǪ" + "àǪ¡ÃÃÁ" + "àÇ°¹ì" + "àdzÐ" + "àdzÔ" + "àdzԡ" + "àdzØ" + "àǵ¹ì" + "àǵÃ" + "àǵÒÅ" + "àÇ·" + "àÇ·¹Ò" + "àÇ·Âì" + "àÇ·Ò§¤ÈÒʵÃì" + "àÇ·Ò§¤ì" + "àÇ·Ò¹µÐ" + "àÇ·Ò¹µì" + "àÇ·Ô" + "àÇ·Õ" + "àǸÐ" + "àǹ" + "àǹÔÊ" + "àǹäµÂ" + "àǺ䫵ì" + "àÇÁºÅÕÂì" + "àÇÁÐ" + "àÇÁѵ" + "àÇÁÒµÔ¡" + "àÇÃ" + "àÇÃÁ³Õ" + "àÇÃѳ" + "àÇÃѳ³ÔÂÐ" + "àÇÃÕ" + "àÇÅÊì" + "àÇÅÒ" + "àÇÈÁì" + "àÇÈÂÒ" + "àÇÈÂì" + "àÇʵì" + "àÇʹì" + "àÇÊÀÙ" + "àÇÊÁÐ" + "àÇÊÁì" + "àÇÊÇѳ" + "àÇÊÊÐ" + "àÇÊÊѹ´Ã" + "àÇÊÊØ¡ÃÃÁ" + "àÇÊÊØÇѳ" + "àÇÊÒÃѪ" + "àÇÊÔ" + "àÇÊÔÂÒ" + "àÇ˹" + "àÇËÐ" + "àÇËѧ¤ì" + "àÇËÑ»µÔ" + "àÇËÒ" + "àÇËÒÂÊ" + "àÇËÒÊ" + "àÇÌØ" + "àÇÍ" + "àÇÍÃì" + "àÇÍÃìªÑ¹" + "àÇÔ¡" + "àÇÔÃì¡Ê൪ѹ" + "àÇÔÃì´" + "àÇÔé§" + "àÇÕ§" + "àÇÕ´¹ÒÁ" + "àÇÕ¹" + "àÇâè¹ì" + "àÇä¹Â" + "àÇçº" + "àÇç»" + "àÇèÍ" + "àÇé" + "àÇé¹" + "àÇéÂ" + "àÇéÒ" + "àÈÃÉ°¡Ô¨" + "àÈÃÉ°ÈÒʵÃì" + "àÈÃÉ°Ò¹Ð" + "àÈÃÉ°Õ" + "àÈÃÉ°ì" + "àÈÃéÒ" + "àÈǵ" + "àÈÉ" + "àÈÕÂÃ" + "àÊ" + "àÊ¡" + "àʧÕèÂÁ" + "àʩǹ" + "àÊ´" + "àÊ´ç¨" + "àʶÕÂÃ" + "àʶÕÂÃÀÒ¾" + "àʹ" + "àʹ§" + "àʹËÒ" + "àʹÍ" + "àʹÐ" + "àʹÒ" + "àʹҸԡÒÃ" + "àʹҺ´Õ" + "àʹÒʹÐ" + "àʹÒÐ" + "àʹÕ´" + "àʹÕÂì" + "àʹè§" + "àʹèËÒ" + "àʹèËì" + "àʹèÒ" + "àʺÂ" + "àʺÕ§" + "àʾ" + "àʾÂì" + "àÊÀÒ" + "àÊÁËÐ" + "àÊÁÍ" + "àÊÁÒ" + "àÊÁÕ¹" + "àÊÁ×͹" + "àÊÁç´" + "àÊÂ" + "àÊÃÔ´" + "àÊÃÔ¿" + "àÊÃÔÁ" + "àÊÃÕ" + "àÊÃç¨" + "àÊÅ´" + "àÊÅÒ" + "àÊÅÕè§" + "àÊÅ×Í¡ÊŹ" + "àÊÇ¡" + "àÊÇ¡ÒÁÒµÂì" + "àÊǹÐ" + "àÊǹÒ" + "àÊÇÂ" + "àÊÇÕ¹" + "àÊÒ" + "àÊÒÃÀÂì" + "àÊÒÃì" + "àÊÒǤ¹¸ì" + "àÊÒdzԵ" + "àÊÒǹÒ" + "àÊÒǹÕÂì" + "àÊÒÇÀÒ" + "àÊÒÇÀÒ¤Âì" + "àÊÒÇÀÒ¾" + "àÊÒÇÃÊ" + "àÊÒÇÅѡɳì" + "àÊÒÐ" + "àÊÔÃì¿" + "àÊÕÂ" + "àÊÕ§" + "àÊÕ´" + "àÊÕº" + "àÊÕÂÁ" + "àÊÕÂÇ" + "àÊÕèÂ" + "àÊÕè§" + "àÊÕèÂÇ" + "àÊÕé¹" + "àÊÕéÂÁ" + "àÊÕéÂÇ" + "àÊ×Í" + "àÊ×Í¡" + "àÊ×èÍ" + "àÊ×èÍÁ" + "àÊ×éÍ" + "àÊà¾Å" + "àÊâ·" + "àÊâÅ" + "àÊç§à¤Ãç§" + "àÊé§" + "àÊé¹" + "àÊéÒ" + "àË" + "à˧" + "à˧Ò" + "à˧×Í¡" + "à˧×èÍ" + "à˧è§" + "à˵Ø" + "à˵ءÒóì" + "à˹ÍÐ" + "à˹ÍÐ˹Ð" + "à˹ÒÐ" + "à˹Õ§" + "à˹ÕÂÁ" + "à˹ÕÂÇ" + "à˹ÕèÂÇ" + "à˹×Í" + "à˹×èÍÂ" + "à˹ç´" + "à˹çº" + "à˹è§" + "à˹èÍ" + "à˹éÒ" + "àËÁ" + "àËÁÇ´Õ" + "àËÁѹµì" + "àËÁÒ" + "àËÁÒÐ" + "àËÁÕÂÇ" + "àËÁÕèÂÇ" + "àËÁ×ͧ" + "àËÁ×Í´" + "àËÁ×͹" + "àËÁç¹" + "àËÁè" + "àËÁè§" + "àËÁèÍ" + "àËÂ" + "à˧" + "àËÂÒÐ" + "àËÂÔ§" + "àËÂÕ´" + "àËÂÕº" + "àËÂÕèÂÇ" + "àËÂ×Í¡" + "àËÂ×èÍ" + "àËÂéÒ" + "àËÃÑÔ¡" + "àËÃÒ" + "àËÃÕÂ" + "àËŹ" + "àËÅÇ" + "àËÅÍ" + "àËÅÒ" + "àËÅÒÐáËÅÐ" + "àËÅÔ§" + "àËÅÕ¹" + "àËÅÕÂÇ" + "àËÅÕèÂÁ" + "àËÅ×Í" + "àËÅ×Í¡" + "àËÅ×ͧ" + "àËÅ×ͺ" + "àËÅ×èÍÁ" + "àËÅç¡" + "àËÅè" + "àËÅèÒ" + "àËÅéÒ" + "àËÇ" + "àËǧ" + "àËÇÂ" + "àËÇÍÐ" + "àËÇÍÐËÇÐ" + "àËÇÕè§" + "àËÇè" + "àËÍÐ" + "àËÒ" + "àËÒÐ" + "àËÔ¹" + "àËÔÁ" + "àËÕ¹" + "àËÕèÂÇ" + "àËÕéÂ" + "àËÕé¹" + "àËÕéÂÁ" + "àË×Í´" + "àË×èÍ" + "àËç¨" + "àËç´" + "àËç¹" + "àËçº" + "àËè" + "àËèÍ" + "àËèÒ" + "àÍ" + "àÍ¡" + "àÍ¡©Ñ¹·ì" + "àÍ¡ª¹" + "àÍ¡«àÃÂì" + "àÍ¡«â»" + "àÍ¡À¾" + "àÍ¡ÀÒ¾" + "àÍ¡ÁÑÂ" + "àÍ¡Ãö»ÃÐâ¤" + "àÍ¡ÃÒª" + "àÍ¡Åѡɳì" + "àÍ¡ÊÒÃ" + "à͡ѤµÒ" + "àÍ¡Ò¸Ô»äµÂ" + "à͡ࢹ¡" + "àÍ¡à·È" + "àͧ" + "àͪ¾Õ" + "àÍ´Êì" + "àÍ´ÔàµÍÃì" + "à͵·Ñ¤¤Ð" + "àÍ·ÕàÍçÁ" + "à͹" + "à͹·ÃÒ¹«ì" + "à͹ä«Áì" + "àÍ»Êѹ" + "àÍÁ" + "àÍÂ" + "àÍÃÒÇѳ" + "àÍÃç´ÍÃèÍÂ" + "àÍÇ" + "àÍÇѧ" + "àÍÊ" + "àÍÌ¡" + "àÍÌÒ" + "àÍÍ" + "àÍÐÍÐ" + "àÍÐã¨" + "àÍÒ" + "àÍÒ·ì¾Øµ" + "àÍÒÌÒÃ" + "àÍÔ¡" + "àÍÔº" + "àÍÔé¹" + "àÍÕ§" + "àÍÕ´" + "àÍÕ¹" + "àÍÕè¹" + "àÍÕèÂÁ" + "àÍÕèÂÇ" + "àÍÕé§" + "àÍÕéÂÁà¿ÕéÂÁ" + "àÍÕéÂÇ" + "àÍÕê´" + "àÍÕêÂÁ" + "àÍÕêÂÁ¨Øê¹" + "àÍ×͹" + "àÍ×ÍÁ" + "àÍ×èÍÂ" + "àÍ×éÍ" + "àÍ×éͧ" + "àÍ×é͹" + "àÍ×éÍÁ" + "àÍ×éÍÂ" + "àÍà¤ÍÃì" + "àÍàªÕÂ" + "àÍàªÕè¹à¡ÁÊì" + "àÍà«ÕÂ" + "àÍàÂè¹µì" + "àÍẤ" + "àÍç¡«ì" + "àÍç¡«ì¾ÅÍàÃÍÃì" + "àÍç¡«ìà¾ÃÊ" + "àÍç§" + "àÍç´" + "àÍç´µÐâÃ" + "àÍç´ÍÖ§" + "àÍç¹" + "àÍç¹´Ù" + "àÍç¹àµÍÃìà·¹" + "àÍèÂ" + "àÍèÍ" + "àÍé" + "àÍé¡Ò" + "àÍéÍÃÐàËÂ" + "àÍéÍàÎÍ" + "àÍê¡" + "àÍêÂ" + "àÍêÐ" + "àÍë" + "àÍë§" + "àÍëÂ" + "àÎ" + "àΧ" + "àÎÂ" + "àÎÅԤͻàµÍÃì" + "àÎÔõ«ì" + "àÎÕÂ" + "àÎÕé¹" + "àÎÕéº" + "àÎÕéÂÇ" + "àÎ×Í¡" + "àÎ×͹" + "àÎâÃÍÕ¹" + "àÎâÅ" + "àÎéÂ" + "àÎéÇ" + "àÎéÍ" + "á¡" + "ᡧ" + "᡹" + "á¡Á" + "á¡ÁÁÒ" + "á¡Ã¡" + "á¡Ã¹Ôµ" + "á¡ÃÐ" + "á¡Ã俵ì" + "á¡Ãç¹" + "á¡Ãè§" + "á¡ÃèÇ" + "á¡Å" + "á¡Åº" + "á¡ÅÅ͹" + "á¡ÅÐ" + "á¡ÅàÅÕÂÁ" + "á¡Åé§" + "á¡ÅéÁ" + "á¡ÅéÇ" + "á¡Ç" + "á¡Çè§" + "á¡Çè¹" + "á¡Ð" + "á¡â´ÅÔà¹ÕÂÁ" + "á¡è" + "á¡è§" + "á¡è§áÂè§" + "á¡è¹" + "á¡é" + "á¡é§" + "á¡éÁ" + "á¡éÇ" + "á¡ê§" + "á¡ê»" + "á¡êÊ" + "á¢" + "ᢡ" + "ᢹ" + "ᢹ§" + "á¢Á" + "á¢Áçº" + "á¢ÁèÇ" + "á¢Â§" + "á¢Âç¡" + "á¢Âè§" + "á¢Ç¡" + "á¢Ç§" + "á¢Ç¹" + "á¢ÇÐ" + "á¢ç§" + "á¢è§" + "á¢è§¢Ñ¹" + "á¢é§" + "á¢é¹" + "á¤" + "ᤪàªÕÂÃì" + "ᤪàÁÕÂÃì" + "ᤵµÒÅͤ" + "᤹" + "᤺" + "᤻«ÙÅ" + "á¤Á" + "á¤Ã§" + "á¤ÃÐ" + "á¤Ãè" + "á¤Ãì" + "á¤Å¤ÙÅÑÊ" + "á¤Å§" + "á¤Å¹" + "á¤ÅÍÃÕ" + "á¤ÅÔ¿ÍÃìà¹ÕÂ" + "á¤Åà«ÕÂÁ" + "á¤ÅèǤÅèͧ" + "á¤ÅéÇ" + "á¤Ç" + "á¤Ç¡" + "á¤Çé¹" + "á¤Ð" + "á¤è" + "á¤è¹" + "á¤é¹" + "á§" + "á§Ð" + "á§è" + "á§è§" + "á§è¹" + "á§éÁ" + "á¨" + "ᨡ" + "ᨧ" + "á¨Ç" + "á¨Ð" + "á¨èÁ" + "á¨èÇ" + "á¨é" + "á¨é§" + "á¨é¹" + "á¨éÇ" + "á¨ê´" + "á¨ë" + "á¨ëÇ" + "á¨ëÇáËÇÇ" + "á©" + "á©¡" + "ᩧ" + "á©Åº" + "á©ÅÐ" + "á©ÅéÁ" + "á©Ð" + "á©è" + "á©è§" + "áª" + "áªÁ»ì" + "áªÁà»" + "áªÃì" + "áªÅèÁ" + "áªè" + "áªè§" + "áªèÁ" + "᫧" + "á«´" + "᫹´ìÇÔª" + "᫺" + "á«Á" + "á«ÂÔ´" + "á«Ç" + "á«Ð" + "á«è" + "á«èÇ" + "á´" + "á´¡" + "á´§" + "á´´" + "á´¹" + "á´Ð" + "á´ç¡" + "á´è" + "á´è¹" + "á´èÇ" + "ᵡ" + "ᵧ" + "ᵧ¡ÇÒ" + "ᵧàÁ" + "ᵧâÁ" + "áµ´" + "áµ¹" + "áµÃ" + "áµÐ" + "áµè" + "áµè§" + "áµé" + "áµé¨ÔëÇ" + "áµéÁ" + "áµê´áµë" + "á¶" + "ᶡ" + "ᶺ" + "á¶Á" + "á¶Å§" + "á¶Ç" + "á·§" + "á·¹" + "á·¹·ÒÅÑÁ" + "á·º" + "á·Ã¡" + "á·Ã¡àµÍÃì" + "á·Ð" + "á·ç¡«Õè" + "á·ç§¡ì¹éÓ" + "á·è§" + "á·è¹" + "á·é" + "á·é§" + "Ṻ" + "á¹Á" + "á¹Ç" + "á¹Ð" + "á¹è" + "á¹è§" + "á¹è¹" + "á¹èÇ" + "á¹èÐ" + "áº" + "ạ" + "Ấ·ÕàÃÕÂ" + "ầ¡ì" + "ầ¤ì" + "ẴÁÔ¹µÑ¹" + "ẵàµÍÃÕè" + "ẹ" + "ẹâ¨" + "Ẻ" + "áºÐ" + "áºàÃÕÂÁ" + "áºçº" + "áºè§" + "á»" + "ừԿԤ" + "á»´" + "Ỻ" + "á»Ã" + "á»Ã¡" + "á»Ã§" + "á»Ã»Ãǹ" + "á»ÃÐ" + "á»Ãè§" + "á»Ãé¹" + "á»Ãê´" + "á»Ãë" + "á»Å" + "á»Å¡" + "á»Å§" + "á»Å¹" + "á»Åº" + "á»Åé" + "á»Ð" + "á»é§" + "á»é¹" + "á»éÇ" + "á»ê´" + "á»êº" + "á»êÐ" + "á»êЫÐ" + "á»ë§" + "á»ëÇ" + "ἡ" + "ἧ" + "á¼´" + "á¼¹" + "á¼¹¡" + "á¼Å" + "á¼Å§" + "á¼ÅÐ" + "á¼Åçº" + "á¼ÅçÇ" + "á¼è" + "á¼è¹" + "á¼èÇ" + "á¼éÇ" + "ὡ" + "ὧ" + "á½´" + "á¾" + "ᾧ" + "ᾧ¾ÇÂ" + "á¾·ÂÈÒʵÃì" + "á¾·ÂÊÀÒ" + "á¾·ÂÒ" + "á¾·Âì" + "á¾¹" + "á¾¹¡" + "á¾¹§àªÔ" + "á¾Ã" + "á¾Ã¡" + "á¾ÃÇ" + "á¾Ãè" + "á¾Ãè§" + "á¾ÃéÇ" + "á¾Å§" + "á¾Åµ¿ÍÃìÁ" + "á¾Å·Ô¹ÑÁ" + "á¾ÅÁ" + "á¾ÈÂÒ" + "á¾ÈÂì" + "á¾Ð" + "á¾ç¡" + "á¾ç¤à¡¨" + "á¾è§" + "á¾è¹" + "á¾é" + "á¾éÇ" + "á¿¡«ì" + "ῧ" + "ῪÑè¹" + "Ό" + "Ό«Õ" + "Ὼ" + "á¿Ãì" + "á¿Å¡«ì" + "á¿Åµ" + "á¿Ð" + "á¿éÁ" + "áÁ¡" + "áÁ¡¹Õà«ÕÂÁ" + "áÁ¤â¤Ã" + "áÁ§" + "áÁ§¡Ò¹ÕÊ" + "áÁ¹" + "áÁ¹¨ÙàÃÕÂ" + "áÁŧ" + "áÁÇ" + "áÁÐ" + "áÁè" + "áÁè¹" + "áÁèÎèͧÊ͹" + "áÁé" + "áÁé¹" + "áÁéÇ" + "á¡" + "á§" + "áº" + "áÂÁ" + "áÂÐ" + "áÂáÊ" + "áÂçº" + "áÂè" + "áÂè§" + "áÂé" + "áÂé§" + "áÂéÁ" + "áÃ" + "áá" + "áç" + "áô" + "áÃÁ" + "áÃÐ" + "áÃç¡à¡µ" + "áÃè" + "áÃè§" + "áÃé§" + "áÃé¹á¤é¹" + "áÃéÇ" + "áÅ" + "áÅ¡" + "áŧ" + "áŹ" + "Ᏼ" + "Ᏼì" + "áź" + "áÅÐ" + "áÅç¡â·Ê" + "áÅè" + "áÅè§" + "áÅè¹" + "áÅé" + "áÅé§" + "áÅéÇ" + "áǧ" + "áÇ´" + "áǺ" + "áÇÁ" + "áÇÇ" + "áÇÐ" + "áÇè¹" + "áÇèÇ" + "áÇé" + "áÇé§" + "áÊ" + "áÊ¡" + "áʧ" + "áÊ´" + "áÊ´§" + "áʵÁ»ì" + "áʹ" + "áʹÂÒ¡Ã" + "áʹÂÒ¹ØÀÒ¾" + "áʺ" + "áÊÁ" + "áÊ¡" + "áʧ" + "áÊÂÐ" + "áÊÃé§" + "áÊŧ" + "áÊǧ" + "áÊÐ" + "áÊè" + "áÊé" + "áÊéÁéÒ" + "áË" + "áË¡" + "á˧" + "á˧¹" + "á˧á¡ë" + "á˧è" + "á˧è§" + "á˹" + "á˹§" + "á˹º" + "á˹Á" + "á˺" + "áËÁ" + "áËÁÐ" + "áËÁè" + "áËÁèÁ" + "áËÂ" + "á˧" + "áËÂÁ" + "áËÂÐ" + "áËÂè" + "áËÂè§" + "áËÅ" + "áËÅ¡" + "áËŹ" + "áËÅÁ" + "áËÅÐ" + "áËÅè" + "áËÅè§" + "áËÇ" + "áËÇ¡" + "áËǹ" + "áËÇÐ" + "áËÇè§" + "áËÐ" + "áËè" + "áËè§" + "áËé" + "áËé§" + "áËéÇ" + "áÍ" + "áÍ¡" + "áÍ´" + "áÍ´ÇÒ¹«ì" + "áÍ´à´ÃÊ" + "á͹" + "á͹´ì" + "á͹µÒÃ졵ԡ" + "á͹µÔºÍ´Õ" + "á͹µÔਹ" + "á͹µÕé" + "áͺ" + "á;¾ÅÔपѹ" + "á;à¾Åçµ" + "áÍ¿ÃÔ¡Ò" + "áÍÁÁÔàµÍÃì" + "áÍÁá»Ãì" + "áÍÁâÁà¹ÕÂ" + "áÍÃèÁ" + "áÍÃì" + "áÍÅ" + "áÍÅ¡ÍÎÍÅì" + "áÍÅ¿Ò" + "áÍÊ¿Ñŵì" + "áÍÊä¾ÃÔ¹" + "áÍÍÑ´" + "áÍâ¹´" + "áÍè§" + "áÍè¹" + "áÍèÇ" + "áÍé" + "áÍé§áÁé§" + "áÍé´" + "áÍéÁ" + "áÍꤪÑè¹" + "áÍê´" + "áÍë" + "áÎ" + "áι´ìºÍÅ" + "áÎÁ" + "áÎÁàºÍÃìà¡ÍÃì" + "áÎÐ" + "áÎè" + "áÎè¡Öê¹" + "â¡" + "â¡¡" + "⡧" + "⡧¡Ò§" + "⡯Ô" + "⡴ѧ" + "⡹" + "â¡ÁÅ" + "â¡ÁØ·" + "â¡Â" + "â¡Ã¡" + "â¡Ã§" + "â¡Ã¸" + "â¡Ã¸Ò" + "â¡Ãè§" + "â¡Ãë¹" + "â¡Å´ì" + "â¡Å¹" + "â¡ÅÒËÅ" + "â¡ÈÅ" + "â¡Ê¹" + "â¡ÊÔ¹·Ãì" + "â¡ÊÕÂì" + "â¡ÊØÁ" + "â¡Ë¡" + "â¡àÁ¹" + "â¡â¡é" + "â¡âÃâ¡âÊ" + "â¡äÊÂ" + "â¡è§" + "â¡é" + "â¡é§â¤é§" + "â¡ë" + "â¡ë¹" + "â¢" + "⢡" + "⢧" + "⢴" + "⢹" + "⢹§" + "â¢Á" + "â¢Á§" + "â¢Á´" + "â¢Â¡" + "â¢Â§" + "â¢Âè§" + "â¢Å¡" + "â¢Å§" + "â¢è§" + "â¤" + "⤡" + "⤨Ã" + "⤵Ã" + "⤹" + "⤹Á" + "⤺Íŵì" + "â¤Á" + "â¤ÁèÒ" + "â¤Ã¡" + "â¤Ã§" + "â¤Ã§¡ÒÃ" + "â¤ÃÁ" + "â¤ÃÒª" + "â¤ÃàÁÕÂÁ" + "â¤ÃâÁâ«Á" + "â¤Ãè§" + "â¤Å" + "â¤Å§" + "â¤Å§à¤Å§" + "â¤Å¹" + "â¤Å¹¹Ôè§" + "â¤ÅÍÁàºÕÂ" + "â¤ÇµÒ" + "â¤à¤¹" + "â¤è§" + "â¤è¹" + "â¤é§" + "â¤éª" + "â¤é´" + "â¦É¡" + "â¦É³Ò" + "â¦ÉÐ" + "â¦ÉÔµ" + "â§" + "⧡" + "⧧" + "⧧১" + "⧹" + "â§à§" + "â§è" + "â§è§" + "â§è§à§è§" + "â§é§" + "â¨" + "⨡" + "⨧" + "⨧â¤Ãè§" + "⨷" + "⨷¡ì" + "⨷Âì" + "⨹" + "â¨Á" + "â¨Ã" + "â¨Ã¡ÃÃÁ" + "â¨É" + "â¨É¨Ñ¹" + "â¨è§¤ÃÖèÁ" + "â¨è§á¨é§" + "â¨ê¡" + "â¨ë§¤ÃÖèÁ" + "â©" + "⩧੧" + "â©´" + "⩹´" + "⩺" + "â©Á" + "â©Å¡" + "â©è" + "â©è§©èÒ§" + "⪡" + "⪡ع" + "⪤" + "⪴¡" + "⪴֡" + "⪵Ô" + "⪹" + "âªÂ" + "âªÇì" + "â«" + "â«¡" + "â«´Ò" + "â«Á" + "â«ÃÁ" + "â«ÅÒ" + "â«ÅÙªÑè¹" + "â«à´ÕÂÁ" + "â«àÇÕµ" + "â«è" + "â´" + "â´¡à´¡" + "â´´" + "â´¹" + "ⴹѷ" + "â´Á" + "â´ÁÔâ¹" + "â´Â" + "â´è" + "â´è§" + "â´ê»" + "âµ" + "ⵡ" + "ⵧ൧" + "âµ¹" + "âµ¹´" + "âµÁÃ" + "âµÃ¡" + "âµà¡ÕÂÇ" + "âµè§" + "âµé" + "âµé§" + "âµéâ¼" + "âµê´" + "âµêÐ" + "âµêÐÍÔËÁèÒÁ" + "â¶" + "⶧" + "ⶺ" + "â¶Á" + "â·" + "â·¡à·¡" + "â·§" + "ⷧ෧" + "â·¹" + "â·Á¹ÑÊ" + "â·Ã" + "â·Ã¤Á¹Ò¤Á" + "â·Ã·ÃÃȹì" + "â·Ã·Ñȹì" + "â·Ã¾ÔÁ¾ì" + "â·ÃÀÒ¾" + "â·ÃÁ" + "â·ÃÈѾ·ì" + "â·ÃàÅ¢" + "â·É" + "â·É·Ñ³±ì" + "â·ÉÒ¹Øâ·É" + "â·ÉÒÃÁ³ì" + "â·ÊÐ" + "â·ÊÒ¤µÔ" + "â·âÊ" + "â·è" + "â¸è" + "â¹" + "â¹¹" + "â¹ÃÒ" + "â¹ÃÕ" + "â¹è¹" + "â¹éµ" + "â¹éµºØê¡" + "â¹éµÊì" + "â¹é¹" + "â¹éÁ" + "âº" + "⺡" + "⺡¢Ã³Õ" + "⺡Õé" + "⺵" + "⺵Ñë¹" + "⺹ÑÊ" + "âºÂ" + "âºÃÁÕ¹" + "âºÃ͹" + "âºÃÒ³" + "âºÅÔàÇÕÂ" + "âºÇìÅÔè§" + "âºÊ¶ì" + "âºêàºê" + "âºë" + "â»" + "⻡" + "⻧" + "⻧ÅÒ§" + "⻹" + "â»Ã" + "â»Ã§" + "â»Ã´" + "â»ÃµÍ¹" + "â»ÃµÕ¹" + "â»ÃµØà¡Ê" + "â»ÃÂ" + "â»Ãà«Êà«ÍÃì" + "â»ÃàµÊáµ¹µì" + "â»Ãá¡ÃÁ" + "â»Ãá¡ÃÁàÁÍÃì" + "â»ÃâÁªÑ¹" + "â»ÃâÁµ" + "â»Ãè§" + "â»Ãì" + "â»ÅÔâÍ" + "â»Åè§" + "â»Ê¡ÒÃì´" + "â»ÊàµÍÃì" + "â»Ð" + "â»áŹ´ì" + "â»âÅ" + "â»è§" + "â»è§¢èÒÁ" + "â»é" + "â»é§" + "â»ê" + "â»ê¡" + "â»ê¡à¡ÍÃì" + "â»êÂà«Õ¹" + "â»êÐ" + "â¼" + "⼧" + "â¼¹" + "â¼Â" + "â¼Å¡à¼Å¡" + "â¼Å¹" + "â¼ÅÐ" + "â¼Åè" + "â¼Ð" + "â¾" + "⾡" + "⾧" + "⾧¾Ò§" + "⾫ԵÃ͹" + "⾸ÔÒ³" + "⾸ԺÑÅÅѧ¡ì" + "⾸ÔÊÁÀÒÃ" + "⾸ÔÊѵÇì" + "⾸Ôì" + "â¾¹" + "â¾¹·Ð¹Ò" + "â¾Â" + "â¾Â¡êǹ" + "â¾ÂÁ" + "â¾Ã¡" + "â¾Ã§" + "â¾Ãд¡" + "â¾ÃⵤÍÅ" + "â¾Å§" + "â¾Å¹" + "â¾ÅÐ" + "â¾Åè§" + "â¾Åé§" + "â¾Åéà¾Åé" + "â¾Ê¾" + "â¾á·Êà«ÕÂÁ" + "â¾é¹" + "â¿¡ÑÊ" + "⿹" + "â¿Åìà´ÍÃì" + "âÀ¤" + "âÀ¤Ô¹" + "âÀ¤Õ" + "âÀª¹Ð" + "âÀª¹Ò" + "âÀª¹Ò¡Ã" + "âÀª¹Ò¡ÒÃ" + "âÀª¹ÒËÒÃ" + "âÀª¹ì" + "âÁ" + "âÁ¡" + "âÁ¡¢ì" + "âÁ¦¡ÃÃÁ" + "âÁ¦ÊÑÒ" + "âÁ¦Ð" + "âÁ¦Õ¡ÃÃÁ" + "âÁ¦ÕÂÐ" + "âÁ§" + "âÁ§¤ÃØèÁ" + "âÁ´ÙÅ" + "âÁ·¹Ò" + "âÁÅÔº´Õ¹ÑÁ" + "âÁÅÕ" + "âÁËÐ" + "âÁËѹ¸ì" + "âÁËÒ¤µÔ" + "âÁà´Å" + "âÁà´çÁ" + "âÁàÁ" + "âÁàÁ¹µì" + "âÁàÅ¡ØÅ" + "âÁàÊ¡" + "âÁàÊÊ" + "âÁâ¹" + "âÁâË" + "âÁä¹Â" + "âÁè" + "âÁè§" + "âÁé" + "âÂ" + "â¡" + "⡵Ãì" + "â¤Ð" + "â¤Õ" + "â§" + "⪹ì" + "â¸Ò" + "â¸Թ" + "â¹" + "â¹Õ" + "âÂÁ" + "âÂàÂ" + "âÂâÊ" + "âÂè§" + "âÂè§âÂè" + "âÂé" + "âÃ" + "âä" + "âä¨ÔµàÀ·" + "âäÒ" + "âäҾҸ" + "âç" + "âç¤ÑÅ" + "âçàÃÕ¹" + "âçáÃÁ" + "âè" + "âè¹ì" + "âõÕ" + "âø" + "âøÃ" + "âÃÁ" + "âÃÁѹ" + "âÃÁÒà¹ÕÂ" + "âÃÂ" + "âÃÉ" + "âÃËÔµ" + "âÃà¹ÕÂÇ" + "âÃè" + "âÅ¡" + "âÅ¡ÇÔ·Ù" + "âšѹµÃì" + "âÅ¡Ò" + "âÅ¡Ò¸Ôº´Õ" + "âÅ¡Ò¸ÔäµÂ" + "âÅ¡ÒÁÔÊ" + "âÅ¡ÒÇÔ¹ÒÈ" + "âÅ¡ÔÂÐ" + "âÅ¡ÕÂÇѵÃ" + "âÅ¡ÕÂì" + "âšصøÃÃÁ" + "âšصÃÐ" + "âŧ" + "âŨ¹Ð" + "âųÐ" + "âÅ´" + "âŵÑÊ" + "âŹ" + "âÅÀ" + "âÅÁ" + "âÅÁÒ" + "âÅËÐ" + "âÅËѪ" + "âÅËÔµ" + "âÅÐ" + "âÅàÅ" + "âÅè" + "âÅè§" + "âÅé" + "âÅé¹" + "âÇ" + "âÇÂ" + "âÇÂÇÒÂ" + "âÇËÒÃ" + "âÇè" + "âÇè§" + "âÇéÂ" + "âÇéàÇé" + "âÈ¡" + "âÈ¡Ò" + "âÈ¡Ò´ÙÃ" + "âÈ¡ÒÅÑÂ" + "âÈ¡Õ" + "âÊ" + "âʡѹµì" + "âʳ" + "âʳ±ì" + "âÊ´" + "âÊ´Ò" + "âʴҺѹ" + "âʵ" + "âÊ·¡" + "âÊ·Ã" + "âʸ¡" + "âʸ¹Ð" + "âʹ" + "âÊÀ³" + "âÊÀÒ" + "âÊÀÔ³Õ" + "âÊÀÕ" + "âÊÁ" + "âÊÁ¹ÑÊ" + "âÊÁÁ" + "âÊÁÂì" + "âÊè" + "âÊÃè§" + "âÊÇÃó" + "âÊËØéÂ" + "âÊÌÊ" + "âÊàÀ³Õ" + "âÊâ¤Ã¡" + "â˧" + "âË´" + "â˹" + "â˹¡" + "â˹è§" + "âËÁ" + "âËÁ´" + "âËÁè§" + "âËÂ" + "âË¡àË¡" + "â˧" + "âËÂè§" + "âËÃ" + "âËçàËç" + "âËÃоÒ" + "âËÃÒ" + "âËÃÒ¨ÒÃÂì" + "âËÃÒÈÒʵÃì" + "âËÅ" + "âËŧâ¨é§" + "âËŹ" + "âËÅè" + "âËÇ" + "âËÇ¡àËÇ¡" + "âËǧ" + "âËÇ´" + "âËǵ" + "âËÇè" + "âËè" + "âÍ" + "âÍ¡" + "âÍ¡ÒÊ" + "âÍ¡Ô¹ÒÇÒ" + "âͧ¡ÒÃ" + "âͧ⢴§" + "âͪÐ" + "âͪÒ" + "âÍ´" + "â͵µÑ»»Ð" + "â͹" + "âͺ" + "âÍÀÒ" + "âÍÀÒÊ" + "âÍÁ" + "âÍÂ" + "âÍÃÊ" + "âÍÅоèÍ" + "âÍÅÔÁ»Ô¡" + "âÍÇÒ·" + "âÍÉ°ÀÑÂ" + "âÍÉ°ì" + "âÍʶ" + "âÍËѧ" + "âÍËìÁ" + "âÍÌÒÃ" + "âÍÌÒÃÔ¡" + "âÍÌÒÃÖ¡" + "âÍ໡" + "âÍàÅÕé§" + "âÍàÇÍÃì" + "âÍàÍ«ÔÊ" + "âÍàÍÊ" + "âÍ⫹" + "âÍè" + "âÍè§" + "âÍèÍèÒ" + "âÍé" + "âÍé¡" + "âÍéàÍé" + "âÍéâÅÁ" + "âÍéâÎ" + "âÍê¡" + "âÍêÂ" + "âÍë" + "âÎ" + "âΡ" + "âÎÁ" + "âÎÅìÁ" + "âÎʵì" + "âÎÊàµÊ" + "âÎàµçÅ" + "ã¡Åé" + "ã¤Ã" + "ã¤Ãè" + "ã¨" + "ãªè" + "ãªé" + "ã´" + "ãµé" + "ã¹" + "ã¹ËÅǧ" + "ãº" + "ãºé" + "ã½è" + "ãÂ" + "ãÊ" + "ãÊè" + "ãËè" + "ãËÁè" + "ãËé" + "ä¡" + "ä¡Ã" + "ä¡ÃÅÒÊ" + "ä¡ÃÈÃ" + "ä¡ÃÊÃ" + "ä¡Å" + "ä¡Åè" + "ä¡Ç" + "ä¡è" + "ä¡ê´ì" + "ä¡ë" + "ä¢" + "ä¢Çè" + "ä¢Çé" + "ä¢Ê×Í" + "ä¢è" + "ä¢è´Ñ¹" + "ä¢èÁØ¡" + "ä¢é" + "ä¤" + "ä¤Ãé" + "ä¤Å" + "ä¤ÅàÍç¹µì" + "ä¤Åá͹µì" + "ä¤Åé" + "ä¤é" + "ä§" + "ä¨" + "䩹" + "ä©äÅ" + "äª" + "äªÂ" + "äªâÂ" + "ä«" + "䫵ì" + "䫹ì" + "䫺ÕàÃÕÂ" + "ä«»ÃÑÊ" + "ä«ÂÒä¹´ì" + "ä«Ãé" + "ä«à¡ÔÅ" + "ä«àºÍÃì" + "ä«àù" + "ä«â¤Å¹" + "ä«âÅ" + "ä«é" + "ä´" + "ä´¹ÒâÁ" + "ä´¹ÒäÁµì" + "ä´ÃàÇÍÃì" + "ä´Ãì¿" + "ä´ÍÐÅçÍ¡" + "ä´ÍÐÅçÍ¡ºçÍ¡«ì" + "ä´ÍÒÃÕè" + "ä´àá·ÍÃÕ" + "ä´â¹àÊÒÃì" + "ä´é" + "äµ" + "äµÃ" + "äµÃÁÒÊ" + "äµÃèµÃͧ" + "äµè" + "äµé" + "äµé¡ë§" + "äµé½Øè¹" + "äµéËÇѹ" + "äµë" + "ä¶" + "ä¶Å" + "ä¶è" + "ä¶é" + "ä·" + "ä·¡Í" + "ä·¿Í´ì" + "ä·Â" + "ä·ÂÃÑ°" + "ä·Ã" + "ä·ÃÍ´ì" + "ä·à·à¹ÕÂÁ" + "ä·é" + "ä¹" + "ä¹µì¤ÅѺ" + "ä¹Å͹" + "ä¹Åì" + "ä¹âµÃਹ" + "亵ì" + "äºÍÍÊ" + "äºàºÔÅ" + "ä»" + "ä»ÂÒÅ" + "ä»ÃɳÕºÃó" + "ä»ÃɳÕºѵÃ" + "ä»ÃɳÕÂÀѳ±ì" + "ä»ÃɳÕÂÇѵ¶Ø" + "ä»ÃɳÕÂÒ¡Ã" + "ä»ÃɳÕÂì" + "ä»Åè" + "ä»è" + "ä»ë" + "ä¼" + "ä¼·" + "ä¼è" + "ä½" + "ä¾" + "侨ԵÃ" + "ä¾±ÙÃÂì" + "侺ÙÅÂì" + "ä¾Ã" + "ä¾Ã¨ÔµÃ" + "ä¾Ã±ÙÃÂì" + "ä¾ÃѪ" + "ä¾ÃÔ¹" + "ä¾ÃÕ" + "ä¾Ãè" + "ä¾ÅÔ¹" + "ä¾Åè" + "ä¾ÈÒÅ" + "ä¾àÃÒÐ" + "ä¾âè¹ì" + "ä¾è" + "ä¾è»êÍ¡" + "ä¿" + "ä¿Åì" + "ä¿á¹¹«ì" + "äÁ¤Ã͹" + "äÁµÃÕ" + "äÁÂÃÒº" + "äÁÅì" + "äÁâ¤Ã" + "äÁâ¤Ã«Í¿·ì" + "äÁâ¤ÃàÇ¿" + "äÁâ¤Ã⿹" + "äÁè" + "äÁé" + "äÂ" + "äÂè" + "äÃ" + "äÃè" + "äÃé" + "äÅÂ" + "äÅૹÊì" + "äÅè" + "äÅèàÅÕèÂ" + "äÅé" + "äÇ" + "äÇ¡Ù³°ì" + "äDZÙÃÂì" + "äÇ·Âì" + "äǹì" + "äǾ¨¹ì" + "äÇÂҡóì" + "äÇÂÒÇѨ¡Ã" + "äÇÂÒÇѨÁÑÂ" + "äÇÃÑÊ" + "äÇâÍÅÔ¹" + "äÇé" + "äÈÅ" + "äÊ" + "äÊÂ" + "äÊÂÒ" + "äÊÃé" + "äÊÇ" + "äÊé" + "äË" + "ä˹" + "äËÁ" + "äËÁé" + "äËÃè" + "äËÅ" + "äËÅè" + "äËÇ" + "äËÇé" + "äËËÅÓ" + "äËè" + "äËé" + "äÍ" + "äͤ͹" + "äÍ·Õ" + "äͺÕàÍçÁ" + "äÍÂÃÒ" + "äÍÂàÃÈ" + "äÍÃÒÇѳ" + "äÍÃìᏴì" + "äÍÈ¡ÃÕÁ" + "äÍÈÇÃÃÂì" + "äÍÈÙÃÂì" + "äÍÍ͹" + "äÍâ«â·»" + "äÍâÍ´Õ¹" + "äÍé" + "äδÃÒ" + "äÎâ¡ÃÁÔàµÍÃì" + "äÎâ´Ã¤ÒÃìºÍ¹" + "äÎâÅ" + ))) + (setq thai-word-table (list 'thai-words)) + (while l + (set-nested-alist (car l) 1 thai-word-table) + (setq l (cdr l)))) + + +(defun thai-update-word-table (file &optional append) + "Update Thai word table by replacing the current word list with +FILE. If called with a prefix argument, FILE is appended instead to +the current word list." + (interactive "FThai word table file: \nP") + (let ((buf (generate-new-buffer "*thai-work*")) + (coding-system-for-read 'thai-tis620) + (table (if append thai-word-table (list 'thai-words)))) + (unwind-protect + (save-excursion + (set-buffer buf) + (insert-file-contents file) + (goto-char (point-min)) + (while (re-search-forward "\\ct+" nil t) + (set-nested-alist (match-string 0) 1 table))) + (kill-buffer buf)) + (setq thai-word-table table))) + + +;; Two special Thai characters regarded as suffix of words. + +(defconst thai-MaiYaMok (make-char 'thai-tis620 ?\xE6)) +(defconst thai-PaiYanNoi (make-char 'thai-tis620 ?\xCF)) + + +;; Find Thai words starting at POS and return a list of positions of +;; the Thai word ends. It doesn't move point. LIMIT limits the +;; maximum position. IGNORE is a list of positions to ignore. It is +;; assumed that all following characters to LIMIT are Thai. If the +;; following char is not Thai (i.e., POS is equal to LIMIT), return t. +;; +;; Note that the longest word position comes first. + +(defun thai-find-word-ends (pos limit &optional ignore) + (if (>= pos limit) + t + (let* ((char (char-after pos)) + (this (cdr (assq char (cdr thai-word-table)))) + category-set + positions) + ;; Look up the following character sequence in `thai-word-table' + ;; character by character. + (while this + (setq pos (1+ pos) + char (char-after pos) + category-set (char-category-set char)) + ;; If the current sequence is recorded in `thai-word-table' + ;; (i.e. (car THIS) is 1) and the following Thai character is + ;; not an upper-vowel, lower-vowel, or tone-mark, we have + ;; found a possible word ending position. + (if (and (eq (car this) 1) + (not (or (aref category-set ?2) + (aref category-set ?3) + (aref category-set ?4)))) + (progn + ;; Skip possible Thai suffices. + (while (or (eq char thai-MaiYaMok) (eq char thai-PaiYanNoi)) + (setq pos (1+ pos) + char (char-after pos))) + ;; Skip character positions in IGNORE list. + (or (memq pos ignore) + (setq positions (cons pos positions))))) + ;; Set up next loop. + (setq this (and (< pos limit) (cdr (assq char this))))) + positions))) + + +;; Move point forward to the end of Thai word which follows point and +;; update VEC. VEC is a vector of three elements used to cache word +;; end positions. The Nth element, if non-nil, is a list of end +;; points of the Nth word, or t indicating that there is no Thai +;; character. LIMIT limits the point movement. + +(defun thai-forward-word-update-info (vec limit) + (let ((pos (point)) + v0 v1 v2 v3 + second-best + tried + positions) + (if + ;; If four succeeding Thai words are found, throw t, otherwise + ;; throw nil. + (catch 'tag + ;; Start with first vector element. + (setq v0 (aref vec 0)) + (unless v0 + ;; Update VEC if V0 is empty. + (setq v0 (thai-find-word-ends pos limit)) + (aset vec 0 v0) + (aset vec 1 nil)) + ;; In case we haven't found any wordbreaks resp. point has + ;; reached LIMIT, exit the catch body. + (if (symbolp v0) ; i.e. nil or t? + (throw 'tag nil)) + ;; OK, V0 holds possible word ends for the current position. + ;; We save V0 for later reference. + (setq tried v0) + (setq v1 (aref vec 1)) + ;; Now we try all end word positions to find the next word. + (while v0 + (setq pos (car v0)) + (unless v1 + ;; Update VEC if V1 is empty, ignoring positions already + ;; found -- for Thai, we need the longest match, so if + ;; we have + ;; + ;; start(long-word) = start(short-word1) + ;; end(short-word1) = start(short-word2) + ;; end(short-word2) = end(long-word) + ;; + ;; only long-word is used. + (setq v1 (thai-find-word-ends pos limit tried)) + (aset vec 1 v1) + (aset vec 2 nil)) + ;; If point has reached LIMIT, exit the catch body. + (if (eq v1 t) + (throw 'tag t)) + ;; Save SECOND-BEST, if this hasn't been done already. + ;; The `second best' solution is the end position of the + ;; longest first word followed by the longest second word. + (or second-best + (not v1) + (setq second-best (cons v0 v1))) + ;; Update the already tried end word positions. + (setq tried (append tried v1)) + ;; Now repeat the whole process to find a third word. + (when v1 + (setq v2 (aref vec 2)) + (while v1 + (setq pos (car v1)) + (unless v2 + (setq v2 (thai-find-word-ends pos limit tried)) + (aset vec 2 v2)) + (if (eq v2 t) + (throw 'tag t)) + (setq tried (append tried v2)) + ;; And the same for a fourth word. + (while v2 + (setq pos (car v2)) + (setq v3 (thai-find-word-ends pos limit tried)) + (if v3 + (throw 'tag t)) + (setq v2 (cdr v2))) + (setq v1 (cdr v1)))) + (setq v0 (cdr v0))) + ;; No success. + nil) + (progn + ;; We found four succeeding Thai words (or LIMIT has been + ;; reached). Move to the end of the first word. + (goto-char (car v0)) + ;; Update VEC for the next function call. If no larger word + ;; positions have been found, set the corresponding vector + ;; element to nil. + (if (and (consp v1) (< (car v1) (car (aref vec 1)))) + (aset vec 0 nil) + (aset vec 0 v1) + (if (and (consp v2) (< (car v2) (car (aref vec 2)))) + (aset vec 1 nil) + (aset vec 1 v2) + (aset vec 2 v3)))) ; exit function successfully + + ;; We didn't find four consecutive words. If we have found a + ;; `second best' solution and the length of those two words is + ;; longer than the longest word we can see at the current point, + ;; adopt the second best solution. This decision is based on + ;; heuristic tests. + (if (and second-best + (< (car (aref vec 0)) (car (cdr second-best)))) + (progn + (goto-char (car (car second-best))) + (aset vec 0 (cdr second-best))) + ;; We finally failed to find a word break. For Thai, the best + ;; solution is to extend the first longest word so that the + ;; end point starts a second word. + (setq pos (or (car (aref vec 0)) pos)) + (while (and (< pos limit) + (not (setq positions (thai-find-word-ends pos limit)))) + (setq pos (1+ pos))) + (goto-char pos) + (aset vec 0 positions)) + (aset vec 1 nil) + nil))) + + +;; Return a list of Thai word boundary positions after the current +;; point. LIMIT, if non-nil, limits the region to check. + +(defun thai-find-word-boundaries (&optional limit) + (or limit + (setq limit (point-max))) + (save-excursion + (let ((vec (make-vector 3 nil)) + (boundaries nil) + this-limit) + ;; Loop over all (consecutive) Thai regions by using the + ;; character property `t' until LIMIT is reached. + (while (and (< (point) limit) + (re-search-forward "\\ct+" nil t)) + (setq this-limit (point)) + (goto-char (match-beginning 0)) + (fillarray vec nil) + ;; Check the first word, initializing VEC. + (thai-forward-word-update-info vec this-limit) + ;; Then loop over the remaining words in the current Thai + ;; region, collecting the boundaries. + (while (< (point) this-limit) + (setq boundaries (cons (point) boundaries)) + (thai-forward-word-update-info vec this-limit))) + boundaries))) + + +(defun thai-break-words (separator &optional limit) + "Break Thai words by inserting a separator string at word boundaries." + (interactive "sSeparator: ") + (save-excursion + (let ((boundaries (thai-find-word-boundaries limit))) + (while boundaries + (goto-char (car boundaries)) + (insert separator) + (setq boundaries (cdr boundaries)))))) + + +(defun thai-forward-word (count) + "Move point forward COUNT words considering Thai word boundaries. +If COUNT is negative, move point backward (- COUNT) words." + (interactive "p") + (if (> count 0) + (while (> count 0) + (skip-syntax-forward "^w") + (if (looking-at "\\ct+") + ;; We have reached a Thai region, so we must do something + ;; special instead of using forward-word. + (let ((start (point)) + (limit (match-end 0)) + boundaries + tail) + ;; If thai-forward-word has been called within a Thai + ;; region, we must go back until the Thai region starts + ;; to do the contextual analysis for finding word + ;; breaks. + (while (aref (char-category-set (preceding-char)) ?t) + (forward-char -1)) + ;; OK, we ask for the list of word boundaries in + ;; reversed order. + (setq boundaries (nreverse (thai-find-word-boundaries limit))) + ;; Now we search for the next boundary after START. + (while (and boundaries (<= (car boundaries) start)) + (setq boundaries (cdr boundaries))) + ;; Adjust loop for next while loop. + (setq count (1- count)) + ;; Now we skip Thai words until the BOUNDARIES list is + ;; empty or count-1 words have been passed. + (if (not boundaries) + (goto-char limit) + (while (and (> count 0) + boundaries) + (setq boundaries (cdr boundaries) + count (1- count))) + ;; If BOUNDARIES is empty, the word counter is not + ;; zero yet (remember that we have decreased COUNT by + ;; one), so we go to LIMIT. Otherwise go to next + ;; boundary. + (if boundaries + (goto-char (car boundaries)) + (goto-char limit)))) + ;; No Thai region. + (forward-word 1) + (setq count (1- count)))) + ;; The symmetrical action for negative values. + (if (< count 0) + (while (< count 0) + (skip-syntax-backward "^w") + (if (aref (char-category-set (preceding-char)) ?t) + (let ((start (point)) + (limit (if (looking-at "\\ct+") (match-end 0) + (point))) + boundaries) + (forward-char -1) + (while (aref (char-category-set (preceding-char)) ?t) + (forward-char -1)) + (setq boundaries (thai-find-word-boundaries limit)) + (while (and boundaries (>= (car boundaries) start)) + (setq boundaries (cdr boundaries))) + (setq count (1+ count)) + (if boundaries + (progn + (while (and (< count 0) boundaries) + (setq boundaries (cdr boundaries) + count (1+ count))) + (if boundaries + (goto-char (car boundaries)))))) + (forward-word -1) + (setq count (1+ count))))))) + + +(defun thai-backward-word (count) + "Move point backward COUNT words considering Thai word boundaries. +If COUNT is negative, move point forward (- COUNT) words." + (interactive "p") + (thai-forward-word (- count))) + + +(provide 'thai-word) + + +;; Local Variables: +;; coding: tis-620 +;; End: + +;; end of thai-word.el + +;; arch-tag: 29927f02-e177-4224-a270-7e67210b038a
--- a/lisp/ldefs-boot.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/ldefs-boot.el Thu Mar 24 18:41:26 2005 +0000 @@ -64,7 +64,7 @@ ;;;*** ;;;### (autoloads (ada-mode ada-add-extensions) "ada-mode" "progmodes/ada-mode.el" -;;;;;; (16561 46414)) +;;;;;; (16858 50933)) ;;; Generated autoloads from progmodes/ada-mode.el (autoload (quote ada-add-extensions) "ada-mode" "\ @@ -151,7 +151,7 @@ ;;;;;; change-log-mode add-change-log-entry-other-window add-change-log-entry ;;;;;; find-change-log prompt-for-change-log-name add-log-mailing-address ;;;;;; add-log-full-name add-log-current-defun-function) "add-log" -;;;;;; "add-log.el" (16816 23720)) +;;;;;; "add-log.el" (16958 58756)) ;;; Generated autoloads from add-log.el (defvar add-log-current-defun-function nil "\ @@ -388,7 +388,7 @@ ;;;### (autoloads (align-newline-and-indent align-unhighlight-rule ;;;;;; align-highlight-rule align-current align-entire align-regexp -;;;;;; align) "align" "align.el" (16780 55376)) +;;;;;; align) "align" "align.el" (16942 52925)) ;;; Generated autoloads from align.el (autoload (quote align) "align" "\ @@ -477,7 +477,7 @@ ;;;*** -;;;### (autoloads (allout-init) "allout" "allout.el" (16775 26705)) +;;;### (autoloads (allout-init) "allout" "allout.el" (16908 33360)) ;;; Generated autoloads from allout.el (autoload (quote allout-init) "allout" "\ @@ -513,7 +513,7 @@ ;;;*** ;;;### (autoloads (ange-ftp-hook-function ange-ftp-reread-dir) "ange-ftp" -;;;;;; "net/ange-ftp.el" (16746 18215)) +;;;;;; "net/ange-ftp.el" (16908 33362)) ;;; Generated autoloads from net/ange-ftp.el (defalias (quote ange-ftp-re-read-dir) (quote ange-ftp-reread-dir)) @@ -535,7 +535,7 @@ ;;;*** ;;;### (autoloads (animate-birthday-present animate-sequence animate-string) -;;;;;; "animate" "play/animate.el" (16442 4954)) +;;;;;; "animate" "play/animate.el" (16944 24675)) ;;; Generated autoloads from play/animate.el (autoload (quote animate-string) "animate" "\ @@ -563,7 +563,7 @@ ;;;*** ;;;### (autoloads (ansi-color-process-output ansi-color-for-comint-mode-on) -;;;;;; "ansi-color" "ansi-color.el" (16213 43266)) +;;;;;; "ansi-color" "ansi-color.el" (16858 50906)) ;;; Generated autoloads from ansi-color.el (autoload (quote ansi-color-for-comint-mode-on) "ansi-color" "\ @@ -589,7 +589,7 @@ ;;;*** ;;;### (autoloads (antlr-set-tabs antlr-mode antlr-show-makefile-rules) -;;;;;; "antlr-mode" "progmodes/antlr-mode.el" (16377 12872)) +;;;;;; "antlr-mode" "progmodes/antlr-mode.el" (16858 50933)) ;;; Generated autoloads from progmodes/antlr-mode.el (autoload (quote antlr-show-makefile-rules) "antlr-mode" "\ @@ -628,7 +628,7 @@ ;;;### (autoloads (appt-activate appt-make-list appt-delete appt-add ;;;;;; appt-display-diary appt-display-duration appt-display-mode-line ;;;;;; appt-msg-window appt-visible appt-audible appt-message-warning-time -;;;;;; appt-issue-message) "appt" "calendar/appt.el" (16547 17258)) +;;;;;; appt-issue-message) "appt" "calendar/appt.el" (16925 43112)) ;;; Generated autoloads from calendar/appt.el (defvar appt-issue-message t "\ @@ -690,13 +690,16 @@ \(fn)" t nil) (autoload (quote appt-make-list) "appt" "\ -Create the appointments list from today's diary buffer. +Update the appointments list from today's diary buffer. The time must be at the beginning of a line for it to be put in the appointments list (see examples in documentation of the function `appt-check'). We assume that the variables DATE and NUMBER hold the arguments that `list-diary-entries' received. They specify the range of dates that the diary is being processed for. +Any appointments made with `appt-add' are not affected by this +function. + \(fn)" nil nil) (autoload (quote appt-activate) "appt" "\ @@ -710,7 +713,7 @@ ;;;### (autoloads (apropos-documentation apropos-value apropos apropos-documentation-property ;;;;;; apropos-command apropos-variable) "apropos" "apropos.el" -;;;;;; (16768 48631)) +;;;;;; (16942 52925)) ;;; Generated autoloads from apropos.el (autoload (quote apropos-variable) "apropos" "\ @@ -856,8 +859,8 @@ ;;;*** -;;;### (autoloads (artist-mode) "artist" "textmodes/artist.el" (16572 -;;;;;; 19411)) +;;;### (autoloads (artist-mode) "artist" "textmodes/artist.el" (16858 +;;;;;; 50939)) ;;; Generated autoloads from textmodes/artist.el (autoload (quote artist-mode) "artist" "\ @@ -1062,8 +1065,8 @@ ;;;*** -;;;### (autoloads (asm-mode) "asm-mode" "progmodes/asm-mode.el" (16764 -;;;;;; 51521)) +;;;### (autoloads (asm-mode) "asm-mode" "progmodes/asm-mode.el" (16908 +;;;;;; 33362)) ;;; Generated autoloads from progmodes/asm-mode.el (autoload (quote asm-mode) "asm-mode" "\ @@ -1211,7 +1214,7 @@ ;;;### (autoloads (batch-update-autoloads update-directory-autoloads ;;;;;; update-file-autoloads) "autoload" "emacs-lisp/autoload.el" -;;;;;; (16775 26709)) +;;;;;; (16866 20010)) ;;; Generated autoloads from emacs-lisp/autoload.el (autoload (quote update-file-autoloads) "autoload" "\ @@ -1246,7 +1249,7 @@ ;;;### (autoloads (global-auto-revert-mode turn-on-auto-revert-tail-mode ;;;;;; auto-revert-tail-mode turn-on-auto-revert-mode auto-revert-mode) -;;;;;; "autorevert" "autorevert.el" (16775 26705)) +;;;;;; "autorevert" "autorevert.el" (16923 3604)) ;;; Generated autoloads from autorevert.el (autoload (quote auto-revert-mode) "autorevert" "\ @@ -1379,9 +1382,10 @@ ;;;*** -;;;### (autoloads (display-battery battery) "battery" "battery.el" -;;;;;; (16718 40975)) +;;;### (autoloads (display-battery-mode battery) "battery" "battery.el" +;;;;;; (16861 9525)) ;;; Generated autoloads from battery.el + (put 'battery-mode-line-string 'risky-local-variable t) (autoload (quote battery) "battery" "\ Display battery status information in the echo area. @@ -1390,14 +1394,22 @@ \(fn)" t nil) -(autoload (quote display-battery) "battery" "\ +(defvar display-battery-mode nil "\ +Non-nil if Display-Battery mode is enabled. +See the command `display-battery-mode' for a description of this minor-mode. +Setting this variable directly does not take effect; +use either \\[customize] or the function `display-battery-mode'.") + +(custom-autoload (quote display-battery-mode) "battery") + +(autoload (quote display-battery-mode) "battery" "\ Display battery status information in the mode line. The text being displayed in the mode line is controlled by the variables `battery-mode-line-format' and `battery-status-function'. The mode line will be updated automatically every `battery-update-interval' seconds. -\(fn)" t nil) +\(fn &optional ARG)" t nil) ;;;*** @@ -1434,8 +1446,8 @@ ;;;*** -;;;### (autoloads (bibtex-mode) "bibtex" "textmodes/bibtex.el" (16820 -;;;;;; 16328)) +;;;### (autoloads (bibtex-mode) "bibtex" "textmodes/bibtex.el" (16887 +;;;;;; 27628)) ;;; Generated autoloads from textmodes/bibtex.el (autoload (quote bibtex-mode) "bibtex" "\ @@ -1497,7 +1509,7 @@ ;;;### (autoloads (binhex-decode-region binhex-decode-region-external ;;;;;; binhex-decode-region-internal) "binhex" "gnus/binhex.el" -;;;;;; (16719 60883)) +;;;;;; (16908 33361)) ;;; Generated autoloads from gnus/binhex.el (defconst binhex-begin-line "^:...............................................................$") @@ -1643,7 +1655,7 @@ ;;;### (autoloads (bookmark-bmenu-list bookmark-load bookmark-save ;;;;;; bookmark-write bookmark-delete bookmark-insert bookmark-rename ;;;;;; bookmark-insert-location bookmark-relocate bookmark-jump -;;;;;; bookmark-set) "bookmark" "bookmark.el" (16588 19249)) +;;;;;; bookmark-set) "bookmark" "bookmark.el" (16858 50906)) ;;; Generated autoloads from bookmark.el (define-key ctl-x-map "rb" 'bookmark-jump) (define-key ctl-x-map "rm" 'bookmark-set) @@ -1831,8 +1843,9 @@ ;;;;;; browse-url-galeon browse-url-mozilla browse-url-netscape ;;;;;; browse-url-default-browser browse-url-at-mouse browse-url-at-point ;;;;;; browse-url browse-url-of-region browse-url-of-dired-file -;;;;;; browse-url-of-buffer browse-url-of-file browse-url-browser-function) -;;;;;; "browse-url" "net/browse-url.el" (16783 21522)) +;;;;;; browse-url-of-buffer browse-url-of-file browse-url-url-at-point +;;;;;; browse-url-browser-function) "browse-url" "net/browse-url.el" +;;;;;; (16944 24675)) ;;; Generated autoloads from net/browse-url.el (defvar browse-url-browser-function (cond ((memq system-type (quote (windows-nt ms-dos cygwin))) (quote browse-url-default-windows-browser)) ((memq system-type (quote (darwin))) (quote browse-url-default-macosx-browser)) (t (quote browse-url-default-browser))) "\ @@ -1848,6 +1861,11 @@ (custom-autoload (quote browse-url-browser-function) "browse-url") +(autoload (quote browse-url-url-at-point) "browse-url" "\ +Not documented + +\(fn)" nil nil) + (autoload (quote browse-url-of-file) "browse-url" "\ Ask a WWW browser to display FILE. Display the current buffer's file if FILE is nil or if called @@ -1910,8 +1928,9 @@ When called non-interactively, optional second argument NEW-WINDOW is used instead of `browse-url-new-window-flag'. -The order attempted is gnome-moz-remote, Mozilla, Galeon, Netscape, -Mosaic, IXI Mosaic, Lynx in an xterm, MMM, Konqueror, and then W3. +The order attempted is gnome-moz-remote, Mozilla, Galeon, +Konqueror, Netscape, Mosaic, IXI Mosaic, Lynx in an xterm, MMM, +and then W3. \(fn URL &rest ARGS)" nil nil) @@ -1925,6 +1944,10 @@ random existing one. A non-nil interactive prefix argument reverses the effect of `browse-url-new-window-flag'. +If `browse-url-netscape-new-window-is-tab' is non-nil, then +whenever a document would otherwise be loaded in a new window, it +is loaded in a new tab in an existing window instead. + When called non-interactively, optional second argument NEW-WINDOW is used instead of `browse-url-new-window-flag'. @@ -2173,8 +2196,8 @@ ;;;*** ;;;### (autoloads (insert-text-button make-text-button insert-button -;;;;;; make-button define-button-type) "button" "button.el" (16750 -;;;;;; 18527)) +;;;;;; make-button define-button-type) "button" "button.el" (16934 +;;;;;; 57456)) ;;; Generated autoloads from button.el (defvar button-map (let ((map (make-sparse-keymap))) (define-key map " " (quote push-button)) (define-key map [mouse-2] (quote push-button)) map) "\ @@ -2262,7 +2285,7 @@ ;;;;;; batch-byte-compile-if-not-done display-call-tree byte-compile ;;;;;; compile-defun byte-compile-file byte-recompile-directory ;;;;;; byte-force-recompile) "bytecomp" "emacs-lisp/bytecomp.el" -;;;;;; (16801 58026)) +;;;;;; (16942 52931)) ;;; Generated autoloads from emacs-lisp/bytecomp.el (autoload (quote byte-force-recompile) "bytecomp" "\ @@ -2378,12 +2401,12 @@ ;;;### (autoloads (defmath calc-embedded-activate calc-embedded calc-grab-rectangle ;;;;;; calc-grab-region full-calc-keypad calc-keypad calc-eval quick-calc -;;;;;; full-calc calc calc-dispatch) "calc" "calc/calc.el" (16816 -;;;;;; 23730)) +;;;;;; full-calc calc calc-dispatch) "calc" "calc/calc.el" (16949 +;;;;;; 24050)) ;;; Generated autoloads from calc/calc.el -(defvar calc-settings-file user-init-file "\ -*File in which to record permanent settings; default is `user-init-file'.") +(defvar calc-settings-file (convert-standard-filename "~/.calc.el") "\ +*File in which to record permanent settings.") (global-set-key "\e#" 'calc-dispatch) (autoload (quote calc-dispatch) "calc" "\ @@ -2455,8 +2478,8 @@ ;;;*** -;;;### (autoloads (calculator) "calculator" "calculator.el" (16213 -;;;;;; 43267)) +;;;### (autoloads (calculator) "calculator" "calculator.el" (16858 +;;;;;; 50907)) ;;; Generated autoloads from calculator.el (autoload (quote calculator) "calculator" "\ @@ -2467,12 +2490,12 @@ ;;;*** -;;;### (autoloads (calendar calendar-setup solar-holidays bahai-holidays -;;;;;; islamic-holidays christian-holidays hebrew-holidays other-holidays -;;;;;; local-holidays oriental-holidays general-holidays holidays-in-diary-buffer -;;;;;; diary-list-include-blanks nongregorian-diary-marking-hook -;;;;;; mark-diary-entries-hook nongregorian-diary-listing-hook diary-display-hook -;;;;;; diary-hook list-diary-entries-hook print-diary-entries-hook +;;;### (autoloads (calendar-week-start-day calendar calendar-setup +;;;;;; solar-holidays bahai-holidays islamic-holidays christian-holidays +;;;;;; hebrew-holidays other-holidays local-holidays oriental-holidays +;;;;;; general-holidays holidays-in-diary-buffer diary-list-include-blanks +;;;;;; nongregorian-diary-marking-hook mark-diary-entries-hook nongregorian-diary-listing-hook +;;;;;; diary-display-hook diary-hook list-diary-entries-hook print-diary-entries-hook ;;;;;; american-calendar-display-form european-calendar-display-form ;;;;;; european-date-diary-pattern american-date-diary-pattern european-calendar-style ;;;;;; abbreviated-calendar-year sexp-diary-entry-symbol diary-include-string @@ -2483,17 +2506,10 @@ ;;;;;; all-christian-calendar-holidays all-hebrew-calendar-holidays ;;;;;; mark-holidays-in-calendar view-calendar-holidays-initially ;;;;;; calendar-remove-frame-by-deleting mark-diary-entries-in-calendar -;;;;;; number-of-diary-entries view-diary-entries-initially calendar-offset -;;;;;; calendar-week-start-day) "calendar" "calendar/calendar.el" -;;;;;; (16738 29931)) +;;;;;; number-of-diary-entries view-diary-entries-initially calendar-offset) +;;;;;; "calendar" "calendar/calendar.el" (16953 20625)) ;;; Generated autoloads from calendar/calendar.el -(defvar calendar-week-start-day 0 "\ -*The day of the week on which a week in the calendar begins. -0 means Sunday (default), 1 means Monday, and so on.") - -(custom-autoload (quote calendar-week-start-day) "calendar") - (defvar calendar-offset 0 "\ *The offset of the principal month from the center of the calendar window. 0 means the principal month is in the center (default), -1 means on the left, @@ -3068,10 +3084,21 @@ \(fn &optional ARG)" t nil) +(defvar calendar-week-start-day 0 "\ +*The day of the week on which a week in the calendar begins. +0 means Sunday (default), 1 means Monday, and so on. + +If you change this variable directly (without using customize) +after starting `calendar', you should call `redraw-calendar' to +update the calendar display to reflect the change, otherwise +movement commands will not work correctly.") + +(custom-autoload (quote calendar-week-start-day) "calendar") + ;;;*** ;;;### (autoloads (canlock-verify canlock-insert-header) "canlock" -;;;;;; "gnus/canlock.el" (16697 49031)) +;;;;;; "gnus/canlock.el" (16822 52985)) ;;; Generated autoloads from gnus/canlock.el (autoload (quote canlock-insert-header) "canlock" "\ @@ -3090,7 +3117,7 @@ ;;;### (autoloads (pike-mode idl-mode java-mode objc-mode c++-mode ;;;;;; c-mode c-initialize-cc-mode) "cc-mode" "progmodes/cc-mode.el" -;;;;;; (16816 23740)) +;;;;;; (16858 50934)) ;;; Generated autoloads from progmodes/cc-mode.el (autoload (quote c-initialize-cc-mode) "cc-mode" "\ @@ -3305,7 +3332,7 @@ ;;;### (autoloads (ccl-execute-with-args check-ccl-program define-ccl-program ;;;;;; declare-ccl-program ccl-dump ccl-compile) "ccl" "international/ccl.el" -;;;;;; (16585 28856)) +;;;;;; (16942 52931)) ;;; Generated autoloads from international/ccl.el (autoload (quote ccl-compile) "ccl" "\ @@ -3341,7 +3368,9 @@ BUFFER_MAGNIFICATION is an integer value specifying the approximate output buffer magnification size compared with the bytes of input data -text. If the value is zero, the CCL program can't execute `read' and +text. It is assured that the actual output buffer has 256 bytes +more than the size calculated by BUFFER_MAGNIFICATION. +If the value is zero, the CCL program can't execute `read' and `write' commands. CCL_MAIN_CODE and CCL_EOF_CODE are CCL program codes. CCL_MAIN_CODE @@ -3562,7 +3591,7 @@ ;;;*** ;;;### (autoloads (cfengine-mode) "cfengine" "progmodes/cfengine.el" -;;;;;; (16534 3809)) +;;;;;; (16908 33362)) ;;; Generated autoloads from progmodes/cfengine.el (autoload (quote cfengine-mode) "cfengine" "\ @@ -3584,7 +3613,7 @@ ;;;;;; checkdoc-comments checkdoc-continue checkdoc-start checkdoc-current-buffer ;;;;;; checkdoc-eval-current-buffer checkdoc-message-interactive ;;;;;; checkdoc-interactive checkdoc) "checkdoc" "emacs-lisp/checkdoc.el" -;;;;;; (16709 44237)) +;;;;;; (16829 43426)) ;;; Generated autoloads from emacs-lisp/checkdoc.el (autoload (quote checkdoc) "checkdoc" "\ @@ -3959,7 +3988,7 @@ ;;;### (autoloads (comint-redirect-results-list-from-process comint-redirect-results-list ;;;;;; comint-redirect-send-command-to-process comint-redirect-send-command ;;;;;; comint-run make-comint make-comint-in-buffer) "comint" "comint.el" -;;;;;; (16810 63790)) +;;;;;; (16908 33360)) ;;; Generated autoloads from comint.el (autoload (quote make-comint-in-buffer) "comint" "\ @@ -4066,7 +4095,7 @@ ;;;### (autoloads (compilation-next-error-function compilation-minor-mode ;;;;;; compilation-shell-minor-mode compilation-mode compile compilation-search-path ;;;;;; compilation-ask-about-save compilation-window-height compilation-mode-hook) -;;;;;; "compile" "progmodes/compile.el" (16805 44924)) +;;;;;; "compile" "progmodes/compile.el" (16939 44105)) ;;; Generated autoloads from progmodes/compile.el (defvar compilation-mode-hook nil "\ @@ -4452,7 +4481,7 @@ ;;;### (autoloads (conf-xdefaults-mode conf-ppd-mode conf-colon-mode ;;;;;; conf-space-mode conf-javaprop-mode conf-windows-mode conf-unix-mode -;;;;;; conf-mode) "conf-mode" "textmodes/conf-mode.el" (16813 38253)) +;;;;;; conf-mode) "conf-mode" "textmodes/conf-mode.el" (16908 33363)) ;;; Generated autoloads from textmodes/conf-mode.el (autoload (quote conf-mode) "conf-mode" "\ @@ -4633,8 +4662,8 @@ ;;;*** -;;;### (autoloads (copyright copyright-update) "copyright" "emacs-lisp/copyright.el" -;;;;;; (16675 7397)) +;;;### (autoloads (copyright copyright-fix-years copyright-update) +;;;;;; "copyright" "emacs-lisp/copyright.el" (16932 19775)) ;;; Generated autoloads from emacs-lisp/copyright.el (autoload (quote copyright-update) "copyright" "\ @@ -4648,6 +4677,12 @@ \(fn &optional ARG INTERACTIVEP)" t nil) +(autoload (quote copyright-fix-years) "copyright" "\ +Convert 2 digit years to 4 digit years. +Uses heuristic: year >= 50 means 19xx, < 50 means 20xx. + +\(fn)" t nil) + (autoload (quote copyright) "copyright" "\ Insert a copyright by $ORGANIZATION notice at cursor. @@ -4656,7 +4691,7 @@ ;;;*** ;;;### (autoloads (cperl-mode) "cperl-mode" "progmodes/cperl-mode.el" -;;;;;; (16805 44924)) +;;;;;; (16858 50935)) ;;; Generated autoloads from progmodes/cperl-mode.el (autoload (quote cperl-mode) "cperl-mode" "\ @@ -4907,8 +4942,8 @@ ;;;*** -;;;### (autoloads (cua-mode) "cua-base" "emulation/cua-base.el" (16775 -;;;;;; 26710)) +;;;### (autoloads (cua-mode) "cua-base" "emulation/cua-base.el" (16942 +;;;;;; 52931)) ;;; Generated autoloads from emulation/cua-base.el (defvar cua-mode nil "\ @@ -4946,7 +4981,7 @@ ;;;;;; customize-face customize-changed-options customize-option-other-window ;;;;;; customize-option customize-group-other-window customize-group ;;;;;; customize-mode customize customize-save-variable customize-set-variable -;;;;;; customize-set-value) "cus-edit" "cus-edit.el" (16820 16328)) +;;;;;; customize-set-value) "cus-edit" "cus-edit.el" (16930 25645)) ;;; Generated autoloads from cus-edit.el (add-hook 'same-window-regexps "\\`\\*Customiz.*\\*\\'") @@ -5140,16 +5175,35 @@ (defvar custom-file nil "\ File used for storing customization information. The default is nil, which means to use your init file -as specified by `user-init-file'. To make this feature work, -you'll need to put something in your init file to specify -the value of `custom-file'. Just customizing the variable -won't suffice, because Emacs won't know which file to load -unless the init file sets `custom-file'. - -When you change this variable, look in the previous custom file -\(usually your init file) for the forms `(custom-set-variables ...)' -and `(custom-set-faces ...)', and copy them (whichever ones you find) -to the new custom file. This will preserve your existing customizations.") +as specified by `user-init-file'. If the value is not nil, +it should be an absolute file name. + +You can set this option through Custom, if you carefully read the +last paragraph below. However, usually it is simpler to write +something like the following in your init file: + +\(setq custom-file \"~/.emacs-custom.el\") +\(load custom-file) + +Note that both lines are necessary: the first line tells Custom to +save all customizations in this file, but does not load it. + +When you change this variable outside Custom, look in the +previous custom file (usually your init file) for the +forms `(custom-set-variables ...)' and `(custom-set-faces ...)', +and copy them (whichever ones you find) to the new custom file. +This will preserve your existing customizations. + +If you save this option using Custom, Custom will write all +currently saved customizations, including the new one for this +option itself, into the file you specify, overwriting any +`custom-set-variables' and `custom-set-faces' forms already +present in that file. It will not delete any customizations from +the old custom file. You should do that manually if that is what you +want. You also have to put something like `(load \"CUSTOM-FILE\") +in your init file, where CUSTOM-FILE is the actual name of the +file. Otherwise, Emacs will not load the file when it starts up, +and hence will not set `custom-file' to that file either.") (custom-autoload (quote custom-file) "cus-edit") @@ -5181,7 +5235,7 @@ ;;;### (autoloads (custom-reset-faces custom-theme-reset-faces custom-theme-face-value ;;;;;; custom-set-faces custom-declare-face) "cus-face" "cus-face.el" -;;;;;; (16589 26258)) +;;;;;; (16861 9526)) ;;; Generated autoloads from cus-face.el (autoload (quote custom-declare-face) "cus-face" "\ @@ -5332,7 +5386,7 @@ ;;;*** ;;;### (autoloads (dabbrev-expand dabbrev-completion) "dabbrev" "dabbrev.el" -;;;;;; (16795 7139)) +;;;;;; (16908 33360)) ;;; Generated autoloads from dabbrev.el (define-key esc-map "/" 'dabbrev-expand) (define-key esc-map [?\C-/] 'dabbrev-completion) @@ -5379,8 +5433,8 @@ ;;;*** -;;;### (autoloads (dcl-mode) "dcl-mode" "progmodes/dcl-mode.el" (16213 -;;;;;; 43281)) +;;;### (autoloads (dcl-mode) "dcl-mode" "progmodes/dcl-mode.el" (16958 +;;;;;; 58759)) ;;; Generated autoloads from progmodes/dcl-mode.el (autoload (quote dcl-mode) "dcl-mode" "\ @@ -5507,7 +5561,7 @@ ;;;*** ;;;### (autoloads (cancel-debug-on-entry debug-on-entry debug) "debug" -;;;;;; "emacs-lisp/debug.el" (16213 43273)) +;;;;;; "emacs-lisp/debug.el" (16953 20625)) ;;; Generated autoloads from emacs-lisp/debug.el (setq debugger (quote debug)) @@ -5542,7 +5596,7 @@ ;;;*** ;;;### (autoloads (decipher-mode decipher) "decipher" "play/decipher.el" -;;;;;; (16213 43281)) +;;;;;; (16876 58220)) ;;; Generated autoloads from play/decipher.el (autoload (quote decipher) "decipher" "\ @@ -5676,7 +5730,7 @@ ;;;*** ;;;### (autoloads (derived-mode-init-mode-variables define-derived-mode) -;;;;;; "derived" "emacs-lisp/derived.el" (16213 43273)) +;;;;;; "derived" "emacs-lisp/derived.el" (16908 33361)) ;;; Generated autoloads from emacs-lisp/derived.el (autoload (quote define-derived-mode) "derived" "\ @@ -5738,7 +5792,7 @@ ;;;*** ;;;### (autoloads (describe-char describe-text-properties) "descr-text" -;;;;;; "descr-text.el" (16801 58019)) +;;;;;; "descr-text.el" (16908 33360)) ;;; Generated autoloads from descr-text.el (autoload (quote describe-text-properties) "descr-text" "\ @@ -5763,7 +5817,7 @@ ;;;### (autoloads (desktop-revert desktop-save-in-desktop-dir desktop-change-dir ;;;;;; desktop-load-default desktop-read desktop-save-mode) "desktop" -;;;;;; "desktop.el" (16808 48569)) +;;;;;; "desktop.el" (16908 33360)) ;;; Generated autoloads from desktop.el (defvar desktop-save-mode nil "\ @@ -5838,7 +5892,7 @@ ;;;;;; gnus-article-outlook-repair-attribution gnus-article-outlook-unwrap-lines ;;;;;; gnus-outlook-display-hook gnus-outlook-deuglify-unwrap-max ;;;;;; gnus-outlook-deuglify-unwrap-min) "deuglify" "gnus/deuglify.el" -;;;;;; (16775 26711)) +;;;;;; (16908 33361)) ;;; Generated autoloads from gnus/deuglify.el (defvar gnus-outlook-deuglify-unwrap-min 45 "\ @@ -5905,7 +5959,7 @@ ;;;*** ;;;### (autoloads (diary-mode diary-mail-entries diary) "diary-lib" -;;;;;; "calendar/diary-lib.el" (16785 59559)) +;;;;;; "calendar/diary-lib.el" (16953 20625)) ;;; Generated autoloads from calendar/diary-lib.el (autoload (quote diary) "diary-lib" "\ @@ -6014,7 +6068,7 @@ ;;;;;; dired-other-window dired dired-copy-preserve-time dired-dwim-target ;;;;;; dired-keep-marker-symlink dired-keep-marker-hardlink dired-keep-marker-copy ;;;;;; dired-keep-marker-rename dired-trivial-filenames dired-ls-F-marks-symlinks -;;;;;; dired-listing-switches) "dired" "dired.el" (16804 23129)) +;;;;;; dired-listing-switches) "dired" "dired.el" (16915 11400)) ;;; Generated autoloads from dired.el (defvar dired-listing-switches "-al" "\ @@ -6744,7 +6798,7 @@ ;;;*** ;;;### (autoloads (double-mode double-mode) "double" "double.el" -;;;;;; (16213 43267)) +;;;;;; (16932 19773)) ;;; Generated autoloads from double.el (defvar double-mode nil "\ @@ -7268,8 +7322,8 @@ ;;;;;; ebrowse-tags-find-declaration-other-window ebrowse-tags-find-definition ;;;;;; ebrowse-tags-view-definition ebrowse-tags-find-declaration ;;;;;; ebrowse-tags-view-declaration ebrowse-member-mode ebrowse-electric-choose-tree -;;;;;; ebrowse-tree-mode) "ebrowse" "progmodes/ebrowse.el" (16234 -;;;;;; 50257)) +;;;;;; ebrowse-tree-mode) "ebrowse" "progmodes/ebrowse.el" (16875 +;;;;;; 35928)) ;;; Generated autoloads from progmodes/ebrowse.el (autoload (quote ebrowse-tree-mode) "ebrowse" "\ @@ -7420,7 +7474,7 @@ ;;;*** ;;;### (autoloads (electric-buffer-list) "ebuff-menu" "ebuff-menu.el" -;;;;;; (16787 16350)) +;;;;;; (16868 63463)) ;;; Generated autoloads from ebuff-menu.el (autoload (quote electric-buffer-list) "ebuff-menu" "\ @@ -7520,7 +7574,7 @@ ;;;;;; ediff-merge-directory-revisions ediff-merge-directories-with-ancestor ;;;;;; ediff-merge-directories ediff-directories3 ediff-directory-revisions ;;;;;; ediff-directories ediff-buffers3 ediff-buffers ediff-backup -;;;;;; ediff-files3 ediff-files) "ediff" "ediff.el" (16580 11202)) +;;;;;; ediff-files3 ediff-files) "ediff" "ediff.el" (16923 3605)) ;;; Generated autoloads from ediff.el (autoload (quote ediff-files) "ediff" "\ @@ -7779,7 +7833,7 @@ ;;;*** ;;;### (autoloads (ediff-show-registry) "ediff-mult" "ediff-mult.el" -;;;;;; (16626 19946)) +;;;;;; (16923 3605)) ;;; Generated autoloads from ediff-mult.el (autoload (quote ediff-show-registry) "ediff-mult" "\ @@ -7813,7 +7867,7 @@ ;;;### (autoloads (format-kbd-macro read-kbd-macro edit-named-kbd-macro ;;;;;; edit-last-kbd-macro edit-kbd-macro) "edmacro" "edmacro.el" -;;;;;; (16733 11795)) +;;;;;; (16822 52984)) ;;; Generated autoloads from edmacro.el (defvar edmacro-eight-bits nil "\ @@ -7971,7 +8025,7 @@ ;;;*** ;;;### (autoloads (elint-initialize) "elint" "emacs-lisp/elint.el" -;;;;;; (16816 23731)) +;;;;;; (16870 21079)) ;;; Generated autoloads from emacs-lisp/elint.el (autoload (quote elint-initialize) "elint" "\ @@ -8110,7 +8164,7 @@ ;;;*** ;;;### (autoloads (encoded-kbd-mode) "encoded-kb" "international/encoded-kb.el" -;;;;;; (16657 61756)) +;;;;;; (16884 52115)) ;;; Generated autoloads from international/encoded-kb.el (defvar encoded-kbd-mode nil "\ @@ -8181,8 +8235,8 @@ ;;;*** -;;;### (autoloads (eshell-test) "esh-test" "eshell/esh-test.el" (16548 -;;;;;; 34615)) +;;;### (autoloads (eshell-test) "esh-test" "eshell/esh-test.el" (16858 +;;;;;; 50924)) ;;; Generated autoloads from eshell/esh-test.el (autoload (quote eshell-test) "esh-test" "\ @@ -8536,7 +8590,7 @@ ;;;;;; ethio-fidel-to-sera-buffer ethio-fidel-to-sera-region ethio-sera-to-fidel-marker ;;;;;; ethio-sera-to-fidel-mail ethio-sera-to-fidel-mail-or-marker ;;;;;; ethio-sera-to-fidel-buffer ethio-sera-to-fidel-region setup-ethiopic-environment-internal) -;;;;;; "ethio-util" "language/ethio-util.el" (16498 35858)) +;;;;;; "ethio-util" "language/ethio-util.el" (16953 20625)) ;;; Generated autoloads from language/ethio-util.el (autoload (quote setup-ethiopic-environment-internal) "ethio-util" "\ @@ -8731,7 +8785,7 @@ ;;;### (autoloads (eudc-load-eudc eudc-query-form eudc-expand-inline ;;;;;; eudc-get-phone eudc-get-email eudc-set-server) "eudc" "net/eudc.el" -;;;;;; (16775 26715)) +;;;;;; (16884 52115)) ;;; Generated autoloads from net/eudc.el (autoload (quote eudc-set-server) "eudc" "\ @@ -8851,9 +8905,9 @@ ;;;*** ;;;### (autoloads (executable-make-buffer-file-executable-if-script-p -;;;;;; executable-self-display executable-set-magic executable-find -;;;;;; executable-command-find-posix-p) "executable" "progmodes/executable.el" -;;;;;; (16435 60138)) +;;;;;; executable-self-display executable-set-magic executable-interpret +;;;;;; executable-find executable-command-find-posix-p) "executable" +;;;;;; "progmodes/executable.el" (16858 50935)) ;;; Generated autoloads from progmodes/executable.el (autoload (quote executable-command-find-posix-p) "executable" "\ @@ -8868,6 +8922,14 @@ \(fn COMMAND)" nil nil) +(autoload (quote executable-interpret) "executable" "\ +Run script with user-specified args, and collect output in a buffer. +While script runs asynchronously, you can use the \\[next-error] +command to find the next error. The buffer is also in `comint-mode' and +`compilation-shell-minor-mode', so that you can answer any prompts. + +\(fn COMMAND)" t nil) + (autoload (quote executable-set-magic) "executable" "\ Set this buffer's interpreter to INTERPRETER with optional ARGUMENT. The variables `executable-magicless-file-regexp', `executable-prefix', @@ -8936,7 +8998,7 @@ ;;;*** -;;;### (autoloads (f90-mode) "f90" "progmodes/f90.el" (16805 44924)) +;;;### (autoloads (f90-mode) "f90" "progmodes/f90.el" (16858 50935)) ;;; Generated autoloads from progmodes/f90.el (autoload (quote f90-mode) "f90" "\ @@ -9005,9 +9067,9 @@ ;;;;;; facemenu-remove-all facemenu-remove-face-props facemenu-set-read-only ;;;;;; facemenu-set-intangible facemenu-set-invisible facemenu-set-face-from-menu ;;;;;; facemenu-set-background facemenu-set-foreground facemenu-set-face) -;;;;;; "facemenu" "facemenu.el" (16698 21925)) +;;;;;; "facemenu" "facemenu.el" (16942 52929)) ;;; Generated autoloads from facemenu.el - (define-key global-map "\M-g" 'facemenu-keymap) + (define-key global-map "\M-o" 'facemenu-keymap) (autoload 'facemenu-keymap "facemenu" "Keymap for face-changing commands." t 'keymap) (defvar facemenu-face-menu (let ((map (make-sparse-keymap "Face"))) (define-key map "o" (cons "Other..." (quote facemenu-set-face))) map) "\ @@ -9156,10 +9218,11 @@ (autoload (quote list-colors-display) "facemenu" "\ Display names of defined colors, and show what they look like. If the optional argument LIST is non-nil, it should be a list of -colors to display. Otherwise, this command computes a list -of colors that the current display can handle. - -\(fn &optional LIST)" t nil) +colors to display. Otherwise, this command computes a list of +colors that the current display can handle. If the optional +argument BUFFER-NAME is nil, it defaults to *Colors*. + +\(fn &optional LIST BUFFER-NAME)" t nil) ;;;*** @@ -9259,7 +9322,7 @@ ;;;*** ;;;### (autoloads (ffap-bindings dired-at-point ffap-at-mouse ffap-menu -;;;;;; find-file-at-point ffap-next) "ffap" "ffap.el" (16585 28850)) +;;;;;; find-file-at-point ffap-next) "ffap" "ffap.el" (16858 50909)) ;;; Generated autoloads from ffap.el (autoload (quote ffap-next) "ffap" "\ @@ -9318,7 +9381,7 @@ ;;;*** ;;;### (autoloads (file-cache-minibuffer-complete) "filecache" "filecache.el" -;;;;;; (16435 26305)) +;;;;;; (16830 50347)) ;;; Generated autoloads from filecache.el (autoload (quote file-cache-minibuffer-complete) "filecache" "\ @@ -9338,7 +9401,7 @@ ;;;### (autoloads (find-grep-dired find-name-dired find-dired find-grep-options ;;;;;; find-ls-subdir-switches find-ls-option) "find-dired" "find-dired.el" -;;;;;; (16580 11202)) +;;;;;; (16908 33360)) ;;; Generated autoloads from find-dired.el (defvar find-ls-option (if (eq system-type (quote berkeley-unix)) (quote ("-ls" . "-gilsb")) (quote ("-exec ls -ld {} \\;" . "-ld"))) "\ @@ -9486,11 +9549,12 @@ ;;;*** ;;;### (autoloads (find-function-setup-keys find-variable-at-point -;;;;;; find-function-at-point find-function-on-key find-variable-other-frame -;;;;;; find-variable-other-window find-variable find-variable-noselect -;;;;;; find-function-other-frame find-function-other-window find-function -;;;;;; find-function-noselect find-function-search-for-symbol find-library) -;;;;;; "find-func" "emacs-lisp/find-func.el" (16795 7139)) +;;;;;; find-function-at-point find-function-on-key find-face-definition +;;;;;; find-definition-noselect find-variable-other-frame find-variable-other-window +;;;;;; find-variable find-variable-noselect find-function-other-frame +;;;;;; find-function-other-window find-function find-function-noselect +;;;;;; find-function-search-for-symbol find-library) "find-func" +;;;;;; "emacs-lisp/find-func.el" (16953 20625)) ;;; Generated autoloads from emacs-lisp/find-func.el (autoload (quote find-library) "find-func" "\ @@ -9499,11 +9563,13 @@ \(fn LIBRARY)" t nil) (autoload (quote find-function-search-for-symbol) "find-func" "\ -Search for SYMBOL. -If VARIABLE-P is nil, `find-function-regexp' is used, otherwise -`find-variable-regexp' is used. The search is done in library LIBRARY. - -\(fn SYMBOL VARIABLE-P LIBRARY)" nil nil) +Search for SYMBOL's definition of type TYPE in LIBRARY. +If TYPE is nil, look for a function definition. +Otherwise, TYPE specifies the kind of definition, +and it is interpreted via `find-function-regexp-alist'. +The search is done in the source for library LIBRARY. + +\(fn SYMBOL TYPE LIBRARY)" nil nil) (autoload (quote find-function-noselect) "find-func" "\ Return a pair (BUFFER . POINT) pointing to the definition of FUNCTION. @@ -9522,9 +9588,9 @@ Find the definition of the FUNCTION near point. Finds the Emacs Lisp library containing the definition of the function -near point (selected by `function-at-point') in a buffer and -places point before the definition. Point is saved in the buffer if -it is one of the current buffers. +near point (selected by `function-called-at-point') in a buffer and +places point before the definition. +Set mark before moving, if the buffer already existed. The library where FUNCTION is defined is searched for in `find-function-source-path', if non nil, otherwise in `load-path'. @@ -9550,8 +9616,8 @@ Return a pair `(BUFFER . POINT)' pointing to the definition of SYMBOL. Finds the Emacs Lisp library containing the definition of SYMBOL -in a buffer and the point of the definition. The buffer is -not selected. +in a buffer, and the point of the definition. It does not switch +to the buffer or display it. The library where VARIABLE is defined is searched for in FILE or `find-function-source-path', if non nil, otherwise in `load-path'. @@ -9563,8 +9629,9 @@ Finds the Emacs Lisp library containing the definition of the variable near point (selected by `variable-at-point') in a buffer and -places point before the definition. Point is saved in the buffer if -it is one of the current buffers. +places point before the definition. + +Set mark before moving, if the buffer already existed. The library where VARIABLE is defined is searched for in `find-function-source-path', if non nil, otherwise in `load-path'. @@ -9586,9 +9653,35 @@ \(fn VARIABLE)" t nil) +(autoload (quote find-definition-noselect) "find-func" "\ +Return a pair `(BUFFER . POINT)' pointing to the definition of SYMBOL. +TYPE says what type of definition: nil for a function, +`defvar' or `defface' for a variable or face. This functoin +does not switch to the buffer or display it. + +The library where SYMBOL is defined is searched for in FILE or +`find-function-source-path', if non nil, otherwise in `load-path'. + +\(fn SYMBOL TYPE &optional FILE)" nil nil) + +(autoload (quote find-face-definition) "find-func" "\ +Find the definition of FACE. FACE defaults to the name near point. + +Finds the Emacs Lisp library containing the definition of the face +near point (selected by `variable-at-point') in a buffer and +places point before the definition. + +Set mark before moving, if the buffer already existed. + +The library where FACE is defined is searched for in +`find-function-source-path', if non nil, otherwise in `load-path'. +See also `find-function-recenter-line' and `find-function-after-hook'. + +\(fn FACE)" t nil) + (autoload (quote find-function-on-key) "find-func" "\ Find the function that KEY invokes. KEY is a string. -Point is saved if FUNCTION is in the current buffer. +Set mark before moving, if the buffer already existed. \(fn KEY)" t nil) @@ -9631,7 +9724,7 @@ ;;;*** ;;;### (autoloads (finder-by-keyword finder-commentary finder-list-keywords) -;;;;;; "finder" "finder.el" (16488 3556)) +;;;;;; "finder" "finder.el" (16958 58756)) ;;; Generated autoloads from finder.el (autoload (quote finder-list-keywords) "finder" "\ @@ -9675,7 +9768,7 @@ ;;;*** ;;;### (autoloads (fill-flowed fill-flowed-encode) "flow-fill" "gnus/flow-fill.el" -;;;;;; (16727 56924)) +;;;;;; (16908 33361)) ;;; Generated autoloads from gnus/flow-fill.el (autoload (quote fill-flowed-encode) "flow-fill" "\ @@ -9710,7 +9803,7 @@ ;;;### (autoloads (flyspell-buffer flyspell-region flyspell-mode-off ;;;;;; flyspell-version flyspell-mode flyspell-prog-mode flyspell-mode-line-string) -;;;;;; "flyspell" "textmodes/flyspell.el" (16795 7139)) +;;;;;; "flyspell" "textmodes/flyspell.el" (16939 44105)) ;;; Generated autoloads from textmodes/flyspell.el (defvar flyspell-mode-line-string " Fly" "\ @@ -9860,7 +9953,7 @@ ;;;### (autoloads (font-lock-fontify-buffer font-lock-remove-keywords ;;;;;; font-lock-add-keywords font-lock-mode-internal) "font-lock" -;;;;;; "font-lock.el" (16808 48569)) +;;;;;; "font-lock.el" (16960 18194)) ;;; Generated autoloads from font-lock.el (autoload (quote font-lock-mode-internal) "font-lock" "\ @@ -9916,8 +10009,8 @@ ;;;*** -;;;### (autoloads (footnote-mode) "footnote" "mail/footnote.el" (16635 -;;;;;; 35910)) +;;;### (autoloads (footnote-mode) "footnote" "mail/footnote.el" (16908 +;;;;;; 33362)) ;;; Generated autoloads from mail/footnote.el (autoload (quote footnote-mode) "footnote" "\ @@ -9975,7 +10068,7 @@ ;;;*** ;;;### (autoloads (fortran-mode fortran-tab-mode-default) "fortran" -;;;;;; "progmodes/fortran.el" (16534 3809)) +;;;;;; "progmodes/fortran.el" (16908 33362)) ;;; Generated autoloads from progmodes/fortran.el (defvar fortran-tab-mode-default nil "\ @@ -10111,7 +10204,7 @@ ;;;*** ;;;### (autoloads (fringe-indicators set-fringe-style fringe-mode -;;;;;; fringe-mode) "fringe" "fringe.el" (16810 63790)) +;;;;;; fringe-mode) "fringe" "fringe.el" (16908 33360)) ;;; Generated autoloads from fringe.el (defvar fringe-mode nil "\ @@ -10187,7 +10280,7 @@ ;;;*** -;;;### (autoloads (gdba) "gdb-ui" "progmodes/gdb-ui.el" (16808 48570)) +;;;### (autoloads (gdba) "gdb-ui" "progmodes/gdb-ui.el" (16960 18194)) ;;; Generated autoloads from progmodes/gdb-ui.el (autoload (quote gdba) "gdb-ui" "\ @@ -10244,50 +10337,66 @@ ;;;*** -;;;### (autoloads (generic-mode define-generic-mode) "generic" "generic.el" -;;;;;; (16810 63790)) +;;;### (autoloads (generic-mode generic-mode-internal define-generic-mode) +;;;;;; "generic" "generic.el" (16960 18194)) ;;; Generated autoloads from generic.el +(defvar generic-mode-list nil "\ +A list of mode names for `generic-mode'. +Do not add entries to this list directly; use `define-generic-mode' +instead (which see).") + (autoload (quote define-generic-mode) "generic" "\ -Create a new generic mode with NAME. - -NAME should be a symbol; its string representation is used as the function -name. If DESCRIPTION is provided, it is used as the docstring for the new -function. - -COMMENT-LIST is a list, whose entries are either a single character, -a one or two character string or a cons pair. If the entry is a character -or a one-character string, it is added to the mode's syntax table with -`comment-start' syntax. If the entry is a cons pair, the elements of the -pair are considered to be `comment-start' and `comment-end' respectively. -\(The latter should be nil if you want comments to end at end of line.) -Note that Emacs has limitations regarding comment characters. - -KEYWORD-LIST is a list of keywords to highlight with `font-lock-keyword-face'. -Each keyword should be a string. - -FONT-LOCK-LIST is a list of additional expressions to highlight. Each entry -in the list should have the same form as an entry in `font-lock-keywords'. - -AUTO-MODE-LIST is a list of regular expressions to add to `auto-mode-alist'. -These regexps are added to `auto-mode-alist' as soon as `define-generic-mode' -is called; any old regexps with the same name are removed. - -FUNCTION-LIST is a list of functions to call to do some additional setup. +Create a new generic mode MODE. + +MODE is the name of the command for the generic mode; it need not +be quoted. The optional DOCSTRING is the documentation for the +mode command. If you do not supply it, a default documentation +string will be used instead. + +COMMENT-LIST is a list, whose entries are either a single +character, a one or two character string or a cons pair. If the +entry is a character or a string, it is added to the mode's +syntax table with `comment-start' syntax. If the entry is a cons +pair, the elements of the pair are considered to be +`comment-start' and `comment-end' respectively. (The latter +should be nil if you want comments to end at end of line.) Note +that Emacs has limitations regarding comment characters. + +KEYWORD-LIST is a list of keywords to highlight with +`font-lock-keyword-face'. Each keyword should be a string. + +FONT-LOCK-LIST is a list of additional expressions to highlight. +Each entry in the list should have the same form as an entry in +`font-lock-keywords'. + +AUTO-MODE-LIST is a list of regular expressions to add to +`auto-mode-alist'. These regexps are added to `auto-mode-alist' +as soon as `define-generic-mode' is called. + +FUNCTION-LIST is a list of functions to call to do some +additional setup. See the file generic-x.el for some examples of `define-generic-mode'. -\(fn NAME COMMENT-LIST KEYWORD-LIST FONT-LOCK-LIST AUTO-MODE-LIST FUNCTION-LIST &optional DESCRIPTION)" nil nil) +\(fn MODE COMMENT-LIST KEYWORD-LIST FONT-LOCK-LIST AUTO-MODE-LIST FUNCTION-LIST &optional DOCSTRING)" nil (quote macro)) + +(autoload (quote generic-mode-internal) "generic" "\ +Go into the generic mode MODE. + +\(fn MODE COMMENTS KEYWORDS FONT-LOCK-LIST FUNS)" nil nil) (autoload (quote generic-mode) "generic" "\ -Basic comment and font-lock functionality for `generic' files. -\(Files which are too small to warrant their own mode, but have -comment characters, keywords, and the like.) +Enter generic mode MODE. + +Generic modes provide basic comment and font-lock functionality +for \"generic\" files. (Files which are too small to warrant their +own mode, but have comment characters, keywords, and the like.) To define a generic-mode, use the function `define-generic-mode'. Some generic modes are defined in `generic-x.el'. -\(fn TYPE)" t nil) +\(fn MODE)" t nil) ;;;*** @@ -10305,7 +10414,7 @@ ;;;*** ;;;### (autoloads (gnus gnus-other-frame gnus-slave gnus-no-server -;;;;;; gnus-slave-no-server) "gnus" "gnus/gnus.el" (16775 26712)) +;;;;;; gnus-slave-no-server) "gnus" "gnus/gnus.el" (16954 46150)) ;;; Generated autoloads from gnus/gnus.el (autoload (quote gnus-slave-no-server) "gnus" "\ @@ -10356,7 +10465,7 @@ ;;;;;; gnus-agent-get-undownloaded-list gnus-agent-delete-group ;;;;;; gnus-agent-rename-group gnus-agent-possibly-save-gcc gnus-agentize ;;;;;; gnus-slave-unplugged gnus-plugged gnus-unplugged) "gnus-agent" -;;;;;; "gnus/gnus-agent.el" (16775 26712)) +;;;;;; "gnus/gnus-agent.el" (16908 33361)) ;;; Generated autoloads from gnus/gnus-agent.el (autoload (quote gnus-unplugged) "gnus-agent" "\ @@ -10443,7 +10552,7 @@ ;;;*** ;;;### (autoloads (gnus-article-prepare-display) "gnus-art" "gnus/gnus-art.el" -;;;;;; (16788 34909)) +;;;;;; (16954 46150)) ;;; Generated autoloads from gnus/gnus-art.el (autoload (quote gnus-article-prepare-display) "gnus-art" "\ @@ -10466,8 +10575,8 @@ ;;;### (autoloads (gnus-cache-delete-group gnus-cache-rename-group ;;;;;; gnus-cache-generate-nov-databases gnus-cache-generate-active -;;;;;; gnus-jog-cache) "gnus-cache" "gnus/gnus-cache.el" (16764 -;;;;;; 51520)) +;;;;;; gnus-jog-cache) "gnus-cache" "gnus/gnus-cache.el" (16858 +;;;;;; 50925)) ;;; Generated autoloads from gnus/gnus-cache.el (autoload (quote gnus-jog-cache) "gnus-cache" "\ @@ -10505,7 +10614,7 @@ ;;;*** ;;;### (autoloads (gnus-delay-initialize gnus-delay-send-queue gnus-delay-article) -;;;;;; "gnus-delay" "gnus/gnus-delay.el" (16775 26712)) +;;;;;; "gnus-delay" "gnus/gnus-delay.el" (16908 33361)) ;;; Generated autoloads from gnus/gnus-delay.el (defgroup gnus-delay nil "Arrange for sending postings later." :version "22.1" :group (quote gnus)) @@ -10566,8 +10675,8 @@ ;;;### (autoloads (gnus-convert-png-to-face gnus-convert-face-to-png ;;;;;; gnus-face-from-file gnus-x-face-from-file gnus-insert-random-x-face-header -;;;;;; gnus-random-x-face) "gnus-fun" "gnus/gnus-fun.el" (16730 -;;;;;; 31107)) +;;;;;; gnus-random-x-face) "gnus-fun" "gnus/gnus-fun.el" (16908 +;;;;;; 33361)) ;;; Generated autoloads from gnus/gnus-fun.el (autoload (quote gnus-random-x-face) "gnus-fun" "\ @@ -10606,7 +10715,7 @@ ;;;*** ;;;### (autoloads (gnus-fetch-group-other-frame gnus-fetch-group) -;;;;;; "gnus-group" "gnus/gnus-group.el" (16770 10720)) +;;;;;; "gnus-group" "gnus/gnus-group.el" (16927 493)) ;;; Generated autoloads from gnus/gnus-group.el (autoload (quote gnus-fetch-group) "gnus-group" "\ @@ -10776,7 +10885,7 @@ ;;;*** ;;;### (autoloads (gnus-button-reply gnus-button-mailto gnus-msg-mail) -;;;;;; "gnus-msg" "gnus/gnus-msg.el" (16784 39521)) +;;;;;; "gnus-msg" "gnus/gnus-msg.el" (16923 3623)) ;;; Generated autoloads from gnus/gnus-msg.el (autoload (quote gnus-msg-mail) "gnus-msg" "\ @@ -10897,7 +11006,7 @@ ;;;*** ;;;### (autoloads (gnus-registry-install-hooks gnus-registry-initialize) -;;;;;; "gnus-registry" "gnus/gnus-registry.el" (16775 26712)) +;;;;;; "gnus-registry" "gnus/gnus-registry.el" (16923 3623)) ;;; Generated autoloads from gnus/gnus-registry.el (autoload (quote gnus-registry-initialize) "gnus-registry" "\ @@ -10962,7 +11071,7 @@ ;;;*** ;;;### (autoloads (gnus-update-format) "gnus-spec" "gnus/gnus-spec.el" -;;;;;; (16775 26712)) +;;;;;; (16908 33361)) ;;; Generated autoloads from gnus/gnus-spec.el (autoload (quote gnus-update-format) "gnus-spec" "\ @@ -10973,8 +11082,8 @@ ;;;*** ;;;### (autoloads (gnus-fixup-nnimap-unread-after-getting-new-news -;;;;;; gnus-declare-backend) "gnus-start" "gnus/gnus-start.el" (16792 -;;;;;; 36614)) +;;;;;; gnus-declare-backend) "gnus-start" "gnus/gnus-start.el" (16908 +;;;;;; 33361)) ;;; Generated autoloads from gnus/gnus-start.el (autoload (quote gnus-declare-backend) "gnus-start" "\ @@ -10990,7 +11099,7 @@ ;;;*** ;;;### (autoloads (gnus-add-configuration) "gnus-win" "gnus/gnus-win.el" -;;;;;; (16775 26712)) +;;;;;; (16908 33361)) ;;; Generated autoloads from gnus/gnus-win.el (autoload (quote gnus-add-configuration) "gnus-win" "\ @@ -11027,7 +11136,7 @@ ;;;*** ;;;### (autoloads (goto-address goto-address-at-point goto-address-at-mouse) -;;;;;; "goto-addr" "net/goto-addr.el" (16602 38814)) +;;;;;; "goto-addr" "net/goto-addr.el" (16858 50931)) ;;; Generated autoloads from net/goto-addr.el (autoload (quote goto-address-at-mouse) "goto-addr" "\ @@ -11061,7 +11170,7 @@ ;;;### (autoloads (grep-tree grep-find grep grep-compute-defaults ;;;;;; grep-process-setup grep-setup-hook grep-find-command grep-command -;;;;;; grep-window-height) "grep" "progmodes/grep.el" (16805 44924)) +;;;;;; grep-window-height) "grep" "progmodes/grep.el" (16908 33362)) ;;; Generated autoloads from progmodes/grep.el (defvar grep-window-height nil "\ @@ -11092,7 +11201,7 @@ (custom-autoload (quote grep-setup-hook) "grep") -(defvar grep-regexp-alist (quote (("^\\(.+?\\)[: ]+\\([0-9]+\\)\\([.:]?\\)\\([0-9]+\\)?\\(?:-\\(?:\\([0-9]+\\)\\3\\)?\\.?\\([0-9]+\\)?\\)?[: ]" 1 (2 . 5) (4 . 6)) ("^\\(.+?\\)[:(]+\\([0-9]+\\)\\([:)]\\).*?\\(\\[01;41m\\)\\(.*?\\)\\(\\[00m\\)" 1 2 ((lambda nil (setq compilation-error-screen-columns nil) (- (match-beginning 5) (match-end 3) 8)) lambda nil (- (match-end 5) (match-end 3) 8))) ("^Binary file \\(.+\\) matches$" 1 nil nil 1))) "\ +(defvar grep-regexp-alist (quote (("^\\(.+?\\)[: ]+\\([0-9]+\\)\\([.:]?\\)\\([0-9]+\\)?\\(?:-\\(?:\\([0-9]+\\)\\3\\)?\\.?\\([0-9]+\\)?\\)?[: ]" 1 (2 . 5) (4 . 6)) ("^\\(.+?\\)[:(]+\\([0-9]+\\)\\([:)]\\).*?\\(\\[01;41m\\)\\(.*?\\)\\(\\[00m\\(\\[K\\)?\\)" 1 2 ((lambda nil (setq compilation-error-screen-columns nil) (- (match-beginning 5) (match-end 3) 8)) lambda nil (- (match-end 5) (match-end 3) 8))) ("^Binary file \\(.+\\) matches$" 1 nil nil 1))) "\ Regexp used to match grep hits. See `compilation-error-regexp-alist'.") (defvar grep-program "grep" "\ @@ -11156,6 +11265,8 @@ \(fn COMMAND-ARGS)" t nil) +(defalias (quote find-grep) (quote grep-find)) + (autoload (quote grep-tree) "grep" "\ Grep for REGEXP in FILES in directory tree rooted at DIR. Collect output in a buffer. @@ -11192,7 +11303,7 @@ ;;;*** ;;;### (autoloads (gdb-script-mode bashdb jdb pdb perldb xdb dbx -;;;;;; sdb gdb) "gud" "progmodes/gud.el" (16808 48570)) +;;;;;; sdb gdb) "gud" "progmodes/gud.el" (16896 54110)) ;;; Generated autoloads from progmodes/gud.el (autoload (quote gdb) "gud" "\ @@ -11320,9 +11431,9 @@ ;;;*** ;;;### (autoloads (scan-buf-previous-region scan-buf-next-region -;;;;;; scan-buf-move-to-region help-at-pt-set-timer help-at-pt-cancel-timer -;;;;;; display-local-help help-at-pt-kbd-string help-at-pt-string) -;;;;;; "help-at-pt" "help-at-pt.el" (16775 26706)) +;;;;;; scan-buf-move-to-region help-at-pt-display-when-idle help-at-pt-set-timer +;;;;;; help-at-pt-cancel-timer display-local-help help-at-pt-kbd-string +;;;;;; help-at-pt-string) "help-at-pt" "help-at-pt.el" (16908 33360)) ;;; Generated autoloads from help-at-pt.el (autoload (quote help-at-pt-string) "help-at-pt" "\ @@ -11368,6 +11479,35 @@ \(fn)" t nil) +(defvar help-at-pt-display-when-idle (quote never) "\ +*Automatically show local help on point-over. +If the value is t, the string obtained from any `kbd-help' or +`help-echo' property at point is automatically printed in the +echo area, if nothing else is already displayed there, or after a +quit. If both `kbd-help' and `help-echo' produce help strings, +`kbd-help' is used. If the value is a list, the help only gets +printed if there is a text or overlay property at point that is +included in this list. Suggested properties are `keymap', +`local-map', `button' and `kbd-help'. Any value other than t or +a non-empty list disables the feature. + +This variable only takes effect after a call to +`help-at-pt-set-timer'. The help gets printed after Emacs has +been idle for `help-at-pt-timer-delay' seconds. You can call +`help-at-pt-cancel-timer' to cancel the timer set by, and the +effect of, `help-at-pt-set-timer'. + +When this variable is set through Custom, `help-at-pt-set-timer' +is called automatically, unless the value is `never', in which +case `help-at-pt-cancel-timer' is called. Specifying an empty +list of properties through Custom will set the timer, thus +enabling buffer local values. It sets the actual value to nil. +Thus, Custom distinguishes between a nil value and other values +that disable the feature, which Custom identifies with `never'. +The default is `never'.") + +(custom-autoload (quote help-at-pt-display-when-idle) "help-at-pt") + (autoload (quote scan-buf-move-to-region) "help-at-pt" "\ Go to the start of the next region with non-nil PROP property. Then run HOOK, which should be a quoted symbol that is a normal @@ -11422,7 +11562,7 @@ ;;;### (autoloads (describe-categories describe-syntax describe-variable ;;;;;; variable-at-point describe-function-1 describe-function locate-library -;;;;;; help-with-tutorial) "help-fns" "help-fns.el" (16784 39521)) +;;;;;; help-with-tutorial) "help-fns" "help-fns.el" (16899 17454)) ;;; Generated autoloads from help-fns.el (autoload (quote help-with-tutorial) "help-fns" "\ @@ -11465,8 +11605,9 @@ (autoload (quote variable-at-point) "help-fns" "\ Return the bound variable symbol found around point. Return 0 if there is no such symbol. - -\(fn)" nil nil) +If ANY-SYMBOL is non-nil, don't insist the symbol be bound. + +\(fn &optional ANY-SYMBOL)" nil nil) (autoload (quote describe-variable) "help-fns" "\ Display the full documentation of VARIABLE (a symbol). @@ -11494,7 +11635,7 @@ ;;;*** ;;;### (autoloads (three-step-help) "help-macro" "help-macro.el" -;;;;;; (16213 43268)) +;;;;;; (16875 35928)) ;;; Generated autoloads from help-macro.el (defvar three-step-help nil "\ @@ -11510,7 +11651,7 @@ ;;;### (autoloads (help-xref-on-pp help-insert-xref-button help-xref-button ;;;;;; help-make-xrefs help-setup-xref help-mode-finish help-mode-setup -;;;;;; help-mode) "help-mode" "help-mode.el" (16654 2763)) +;;;;;; help-mode) "help-mode" "help-mode.el" (16939 44104)) ;;; Generated autoloads from help-mode.el (autoload (quote help-mode) "help-mode" "\ @@ -11609,7 +11750,7 @@ ;;;*** ;;;### (autoloads (hexlify-buffer hexl-find-file hexl-mode) "hexl" -;;;;;; "hexl.el" (16801 58021)) +;;;;;; "hexl.el" (16858 50912)) ;;; Generated autoloads from hexl.el (autoload (quote hexl-mode) "hexl" "\ @@ -11704,8 +11845,8 @@ ;;;### (autoloads (hi-lock-write-interactive-patterns hi-lock-unface-buffer ;;;;;; hi-lock-face-phrase-buffer hi-lock-face-buffer hi-lock-line-face-buffer -;;;;;; hi-lock-mode hi-lock-mode) "hi-lock" "hi-lock.el" (16219 -;;;;;; 35448)) +;;;;;; hi-lock-mode hi-lock-mode) "hi-lock" "hi-lock.el" (16898 +;;;;;; 6195)) ;;; Generated autoloads from hi-lock.el (defvar hi-lock-mode nil "\ @@ -11816,7 +11957,7 @@ ;;;*** ;;;### (autoloads (hide-ifdef-lines hide-ifdef-read-only hide-ifdef-initially -;;;;;; hide-ifdef-mode) "hideif" "progmodes/hideif.el" (16213 43281)) +;;;;;; hide-ifdef-mode) "hideif" "progmodes/hideif.el" (16924 23221)) ;;; Generated autoloads from progmodes/hideif.el (autoload (quote hide-ifdef-mode) "hideif" "\ @@ -11871,7 +12012,7 @@ ;;;*** ;;;### (autoloads (hs-minor-mode hs-hide-comments-when-hiding-all) -;;;;;; "hideshow" "progmodes/hideshow.el" (16275 41871)) +;;;;;; "hideshow" "progmodes/hideshow.el" (16858 50936)) ;;; Generated autoloads from progmodes/hideshow.el (defvar hs-hide-comments-when-hiding-all t "\ @@ -11934,11 +12075,9 @@ ;;;;;; highlight-compare-buffers highlight-changes-rotate-faces ;;;;;; highlight-changes-previous-change highlight-changes-next-change ;;;;;; highlight-changes-mode highlight-changes-remove-highlight) -;;;;;; "hilit-chg" "hilit-chg.el" (16435 26305)) +;;;;;; "hilit-chg" "hilit-chg.el" (16876 58220)) ;;; Generated autoloads from hilit-chg.el -(defvar highlight-changes-mode nil) - (autoload (quote highlight-changes-remove-highlight) "hilit-chg" "\ Remove the change face from the region between BEG and END. This allows you to manually remove highlighting from uninteresting changes. @@ -12139,7 +12278,7 @@ ;;;*** ;;;### (autoloads (global-hl-line-mode hl-line-mode) "hl-line" "hl-line.el" -;;;;;; (16469 33009)) +;;;;;; (16908 33360)) ;;; Generated autoloads from hl-line.el (autoload (quote hl-line-mode) "hl-line" "\ @@ -12179,7 +12318,7 @@ ;;;*** ;;;### (autoloads (list-holidays holidays) "holidays" "calendar/holidays.el" -;;;;;; (16722 36135)) +;;;;;; (16822 52985)) ;;; Generated autoloads from calendar/holidays.el (autoload (quote holidays) "holidays" "\ @@ -12261,7 +12400,7 @@ ;;;;;; ibuffer-backward-filter-group ibuffer-forward-filter-group ;;;;;; ibuffer-toggle-filter-group ibuffer-mouse-toggle-filter-group ;;;;;; ibuffer-interactive-filter-by-mode ibuffer-mouse-filter-by-mode -;;;;;; ibuffer-auto-mode) "ibuf-ext" "ibuf-ext.el" (16764 51518)) +;;;;;; ibuffer-auto-mode) "ibuf-ext" "ibuf-ext.el" (16934 57456)) ;;; Generated autoloads from ibuf-ext.el (autoload (quote ibuffer-auto-mode) "ibuf-ext" "\ @@ -12709,7 +12848,7 @@ ;;;*** ;;;### (autoloads (ibuffer ibuffer-other-window ibuffer-list-buffers) -;;;;;; "ibuffer" "ibuffer.el" (16775 26706)) +;;;;;; "ibuffer" "ibuffer.el" (16908 33360)) ;;; Generated autoloads from ibuffer.el (autoload (quote ibuffer-list-buffers) "ibuffer" "\ @@ -12748,25 +12887,81 @@ ;;;*** -;;;### (autoloads (icomplete-minibuffer-setup icomplete-mode) "icomplete" -;;;;;; "icomplete.el" (16213 43269)) +;;;### (autoloads (icalendar-import-buffer icalendar-import-file +;;;;;; icalendar-export-region icalendar-export-file) "icalendar" +;;;;;; "calendar/icalendar.el" (16939 44105)) +;;; Generated autoloads from calendar/icalendar.el + +(autoload (quote icalendar-export-file) "icalendar" "\ +Export diary file to iCalendar format. +All diary entries in the file DIARY-FILENAME are converted to iCalendar +format. The result is appended to the file ICAL-FILENAME. + +\(fn DIARY-FILENAME ICAL-FILENAME)" t nil) + +(autoload (quote icalendar-export-region) "icalendar" "\ +Export region in diary file to iCalendar format. +All diary entries in the region from MIN to MAX in the current buffer are +converted to iCalendar format. The result is appended to the file +ICAL-FILENAME. +This function attempts to return t if something goes wrong. In this +case an error string which describes all the errors and problems is +written into the buffer `*icalendar-errors*'. + +\(fn MIN MAX ICAL-FILENAME)" t nil) + +(autoload (quote icalendar-import-file) "icalendar" "\ +Import a iCalendar file and append to a diary file. +Argument ICAL-FILENAME output iCalendar file. +Argument DIARY-FILENAME input `diary-file'. +Optional argument NON-MARKING determines whether events are created as +non-marking or not. + +\(fn ICAL-FILENAME DIARY-FILENAME &optional NON-MARKING)" t nil) + +(autoload (quote icalendar-import-buffer) "icalendar" "\ +Extract iCalendar events from current buffer. + +This function searches the current buffer for the first iCalendar +object, reads it and adds all VEVENT elements to the diary +DIARY-FILE. + +It will ask for each appointment whether to add it to the diary +when DO-NOT-ASK is non-nil. When called interactively, +DO-NOT-ASK is set to t, so that you are asked fore each event. + +NON-MARKING determines whether diary events are created as +non-marking. + +Return code t means that importing worked well, return code nil +means that an error has occured. Error messages will be in the +buffer `*icalendar-errors*'. + +\(fn &optional DIARY-FILE DO-NOT-ASK NON-MARKING)" t nil) + +;;;*** + +;;;### (autoloads (icomplete-mode) "icomplete" "icomplete.el" (16960 +;;;;;; 18194)) ;;; Generated autoloads from icomplete.el +(defvar icomplete-mode nil "\ +Non-nil if Icomplete mode is enabled. +See the command `icomplete-mode' for a description of this minor-mode. +Setting this variable directly does not take effect; +use either \\[customize] or the function `icomplete-mode'.") + +(custom-autoload (quote icomplete-mode) "icomplete") + (autoload (quote icomplete-mode) "icomplete" "\ Toggle incremental minibuffer completion for this Emacs session. With a numeric argument, turn Icomplete mode on iff ARG is positive. \(fn &optional ARG)" t nil) -(autoload (quote icomplete-minibuffer-setup) "icomplete" "\ -Run in minibuffer on activation to establish incremental completion. -Usually run by inclusion in `minibuffer-setup-hook'. - -\(fn)" nil nil) - -;;;*** - -;;;### (autoloads (icon-mode) "icon" "progmodes/icon.el" (16435 26306)) +;;;*** + +;;;### (autoloads (icon-mode) "icon" "progmodes/icon.el" (16858 50936)) ;;; Generated autoloads from progmodes/icon.el (autoload (quote icon-mode) "icon" "\ @@ -12807,7 +13002,7 @@ ;;;*** ;;;### (autoloads (idlwave-shell) "idlw-shell" "progmodes/idlw-shell.el" -;;;;;; (16796 28018)) +;;;;;; (16830 50350)) ;;; Generated autoloads from progmodes/idlw-shell.el (autoload (quote idlwave-shell) "idlw-shell" "\ @@ -12833,7 +13028,7 @@ ;;;*** ;;;### (autoloads (idlwave-mode) "idlwave" "progmodes/idlwave.el" -;;;;;; (16796 28018)) +;;;;;; (16958 58759)) ;;; Generated autoloads from progmodes/idlwave.el (autoload (quote idlwave-mode) "idlwave" "\ @@ -12917,7 +13112,7 @@ \\i IF statement template \\elif IF-ELSE statement template \\b BEGIN - + For a full list, use \\[idlwave-list-abbrevs]. Some templates also have direct keybindings - see the list of keybindings below. @@ -12969,8 +13164,8 @@ ;;;;;; ido-find-alternate-file ido-find-file-other-window ido-find-file ;;;;;; ido-find-file-in-dir ido-switch-buffer-other-frame ido-insert-buffer ;;;;;; ido-kill-buffer ido-display-buffer ido-switch-buffer-other-window -;;;;;; ido-switch-buffer ido-mode ido-mode) "ido" "ido.el" (16804 -;;;;;; 23129)) +;;;;;; ido-switch-buffer ido-mode ido-mode) "ido" "ido.el" (16916 +;;;;;; 30957)) ;;; Generated autoloads from ido.el (defvar ido-mode nil "\ @@ -13231,7 +13426,7 @@ ;;;*** -;;;### (autoloads (ielm) "ielm" "ielm.el" (16686 1588)) +;;;### (autoloads (ielm) "ielm" "ielm.el" (16908 33360)) ;;; Generated autoloads from ielm.el (add-hook 'same-window-buffer-names "*ielm*") @@ -13259,9 +13454,10 @@ ;;;*** -;;;### (autoloads (defimage find-image remove-images insert-image -;;;;;; put-image create-image image-type-available-p image-type-from-file-header -;;;;;; image-type-from-data) "image" "image.el" (16722 36133)) +;;;### (autoloads (defimage find-image remove-images insert-sliced-image +;;;;;; insert-image put-image create-image image-type-available-p +;;;;;; image-type-from-file-header image-type-from-data) "image" +;;;;;; "image.el" (16954 46150)) ;;; Generated autoloads from image.el (defvar image-library-alist nil "\ @@ -13342,6 +13538,19 @@ \(fn IMAGE &optional STRING AREA SLICE)" nil nil) +(autoload (quote insert-sliced-image) "image" "\ +Insert IMAGE into current buffer at point. +IMAGE is displayed by inserting STRING into the current buffer +with a `display' property whose value is the image. STRING is +defaulted if you omit it. +AREA is where to display the image. AREA nil or omitted means +display it in the text area, a value of `left-margin' means +display it in the left marginal area, a value of `right-margin' +means display it in the right marginal area. +The image is automatically split into ROW x COLS slices. + +\(fn IMAGE &optional STRING AREA ROWS COLS)" nil nil) + (autoload (quote remove-images) "image" "\ Remove images between START and END in BUFFER. Remove only images that were put in BUFFER with calls to `put-image'. @@ -13394,7 +13603,7 @@ ;;;### (autoloads (auto-image-file-mode insert-image-file image-file-name-regexp ;;;;;; image-file-name-regexps image-file-name-extensions) "image-file" -;;;;;; "image-file.el" (16213 43269)) +;;;;;; "image-file.el" (16942 52930)) ;;; Generated autoloads from image-file.el (defvar image-file-name-extensions (quote ("png" "jpeg" "jpg" "gif" "tiff" "tif" "xbm" "xpm" "pbm" "pgm" "ppm" "pnm")) "\ @@ -13454,8 +13663,33 @@ ;;;*** +;;;### (autoloads (image-mode) "image-mode" "image-mode.el" (16960 +;;;;;; 18194)) +;;; Generated autoloads from image-mode.el + (push '("\\.jpg\\'" . image-mode) auto-mode-alist) + (push '("\\.jpeg\\'" . image-mode) auto-mode-alist) + (push '("\\.gif\\'" . image-mode) auto-mode-alist) + (push '("\\.png\\'" . image-mode) auto-mode-alist) + (push '("\\.tiff\\'" . image-mode) auto-mode-alist) + (push '("\\.tif\\'" . image-mode) auto-mode-alist) + (push '("\\.xbm\\'" . image-mode) auto-mode-alist) + (push '("\\.xpm\\'" . image-mode) auto-mode-alist) + (push '("\\.pbm\\'" . image-mode) auto-mode-alist) + (push '("\\.pgm\\'" . image-mode) auto-mode-alist) + (push '("\\.ppm\\'" . image-mode) auto-mode-alist) + (push '("\\.pnm\\'" . image-mode) auto-mode-alist) + +(autoload (quote image-mode) "image-mode" "\ +Major mode for image files. +You can use \\<image-mode-map>\\[image-toggle-display] +to toggle between display as an image and display as text. + +\(fn)" t nil) + +;;;*** + ;;;### (autoloads (imenu imenu-add-menubar-index imenu-add-to-menubar -;;;;;; imenu-sort-function) "imenu" "imenu.el" (16816 23724)) +;;;;;; imenu-sort-function) "imenu" "imenu.el" (16908 33360)) ;;; Generated autoloads from imenu.el (defvar imenu-sort-function nil "\ @@ -13700,7 +13934,7 @@ ;;;;;; Info-goto-emacs-key-command-node Info-goto-emacs-command-node ;;;;;; info-apropos Info-index Info-directory Info-goto-node info-standalone ;;;;;; info-emacs-manual info info-other-window) "info" "info.el" -;;;;;; (16810 63790)) +;;;;;; (16953 20624)) ;;; Generated autoloads from info.el (autoload (quote info-other-window) "info" "\ @@ -13812,7 +14046,7 @@ ;;;### (autoloads (info-complete-file info-complete-symbol info-lookup-file ;;;;;; info-lookup-symbol info-lookup-reset) "info-look" "info-look.el" -;;;;;; (16783 21520)) +;;;;;; (16875 35928)) ;;; Generated autoloads from info-look.el (autoload (quote info-lookup-reset) "info-look" "\ @@ -13928,7 +14162,7 @@ ;;;### (autoloads (isearch-process-search-multibyte-characters isearch-toggle-input-method ;;;;;; isearch-toggle-specified-input-method) "isearch-x" "international/isearch-x.el" -;;;;;; (16213 43274)) +;;;;;; (16829 43426)) ;;; Generated autoloads from international/isearch-x.el (autoload (quote isearch-toggle-specified-input-method) "isearch-x" "\ @@ -13963,7 +14197,7 @@ ;;;*** ;;;### (autoloads (iso-accents-mode) "iso-acc" "international/iso-acc.el" -;;;;;; (16213 43274)) +;;;;;; (16927 496)) ;;; Generated autoloads from international/iso-acc.el (autoload (quote iso-accents-mode) "iso-acc" "\ @@ -14091,9 +14325,9 @@ ;;;### (autoloads (ispell-message ispell-minor-mode ispell ispell-complete-word-interior-frag ;;;;;; ispell-complete-word ispell-continue ispell-buffer ispell-comments-and-strings ;;;;;; ispell-region ispell-change-dictionary ispell-kill-ispell -;;;;;; ispell-help ispell-pdict-save ispell-word ispell-dictionary-alist -;;;;;; ispell-local-dictionary-alist ispell-personal-dictionary) -;;;;;; "ispell" "textmodes/ispell.el" (16805 44925)) +;;;;;; ispell-help ispell-pdict-save ispell-word ispell-local-dictionary-alist +;;;;;; ispell-personal-dictionary) "ispell" "textmodes/ispell.el" +;;;;;; (16954 46151)) ;;; Generated autoloads from textmodes/ispell.el (defvar ispell-personal-dictionary nil "\ @@ -14104,14 +14338,12 @@ (custom-autoload (quote ispell-personal-dictionary) "ispell") (defvar ispell-local-dictionary-alist nil "\ -*Contains local or customized dictionary definitions. - -These will override the values in `ispell-dictionary-alist'. - -Customization changes made to `ispell-dictionary-alist' will not operate -over emacs sessions. To make permanent changes to your dictionary -definitions, you will need to make your changes in this variable, save, -and then re-start emacs.") +*List of local or customized dictionary definitions. +These can override the values in `ispell-dictionary-alist'. + +To make permanent changes to your dictionary definitions, you +will need to make your changes in this variable, save, and then +re-start emacs.") (custom-autoload (quote ispell-local-dictionary-alist) "ispell") @@ -14121,13 +14353,13 @@ (setq ispell-dictionary-alist-3 (quote (("esperanto" "[A-Za-z\246\254\266\274\306\330\335\336\346\370\375\376]" "[^A-Za-z\246\254\266\274\306\330\335\336\346\370\375\376]" "[-']" t ("-C") "~latin3" iso-8859-1) ("esperanto-tex" "[A-Za-z^\\]" "[^A-Za-z^\\]" "[-'`\"]" t ("-C" "-d" "esperanto") "~tex" iso-8859-1) ("francais7" "[A-Za-z]" "[^A-Za-z]" "[`'^---]" t nil nil iso-8859-1) ("francais" "[A-Za-z\300\302\306\307\310\311\312\313\316\317\324\331\333\334\340\342\347\350\351\352\353\356\357\364\371\373\374]" "[^A-Za-z\300\302\306\307\310\311\312\313\316\317\324\331\333\334\340\342\347\350\351\352\353\356\357\364\371\373\374]" "[-']" t nil "~list" iso-8859-1) ("francais-tex" "[A-Za-z\300\302\306\307\310\311\312\313\316\317\324\331\333\334\340\342\347\350\351\352\353\356\357\364\371\373\374\\]" "[^A-Za-z\300\302\306\307\310\311\312\313\316\317\324\331\333\334\340\342\347\350\351\352\353\356\357\364\371\373\374\\]" "[-'^`\"]" t nil "~tex" iso-8859-1)))) -(setq ispell-dictionary-alist-4 (quote (("german" "[a-zA-Z\"]" "[^a-zA-Z\"]" "[']" t ("-C") "~tex" iso-8859-1) ("german8" "[a-zA-Z\304\326\334\344\366\337\374]" "[^a-zA-Z\304\326\334\344\366\337\374]" "[']" t ("-C" "-d" "german") "~latin1" iso-8859-1) ("italiano" "[A-Z\300\301\310\311\314\315\322\323\331\332a-z\340\341\350\351\354\355\363\371\372]" "[^A-Z\300\301\310\311\314\315\322\323\331\332a-z\340\341\350\351\354\355\363\371\372]" "[-]" nil ("-B" "-d" "italian") "~tex" iso-8859-1) ("nederlands" "[A-Za-z\300-\305\307\310-\317\322-\326\331-\334\340-\345\347\350-\357\361\362-\366\371-\374]" "[^A-Za-z\300-\305\307\310-\317\322-\326\331-\334\340-\345\347\350-\357\361\362-\366\371-\374]" "[']" t ("-C") nil iso-8859-1) ("nederlands8" "[A-Za-z\300-\305\307\310-\317\322-\326\331-\334\340-\345\347\350-\357\361\362-\366\371-\374]" "[^A-Za-z\300-\305\307\310-\317\322-\326\331-\334\340-\345\347\350-\357\361\362-\366\371-\374]" "[']" t ("-C") nil iso-8859-1)))) +(setq ispell-dictionary-alist-4 (quote (("german" "[a-zA-Z\"]" "[^a-zA-Z\"]" "[']" t ("-C") "~tex" iso-8859-1) ("german8" "[a-zA-Z\304\326\334\344\366\337\374]" "[^a-zA-Z\304\326\334\344\366\337\374]" "[']" t ("-C" "-d" "german") "~latin1" iso-8859-1) ("italiano" "[A-Z\300\301\310\311\314\315\322\323\331\332a-z\340\341\350\351\354\355\363\371\372]" "[^A-Z\300\301\310\311\314\315\322\323\331\332a-z\340\341\350\351\354\355\363\371\372]" "[-]" nil ("-B" "-d" "italian") "~tex" iso-8859-1) ("nederlands" "[A-Za-z\300\301\302\303\304\305\307\310\311\312\313\314\315\316\317\322\323\324\325\326\331\332\333\334\340\341\342\343\344\345\347\350\351\352\353\354\355\356\357\361\362\363\364\365\366\371\372\373\374]" "[^A-Za-z\300\301\302\303\304\305\307\310\311\312\313\314\315\316\317\322\323\324\325\326\331\332\333\334\340\341\342\343\344\345\347\350\351\352\353\354\355\356\357\361\362\363\364\365\366\371\372\373\374]" "[']" t ("-C") nil iso-8859-1) ("nederlands8" "[A-Za-z\300\301\302\303\304\305\307\310\311\312\313\314\315\316\317\322\323\324\325\326\331\332\333\334\340\341\342\343\344\345\347\350\351\352\353\354\355\356\357\361\362\363\364\365\366\371\372\373\374]" "[^A-Za-z\300\301\302\303\304\305\307\310\311\312\313\314\315\316\317\322\323\324\325\326\331\332\333\334\340\341\342\343\344\345\347\350\351\352\353\354\355\356\357\361\362\363\364\365\366\371\372\373\374]" "[']" t ("-C") nil iso-8859-1)))) (setq ispell-dictionary-alist-5 (quote (("norsk" "[A-Za-z\305\306\307\310\311\322\324\330\345\346\347\350\351\362\364\370]" "[^A-Za-z\305\306\307\310\311\322\324\330\345\346\347\350\351\362\364\370]" "[\"]" nil nil "~list" iso-8859-1) ("norsk7-tex" "[A-Za-z{}\\'^`]" "[^A-Za-z{}\\'^`]" "[\"]" nil ("-d" "norsk") "~plaintex" iso-8859-1) ("polish" "[A-Za-z\241\243\246\254\257\261\263\266\274\277\306\312\321\323\346\352\361\363]" "[^A-Za-z\241\243\246\254\257\261\263\266\274\277\306\312\321\323\346\352\361\363]" "" nil nil nil iso-8859-2) ("portugues" "[a-zA-Z\301\302\311\323\340\341\342\351\352\355\363\343\372]" "[^a-zA-Z\301\302\311\323\340\341\342\351\352\355\363\343\372]" "[']" t ("-C") "~latin1" iso-8859-1)))) (setq ispell-dictionary-alist-6 (quote (("russian" "[\341\342\367\347\344\345\263\366\372\351\352\353\354\355\356\357\360\362\363\364\365\346\350\343\376\373\375\370\371\377\374\340\361\301\302\327\307\304\305\243\326\332\311\312\313\314\315\316\317\320\322\323\324\325\306\310\303\336\333\335\330\331\337\334\300\321]" "[^\341\342\367\347\344\345\263\366\372\351\352\353\354\355\356\357\360\362\363\364\365\346\350\343\376\373\375\370\371\377\374\340\361\301\302\327\307\304\305\243\326\332\311\312\313\314\315\316\317\320\322\323\324\325\306\310\303\336\333\335\330\331\337\334\300\321]" "" nil nil nil koi8-r) ("russianw" "[\300\301\302\303\304\305\250\306\307\310\311\312\313\314\315\316\317\320\321\322\323\324\325\326\327\330\331\334\333\332\335\336\337\340\341\342\343\344\345\270\346\347\350\351\352\353\354\355\356\357\360\361\362\363\364\365\366\367\370\371\374\373\372\375\376\377]" "[^\300\301\302\303\304\305\250\306\307\310\311\312\313\314\315\316\317\320\321\322\323\324\325\326\327\330\331\334\333\332\335\336\337\340\341\342\343\344\345\270\346\347\350\351\352\353\354\355\356\357\360\361\362\363\364\365\366\367\370\371\374\373\372\375\376\377]" "" nil nil nil windows-1251) ("slovak" "[A-Za-z\301\304\311\315\323\332\324\300\305\245\335\256\251\310\317\253\322\341\344\351\355\363\372\364\340\345\265\375\276\271\350\357\273\362]" "[^A-Za-z\301\304\311\315\323\332\324\300\305\245\335\256\251\310\317\253\322\341\344\351\355\363\372\364\340\345\265\375\276\271\350\357\273\362]" "" nil ("-B") nil iso-8859-2) ("svenska" "[A-Za-z\345\344\366\351\340\374\350\346\370\347\305\304\326\311\300\334\310\306\330\307]" "[^A-Za-z\345\344\366\351\340\374\350\346\370\347\305\304\326\311\300\334\310\306\330\307]" "[']" nil ("-C") "~list" iso-8859-1)))) -(defvar ispell-dictionary-alist (append ispell-local-dictionary-alist ispell-dictionary-alist-1 ispell-dictionary-alist-2 ispell-dictionary-alist-3 ispell-dictionary-alist-4 ispell-dictionary-alist-5 ispell-dictionary-alist-6) "\ +(defvar ispell-dictionary-alist (append ispell-dictionary-alist-1 ispell-dictionary-alist-2 ispell-dictionary-alist-3 ispell-dictionary-alist-4 ispell-dictionary-alist-5 ispell-dictionary-alist-6) "\ An alist of dictionaries and their associated parameters. Each element of this list is also a list: @@ -14153,6 +14385,12 @@ If you want OTHERCHARS to be empty, use the empty string. Hint: regexp syntax requires the hyphen to be declared first here. +CASECHAS, NOT-CASECHARS, and OTHERCHARS must be a unibyte string +containing bytes of CHARACTER-SET. In addition, if they contain +a non-ASCII byte, the regular expression must be a single +`character set' construct that doesn't specify a character range +for non-ASCII bytes. + MANY-OTHERCHARS-P is non-nil when multiple OTHERCHARS are allowed in a word. Otherwise only a single OTHERCHARS character is allowed to be part of any single word. @@ -14175,8 +14413,6 @@ contain the same character set as casechars and otherchars in the LANGUAGE.aff file (e.g., english.aff).") -(custom-autoload (quote ispell-dictionary-alist) "ispell") - (defvar ispell-menu-map nil "\ Key map for ispell menu.") @@ -14233,7 +14469,8 @@ With a prefix argument (or if CONTINUE is non-nil), resume interrupted spell-checking of a buffer or region. -Word syntax described by `ispell-dictionary-alist' (which see). +Word syntax is controlled by the definition of the chosen dictionary, +which is in `ispell-local-dictionary-alist' or `ispell-dictionary-alist'. This will check or reload the dictionary. Use \\[ispell-change-dictionary] or \\[ispell-region] to update the Ispell process. @@ -14286,13 +14523,12 @@ \(fn &optional NO-ERROR)" t nil) (autoload (quote ispell-change-dictionary) "ispell" "\ -Change `ispell-dictionary' (q.v.) to DICT and kill old Ispell process. -A new one will be started as soon as necessary. +Change to dictionary DICT for Ispell. +With a prefix arg, set it \"globally\", for all buffers. +Without a prefix arg, set it \"locally\", just for this buffer. By just answering RET you can find out what the current dictionary is. -With prefix argument, set the default dictionary. - \(fn DICT &optional ARG)" t nil) (autoload (quote ispell-region) "ispell" "\ @@ -14481,8 +14717,8 @@ ;;;*** -;;;### (autoloads (jit-lock-register) "jit-lock" "jit-lock.el" (16484 -;;;;;; 6598)) +;;;### (autoloads (jit-lock-register) "jit-lock" "jit-lock.el" (16939 +;;;;;; 44104)) ;;; Generated autoloads from jit-lock.el (autoload (quote jit-lock-register) "jit-lock" "\ @@ -14496,7 +14732,7 @@ ;;;*** ;;;### (autoloads (with-auto-compression-mode auto-compression-mode) -;;;;;; "jka-compr" "jka-compr.el" (16484 6598)) +;;;;;; "jka-compr" "jka-compr.el" (16960 18194)) ;;; Generated autoloads from jka-compr.el (defvar auto-compression-mode nil "\ @@ -14523,7 +14759,7 @@ ;;;### (autoloads (keypad-setup keypad-numlock-shifted-setup keypad-shifted-setup ;;;;;; keypad-numlock-setup keypad-setup) "keypad" "emulation/keypad.el" -;;;;;; (16213 43273)) +;;;;;; (16908 33361)) ;;; Generated autoloads from emulation/keypad.el (defvar keypad-setup nil "\ @@ -14626,7 +14862,7 @@ ;;;### (autoloads (kmacro-end-call-mouse kmacro-end-and-call-macro ;;;;;; kmacro-end-or-call-macro kmacro-start-macro-or-insert-counter ;;;;;; kmacro-call-macro kmacro-end-macro kmacro-start-macro) "kmacro" -;;;;;; "kmacro.el" (16814 63075)) +;;;;;; "kmacro.el" (16908 33360)) ;;; Generated autoloads from kmacro.el (global-set-key "\C-x(" 'kmacro-start-macro) (global-set-key "\C-x)" 'kmacro-end-macro) @@ -14854,7 +15090,7 @@ ;;;*** ;;;### (autoloads (latin1-display-ucs-per-lynx latin1-display latin1-display) -;;;;;; "latin1-disp" "international/latin1-disp.el" (16680 26004)) +;;;;;; "latin1-disp" "international/latin1-disp.el" (16908 33362)) ;;; Generated autoloads from international/latin1-disp.el (defvar latin1-display nil "\ @@ -15026,8 +15262,8 @@ ;;;*** -;;;### (autoloads (unload-feature) "loadhist" "loadhist.el" (16435 -;;;;;; 26305)) +;;;### (autoloads (unload-feature) "loadhist" "loadhist.el" (16858 +;;;;;; 50917)) ;;; Generated autoloads from loadhist.el (autoload (quote unload-feature) "loadhist" "\ @@ -15050,7 +15286,7 @@ ;;;*** ;;;### (autoloads (locate-with-filter locate locate-ls-subdir-switches) -;;;;;; "locate" "locate.el" (16580 11202)) +;;;;;; "locate" "locate.el" (16908 33360)) ;;; Generated autoloads from locate.el (defvar locate-ls-subdir-switches "-al" "\ @@ -15075,7 +15311,7 @@ ;;;*** -;;;### (autoloads (log-edit) "log-edit" "log-edit.el" (16680 26002)) +;;;### (autoloads (log-edit) "log-edit" "log-edit.el" (16908 33360)) ;;; Generated autoloads from log-edit.el (autoload (quote log-edit) "log-edit" "\ @@ -15096,8 +15332,8 @@ ;;;*** -;;;### (autoloads (log-view-mode) "log-view" "log-view.el" (16534 -;;;;;; 3808)) +;;;### (autoloads (log-view-mode) "log-view" "log-view.el" (16923 +;;;;;; 3606)) ;;; Generated autoloads from log-view.el (autoload (quote log-view-mode) "log-view" "\ @@ -15344,7 +15580,7 @@ ;;;*** ;;;### (autoloads (what-domain mail-extract-address-components) "mail-extr" -;;;;;; "mail/mail-extr.el" (16746 18215)) +;;;;;; "mail/mail-extr.el" (16908 33362)) ;;; Generated autoloads from mail/mail-extr.el (autoload (quote mail-extract-address-components) "mail-extr" "\ @@ -15459,7 +15695,7 @@ ;;;*** ;;;### (autoloads (define-mail-abbrev build-mail-abbrevs mail-abbrevs-setup) -;;;;;; "mailabbrev" "mail/mailabbrev.el" (16250 35353)) +;;;;;; "mailabbrev" "mail/mailabbrev.el" (16858 50930)) ;;; Generated autoloads from mail/mailabbrev.el (autoload (quote mail-abbrevs-setup) "mailabbrev" "\ @@ -15622,7 +15858,7 @@ ;;;*** -;;;### (autoloads (man-follow man) "man" "man.el" (16816 23724)) +;;;### (autoloads (man-follow man) "man" "man.el" (16958 58756)) ;;; Generated autoloads from man.el (defalias (quote manual-entry) (quote man)) @@ -15671,8 +15907,8 @@ ;;;*** -;;;### (autoloads (menu-bar-mode) "menu-bar" "menu-bar.el" (16810 -;;;;;; 63790)) +;;;### (autoloads (menu-bar-mode) "menu-bar" "menu-bar.el" (16939 +;;;;;; 44104)) ;;; Generated autoloads from menu-bar.el (put (quote menu-bar-mode) (quote standard-value) (quote (t))) @@ -15709,10 +15945,7 @@ ;;;;;; message-signature message-indent-citation-function message-cite-function ;;;;;; message-yank-prefix message-citation-line-function message-send-mail-function ;;;;;; message-user-organization-file message-signature-separator -;;;;;; message-cross-post-note-function message-followup-to-note -;;;;;; message-cross-post-note message-cross-post-default message-archive-note -;;;;;; message-archive-header message-mark-insert-end message-mark-insert-begin -;;;;;; message-from-style) "message" "gnus/message.el" (16775 26713)) +;;;;;; message-from-style) "message" "gnus/message.el" (16953 20625)) ;;; Generated autoloads from gnus/message.el (defvar message-from-style (quote default) "\ @@ -15730,54 +15963,6 @@ (custom-autoload (quote message-from-style) "message") -(defvar message-mark-insert-begin "--8<---------------cut here---------------start------------->8---\n" "\ -How to mark the beginning of some inserted text.") - -(custom-autoload (quote message-mark-insert-begin) "message") - -(defvar message-mark-insert-end "--8<---------------cut here---------------end--------------->8---\n" "\ -How to mark the end of some inserted text.") - -(custom-autoload (quote message-mark-insert-end) "message") - -(defvar message-archive-header "X-No-Archive: Yes\n" "\ -Header to insert when you don't want your article to be archived. -Archives (such as groups.google.com) respect this header.") - -(custom-autoload (quote message-archive-header) "message") - -(defvar message-archive-note "X-No-Archive: Yes - save http://groups.google.com/" "\ -Note to insert why you wouldn't want this posting archived. -If nil, don't insert any text in the body.") - -(custom-autoload (quote message-archive-note) "message") - -(defvar message-cross-post-default t "\ -When non-nil `message-cross-post-followup-to' will perform a crosspost. -If nil, `message-cross-post-followup-to' will only do a followup. Note that -you can explicitly override this setting by calling -`message-cross-post-followup-to' with a prefix.") - -(custom-autoload (quote message-cross-post-default) "message") - -(defvar message-cross-post-note "Crosspost & Followup-To: " "\ -Note to insert before signature to notify of cross-post and follow-up.") - -(custom-autoload (quote message-cross-post-note) "message") - -(defvar message-followup-to-note "Followup-To: " "\ -Note to insert before signature to notify of follow-up only.") - -(custom-autoload (quote message-followup-to-note) "message") - -(defvar message-cross-post-note-function (quote message-cross-post-insert-note) "\ -Function to use to insert note about Crosspost or Followup-To. -The function will be called with four arguments. The function should not only -insert a note, but also ensure old notes are deleted. See the documentation -for `message-cross-post-insert-note'.") - -(custom-autoload (quote message-cross-post-note-function) "message") - (defvar message-signature-separator "^-- *$" "\ Regexp matching the signature separator.") @@ -16066,7 +16251,7 @@ ;;;*** ;;;### (autoloads (metapost-mode metafont-mode) "meta-mode" "progmodes/meta-mode.el" -;;;;;; (16681 45593)) +;;;;;; (16923 3630)) ;;; Generated autoloads from progmodes/meta-mode.el (autoload (quote metafont-mode) "meta-mode" "\ @@ -16313,7 +16498,7 @@ ;;;*** ;;;### (autoloads (mixal-mode) "mixal-mode" "progmodes/mixal-mode.el" -;;;;;; (16213 43282)) +;;;;;; (16858 50936)) ;;; Generated autoloads from progmodes/mixal-mode.el (autoload (quote mixal-mode) "mixal-mode" "\ @@ -16379,7 +16564,7 @@ ;;;*** ;;;### (autoloads (mm-url-insert-file-contents-external mm-url-insert-file-contents) -;;;;;; "mm-url" "gnus/mm-url.el" (16775 26713)) +;;;;;; "mm-url" "gnus/mm-url.el" (16954 46150)) ;;; Generated autoloads from gnus/mm-url.el (autoload (quote mm-url-insert-file-contents) "mm-url" "\ @@ -16395,8 +16580,8 @@ ;;;*** -;;;### (autoloads (mm-uu-dissect) "mm-uu" "gnus/mm-uu.el" (16775 -;;;;;; 26713)) +;;;### (autoloads (mm-uu-dissect) "mm-uu" "gnus/mm-uu.el" (16908 +;;;;;; 33361)) ;;; Generated autoloads from gnus/mm-uu.el (autoload (quote mm-uu-dissect) "mm-uu" "\ @@ -16424,7 +16609,7 @@ ;;;### (autoloads (mml2015-self-encrypt mml2015-sign mml2015-encrypt ;;;;;; mml2015-verify-test mml2015-verify mml2015-decrypt-test mml2015-decrypt) -;;;;;; "mml2015" "gnus/mml2015.el" (16775 26713)) +;;;;;; "mml2015" "gnus/mml2015.el" (16908 33361)) ;;; Generated autoloads from gnus/mml2015.el (autoload (quote mml2015-decrypt) "mml2015" "\ @@ -16465,7 +16650,7 @@ ;;;*** ;;;### (autoloads (modula-2-mode) "modula2" "progmodes/modula2.el" -;;;;;; (16213 43282)) +;;;;;; (16858 50936)) ;;; Generated autoloads from progmodes/modula2.el (autoload (quote modula-2-mode) "modula2" "\ @@ -16773,7 +16958,7 @@ ;;;;;; coding-system-translation-table-for-decode coding-system-pre-write-conversion ;;;;;; coding-system-post-read-conversion lookup-nested-alist set-nested-alist ;;;;;; truncate-string-to-width store-substring string-to-sequence) -;;;;;; "mule-util" "international/mule-util.el" (16747 61767)) +;;;;;; "mule-util" "international/mule-util.el" (16908 33362)) ;;; Generated autoloads from international/mule-util.el (autoload (quote string-to-sequence) "mule-util" "\ @@ -17212,7 +17397,7 @@ ;;;*** ;;;### (autoloads (nndiary-generate-nov-databases) "nndiary" "gnus/nndiary.el" -;;;;;; (16775 26713)) +;;;;;; (16908 33361)) ;;; Generated autoloads from gnus/nndiary.el (autoload (quote nndiary-generate-nov-databases) "nndiary" "\ @@ -17238,7 +17423,7 @@ ;;;*** ;;;### (autoloads (nnfolder-generate-active-file) "nnfolder" "gnus/nnfolder.el" -;;;;;; (16792 36614)) +;;;;;; (16927 494)) ;;; Generated autoloads from gnus/nnfolder.el (autoload (quote nnfolder-generate-active-file) "nnfolder" "\ @@ -17294,13 +17479,16 @@ ;;;*** ;;;### (autoloads (disable-command enable-command disabled-command-function) -;;;;;; "novice" "novice.el" (16710 51031)) +;;;;;; "novice" "novice.el" (16939 44104)) ;;; Generated autoloads from novice.el (defvar disabled-command-function (quote disabled-command-function) "\ Function to call to handle disabled commands. If nil, the feature is disabled, i.e., all commands work normally.") +(defvaralias (quote disabled-command-hook) (quote disabled-command-function)) + (make-obsolete-variable 'disabled-command-hook 'disabled-command-function "22.1") + (autoload (quote disabled-command-function) "novice" "\ Not documented @@ -17497,13 +17685,14 @@ ;;;*** -;;;### (autoloads (org-remember-handler org-remember-annotation org-store-link -;;;;;; org-diary org-agenda org-agenda-mode org-mode) "org" "textmodes/org.el" -;;;;;; (16819 61740)) +;;;### (autoloads (orgtbl-mode turn-on-orgtbl org-remember-handler +;;;;;; org-remember-annotation org-store-link org-diary org-agenda +;;;;;; org-agenda-mode org-mode) "org" "textmodes/org.el" (16876 +;;;;;; 58220)) ;;; Generated autoloads from textmodes/org.el (autoload (quote org-mode) "org" "\ -Outline-based notes management and organizer, alias +Outline-based notes management and organizer, alias \"Carstens outline-mode for keeping track of everything.\" Org-mode develops organizational tasks around a NOTES file which @@ -17517,7 +17706,7 @@ For printing and sharing of notes, an Org-mode file (or a part of it) can be exported as a well-structured ASCII or HTML file. -+ The following commands are available: +The following commands are available: \\{org-mode-map} @@ -17526,6 +17715,10 @@ (autoload (quote org-agenda-mode) "org" "\ Mode for time-sorted view on action items in Org-mode files. +The following commands are available: + +\\{org-agenda-mode-map} + \(fn)" t nil) (autoload (quote org-agenda) "org" "\ @@ -17640,6 +17833,16 @@ \(fn)" nil nil) +(autoload (quote turn-on-orgtbl) "org" "\ +Unconditionally turn on orgtbl-mode. + +\(fn)" nil nil) + +(autoload (quote orgtbl-mode) "org" "\ +The org-mode table editor as a minor mode for use in other modes. + +\(fn &optional ARG)" t nil) + ;;;*** ;;;### (autoloads (outline-minor-mode outline-mode) "outline" "outline.el" @@ -17698,7 +17901,7 @@ ;;;*** -;;;### (autoloads (show-paren-mode) "paren" "paren.el" (16816 23724)) +;;;### (autoloads (show-paren-mode) "paren" "paren.el" (16821 35887)) ;;; Generated autoloads from paren.el (defvar show-paren-mode nil "\ @@ -18004,8 +18207,8 @@ ;;;### (autoloads (pcomplete-shell-setup pcomplete-comint-setup pcomplete-list ;;;;;; pcomplete-help pcomplete-expand pcomplete-continue pcomplete-expand-and-complete -;;;;;; pcomplete-reverse pcomplete) "pcomplete" "pcomplete.el" (16768 -;;;;;; 48631)) +;;;;;; pcomplete-reverse pcomplete) "pcomplete" "pcomplete.el" (16880 +;;;;;; 58563)) ;;; Generated autoloads from pcomplete.el (autoload (quote pcomplete) "pcomplete" "\ @@ -18064,7 +18267,7 @@ ;;;### (autoloads (cvs-dired-use-hook cvs-dired-action cvs-status ;;;;;; cvs-update cvs-examine cvs-quickdir cvs-checkout) "pcvs" -;;;;;; "pcvs.el" (16814 63075)) +;;;;;; "pcvs.el" (16953 20624)) ;;; Generated autoloads from pcvs.el (autoload (quote cvs-checkout) "pcvs" "\ @@ -18141,7 +18344,7 @@ ;;;*** -;;;### (autoloads nil "pcvs-defs" "pcvs-defs.el" (16764 51518)) +;;;### (autoloads nil "pcvs-defs" "pcvs-defs.el" (16858 50918)) ;;; Generated autoloads from pcvs-defs.el (defvar cvs-global-menu (let ((m (make-sparse-keymap "PCL-CVS"))) (define-key m [status] (quote (menu-item "Directory Status" cvs-status :help "A more verbose status of a workarea"))) (define-key m [checkout] (quote (menu-item "Checkout Module" cvs-checkout :help "Check out a module from the repository"))) (define-key m [update] (quote (menu-item "Update Directory" cvs-update :help "Fetch updates from the repository"))) (define-key m [examine] (quote (menu-item "Examine Directory" cvs-examine :help "Examine the current state of a workarea"))) (fset (quote cvs-global-menu) m))) @@ -18149,7 +18352,7 @@ ;;;*** ;;;### (autoloads (perl-mode) "perl-mode" "progmodes/perl-mode.el" -;;;;;; (16213 43282)) +;;;;;; (16958 58759)) ;;; Generated autoloads from progmodes/perl-mode.el (autoload (quote perl-mode) "perl-mode" "\ @@ -19117,10 +19320,10 @@ ;;;*** -;;;### (autoloads (ps-mule-begin-page ps-mule-begin-job ps-mule-header-string-charsets -;;;;;; ps-mule-encode-header-string ps-mule-initialize ps-mule-plot-composition -;;;;;; ps-mule-plot-string ps-mule-set-ascii-font ps-mule-prepare-ascii-font -;;;;;; ps-multibyte-buffer) "ps-mule" "ps-mule.el" (16702 49514)) +;;;### (autoloads (ps-mule-begin-page ps-mule-begin-job ps-mule-encode-header-string +;;;;;; ps-mule-initialize ps-mule-plot-composition ps-mule-plot-string +;;;;;; ps-mule-set-ascii-font ps-mule-prepare-ascii-font ps-multibyte-buffer) +;;;;;; "ps-mule" "ps-mule.el" (16923 3608)) ;;; Generated autoloads from ps-mule.el (defvar ps-multibyte-buffer nil "\ @@ -19223,11 +19426,6 @@ \(fn STRING FONTTAG)" nil nil) -(autoload (quote ps-mule-header-string-charsets) "ps-mule" "\ -Return a list of character sets that appears in header strings. - -\(fn)" nil nil) - (autoload (quote ps-mule-begin-job) "ps-mule" "\ Start printing job for multi-byte chars between FROM and TO. This checks if all multi-byte characters in the region are printable or not. @@ -19246,8 +19444,8 @@ ;;;;;; ps-spool-region ps-spool-buffer-with-faces ps-spool-buffer ;;;;;; ps-print-region-with-faces ps-print-region ps-print-buffer-with-faces ;;;;;; ps-print-buffer ps-print-customize ps-print-color-p ps-paper-type -;;;;;; ps-page-dimensions-database) "ps-print" "ps-print.el" (16801 -;;;;;; 58023)) +;;;;;; ps-page-dimensions-database) "ps-print" "ps-print.el" (16958 +;;;;;; 58756)) ;;; Generated autoloads from ps-print.el (defvar ps-page-dimensions-database (list (list (quote a4) (/ (* 72 21.0) 2.54) (/ (* 72 29.7) 2.54) "A4") (list (quote a3) (/ (* 72 29.7) 2.54) (/ (* 72 42.0) 2.54) "A3") (list (quote letter) (* 72 8.5) (* 72 11.0) "Letter") (list (quote legal) (* 72 8.5) (* 72 14.0) "Legal") (list (quote letter-small) (* 72 7.68) (* 72 10.16) "LetterSmall") (list (quote tabloid) (* 72 11.0) (* 72 17.0) "Tabloid") (list (quote ledger) (* 72 17.0) (* 72 11.0) "Ledger") (list (quote statement) (* 72 5.5) (* 72 8.5) "Statement") (list (quote executive) (* 72 7.5) (* 72 10.0) "Executive") (list (quote a4small) (* 72 7.47) (* 72 10.85) "A4Small") (list (quote b4) (* 72 10.125) (* 72 14.33) "B4") (list (quote b5) (* 72 7.16) (* 72 10.125) "B5")) "\ @@ -19444,7 +19642,7 @@ ;;;*** ;;;### (autoloads (jython-mode python-mode run-python) "python" "progmodes/python.el" -;;;;;; (16816 23742)) +;;;;;; (16908 33362)) ;;; Generated autoloads from progmodes/python.el (add-to-list (quote interpreter-mode-alist) (quote ("jython" . jython-mode))) @@ -19531,7 +19729,7 @@ ;;;;;; quail-defrule quail-install-decode-map quail-install-map ;;;;;; quail-define-rules quail-show-keyboard-layout quail-set-keyboard-layout ;;;;;; quail-define-package quail-use-package quail-title) "quail" -;;;;;; "international/quail.el" (16547 17258)) +;;;;;; "international/quail.el" (16954 46150)) ;;; Generated autoloads from international/quail.el (autoload (quote quail-title) "quail" "\ @@ -19846,18 +20044,23 @@ ;;;*** -;;;### (autoloads (re-builder) "re-builder" "emacs-lisp/re-builder.el" -;;;;;; (16675 7397)) +;;;### (autoloads (re-builder regexp-builder) "re-builder" "emacs-lisp/re-builder.el" +;;;;;; (16930 25649)) ;;; Generated autoloads from emacs-lisp/re-builder.el +(autoload (quote regexp-builder) "re-builder" "\ +Alias for `re-builder': Construct a regexp interactively. + +\(fn)" t nil) + (autoload (quote re-builder) "re-builder" "\ -Call up the RE Builder for the current window. - -\(fn)" t nil) - -;;;*** - -;;;### (autoloads (recentf-mode) "recentf" "recentf.el" (16783 21521)) +Construct a regexp interactively. + +\(fn)" t nil) + +;;;*** + +;;;### (autoloads (recentf-mode) "recentf" "recentf.el" (16958 58756)) ;;; Generated autoloads from recentf.el (defvar recentf-mode nil "\ @@ -19883,8 +20086,8 @@ ;;;### (autoloads (clear-rectangle string-insert-rectangle string-rectangle ;;;;;; delete-whitespace-rectangle open-rectangle insert-rectangle ;;;;;; yank-rectangle kill-rectangle extract-rectangle delete-extract-rectangle -;;;;;; delete-rectangle move-to-column-force) "rect" "rect.el" (16213 -;;;;;; 43271)) +;;;;;; delete-rectangle move-to-column-force) "rect" "rect.el" (16894 +;;;;;; 3339)) ;;; Generated autoloads from rect.el (autoload (quote move-to-column-force) "rect" "\ @@ -20006,8 +20209,8 @@ ;;;*** -;;;### (autoloads (refill-mode) "refill" "textmodes/refill.el" (16213 -;;;;;; 43283)) +;;;### (autoloads (refill-mode) "refill" "textmodes/refill.el" (16884 +;;;;;; 52115)) ;;; Generated autoloads from textmodes/refill.el (autoload (quote refill-mode) "refill" "\ @@ -20023,7 +20226,7 @@ ;;;*** ;;;### (autoloads (reftex-reset-scanning-information reftex-mode -;;;;;; turn-on-reftex) "reftex" "textmodes/reftex.el" (16213 43284)) +;;;;;; turn-on-reftex) "reftex" "textmodes/reftex.el" (16896 54112)) ;;; Generated autoloads from textmodes/reftex.el (autoload (quote turn-on-reftex) "reftex" "\ @@ -20073,7 +20276,7 @@ ;;;*** ;;;### (autoloads (reftex-citation) "reftex-cite" "textmodes/reftex-cite.el" -;;;;;; (16213 43283)) +;;;;;; (16913 6364)) ;;; Generated autoloads from textmodes/reftex-cite.el (autoload (quote reftex-citation) "reftex-cite" "\ @@ -20085,12 +20288,13 @@ If NO-INSERT is non-nil, nothing is inserted, only the selected key returned. -FORAT-KEY can be used to pre-select a citation format. - -When called with one or two `C-u' prefixes, first rescans the document. -When called with a numeric prefix, make that many citations. When -called with point inside the braces of a `\\cite' command, it will -add another key, ignoring the value of `reftex-cite-format'. +FORMAT-KEY can be used to pre-select a citation format. + +When called with a `C-u' prefix, prompt for optional arguments in +cite macros. When called with a numeric prefix, make that many +citations. When called with point inside the braces of a `\\cite' +command, it will add another key, ignoring the value of +`reftex-cite-format'. The regular expression uses an expanded syntax: && is interpreted as `and'. Thus, `aaaa&&bbb' matches entries which contain both `aaaa' and `bbb'. @@ -20101,8 +20305,27 @@ ;;;*** +;;;### (autoloads (reftex-isearch-minor-mode) "reftex-global" "textmodes/reftex-global.el" +;;;;;; (16887 27629)) +;;; Generated autoloads from textmodes/reftex-global.el + +(defvar reftex-isearch-minor-mode nil) + +(autoload (quote reftex-isearch-minor-mode) "reftex-global" "\ +When on, isearch searches the whole document, not only the current file. +This minor mode allows isearch to search through all the files of +the current TeX document. + +With no argument, this command toggles +`reftex-isearch-minor-mode'. With a prefix argument ARG, turn +`reftex-isearch-minor-mode' on iff ARG is positive. + +\(fn &optional ARG)" t nil) + +;;;*** + ;;;### (autoloads (reftex-index-phrases-mode) "reftex-index" "textmodes/reftex-index.el" -;;;;;; (16213 43283)) +;;;;;; (16875 35929)) ;;; Generated autoloads from textmodes/reftex-index.el (autoload (quote reftex-index-phrases-mode) "reftex-index" "\ @@ -20135,7 +20358,7 @@ ;;;*** ;;;### (autoloads (reftex-all-document-files) "reftex-parse" "textmodes/reftex-parse.el" -;;;;;; (16213 43283)) +;;;;;; (16875 35929)) ;;; Generated autoloads from textmodes/reftex-parse.el (autoload (quote reftex-all-document-files) "reftex-parse" "\ @@ -20148,7 +20371,7 @@ ;;;*** ;;;### (autoloads (regexp-opt-depth regexp-opt) "regexp-opt" "emacs-lisp/regexp-opt.el" -;;;;;; (16213 43273)) +;;;;;; (16821 35887)) ;;; Generated autoloads from emacs-lisp/regexp-opt.el (autoload (quote regexp-opt) "regexp-opt" "\ @@ -20168,8 +20391,8 @@ (autoload (quote regexp-opt-depth) "regexp-opt" "\ Return the depth of REGEXP. -This means the number of regexp grouping constructs (parenthesised expressions) -in REGEXP. +This means the number of non-shy regexp grouping constructs +\(parenthesised expressions) in REGEXP. \(fn REGEXP)" nil nil) @@ -20264,7 +20487,7 @@ ;;;*** ;;;### (autoloads (global-reveal-mode reveal-mode) "reveal" "reveal.el" -;;;;;; (16804 23129)) +;;;;;; (16942 52930)) ;;; Generated autoloads from reveal.el (autoload (quote reveal-mode) "reveal" "\ @@ -20402,15 +20625,22 @@ ;;;*** -;;;### (autoloads (rmail-restore-desktop-buffer rmail-set-pop-password +;;;### (autoloads (rmail-restore-desktop-buffer rmail-set-remote-password ;;;;;; rmail-input rmail-mode rmail rmail-enable-mime rmail-show-message-hook ;;;;;; rmail-confirm-expunge rmail-secondary-file-regexp rmail-secondary-file-directory ;;;;;; rmail-mail-new-frame rmail-primary-inbox-list rmail-delete-after-output ;;;;;; rmail-highlight-face rmail-highlighted-headers rmail-retry-ignored-headers -;;;;;; rmail-displayed-headers rmail-ignored-headers rmail-dont-reply-to-names) -;;;;;; "rmail" "mail/rmail.el" (16792 36615)) +;;;;;; rmail-displayed-headers rmail-ignored-headers rmail-dont-reply-to-names +;;;;;; rmail-movemail-variant-p) "rmail" "mail/rmail.el" (16954 +;;;;;; 46150)) ;;; Generated autoloads from mail/rmail.el +(autoload (quote rmail-movemail-variant-p) "rmail" "\ +Return t if the current movemail variant is any of VARIANTS. +Currently known variants are 'emacs and 'mailutils. + +\(fn &rest VARIANTS)" nil nil) + (defvar rmail-dont-reply-to-names nil "\ *A regexp specifying addresses to prune from a reply message. A value of nil means exclude your own email address as an address @@ -20650,8 +20880,8 @@ \(fn FILENAME)" t nil) -(autoload (quote rmail-set-pop-password) "rmail" "\ -Set PASSWORD to be used for retrieving mail from a POP server. +(autoload (quote rmail-set-remote-password) "rmail" "\ +Set PASSWORD to be used for retrieving mail from a POP or IMAP server. \(fn PASSWORD)" t nil) @@ -21024,8 +21254,8 @@ ;;;*** -;;;### (autoloads (ruler-mode) "ruler-mode" "ruler-mode.el" (16478 -;;;;;; 51572)) +;;;### (autoloads (ruler-mode) "ruler-mode" "ruler-mode.el" (16908 +;;;;;; 33360)) ;;; Generated autoloads from ruler-mode.el (autoload (quote ruler-mode) "ruler-mode" "\ @@ -21344,7 +21574,7 @@ ;;;*** ;;;### (autoloads (dsssl-mode scheme-mode) "scheme" "progmodes/scheme.el" -;;;;;; (16391 49851)) +;;;;;; (16923 3630)) ;;; Generated autoloads from progmodes/scheme.el (autoload (quote scheme-mode) "scheme" "\ @@ -21446,12 +21676,13 @@ ;;;*** -;;;### (autoloads (mail-other-frame mail-other-window mail mail-mode -;;;;;; mail-default-directory mail-signature mail-personal-alias-file -;;;;;; mail-alias-file mail-default-reply-to mail-archive-file-name -;;;;;; mail-header-separator send-mail-function mail-yank-ignored-headers -;;;;;; mail-interactive mail-self-blind mail-specify-envelope-from -;;;;;; mail-from-style) "sendmail" "mail/sendmail.el" (16534 3809)) +;;;### (autoloads (mail-other-frame mail-other-window mail mail-mailing-lists +;;;;;; mail-mode mail-default-directory mail-signature mail-citation-hook +;;;;;; mail-personal-alias-file mail-alias-file mail-default-reply-to +;;;;;; mail-archive-file-name mail-header-separator send-mail-function +;;;;;; mail-yank-ignored-headers mail-interactive mail-self-blind +;;;;;; mail-specify-envelope-from mail-from-style) "sendmail" "mail/sendmail.el" +;;;;;; (16954 46150)) ;;; Generated autoloads from mail/sendmail.el (defvar mail-from-style (quote angles) "\ @@ -21498,7 +21729,7 @@ (custom-autoload (quote mail-interactive) "sendmail") -(defvar mail-yank-ignored-headers "^via:\\|^mail-from:\\|^origin:\\|^status:\\|^remailed\\|^received:\\|^message-id:\\|^summary-line:\\|^to:\\|^subject:\\|^in-reply-to:\\|^return-path:" "\ +(defvar mail-yank-ignored-headers "^via:\\|^mail-from:\\|^origin:\\|^status:\\|^remailed\\|^received:\\|^message-id:\\|^summary-line:\\|^to:\\|^subject:\\|^in-reply-to:\\|^return-path:\\|^mail-reply-to:\\|^mail-followup-to:" "\ *Delete these headers from old message when it's inserted in a reply.") (custom-autoload (quote mail-yank-ignored-headers) "sendmail") @@ -21547,6 +21778,19 @@ (custom-autoload (quote mail-personal-alias-file) "sendmail") +(defvar mail-citation-hook nil "\ +*Hook for modifying a citation just inserted in the mail buffer. +Each hook function can find the citation between (point) and (mark t), +and should leave point and mark around the citation text as modified. +The hook functions can find the header of the cited message +in the variable `mail-citation-header', whether or not this is included +in the cited portion of the message. + +If this hook is entirely empty (nil), a default action is taken +instead of no action.") + +(custom-autoload (quote mail-citation-hook) "sendmail") + (defvar mail-signature nil "\ *Text inserted at end of mail buffer when a message is initialized. If t, it means to insert the contents of the file `mail-signature-file'. @@ -21573,6 +21817,8 @@ \\[mail-to] move to To: \\[mail-subject] move to Subject: \\[mail-cc] move to CC: \\[mail-bcc] move to BCC: \\[mail-fcc] move to FCC: \\[mail-reply-to] move to Reply-To: + \\[mail-mail-reply-to] move to Mail-Reply-To: + \\[mail-mail-followup-to] move to Mail-Followup-To: \\[mail-text] mail-text (move to beginning of message text). \\[mail-signature] mail-signature (insert `mail-signature-file' file). \\[mail-yank-original] mail-yank-original (insert current message, in Rmail). @@ -21583,6 +21829,14 @@ \(fn)" t nil) +(defvar mail-mailing-lists nil "\ +*List of mailing list addresses the user is subscribed to. + +The variable is used to trigger insertion of the \"Mail-Followup-To\" +header when sending a message to a mailing list.") + +(custom-autoload (quote mail-mailing-lists) "sendmail") + (defvar sendmail-coding-system nil "\ *Coding system for encoding the outgoing mail. This has higher priority than `default-buffer-file-coding-system' @@ -21659,7 +21913,7 @@ ;;;*** ;;;### (autoloads (server-mode server-start) "server" "server.el" -;;;;;; (16764 51518)) +;;;;;; (16908 33360)) ;;; Generated autoloads from server.el (autoload (quote server-start) "server" "\ @@ -21691,7 +21945,7 @@ ;;;*** -;;;### (autoloads (ses-mode) "ses" "ses.el" (16801 58023)) +;;;### (autoloads (ses-mode) "ses" "ses.el" (16923 3608)) ;;; Generated autoloads from ses.el (autoload (quote ses-mode) "ses" "\ @@ -21710,7 +21964,7 @@ ;;;*** ;;;### (autoloads (html-mode sgml-mode) "sgml-mode" "textmodes/sgml-mode.el" -;;;;;; (16787 16350)) +;;;;;; (16942 52931)) ;;; Generated autoloads from textmodes/sgml-mode.el (autoload (quote sgml-mode) "sgml-mode" "\ @@ -21778,7 +22032,7 @@ ;;;*** ;;;### (autoloads (sh-mode) "sh-script" "progmodes/sh-script.el" -;;;;;; (16820 16328)) +;;;;;; (16878 27292)) ;;; Generated autoloads from progmodes/sh-script.el (autoload (quote sh-mode) "sh-script" "\ @@ -21841,7 +22095,7 @@ ;;;*** -;;;### (autoloads (sha1) "sha1" "gnus/sha1.el" (16775 26713)) +;;;### (autoloads (sha1) "sha1" "gnus/sha1.el" (16908 33361)) ;;; Generated autoloads from gnus/sha1.el (autoload (quote sha1) "sha1" "\ @@ -21990,7 +22244,7 @@ ;;;*** ;;;### (autoloads (sieve-upload-and-bury sieve-upload sieve-manage) -;;;;;; "sieve" "gnus/sieve.el" (16775 26714)) +;;;;;; "sieve" "gnus/sieve.el" (16908 33361)) ;;; Generated autoloads from gnus/sieve.el (autoload (quote sieve-manage) "sieve" "\ @@ -22026,8 +22280,8 @@ ;;;*** -;;;### (autoloads (simula-mode) "simula" "progmodes/simula.el" (16213 -;;;;;; 43282)) +;;;### (autoloads (simula-mode) "simula" "progmodes/simula.el" (16858 +;;;;;; 50937)) ;;; Generated autoloads from progmodes/simula.el (autoload (quote simula-mode) "simula" "\ @@ -22205,7 +22459,7 @@ ;;;*** ;;;### (autoloads (smiley-buffer smiley-region) "smiley" "gnus/smiley.el" -;;;;;; (16719 60886)) +;;;;;; (16912 31021)) ;;; Generated autoloads from gnus/smiley.el (autoload (quote smiley-region) "smiley" "\ @@ -22223,7 +22477,7 @@ ;;;*** ;;;### (autoloads (smtpmail-send-queued-mail smtpmail-send-it) "smtpmail" -;;;;;; "mail/smtpmail.el" (16747 61767)) +;;;;;; "mail/smtpmail.el" (16908 33362)) ;;; Generated autoloads from mail/smtpmail.el (autoload (quote smtpmail-send-it) "smtpmail" "\ @@ -22262,7 +22516,7 @@ ;;;*** ;;;### (autoloads (snmpv2-mode snmp-mode) "snmp-mode" "net/snmp-mode.el" -;;;;;; (16213 43280)) +;;;;;; (16858 50931)) ;;; Generated autoloads from net/snmp-mode.el (autoload (quote snmp-mode) "snmp-mode" "\ @@ -22584,8 +22838,8 @@ ;;;*** -;;;### (autoloads (spam-initialize) "spam" "gnus/spam.el" (16777 -;;;;;; 65418)) +;;;### (autoloads (spam-initialize) "spam" "gnus/spam.el" (16908 +;;;;;; 33362)) ;;; Generated autoloads from gnus/spam.el (autoload (quote spam-initialize) "spam" "\ @@ -22596,7 +22850,7 @@ ;;;*** ;;;### (autoloads (speedbar-get-focus speedbar-frame-mode) "speedbar" -;;;;;; "speedbar.el" (16775 26708)) +;;;;;; "speedbar.el" (16931 6984)) ;;; Generated autoloads from speedbar.el (defalias (quote speedbar) (quote speedbar-frame-mode)) @@ -22676,8 +22930,8 @@ ;;;### (autoloads (sql-linter sql-db2 sql-interbase sql-postgres ;;;;;; sql-ms sql-ingres sql-solid sql-mysql sql-sqlite sql-informix ;;;;;; sql-sybase sql-oracle sql-product-interactive sql-mode sql-help -;;;;;; sql-add-product-keywords) "sql" "progmodes/sql.el" (16536 -;;;;;; 52890)) +;;;;;; sql-add-product-keywords) "sql" "progmodes/sql.el" (16908 +;;;;;; 33362)) ;;; Generated autoloads from progmodes/sql.el (autoload (quote sql-add-product-keywords) "sql" "\ @@ -23239,7 +23493,7 @@ ;;;*** ;;;### (autoloads (sc-cite-original) "supercite" "mail/supercite.el" -;;;;;; (16808 48569)) +;;;;;; (16830 50349)) ;;; Generated autoloads from mail/supercite.el (autoload (quote sc-cite-original) "supercite" "\ @@ -23320,7 +23574,7 @@ ;;;;;; table-recognize table-insert-row-column table-insert-column ;;;;;; table-insert-row table-insert table-point-left-cell-hook ;;;;;; table-point-entered-cell-hook table-load-hook table-cell-map-hook) -;;;;;; "table" "textmodes/table.el" (16779 20952)) +;;;;;; "table" "textmodes/table.el" (16958 58759)) ;;; Generated autoloads from textmodes/table.el (defvar table-cell-map-hook nil "\ @@ -23918,7 +24172,7 @@ ;;;*** -;;;### (autoloads (tar-mode) "tar-mode" "tar-mode.el" (16768 48632)) +;;;### (autoloads (tar-mode) "tar-mode" "tar-mode.el" (16954 46150)) ;;; Generated autoloads from tar-mode.el (autoload (quote tar-mode) "tar-mode" "\ @@ -24020,8 +24274,8 @@ ;;;*** -;;;### (autoloads (ansi-term term make-term) "term" "term.el" (16805 -;;;;;; 44920)) +;;;### (autoloads (ansi-term term make-term) "term" "term.el" (16829 +;;;;;; 43426)) ;;; Generated autoloads from term.el (autoload (quote make-term) "term" "\ @@ -24128,7 +24382,7 @@ ;;;;;; tex-start-commands tex-start-options slitex-run-command latex-run-command ;;;;;; tex-run-command tex-offer-save tex-main-file tex-first-line-header-regexp ;;;;;; tex-directory tex-shell-file-name) "tex-mode" "textmodes/tex-mode.el" -;;;;;; (16820 16329)) +;;;;;; (16958 58759)) ;;; Generated autoloads from textmodes/tex-mode.el (defvar tex-shell-file-name nil "\ @@ -24430,7 +24684,7 @@ ;;;*** ;;;### (autoloads (texi2info texinfo-format-region texinfo-format-buffer) -;;;;;; "texinfmt" "textmodes/texinfmt.el" (16565 48737)) +;;;;;; "texinfmt" "textmodes/texinfmt.el" (16939 44105)) ;;; Generated autoloads from textmodes/texinfmt.el (autoload (quote texinfo-format-buffer) "texinfmt" "\ @@ -24470,7 +24724,7 @@ ;;;*** ;;;### (autoloads (texinfo-mode texinfo-close-quote texinfo-open-quote) -;;;;;; "texinfo" "textmodes/texinfo.el" (16777 65419)) +;;;;;; "texinfo" "textmodes/texinfo.el" (16858 50941)) ;;; Generated autoloads from textmodes/texinfo.el (defvar texinfo-open-quote "``" "\ @@ -24554,9 +24808,10 @@ ;;;*** -;;;### (autoloads (thai-composition-function thai-post-read-conversion -;;;;;; thai-compose-buffer thai-compose-string thai-compose-region) -;;;;;; "thai-util" "language/thai-util.el" (16213 43280)) +;;;### (autoloads (thai-auto-composition-mode thai-composition-function +;;;;;; thai-post-read-conversion thai-compose-buffer thai-compose-string +;;;;;; thai-compose-region) "thai-util" "language/thai-util.el" +;;;;;; (16954 46150)) ;;; Generated autoloads from language/thai-util.el (autoload (quote thai-compose-region) "thai-util" "\ @@ -24591,6 +24846,11 @@ \(fn FROM TO PATTERN &optional STRING)" nil nil) +(autoload (quote thai-auto-composition-mode) "thai-util" "\ +Minor mode for automatically correct Thai character composition. + +\(fn &optional ARG)" t nil) + ;;;*** ;;;### (autoloads (list-at-point number-at-point symbol-at-point @@ -24652,7 +24912,7 @@ ;;;### (autoloads (thumbs-dired-setroot thumbs-dired-show-all thumbs-dired-show-marked ;;;;;; thumbs-show-all-from-dir thumbs-find-thumb) "thumbs" "thumbs.el" -;;;;;; (16775 26708)) +;;;;;; (16908 33361)) ;;; Generated autoloads from thumbs.el (autoload (quote thumbs-find-thumb) "thumbs" "\ @@ -24794,7 +25054,7 @@ ;;;*** ;;;### (autoloads (display-time-mode display-time display-time-day-and-date) -;;;;;; "time" "time.el" (16484 6599)) +;;;;;; "time" "time.el" (16908 33361)) ;;; Generated autoloads from time.el (defvar display-time-day-and-date nil "\ @@ -25058,7 +25318,7 @@ ;;;### (autoloads (with-timeout run-with-idle-timer add-timeout run-with-timer ;;;;;; run-at-time cancel-function-timers cancel-timer) "timer" -;;;;;; "emacs-lisp/timer.el" (16552 32697)) +;;;;;; "emacs-lisp/timer.el" (16908 33361)) ;;; Generated autoloads from emacs-lisp/timer.el (defalias (quote disable-timeout) (quote cancel-timer)) @@ -25362,23 +25622,23 @@ ;;;*** -;;;### (autoloads (tooltip-mode tooltip-mode) "tooltip" "tooltip.el" -;;;;;; (16805 44920)) +;;;### (autoloads (tooltip-mode) "tooltip" "tooltip.el" (16960 18194)) ;;; Generated autoloads from tooltip.el -(autoload (quote tooltip-mode) "tooltip" "\ -Mode for tooltip display. -With ARG, turn tooltip mode on if and only if ARG is positive. - -\(fn &optional ARG)" t nil) - (defvar tooltip-mode nil "\ Non-nil if Tooltip mode is enabled. +See the command `tooltip-mode' for a description of this minor-mode. Setting this variable directly does not take effect; use either \\[customize] or the function `tooltip-mode'.") (custom-autoload (quote tooltip-mode) "tooltip") +(autoload (quote tooltip-mode) "tooltip" "\ +Toggle Tooltip display. +With ARG, turn tooltip mode on if and only if ARG is positive. + +\(fn &optional ARG)" t nil) + ;;;*** ;;;### (autoloads (tpu-edt-on) "tpu-edt" "emulation/tpu-edt.el" (16812 @@ -25431,7 +25691,7 @@ ;;;*** ;;;### (autoloads (trace-function-background trace-function trace-buffer) -;;;;;; "trace" "emacs-lisp/trace.el" (16213 43273)) +;;;;;; "trace" "emacs-lisp/trace.el" (16930 25650)) ;;; Generated autoloads from emacs-lisp/trace.el (defvar trace-buffer "*trace-output*" "\ @@ -25464,7 +25724,7 @@ ;;;### (autoloads (tramp-completion-file-name-handler tramp-file-name-handler ;;;;;; tramp-completion-file-name-regexp tramp-file-name-regexp) -;;;;;; "tramp" "net/tramp.el" (16820 16328)) +;;;;;; "tramp" "net/tramp.el" (16958 58758)) ;;; Generated autoloads from net/tramp.el (defvar tramp-unified-filenames (not (featurep (quote xemacs))) "\ @@ -25592,7 +25852,7 @@ ;;;;;; type-break type-break-mode type-break-keystroke-threshold ;;;;;; type-break-good-break-interval type-break-good-rest-interval ;;;;;; type-break-interval type-break-mode) "type-break" "type-break.el" -;;;;;; (16768 48632)) +;;;;;; (16884 52115)) ;;; Generated autoloads from type-break.el (defvar type-break-mode nil "\ @@ -25847,7 +26107,7 @@ ;;;*** -;;;### (autoloads nil "url" "url/url.el" (16801 58038)) +;;;### (autoloads nil "url" "url/url.el" (16875 35929)) ;;; Generated autoloads from url/url.el (defvar url-configuration-directory "~/.url") @@ -26112,8 +26372,8 @@ ;;;*** ;;;### (autoloads (url-insert-file-contents url-file-local-copy url-copy-file -;;;;;; url-handler-mode) "url-handlers" "url/url-handlers.el" (16746 -;;;;;; 18215)) +;;;;;; url-handler-mode) "url-handlers" "url/url-handlers.el" (16829 +;;;;;; 43427)) ;;; Generated autoloads from url/url-handlers.el (defvar url-handler-mode nil "\ @@ -26157,7 +26417,7 @@ ;;;### (autoloads (url-history-save-history url-history-parse-history ;;;;;; url-history-setup-save-timer) "url-history" "url/url-history.el" -;;;;;; (16746 18215)) +;;;;;; (16930 25655)) ;;; Generated autoloads from url/url-history.el (autoload (quote url-history-setup-save-timer) "url-history" "\ @@ -26181,7 +26441,7 @@ ;;;*** ;;;### (autoloads (url-http-options url-http-file-attributes url-http-file-exists-p -;;;;;; url-http) "url-http" "url/url-http.el" (16812 58719)) +;;;;;; url-http) "url-http" "url/url-http.el" (16912 31025)) ;;; Generated autoloads from url/url-http.el (autoload (quote url-http) "url-http" "\ @@ -26551,7 +26811,7 @@ ;;;### (autoloads (uudecode-decode-region uudecode-decode-region-internal ;;;;;; uudecode-decode-region-external) "uudecode" "gnus/uudecode.el" -;;;;;; (16719 60886)) +;;;;;; (16908 33362)) ;;; Generated autoloads from gnus/uudecode.el (autoload (quote uudecode-decode-region-external) "uudecode" "\ @@ -26581,7 +26841,7 @@ ;;;;;; vc-directory vc-merge vc-insert-headers vc-version-other-window ;;;;;; vc-diff vc-register vc-next-action vc-do-command edit-vc-file ;;;;;; with-vc-file vc-branch-part vc-before-checkin-hook vc-checkin-hook -;;;;;; vc-checkout-hook) "vc" "vc.el" (16812 26771)) +;;;;;; vc-checkout-hook) "vc" "vc.el" (16930 4639)) ;;; Generated autoloads from vc.el (defvar vc-checkout-hook nil "\ @@ -26863,7 +27123,7 @@ ;;;*** -;;;### (autoloads nil "vc-arch" "vc-arch.el" (16764 51519)) +;;;### (autoloads nil "vc-arch" "vc-arch.el" (16866 20008)) ;;; Generated autoloads from vc-arch.el (defun vc-arch-registered (file) (if (vc-find-root file "{arch}/=tagging-method") @@ -26873,7 +27133,7 @@ ;;;*** -;;;### (autoloads nil "vc-cvs" "vc-cvs.el" (16812 26771)) +;;;### (autoloads nil "vc-cvs" "vc-cvs.el" (16908 33361)) ;;; Generated autoloads from vc-cvs.el (defun vc-cvs-registered (f) (when (file-readable-p (expand-file-name @@ -26883,7 +27143,7 @@ ;;;*** -;;;### (autoloads nil "vc-mcvs" "vc-mcvs.el" (16777 65418)) +;;;### (autoloads nil "vc-mcvs" "vc-mcvs.el" (16908 33361)) ;;; Generated autoloads from vc-mcvs.el (defun vc-mcvs-registered (file) (if (vc-find-root file "MCVS/CVS") @@ -26894,7 +27154,7 @@ ;;;*** ;;;### (autoloads (vc-rcs-master-templates) "vc-rcs" "vc-rcs.el" -;;;;;; (16801 58024)) +;;;;;; (16858 50920)) ;;; Generated autoloads from vc-rcs.el (defvar vc-rcs-master-templates (quote ("%sRCS/%s,v" "%s%s,v" "%sRCS/%s")) "\ @@ -26924,7 +27184,7 @@ ;;;*** -;;;### (autoloads nil "vc-svn" "vc-svn.el" (16683 1170)) +;;;### (autoloads nil "vc-svn" "vc-svn.el" (16908 33361)) ;;; Generated autoloads from vc-svn.el (defun vc-svn-registered (f) (when (file-readable-p (expand-file-name @@ -26937,7 +27197,7 @@ ;;;*** ;;;### (autoloads (vhdl-mode) "vhdl-mode" "progmodes/vhdl-mode.el" -;;;;;; (16775 26717)) +;;;;;; (16858 50937)) ;;; Generated autoloads from progmodes/vhdl-mode.el (autoload (quote vhdl-mode) "vhdl-mode" "\ @@ -27788,7 +28048,7 @@ ;;;*** ;;;### (autoloads (viper-mode toggle-viper-mode) "viper" "emulation/viper.el" -;;;;;; (16213 43273)) +;;;;;; (16923 3621)) ;;; Generated autoloads from emulation/viper.el (autoload (quote toggle-viper-mode) "viper" "\ @@ -27805,7 +28065,7 @@ ;;;*** ;;;### (autoloads (warn lwarn display-warning) "warnings" "emacs-lisp/warnings.el" -;;;;;; (16478 51573)) +;;;;;; (16908 33361)) ;;; Generated autoloads from emacs-lisp/warnings.el (defvar warning-prefix-function nil "\ @@ -27888,7 +28148,7 @@ ;;;*** ;;;### (autoloads (wdired-change-to-wdired-mode) "wdired" "wdired.el" -;;;;;; (16644 49446)) +;;;;;; (16923 3610)) ;;; Generated autoloads from wdired.el (autoload (quote wdired-change-to-wdired-mode) "wdired" "\ @@ -28068,8 +28328,8 @@ ;;;*** ;;;### (autoloads (widget-setup widget-insert widget-delete widget-create -;;;;;; widget-prompt-value widgetp) "wid-edit" "wid-edit.el" (16820 -;;;;;; 16328)) +;;;;;; widget-prompt-value widgetp) "wid-edit" "wid-edit.el" (16894 +;;;;;; 3340)) ;;; Generated autoloads from wid-edit.el (autoload (quote widgetp) "wid-edit" "\ @@ -28184,7 +28444,7 @@ ;;;*** ;;;### (autoloads (woman-find-file woman-dired-find-file woman) "woman" -;;;;;; "woman.el" (16767 25304)) +;;;;;; "woman.el" (16875 35928)) ;;; Generated autoloads from woman.el (autoload (quote woman) "woman" "\ @@ -28333,7 +28593,7 @@ ;;;*** ;;;### (autoloads (xml-parse-region xml-parse-file) "xml" "xml.el" -;;;;;; (16814 63075)) +;;;;;; (16830 50347)) ;;; Generated autoloads from xml.el (autoload (quote xml-parse-file) "xml" "\ @@ -28358,8 +28618,8 @@ ;;;*** -;;;### (autoloads (xterm-mouse-mode) "xt-mouse" "xt-mouse.el" (16213 -;;;;;; 43272)) +;;;### (autoloads (xterm-mouse-mode) "xt-mouse" "xt-mouse.el" (16875 +;;;;;; 35928)) ;;; Generated autoloads from xt-mouse.el (defvar xterm-mouse-mode nil "\ @@ -28423,7 +28683,7 @@ ;;;*** -;;;### (autoloads (zone) "zone" "play/zone.el" (16423 23573)) +;;;### (autoloads (zone) "zone" "play/zone.el" (16858 50933)) ;;; Generated autoloads from play/zone.el (autoload (quote zone) "zone" "\ @@ -28474,11 +28734,11 @@ ;;;;;; "calendar/cal-coptic.el" "calendar/cal-french.el" "calendar/cal-islam.el" ;;;;;; "calendar/cal-iso.el" "calendar/cal-julian.el" "calendar/cal-mayan.el" ;;;;;; "calendar/cal-menu.el" "calendar/cal-move.el" "calendar/cal-persia.el" -;;;;;; "calendar/cal-tex.el" "calendar/cal-x.el" "calendar/icalendar.el" -;;;;;; "case-table.el" "cdl.el" "cus-dep.el" "cus-load.el" "cus-start.el" -;;;;;; "custom.el" "dos-fns.el" "dos-vars.el" "dos-w32.el" "ediff-diff.el" -;;;;;; "ediff-init.el" "ediff-merg.el" "ediff-ptch.el" "ediff-vers.el" -;;;;;; "ediff-wind.el" "electric.el" "emacs-lisp/assoc.el" "emacs-lisp/authors.el" +;;;;;; "calendar/cal-tex.el" "calendar/cal-x.el" "case-table.el" +;;;;;; "cdl.el" "cus-dep.el" "cus-start.el" "custom.el" "dos-fns.el" +;;;;;; "dos-vars.el" "dos-w32.el" "ediff-diff.el" "ediff-init.el" +;;;;;; "ediff-merg.el" "ediff-ptch.el" "ediff-vers.el" "ediff-wind.el" +;;;;;; "electric.el" "emacs-lisp/assoc.el" "emacs-lisp/authors.el" ;;;;;; "emacs-lisp/bindat.el" "emacs-lisp/byte-opt.el" "emacs-lisp/byte-run.el" ;;;;;; "emacs-lisp/cl-compat.el" "emacs-lisp/cl-extra.el" "emacs-lisp/cl-macs.el" ;;;;;; "emacs-lisp/cl-seq.el" "emacs-lisp/cl-specs.el" "emacs-lisp/cust-print.el" @@ -28498,28 +28758,28 @@ ;;;;;; "eshell/em-pred.el" "eshell/em-prompt.el" "eshell/em-rebind.el" ;;;;;; "eshell/em-script.el" "eshell/em-smart.el" "eshell/em-term.el" ;;;;;; "eshell/em-unix.el" "eshell/em-xtra.el" "eshell/esh-arg.el" -;;;;;; "eshell/esh-cmd.el" "eshell/esh-ext.el" "eshell/esh-groups.el" -;;;;;; "eshell/esh-io.el" "eshell/esh-maint.el" "eshell/esh-module.el" -;;;;;; "eshell/esh-opt.el" "eshell/esh-proc.el" "eshell/esh-util.el" -;;;;;; "eshell/esh-var.el" "faces.el" "files.el" "filesets.el" "finder-inf.el" -;;;;;; "foldout.el" "font-core.el" "format.el" "forms-d2.el" "forms-pass.el" -;;;;;; "frame.el" "generic-x.el" "gnus/compface.el" "gnus/dig.el" -;;;;;; "gnus/dns.el" "gnus/format-spec.el" "gnus/gnus-async.el" -;;;;;; "gnus/gnus-bcklg.el" "gnus/gnus-cite.el" "gnus/gnus-cus.el" -;;;;;; "gnus/gnus-demon.el" "gnus/gnus-diary.el" "gnus/gnus-dup.el" -;;;;;; "gnus/gnus-eform.el" "gnus/gnus-ems.el" "gnus/gnus-gl.el" -;;;;;; "gnus/gnus-int.el" "gnus/gnus-logic.el" "gnus/gnus-mh.el" -;;;;;; "gnus/gnus-nocem.el" "gnus/gnus-salt.el" "gnus/gnus-score.el" -;;;;;; "gnus/gnus-setup.el" "gnus/gnus-srvr.el" "gnus/gnus-sum.el" -;;;;;; "gnus/gnus-topic.el" "gnus/gnus-undo.el" "gnus/gnus-util.el" -;;;;;; "gnus/gnus-uu.el" "gnus/gnus-vm.el" "gnus/hex-util.el" "gnus/ietf-drums.el" -;;;;;; "gnus/imap.el" "gnus/legacy-gnus-agent.el" "gnus/mail-parse.el" -;;;;;; "gnus/mail-prsvr.el" "gnus/mail-source.el" "gnus/mailcap.el" -;;;;;; "gnus/messcompat.el" "gnus/mm-bodies.el" "gnus/mm-decode.el" -;;;;;; "gnus/mm-encode.el" "gnus/mm-util.el" "gnus/mm-view.el" "gnus/mml-sec.el" -;;;;;; "gnus/mml-smime.el" "gnus/mml.el" "gnus/nnagent.el" "gnus/nnbabyl.el" -;;;;;; "gnus/nndb.el" "gnus/nndir.el" "gnus/nndraft.el" "gnus/nneething.el" -;;;;;; "gnus/nngateway.el" "gnus/nnheader.el" "gnus/nnimap.el" "gnus/nnlistserv.el" +;;;;;; "eshell/esh-cmd.el" "eshell/esh-ext.el" "eshell/esh-io.el" +;;;;;; "eshell/esh-maint.el" "eshell/esh-module.el" "eshell/esh-opt.el" +;;;;;; "eshell/esh-proc.el" "eshell/esh-util.el" "eshell/esh-var.el" +;;;;;; "faces.el" "files.el" "filesets.el" "foldout.el" "font-core.el" +;;;;;; "format.el" "forms-d2.el" "forms-pass.el" "frame.el" "generic-x.el" +;;;;;; "gnus/compface.el" "gnus/dig.el" "gnus/dns.el" "gnus/format-spec.el" +;;;;;; "gnus/gnus-async.el" "gnus/gnus-bcklg.el" "gnus/gnus-cite.el" +;;;;;; "gnus/gnus-cus.el" "gnus/gnus-demon.el" "gnus/gnus-diary.el" +;;;;;; "gnus/gnus-dup.el" "gnus/gnus-eform.el" "gnus/gnus-ems.el" +;;;;;; "gnus/gnus-gl.el" "gnus/gnus-int.el" "gnus/gnus-logic.el" +;;;;;; "gnus/gnus-mh.el" "gnus/gnus-nocem.el" "gnus/gnus-salt.el" +;;;;;; "gnus/gnus-score.el" "gnus/gnus-setup.el" "gnus/gnus-srvr.el" +;;;;;; "gnus/gnus-sum.el" "gnus/gnus-topic.el" "gnus/gnus-undo.el" +;;;;;; "gnus/gnus-util.el" "gnus/gnus-uu.el" "gnus/gnus-vm.el" "gnus/hex-util.el" +;;;;;; "gnus/ietf-drums.el" "gnus/imap.el" "gnus/legacy-gnus-agent.el" +;;;;;; "gnus/mail-parse.el" "gnus/mail-prsvr.el" "gnus/mail-source.el" +;;;;;; "gnus/mailcap.el" "gnus/messcompat.el" "gnus/mm-bodies.el" +;;;;;; "gnus/mm-decode.el" "gnus/mm-encode.el" "gnus/mm-util.el" +;;;;;; "gnus/mm-view.el" "gnus/mml-sec.el" "gnus/mml-smime.el" "gnus/mml.el" +;;;;;; "gnus/nnagent.el" "gnus/nnbabyl.el" "gnus/nndb.el" "gnus/nndir.el" +;;;;;; "gnus/nndraft.el" "gnus/nneething.el" "gnus/nngateway.el" +;;;;;; "gnus/nnheader.el" "gnus/nnimap.el" "gnus/nnlistserv.el" ;;;;;; "gnus/nnmail.el" "gnus/nnmaildir.el" "gnus/nnmbox.el" "gnus/nnmh.el" ;;;;;; "gnus/nnnil.el" "gnus/nnoo.el" "gnus/nnrss.el" "gnus/nnslashdot.el" ;;;;;; "gnus/nnspool.el" "gnus/nntp.el" "gnus/nnultimate.el" "gnus/nnvirtual.el" @@ -28547,10 +28807,10 @@ ;;;;;; "language/japanese.el" "language/kannada.el" "language/korean.el" ;;;;;; "language/lao.el" "language/malayalam.el" "language/misc-lang.el" ;;;;;; "language/romanian.el" "language/slovak.el" "language/tamil.el" -;;;;;; "language/thai.el" "language/tibetan.el" "language/utf-8-lang.el" -;;;;;; "language/vietnamese.el" "ldefs-boot.el" "loadup.el" "mail/blessmail.el" -;;;;;; "mail/mailheader.el" "mail/mailpost.el" "mail/mspools.el" -;;;;;; "mail/rfc2368.el" "mail/rfc822.el" "mail/rmail-spam-filter.el" +;;;;;; "language/thai-word.el" "language/thai.el" "language/tibetan.el" +;;;;;; "language/utf-8-lang.el" "language/vietnamese.el" "ldefs-boot.el" +;;;;;; "loadup.el" "mail/blessmail.el" "mail/mailheader.el" "mail/mailpost.el" +;;;;;; "mail/mspools.el" "mail/rfc2368.el" "mail/rfc822.el" "mail/rmail-spam-filter.el" ;;;;;; "mail/uce.el" "mail/vms-pmail.el" "mh-e/mh-acros.el" "mh-e/mh-alias.el" ;;;;;; "mh-e/mh-customize.el" "mh-e/mh-funcs.el" "mh-e/mh-gnus.el" ;;;;;; "mh-e/mh-identity.el" "mh-e/mh-inc.el" "mh-e/mh-index.el" @@ -28561,27 +28821,27 @@ ;;;;;; "net/eudcb-ph.el" "net/ldap.el" "net/netrc.el" "net/tls.el" ;;;;;; "net/tramp-ftp.el" "net/tramp-smb.el" "net/tramp-util.el" ;;;;;; "net/tramp-uu.el" "net/tramp-vc.el" "net/trampver.el" "obsolete/awk-mode.el" -;;;;;; "obsolete/float.el" "obsolete/hilit19.el" "obsolete/mlsupport.el" -;;;;;; "obsolete/ooutline.el" "obsolete/profile.el" "obsolete/rnews.el" -;;;;;; "obsolete/sc.el" "obsolete/sun-curs.el" "obsolete/sun-fns.el" -;;;;;; "obsolete/uncompress.el" "obsolete/x-apollo.el" "obsolete/x-menu.el" -;;;;;; "patcomp.el" "paths.el" "pcvs-info.el" "pcvs-parse.el" "pcvs-util.el" -;;;;;; "play/gamegrid.el" "play/gametree.el" "play/meese.el" "progmodes/ada-prj.el" -;;;;;; "progmodes/cc-align.el" "progmodes/cc-awk.el" "progmodes/cc-bytecomp.el" -;;;;;; "progmodes/cc-cmds.el" "progmodes/cc-compat.el" "progmodes/cc-defs.el" -;;;;;; "progmodes/cc-engine.el" "progmodes/cc-fonts.el" "progmodes/cc-langs.el" -;;;;;; "progmodes/cc-menus.el" "progmodes/cc-vars.el" "progmodes/ebnf-abn.el" -;;;;;; "progmodes/ebnf-bnf.el" "progmodes/ebnf-dtd.el" "progmodes/ebnf-ebx.el" -;;;;;; "progmodes/ebnf-iso.el" "progmodes/ebnf-otz.el" "progmodes/ebnf-yac.el" -;;;;;; "progmodes/idlw-help.el" "progmodes/idlw-rinfo.el" "progmodes/idlw-toolbar.el" -;;;;;; "progmodes/mantemp.el" "progmodes/xscheme.el" "register.el" -;;;;;; "replace.el" "s-region.el" "saveplace.el" "scroll-bar.el" -;;;;;; "select.el" "simple.el" "soundex.el" "startup.el" "subdirs.el" -;;;;;; "subr.el" "tempo.el" "term/AT386.el" "term/apollo.el" "term/bg-mouse.el" -;;;;;; "term/bobcat.el" "term/internal.el" "term/iris-ansi.el" "term/keyswap.el" -;;;;;; "term/linux.el" "term/lk201.el" "term/mac-win.el" "term/news.el" -;;;;;; "term/pc-win.el" "term/rxvt.el" "term/sun-mouse.el" "term/sun.el" -;;;;;; "term/sup-mouse.el" "term/tty-colors.el" "term/tvi970.el" +;;;;;; "obsolete/float.el" "obsolete/hilit19.el" "obsolete/keyswap.el" +;;;;;; "obsolete/mlsupport.el" "obsolete/ooutline.el" "obsolete/profile.el" +;;;;;; "obsolete/rnews.el" "obsolete/sc.el" "obsolete/sun-curs.el" +;;;;;; "obsolete/sun-fns.el" "obsolete/uncompress.el" "obsolete/x-apollo.el" +;;;;;; "obsolete/x-menu.el" "patcomp.el" "paths.el" "pcvs-info.el" +;;;;;; "pcvs-parse.el" "pcvs-util.el" "play/gamegrid.el" "play/gametree.el" +;;;;;; "play/meese.el" "progmodes/ada-prj.el" "progmodes/cc-align.el" +;;;;;; "progmodes/cc-awk.el" "progmodes/cc-bytecomp.el" "progmodes/cc-cmds.el" +;;;;;; "progmodes/cc-compat.el" "progmodes/cc-defs.el" "progmodes/cc-engine.el" +;;;;;; "progmodes/cc-fonts.el" "progmodes/cc-langs.el" "progmodes/cc-menus.el" +;;;;;; "progmodes/cc-vars.el" "progmodes/ebnf-abn.el" "progmodes/ebnf-bnf.el" +;;;;;; "progmodes/ebnf-dtd.el" "progmodes/ebnf-ebx.el" "progmodes/ebnf-iso.el" +;;;;;; "progmodes/ebnf-otz.el" "progmodes/ebnf-yac.el" "progmodes/idlw-help.el" +;;;;;; "progmodes/idlw-rinfo.el" "progmodes/idlw-toolbar.el" "progmodes/mantemp.el" +;;;;;; "progmodes/xscheme.el" "register.el" "replace.el" "s-region.el" +;;;;;; "saveplace.el" "scroll-bar.el" "select.el" "simple.el" "soundex.el" +;;;;;; "startup.el" "subdirs.el" "subr.el" "tempo.el" "term/AT386.el" +;;;;;; "term/apollo.el" "term/bg-mouse.el" "term/bobcat.el" "term/internal.el" +;;;;;; "term/iris-ansi.el" "term/linux.el" "term/lk201.el" "term/mac-win.el" +;;;;;; "term/news.el" "term/pc-win.el" "term/rxvt.el" "term/sun-mouse.el" +;;;;;; "term/sun.el" "term/sup-mouse.el" "term/tty-colors.el" "term/tvi970.el" ;;;;;; "term/vt100.el" "term/vt102.el" "term/vt125.el" "term/vt200.el" ;;;;;; "term/vt201.el" "term/vt220.el" "term/vt240.el" "term/vt300.el" ;;;;;; "term/vt320.el" "term/vt400.el" "term/vt420.el" "term/w32-win.el" @@ -28589,15 +28849,15 @@ ;;;;;; "textmodes/fill.el" "textmodes/makeinfo.el" "textmodes/page-ext.el" ;;;;;; "textmodes/page.el" "textmodes/paragraphs.el" "textmodes/refbib.el" ;;;;;; "textmodes/refer.el" "textmodes/reftex-auc.el" "textmodes/reftex-dcr.el" -;;;;;; "textmodes/reftex-global.el" "textmodes/reftex-ref.el" "textmodes/reftex-sel.el" -;;;;;; "textmodes/reftex-toc.el" "textmodes/reftex-vars.el" "textmodes/texnfo-upd.el" -;;;;;; "textmodes/text-mode.el" "timezone.el" "tree-widget.el" "uniquify.el" -;;;;;; "url/url-about.el" "url/url-dired.el" "url/url-expand.el" -;;;;;; "url/url-ftp.el" "url/url-https.el" "url/url-imap.el" "url/url-methods.el" -;;;;;; "url/url-nfs.el" "url/url-proxy.el" "url/url-vars.el" "url/vc-dav.el" -;;;;;; "vc-hooks.el" "vcursor.el" "version.el" "vms-patch.el" "vmsproc.el" -;;;;;; "vt-control.el" "vt100-led.el" "w32-fns.el" "w32-vars.el" -;;;;;; "widget.el" "window.el" "x-dnd.el") (16820 23750 66854)) +;;;;;; "textmodes/reftex-ref.el" "textmodes/reftex-sel.el" "textmodes/reftex-toc.el" +;;;;;; "textmodes/reftex-vars.el" "textmodes/texnfo-upd.el" "textmodes/text-mode.el" +;;;;;; "timezone.el" "tree-widget.el" "uniquify.el" "url/url-about.el" +;;;;;; "url/url-dired.el" "url/url-expand.el" "url/url-ftp.el" "url/url-https.el" +;;;;;; "url/url-imap.el" "url/url-methods.el" "url/url-nfs.el" "url/url-proxy.el" +;;;;;; "url/url-vars.el" "url/vc-dav.el" "vc-hooks.el" "vcursor.el" +;;;;;; "version.el" "vms-patch.el" "vmsproc.el" "vt-control.el" +;;;;;; "vt100-led.el" "w32-fns.el" "w32-vars.el" "widget.el" "window.el" +;;;;;; "x-dnd.el") (16960 18483 123965)) ;;;***
--- a/lisp/man.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/man.el Thu Mar 24 18:41:26 2005 +0000 @@ -1305,7 +1305,9 @@ (error "There are no references in the current man page") (list (let* ((default (or (car (all-completions - (let ((word (Man-possibly-hyphenated-word))) + (let ((word + (or (Man-possibly-hyphenated-word) + ""))) ;; strip a trailing '-': (if (string-match "-$" word) (substring word 0
--- a/lisp/menu-bar.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/menu-bar.el Thu Mar 24 18:41:26 2005 +0000 @@ -1,6 +1,7 @@ ;;; menu-bar.el --- define a default menu bar -;; Copyright (C) 1993,94,1995,2000,01,02,2003 Free Software Foundation, Inc. +;; Copyright (C) 1993, 1994, 1995, 2000, 2001, 2002, 2003, 2005 +;; Free Software Foundation, Inc. ;; Author: RMS ;; Maintainer: FSF @@ -596,7 +597,7 @@ HELP is the text to use for the tooltip. PROPS are additional properties." `'(menu-item ,doc ,fname - ,@(if props props) + ,@props :help ,help :button (:toggle . (and (default-boundp ',fname) (default-value ',fname))))) @@ -693,18 +694,10 @@ (define-key menu-bar-showhide-menu [linecolumn-separator] '("--")) -(defun showhide-date-time () - "Toggle whether to show date and time in the mode-line." - (interactive) - (if (display-time-mode) - (message "Display-time mode enabled.") - (message "Display-time mode disabled.")) - (customize-mark-as-set 'display-time-mode)) - (define-key menu-bar-showhide-menu [showhide-date-time] - '(menu-item "Date, Time and Mail" showhide-date-time - :help "Display date, time, mail status in mode line" - :button (:toggle . display-time-mode))) + (menu-bar-make-mm-toggle display-time-mode + "Date, Time and Mail" + "Display date, time, mail status in mode line")) (define-key menu-bar-showhide-menu [datetime-separator] '("--"))
--- a/lisp/net/tramp-smb.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/net/tramp-smb.el Thu Mar 24 18:41:26 2005 +0000 @@ -1,8 +1,8 @@ ;;; tramp-smb.el --- Tramp access functions for SMB servers -*- coding: iso-8859-1; -*- -;; Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. +;; Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. -;; Author: Michael Albinus <Michael.Albinus@alcatel.de> +;; Author: Michael Albinus <michael.albinus@gmx.de> ;; Keywords: comm, processes ;; This file is part of GNU Emacs. @@ -75,7 +75,7 @@ :group 'tramp :type 'string) -(defconst tramp-smb-prompt "^smb: \\S-+> \\|^\\s-+Server\\s-+Comment$" +(defconst tramp-smb-prompt "^smb: .+> \\|^\\s-+Server\\s-+Comment$" "Regexp used as prompt in smbclient.") (defconst tramp-smb-errors @@ -235,10 +235,7 @@ (file-exists-p newname)) (error "copy-file: file %s already exists" newname)) -; (with-parsed-tramp-file-name newname nil - (let (user host localname) - (with-parsed-tramp-file-name newname l - (setq user l-user host l-host localname l-localname)) + (with-parsed-tramp-file-name newname nil (save-excursion (let ((share (tramp-smb-get-share localname)) (file (tramp-smb-get-localname localname t))) @@ -258,59 +255,46 @@ (defun tramp-smb-handle-delete-directory (directory) "Like `delete-directory' for tramp files." (setq directory (directory-file-name (expand-file-name directory))) - (unless (file-exists-p directory) - (error "Cannot delete non-existing directory `%s'" directory)) -; (with-parsed-tramp-file-name directory nil - (let (user host localname) - (with-parsed-tramp-file-name directory l - (setq user l-user host l-host localname l-localname)) - (save-excursion - (let ((share (tramp-smb-get-share localname)) - (dir (tramp-smb-get-localname (file-name-directory localname) t)) - (file (file-name-nondirectory localname))) - (tramp-smb-maybe-open-connection user host share) - (if (and - (tramp-smb-send-command user host (format "cd \"%s\"" dir)) - (tramp-smb-send-command user host (format "rmdir \"%s\"" file))) - ;; Go Home + (when (file-exists-p directory) + (with-parsed-tramp-file-name directory nil + (save-excursion + (let ((share (tramp-smb-get-share localname)) + (dir (tramp-smb-get-localname (file-name-directory localname) t)) + (file (file-name-nondirectory localname))) + (tramp-smb-maybe-open-connection user host share) + (if (and + (tramp-smb-send-command user host (format "cd \"%s\"" dir)) + (tramp-smb-send-command user host (format "rmdir \"%s\"" file))) + ;; Go Home + (tramp-smb-send-command user host (format "cd \\")) + ;; Error (tramp-smb-send-command user host (format "cd \\")) - ;; Error - (tramp-smb-send-command user host (format "cd \\")) - (error "Cannot delete directory `%s'" directory)))))) + (error "Cannot delete directory `%s'" directory))))))) (defun tramp-smb-handle-delete-file (filename) "Like `delete-file' for tramp files." (setq filename (expand-file-name filename)) - (unless (file-exists-p filename) - (error "Cannot delete non-existing file `%s'" filename)) -; (with-parsed-tramp-file-name filename nil - (let (user host localname) - (with-parsed-tramp-file-name filename l - (setq user l-user host l-host localname l-localname)) - (save-excursion - (let ((share (tramp-smb-get-share localname)) - (dir (tramp-smb-get-localname (file-name-directory localname) t)) - (file (file-name-nondirectory localname))) - (unless (file-exists-p filename) - (error "Cannot delete non-existing file `%s'" filename)) - (tramp-smb-maybe-open-connection user host share) - (if (and - (tramp-smb-send-command user host (format "cd \"%s\"" dir)) - (tramp-smb-send-command user host (format "rm \"%s\"" file))) - ;; Go Home + (when (file-exists-p filename) + (with-parsed-tramp-file-name filename nil + (save-excursion + (let ((share (tramp-smb-get-share localname)) + (dir (tramp-smb-get-localname (file-name-directory localname) t)) + (file (file-name-nondirectory localname))) + (tramp-smb-maybe-open-connection user host share) + (if (and + (tramp-smb-send-command user host (format "cd \"%s\"" dir)) + (tramp-smb-send-command user host (format "rm \"%s\"" file))) + ;; Go Home + (tramp-smb-send-command user host (format "cd \\")) + ;; Error (tramp-smb-send-command user host (format "cd \\")) - ;; Error - (tramp-smb-send-command user host (format "cd \\")) - (error "Cannot delete file `%s'" filename)))))) + (error "Cannot delete file `%s'" filename))))))) (defun tramp-smb-handle-directory-files (directory &optional full match nosort) "Like `directory-files' for tramp files." (setq directory (directory-file-name (expand-file-name directory))) -; (with-parsed-tramp-file-name directory nil - (let (user host localname) - (with-parsed-tramp-file-name directory l - (setq user l-user host l-host localname l-localname)) + (with-parsed-tramp-file-name directory nil (save-excursion (let* ((share (tramp-smb-get-share localname)) (file (tramp-smb-get-localname localname nil)) @@ -340,17 +324,14 @@ (mapcar (lambda (x) ;; We cannot call `file-attributes' for backward compatibility reasons. - ;; Its optional parameter ID-FORMAT is introduced with Emacs 22.1. + ;; Its optional parameter ID-FORMAT is introduced with Emacs 22. (cons x (tramp-smb-handle-file-attributes (if full x (concat (file-name-as-directory directory) x)) id-format))) (directory-files directory full match nosort))) (defun tramp-smb-handle-file-attributes (filename &optional id-format) "Like `file-attributes' for tramp files." -; (with-parsed-tramp-file-name filename nil - (let (user host localname) - (with-parsed-tramp-file-name filename l - (setq user l-user host l-host localname l-localname)) + (with-parsed-tramp-file-name filename nil (save-excursion (let* ((share (tramp-smb-get-share localname)) (file (tramp-smb-get-localname localname nil)) @@ -380,10 +361,7 @@ (defun tramp-smb-handle-file-directory-p (filename) "Like `file-directory-p' for tramp files." -; (with-parsed-tramp-file-name filename nil - (let (user host localname) - (with-parsed-tramp-file-name filename l - (setq user l-user host l-host localname l-localname)) + (with-parsed-tramp-file-name filename nil (save-excursion (let* ((share (tramp-smb-get-share localname)) (file (tramp-smb-get-localname localname nil)) @@ -396,10 +374,7 @@ (defun tramp-smb-handle-file-exists-p (filename) "Like `file-exists-p' for tramp files." -; (with-parsed-tramp-file-name filename nil - (let (user host localname) - (with-parsed-tramp-file-name filename l - (setq user l-user host l-host localname l-localname)) + (with-parsed-tramp-file-name filename nil (save-excursion (let* ((share (tramp-smb-get-share localname)) (file (tramp-smb-get-localname localname nil)) @@ -433,10 +408,7 @@ ;; files. (defun tramp-smb-handle-file-name-all-completions (filename directory) "Like `file-name-all-completions' for tramp files." -; (with-parsed-tramp-file-name directory nil - (let (user host localname) - (with-parsed-tramp-file-name directory l - (setq user l-user host l-host localname l-localname)) + (with-parsed-tramp-file-name directory nil (save-match-data (save-excursion (let* ((share (tramp-smb-get-share localname)) @@ -467,10 +439,7 @@ (let ((dir (file-name-directory filename))) (and (file-exists-p dir) (file-writable-p dir))) -; (with-parsed-tramp-file-name filename nil - (let (user host localname) - (with-parsed-tramp-file-name filename l - (setq user l-user host l-host localname l-localname)) + (with-parsed-tramp-file-name filename nil (save-excursion (let* ((share (tramp-smb-get-share localname)) (file (tramp-smb-get-localname localname nil)) @@ -490,10 +459,7 @@ ;; This check is a little bit strange, but in `dired-add-entry' ;; this function is called with a non-directory ... (setq filename (file-name-as-directory filename))) -; (with-parsed-tramp-file-name filename nil - (let (user host localname) - (with-parsed-tramp-file-name filename l - (setq user l-user host l-host localname l-localname)) + (with-parsed-tramp-file-name filename nil (save-match-data (let* ((share (tramp-smb-get-share localname)) (file (tramp-smb-get-localname localname nil)) @@ -543,10 +509,7 @@ (setq dir (directory-file-name (expand-file-name dir))) (unless (file-name-absolute-p dir) (setq dir (concat default-directory dir))) -; (with-parsed-tramp-file-name dir nil - (let (user host localname) - (with-parsed-tramp-file-name dir l - (setq user l-user host l-host localname l-localname)) + (with-parsed-tramp-file-name dir nil (save-match-data (let* ((share (tramp-smb-get-share localname)) (ldir (file-name-directory dir))) @@ -564,10 +527,7 @@ (setq directory (directory-file-name (expand-file-name directory))) (unless (file-name-absolute-p directory) (setq directory (concat default-directory directory))) -; (with-parsed-tramp-file-name directory nil - (let (user host localname) - (with-parsed-tramp-file-name directory l - (setq user l-user host l-host localname l-localname)) + (with-parsed-tramp-file-name directory nil (save-match-data (let* ((share (tramp-smb-get-share localname)) (file (tramp-smb-get-localname localname nil))) @@ -597,10 +557,7 @@ (file-exists-p newname)) (error "rename-file: file %s already exists" newname)) -; (with-parsed-tramp-file-name newname nil - (let (user host localname) - (with-parsed-tramp-file-name newname l - (setq user l-user host l-host localname l-localname)) + (with-parsed-tramp-file-name newname nil (save-excursion (let ((share (tramp-smb-get-share localname)) (file (tramp-smb-get-localname localname t))) @@ -636,10 +593,7 @@ (unless (y-or-n-p (format "File %s exists; overwrite anyway? " filename)) (error "File not overwritten"))) -; (with-parsed-tramp-file-name filename nil - (let (user host localname) - (with-parsed-tramp-file-name filename l - (setq user l-user host l-host localname l-localname)) + (with-parsed-tramp-file-name filename nil (save-excursion (let ((share (tramp-smb-get-share localname)) (file (tramp-smb-get-localname localname t)) @@ -969,6 +923,10 @@ Domain names in USER and port numbers in HOST are acknowledged." + (when (and (fboundp 'executable-find) + (not (funcall 'executable-find tramp-smb-program))) + (error "Cannot find command %s in %s" tramp-smb-program exec-path)) + (save-match-data (let* ((buffer (tramp-get-buffer nil tramp-smb-method user host)) (real-user user)
--- a/lisp/net/tramp-util.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/net/tramp-util.el Thu Mar 24 18:41:26 2005 +0000 @@ -34,7 +34,7 @@ ;; Define a Tramp minor mode. It's intention is to redefine some keys for Tramp ;; specific functions, like compilation. -;; The key remapping works since Emacs 22.1 only. Unknown for XEmacs. +;; The key remapping works since Emacs 22 only. Unknown for XEmacs. (when (fboundp 'define-minor-mode) @@ -59,10 +59,10 @@ bindings. Otherwise, only bindings active during invocation are taken into account. XEmacs menubar bindings are not changed by this." (if (functionp 'command-remapping) - ;; Emacs 22.1 + ;; Emacs 22 (eval `(define-key tramp-minor-mode-map [remap ,old-command] new-command)) - ;; previous Emacs 21 versions. + ;; previous Emacs versions. (mapcar '(lambda (x) (define-key tramp-minor-mode-map x new-command))
--- a/lisp/net/tramp-vc.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/net/tramp-vc.el Thu Mar 24 18:41:26 2005 +0000 @@ -1,6 +1,6 @@ ;;; tramp-vc.el --- Version control integration for TRAMP.el -;; Copyright (C) 2000, 2001, 2002, 2003, 2004 by Free Software Foundation, Inc. +;; Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005 by Free Software Foundation, Inc. ;; Author: Daniel Pittman <daniel@danann.net> ;; Keywords: comm, processes @@ -409,7 +409,7 @@ ;; boundness-checking into this function? (let* ((file (symbol-value 'file)) (remote-uid - ;; With Emacs 22.1, `file-attributes' has got an optional parameter + ;; With Emacs 22, `file-attributes' has got an optional parameter ;; ID-FORMAT. Handle this case backwards compatible. (if (and (functionp 'subr-arity) (= 2 (cdr (funcall (symbol-function 'subr-arity)
--- a/lisp/net/tramp.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/net/tramp.el Thu Mar 24 18:41:26 2005 +0000 @@ -47,16 +47,12 @@ ;; Also see the todo list at the bottom of this file. ;; ;; The current version of Tramp can be retrieved from the following URL: -;; http://savannah.nongnu.org/download/tramp/ +;; http://ftp.gnu.org/gnu/tramp/ ;; ;; There's a mailing list for this, as well. Its name is: -;; tramp-devel@mail.freesoftware.fsf.org -;; Send a mail with `help' in the subject (!) to the administration -;; address for instructions on joining the list. The administration -;; address is: -;; tramp-devel-request@mail.freesoftware.fsf.org -;; You can also use the Web to subscribe, under the following URL: -;; http://mail.freesoftware.fsf.org/mailman/listinfo/tramp-devel +;; tramp-devel@gnu.org +;; You can use the Web to subscribe, under the following URL: +;; http://lists.gnu.org/mailman/listinfo/tramp-devel ;; ;; For the adventurous, the current development sources are available ;; via CVS. You can find instructions about this at the following URL: @@ -3501,7 +3497,7 @@ This will break if COMMAND prints a newline, followed by the value of `tramp-end-of-output', followed by another newline." ;; Asynchronous processes are far from being perfect. But it works at least - ;; for `find-grep-dired' and `find-name-dired' in Emacs 22.1. + ;; for `find-grep-dired' and `find-name-dired' in Emacs 22. (if (tramp-tramp-file-p default-directory) (with-parsed-tramp-file-name default-directory nil (let ((asynchronous (string-match "[ \t]*&[ \t]*\\'" command)) @@ -4108,7 +4104,7 @@ (list 'dired-call-process ; Emacs only 'shell-command - ; Post Emacs 21.3 only + ; Emacs 22 only 'process-file ; XEmacs only 'dired-print-file 'dired-shell-call-process)) @@ -4213,7 +4209,7 @@ (defun tramp-repair-jka-compr () "If jka-compr is already loaded, move it to the front of -`file-name-handler-alist'. On Emacs 22.1 or so this will not be +`file-name-handler-alist'. On Emacs 22 or so this will not be necessary anymore." (let ((jka (rassoc 'jka-compr-handler file-name-handler-alist))) (when jka @@ -6937,8 +6933,8 @@ (tramp-make-auto-save-file-name (buffer-file-name))) ad-do-it)) -;; In Emacs < 22.1 and XEmacs < 21.5 autosaved remote files have -;; permission 666 minus umask. This is a security threat. +;; In Emacs < 22 and XEmacs < 21.5 autosaved remote files have +;; permission 0666 minus umask. This is a security threat. (defun tramp-set-auto-save-file-modes () "Set permissions of autosaved remote files to the original permissions." @@ -6946,20 +6942,18 @@ (when (and (stringp bfn) (tramp-tramp-file-p bfn) (stringp buffer-auto-save-file-name) - (not (equal bfn buffer-auto-save-file-name)) - (not (file-exists-p buffer-auto-save-file-name))) - (write-region "" nil buffer-auto-save-file-name) + (not (equal bfn buffer-auto-save-file-name))) + (unless (file-exists-p buffer-auto-save-file-name) + (write-region "" nil buffer-auto-save-file-name)) + ;; Permissions should be set always, because there might be an old + ;; auto-saved file belonging to another original file. This could + ;; be a security threat. (set-file-modes buffer-auto-save-file-name (file-modes bfn))))) (unless (or (> emacs-major-version 21) (and (featurep 'xemacs) (= emacs-major-version 21) - (> emacs-minor-version 4)) - (and (not (featurep 'xemacs)) - (= emacs-major-version 21) - (or (> emacs-minor-version 3) - (and (string-match "^21\\.3\\.\\([0-9]+\\)" emacs-version) - (>= (string-to-int (match-string 1 emacs-version)) 50))))) + (> emacs-minor-version 4))) (add-hook 'auto-save-hook 'tramp-set-auto-save-file-modes)) (defun tramp-subst-strs-in-string (alist string) @@ -7206,72 +7200,73 @@ "Submit a bug report to the TRAMP developers." (interactive) (require 'reporter) - (let ((reporter-prompt-for-summary-p t)) - (reporter-submit-bug-report - tramp-bug-report-address ; to-address - (format "tramp (%s)" tramp-version) ; package name and version - `(;; Current state - tramp-ls-command - tramp-test-groks-nt - tramp-file-exists-command - tramp-current-multi-method - tramp-current-method - tramp-current-user - tramp-current-host - - ;; System defaults - tramp-auto-save-directory ; vars to dump - tramp-default-method - tramp-rsh-end-of-line - tramp-default-password-end-of-line - tramp-remote-path - tramp-login-prompt-regexp - tramp-password-prompt-regexp - tramp-wrong-passwd-regexp - tramp-yesno-prompt-regexp - tramp-yn-prompt-regexp - tramp-terminal-prompt-regexp - tramp-out-of-band-prompt-regexp - tramp-temp-name-prefix - tramp-file-name-structure - tramp-file-name-regexp - tramp-multi-file-name-structure - tramp-multi-file-name-hop-structure - tramp-multi-methods - tramp-multi-connection-function-alist - tramp-methods - tramp-end-of-output - tramp-coding-commands - tramp-actions-before-shell - tramp-actions-copy-out-of-band - tramp-multi-actions - tramp-terminal-type - tramp-shell-prompt-pattern - tramp-chunksize - ,(when (boundp 'tramp-backup-directory-alist) - 'tramp-backup-directory-alist) - ,(when (boundp 'tramp-bkup-backup-directory-info) - 'tramp-bkup-backup-directory-info) - - ;; Non-tramp variables of interest - shell-prompt-pattern - backup-by-copying - backup-by-copying-when-linked - backup-by-copying-when-mismatch - ,(when (boundp 'backup-by-copying-when-privileged-mismatch) - 'backup-by-copying-when-privileged-mismatch) - ,(when (boundp 'password-cache) - 'password-cache) - ,(when (boundp 'password-cache-expiry) - 'password-cache-expiry) - ,(when (boundp 'backup-directory-alist) - 'backup-directory-alist) - ,(when (boundp 'bkup-backup-directory-info) - 'bkup-backup-directory-info) - file-name-handler-alist) - nil ; pre-hook - nil ; post-hook - "\ + (catch 'dont-send + (let ((reporter-prompt-for-summary-p t)) + (reporter-submit-bug-report + tramp-bug-report-address ; to-address + (format "tramp (%s)" tramp-version) ; package name and version + `(;; Current state + tramp-ls-command + tramp-test-groks-nt + tramp-file-exists-command + tramp-current-multi-method + tramp-current-method + tramp-current-user + tramp-current-host + + ;; System defaults + tramp-auto-save-directory ; vars to dump + tramp-default-method + tramp-rsh-end-of-line + tramp-default-password-end-of-line + tramp-remote-path + tramp-login-prompt-regexp + tramp-password-prompt-regexp + tramp-wrong-passwd-regexp + tramp-yesno-prompt-regexp + tramp-yn-prompt-regexp + tramp-terminal-prompt-regexp + tramp-out-of-band-prompt-regexp + tramp-temp-name-prefix + tramp-file-name-structure + tramp-file-name-regexp + tramp-multi-file-name-structure + tramp-multi-file-name-hop-structure + tramp-multi-methods + tramp-multi-connection-function-alist + tramp-methods + tramp-end-of-output + tramp-coding-commands + tramp-actions-before-shell + tramp-actions-copy-out-of-band + tramp-multi-actions + tramp-terminal-type + tramp-shell-prompt-pattern + tramp-chunksize + ,(when (boundp 'tramp-backup-directory-alist) + 'tramp-backup-directory-alist) + ,(when (boundp 'tramp-bkup-backup-directory-info) + 'tramp-bkup-backup-directory-info) + + ;; Non-tramp variables of interest + shell-prompt-pattern + backup-by-copying + backup-by-copying-when-linked + backup-by-copying-when-mismatch + ,(when (boundp 'backup-by-copying-when-privileged-mismatch) + 'backup-by-copying-when-privileged-mismatch) + ,(when (boundp 'password-cache) + 'password-cache) + ,(when (boundp 'password-cache-expiry) + 'password-cache-expiry) + ,(when (boundp 'backup-directory-alist) + 'backup-directory-alist) + ,(when (boundp 'bkup-backup-directory-info) + 'bkup-backup-directory-info) + file-name-handler-alist) + nil ; pre-hook + 'tramp-append-tramp-buffers ; post-hook + "\ Enter your bug report in this message, including as much detail as you possibly can about the problem, what you did to cause it and what the local and remote machines are. @@ -7286,7 +7281,73 @@ report. --bug report follows this line-- -"))) +")))) + +(defun tramp-append-tramp-buffers () + "Append Tramp buffers into the bug report." + + ;; We load mml.el from Gnus. + (if (featurep 'xemacs) + (load "mml" 'noerror) + (require 'mml nil 'noerror)) + + (when (and + ;; We don't want to add another dependency. + (functionp 'mml-insert-empty-tag) + ;; 2nd parameter since Emacs 22. + (condition-case nil + (list-buffers-noselect nil nil) + (t nil))) + (let ((buffer-list + (delq nil + (mapcar '(lambda (b) + (when (string-match "^\\*\\(debug \\)?tramp/" (buffer-name b)) b)) + (buffer-list)))) + (curbuf (current-buffer))) + + ;; There is at least one Tramp buffer. + (when buffer-list + (switch-to-buffer (list-buffers-noselect nil buffer-list)) + (delete-other-windows) + (setq buffer-read-only nil) + (goto-char (point-max)) + (insert " +The buffer(s) above will be appended to this message. If you don't want +to append a buffer because it contains sensible data, or because the buffer +is too large, you should delete the respective buffer. The buffer(s) will +contain user and host names. Passwords will never be included there.") + + (when (and tramp-debug-buffer (> tramp-verbose 9)) + (insert "\n\n") + (let ((start (point))) + (insert "\ +Please note that you have set `tramp-verbose' to a value greater than 9. +Therefore, the contents of files might be included in the debug buffer(s).") + (add-text-properties start (point) (list 'face 'italic)))) + + (set-buffer-modified-p nil) + (setq buffer-read-only t) + (goto-char (point-min)) + + (if (y-or-n-p "Do you want to append the buffer(s)? ") + ;; OK, let's send. First we delete the buffer list. + (progn + (kill-buffer nil) + (switch-to-buffer curbuf) + (goto-char (point-max)) + (insert "\n\n") + (dolist (buffer buffer-list) + (mml-insert-empty-tag + 'part 'type "text/plain" 'encoding "base64" + 'disposition "attachment" 'buffer (buffer-name buffer) + 'description (buffer-name buffer))) + (set-buffer-modified-p nil)) + + ;; Don't send. Delete the message buffer. + (set-buffer curbuf) + (set-buffer-modified-p nil) + (kill-buffer nil) + (throw 'dont-send nil)))))) (defalias 'tramp-submit-bug 'tramp-bug)
--- a/lisp/net/trampver.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/net/trampver.el Thu Mar 24 18:41:26 2005 +0000 @@ -30,10 +30,10 @@ ;; are auto-frobbed from configure.ac, so you should edit that file and run ;; "autoconf && ./configure" to change them. -(defconst tramp-version "2.0.47" +(defconst tramp-version "2.0.48" "This version of Tramp.") -(defconst tramp-bug-report-address "tramp-devel@mail.freesoftware.fsf.org" +(defconst tramp-bug-report-address "tramp-devel@gnu.org" "Email address to send bug reports to.") (provide 'trampver)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lisp/obsolete/keyswap.el Thu Mar 24 18:41:26 2005 +0000 @@ -0,0 +1,42 @@ +;;; keyswap.el --- swap BS and DEL keys -*- no-byte-compile: t -*- + +;; Copyright (C) 1992 Free Software Foundation, Inc. + +;; Author: Eric S. Raymond <esr@snark.thyrsus.com> +;; Keywords: terminals + +;; This file is part of GNU Emacs. + +;; GNU Emacs is free software; you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation; either version 2, or (at your option) +;; any later version. + +;; GNU Emacs is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with GNU Emacs; see the file COPYING. If not, write to the +;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, +;; Boston, MA 02111-1307, USA. + +;;; Commentary: + +;; This package is meant to be called by other terminal packages. + +;;; Code: + +(let ((the-table (make-string 128 0))) + (let ((i 0)) + (while (< i 128) + (aset the-table i i) + (setq i (1+ i)))) + ;; Swap ^H and DEL + (aset the-table ?\177 ?\^h) + (aset the-table ?\^h ?\177) + (setq keyboard-translate-table the-table)) + +;;; arch-tag: 67cf7009-e23e-421c-9648-078e7277297c +;;; keyswap.el ends here
--- a/lisp/progmodes/dcl-mode.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/progmodes/dcl-mode.el Thu Mar 24 18:41:26 2005 +0000 @@ -78,7 +78,7 @@ (defvar dcl-font-lock-keywords '(("\\<\\(if\\|then\\|else\\|endif\\)\\>" 1 font-lock-keyword-face) - ("\\<f[$][a-z]+\\>" + ("\\<f[$][a-z_]+\\>" 0 font-lock-builtin-face) ("[.]\\(eq\\|not\\|or\\|and\\|lt\\|gt\\|le\\|ge\\|eqs\\|nes\\)[.]" 0 font-lock-builtin-face))
--- a/lisp/progmodes/gdb-ui.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/progmodes/gdb-ui.el Thu Mar 24 18:41:26 2005 +0000 @@ -1160,20 +1160,25 @@ (define-fringe-bitmap 'breakpoint "\x3c\x7e\xff\xff\xff\xff\x7e\x3c")) -(defface breakpoint-enabled-bitmap-face +(defface breakpoint-enabled '((t - :inherit fringe - :foreground "red")) + :foreground "red" + :weight bold)) "Face for enabled breakpoint icon in fringe." :group 'gud) +;; compatibility alias for old name +(put 'breakpoint-enabled-bitmap-face 'face-alias 'breakpoint-enabled) -(defface breakpoint-disabled-bitmap-face - '((t - :inherit fringe - :foreground "grey60")) +(defface breakpoint-disabled + ;; We use different values of grey for different background types, + ;; so that on low-color displays it will end up as something visible + ;; if it has to be approximated. + '((((background dark)) :foreground "grey60") + (((background light)) :foreground "grey40")) "Face for disabled breakpoint icon in fringe." :group 'gud) - +;; compatibility alias for old name +(put 'breakpoint-disabled-bitmap-face 'face-alias 'breakpoint-disabled) ;;-put breakpoint icons in relevant margins (even those set in the GUD buffer) (defun gdb-info-breakpoints-custom () @@ -2194,8 +2199,8 @@ nil (1+ start) `(left-fringe breakpoint ,(if enabled - 'breakpoint-enabled-bitmap-face - 'breakpoint-disabled-bitmap-face))) + 'breakpoint-enabled + 'breakpoint-disabled))) (when (< left-margin-width 2) (save-current-buffer (setq left-margin-width 2) @@ -2232,7 +2237,10 @@ (set-window-margins (get-buffer-window (current-buffer) 0) left-margin-width right-margin-width)))) - (gdb-put-string putstring (1+ start))))) + (gdb-put-string + (propertize putstring + 'face (if enabled 'breakpoint-enabled 'breakpoint-disabled)) + (1+ start))))) (defun gdb-remove-breakpoint-icons (start end &optional remove-margin) (gdb-remove-strings start end)
--- a/lisp/progmodes/idlwave.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/progmodes/idlwave.el Thu Mar 24 18:41:26 2005 +0000 @@ -7926,7 +7926,7 @@ "\n Source information truncated to %d entries." idlwave-rinfo-max-source-lines)) (setq all nil))) - (beginning-of-buffer) + (goto-char (point-min)) (setq buffer-read-only t)) (display-buffer "*Help*") (if (and (setq win (get-buffer-window "*Help*"))
--- a/lisp/progmodes/perl-mode.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/progmodes/perl-mode.el Thu Mar 24 18:41:26 2005 +0000 @@ -207,11 +207,11 @@ '("\\<\\(local\\|my\\)\\>" . font-lock-type-face) ;; ;; Fontify function, variable and file name references. - '("&\\(\\sw+\\)" 1 font-lock-function-name-face) + '("&\\(\\sw+\\(::\\sw+\\)*\\)" 1 font-lock-function-name-face) ;; Additionally underline non-scalar variables. Maybe this is a bad idea. ;;'("[$@%*][#{]?\\(\\sw+\\)" 1 font-lock-variable-name-face) - '("[$*]{?\\(\\sw+\\)" 1 font-lock-variable-name-face) - '("\\([@%]\\|\\$#\\)\\(\\sw+\\)" + '("[$*]{?\\(\\sw+\\(::\\sw+\\)*\\)" 1 font-lock-variable-name-face) + '("\\([@%]\\|\\$#\\)\\(\\sw+\\(::\\sw+\\)*\\)" (2 (cons font-lock-variable-name-face '(underline)))) '("<\\(\\sw+\\)>" 1 font-lock-constant-face) ;; @@ -330,30 +330,34 @@ nil nil state 'syntax-table))) ;; The open/close chars are matched like () [] {} and <>. (let ((parse-sexp-lookup-properties nil)) - (ignore-errors - (with-syntax-table st - (goto-char (nth 8 state)) (forward-sexp 1)) - (when twoargs - (save-excursion - ;; Skip whitespace and make sure that font-lock will - ;; refontify the second part in the proper context. - (put-text-property - (point) (progn (forward-comment (point-max)) (point)) - 'font-lock-multiline t) - ;; - (unless - (save-excursion - (let* ((char2 (char-after)) - (st2 (perl-quote-syntax-table char2))) - (with-syntax-table st2 (forward-sexp 1)) - (put-text-property pos (line-end-position) - 'jit-lock-defer-multiline t) - (looking-at "\\s-*\\sw*e"))) - (put-text-property (point) (1+ (point)) - 'syntax-table - (if (assoc (char-after) - perl-quote-like-pairs) - '(15) '(7))))))))) + (condition-case err + (progn + (with-syntax-table st + (goto-char (nth 8 state)) (forward-sexp 1)) + (when twoargs + (save-excursion + ;; Skip whitespace and make sure that font-lock will + ;; refontify the second part in the proper context. + (put-text-property + (point) (progn (forward-comment (point-max)) (point)) + 'font-lock-multiline t) + ;; + (unless + (save-excursion + (with-syntax-table + (perl-quote-syntax-table (char-after)) + (forward-sexp 1)) + (put-text-property pos (line-end-position) + 'jit-lock-defer-multiline t) + (looking-at "\\s-*\\sw*e")) + (put-text-property (point) (1+ (point)) + 'syntax-table + (if (assoc (char-after) + perl-quote-like-pairs) + '(15) '(7))))))) + ;; The arg(s) is not terminated, so it extends until EOB. + (scan-error (goto-char (point-max)))))) + ;; Point is now right after the arg(s). ;; Erase any syntactic marks within the quoted text. (put-text-property pos (1- (point)) 'syntax-table nil) (when (eq (char-before (1- (point))) ?$) @@ -649,20 +653,7 @@ ((looking-at (or nochange perl-nochange)) 0) (t (skip-chars-forward " \t\f") - (cond ((looking-at "\\(\\w\\|\\s_\\)+:[^:]") - (setq indent (max 1 (+ indent perl-label-offset)))) - ((= (char-syntax (following-char)) ?\)) - (setq indent - (save-excursion - (forward-char 1) - (forward-sexp -1) - (forward-char 1) - (if (perl-hanging-paren-p) - (- indent perl-indent-level) - (forward-char -1) - (current-column))))) - ((= (following-char) ?{) - (setq indent (+ indent perl-brace-offset)))) + (setq indent (perl-indent-new-calculate nil indent bof)) (- indent (current-column))))) (skip-chars-forward " \t\f") (if (and (numberp shift-amt) (/= 0 shift-amt)) @@ -698,13 +689,30 @@ (save-excursion (skip-syntax-backward " (") (not (bolp))))) +(defun perl-indent-new-calculate (&optional virtual default parse-start) + (or + (and virtual (save-excursion (skip-chars-backward " \t") (bolp)) + (current-column)) + (and (looking-at "\\(\\w\\|\\s_\\)+:[^:]") + (max 1 (+ (or default (perl-calculate-indent parse-start)) + perl-label-offset))) + (and (= (char-syntax (following-char)) ?\)) + (save-excursion + (forward-char 1) + (forward-sexp -1) + (perl-indent-new-calculate 'virtual nil parse-start))) + (and (and (= (following-char) ?{) + (save-excursion (forward-char) (perl-hanging-paren-p))) + (+ (or default (perl-calculate-indent parse-start)) + perl-brace-offset)) + (or default (perl-calculate-indent parse-start)))) + (defun perl-calculate-indent (&optional parse-start) "Return appropriate indentation for current line as Perl code. In usual case returns an integer: the column to indent to. Returns (parse-state) if line starts inside a string. Optional argument PARSE-START should be the position of `beginning-of-defun'." (save-excursion - (beginning-of-line) (let ((indent-point (point)) (case-fold-search nil) (colon-line-end 0)
--- a/lisp/ps-print.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/ps-print.el Thu Mar 24 18:41:26 2005 +0000 @@ -1,7 +1,7 @@ ;;; ps-print.el --- print text from the buffer as PostScript ;; Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -;; 2003, 2004 Free Software Foundation, Inc. +;; 2003, 2004, 2005 Free Software Foundation, Inc. ;; Author: Jim Thompson (was <thompson@wg2.waii.com>) ;; Jacques Duthen (was <duthen@cegelec-red.fr>) @@ -10,12 +10,12 @@ ;; Maintainer: Kenichi Handa <handa@etl.go.jp> (multi-byte characters) ;; Vinicius Jose Latorre <viniciusjl@ig.com.br> ;; Keywords: wp, print, PostScript -;; Time-stamp: <2004/07/21 23:12:05 vinicius> -;; Version: 6.6.5 +;; Time-stamp: <2005/03/19 00:40:12 vinicius> +;; Version: 6.6.6 ;; X-URL: http://www.cpqd.com.br/~vinicius/emacs/ -(defconst ps-print-version "6.6.5" - "ps-print.el, v 6.6.5 <2004/07/21 vinicius> +(defconst ps-print-version "6.6.6" + "ps-print.el, v 6.6.6 <2005/03/19 vinicius> Vinicius's last change version -- this file may have been edited as part of Emacs without changes to the version number. When reporting bugs, please also @@ -4833,12 +4833,12 @@ ;; Functions are called -- they should return strings; they will be inserted ;; as strings and the PS string delimiters added. - ((and (symbolp content) (fboundp content)) - (if (fboundp ps-encode-header-string-function) - (dolist (l (funcall ps-encode-header-string-function - (funcall content) fonttag)) - (ps-output-string l)) - (ps-output-string (funcall content)))) + ((fboundp content) + (if (fboundp ps-encode-header-string-function) + (dolist (l (funcall ps-encode-header-string-function + (funcall content) fonttag)) + (ps-output-string l)) + (ps-output-string (funcall content)))) ;; Variables will have their contents inserted. They should contain ;; strings, and will be inserted as strings.
--- a/lisp/recentf.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/recentf.el Thu Mar 24 18:41:26 2005 +0000 @@ -1,6 +1,6 @@ ;;; recentf.el --- setup a menu of recently opened files -;; Copyright (C) 1999, 2000, 2001, 2002, 2003 +;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2005 ;; Free Software Foundation, Inc. ;; Author: David Ponce <david@dponce.com> @@ -84,6 +84,22 @@ :group 'recentf :type '(repeat (choice regexp function))) +(defcustom recentf-keep + '(file-readable-p) + "*List of regexps and predicates for filenames kept in the recent list. +Regexps and predicates are tried in the specified order. +When nil all filenames are kept in the recent list. +When a filename matches any of the regexps or satisfies any of the +predicates it is kept in the recent list. +The default is to keep readable files. +A predicate is a function that is passed a filename to check and that +must return non-nil to keep it. For example, you can add the +`file-remote-p' predicate in front of this list to keep remote file +names in the recent list without checking their readability through a +remote access." + :group 'recentf + :type '(repeat (choice regexp function))) + (defun recentf-menu-customization-changed (variable value) "Function called when the recentf menu customization has changed. Set VARIABLE with VALUE, and force a rebuild of the recentf menu." @@ -114,9 +130,9 @@ (const :tag "Last" nil)) :set 'recentf-menu-customization-changed) -(defcustom recentf-menu-action 'recentf-find-file +(defcustom recentf-menu-action 'find-file "*Function to invoke with a filename item of the recentf menu. -The default is to call `recentf-find-file' to edit the selected file." +The default is to call `find-file' to edit the selected file." :group 'recentf :type 'function :set 'recentf-menu-customization-changed) @@ -194,17 +210,6 @@ 'recentf-menu-append-commands-flag "22.1") -(defcustom recentf-keep-non-readable-files-flag nil - "*non-nil means to keep non readable files in the recent list." - :group 'recentf - :type 'boolean) - -(defvaralias 'recentf-keep-non-readable-files-p - 'recentf-keep-non-readable-files-flag) -(make-obsolete-variable 'recentf-keep-non-readable-files-p - 'recentf-keep-non-readable-files-flag - "22.1") - (defcustom recentf-auto-cleanup 'mode "*Define when to automatically cleanup the recent list. The following values can be set: @@ -351,56 +356,56 @@ (funcall recentf-filename-handler filename)) filename))) -(defsubst recentf-file-readable-p (filename) - "Return t if file FILENAME exists and you can read it. -Like the function `file-readable-p' but return nil on error." - (condition-case nil - (file-readable-p filename) - (error nil))) - (defun recentf-include-p (filename) "Return non-nil if FILENAME should be included in the recent list. That is, if it doesn't match any of the `recentf-exclude' checks." (let ((case-fold-search recentf-case-fold-search) (checks recentf-exclude) - (keepit t) - check) + (keepit t)) (while (and checks keepit) - (setq check (car checks) - checks (cdr checks) - keepit (not (if (stringp check) - ;; A regexp - (string-match check filename) - ;; A predicate - (funcall check filename))))) + (setq keepit (condition-case nil + (not (if (stringp (car checks)) + ;; A regexp + (string-match (car checks) filename) + ;; A predicate + (funcall (car checks) filename))) + (error nil)) + checks (cdr checks))) + keepit)) + +(defun recentf-keep-p (filename) + "Return non-nil if FILENAME should be kept in the recent list. +That is, if it matches any of the `recentf-keep' checks." + (let* ((case-fold-search recentf-case-fold-search) + (checks recentf-keep) + (keepit (null checks))) + (while (and checks (not keepit)) + (setq keepit (condition-case nil + (if (stringp (car checks)) + ;; A regexp + (string-match (car checks) filename) + ;; A predicate + (funcall (car checks) filename)) + (error nil)) + checks (cdr checks))) keepit)) (defsubst recentf-add-file (filename) "Add or move FILENAME at the beginning of the recent list. -Does nothing if the name satisfies any of the `recentf-exclude' regexps or -predicates." +Does nothing if the name satisfies any of the `recentf-exclude' +regexps or predicates." (setq filename (recentf-expand-file-name filename)) (when (recentf-include-p filename) (recentf-push filename))) -(defsubst recentf-remove-if-non-readable (filename) - "Remove FILENAME from the recent list, if file is not readable. +(defsubst recentf-remove-if-non-kept (filename) + "Remove FILENAME from the recent list, if file is not kept. Return non-nil if FILENAME has been removed." - (unless (recentf-file-readable-p filename) + (unless (recentf-keep-p filename) (let ((m (recentf-string-member (recentf-expand-file-name filename) recentf-list))) (and m (setq recentf-list (delq (car m) recentf-list)))))) -(defun recentf-find-file (filename) - "Edit file FILENAME using `find-file'. -If the file does not exist or is non readable, and -`recentf-keep-non-readable-files-flag' is nil, it is not edited and -its name is removed from the recent list." - (if (and (not recentf-keep-non-readable-files-flag) - (recentf-remove-if-non-readable filename)) - (message "File `%s' not found" filename) - (find-file filename))) - (defsubst recentf-directory-compare (f1 f2) "Compare absolute filenames F1 and F2. First compare directories, then filenames sans directory. @@ -417,7 +422,7 @@ (defvar recentf-menu-items-for-commands (list ["Cleanup list" recentf-cleanup - :help "Remove all non-readable and excluded files from the recent list" + :help "Remove all excluded and non-kept files from the recent list" :active t] ["Edit list..." recentf-edit-list @@ -933,11 +938,9 @@ (defun recentf-track-closed-file () "Update the recent list when a buffer is killed. -That is, remove a non readable file from the recent list, if -`recentf-keep-non-readable-files-flag' is nil." +That is, remove a non kept file from the recent list." (and buffer-file-name - (not recentf-keep-non-readable-files-flag) - (recentf-remove-if-non-readable buffer-file-name))) + (recentf-remove-if-non-kept buffer-file-name))) (defun recentf-update-menu () "Update the recentf menu from the current recent list." @@ -1164,16 +1167,18 @@ recentf-list)))))) (defun recentf-cleanup () - "Remove all excluded or non-readable files from the recent list." + "Remove all non-kept and excluded files from the recent list." (interactive) (message "Cleaning up the recentf list...") - (let (newlist) + (let ((n 0) newlist) (dolist (f recentf-list) - (if (and (recentf-include-p f) (recentf-file-readable-p f)) + (if (and (recentf-include-p f) + (recentf-keep-p f)) (push f newlist) + (setq n (1+ n)) (message "File %s removed from the recentf list" f))) - (setq recentf-list (nreverse newlist)) - (message "Cleaning up the recentf list...done"))) + (message "Cleaning up the recentf list...done (%d removed)" n) + (setq recentf-list (nreverse newlist)))) ;;;###autoload (define-minor-mode recentf-mode
--- a/lisp/simple.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/simple.el Thu Mar 24 18:41:26 2005 +0000 @@ -735,9 +735,10 @@ (defun goto-line (arg &optional buffer) "Goto line ARG, counting from line 1 at beginning of buffer. -Normally, move point in the curren buffer. -With just C-u as argument, move point in the most recently displayed -other buffer, and switch to it. +Normally, move point in the current buffer. +With just \\[universal-argument] as argument, move point in the most recently +displayed other buffer, and switch to it. When called from Lisp code, +the optional argument BUFFER specifies a buffer to switch to. If there's a number in the buffer at point, it is the default for ARG." (interactive
--- a/lisp/subr.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/subr.el Thu Mar 24 18:41:26 2005 +0000 @@ -2750,7 +2750,9 @@ (min-value (aref parameters 1)) (max-value (aref parameters 2)) (one-percent (/ (- max-value min-value) 100.0)) - (percentage (truncate (/ (- value min-value) one-percent))) + (percentage (if (= max-value min-value) + 0 + (truncate (/ (- value min-value) one-percent)))) (update-time (aref parameters 0)) (current-time (float-time)) (enough-time-passed
--- a/lisp/term/keyswap.el Sat Mar 19 02:42:17 2005 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,42 +0,0 @@ -;;; keyswap.el --- swap BS and DEL keys -*- no-byte-compile: t -*- - -;; Copyright (C) 1992 Free Software Foundation, Inc. - -;; Author: Eric S. Raymond <esr@snark.thyrsus.com> -;; Keywords: terminals - -;; This file is part of GNU Emacs. - -;; GNU Emacs is free software; you can redistribute it and/or modify -;; it under the terms of the GNU General Public License as published by -;; the Free Software Foundation; either version 2, or (at your option) -;; any later version. - -;; GNU Emacs is distributed in the hope that it will be useful, -;; but WITHOUT ANY WARRANTY; without even the implied warranty of -;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -;; GNU General Public License for more details. - -;; You should have received a copy of the GNU General Public License -;; along with GNU Emacs; see the file COPYING. If not, write to the -;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, -;; Boston, MA 02111-1307, USA. - -;;; Commentary: - -;; This package is meant to be called by other terminal packages. - -;;; Code: - -(let ((the-table (make-string 128 0))) - (let ((i 0)) - (while (< i 128) - (aset the-table i i) - (setq i (1+ i)))) - ;; Swap ^H and DEL - (aset the-table ?\177 ?\^h) - (aset the-table ?\^h ?\177) - (setq keyboard-translate-table the-table)) - -;;; arch-tag: 67cf7009-e23e-421c-9648-078e7277297c -;;; keyswap.el ends here
--- a/lisp/textmodes/flyspell.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/textmodes/flyspell.el Thu Mar 24 18:41:26 2005 +0000 @@ -282,7 +282,7 @@ (t (save-excursion (beginning-of-line) - (not (looking-at "[>}|]\\To:"))))))) + (not (looking-at "[>}|]\\|To:"))))))) ;*--- texinfo mode ----------------------------------------------------*/ (put 'texinfo-mode 'flyspell-mode-predicate 'texinfo-mode-flyspell-verify)
--- a/lisp/textmodes/tex-mode.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/textmodes/tex-mode.el Thu Mar 24 18:41:26 2005 +0000 @@ -2237,6 +2237,9 @@ (interactive) (or tex-dvi-view-command (error "You must set `tex-dvi-view-command'")) + ;; Restart the TeX shell if necessary. + (or (tex-shell-running) + (tex-start-shell)) (let ((tex-dvi-print-command (eval tex-dvi-view-command))) (tex-print)))
--- a/lisp/tooltip.el Sat Mar 19 02:42:17 2005 +0000 +++ b/lisp/tooltip.el Thu Mar 24 18:41:26 2005 +0000 @@ -454,7 +454,7 @@ expr))))))) (defun gdb-tooltip-print () - (tooltip-show + (tooltip-show (with-current-buffer (gdb-get-buffer 'gdb-partial-output-buffer) (let ((string (buffer-string))) ;; remove newline for tooltip-use-echo-area @@ -477,6 +477,8 @@ (string-match "^mouse-2" msg)) (setq mp (mouse-pixel-position)) (consp (setq pos (cdr mp))) + (car pos) (>= (car pos) 0) + (cdr pos) (>= (cdr pos) 0) (setq pos (posn-at-x-y (car pos) (cdr pos) (car mp))) (windowp (posn-window pos))) (with-current-buffer (window-buffer (posn-window pos))
--- a/lispref/ChangeLog Sat Mar 19 02:42:17 2005 +0000 +++ b/lispref/ChangeLog Thu Mar 24 18:41:26 2005 +0000 @@ -1,3 +1,31 @@ +2005-03-23 Kim F. Storm <storm@cua.dk> + + * display.texi (Standard Faces): Other faces used in the fringe + implicitly inherits from the fringe face. + (Fringe Bitmaps): FACE in right-fringe and left-fringe display + properties implicitly inherits from fringe face. + (Customizing Bitmaps): Likewise for set-fringe-bitmap-face. + +2005-03-20 Chong Yidong <cyd@stupidchicken.com> + + * display.texi (Invisible Text): State default value of + line-move-ignore-invisible. + (Managing Overlays): Document remove-overlays. + (Standard Faces): Document escape-glyph face. + + * minibuf.texi (Reading File Names): Document + read-file-name-function. + + * modes.texi (Other Font Lock Variables): Document + font-lock-lines-before. + + * positions.texi (Skipping Characters): skip-chars-forward allows + character classes. + +2005-03-18 Lute Kamstra <lute@gnu.org> + + * edebug.texi (Instrumenting Macro Calls): Fix another typo. + 2005-03-17 Richard M. Stallman <rms@gnu.org> * text.texi (Undo): Document extensible undo entries.
--- a/lispref/anti.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/lispref/anti.texi Thu Mar 24 18:41:26 2005 +0000 @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 2005 Free Software Foundation, Inc. +@c Copyright (C) 1999, 2005 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. @c This node must have no pointers.
--- a/lispref/display.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/lispref/display.texi Thu Mar 24 18:41:26 2005 +0000 @@ -753,8 +753,8 @@ Ordinarily, functions that operate on text or move point do not care whether the text is invisible. The user-level line motion commands explicitly ignore invisible newlines if -@code{line-move-ignore-invisible} is non-@code{nil}, but only because -they are explicitly programmed to do so. +@code{line-move-ignore-invisible} is non-@code{nil} (the default), but +only because they are explicitly programmed to do so. However, if a command ends with point inside or immediately after invisible text, the main editing loop moves point further forward or @@ -1138,6 +1138,18 @@ ``lost''. @end defun +@defun remove-overlays &optional start end name value +This function removes all the overlays between @var{start} and +@var{end} whose property @var{name} has the value @var{value}. It can +move the endpoints of the overlays in the region, or split them. + +If @var{name} is omitted or nil, it means to delete all overlays in +the specified region. If @var{start} and/or @var{end} are omitted or +nil, that means the beginning and end of the buffer respectively. +Therefore, @code{(remove-overlays)} removes all the overlays in the +current buffer. +@end defun + Here are some examples: @example @@ -1685,6 +1697,8 @@ @kindex fringe @r{(face name)} This face controls the default colors of window fringes, the thin areas on either side that are used to display continuation and truncation glyphs. +Other faces used to display bitmaps in the fringe implicitly inherits from +this face. @item minibuffer-prompt @kindex minibuffer-prompt @r{(face name)} @@ -1718,6 +1732,10 @@ @kindex trailing-whitespace @r{(face name)} This face is used to display excess whitespace at the end of a line, if @code{show-trailing-whitespace} is non-@code{nil}. + +@item escape-glyph +@kindex escape-glyph @r{(face name)} +This face is used to display control characters and escape glyphs. @end table In contrast, these faces are provided to change the appearance of text @@ -2817,7 +2835,10 @@ @code{(right-fringe @var{bitmap} [@var{face}])} (@pxref{Display Property}). Here, @var{bitmap} is a symbol identifying the bitmap you want, and @var{face} (which is optional) is the name of the face -whose colors should be used for displaying the bitmap. +whose colors should be used for displaying the bitmap, instead of the +default @code{fringe} face. When specified, @var{face} implicitly +inherits from the @code{fringe} face, so normally @var{face} only +specifies the foreground color for the bitmap. These are the symbols identify the standard fringe bitmaps. Evaluate @code{(require 'fringe)} to define them. Fringe bitmap @@ -2907,8 +2928,8 @@ If @var{face} is @code{nil}, it selects the @code{fringe} face. The bitmap's face controls the color to draw it in. -The face you use here should be derived from @code{fringe}, and should -specify only the foreground color. +The @var{face} implicitly inherits from the @code{fringe} face, +so normally @var{face} should specifu only the foreground color. @end defun @node Overlay Arrow
--- a/lispref/edebug.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/lispref/edebug.texi Thu Mar 24 18:41:26 2005 +0000 @@ -1082,7 +1082,7 @@ (defmacro for (var from init to final do &rest body) "Execute a simple \"for\" loop. For example, (for i from 1 to 10 do (print i))." - (declare (debug symbolp "from" form "to" form "do" &rest form)) + (declare (debug (symbolp "from" form "to" form "do" &rest form))) ...) @end example
--- a/lispref/minibuf.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/lispref/minibuf.texi Thu Mar 24 18:41:26 2005 +0000 @@ -1289,6 +1289,13 @@ as the string @code{"/gp/gnu/elisp/manual.texi"}. @end defun +@defvar read-file-name-function +If non-@code{nil}, this should be a function that accepts the same +arguments as @code{read-file-name}. When @code{read-file-name} is +called, it calls this function with the supplied arguments instead of +doing its usual work. +@end defvar + @defun read-directory-name prompt &optional directory default existing initial This function is like @code{read-file-name} but allows only directory names as completion possibilities.
--- a/lispref/modes.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/lispref/modes.texi Thu Mar 24 18:41:26 2005 +0000 @@ -2381,6 +2381,14 @@ multiple lines, but this is too obscure to document in this manual. @end defvar +@defvar font-lock-lines-before +This variable specifies the number of extra lines to consider when +refontifying the buffer after each text change. Font lock begins +refontifying from that number of lines before the changed region. The +default is 1, but using a larger value can be useful for coping with +multi-line patterns. +@end defvar + @node Levels of Font Lock @subsection Levels of Font Lock
--- a/lispref/positions.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/lispref/positions.texi Thu Mar 24 18:41:26 2005 +0000 @@ -770,7 +770,8 @@ terminate it, and @samp{\} quotes @samp{^}, @samp{-} or @samp{\}. Thus, @code{"a-zA-Z"} skips over all letters, stopping before the first nonletter, and @code{"^a-zA-Z"} skips nonletters stopping before -the first letter. @xref{Regular Expressions}. +the first letter. See @xref{Regular Expressions}. Character classes +can also be used, e.g. @code{"[:alnum:]"}. See @pxref{Char Classes}. If @var{limit} is supplied (it must be a number or a marker), it specifies the maximum position in the buffer that point can be skipped
--- a/lwlib/ChangeLog Sat Mar 19 02:42:17 2005 +0000 +++ b/lwlib/ChangeLog Thu Mar 24 18:41:26 2005 +0000 @@ -1,3 +1,10 @@ +2005-03-22 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xlwmenuP.h: Temporary #undef HAVE_X_I18N until FontSet for UTF-8 + on XFree86 is investigated. + + * xlwmenu.c: Ditto. + 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca> Add support for I18N to Lucid menus.
--- a/lwlib/xlwmenu.c Sat Mar 19 02:42:17 2005 +0000 +++ b/lwlib/xlwmenu.c Thu Mar 24 18:41:26 2005 +0000 @@ -131,6 +131,9 @@ /* FIXME: F10 should enter the menu, the first one in the menu-bar. */ +/* FIXME: HAVE_X_I18N does not work yet. */ +#undef HAVE_X_I18N + #define offset(field) XtOffset(XlwMenuWidget, field) static XtResource xlwMenuResources[] =
--- a/lwlib/xlwmenuP.h Sat Mar 19 02:42:17 2005 +0000 +++ b/lwlib/xlwmenuP.h Thu Mar 24 18:41:26 2005 +0000 @@ -24,6 +24,9 @@ #include "xlwmenu.h" #include <X11/CoreP.h> +/* FIXME: HAVE_X_I18N does not work yet. */ +#undef HAVE_X_I18N + /* Elements in the stack arrays. */ typedef struct _window_state {
--- a/man/ChangeLog Sat Mar 19 02:42:17 2005 +0000 +++ b/man/ChangeLog Thu Mar 24 18:41:26 2005 +0000 @@ -1,3 +1,124 @@ +2005-03-23 Lute Kamstra <lute@gnu.org> + + * search.texi (Non-ASCII Isearch): Rename from Non-Ascii Isearch. + +2005-03-23 Richard M. Stallman <rms@gnu.org> + + * url.texi (HTTP language/coding): Improve last change. + + * search.texi: Delete explicit node pointers. + (Incremental Search): New menu. + (Basic Isearch, Repeat Isearch, Error in Isearch) + (Non-Ascii Isearch, Isearch Yank, Highlight Isearch, Isearch Scroll) + (Slow Isearch): New subnodes. + (Configuring Scrolling): Node deleted. + (Search Case): Doc default-case-fold-search. + (Regexp Replace): Move replace-regexp doc here. + + * rmail.texi (Movemail): Put commas inside closequotes. + + * picture.texi (Insert in Picture): Document C-c arrow combos. + (Basic Picture): Clarify erasure. + + * display.texi (Font Lock): Put commas inside closequotes. + + * cmdargs.texi (General Variables): Put commas inside closequotes. + +2005-03-23 Nick Roberts <nickrob@snap.net.nz> + + * building.texi (Stack Buffer): Mention reverse contrast for + *selected* frame (might not be current frame). + +2005-03-22 Jay Belanger <belanger@truman.edu> + + * calc.texi (Embedded Mode): Add new information on changing + modes. + +2005-03-21 Richard M. Stallman <rms@gnu.org> + + * building.texi (Starting GUD): Add bashdb. + +2005-03-20 Chong Yidong <cyd@stupidchicken.com> + + * basic.texi (Moving Point): Add M-g M-g binding. + (Undo): Document undo-only. + (Position Info): Document M-g M-g and C-u M-g M-g. + + * building.texi (Building): Put Grep Searching after Compilation + Shell. + (Compilation Mode): Document M-n, M-p, M-}, M-{, and C-c C-f bindings. + Document next-error-highlight. + (Grep Searching): Document grep-highlight-matches. + (Lisp Eval): Typing C-x C-e twice prints integers specially. + + * calendar.texi (Importing Diary): Rename node from iCalendar. + Document diary-from-outlook. + + * dired.texi (Misc Dired Features): Rename node from Misc Dired + Commands. + Mention effect of X drag and drop on Dired buffers. + + * files.texi (Visiting): Document large-file-warning-threshold. + Move paragraph on file-selection dialog. + Mention visiting files using X drag and drop. + (Reverting): Mention using Auto-Revert mode to tail files. + Document auto-revert-tail-mode. + (Version Systems): Minor correction. + (Comparing Files): Diff-mode is no longer based on Compilation + mode. + Document compare-ignore-whitespace. + (Misc File Ops): Explain passing a directory to rename-file. + Likewise for copy-file and make-symbolic-link. + + * frames.texi (Wheeled Mice): Mouse wheel support on by default. + Document mouse-wheel-progressive speed. + + * help.texi (Misc Help): Document numeric argument for C-h i. + Correctly explain the effect of just C-u as argument. + + * killing.texi (Deletion): Document numeric argument for + just-one-space. + + * mini.texi (Completion): Completion acts on text before point. + + * misc.texi (Saving Emacs Sessions): Document desktop-restore-eager. + (Emulation): CUA mode replaces pc-bindings-mode, + pc-selection-mode, and s-region. + + * mule.texi (Input Methods): Leim is now built-in. + (Select Input Method): Document quail-show-key. + (Specify Coding): Document revert-buffer-with-coding-system. + + * programs.texi (Fortran Motion): Document f90-next-statement, + f90-previous-statement, f90-next-block, f90-previous-block, + f90-end-of-block, and f90-beginning-of-block. + + * text.texi (Format Faces): Replace old M-g key prefix with M-o. + + * emacs.texi (Acknowledgments): Updated. + + * anti.texi: Total rewrite. + +2005-03-20 Michael Albinus <michael.albinus@gmx.de> + + Sync with Tramp 2.0.48. + + * trampver.texi.in: Replace "Emacs" by "GNU Emacs". + + * tramp.texi: Replace "Emacs" by "GNU Emacs". Replace "Linux" by + "GNU/Linux". Change all addresses to .gnu.org. + (Default Method): Offer shortened syntax for "su" and "sudo" + methods. + +2005-03-19 Chong Yidong <cyd@stupidchicken.com> + + * ack.texi (Acknowledgments): Update. + +2005-03-19 Eli Zaretskii <eliz@gnu.org> + + * anti.texi (Antinews): Refer to Emacs 21.4, not 21.3. Update + copyright years. + 2005-03-14 Nick Roberts <nickrob@snap.net.nz> * building.texi (Commands of GUD): Move paragraph on setting @@ -37,7 +158,7 @@ (Rmail Display): Mention Mouse-1. (Movemail): Clarify two movemail versions. Clarify rmail-movemail-program. - + * pcl-cvs.texi (About PCL-CVS): Get rid of "Emacs 21". (Installation): Node deleted.
--- a/man/ack.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/man/ack.texi Thu Mar 24 18:41:26 2005 +0000 @@ -38,9 +38,10 @@ implemented support for X11. @item -Miles Bader wrote @file{image-file.el}, support code for visiting image -files; and @file{minibuf-eldef.el}, a minor mode whereby the default -value is shown in the minibuffer prompt only when appropriate. +Miles Bader wrote @file{image-file.el}, support code for visiting +image files, @file{minibuf-eldef.el}, a minor mode whereby the default +value is shown in the minibuffer prompt only when appropriate, and +@file{button.el}, the library that implements clickable buttons. @item David Bakhash wrote @file{strokes.el}, a mode for controlling Emacs by @@ -187,8 +188,12 @@ Eric Ding contributed @file{goto-addr.el}, @item +Jan Dj@"{a}rv added support for the GTK+ toolkit and X drag-and-drop. + +@item Carsten Dominik wrote @file{reftex.el}, a package for setting up -labels and cross-references in La@TeX{} documents. +labels and cross-references in La@TeX{} documents, and @file{org.el}, +a mode for maintaining notes, todo lists, and project planning. @item Scott Draves wrote @file{tq.el}, help functions for maintaining @@ -284,6 +289,10 @@ @file{w32-win.el}, support functions for the MS-Windows window system. @item +Juan Le@'{o}n Lahoz Garc@'{i}a wrote @file{wdired.el}, a package for +performing file operations by directly editing Dired buffers. + +@item Howard Gayle wrote: @itemize @minus @@ -319,8 +328,9 @@ @itemize @minus @item -Emacs 19's Common Lisp compatibility packages, replacing the old package -by Cesar Augusto Quiroz Gonzalez, +The Common Lisp compatibility packages, +@item +@code{Calc}, an advanced calculator and mathematical tool, @item @file{complete.el}, a partial completion mechanism, and @item @@ -358,6 +368,10 @@ Odd Gripenstam wrote @file{dcl-mode.el} for editing DCL command files. @item +Kai Gro@ss{}johann wrote the Tramp package, which provides transparent +remote file editing using rcp, ssh, and other network protocols. + +@item Michael Gschwind wrote @file{iso-cvt.el}, a package to convert between the ISO 8859-1 character set and the notations for non-@acronym{ASCII} characters used by @TeX{} and net tradition, and @file{latin-2.el}, code @@ -449,6 +463,10 @@ Seiichiro Inoue improved Emacs's XIM support. @item +Ulf Jasper wrote @file{icalendar.el}, a package for converting Emacs +diary entries to and from the iCalendar format. + +@item Kyle Jones wrote @file{life.el}, a package to play Conway's ``life'' game, and @file{mldrag.el}, a package which allows the user to resize windows by dragging mode lines and vertical window separators with the mouse. @@ -458,11 +476,23 @@ load-path problems when some Lisp file ``shadows'' another. @item -Simon Josefsson wrote @file{flow-fill.el}, a package for interpreting -RFC2646 formatted text in messages, @file{imap.el}, an Emacs Lisp -library for talking to IMAP servers, @file{nnimap}, the IMAP back-end -for Gnus, @file{rfc2104.el}, a hashed message authentication facility, -and @file{fringe.el} a package for customizing the fringe. +Simon Josefsson wrote: + +@itemize @minus +@item +@file{dns-mode.el}, an editing mode for Domain Name System master files, +@item +@file{flow-fill.el}, a package for interpreting RFC2646 formatted text +in messages, +@item +@file{fringe.el}, a package for customizing the fringe, +@item +@file{imap.el}, an Emacs Lisp library for talking to IMAP servers, +@item +@file{nnimap}, the IMAP back-end for Gnus, and +@item +@file{rfc2104.el}, a hashed message authentication facility. +@end itemize @item Tomoji Kagatani implemented @file{smtpmail.el}, used for sending out @@ -479,6 +509,10 @@ those databases to the format used by the LaTeX text formatting package. @item +Taichi Kawabata added support for Devanagari script and the Indian +languages. + +@item Howard Kaye wrote @file{sort.el}, commands to sort text in Emacs buffers. @@ -501,6 +535,10 @@ within Emacs. @item +Pavel Kobiakov wrote @file{flymake.el}, a minor mode for performing +on-the-fly syntax checking. + +@item Larry K.@: Kolodney wrote @file{cvtmail.c}, a program to convert the mail directories used by Gosling Emacs into RMAIL format. @@ -509,6 +547,10 @@ interactive automatic highlighting of parts of the buffer text. @item +Koseki Yoshinori wrote @file{iinline.el}, a minor mode for displaying +inline images. + +@item Robert Krawitz wrote the original @file{xmenu.c}, part of Emacs's pop-up menu support. @@ -548,7 +590,7 @@ James R.@: Larus wrote @file{mh-e.el}, an interface to the MH mail system. @item -Vinicius Jose Latorre wrote: +Vinicius Jose Latorre wrote the Emacs printing facilities, as well as: @itemize @minus @item @@ -581,7 +623,14 @@ that show the same buffer. @item -Dave Love wrote: +Thomas Link wrote @file{filesets.el}, a package for handling sets of +files. + +@item +Dave Love wrote much of the code dealing with Unicode support and +Latin-N unification. He added support for many coding systems, +including those in @file{code-pages.el} and the various UTF-7 and +UTF-16 coding systems. He also wrote: @itemize @minus @item @@ -592,6 +641,8 @@ @file{autoconf.el}, a mode for editing Autoconf @file{configure.in} files, @item +@file{cfengine.el}, a mode for editing Cfengine files, +@item @file{elide-head.el}, a package for eliding boilerplate text, such as copyright notices, from file headers, @item @@ -606,6 +657,8 @@ characters on Latin-1 terminals by setting up appropriate display tables, @item +@file{python.el}, a major mode for the Python programming language. +@item @file{refill.el}, a mode for automatic paragraph refilling, akin to typical word processors, @item @@ -731,7 +784,8 @@ @end itemize @item -Gerd Moellmann wrote: +Gerd Moellmann was the Emacs maintainer from the beginning of Emacs 21 +development until the release of 21.1. He wrote: @itemize @minus @item @@ -748,17 +802,19 @@ @file{authors.el} package for maintaining the @file{AUTHORS} files. @end itemize -Gerd took over the Emacs maintenance as the head maintainer since the -beginning of Emacs 21 development. - @item -Stefan Monnier wrote: +Stefan Monnier added support for Arch, Subversion, and Meta-CVS to VC, +and re-wrote much of the Emacs server to use the built-in networking +primitives. He also wrote: @itemize @minus @item @code{PCL-CVS}, a directory-level front end to the CVS version control system, @item +@file{reveal.el}, a minor mode for automatically revealing invisible +text, +@item @file{smerge-mode.el}, a minor mode for resolving @code{diff3} conflicts, and @item @@ -811,6 +867,14 @@ splitting mechanism. @item +Takaaki Ota wrote @file{table.el}, a package for creating and editing +embedded text-based tables. + +@item +Pieter E.@: J.@: Pareit wrote @file{mixal-mode.el}, an editing mode for +the MIX assembly language. + +@item David Pearson contributed @file{quickurl.el}, a simple method of inserting a URL into the current buffer based on text at point; @file{5x5.el}, a game to fill all squares on the field. @@ -836,8 +900,8 @@ @item William M.@: Perry wrote @file{mailcap.el}, a MIME media types -configuration facility, and @file{mwheel.el}, support for MS -Intellimouse type mice with wheels. +configuration facility, @file{mwheel.el}, a package for supporting +mouse wheels, and the URL package. @item Per Persson wrote @file{gnus-vm.el}, the VM interface for Gnus. @@ -851,6 +915,8 @@ @itemize @minus @item +@file{conf-mode.el}, a major mode for editing configuration files, +@item @file{copyright.el}, a package for updating copyright notices in files, @item @file{executable.el}, a package for executing interpreter scripts, @@ -881,7 +947,9 @@ @item David Ponce wrote @file{recentf.el}, a package that puts a menu of -recently visited files in the Emacs menu bar. +recently visited files in the Emacs menu bar, and +@file{ruler-mode.el}, a minor mode for displaying a ruler in the +header line. @item Francesco A.@: Potorti wrote @file{cmacexp.el}, providing a command which @@ -957,6 +1025,10 @@ the DEC VT line of terminals. @item +Nick Roberts wrote @file{gdb-ui.el}, the graphical user interface to +GDB. + +@item Roland B.@: Roberts contributed much of the VMS support distributed with Emacs 19, along with Joseph M.@: Kelsey, and @file{vms-pmail.el}, support for using Emacs within VMS MAIL. @@ -991,6 +1063,10 @@ @file{sup-mouse.el}, support for the Supdup mouse on lisp machines. @item +Kevin Ryde wrote @file{info-xref.el}, a library for checking +references in Info files. + +@item James B.@: Salem and Brewster Kahle wrote @file{completion.el}, providing dynamic word completion. @@ -1141,6 +1217,22 @@ contexts. @item +Kim F.@: Storm made many improvements to the Emacs display engine, +process support, and networking support. He also wrote: + +@itemize @minus +@item +@file{bindat.el}, a package for encoding and decoding binary data. +@item +@file{cua.el}, which allows Emacs to emulate the standard CUA key +bindings. +@item +@file{ido.el}, a package for selecting buffers and files quickly. +@item +@file{kmacro.el}, the keyboard macro facility. +@end itemize + +@item Martin Stjernholm co-authored CC Mode, a major editing mode for C, C@t{++}, Objective-C, Java, Pike, CORBA IDL, and AWK code. @@ -1161,8 +1253,8 @@ decoding UTF-8 data. @item -Taichi Kawabata wrote support for Devanagari script and the Indian -languages. +Jean-Philippe Theberge wrote @file{thumbs.el}, a package for viewing +image files as ``thumbnails''. @item Jens T.@: Berger Thielemann wrote @file{word-help.el}, which is @@ -1237,6 +1329,10 @@ electric accent keys for text using the ISO-8859 character set. @item +Colin Walters wrote @file{ibuffer.el}, a Dired-like major mode for +operating on buffers. + +@item Barry Warsaw wrote: @itemize @minus @@ -1340,6 +1436,15 @@ to exit with valuable buffers unsaved. @item +Masatake Yamato wrote @file{ld-script.el}, an editing mode for GNU +linker scripts. + +@item +Jonathan Yavner wrote @file{testcover.el}, a package for keeping track +of the testing status of Emacs Lisp code, and the SES spreadsheet +package. + +@item Ilya Zakharevich and Bob Olson contributed @file{cperl-mode.el}, a major mode for editing Perl code. Ilya Zakharevich also wrote @file{tmm.el}, a mode for accessing the Emacs menu bar on a text-mode terminal.
--- a/man/anti.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/man/anti.texi Thu Mar 24 18:41:26 2005 +0000 @@ -1,54 +1,158 @@ @c This is part of the Emacs manual. -@c Copyright (C) 2002 Free Software Foundation, Inc. +@c Copyright (C) 2005 Free Software Foundation, Inc. @c See file emacs.texi for copying conditions. @node Antinews, Mac OS, X Resources, Top -@appendix Emacs 21.3 Antinews +@appendix Emacs 22.1 Antinews For those users who live backwards in time, here is information about -downgrading to Emacs version 21.3. We hope you will enjoy the greater -simplicity that results from the absence of many newer features. +downgrading to Emacs version 21.4. We hope you will enjoy the greater +simplicity that results from the absence of many Emacs 22 features. @itemize @bullet + @item -The input methods for Emacs are included in a separate distribution -called ``Leim''. To use them, you must extract the Leim tar file on -top of the Emacs distribution, into the same directory, before you -build Emacs. +The buffer position and line number are now displayed at the end of +the mode line, where they can be more easily seen. + +@item +The mode line of the selected window is no longer displayed with a +special face. All mode lines are created equal. @item -The file position and line number information is now at the end -of the mode line. +Clicking on a link with the left mouse button (@kbd{mouse-1}) will +always set point at the position clicked, instead of following the +link. If you want to follow the link, use the middle mouse button +(@kbd{mouse-2}). + +@item +Emacs is tired of X droppings. If you drop a file or a piece of text +onto an Emacs window, nothing will happen. + +@item +On an xterm, Emacs provides a more convincing simulation of a text +terminal by not responding to mouse-clicks on the mode-line, +header-line, or display margin. @item -When a file is managed with version control, the command @kbd{C-x C-q} -(whose general meaning is to make a buffer read-only or writable) now -does so by checking the file in or out. Checking the file out makes -the buffer writable; checking it in makes the buffer read-only (at -least with RCS). +For simplicity, windows always have fringes. We wouldn't want to +in-fringe anyone's windows. Likewise, horizontal scrolling always +works in the same automatic way. -You can still use @kbd{C-x v v} to do these operations if you wish; -its meaning is unchanged. If you want to control the buffer's -read-only flag without performing any version control operation, -use @kbd{M-x toggle-read-only}. +@item +The horizontal-bar cursor shape has been removed. + +@item +If command line arguments are given, Emacs will not display a splash +screen, so that you can immediately get on with your editing. The +command-line option @samp{--no-splash} is therefore obsolete, and has +been removed. @item -Filesets are not supported. +The command line options @samp{--color}, @samp{--fullwidth}, +@samp{--fullheight}, @samp{--fullscreen}, @samp{--no-blinking-cursor}, +@samp{--no-desktop}, and @samp{-Q} have also been removed. @item -For simplicity, windows always have fringes. We wouldn't want -to in-fringe anyone's windows. Likewise, horizontal scrolling -always works the same automatic way. +The @samp{--geometry} option applies only to the initial frame, and +the @samp{-f} option will not read arguments for interactive +functions. + +@item +Emacs now looks for @file{.emacs} and @file{.emacs_SHELL} in one +standard location---your home directory. Don't put these files in +@file{~/.emacs.d}; they won't be found. + +@item +Emacs will not read @file{~/.abbrev_defs} automatically. If you want +to load abbrev definitions from a file, you must always do so +explicitly. @item When you are logged in as root, all files now give you writable -buffers in Emacs reflecting the fact that you can write any files. +buffers, reflecting the fact that you can write any files. + +@item +The maximum size of buffers and integer variables has been halved. On +32-bit machines, the maximum buffer size is now 128 megabytes. + +@item +An unquoted @samp{$} in a file name is now an error, if the following +name is not recognized as an environment variable. Thus, +the file name @file{foo$bar} would probably be an error. Meanwhile, +the @code{setenv} command does not expand @samp{$} at all. + +@item +Emacs will not query you if a command accumulates too much undo +information. If Emacs runs out of memory as a result, it will handle +this by crashing. + +@item +Many commands have been removed from the menus or rearranged. + +@item +The @kbd{C-h} (help) subcommands have been rearranged---especially +those that display specific files. Type @kbd{C-h C-h} to see a list +of these commands; that will show you what is different. + +@item +The @kbd{C-h v} and @kbd{C-h f} commands no longer show a hyperlink to +the C source code, even if it is available. If you want to find the +source code, grep for it. + +@item +The apropos commands will not accept a list of words to match, in +order to encourage users to be more specific. Also, the user option +@code{apropos-sort-by-scores} has been removed. + +@item +The minibuffer prompt is now displayed using the default face. +The colon is enough to show you what part is the prompt. @item -Unicode support and unification between Latin-@var{n} character -sets have been removed. Cutting and pasting X selections does not -support ``extended segments'' so there are certain coding systems -it cannot handle. +Minibuffer completion commands always complete the entire minibuffer +contents, just as if you had typed them at the end of the minibuffer, +no matter where point is actually located. + +@item +The command @code{backward-kill-sexp} is now bound to @kbd{C-M-delete} +and @kbd{C-M-backspace}. Be careful when using these key sequences! +It may shut down your X server, or reboot your operating system. + +@item +Commands to set the mark at a place away from point, including +@kbd{M-@@}, @kbd{M-h}, etc., don't do anything special when you repeat +them. In most cases, typing these commands multiple times is +equivalent to typing them once. @kbd{M-h} ignores numeric arguments. + +@item +If you want to repeat a jump to a previous mark, you should supply the +prefix argument explicitly. So, instead of typing @kbd{C-u C-SPC +C-SPC C-SPC}, type @kbd{C-u C-SPC C-u C-SPC C-u C-SPC}. + +@item +@kbd{C-@key{SPC} C-@key{SPC}} has no special meaning--it just sets the +mark twice. Neither does @kbd{C-u C-x C-x}, which simply exchanges +point and mark like @kbd{C-x C-x}. + +@item +The function @code{sentence-end} has been eliminated in favor of a +more straightforward approach: directly setting the variable +@code{sentence-end}. For example, to end each sentence with a single +space, use + +@lisp +(setq sentence-end "[.?!][]\"')@}]*\\($\\|[ \t]\\)[ \t\n]*") +@end lisp + +@item +The variable @code{fill-nobreak-predicate} is no longer customizable, +and it can only hold a single function. + +@item +Non-breaking spaces and hyphens are displayed just like normal +characters. The user option @code{show-nonbreak-escape} is therefore +obsolete, and has been removed. @item @kbd{C-w} in an incremental search always grabs an entire word @@ -57,13 +161,19 @@ @item Yanking now preserves all text properties that were in the killed -text. The variable @code{yank-excluded-properties} has no meaning. +text. The variable @code{yank-excluded-properties} has been removed. @item Occur mode, Info mode, and Comint-derived modes now control -fontification in their own way, and @kbd{M-x font-lock-mode} -has nothing to do with it. To control fontification in Info -mode, use the variable @code{Info-fontify}. +fontification in their own way, and @kbd{M-x font-lock-mode} has +nothing to do with it. To control fontification in Info mode, use the +variable @code{Info-fontify}. + +@item +The Grep package has been merged with Compilation mode. Many +grep-specific commands and user options have thus been eliminated. +Also, @kbd{M-x grep} never tries the GNU grep @samp{-H} option, +and instead silently appends @file{/dev/null} to the command line. @item In Dired's @kbd{!} command, @samp{*} and @samp{?} now @@ -71,80 +181,108 @@ only when they are surrounded by whitespace. @item -Minibuffer completion commands now always complete the entire -minibuffer contents, just as if you had typed them at the end -of the minibuffer, no matter where point is actually located. - -@item -An unquoted @samp{$} in a file name is now an error, if the following -name is not recognized as an environment variable. Thus, -the file name @file{foo$bar} would probably be an error. Meanwhile, -the @code{setenv} command does not expand @samp{$} at all. +When a file is managed with version control, the command @kbd{C-x C-q} +(whose general meaning is to make a buffer read-only or writable) now +does so by checking the file in or out. Checking the file out makes +the buffer writable; checking it in makes the buffer read-only. -@item -Commands to set the mark at a place away from point, including -@kbd{M-@@}, @kbd{M-h}, etc., don't do anything special when you repeat -them. In most cases, typing these commands multiple times is -equivalent to using them once. @kbd{M-h} does not use its numeric -argument. - -@item -@kbd{C-@key{SPC} C-@key{SPC}} has no special meaning and neither does -@kbd{C-u C-x C-x}. - -@item -There is no horizontal-bar cursor. +You can still use @kbd{C-x v v} to do these operations if you wish; +its meaning is unchanged. If you want to control the buffer's +read-only flag without performing any version control operation, +use @kbd{M-x toggle-read-only}. @item -The faces @code{minibuffer-prompt} and @code{mode-line-inactive} -do not exist, and the features they control don't exist either. - -@item -The default value of @code{keyboard-coding-system} is always @code{nil}. -Emacs does not set it based on your locale settings. -If you want some other value, you must set it yourself. - -@item -SGML mode does not handle XML syntax, and does not have indentation support. +SGML mode does not handle XML syntax, and does not have indentation +support. @item -The @kbd{C-h} subcommands have been rearranged---especially those that -display specific files. Type @kbd{C-h C-h} to see a list of these -commands; that will show you what is different. - -@item -Emacs does not read @file{~/.abbrev_defs} automatically; if you want -to load abbrev definitions from a file, you must always do so -explicitly. - -@item -The @samp{--fullwidth}, @samp{--fullheight} and @samp{--fullscreen} -command line options are not supported. - -@item -The @samp{--geometry} option now entirely applies only to the initial -frame. - -@item -Many commands have been removed from the menus or rearranged. +Many Info mode commands have been removed. Incremental search in Info +searches only the current node. @item Many @code{etags} features for customizing parsing using regexps have been removed. @item -The CUA, ido, table, tramp, reveal, ruler-mode, and ibuffer packages -have been removed. So has the spreadsheet, SES, and the algebraic -calculator, Calc. (We distribute Calc separately.) +The Emacs server now runs a small C program called @file{emacsserver}, +rather than trying to handle everything in Emacs Lisp. Now there can +only be one Emacs server running at a time. The @code{server-mode} +command and @code{server-name} user option have been eliminated. + +@item +The @file{emacsclient} program no longer accepts the @samp{--eval} and +@samp{--display} command line options. + +@item +The command @code{quail-show-key}, for showing how to input a +character, has been removed. + +@item +The default value of @code{keyboard-coding-system} is always +@code{nil}, regardless of your locale settings. If you want some +other value, set it yourself. + +@item +Unicode support and unification between Latin-@var{n} character sets +have been removed. Cutting and pasting X selections does not support +``extended segments'', so there are certain coding systems it cannot +handle. + +@item +The input methods for Emacs are included in a separate distribution +called ``Leim''. To use this, you must extract the Leim tar file on +top of the Emacs distribution, into the same directory, before you +build Emacs. @item -The kmacro package has been removed. To start a keyboard macro you -must use @kbd{C-x (}; to end one, @kbd{C-x )}; to execute the last -one, @kbd{C-x e}. +The following input methods have been eliminated: belarusian, +bulgarian-bds, bulgarian-phonetic, chinese-sisheng, croatian, dutch, +georgian, latin-alt-postfix, latin-postfix, latin-prefix, +latvian-keyboard, lithuanian-numeric, lithuanian-keyboard, +malayalam-inscript, rfc1345, russian-computer, sgml, slovenian, +tamil-inscript ucs, ukrainian-computer, vietnamese-telex, and welsh. + +@item +The following language environments have been eliminated: Belarusian, +Bulgarian, Chinese-EUC-TW, Croatian, French, Georgian, Italian, +Latin-6, Latin-7, Latvian, Lithuanian, Malayalam, Russian, Russian, +Slovenian, Swedish, Tajik, Tamil, UTF-8, Ukrainian, Ukrainian, Welsh, +and Windows-1255. + +@item +The @code{code-pages} library, which contained various 8-bit coding +systems, has been removed. + +@item +The Kmacro package has been replaced with a simple and elegant +keyboard macro system. Use @kbd{C-x (} to start a new keyboard macro, +@kbd{C-x )} to end the macro, and @kbd{C-x e} to execute the last +macro. + +@item +The Calc, CUA, GDB-UI, Ibuffer, Ido, Password, Printing, Reveal, +Ruler-mode, SES, Table, Tramp, and URL packages have been removed. +The Benchmark, Cfengine, Conf, Dns, Flymake, Python, Thumbs, and +Wdired modes have also been removed. + +@item +The Emacs Lisp Reference Manual and the Introduction to Programming in +Emacs Lisp are now distributed separately, not in the Emacs +distribution. + +@item +On MS Windows, there is no longer any support for tooltips, images, +sound, different mouse pointer shapes, or pointing devices with more +than 3 buttons. If you want these features, consider switching to +another operating system. But even if you don't want these features, +you should still switch---for freedom's sake. + +@item +Emacs will not use Unicode for clipboard operations on MS Windows. @item To keep up with decreasing computer memory capacity and disk space, many -other functions and files have been eliminated in Emacs 21.3. +other functions and files have been eliminated in Emacs 21.4. @end itemize @ignore
--- a/man/basic.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/man/basic.texi Thu Mar 24 18:41:26 2005 +0000 @@ -237,7 +237,8 @@ @item M-x goto-char Read a number @var{n} and move point to buffer position @var{n}. Position 1 is the beginning of the buffer. -@item M-x goto-line +@item M-g M-g +@itemx M-x goto-line Read a number @var{n} and move point to line number @var{n}. Line 1 is the beginning of the buffer. @item C-x C-n @@ -343,11 +344,15 @@ If all recorded changes have already been undone, the undo command displays an error message and does nothing. +@findex undo-only Any command other than an undo command breaks the sequence of undo commands. Starting from that moment, the previous undo commands become ordinary changes that you can undo. Thus, to redo changes you have undone, type @kbd{C-f} or any other command that will harmlessly break -the sequence of undoing, then type more undo commands. +the sequence of undoing, then type more undo commands. On the other +hand, if you want to ignore previous undo commands, use @kbd{M-x +undo-only}. This is like @code{undo}, but will not redo changes +you have just undone. @cindex selective undo @kindex C-u C-x u @@ -591,10 +596,12 @@ @cindex cursor location @cindex point location There are two commands for working with line numbers. @kbd{M-x -what-line} computes the current line number and displays it in the echo -area. To go to a given line by number, use @kbd{M-x goto-line}; it -prompts you for the number. These line numbers count from one at the -beginning of the buffer. +what-line} computes the current line number and displays it in the +echo area. To go to a given line by number, use @kbd{M-g M-g} or +@kbd{M-g g} (@code{goto-line}). This prompts you for a line number, +then moves point to the beginning of that line. To move to a given +line in the most recently displayed other buffer, use @kbd{C-u M-g +M-g}. Line numbers in Emacs count from one at the beginning of the buffer. You can also see the current line number in the mode line; see @ref{Mode Line}. If you narrow the buffer, then the line number in the mode line
--- a/man/building.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/man/building.texi Thu Mar 24 18:41:26 2005 +0000 @@ -14,10 +14,10 @@ @menu * Compilation:: Compiling programs in languages other than Lisp (C, Pascal, etc.). -* Grep Searching:: Running grep as if it were a compiler. * Compilation Mode:: The mode for visiting compiler errors. * Compilation Shell:: Customizing your shell properly for use in the compilation buffer. +* Grep Searching:: Searching with grep. * Debuggers:: Running symbolic debuggers for non-Lisp programs. * Executing Lisp:: Various modes for editing Lisp programs, with different facilities for running @@ -147,36 +147,6 @@ the form @code{"@var{envvarname}=@var{value}"}. These environment variable settings override the usual ones. -@node Grep Searching -@section Searching with Grep under Emacs - -@findex grep - Just as you can run a compiler from Emacs and then visit the lines -where there were compilation errors, you can also run @code{grep} and -then visit the lines on which matches were found. This works by -treating the matches reported by @code{grep} as if they were ``errors.'' - - To do this, type @kbd{M-x grep}, then enter a command line that -specifies how to run @code{grep}. Use the same arguments you would give -@code{grep} when running it normally: a @code{grep}-style regexp -(usually in single-quotes to quote the shell's special characters) -followed by file names, which may use wildcards. The output from -@code{grep} goes in the @samp{*grep*} buffer. You can find the -corresponding lines in the original files using @kbd{C-x `} and -@key{RET}, as with compilation errors. - - If you specify a prefix argument for @kbd{M-x grep}, it figures out -the tag (@pxref{Tags}) around point, and puts that into the default -@code{grep} command. - -@findex grep-find -@findex find-grep - The command @kbd{M-x grep-find} (also available as @kbd{M-x -find-grep}) is similar to @kbd{M-x grep}, but it supplies a different -initial default for the command---one that runs both @code{find} and -@code{grep}, so as to search every file in a directory tree. See also -the @code{find-grep-dired} command, in @ref{Dired and Find}. - @node Compilation Mode @section Compilation Mode @@ -199,6 +169,21 @@ This command is used in the compilation buffer. @item Mouse-2 Visit the locus of the error message that you click on. +@item M-n +Find and highlight the locus of the next error message, without +selecting the source buffer. +@item M-p +Find and highlight the locus of the previous error message, without +selecting the source buffer. +@item M-@} +Move point to the next error for a different file than the current +one. +@item M-@{ +Move point to the previous error for a different file than the current +one. +@item C-c C-f +Toggle Next Error Follow minor mode, which makes cursor motion in the +compilation buffer produce automatic source display. @end table @kindex C-x ` @@ -209,12 +194,15 @@ click @kbd{Mouse-2} on the error message; you need not switch to the @samp{*compilation*} buffer first. +@vindex next-error-highlight To parse the compiler error messages sequentially, type @kbd{C-x `} (@code{next-error}). The character following the @kbd{C-x} is the backquote or ``grave accent,'' not the single-quote. This command is -available in all buffers, not just in @samp{*compilation*}; it displays -the next error message at the top of one window and source location of -the error in another window. +available in all buffers, not just in @samp{*compilation*}; it +displays the next error message at the top of one window and source +location of the error in another window. It also momentarily +highlights the relevant source line. You can change the behavior of +this highlighting with the variable @code{next-error-highlight}. The first time @kbd{C-x `} is used after the start of a compilation, it moves to the first error's location. Subsequent uses of @kbd{C-x `} @@ -245,10 +233,25 @@ that list. A similar variable @code{grep-regexp-alist} tells Emacs how to parse output of a @code{grep} command. +@findex compilation-next-error +@findex compilation-previous-error +@findex compilation-next-file +@findex compilation-previous-file Compilation mode also redefines the keys @key{SPC} and @key{DEL} to -scroll by screenfuls, and @kbd{M-n} and @kbd{M-p} to move to the next or -previous error message. You can also use @kbd{M-@{} and @kbd{M-@}} to -move up or down to an error message for a different source file. +scroll by screenfuls, and @kbd{M-n} (@code{compilation-next-error}) +and @kbd{M-p} (@code{compilation-previous-error}) to move to the next +or previous error message. You can also use @kbd{M-@{} +(@code{compilation-next-file} and @kbd{M-@}} +(@code{compilation-previous-file}) to move up or down to an error +message for a different source file. + +@cindex Next Error Follow mode +@findex next-error-follow-minor-mode + You can type @kbd{C-c C-f} to toggle Next Error Follow mode. In +this minor mode, ordinary cursor motion in the compilation buffer +automatically updates the source buffer. For instance, moving the +cursor to the next error message causes the location of that error to +be displayed immediately. The features of Compilation mode are also available in a minor mode called Compilation Minor mode. This lets you parse error messages in @@ -298,6 +301,42 @@ wait until the command finishes before you can do anything else in Emacs. @xref{MS-DOS}. +@node Grep Searching +@section Searching with Grep under Emacs + +@findex grep + Just as you can run a compiler from Emacs and then visit the lines +where there were compilation errors, you can also run @code{grep} and +then visit the lines on which matches were found. This works by +treating the matches reported by @code{grep} as if they were ``errors.'' + + To do this, type @kbd{M-x grep}, then enter a command line that +specifies how to run @code{grep}. Use the same arguments you would give +@code{grep} when running it normally: a @code{grep}-style regexp +(usually in single-quotes to quote the shell's special characters) +followed by file names, which may use wildcards. If you specify a +prefix argument for @kbd{M-x grep}, it figures out the tag +(@pxref{Tags}) around point, and puts that into the default +@code{grep} command. + + The output from @code{grep} goes in the @samp{*grep*} buffer. You +can find the corresponding lines in the original files using @kbd{C-x +`}, @key{RET}, and so forth, just like compilation errors. + + Some grep programs accept a @samp{--color} option to output special +markers around matches for the purpose of highlighting. You can make +use of this feature by setting @code{grep-highlight-matches} to t. +When displaying a match in the source buffer, the exact match will be +highlighted, instead of the entire source line. + +@findex grep-find +@findex find-grep + The command @kbd{M-x grep-find} (also available as @kbd{M-x +find-grep}) is similar to @kbd{M-x grep}, but it supplies a different +initial default for the command---one that runs both @code{find} and +@code{grep}, so as to search every file in a directory tree. See also +the @code{find-grep-dired} command, in @ref{Dired and Find}. + @node Debuggers @section Running Debuggers Under Emacs @cindex debuggers @@ -307,6 +346,7 @@ @cindex SDB @cindex XDB @cindex Perldb +@cindex bashdb @cindex JDB @cindex PDB @@ -366,6 +406,10 @@ requires a valid tags table to work}. If this happens, generate a valid tags table in the working directory and try again. +@item M-x bashdb @key{RET} @var{file} @key{RET} +@findex bashdb +Run the bash debugger to debug @var{file}, a shell script. + @item M-x perldb @key{RET} @var{file} @key{RET} @findex perldb Run the Perl interpreter in debug mode to debug @var{file}, a Perl program. @@ -760,7 +804,8 @@ @kindex RET @r{(GDB breakpoints buffer)} @findex gdb-goto-breakpoint Display the file in the source buffer at the breakpoint specified at -the current line (@code{gdb-goto-breakpoint}). Alternatively, click @kbd{Mouse-2} on the breakpoint that you wish to visit. +the current line (@code{gdb-goto-breakpoint}). Alternatively, click +@kbd{Mouse-2} on the breakpoint that you wish to visit. @end table @node Stack Buffer @@ -770,12 +815,12 @@ of the nested subroutine calls (@dfn{stack frames}) now active in the program. @xref{Backtrace,,info stack, gdb, The GNU debugger}. -Move point to any frame in the stack and type @key{RET} to make it -become the current frame (@code{gdb-frames-select}) and display the -associated source in the source buffer. Alternatively, click -@kbd{Mouse-2} to make the selected frame become the current one. If the -locals buffer is displayed then its contents update to display the -variables that are local to the new frame. +The selected frame is displayed in reverse contrast. Move point to +any frame in the stack and type @key{RET} to select it (@code{gdb-frames-select}) +and display the associated source in the source buffer. Alternatively, +click @kbd{Mouse-2} to make the selected frame become the current one. +If the locals buffer is displayed then its contents update to display +the variables that are local to the new frame. @node Watch Expressions @subsubsection Watch Expressions @@ -1046,6 +1091,10 @@ echo area. It is available in all major modes, not just Emacs-Lisp mode. It does not treat @code{defvar} specially. + When the result of an evaluation is an integer, you can type +@kbd{C-x C-e} a second time to display the value of the integer result +in additional formats (octal, hexadecimal, and character). + If @kbd{C-M-x}, @kbd{C-x C-e}, or @kbd{M-:} is given a numeric argument, it inserts the value into the current buffer at point, rather than displaying it in the echo area. The argument's value does not
--- a/man/calc.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/man/calc.texi Thu Mar 24 18:41:26 2005 +0000 @@ -29881,6 +29881,17 @@ like most Calc commands, but rather in regular editing buffers that are visiting your own files. +Calc will try to guess an appropriate language based on the major mode +of the editing buffer. (@xref{Language Modes}.) If the current buffer is +in @code{latex-mode}, for example, Calc will set its language to La@TeX{}. +Similarly, Calc will use @TeX{} language for @code{tex-mode}, +@code{plain-tex-mode} and @code{context-mode}, C language for +@code{c-mode} and @code{c++-mode}, FORTRAN language for +@code{fortran-mode} and @code{f90-mode}, Pascal for @code{pascal-mode}, +and eqn for @code{nroff-mode}. These can be overridden with Calc's mode +changing commands (@pxref{Mode Settings in Embedded Mode}). If no +suitable language is available, Calc will continue with its current language. + Calc normally scans backward and forward in the buffer for the nearest opening and closing @dfn{formula delimiters}. The simplest delimiters are blank lines. Other delimiters that Embedded mode @@ -29922,8 +29933,7 @@ When you enable Embedded mode for a formula, Calc reads the text between the delimiters and tries to interpret it as a Calc formula. -It's best if the current Calc language mode is correct for the -formula, but Calc can generally identify @TeX{} formulas and +Calc can generally identify @TeX{} formulas and Big-style formulas even if the language mode is wrong. If Calc can't make sense of the formula, it beeps and refuses to enter Embedded mode. But if the current language is wrong, Calc can @@ -30034,11 +30044,9 @@ it is parsed according to the current language mode. Note that Calc does not change the current language mode according -to what it finds. Even though it can read a La@TeX{} formula when +the formula it reads in. Even though it can read a La@TeX{} formula when not in La@TeX{} mode, it will immediately rewrite this formula using -whatever language mode is in effect. You must then type @kbd{d L} -to switch Calc permanently into La@TeX{} mode if that is what you -desire. +whatever language mode is in effect. @tex \bigskip @@ -30441,6 +30449,11 @@ @section Mode Settings in Embedded Mode @noindent +The mode settings can be changed while Calc is in embedded mode, but +will revert to their original values when embedded mode is ended +(except for the modes changed while the mode-setting mode was +@code{Save}). + Embedded mode has a rather complicated mechanism for handling mode settings in Embedded formulas. It is possible to put annotations in the file that specify mode settings either global to the entire
--- a/man/calendar.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/man/calendar.texi Thu Mar 24 18:41:26 2005 +0000 @@ -37,7 +37,7 @@ * Other Calendars:: Converting dates to other calendar systems. * Diary:: Displaying events from your diary. * Appointments:: Reminders when it's time to do something. -* iCalendar:: Converting diary events to/from iCalendar format. +* Importing Diary:: Converting diary events to/from other formats. * Daylight Savings:: How to specify when daylight savings time is active. * Time Intervals:: Keeping track of time intervals. @end menu @@ -1396,15 +1396,24 @@ list without affecting your diary file. You delete entries from the appointment list with @kbd{M-x appt-delete}. -@node iCalendar -@section iCalendar -@cindex iCalendar support +@node Importing Diary +@section Importing and Exporting Diary Entries + + You can transfer diary entries between Emacs diary files and a +variety of other formats. - The icalendar package aims at providing an implementation of the -iCalendar standard, as defined in ``RFC 2445 -- Internet Calendaring and -Scheduling Core Object Specification (iCalendar)''. It provides a means -for importing iCalendar (and the earlier vCalendar format) data into -Emacs diary files and vice versa. +@vindex diary-outlook-formats + You can import diary entries from Outlook-generated appointment +messages. While viewing such a message in Rmail or Gnus, do @kbd{M-x +diary-from-outlook} to import the entry. You can make this command +recognize additional appointment message formats by customizing the +variable @code{diary-outlook-formats}. + +@cindex iCalendar support + The icalendar package allows you to transfer data between your Emacs +diary file and iCalendar files, which are defined in ``RFC +2445---Internet Calendaring and Scheduling Core Object Specification +(iCalendar)'' (as well as the earlier vCalendar format). Importing works for ``ordinary'' (i.e. non-recurring) events, but (at present) may not work correctly (if at all) for recurring events.
--- a/man/cmdargs.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/man/cmdargs.texi Thu Mar 24 18:41:26 2005 +0000 @@ -457,7 +457,7 @@ variable @code{doc-directory}. @item EMACSLOADPATH A colon-separated list of directories@footnote{ -Here and below, whenever we say ``colon-separated list of directories'', +Here and below, whenever we say ``colon-separated list of directories,'' it pertains to Unix and GNU/Linux systems. On MS-DOS and MS-Windows, the directories are separated by semi-colons instead, since DOS/Windows file names might include a colon after a drive letter.}
--- a/man/dired.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/man/dired.texi Thu Mar 24 18:41:26 2005 +0000 @@ -39,7 +39,7 @@ * Hiding Subdirectories:: Making subdirectories visible or invisible. * Updating: Dired Updating. Discarding lines for files of no interest. * Find: Dired and Find. Using `find' to choose the files for Dired. -* Misc: Misc Dired Commands. Various other features. +* Misc: Misc Dired Features. Various other features. @end menu @node Dired Enter @@ -1098,33 +1098,38 @@ program. @kbd{M-x locate-with-filter} is similar, but keeps only lines matching a given regular expression. -These buffers don't work entirely like ordinary Dired buffers. File + These buffers don't work entirely like ordinary Dired buffers. File operations work, but do not always automatically update the buffer. Reverting the buffer with @kbd{g} deletes all inserted subdirectories, and erases all flags and marks. -@node Misc Dired Commands -@section Other Dired Commands +@node Misc Dired Features +@section Other Dired Features -@table @kbd -@item w @cindex Adding to the kill ring in Dired. @kindex w @r{(Dired)} @findex dired-copy-filename-as-kill -The @kbd{w} command (@code{dired-copy-filename-as-kill}) puts the + The @kbd{w} command (@code{dired-copy-filename-as-kill}) puts the names of the marked (or next @var{n}) files into the kill ring, as if -you had killed them with @kbd{C-w}. With a zero prefix argument -@var{n}=0, use the absolute file name of each marked file. With just -@kbd{C-u} as the prefix argument, use the relative file name of each -marked file. As a special case, if no prefix argument is given and -point is on a directory headerline, @kbd{w} gives you the name of that -directory without looking for marked files. +you had killed them with @kbd{C-w}. -The main purpose of the @kbd{w} command is so that you can yank the -file names into arguments for other Emacs commands. It also displays -what was pushed onto the kill ring, so you can use it to display the -list of currently marked files in the echo area. -@end table + The main purpose of this command is so that you can yank the file +names into arguments for other Emacs commands. It also displays what +was pushed onto the kill ring, so you can use it to display the list +of currently marked files in the echo area. With a zero prefix +argument @var{n}=0, this uses the absolute file name of each marked +file. With just @kbd{C-u} as the prefix argument, it uses the +relative file name of each marked file. As a special case, if no +prefix argument is given and point is on a directory headerline, +@kbd{w} gives you the name of that directory without looking for +marked files. + + On the X window system, Emacs supports the ``drag and drop'' +protocol. You can drag a file object from another program, and drop +it onto a Dired buffer; this either moves, copies, or creates a link +to the file in that directory. Precisely which action is taken is +determined by the originating program. Dragging files out of a Dired +buffer is currently not supported. @ignore arch-tag: d105f9b9-fc1b-4c5f-a949-9b2cf3ca2fc1
--- a/man/display.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/man/display.texi Thu Mar 24 18:41:26 2005 +0000 @@ -326,7 +326,7 @@ portion of a buffer. As you scroll through the buffer, each portion that becomes visible is fontified as soon as it is displayed. The parts of the buffer that are not displayed are fontified -``stealthily'', in the background, i.e.@: when Emacs is idle. You can +``stealthily,'' in the background, i.e.@: when Emacs is idle. You can control this background fontification, also called @dfn{Just-In-Time} (or @dfn{JIT}) Lock, by customizing variables in the customization group @samp{jit-lock}. @xref{Specific Customization}.
--- a/man/emacs.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/man/emacs.texi Thu Mar 24 18:41:26 2005 +0000 @@ -965,47 +965,70 @@ @node Acknowledgments, Intro, Distrib, Top @unnumberedsec Acknowledgments -Contributors to GNU Emacs include Per Abrahamsen, Jay K. Adams, Joe -Arceneaux, Boaz Ben-Zvi, Jim Blandy, Terrence Brannon, Frank Bresz, -Peter Breton, Kevin Broadey, Vincent Broman, David M. Brown, Bill -Carpenter, Hans Chalupsky, Bob Chassell, James Clark, Mike Clarkson, -Glynn Clements, Andrew Csillag, Doug Cutting, Michael DeCorte, Gary -Delp, Matthieu Devin, Eri Ding, Carsten Dominik, Scott Draves, Viktor -Dukhovni, John Eaton, Rolf Ebert, Stephen Eglen, Torbj@"orn Einarsson, -Tsugutomo Enami, Hans Henrik Eriksen, Michael Ernst, Ata Etemadi, -Frederick Farnbach, Fred Fish, Karl Fogel, Gary Foster, Noah Friedman, -Keith Gabryelski, Kevin Gallagher, Kevin Gallo, Howard Gayle, Stephen -Gildea, David Gillespie, Bob Glickstein, Boris Goldowsky, Michelangelo -Grigni, Michael Gschwind, Henry Guillaume, Doug Gwyn, Ken'ichi Handa, -Chris Hanson, K. Shane Hartman, John Heidemann, Markus Heritsch, Karl -Heuer, Manabu Higashida, Anders Holst, Kurt Hornik, Tom Houlder, Lars -Ingebrigtsen, Andrew Innes, Michael K. Johnson, Kyle Jones, Tomoji -Kagatani, Brewster Kahle, David Kaufman, Henry Kautz, Howard Kaye, -Michael Kifer, Richard King, Larry K. Kolodney, Robert Krawitz, -Sebastian Kremer, Geoff Kuenning, David K@aa{}gedal, Daniel LaLiberte, -Aaron Larson, James R. Larus, Frederic Lepied, Lars Lindberg, Eric -Ludlam, Neil M. Mager, Ken Manheimer, Bill Mann, Brian Marick, Simon +Contributors to GNU Emacs include Per Abrahamsen, Tomas Abrahamsson, +Jay K.@: Adams, Joe Arceneaux, Miles Bader, David Bakhash, Eli +Barzilay, Steven L.@: Baur, Boaz Ben-Zvi, Ray Blaak, Jim Blandy, Per +Bothner, Terrence Brannon, Frank Bresz, Peter Breton, Emmanuel Briot, +Kevin Broadey, Vincent Broman, David M.@: Brown, Georges Brun-Cottan, +W@l{}odek Bzyl, Bill Carpenter, Per Cederqvist, Hans Chalupsky, Chris +Chase, Bob Chassell, Andrew Choi, James Clark, Mike Clarkson, Glynn +Clements, Andrew Csillag, Doug Cutting, Michael DeCorte, Gary Delp, +Matthieu Devin, Eri Ding, Jan Dj@"{a}rv, Carsten Dominik, Scott +Draves, Benjamin Drieu, Viktor Dukhovni, John Eaton, Rolf Ebert, +Stephen Eglen, Torbj@"orn Einarsson, Tsugutomo Enami, Hans Henrik +Eriksen, Michael Ernst, Ata Etemadi, Frederick Farnbach, Oscar +Figueiredo, Fred Fish, Karl Fogel, Gary Foster, Noah Friedman, +Hallvard Furuseth, Keith Gabryelski, Kevin Gallagher, Kevin Gallo, +Juan Le@'{o}n Lahoz Garc@'{i}a, Howard Gayle, Stephen Gildea, Julien +Gilles, David Gillespie, Bob Glickstein, Boris Goldowsky, Michelangelo +Grigni, Odd Gripenstam, Kai Gro@ss{}johann, Michael Gschwind, Henry +Guillaume, Doug Gwyn, Ken'ichi Handa, Chris Hanson, K. Shane Hartman, +John Heidemann, Jon K.@: Hellan, Markus Heritsch, Karl Heuer, Manabu +Higashida, Anders Holst, Kurt Hornik, Tom Houlder, Denis Howe, Lars +Ingebrigtsen, Andrew Innes, Seiichiro Inoue, Ulf Jasper, Michael +K. Johnson, Kyle Jones, Terry Jones, Simon Josefsson, Tomoji Kagatani, +Brewster Kahle, David Kaufman, Henry Kautz, Taichi Kawabata, Howard +Kaye, Michael Kifer, Richard King, Peter Kleiweg, Larry K.@: Kolodney, +Pavel Kobiakov, Larry K.@: Kolodney, David M.@: Koppelman, Koseki +Yoshinori, Robert Krawitz, Sebastian Kremer, Ryszard Kubiak, Geoff +Kuenning, David K@aa{}gedal, Daniel LaLiberte, Aaron Larson, James +R.@: Larus, Vinicius Jose Latorre, Frederic Lepied, Peter Liljenberg, +Lars Lindberg, Chris Lindblad, Anders Lindgren, Thomas Link, Dave +Love, Eric Ludlam, Alan Mackenzie, Christopher J.@: Madsen, +Neil M.@: Mager, Ken Manheimer, Bill Mann, Brian Marick, Simon Marshall, Bengt Martensson, Charlie Martin, Thomas May, Roland McGrath, -David Megginson, Wayne Mesard, Richard Mlynarik, Keith Moore, Erik -Naggum, Thomas Neumann, Mike Newton, Jurgen Nickelsen, Jeff Norden, -Andrew Norman, Jeff Peck, Damon Anton Permezel, Tom Perrine, Jens -Petersen, Daniel Pfeiffer, Fred Pierresteguy, Christian Plaunt, -Francesco A. Potorti, Michael D. Prange, Ashwin Ram, Eric S. Raymond, -Paul Reilly, Edward M. Reingold, Rob Riepel, Roland B. Roberts, John -Robinson, Danny Roozendaal, William Rosenblatt, Guillermo J. Rozas, Ivar -Rummelhoff, Wolfgang Rupprecht, James B. Salem, Masahiko Sato, William -Schelter, Ralph Schleicher, Gregor Schmid, Michael Schmidt, Ronald -S. Schnell, Philippe Schnoebelen, Stephen Schoef, Randal Schwartz, -Manuel Serrano, Stanislav Shalunov, Mark Shapiro, Richard Sharman, Olin -Shivers, Espen Skoglund, Rick Sladkey, Lynn Slater, Chris Smith, David -Smith, Paul D. Smith, William Sommerfeld, Michael Staats, Sam Steingold, -Ake Stenhoff, Peter Stephenson, Jonathan Stigelman, Steve Strassman, -Jens T. Berger Thielemann, Spencer Thomas, Jim Thompson, Masanobu Umeda, -Neil W. Van Dyke, Ulrik Vieth, Geoffrey Voelker, Johan Vromans, Barry -Warsaw, Morten Welinder, Joseph Brian Wells, Rodney Whitby, Ed -Wilkinson, Mike Williams, Steven A. Wood, Dale R. Worley, Felix -S. T. Wu, Tom Wurgler, Eli Zaretskii, Jamie Zawinski, Ian T. Zimmermann, -Reto Zimmermann, and Neal Ziring. +Will Mengarini, David Megginson, Wayne Mesard, Brad Miller, Richard +Mlynarik, Gerd Moellmann, Stefan Monnier, Morioka Tomohiko, Keith +Moore, Sen Nagata, Erik Naggum, Thomas Neumann, Thien-Thi Nguyen, Mike +Newton, Jurgen Nickelsen, Dan Nicolaescu, Jeff Norden, Andrew Norman, +Alexandre Oliva, Bob Olson, Takaaki Ota, Pieter E.@: J.@: Pareit, +David Pearson, Jeff Peck, Damon Anton Permezel, Tom Perrine, William +M.@: Perry, Per Persson, Jens Petersen, Daniel Pfeiffer, Richard +L.@: Pieri, Fred Pierresteguy, Christian Plaunt, David Ponce, Francesco +A. Potorti, Michael D. Prange, Mukesh Prasad, Marko Rahamaa, Ashwin +Ram, Eric S. Raymond, Paul Reilly, Edward M. Reingold, Alex Rezinsky, +Rob Riepel, Nick Roberts, Roland B.@: Roberts, John Robinson, Danny +Roozendaal, William Rosenblatt, Guillermo J.@: Rozas, Ivar Rummelhoff, +Jason Rumney, Wolfgang Rupprecht, Kevin Ryde, James B. Salem, Masahiko +Sato, Holger Schauer, William Schelter, Ralph Schleicher, Gregor +Schmid, Michael Schmidt, Ronald S. Schnell, Philippe Schnoebelen, Jan +Schormann, Alex Schroeder, Stephen Schoef, Randal Schwartz, Oliver +Seidel, Manuel Serrano, Hovav Shacham, Stanislav Shalunov, Mark +Shapiro, Richard Sharman, Olin Shivers, Espen Skoglund, Rick Sladkey, +Lynn Slater, Chris Smith, David Smith, Paul D.@: Smith, Andre Spiegel, +Michael Staats, William Sommerfeld, Michael Staats, Sam Steingold, Ake +Stenhoff, Peter Stephenson, Ken Stevens, Jonathan Stigelman, Martin +Stjernholm, Kim F.@: Storm, Steve Strassman, Olaf Sylvester, Naoto +Takahashi, Jean-Philippe Theberge, Jens T.@: Berger Thielemann, +Spencer Thomas, Jim Thompson, Tom Tromey, Daiki Ueno, Masanobu Umeda, +Rajesh Vaidheeswarran, Neil W.@: Van Dyke, Didier Verna, Ulrik Vieth, +Geoffrey Voelker, Johan Vromans, Inge Wallin, Colin Walters, Barry +Warsaw, Morten Welinder, Joseph Brian Wells, Rodney Whitby, John +Wiegley, Ed Wilkinson, Mike Williams, Bill Wohler, Steven A. Wood, +Dale R.@: Worley, Francis J.@: Wright, Felix S. T. Wu, Tom Wurgler, +Masatake Yamato, Jonathan Yavner, Ilya Zakharevich, Milan Zamazal, +Victor Zandy, Eli Zaretskii, Jamie Zawinski, Shenghuo Zhu, Ian +T.@: Zimmermann, Reto Zimmermann, Neal Ziring, and Detlev Zundel. @end iftex @node Intro, Glossary, Distrib, Top
--- a/man/files.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/man/files.texi Thu Mar 24 18:41:26 2005 +0000 @@ -207,15 +207,6 @@ @kbd{C-g}. File-name completion ignores certain filenames; for more about this, see @ref{Completion Options}. -@cindex file selection dialog - When Emacs is built with a suitable GUI toolkit, commands invoked -with the mouse or the menu bar use the toolkit's standard File -Selection dialog instead of prompting for the file name in the -minibuffer. On Unix and GNU/Linux platforms, Emacs does that when -built with GTK, LessTif, and Motif toolkits; on MS-Windows, the GUI -version does that by default. @xref{Dialog Boxes}, for info -on customization of this. - Your confirmation that @kbd{C-x C-f} has completed successfully is the appearance of new text on the screen and a new buffer name in the mode line. If the specified file does not exist and could not be created, or @@ -228,11 +219,33 @@ since you visited or saved it last. If the file has changed, a warning message is shown. @xref{Interlocking,,Simultaneous Editing}. +@vindex large-file-warning-threshold @cindex maximum buffer size exceeded, error message - Since Emacs reads the visited file in its entirety, files whose size -is larger than the maximum Emacs buffer size (@pxref{Buffers}) cannot be -visited; if you try, Emacs will display an error message saying that the -maximum buffer size has been exceeded. + If you try to visit a file larger than +@code{large-file-warning-threshold} (the default is 10000000, which is +about 10 megabytes), Emacs will ask you for confirmation first. You +can answer @kbd{y} to proceed with visiting the file. Note, however, +that Emacs cannot visit files that are larger than the maximum Emacs +buffer size, which is around 256 megabytes on 32-bit machines +(@pxref{Buffers}). If you try, Emacs will display an error message +saying that the maximum buffer size has been exceeded. + +@cindex file selection dialog + On graphical terminals, there are two additional methods for +visiting files. Firstly, when Emacs is built with a suitable GUI +toolkit, commands invoked with the mouse (by clicking on the menu bar +or tool bar) use the toolkit's standard File Selection dialog instead +of prompting for the file name in the minibuffer. On Unix and +GNU/Linux platforms, Emacs does that when built with GTK, LessTif, and +Motif toolkits; on MS-Windows, the GUI version does that by default. +For information on how to customize this, see @xref{Dialog Boxes}. + + Secondly, Emacs supports the ``drag and drop'' protocol on the X +window system. Dropping a file into an ordinary Emacs window visits +the file using that window. However, dropping a file into a window +displaying a Dired buffer moves or copies the file into the displayed +directory. For details, see @xref{Drag and Drop} and @xref{Misc Dired +Features}. @cindex creating files What if you want to create a new file? Just visit it. Emacs displays @@ -905,15 +918,27 @@ @cindex mode, Auto-Revert @findex global-auto-revert-mode @findex auto-revert-mode +@findex auto-revert-tail-mode + + You may find it useful to have Emacs revert files automatically when +they change. Three minor modes are available to do this. + + @kbd{M-x global-auto-revert-mode} runs Global Auto-Revert mode, +which periodically checks all file buffers and reverts when the +corresponding file has changed. @kbd{M-x auto-revert-mode} runs a +local version, Auto-Revert mode, which applies only to the buffer in +which it was activated. Auto-Revert mode can be used to ``tail'' a +file, such as a system log, so that changes made to that file by other +programs are continuously displayed. To do this, just move the point +to the end of the buffer, and it will stay there as the file contents +change. However, if you are sure that the file will only change by +growing at the end, you can tail the file more efficiently using +Auto-Revert Tail mode, @kbd{M-x auto-revert-tail-mode}. + @vindex auto-revert-interval -You may find it useful to have Emacs revert files automatically when -they change. Two minor modes are available to do this. In Global -Auto-Revert mode, Emacs periodically checks all file buffers and -reverts any when the corresponding file has changed. The local -variant, Auto-Revert mode, applies only to buffers in which it was -activated. The variable @code{auto-revert-interval} controls how -often to check for a changed file. Since checking a remote file is -too slow, these modes do not check or revert remote files. + The variable @code{auto-revert-interval} controls how often to check +for a changed file. Since checking a remote file is too slow, these +modes do not check or revert remote files. @node Auto Save @section Auto-Saving: Protection Against Disasters @@ -1225,7 +1250,7 @@ @cindex MCVS @cindex Meta-CVS - Meta-CVS is another attempt to solve problems, arising in CVS. It + Meta-CVS is another attempt to solve problems arising in CVS. It supports directory structure versioning, improved branching and merging, and use of symbolic links and meta-data in repositories. @@ -2839,14 +2864,12 @@ @code{diff-switches}. The value of @code{diff-switches} should be a string; the default is @code{"-c"} to specify a context diff. - The buffer @samp{*diff*} has Compilation mode as its major mode, so -you can use @kbd{C-x `} to visit successive changed locations in the two -source files. You can also move to a particular hunk of changes and -type @key{RET} or @kbd{C-c C-c}, or click @kbd{Mouse-2} on it, to move -to the corresponding source location. You can also use the other -special commands of Compilation mode: @key{SPC} and @key{DEL} for -scrolling, and @kbd{M-p} and @kbd{M-n} for cursor motion. -@xref{Compilation}. +@findex diff-goto-source + After running @kbd{M-x diff}, you can use @kbd{C-x `} to visit +successive changed locations in the two source files, as in +Compilation mode (@pxref{Compilation}.) In the @samp{*diff*} buffer, +you can move to a particular hunk of changes and type @kbd{C-c C-c} +(@code{diff-goto-source}) to visit the corresponding source location. @findex diff-backup The command @kbd{M-x diff-backup} compares a specified file with its most @@ -2864,9 +2887,13 @@ @ref{Windows}. @vindex compare-ignore-case +@vindex compare-ignore-whitespace With a numeric argument, @code{compare-windows} ignores changes in whitespace. If the variable @code{compare-ignore-case} is -non-@code{nil}, it ignores differences in case as well. +non-@code{nil}, the comparison ignores differences in case as well. +If the variable @code{compare-ignore-whitespace} is non-nil, +@code{compare-windows} normally ignores changes in whitespace, and a +prefix argument turns that off. @findex diff-mode @cindex diffs @@ -2943,36 +2970,40 @@ to be lost. If @var{old} and @var{new} are on different file systems, the file @var{old} is copied and deleted. + If the argument @var{new} is just a directory name, the real new +name is in that directory, with the same non-directory component as +@var{old}. For example, @kbd{M-x rename-file RET ~/foo RET /tmp RET} +renames @file{~/foo} to @file{/tmp/foo}. The same rule applies to all +the remaining commands in this section. All of them ask for +confirmation when the new file name already exists, too. + @findex add-name-to-file @cindex hard links (creation) The similar command @kbd{M-x add-name-to-file} is used to add an additional name to an existing file without removing its old name. The new name is created as a ``hard link'' to the existing file. The new name must belong on the same file system that the file is on. -On Windows, this command works only if the file resides in an NTFS +On MS-Windows, this command works only if the file resides in an NTFS file system. On MS-DOS, it works by copying the file. @findex copy-file @cindex copying files - @kbd{M-x copy-file} reads the file @var{old} and writes a new file named -@var{new} with the same contents. Confirmation is required if a file named -@var{new} already exists, because copying has the consequence of overwriting -the old contents of the file @var{new}. + @kbd{M-x copy-file} reads the file @var{old} and writes a new file +named @var{new} with the same contents. @findex make-symbolic-link @cindex symbolic links (creation) @kbd{M-x make-symbolic-link} reads two file names @var{target} and -@var{linkname}, then creates a symbolic link named @var{linkname}, which -points at @var{target}. The effect is that future attempts to open file -@var{linkname} will refer to whatever file is named @var{target} at the -time the opening is done, or will get an error if the name @var{target} is -not in use at that time. This command does not expand the argument -@var{target}, so that it allows you to specify a relative name -as the target of the link. - - Confirmation is required when creating the link if @var{linkname} is -in use. Note that not all systems support symbolic links; on systems -that don't support them, this command is not defined. +@var{linkname}, then creates a symbolic link named @var{linkname}, +which points at @var{target}. The effect is that future attempts to +open file @var{linkname} will refer to whatever file is named +@var{target} at the time the opening is done, or will get an error if +the name @var{target} is nonexistent at that time. This command does +not expand the argument @var{target}, so that it allows you to specify +a relative name as the target of the link. + + Not all systems support symbolic links; on systems that don't +support them, this command is not defined. @node Compressed Files @section Accessing Compressed Files
--- a/man/frames.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/man/frames.texi Thu Mar 24 18:41:26 2005 +0000 @@ -810,16 +810,18 @@ usually click the wheel to act as either @kbd{Mouse-2} or @kbd{Mouse-3}, depending on the setup. You can also use the wheel to scroll windows instead of using the scroll bar or keyboard commands. -To do so, turn on Mouse Wheel global minor mode with the command -@kbd{M-x mouse-wheel-mode} or by customizing the variable -@code{mouse-wheel-mode}. Support for the wheel depends on the system -generating appropriate events for Emacs. +Mouse wheel support only works if the system generates appropriate +events; whenever possible, it is turned on by default. To toggle this +feature, use @kbd{M-x mouse-wheel-mode}. @vindex mouse-wheel-follow-mouse @vindex mouse-wheel-scroll-amount +@vindex mouse-wheel-progressive-speed The variables @code{mouse-wheel-follow-mouse} and @code{mouse-wheel-scroll-amount} determine where and by how much -buffers are scrolled. +buffers are scrolled. The variable +@code{mouse-wheel-progressive-speed} determines whether the the scroll +speed is linked to how fast you move the wheel. @node Drag and Drop @section Drag and Drop
--- a/man/help.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/man/help.texi Thu Mar 24 18:41:26 2005 +0000 @@ -456,11 +456,15 @@ a tutorial on using Info. @cindex find Info manual by its file name - If you specify a numeric argument, @kbd{C-h i} prompts for the name of -a documentation file. This way, you can browse a file which doesn't + With a numeric argument, @kbd{C-h i} selects an Info buffer with the +number appended to the default @samp{*info*} buffer name +(e.g. @samp{*info*<2>}). This is useful if you want to browse +multiple Info manuals simultaneously. If you specify just @kbd{C-u} +as the prefix argument, @kbd{C-h i} prompts for the name of a +documentation file. This way, you can browse a file which doesn't have an entry in the top-level Info menu. It is also handy when you -need to get to the documentation quickly, and you know the exact name of -the file. +need to get to the documentation quickly, and you know the exact name +of the file. @kindex C-h F @kindex C-h K
--- a/man/killing.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/man/killing.texi Thu Mar 24 18:41:26 2005 +0000 @@ -151,7 +151,8 @@ characters before and after point. @kbd{M-@key{SPC}} (@code{just-one-space}) does likewise but leaves a single space after point, regardless of the number of spaces that existed previously (even -if there were none before). +if there were none before). With a numeric argument @var{n}, it +leaves @var{n} spaces after point. @kbd{C-x C-o} (@code{delete-blank-lines}) deletes all blank lines after the current line. If the current line is blank, it deletes all
--- a/man/mini.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/man/mini.texi Thu Mar 24 18:41:26 2005 +0000 @@ -209,6 +209,10 @@ Completion does ignore case distinctions for certain arguments in which case does not matter. + Completion acts only on the text before point. If there is text in +the minibuffer after point---i.e., if you move point backward after +typing some text into the minibuffer---it remains unchanged. + @menu * Example: Completion Example. Examples of using completion. * Commands: Completion Commands. A list of completion commands.
--- a/man/misc.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/man/misc.texi Thu Mar 24 18:41:26 2005 +0000 @@ -1928,6 +1928,13 @@ Specify the option @samp{--no-desktop} on the command line when you don't want it to reload any saved desktop. +@vindex desktop-restore-eager + By default, all the buffers in the desktop are restored at one go. +However, this may be slow if there are a lot of buffers in the +desktop. You can specify the maximum number of buffers to restore +immediately with the variable @code{desktop-restore-eager}; the +remaining buffers are restored ``lazily,'' when Emacs is idle. + @findex desktop-clear @vindex desktop-globals-to-clear @vindex desktop-clear-preserve-buffers-regexp @@ -2048,41 +2055,28 @@ are done in the global keymap, so there is no problem switching buffers or major modes while in EDT emulation. -@item ``PC'' bindings -@findex pc-bindings-mode -@cindex ``PC'' key bindings -The command @kbd{M-x pc-bindings-mode} sets up certain key bindings -for ``PC compatibility''---what people are often used to on PCs---as -follows: @kbd{M-Backspace} does undo, and @kbd{C-Escape} does -@code{list-buffers}. +@item CUA bindings +@findex cua-mode +@vindex cua-mode +@cindex CUA key bindings +@vindex cua-enable-cua-keys +The command @kbd{M-x cua-mode} sets up key bindings that are +compatible with the Common User Access (CUA) system used in many other +applications. @kbd{C-x} means cut (kill), @kbd{C-c} copy, @kbd{C-v} +paste (yank), and @kbd{C-z} undo. Standard Emacs commands like +@kbd{C-x C-c} still work, because @kbd{C-x} and @kbd{C-c} only take +effect when the mark is active. However, if you don't want these +bindings at all, set @code{cua-enable-cua-keys} to nil. -@item PC Selection mode -@findex pc-selection-mode -@cindex PC Selection minor mode -@cindex mode, PC selection -@cindex selection, PC -The command @kbd{M-x pc-selection-mode} toggles a global minor mode -that emulates the mark, copy, cut and paste commands of various other -systems---an interface known as CUA. It establishes the key bindings -of PC mode, and also modifies the bindings of the cursor keys and the -@kbd{next}, @kbd{prior}, @kbd{home} and @kbd{end} keys. It does not -provide the full set of CUA key bindings---the fundamental Emacs keys -@kbd{C-c}, @kbd{C-v} and @kbd{C-x} are not changed. +In CUA mode, using @kbd{Shift} together with the movement keys +activates the region over which they move. The standard (unshifted) +movement keys deactivate the mark, and typed text replaces the active +region as in Delete-Selection mode (@pxref{Graphical Kill}). -The standard keys for moving around (@kbd{right}, @kbd{left}, -@kbd{up}, @kbd{down}, @kbd{home}, @kbd{end}, @kbd{prior}, @kbd{next}, -called ``move-keys'') deactivate the mark in PC selection mode. -However, using @kbd{Shift} together with the ``move keys'' activates -the region over which they move. The copy, cut and paste functions -are available on @kbd{C-insert}, @kbd{S-delete} and @kbd{S-insert} -respectively. - -Turning @code{pc-selection-mode} off restores the old key bindings of -these keys. - -@cindex s-region package -The @code{s-region} package provides similar, but less complete, -facilities. +CUA mode also provides enhanced rectangle support with visible +rectangle highlighting. Use @kbd{Shift-RET} to start a rectangle, +extend it using the movement commands, and cut or copy it using +@kbd{C-x} or @kbd{C-c}. @item TPU (DEC VMS editor) @findex tpu-edt-on
--- a/man/mule.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/man/mule.texi Thu Mar 24 18:41:26 2005 +0000 @@ -439,12 +439,6 @@ possible characters to type next is displayed in the echo area (but not when you are in the minibuffer). -@cindex Leim package - Input methods are implemented in the separate Leim package: they are -available only if the system administrator used Leim when building -Emacs. If Emacs was built without Leim, you will find that no input -methods are defined. - @node Select Input Method @section Selecting an Input Method @@ -528,6 +522,11 @@ actual keyboard layout. To specify which layout your keyboard has, use the command @kbd{M-x quail-set-keyboard-layout}. +@findex quail-show-key + You can use the command @kbd{M-x quail-show-key} to show what key +(or key sequence) to type in order to input the character following +point, using the selected keyboard layout. + @findex list-input-methods To display a list of all the supported input methods, type @kbd{M-x list-input-methods}. The list gives information about each input @@ -903,6 +902,9 @@ Specify coding system @var{coding} for the immediately following command. +@item C-x @key{RET} r @var{coding} @key{RET} +Revisit the current file using the coding system @var{coding}. + @item C-x @key{RET} k @var{coding} @key{RET} Use coding system @var{coding} for keyboard input. @@ -975,6 +977,12 @@ variable to a good choice of default coding system for that language environment. +@kindex C-x RET r +@findex revert-buffer-with-coding-system + If you visit a file with a wrong coding system, you can correct this +with @kbd{C-x @key{RET} r} (@code{revert-buffer-with-coding-system}). +This visits the current file again, using a coding system you specify. + @kindex C-x RET t @findex set-terminal-coding-system The command @kbd{C-x @key{RET} t} (@code{set-terminal-coding-system})
--- a/man/picture.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/man/picture.texi Thu Mar 24 18:41:26 2005 +0000 @@ -90,23 +90,23 @@ @findex picture-backward-clear-column @findex picture-clear-column @findex picture-clear-line - Picture mode provides erasure instead of deletion and killing of -text. @key{DEL} (@code{picture-backward-clear-column}) replaces the -preceding character with a space rather than removing it; this moves -point backwards. @kbd{C-d} (@code{picture-clear-column}) replaces the -next character or characters with spaces, but does not move point. (If -you want to clear characters to spaces and move forward over them, use + In Picture mode, the commands that normally delete or kill text, +instead erase text (replacing it with spaces). @key{DEL} +(@code{picture-backward-clear-column}) replaces the preceding +character with a space rather than removing it; this moves point +backwards. @kbd{C-d} (@code{picture-clear-column}) replaces the next +character or characters with spaces, but does not move point. (If you +want to clear characters to spaces and move forward over them, use @key{SPC}.) @kbd{C-k} (@code{picture-clear-line}) really kills the -contents of lines, but does not delete the newlines from the -buffer. +contents of lines, but does not delete the newlines from the buffer. @findex picture-open-line To do actual insertion, you must use special commands. @kbd{C-o} -(@code{picture-open-line}) creates a blank line after the current line; -it never splits a line. @kbd{C-M-o} (@code{split-line}) makes sense in -Picture mode, so it is not changed. @kbd{C-j} -(@code{picture-duplicate-line}) inserts below the current line another -line with the same contents.@refill +(@code{picture-open-line}) creates a blank line after the current +line; it never splits a line. @kbd{C-M-o} (@code{split-line}) makes +sense in Picture mode, so it is not changed. @kbd{C-j} +(@code{picture-duplicate-line}) inserts another line with the same +contents below the current line. @kindex C-c C-d @r{(Picture mode)} To do actual deletion in Picture mode, use @kbd{C-w}, @kbd{C-c C-d} @@ -141,22 +141,30 @@ @table @kbd @item C-c < +@itemx C-c @key{LEFT} Move left after insertion (@code{picture-movement-left}). @item C-c > +@itemx C-c @key{RIGHT} Move right after insertion (@code{picture-movement-right}). @item C-c ^ +@itemx C-c @key{UP} Move up after insertion (@code{picture-movement-up}). @item C-c . +@itemx C-c @key{DOWN} Move down after insertion (@code{picture-movement-down}). @item C-c ` +@itemx C-c @key{HOME} Move up and left (``northwest'') after insertion (@code{picture-movement-nw}). @item C-c ' +@itemx C-c @key{PAGEUP} Move up and right (``northeast'') after insertion (@code{picture-movement-ne}). @item C-c / +@itemx C-c @key{END} Move down and left (``southwest'') after insertion @*(@code{picture-movement-sw}). @item C-c \ +@itemx C-c @key{PAGEDOWN} Move down and right (``southeast'') after insertion @*(@code{picture-movement-se}). @end table
--- a/man/programs.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/man/programs.texi Thu Mar 24 18:41:26 2005 +0000 @@ -1843,15 +1843,51 @@ @table @kbd @kindex C-c C-n @r{(Fortran mode)} @findex fortran-next-statement +@findex f90-next-statement @item C-c C-n -Move to beginning of current or next statement -(@code{fortran-next-statement}). +Move to the beginning of the next statement +(@code{fortran-next-statement}/@code{f90-next-statement}). @kindex C-c C-p @r{(Fortran mode)} @findex fortran-previous-statement +@findex f90-previous-statement @item C-c C-p -Move to beginning of current or previous statement -(@code{fortran-previous-statement}). +Move to the beginning of the previous statement +(@code{fortran-previous-statement}/@code{f90-previous-statement}). +If there is no previous statement (i.e. if called from the first +statement in the buffer), move to the start of the buffer. + +@kindex C-c C-e @r{(F90 mode)} +@findex f90-next-block +@item C-c C-e +Move point forward to the start of the next code block +(@code{f90-next-block}). A code block is a subroutine, +@code{if}--@code{endif} statement, and so forth. This command exists +for F90 mode only, not Fortran mode. With a numeric argument, this +moves forward that many blocks. + +@kindex C-c C-a @r{(F90 mode)} +@findex f90-previous-block +@item C-c C-a +Move point backward to the previous code block +(@code{f90-previous-block}). This is like @code{f90-next-block}, but +moves backwards. + +@kindex C-M-n @r{(F90 mode)} +@findex f90-end-of-block +@item C-M-n +Move to the end of the current code block (@code{f90-end-of-block}). +This is for F90 mode only. With a numeric agument, move forward that +number of blocks. This command checks for consistency of block types +and labels (if present), but it does not check the outermost block +since that may be incomplete. The mark is set before moving point. + +@kindex C-M-p @r{(F90 mode)} +@findex f90-beginning-of-block +@item C-M-p +Move to the start of the current code block +(@code{f90-beginning-of-block}). This is like @code{f90-end-of-block}, +but moves backwards. @end table @node Fortran Indent
--- a/man/rmail.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/man/rmail.texi Thu Mar 24 18:41:26 2005 +0000 @@ -1193,7 +1193,7 @@ @code{movemail} program and determine its version. There are two versions of @code{movemail} program: the native one, shipped with GNU Emacs (the ``emacs version'') and the one included in GNU mailutils -(the ``mailutils version'', @pxref{movemail,,,mailutils,GNU +(the ``mailutils version,'' @pxref{movemail,,,mailutils,GNU mailutils}). They support the same command line syntax and the same basic subset of options. However, the @samp{mailutils} version offers additional features.
--- a/man/search.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/man/search.texi Thu Mar 24 18:41:26 2005 +0000 @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001, 2004 +@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001, 2004, 2005 @c Free Software Foundation, Inc. @c See file emacs.texi for copying conditions. @node Search, Fixit, Display, Top @@ -25,15 +25,13 @@ * Regexp Search:: Search for match for a regexp. * Regexps:: Syntax of regular expressions. * Search Case:: To ignore case while searching, or not. -* Configuring Scrolling:: Scrolling within incremental search. * Replace:: Search, and replace some or all matches. * Other Repeating Search:: Operating on all matches for some regexp. @end menu -@node Incremental Search, Nonincremental Search, Search, Search +@node Incremental Search @section Incremental Search -@cindex incremental search An incremental search begins searching as soon as you type the first character of the search string. As you type in the search string, Emacs shows you where the string (as you have typed it so far) would be @@ -49,6 +47,23 @@ Incremental search backward (@code{isearch-backward}). @end table +@menu +* Basic Isearch:: Basic incremental search commands. +* Repeat Isearch:: Searching for the same string again. +* Error in Isearch:: When your string is not found. +* Special Isearch:: Special input in incremental search. +* Non-ASCII Isearch:: How to search for non-ASCII characters. +* Isearch Yank:: Commands that grab text into the search string + or else edit the search string. +* Highlight Isearch:: Isearch highlights the other possible matches. +* Isearch Scroll:: Scrolling during an incremental search. +* Slow Isearch:: Incremental search features for slow terminals. +@end menu + +@node Basic Isearch +@subsection Basics of Incremental Search +@cindex incremental search + @kindex C-s @findex isearch-forward @kbd{C-s} starts a forward incremental search. It reads characters @@ -81,6 +96,15 @@ @kbd{C-y}, @kbd{M-y}, @kbd{M-r}, @kbd{M-c}, @kbd{M-e}, and some other meta-characters). + When you exit the incremental search, it sets the mark where point +@emph{was} before the search. That is convenient for moving back +there. In Transient Mark mode, incremental search sets the mark +without activating it, and does so only if the mark is not already +active. + +@node Repeat Isearch +@subsection Repeating Incremental Search + Sometimes you search for @samp{FOO} and find one, but not the one you expected to find. There was a second @samp{FOO} that you forgot about, before the one you were aiming for. In this event, type @@ -92,6 +116,15 @@ typing just @kbd{C-s C-s}: the first @kbd{C-s} is the key that invokes incremental search, and the second @kbd{C-s} means ``search again.'' + If a search is failing and you ask to repeat it by typing another +@kbd{C-s}, it starts again from the beginning of the buffer. +Repeating a failing reverse search with @kbd{C-r} starts again from +the end. This is called @dfn{wrapping around}, and @samp{Wrapped} +appears in the search prompt once this has happened. If you keep on +going past the original starting point of the search, it changes to +@samp{Overwrapped}, which means that you are revisiting matches that +you have already seen. + To reuse earlier search strings, use the @dfn{search ring}. The commands @kbd{M-p} and @kbd{M-n} move through the ring to pick a search string to reuse. These commands leave the selected search ring element @@ -100,6 +133,23 @@ search ring, type @kbd{M-e}. Type @kbd{C-s} or @kbd{C-r} to terminate editing the string and search for it. + You can change to searching backwards with @kbd{C-r}. If a search fails +because the place you started was too late in the file, you should do this. +Repeated @kbd{C-r} keeps looking for more occurrences backwards. A +@kbd{C-s} starts going forwards again. @kbd{C-r} in a search can be canceled +with @key{DEL}. + +@kindex C-r +@findex isearch-backward + If you know initially that you want to search backwards, you can use +@kbd{C-r} instead of @kbd{C-s} to start the search, because @kbd{C-r} as +a key runs a command (@code{isearch-backward}) to search backward. A +backward search finds matches that are entirely before the starting +point, just as a forward search finds matches that begin after it. + +@node Error in Isearch +@subsection Errors in Incremental Search + If your string is not found at all, the echo area says @samp{Failing I-Search}. The cursor is after the place where Emacs found as much of your string as it could. Thus, if you search for @samp{FOOT}, and there is no @@ -113,6 +163,21 @@ @samp{FOOT}). A second @kbd{C-g} at that point cancels the search entirely, returning point to where it was when the search started. +@cindex quitting (in search) + The @kbd{C-g} ``quit'' character does special things during searches; +just what it does depends on the status of the search. If the search has +found what you specified and is waiting for input, @kbd{C-g} cancels the +entire search. The cursor moves back to where you started the search. If +@kbd{C-g} is typed when there are characters in the search string that have +not been found---because Emacs is still searching for them, or because it +has failed to find them---then the search string characters which have not +been found are discarded from the search string. With them gone, the +search is now successful and waiting for more input, so a second @kbd{C-g} +will cancel the entire search. + +@node Special Isearch +@subsection Special Input for Incremental Search + An upper-case letter in the search string makes the search case-sensitive. If you delete the upper-case character from the search string, it ceases to have this effect. @xref{Search Case}. @@ -125,13 +190,31 @@ treated in the same context. You can also specify a character by its octal code: enter @kbd{C-q} followed by a sequence of octal digits. + @kbd{M-%} typed in incremental search invokes @code{query-replace} +or @code{query-replace-regexp} (depending on search mode) with the +current search string used as the string to replace. @xref{Query +Replace}. + + Entering @key{RET} when the search string is empty launches +nonincremental search (@pxref{Nonincremental Search}). + +@vindex isearch-mode-map + To customize the special characters that incremental search understands, +alter their bindings in the keymap @code{isearch-mode-map}. For a list +of bindings, look at the documentation of @code{isearch-mode} with +@kbd{C-h f isearch-mode @key{RET}}. + +@node Non-ASCII Isearch +@subsection Isearch for Non-@acronym{ASCII} Characters + @cindex searching for non-@acronym{ASCII} characters @cindex input method, during incremental search - To search for non-@acronym{ASCII} characters, you must use an input method -(@pxref{Input Methods}). If an input method is enabled in the -current buffer when you start the search, you can use it while you -type the search string also. Emacs indicates that by including the -input method mnemonic in its prompt, like this: + + To enter non-@acronym{ASCII} characters in an incrementral search, +you must use an input method (@pxref{Input Methods}). If an input +method is enabled in the current buffer when you start the search, you +can use it while you type the search string also. Emacs indicates +that by including the input method mnemonic in its prompt, like this: @example I-search [@var{im}]: @@ -148,40 +231,8 @@ name of the input method. The input method you enable during incremental search remains enabled in the current buffer afterwards. - If a search is failing and you ask to repeat it by typing another -@kbd{C-s}, it starts again from the beginning of the buffer. -Repeating a failing reverse search with @kbd{C-r} starts again from -the end. This is called @dfn{wrapping around}, and @samp{Wrapped} -appears in the search prompt once this has happened. If you keep on -going past the original starting point of the search, it changes to -@samp{Overwrapped}, which means that you are revisiting matches that -you have already seen. - -@cindex quitting (in search) - The @kbd{C-g} ``quit'' character does special things during searches; -just what it does depends on the status of the search. If the search has -found what you specified and is waiting for input, @kbd{C-g} cancels the -entire search. The cursor moves back to where you started the search. If -@kbd{C-g} is typed when there are characters in the search string that have -not been found---because Emacs is still searching for them, or because it -has failed to find them---then the search string characters which have not -been found are discarded from the search string. With them gone, the -search is now successful and waiting for more input, so a second @kbd{C-g} -will cancel the entire search. - - You can change to searching backwards with @kbd{C-r}. If a search fails -because the place you started was too late in the file, you should do this. -Repeated @kbd{C-r} keeps looking for more occurrences backwards. A -@kbd{C-s} starts going forwards again. @kbd{C-r} in a search can be canceled -with @key{DEL}. - -@kindex C-r -@findex isearch-backward - If you know initially that you want to search backwards, you can use -@kbd{C-r} instead of @kbd{C-s} to start the search, because @kbd{C-r} as -a key runs a command (@code{isearch-backward}) to search backward. A -backward search finds matches that are entirely before the starting -point, just as a forward search finds matches that begin after it. +@node Isearch Yank +@subsection Isearch Yanking The characters @kbd{C-w} and @kbd{C-y} can be used in incremental search to grab text from the buffer into the search string. This @@ -212,18 +263,11 @@ @kbd{Mouse-2} in the echo area does the same. @xref{Yanking}. - When you exit the incremental search, it sets the mark to where point -@emph{was}, before the search. That is convenient for moving back -there. In Transient Mark mode, incremental search sets the mark without -activating it, and does so only if the mark is not already active. - - @kbd{M-%} typed in incremental search invokes @code{query-replace} -or @code{query-replace-regexp} (depending on search mode) with the -current search string used as the string to replace. @xref{Query -Replace}. - +@node Highlight Isearch +@subsection Lazy Search Highlighting @cindex lazy search highlighting @vindex isearch-lazy-highlight + When you pause for a little while during incremental search, it highlights all other possible matches for the search string. This makes it easier to anticipate where you can get to by typing @kbd{C-s} @@ -238,12 +282,7 @@ (for all the other matches). The latter is also used for other matches inside @code{query-replace}. -@vindex isearch-mode-map - To customize the special characters that incremental search understands, -alter their bindings in the keymap @code{isearch-mode-map}. For a list -of bindings, look at the documentation of @code{isearch-mode} with -@kbd{C-h f isearch-mode @key{RET}}. - +@node Isearch Scroll @subsection Scrolling During Incremental Search Vertical scrolling during incremental search can be enabled by @@ -268,10 +307,14 @@ nevertheless made available under this rubric, since they are likewise handy during a search. - For a list of commands which are configured as scrolling commands by -default and instructions on how thus to configure other commands, see -@ref{Configuring Scrolling}. + You can make other commands usable within an incremental search by +giving the command a non-@code{nil} @code{isearch-scroll} property. +This works for commands that don't permanently change point, the +buffer contents, the match data, the current buffer, or the selected +window and frame. The command must not delete the current window and +must not itself attempt an incremental search. +@node Slow Isearch @subsection Slow Terminal Incremental Search Incremental search on a slow terminal uses a modified style of display @@ -294,7 +337,7 @@ The number of lines to use in slow terminal search display is controlled by the variable @code{search-slow-window-lines}. Its normal value is 1. -@node Nonincremental Search, Word Search, Incremental Search, Search +@node Nonincremental Search @section Nonincremental Search @cindex nonincremental search @@ -334,7 +377,7 @@ historical reasons, and to avoid the need to find key sequences for them. -@node Word Search, Regexp Search, Nonincremental Search, Search +@node Word Search @section Word Search @cindex word search @@ -373,7 +416,7 @@ via the incremental search commands both for historical reasons and to avoid the need to find suitable key sequences for them. -@node Regexp Search, Regexps, Word Search, Search +@node Regexp Search @section Regular Expression Search @cindex regular expression @cindex regexp @@ -381,7 +424,8 @@ A @dfn{regular expression} (@dfn{regexp}, for short) is a pattern that denotes a class of alternative strings to match, possibly infinitely many. GNU Emacs provides both incremental and -nonincremental ways to search for a match for a regexp. +nonincremental ways to search for a match for a regexp. The syntax of +regular expressions is explained in the following section. @kindex C-M-s @findex isearch-forward-regexp @@ -429,7 +473,7 @@ @code{isearch-forward} and @code{isearch-backward}. @xref{Incremental Search}. -@node Regexps, Search Case, Regexp Search, Search +@node Regexps @section Syntax of Regular Expressions @cindex syntax of regexps @@ -830,7 +874,7 @@ for matching parens.) @end ignore -@node Search Case, Configuring Scrolling, Regexps, Search +@node Search Case @section Searching and Case Incremental searches in Emacs normally ignore the case of the text @@ -852,91 +896,17 @@ effect of including an upper-case letter in the current search. @vindex case-fold-search +@vindex default-case-fold-search If you set the variable @code{case-fold-search} to @code{nil}, then all letters must match exactly, including case. This is a per-buffer variable; altering the variable affects only the current buffer, but -there is a default value which you can change as well. @xref{Locals}. -This variable applies to nonincremental searches also, including those -performed by the replace commands (@pxref{Replace}) and the minibuffer -history matching commands (@pxref{Minibuffer History}). - -@node Configuring Scrolling, Replace, Search Case, Search -@section Configuring Scrolling -@cindex scrolling in incremental search -@vindex isearch-allow-scroll - -Scrolling, etc., during incremental search is enabled by setting the -customizable variable @code{isearch-allow-scroll} to a non-@code{nil} value. - -@c See Subject: Info file: How do I get an itemized list without blank lines? -@c Date: Sat, 12 Apr 2003 09:45:31 +0000 in gnu.emacs.help -@subsection Standard scrolling commands -Here is the list of commands which are configured by default to be -``scrolling'' commands in an incremental search, together with their -usual bindings: -@subsubsection Commands which scroll the window: -@table @asis -@item @code{scroll-bar-toolkit-scroll} (@kbd{@key{vertical-scroll-bar}@key{mouse-1}} in X-Windows) -@itemx @code{mac-handle-scroll-bar-event} (@kbd{@key{vertical-scroll-bar}@key{mouse-1}} on a Mac) -@itemx @code{w32-handle-scroll-bar-event} (@kbd{@key{vertical-scroll-bar}@key{mouse-1}} in MS-Windows) -@item @code{recenter} (@kbd{C-l}) @xref{Scrolling}. -@itemx @code{reposition-window} (@kbd{C-M-l}) @xref{Scrolling}. -@itemx @code{scroll-up} (@kbd{@key{NEXT}}) @xref{Scrolling}. -@itemx @code{scroll-down} (@kbd{@key{PRIOR}}) @xref{Scrolling}. -@end table - -@subsubsection Commands which act on the other window: -@table @asis -@item @code{list-buffers} (@kbd{C-x C-b}) @xref{List Buffers}. -@itemx @code{scroll-other-window} (@kbd{C-M-v}) @xref{Other Window}. -@itemx @code{scroll-other-window-down} (@kbd{C-M-S-v}) @xref{Other Window}. -@itemx @code{beginning-of-buffer-other-window} (@kbd{M-@key{home}}) -@itemx @code{end-of-buffer-other-window} (@kbd{M-@key{end}}) -@end table +there is a default value in @code{default-case-fold-search} that you +can also set. @xref{Locals}. This variable applies to nonincremental +searches also, including those performed by the replace commands +(@pxref{Replace}) and the minibuffer history matching commands +(@pxref{Minibuffer History}). -@subsubsection Commands which change the window layout: -@table @asis -@item @code{delete-other-windows} (@kbd{C-x 1}) @xref{Change Window}. -@itemx @code{balance-windows} (@kbd{C-x +}) @xref{Change Window}. -@itemx @code{split-window-vertically} (@kbd{C-x 2}) @xref{Split Window}. -@itemx @code{enlarge-window} (@kbd{C-x ^}) @xref{Change Window}. -@end table - -@subsection Configuring other commands as scrolling commands -To do this, set a command's isearch-scroll property to the value t. -For example: - -@example -@code{(put 'my-command 'isearch-scroll t)} -@end example - -You should only thus configure commands which are ``safe'': i.e., they -won't leave emacs in an inconsistent state when executed within a -search---that is to say, the following things may be changed by a -command only temporarily, and must be restored before the command -finishes: - -@enumerate -@item -Point. -@item -The buffer contents. -@item -The selected window and selected frame. -@item -The current match-data. @xref{Match Data,,, elisp, The Emacs Lisp -Reference Manual}. -@end enumerate - -Additionally, the command must not delete the current window and must -not itself attempt an incremental search. It may, however, change the -window's size, or create or delete other windows and frames. - -Note that an attempt by a command to scroll the text -@emph{horizontally} won't work, although it will do no harm---any such -scrolling will be overridden and nullified by the display code. - -@node Replace, Other Repeating Search, Configuring Scrolling, Search +@node Replace @section Replacement Commands @cindex replacement @cindex search-and-replace commands @@ -967,13 +937,10 @@ @node Unconditional Replace, Regexp Replace, Replace, Replace @subsection Unconditional Replacement @findex replace-string -@findex replace-regexp @table @kbd @item M-x replace-string @key{RET} @var{string} @key{RET} @var{newstring} @key{RET} Replace every occurrence of @var{string} with @var{newstring}. -@item M-x replace-regexp @key{RET} @var{regexp} @key{RET} @var{newstring} @key{RET} -Replace every match for @var{regexp} with @var{newstring}. @end table To replace every instance of @samp{foo} after point with @samp{bar}, @@ -1008,11 +975,17 @@ @node Regexp Replace, Replacement and Case, Unconditional Replace, Replace @subsection Regexp Replacement +@findex replace-regexp The @kbd{M-x replace-string} command replaces exact matches for a single string. The similar command @kbd{M-x replace-regexp} replaces any match for a specified pattern. +@table @kbd +@item M-x replace-regexp @key{RET} @var{regexp} @key{RET} @var{newstring} @key{RET} +Replace every match for @var{regexp} with @var{newstring}. +@end table + In @code{replace-regexp}, the @var{newstring} need not be constant: it can refer to all or part of what is matched by the @var{regexp}. @samp{\&} in @var{newstring} stands for the entire match being @@ -1258,7 +1231,7 @@ See also @ref{Transforming File Names}, for Dired commands to rename, copy, or link files by replacing regexp matches in file names. -@node Other Repeating Search,, Replace, Search +@node Other Repeating Search @section Other Search-and-Loop Commands Here are some other commands that find matches for a regular
--- a/man/text.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/man/text.texi Thu Mar 24 18:41:26 2005 +0000 @@ -1981,34 +1981,34 @@ with these keyboard commands: @table @kbd -@kindex M-g d @r{(Enriched mode)} +@kindex M-o d @r{(Enriched mode)} @findex facemenu-set-default -@item M-g d +@item M-o d Set the region, or the next inserted character, to the @code{default} face (@code{facemenu-set-default}). -@kindex M-g b @r{(Enriched mode)} +@kindex M-o b @r{(Enriched mode)} @findex facemenu-set-bold -@item M-g b +@item M-o b Set the region, or the next inserted character, to the @code{bold} face (@code{facemenu-set-bold}). -@kindex M-g i @r{(Enriched mode)} +@kindex M-o i @r{(Enriched mode)} @findex facemenu-set-italic -@item M-g i +@item M-o i Set the region, or the next inserted character, to the @code{italic} face (@code{facemenu-set-italic}). -@kindex M-g l @r{(Enriched mode)} +@kindex M-o l @r{(Enriched mode)} @findex facemenu-set-bold-italic -@item M-g l +@item M-o l Set the region, or the next inserted character, to the @code{bold-italic} face (@code{facemenu-set-bold-italic}). -@kindex M-g u @r{(Enriched mode)} +@kindex M-o u @r{(Enriched mode)} @findex facemenu-set-underline -@item M-g u +@item M-o u Set the region, or the next inserted character, to the @code{underline} face (@code{facemenu-set-underline}). -@kindex M-g o @r{(Enriched mode)} +@kindex M-o o @r{(Enriched mode)} @findex facemenu-set-face -@item M-g o @var{face} @key{RET} +@item M-o o @var{face} @key{RET} Set the region, or the next inserted character, to the face @var{face} (@code{facemenu-set-face}). @end table
--- a/man/tramp.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/man/tramp.texi Thu Mar 24 18:41:26 2005 +0000 @@ -88,7 +88,7 @@ programs, such as @command{ssh}/@command{scp}. You can find the latest version of this document on the web at -@uref{http://www.freesoftware.fsf.org/tramp/}. +@uref{http://www.gnu.org/software/tramp/}. @c Pointer to the other Emacs flavor is necessary only in case of @c standalone installation. @@ -111,18 +111,18 @@ @end ifset The latest release of @value{tramp} is available for -@uref{http://savannah.nongnu.org/download/tramp/, download}, or you -may see @ref{Obtaining Tramp} for more details, including the CVS -server details. - -@value{tramp} also has a @uref{http://savannah.nongnu.org/projects/tramp/, +@uref{http://ftp.gnu.org/gnu/tramp/, download}, or you may see +@ref{Obtaining Tramp} for more details, including the CVS server +details. + +@value{tramp} also has a @uref{http://savannah.gnu.org/projects/tramp/, Savannah Project Page}. @end ifhtml There is a mailing list for @value{tramp}, available at -@email{tramp-devel@@mail.freesoftware.fsf.org}, and archived at -@uref{http://savannah.nongnu.org/mail/?group=tramp, Savannah Mail -Archive}. +@email{tramp-devel@@gnu.org}, and archived at +@uref{http://lists.gnu.org/archive/html/tramp-devel/, the +@value{tramp} Mail Archive}. @ifhtml Older archives are located at @uref{http://sourceforge.net/mailarchive/forum.php?forum=tramp-devel, @@ -377,14 +377,14 @@ @chapter Obtaining Tramp. @cindex obtaining Tramp -@value{tramp} is freely available on the Internet and the latest release -may be downloaded from -@uref{http://savannah.nongnu.org/download/tramp/}. This -release includes the full documentation and code for @value{tramp}, -suitable for installation. But Emacs (22.1 or later) includes -@value{tramp} already, and there is a @value{tramp} package for XEmacs, as well. -So maybe it is easier to just use those. But if you want the bleeding -edge, read on@dots{...} +@value{tramp} is freely available on the Internet and the latest +release may be downloaded from +@uref{http://ftp.gnu.org/gnu/tramp/}. This release includes the full +documentation and code for @value{tramp}, suitable for installation. +But GNU Emacs (22 or later) includes @value{tramp} already, and there +is a @value{tramp} package for XEmacs, as well. So maybe it is easier +to just use those. But if you want the bleeding edge, read +on@dots{...} For the especially brave, @value{tramp} is available from CVS. The CVS version is the latest version of the code and may contain incomplete @@ -396,7 +396,7 @@ at the top. @noindent -@uref{http://savannah.nongnu.org/projects/tramp/} +@uref{http://savannah.gnu.org/projects/tramp/} @noindent Or follow the example session below: @@ -404,7 +404,7 @@ @example ] @strong{cd ~/@value{emacsdir}} ] @strong{export CVS_RSH="ssh"} -] @strong{cvs -z3 -d:ext:anoncvs@@savannah.nongnu.org:/cvsroot/tramp co tramp} +] @strong{cvs -z3 -d:ext:anoncvs@@savannah.gnu.org:/cvsroot/tramp co tramp} @end example @noindent @@ -1112,7 +1112,9 @@ of @code{ssh}. Or you use Kerberos and thus like @code{krlogin}. For the special case of editing files on the local host as another -user, see the @code{su} or @code{sudo} method. +user, see the @code{su} or @code{sudo} method. It offers shortened +syntax for the @samp{root} account, like +@file{@value{prefix}su@value{postfixsinglehop}@value{postfix}/etc/motd}. People who edit large files may want to consider @code{scp} instead of @code{ssh}, or @code{pscp} instead of @code{plink}. These out-of-band @@ -1603,7 +1605,7 @@ for @value{tramp} files to the local temporary directory. On some versions of @value{emacsname}, namely the version built for -Debian Linux, the variable @code{auto-save-file-name-transforms} +Debian GNU/Linux, the variable @code{auto-save-file-name-transforms} contains the directory where @value{emacsname} was built. A workaround is to manually set the variable to a sane value. @@ -1924,13 +1926,13 @@ with @value{tramp}, solving problems and general discussion and advice on topics relating to the package. -The mailing list is at @email{tramp-devel@@mail.freesoftware.fsf.org}. -Messages sent to this address go to all the subscribers. This is -@emph{not} the address to send subscription requests to. - -For help on subscribing to the list, send mail to the administrative -address, @email{tramp-devel-request@@mail.freesoftware.fsf.org}, with the -subject @samp{help}. +The mailing list is at @email{tramp-devel@@gnu.org}. Messages sent to +this address go to all the subscribers. This is @emph{not} the address +to send subscription requests to. + +Subscribing to the list is performed via +@uref{http://lists.gnu.org/mailman/listinfo/tramp-devel/, +the @value{tramp} Mail Subscription Page}. To report a bug in @value{tramp}, you should execute @kbd{M-x tramp-bug}. This will automatically generate a buffer with the details of your system and @@ -1956,20 +1958,21 @@ @value{tramp} is available under the URL below. @noindent -@uref{http://savannah.nongnu.org/download/tramp/} +@uref{http://ftp.gnu.org/gnu/tramp/} @noindent There is also a Savannah project page. @noindent -@uref{http://savannah.nongnu.org/projects/tramp/} +@uref{http://savannah.gnu.org/projects/tramp/} @item Which systems does it work on? -The package has been used successfully on Emacs 20 and Emacs 21, as well -as XEmacs 21. XEmacs 20 is more problematic, see the notes in -@file{tramp.el}. I don't think anybody has really tried it on Emacs 19. +The package has been used successfully on GNU Emacs 20, GNU Emacs 21 +and GNU Emacs 22, as well as XEmacs 21. XEmacs 20 is more +problematic, see the notes in @file{tramp.el}. I don't think anybody +has really tried it on GNU Emacs 19. The package was intended to work on Unix, and it really expects a Unix-like system on the remote end (except the @option{smb} method), @@ -2336,9 +2339,9 @@ forward and wishes to implement and test it, please contact me or the mailing list. -@item The @value{tramp} filename syntax differs between Emacs and XEmacs. - -The Emacs maintainers wish to use a unified filename syntax for +@item The @value{tramp} filename syntax differs between GNU Emacs and XEmacs. + +The GNU Emacs maintainers wish to use a unified filename syntax for Ange-FTP and @value{tramp} so that users don't have to learn a new syntax. It is sufficient to learn some extensions to the old syntax.
--- a/man/trampver.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/man/trampver.texi Thu Mar 24 18:41:26 2005 +0000 @@ -4,7 +4,7 @@ @c In the Tramp CVS, the version number is auto-frobbed from @c configure.ac, so you should edit that file and run @c "autoconf && ./configure" to change the version number. -@set trampver 2.0.47 +@set trampver 2.0.48 @c Other flags from configuration @set prefix /usr/local @@ -25,7 +25,7 @@ @c Emacs values. @ifset emacs -@set emacsname Emacs +@set emacsname GNU Emacs @set emacsdir emacs @set ftppackagename Ange-FTP @set prefix / @@ -49,7 +49,7 @@ @set postfix ] @set postfixsinglehop / @set postfixmultihop : -@set emacsothername Emacs +@set emacsothername GNU Emacs @set emacsotherdir emacs @set emacsotherfilename tramp-emacs.html @set japanesemanual tramp_ja-xemacs.html
--- a/man/url.texi Sat Mar 19 02:42:17 2005 +0000 +++ b/man/url.texi Thu Mar 24 18:41:26 2005 +0000 @@ -319,10 +319,14 @@ HTTP allows clients to express preferences for the language and encoding of documents which servers may honour. For each of these variables, the value is a string; it can specify a single choice, or -it can be a comma-separated list in descending order of preference. -Each element can be followed by @samp{;q=@var{priority}} to specify -its preference level; e.g., for @code{url-mime-language-string}, -@w{@code{"de, en-gb;q=0.8, en;q=0.7"}}. +it can be a comma-separated list. + +Normally this list ordered by descending preference. However, each +element can be followed by @samp{;q=@var{priority}} to specify its +preference level, a decimal number from 0 to 1; e.g., for +@code{url-mime-language-string}, @w{@code{"de, en-gb;q=0.8, +en;q=0.7"}}. An element that has no @samp{;q} specification has +preference level 1. @defopt url-mime-charset-string @cindex character sets
--- a/src/ChangeLog Sat Mar 19 02:42:17 2005 +0000 +++ b/src/ChangeLog Thu Mar 24 18:41:26 2005 +0000 @@ -1,6 +1,49 @@ +2005-03-22 Kim F. Storm <storm@cua.dk> + + * xfaces.c (lookup_derived_face): Add arg SIGNAL_P. + * dispextern.h (lookup_derived_face): Fix prototype. + * msdos.c (XMenuActivate): Fix call to lookup_derived_face. + + * xdisp.c (handle_single_display_spec): Derive left-fringe and + right-fringe face from fringe face. + + * fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face): + Derive face from fringe face. + +2005-03-22 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * xrdb.c (x_load_resources): Undo previous change (2005-03-18). + +2005-03-22 David Kastrup <dak@gnu.org> + + * textprop.c (Fnext_char_property_change) + (Fprevious_char_property_change): allow marker as limit. + (Fnext_single_char_property_change) + (Fprevious_single_char_property_change): Check that limit is a + number in strings. + (Fnext_single_char_property_change): Coerce position to integer. + (Fprevious_single_char_property_change): Same here. + +2005-03-21 Thien-Thi Nguyen <ttn@gnu.org> + + * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Define if undefined. + +2005-03-19 Stefan Monnier <monnier@iro.umontreal.ca> + + * frame.c (Fignore_event): Remove. + (syms_of_frame): Don't defsubr it. + + * keyboard.c (keys_of_keyboard): Just use `ignore' instead of the + redundant `ignore-event'. + +2005-03-19 Eli Zaretskii <eliz@gnu.org> + + * unexec.c (write_segment, unexec): Move these functions to avoid + forward references (which cause errors with "gcc -gcoff"). + 2005-03-18 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> - * xfns.c (x_create_tip_frame): Removed setting of Vx_resource_name so + * xfns.c (x_create_tip_frame): Remove setting of Vx_resource_name so that it doesn't become "tooltip". The specbind is enough. * xrdb.c (x_load_resources): Use different char *helv when I18N
--- a/src/dispextern.h Sat Mar 19 02:42:17 2005 +0000 +++ b/src/dispextern.h Thu Mar 24 18:41:26 2005 +0000 @@ -2777,7 +2777,7 @@ int lookup_named_face P_ ((struct frame *, Lisp_Object, int)); int smaller_face P_ ((struct frame *, int, int)); int face_with_height P_ ((struct frame *, int, int)); -int lookup_derived_face P_ ((struct frame *, Lisp_Object, int)); +int lookup_derived_face P_ ((struct frame *, Lisp_Object, int, int)); void init_frame_faces P_ ((struct frame *)); void free_frame_faces P_ ((struct frame *)); void recompute_basic_faces P_ ((struct frame *));
--- a/src/frame.c Sat Mar 19 02:42:17 2005 +0000 +++ b/src/frame.c Thu Mar 24 18:41:26 2005 +0000 @@ -765,32 +765,6 @@ return do_switch_frame (event, 0, 0); } -DEFUN ("ignore-event", Fignore_event, Signore_event, 0, 0, "", - doc: /* Do nothing. -This is a suitable binding for `iconify-frame' and `make-frame-visible'. */) - () -{ - /* Contrary to `handle-switch-frame', `ignore-event' is used from - `special-event-map'. Commands from that map are run in a special - way that automatically preserves the prefix-arg. Restoring - the prefix arg here is not just redundant but harmful: - - C-u C-x v = - - current-prefix-arg is set to non-nil, prefix-arg is set to nil. - - after the first prompt, the exit-minibuffer-hook is run which may - iconify a frame and thus push a `iconify-frame' event. - - after running exit-minibuffer-hook, current-prefix-arg is - restored to the non-nil value it had before the prompt. - - we enter the second prompt. - current-prefix-arg is non-nil, prefix-arg is nil. - - before running the first real event, we run the special iconify-frame - event, but we pass the `special' arg to execute-command so - current-prefix-arg and prefix-arg are left untouched. - - here we foolishly copy the non-nil current-prefix-arg to prefix-arg. - - the next key event will have a spuriously non-nil current-prefix-arg. - current_kboard->Vprefix_arg = Vcurrent_prefix_arg; */ - return Qnil; -} - DEFUN ("selected-frame", Fselected_frame, Sselected_frame, 0, 0, 0, doc: /* Return the frame that is now selected. */) () @@ -4127,7 +4101,6 @@ defsubr (&Sframe_live_p); defsubr (&Smake_terminal_frame); defsubr (&Shandle_switch_frame); - defsubr (&Signore_event); defsubr (&Sselect_frame); defsubr (&Sselected_frame); defsubr (&Swindow_frame);
--- a/src/fringe.c Sat Mar 19 02:42:17 2005 +0000 +++ b/src/fringe.c Thu Mar 24 18:41:26 2005 +0000 @@ -551,7 +551,8 @@ Lisp_Object face; if ((face = fringe_faces[which], NILP (face)) - || (face_id = lookup_named_face (f, face, 1), face_id < 0)) + || (face_id = lookup_derived_face (f, face, FRINGE_FACE_ID, 0), + face_id < 0)) face_id = FRINGE_FACE_ID; } @@ -1360,7 +1361,8 @@ if (!NILP (face)) { - face_id = lookup_named_face (SELECTED_FRAME (), face, 1); + face_id = lookup_derived_face (SELECTED_FRAME (), face, + FRINGE_FACE_ID, 1); if (face_id < 0) error ("No such face"); }
--- a/src/keyboard.c Sat Mar 19 02:42:17 2005 +0000 +++ b/src/keyboard.c Thu Mar 24 18:41:26 2005 +0000 @@ -11425,10 +11425,29 @@ initial_define_lispy_key (Vspecial_event_map, "delete-frame", "handle-delete-frame"); + /* Here we used to use `ignore-event' which would simple set prefix-arg to + current-prefix-arg, as is done in `handle-switch-frame'. + But `handle-switch-frame is not run from the special-map. + Commands from that map are run in a special way that automatically + preserves the prefix-arg. Restoring the prefix arg here is not just + redundant but harmful: + - C-u C-x v = + - current-prefix-arg is set to non-nil, prefix-arg is set to nil. + - after the first prompt, the exit-minibuffer-hook is run which may + iconify a frame and thus push a `iconify-frame' event. + - after running exit-minibuffer-hook, current-prefix-arg is + restored to the non-nil value it had before the prompt. + - we enter the second prompt. + current-prefix-arg is non-nil, prefix-arg is nil. + - before running the first real event, we run the special iconify-frame + event, but we pass the `special' arg to execute-command so + current-prefix-arg and prefix-arg are left untouched. + - here we foolishly copy the non-nil current-prefix-arg to prefix-arg. + - the next key event will have a spuriously non-nil current-prefix-arg. */ initial_define_lispy_key (Vspecial_event_map, "iconify-frame", - "ignore-event"); + "ignore"); initial_define_lispy_key (Vspecial_event_map, "make-frame-visible", - "ignore-event"); + "ignore"); /* Handling it at such a low-level causes read_key_sequence to get * confused because it doesn't realize that the current_buffer was * changed by read_char.
--- a/src/msdos.c Sat Mar 19 02:42:17 2005 +0000 +++ b/src/msdos.c Thu Mar 24 18:41:26 2005 +0000 @@ -3799,15 +3799,15 @@ screensize = screen_size * 2; faces[0] = lookup_derived_face (sf, intern ("msdos-menu-passive-face"), - DEFAULT_FACE_ID); + DEFAULT_FACE_ID, 1); faces[1] = lookup_derived_face (sf, intern ("msdos-menu-active-face"), - DEFAULT_FACE_ID); + DEFAULT_FACE_ID, 1); selectface = intern ("msdos-menu-select-face"); faces[2] = lookup_derived_face (sf, selectface, - faces[0]); + faces[0], 1); faces[3] = lookup_derived_face (sf, selectface, - faces[1]); + faces[1], 1); /* Make sure the menu title is always displayed with `msdos-menu-active-face', no matter where the mouse pointer is. */
--- a/src/s/openbsd.h Sat Mar 19 02:42:17 2005 +0000 +++ b/src/s/openbsd.h Thu Mar 24 18:41:26 2005 +0000 @@ -3,6 +3,13 @@ /* Mostly the same as NetBSD. */ #include "netbsd.h" +/* This very-badly named symbol is conditionally defined in netbsd.h. + Better would be either to not need it in the first place, or to choose + a more descriptive name. */ +#ifndef LD_SWITCH_SYSTEM_tmp +#define LD_SWITCH_SYSTEM_tmp /* empty */ +#endif + /* David Mazieres <dm@reeducation-labor.lcs.mit.edu> says this is necessary. Otherwise Emacs dumps core when run -nw. */ #undef LIBS_TERMCAP
--- a/src/textprop.c Sat Mar 19 02:42:17 2005 +0000 +++ b/src/textprop.c Thu Mar 24 18:41:26 2005 +0000 @@ -729,7 +729,7 @@ temp = Fnext_overlay_change (position); if (! NILP (limit)) { - CHECK_NUMBER (limit); + CHECK_NUMBER_COERCE_MARKER (limit); if (XINT (limit) < XINT (temp)) temp = limit; } @@ -754,7 +754,7 @@ temp = Fprevious_overlay_change (position); if (! NILP (limit)) { - CHECK_NUMBER (limit); + CHECK_NUMBER_COERCE_MARKER (limit); if (XINT (limit) > XINT (temp)) temp = limit; } @@ -787,7 +787,10 @@ if (NILP (limit)) position = make_number (SCHARS (object)); else - position = limit; + { + CHECK_NUMBER (limit); + position = limit; + } } } else @@ -804,6 +807,8 @@ Fset_buffer (object); } + CHECK_NUMBER_COERCE_MARKER (position); + initial_value = Fget_char_property (position, prop, object); if (NILP (limit)) @@ -856,7 +861,10 @@ if (NILP (limit)) position = make_number (SCHARS (object)); else - position = limit; + { + CHECK_NUMBER (limit); + position = limit; + } } } else @@ -872,6 +880,8 @@ Fset_buffer (object); } + CHECK_NUMBER_COERCE_MARKER (position); + if (NILP (limit)) XSETFASTINT (limit, BUF_BEGV (current_buffer)); else
--- a/src/unexec.c Sat Mar 19 02:42:17 2005 +0000 +++ b/src/unexec.c Thu Mar 24 18:41:26 2005 +0000 @@ -368,48 +368,6 @@ static void mark_x (); /* **************************************************************** - * unexec - * - * driving logic. - */ -unexec (new_name, a_name, data_start, bss_start, entry_address) - char *new_name, *a_name; - unsigned data_start, bss_start, entry_address; -{ - int new, a_out = -1; - - if (a_name && (a_out = open (a_name, O_RDONLY)) < 0) - { - PERROR (a_name); - } - if ((new = creat (new_name, 0666)) < 0) - { - PERROR (new_name); - } - - if (make_hdr (new, a_out, data_start, bss_start, entry_address, a_name, new_name) < 0 - || copy_text_and_data (new, a_out) < 0 - || copy_sym (new, a_out, a_name, new_name) < 0 -#ifdef COFF -#ifndef COFF_BSD_SYMBOLS - || adjust_lnnoptrs (new, a_out, new_name) < 0 -#endif -#endif - ) - { - close (new); - /* unlink (new_name); /* Failed, unlink new a.out */ - return -1; - } - - close (new); - if (a_out >= 0) - close (a_out); - mark_x (new_name); - return 0; -} - -/* **************************************************************** * make_hdr * * Make the header in the new a.out from the header in core. @@ -835,6 +793,61 @@ #endif /* not COFF */ } +write_segment (new, ptr, end) + int new; + register char *ptr, *end; +{ + register int i, nwrite, ret; + char buf[80]; +#ifndef USE_CRT_DLL + extern int errno; +#endif + /* This is the normal amount to write at once. + It is the size of block that NFS uses. */ + int writesize = 1 << 13; + int pagesize = getpagesize (); + char zeros[1 << 13]; + + bzero (zeros, sizeof (zeros)); + + for (i = 0; ptr < end;) + { + /* Distance to next multiple of writesize. */ + nwrite = (((int) ptr + writesize) & -writesize) - (int) ptr; + /* But not beyond specified end. */ + if (nwrite > end - ptr) nwrite = end - ptr; + ret = write (new, ptr, nwrite); + /* If write gets a page fault, it means we reached + a gap between the old text segment and the old data segment. + This gap has probably been remapped into part of the text segment. + So write zeros for it. */ + if (ret == -1 +#ifdef EFAULT + && errno == EFAULT +#endif + ) + { + /* Write only a page of zeros at once, + so that we we don't overshoot the start + of the valid memory in the old data segment. */ + if (nwrite > pagesize) + nwrite = pagesize; + write (new, zeros, nwrite); + } +#if 0 /* Now that we have can ask `write' to write more than a page, + it is legit for write do less than the whole amount specified. */ + else if (nwrite != ret) + { + sprintf (buf, + "unexec write failure: addr 0x%x, fileno %d, size 0x%x, wrote 0x%x, errno %d", + ptr, new, nwrite, ret, errno); + PERROR (buf); + } +#endif + i += nwrite; + ptr += nwrite; + } +} /* **************************************************************** * copy_text_and_data * @@ -1060,62 +1073,6 @@ return 0; } - -write_segment (new, ptr, end) - int new; - register char *ptr, *end; -{ - register int i, nwrite, ret; - char buf[80]; -#ifndef USE_CRT_DLL - extern int errno; -#endif - /* This is the normal amount to write at once. - It is the size of block that NFS uses. */ - int writesize = 1 << 13; - int pagesize = getpagesize (); - char zeros[1 << 13]; - - bzero (zeros, sizeof (zeros)); - - for (i = 0; ptr < end;) - { - /* Distance to next multiple of writesize. */ - nwrite = (((int) ptr + writesize) & -writesize) - (int) ptr; - /* But not beyond specified end. */ - if (nwrite > end - ptr) nwrite = end - ptr; - ret = write (new, ptr, nwrite); - /* If write gets a page fault, it means we reached - a gap between the old text segment and the old data segment. - This gap has probably been remapped into part of the text segment. - So write zeros for it. */ - if (ret == -1 -#ifdef EFAULT - && errno == EFAULT -#endif - ) - { - /* Write only a page of zeros at once, - so that we we don't overshoot the start - of the valid memory in the old data segment. */ - if (nwrite > pagesize) - nwrite = pagesize; - write (new, zeros, nwrite); - } -#if 0 /* Now that we have can ask `write' to write more than a page, - it is legit for write do less than the whole amount specified. */ - else if (nwrite != ret) - { - sprintf (buf, - "unexec write failure: addr 0x%x, fileno %d, size 0x%x, wrote 0x%x, errno %d", - ptr, new, nwrite, ret, errno); - PERROR (buf); - } -#endif - i += nwrite; - ptr += nwrite; - } -} /* **************************************************************** * copy_sym @@ -1264,6 +1221,48 @@ #endif /* COFF */ +/* **************************************************************** + * unexec + * + * driving logic. + */ +unexec (new_name, a_name, data_start, bss_start, entry_address) + char *new_name, *a_name; + unsigned data_start, bss_start, entry_address; +{ + int new, a_out = -1; + + if (a_name && (a_out = open (a_name, O_RDONLY)) < 0) + { + PERROR (a_name); + } + if ((new = creat (new_name, 0666)) < 0) + { + PERROR (new_name); + } + + if (make_hdr (new, a_out, data_start, bss_start, entry_address, a_name, new_name) < 0 + || copy_text_and_data (new, a_out) < 0 + || copy_sym (new, a_out, a_name, new_name) < 0 +#ifdef COFF +#ifndef COFF_BSD_SYMBOLS + || adjust_lnnoptrs (new, a_out, new_name) < 0 +#endif +#endif + ) + { + close (new); + /* unlink (new_name); /* Failed, unlink new a.out */ + return -1; + } + + close (new); + if (a_out >= 0) + close (a_out); + mark_x (new_name); + return 0; +} + #endif /* not CANNOT_DUMP */ /* arch-tag: 62409b69-e27a-4a7c-9413-0210d6b54e7f
--- a/src/xdisp.c Sat Mar 19 02:42:17 2005 +0000 +++ b/src/xdisp.c Thu Mar 24 18:41:26 2005 +0000 @@ -3729,7 +3729,8 @@ if (CONSP (XCDR (XCDR (spec)))) { Lisp_Object face_name = XCAR (XCDR (XCDR (spec))); - int face_id2 = lookup_named_face (it->f, face_name, 0); + int face_id2 = lookup_derived_face (it->f, face_name, + FRINGE_FACE_ID, 0); if (face_id2 >= 0) face_id = face_id2; }
--- a/src/xfaces.c Sat Mar 19 02:42:17 2005 +0000 +++ b/src/xfaces.c Thu Mar 24 18:41:26 2005 +0000 @@ -5912,10 +5912,11 @@ default face. FACE_ID is assumed to be already realized. */ int -lookup_derived_face (f, symbol, face_id) +lookup_derived_face (f, symbol, face_id, signal_p) struct frame *f; Lisp_Object symbol; int face_id; + int signal_p; { Lisp_Object attrs[LFACE_VECTOR_SIZE]; Lisp_Object symbol_attrs[LFACE_VECTOR_SIZE]; @@ -5924,7 +5925,7 @@ if (!default_face) abort (); - get_lface_attributes (f, symbol, symbol_attrs, 1); + get_lface_attributes (f, symbol, symbol_attrs, signal_p); bcopy (default_face->lface, attrs, sizeof attrs); merge_face_vectors (f, symbol_attrs, attrs, 0); return lookup_face (f, attrs); @@ -7925,7 +7926,7 @@ if (face_id < 0 || face_id >= lface_id_to_name_size) return base_face_id; face_name = lface_id_to_name[face_id]; - face_id = lookup_derived_face (f, face_name, base_face_id); + face_id = lookup_derived_face (f, face_name, base_face_id, 1); if (face_id >= 0) return face_id; return base_face_id;
--- a/src/xrdb.c Sat Mar 19 02:42:17 2005 +0000 +++ b/src/xrdb.c Thu Mar 24 18:41:26 2005 +0000 @@ -527,11 +527,9 @@ XrmDatabase rdb; XrmDatabase db; char line[256]; -#ifdef HAVE_X_I18N - char *helv = "-*-helvetica-medium-r-*--*-120-*-*-*-*,*"; -#else + char *helv = "-*-helvetica-medium-r-*--*-120-*-*-*-*-iso8859-1"; -#endif + #ifdef USE_MOTIF char *courier = "-*-courier-medium-r-*-*-*-120-*-*-*-*-iso8859-1"; extern Lisp_Object Vdouble_click_time;
--- a/vms/make-mms-derivative.el Sat Mar 19 02:42:17 2005 +0000 +++ b/vms/make-mms-derivative.el Thu Mar 24 18:41:26 2005 +0000 @@ -1,10 +1,9 @@ ;;; make-mms-derivative.el --- framework to do horrible things for VMS support -;; Copyright (C) 2003 Free Software Foundation, Inc. +;; Copyright (C) 2005 Free Software Foundation, Inc. ;; Author: Thien-Thi Nguyen <ttn@gnu.org> ;; Keywords: maint build vms mms makefile levitte autoconf war-is-a-lose -;; Favorite-TV-Game-Show: L'Eredità ;; This file is part of GNU Emacs. @@ -25,29 +24,48 @@ ;;; Commentary: -;; Under OpenVMS the standard make-like program is called MMS, which -;; looks for an input file in the default directory named DESCRIP.MMS -;; and runs the DCL command rules therein. As of 2003, the build -;; process requires a hand translation of the Makefile.in and related -;; Emacs-specific methodology to DCL and TPU commands, so to alleviate -;; this pain, we provide `make-mms-derivative', which given a source -;; FILENAME (under `make-mms-derivative-root-dir'), inserts the file -;; contents in a new buffer and loads FILENAME-2mms. The elisp in the -;; -2mms file can (do whatever -- it's emacs -- and) arrange to write -;; out the modified buffer after FILENAME-2mms loading by using: +;; Under VMS the standard make-like program is called MMS, which looks +;; for an input file in the default directory named DESCRIP.MMS and runs +;; the DCL command rules therein. As of 2005, the build process +;; requires a hand translation of the Makefile.in and Emacs-specific +;; methodology to DCL and TPU commands, so to alleviate this pain, we +;; provide `make-mms-derivative', which given a source FILENAME, inserts +;; the file contents in a new buffer and loads FILENAME-2mms. The lisp +;; code in the -2mms file can (do whatever -- it's emacs -- and), as +;; long as it arranges to write out the modified buffer after loading by +;; specifying, on a line of its own, the directive: +;; +;; :output RELATIVE-OUTPUT +;; +;; where RELATIVE-OUTPUT is a filename (a string) relative to FILENAME's +;; directory, typically something simple like "descrip.mms_in_in". Only +;; the first :output directive is recognized. ;; -;; (make-mms-derivative-data 'write-under-root RELATIVE-FILENAME) +;; The only other special directive at this time has the form: +;; +;; :gigo NAME +;; ;;blah blah blah +;; ;;(more text here) ;; -;; where RELATIVE-FILENAME is something like "src/descrip.mms_in_in". -;; Over the long run, the convenience procedures provided (see source) +;; NAME is anything distinguishable w/ `eq' (number, symbol or keyword). +;; This associates NAME with the block of text starting immediately below +;; the :gigo directive and ending at the first line that does not begin +;; with two semicolons (which are stripped from each line in the block). +;; To insert this block of text, pass NAME to `make-mms-derivative-gigo'. +;; +;; Directives are scanned before normal evaluation, so their placement +;; in the file is not important. During loading, plain strings are +;; displayed in the echo area, prefixed with the current line number. +;; +;; Over the long run, the convenience functions provided (see source) ;; will be augmented by factoring maximally the -2mms files, squeezing ;; as much algorithm out of those nasty heuristics as possible. What ;; makes them nasty is not that they rely on the conventions of the ;; Emacs makefiles; that's no big deal. What makes them nasty is that ;; they rely on the conventions of separately maintained tools (namely -;; Autoconf 1.11 under OpenVMS and the rest of GNU), and the separation -;; of conventions is how people drift apart, dragging their software -;; behind mercilessly. +;; Autoconf for VMS and GNU Autoconf), and the separation of conventions +;; is how people drift apart, dragging their software behind +;; mercilessly. ;; ;; In general, codified thought w/o self-synchronization is doomed. ;; That a generation would eat its young (most discriminatingly, even) @@ -55,80 +73,66 @@ ;;; Code: -(defvar make-mms-derivative-root-dir "AXPA:[TTN.EMACS.EMACS212_3]" - "Source tree root directory.") - (defvar make-mms-derivative-data nil - "Alist of data specific to `make-mms-derivative'.") + "Plist of data specific to `make-mms-derivative'.") (defun make-mms-derivative-data (key &optional newval) - (if newval - (setq make-mms-derivative-data - (cons (cons key newval) make-mms-derivative-data)) - (cdr (assq key make-mms-derivative-data)))) + (if newval (setq make-mms-derivative-data + (plist-put make-mms-derivative-data key newval)) + (plist-get make-mms-derivative-data key))) -(defun make-mms-derivative-write-under-root (rel-filename) - (write-file (expand-file-name rel-filename make-mms-derivative-root-dir))) - -(defmacro make-mms-derivative-progn (msg &rest body) - `(progn - (message "(%s) %s" (point) ,msg) - ,@body)) - -(put 'make-mms-derivative-progn 'lisp-indent-function 1) +(defun make-mms-derivative-gigo (name) + "Insert the text associated with :gigo NAME." + (insert (cdr (assq name (make-mms-derivative-data :gigo))))) -(defun make-mms-derivative-load-edits-file (name) - (make-mms-derivative-data 'edits-filename name) - (let (raw-data - (cur (current-buffer)) - (wbuf (get-buffer-create "*make-mms-derivative-load-edits-file work"))) - (set-buffer wbuf) - (insert-file-contents name) - (keep-lines "^;;;[0-9]+;;") - (goto-char (point-max)) - (while (re-search-backward "^;;;\\([0-9]+\\);;\\(.*\\)$" (point-min) t) - (let* ((i (string-to-number (match-string 1))) - (line (match-string 2)) - (look (assq i raw-data))) - (if look - (setcdr look (cons line (cdr look))) - (setq raw-data (cons (list i line) raw-data))))) - (kill-buffer wbuf) - (set-buffer cur) - (mapcar '(lambda (ent) - (setcdr ent (mapconcat '(lambda (line) - (concat line "\n")) - (cdr ent) - ""))) - raw-data) - (make-mms-derivative-data 'raw-data raw-data)) - (load name)) - -(defun make-mms-derivative-insert-raw-data (n) - (insert (cdr (assq n (make-mms-derivative-data 'raw-data))))) - -(defun make-mms-derivative (file) +(defun make-mms-derivative (filename) + "Take FILENAME contents, load FILENAME-2mms, and write out the result. +The output file is specified by the :output directive in FILENAME-2mms. +See commentary of make-mms-derivative.el for full documentation." (interactive "fSource File: ") - (let ((root (expand-file-name make-mms-derivative-root-dir)) - (file (expand-file-name file))) - (when (file-name-absolute-p (file-relative-name file root)) - (error "Not under root (%s)" root)) - (let ((edits-filename (concat file "-2mms"))) - (unless (file-exists-p edits-filename) - (error "Could not find %s" edits-filename)) - (let ((buf (get-buffer-create - (format "*mms-derivative: %s" - (file-relative-name file root))))) - (message "Munging ...") - (switch-to-buffer buf) - (erase-buffer) - (make-variable-buffer-local 'make-mms-derivative-data) - (insert-file file) - (make-mms-derivative-load-edits-file edits-filename) - (let ((out (make-mms-derivative-data 'write-under-root))) - (when out (make-mms-derivative-write-under-root out)) - (kill-buffer buf) - (unless out (message "Munging ... done"))))))) + (let* ((todo (let ((fn (concat filename "-2mms"))) + (unless (file-exists-p fn) + (error "Could not find %s" fn)) + (set-buffer (get-buffer-create " *make-mms-derivative todo*")) + (insert-file-contents fn) + (current-buffer))) + (deriv (get-buffer-create (format "*mms-derivative: %s" + (file-relative-name filename)))) + output gigo form) + (set-buffer todo) + (re-search-forward "^:output") + (setq output (expand-file-name (read (current-buffer)) + (file-name-directory filename))) + (goto-char (point-min)) + (while (re-search-forward "^:gigo" (point-max) t) + (let ((name (read (current-buffer))) + (p (progn (forward-line 1) (point)))) + (while (looking-at ";;") + (delete-char 2) + (forward-line 1)) + (setq gigo (cons (cons name (buffer-substring p (point))) gigo)) + (delete-region p (point)))) + (message "Munging...") + (switch-to-buffer deriv) + (erase-buffer) + (insert-file-contents filename) + (set (make-local-variable 'make-mms-derivative-data) + (list :gigo gigo)) + (set-buffer todo) + (goto-char (point-min)) + (while (condition-case nil + (setq form (read (current-buffer))) + (end-of-file nil)) + (if (stringp form) + (message "%d: %s" (count-lines (point-min) (point)) form) + (save-excursion + (set-buffer deriv) + (eval form)))) + (set-buffer deriv) + (message "Munging...done") + (write-file output) + (kill-buffer todo) + (kill-buffer deriv))) (provide 'make-mms-derivative)