From: Glenn Morris Date: Wed, 22 Aug 2007 07:41:44 +0000 (+0000) Subject: Move tutorials from etc/ to etc/tutorials/ X-Git-Tag: emacs-pretest-23.0.90~11402 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=9ca6898a721a4fa3cf67497c0202ffc6ec18559e;p=emacs.git Move tutorials from etc/ to etc/tutorials/ --- diff --git a/etc/TUTORIAL b/etc/TUTORIAL deleted file mode 100644 index eaa97619763..00000000000 --- a/etc/TUTORIAL +++ /dev/null @@ -1,1131 +0,0 @@ -Emacs tutorial. See end for copying conditions. - -Emacs commands generally involve the CONTROL key (sometimes labeled -CTRL or CTL) or the META key (sometimes labeled EDIT or ALT). Rather than -write that in full each time, we'll use the following abbreviations: - - C- means hold the CONTROL key while typing the character - Thus, C-f would be: hold the CONTROL key and type f. - M- means hold the META or EDIT or ALT key down while typing . - If there is no META, EDIT or ALT key, instead press and release the - ESC key and then type . We write for the ESC key. - -Important note: to end the Emacs session, type C-x C-c. (Two characters.) -The characters ">>" at the left margin indicate directions for you to -try using a command. For instance: -<> -[Middle of page left blank for didactic purposes. Text continues below] ->> Now type C-v (View next screen) to move to the next screen. - (go ahead, do it by holding down the CONTROL key while typing v). - From now on, you should do this again whenever you finish - reading the screen. - -Note that there is an overlap of two lines when you move from screen -to screen; this provides some continuity so you can continue reading -the text. - -The first thing that you need to know is how to move around from place -to place in the text. You already know how to move forward one screen, -with C-v. To move backwards one screen, type M-v (hold down the META key -and type v, or type v if you do not have a META, EDIT, or ALT key). - ->> Try typing M-v and then C-v, a few times. - - -* SUMMARY ---------- - -The following commands are useful for viewing screenfuls: - - C-v Move forward one screenful - M-v Move backward one screenful - C-l Clear screen and redisplay all the text, - moving the text around the cursor - to the center of the screen. - (That's CONTROL-L, not CONTROL-1.) - ->> Find the cursor, and note what text is near it. - Then type C-l. - Find the cursor again and notice that the same text - is near the cursor now. - -You can also use the PageUp and PageDn keys to move by screenfuls, if -your terminal has them, but you can edit more efficiently if you use -C-v and M-v. - - -* BASIC CURSOR CONTROL ----------------------- - -Moving from screenful to screenful is useful, but how do you -move to a specific place within the text on the screen? - -There are several ways you can do this. You can use the arrow keys, -but it's more efficient to keep your hands in the standard position -and use the commands C-p, C-b, C-f, and C-n. These characters -are equivalent to the four arrow keys, like this: - - Previous line, C-p - : - : - Backward, C-b .... Current cursor position .... Forward, C-f - : - : - Next line, C-n - ->> Move the cursor to the line in the middle of that diagram - using C-n or C-p. Then type C-l to see the whole diagram - centered in the screen. - -You'll find it easy to remember these letters by words they stand for: -P for previous, N for next, B for backward and F for forward. You -will be using these basic cursor positioning commands all the time. - ->> Do a few C-n's to bring the cursor down to this line. - ->> Move into the line with C-f's and then up with C-p's. - See what C-p does when the cursor is in the middle of the line. - -Each line of text ends with a Newline character, which serves to -separate it from the following line. The last line in your file ought -to have a Newline at the end (but Emacs does not require it to have -one). - ->> Try to C-b at the beginning of a line. It should move to - the end of the previous line. This is because it moves back - across the Newline character. - -C-f can move across a Newline just like C-b. - ->> Do a few more C-b's, so you get a feel for where the cursor is. - Then do C-f's to return to the end of the line. - Then do one more C-f to move to the following line. - -When you move past the top or bottom of the screen, the text beyond -the edge shifts onto the screen. This is called "scrolling". It -enables Emacs to move the cursor to the specified place in the text -without moving it off the screen. - ->> Try to move the cursor off the bottom of the screen with C-n, and - see what happens. - -If moving by characters is too slow, you can move by words. M-f -(META-f) moves forward a word and M-b moves back a word. - ->> Type a few M-f's and M-b's. - -When you are in the middle of a word, M-f moves to the end of the word. -When you are in whitespace between words, M-f moves to the end of the -following word. M-b works likewise in the opposite direction. - ->> Type M-f and M-b a few times, interspersed with C-f's and C-b's - so that you can observe the action of M-f and M-b from various - places inside and between words. - -Notice the parallel between C-f and C-b on the one hand, and M-f and -M-b on the other hand. Very often Meta characters are used for -operations related to the units defined by language (words, sentences, -paragraphs), while Control characters operate on basic units that are -independent of what you are editing (characters, lines, etc). - -This parallel applies between lines and sentences: C-a and C-e move to -the beginning or end of a line, and M-a and M-e move to the beginning -or end of a sentence. - ->> Try a couple of C-a's, and then a couple of C-e's. - Try a couple of M-a's, and then a couple of M-e's. - -See how repeated C-a's do nothing, but repeated M-a's keep moving one -more sentence. Although these are not quite analogous, each one seems -natural. - -The location of the cursor in the text is also called "point". To -paraphrase, the cursor shows on the screen where point is located in -the text. - -Here is a summary of simple cursor-moving operations, including the -word and sentence moving commands: - - C-f Move forward a character - C-b Move backward a character - - M-f Move forward a word - M-b Move backward a word - - C-n Move to next line - C-p Move to previous line - - C-a Move to beginning of line - C-e Move to end of line - - M-a Move back to beginning of sentence - M-e Move forward to end of sentence - ->> Try all of these commands now a few times for practice. - These are the most often used commands. - -Two other important cursor motion commands are M-< (META Less-than), -which moves to the beginning of the whole text, and M-> (META -Greater-than), which moves to the end of the whole text. - -On most terminals, the "<" is above the comma, so you must use the -shift key to type it. On these terminals you must use the shift key -to type M-< also; without the shift key, you would be typing M-comma. - ->> Try M-< now, to move to the beginning of the tutorial. - Then use C-v repeatedly to move back here. - ->> Try M-> now, to move to the end of the tutorial. - Then use M-v repeatedly to move back here. - -You can also move the cursor with the arrow keys, if your terminal has -arrow keys. We recommend learning C-b, C-f, C-n and C-p for three -reasons. First, they work on all kinds of terminals. Second, once -you gain practice at using Emacs, you will find that typing these Control -characters is faster than typing the arrow keys (because you do not -have to move your hands away from touch-typing position). Third, once -you form the habit of using these Control character commands, you can -easily learn to use other advanced cursor motion commands as well. - -Most Emacs commands accept a numeric argument; for most commands, this -serves as a repeat-count. The way you give a command a repeat count -is by typing C-u and then the digits before you type the command. If -you have a META (or EDIT or ALT) key, there is another, alternative way -to enter a numeric argument: type the digits while holding down the -META key. We recommend learning the C-u method because it works on -any terminal. The numeric argument is also called a "prefix argument", -because you type the argument before the command it applies to. - -For instance, C-u 8 C-f moves forward eight characters. - ->> Try using C-n or C-p with a numeric argument, to move the cursor - to a line near this one with just one command. - -Most commands use the numeric argument as a repeat count, but some -commands use it in some other way. Several commands (but none of -those you have learned so far) use it as a flag--the presence of a -prefix argument, regardless of its value, makes the command do -something different. - -C-v and M-v are another kind of exception. When given an argument, -they scroll the screen up or down by that many lines, rather than by a -screenful. For example, C-u 8 C-v scrolls the screen by 8 lines. - ->> Try typing C-u 8 C-v now. - -This should have scrolled the screen up by 8 lines. If you would like -to scroll it down again, you can give an argument to M-v. - -If you are using a windowed display, such as X11 or MS-Windows, there -should be a tall rectangular area called a scroll bar at the -side of the Emacs window. You can scroll the text by clicking the -mouse in the scroll bar. - ->> Try pressing the middle button at the top of the highlighted area - within the scroll bar. This should scroll the text to a position - determined by how high or low you click. - ->> Try moving the mouse up and down, while holding the middle button - pressed down. You'll see that the text scrolls up and down as - you move the mouse. - - -* WHEN EMACS IS HUNG --------------------- - -If Emacs stops responding to your commands, you can stop it safely by -typing C-g. You can use C-g to stop a command which is taking too -long to execute. - -You can also use C-g to discard a numeric argument or the beginning of -a command that you do not want to finish. - ->> Type C-u 100 to make a numeric arg of 100, then type C-g. - Now type C-f. It should move just one character, - because you canceled the argument with C-g. - -If you have typed an by mistake, you can get rid of it -with a C-g. - - -* DISABLED COMMANDS -------------------- - -Some Emacs commands are "disabled" so that beginning users cannot use -them by accident. - -If you type one of the disabled commands, Emacs displays a message -saying what the command was, and asking you whether you want to go -ahead and execute the command. - -If you really want to try the command, type (the Space bar) in -answer to the question. Normally, if you do not want to execute the -disabled command, answer the question with "n". - ->> Type C-x C-l (which is a disabled command), - then type n to answer the question. - - -* WINDOWS ---------- - -Emacs can have several windows, each displaying its own text. We will -explain later on how to use multiple windows. Right now we want to -explain how to get rid of extra windows and go back to basic -one-window editing. It is simple: - - C-x 1 One window (i.e., kill all other windows). - -That is CONTROL-x followed by the digit 1. C-x 1 expands the window -which contains the cursor, to occupy the full screen. It deletes all -other windows. - ->> Move the cursor to this line and type C-u 0 C-l. ->> Type CONTROL-h k CONTROL-f. - See how this window shrinks, while a new one appears - to display documentation on the CONTROL-f command. - ->> Type C-x 1 and see the documentation listing window disappear. - -This command is unlike the other commands you have learned in that it -consists of two characters. It starts with the character CONTROL-x. -There is a whole series of commands that start with CONTROL-x; many of -them have to do with windows, files, buffers, and related things. -These commands are two, three or four characters long. - - -* INSERTING AND DELETING ------------------------- - -If you want to insert text, just type the text. Characters which you -can see, such as A, 7, *, etc. are taken by Emacs as text and inserted -immediately. Type (the carriage-return key) to insert a -Newline character. - -You can delete the last character you typed by typing . - is a key on the keyboard--the same one you normally use, -outside Emacs, for deleting the last character you typed. It is -normally a large key a couple of lines up from the key, and -it is usually labeled "Delete", "Del" or "Backspace". - -If the large key there is labeled "Backspace", then that's the one you -use for . There may also be another key labeled "Delete" -somewhere else, but that's not . - -More generally, deletes the character immediately before the -current cursor position. - ->> Do this now--type a few characters, then delete them - by typing a few times. Don't worry about this file - being changed; you will not alter the master tutorial. This is - your personal copy of it. - -When a line of text gets too big for one line on the screen, the line -of text is "continued" onto a second screen line. A backslash ("\") -(or, if you're using a windowed display, a little curved arrow) at the -right margin indicates a line which has been continued. - ->> Insert text until you reach the right margin, and keep on inserting. - You'll see a continuation line appear. - ->> Use s to delete the text until the line fits on one screen - line again. The continuation line goes away. - -You can delete a Newline character just like any other character. -Deleting the Newline character between two lines merges them into -one line. If the resulting combined line is too long to fit in the -screen width, it will be displayed with a continuation line. - ->> Move the cursor to the beginning of a line and type . This - merges that line with the previous line. - ->> Type to reinsert the Newline you deleted. - -Remember that most Emacs commands can be given a repeat count; -this includes text characters. Repeating a text character inserts -it several times. - ->> Try that now -- type C-u 8 * to insert ********. - -You've now learned the most basic way of typing something in -Emacs and correcting errors. You can delete by words or lines -as well. Here is a summary of the delete operations: - - Delete the character just before the cursor - C-d Delete the next character after the cursor - - M- Kill the word immediately before the cursor - M-d Kill the next word after the cursor - - C-k Kill from the cursor position to end of line - M-k Kill to the end of the current sentence - -Notice that and C-d vs M- and M-d extend the parallel -started by C-f and M-f (well, is not really a control -character, but let's not worry about that). C-k and M-k are like C-e -and M-e, sort of, in that lines are opposite sentences. - -You can also kill any part of the text with one uniform method. Move -to one end of that part, and type C-@ or C- (either one). ( -is the Space bar.) Move to the other end of that part, and type C-w. -That kills all the text between the two positions. - ->> Move the cursor to the Y at the start of the previous paragraph. ->> Type C-. Emacs should display a message "Mark set" - at the bottom of the screen. ->> Move the cursor to the n in "end", on the second line of the - paragraph. ->> Type C-w. This will kill the text starting from the Y, - and ending just before the n. - -The difference between "killing" and "deleting" is that "killed" text -can be reinserted, whereas "deleted" things cannot be reinserted. -Reinsertion of killed text is called "yanking". Generally, the -commands that can remove a lot of text kill the text (they set up so -that you can yank the text), while the commands that remove just one -character, or only remove blank lines and spaces, do deletion (so you -cannot yank that text). and C-d do deletion in the simplest -case, with no argument. When given an argument, they kill instead. - ->> Move the cursor to the beginning of a line which is not empty. - Then type C-k to kill the text on that line. ->> Type C-k a second time. You'll see that it kills the Newline - which follows that line. - -Note that a single C-k kills the contents of the line, and a second -C-k kills the line itself, and makes all the other lines move up. C-k -treats a numeric argument specially: it kills that many lines AND -their contents. This is not mere repetition. C-u 2 C-k kills two -lines and their newlines; typing C-k twice would not do that. - -Bringing back killed text is called "yanking". (Think of it as -yanking back, or pulling back, some text that was taken away.) You -can yank the killed text either at the same place where it was killed, -or at some other place in the text you are editing, or even in a -different file. You can yank the same text several times; that makes -multiple copies of it. - -The command for yanking is C-y. It reinserts the last killed text, -at the current cursor position. - ->> Try it; type C-y to yank the text back. - -If you do several C-k's in a row, all of the killed text is saved -together, so that one C-y will yank all of the lines at once. - ->> Do this now, type C-k several times. - -Now to retrieve that killed text: - ->> Type C-y. Then move the cursor down a few lines and type C-y - again. You now see how to copy some text. - -What do you do if you have some text you want to yank back, and then -you kill something else? C-y would yank the more recent kill. But -the previous text is not lost. You can get back to it using the M-y -command. After you have done C-y to get the most recent kill, typing -M-y replaces that yanked text with the previous kill. Typing M-y -again and again brings in earlier and earlier kills. When you have -reached the text you are looking for, you do not have to do anything to -keep it. Just go on with your editing, leaving the yanked text where -it is. - -If you M-y enough times, you come back to the starting point (the most -recent kill). - ->> Kill a line, move around, kill another line. - Then do C-y to get back the second killed line. - Then do M-y and it will be replaced by the first killed line. - Do more M-y's and see what you get. Keep doing them until - the second kill line comes back, and then a few more. - If you like, you can try giving M-y positive and negative - arguments. - - -* UNDO ------- - -If you make a change to the text, and then decide that it was a -mistake, you can undo the change with the undo command, C-x u. - -Normally, C-x u undoes the changes made by one command; if you repeat -the C-x u several times in a row, each repetition undoes one -additional command. - -But there are two exceptions: commands that do not change the text do -not count (this includes cursor motion commands and scrolling -command), and self-inserting characters are usually handled in groups -of up to 20. (This is to reduce the number of C-x u's you have to -type to undo insertion of text.) - ->> Kill this line with C-k, then type C-x u and it should reappear. - -C-_ is an alternative undo command; it works just the same as C-x u, -but it is easier to type several times in a row. The disadvantage of -C-_ is that on some keyboards it is not obvious how to type it. That -is why we provide C-x u as well. On some terminals, you can type C-_ -by typing / while holding down CONTROL. - -A numeric argument to C-_ or C-x u acts as a repeat count. - -You can undo deletion of text just as you can undo killing of text. -The distinction between killing something and deleting it affects -whether you can yank it with C-y; it makes no difference for undo. - - -* FILES -------- - -In order to make the text you edit permanent, you must put it in a -file. Otherwise, it will go away when your invocation of Emacs goes -away. In order to put your text in a file, you must "find" the file -before you enter the text. (This is also called "visiting" the file.) - -Finding a file means that you see the contents of the file within -Emacs. In many ways, it is as if you were editing the file itself. -However, the changes you make using Emacs do not become permanent -until you "save" the file. This is so you can avoid leaving a -half-changed file on the system when you do not want to. Even when -you save, Emacs leaves the original file under a changed name in case -you later decide that your changes were a mistake. - -If you look near the bottom of the screen you will see a line that -begins and ends with dashes, and starts with "--:-- TUTORIAL" or -something like that. This part of the screen normally shows the name -of the file that you are visiting. Right now, you are visiting a file -called "TUTORIAL" which is your personal scratch copy of the Emacs -tutorial. When you find a file with Emacs, that file's name will -appear in that precise spot. - -One special thing about the command for finding a file is that you -have to say what file name you want. We say the command "reads an -argument from the terminal" (in this case, the argument is the name of -the file). After you type the command - - C-x C-f Find a file - -Emacs asks you to type the file name. The file name you type appears -on the bottom line of the screen. The bottom line is called the -minibuffer when it is used for this sort of input. You can use -ordinary Emacs editing commands to edit the file name. - -While you are entering the file name (or any minibuffer input), -you can cancel the command with C-g. - ->> Type C-x C-f, then type C-g. This cancels the minibuffer, - and also cancels the C-x C-f command that was using the - minibuffer. So you do not find any file. - -When you have finished entering the file name, type to -terminate it. Then C-x C-f command goes to work, and finds the file -you chose. The minibuffer disappears when the C-x C-f command is -finished. - -In a little while the file contents appear on the screen, and you can -edit the contents. When you wish to make your changes permanent, -type the command - - C-x C-s Save the file - -This copies the text within Emacs into the file. The first time you -do this, Emacs renames the original file to a new name so that it is -not lost. The new name is made by adding "~" to the end of the -original file's name. - -When saving is finished, Emacs displays the name of the file written. -You should save fairly often, so that you will not lose very much -work if the system should crash. - ->> Type C-x C-s, saving your copy of the tutorial. - This should show "Wrote ...TUTORIAL" at the bottom of the screen. - -NOTE: On some systems, typing C-x C-s will freeze the screen and you -will see no further output from Emacs. This indicates that an -operating system "feature" called "flow control" is intercepting the -C-s and not letting it get through to Emacs. To unfreeze the screen, -type C-q. Then see the section "Spontaneous Entry to Incremental -Search" in the Emacs manual for advice on dealing with this "feature". - -You can find an existing file, to view it or edit it. You can also -find a file which does not already exist. This is the way to create a -file with Emacs: find the file, which will start out empty, and then -begin inserting the text for the file. When you ask to "save" the -file, Emacs will really create the file with the text that you have -inserted. From then on, you can consider yourself to be editing an -already existing file. - - -* BUFFERS ---------- - -If you find a second file with C-x C-f, the first file remains -inside Emacs. You can switch back to it by finding it again with -C-x C-f. This way you can get quite a number of files inside Emacs. - ->> Create a file named "foo" by typing C-x C-f foo . - Then insert some text, edit it, and save "foo" by typing C-x C-s. - Finally, type C-x C-f TUTORIAL - to come back to the tutorial. - -Emacs stores each file's text inside an object called a "buffer". -Finding a file makes a new buffer inside Emacs. To see a list of the -buffers that currently exist in your Emacs job, type - - C-x C-b List buffers - ->> Try C-x C-b now. - -See how each buffer has a name, and it may also have a file name for -the file whose contents it holds. ANY text you see in an Emacs window -is always part of some buffer. - ->> Type C-x 1 to get rid of the buffer list. - -When you have several buffers, only one of them is "current" at any -time. That buffer is the one you edit. If you want to edit another -buffer, you need to "switch" to it. If you want to switch to a buffer -that corresponds to a file, you can do it by visiting the file again -with C-x C-f. But there is an easier way: use the C-x b command. -In that command, you have to type the buffer's name. - ->> Type C-x b foo to go back to the buffer "foo" which holds - the text of the file "foo". Then type C-x b TUTORIAL - to come back to this tutorial. - -Most of the time, the buffer's name is the same as the file name -(without the file directory part). However, this is not always true. -The buffer list you make with C-x C-b always shows you the name of -every buffer. - -ANY text you see in an Emacs window is always part of some buffer. -Some buffers do not correspond to files. For example, the buffer -named "*Buffer List*" does not have any file. It is the buffer which -contains the buffer list that you made with C-x C-b. The buffer named -"*Messages*" also does not correspond to any file; it contains the -messages that have appeared on the bottom line during your Emacs -session. - ->> Type C-x b *Messages* to look at the buffer of messages. - Then type C-x b TUTORIAL to come back to this tutorial. - -If you make changes to the text of one file, then find another file, -this does not save the first file. Its changes remain inside Emacs, -in that file's buffer. The creation or editing of the second file's -buffer has no effect on the first file's buffer. This is very useful, -but it also means that you need a convenient way to save the first -file's buffer. It would be a nuisance to have to switch back to -it with C-x C-f in order to save it with C-x C-s. So we have - - C-x s Save some buffers - -C-x s asks you about each buffer which contains changes that you have -not saved. It asks you, for each such buffer, whether to save the -buffer. - ->> Insert a line of text, then type C-x s. - It should ask you whether to save the buffer named TUTORIAL. - Answer yes to the question by typing "y". - - -* EXTENDING THE COMMAND SET ---------------------------- - -There are many, many more Emacs commands than could possibly be put -on all the control and meta characters. Emacs gets around this with -the X (eXtend) command. This comes in two flavors: - - C-x Character eXtend. Followed by one character. - M-x Named command eXtend. Followed by a long name. - -These are commands that are generally useful but used less than the -commands you have already learned about. You have already seen a few -of them: the file commands C-x C-f to Find and C-x C-s to Save, for -example. Another example is the command to end the Emacs -session--this is the command C-x C-c. (Do not worry about losing -changes you have made; C-x C-c offers to save each changed file before -it kills the Emacs.) - -If you are using a graphical display that supports multiple -applications in parallel, you don't need any special command to move -from Emacs to another application. You can do this with the mouse or -with window manager commands. However, if you're using a text -terminal which can only show one application at a time, you need to -"suspend" Emacs to move to any other program. - -C-z is the command to exit Emacs *temporarily*--so that you can go -back to the same Emacs session afterward. When Emacs is running on a -text terminal, C-z "suspends" Emacs; that is, it returns to the shell -but does not destroy the Emacs. In the most common shells, you can -resume Emacs with the `fg' command or with `%emacs'. - -The time to use C-x C-c is when you are about to log out. It's also -the right thing to use to exit an Emacs invoked under mail handling -programs and other miscellaneous utilities, since they may not know -how to cope with suspension of Emacs. In ordinary circumstances, -though, if you are not about to log out, it is better to suspend Emacs -with C-z instead of exiting Emacs. - -There are many C-x commands. Here is a list of the ones you have learned: - - C-x C-f Find file - C-x C-s Save file - C-x s Save some buffers - C-x C-b List buffers - C-x b Switch buffer - C-x C-c Quit Emacs - C-x 1 Delete all but one window - C-x u Undo - -Named eXtended commands are commands which are used even less -frequently, or commands which are used only in certain modes. An -example is the command replace-string, which globally replaces one -string with another. When you type M-x, Emacs prompts you at the -bottom of the screen with M-x and you should type the name of the -command; in this case, "replace-string". Just type "repl s" and -Emacs will complete the name. ( is the Tab key, usually found -above the CapsLock or Shift key near the left edge of the keyboard.) -End the command name with . - -The replace-string command requires two arguments--the string to be -replaced, and the string to replace it with. You must end each -argument with . - ->> Move the cursor to the blank line two lines below this one. - Then type M-x repl schangedaltered. - - Notice how this line has changed: you've replaced - the word c-h-a-n-g-e-d with "altered" wherever it occurred, - after the initial position of the cursor. - - -* AUTO SAVE ------------ - -When you have made changes in a file, but you have not saved them yet, -they could be lost if your computer crashes. To protect you from -this, Emacs periodically writes an "auto save" file for each file that -you are editing. The auto save file name has a # at the beginning and -the end; for example, if your file is named "hello.c", its auto save -file's name is "#hello.c#". When you save the file in the normal way, -Emacs deletes its auto save file. - -If the computer crashes, you can recover your auto-saved editing by -finding the file normally (the file you were editing, not the auto -save file) and then typing M-x recover file. When it asks for -confirmation, type yes to go ahead and recover the auto-save -data. - - -* ECHO AREA ------------ - -If Emacs sees that you are typing multicharacter commands slowly, it -shows them to you at the bottom of the screen in an area called the -"echo area". The echo area contains the bottom line of the screen. - - -* MODE LINE ------------ - -The line immediately above the echo area is called the "mode line". -The mode line says something like this: - ---:** TUTORIAL 63% L749 (Fundamental)----------------------- - -This line gives useful information about the status of Emacs and -the text you are editing. - -You already know what the filename means--it is the file you have -found. NN% indicates your current position in the text; it means that -NN percent of the text is above the top of the screen. If the top of -the file is on the screen, it will say "Top" instead of " 0%". If the -bottom of the text is on the screen, it will say "Bot". If you are -looking at text so small that all of it fits on the screen, the mode -line says "All". - -The L and digits indicate position in another way: they give the -current line number of point. - -The stars near the front mean that you have made changes to the text. -Right after you visit or save a file, that part of the mode line shows -no stars, just dashes. - -The part of the mode line inside the parentheses is to tell you what -editing modes you are in. The default mode is Fundamental which is -what you are using now. It is an example of a "major mode". - -Emacs has many different major modes. Some of them are meant for -editing different languages and/or kinds of text, such as Lisp mode, -Text mode, etc. At any time one and only one major mode is active, -and its name can always be found in the mode line just where -"Fundamental" is now. - -Each major mode makes a few commands behave differently. For example, -there are commands for creating comments in a program, and since each -programming language has a different idea of what a comment should -look like, each major mode has to insert comments differently. Each -major mode is the name of an extended command, which is how you can -switch to that mode. For example, M-x fundamental-mode is a command to -switch to Fundamental mode. - -If you are going to be editing human-language text, such as this file, you -should probably use Text Mode. - ->> Type M-x text mode. - -Don't worry, none of the Emacs commands you have learned changes in -any great way. But you can observe that M-f and M-b now treat -apostrophes as part of words. Previously, in Fundamental mode, -M-f and M-b treated apostrophes as word-separators. - -Major modes usually make subtle changes like that one: most commands -do "the same job" in each major mode, but they work a little bit -differently. - -To view documentation on your current major mode, type C-h m. - ->> Use C-u C-v once or more to bring this line near the top of screen. ->> Type C-h m, to see how Text mode differs from Fundamental mode. ->> Type C-x 1 to remove the documentation from the screen. - -Major modes are called major because there are also minor modes. -Minor modes are not alternatives to the major modes, just minor -modifications of them. Each minor mode can be turned on or off by -itself, independent of all other minor modes, and independent of your -major mode. So you can use no minor modes, or one minor mode, or any -combination of several minor modes. - -One minor mode which is very useful, especially for editing -human-language text, is Auto Fill mode. When this mode is on, Emacs -breaks the line in between words automatically whenever you insert -text and make a line that is too wide. - -You can turn Auto Fill mode on by doing M-x auto fill mode. -When the mode is on, you can turn it off again by doing M-x -auto fill mode. If the mode is off, this command turns it on, -and if the mode is on, this command turns it off. We say that the -command "toggles the mode". - ->> Type M-x auto fill mode now. Then insert a line of "asdf " - over again until you see it divide into two lines. You must put in - spaces between them because Auto Fill breaks lines only at spaces. - -The margin is usually set at 70 characters, but you can change it -with the C-x f command. You should give the margin setting you want -as a numeric argument. - ->> Type C-x f with an argument of 20. (C-u 2 0 C-x f). - Then type in some text and see Emacs fill lines of 20 - characters with it. Then set the margin back to 70 using - C-x f again. - -If you make changes in the middle of a paragraph, Auto Fill mode -does not re-fill it for you. -To re-fill the paragraph, type M-q (META-q) with the cursor inside -that paragraph. - ->> Move the cursor into the previous paragraph and type M-q. - - -* SEARCHING ------------ - -Emacs can do searches for strings (these are groups of contiguous -characters or words) either forward through the text or backward -through it. Searching for a string is a cursor motion command; -it moves the cursor to the next place where that string appears. - -The Emacs search command is different from the search commands -of most editors, in that it is "incremental". This means that the -search happens while you type in the string to search for. - -The command to initiate a search is C-s for forward search, and C-r -for reverse search. BUT WAIT! Don't try them now. - -When you type C-s you'll notice that the string "I-search" appears as -a prompt in the echo area. This tells you that Emacs is in what is -called an incremental search waiting for you to type the thing that -you want to search for. terminates a search. - ->> Now type C-s to start a search. SLOWLY, one letter at a time, - type the word 'cursor', pausing after you type each - character to notice what happens to the cursor. - Now you have searched for "cursor", once. ->> Type C-s again, to search for the next occurrence of "cursor". ->> Now type four times and see how the cursor moves. ->> Type to terminate the search. - -Did you see what happened? Emacs, in an incremental search, tries to -go to the occurrence of the string that you've typed out so far. To -go to the next occurrence of 'cursor' just type C-s again. If no such -occurrence exists, Emacs beeps and tells you the search is currently -"failing". C-g would also terminate the search. - -NOTE: On some systems, typing C-s will freeze the screen and you will -see no further output from Emacs. This indicates that an operating -system "feature" called "flow control" is intercepting the C-s and not -letting it get through to Emacs. To unfreeze the screen, type C-q. -Then see the section "Spontaneous Entry to Incremental Search" in the -Emacs manual for advice on dealing with this "feature". - -If you are in the middle of an incremental search and type , -you'll notice that the last character in the search string is erased -and the search backs up to the last place of the search. For -instance, suppose you have typed "c", to search for the first -occurrence of "c". Now if you type "u", the cursor will move -to the first occurrence of "cu". Now type . This erases -the "u" from the search string, and the cursor moves back to -the first occurrence of "c". - -If you are in the middle of a search and type a control or meta -character (with a few exceptions--characters that are special in -a search, such as C-s and C-r), the search is terminated. - -The C-s starts a search that looks for any occurrence of the search -string AFTER the current cursor position. If you want to search for -something earlier in the text, type C-r instead. Everything that we -have said about C-s also applies to C-r, except that the direction of -the search is reversed. - - -* MULTIPLE WINDOWS ------------------- - -One of the nice features of Emacs is that you can display more than one -window on the screen at the same time. - ->> Move the cursor to this line and type C-u 0 C-l (that's CONTROL-L, not - CONTROL-1). - ->> Now type C-x 2 which splits the screen into two windows. - Both windows display this tutorial. The cursor stays in the top window. - ->> Type C-M-v to scroll the bottom window. - (If you do not have a real META key, type C-v.) - ->> Type C-x o ("o" for "other") to move the cursor to the bottom window. ->> Use C-v and M-v in the bottom window to scroll it. - Keep reading these directions in the top window. - ->> Type C-x o again to move the cursor back to the top window. - The cursor in the top window is just where it was before. - -You can keep using C-x o to switch between the windows. Each -window has its own cursor position, but only one window actually -shows the cursor. All the ordinary editing commands apply to the -window that the cursor is in. We call this the "selected window". - -The command C-M-v is very useful when you are editing text in one -window and using the other window just for reference. You can keep -the cursor always in the window where you are editing, and advance -through the other window sequentially with C-M-v. - -C-M-v is an example of a CONTROL-META character. If you have a real -META key, you can type C-M-v by holding down both CONTROL and META while -typing v. It does not matter whether CONTROL or META "comes first," -because both of these keys act by modifying the characters you type. - -If you do not have a real META key, and you use instead, the -order does matter: you must type followed by CONTROL-v, because -CONTROL- v will not work. This is because is a character -in its own right, not a modifier key. - ->> Type C-x 1 (in the top window) to get rid of the bottom window. - -(If you had typed C-x 1 in the bottom window, that would get rid -of the top one. Think of this command as "Keep just one -window--the window I am already in.") - -You do not have to display the same buffer in both windows. If you -use C-x C-f to find a file in one window, the other window does not -change. You can find a file in each window independently. - -Here is another way to use two windows to display two different -things: - ->> Type C-x 4 C-f followed by the name of one of your files. - End with . See the specified file appear in the bottom - window. The cursor goes there, too. - ->> Type C-x o to go back to the top window, and C-x 1 to delete - the bottom window. - - -* RECURSIVE EDITING LEVELS --------------------------- - -Sometimes you will get into what is called a "recursive editing -level". This is indicated by square brackets in the mode line, -surrounding the parentheses around the major mode name. For -example, you might see [(Fundamental)] instead of (Fundamental). - -To get out of the recursive editing level, type . -That is an all-purpose "get out" command. You can also use it for -eliminating extra windows, and getting out of the minibuffer. - ->> Type M-x to get into a minibuffer; then type to - get out. - -You cannot use C-g to get out of a recursive editing level. This is -because C-g is used for canceling commands and arguments WITHIN the -recursive editing level. - - -* GETTING MORE HELP -------------------- - -In this tutorial we have tried to supply just enough information to -get you started using Emacs. There is so much available in Emacs that -it would be impossible to explain it all here. However, you may want -to learn more about Emacs since it has many other useful features. -Emacs provides commands for reading documentation about Emacs -commands. These "help" commands all start with the character -CONTROL-h, which is called "the Help character". - -To use the Help features, type the C-h character, and then a -character saying what kind of help you want. If you are REALLY lost, -type C-h ? and Emacs will tell you what kinds of help it can give. -If you have typed C-h and decide you do not want any help, just -type C-g to cancel it. - -(Some sites change the meaning of the character C-h. They really -should not do this as a blanket measure for all users, so you have -grounds to complain to the system administrator. Meanwhile, if C-h -does not display a message about help at the bottom of the screen, try -typing the F1 key or M-x help instead.) - -The most basic HELP feature is C-h c. Type C-h, the character c, and -a command character or sequence; then Emacs displays a very brief -description of the command. - ->> Type C-h c C-p. - -The message should be something like this: - - C-p runs the command previous-line - -This tells you the "name of the function". Function names are used -mainly for customizing and extending Emacs. But since function names -are chosen to indicate what the command does, they can serve also as -very brief documentation--sufficient to remind you of commands you -have already learned. - -Multi-character commands such as C-x C-s and (if you have no META or -EDIT or ALT key) v are also allowed after C-h c. - -To get more information about a command, use C-h k instead of C-h c. - ->> Type C-h k C-p. - -This displays the documentation of the function, as well as its -name, in an Emacs window. When you are finished reading the -output, type C-x 1 to get rid of the help text. You do not have -to do this right away. You can do some editing while referring -to the help text, and then type C-x 1. - -Here are some other useful C-h options: - - C-h f Describe a function. You type in the name of the - function. - ->> Try typing C-h f previous-line. - This displays all the information Emacs has about the - function which implements the C-p command. - -A similar command C-h v displays the documentation of variables whose -values you can set to customize Emacs behavior. You need to type in -the name of the variable when Emacs prompts for it. - - C-h a Command Apropos. Type in a keyword and Emacs will list - all the commands whose names contain that keyword. - These commands can all be invoked with META-x. - For some commands, Command Apropos will also list a one - or two character sequence which runs the same command. - ->> Type C-h a file. - -This displays in another window a list of all M-x commands with "file" -in their names. You will see character-commands like C-x C-f listed -beside the corresponding command names such as find-file. - ->> Type C-M-v to scroll the help window. Do this a few times. - ->> Type C-x 1 to delete the help window. - - C-h i Read On-line Manuals (a.k.a. Info). This command puts - you into a special buffer called `*info*' where you - can read on-line manuals for the packages installed on - your system. Type m emacs to read the Emacs - manual. If you have never before used Info, type ? - and Emacs will take you on a guided tour of Info mode - facilities. Once you are through with this tutorial, - you should consult the Emacs Info manual as your - primary documentation. - - -* MORE FEATURES ---------------- - -You can learn more about Emacs by reading its manual, either as a book -or on-line in Info (use the Help menu or type F10 h r). Two features -that you may like especially are completion, which saves typing, and -dired, which simplifies file handling. - -Completion is a way to avoid unnecessary typing. For instance, if you -want to switch to the *Messages* buffer, you can type C-x b *M -and Emacs will fill in the rest of the buffer name as far as it can -determine from what you have already typed. Completion is described -in Info in the Emacs manual in the node called "Completion". - -Dired enables you to list files in a directory (and optionally its -subdirectories), move around that list, visit, rename, delete and -otherwise operate on the files. Dired is described in Info in the -Emacs manual in the node called "Dired". - -The manual also describes many other Emacs features. - - -* CONCLUSION ------------- - -Remember, to exit Emacs permanently use C-x C-c. To exit to a shell -temporarily, so that you can come back to Emacs afterward, use C-z. - -This tutorial is meant to be understandable to all new users, so if -you found something unclear, don't sit and blame yourself - complain! - - -* COPYING ---------- - -This tutorial descends from a long line of Emacs tutorials -starting with the one written by Stuart Cracraft for the original Emacs. - -This version of the tutorial is a part of GNU Emacs. It is copyrighted -and comes with permission to distribute copies on certain conditions: - - Copyright (C) 1985, 1996, 1998, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 Free Software Foundation, Inc. - - 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 3, 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., 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. - -Please read the file COPYING and then do give copies of GNU Emacs to -your friends. Help stamp out software obstructionism ("ownership") by -using, writing, and sharing free software! - -;;; arch-tag: a0f84628-777f-4238-8865-451a73167f55 diff --git a/etc/TUTORIAL.bg b/etc/TUTORIAL.bg deleted file mode 100644 index cc8b2c5b2c5..00000000000 --- a/etc/TUTORIAL.bg +++ /dev/null @@ -1,1197 +0,0 @@ -Âúâåäåíèåòî íà Åìàêñ. Óñëîâèÿòà çà êîïèðàíå ñà â êðàÿ íà òåêñòà. - -Êîìàíäèòå íà Åìàêñ íàé-÷åñòî âêëþ÷âàò êëàâèøèòå CONTROL (ïîíÿêîãà -îòáåëÿçâàí ñ CTRL èëè CTL) è META (ïîíÿêîãà îòáåëÿçâàí ñ EDIT èëè -ALT). Âìåñòî äà ñå èçïèñâàò ñ ïúëíî èìå âñåêè ïúò, íèå ùå èçïîëçâàìå -ñëåäíèòå ñúêðàùåíèÿ: - - C-<çíàê> îçíà÷àâà çàäúðæàíå íà êëàâèøà CONTROL, äîêàòî ñå - íàòèñêà çíàêà <çíàê>. Òàêà C-f ùå îçíà÷àâà: äîêàòî - ñå çàäúðæà íàòèñíàò êëàâèøà CONTROL, ñå íàòèñêà f. - M-<çíàê> îçíà÷àâà çàäúðæàíå íàòèñíàò íà êëàâèøà META (èëè EDIT, - èëè ALT), äîêàòî ñå íàòèñêà <çíàê>. Àêî íÿìà êëàâèø - META, EDIT èëè ALT, âìåñòî íåãî íàòèñíåòå è îòïóñíåòå - êëàâèøà ESC è ñëåä òîâà âúâåäåòå <çíàê>. Íèå - çàïèñâàìå , çà äà îòáåëåæèì êëàâèøà ESC. - -Âàæíà áåëåæêà: â êðàÿ íà Åìàêñ ñåñèÿòà âúâåäåòå äâàòà çíàêà C-x C-c. -Çíàöèòå ">>" îòëÿâî âè äàâàò óêàçàíèå äà èçïúëíèòå êîìàíäà. Íàïðèìåð: -<> ->> Ñåãà âúâåäåòå C-v (Ïîêàæè ñëåäâàùèÿ åêðàí), çà äà ñå ïðèäâèæèòå êúì -ñëåäâàùèÿ åêðàí. - (Íàïðàâåòå ãî ñåãà, çàäðúæòå CONTROL, äîêàòî íàòèñêàòå v). - Îòñåãà íàòàòúê âèå ùå ïðàâèòå òîâà âèíàãè, êîãàòî ïðî÷åòåòå - åêðàíà. - -Çàáåëåæåòå, ÷å èìà ïðèïîêðèâàíå íà äâà ðåäà, êîãàòî ñå ïðèäâèæâàòå îò -åêðàí â åêðàí; òîâà îñèãóðÿâà íÿêàêâà ïðèåìñòâåíîñò, òàêà ÷å äà ìîæåòå -ïî-ëåñíî äà ïðîäúëæèòå ñ ÷åòåíåòî íà òåêñòà. - -Ïúðâîòî íåùî, êîåòî òðÿáâà äà çíàåòå, å êàê äà ñå ïðèäâèæâàòå îò åäíî -ìÿñòî íà òåêñòà êúì äðóãî. Âèå âå÷å çíàåòå êàê äà ñå ïðèäâèæâàòå -åêðàí íàïðåä, ñ C-v. Çà äà ñå ïðèäâèæèòå åêðàí íàçàä, âúâåäåòå M-v -(çàäðúæòå êëàâèøà META è íàòèñíåòå v, èëè âúâåäåòå v, àêî íÿìàòå -êëàâèø META, EDIT èëè ALT). - ->> Îïèòàéòå ñå äà âúâåäåòå M-v è ñëåä òîâà C-v íÿêîëêî ïúòè. - - -* ÎÁÎÁÙÅÍÈÅ ------------ - -Ñëåäâàùèòå êîìàíäè ñà ïîëåçíè ïðè ïúëíîåêðàííî ðàçãëåæäàíå: - - C-v Ïðèäâèæâàíå íàïðåä ñ åäèí åêðàí - M-v Ïðèäâèæâàíå íàçàä ñ åäèí åêðàí - C-l Èç÷èñòâàíå íà åêðàíà è ïðå÷åðòàâàíå íà öåëèÿ òåêñò, - ïðåìåñòâàéêè òåêñòà îêîëî êóðñîðà â ñðåäàòà íà åêðàíà. - (Òîâà å CONTROL-L, íå CONTROL-1.) - ->> Íàìåðåòå êóðñîðà è ñè çàïîìíåòå êàêúâ å òåêñòúò îêîëî íåãî. - Ñëåä òîâà âúâåäåòå C-l. - Íàìåðåòå ïàê êóðñîðà è âèæòå, ÷å ñúùèÿò òåêñò å ïàê îêîëî êóðñîðà. - -Ìîæå ñúùî äà èçïîëçâàòå êëàâèøèòå PageUp è PageDown çà ïðèäâèæâàíå ïî -åêðàíè, àêî âàøèÿò òåðìèíàë ãè ïðèòåæàâà, íî âèå ìîæåòå äà ðåäàêòèðàòå -ïî-åôåêòèâíî, àêî èçïîëçâàòå C-v è M-v. - - -* ÎÑÍÎÂÈ ÍÀ ÓÏÐÀÂËÅÍÈÅÒÎ ÍÀ ÊÓÐÑÎÐÀ ------------------------------------ - -Ïðèäâèæâàíåòî îò åêðàí íà åêðàí å ïîëåçíî, íî êàê äà ñå ïðèäâèæèòå äî -îïðåäåëåíî ìÿñòî âúòðå â òåêñòà íà åêðàíà? - -Èìà íÿêîëêî íà÷èíà äà ãî íàïðàâèòå. Ìîæå äà èçïîëçâàòå êëàâèøèòå -ñòðåëêè, íî å ïî-åôåêòèâíî äà äúðæèòå ðúöåòå ñè â ñòàíäàðòíî ïîëîæåíèå -è äà èçïîëçâàòå êîìàíäèòå C-p, C-b, C-f è C-n. Òåçè çíàöè ñà -åêâèâàëåíòíè íà ÷åòèðèòå êëàâèøè ñòðåëêè, åòî òàêà: - - Ïðåäèøåí ðåä (Previous), C-p - : - : - Íàçàä, C-b .... Òåêóùà ïîçèöèÿ íà êóðñîðà .... Íàïðåä, C-f - (Backward) : (Forward) - : - Ñëåäâàù ðåä (Next), C-n - ->> Ïðèäâèæåòå êóðñîðà äî ðåäà â ñðåäàòà íà òàçè äèàãðàìà, èçïîëçâàéêè - C-n è C-p. Ñëåä òîâà íàòèñíåòå C-l, çà äà âèäèòå öÿëàòà äèàãðàìà, - öåíòðèðàíà íà åêðàíà. - -Ùå íàìåðèòå, ÷å çàïîìíÿíåòî íà òåçè áóêâè ïî äóìèòå íà àíãëèéñêè íà -äåéñòâèÿòà, êîèòî èçâúðøâàò, å ëåñíî: P çà Previous (ïðåäèøåí), N çà -Next (ñëåäâàù), B çà Backward (íàçàä) è F çà Forward (íàïðåä). Âèå ùå -èçïîëçâàòå òåçè îñíîâíè êîìàíäè çà ïðèäâèæâàíå íà êóðñîðà ïðåç öÿëîòî -âðåìå. - ->> Âúâåäåòå íÿêîëêî C-n, çà äà äîâåäåòå êóðñîðà äî òîçè ðåä. - ->> Ïðèäâèæåòå ñå â ðåäà ñ íÿêîëêî C-f è ñëåä òîâà ñ íÿêîëêî C-p. - Âèæòå êàêâî ïðàâè C-p, êîãàòî êóðñîðúò å â ñðåäàòà íà ðåäà. - -Âñåêè ðåä îò òåêñò çàâúðøâà ñúñ çíàê çà íîâ ðåä, êîéòî ñëóæè çà -îòäåëÿíåòî íà ðåäà îò ñëåäâàùèÿ ðåä. Ïîñëåäíèÿò ðåä âúâ âàøèÿ ôàéë -òðÿáâà äà èìà çíàê çà íîâ ðåä â êðàÿ (íî Åìàêñ íå èçèñêâà òàêúâ, -êîãàòî ïðî÷èòà ôàéëà). - ->> Îïèòàéòå C-b â íà÷àëîòî íà ðåä. Òîâà òðÿáâà äà âè ïðèäâèæè â êðàÿ - íà ïðåäèøíèÿ ðåä. Òîâà å òàêà, çàùîòî êóðñîðúò ñå ïðèäâèæâà êúì - çíàêà çà íîâ ðåä íà ïðåäèøíèÿ ðåä. - -C-f ìîæå äà ïðèäâèæâà ïðåç çíàê çà íîâ ðåä òî÷íî êàêòî C-b. - ->> Íàïðàâåòå íÿêîëêî C-b ïðèäâèæâàíèÿ, òàêà ÷å äà äîáèåòå óñåùàíå êúäå - ñå íàìèðà êóðñîðúò. Ñëåä òîâà íÿêîëêî C-f, çà äà ñå âúðíåòå â êðàÿ - íà ðåäà. Ñëåä òîâà îùå íÿêîëêî C-f, çà äà ñå ïðèäâèæèòå äî - ñëåäâàùèÿ ðåä. - -Êîãàòî ñå ïðèäâèæâàòå ñëåä ãîðíèÿ èëè äîëíèÿ êðàé íà åêðàíà, òåêñòúò -îòâúä êðàÿ ñå èçìåñòâà êúì åêðàíà. Òîâà ñå íàðè÷à "ñêðîëèðàíå". Òî -ïîçâîëÿâà íà Åìàêñ äà ïðèäâèæâà êóðñîðà êúì çàäàäåíîòî ìÿñòî â òåêñòà, -áåç äà ãî èçêàðâà èçâúí åêðàíà. - ->> Îïèòàéòå ñå äà ïðèäâèæèòå êóðñîðà ñëåä äîëíèÿ êðàé íà åêðàíà ñ C-n - è âèæòå êàêâî ñå ñëó÷âà. - -Àêî ïðèäâèæâàíåòî ïî çíàöè å òâúðäå áàâíî, ìîæå äà ïðîáâàòå -ïðèäâèæâàíå ïî äóìè. M-f (META-f) ïðèäâèæâà êóðñîðà äóìà íàïðåä, à -M-b ïðèäâèæâà äóìà íàçàä. - ->> Âúâåäåòå íÿêîëêî M-f è M-b. - -Êîãàòî ñòå â ñðåäàòà íà äóìà, M-f ïðèäâèæâà â êðàÿ íà äóìàòà. Êîãàòî -ñòå â ïðàçíî ìÿñòî ìåæäó äóìè, M-f ïðèäâèæâà â êðàÿ íà ñëåäâàùàòà -äóìà. M-b ðàáîòè ïî ïîäîáåí íà÷èí â ïðîòèâîïîëîæíàòà ïîñîêà. - ->> Âúâåäåòå M-f è M-b íÿêîëêî ïúòè, ðàçìåñåíè ñ C-f è C-b, òàêà ÷å äà - ìîæåòå äà íàáëþäàâàòå äåéñòâèåòî íà M-f è M-b â ðàçëè÷íè ìåñòà - âúòðå è ìåæäó äóìèòå. - -Çàáåëåæåòå ïðèëèêàòà ìåæäó C-f è C-b, îò åäíà ñòðàíà, è M-f è M-b, îò -äðóãà. Ìíîãî ÷åñòî Meta-çíàöèòå ñà èçïîëçâàíè çà äåéñòâèÿ âúðõó -åäèíèöè, äåôèíèðàíè îò åçèêà (äóìè, èçðå÷åíèÿ, àáçàöè), äîêàòî -Control-çíàöèòå äåéñòâàò âúðõó îñíîâíè åäèíèöè, êîèòî ñà íåçàâèñèìè îò -òîâà, êàêâî ðåäàêòèðàòå (çíàöè, ðåäîâå è äðóãè). - -Òàçè ïðèëèêà ñå ïðèëàãà âúðõó ðåäîâå è èçðå÷åíèÿ: C-a è C-e ïðèäâèæâàò -äî íà÷àëîòî èëè êðàÿ íà ðåä, à M-a è M-e ïðèäâèæâàò äî íà÷àëîòî è êðàÿ -íà èçðå÷åíèå. - ->> Îïèòàéòå íÿêîëêî C-a, à ñëåä òîâà íÿêîëêî C-e. - Îïèòàéòå íÿêîëêî M-a, à ñëåä òîâà íÿêîëêî M-e. - -Âèæòå êàê ïîâòàðÿíåòî íà C-a íå ïðàâè íèùî, äîêàòî ïîâòàðÿíåòî íà M-a -ïðîäúëæàâà ïðèäâèæâàíåòî ñ îùå åäíî èçðå÷åíèå. Âúïðåêè ÷å òåçè -êëàâèøíè êîìáèíàöèè íå ñà òî÷íî àíàëîãè÷íè, âñÿêà åäíà îò òÿõ èçãëåæäà -åñòåñòâåíà. - -Ïîëîæåíèåòî íà êóðñîðà â òåêñòà ñå íàðè÷à ñúùî "òî÷êà". -Ïåðåôðàçèðàíî, êóðñîðúò ïîêàçâà íà åêðàíà êúäå å ðàçïîëîæåíà òî÷êàòà â -òåêñòà. - -Åòî îáîáùåíèå íà ïðîñòèòå äåéñòâèÿ, äâèæåùè êóðñîðà, âêëþ÷èòåëíî -ïðèäâèæâàùèòå ïî äóìà è èçðå÷åíèå: - - C-f Ïðèäâèæâà íàïðåä ñ åäèí çíàê - C-b Ïðèäâèæâà íàçàä ñ åäèí çíàê - - M-f Ïðèäâèæâà íàïðåä ñ åäíà äóìà - M-b ïðèäâèæâà íàçàä ñ åäíà äóìà - - C-n Ïðèäâèæâà äî ñëåäâàùèÿ ðåä - C-p Ïðèäâèæâà äî ïðåäèøíèÿ ðåä - - C-a Ïðèäâèæâà äî íà÷àëîòî íà ðåä - C-e Ïðèäâèæâà äî êðàÿ íà ðåä - - M-a Ïðèäâèæâà äî íà÷àëîòî íà èçðå÷åíèå - M-e Ïðèäâèæâà äî êðàÿ íà èçðå÷åíèå - ->> Ñåãà îïèòàéòå âñè÷êè òåçè êîìàíäè íÿêîëêî ïúòè çà ïðàêòèêà. Òåçè - ñà íàé-÷åñòî èçïîëçâàíèòå êîìàíäè. - -Äâå äðóãè âàæíè êîìàíäè çà äâèæåíèå íà êóðñîðà ñà M-< (Meta ïî-ìàëêî), -êîÿòî ïðèäâèæâà äî íà÷àëîòî íà öåëèÿ òåêñò, è M-> (Meta ïî-ãîëÿìî), -êîÿòî ïðåìåñòâà äî êðàÿ íà öåëèÿ òåêñò. - -Ïðè ïîâå÷åòî òåðìèíàëè çíàêúò "<" å îòáåëÿçàí íàä çàïåòàÿòà, òàêà ÷å -òðÿáâà äà èçïîëçâàòå êëàâèøà Shift, çà äà ãî íàïèøåòå. Íà òåçè -òåðìèíàëè òðÿáâà äà èçïîëçâàòå Shift, çà äà âúâåäåòå è M-<; áåç êëàâèøà -Shift áèõòå âúâåëè M-çàïåòàÿ. - ->> Îïèòàéòå M-< ñåãà, çà äà ñå ïðèäâèæèòå äî íà÷àëîòî íà âúâåäåíèåòî. - Ñëåä òîâà èçïîëçâàéòå C-v êîëêîòî å íóæíî ïúòè, çà äà ñå ïðèäâèæèòå - äî òóê. - ->> Îïèòàéòå M-> ñåãà, çà äà ñå ïðèäâèæèòå äî êðàÿ íà âúâåäåíèåòî. - Ñëåä òîâà èçïîëçâàéòå M-v êîëêîòî å íóæíî ïúòè, çà äà ñå ïðèäâèæèòå - äî òóê. - -Âèå ìîæåòå ñúùî äà ñå ïðèäâèæâàòå ñ êëàâèøèòå-ñòðåëêè, àêî âàøèÿò -òåðìèíàë èìà òàêèâà. Íèå ïðåïîðú÷âàìå äà íàó÷èòå C-b, C-f, C-n è C-p -ïî òðè ïðè÷èíè. Ïúðâî, òå ðàáîòÿò íà âñè÷êè âèäîâå òåðìèíàëè. Âòîðî, -âåäíúæ ñëåä êàòî äîáèåòå ïðàêòèêà â èçïîëçâàíåòî íà Åìàêñ, ùå -îòêðèåòå, ÷å âúâåæäàíåòî íà òåçè Control-çíàöè å ïî-áúðçî îò -âúâåæäàíåòî íà êëàâèøèòå ñòðåëêè, çàùîòî íå òðÿáâà äà ïðåìåñòâàòå -ðúêàòà ñè äàëå÷ îò îáëàñòòà íà êëàâèøèòå ñ áóêâè. Òðåòî, âåäíúæ ñëåä -êàòî ñè îôîðìèòå íàâèê äà èçïîëçâàòå òåçè êîìàíäè ñ Control çíàöè, âèå -ìîæåòå ñúùî òàêà ëåñíî äà íàó÷èòå ïî-íàïðåäíàëèòå êîìàíäè çà äâèæåíèå -íà êóðñîðà. - -Ïîâå÷åòî Åìàêñ êîìàíäè ïðèåìàò ÷èñëîâ àðãóìåíò; çà ïîâå÷åòî îò òÿõ òîé -ñëóæè êàòî áðîÿ÷ íà ïîâòîðåíèÿ. Íà÷èíúò, ïî êîéòî äàâàòå ÷èñëîâ -áðîÿ÷, å ñ âúâåæäàíå íà C-u, ïîñëåäâàíî îò âúâåæäàíå íà öèôðèòå, è -âñè÷êî òîâà ïðåäè âúâåæäàíå íà ñàìàòà êîìàíäà. Àêî èìàòå êëàâèø META -(èëè EDIT èëè ALT), èìà äðóã, àëòåðíàòèâåí íà÷èí äà âúâåäåòå ÷èñëîâ -àðãóìåíò: âúâåäåòå öèôðèòå, äîêàòî çàäúðæàòå êëàâèøà META. Íèå -ïðåïîðú÷âàìå äà íàó÷èòå íà÷èíà ñ C-u, çàùîòî òîé ðàáîòè íà êîéòî è äà -å òåðìèíàë. ×èñëîâèÿò àðãóìåíò ñå íàðè÷à ñúùî "ïðåôèêñåí àðãóìåíò", -çàùîòî ãî âúâåæäàòå ïðåäè êîìàíäàòà, çà êîÿòî å ïðåäíàçíà÷åí. - -Íàïðèìåð, C-u 8 C-f ïðèäâèæâà îñåì çíàêà íàïðåä. - ->> Îïèòàéòå èçïîëçâàíåòî íà C-n èëè C-p ñ ÷èñëîâ àðãóìåíò, çà äà - ïðèäâèæèòå êóðñîðà äî ðåä, áëèçúê äî òîçè, ñàìî ñ åäíà êîìàíäà. - -Ïîâå÷åòî êîìàíäè èçïîëçâàò ÷èñëîâèÿ àðãóìåíò êàòî áðîÿ÷ íà -ïîâòîðåíèÿòà, íî íÿêîè ãî èçïîëçâàò çà äðóãè öåëè. Íÿêîëêî êîìàíäè -(íî íèêîÿ îò òåçè, êîèòî ñòå íàó÷èëè äîñåãà) ãî èçïîëçâàò êàòî ôëàã -- -ïðèñúñòâèåòî íà ÷èñëîâ àðãóìåíò, íåçàâèñèìî îò ñòîéíîñòà ìó, êàðà -êîìàíäàòà äà âúðøè íåùî ðàçëè÷íî. - -C-v è M-v ñà äðóã âèä èçêëþ÷åíèå. Êîãàòî èì å äàäåí àðãóìåíò, òå -ñêðîëèðàò åêðàíà íàãîðå èëè íàäîëó ñúñ çàäàäåíèÿ áðîé ðåäîâå, âìåñòî ñ -åêðàíè. Íàïðèìåð, C-u 8 C-v ñêðîëèðà åêðàíà ñ 8 ðåäà. - ->> Ñåãà îïèòàéòå C-u 8 C-v. - -Òîâà áè òðÿáâàëî äà ñêðîëèðà åêðàíà ñ 8 ðåäà. Àêî èñêàòå äà -ñêðîëèðàòå îòíîâî íàäîëó, ìîæå äà äàäåòå àðãóìåíò íà M-v. - -Àêî èçïîëçâàòå ãðàôè÷åí èíòåðôåéñ, êàòî X11 èëè MS-Windows, áè -òðÿáâàëî äà èìà òúíêà ïðàâîúãúëíà îáëàñò, íàðå÷åíà ïëúçãà÷ (scroll -bar), â ëÿâàòà ñòðàíà íà ïðîçîðåöà íà Åìàêñ. Âèå ìîæåòå äà ñêðîëèðàòå -òåêñòà, ùðàêàéêè ñ ìèøêàòà â ïëúçãà÷à. - ->> Îïèòàéòå äà íàòèñíåòå ñðåäíèÿ áóòîí íà âúðõà íà îñâåòåíàòà îáëàñò - âúòðå â ïëúçãà÷à. Òîâà áè òðÿáâàëî äà ñêðîëèðà òåêñòà êúì - ïîëîæåíèå, îïðåäåëåíî îò òîâà êîëêî âèñîêî èëè íèñêî ñòå ùðàêíàëè. - ->> Îïèòàéòå ñå äà äâèæèòå ìèøêàòà íàãîðå è íàäîëó, äîêàòî ñòå - çàäúðæàëè äåñíèÿ áóòîí íàòèñíàò. Ùå âèäèòå, ÷å òåêñòúò ñå ñêðîëèðà - íàãîðå è íàäîëó, êàòî äâèæèòå ìèøêàòà. - - -* ÊÎÃÀÒÎ ÅÌÀÊÑ Å ÁËÎÊÈÐÀË -------------------------- - -Àêî Åìàêñ ñïðå äà îòãîâàðÿ íà âàøèòå êîìàíäè, âèå ìîæåòå äà ãî ñïðåòå -áåçîïàñíî, êàòî âúâåäåòå C-g. Ìîæå äà èçïîëçâàòå C-g, çà äà ñïðåòå -êîìàíäà, êîÿòî ñå èçïúëíÿâà òâúðäå äúëãî. - -Ñúùî ìîæåòå äà èçïîëçâàòå C-g, çà äà îòìåíèòå ÷èñëîâ àðãóìåíò èëè -íà÷àëîòî íà êîìàíäà, êîÿòî íå èñêàòå äà çàâúðøèòå. - ->> Âúâåäåòå C-u 100, çà äà íàïðàâèòå ÷èñëîâ àðãóìåíò 100, è âúâåäåòå - C-g. Ñåãà âúâåäåòå C-f. Òðÿáâà äà ñå ïðèäâèæèòå ñ òî÷íî åäèí - çíàê, çàùîòî âèå ïðåêðàòèõòå àðãóìåíòúò ñ C-g. - -Àêî ñòå âúâåëè ïî ïîãðåøêà, ìîæåòå äà ñå èçìúêíåòå ñ C-g. - - -* ÇÀÁÐÀÍÅÍÈ ÊÎÌÀÍÄÈ -------------------- - -Íÿêîè êîìàíäè íà Åìàêñ ñà "çàáðàíåíè", òàêà ÷å íà÷èíàåùèòå ïîòðåáèòåëè -äà íå ìîãàò äà ãè óïîòðåáÿò ïî ïîãðåøêà. - -Àêî âúâåäåòå íÿêîÿ îò çàáðàíåíèòå êîìàíäè, Åìàêñ èçâåæäà ñúîáùåíèå, -êàçâàéêè êàêâà å áèëà êîìàíäàòà è ïèòàéêè âè äàëè èñêàòå äà ïðîäúëæèòå -íàïðåä è äà èçïúëíèòå êîìàíäàòà. - -Àêî íàèñòèíà èñêàòå äà èçïðîáâàòå êîìàíäàòà, âúâåäåòå êëàâèøà èíòåðâàë -â îòãîâîð íà âúïðîñà. Îáèêíîâåíî àêî íå èñêàòå äà èçïúëíèòå -çàáðàíåíàòà êîìàíäà, îòãîâàðÿòå íà âúïðîñà ñ "n". - ->> Âúâåäåòå C-x C-l (êîÿòî å çàáðàíåíà êîìàíäà), è ñëåä òîâà âúâåäåòå - "n" â îòãîâîð íà âúïðîñà. - - -* ÏÐÎÇÎÐÖÈ ----------- - -Åìàêñ ìîæå äà óïðàâëÿâà íÿêîëêî ïðîçîðåöà, âñåêè èçâåæäàéêè ñâîé -ñîáñòâåí òåêñò. Íèå ùå îáÿñíèì ïî-êúñíî êàê äà èçïîëçâàòå íÿêîëêî -ïðîçîðåöà. Òî÷íî ñåãà íèå èñêàìå äà îáÿñíèì êàê äà ñå îòúðâåòå îò -äîïúëíèòåëíè ïðîçîðöè è äà ñå âúðíåòå êúì îñíîâíîòî ðåäàêòèðàíå ñ åäèí -ïðîçîðåö. Ïðîñòî å: - - C-x 1 Åäèí ïðîçîðåö (ò.å. ïðåìàõíè âñè÷êè äðóãè ïðîçîðöè). - -Òîâà å CONTROL-x, ïîñëåäâàí îò öèôðàòà 1. C-x 1 ðàçøèðÿâà ïðîçîðåöà, -ñúäúðæàù êóðñîðà, çà äà ìîæå äà çàïúëíè öåëèÿ åêðàí. Òÿ ïðåìàõâà -âñè÷êè äðóãè ïðîçîðöè. - ->> Ïðèäâèæåòå êóðñîðà äî òîçè ðåä è âúâåäåòå C-u 0 C-l. ->> Âúâåäåòå C-h k C-f. - Âèæòå êàê òîçè ïðîçîðåö ñå ñâèâà, äîêàòî äðóã ñå ïîÿâÿâà, çà äà - èçâåäå äîêóìåíòàöèÿòà íà êîìàíäàòà C-f. - ->> Âúâåäåòå C-x 1 è âèæòå êàê ïðîçîðåöúò ñ äîêóìåíòàöèÿòà èç÷åçâà. - -Òàçè êîìàíäà íå å êàòî äðóãèòå êîìàíäè, êîèòî ñòå íàó÷èëè, â òîâà -îòíîøåíèå, ÷å ñå ñúñòîè îò äâà çíàêà. Çàïî÷âà ñúñ çíàêà C-x. Èìà -öÿëà ðåäèöà îò êîìàíäè, êîèòî çàïî÷âàò ñ C-x; ìíîãî îò òÿõ èìàò íåùî -îáùî ñ ïðîçîðöè, ôàéëîâå, áóôåðè è ñâúðçàíèòå ñ òÿõ íåùà. Òåçè -êîìàíäè ñà îò äâà, òðè èëè ÷åòèðè çíàêà. - - -* ÂÌÚÊÂÀÍÅ È ÈÇÒÐÈÂÀÍÅ ----------------------- - -Àêî èñêàòå äà âìúêíåòå òåêñò, ïðîñòî ãî âúâåäåòå. Çíàöèòå, êîèòî -ìîãàò äà ñå âèæäàò, êàòî À, 7, * è ò.í., ñå âúçïðèåìàò îò Åìàêñ êàòî -òåêñò è ñå âìúêâàò âåäíàãà. Âúâåäåòå (êëàâèøúò çà âðúùàíå â -íà÷àëîòî íà ðåäà), çà äà âìúêíåòå çíàê çà íîâ ðåä. - -Ìîæå äà èçòðèåòå ïîñëåäíèÿ çíàê, êîéòî ñòå âúâåëè, ñ âúâåæäàíå íà -. å êëàâèø îò êëàâèàòóðàòà -- ñúùèÿò, êîéòî -îáèêíîâåíî èçïîëçâàòå èçâúí Åìàêñ, çà äà èçòðèåòå ïîñëåäíèÿ âúâåäåí îò -âàñ çíàê. Îáèêíîâåíî å ãîëÿì êëàâèø, íà íÿêîëêî ðåäà ðàçñòîÿíèå îò -êëàâèøà , è îáèêíîâåíî å îòáåëÿçàí ñ "Delete", "Del" èëè -"Backspace". - -Àêî ãîëåìèÿò êëàâèø òàì å ñ åòèêåò "Backspace", òîãàâà òîé å òîçè, -êîéòî ùå èçïîëçâàòå çà . Ìîæå äà èìà îùå åäèí êëàâèø ñ -åòèêåò "Delete" íÿêúäå äðóãàäå, íî òîé íå å . - -Ïî-îáùî êàçàíî, èçòðèâà çíàêà òî÷íî ïðåäè òåêóùîòî ìÿñòî íà -êóðñîðà. - ->> Íàïðàâåòå òîâà ñåãà -- íàïèøåòå íÿêîëêî çíàêà, ïîñëå ãè èçòðèéòå ñ - âúâåæäàíå íà íÿêîëêî ïúòè. Íå ñå áåçïîêîéòå, ÷å òîçè - ôàéë ùå áúäå ïðîìåíåí; âèå íÿìà äà ïðîìåíèòå ïúðâîíà÷àëíîòî - âúâåäåíèå. Òîâà å âàøå ëè÷íî êîïèå. - -Êîãàòî ðåä îò òåêñòà ñòàíå òâúðäå äúëúã, çà äà ñå ñúáåðå â ðåä îò -åêðàíà, ðåäúò îò òåêñòà ñå "ïðîäúëæàâà" íà ñëåäâàùèÿ ðåä. Îáðàòíà -íàêëîíåíà ÷åðòà ("\") (èëè, àêî èçïîëçâàòå ãðàôè÷åí èíòåðôåéñ, ìàëêà -èçêðèâåíà ñòðåëêà) â äÿñíàòà ãðàíèöà îòáåëÿçâà ðåä, êîéòî å áèë -ïðîäúëæåí. - ->> Âúâåäåòå òåêñò, äîêàòî ñòèãíåòå äÿñíàòà ãðàíèöà, è ïðîäúëæåòå ñ - âìúêâàíåòî. Ùå âèäèòå ïðîäúëæåíèåòî íà ðåäà äà ñå ïîêàçâà. - ->> Èçïîëçâàéòå íÿêîëêî , çà äà èçòðèåòå òåêñòà, äîêàòî ðåäúò - ñå âìåñòè â åäèí åêðàíåí ðåä. Ïðîäúëæåíèåòî íà ðåäà èç÷åçâà. - -Ìîæå äà èçòðèåòå çíàêà çà íîâ ðåä òî÷íî êàêòî âñåêè äðóã çíàê. -Èçòðèâàíåòî íà çíàêà çà íîâ ðåä ìåæäó äâà ðåäà ãè ñëèâà â åäèí ðåä. -Àêî ïîëó÷åíèÿò êîìáèíèðàí ðåä å òâúðäå äúëúã, çà äà ñå âìåñòè â -øèðèíàòà íà åêðàíà, òîé ùå áúäå ïîêàçàí êàòî ïðîäúëæåí ðåä. - ->> Ïðèäâèæåòå êóðñîðà â íà÷àëîòî íà ðåä è âúâåäåòå . Òîâà ùå - ñëåå òîçè ðåä ñ ïðåäèøíèÿ. - ->> Âúâåäåòå , çà äà âìúêíåòå íàíîâî çíàêà çà íîâ ðåä, êîéòî - èçòðèõòå. - -Çàïîìíåòå, ÷å íà ïîâå÷åòî êîìàíäè íà Åìàêñ ìîæå äà áúäå çàäàäåí áðîÿ÷ -íà ïîâòîðåíèÿòà; òîâà âêëþ÷âà âìúêâàíåòî íà òåêñòîâè çíàöè. -Ïîâòàðÿíåòî íà òåêñòîâ çíàê ãî âìúêâà íÿêîëêî ïúòè. - ->> Îïèòàéòå òîâà ñåãà -- âúâåäåòå C-u 8 *, çà äà âìúêíåòå ********. - -Ñåãà âèå ñòå íàó÷èëè íàé-îñíîâíèòå íà÷èíè çà âúâåæäàíå íà íåùî â Åìàêñ -è ïîïðàâÿíå íà ãðåøêè. Ìîæåòå ñúùî òàêà äà èçòðèâàòå äóìè èëè ðåäîâå. -Åòî îáîáùåíèå íà èçòðèâàùèòå äåéñòâèÿ: - - èçòðèâàíå íà çíàêà òî÷íî ïðåäè êóðñîðà - C-d èçòðèâàíå íà çíàêà òî÷íî ñëåä êóðñîðà - - M- èçòðèâàíå íà äóìàòà íåïîñðåäñòâåíî ïðåäè êóðñîðà - M-d èçòðèâàíå íà äóìàòà ñëåä êóðñîðà - - C-k èçòðèâàíå îò ìÿñòîòî íà êóðñîðà äî êðàÿ íà ðåäà - M-k èçòðèâàíå äî êðàÿ íà òåêóùîòî èçðå÷åíèå - -Çàáåëåæåòå, ÷å è C-d, ñðàâíåíè ñ M- è M-d, -ðàçøèðÿâàò ïîäîáèåòî, çàïî÷íàòî îò C-f è M-f (äîáðå, íå å -íàèñòèíà êîíòðîëèðàù çíàê, íî íåêà íå ñå áåçïîêîèì çà òîâà). C-k è -M-k ñà ïîäîáíè íà C-e è M-e â ñìèñúë, ÷å åäíèòå ñà çà ðåäîâå, à -äðóãèòå -- çà èçðå÷åíèÿ. - -Ìîæåòå ñúùî äà ïðåìàõíåòå âñÿêà ÷àñò îò áóôåðà ñ åäèí óíèâåðñàëåí -íà÷èí. Ïðèäâèæåòå ñå äî åäèíèÿ êðàé íà ÷àñòòà è âúâåäåòå C-@ èëè -C-èíòåðâàë (êîåòî è äà å îò äâåòå). Ïðèäâèæåòå ñå äî äðóãèÿ êðàé íà -÷àñòòà è âúâåäåòå C-w. Òîâà ùå èçðåæå öåëèÿ òåêñò ìåæäó òåçè äâà -êðàÿ. - ->> Ïðèäâèæåòå êóðñîðà äî çíàêà "Ì" â íà÷àëîòî íà ïðåäèøíèÿ àáçàö. ->> Âúâåäåòå C-èíòåðâàë. Åìàêñ òðÿáâà äà èçâåäå ñúîáùåíèå "Mark set" â - äîëíèÿ êðàé íà åêðàíà. ->> Ïðèäâèæåòå êóðñîðà äî áóêâàòà "ð" â "êðàé" íà âòîðèÿ ðåä îò àáçàöà. ->> Âúâåäåòå C-w. Òîâà ùå èçðåæå òåêñòà, çàïî÷âàù îò "Ì" è çàâúðøâàù - òî÷íî ïðåäè "ð". - -Ðàçëèêàòà ìåæäó "èçðÿçâàíå" (kill, cut) è "èçòðèâàíå" (delete) å, ÷å -"èçðÿçàíèÿò" òåêñò ìîæå äà áúäå âìúêíàò íàíîâî, äîêàòî "èçòðèòèòå" -íåùà íå ìîãàò äà ñå âìúêíàò íàíîâî. Ïîñòàâÿíåòî íàíîâî íà èçðÿçàí -òåêñò ñå íàðè÷à "âìúêâàíå" (yank, paste). Îáùî êàçàíî, êîìàíäèòå, -êîèòî îòñòðàíÿâàò ìíîãî òåêñò, ãî èçðÿçâàò (òàêà ÷å òîé äà ìîæå äà -áúäå âìúêíàò), äîêàòî êîìàíäèòå, êîèòî îòñòðàíÿâàò ñàìî åäèí çíàê èëè -èçòðèâàò ñàìî ïðàçíè ðåäîâå è çíàöè, èçâúðøâàò èçòðèâàíå (òàêà ÷å íå -ìîæåòå äà âìúêíåòå íàíîâî òîçè òåêñò). - ->> Ïðèäâèæåòå êóðñîðà äî íà÷àëîòî íà ðåä, êîéòî íå å ïðàçåí. Òîãàâà - âúâåäåòå C-k, çà äà èçðåæåòå òåêñòà íà òîçè ðåä. ->> Âúâåäåòå C-k âòîðè ïúò. Ùå âèäèòå, ÷å òîâà èçðÿçâà çíàêà çà íîâ - ðåä, êîéòî ñëåäâà ðåäà. - -Çàáåëåæåòå, ÷å åäèíè÷íî C-k èçðÿçâà ñúäúðæàíèåòî íà ðåäà, à ñëåäâàùîòî -C-k èçðÿçâà öåëèÿ ðåä è ïðàâè äðóãèòå ðåäîâå äà ñå ïðèäâèæàò íàãîðå. -C-k îáðàáîòâà ÷èñëîâèòå àðãóìåíòè ïî ñïåöèàëåí íà÷èí: ïðåìàõâàò ñå -òîëêîâà íà áðîé ðåäîâå È òÿõíîòî ñúäúðæàíèå. Òîâà íå å ïðîñòî -ïîâòîðåíèå. C-u 2 C-k èçðÿçâà äâà ðåäà è òåõíèòå çíàöè çà íîâ ðåä; -âúâåæäàíåòî íà C-k äâà ïúòè íå ïðàâè òîâà. - -Âðúùàíåòî îáðàòíî íà òåêñò ñå íàðè÷à "âìúêâàíå". (Ìèñëåòå çà íåãî -êàòî çà èçâàæäàíå îáðàòíî, èëè äðúïâàíå îáðàòíî, íà òåêñò, êîéòî å áèë -èçðÿçàí.) Ìîæåòå äà âìúêâàòå èçðÿçàíèÿ òåêñò èëè íà ñúùîòî ìÿñòî, -îòêúäåòî å áèë ïðåìàõíàò, èëè íà äðóãî ìÿñòî â áóôåðà, äàæå è â -ðàçëè÷åí ôàéë. Ìîæåòå äà âìúêâàòå åäèí è ñúù òåêñò íÿêîëêî ïúòè; òîâà -ïðàâè íÿêîëêî êîïèÿ îò íåãî. - -Êîìàíäàòà çà âìúêâàíå å C-y. Òÿ âìúêâà íàíîâî ïîñëåäíèÿ èçðÿçàí òåêñò -â òåêóùîòî ìÿñòî íà êóðñîðà. - ->> Îïèòàéòå ãî: âúâåäåòå C-y, çà äà èçâåäåòå òåêñòà îáðàòíî. - -Àêî íàïðàâèòå íÿêîëêî C-k â ðåä, âñè÷êî îò èçðÿçàíèÿ òåêñò ñå çàïàçâà -çàåäíî, òàêà ÷å åäíî C-y ùå èçâàäè âñè÷êè ðåäîâå íàâåäíúæ. - ->> Íàïðàâåòå òîâà ñåãà, âúâåäåòå C-k íÿêîëêî ïúòè. - -Ñåãà, çà äà èçêàðàòå èçðÿçàíèÿ òåêñò: - ->> Âúâåäåòå C-y. Ñëåä òîâà ïðèäâèæåòå êóðñîðà íàäîëó íÿêîëêî ðåäà è - âúâåäåòå C-y îòíîâî. Ñåãà âèæäàòå êàê äà êîïèðàòå íÿêàêúâ òåêñò. - -Êàêâî äà ïðàâèòå, àêî èìàòå íÿêàêúâ òåêñò, êîéòî èñêàòå äà âìúêíåòå -îáðàòíî, è ñëåä òîâà èçðåæåòå íåùî äðóãî? C-y ùå èçâàäè ïîñëåäíîòî -èçðÿçâàíå. Íî ïðåäèøíèÿò òåêñò íå å çàãóáåí. Ìîæåòå äà ãî âúðíåòå -îáðàòíî, èçïîëçâàéêè êîìàíäàòà M-y. Ñëåä êàòî èçïúëíèòå C-y, çà äà -âçåìåòå ïîñëåäíîòî èçðÿçâàíå, âúâåæäàíåòî íà M-y çàìåíÿ òîçè èçâàäåí -òåêñò ñ ïðåäèøíîòî èçðÿçâàíå. Âúâåæäàíåòî íà M-y îòíîâî è îòíîâî -âðúùà ïî-ðàííè è ïî-ðàííè èçðÿçâàíèÿ. Êîãàòî ñòèãíåòå òåêñòà, êîéòî -òúðñèòå, íå å íóæíî äà ïðàâèòå íèùî ïîâå÷å, çà äà ãî çàäúðæèòå. -Ïðîñòî ïðîäúëæåòå ñ ðåäàêòèðàíåòî, îñòàâÿéêè èçâàäåíèÿ òåêñò, êúäåòî -ñè å. - -Àêî âúâåäåòå M-y äîñòàòú÷åí áðîé ïúòè, ùå ñå âúðíåòå â íà÷àëíîòî -ïîëîæåíèå (ïîñëåäíîòî èçðÿçâàíå). - ->> Èçðåæåòå ðåä, ïðèäâèæåòå ñå íÿêúäå, èçðåæåòå äðóã ðåä. - Èçïúëíåòå C-y, çà äà âúðíåòå îáðàòíî âòîðèÿ èçðÿçàí ðåä. - Èçïúëíåòå M-y è òîçè âúðíàò òåêñò ùå áúäå çàìåíåí ñ ïúðâèÿ - èçðÿçàí ðåä. - Èçïúëíåòå íÿêîëêî M-y è âèæòå êàêâî ñå ïîëó÷àâà. Èçïúëíÿâàéòå òîâà, - äîêàòî âòîðèÿò èçðÿçàí ðåä ñå âúðíå, è ñëåä òîâà îùå íÿêîëêî ïúòè. - Àêî èñêàòå, ìîæå äà ïðîáâàòå äà äàäåòå íà M-y ïîëîæèòåëíè è - îòðèöàòåëíè ÷èñëîâè àðãóìåíòè. - - -* ÎÒÌßÍÀ --------- - -Àêî íàïðàâèòå ïðîìÿíà â òåêñòà è ñëåä òîâà ðåøèòå, ÷å òîâà å áèëî -ãðåøêà, âèå ìîæåòå äà îòìåíèòå ïðîìÿíàòà ñ êîìàíäàòà çà îòìåíÿíå, C-x -u. - -Îáèêíîâåíî C-x u îòìåíÿ ïðîìåíèòå, íàïðàâåíè îò åäíà êîìàíäà; àêî -ïîâòàðÿòå C-x u íÿêîëêî ïúòè ïîñëåäîâàòåëíî, âñÿêî ïîâòîðåíèå îòìåíÿ -îùå åäíà êîìàíäà. - -Íî èìà äâå èçêëþ÷åíèÿ: êîìàíäèòå, êîèòî íå ïðîìåíÿò òåêñòà, íå ñå -áðîÿò (òîâà âêëþ÷âà ïðèäâèæâàíåòî íà êóðñîðà è ñêðîëèðàùèòå êîìàíäè), -è ñàìîâìúêâàùèòå ñå çíàöè îáèêíîâåíî ñå îáðàáîòâàò íà ãðóïè, âñÿêà äî -20 çíàêà. (Òîâà íàìàëÿâà áðîÿ íà C-x u, êîèòî òðÿáâà äà âúâåäåòå, çà -äà îòìåíèòå âúâåäåí òåêñò.) - ->> Èçðåæåòå òîçè ðåä ñ C-k, ñëåä òîâà âúâåäåòå C-x u è òîé òðÿáâà äà - ñå ïîÿâè îòíîâî. - -C-_ å àëòåðíàòèâíà îòìåíÿùà êîìàíäà; òÿ ðàáîòè òî÷íî êàòî C-x u, íî å -ïî-ëåñíà çà âúâåæäàíå íÿêîëêî ïúòè ïîñëåäîâàòåëíî. Íåäîñòàòúêúò íà -C_- å, ÷å íà íÿêîè êëàâèàòóðè íå å î÷åâèäíî êàê òðÿáâà äà ñå âúâåäå. -Çàòîâà îñèãóðÿâàìå è C-x u. Íà íÿêîè òåðìèíàëè ìîæå äà âúâåäåòå C-_ ñ -âúâåæäàíå íà /, äîêàòî çàäúðæàòå CONTROL. - -×èñëîâ àðãóìåíò êúì C-_ èëè C-x u äåéñòâà êàòî áðîÿ÷ íà ïîâòîðåíèÿòà. - -Ìîæå äà îòìåíÿòà èçòðèâàíå íà òåêñò òî÷íî êàêòî îòìåíÿòå èçðÿçâàíå íà -òåêñò. Ðàçëè÷èåòî ìåæäó èçðÿçâàíåòî íà íåùî è èçòðèâàíåòî ìó -âúçäåéñòâà äàëè ùå ìîæå äà ãî èçâàäèòå ñ C-y; çà îòìåíÿíåòî íÿìà -ðàçëèêà ìåæäó äâàòà âèäà. - - -* ÔÀÉËÎÂÅ ---------- - -Çà äà íàïðàâèòå òåêñòà, êîéòî ðåäàêòèðàòå, ïîñòîÿíåí, òðÿáâà äà ãî -ñëîæèòå âúâ ôàéë.  ïðîòèâåí ñëó÷àé òîé ùå èç÷åçíå, êîãàòî Åìàêñ -ïðèêëþ÷è. Çà äà ñëîæèòå âàøèÿ òåêñò âúâ ôàéë, òðÿáâà äà "íàìåðèòå" -ôàéëà ïðåäè äà âúâåæäàòå òåêñò. (Òîâà ñúùî ñå íàðè÷à "ïîñåùàâàíå" íà -ôàéëà.) - -Íàìèðàíå íà ôàéë îçíà÷àâà, ÷å âèæäàòå ñúäúðæàíèåòî ìó â Åìàêñ.  -ìíîãî ñëó÷àè òîâà å êàòî äà ðåäàêòèðàòå ñàìèÿ ôàéë. Îáà÷å ïðîìåíèòå, -êîèòî ïðàâèòå, èçïîëçâàéêè Åìàêñ, íå îñòàâàò ïîñòîÿííè, äîêàòî íå -"çàïèøåòå" ôàéëà. Òîâà å òàêà, çà äà ñå ïðåäîòâðàòè îñòàâÿíåòî íà -ïîëóïðîìåíåí ôàéë â ñèñòåìàòà, êîãàòî íå èñêàòå òîâà. Äîðè êîãàòî -çàïèñâàòå, Åìàêñ îñòàâÿ íà÷àëíèÿ ôàéë ïîä ïðîìåíåíî èìå, â ñëó÷àé, ÷å -ïî-êúñíî ðåøèòå, ÷å âàøèòå ïðîìåíè ñà áèëè ãðåøêà. - -Àêî ïîãëåäíåòå â äúíîòî íà åêðàíà, ùå âèäèòå ðåä, êîéòî çàïî÷âà è -çàâúðøâà ñ òèðåòà è çàïî÷âà ñ "-b:-- TUTORIAL.bg" èëè íåùî ïîäîáíî. -Òàçè ÷àñò îò åêðàíà ïîêàçâà èìåòî íà ôàéëà, êîéòî ñòå ïîñåòèëè. Òî÷íî -ñåãà âèå ñòå ïîñåòèëè ôàéë, íàðå÷åí "TUTORIAL.bg", êîéòî å âàøåòî -ëè÷íî êîïèå-÷åðíîâà íà Åìàêñ âúâåäåíèåòî. Êîãàòî íàìåðèòå ôàéë â -Åìàêñ, èìåòî íà òîçè ôàéë ùå ñå ïîÿâè íà ñúùîòî ìÿñòî. - -Îñîáåíîñò íà êîìàíäàòà çà íàìèðàíå íà ôàéë å, ÷å òðÿáâà äà êàæåòå -èìåòî íà ôàéëà, êîéòî èñêàòå. Íèå ãî íàðè÷àìå "÷åòåíå íà àðãóìåíò îò -òåðìèíàëà" (â òîçè ñëó÷àé àðãóìåíòúò å èìåòî íà ôàéëà). Ñëåä êàòî -âúâåäåòå êîìàíäàòà - - C-x C-f Íàìèðàíå íà ôàéë - -Åìàêñ âè ïîäêàíÿ äà âúâåäåòå èìåòî íà ôàéëà. Èìåòî íà ôàéëà, êîåòî -íàïèøåòå, ñå ïîÿâÿâà â äúíîòî íà åêðàíà. Ðåäúò â äúíîòî íà åêðàíà ñå -íàðè÷à ìèíèáóôåð, êîãàòî ñå èçïîëçâà çà òîçè âèä âõîä. Ìîæåòå äà -èçïîëçâàòå îáèêíîâåíèòå êîìàíäè çà ðåäàêòèðàíå íà Åìàêñ, çà äà -ðåäàêòèðàòå èìåòî íà ôàéëà. - -Êîãàòî âúâåæäàòå èìåòî íà ôàéëà (èëè êàêúâòî è äà å âõîä â -ìèíèáóôåðà), ìîæåòå äà ïðåêðàòèòå êîìàíäàòà ñ C-g. - ->> Âúâåäåòå C-x C-f è ñëåä òîâà C-g. Òîâà ïðåêðàòÿâà ìèíèáóôåðà, à - ñúùî è êîìàíäàòà C-x C-f, êîÿòî ñå å èçïúëíÿâàëà â ìèíèáóôåðà. - Òàêà ÷å íå íàìèðàòå ôàéë. - -Êîãàòî ïðèêëþ÷èòå ñ âúâåæäàíåòî íà èìåòî íà ôàéëà, âúâåäåòå , -çà äà ïîêàæåòå òîâà. Òîãàâà C-x C-f òðúãâà äà ðàáîòè è íàìèðà ôàéëà, -êîéòî ñòå èçáðàëè. Ìèíèáóôåðúò èç÷åçâà, êîãàòî êîìàíäàòà C-x C-f -ñâúðøè. - -Ñëåä ìàëêî ñúäúðæàíèåòî íà ôàéëà ñå ïîÿâÿâà íà åêðàíà è âèå ìîæåòå äà -ðåäàêòèðàòå ñúäúðæàíèåòî ìó. Êîãàòî ïîæåëàåòå äà çàïàçèòå âàøèòå -ïðîìåíè çà ïîñòîÿííî, âúâåäåòå êîìàíäàòà - - C-x C-s Çàïàçâàíå íà ôàéëà - -Òîâà êîïèðà òåêñòà îò Åìàêñ âúâ ôàéëà. Ïúðâèÿ ïúò, êîãàòî òîâà ñå -íàïðàâè, Åìàêñ ïðåèìåíóâà íà÷àëíèÿ ôàéë ñ íîâî èìå, òàêà ÷å òîé äà íå -ñå èçãóáè. Íîâîòî èìå ñå ïîñòðîÿâà ñ äîáàâÿíå íà "~" â êðàÿ íà èìåòî -íà íà÷àëíèÿ ôàéë. - -Êîãàòî çàïàçâàíåòî å ñâúðøèëî, Åìàêñ èçâåæäà èìåòî íà ôàéëà, êîéòî å -áèë çàïèñàí. Òðÿáâà äà çàïèñâàòå äîñòàòú÷íî ÷åñòî, òàêà ÷å äà íå -èçãóáèòå ìíîãî ðàáîòà, àêî ñèñòåìàòà ñå ñðèíå ïî íÿêàêâà ïðè÷èíà. - ->> Âúâåäåòå C-x C-s, çàïàçâàéêè âàøåòî êîïèå îò âúâåäåíèåòî. - Òîâà òðÿáâà äà èçâåäå "Wrote ...TUTORIAL.bg" â äúíîòî íà åêðàíà. - -ÇÀÁÅËÅÆÊÀ: Íà íÿêîè ñèñòåìè âúâåæäàíåòî íà C-x C-s ùå çàìðúçè åêðàíà è -âèå íÿìà äà âèæäàòå ïîâå÷å èçõîä îò Åìàêñ. Òîâà ïîêàçâà, ÷å åäíà -"ñïîñîáíîñò" íà îïåðàöèîííàòà ñèñòåìà, íàðè÷àíà "óïðàâëåíèå íà ïîòîêà" -(flow control), å ïðèõâàíàëà C-s è íå ãî ïðîïóñêà êúì Åìàêñ. Çà äà -ðàçìðàçèòå åêðàíà, âúâåäåòå C-q. Òîãàâà âèæòå ñåêöèÿòà "Ñïîíòàííî -âêëþ÷âàíå íà ïîñòúïêîâî òúðñåíå" (Spontaneous Entry to Incremental -Search) â ðúêîâîäñòâîòî íà Åìàêñ çà ñúâåò êàê äà ñå ñïðàâèòå ñ òàçè -"ñïîñîáíîñò". - -Ìîæå äà íàìåðèòå ñúùåñòâóâàù ôàéë, äà ãî ðàçãëåäàòå è äà ãî -ðåäàêòèðàòå. Ìîæåòå ñúùî äà íàìåðèòå ôàéë, êîéòî íå ñúùåñòâóâà. Òîâà -å íà÷èíúò çà ñúçäàâàíå íà íîâè ôàéëîâå â Åìàêñ: íàìèðàòå ôàéëà, êîéòî -ùå áúäå â íà÷àëîòî ïðàçåí, è òîãàâà çàïî÷âàòå âìúêâàíåòî íà òåêñòà çà -ôàéëà. Êîãàòî ãîâîðèòå çà "çàïèñâàíå" íà ôàéë, Åìàêñ âñúùíîñò ùå -ñúçäàäå ôàéëà ñ òåêñòà, êîéòî ñòå âúâåëè. Îòòàì íàòàòúê ìîæå äà -ñ÷èòàòå, ÷å ðåäàêòèðàòå âå÷å ñúùåñòâóâàù ôàéë. - - -* ÁÓÔÅÐÈ --------- - -Àêî íàìåðèòå âòîðè ôàéë ñ C-x C-f, ïúðâèÿò ôàéë îñòàâà â Åìàêñ. -Ìîæåòå äà ïðåâêëþ÷èòå îáðàòíî êúì íåãî, êàòî ãî íàìåðèòå ïàê ñ C-x -C-f. Ïî òîçè íà÷èí ìîæå äà ïîëó÷èòå äîñòà íà áðîé ôàéëîâå â Åìàêñ. - ->> Ñúçäàéòå ôàéë ñ èìå "foo", âúâåæäàéêè C-x C-f foo . - Âìúêíåòå ìàëêî òåêñò, ðåäàêòèðàéòå ãî è çàïàçåòå "foo" ñ âúâåæäàíå - íà C-x C-s. - Íàêðàÿ âúâåäåòå C-x C-f TUTORIAL.bg , çà äà ñå âúðíåòå - îáðàòíî âúâ âúâåäåíèåòî. - -Åìàêñ çàïàçâà òåêñòà íà âñåêè ôàéë â îáåêò, íàðè÷àí "áóôåð". -Íàìèðàíåòî íà ôàéë ïðàâè íîâ áóôåð â Åìàêñ. Çà äà âèäèòå ñïèñúê íà -áóôåðèòå, êîèòî â ìîìåíòà ñúùåñòâóâàò âúâ âàøèÿ Åìàêñ, âúâåäåòå - - C-x C-b Ïîêàçâàíå íà áóôåðèòå - ->> Îïèòàéòå C-x C-b ñåãà. - -Âèæòå êàê âñåêè áóôåð èìà èìå, à ïîíÿêîãà è èìå íà ôàéë çà ôàéëà, -÷èåòî ñúäúðæàíèå äúðæè. ÂÑÅÊÈ òåêñò, êîéòî âèæäàòå â Åìàêñ ïðîçîðåö, -å âèíàãè ÷àñò îò íÿêàêúâ áóôåð. - ->> Âúâåäåòå C-x 1, çà äà ìàõíåòå ñïèñúêà ñ áóôåðèòå. - -Êîãàòî èìàòå íÿêîëêî áóôåðà, ñàìî åäèí îò òÿõ å "òåêóù" â äàäåí ìîìåíò -îò âðåìå. Òîâà å áóôåðúò, êîéòî ðåäàêòèðàòå. Àêî èñêàòå äà -ðåäàêòèðàòå äðóã áóôåð, ñå íóæäàåòå îò "ïðåâêëþ÷âàíå" êúì íåãî. Àêî -èñêàòå äà ñå ïðåâêëþ÷èòå êúì áóôåð, êîéòî ñúîòâåòñòâà íà ôàéë, ìîæåòå -äà ãî íàïðàâèòå, êàòî ïðîñòî ïîñåòèòå ôàéëà îòíîâî ñ C-x C-f. Íî èìà -è ïî-ëåñåí íà÷èí: èçïîëçâàíåòî íà êîìàíäàòà C-x b.  òàçè êîìàíäà -òðÿáâà äà âúâåäåòå èìåòî íà áóôåðà. - ->> Âúâåäåòå C-x b foo , çà äà ñå âúðíåòå êúì áóôåðà "foo", - êîéòî äúðæè òåêñòà íà ôàéëà "foo". Òîãàâà âúâåäåòå C-x b TUTORIAL - , çà äà ñå âúðíåòå â òîâà âúâåäåíèå. - - ïîâå÷åòî ñëó÷àè èìåòî íà áóôåðà å ñúùîòî êàòî èìåòî íà ôàéëà (áåç -÷àñòòà â êîÿ äèðåêòîðèÿ ñå íàìèðà). Îáà÷å òîâà íå âèíàãè å âÿðíî. -Ñïèñúêúò ñ áóôåðèòå, êîéòî ïðàâèòå ñ C-x C-b, âèíàãè âè ïîêàçâà èìåòî -íà âñåêè áóôåð. - -ÂÑÅÊÈ òåêñò, êîéòî âèæäàòå â Åìàêñ ïðîçîðåö, å âèíàãè ÷àñò îò íÿêàêúâ -áóôåð. Íÿêîè áóôåðè íå ñúîòâåòñòâàò íà ôàéëîâå. Íàïðèìåð áóôåðúò, -èìåíóâàí "*Buffer List*", íå ñúîòâåòñòâà íà ôàéë. Òîâà å áóôåðúò, -êîéòî ñúäúðæà ñïèñúêà ñ áóôåðèòå, êîèòî ñòå íàïðàâèëè ñ C-x C-b. -Áóôåðúò, èìåíóâàí "*Messages*", ñúùî íå ñúîòâåòñòâà íà ôàéë; òîé -ñúäúðæà ñúîáùåíèÿòà, êîèòî ñå ïîÿâÿâàò â äúíîòî íà åêðàíà ïî âðåìå íà -Åìàêñ ñåñèÿòà. - ->> Âúâåäåòå C-x b *Messages* , çà äà âèäèòå áóôåðà ñúñ - ñúîáùåíèÿòà. Ñëåä òîâà âúâåäåòå C-x C-b TUTORIAL , çà äà - ñå âúðíåòå êúì òîâà âúâåäåíèå. - -Àêî íàïðàâèòå ïðîìåíè â òåêñòà íà åäèí ôàéë è òîãàâà íàìåðèòå äðóã -ôàéë, òîâà íÿìà äà çàïèøå ïúðâèÿ ôàéë. Íåãîâèòå ïðîìåíè îñòàâàò âúòðå -â Åìàêñ, â áóôåðà íà ôàéëà. Ñúçäàâàíåòî èëè ðåäàêòèðàíåòî íà áóôåðà -íà âòîðèÿ ôàéë íÿìà åôåêò âúðõó áóôåðà íà ïúðâèÿ ôàéë. Òîâà å ìíîãî -ïîëåçíî, íî ñúùî îçíà÷àâà, ÷å ñå íóæäàåòå îò óäîáåí íà÷èí äà çàïàçèòå -áóôåðà íà ïúðâèÿ ôàéë. Ùå å íåóäîáíî äà ïðåâêëþ÷èòå îáðàòíî ñ C-x -C-f, çà äà ãî çàïàçèòå ñ C-x C-s. Òàêà ÷å èìàìå - - C-x s Çàïàçâà íÿêîè áóôåðè - -C-x s ïèòà çà âñåêè áóôåð, êîéòî ñúäúðæà ïðîìåíè, êîèòî íå ñòå -çàïàçèëè. Âúïðîñúò çà âñåêè òàêúâ áóôåð å äàëè äà áúäå çàïàçåí. - ->> Âìúêíåòå ðåä â òåêñòà, ñëåä òîâà âúâåäåòå C-x s. - Òðÿáâà äà áúäåòå ïîïèòàí äàëè äà çàïàçèòå áóôåðà, èìåíóâàí "TUTORIAL". - Îòãîâîðåòå ñ "äà" íà âúïðîñà, êàòî âúâåäåòå "y". - - -* ÐÀÇØÈÐßÂÀÍÅ ÍÀ ÍÀÁÎÐÀ ÊÎÌÀÍÄÈ -------------------------------- - -Èìà ìíîãî, ìíîãî ïîâå÷å êîìàíäè íà Åìàêñ, îòêîëêîòî ìîãàò äà ñå ñëîæàò -íà âñè÷êè êîíòðîëíè è ìåòà çíàöè. Åìàêñ çàîáèêàëÿ òîâà ñ X (eXtended) -êîìàíäàòà. Òîâà ñòàâà ïî äâà íà÷èíà: - - C-x Çíàêîâî ðàçøèðÿâàíå. Ïîñëåäâàíî îò åäèí çíàê. - M-x Ðàçøèðÿâàíå ñ èìåíóâàíà êîìàíäà. Ïîñëåäâàíî îò äúëãî - èìå. - -Òåçè êîìàíäè ñà îáùî âçåòî ïîëåçíè, íî ïî-ìàëêî, îòêîëêîòî êîìàíäèòå, -êîèòî äîñåãà ñòå íàó÷èëè. Âå÷å âèäÿõòå äâå îò òÿõ: êîìàíäèòå âúðõó -ôàéëîâå C-x C-f çà íàìèðàíå (Find) è C-x C-s çà çàïàçâàíå (Save). -Äðóã ïðèìåð å êîìàíäàòà çà êðàé íà Åìàêñ ñåñèÿòà -- òîâà å êîìàíäàòà -C-x C-c. (Íå ñå áåçïîêîéòå, ÷å ìîæå äà èçãóáèòå âñè÷êè ïðîìåíè, êîèòî -ñòå íàïðàâèëè; C-x C-c ïðåäëàãà äà çàïàçè âñåêè ïðîìåíåí ôàéë, ïðåäè -äà ïðåìàõíå Åìàêñ.) - -C-z å êîìàíäàòà çà èçëèçàíå îò Åìàêñ *âðåìåííî* -- òàêà ÷å äà ìîæåòå -äà ñå âúðíåòå êúì ñúùàòà Åìàêñ ñåñèÿ ïî-êúñíî. - -Íà ñèñòåìè, êîèòî ïîçâîëÿâàò òîâà, C-z "èçîñòàâÿ" (suspend) Åìàêñ, -ò.å. âðúùà êúì îáâèâêàòà, íî íå ðàçðóøàâà Åìàêñ.  ïîâå÷åòî îáâèâêè -ìîæåòå äà ïðîäúëæèòå Åìàêñ ñåñèÿòà ñ êîìàíäàòà "fg" èëè ñ "%emacs". - -Íà ñèñòåìè, êîèòî íå ïîçâîëÿâàò èçîñòàâÿíå, C-z ñúçäàâà íîâà -ïîäîáâèâêà, êîÿòî âúðâè ïîä Åìàêñ, çà äà âè äàäå øàíñ äà ñòàðòèðàòå -äðóãè ïðîãðàìè è äà ñå âúðíåòå êúì Åìàêñ ñëåä òîâà; òîâà íå å èñòèíñêî -"èçëèçàíå" îò Åìàêñ.  òîçè ñëó÷àé êîìàíäàòà íà îáâèâêàòà "exit" å -îáèêíîâåíèÿò íà÷èí äà ñå âúðíåòå îáðàòíî êúì Åìàêñ îò ïîäîáâèâêàòà. - -Ìîìåíòúò äà èçïîëçâàòå C-x C-c å, êîãàòî èñêàòå äà èçëåçåòå îò -ñèñòåìàòà. Òîâà å è ïðàâèëíàòà êîìàíäà çà èçëèçàíå, êîãàòî Åìàêñ å -èçâèêàí îò ïîùåíñêà ïðîãðàìà èëè äðóãè ñòðàíè÷íè ïðîãðàìè, òúé êàòî òå -ìîæå è äà íå çíàÿò êàê äà ñå ñïðàâÿò ñ èçîñòàâÿíåòî íà Åìàêñ. Ïðè -îáèêíîâåíè îáñòîÿòåëñòâà, îáà÷å, àêî íå ñòå òðúãíàëè äà èçëèçàòå îò -ñèñòåìàòà, ïî-äîáðå å äà èçîñòàâèòå Åìàêñ ñ C-z, âìåñòî äà èçëèçàòå îò -Åìàêñ. - -Èìà ìíîãî êîìàíäè C-x. Åòî ñïèñúê íà òåçè, êîèòî ñòå íàó÷èëè: - - C-x C-f Íàìèðàíå íà ôàéë. - C-x C-s Çàïàçâàíå íà ôàéë. - C-x C-b Ñïèñúê íà áóôåðèòå. - C-x C-c Èçëèçàíå îò Åìàêñ. - C-x 1 Èçòðèâàíå íà âñè÷êè ïðîçîðöè îñâåí åäèí. - C-x u Îòìÿíà. - -Èìåíóâàíèòå ðàçøèðåíè êîìàíäè ñà êîìàíäè, êîèòî ñå èçïîëçâàò äàæå îùå -ïî-ðÿäêî, èëè êîìàíäè, êîèòî ñå èçïîëçâàò ñàìî â îïðåäåëåíè ðåæèìè. -Ïðèìåð å êîìàíäàòà replace-string, êîÿòî çàìåíÿ ãëîáàëíî åäèí íèç ñ -äðóã. Êîãàòî âúâåäåòå M-x, Åìàêñ âè ïîäñêàçâà â äúíîòî íà åêðàíà ñ -M-x è âèå òðÿáâà äà âúâåäåòå èìåòî íà êîìàíäàòà, â òîçè ñëó÷àé -"replace-string". Ïðîñòî âúâåäåòå "repl s" è Åìàêñ ùå çàâúðøè -èìåòî. ( å êëàâèøúò Tab, îáèêíîâåíî íàìèðàù ñå íàä êëàâèøà -CapsLock èëè êëàâèøà Shift áëèçî äî ëåâèÿ êðàé íà êëàâèàòóðàòà.) -Çàâúðøåòå èìåòî íà êîìàíäàòà ñ . - -Êîìàíäàòà replace-string èçèñêâà äâà àðãóìåíòà -- íèçúò, êîéòî ùå áúäå -çàìåíÿí, è íèçúò, êîéòî ùå ãî çàìåíè. Òðÿáâà äà çàâúðøèòå âúâåæäàíåòî -íà âñåêè àðãóìåíò ñ . - ->> Ïðèäâèæåòå êóðñîðà äî ïðàçíèÿ ðåä, äâà ðåäà íàäîëó ïîä òîçè. - Òîãàâà âúâåäåòå M-x repl sïðîìåíÿèçìåíÿ - - Çàáåëåæåòå êàê òîçè ðåä ñå ïðîìåíÿ: âèå çàìåíèõòå äóìàòà - ï-ð-î-ì-å-í-ÿ ñ "èçìåíÿ", êúäåòî è äà ñå íàìèðà ñëåä íà÷àëíîòî - ìÿñòî íà êóðñîðà. - -ÇÀÁÅËÅÆÊÀ: Ïðåâêëþ÷âàíåòî êúì âúâåæäàíå íà êèðèëñêè áóêâà ñòàâà ñ C-\. - - -* ÀÂÒÎÌÀÒÈ×ÍÎ ÇÀÏÀÇÂÀÍÅ ------------------------ - -Êîãàòî ñòå íàïðàâèëè ïðîìåíè âúâ ôàéë, íî îùå íå ñòå ãî çàïàçèëè, òå -ìîãàò äà áúäàò çàãóáåíè, àêî êîìïþòúðúò âíåçàïíî ñå èçêëþ÷è. Çà äà âè -ïðåäïàçè îò òàêèâà ñèòóàöèè, Åìàêñ ïåðèîäè÷íî çàïàçâà "àâòîìàòè÷íî -çàïàçâàí" ôàéë çà âñåêè ôàéë, êîéòî ðåäàêòèðàòå. Èìåòî íà àâòîìàòè÷íî -çàïàçâàíèÿ ôàéë èìà # â íà÷àëîòî è â êðàÿ; íàïðèìåð, àêî âàøèÿò ôàéë å -ñ èìå "hello.c", èìåòî íà íåãîâèÿ àâòîìàòè÷íî çàïàçâàí ôàéë ùå áúäå -"#hello.c#". Êîãàòî çàïàçâàòå ôàéë ïî îáèêíîâåíèÿ íà÷èí, Åìàêñ -èçòðèâà íåãîâèÿ àâòîìàòè÷íî çàïèñâàí ôàéë. - -Àêî êîìïþòúðúò çàâèñíå, ìîæå äà âúçñòàíîâèòå âàøàòà àâòîìàòè÷íî -çàïàçâàíà ðåäàêöèÿ, êàòî íàìåðèòå ôàéëà êàêòî îáèêíîâåíî (ôàéëúò, -êîéòî ñòå ðåäàêòèðàëè, íå àâòîìàòè÷íî çàïàçâàíèÿ) è ñëåä òîâà âúâåäåòå -M-x recover file. Êîãàòî êîìàíäàòà èçèñêà ïîòâúðæäåíèå, -âúâåäåòå yes, çà äà ïðîäúëæèòå è äà âúçñòàíîâèòå àâòîìàòè÷íî -çàïàçâàíèòå äàííè. - - -* ÅÕÎ ÎÁËÀÑÒÒÀ --------------- - -Àêî Åìàêñ âèäè, ÷å âúâåæäàòå ìíîãîçíàêîâè êîìàíäè áàâíî, ùå âè ãè -ïîêàæå â äúíîòî íà åêðàíà, â îáëàñò, íàðè÷àíà "åõî îáëàñò". Åõî -îáëàñòòà îáõâàùà ïîñëåäíèÿ ðåä îò åêðàíà. - - -* ÐÅÄ ÍÀ ÐÅÆÈÌÀ ----------------- - -Ðåäúò òî÷íî íàä åõî îáëàñòòà ñå íàðè÷à "ðåä íà ðåæèìà" (mode line). -Òîé ïîêàçâà íåùî êàòî: - --b:** TUTORIAL.bg (Fundamental)--L670--58%---------------- - -Òîçè ðåä äàâà ïîëåçíà èíôîðìàöèÿ çà ñúñòîÿíèåòî íà Åìàêñ è òåêñòà, -êîéòî ðåäàêòèðàòå. - -Âå÷å çíàåòå êàêâî îçíà÷àâà èìåòî íà ôàéëà -- òîâà å ôàéëúò, êîéòî ñòå -íàìåðèëè. -NN%-- ïîêàçâà âàøàòà òåêóùà ïîçèöèÿ â òåêñòà; òîâà -îçíà÷àâà, ÷å NN ïðîöåíòà îò òåêñòà å íàä âúðõà íà åêðàíà. Àêî -íà÷àëîòî íà ôàéëà å íà åêðàíà, ùå ñå ïîêàçâà --Top-- (âðúõ) âìåñòî ---00%--. Àêî êðàÿ íà ôàéëà å íà åêðàíà, ùå ñå ïîêàçâà --Bot-- (äúíî). -Àêî ãëåäàòå òåêñò, êîéòî å òîëêîâà ìàëúê, ÷å ñå ïîêàçâà èçöÿëî íà -åêðàíà, ðåäúò íà ðåæèìà ùå èçâåäå --All--. - -Çíàêúò L è öèôðèòå ïîêàçâàò ìÿñòîòî ïî äðóã íà÷èí: òîâà å íîìåðúò íà -òåêóùèÿ ðåä íà òî÷êàòà. - -Çâåçäèòå áëèçî äî íà÷àëîòî îçíà÷àâàò, ÷å ñòå íàïðàâèëè ïðîìåíè â -òåêñòà. Âåäíàãà ñëåä êàòî ïîñåòèòå èëè çàïàçèòå ôàéë, òàçè ÷àñò îò -ðåäà íà ðåæèìà âå÷å íå ïîêàçâà çâåçäè, à ñàìî òèðåòà. - -×àñòòà îò ðåäà íà ðåæèìà âúòðå â ñêîáèòå å, çà äà âè ïîêàæå â êàêúâ -ðåæèì íà ðåäàêòèðàíå ñå íàìèðàòå. Ïîäðàçáèðàùèÿò ñå ðåæèì å -Fundamental (Îñíîâåí), êîéòî èçïîëçâàòå â ìîìåíòà. Òîâà å ïðèìåð çà -"ãëàâåí ðåæèì" (major mode). - -Åìàêñ èìà ìíîãî ãëàâíè ðåæèìè. Íÿêîè îò òÿõ ñà ïðåäâèäåíè çà -ðåäàêòèðàíå íà ðàçëè÷íè åçèöè è/èëè âèäîâå òåêñò, êàòî íàïðèìåð ðåæèì -Ëèñï, ðåæèì Òåêñò è äðóãè. Âúâ âñåêè åäèí ìîìåíò îò âðåìå òî÷íî åäèí -ãëàâåí ðåæèì å àêòèâåí è íåãîâîòî èìå ìîæå âèíàãè äà áúäå íàìåðåíî â -ðåäà íà ðåæèìà, òî÷íî êàêòî "Fundamental" ñåãà. - -Âñåêè ãëàâåí ðåæèì ïðàâè íÿêîè êîìàíäè äà ñå äúðæàò ïî ðàçëè÷åí íà÷èí. -Íàïðèìåð, èìà êîìàíäè çà ðåäàêòèðàíå íà êîìåíòàðè â ïðîãðàìè, è òúé -êàòî âñåêè ïðîãðàìåí åçèê èìà ðàçëè÷íà èäåÿ çà òîâà êàê òðÿáâà äà -èçãëåæäàò êîìåíòàðèòå, âñåêè ãëàâåí ðåæèì òðÿáâà äà âìúêâà êîìåíòàðè -ïî ðàçëè÷åí íà÷èí. Âñåêè ãëàâåí ðåæèì å èìå íà ðàçøèðåíà êîìàíäà, ñ -êîÿòî ïðåâêëþ÷âàòå êúì òîçè ðåæèì. Íàïðèìåð, M-x fundamental-mode å -êîìàíäà çà ïðåâêëþ÷âàíå êúì ðåæèì Fundamental. - -Êîãàòî ðåäàêòèðàòå òåêñò íà åñòåñòâåí åçèê, êàòî òîçè ôàéë, -íàé-âåðîÿòíî òðÿáâà äà èçïîëçâàòå ðåæèì Òåêñò (text). - ->> Âúâåäåòå M-x text mode. - -Íå ñå áåçïîêîéòå, íèêîÿ îò Åìàêñ êîìàíäèòå, êîèòî ñòå íàó÷èëè, íÿìà äà -ñå ïðîìåíè ïî íÿêàêúâ ñúùåñòâåí íà÷èí. Íî ìîæå äà çàáåëåæèòå, ÷å M-f -è M-b ñåãà âúçïðèåìàò àïîñòðîôèòå (') êàòî ÷àñò îò äóìèòå. Ïðåäè -òîâà, â îñíîâíèÿ ðåæèì (Fundamental), M-f è M-b ñå âúçïðèåìàõà êàòî -ðàçäåëèòåëè íà äóìè. - -Ãëàâíèòå ðåæèìè îáèêíîâåíî ïðàâÿò ìàëêè ïðîìåíè êàòî òàçè: ïîâå÷åòî -êîìàíäè âúðøàò "ñúùàòà ðàáîòà" âúâ âñåêè ãëàâåí ðåæèì, íî ðàáîòÿò ïî -ìàëêî ïî-ðàçëè÷åí íà÷èí. - -Çà äà âèäèòå äîêóìåíòàöèÿòà íà âàøèÿ òåêóù ãëàâåí ðåæèì, âúâåäåòå C-h -m. - ->> Óïîòðåáåòå C-u C-v âåäíúæ èëè ïîâå÷å ïúòè, çà äà äîêàðàòå òîçè ðåä - áëèçî äî âúðõà íà åêðàíà. ->> Âúâåäåòå C-h m, çà äà âèäèòå êàê òåêñòîâèÿò ðåæèì ñå ðàçëè÷àâà îò - îñíîâíèÿ ðåæèì. ->> Âúâåäåòå C-x 1, çà äà ïðåìàõíåòå äîêóìåíòàöèÿòà îò åêðàíà. - -Ãëàâíèòå ðåæèìè ñå íàðè÷àò ãëàâíè, çàùîòî èìà è ìàëêè (âòîðîñòåïåííè) -ðåæèìè (minor modes). Ìàëêèòå ðåæèìè íå ñà àëòåðíàòèâè íà ãëàâíèòå, à -ïðîñòî ìàëêè ïðîìåíè êúì òÿõ. Âñåêè ìàëúê ðåæèì ìîæå äà áúäå âêëþ÷åí -èëè èçêëþ÷åí ñàì çà ñåáå ñè, íåçàâèñèìî îò âñè÷êè äðóãè ìàëêè ðåæèìè -è íåçàâèñèìî îò âàøèÿ ãëàâåí ðåæèì. Òàêà ÷å ìîæå äà íå èçïîëçâàòå -ìàëêè ðåæèìè, äà èçïîëçâàòå åäèí ìàëúê ðåæèì, èëè äà èçïîëçâàòå -íÿêàêâà êîìáèíàöèÿ îò íÿêîëêî ìàëêè ðåæèìà. - -Åäèí ãëàâåí ðåæèì, êîéòî å ìíîãî ïîëåçåí, îñîáåíî çà ðåäàêòèðàíå íà -òåêñò íà åñòåñòâåí åçèê, å ðåæèìúò íà àâòîìàòè÷íî çàïúëâàíå (Auto Fill -mode). Êîãàòî òîçè ðåæèì å âêëþ÷åí, Åìàêñ àâòîìàòè÷íî ðàçäåëÿ ðåäà -ïðè ìÿñòîòî ìåæäó äóìèòå, êîãàòî âìúêâàòå òåêñò è íàïðàâèòå ðåä, êîéòî -å òâúðäå äúëúã. - -Ìîæå äà âêëþ÷èòå ðåæèìà íà àâòîìàòè÷íî çàïúëâàíå, êàòî èçïúëíèòå M-x -auto fill mode. Êîãàòî ðåæèìúò å âêëþ÷åí, ìîæå äà ãî -èçêëþ÷èòå ñ M-x auto fill mode. Àêî ðåæèìúò å èçêëþ÷åí, òàçè -êîìàíäà ãî âêëþ÷âà, à àêî å âêëþ÷åí, ãî èçêëþ÷âà. Êàçâàìå, ÷å -êîìàíäàòà "îáðúùà ðåæèìà". - ->> Âúâåäåòå M-x auto fill mode ñåãà. Ñëåä òîâà âìúêíåòå ðåä - îò "asdf " îòíîâî è îòíîâî, äîêàòî íå âèäèòå, ÷å òåêñòúò ñå ðàçäåëÿ - íà äâà ðåäà. Òðÿáâà äà ñëàãàòå èíòåðâàëè ìåæäó äóìèòå, çàùîòî - àâòîìàòè÷íîòî çàïúëâàíå ðàçäåëÿ ðåäîâåòå ñàìî ïðè èíòåðâàëèòå. - -Ãðàíèöàòà îáèêíîâåíî å çàäàäåíà íà 70 çíàêà, íî ìîæåòå äà ÿ ïðîìåíèòå -ñ êîìàíäàòà C-x f. Òðÿáâà äà çàäàâàòå òàçè ãðàíèöà êàòî ÷èñëîâ -àðãóìåíò íà êîìàíäàòà. - ->> Âúâåäåòå C-x f ñ àðãóìåíò 20. (C-u 2 0 C-x f). - Ñåãà âúâåäåòå íÿêàêúâ òåêñò è âèæòå êàê Åìàêñ çàïúëâà ðåäîâåòå ñ ïî - íå ïîâå÷å îò 20 çíàêà. Ïîñëå âúðíåòå îáðàòíî ãðàíèöàòà íà 70, - èçïîëçâàéêè C-x f îòíîâî. - -Àêî íàïðàâèòå ïðîìåíè â ñðåäàòà íà àáçàö, ðåæèìúò íà àâòîìàòè÷íî -çàïúëâàíå íÿìà äà ãî çàïúëíè íàíîâî çà âàñ. -Çà äà çàïúëíèòå íàíîâî àáçàö, âúâåæäàéòå M-q (META-q), äîêàòî êóðñîðúò -å âúòðå â àáçàöà. - ->> Ïðèäâèæåòå êóðñîðà âúòðå â ïðåäèøíèÿ àáçàö è âúâåäåòå M-q. - - -* ÒÚÐÑÅÍÅ ---------- - -Åìàêñ ìîæå äà èçâúðøâà òúðñåíèÿ íà íèçîâå (òîâà ñà ïîñëåäîâàòåëíîñòè -îò çíàöè èëè äóìè) èëè íàïðåä â òåêñòà, èëè íàçàä â íåãî. Òúðñåíåòî -íà íèç å ïðèäâèæâàùà êóðñîðà êîìàíäà; òÿ ïðåìåñòâà êóðñîðà íà -ñëåäâàùîòî ìÿñòî, êúäåòî ñå ñðåùà íèçúò. - -Êîìàíäàòà çà òúðñåíå íà Åìàêñ ñå ðàçëè÷àâà îò êîìàíäàòà çà òúðñåíå íà -ïîâå÷åòî ðåäàêòîðè ïî òîâà, ÷å òÿ å "ïîñòúïêîâà". Òîâà îçíà÷àâà, ÷å -òúðñåíåòî ñå èçâúðøâà îùå äîêàòî âúâåæäàòå òåêñòà, êîéòî òúðñèòå. - -Êîìàíäàòà çà çàïî÷âàíå íà òúðñåíå å C-s çà òúðñåíå íàïðåä, è C-r çà -òúðñåíå íàçàä. ÍÎ ÏÎ×ÀÊÀÉÒÅ! Íå ãè ïðîáâàéòå ñåãà. - -Êîãàòî âúâåäåòå C-s, ùå çàáåëåæèòå, ÷å íèçúò "I-search" ñå ïîÿâÿâà -êàòî ïîäñêàçêà â åõî îáëàñòòà. Òîâà âè êàçâà, ÷å Åìàêñ å â òîâà, -êîåòî ñå íàðè÷à ïîñòúïêîâî òúðñåíå, ÷àêàéêè âè äà âúâåæäàòå òåêñòà, -êîéòî èñêàòå äà òúðñèòå. ïðèêëþ÷âà òúðñåíåòî. - ->> Ñåãà âúâåäåòå C-s, çà äà çàïî÷íåòå òúðñåíåòî. ÁÀÂÍÎ, áóêâà ïî - áóêâà, âúâåäåòå äóìàòà "òúðñåíå", èç÷àêâàéêè ñëåä âúâåæäàíåòî íà - âñåêè çíàê, çà äà ìîæå äà çàáåëåæèòå êàêâî ñòàâà ñ êóðñîðà. Ñåãà - èçâúðøèõòå òúðñåíå íà "òúðñåíå" âåäíúæ. ->> Âúâåäåòå îòíîâî C-s, çà äà òúðñèòå äðóãî ñúâïàäåíèå ñ "òúðñåíå". ->> Ñåãà âúâåäåòå òðè ïúòè è âèæòå êàê ñå ïðèäâèæâà êóðñîðà. ->> Âúâåäåòå , çà äà ïðåêðàòèòå òúðñåíåòî. - -Çàáåëÿçàõòå ëè êàêâî ñòàíà? Åìàêñ, êîãàòî òúðñè ïîñòúïêîâî, ñå îïèòâà -äà íàìåðè ñëåäâàùîòî ñúâïàäåíèå íà íèçà, êîéòî ñå âúâåæäà. Çà äà -îòèäåòå íà ñëåäâàùîòî ñúâïàäåíèå íà "òúðñíå", ïðîñòî îòíîâî âúâåäåòå -C-s. Àêî íÿìà òàêîâà ñúâïàäåíèå, Åìàêñ áèáèïâà è âè êàçâà, ÷å -òúðñåíåòî å "ïðîâàëåíî" (failing). C-g ñúùî ïðåêðàòÿâà òúðñåíåòî. - -ÇÀÁÅËÅÆÊÀ: Íà íÿêîè ñèñòåìè âúâåæäàíåòî íà C-s ùå çàìðàçè åêðàíà è âèå -íÿìà äà ìîæå äà âèäèòå ïîâå÷å ðåàêöèÿ îò Åìàêñ. Òîâà ïîêàçâà, ÷å -"ñïîñîáíîñò" íà îïåðàöèîííàòà ñèñòåìà, íàðå÷åíà "óïðàâëåíèå íà ïîòîêà" -(flow control), å ïðèõâàíàëà C-s è íå ãî ïðîïóñêà äî Åìàêñ. Çà äà -ðàçìðàçèòå åêðàíà, âúâåäåòå C-q. Òîãàâà âèæòå ñåêöèÿòà "Ñïîíòàííî -âêëþ÷âàíå íà ïîñòúïêîâîòî òúðñåíå" (Spontaneous Entry to Incremental -Search) â ðúêîâîäñòâîòî íà Åìàêñ çà ñúâåò êàê äà ñå ñïðàâèòå ñ òàçè -"ñïîñîáíîñò". - -Àêî ñòå â ñðåäàòà íà ïîñòúïêîâî òúðñåíå è âúâåäåòå , ùå -çàáåëåæèòå, ÷å ïîñëåäíèÿò çíàê â òúðñåíèÿ íèç ñå èçòðèâà è òúðñåíåòî -ñå âðúùà êúì ïîñëåäíîòî ìÿñòî íà òúðñåíå. Íàïðèìåð, ïðåäïîëîæåòå, ÷å -ñòå âúâåëè "ò", çà äà íàìåðèòå ïúðâîòî ñúâïàäåíèå ñ "ò". Ñåãà, àêî -âúâåäåòå "ú", êóðñîðúò ùå ñå ïðèäâèæè êúì ïúðâîòî ñúâïàäåíèå íà "òú". -Ñåãà âúâåäåòå . Òîâà èçòðèâà çíàêà "ú" îò íèçà çà òúðñåíå è -êóðñîðúò ñå ïðåìåñòâà íàçàä, äî ïúðâîòî ñúâïàäåíèå ñ "ò". - -Àêî ñòå â ñðåäàòà íà òúðñåíå è âúâåäåòå êîíòðîëåí èëè ìåòà çíàê (ñ -íÿêîëêî èçêëþ÷åíèÿ -- çíàöèòå, êîèòî ñà ñïåöèàëíè ïî âðåìå íà òúðñåíå, -êàòî C-s è C-r), òúðñåíåòî ñå ïðåêðàòÿâà. - -C-s çàïî÷âà òúðñåíå, êîåòî ãëåäà çà ñúâïàäåíèå ñ íèçà, äàäåí çà -òúðñåíå ÑËÅÄ òåêóùîòî ìÿñòî íà êóðñîðà. Àêî èñêàòå äà òúðñèòå íåùî -ïî-ðàííî îò òåêñòà, âìåñòî òîâà âúâåäåòå C-r. Âñè÷êî, êîåòî êàçàõìå -çà C-s, âàæè è çà C-r, îñâåí ÷å ïîñîêàòà íà òúðñåíå å îáúðíàòà. - - -* ÌÍÎÆÅÑÒÂÎ ÏÐÎÇÎÐÖÈ ----------------- - -Åäíà îò ïðèâëåêàòåëíèòå ñïîñîáíîñòè íà Åìàêñ å òàçè, ÷å ìîæå äà -ãëåäàòå ïîâå÷å îò åäèí ïðîçîðåö íà åêðàíà â äàäåí ìîìåíò îò âðåìå. - ->> Ïðèäâèæåòå êóðñîðà äî òîçè ðåä è âúâåäåòå C-u 0 C-l (òîâà å - CONTROL-L, íå CONTROL-1). - ->> Ñåãà âúâåäåòå C-x 2, êîåòî ùå ðàçäåëè åêðàíà íà äâà îòäåëíè - ïðîçîðåöà. Äâàòà ïðîçîðåöà ïîêàçâàò òîâà âúâåäåíèå. Êóðñîðúò - îñòàâà íà ïî-ãîðíèÿ ïðîçîðåö. - ->> Âúâåäåòå C-M-v, çà äà ñêðîëèðàòå äîëíèÿ ïðîçîðåö. (Àêî íÿìàòå - èñòèíñêè êëàâèø META, âúâåäåòå ESC C-v.) - ->> Âúâåäåòå C-x o ("o" îò "other" -- "äðóã"), çà äà ïðèäâèæèòå - êóðñîðà â äîëíèÿ ïðîçîðåö. ->> Èçïîëçâàéòå C-v è M-v â äîëíèÿ ïðîçîðåö, çà äà ãî ñêðîëèðàòå. - Ïðîäúëæåòå ÷åòåíåòî íà òåçè íàñîêè îò âúâåäåíèåòî â ãîðíèÿ - ïðîçîðåö. - ->> Âúâåäåòå C-x o îòíîâî, çà äà ïðèäâèæèòå êóðñîðà îòíîâî â ãîðíèÿ - ïðîçîðåö. Êóðñîðúò â ãîðíèÿ ïðîçîðåö å òî÷íî òàì, êúäåòî å áèë - ïðåäè. - -Ìîæå äà ïðîäúëæèòå äà èçïîëçâàòå C-x o, çà äà ïðåâêëþ÷âàòå ìåæäó -ïðîçîðöèòå. Âñåêè ïðîçîðåö èìà ñîáñòâåíî ìÿñòî íà êóðñîðà, íî ñàìî -åäèí ïðîçîðåö ïîêàçâà êóðñîð. Âñè÷êè îáèêíîâåíè êîìàíäè çà -ðåäàêòèðàíå ñå ïðèëàãàò â ïðîçîðåöà, â êîéòî å êóðñîðúò. Íèå íàðè÷àìå -òîçè ïðîçîðåö "òåêóù ïðîçîðåö". - -Êîìàíäàòà C-M-v å ìíîãî ïîëåçíà, êîãàòî ðåäàêòèðàòå òåêñò â åäèí -ïðîçîðåö è èçïîëçâàòå äðóãèÿ ïðîçîðåö ïðîñòî çà ñïðàâêà. Ìîæå äà -äúðæèòå êóðñîðà âèíàãè â ïðîçîðåöà, êúäåòî ðåäàêòèðàòå, è äà -íàïðåäâàòå ïîñëåäîâàòåëíî â äðóãèÿ ïðîçîðåö ÷ðåç C-M-v. - -C-M-v å ïðèìåð çà çíàê CONTROL-META. Àêî èìàòå èñòèíñêè êëàâèø META, -ìîæå äà âúâåæäàòå C-M-v, çàäúðæàéêè åäíîâðåìåííî CONTROL è META, -äîêàòî âúâåæäàòå v. Íÿìà çíà÷åíèå äàëè CONTROL èëè META "å íàòèñíàò -ïúðâè", çàùîòî è äâàòà êëàâèøà äåéñòâàò, ìîäèôèöèðàéêè çíàêà, êîéòî -ñòå âúâåëè. - -Àêî íÿìàòå èñòèíñêè êëàâèø META è èçïîëçâàòå ESC âìåñòî òîâà, ðåäúò -èìà çíà÷åíèå: òðÿáâà äà âúâåæäàòå ESC, ïîñëåäâàí îò CONTROL-v, çàùîòî -CONTROL-ESC v íÿìà äà ðàáîòè. Òîâà å òàêà, çàùîòî ESC å ñîáñòâåí -çíàê, à íå ìîäèôèêàòîð. - ->> Âúâåäåòå C-x 1 (â ãîðíèÿ ïðîçîðåö), çà äà ìàõíåòå äîëíèÿ ïðîçîðåö. - -(Àêî ñòå âúâåëè C-x 1 â äîëíèÿ ïðîçîðåö, òîâà ùå ìàõíå ãîðíèÿ. -Ìèñëåòå çà òàçè êîìàíäà êàòî "Çàäðúæ òî÷íî åäèí ïðîçîðåö -- òîçè, â -êîéòî ñúì ñåãà".) - -Íÿìà íóæäà äà èçâåæäàòå åäèí è ñúùè áóôåð â äâàòà ïðîçîðåöà. Àêî -èçïîëçâàòå C-x C-f, çà äà íàìåðèòå ôàéë â åäèíèÿ ïðîçîðåö, äðóãèÿò -ïðîçîðåö íå ñå ïðîìåíÿ. Ìîæå äà íàìèðàòå ôàéë âúâ âñåêè ïðîçîðåö, -íåçàâèñèìî îò òîâà êàêâî èìà â äðóãèòå ïðîçîðöè. - -Åòî îùå åäèí íà÷èí äà èçïîëçâàòå äâà ïðîçîðåöà, çà äà ïîêàæåòå äâå -ðàçëè÷íè íåùà: - ->> Âúâåäåòå C-x 4 C-f, ïîñëåäâàíî îò èìåòî íà åäèí îò âàøèòå ôàéëîâå. - Çàâúðøåòå ñ . Âèæòå êàê òîçè ôàéë ñå ïîÿâÿâà â äîëíèÿ - ïðîçîðåö. Êóðñîðúò ñúùî îòèâà òàì. - ->> Âúâåäåòå C-x o, çà äà ñå âúðíåòå â ãîðíèÿ ïðîçîðåö, è C-x 1, çà äà - èçòðèåòå äîëíèÿ. - - -* ÂËÎÆÅÍÈ ÍÈÂÀ ÍÀ ÐÅÄÀÊÒÈÐÀÍÅ ------------------------------ - -Ïîíÿêîãà ùå ñå îçîâåòå â òîâà, êîåòî ñå íàðè÷à "âëîæåíî íèâî íà -ðåäàêòèðàíå" (recursive editing level). Òîâà ñå îòáåëÿçâà îò -êâàäðàòíè ñêîáè â ðåäà íà ðåæèìà, êîèòî îãðàæäàò ñêîáèòå îêîëî èìåòî -íà ãëàâíèÿ ðåæèì. Íàïðèìåð, ìîæå äà âèäèòå [(Fundamental)] âìåñòî -(Fundamental). - -Çà äà ñå ìàõíåòå îò âëîæåíîòî íèâî íà ðåäàêòèðàíå, âúâåäåòå ESC ESC -ESC. Òîâà å îáùà êîìàíäà çà "èçëèçàíå". Ìîæå è äà ÿ èçïîëçâàòå çà -ìàõàíå (ñêðèâàíå) íà äîïúëíèòåëíè ïðîçîðöè, êàêòî è çà äà ñå ìàõíåòå -îò ìèíèáóôåðà. - ->> Âúâåäåòå M-x, çà äà âëåçåòå â ìèíèáóôåð; òîãàâà âúâåäåòå ESC ESC - ESC, çà äà èçëåçåòå. - -Íå ìîæåòå äà èçïîëçâàòå C-g, çà äà èçëåçåòå îò âëîæåíî íèâî íà -ðåäàêòèðàíå. Òîâà å òàêà, çàùîòî C-g ñå èçïîëçâà çà ïðåêðàòÿâàíå íà -êîìàíäè è àðãóìåíòè ÂÚÒÐÅ âúâ âëîæåíî íèâî íà ðåäàêòèðàíå. - - -* ÏÎËÓ×ÀÂÀÍÅ ÍÀ ÄÎÏÚËÍÈÒÅËÍÀ ÏÎÌÎÙ ----------------------------------- - - òîâà âúâåäåíèå ñå îïèòàõìå äà îñèãóðèì äîñòàòú÷íî èíôîðìàöèÿ, çà äà -çàïî÷íåòå äà èçïîëçâàòå Åìàêñ. Èìà òîëêîâà ìíîãî îùå â Åìàêñ, ÷å íå å -âúçìîæíî òî äà áúäå îáÿñíåíî âñè÷êîòî òóê. Îáà÷å ìîæå äà ïîèñêàòå äà -íàó÷èòå ïîâå÷å çà Åìàêñ, òúé êàòî òîé ïðèòåæàâà îùå ìíîãî ïîëåçíè -ñïîñîáíîñòè. Åìàêñ èìà êîìàíäè çà ÷åòåíå íà äîêóìåíòàöèÿòà íà Åìàêñ -êîìàíäèòå. Òåçè "ïîìîùíè" êîìàíäè âñè÷êè çàïî÷âàò ñúñ çíàêà -CONTROL-h, êîéòî ñå íàðè÷à "çíàêúò çà ïîìîù". - -Çà äà èçïîëçâàòå âúçìîæíîñòèòå íà òàçè ïîìîù, âúâåäåòå çíàêà C-h è -ñëåä òîâà çíàêà, êàçâàù êàêúâ âèä ïîìîù èñêàòå. Àêî ÍÀÈÑÒÈÍÀ ñòå ñå -èçãóáèëè, âúâåäåòå C-h ? è Åìàêñ ùå âè êàæå ñ êàêâî ìîæå äà âè -ïîìîãíå. Àêî ñòå âúâåëè C-h è ðåøèòå, ÷å íå ñå íóæäàåòå îò ïîìîù, -ïðîñòî âúâåäåòå C-g, çà äà ÿ ïðåêðàòèòå. - -(Íÿêîè êîìïþòðè ïðîìåíÿò çíà÷åíèåòî íà çíàêà C-h. Òå íàèñòèíà íå -òðÿáâà äà ïðàâÿò òîâà êàòî ñëÿïà ìÿðêà çà âñè÷êè ïîòðåáèòåëè, òàêà ÷å -èìàòå îñíîâàíèå äà ñå îïëà÷åòå íà ñèñòåìíèÿ àäìèíèñòðàòîð. Ìåæäó -äðóãîòî, àêî C-h íå èçâåæäà ñúîáùåíèå çà ïîìîù â äúíîòî íà åêðàíà, -îïèòàéòå êëàâèøà F1 èëè M-x help âìåñòî òîâà.) - -Íàé-îñíîâíîòî ïîìîùíî ñðåäñòâî å C-h c. Âúâåäåòå C-h, çíàêà c è -êîìàíäåí çíàê èëè ïîñëåäîâàòåëíîñò îò çíàöè, îáðàçóâàùè êîìàíäà; -òîãàâà Åìàêñ ùå èçâåäå ìíîãî êðàòêî îïèñàíèå íà êîìàíäàòà. - ->> Type C-h c C-p. - -Èçâåäåíîòî îïèñàíèå òðÿáâà äà áúäå íåùî êàòî - - C-p runs the command previous-line - (C-p èçïúëíÿâà êîìàíäàòà ïðåäèøåí-ðåä) - -Òîâà âè êàçâà "èìåòî íà ôóíêöèÿòà". Èìåíàòà íà ôóíêöèèòå ñå èçïîëçâàò -íàé-âå÷å çà íàñòðîéâàíå è ðàçøèðÿâàíå íà Åìàêñ. Íî òúé êàòî èìåíàòà -íà ôóíêöèèòå ñà èçáðàíè òàêà, ÷å äà ïîêàçâàò êàêâî ïðàâè êîìàíäàòà, òå -ìîãàò äà ñëóæàò è çà ìíîãî êðàòêà äîêóìåíòàöèÿ -- äîñòàòú÷íà, çà äà âè -ïðèïîìíè êîìàíäè, êîèòî âå÷å ñòå ó÷èëè. - -Ìíîãîçíàêîâè êîìàíäè, êàòî C-x C-s è (àêî íÿìàòå êëàâèø META èëè EDIT -èëè ALT) v, ñúùî ñà ïîçâîëåíè ñëåä C-h c. - -Çà äà ïîëó÷èòå îùå èíôîðìàöèÿ çà êîìàíäà, èçïîëçâàéòå C-h k âìåñòî C-h -c. - ->> Âúâåäåòå C-h k C-p. - -Òîâà èçâåæäà äîêóìåíòàöèÿòà íà ôóíêöèÿòà, êàêòî è íåéíîòî èìå, â -îòäåëåí Åìàêñ ïðîçîðåö. Êîãàòî ÿ ïðî÷åòåòå, âúâåäåòå C-x 1, çà äà -ìàõíåòå ïîìîùíèÿ òåêñò. Íå å íóæíî äà ïðàâèòå òîâà òî÷íî ñåãà. Ìîæå -äà ðåäàêòèðàòå, äîêàòî ñå îáðúùàòå êúì ïîìîùíèÿ òåêñò çà ñïðàâêà, è -ñëåä òîâà äà âúâåäåòå C-x 1. - -Åòî îùå íÿêîëêî ïîëåçíè C-h âúçìîæíîñòè: - - C-h f Îïèñâà ôóíêöèÿ. Òðÿáâà äà âúâåäåòå èìåòî íà - ôóíêöèÿòà. - ->> Îïèòàéòå ñ âúâåæäàíå íà C-h f previous-line. - Òîâà èçâåæäà öÿëàòà èíôîðìàöèÿ, êîÿòî Åìàêñ çíàå çà ôóíêöèÿòà, - êîÿòî îñúùåñòâÿâà êîìàíäàòà C-p. - -Ïîäîáíà êîìàíäà, C-h v, èçâåæäà äîêóìåíòàöèÿòà íà ïðîìåíëèâèòå, êîèòî -ìîæå äà ïðîìåíÿòå, çà äà íàñòðîéâàòå ïîâåäåíèåòî íà Åìàêñ. Òðÿáâà äà -âúâåäåòå èìåòî íà ïðîìåíëèâàòà, êîãàòî Åìàêñ âè ïîäñêàæå òîâà. - - C-h a Êîìàíäà Àïðîïîñ. Âúâåäåòå êëþ÷îâà äóìà è Åìàêñ ùå - ïîêàæå ñïèñúê íà âñè÷êè êîìàíäè, ÷èåòî èìå ñúäúðæà - òàçè êëþ÷îâà äóìà. Òåçè êîìàíäè ìîãàò âñè÷êè äà áúäàò - èçâèêàíè ÷ðåç META-x. Çà íÿêîè êîìàíäè êîìàíäàòà - Àïðîïîñ ùå èçâåäå äîïúëíèòåëíî åäíîçíàêîâà èëè - äâóçíàêîâà ïîñëåäîâàòåëíîñò îò êëàâèøè, êîÿòî ïóñêà - ñúùàòà êîìàíäà. - ->> Âúâåäåòå C-h a file. - -Òîâà èçâåæäà â äðóã ïðîçîðåö ñïèñúê íà âñè÷êè M-x êîìàíäè, êîèòî -ñúäúðæàò "file" â òÿõíîòî èìå. Ùå âèäèòå çíàêîâè êîìàíäè êàòî C-x -C-f, èçáðîåíè èçìåæäó ñúîòâåòíèòå èìåíà íà êîìàíäè, êàòî find-file. - ->> Âúâåäåòå C-M-v, çà äà ñêðîëèðàòå ïîìîùíèÿ ïðîçîðåö. Íàïðàâåòå ãî - íÿêîëêî ïúòè. - ->> Âúâåäåòå C-x 1, çà äà èçòðèåòå ïîìîùíèÿ ïðîçîðåö. - - C-h i ×åòåíå íà ðúêîâîäñòâà (Info). Òàçè êîìàíäà âè ïðàùà â - ñïåöèàëåí áóôåð, íàðè÷àí "*info*", êúäåòî ìîæå äà - ÷åòåòå ðúêîâîäñòâàòà íà èíñòàëèðàíèòå âúâ âàøàòà - ñèñòåìà ïàêåòè. Âúâåäåòå m emacs , çà äà - ÷åòåòå ðúêîâîäñòâîòî íà Åìàêñ. Àêî íèêîãà ïðåäè òîâà - íå ñòå èçïîëçâàëè Info, âúâåäåòå ? è Åìàêñ ùå âêëþ÷è - âúâåäåíèå âúâ âúçìîæíîñòèòå íà ðåæèìà Èíôî. Âåäíúæ - ñëåä êàòî ñòå ïðåìèíàëè òîâà âúâåäåíèå, òðÿáâà äà ñå - êîíñóëòèðàòå ñ Åìàêñ Èíôî ðúêîâîäñòâîòî êàòî âàøà - îñíîâíà äîêóìåíòàöèÿ. - - -* ÎÙÅ ÂÚÇÌÎÆÍÎÑÒÈ ------------------ - -Ìîæå äà íàó÷èòå ïîâå÷å çà Åìàêñ ñ ÷åòåíå íà íåãîâîòî ðúêîâîäñòâî, èëè -êàòî êíèãà, èëè â Èíôî (èçïîëçâàéòå ìåíþòî ïîìîù (Help) èëè âúâåäåòå -F10 h r). Äâå âúçìîæíîñòè, êîèòî ìîæå äà æåëàåòå â íà÷àëîòî, ñà -äîâúðøâàíå (completion), êîåòî ñïåñòÿâà ïèñàíå, è dired, êîéòî -îïðîñòÿâà áîðàâåíåòî ñ ôàéëîâå. - -Äîâúðøâàíåòî å íà÷èí äà èçáÿãâàòå íåíóæíî ïèñàíå. Íàïðèìåð, àêî -èñêàòå äà ïðåâêëþ÷èòå êúì áóôåðà *Messages*, ìîæå äà âúâåäåòå C-x b -*M è Åìàêñ ùå çàïúëíè îñòàíàëàòà ÷àñò îò èìåòî íà áóôåðà, -äîêîëêîòî ìîæå äà ñå îïðåäåëè îò òîâà, êîåòî ñòå âúâåëè. Äîâúðøâàíåòî -å îïèñàíî â Èíôî-ðúêîâîäñòâîòî íà Åìàêñ â ñòðàíèöàòà "Äîâúðøâàíå" -("Completion"). - -Dired âè ïîçâîëÿâà äà ãëåäàòå ñïèñúêà îò ôàéëîâå â äèðåêòîðèÿ (è êàòî -âúçìîæíîñò: íåéíèòå ïîääèðåêòîðèè), äà ñå ïðèäâèæâàòå â òîçè ñïèñúê, -äà ïîñåùàâàòå, ïðåèìåíóâàòå, èçòðèâàòå è èçîáùî äåéñòâàòå âúðõó -ôàéëîâåòå. Dired å îïèñàí â Èíôî-ðúêîâîäñòâîòî íà Åìàêñ â ñòðàíèöàòà -"Dired". - -Ðúêîâîäñòâîòî íà Åìàêñ îïèñâà îùå ìíîãî äðóãè âúçìîæíîñòè íà -ðåäàêòîðà. - - -* ÇÀÊËÞ×ÅÍÈÅ ------------- - -Çàïîìíåòå: çà äà èçëåçåòå áåçâúçâðàòíî îò Åìàêñ, èçïîëçâàéòå C-x C-c. -Çà äà èçëåçåòå âðåìåííî â îáâèâêà, òàêà ÷å äà ñå âúðíåòå â Åìàêñ -ïî-êúñíî, èçïîëçâàéòå C-z. - -Òîâà âúâåäåíèå å ïðåäâèäåíî äà áúäå ðàçáèðàåìî çà âñè÷êè íîâè -ïîòðåáèòåëè, òàêà ÷å àêî íàìèðàòå íåùî íåÿñíî, íå ñå ñàìîîáâèíÿâàéòå --- îïëà÷åòå ñå! - - -* ÊÎÏÈÐÀÍÅ ----------- - -Òîâà âúâåäåíèå ïðîèçëèçà îò äúëãà ïîðåäèöà âúâåäåíèÿ â Åìàêñ, -çàïî÷âàéêè îò åäíî, íàïèñàíî îò Ñòþúðò Êðàêðàôò çà íà÷àëíèÿ Åìàêñ. - -Òàçè âåðñèÿ íà âúâåäåíèåòî, êàêòî è ÃÍÓ Åìàêñ, å çàùèòåíà ñ àâòîðñêè -ïðàâà è èäâà ñ ðàçðåøåíèå äà ðàçïðîñòðàíÿâàòå êîïèÿ ïðè ñëåäíèòå -óñëîâèÿ: - -This version of the tutorial, like GNU Emacs, is copyrighted, and -comes with permission to distribute copies on certain conditions: - -Copyright (C) 1985, 1996, 1998, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 Free Software Foundation, Inc. - - Permission is granted to anyone to make or distribute verbatim copies - of this document as received, in any medium, provided that the - copyright notice and permission notice are preserved, - and that the distributor grants the recipient permission - for further redistribution as permitted by this notice. - - Permission is granted to distribute modified versions - of this document, or of portions of it, - under the above conditions, provided also that they - carry prominent notices stating who last altered them. - -Óñëîâèÿòà çà êîïèðàíå íà ñàìèÿ Åìàêñ ñà ïî-ñëîæíè, íî â ñúùèÿ äóõ. -Ìîëÿ, ïðî÷åòåòå ôàéëà COPYING è òîãàâà äàâàéòå êîïèÿ íà ÃÍÓ Åìàêñ íà -ñâîè ïðèÿòåëè. Ïîìîãíåòå äà ñïðåì çàòâîðåíîñòòà íà ïðîãðàìèòå -("ïðèòåæàíèåòî"), êàòî èçïîëçâàìå, ïèøåì è ñïîäåëÿìå ñâîáîäåí ñîôòóåð! - -Ïðåâîäúò íà áúëãàðñêè å èçâúðøåí îò Îãíÿí Êóëåâ -. - -;;; Local Variables: -;;; coding: windows-1251 -;;; End: -;;; arch-tag: 70cf6ad7-c2e4-41fe-8199-74aa52683b0e diff --git a/etc/TUTORIAL.cn b/etc/TUTORIAL.cn deleted file mode 100644 index 5e318e8ff90..00000000000 --- a/etc/TUTORIAL.cn +++ /dev/null @@ -1,1033 +0,0 @@ -Emacs ¿ìËÙÖ¸ÄÏ.£¨²é¿´°æȨÉùÃ÷ÇëÖÁ±¾ÎÄĩ⣩ - -¡¾×¢Ò⣺λÓÚ¡¾¡¿Ö®¼äµÄÄÚÈÝÊÇÒë×¢£¬±ÈÈç±¾ÐУ¬ÏÂͬ¡£¡¿ - -Emacs ¼üÅÌÃüÁîͨ³£°üº¬ CONTROL ¼ü£¨ÓÐʱºòÒÔ CTRL »ò CTL À´±êʾ£©ºÍ -META ¼ü£¨ÓÐʱºòÓà EDIT »ò ALT À´±êʾ£©¡£ÎªÁ˱ÜÃâÿ´Î¶¼ÒªÐ´³öÈ«Ãû£¬ÎÒÃÇ -Ô¼¶¨Ê¹ÓÃÏÂÊöËõд£º - - C- ±íʾµ±ÊäÈë×Ö·û ʱ°´×¡ CONTROL ¼ü¡£ - Òò´Ë C-f ¾Í±íʾ£º°´×¡ CONTROL ¼üÔÙÊäÈë f¡£ - - M- ±íʾµ±ÊäÈë×Ö·û ʱ°´×¡ META£¨»ò EDIT »ò ALT£©¼ü¡£ - Èç¹ûÄãµÄ¼üÅÌÉÏûÓÐ META ¡¢EDIT »ò ALT ¼ü£¬ÓÃÏÂÊö·½·¨Ò²µÈЧ£º - ÏÈ°´Ò»Ï ESC ¼üÈ»ºó·Å¿ª£¬ÔÙÊäÈë ¡£ÎÒÃÇÓà À´±íʾ - ESC ¼ü¡£ - -ÖØÒªÌáʾ£ºÒªÍ˳ö Emacs£¬ÇëÓà C-x C-c£¨Á½¸öÁ¬ÐøµÄ×éºÏ¼ü£©¡£ÏÂÎÄÖÐ×ó±ß¶¥ -Ðеġ°>>¡±×ÖÑùÓÃÀ´ÌáʾÄã³¢ÊÔ¼üÅÌÃüÁî¡£±ÈÈ磺 -<> -[±¾Ò³µ±ÖÐÌØÒâÁô³öһЩ¿Õ°×ÊdzöÓÚ½ÌѧĿµÄ£¬Çë¼ÌÐøÍùºóÔĶÁ] ->> ÏÖÔÚÊäÈë C-v £¨²é¿´ÏÂÒ»ÆÁÎÄ×Ö£©Òƶ¯µ½ÏÂÒ»ÆÁ¡£ - £¨±ð½ôÕÅ£¬ÔÚÊäÈë×Ö·û v µÄͬʱעÒâÒª°´×¡ CONTROL ¼ü£© - ´ÓÏÖÔÚ¿ªÊ¼£¬Ã¿¶ÁÍ굱ǰһÆÁÄ㶼ÐèÒªÕâÑù×öÒ»´Î¡£ - -ÖµµÃ×¢ÒâµÄÊÇ£¬µ±Äã´ÓÉÏÒ»ÆÁ¹öµ½ÏÂÒ»ÆÁʱ£¬Öмä»áÓÐÁ½ÐеÄÖظ´£»ÕâÑù×öÊÇΪ -ÁËά³Ö¹öÆÁµÄÁ¬ÐøÐÔ£¬·½±ãÄã˳³©¡¢Á¬ÐøµØÔĶÁ¡£ - -Óñ༭Æ÷£¬¿ªÃŵÚÒ»¼þʾÍÊÇѧ»áÔÚÎÄ×ÖÖÐÒƶ¯¡£ÄãÒѾ­ÖªµÀÁË C-v ¿ÉÒÔÏòÏÂÒÆ -¶¯Ò»ÆÁ£¬ÒªÍùÉÏÒÆ£¬ÇëÓà M-v £¨Ò²¾ÍÊÇ°´×¡ META ¼ü£¬È»ºóÊäÈëv£¬Èç¹ûÄãûÓÐ -META¡¢EDIT »ò ALT ¼üÄÇô¾ÍÏÈ°´ ÔÙ°´ v£©¡£ - ->> ÊÔÊÔ M-v£¬È»ºóÔÙÊÔÊÔ C-v£¬À´»ØåÞ¼¸´Î¡£ - - -* С½á£¨SUMMARY£© ------------------ - -ÒÔÏÂÃüÁîÔÚ·­Ò³ä¯ÀÀʱÏ൱ÓÐÓ㺠- - C-v ÏòÇ°Òƶ¯Ò»ÆÁ - M-v ÏòºóÒƶ¯Ò»ÆÁ - C-l ÖØ»æÆÁÄ»£¬²¢½«¹â±êËùÔÚÐÐÖÃÓÚÆÁÄ»µÄÖÐÑë - £¨×¢ÒâÊÇ CONTROL-L£¬²»ÊÇ CONTROL-1£© - ->> ÕÒµ½¹â±ê£¬ÁôÒâÆ丽½üµÄÎÄ×Ö£¬È»ºóÊäÈë C-l¡£ - ÕÒÕÒ¹â±êÔÚÄÄÀÄã»á·¢ÏÖÆ丽½üµÄÎÄ×Ö²¢Ã»Óб仯¡£ - -Èç¹ûÄãµÄ¼üÅÌÉÏÓÐ PageUp ºÍ PageDn£¬Ò²¿ÉÒÔÓÃÕâÁ½¸ö¼üÀ´¹öÆÁ¡£²»¹ýʹÓà -C-v ºÍ M-v µÄЧÂÊÒª¸ü¸ßһЩ¡£ - - -* »ù±¾µÄ¹â±ê¿ØÖÆ£¨BASIC CURSOR CONTROL£© ----------------------------------------- - -ÕûÆÁµÄÒƶ¯ºÜÓÐÓ㬵«ÊÇÈçºÎÔÚÎÄ×ÖÖо«È·¶¨Î»ÄØ£¿ - -Óм¸ÖÖ·½Ê½¿ÉÒÔÑ¡Ôñ¡£Ó÷½Ïò¼üµ±È»¿ÉÒÔ£¬²»¹ý¸üÓÐЧÂʵķ½·¨ÊDZ£³ÖË«ÊÖλÓÚ -Ö÷¼üÅÌÇø£¬È»ºóʹÓà C-p ¡¢ C-b ¡¢ C-f ºÍ C-n ÕâËĸöÃüÁî¡£ËüÃǵŦÄܺͷ½ -Ïò¼üÊÇÒ»ÑùµÄ£¬ÈçÏÂͼËùʾ£º - - ÉÏÒ»ÐÐ C-p - : - : - Ïò×óÒÆ C-b .... Ä¿Ç°¹â±êλÖà .... ÏòÓÒÒÆ C-f - : - : - ÏÂÒ»ÐÐ C-n - ->> Óà C-n »ò C-p ½«¹â±êÒƵ½ÉÏͼµÄÖÐÑë¡£ - °´ C-l£¬Õû·ùͼ»á±»ÏÔʾÔÚÆÁÄ»µÄÖÐÑë¡£ - -¡°P N B F¡±Ëĸö×Öĸ·Ö±ð´ú±íÁËËĸö´Ê£¬ÓÃÕâËĸö´Ê¼ÇÒäÕâЩ×éºÏ¼ü»á¸üÈÝÒ×£º -P ´ú±í previous£¨ÉÏÒ»ÐУ©£¬N ´ú±í next£¨ÏÂÒ»ÐУ©£¬B ´ú±í backward£¨»Ø -ÍË£©£¬¶ø F Ôò´ú±í forward£¨Ç°½ø£©¡£ÕâЩ×éºÏ¼ü½ñºó½«ÓëÄãÐÎÓ°²»Àë¡£ - ->> °´¼¸´Î C-n °Ñ¹â±êÍùÏÂŲµ½ÕâÀï¡£ - ->> Óà C-f °Ñ¹â±êÒƶ¯µ½ÕâÒ»ÐУ¬È»ºóÔÙÓà C-p ÍùÉÏŲ¡£ - ×¢Òâ¹Û²ìµ±¹â±êÔÚÒ»ÐеÄÖÐÑëʱ C-p ÃüÁîµÄÐÐΪ¡£ - -ÿÐÐÎÄ×Ö¶¼ÒÔÒ»¸ö¡°»»Ðзû¡±½áÊø£¬¡°»»Ðзû¡±°ÑÐÐÓëÐÐÇø·Ö¿ªÀ´¡£ÎļþµÄ×îºó -Ò»ÐÐÒ²Ó¦¸ÃÒ²ÓÐÒ»¸ö»»Ðзû£¨²»¹ý Emacs ²¢²»Ç¿ÖÆÒªÇóÕâÒ»µã£©¡£ - ->> ÔÚÒ»ÐеÄÐÐÍ·ÊäÈë C-b¡£ - ¹â±êÓ¦¸Ã»áÒƶ¯µ½Ç°Ò»ÐеÄÐÐ⣬ÒòΪ¹â±êÔÚ»ØÍ˹ý³ÌÖÐÔ½¹ýÁË»»Ðзû¡£ - -ͬÑù C-f Ò²¿ÉÒÔÏñ C-b Ò»ÑùÔ½¹ý»»Ðзû¡£ - ->> Á¬°´¼¸´Î C-b£¬¸ÐÊÜһϹâ±êµÄÒƶ¯¡£ - È»ºó°´¼¸´Î C-f »Øµ½±¾ÐеÄÐÐβ¡£ - ÔÙ°´Ò»´Î C-f£¬¹â±ê»áÒƶ¯µ½ÏÂÒ»ÐС£ - -µ±ÄãÒƶ¯¹â±ê´©Ô½ÆÁÄ»µÄÉÏϱ߽çʱ£¬Ôڱ߽çÍâµÄÎÄ×Ö»áÒƶ¯µ½ÆÁÄ»ÄÚ£¬Õâ³ÆΪ -¡°¹ö¶¯¡±£¨scrolling£©¡£¹ö¶¯Ê¹µÃ¹â±ê¿ÉÒÔ±»Òƶ¯µ½ÎÄ×ÖÖеÄÈκÎλÖ㬲¢ÇÒ»¹ -²»»áÈùâ±êÅܵ½ÆÁÄ»Íâ±ßÈ¥¡£ - ->> Óà C-n ½«¹â±êÏÂÒÆ£¬Ò»Ö±Ô½¹ýÆÁÄ»±ß½ç£¬Í¬Ê±¹Û²ì·¢ÉúÁËʲô±ä»¯¡£ - -Èç¹ûÄãÏÓÒ»¸ö×Ö·ûÒ»¸ö×Ö·ûµØŲ¹â±êÌ«Âý£¬Ä㻹¿ÉÒÔÒ»¸ö´ÊÒ»¸ö´ÊµØÌø¡£M-f -(META-f) ¿ÉÒÔ½«¹â±êÍùÇ°Òƶ¯Ò»¸ö´Ê£¬¶ø M-b ÔòÊÇÍùºóÒÆ¡£¡¾ÕâÀïµÄ¡°´Ê¡±Ö¸ -Ó¢Îĵ¥´Ê£¬¶ÔÖÐÎÄÀ´Ëµ£¬ÔòÊÇÖ¸Òƶ¯µ½ÏÂÒ»¸ö±êµã·ûºÅ¡£¡¿ - ->> ÊÔÊÔ M-f ºÍ M-b¡£ - -Èç¹û¹â±êÍ£ÔÚÒ»¸ö´ÊµÄÖм䣬M-f »áÒƶ¯µ½Õâ¸ö´ÊµÄĩβ¡£Èç¹û¹â±ê´¦ÓÚ´ÊÓë´Ê -Ö®¼äµÄ¿Õ°×´¦£¬M-f »áÒƶ¯µ½ÏÂÒ»¸ö´ÊµÄĩβ¡£M-b µÄ¹¦ÄÜÀàËÆ£¬Ö»ÊÇ·½ÏòÏà·´¡£ - ->> °´¼¸´Î M-f ºÍ M-b£¬Öмä¼ÐÔÓһЩ C-f ºÍ C-b¡£ - Äã¿ÉÒԹ۲쵽 M-f ºÍ M-b ÔÚ²»Í¬Î»ÖÃÉÏËù±íÏÖ³öÀ´µÄ²»Í¬ÐÐΪ¡£ - -Çë×¢Òâ C-f ¡¢C-b ºÍ M-f ¡¢M-b Á½¶ÔÖ®¼äµÄÀà±È¹Øϵ¡£Í¨³£µÄ¹ßÀýÊÇ£ºMETA ϵ -ÁÐ×éºÏ¼üÓÃÀ´²Ù×÷¡°ÓÉÓïÑÔ¶¨ÒåµÄµ¥Î»£¨±ÈÈç´Ê¡¢¾ä×Ó¡¢¶ÎÂ䣩¡±£¬¶ø CONTROL -ϵÁÐ×éºÏ¼üÓÃÀ´²Ù×÷¡°ÓëÓïÑÔÎ޹صĻù±¾µ¥Î»£¨±ÈÈç×Ö·û¡¢Ðеȵȣ©¡±¡£ - -ÀàËƵĹßÀýÔÚ¡°ÐС±Óë¡°¾ä×Ó¡±Ö®¼äҲͬÑùÊÊÓãºC-a ºÍ C-e ¿ÉÒÔ½«¹â±êÒƶ¯µ½ -¡°Ò»ÐС±µÄÍ·²¿ºÍβ²¿£»¶ø M-a ºÍ M-e Ôò½«¹â±êÒƶ¯µ½¡°Ò»¾ä¡±µÄÍ·²¿ºÍβ²¿¡£ - ->> °´Á½´Î C-a£¬ÔÙ°´Á½´Î C-e¡£ - °´Á½´Î M-a£¬ÔÙ°´Á½´Î M-e¡£ - -ÏëÒ»ÏëΪʲôÖظ´µÄ C-a ÃüÁî»áûÓÐ×÷Ó㬶øÖظ´µÄ M-a ÃüÁîÔò»áÈùâ±ê²»¶Ï -µØ»ØÍ˵½ÉÏÒ»¸ö¾ä×Ó¡£ËäÈ»Õâ¸öÀà±È¹æÂɲ¢²»Ñϸñ£¬µ«ÊǺÜ×ÔÈ»¡£ - -¹â±êÍ£ÁôµÄλÖÃÒ²¿ÉÒÔ³Æ×÷¡°µãλ¡±£¨point£©¡£»òÕ߸ɴà˵£¬¹â±êָʾ³öÁËÆÁÄ» -ÉÏ¡°µãλ¡±ÔÚÎı¾ÖеÄλÖᣠ- -ÕâÀï¶Ô¼òµ¥µÄ¹â±êÒƶ¯ÃüÁî×öÒ»¸ö×ܽᣬÆäÖÐÒ²°üÀ¨ÁËÕû´ÊºÍÕû¾äµÄÒƶ¯£º - - C-f ÏòÓÒÒƶ¯Ò»¸ö×Ö·û - C-b Ïò×óÒƶ¯Ò»¸ö×Ö·û - - M-f ÏòÓÒÒƶ¯Ò»¸ö´Ê¡¾¶ÔÖÐÎÄÊÇÒƶ¯µ½ÏÂÒ»¸ö±êµã·ûºÅ¡¿ - M-b Ïò×óÒƶ¯Ò»¸ö´Ê¡¾¶ÔÖÐÎÄÊÇÒƶ¯µ½ÉÏÒ»¸ö±êµã·ûºÅ¡¿ - - C-n Òƶ¯µ½ÏÂÒ»ÐÐ - C-p Òƶ¯µ½ÉÏÒ»ÐÐ - - C-a Òƶ¯µ½ÐÐÊ× - C-e Òƶ¯µ½ÐÐβ - - M-a Òƶ¯µ½¾äÊ× - M-e Òƶ¯µ½¾äβ - ->> °ÑÉÏÃæËùÓеÄÃüÁÁ·Ï°¼¸´Î£¬ÕâЩ¿É¶¼ÊÇ×î³£ÓõÄÃüÁî¡£ - -ÕâÀﻹҪ½éÉÜÁ½¸öÖØÒªµÄ¹â±êÒƶ¯ÃüÁM-< £¨META СÓںţ©¿ÉÒÔ½«¹â±êÒƶ¯µ½ -ËùÓÐÎÄ×ÖµÄ×ͷ£»M-> £¨META ´óÓںţ©¿ÉÒÔ½«¹â±êÒƶ¯µ½ËùÓÐÎÄ×ÖµÄ×îĩβ¡£ - -×¢Ò⣬Ôڴ󲿷ּüÅÌÉÏ£¬Ð¡Óںţ¨<£©ÐèÒªÓÃÉϵµ¼ü£¨Shift£©À´ÊäÈ룬ËùÒÔÔÚÕâ -Щ¼üÅÌÉÏÄãÓ¦¸ÃÓà Shift ¼üÀ´ÊäÈë M-<£¬Èç¹û²»°´ Shift ¼ü£¬ÄãÊäÈëµÄ»áÊÇ -M-comma£¨META ¶ººÅ£©¡£ - ->> ÊÔÒ»ÊÔ M-< £¬ÒƵ½±¾¿ìËÙÖ¸ÄϵÄ×ʼ¡£ - È»ºóÔÙ°´¼¸´Î C-v »Øµ½ÕâÀï¡£ - ->> ÊÔÒ»ÊÔ M-> £¬ÒƵ½±¾¿ìËÙÖ¸ÄϵÄ×îĩβ¡£ - È»ºóÔÙ°´¼¸´Î M-v »Øµ½ÕâÀï¡£ - -Èç¹ûÄãµÄ¼üÅÌÉÏÓз½Ïò¼üµÄ»°£¬Ò²¿ÉÒÔÓÃËüÃÇÀ´Òƶ¯¹â±ê¡£²»¹ýÎÒÃÇÓÐÈý¸öÀíÓÉ -ÍƼöÄãѧϰ C-b ¡¢C-f ¡¢C-n ¡¢ºÍ C-p£º£¨1£©ËüÃÇÔÚÈκμüÅÌÉ϶¼ÄÜÓᣣ¨2£© -µ±ÄãÊìÁ·Ê¹Óà Emacs Ö®ºó£¬Äã»á·¢ÏÖÓÃÕâЩ×éºÏ¼ü±ÈÓ÷½Ïò¼üÒª¿ìµÃ¶à£¬ÒòΪÄã -µÄÊÖ²»ÐèÒªÀ뿪´ò×ÖÇø¡££¨3£©Ò»µ©ÄãÏ°¹ßÁËʹÓÃÕâЩ×éºÏ¼ü£¬ÄãÒ²¿ÉÒÔºÜÈÝÒ×µØ -ÊÊÓ¦ÆäËü¸ü¸ß¼¶µÄ¹â±êÒƶ¯ÃüÁî¡£ - -´ó²¿·ÖµÄ Emacs ÃüÁî½ÓÊÜÊý×Ö²ÎÊý£¬²¢ÇÒ¶ÔÓÚ¶àÊýÃüÁî¶øÑÔ£¬ÕâЩÊý×Ö²ÎÊýµÄ×÷ -ÓÃÊÇÖ¸¶¨ÃüÁîµÄÖظ´´ÎÊý¡£ÎªÒ»¸öÃüÁîÖ¸¶¨Êý×Ö²ÎÊý£¨Ò²¾ÍÊÇÖظ´´ÎÊý£©µÄ·½·¨ -ÊÇ£ºÏÈÊäÈë C-u£¬È»ºóÊäÈëÊý×Ö×÷Ϊ²ÎÊý£¬×îºóÔÙÊäÈëÃüÁî¡£Èç¹ûÄãÓÐMETA £¨»ò -EDIT »ò ALT£©¼ü£¬ÄÇô»¹ÓÐÁíÒ»ÖÖ°ì·¨£º°´×¡ META ¼ü²»·Å£¬È»ºóÊäÈëÊý×Ö¡£²» -¹ýÎÒÃÇ»¹Êǽ¨ÒéÄãÓà C-u£¬ÒòΪËüÔÚÈκÎÖն˻úÉ϶¼ÄÜÓá£ÕâÖÖÊý×Ö²ÎÊýÒ²³ÆΪ -¡°Ç°×º²ÎÊý¡±£¬Òâ˼ÊÇ˵Õâ¸ö²ÎÊýÊÇÏÈÓÚʹÓÃËüµÄÃüÁî¶øÊäÈëµÄ¡£ - -¾ÙÀýÀ´Ëµ£¬ C-u 8 C-f »áÏòÇ°Òƶ¯ 8 ¸ö×Ö·û¡£ - ->> Ϊ C-n »òÕß C-p Ö¸¶¨Ò»¸öÊý×Ö²ÎÊý£¬ÕâÑùÄã¿ÉÒÔÖ»ÓÃÒ»¸öÃüÁî¾Í°Ñ¹â±êÒƶ¯ - µ½±¾Ðеĸ½½ü¡£ - -ËäÈ»´ó²¿·ÖÃüÁî°ÑÊý×Ö²ÎÊý½âÊÍΪÆäÖظ´´ÎÊý£¬µ«ÊÇÒ²ÓÐЩÃüÁîÀýÍ⣬ËüÃǽ«Êý -×Ö²ÎÊýÁí×öËüÓᣱÈÈçÓÐЩÃüÁÎÒÃÇÄ¿Ç°»¹Ã»Ñ§µ½£©½ö½ö½«Ç°×º²ÎÊý×÷Ϊһ¸ö -±êÖ¾¡ª¡ªÖ»Òª¸ø³öÓÐÒ»¸öǰ׺²ÎÊý£¬²»¹ÜÆäֵΪºÎ£¬Ëü¶¼»á¸Ä±äÃüÁîµÄ¹¦ÄÜ¡£ - -¶ø C-v ºÍ M-v ÔòÊôÓÚÁíÒ»ÖÖÀàÐ͵ÄÀýÍâ¡£µ±¸ø¶¨Ò»¸ö²ÎÊýʱ£¬ËüÃǽ«¹ö¶¯ÄãÖ¸ -¶¨µÄ¡°ÐÐÊý¡±£¬¶ø²»ÊÇ¡°ÆÁÊý¡±¡£¾ÙÀýÀ´Ëµ£¬C-u 8 C-v ½«ÆÁÄ»ÏòϹö¶¯ 8 ÐУ¬ -¶ø²»ÊÇ 8 ÆÁ¡£ - ->> ÏÖÔÚÊÔÊÔ¿´£¬ÊäÈë C-u 8 C-v¡£ - -Õâ¸öÃüÁîÓ¦¸ÃÒѾ­½«ÎÄ×ÖÏòÉϹö¶¯ÁË 8 ÐС£Èç¹ûÄãÏ뽫ËüÔٴεØÏòϹö¶¯£¬Äã¿É -ÒÔ¸ø¶¨Ò»¸ö²ÎÊýÈ»ºóÖ´ÐÐ M-v¡£ - -Èç¹ûÄãÕýÔÚʹÓÃÒ»¸ö´°¿Úϵͳ£¬±ÈÈç X11 »òÕß΢ÈíµÄ Windows£¬ÄÇôÔÚ Emacs -´°¿ÚµÄ±ßÔµÓ¦¸ÃÓÐÒ»¸ö³¤·½ÐεÄÇøÓò½Ð¡°¹ö¶¯Ìõ¡±£¬Äã¿ÉÒÔÓÃÊó±ê²Ù×ݹö¶¯ÌõÀ´ -¹ö¶¯ÎÄ×Ö¡£ - ->> ÊÔ×ÅÔÚ¡°¹ö¶¯ÌõÄڵķ´°×ÇøÓò¡±ÉÏ°´Ò»ÏÂÊó±êÖмü¡£ - ÎÄ×ÖÓ¦¸Ã»á¹ö¶¯µ½Êó±êËùָʾµÄλÖᣠ- ->> µ±°´×¡Öмüʱ£¬ÊÔ׎«Êó±êÉÏÏÂÒƶ¯¡£ - Äã»á¿´µ½ÎÄ×ÖËæ×ÅÊó±êµÄÒƶ¯¶øÉÏϹö¶¯¡£ - ¡¾Windows °æ±¾·ûºÏ Windows ³ÌÐòµÄ´«Í³²Ù×÷Ï°¹ß£¬ÉÏÊö²Ù×÷²»ÊÊÓᣡ¿ - - -* ÔÚ EMACS ʧȥÏìÓ¦µÄʱºò£¨WHEN EMACS IS HUNG£© ------------------------------------------------ - -Èç¹û Emacs ¶ÔÄãµÄÃüÁîʧȥÏìÓ¦£¬Äã¿ÉÒÔÓà C-g À´°²È«µØÖÕÖ¹ÕâÌõÃüÁî¡£C-g -Ò²¿ÉÒÔÖÕÖ¹Ò»ÌõÖ´Ðйý¾ÃµÄÃüÁî¡£ - -C-g »¹¿ÉÒÔÈ¡ÏûÊý×Ö²ÎÊýºÍÖ»ÊäÈëµ½Ò»°ëµÄÃüÁî¡£ - ->> ÊäÈë C-u 100 É趨һ¸öֵΪ 100 µÄÊý×Ö²ÎÊý£¬È»ºó°´ C-g¡£ - ÏÖÔÚÔÙ°´ C-f£¬¹â±êÓ¦¸ÃÖ»»áÒƶ¯Ò»¸ö×Ö·û£¬ÒòΪÄãÒѾ­Óà C-g È¡ÏûÁ˲ÎÊý¡£ - -Èç¹ûÄ㲻СÐÄ°´ÁËһϠ£¬ÄãÒ²¿ÉÒÔÓà C-g À´È¡ÏûËü¡£ -¡¾Õâ¸ö˵·¨ËƺõÓÐÎÊÌ⣬ÒòΪ°´ÕÕÕâ¸ö°´¼ü˳ÐòÊäÈëµÄÓ¦¸ÃÊÇ C-M-g¡£ - È¡Ïû µÄÕýÈ·×ö·¨ÊÇÔÙÁ¬°´Á½´Î ¡£¡¿ - - -* ±»½ûÓõÄÃüÁDISABLED COMMANDS£© ------------------------------------ - -ÓÐһЩ Emacs ÃüÁî±»¡°½ûÓá±ÁË£¬ÒÔ±ÜÃâ³õѧÕßÔÚ²»Á˽âÆäÈ·Çй¦ÄܵÄÇé¿öÏÂÎó -ÓöøÔì³ÉÂé·³¡£ - -Èç¹ûÄãÓõ½ÁËÒ»¸ö±»½ûÓõÄÃüÁEmacs »áÏÔʾһ¸öÌáʾÏûÏ¢£¬¸æËßÄãÕâ¸öÃüÁî -µ½µ×ÊǸÉʲôµÄ£¬Ñ¯ÎÊÄãÊÇ·ñÒª¼ÌÐø£¬²¢Ôڵõ½ÄãµÄ¿Ï¶¨Ö®ºóÔÙÖ´ÐÐÕâÃüÁî¡£ - -Èç¹ûÄãÕæµÄÏëÓÃÕâÌõÃüÁÔÚ Emacs ѯÎÊÄãµÄʱºòÓ¦¸Ã°´¿Õ¸ñ¡£Ò»°ãÀ´Ëµ£¬Èç¹û -Äã²»ÏëÓ㬾Ͱ´¡°n¡±¡£ - ->> ÊÔÊÔ C-x C-l £¨ÕâÊÇÒ»¸ö±»½ûÓõÄÃüÁ - È»ºóÓà n À´»Ø´ðѯÎÊ¡£ - - -* ´°¸ñ£¨WINDOWS£© ------------------ - -Emacs ¿ÉÒÔÓжà¸ö´°¸ñ£¬Ã¿¸ö´°¸ñÏÔʾ²»Í¬µÄÎÄ×Ö¡£ºóÃæ»á½éÉÜÔõô¶Ô¸¶¶à¸ö´° -¸ñ£¬ÏÖÔÚÎÒÃÇÏÈѧ»áÈçºÎ¹Øµô¶àÓàµÄ´°¸ñ¡£ÆäʵҲºÜ¼òµ¥£º - - C-x 1 Ö»±£ÁôÒ»¸ö´°¸ñ£¨Ò²¾ÍÊǹصôÆäËüËùÓд°¸ñ£©¡£ - -Ò²¾ÍÊÇÏÈ°´ CONTROL-x È»ºóÔÙ°´ 1¡£C-x 1 »á±£Áô¹â±êËùÔڵĴ°¸ñ£¬²¢½«ÆäÀ©´ó -µ½Õû¸öÆÁÄ»£¬Í¬Ê±¹ØµôËùÓÐÆäËüµÄ´°¸ñ¡£ - ->> °Ñ¹â±êÒƵ½±¾ÐÐÈ»ºóÊäÈë C-u 0 C-l¡£ - ->> ÊäÈë CONTROL-h k CONTROL-f¡£¹Û²ìµ±Ò»¸öд°¸ñ³öÏÖʱµ±Ç°´°¸ñ£¨ÓÃÀ´ÏÔʾ - CONTROL-f ÃüÁîµÄÎĵµ£©ÊÇÈçºÎËõСµÄ¡£ - ->> ÊäÈë C-x 1 ¹ØµôÎĵµ´°¸ñ¡£ - -Õâ¸öÃüÁî¸úÏÈǰѧ¹ýµÄÃüÁ̫һÑù£¬ÒòΪËü°üº¬ÁËÁ½¸ö×Ö·û£¬ÒÔ CONTROL-x ¿ª -ʼ¡£ÓÐһϵÁÐÃüÁÊÇÒÔ CONTROL-x ¿ªÊ¼µÄ£¬ÕâЩÃüÁîÐí¶à¶¼¸ú¡°´°¸ñ¡¢Îļþ¡¢ -»º³åÇø¡¾»º³åÇø£¨buffer£©»áÔÚºóÎÄÏêϸ½éÉÜ¡¿¡±µÈµÈÖîÈç´ËÀàµÄ¶«Î÷Óйأ¬Æä -ÖÐÓÐЩÃüÁî¿ÉÄÜ°üº¬ÁË 2 ¸ö¡¢3 ¸ö»òÕß 4 ¸ö×Ö·û¡£ - - -* ²åÈëÓëɾ³ý£¨INSERTING AND DELETING£© --------------------------------------- - -²åÈëÎÄ×ֺܼòµ¥£¬Ö±½ÓÇüüÅ̾ͿÉÒÔÁË¡£ÄãÄÜ¿´µ½µÄ×Ö·û£¬±ÈÈç A¡¢7¡¢* µÈµÈ£¬ -¶¼±» Emacs ÊÓΪÎÄ×Ö²¢ÇÒ¿ÉÒÔÖ±½Ó²åÈë¡£Çà £¨»Ø³µ¼ü£©»á²åÈëÒ»¸ö»» -Ðзû¡£ - -Äã¿ÉÒÔÓà À´É¾³ý×îºóÊäÈëµÄÒ»¸ö×Ö·û£¬Õâ¸ö¸úÄãÔÚ Emacs Ö®ÍâµÄÓà -·¨Ó¦¸ÃÒ»Ñù¡£Ò»°ãÀ´Ëµ ¾ÍÊÇλÓÚ ¼üÉÏ·½Ä³´¦µÄÒ»¸ö´ó¿éÍ· -µÄ¼ü£¬Í¨³£±»±êʾΪ¡°Delete¡±¡¢¡°Del¡±»òÕß¡°Backspace¡±¡£ - -Èç¹ûÄãÕÒµ½ÁË¡°Backspace¡±¼ü£¬ÄÇôËüÓ¦¸Ã¾ÍÊÇ £»ÕâʱÄÄÅÂÄãÓÖÔÚ±ð -µÄµØ·½ÕÒµ½ÁËÒ»¸ö¡°Del¡±¼ü£¬ÄÇôËüÒ²Ó¦¸Ã²»ÊÇ ¡£ - -Ò»ÖÖ¸üͨÓõÄ˵·¨ÊÇ£¬ ½«É¾³ýλÓÚ¹â±êÇ°µÄÒ»¸ö×Ö·û¡£ - ->> ÏÖÔÚ¾ÍÀ´ÊÔÊÔ¡ª¡ªÇõã×Ö£¬È»ºó°´¼¸Ï ɾ³ýËüÃÇ¡£ - ²»Óõ£ÐÄÎļþ±»Ð޸ģ¬Äã×öʲô¶¼Ã»¹Øϵ£¬ÕâÀï¾ÍÊÇר¸øÄãÁ·Ï°Óõġ£ - -Èç¹ûÒ»ÐÐÎÄ×ֺܳ¤¡¢³¬³öÁË´°¸ñµÄ¿í¶È£¬ÏÔʾ²»ÏµIJ¿·Ö»áÔÚ½ôÁÚµÄÏÂÒ»ÐмÌÐø -ÏÔʾ¡£Õâʱ»áÓÐÒ»¸ö·´Ð±Ïߣ¨ÔÚ¿ØÖÆ̨ÏÂÊÇ·´Ð±Ïߣ¬Èç¹ûÄãÓÃͼÐδ°¿Úϵͳ£¬Ôò -Ó¦¸ÃÊÇÒ»¸öССµÄתÍä¼ýÍ·£©ÏÔʾÔÚÓÒ±ßÑØ£¬±íÃ÷ÕâÊÇijһÐеĽÓÐøÏÔʾ¡£ - ->> ÊäÈëÎÄ×Ö£¬Ò»Ö±µ½ÆÁÄ»µÄÓұ߽磬Ȼºó¼ÌÐø£¬Äã»á¿´µ½Ò»¸ö½ÓÐøÐгöÏÖ¡£ - ->> Óà ɾµôһЩÎÄ×Ö£¬Ö±µ½´ËÐ㤶ÈСÓÚ´°¸ñ¿í¶È£¬½ÓÐøÐоÍÏûʧÁË¡£ - -»»Ðзû¸úÆäËü×Ö·ûÒ»Ñù¿ÉÒÔ±»É¾³ý¡£Á½ÐÐÖмäµÄ»»Ðзû±»É¾³ýºó£¬ÕâÁ½Ðн«»áºÏ -²¢³ÉÒ»ÐС£Èç¹ûºÏ²¢ºóµÄÕâÒ»ÐÐÌ«³¤£¬³¬³öÁË´°¸ñ¿í¶È£¬Ëü¾Í»áÒÔÒ»¸ö½ÓÐøÐÐÀ´ -ÏÔʾ¡£ - ->> Òƶ¯¹â±êµ½Ä³ÐеĿªÍ·²¢ÊäÈë ¡£ - Õâʱ¸ÃÐн«ÓëÆäÇ°Ò»ÐÐÒ»Æ𱻺ϲ¢ÎªÒ»ÐС£ - ->> ÊäÈë ÖØвåÈëÄã¸Õ²Åɾ³ýµÄ»»Ðзû¡£ - -Ç°Ãæ½²¹ý£¬´ó²¿·ÖµÄ Emacs ÃüÁ¿ÉÒÔÖ¸¶¨Öظ´´ÎÊý£¬ÕâÆäÖÐÒ²°üÀ¨ÊäÈë×Ö·ûµÄ -ÃüÁî¡£Öظ´Ö´ÐÐÊäÈë×Ö·ûµÄÃüÁîʵ¼ÊÉϾÍÊÇÊäÈë¶à¸öÏàͬµÄ×Ö·û¡£ - ->> ÊÔÊÔ C-u 8 *£¬Õ⽫»á²åÈë ********¡£ - -ºÃ£¬ÏÖÔÚÄãÓ¦¸ÃÒѾ­ÕÆÎÕÁË×î»ù±¾µÄµÄÎı¾²åÈëºÍÐ޸ŦÄÜ£¬Æäʵɾ³ý»¹¿ÉÒÔ -¡°ÒÔ´ÊΪµ¥Î»¡±½øÐУ¬ÏÂÃæÊÇÒ»¸ö¹ØÓÚ¡°É¾³ý¡±²Ù×÷µÄС½á£º - - ɾ³ý¹â±êÇ°µÄÒ»¸ö×Ö·û - C-d ɾ³ý¹â±êºóµÄÒ»¸ö×Ö·û - - M- ÒƳý¹â±êÇ°µÄÒ»¸ö´Ê - M-d ÒƳý¹â±êºóµÄÒ»¸ö´Ê - - C-k ÒƳý´Ó¹â±êµ½¡°ÐÐβ¡±¼äµÄ×Ö·û - M-k ÒƳý´Ó¹â±êµ½¡°¾äβ¡±¼äµÄ×Ö·û - -¡¾¿ÉÄÜÄãÒѾ­×¢Òâµ½ÁË¡°É¾³ý£¨delete£©¡±ºÍ¡°ÒƳý£¨kill£©¡±µÄÓôÊÇø±ð£¬ºó -ÎÄ»áÓÐÏêϸ˵Ã÷¡£¡¿ - -×¢Òâ¡° ºÍ C-d¡±»¹ÓС°M- ºÍ M-d¡±ÊǸù¾ÝÇ°Êö¹ßÀý´Ó C-f -ºÍ M-f ÑÜÉú³öÀ´µÄ£¨Æäʵ²»ÊÇ¿ØÖÆ×Ö·û£¬ÎÒÃÇÏȺöÂÔÕâÒ»µã£©¡£C-k -ºÍ M-k µÄ¹ØϵÔÚijÖ̶ֳÈÉÏÓë C-e ºÍ M-e Ò»Ñù¡ª¡ªÈç¹û°Ñ¡°Ò»ÐС±ºÍ¡°Ò»¾ä¡± -×÷Ò»¸öÀà±ÈµÄ»°¡£ - -ÄãÒ²¿ÉÒÔÓÃÒ»ÖÖͨÓõİ취À´ÒƳý»º³åÇøÀïµÄÈκÎÒ»²¿·Ö£ºÊ×ÏȰѹâ±êÒƶ¯µ½Äã -ÏëÒªÒƳýµÄÇøÓòµÄÒ»¶Ë£¬È»ºó°´ C-@ »ò C-SPC£¨ÈÎÒ»¼´¿É£¬SPCÖ¸¿Õ¸ñ£©¡¾×¢Ò⣬ -C-SPC ÍùÍù±»ÖÐÎÄÓû§É趨³ÉÊäÈë·¨Èȼü£¬Èç¹ûÕâÑù£¬C-SPC ¾Í±»ÏµÍ³À¹½Ø¶øÎÞ -·¨´«µÝ¸ø Emacs ÁË£¬Òò´ËÕâÀﻹÊÇÍƼöʹÓÃC-@¡£¡¿£¬È»ºó½«¹â±êÒƶ¯µ½ÁíÒ»¶Ë£¬ -ÔÙ°´ C-w ¾Í¿ÉÒÔ°ÑλÓÚÕâÁ½µãÖ®¼äµÄËùÓÐÎÄ×ÖÒƳýÁË¡£ - ->> Òƶ¯¹â±êµ½ÉÏÒ»¶Î¿ªÍ·µÄ¡°Ä㡱×Ö¡£ ->> ÊäÈë C-@ ¡£Emacs Ó¦¸Ã»áÔÚÆÁÄ»µÄÏ·½ÏÔʾһ¸ö¡°Mark set¡±µÄÏûÏ¢¡£ ->> Òƶ¯¹â±êµ½µÚ¶þÐÐÖеġ°¶Ë¡±×Ö¡£ ->> ÊäÈë C-w£¬´Ó¡°Ä㡱¿ªÊ¼µ½¡°¶Ë¡±Ö®Ç°µÄÎÄ×Ö±»È«²¿ÒƳý¡£ - -×¢Òâ,¡°ÒƳý£¨kill£©¡±ºÍ¡°É¾³ý£¨delete£©¡±µÄ²»Í¬ÔÚÓÚ±»ÒƳýµÄ¶«Î÷¿ÉÒÔÕÒ»Ø -À´£¬¶ø±»É¾³ýµÄ¾Í²»ÐÐÁË¡£¡¾Êµ¼ÊÉÏ£¬ÒƳýµôµÄ¶«Î÷ËäÈ»¿´ÆðÀ´¡°Ïûʧ¡±ÁË£¬µ« -ʵ¼ÊÉϱ» Emacs ¼Ç¼ÁËÏÂÀ´£¬Òò´Ë»¹¿ÉÒÔÕÒ»ØÀ´£»¶øɾ³ýµôµÄ¶«Î÷ËäȻҲ¿ÉÄÜ»¹ -ÔÚÄÚ´æÀµ«ÊÇÒѾ­±» Emacs¡°Å×Æú¡±ÁË£¬ËùÒÔ¾ÍÕÒ²»»ØÀ´ÁË¡£¡¿ÖØвåÈë±»ÒÆ -³ýµÄÎÄ×Ö³ÆΪ¡°Õٻأ¨yank£©¡±¡£Ò»°ã¶øÑÔ£¬ÄÇЩ¿ÉÄÜÏû³ýºÜ¶àÎÄ×ÖµÄÃüÁî»á°Ñ -Ïû³ýµôµÄÎÄ×ּǼÏÂÀ´£¨ËüÃDZ»É趨³ÉÁË¡°¿ÉÕٻء±£©£¬¶øÄÇЩֻÏû³ýÒ»¸ö×Ö·û -»òÕßÖ»Ïû³ý¿Õ°×µÄÃüÁî¾Í²»»á¼Ç¼±»Ïû³ýµÄÄÚÈÝ£¨×ÔÈ»ÄãÒ²¾ÍÎÞ·¨ÕÙ»ØÁË£©¡£ - ->> Òƶ¯¹â±êµ½Ò»·Ç¿Õ°×ÐеÄÐÐÍ·£¬È»ºóÊäÈë C-k ÒƳýÄÇÒ»ÐÐÉϵÄÎÄ×Ö¡£ - ->> ÔÙ´Î C-k£¬Äã¿ÉÒÔ¿´µ½ËüÒƳýÁ˸úÔÚÄÇÒ»ÐкóÃæµÄ»»Ðзû¡£ - -×¢Ò⣬µ¥¶ÀµÄ C-k »á°ÑÒ»ÐеÄÄÚÈÝÒƳý£¬¶øµÚ¶þ¸ö C-k Ôò»áÒƳý»»Ðзû£¬²¢Ê¹ -ÆäºóËùÓеÄÐж¼ÏòÉÏÒƶ¯¡£C-k ´¦ÀíÊý×Ö²ÎÊýµÄ·½Ê½ºÜÌرð£¬Ëü»á°Ñ²ÎÊýÖ¸¶¨µÄ -ÄÇô¶àÐÐÁ¬Í¬ÆäºóµÄ»»ÐзûÒ»ÆðÒƳý£¬¶ø²»½ö½öÊÇÖظ´ C-k ¶øÒÑ¡£±ÈÈç C-u 2 -C-k »á°ÑÁ½ÐÐÒÔ¼°ËüÃǵĻ»ÐзûÒƳý£»¶øÈç¹ûÖ»ÊÇÊäÈë C-k Á½´ÎÏÔÈ»²»ÊÇÕâ¸ö½á -¹û¡£ - -½«±»ÒƳýµÄÎÄ×Ö»Ö¸´µÄ¶¯×÷³ÆΪ¡°Õٻأ¨yanking£©¡±¡££¨¾ÍºÃÏñ°Ñ±ðÈË´ÓÄãÉí±ß -ÒÆ×ߵĶ«Î÷ÓÖÃÍÁ¦µØÀ­»ØÀ´¡££©Äã¿ÉÒÔÔÚÄãɾ³ýÎÄ×ֵĵط½Õٻأ¬Ò²¿ÉÒÔÔÚ±ðµÄ -µØ·½Õٻأ¬»¹¿ÉÒÔ¶à´ÎÕÙ»ØͬÑùµÄÎÄ×ÖÒԵõ½ËüµÄ¶à¸ö¿½±´¡£ - -ÕٻصÄÃüÁîÊÇ C-y¡£Ëü»áÔÚ¹â±êËùÔÚ´¦²åÈëÄã×îºóÒƳýµÄÎÄ×Ö¡£ - ->> ÊÔÊÔ¿´£¬ÊäÈë C-y ½«ÎÄ×ÖÕٻء£ - -Èç¹ûÄãÒ»´ÎÁ¬°´Á˺ü¸Ï C-k£¬ÄÇôËùÓб»ÒƳýµÄÐлᱻ´æ´¢ÔÚÒ»Æð£¬Ö»ÒªÒ»¸ö -C-y ¾Í¿ÉÒÔ°ÑËüÃǶ¼Õٻء£ - ->> ÔÚÕâÀïÊÔÊÔ£¬Á¬Ðø°´¼¸´Î C-k¡£ - -ÏÖÔÚÔÙÀ´»Ö¸´¸Õ¸Õ±»ÎÒÃÇÒƳýµÄÎÄ×Ö£º - ->> °´ C-y¡£È»ºó°Ñ¹â±êÍùÏÂÒƶ¯¼¸ÐУ¬ÔÙ°´Ò»´Î C-y¡£ - ÏÖÔÚÄãÓ¦¸ÃÖªµÀÔõô¸´ÖÆÎÄ×ÖÁË¡£ - -C-y ¿ÉÒÔÕÙ»Ø×î½üÒ»´ÎÒƳýµÄÄÚÈÝ£¬ÄÇÈçºÎÕÙ»ØÇ°¼¸´ÎÒƳýµÄÄÚÈÝÄØ£¿ËüÃǵ±È» -ûÓжª£¬Äã¿ÉÒÔÓà M-y À´ÕÙ»ØËüÃÇ¡£ÔÚÓà C-y ÕÙ»Ø×î½üÒƳýµÄÎÄ×ÖÖ®ºó£¬½ô½Ó -×ÅÔÙ°´ M-y ¾Í¿ÉÒÔÕÙ»ØÔÙÇ°Ò»´Î±»ÒƳýµÄÄÚÈÝ£¬ÔÙ°´Ò»´Î M-y ÓÖ¿ÉÒÔÕÙ»ØÔÙÉÏ -Ò»´ÎµÄ¡­¡­Á¬ÐøʹÓà M-y Ö±µ½ÕÒµ½ÄãÏëÒªÕٻصĶ«Î÷£¬È»ºóʲôҲ²»ÓÃ×ö£¬¼ÌÐø -±à¼­¾ÍÐÐÁË¡£ - -Èç¹ûÁ¬Ðø°´ M-y ºÜ¶à´Î£¬Äã¿ÉÄÜ»á»Øµ½Æðʼµã£¬Ò²¾ÍÊÇ×î½üÒƳýµÄÎÄ×Ö¡£ -¡¾¿´µÃ³öÕâʵ¼ÊÉÏÊÇÒ»¸ö»·¡£¡¿ - ->> ÒƳýÒ»ÐУ¬Òƶ¯Ò»Ï¹â±ê£¬È»ºóÔÙÒƳýÁíÍâÒ»ÐС£ - °´ C-y ½«µÚ¶þ´ÎÒƳýµÄÄÇÐÐÕÙ»ØÀ´¡£ - ½ô½Ó×ÅÔÙ°´ M-y£¬Ëü½«»á±»µÚÒ»´ÎÒƳýµÄÄÇÐÐÈ¡´ú¡£ - ÊÔ×ÅÔÙ°´¼¸Ï M-y ¿´¿´»á·¢Éúʲô¡£ - ÔÙ¼ÌÐø£¬Ö±µ½µÚ¶þÐб»ÕÙ»ØÀ´£¬È»ºóÔÙ×ö¸ö¼¸´Î¡£ - Èç¹û¸ÐÐËȤ£¬Äã¿ÉÒÔÊÔןø M-y Ö¸¶¨Ò»¸öÕýµÄ»ò¸ºµÄ²ÎÊý¡£ - - -* ³·Ïú£¨UNDO£© --------------- - -Èç¹ûÄãÐÞ¸ÄÁËÒ»¶ÎÎÄ×Ö£¬ÓÖ¾õµÃ¸ÄµÃ²»ºÃ£¬¿ÉÒÔÓà undo ÃüÁî½øÐг·Ïú£º -C-x u¡£ - -ͨ³£ C-x u »áÏû³ýÒ»¸öÃüÁîËùÔì³ÉµÄËùÓиı䣻Èç¹ûÄãÔÚÒ»ÐÐÖÐÁ¬Ðø¶à´ÎµØʹÓà -C-x u£¬Äã»á°ÑÒÔÇ°µÄÃüÁîÒ²ÒÀ´Î³·Ïú¡£ - -µ«ÊÇÓÐÁ½¸öÀýÍ⣺ -1£© ûÓиıäÎÄ×ÖµÄÃüÁî²»Ë㣨°üÀ¨¹â±êÒƶ¯ÃüÁîºÍ¹ö¶¯ÃüÁ -2£© ´Ó¼üÅÌÊäÈëµÄ×Ö·ûÒÔ×éΪµ¥Î»¡ª¡ªÃ¿×é 20 ¸ö×Ö·û¡ª¡ªÀ´½øÐд¦Àí¡£ - £¨ÕâÊÇΪÁ˼õÉÙÄãÔÚ³·Ïú¡°²åÈëÎÄ×Ö¡±¶¯×÷ʱÐèÒªÊäÈë C-x u µÄ´ÎÊý£© - ->> Óà C-k ½«ÕâÒ»ÐÐÒƳý£¬È»ºóÊäÈë C-x u £¬Ëü»áÔٴγöÏÖ¡£ - -C-_ Ò²Êdz·ÏúÃüÁËüµÄ×÷Óøú C-x u Ò»Ñù£¬µ«ÊÇËü±È½ÏÈÝÒ׶à´ÎÊäÈë¡£C-_ µÄ -ȱµãÊÇÔÚijЩ¼üÅÌÉÏ¿ÉÄܲ»Ì«ÈÝÒ×°´£¬ÕâÒ²ÕýÊÇÎÒÃÇͬʱÌṩ C-x u µÄÔ­Òò¡£ÔÚ -ijЩÖÕ¶ËÉÏ£¬Äã¿ÉÒÔ°´×¡ CONTROL ÔÙ°´¡°/¡±À´ÊäÈë C-_¡£ - -Êý×Ö²ÎÊý¶ÔÓÚ C-_ ºÍ C-x u µÄÒâÒåÊÇÖ´Ðг·ÏúµÄÖظ´´ÎÊý¡£ - - -* Îļþ£¨FILE£© --------------- - -Ïë±£´æ¹¤×÷³É¹û¾ÍÒª¼ÇµÃ´æÅÌ£¬·ñÔòÒ»µ©Í˳ö Emacs Äã±à¼­µÄÎÄ×־ͻᶪʧ¡£Òª -´æÅÌ£¬¾ÍÒªÔڱ༭ǰ¡°Ñ°ÕÒ¡±µ½Ò»¸ö´æÅÌÎļþ¡££¨Õâ¸ö¹ý³Ìͨ³£Ò²±»³ÆΪ¡°·ÃÎÊ¡± -Îļþ¡££© - -Ñ°ÕÒµ½Ò»¸öÎļþÒâζ×ÅÄã¿ÉÒÔÔÚ Emacs Àï²é¿´Õâ¸öÎļþµÄÄÚÈÝ¡£´ÓÐí¶à½Ç¶È¿´£¬ -Õâ¾ÍµÈÓÚÄãÔÚÖ±½Ó±à¼­Õâ¸öÎļþ£¬Ö»ÊÇÄãËù×öµÄÐÞ¸ÄÖ»ÓÐÔÚ¡°´æÅÌ¡±µÄʱºò²Å»á -±»Ð´ÈëÎļþ¡£Ò²ÕýÒòΪÈç´Ë£¬Äã¿ÉÒÔ¶ªÆúÒ»¸öдµ½Ò»°ëµÄÎļþ¶ø²»±Ø°ÑÕâ¸ö²Ðȱ -ÎļþÒ²±£´æµ½¼ÆËã»úÉÏ¡£ÔÚ´æÅ̵Äʱºò£¬Emacs »á°Ñ´æÅÌÇ°µÄÎļþÖØÃüÃû±£´æ£¬ -ÒÔ·ÀÄã¸ÄÍêÖ®ºóÓÖÏë·´»Ú¡£ - -ÔÚÆÁÄ»µÄÏ·½£¬ÄãÓ¦¸ÃÄܹ»¿´µ½Í·Î²¶¼ÊǶÌÏß¡°-¡±µÄÒ»ÐУ¬ÐÐÊ×ͨ³£ÊÇһЩÖîÈç -¡°--:-- TUTORIAL.cn¡±µÄÎÄ×Ö£¬ÕâЩÎÄ×Ö´ú±íÁËÄ㵱ǰÕýÔÚ·ÃÎʵÄÎļþ¡£±ÈÈçÄã -ÏÖÔÚÕýÔÚ·ÃÎʵÄÎļþ½Ð¡°TUTORIAL.cn¡±£¬ËüÖ»ÊÇÒ»¸ö¸øÄãÁÙʱʹÓõĿ½±´¡£Ã¿µ± -Emacs Ñ°ÕÒµ½Ò»¸öÎļþ£¬ÎļþÃû¾Í»á³öÏÖÔÚÕâ¸öλÖᣠ- -Ñ°ÕÒÎļþµÄÃüÁîÓÐÒ»¸öÌص㣬ÄǾÍÊÇÄã±ØÐë¸ø³öÎļþÃû¡£ÎÒÃdzÆÕâ¸öÃüÁî¡°´ÓÖÕ -¶Ë¶ÁÈëÁËÒ»¸ö²ÎÊý¡±£¨ÔÚÕâÀÕâ¸ö²ÎÊýÏÔÈ»¾ÍÊÇÎļþÃû£©¡£ÔÚÄãÊäÈëÕâÌõÃüÁî -Ö®ºó£º - - C-x C-f Ñ°ÕÒÒ»¸öÎļþ - -Emacs »áÌáʾÄãÊäÈëÎļþÃû¡£ÄãÊäÈëµÄÎļþÃû»á³öÏÖÔÚÆÁÄ»×îµ×¶ËµÄÒ»ÐУ¬ÕâÒ» -Ðб»³ÆΪС»º³å£¨minibuffer£©£¬ÔÚС»º³åÀïÄã¿ÉÒÔʹÓÃͨ³£µÄ Emacs ±à¼­ÃüÁî -À´±à¼­ÎļþÃû¡£ - -ÔÚС»º³åÀïÊäÈëÎļþÃû£¨ÆäʵÊäÈëÆäËü¶«Î÷Ò²Ò»Ñù£©Ê±¿ÉÒÔÓà C-g È¡Ïû¡£ - ->> ÊäÈë C-x C-f£¬È»ºóÊäÈë C-g - Õâ»á¹ØµôС»º³å£¬Í¬Ê±Ò²»áÈ¡ÏûʹÓÃС»º³åµÄ C-x C-f ÃüÁî¡£ - µ±È»ÁË£¬ÄãҲûÓÐÕÒÈκÎÎļþ¡£ - -Óà ½áÊøÎļþÃûµÄÊäÈë¡£ÕâÖ®ºó C-x C-f ÃüÁʼ¹¤×÷²¢ÕÒµ½ÄãÖ¸¶¨µÄ -Îļþ¡£Ð¡»º³åÔÚ C-x C-f ÃüÁî½áÊøÖ®ºóÒ²»áÏûʧ¡£ - -Õ£ÑÛ¼äÎļþ¾Í±»ÏÔʾÔÚÆÁÄ»ÉÏ£¬Äã¿ÉÒÔ¿ªÊ¼±à¼­ÁË¡£´æÅÌÓÃÕâÌõÃüÁ - - C-x C-s ´¢´æÕâ¸öÎļþ - -ÕâÌõÃüÁî°Ñ Emacs ÖеÄÎÄ×Ö´æ´¢µ½ÎļþÖС£µÚÒ»´Î´æÅ̵Äʱºò Emacs »á½«Ô­ÎÄ -¼þÖØÃüÃûÒÔ±¸·Ý¡£ÖØÃüÃûµÄ¹æÔòͨ³£ÊÇÔÚÔ­ÎļþÃûÖ®ºóÌí¼ÓÒ»¸ö¡°~¡±×Ö·û¡£ -¡¾¶ÔÐí¶àÈËÀ´Ëµ£¬ÕâÊÇÒ»¸ö·³È˵ÄÌØÐÔ£¬¹ØµôÎļþ±¸·Ý¿ÉÒÔÓÃÈçÏÂÃüÁ - M-x customize-variable make-backup-files ¡¿ - -´æÅ̽áÊøºó£¬Emacs »áÏÔʾдÈëÎļþµÄÎļþÃû¡£Äã×îºÃÑø³É¾­³£´æÅ̵ÄÏ°¹ß£¬Õâ -¿ÉÒÔ¼õÉÙϵͳ±ÀÀ£ºÍËÀ»ú¸øÄã´øÀ´µÄËðʧ¡£ - ->> ÊäÈë C-x C-s °Ñ±¾¿ìËÙÖ¸ÄÏ´æÏÂÀ´¡£ - Äã»áÔÚÆÁÄ»µÄÏ·½¿´µ½Ò»ÌõÏûÏ¢£º¡°Wrote ...TUTORIAL.cn¡±¡£ - -×¢Ò⣺ÔÚijЩÖÕ¶ËÏ£¬ÊäÈë C-x C-s »á¶³½áÆÁÄ»¡¾ÆÁĻûÓÐÈκÎÊä³ö¡¿£¬Ê¹Äã¿´ -²»µ½ Emacs µÄÈκα仯¡£ÆäÔ­ÒòÊDzÙ×÷ϵͳµÄ¡°Á÷Á¿¿ØÖÆ¡±¹¦ÄÜÀ¹½ØÁË C-s ²¢ -¶³½áÁËÆÁÄ»¡£Óà C-q ¿ÉÒÔ½â³ýÆÁÄ»¶³½á¡£Òª½â¾öÕâ¸öÎÊÌ⣬Çë²Î¿¼ Emacs ÊÖ²á -ÀïµÄ¡°Spontaneous Entry to Incremental Search¡±Ò»½Ú¡¾Emacs ÊÖ²á¿ÉÄÜ»¹Ã» -ÓÐÖÐÎÄ·­Òë¡¿£¬ÄÇÀïÌṩÁËһЩÓÐÓõĽ¨Òé¡£ - -Äã²»µ«¿ÉÒÔÑ°ÕÒÒ»¸öÒÑÓеÄÎļþÀ´²é¿´»ò±à¼­£¬»¹¿ÉÒÔÑ°ÕÒÒ»¸ö²»´æÔÚµÄÎļþ¡£ -ʵ¼ÊÉÏÕâÕýÊÇ Emacs ´´½¨ÐÂÎļþµÄ·½·¨£ºÕÒµ½²»´æÔÚµÄÐÂÎļþ¡£Ö»ÓÐÔÚ´æÅ̵Äʱ -ºò£¬Emacs ²Å»áÕæÕý´´½¨Õâ¸öÎļþ¡£¶øÔÚÕâÖ®ºóµÄÒ»Çо͸ú±à¼­Ò»¸öÒÑÓÐÎļþû -ÓÐÇø±ðÁË¡£ - - -* »º³åÇø£¨BUFFER£© ------------------- - -Äã¿ÉÒÔÓà C-x C-f ÕÒµ½²¢´ò¿ªµÚ¶þ¸öÎļþ£¬µ«µÚÒ»¸öÎļþÈÔÈ»ÔÚ Emacs ÖС£Òª -ÇлصÚÒ»¸öÎļþ£¬Ò»ÖÖ°ì·¨ÊÇÔÙÓÃÒ»´Î C-x C-f¡£ÕâÑù£¬Äã¾Í¿ÉÒÔÔÚ Emacs ÖÐͬ -ʱ´ò¿ª¶à¸öÎļþ¡£ - ->> Óà C-x C-f foo µÄ·½Ê½½¨Á¢Ò»¸öÃûΪ¡°foo¡±µÄÎļþ¡£ - ÊäÈëһЩÎÄ×Ö£¬ÔÙÓà C-x C-s ±£´æÎļþ¡°foo¡±¡£ - ×îºó£¬ÊäÈë C-x C-f TUTORIAL.cn »Øµ½ÕâÀï¡£ - -Emacs °Ñÿ¸ö±à¼­ÖеÄÎļþ¶¼·ÅÔÚÒ»¸ö³ÆΪ¡°»º³åÇø£¨buffer£©¡±µÄµØ·½¡£Ã¿Ñ° -ÕÒµ½Ò»¸öÎļþ£¬Emacs ¾ÍÔÚÆäÄÚ²¿¿ª±ÙÒ»¸ö»º³åÇø¡£ÓÃÏÂÃæµÄÃüÁî¿ÉÒÔÁгöµ±Ç° -ËùÓеĻº³åÇø£º - - C-x C-b Áгö»º³åÇø - ->> ÏÖÔÚ¾ÍÊÔһϠC-x C-b - -¹Û²ìһϻº³åÇøÊÇÈçºÎ±»ÃüÃûµÄ£¬ËüºÜ¿ÉÄܸúÓëÆä¶ÔÓ¦µÄÎļþͬÃû¡£Êµ¼ÊÉÏ£¬Ò» -¸ö Emacs ´°¸ñÀïµÄÈκÎÎÄ×Ö¶¼ÊÇij¸ö»º³åÇøµÄÒ»²¿·Ö¡£ - ->> ÊäÈë C-x 1 À뿪»º³åÇøÁбí - -²»¹Ü´æÔÚ¶àÉÙ»º³åÇø£¬ÈκÎʱºò¶¼Ö»ÄÜÓÐÒ»¸ö¡°µ±Ç°¡±»º³åÇø£¬Ò²¾ÍÊÇÄãÕýÔÚ±à -¼­µÄÕâ¸ö¡£Èç¹ûÄãÏë±à¼­ÆäËüµÄ»º³åÇø£¬¾Í±ØÐë¡°Çл»¡±¹ýÈ¥¡£ÉÏÃæ½²¹ý£¬Óà -C-x C-f ÊÇÒ»ÖÖ°ì·¨¡£²»¹ý»¹ÓÐÒ»¸ö¸ü¼òµ¥µÄ°ì·¨£¬ÄǾÍÊÇÓà C-x b¡£ÓÃÕâÌõÃü -ÁÄã±ØÐëÊäÈ뻺³åÇøµÄÃû³Æ¡£ - ->> ÊäÈë C-x b foo ÒԻص½Îļþ¡°foo¡±µÄ»º³åÇø¡£ - È»ºóÊäÈë C-x b TUTORIAL.cn »Øµ½ÕâÀï¡£ - -´ó¶àÊýÇé¿öÏ£¬»º³åÇøÓë¸úÆä¶ÔÓ¦µÄÎļþÊÇͬÃûµÄ£¨²»°üÀ¨Ä¿Â¼Ãû£©£¬²»¹ýÕâÒ² -²»ÊǾø¶ÔµÄ¡£Óà C-x C-b µÃµ½µÄ»º³åÇøÁбí×ÜÊÇÏÔʾ»º³åÇøÃû¡£ - -ÄãÔÚ Emacs ´°¸ñÀï¿´µ½µÄ¡°ÈκΡ±ÎÄ×Ö¶¼Ò»¶¨ÊôÓÚij¸ö»º³åÇø¡£È»¶ø£¬»º³åÇøδ -±ØÓжÔÓ¦Îļþ£º±ÈÈçÏÔʾ»º³åÇøÁбíµÄ»º³åÇø¾ÍÊÇÕâÑù¡£ÔÙ±ÈÈç¡°*Messages*¡± -»º³åÇøҲûÓжÔÓ¦Îļþ£¬Õâ¸ö»º³åÇøÀï´æ·ÅµÄ¶¼ÊÇÔÚ Emacs µ×²¿³öÏÖµÄÏûÏ¢¡£ - ->> ÊäÈë C-x b *Messages* ³ò³òÏûÏ¢»º³åÇøÀﶼÓÐʲô¶«Î÷¡£ - È»ºóÔÙÊäÈë C-x b TUTORIAL.cn »Øµ½ÕâÀï¡£ - -Èç¹ûÄã¶Ôij¸öÎļþ×öÁËЩÐ޸ģ¬È»ºóÇл»µ½ÁíÒ»¸öÎļþ£¬Õâ¸ö¶¯×÷²¢²»»á°ïÄã°Ñ -Ç°Ò»¸öÎļþ´æÅÌ¡£¶ÔµÚÒ»¸öÎļþµÄÐÞ¸ÄÈÔÈ»½ö´æÔÚÓÚ Emacs ÖУ¬Ò²¾ÍÊÇÔÚËü¶ÔÓ¦ -µÄ»º³åÇøÀï¡£²¢ÇÒ£¬¶ÔµÚ¶þ¸öÎļþµÄÐÞ¸ÄÒ²²»»áÓ°Ïìµ½µÚÒ»¸öÎļþ¡£ÕâºÜÓÐÓ㬠-µ«ÊÇҲͦÂé·³£ºÒòΪÈç¹ûÄãÏëÒª´æ´¢µÚÒ»¸öÎļþ£¬»¹ÐèÒªÏÈ C-x C-f Çл»»ØÈ¥ÔÙ -Óà C-x C-s ´æÅÌ¡£ÄãÐèÒªÒ»¸ö¸ü¼ò±ãµÄ·½·¨£¬¶ø Emacs ÒѾ­ÎªÄã×¼±¸ºÃÁË£º - - C-x s ±£´æ¶à¸ö»º³åÇø - -C-x s »áÕÒ³öËùÓÐÒѱ»Ð޸ĵ«ÉÐδ´æÅ̵Ļº³åÇø£¬È»ºóÏòÄãÖð¸öѯÎÊ£ºÊÇ·ñÐèÒª -´æÅÌ£¿ - ->> ²åÈëÒ»ÐÐÎÄ×Ö£¬È»ºóÊäÈë C-x s¡£ - ËüÓ¦¸Ã»áÎÊÄ㣬ÊÇ·ñÒª´¢´æÃûΪ TUTORIAL.cn µÄ»º³åÇø£¿ - °´¡°y¡±¸æËßËüÄãÏë´æÅÌ¡£ - - -* ÃüÁÀ©Õ¹£¨EXTENDING THE COMMAND SET£© ------------------------------------------ - -Emacs µÄÃüÁî¾ÍÏñÌìÉϵÄÐÇÐÇ£¬ÊýÒ²Êý²»Çå¡£°ÑËüÃǶ¼¶ÔÓ¦µ½ CONTROL ºÍ META -×éºÏ¼üÉÏÏÔÈ»ÊDz»¿ÉÄܵġ£Emacs ÓÃÀ©Õ¹£¨eXtend£©ÃüÁîÀ´½â¾öÕâ¸öÎÊÌ⣬À©Õ¹ -ÃüÁîÓÐÁ½ÖÖ·ç¸ñ£º - - C-x ×Ö·ûÀ©Õ¹¡£ C-x Ö®ºóÊäÈëÁíÒ»¸ö×Ö·û»òÕß×éºÏ¼ü¡£ - M-x ÃüÁîÃûÀ©Õ¹¡£M-x Ö®ºóÊäÈëÒ»¸öÃüÁîÃû¡£ - -ºÜ¶àÀ©Õ¹ÃüÁÏ൱ÓÐÓã¬ËäÈ»ÓëÄãÒѾ­Ñ§¹ýµÄÃüÁî±ÈÆðÀ´£¬ËûÃÇ¿ÉÄܲ»ÄÇô³£ -Óá£ÎÒÃÇÔçÒѾ­¼û¹ýһЩÀ©Õ¹ÃüÁîÁË£¬±ÈÈçÓà C-x C-f Ñ°ÕÒÎļþºÍÓà C-x C-s -±£´æÎļþ£»Í˳ö Emacs ÓÃµÄ C-x C-c Ò²ÊÇÀ©Õ¹ÃüÁî¡££¨²»Óõ£ÐÄÍ˳ö Emacs »á -¸øÄã´øÀ´Ê²Ã´Ëðʧ£¬Emacs »áÔÚÍ˳ö֮ǰÌáÐÑÄã´æÅ̵ģ© - -ÔÚ¿ØÖÆ̨Ï£¬C-z ¿ÉÒÔÔÝʱÀ뿪 Emacs¡ª¡ªµ±È»£¬Ä㻹¿ÉÒÔÔÙ»ØÀ´¡£ - -ÔÚÔÊÐí C-z µÄϵͳÖУ¬C-z »á°Ñ Emacs¡°¹ÒÆ𡱣¬Ò²¾ÍÊÇ˵£¬Ëü»á»Øµ½ shell -µ«²»Í˳ö Emacs¡£ÔÚ³£ÓÃµÄ shell ÖУ¬Í¨³£¿ÉÒÔÓá°fg¡±»òÕß¡°%emacs¡±ÃüÁîÔÙ -´Î»Øµ½ Emacs ÖС£ - -ÔÚûÓÐÌṩ¹ÒÆð¹¦ÄܵÄϵͳÖУ¬C-z »áÔÚ Emacs ֮ϴ´½¨Ò»¸ö×Ó shell À´ÈÃÄã -ÔËÐÐÆäËü³ÌÐò£¬²¢ÇÒÔٴΡ°»Øµ½¡±Emacs ÖСª¡ªËäÈ»ÎÒÃDz¢Ã»ÓÐÕæÕýÀ뿪¹ý¡£Õâ -ÖÖÇé¿öÏ£¬Í¨³£Óà shell ÃüÁî¡°exit¡±´Ó×Ó shell »Øµ½ Emacs¡£ - -Äã×îºÃÔÚ´òËãÍ˳öµÇ½µÄʱºòÔÙÓà C-x C-c¡£ÔÚ Emacs ±»ÖîÈçÓʼþ´¦Àí³ÌÐòÖ®Àà -µÄÍⲿ³ÌÐòµ÷ÓÃÖ®ºó£¬Ò²¿ÉÒÔÓà C-x C-c Í˳ö¡£²»¹ýÒ»°ãÀ´½²£¬Èç¹ûÄã²»ÏëÍ˳ö -µÇ¼£¬×îºÃ»¹ÊÇ°Ñ Emacs ¹ÒÆð¶ø²»ÊÇÍ˳ö¡£ - -C-x µÄÀ©Õ¹ÃüÁîÓкܶ࣬ÏÂÃæÁгöµÄÊÇÄãÒѾ­Ñ§¹ýµÄ£º - - C-x C-f Ñ°ÕÒÎļþ¡£ - C-x C-s ±£´æÎļþ¡£ - C-x C-b Áгö»º³åÇø¡£ - C-x C-c À뿪 Emacs¡£ - C-x 1 ¹ØµôÆäËüËùÓд°¸ñ£¬Ö»±£ÁôÒ»¸ö¡£ - C-x u ³·Ïú¡£ - -ÓÃÃüÁîÃûÀ©Õ¹µÄÃüÁîͨ³£²¢²»³£Ó㬻òÖ»ÓÃÔÚ²¿·ÖģʽÏ¡£±ÈÈç replace-string -£¨×Ö·û´®Ìæ»»£©Õâ¸öÃüÁËü»áÔÚÈ«ÎÄ·¶Î§ÄÚ°ÑÒ»¸ö×Ö·û´®Ìæ»»³ÉÁíÒ»¸ö¡£ÔÚÊä -Èë M-x Ö®ºó£¬Emacs »áÔÚÆÁÄ»µ×¶ËÏòÄãѯÎʲ¢µÈ´ýÄãÊäÈëÃüÁîÃû¡£Èç¹ûÄãÏëÊäÈë -¡°replace-string¡±£¬ÆäʵֻÐèÒªÇá°repl s¡±¾ÍÐÐÁË£¬Emacs »á°ïÄã×Ô¶¯ -²¹Æë¡£ÊäÈëÍêÖ®ºó°´ ¡£ - -×Ö·û´®Ìæ»»ÃüÁîÐèÒªÁ½¸ö²ÎÊý¡ª¡ª±»Ìæ»»µÄ×Ö·û´®ºÍÓÃÀ´Ìæ»»ËüµÄ×Ö·û´®¡£Ã¿¸ö -²ÎÊýµÄÊäÈ붼ÒÔ»»ÐзûÀ´½áÊø¡£ - ->> ½«¹â±êÒƵ½±¾ÐÐÏÂÃæµÚ¶þÐеĿհ״¦£¬È»ºóÊäÈë - M-x repl schangedaltered¡£ - - ¡¾ÒÔϱ£ÁôÒ»ÐÐÔ­ÎÄ£¬ÒÔÓ¦Á·Ï°Ö®Ð裺¡¿ - Notice how this line has changed: you've replaced... - -Çë×¢ÒâÕâÒ»Ðеı仯£ºÔÚ¹â±êÖ®ºóµÄ·¶Î§ÄÚ£¬ÄãÒѾ­½«¡°changed¡±Õâ¸ö´Ê¡ª¡ª²» -ÂÛËüÔÚÄÄÀï³öÏÖ¡ª¡ªÈ«²¿Óá°altered¡±Ìæ»»µôÁË¡£ - - -* ×Ô¶¯±£´æ£¨AUTO SAVE£© ------------------------ - -Èç¹ûÄãÒѾ­ÐÞ¸ÄÁËÒ»¸öÎļþ£¬µ«ÊÇ»¹Ã»À´µÃ¼°´æÅÌÄãµÄ¼ÆËã»ú¾Í°Õ¹¤ÁË£¬ÄÇôÄã -Ëù×öµÄÐ޸ľͺܿÉÄܻᶪʧ¡£ÎªÁ˱ÜÃâÕâÑùµÄ²»ÐÒ·¢Éú£¬Emacs »á¶¨ÆÚ½«ÕýÔÚ±à -¼­µÄÎļþдÈëÒ»¸ö¡°×Ô¶¯±£´æ¡±ÎļþÖС£×Ô¶¯±£´æÎļþµÄÎļþÃûµÄͷβ¸÷ÓÐÒ»¸ö -¡°#¡±×Ö·û£¬±ÈÈçÄãÕýÔڱ༭µÄÎļþ½Ð¡°hello.c¡±£¬ÄÇôËüµÄ×Ô¶¯±£´æÎļþ¾Í½Ð -¡°#hello.c#¡±¡£Õâ¸öÎļþ»áÔÚÕý³£´æÅÌÖ®ºó±» Emacs ɾ³ý¡£ - -ËùÒÔ£¬¼ÙÈç²»ÐÒÕæµÄ·¢ÉúÁË£¬Äã´ó¿ÉÒÔ´ÓÈݵشò¿ªÔ­À´µÄÎļþ£¨×¢Òâ²»ÊÇ×Ô¶¯±£ -´æÎļþ£©È»ºóÊäÈë M-x recover file À´»Ö¸´ÄãµÄ×Ô¶¯±£´æÎļþ¡£ÔÚÌá -ʾȷÈϵÄʱºò£¬ÊäÈë yes¡£ - - -* »ØÏÔÇø£¨ECHO AREA£© ---------------------- - -Èç¹û Emacs ·¢ÏÖÄãÊäÈë¶à×Ö·ûÃüÁîµÄ½Ú×àºÜÂý£¬Ëü»áÔÚ´°¸ñµÄÏ·½³ÆΪ¡°»ØÏÔÇø¡± -µÄµØ·½¸øÄãÌáʾ¡£»ØÏÔÇøλÓÚÆÁÄ»µÄ×îÏÂÃæÒ»ÐС£ - - -* ״̬À¸£¨MODE LINE£© ---------------------- - -λÓÚ»ØÏÔÇøÕýÉÏ·½µÄÒ»Ðб»³ÆΪ¡°×´Ì¬À¸¡±¡£×´Ì¬À¸ÉÏ»áÏÔʾһЩÐÅÏ¢£¬±ÈÈ磺 - ---:** TUTORIAL.cn (Fundamental)--L670--54%---------------- - -״̬À¸ÏÔʾÁË Emacs µÄ״̬ºÍÄãÕýÔڱ༭µÄÎÄ×ÖµÄһЩÐÅÏ¢¡£ - -ÄãÓ¦¸ÃÖªµÀÎļþÃûµÄÒâ˼°É£¿¾ÍÊÇÄãÕÒµ½µÄÄǸöÎļþÂï¡£-NN%-- ÏÔʾµÄÊǹâ±êÔÚ -È«ÎÄÖеÄλÖá£Èç¹ûλÓÚÎļþµÄ¿ªÍ·£¬ÄÇô¾ÍÏÔʾ --Top-- ¶ø²»ÊÇ --00%--£»Èç -¹ûλÓÚÎļþµÄĩ⣬¾ÍÏÔʾ --Bot--¡£Èç¹ûÎļþºÜС£¬Ò»ÆÁ¾Í×ãÒÔÏÔʾȫ²¿ÄÚÈÝ£¬ -ÄÇô״̬À¸»áÏÔʾ --All--¡£ - -¡°L¡± ºÍÆäºóµÄÊý×Ö¸ø³öÁ˹â±êËùÔÚÐеÄÐкš£ - -×ͷµÄÐǺţ¨*£©±íʾÄãÒѾ­¶ÔÎÄ×Ö×ö¹ý¸Ä¶¯¡£¸Õ¸Õ´ò¿ªµÄÎļþ¿Ï¶¨Ã»Óб»¸Ä¶¯ -¹ý£¬ËùÒÔ״̬À¸ÉÏÏÔʾµÄ²»ÊÇÐǺŶøÊǶÌÏߣ¨-£©¡£ - -״̬À¸ÉÏСÀ¨ºÅÀïµÄÄÚÈݸæËßÄ㵱ǰÕýÔÚʹÓõı༭ģʽ¡£È±Ê¡µÄģʽÊÇ -Fundamental£¬¾ÍÊÇÄãÏÖÔÚÕýÔÚʹÓõÄÕâ¸ö¡£ËüÊÇÒ»ÖÖ¡°Ö÷ģʽ¡±¡£ - -Emacs µÄÖ÷ģʽÁÖÁÖ×Ü×Ü¡£ÓÐÓÃÀ´±à¼­³ÌÐò´úÂëµÄ¡ª¡ª±ÈÈç Lisp ģʽ£»Ò²ÓÐÓà -À´±à¼­¸÷ÖÖ×ÔÈ»ÓïÑÔÎı¾µÄ¡ª¡ª±ÈÈç Text ģʽ¡£ÈκÎÇé¿öÏÂÖ»ÄÜÓ¦ÓÃÒ»¸öÖ÷Ä£ -ʽ£¬ÆäÃû³Æ»áÏÔʾÔÚ״̬À¸ÉÏ£¬Ò²¾ÍÊÇÏÖÔÚÏÔʾ¡°Fundamental¡±µÄµØ·½¡£ - -Ö÷ģʽͨ³£»á¸Ä±äһЩÃüÁîµÄÐÐΪ¡£±È·½Ëµ£¬²»¹Ü±à¼­Ê²Ã´ÓïÑԵijÌÐò´úÂ룬Äã -¶¼¿ÉÒÔÓÃÒ»¸öÏàͬµÄÃüÁîÀ´Ìí¼Ó×¢ÊÍ¡£µ«ÊÇÔÚ²»Í¬µÄÓïÑÔÖÐ×¢Ê͵ÄÓï·¨ÍùÍùÊDz» -ͬµÄ£¬Õâʱ²»Í¬µÄÖ÷ģʽ¾Í»áÓø÷×Ô²»Í¬µÄÓï·¨¹æÔòÀ´Ìí¼Ó×¢ÊÍ¡£Ö÷ģʽ¶¼ÊÇ¿É -ÒÔÓà M-x Æô¶¯µÄÀ©Õ¹ÃüÁM-x fundamental-mode ¾Í¿ÉÒÔÇл»µ½ Fundamental -ģʽ¡£ - -±à¼­×ÔÈ»ÓïÑÔÎı¾¡ª¡ª±ÈÈçÏÖÔÚ¡ª¡ªÓ¦¸ÃÓà Text ģʽ¡£ - ->> ÊäÈë M-x text mode¡£ - -±ðµ£ÐÄ£¬Ê²Ã´¶¼Ã»±ä¡£²»¹ýϸÐÄһЩ¿ÉÒÔ·¢ÏÖ£¬M-f ºÍ M-b ÏÖÔڰѵ¥ÒýºÅ£¨'£© -ÊÓΪ´ÊµÄÒ»²¿·ÖÁË¡£¶øÔÚÏÈÇ°µÄ Fundamental ģʽÖУ¬M-f ºÍ M-b ¶¼½«µ¥ÒýºÅ -ÊÓΪ·Ö¸ôµ¥´ÊµÄ·ûºÅ¡£ - -Ö÷ģʽͨ³£¶¼»á¸ãһЩÀàËƵÄС¶¯×÷£¬ÒòΪºÜ¶àÃüÁîÆäʵÍê³ÉµÄÊÇ¡°ÏàͬµÄ¹¤ -×÷¡±£¬Ö»ÊÇÔÚ²»Í¬»·¾³Ï»áÓв»Í¬µÄ¹¤×÷·½Ê½¶øÒÑ¡£¡¾Ëùν¡°Çóͬ´æÒ족£¬ÔÚ -Emacs ÀïµÃµ½Á˺ܺõÄÌåÏÖ¡¿ - -Óà C-h m ¿ÉÒԲ鿴µ±Ç°Ö÷ģʽµÄÎĵµ¡£ - ->> Óà C-u C-v ½«±¾Ðдøµ½ÆÁÄ»µÄ×îÉÏ·½¡£ ->> ÊäÈë C-h m£¬¿´¿´ Text ģʽÓë Fundamental ģʽÓÐÄÄЩ²»Í¬¡£ ->> ÊäÈë C-x 1 ¹ØµôÎĵµ´°¸ñ¡£ - -Ö÷ģʽ֮ËùÒÔ³Æ֮Ϊ¡°Ö÷£¨major£©¡±Ä£Ê½£¬ÊÇÒòΪͬʱ»¹ÓС°¸¨Ä£Ê½¡±£¨minor -mode£©´æÔÚ¡£¸¨Ä£Ê½²¢²»ÄÜÌæ´úÖ÷ģʽ£¬¶øÊÇÌṩһЩ¸¨ÖúµÄ¹¦ÄÜ¡£Ã¿¸ö¸¨Ä£Ê½ -¶¼¿ÉÒÔ¶ÀÁ¢µØ¿ªÆôºÍ¹Ø±Õ£¬¸úÆäËü¸¨Ä£Ê½Î޹أ¬¸úÖ÷ģʽҲÎ޹ء£ËùÒÔÄã¿ÉÒÔ²» -ʹÓø¨Ä£Ê½£¬Ò²¿ÉÒÔֻʹÓÃÒ»¸ö»òͬʱʹÓöà¸ö¸¨Ä£Ê½¡£ - -ÓÐÒ»¸ö½Ð×ö×Ô¶¯ÕÛÐУ¨Auto Fill£©µÄ¸¨Ä£Ê½ºÜÓÐÓã¬ÌرðÊÇÔڱ༭×ÔÈ»ÓïÑÔÎı¾ -µÄʱºò¡£ÆôÓÃ×Ô¶¯ÕÛÐкó£¬Emacs »áÔÚÄã´ò×Ö³¬³öÒ»Ðб߽çʱ×Ô¶¯ÌæÄã»»ÐС£ - -Óà M-x auto fill mode Æô¶¯×Ô¶¯ÕÛÐÐģʽ¡£ÔÙÓÃÒ»´ÎÕâÌõÃüÁ×Ô¶¯ -ÕÛÐÐģʽ»á±»¹Ø±Õ¡£Ò²¾ÍÊÇ˵£¬Èç¹û×Ô¶¯ÕÛÐÐģʽûÓб»¿ªÆô£¬Õâ¸öÃüÁî»á¿ªÆô -Ëü£»Èç¹ûÒѾ­¿ªÆôÁË£¬Õâ¸öÃüÁî»á¹Ø±ÕËü¡£ËùÒÔÎÒÃÇ˵£¬Õâ¸öÃüÁî¿ÉÒÔÓÃÀ´¡°¿ª -¹Ø£¨toggle£©¡±Ä£Ê½¡£ - ->> ÏÖÔÚÊäÈë M-x auto fill mode¡£È»ºóËæ±ãÇõãʲô£¬Ö±µ½Äã¿´µ½Ëü - ·Ö³ÉÁ½ÐС£Äã±ØÐëÇÃһЩ¿Õ¸ñ£¬ÒòΪ Auto Fill Ö»ÔÚ¿Õ°×´¦½øÐжÏÐС£ - ¡¾ÊäÈë¿Õ¸ñ¶ÔÓ¢ÎÄÀ´ËµÊDZØÐëµÄ£¬¶ø¶ÔÖÐÎÄÔò²»±Ø¡£¡¿ - -Ðб߽çͨ³£±»É趨Ϊ 70 ¸ö×Ö·û¡¾ÕâÀïÖ¸Ó¢ÎÄ×Ö·û¡¿£¬Äã¿ÉÒÔÓà C-x f ÃüÁîÅäºÏ -Êý×Ö²ÎÊýÀ´ÖØÐÂÉ趨Ëü¡£ - ->> ÊäÈë C-x f ²¢´«µÝ²ÎÊý 20£º C-u 2 0 C-x f¡£ - È»ºóÊäÈëһЩÎÄ×Ö£¬¹Û²ì Emacs µÄ×Ô¶¯ÕÛÐж¯×÷ - ×îºóÔÙÓà C-x f ½«±ß½çÉè»Ø 70¡£ - -Èç¹ûÄãÔÚ¶ÎÂäµÄÖмä×öÁËһЩÐ޸ģ¬ÄÇô×Ô¶¯ÕÛÐÐģʽ²»»áÌæÄã°ÑÕû¸ö¶ÎÂäÖØР-ÕÛÐУ¬ÄãÐèÒªÓà M-q ÊÖ¶¯ÕÛÐС£×¢Ò⣬¹â±ê±ØÐëλÓÚÄãÐèÒªÕÛÐеÄÄÇÒ»¶ÎÀï¡£ - ->> Òƶ¯¹â±êµ½Ç°Ò»¶ÎÖУ¬È»ºóÊäÈë M-q¡£ - - -* ËÑË÷£¨SEARCHING£© -------------------- - -Emacs ¿ÉÒÔÏòÇ°»òÏòºóËÑË÷×Ö·û´®¡£ËÑË÷ÃüÁîÊÇÒ»¸öÒƶ¯¹â±êµÄÃüÁËÑË÷³É¹¦ -ºó£¬¹â±ê»áÍ£ÁôÔÚËÑË÷Ä¿±ê³öÏֵĵط½¡£ - -Emacs µÄËÑË÷ÃüÁîµÄ¶ÀÌØÖ®´¦ÔÚÓÚ£¬ËüÊÇ¡°½¥½øµÄ£¨incremental£©¡±¡£Òâ˼ÊÇËÑ -Ë÷ÓëÊäÈëͬʱ½øÐУºÄãÔÚ¼üÅÌÉÏÒ»×ÖÒ»¾äµØÊäÈëËÑË÷´ÊµÄ¹ý³ÌÖУ¬Emacs ¾ÍÒѾ­ -¿ªÊ¼ÌæÄãËÑË÷ÁË¡£ - -C-s ÊÇÏòÇ°ËÑË÷£¬C-r ÊÇÏòºóËÑË÷¡£²»¹ýÊÖ±ðÕâô¿ì£¡±ð׿±ÊÔ¡£ - -ÔÚ°´Ï C-s Ö®ºó£¬»ØÏÔÇøÀï»áÓС°I-search¡±×ÖÑù³öÏÖ£¬±íÃ÷Ä¿Ç° Emacs Õý´¦ -ÓÚ¡°½¥½øËÑË÷¡±×´Ì¬£¬²¢µÈ´ýÄãÊäÈëËÑË÷×Ö´®¡£°´ ¿ÉÒÔ½áÊøËÑË÷¡£ - ->> ÊäÈë C-s ¿ªÊ¼Ò»¸öËÑË÷¡£×¢ÒâÇÃÂýÒ»µã£¬Ò»´ÎÊäÈëÒ»¸ö×Ö·û¡£ - ÂýÂýÊäÈë¡°cursor¡±Õâ¸ö´Ê£¬Ã¿ÇÃÒ»¸ö×Ö¶¼Í£¶Ùһϲ¢¹Û²ì¹â±ê¡£ - ÏÖÔÚÄãÓ¦¸ÃÒÑÔø¾­ÕÒµ½¡°cursor¡±Õâ¸ö´ÊÁË¡£ ->> ÔÙ°´Ò»´Î C-s£¬ËÑË÷ÏÂÒ»¸ö¡°cursor¡±³öÏÖµÄλÖᣠ->> ÏÖÔÚ°´ËÄ´ÎÍ˸ñ¼ü£¬¿´¿´¹â±êÊÇÈçºÎÒƶ¯µÄ¡£ ->> Çà ½áÊøËÑË÷¡£ - -¿´×ÐϸÁËô£¿ÔÚÒ»´Î½¥½øʽËÑË÷ÖУ¬Emacs »á³¢ÊÔÌøµ½ËÑË÷Ä¿±ê³öÏÖµÄλÖá£Òª -Ìøµ½ÏÂÒ»¸öÃüÖÐλÖ㬾ÍÔÙ°´Ò»´Î C-s¡£Èç¹ûÕÒ²»µ½Ä¿±ê£¬Emacs »á·¢³ö¡°ßÙ¡± -µÄÒ»Éù£¬¸æËßÄãËÑË÷ʧ°Ü¡£ÔÚÕû¸ö¹ý³ÌÖУ¬¶¼¿ÉÒÔÓà C-g À´ÖÕÖ¹ËÑË÷¡£¡¾Äã»á·¢ -ÏÖ C-g »áÈùâ±ê»Øµ½ËÑË÷¿ªÊ¼µÄλÖ㬶ø ÔòÈùâ±êÁôÔÚËÑË÷½á¹ûÉÏ£¬ -ÕâÊǺÜÓÐÓõŦÄÜ¡£¡¿ - -×¢Ò⣺ÔÚijЩÖÕ¶ËÏ£¬ÊäÈë C-x C-s »á¶³½áÆÁÄ»¡¾ÆÁĻûÓÐÈκÎÊä³ö¡¿£¬Ê¹Äã¿´ -²»µ½ Emacs µÄÈκα仯¡£ÆäÔ­ÒòÊDzÙ×÷ϵͳµÄ¡°Á÷Á¿¿ØÖÆ¡±¹¦ÄÜÀ¹½ØÁË C-s ²¢ -¶³½áÁËÆÁÄ»¡£Óà C-q ¿ÉÒÔ½â³ýÆÁÄ»¶³½á¡£Òª½â¾öÕâ¸öÎÊÌ⣬Çë²Î¿¼ Emacs ÊÖ²á -ÀïµÄ¡°Spontaneous Entry to Incremental Search¡±Ò»½Ú¡¾Emacs ÊÖ²á¿ÉÄÜ»¹Ã» -ÓÐÖÐÎÄ·­Òë¡¿£¬ÄÇÀïÌṩÁËһЩÓÐÓõĽ¨Òé¡£ - -ÔÚ½¥½øʽËÑË÷ÖУ¬°´Í˸ñ¼ü»áɾ³ýÄ¿±ê×Ö·û´®µÄ×îºóÒ»¸ö×Ö·û£¬²¢ÇÒ¹â±ê»á»Øµ½ -×î½üÒ»´ÎËÑË÷µÄÃüÖÐλÖᣱÈÈçÄãÒѾ­ÊäÈëÁË¡°c¡±£¬¹â±ê¾ÍÍ£ÔÚ¡°c¡±µÚÒ»´Î³ö -ÏÖµÄλÖã¬ÔÙÊäÈë¡°u¡±£¬¹â±êÍ£ÔÚ¡°cu¡±µÚÒ»´Î³öÏÖµÄλÖã¬ÕâʱÔÙ°´Í˸ñ¼ü£¬ -¡°u¡±¾Í´ÓËÑË÷×Ö´®ÖÐÏûʧÁË£¬È»ºó¹â±ê»á»Øµ½¡°c¡±µÚÒ»´Î³öÏÖµÄλÖᣠ- -ÁíÍ⣬Èç¹ûÄãÔÚËÑË÷µÄʱºòÊäÈëÁË CONTROL »òÕß META ×éºÏ¼üµÄ»°£¬ËÑË÷¿ÉÄÜ»á -½áÊø¡££¨Ò²ÓÐÀýÍ⣬±ÈÈç C-s ºÍ M-r ÕâЩÓÃÓÚËÑË÷µÄÃüÁî¡££© - -Ç°Ãæ˵µÄ¶¼ÊÇ¡°ÏòÏ¡±ËÑË÷£¬Èç¹ûÏë¡°ÏòÉÏ¡±ËÑË÷£¬¿ÉÒÔÓà C-r¡£C-r Óë C-s -Ïà±È³ýÁËËÑË÷·½ÏòÏà·´Ö®Í⣬ÆäÓàµÄ²Ù×÷¶¼Ò»Ñù¡£ - - -* ¶à´°¸ñ£¨MULTIPLE WINDOWS£© ----------------------------- - -Emacs µÄÃÔÈËÖ®´¦ºÜ¶à£¬Äܹ»ÔÚÆÁÄ»ÉÏͬʱÏÔʾ¶à¸ö´°¸ñ¾ÍÊÇÆäÖÐÖ®Ò»¡£ - ->> Òƶ¯¹â±êµ½ÕâÒ»ÐУ¬È»ºóÊäÈë C-u 0 C-l¡£ - ->> ÏÖÔÚÊäÈë C-x 2£¬Ëü»á½«ÆÁÄ»»®·Ö³ÉÁ½¸ö´°¸ñ¡£ - ÕâÁ½¸ö´°¸ñÀïÏÔʾµÄ¶¼ÊDZ¾Æª¿ìËÙÖ¸ÄÏ£¬¶ø¹â±êÔòÍ£ÁôÔÚÉÏ·½µÄ´°¸ñÀï¡£ - ->> ÊÔÊÔÓà C-M-v ¹ö¶¯Ï·½µÄ´°¸ñ¡£ - £¨Èç¹ûÄ㲢ûÓÐ META ¼ü£¬Óà ESC C-v Ò²¿ÉÒÔ¡££© - ¡¾ÏòÉϹö¶¯ÊÇ C-M-S-v£¬Ò²¾ÍÊÇͬʱ°´×¡ CONTROL¡¢META ºÍ SHIFT ÔÙ°´ v¡¿ - ->> ÊäÈë C-x o£¨¡°o¡±Ö¸µÄÊÇ¡°ÆäËü£¨other£©¡±£©£¬ - ½«¹â±êתÒƵ½Ï·½µÄ´°¸ñ¡£ - ->> ÔÚÏ·½µÄ´°¸ñÖУ¬Óà C-v ºÍ M-v À´¹ö¶¯¡£ - ͬʱ¼ÌÐøÔÚÉÏ·½µÄ´°¸ñÀïÔĶÁÕâЩָµ¼¡£ - ->> ÔÙÊäÈë C-x o ½«¹â±êÒƻص½ÉÏ·½µÄ´°¸ñÀï¡£ - ¹â±ê»á»Øµ½ËüÔÚÉÏ·½´°¸ñÖÐÔ­±¾ËùÔÚµÄλÖᣠ- -Á¬ÐøʹÓà C-x o ¿ÉÒÔ±éÀúËùÓд°¸ñ¡£Ã¿Ò»¸ö´°¸ñ¶¼ÓÐËü×Ô¼ºµÄ¹â±êλÖ㬵«ÊÇÖ» -ÓÐÒ»¸ö´°¸ñ»áÕæÕýÏÔʾÕâ¸ö¹â±ê¡£¡¾ÆäËü´°¸ñÔÚ¿ØÖÆ̨ϲ»»áÏÔʾ¹â±ê£¬ÔÚͼÐÎ -´°¿ÚÏÂȱʡÏÔʾΪïοչâ±ê¡£¡¿Ò»°ãËùÓеı༭ÃüÁ×÷ÓÃÓÚÕâ¸ö¹â±êËùÔڵĴ° -¸ñ£¬ÎÒÃdzÆÕâ¸ö´°¸ñΪ¡°±»Ñ¡ÖеĴ°¸ñ¡±¡£ - -µ±ÄãÔÚÒ»¸ö´°¸ñÖб༭£¬µ«ÓÃÁíÒ»¸ö´°¸ñ×÷Ϊ²Î¿¼µÄʱºò£¬C-M-v ÊǺÜÓÐÓõÄÃü -Áî¡£Äã¿ÉÒÔʼÖÕ´¦Óڱ༭´°¸ñÖУ¬È»ºóÓà C-M-v ÃüÁî¹ö¶¯ÁíÍâÒ»¸ö´°¸ñ¡£¡¾±ÈÈç -·­ÒëºÍУ¶Ô¾ÍºÜÊʺÏÓÃÕâÖÖ·½Ê½½øÐС£¡¿ - -C-M-v ÊÇÒ»¸ö CONTROL-META ×éºÏ¼ü¡£Èç¹ûÄãÓÐ META ¼üµÄ»°£¬¿ÉÒÔͬʱ°´×¡ -CONTROL ºÍ META ¼ü²¢ÊäÈë v¡£CONTROL ºÍ META ¼üÏÈ°´Äĸö¶¼¿ÉÒÔ£¬ÒòΪËüÃÇ -Ö»ÊÇÓÃÀ´¡°ÐÞÊΣ¨modify£©¡±ÄãÊäÈëµÄ×Ö·ûµÄ¡£ - -Èç¹ûÄ㲢ûÓÐ META ¼ü£¬ÄãÒ²¿ÉÒÔÓà ESC À´´úÌ棬²»¹ýÕâÑùµÄ»°¾ÍҪעÒâ°´¼ü˳ -ÐòÁË£ºÄã±ØÐëÏÈÊäÈë ESC £¬È»ºóÔÙÊäÈë CONTROL-v¡£CONTROL-ESC v ÊÇûÓõģ¬ -ÒòΪ ESC ±¾ÉíÊÇÒ»¸ö×Ö·û¼ü£¬¶ø²»ÊÇÒ»¸öÐÞÊμü£¨modifier key£©¡£ - ->> £¨ÔÚÉÏ·½´°¸ñÀÊäÈë C-x 1 ¹ØµôÏ·½´°¸ñ¡£ - -£¨Èç¹ûÄãÔÚÏ·½µÄ´°¸ñÀïÊäÈë C-x 1£¬ÄÇô¾Í»á¹ØµôÉÏ·½µÄ´°¸ñ¡£Äã¿ÉÒÔ°ÑÕâ¸ö -ÃüÁî¿´³ÉÊÇ¡°Ö»±£ÁôÒ»¸ö´°¸ñ¡±¡ª¡ª¾ÍÊÇÎÒÃÇÕýÔڱ༭µÄÕâ¸ö¡££© - -²»Í¬µÄ´°¸ñ¿ÉÒÔÏÔʾ²»Í¬µÄ»º³åÇø¡£Èç¹ûÄãÔÚÒ»¸ö´°¸ñÀïÓà C-x C-f ´ò¿ªÁËÒ»¸ö -Îļþ£¬ÁíÒ»¸ö´°¸ñ²¢²»»á·¢Éúʲô±ä»¯¡£ÈκÎÒ»¸ö´°¸ñÀﶼ¿ÉÒÔÓÃÀ´´ò¿ªÎļþ¡£ - -ÓÃÏÂÃæµÄ·½·¨¿ÉÒÔÔÚÒ»¸öпª´°¸ñÀï´ò¿ªÎļþ£º - ->> ÊäÈë C-x 4 C-f£¬½ô¸ú×ÅÊäÈëÒ»¸öÎļþÃû£¬ÔÙÓà ½áÊø¡£ - ¿ÉÒÔ¿´µ½ÄãÖ¸¶¨µÄÎļþ³öÏÖÔÚÏ·½µÄ´°¸ñÖУ¬Í¬Ê±¹â±êÒ²Ìøµ½ÁËÄÇÀï¡£ - ->> ÊäÈë C-x o »Øµ½ÉÏ·½µÄ´°¸ñ£¬È»ºóÔÙÓà C-x 1 ¹ØµôÏ·½´°¸ñ¡£ - - -* µÝ¹é±à¼­£¨RECURSIVE EDITING LEVELS£© --------------------------------------- - -ÓÐʱºòÄã»á½øÈëËùνµÄ¡°µÝ¹é±à¼­¡±¡£µÝ¹é±à¼­×´Ì¬ÓÉλÓÚ״̬À¸µÄ·½À¨ºÅËùÖ¸ -ʾ£¬ÆäÖаüº¬ÁËÓÃСÀ¨ºÅÀ´Ö¸Ã÷µÄģʽÃû³Æ¡£±ÈÈç˵£¬ÄãÓÐʱ¿ÉÄܻῴµ½ -[(Fundamental)]£¬¶ø²»ÊÇ (Fundamental)¡£¡¾±ÈÈçÔÚÓà M-% ½øÐн»»¥Ê½Ìæ»»µÄ -ʱºòÄãÓÖÓÃÁË C-s ½øÐÐËÑË÷£¬ÕâʱÌ滻ģʽ²¢Ã»ÓнáÊø£¬µ«ÄãÓÖ½øÈëÁËËÑË÷ģʽ£¬ -Õâ¾ÍÊÇËùνµÄµÝ¹é±à¼­¡£¡¿ - -À뿪µÝ¹é±à¼­¿ÉÒÔÓà ESC ESC ESC¡£ÕâÊÇÒ»¸ö×îͨÓõġ°À뿪¡±ÃüÁÄãÉõÖÁ¿É -ÒÔʹÓÃËüÀ´¹Øµô¶àÓàµÄ´°¸ñ£¬»òÕßÀ뿪С»º³å¡£ - ->> ÊäÈë M-x ½øÈëС»º³å£»È»ºóÊäÈë ESC ESC ESC À뿪¡£ - -Äã²»ÄÜÓà C-g Í˳öµÝ¹é±à¼­£¬ÒòΪ C-g µÄ×÷ÓÃÊÇÈ¡Ïû¡°±¾²ãµÝ¹é±à¼­Ö®ÄÚ¡±µÄ -ÃüÁîºÍÆä²ÎÊý£¨arguments£©¡£ - - -* »ñµÃ¸ü¶à°ïÖú£¨GETTING MORE HELP£© ------------------------------------ - -±¾¿ìËÙÖ¸ÄϵÄÄ¿µÄ½ö½öÊÇ°ïÖúÄãÔÚ Emacs µÄº£ÑóÀïÏÂË®£¬²»ÖÁÓÚÊøÊÖÎÞ²ßÍûÑóÐË -̾¡£ÓÐ¹Ø Emacs µÄ»°Ìâ¿Éνº¹Å£³ä¶°£¬ÕâÀï×ÔÈ»ÊÇÄѾ¡ÍòÒ»¡£²»¹ý Emacs ºÜÀí -½âÄãÇóÖªÈô¿ÊµÄÐÄÇ飬ÒòΪËüÌṩµÄÇ¿´ó¹¦ÄÜʵÔÚÊÇÌ«¶àÁË¡£Îª´Ë£¬Emacs Ìṩ -ÁËһЩÃüÁîÀ´²é¿´ Emacs µÄÃüÁîÎĵµ£¬ÕâЩÃüÁÒÔ CONTROL-h ¿ªÍ·£¬Õâ¸ö×Ö -·ûÒ²Òò´Ë±»³ÆΪ¡°°ïÖú£¨Help£©×Ö·û¡±¡£ - -ҪʹÓðïÖú£¨Help£©¹¦ÄÜ£¬ÇëÏÈÊäÈë C-h£¬È»ºóÔÙÊäÈëÒ»¸ö×Ö·ûÒÔ˵Ã÷ÄãÐèҪʲ -ô°ïÖú¡£Èç¹ûÄãÁ¬×Ô¼ºµ½µ×ÐèҪʲô°ïÖú¶¼²»ÖªµÀ£¬ÄÇô¾ÍÊäÈë C-h ?£¬Emacs -»á¸æËßÄãËüÄÜÌṩÁËÄÄЩ°ïÖú¡£Èç¹ûÄã°´ÁË C-h ÓÖÏë·´»Ú£¬¿ÉÒÔÓà C-g È¡Ïû¡£ - -£¨ÓÐЩÖ÷»ú¸Ä±äÁË C-h µÄÒâÒ壬ÕâÖÖÒÔ¼º¶ÈÈËÍâ¼ÓÒ»µ¶ÇеÄ×ö·¨È·Êµ²»Ì«ºÃ£¬²» -¹ýµ¹ÊÇÈÃÄã¿ÉÒÔÒåÕý´ÇÑϵر§Ô¹ËûÃǵÄϵͳ¹ÜÀíÔ±¡£»°Ëµ»ØÀ´£¬Èç¹ûÄã°´ C-h Ö® -ºóûÓÐÈκΰïÖúÐÅÏ¢ÏÔʾ³öÀ´£¬ÄÇôÊÔÊÔ F1 ¼ü»òÕß M-x help ¡££© - -×î»ù±¾µÄ°ïÖú¹¦ÄÜÊÇ C-h c¡£ÊäÈë C-h c Ö®ºóÔÙÊäÈëÒ»¸ö×éºÏ¼ü£¬Emacs »á¸ø³ö -Õâ¸öÃüÁîµÄ¼òҪ˵Ã÷¡£ - ->> ÊäÈë C-h c C-p¡£ - -ÏÔʾµÄÏûÏ¢Ó¦¸Ã»áÊÇÕâÑù£º - - C-p runs the command previous-line - -ÕâÌõÏûÏ¢ÏÔʾÁË C-p ÃüÁî¶ÔÓ¦µÄº¯ÊýÃû£¬º¯ÊýÃûÖ÷ÒªÓÃÀ´¶¨ÖƺÍÀ©Õ¹ Emacs¡£Ãü -ÁîµÄ¹¦ÄÜÓɺ¯ÊýÍê³É£¬ËùÒÔº¯ÊýÃû±¾ÉíÒ²¿ÉÒÔ±»¿´³ÉÊÇ×î¼òµ¥µÄÎĵµ¡ª¡ªÖÁÉÙ¶Ô -ÓÚÄãÒѾ­Ñ§¹ýµÄÃüÁîÀ´Ëµ£¬ËüÃǵĺ¯ÊýÃû×ãÒÔ½âÊÍËüÃǵŦÄÜÁË¡£ - -¶à×Ö·ûÃüÁîÒ»Ñù¿ÉÒÔÓà C-h c À´²é¿´¡£ - -ÏëµÃµ½¸ü¶àµÄÐÅÏ¢£¬Çë°Ñ C-h c »»³É C-h k ÊÔÊÔ¿´¡£ - ->> ÊäÈë C-h k C-p¡£ - -ÉÏÃæµÄÃüÁî»áдò¿ªÒ»¸ö Emacs ´°¸ñÒÔÏÔʾº¯ÊýµÄÃû³Æ¼°ÆäÎĵµ¡£Äã¶ÁÍêÖ®ºó¿É -ÒÔÓà C-x 1 ¹ØµôÕâ¸ö°ïÖú´°¸ñ¡£µ±È»Äã²¢²»ÐèÒªÁ¢¼´ÕâÑù×ö£¬ÄãÍêÈ«¿ÉÒÔÏÈÔÚ±à -¼­´°¸ñÀï×öµã±ðµÄÊÂÇ飬ȻºóÔٹصô°ïÖú´°¸ñ¡£ - -»¹ÓÐһЩÆäËüÓÐÓÃµÄ C-h ÃüÁ - - C-h f ½âÊÍÒ»¸öº¯Êý¡£ÐèÒªÊäÈ뺯ÊýÃû¡£ - ->> ÊÔÊÔ¿´£¬ÊäÈë C-h f previous-line¡£ - Emacs »á¸ø³öËüËùÖªµÀµÄËùÓÐÓйء°ÊµÏÖ C-p ÃüÁÄܵĺ¯Êý¡±µÄÐÅÏ¢¡£ - -C-h v ÓÃÀ´ÏÔʾ Emacs ±äÁ¿µÄÎĵµ¡£Emacs ±äÁ¿¿ÉÒÔ±»ÓÃÀ´¡°¶¨ÖÆ Emacs µÄÐÐ -Ϊ¡±¡£Í¬Ñù£¬ÄãÐèÒªÊäÈë±äÁ¿µÄÃû³Æ¡£ - - C-h a Ïà¹ØÃüÁîËÑË÷£¨Command Apropos£©¡£ - ÊäÈëÒ»¸ö¹Ø¼ü´ÊÈ»ºó Emacs »áÁгöËùÓÐÃüÁîÃûÖаüº¬´Ë¹Ø¼ü´Ê - µÄÃüÁî¡£ÕâЩÃüÁîÈ«¶¼¿ÉÒÔÓà M-x À´Æô¶¯¡£¶ÔÓÚijЩÃüÁîÀ´Ëµ£¬ - Ïà¹ØÃüÁîËÑË÷»¹»áÁгöÒ»Á½¸ö×éºÏ¼ü¡£ - ->> ÊäÈë C-h a file¡£ - -Emacs »áÔÚÁíÒ»¸ö´°¸ñÀïÏÔʾһ¸ö M-x ÃüÁîÁÐ±í£¬Õâ¸öÁбí°üº¬ÁËËùÓÐÃû³ÆÖк¬ -ÓС°file¡±µÄÃüÁî¡£Äã¿ÉÒÔ¿´µ½Ïñ¡°C-x C-f¡±ÕâÑùµÄ×éºÏ¼üÏÔʾÔÚ¡°find-file¡± -ÕâÑùµÄÃüÁîÃûµÄÅԱߡ£ - ->> Óà C-M-v À´»Ø¹ö¶¯ help ´°¸ñ£¬¶àÊÔ¼¸´Î¡£ - ->> ÊäÈë C-x 1 À´É¾³ý help ´°¸ñ¡£ - - C-h i ÔĶÁÁª»úÊֲᣨҲ¾ÍÊÇͨ³£½²µÄ Info£©¡£ - Õâ¸öÃüÁî»á´ò¿ªÒ»¸ö³ÆΪ¡°*info*¡±µÄÌØÊ⻺³åÇø£¬ÔÚÄÇÀ - Äã¿ÉÒÔÔĶÁ°²×°ÔÚϵͳÀïµÄÈí¼þ°üʹÓÃÊֲᡣҪ¶Á Emacs µÄʹ - ÓÃÊֲᣬ°´ m emacs ¾Í¿ÉÒÔÁË¡£Èç¹ûÄã֮ǰ´ÓûÓà - ¹ý Info ϵͳ£¬ÄÇôÇë°´¡°?¡±£¬Emacs »á´øÄã½øÈë Info µÄʹ - ÓÃÖ¸ÄÏ¡£ÔÚ¿´Íê±¾¿ìËÙÖ¸ÄÏÖ®ºó£¬Emacs Info »á³ÉΪÄãµÄÖ÷Òª - ²Î¿¼Îĵµ¡£ - - -* ¸ü¶à¾«²Ê£¨MORE FEATURES£© ---------------------------- - -Ïëѧϰ¸ü¶àµÄʹÓü¼ÇÉ£¬Emacs ʹÓÃÊֲᣨmanual£©ÖµµÃÒ»¶Á¡£Äã¿ÉÒÔ¶ÁÖ½°æµÄ -Ê飬Ҳ¿ÉÒÔ¿´µç×Ó°æµÄÁª»úÊֲᣨ¿ÉÒÔ´Ó Help ²Ëµ¥½øÈë»òÕß°´ F10 h r£©¡£Ìá -Á½¸öÄã¿ÉÄÜ»áºÜ¸ÐÐËȤµÄ¹¦ÄÜ°É£¬Ò»¸öÊÇ¿ÉÒÔ°ïÄãÉÙÇüüÅÌµÄ completion£¨×Ô¶¯ -²¹È«£©£¬ÁíÒ»¸öÊÇ·½±ãÎļþ´¦ÀíµÄ dired£¨Ä¿Â¼±à¼­£©¡£ - -Completion ¿ÉÒÔÌæÄã½ÚÊ¡²»±ØÒªµÄ¼üÅÌÊäÈë¡£±ÈÈç˵ÄãÏëÇл»µ½ *Message* »º -³åÇø£¬Äã¾Í¿ÉÒÔÓà C-x b *M À´Íê³É¡£Ö»Òª Emacs Äܹ»¸ù¾ÝÄãÒѾ­ÊäÈëµÄ -ÎÄ×ÖÈ·¶¨ÄãÏëÒªÊäÈëµÄÄÚÈÝ£¬Ëü¾Í»á×Ô¶¯°ïÄã²¹Æë¡£ÓÐ¹Ø Completion µÄÏêϸ˵ -Ã÷¿ÉÒÔÔÚ Emacs Info Öеġ°Completion¡±Ò»½ÚÀïÕÒµ½¡£ - -Dired Äܹ»ÔÚÒ»¸ö»º³åÇøÀïÁгöÒ»¸öĿ¼ÏµÄËùÓÐÎļþ£¨¿ÉÒÔÑ¡ÔñÊÇ·ñÒ²Áгö×Ó -Ŀ¼£©£¬È»ºóÄã¿ÉÒÔÔÚÕâ¸öÎļþÁбíÉÏÍê³É¶ÔÎļþµÄÒƶ¯¡¢·ÃÎÊ¡¢ÖØÃüÃû»òɾ³ý -µÈµÈ²Ù×÷¡£Dired Ò²ÔÚ Emacs Info ÖÐÓÐÏêϸ½éÉÜ£¬²Î¼û¡°Dired¡±Ò»½Ú¡£ - -Emacs ʹÓÃÊÖ²áÀﻹÓÐÐíÐí¶à¶àµÄ¾«²Ê¹¦ÄܵÈ×ÅÄãÀ´Á˽⡣ - - -* ×ܽᣨCONCLUSION£© --------------------- - -¼Çס£¬ÒªÍ˳ö Emacs ÇëÓà C-x C-c¡£ÒªÔÝʱÇл»µ½ shell ²¢ÇÒÉÔºóÔٻص½ -Emacs ÀïÀ´£¬ÇëÓà C-z¡£¡¾Çл»µ½ shell ½ö¶Ô¿ØÖÆ̨Ï嵀 Emacs ÓÐЧ¡¿ - -±¾ÎÄÍêÈ«ÊÇΪÁãÆðµãÐÂÊÖËùдµÄÆ𲽽̡̳£Èç¹ûÄã¾õµÃÄÄÀﻹ¿´²»Ã÷°×£¬Ç§Íò²» -Òª»³ÒÉ×Ô¼º£¬ÄÇÒ»¶¨ÊÇÎÒÃÇûÓÐдºÃ¡£ÎÒÃÇÓÀÔ¶»¶Ó­ÄãµÄ²»ÂúºÍ±§Ô¹¡£ - - -* ·­Ò루TRANSLATION£© ---------------------- - -·­Ò룺ËïÒ»½­ -У¶Ô£ºË®Ä¾ÉçÇø£¨www.newsmth.net£©Emacs °åÖÚ¶àÍøÓѼ°ÖÚ¶à Emacs ÖÐÎÄÓû§ - -Emacs ¿ìËÙÖ¸ÄÏ£¨Tutorial£©ÔçÓÐÁ½¸öÁõÕѺêµÄÖÐÎÄÒë±¾£¬·±¼ò¸÷Ò»¡£Æä¼òÌå°æ±¾ -£¨TUTORIAL.cn£©»ù±¾ÓÉ·±Ìå°æ±¾£¨TUTORIAL.zh£©¾­´ÊÓïÌæ»»¶øµÃ¡£È»¶ø·±¼òÖÐÎÄ -²»½öÔÚÓôÊÏ°¹ßÉÏÓÐËù²»Í¬£¬¸üÓÐÖî¶à±í´ï·½Ê½Óë¾ä·¨·½ÃæµÄ²îÒ죬Òò´ËÒ»Ö±ÒÔÀ´ -Óû§Ê¹Óà TUTORIAL.cn ¶¼»áÂÔ¾õÉúÓ²ºÍ»Þɬ¡£Õâ´ÎÖØз­Òë TUTORIAL.cn µÄ¶¯»ú -ÕýÊÇÔ´ÓÚÕâÖÖÌåÑ飬ϣÍûÎÒÃǵŤ×÷Äܹ»Èñ¾ÎĸüºÃµØ·¢»ÓÆä×÷Óá£TUTORIAL.zh -µÄÒëÎÄÖÊÁ¿ºÜ¸ß£¬ÔÚ·­Òë¹ý³ÌÖиøÓè¹ýÎÒÃÇÐí¶à½è¼øºÍ²Î¿¼£¬Ôڴ˶ÔÁõÕѺêµÄ¹¤×÷ -±íʾ¸Ðл¡£ - -·­Òë¹ý³ÌÖÐ×î´óµÄÌôսĪ¹ýÓÚÊõÓïÒë´ÊµÄÑ¡ÔñÁË¡£¾­¹ýˮľÉçÇø Emacs °åÈÈÐÄÍø -ÓÑС·¶Î§ÄÚµÄÌÖÂÛ£¬ÎÒÃÇÑ¡ÔñÁËÏÖÔÚµÄÒë·¨¡£Óû§µÄ¹ã·º²ÎÓëÊÇ×ÔÓÉÈí¼þÉúÃüÁ¦ -µÄԴȪ£¬ËùÒÔÈç¹ûÄãÓÐÈκν¨Òé¡¢¿±Îó»òÏë·¨£¬ÇëÓÃÄãϲ»¶µÄ·½Ê½ÏòÎÒÃÇÌá³ö¡£ -Äã¿ÉÒÔͨ¹ýµç×ÓÓʼþÖ±½ÓÁªÏµÒëÕߣ¬Ò²¿ÉÒԷŵ½ GNU Emacs µÄ¿ª·¢ÓʼþÁбí»òÕß -ˮľÉçÇøµÄ Emacs °åÉϽøÐÐÌÖÂÛ¡£ - -ÏÂÃæÁгöÖ÷ÒªÊõÓïµÄÒë´Ê¶ÔÕÕ£¬²¢¸ø³ö×¢ÊÍ˵Ã÷£º - - command ÃüÁî - cursor ¹â±ê - scrolling ¹ö¶¯ - numeric argument Êý×Ö²ÎÊý - window ´°¸ñ [1] - insert ²åÈë - delete ɾ³ý [2] - kill ÒƳý [2] - yank ÕÙ»Ø [2] - undo ³·Ïú - file Îļþ - buffer »º³åÇø - minibuffer С»º³å - echo area »ØÏÔÇø - mode line ״̬À¸ - search ËÑË÷ - incremental search ½¥½øʽËÑË÷ [3] - -[1] ¡°window¡±Ò»´ÊÔÚ¼ÆËã»úÏà¹ØµÄÁìÓòÒ»°ã¶¼±»ÒëΪ¡°´°¿Ú¡±¡£µ«ÊÇÔÚ Emacs - ÖУ¬»¹ÓÐÒ»¸ö¡°frame¡±µÄ¸ÅÄî¡£ÔÚ±»¹ã·ºÊ¹ÓÃµÄ X ´°¿ÚϵͳºÍ΢ÈíµÄÊÓ´° - £¨Windows£©ÏµÁвÙ×÷ϵͳÖУ¬Emacs µÄÒ»¸ö¡°frame¡±¾ÍÊÇÒ»¸ö¡°´°¿Ú¡±£¬Òò - ´Ë°Ñ Emacs Öеġ°frame¡±Òë³É¡°´°¿Ú¡±¸ü¼Ó·ûºÏͨ³£µÄÏ°¹ß¡£ÕâÑù£¬Emacs - Öеġ°window¡±¾ÍÖ»ÄÜÒë³É¡°´°¸ñ¡±ÁË¡£ÎÒÃÇÈÏΪ Emacs ÖÐ window ºÍ - frame µÄ¹ØϵÓô°¸ñºÍ´°¿ÚÀ´Àà±ÈÊÇÊ®·ÖÐÎÏóµÄ¡£ - - ¡¶Ñ§Ï°GNU Emacs¡·£¨µÚ¶þ°æ£©Ò»Êé¶Ô¡°window¡±ºÍ¡°frame¡±µÄ·­ÒëÓë±¾½Ì³Ì - ¸ÕºÃÏà·´£¨·Ö±ðÒë×÷¡°´°¿Ú¡±ºÍ¡°´°¸ñ¡±£©¡£ÔÚ´ËÌرð×¢Ã÷£¬ÒÔÏû³ý¿ÉÄܲúÉú - µÄÒɻ󡣣¨¸ÐлÀîÐñÕ ָ³ö£© - -[2] ¶ÔÓÚ¡°delete¡±ºÍ¡°kill¡±µÄÇø±ð£¬ÕýÎÄÒѾ­¸ø³öÁËÏêϸµÄ˵Ã÷¡£¡°É¾³ý¡±ºÍ - ¡°ÒƳý¡±Ïà±È½ÏÆðÀ´£¬Ç°Õ߸ü¶àµØÒþº¬×Å¡°ÆÆ»µ¡±ºÍ¡°²»¿É»Ö¸´¡±µÄÒâ˼£¬¶ø - ºóÕ߸ü¶àµØÒþº¬×Å¡°±»×ªÒÆ¡±ºÍ¡°¿É»Ö¸´¡±µÄÒâ˼¡£Òò´Ë·Ö±ðÑ¡ÔñËüÃÇ×÷ΪÉÏ - ÊöÁ½´ÊµÄÒë´Ê£¬Ï£ÍûÄܹ»ÌåÏÖ³öÇø±ð¡£¡°yank¡±ÔÚÖÐÎÄÎĵµÖÐÏÊÓжÔÓ¦Òë´Ê³ö - ÏÖ£¬·­ÒëµÄÀ§Äѽϴ󡣾¿Æä±¾ÒâÊÇ£º¡°a strong sudden pull¡±£¨²Î¼ûΤÊÏ´Ê - µä£©£¬¼´¡°ÃÍÈ»À­»Ø¡±¡£ÔÚÔ­ÎĵµÖÐ yank ±»ÒýÉêΪ¡°½«ÏÈÇ°ÒƳýµÄ¶«Î÷ÔÙÒÆ - »ØÀ´¡±Õâ¸öÒâ˼£¬ËùÒÔÎÒÃÇÑ¡ÔñÁË¡°Õٻء±Ò»´ÊÓëÆä¶ÔÓ¦¡£ - -[3] ¡°incremental¡±Ò»´ÊÔÚ¼ÆËã»úÖø×÷Öй㷺³öÏÖ£¬±»¹ã·º½ÓÊܵÄÖÐÎÄÒë´ÊÓÐÁ½ - ¸ö£º¡°ÔöÁ¿µÄ¡±ºÍ¡°½¥½øµÄ¡±¡£¡°incremental search¡±·­Òë³É¡°ÔöÁ¿Ê½ËÑË÷ - ¡±»òÕß¡°½¥½øʽËÑË÷¡±¶¼½²µÃͨ£¬ÇÒ¶¼Óи÷×ÔµÄÐÎÏóÖ®´¦¡£»¹ÊDzο¼Ô­ÎĶÔÆä - µÄ½âÊÍ£º¡°... means that the search happens while you type in the - string to search for¡±¡£Òâ˼ÊÇÖ®ËùÒÔ³ÆÆäΪ¡°incremental search¡±£¬ÊÇ - ÒòΪ¡°ÔÚÄãÊäÈëËÑË÷×Ö·û´®µÄ¹ý³ÌÖУ¬ËÑË÷¾ÍÒѾ­ÔÚ½øÐÐÁË¡±¡£ÎÒÃÇÈÏΪ¡°Ôö - Á¿µÄ¡±¸ü¼ÓÇ¿µ÷ÔÚÏÖÓлù´¡Éϵı仯£¨±ÈÈç¡°ÔöÁ¿±¸·Ý¡±£¬¡°ÔöÁ¿±àÒ롱£©£» - ¶ø¡°½¥½øµÄ¡±¸ü¼ÓÇ¿µ÷¹ý³ÌµÄÖð½¥·¢Õ¹£¬Ò²¸ü¼Ó·ûºÏÔ­ÎĵÄÒâ˼¡£Òò´ËÎÒÃÇÑ¡ - Ôñ½«¡°incremental search¡±Òë×÷¡°½¥½øʽËÑË÷¡±¡£ - - -* °æȨÉùÃ÷£¨COPYING£© ---------------------- - -This tutorial descends from a long line of Emacs tutorials -starting with the one written by Stuart Cracraft for the original Emacs. - -This version of the tutorial, like GNU Emacs, is copyrighted, and -comes with permission to distribute copies on certain conditions: - -Copyright (C) 1985, 1996, 1998, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 Free Software Foundation, Inc. - - Permission is granted to anyone to make or distribute verbatim copies - of this document as received, in any medium, provided that the - copyright notice and permission notice are preserved, - and that the distributor grants the recipient permission - for further redistribution as permitted by this notice. - - Permission is granted to distribute modified versions - of this document, or of portions of it, - under the above conditions, provided also that they - carry prominent notices stating who last altered them. - -The conditions for copying Emacs itself are more complex, but in the -same spirit. Please read the file COPYING and then do give copies of -GNU Emacs to your friends. Help stamp out software obstructionism -("ownership") by using, writing, and sharing free software! - -¡¾ÏÂÃæΪ°æȨÉùÃ÷µÄÒëÎÄ£¬½ö¹©²Î¿¼¡£Êµ¼Ê·¨ÂÉЧÁ¦ÒÔÓ¢ÎÄÔ­ÎÄΪ׼¡£¡¿ - -±¾¿ìËÙÖ¸ÄÏÑØÏ®×ÔÀúÊ·ÓÆ¾ÃµÄ Emacs ¿ìËÙÖ¸ÄÏ£¬¿ÉÉÏËÝÖÁ Stuart Cracraft Ϊ×î -³õµÄ Emacs Ëù×÷µÄ°æ±¾¡£ - -±¾ÆªÎĵµÓë GNU Emacs Ò»ÑùÓµÓаæȨ£¬²¢ÔÊÐíÔÚÏÂÁÐÌõ¼þµÄÔ¼ÊøÏ·¢ÐÐÆ俽±´£º - - Copyright (C) 1985, 1996, 1998, 2001, 2002, 2003, 2004, 2005, 2006, - 2007 Free Software Foundation, Inc. - - ±¾ÎĵµÔÊÐíÔÚ²»±ä¸üÎĵµÄÚÈݵÄÇé¿öÏÂÓÉÈκÎÈË·¢²¼ÔÚÈκÎýÌåÉÏ£¬Í¬Ê±±ØÐë - ÍêÕû±£Áô°æȨºÍÐí¿ÉÉùÃ÷£¬ÇÒÐè¸øÓèÊÜÖÚÓë·¢ÐÐÕßÍêÈ«ÏàͬµÄ¡¢Èç±¾ÉùÃ÷ËùÔÊ - ÐíµÄÔٴη¢Ðб¾ÎĵµµÄȨÀû¡£ - - ±¾ÉùÃ÷ÔÊÐíÔÚÓëÉÏÊöÌõ¼þÏàͬµÄÇé¿öÏ·¢²¼¾­¹ýÐ޸ĵÄÈ«²¿»ò²¿·ÖÎĵµ£¬Í¬Ê± - ±ØÐ븽´øÏÔÒªµÄÎÄ×ÖÒÔÉêÃ÷ÎĵµµÄ×îºóÐÞ¸ÄÕß¡£ - -Emacs ×ÔÉíµÄ°æȨÎÊÌâËä±È±¾ÎĵµÒª¸´ÔÓһЩ£¬µ«Ò²»ùÓÚÏàͬµÄ¾«Éñ¡£¾´ÇëÔĶÁÎÄ -¼þ¡°COPYING¡±£¬È»ºóÏòÄãµÄÅóÓÑÃÇ·Ö·¢ GNU Emacs ¿½±´¡£ÈÃÎÒÃÇÒÔʹÓᢱàдºÍ -·ÖÏí×ÔÓÉÈí¼þµÄʵ¼ÊÐж¯À´¹²Í¬ìî³ýÈí¼þÕÏ°­Ö÷Ò壨ËùνµÄ¡°ËùÓÐȨ¡±£©£¡ - -;;; Local Variables: -;;; coding: chinese-iso-8bit -;;; End: - -;;; arch-tag: 46a53d82-a85a-46b6-bdc7-583aca063578 diff --git a/etc/TUTORIAL.cs b/etc/TUTORIAL.cs deleted file mode 100644 index fc4650d0fa2..00000000000 --- a/etc/TUTORIAL.cs +++ /dev/null @@ -1,1047 +0,0 @@ -Tutoriál k Emacsu. Podmínky viz na konci. -Do èe¹tiny pøelo¾il Milan Zamazal . - -Máte pøed sebou tutoriál k Emacsu. - -Pøíkazy Emacsu obecnì vyu¾ívají klávesu CONTROL (obèas oznaèovanou CTRL nebo -CTL) nebo klávesu META (obèas oznaèovanou EDIT nebo ALT). Abychom tyto názvy -nemuseli stále psát v plném znìní, budeme pou¾ívat následující zkratky: - - C- znamená pøidr¾et klávesu CONTROL a stisknout znak . - Tedy C-f znamená: pøidr¾te klávesu CONTROL a stisknìte f. - M- znamená pøidr¾et klávesu META, EDIT nebo ALT a stisknout . - Pokud ¾ádnou z kláves META, EDIT ani ALT nemáte, tak místo toho - stisknìte a pus»te klávesu ESC a poté . Klávesu ESC budeme - znaèit . - -Dùle¾itá poznámka: práci s Emacsem ukonèíte stiskem C-x C-c (dva znaky). -Znaky ">>" na levém okraji znaèí místa, kde si máte vyzkou¹et pøíkaz. -Napøíklad: -<> -[Prostøední èást obrazovky je prázdná zámìrnì. Text pokraèuje ní¾e.] ->> Nyní stisknìte C-v (view next screen) pro posun na dal¹í obrazovku. - (Smìle do toho, proveïte to pøidr¾ením klávesy CONTROL a stiskem v.) - Od této chvíle byste toto mìli provádìt kdykoliv doètete zobrazenou - obrazovku. - -V¹imnìte si, ¾e pøi posuvu obrazovek v¾dy zùstávají zobrazeny dva øádky -z pøedchozí obrazovky; to poskytuje urèitou návaznost pøi postupném -ètení textu. - -První vìc, kterou potøebujete vìdìt, je jak se v textu pohybovat -z jednoho místa na druhé. U¾ víte, jak se posunout o jednu obrazovku -vpøed, pomocí C-v. K pøechodu o obrazovku zpìt pou¾ijte M-v -(pøidr¾te klávesu META a stisknìte v nebo stisknìte v, jestli¾e -nemáte ¾ádnou z kláves META, EDIT nebo ALT). - ->> Zkuste stisknout M-v a pak C-v, nìkolikrát to zopakujte. - - -* SHRNUTÍ ---------- - -K prohlí¾ení obrazovkových stránek jsou u¾iteèné následující pøíkazy: - - C-v Posun o obrazovku vpøed - M-v Posun o obrazovku zpìt - C-l Smazání obrazovky a znovuzobrazení celého textu, - pøitom se text pod kurzorem pøesune ke støedu obrazovky. - (Jedná se o CONTROL-L a ne CONTROL-1.) - ->> Najdìte kurzor a zapamatujte si, jaký text je kolem nìj. - Pak stisknìte C-l. - Najdìte kurzor znovu a v¹imnìte si, ¾e je kolem nìj tentý¾ text. - - -* ZÁKLADNÍ OVLÁDÁNÍ KURZORU ---------------------------- - -Pohyb mezi obrazovkami je u¾iteèný, ale jak se pøemístíte na konkrétní -místo v textu na obrazovce? - -Je toho mo¾no dosáhnout nìkolika zpùsoby. Nejzákladnìj¹ím zpùsobem je -pou¾ití pøíkazù C-p, C-b, C-f a C-n. Ka¾dý z tìchto pøíkazù pøesune -kurzor na obrazovce o jeden øádek nebo sloupec v daném smìru. -Zde je tabulka znázoròující smìr posuvu kurzoru vyvolaný tìmito ètyømi -pøíkazy: - - Pøedchozí øádek, C-p - : - : - Dozadu, C-b .... Momentální pozice kurzoru .... Dopøedu, C-f - : - : - Následující øádek, C-n - ->> Pøesuòte kurzor na prostøední øádek tohoto diagramu pomocí - C-n nebo C-p. Potom stisknìte C-l, abyste na obrazovce vidìli celý - diagram vycentrován. - -Pravdìpodobnì se vám budou tyto pøíkazy snadno pamatovat podle -poèáteèních písmen anglických názvù: P jako previous (pøedchozí), -N jako next (následující), B jako backward (zpìt), F jako forward (vpøed). -Jsou to základní pøíkazy pro pohyb kurzoru a budete je pou¾ívat -neustále, tak¾e by bylo velmi vhodné, kdybyste se je teï nauèili. - ->> Proveïte nìkolikrát C-n, abyste kurzor pøesunuli na tento øádek. - ->> Posuòte kurzor dovnitø øádku pomocí nìkolika C-f a pak nahoru stiskem C-p. - Pozorujte, co C-p dìlá, kdy¾ je kurzor uprostøed øádku. - -Ka¾dý øádek textu konèí znakem nového øádku, který jej oddìluje od øádku -následujícího. Znakem nového øádku by mìl být ukonèen i poslední øádek -souboru (pøesto¾e to Emacs nevy¾aduje). - ->> Vyzkou¹ejte C-b na zaèátku øádku. Kurzor by se mìl pøesunout na konec - pøedchozího øádku, nebo» jej tím pøesunete pøes znak nového øádku. - -C-f funguje analogicky jako C-b, tj. na konci øádku dojde k pøesunu na -dal¹í øádek. - ->> Proveïte nìkolik C-b, tak¾e uvidíte, kde se nachází kurzor. - Pak provádìjte C-f, abyste se vrátili na konec øádku. - Pak proveïte je¹tì jednou C-f, abyste se pøesunuli na následující - øádek. - -Kdy¾ kurzorem pøejdete pøes horní nebo dolní okraj obrazovky, posune se -text za pøíslu¹ným okrajem na obrazovku. Tato vlastnost se nazývá -"scrollování". Umo¾òuje pøemístit kurzor na libovolné místo v textu, -ani¾ by kurzor opustil obrazovku. - ->> Zkuste posunout kurzor pod dolní okraj obrazovky pomocí C-n a pozorujte, - co se stane. - -Jestli¾e je posun po znacích pøíli¹ pomalý, mù¾ete se pohybovat po -slovech. M-f (META-f) provádí posun o slovo vpøed a M-b provádí posun -o slovo zpìt. - ->> Stisknìte nìkolikrát M-f a M-b. - -Pokud se kurzor nachází uprostøed slova, M-f provede pøesun na konec -tohoto slova. Nachází-li se kurzor v mezeøe mezi slovy, M-f provede -pøesun na konec následujícího slova. M-b pracuje analogicky v opaèném -smìru. - ->> Stisknìte nìkolikrát M-f a M-b prolo¾enì s C-f a C-b, abyste vidìli - výsledky pøíkazù M-f a M-b provádìných z rùzných míst uvnitø slov a - mezi nimi. - -V¹imnìte si analogie mezi C-f a C-b na jedné stranì a M-f a M-b na -stranì druhé. Znaky s klávesou META jsou velmi èasto vyu¾ívány pro operace -vztahující se k entitám definovaným jazykem (slova, vìty, odstavce), -zatímco znaky s klávesou CONTROL pracují na základních prvcích -nezávislých na tom, co zrovna editujete (znaky, øádky, apod.). - -Tato analogie platí také pro øádky a vìty: C-a a C-e provádí pøesun -na zaèátek a konec øádku, M-a a M-e provádí pøesun na zaèátek a konec -vìty. - ->> Zkuste nìkolikrát C-a a poté nìkolikrát C-e. - Zkuste nìkolikrát M-a a poté nìkolikrát M-e. - -V¹imnìte si, ¾e opakované C-a nedìlá nic, zatímco opakované M-a v¾dy -provádí posun o dal¹í vìtu. Principu analogie to sice pøíli¹ -neodpovídá, ale pøesto je toto chování mo¾no pova¾ovat za pøirozené. - -Pozice kurzoru v textu se také nazývá "bod" ("point"). Abychom to -parafrázovali, kurzor je vidìt na obrazovce v místì, kde je bod umístìn -v textu. - -Zde je pøehled jednoduchých operací pro pohyb kurzoru vèetnì pøíkazù pro -pohyb mezi slovy a vìtami: - - C-f Pøesun o znak vpøed - C-b Pøesun o znak zpìt - - M-f Pøesun o slovo vpøed - M-b Pøesun o slovo zpìt - - C-n Pøesun na následující øádek - C-p Pøesun na pøedchozí øádek - - C-a Pøesun na zaèátek øádku - C-e Pøesun na konec øádku - - M-a Pøesun zpìt na zaèátek vìty - M-e Pøesun vpøed na konec vìty - ->> Vyzkou¹ejte si teï nìkolikrát v¹echny tyto pøíkazy pro procvièení. - Jsou to nejpou¾ívanìj¹í pøíkazy. - -Dal¹í dva dùle¾ité pøíkazy pro pohyb kurzoru jsou M-< (META men¹í-ne¾), -který provede pøesun na zaèátek celého textu, a M-> (META vìt¹í-ne¾), -který provede pøesun na konec celého textu. - -Na vìt¹inì terminálù je "<" nad èárkou, tak¾e pro vyvolání tohoto znaku -musíte pou¾ít klávesu Shift. Na tìchto terminálech je tedy nutno pou¾ít -klávesu Shift i v pøípadì pøíkazu M-<; bez klávesy Shift byste provedli -M-èárka. - ->> Zkuste teï M-< pro pøesun na zaèátek tutoriálu. - Pou¾ijte pak opakovanì C-v, abyste se opìt vrátili sem. - ->> Zkuste teï M-> pro pøesun na konec tutoriálu. - Pou¾ijte pak opakovanì M-v, abyste se opìt vrátili sem. - -Kurzor mù¾ete pøesouvat také pomocí kurzorových kláves (klávesy -se ¹ipkami), pokud je vá¹ terminál má. My v¹ak doporuèujeme nauèit se -C-b, C-f, C-n a C-p, a to ze tøí dùvodù. Za prvé, tyto klávesy fungují -na v¹ech typech terminálù. Za druhé, jakmile jednou získáte cvik -v pou¾ívání Emacsu, zjistíte, ¾e pou¾ívání tìchto CTRL znakù je -rychlej¹í ne¾ pou¾ívání kurzorových kláves (proto¾e nemusíte pøesouvat -ruku z psací pozice). Za tøetí, zvyknete-li si pou¾ívat tyto CTRL-znak -pøíkazy, snadno se nauèíte pou¾ívat jiné pokroèilé pøíkazy pro pohyb -kurzoru. - -Vìt¹ina pøíkazù Emacsu akceptuje numerický argument; ten pro vìt¹inu -pøíkazù slou¾í jako opakovaè. Poèet opakování pøíkazu zadáte -prostøednictvím stisku C-u následovaného stiskem pøíslu¹ných èíslic pøed -vyvoláním pøíkazu. Máte-li META (nebo EDIT èi ALT) klávesu, existuje -alternativní mo¾nost zadání numerického argumentu: pøidr¾te klávesu META -a stisknìte pøíslu¹né èíslice. Doporuèujeme nauèit se C-u metodu, -proto¾e ta funguje na jakémkoliv terminálu. - -Napøíklad C-u 8 C-f provede pøesun o osm znakù vpøed. - -Vìt¹ina pøíkazù pou¾ívá numerický argument jako opakovaè. Jisté -výjimeèné pøíkazy jej pou¾ívají jiným zpùsobem. Mezi tyto výjimky patøí -C-v a M-v. Dostanou-li numerický argument, posunou obrazovku nahoru -nebo dolù o odpovídající poèet øádkù místo obrazovek. Napøíklad -C-u 4 C-v posune obrazovku o 4 øádky. - ->> Zkuste teï stisknout C-u 8 C-v. - -To by mìlo posunout obrazovku o 8 øádkù nahoru. Pokud byste ji chtìli -posunout zpìt dolù, mù¾ete dát argument pøíkazu M-v. - -Pou¾íváte-li X Window, mìli byste mít na levé stranì emacsového okna -vysokou obdélníkovou oblast, nazývanou scrollbar. Mù¾ete pak text -posouvat klikáním my¹í na scrollbar. - ->> Zkuste stisknout prostøední tlaèítko na vrcholu zvýraznìné oblasti - uvnitø scrollbaru. To by mìlo text posunout na pozici danou tím, jak - vysoko nebo nízko jste kliknuli. - ->> Zkuste pøi stisknutém prostøedním tlaèítku posouvat my¹í nahoru a - dolù. Uvidíte, jak se text posouvá nahoru a dolù podle toho, jak - posouváte my¹í. - - -* KDY® EMACS NEREAGUJE ----------------------- - -Jestli¾e Emacs pøestane reagovat na va¹e pøíkazy, mù¾ete probíhající -èinnost bezpeènì zastavit pomocí C-g. Pomocí C-g mù¾ete zastavit -pøíkaz, jeho¾ provádìní trvá pøíli¹ dlouho. - -C-g mù¾ete pou¾ít také pro odstranìní numerického argumentu pøíkazu, -který nechcete dokonèit. - ->> Stisknìte C-u 100 pro vytvoøení numerického argumentu 100 a pak - stisknìte C-g. Nyní stisknìte C-f. Mìl by být proveden posun - o právì jeden znak, proto¾e jste argument zru¹ili prostøednictvím - C-g. - -Pokud jste omylem stiskli , mù¾ete se jej zbavit pomocí C-g. - - -* DEAKTIVOVANÉ PØÍKAZY ----------------------- - -Nìkteré pøíkazy Emacsu jsou "deaktivované" ("disabled"), aby je -zaèínající u¾ivatelé nemohli vyvolat náhodnì. - -Pokud vyvoláte nìkterý z deaktivovaných pøíkazù, Emacs zobrazí hlá¹ení -oznamující, který pøíkaz to byl, s dotazem, zda chcete tento pøíkaz -provést. - -Pokud opravdu chcete pøíkaz vyzkou¹et, stisknìte mezerník jako odpovìï -na tuto otázku. Obyèejnì, jestli¾e nechcete deaktivovaný pøíkaz -provést, odpovìzte na tuto otázku pomocí "n". - ->> Stisknìte C-x C-l (co¾ je deaktivovaný pøíkaz), - pak na otázku odpovìzte n. - - -* OKNA ------- - -Emacs mù¾e mít nìkolik oken (windows), z nich¾ ka¾dé zobrazuje svùj -vlastní text. Jak více oken pou¾ívat, objasníme pozdìji. Nyní chceme -objasnit, jak se zbavit nadbyteèných oken a vrátit se do základní -jednookenní editace. Je to jednoduché: - - C-x 1 Jedno okno (tj. zru¹ení v¹ech ostatních oken) - -Tedy vlo¾ení CONTROL-x následované èíslicí 1. C-x 1 roz¹íøí okno -obsahující kurzor pøes celou obrazovku. Zru¹í to v¹echna ostatní okna. - ->> Stisknìte C-h k C-f. - Pozorujte, jak se aktuální okno zmen¹í a objeví se nové okno za - úèelem zobrazení dokumentace k pøíkazu C-f. - ->> Stisknìte C-x 1 a pozorujte, jak okno s dokumentací zmizí. - - -* VKLÁDÁNÍ A MAZÁNÍ -------------------- - -Chcete-li vlo¾it text, prostì jej napi¹te. Znaky, které vidíte, -jako A, 7, *, atd., jsou Emacsem chápány jako text a vkládány okam¾itì. -Pro vlo¾ení znaku nového øádku stisknìte (klávesu Enter). - -Poslední znak, který jste napsali, mù¾ete smazat stiskem . - je klávesa, která mù¾e být na klávesnici oznaèena "Del". -V nìkterých pøípadech jako slou¾í klávesa "Backspace", av¹ak ne -v¾dy! - -Obecnìji, ma¾e znak bezprostøednì pøed momentální pozicí -kurzoru. - ->> Proveïte to teï -- napi¹te nìkolik znakù a pak je sma¾te nìkolika - stisky . Nebojte se zmìn v tomto souboru; originální - tutoriál se nezmìní. Toto je va¹e osobní kopie. - -Kdy¾ se øádek textu zvìt¹í natolik, ¾e pøesáhne jeden øádek obrazovky, -je zobrazen na více øádcích obrazovky. Øádek textu, který pokraèuje na -dal¹ím øádku obrazovky, je indikován zpìtným lomítkem ("\") na pravém -okraji obrazovky. - ->> Vkládejte text, a¾ dosáhnete pravého okraje, a pokraèujte ve vkládání. - Objeví se vám pokraèovací øádek. - ->> Pou¾ijte pro smazání textu, a¾ se øádek textu opìt vejde na - jeden øádek obrazovky. Pokraèovací øádek zmizí. - -Znak nového øádku mù¾ete smazat jako kterýkoliv jiný znak. Smazání -znaku nového øádku mezi dvìma øádky zpùsobí jejich spojení do jediného -øádku. Je-li výsledný øádek pøíli¹ dlouhý na to, aby se ve¹el na ¹íøku -obrazovky, bude zobrazen pokraèovacím øádkem. - ->> Pøesuòte kurzor na zaèátek øádku a stisknìte . To tento - øádek spojí s øádkem pøedchozím. - ->> Stisknìte pro znovuvlo¾ení smazaného znaku nového øádku. - -Vzpomeòte si, ¾e vìt¹ina pøíkazù Emacsu mù¾e dostat poèet opakování; -vèetnì textových znakù. Opakování textových znakù je vlo¾í nìkolikrát. - ->> Vyzkou¹ejte si to teï -- stisknìte C-u 8 * pro vlo¾ení ********. - -Teï u¾ znáte nejzákladnìj¹í zpùsoby, jak nìco v Emacsu napsat a jak -opravovat chyby. Mù¾ete ov¹em také mazat po slovech nebo po øádcích. -Zde je shrnutí operací pro mazání textu: - - Smazání znaku bezprostøednì pøed kurzorem - C-d Smazání znaku následujícího za kurzorem - - M- Zru¹ení slova bezprostøednì pøed kurzorem - M-d Zru¹ení slova následujícího za kurzorem - - C-k Zru¹ení textu od pozice kurzoru do konce øádku - M-k Zru¹ení textu do konce aktuální vìty - -V¹imnìte si, ¾e a C-d, resp. M- a M-d, roz¹iøují -paralelu zapoèatou C-f a M-f (pravda, opravdu není CONTROL -znak, ale netrapme se tím). C-k a M-k jsou jako C-e a M-e ve smyslu -vztahu øádkù k vìtám. - -Libovolnou èást bufferu mù¾ete té¾ zru¹it následující metodou. -Pøesuòte se na jeden konec této èásti a stisknìte C-@ nebo C-SPC -(libovolnou z tìchto kombinací). (SPC oznaèuje mezerník.) Pøesuòte -se na druhý konec této èásti a stisknìte C-w. Text mezi tìmito -pozicemi bude zru¹en. - ->> Pøesuòte kurzor na písmeno L na zaèátku pøedchozího odstavce. ->> Stisknìte C-SPC. Emacs by mìl ve spodním øádku obrazovky - zobrazit zprávu "Mark set". ->> Pøesuòte kurzor na písmeno c ve slovì "konec" na druhém øádku - odstavce. ->> Stisknìte C-w. Text zaèínající písmenem L a konèící pøed písmenem - c bude zru¹en. - -Uvìdomte si, ¾e rozdíl mezi "ru¹ením" ("killing") a "mazáním" -("deleting") je ten, ¾e "zru¹ené" vìci mohou být zpìt vhozeny, zatímco -"smazané" nikoliv. Obecnì pøíkazy, které mohou smazat vìt¹í mno¾ství -textu, ukládají text, zatímco pøíkazy, které ma¾ou jediný znak nebo -pouze prázdné øádky a mezery, mazaný text neukládají. - ->> Pøesuòte kurzor na zaèátek neprázdného øádku. - Pak stisknìte C-k pro zru¹ení textu na tomto øádku. ->> Stisknìte C-k podruhé. Uvidíte, ¾e to zru¹í znak nového øádku, který - je za tímto øádkem. - -V¹imnìte si, ¾e jedno C-k zru¹í obsah øádku a druhé C-k zru¹í øádek -samotný a posune v¹echny dal¹í øádky nahoru. C-k zpracovává numerický -argument speciálnì: zru¹í odpovídající poèet øádkù VÈETNÌ jejich -obsahu. To u¾ není opakování. C-u 2 C-k zru¹í dva øádky a jejich -obsah; dvojitý stisk C-k by toto obvykle neudìlal. - -Vracení textu zpìt se nazývá "vhazování" ("yanking"). (Pøedstavte -si opìtovné vhazování, vracení døíve odstranìného textu zpátky.) -Zru¹ený text mù¾ete vhodit buï na stejné místo, kde byl zru¹en, -nebo na jiné místo v bufferu, nebo dokonce i do jiného souboru. -Text mù¾ete vhodit i vícekrát, vytváøíte tak jeho dal¹í kopie. - -Pøíkazem pro vhazování je C-y. Tento pøíkaz vlo¾í poslední smazaný -text na pozici, na které se nachází kurzor. - ->> Zkuste to; stisknìte C-y pro vhození textu zpìt. - -Stisknete-li nìkolikrát C-k po sobì, v¹echen smazaný text je ulo¾en -spoleènì tak, aby bylo mo¾né vhodit zpìt v¹echny øádky najednou. - ->> Stisknìte nìkolikrát C-k. - -Nyní obnovte poslednì zru¹ený text: - ->> Stisknìte C-y. Pak posuòte kurzor o nìkolik øádkù ní¾e a stisknìte - C-y znova. Nyní vidíte, jak lze text kopírovat. - -Co kdy¾ máte nìjaký text, který byste rádi vhodili zpìt a pak zru¹íte -nìco jiného? C-y by vlo¾ilo poslední zru¹ený text. Av¹ak pøedchozí -text není ztracen. Mù¾ete jej získat zpìt pou¾itím pøíkazu M-y. Poté, -co provedete C-y pro získání posledního zru¹eného textu, stisk M-y -vymìní tento vhozený text za pøedchozí zru¹ený text. Dal¹ími a -dal¹ími stisky M-y dostáváte pøedcházející a pøedcházející zru¹ené -texty. Kdy¾ dosáhnete textu, který hledáte, nemusíte s ním pro jeho -uchování nic dal¹ího provádìt. Jednodu¹e vhozený text ponechejte, kde -je, a pokraèujte v editaci. - -Pokud opakujete M-y dostateènì dlouho, dostanete se zpátky k výchozímu -bodu (poslednì zru¹enému textu). - ->> Zru¹te øádek, pøesuòte kurzor nìkam jinam a zru¹te jiný øádek. - Pak proveïte C-y pro vrácení druhého zru¹eného øádku. - Pak proveïte M-y a vhozený øádek bude nahrazen prvním zru¹eným øádkem. - Opakujte M-y a pozorujte, co dostáváte. Pokraèujte v tom, dokud se - znovu neobjeví druhý zru¹ený øádek a pak nìkolik dal¹ích. - Chcete-li, mù¾ete zkusit pøedat M-y kladné a záporné argumenty. - - -* UNDO ------- - -Jestli¾e provedete v textu zmìnu a pak zjistíte, ¾e to byl omyl, mù¾ete -zmìnu vrátit pøíkazem undo, C-x u. - -C-x u obvykle vrátí zmìny provedené jedním pøíkazem; pokud C-x u -zopakujete nìkolikrát za sebou, ka¾dé opakování vrátí jeden dal¹í -pøíkaz. - -Jsou ale dvì výjimky: pøíkazy, které nemìní text, se nepoèítají (to -zahrnuje pøíkazy pro pohyb kurzoru a scrollování) a znaky vkládající -samy sebe jsou obvykle zpracovávány ve skupinách a¾ po 20. (To je kvùli -tomu, aby se zredukoval poèet C-x u nutných pro vrácení vkládaného -textu.) - ->> Zru¹te tento øádek pomocí C-k, stisknìte pak C-x u a øádek by se mìl - znovu objevit. - -Alternativní undo pøíkaz je C-_; pracuje stejnì jako C-x u, je v¹ak -ménì pracné jej aplikovat nìkolikrát za sebou. Nevýhodou C-_ je, ¾e -na nìkterých klávesnicích není zøejmé, jak jej vyvolat. To je dùvod, -proè nabízíme i C-x u. Na nìkterých terminálech mù¾ete C-_ vyvolat -stiskem / pøi stisknutém CTRL. - -Numerický argument pro C-_ a C-x u funguje jako poèet opakování. - -Pomocí pøíkazu undo mù¾ete vrátit zru¹ený stejnì jako smazaný text. -Rozdíl mezi mazáním a ru¹ením textu ovlivòuje mo¾nost vhození tohoto -textu pomocí C-y, neovlivòuje mo¾nosti pøíkazu undo. - - -* SOUBORY ---------- - -Aby text, který editujete, zùstal trvale uchován, musíte jej ulo¾it do -souboru. Jinak by byl po ukonèení Emacsu ztracen. Svoji editaci -spojíte se souborem "vyhledáním" ("finding") souboru. (Také se to -nazývá "nav¹tívení" ("visiting") souboru.) - -Vyhledání souboru znamená, ¾e vidíte jeho obsah v Emacsu. V mnoha -ohledech je to, jako byste editovali pøímo ten soubor. Nicménì zmìny, -které prostøednictvím Emacsu èiníte, se nestanou trvalými, dokud tyto -zmìny do souboru "neulo¾íte" ("save"). Tím se zamezí nechtìnému ponechání -èásteènì zmìnìného souboru v systému. Dokonce i kdy¾ soubor ulo¾íte, -Emacs uchová pùvodní soubor pod zmìnìným názvem pro pøípad, ¾e byste -zjistili, ¾e va¹e úpravy byly chybné. - -Kdy¾ se podíváte do dolní èásti obrazovky, uvidíte øádek, který zaèíná a -konèí pomlèkami a na zaèátku má "2J:-- TUTORIAL.cs" nebo nìco podobného. -Tato èást obrazovky obvykle obsahuje jméno souboru, který je právì -nav¹tíven. Zrovna teï máte nav¹tíven soubor nazvaný "TUTORIAL.cs", -který je va¹í osobní èmárací kopií tutoriálu Emacsu. Kdy¾ v Emacsu -vyhledáte soubor, jeho jméno se objeví pøesnì na tom místì. - -Pøíkazy pro vyhledávání a ukládání souborù se na rozdíl od ostatních -pøíkazù, které jste se zatím nauèili, skládají ze dvou znakù. Oba -zaèínají znakem CONTROL-x. Existuje celá øada pøíkazù zaèínajících na -CONTROL-x; mnoho z nich pracuje se soubory, buffery a podobnými vìcmi. -Tyto pøíkazy jsou dlouhé dva, tøi nebo ètyøi znaky. - -Dal¹í vìcí ohlednì pøíkazu pro vyhledání souboru je to, ¾e musíte øíct, -které jméno souboru chcete. Øíkáme, ¾e pøíkaz "ète argument -z terminálu" (v tomto pøípadì je argumentem jméno souboru). Poté co -vyvoláte pøíkaz - - C-x C-f Vyhledání souboru - -Emacs se vás zeptá na jméno souboru. Jméno souboru, které pí¹ete, se -objevuje ve spodním øádku obrazovky, který se v této situaci nazývá -minibuffer. Pro editaci jména souboru mù¾ete pou¾ívat obvyklé editaèní -pøíkazy Emacsu. - -Zadávání jména souboru (obecnì kterýkoliv vstup z minibufferu) mù¾ete -zru¹it pøíkazem C-g. - ->> Stisknìte C-x C-f a pak C-g. To minibuffer zru¹í a takté¾ to zru¹í - pøíkaz C-x C-f, který minibuffer pou¾il. Tak¾e nevyhledáte ¾ádný - soubor. - -Po napsání jména souboru stisknìte . -Pøíkaz C-x C-f pak zaène pracovat a vyhledá soubor, který jste zvolili. -Po skonèení pøíkazu C-x C-f minibuffer zmizí. - -Po malé chvilce se obsah souboru objeví na obrazovce a mù¾ete jej -editovat. Kdy¾ chcete zmìny trvale ulo¾it, pou¾ijte pøíkaz - - C-x C-s Ulo¾ení souboru - -To zkopíruje text z Emacsu do souboru. Kdy¾ to provedete poprvé, Emacs -pøejmenuje pùvodní soubor na soubor s novým jménem, aby nebyl ztracen. -Nové jméno je vytvoøeno pøidáním "~" na konec pùvodního jména souboru. - -Kdy¾ je ukládání dokonèeno, Emacs zobrazí jméno zapsaného souboru. -Mìli byste ukládat rozumnì èasto, abyste neztratili pøíli¹ mnoho práce -v pøípadì pádu systému. - ->> Stisknìte C-x C-s pro ulo¾ení va¹í kopie tutoriálu. - Mìlo by to zobrazit "Wrote ...TUTORIAL.cs" ve spodním øádku obrazovky. - -POZNÁMKA: Na nìkterých systémech zpùsobí stisk C-x C-s ztuhnutí -obrazovky a nevidíte ¾ádný dal¹í výstup z Emacsu. To znamená, ¾e -"vlastnost" operaèního systému zvaná "flow control" zachycuje C-s a -nepropustí jej k Emacsu. Pro odtuhnutí obrazovky stisknìte C-q. Pak -v sekci "Spontaneous Entry to Incremental Search" v manuálu Emacsu -vyhledejte radu, jak se vypoøádat s touto "vlastností". - -Existující soubor mù¾ete vyhledat, abyste jej mohli prohlí¾et nebo -editovat. Mù¾ete také vyhledat soubor, který je¹tì neexistuje. To je -zpùsob, jakým lze vytvoøit soubor v Emacsu: vyhledejte soubor, který -bude na zaèátku prázdný a pak zaènìte vkládat text urèený pro tento -soubor. Kdy¾ po¾ádáte o ulo¾ení, Emacs skuteènì vytvoøí soubor -s textem, který jste vlo¾ili. Od té chvíle se pak mù¾ete cítit, jako -kdybyste editovali ji¾ existující soubor. - - -* BUFFERY ---------- - -Jestli¾e vyhledáte pomocí C-x C-f druhý soubor, první soubor v Emacsu -zùstává. Mù¾ete se do nìj zpìt pøepnout jeho opìtovným vyhledáním -pomocí C-x C-f. Tímto zpùsobem mù¾ete do Emacsu dostat pomìrnì hodnì -souborù. - ->> Vytvoøte soubor pojmenovaný "foo" stiskem C-x C-f foo . - Potom vlo¾te nìjaký text, zeditujte jej a ulo¾te "foo" stiskem C-x C-s. - Nakonec stisknìte C-x C-f TUTORIAL.cs , èím¾ se vrátíte zpìt do - tutoriálu. - -Emacs ukládá text ka¾dého souboru do objektu nazývaného "buffer". -Vyhledání souboru vytvoøí v Emacsu nový buffer. Chcete-li vidìt seznam -bufferù, které momentálnì existují ve va¹em procesu Emacs, stisknìte: - - C-x C-b Seznam bufferù - ->> Zkuste teï C-x C-b. - -Podívejte se, ¾e ka¾dý buffer má v seznamu jméno a mù¾e tam mít také jméno -souboru, jeho¾ text obsahuje. Nìkteré buffery neodpovídají souborùm. -Napøíklad buffer pojmenovaný "*Buffer List*" nemá ¾ádný soubor. Je to -buffer, který obsahuje seznam bufferù vytvoøený pomocí C-x C-b. -JAKÝKOLIV text, který vidíte v emacsovém oknì, je v¾dy souèástí -nìjakého bufferu. - ->> Stisknìte C-x 1, abyste se zbavili seznamu bufferù. - -Pokud provedete zmìny textu jednoho souboru a pak vyhledáte jiný soubor, -nezpùsobí to ulo¾ení prvního souboru. Jeho zmìny zùstávají v Emacsu -uchovány v jemu odpovídajícím bufferu. Vytvoøení a editace druhého -souboru nemá ¾ádný vliv na buffer prvního souboru. To je velmi -u¾iteèné, ale také to znamená, ¾e potøebujete vhodný zpùsob, jak ulo¾it -buffer prvního souboru. Nutnost pøepnout se zpátky pomocí C-x C-f, aby -jej bylo mo¾no ulo¾it prostøednictvím C-x C-s, by byla nemístnì -obtì¾ující. Tak¾e máme - - C-x s Ulo¾ení nìkterých bufferù - -C-x s se vás zeptá na ka¾dý buffer, který obsahuje zmìny, které jste -neulo¾ili. Pro ka¾dý takový buffer se vás zeptá, zda jej má ulo¾it. - ->> Vlo¾te øádek textu a pak stisknìte C-x s. - Mìli byste být dotázáni, zda má být ulo¾en buffer nazvaný TUTORIAL.cs. - Odpovìzte na tuto otázku ano (yes) stiskem "y". - - -* ROZ©IØOVÁNÍ SADY PØÍKAZÙ --------------------------- - -Existuje mnohem, mnohem více pøíkazù Emacsu, ne¾ které by vùbec mohly -být rozmístìny na v¹echny CONTROL a META znaky. Emacs tento problém -obchází prostøednictvím X (eXtend) pøíkazu. Ten vzniká dvìma zpùsoby: - - C-x Znakový eXtend. Následován jedním znakem. - M-x Pojmenovaný pøíkaz eXtend. Následován dlouhým názvem. - -To jsou pøíkazy, které jsou obecnì u¾iteèné, av¹ak ménì èasto pou¾ívané -ne¾ ty, které jste se ji¾ nauèili. U¾ jste vidìli dva z nich: souborové -pøíkazy C-x C-f pro vyhledání a C-x C-s pro ulo¾ení. Jiný pøíklad je -pøíkaz pro ukonèení Emacsu -- tj. pøíkaz C-x C-c. (Nemìjte obavy -o ztrátu zmìn, které jste provedli; C-x C-c nabídne ulo¾ení ka¾dého -zmìnìného souboru, ne¾ Emacs ukonèí.) - -C-z je pøíkaz na *doèasné* opu¹tìní Emacsu -- mù¾ete se po nìm do -spu¹tìného Emacsu vrátit. - -Na systémech, které to umo¾òují, C-z Emacs "pozastaví"; tzn. vrátí vás -do shellu, av¹ak Emacs neukonèí. V nejbì¾nìj¹ích shellech se mù¾ete do -Emacsu vrátit pøíkazem `fg' nebo pomocí `%emacs'. - -Na systémech, které pozastavování procesù nemají implementováno, C-z -vytvoøí subshell bì¾ící pod Emacsem, aby vám dal ¹anci spustit jiné -programy a pak se do Emacsu vrátit; neprovede tedy pravé opu¹tìní -Emacsu. V tom pøípadì je obvyklou cestou návratu ze subshellu do Emacsu -shellovský pøíkaz `exit'. - -Chvíle pro pou¾ití C-x C-c nastane, kdy¾ se chystáte odhlásit ze -systému. Správné je to také pøi ukonèování Emacsu vyvolaného po¹tovním -programem a rùznými jinými utilitami, proto¾e ty nemusí vìdìt, jak si -poradit s pozastavením Emacsu. Nicménì za normálních okolností, pokud -se nechystáte odlogovat, je lépe Emacs pozastavit pomocí C-z ne¾ jej -ukonèit. - -Existuje mnoho C-x pøíkazù. Zde je seznam tìch, které jste se ji¾ nauèili: - - C-x C-f Vyhledání souboru - C-x C-s Ulo¾ení soubor - C-x C-b Seznam bufferù - C-x C-c Ukonèení Emacsu - C-x u Undo - -Pojmenované eXtended pøíkazy jsou pøíkazy, které jsou pou¾ívány je¹tì -ménì, nebo pøíkazy, které jsou pou¾ívány jenom v jistých módech. -Pøíkladem je pøíkaz replace-string, který globálnì nahradí jeden øetìzec -jiným. Kdy¾ stisknete M-x, vypí¹e se na spodním øádku obrazovky prompt -M-x a vy byste mìli zadat jméno pøíkazu; v tomto pøípadì -"replace-string". Jednodu¹e napi¹te "repl s" a Emacs název doplní. -Dokonèete zadávání jména pøíkazu pomocí . - -Pøíkaz replace-string vy¾aduje dva argumenty -- øetìzec, který má být -nahrazen, a øetìzec, který jej má nahradit. Ka¾dý argument musíte -ukonèit pomocí . - ->> Pøesuòte kurzor na prázdný øádek dva øádky pod tímto. - Pak napi¹te M-x repl szmìnilmodifikoval. - - V¹imnìte si, jak se tento øádek zmìnil: nahradili jste slovo - z-m-ì-n-i-l slovem "modifikoval", kdekoliv se za aktuální pozicí - kurzoru vyskytlo. - - -* AUTOMATICKÉ UKLÁDÁNÍ ----------------------- - -Jestli¾e jste provedli zmìny v souboru, ale nemáte je je¹tì ulo¾eny, -mohou být v pøípadì pádu systému ztraceny. Aby vás Emacs od toho -uchránil, periodicky zapisuje "auto save" soubor pro ka¾dý soubor, který -editujete. Jméno auto save souboru má na zaèátku a na konci #; -napøíklad jestli¾e se vá¹ soubor jmenuje "hello.c", jeho auto save -soubor se jmenuje "#hello.c#". Kdy¾ soubor ulo¾íte normálním zpùsobem, -Emacs auto save soubor sma¾e. - -Jestli¾e dojde k pádu systému, mù¾ete svoji editaci obnovit z auto-save -souboru, a to normálním vyhledáním souboru (toho, který jste editovali, -ne auto save souboru) a následnou aplikací M-x recover file. -Na ¾ádost o potvrzení odpovìzte zadáním yes pro pokraèování a -obnovení auto-save dat. - - -* ECHO OBLAST -------------- - -Kdy¾ Emacs vidí, ¾e pí¹ete pøíkazy pomalu, ukazuje vám je ve spodní -èásti obrazovky v oblasti nazývané "echo oblast". Echo oblast obsahuje -dolní øádek obrazovky. - - -* STAVOVÝ ØÁDEK ---------------- - -Øádek bezprostøednì nad echo oblastí se nazývá "stavový øádek" ("mode line"). -Stavový øádek øíká nìco jako: - -2J:** TUTORIAL.cs (Fundamental)--L670--58%---------------- - -Tento øádek podává u¾iteènou informaci o stavu Emacsu a textu, který -editujete. - -U¾ víte, co znamená jméno souboru -- je to soubor, který jste vyhledali. --NN%-- oznaèuje va¹i aktuální pozici v textu; øíká, ¾e NN procent textu -je nad horním okrajem obrazovky. Je-li zaèátek souboru na obrazovce, je -zde --Top-- a ne --00%--. Je-li konec textu na obrazovce, je zde ---Bot--. Jestli¾e se díváte na tak malý text, ¾e se celý vejde na -obrazovku, stavový øádek øíká --All--. - -Hvìzdièky poblí¾ zaèátku znamenají, ¾e jste text zmìnili. Tìsnì po -vyhledání nebo ulo¾ení souboru v této èásti stavového øádku nejsou ¾ádné -hvìzdièky, pouze pomlèky. - -Èást stavového øádku v závorkách øíká, v jakých editaèních módech se -nacházíte. Implicitní mód je Fundamental, co¾ je ten, který momentálnì -pou¾íváte. Je pøíkladem hlavního módu ("major mode"). - -Emacs má celou øadu hlavních módù. Nìkteré z nich jsou urèeny pro -editaci rùzných programovacích jazykù a/nebo textù jako tøeba Lisp mód, -Text mód, atd. V libovolném okam¾iku je aktivní právì jeden hlavní mód a -jeho jméno lze nalézt ve stavovém øádku na místì, kde je teï -"Fundamental". - -Ka¾dý hlavní mód mìní chování nìkterých pøíkazù. Napøíklad existují -pøíkazy pro vytváøení komentáøù v programu, a proto¾e ka¾dý programovací -programovací jazyk má jinou pøedstavu o tom, jak má komentáø vypadat, -musí ka¾dý hlavní mód vkládat komentáøe jinak. Ka¾dý hlavní mód je -vlastnì jméno extended pøíkazu, kterým se do tohoto módu mù¾ete -pøepnout. Napøíklad M-x fundamental-mode je pøíkaz pro pøepnutí se do -Fundamental módu. - -Chystáte-li se editovat èeský text, jako tøeba tento soubor, -pravdìpodobnì byste mìli pou¾ít Text mód. ->> Napi¹te M-x text-mode. - -Nebojte se, ¾ádný z pøíkazù, které jste se nauèili, chování Emacsu nijak -významnì nezmìní. Mù¾ete si ale v¹imnout, ¾e M-f a M-b nyní pracují -s apostrofy jako se souèástmi slov. Pøedtím, ve Fundamental módu, M-f a -M-b pracovaly s apostrofy coby oddìlovaèi slov. - -Hlavní módy obvykle dìlají men¹í zmìny, jako byla tato: pøíkazy vìt¹inou -dìlají "toté¾", ale v ka¾dém hlavním módu pracují tro¹ku jinak. - -Dokumentaci k aktuálnímu hlavnímu módu si mù¾ete zobrazit stiskem C-h m. - ->> Jednou nebo nìkolikrát pou¾ijte C-u C-v, abyste tento øádek dostali - k vrcholu obrazovky. ->> Stisknìte C-h m, abyste vidìli, jak se Text mód li¹í od Fundamental - módu. ->> Stisknìte C-x 1 pro odstranìní dokumentace z obrazovky. - -Hlavní módy se nazývají hlavní proto, ¾e také existují vedlej¹í módy -(minor modes). Vedlej¹í módy nejsou alternativou k hlavním módùm, nýbr¾ -jejich malé modifikace. Ka¾dý vedlej¹í mód mù¾e být zapnut nebo vypnut -sám o sobì nezávisle na v¹ech ostatních vedlej¹ích módech a nezávisle na -hlavním módu. Tak¾e nemusíte pou¾ívat ¾ádný vedlej¹í mód nebo mù¾ete -pou¾ívat jeden vedlej¹í mód nebo libovolnou kombinaci nìkolika -vedlej¹ích módù. - -Jedním z velmi u¾iteèných vedlej¹ích módù, zejména pro editaci èeských -textù, je Auto Fill mód. Kdy¾ je tento mód zapnut, Emacs zalomí øádek -mezi dvìma slovy, kdykoliv vkládáte text a øádek se stane pøíli¹ -dlouhým. - -Auto Fill mód mù¾ete zapnout provedením M-x auto-fill-mode. -Je-li tento mód zapnut, mù¾ete jej vypnout provedením M-x -auto-fill-mode. Je-li mód vypnut, tento pøíkaz jej zapíná, -a je-li mód zapnut, tak jej tento pøíkaz vypíná. Øíkáme, ¾e tento -pøíkaz pøepíná ("toggles") tento mód. - ->> Napi¹te teï M-x auto-fill-mode. Pak vkládejte "asdf " stále - dokola tak dlouho, a¾ uvidíte, jak se vkládaný øádek rozdìlí na dva - øádky. Do textu musíte vkládat mezery proto, ¾e Auto Fill mód - zalamuje øádky pouze v mezerách. - -Okraj je obvykle nastaven na 70 znakù, ale mù¾ete to zmìnit pøíkazem -C-x f. Hodnotu okraje, kterou si pøejete, byste mìli pøedat jako -numerický argument. - ->> Napi¹te C-x f s argumentem 20. (C-u 2 0 C-x f). - Pak pi¹te nìjaký text a pozorujte, jak Emacs vyplòuje øádky po - 20 znacích. Pak nastavte okraj zpátky na 70 opìtovným pou¾itím - C-x f. - -Jestli¾e provedete zmìny uprostøed odstavce, Auto Fill mód jej -nepøeformátuje. -Pro pøeformátování odstavce stisknìte M-q (META-q) s kurzorem uvnitø -odstavce. - ->> Pøesuòte kurzor do pøedchozího odstavce a stisknìte M-q. - - -* VYHLEDÁVÁNÍ -------------- - -Emacs umí v textu vyhledávat øetìzce (tj. skupiny spojených znakù nebo -slov) smìrem vpøed nebo vzad. Hledání øetìzce je pøíkaz pøesunující -kurzor; pøesune kurzor na nejbli¾¹í místo, kde se tento øetìzec nachází. - -Vyhledávací pøíkaz Emacsu se li¹í od vyhledávacích pøíkazù vìt¹iny -editorù v tom smyslu, ¾e je "inkrementální". To znamená, ¾e vyhledávání -se provádí u¾ v okam¾iku, kdy zadáváte vyhledávací øetìzec. - -Pøíkaz pro zahájení hledání vpøed je C-s a pro hledání vzad C-r. -ALE POZOR! Nezkou¹ejte to je¹tì. - -Kdy¾ stisknete C-s, uvidíte v echo oblasti prompt "I-search". To vám -øíká, ¾e Emacs se nachází ve stavu, který se nazývá inkrementální hledání, -a èeká, a¾ mu zadáte, co chcete hledat. hledání ukonèí. - ->> Nyní zahajte hledání stiskem C-s. POMALU, písmeno po písmenu, pi¹te - slovo 'kurzor'. Po ka¾dém písmenu si v¹imnìte, co se dìje s kurzorem. - Teï jste vyhledali "kurzor" poprvé. ->> Stisknìte C-s znovu, abyste nalezli dal¹í výskyt "kurzor". ->> Nyní ètyøikrát stisknìte a pozorujte, jak se kurzor - pøesunuje. ->> Stisknìte pro ukonèení hledání. - -Vidìli jste, co se stalo? Emacs se v inkrementálním hledání pokou¹í -pøejít na dal¹í výskyt øetìzce, který jste dosud napsali. Chcete-li -pøejít na dal¹í výskyt 'kurzor', jednodu¹e stisknìte C-s znovu. -Jestli¾e u¾ ¾ádný takový výskyt není, Emacs pípne a øekne vám, ¾e -hledání momentálnì "selhává", C-g hledání ukonèí. - -POZNÁMKA: Na nìkterých systémech stisk C-s zpùsobí ztuhnutí -obrazovky a nevidíte ¾ádný dal¹í výstup z Emacsu. To znamená, ¾e -"vlastnost" operaèního systému zvaná "flow control" zachycuje C-s a -nepropustí jej k Emacsu. Pro odtuhnutí obrazovky stisknìte C-q. Pak -v sekci "Spontaneous Entry to Incremental Search" v manuálu Emacsu -vyhledejte radu, jak se vypoøádat s touto "vlastností". - -Jestli¾e uprostøed inkrementálního hledání stisknete , uvidíte, -¾e poslední znak v hledaném øetìzci zmizí a hledání se vrací na poslední -místo hledání. Pøedpokládejme napøíklad, ¾e jste napsali "c", abyste -na¹li první výskyt "k". Jestli¾e nyní stisknete "u", kurzor se pøesune na -první výskyt "ku". Teï stisknìte . To vyma¾e "u" z hledaného -øetìzce a kurzor se pøesune zpìt na první výskyt "k". - -Jestli¾e uprostøed hledání stisknete CONTROL nebo META znak (s nìkolika -výjimkami -- znaky, které jsou speciální v hledání, jako C-s a C-r), -hledání se ukonèí. - -C-s zahajuje hledání, které hledá jakýkoliv výskyt hledaného øetìzce ZA -aktuální pozicí kurzoru. Chcete-li nìco hledat v pøedcházejícím textu, -stisknìte C-r místo C-s. V¹e, co jsme øekli o C-s, platí také o C-r -kromì toho, ¾e smìr hledání je opaèný. - - -* VÍCE OKEN ------------ - -Jednou z pìkných vlastností Emacsu je to, ¾e mù¾e na obrazovce zobrazit -více oken souèasnì. - ->> Pøesuòte kurzor na tento øádek a stisknìte C-u 0 C-l. - ->> Teï stisknìte C-x 2, co¾ rozdìlí obrazovku na dvì okna. - Obì okna zobrazují tento tutoriál. Kurzor zùstává navrchu okna. - ->> Tisknìte C-M-v pro scrollování spodního okna. - (Nemáte-li skuteènou klávesu META, stisknìte ESC C-v.) - ->> Stisknìte C-x o ("o" jako "other") pro pøesun kurzoru do dolního okna. - ->> Pou¾ijte C-v a M-v ve spodním oknì pro jeho scrollování. - Pokraèujte ve ètení tìchto instrukcí v horním oknì. - ->> Znovu stisknìte C-x o pro pøesun kurzoru zpìt do horního okna. - Kurzor v horním oknì je pøesnì na místì, kde byl pùvodnì. - -Mù¾ete dále pou¾ívat C-x o pro pøepínání mezi okny. Ka¾dé okno má svoji -vlastní pozici kurzoru, ale jenom jedno okno kurzor skuteènì zobrazuje. -V¹echny obvyklé editaèní pøíkazy platí pro okno, ve kterém se nachází -kurzor. Toto okno nazýváme "aktivní okno" ("selected window"). - -Pøíkaz C-M-v je velmi u¾iteèný, jestli¾e v jednom oknì editujete text a -druhé okno pou¾íváte pouze pro pøehled. Mù¾ete kurzor nechávat stále -v oknì, kde editujete, a postupovat po druhém oknì pomocí C-M-v. - -C-M-v je pøíkladem CONTROL-META znaku. Máte-li skuteènou META klávesu, -mù¾ete vyvolat C-M-v pøidr¾ením obou kláves CTRL a META pøi stisku v. -Nezále¾í na tom, zda je prvnì stisknuta CTRL nebo META, proto¾e obì tyto -klávesy fungují jako modifikátory kláves, které tisknete. - -Pokud nemáte skuteènou META klávesu, mù¾ete místo ní pou¾ít ESC, na -poøadí zále¾í: musíte stisknout ESC a následnì CTRL-v; CTRL-ESC v by -nefungovalo. To proto, ¾e ESC je samostatný znak, nikoliv modifikátor. - ->> Stisknìte C-x 1 (v horním oknì), abyste se zbavili dolního okna. - -(Kdybyste C-x 1 stiskli v dolním oknì, odstranilo by to horní okno. -Chápejte tento pøíkaz jako "ponechej právì jedno okno -- to, ve kterém -zrovna jsem".) - -Nemusíte v obou oknech zobrazovat tentý¾ buffer. Jestli¾e pou¾ijete -C-x C-f pro vyhledání souboru v jednom z oken, druhé okno se nezmìní. -Mù¾ete vyhledávat soubory v obou oknech nezávisle. - -Zde je dal¹í zpùsob, jak vyu¾ít dvì okna ke zobrazení dvou rùzných vìcí: - ->> Stisknìte C-x 4 C-f následované jménem nìkterého z va¹ich souborù. - Dokonèete to pomocí . Vidíte zadaný soubor v dolním oknì. - Pøesunul se tam i kurzor. - ->> Stisknìte C-x o pro pøesun zpìt do horního okna a C-x 1 pro smazání - dolního okna. - - -* REKURZIVNÍ EDITAÈNÍ ÚROVNÌ ----------------------------- - -Obèas se dostanete do nìèeho, co se nazývá "rekurzivní editaèní úroveò" -("recursive editing level"). To je indikováno hranatými závorkami ve -stavovém øádku obklopujícími závorky okolo jména hlavního módu. -Napøíklad mù¾ete vidìt [(Fundamental)] místo (Fundamental). - -Abyste se dostali z rekurzivní editaèní úrovnì, stisknìte ESC ESC ESC. -To je obecný "vyskakovací" pøíkaz. Mù¾ete jej pou¾ít té¾ pro odstranìní -nìkterých oken a vyskoèení z minibufferu. - ->> Stisknìte M-x, abyste se dostali do minibufferu; pak stisknìte - ESC ESC ESC, abyste se z nìj dostali ven. - -Z rekurzivní editaèní úrovnì nemù¾ete vyskoèit pomocí C-g. To proto, ¾e -C-g je vyu¾íváno pro ru¹ení pøíkazù a argumentù UVNITØ rekurzivní -editaèní vrstvy. - - -* ZÍSKÁNÍ DAL©Í NÁPOVÌDY ------------------------- - -V tomto tutoriálu jsme se pokusili poskytnout vám dostatek informací, -abyste mohli zaèít Emacs pou¾ívat. V Emacsu je toho tolik, ¾e by bylo -nemo¾né to zde v¹echno objasnit. Nicménì se o Emacsu mù¾ete nauèit -více, proto¾e má mnoho u¾iteèných vlastností. Emacs nabízí pøíkazy pro -ètení dokumentace svých pøíkazù. V¹echny tyto "help" pøíkazy -zaèínají znakem CONTROL-h, který se nazývá "help znak". - -Pro pou¾ití vlastností nápovìdy stisknìte znak C-h a pak znak øíkající, -jaký druh nápovìdy ¾ádáte. Jste-li OPRAVDU ztraceni, stisknìte C-h ? a -Emacs vám sdìlí, jaké druhy nápovìdy vám mù¾e poskytnout. Jestli¾e -jste stiskli C-h a pak jste se rozhodli, ¾e ¾ádnou nápovìdu nechcete, -jednodu¹e to zru¹te stiskem C-g. - -(Na nìkterých poèítaèích je význam znaku C-h zmìnìn. To by opravdu -nemìlo být obecným nastavením pro v¹echny u¾ivatele, tak¾e máte právo -stì¾ovat si systémovému administrátorovi. Do té doby, jestli¾e C-h -nezobrazuje hlá¹ení o nápovìdì v dolní èásti obrazovky, zkuste místo -toho pou¾ívat klávesu F1 nebo M-x help RET.) - -Nejzákladnìj¹í help pøíkaz je C-h c. Stisknìte C-h, znak c a klávesový -pøíkaz; Emacs pak zobrazí velmi struèný popis pøíkazu. - ->> Stisknìte C-h c C-p. - Hlá¹ení by mìlo vypadat asi takto - - C-p runs the command previous-line - -To vám sdìluje "jméno funkce". Jména funkcí jsou pou¾ívána zejména pro -konfiguraci a roz¹iøování Emacsu. Ale proto¾e jména funkcí jsou volena -tak, aby naznaèovala, co odpovídající pøíkaz dìlá, mohou slou¾it také -jako velmi struèná dokumentace -- dostateèná k tomu, aby vám pøipomenula -pøíkazy, které jste se ji¾ nauèili. - -Víceznakové pøíkazy jako C-x C-s a (pokud nemáte META, EDIT ani ALT -klávesu) v jsou po C-h c povoleny také. - -K získání více informací o pøíkazu místo C-h c pou¾ijte C-h k. - ->> Stisknìte C-h k C-p. - -To zobrazí dokumentaci k funkci a její jméno v emacsovém oknì. A¾ -výstup pøeètete, stisknìte C-x 1, abyste se textu nápovìdy zbavili. -Nemusíte to dìlat hned. Mù¾ete chvíli editovat a nahlí¾et do textu -nápovìdy a teprve pak stisknout C-x 1. - -Zde jsou dal¹í u¾iteèné C-h volby: - - C-h f Popis funkce. Zadáváte jméno funkce. - ->> Zkuste napsat C-h f previous-line. - To vypí¹e ve¹keré informace, které Emacs má o funkci implementující - pøíkaz C-p. - -Podobný pøíkaz C-h v zobrazí dokumentaci promìnné, její¾ hodnotu -mù¾ete nastavit a zmìnit tím chování Emacsu. Jméno promìnné zadáte, a¾ -se na nì Emacs zeptá. - - C-h a Pøíkazové apropos. Zadejte klíèové slovo a Emacs vypí¹e - v¹echny pøíkazy, jejich¾ jména obsahují toto klíèové - slovo. V¹echny tyto pøíkazy mohou být vyvolány pomocí - META-x. Pro nìkteré pøíkazy pøíkazové apropos vypí¹e - také jedno nebo dvouznakové sekvence, které provádìjí - tentý¾ pøíkaz. - ->> Napi¹te C-h a file. - -To zobrazí v druhém oknì seznam v¹ech M-x pøíkazù obsahujících "file" ve -svém názvu. Znakové pøíkazy jako C-x C-f uvidíte vypsané vedle -odpovídajících jmen pøíkazù jako find-file. - ->> Stisknìte C-M-v pro posun okna s nápovìdou. Proveïte to nìkolikrát. - ->> Stisknìte C-x 1 pro smazání okna s nápovìdou. - - C-h i Ètení on-line manuálù (té¾ Info). Tento pøíkaz - vás pøepne do speciálního bufferu s názvem `*info*', - ve kterém mù¾ete èíst on-line manuály pro balíky - nainstalované na va¹em systému. Pokud stisknete - m emacs mù¾ete si napøíklad pøeèíst manuál - k Emacsu. Pokud jste dosud nikdy nepou¾ívali Info, - stisknìte ? a Emacs vám pøedstaví hlavní mo¾nosti - módu pro Info. A¾ si tyto mo¾nosti prostudujete, - mìli byste pou¾ívat Info manuál Emacsu jako svoji - primární dokumentaci. - - -* ZÁVÌR -------- - -Nezapomeòte, Emacs ukonèíte provedením pøíkazu C-x C-c. Pro doèasný -odskok do shellu, ze kterého se do Emacsu mù¾ete opìt vrátit, -pou¾ijte C-z. - -Zámìrem tohoto tutoriálu je být srozumitelný v¹em novým u¾ivatelùm, tak¾e -narazíte-li na nìco nejasného, tak neusedejte a neklaïte to za vinu sobì --- stì¾ujte si! - - -KOPÍROVÁNÍ ----------- - -Tento tutoriál vychází z dlouhé øady emacsových tutoriálù zahájené -tutoriálem napsaným Stuartem Cracraftem pro pùvodní Emacs. - -Tato verze tutoriálu je, podobnì jako GNU Emacs, chránìna copyrightem a -je ¹íøena se svolením distribuovat kopie za jistých podmínek: - -Copyright (C) 1985, 1996, 1998, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 Free Software Foundation, Inc. - - Ka¾dému je zaruèeno právo vytváøet a distribuovat pøesné kopie tohoto - dokumentu tak, jak jej obdr¾el, na jakémkoliv médiu, s tím, ¾e bude - zachována tato poznámka o autorství a poznámka o svolení a ¾e - distributor zaruèuje pøíjemci právo na dal¹í redistribuci povolenou - touto poznámkou. - - Je zaruèeno právo distribuovat modifikované verze tohoto dokumentu - nebo jeho èástí pod vý¹e uvedenými podmínkami za pøedpokladu, ¾e - obsahuje jasné poznámky uvádìjící, kdo provedl poslední modifikace. - -Podmínky pro kopírování Emacsu samotného jsou slo¾itìj¹í, av¹ak ve -stejném duchu. Pøeètìte si prosím soubor COPYING a pak pøedávejte kopie -GNU Emacsu svým pøátelùm. Pomáhejte potírat softwarovou obstrukci -("vlastnictví") pou¾íváním, psaním a sdílením free softwaru! - -;;; Local Variables: -;;; coding: iso-latin-2 -;;; End: - -;;; arch-tag: 479ef577-3d4d-4384-aeea-9fe79d5e89ca diff --git a/etc/TUTORIAL.de b/etc/TUTORIAL.de deleted file mode 100644 index abdc1fec6ab..00000000000 --- a/etc/TUTORIAL.de +++ /dev/null @@ -1,1490 +0,0 @@ -Einführung in Emacs. Siehe Dateiende für Vervielfältigungsbedingungen. - -Emacs-Befehle beinhalten im allgemeinen die CONTROL-Taste (manchmal -auch als CTRL, CTL oder STRG beschriftet) sowie die META-Taste (auch -EDIT oder ALT genannt). Folgende Abkürzungen werden verwendet: - - C- bedeutet, daß die CONTROL-Taste gedrückt sein muß, - während man das Zeichen eingibt. Beispiel: - C-f Halten Sie die CONTROL-Taste gedrückt und drücken - Sie dann die f-Taste. - M- bedeutet, daß die META-Taste gedrückt sein muß, - während man das Zeichen eingibt. Statt dessen - kann man auch die ESC-Taste und anschließend - drücken (hintereinander, nicht gleichzeitig). Beispiel: - M-f Halten Sie die META-Taste gedrückt und geben - Sie den Buchstaben (klein) f ein. - -`>>' am linken Rand ist ein Hinweis, einen Befehl auszuprobieren: -<> -[Leerzeilen befinden sich hier aus didaktischen Gründen. Fortsetzung unten.] ->> Drücken Sie C-v, um zur nächsten Bildschirmseite vorzublättern. - Ab jetzt sollten Sie das stets tun, wenn Sie eine Seite fertig - gelesen haben. - -Beachten Sie bitte, daß beim Blättern die untersten zwei Zeilen der -vorigen Bildschirmseite als die zwei obersten Zeilen der neuen Seite -erscheinen, um eine gewisse Kontinuität während des Lesens zu -ermöglichen. - -Wichtig: Sie können Emacs mit der Befehlsfolge C-x C-c beenden. - -Im weiteren wird die ESC-Taste mit bezeichnet. - -[Falls die deutschen Umlaute nicht korrekt auf dem Bildschirm -erscheinen, lesen Sie bitte den Abschnitt `MULE' kurz vor Ende dieser -Einführung.] - -Zunächst müssen Sie wissen, wie man sich innerhalb eines Dokuments -bewegen kann. Wie man eine Bildschirmseite vorwärts blättert, wissen -Sie schon (C-v). Mit M-v blättern Sie eine Bildschirmseite zurück -(halten Sie die META-Taste gedrückt und geben Sie v ein, oder drücken -Sie zuerst und anschließend v). - ->> Probieren Sie einige Male M-v und C-v aus. - -[Auf den meisten Tastaturen bewirkt die PgUp-Taste (`page up', auch -mit `Bild' und einem Aufwärtspfeil beschriftet) dasselbe wie M-v bzw. -die PgDn-Taste (`page down', `Bild' mit Abwärtspfeil) dasselbe wie -C-v.] - - -* ZUSAMMENFASSUNG ------------------ - -Die folgenden Befehle sind nützlich, um Text bildschirmweise zu -betrachten: - - C-v eine Seite vorwärts blättern - M-v eine Seite zurück blättern - C-l lösche den Bildschirm und stelle den ganzen Text - erneut dar, wobei der Text rund um den Cursor zur - Mitte des Bildschirms bewegt wird. - (`l' ist der Buchstabe `klein L', nicht die Ziffer 1.) - - ->> Lokalisieren Sie den Cursor und merken sich den Text in dessen - Umgebung. Drücken Sie C-l. Der Cursor ist jetzt ungefähr in der - (vertikalen) Bildschirmmitte, und er hat seine Position relativ zum - Text nicht geändert. - - -* KONTROLLE DES CURSORS ------------------------ - -Text bildschirmweise anzuschauen ist sicherlich praktisch, aber wie -kommt man zu einer bestimmten Position innerhalb des gerade -dargestellten Textes? - -Es gibt verschiedene Möglichkeiten. Die Grundbefehle sind C-p, C-b, -C-f und C-n. Dem folgenden Diagramm können Sie entnehmen, welcher -Befehl den Cursor wohin bewegt: - - - vorige Zeile, C-p - : - : - zurück, C-b .... momentane Cursor-Position .... vorwärts, C-f - : - : - nächste Zeile, C-n - - -[Die Buchstaben p, b, f und n stehen für die englischen Worte -`previous', `backward', `forward' und `next'.] - ->> Bewegen Sie den Cursor zur Zeile in der Mitte des Diagramms mittels - C-n oder C-p. Geben Sie dann C-l ein, und das ganze Diagramm ist - zentriert auf dem Bildschirm. - -Normalerweise sind die vier Pfeiltasten mit den Cursor-Grundbefehlen -belegt. Falls nicht, sollten Sie Ihre Terminalkonfiguration -überprüfen. Wenn z.B. Ihr Terminalprogramm (mit dem Sie sich über -eine Modem-Leitung in Ihrem Rechenzentrum oder Internet-Provider -eingewählt haben) ein vt100-Terminal emuliert, sollte die -Umgebungsvariable `TERM=vt100' gesetzt sein. Unter dem X Window -System sollten die Pfeiltasten immer richtig belegt sein. - -Es ist von großer Wichtigkeit, sich mit obigen Cursor-Befehlen -vertraut zu machen, da man sie ständig braucht (besonders wenn man mit -Terminal-Emulationen arbeitet, welche die Pfeiltasten nicht -unterstützen). - ->> Drücken Sie ein paarmal C-n, um den Cursor zu dieser Zeile zu - bewegen. - ->> Bewegen Sie den Cursor vorwärts mittels C-f und nach oben mit C-p. - Beobachten Sie, was C-p tut, wenn der Cursor sich in der - Zeilenmitte befindet. - -Jede Textzeile endet mit einem Zeilenvorschub-Zeichen (`newline'), das -sie von der folgenden Zeile trennt. - ->> Probieren Sie C-b am Anfang einer Zeile. Der Cursor sollte zum - Ende der vorigen Zeile springen: C-b überspringt - Zeilenvorschub-Zeichen. - -C-f überspringt Zeilenvorschub-Zeichen analog zu C-b. - ->> Drücken Sie noch ein paarmal C-b, um ein Gefühl für den Cursor zu - bekommen. Bewegen sie anschließend den Cursor mittels C-f zum Ende - der Zeile. Geben Sie jetzt noch einmal C-f ein, um zur nächsten - Zeile zu springen. - ->> Falls die Pfeiltasten funktionieren, können Sie mit diesen das - gleiche probieren und üben. - -Wenn Sie den Cursor entweder nach oben oder nach unten über den -Bildschirmrand hinaus bewegen wollen, dann wird statt dessen Text in -den Bildschirm hineingeschoben. Dies nennt man `scrolling'. Auf -diese Weise verhindert Emacs, daß der Cursor je den sichtbaren Bereich -verläßt. - ->> Versuchen Sie den Cursor über den unteren Bildschirmrand hinaus zu - bewegen und beobachten Sie, was geschieht. - -Wenn zeichenweise Cursorbewegung zu langsam ist, dann kann man den -Cursor wortweise bewegen. M-f (META-f) bewegt den Cursor ein Wort -vor, und M-b ein Wort zurück. - ->> Geben Sie ein paarmal M-f und M-b ein. - -Befinden Sie sich in der Mitte eines Wortes, bewegt M-f den Cursor zum -Ende des Wortes. Befinden Sie dagegen sich in einem Wortzwischenraum, -bewegt M-f den Cursor zum Ende des nächsten Wortes. M-b arbeitet -analog, aber in die entgegengesetzte Richtung. - ->> Kombinieren Sie M-f und M-b mit den Befehlen C-f und C-b, um die - Cursorbewegung von verschiedenen Positionen aus innerhalb und - zwischen Wörtern zu beobachten. - -Beachten Sie die Parallele zwischen C-f und C-b einerseits und M-f und -M-b andererseits. Sehr oft werden mit `META-' beginnende Befehle für -Operationen verwendet, die mit Sprache zu tun haben (Wörter, Sätze, -Absätze), während CONTROL-Befehle mit den Text-Basiseinheiten -operieren, unabhängig davon, was Sie gerade editieren (Zeichen, -Buchstaben, Zeilen etc). - -Ein anderes Beispiel: C-a und C-e bewegt den Cursor zum Anfang -bzw. zum Ende einer Zeile, wohingegen M-a und M-e den Cursor zum -Anfang bzw. zum Ende eines Satzes springen läßt. - ->> Probieren Sie ein paarmal C-a und C-e. - Probieren Sie dann ein paarmal M-a und M-e. - -Beachten Sie, daß ein wiederholtes Drücken von C-a nichts bewirkt, -dagegen M-a den Cursor satzweise zurücksetzt. Hier endet die -Analogie, jedoch ist das Verhalten dieser Befehle leicht -nachvollziehbar. - -[Anmerkung 1: Im Deutschen kommt laut Duden nach einem Punkt nur ein -Leerzeichen. Falls Sie aber Texte schreiben, die weiter verarbeitet -werden (z.B. durch ein Textformatierprogramm wie TeX), dann sollten -Sie sich angewöhnen, nach einem Satzende stets ZWEI Leerzeichen zu -lassen. Dadurch ermöglichen Sie u.a., daß Emacs zwischen -Abkürzungspunkten und dem Satzende unterscheiden kann, was für -Textsuche in wissenschaftlichen Texten oft vorteilhaft ist.] - -[Anmerkung 2: Die Tasten `Home' (Pos1) und `End' (Ende) verhalten sich -standardmäßig wie C-a und C-e, wie wohl die meisten Benutzer -annehmen.] - -Die aktuelle Position des Cursors wird im Englischen auch `point' -(Punkt) genannt. Beachten Sie bitte, daß sich `point' stets -*zwischen* zwei Zeichen befindet, nämlich genau vor dem -Cursor-Kästchen. - -Hier ist eine Zusammenfassung von einfachen Bewegungsbefehlen für den -Cursor einschließlich der Wort- und Satzbewegungsbefehle: - - C-f ein Zeichen vorwärts (auch `Pfeil rechts'-Taste) - C-b ein Zeichen zurück (auch `Pfeil links'-Taste) - - M-f ein Wort vorwärts - M-b ein Wort zurück - - C-n eine Zeile vorwärts (auch `Pfeil hinunter'-Taste) - C-p eine Zeile zurück (auch `Pfeil hinauf'-Taste) - - C-a zum Zeilenanfang - C-e zum Zeilenende - - M-a zum Satzanfang - M-e zum Satzende - ->> Probieren Sie diese Befehle jetzt ein paarmal zur Übung. - Es sind die meistverwendeten Befehle innerhalb Emacs. - -Zwei weitere wichtige Befehle für die Cursorbewegung sind M-< (META -Kleiner-als) und M-> (META Größer-als), welche zum Anfang bzw. zum -Ende des ganzen Textes springen. - -Bei den meisten Terminal-Tastaturen befindet sich `<' über dem Komma, -d.h., Sie müssen zusätzlich die SHIFT-Taste verwenden (der Umschalter -ist auf deutschen Tastaturen normalerweise mit einem dicken -Aufwärtspfeil markiert). Ohne SHIFT-Taste würden Sie M-Komma -eingeben. - ->> Testen Sie nun M-<, um an den Anfang der Einführung - zu gelangen. Verwenden Sie dann C-v, um wieder hierher zu kommen. - -Ein weiteres, oft benütztes Konzept in Emacs ist die Markierung -(`mark'). Der Grundbefehl dazu ist C-SPC (oder gleichwertig C-@, -`SPC' bezeichnet die Leertaste, engl. `space key'); mit ihm kann eine -Markierung gesetzt werden. Mit C-u C-SPC kommt man zu dieser -Markierung zurück, falls man den Cursor inzwischen weiterbewegt hat. -Viele Befehle, die große Sprünge in einem Text ausführen (so auch M-> -und M-<) setzen eine Markierung implizit, was in der untersten Zeile -(dem Echobereich, s.u.) als `Mark set' angezeigt wird. - ->> Verwenden Sie jetzt M->, um zum Ende der Einführung - zu springen und benützen Sie C-u C-SPC, um hierher zurückzukehren. - -Markierungen werden in einem Ring gespeichert (d.h., die zuletzt in -den Ring eingehängte Markierung wird als erste zurückgeholt und wie -bei einem Schlüsselbund am Ende wieder in den Ring eingefügt). Mit -C-u C-SPC können Sie Stück für Stück alle Markierungen im -Markierungsring ansteuern. - ->> Drücken Sie hier C-SPC, gehen Sie dann zu verschiedenen Positionen - innerhalb dieses Dokuments und verwenden Sie C-SPC, um weitere - Markierungen zu setzen. Geben Sie anschließend C-u C-SPC so oft - ein, bis Sie wieder an dieser Position angelangt sind. - -Die meisten Emacs-Befehle akzeptieren ein numerisches Argument, das in -der Regel als Wiederholungszähler dient (d.h., wie oft der Befehl -ausgeführt werden soll). Eingegeben wird diese Zahl mit C-u, dann die -Ziffern und dann der Befehl selbst. Alternativ können Sie die -META-Taste (bzw. EDIT- oder ALT-Taste) gedrückt halten und dann die -Ziffern des Wiederholungszählers eingeben. Wir empfehlen allerdings, -die C-u-Methode zu lernen, da sie mit jedem Terminal funktioniert. -Das numerische Argument wird auch `Präfix-Argument' genannt, da man es -vor dem zugehörigen Befehl eingibt. - -Beispiel: C-u 8 C-f bewegt den Cursor acht Zeichen vorwärts. - ->> Versuchen Sie, C-n oder C-p mit einem numerischen Argument zu - verwenden und bewegen Sie den Cursor mit nur einem Befehl ungefähr - hierher. - -Wie gesagt, die meisten Befehle verwenden das numerische Argument als -Wiederholungszähler, jedoch nicht alle. Einige davon, die allerdings -noch nicht besprochen wurden, benützen es als Flag (`Flagge'), d.h., -allein das Vorhandensein eines Präfix-Arguments, unabhängig von seinem -Wert, signalisiert dem Befehl, etwas anderes zu tun. - -C-v und M-v sind weitere Ausnahmen. Gibt man diesen Befehlen einen -Parameter n, dann verschieben sie den Bildschirminhalt nicht um eine -ganze Bildschirmseite, sondern um n Zeilen. Beispiel: C-u 4 C-v -verschiebt den Bildschirminhalt um vier Zeilen. - ->> Versuchen Sie jetzt C-u 8 C-v auszuführen. - -Der Bildschirminhalt sollte jetzt um acht Zeilen nach oben verschoben -sein. Wollen Sie ihn nach unten verschieben, dann geben Sie M-v mit -einem numerischen Argument ein. - -Wenn Sie eine graphische Oberfläche wie X oder MS-Windows verwenden, -dann befindet sich ein schmaler, langgezogener rechteckiger Bereich auf -der linken oder rechten Seite des Emacs-Fensters. Dieser Bereich -wird Scrollbar genannt (`Verschiebungsbalken'). Sie können Text -verschieben, indem Sie mit der Maus auf den Scrollbar klicken. - ->> Drücken Sie die mittlere Taste (oder die linke und rechte Taste - gleichzeitig, falls Sie eine Zwei-Tasten-Maus verwenden) innerhalb - des Scrollbar-Bereichs. Das sollte den Text zu einer Position - verschieben, die davon abhängt, wie weit oben oder unten Sie - geklickt haben. - ->> Bewegen Sie nun die Maus auf und ab, während Sie die mittlere Taste - gedrückt halten. Sie werden sehen, daß der Text entsprechend der - Mausbewegungen nach oben oder unter verschoben wird. - - -* WENN EMACS NICHT MEHR REAGIERT --------------------------------- - -Wenn Emacs `hängt', also auf keine Ihrer Eingaben reagiert, drücken -Sie C-g. Sie können C-g auch dazu benützen, einen Befehl zu stoppen, -der zu lange braucht. - -Eine andere Anwendung ist, einen teilweise eingegebenen Befehl zu -verwerfen, z.B. ein irrtümlich eingetipptes numerisches Argument zu -entfernen. - ->> Geben Sie C-u 100 ein, um ein numerisches Argument 100 zu - spezifizieren, und drücken Sie dann C-g. Wenn Sie jetzt C-f - ausführen, dann bewegt sich der Cursor genau ein Zeichen vorwärts, - da Sie ja das numerische Argument mittels C-g gelöscht haben. - -Wenn Sie aus Versehen gedrückt haben, können Sie dies ebenfalls -mit C-g rückgängig machen. - - -* DEAKTIVIERTE BEFEHLE ----------------------- - -Ein paar Befehle von Emacs sind deaktiviert (`disabled'), damit -Anfänger sie nicht unabsichtlich benutzen. - -Wenn Sie einen solchen Befehl eingeben, dann gibt Emacs eine Meldung -aus und fragt Sie, ob Sie ihn wirklich ausführen wollen. - -Antworten Sie mit y (für `yes') oder drücken Sie die Leertaste, wenn -Sie den Befehl ausführen wollen, sonst mit n. - ->> Geben Sie C-x C-l ein (das ist ein deaktivierter Befehl) und - drücken Sie n als Antwort auf die Frage. - - -* FENSTER ---------- - -Emacs kann mehrere Fenster (`windows') haben, von denen jedes seinen -eigenen Text darstellt. Später erklären wir, wie man mit Fenstern -umgeht. Hier wollen wir nur erklären, wie man ein (vielleicht -irrtümlich erzeugtes) Fenster wieder entfernt und zum normalen -Ein-Fenster-Editieren zurückkommt. Der Befehl ist einfach: - - C-x 1 Ein Fenster (d.h., schließe alle anderen Fenster) - -Das ist C-x gefolgt von der Ziffer 1. C-x 1 expandiert das Fenster, -in dem der Cursor sich befindet, sodaß es den ganzen Bildschirm -erfaßt. Alle anderen Fenster werden gelöscht. - -[Anmerkung: Emacs verwendet das Wort Fenster (`windows') in einem -anderen Sinn, als Sie es vielleicht gewöhnt sind. Wenn Sie einen -Textbildschirm vor sich haben, dann ist die Terminologie eindeutig. -Wenn Sie allerdings eine graphische Oberfläche benutzen, dann -bezeichnet ein Emacs-Fenster einen Teilbereich des Fensters (von Ihrer -graphischen Oberfläche erzeugt), in dem Emacs läuft, in völliger -Analogie zum Textmodus. Für (graphische) Fenster im herkömmlichen -Sinn verwenden die Emacs-Entwickler den Ausdruck Rahmen (`frame').] - ->> Bewegen Sie den Cursor zu dieser Zeile und geben Sie C-u 0 C-l ein. - ->> Drücken Sie jetzt C-h k C-f. - Beachten Sie, wie das Fenster schrumpft und ein neues dazukommt, - welches die (englische) Dokumentation des C-f Befehls anzeigt. - ->> Geben Sie jetzt C-x 1 ein. Das Dokumentationsfenster verschwindet - wieder. - - -* EINFÜGEN UND LÖSCHEN ----------------------- - -Wenn Sie Text einfügen wollen, dann geben Sie ihn einfach ein. -Sichtbare Zeichen, z.B. A, 7, * usw. werden als Text von Emacs sofort -eingefügt. Drücken Sie (die Zeilenvorschubtaste, meistens -mit `Enter' oder nur mit einem Rückwärts-Hakenpfeil beschriftet), um -ein Zeilenvorschubzeichen einzufügen. - -Sie können das zuletzt eingegebene Zeichen löschen, indem Sie -drücken. ist einer Taste auf der Tastatur zugeordnet, die -mit `Del' oder `Entf' beschriftet ist. In manchen Fällen dient die -Backspace-Taste (oft auch nur als Rückwärtspfeil beschriftet) als -, aber nicht immer! - -Allgemein gesprochen löscht das Zeichen unmittelbar vor der -aktuellen Cursorposition. - -[Beachten Sie, daß ein logischer Befehlsname ist, der auf die -jeweilige Tastatur abgebildet wird. Lesen Sie im Abschnitt `Rebinding -Keys in Your Init File' des Emacs-Handbuches nach, wie Sie -gegebenenfalls die Tastaturbelegung verändern können.] - ->> Probieren Sie das jetzt aus: Geben Sie ein paar Zeichen ein und - löschen Sie sie wieder mit . Sie brauchen sich keine - Sorgen zu machen, dieses Dokument zu verändern: Was Sie hier lesen, - ist nur eine (persönliche) Kopie des originalen Dokuments. - -Wenn eine Textzeile zu lang wird für eine Bildschirmzeile, dann wird -sie auf einer zweiten Bildschirmzeile `fortgesetzt'. Ein -`Backslash'-Zeichen (`\') bzw. ein kleiner gebogener Pfeil (bei -graphischen Oberflächen) am rechten Rand verdeutlicht das. - ->> Fügen Sie Text ein, bis Sie den rechten Rand erreicht haben. Fügen - Sie weiter Text ein. Beobachten Sie, wie eine Fortsetzungszeile - erscheint. - ->> Verwenden Sie so oft, bis die Textzeile wieder auf eine - Bildschirmzeile paßt. Die Fortsetzungszeile verschwindet wieder. - -Sie können das Zeilenvorschubzeichen wie jedes andere Zeichen löschen: -Die Zeilen vor und nach ihm werdan dann zu einer zusammengehängt. Ist -diese länger als die Bildschirmbreite, erscheint eine -Fortsetzungszeile. - ->> Bewegen Sie den Cursor zum Anfang der Zeile und geben Sie - ein: Die momentane Zeile wird an die vorige angehängt. - ->> Geben Sie ein, um wieder ein Zeilenvorschubzeichen - einzufügen. - -Denken Sie daran, daß die meisten Emacs-Befehle mit einem -Wiederholungszähler aufgerufen werden können. Tun Sie das mit einem -Textzeichen, dann wird es entsprechend dem numerischen Parameter -wiederholt. - ->> Drücken Sie C-u 8 *, und es wird ******** eingefügt. - -Bis jetzt kennen Sie die Grundbefehle, um Text in Emacs einzugeben und -Fehler zu korrigieren -- fast analog zu den Bewegungsbefehlen ist es -möglich, ganze Wörter, Sätze oder Zeilen zu löschen: - - lösche ein Zeichen vor dem Cursor - C-d lösche das Zeichen unter dem Cursor - - M- lösche bis zum (nächsten) Wortanfang unmittelbar - vor dem Cursor - M-d lösche bis zum (nächsten) Wortende nach - (bzw. unter) dem Cursor - - C-k lösche von momentaner Cursorposition bis zum Ende - der Zeile - M-k lösche bis zum nächsten Satzende nach - (bzw. unter) dem Cursor - -Beachten Sie bitte, daß je nach Tastaturbelegung die Del- -(Entf-) oder die Backspace- (Rückwärtspfeil-) Taste sein kann. - -Eine andere, einheitliche Methode zum Löschen von Text ist das -Befehlspaar C-@ (oder C-SPC) und C-w. Gehen sie zum Anfang des zu -löschenden Textes und drücken Sie C-@ oder C-SPC. Gehen Sie dann zum -Ende des zu löschenden Textes und drücken Sie C-w, um ihn zu -entfernen. - ->> Bewegen Sie den Cursor zum Buchstaben `E' am Anfang des letzten - Absatzes. ->> Drücken Sie C-SPC. Emacs sollte die Meldung `Mark set' am unteren - Bildschirmrand zeigen. ->> Bewegen Sie den Cursor zum Buchstaben `A' in der zweiten Zeile des - letzten Absatzes. ->> Geben Sie C-w ein. Der ganze Text, beginnend mit dem `E' und - endend vor dem `A', ist nun gelöscht. - -Löschen Sie mehr als ein Zeichen auf einmal, dann speichert Emacs den -gelöschten Text, damit Sie ihn bei Bedarf wieder zurückholen können. -Einfügen von bereits gelöschtem Text wird im englischen Dokumentation -von Emacs als `yanking' (wörtlich `herausreißen') bezeichnet. Sie -können den gelöschten Text an einer beliebigen Stelle wieder -einzufügen. Solange Sie nichts neues löschen, steht Ihnen dieser -gelöschte Textteil immer wieder zu Verfügung. Der Befehl dazu ist C-y -(das Ypsilon steht für `yank'). - -Emacs unterscheidet zwei Klassen von Löschbefehlen (was man im -Deutschen leider nicht gut wiedergeben kann): `killing' (umbringen) -und `deleting' (löschen). Wenn man sich vorstellt, daß `yanking' den -Begriff `von den Toten erwecken' darstellt, dann hat man ungefähr eine -Vorstellung von der Metapher -- Von einem `kill'-Befehl gelöschter -Text wird gespeichert und kann bei Bedarf mit C-y zurückgeholt -werden. Von einem `delete'-Befehl entfernter Text (in der Regel -einzelne Zeichen, leere Zeilen und Zwischenräume) wird nicht extra -gespeichert und kann daher auch nicht zurückgeholt werden. - ->> Bringen Sie den Cursor an den Anfang einer nicht-leeren Zeile und - geben Sie C-k ein, um die Zeile zu löschen. - ->> Geben Sie C-k ein zweites Mal ein. Nun wird der Zeilenvorschub - ebenfalls entfernt. - -Das letzte Beispiel zeigt, daß ein einmaliges Ausführen von C-k den -Zeileninhalt löscht, und daß ein nochmaliger C-k-Befehl die Zeile -selbst löscht. Ein numerisches Argument für C-k wird speziell -behandelt: es löscht die angegebene Anzahl von Zeilen UND die -Zeilenvorschübe: C-u 2 C-k löscht zwei Zeilen komplett; zweimal C-k -löscht dagegen nur eine Zeile. - -Wie schon erwähnt, bringt C-y den zuletzt gelöschten (`gekillten') -Text zurück -- man kann diesen Text einfügen, wo man will: an der -ursprünglichen Stelle, an einer anderen Stelle, oder sogar in einer -anderen Datei. Mehrmaliges Ausführen von C-y fügt den Text mehrmals -ein. - ->> Probieren Sie jetzt C-y, um diesen Effekt zu sehen. - -Führen Sie C-k mehrmals hintereinander aus, dann wird der so -gelöschte Text auf einmal gespeichert; C-y bringt dann den gesamten -Text zurück. - ->> Drücken Sie mehrmals C-k. - -Holen Sie jetzt den Text `von den Toten' zurück: - ->> Drücken Sie C-y. Bewegen Sie dann den Cursor ein paar Zeilen nach - unten und drücken Sie C-y erneut. Der eben eingefügte Text wird - noch einmal an anderer Stelle kopiert. - -Wie können Sie gelöschten Text wieder einfügen, wenn Sie in der -Zwischenzeit noch etwas anderes `gekillt' haben? C-y würde das -zuletzt gelöschte Textstück zurückholen, was aber nicht das gewünschte -ist. Verwenden Sie nun M-y (unmittelbar nach der erstmaligen -Ausführung von C-y), um den gerade mit C-y eingefügten Textteil durch -ein früher gelöschtes Textstück zu ersetzen. Durch wiederholtes -Betätigen von M-y kommen immer ältere gelöschte Textteile zum -Vorschein. Haben Sie das gewünschte gefunden, dann brauchen Sie -nichts weiter zu tun. Lassen Sie den eingefügten Text so wie er ist -und setzen Sie das Editieren fort. - -Drücken Sie M-y immer weiter, dann kommen Sie irgendwann wieder an den -Anfangspunkt zurück (Emacs zeigt Ihnen dann wieder das zuletzt -gelöschte Textfragment), haben also den gesamten Löschring -durchgesehen. - ->> Löschen Sie eine Zeile, bewegen Sie den Cursor zu einer anderen - Position und löschen Sie eine weitere Zeile. - Drücken Sie dann C-y, um die zweite gelöschte Zeile zurückzuholen. - Drücken Sie jetzt M-y, und die erste gelöschte Zeile erscheint - statt der zweiten. - Führen Sie nun ein paar weitere M-y-Befehle aus und beobachten Sie - das Ergebnis. Wiederholen Sie das solange, bis die zweite Zeile - wieder erscheint. - Wenn Sie wollen, dann können Sie M-y mit positiven oder negativen - Argumenten aufrufen, um direkt zu einem bestimmten Eintrag im - Löschring zu kommen. - -Unter dem X Window System besteht auch die Möglichkeit, mit der linken -Maustaste einen Textteil zu markieren (er erscheint dann normalerweise -grau unterlegt). Der Befehl C-w löscht diesen markierten Textteil (in -Emacs auch Region genannt) und fügt ihn in den Löschring ein. - -Dasselbe geht auch ohne Maus: bewegen Sie den Cursor zum Beginn des zu -löschenden Textteils, drücken Sie C-SPC, um eine Markierung für den -Beginn einer Region zu setzen, gehen Sie dann zum Ende des zu -löschenden Textes und drücken Sie C-w. - -Der lange Name für C-w ist kill-region (weiter unten wird erklärt, wie -man Befehle mit langen Namen ausführen kann). - - -* UNDO ------- - -Wenn Sie etwas am Text geändert haben und nachträglich bemerken, daß -das ein Fehler war, so können Sie den Fehler mit dem Befehl C-x u -ungeschehen machen (`undo'). - -Normalerweise macht C-x u das Verhalten von einem Befehl ungeschehen; -führen Sie C-x u mehrmals hintereinander aus, dann werden die -jeweiligen vorigen Befehle widerrufen. - -Es gibt jedoch zwei Ausnahmen: Befehle, die den Text nicht ändern, -werden nicht gezählt (z.B. Cursorbewegungen und Blättern im Text). -Und Befehle, die sich selbst einfügen (`self-inserting': Drücken Sie -zum Beispiel die `u'-Taste, dann wird der Buchstabe u eingefügt) -werden in Gruppen von bis zu 20 Zeichen wiederhergestellt, um die -Anzahl der notwendigen C-x u-Befehle zu reduzieren. - ->> Löschen Sie diese Zeilen mit C-k und drücken Sie anschließend - mehrmals C-x u, und die Zeilen erscheinen wieder. - -C-_ ist ein alternativer Undo-Befehl; er arbeitet genauso wie C-x u, -ist jedoch einfacher zu tippen, wenn Sie den Befehl mehrmals -hintereinander ausführen möchten. Der Nachteil von C-_ ist, daß bei -manchen Tastaturen nicht sofort einsichtig ist, wie man das eingibt. - -Eine weitere Eingabemöglichkeit bei vielen Terminals ist C-/. - -Ein numerisches Argument für C-_, C-x u oder C-/ wird als -Wiederholungszähler interpretiert. - -Der Unterschied zwischen der Undo-Funktion und dem oben erklärten C-y -ist, daß erstere gelöschten Text an exakt der gleichen Position wie -vorher wiederherstellt, wohingegen C-y den gelöschten Text an der -momentanen Cursorposition einfügt. Im übrigen kann auch `gekillter' -Text wieder hergestellt werden; der Unterschied zwischen `killing' und -`yanking' betrifft nur C-y, aber nicht die Undo-Funktion. - - -* DATEIEN ---------- - -Um editierten Text zu sichern, muß man ihn in einer Datei (`file') -speichern (`save'). Wird Emacs beendet, ohne daß man vorher den Text -gespeichert hat, dann ist der Text verloren. - -Will man andererseits bereits gesicherten Text mit Emacs editieren, so -muß die entsprechende Datei in Emacs geladen werden (im Englischen -wird das als `finding' (finden) bzw. als `visiting' (besuchen) -bezeichnet). - -Eine Datei `finden' bedeutet, daß man den Inhalt dieser Datei mit -Emacs bearbeitet -- es ist fast so, als ob man die Datei selbst -editiert. Jedoch werden Änderungen an dieser Datei erst dann -dauerhaft, wenn man sie speichert; auf diese Weise wird vermieden, daß -Dateien in einem halb-geänderten Zustand im Betriebssystem bleiben. -Es wird sogar die originale, unveränderte Datei unter einem anderen -Namen gesichert, falls Sie später entscheiden sollten, daß die -Änderungen ein Fehler sind. - -Wenn Sie die untere Bildschirmkante genauer betrachten, dann werden -Sie eine Zeile finden, die mit einem oder mehreren Bindestrichen -beginnt und endet; sie enthält unter anderem die Zeichenkette -`TUTORIAL.de'. An dieser Position befindet sich immer der Name der -Datei, die Sie momentan bearbeiten (`visit'). Gerade in diesem -Augenblick bearbeiten Sie eine Datei mit dem Namen `TUTORIAL.de' -(genauer gesagt, Emacs hat eine identische Kopie geladen). - -Die Befehle für das Laden und Speichern von Dateien bestehen aus zwei -Zeichen: Beide beginnen mit CONTROL-x. Es gibt eine ganze Reihe von -Kommandos, die mit C-x beginnen; viele von ihnen haben mit Dateien, -Puffern (s.u.) und ähnlichem zu tun. All diese Befehle sind zwei, -drei oder vier Zeichen lang -- Sie haben bereits C-x u kennengelernt. - -Um eine Datei in Emacs laden zu können, muß man dem Lade-Befehl den -Namen der Datei mitteilen. Der Befehl `liest ein Argument vom -Terminal' (in diesem Fall ist das der Name der Datei). Nachdem Sie - - C-x C-f (lade Datei) - -eingegeben haben, werden Sie von Emacs nach dem Dateinamen gefragt. -Die Zeichen, die Sie eingeben, werden in der untersten Bildschirmzeile -dargestellt, dem sogenannten Minipuffer (`minibuffer'). Sie können -ganz normale Emacs-Editierfunktionen verwenden, um den Dateinamen zu -ändern. - -Sie können jederzeit die Eingabe (auch von anderen Befehlen, die den -Minipuffer benutzen) mit C-g abbrechen. - ->> Drücken Sie C-x C-f und dann C-g. Der letzte Befehl verwirft - jegliche Eingabe in den Minipuffer und bricht außerdem den - Ladebefehl ab (Sie haben also keine Datei geladen). - -Wenn Sie den Dateinamen fertig eingegeben haben, drücken Sie , -um den Befehl abzuschließen; C-x C-f wird ausgeführt und lädt die von -Ihnen ausgesuchte Datei. Der Minipuffer verschwindet wieder, sobald -C-x C-f beendet ist. - -Ein paar Augenblicke später erscheint der Dateiinhalt auf dem -Bildschirm, und Sie können den Text editieren. Wenn Sie Ihre -Änderungen permanent speichern wollen, dann drücken Sie - - C-x C-s (sichere Datei) - -und Emacs kopiert den Text in die Datei. Beim ersten Mal benennt -Emacs die Originaldatei um, damit sie nicht verloren ist. Der neue -Name besteht aus dem Originalnamen plus einer angehängten Tilde `~' -[unter einigen Betriebssystemen wird statt dessen die -Namenserweiterung durch `.bak' ersetzt]. - -Emacs schreibt den Namen der gesicherten Datei in die unterste Zeile, -sobald C-x C-s fertig ausgeführt ist. Sie sollten den editierten Text -oft speichern, damit nicht allzuviel bei einem etwaigen Systemabsturz -verloren geht. - ->> Geben Sie C-x C-s ein, um Ihre Kopie der Einführung zu sichern. - Die Ausgabe am unteren Bildschirmrand sollte `Wrote ...TUTORIAL.de' - sein. - -Anmerkung: Bei einigen Systemen scheint es, als ob das Ausführen von -C-x C-s Emacs abstürzen ließe (Emacs reagiert mit keinen Meldungen -mehr; der Bildschirm scheint eingefroren). Dieser Effekt tritt auf, -wenn das Betriebssystem das Zeichen C-s abfängt (es wird für `flow -control' verwendet) und nicht an Emacs weiterreicht. Um den -Bildschirm wieder zum Leben zu erwecken, geben Sie C-q ein, und lesen -Sie dann den Abschnitt `Spontaneous Entry to Incremental Search' im -Emacs-Handbuch, was man am besten tun kann. Das Emacs-Handbuch ist -übrigens auch online verfügbar mittels C-h i, und zwar im Abschnitt -`Emacs' (unter der Voraussetzung natürlich, daß die Info-Dateien von -Emacs auch installiert wurden. Wenn nicht, beschweren Sie sich bei -Ihrem System-Administrator). - -[Eine erste Abhilfe zur Umschiffung des C-s-Problems schafft die -Befehlsfolge `M-x save-buffer', welche exakt das gleiche wie C-x C-s -bewirkt.] - -Sie können eine existierende Datei anschauen (`view') oder editieren. -Sie können aber auch eine Datei laden, die noch gar nicht existiert, -um so eine neue Datei zu erzeugen: Sie öffnen dazu die -(nicht-existente) Datei, die natürlich leer ist, und beginnen dann -einfach Text einzugeben. Wenn Sie jetzt die Datei speichern, erzeugt -Emacs wirklich die Datei und kopiert den editierten Text in sie -hinein. - - -* PUFFER --------- - -Manche Editoren können nicht mehr als eine Datei gleichzeitig -bearbeiten. Wenn Sie jedoch eine zweite Datei in Emacs mit C-x C-f -laden, dann bleibt die erste in Emacs. Sie können zur ersten -zurückschalten, indem Sie noch einmal C-x C-f eingeben. Auf diese -Weise lassen sich eine ganze Reihe von Dateien laden und bearbeiten. - ->> Erzeugen Sie eine Datei mit dem Namen `foo', indem Sie - - C-x C-f foo - - eingeben. Tippen Sie etwas Text ein, editieren Sie ihn und - speichern Sie ihn abschließend mit C-x C-s. Kehren Sie - anschließend zu dieser Einführung zurück mit - - C-x C-f TUTORIAL.de - -Emacs speichert jeden Text, der aus einer Datei in Emacs geladen wird, -in einem `Puffer'-Objekt. Um eine Liste der momentan existierenden -Puffer zu sehen, geben Sie - - C-x C-b (liste Puffer auf) - -ein. - ->> Probieren Sie jetzt C-x C-b. - -Beachten Sie, daß jeder Puffer einen Namen hat und manche auch mit dem -Namen einer Datei assoziiert sind, dessen Inhalt sie enthalten. -Manche Puffer aber haben keinen zugehörige Datei, z.B. der mit dem -Namen `*Buffer List*'. Er wurde von dem Befehl C-x C-b erzeugt, um -die Pufferliste darzustellen. JEDER Text, den Sie innerhalb Emacs in -einem Fenster sehen, ist immer ein Ausschnitt eines Puffers. - ->> Geben Sie jetzt C-x 1 ein, um die Pufferliste wieder verschwinden - zu lassen. - -Wenn Sie Änderungen an einer Datei vornehmen und anschließend eine -andere Datei laden, dann wird die erste nicht gespeichert. Die -Änderungen bleiben in Emacs, und zwar in dem zur ersten Datei -gehörigen Puffer. Das ist sehr praktisch, bedeutet jedoch -gleichzeitig, daß man einen Befehl braucht, um den Puffer der ersten -Datei permanent abzuspeichern. Es wäre äußerst umständlich, müßte man -jedesmal C-x C-f eingeben, um den Puffer dann mit C-x C-s -abzuspeichern. Daher gibt es den Befehl - - C-x s (sichere mehrere Puffer) - -Dieser Befehl fragt Sie bei jedem Puffer, der Änderungen enthält, ob -Sie ihn speichern wollen. - ->> Fügen Sie eine Textzeile ein und drücken Sie dann C-x s. Emacs - fragt Sie jetzt, ob Sie einen Puffer mit dem Namen TUTORIAL.de - speichern wollen. Bejahen Sie, indem Sie `y' drücken. - -[Anmerkung: Sie verändern nicht die Originaldatei, sondern eine -persönliche Kopie.] - - -* WEITERE BEFEHLE ------------------ - -Es existieren viel mehr Emacs-Befehle als Tasten auf der Tastatur. Um -sie trotzdem alle benutzen zu können, gibt es zwei Erweiterungen: - - C-x Zeichenerweiterung. Gefolgt von einem Zeichen. - M-x Befehlserweiterung. Gefolgt von einem (langen) Namen. - -[Das `x' steht für das englische Wort `extension'.] Diese beiden -Befehle sind prinzipiell sehr nützlich, werden aber weniger oft -benötigt als die bisher vorgestellten. Sie haben bereits zwei Befehle -aus der ersten Kategorie kennengelernt: C-x C-f, um eine Datei zu -laden, und C-x C-s, um sie zu speichern. Ein weiteres Beispiel ist -C-x C-c, um Emacs zu beenden -- Sie brauchen sich keine Gedanken zu -machen, ob Sie beim Beenden von Emacs vielleicht vergessen haben, -Daten oder Text zu sichern -- Emacs fragt bei jedem geändertem Puffer -(bzw. Datei), ob er gespeichert werden soll. - -C-z ist der Befehl um Emacs *zeitweise* zu verlassen; es ist also -möglich, später an der unterbrochenen Stelle nahtlos weiterzuarbeiten. - -Auf den meisten Systemen wie Linux oder FreeBSD wird Emacs -`suspendiert', wenn Sie C-z drücken, d.h., Sie kehren zurück zur -Eingabezeile des Betriebssystems, ohne Emacs zu beenden. In der Regel -können Sie dann mittels des Befehls `fg' bzw. `%emacs' wieder zu Emacs -umschalten. Unter X Window System bewirkt C-z in der Regel, daß Emacs -ikonofiziert wird, also als Ikone (`Icon') darauf wartet, mit einem -Mausklick bei Bedarf wieder vergrößert zu werden. - -Bei Betriebssystemen bzw. Shells, die Suspension von Programmen nicht -implementiert haben (z.B. MS-DOS), startet C-z einen -System-Befehlsinterpreter innerhalb von Emacs (`subshell'). -Normalerweise müssen Sie dann `exit' in die Befehlszeile schreiben, um -zu Emacs zurückzukehren. - -Der beste Zeitpunkt für C-x C-c ist, wenn Sie sich ausloggen -(bzw. Ihren Computer ausschalten); Sie sollten Emacs ebenfalls -beenden, wenn Sie Emacs von einem anderen Programm aus aufgerufen -haben (z.B. einem Programm, das E-mails liest), da solche Programme -oft nicht wissen, wie sie mit Emacs im Suspend-Modus umgehen sollen. -In allen anderen Fällen ist es meistens günstiger, C-z zu benutzen und -Emacs nicht zu beenden, damit man im Bedarfsfalle sofort an der -gleichen Stelle weiterarbeiten kann. - -Hier ist eine Liste aller C-x-Befehle, die Sie bereits kennengelernt -haben: - - C-x C-f lade Datei - C-x C-s sichere Datei - C-x C-b zeige Pufferliste an - C-x C-c beende Emacs - C-x u widerrufen - C-x 1 lösche alle Fenster außer eines - -Ein Beispiel für einen Befehl mit langen Namen ist replace-string, der -global (also in der ganzen Datei bzw. Puffer) eine Zeichenkette durch -eine andere ersetzt. Wenn Sie M-x drücken, dann fragt Sie Emacs in -der untersten Bildschirmzeile nach dem Namen des Befehls (in diesem -Fall `replace-string'). Geben Sie jetzt `repl s' ein und Emacs -vervollständigt den Namen. Schließen Sie die Eingabe mit ab. -[ bezeichnet die Tabulatortaste.] - ->> Bewegen Sie den Cursor zu der leeren Zeile sechs Zeilen unter - dieser. Geben Sie dann - - M-x repl sBildschirmText - - ein und kehren Sie mit C-u C-SPC an diese Position zurück. - - Beachten Sie wie diese Bildschirmzeile jetzt aussieht: Sie haben - den Wortteil B-i-l-d-s-c-h-i-r-m durch `Text' ersetzt (und zwar im - ganzen Dokument beginnend von der Cursorposition). - ->> Drücken Sie jetzt C-x u, um diese Änderungen auf einmal rückgängig - zu machen. - - -* AUTOMATISCHES SPEICHERN -------------------------- - -Haben Sie Änderungen an einem Dokument vorgenommen, sie jedoch nicht -gespeichert, dann können sie verloren gehen, falls der Computer -abstürzt. Um Sie davor zu schützen, sichert Emacs in bestimmten -Zeitintervallen jede von Ihnen editierte Datei in sogenannten -`auto-save'-Dateien. Sie sind daran zu erkennen, daß sie mit einem # -beginnen und enden; z.B. ist `#hello.c#' der Name der Auto-save-Datei -von `hello.c'. Wenn Sie Ihren Text auf normalem Wege speichern, wird -die Auto-save-Datei gelöscht. - -Stürzt der Rechner einmal wirklich ab, so können Sie die Änderungen, -die beim letzten Auto-Save gespeichert worden sind, folgendermaßen -wiederherstellen: Laden Sie die Datei auf normalem Wege (die Datei, -die Sie bearbeitet haben, nicht die Auto-save-Datei) und geben Sie -dann `M-x recover-file' ein. Wenn Emacs Sie um Bestätigung -fragt, antworten Sie mit `yes', um den Inhalt der -Auto-save-Datei zu übernehmen. - - -* DER ECHO-BEREICH ------------------- - -Geben Sie Befehle langsam ein, dann zeigt Ihnen Emacs Ihre eigene -Eingabe am unteren Bildschirmrand im sogenannten Echo-Bereich (`echo -area'). Der Echo-Bereich enthält die unterste Bildschirmzeile. - -[Mini-Puffer und Echo-Bereich fallen normalerweise zusammen, sind aber -nicht das gleiche, da innerhalb des Echo-Bereiches nichts eingegeben -werden kann.] - - -* DIE STATUSZEILE ------------------- - -Die Bildschirmzeile unmittelbar über dem Echo-Bereich ist die -Statuszeile (`mode line'). Sie schaut ungefähr so aus: - --1:** TUTORIAL.de 58% L865 (Fundamental)---------------------- - -Diese Zeile gibt nützliche Hinweise über den momentanen Zustand von -Emacs und den Text, den Sie gerade editieren. - -Sie wissen bereits, was der Dateiname bedeutet. `--NN%--' zeigt die -momentane Position innerhalb des Textes an: NN Prozent davon sind -oberhalb des Bildschirms. Ist der Dateianfang zu sehen, dann -erscheint `Top' anstelle von `00%'. Analog dazu erscheint `Bot' (für -das englische Wort `bottom'), wenn das Dateiende sichtbar ist. Wenn -Sie einen Text betrachten, der komplett auf den Bildschirm paßt, dann -erscheint `All'. - -Das `L' und die nachfolgenden Ziffern geben die aktuelle Zeilennummer -an, in denen sich der Cursor befindet. - -Am Anfang der Zeile sehen Sie `-1:**'. Die Zeichen vor dem -Doppelpunkt geben an, in welcher Kodierung der Text ist und welche -Eingabemethode verwendet wird. Dazu mehr weiter unten im Abschnitt -`MULE'. - -[Anstelle des Doppelpunktes können auch ein `\' und `/' stehen, falls -Sie Dateien editieren, die der MS-DOS- bzw. der -Macintosh-Textkonvention folgen: MS-DOS verwendet als -Zeilenvorschubzeichen CR-LF (Carriage Return gefolgt von Linefeed), -während Macintosh nur CR benutzt. Emacs verwendet standardmäßig LF.] - -Die Sterne nach dem Doppelpunkt bedeuten, daß Sie Änderungen am Text -vorgenommen haben. Wenn Sie gerade eine Datei in Emacs geladen oder -gespeichert haben, dann erscheinen statt der Sterne zwei Bindestriche. -Prozentzeichen nach dem Doppelpunkt stehen für eine Datei, die nur -gelesen, aber nicht editiert werden kann. - -Der eingeklammerte Teil gibt an, in welchem Editiermodus Sie sich -befinden. Der Standardmodus heißt `Fundamental' (Sie verwenden ihn -gerade); er ist ein Beispiel für einen Hauptmodus (`major mode'). - -Emacs hat viele Hauptmodi implementiert. Manche davon werden für -verschiedene (Computer-)Sprachen und/oder Textarten verwendet, -z.B. Lisp-Modus, Text-Modus usw. Es kann immer nur ein Hauptmodus -aktiviert sein, und der Name befindet sich dort, wo jetzt gerade -`Fundamental' steht. - -Einige Befehle verhalten sich jeweils in verschiedenen Hauptmodi -anders. Es gibt zum Beispiel einen Befehl, um einen Kommentar in den -Quellcode eines Computerprogramm einzufügen -- die Tastenfolge dafür -ist zwar (in der Regel) die gleiche, doch wird ein Kommentar mit der -für die aktuelle Programmiersprache gültigen Syntax eingefügt -(z.B. `// ...' für ein Programm in C++ oder `; ...' für Lisp). Um in -einen Hauptmodus zu schalten, hängen Sie einfach das englische Wort -`-mode' an den (kleingeschriebenen) Namen des Modus an und führen den -Befehl mittels M-x aus. Beispiel: `M-x fundamental-mode' schaltet in -den Fundamental-Modus. Weitere wichtige Modi sind c-mode, perl-mode, -lisp-mode, text-mode u.a. Die meisten davon werden automatisch -aktiviert, und zwar entsprechend der Namenserweiterung der zu ladenden -Datei: So wird z.B. durch das Laden der Datei foo.c automatisch der -C-Modus aktiviert. - -Wenn Sie deutschen oder englischen Text bearbeiten, dann sollten Sie -den Textmodus verwenden. [Falls Ihre Tastatur keine Umlaut-Tasten -hat, müssen Sie noch einen weiteren Nebenmodus aktivieren. Lesen Sie -dazu den Abschnitt `MULE' weiter unten.] - ->> Geben Sie `M-x text mode' ein. - -Sie brauchen keine Angst zu haben, daß sich die bisher dargestellte -Tastaturbelegung von Emacs stark ändert. Beobachten Sie z.B. die -Befehle M-f und M-b: Apostrophe werden nun als Teil eines Wortes -betrachtet (wie man's leicht an diesem Beispiel ausprobieren kann), -wohingegen im Fundamentalmodus Apostrophe als Worttrenner -(`word-separator') behandelt werden. - -Normalerweise ist das eben genannte Beispiel die Methode von -Hauptmodi: Die meisten Befehle tun `das gleiche', arbeiten aber -jeweils ein bißchen anders. - -Dokumentation zum derzeit aktuellen Hauptmodus bekommen Sie mit C-h m. - ->> Drücken Sie C-u C-v ein- oder mehrmals, um diese Zeile in die Nähe - des oberen Bildschirmrands zu bringen. ->> Lesen Sie nun mittels C-h m die englische Dokumentation zum - Textmodus. ->> Entfernen Sie schließlich das Dokumentationsfenster mit C-x 1. - -Neben den Hauptmodi gibt es auch Nebenmodi (`minor modes'). Nebenmodi -sind keine Alternativen zu Hauptmodi, sondern stellen Ergänzungen zur -Verfügung, die (normalerweise) in allen Hauptmodi funktionieren -(z.B. der Überschreibmodus: Zeichen werden nicht eingefügt, sondern -überschreiben den Text). Man kann Nebenmodi ein- und ausschalten -unabhängig von anderen Nebenmodi und Hauptmodi; mit anderen Worten, -Sie können zu Ihrem Hauptmodus keinen, einen oder sogar mehrere -Nebenmodi haben. - -Ein Nebenmodus, welcher äußerst nützlich ist, besonders für das -Editieren von Text, ist der automatische Zeilenumbruch (`Auto Fill -mode'). Ist dieser Modus aktiviert, dann bricht Emacs die laufende -Zeile selbsttätig zwischen Wörtern um, sobald sie zu lang wird. - -Sie können den Zeilenumbruchmodus einschalten mittels `M-x auto fill -mode'. Wenn der Modus aktiviert ist, können Sie ihn mit dem -gleichen Befehl wieder ausschalten. Mit anderen Worten, der Befehl -verhält sich wie ein Lichttaster, der bei Betätigung entweder das -Licht ein- oder ausschaltet, je nachdem, ob das Licht vorher -ausgeschaltet bzw. eingeschaltet war. Wir sagen, daß dieser Befehl -den Modus umschaltet (`toggle'). - ->> Geben Sie nun M-x auto-fill-mode ein. Fügen Sie - anschließend eine Zeile ein, die aus lauter `asdf ' besteht, und - zwar so lange, bis die Zeile automatisch umgebrochen wird. - Vergessen Sie nicht, Leerzeichen einzugeben, da nur dort ein - Umbruch erfolgt. - -Normalerweise ist die maximale Zeilenlänge 70 Zeichen (d.h., der linke -Rand ist ganz links auf Position 1 und der rechte Rand auf -Position 70), jedoch können Sie das mit dem Befehl C-x f ändern. -Geben Sie den neuen (rechten) Rand als numerischen Parameter ein. - ->> Geben Sie C-x mit dem Argument 20 ein (C-u 2 0 C-x f). Schreiben - Sie nun etwas Text und beobachten Sie, wie Emacs die laufende Zeile - an Position 20 umbricht. Setzen Sie anschließend den Rand wieder - zurück auf 70 mit dem gleichen Befehl. - -Machen Sie Änderungen in der Mitte eines Absatzes, dann reformatiert -der Zeilenfüllmodus nicht automatisch den Absatz. -Verwenden Sie dafür den Befehl M-q, wobei der Cursor innerhalb des -Absatzes stehen muß. - ->> Bewegen Sie den Cursor zurück zum letzten Absatz und drücken Sie - M-q. - - -* SUCHEN --------- - -Emacs kann Zeichenketten (`strings') entweder in Richtung Pufferende -(vorwärts, `forward') oder in Richtung Pufferanfang (rückwärts, -`backward') suchen. Gleichzeitig wird der Cursor an die nächste -Stelle bewegt, wo diese Zeichenkette erscheint. - -Hier unterscheidet sich Emacs von vielen anderen Editoren, da nämlich -die Standard-Suchoperation inkrementelles Suchen ist, d.h., die Suche -beginnt dann, wenn Sie die Zeichen eingeben. - -Der Befehl für Vorwärtssuchen ist C-s und C-r für Rückwärtssuchen. -ABER HALT! Probieren Sie bitte diese Befehle noch nicht. - -Wenn Sie C-s eingeben, dann erscheint die Zeichenkette `I-search:' als -Eingabeaufforderung im Echobereich. Das bedeutet, daß Emacs jetzt -eine inkrementellen Suche ausführt und darauf wartet, daß Sie die zu -suchende Zeichenkette eingeben. beendet die Suche. - ->> Geben Sie jetzt C-s ein, um einen Suchvorgang zu starten. Schreiben - Sie LANGSAM, einen Buchstaben nach dem anderen, das Wort `Cursor', - und warten Sie jeweils ab, was mit dem Cursor passiert. Sie haben - jetzt das Wort `Cursor' einmal gefunden. ->> Drücken Sie C-s noch einmal, um die nächste Stelle zu suchen, wo das - Wort `Cursor' vorkommt. ->> Drücken Sie nun viermal und beobachten Sie, wie der Cursor - zurückspringt. ->> Beenden Sie die Suche mit . - -Verstehen Sie, was gerade vorgegangen ist? Emacs versucht während -einer inkrementellen Suche zu der Stelle zu gehen, wo die Zeichenkette -steht, die Sie bis jetzt eingegeben haben. Um die darauffolgende -Position zu suchen, wo `Cursor' steht, genügt es, noch einmal C-s zu -betätigen. Wenn es keine nächste Position gibt, dann ertönt ein -kurzer Ton, und Emacs sagt Ihnen, daß die Suche im Augenblick -fehlschlägt (`failing'). C-g beendet ebenfalls einen Suchvorgang. - -Anmerkung: Wie weiter oben schon einmal erwähnt, scheint es bei -einigen Systemen, als ob das Ausführen von C-s Emacs abstürzen läßt -(Emacs reagiert mit keinen Meldungen mehr; der Bildschirm wirkt -eingefroren). Dieser Effekt tritt auf, wenn das Betriebssystem das -Zeichen C-s abfängt (es wird für `flow control' verwendet) und nicht -an Emacs weiterreicht. Um den Bildschirm wieder zum Leben zu -erwecken, geben Sie C-q ein, und lesen Sie dann den Abschnitt -`Spontaneous Entry to Incremental Search' im Emacs-Handbuch, was man -am besten tun kann. - -Wenn Sie sich mitten in einer inkrementellen Suche befinden und - drücken, wird das letzte Zeichen im Suchstring gelöscht, und -der Cursor springt zurück auf die letzte Suchposition. Angenommen, -Sie haben `c' eingegeben, um das erste Auftreten von `c' zu suchen. -Geben Sie jetzt `u' ein, dann springt der Cursor zu dem ersten -Auftreten der Zeichenkette `cu'. Wenn Sie jetzt mit das `u' -vom Suchstring löschen, dann springt der Cursor zurück zum ersten `c'. -Drücken Sie dagegen ein paar mal C-s, um weitere `cu'-Zeichenketten zu -finden, dann bewirkt , daß Sie zum letzten Auftreten von `cu' -zurückspringen, und erst wenn es kein weiteres `cu' mehr gibt, springt -der Cursor zum ersten `c' zurück. - -Die Suche wird ebenfalls beendet, wenn Sie ein CONTROL- oder -META-Zeichen eingeben (mit ein paar Ausnahmen -- Zeichen, die -bei einer Suche speziell gehandhabt werden wie C-s oder C-r). - -C-s versucht, die Zeichenkette NACH der aktuellen Cursorposition zu -finden. Wollen Sie etwas davor suchen, müssen Sie C-r verwenden. Das -oben Gesagte gilt völlig analog, jedoch in die entgegengesetzte -Suchrichtung. - - -* MEHRFACHE FENSTER -------------------- - -Eine weitere, nützliche Fähigkeit von Emacs ist die Möglichkeit, mehr -als ein Fenster zur gleichen Zeit auf dem Bildschirm darzustellen. - ->> Bewegen Sie den Cursor zu dieser Zeile und geben Sie C-u 0 C-l ein. - ->> Drücken Sie nun C-x 2, um den Bildschirm in zwei Fenster zu teilen. - Beide Fenster zeigen diese Einführung an, und der Cursor bleibt im - oberen. - ->> Verwenden Sie C-M-v, um im unteren Fenster zu blättern (Sie können - statt dessen auch ESC C-v verwenden, falls Sie keine META-Taste - haben; siehe auch weiter unten). - ->> Mittels C-x o (das `o' steht für das englische Wort `other', `das - andere') können Sie den Cursor in das untere Fenster bewegen. - ->> Benützen Sie C-v und M-v, um im unteren Fenster zu blättern. Lesen - Sie die Emacs-Einführung jedoch im oberen Fenster weiter. - ->> Geben Sie C-x o nochmals ein, und der Cursor ist wieder im oberen - Fenster, genau an der Stelle, wo er vorher war. - -C-x o ist der Befehl, um zwischen (Emacs-)Fenstern hin- und -herzuschalten. Jedes Fenster hat eine eigene Cursorposition, aber nur -das aktuelle Fenster zeigt den Cursor an (unter X wird die -nicht-aktuelle Cursorposition durch ein leeres Rechteck dargestellt). -Alle normalen Editierbefehle betreffen das Fenster, in dem sich der -Cursor befindet. Wir nennen dieses Fenster `selektiert' (`selected -window'). - -Der Befehl M-C-v ist sehr nützlich, wenn man Text in einem Fenster -editiert und das andere Fenster als Referenz verwendet. Der Cursor -bleibt stets im gleichen Arbeitsfenster, und mit M-C-v kann man bequem -vorwärtsblättern. - -M-C-v ist ein Beispiel eines CONTROL-META-Zeichens. Haben Sie eine -META-Taste, dann kann man M-C-v erzeugen, indem man CTRL und META -gleichzeitig niedergedrückt hält, während man v eintippt. Es ist -egal, ob zuerst CTRL oder META niedergedrückt wird, da beide Tasten -gleichberechtigt das jeweils einzugebende Zeichen modifizieren. - -Haben Sie keine META-Taste, und Sie verwenden stattdessen ESC, dann -ist die Reihenfolge nicht mehr egal: Sie müssen zuerst ESC drücken, -gefolgt von CTRL-v. CTRL-ESC v funktioniert nicht! Der Grund dafür -ist, daß ESC ein eigenes Zeichen ist und keine Modifizier-Taste wie -META oder CTRL. - -Der umgekehrte Befehl zu M-C-v ist M-C-S-v, um im anderen Fenster -rückwärts zu blättern (d.h., Sie müssen die META-Taste sowie die -CONTROL- und SHIFT-Taste zusammen mit `v' betätigen) -- jetzt werden -Sie wahrscheinlich verstehen, warum manche Kritiker das Wort Emacs als -Abkürzung von Escape-Meta-Alt-Control-Shift betrachten. Leider -funktioniert diese Befehlsfolge normalerweise nur mit dem X Window -System, da C-v von C-S-v auf den meisten Textterminals nicht -unterschieden werden kann. - -[Unter X kann man außerdem in der Regel mit den bequemeren -Tastenkombinationen META-`Bild mit Aufwärtspfeil' bzw. META-`Bild mit -Abwärtspfeil' ebenfalls im anderen Fenster rück- bzw. vorwärts -blättern.] - ->> Entfernen Sie mit C-x 1 (eingegeben im oberen Fenster) das untere - Fenster. - -(Hätten Sie C-x 1 im unteren Fenster eingegeben, dann wäre das obere -Fenster geschlossen worden -- eine Eselsbrücke für C-x 1 ist `ich will -nur das *eine* Fenster, in dem ich mich gerade befinde.') - -Sie müssen nicht den gleichen Puffer in beiden Fenstern darstellen. -Wenn Sie C-x C-f verwenden, um in einem Fenster eine Datei zu laden, -dann bleibt das andere Fenster unverändert. Sie können in jedem -Fenster eine andere Datei anzeigen lassen, unabhängig vom anderen -Fenster. - -Hier eine andere Möglichkeit, in zwei Fenstern zwei verschiedene -Texte darzustellen: - ->> Geben Sie C-x 4 C-f ein, gefolgt vom Namen einer Ihrer Dateien. - Schließen Sie ab mit . Beobachten Sie, wie die - spezifizierte Datei im unteren Fenster erscheint. Der Cursor - springt ebenfalls in das untere Fenster. - ->> Bewegen Sie den Cursor mittels C-x o in das obere Fenster und geben - Sie C-x 1 ein, um das untere Fenster zu schließen. - - -* REKURSIVE EDITIER-EBENEN --------------------------- - -Manchmal kann es passieren, daß Sie in eine sogenannte rekursive -Editier-Ebene geraten (`recursive editing level'). Sie können das an -den eckigen Klammern in der Statuszeile erkennen, welche den -derzeitigen Hauptmodus zusätzlich umschließen, z.B. [(Fundamental)] -anstelle von (Fundamental). - -Um eine rekursive Editier-Ebene zu verlassen, geben Sie ESC ESC ESC -ein. Diese Tastenkombination ist ein allgemeiner -Ich-will-hier-raus-Befehl. Sie können ihn auch verwenden, um -unerwünschte Fenster zu schließen und den Minipuffer zu verlassen. - ->> Geben Sie M-x ein, um in den Minipuffer zu gelangen, und tippen Sie - dann ESC ESC ESC, um ihn wieder zu verlassen. - -Mit C-g kann man eine rekursive Editier-Ebene nicht verlassen, da C-g -Befehle INNERHALB einer rekursiven Editier-Ebene stoppt. - -Rekursive Editier-Ebenen sind hier in dieser Einführung nicht weiter -dargestellt. Details finden Sie im Emacs-Handbuch beschrieben. - - -* MULE ------- - -Mule ist die Abkürzung für `Multi-lingual Enhancement to GNU Emacs'. -Früher wurde damit eine spezielle Emacs-Variante bezeichnet, die -allerdings seit der Version 20 mit Emacs verschmolzen ist. - -Emacs unterstützt eine große Anzahl von internationalen Zeichensätzen, -z.B. verschiedene europäische Varianten des lateinischen Alphabets, -Chinesisch, Russisch oder Thai, um nur einige zu nennen. In dieser -Einführung wird jedoch nur auf den deutschen Zeichensatz sowie -Eingabemöglichkeiten für Deutsch näher eingegangen. - -Der Standard-Zeichensatz für Deutsch ist Latin-1 (auch bekannt unter -dem Namen ISO-8859-1). Wenn anstelle der deutschen Umlaute -unansehnliche Konstrukte wie `\201ä' dargestellt werden, dann ist die -sogenannte Multibyte-Zeichenunterstützung deaktiviert (intern werden -in Emacs nicht-ASCII Zeichensätze durch mehr als ein Byte -repräsentiert). Durch den Befehl `M-x -toggle-enable-multibyte-characters' wird die -Multibyte-Zeichenunterstützung aktiviert. Denken Sie daran, die -Tabulatortaste zur Vervollständigung von Befehlsnamen zu benützen, -z.B. `M-x toggle-e'. - -Wenn anstelle der Umlaute `ä', `ö' oder `ü' die Zeichen `d', `v' und -`|' erscheinen (also `kleines D', `kleines V' und ein senkrechter -Strich), dann wird das achte Bit von jedem Byte abgeschnitten, sodaß -nur ASCII-Zeichen dargestellt werden können. In der Regel gibt es -zwei Ursachen für dieses Problem: Sie haben sich nicht `8-bit clean' -(z.B. mittels `telnet -8 ...') eingeloggt oder Ihr -Telekommunikationsprogramm ist nicht für 8-bit konfiguriert. - ->> Geben Sie `M-x toggle-enable-multibyte-characters' ein. Die - deutschen Umlaute (so sie von Ihrem Terminal darstellbar sind) - verschwinden und werden durch Zahlenkonstrukte ersetzt. So wird - zum Beispiel Umlaut a (`ä') dargestellt als `\201ä'. - ->> Aktivieren Sie wieder die Multibyte-Zeichenunterstützung mittels - `M-x toggle-enable-multibyte-characters'. - -Sehen Sie anstelle der Umlaute leere Kästchen (unter X), dann sollten -Sie mit C-x C-c Emacs beenden und folgendermaßen neu starten: - - emacs -fn fontset-standard - -Bei einem Textterminal gibt es weiter die Möglichkeit, die -Befehlsfolge `M-x standard-display-european' auszuführen, wodurch -Emacs die Multibyte-Zeichenunterstützung deaktiviert und direkt -Latin-1-Zeichen darzustellen versucht. Sie können auch probieren, -Emacs mit der `--unibyte'-Option zu starten, was einen ähnlichen -Effekt bewirkt. - -Falls das alles nichts nützt oder Sie Fragezeichen anstelle der -Umlaute auf ihrem Textterminal sehen, sollten Sie sich an Ihren -Systemadministrator wenden und sich beschweren, daß kein -Latin-1-Zeichensatz installiert ist (was heutzutage eigentlich eine -Selbstverständlichkeit sein sollte). Falls statt der Umlaute andere -Zeichen auf ihrem Textterminal erscheinen (z.B. kyrillische -Buchstaben), dann erkundigen Sie sich, wie sie auf Latin-1 umschalten -können. - -Lesen Sie im Emacs-Handbuch nach unter dem Stichwort `International', -welche weitere Optionen es bezüglich Zeichensätze gibt. - -Es empfiehlt sich, Latin-1 als Standardkodierung zu aktivieren, wenn -Sie primär Deutsch verwenden. Benutzen Sie zu diesem Zweck die -Befehlsfolge - - C-x l latin-1 - -(C-x l führt die Funktion set-language-environment aus), um -in einer laufenden Emacs-Sitzung auf Latin-1 umzuschalten. Dadurch -wird erreicht, daß Emacs beim Laden einer Datei (und Speichern -derselben) standardmäßig die Latin-1-Zeichenkodierung verwendet. Sie -können an der Ziffer 1 unmittelbar vor dem Doppelpunkt links unten in -der Statuszeile erkennen, daß Sie Latin-1 aktiviert haben. Beachten -Sie allerdings, daß set-language-environment keinen Einfluß auf die -Kodierung bereits existierender Puffer hat! Haben Sie eine Datei mit -deutschem Text in Latin-1-Kodierung irrtümlicherweise in einer -falschen Kodierung geladen, dann müssen Sie diesen Puffer aus Emacs -mit dem Befehl C-x k (kill-buffer) entfernen und die Datei erneut -laden, nachdem Sie mit set-language-environment auf Latin-1 -umgeschaltet haben. - ->> Führen Sie jetzt C-x l latin-1 aus und öffnen Sie - anschließend eine (neue) Datei mit dem Namen `bar' in einem anderen - Fenster mittels C-x 4 C-f bar . In der Statuszeile des - zweiten Fensters sehen Sie die Ziffer 1 unmittelbar vor dem - Doppelpunkt. - ->> Schließen Sie das soeben geöffnete Fenster mit C-x 1 wieder. - -Wie können Sie nun deutsche Umlaute eingeben? Es gibt prinzipiell -zwei unterschiedliche Fälle: Sie besitzen eine deutsche Tastatur mit -Tasten für die Umlaute oder Sie haben eine nicht-deutsche Tastatur. -Im ersteren Fall sollten Sie die Eingabemethode `german' auswählen, -welche direkt die Umlaute auf die entsprechenden Tasten abbildet. Im -letzteren Fall gibt es mehrere Möglichkeiten, wovon zwei hier erklärt -werden sollen, nämlich `latin-1-prefix' und `latin-1-postfix'. Die -Präfix-Methode erwartet zuerst den Akzent und dann den Basisbuchstaben -('a wird zu á, "s zu ß etc.), während bei der Postfix-Methode zuerst -der Basisbuchstabe und dann der Akzent einzugeben ist (a" wird zu ä, -s/ wird zu ß etc). - -Aktiviert wird die jeweilige Eingabe mit dem Befehl - - C-u C-\ Eingabemethode - -(z.B. C-u C-\ german ). Durch diese Befehlsfolge wird der -sogenannte Quail-Nebenmodus aktiviert, was sich durch eine kleine -Veränderung in der Statuszeile zeigt: Durch zwei oder drei Zeichen -unmittelbar vor der Pufferkodierung wird die aktuelle Eingabemethode -angezeigt. Ist der Eingabemodus einmal gewählt, kann man mit C-\ ihn -ein- und ausschalten. - ->> Geben Sie C-u C-\ latin-1-postfix ein. Beobachten Sie, - wie links unten in der Statuszeile die Anzeige von `1:**' auf - `1<1:**' springt. Probieren Sie ä einzugeben mittels a". - ->> Deaktivieren Sie den Eingabemodus wieder mit C-\. - -Folgende Kürzel in der Statuszeile repräsentieren die eben -beschriebenen Eingabemethoden: - - DE@ german - 1< latin-1-postfix - 1> latin-1-prefix - -So bedeutet die Angabe `DE@1:**', daß Sie die Eingabemethode `german' -in einem Puffer mit Latin-1-Kodierung verwenden, und daß die Datei -bereits modifiziert wurde. - -[Arbeitet Emacs in einem Terminal, werden noch zwei zusätzliche -Spalten zwischen Eingabemethode und Pufferkodierung eingefügt, und -zwar für die Tastatur- und Bildschirmkodierung.] - - -* WEITERE DOKUMENTATION VON EMACS ---------------------------------- - -Wir haben uns bemüht, in dieser Einführung genau soviel Information zu -geben, daß Sie beginnen können, mit Emacs zu arbeiten. Emacs ist -jedoch so mächtig und umfangreich, daß es den Rahmen einer Einführung -spränge, an dieser Stelle mehr zu erklären. Um Sie im weiteren -Lernverlauf zu unterstützen, stellt Emacs eine Reihe von -Hilfe-Funktionen zu Verfügung, die alle mit dem Präfix C-h (dem -Hilfe-Zeichen, `Help character') beginnen. - -Nach dem Drücken von C-h geben Sie ein weiteres Zeichen ein, um Emacs -zu sagen, worüber Sie mehr Informationen brauchen. Sollten Sie -WIRKLICH verloren sein, geben Sie C-h ? ein, und Emacs sagt Ihnen, -welche Art von Hilfe er Ihnen zu Verfügung stellen kann. Haben Sie -C-h versehentlich gedrückt, können Sie mit C-g sofort abbrechen. - -(Es kann vorkommen, daß bei manchen Computern bzw. Terminals C-h etwas -anderes bedeutet. Da erfahrungsgemäß C-h eine der meistbenötigten -Emacs-Befehle ist, haben Sie einen wirklichen Grund, sich in diesem -Fall beim Systemadministrator zu beschweren. Alternativen zu C-h sind -die F1-Taste und der lange Befehl M-x help .) - -Die elementarste Hilfestellung gibt C-h c. Drücken Sie C-h, dann das -Zeichen c, und dann einen Befehl: Emacs zeigt daraufhin eine kurze -Beschreibung des Befehls an. - ->> Geben Sie C-h c C-p ein. - Die Antwort darauf (im Echo-Bereich) sollte so ähnlich sein wie - - C-p runs the command previous-line - -Somit wissen Sie den `Namen der Funktion'. Funktionsnamen werden -hauptsächlich benutzt, um Emacs anzupassen bzw. zu erweitern. Aber da -Namen in der Regel beschreiben, was die jeweilige Funktion tut, können -sie auch als sehr kurze Beschreibung dienen -- ausreichend, um Sie an -Befehle zu erinnern, die Sie bereits gelernt haben. - -Aus mehr als einem Zeichen bestehende Befehle, z.B. C-x C-s oder -v, sind ebenfalls erlaubt nach C-h c. - -Um eine detaillierte Dokumentation eines Befehls zu erhalten, -verwenden Sie C-h k anstelle von C-h c. - ->> Geben Sie C-h k C-p ein. - -Diese Befehlsfolge zeigt die komplette Dokumentation des Befehls an -zusammen mit seinem Namen, und zwar in einem eigenem Fenster. Wenn -Sie die Beschreibung gelesen haben, benützen Sie am besten C-x 1, um -das Hilfe-Fenster wieder zu schließen. Sie müssen das nicht sofort -tun -- Sie können weiter Text editieren und das Fenster schließen, -wenn Sie es nicht mehr brauchen. - -Hier einige weitere nützliche Optionen von C-h: - - C-h f Beschreibt eine Funktion. Sie müssen den Namen der - Funktion eingeben. - ->> Probieren Sie C-h f previous-line. - Alle Information über den C-p-Befehl wird angezeigt. - -Sie können die Tabulator-Taste stets benützen, um den Namen des -jeweiligen Befehls zu vervollständigen. Geben Sie z.B. `C-h f -previous' ein, dann werden alle Befehle angezeigt, deren Namen -mit `previous-' beginnen. Ergänzen Sie die Zeichenkette auf -`previous-l' und drücken Sie dann , bleibt nur noch der Befehl -`previous-line' übrig, und Sie können mit abschließen. - -Ein ähnlicher Befehl ist C-h v. Er zeigt den Wert und die -Dokumentation von Variablen, deren Werte man ändern kann (um Emacs an -persönliche Bedürfnisse anzupassen). Auch hier kann man die -Tabulator-Taste zur Vervollständigung benutzen. - - C-h a Ein Befehls-Apropos. Gibt man ein Schlüsselwort ein, - dann zeigt Emacs alle Befehle, die dieses - Schlüsselwort enthalten. Alle angezeigten Befehle - können mit M-x aufgerufen werden. Für einige - Kommandos wird zusätzlich eine Zeichensequenz - (meistens bestehend aus einem oder zwei Zeichen) - aufgelistet, welche den gleichen Befehl startet. - ->> Geben Sie C-h a file ein. - -Alle M-x-Befehle, die das Wort `file' in ihrem Namen enthalten, werden -angezeigt. Beachten Sie, daß auch C-x C-f aufgelistet wird neben dem -zugehörigen langen Namen, find-file. - ->> Blättern Sie mit C-M-v, um sich die Liste der Funktionen anzusehen. - ->> Schließen Sie das Hilfefenster mit C-x 1. - - C-h i Dieser Befehl öffnet einen speziellen Puffer, um - Online-Handbücher zu lesen (im `Info'-Format), die auf - dem verwendeten Computersystem installiert sind. - Geben Sie z.B. m emacs ein, um das - Emacs-Handbuch zu lesen. Haben Sie `Info' noch nie - benutzt, tippen Sie ?, und Emacs führt Sie Schritt für - Schritt durch die Möglichkeiten des Info-Modus. Wenn - Sie diese Einführung fertiggelesen haben, sollten Sie - das Info-Handbuch für Emacs als primäre Dokumentation - benutzen. - - -* SCHLUSSBEMERKUNG ------------------- - -Das Wichtigste: Emacs wird mit C-x C-c beendet und mit C-z temporär -unterbrochen. - -Diese Einführung soll für alle neuen Benutzer von Emacs verständlich -sein. Wenn daher etwas unklar sein sollte, dann hadern Sie nicht mit -sich selbst. Schreiben Sie an die Free Software Foundation oder an -den Autor und erläutern Sie, was für Sie unklar geblieben ist. Eine -weitere Kontaktadresse ist die Mailing-Liste `de@li.org', in der -Probleme mit der Adaption von GNU-Programmen an das Deutsche -diskutiert werden. - - -* RECHTLICHES -------------- - -Die englische Version dieser Einführung hat eine lange Vorgeschichte. -Stuart Cracraft hat für die Urversion von Emacs das erste Tutorial -geschrieben. Übersetzer ins Deutsche ist Werner Lemberg (wl@gnu.org). - -Beachten Sie bitte, daß im Zweifelsfalle das englische Original dieser -Urheberrechtsnotiz gültig ist (zu finden in der Datei TUTORIAL). - -Copyright (C) 1985, 1996, 1997, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 Free Software Foundation, Inc. - - Hiermit wird für jedermann die Erlaubnis erteilt, wörtliche, - unveränderte Kopien dieses Dokumentes für jegliches Medium zu - erstellen, unter der Voraussetzung, daß die Copyright-Notiz sowie - diese Erlaubnis beibehalten werden. Außerdem muß der Verteiler - dieses Dokuments den Empfängern die gleichen Rechte einräumen, - welche durch diese Erlaubnis gegeben sind. - - Zugleich wird die Erlaubnis erteilt, modifizierte Versionen dieses - Dokuments, oder Teile davon, zu verteilen, und zwar zu den oben - gegebenen Bedingungen unter der Voraussetzung, daß eindeutig zu - erkennen ist, wer zuletzt dieses Dokument verändert hat. - -Die Vervielfältigungsbedingungen für Emacs selbst sind etwas -komplexer, folgen aber in etwa den gleichen Richtlinien. Lesen Sie -bitte die Datei COPYING und geben Sie Emacs an Ihre Freunde weiter! -Helfen Sie mit, die Idee von freier Software zu propagieren, indem Sie -freie Software verwenden, verteilen, oder sogar selber schreiben. - ---- end of TUTORIAL.de --- - -;;; Local Variables: -;;; coding: latin-1 -;;; End: - -;;; arch-tag: a8f2fe06-631d-4ae1-887e-446f971b0baa diff --git a/etc/TUTORIAL.eo b/etc/TUTORIAL.eo deleted file mode 100644 index 1f6e2d87880..00000000000 --- a/etc/TUTORIAL.eo +++ /dev/null @@ -1,1126 +0,0 @@ -Lernilo pri Emacs. Vidu finon por kondiæoj pri kopii. -Mallonga lernilo pri Emakso (Emacs). -- La uzokondiæojn vd æe la fino. - -Emaksaj ordonoj øenerale uzas aý la STIR-klavon (ofte markitan "Ctrl" -aý "CTL"), aý la META-klavon (ofte markitan "EDIT" aý "Alt"). Prefere -ol plene skribi tion æiufoje, ni uzos la sekvajn mallongigojn: - - C- signifas "premante la STIR-klavon tajpu la signon ". - Do, C-f estus: premtenu la STIR-klavon kaj tajpu f. - - M- signifas "premante la META-klavon (aý EDIT- aý Alt-klavon) - tajpu n. Se vi havas nek META- nek EDIT- nek - Alt-klavon, anstataýe premu kaj malpremu la Esc-klavon kaj - poste tajpu n. Ni skribas por la Esc-klavo. - -GRAVA NOTO: por fini la Emaksan seancon, tajpu C-x C-c. (Du signoj.) -En æi tiu lernilo, la signoj ">>" æe la maldekstra marøeno rekomendas -al vi tuj provi uzi ordonon. Ekzemple: -<> -[Mezo de paøo malplenas pro instruaj kialoj. La teksto pluas sube.] ->> Nun tajpu C-v (Vidu sekvantan ekranplenon) por vidigi la sekvan - ekranplenon. (Procedu: tenante premita la STIR-klavon tajpu v). - De nun, ripetu æi tion æiun fojon kiam vi finlegos la ekranon. - -Notu ke estas dulinia komuna¼o inter la tujsekvaj ekranplenoj; tio -donas kontinuecon por faciligi la legadon. - -Antaý æio vi bezonas scii kiel moviøi de loko al loko en la teksto. -Vi jam povas moviøi je unu ekrano antaýen per C-v. Por moviøi -malantaýen je unu ekrano, tajpu M-v (premu la META-klavon kaj tajpu v, -aý tajpu c se vi ne havas META-, EDIT- aý Alt-klavon). - ->> Provu tajpi M-v kaj sekve C-v kelkfoje. - - -* RESUMO --------- - -La sekvaj ordonoj servas por foliumi ekranplenojn: - - C-v Moviøu antaýen je unu ekranpleno - M-v Moviøu malantaýen je unu ekranpleno - C-l Viþu la ekranon kaj reeligu la tutan tekston, aranøante - øin æirkaý la kursoro lokita centre de la ekrano. - (Tiu estas C-L, la stira lo; ne C-1, la stira unu.) - ->> Trovu la kursoron, kaj notu øian kuntekston. Tajpu C-l. Retrovu - la kursoron kaj notu ke øi restas en la sama kunteksto. - - -* BAZAJ RIMEDOJ POR REGI KURSORON ---------------------------------- - -Foliumi per ekranplenoj estas utila afero, sed kiel oni moviøu al -preciza loko en la teksto sur la ekrano? - -Estas kelkaj metodoj por fari tion. Oni povas uzi la sagoklavojn, sed -pli produktive estas teni la manojn en la normala pozicio kaj uzi la -ordonojn C-p, C-b, C-f, kaj C-n. Æiu de tiuj ordonoj movas la -kursoron je unu vertikalo aý horizontalo en la koncerna direkto sur la -ekrano. Æi tiu tabelo montras tiujn kvar ordonojn kaj kien ili movas -la kursoron: - - Al la antaýa linio, C-p - (angle: Previous line) - : - : - Antaýen, C-b .... Nuna loko de la kursoro .... Sekven, C-f - (ang. Backward) : (ang. Forward) - : - Al la sekva linio, C-n - (angle: Next line) - ->> Movu la kursoron al la centra linio de la diagramo per C-n aý C-p. - Tajpu C-l por vidi la tutan diagramon vertikale centrigita sur la - ekrano. - -La literoj estas elektitaj laý la koncernaj anglaj vortoj: P el -"previous", N el "next", B el "backward" kaj F el "forward". Tiuj -estas la bazaj ordonoj por movi la kursoron, kaj vi uzos ilin æiam, do -utilas al vi lerni ilin nune. - ->> Uzu C-n kelkfoje por mallevi la kursoron al æi tiu linio. - ->> Uzu C-f por avanci en la linion kaj sekve C-p por movi supren. - Atentu kion C-p faras kiam la kursoro estas meze de la linio. - -Æiu teksta linio finiøas per novlinia signo, kiu disigas øin disde la -sekva linio. La lasta linio en via dosiero devus havi novlinion æe la -fino (sed Emacs ne postulas øin). - ->> Provu uzi C-b æe linikomenco. Øi devas movi al la fino de la - antaýa linio. Tio okazas æar øi movas reen trans la novlinian - signon. - -C-f povas movi trans novlinion analogie kiel C-b - ->> Uzu C-b por vidi kie estas la kursoro. - Poste uzu C-f kelkfoje por reveni æe la linifinon. - Poste faru unu C-f pli por transiri en la sekvantan linion. - -Kiam vi pasas trans la supron aý malsupron de la ekrano, la teksto -transranda þoviøas sur la ekranon. Tio estas nomata "rulumado". Øi -ebligas movi la kursoron al specifita loko en la teksto sen perdi øin -(la kursoron) de sur la ekrano. - ->> Provu uzi C-n por movi la kursoron de sur la malsupro de la ekrano, - kaj vidu kio okazas. - -Se movado per signoj estas tro malrapida, moviøu per vortoj. M-f -(Meta-f) movas je unu vorto posten kaj M-b movas je unu vorto reen. - ->> Tajpu kelkfoje M-f kaj M-b. - -Kiam vi estas meze de vorto, M-f movas al la fino de la vorto. Kiam -vi estas en intervorta spaco, M-f movas al la fino de la sekva vorto. -M-b faras analogie en la mala direkto. - ->> Tajpu M-f kaj M-b kelkfoje, intermiksante kun C-f kaj C-b, por vidi - la efikon de M-f kaj M-b el diversaj lokoj ene kaj inter vortoj. - -Rimarku la analogion inter C-f kaj C-b unuflanke, kaj M-f kaj M-b -aliflanke. Tre ofte Meta-signoj servas por funkcioj rilataj al unuoj -difinitaj lingve (vortoj, frazoj, alineoj), dum la stiraj C-signoj -funkcias sur elementaj unuoj sendependaj de la enhavo (signopozicioj, -linioj, ktp.). - -Tiu analogio validas ankaý por linioj kaj frazoj: C-a kaj C-e movas al -la komenco aý fino de linio, kaj M-a kaj M-e movas al la komenco aý -fino de frazo. - ->> Provu kelkajn C-a, poste kelkajn C-e. - Provu kelkajn M-a, poste kelkajn M-e. - -Observu kiel ripetaj C-a faras nenion pli ol unufoje, dum ripetaj M-a -plu movas je unu frazo pluen. Kvankam la analogio ne estas plena, æiu -ordono kondutas nature. - -La loko de la kursoro en la teksto estas nomata "punkto" (angle -"point"). Alidire, la kursoro montras sur la ekrano kie "punkto" -estas en la teksto. - -Jen resumo de simplaj ordono por movi la kursoron, inklude la ordonojn -por moviøi per vortoj kaj frazoj: - - C-f Moviøu sekven je unu signopozicio - C-b Moviøu reen je unu signopozicio - - M-f Moviøu sekven je unu vorto - M-b Moviøu antaýen je unu vorto - - C-n Moviøu en la malsuran linion - C-p Moviøu en la suran linion - - C-a Moviøu al la linikomenco - C-e Moviøu al la linifino - - M-a Moviøu al la komenco de la frazo - M-e Moviøu al la fino de la frazo - ->> Provu æiujn æi ordonojn, nun po kelkfoje por praktiki. Ili estas - la plej ofte uzataj ordonoj. - -Du aliaj kursormovaj ordonoj estas M-< (Meta Malpli-ol), kiu movas al -la komenco de la tuta teksto, kaj M-> (Meta Pli-ol), kiu movas al la -fino de la tuta teksto. - -Æe la plejmulto de terminaloj, la "<" estas super la komo, do vi devas -uzi la majuskligan klavon por tajpi øin. Æe tiuj terminaloj vi ankaý -devas uzi la majuskligan klavon por tajpi M-<; sen la majuskliga klavo -rezultus "M-," (Meta-komo). - ->> Provu tajpi M-< nune, por moviøi al la komenco de la lernilo. - Poste uzu C-v multfoje por reveni æi tien. - ->> Provu tajpi M-> nune, por moviøi al la fino de la lernilo. - Poste uzu M-v multfoje por reveni æi tien. - -Vi ankaý povas movi la kursoron per la sagoklavoj, se via terminalo -havas ilin. Ni tamen rekomendas ke vi lernu C-b, C-f, C-n kaj C-p pro -tri kialoj. Unue, ili funkcias æe æia terminalo. Due, kiam vi -kutimiøos al Emakso, vi trovos ke tajpi tiujn stirsignojn estas pli -rapida ol tajpi la sagoklavojn (æar vi ne devas formovi viajn manojn -de la normala tajpada pozicio). Trie, kiam vi kutimiøos uzi tiujn -stirajn ordonojn, vi facile lernos uzi ankaý aliajn kursormovajn -ordonojn. - -La plejparto da Emaksaj ordonoj akceptas nombran argumenton; por la -plejparto da ordonoj, øi funkcias kiel ripetilo. Por indiki al ordono -la nombron de ripetoj, tajpu C-u kaj sekve la ciferojn antaý ol tajpi -la ordonon. Se vi havas META-klavon (aý EDIT-, aý Alt-klavon), eblas -ankaý alia metodo por doni nombran argumenton: tajpu la ciferojn -premtenante la META-klavon. Ni rekomendas lerni la metodon de C-u æar -øi funkcias æe æia terminalo. La nombra argumento ankaý estas nomata -"prefiksa argumento", æar la argumenton oni tajpas antaý la koncerna -ordono. - -Ekzemple, C-u 8 C-f movas vin al la oka signo sekvanta. - ->> Uzu C-n aý C-p kun nombra argumento por movi la kursoron en apudan - linion per sola ordono. - -La plejparto da ordonoj uzas la nombran argumenton kiel ripetilon, sed -iuj ordonoj øin uzas alicele. Kelkaj ordonoj (tamen neniu el la -lernitaj) uzas øin kiel indikilon -- la ekzisto de prefiksa argumento, -sendepende de øia valoro, igas la ordonon agi alimaniere. - -C-v kaj M-v estas alispeca escepto. Kiam vi donas al ili argumenton, -ili rulumas la ekranon supren aý suben je tiom da linioj, anstataý je -ekranplenoj. Ekzemple, C-u 8 C-v rulumas la ekranon je 8 linioj. - ->> Tajpu C-u 8 C-v nun. - -Æi tio devis rulumi la ekranon je 8 linioj supren. Se vi deziras -retrorulumi øin suben, vi povas doni argumenton al M-v. - -Se vi uzas Emakson sub grafika fenestrosistemo, ekz-e X11 aý -MS-Windows, øi devas havi altan ortograman regionon nomatan rulumskalo -æe la (mal)dekstra flanko de la Emaksa fenestro. Vi povas rulumi la -tekston klakante per la muso en la rulumskalo. - ->> Provu premi la mezan butonon (de la muso) æe la supro de la - emfazata regiono interne de la rulumskalo. Tio devus rulumi la - tekston øis pozicio determinita per tio, kiom alte aý malalte vi - alklakis. - ->> Provu movi la muson supren kaj suben, tenante premita la mezan - musbutonon. Vi vidos ke la teksto rulumas supren kaj suben laý - tio, kiel vi movas la muson. - - -* SE EMAKSO SVENIS ------------------- - -Se Emakso æesis respondi al viaj ordonoj, vi povas sendanøere øin -malbloki tajpante C-g. Vi povas uzi C-g por haltigi ordonon kiu -plenumiøas tro longe. - -Vi ankaý povas uzi C-g por forigi nombran argumenton aý la komencon de -ordono kiun vi ne deziras fini. - ->> Tajpu C-u 100 por fari nombran argumenton 100, sekve tajpu C-g. - Nun tajpu C-f. Øi devas movi je nur unu signo, æar vi forigis la - argumenton per C-g. - -Se vi erare tajpis (la eskapklavon), vi povas vin malembarasi de -øi per C-g. - - -* MALÞALTITAJ ORDONOJ ---------------------- - -Iuj Emaksaj ordonoj estas malþaltitaj por ke komencantoj ne uzu ilin -akcidente. - -Se vi tajpas iun el la malþaltitaj ordonoj, Emakso eligas mesaøon -indikantan la tajpitan ordonon, kaj demandas æu vere vi volas uzi øin. - -Se vi intencas uzi la ordonon, tajpu spaceton responde al la demando. -Normale, se vi ne deziras plenumi la malþaltitan ordonon, respondu per -"n". - ->> Tajpu C-x C-l (kiu estas malþaltita ordono), kaj tajpu "n" responde - al la demando. - - -* FENESTROJ ------------ - -En Emakso vi povas havi plurajn fenestrojn montrantajn sian propran -tekston. Ni klarigos poste kiel uzi plurajn fenestrojn. Sed nun ni -klarigu kiel forigi nebezonatajn fenestrojn kaj reveni al la simpla -unufenestra redaktado. Tio estas facila: - - C-x 1 Unu fenestro (t.e., forigu æiujn aliajn fenestrojn) - -Tio estas STIR-x kaj poste la cifero 1. "C-x 1" pligrandigas la -fenestron enhavantan la kursoron, tiel ke øi okupu la tutan ekranon. -Øi malaperigas æiujn aliajn fenestrojn. - ->> Movu la kursoron en æi tiun linion kaj tajpu C-u 0 C-l. ->> Tajpu C-h k C-f. - Vidu kiel æi tiu fenestro malkreskas, dum nova fenestro aperas por - montri instrukcion pri la C-f ordono. - ->> Tajpu C-x 1 kaj vidu la instrukcian fenestron malaperi. - -Tiu ordono malsimilas la aliajn ordonojn kiujn vi lernis antaýe æar øi -konsistas el du signoj. Øin komencas la signo STIR-x. Ekzistas tuta -serio da ordonoj kiuj komenciøas per STIR-x; multaj el ili koncernas -fenestrojn, dosierojn, bufrojn, kaj rilatajn aferojn. Tiuj ordonoj -estas du, tri aý kvar signojn longaj. - - -* ENÞOVO KAJ FORVIÞO --------------------- - -Se vi deziras enþovi tekston, simple øin tajpu. Signojn kiujn oni -povas vidi, ekzemple A, 7, *, ktp, Emakso traktas kiel tekston kaj -enmetas tuj. Tajpu (la enigan klavon) por enigi linifinilon. - -Por forviþi la ¼us tajpitan signon tajpu . -estas tiu klavo de la klavaro, kiun oni ankaý ekster Emakso normale -uzas por forigi la ¼us tajpitan signon. Kutime øi estas granda klavo -unu aý du vicojn super Return-klavo, kaj eble estas markita per -"Delete", "Del" aý "Backspace". - -Se tiu klavo estas markita per "Backspace" (retropaþo), tiam øuste øin -oni uzu por . Se krome estas alia klavo, markita , -øi ne estas . - -Øenerale, estas tiu klavo kiu forviþas la signon tuj antaý -la nuna kursorloko. - ->> Faru æi tion nun -- tajpu kelkajn signojn, poste forviþu ilin - tajpante kelkajn . Ne timu difekti æi tiun dosieron; vi - ne þanøos la originalan lernilon. Æi tio estas nur ties labora - kopio por vi. - -Kiam linio da teksto iøas pli longa ol la ekrana linio, la teksta -linio transiras sur la sekvan ekranan linion. Retroklino ("\") -- aý, -en grafika fenestrosistemo, kurba sageto -- en la dekstra marøeno -indikas tian transiron. - ->> Enigu tekston øis øi atingos la dekstran marøenon, kaj plu enigu. - Vi vidos transiron en la sekvan linion. - ->> Ripete por remallongigi la tekstan linion øis la longo - de unu ekrana linio denove. La transiro malaperas. - -Vi povas forviþi linifinan signon tiel same kiel iun ajn signon. -Forviþo de linifinilo inter du linioj kunigas ilin en unu linion. Se -la rezulta kunigita linio estas pli longa ol la ekrana larøo, øi -aperos kun transiro. - ->> Movu la kursoron al la komenco de linio kaj tajpu . La - linio kuniøos kun la ¼usa linio. - ->> Tajpu por reenigi la linifinilon kiun vi ¼us forviþis. - -Memoru ke vi povas doni ripetilon al plejparto da Emaksaj ordonoj; tio -koncernas ankaý tekstajn signojn. Ripetilo æe teksta signo enigas øin -plurfoje. - ->> Provu tion nun -- tajpu "C-u 8 *" por enigi "********". - -Vi lernis la plej fundamentan metodon por tajpi en Emakso kaj por -korekti erarojn. Vi povas forviþi per vortoj aý per linioj. Jen -resumo de forviþaj ordonoj: - - forviþu la signon ¼us antaý la kursoro - C-d forviþu la signon tuj post la kursoro - - M- for¼etu la vorton ¼us antaý la kursoro - M-d for¼etu la vorton tuj post la kursoro - - C-k for¼etu de la kursorloko øis la linifino - M-k for¼etu de la kursorloko øis la frazfino - -Rimarku ke kaj C-d rilate al M- kaj M-d etendas -la analogion komencitan de C-f kaj M-f (nu, ne vere estas -stirsigno, sed ni ne estu tro pedantaj). C-k kaj M-k iom similas al -C-e kaj M-e, sed rilate al linioj anstataý frazoj. - -Vi ankaý povas for¼eti iun ajn parton de la bufro per unu senvaria -metodo. Moviøu al unu ekstrema¼o de tiu parto, kaj tajpu "C-@" (aý -"C-SPC", "SPC" simbolas spaceton). Moviøu al la alia ekstrema¼o, kaj -tajpu C-w. Tio for¼etas la tutan tekston inter la du lokoj. - ->> Movu la kursoron al la V æe la komenco de la antaýa alineo. ->> Tajpu C-SPC. Emakso devas montri mesaøon: "Mark set" ("Markite") - æe la fundo de la ekrano. ->> Movu la kursoron al la o en "ekstrema¼o", en la dua linio de la - alineo. ->> Tajpu C-w. Tio for¼etos la tekston komenciøantan æe la V, kaj - finiøantan ¼us antaý la o. - -La diferenco inter "for¬ETI" kaj "forVIÞI" ion konsistas en tio, ke vi -povas re-enþovi "for¼etitajn" a¼ojn, sed ne "forviþitajn" a¼ojn. -Re-enþovo de for¼etita teksto nomiøas "en¼eto" (angle "yanking"). -Øenerale, la ordonoj por forigi multe da teksto øin "for¼etas" (do, -ili ankaý ebligas øin "en¼eti"); male, la ordonoj por forviþi nur unu -signon, aý nur blankajn liniojn kaj spacetojn, ne konservas la -forigitan tekston (kaj oni ne povas øin en¼eti). - ->> Movu la kursoron al la komenco de nemalplena linio. Poste tajpu - C-k por for¼eti la tekston de tiu linio. ->> Tajpu C-k duafoje. Vi vidos ke øi for¼etas la linifinilon - sekvantan tiun linion. - -Rimarku ke unuopa C-k for¼etas la enhavon de la linio, kaj dua C-k -for¼etas la linion mem kaj igas la postajn liniojn þoviøi supren. C-k -traktas nombran argumenton speciale: øi for¼etas tiom da linioj KAJ -ilian enhava¼on. Æi tio ne estas simpla ripetado. C-u 2 C-k for¼etas -du liniojn kaj iliajn linifinojn; tajpi C-k dufoje ne farus tion. - -Reenigi for¼etitan tekston nomiøas "en¼etado". Vi povas en¼eti la -for¼etitan tekston aý en la saman lokon de kie øi estis for¼etita, aý -en alian lokon de la redaktata teksto, aý eæ en alian dosieron. Vi -povas en¼eti la tekston kelkfoje por fari plurajn kopiojn de øi. - -Por repreni la laste for¼etitan tekston kaj enigi øin tien kie la -kursoro nune estas, tajpu "C-y" (de la angla vorto "yank"). - ->> Provu øin: tajpu C-y por en¼eti la tekston. - -Atentu ke se vi tujsekve faras plurajn C-k, æiuj for¼etata¼oj -konserviøas kune, por ke oni povu en¼eti æiujn æi liniojn per unu C-y. - ->> Faru æi tion nun, tajpu C-k kelkfoje. - -Nun, por repreni tiun for¼etitan tekston: - ->> Tajpu C-y. Poste movu la kursoron je kelkaj linioj suben kaj tajpu - C-y denove. Nun vi scias kiel kopii iom da teksto. - -Kion fari se vi, havante iom da teksto en¼etota, for¼etas ion alian? -C-y en¼etus la pli ¼usan for¼eta¼on. Sed la antaýa teksto ne estas -perdita. Vi povas re-en¼eti øin per la ordono M-y. Farinte C-y por -en¼eti la plej ¼usan for¼eta¼on, tajpu M-y por anstataýigi la -en¼etitan tekston per pli frua for¼eta¼o. Tajpadu M-y denove, kaj unu -post la alia en¼etiøos pli fruaj for¼eta¼oj. Trovinte la seræatan -pecon, vi ne bezonas fari ion por konservi øin. Simple daýrigu vian -redaktadon, kaj lasu la en¼etitan tekston tie kie øi estas. - -Se vi uzos M-y sufiæe da fojoj, vi revenos al la komenca loko (la plej -¼usa for¼eta¼o). - ->> For¼etu linion, moviøu ien, for¼etu alian linion. - Poste uzu C-y por en¼eti reen la duan for¼etitan linion. - Poste uzu M-y kaj la unua for¼etita linio anstataýigos øin. - Uzu M-y plue kaj rigardu kion vi akiras. Daýrigu øis la reapero de - la dua for¼etita linio, kaj poste de kelkaj pli. Se vi deziras, vi - povas doni al M-y pozitivajn kaj negativajn argumentojn. - - -* MALFARADO ------------ - -Se vi þanøis la tekston, kaj sekve decidas ke tio estis eraro, vi -povas malfari la þanøon per la "malfaru"-ordono, C-x u (de la angla -"undo"). - -Normale, C-x u malfaras la þanøojn faritajn per unu ordono; se vi -tujsekve ripetas la ordonon C-x u kelkfoje, æiu ripeto malfaras unu -plian ordonon. - -Sed estas du esceptoj: ordonoj kiuj ne þanøas la tekston ne estas -atentataj (tiuj inkludas kursormovajn kaj rulumadajn ordonojn), kaj -memenigaj signoj kutime ariøas en grupojn po øis 20. (Tio malpliigas -la tajpadojn de C-x u necesajn por malfari tekstenigon.) - ->> For¼etu æi-linion per C-k, sekve tajpu C-x u kaj øi devas reaperi. - -C-_ estas alternativa malfara ordono; øi funkcias same kiel C-x u, sed -øi estas pli facila por plurfoja tajpado sinsekva. La malavantaøo de -C-_ estas ke iuj klavaroj malhavas evidentan metodon por tajpi øin. -Tial ni provizas ankaý C-x u. Æe iu klavaroj vi povas ricevi C-_ -tajpante / dum vi premtenas STIR-klavon. - -Nombra argumento æe C-_ aý C-x u agas kiel ripetilo. - -Vi povas malfari forviþon de teksto egale bone kiel vi povas malfari -for¼eton de teksto. La diferenco inter forviþo kaj for¼eto koncernas -la eblon en¼eti per C-y; øi ne ekzistas por malfaro. - - -* DOSIEROJ ------------ - -Por persistigi la redaktatan tekston, necesas meti øin en dosieron. -Alie, øi pereos kiam via Emaksa procezo finiøos. Por meti vian -tekston en dosieron, necesas "trovi" la dosieron antaý ol enigi la -tekston. (Tio ankaý estas nomata "viziti" la dosieron; angle "find, -visit a file".) - -Trovi dosieron signifas ke vi igas la enhavon de la dosiero atingebla -per Emakso. Plurrilate, øi estas kvazaý vi redaktus la dosieron mem. -Tamen, la þanøoj kiujn vi faras per Emakso ne persistiøas øis kiam vi -"konservos" (angle "save") la dosieron. Vi povas konservi la dosieron -por ne lasi duonþanøitan dosieron æe la sistemo kiam vi ne deziras -tion. Eæ kiam vi konservas, Emakso lasas la originalan dosieron sub -þanøita nomo por la eventualo ke vi poste decidos ke viaj þanøoj estis -eraraj. - -Se vi rigardos apud la fundon de la ekrano vi vidos linion kiun -komencas kaj finas strekoj; komence "--:-- TUTORIAL.eo" aý io simila. -Tiu parto de la ekrano normale montras la nomon de la vizitata -dosiero. Øuste nun, vi vizitas dosieron nomatan "TUTORIAL.eo" kiu -estas via propra kopio de la Emaksa lernilo. Kiam vi trovas dosieron -per Emakso, la nomo de tiu dosiero aperas æe tiu sama loko. - -Unu aparta¼o de la dosiertrova ordono estas, ke vi devas indiki kiun -dosiernomon vi deziras. Ni diras ke la ordono "legas argumenton de la -terminalo" (æi-okaze la argumento estas la dosiernomo). Post kiam vi -tajpis la ordonon - - C-x C-f Trovu dosieron - -Emakso petas ke vi tajpu la dosiernomon. La dosiernomo kiun vi tajpas -aperas sur la plej malsupra linio de la ekrano. Tiu linio estas -nomata "la bufreto" (angle "minibuffer") kiam øi estas uzata por tia -speco de enigado. Vi povas uzi ordinarajn Emaksajn redaktajn ordonojn -por redakti la dosiernomon. - -Dum vi enigas la dosiernomon (aý iun ajn bufretan enigon), vi povas -aboli la ordonon per C-g. - ->> Tajpu C-x C-f, kaj sekve C-g. Æi tio abolas la bufreton, kaj ankaý - abolas la ordonon "C-x C-f" kiu uzis la bufreton. Do vi ne trovis - dosieron. - -Fininte enigi la dosiernomon, tajpu . Tiam eklaboros la -ordono C-x C-f, kaj trovos la dosieron kiun vi elektis. La bufreto -malaperos kiam la C-x C-f ordono finiøos. - -Post eta tempo la enhavo de la dosiero aperas sur la ekrano, kaj vi -povas redakti la enhavon. Kiam vi deziras persistigi viajn þanøojn, -tajpu la ordonon - - C-x C-s konServu (angle "save") la dosieron - -Tio kopias la tekston el interne de Emakso en la dosieron. Æe la unua -konservado, Emakso renomas la originalan dosieron per nova nomo por ke -øi ne perdiøu. La nova nomo estas farata per aldono de "~" al la fino -de la originala dosiernomo. - -Fininte la konservadon, Emakso montras la nomon de la dosiero -skribita. Konservu sufiæe ofte, por ne perdi multe da laboro se la -sistemo paneos. - ->> Tajpu C-x C-s, por konservi vian kopion de la lernilo. - Emakso devas montri la mesaøon "Wrote ...TUTORIAL.eo" (Skribis - ...TUTORIAL.eo) æe la fundo de la ekrano. - -NOTO: Sur iuj sistemoj, C-x C-s senmovigas la ekranon kaj vi vidos -nenian pluan eligon de Emakso. Tio indikas ke operaciuma "trajto" -nomata "fluregulado" (angle "flow control") interkaptis la ordonon C-s -kaj ne lasas øin trapasi al Emakso. Por revivigi la ekranon, tajpu -C-q. Poste rigardu la sekcion nomatan "Spontaneous Entry to -Incremental Search" en la Emaksa manlibro por konsilo kion fari pri æi -tiu "trajto". - -Vi povas trovi ekzistantan dosieron, por vidigi aý redakti øin. Vi -ankaý povas trovi dosieron kiu ankoraý ne ekzistas. Æi tio estas la -maniero por krei dosieron per Emakso: trovu la dosieron, komence -malplenan, kaj sekve ekenigu la tekston por la dosiero. Kiam vi petos -"konservi" la dosieron, Emakso vere kreos la dosieron kun la teksto -kiun vi enigis. De tiam vi povos opinii ke vi redaktas jam -ekzistantan dosieron. - - -* BUFROJ --------- - -Se vi trovas duan dosieron per C-x C-f, la unua dosiero restas interne -de Emakso. Vi povas reiri al øi retrovante øin denove per C-x C-f. -Tio ebligas al vi meti plurajn dosierojn en Emakson. - ->> Kreu dosieron nomatan "umo" tajpante "C-x C-f umo ". - Poste enigu iom da teksto, redaktu øin, kaj konservu "umo"n - tajpante "C-x C-s". - Fine, tajpu "C-x C-f TUTORIAL.eo " por reveni al la - lernilo. - -Emakso tenas la tekston de æiu dosiero en objekto nomata "bufro". -Trovo de dosiero kreas novan bufron interne de Emakso. Por vidi -liston de la bufroj kiuj nune ekzistas en via Emakso-procezo, tajpu - - C-x C-b Listigu bufrojn - ->> Provu C-x C-b nun. - -Vi vidas, ke æiu bufro havas nomon, kaj ke øi ankaý eble havas -dosiernomon por la dosiero kies enhavon øi tenas. ÆIU teksto kiun vi -vidas en Emaksa fenestro estas æiam parto de iu bufro. - ->> Tajpu C-x 1 por forigi la liston de bufroj. - -Se vi havas plurajn bufrojn, je æiu momento nur nur unu el ili estas -"la kuranta": tiu, kiun vi redaktas. Se vi volas redakti alian -bufron, vi bezonas "transiri" en øin. Se la celata bufro respondas al -dosiero, vi povas transiri per vizito al øi: C-x C-f ... Sed estas -pli facila metodo: uzi la ordonon "C-x b", donante al øi la nomon de -la celata bufro. - ->> Tajpu "C-x b umo " por transiri en la bufron "umo", - entenantan la tekston de la dosiero "umo". - Poste tajpu "C-x b TUTORIAL.eo " por reveni en la lernilon. - -Plej ofte, la bufronomo estas egala al la nomo de øia dosiero (sen la -dosiera parto). Tamen, ne æiam tio estas vera. La listo de bufroj -farita per "C-x C-b" æiam vidigas al vi la nomojn de æiuj bufroj. - -ÆIU teksto kiun vi vidas en Emaksa fenestro estas æiam parto de iu -bufro. Tamen iuj bufroj ne respondas al dosieroj. Ekzemple, la bufro -nomata "*Buffer List*" (Listo de Bufroj) ne havas dosieron. Øi estas -la bufro enhavanta la liston de bufroj faritaj per la ordono C-x C-b. -Ankaý la bufro "*Messages*" respondas al neniu dosiero; øi entenas la -mesaøojn aperintajn en la funda linio dum la Emaksa seanco. - ->> Tajpu "C-x b *Messages* " por vidigi la bufron de mesaøoj. - Poste tajpu "C-x b TUTORIAL.eo " por reveni en la lernilon. - -Se vi þanøas la tekston de unu dosiero, kaj sekve trovas alian -dosieron, æi tio ne konservas la unuan dosieron. Øiaj þanøoj restas -interne de Emakso, en la bufro de tiu dosiero. La kreado aý redaktado -de la bufro de la dua dosiero ne efikas la bufron de la unua dosiero. -Æi tio estas utilega, sed øi ankaý signifas ke vi bezonas oportunan -metodon por konservi la bufron de la unua dosiero. Estas øena devi -revenadi en øin per C-x C-f nur por konservi øin per C-x C-s. Tial ni -havas - - C-x s Konservu iom da bufroj. - -C-x s demandas vin pri æiu þanøita bufro kiun vi ne konservis. Øi -demandas vin, pri æiu tia bufro, æu konservi la bufron. - ->> Enigu linion da teksto, kaj sekve tajpu C-x s. - Emakso devas demandi vin æu øi konservu la bufron "TUTORIAL.eo". - Jesu tajpante "y" (de la angla "yes"). - - -* ETENDI LA ORDONARON ---------------------- - -Ekzistas multege pli da Emaksaj ordonoj ol eblas meti sur æiuj el la -stiraj kaj meta-aj signoj. Emakso solvas tiun problemon per la -X-ordonoj (de la angla eXtend, "etendo"). Estas du specoj da ili: - - C-x Signa etendo. Sekvata de unu signo. - M-x Nomhava ordona etendo. Sekvata de plena nomo. - -Æi tiuj estas la ordonoj ja utilaj, sed malpli oftaj ol la ordonoj -kiujn vi jam lernis. Vi jam vidis du el ili: la dosierajn ordonojn -C-x C-f por "trovi" kaj C-x C-s por "konservi". Alia ekzemplo estas -la ordono por fini Emaksan seancon -- la ordono C-x C-c. (Ne timu -perdi faritajn þanøojn; C-x C-c proponas konservi æiun þanøitan -dosieron antaý ol æesigi Emakson.) - -C-z estas la ordono por eliri Emakso *provizore* -- tiel ke vi povas -reveni en la saman Emaksan seancon poste. - -Sur sistemoj kiuj permesas øin, C-z "provizore æesigas" Emakson; t.e. -øi revenas en la þelon sed ne detruas Emakson. Je la plej komunaj -þeloj, vi povas reaktivigi Emakson per la ordono "fg" (de la angla -"foreground") aý per "%emacs". - -Sur sistemoj kiuj ne permesas provizoran æesigon, C-z kreas sub-þelon -sub Emakso por doni al vi þancon lanæi aliajn programojn kaj reiri al -Emakso poste; øi ne vere "eliras" el Emakso. Æi-okaze, la þela ordono -"exit" (eliru) estas la kutima maniero reiri al Emakso de la sub-þelo. - -La ordonon C-x C-c uzu por adiaýi. Øi estas ankaý la ordono uzenda -por eliri Emakson lanæitan per retpoþta programo aý alia simila -utila¼o, æar tiuj eble ne scias kiel trakti provizoran æesigon de -Emakso. Tamen, ordinare, se vi ne estas tuj adiaýonta, preferindas -provizore æesigi Emakson per C-z anstataý eliri Emakson. - -Ekzistas multe da ordonoj C-x. Jen listo de tiuj kiujn vi jam konas: - - C-x C-f Trovu dosieron. - C-x C-s Konservu dosieron. - C-x C-b Listigu bufrojn. - C-x C-c Æesigu Emakson. - C-x 1 Forigu æiujn fenestrojn krom unu. - C-x u Malfaru. - -Nomhavajn etenditajn ordonojn oni uzas eæ malpli ofte, aý uzas ilin -nur en kelkaj reøimoj. Ekzemplo estas la ordono "replace-string" -(anstataýigu-æenon), kiu anstataýigas unu æenon je alia tutbufre. -Kiam vi tajpas M-x, Emakso demandas de vi æe la fundo de la ekrano la -nomon de la ordono; æi-okaze, "replace-string". Simple tajpu -"repl s" kaj Emakso kompletigos la nomon. Finu la ordonnomon -per . - -La ordono replace-string postulas du argumentojn -- la anstataýigOTan -kaj la anstataýigONTan æenojn. Æiun argumenton finu per . - ->> Movu la kursoron al la blanka linio du liniojn sub æi tiu. - Poste tajpu "M-x repl sliniopeco". - - Rimarku kiel tiu æi linio þanøiøis: vi anstataýigis la vorton - l-i-n-i-o per "peco" kie ajn øi aperis, de post la komenca loko de - la kursoro. - - -* AÝTOMATA KONSERVADO ---------------------- - -Kiam vi faris þanøojn en dosiero, sed ankoraý ne konservis ilin, ili -povus perdiøi se via komputilo paneos. Por protekti vin de tio, -Emakso periode "aýtokonservas" æiujn dosierojn kiun vi redaktas. La -nomo de aýtokonservita dosiero havas la signon "#" komence kaj fine; -ekzemple, se via dosiero estas nomata "hello.c", øia aýtokonservita -dosiero nomiøos "#hello.c#". Kiam vi konservos la dosieron -normalmaniere, Emakso malkreos øian aýtokonservitan dosieron. - -Por reakiri vian aýtokonservitajn redakta¼ojn post paneo, -normalmaniere "trovu" la dosieron (per la nomo de la dosiero kiun vi -redaktis, ne per la nomo de la aýtokonservita dosiero) kaj poste tajpu -"yes" por konfirmi ke vi volas uzi la aýtomate konservitan -datumon. - - -* E¦A AREO ----------- - -Se vi tajpas plursignan ordonon malrapide, Emakso montras øin al vi æe -la fundo de la ekrano en areo nomata la "e¶a areo". La e¶a areo -enhavas la plej malsupran linion de la ekrano. - - -* REØIMLINIO -------------- - -La linio tuj super la e¶a areo estas nomata la "reøimlinio". La -reøimlinio montras ion similan al æi tio: - ---:** TUTORIAL.eo 63% L749 (Fundamental)----------------------- - -Tiu linio donas al vi utilan informon pri la stato de Emakso kaj la -redaktata teksto. - -Vi jam scias kion signifas la dosiernomo -- øi estas la dosiero kiun -vi trovis. -NN%-- montras vian nunan lokon en la teksto; øi signifas -ke NN elcentoj de la teksto estas supren de la supro de la ekrano. Se -la supro de la dosiero estas sur la ekrano, øi montras --Top-- -anstataý -- 0%--. Se la malsupro de la teksto estas sur la ekrano, øi -montras --Bot--. Se vi rigardas tekston tiom malgrandan ke æiom da øi -aperas en la ekrano, la reøimlinio montras --All--. - -La L kun ciferoj indikas la pozicion alimaniere: ili indikas la -kurantan lininumeron de "punkto". - -La steloj æe la komenco signifas ke vi þanøis la tekston. Antaý la -þanøoj, kiam vi ekvizitas aý konservis dosieron, en tiu parto de la -reøimlinio estas neniaj steloj, nur strekoj. - -La enkrampa parto de la reøimlinio montras al vi kiujn redaktadajn -reøimojn vi uzas. La defaýlta reøimo estas "Fundamental" (fundamenta) -kiun vi uzas nun. Øi estas ekzemplo pri "æefreøimo". - -Emakso havas multajn diversajn reøimojn. Iuj el ili estas por redakti -diversajn lingvojn kajaý specojn de teksto, ekzemple Lisp-reøimo, -Teksta-reøimo, ktp. Æiam unu kaj nur unu æefreøimo estas aktiva, kaj -øia nomo æiam aperas en la reøimlinio øuste kie "Fundamental" estas -nun. - -Æiu æefreøimo igas iujn ordonojn agi malsame. Ekzemple, estas ordonoj -por krei komentojn en programo, kaj æar æiu programlingvo havas -malsaman ideon pri tio, kiel komento aspektu, æiu æefreøimo devas -enigi komentojn malsame. Æiu æefreøimo estas la nomo de etenda -ordono, per kiu vi povas þalti tiun reøimon. Ekzemple, -"M-x fundamental-mode" estas ordono por þalti la Fundamentan reøimon. - -Se vi redaktos tekston (esperantan, anglan ktp), ekzemple æi tiun -dosieron, al vi eble konvenos Teksta-reøimo. - ->> Tajpu M-x text-mode. - -Ne maltrankviliøu, la Emaksaj ordonoj kiujn vi jam lernis malmulte -þanøiøas. Sed vi povas observi ke M-f kaj M-b nun traktas apostrofojn -kial parton de vortoj. Antaýe, en Fundamenta reøimo, M-f kaj M-b -traktis apostrofojn kiel vortajn disigilojn. - -Æefreøimoj kutime faras tiajn subtilajn þanøojn: la plejmulto da -ordonoj faras "la saman taskon" en æiu æefreøimo, sed ili funkcias -iomete malsame. - -Por vidi dokumentaron pri via nuna æefreøimo, tajpu C-h m. - ->> Per kelkaj C-u C-v loku æi tiun linion æe la supro de la ekrano. ->> Tajpu C-h m, por vidi kiel la Teksta reøimo diferencas disde la - Fundamenta reøimo. ->> Tajpu C-x 1 por forigi la dokumentaron for de la ekrano. - -Æefreøimojn oni nomas æefaj æar ekzistas ankaý "kromreøimoj". -Kromreøimoj ne estas alternativoj kontraý la æefreøimoj, nur negravaj -modifoj al ili. Æiun kromreøimon oni povas þalti aý malþalti, -sendepende de æiuj aliaj kromreøimoj, kaj sendepende de la æefreøimo. -Do vi povas uzi neniom da kromreøimoj, aý unu kromreøimon, aý ian ajn -kombina¼on de kelkaj kromreøimoj. - -Unu utilega kromreøimo, precipe por redakti homlingvan tekston -(esperantan, anglan ktp), estas la reøimo de Aýtomata Linifaldo (Auto -Fill mode). Kiam øi estas þaltita, Emakso aýtomate rompas la linion -inter vortoj æiufoje kiam la enigata tekstolinio iøas tro larøa. - -Por þalti la reøimon de Aýtomata Linifaldo tajpu -"M-x auto fill mode". Kiam la reøimo estas þaltita, vi povas -malþalti øin denove tajpante "M-x auto fill mode". Se la -reøimo estas malþaltita, tiu ordono þaltas øin, kaj se øi estas -þaltita, tiu ordono malþaltas øin. Ni diras ke la ordono "transþaltas -la reøimon". - ->> Tajpu "M-x auto file mode". Poste enigi linion el "asdf ", - ripete, øis vi vidos øin dividita en du liniojn. Vi devas enigi - spacetojn inter "asdf", æar la Aýtomata Linifaldo rompas liniojn - nur æe spacetoj. - -Normale la marøeno estas post 70 signoj, sed vi povas þanøi tion per -la ordono C-x f. Vi devus doni la marøenon kiu vi deziras por nombra -argumento. - ->> Tajpu C-x f kun la argumento 20. (C-u 2 0 C-x f). - Tajpu ia tekston kaj rigardu kiel Emakso faldas liniojn po 20 - signoj. Refiksu la marøenon al 70 per C-x f. - -Se vi faras þanøojn meze de alineo, la Aýtomata Linifalda reøimo ne -refaldas øin por vi. -Por rearanøi la alineon, tajpu M-q (Meta-q) dum la kursoro estas -interne de la alineo. - ->> Movu la kursoron en la antaýan alineon kaj tajpu M-q. - - -* SERÆADO ---------- - -Emakso povas seræi aperojn de æenoj (tiuj estas aroj da apudaj signoj -aý vortoj), aý antaýen tra la teksto, aý malantaýen. Seræi æenon -estas kursormova ordono; øi movas la kursoron al la sekvanta loko kie -la æeno aperas. - -La Emaksa seræa ordono diferencas de la seræaj ordonoj de la plimulto -da redaktiloj per tio, ke øi estas "dumtajpa". Tio signifas ke la -seræo okazas dum vi tajpas la æenon por priseræi. - -La ordono por komenci seræon estas C-s por la seræo antaýen, kaj C-r -por la seræo malantaýen. SED ATENDU! Ankoraý ne provu ilin nun. - -Kiam vi tajpos C-s, vi vidos la æenon "I-search" aperi invite en la -e¶a areo. Æi tio informas vin, ke Emakso estas en la dumtajpa seræo, -atendante ke vi tajpu la æenon kies aperon vi deziras trovi. -finas seræon. - ->> Nun tajpu C-s por komenci seræon. MALRAPIDE, unuliterope, tajpu la - vorton "kursoro", paýzante post æiu tajpita signo por vidi, kio - okazas al la kursoro. - Nun vi estas seræinta por "kursoro", unufoje. ->> Tajpu C-s denove, por seræi la sekvan aperon de "kursoro". ->> Nun tajpu kvarfoje kaj rigardu kiamaniere la kursoro - moviøas. ->> Tajpu por fini la seræon. - -Æu vi vidis, kio okazis? Emakso, en dumtajpa seræo, penas iri al la -apero de la æeno kiun vi jam tajpis. Por iri al la sekvanta apero de -"kursoro" nur tajpu C-s denove. Se nenia ajn apero ekzistas, Emakso -pepas kaj informas vin ke la seræo æi-foje "malsukcesis". Ankaý C-g -finus la seræon. - -RIMARKU: Æe iuj sistemoj, C-s senmovigas la ekranon kaj vi vidos ne -plu da eligo de Emakso. Æi tio indikas ke operaciuma "trajto" nomata -"fluregulado" interkaptis la C-s kaj ne permesas al øi trapasi al -Emakso. Por removebligi la ekranon, tajpu C-q. Konsultu la sekcion -"Spontaneous Entry to Incremental Search" en la Emaksa manlibro por -konsilo pri tio, kiel trakti æi tiun "trajton". - -Se, meze de dumtajpa seræo, vi tajpos , vi rimarkos ke la -lasta signo en la seræata æeno forviþiøas, kaj la seræo retroiras al -la ¼usa loko de la seræo. Ekzemple, supozu ke vi tajpis "k", por -seræi la unuan aperon de "k". Nun se vi tajpus "u, la kursoro moviøus -al la unua apero de "ku". Nun tajpu . Æi tio forigos la -"u" de el la seræata æeno, kaj la kursoro moviøos reen al la unua -apero de "k". - -Se, meze de dumtajpa seræo, vi tajpos STIRan aý META-signon -(esceptante kelkajn signojn, specialajn en la seræo, ekzemple C-s kaj -C-r), la seræo iøos finita. - -La C-s komencas seræon kiu celas iun ajn aperon de la seræata æeno -POST la nuna kursorloko. Se vi deziras seræi ion supre en la teksto, -tajpu C-r anstataýe. Æio dirita pri C-s validas pri C-r, krom ke la -direkto de la seræo estas inversa. - - -* MULTAJ FENESTROJ ------------------- - -Unu el la agrablaj trajtoj de Emakso estas ke vi povas havi plurajn -fenestrojn sur la ekrano samtempe. - ->> Movu la kursoron al tiu æi linio kaj tajpu "C-u 0 C-l" (kun Stira - lo, ne Stira unu). - ->> Nun tajpu "C-x 2", kio fendos la ekranon en du fenestrojn. - Ambaý fenestroj vidigas æi tiun lernilon. La kursoro restas en la - supra fenestro. - ->> Tajpu C-M-v por rulumi la malsupran fenestron - (Se vi ne havas veran Meta-klavon, tajpu Esc C-v.) - ->> Tajpu "C-x o" ("o" de la angla vorto "other", "alia") por movi la - kursoron en la malsupran fenestron. ->> Uzu C-v kaj M-v en la malsupra fenestro por rulumi øin. - Daýrigu legi æi tiun instrukcion en la supra fenestro. - ->> Tajpu C-x o denove por movi la kursoron reen en la supran fenestron. - La kursoro en la supra fenestro estas øuste kie øi estis antaýe. - -Vi povas plu uzi C-x o por moviøi inter fenestroj. Æiu fenestro havas -sian propran kursorlokon, sed nur unu fenestro ja montras la kursoron. -Æiuj el la ordinaraj redaktaj ordonoj apartenas al la fenestro kiu -enhavas la kursoron. Ni nomas tiun la "elektita fenestro". - -La ordono C-M-v estas utilega kiam vi redaktas tekston en unu fenestro -kaj uzas la alian fenestron nur por konsulti. Tiel vi æiam povas havi -la kursoron en la fenestro kie vi redaktas, kaj laýbezone rulumi tra -la alia fenestro per C-M-v. - -C-M-v estas ekzemplo de STIR-META-signo. Se vi havas veran -META-klavon, vi povas tajpi C-M-v premante ambaý STIR kaj META, kaj -tajpante v. Ne gravas, æu STIR aý META "venas unue," æar ili ambaý -funkcias kiel modifiloj de la signo kiun vi tajpas. - -Se vi ne havas veran META-klavon, kaj uzas anstataýe, la ordo -gravas: vi devas tajpi kaj poste C-v, æar "C-ESC v" ne funkcias. -Tiel estas æar estas ne modifilo, sed memstara signo. - ->> Tajpu "C-x 1" (en la supra fenestro) por forigi la malsupran - fenestron. - -(Se vi tajpus C-x 1 en la malsupra fenestro, tio forigus la supran. -Pensu pri tiu ordono kiel "restigu nur unu fenestron -- la fenestron -en kiu mi jam estas.") - -Ne estas nepra¼o havi la saman bufron en ambaý fenestroj. Se vi uzas -"C-x C-f" por trovi dosieron en unu fenestro, la alia fenestro ne -þanøiøas. Vi povas trovi dosieron sendepende en æiu fenestro. - -Jen alia maniero uzi du fenestrojn por montri du malsamajn aferojn: - ->> Tajpu "C-x 4 C-f", kaj sekve la nomon de unu el viaj dosieroj. - Finu per . Rimarku ke la elektita dosiero aperas en la - malsupra fenestro. Ankaý la kursoro iras tien. - ->> Tajpu "C-x o" por retroiri en la supran fenestron, kaj "C-x 1" por - forigi la malsupran fenestron. - - -* REKURSIAJ REDAKTAJ NIVELOJ ----------------------------- - -Iam vi eniros ion nomatan "rekursia redakta nivelo". Tio estas -indikata per ortaj krampoj en la reøimlinio, æirkaý la rondaj krampoj -de la nomo de la æefreøimo. Ekzemple, vi eble vidos [(Fundamental)] -anstataý (Fundamental). - -Por eliri el la rekursia redakta nivelo, tajpu Esc Esc Esc. Tio estas -universala "elira" ordono. Vi ankaý povas uzi øin por forigi kromajn -fenestrojn, aý por eliri el la bufreto. - ->> Tajpu "M-x" por eniri la bufreton; kaj poste tajpu "Esc Esc Esc" - por eliri. - -Oni ne povas uzi C-g por eliri el rekursia redakta nivelo. Tiel estas -æar C-g estas uzata por aboli ordonojn kaj argumentojn INTERNE DE la -rekursia redakta nivelo. - - -* KIEL AKIRI PLUAN HELPON -------------------------- - -En æi tiu lernilo ni penis provizi nur tiom da informo, kiom necesas -por ebligi al vi ekuzi Emakson. Emakso disponigas tiom da ebloj, ke -oni ne povas prezenti æiom da ili æi tie. Tamen, vi eble dezirus -lerni plu pri Emakso, æar øi havas multajn aliajn utilajn trajtojn. -Emakso provizas ordonojn por legi dokumenta¼on pri Emaksaj ordonoj. -Æiuj el tiuj æi "helpaj" ordonoj komenciøas per la signo C-h, kiu -estas nomata "la Help-signo". - -Por uzi la Helpajn ordonojn, tajpu la signon C-h, kaj sekve signon -indikantan kian helpon vi deziras. Se vi estas vere perdita, tajpu -C-h ? kaj Emakso montros al vi la specojn de helpo kiujn øi povas -provizi. Se vi tajpis C-h kaj decidas ke vi ne deziras helpon, simple -tajpu C-g por aboli øin. - -(En iuj lokoj oni þanøas la signifon de la signo C-h. Oni prefere ne -faru tion por æiuj uzantoj, do vi rajtas plendi al la sistemestro. -Dume, se C-h ne montras mesaøon pri helpo æe la fundo de la ekrano, -provu tajpi la F1-klavon aý "M-x help " anstataýe.) - -La plej baza HELPA rimedo estas "C-h c". Tajpu C-h, la signon c, kaj -ordonan signon aý sekvencon; sekve de tio Emakso montras koncizegan -priskribon pri la ordono. - ->> Tajpu C-h c C-p. - En la e¶a areo devas aperi proksimume tia mesaøo: - - C-p runs the command previous-line - -Æi tio diras al vi la "nomon de la funkcio". Funkciaj nomoj servas -æefe por agordi kaj etendi Emakson. Sed æar funkciaj nomoj estas -elektitaj por indiki kion la ordono faras, ili ankaý servas kiel -koncizega priskribo -- sufiæa por rememorigi vin pri ordonoj kiujn vi -jam lernis. - -Ankaý la plursignaj ordonoj, ekzemple "C-x C-s" kaj "v", estas -egale eblaj post C-h c. - -Por akiri pli da informo pri ordono, uzu C-h k anstataý C-h c. - ->> Tajpu C-h k C-p. - -Æi tio montras la plenan priskribon de la funkcio, aldone al øia nomo, -en Emaksa fenestro. Fininte legi la eliga¼on, tajpu "C-x 1" por -forigi la helptekston. Ne nepras fari tion tuj. Vi povas redakti -konsultante la helptekston, kaj poste tajpi C-x 1. - -Jen iom da aliaj utilaj elektoj por C-h: - - C-h f Priskribu funkcion. Vi tajpas la nomon de la funkcio. - ->> Provu tajpi C-h f previous-line. - Æi tio vidigas æiom da la informo kiun Emakso havas pri la funkcio - efektiviganta la C-p ordonon. - - C-h a Rilate al Ordono ("à propos"). Tajpu þlosilvorton kaj - Emakso listigos æiujn el la ordonoj kies nomoj enhavas - tiun þlosilvorton. Vi povas alvoki tiajn ordonoj per - META-x. Por iom da ordonoj, Rilate al Ordono ankaý - listigos unu- aý dusignan sekvencon alvokantan la - saman ordonon. - ->> Tajpu C-h a file. - -Sekve de æi tio vi vidos en aparta fenestro liston da æiuj M-x ordonoj -enhavantaj "file" en sia nomo. Vi vidos signajn ordonojn listigitaj -apud la respondaj ordonnomoj, ekzemple "C-x C-f" kaj "C-x C-w" apud -"find-file" kaj "write-file". - ->> Tajpu C-M-v por rulumi la helpfenestron. Faru æi tion kelkfoje. ->> Tajpu C-x 1 por forigi la helpfenestron. - - C-h i Vidigu dialogan manlibron (t.n. "Info"). Æi tiu - ordono transportos vin en specialan bufron, nomatan - "*info*", kie vi povos legi instrukciojn pri la - paka¼oj instalitaj en via sistemo. Ekzemple, tajpu - "m emacs " por legi la manlibron pri Emakso. - Se vi neniam antaýe uzis Info, tajpu "?", kaj Emakso - gvidos vin tra la prezento de la ebloj de la informa - reøimo. Finleginte æi tiun lernilon, uzu la - Info-manlibron kiel vian æefan dokumenta¼on. - - -* KROMAJ FUNKCIOJ ------------------ - -Pluajn informojn pri Emakso vi povas trovi foliumante ties manlibron, -æu paperan (libroforman) aý dialogan (en Info -- uzu la Help-menuon aý -tajpu "F10 h r"). Du funkcioj kiujn vi probable aparte aprezos estas -la kompletigo, þparanta tajpadon, kaj dired, faciliganta manipuladojn -dosierajn. - -Kompletigo estas rimedo por eviti redundan tajpadon. Ekzemple, se vi -volas transiri en la bufron *Messages*, sufiæas tajpi "C-x b *M" -kaj Emakso kompletigos la bufronomon per tiom da signoj, kiom øi povos -determini surbaze de tio, kion vi jam tajpis. La kompletigo estas -priskribita en la Info-manlibro pri Emakso en la nodo "Completion". - -Dired ebligas al vi listigi dosierujon (kaj eventuale, ties -subdosierujojn), kaj moviøi en tiu listo vizitante, alinomante, -forigante kaj alimaniere manipulante la dosierojn. Dired estas -priskribita en la Info-manlibro pri Emakso en la nodo "Dired". - -La manlibro priskribas ankaý multajn aliajn aparta¼ojn de Emakso. - - -* FINO ------- - -Memoru, por definitive eliri el Emakso uzu C-x C-c. Por eliri en la -þelon provizore, tiel ke vi povu reveni en Emakson poste, uzu C-z. - -Æi tiu lernilo estas farita kun la intenco esti komprenebla por æiu -nova uzanto, do se vi trovis ion ajn malklara, ne restu kulpigante vin -mem -- plendu! La adreso por la Esperanta Traduka Teamo estas -. - - -* KOPIADO ---------- - -Æi tiu lernilo devenas el longa vico da Emaksaj instruaj dosieroj ekde -la dosiero verkita de Stuart Cracraft por la originala Emakso. - -Æi tiu versio de la lernilo, same kiel GNU Emakso, estas metita sub -kopirajton, kaj venas kun permeso por disdoni kopiojn se certaj -kondiæoj estas observataj: - - Copyright (C) 1985, 1999, 2001, 2002, 2005, - 2007 Free Software Foundation, Inc. - - Æi tiu dosiero estas parto de "GNU Emacs". - - "GNU Emacs" estas libera programverko; vi povas øin pludistribui - kaj/aý modifi je la kondiæoj de la GNUa Øenerala Publika Permesilo, - eldonita de "Free Software Foundation", laý la versio 3 de tiu - Permesilo aý, se vi preferas, ajna posta versio. - - Ni distribuas æi tiun programon esperante ke øi estos utila, tamen - SEN IA AJN GARANTIO, i.a. sen la implica garantio pri - SURMERKATIGEBLO aý TAÝGECO POR IU KONKRETA CELO. Pliajn detalojn - vidu en la GNUa Øenerala Publika Permesilo. - - Ekzemplero de la GNUa Øenerala Publika Permesilo devas esti - liverita al vi kun æi tiu programo; se vi øin ne ricevis, turnu vin - al: Free Software Foundation, Inc., 51 Franklin Street, Fifth - Floor, Boston, MA 02110-1301, USA. - -Bonvole legu la dosieron COPYING kaj sekve donu kopiojn de GNU Emakso -al viaj amikoj. Helpu ekstermi programaran obstrukcismon -("proprietigon") per uzado, verkado kaj kunhavigo de libera -programaro! - -Æi tiun lernilon esperantigis D. Dale Gulledge; la tradukon reviziis -kaj kompletigis Sergio B. Pokrovskij. - ---- end of TUTORIAL.eo --- - -;;; Local Variables: -;;; coding: latin-3 -;;; End: - -;; arch-tag: ee436ebb-58b6-4102-9402-1e92c33966e9 diff --git a/etc/TUTORIAL.es b/etc/TUTORIAL.es deleted file mode 100644 index 7fdd96811e5..00000000000 --- a/etc/TUTORIAL.es +++ /dev/null @@ -1,1216 +0,0 @@ -Tutorial de Emacs. Vea al final las condiciones de copiado. - -Generalmente los comandos de Emacs involucran la tecla CONTROL -(algunas veces llamada CTRL O CTL) o la tecla meta (algunas veces -llamada EDIT o ALT). En lugar de escribir completamente esto en cada -ocasión, usaremos las siguientes abreviaturas. - - C- significa mantener presionada la tecla CONTROL mientras - teclea el carácter . Por lo tanto C-f será: Mantenga - presionada la tecla CONTROL y teclee f. - M- significa mantener presionada la tecla META o EDIT o ALT - mientras teclea . Si no hay teclas META, EDIT o ALT, en - su lugar presione y libere la tecla ESC y luego teclee - . Escribimos para referirnos a la tecla ESC. - -Nota importante: para terminar la sesión de Emacs teclee C-x C-c (dos -caracteres). Los caracteres ">>" en el margen izquierdo indican -instrucciones para que usted trate de usar un comando. Por ejemplo: -<> -[Mitad de página en blanco para propósitos didácticos. El texto continúa abajo] ->> Ahora teclee C-v (ver la próxima pantalla) para desplazarse a la - siguiente pantalla (hágalo manteniendo la tecla control - oprimida mientras teclea v). Desde ahora debería hacer esto - cada vez que termine de leer la pantalla. - -Note que se superponen dos líneas cuando se mueve de pantalla en -pantalla; esto provee una continuidad para que pueda seguir leyendo el -texto. - -Lo primero que necesita saber es como moverse de un lugar a otro en el -texto. Ya sabe como avanzar una pantalla, con C-v. Para retroceder -una pantalla teclee M-v (mantenga oprimida la tecla META y teclee v, o -teclee v si no tiene las teclas META, EDIT o ALT). - ->> Intente teclear M-v y luego C-v, varias veces. - - -* RESUMEN ---------- - -Los siguientes comandos son útiles para ver pantallas completas: - - C-v Avanzar una pantalla completa - M-v Retroceder una pantalla completa - C-l Limpiar la pantalla y mostrar todo el texto de nuevo, - moviendo el texto alrededor del cursor al centro de la - pantalla (Esto es CONTROL-L, no CONTROL-1.) - ->> Encuentre el cursor, y fíjese qué texto hay cerca de éste. - Luego teclee C-l. - Encuentre el cursor otra vez y note que el mismo texto está cerca - del cursor ahora. - -Si su terminal las soporta, también puede usar las teclas AvPág o -RegPág para moverse por pantallas completas, pero puede editar más -eficientemente si usa C-v y M-v. - -* MOVIMIENTO BÁSICO DE CURSOR ------------------------------ - -Es útil moverse de una pantalla completa a otra pero, ¿cómo moverse a -un lugar específico dentro del texto en la pantalla? - -Puede hacerlo de diversas formas. Puede usar las teclas de flechas, -pero es mas eficiente mantener las manos en la posición estándar y -usar los comandos C-p, C-b, C-f, y C-n. Estos caracteres son -equivalentes a las cuatro teclas de flechas, de esta manera: - - Línea anterior, C-P - : - : - Atrás, C-b.... Posición actual del cursor .... Adelante, C-f - : - : - Línea siguiente, C-n - ->> Mueva el cursor a la línea en la mitad del diagrama - usando C-n o C-p. Luego teclee C-l para ver el - diagrama completo centrado en la pantalla. - -Le resultará fácil recordar estas letras por las palabras que -representan: P de Previous (anterior), N de Next (siguiente), B de -Backward (atrás) y F de Forward (adelante). Estará usando estos -comandos de posicionamiento básico del cursor todo el tiempo. - ->> Teclee algunos C-n para traer el cursor a esta línea. - ->> Muévase a la línea con C-f y hacia arriba con algunos C-p. Observe - lo que hace C-p cuando el cursor está en medio de la línea. - -Cada línea de texto termina con un carácter de nueva línea (Newline), -que sirve para separarla de la línea siguiente. La última línea de su -archivo debe de tener un carácter de nueva línea al final (pero Emacs -no requiere que ésta lo tenga). - ->> Intente usar C-b al comienzo de una línea. Debería moverse al - final de la línea previa. Esto sucede porque retrocede a través - del carácter de nueva línea. - -C-f puede moverse a través de una nueva línea igual que C-b. - ->> Teclee algunos C-b más para que sienta por donde se encuentra el - cursor. - Luego teclee C-f para regresar al final de la línea. - Luego teclee otro C-f más para moverse a la línea siguiente. - -Cuando pase el tope o el final de la pantalla, se mostrará el texto -más allá del borde de la pantalla. Esto recibe el nombre de -"desplazamiento". Esto le permite a Emacs mover el cursor al lugar -especificado en el texto sin moverlo fuera de la pantalla. - ->> Intente mover el cursor fuera del borde de la pantalla con C-n, y - observe lo que sucede. - -Si moverse por caracteres es muy lento, puede moverse por palabras. -M-f (META-f) mueve adelante una palabra y M-b mueva atrás una palabra. - ->> Teclee algunos M-f y M-b - -Cuando está en la mitad de una palabra, M-f mueve al final de la -palabra. Cuando está en un espacio entre dos palabras, M-f mueve al -final de la siguiente palabra. M-b trabaja de la misma forma en la -dirección opuesta. - ->> Teclee algunos M-f y M-b, intercaladas con C-f y C-b de tal forma - que observe la acción de M-f y M-b desde varios sitios dentro y - entre palabras. - -Note el paralelo entre C-f y C-b de un lado y M-f y M-b del otro. Muy -frecuentemente los caracteres Meta se usan para operaciones -relacionadas, con las unidades definidas por el lenguaje (palabras, -oraciones y párrafos), mientras los caracteres Control operan sobre -unidades básicas que son independientes de lo que está editando -(caracteres, líneas, etc). - -Este paralelo se aplica entre líneas y oraciones: C-a y C-e para -moverse al comienzo o al final de la línea; y M-a y M-e para mover al -comienzo o al final de una oración. - ->> Intente algunos C-a, y después unos cuantos C-e. ->> Intente algunos M-a, y después unos cuantos M-e. - -Vea cómo la repetición de C-a no hace nada, pero la repetición de M-a -sigue moviendo una oración más. Aunque no son muy análogas, cada una -parece natural. - -La ubicación del cursor en el texto se llama también "punto". En -otras palabras, el cursor muestra sobre la pantalla donde está -situado el punto dentro del texto. - -Aquí hay un resumen de operaciones simples de movimiento del cursor, -incluyendo los comandos de movimiento por palabra y oración: - - C-f Avanzar un carácter - C-d Retroceder un carácter - - M-f Avanzar una palabra - M-b Retroceder una palabra - - C-n Avanzar a la línea siguiente - C-p Retroceder a la línea anterior - - C-a Retroceder al comienzo de la línea - C-e Avanzar al final de la línea - - M-a Retroceder al comienzo de la oración - M-e Avanzar al final de la oración - ->> Ahora pruebe todos estos comandos algunas veces para practicar. - Estos comandos son los más frecuentemente usados. - -Otros dos comandos importantes de movimiento del cursor son M-< (META -Menor que), el cual se mueve al comienzo del texto entero, y M-> (META -Mayor que), el cual se mueve al final del texto entero. - -En la mayoría de las terminales, el "<" está sobre la coma, por lo -tanto tiene que usar la tecla shift para teclearlo. En estas -terminales tendrá que usar la tecla shift también al teclear M-<; sin -la tecla shift, usted estaría escribiendo M-coma. - ->> Ahora pruebe M-<, para moverse al comienzo del tutorial. - Después use C-v repetidamente para regresar aquí. - ->> Ahora pruebe M->, para moverse al final del tutorial. - Después use M-v repetidamente para regresar aquí. - -También puede mover el cursor con las teclas de flecha si su terminal -dispone de ellas. Recomendamos aprender C-b, C-f, C-n y C-p por tres -razones. Primero, funcionan en todo tipo de terminales. Segundo, una -vez que gane práctica usando Emacs, encontrará que teclear estos -caracteres Control es más rápido que usar teclas de flecha (porque no -tendrá que mover las manos de la posición para mecanografiar). -Tercero, una vez tenga el hábito de usar estos comandos Control, -también puede aprender a usar otros comandos avanzados de movimiento -del cursor fácilmente. - -La mayoría de comandos de Emacs aceptan un argumento numérico; para la -mayoría de comandos esto sirve como un factor de repetición. La -manera de pasarle un factor de repetición a un comando es tecleando -C-u y luego los dígitos antes de introducir los comandos. Si tiene -una tecla META (o EDIT o ALT), hay una manera alternativa para -ingresar un argumento numérico: teclear los dígitos mientras presiona -la tecla META. Recomendamos aprender el método C-u porque este -funciona en cualquier terminal. El argumento numérico es también -llamado un "argumento prefijo", porque usted teclea el argumento antes -del comando al que se aplica. - -Por ejemplo, C-u 8 C-f mueve hacia adelante ocho caracteres. - ->> Pruebe usar C-n o C-p con un argumento numérico, para mover el - cursor a una línea cercana a ésta con un solo comando. - -La mayoría de comandos usan el argumento numérico como un factor de -repetición, pero algunos comandos le dan otros usos. Varios comandos -(pero ninguno de los que ha aprendido hasta ahora) lo usan como una -bandera: la presencia de un argumento prefijo, sin tener en cuenta su -valor, hace que el comando actúe de forma diferente. - -C-v y M-v son otro tipo de excepción. Cuando se les da un argumento, -desplazan la pantalla arriba o abajo esa cantidad de líneas, en vez de -una pantalla completa. Por ejemplo, C-u 8 C-v desplaza la pantalla 8 -líneas. - ->> Pruebe tecleando C-u 8 C-v ahora. - -Esto debió haber desplazado la pantalla hacia arriba 8 líneas. Si -quisiera desplazarla hacia abajo de nuevo, puede dar un argumento a -M-v. - -Si está usando un sistema de ventanas, como X11 o MS-Windows, debe -haber una larga área rectangular llamada una barra de desplazamiento -en el lado izquierdo de la ventana de Emacs. Puede desplazar el texto -al oprimir el botón del ratón en la barra de desplazamiento. - ->> Pruebe presionando el botón del medio en la parte superior del área - resaltada en la barra de desplazamiento. Éste debe desplazar el - texto a una posición determinada según cuan alto o bajo oprima el - botón. - ->> Intente mover el ratón arriba y abajo, mientras mantiene el botón - del medio presionado. Verá que el texto se desplaza arriba y abajo - a medida que mueve el ratón. - - - -* CUANDO EMACS ESTÁ BLOQUEADO ------------------------------ - -Si Emacs dejara de responder a sus comandos, puede detenerlo con -seguridad al teclear C-g. Puede usar C-g para detener un comando que -esté tomando mucho tiempo para ejecutarse. - -También puede usar C-g para descartar un argumento numérico o el -comienzo de un comando que no quiere finalizar. - ->> Escriba C-u 100 para hacer un argumento numérico de 100, entonces - pruebe C-g. - Ahora pruebe C-f. Esto deberá mover sólo un carácter, ya que - canceló el argumento con C-g. - -Si ha tecleado por error, puede desecharlo con un C-g. - - -* COMANDOS DESACTIVADOS ------------------------ - -Algunos comandos de Emacs están "desactivados" de manera que los -usuarios principiantes no puedan usarlos accidentalmente. - -Si teclea uno de los comandos desactivados, Emacs muestra un mensaje -informando acerca de qué comando era, y preguntándole si quiere -continuar y ejecutar el comando. - -Si realmente quiere intentar el comando, teclee Espacio como repuesta -a la pregunta. Normalmente, si no quiere ejecutar el comando -desactivado, conteste la pregunta con "n". - ->> Escriba C-x C-l (que es un comando desactivado), a continuación - escriba n para responder la pregunta. - - -* VENTANAS ----------- - -Emacs puede tener varias ventanas, cada una mostrando su propio texto. -Explicaremos después como usar múltiples ventanas. Ahora mismo -queremos explicar cómo deshacerse de ventanas adicionales y volver a -la edición básica en una ventana. Es sencillo: - - C-x 1 Una ventana (p.ej., elimina todas las otras ventanas). - -Esto es CONTROL-x seguido por el dígito 1. C-x 1 expande la ventana que -contiene el cursor, para ocupar toda la pantalla. Esto borra todas las -demás ventanas. - ->> Mueva el cursor a esta línea y escriba C-u 0 C-l. ->> Escriba Control-h k Control-f. - Vea como esta ventana se encoge, mientras una nueva aparece y - muestra documentación sobre el comando Control-f. - ->> Escriba C-x 1 y vea que la ventana de listado de documentación - desaparece. - -Este comando es diferente a los otros que ha aprendido en que éste -consiste de dos caracteres. Comienza con el carácter CONTROL-x. Hay -toda una serie de comandos que comienzan con CONTROL-x; muchos de -ellos tienen que ver con ventanas, archivos, buffers y cosas -relacionadas. Estos comandos son de una longitud de dos, tres o -cuatro caracteres. - - -* INSERTAR Y BORRAR -------------------- - -Si quiere insertar un texto, basta con que lo teclee. Emacs -interpreta los caracteres que usted puede ver, tales como A, 7, *, -etc. como texto y los inserta inmediatamente. Teclee (la -tecla Enter) para insertar un carácter de nueva línea. - -Puede borrar el último carácter que escribió oprimiendo . - es una tecla en el teclado--la misma que normalmente usa -fuera de emacs para borrar el último carácter que escribió. -Normalmente es una tecla una o dos filas arriba de la tecla , -y que esta usualmente rotulada como "Backspace", "Del" o simplemente -con una flecha en dirección izquierda que no es parte de las teclas de -flecha. - -Si la tecla larga esta rotulada "Backspace", entonces esa es la que -debe de usar para . Puede haber otra tecla llamada "Del" en -otra parte, pero esa no es . - -Generalmente, borra el carácter inmediatamente anterior a la -posición actual del cursor. - ->> Haga esto ahora: teclee unos pocos caracteres, después bórrelos - tecleando varias veces. No se preocupe si este archivo - cambia, no alterará el tutorial principal. Ésta es su copia - personal de él. - -Cuando una línea de texto se hace muy grande para una sola línea en la -pantalla, la línea de texto "continúa" en una segunda línea en la -pantalla. Un backslash ("\") (o, si está usando un sistema de -ventanas, una pequeña flecha curva) en el margen derecho indica que la -línea "continúa". - ->> Inserte texto hasta que llegue al margen derecho, y siga - insertando. Verá aparecer una línea de continuación. - ->> Use para borrar el texto hasta que la línea de nuevo - quepa en la pantalla. La línea de continuación se pierde. - -Puede borrar un carácter de nueva línea como cualquier otro carácter. -Al borrar el carácter de nueva línea entre dos líneas las junta en una -sola línea. Si el resultado de la combinación de líneas es demasiado -largo para caber en el ancho de la pantalla, se mostrará con una línea -de continuación. - ->> Mueva el cursor al comienzo de una línea y teclee . Esto - juntará esa línea con la línea anterior. - ->> Teclee para reinsertar la nueva línea que borró. - -Recuerde que a la mayoría de los comandos de Emacs se les puede dar un -factor de repetición; esto incluye los caracteres de texto. Repetir -un carácter de texto lo inserta varias veces. - ->> Inténtelo ahora: teclee C-u 8 * para insertar ********. - -Ya ha aprendido la manera más básica de teclear algo en Emacs y -corregir errores. Puede borrar por palabras o por líneas. He aquí un -resumen de las operaciones de borrado: - - borra el carácter justo antes que el cursor - C-d borra el siguiente carácter después del cursor - - M- Elimina la palabra inmediatamente antes del - cursor - M-d Elimina la siguiente palabra después del cursor - - C-k Elimina desde el cursor hasta el fin de la línea - M-k Elimina hasta el final de la oración actual - -Note que y C-d, comparados con M- y M-d, extienden -el paralelismo iniciado por C-f y M-f (bien, no es realmente -una tecla de control, pero no nos preocuparemos de eso ahora). C-k y -M-k, en ciertas forma, son como C-e y M-e, en que las líneas son -oraciones opuestas. - -También puede eliminar cualquier parte del buffer con un método -uniforme. Muévase a un extremo de esa parte, y teclee C-@ o C-SPC -(cualquiera de los dos). (SPC es la barra espaciadora.) Muévase al -otro extremo de esa parte, y teclee C-w. Eso elimina todo el texto -entre las dos posiciones. - ->> Mueva el cursor a la letra T del inicio del párrafo anterior. ->> Teclee C-SPC. Emacs debe mostrar el mensaje "Mark set" en la parte - de abajo de la pantalla. ->> Mueva el cursor a la x en "extremo", en la segunda línea del - párrafo. ->> Teclee C-w. Esto eliminará el texto que comienza desde la T, y - termina justo antes de la x. - -La diferencia entre "eliminar" y "borrar" es que el texto "eliminado" -puede ser reinsertado, mientras que las cosas "borradas" no pueden ser -reinsertadas. La reinserción de texto eliminado se llama "yanking" o -"pegar". Generalmente, los comandos que pueden quitar mucho texto lo -eliminan, mientras que los comandos que quitan solo un carácter, o -solo lineas en blanco y espacios, borran (para que no pueda pegar ese -texto). - ->> Mueva el cursor al comienzo de una línea que no esté vacía. - Luego teclee C-k para eliminar el texto de esa línea. ->> Teclee C-k por segunda vez. Verá que elimina la nueva línea que - sigue a esa línea. - -Note que al teclear C-k una sola vez elimina el contenido de la línea, -y un segundo C-k elimina la línea misma, y hace que todas las otras -líneas se muevan hacia arriba. C-k trata un argumento numérico -especialmente: Elimina ese número de líneas y TAMBIÉN sus -contenidos. Esto no es una simple repetición. C-u 2 C-k elimina dos -líneas y sus nuevas líneas, tecleando C-k dos veces no hace esto. - -Traer texto eliminado de regreso es llamado "yanking" o "pegar". -(Piense en ello como pegar de nuevo, o traer de vuelta, algún texto -que le fue quitado.) Puede pegar el texto eliminado en, ya sea el -lugar en que fue eliminado, o en otra parte del buffer, o hasta en un -archivo diferente. Puede pegar el texto varias veces, lo que hace -varias copias de él. - -El comando para pegar es C-y. Reinserta el último texto eliminado, en -la posición actual del cursor. - ->> Inténtelo; teclee C-y para pegar de nuevo el texto. - -Si hace varios C-k seguidos, todo el texto eliminado se guarda junto, -de manera que un C-y pegará todas las líneas al mismo tiempo. - ->> Haga esto ahora, teclee C-k varias veces. - -Ahora para recuperar ese texto eliminado: - ->> Teclee C-y. Luego baje el cursor unas pocas líneas y teclee C-y de - nuevo. De esta forma puede copiar un texto. - -¿Qué hacer si tiene algún texto que quiere pegar, y entonces elimina -otra cosa? C-y pegaría la eliminación más reciente. Pero el texto -previo no está perdido. Puede regresar a éste usando el comando M-y. -Después de haber tecleado C-y para conseguir la eliminación más -reciente, tecleando M-y reemplaza el texto pegado con la eliminación -previa. Tecleando M-y una y otra vez traerá las eliminaciones -anteriores. Cuando haya encontrado el texto que buscaba, no tiene que -hacer nada para conservarlo. Sólo siga con su edición, dejando el -texto pegado en donde está. - -Si teclea M-y suficientes veces, regresa al punto inicial (la -eliminación más reciente). - ->> Elimine una línea, muévase un poco, elimine otra línea. - Luego teclee C-y para recuperar la segunda línea eliminada. - Luego teclee M-y y será reemplazado por la primera línea eliminada. - Teclee más veces M-y y vea lo que obtiene. Siga haciéndolo hasta - que la segunda línea eliminada regrese, y entonces unas pocas - más. Si quiere, puede tratar de darle a M-y argumentos positivos y - negativos. - - -* DESHACER ----------- - -Si hace un cambio al texto, y luego decide que fue un error, -puede deshacer el cambio con el comando deshacer, C-x u. - -Normalmente, C-x u deshace los cambios hechos por un comando; si repite -varias veces seguidas C-x u, cada repetición deshará un comando -adicional. - -Pero hay dos excepciones: los comandos que no cambian el texto no -cuentan (esto incluye los comandos de movimiento del cursor y el -comando de desplazamiento), y los caracteres de autoinserción se -manejan usualmente en grupos de hasta 20. (Esto es para reducir el -numero de C-x u que tenga que teclear para deshacer una inserción en -el texto.) - ->> Elimine esta línea con C-k, después teclee C-x u y debería - reaparecer. - -C-_ es un comando alternativo para deshacer; funciona igual que C-x u, -pero es más fácil de teclear varias veces seguidas. La desventaja de -C-_ es que en algunos teclados no es obvio cómo se teclea. Por esto -existe también C-x u. En algunas terminales, puede teclear C-_ al -teclear / mientras oprime CONTROL. - -Un argumento numérico para C-_ o C-x u actúa como un factor de -repetición. - -Uuede deshacer un texto borrado justo como puede deshacer el texto -eliminado. La distinción entre eliminar algo y borrar algo afecta en -si puede pegarlo con C-y; no hay diferencia alguna para deshacer. - - -* ARCHIVOS ----------- - -Para que pueda hacer permanente el texto que edite, lo debe colocar en -un archivo. De otra manera, éste se perderá cuando cierre Emacs. -Para poder poner su texto en un archivo, debe "encontrar" el archivo -antes de ingresar el texto. (Esto se llama también "visitar" el -archivo.) - -Encontrar un archivo significa que puede ver su contenido dentro de -Emacs. En cierta forma, es como si estuviera editando el archivo -mismo. Sin embargo los cambios que haga mediante Emacs no serán -permanentes hasta que "guarde" el archivo. Esto es para evitar dejar -un archivo a medio cambiar en el sistema cuando no quiera. Incluso -cuando guarde, Emacs dejará el archivo original bajo un nombre -cambiado en caso de que luego decida que sus cambios fueron un error. - -Si mira cerca del final de la pantalla podrá ver una línea que -comienza y termina con guiones, y comienza con "--:-- TUTORIAL.es" o -algo así. Esta parte de la pantalla normalmente muestra el nombre del -archivo que está visitando. En este momento está visitando un archivo -llamado "TUTORIAL.es" que es su borrador personal del tutorial de -Emacs. Cuando encuentre un archivo con Emacs, el nombre de ese -archivo aparecerá en ese mismo punto. - -Una cosa especial acerca del comando para encontrar un archivo, es que -tendrá que decir que nombre de archivo desea. Decimos que el comando -"lee un argumento desde la terminal" (en este caso, el argumento es el -nombre del archivo). Después de teclear el comando: - - C-x C-f Encontrar un archivo - -Emacs le pide que teclee el nombre del archivo. El nombre de archivo -que teclee aparece en la línea final de la pantalla. A la línea final -de la pantalla se la denomina minibuffer cuando se utiliza para este -tipo de entradas. Puede usar comandos de edición ordinarios de Emacs -para editar el nombre del archivo. - -Mientras está ingresando el nombre del archivo (o cualquier otra -entrada al minibuffer) puede cancelar el comando con C-g. - ->> Teclee C-x C-f, luego teclee C-g. Esto cancela el minibuffer, y - también cancela el comando C-x C-f que estaba usando el minibuffer. - Así que no encontrará archivo alguno. - -Cuando haya finalizado de ingresar el nombre del archivo, teclee - para terminarlo. Entonces el comando C-x C-f trabaja, y -encuentra el archivo que escogió. El minibuffer desaparece cuando el -comando C-x C-f termina. - -Poco tiempo después aparecerá el contenido del archivo en la pantalla, -y puede editarlo. Cuando quiera que sus cambios sean permanentes, -teclee el comando - - C-x C-s Guardar el archivo - -Esto copia el texto dentro de Emacs al archivo. La primera vez que -haga esto, Emacs renombrará el archivo original con un nuevo nombre -para que este no se pierda. El nuevo nombre se hace agregando "~" al -final del nombre del archivo original. - -Cuando guardar haya terminado, Emacs mostrará el nombre del archivo -escrito. Deberá guardar frecuentemente, para que no pierda mucho -trabajo si el sistema falla. - ->> Teclee C-x C-s, guardando la copia del tutorial. - Esto debería mostrar "Wrote ...TUTORIAL.es" al final de la - pantalla. - -NOTA: En algunos sistemas, teclear C-x C-s dejará inmóvil la pantalla -y no podrá ver más respuesta de Emacs. Esto indica que una -"característica" del sistema operativo llamada "control de flujo" está -interceptando el C-s y no permitiéndole llegar hasta Emacs. Para -descongelar la pantalla, teclee C-q. Luego consulte la sección -"Entrada Espontánea para Búsqueda Incremental" en el manual de Emacs -para consejos de cómo tratar con esta "característica". - -Puede encontrar un archivo existente, para verlo o editarlo. También -puede hacerlo con un archivo que no exista. Ésta es la forma de crear -un archivo en Emacs: encuentre el archivo, que comenzará vacío, luego -comience a insertar el texto para ese archivo. Cuando invoque -"guardar" el archivo, Emacs creará realmente el archivo con el texto -que ha insertado. De ahí en adelante, puede considerarse estar -editando un archivo existente. - - -* BUFFERS ---------- - -Si visita un segundo archivo con C-x C-f, el primer archivo permanece -dentro de Emacs. Puede volver a el encontrándolo de nuevo con C-x -C-f. De esta forma puede mantener un gran número de archivos dentro -de Emacs. - ->> Cree un archivo llamado "foo" tecleando C-x C-f foo . - Luego inserte algún texto, edítelo, y guarde "foo" tecleando C-x - C-s. - Finalmente teclee C-x C-f TUTORIAL.es - para regresar al tutorial. - -Emacs almacena cada texto del archivo dentro de un objeto llamado -"buffer". Al encontrar un archivo se crea un nuevo buffer dentro de -Emacs. Para mirar la lista de los buffers que existen actualmente en -su sesión de Emacs, teclee: - - C-x C-b Lista de Buffers - ->> Pruebe C-x C-b ahora. - -Vea como cada buffer tiene un nombre, y además puede tener un nombre -de archivo para el archivo que contiene. CUALQUIER texto que vea en -una ventana de Emacs es siempre parte de algún Buffer. - ->> Teclee C-x 1 para deshacerse de la lista de buffers. - -Cuando tenga varios buffers, solo uno de ellos es "actual" en algún -momento. Ese buffer es el que actualmente edita. Si quiere editar -otro buffer, necesita "cambiar" a él. Si quiere cambiar a un buffer -que corresponde a un archivo, puede hacerlo visitando el archivo de -nuevo con C-x C-f. Pero existe una manera más rápida: use el comando -C-x b. En ese comando, necesita teclear el nombre de buffer. - ->> Teclee C-x b foo para volver al buffer "foo" que contiene - el texto del archivo "foo". Después teclee C-x b TUTORIAL.es - para regresar a este tutorial. - -La mayoría del tiempo el nombre del buffer es el mismo que el nombre -del archivo (sin la parte del directorio del archivo). Sin embargo, -esto no es así siempre. La lista de buffers que hace con C-x C-b -siempre muestra el nombre de todos los buffers. - -CUALQUIER texto que vea en una ventana de Emacs siempre es parte de un -buffer. Algunos buffers no corresponden a un archivo. Por ejemplo, -el buffer llamado "*Buffer List*" no tiene ningún archivo. Es el -buffer que contiene la lista de buffers que ha creado con C-x C-b. El -buffer llamado "*Messages*" tampoco tiene un archivo correspondiente; -contiene los mensajes que han aparecido en la línea de abajo durante -su sesión de Emacs. - ->> Teclee C-x b *Messages* para ver el buffer de mensajes. - Luego teclee C-b TUTORIAL para regresar a este tutorial. - -Si hace cambios al texto de un archivo, y luego encuentra otro -archivo, esto no guarda el primer archivo. Sus cambios permanecerán -dentro de Emacs en ese buffer del archivo. La creación o edición del -segundo buffer de archivo no afecta al primero. Esto es muy útil, -pero también significa que necesita una forma conveniente para guardar -el archivo del primer buffer. Sería una molestia tener que volver a -este con C-x C-f para guardarlo con C-x C-s. Así tenemos - - C-x s Guardar algunos buffers - -C-x s le pregunta sobre cada buffer que contenga cambios que no haya -guardada. Le pregunta, por cada buffer, si quiere guardarlo o no. - ->> Inserte una línea de texto, luego teclee C-x s. - Debería preguntarle si desea guardar el buffer llamado TUTORIAL.es. - Conteste si a la pregunta tecleando "y". - - -* EXTENDER EL CONJUNTO DE COMANDOS ----------------------------------- - -Hay muchísimos más comandos de Emacs que los que podrían asignarse a -todos los caracteres control y meta. Emacs puede darle la vuelta a -esto usando el comando X (eXtendido). Este viene de dos formas: - - C-x Carácter eXtendido. Seguido por un carácter. - M-x Comando eXtendido por nombre. Seguido por un nombre - largo. - -Estos comandos son generalmente útiles pero menos usados que los -comandos que ha aprendido hasta ahora. Ya ha visto dos: los comandos -de archivo C-x C-f para Encontrar y C-x C-s para Guardar. Otro -ejemplo es el comando para terminar la sesión de Emacs: se trata del -comando C-x C-c. (No se preocupe por perder los cambios que haya -hecho; C-x C-c ofrece guardar cada archivo alterado antes de finalizar -Emacs.) - -C-z es el comando para salir de Emacs *temporalmente*: para que pueda -regresar a la misma sesión de Emacs después. - -En sistemas que lo permiten C-z "suspende" Emacs; esto es, se regresa -al intérprete de comandos pero no se destruye Emacs. En los -intérpretes de comandos más comunes, puede reanudar Emacs con el -comando `fg' o con `%emacs'. - -En sistemas que no implementen el suspendido, C-z crea un -subintérprete que corre bajo Emacs para darle la opción de correr -otros programas y regresar a Emacs después; esto en realidad no "sale" -de Emacs. En este caso, el comando `exit' del intérprete es la vía -usual para regresar a Emacs desde éste. - -El momento para usar C-x C-c es cuando está listo para salir del -sistema. Es además el paso correcto para salir de un Emacs llamado -bajo programas de manejo de correo y diversas otras utilidades, puesto -que ellos no saben cómo lidiar con la suspensión de Emacs. En -circunstancias normales, si no va a salir, es mejor suspender -Emacs con C-z en lugar de salir de él. - -Existen varios comandos C-x. Aquí hay una lista de los que ha -aprendido: - - C-x C-f Encontrar archivo. - C-x C-s Guardar archivo. - C-x C-b Lista de buffers. - C-x C-c Salir de Emacs. - C-x 1 Borrar todo menos una ventana. - C-x u Deshacer. - -Los comandos eXtendidos por nombre son comandos que se utilizan aún -con menos frecuencia, o únicamente en ciertos modos. Un ejemplo es el -comando replace-string, el cual globalmente substituye una cadena de -caracteres por otra. Cuando teclea M-x, Emacs le pregunta al -final de la pantalla con M-x y debe escribir el nombre del -comando; en este caso "replace-string". Solo teclee "repl s" y -Emacs completará el nombre. Finalice el nombre del comando con -. - -El comando replace-string requiere dos argumentos: la cadena de -caracteres a reemplazar, y la cadena de caracteres para reemplazarla. -Debe terminar cada argumento con . - ->> Mueva el cursor hacia la línea en blanco dos líneas abajo de esta. - A continuación escriba - M-x repl scambiadoalterado. - - Note cómo esta línea ha cambiado: ha substituido la palabra - c-a-m-b-i-a-d-o por "alterado" en cada ocurrencia, después de la - posición inicial del cursor. - - -* AUTO GUARDADO ---------------- - -Si ha hecho cambios en un archivo, pero no los ha guardado, éstos -podrían perderse si su computadora falla. Para protegerlo de esto, -Emacs periódicamente escribe un archivo "auto guardado" para cada -archivo que está editando. El nombre del archivo auto guardado tiene -un # al principio y al final; por ejemplo, si su archivo se llama -"hola.c", su archivo auto guardado es "#hola.c#". Cuando guarda por -la vía normal, Emacs borra su archivo de auto guardado. - -Si la computadora falla, puede recuperar su edición de auto -guardado encontrando el archivo normal (el archivo que estuvo -editando, no el archivo de auto guardar) y entonces tecleando M-x -recover file. Cuando le pregunte por la confirmación, teclee -yes para ir y recuperar la información del auto guardado. - - -* ÁREA DE ECO -------------- - -Si Emacs ve que usted está tecleando comandos de multicaracteres -lentamente, se los muestra al final de la pantalla en un área llamada -"área de eco". El área de eco contiene la línea final de la pantalla. - - -* LÍNEA DE MODO ---------------- - -La línea inmediatamente encima del área de eco recibe el nombre de -"línea de modo" o "mode line". La línea de modo dice algo así: - ---:** TUTORIAL.es (Fundamental)--l765--65%--------- - -Esta línea da información útil acerca del estado de Emacs y del texto -que está editando. - -Ya sabe qué significa el nombre del archivo: es el archivo que usted -ha encontrado. -NN%-- indica su posición actual en el texto; esto -significa que NN por ciento del texto está encima de la parte superior -de la pantalla. Si el principio del archivo está en la pantalla, este -dirá --Top-- en vez de --00%--. Si el final del texto está en la -pantalla, dirá --Bot--. Si está mirando un texto tan pequeño que cabe -en la pantalla, el modo de línea dirá --All--. - -La L y los dígitos indican la posición de otra forma: ellos dan el -número de línea actual del punto. - -Los asteriscos cerca del frente significan que usted ha hecho cambios -al texto. Inmediatamente después que visite o guarde un archivo, esa -parte de la línea de modo no muestra asteriscos, solo guiones. - -La parte de la línea de modo dentro de los paréntesis es para -indicarle en qué modo de edición está. El modo por omisión es -Fundamental, el cual está usando ahora. Este es un ejemplo de un -"modo mayor". - -Emacs tiene diferentes modos mayores. Algunos están hechos para -editar diferentes lenguajes y/o clases de texto, tales como modo de -Lisp, modo de Texto, etc. En cualquier momento uno y solo un modo -mayor está activo, y su nombre siempre se puede encontrar en la línea -de modo, justo en donde "Fundamental" está ahora. - -Cada modo mayor hace que algunos comandos actúen diferente. Por -ejemplo, hay comandos para crear comentarios en un programa, y como -cada lenguaje de programación tiene una idea diferente de cómo debe -verse un comentario, cada modo mayor tiene que insertar comentarios de -forma distinta. Cada modo mayor es el nombre de un comando extendido, -que es como puede cambiar a ese modo. Por ejemplo, M-x -fundamental-mode es un comando para cambiar al modo fundamental. - -Si va a editar un texto de algún lenguaje humano, como este archivo, -debería usar el modo de texto. ->> Teclee M-x text mode. - -No se preocupe, ninguno de los comandos de Emacs que ha aprendido -cambia de manera significativa. Pero puede observar que M-f y M-b -tratan los apóstrofes como parte de las palabras. Previamente, en -modo Fundamental, M-f y M-b trataban los apóstrofes como separadores -de palabras. - -Los modos mayores normalmente hacen cambios sutiles como el anterior: -la mayoría de comandos hacen "el mismo trabajo" en cada modo mayor, -pero funcionan un poco diferente. - -Para ver documentación en el modo mayor actual, teclee C-h m. - ->> Use C-u C-v una o más veces para traer esta línea cerca de la - parte superior de la pantalla. - ->> Teclee C-h m, para ver como el modo de Texto difiere del modo - Fundamental. - ->> Teclee C-x 1 para eliminar la documentación de la pantalla. - -Los modos mayores son llamados así porque también hay modos menores. -Los modos menores no son alternativas para los modos mayores, solo -modificaciones menores de éstos. Cada modo menor puede ser activado o -desactivado por sí mismo, independiente de todos los otros modos -menores, e independiente de su modo mayor. Por tanto, puede no usar -modos menores, o solamente uno, o cualquier combinación de varios -modos menores. - -Un modo menor que es muy útil, especialmente para editar textos en -español, es el modo Auto Fill. Cuando este modo está activado, Emacs -rompe la línea entre palabras automáticamente siempre que inserte -texto y la línea sea demasiado ancha. - -Puede activar el modo Auto Fill al hacer M-x auto fill mode. -Cuando el modo esté activado, puede desactivarlo nuevamente usando M-x -auto fill mode. Si el modo está desactivado, este comando lo -activa, y si el modo está activado, este comando lo desactiva. -Decimos que el comando "cambia el modo". - ->> teclee M-x auto fill mode ahora. Luego inserte una línea - de "asdf " repetidas veces hasta que la vea dividida en dos líneas. - Debe intercalar espacios porque Auto Fill sólo rompe líneas en los - espacios. - -El margen esta normalmente puesto en 70 caracteres, pero puede -cambiarlo con el comando C-x f. Debe indicar el margen deseado como -un argumento numérico. - ->> Teclee C-x f con un argumento de 20. (C-u 2 0 C-x f). Luego - teclee algún texto y vea como Emacs lo parte en líneas de 20 - caracteres. A continuación ponga de nuevo el margen a 70 usando - otra vez C-x f. - -Si hace cambios en el medio de un párrafo, el modo Auto Fill no lo -rellenará por usted. -Para rellenar el párrafo, teclee M-q (META-q) con el cursor dentro de -ese párrafo. - ->> Mueva el cursor al párrafo anterior y teclee M-q. - - -* BUSCAR --------- - -Emacs puede hacer búsquedas de cadenas (grupos de caracteres o -palabras contiguos) hacia adelante a través del texto o hacia atrás en -el mismo. La búsqueda de una cadena es un comando de movimiento de -cursor; mueve el cursor al próximo lugar donde esa cadena aparece. - -El comando de búsqueda de Emacs es diferente a los comandos de -búsqueda de los demás editores, en que es "incremental". Esto -significa que la búsqueda ocurre mientras teclea la cadena para -buscarla. - -El comando para iniciar una búsqueda es C-s para búsqueda hacia -adelante, y C-r para la búsqueda hacia atrás. ¡PERO ESPERE! No los -intente aún. - -Cuando teclee C-s verá que la cadena "I-search" aparece como una -petición en el área de eco. Esto le indica que Emacs está en lo que -se conoce como búsqueda incremental, esperando que teclee lo que -quiere buscar. termina una búsqueda. - ->> Ahora teclee C-s para comenzar la búsqueda. LENTAMENTE, una letra - a la vez, teclee la palabra 'cursor', haciendo pausa después de - cada carácter para notar lo que pasa con el cursor. - Ahora ha buscado "cursor", una vez. ->> Teclee C-s de nuevo, para buscar la siguiente ocurrencia de - "cursor". ->> Ahora teclee cuatro veces y vea como se mueve el cursor. ->> Teclee para terminar la búsqueda. - -¿Vió lo que ocurrió? Emacs, en una búsqueda incremental, trata de ir -a la ocurrencia de la cadena que ha tecleado hasta el momento. Para -ir a la próxima ocurrencia de 'cursor' solo teclee C-s de nuevo. Si -tal ocurrencia no existe, Emacs pita y le dice que la búsqueda actual -está fallando ("failing"). C-g también termina la búsqueda. - -NOTA: En algunos sistemas, teclear C-s dejará inmóvil la pantalla y no -podrá ver más respuesta de Emacs. Esto indica que una -"característica" del sistema operativo llamada "control de flujo" está -interceptando el C-s y no permitiéndole llegar hasta Emacs. Para -descongelar la pantalla, teclee C-q. Luego consulte la sección -"Entrada Espontánea para Búsqueda Incremental" en el manual de Emacs -para consejos de cómo tratar con esta "característica". - -Si se encuentra en medio de una búsqueda incremental y teclea -, notará que el último carácter de la cadena buscada se borra -y la búsqueda vuelve al sitio anterior de la búsqueda. Por ejemplo, -suponga que ha tecleado "c", para buscar la primera ocurrencia de "c". -Ahora, si teclea "u", el cursor se moverá a la primera ocurrencia de -"cu". Ahora teclee . Esto borra la "u" de la cadena -buscada, y el cursor vuelve a la primera ocurrencia de "c". - -Si está en medio de una búsqueda y teclea un carácter control o meta -(con algunas pocas excepciones: los caracteres que son especiales en -una búsqueda, tales como C-s y C-r), la búsqueda termina. - -El C-s inicia una exploración que busca alguna ocurrencia de la cadena -buscada DESPUÉS de la posición actual del cursor. Si quiere buscar -algo anterior en el texto, teclee en cambio C-r. Todo lo que hemos -dicho sobre C-s también se aplica a C-r, excepto que la dirección de -la búsqueda se invierte. - - -* MÚLTIPLES VENTANAS --------------------- - -Una de las características agradables de Emacs es que se puede mostrar -más de una ventana en la pantalla al mismo tiempo. - ->> Mueva el cursor a esta línea y teclee C-u 0 C-l (eso es CONTROL-L, - no CONTROL-1). - ->> Ahora teclee C-x 2 que divide la pantalla en dos ventanas. Ambas - ventanas muestran este tutorial. El cursor permanece en la ventana - superior. - ->> Teclee C-M-v para desplazar la ventana inferior. - (Si no tiene una tecla META real, teclee ESC C-v.) - ->> Teclee C-x o ("o" para "otro") para mover el cursor a la ventana - inferior. ->> Use C-v y M-v en la ventana inferior para desplazarla. - Siga leyendo estas direcciones en la ventana superior. - ->> Teclee C-x o de nuevo para mover el cursor de vuelta a la ventana - superior. - El cursor en la ventana superior está justo donde estaba antes. - -Puede continuar usando C-x o para cambiar entre las ventanas. Cada -ventana tiene su propia posición del cursor, pero únicamente una -ventana actual muestra el cursor. Todos los comandos de edición -comunes se aplican a la ventana en que está el cursor. Llamaremos -esto la "ventana seleccionada". - -El comando C-M-v es muy útil cuando está editando un texto en una -ventana y usando la otra ventana como referencia. Puede mantener el -cursor siempre en la ventana donde está editando, y avanzar a la otra -ventana secuencialmente con C-M-v. - -C-M-v es un ejemplo de un carácter CONTROL-META. Si tiene una tecla -META real, puede teclear C-M-v pulsando a la vez CONTROL y META -mientras teclea v. No importa qué tecla "vaya primero", CONTROL o -META, porque las dos teclas actúan modificando los caracteres que -teclea. - -Si no tiene una tecla META real, y en vez de eso usa ESC, el orden sí -importa: debe teclear ESC seguido de Control-v, porque Control-ESC v -no funcionará. Esto es porque ESC es un carácter que tiene valor por -sí mismo, no es una tecla modificadora. - ->> Teclee C-x 1 (en la ventana de arriba) para deshacerse de la - ventana de abajo. - -(Si hubiera tecleado C-x 1 en la ventana inferior, esto eliminaría la -superior. Piense en este comando como "mantener sólo una -ventana--aquella en la cual estoy.") - -No tiene por qué mostrarse el mismo buffer en ambas ventanas. Si usa -C-x C-f para encontrar un archivo en una ventana, la otra ventana no -cambia. Puede encontrar un archivo en cada ventana -independientemente. - -Aquí hay otra forma para usar dos ventanas para mostrar dos cosas -diferentes: - ->> Teclee C-x 4 C-f seguido del nombre de uno de sus archivos. - Finalice con . Vea que el archivo especificado aparece en - la ventana inferior. El cursor vá allá también. - ->> Teclee C-x o para regresar a la ventana superior, y C-x 1 para - borrar la ventana inferior. - - -* NIVELES RECURSIVOS DE EDICIÓN --------------------------------- - -Algunas veces entrará a lo que es llamado un "nivel recursivo de -edición". Esto se indica en la línea de modo mediante corchetes en la -línea de modo, rodeando los paréntesis del nombre del modo mayor. Por -ejemplo, probablemente vea [(Fundamental)] en vez de (Fundamental). - -Para salir de los niveles recursivos de edición, teclee ESC ESC ESC. -Éste es un comando de "salida" para todo propósito. También lo puede -usar para eliminar ventanas extras, y salir del minibuffer. - ->> Teclee M-x para entrar a un minibuffer; luego teclee ESC ESC ESC - para salir. - -No se puede usar C-g para salir de los "niveles recursivos de -edición". Esto es porque C-g es usado para cancelar comandos y -argumentos DENTRO del nivel recursivo de edición. - - -* CONSEGUIR MAS AYUDA ---------------------- - -En este tutorial hemos tratado de ofrecer suficiente información para -que empiece a usar Emacs. Hay tanto disponible en Emacs que sería -imposible explicar todo aquí. Sin embargo, quizá desee aprender más -sobre Emacs, ya que tiene muchas otras características útiles. Emacs -provee comandos para leer documentación acerca de los comandos de -Emacs. Todos estos comandos de "ayuda" comienzan con el carácter -Control-h, que es llamado "el carácter de Ayuda (Help)". - -Para usar las funciones de ayuda, teclee el carácter C-h, y luego un -carácter decidiendo qué tipo de ayuda quiere. Si está REALMENTE -perdido teclee C-h ? y Emacs le dirá qué tipo de ayuda puede -ofrecerle. Si ha tecleado C-h y decide que no quiere ninguna ayuda, -teclee C-g para cancelarlo. - -(En algunas instalaciones cambian el significado del carácter C-h. -Realmente no deberían hacer esto como una política para todos los -usuarios, así que tiene argumentos para quejarse al administrador del -sistema. Mientras tanto, si C-h no muestra un mensaje de ayuda en el -final de la pantalla, intente teclear la tecla F1 o, en su lugar, M-x -help ). - -La función de AYUDA más básica es C-h c. Teclee C-h, el carácter c y -un carácter de comando o secuencia de comando; Emacs le mostrará -una descripción muy breve del comando. - ->> Teclee C-h c C-p. - El mensaje debe ser algo como - - C-p runs the command previous-line - -Esto le dice el "nombre de la función". Los nombres de función se -usan principalmente para adecuar y extender Emacs. Pero ya que los -nombres de las funciones se eligen para indicar lo que el comando -hace, también pueden servir como una breve documentación: suficiente -para recordarle los comandos que ha aprendido. - -Los comandos de múltiples caracteres tales como C-x C-s y (sí no tiene -las teclas META o EDIT o ALT) v también están permitidos después -de C-h c. - -Para conseguir más información sobre un comando use C-h k en vez de -C-h c. - ->> Teclee C-h k C-p. - -Esto muestra la documentación de la función, al igual que el nombre, -en una ventana de Emacs. Cuando haya terminado de leer el resultado, -teclee C-x 1 para deshacerse del texto de ayuda. No tiene que hacer -esto ahora. Puede hacer algunas ediciones mientras se refiere -al texto de ayuda, y entonces teclear C-x 1. - -Aquí hay algunas otras opciones útiles de C-h: - - C-h f Describe una función. Usted teclea el nombre de la - función. - ->> Intente teclear C-h f previous-line. - Esto muestra toda la información que Emacs tiene sobre la función - que implementa el comando C-p - -Un comando similar, C-h v, muestra la documentación de variables cuyos -valores pueda poner para adecuar el comportamiento de Emacs. Necesita -teclear el nombre de la variable cuando Emacs pregunte por ella. - - C-h a Comando Apropos. Teclee una palabra y Emacs hará una - lista de todos los comandos que contengan esa palabra. - Todos estos comandos pueden ser invocados con META-x. - Para algunos comandos, el Comando Apropos también - listará una secuencia de uno o dos caracteres la cual - ejecutará el mismo comando. - ->> Teclee C-h a file. - -Esto muestra en otra ventana una lista de todos los comandos M-x con -la palabra "file" en sus nombres. Verá comandos de caracteres como -C-x C-f listados además de los nombres de los comandos -correspondientes tales como find-file. - ->> Teclee C-M-v para desplazar la ventana de ayuda. Haga esto unas - cuantas veces. - ->> Teclee C-x 1 para borrar la ventana de ayuda. - - C-h i Leer los Manuales En-Línea (alias Info). Este comando - lo pone en un buffer especial llamado `*info*' donde - puede leer manuales en línea de los paquetes - instalados en su sistema. Teclee m Emacs - para leer el manual de Emacs. Sí nunca ha usado Info - antes, teclee ? y Emacs lo llevará en una visita - guiada de los servicios del modo de Info. Una vez que - haya terminado este tutorial, debería considerar el - manual Info de Emacs como su documentación primaria. - - -* MÁS CARACTERÍSTICAS ---------------------- - -Puede aprender más de Emacs leyendo su manual, ya sea como libro o en -línea en el Info (use el menú Ayuda--"Help"--o teclee F10 h r). Dos -características que pueden gustarle son la completación, que ahorra -teclear, y dired, que simplifica el manejo de archivos. - -La completación es una manera de ahorrar teclear innecesariamente. -Por ejemplo, si quiere cambiarse al buffer "*Messages*", puede teclear -C-x b *M y emacs encontrará el resto del nombre del buffer tan -lejos como pueda determinar de lo que ya haya tecleado. La -completación es descrita en el Info del manual de Emacs en el nodo -llamado "Completation". - -Dired le permite listar los archivos en un directorio (y opcionalmente -sus subdirectorios), moverse alrededor de esa lista, visitar, -renombrar, borrar y aparte de eso operar en los archivos. Dired esta -descrito en el Info en el manual de Emacs en el nodo llamado "Dired". - -El manual también describe otras características de Emacs. - - -* CONCLUSIÓN ------------- - -Recuerde, para salir permanentemente de Emacs use C-x C-c. Para salir -temporalmente a un intérprete de comandos, de forma que puede volver a -Emacs después, use C-z. - -Este tutorial intenta ser comprensible para todos los usuarios nuevos, -así que si encuentra algo que no esté claro, no se siente y se culpe a -sí mismo: ¡Quéjese! - - -* COPIA -------- - -Este tutorial desciende de una larga línea de tutoriales de Emacs -comenzando con el escrito por Stuart Cracraft para el Emacs original. - -La versión en español fue originalmente traducida por estudiantes del -Gimnasio Fidel Cano (un colegio en Santafé de Bogotá, Colombia): - - Carlos Alberto López Troncoso - Andrés Felipe Mancipe Galvis - Lina Fernanda Pinto García - Liliana Carolina Quitián Cedeño - Leonardo Ramírez Vargas - Juan David Vargas Botero - Juan Pablo Yela Gallón - Jorge Enrique Cárdenas Carrillo - -La versión en español ha sido revisada y corregida por: - - Pablo Reyes - Igor Támara - Melissa Giraldo de Támara - Vladimir Támara - Rafael Sepúlveda - Juanma Barranquero - -La versión en español ha sido actualizada por: - - Rafael Sepúlveda - -Por favor, en caso de duda, sólo es válido el original en inglés de la -siguiente nota de derechos de reproducción (que puede encontrar en el -archivo TUTORIAL). - -Copyright (C) 1985, 1996, 1998, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 Free Software Foundation, Inc. - - Se permite a cualquiera hacer o distribuir copias literales de este - documento como se recibe, en cualquier medio, siempre que la nota - de derechos de reproducción y la nota de permiso se preserven, y - que el distribuidor permita que el que la recibe hacer distribución - posterior como lo permite esta nota. - - Se permite distribuir versiones modificadas de este documento, o - porciones de este, bajo las condiciones anteriores, siempre que - ellas tengan nota visible especificando quién fue el último en - alterarlas. - -Las condiciones para copiar Emacs mismo son más complejas, pero con el -mismo espíritu. Por favor lea el archivo COPYING y luego distribuya -copias de GNU Emacs a sus amigos. ¡Ayude a erradicar el -obstruccionismo del software ("propietariedad") usando, escribiendo, y -compartiendo software libre! - ---- end of TUTORIAL.es --- - -;;; Local Variables: -;;; coding: latin-1 -;;; End: - -;;; arch-tag: 66aae86e-6f86-4a3e-b82a-44a783f774fd diff --git a/etc/TUTORIAL.fr b/etc/TUTORIAL.fr deleted file mode 100644 index 88dc98a088c..00000000000 --- a/etc/TUTORIAL.fr +++ /dev/null @@ -1,1203 +0,0 @@ -Didacticiel d'Emacs. Voir la fin de ce document pour les conditions. - -Les commandes Emacs utilisent généralement la touche CONTROLE (souvent -désignée par CTRL ou CTL) ou la touche META (souvent désignée par EDIT -ou ALT). Pour ces touches, nous utiliserons les abréviations suivantes : - - C- signifie qu'il faut maintenir la touche CONTROLE appuyée tout - en tapant le caractère . Ainsi, C-f signifie : presser - sur la touche CONTROLE tout en pressant la touche f. - M- signifie qu'il faut maintenir la touche META ou EDIT ou ALT - appuyée tout en tapant le caractère . Si aucune de ces - touches n'existe, pressez puis relâchez la touche ESC et - tapez . Nous écrirons pour désigner la touche ESC. - -Tapez C-x C-c (deux caractères) pour terminer une session Emacs. -Dans ce didacticiel, les caractères ">>" en marge gauche indiquent les -directions à suivre pour essayer une commande. Ainsi : -<> -[Centre de page delibérément vide. Le texte continue ci-dessous.] ->> Tapez C-v (Voir l'écran suivant) pour passer à l'écran suivant - (faites-le, pressez la touche CTRL tout en pressant la touche v). - À partir de maintenant, vous devrez le faire à chaque fois que - vous avez fini de lire l'écran. - -Vous remarquerez qu'il y a un recouvrement de deux lignes lorsque l'on -passe d'un écran à un autre : cela permet une certaine continuité dans -la lecture du texte. - -La première chose que vous devez savoir est comment vous déplacer à -travers le texte. Vous savez déjà comment avancer d'un écran avec -C-v. Pour revenir un écran en arrière, tapez M-v (pressez la touche -META tout en appuyant sur v ou faites v si vous n'avez pas de -touche META, EDIT ou ALT). - ->> Faites M-v, puis C-v plusieurs fois. - -Si votre terminal en dispose, vous pouvez également utiliser les -touches PgUp et PgDn pour monter ou descendre d'un écran, bien que les -combinaisons C-v et M-v soient plus efficaces. - -* RÉSUMÉ --------- - -Les commandes suivantes servent à manipuler des écrans : - - C-v Avance d'un écran - M-v Recule d'un écran - C-l Efface l'écran et réaffiche tout le texte autour du - curseur, qui est placé au milieu de l'écran - (il s'agit de CTRL-L, pas de CTRL-1). - - ->> Notez le texte situé à côté du curseur, puis faites C-l. - Recherchez l'emplacement du curseur et vous remarquerez que - c'est le même texte qui est à côté de lui. - - -* GESTION DU CURSEUR --------------------- - -Passer d'un écran à l'autre est pratique, mais comment se déplacer à -un endroit précis du texte dans un écran ? - -Il existe plusieurs façons de faire. Vous pouvez utiliser les touches -du curseur, mais il est plus efficace de garder vos mains dans la même -position et d'utiliser les commandes C-p, C-b, C-f, et C-n. Ces -combinaisons sont équivalentes aux quatre touches du curseur : - - Ligne précédente, C-p - : - : - En arrière, C-b .... Position courante .... Vers l'avant, C-f - : - : - Ligne suivante, C-n - ->> Déplacez le curseur sur la ligne située au milieu de ce schéma en - utilisant C-n ou C-p. Puis, faites C-l pour placer le schéma au - centre de l'écran. - -Si vous connaissez un peu l'anglais, vous aurez sûrement constaté -qu'il était facile de se rappeler que P signifiait Previous -(précédent), N Next (suivant), B Backward (en arrière) et F Forward -(vers l'avant). - ->> Faites quelques C-n pour amener le curseur sur cette ligne. - ->> Déplacez-vous le long de la ligne avec des C-f, puis au-dessus avec - des C-p. Notez ce que fait C-p lorsque le curseur est au milieu de - la ligne. - - -Chaque ligne de texte se termine par un caractère Newline, qui sert à -la séparer de la ligne suivante. La dernière ligne de votre fichier -devrait se terminer par un Newline (mais Emacs n'exige pas qu'il y en -ait un). - ->> Essayez de faire C-b au début d'une ligne. Cela devrait déplacer le - curseur à la fin de la ligne précédente car il passe au-dessus du - caractère Newline. - -C-f peut passer au-dessus d'un Newline, tout comme C-b. - ->> Faites encore quelques C-b afin de bien sentir où est le curseur. - Puis, faites des C-f pour revenir à la fin de la ligne. - Enfin, faites quelques C-f supplémentaires pour passer à la ligne - suivante. - -Lorsque vous dépassez le haut ou le bas de l'écran, le texte au-delà -de ces limites est décalé pour passer dans l'écran : c'est ce qu'on -appelle le « scrolling ». Cela permet à Emacs de placer le curseur à -l'emplacement spécifié dans le texte sans devoir le placer en dehors -de l'écran. - ->> Essayez de placer le curseur au-delà du bas de l'écran avec C-n et - constatez ce qui se passe. - -Si le déplacement caractère par caractère est trop lent, vous pouvez -vous déplacer mot par mot. M-f (Meta-f) avance d'un mot et M-b recule -d'un mot. - ->> Faites quelques M-f et M-b. - -Lorsque vous êtes au milieu d'un mot, M-f place le curseur à la fin du -mot. Lorsque vous êtes entre deux mots, M-f place le curseur à la fin -du mot suivant. M-b fonctionne de la même façon dans la direction -opposée. - ->> Faites plusieurs fois M-f et M-b, espacés de C-f et C-b afin - d'observer l'action de M-f et M-b aux différents emplacements à - l'intérieur et à l'extérieur des mots. - -Notez le parallèle entre C-f et C-b d'un côté et M-f et M-b de -l'autre. Très souvent, les caractères Meta servent à des opérations -sur des unités définies par le langage (mots, phrases, paragraphe) -alors que les caractères de contrôle opèrent sur les unités de base -indépendantes de ce que l'on édite (caractères, lignes, etc.). - -Ce parallèle s'applique entre les lignes et les phrases : C-a et C-e -déplacent le curseur au début ou à la fin d'une ligne, tandis que M-a -et M-e le placent au début ou à la fin d'une phrase. - ->> Faites quelques C-a, puis quelques C-e. - Faites quelques M-a, puis quelques M-e. - -Vous constaterez que la répétition d'un C-a ne fait rien, mais que -celle d'un M-a vous déplace d'une phrase de plus. Bien que ces deux -commandes ne soient pas tout à fait analogues, chacune d'elle semble -naturelle. - -L'emplacement du curseur dans le texte est également appelé « point ». -Pour paraphraser, le curseur apparaît à l'écran à l'endroit où le -point est situé dans le texte. - -Voici un résumé des opérations de déplacements simples du curseur, -ainsi que les commandes de déplacement par mots et par phrases. - - C-f Avance d'un caractère - C-b Recule d'un caractère - - M-f Avance d'un mot - M-b Recule d'un mot - - C-n Avance d'une ligne - C-p Recule d'une ligne - - C-a Va au début de la ligne - C-e Va à la fin de la ligne - - M-a Va au début de la phrase - M-e Va à la fin de la phrase - ->> Essayez toutes ces commandes plusieurs fois afin de vous entraîner. - Ce sont celles qui sont utilisées le plus souvent. - -M-< (Meta inférieur à) et M-> (Meta supérieur à) sont deux autres -commandes importantes de déplacement du curseur. La première renvoie -au tout début du texte, la seconde à la fin de celui-ci. - -Sur certains claviers, le "<" se trouve sous la virgule, vous devez -donc utiliser la touche pour y avoir accès. Sur ces terminaux, -vous devez utiliser également la touche pour faire M-<, sinon -vous taperiez M-virgule. - ->> Faites M-< afin de vous déplacer au début du didacticiel. - Puis, faites plusieurs fois C-v pour revenir ici. - ->> Faites M-> afin de vous déplacer à la fin du didacticiel. - Puis, faites plusieurs fois M-v pour revenir ici. - -Vous pouvez également déplacer le curseur à l'aide des touches de -curseur, si votre terminal en dispose. Nous vous conseillons -d'apprendre à utiliser C-b, C-f, C-n et C-p pour trois raisons. Tout -d'abord, ces commandes fonctionnent sur tous les types de -terminaux. Ensuite, lorsque vous aurez un peu pratiqué Emacs, vous -vous rendrez compte qu'il est plus rapide de taper ces caractères de -contrôle que d'utiliser les touches de curseur (car vous n'avez pas -besoin de déplacer vos mains pour atteindre ces touches). Enfin, -lorsque vous aurez l'habitude d'utiliser ces commandes, vous -apprendrez plus facilement les autres commandes de déplacement plus -puissantes. - -La plupart des commandes Emacs acceptent un paramètre numérique qui, -la plupart du temps, indique un nombre de répétitions. Pour indiquer à -une commande le nombre de fois que l'on souhaite la répéter, on -utilise C-u suivi du nombre avant de taper la commande. Si vous avez -une touche META (ou EDIT ou ALT), il existe une autre façon d'entrer -un paramètre numérique : tapez le nombre tout en pressant la touche -META. Nous vous conseillons d'apprendre à utiliser la méthode C-u car -elle fonctionne sur tous les types de terminaux. Le paramètre -numérique est également appelé « paramètre préfixe » car on le précise -avant la commande sur laquelle il s'applique. - -C-u 8 C-f, par exemple, avance le curseur de huit caractères. - ->> Utilisez C-n ou C-p avec un paramètre numérique afin de déplacer, - en une seule commande, le curseur sur une ligne proche de celle-ci. - -La plupart des commandes utilisent le paramètre numérique pour -indiquer un nombre de répétitions, mais d'autres s'en servent -autrement. Plusieurs commandes (mais aucune de celles que nous avons -vues jusqu'à maintenant) l'utilisent comme indicateur -- la présence -d'un paramètre préfixe, quelle que soit sa valeur, force la commande à -agir différemment. - -C-v et M-v constituent un autre type d'exception. Lorsqu'on leur -donne un paramètre, elles font défiler l'écran vers le haut ou vers le -bas du nombre de lignes indiqué au lieu de passer d'un écran complet à -l'autre. C-u 8 C-v, par exemple, fait défiler l'écran de 8 lignes. - ->> Faites C-u 8 C-v. - -Cela a dû déplacer l'écran de 8 lignes vers le haut. Si vous voulez -redescendre de 8 lignes, il suffit de passer ce nombre comme paramètre -de M-v. - -Si vous utilisez un environnement graphique, comme X11 ou MS-Windows, -il devrait y avoir une zone rectangulaire appelée barre de défilement, -ou « scrollbar » sur le bord gauche de la fenêtre d'Emacs. Vous pouvez -faire défiler le texte en cliquant avec la souris dans cette barre de -défilement. - ->> Cliquez avec le bouton du milieu en haut de la zone mise en - évidence dans la barre de défilement. Cela devrait déplacer le - texte jusqu'à une position dépendant de la hauteur où vous avez - cliqué. - ->> Déplacez la souris de bas en haut tout en maintenant son bouton du - milieu pressé. Vous constaterez que le texte défile vers le haut et - vers le bas en fonction du déplacement de la souris. - - -* QUAND EMACS EST MUET ----------------------- - -Si Emacs cesse de répondre à vos commandes, vous pouvez le débloquer -en toute sécurité avec C-g. Cette commande fait stopper une commande -qui met trop de temps à s'exécuter. - -C-g peut également servir à annuler un paramètre numérique, ou le -début d'une commande que vous ne souhaitez pas terminer. - ->> Faites C-u 100 pour former un paramètre numérique de 100, puis - tapez C-g. - Faites maintenant C-f. Le déplacement ne sera que d'un caractère - car vous avez annulé le paramètre avec C-g. - -Si vous avez tapé par erreur, vous pouvez vous en débarrasser -avec un C-g. - - -* COMMANDES DÉSACTIVÉES ------------------------- - -Certaines commandes d'Emacs sont « désactivées » afin que les -utilisateurs débutants ne puissent les utiliser par accident. - -Si vous tapez l'une de ces commandes, Emacs affiche un message -indiquant quelle était la commande et vous demande si vous souhaitez -continuer et l'exécuter. - -Si vous souhaitez vraiment essayer la commande, tapez en -réponse à la question. Si vous ne voulez pas exécuter la commande -désactivée, il suffit normalement de répondre « n ». - ->> Faites C-x C-l (qui est une commande désactivée), - puis répondez n à la question. - -* FENÊTRES ----------- - -Emacs peut avoir plusieurs fenêtres, chacune affichant son propre -texte. Nous expliquerons plus tard comment utiliser plusieurs fenêtres ; -pour l'instant, nous expliquerons comment se débarrasser des -fenêtres supplémentaires pour revenir à une édition mono-fenêtre. -C'est très simple : - - C-x 1 Une seule fenêtre (i.e., supprime toutes les autres) - -Il s'agit de CTRL-x suivi du chiffre 1. C-x 1 étend la fenêtre -contenant le curseur pour qu'elle occupe tout l'écran. Cette commande -supprime toutes les autres fenêtres. - ->> Déplacez le curseur sur cette ligne et faites C-u 0 C-l. ->> Faites CONTROLE-h k CONTROLE-f. - Vous constatez que cette fenêtre est réduite alors qu'une nouvelle - apparaît pour afficher la documentation sur la commande CONTROLE-f. - ->> Faites C-x 1 et la fenêtre de documentation disparaît. - -Cette commande est différente de celles que nous avons déjà vues car -elle est formée de deux caractères. Elle commence par le caractère -CONTROLE-x, comme le font de nombreuses commandes de manipulation de -fenêtres, fichiers, tampons et autres entités associées. Ces commandes -font deux, trois ou quatre caractères. - - -* INSERTION ET SUPPRESSION --------------------------- - -Si vous voulez insérer du texte, il vous suffit de le taper. Les -caractères que vous pouvez lire, comme A, 7, *, etc. sont considérés -comme du texte par Emacs et insérés immédiatement. Tapez (la -touche de retour chariot) pour insérer un caractère Newline. - -Vous pouvez effacer le dernier caractère que vous avez tapé en faisant -. est une touche du clavier -- la même que vous -utilisez habituellement en dehors d'Emacs, pour supprimer le dernier -caractère saisi. Il s'agit généralement de la grande touche située -quelques lignes au-dessus de la touche « Entrée ». Elle est -habituellement nommée « Delete », « Del », « Suppr » ou « Backspace ». - -Si cette grande touche s'appelle « Backspace », c'est celle-là qui -représente . Votre clavier peut également comporter une autre -touche, nommée « Delete », « Del » ou « Suppr », mais ce n'est pas -. - -Plus généralement, efface le caractère situé immédiatement -avant la position courante du curseur. - ->> Tapez quelques caractères puis effacez-les en faisant plusieurs - fois . Ne vous inquiétez pas de modifier ce fichier ; vous - ne modifierez pas le didacticiel principal mais uniquement votre - copie personnelle de celui-ci. - -Lorsqu'une ligne de texte devient trop longue pour tenir sur une seule -ligne de l'écran, elle se « continue » sur une deuxième ligne -d'écran. Une barre de fraction inverse (« \ ») ou, si vous utilisez un -environnement graphique, une petite flèche recourbée, sur la marge -droite indique une ligne qui se poursuit sur la ligne suivante. - ->> Insérez du texte jusqu'à atteindre la marge droite et continuez - d'en insérer. Vous verrez apparaître une ligne de continuation. - ->> Faites des pour effacer le texte jusqu'à ce que la ligne - tienne à nouveau sur une seule ligne d'écran. La ligne de - continuation disparaît. - -Vous pouvez effacer un caractère Newline comme n'importe quel autre -caractère. La suppression d'un Newline entre deux lignes les fusionne -en une seule ligne. Si la ligne résultante est trop longue pour tenir -dans la largeur de l'écran, elle s'affichera avec une ligne de -continuation. - ->> Placez le curseur au début d'une ligne et faites . - Cela fusionne cette ligne avec la ligne précédente. - ->> Faites pour remettre le Newline que vous avez supprimé. - -Rappelez-vous que la plupart des commandes Emacs peuvent utiliser un -nombre de répétitions ; les caractères de texte font de même. La -répétition d'un caractère de texte l'insère plusieurs fois. - ->> Faites C-u 8 * pour insérer ********. - -Vous connaissez maintenant la méthode la plus simple pour taper du -texte dans Emacs et pour corriger les erreurs. Vous pouvez également -effacer des mots ou des lignes entières. Voici un résumé des -opérations de suppression : - - Efface le caractère situé avant le curseur - C-d Efface le caractère situé après le curseur - - M- Supprime le mot situé avant le curseur - M-d Supprime le mot situé après le curseur - - C-k Supprime du curseur à la fin de la ligne - M-k Supprime jusqu'à la fin de la phrase courante - -Vous noterez que et C-d, par rapport à M- et M-d, -ont la même relation que C-f et M-f (en fait, n'est pas -vraiment un caractère de contrôle, mais ne nous soucions pas de cela) -C-k et M-k sont un peu comme C-e et M-e. - -Vous pouvez aussi supprimer n'importe quelle zone du tampon en -utilisant une méthode unique et générale. Placez-vous à une extrémité -de cette zone et tapez soit C-@, soit C-SPC (SPC désigne la barre -espace). Puis, allez à l'autre extrémité et faites C-w. Cela supprime -tout le texte compris entre ces deux positions. - ->> Placez le curseur sur le V au début du paragraphe précédent. ->> Faites C-SPC. Emacs devrait afficher un message "Mark set" - en bas de l'écran. ->> Déplacez le curseur sur le x d'« extrémité », sur la seconde ligne - du paragraphe. ->> Faites C-w. Cela supprimera le texte allant du V jusqu'au - caractère situé juste avant le x. - -La différence entre « effacer » et « supprimer » est que vous pouvez -réinsérer le texte « supprimé », alors que c'est impossible avec ce -qui a été « effacé ». La réinsertion d'un texte supprimé s'appelle le -« yanking ». Généralement, les commandes qui ôtent beaucoup de texte -le suppriment (afin que vous puissiez le récupérer), tandis que celles -qui ne font qu'ôter un seul caractère, des lignes blanches ou des -espaces, les effacent (vous ne pouvez donc pas récupérer ce texte). - ->> Placez le curseur au début d'une ligne non vide puis faites - C-k pour supprimer le texte de celle-ci. ->> Refaites C-k : vous verrez que cela supprime le Newline qui suit - cette ligne. - -Notez qu'un simple C-k supprime le contenu de la ligne et qu'un second -détruit la ligne elle-même, ce qui fait remonter toutes les lignes -suivantes. C-k traite son paramètre numérique d'une façon spéciale : -il détruit ce nombre de lignes ET leur contenu. Ce n'est pas une -simple répétition : C-u 2 C-k détruit deux lignes et leurs Newlines -alors que taper deux fois C-k n'aurait pas le même effet. - -Vous pouvez ramener le texte supprimé à la place qu'il occupait ou à -n'importe quel autre emplacement du texte. Vous pouvez récupérer -plusieurs fois ce texte afin d'en créer plusieurs copies. - -La commande de récupération est C-y. Elle réinsère le dernier texte -supprimé à la position courante du curseur. - ->> Essayez : faites C-y pour récupérer le texte. - -Si vous faites plusieurs C-k à la suite, tout le texte supprimé est -sauvegardé en même temps, de sorte qu'un seul C-y ramènera toutes les -lignes d'un seul coup. - ->> Faites plusieurs fois C-k. - -Maintenant, pour récupérer le texte détruit : - ->> Faites C-y, puis descendez le curseur de quelques lignes et refaites - C-y. Vous savez maintenant comment copier du texte. - -Que faire si vous avez du texte que vous voulez récupérer et, -qu'ensuite, vous supprimez autre chose ? C-y récupérerait la -suppression la plus récente mais le texte précédent n'est pas pour -autant perdu : vous pouvez le rappeler en utilisant la commande -M-y. Après avoir fait C-y pour récupérer la suppression la plus -récente, M-y remplacera ce texte récupéré par le texte supprimé -précédemment. En répétant les M-y, vous ramenez les suppressions de -plus en plus anciennes. Lorsque vous avez atteint le texte que vous -recherchez, vous n'avez rien besoin de faire pour le -conserver. Continuez simplement à éditer votre texte et laissez le -texte récupéré où il est. - -Si vous faites M-y suffisamment de fois, vous reviendrez à votre point -de départ (la suppression la plus récente). - ->> Supprimez une ligne, déplacez vous et supprimez une autre ligne. - Puis, faites C-y pour récupérer cette dernière. - Faites alors M-y et elle sera remplacée par la première ligne détruite. - Faites d'autres M-y et notez ce que vous obtenez, continuez jusqu'à - ce que la seconde ligne supprimée réapparaisse, et faites-en encore - quelques-uns de plus. - Si vous le souhaitez, vous pouvez essayer de passer des paramètres - positifs et négatifs à M-y. - - -* ANNULATION ------------- - -Si vous modifiez le texte, puis que vous décidez que c'était une -erreur, vous pouvez annuler cette modification avec la commande C-x u -(comme Undo, défaire). - -Normalement C-x u annule les modifications d'une seule commande ; si -vous répétez plusieurs fois C-x u dans une ligne, chaque répétition -annulera une commande supplémentaire. - -Il y a quand même deux exceptions : les commandes qui ne modifient pas -le texte ne comptent pas (cela inclut les commandes de déplacement du -curseur et les commandes de défilement du texte) et les caractères -auto-insérés sont habituellement gérés par groupes allant jusqu'à 20 -(ceci afin de réduire le nombre de C-x u que vous devriez taper pour -annuler l'insertion de texte). - ->> Supprimez cette ligne avec C-k, puis faites C-x u pour la voir - réapparaître. - -C-_ est une autre commande d'annulation ; elle fonctionne exactement -comme C-x u mais est plus facile à taper plusieurs fois dans une -ligne. Son inconvénient est qu'elle n'est pas facile à taper sur -certains claviers, c'est pourquoi C-x u existe aussi. Sur certains -terminaux, vous pouvez taper C-_ en tapant / tout en pressant la -touche CTRL. - -Un paramètre numérique passé à C-_ ou C-x u agit comme un nombre de -répétitions. - - -* FICHIERS ----------- - -Afin de rendre permanent le texte que vous éditez, vous devez le -placer dans un fichier. Sinon, il disparaîtra en même temps que votre -session Emacs. Pour placer un texte dans un fichier, vous devez -« trouver » le fichier avant d'entrer le texte (c'est ce que l'on -désigne également par « visiter » le fichier). - -Trouver un fichier signifie que vous voyez le contenu de ce fichier -dans Emacs. Par de nombreux aspects, c'est comme si vous éditiez le -fichier lui-même. Cependant, les modifications que vous faites avec -Emacs ne deviendront permanentes qu'après avoir « sauvegardé » le -fichier : cela évite d'avoir un fichier à moitié modifié sur le -système alors que vous ne le vouliez pas. Même lorsque vous -sauvegardez, Emacs garde le fichier original sous un nom modifié au -cas où vous décideriez ensuite d'annuler vos modifications. - -Si vous examinez le bas de l'écran, vous verrez une ligne qui commence -et finit par des tirets et débute par « -1:-- TUTORIAL.fr » ou quelque -chose comme ça. Cette partie de l'écran montre normalement le nom du -fichier que vous êtes en train de visiter. Pour l'instant, vous -visitez un fichier appelé « TUTORIAL.fr », qui est votre copie -personnelle du didacticiel Emacs. Lorsque vous trouvez un fichier avec -Emacs, son nom apparaît à cet endroit précis. - -Une particularité de la commande permettant de trouver un fichier est -que vous devez donner le nom du fichier voulu. On dit que la commande -« lit un paramètre à partir du terminal » (ici, le paramètre est le -nom du fichier). Après avoir fait la commande - - C-x C-f Trouve un fichier - -Emacs vous demande d'entrer le nom du fichier. Ce que vous tapez -s'inscrit dans la ligne située en bas de l'écran : cette ligne -s'appelle le mini-tampon lorsqu'elle sert à ce type de saisie. Vous -pouvez utiliser les commandes d'édition habituelles d'Emacs pour -éditer le nom du fichier. - -Pendant que vous entrez le nom du fichier (ou pendant n'importe quelle -saisie dans le mini-tampon), vous pouvez annuler la commande par C-g. - ->> Faites C-x C-f, puis C-g. Cela annule le mini-tampon et la commande - C-x C-f qui utilisait celui-ci : vous ne trouvez donc aucun fichier. - -Lorsque vous avez fini d'entrer le nom du fichier, tapez pour -terminer la saisie. La commande C-x C-f effectue son travail et trouve -le fichier choisi. Le mini-tampon disparaît lorsque C-x C-f a terminé. - -Au bout d'un court instant, le contenu du fichier apparaît à l'écran -et vous pouvez l'éditer. Lorsque vous voulez que vos modifications -deviennent permanentes, faites : - - C-x C-s Sauvegarde le fichier - -Cette commande copie dans le fichier le texte qui est dans Emacs. La -première fois, Emacs renomme le fichier original afin qu'il ne soit -pas perdu. Le nom de cette sauvegarde est construit en ajoutant « ~ » -à la fin du nom initial. - -Lorsque la sauvegarde est finie, Emacs affiche le nom du fichier -écrit. Sauvegardez à intervalles réguliers afin de perdre le moins -possible de travail au cas où votre système se planterait. - ->> Faites C-x C-s pour sauvegarder votre copie du didacticiel. - Cela devrait écrire "Wrote ...TUTORIAL.fr" en bas de l'écran. - -REMARQUE : Sur certains systèmes, C-x C-s gèlera l'écran et vous ne -verrez plus rien se produire dans Emacs. Cela indique qu'une -« fonctionnalité » du système d'exploitation, appelée « contrôle de flux », -a intercepté le C-s et ne lui permet pas de parvenir à Emacs. Pour -décoincer l'écran, faites C-q puis consultez la section « Spontaneous -Entry to Incremental Search » dans le manuel d'Emacs pour avoir des -avis sur la gestion de cette « fonctionnalité ». - -Vous pouvez trouver un fichier existant pour le visualiser ou -l'éditer. Vous pouvez également trouver un fichier qui n'existe pas -encore. C'est ainsi que l'on crée un fichier avec Emacs : on trouve le -fichier, qui démarre vide, puis on insère du texte. Lorsque l'on -demande à « sauvegarder » le fichier, Emacs crée alors vraiment le -fichier avec le texte que l'on a inséré. À partir de ce moment-là, -vous pouvez considérer que vous éditez un fichier déjà existant. - - -* TAMPONS ---------- - -Si vous trouvez un second fichier avec C-x C-f, le premier reste dans -Emacs. Vous pouvez y revenir en le retrouvant avec C-x C-f. Il est -ainsi possible d'avoir un nombre assez important de fichiers dans -Emacs. - ->> Créez un fichier nommé « truc » en faisant C-x C-f truc . - Puis, insérez du texte, éditez-le et sauvegardez « truc » en - faisant C-x C-s. - Enfin, faites C-x C-f TUTORIAL.fr pour revenir au didacticiel. - -Emacs stocke le texte de chaque fichier dans un objet appelé « tampon ». -Trouver un fichier crée un nouveau tampon dans Emacs. Pour voir la -liste des tampons existants dans votre session Emacs, faites - - C-x C-b Liste des tampons - ->> Faites C-x C-b - -Vous noterez que chaque tampon a un nom et qu'il peut également avoir -un nom de fichier pour le fichier qu'il contient. TOUT texte que vous -pouvez voir dans une fenêtre Emacs fait toujours partie d'un tampon. - ->> Faites C-x 1 pour faire disparaître la liste des tampons. - -Lorsque vous avez plusieurs tampons, seul l'un d'entre eux est le -tampon "courant" à un instant donné : c'est celui que vous éditez. Si -vous souhaitez éditer un autre tampon, vous devez "basculer" vers -lui. Pour basculer vers un tampon correspondant à un fichier, vous -pouvez le recharger avec C-x C-f mais il y a plus simple : utilisez la -commande C-x b en lui passant le nom du tampon. - ->> Faites C-x b truc pour revenir au tampon "truc", qui - contient le texte du fichier "truc". - Puis, faites C-x b TUTORIAL pour revenir à ce didacticiel. - -La plupart du temps, le nom d'un tampon est le même que celui du -fichier qu'il contient (sans le chemin), mais ce n'est pas toujours -vrai. La liste obtenue lorsque vous faites C-x C-b montre toujours les -noms de tous les tampons. - -TOUT texte que vous visualisez dans une fenêtre Emacs fait toujours -partie d'un tampon, mais certains tampons ne correspondent pas à des -fichiers : le tampon "*Buffer List*", par exemple, ne contient pas de -fichiers mais la liste obtenue par C-x C-b. Le tampon "*Messages*" ne -correspond pas non plus à un fichier ; il contient la liste des -messages apparus dans la ligne d'état pendant votre session Emacs. - ->> Faites C-x b *Messages* pour visualiser le tampon des - messages. - Puis, faites C-x b TUTORIAL pour revenir à ce didacticiel. - -Si vous modifiez le texte d'un fichier, puis que vous chargez un autre -fichier, le premier ne sera pas sauvegardé. Ses modifications restent -dans Emacs, dans le tampon qui lui est associé. La création ou -l'édition du tampon du second fichier n'a aucun effet sur le tampon du -premier. C'est très pratique, mais cela signifie aussi que vous avez -besoin d'une méthode simple pour sauvegarder le tampon du premier -fichier. Ce serait ennuyeux de devoir y revenir avec C-x C-f juste -pour le sauvegarder avec C-x C-s. On a donc : - - C-x s Sauvegarde certains tampons - -C-x s vous demande confirmation pour savoir s'il doit sauvegarder -chaque tampon contenant des modifications non encore sauvegardées. Il -vous demande, pour chacun de ces tampons, s'il doit le sauvegarder ou -non. - ->> Insérez une ligne de texte et faites C-x s. - Cela devrait vous demander si vous souhaitez sauvegarder le tampon - nommé TUTORIAL.fr. Répondez par l'affirmative en tapant « y ». - - -* EXTENSION DU JEU DE COMMANDES -------------------------------- - -Il y a bien plus de commandes Emacs qu'il ne serait possible d'en -créer avec tous les caractères de contrôle et Meta. Emacs contourne ce -problème à l'aide de la commande X (eXtension). Celle-ci se présente -sous deux déclinaisons : - - C-x eXtension caractère, suivie d'un seul caractère. - M-x eXtension d'une commande nommée, suivie d'un nom long. - -Ces commandes sont généralement des commandes utiles, mais elles sont -moins souvent utilisées que celles que vous avez déjà apprises. Vous -en avez déjà rencontré deux : les commandes de fichiers C-x C-f pour -trouver un fichier et C-x C-s pour sauvegarder. Un autre exemple est -la commande qui met fin à la session Emacs : C-x C-c (ne vous -inquiétez pour les modifications que vous avez faites, C-x C-c vous -proposera de sauvegarder tous les fichiers modifiés avant de quitter -Emacs). - -C-z est la commande permettant de quitter *temporairement* Emacs -- -afin de pouvoir revenir à la même session plus tard. - -Sur les systèmes qui le permettent, C-z « suspend » Emacs ; -c'est-à-dire qu'il revient au shell mais ne détruit pas Emacs. Avec -les shells les plus courants, vous pouvez revenir à Emacs en faisant -la commande 'fg' ou '%emacs'. - -Sur les systèmes qui n'implémentent pas ce mécanisme, C-z crée un -sous-shell qui s'exécute sous Emacs afin que vous puissiez lancer -d'autres programmes et revenir à Emacs ensuite : vous ne « sortez » -pas vraiment d'Emacs. Dans ce cas, la commande shell 'exit' est le -moyen habituel pour revenir à Emacs à partir de ce sous-shell. - -Le moment idéal pour utiliser C-x C-c est lorsque l'on se -déconnecte. C'est aussi la commande adaptée pour sortir d'un Emacs -invoqué par un programme de courrier ou tout autre utilitaire car -ceux-ci peuvent ne pas savoir comment gérer la suspension d'Emacs. Dans -des situations normales, si vous ne devez pas vous déconnecter, il est -préférable de suspendre Emacs avec C-z au lieu de le quitter. - -Il existe de nombreuses commandes C-x. Voici une liste de celles que -vous avez apprises : - - C-x C-f Trouve un fichier. - C-x C-s Sauvegarde un fichier. - C-x C-b Liste des tampons. - C-x C-c Quitte Emacs. - C-x 1 Détruit toutes les fenêtres, sauf une. - C-x u Annulation. - -Les eXtensions de commandes nommées sont des commandes utilisées -encore moins souvent, ou des commandes qui ne servent que dans -certains modes. Un exemple est la commande replace-string, qui -remplace globalement une chaîne par une autre. Lorsque vous faites -M-x, Emacs affiche M-x en bas de l'écran et vous demande de taper le -nom de la commande, « replace-string » ici. Contentez-vous de faire -«repl s » et Emacs complétera le nom ( représente la touche -de tabulation, qui se trouve habituellement au-dessus de la touche de -verrouillage des majuscules, à gauche du clavier). Terminez la -commande en pressant . - -La commande replace-string nécessite deux paramètres -- la chaîne à -remplacer et la chaîne de remplacement. Vous devez terminer chaque -paramètre par . - ->> Déplacez le curseur sur la ligne blanche deux lignes plus bas. - Puis, faites M-x repl schangéemodifiée. - - Notez comment cette ligne a été changée : vous avez remplacé le mot - c-h-a-n-g-é-e par « modifiée » à chaque fois qu'il apparaissait après - la position initiale du curseur. - - -* SAUVEGARDE AUTOMATIQUE ------------------------- - -Lorsque vous avez modifié un fichier, mais que vous ne l'avez pas -encore sauvegardé, ces modifications pourraient être perdues si votre -système se plantait. Pour vous protéger de ce problème, Emacs écrit -périodiquement un fichier de « sauvegarde automatique » pour chaque -fichier en cours d'édition. Le nom de ce fichier commence et se -termine par un # : si, par exemple, votre fichier s'appelle -« hello.c », son fichier de sauvegarde automatique s'appellera -« #hello.c# ». Lorsque vous sauvegardez le fichier de la façon -habituelle, Emacs détruit son fichier de sauvegarde automatique. - -Si l'ordinateur se plante, vous pouvez récupérer ce qui a été -sauvegardé automatiquement en ouvrant normalement le fichier (celui -que vous éditiez, pas la sauvegarde automatique), puis en faisant -M-x recover file. Lorsqu'Emacs vous demande de confirmer, -tapez yes pour continuer et récupérer ainsi les données -sauvées par la sauvegarde automatique. - - -* ZONE D'ECHO -------------- - -Si Emacs constate que vous tapez les commandes multi-caractères -lentement, il les affiche en bas de l'écran dans une zone nommée « -zone d'écho ». La zone d'écho contient la dernière ligne de l'écran. - - -* LIGNE DE MODE ---------------- - -La ligne placée immédiatement au dessus de la zone d'écho s'appelle la -« ligne de mode ». Elle affiche quelque chose comme ça : - --1:** TUTORIAL.fr (Fundamental)--L752--67%---------------- - -Cette ligne donne des informations sur l'état d'Emacs et sur le texte -que vous êtes en train d'éditer. - -Vous savez déjà ce que signifie le nom de fichier -- c'est celui que -vous avez chargé. -NN%-- indique votre position actuelle dans le -texte ; cela signifie que NN pour cent du texte se trouve au dessus du -sommet de l'écran. Si le début du fichier est sur l'écran, il -s'affichera --Top-- et non --00%--. Si le bas du texte est sur -l'écran, il s'affichera --Bot--. Si tout le texte tient dans l'écran, -il s'affichera --All--. - -Le L et les chiffres qui le suivent indiquent une position d'une façon -différente : ils indiquent le numéro de la ligne courante du point. - -Les astérisques au début signifient que vous avez modifié le -texte. Lorsque vous venez de visiter ou sauvegarder un fichier, cette -partie de la ligne de mode n'affichera pas d'astérisques mais -simplement des tirets. - -La partie de la ligne de mode située entre parenthèses indique les -modes d'édition dans lesquels vous vous trouvez. Le mode par défaut -est « Fundamental » et c'est celui que vous êtes en train -d'utiliser. C'est un exemple de « mode majeur ». - -Emacs possède de nombreux modes majeurs différents. Certains sont -prévus pour éditer différents langages et/ou types de texte (mode -Lisp, mode Text, etc). À tout instant, il n'y a qu'un seul mode majeur -actif et son nom se trouve toujours dans la ligne de mode, à l'endroit -où « Fundamental » se trouve actuellement. - -Chaque mode majeur modifie le comportement de quelques commandes. Il -existe, par exemple, des commandes pour créer des commentaires dans un -programme et, comme chaque langage de programmation a sa propre -syntaxe pour les commentaires, chaque mode majeur doit insérer ceux-ci -de façon différente. Un mode majeur est le nom d'une commande étendue, -qui vous permet de basculer dans ce mode. M-x fundamental-mode, par -exemple, est une commande pour basculer dans le mode Fundamental. - -Si vous devez éditer du texte en langage naturel, comme ce fichier, -vous utiliserez probablement le mode Text. - ->> Faites M-x text mode. - -Ne vous inquiétez pas, aucune des commandes Emacs que vous avez -apprises ne change beaucoup mais vous pouvez constater que M-f et M-b -traitent maintenant les apostrophes comme des parties de mots. Avant, -dans le mode Fundamental, M-f et M-b les considéraient comme des -séparateurs de mots. - -Les modes majeurs font généralement des modifications subtiles comme -celle-ci : la plupart des commandes font « la même chose » dans tous -les modes majeurs, mais fonctionnent un peu différemment. - -Pour lire la documentation sur votre mode majeur actuel, faites C-h m. - ->> Faites une fois C-u C-v pour amener cette ligne près du haut de l'écran. ->> Faites C-h m pour voir comment le mode Text diffère du mode Fundamental. ->> Faites C-x 1 pour supprimer la documentation de l'écran. - -Les modes majeurs sont appelés ainsi parce qu'il existe aussi des modes -mineurs. Ces derniers ne sont pas des alternatives aux modes majeurs, -mais simplement des modifications de ceux-ci. Tout mode mineur peut -être activé ou désactivé indépendamment de tous les autres modes -mineurs et de votre mode majeur. Vous pouvez donc n'utiliser aucun -mode mineur, un seul, ou toute combinaison de plusieurs modes mineurs. - -Un mode mineur très utile, surtout lorsque l'on édite du langage -naturel, est le mode Auto Fill. Lorsqu'il est activé, Emacs coupe -automatiquement la ligne entre les mots lorsque vous insérez du texte -et que la ligne est trop longue. - -Vous pouvez activer le mode Auto Fill en faisant M-x auto fill -mode. Lorsqu'il est activé, vous pouvez le désactiver en -faisant à nouveau M-x auto fill mode. Si le mode est -désactivé, cette commande l'active et, s'il est activé, elle le -désactive : on dit que la commande « fait basculer le mode ». - ->> Faites M-x auto fill mode puis insérez une ligne de - plusieurs « azer » jusqu'à ce qu'elle se divise en deux lignes. - Vous devez mettre des espaces entre eux car le mode Auto Fill ne - coupe les lignes que sur les espaces. - -La marge est habituellement fixée à 70 caractères, mais pouvez -modifier cette valeur avec la commande C-x f. Vous devez fournir la -nouvelle valeur de la marge sous la forme d'un paramètre numérique. - ->> Faites C-x f avec un paramètre de 20 (C-u 2 0 C-x f). - Puis, tapez du texte et vous verrez qu'Emacs fait des lignes de 20 - caractères. Remettez la marge à 70 en refaisant C-x f. - -Si vous faites des modifications au milieu d'un paragraphe, le mode -Auto Fill ne reformatera pas ce paragraphe. -Pour cela, faites M-q (META-q) lorsque le curseur est placé dans ce -paragraphe. - ->> Placez le curseur dans le paragraphe précédent et faites M-q. - - -* RECHERCHE ------------ - -Emacs peut rechercher des chaînes de caractères (ce sont des groupes -de caractères contigus ou mots) soit vers l'avant, soit vers -l'arrière. La recherche d'une chaîne est une commande de déplacement -du curseur : elle déplace le curseur à l'emplacement où la chaîne -apparaît. - -La commande de recherche d'Emacs est différente de celle que l'on -trouve sur la plupart des éditeurs car elle est « incrémentale ». Cela -signifie que la recherche a lieu pendant que l'on tape la chaîne que -l'on recherche. - -La commande pour débuter une recherche est C-s pour rechercher vers -l'avant et C-r pour rechercher vers l'arrière. MAIS ATTENDEZ ! -N'essayez pas encore. - -Lorsque vous faites C-s la chaîne « I-search » apparaît comme invite -dans la zone d'écho. Cela vous indique qu'Emacs est dans ce que l'on -appelle une recherche incrémentale et qu'il attend que vous tapiez ce -que vous recherchez. termine une recherche. - ->> Faites C-s pour lancer une recherche. LENTEMENT, une lettre à la - fois, tapez le mot « curseur », en attendant entre chaque caractère - pour constater ce que fait le curseur. Vous avez maintenant atteint - « curseur » une première fois. ->> Tapez C-s à nouveau pour trouver l'occurrence suivante de « curseur ». ->> Faites maintenant quatre fois et étudiez les mouvements du - curseur. ->> Faites pour mettre fin à la recherche. - -Avez-vous vu ce qui se passait ? Emacs, dans une recherche -incrémentale, essaie d'aller sur l'occurrence de la chaîne que vous -avec tapée jusqu'à cet instant. Pour aller sur l'occurrence suivante de -« curseur », il suffit de refaire C-s : s'il ne trouve rien, Emacs -bippe et vous indique que la recherche a échoué. C-g permet également -de mettre fin à la recherche. - -REMARQUE : Sur certains systèmes, C-s gèlera l'écran et vous ne verrez -plus rien se produire dans Emacs. Cela indique qu'une -« fonctionnalité » du système d'exploitation, appelée « contrôle de -flux », a intercepté le C-s et ne lui permet pas de parvenir à -Emacs. Pour décoincer l'écran, faites C-q puis consultez la section -« Spontaneous Entry to Incremental Search » dans le manuel d'Emacs -pour avoir des avis sur la gestion de cette « fonctionnalité ». - -Si vous vous trouvez au milieu d'une recherche incrémentale et que -vous tapez , vous remarquerez que cela supprime le dernier -caractère de la chaîne recherchée et que la recherche reprend à -l'endroit où elle se trouvait précédemment. Supposons, par exemple, -que vous ayiez tapé « c » pour trouver la première occurrence de -« c ». Si vous tapez maintenant « u », le curseur ira sur la première -occurrence de « cu ». Faites : cela supprime le « u » de la -chaîne de recherche et le curseur revient à la première occurrence de -« c ». - -Si vous êtes au milieu d'une recherche et que vous tapez un caractère -de contrôle ou un meta-caractère (sauf quelques exceptions -- les -caractères considérés comme spéciaux pour les recherches, tels que C-s -et C-r), cela met fin à la recherche. - -C-s lance une recherche de toutes les occurrences de la chaîne APRÈS la -position courante du curseur. Si vous voulez faire une recherche plus -haut dans le texte, faites plutôt C-r. Tout ce que nous avons dit sur -C-s s'applique également à C-r, sauf que la direction de la recherche -est inversée. - -* FENÊTRES MULTIPLES --------------------- - -L'une des caractéristiques les plus agréables d'Emacs est que vous -pouvez afficher plusieurs fenêtres en même temps à l'écran. - ->> Placez le curseur sur cette ligne et faites C-u 0 C-l (CTRL-L, pas - CTRL-1). - ->> Faites maintenant C-x 2 pour diviser l'écran en deux - fenêtres. Toutes les deux affichent ce didacticiel et le curseur - reste dans celle du haut. - ->> Faites C-M-v pour faire défiler la fenêtre du bas - (Si vous n'avez pas de touche Meta, faites C-V). - ->> Tapez C-x o (« o » pour « other ») afin de placer le curseur dans - la fenêtre du bas. ->> Utilisez C-v et M-v pour la faire défiler. - Conservez ces instructions dans la fenêtre du haut. - ->> Faites à nouveau C-x o pour replacer le curseur dans la fenêtre du - haut. Le curseur est exactement où il était avant. - -Vous pouvez continuer à utiliser C-x o pour passer d'une fenêtre à -l'autre. Chaque fenêtre a sa propre position du curseur, mais une -seule le montre vraiment. Toutes les commandes d'édition habituelles -s'appliquent à la fenêtre dans laquelle se trouve le curseur : on -l'appelle la « fenêtre sélectionnée ». - -La commande C-M-v est très utile lorsque l'on édite du texte dans une -fenêtre et que l'on utilise l'autre uniquement comme référence. Vous -pouvez conserver le curseur dans la fenêtre où vous éditez et -parcourir l'autre fenêtre avec C-M-v. - -C-M-v est un exemple de caractère CONTROLE-META. Si vous disposez -d'une touche META, vous pouvez faire C-M-v en pressant à la fois -CONTROLE et META tout en tapant v. Peu importe qui, de CONTROLE ou -META est pressée en premier car ces deux touches agissent en modifiant -les caractères que vous tapez. - -Si vous n'avez pas de touche META et que vous utilisez à la -place, l'ordre a son importance : vous devez taper puis C-v car -C-ESC v ne fonctionnera pas. En effet, est un caractère en -lui-même, ce n'est pas un modificateur de touches. - ->> Faites C-x 1 (dans la fenêtre du haut) pour supprimer la fenêtre du - bas. - -(Si vous aviez fait C-x 1 dans la fenêtre du bas, vous auriez supprimé -celle du haut. Pensez à cette commande comme signifiant « ne garde -qu'une fenêtre, celle dans laquelle je suis »). - -Vous n'êtes pas obligé d'afficher le même tampon dans les deux -fenêtres. Si vous faites C-x C-f pour trouver un fichier dans une -fenêtre, l'autre n'est pas modifiée. Chaque fenêtre peut contenir un -fichier indépendamment de l'autre. - -Voici une autre façon d'utiliser deux fenêtres pour afficher deux -choses différentes : - ->> Faites C-x 4 C-f suivi du nom d'un de vos fichiers puis faites - . Le fichier indiqué apparaît dans la fenêtre du bas et le - curseur s'y rend également. - ->> Faites C-x o pour revenir à la fenêtre du haut, puis C-x 1 pour - supprimer celle du bas. - - -* NIVEAUX D'ÉDITION RÉCURSIVE ------------------------------ - -Parfois, vous vous trouverez dans ce qui s'appelle un « niveau -d'édition récursive ». Cela est indiqué par des crochets dans la ligne -de mode, entourant les parenthèses situées autour du nom du mode -majeur. Vous verrez, par exemple [(Fundamental)] au lieu de (Fundamental). - -Pour sortir du niveau d'édition récursive, faites ESC ESC ESC. C'est -une commande de sortie à tout faire. Vous pouvez également l'utiliser -pour supprimer les fenêtres supplémentaires et pour sortir du -mini-tampon. - ->> Faites M-x pour aller dans le mini-tampon, puis faites ESC ESC ESC - pour en sortir. - -Vous ne pouvez pas utiliser C-g pour sortir d'un niveau d'édition -récursive car cette commande sert à annuler des commandes et des -paramètres DANS le niveau d'édition récursive. - -* OBTENIR DE L'AIDE SUPPLÉMENTAIRE ----------------------------------- - -Nous avons essayé, dans ce didacticiel, de ne fournir que les -informations suffisantes pour commencer à utiliser Emacs. Il y a tant -de possibilités avec Emacs qu'il serait impossible de tout expliquer -ici. Cependant, vous pouvez vouloir en apprendre plus, car il a bien -d'autres fonctionnalités utiles. Emacs dispose de commandes pour lire -la documentation sur ses commandes. Ces commandes d'« aide » -commencent toutes par le caractère C-h, le « caractère d'aide ». - -Pour utiliser l'aide, tapez C-h suivi d'un caractère indiquant le type -d'aide que vous souhaitez. Si vous êtes VRAIMENT perdu, faites C-h ? -et Emacs vous indiquera les types d'aide qu'il peut fournir. Si vous -avez tapé C-h et que vous vous ravisez, il vous suffit de faire C-g -pour annuler. - -Certains sites changent la signification du caractère C-h. Ils ne -devraient pas le faire à la légère pour tous les utilisateurs et vous -êtes donc en droit de vous plaindre auprès de l'administrateur -système. Cependant, si C-h n'affiche pas de message d'aide en bas de -l'écran, essayez à la place la touche F1 ou M-x help . - -La commande d'aide la plus simple est C-h c. Faites C-h, le caractère -c, puis un caractère ou une séquence de commande : Emacs affichera une -description très courte de cette commande. - ->> Faites C-h c C-p. - Le message devrait être quelque chose comme : - - C-p runs the command previous-line - -Cela vous donne le « nom de la fonction ». Les noms de fonction -servent principalement à la personnalisation et à l'extension d'Emacs, -mais comme ils sont choisis de façon à indiquer ce que fait la -commande, ils servent également de documentation rapide -- c'est -suffisant pour vous rappeler les commandes que vous avez déjà -apprises. - -Les commandes multi-caractères, comme C-x C-s et (si vous n'avez ni -touche META, ni touche EDIT, ni touche ALT) v sont également -possibles après C-h c. - -Pour obtenir plus d'informations sur une commande, faites C-h k au -lieu de C-h c. - ->> Faites C-h k C-p. - -Cela affiche la documentation de la fonction, ainsi que son nom, dans -une fenêtre Emacs. Lorsque vous avez fini de lire, faites C-x 1 pour -supprimer le texte de l'aide. Vous n'êtes pas obligé de le faire tout -de suite ; vous pouvez continuer à travailler tout en vous référant à -l'aide, puis taper C-x 1 lorsque vous n'avez plus besoin de celle-ci. - -Voici d'autres options utiles de C-h : - - C-h f Décrit une fonction. Vous tapez le nom de la fonction. - ->> Faites C-h f previous-line. - Cela affiche toutes les informations dont dispose Emacs sur la - fonction qui implémente la commande C-p. - - C-h a Commande Apropos. Tapez un mot-clé et Emacs affichera - toutes les commandes dont les noms contiennent ce - mot-clé. Ces commandes peuvent toutes être invoquées - avec M-x. Pour certaines, la commande Apropos - affichera également une séquence d'un ou deux - caractères exécutant la même commande. - ->> Faites C-h a file. - -Cela affiche dans une autre fenêtre une liste de toutes les commandes -M-x ayant « file » dans leurs noms. Vous verrez des commandes -caractères, comme C-x C-f, apparaître à côté des noms de commandes qui -leur correspondent, comme find-file. - ->> Faites C-M-v pour faire défiler la fenêtre d'aide. Faites-le - plusieurs fois. - ->> Faites C-x 1 pour supprimer la fenêtre d'aide. - - C-h i Manuels en ligne (alias Info). Cette commande vous place dans - un tampon spéciale, appelé « *info* », où vous pouvez - lire les manuels en ligne des paquetages installés sur - votre système. Faites m emacs pour lire le - manuel d'Emacs. Si vous n'avez jamais utilisé Info - auparavant, tapez ? et Emacs vous fera faire une visite - guidée des fonctionnalités du mode Info. Lorsque vous - en aurez fini avec ce didacticiel, le manuel Info - d'Emacs devrait être votre source de documentation - essentielle. - - -* FONCTIONNALITÉS SUPPLÉMENTAIRES ---------------------------------- - -Vous pouvez en apprendre plus en lisant le manuel d'Emacs, qu'il soit -imprimé ou en ligne avec le système Info (utilisez le menu Help, ou -faites F10 h r). Les deux fonctionnalités que vous apprécierez -particulièrement sont la complétion, qui permet d'économiser la -frappe, et dired, qui simplifie la manipulation des fichiers. - -La complétion permet d'éviter les frappes inutiles. Si, par exemple, -vous voulez basculer vers le tampon *Messages*, tapez simplement -C-x b *M et Emacs complètera le nom du tampon s'il peut le -déterminer à partir de ce que vous avez saisi avant la tabulation. La -complétion est décrite dans la version Info du manuel Emacs, à la -rubrique "Completion". - -Dired vous permet de consulter la liste des fichiers d'un répertoire -(et, éventuellement, de ses sous-répertoires), de vous déplacer dans -cette liste, d'ouvrir, de renommer, de supprimer et, de façon -générale, de manipuler ces fichiers. Dired est décrit dans la version -Info du manuel Emacs, à la rubrique "Dired". - -Le manuel décrit également les nombreuses autres fonctionnalités -d'Emacs. - -* CONCLUSION ------------- - -Rappelez-vous, pour quitter définitivement Emacs, faites C-x C-c. Pour -lancer temporairement un shell et pouvoir ensuite revenir à Emacs, -faites C-z. - -Ce didacticiel est destiné à être compréhensible par tous les nouveaux -utilisateurs. Si vous avez trouvé que quelque chose n'était pas clair, -ne restez pas les bras croisés à vous accuser de tous les maux -- -plaignez-vous ! - - -* COPIE ---------- - -Ce didacticiel descend d'une longue lignée de didacticiels Emacs, -débutée par celui qui fut écrit par Stuart Cracraft pour le premier -Emacs. - -Cette version du didacticiel, comme GNU Emacs, est placée sous -copyright, et vous pouvez en distribuer des copies sous certaines -conditions : - -Copyright (C) 1985, 1996, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 Free Software Foundation, Inc. - - Chacun peut créer ou distribuer des copies de ce document tel qu'il - l'a reçu, sur n'importe quel support, pourvu que la note de - copyright et cette note de permission soient préservées et que le - distributeur garantisse au destinataire la permission d'une - redistribution ultérieure telle qu'elle est permise par cette note. - - Vous pouvez distribuer des versions modifiées de ce document, ou - de parties modifiées de celui-ci sous les conditions citées plus haut, - pourvu qu'il soit clairement indiqué qui les a modifié pour la - dernière fois. - -Les conditions de copie d'Emacs lui-même sont plus complexes, mais -dans le même esprit. Lisez le fichier COPYING et donnez ensuite des -copies de GNU Emacs à vos amis. Participez à l'éradication de -l'obstructionnisme du logiciel (sa « propriétarisation ») en -utilisant, écrivant et partagent des logiciels libres ! - -Cette traduction française a été effectuée par Éric Jacoboni -. - ---- end of TUTORIAL.fr --- - -;;; Local Variables: -;;; coding: latin-1 -;;; sentence-end-double-space: nil -;;; End: - -;;; arch-tag: f6c5c2ff-bf24-477c-bd18-32f76f51ba65 diff --git a/etc/TUTORIAL.it b/etc/TUTORIAL.it deleted file mode 100644 index 74beb63f018..00000000000 --- a/etc/TUTORIAL.it +++ /dev/null @@ -1,1120 +0,0 @@ -Esercitazione di Emacs. Condizioni d'uso alla fine del file. - -I comandi di Emacs comportano generalmente l'uso del tasto CONTROL (a -volte indicato con CTRL o CTL) o del tasto META (a volte indicato con EDIT -o ALT). Piuttosto che indicarli per esteso ogni volta, useremo le -seguenti abbreviazioni: - - C- significa che bisogna tenere abbassato il tasto CONTROL mentre si - preme il carattere . Quindi C-f significa: tieni premuto - CONTROL e batti f. - - M- significa che bisogna tenere abbassato il tasto META o EDIT o ALT - mentre si preme il carattere . Se non ci sono tasti META, - EDIT o ALT, al loro posto si può premere e poi rilasciare il - tasto ESC e quindi premere . Useremo per indicare il - tasto ESC. - -Nota importante: per chiudere una sessione di lavoro di Emacs usa C-x -C-c. (Due caratteri.) I caratteri ">>" posti al margine sinistro -indicano le direttive per provare a usare un comando. Per esempio: -<> ->> Adesso premi C-v (Vedi schermata successiva) per spostarti - alla prossima schermata. (Vai avanti, tieni premuto il tasto - CONTROL mentre premi v). D'ora in poi dovrai fare così ogni volta - che finisci di leggere lo schermo. - -Si noti che le ultime due righe di ogni schermata appaiono in cima alla -schermata successiva, favorendo così la continuità di lettura. - -La prima cosa che bisogna imparare è come raggiungere un certo punto del -testo. Sai già come andare avanti di una schermata, con C-v. Per -andare indietro di una schermata, premi M-v (tieni premuto il tasto META -e poi premi v, oppure usa v se non c'è un tasto META, EDIT o ALT). - ->> Ora prova: premi M-v e quindi C-v alcune volte. - - -* SOMMARIO ----------- - -I comandi seguenti sono utili per visualizzare le varie parti del testo: - - C-v Vai avanti di una schermata - M-v Vai indietro di una schermata - C-l Cancella lo schermo e riscrivi tutto il testo, muovendo - il testo che si trova vicino al cursore al centro dello - schermo. (Il tasto è CONTROL-L, non CONTROL-1.) - ->> Trova il cursore, osserva quale parte di testo gli è vicina. Premi - C-l. Trova di nuovo il cursore e osserva che si trova sullo stesso - punto del testo. - - -* CONTROLLO DEL CURSORE ------------------------ - -Spostarsi da una schermata all'altra è utile, ma come ci si può spostare -fino ad un certo preciso punto del testo? - -Ci sono diversi modi per farlo. Il più elementare consiste nell'usare i -comandi C-p, C-b, C-f, C-n. Ognuno di essi muove il cursore di una riga o -di una colonna in una data direzione sullo schermo. La tabella seguente -mostra le direzioni in cui operano questi quattro comandi: - - Riga precedente, C-p - : - : - Indietro, C-b .... Posizione attuale cursore .... Avanti, C-f - : - : - Riga successiva, C-n - ->> Sposta il cursore sulla riga centrale del diagramma qui sopra usando - C-n o C-p. Poi usa C-l per portare il diagramma al centro dello - schermo. - -Le quattro lettere dei comandi sono mnemoniche in inglese: P per -precedente (previous), N per successivo (next), B per indietro (backward) -e F per avanti (forward). Questi sono tutti i comandi elementari per -posizionare il cursore, li userai IN CONTINUAZIONE e conviene perciò -impararli subito. - ->> Usa alcuni C-n per portare il cursore su questa riga. ->> Muovi il cursore sulla riga con C-f e poi in alto con C-p. Osserva - l'effetto di un C-p quando il cursore si trova a metà della riga. - -Ogni riga di testo termina con un carattere Newline, che serve a separarla -dalla successiva. È bene che l'ultima riga del tuo file termini con un -carattere Newline, benché Emacs non lo richieda. - ->> Prova a usare C-b all'inizio di una riga. Sposterà il cursore - alla fine della precedente. Questo avviene perché il cursore ha - superato all'indietro il carattere Newline. - -C-f sposta il cursore avanti attravero il carattere Newline proprio come -C-b. - ->> Premi alcune volte C-b per vedere dove si trova il cursore. Poi usa - C-f per tornare alla fine della riga. Usa quindi C-f per andare alla - riga successiva. - -Quando ci si sposta oltre l'inizio o la fine della schermata, il testo che -si trova oltre si sposta sullo schermo, ottenendo uno "scorrimento" -(scrolling). In questo modo Emacs posiziona il cursore sulla parte di -testo desiderata senza doverlo portare fuori dallo schermo visibile. - ->> Prova a muovere il cursore al di là della fine dello schermo con C-n e - osserva cosa succede. - -Se lo spostamento di un solo carattere alla volta è troppo lento allora ci -si può muovere di un'intera parola alla volta. M-f (META-f) e M-b -spostano il cursore rispettivamente in avanti e indietro di una parola. - ->> Prova alcune volte M-f e M-b. - -Quando il cursore è a metà di una parola, M-f lo sposta alla fine della -stessa. Quando è sullo spazio bianco tra due parole, M-f lo sposta alla -fine della parola successiva. M-b funziona in modo simile ma in direzione -opposta. - ->> Ora prova M-f e M-b alcune volte, alternandoli con C-f e C-b così da - poter osservare l'azione di M-f e M-b da vari punti tra le parole e - sulle stesse. - -Osserva il parallelo tra C-f e C-b da una parte e M-f e M-b dall'altra. -Molto spesso i caratteri con Meta sono usati per operazioni relative alle -unità definite dal linguaggio (parole, frasi, paragrafi), mentre i -caratteri con Control operano su unità base indipendenti da ciò che si -scrive (caratteri, righe, ecc.). - -Questo parallelo funziona anche tra righe e frasi: C-a e C-e spostano -all'inizio o alla fine di una riga, e M-a e M-e all'inizio o alla fine di -una frase. - ->> Prova due C-a e poi due C-e. Prova due M-a e poi due M-e. - -Osserva come un C-a ripetuto non abbia effetto, mentre M-a ripetuti -continuano a spostare il cursore all'inizio di frasi precendenti. Sebbene -questi due ultimi comandi non siano perfettamente analoghi, riteniamo che -il loro comportamento sia ragionevole. - -La posizione del cursore nel testo è anche chiamata "punto". Per meglio -dire, il cursore mostra sullo schermo dove si trova, al momento, il punto -nel testo. - -Ecco un sommario delle più semplici operazioni di spostamento del cursore, -compresi i comandi di spostamento di parola in parola o di frase in frase: - - C-f Sposta avanti di un carattere - C-b Sposta indietro di un carattere - - M-f Sposta avanti di una parola - M-b Sposta indietro di una parola - - C-n Sposta alla riga successiva - C-p Sposta alla riga precedente - - C-a Sposta all'inizio della riga - C-e Sposta alla fine della riga - - M-a Sposta all'inizio della frase - M-e Sposta alla fine della frase - ->> Prova tutti questi comandi alcune volte per fare pratica. Questi sono - i comandi più usati. - -Altri due importanti comandi di spostamento del cursore sono M-< (META -Minore-di), che sposta all'inizio dell'intero testo, e M-> (META -Maggiore-di), che sposta alla fine dell'intero testo. - -Su molte tastiere il carattere ">" si raggiunge premendo il tasto SHIFT. -Su queste tastiere bisogna usare il tasto SHIFT assieme a quello META; -senza il tasto SHIFT si otterrebbe un carattere diverso. - ->> Prova M-< adesso per andare all'inizio del tutorial. Poi usa C-v - ripetutamente per tornare a questo punto. ->> Prova M-> adesso, per andare alla fine del tutorial. Quindi usa M-v - ripetutamente per tornare a questo punto. - -Il cursore si può anche spostare con i tasti freccia, se il terminale li -ha. Noi raccomandiamo di imparare C-b, C-f, C-n e C-p per tre motivi: -primo, funzionano su tutti i terminali; secondo, una volta acquisita -pratica nell'uso di Emacs, ci si accorgerà che raggiungere questi -caratteri di controllo è più rapido che usare i tasti freccia perché non -bisogna spostare le mani dalla posizione di scrittura sulla tastiera; -terzo, una volta acquisita l'abitudine ad usare questi comandi con il -carattere Control, si può allo stesso modo imparare ad usare altri comandi -avanzati di spostamento del cursore. - -Molti comandi di Emacs accettano un argomento numerico che spesso serve a -conteggiare per quante volte vanno ripetuti. Il modo in cui si può -fornire ad un comando il numero di ripetizioni è il seguente: si usa C-u e -quindi si indicano le cifre prima di impartire il comando stesso. Se -esiste un tasto META (o EDIT o ALT) c'è un modo alternativo: si battono le -cifre tenendo premuto il tasto META. Noi consigliamo di imparare il -metodo con C-u perché funziona su tutti i terminali. L'argomento numerico -è anche chiamato "argomento prefisso", perché viene indicato prima del -comando a cui si riferisce. - -Per esempio, C-u 8 C-f sposta il cursore in avanti di otto caratteri. - ->> Prova ad usare C-n, o C-p, con un argomento numerico per spostare il - cursore su una riga vicina a questa con un solo comando. - -La maggior parte dei comandi usa l'argomento numerico come numero delle -ripetizioni da effettuare, tuttavia alcuni lo usano in modo diverso. -Altri comandi (ma nessuno di quelli imparati fino ad ora) lo usano come -indicatore di alternativa: la presenza di un argomento prefisso, -indipendentemente dal suo valore, modifica il comportamento del comando. - -C-v e M-v sono un'altra eccezione. Quando gli si fornisce un argomento -spostano l'area di testo visualizzato in alto o in basso del numero di -righe indicato invece che del numero di schermate. Per esempio, C-u 8 C-v -fa scorrere lo schermo di 8 righe. - ->> Ora prova con C-u 8 C-v. - -La schermata si sposta di 8 righe verso l'alto. Se vuoi tornare di nuovo -in basso puoi usare un argomento numerico con M-v. - -Quando si usa un sistema a finestre, come X11 o MS-Windows, ci dovrebbe -essere un'area rettangolare allungata chiamata barra di scorrimento a -un lato della finestra di Emacs. Si può far scorrere il testo con un -click del mouse nella barra di scorrimento. - ->> Prova a premere il pulsante centrale del mouse sopra all'area - evidenziata nella barra di scorrimento. Verrà visualizzata una parte - del testo, più verso l'inizio o la fine, a seconda del punto della - barra che il puntatore indicava mentre premevi il pulsante del mouse. ->> Prova a spostare il mouse in su e in giù mentre tieni premuto il - pulsante centrale. Osserva come il testo scorre in su e in giù mentre - muovi il mouse. - - -* QUANDO EMACS SI BLOCCA ------------------------- - -Se Emacs smette di rispondere ai comandi può essere fermato in modo sicuro -premendo C-g. Si può usare C-g per fermare un comando che sta impiegando -troppo tempo per l'esecuzione. - -Si può anche usare C-g per annullare un argomento numerico o l'esecuzione -di un comando che non si vuole più portare a termine. - ->> Batti C-u 100 per indicare un argomento numerico di 100, quindi premi - C-g. Ora premi C-f. Il cursore si sposta in avanti di un solo - carattere perché hai annullato l'argomento numerico con C-g. - -Se hai premuto per errore puoi annullare con C-g. - - -* COMANDI DISATTIVATI ---------------------- - -Alcuni comandi di Emacs sono "disattivati", così da evitare che utenti -principianti possano usarli per errore. - -Se si inserisce uno dei comandi disattivati Emacs mostra un messaggio in -cui dice quale sia il comando e chiede se davvero si vuole procedere con -l'esecuzione. - -Se effettivamente si vuole provare il comando bisogna premere la barra -spaziatrice come risposta a questa domanda. Normalmente, se non si vuole -eseguire il comando disattivato, bisogna rispondere alla domanda con "n". - ->> Prova C-x C-l (che è un comando disattivato), poi rispondi con "n" alla - domanda. - - -* FINESTRE ----------- - -Emacs può avere diverse finestre, ognuna contenente il suo testo. -Spiegheremo dopo come usare finestre multiple. Adesso ci occupiamo di -come eliminare le finestre in più e tornare alla scrittura con una sola -finestra. È semplice: - - C-x 1 Una finestra (cioè, elimina tutte le altre finestre). - -È un CONTROL-x seguito dalla cifra 1. C-x 1 espande la finestra che -continene il cursore su tutto lo schermo ed elimina tutte le altre -finestre. - ->> Sposta il cursore su questa riga e poi batti C-u 0 C-l. ->> Batti C-h k C-f. Osserva come questa finestra viene rimpicciolita - mentre ne appare un'altra che contiene la spiegazione del comando - CONTROL-f. ->> Batti C-x 1 e guarda come la finestra contenente la spiegazione - scompare. - -Questo comando è diverso da tutti quelli imparati finora perché contiene -due caratteri. Inizia con il carattere CONTROL-x. C'è un'ampia serie di -comandi che iniziano con CONTROL-x; molti di essi riguardano finestre, -file, buffer, e cose simili. Questi comandi possono essere lunghi due, -tre o quattro caratteri. - - -* INSERIMENTO E CANCELLAZIONE ------------------------------ - -Per inserire del testo basta premere i tasti corrispondenti alle varie -lettere che lo compongono. I caratteri visibili, come A, 7, *, ecc., sono -considerati testo e inseriti immediatamente. Si usa (il tasto -Invio) per inserire un carattere Newline. - -L'ultimo carattere inserito si cancella usando . è un -tasto che si trova sulla tastiera e che potrebbe essere etichettato come -"Del" o "Canc". Spesso il tasto "Backspace" (quello con la freccia -rivolta verso sinistra sopra il tasto Invio) serve da , ma non -sempre! - -Più in generale cancella il carattere posto immediatamente prima -della posizione attuale del cursore. - ->> Prova questo adesso - batti alcuni caratteri e poi cancellali con - ripetuto alcune volte. Non preoccuparti delle modifiche fatte - a questo file: l'esercitazione principale rimarrà intatta, quella che - stai usando ne è una tua copia personale. - -Quando una riga di testo diventa troppo lunga per essere visualizzata su -una riga di schermo essa viene "continuata" su una seconda riga dello -schermo. Un carattere barra retroversa ("\") posto accanto al margine -sinistro indica la prosecuzione della riga precedente. Quando si usa un -sistema a finestre grafico, invece della barra retroversa comparirà una -piccola freccia ricurva. - ->> Inserisci del testo fino a raggiungere il margine destro e poi - continua. Vedrai apparire la prosecuzione della riga. ->> Usa per cancellare il testo fino a quando la riga di testo è - di nuovo tutta contenuta in una sola riga dello schermo. La - prosecuzione alla riga successiva scompare. - -Si può cancellare un carattere Newline ("a capo", è un carattere che ha un -effetto ma non viene visualizzato esplicitamente) proprio come ogni altro. -Quando si cancella il carattere Newline che separa due righe queste -vengono unite in una riga sola. Se la riga risultante è troppo lunga per -essere contenuta dallo schermo allora sarà continuata nella riga -successiva. - ->> Muovi il cursore all'inizio di una riga e poi premi . Questo - unisce la riga alla precedente. ->> Premi per inserire di nuovo il carattere Newline che hai - cancellato. - -Si ricordi che la maggior parte dei comandi di Emacs può ricevere un -argomento numerico, compresi i caratteri per inserire il testo. Quando si -ripete un carattere di testo questo viene inserito un certo numero di -volte. - ->> Prova adesso - inserisci C-u 8 * per ottenere ********. - -Fino ad ora si è visto il modo più semplice di inserire testo in Emacs e -di correggere gli errori. In modo analogo è possibile cancellare parola -per parola o riga per riga. Ecco un sommario delle operazioni di -cancellazione: - - cancella il carattere posto subito prima del cursore - C-d cancella il carattere posto subito dopo il cursore - - M- elimina la parola posta prima del cursore - M-d elimina la parola posta subito dopo il cursore - - C-k cancella dalla posizione del cursore fino a fine riga - M-k cancella fino alla fine della frase corrente. - -Si osservi che e C-d da una parte e M- e M-d dall'altra -estendono il parallelo tra C-f e M-f (a dire il vero, non è un -vero e proprio carattere di controllo, ma non preoccupiamoci di questo). -C-k è simile a C-e e M-k è simile a M-e, nel senso che i primi operano su -righe e i secondi su frasi. - -Si può anche cancellare una qualsiasi parte del buffer in modo uniforme: -si sposta il cursore alla fine di quella parte e poi si usa C-@ o C-SPC -(uno o l'altro, SPC è la Barra Spaziatrice), poi si muove il cursore -all'altro estremo della zona e si preme C-w. Questo cancella tutto il -testo posto tra i due estremi. - ->> Sposta il cursore sulla P all'inizio del paragrafo precedente. Premi - C-SPC. Emacs dovrebbe mostrarti il messaggio "Mark set" nella parte - bassa dello schermo. Muovi il cursore sulla s di "estremi" del - paragrafo precedente. Premi C-w. Questo cancellerà il testo a partire - dalla `P' e fino alla lettera che precede `s'. - -La differenza tra "killing" (eliminazione) e "deleting" (cancellazione) è -che il testo "eliminato" può essere inserito di nuovo, mentre quello che -viene cancellato non si può recuperare. L'operazione di reinserimento del -testo soppresso si chiama "yanking". In genere i comandi che possono -rimuovere molto testo fanno un'operazione di eliminazione (così da poterlo -eventualmente reinserire), mentre i comandi che rimuovono un solo -carattere o solo righe vuote e spazi effettuano una cancellazione (quindi -non è possibile recuperare quel testo). - ->> Muovi il cursore all'inizio di una riga non vuota. Usa C-k per - eliminare il testo di quella riga. Premi C-k una seconda volta. Ti - accorgerai di come viene cancellato il carattere Newline posto dopo la - riga stessa. - -Si noti che un singolo C-k elimina il contenuto di una sola riga, un -secondo C-k cancella la riga stessa, e fa spostare in alto tutte le righe -successive. C-k usa un eventuale argomento numerico in modo speciale: -elimina quel numero di righe ed il loro contenuto. Non è una semplice -ripetizione del comando. C-u 2 C-k elimina due righe e i rispettivi -caratteri Newline; battere due volte C-k sarebbe diverso. - -Recuperare il testo eliminato è un'operazione chiamata "yanking". -(Significa "strappare", si deve pensare di riprendere del testo che era -stato portato via). Si può recuperare il testo che è stato eliminato sia -nella sua posizione originaria che in un altro punto del buffer o anche in -un diverso file. Si può reinserire diverse volte, facendone copie -multiple. - -Il comando per fare "yanking" è C-y. Inserisce il testo eliminato per -ultimo nel punto in cui si trova attualmente il cursore. - ->> Prova: premi C-y per recuperare il testo di prima. - -Se si eseguono operazioni di eliminazione immediatamente successive il -testo eliminato è considerato un tutt'uno e quindi un solo C-y inserirà -quelle righe tutte assieme. - ->> Prova adesso, premi C-k alcune volte. - -Adesso, per recuperare il testo eliminato: - ->> Premi C-y. Sposta il cursore alcune righe più in basso e premi di - nuovo C-y. Hai appena visto come copiare una parte di testo. - -Cosa succede se c'è del testo da recuperare tra quello eliminato ma è -stato eliminato altro testo dopo di esso? C-y restituirebbe il testo -dell'ultima eliminazione, tuttavia il testo eliminato in precedenza non è -perso. Si recupera con il comando M-y. Dopo aver usato C-y per -recuperare il testo più recentemente eliminato, un M-y sostituisce quel -testo con quello dell'eliminazione precedente. Premere M-y altre volte -recupera il testo delle eliminazioni via via precedenti. Quando è stato -trovato il testo cercato non si deve fare altro per tenerlo. Si può -andare avanti con la scrittura lasciando il testo recuperato dove si -trova. - -Quando si usa M-y un certo numero di volte si arriva di nuovo al testo di -partenza (quello eliminato per ultimo). - ->> Elimina una riga, sposta il cursore, elimina un'altra riga. Usa C-y per - recuperare la seconda riga eliminata. Premi M-y e verrà sostituita - dalla riga eliminata prima. Usa di nuovo M-y e osserva cosa succede. - Continua fino a quando non ritrovi la riga che avevi eliminato per - seconda. Se vuoi puoi usare un argomento numerico sia positivo che - negativo per M-y. - - -* ANNULLAMENTO --------------- - -Se si modifica il testo e subito dopo ci si accorge di aver fatto un -errore si può annullare la modifica con il comando di annullamento C-x u. - -Normalmente C-x u annulla le modifiche fatte da un solo comando; se si usa -C-x u alcune volte di seguito ogni ripetizione annulla un comando -precedente. - -Ci sono due eccezioni: i comandi che non modificano il testo non contano, -tra questi i comandi di spostamento del cursore e quelli di scorrimento -del testo; i caratteri inseriti nel testo sono gestiti in gruppi, fino a -20 elementi, ciò per ridurre il numero di C-x u da usare per annullare -l'inserimento del testo. - ->> Elimina questa riga con C-k poi usa C-x u e guardala ricomparire. - -C-_ è un comando di annullamento alternativo; funziona come C-x u ma è più -semplice da inserire più volte di seguito. Lo svantaggio di C-_ è che su -alcune tastiere non è di inserimento immediato. Ecco perché abbiamo -previsto anche C-x u. Su alcuni terminali si può ottenere C-_ dal simbolo -/ mentre si tiene premuto il tasto CONTROL. - -Un argomento numerico per C-x u o C-_ agisce come numero delle ripetizioni -da effettuare. - -Si può annullare la cancellazione del testo proprio come se ne annulla -l'eliminazione. La distinzione tra l'eliminazione e la cancellazione -riguarda solo la possibilità di recuperare il testo con C-y; non c'è -differenza rispetto all'operazione di annullamento. - - -* FILE ------- - -Per conservare in modo permanente il testo inserito biaogna conservarlo in -un file, altrimenti sarà perso al termine dell'esecuzione di Emacs. Per -inserire il testo in un file bisogna aprire quel file prima di comporre il -testo. (Questa operazione si chiama anche "visita" del file.) - -Aprire un file significa osservarne il contenuto all'interno di Emacs. -Per molti versi è come se si operasse sul file stesso, tuttavia le -modifiche apportate al contenuto non sono definitive fino a quando non si -"salva" il file. Tutto questo avviene in modo tale da evitare di lasciare -un file su disco quando è modificato solo in parte. Persino quando si -salva il file Emacs conserva il contenuto originale dello stesso in un -file con un altro nome, nel caso in cui si capisca più tardi che le -modifiche sono state un errore. - -Osservando la parte bassa dello schermo si noti che c'è una riga che -inizia e finisce con dei trattini e che all'inizio contiene questo testo -"--:-- TUTORIAL.it" o qualcosa di simile. Questa parte dello schermo -normalmente mostra il nome del file che si sta "visitando". In questo -momento si "visita" un file che si chiama "TUTORIAL.it" che è poi una -copia dell'esercitazione di Emacs. Quando si apre un file con Emacs il -suo nome apparirà sempre in quel punto preciso. - -Una caratteristica particolare del comando per aprire i file è che bisogna -fornirgli il nome del file. Diciamo in questo caso che il comando "legge -un argomento dal terminale" (l'argomento è proprio il nome del file). -Dopo aver scritto il comando - - C-x C-f Trova un file - -Emacs chiede il nome del file. Il nome che si inserisce compare nella -riga più in basso sullo schermo. La riga di fondo è chiamata "minibuffer" -quando viene usato per questo genere di operazioni di inserimento. Si -possono usare i consueti comandi di Emacs per operare sul nome del file. - -Mentre si inserisce il nome del file (oppure ogni altro testo nel -minibuffer), si può annullare il comando con un C-g. - ->> Premi C-x C-f, poi premi C-g. Questo vuota il "minibuffer" e - interrompe l'esecuzione del comando C-x C-f che stava usando il - "minibuffer". Quindi non sarà aperto alcun file. - -Quando si finisce di indicare il nome del file bisogna premere per -portare a termine il comando. Il comando C-x C-f inizia il suo lavoro e -trova il file che è stato scelto. Il "minibuffer" scompare quando il -comando C-x C-f ha terminato l'esecuzione. - -Subito dopo, il contenuto del file compare sullo schermo e si può -modificare a piacere. Quando si desidera rendere permanenti le modifiche -si usa il comando - - C-x C-s Salva il file - -Questo copia il testo contenuto in Emacs nel file su disco. La prima -volta che si effetta questa operazione Emacs dà un nuovo nome al file -originale in modo da conservarlo. Il nuovo nome è ottenuto aggiungendo un -carattere "~" alla fine del nome originale. - -Quando il salvataggio è terminato Emacs mostra il nome del file appena -scritto. Si dovrebbero salvare le modifiche piuttosto spesso in modo da -non perdere troppo lavoro se per caso il sistema dovesse bloccarsi. - ->> Usa C-x C-f per salvare la tua copia di questa esercitazione. Questo - dovrebbe mostrare il messaggio "Wrote ...TUTORIAL.it" nella parte bassa - dello schermo. - -NOTA: su alcuni sistemi il comando C-x C-s bloccherà lo schermo e poi non -si vedrà più alcun altro messaggio da Emacs. Questo significa che una -caratteristica del sistema operativo chiamata "controllo di flusso" sta -intercettando il carattere C-s e non gli permette di arrivare fino ad -Emacs. Per sbloccare lo schermo si può usare C-q. Poi si legga la -sezione "Spontaneous Entry to Incremental Search" nel manuale di Emacs per -suggerimenti su come gestire questa caratteristica del proprio sistema. - -Si può aprire un file già esistente per leggerlo o modificarlo. Si può -anche "visitare" un file che ancora non esiste. Questo è un modo per -creare un nuovo file con Emacs: si apre il file che sarà inizialmente -vuoto e quindi si inizia ad inserire il testo. Quando si chiederà di -salvare il file Emacs lo creerà ed esso conterrà tutto il testo che è -stato inserito. Da quel punto in poi si potrà pensare di operare su un -file già esistente. - - -* BUFFER --------- - -Se si apre un secondo file con C-x C-f il primo rimane aperto all'interno -di Emacs. Si può tornare a visualizzarlo "visitandolo" di nuovo con il -comando C-x C-f. In questo modo si possono aprire quanti file si vogliono -all'interno di Emacs. - ->> Crea un file chiamato "pippo" usando C-x C-f pippo . Inserisci - del testo e poi salva "pippo" con C-x C-s. Poi usa C-x C-f TUTORIAL.it - per tornare all'esercitazione. - -Emacs conserva il testo di ogni file all'interno di un oggetto chiamato -"buffer". La "visita" di un file produce un nuovo buffer all'interno di -Emacs. Per guardare una lista dei buffer che esistono attualmente nella -tua sessione di Emacs si usa - - C-x C-b Elenca buffer - ->> Prova C-x C-b adesso. - -Si osservi come ogni buffer abbia un nome e come possa avere anche il nome -di un file del quale conserva il contenuto. Alcuni buffer non -corrispondono ad alcun file. Per esempio il buffer che ha nome "*Buffer -List*" non ha un file corrispondente, è quello che contiene la lista che è -stata creata da C-x C-b. OGNI testo che si legge all'interno di Emacs è -sempre parte di un buffer. - ->> Usa C-x 1 per eliminare la lista dei buffer. - -Se si modifica in qualche modo il testo di un file e poi si visita un altro -file questo non comporta un salvataggio del primo. Le modifiche rimangono -solo all'interno di Emacs, nel buffer relativo a quel file. La creazione -o la modifica del buffer del secondo file non ha alcun effetto sul buffer -del primo. Sarebbe fastidioso dover tornare al primo file con C-x C-f per -salvarlo con C-x C-s. Così c'è il comando - - C-x s Salva alcuni buffer - -C-x s chiede conferma del salvataggio per ogni buffer che contiene testo -modificato e non ancora salvato. Chiede, per ognuno di quei buffer, se si -voglia salvarne il contenuto nel file corrispondente. - ->> Inserisci una riga di testo e poi premi C-x s. Dovrebbe chiederti se - vuoi salvare il buffer chiamato TUTORIAL.it. Rispondi di sì battendo - "y". - - -* ESTENDERE L'INSIEME DEI COMANDI ---------------------------------- - -Emacs ha molti comandi in più rispetto a quelli che potrebbero trovare -posto su tutti i caratteri CONTROL e META. Emacs risolve questo problema -usando il comando "estendi" (eXtend). Ce ne sono di due tipi: - - C-x Comando esteso carattere. Seguito da un carattere. - M-x Comando esteso con nome. Seguito da un nome di comando. - -Si tratta di comandi utili ma meno utilizzati di quelli che già osservati. -Se ne sono visti due: il comando C-x C-f per visitare un file e quello C-x -C-s per salvarlo. Un altro esempio è quello che serve per chiudere la -sessione Emacs - cioè il comando C-x C-c. Non bisogna temere di perdere -le modifiche fatte: C-x C-c propone infatti di salvare ogni file -modificato prima di chiudere Emacs. - -C-z è il comando che serve per uscire da Emacs *temporaneamente* - così da -poter tornare alla stessa sessione di Emacs in un momento successivo. - -Su sistemi che lo permettono C-z "sospende" Emacs, cioè riporta alla shell -che lo aveva invocato senza però porre termine alla sessione attuale. -Nelle shell più comuni si può riaprire la sessione in corso con il comando -`fg' oppure con `%emacs'. - -Su sistemi che non prevedono la possibilità di "sospensione", C-z crea una -subshell che funziona all'interno di Emacs per dare la possibilità di -usare altri programmi e poi tornare a Emacs successivamente; in pratica -non fa "uscire" veramente da Emacs. In questo caso il comando di shell -`exit' è il modo comune per tornare ad Emacs dalla subshell. - -Il momento di usare C-x C-c è quando si sta per effettuare il log-out dal -sistema. È anche il comando giusto quando si deve chiudere Emacs che è -stato invocato da un programma che gestisce la posta o da altri programmi -simili, dal momento che essi potrebbero non riuscire a gestire la -sospensione di Emacs. In circostanze normali, invece, se non si è sul -punto di fare un log-out è meglio sospendere l'esecuzione di Emacs -piuttosto che interromperla. - -Ci sono molti comandi che usano C-x. Ecco una lista di quelli già -conosciuti: - - C-x C-f Apri un file. - C-x C-s Salva un file. - C-x C-b Elenca buffer. - C-x C-c Chiudi Emacs. - C-x 1 Elimina tutte le finestre tranne una. - C-x u Annulla. - -I comandi estesi con nome sono usati ancora meno spesso, oppure sono usati -solo in certi "modi" di esecuzione. Un esempio è il comando -replace-string per sostituire in tutto il testo una stringa di caratteri -con un'altra. Quando si usa M-x Emacs visualizza "M-x" nella parte bassa -dello schermo, quindi si deve inserire per esteso il nome del comando; in -questo caso "replace-string". Inserisci solo "repl s" ed Emacs -completerà da solo il nome. ( è il tasto di tabulazione, che si -trova di solito sul lato sinistro della tastiera sopra al tasto Blocca -Maiuscole). Concludi l'inserimento del comando con il tasto . - -Il comando replace-string richiede due argomenti: la stringa da sostituire -e quella con cui sostituirla. Bisogna indicare la fine di ogni argomento -con . - ->> Muovi il cursore sulla riga bianca qui sotto, quindi batti M-x repl s - cambiata modificata . - -Osserva come questa riga è cambiata: hai sostituito la parola cam-bia-ta -con "modificata" tutte le volte che quella compariva nel testo, a partire -dalla posizione iniziale del cursore. - - -* SALVATAGGIO AUTOMATICO ------------------------- - -Quando si apportano delle modifiche ad un file ma non sono ancora state -salvate potrebbero essere perse se per caso il sistema si bloccasse. Per -proteggerti da questa eventualità Emacs scrive periodicamente un file di -"salvataggio automatico" per ogni file che si sta scrivendo. Il nome del -file di salvataggio automatico ha un carattere # all'inizio e alla fine; -per esempio se il file si chiama "ciao.c" il nome del file di salvataggio -automatico sarà "#ciao.c#". Quando si salva il file nel modo consueto -Emacs cancella il file di salvataggio automatico. - -Se il computer si blocca si può recuperare il file salvato automaticamente -aprendo il file in modo normale (il file che si stava scrivendo, non -quello di salvataggio automatico) e usando poi M-x recover file. -Quando viene chiesta la conferma si risponda con yes per andare -avanti nel recupero dei dati salvati automaticamente. - - -* AREA DI ECO -------------- - -Se Emacs si accorge che si inseriscono comandi multicarattere in modo -troppo lento allora mostra la sequenza nella parte bassa dello schermo in -un'area chiamata "area di eco". L'area in questione contiene l'ultima riga -dello schermo. - - -* MODE LINE ------------ - -La riga immediatamente sopra all'area di eco è chiamata "mode line" (riga -di modo). La "mode line" si presenta più o meno così: - ---:** TUTORIAL.it (Fundamental)--L720--64%--------------- - -Questa riga fornisce informazioni utili sullo stato di Emacs e sul testo -che si inserisce. - -Abbiamo già visto cosa significa il nome del file - è il file che si sta -visitando. --NN%-- (due cifre e il segno %) indica la posizione attuale -nel testo: significa che NN percento del testo si trova sopra al margine -superiore dello schermo. Se si visualizza l'inizio del file ci sarà -scritto --Top-- (inizio) invece che --00%--. Se invece ci si trova alla -fine del file ci sarà scritto --Bot-- (fine). Se si osserva un file -talmente piccolo da essere visualizzato per intero sullo schermo allora la -"mode line" indicherà --All-- (tutto). - -La lettera L e le cifre indicano il numero di riga (Line) del punto -indicato dal cursore in quel momento. - -I due asterischi vicino all'inizio indicano che sono state fatte delle -modifiche al testo. Se il file è stato appena aperto o appena salvato -quella parte della "mode line" non mostra alcun asterisco, solo trattini. - -La parte di "mode line" racchiusa tra parentesi serve ad indicare in quale -modo di scrittura ci si trovi. Il modo standard è "Fundamental" ed è -quello che probabilmente è attivo adesso. È un esempio di "modalità -primaria" (major mode). - -Emacs ha tanti diversi tipi di "modalità primarie". Alcuni di questi -servono per la scrittura di diversi linguaggi di programmazione e/o tipi -di testo, come la modalità Lisp, la modalità Testo, ecc. In un -determinato momento una sola "modalità primaria" alla volta può essere -attiva, e il suo nome è visualizzato sulla "mode line", proprio come -"Fundamental" lo è adesso. - -Ogni "modalità primaria" condiziona il comportamento di alcuni comandi. -Per esempio ci sono comandi per creare commenti in un programma e, dal -momento che ogni linguaggio di programmazione ha un diverso tipo di -commento, ogni "modalità primaria" deve inserire i commenti in modo -diverso. Ogni "modalità primaria" è anche il nome di un comando esteso -con nome che serve per attivare quella "modalità primaria". Per esempio -M-x fundamental-mode è il comando per attivare la modalità primaria -"Fundamental". - -Se si vuole inserire del testo in italiano, come questo file, serve -probabilmente la modalità testo ("text-mode"). - ->> Inserisci M-x text mode. - -Non preoccuparti, nessuno dei comandi che hai imparato verrà modificato in -modo sostanziale. Tuttavia adesso puoi osservare come M-f e M-b -considerino gli apostrofi come parti di parole. Al contrario, nella -modalità "Fundamental", M-f e M-b consideravano gli apostrofi dei -separatori di parole. - -Le "modalità primarie" di solito producono nei comandi piccoli cambiamenti -come questo: la maggior parte di essi "fa lo stesso lavoro" ma in maniera -appena diversa. - -Per leggere la documentazione sulla "modalità primaria" attuale si usa -C-h m. - ->> Usa C-u C-v una o più volte per portare questa riga vicino all'inizio - dello schermo. Usa C-h m per leggere come il "text-mode" (modo testo) - differisce dalla modalità "Fundamental". Premi C-x 1 per eliminare la - finestra contenente la documentazione. - -Le "modalità primarie" sono chiamate così perché ci sono anche delle -"modalità secondarie" (minor modes). Le "modalità secondarie" non sono -alternative alle "modalità primarie" ma solo piccole varianti di esse. -Ogni "modalità secondaria" può essere attivata o disattivata -indipendentemente da tutte le altre "modalità secondarie" e -indipendentemente dalla "modalità primaria" attiva in quel momento. Si -può quindi usare nessuna "modalità secondaria", una soltanto oppure ogni -altra combinazione di modalità secondarie. - -Una "modalità secondaria" molto utile, specialmente per il testo italiano, -è la modalità "Auto Fill". Quando questa modalità è attiva, Emacs -interrompe la riga tra due parole ogni volta che, nel corso -dell'inserimento, essa diventa troppo lunga. - -Si può attivare il modo "Auto Fill" con: M-x auto fill mode. -Quando la modalità suddetta è attiva può essere disattivata con M-x auto -fill mode. Se la modalità è disattivata questo comando la attiva, -viceversa se è già attiva. Un comando che funziona così si comporta come -un interruttore, attiva o disattiva qualcosa ogni volta che viene premuto. - ->> Usa M-x auto fill mode adesso. Inserisci una riga di "asdf" - ripetuti fino a quando non la vedi dividersi in due righe. Devi - interporre degli spazi perché la modalità "Auto Fill" spezza le righe - solo in corrispondenza di uno spazio. - -Il margine di solito è predisposto a 70 caratteri ma può essere spostato -con il comando C-x f. Bisogna fornire al comando l'argomento numerico del -margine che si desidera. - ->> Usa C-x f con un argomento di 20 (C-u 2 0 C-x f), poi inserisci del - testo e osserva come Emacs interrompe le righe a 20 caratteri. Infine - torna di nuovo a un margine di 70 caratteri con C-x f. - -Se si modifica il testo all'interno di un paragrafo la modalità -"Auto Fill" non -lo risistema. -Per risistemare i margini di un paragrafo -si usa M-q (META-q) -quando il cursore si trova in quel paragrafo. - ->> Muovi il cursore sul paragrafo precedente e premi M-q. - - -* CERCARE DEL TESTO -------------------- - -Emacs può effettuare la ricerca di stringhe (che sono gruppi di caratteri -contigui o parole) in posizione sia successiva che precedente nel testo. -Cercare una stringa è un comando che provoca lo spostamento del cursore: -lo porta lì dove la stringa compare. - -Il comando di ricerca di Emacs è diverso da quello di molti altri editor -perché è "incrementale". Ciò significa che la ricerca avviene proprio -mentre si inserisce la stringa da cercare. - -I comandi per iniziare la ricerca sono C-s per quella in avanti e C-r per -quella all'indietro nel testo. ASPETTA! Non provarli ora. - -Quando si preme C-s si vede comparire il messaggio "I-search" nell'"area -di eco", ciò significa che Emacs aspetta che si indichi ciò che deve -cercare. serve a concludere la ricerca. - ->> Adesso usa C-s per inziare la ricerca. LENTAMENTE, una lettera alla - volta, inserisci la parola `cursore', facendo una pausa dopo ogni - carattere scritto per vedere cosa succede al cursore. Hai cercato - "cursore" una volta sola. ->> Usa C-s un'altra volta per trovare il punto in cui la parola "cursore" - compare successivamente. ->> Adesso premi quattro volte e osserva come si muove il cursore. ->> Premi per concludere la ricerca. - -Hai visto cos'è successo? Durante una ricerca incrementale Emacs prova ad -andare al punto successivo in cui compare la stringa indicata fino a quel -momento. Per raggiungere il punto successivo in cui compare di nuovo -`cursore' basta solo premere C-s ancora una volta. Se la stringa cercata -non compare in alcun punto successivo Emacs emette un "beep" e informa che -la ricerca non è andata a buon fine ("failing"). C-g è un modo -alternativo per concludere la ricerca. - -NOTA: su alcuni sistemi il comando C-s bloccherà lo schermo e poi non si -vedrà alcun altro messaggio da Emacs. Questo significa che una -caratteristica del sistema operativo chiamata "controllo di flusso" sta -intercettando il carattere C-s e non gli permette di arrivare fino ad -Emacs. Per sbloccare lo schermo si può usare C-q. Poi si legga la -sezione "Spontaneous Entry to Incremental Search" nel manuale di Emacs per -suggerimenti su come gestire questa caratteristica del proprio sistema. - -Se durante una ricerca incrementale si preme il tasto ci si -accorgerà che l'ultimo carattere della stringa da cercare scompare e la -ricerca torna all'ultimo risultato trovato prima che fosse stato scritto. -Per esempio, supponiamo di aver battuto una "c" e di aver trovato la prima -"c" che compare nel testo. Se poi aggiungiamo una "u" il cursore si -sposta alla prima stringa "cu" che trova. Ora se si preme la "u" -viene cancellata dalla stringa da cercare e il cursore torna sulla "c" che -era stata trovata in precedenza. - -Se ci si trova nel mezzo di una operazione di ricerca e si usa un -carattere control o meta (con poche eccezioni - i caratteri che hanno -significato particolare durante la ricerca sono C-s e C-r) allora la -ricerca viene conclusa. - -Il comando C-s inizia la ricerca di ogni presenza della stringa in -posizione SUCCESSIVA a quella attuale del cursore. Se si vuole cercare -qualcosa che nel testo precede il cursore allora bisogna usare il comando -C-r. Tutto quello che abbiamo detto su C-s si applica allo stesso modo -per C-r, invertendo ovviamente la direzione di ricerca. - - -* FINESTRE MULTIPLE -------------------- - -Una delle caratteristiche interessanti di Emacs è che si possono -visualizzare più finestre sullo schermo nello stesso momento. - ->> Muovi il cursore su questa riga e inserisci C-u 0 C-l (è CONTROL-L, non - CONTROL-1). ->> Adesso usa C-x 2 che divide lo schermo in due parti. Entrambe le - finestre visualizzano questo tutorial. Il cursore si trova nella - finestra superiore. ->> Premi C-M-v per far scorrere la finestra inferiore. (Se non hai un - tasto META usa C-v.) ->> Usa C-x o per muovere il cursore nella finestra inferiore. ->> Usa C-v e M-v nella finestra inferiore per farvi scorrere il testo. - Continua a leggere queste indicazioni nella finestra superiore. ->> Premi C-x o di nuovo per muovere il cursore nella finestra superiore. - Il cursore si trova sul punto che occupava in precedenza. - -Si può continuare a usare C-x o per andare da una finestra all'altra. Ogni -finestra ha la sua posizione per il cursore ma solo una alla volta lo -visualizza. Tutti i comandi impartiti funzionano sulla finestra in cui si -trova il cursore. Noi la chiamiamo la "finestra selezionata". - -Il comando C-M-v è molto utile quando si inserisce del testo in una -finestra mentre si usa l'altra solo come riferimento. Si può tenere il -cursore sempre nella finestra in cui si lavora e portare avanti -sequenzialmente il testo contenuto nell'altra con C-M-v. - -C-M-v è un esempio di carattere CONTROL-META. Se c'è un vero e proprio -tasto META si può ottenere C-M-v tenendo premuti contemporaneamente -CONTROL e META mentre si batte v. Non importa quale tra CONTROL e META -viene premuto per primo perché essi agiscono assieme modificando i -caratteri inseriti dopo. - -Se non c'è un tasto META e si usa il tasto ESC l'ordine diventa -importante: bisogna premere prima e poi farlo seguire da CONTROL-v -perché CONTROL-ESC-v non funziona. Questo perché è un carattere a -sé stante e non uno che ne modifica altri. - ->> Usa C-x 1 (nella finestra superiore) per eliminare la finestra - inferiore. - -(Se usi C-x 1 nella finestra inferiore allora viene eliminata quella -superiore. Questo comando conserva una sola finestra, quella in cui si -trova il cursore.) - -Due finestre aperte contemporaneamente non devono necessariamente -contenere lo stesso buffer. Quando si usa C-x C-f per visitare un file in -una finestra il contenuto dell'altra non cambia. Si può "visitare" in -modo indipendente un file diverso in ogni finestra. - -Ecco un altro modo per usare due finestre per visualizzare cose diverse: - ->> Inserisci C-x 4 C-f seguito dal nome di uno dei tuoi file. Premi - . Osserva come il file viene aperto nella finestra inferiore. - Il cursore si posiziona in quella. ->> Usa C-x o per tornare alla finestra superiore e C-x 1 per eliminare - quella inferiore. - - -* LIVELLI DI EDITING RICORSIVO ------------------------------- - -A volte ci si può trovare in quello che si chiama un "livello di editing -ricorsivo", ciò è indicato dalla presenza di parentesi quadre nella "mode -line", attorno alle parentesi della "modalità primaria" attualmente in -uso. Per esempio si potrebbe leggere [(Fundamental)] invece che -(Fundamental). - -Per uscire dal livello di editing ricorsivo si usa . È -un comando di uscita di uso piuttosto generale, si può anche usare per -eliminare finestre in più e per uscire dal "minibuffer". - ->> Usa M-x per entrare nel "minibuffer": poi usa per - uscirne. - -Non è possibile usare C-g per uscire da un livello di editing ricorsivo, -ciò avviene perché C-g è usato per annullare i comandi all'INTERNO del -livello di editing ricorsivo. - - -* COME IMPARARE ALTRO ---------------------- - -In questo tutorial abbiamo provato a fornire le informazioni sufficienti -per iniziare ad usare Emacs. Ci sono così tante opzioni in Emacs che -sarebbe impossibile spiegarle tutte qui, ma è possibile imparare tutte le -altre caratteristiche di Emacs utili per il proprio lavoro. Ci sono -comandi per leggere la documentazione dei comandi disponibili in Emacs. -Questi comandi di aiuto iniziano tutti con il carattere C-h, che infatti è -chiamato "carattere di aiuto (help)". - -Per raggiungere le voci di Aiuto si usa il carattere C-h e poi un altro -carattere che specifica la richiesta. Quando davvero non si sa cosa fare -si può provare con C-h ? ed Emacs indicherà tutti i tipi di aiuto che può -fornire. Se si è attivato l'aiuto con C-h e si decide che non serve più -si può annullare la richiesta con C-g. - -Alcuni sistemi fanno un diverso uso del carattere C-h perché questo viene -indebitamente modificato dall'amministratore di sistema. A parte -rivolgerti allo stesso perché risolva il problema puoi provare ad accedere -alla funzione aiuto di Emacs con il tasto F1 oppure con M-x help. - -La forma base di aiuto è data da C-h c. Si inserisce C-h, il carattere c -e poi un carattere o una sequenza di caratteri; Emacs mostrerà una breve -descrizione del comando stesso. - ->> Prova C-h c C-p. Dovresti leggere un messaggio del tipo - - C-p runs the command previous-line (purtroppo in inglese!) - -Questo messaggio indica il "nome della funzione". I nomi di funzione sono -usati principalmente per personalizzare ed estendere Emacs e sono scelti -anche in modo da indicare che cosa il comando fa. Servono quindi anche da -breve descrizione, sufficiente per ricordarsi di comandi già imparati. - -I comandi con più caratteri come ad esempio C-x C-s e (se non c'è il tasto -META o EDIT o ALT) v sono permessi allo stesso modo dopo una -richiesta di aiuto fatta con C-h c. - -Per avere ulteriori informazioni su un comando si usa C-h k invece che C-h -c. - ->> Prova C-h k C-p. - -Questo mostrerà la documentazione della funzione, così come il suo nome, -all'interno di una finestra di Emacs. Quando hai finito di leggere usa -C-x 1 per eliminare la finestra con il testo di aiuto. Non sei obbligato -a farlo subito. Puoi anche lavorare sul tuo testo mentre fai riferimento -al testo di aiuto e poi usare un C-x 1. - -Ecco altre utili opzioni di C-h: - - C-h f Descrive una funzione. Inserisci il nome della funzione. - ->> Prova con C-h f previous-line. Avrai tutte le informazioni che - Emacs possiede sulla funzione che implementa il comando C-p. - -Un comando simile è C-h v che mostra la documentazione di variabili i cui -valori sono utilizzati per personalizzare il comportamento di Emacs. Devi -inserire il nome della variabile quando Emacs lo richiede. - - C-h a "Apropos" comando. Inserisci una parola ed Emacs ti - elencherà tutti i comandi il cui nome contiene quella - parola. Questi comandi possono tutti essere eseguiti con - META-x. Per alcuni comandi ti sarà mostrata anche una - sequenza di uno o due caratteri che serve a far partire il - comando senza doverlo inserire per esteso. - ->> Prova C-h a file - -Questo mostrerà in un'altra finestra una lista di tutti i comandi che -contengono la parola "file" nel nome. Nella lista si vedranno -comandi-carattere, come C-x C-f, assieme ai corrispondenti nomi per esteso -come "find-file". - ->> Usa C-M-v per far scorrere il testo nella finestra di aiuto. Ripeti - per alcune volte. ->> Usa C-x 1 per eliminare la finestra di aiuto. - - C-h i Leggi la documentazione. Questo comando apre un buffer - speciale chiamato `*info*' in cui puoi leggere i manuali - on-line dei pacchetti installati sul tuo sistema. Batti m - emacs per leggere il manuale di Emacs. Se non hai - mai usato il sistema Info prima d'ora premi ? ed Emacs ti - guiderà nell'uso delle opzioni del modo Info. Una volta - terminata questa esercitazione il manuale di Emacs contenuto - nel sistema Info dovrebbe diventare la tua principale fonte - di documentazione. - - -* CONCLUSIONI -------------- - -Ricorda che per chiudere una sessione di Emacs si usa C-x C-c. Per -tornare temporaneamente alla shell, così da poter rientrare in Emacs -successivamente, si usa C-z. - -Questo documento è stato creato per essere utile a tutti i nuovi utenti, -se qualcosa per te è stato poco chiaro non dare la colpa a te stesso - -lamentati! - - -* COPIA -------- - -La versione inglese di questo testo (disponibile nel file "TUTORIAL") -deriva da una lunga serie di tutorial di Emacs che iniziò con quello -scritto da Stuart Cracraft per il primo Emacs. La versione italiana è a -cura di Alfredo Finelli (alfredofnl@tiscali.it). - -Questo documento, come GNU Emacs, è coperto da copyright e viene -distribuito con il permesso di farne copie a determinate condizioni: - - NOTA BENE: la licenza che definisce a tutti gli effetti i termini - secondo i quali è possibile la copia e la distribuzione di questo - documento è quella originale in lingua inglese contenuta nel file - "TUTORIAL". Qui di seguito se ne riporta una traduzione a scopo - indicativo, restando comunque inteso il fatto che è quella originale a - fare fede. - -Copyright (C) 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. - - È permesso a chiunque copiare e distribuire attraverso ogni mezzo copie - fedeli di questo documento così come viene ricevuto, a condizione che - le informazioni sul copyright e sui permessi garantiti siano conservate - intatte e che il distributore riconosca a colui che riceve la copia il - diritto ad un'ulteriore distribuzione, che deve avvenire così come - definito in questa clausola. - - È permesso distribuire versioni modificate di questo documento, o di - ogni sua parte, alle condizioni indicate precedentemente, purché esse - portino chiaramente indicato il nome di colui che le ha modificate per - ultimo. - -Le condizioni per copiare Emacs sono più complesse ma definite con lo -stesso spirito. Per favore, leggete il file COPYING e poi distribuite -copie di GNU Emacs ai vostri amici. Aiutateci a combattere -l'ostruzionismo al software ("la proprietà") usando, scrivendo e -condividendo software libero! - -;;; Local Variables: -;;; coding: latin-1 -;;; End: - -;;; arch-tag: c6f7079d-8032-473d-91d4-36754af15719 diff --git a/etc/TUTORIAL.ja b/etc/TUTORIAL.ja deleted file mode 100644 index 3452c02f0f8..00000000000 --- a/etc/TUTORIAL.ja +++ /dev/null @@ -1,1073 +0,0 @@ -Emacs $BF~Lg%,%$%I(B. $BK\%U%!%$%k$NCx:n8"$K$D$$$F$O:G8e$r8fMw2<$5$$!#(B - -Emacs $B$N%3%^%s%I$rF~NO$9$k$K$O!"0lHL$K%3%s%H%m!<%k%-! $B%3%s%H%m!<%k%-!<$r2!$7$?$^$^!"(B<$BJ8;z(B>$B%-!<$r2!$7$^$9!#Nc$($P!"(B - C-f $B$O%3%s%H%m!<%k%-!<$r2!$7$J$,$i(B f $B$N%-!<$r2!$9$3$H$G$9!#(B - M-<$BJ8;z(B> $B%a%?%-!<$r2!$7$?$^$^!"(B<$BJ8;z(B>$B%-!<$r2!$7$^$9!#$b$7%a%?%-!<$,$J(B - $B$$>l9g$O!"%(%9%1!<%W%-!<$r2!$7$F$+$iN%$7!"$=$l$+$i(B<$BJ8;z(B>$B%-!<(B - $B$r2!$7$^$9!#0J9_%(%9%1!<%W%-!<$N$3$H$r(B $B$H=q$-$^$9!#(B - -$B!*=EMW!*(B: Emacs$B$r=*N;$9$k$K$O!"(BC-x C-c $B$r%?%$%W$7$^$9!#(B -">>" $B$G;O$^$k9T$O!"$=$N;~2?$r$9$Y$-$+$r;X<($7$F$$$^$9!#Nc$($P!"(B -<> -[$B$3$N%Z!<%8$NESCf$N6uGr9T$O$o$6$HF~$l$F$"$j$^$9!#%,%$%I$O2<$KB3$-$^$9!#(B] ->> $B$G$O(B C-v $B!J $B$r2!$7$FN%$7$F(B v$B!K$G$9!#(B - ->> $B2?EY$+(B M-v $B$H(B C-v $B$r;n$7$F2<$5$$!#(B - - -$B!v$3$3$^$G$NMWLs(B -================ - - $B%U%!%$%k$r2hLLKh$K8+$F9T$/$K$O!"$9!#$3$N$H$-!"%+!<%=%k$N$"$k9T$,2hLL$NCf1{$K(B - $B$/$k$h$&$K$9$k!#!J(BC-1 $B$8$c$J$/$C$F(B C-L $B$G$9$h!*!K(B - ->> $B%+!<%=%k$r8+$D$1!"$=$N6a$/$K$I$s$JJ8>O$,=q$+$l$F$$$k$+$r3P$(!"(B - $B$=$l$+$i(B C-l $B$r%?%$%W$7$F2<$5$$!#(B - $B%+!<%=%k$,$I$3$K0\F0$7$?$+!"$=$N6a$/$NJ8>O$O$I$&$J$C$?$+$rD4$Y(B - $B$F$_$^$7$g$&!#(B - -$B$b$7$"$J$?$N%-!<%\!<%I$K(B PageUp $B$d(B PageDn $B%-!<$,$"$k$J$i!"$=$l$i$b2hLL(B -$B$r0\F0$9$k$N$K;H$($^$9!#$G$b!"(BC-v $B$d(B M-v $B$r;H$&J}$,8zN(E*$G$9!#(B - - -$B!v%+!<%=%k0\F0$N4pK\(B -======================== - -$B2hLLKh$N0\F0$O$G$-$k$h$&$K$J$j$^$7$?!#:#EY$O!"2hLL$NCf$G!"FCDj$N>l=j$K(B -$B0\F0$9$k$?$a$NJ}K!$r21$($^$7$g$&!#(B - -$B$3$l$K$O$$$/$D$+$N$d$jJ}$,$"$j$^$9!#Lp0u%-!<$r;H$&$3$H$b$G$-$^$9$,!"e$NI8=`0LCV$+$iBg$-$/F0$+$5$:$K!"(B C-p$B!"(BC-b$B!"(BC-f$B!"(BC-n $B$r;H(B -$B$&J}$,8zN(E*$G$9!#$3$l$i$O#4$D$NLp0u%-!<$HF1$8F/$-$r$7$^$9!#?^$G=q$1$P!"(B -$B> C-n $B$H(B C-p $B$G%+!<%=%k$r>e?^$N??Cf$N9T$KF0$+$7$F2<$5$$!#$=$l$+$i(B C-l - $B$r%?%$%W$7$F?^$NA4BN$,2hLLCf1{$K$/$k$h$&$K$7$F$_$^$7$g$&!#(B - - -$B$3$l$i$N%3%^%s%I$O$=$l$>$l!"(BPrevious, Next, Backward, Forward $B$NF,J8;z(B -$B$K$J$C$F$$$k$N$G!"21$($d$9$$$G$7$g$&!#$3$l$i$O!"%+!<%=%k0\F0$N4pK\%3%^(B -$B%s%I$G$"$j!"IQHK$K;H$&$b$N$G$9!#(B - ->> C-n $B$r2?2s$+%?%$%W$7!"$3$N9T$^$G%+!<%=%k$r0\F0$5$;$^$7$g$&!#(B - ->> C-f $B$r;H$C$F9T$NCf$[$I$K0\F0$7!"(BC-p $B$G2?9T$+>e$K0\F0$5$;$^$7$g$&!#(B - $B%+!<%=%k$N0LCV$NJQ2=$KCm0U$7$F2<$5$$!#(B - -$B3F9T$N:G8e$K$O!JL\$K$O8+$($J$$!K(B Newline $BJ8;z$,$"$j$^$9!#$3$l$O> $B9T$N@hF,$G(B C-b $B$r%?%$%W$7$F$_$^$7$g$&!#%+!<%=%k$OA0$N9T$NKvHx$K0\F0(B - $B$9$k$O$:$G$9!#$3$l$O(B C-b $B$,A0$N(B Newline $BJ8;z$r1[$($FLa$C$?$+$i$G$9!#(B - -$BF1MM$K(B C-f $B$O%+!<%=%k$r(B Newline $BJ8;z$r1[$($F> $B$5$i$K$b$&>/$7(B C-b $B$r%?%$%W$7$F%+!<%=%k0\F0$N46$8$rGD$s$G2<$5$$!#(B - $B:#EY$O(B C-f $B$G9TKv$^$G?J$s$G2<$5$$!#(B - $B$5$i$K$b$&0lEY(B C-f $B$r%?%$%W$7$FO$,2hLL$NCf$K0\F0$7$FMh$F$^$9!#$3$l$r!V%9%/%m!<%k!W$H8F$S$^$9!#2hLL(B -$B$,%9%/%m!<%k$9$k$3$H$K$h$C$F!"%+!<%=%k$r0\F0$5$;$F$b!"%+!<%=%k$O>o$K2h(B -$BLLFb$K$"$k$h$&$K$5$l$^$9!#(B - ->> C-n $B$r;H$C$F!"%+!<%=%k$r2hLL$N2 f) $B$G0lC18l@h$X!"(BM-b ( b) $B$G0lC18lA0$X0\F0$7$^$9!#(B - -$BCm0U!'(B $BF|K\8l$K$D$$$F$O!"C18l$N@Z$lL\$rG'<1$9$k$3$H$O$G$-$^$;$s$,!"5?(B - $B;wE*$JJ8@a$rC18l$N@Z$lL\$H$7$F$$$^$9!#(B - ->> M-f $B$d(B M-b $B$r2?2s$+;n$7$F$_$^$7$g$&!#(B - -$BC18l$NCfDx$K$$$k;~$O!"(BM-f $B$O$=$NC18l$N=*$o$j$^$G?J$_$^$9!#$b$7C18l4V$N(B -$B6uGr$K$$$k;~$K$O(B M-f $B$O> M-f $B$H(B M-b $B$r(B C-f $B$H(B C-b $B$r8r$($J$,$i?t2s;n$7!"%+!<%=%k$,C18lCf$K$"(B - $B$k;~$H!"C18l$HC18l$N4V$K$"$k;~$NF0$-$rD4$Y$F2<$5$$!#(B - -C-f $B$H(B C-b $B$KBP$9$k!"(BM-f $B$H(B M-b $B$NN`;w@-$KCmL\$7$^$7$g$&!#B?$/$N>l9g!"(B -$B%a%?%-!<$OJ8=q$r9=@.$9$k%f%K%C%H!JC18l!"J8!"CJMn!K$KBP$9$kA`:n$K;H$$!"(B -$B%3%s%H%m!<%k%-!<$O$=$l$h$j$b$b$C$H4pK\E*$JBP>]!JJ8;z$H$+9TEy!K$KBP$9$k(B -$BA`:n$K;H$$$^$9!#(B - -$B$3$NN`;w@-$O9T$HJ8$N4X78$K$b$"$j$^$9!#(BC-a $B$H(B C-e $B$O$=$l$>$l9TF,$H9TKv(B -$B$K0\F0$7!"(BM-a $B$H(B M-e $B$O$=$l$>$lJ8F,$HJ8Kv$K0\F0$7$^$9!#(B - ->> C-a $B$r#22s!"$=$l$+$i(B C-e $B$r#22s;n$7$^$7$g$&!#(B - M-a $B$r#22s!"$=$l$+$i(B M-e $B$r#22s;n$7$^$7$g$&!#(B - -C-a $B$r7+JV$7$F$b$=$l0J>e0\F0$7$^$;$s$,!"(BM-a $B$r7+$jJV$9$H$I$s$I$sA0$NJ8(B -$BF,$KLa$C$F$$$-$^$9!#$3$NItJ,$G$ON`;w@-$,GK$l$F$$$^$9$,!"$^$"$3$l$,<+A3(B -$B$JF0:n$G$O$J$$$G$7$g$&$+!#(B - -$BJ8>OCf$G%+!<%=%k$,$"$k0LCV$r!V%]%$%s%H!W$H8F$S$^$9!#8@$$$+$($l$P!"%+!<(B -$B%=%k$O!"J8>O$N$I$3$K%]%$%s%H$,$"$k$+$r2hLL>e$G<($7$F$$$k$N$G$9!#(B - -$B0J2<$KC1=c$J%+!<%=%k0\F0A`:n$K$D$$$FMWLs$7$^$9!#$3$N$J$+$K$O!"C18l$d9T(B -$BC10L$G$N0\F0%3%^%s%I$b4^$^$l$F$$$^$9!#(B - - C-f $B0lJ8;z> $B$3$l$iA4It$r2?EY$+;n$7$FN}=,$7$^$7$g$&!#(B - $B$I$l$bIQHK$K;H$&%3%^%s%I$G$9!#(B - -$B$"$HFs$D!"=EMW$J%+!<%=%k0\F0%3%^%s%I$,$"$j$^$9!#%U%!%$%k$N@hF,$K0\F0$9(B -$B$k(B M-< $B$H!"%U%!%$%k$NKvHx$K0\F0$9$k(B M-> $B$G$9!#(B - -$BBgDq$NCe$K$"$j!"$=$l$r%?%$%W$9(B -$B$k$K$O%7%U%H%-!<$r;H$&I,MW$,$"$j$^$9!#$7$?$,$C$F(B M-< $B$r%?%$%W$9$k$K$O!"(B -$B%a%?%-!<$H%7%U%H%-!<$H%3%s%^%-!<$rF1;~$K2!$5$M$P$J$j$^$;$s!#(B - ->> M-< $B$r;n$7$F!"$3$NF~Lg%,%$%I$N@hF,$K0\F0$7$^$7$g$&!#(B - $B$=$l$+$i!"(BC-v $B$r2?EY$+;H$C$F$3$3$^$G5"$C$F$-$F$/$@$5$$!#(B - ->> M-> $B$r;n$7$F!"$3$NF~Lg%,%$%I$NKvHx$K0\F0$7$^$7$g$&!#(B - $B$=$l$+$i!"(BM-v $B$r2?EY$+;H$C$F$3$3$^$G5"$C$F$-$F$/$@$5$$!#(B - -$B$b$7CeC#$7(B -$B$F$/$l$P!"$3$l$i$N%3%s%H%m!<%kJ8;z$rBG$DJ}$,!"Lp0u%-!<$rBG$D$h$j$:$C$H(B -$BB.$$$3$H$,J,$k$G$7$g$&!Jo$N0LCV$+$iBg$-$/F0$+$5$J$$$G$h$$$N$G!K!#(B -$B:G8e$K!"0lEY$3$l$i$N%3%s%H%m!<%kJ8;z$rBG$D=,47$rIU$1$?$i!"$b$C$H?J$s$@(B -$B%+!<%=%k0\F0%3%^%s%I$b4JC1$K3P$($k$3$H$,$G$-$^$9!#(B - -Emacs$B$NBgDq$N%3%^%s%I$K$O?tCM0z?t$rM?$($k$3$H$,$G$-$^$9!#BgDq$N>l9g$3(B -$B$N?tCM$G7+$jJV$72s?t$r;X<($9$k$3$H$K$J$j$^$9!#?tCM0z?t$rM?$($k$K$O!"%3(B -$B%^%s%I$rF~NO$9$kA0$K(B C-u $B$KB3$$$F?t;z$r2?7e$+%?%$%W$7$^$9!#$b$7%a%?%-!<(B -$B$,;H$($k$J$i!"%a%?%-!<$r2!$7$J$,$i?t;z$r%?%$%W$9$k$3$H$b$G$-$^$9!#$G$b(B -$B$d$O$j(B C-u $B$r3P$($k$3$H$r4+$a$^$9!#$=$l$O$I$s$JC> $BE,Ev$J?tCM0z?t$r(B C-n $B$"$k$$$O(B C-p $B$KM?$(!"0l2s$N%3%^%s%I$G$J$k$Y$/(B - $B$3$N9T$N6a$/$KMh$k$h$&$K$7$F$_$^$7$g$&!#(B - -$BBgDq$N%3%^%s%I$O?tCM0z?t$r7+$jJV$72s?t$H2ro$H$O0[$J$kF/$-$r$7$^$9!#(B - -C-v $B$d(B M-v $B$O$^$?0c$C$?%?%$%W$NNc30$G$9!#$3$N>l9g!";XDj$5$l$??t$N9T$@(B -$B$12hLL$r%9%/%m!<%k$5$;$k$3$H$K$J$j$^$9!#Nc$($P(B C-u 8 C-v $B$O2hLL$r#89T(B -$B>e$K%9%/%m!<%k$5$;$^$9!#(B - ->> C-u 8 C-v $B$r;n$7$F$_$^$7$g$&!#(B - -$B2hLL$,>e$K#89T%9%/%m!<%k$7$?$O$:$G$9!#$^$?2hLL$r2<$K%9%/%m!<%k$5$;$k$K$O(B -M-v $B$K0z?t$rM?$($l$P$h$$$N$G$9!#(B - -$B$b$7(B X $B$d(B MS-Windows $B$N%&%#%s%I%&%7%9%F%`$r;H$C$F$$$k$N$J$i!"%9%/%m!<(B -$B%k%P!<$H8F$P$l$k=DD9$N;M3Q$$%(%j%"$,(B Emacs $B$N%&%#%s%I%&$N:8C<$K$"$k$O(B -$B$:$G$9!#$=$3$r%^%&%9$G%/%j%C%/$7$F2hLL$r%9%/%m!<%k$5$;$k$3$H$b$G$-$^$9!#(B - ->> $B%9%/%m!<%k%P!<$NCf$G%^%&%9$N??Cf$N%\%?%s$r2!$7$F$_$^$7$g$&!#%\%?%s(B - $B$r2!$7$?0LCV$G7h$^$kJ8>O$N0LCV$^$G2hLL$,%9%/%m!<%k$7$^$9!#(B - ->> $B%9%/%m!<%k%P!<$NCf$G??Cf$N%\%?%s$r2!$7$?$^$^%^%&%9$r>e2<$KF0$+$7$F(B - $B$_$^$7$g$&!#$=$l$K9g$;$F2hLL$,%9%/%m!<%k$9$k$N$,J,$k$O$:$G$9!#(B - - -$B!v(B Emacs $B$,%O%s%0$7$?;~!JF0$+$J$/$J$C$?;~!K(B -========================================== - -$B$b$7(B Emacs $B$,%3%^%s%I$KH?1~$7$J$/$J$C$?$i!"(BC-g $B$r%?%$%W$9$k$3$H$G(BEmacs -$B$r0BA4$K;_$a$k$3$H$,$G$-$^$9!#(BC-g $B$G$H$F$b;~4V$N$+$+$k%3%^%s%I$r;_$a$k(B -$B$3$H$,$G$-$^$9!#(B - -C-g $B$O$^$?!"?tCM0z?t$re$N%-!> C-u 100 $B$H%?%$%W$7$F0z?t#1#0#0$r@_Dj$7$F$+$i(B C-g $B$rBG$C$F$_$^$7$g$&!#(B - $B$=$l$+$i(B C-f $B$rBG$C$F2<$5$$!#0lJ8;z$7$+?J$^$J$$$O$:$G$9!#$J$<$J$i!"(B - C-g $B$,?tCM0z?t$r%-%c%s%;%k$7$?$+$i$G$9!#(B - -$B4V0c$C$F(B $B$r%?%$%W$7$F$7$^$C$?;~$b!"(BC-g $B$G$=$l$rC$;$^$9!#(B - - -$B!v;HMQIT2D(B (disabled) $B%3%^%s%I(B -================================== - -$B$$$/$D$+$N%3%^%s%I$O=i?4> C-x C-l $B$H%?%$%W$7$F$_$^$7$g$&!J$3$l$O;HMQIT2D%3%^%s%I$G$9!K!#(B - $B$=$l$+$i(B n $B$H%?%$%W$7$^$7$g$&!#(B - - -$B!v%&%#%s%I%&(B -============ - -Emacs $B$O4v$D$b$N%&%#%s%I%&$K!"$=$l$>$l8DJL$NJ8>O$rI=<($9$k$3$H$,$G$-$^(B -$B$9!#$I$&$d$C$FJ#?t$N%&%#%s%I%&$rA`:n$9$k$+$O8eDx@bL@$7$^$9$,!"$3$3$G$O!"(B -$B$I$&$d$C$FM>J,$J%&%#%s%I%&$r>C$7$F!"85$N0l$D$N%&%#%s%I%&$N>uBV$KLa$k$+(B -$B$r@bL@$7$^$9!#$=$l$O4JC1$G$9!#(B - - C-x 1 $B%&%#%s%I%&$r#1$D$K$9$k!J$D$^$jB>$N%&%#%s%I%&$rA4It>C$9!K(B - -$B$D$^$j(B C-x $B$rBG$C$F$+$i$5$i$K(B 1 $B$rBG$D$N$G$9!#$3$N%3%^%s%I$O%+!<%=%k$N(B -$B$"$k%&%#%s%I%&$r2hLLA4BN$K9-$2$^$9!#B>$N%&%#%s%I%&$OA4It>C$($^$9!#(B - ->> $B%+!<%=%k$r$3$N9T$K;}$C$F$-$F!"(BC-u 0 C-l $B$H%?%$%W$7$F$_$F2<$5$$!#(B ->> $BB3$$$F(B C-h k C-f $B$H%?%$%W$7$F2<$5$$!#(B - $B?7$7$$%&%#%s%I%&$,(B C-f $B%3%^%s%I$N@bL@J8$rI=<($9$k$?$a$K8=$l$k$H$H$b(B - $B$K!"$3$N%&%#%s%I%&$,$I$N$h$&$K=L$`$+$r8+$F2<$5$$!#(B - ->> C-x 1 $B$H%?%$%W$7$F!"@bL@J8$rI=<($7$F$$$?%&%#%s%I%&$,>C$($k$N$r8+$F2<$5$$!#(B - -$B$3$N%3%^%s%I(B (C-x 1) $B$O$3$l$^$G$K3P$($?%3%^%s%I$H$O0[$J$j!"#2$D$N%-!<(B -$B$+$i$J$j$^$9!#:G=i$N%-!<$,(B Control-x $B$G$9!#$3$N%-!<$O!"B?$/$N%3%^%s%I(B -$B$r;O$a$k$?$a$N:G=i$N%-!<$G$9!#$=$l$i$N%3%^%s%I$NB?$/$O%&%#%s%I%&!"%U%!(B -$B%$%k!"%P%C%U%!!"$=$l$i$K4X78$9$k$b$N$rA`:n$9$k$?$a$N$b$N$G!"#2$"$k$$$O(B -$B#3!"#48D$N%-!<$rI,MW$H$9$k$b$N$,$"$j$^$9!#(B - - -$B!vA^F~$H:o=|(B -============ - -$BJ8>O$rF~NO$7$?$1$l$P!"C1$K$=$l$r%?%$%W$7$F2<$5$$!#(BEmacs $B$O!"L\$K8+$($k(B -$BJ8;z!J(BA, 7, * $BEy!K$rJ8>O$G$"$k$H$_$J$9$N$G!"$=$l$i$O$=$N$^$^A^F~$5$l$^(B -$B$9!#(B$B!J2~9T%-!A0$KF~NO$7$?J8;z$r:o=|$9$k$K$O!"(B $B$r%?%$%W$7$^$9!#(B -$B$O!"(BEmacs $B0J30$G!":G8e$K%?%$%W$7$?J8;z$r:o=|$9$k$?$a$K;H$&%-!<%\!<%I>e(B -$B$N%-!<$G$9!#DL>o$O!"(B $B%-!<$N>eJ}$K$"$kBg$-$a$N%-!<$G!"(B -"Delete" $B$H$+(B "Del" $B$H$+(B "Backspace" $B$H=q$$$"$j$^$9!#(B - -$B$b$7!"$=$N$=$l$,(B "Backspace" $B$H=q$$$F$"$k$J$i!"$=$l$,(B $B%-!<$G$9!#(B -$B$=$N>l9g!"B>$N>l=j$K(B "Delete" $B$H=q$$$F$"$k%-!<$,$"$k$+$b$7$l$^$;$s$,!"(B -$B$=$l$O(B $B%-!<$G$O$"$j$^$;$s!#(B - -$B$h$j0lHLE*$K8@$&$J$i!"(B $B$O8=:_%+!<%=%k$N$"$k0LCV$ND>A0$NJ8;z$r(B -$B:o=|$7$^$9!#(B - ->> $BJ8;z$r$$$/$D$+%?%$%W$7!"$=$l$+$i$=$l$i$r(B $B$r;H$C$F:o=|$7(B - $B$F2<$5$$!#$3$N%U%!%$%k$rJQ99$9$k$3$H$r5$$K$9$kI,MW$O$"$j$^$;$s!#%*(B - $B%j%8%J%k$NF~Lg%,%$%I%U%!%$%k$OJQ99$5$l$^$;$s$+$i!#:#8+$F$$$k%U%!%$(B - $B%k$O$"$J$?$N$?$a$N%3%T!<$G$9!#(B - -$BJ8>O$N0l9T$,2hLL$K<}$^$i$J$$DxD9$/$J$C$?>l9g!"$=$N9T$O2hLL>e$N.$5$J6J$C$?Lp0u!K$O!"$=$N(B -$B9T$,7QB3$5$l$F$$$k$3$H$rI=$7$F$$$^$9!#(B - ->> $B2hLL$N1&C<$^$GJ8>O$rF~NO$7!"$5$i$KF~NO$rB3$1$F2<$5$$!#(B - $B7QB39T$,$G$-$k$N$,J,$k$G$7$g$&!#(B - ->> $B$r;H$C$F#19T$K<}$^$k$H$3$m$^$G8=:_$N9T$rC;$/$7$F$_$F$/$@$5(B - $B$$!#7QB39T$O>C$($^$9!#(B - -$B2~9TJ8;z$bB>$NJ8;z$HF1$8$h$&$K:o=|$G$-$^$9!##2$D$N9T$N4V$N2~9TJ8;z$r>C(B -$B$9$H$=$l$i$N9T$,9g$o$5$j#1$D$N9T$K$J$j$^$9!#$b$7$=$N9g$o$5$C$?9T$,2hLL(B -$B$NI}$h$j$bD9$$>l9g$O!"7QB39T$H$J$C$FI=<($5$l$^$9!#(B - ->> $B%+!<%=%k$r9T$N@hF,$K0\F0$7!"(B $B$r%?%$%W$7$F2<$5$$!#8=:_$N9T$,(B - $B$=$NA0$N9T$H$D$J$,$j$^$9!#(B - ->> $B$r%?%$%W$7$F!":#:o=|$7$?2~9TJ8;z$r$^$?A^F~$7$F2<$5$$!#(B - -Emacs $B$N$[$H$s$I$N%3%^%s%I$O!"7+$jJV$7$N2s?t;XDj$G$-$k$3$H$r;W$$=P$7$F(B -$B2<$5$$!#$3$l$O!"J8;z$NA^F~$K$D$$$F$bEv$F$O$^$j$^$9!#(B - ->> C-u 8 * $B$H%?%$%W$9$k$H(B ******** $B$,A^F~$5$l$^$9!#;n$7$F$_$^$7$g$&!#(B - -$B$3$l$G!"(BEmacs $B$GJ8>O$rF~NO$7!"$^$?4V0c$$$r=$@5$9$k$b$C$H$b4pK\E*$JJ}K!(B -$B$r3X$s$@$3$H$K$J$j$^$9!#J8;z$HF1$8MM$K!"C18l$d9T$b:o=|$9$k$3$H$,$G$-$^(B -$B$9!#:o=|A`:n$K$D$$$FMWLs$9$k$H $B%+!<%=%k$ND>A0$NJ8;z$r:o=|!J(Bdelete$B!K(B - C-d $B%+!<%=%k$N$"$kJ8;z$r:o=|!J(Bdelete$B!K(B - - M- $B%+!<%=%k$ND>A0$NC18l$r>C5n!J(Bkill$B!K(B - M-d $B%+!<%=%k0LCV$N8e$m$K$"$kC18l$r>C5n!J(Bkill$B!K(B - - C-k $B%+!<%=%k0LCV$+$i9TKv$^$G$r>C5n!J(Bkill$B!K(B - M-k $B%+!<%=%k0LCV$+$iJ8Kv$^$G$r>C5n!J(Bkill$B!K(B - - $B$H(B C-d $B$KBP$9$k(B M- $B$H(B M-d $B$O!"(BC-f $B$H(B M-f $B$G;O$^$C$?N`(B -$B;w@-$r$^$?3HD%$7$^$9!#$3$3$G(B $B$O%3%s%H%m!<%kJ8;z$G$O$"$j$^$;$s(B -$B$,!"$^$"!"$=$l$O5$$K$7$J$$$G2<$5$$!#(BC-k $B$H(B M-k $B$N4X78$O(B C-e $B$H(B M-e $B$N(B -$B4X78!J9T$HJ8$NBPHf!K$HF1$8$G$9!#(B - -$B%P%C%U%!$N$I$NItJ,$G$b>C5n!J(Bkill$B!K$G$-$kC10l$NJ}K!$,$"$j$^$9!#>C5n$7$?(B -$B$$ItJ,$N;O$a$+=*$j$K0\F0$7!"(B C-@ $B$b$7$/$O(B C-SPC $B$r%?%$%W$7$^$9(B (SPC $B$O(B -$B%9%Z!<%9%P!<$N$3$H$3$G$9!K!#$=$l$+$i>C5n$7$?$$ItJ,$NH?BP$NC<$K0\F0$7!"(B -C-w $B$r%?%$%W$7$^$9!#$3$l$G$=$NItJ,$,>C5n$5$l$^$9!#(B - ->> $B%+!<%=%k$rA0$N%Q%i%0%i%U$N:G=i$NJ8;z!V%P!W$K0\F0$5$;$^$7$g$&!#(B ->> $B$=$l$+$i(B C-SPC $B$r%?%$%W$7$^$9!#(B"Mark set" $B$H$$$&%a%C%;!<%8$,2hLL$N(B - $B2> $B$5$i$K%+!<%=%k$r> C-w $B$r%?%$%W$7$^$7$g$&!#!V%P!W$+$i!V=*!W$ND>A0$^$G$,>C5n$5$l$^$9!#(B - -$B!V>C5n!J(Bkill$B!K!W$H!V:o=|!J(Bdelete$B!K!W$N0c$$$K5$$r$D$1$F2<$5$$!#>C5n$7$?(B -$BJ8>O$O:FEYA^F~$G$-$^$9$,!":o=|$7$?$b$N$O:FEYA^F~$9$k$3$H$O$G$-$^$;$s!#(B -$B0lC6>C5n$7$?$b$N$r:FEYA^F~$9$k$3$H$r:FF~!J(Byanking$B!K$H8F$S$^$9!#0lHL$K!"(B -$BBgNL$NJ8>O$r>C$9%3%^%s%I$O!"$=$NJ8>O$r>C5n$7$^$9$,!J$@$+$i8e$G:FF~$G$-(B -$B$^$9!K!"0lJ8;z$H$+6uGr9T$d6uGrJ8;z$N$_$r>C$9%3%^%s%I$O!"$=$l$i$r:o=|$7(B -$B$^$9!J$@$+$i$=$l$i$O:FF~$G$-$^$;$s!K!#(B - ->> $B6u9T$G$J$$9T$N@hF,$K%+!<%=%k$r0\F0$5$;$F2<$5$$!#(B - $B$=$l$+$i(B C-k $B$G$=$N9T$NJ8>O$r>C5n$7$F2<$5$$!#(B ->> $B$b$&0lEY(B C-k $B$r%?%$%W$7$F$/$@$5$$!#$=$N9T$KB3$/2~9TJ8;z$,>C$5$l$k$N(B - $B$,J,$j$^$7$?$+!#(B - -$B0l2sL\$N(B C-k $B$O$=$N9T$NJ8>O$r>C$7!"#22sL\$N(B C-k $B$O$=$N9T<+?H$r>C$7$F$=(B -$B$N@h$N9T$r>e$2$F$-$^$9!#(BC-k $B$N?tCM0z?t$N07$$$OFCC$7$^$9!#$3$l$OC1$J$k7+$jJV$7$G$O$"$j$^$;$s!#(BC-u 2 -C-k $B$O#2$D$N9T$H$=$l$>$l$KB3$/2~9TJ8;z$r>C$7$^$9$,!"(BC-k $B$r#2EY%?%$%W$7(B -$B$F$b$=$&$O$J$j$^$;$s!#(B - -$B>C5n$7$?J8>O$rI|3h$5$;$kA`:n$r:FF~!J(Byanking$B!K$H8F$S$^$9!#>C$7$?J8>O$O!"(B -$B85$HF1$8>l=j$K$G$b85$H$O0c$&>l=j$K$G$b!"$5$i$K$OJL$N%U%!%$%k$K$b:FF~$G(B -$B$-$^$9!#$^$?!"2?EY$b:FF~$9$k$3$H$GJ8>O$N%3%T!<$rJ#?t:n$k$3$H$b$G$-$^$9!#(B - -$B:FF~$N$?$a$N%3%^%s%I$O(B C-y $B$G$9!#$3$l$O!":G8e$K>C5n$7$?J8>O$r8=:_%+!<(B -$B%=%k$,$"$k0LCV$K:FF~$7$^$9!#(B - ->> $B;n$7$F2<$5$$!#(BC-y $B$r%?%$%W$7$F:G8e$K>C5n$7$?J8>O$r:FF~$7$^$7$g$&!#(B - -C-k $B$rB3$1$FC5n$7$?3F9T$OA4It$^$H$a$FJ]B8$5$l$k$N$G!"0l2s(B -$B$N(B C-y $B$G$=$l$i$N9T$,A4It:FF~$5$l$^$9!#(B - ->> C-k $B$r2?EY$+B3$1$F%?%$%W$7$F$_$F2<$5$$!#(B - -$B$5$"!">C5n$7$?J8>O$r:FF~$7$^$7$g$&!#(B - ->> C-y $B$r%?%$%W$7$F2<$5$$!#O$r%3%T!<$9$k$+J,$j$^$7$?$M!#(B - -$B2a5n$K>C5n$7$?J8>O$r:FF~$7$?$$$N$K!"JL$NJ8>O$r$=$N8e>C5n$7$?;~$O$I$&$9(B -$B$l$P$h$$$G$7$g$&!)(B C-y $B$O:G8e$K>C5n$7$?$b$N$r:FF~$7$^$9!#$G$b$=$l$G$h(B -$B$j0JA0$K>C5n$7$?J8>O$,$J$/$J$k$o$1$G$O$"$j$^$;$s!#$=$&$$$&J8>O$O(B M-y -$B$G:FF~$G$-$^$9!#(BC-y $B$G:G8e$K>C5n$7$?J8>O$r:FF~$7$?D>8e$K(BM-y $B$r%?%$%W$9(B -$B$k$H!"$=$N:FF~$5$l$?J8>O$O$=$l0JA0$K>C5n$7$?$b$N$KJQ99$5$l$^$9!#2?EY$b(B -$BB3$1$F(B M-y $B$r%?%$%W$9$k$H!"$5$i$KA0$K>C5n$7$?J8>O$r8F$SLa$;$^$9!#K>$_(B -$B$NJ8>O$K9T$-Ev$C$?$i!"$=$l$O$=$N$^$^$K$7$FJT=8:n6H$rB3$1$l$P$h$$$N$G$9!#(B - -$B$"$k2s?t$@$1(B M-y $B$r7+$jJV$7$?$i!"$^$?:G=i!J$D$^$j:G8e$K>C5n$7$?J8>O!K(B -$B$KLa$j$^$9!#(B - ->> $B0l9T>C5n$7!"JL$N9T$K9T$C$F$=$N9T$r>C5n$7$F2<$5$$!#(B - $B$=$l$+$i(B C-y $B$G#2HVL\!J:G8e!K$K>C5n$7$?9T$r:FF~$7$F2<$5$$!#(B - $BB3$$$F(B M-y $B$G$=$N9T$r:G=i$K>C5n$7$?9T$KJQ$($F2<$5$$!#(B - M-y $B$rB3$1$I$&$J$k$+8+$F$_$^$7$g$&!##2HVL\$K>C5n$7$?9T$,La$C$FMh$k(B - $B$^$G(B M-y $B$r7+$jJV$7!"$5$i$K$b$&2?EY$+(B M-y $B$r$7$^$7$g$&!#(B - $B$b$7K>$_$J$i(B M-y $B$K@5$b$7$/$OIi$N?tCM0z?t$rM?$($F$bNI$$$G$7$g$&!#(B - - -$B!vC$7(B(UNDO) -================ - -$B$b$7!"J8>O$rJQ99$7$?8e$G$=$NJQ99$O4V0c$$$@$C$?$H;W$C$?$i!"C$7(B -$B!J(Bundo$B!K%3%^%s%I(B C-x u $B$G$=$NJQ99$rC$9$3$H$,$G$-$^$9!#(B - -$BDL>o!"(BC-x u $B$O0l$D$N%3%^%s%I$K$h$kJQ99$rC$7$^$9!#B3$1$F2?EY$b(B C-x -u $B$r9T$($P$=$N$?$S$K0l$DA0$N%3%^%s%I$,C$7$K$J$j$^$9!#(B - -$B$?$@$7$3$l$K$ONc30$,Fs$D$"$j$^$9!#$^$:!"J8>O$rJQ99$7$J$$%3%^%s%I$OC$7$K$J$j$^$;$s!#%+!<%=%k0\F0$d%9%/%m!<%k$N%3%^%s%I$,$=$l$KEv$?$j$^$9!#(B -$B$=$l$+$i!"J8;z$NA^F~!J<+8JA^F~%3%^%s%I!K$O(B 20 $B8D0l$^$H$a$G07$o$l$^$9!#(B -$B$3$l$OJ8;z$NA^F~$rC$9$?$a$N(B C-x u $B$N2s?t$r8:$i$9$?$a$G$9!#(B - ->> $B$3$N9T$r(BC-k$B$G>C$7$F2<$5$$!#$=$7$F!"(BC-x u $B$GLa$7$F2<$5$$!#(B - -C-_ $B$bC$7!J(Bundo$B!K$r9T$J$&%3%^%s%I$G$9!#5!G=$O!"(BC-x u $B$HF1$8$G$9$,!"(B -$BB3$1$F2?EY$b%?%$%W$9$k>l9g$O$h$jJXMx$G$9!#(BC-_ $B$NLdBj$O!"%-!<%\!<%I$K$h$C(B -$B$F$O$I$&$d$C$F%?%$%W$9$k$N$+J,$j$E$i$$;v$G$9!#$@$+$i(B C-x u $B$,$"$k$N$G(B -$B$9!#CO$N:o=|$bJ8>O$N>C5n$HF1MM$KC$;$^$9!#:o=|$H>C5n$N0c$$$O:FF~$G$-(B -$B$k$+$I$&$+$N0c$$$@$1$G!"C$7$K$O4X78$"$j$^$;$s!#(B - - -$B!v%U%!%$%k(B -========== - -$BJT=8$7$F$$$kJ8>O$r915WE*$JJ*$K$9$k$K$O!"$=$l$r%U%!%$%k$KJ]B8$7$J$1$l$P(B -$B$J$j$^$;$s!#$5$b$J$$$H!"(BEmacs $B$N=*N;$HF1;~$K$=$l$O$J$/$J$C$F$7$^$$$^$9!#(B -$BJ8>O$r%U%!%$%k$K%;!<%V!JJ]B8!K$9$k$K$O!"J8>O$rF~NO$9$kA0$K!"$^$:%U%!%$(B -$B%k$r3+$+$J$1$l$P$J$j$^$;$s!J%U%!%$%k$r(B "visit" $B$9$k$H$b8@$$$^$9!K!#(B - -$B%U%!%$%k$r3+$/(B (find) $B$H$O!"$=$N%U%!%$%k$NCf?H$r(B Emacs $B$G8+$k$3$H$r0U(B -$BL#$7$^$9!#?'!9$J0UL#$G!"$=$l$O$"$J$?$,%U%!%$%k<+?H$rJT=8$7$F$$$k$+$NMM(B -$B$G$9!#$7$+$7!"(BEmacs $B$G9T$&JQ99$O%U%!%$%k$r%;!<%V$9$kKx$O915WE*$J$b$N$H(B -$B$J$j$^$;$s!#$3$l$O!"$=$l$rK>$^$J$$$N$K!"ESCf$^$GJQ99$7$?%U%!%$%k$,;D$k(B -$B$N$rHr$1$k$?$a$G$9!#%;!<%V$7$?8e$G$5$(!"JQ99$7$?$b$N$,4V0c$C$F$$$?;~$N(B -$B$?$a$K!"85$N%U%!%$%k$OL>A0$rJQ$($F;D$5$l$^$9!#(B - -$B2hLL$N0lHV2<6a$/$K!"(B"-J:-- TUTORIAL.ja" $B$NMM$JJ8;zNs$G;O$^$j(B "----" $B$G(B -$B=*$C$F$$$k9T$,$"$k$O$:$G$9!#DL>o$O2hLL$N$3$NItJ,$K8=:_3+$$$F$$$k%U%!%$(B -$B%k$NL>A0$,I=<($5$l$F$$$^$9!#:#$O(B "TUTORIAL.ja" $B$H$$$&L>$N%U%!%$%k!J$3(B -$B$l$O(B Emacs $BF~Lg%,%$%I$N$"$J$?MQ$N%3%T!<$G$9!K$r3+$$$F$$$^$9!#(BEmacs $B$G(B -$B%U%!%$%k$r3+$/$H$=$N%U%!%$%k$NL>A0$,$3$NItJ,$K8=$l$^$9!#(B - -$B%U%!%$%k$r3+$/$?$a$N%3%^%s%I$O$3$l$^$G3X$s$@$b$N$H$O0c$$!"%U%!%$%k$NL>(B -$BA0$r;XDj$7$J$1$l$P$J$j$^$;$s!#$3$l$r!"%3%^%s%I$,!VCl9g$O0z?t$O%U%!%$%kL>$G$9!#$rJ9$$$F$-$^$9!#%?%$%W$7$?%U%!%$%kL>(B -$B$O2hLL$N:G2<9T$KI=<($5$l$^$9!#$3$N:G2<9T$O!"$3$&$$$&F~NO$N$?$a$K;H$C$F(B -$B$$$k;~$O!"%_%K%P%C%U%!$H8F$S$^$9!#DL>o$NJT=8%3%^%s%I$G%U%!%$%kL>$rJT=8(B -$B$9$k$3$H$b$G$-$^$9!#(B - -$B%U%!%$%kL>$NF~NOCf!J$"$k$$$O$=$NB>$N%_%K%P%C%U%!F~NOCf!K$K(B C-g $B$K$h$C(B -$B$F%3%^%s%I$r%-%c%s%;%k$G$-$^$9!#(B - ->> C-x C-f $B$r%?%$%W$7$F$+$i(B C-g $B$r%?%$%W$7$F$_$^$7$g$&!#%_%K%P%C%U%!$,(B - $BC$5$l!"$=$l$r;H$C$F$$$?%3%^%s%I(B C-x C-f $B<+BN$bC$5$l$^$9!#(B - $B$@$+$i!"%U%!%$%k$O2?$b3+$+$l$^$;$s!#(B - -$B%U%!%$%kL>$rF~NO$7$?$i!"(B$B%-!<$r%?%$%W$7F~NO$r40N;$5$;$^$9!#$=$&(B -$B$9$k$H!"(BC-x C-f $B%3%^%s%I$,Av$j;O$a;XDj$7$?%U%!%$%k$r3+$-$^$9!#%_%K%P%C(B -$B%U%!$O(B C-x C-f $B%3%^%s%I$N=*N;$H$H$b$K>C$($^$9!#(B - -$B%U%!%$%k$NFbMF$,2hLL$KI=<($5$l$k$H!"$=$NFbMF$rJQ99$9$k$3$H$,$G$-$^$9!#(B -$B2C$($?JQ99$r915WE*$J$b$N$K$7$?$1$l$P!"O$r%U%!%$%k$K%3%T!<$7$^$9!#=i$a$F$3$l$r(B -$BA0$KIU$1BX$($k$N$G!"$=$NFbMF$O<:(B -$B$o$l$^$;$s!#$=$N?7$7$$L>A0$O85$N%U%!%$%k$NL>A0$N:G8e$K(B "~" $B$r$D$1$?$b(B -$B$N$G$9!#(B - -$B%;!<%V$7=*$o$k$H!"%;!<%V$7$?%U%!%$%k$NL>A0$,I=<($5$l$^$9!#3d$HIQHK$K%;!<(B -$B%V$7$?J}$,NI$$$G$7$g$&!#%7%9%F%`$,Mn$A$F$b$;$C$+$/$N:n6H$,%Q%"$K$J$i$J(B -$B$$$h$&$K!#(B - ->> C-x C-s $B$H%?%$%W$7$F$3$NF~Lg%,%$%I$N%3%T!<$r%;!<%V$7$F2<$5$$!#(B - $B2hLL:G2O$rF~NO$7$F$$$-$^$9!#(B -$B%U%!%$%k$r%;!<%V$7$h$&$H$7$?;~$K=i$a$F?7$7$$%U%!%$%k$,:n$i$l!":#$^$GF~(B -$BNO$7$?FbMF$,$=$l$K=q$-9~$^$l$^$9!#$=$l0J9_$O!"$"$J$?$O4{B8$N%U%!%$%k(B -$B!J$?$C$?:#:n$i$l$?%U%!%$%k!K$rJT=8$7$F$$$k$H;W$C$F2<$5$$!#(B - - -$B!v%P%C%U%!(B -========== - -$B#2$DL\$N%U%!%$%k$r(B C-x C-f $B$G3+$$$F$b!":G=i$N%U%!%$%k$O(B Emacs $BFbIt$K;D$C(B -$B$?$^$^$G$9!#$=$C$A$N%U%!%$%k$KLa$k$K$O$b$&0lEY(B C-x C-f $B$G$=$N%U%!%$%k(B -$B$r3+$1$P$h$$$N$G$9!#$3$&$d$C$F!"4v$D$b$N%U%!%$%k$r(B Emacs $B$G3+$/$3$H$,(B -$B$G$-$^$9!#(B - ->> "foo" $B$H$$$&L>$N%U%!%$%k$r:n$j$^$7$g$&!#(BC-x C-f foo $B$G$9!#(B - $B2?$+J8>O$rF~$l!"JT=8$7!"(BC-x C-s $B$G(B "foo" $B$r%;!<%V$7$F2<$5$$!#(B - $B:G8e$K(B C-x C-f TUTORIAL.ja $B$H%?%$%W$7(B - $BF~Lg%,%$%I$KLa$j$^$7$g$&!#(B - -Emacs $B$O%U%!%$%k$NFbMF$r%P%C%U%!!J(Bbuffer$B!K$H8F$P$l$k$b$N$NCf$K3JG<$7$F(B -$B$$$^$9!#%U%!%$%k$r3+$/$H?7$7$$%P%C%U%!$,$G$-$^$9!#(BEmacs $B$,8=:_;}$C$F$$(B -$B$k%P%C%U%!$N%j%9%H$r8+$k$K$O!"> C-x C-b $B$r;n$7$F$_$^$7$g$&!#(B - -$B3F%P%C%U%!$,$I$s$JL>A0$K$J$C$F$$$k$+!"$=$l$,3+$$$F$$$k%U%!%$%k$NL>A0$,(B -$B$I$&$J$C$F$$$k$+8+$F2<$5$$!#(BEmacs $B$N%&%#%s%I%&Fb$K$"$kJ8>O$O$I$l$b!"$$(B -$B$:$l$+$N%P%C%U%!$N0lIt$G$9!#(B - ->> C-x 1 $B$H%?%$%W$7$F%P%C%U%!%j%9%H$r>C$7$^$7$g$&!#(B - -$B%P%C%U%!$,J#?t$"$C$F$b!"$"$k;~E@$G$O$=$N0l$D$@$1$,!V8=:_!W$N%P%C%U%!$G(B -$B$9!#$=$l$O$"$J$?$,JT=8Cf$N%P%C%U%!$G$9!#$b$7B>$N%P%C%U%!$rJT=8$7$?$1$l(B -$B$P!"$=$N%P%C%U%!$K@ZBX$($J$1$l$P$J$j$^$;$s!#%U%!%$%k$r3+$$$F$$$k%P%C%U%!(B -$B$K@ZBX$($k$K$O!"$^$?(B C-x C-f $B$G$=$N%U%!%$%k$r3+$1$PNI$$$G$7$g$&!#$G$b!"(B -$B$b$C$H4JC1$JJ}K!$b$"$j$^$9!#(BC-x b $B%3%^%s%I$G$9!#$3$N%3%^%s%I$r%?%$%W$7(B -$B$F!"%P%C%U%!$NL>A0$rF~NO$9$l$PNI$$$N$G$9!#(B - ->> C-x b foo $B$H%?%$%W$7$F!"(B "foo" $B$H$$$&%U%!%$%k$r3+$$$F$$$k(B - "foo" $B%P%C%U%!$KLa$C$F$_$^$7$g$&!#$=$l$+$i(B C-x b TUTORIAL.ja - $B$H%?%$%W$7$F!"$3$N%,%$%I$KLa$j$^$7$g$&!#(B - -$BIaDL$O!"%P%C%U%!$NL>A0$H$=$l$,3+$$$F$$$k%U%!%$%k$NL>A0!J%G%#%l%/%H%jL>(B -$B$NItJ,$r=|$$$F!K$OF1$8$G$9!#Nc30$b$"$j$^$9!#(BC-x C-b $B$G:n$C$?%P%C%U%!%j(B -$B%9%H$O>o$K3F%P%C%U%!$NL>A0$rI=<($7$^$9!#(B - -$B$"$J$?$,(B Emacs $B$N%&%#%s%I%&$G8+$kJ8>O$O$I$l$b!"$$$:$l$+$N%P%C%U%!$N0l(B -$BIt$G$9!#%P%C%U%!$K$h$C$F$OBP1~$9$k%U%!%$%k$,L5$$$b$N$b$"$j$^$9!#Nc$($P(B -"*Buffer List*" $B$H$$$&L>A0$N%P%C%U%!$K$O%U%!%$%k$,$"$j$^$;$s!#$3$N%P%C(B -$B%U%!$O$"$J$?$,(B C-x C-b $B$G:n$C$?%P%C%U%!%j%9%H$rJ];}$7$F$$$k%P%C%U%!$G(B -$B$9!#(B"*Messages*" $B$H$$$&%P%C%U%!$b%U%!%$%k$r;}$A$^$;$s!#$3$N%P%C%U%!$O!"(B -Emacs $B$,:G2<9T$KI=<($9$k%a%C%;!<%8$rJ];}$7$F$$$^$9!#(B - ->> C-x b *Messages* $B$H%?%$%W$7$F%a%C%;!<%8$N%P%C%U%!$r8+$F$_(B - $B$^$7$g$&!#$=$l$+$i(B C-x b TUTORIAL.ja $B$G$3$N%,%$%I$KLa$C$F(B - $B2<$5$$!#(B - -$B$"$k%U%!%$%k$NFbMF$K$J$s$i$+$NJQ99$r2C$(!"$=$l$+$iB>$N%U%!%$%k$r3+$$$F(B -$B$b!":G=i$N%U%!%$%k$O$^$@%;!<%V$5$l$^$;$s!#JQ99$O(B Emacs $B$NFbIt!"$=$N%U%!(B -$B%$%k$KBP1~$9$k%P%C%U%!$NCf$K;D$C$?$^$^$G$9!##2HVL\$N%U%!%$%k$N%P%C%U%!(B -$B$r:n$C$?$j!"JT=8$7$?$j$7$F$b!":G=i$N%U%!%$%k$N%P%C%U%!$K$O2?$N1F6A$b$"(B -$B$j$^$;$s!#$3$l$O$H$F$bLr$KN)$A$^$9$,!":G=i$N%U%!%$%k$N%P%C%U%!$r%;!<%V(B -$B$9$k2?$+JXMx$JJ}K!$,I,MW$@$H$$$&$3$H$G$b$"$j$^$9!#(B C-x C-s $B$G%;!<%V$9(B -$B$k$?$a$K(B C-x C-f $B$G85$N%P%C%U%!$KLa$k$N$OLq2p$G$9!#$=$3$G$l$K$D$$$F!"$=$l(B -$B$r%;!<%V$9$k$+$I$&$+$rJ9$$$F$-$^$9!#(B - ->> $B0l9TJ8>O$rF~NO$7$F$+$i(B C-x s $B$H%?%$%W$7$F2<$5$$!#(B - TUTORIAL.ja $B$H$$$&%P%C%U%!$r%;!<%V$9$k$+$I$&$+J9$$$F$/$k$O$:$G$9!#(B - $B!V$O$$!W$HEz$($k$?$a$K(B "y" $B$H%?%$%W$7$F2<$5$$!#(B - - -$B!v%3%^%s%I$N3HD%(B -================ - -Emacs $B$K$O!"%3%s%H%m!<%kJ8;z$d%a%?J8;z$K3dEv$F$i$l$k$h$j$b$:$C$H$:$C$H(B -$BB?$/$N%3%^%s%I$,$"$j$^$9!#$3$l$i$r07$&$?$a$K!"3HD%!J(BeXtend$B!K%3%^%s%I$r(B -$B;H$$$^$9!#$=$l$K$O!"0J2<$N#2$D$NA0$K$h$k3HD%!#B3$1$F%3%^%s%I$NL>A0$rF~NO$7$^$9!#(B - -$B$3$l$i$O!"0lHLE*$K$OJXMx$@$1$l$I$b!"$3$l$^$G8+$F$-$?$b$N$[$I$OIQHK$KMQ(B -$B$$$i$l$J$$%3%^%s%I$G$9!#(BC-x C-f $B!J%U%!%$%k$r3+$/!K$d(B C-x C-s$B!J%U%!%$%k(B -$B$r%;!<%V!K$O$3$NCg4V$G$9!#B>$K!"(BC-x C-c$B!J(BEmacs $B$r=*N;!K$b$=$&$G$9!#(BC-x -C-c $B$K4X$7$F$O!"$=$l$^$G$K2C$($?JQ99$,L5$/$J$k$N$r?4G[$9$kI,MW$O$"$j$^(B -$B$;$s!#(BEmacs $B$r=*N;$5$;$kA0$K!"JQ99$5$l$?3F%U%!%$%k$r%;!<%V$9$k$+$I$&$+(B -$BJ9$$$F$-$^$9$+$i!#(B - -C-z $B$O!V0l;~E*$K!W(B Emacs $B$rH4$1$k%3%^%s%I$G$9!#$^$?F1$8(B Emacs $B%;%C%7%g(B -$B%s$KLa$k$3$H$,$G$-$^$9!#(B - -$B$=$l$,$G$-$k%7%9%F%`>e$J$i!"(BC-z $B$O(B Emacs $B$r!VCfCG!W$5$;$^$9!#$D$^$j(B -Emacs $B$r=*N;$9$k$3$H$J$/!"%3%^%s%I%7%'%k$KLa$k$3$H$,$G$-$^$9!#BgJ}$NI8(B -$B=`E*$J%7%'%k$J$i!"(B`fg' $B%3%^%s%I$b$7$/$O(B `%emacs' $B$K$h$C$F(B Emacs $B$r:F3+(B -$B$G$-$^$9!#(B - -$B!VCfCG!W5!G=$r$N%W%m%0%i%`$rAv$i$;$F$+$i$^$?(B Emacs $B$KLa$k$3$H$,$G$-(B -$B$k$h$&$K$7$^$9!#$3$N>l9gK\Ev$K(B Emacs $B$+$iH4$1=P$k$o$1$G$O$"$j$^$;$s$N(B -$B$G!"%7%'%k%3%^%s%I$N(B `exit' $B$,$=$N%5%V%7%'%k$+$i(B Emacs $B$KLa$kIaDL$N$d(B -$B$jJ}$G$9!#(B - -C-x C-c $B$O%m%0%"%&%H$7$h$&$H;W$&;~$K;H$&$b$N$G$9!#%a!<%k%D!<%k!J(Bmail -$B%3%^%s%IEy!K$d$=$NB>$NMM!9$J%"%W%j%1!<%7%g%s%W%m%0%i%`$,5/F0$7$?(B Emacs -$B$+$iH4$1=P$k>l9g$K;H$&$N$b@5$7$$$d$jJ}$G$9!#$3$l$i$N%W%m%0%i%`$O(B Emacs -$B$NCfCG$K$I$&BP=h$7$FNI$$$+CN$i$J$$$G$7$g$&$+$i!#$7$+$7$J$,$i!"IaDL$N>l(B -$B9g$O!"%m%0%"%&%H$7$h$&$H$7$J$$8B$j$O(B Emacs $B$r=*N;$5$;$k$h$j$O(B C-z $B$GCf(B -$BCG$5$;$kJ}$,NI$$$G$7$g$&!#(B - -C-x $B%3%^%s%I$O$?$/$5$s$"$j$^$9!#$3$l$^$G$K!"0J2<$r3X$S$^$7$?!#(B - - C-x C-f $B%U%!%$%k$r3+$/!J(BFind$B!K(B - C-x C-s $B%U%!%$%k$N%;!<%V!J(BSave$B!K(B - C-x C-b $B%P%C%U%!$N%j%9%H%"%C%W(B - C-x C-c Emacs $B$r=*N;(B - C-x 1 $B%&%#%s%I%&$r#1$D$K$9$k!J$D$^$jB>$N%&%#%s%I%&$rA4It>C$9!K(B - C-x u $BC$7(B - -$BL>A0$K$h$k3HD%%3%^%s%I$K$O!"$"$^$j;H$o$J$$$b$N$d!"FCDj$N%b!<%I$G$7$+;H(B -$B$o$J$$$b$N$,$"$j$^$9!#$?$H$($P(B replace-string $B$G$9$,!"$3$l$OJ8;zNs$rCV(B -$B49$9$k$b$N$G$9!#(BM-x $B$r%?%$%W$9$k$H!"(BEmacs $B$O2hLL$N:G2<9T$K(B M-x $B$HI=<((B -$B$7F~NO$rB%$9$N$G!"$=$3$K%3%^%s%I$NL>A0!J$3$N>l9g(B "replace-string"$B!K$r(B -$BF~$l$J$1$l$P$J$j$^$;$s!#(B"repl s" $B$H$@$1%?%$%W$9$k$H(B Emacs $B$,%3%^(B -$B%s%IL>$rJd40$7$F$/$l$^$9!#!J(B $B$O%?%V%-!<$G$9!#IaDL$O!"%-!<%\!<%I$N(B -$B:8C$rF~$l(B -$B$?$i(B $B$rBG$C$F2<$5$$!#(B - -"Replace string" $B%3%^%s%I$K$O0z?t$,Fs$DI,MW$G$9!#$I$NJ8;zNs$r$I$&CV49(B -$B$9$k$+$G$9!#3F0z?t$rF~NO$9$k$?$S$K(B $B$rBG$C$F2<$5$$!#(B - ->> $B%+!<%=%k$r$3$3$+$i#29T2<$N6u9T$K0\F0$5$;$F2<$5$$!#(B - M-x repl schangedAltered $B$H%?%$%W$7$^$7$g$&!#(B - - $B$3$N9T$,$I$&JQ$o$k$+(B(changed)$B8+$^$7$g$&!#$"$J$?$O%+!<%=%k0J9_A4It$N(B - c-h-a-n-g-e-d $B$H$$$&8l$r(B "altered" $B$KJQ$($?$N$G$9!#(B - - -$B!v<+F0%;!<%V(B -============ - -$B%U%!%$%k$KJQ99$r2C$($F$^$@%;!<%V$7$F$$$J$$>l9g!"$=$l$i$NJQ99$O7W;;5!$,(B -$B%/%i%C%7%e$9$k$H<:$o$l$F$7$^$&2DG=@-$,$"$j$^$9!#$=$&$$$&;vBV$rHr$1$k$?(B -$B$a!"JT=8Cf$N3F%U%!%$%k$K$D$$$F<+F0%;!<%V%U%!%$%k$,Dj4|E*$K=q$+$l$^$9!#(B -$B<+F0%;!<%V%U%!%$%k$OF,$H$*?,$K(B # $B$,IU$$$F$$$^$9!#Nc$($P(B "hello.c" $B$H$$(B -$B$&%U%!%$%k$N<+F0%;!<%V%U%!%$%k$O(B "#hello.c#" $B$G$9!#DL>o$NJ}K!$G%U%!%$(B -$B%k$r%;!<%V$7$?$H$-$K!"$=$&$$$&<+F0%;!<%V%U%!%$%k$O>C$5$l$^$9!#(B - -$B7W;;5!$,%/%i%C%7%e$7$?>l9g!"<+F0%;!<%V$5$l$?JT=8$r2sI|$5$;$k$3$H$,$G$-(B -$B$^$9!#IaDL$K%U%!%$%k!JJT=8$7$F$$$?$b$N$G!"<+F0%;!<%V%U%!%$%k$8$c$"$j$^(B -$B$;$s!K$r3+$-!"$=$l$+$i(B M-x recover file $B$H%?%$%W$9$k$N$G$9!#3N(B -$BG'$r5a$a$F$-$^$9$N$G!"(Byes $B$H%?%$%W$7<+F0%;!<%V$5$l$?%G!<%?$r2s(B -$BI|$7$^$9!#(B - - -$B!v%(%3!<%(%j%"(B -============== - -$B$b$7$f$C$/$j$H%3%^%s%I$rBG$C$?$J$i$P!"2hLL$N2<$N%(%3!<%(%j%"$H8F$P$l(B -$B$k>l=j$KBG$C$?$b$N$,I=<($5$l$^$9!#%(%3!<%(%j%"$O2hLL$N:G2<9T$G$9!#(B - - -$B!v%b!<%I%i%$%s(B -============== - -$B%(%3!<%(%j%"$N$9$0>e$N9T$O!"%b!<%I%i%$%s$H8F$S$^$9!#%b!<%I%i%$%s$O$3$s(B -$B$JIw$K8+$($k$G$7$g$&!#(B - --J:** TUTORIAL.ja (Fundamental)--L670--58%---------------- - -$B$3$N9T$O(B Emacs $B$N>uBV5Z$SJT=8Cf$NJ8>O$K$D$$$FM-1W$J>pJs$rM?$($F$/$l$^(B -$B$9!#(B - -$B%U%!%$%kL>$K$D$$$F$O$b$&J,$C$F$$$^$9$M!#$=$l$O$"$J$?$,3+$$$?%U%!%$%k$G(B -$B$9!#(B-NN%-- $B$OJ8>OCf$N8=:_0LCV$r<($7$F$$$^$9!#J8>O$N(B NN% $B$,2hLL:G>eCJ$h(B -$B$jA0$K$"$k$H$$$&$3$H$G$9!#$b$7J8>O$N:G=i$N9T$,2hLL$K$"$k;~$K$O(B --00%-- -$B$NBe$j$K(B --Top-- $B$HI=<($7$^$9!#$b$7J8>O$N:G8e$N9T$,2hLL$K$"$k;~$K$O(B ---Bot-- $B$HI=<($7$^$9!#$b$72hLL$KA4It<}$^$C$F$7$^$&$h$&$JC;$$J8>O$r8+$F(B -$B$$$k$H$-$K$O(B --All-- $B$HI=<($7$^$9!#(B - -L $B$H$=$l$KB3$/?t;z$O8=:_$N9THV9f$r<($7$F$$$^$9!#(B - -$B@hF,6a$/$N@10u$O!"$"$J$?$,J8>O$rJQ99$7$?$3$H$r<($7$F$$$^$9!#%U%!%$%k$r(B -$B3+$$$?D>8e$d!"%;!<%V$7$?D>8e$O!"$=$NItJ,$K$O@10u$NBe$o$j$K%@%C%7%e(B `-' -$B$,I=<($5$l$^$9!#(B - -$B3g8L$K0O$^$l$?ItJ,$O$I$s$JJT=8%b!<%I$K$$$k$+$r<($7$^$9!#%G%U%)%k%H$O(B -"Fundamental" $B$H$$$&%b!<%I!"$3$l$,8=:_$N%b!<%I$G$9!#$3$l$O!V%a%8%c!<%b!<(B -$B%I!J(Bmajor mode$B!K!W$N0lNc$G$9!#(B - -Emacs $B$K$OB?$/$NO$rJT=8Cf$+$r0UL#$9$k$b(B -$B$N$b$"$j$^$9!#$$$D$G$bI,$:$$$:$l$+$N%a%8%c!<%b!<%I$N>uBV$K$J$C$F$$$^$9!#(B -$B$I$N%a%8%c!<%b!<%I$K$$$k$N$+$O!"%b!<%I%i%$%s$N8=:_$O(B "Fundamental" $B$H(B -$BI=<($7$F$$$kItJ,$r8+$l$PJ,$j$^$9!#(B - -$B3F%a%8%c!<%b!<%I$O4v$D$+$N%3%^%s%I$K0[$J$k?6$kIq$$$r$5$;$^$9!#Nc$($P!"(B -$B%W%m%0%i%`%j%9%HCf$K%3%a%s%H$rF~$l$k$?$a$N%3%^%s%I$,$"$j$^$9!#%3%a%s%H(B -$B$N7A<0!J%7%s%?%C%/%9!K$O!"%W%m%0%i%`8@8l$K$h$C$F0[$J$j!"%a%8%c!<%b!<%I(B -$B$O!"$=$l$KBP1~$9$k8@8l$K9g$C$?7A<0$G%3%a%s%H$rA^F~$7$^$9!#3F%a%8%c!<%b!<(B -$B%I$O3HD%%3%^%s%I$NL>A0$K$J$C$F$$$^$9!#$D$^$j$=$N3HD%%3%^%s%I$r;H$C$F%a(B -$B%8%c!<%b!<%I$r@Z$j49$($k$N$G$9!#Nc$($P!"(BM-x fundamental-mode $B$H$$$&$N(B -$B$O(B Fundamental $B%b!<%I$K@Z$j49$($k$?$a$N%3%^%s%I$G$9!#(B - -$B$b$7!"DL>o$N1Q8l$dF|K\8l$NJ8>O!J$3$N%U%!%$%k$N$h$&$J!K$rJT=8$9$k$N$J$i(B -$B$P!"(BText mode $B$r;H$$$^$7$g$&!#(B ->> M-x text-mode $B$H%?%$%W$7$F$_$F2<$5$$!#(B - -$B?4G[$7$J$$$G!#$3$l$^$G3X$s$@%3%^%s%I$O$?$$$7$FJQ$o$j$^$;$s$+$i!#$@$1$I!"(B -M-f $B$d(B M-b $B$,%"%]%9%H%m%U%#(B "'" $B$rC18l$N0lIt$@$H2r/$7$@$1$3$H$J$k$N$G$9!#(B - -$B8=:_$N%a%8%c!<%b!<%I$K$D$$$F$N@bL@J8$r8+$k$K$O(B C-h m $B$H%?%$%W$7$^$9!#(B - ->> C-u C-v $B$r0lFsEY$d$C$F$3$N9T$r2hLL$N>e$NJ}$K;}$C$F$$$-$^$7$g$&!#(B ->> C-h m $B$H%?%$%W$7!"(BText mode $B$H(B Fundamental mode $B$N0c$$$r$_$^$7$g$&!#(B ->> C-x 1 $B$G(B Text mode $B$N@bL@J8$r2hLL$+$i>C$7$^$7$g$&!#(B - -$B%a%8%c!<%b!<%I$,!V%a%8%c!$N%^%$%J!<(B -$B%b!<%I$K1F6A$rM?$($:$K!"$=$l$@$1$r%*%s%*%U$G$-$^$9!#$D$^$j!"%^%$%J!<%b!<(B -$B%I$rA4$/;H$o$J$+$C$?$j!"0l8D$@$1;H$C$?$j!"$$$/$D$+$rF1;~$K;H$C$?$j$G$-(B -$B$k$N$G$9!#(B - -$BDL>o$NJ8>O$rJT=8$7$F$$$k;~$K$H$F$bJXMx$J%^%$%J!<%b!<%I$N0l$D$K%*!<%H%U%#(B -$B%k!J(BAuto Fill$B!K%b!<%I$H$$$&$N$,$"$j$^$9!#$3$N%b!<%I$,%*%s$N;~$KJ8>O$r(B -$BF~NO$7$F$$$C$F9T$rD9$/$7$9$.$?>l9g!"<+F0E*$KC18l$HC18l$N4V$G9T$,J,3d$5(B -$B$l$^$9!JF|K\8l$N>l9g$O$I$NJ8;z$N4V$G$b!#6XB'=hM}$b$J$5$l$^$9!K!#(B - -Auto Fill $B%b!<%I$O(B M-x auto-fill-mode $B$H$d$l$P%*%s$K$G$-$^$9!#(B -$B$=$l$,%*%s$N>uBV$G(B M-x auto-fill-mode $B$H$d$l$,%*%U$K$G$-$^$9!#(B -$B$3$N%3%^%s%I$O!"%b!<%I$,%*%U$J$i%*%s$K!"%*%s$J$i%*%U$K$9$k$N$G$9!#$3$&(B -$B$$$&$N$r!V%b!<%I$r%H%0%k$9$k!W$H8@$$$^$9!#(B - ->> M-x auto-fill-mode $B$H%?%$%W$7$F!"(B "asdf " $B$G;O$^$k9T$rF~NO(B - $B$7$F2<$5$$!#9T$,J,3d$5$l$k$^$G2?EY$b(B "asdf " $B$H%?%$%W$7$^$7$g$&!#%9(B - $B%Z!<%9$rK:$l$:$K!#(BAuto Fill $B$O%9%Z!<%9$,F~NO$5$l$?;~$N$_F/$-$^$9!#(B - -$B1&%^!<%8%s$ODL>o(B 70 $BJ8;z!J%+%i%`!K$G$9$,!"(BC-x f $B%3%^%s%I$G$3$l$rJQ99$9(B -$B$k$3$H$,$G$-$^$9!#;XDj$NJ8;z?t$r?tCM0z?t$H$7$FM?$($^$9!#(B - ->> $B?tCM0z?t(B 20 $B$G(B C-x f $B$r$d$j$^$7$g$&!#(B (C-u 2 0 C-x f)$B!#(B - $B$=$l$+$iE,Ev$JJ8>O!J1Q8l!K$rF~NO$7!"(B20 $BJ8;z$G9T$,J,3d$5$l$k$N$r8+$F(B - $B$_$^$7$g$&!#$=$l$+$i(B C-x f $B%3%^%s%I$G$^$?%^!<%8%s$r(B 70 $BJ8;z$KLa$7$F(B - $B2<$5$$!#(B - -$B%Q%i%0%i%U$NESCf$rJQ99$7$F$b(B Auto Fill $B%b!<%I$O$=$l$r<+F0E*$K%U%#%k$7(B -$BD>$7$O$7$^$;$s!#(B -$B%Q%i%0%i%U$r%U%#%k$7D>$9$K$O%+!<%=%k$r$=$N%Q%i%0%i%U$NCf$KCV$$$F$+$i(B -M-q $B$r%?%$%W$7$^$9!#(B - ->> $B%+!<%=%k$r$3$N9TD>A0$N%Q%i%0%i%U$K0\F0$5$;(B M-q $B$H%?%$%W$7$F2<$5$$!#(B - - -$B!v8!:w(B -====== - -$BJ8>OCf$NFCDj$NJ8;zNs$r!"A08~$-$K$b8e8~$-$K$bC5$9;v$,$G$-$^$9!#J8;zNs$r(B -$BC5$9$H$$$&$N$O%+!<%=%k0\F0%3%^%s%I$G$9!#$D$^$j!"l=j$^$G%+!<%=%k$r0\F0$5$;$k$N$G$9!#(B - -Emacs $B$N8!:w%3%^%s%I$OB>$NBg35$N%(%G%#%?$N8!:w%3%^%s%I$H$O0[$j!V%$%s%/(B -$B%j%a%s%?%k!W$G$9!#8!:w$9$kJ8;zNs$r%?%$%W$7$F$$$k$=$P$+$i8!:w$,5/$k$N$G(B -$B$9!#(B - -$B8!:w$r;O$a$k$?$a$N%3%^%s%I$O!"A08~$-$K8!:w$9$k$J$i$P(B C-s$B!"8e8~$-$J$i(B -C-r $B$G$9!#$^$@$G$9!*!*:#$O$^$@;n$5$J$$$G2<$5$$!#(B - -C-s $B$rBG$D$H(B "I-search" $B$H$$$&J8;zNs$,%(%3!<%(%j%"$KI=<($5$l$k$N$,8+$((B -$B$k$G$7$g$&!#$3$l$O(B Emacs $B$,%$%s%/%j%a%s%?%k8!:w$H$$$&>uBV$K$$$F!"$"$J(B -$B$?$,C5$7$?$$J8;zNs$rF~NO$9$k$N$rBT$C$F$$$k$N$G$9!#(B $B$rBG$F$P8!(B -$B:w$r=*$o$l$^$9!#(B - ->> $B$5$F(B C-s $B$H%?%$%W$7$F8!:w$r;O$a$^$7$g$&!#$f$C$/$j$H#1J8;z$:$D(B - "cursor" $B$H$$$&C18l$rF~NO$7$^$9!##1J8;zBG$DKh$K%+!<%=%k$,$I$&F0$/$+(B - $B8+$^$7$g$&!#(B - $B$5$"!"(B"cursor" $B$,#12s8+$D$+$j$^$7$?!#(B ->> $B$b$&0lEY(B C-s $B$HBG$C$F> $B:#EY$O(B $B$r#42sBG$C$F!"%+!<%=%k$NF0$-$r8+$F2<$5$$!#(B ->> $B$HBG$C$F8!:w$r=*N;$7$^$7$g$&!#(B - -$B2?$,5/$C$?$+J,$j$^$9$+!)%$%s%/%j%a%s%?%k8!:w$G$O!"$"$J$?$,$=$l$^$G$KBG$C(B -$B$?J8;zNs$,8=$l$k$H$3$m$K9T$3$&$H$7$^$9!# $B$rBG$D$H8!:wJ8;zNsCf$N#1HV:G8e(B -$B$NJ8;z$,>C$($^$9!#$=$7$F!"%+!<%=%k$O!"A02s$N0LCV$KLa$j$^$9!#$?$H$($P!"(B -"c" $B$H%?%$%W$7$F:G=i$N(B "c" $B$rC5$7$^$9!#$=$l$+$i(B "u" $B$rBG$D$H:G=i$N(B"cu" -$B$N>l=j$K%+!<%=%k$,F0$-$^$9!#$=$3$G(B $B$rBG$D$H(B "u" $B$r8!:wJ8;zNs(B -$B$+$i>C$7$F!"%+!<%9%k$O:G=i$K(B "c" $B$,8=$l$?>l=j$KLa$j$^$9!#(B - -C-s $B$O!"8=:_$N%+!<%=%k0LCV0J9_$K=P$F$/$k8!:wJ8;zNs$rC5$7;O$a$^$9!#$b$7!"(B -$BJ8>O$NA0$NJ}$rC5$7$?$+$C$?$i!"(BC-r $B$r%?%$%W$7$^$9!#$3$l$^$G$N(B C-s $B$K$D(B -$B$$$F$N@bL@$O$9$Y$F(B C-r $B$K$bEv$F$O$^$j$^$9!#8!:w$NJ}8~$,H?BP$J$@$1$G$9!#(B - - -$B!vJ#?t$N%&%#%s%I%&(B -================== - -Emacs $B$NAGE($J5!G=$N0l$D$H$7$F!"0l$D$N2hLL$KF1;~$K$$$/$D$b$N%&%#%s%I%&(B -$B$rI=<($9$k$3$H$,$G$-$^$9!#(B - ->> $B%+!<%=%k$r$3$N9T$K;}$C$F$-$F(B C-u 0 C-l $B$H%?%$%W$7$F2<$5$$!J:G8e$N$O(B - CONTROL-L $B$G$9$h!"(BCONTROL-1 $B$8$c$"$j$^$;$s!K!#(B - ->> $B$=$l$+$i(B C-x 2 $B$G2hLL$r#2$D$N%&%#%s%I%&$KJ,3d$7$^$7$g$&!#$I$A$i$N%&%#(B - $B%s%I%&$b$3$N%,%$%I$rI=<($7$F$$$^$9!#%+!<%=%k$O>e$N%&%#%s%I%&Fb$G$9!#(B - ->> C-M-v $B$H%?%$%W$72<$N%&%#%s%I%&$r%9%/%m!<%k$5$;$^$7$g$&!#(B - $B!J%a%?%-!<$,$J$$>l9g$O(B ESC C-v $B$H%?%$%W$7$^$9!#!K(B - ->> C-x o $B!J(B"o" $B$O(B "other$B!JB>J}!K(B" $B$r0UL#$7$^$9!K$r%?%$%W$72<$N%&%#%s%I(B - $B%&$K%+!<%=%k$r0\$7$F2<$5$$!#(B ->> $B2<$N%&%#%s%I%&$G(B C-v $B$d(B M-v $B$r;H$C$F%9%/%m!<%k$5$;$^$7$g$&!#(B - $B$3$3$K=q$$$F$"$k;X<($O>e$N%&%#%s%I%&$GFI$_?J$s$G$/$@$5$$!#(B - ->> $B$b$&0lEY(B C-x o $B$H%?%$%W$7!"%+!<%=%k$r>e$N%&%#%s%I%&$KLa$7$^$9!#(B - $B%+!<%=%k$O>e$N%&%#%s%I%&$N85$"$C$?0LCV$KLa$j$^$9!#(B - -C-x o $B$r;H$C$F%&%#%s%I%&4V$r9T$C$?$jMh$?$j$G$-$^$9!#3F%&%#%s%I%&$O$=$l(B -$B<+?H$N%+!<%=%k0LCV$rJ];}$7$F$$$^$9$,!"0lEY$K$O0l$D$N%&%#%s%I%&$@$1$,%+!<(B -$B%=%k$rI=<($7$^$9!#DL>o$NJT=8%3%^%s%I$O3'%+!<%=%k$,$"$k%&%#%s%I%&$KBP$7(B -$B$FF/$-$^$9!#$=$N%&%#%s%I%&$r(B "selected window ($BA*BrCf$N%&%#%s%I%&(B)" $B$H(B -$B8F$S$^$9!#(B - -C-M-v $B%3%^%s%I$O!"0l$D$N%&%#%s%I%&$GJ8>O$rJT=8Cf$KB>$N%&%#%s%I%&$r;2>H(B -$B$7$F$$$k;~$KLrN)$A$^$9!#JT=8Cf$N>l=j$K%+!<%=%k$rJ]$C$?$^$^!"(BC-M-v $B$GB>(B -$B$N%&%#%s%I%&$rFI$_?J$a$F9T$/$3$H$,$G$-$^$9!#(B - -C-M-v $B$O%3%s%H%m!<%k%a%?J8;z$N0lNc$G$9!#%a%?%-!<$,$"$k>l9g$O!"%3%s%H%m!<(B -$B%k%-!<$H%a%?%-!<$r2!$7$J$,$i(B v $B$r%?%$%W$7$^$9!#%3%s%H%m!<%k%-!<$H%a%?(B -$B%-!<$O$I$A$i$r@h$K2!$7$F$b9=$$$^$;$s!#$I$A$i$b$=$N8e$K%?%$%W$5$l$kJ8;z(B -$B$KBP$9$k=$>~%-!<(B (modifier key) $B$H$7$FF/$/$+$i$G$9!#(B - -$B%a%?%-!<$,L5$$>l9g!"(BESC $B%-!<$r;H$$$^$9$,!"$3$N>l9g$O=gHV$,Bg;v$G$9!#$^(B -$B$:(BESC $B$r2!$7$F$+$iN%$7$F(B C-v $B$rBG$A$^$9!#(BC-ESC v $B$G$OBLL\$G$9!#$3$l$O(B -ESC $B$O$=$l<+BN$,0l$D$NJ8;z$G=$>~%-!<$G$O$J$$$+$i$G$9!#(B - ->> $B>e$N%&%#%s%I%&$G(B C-x 1 $B$H%?%$%W$72<$N%&%#%s%I%&$r>C$7$^$7$g$&(B - -$B!J$b$72<$N%&%#%s%I%&$G(B C-x 1 $B$H%?%$%W$9$k$H>e$N%&%#%s%I%&$,>C$($^$9!#(B -$B$3$N%3%^%s%I$O!V8=:_<+J,$,$$$k%&%#%s%I%&$@$1$K$7$J$5$$!W$H$$$&$b$N$@$H(B -$B;W$C$F2<$5$$!#!K(B - -$BN>J}$N%&%#%s%I%&$KF1$8%P%C%U%!$rI=<($9$kI,MW$O$"$j$^$;$s!#0lJ}$N%&%#%s(B -$B%I%&$G(B C-x C-f $B$G%U%!%$%k$r3+$$$F$bB>J}$N%&%#%s%I%&$OJQ2=$7$^$;$s!#3F(B -$B%&%#%s%I%&$K$*$$$FJL!9$N%U%!%$%k$r3+$/$3$H$,$G$-$k$N$G$9!#(B - ->> C-x 4 C-f $B$H%?%$%W$7B3$1$F2?$+<+J,$N%U%!%$%kL>$rF~NO$7$F2<$5$$!#(B - $B$GF~NO$r=*$o$i$;$F2<$5$$!#:#;XDj$7$?%U%!%$%k$,2<$N%&%#%s%I(B - $B%&$K8=$l$^$9!#%+!<%=%k$b$=$C$A$K0\$j$^$9!#(B - ->> C-x o $B$H%?%$%W$7>e$N%&%#%s%I%&$KLa$C$F2<$5$$!#$=$l$+$i(B C-x 1 $B$G2<$N(B - $B%&%#%s%I%&$r>C$7$^$7$g$&!#(B - - -$B!v:F5"JT=8%l%Y%k(B (RECURSIVE EDITING LEVELS) - -$B;~!9!JITK\0U$K!K:F5"JT=8%l%Y%k$H8F$P$l$k>uBV$KF~$k$3$H$,$"$j$^$9!#%b!<(B -$B%I%i%$%s$N%a%8%c!<%b!<%IL>$r0O$`4]3g8L(B "()" $B$,$5$i$Knl3g8L(B "[]" $B$G0O$^(B -$B$l$^$9!#Nc$($P!"(B(Fundamental) $B$HI=<($5$l$kBe$o$j$K(B [(Fundamental)] $B$N(B -$B$h$&$K$J$j$^$9!#(B - -$B:F5"JT=8%l%Y%k$+$iH4$1=P$9$K$O(B ESC ESC ESC $B$H%?%$%W$7$^$9!#$3$l$OHFMQ(B -$B!VH4$1=P$7!W%3%^%s%I$G$9!#M>J,$J%&%#%s%I%&$r>C$7$?$j!"%_%K%P%C%U%!$+$i(B -$BH4$1$?$j$9$k$N$K$b;H$($^$9!#(B - - ->> M-x $B$H%?%$%W$7%_%K%P%C%U%!$KF~$C$F2<$5$$!#$=$l$+$i(B ESC ESC ESC $B$H%?(B - $B%$%W$7H4$1=P$7$F$_$^$7$g$&!#(B - -C-g $B$G$O:F5"JT=8%l%Y%k$+$i$OH4$1=P$;$^$;$s!#$3$l$O!"(BC-g $B$,:F5"JT=8%l%Y(B -$B%kFb$G$N%3%^%s%I$d0z?t$rC$9$N$K;H$o$l$F$$$k$+$i$G$9!#(B - - -$B!v$b$C$H$b$C$H%X%k%W(B -==================== - -$B$3$NF~Lg%,%$%I$G$O(B Emacs $B$r;H$$;O$a$k$N$K==J,$J>pJs$rDs6!$7$?$D$b$j$G(B -$B$9!#(BEmacs $B$K$O$"$^$j$K$bB?$/$N5!G=$,$"$k$N$G!"$3$3$G$9$Y$F$r@bL@$9$k$N(B -$B$OL5M}$G$9!#Lr$KN)$D5!G=$r$b$C$HB?$/3X$S$?$$$H;W$&?M$N$?$a$K$O!"(BEmacs -$B$N%3%^%s%I$N@bL@$rFI$`$?$a$N%3%^%s%I$,$"$j$^$9!#$3$l$i$N!V%X%k%W!W%3%^(B -$B%s%I$O3'(B Control-h $BJ8;z!J%X%k%WJ8;z$H8F$S$^$9!K$G;O$^$j$^$9!#(B - -$B%X%k%W5!G=$r;H$&$K$O!"(BC-h $B$KB3$$$F$I$s$Jl9g$O(B C-h ? $B$H%?%$%W$7$^$7$g$&!#(B -$B$I$s$JC$9$3$H$,$G$-$^$9!#(B - -$B!J%5%$%H$K$h$C$F$O(B C-h $BJ8;z$N0UL#$rJQ99$7$F$$$k$+$b$7$l$^$;$s!#%f!<%6(B -$BA40w$KBP$9$kAm3gE*$Jl9g$O%7%9%F%`4IM} $B$r;n$7$F$_$F2<$5$$!#!K(B - -$B:G$b4pK\E*$J%X%k%W5!G=$O(B C-h c $B$G$9!#(BC-h$B!"$=$l$+$i(B c$B!"$=$7$F%3%^%s%I$N(B -$B%-!<> C-h c C-p $B$H%?%$%W$7$F$_$^$7$g$&!#(B - $B0J2<$N$h$&$J%a%C%;!<%8$,I=<($5$l$k$O$:$G$9!#(B - - C-p runs the command previous-line - -$B$3$l$O!V%U%!%s%/%7%g%s$NL>A0!W$rI=<($7$?$N$G$9!#%U%!%s%/%7%g%sL>$O$O$=$N%3%^%s%I$,2?$r$9$k$b$N$J$N$+$,J,$k$h$&$KIU$1$i$l$^$9$N(B -$B$G!"4JC1$J@bL@$H$7$F$b$=$N$^$^Lr$KN)$A$^$9!#0lEY3X$s$@%3%^%s%I$K$D$$$F(B -$B;W$$=P$9$K$O==J,$G$9!#(B - -C-x C-s $B$d!J%a%?%-!<$d%"%k%H%-!<$,$J$$>l9g$N!K(B v $B$J$I$NJ#?tJ8;z(B -$B$N%3%^%s%I$r(B C-h c $B$N8e$K%?%$%W$9$k$3$H$b$G$-$^$9!#(B - -$B%3%^%s%I$K$D$$$F$b$C$HB?$/$N>pJs$,M_$7$1$l$P(B C-h c $B$NBe$o$j$K(B C-h k $B$r(B -$B;H$$$^$9!#(B - ->> C-h k C-p $B$H%?%$%W$7$F$_$^$7$g$&!#(B - -Emacs$B$N%&%#%s%I%&$K!"%3%^%s%I$NL>A0$HF1;~$K$=$N5!G=$N@bL@$,I=<($5$l$^(B -$B$9!#FI$_=*$($?$i!"(BC-x 1 $B$H%?%$%W$7$F%X%k%W$NJ8>O$r>C$7$^$7$g$&!#I,$:$7(B -$B$b$9$0$K$=$&$9$kI,MW$O$"$j$^$;$s!#%X%k%W$NJ8>O$r8+$J$,$iJT=8$rB3$1!"$=(B -$B$l$+$i(B C-x 1 $B$H%?%$%W$7$F$b9=$$$^$;$s!#(B - -C-h $B$K$OB>$K$bLr$KN)$D%*%W%7%g%s$,$"$j$^$9!#(B - - C-h f $B%U%!%s%/%7%g%s$N@bL@!#%U%!%s%/%7%g%sL>$rF~NO$7$^$9!#(B - ->> C-h f previous-line $B$H%?%$%W$7$F$_$^$7$g$&!#(B - C-p $B%3%^%s%I$rpJs$rI=<($7(B - $B$^$9!#(B - -$B$3$l$K;w$?%3%^%s%I(B C-h v $B$O$=$NCM$r%;%C%H$9$k$H$3$K$h$C$F(B Emacs $B$N?6Iq(B -$B$$$r%+%9%?%^%$%:$G$-$kJQ?t$N@bL@$rI=<($7$^$9!#JQ?tL>$NF~NO$r%W%m%s%W%H(B -$B$K$7$?$,$C$FF~NO$7$^$9!#(B - - C-h a $B%3%^%s%I%"%W%m%]%9(B (command apropos)$B!#%-!<%o!<%I$rF~NO(B - $B$9$k$H!"$=$N%-!<%o!<%I$rL>A0$K4^$`A4$F$N%3%^%s%I$r%j%9(B - $B%H%"%C%W$7$^$9!#$3$l$i$N%3%^%s%I$OA4$F(B M-x $B$G> C-h a file $B$H%?%$%W$7$F$_$F2<$5$$!#(B - -"file"$B$H$$$&J8;zNs$rL>A0$N0lIt$K;}$DA4$F$N(B M-x $B%3%^%s%I!J3HD%%3%^%s%I!K(B -$B$rJL$N%&%#%s%I%&$KI=<($7$^$9!#(B C-x C-f $B$N$h$&$JJ8;z%3%^%s%I$bBP1~$9$k(B -$BL>A0!J(Bfind-file $B$N$h$&$K!K$KJB$s$GI=<($5$l$^$9!#(B - ->> C-M-v $B$H%?%$%W$7%X%k%W$N%&%#%s%I%&$r%9%/%m!<%k$5$;$^$7$g$&!#2?EY$+(B - $B$d$C$F2<$5$$!#(B - ->> C-x 1 $B$G%X%k%W%&%#%s%I%&$r>C$7$F2<$5$$!#(B - - C-h i $B%*%s%i%$%s%^%K%e%"%k!J(BInfo$B!K$rFI$`!#$3$N%3%^%s%I$r;H$&(B - $B$H!"$"$J$?$O(B `*info*' $B$H$$$&L>$NFC - $B$H%?%$%W$9$l$P(B Emacs $B$N%^%K%e%"%k$,FI$a$^$9!#$b$7(B Info - $B$r;H$&$N$,=i$a$F$J$i!"(B? $B$H%?%$%W$7$^$7$g$&!#(BInfo $B%b!<(B - $B%I$N%,%$%I%D%"!<$,;O$^$j$^$9!#$3$NF~Lg%,%$%I$rFI$_=*$((B - $B$?8e$O!"(BEmacs $B$N(B Info $B%^%K%e%"%k$r$"$J$?$N65K\$K$7$F2<(B - $B$5$$!#(B - - -$B!v$b$C$HB?$/$N5!G=(B -================== - -$BK\$N%^%K%e%"%k$G$"$m$&$H%*%s%i%$%s%^%K%e%"%k!J(BHelp $B%a%K%e!<$r;H$&$+(B -F10 h r$B!K$G$"$m$&$H!"$=$l$rFI$a$P(B Emacs $B$K$D$$$F$b$C$HB?$/$r3X$Y$^$9!#(B -$B$"$J$?$,FC$K$*5$$K>$$9$G$"$m$&5!G=$K!"%?%$%W?t$r8:$i$7$F$/$l$kJd40(B -$B!J(Bcompletion$B!K$H!"%U%!%$%k$N07$$$rC1=c2=$7$F$/$l$k%G%#%l%/%H%jJT=8(B -(dired) $B$N#2$D$N$,$"$j$^$9!#(B - -$BJd40!J(Bcompletion$B!K$O!"ITI,MQ$J%?%$%W$r>J$/$?$a$N$b$N$G$9!#$?$H$($P!"$b(B -$B$7(B *Message* $B%P%C%U%!$K@ZBX$($?$1$l$P!"(BC-x b *M $B$H%?%$%W$9$k$@$1(B -$B$G!"(BEmacs $B$O;D$j$N%P%C%U%!L>$r!"4{$K%?%$%W$7$?ItJ,$+$i7hDj$G$-$k8B$j!"(B -$BKd$a$F$/$l$^$9!#Jd40$O(B Info $B$N(B Emacs $B%^%K%e%"%k$N(B "Completion" $B$H$$$&(B -$B%N!<%I$G!"@bL@$5$l$F$$$^$9!#(B - -$B%G%#%l%/%H%jJT=8!J(Bdired$B!K$O!"%G%#%l%/%H%j$d$=$N%5%V%G%#%l%/%H%jCf$N%U%!(B -$B%$%k$r%j%9%H%"%C%W$7!"%j%9%HCf$r0\F0$7$J$,$i!"%U%!%$%k$r3+$/!"L>A0$rJQ(B -$B99$9$k!":o=|$9$k!"$=$NB>$NA`:n$r9T$&!"$J$I$,$G$-$^$9!#%G%#%l%/%H%jJT=8(B -$B$O!"(BInfo $B$N(B Emacs $B%^%K%e%"%k$N(B "Dired" $B$H$$$&%N!<%I$G!"@bL@$5$l$F$$$^(B -$B$9!#(B - -$B%^%K%e%"%k$O!"(BEmacs $B$N$=$NB>$NB?$/$N5!G=$K$D$$$F@bL@$7$F$$$^$9!#(B - - -$B!v$*$o$j$K(B -========== - -$BK:$l$J$$$G!*(BEmacs $B$r=*N;$9$k$K$O!"(BC-x C-c $B$G$9!#$^$?(B Emacs $B$KLa$C$FMh(B -$B$i$l$k$h$&$K0l;~E*$K%7%'%k$KLa$k$@$1$J$i(B C-z $B$G$9!#(B - -$B$3$NF~Lg%,%$%I$O!"$^$C$?$/$N=i?4 $B$,(B -Nemacs/Mule $BMQ$KJQ99!"$5$i$K5HEDLP$$(B -$B$^$9!#(B - -This tutorial descends from a long line of Emacs tutorials -starting with the one written by Stuart Cracraft for the original Emacs. - -This version of the tutorial, like GNU Emacs, is copyrighted, and -comes with permission to distribute copies on certain conditions: - -Copyright (C) 1985, 1996, 1998, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 Free Software Foundation, Inc. - - Permission is granted to anyone to make or distribute verbatim copies - of this document as received, in any medium, provided that the - copyright notice and permission notice are preserved, - and that the distributor grants the recipient permission - for further redistribution as permitted by this notice. - - Permission is granted to distribute modified versions - of this document, or of portions of it, - under the above conditions, provided also that they - carry prominent notices stating who last altered them. - -The conditions for copying Emacs itself are more complex, but in the -same spirit. Please read the file COPYING and then do give copies of -GNU Emacs to your friends. Help stamp out software obstructionism -("ownership") by using, writing, and sharing free software! - -;;; Local Variables: -;;; coding: iso-2022-jp -;;; End: - -;;; arch-tag: 7136abc2-eb97-4f51-80a2-fa690ba4cfe8 diff --git a/etc/TUTORIAL.ko b/etc/TUTORIAL.ko deleted file mode 100644 index 9f3d66a48af..00000000000 --- a/etc/TUTORIAL.ko +++ /dev/null @@ -1,1009 +0,0 @@ -$(C@L8F=:(B(Emacs) $(CAvD'<-@T4O4Y(B. -$(C3!?!4B(B $(C:9;g(B $(CA60G@L(B -$(C@V=@4O4Y(B. $(CAv1](B $(C@P0m(B $(C@V4B(B $(C@L(B $(C1[@:(B $(C@L8F=:(B(Emacs) $(CAvD'<-@T4O4Y(B. - -$(C@L8F=:(B $(C8m7I5i@:(B $(C4k03(B $(CA&>n21b(B $(C:84Y4B(B $(C?l8.4B(B $(C4Y@=0z(B $(C00@:(B $(C>`=D(B $(CG%Gv@;(B $(C>21b7N(B $(CGU=C4Y(B: - - C-<$(C9.@Z(B> $(CA&>n $(C1[n META$(C $(C1[x@88i(B $(C3*?H $(C1[$(C@L6s0m(B - $(C>21b7N(B $(CGU4O4Y(B. - -$(C@/@G(B: C-x C-c$(C8&(B $(CD!8i(B $(C@L8F=:8&(B $(CA>7aGR(B $(C>"$(C4B(B $(C56@Z0!(B $(C8m7I@;(B $(C=GG`GX(B $(C:8557O(B -$(CGO0m@Z(B $(CGT@;(B $(CAv=CGU4O4Y(B. $(C?98&(B $(C5i>n(B: -<> ->> $(C4Y@=(B $(CH-8i@87N(B $(C?rAw@L1b(B $(C@'GX<-4B(B C-v ($(C4Y@=(B $(CH-8i(B $(C:81b(B)$(C8&(B $(CD(4O4Y(B. - ($(CGX(B $(C:8=J=C?@(B. $(CA&>nz@;(B $(C6'864Y(B $(C@L780T(B $(CGX>_(B $(CGU4O4Y(B. - -$(CGQ(B $(CH-8i?!<-(B $(C4Y8%(B $(CH-8i@87N(B $(C?rAw@O(B $(C6'(B $(C5N(B $(CAY@L(B $(C0cD#4Y4B(B $(C0M@;(B -$(C@/@GGO=J=C?@(B; $(C@L4B(B $(CGQ(B $(C9.@e@;(B $(C0h_(B $(CGO4B(B $(C0M@:(B $(C9.@e@G(B $(CGQ(B $(C0w?!<-(B $(C4Y8%(B $(C0w@87N(B $(C?rAw@L4B(B -$(C0M@T4O4Y(B. C-v$(C7N(B $(CGQ(B $(CH-8i@;(B $(C>UBJ@87N(B $(C?rAw@L4B(B $(C0M@:(B $(C@L9L(B $(C>K0m(B $(C@V=@4O4Y(B. -$(C5^BJ@87N(B $(CGQ(B $(CH-8i@;(B $(C?rAw@L1b(B $(C@'GX<-4B(B M-v$(C8&(B (META$(Cx@;(B $(C0f?l(B v$(C8&(B $(CD(4O4Y(B). - ->> $(C8n(B $(C9x(B M-v$(C?M(B C-v$(C8&(B $(C9x0%>F(B $(CCD(B $(C:8=J=C?@(B. - - -* $(C?d>`(B ------- - -$(C4Y@=@:(B $(C@|CUBJ@87N(B $(C?rAw@N4Y(B - ESC v $(CGQ(B $(C@|C<(B $(CH-8i@;(B $(C5^BJ@87N(B $(C?rAw@N4Y(B - C-l $(CH-8i@;(B $(CAv?l0m(B $(C8p5g(B $(C1[?y@;(B $(C4Y=C(B $(CH-8i(B $(CG%=CGO8i<-(B - $(C1t:}@L0!(B $(C@V4B(B $(C1[?y@;(B $(CH-8i@G(B $(CA_>S?!(B $(C?@0T(B $(CGQ4Y(B. - ($(CA&>nF4O6s(B $(CA&>n> $(C1t9Z@L8&(B $(CC#>F<-(B $(C1W(B $(C0w@G(B $(C1[?y@;(B $(C1b>oGO=J=C?@(B. - $(C1W8.0m4B(B C-l$(C@;(B $(CD!=J=C?@(B. - $(C1t9Z@L8&(B $(C4Y=C(B $(CC#>F<-(B $(C00@:(B $(C1[?y@L(B $(C1t9Z@L@G(B $(C1YC3?!(B $(C@V4B0!8&(B - $(CH.@NGO=J=C?@(B. - - -* $(C1b:;@{@N(B $(C1t9Z@L@G(B $(CA&>n(B ------------------------- - -$(CGQ(B $(CH-8i@;(B $(C?rAw@L4B(B $(C0M@:(B $(C@/?kGU4O4Y88(B $(CH-8i@G(B $(CGQ(B $(C1[?y3;?!<-(B $(C>n6;0T(B -$(CA$GXAx(B $(C@e?(B $(C1t9Z@L8&(B $(C?rAw@T4O4Y(B. -$(C?)1b?!(B $(C@L(B $(C3W0!Av(B $(C8m7I5i0z(B $(C1W(B $(C?rAw@L4B(B $(C9fGb@;(B $(C:8?)AV4B(B $(CG%0!(B $(C@V=@4O4Y(B. - - $(C5^(B $(CAY(B, C-p - : - : - $(C5^BJ@87N(B, C-b .... $(CGv@g@G(B $(C1t9Z@L(B $(C@'D!(B .... $(C>UBJ@87N(B, C-f - : - : - $(C>U(B $(CAY(B, C-n - ->> C-n$(C@L3*(B C-p$(C8&(B $(C=a<-(B $(C1t9Z@L8&(B $(C@'(B $(C55G%@G(B $(C0!?n5%(B $(CAY7N(B $(C?rAw@L=J=C?@(B. - $(C1W8.0m4B(B C-l$(C@;(B $(CCD<-(B $(C@L(B $(C55G%0!(B $(CH-8i@G(B $(CA_>S?!(B $(C@'D!GO4BAv8&(B - $(CH.@NGO=J=C?@(B. - -$(C@L(B $(C8m7I5i@:(B $(C1[@Z7N(B $(C1b>oGO4B(B $(C0M@L(B $(C=,?o(B $(C0M@T4O4Y(B: P$(C4B(B previous, N$(C@:(B -next, B$(C4B(B backward, F$(C4B(B forward. $(C@L5i@:(B $(C1b:;@{@N(B $(C1t9Z@L(B $(C@L5?(B -$(C8m7I@87N<-(B, $(CGW;s(B $(C;g?kGO0T(B $(C5I(B $(C0M@L9G7N(B $(CAv1](B $(C4g@e(B $(C8S8.(B $(C> C-n$(C@;(B $(C?)7/9x(B $(CCD<-(B $(C1t9Z@L8&(B $(C@L(B $(CAY7N(B $(C0!A.(B $(C?@=J=C?@(B. - ->> C-f$(C8&(B $(CCD<-(B $(CAY(B $(C>H?!<-(B $(C@L5?GX(B $(C:80m(B C-p$(C7N(B $(C5^(B $(CAY7N(B $(C0!=J=C?@(B. - $(C1t9Z@L0!(B $(CAY@G(B $(CA_0#?!(B $(C@V@;(B $(C6'(B C-p$(C0!(B $(C>n62(B $(C@[?k@;(B $(CGO4B0!(B $(C:8=J=C?@(B. - -$(C0"0"@G(B $(CAY@:(B $(C4Y@=?!(B $(C@L>nAv4B(B $(CAY0z(B $(C:P8.GO4B(B $(C;uAY(B $(C9.@Z7N(B $(C3!334O4Y(B. -$(CFD@O@G(B $(C86Av87(B $(CAY@:(B $(C3!?!(B $(C;uAY(B $(C9.@Z0!(B $(C@V>n>_(B $(CGU4O4Y(B ($(C1W7/3*(B $(C@L8F=:4B(B $(C@L8&(B -$(C?d18GOAv(B $(C>J=@4O4Y(B). - ->> $(CAY@L(B $(C=C@[GO4B(B $(C0w?!<-(B C-b$(C8&(B $(CCD(B $(C:8=J=C?@(B. $(C1t9Z@L0!(B $(C5^(B $(CAY@G(B $(C3!@87N(B - $(C?rAw?)>_(B $(CGU4O4Y(B. $(C1W(B $(C@L@/4B(B $(C1t9Z@L0!(B $(C;uAY(B $(C9.@Z8&(B $(C3Q>n<-(B $(C5^BJ@87N(B - $(C?rAw@L1b(B $(C6'9.@T4O4Y(B. - -C-f$(C55(B C-b$(CC373(B $(C;uAY(B $(C9.@Z8&(B $(C3Q>n<-(B $(C@L5?GR(B $(C> C-b$(C8&(B $(C8n(B $(C9x(B $(C4u(B $(CCD<-(B $(C1t9Z@L0!(B $(C>n5p(B $(C@V4B0!8&(B $(C:80m(B C-f$(C7N(B $(C4Y=C(B $(CAY@G(B - $(C3!1nAv(B $(C@L5?GO=J=C?@(B. - $(C1W(B $(C4Y@=?!(B C-f$(C7N(B $(C4Y@=(B $(CAY7N(B $(C@L5?GO=J=C?@(B. - -$(CH-8i@G(B $(C2@4k1b3*(B $(C9X9Y4Z@;(B $(CAv3*CD<-(B $(C@L5?GO8i(B $(C0!@e@Z8.8&(B $(C9~>n3-(B $(C1[?y@:(B -$(CH-8i(B $(C>H@87N(B $(C9P7A(B $(C5i>n(B $(C?I4O4Y(B. $(C@L0M@;(B "$(C5N7g8;1b(B(scrolling)"$(C6s0m(B -$(CGU4O4Y(B. $(C@L4B(B $(C@L8F=:0!(B $(C1t9Z@L8&(B $(CH-8i(B $(C9[@87N(B $(C3;:83;Av(B $(C>J0m(B $(C1[?y@G(B $(CA$GXAx(B -$(C@e> C-n$(C@87N(B $(C1t9Z@L8&(B $(CH-8i@G(B $(C9X9Y4Z(B $(C>F7!7N(B $(C?rAw?)<-(B, $(C>n62(B $(C@O@L(B - $(C9_;}GO4B0!8&(B $(C:8=J=C?@(B. - -$(CGQ(B $(C9.@Z>?(B $(C@L5?GO4B(B $(C0M@L(B $(C4@8.8i(B, $(CGQ(B $(C398;>?(B $(C?rAw@O(B $(C?(B $(C>UBJ@87N(B, M-b$(C4B(B $(CGQ(B $(C398;>?(B $(C5^BJ@87N(B $(C?rAw@T4O4Y(B. - ->> M-f$(C3*(B M-b$(C8&(B $(C8n(B $(C9x(B $(CCD(B $(C:8=J=C?@(B. - -$(C398;@G(B $(CA_0#?!<-4B(B $(C398;@G(B $(C3!@87N(B $(C?rAw@T4O4Y(B. $(C398;(B $(C;g@L@G(B $(C0x0#(B -$(C9.@Z?!<-4B(B M-f$(C0!(B $(C4Y@=(B $(C398;@G(B $(C3!@87N(B $(C?rAw@T4O4Y(B. M-b$(C4B(B $(C9]4k(B $(C9fGb@87N(B -$(C00@:(B $(C@[?k@;(B $(CGU4O4Y(B. - ->> $(CA_0#(B $(CA_0#?!(B C-f$(C?M(B C-b$(C8&(B $(CD!8i<-(B M-f$(C?M(B M-b$(C8&(B $(C8n(B $(C9x(B - $(C?,=@GO=J=C?@(B. $(C1W7/8i(B $(C398;@G(B $(C3;:N3*(B $(CA_0#?!<-(B M-f$(C?M(B M-b$(C0!(B $(C>n62(B - $(C@[?k@;(B $(CGO4B0!8&(B $(C:<(B $(Cp>n0!(B $(CA$@GGO4B(B $(C4\@'(B($(C398;(B, $(C9.@e(B, $(C4\6t(B)$(C@G(B $(C@[5??!(B $(C;g?k5G0m(B $(CA&>n(B -$(C9.@Z4B(B $(CFmA}GO4B(B $(C0M0z4B(B $(C0|0h>x4B(B $(C1b:;(B $(C4\@'(B($(C9.@Z(B, $(CAY(B $(C5n5n(B)$(C?!(B -$(C;g?k5K4O4Y(B. - -$(C4Y@=@:(B $(CAY0z(B $(C9.@e(B $(C;g@L?!(B $(C@{?k5G4B(B $(C@/;g<:@T4O4Y(B: C-a$(C?M(B C-e$(C4B(B $(CAY@G(B -$(C=C@[@L3*(B $(C3!@87N(B $(C?rAw@L0m(B, M-a$(C?M(B M-e$(C4B(B $(C9.@e@G(B $(C=C@[@L3*(B $(C3!@87N(B -$(C?rAw@T4O4Y(B. - ->> C-a$(C8&(B $(C5N<<9x(B $(CD#(B $(CHD(B C-e$(C8&(B $(C5N<<9x(B $(CCD(B $(C:8=J=C?@(B. - M-a$(C8&(B $(C5N<<9x(B $(CD#(B $(CHD(B M-e$(C8&(B $(C5N<<9x(B $(CCD(B $(C:8=J=C?@(B. - -C-a$(C4B(B $(C5N(B $(C9x(B $(C@L;s(B $(C9]:9GX55(B $(C>F9+71(B $(C@[?k@;(B $(CGOAv(B $(C>JAv88(B M-a$(C4B(B $(CGQ(B $(C9.@e@;(B -$(C4u(B $(C5Z7N(B $(C?rAw@L4B(B $(C0M?!(B $(C@/@GGO=J=C?@(B. $(C@L4B(B $(C:q7O(B $(C@/;g<:@:(B $(C>F4OAv88(B -$(C4g?,GQ(B $(C;g=G7N(B $(C?)0\A}4O4Y(B. - -$(C9.<-?!(B $(C@V4B(B $(C1t9Z@L@G(B $(C@'D!4B(B "$(CA!(B(point)"$(C@L6s0m(B $(C:N8(4O4Y(B. $(C:N?,GO@Z8i(B, -$(C1t9Z@L4B(B $(CH-8i;s?!<-(B, $(C9.<-(B $(C3;?!(B $(CA!@L(B $(C>n5p?!(B $(C@'D!GO0m(B $(C@V4B0!8&(B -$(C:8?)A]4O4Y(B. - -$(C4Y@=@:(B $(C398;0z(B $(C9.@e(B $(C4\@'@G(B $(C@L5?@;(B $(CFwGTGQ(B $(C4\`GO?4=@4O4Y(B. - - C-f $(CGQ(B $(C9.@Z(B $(C>UBJ@87N(B $(C?rAw@N4Y(B - C-b $(CGQ(B $(C9.@Z(B $(C5^BJ@87N(B $(C?rAw@N4Y(B - - M-f $(CGQ(B $(C4\>n(B $(C>UBJ@87N(B $(C?rAw@N4Y(B - M-b $(CGQ(B $(C4\>n(B $(C5^BJ@87N(B $(C?rAw@N4Y(B - - C-n $(C>U(B $(CAY7N(B $(C?rAw@N4Y(B - C-p $(C5^(B $(CAY7N(B $(C?rAw@N4Y(B - - C-a $(CAY@G(B $(C=C@[@87N(B $(C?rAw@N4Y(B - C-e $(CAY@G(B $(C3!@87N(B $(C?rAw@N4Y(B - - M-a $(C9.@e@G(B $(C=C@[@87N(B $(C?rAw@N4Y(B - M-e $(C9.@e@G(B $(C3!@87N(B $(C?rAw@N4Y(B - ->> $(C@L(B $(C8p5g(B $(C8m7I@;(B $(C8n(B $(C9x(B $(C?,=@GX(B $(C:8=J=C?@(B. $(C@L(B $(C8m7I5i@:(B $(C0!@e(B $(C@ZAV(B - $(C;g?k5G4B(B $(C8m7I5i@T4O4Y(B. - -$(C1t9Z@L8&(B $(C?rAw@L4B(B $(C4Y8%(B $(C5N0!Av(B $(CA_?dGQ(B $(C8m7I@:(B $(C@|(B $(C9.<-@G(B $(C=C@[@87N(B -$(C?rAw@L4B(B M-< (Meta$(C -(Meta$(C> M-<$(C8&(B $(CAv1](B $(CCD<-(B $(CAvD'<-@G(B $(C=C@[@87N(B $(C?rAw?)(B $(C:8=J=C?@(B. $(C1W8.0m4B(B C-v$(C8&(B - $(C9]:9GX<-(B $(C4Y=C(B $(C?)1b7N(B $(C59>F(B $(C?@=J=C?@(B. - ->> M->$(C8&(B $(CCD<-(B $(CAvD'<-@G(B $(C3!@87N(B $(C0!=J=C?@(B. $(C1W8.0m4B(B M-v$(C8&(B $(C9]:9GX<-(B $(C4Y=C(B - $(C?)1b7N(B $(C59>F(B $(C?@=J=C?@(B. - -$(C4\8;1b?!(B $(CH-;lG%(B $(C1[24B(B -$(C0M@;(B $(C1G@eGU4O4Y(B. $(CC9B07N(B, $(C@L5i@:(B $(C8p5g(B $(CA>7y@G(B $(C4\8;1b?!<-(B $(C;g?kGR(B $(C24B(B $(C0M?!(B $(C@Mn(B -$(C9.@Z@;(B $(CD!4B(B $(C0M@L(B $(CH-;lG%(B $(C1[@(B $(C:|8#4Y4B(B $(C0M@;(B $(C>K0T(B $(C5I(B -$(C0M@T4O4Y(B ($(CE8@Z(B $(C@'D!?!<-(B $(Cx1b(B $(C6'9.?!(B). $(Cn(B $(C9.@Z(B $(C8m7I@;(B $(C>24B(B $(C=@0|@L(B $(C5i8i(B $(C1t9Z@L8&(B $(C?rAw@L4B(B $(C4Y8%(B -$(C0m1^(B $(C8m7I5i55(B $(C=10T(B $(C9h?o(B $(CnA}4O4Y(B. META$(Cn62(B -$(C4\8;1b?!<-55(B $(C;g?kGR(B $(Cn(B, C-u 8 C-f$(C4B(B $(C9.@Z(B $(C?)4|03@G(B $(C>UBJ@87N(B $(C?rAw@T4O4Y(B. - ->> $(CGQ(B $(C9x@G(B $(C8m7I@87N(B $(C1t9Z@L0!(B $(C@L(B $(CAY(B $(C1YC3?!(B $(C?@557O(B, $(C<}@Z(B $(C@NnAx(B - C-n $(CH$@:(B C-p$(C8&(B $(C=C55GX(B $(C:8=J=C?@(B. - -$(C4k:N:P@G(B $(C8m7I5i@:(B $(C<}@Z(B $(C@N5(B $(CJ0m(B $(C1W(B -$(C88E-@G(B $(CAY@;(B $(CH-8i@G(B $(C@'3*(B $(C>F7!7N(B $(C5N7g8;1b(B $(CGU4O4Y(B. $(CAo(B, C-u 4 C-v$(C4B(B -$(CH-8i@;(B 4 $(CAY(B $(C88E-(B $(C5N7g8;1b(B $(CGU4O4Y(B. - ->> $(C@LA&(B C-u 8 C-v$(C8&(B $(CCD(B $(C:8=J=C?@(B. - -$(C@L7N<-(B $(CH-8i@:(B 8 $(CAY@L(B $(C@'7N(B $(C5N7g8;1b(B $(C5F@;(B $(C0M@T4O4Y(B. $(C4Y=C(B $(C9X@87N(B -$(C5N7g8;1b(B $(CGO1b(B $(C@'GX<-4B(B $(C@N5(B $(C0f?l?!4B(B $(C@L8F=:(B $(CC"@G(B -$(C?^Fm?!(B $(C5N7g8;1b(B $(C874k6s0m(B $(C:R8.?l4B(B $(C1b4Y6u(B $(C;g0"G|(B $(C8p>g@G(B $(CEM0!(B $(C@V@;(B -$(C0M@T4O4Y(B. $(C@L(B $(C5N7g8;1b(B $(C874k?!(B $(C4Y6wAc8&(B $(C5~1oGT@87N=a(B $(C1[?y@;(B $(C5N7g8;1b(B $(CGR(B -$(C> $(C5N7g8;1b(B $(C874k(B $(C3;?!<-(B $(C4+?!(B $(C6g4B(B $(C:N:P@G(B $(C2@4k1b8&(B $(CA_0#(B $(C4\C_7N(B $(C4-7/(B - $(C:8=J=C?@(B. $(C1W7/8i(B $(C1[?y@:(B $(C4Y6wAc7N(B $(C4)8%(B $(C@'D!?!(B $(C5{8%(B $(C>g(B $(C88E-@G(B $(C@'D!8&(B - $(C@'3*(B $(C>F7!7N(B $(C5N7g8;1b(B $(C5I(B $(C0M@T4O4Y(B. - ->> $(C4Y6wAc8&(B $(CA_0#(B $(C4\C_0!(B $(C4-7/Ax(B $(C;sEB?!<-(B $(C@'3*(B $(C>F7!7N(B $(C?rAw?)(B $(C:8=J=C?@(B. - $(C1W7/8i(B $(C1[?y@L(B $(C4Y6wAc0!(B $(C?rAw@L4B4k7N(B $(C@'3*(B $(C>F7!7N(B $(C5N7g8;1b(B $(C5I(B - $(C0M@T4O4Y(B. - - -* $(C@L8F=:@G(B $(C@[5?@L(B $(C4\@}5I(B $(C6'(B ---------------------------- - -$(C8m7I@;(B $(CAV>n55(B $(C@L8F=:0!(B $(C9]@@@;(B $(CGOAv(B $(C>J@;(B $(C6'4B(B C-g$(C8&(B $(CCD<-(B $(C@L8F=:@G(B $(C@[5?@;(B -$(C>H@|GO0T(B $(CA$Av=CE3(B $(Cn62(B $(C8m7I@;(B $(C=C@[GO?4Av88(B $(C=GG`=CE00m(B -$(C=MAv(B $(C>J@;(B $(C6'?!55(B $(C;g?k5I(B $(C> C-u 100$(C@;(B $(CCD<-(B $(C<}@Z(B $(C@Nx>]@=@87N(B $(CGQ(B - $(C9.@Z88(B $(C>U@87N(B $(C?rAw?)>_(B $(CGU4O4Y(B. - - -* $(C9+4I(B $(C8m7I(B ------------ - -$(C>n62(B $(C@L8F=:(B $(C8m7I@:(B "$(CGc?k5GAv(B $(C>J>F<-(B"(disabled) $(CCJ:8@Z0!(B $(C@_8x(B $(C;g?kGOAv(B -$(C>J557O(B $(C5G>n(B $(C@V=@4O4Y(B. - -$(C@L71(B $(C9+4I(B $(C8m7I@;(B $(C>28i(B, $(C@L8F=:4B(B $(C@L(B $(C8m7I@L(B $(C9+>y@L>z@88g(B, $(C@L(B $(C8m7I@;(B $(C1W3I(B -$(C1W4k7N(B $(C=GG`GR(B $(C0M@NAv8&(B $(C90>n(B $(C:84B(B $(C>K828;@;(B $(CH-8i(B $(CG%=CGU4O4Y(B. - -$(C?x7!0!(B $(C@L(B $(C8m7I@;(B $(C>20m@Z(B $(CGO?44Y8i(B, $(C90@=?!(B $(C4kGX(B $(C;g@L(B $(C9.@Z(B(Space)$(C8&(B $(CCD<-(B -$(C4dGO=J=C?@(B. $(C:8Ek@:(B $(C9+4I(B $(C8m7I@;(B $(C=GG`=CE0Av(B $(C>J1b(B $(C@'GX(B $(C90@=?!(B "n"$(C@87N(B -$(C4dGU4O4Y(B. - ->> C-x C-l ($(C9+4I(B $(C8m7I@G(B $(CGO3*(B)$(C@;(B $(CD#(B $(CHD(B n$(C@87N(B $(C90@=?!(B $(C4dGO=J=C?@(B. - - -* $(CC"(B ----- - -$(C@L8F=:4B(B $(C?)7/(B $(CC"@;(B $(C0!Az(B $(C24B(B $(C9f9}?!(B $(C4kGX<-4B(B $(C3*A_?!(B $(C<38mGO1b7N(B $(CGU4O4Y(B. $(CAv1]@:(B -$(C4Y8%(B $(CC"@;(B $(C>x>V0m(B $(C?x7!?!(B $(C@V4x(B $(CC"(B $(CGO3*7N(B $(C59>F0!(B $(CFmA}@;(B $(C0hx>[4O4Y(B). - -$(C@L0M@:(B $(CA&>n2557O(B $(CGU4O4Y(B. $(C4Y8%(B $(CC"5i@:(B $(CAv?vA}4O4Y(B. - ->> $(C1t9Z@L8&(B $(C@L(B $(CAY7N(B $(C?rAw@N(B $(CHD(B C-u 0 C-l$(C@;(B $(CD!=J=C?@(B. ->> $(CA&>nnnn6;0T(B $(CAY>n(B $(C5e4B0!8&(B $(C0|B{GO=J=C?@(B. - ->> C-x 1$(C@;(B $(CCD<-(B $(C9.<-H-(B $(C8q7O(B $(C@[<:(B $(CC"@L(B $(C>n6;0T(B $(C;g6sAv4B0!8&(B $(C:8=J=C?@(B. - -$(C@L(B $(C8m7I@:(B $(C5N(B $(C9.@Z7N(B $(C18<:5G>n(B $(C@V4Y4B(B $(CA!?!<-(B $(CAv1]1nAv(B $(C9h?n(B $(C4Y8%(B $(C8m7I5i0z(B -$(C4Y8(4O4Y(B. $(C=C@[@:(B $(CA&>nn94O4Y(B. - - -* $(C3"?l1b?M(B $(CAv?l1b(B ------------------ - -$(C1[?y@;(B $(C3"?l1b(B $(C@'GX<-4B(B $(C1W(B $(C1[?y@;(B $(CE8@ZD!8i(B $(C5K4O4Y(B. A, 7, *, $(C5n5n0z(B -$(C00@L(B, $(C:<(B $(C($(C:91M$(C8&(B $(CD!8i(B $(C86Av87@87N(B $(C@T7B5H(B $(C9.@Z0!(B $(CAv?vA}4O4Y(B. $(C4B(B -$(C1[n62(B $(C0f?l?!4B(B -"Backspace" $(C1[$(C@G(B $(C?*GR@;(B $(CGO1b55(B $(CGOAv88(B $(CGW;s(B $(C1W78Av4B(B -$(C>J=@4O4Y(B! - -$(CA;(B $(C4u(B $(C@O9]@{@87N(B, $(C4B(B $(C1t9Z@L(B $(CGv@'D!@G(B $(C9Y7N(B $(C@|?!(B $(C@V4B(B $(C9.@Z8&(B -$(CAv?s4O4Y(B. - ->> $(C1W(B $(C0M@;(B $(CGX(B $(C:8=J=C?@(B--$(C8n8n(B $(C9.@Z8&(B $(CD#(B $(CHD(B $(C8&(B $(CCD<-(B - $(CAv?v:8=J=C?@(B. $(C@L(B $(CFD@O@L(B $(C:/0f5G4B(B $(C0M?!(B $(C4kGQ(B $(C0FA$@:(B $(CGOAv(B $(C>J>F55(B - $(C5K4O4Y(B; $(C@86d(B $(CAvD'<-4B(B $(C:/0f5GAv(B $(C>J=@4O4Y(B. $(C@L(B $(CFD@O@:(B $(C@86d(B $(CAvD'<-@G(B - $(C03@N?k(B $(C:9;g:;@T4O4Y(B. - -$(C1[?y@L(B $(CH-8i@G(B $(CGQ(B $(CAY?!(B $(C4Y(B $(C5i>n0!Av(B $(C8xGR(B $(CA$557N(B $(CD?Av8i(B $(C1[?y@G(B $(CAY@:(B -$(CH-8i@G(B $(C5N9xB0(B $(CAY?!<-(B "$(C0hnAv4B(B $(C0M@;(B $(C0!8.E54O4Y(B. - ->> $(C1[?y@;(B $(C0hn<-557O(B $(CGO=J=C?@(B. $(C1W7/8i(B $(CAY(B - $(C0h> $(C8&(B $(C=a<-(B $(C1[?y@G(B $(CAY@L(B $(CGQ(B $(CH-8i(B $(CAY?!(B $(C2K(B $(CBw557O(B $(C4Y=C(B - $(CAv?l=J=C?@(B. $(CAY(B $(C0hx>nA}4O4Y(B. - -$(C;uAY(B $(C9.@Z55(B $(C4Y8%(B $(C9.@ZC373(B $(CAv?o(B $(Cn<-(B -$(CH-8i@G(B $(C3J:q8&(B $(C3Q>n<-8i(B $(C1W(B $(CAY@:(B $(CAY(B $(C0h> $(C1t9Z@L8&(B $(CAY@G(B $(C=C@[@87N(B $(C?rAw?)<-(B $(C8&(B $(CD!=J=C?@(B. $(C1W7/8i(B $(C1W(B - $(CAY@L(B $(C@L@|(B $(CAY0z(B $(CGUCDAz(B $(C0M@T4O4Y(B. - ->> $(C4Y=C(B $(C@;(B $(CCD<-(B $(CAv?vAx(B $(C;uAY(B $(C9.@Z8&(B $(C3"?l=J=C?@(B. - -$(C4k:N:P@G(B $(C@L8F=:(B $(C8m7I?!4B(B $(C9]:9(B $(CH=oGO=J=C?@(B; -$(C1[?y(B $(C9.@Z55(B $(CGX4g5K4O4Y(B. $(C1[?y(B $(C9.@Z8&(B $(C9]:9GO4B(B $(C0M@:(B $(C1W(B $(C0M@;(B $(C?)7/9x(B -$(C3"?l4B(B $(C0M@T4O4Y(B. - ->> $(C1W(B $(C0M@;(B $(CAv1](B $(CGX(B $(C:>4O4Y(B -- C-u 8 *$(C@;(B $(CCD<-(B ********$(C@;(B $(C3"?l=J=C?@(B. - -$(C@LA&(B $(C@L8F=:?!<-(B $(C9+>p0!8&(B $(CD!0m(B $(CBx?@8&(B $(C13A$GO4B(B $(C0!@e(B $(C1b:;@{@N(B $(C9f9}@;(B -$(C9h?|=@4O4Y(B. $(C398;@L3*(B $(CAY55(B $(CGQ9x?!(B $(CAv?o(B $(C`GU4O4Y(B. - - $(C1t9Z@L(B $(CAw@|@G(B $(C9.@Z(B $(CAv?l1b(B - C-d $(C1t9Z@L(B $(C4Y@=@G(B $(C9.@Z(B $(CAv?l1b(B - - M- $(C1t9Z@L(B $(CAw@|@G(B $(C398;(B $(CAW@L1b(B - M-d $(C1t9Z@L(B $(C4Y@=@G(B $(C398;(B $(CAW@L1b(B - - C-k $(C1t9Z@L(B $(C@'D!7N:NEM(B $(CAY(B $(C3!1nAv(B $(CAW@L1b(B - M-k $(CGv@g(B $(C9.@e@G(B $(C3!1nAv(B $(CAW@L1b(B - -C-f$(C?M(B M-f$(C?!<-(B $(C=C@[GQ(B $(C@/;g<:@L(B $(C?M(B C-d $(C1W8.0m(B M-$(C?M(B M-d$(C7N(B -$(C@L>nAv4B(B $(C0M@;(B $(C@/@GGO=J=C?@(B ($(C4B(B $(CAxA$GQ(B $(CA&>n(B $(C9.@Z4B(B $(C>F4OAv88(B -$(C1W715%?!(B $(C;s3dGOAv(B $(C>J557O(B $(CGU=C4Y(B). $(CAY0z(B $(C9.@e@L(B $(C4Y8#5m@L(B C-k$(C?M(B M-k$(C4B(B -C-e$(C?M(B M-e$(C?M(B $(C4Y8(4O4Y(B. - -$(C@O7|@{@N(B $(C9f9}(B $(CGO3*7N(B $(C;g@LD-@G(B $(C>n62(B $(C:N:P55(B $(CAW@O(B $(C> $(C1t:}@L8&(B $(C@|(B $(C9.4\@G(B $(C=C@[@N(B `$(C@O(B'$(C@Z7N(B $(C?rAw@L=J=C?@(B. ->> C-SPC$(C8&(B $(CD!=C?@(B. $(C@L8F=:4B(B $(CH-8i@G(B $(C9Y4Z?!(B "Mark set"$(C@L6s4B(B $(C>K828;@;(B - $(C:8?)AY(B $(C0M@T4O4Y(B. ->> $(C1t:}@L8&(B $(C@'(B $(C9.4\@G(B $(C5N9xB0(B $(CAY?!(B $(C@V4B(B `$(C3!(B'$(C@Z7N(B $(C?rAw@L=C?@(B. ->> C-w$(C8&(B $(CD!=C?@(B. $(C1W7/8i(B `$(C@O(B'$(C@Z7N(B $(C=C@[GX<-(B `$(C3!(B'$(C@Z1nAv@G(B $(C1[?y@L(B $(CAW?)Az(B - $(C0M@T4O4Y(B. - -"$(CAW@L1b(B"$(C?M(B "$(CAv?l1b(B"$(C@G(B $(C4Y8%(B $(CA!@:(B "$(CAW?)Ax(B" $(C1[?y@:(B $(C@gBw(B $(C3"?v3V@;(B $(Cx4Y4B(B $(C0M@T4O4Y(B. $(CAW?)Ax(B $(C1[?y@;(B -$(C4Y=C(B $(C;g?kGO4B(B $(C0M@;(B "$(C@b>F4g1b1b(B(yanking)"$(C6s0m(B $(CGU4O4Y(B. $(C@O9]@{@87N(B $(C89@:(B -$(C1[?y@;(B $(CA&0EGO4B(B $(C8m7I@:(B $(C1[?y@;(B $(CAW@L3*(B ($(C1W71(B $(C8m7I5i@:(B $(C1W(B $(C1[?y5i@;(B $(C4Y=C(B -$(C@b>F4g1f(B $(CnA.(B $(C@V=@4O4Y(B), $(CGQ(B $(C9.@Z8&(B $(CA&0EGO0E3*(B -$(C:s(B $(CAY(B $(CH$@:(B $(C0x0#9.@Z8&(B $(CA&0EGO4B(B $(C8m7I5i@:(B $(CAv?r@[?k@;(B $(CGU4O4Y(B ($(C1W7!<-(B $(C1W(B -$(C1[?y5i@:(B $(C4Y=C(B $(C@b>F(B $(C4g1f(B $(Cx=@4O4Y(B). - ->> $(C1t9Z@L8&(B $(C:q>nA.(B $(C@VAv(B $(C>J@:(B $(CAY@G(B $(C=C@[@87N(B $(C?rAw@L=J=C?@(B. $(C1W8.0m4B(B - C-k$(C8&(B $(CCD<-(B $(C1W(B $(CAY@G(B $(C1[?y@;(B $(CAW@L=J=C?@(B. ->> C-k$(C8&(B $(C4Y=C(B $(CD!=J=C?@(B. $(C1W7/8i(B $(C1W(B $(CAY(B $(C4Y@=?!(B $(C@V4B(B $(C;uAY(B $(C9.@Z0!(B $(CAW?)Av4B(B - $(C0M@;(B $(C:<(B $(CnAv4B(B $(C8p5g(B $(CAY@;(B $(C@'7N(B $(C?C834O4Y(B. C-k$(C4B(B $(C<}@Z(B $(C@NF4U4O4Y(B. C-u 2 C-k$(C4B(B $(C5N(B $(CAY0z(B $(C1W(B $(CAY@G(B $(C;uAY(B $(C9.@Z8&(B -$(CAW@T4O4Y(B; C-k$(C8&(B $(C5N(B $(C9x(B $(CD!8i(B $(C1W78Av(B $(C>J=@4O4Y(B. - -$(CAW?)Ax(B $(C1[?y@;(B $(C4Y=C(B $(CH8F4g1b1b(B"$(C6s0m(B $(C:N8(4O4Y(B. ($(C4)1:0!0!(B -$(C;/>F0#(B $(C0M@;(B $(C4Y=C(B $(C@b>F(B $(C4g1b4B(B $(C0MC373(B $(C;}0"GO=J=C?@(B.) $(CAW?)Ax(B $(C1[?y@:(B -$(CAW?)Ax(B $(C1W(B $(C0w?!(B $(C4Y=C(B $(C@b>F(B $(C4g0\Az(B $(CF4g0\Az(B $(CF4g0\A|@87N=a(B $(C?)7/(B $(C:9;g:;@;(B $(C885i0T(B $(C5I(B $(CF4g1b1b(B $(C8m7I@:(B C-y$(C@T4O4Y(B. $(C1W7/8i(B $(C0!@e(B $(C86Av87@87N(B $(CAW?)Ax(B $(C1[?y@;(B -$(CGv@g@G(B $(C1t:}@L(B $(C@'D!?!(B $(CH8> $(CGX(B $(C:8=J=C?@(B; C-y$(C8&(B $(CCD<-(B $(C1[?y@;(B $(C4Y=C(B $(C@b>F4g1b=J=C?@(B. - -$(CGQ(B $(C0!7ND-?!<-(B C-k$(C8&(B $(C?)7/9x(B $(C>28i(B $(CAW?)Ax(B $(C1[?y5i@L(B $(CGT22(B $(C0%9+8.5G>n(B $(C1W(B $(CAY(B -$(C8p5N8&(B C-y $(CGQ(B $(C9x@87N(B $(C@b>F4g1f(B $(C> C-k$(C8&(B $(C?)7/9x(B $(CCD<-(B $(C1W(B $(C0M@;(B $(CGX(B $(C:8=J=C?@(B. - -$(CAW?)Ax(B $(C1[?y@;(B $(CH8> C-y$(C8&(B $(CD!=J=C?@(B. $(C1W8.0m4B(B $(C1t9Z@L8&(B $(C8n(B $(CAY(B $(C>F7!7N(B $(C?rAw?)<-(B C-y$(C8&(B $(C4Y=C(B - $(CD!=J=C?@(B. $(C1[?y@L(B $(C>n6;0T(B $(C:9;g5G4B0!8&(B $(C>K(B $(CF4g1f(B $(C1[?y@L(B $(C@V4B5%(B $(C4Y8%(B $(C0M@;(B $(C6G(B $(CAW@L8i(B $(C>n6;0T(B $(C5G0Z=@4O1n(B? -C-y$(C4B(B $(C4u(B $(CCV1Y?!(B $(CAW?)Ax(B $(C0M@;(B $(C@b>F4g1f(B $(C0M@T4O4Y(B. $(C1W7/3*(B $(C1W(B $(C@|@G(B $(C1[?y@:(B -$(C@R>n9v80(B $(C0M@L(B $(C>F4U4O4Y(B. $(C1W(B $(C0M@:(B M-y $(C8m7I@;(B $(C=a<-(B $(CH8F4g0\A34x(B -$(C1[?y@L(B $(C1W(B $(C@|?!(B $(CAW?)Ax(B $(C0M@87N(B $(C;u7N9Y2n>nA}4O4Y(B(replace). M-y$(C8&(B $(CC$Bw(B -$(C?,0EG*(B $(CD!8i(B $(C@L@|?!(B $(CAW?)Ax(B $(C0M5i@L(B $(CBw7J7N(B $(C3*?I4O4Y(B. $(CC#0m@Z(B $(CGO4B(B $(C1[?y@L(B -$(C3*?@8i(B $(C4Y8%(B $(C@O@;(B $(CGR(B $(CGJ?d0!(B $(C>x=@4O4Y(B. $(C4\F4g0\Ax(B $(C1[?y@L(B $(C1W0w?!(B $(C32>F(B $(C@V0T(B $(C5K4O4Y(B. - -M-y$(C8&(B $(C0hF(B $(C?I4O4Y(B. - ->> $(CGQ(B $(CAY@;(B $(CAW@L0m(B $(CAV@'7N(B $(C?rAw@N(B $(CHD(B $(C4Y8%(B $(CAY@;(B $(CAW@L=J=C?@(B. - $(C1W8.0m4B(B C-y$(C7N(B $(C5N9xB0(B $(CAW?)Ax(B $(CAY@;(B $(CH8y@L(B $(C3*?@4B0!8&(B $(C:8=J=C?@(B. $(C5N9xB0(B $(CAW?)Ax(B $(CAY@L(B $(C3*?C(B - $(C6'1n4O(B $(C1W780T(B $(C0hgK0T(B $(C5G8i(B $(C9+8#1b(B(undo) $(C8m7I(B, C-x -u$(C7N(B $(C:/0f;gGW@;(B $(C9+8&(B $(CJ4B(B $(C8m7I@:(B $(C0m7A(B -$(C4k;s?!<-(B $(CA&?\5K4O4Y(B ($(C?)1b?!4B(B $(C1t9Z@L8&(B $(C?rAw@L4B(B $(C8m7I0z(B $(CH-8i(B $(C5N7g8;1b(B -$(C8m7I@L(B $(C@V=@4O4Y(B). $(C1W8.0m(B $(C@ZC<3"?l1b(B(self-inserting) $(C9.@Z5i@:(B -$(CFr;s@{@87N(B 20$(C031nAv@G(B $(CA}4\@87N(B $(CC38.5K4O4Y(B. ($(C@L4B(B $(C1[?y(B $(C3"?l1b8&(B $(C9+8#1b(B -$(C@'GX<-(B $(CE8@ZGX>_(B $(CGO4B(B C-x u$(C@G(B $(C> $(C@L(B $(CAY@;(B C-k$(C7N(B $(CAW@N(B $(CHD(B C-x u$(C8&(B $(CD!8i(B $(CAY@L(B $(C4Y=C(B $(C3*E83/(B $(C0M@T4O4Y(B. - -C-_$(C4B(B $(C9+8#1b(B $(C8m7I@G(B $(C4Y8%(B $(CG|EB@T4O4Y(B; C-x u$(C?M(B $(C00@:(B $(C@[?k@;(B $(CGOAv88(B $(CGQ(B -$(C0!7ND-?!<-(B $(C?)7/9x(B $(CE8@ZGO1b?!(B $(CFmGU4O4Y(B. C-_$(C@G(B $(C4\A!@:(B, $(C>n62(B -$(C1[n6;0T(B $(CE8@ZGX>_(B $(C5G4B0!0!(B $(C:R8m7aGO4Y4B(B $(C0M@T4O4Y(B. -$(C1W7!<-(B C-x u$(C55(B $(C;g?kGR(B $(Cn(B $(C@V4B(B $(C0M@T4O4Y(B. $(C>n62(B -$(C4\8;1b?!<-4B(B, CONTROL$(Cn62(B $(C0M@;(B $(CAW@L4B(B $(C0M0z(B $(CAv?l4B(B $(C0M@G(B $(CBw@LA!@:(B C-y$(C7N(B $(C@b>F4g1f(B $(Cx=@4O4Y(B. - -* $(CFD@O(B ------- - -$(CFmA}GQ(B $(C1[?y@;(B $(C?518@{@87N(B $(CGO1b(B $(C@'GX<-4B(B $(CFD@O?!(B $(C3V>n(B $(C5N>n>_(B $(CGU4O4Y(B. -$(C1W780T(B $(CGOAv(B $(C>J@88i(B, $(C@L8F=:0!(B $(C>x>nA|0z(B $(CGT22(B $(C1[?y55(B $(C;g6sA}4O4Y(B. $(C1[?y@;(B -$(CFD@O?!(B $(C3V1b(B $(C@'GX<-4B(B $(C1W7/1b(B $(C@|?!(B $(C1W(B $(CFD@O@;(B "$(CC#>F>_(B" $(CGU4O4Y(B. ($(C@L4B(B -$(CFD@O@;(B "$(C9f9.GO4B(B $(C0M(B"$(C@L6s0m55(B $(CGU4O4Y(B.) - -$(CFD@O@;(B $(CC#4B4Y4B(B $(C0M@:(B $(C@L8F=:(B $(C>H?!<-(B $(C1W(B $(CFD@O@G(B $(C3;?k@;(B $(C:;4Y4B(B $(C0M@;(B -$(C@G9LGU4O4Y(B. $(C?)7/0!Av(B $(C8i?!<-(B, $(C1W0M@:(B $(C1W(B $(CFD@O(B $(C@ZC<8&(B $(CFmA}GO7A4B(B $(C0M0z(B -$(C4Y8'>x=@4O4Y(B. $(C1W7/3*(B, $(C@L8F=:7N(B $(C:/0fGQ(B $(C;gGW@:(B $(C1W(B $(CFD@O@;(B "$(C0%9+8.(B"$(CGO1b(B -$(C@|1nAv4B(B $(C?518@{@LAv(B $(C8xGU4O4Y(B. $(C@L4B(B $(C@}9]Bk(B $(C:/0f5H(B $(CFD@O@;(B $(C?xD!(B $(C>J0T(B -$(C?n?5(B $(CC<0h?!(B $(C320\(B $(C5N4B(B $(C0M@;(B $(CGGGO1b(B $(C@'GX<-(B $(C1W78=@4O4Y(B. $(C0%9+8.8&(B $(CGX55(B -$(C@L8F=:4B(B $(C:/0f(B $(C;gGW@L(B $(C3*A_?!(B $(C=GHGX(B $(C1Y?x(B -$(CFD@O@;(B $(C:/0f5H(B $(C@L8'@87N(B $(C320\5S4O4Y(B. - -$(CH-8i@G(B $(C9Y4Z(B $(C0!1n@L8&(B $(C:88i(B "--:-- TUTORIAL.ko"$(C?M(B $(C00@:(B $(C=D@87N(B $(C=C@[GO4B(B, -$(C4k=C(B $(C9.@Z7N(B $(C=C@[GX<-(B $(C4k=C(B $(C9.@Z7N(B $(C3!3*4B(B $(CAY@L(B $(C@V@;(B $(C0M@T4O4Y(B. $(CH-8i@G(B $(C@L(B -$(C:N:P@:(B $(C:8Ek(B, $(C9f9.GO0m(B $(C@V4B(B $(CFD@O@G(B $(C@L8'@;(B $(C:8?)(B $(CA]4O4Y(B. $(CAv1]@:(B $(C@L8F=:(B -$(CAvD'<-@G(B $(C:9;g:;@N(B "TUTORIAL.ko"$(C6s4B(B $(CFD@O@;(B $(C9f9.GO0m(B $(C@V4B(B $(CA_@T4O4Y(B. -$(C@L8F=:7N(B $(CFD@O(B $(CC#1b8&(B $(CGO8i(B $(CA$H.Hw(B $(C1W(B $(C0w?!(B $(CFD@O@G(B $(C@L8'@L(B $(C3*E8334O4Y(B. - -$(CFD@O(B $(CC#1b(B $(C8m7I@G(B $(CF/:0GQ(B $(CA!@:(B $(C?xGO4B(B $(CFD@O@G(B $(C@L8'@;(B $(C8;GX>_(B $(CGO4B(B -$(C0M@T4O4Y(B. $(C8m7I@L(B "$(C4\8;1b7N:NEM(B $(C@NF7!@G(B $(C8m7I@;(B $(CD!0m(B $(C3*8i(B - - C-x C-f $(CFD@O(B $(CC#1b(B - -$(C@L8F=:4B(B $(CFD@O@G(B $(C@L8'@;(B $(CD!6s0m(B $(C?d18GU4O4Y(B. $(CFD@O(B $(C@L8'@;(B $(CD!8i(B $(CH-8i@G(B $(C9Y4Z(B -$(CAY?!(B $(C@L8'@L(B $(C3*E8334O4Y(B. $(C@L71(B $(CA>7y@G(B $(C@T7B?!(B $(C>2@O(B $(C6'?!4B(B $(C9Y4Z(B $(CAY@;(B $(C@[@:(B -$(C;g@LD-(B(minibuffer)$(C@L6s0m(B $(C:N8(4O4Y(B. $(CFr;s=C?!(B $(C>24B(B $(C@L8F=:@G(B $(CFmA}(B -$(C8m7I@87N(B $(CFD@O(B $(C@L8'@;(B $(CFmA}GR(B $(C7y@G(B $(C@[@:(B $(C;g@LD-(B $(C@T7B@;(B) $(C3V@;(B $(C6'(B, $(C8m7I@G(B -$(CCk> C-x C-f$(C8&(B $(CD!0m(B C-g$(C8&(B $(CD!=J=C?@(B. $(C@L4B(B $(C@[@:(B $(C;g@LD-@;(B $(CCk20m(B $(C@V4B(B C-x C-f $(C8m7I55(B $(CCkF9+(B - $(CFD@O55(B $(CC#Av(B $(C>J4B(B $(C0M@T4O4Y(B. - -$(CFD@O(B $(C@L8'@;(B $(C4Y(B $(C1b@TG_@88i(B $(C@;(B $(CCD<-(B $(CA>7aGO=J=C?@(B. $(C1W7/8i(B C-x -C-f $(C8m7I@L(B $(C@[5?5G>n(B $(C<1EC5H(B $(CFD@O@;(B $(CC#1b(B $(C=C@[GU4O4Y(B. C-x C-f $(C8m7I@L(B -$(C3!3*8i(B $(C@[@:(B $(C;g@LD-@:(B $(C;g6sA}4O4Y(B. - -$(C@a=C(B $(CHD?!4B(B $(CFD@O@G(B $(C3;?k@L(B $(CH-8i?!(B $(C3*E83*0m(B $(C1W(B $(C3;?k@;(B $(CFmA}GR(B $(Cn(B $(C3u@=@87N=a(B $(C@R>n9v81(B -$(C?l7A8&(B $(C9fAvGU4O4Y(B. $(C;u(B $(C@L8'@:(B $(C1Y?x(B $(CFD@O(B $(C@L8'@G(B $(C3!?!(B "~"$(C@;(B $(C4uGT@87N=a(B -$(C885i>nA}4O4Y(B. - -$(C0%9+8.0!(B $(C3!3*8i(B $(C@L8F=:4B(B $(C>2?)Ax(B $(CFD@O@G(B $(C@L8'@;(B $(C@NFAV(B -$(C@ZAV(B $(C0%9+8.GT@87N=a(B $(C?n?5(B $(CC<0h0!(B $(C?M8#8#(B $(C9+3JA.55(B $(C89@:(B $(C@[>w@L(B $(CJ557O(B $(CGU4O4Y(B. - ->> C-x C-s$(C8&(B $(CCD<-(B $(CAvD'<-@G(B $(C:9;g:;@;(B $(C0%9+8.(B $(CGO=J=C?@(B. - $(C1W7/8i(B "Wrote ...TUTORIAL.ko"$(C6s0m(B $(CH-8i@G(B $(C9Y4Z?!(B $(C@Nn62(B $(C?n?5(B $(CC<0h?!<-4B(B C-x C-s$(C8&(B $(CD!8i(B $(CH-8i@;(B $(C5?0a=CDQ<-(B, $(C@L8F=:0!(B -$(C>F9+(B $(CCb7B55(B $(CGOAv(B $(C>J4B(B $(C0M@;(B $(C:<(B $(C0f?l0!(B $(C@V=@4O4Y(B. $(C@L0M@:(B "$(CHe8'(B $(CA&>n(B"$(C6s0m(B -$(C:R8.?l4B(B $(C?n?5(B $(CC<0h@G(B "$(CF/B!(B"$(C@L(B C-s$(C8&(B $(C0!7NC$<-(B $(C@L8F=:8&(B $(CEkGX(B $(C@|4^5GAv(B -$(C>J557O(B $(CGO1b(B $(C6'9.@T4O4Y(B. C-q$(C8&(B $(C4)8#8i(B $(CH-8i@L(B $(CGXA&5K4O4Y(B. $(C1W8.0m(B $(C3*<-(B -$(C@L8F=:(B $(C<38m<-@G(B "Spontaneous Entry to Incremental Search"$(C6s4B(B $(C4\?x@;(B -$(C:88i(B $(C@L71(B "$(CF/B!(B"$(C@;(B $(C>n6;0T(B $(CCk1^GR(B $(Cp@;(B $(C@P@;(B $(CJ4B(B $(CFD@O55(B $(CC#@;(B $(CF<-(B $(C1[?y@;(B $(C3"?l1b(B $(C=C@[GU4O4Y(B. -$(CFD@O@;(B "$(C0%9+8.(B"$(CGO557O(B $(C?dC;GO8i(B $(C@L8F=:4B(B $(C3"?vAx(B $(C1[?y@;(B $(C3;?k@87N(B $(CGO4B(B -$(CFD@O@;(B $(C=GA&7N(B $(C885i>n(B $(C3@4O4Y(B. $(C1W71(B $(CHD?!4B(B $(C@L(B $(CFD@O@:(B $(C@L9L(B $(CA8@gGO4B(B -$(CFD@O@L(B $(C5K4O4Y(B. - - -* $(C;g@LD-(B --------- - -$(C5N9xB0(B $(CFD@O@;(B C-x C-f$(C7N(B $(CC#@88i(B, $(CC99xB0(B $(CFD@O@:(B $(C@L8F=:@G(B $(C3;:N?!(B $(C32>F(B -$(C@V=@4O4Y(B. $(C1W(B $(CFD@O@:(B C-x C-f$(C7N(B $(C@gBw(B $(CC#@=@87N<-(B $(C4Y=C(B $(C>y9Y2\(B $(C> C-x C-f foo $(C@;(B $(CCD<-(B "foo"$(C6s4B(B $(C@L8'@G(B $(CFD@O@;(B $(C885e=J=C?@(B. - $(C1W8.0m4B(B $(C1[?y@;(B $(C3"?l0m(B $(CFmA}GO?)(B C-x C-s$(C7N(B "foo"$(C8&(B $(C0%9+8.GO=J=C?@(B. - $(C86Av87@87N(B, C-x C-f TUTORIAL.ko $(C@;(B $(CCD<-(B $(CAvD'<-7N(B $(C4Y=C(B $(C59>F(B - $(C?@=J=C?@(B. - -$(C@L8F=:4B(B $(C0"(B $(CFD@O@G(B $(C1[?y@;(B "$(C;g@LD-(B"$(C@L6s0m(B $(C:R8.?l4B(B $(C0M(B $(C>H?!(B $(C@z@eGU4O4Y(B. -$(CFD@O@;(B $(CC#4B(B $(C0M@:(B $(C@L8F=:@G(B $(C3;:N?!(B $(C;u(B $(C;g@LD-@;(B $(C885e4B(B $(C0M0z(B $(C00=@4O4Y(B. -$(C@L8F=:@G(B $(C@O7N(B $(CGvA8GO0m(B $(C@V4B(B $(C;g@LD-@G(B $(C8q7O@;(B $(C:81b(B $(C@'GX<-4B(B $(C4Y@=0z(B $(C00@L(B -$(CD!=J=C?@(B. - - C-x C-b $(C;g@LD-(B $(C8q7O(B - ->> C-x C-b$(C8&(B $(CAv1](B $(CCD(B $(C:8=J=C?@(B. - -$(C0"(B $(C;g@LD-@L(B $(C>n62(B $(C@L8'@;(B $(C0.0m(B $(C@V4B0!(B $(C:8=J=C?@(B. $(C;g@LD-@:(B $(C0#AwGO0m(B $(C@V4B(B -$(C1[?y@G(B $(C8pC<0!(B $(C5G4B(B $(CFD@O@G(B $(C@L8'@;(B $(C0.0m(B $(C@V@;(B $(Cn62(B -$(C;g@LD-5i@:(B $(CFD@O0z(B $(C9+0|GU4O4Y(B. $(C?98&(B $(C5i>n(B, "*Buffer List*"$(C6s4B(B $(C;g@LD-@:(B -$(C>F9+(B $(CFD@O55(B $(C0.0m(B $(C@VAv(B $(C>J=@4O4Y(B. $(C@L(B $(C;g@LD-@:(B C-x C-b$(C7N(B $(C885i>nAx(B $(C;g@LD-(B -$(C8q7O@;(B $(C4c0m(B $(C@V@;(B $(C;S@T4O4Y(B. $(C@L8F=:(B $(CC"(B $(C>H?!<-(B $(C:<(B $(Cn62(B $(C;g@LD-@G(B $(C@O:N:P(B $(C@T4O4Y(B. - ->> C-x 1$(C@;(B $(CCD<-(B $(C;g@LD-(B $(C8q7O@;(B $(C>x>V=J=C?@(B. - -$(CGQ(B $(CFD@O@G(B $(C1[?y@;(B $(C:/0fGQ(B $(CHD(B $(C4Y8%(B $(CFD@O@;(B $(CC#@88i(B $(CC99xB0(B $(CFD@O@:(B $(C0%9+8.5GAv(B -$(C>J@:(B $(C0M@T4O4Y(B. $(C1W(B $(C:/0f(B $(C;gGW@:(B $(C@L8F=:(B $(C3;:N@G(B $(CFD@O(B $(C;g@LD-?!88(B $(C32>F(B -$(C@V=@4O4Y(B. $(C5N9xB0(B $(CFD@O@G(B $(C;g@LD-@;(B $(C885i0E3*(B $(CFmA}GO4B(B $(C0M@:(B $(CC99xB0(B $(CFD@O@G(B -$(C;g@LD-?!(B $(C@|Gt(B $(C?5Gb@;(B $(CAVAv(B $(C>J=@4O4Y(B. $(C@L4B(B $(C8E?l(B $(C@/?kGO1b4B(B $(CGO3*(B $(C4Y8%(B -$(C8i?!<-4B(B $(CC99xB0(B $(CFD@O@G(B $(C;g@LD-@;(B $(C0%9+8.GR(B $(Cy9Y2[(B $(CHD(B -C-x C-s$(C7N(B $(C0%9+8.GO4B(B $(C0M@:(B $(C1MBz@:(B $(C@O@T4O4Y(B. $(C1W7!<-(B $(C4Y@=0z(B $(C00@:(B $(C8m7I@L(B -$(C@V=@4O4Y(B - - C-x s $(C8n8n(B $(C;g@LD-(B $(C0%9+8.(B - -C-x s$(C4B(B, $(C:/0f5G>zAv88(B $(C0%9+8.5GAv(B $(C>J@:(B $(C;g@LD-@L(B $(C@V3*(B $(CA6;gGX(B $(C:>4O4Y(B. -$(C1W8.0m4B(B $(C1W71(B $(C;g@LD-5i?!(B $(C4kGX<-(B $(C1W(B $(C0M@;(B $(C0%9+8.GR(B $(C0M@N0!8&(B $(C90>n(B -$(C:>4O4Y(B. - ->> $(CGQ(B $(CAY@G(B $(C1[?y@;(B $(C3"?n(B $(CHD(B C-x s$(C8&(B $(CD!=J=C?@(B. - $(C1W7/8i(B TUTORIAL.ko$(C6s4B(B $(C@L8'@G(B $(C;g@LD-@;(B $(C0%9+8.GR(B $(C0M@NAv(B $(C90>n(B $(C:<(B - $(C0M@T4O4Y(B. "y"$(C8&(B $(CCD<-(B $(C90@=?!(B $(C?96s0m(B $(C4dGO=J=C?@(B. - -* $(C8m7I>n@G(B $(CH.@e(B ---------------- - -$(C@L8F=:@G(B $(C8m7I>n4B(B $(C3J9+(B $(C89>F<-(B $(C@L(B $(C8p5g(B $(C8m7I@;(B $(CA&>nx=@4O4Y(B. $(C@L8F=:4B(B $(C@L71(B $(C9.A&8&(B X (eXtend) $(C8m7I@87N(B $(CGX0aGU4O4Y(B. -$(C@L?!4B(B $(C5N0!Av(B $(CA>7y0!(B $(C@V=@4O4Y(B: - - C-x $(C9.@Z(B $(CH.@e(B. $(C9.@Z(B $(CGO3*0!(B $(C5Z5{8'(B. - M-x $(C@L8'(B $(C8m7I@G(B $(CH.@e(B. $(C1d(B $(C@L8'@L(B $(C5Z5{8'(B. - -$(C@L(B $(C8m7I5i@:(B $(C4k03(B $(C@/?kGOAv88(B, $(CAv1]1nAv(B $(C9h?v(B $(C?B(B $(C8m7I5i:84Y4B(B $(C4z(B $(C:s9xGO0T(B -$(C;g?k5K4O4Y(B. $(C@L71(B $(CA>7y@G(B $(C8m7I@;(B $(C@L9L(B $(C5N(B $(C03(B $(C>K0m(B $(C@V=@4O4Y(B: $(CFD@O(B -$(C8m7I(B $(CA_?!(B C-x C-f$(C7N(B $(CC#1b?M(B C-x C-s$(C7N(B $(C0%9+8.GO1b(B. $(C4Y8%(B $(C?94B(B $(C@L8F=:(B $(C@[>w(B -$(C=C0#@;(B $(C86D!4B(B $(C8m7I@T4O4Y(B--$(C@L4B(B C-x C-c $(C8m7I(B. ($(C:/0f(B $(C;gGW@;(B -$(C@R>n9v8.Av3*(B $(C>J@;1n(B $(CGO4B(B $(C0FA$@:(B $(C>J(B $(CGX55(B $(C5K4O4Y(B; C-x C-c$(C4B(B $(C@L8F=:8&(B -$(CAW@L1b(B $(C@|?!(B $(C0"0"@G(B $(C:/0f5H(B $(CFD@O@;(B $(C0%9+8.GR(B $(C1bH88&(B $(CA]4O4Y(B.) - -C-z$(C4B(B $(C@L8F=:8&(B *$(C@S=C7N(B* $(C3*?@1b(B $(C@'GQ(B $(C8m7I@T4O4Y(B--$(C1W7!<-(B $(C4Y@=?!(B, $(CGO4x(B -$(CA_@G(B $(C@L8F=:(B $(C@[>w(B $(C=C0#@87N(B $(C4Y=C(B $(C5G59>F(B $(C0%(B $(CF(B $(C0!557O(B $(CGOAv88(B $(C@L8F=:8&(B $(CFD1+GO4B(B $(C0M@:(B -$(C>F4U4O4Y(B. $(C4k:N:P@G(B $(CA60!:q?!<-4B(B `fg'$(C3*(B `%emacs'$(C8m7I@87N(B $(C@L8F=:8&(B $(C0hJ4B(B $(C?n?5(B $(CC<0h?!<-4B(B C-z$(C?!(B $(C@GGX(B, $(C@L8F=:(B $(C9X?!<-(B -$(C=GG`5G4B(B $(C>F7'A60!:q0!(B $(C885i>n(B $(CAv0T(B $(C5G4B5%(B $(C?)1b<-(B $(C4Y8%(B $(CGA7N1W7%5i@;(B -$(C=GG`GQ(B $(CHD(B $(C@L8F=:7N(B $(C59>F(B $(C?C(B $(CF4U4O4Y(B. $(C@L(B $(C0f?l(B $(C:8Ek(B, $(CA60!:q(B $(C8m7I@N(B `exit'$(C@87N(B -$(C>F7'A60!:q?!<-(B $(C@L8F=:?!(B $(C5G59>F(B $(C?I4O4Y(B. - -C-x C-c$(C4B(B $(C@|;j1b?!<-(B $(C9~>n3*1b(B $(CGR(B $(C6'3*(B $(C;g?kGU4O4Y(B. $(CFmAv8&(B $(CCk1^GO4B(B -$(CGA7N1W7%@L3*(B $(C4Y8%(B $(C@b4YGQ(B $(C55?r8p(B(utilities)$(C5i@L(B $(C>_1bGQ(B $(C@L8F=:4B(B -$(CA_Av=CE24Y4B(B $(C0M@;(B $(C8p8#1b(B $(C6'9.?!(B $(C3*0!1b8&(B $(CGX>_(B $(CGU4O4Y(B. $(CGOAv88(B, $(C:8Ek@G(B -$(C0f?l(B, $(C9~>n3*1b8&(B $(CGOAv(B $(C>J4B(B $(CGQ(B, $(C@L8F=:8&(B $(C3*0!1b:84Y4B(B $(CA_AvGO4B(B $(C0M@L(B -$(CAA=@4O4Y(B. - -C-x $(C8m7I>n4B(B $(C89@L(B $(C@V=@4O4Y(B. $(C@L9L(B $(C9h?n(B $(C0M@;(B $(C>F7!?!(B $(CAW:8@T4O4Y(B. - - C-x C-f $(CFD@O(B $(CC#1b(B. - C-x C-s $(CFD@O(B $(C0%9+8.(B. - C-x C-b $(C;g@LD-(B $(C8q7O(B. - C-x C-c $(C@L8F=:(B $(C3!3;1b(B. - C-x u $(C9+8#1b(B. - -$(C@L8'(B $(CH.@e(B $(C8m7I@:(B $(C@ZAV(B $(C;g?k5GAv(B $(C>J0E3*(B $(CF/:0GQ(B $(C9f=D?!<-3*(B $(C>2@L4B(B -$(C8m7I@T4O4Y(B. $(CGQ0!Av(B $(C?94B(B replace-string $(C8m7I@N5%(B $(C@L4B(B $(C@|?*@{@87N(B $(CGQ(B -$(C9.@Z?-@;(B $(C4Y8%(B $(C9.@Z?-7N(B $(C;u7N9Y2_4O4Y(B. M-x$(C8&(B $(CD!8i(B $(C@L8F=:4B(B $(CH-8i@G(B -$(C9Y4Z?!<-(B M-x$(C6s0m(B $(C1f@b@LGO?)(B $(C8m7I@G(B $(C@L8'@;(B $(CD!557O(B $(CGU4O4Y(B; $(C@L(B $(C0f?l4B(B -"replace-string". "repl s"$(C88(B $(CCD55(B $(C@L8F=:4B(B $(C@L8'@;(B $(C?O<:=CE3(B -$(C0M@T4O4Y(B. $(C8m7I(B $(C@L8'@:(B $(C@87N(B $(C3!334O4Y(B. - -replace-string $(C8m7I@:(B $(C5N03@G(B $(C@NnA.>_(B $(CGR(B $(C9.@Z?-0z(B -$(C;u7N9Y2n>nAz(B $(C9.@Z?-(B. $(C0"0"@G(B $(C@N$(C@87N(B $(C3!3;>_(B $(CGU4O4Y(B. - ->> $(C1t9Z@L8&(B $(C@L(B $(CAY?!<-(B $(C5N(B $(CAY(B $(C>F7!@G(B $(C:s(B $(CAY7N(B $(C?rAw@L=J=C?@(B. - $(C1W(B $(CHD(B M-x repl s$(C:/H-5G(B$(C9Y2n(B$(C@;(B $(CD!=J=C?@(B. - - $(C@L(B $(CAY@L(B $(C>n6;0T(B $(C:/H-5G>z4B0!8&(B $(C@/@GGO=J=C?@(B: $(C1t9Z@L0!(B $(C@V4B(B $(CCJ1b(B $(C@'D!(B - $(C4Y@=?!(B $(C:/(B-$(CH-(B-$(C5G(B $(C6s4B(B $(C398;@L(B $(C3*?C(B $(C6'864Y(B "$(C9Y2n(B"$(C6s0m(B - $(C;u7N9Y2n>z=@4O4Y(B. - - -* $(C@Z5?(B $(C0%9+8.(B -------------- - -$(CFD@O@;(B $(C:/0fGQ(B $(CHD?!(B $(C>FAw(B $(C0%9+8.8&(B $(CGOAv(B $(C>J>R@88i(B $(C@|;j1b0!(B $(C?M8#8#(B -$(C9+3JA|@87N=a(B $(C:/0f(B $(C;gGW@;(B $(C@R>n(B $(C9v81(B $(CS@;(B $(C9fAvGO1b(B -$(C@'GX(B, $(C@L8F=:4B(B $(CFmA}GO0m(B $(C@V4B(B $(C0"0"@G(B $(CFD@O@;(B $(CAV1b@{@87N(B "$(C@Z5?(B $(C0%9+8.(B" -$(CFD@O?!(B $(C>94O4Y(B. $(C@Z5?(B $(C0%9+8.5H(B $(CFD@O@G(B $(C@L8'@:(B $(C>U5Z7N(B # $(C9.@Z0!(B $(C@V=@4O4Y(B; -$(C?98&(B $(C5i>n(B, "hello.c"$(C6s4B(B $(C@L8'@G(B $(CFD@O@:(B "#hello.c#"$(C6s4B(B $(C@L8'@G(B $(C@Z5?(B -$(C0%9+8.(B $(CFD@O@;(B $(C0.0T(B $(C5K4O4Y(B. $(CA$;s@{@87N(B $(CFD@O@;(B $(C0%9+8.GO8i(B $(C@L8F=:4B(B $(C@Z5?(B -$(C0%9+8.(B $(CFD@O@;(B $(CAv?s4O4Y(B. - -$(C@|;j1b0!(B $(C?M8#8#(B $(C9+3JAv8i(B $(C1W(B $(CFD@O@;(B ($(C@Z5?(B $(C0%9+8.5H(B $(CFD@O@L(B $(C>F4O6s(B -$(CFmA}GO4x(B $(CFD@O(B) $(CFr;s=CC373(B $(CC#@:(B $(CHD(B M-x recover-file$(C@;(B $(CD'@87N=a(B -$(C@Z5?(B $(C0%9+8.5H(B $(CFmA}90@;(B $(CH8:9=CE3(B $(C$(C@;(B $(CCD<-(B $(C0hF8.(B $(CEM(B ------------ - -$(C@L8F=:0!(B, $(C8m7I@;(B $(CD!4B(B $(CF8.(B -$(CEM(B"$(C6s0m(B $(C:R8.4B(B $(C:s(B $(CEM?!(B $(CD#(B $(C8m7I@;(B $(C:8?)A]4O4Y(B. $(C8^>F8.(B $(CEM4B(B $(CH-8i@G(B $(C9Y4Z(B -$(CAY@T4O4Y(B. - - -* $(C9f=D(B $(CAY(B ---------- - -$(C8^>F8.(B $(CEM@G(B $(C9Y7N(B $(C@-(B $(CAY@:(B "$(C9f=D(B $(CAY(B"$(C@L6s0m(B $(C:N8(4O4Y(B. $(C9f=D(B $(CAY@:(B $(C4Y@=0z(B -$(C00@:(B $(C=D@87N(B $(CG%=C5G>n(B $(C@V=@4O4Y(B. - ---:** TUTORIAL.ko (Fundamental)--L670--58%---------------- - -$(C@L(B $(CAY?!4B(B $(C@L8F=:3*(B $(CFmA}GO0m(B $(C@V4B(B $(C1[?y@G(B $(C;sH2?!(B $(C4kGQ(B $(C@/?kGQ(B $(CA$:80!(B -$(C0#Aw5G>n(B $(C@V=@4O4Y(B. - -$(CFD@O(B $(C@L8'@L(B $(C9+>y@;(B $(C@G9LGO4BAv4B(B $(C@L9L(B $(C>K0m(B $(C@V=@4O4Y(B--$(C1W(B $(C0M@:(B $(CC#>R4x(B -$(CFD@O@T4O4Y(B. -NN%--$(C4B(B $(C1[?y?!<-@G(B $(CGv@g(B $(C@'D!8&(B $(C0!8.E54O4Y(B; $(C@L4B(B $(CH-8i(B -$(C2@4k1b(B $(C@'7N(B NN $(CF[<>F.@G(B $(C1[?y@L(B $(C@V@=@;(B $(C@G9LGU4O4Y(B. $(CFD@O@G(B $(C2@4k1b0!(B -$(CH-8i?!(B $(C@V@88i(B --00%-- $(C4k=E?!(B --Top--$(C@L6s0m(B $(CG%=C5K4O4Y(B. $(C1[?y@G(B -$(C9X9Y4Z@L(B $(CH-8i?!(B $(C@V@88i(B --Bot--$(C@L6s0m(B $(CG%=C5K4O4Y(B. $(C1[?y@L(B $(C>FAV(B $(C@[>F<-(B -$(C8p5g(B $(C3;?k@L(B $(CH-8i?!(B $(C4Y(B $(C3*E83*8i(B $(C9f=D(B $(CAY?!4B(B --All--$(C@L6s0m(B $(CG%=C5K4O4Y(B. - -$(C0E@G(B $(C>U:N:P?!(B $(C@V4B(B $(C:0(B $(C9.@Z5i@:(B $(C1[?y@L(B $(C:/0f5G>z@=@;(B $(C@G9LGU4O4Y(B. $(CFD@O(B -$(C9f9.(B $(CAwHD3*(B $(C0%9+8.(B $(CAwHD?!4B(B $(C1W(B $(C0w?!(B $(C:0(B $(C9.@Z0!(B $(C>x0m(B $(C4k=C(B $(C9.@Z88(B -$(C@V=@4O4Y(B. - -$(C9f=D(B $(CAY@G(B $(C0}H#(B $(C9.@Z>H@:(B $(C>n62(B $(CFmA}(B $(C9f=D@;(B $(C;g?kGO0m(B $(C@V4B0!8&(B -$(C>K7AA]4O4Y(B. $(C>VCJ(B $(C9f=D@:(B Fundamental$(C7N<-(B $(CAv1](B $(C;g?k5G0m(B $(C@V4B(B -$(C9f=D@T4O4Y(B. $(C@L4B(B "$(CAV(B $(C9f=D(B"$(C@G(B $(CGQ(B $(C?9@T4O4Y(B. - -$(C@L8F=:?!4B(B $(CAV(B $(C9f=D@L(B $(C89@L(B $(C@V=@4O4Y(B. $(C1W(B $(CA_(B $(C8n0!Av4B(B $(C4Y8%(B $(C>p>n(B $(C6G(B/$(C6G4B(B -$(C4Y8%(B $(CA>7y@G(B $(C1[?y@;(B $(CFmA}GO557O(B $(CGO4B5%(B $(C>2@L8g(B, Lisp $(C9f=D(B, Text $(C9f=D(B -$(C5n5n@L(B $(C@V=@4O4Y(B. $(CGW;s(B $(CGQ(B $(C0!Av(B $(CAV(B $(C9f=D88@L(B $(C@{?k5G8g(B $(CAv1](B -"Fundamental"$(C@L6s0m(B $(C@{Gt(B $(C@V4B(B $(C0w?!(B $(CG%=C5K4O4Y(B. - -$(C0"0"@G(B $(CAV(B $(C9f=D@:(B $(C8n8n(B $(C8m7I5i@L(B $(C@[5?@;(B $(C4^8.GO557O(B $(C5G>n(B $(C@V=@4O4Y(B. $(C?98&(B -$(C5i>n(B, $(CGA7N1W7%?!4B(B $(C<38m9.@;(B $(C885e4B(B $(C8m7I@L(B $(C@V4B5%(B, $(CGA7N1W7%(B $(C>p>n5i@:(B -$(C<38m9.@G(B $(CG|EB@;(B $(C0"0"(B $(C4^8.(B $(CGO1b(B $(C6'9.?!(B $(C0"0"@G(B $(CAV(B $(C9f=D@:(B $(C<38m9.@;(B $(C<-7N(B -$(C4Y8#0T(B $(C3"?v(B $(C3V557O(B $(C5G>n(B $(C@V=@4O4Y(B. $(C8p5g(B $(CAV(B $(C9f=D@:(B $(CH.@e(B $(C8m7I@G(B $(C@L8'@;(B -$(C;g?kGO9G7N<-(B $(C1W(B $(C9f=D@87N(B $(C>y9Y2Y4B(B $(C0M@L(B $(C=10T(B $(C@N=D5I(B $(Cy9Y2Y4B(B $(C8m7I@T4O4Y(B. - -$(C@L(B $(CFD@O0z(B $(C00@:(B $(CGQ1[(B $(C1[?y@;(B $(CFmA}GO7A0m(B $(CGQ4Y8i(B Text $(C9f=D@;(B $(C>24B(B $(C0M@L(B -$(CAA@;(B $(C0M@T4O4Y(B. ->> M-x text mode$(C@;(B $(CCD(B $(C:8=J=C?@(B. - -$(CAv1]1nAv(B $(C9h?n(B $(C@L8F=:(B $(C8m7I5i@:(B $(C89@L(B $(C4^6sAvAv(B $(C>J@84O(B $(C0FA$GOAv(B $(C>J>F55(B -$(C5K4O4Y(B. $(C1W7/3*(B M-f$(C?M(B M-b$(C0!(B $(C>U@[@:5{?HG%8&(B $(C398;@G(B $(C@O:N7N(B $(CC38.GT@;(B -$(C0|B{GR(B $(CU@[@:5{?HG%8&(B $(C398;(B $(C:P8.(B $(C9.@Z7N(B $(CCk1^GO?4=@4O4Y(B. - -$(CAV(B $(C9f=D@:(B $(C:8Ek(B $(C4Y@=0z(B $(C00@:(B $(C9L9&GQ(B $(C:/H-8&(B $(CCJ7!GU4O4Y(B: $(C4k:N:P@G(B $(C8m7I5i@:(B -$(C0"0"@G(B $(CAV(B $(C9f=D?!<-(B "$(C00@:(B $(C@O(B"$(C@;(B $(CGOAv88(B $(C>`0#(B $(C4Y8#0T(B $(C@[5?GQ4Y(B. - -$(CGv@g@G(B $(CAV(B $(C9f=D?!(B $(C4kGQ(B $(C9.<-H-8&(B $(C:80m@Z(B $(CGO8i(B C-h m$(C@;(B $(CD!=J=C?@(B. - ->> C-u C-v$(C8&(B $(C8n(B $(C9x(B $(CCD<-(B $(C@L(B $(CAY@;(B $(CH-8i@G(B $(C2@4k1bBk@87N(B $(C?rAw@L=J=C?@(B. ->> C-h m$(C@;(B $(CCD<-(B Text $(C9f=D0z(B Fundamental $(C9f=D@G(B $(CBw@LA!@;(B $(C:8=J=C?@(B. ->> C-x 1$(C@;(B $(CCD<-(B $(C9.<-H-8&(B $(CH-8i?!<-(B $(C>x>V=J=C?@(B. - -$(CAV(B $(C9f=D@:(B $(C:N(B $(C9f=D@L(B $(C@V1b(B $(C6'9.?!(B $(CAV(B $(C9f=D@L6s0m(B $(C:N8(4O4Y(B. $(C:N(B $(C9f=D@:(B $(CAV(B -$(C9f=D@;(B $(C13CF4O6s(B $(CAV(B $(C9f=D@;(B $(C:NBw@{@87N(B $(C2Av(B $(C>J@;(B $(C5(B $(C5(B $(CFAV(B $(C@/?kGQ(B $(C:N(B $(C9f=DA_(B, $(CGQ1[(B $(C1[?y@;(B $(CFmA}GR(B $(C6'(B $(C@ZAV(B $(C;g?k5G4B(B Auto Fill -$(C9f=D@L(B $(C@V=@4O4Y(B. $(C@L(B $(C9f=D@L(B $(CDQA.(B $(C@V@;(B $(C6'(B $(C@L8F=:4B(B, $(CAY@L(B $(C3J9+(B $(C3P>nAv8i(B -$(C1[?y@L(B $(C3"?vA|?!(B $(C5{6s(B $(C398;;g@L?!<-(B $(C@Z5?@87N(B $(CAY9Y2^@;(B $(CGU4O4Y(B. - -Auto Fill $(C9f=D@;(B $(CDQ1b(B $(C@'GX<-4B(B M-x auto-fill-mode$(C@;(B $(CD(4O4Y(B. -$(C@L(B $(C9f=D@L(B $(CDQA.(B $(C@V@88i(B M-x auto-fill-mode$(C@;(B $(CCD<-(B $(C2x(B $(C> M-x auto fill mode$(C@;(B $(CAv1](B $(CCD(B $(C:8=J=C?@(B. $(C1W8.0m(B "asdf "$(C6s4B(B - $(CAY@;(B $(C0hn<-(B $(C1W(B $(CAY@L(B $(C5Q7N(B $(C3*45557O(B $(CGO=J=C?@(B. Auto Fill - $(C9f=D@:(B $(C0x0#(B $(C9.@Z?!<-88(B $(CAY9Y2^@;(B $(CGO1b(B $(C6'9.?!(B $(C2@(B $(C0x0#(B $(C9.@Z0!(B $(C5i>n(B - $(C@V>n>_(B $(CGU4O4Y(B. - -$(CGQ0h4B(B $(C:8Ek(B 70$(C03@G(B $(C9.@Z7N(B $(CA$GXA.(B $(C@VAv88(B C-x f $(C8m7I@87N(B $(C1W(B $(C0M@;(B $(C:/0fGR(B -$(C_(B $(CGU4O4Y(B. - ->> 20$(C@L6s4B(B $(C@NJ=@4O4Y(B. $(C1W(B $(C4\6t@;(B $(C4Y=C(B $(CC$?l1b(B $(C@'GX<-4B(B $(C1t9Z@L0!(B $(C4\6t(B $(C>H?!(B $(C@V4B(B -$(C;sEB?!<-(B M-q (Meta$(C> $(C1t9Z@L8&(B $(C@L@|(B $(C4\6t@87N(B $(C?rAw@N(B $(CHD(B M-q$(C8&(B $(CD!=J=C?@(B. - -* $(CC#1b(B ------- - -$(C@L8F=:4B(B $(C1[?y@G(B $(C>UBJ@L3*(B $(C5^BJ@87N(B $(C9.@Z?-@;(B ($(C9.@Z?-@:(B $(C?,H?!(B $(CC#1b0!(B -$(C@L7g>nAv0m(B $(C@V4Y4B(B $(C0M@;(B $(C@G9LGU4O4Y(B. - -$(CC#1b8&(B $(C=C@[=CE04B(B $(C8m7I@:(B $(C>UBJ@87N(B $(CC#1b0!(B C-s$(C@L0m(B $(C5^BJ@87N(B $(CC#1b0!(B -C-r$(C@T4O4Y(B. $(C1W7/3*(B $(C@a1q(B $(C1b4Y8.=J=C?@(B! $(CAv1](B $(C@L0M@;(B $(C=C55GX(B $(C:8Av(B -$(C86=J=C?@(B. - -C-s$(C8&(B $(CD!8i(B $(C8^>F8.(B $(CEM?!(B, $(C1f@b@L7N(B "I-search"$(C6s4B(B $(C9.@Z?-@L(B $(C3*E83*4B(B $(C0M@;(B -$(C:<(B $(C$(C@:(B $(CC#1b8&(B -$(C86D(4O4Y(B. - ->> $(C@LA&(B C-s$(C8&(B $(CCD<-(B $(CC#1b8&(B $(C=C@[GO=J=C?@(B. $(CC5C5Hw(B, $(CGQ(B $(C9x?!(B $(CGQ(B $(C1[@Z>?(B - 'cursor'$(C6s0m(B $(CD!8i<-(B $(C0"0"@G(B $(C9.@Z8&(B $(CD#(B $(CHD(B $(C1t9Z@L?!(B $(C>n62(B $(C@O@L(B $(C@O>n(B - $(C3*4B0!8&(B $(C@/@GGO=J=C?@(B. - $(C@LA&(B "cursor"$(C8&(B $(CGQ(B $(C9x(B $(CC#@:(B $(C0M@T4O4Y(B. ->> C-s$(C8&(B $(C4Y=C(B $(CCD<-(B $(C4Y@=?!(B $(C3*E83*4B(B "cursor"$(C8&(B $(CC#@8=J=C?@(B. ->> $(C@Z(B, $(C@LA&4B(B $(C8&(B $(C3W(B $(C9x(B $(CCD<-(B $(C1t9Z@L0!(B $(C>n6;0T(B $(C?rAw@L4B0!8&(B - $(C:8=J=C?@(B. ->> $(C@;(B $(CCD<-(B $(CC#1b8&(B $(C3!3;=J=C?@(B. - -$(C>n62(B $(CGv;s@L(B $(C@O>n3*4BAv8&(B $(C:8>R=@4O1n(B? $(CAu0!@{(B $(CC#1b?!<-(B $(C@L8F=:4B(B $(C1W6'1nAv(B -$(CE8@ZGQ(B $(C9.@Z?-@;(B $(CC#@87A0m(B $(CGU4O4Y(B. '$(C1t9Z@L(B'$(C0!(B $(C@V4B(B $(C4Y@=(B $(C@ex@88i(B $(C@L8F=:4B(B $(C;`K7A(B $(CAV8g(B C-g$(C7N55(B $(CC#1b8&(B $(C3!3>(B $(Cn62(B $(C?n?5(B $(CC<0h?!<-4B(B C-s$(C8&(B $(CD!8i(B $(CH-8i@;(B $(C5?0a=CDQ<-(B, $(C@L8F=:0!(B $(C>F9+(B -$(CCb7B55(B $(CGOAv(B $(C>J4B(B $(C0M@;(B $(C:<(B $(C0f?l0!(B $(C@V=@4O4Y(B. $(C@L0M@:(B "$(CHe8'(B $(CA&>n(B"$(C6s0m(B -$(C:R8.?l4B(B $(C?n?5(B $(CC<0h@G(B "$(CF/B!(B"$(C@L(B C-s$(C8&(B $(C0!7NC$<-(B $(C@L8F=:8&(B $(CEkGX(B $(C@|4^5GAv(B -$(C>J557O(B $(CGO1b(B $(C6'9.@T4O4Y(B. C-q$(C8&(B $(C4)8#8i(B $(CH-8i@L(B $(CGXA&5K4O4Y(B. $(C1W8.0m(B $(C3*<-(B -$(C@L8F=:(B $(C<38m<-@G(B "Spontaneous Entry to Incremental Search"$(C6s4B(B $(C4\?x@;(B -$(C:88i(B $(C@L71(B "$(CF/B!(B"$(C@;(B $(C>n6;0T(B $(CCk1^GR(B $(Cp@;(B $(C@P@;(B $(C$(C8&(B $(CD!8i(B $(CC#1b(B $(C9.@Z?-@G(B $(C86Av87(B $(C9.@Z0!(B -$(CAv?vAv0m(B $(CC#1b4B(B $(C86Av87@87N(B $(CC#>R4x(B $(C0w?!(B $(C5G59>F(B $(C0!4B(B $(C0M@;(B $(C:<(B $(Cn(B, "c"$(C0!(B $(C>n5p?!(B $(CC3@=@87N(B $(C3*?@4BAv8&(B $(C:81b(B $(C@'GX<-(B -"c"$(C8&(B $(CCF4Y0m(B $(CGU=C4Y(B. $(C@LA&(B "u"$(C8&(B $(CD!8i(B $(C1t9Z@L4B(B "cu"$(C0!(B $(CC3@=@87N(B $(C3*?@4B(B -$(C0w@87N(B $(C?rAw@O(B $(C0M@T4O4Y(B. $(C@LA&(B $(C8&(B $(CD!=J=C?@(B. $(C1W7/8i(B $(CC#1b(B -$(C9.@Z?-?!<-(B "u"$(C0!(B $(CAv?vAv0m(B $(C1t9Z@L4B(B "c"$(C0!(B $(CC3@=(B $(C3*?B(B $(C0w@87N(B $(C5G59>F(B -$(C0)4O4Y(B. - -$(CC#1bA_?!(B $(CA&>n(B $(C9.@Z3*(B meta $(C9.@Z8&(B $(CD!8i(B ($(C?9?\0!(B $(C@VAv88(B--$(CC#1b?!<-(B $(CF/:0GQ(B -$(C@G9L8&(B $(C0.4B(B C-s$(C3*(B C-r$(C0z(B $(C00@:(B $(C9.@Z5i(B) $(CC#1b4B(B $(C3!3*9v834O4Y(B. - -C-s$(C4B(B $(C1t9Z@L@G(B $(CGv@g(B $(C@'D!(B $(C4Y@=?!(B $(C9_0_5G4B(B $(CC#1b(B $(C9.@Z?-@;(B $(CC#557O(B -$(C=C@[=CE54O4Y(B. $(C@L@|?!(B $(C3*?B(B $(C1[?y?!<-(B $(C9+>p0!8&(B $(CC#@87A8i(B C-r$(C8&(B $(CD(4O4Y(B. -C-s$(C?!(B $(C@{?k5G4B(B $(C8p5g(B $(C;gGW@:(B $(C9fGb88(B $(C9Y2n>z@;(B $(C;S(B $(C8p5N(B C-r$(C?!(B $(C@{?k5K4O4Y(B. - -* $(C4YA_(B $(CC"(B ---------- - -$(C@L8F=:@G(B $(C1&Bz@:(B $(CF/B!(B $(CA_@G(B $(CGO3*7N(B $(CGQ(B $(C03(B $(C@L;s@G(B $(CC"@;(B $(C5?=C?!(B $(CH-8i?!(B $(CG%=CGR(B -$(C> $(C1t9Z@L8&(B $(C@L(B $(CAY7N(B $(C?rAw?)<-(B C-u 0 C-l$(C@;(B $(CCD(B $(C:8=J=C?@(B. - ->> C-x 2$(C8&(B $(CCD<-(B $(CH-8i@;(B $(C5N(B $(CC"@87N(B $(C3*4)=J=C?@(B. - $(C5N(B $(CC"@:(B $(C@L(B $(CAvD'<-8&(B $(CH-8i(B $(CG%=CGU4O4Y(B. $(C1t9Z@L4B(B $(C@-(B $(CC"?!(B $(C@V=@4O4Y(B. - ->> C-M-v$(C8&(B $(CCD<-(B $(C9Y4Z(B $(CC"@;(B $(C5N7g8;1b(B $(CGO=J=C?@(B. - (Meta$(Cx@88i(B ESC C-v$(C8&(B $(CD!=J=C?@(B.) - ->> C-x o ("o"$(C4B(B "other"$(C@G(B $(CC9(B $(C1[@Z(B)$(C8&(B $(CCD<-(B $(C1t9Z@L8&(B $(C9Y4Z(B $(CC"@87N(B - $(C?rAw@L=J=C?@(B. ->> $(C9Y4Z(B $(CC"?!<-(B C-v$(C?M(B M-v$(C8&(B $(C=a<-(B $(C5N7g8;1b(B $(CGO=J=C?@(B. - $(C@L(B $(CAv=C8&(B $(C@P4B(B $(C0M@:(B $(C2@4k1b(B $(CC"?!<-(B $(CGU4O4Y(B. - ->> C-x o$(C8&(B $(C4Y=C(B $(CCD<-(B $(C1t9Z@L8&(B $(C4Y=C(B $(C2@4k1b(B $(CC"@87N(B $(C?rAw@L=J=C?@(B. - $(C2@4k1b(B $(CC"?!<-(B, $(C1t9Z@L4B(B $(C@|?!(B $(C@V4x(B $(C0w@87N(B $(C0%(B $(C0M@T4O4Y(B. - -C-x o$(C8&(B $(C0hy9Y2Y1b8&(B $(CGR(B $(Cy@L(B -$(CC3@=?!(B $(C?@4B0!0!(B $(C9.A&5GAv(B $(C>J=@4O4Y(B. - -META$(Cx>n<-(B ESC$(Cn_(B $(CGO8g(B $(CA&>nJ=@4O4Y(B. $(C1W(B -$(C@L@/4B(B ESC$(C@L(B $(C:/0fF4O6s(B $(C@ZC<7N<-(B $(C1b4I@;(B $(C0!Ax(B $(C9.@Z@L1b(B $(C6'9.@T4O4Y(B. - ->> C-x 1$(C@;(B ($(C@L(B $(C2@4k1b(B $(CC"?!<-(B) $(CCD<-(B $(C9Y4Z(B $(CC"@;(B $(C>x>V=J=C?@(B. - -($(C9Y4Z(B $(CC"?!<-(B C-x 1$(C@;(B $(CD!8i(B $(C2@4k1b(B $(CC"@L(B $(C>x>nAz(B $(C0M@T4O4Y(B. $(C@L(B $(C8m7I@;(B "$(CGQ(B -$(CC"88(B $(C:8A8GO=C?@(B--$(CAv1](B $(C@[>wA_@N(B $(CC"88(B"$(C@L6s0m(B $(C;}0"GO=J=C?@(B.) - -$(C>gBJ(B $(CC"?!(B $(C00@:(B $(C;g@LD-@;(B $(CH-8i(B $(CG%=CGR(B $(CGJ?d4B(B $(C>x=@4O4Y(B. $(CGQ(B $(CC"?!<-(B C-x -C-f$(C7N(B $(CFD@O@;(B $(CC#@88i(B $(C4Y8%(B $(CC"@:(B $(C:/H-0!(B $(C>x=@4O4Y(B. $(C0"0"@G(B $(CC"?!<-(B $(CFD@O@;(B -$(C5683@{@87N(B $(CC#@;(B $(C> C-x 4 C-f$(C8&(B $(CD!0m(B $(CFD@O(B $(C@L8'(B $(CGO3*8&(B $(CCD(B $(C:8=J=C?@(B. - $(C@87N(B $(C3!3;=J=C?@(B. $(C1W(B $(CFD@O@L(B $(C9Y4Z(B $(CC"?!(B $(C3*E83*4B(B $(C0M@;(B - $(C:8=J=C?@(B. $(C1t9Z@L55(B $(C1W(B $(C0w@87N(B $(C?rAw@T4O4Y(B. - ->> C-x o$(C8&(B $(CCD<-(B $(C4Y=C(B $(C2@4k1b(B $(CC"@87N(B $(C59>F(B $(C0!<-(B C-x 1$(C7N(B $(C9Y4Z(B $(CC"@;(B - $(CAv?l=J=C?@(B. - - -* $(CH81M@{(B $(CFmA}(B $(CU5Z?!(B $(C@V4B(B $(CK(B $(Cn(B, -(Fundamental) $(C4k=E?!(B [(Fundamental)]$(C@L6s0m(B $(CG%=C5I(B $(C6'(B $(C@T4O4Y(B. - -$(C@L(B $(CH81M@{(B $(CFmA}(B $(Cn(B $(C3*1b(B $(C@'GX<-4B(B ESC ESC ESC$(C@;(B $(CD(4O4Y(B. -$(C@L(B $(C0M@:(B $(C4Y8q@{(B "$(C9~>n3*1b(B" $(C8m7I@T4O4Y(B. $(CC_0!5H(B $(CC"@;(B $(C>x>V0E3*(B $(C@[@:(B -$(C;g@LD-?!<-(B $(C3*?@1b(B $(C@'GX<-55(B $(C;g?k5I(B $(C> M-x$(C8&(B $(CCD<-(B $(C@[@:(B $(C;g@LD-@87N(B $(C5i>n(B $(C0!=J=C?@(B; $(C1W8.0m4B(B ESC ESC ESC$(C@;(B - $(CCD<-(B $(C:|A.(B $(C3*?@=J=C?@(B. - -C-g$(C8&(B $(C=a<-4B(B $(CH81M@{(B $(CFmA}(B $(Cn3/(B $(Cx=@4O4Y(B. $(C1W(B $(C@L@/4B(B C-g$(C0!(B -$(CH81M@{(B $(CFmA}(B $(Cr1b(B ---------------------- - -$(C@L(B $(CAvD'<-?!<-4B(B $(C@L8F=:(B $(C;g?k@;(B $(C=C@[GO1b?!(B $(CCf:PGQ(B $(CA$:88&(B $(CA&0xGO7A0m(B -$(C3k7BGO?4=@4O4Y(B. $(C@L8F=:?!4B(B $(C3J9+3*(B $(C89@:(B $(C1b4I@L(B $(C@V>n<-(B $(C?)1b<-4B(B $(C8p5N(B $(C4Y(B -$(C<38mGR(B $(Cx=@4O4Y(B. $(C1W7/3*(B, $(C@L8F=:?!4B(B $(C4Y8%(B $(C89@:(B $(C@/?kGQ(B $(CF/B!5i@L(B -$(C@V>n<-(B $(C@L8F=:?!(B $(C4kGX<-(B $(C4u(B $(C89@L(B $(C9h?l0m(B $(C=M@;(B $(C0M(B $(C@T4O4Y(B. $(C@L8F=:4B(B $(C@L8F=:(B -$(C8m7I?!(B $(C4kGQ(B $(C9.<-H-8&(B $(C@P@;(B $(Cn7y@G(B $(C55?r8;@;(B -$(C0!8#E04B(B $(C9.@Z8&(B $(CD(4O4Y(B. $(C@|Gt(B $(C;}0"@L(B $(C>J3*8i(B C-h ?$(C8&(B $(CCD<-(B, $(C@L8F=:0!(B -$(C>n62(B $(CA>7y@G(B $(C55?r8;@;(B $(CA&0xGR(B $(CF9+71(B $(C55?r8;@L(B $(CGJ?d>x4Y0m(B $(CFG4\5G8i(B C-g$(C8&(B $(CCD<-(B $(CCkn62(B $(C0w?!<-4B(B C-h$(C@G(B $(C@G9L8&(B $(C:/0f=CDQ(B $(C3u=@4O4Y(B. $(C1W5i@L(B $(C8p5g(B $(C;g?k@Z?!0T(B -$(C@L785m(B $(C@O0}@{@N(B $(CA6C38&(B $(CCkGX<-4B(B $(C>J5G4B(B $(C0M@L9G7N(B $(C@L0M@:(B $(C?n?5(B $(CC<0h(B -$(C0|8.@Z?!0T(B $(C:RFrGR(B $(CK828;@;(B $(CH-8i(B $(CG%=CGOAv(B $(C>J@88i(B $(C:RFr@L(B $(CGX0a5I(B $(C6'1nAv4B(B F1 $(C1[$(C@;(B $(C4k=E(B $(C;g?kGO557O(B $(CGO=J=C?@(B.) - -$(C0!@e(B $(C1b:;@{@N(B $(C55?r8;(B $(CF/B!@:(B C-h c $(C@T4O4Y(B. C-h$(C8&(B $(CD!0m(B $(C9.@Z(B c$(C8&(B $(CD#(B $(CHD(B -$(C8m7I(B $(C9.@Z3*(B $(C8m7I(B $(CFAV(B $(C0#4\GQ(B $(C<38m@;(B $(CH-8i(B $(CG%=CGU4O4Y(B. - ->> C-h c $(CA&>nK828;@:(B $(C4Y@=0z(B $(C00@:(B $(C=D@L>n>_(B $(CGU4O4Y(B. - - C-p runs the command previous-line - -$(C@L4B(B "$(C1b4I@G(B $(C@L8'(B"$(C@;(B $(C8;GX(B $(CA]4O4Y(B. $(C1b4I(B $(C@L8'@:(B $(C@L8F=:8&(B $(C@Z1b(B $(CCkGb?!(B -$(C8B0T(B $(C>20E3*(B $(CH.@eGR(B $(C6'(B $(CAV7N(B $(C;g?k5K4O4Y(B. $(C1W7/3*(B $(C1b4I(B $(C@L8'5i@:(B $(C1W(B $(C8m7I@L(B -$(C>n62(B $(C@O@;(B $(CGO4BAv8&(B $(C>K(B $(CFAV(B $(C0#4\GQ(B -$(C9.<-H-7N55(B -- $(C?)EB1nAv(B $(C9h?n(B $(C8m7I5i@;(B $(C1b>oGO4B5%(B $(CCf:PGR(B $(CA$557N(B -- -$(C;g?k5I(B $(Cv$(C?M(B $(C00@:(B $(C4YA_(B -$(C9.@Z(B $(C8m7I5i55(B C-h c$(C@G(B $(C4Y@=?!(B $(C?C(B $(Cr1b(B $(C@'GX<-4B(B C-h c $(C4k=E?!(B C-h k$(C8&(B -$(C;g?kGO=J=C?@(B. - ->> C-h k $(CA&>nz@88i(B C-x 1$(C7N(B $(C55?r8;(B $(C1[?y@;(B $(C>x>[4O4Y(B. $(C4g@e?!(B $(C>x>Y(B -$(CGJ?d4B(B $(C>x=@4O4Y(B. $(C55?r8;(B $(C1[?y@;(B $(CB|A6GO8i<-(B $(CFmA}@;(B $(CGO4Y0!(B C-x 1$(C@;(B $(CCD55(B -$(C5K4O4Y(B. - -$(C?)1b?!(B $(C6G4Y8%(B $(C@/?kGQ(B C-h$(C@G(B $(CC_0!(B $(C<1EC@L(B $(C@V=@4O4Y(B: - - C-h f $(C1b4I(B $(C1b> C-h f previous-line$(C@;(B $(CCD(B $(C:8=J=C?@(B. - $(C1W7/8i(B $(C@L8F=:0!(B C-p $(C8m7I@L(B $(CA&0xGO4B(B $(C1b4I?!(B $(C4kGQ(B $(C8p5g(B $(CA$:88&(B $(C@Nn(B(apropos). $(CGY=I>n8&(B $(CD!8i(B $(C@L8F=:0!(B $(C@L(B - $(CGY=I>n0!(B $(C5i>n(B $(C@V4B(B $(C8p5g(B $(C8m7I5i@G(B $(C8q7O@;(B $(C@[<:GR(B - $(C0M@T4O4Y(B. $(C@L(B $(C8m7I5i@:(B $(C8p5N(B Meta$(Cn62(B $(C8m7I5i?!(B $(C4kGX<-4B(B $(C00@:(B $(C8m7I@;(B $(C=GG`GO4B(B, - $(CGQ5N03@G(B $(C9.@Z7N(B $(C5H(B $(Cn0!(B - $(C@[<:GU4O4Y(B. - ->> C-h a file$(C@;(B $(CCD(B $(C:8=J=C?@(B. - -$(C1W7/8i(B $(C@L8'?!(B "file"$(C@L(B $(C5i>n(B $(C@V4B(B $(C8p5g(B M-x $(C8m7I5i@G(B $(C8q7O@L(B $(C@[<:5G?)(B -$(C4Y8%(B $(CC"?!(B $(CH-8i(B $(CG%=C5K4O4Y(B. find-file$(C0z(B $(C00@:(B $(C8m7I5i?!4B(B C-x C-f$(C?M(B $(C00@:(B -$(C9.@Z(B $(C8m7I@G(B $(C8q7O@L(B $(CGX4gGO4B(B $(C8m7I@G(B $(C?7?!(B $(C@[<:5G>n(B $(C@V4B(B $(C0M@;(B $(C:<(B $(C> C-M-v$(C8&(B $(CCD<-(B $(C55?r8;(B $(CC"@;(B $(C5N7g8;1b(B $(CGO=J=C?@(B. $(C@L8&(B $(C8n(B $(C9x(B $(CGO=J=C?@(B. - ->> C-x 1$(C@;(B $(CCD<-(B $(C55?r8;(B $(CC"@;(B $(CAv?l=J=C?@(B. - - C-h i $(C?B6s@N(B $(C<38m<-8&(B $(C@P1b(B ($(CAo(B Info). $(C@L(B $(C8m7I@:(B - `*info*'$(C6s4B(B $(CF/:0GQ(B $(C;g@LD-?!<-(B $(C=C=:E[?!(B $(C<3D!5H(B - $(C2Y7/9L@G(B $(C?B6s@N(B $(C<38m<-8&(B $(C:8?)A]4O4Y(B. m emacs - <$(C:91M$(C8&(B $(CD!8i(B $(C@L8F=:(B $(C<38m<-8&(B $(C@P@;(B $(Cn(B $(C:;(B $(C@{@L(B $(C>x@88i(B ?$(C8&(B $(CD!=J=C?@(B. $(C1W7/8i(B - $(C@L8F=:0!(B Info $(C9f=D@L(B $(C>n62(B $(C1b4I@L(B $(C@V4B(B $(CAv8&(B $(C>H3;GO4B(B - $(C?)G`@L(B $(C=C@[5K4O4Y(B. $(C@L(B $(CAvD'<-8&(B $(C@|:N(B $(C86D!8i(B $(C@L8F=:@G(B - Info $(C<38m<-8&(B $(CAV5H(B $(C9.<-H-7N(B $(C;}0"GX<-(B $(C@P>n>_(B $(CGU4O4Y(B. - -* $(C0a7P(B ------- - -$(C@L8F=:8&(B $(C?O@|Hw(B $(C3*0!1b(B $(C@'GX<-4B(B C-x C-c$(C8&(B $(C>44Y4B(B $(C;g=G@;(B $(C1b>oGO=J=C?@(B. -$(C@O=C@{@87N(B $(CA60!:q7N(B $(C3*0!<-(B $(CHD?!(B $(C4Y=C(B $(C@L8F=:?!(B $(C5G59>F(B $(C?C(B $(CnA3@89G7N(B -$(C:R:P8mGQ(B $(C;gGW@L(B $(C9_0_5G8i(B $(C>I>F<-(B $(C@Z1b(B $(C@Z=E@;(B $(CE?GOAv(B $(C8;0m(B $(C:RFrGO=J=C?@(B! - - -$(C:9;g(B $(CA60G(B ---------- - -$(C@L(B $(CAvD'<-4B(B Stuart Cracraft$(C>>0!(B $(C@L8F=:(B $(C1Y?x(B $(C@Z7a8&(B $(C@'GX(B $(C>4(B, $(C1d(B $(C@L8F=:(B -$(CAvD'<-8&(B $(C8pC<7N(B $(CGO?)(B $(C@[<:5H(B $(C0M@L4Y(B. - -GNU $(C@L8F=:?M(B $(C00@L(B $(C@L(B $(CAvD'<-(B $(CFG@:(B $(C@z@[1G@L(B $(C@V@88g(B $(CF/A$GQ(B $(CA60G@;(B $(C88A7GR(B -$(C6'?!(B $(C:9;g:;@;(B $(C9hFwGR(B $(Cn62(B $(C8EC<7N5gAv(B $(C9^@:(B $(C1W4k7N8&(B $(C:9;gGO0E3*(B - $(C:9;g:;@L(B $(C4Y8%(B $(C@L?!0T(B $(C9hFw5G4B(B $(C0M@L(B $(CGc?k5H4Y(B. - - $(C@L(B $(C9.<-@G(B $(Cn8&(B $(C>20m(B $(C885i0m(B $(C0x@/GT@87N=a(B $(Cn(B -$(C9fGX8&(B ("$(C betekent: houd de CONTROL-toets ingedrukt en tik de toets - Dus C-f wordt: houd de CONTROL-toets ingedrukt en tik f. - M- betekent: houd de META-, EDIT- of ALT-toets ingedrukt en tik - de toets . Als er geen toets META, EDIT of ALT is, kun - je ook eerst de ESC-toets tikken, gevolgd door . We - verwijzen naar de ESC-toets als . - -BELANGRIJK: om Emacs te verlaten, tik C-x C-c (twee tekens). -De tekens ">>" tegen de linkerkantlijn nodigen je uit om een bepaald -commando te proberen. Bijvoorbeeld: -<> -[Lege regels om didactische redenen. Hieronder gaat het verder.] ->> Tik nu C-v (volgend scherm) om naar het volgende scherm te gaan. - (Geef nu het commando door de CONTROL-toets ingedrukt te - houden terwijl je de v tikt.) Vanaf nu moet je dit steeds - herhalen als je klaar bent met het lezen van een scherm. - -Merk op dat er een overlapping van twee regels is als je van een -scherm naar het volgende gaat; dat zorgt voor continuïteit bij het -lezen van de tekst. - -Het eerste wat je moet weten, is hoe je je naar verschillende plaatsen -in de tekst kan bewegen. Je weet al hoe je een scherm vooruit moet -gaan: met C-v. Om een scherm terug te gaan, tik je M-v (houd de -META-toets ingedrukt en tik v, of tik v als je geen META-, EDIT- -of ALT-toets hebt). - ->> Probeer nu een paar keer M-v, steeds gevolgd door C-v. - - -* SAMENVATTING --------------- - -De volgende commando's zijn handig om volledige schermen te bekijken: - - C-v Ga een scherm vooruit - M-v Ga een scherm terug - C-l Maak het scherm schoon en teken alle tekst opnieuw, - waarbij de regel waarop de cursor staat, op het - midden van het scherm terecht komt. (C-l is - CONTROL-L, niet CONTROL-1.) - ->> Kijk waar de cursor staat, en onthoud de tekst er omheen. Tik C-l. - Zoek de cursor en merk op dat hij nog steeds bij dezelfde tekst - staat. - -Als je toetsenbord PageUp- en PageDn-toetsen heeft dan kun je deze ook -gebruiken om een scherm terug dan wel vooruit te gaan, maar het werken -met C-v en M-v is efficiënter. - - -* BASISCOMMANDO'S CURSORBEWEGINGEN ----------------------------------- - -Het is handig om je per scherm te bewegen, maar hoe beweeg je je nu -naar een specifieke plaats op het scherm? - -Er is een aantal manieren waarop je dit kan doen. Je kan de -pijltjestoetsen gebruiken, maar het is efficiënter om je handen in de -standaardhouding te laten, en de commando's C-p, C-b, C-f en C-n te -gebruiken. Elk van deze commando's verplaatst de cursor precies een -regel of teken in een bepaalde richting op het scherm. Hier volgt een -figuur met de vier commando's en de richting waarin ze de cursor -bewegen: - - vorige regel, C-p - : - : - achteruit, C-b .... huidige cursorpositie .... vooruit, C-f - : - : - volgende regel, C-n - ->> Verplaats, met C-n of C-p, de cursor naar de middelste regel van de - figuur. Tik dan C-l om de hele figuur in het midden van het - centrum te plaatsen. - -Met een beetje kennis van het Engels zijn deze commando's gemakkelijk -te onthouden: de p komt van "previous" (vorige), de n van "next" -(volgende), de b van "backward" (achteruit) en de f van "forward" -(vooruit). Dit zijn de basiscommando's om de cursor te bewegen, dus -je zult ze VOORTDUREND gebruiken: het is vooruitziend als je ze nu -leert te gebruiken. - ->> Tik een paar keer C-n om de cursor op deze regel te krijgen. - ->> Beweeg je binnen de regel met C-f (herhaaldelijk) en terug omhoog - met C-p. Let op wat C-p doet als de cursor midden in een regel - staat. - -Elke regel eindigt met een Newline-teken (het Engelse "new line" -betekent "nieuwe regel"); dit teken scheidt elke regel van de -volgende. De laatste regel in een bestand zou eigenlijk ook met een -Newline moeten eindigen (maar dat is niet noodzakelijk voor Emacs). - ->> Probeer C-b aan het begin van een regel. De cursor zal zich naar - het eind van de vorige regel bewegen, omdat je achteruit over het - Newline teken gaat. - -Net als C-b kan ook C-f zich over Newline-tekens heen bewegen. - ->> Tik nog een aantal keren het commando C-b, zodat je een gevoel - krijgt waar de cursor is. Tik dan enkele keren C-f om de cursor - terug naar het einde van de regel te bewegen. Een verder C-f - commando beweegt de cursor dan naar de volgende regel. - -Wanneer je de cursor voorbij het begin of het einde van het scherm -beweegt, zal de tekst over het scherm heen schuiven. Dit heet -"scrollen", of "schuiven" in goed Nederlands. Door te scrollen zorgt -Emacs ervoor dat de cursor de gewenste beweging kan maken zonder dat -de cursor van het scherm af beweegt. - ->> Probeer de cursor voorbij de onderkant van het scherm te bewegen - met C-n en zie wat er gebeurt. - -Als de beweging per teken te langzaam gaat, kan je de cursor ook per -woord bewegen. M-f (META-f) beweegt de cursor een woord vooruit en -M-b een woord achteruit. - ->> Tik enkele keren M-f en M-b. - -Als je midden in een woord staat, beweegt M-f de cursor naar het eind -van het woord. Als je op een witte ruimte tussen twee woorden staat, -beweegt M-f de cursor naar het eind van het volgende woord. Het -commando M-b beweegt de cursor analoog de andere kant op. - ->> Tik enkele keren M-f en M-b en daar tussendoor een paar maal C-f en - C-b, zodat je ziet wat M-f en M-b doen vanaf bepaalde plaatsen in - een woord en tussen twee woorden. - -Merk op dat er een analogie bestaat tussen enerzijds C-f en C-b en -anderzijds M-f en M-b. Het is bij veel commando's zo dat META-tekens -gebruikt worden om iets te doen in eenheden van de taal (woorden, -zinnen, alinea's) terwijl CONTROL-tekens te maken hebben met dingen -die los staan van wat je aan het bewerken bent (tekens, regels, enz.). - -Deze analogie gaat ook op voor regels en zinnen: C-a en C-e bewegen de -cursor naar het begin of eind van een regel, terwijl met M-a, -respectievelijk M-e, de cursor naar het begin, respectievelijk het -eind, van een zin gaat. - ->> Tik enkele keren C-a, en dan een enkele keren C-e. - Tik een paar maal M-a, en dan enkele keren M-e. - -Bemerk hoe herhaalde C-a commando's niets doen, terwijl herhaalde M-a -commando's de cursor steeds een zin achteruit bewegen. Alhoewel ze -niet volledig overeenkomen, is het gedrag van beide heel natuurlijk. - -De plaats van de cursor in de tekst wordt "punt" genoemd (zonder -lidwoord, "point" in het Engels). Anders gezegd: de cursor laat op -het scherm de plek zien waar punt in de tekst staat. - -Nu volgt een samenvatting van eenvoudige cursorbewegingen, met -inbegrip van de commando's die de cursor per woord of zin bewegen: - - C-f Ga een teken vooruit - C-b Ga een teken achteruit - - M-f Ga een woord vooruit - M-b Ga een woord achteruit - - C-n Ga naar de volgende regel - C-p Ga naar de vorige regel - - C-a Ga naar het begin van de regel - C-e Ga naar het eind van de regel - - M-a Ga terug naar het begin van de zin - M-e Ga vooruit naar het eind van de zin - ->> Probeer al deze commando's een paar keer als oefening. Deze - commando's worden het vaakst gebruikt. - -Er zijn nog twee belangrijke cursorbewegingen: M-< (META kleiner-dan) -beweegt de cursor naar het begin van het bestand, en M-> (META -groter-dan) beweegt hem naar het eind. - -Op de meeste toetsenborden zit de '<' boven de komma, zodat je de -Shift-toets (ook wel bekend als de hoofdlettertoets) moet gebruiken om -het '<'-teken in te tikken. Op deze toetsenborden moet je ook de -shift gebruiken om M-< in te tikken: zonder shift zou je M-, (META -komma) tikken. - ->> Tik nu M-< om naar het begin van dit bestand te gaan. - Gebruik daarna C-v om hier weer terug te komen. - ->> Tik nu M-> om naar het eind van het bestand te springen. - Gebruik daarna M-v om hier weer terug te komen. - -Als je toetsenbord pijltjestoetsen heeft, kan je die ook gebruiken om -de cursor te verplaatsen. We raden je aan om C-b, C-f, C-n en C-p te -leren, om drie redenen. Ten eerste werken ze op alle toetsenborden, -ook die zonder pijltjestoetsen. Ten tweede zul je merken dat wanneer -je eenmaal wat ervaring hebt opgedaan in de omgang met Emacs, het -gebruik van de CONTROL-tekens sneller is dan werken met de -pijltjestoetsen (omdat je handen in de normale tikpositie kunnen -blijven). Ten derde, als je eenmaal gewend bent aan deze commando's -met CONTROL-tekens, kan je makkelijk andere gevorderde -cursorbewegingscommando's leren. - -De meeste Emacs-commando's accepteren een numeriek argument. Voor de -meeste commando's is dit argument het aantal keren dat het commando -herhaald moet worden. Je geeft dit numerieke argument aan met C-u en -vervolgens de cijfers van het getal, vóór het commando. Als je -toetsenbord een META- (of EDIT- of ALT-) toets heeft, is er ook een -andere manier om het getal aan te geven: tik de cijfers terwijl je de -META toets ingedrukt houdt. We raden je aan de C-u manier te leren -omdat die beschikbaar is op elke terminal. - -Bijvoorbeeld, C-u 8 C-f beweegt de cursor 8 plaatsen naar voren. - ->> Probeer eens om met C-n of C-p en een numeriek argument de cursor - met slechts een commando naar een regel in de buurt van deze zin te - bewegen. - -Voor de meeste commando's is het numerieke argument het aantal keren -dat het commando herhaald moet worden. Voor sommige commando's -betekent het echter iets anders. Verschillende commando's (die je -totnogtoe niet geleerd hebt) gebruiken het als een vlag -- de -aanwezigheid van een prefix-argument, ongeacht zijn waarde, maakt dat -het commando iets anders doet. - -C-v en M-v vormen een andere uitzondering. Met een numeriek argument -verschuiven deze commando's de tekst het aangegeven aantal regels in -plaats van (bijna) een heel scherm. Bijvoorbeeld, C-u 4 C-v -verschuift de tekst 4 regels. - ->> Probeer nu C-u 8 C-v. - -Daarmee zou je tekst 8 regels opgeschoven moeten zijn. Als je terug -omlaag wil scrollen, kan je M-v een argument geven. - -Als je een scherm met vensters gebruikt, zoals X Windows of -MS-Windows, zou je een grote rechthoek moeten zien aan de linkerkant -van het Emacs-venster. Deze rechthoek heet een schuifbalk -("scrollbar"). Je kan de tekst scrollen door met de muis in de -schuifbalk te klikken. - ->> Klik met de middelste muisknop bovenaan het heldere gebied in de - schuifbalk. Dit zou de tekst moeten verschuiven naar een positie - die afhankelijk is van hoe hoog of laag je klikt. - ->> Beweeg de muis op en neer terwijl je de middelste muisknop - ingedrukt houdt. Je zal zien dat de tekst met de muis mee heen en - weer scrollt. - - -* ALS EMACS HANGT ------------------ - -Als Emacs niet meer op commando's reageert, kan je het veilig -onderbreken door C-g te tikken. Je kan C-g gebruiken om een commando -te stoppen als het te lang duurt om uit te voeren. - -Je kan C-g ook gebruiken om een numeriek argument te verwijderen of om -het begin van een commando dat je niet wilt afmaken, te verwijderen. - ->> Tik nu C-u 100 om een numeriek argument te maken met de waarde 100, - en tik dan C-g. Tik vervolgens C-f. Het zou de cursor maar één - positie mogen verplaatsen, omdat je het argument verwijderd hebt - met C-g. - -Als je per ongeluk een tikt, kan je dat ongedaan maken met het -commando C-g. - - -* UITGESCHAKELDE COMMANDO'S ---------------------------- - -Sommige Emacs-commando's zijn uitgeschakeld zodat beginnende -gebruikers ze niet per ongeluk kunnen uitvoeren. - -Als je een van de uitgeschakelde commando's intikt, laat Emacs uitleg -zien over het commando dat je gegeven hebt, en vraagt of je het -werkelijk wil uitvoeren. - -Wanneer je het commando echt wil uitvoeren, tik dan (de -spatiebalk) als antwoord op de vraag. Normaal wil je het commando -niet uitvoeren en beantwoord je de vraag met "n" (van "no" of "nee"). - ->> Tik C-x C-l (een uitgeschakeld commando), en tik dan n als antwoord - op de vraag. - - -* VENSTERS ----------- - -Emacs kan meerdere vensters laten zien, elk venster met zijn eigen -tekst. We zullen later uitleggen hoe je met meerdere vensters om kan -gaan. Op dit moment willen we slechts uitleggen hoe je van extra -vensters af kunt komen en terug kan keren naar het werken met één -venster. Het is eenvoudig: - - C-x 1 Een enkel venster (dat wil zeggen: verwijder alle - andere vensters). - -Het commando is CONTROL-x gevolgd door het cijfer 1. C-x 1 vergroot -het venster waar de cursor in staat tot het hele scherm. Alle andere -vensters worden verwijderd. - ->> Zet de cursor op deze regel en tik C-u 0 C-l. ->> Tik nu C-h k C-f. - Zie hoe dit venster kleiner is geworden, terwijl een nieuw venster - verschijnt om de documentatie van het C-f commando te laten zien. - ->> Tik nu C-x 1 en zie het documentatievenster verdwijnen. - -Dit commando is anders dan de commando's die je tot nu toe geleerd -hebt aangezien het uit twee tekens bestaat. Het begint met het teken -CONTROL-x. Er zijn een heleboel commando's die met CONTROL-x -beginnen. Veel van die commando's hebben te maken met vensters, -bestanden, buffers, en gelijkaardige dingen. Dergelijke commando's -bestaan uit twee, drie of vier tekens. - - -* TOEVOEGEN EN WEGHALEN ------------------------ - -Als je tekst toe wil voegen, tik je die eenvoudigweg in. Tekens die -je kan zien, zoals A, 7, * en dergelijke, worden door Emacs als tekst -geïnterpreteerd en meteen aan de tekst toegevoegd. Tik (de -"volgende regel"-toets) om een Newline toe te voegen en dus een nieuwe -regel te beginnen. - -Je kan het laatste teken dat je hebt ingetikt weghalen door -te tikken. is een toets op het toetsenbord -- dezelfde -toets die je normaal gesproken gebruikt, buiten Emacs, om het laatst -ingetikte teken te wissen. Het is meestal een grote toets, een paar -rijen boven de -toets, waar "Delete", "Del" of "Backspace" op -staat. - -Als er op die grote toets "Backspace" staat, dan is dat degene die je -gebruikt voor . Er kan op een andere plaats ook nog een -andere toets zijn waarop "Delete" staat, maar dat is niet . - -In het algemeen haalt het teken weg dat juist voor de -cursorpositie staat. - ->> Probeer dit nu: tik een paar letters en haal ze weer weg door een - paar keer op te drukken. Maak je niet druk over het feit - dat dit bestand verandert; je zal niets veranderen aan de originele - versie van deze inleiding. Je zit slechts je eigen kopie te - wijzigen. - -Als een regel tekst te lang wordt om helemaal op het scherm getoond te -worden, dan gaat hij verder op de volgende schermregel. Een backslash -("\") in de rechtermarge (of, als je een scherm met vensters gebruikt, -een kleine gebogen pijl) laat dan zien dat de regel op de volgende -schermregel verder gaat. - ->> Voeg nu tekst toe totdat je de rechter kantlijn raakt, en blijf - toevoegen. Je zal zien dat er een vervolgregel verschijnt. - ->> Tik weer enkele keren om zoveel tekens weg te halen tot - de regel weer op een schermregel past. De vervolgregel zal - verdwijnen. - -Je kan een Newline zoals elk ander teken verwijderen. Als je een -Newline verwijdert, voeg je de twee regels waar de Newline tussen -staat samen tot een enkele regel. Als de regel die het resultaat is -van deze operatie niet op een schermregel past, zal hij getoond worden -met een vervolgregel. - ->> Beweeg de cursor naar het begin van een regel en tik . - Dit voegt de huidige en vorige regel samen. - ->> Tik om de Newline die je net verwijderd hebt weer toe te - voegen. - -Je herinnert je dat je bij de meeste Emacs-commando's het aantal keren -op kan geven, dat ze herhaald moeten worden. Dit geldt ook voor -gewone tekens. Als je een gewoon teken herhaalt, wordt dat teken -herhaaldelijk toegevoegd. - ->> Probeer dat nu: tik C-u 8 * om ******** toe te voegen. - -Je hebt nu de eenvoudigste manier geleerd om iets in Emacs te tikken -en fouten te verbeteren. Je kan tekst ook per woord of regel -verwijderen. Hier volgt een samenvatting van de commando's om tekst -te verwijderen: - - Haal het teken weg dat voor de cursor staat - C-d Haal het teken weg dat achter de cursor staat - - M- Verwijder het woord dat voor de cursor staat - M-d Verwijder het woord dat achter de cursor staat - - C-k Verwijder alles van de cursor tot het eind van de regel - M-k Verwijder alles van de cursor tot het eind van de zin - -Merk op dat en C-d, met M- en M-d de analogie -verder trekken, die begon met C-f en M-f (waarbij we voor het gemak -even vergeten dat niet echt een CONTROL-teken is). C-k en -M-k lijken enigzins op C-e en M-e in hun relatie tot regels en zinnen. - -Je kunt ook op één uniforme manier een willekeurig deel van de tekst -verwijderen. Beweeg daartoe naar één kant van het gedeelte dat je -wilt verwijderen en tik C-@ of C-. ( is de spatiebalk.) -Beweeg daarna naar de andere kant en tik C-w. Dat verwijdert alle -tekst tussen de twee posities. - ->> Beweeg de cursor naar de J aan het begin van de vorige alinea. ->> Tik C-. Emacs toont nu de mededeling "Mark set" ("Markering - geplaatst") onderaan het scherm. ->> Plaats de cursor op de n van "kant" op de tweede regel van de - alinea. ->> Tik C-w. Dit zal de tekst vanaf de J tot vlak voor de n - verwijderen. - -Er is een verschil tussen iets weghalen en iets verwijderen: iets dat -je hebt verwijderd, kan je terugbrengen, maar iets dat je hebt -weggehaald niet. (In het Engels is het verschil tussen "killing" en -"deleting" duidelijker dan tussen de Nederlandse vertalingen -"verwijderen" en "weghalen".) Verwijderde tekst terughalen heet -"yanken". In het algemeen geldt dat de commando's die meer tekst dan -een enkel teken, Newline of spatie verwijderen, deze tekst bewaren -zodat hij geyankt kan worden, terwijl dat niet geldt voor commando's -die slechts een enkel teken weghalen. - ->> Zet de cursor op het begin van een regel die niet leeg is. - Tik C-k om de tekst op die regel te verwijderen. ->> Tik C-k een tweede keer. Nu verwijdert dit commando het - Newline-teken. - -Merk op hoe een enkel C-k commando de inhoud van een regel verwijdert, -een tweede C-k commando de regel zelf zodat alle volgende regels een -regel omhoog komen. Het numerieke argument is voor C-k bijzonder: het -aangegeven aantal regels zal worden verwijderd, inclusief de inhoud. -Dit is meer dan simpelweg herhaling: C-u 2 C-k verwijdert twee regels, -terwijl tweemaal C-k tikken dat niet doet. - -Om de laatst verwijderde tekst terug te halen naar de plaats waar de -cursor nu op staat (te yanken), tik C-y. - ->> Probeer het nu: tik C-y om de tekst te yanken. - -Het is alsof je met C-y iets uit de prullenbak haalt wat je net had -verwijderd. Merk op dat verschillende C-k's achter elkaar alle regels -die verwijderd worden, bij elkaar bewaart zodat een enkele C-y die -regels in een keer terugbrengt. - ->> Probeer het nu: tik C-k een paar keer. - -Om de verwijderde tekst terug te halen: - ->> Tik C-y. Beweeg de cursor enkele regels naar beneden en tik weer - C-y. Je ziet nu hoe je tekst kan kopiëren. - -Wat moet je doen als je wat tekst terug wilt brengen, maar je intussen -al iets anders verwijderd hebt? C-y zou datgene terugbrengen wat je -het recentst hebt verwijderd. Gelukkig is de voorgaande tekst niet -verloren gegaan. Je kunt die tekst terughalen met M-y. Nadat je C-y -hebt getikt om de recentst weggegooide tekst terug te halen, vervangt -M-y die tekst met de tekst die je daarvoor had weggegooid. Je kunt -M-y herhalen om tekst terug te halen die je al langer geleden hebt -weggegooid. Als je de tekst te pakken hebt die je zocht, hoef je -niets te doen om die daar te houden. Je kan gewoon verder werken en -de teruggehaalde tekst met rust laten. - -Als je M-y vaak genoeg tikt kom je terug waar je begon, bij de laatst -verwijderde tekst. - ->> Verwijder een regel, beweeg de cursor wat, en verwijder nog een - regel. Tik C-y om de tweede regel die je verwijderde, terug te - halen. Tik nog een M-y en die regel wordt vervangen door de eerste - regel die je verwijderde. Tik nog enkele keren M-y en zie wat er - langs komt. Herhaal dit tot de tweede regel weer langs komt, en - dan nog een paar keer. Je kan ook experimenteren met positieve en - negatieve argumenten bij M-y. - - -* HERSTELLEN ------------- - -Als je de tekst veranderd hebt en je daar toch niet tevreden mee bent, -dan kan je de verandering ongedaan maken met het herstelcommando, C-x -u. - -Normaal gesproken herstelt C-x u de veranderingen die het gevolg zijn -van een enkel commando; door herhaaldelijk C-x u te tikken, worden -steeds eerdere commando's hersteld. - -Er zijn echter twee uitzonderingen: commando's die de tekst niet -wijzigen, zoals cursorbewegingen, worden overgeslagen, en commando's -die simpelweg het ingetikte teken aan de tekst toevoegen, worden -meestal gegroepeerd in groepjes van maximaal 20 tekens, zodat je -minder vaak het commando C-x u hoeft te tikken om teksttoevoegingen te -herstellen. - ->> Gooi deze regel weg met C-k; met C-x u zou hij weer moeten - verschijnen. - -C-_ is een alternatief voor C-x u. Het levert exact hetzelfde -resultaat op, maar is makkelijker om een paar keer achter elkaar te -tikken. Een nadeel van C-_ is dat op sommige toetsenborden het -intikken ervan niet gebruiksvriendelijk is. Dat is ook de reden voor -het alternatief, C-x u. Op sommige terminals kan je C-_ tikken door -"/" te tikken terwijl je de CONTROL-toets ingedrukt houdt. - -Een numeriek argument bij C-_ of C-x u duidt het aantal herhalingen -aan. - - -* BESTANDEN ------------ - -Om een tekst die je gemaakt of veranderd hebt op te slaan, moet je de -tekst in een bestand stoppen ("to save a file" in het Engels). Als je -dat niet doet, ben je die veranderingen kwijt op het moment dat je -Emacs verlaat. Je kan een bestand veranderen door het bestand te -"bezoeken". (Ook wel "vinden"; "finding" of "visiting" in het -Engels.) - -Een bestand bezoeken betekent dat je de inhoud van dat bestand in -Emacs ziet. Het lijkt er dan op alsof je het bestand aan het -veranderen bent. Deze veranderingen zijn echter slechts tijdelijk -zolang je het bestand niet opslaat. Op deze manier kan je nooit per -ongeluk een half gewijzigd bestand op het systeem achterlaten. Zelfs -als je het bestand opslaat, zorgt Emacs ervoor dat het originele -bestand onder een gewijzigde naam nog steeds beschikbaar is, voor het -geval je later besluit dat de veranderingen toch niet zo goed waren. - -Bij de onderkant van het scherm zie je een regel die begint en eindigt -met streepjes, met aan het begin "-1:-- TUTORIAL.nl" of iets -dergelijks. Dit deel van het scherm laat normaal de naam van het -bestand zien dat je op dat moment bezoekt. Op dit moment bezoek je -een bestand dat "TUTORIAL.nl" heet; het is je eigen kopie van de -Nederlandstalige Emacs-inleiding ("tutorial" in het Engels). Als je -in Emacs een bestand bezoekt dan staat de naam van het bestand altijd -op deze plaats. - -Iets bijzonders aan het commando om een bestand te bezoeken, is dat je -aan moet geven welk bestand je wil. Dit heet dat het commando "een -argument van de gebruiker vraagt"; in dit geval de naam van het -bestand. Nadat je het commando - - C-x C-f Bezoek bestand (met de f van "find file"). - -hebt getikt vraagt Emacs om de naam van het bestand. De naam die je -intikt verschijnt op de onderste regel van het scherm. Wanneer die -regel voor dit soort invoer gebruikt wordt, heet hij de minibuffer. -Je kan gewone Emacs commando's gebruiken om de bestandsnaam te -veranderen. - -Tijdens het invoeren van de bestandsnaam (of om het even welke invoer -in de minibuffer) kan je het commando afbreken met C-g. - ->> Tik C-x C-f gevolgd door C-g. Dit commando breekt de minibuffer af - en ook het C-x C-f commando dat van de minibuffer gebruik maakte. - Het resultaat is dat je geen bestand bezoekt. - -Als je de naam van een bestand hebt ingevoerd, tik dan om het -commando af te sluiten. Hierna gaat het C-x C-f commando aan het werk -en haalt het bestand op dat je aangegeven hebt. Als het C-x C-f -commando daarmee klaar is, verdwijnt de minibuffer. - -Na korte tijd verschijnt de inhoud van het bestand op het scherm en -kan je de inhoud wijzigen. Als je de wijzigingen op wilt slaan, tik -dan het commando - - C-x C-s Sla bestand op (met de s van "save file"). - -Dit commando slaat de tekst zoals Emacs die nu heeft in het bestand -op. De eerste keer dat je dit doet, slaat Emacs het originele bestand -onder een andere naam op, zodat het niet verloren gaat. De nieuwe -naam bestaat uit de oude bestandsnaam gevolgd door een "~". - -Als Emacs het bestand heeft opgeslagen, laat het de naam van het -bestand zien. Het is een goede gewoonte een bestand regelmatig op te -slaan zodat er niet teveel werk verloren gaat als het systeem hangt of -crasht. - ->> Tik C-x C-s, om je kopie van deze inleiding op te slaan. Als het - goed is verschijnt "Wrote ...TUTORIAL.nl" op de onderste - schermregel. - -OPMERKING: Op sommige systemen gebeurt er helemaal niets als je C-x -C-s tikt, en daarna ook niets meer. Dit komt door een eigenschap van -de machine waarop je werkt die te maken heeft met "flow control". Met -C-s stopt de "flow" en komt niets meer van wat je tikt bij Emacs -terecht. Om deze situatie te herstellen, tik C-q. Lees daarna het -hoofdstuk "Spontaneous Entry to Incremental Search" in het -Emacs-handboek over hoe je moet omgaan met deze situatie. - -Je kan een bestaand bestand bezoeken om het te bekijken of het te -wijzigen. Je kan ook een bestand bezoeken dat nog niet bestaat. Dit -is de manier om met Emacs een nieuw bestand te maken: bezoek het -bestand, dat eerst leeg zal zijn, en voeg tekst toe. Zodra je de -tekst opslaat, wordt het bestand werkelijk gecreëerd, met de tekst als -inhoud. Vanaf dat moment ben je dus bezig met een bestaand bestand. - - -* BUFFERS ---------- - -Als je een tweede bestand bezoekt met C-x C-f, blijft het eerste -bestand gewoon in Emacs. Je kan naar dat bestand terug door het -gewoon nog een keer te bezoeken met C-x C-f. Op deze manier kan je -een behoorlijk aantal bestanden in Emacs krijgen. - ->> Creëer een bestand dat "foo" heet door te tikken: C-x C-f foo - . Voeg hieraan wat tekst toe, wijzig hem, en sla "foo" op - door C-x C-s te tikken. Tik hierna C-x C-f TUTORIAL om - weer hier, in de inleiding, terug te komen. - -Emacs bewaart intern de tekst van elk bestand in een ding dat een -"buffer" genoemd wordt. Als je een bestand bezoekt wordt er een -nieuwe buffer gemaakt. Om een lijst van de huidige buffers te zien, -tik - - C-x C-b Laat de bufferlijst zien - ->> Probeer C-x C-b nu. - -Bemerk dat elke buffer een naam heeft en mogelijk ook een -bestandsnaam; dit is de naam van het bestand waarmee de buffer -overeenkomt. ALLE tekst die je in een Emacs venster ziet is altijd -onderdeel van een of andere buffer. - ->> Tik C-x 1 om de bufferlijst te verwijderen. - -Wanneer je met meerdere buffers werkt, dan is op elk moment slechts -één van die buffers "actueel". De actuele buffer is degene die je aan -het bewerken bent. Als je een andere buffer wilt bewerken, dan moet -je daarnaar "omschakelen". Als je wilt omschakelen naar een buffer -die overeenkomt met een bestand, dan kun je dit doen door dat bestand -opnieuw te bezoeken met C-x C-f. Er is ook een makkelijkere manier: -gebruik het commando C-x b. Dit commando vraagt je naar de naam van -de buffer. - ->> Tik C-x b foo om terug te gaan naar de buffer "foo" die de - tekst van het bestand "foo" bevat. Tik vervolgens C-x b TUTORIAL - om terug te komen naar deze Emacs-inleiding. - -Meestal is de naam van de buffer gelijk aan de naam van het bestand -(minus de naam van de directory). Dit klopt echter niet altijd. De -lijst met buffers die je maakt met C-x C-b laat je altijd de naam van -elke buffer zien. - -ALLE tekst die je ziet in een venster van Emacs is altijd onderdeel -van een of andere buffer. Sommige buffers komen niet overeen met een -bestand. De buffer genaamd "*Buffer List*" heeft bijvoorbeeld geen -bijbehorend bestand. Deze buffer bevat de lijst met buffers die je -gemaakt hebt met C-x C-b. Ook de buffer "*Messages*" heeft geen -geassocieerd bestand; deze buffer bevat de mededelingen die Emacs je -op de onderste regel toonde. - ->> Tik C-x b *Messages* om de buffer met mededelingen te - bekijken. Tik daarna weer C-x b TUTORIAL om terug te - keren naar deze buffer met de Emacs-inleiding - -Als je de tekst van het ene bestand verandert en dan een ander bestand -bezoekt, wordt het eerste bestand niet opgeslagen. De wijzigingen -blijven in Emacs, in de buffer die bij het bestand hoort. Het creëren -of veranderen van de buffer van het tweede bestand heeft geen effect -op de eerste buffer. Dit is erg nuttig, maar betekent ook dat er een -eenvoudige manier nodig is om het eerste bestand te bewaren. Het zou -erg vervelend zijn om er eerst naar terug te moeten gaan met C-x C-f -om het dan te kunnen bewaren met C-x C-s. Dus hebben we het commando: - - C-x s Sla een paar buffers op - -C-x s vraagt voor elke buffer die veranderingen heeft die nog niet -opgeslagen zijn, of je de buffer wilt bewaren. - ->> Voeg wat tekst toe en tik C-x s. - Emacs vraagt nu of je de buffer die TUTORIAL.nl heet wilt bewaren. - Beantwoord deze vraag positief door een "y" in te tikken (de y van - "yes", Engels voor "ja"). - - -* UITGEBREIDE COMMANDO'S ------------------------- - -Er zijn veel meer Emacs commando's dan er op de toetsen van het -toetsenbord passen, zelfs als we hun aantal kunnen vergroten door de -CONTROL- of META-toets te gebruiken. Emacs lost dit probleem op met -het X commando (met de X van eXtensie of uitbreiding). Het X commando -komt voor in twee smaken: - - C-x Tekenuitbreiding. Gevolgd door een teken. - M-x Commando-naam-uitbreiding. Wordt gevolgd door een naam. - -Deze commando's zijn in het algemeen nuttig, maar worden minder -gebruikt dan de commando's die je tot nu toe al geleerd hebt. Je hebt -al enkele van deze commando's gezien: C-x C-f om een bestand te -bezoeken en C-x C-s om het te bewaren, bijvoorbeeld. Een ander -voorbeeld is het commando om Emacs te verlaten: dit is C-x C-c. (Maak -je geen zorgen over het verloren gaan van veranderingen die niet -opgeslagen zijn; C-x C-c vraagt of je veranderde buffers wilt bewaren -voordat Emacs helemaal eindigt.) - -C-z is het commando om Emacs *tijdelijk* te verlaten, zodat je daarna -weer terug kan keren in dezelfde Emacs-sessie. - -Op systemen die deze mogelijkheid bieden, zet C-z Emacs stil: je komt -weer terug in de shell, maar Emacs is nog aanwezig. In de meeste -shells kan je Emacs weer activeren met het "fg" commando, of met -"%emacs". - -Op systemen die niet de mogelijkheid bieden om programma's stil te -zetten, creëert C-z een subshell onder Emacs om je zo in de -gelegenheid te stellen andere programma's uit te voeren en daarna weer -in Emacs terug te keren; Emacs wordt dus niet werkelijk verlaten. In -dit geval is het shellcommando "exit" de normale manier om de subshell -te verlaten en in Emacs terug te keren. - -Het moment om C-x C-c te gebruiken is wanneer je uit gaat loggen. Het -is ook het juiste commando om Emacs te beëindigen wanneer Emacs -opgestart was door een mail-programma of iets dergelijks, aangezien -die misschien niet met een stilgezette Emacs om kunnen gaan. Normaal -gezien is het echter beter Emacs stil te zetten met C-z dan om Emacs -te verlaten, behalve als je uit wilt loggen natuurlijk. - -Er bestaan vele C-x commando's. Hier is een lijst van degene die je -nu al kent: - - C-x C-f Bezoek bestand - C-x C-s Sla bestand op - C-x s Sla een paar buffers op - C-x C-b Laat bufferlijst zien - C-x b Schakel naar een buffer - C-x C-c Verlaat Emacs - C-x 1 Een enkel venster - C-x u Herstel - -Commando-naam-bevelen worden nog minder vaak gebruikt, of alleen onder -bepaalde omstandigheden. Een voorbeeld is het commando -replace-string, dat in de hele tekst een string vervangt door een -andere string ("to replace" betekent "vervangen"). Als je M-x tikt, -toont Emacs onderaan het scherm "M-x" en moet je de naam van het -commando intikken, in dit geval "replace-string". Als je gewoon -"repl s" tikt maakt Emacs de naam zelf af. Beëindig het commando -met . - -Het replace-string commando heeft twee argumenten nodig: de string die -vervangen moet worden en de string waarmee die vervangen moet worden. -Je sluit elk argument af met . - ->> Plaats de cursor op de lege regel twee regels onder deze regel. - Tik dan M-x repl sgewijzigdveranderd. - - Zie hoe deze regel daardoor gewijzigd is. Je hebt elk voorkomen - van het woord g-e-w-i-j-z-i-g-d vervangen door "veranderd"; te - beginnen op de plek waar de cursor staat. - - -* AUTOMATISCH BEWAREN ---------------------- - -Als je een bestand veranderd hebt maar het nog niet opgeslagen hebt, -zouden de veranderingen verloren kunnen gaan als het systeem zou -hangen of herstarten. Om je hiertegen te beschermen, slaat Emacs -regelmatig de veranderde tekst automatisch op. De naam van het -bestand waarin de tekst automatisch wordt opgeslagen begint en eindigt -met een #. Bijvoorbeeld, als je het bestand "hello.c" aan het -bewerken bent, wordt de tekst automatisch opgeslagen in een bestand -dat "#hello.c#" heet. Zodra je het bestand werkelijk opslaat, wordt -het automatisch opgeslagen bestand verwijderd. - -Als de computer crasht, kan je de automatisch opgeslagen tekst -terugkrijgen door het bestand gewoon te bezoeken (het originele -bestand, niet het automatisch opgeslagen), gevolgd door M-x -recover-file. Als Emacs vraagt om bevestiging, antwoord dan -met yes en de automatisch opgeslagen informatie wordt -teruggehaald. - - -* ECHO-GEBIED -------------- - -Als je een commando langzaam intikt, toont Emacs de tekens aan de -onderkant van het scherm in een deel dat het "echo-gebied" genoemd -wordt. Dit gebied omvat de onderste regel van het scherm. - - -* MODUS-REGEL -------------- - -De regel direct boven het echo gebied heet de "modusregel". De -modusregel ziet er ongeveer zo uit: - --1:** TUTORIAL.nl 62% L763 (Fundamental)----------------------- - -Deze regel geeft interessante informatie over Emacs en de tekst die je -aan het bewerken bent. - -Je weet al wat de bestandsnaam betekent: het is de naam van het -bestand dat je bezoekt. NN% geeft je huidige positie in de tekst aan: -NN procent van de tekst bevindt zich boven het scherm. Als het -bestand vanaf het begin op het scherm staat, staat er "Top" in plaats -van " 0%". Als het laatste stuk tekst op het scherm staat, zal er -"Bot" staan (van "bottom", "onderkant" in het Nederlands). Als de -tekst zo klein is dat hij volledig op het scherm past staat "All" in -de modus-regel. - -De L gevolgd door een getal geeft het nummer van de regel waarin punt -zich bevindt. - -De sterretjes aan het begin betekenen dat je de tekst veranderd hebt. -Direct na het bezoeken of opslaan staan er gewoon streepjes. - -In de modusregel staat tussen haakjes in welke modus je aan het werken -bent. De standaardmodus is de "Fundamental" modus, die je nu gebruikt -("fundamental" is "basis" in het Nederlands). Een dergelijke modus -heet een hoofdmodus ("major mode" in het Engels). - -Emacs heeft verschillende hoofdmodi. Sommige daarvan zijn bedoeld -voor het bewerken van verschillende talen of soorten tekst, zoals -bijvoorbeeld Lisp modus, Text modus, etc. Op elk moment is er altijd -precies een modus actief, en de naam daarvan staat in de modusregel, -op de plaats waar nu "Fundamental" staat. - -Elke hoofdmodus zorgt ervoor dat sommige commando's zich anders -gedragen. Zo bestaat er een commando om een commentaar in een -programma te tikken, en aangezien elke programmeertaal een ander idee -heeft over hoe commentaar eruit moet zien, moet elke hoofdmodus op een -andere manier het commentaar beginnen. Elke hoofdmodus is de naam van -een uitgebreid commando, en met dat commando schakel je om naar die -hoofdmodus. Zo is bijvoorbeeld M-x fundamental-mode het commando om -naar de basismodus om te schakelen. - -Als je Nederlandse of Engelse tekst wil gaan bewerken, zoals -bijvoorbeeld dit bestand, kan je beter "Text mode" gebruiken, de modus -om tekst in een gewone taal te bewerken: - ->> Tik M-x text-mode. - -Wees gerust; geen van de commando's die je geleerd hebt zorgen voor -grondige veranderingen in Emacs. Een van de dingen die je kan merken, -is bijvoorbeeld dat M-f en M-b nu apostrofs als onderdeel van een -woord beschouwen. In de vorige modus (Fundamental) behandelen M-f en -M-b de apostrof als ruimte tussen twee woorden. - -Het is gebruikelijk dat hoofdmodi dergelijke subtiele verschillen -hebben. De meeste commando's doen dus min of meer hetzelfde in elke -hoofdmodus. - -Met het commando C-h m kan je de documentatie over de huidige -hoofdmodus lezen. - ->> Gebruik C-u C-v een paar keer om deze zin in de buurt van de - bovenkant van het scherm te krijgen. ->> Tik C-h m om te zien hoe de tekstmodus verschilt van de basismodus. ->> Tik C-x 1 om de documentatie van het scherm te verwijderen. - -Hoofdmodi heten zo omdat er ook bijmodi zijn. Bijmodi zijn geen -alternatieven voor hoofdmodi; het zijn slechts kleine aanpassingen -daarvan. Elke bijmodus kan aan- of uitgezet worden, onafhankelijk van -andere bijmodi en onafhankelijk van de hoofdmodus. Het is dus -mogelijk geen bijmodi, één bijmodus of een willekeurige combinatie van -bijmodi te gebruiken. - -Een nuttige bijmodus voor het bewerken van tekst in een natuurlijke -taal, zoals het Nederlands, is Auto Fill modus ("auto fill" betekent -automatisch uitvullen). Wanneer deze modus aanstaat, breekt Emacs -automatisch een regel tussen twee woorden af als de regel te lang -wordt. - -Je kan Auto Fill modus aanzetten met M-x auto-fill-mode. Als -deze modus al aanstaat, kan je hem uitzetten met M-x -auto-fill-mode. Als de modus uitstaat, zet dit commando de -modus aan; als ze aanstaat, zet dit commando de modus uit. We zeggen -dat het commando de modus "schakelt" ("to toggle" in het Engels). - ->> Tik nu M-x auto-fill-mode. Tik nu vele malen "asdf " op - een regel zodat je kan zien dat de regel in tweeën gesplitst wordt. - Er moeten wel spaties tussen de woorden staan, omdat de Auto Fill - modus de regel alleen op spaties breekt. - -De rechterkantlijn staat meestal op 70 tekens, maar die kan je -veranderen met het C-x f commando. Dit commando accepteert een -numeriek argument om de gewenste kantlijn te verkrijgen. - ->> Tik C-x f met 20 als argument (C-u 20 C-x f). - Tik wat tekst en zie dat Emacs de regels afbreekt bij 20 tekens. - Zet de kantlijn nu terug op 70, dus met met C-u 70 C-x f. - -Als je de tekst midden in een regel verandert vult Auto Fill modus de -regel niet opnieuw. -Om een alinea opnieuw te vullen, tik M-q (META-q) terwijl de cursor in -de alinea staat. - ->> Plaats de cursor in de voorgaande alinea en tik M-q. - - -* ZOEKEN --------- - -Emacs kan tekenreeksen ("strings") zoeken, zowel volgend op de -cursorpositie, als eraan voorafgaand. Het zoeken naar een string -verplaatst de cursor naar de volgende plaats waar de gezochte string -voorkomt. - -Het zoekcommando van Emacs is anders dan de zoekcommando's van de -meeste tekstverwerkers; het zoekt incrementeel. Dit betekent dat het -zoeken gebeurt tijdens het intikken van de gezochte string. - -Het commando om het voorwaarts zoeken te starten is C-s (met de "s" -van "to search", zoeken); C-r start het achterwaarts zoeken (met de -"r" van "reverse" of achteruit). MAAR WACHT! Probeer ze nu nog niet. - -Als je C-s tikt verschijnt de string "I-search" in het echo-gebied. -Dit betekent dat Emacs bezig is met een "incremental search" -(incrementele zoekopdracht) en wacht op het intikken van de -zoekstring. beëindigt het zoeken. - ->> Tik nu C-s om het zoeken te starten. Tik nu, LANGZAAM, één letter - per keer, het woord "cursor", met een pauze na elke letter zodat je - kan zien wat er met de cursor gebeurt. Je hebt nu eenmaal naar het - woord "cursor" gezocht. ->> Tik nogmaals C-s, om naar het volgende voorkomen van het woord - "cursor" te zoeken. ->> Tik nu viermaal en let op de cursorbewegingen. ->> Tik om het zoeken te beëindigen. - -Zag je wat er gebeurde? Tijdens incrementeel zoeken probeert Emacs -naar de eerste plek te gaan waar de string staat die je tot dan toe -getikt hebt. Om naar de volgende plek te gaan, tik je C-s nog een -keer. Als er geen volgende plek is gevonden, biept Emacs en vertelt -je dat de zoekopdracht niets gevonden heeft ("failing" in het Engels). -C-g zou het zoeken ook afbreken. - -OPMERKING: Op sommige systemen gebeurt er helemaal niets als je C-s -tikt, en daarna ook niets meer. Dit komt door een eigenschap van de -machine waarop je werkt die te maken heeft met "flow control". Met -C-s stopt de "flow" en komt niets meer van wat je tikt bij Emacs -terecht. Om deze situatie te herstellen, tik C-q. Lees daarna het -hoofdstuk "Spontaneous Entry to Incremental Search" in het -Emacs-handboek over hoe je moet omgaan met deze situatie. - -Als je tijdens incrementeel zoeken tikt, zal je zien dat het -laatste teken dat je aan de zoekstring toegevoegd hebt, weggehaald -wordt en dat het zoeken teruggaat naar de voorgaande plaats. Als je -bijvoorbeeld begint met zoeken en je tikt een "c", dan ga je naar de -plaats waar de "c" het eerst voorkomt. Tik je vervolgens een "u", dan -gaat de cursor naar de plaats waar de string "cu" het eerst voorkomt. -Als je nu tikt, dan wordt de "u" van de zoekstring -afgehaald, en gaat de cursor terug naar de plaats waar hij stond -voordat je de "u" intikte, namelijk daar waar "c" het eerst voorkwam. - -Als je tijdens een zoekoperatie een CONTROL- of META-teken intikt, dan -wordt het zoeken beëindigd. Er zijn een paar uitzonderingen, namelijk -tekens die tijdens zoeken een speciale betekenis hebben, zoals C-s en -C-r. - -Met C-s begin je te zoeken naar de plaats waar de zoekstring voor het -eerst voorkomt NA de huidige cursorpositie. Als je iets wilt zoeken -dat eerder in de tekst moet voorkomen, gebruik dan C-r in plaats van -C-s. Alles wat we nu weten over C-s geldt ook voor C-r, alleen is de -zoekrichting omgedraaid. - - -* MEERDERE VENSTERS -------------------- - -Een van Emacs' aardige eigenschappen is dat je meerdere vensters op -het scherm kan laten zien. - ->> Zet de cursor op deze regel en tik C-u 0 C-l. - ->> Tik C-x 2 om het scherm in twee vensters op te splitsen. - Beide vensters laten deze inleiding zien; de cursor blijft in het - bovenste venster. - ->> Tik C-M-v om de tekst in het onderste venster te verschuiven. - (Als je geen META-toets hebt, tik dan C-v.) - ->> Tik C-x o (met de o van "other"; "ander" in het Nederlands) om de - cursor naar het andere venster te verplaatsen. - ->> Verschuif de tekst in het onderste venster, met C-v en M-v. - Zorg ervoor dat je deze inleiding in het bovenste venster leest. - ->> Tik weer C-x o om de cursor weer in het bovenste venster te zetten. - De cursor staat weer precies op de plaats waar hij stond toen je - het venster verliet. - -Je kan C-x o blijven gebruiken om van venster naar venster te gaan. -Elk venster heeft zijn eigen cursorpositie; de cursor is altijd enkel -zichtbaar in een daarvan. Alle normale commando's hebben betrekking -op het venster waarin de cursor staat. Dit venster is het -"geselecteerde venster" ("selected window" in het Engels). - -Het C-M-v commando is erg nuttig wanneer je tekst aan het bewerken -bent in het ene venster, terwijl je het andere venster als referentie -gebruikt. Je kan de cursor dan altijd in het venster houden waarin je -bezig bent, terwijl je met C-M-v door de tekst in het andere venster -loopt. - -C-M-v is een voorbeeld van een CONTROL-META teken. Als je een echte -META-toets hebt kan je C-M-v intikken door zowel CONTROL als META -ingedrukt te houden terwijl je v tikt. Het maakt niet uit in welke -volgorde je CONTROL en META indrukt; het gaat erom welke toetsen -ingedrukt zijn terwijl je tikt. - -Als je geen echte META-toets hebt kan je gebruiken; de volgorde -is dan wel belangrijk. Je moet dan eerst tikken, gevolgd door -CONTROL-v; CONTROL- v zal niet werken. Dit komt doordat -zelf een teken is, terwijl CONTROL en META dat niet zijn. - ->> Tik C-x 1 (in het bovenste venster) om het onderste venster te - laten verdwijnen. - -(Als je C-x 1 tikt in het onderste venster laat je het bovenste -verdwijnen. C-x 1 betekent zoveel als "ik wil maar 1 venster, en wel -dat venster waar de cursor nu in staat.") - -Je hoeft niet dezelfde buffer in beide vensters te hebben. Wanneer je -C-x C-f gebruikt om een bestand in één van de vensters te bezoeken, -zal het andere venster niet veranderen. Je kunt de vensters -onafhankelijk van elkaar gebruiken om bestanden te bezoeken. - -Hier is nog een manier om twee venster te krijgen die elk een andere -tekst laten zien: - ->> Tik C-x 4 C-f gevolgd door de naam van een van je bestanden, - gevolgd door . Het opgegeven bestand zal in het onderste - venster verschijnen, en de cursor zal in dat venster staan. - ->> Tik C-x o om terug naar het bovenste venster te gaan, en C-x 1 om - het onderste venster te laten verdwijnen. - - -* RECURSIEVE BEWERKINGSNIVEAUS ------------------------------- - -Soms kom je in Emacs in een recursief bewerkingsniveau terecht -(Engels: "recursive editing level"). Dit is te zien in de modusregel -aan de vierkante haken die om de haakjes van de naam van de hoofdmodus -staan. Dan staat er bijvoorbeeld [(Fundamental)] in plaats van -(Fundamental). - -Tik Om uit een recursief bewerkingsniveau te komen. -Dit is een algemeen "ontsnappingscommando". Je kan het ook gebruiken -om extra vensters te verwijderen of om uit de minibuffer te komen. - ->> Tik M-x om in een minibuffer te komen, en tik dan - om er weer uit te komen. - -C-g is niet bruikbaar om uit een recursief bewerkingsniveau te komen. -De reden hiervoor is dat C-g gebruikt wordt om commando's af te breken -BINNEN het recursieve bewerkingsniveau. - - -* MEER INFORMATIE ------------------ - -We hebben geprobeerd je met deze inleiding precies genoeg informatie -te leveren om met Emacs te beginnen werken. De mogelijkheden van -Emacs zijn zo groot dat het onmogelijk is nu alles uit te leggen. Het -kan zijn dat je meer over Emacs wil leren omdat het zoveel nuttige -mogelijkheden heeft. Emacs heeft commando's om documentatie te laten -zien over Emacs commando's. Deze "helpcommando's" beginnen allemaal -met C-h: "het Hulpteken". - -Om hulp te krijgen tik je C-h, gevolgd door een teken om aan te duiden -welke hulp je wilt. Als je het echt niet meer weet, tik C-h ? en -Emacs vertelt welke hulp het allemaal te bieden heeft. Als je C-h -hebt getikt maar van gedachten veranderd bent, tik je gewoon C-g om -het af te breken. - -(In sommige installaties wordt de betekenis van C-h veranderd. Dat is -geen goed idee, zeker als die verandering op alle gebruikers invloed -heeft, en is een geldige reden om je beklag te doen bij de -systeembeheerder of de helpdesk. Als C-h intussen niet een bericht -onderaan het scherm laat zien over mogelijke hulp, probeer dan de F1 -toets (functietoets 1) of gebruik M-x help .) - -De eenvoudigste hulp is C-h c. Tik C-h, het teken "c" en een teken of -uitgebreid commando, en Emacs laat een zeer korte beschrijving van het -commando zien. - ->> Tik C-h c C-p. - -De beschrijving die getoond wordt, zou zoiets moeten zijn als: - - C-p runs the command previous-line - - (Nederlands: C-p voert het commando previous-line uit.) - -Dit commando vertelt je "de naam van de functie". Functies worden -vooral gebruikt om Emacs uit te breiden of aan de wensen van de -gebruiker aan te passen. Aangezien functienamen gekozen zijn om aan -te geven wat de functie doet, zijn ze ook geschikt als heel korte -documentatie; genoeg om je te herinneren aan wat de commando's die je -al geleerd hebt betekenen. - -Uitgebreide commando's zoals C-x C-s en (als je geen META-, EDIT- of -ALT-toets hebt) v kunnen ook getikt worden na C-h c. - -Om meer informatie over een commando te krijgen, tik C-h k in plaats -van C-h c. - ->> Tik C-h k C-p. - -Dit laat de documentatie van de functie, inclusief de naam van de -functie, in een apart venster zien. Als je klaar bent met lezen, tik -C-x 1 om van dat venster af te komen. Je hoeft dat natuurlijk niet -meteen te doen. Je kan ook eerst wat anders doen voordat je C-x 1 -tikt. - -Hier zijn nog wat nuttige mogelijkheden van C-h: - - C-h f Beschrijf een functie. Je moet de naam van de functie - intikken. - ->> Tik C-h f previous-line - Dit laat alle informatie zien die Emacs heeft over de functie die - het C-p commando implementeert. - -Een vergelijkbaar commando C-h v toont de documentatie van variabelen -die je kunt instellen om het gedrag van Emacs naar wens aan te passen. -Het commando vraagt je om de naam van een variabele. - - C-h a Commando Apropos. Tik een woord in en Emacs zal een - lijst van alle commando's laten zien waarin dat woord - voorkomt. Al deze commando's kunnen aangeroepen - worden met M-x. Bij sommige commando's staat met - welke tekens dit commando direct uitgevoerd kan - worden. - ->> Tik C-h a file. - -Dit laat in een ander venster alle M-x commando's zien met "file" in -hun naam. Je zal teken-commando's zien als C-x C-f naast de -overeenkomende commandonaam zoals find-file. - ->> Tik C-M-v herhaaldelijk om de tekst in het hulpvenster te - verschuiven. - ->> Tik C-x 1 om het hulpvenster te verwijderen. - - C-h i Lees de online handleidingen (ook wel Info genoemd). - Dit commando zet je in een speciale buffer genaamd - "*info*" waar je online handleidingen kunt lezen van - software die op je computer is geïnstalleerd. Tik m - Emacs om de handleiding van Emacs te lezen. - Als je nog nooit Info hebt gebruikt dan kun je ? - tikken zodat Emacs je een rondleiding geeft langs de - mogelijkheden van het Info systeem. Wanneer je klaar - bent met deze Emacs-inleiding dan kun je de - Emacs-Info-handleiding gebruiken als je primaire bron - van informatie. - - -* MEER MOGELIJKHEDEN --------------------- - -Je kunt meer over Emacs leren door haar handleiding te lezen. Deze is -zowel als boek als in elektronische vorm via Info beschikbaar (gebruik -het Help menu of tik h r). Kijk bijvoorbeeld eens naar -"completion", hetgeen minder tikwerk oplevert, of "dired" wat het -omgaan met bestanden vereenvoudigt. - -"Completion" (of "afmaken", in het Nederlands) is een manier om -onnodig tikwerk te voorkomen. Als je bijvoorbeeld naar de -"*Messages*" buffer wilt omschakelen, dan kun je C-x b *M tikken -en dan zal Emacs de rest van de buffernaam invullen voor zover dit -mogelijk is. Completion staat beschreven in de node "Completion" in -de Emacs-Info-handleiding. - -"Dired" toont je een lijst van bestanden in een directory, waarmee je -gemakkelijk bestanden kunt bezoeken, van naam kunt veranderen, kunt -wissen, of andere acties op uit kunt voeren. Informatie over Dired -kun je vinden in de node "Dired" van de Emacs-Info-handleiding. - - -* CONCLUSIE ------------ - -Denk eraan dat je met C-x C-c Emacs permanent verlaat. Om tijdelijk -een shell te krijgen en daarna weer in Emacs terug te komen, tik je -C-z. - -De bedoeling van deze inleiding is dat ze begrijpelijk is voor alle -nieuwe Emacs-gebruikers. Als je dus iets onduidelijks bent -tegengekomen, blijf dan niet zitten en maak jezelf geen verwijten. -Doe je beklag! - - -* KOPIËREN ------------ - -(De Engelse versie van) deze inleiding is voorafgegaan door een lange -reeks van Emacs-inleidingen, die begon met de inleiding die Stuart -Cracraft schreef voor de originele Emacs. Deze Nederlandse vertaling -is gemaakt door Pieter Schoenmakers op basis -van de GNU Emacs 20.2 TUTORIAL, en nagezien en verbeterd door Frederik -Fouvry en Lute Kamstra. - -(Wat nu volgt is een vertaling naar het Nederlands van de condities -voor gebruik en verspreiding van deze inleiding. Deze vertaling is -niet gecontroleerd door een jurist. Er kunnen derhalve geen rechten -aan de vertaling worden ontleend, en de vertaling wordt gevolgd door -het Engelse origineel.) - -Deze versie van de inleiding valt onder copyright, net als GNU Emacs. -Je mag deze inleiding verspreiden onder bepaalde voorwaarden: - -Copyright (C) 1985, 1996, 1997, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 Free Software Foundation, Inc. - - Iedereen mag letterlijke kopieën van dit document, zowel ontvangen - als verspreiden, op elk medium, vooropgesteld dat de - copyrightvermelding en de toestemmingsmelding niet veranderd worden - en dat de verspreider aan de ontvanger dezelfde distributierechten - verleent als aan hem verleend worden door deze melding. - - Toestemming wordt verleend om veranderde versies van dit document, - of delen daarvan, te verspreiden, onder bovenstaande voorwaarden, - vooropgesteld dat ze ook duidelijk vermelden wie als laatste - veranderingen aangebracht heeft. - -De condities voor het kopiëren van Emacs zelf zijn ingewikkelder dan -dit, maar gebaseerd op dezelfde gedachte. Lees het bestand COPYING en -geef vervolgens kopieën van Emacs aan al je vrienden. Help bij het -uitroeien van softwarebeschermingspolitiek ("eigendom") door vrije -software te gebruiken, te schrijven en te delen! - -(Engels origineel van de copyrightmelding en condities: - -This version of the tutorial, like GNU Emacs, is copyrighted, and -comes with permission to distribute copies on certain conditions: - -Copyright (C) 1985, 1996, 1997, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 Free Software Foundation, Inc. - - Permission is granted to anyone to make or distribute verbatim - copies of this document as received, in any medium, provided that - the copyright notice and permission notice are preserved, and that - the distributor grants the recipient permission for further - redistribution as permitted by this notice. - - Permission is granted to distribute modified versions of this - document, or of portions of it, under the above conditions, - provided also that they carry prominent notices stating who last - altered them. - -The conditions for copying Emacs itself are more complex, but in the -same spirit. Please read the file COPYING and then do give copies of -GNU Emacs to your friends. Help stamp out software obstructionism -("ownership") by using, writing, and sharing free software!) - -;;; Local Variables: -;;; coding: latin-1 -;;; End: - -;;; arch-tag: 3399e308-e605-4125-8fbb-b2fe91ac3149 diff --git a/etc/TUTORIAL.pl b/etc/TUTORIAL.pl deleted file mode 100644 index 352d92b46b4..00000000000 --- a/etc/TUTORIAL.pl +++ /dev/null @@ -1,1248 +0,0 @@ -Krótki samouczek Emacsa. Warunki kopiowania znajduj± sie na koñcu pliku. - -Polecenia Emacsa wymagaj± na ogó³ wci¶niêcia klawisza CONTROL (oznaczanego -czasami Ctrl lub CTL) lub klawisza META (oznaczanego czasami EDIT -albo ALT). Dalej bêdziemy stosowaæ nastêpuj±ce skróty: - -C- oznacza przytrzymanie klawisza CONTROL przy naciskaniu - klawisza . Na przyk³ad C-f bêdzie odpowiada³o - naci¶niêciu f przy wci¶niêtym klawiszu CONTROL. -M- oznacza przytrzymanie klawisza META lub ALT przy naciskaniu - klawisza . Zamiast tego mo¿na nacisn±æ i pu¶ciæ klawisz - ESC, a potem nacisn±æ klawisz . - -Uwaga: aby zakoñczyæ sesjê Emacsa, naci¶nij C-x C-c (kolejno dwa znaki). -Znaki ">>" na lewym marginesie oznaczaj± w dalszej czê¶ci tego samouczka -æwiczenia dla Ciebie. Na przyk³ad: -<> -[Dodatkowe odstêpy zosta³y zrobione w celach dydaktycznych.] ->> Teraz naci¶nij C-v (nastêpny ekran), aby przej¶æ na nastêpny ekran - samouczka (zrób to naciskaj±c jednocze¶nie klawisze CONTROL i v). - Od tego momentu powiniene¶ robiæ to zawsze, gdy dojdziesz - do koñca ekranu. - -Zwróæ uwagê na to, ¿e kilka linii siê powtarza, gdy przechodzisz z -ekranu na nastêpny; ma to zapewniæ wra¿enie ci±g³o¶ci podczas przesuwania -siê w obrêbie pliku. - -Pierwsz± umiejêtno¶ci±, która powiniene¶ opanowaæ, jest sposób -przesuwania siê z miejsca na miejsce. Wiesz ju¿, jak przesuwaæ siê -o jeden ekran do przodu. Aby przesun±æ siê o jeden ekran do ty³u, -wci¶nij kombinacjê klawiszy M-v (to znaczy wci¶nij i przytrzymaj -klawisz META lub Alt i jednocze¶nie naci¶nij v albo naci¶nij kolejno -klawisze v, je¶li nie masz klawisza META lub Alt). - ->> Spróbuj nacisn±æ M-v, a potem C-v, by przesun±æ siê w przód i w ty³ - kilka razy. - - -PODSUMOWANIE ------------- - -Nastêpuj±ce polecenia s³u¿± do przegl±dania tekstu po jednym ekranie: - - C-v Przesuñ siê o jeden ekran do przodu - M-v Przesuñ siê o jeden ekran do ty³u - C-l Wyczy¶æ ekran i wy¶wietl go na nowo, umieszczaj±c - tekst z okolic kursora w ¶rodku ekranu. - (Ta kombinacja to CONTROL-L, a nie CONTROL-1.) - ->> Znajd¼ kursor i zapamiêtaj, jaki tekst jest w jego pobli¿u. - Naci¶nij nastêpnie C-l. - Znajd¼ kursor jeszcze raz i zwróæ uwagê, ¿e znajduje siê on - w pobli¿u tego samego tekstu. - -Mo¿esz tak¿e u¿yæ klawiszy PageUp i PageDn, je¶li s± dostêpne na -Twojej klawiaturze, do przemieszczania siê miêdzy stronami, ale u¿ycie -C-v i M-v jest bardziej efektywne. - -PODSTAWY KIEROWANIA KURSOREM ----------------------------- - -Przesuwanie siê z ekranu na ekran jest u¿yteczne, ale jak przej¶æ do -okre¶lonego miejsca w obrêbie jednego ekranu? - -Mo¿na to zrobiæ na kilka sposobów. Najprostszym jest u¿ycie poleceñ -C-p, C-b, C-f oraz C-n. Ka¿de z nich przesuwa kursor o jeden wiersz -albo kolumnê w okre¶lonym kierunku. Oto schemat, który to obrazuje: - - Poprzednia linia, C-p - (ang. previous line) - : - : - Do ty³u, C-b .... Kursor .... Do przodu, C-f - (ang. back) : (ang. forward) - : - : - Nastêpna linia, C-n - (ang. next line) - ->> Przesuñ kursor na ¶rodek tego schematu za pomoc± C-n lub C-p. - Potem naci¶nij C-l, by zobaczyæ ca³y diagram na ¶rodku ekranu. - -To s± podstawowe polecenia kieruj±ce po³o¿eniem kursora, których -bêdziesz u¿ywa³ bardzo czêsto, warto wiêc je zapamiêtaæ. - ->> Naci¶nij kilka razy C-n, by przesun±æ kursor do tej linii. - ->> Przesuñ siê w g³±b linii za pomoc± C-f, a potem do góry za pomoc± - C-p. Zwróæ uwagê na zachowanie siê C-p, gdy kursor jest w ¶rodku - linii. - -Ka¿da linia tekstu koñczy siê znakiem nowej linii, który oddziela j± -od nastêpnej. Ka¿dy Twój plik powinien siê koñczyæ znakiem nowej -linii (ale Emacs tego nie wymaga). - ->> Spróbuj nacisn±æ C-b na pocz±tku linii. Powinno Ciê to przenie¶æ - na koniec poprzedniej linii. Dzieje siê tak dlatego, ¿e kursor - przechodzi wówczas nad znakiem nowej linii. - -C-f przechodzi nad znakiem nowej linii tak samo jak C-b. - ->> Naci¶nij kilka razy C-b i obserwuj po³o¿enie kursora. - Naciskaj potem C-f, by wróciæ na koniec linii. W koñcu naci¶nij - jeszcze raz C-f, by przej¶æ do nastêpnej linii. - -Gdy przesuwasz kursor poza doln± krawêd¼ ekranu, tekst po³o¿ony -za krawêdzi± przesuwa siê na ekran (ang. scrolling). Dziêki temu -Emacs mo¿e przesun±æ kursor do okre¶lonego miejsca bez umieszczania -go poza ekranem. - ->> Spróbuj przesun±æ kursor poza doln± granicê ekranu za pomoc± C-n - i zobacz, co siê stanie. - -Je¶li przesuwanie siê o jeden znak na raz jest dla Ciebie zbyt wolne, -to spróbuj przesuwaæ siê o s³owa. M-f (Meta-f) przesuwa kursor o s³owo -do przodu, a M-b przesuwa go o s³owo do ty³u. - ->> Naci¶nij kilka razy M-f i M-b. - -Gdy jeste¶ w ¶rodku s³owa, to M-f przesuwa kursor na jego koniec. -Je¶li natomiast jeste¶ w przerwie miedzy s³owami, to M-f przesuwa -kursor na koniec nastêpnego s³owa. M-b zachowuje siê podobnie -dla ruchu do ty³u. - ->> Naci¶nij M-f i M-b kilka razy na przemian z C-f i C-b, tak by¶ - móg³ zauwa¿yæ dzia³anie M-f i M-b naci¶niêtych w ró¿nych miejscach - wewn±trz i miêdzy s³owami. - -Zauwa¿ podobieñstwo miêdzy C-f i C-b oraz M-f i M-b. Bardzo czêsto -kombinacje zawieraj±ce Meta (Alt) oznaczaj± operacje zwi±zane -z jednostkami jêzykowymi (s³owa, zdania, akapity), podczas gdy -kombinacje z klawiszem Control dzia³aj± na jednostkach podstawowych, -niezale¿nych od tego, co edytujesz (znaki, linie, itd.). - -Oto zale¿no¶æ, która stosuje siê do linii i zdañ: C-a i C-e przesuwaj± -kursor na pocz±tek i koniec linii, a M-a i M-e przesuwaj± go na pocz±tek -i koniec zdania. - ->> Naci¶nij kilka razy C-a, a potem kilka razy C-e. - Powtórz to z M-a, a potem z M-e. - -Czy zauwa¿y³e¶, ¿e powtarzanie C-a nic nie zmienia, natomiast powtórne -M-a przesuwa Ciê o jedno zdanie? Chocia¿ nie ma tu pe³nej analogii, -wydaje siê to jednak naturalne. - -Po³o¿enie kursora w tek¶cie jest okre¶lane mianem "punktu". - -Oto podsumowanie prostych poleceñ s³u¿±cych do przesuwania kursora, -w³±cznie z operacjami dotycz±cymi s³ów i zdañ: - - C-f Do przodu o jeden znak - C-b Do ty³u o jeden znak - - M-f Do przodu o s³owo - M-b Do ty³u o s³owo - - C-n Nastêpna linia - C-p Poprzednia linia - - C-a Pocz±tek linii - C-e Koniec linii - - M-a Do ty³u na pocz±tek zdania - M-e Do przodu na koniec zdania - ->> Przeæwicz kilka razy dla wprawy wszystkie powy¿sze polecenia. - Nale¿± one do najczê¶ciej u¿ywanych. - -Dwa inne wa¿ne polecenia przesuwaj±ce kursor to M-< (Meta lub Alt -i znak mniejszo¶ci), które przesuwa kursor na pocz±tek ca³ego tekstu -i M-> (Meta lub Alt i znak wiêkszo¶ci), które przesuwa kursor na koniec -ca³ego tekstu. - -Na wiêkszo¶ci klawiatur "<" jest nad przecinkiem, musisz wiêc u¿yæ -klawisza Shift, by nacisn±æ "<", i podobnie musisz u¿yæ klawisza Shift, -by nacisn±æ M-<. Bez Shift uzyska³by¶ M-przecinek. - ->> Naci¶nij M-<, by przej¶æ na pocz±tek samouczka, a potem kilka razy - u¿yj C-v, by powróciæ do tego miejsca. - ->> Teraz naci¶nij M->, by przej¶æ na koniec samouczka, i wróæ do tego - miejsca za pomoc± kilkakrotnego M-v. - -Je¶li Twoja klawiatura ma klawisze strza³ek, to mo¿esz ich u¿yæ do -przesuwania kursora. Radzimy Ci nauczyæ siê siê kombinacji C-b, C-f, -C-n i C-p z trzech powodów. Po pierwsze, dzia³aj± one na wszystkich -typach terminali. Po drugie, gdy ju¿ zdobêdziesz pewn± praktykê w -pos³ugiwaniu siê Emacsem, to bêdzie Ci szybciej nacisn±æ te kombinacje -ni¿ klawisze strza³ek (poniewa¿ nie wymaga to przenoszenia d³oni z -miejsca, które zajmuj± podczas szybkiego pisania za pomoc± 10 palców). -Po trzecie wreszcie, gdy ju¿ wyrobisz sobie zwyczaj pos³ugiwania siê -tymi poleceniami z klawiszem Control, to ³atwo przyjdzie Ci nauczyæ siê -bardziej zaawansowanych poleceñ przesuwaj±cych kursor. - -Wiêkszo¶æ poleceñ Emacsa akceptuje argument liczbowy; dla wiêkszo¶ci -poleceñ oznacza on liczbê powtórzeñ. Aby okre¶liæ liczbê powtórzeñ -polecenia, powiniene¶ je poprzedziæ naci¶niêciem C-u a potem cyfr. -Je¶li masz na klawiaturze klawisz META (lub EDIT albo ALT), to -alternatywnym sposobem wprowadzenia argumentu liczbowego jest u¿ycie -tego klawisza i wciskanie cyfr argumentu. Radzimy jednak przyswoiæ -sobie metodê z klawiszem C-u, poniewa¿ dzia³a ona na wszystkich -terminalach. - -Na przyk³ad C-u 8 C-f przesuwa kursor do przodu o osiem znaków. - ->> Spróbuj u¿yæ C-n i C-p z argumentem liczbowym, by przesun±æ kursor - do jednej z linii w pobli¿u tego zdania za pomoc± tylko jednego - polecenia. - -Wiêkszo¶æ poleceñ u¿ywa argumentu liczbowego jako liczby powtórzeñ. -Jest kilka poleceñ, które u¿ywaj± go w inny sposób. Do takich wyj±tków -nale¿± C-v i M-v. Je¶li poda siê im argument, to przesuwaj± zawarto¶æ -ekranu w górê lub w dó³ o podan± liczbê linii zamiast o tyle¿ ekranów. -Na przyk³ad C-u 4 C-v przewija ekran o 4 linie. - ->> Spróbuj nacisn±æ C-u 8 C-v. - -To powinno by³o przewin±æ ekran do góry o 8 linii. Je¶li chcia³by¶ -przewin±æ ekran w dó³, to powiniene¶ podaæ argument przed poleceniem M-v. - -Je¶li pracujesz w systemie z okienkowym trybem graficznym, jak X11 -lub MS-Windows, to prawdopodobnie po lewej stronie okna Emacsa znajduje -siê prostok±tny obszar nazywany po angielsku "scrollbar", a po polsku -suwakiem. Za jego pomoc± mo¿esz przewijaæ tekst, u¿ywaj±c do tego myszy. - ->> Spróbuj nacisn±æ ¶rodkowy klawisz myszy u góry pod¶wietlonego - obszaru na suwaku. To powinno przewin±æ tekst do miejsca - okre¶lonego przez wysoko¶æ, na której nacisn±³e¶ klawisz myszy. - ->> Przesuñ mysz do miejsca oddalonego od górnego koñca suwaka o mniej - wiêcej trzy linie i naci¶nij lewy klawisz myszy kilka razy. - - -* GDY EMACS JEST ZABLOKOWANY ----------------------------- - -Je¶li Emacs przestaje odpowiadaæ na Twoje polecenia, to mo¿esz go -bezpiecznie zatrzymaæ, przyciskaj±c C-g. Klawisza C-g mo¿esz te¿ u¿yæ do -przerwania polecenia, które zabiera zbyt wiele czasu. - -Mo¿esz tak¿e u¿yæ C-g do anulowania argumentu liczbowego albo pocz±tku -polecenia, którego nie zamierzasz dokoñczyæ. - ->> Napisz C-u 100 jako argument liczbowy, po czym naci¶nij C-g. - Teraz naci¶nij C-f. Powinno to przesun±æ kursor zaledwie o - jeden znak, poniewa¿ argument liczbowy anulowa³e¶ za pomoc± C-g. - -Za pomoc± klawisza C-g mo¿esz te¿ anulowaæ skutki omy³kowego -wci¶niêcia klawisza . - - -* ZABLOKOWANE POLECENIA ------------------------ - -Pewne polecenia Emacsa s± ,,zablokowane'' -- po to, by pocz±tkuj±cy -u¿ytkownicy nie mogli ich wywo³aæ przez przypadek. - -Je¶li wywo³asz jedno z zablokowanych poleceñ, to Emacs wypisze komunikat -informuj±cy o tym, co to za polecenie, i zapyta Ciê, czy istotnie chcesz -je wywo³aæ. - -Je¶li naprawdê chcesz wywo³aæ to polecenie, to odpowiedz na pytanie, -naciskaj±c spacjê. Je¶li nie chcesz wywo³aæ zablokowanego polecenia, -to na pytanie odpowiedz, naciskaj±c n. - ->> Napisz `C-x C-l' (co jest zablokowanym poleceniem) i odpowiedz n - na zadane pytanie. - - -* OKNA ------- - -Emacs mo¿e mieæ otwartych kilka okien, z których ka¿de wy¶wietla -w³asny tekst. Pojêcie ,,okna'', je¶li chodzi o Emacsa, nie odnosi -siê do osobnego okienka systemu okienkowego, lecz do pojedynczego -panelu wewn±trz okienka systemowego. (Emacs mo¿e te¿ pracowaæ -na kilku oknach systemowych (X-oknach); w terminologii Emacsa -nazywaj± siê one ramkami. Opisane jest to poni¿ej.) - -Na tym etapie lepiej jest siê nie zag³êbiaæ w techniki wykorzystuj±ce -kilka okien. Powiniene¶ jedynie wiedzieæ, w jaki sposób pozbyæ siê -nadmiaru okien, które mog± siê pojawiæ w wyniku wywo³ania Emacsowego -systemu pomocy albo niektórych poleceñ. Robi siê to w prosty sposób: - - C-x 1 Jedno okno (tzn. zlikwiduj wszystkie pozosta³e okna). - -Kombinacja ta to klawisz Control-x, po którym wystêpuje cyfra 1. -Powiêksza ona okno, w którym jest kursor tak, by wype³ni³o ono ekran, -kasuj±c zarazem pozosta³e okna Emacsa. - ->> Przesuñ kursor do tej linii i naci¶nij C-u 0 C-l. - -(C-l, jak pamiêtasz od¶wie¿a zawarto¶æ ekranu. Je¶li temu poleceniu -poda siê argument liczbowy, to bêdzie to oznacza³o ,,od¶wie¿ zawarto¶æ -ekranu i umie¶æ bie¿±ca liniê o tyle linii od góry ekranu''. Tak wiêc, -C-u 0 C-1 oznacza ,,od¶wie¿ ekran, umieszczaj±c bie¿±ca liniê na samej -górze''.) - ->> Naci¶nij Control-x 2 - Zauwa¿, ¿e okno siê kurczy, a jednocze¶nie pojawia siê nowe, - wy¶wietlaj±ce ten sam tekst. - ->> Naci¶nij C-x 1, a nowe okno zniknie. - - -* WSTAWIANIE I USUWANIE ------------------------ - -Je¶li chcesz wstawiæ nowy tekst, to po prostu go napisz. Znaki, które da -siê wy¶wietliæ, takie jak A, 7, *, itd., Emacs traktuje jako tekst i -natychmiast wstawia do dotychczasowego tekstu. Aby wstawiæ znak nowej -linii, trzeba nacisn±æ klawisz (na maszynach do pisania tak -oznacza³o siê znak powrotu karetki). - -Ostatnio napisany znak mo¿esz skasowaæ, naciskaj±c klawisz . -Chodzi tu o klawisz, którego normalnie u¿ywasz do skasowania ostatnio -napisanego znaku. Na wiêkszo¶ci klawiatur wyró¿nia siê on wielko¶ci±, -le¿y nad klawiszem i jest oznaczony napisem "Delete", "Del" -albo "Backspace". - -Je¶li masz na klawiaturze klawisz oznaczony "Backspace", to w³a¶nie on -jest wspomnianym . Oprócz niego mo¿e jeszcze wystêpowaæ -klawisz oznaczony s³owem "Delete", ale to nie on pe³ni rolê . - -Mówi±c bardziej ogólnie, usuwa znak bezpo¶rednio -poprzedzaj±cy bie¿±c± pozycjê kursora. - ->> Sprawd¼ to teraz: wstaw kilka znaków, po czym usuñ je, kilka razy - naciskaj±c . Nie martw siê, ¿e zmieniasz w ten sposób - niniejszy plik, w istocie nie zmieniasz g³ównego pliku samouczka. - Pracujesz teraz na jego kopii. - -Gdy linia tekstu staje siê zbyt d³uga, by zmie¶ciæ siê w jednym -wierszu ekranu, to jest ona ,,kontynuowana'' w wierszu nastêpnym. -Znak ,,backslash'' (`\') (albo - je¶li pracujesz w okienkowym -trybie graficznym - zagiêta strza³ka) umieszczony na prawym marginesie -wskazuje, ¿e dana linia jest kontynuowana w nastêpnym wierszu ekranu. - ->> Wpisuj jaki¶ tekst tak d³ugo, a¿ dojdziesz do prawego marginesu, i - potem nie przestawaj. Zauwa¿ysz, ¿e pojawi siê linia kontynuacji. - ->> U¿yj klawisza , by usun±æ znaki tekstu, tak by linia znowu - mie¶ci³a siê na ekranie; linia kontynuacji zniknie. - -Znak nowej linii mo¿na skasowaæ tak jak ka¿dy inny znak. Usuniêcie znaku -nowej linii miêdzy dwiema liniami spowoduje ich po³±czenie. Je¶li powsta³a -w wyniku tego linia tekstu jest zbyt d³uga, by zmie¶ciæ siê na szeroko¶æ -ekranu, to zostanie wy¶wietlona z lini± kontynuacji. - ->> Przesuñ kursor na pocz±tek linii i naci¶nij . Bie¿±ca - linia zostanie po³±czona z poprzedni±. - ->> Naci¶nij , by z powrotem wstawiæ znak nowej linii, który - skasowa³e¶. - -Jak ju¿ wiesz, wiêkszo¶æ poleceñ Emacsa mo¿na wywo³aæ z parametrem -liczby powtórzeñ; dotyczy to tak¿e znaków tekstu. Argument liczbowy -powoduje wstawienie znaku odpowiadaj±c± mu liczbê razy. - ->> Wypróbuj to teraz -- naci¶nij C-u 8 *, a uzyskasz ********. - -Nauczy³e¶ siê ju¿ wiêkszej czê¶ci podstawowych sposobów pisania oraz -poprawiania b³êdów. W Emacsie mo¿esz usuwaæ równie¿ ca³e s³owa lub -linie. Oto podsumowanie operacji usuwania znaków: - - usuñ znak bezpo¶rednio przed kursorem - C-d usuñ znak bezpo¶rednio za kursorem - - M- wytnij s³owo bezpo¶rednio przed kursorem - M-d wytnij s³owo bezpo¶rednio za kursorem - - C-k wytnij zawarto¶æ linii od kursora do jej koñca - M-k wytnij wszystkie znaki od kursora do koñca zdania - -Warto zauwa¿yæ, ¿e stosunek i C-d do M- i M-d -rozszerza analogiê wystêpuj±c± w zestawieniu C-f i M-f ( tak -naprawdê nie jest znakiem steruj±cym, ale nie jest to tutaj -istotne). C-k i M-k s± podobne do C-e i M-e w tym sensie, ¿e linie s± -odpowiednikami zdañ. - - -Oto metoda wycinania czê¶ci tekstu. Umie¶æ kursor na pocz±tku fragmentu, -który chcesz wyci±æ, i naci¶nij C-@ lub C-SPC (SPC-spacja). Teraz przejd¼ -na drugi koniec wybranego fragmentu i naci¶nij C-w. To wytnie ca³y tekst -zawarty miêdzy punktami pocz±tkowym i koñcowym. - ->> Przesuñ kursor na literê O na pocz±tku poprzedniego paragrafu. - ->> Naci¶nij C-SPC. Emacs wy¶wietli "Mark set" (znacznik ustawiony) - na dole ekranu. - ->> Przesuñ kursor do litery o w s³owie ,,kursor'' w drugim zdaniu. - ->> Naci¶nij C-w. Ta komenda wytnie ca³y fragment zaczynaj±cy siê od O, - a koñcz±cy tu¿ przed o. - -Gdy usuwasz wiêcej ni¿ jeden znak naraz, Emacs zachowuje usuniêty -tekst po to, by móg³ go z powrotem gdzie¶ wstawiæ. Wstawianie -usuniêtego tekstu nazywa siê ,,wklejaniem''. Usuniêty tekst -mo¿esz wkleiæ zarówno w to samo miejsce, z którego zosta³ usuniêty, -b±d¼ te¿ w inne miejsca. Ten sam tekst mo¿esz wkleiæ wielokrotnie, -w celu uzyskania wielu kopii. Poleceniem wklejenia tekstu jest C-y. - -Zauwa¿ ró¿nicê miêdzy ,,wycinaniem'' i ,,usuwaniem'', polegaj±c± na tym, -¿e rzeczy wyciête mo¿na na nowo wklejaæ, usuniêtych natomiast wklejaæ nie -mo¿na. Na ogó³ polecenia Emacsa, które kasuj± du¿o tekstu, zachowuj± go, -podczas gdy polecenia, które po prostu kasuj± jeden znak albo puste -linie lub odstêpy, skasowanego tekstu nie zachowuj±. - ->> Przesuñ kursor na pocz±tek linii, która nie jest pusta. Naci¶nij - C-k, by wyci±æ tekst z tej linii. - ->> Naci¶nij C-k jeszcze raz. Zauwa¿, ¿e wycina to znak nowej linii, - który znajduje siê za ta lini±. - -Zwróæ uwagê, ¿e pojedyncze C-k wycina zawarto¶æ linii, a powtórne C-k -wycina sam± liniê, tak ¿e pozosta³e linie przesuwaj± siê do góry. C-k -traktuje argument liczbowy w sposób specjalny: wycina ono tyle linii, -ile wynosi warto¶æ argumentu, ORAZ ich zawarto¶æ. To nie jest jedynie -powtórzenie kilka razy C-k. C-u 2 C-k wycina dwie linie wraz z ich -znakami nowej linii; dwukrotne naci¶niecie C-k nie zrobi³oby tego. - -By odzyskaæ ostatnio wyciêty tekst i wstawiæ go w miejsce kursora, -naci¶nij C-y. - ->> Twoja kolej. Naci¶nij C-y, by z powrotem wstawiæ tekst. - -Zwróæ uwagê, ¿e je¶li naci¶niesz C-k kilka razy z rzêdu, to ca³y wyciêty -tekst zostanie zachowywany w jednym kawa³ku, tak ¿e pojedyncze C-y wklei -wszystkie linie. - ->> Naci¶nij C-k kilka razy. - -A by odzyskaæ ten wyciêty tekst... - ->> ...naci¶nij C-y. Przesuñ potem kursor o kilka linii w dó³ i - naci¶nij C-y jeszcze raz. Widzisz, ¿e wstawia to ten sam tekst. - -Co zrobiæ, je¶li chcesz wstawiæ tekst, który wcze¶niej wyci±³e¶, -a potem wycinasz co¶ innego? C-y wstawia tekst ostatnio wyciêty. -Poprzedni fragment nie jest jednak stracony. Mo¿esz do niego wróciæ, -u¿ywaj±c polecenia M-y. Naciskaj±c C-y, wstawiasz tekst ostatnio -wyciêty, a naciskaj±c M-y, zastêpujesz ten tekst wyciêtym uprzednio. -Dalsze naciskanie M-y przywo³uje coraz wcze¶niejsze fragmenty tekstu. -Gdy dojdziesz do tekstu, którego szuka³e¶, po prostu kontynuuj edycjê -tekstu, pozostawiaj±c wklejony tekst tam, gdzie siê znajduje. - -Naciskaj±c M-y wystarczaj±co wiele razy, dojdziesz do punktu, -z którego wystartowa³e¶ (czyli tekstu wyciêtego ostatnio). - ->> Wytnij jak±¶ liniê, zmieñ pozycjê kursora i wytnij inn±. Naci¶nij - potem C-y, by wstawiæ drug± z wyciêtych linii. Potem naci¶nij M-y - i linia ta zostanie zast±piona przez t± pierwsz±. Naci¶nij M-y - jeszcze kilka razy, by zobaczyæ, co siê dzieje. Powtarzaj to a¿ - do ponownego pojawienia siê drugiej z linii. Mo¿esz te¿ wypróbowaæ, - co siê stanie, gdy polecenie M-y poprzedzisz argumentem dodatnim - albo ujemnym. - - -* COFNIJ --------- - -Je¶li wprowadzisz zmiany do tekstu, a potem dojdziesz do wniosku, ¿e -to by³a pomy³ka, to mo¿esz cofn±æ zmiany, wydaj±c polecenie ,,cofnij'' -(ang. undo), C-x u. - -C-x u cofa zmiany wprowadzone przez jedno polecenie; je¶li powtórzysz -C-x u kilka razy z rzêdu, to ka¿de powtórzenie cofa kolejne polecenie. - -Od tej regu³y s± dwa wyj±tki: polecenia, które nie zmieniaj± tekstu nie -licz± siê jako polecenia, które mo¿na wycofaæ (dotyczy to zarówno -przesuniêæ kursora, jak i przewijania tekstu), oraz znaki wstawiane do -tekstu (np. litery) ³±czone s± w grupy do 20. (Redukuje to liczbê -naci¶niêæ C-x u, które musia³by¶ wykonaæ, by wycofaæ siê z niechcianych -zmian.) - ->> Wytnij tê liniê za pomoc± C-k, a potem naci¶nij C-x u; linia - powinna siê pojawiæ ponownie. - -C-_ jest innym sposobem wywo³ania polecenia "cofnij"; dzia³a to -dok³adnie tak samo jak C-x u, jest jednak ³atwiejsze do naci¶niêcia -kilka razy z rzêdu. Wad± kombinacji C-_ jest to, ¿e nie jest oczywiste -w jaki sposób j± uzyskaæ na niektórych klawiaturach. To w³a¶nie dlatego -dostêpna jest te¿ kombinacja C-x u. Na niektórych terminalach mo¿esz -nacisn±æ C-_ poprzez przytrzymanie Ctrl i naci¶niêcie /. - -Argument liczbowy podany przed C-_ lub C-x u okre¶la liczbê powtórzeñ -tego polecenia. - - -* PLIKI -------- - -Aby edytowany przez Ciebie tekst zosta³ na trwa³e zachowany, musisz -umie¶ciæ go w pliku. Je¶li tego nie zrobisz, to tekst zniknie, gdy -zamkniêty zostanie Emacs, za pomoc± którego go edytowa³e¶. Aby zachowaæ -tekst w pliku, najpierw musisz ten plik ,,znale¼æ'', i to zanim -zaczniesz wprowadzaæ tekst. Czynno¶æ znajdowania pliku (ang. "file -finding") bywa te¿ nazywana ,,odwiedzaniem pliku'' (ang. "file -visiting"). - -Odwiedzanie pliku w Emacsie powoduje wy¶wietlenie jego zawarto¶ci. -Bardzo czêsto jest to pocz±tek edycji pliku. Jednak¿e zmiany, które -wprowadzasz do pliku, nie s± w nim utrwalone, zanim go nie ,,zachowasz'' -(ang. save). Ma to zapobiec pozostawieniu w systemie pliku, który zosta³ -zmieniony tylko w po³owie, a tego chcesz unikn±æ. Gdy zachowujesz -zmieniony plik, Emacs zostawia orygina³ (pod inna nazw±) na wypadek, -gdyby¶ doszed³ do wniosku, ¿e wprowadzone zmiany by³y b³êdne. - -Je¶li popatrzysz na dó³ ekranu, to zauwa¿ysz liniê, która zaczyna siê -i koñczy my¶lnikami, a zawiera tekst ,,TUTORIAL''. W tej -czê¶ci ekranu zawsze mo¿esz znale¼æ nazwê pliku, który w³a¶nie -odwiedzasz. W tej chwili odwiedzasz plik o nazwie TUTORIAL, który -jest Twoj± w³asn± kopi± samouczka Emacsa. Obojêtnie, który plik -odwiedzisz, w³a¶nie w tym miejscu pojawi siê jego nazwa. - -Polecenia s³u¿±ce do odwiedzania i zachowywania plików ró¿ni± siê -od innych poleceñ, które ju¿ pozna³e¶, tym, ¿e sk³adaj± siê z dwóch -znaków. Obydwa zaczynaj± siê od znaku Control-x. Jest mnóstwo -poleceñ, które zaczynaj± siê od tego w³a¶nie znaku; wiele z nich -dotyczy plików, buforów oraz rzeczy z nimi zwi±zanych. Polecenia -te maj± d³ugo¶æ dwóch, trzech lub czterech znaków. - -Kolejn± nowo¶ci± odno¶nie polecenia odwiedzania pliku jest to, ¿e -musisz mu podaæ nazwê pliku, który chcesz znale¼æ. Mówimy o tym, ¿e -polecenie ,,czyta argument z terminala'' (w tym wypadku argument jest -nazw± pliku). Po wpisaniu polecenia - - C-x C-f znajd¼ plik (ang. find a file) - -Emacs poprosi Ciê o wpisanie nazwy pliku. Pojawia siê ona w dolnej linii -ekranu. Gdy ta linia jest u¿ywana do wprowadzania tego typu danych, -nazywa siê j± ,,minibuforem'' (ang. "minibuffer"). Do edycji nazwy pliku -w minibuforze mo¿esz u¿ywaæ zwyk³ych poleceñ Emacsa. - -Wprowadzanie nazwy pliku (lub jakichkolwiek innych danych w -minibuforze) mo¿na anulowaæ klawiszem C-g. - ->> Naci¶nij C-x C-f, po czym naci¶nij C-g. Na skutek tego zniknie - minibufor oraz przerwane zostanie wykonanie polecenia C-x C-f, które - tego minibufora u¿ywa³o. W rezultacie nie odwiedzisz ¿adnego pliku. - -Gdy skoñczysz wpisywaæ nazwê pliku, naci¶nij . Wówczas -polecenie C-x C-f zabierze siê do roboty i znajdzie plik, który -wybra³e¶. Z chwil± zakoñczenia wykonywania polecenia C-x C-f -zniknie te¿ minibufor. - -Zawarto¶æ znalezionego pliku po chwili pojawia siê na ekranie -i mo¿esz j± edytowaæ. Gdy chcesz zachowaæ zmiany, by je utrwaliæ, -wydaj polecenie - - C-x C-s zachowaj plik (ang. save). - -Kopiuje to tekst z Emacsa do pliku. Za pierwszym razem, gdy to -robisz, Emacs zmienia nazwê oryginalnego pliku, dodaj±c na -koñcu jego nazwy znak ~. W ten sposób powstaje zapasowa kopia -oryginalnego pliku. - -Gdy zachowywanie pliku siê koñczy, Emacs wypisuje jego nazwê u do³u -ekranu. Pliki powiniene¶ zachowywaæ stosunkowo czêsto, aby nie straciæ -za du¿o w wypadku za³amania systemu. - ->> Naci¶nij C-x C-s, by zachowaæ dla siebie kopiê samouczka. Emacs - powinien wypisaæ "Wrote ...TUTORIAL" na dole ekranu. - -UWAGA: W niektórych systemach naci¶niêcie C-x C-s zamra¿a ekran i w -rezultacie Emacs nie mo¿e pokazywaæ tekstu. Oznacza to, ¿e sk³adowa -systemu operacyjnego, zwana kontrol± przep³ywu (ang. flow control), -przechwyci³a znak C-s i nie pozwoli³a mu dotrzeæ do Emacsa. By odzyskaæ -kontrolê nad ekranem, naci¶nij C-q. Dodatkowej pomocy poszukaj w -rozdziale "Spontaneous Entry to Incremental Search" w podrêczniku -Emacsa. - -Odwiedziæ w celu edycji lub odczytu mo¿esz plik istniej±cy ju¿ w -systemie. Mo¿esz te¿ odwiedziæ plik, którego jeszcze nie ma w systemie i -w³a¶nie w taki sposób tworzy siê w Emacsie nowe pliki. Gdy poleceniem -C-x C-f odwiedzisz plik o nazwie nieistniej±cej w systemie, wówczas -Emacs wy¶wietli puste miejsce, do którego bêdziesz móg³ zacz±æ wpisywaæ -tekst. Gdy za¿±dasz zachowania wpisanego tekstu, Emacs utworzy w -systemie plik z tym tekstem. Od tego momentu mo¿esz uwa¿aæ, ¿e edytujesz -plik ju¿ istniej±cy. - - -* BUFORY --------- - -Je¶li za pomoc± C-x C-f odwiedzisz inny plik, to plik odwiedzony -poprzednio pozostanie w Emacsie. Mo¿esz siê na niego prze³±czyæ, -odwiedzaj±c go jeszcze raz za pomoc± C-x C-f. W ten sposób mo¿esz -mieæ w Emacsie odwiedzonych jednocze¶nie wiele plików. - ->> Utwórz plik o nazwie "foo" za pomoc± C-x C-f foo . - Wpisz w niego jaki¶ tekst i zachowaj "foo" za pomoc± C-x C-s. - W koñcu napisz C-x C-f TUTORIAL , by wróciæ do samouczka. - -Emacs przechowuje tekst ka¿dego pliku w obiekcie, zwanym ,,buforem''. -Odwiedzenie pliku powoduje utworzenie nowego bufora wewn±trz Emacsa. By -zobaczyæ listê buforów, które istniej± w Twoim Emacsie, naci¶nij - - C-x C-b lista buforów (ang. list buffers). - ->> Naci¶nij C-x C-b. - -Zwróæ uwagê, ¿e ka¿dy bufor ma w³asn± nazwê, mo¿e te¿ mieæ skojarzon± z -nim nazwê pliku, który odwiedza. KA¯DY tekst, który ogl±dasz w Emacsie, -jest zawsze czê¶ci± jednego z buforów. - ->> Naci¶nij C-x 1 by pozbyæ siê listy buforów. - -Je¶li masz kilka buforów to tylko jeden z nich jest aktualny, ten -który w³a¶nie edytujesz. Je¶li chcesz edytowaæ inny bufer musisz siê -do niego "prze³±czyæ" (ang. switch). Je¶li chcesz prze³±czyæ siê do -bufora, który odwiedza jaki¶ plik, mo¿esz to zrobiæ poprzez ponowne -odwiedzenie pliku za pomoc± C-x C-f. Ale istnieje tak¿e ³atwiejszy -sposób: u¿yj C-x b. U¿ywaj±c tej komendy musisz podaæ nazwê bufora, do -którego zamierzasz siê prze³±czyæ. - ->> Naci¶nij C-x b foo by wróciæ do bufora "foo", który - przechowuje tekst pliku "foo". Nastêpnie naci¶nij C-x b TUTORIAL - by wróciæ do samouczka. - -Zwykle nazwa bufora odpowiada nazwie pliku (bez ¶cie¿ki), choæ czasami -zdarza siê inaczej. Lista buforów, któr± tworzysz za pomoc± C-x C-b -pokazuje nazwy wszystkich buforów. - -KA¯DY tekst, który pojawia siê w oknie Emacsa jest czê¶ci± jakiego¶ -bufora. Niektóre bufory nie odpowiadaj± ¿adnemu odwiedzanemu -plikowi. Na przyk³ad bufor "*Buffer List*" nie odwiedza ¿adnego pliku; -zawiera on listê buforów, utworzon± w reakcji na naci¶niêcie przez -Ciebie C-x C-b. Bufor "*Messages*" tak¿e nie odwiedza ¿adnego pliku; -zawiera komunikaty, które pojawia³y siê podczas Twojej sesji z -Emacsem. - ->> Naci¶nij C-x b *Messages* by obejrzeæ bufor zawieraj±cy - komunikaty. Nastêpnie naci¶nij C-x b TUTORIAL by wróciæ do - samouczka. - -Je¶li zmieniasz tekst w jakim¶ pliku, a potem odwiedzisz inny plik, to -zawarto¶æ tego pierwszego NIE jest automatycznie zachowywana. Zmiany, -które wprowadzi³e¶, pozostaj± w Emacsie, w buforze tego¿ pliku. -Tworzenie czy edytowanie innego bufora nie ma ¿adnego wp³ywu na -pozosta³e. Jest to bardzo przydatne, ale te¿ oznacza, ¿e potrzebny jest -Ci wygodny sposób zachowywania zawarto¶ci buforów. Niewygodne na -przyk³ad by³oby, aby zawsze w celu zachowania bufora trzeba by³o do -niego przechodziæ za pomoc± C-x C-f i dopiero potem wywo³ywaæ C-x C-s. -Dlatego istnieje polecenie: - - C-x s Zachowaj bufory (ang. save some buffers) - -W reakcji na polecenie C-x s Emacs dla ka¿dego z buforów, w którym -wystêpuj± nie zachowane do tej pory zmiany, zadaje pytanie, czy go -w tej chwili zachowaæ. - ->> Wstaw jak±¶ liniê tekstu, a potem naci¶nij C-x s. - Powiniene¶ zostaæ zapytany o to, czy chcesz zachowaæ bufor - TUTORIAL. Odpowiedz na to pytanie twierdz±co, naciskaj±c y. - - -* ROZSZERZANIE ZESTAWU POLECEÑ ------------------------------- - -Poleceñ Emacsa jest znacznie, znacznie wiêcej, ni¿ mo¿na by skojarzyæ -z klawiszami klawiatury, uwzglêdniaj±c nawet kombinacje z META lub Ctrl. -Emacs radzi sobie z tym problemem, udostêpniaj±c polecenia X (ang. -eXtend). Istniej± dwa rodzaje tych poleceñ: - - C-x Rozszerzenie o znak. Nastêpuje po nim jeden znak. - M-x Rozszerzenie o nazwane polecenie. Nastêpuje po nim - pe³na, niekiedy d³uga nazwa polecenia. - -Polecenia te s± u¿yteczne, ale u¿ywa siê ich nie tak czêsto, jak tych, -których ju¿ siê nauczy³e¶. Mia³e¶ ju¿ okazjê poznaæ dwa z nich: C-x C-f, -s³u¿±ce do odwiedzania plików, oraz C-x C-s do ich zachowywania. Innym -przyk³adem mo¿e byæ polecenie C-x C-c, które koñczy sesjê Emacsa. (Nie -martw siê, ¿e w ten sposób stracisz zmiany, które wprowadzi³e¶ do -tekstów; przed zamkniêciem sesji Emacs proponuje Ci zachowania -ka¿dego ze zmodyfikowanych plików.) - -C-z jest poleceniem, które wychodzi z Emacsa *na chwilê*, tak by¶ móg³ -wróciæ do niej wróciæ po jakim¶ czasie. - -W systemach, w których jest to mo¿liwe, C-z zawiesza proces Emacsa; -powoduje to powrót do pow³oki (ang. shell), ale nie niszczy Emacsa. -W najpopularniejszych pow³okach mo¿esz wróciæ do Emacsa za pomoc± -polecenia `fg' lub `%emacs'. - -W systemach, w których nie ma zawieszania procesów, C-z tworzy proces -podpow³oki (ang. "subshell"), który dzia³a pod Emacsem i daje Ci szansê -uruchamiania innych programów oraz powrotu do Emacsa po ich skoñczeniu; w -systemach tych C-z w istocie nie powoduje wyj¶cia z Emacsa i wówczas -normalnym poleceniem powrotu do Emacsa jest wyj¶cie z podpow³oki za -pomoc± polecenia "exit". - -Polecenia C-x C-c powiniene¶ u¿ywaæ, gdy masz zamiar siê wylogowaæ. -Zalecane jest tak¿e wychodzenie z Emacsa wystartowanego na przyk³ad przez -programy obs³uguj±ce pocztê elektroniczn± lub innego rodzaju narzêdzia, -poniewa¿ mog± one nie wiedzieæ, jak sobie poradziæ z zawieszeniem -Emacsa. Jednak¿e w zwyk³ych okoliczno¶ciach, je¶li nie musisz -wylogowywaæ siê z systemu, korzystniej jest zawiesiæ Emacsa za pomoc± -C-z, ni¿ z niego wyj¶æ. - -Istnieje wiele poleceñ zaczynaj±cych siê od C-x. Oto lista tych, -których ju¿ siê nauczy³e¶: - - C-x C-f odwied¼ plik - C-x C-s zachowaj plik - C-x C-b wy¶wietl listê buforów - C-x C-c wyjd¼ z Emacsa - C-x u cofnij - -Poleceñ podawanych za pomoc± nazwy u¿ywa siê jeszcze rzadziej lub u¿ywa -siê tylko w niektórych trybach. Przyk³adem mo¿e byæ polecenie -replace-string, które zastêpuje jeden ³añcuch innym w ca³ym tek¶cie. Gdy -naciskasz M-x, Emacs czeka na dalszy ci±g polecenia, wy¶wietlaj±c na -dole ekranu (w minibuforze) napis "M-x". Powiniene¶ tam wpisaæ nazwê -polecenia, w tym wypadku replace-string. Wystarczy przy tym, ¿e napisz -jedynie repl s; Emacs dokoñczy nazwê automatycznie. Wprowadzanie -nazwy zakoñcz naci¶niêciem klawisza . - -Polecenie replace-string wymaga dwóch argumentów: ³añcucha, który ma -zostaæ zast±piony, i ³añcucha, który ma zostaæ wstawiony w miejsce tego¿. -Wpisywanie ka¿dego z tych ³añcuchów trzeba zakoñczyæ przyci¶niêciem -klawisza . - ->> Przesuñ kursor do czystej linii, dwie linie poni¿ej tej. - Naci¶nij M-x repl szmienizmodyfikuje. - - Zwróæ uwagê, jak ta linia siê zmieni³a: zast±pi³e¶ s³owem - ,,zmodyfikuje'' ka¿de wyst±pienie s³owa z-m-i-e-n-i poni¿ej pocz±tkowej - pozycji kursora. - - -* AUTOMATYCZNE ZACHOWYWANIE ---------------------------- - -Je¶li zmian wprowadzonych do pliku nie zachowasz, to mo¿esz je straciæ w -wypadku, gdy Twój komputer przestanie dzia³aæ. By Ciê przed tym -uchroniæ, Emacs okresowo zachowuje wprowadzone zmiany w specjalnym -pliku, który ma znak # na pocz±tku i na koñcu swojej nazwy. Przyjmijmy -na przyk³ad, ¿e Twój plik nazywa siê "hello.c". Odpowiadaj±cy mu plik -zachowywany automatycznie bêdzie nosi³ nazwê "#hello.c#". Gdy -zachowasz plik w zwyk³y sposób, Emacs skasuje plik -zachowany automatycznie. - -Je¶li Twój komputer przestanie dzia³aæ, mo¿esz odzyskaæ Twoje dane z -pliku automatycznie zachowanego przez zwyk³e odwiedzenie tego pliku, -który edytowa³e¶ (a nie pliku automatycznie zachowanego!) i napisanie -M-x recover file. Gdy Emacs zapyta o potwierdzenie, to -dane zachowane automatycznie odzyskasz, je¶li odpowiesz yes. - - -* OBSZAR ECHA -------------- - -Je¶li polecenia dla Emacsa wpisujesz dostatecznie wolno, bêd± one -pokazywane w specjalnym obszarze na dole ekranu, zwanym obszarem echa -(ang. echo area). Obszar echa zawiera ostatni± doln± liniê ekranu. - - -* LINIA STANU -------------- - -Linia, która znajduje siê bezpo¶rednio nad obszarem echa, zwana jest -lini± trybu (ang. modeline). Pokazuje ona tekst podobny do -nastêpuj±cego: - ---:** TUTORIAL (Fundamental)--L670--58%---------------- - -Linia ta podaje u¿yteczne informacje o stanie Emacsa i tekstu, który -edytujesz. - -Wiesz ju¿, jakie jest znaczenie nazwy: oznacza ona plik, -który odwiedzi³e¶. --NN%-- informuje o bie¿±cej pozycji wewn±trz -tekstu; oznacza to, ¿e NN procent tekstu znajduje siê ponad górnym -brzegiem ekranu. Je¶li pocz±tek pliku znajduje siê na pocz±tku -ekranu, to zamiast liczby --00%-- zobaczysz w tym miejscu --Top--. -Podobnie dla koñca tekstu pojawi siê tam napis --Bot-- (ang. bottom). -Je¶li wy¶wietlasz tekst na tyle krótki, ¿e mie¶ci siê w -ca³o¶ci na ekranie, to linia trybu bêdzie zawiera³a napis --All--. - -Litera L, po której wystêpuj± cyfry, tak¿e opisuje Twoj± bie¿±c± -pozycjê: cyfry oznaczaj± numer linii, na której obecnie ustawiony jest -kursor. - -Gwiazdki blisko pocz±tku linii trybu oznaczaj±, ¿e wprowadzi³e¶ do -tekstu jakie¶ zmiany. Tu¿ po odwiedzeniu, a tak¿e po zachowaniu pliku -nie bêdzie w tym miejscu gwiazdek, lecz my¶lniki. - -Wewn±trz nawiasów znajdziesz informacje na temat trybu edycji, w -którym w³a¶nie jest Emacs. Domy¶lnym trybem edycji nazywa siê -podstawowym (ang. fundamental); jest to tryb u¿ywanym w³a¶nie w -tej chwili. Jest to przyk³ad ,,trybu g³ównego'' (ang. major mode). - -Emacs mo¿e dzia³aæ w wielu trybach g³ównych. Zosta³y one zaprojektowane, -aby u³atwiæ edycjê napisów w rozmaitych jêzykach programowania, takich -jak tryb Lisp czy C, oraz rodzajach tekstów, jak tryb tekstowy. W danej -chwili mo¿e byæ aktywny tylko jeden g³ówny tryb pracy i to jego nazwa -jest wy¶wietlana w linii trybu w miejscu, w którym teraz jest -"Fundamental". - -Ka¿dy z g³ównych trybów edycyjnych mo¿e zmieniæ zachowanie niektórych -poleceñ. Na przyk³ad w Emacsie istniej± polecenia s³u¿±ce do tworzenia -komentarzy w programach. Skoro ka¿dy jêzyk programowania sam okre¶la, -jak powinien wygl±daæ komentarz, to ka¿dy z g³ównych trybów edycyjnych -musi wstawiaæ komentarze w odpowiedni sposób. Trybowi edycyjnemu -odpowiada nazwa polecenia, które mo¿esz wykonaæ, by prze³±czyæ siê w ten -tryb lub go wy³±czyæ. Przyk³adem mo¿e byæ M-x fundamental-mode, które -jest poleceniem prze³±czaj±cym tryb podstawowy. - -Je¶li zamierzasz edytowaæ tekst w jêzyku angielskim, taki jak na -przyk³ad oryginalna wersja tego samouczka, to prawdopodobnie -powiniene¶ u¿yæ trybu tekstowego (ang. text mode). - ->> Napisz M-x text-mode. - -Nie musisz siê martwiæ, bo ¿adne z poleceñ, które do tej pory pozna³e¶, -nie zmienia Emacsa w powa¿ny sposób. Mo¿esz jednak zauwa¿yæ, ¿e teraz -M-f i M-b traktuj± apostrofy jako czê¶ci s³ów. Poprzednio, w trybie -podstawowym, polecenia te traktowa³y apostrofy jako separatory s³ów. - -G³ówne tryby edycji wprowadzaj± zwykle subtelne zmiany, takie jak -opisana powy¿ej; wiêkszo¶æ poleceñ nadal robi ,,to samo'', chocia¿ -byæ mo¿e w troszeczkê inny sposób. - -By zobaczyæ dokumentacjê na temat bie¿±cego g³ównego trybu edycji, -naci¶nij C-h m. - ->> Naci¶nij C-u C-v raz lub wiêcej razy, tak by ta linia znalaz³a siê - blisko góry ekranu. - ->> Naci¶nij C-h m, by odczytaæ dokumentacjê na temat tego, czym tryb - tekstowy ró¿ni siê od trybu podstawowego. - ->> Naci¶nij q, by usun±æ dokumentacjê trybu z ekranu. - -G³ówne tryby edycji nazywaj± siê w³a¶nie ,,g³ównymi'', gdy¿ wystêpuj± -tak¿e ,,podrzêdne'' tryby edycji (ang. minor modes). Podrzêdne tryby -edycji nie s± alternatyw± dla trybów g³ównych, lecz jedynie ich -niewielk± modyfikacj±. Ka¿dy podrzêdny tryb edycji mo¿na w³±czyæ lub -wy³±czyæ niezale¿nie od pozosta³ych trybów podrzêdnych, a tak¿e -niezale¿nie od trybu g³ównego. Mo¿esz wiec u¿ywaæ jednego, -kombinacji dowolnych, albo nie u¿ywaæ ¿adnego trybu podrzêdnego. - -Jednym z podrzêdnych trybów edycji, który jest bardzo u¿yteczny, -szczególnie do edycji tekstu angielskiego lub polskiego, jest tryb -automatycznego wype³niania (ang. auto fill mode). Je¶li jest on -w³±czony, to Emacs ³amie linie pomiêdzy s³owami automatycznie, gdy -podczas wstawiania tekstu linia robi siê za szeroka. - -Tryb automatycznego wstawiania w³±cza siê na przyk³ad poleceniem M-x -auto-fill-mode. Powtórzenie tego polecenie powoduje wy³±czenie -trybu, ponowne powtórzenie --- jego w³±czenie, i tak dalej. Mówimy, ¿e -polecenie ,,prze³±cza tryb''. - ->> Napisz M-x auto-fill-mode. Wstaw potem wiele napisów - ,,asdf '' tak d³ugo, a¿ zobaczysz, ¿e linia podzieli na dwie. - Miêdzy literami musisz wstawiaæ spacje, poniewa¿ tryb - automatycznego wype³niania ³amie linie tylko tam, gdzie s± spacje. - -Margines jest zazwyczaj ustawiony na 70 znaków, ale mo¿esz to zmieniæ -poleceniem C-x f. Powiniene¶ poleceniu podaæ argument liczbowy -mówi±cy, w której kolumnie ma zostaæ ustawiony margines. - ->> Wywo³aj C-x f z argumentem równym 20. (C-u 2 0 C-x f). - Napisz potem jaki¶ tekst i zauwa¿, ¿e Emacs wype³nia linie do - d³ugo¶ci co najwy¿ej 20 znaków. Ustaw margines z powrotem na - 70 znaków, wywo³uj±c jeszcze raz C-x f z odpowiednim argumentem. - -Je¶li zmieniasz tekst wewn±trz akapitu, to tryb automatycznego -wype³niania sam z siebie nie wyrówna marginesu. Mo¿esz go wyrównaæ -samodzielnie, wydaj±c polecenie M-q (Meta-q) (kursor powinien siê -wówczas znajdowaæ wewn±trz akapitu). - ->> Przesuñ kursor do poprzedniego akapitu i naci¶nij M-q. - - -* SZUKANIE ----------- - -Emacs potrafi szukaæ ³añcuchów (zwartych ci±gów znaków lub s³ów) -zarówno wstecz jak i do przodu. Szukanie ³añcucha jest poleceniem, -które przesuwa kursor --- do nastêpnego miejsca, w którym dany -³añcuch wystêpuje. - -Polecenie Emacsa "search" ró¿ni siê od podobnych poleceñ w innych -edytorach tym, ¿e jest przyrostowe. Znaczy to, ¿e szukanie odbywa -siê w trakcie, gdy wpisujesz kolejne znaki ³añcucha, który ma zostaæ -znaleziony. - -Poleceniami rozpoczynaj±cymi szukanie s±: C-s dla szukania w przód -oraz C-r dla szukania wstecz. POCZEKAJ PROSZÊ! Nie próbuj ich w tej -chwili. - -Gdy naci¶niesz C-s, zauwa¿ysz, ¿e w obszarze echa pojawi siê -tekst "I-search". Jest to informacja, ¿e Emacs znajduje siê w trybie -"incremental search" i czeka, by¶ napisa³ tekst, który ma znale¼æ. -Naci¶niêcie koñczy proces szukania. - ->> Rozpocznij teraz szukanie, naciskaj±c C-s. POWOLI, litera po - literze, napisz s³owo kursor, zatrzymuj±c siê po ka¿dym znaku - i obserwuj±c, gdzie zatrzymuje siê kursor. Gdy naci¶niesz drugie - r, bêdzie mo¿na powiedzieæ, ¿e szuka³e¶ s³owa kursor - jednokrotnie. Naci¶nij jeszcze raz C-s, by znale¼æ nastêpne - wyst±pienie s³owa kursor. Naci¶nij teraz cztery razy - i zobacz, co siê dzieje z kursorem. Naci¶nij , by skoñczyæ - szukanie. - -Widzia³e¶, co siê dzia³o? Podczas szukania przyrostowego Emacs próbuje -przej¶æ do miejsca wyst±pienia ³añcucha, który wpisa³e¶ do tej pory, -i pod¶wietla go dla Twojej wygody. By znale¼æ nastêpne wyst±pienie -s³owa kursor, po prostu jeszcze raz naci¶nij C-s. Je¶li takiego -wyst±pienia nie ma, to Emacs zapiszczy i napisze, ¿e szukanie -,,skoñczy³o siê pora¿k±''. - -Kombinacja C-g przerywa proces szukania, podobnie jak to czyni -z innymi poleceniami. - -UWAGA: W niektórych systemach naci¶niecie C-s zamra¿a ekran i w -rezultacie Emacs nie mo¿e pokazywaæ tekstu. Oznacza to, ¿e sk³adowa -systemu operacyjnego, zwana kontrol± przep³ywu (ang. "flow control"), -przechwyci³a znak C-s i nie pozwoli³a mu dotrzeæ do Emacsa. By odzyskaæ -kontrolê nad ekranem, naci¶nij C-q. Dodatkowej pomocy poszukaj w -rozdziale "Spontaneous Entry to Incremental Search" w podrêczniku -Emacsa. - -Je¶li podczas szukania przyrostowego naci¶niesz , to zauwa¿ysz, -¿e w minibuforze znika ostatni znak wpisanego przez ciebie ³añcucha, a -kursor wraca do poprzedniego miejsca. Przypu¶æmy na przyk³ad, ¿e -nacisn±³e¶ k i znalaz³e¶ pierwsze wyst±pienie tej litery. Je¶li teraz -naci¶niesz u, to kursor przesunie siê tu¿ za najbli¿sze litery -ku. Naci¶nij teraz . Spowoduje to skasowanie z wyszukiwanego -³añcucha litery u, a kursor wróci do pierwszego wyst±pienia litery k. - -Je¶li podczas szukania naci¶niesz jaki¶ klawisz w kombinacji z META lub -Ctrl (z nielicznymi wyj±tkami --- znakami, które maj± specjalne -znaczenie podczas szukania, takimi jak C-s i C-r), to szukanie zostanie -przerwane. - -C-s rozpoczyna proces szukania do przodu, czyli ZA bie¿±c± pozycj± -kursora. Je¶li chcesz szukaæ czego¶ po³o¿onego w tek¶cie wcze¶niej, -to naci¶nij C-r. Wszystko, co powiedzieli¶my o poleceniu C-s, stosuje -siê te¿ do C-r, oczywi¶cie w odniesieniu do szukania wstecz. - - -* WIELE OKIEN -------------- - -Jedn± z u¿ytecznych cech Emacsa jest mo¿liwo¶æ wy¶wietlania wiêcej ni¿ -jednego okna na raz. - ->> Przesuñ kursor do tej linii i naci¶nij C-u 0 C-l. - ->> Naci¶nij teraz C-x 2, co podzieli ekran na dwa okna. Obydwa okna - wy¶wietlaj± ten samouczek. Kursor pozostaje w górnym oknie. - ->> Naci¶nij C-M-v by przewin±æ dolne okno. (Je¶li nie masz - klawisza Meta lub Alt, to naci¶nij ESC C-v.) - ->> Naci¶nij C-x o ("o" jak angielskie "other") by przesun±æ kursor do - dolnego okna. U¿yj C-v i M-v w dolnym oknie, by przewin±æ jego - zawarto¶æ. Polecenia, które masz wykonaæ, odczytuj z górnego okna. - ->> Naci¶nij C-x o jeszcze raz tak, by kursor wróci³ do górnego okna. - Kursor w górnym oknie nie zmieni³ po³o¿enia. - -Ka¿de okno pamiêta po³o¿enie swojego kursora, lecz w danej chwili -tylko jedno z okien wy¶wietla kursor. Wszystkie polecenia edycyjne -stosuj± siê do okna, w którym jest kursor. To okno nazywane jest -,,oknem wybranym''. - -Polecenie C-M-v przyda Ci siê, gdy bêdziesz chcia³ edytowaæ tekst w -jednym oknie, a drugiego u¿ywa³ jako punktu odniesienia. Dziêki niemu -kursor mo¿e zawsze znajdowaæ siê w oknie, którego zawarto¶æ edytujesz, a -Ty mo¿esz przesuwaæ drugie okno. - -C-M-v to przyk³ad kombinacji, który uzyskuje siê, wciskaj±c jednocze¶nie -klawisze Ctrl i Meta (Alt). Je¶li masz prawdziwy klawisz META (Alt), to -C-M-v mo¿esz uzyskaæ przytrzymuj±c jednocze¶nie Ctrl oraz META (Alt) i -naciskaj±c v. Nie jest wa¿ne, co zosta³o naci¶niête wcze¶niej, Ctrl czy -META, poniewa¿ obydwa te klawisze dzia³aj± jako modyfikatory znaczenia -znaków. - -Je¶li nie masz klawisza META (Alt) i w jego zastêpstwie u¿ywasz ESC, to -kolejno¶æ naciskania klawiszy ma znaczenie: musisz najpierw nacisn±æ i -pu¶ciæ ESC, po czym nacisn±æ Ctrl-v; kombinacja Ctrl-ESC v nie zadzia³a. -Wynika to z tego, ¿e ESC jest znakiem, a nie modyfikatorem. - ->> Naci¶nij C-x 1 (w górnym oknie), by pozbyæ siê okna dolnego. - -(Je¶li nacisn±³by¶ C-x 1 w dolnym oknie, to górne by znik³o. Mo¿esz -sobie to polecenie t³umaczyæ jako ,,pozostaw tylko jedno okno --- to w -którym w³a¶nie jestem''.) - -Nie musi byæ tak, ¿e obydwa okna pokazuj± ten sam bufor. Je¶li u¿yjesz -C-x C-f, by odwiedziæ jaki¶ plik w jednym z nich, to zawarto¶æ drugiego -siê nie zmieni. Z zasady w ró¿nych oknach mo¿esz niezale¿nie wy¶wietlaæ -ró¿ne pliki. - -Oto inny sposób u¿ywania dwóch okien do wy¶wietlania dwóch ró¿nych -rzeczy: - ->> Naci¶nij C-x 4 C-f i nazwê jednego z Twoich plików. Zakoñcz - wprowadzanie klawiszem . Podany plik pojawi siê w dolnym - oknie razem z kursorem, który tam przeskakuje. - ->> Naci¶nij C-x o, by wróciæ do górnego okna, oraz C-x 1 by usun±æ - dolne okno. - - -* REKURSYWNE POZIOMY EDYCJI ---------------------------- - -Czasami mo¿esz znale¼æ siê w czym¶, co nazywa siê "rekursywnym -poziomem edycji". Mo¿esz to rozpoznaæ po nawiasach kwadratowych w -linii trybu, obejmuj±cych nawiasy okr±g³e zawieraj±ce nazwê g³ównego -trybu edycji. Móg³by¶ na przyk³ad zobaczyæ [(Fundamental)] zamiast -(Fundamental). - -By wyj¶æ z rekursywnego poziomu edycji, naci¶nij ESC ESC ESC. Jest to -ogólnego przeznaczenia polecenie ,,wychodzimy''. Mo¿esz go u¿yæ tak¿e, -by pozbyæ siê nadmiaru okien albo wyj¶æ z minibufora. - ->> Naci¶nij M-x by wej¶æ do minibufora, potem naci¶nij ESC ESC ESC, by - z niego wyj¶æ. - -Aby wyj¶æ z rekursywnego poziomu edycji, nie wystarczy u¿yæ C-g. Dzieje -siê tak dlatego, ¿e klawisz C-g jest u¿ywany do anulowania poleceñ i -argumentów WEWN¡TRZ pojedynczego rekursywnego poziomu edycji. - - -SZUKANIE POMOCY ---------------- - -W tym samouczku dostarczyli¶my tylko tyle informacji, ile jest -niezbêdne, by¶ móg³ zacz±æ u¿ywaæ Emacsa. Emacs jest istn± kopalni± -najró¿niejszych rzeczy, których nie sposób tutaj opisaæ. Bêdziesz -zapewne chcia³ dowiedzieæ siê o Emacsie wiêcej, poniewa¿ posiada on -wiele po¿ytecznych cech, o których na razie nic nie wiesz. Miêdzy innymi -jest w nim zaszyte mnóstwo wewnêtrznej dokumentacji. Dotrzeæ do tej -dokumentacji mo¿esz po naci¶niêciu kombinacji C-h. - -By uzyskaæ pomoc, naci¶nij C-h, a potem znak, który okre¶la jakiego -rodzaju pomocy oczekujesz. Je¶li poczujesz siê NAPRAWDÊ zagubiony, to -napisz C-h?, a Emacs podpowie, jakiego rodzaju pomocy mo¿e Ci -dostarczyæ. Je¶li naci¶niesz C-h, a potem zadecydujesz, ¿e pomoc nie -jest Ci jednak potrzebna, to aby anulowaæ zapocz±tkowane polecenie C-h, -po prostu wci¶nij C-g. - -Najprostsz± pomoc mo¿esz uzyskaæ naciskaj±c C-h c. Naci¶nij C-h a potem -c, po czym kombinacjê klawiszy, której znaczenie chcesz poznaæ; Emacs -wy¶wietli krótki opis polecenia odpowiadaj±cego tej kombinacji. - ->> Naci¶nij C-h c C-p. - -Powinno to przywo³aæ komunikat, o tre¶ci podobnej do - - C-p runs the command previous-line - -W ten sposób mo¿esz uzyskaæ ,,nazwê funkcji'' przypisanej kombinacji -klawiszy. Przydaje siê to podczas pisania kodu w Lispie, w którym -zapisane s± rozszerzenia Emacsa; wystarcza to tak¿e do przypomnienia -Ci, co dane polecenie robi, je¶li widzia³e¶ je ju¿ wcze¶niej, lecz -go nie zapamiêta³e¶. - -Jako dope³nienie polecenia C-h c Emacs dopuszcza te¿ wieloznakowe -kombinacje klawiszy, na przyk³ad C-x C-s albo (je¶li nie masz klawisza -META lub Alt) v. - -By uzyskaæ wiêcej informacji na temat polecenia, naci¶nij C-h k -zamiast C-h c. - ->> Naci¶nij C-h k C-p. - -To polecenie wy¶wietla dokumentacjê na temat danej funkcji oraz jej -nazwê w oknie Emacsa. Gdy skoñczysz ¶ledziæ wynik tego polecenia -naci¶nij C-x 1, by pozbyæ siê tekstu pomocy. Nie musisz tego robiæ od -razu. Mo¿esz wykonaæ pewne operacje w oparciu o tekst pomocy zanim -naci¶niesz C-x 1. - -Oto kilka innych u¿ytecznych wariantów C-h: - - C-h f Opisz funkcje o podanej nazwie. - ->> Napisz C-h f previous-line. Wypisze to na ekranie ca³± - informacje, jak± Emacs ma na temat funkcji, która implementuje - polecenie C-p. - -Podobnie komenda C-h v pokazuje na ekranie dokumentacjê zmiennych, -których warto¶ci mo¿esz zmieniæ, aby dostosowaæ Emacsa do swoich -preferencji. Wpisz nazwê zmiennej, gdy Emacs o ni± poprosi. - - - C-h a Apropos. Wpisz s³owo, a Emacs wypisze listê - wszystkich poleceñ, których nazwa zawiera to s³owo. - Polecenia te mo¿na wywo³ywaæ za pomoc± Meta-x. - Dla niektórych poleceñ Apropos wypisze jedno- lub - dwuznakowe sekwencje, które wywo³uj± te polecenia. - ->> Napisz C-h a file. - -Zobaczysz listê wszystkich poleceñ, -dostêpnych za pomoc± M-x, które maja s³owo "file" w swojej nazwie. -Zauwa¿ysz tam tak¿e polecenia takie, jak C-x C-f oraz C-x C-w, -umieszczone obok nazw poleceñ "find-file" i "write-file". - ->> Napisz C-M-v, aby przewin±æ okno pomocy. Zrób to kilka razy. ->> Napisz C-x 1, aby usun±æ okno pomocy. - - C-h i Czytanie elektronicznych podrêczników (w formacie Info). To - polecenie prze³±czy Ciê do specjalnego bufora o nazwie - *info*, gdzie bêdziesz móg³ przeczytaæ podrêczniki - dotycz±ce pakietów zainstalowanych w Twoim - systemie. Napisz m emacs , aby zapoznaæ siê z - podrêcznikiem Emacsa. Je¿eli nigdy wcze¶niej nie u¿ywa³e¶ - trybu Info, to napisz ?, a Emacs przedstawi Ci mo¿liwo¶ci - tego trybu. Po tym, jak zapoznasz siê z niniejszym krótkim - samouczkiem, w dalszej pracy dostêp do dokumentacji - bêdziesz uzyskiwa³ w³a¶nie za pomoc± Emacs Info. - - -DODATKOWE FUNKCJE ------------------ - -Wiêcej o Emacsie mo¿esz siê nauczyæ czytaj±c jego podrêcznik, w formie -ksi±¿kowej lub on-line w postaci Info (u¿yj menu Help lub naci¶nij F10 -h r). Dwie dodatkowe w³a¶ciwo¶ci, które szczególnie mog± siê przydaæ -to dope³nianie wprowadzanych danych i dired u³atwiaj±ce zarz±dzanie -plikami. - -Dope³nianie pozwala unikn±æ niepotrzebnego wpisywania. Na przyk³ad -je¶li chcesz siê prze³±czyæ do bufora *Messages*, mo¿esz nacisn±æ C-x -b *M a Emacs dope³ni dalsz± czê¶æ nazwy za Ciebie na tyle, na ile -bêdzie w stanie ustaliæ na podstawie tego, co do tej pory wpisa³e¶. Dope³nianie -jest opisane w Info w podrêczniku Emacsa w czê¶ci zatytu³owanej -"Dop³nianie" (ang. Completion). - -Dired umo¿liwia Ci zrobienie wykazu plików w danym katalogu (dodatkowo -w podkatalogach), przemieszczanie siê wewn±trz tej listy, odwiedzanie -plików, zmienianie nazw, usuwanie i inne operacje na plikach. Dired -jest opisane w Info w podrêczniku Emacsa w czê¶ci zatytu³owanej -"Dired". - -Podrêcznik dodatkowo opisuje wiele innych w³a¶ciwo¶ci Emacsa. - - -* KIEROWANIE KURSOREM Z X TERMINALA (akapit dodany przez autorów wersji polskiej) ------------------------------------ - -Je¶li pracujesz na terminalu graficznym, to do kierowania kursorem -prawdopodobnie ³atwiej Ci bêdzie u¿ywaæ klawiszy strza³ek po prawej -stronie klawiatury. Klawisze strza³ek: w lewo, w prawo, w górê i w dó³ -dzia³aj± zgodnie z oczekiwaniem; odpowiadaj± one dok³adnie C-b, C-f, C-p -i C-n, ale s± ³atwiejsze do zapamiêtania. Mo¿esz tak¿e u¿ywaæ C-lewo i -C-prawo, by przesuwaæ siê o s³owa, oraz C-góra i C-dó³, by przesuwaæ siê -o bloki (np. akapity, je¶li edytujesz tekst). Je¶li masz klawisze -oznaczone Home (lub Begin) oraz End, to przenios± Ciê one na pocz±tek i, -odpowiednio, na koniec linii, a C-Home i C-End na pocz±tek i koniec -pliku. Je¶li na Twojej klawiaturze s± klawisze PgUp i PgDn, to mo¿esz -ich u¿yæ do przesuwania siê o jeden ekran, tak jak M-v i C-v. - -Wszystkie te polecenia akceptuj± argument liczbowy, tak jak to -opisano powy¿ej. Wpisanie argumentu mo¿esz sobie upro¶ciæ: -naci¶nij i trzymaj CONTROL lub META i wpisz liczbê. Na -przyk³ad, aby przesun±æ kursor o 12 s³ów w prawo, naci¶nij C-1 C-2 -C-prawo. Zwróæ uwagê, ¿e jest to ³atwe do wpisania, poniewa¿ nie -musisz puszczaæ klawisza CONTROL podczas wpisywania cyfr. - - -* U¯YWANIE MENU (akapit dodany przez autorów wersji polskiej) ---------------- - -Je¶li pracujesz na X-terminalu, to u góry okna Emacsa powiniene¶ zauwa¿yæ -pasek z menu. Tego menu mo¿esz u¿ywaæ, by wywo³ywaæ najczê¶ciej -potrzebne polecenia Emacsa, takie jak "find file". Na pocz±tku bêdziesz -s±dzi³, ¿e jest to ³atwiejsze ni¿ u¿ywanie klawiatury, poniewa¿ nie -musisz siê na pamiêæ uczyæ kombinacji klawiszy, które uruchamiaj± -poszczególne polecenia. Gdy ju¿ jednak poznasz Emacsa, to zaczniesz -sobie te kombinacje przyswajaæ --- dla wygody przy pozycjach menu -pokazywane s± odpowiadaj±ce im kombinacje klawiszy. - -Zwróæ uwagê, ¿e niektóre pozycje wystêpuj±ce w menu nie maj± -odpowiedników klawiszowych. Na przyk³ad pozycja "Buffers" powoduje -wy¶wietlenie listy wszystkich dostêpnych buforów. Do ka¿dego z nich -mo¿esz siê prze³±czyæ, wybieraj±c jego nazwê, wy¶wietlon± pod pozycj± -Buffers. - - -PODSUMOWANIE ------------- - -Pamiêtaj, ¿e by wyj¶æ z Emacsa na sta³e, trzeba wydaæ polecenie C-x C-c. -By wyj¶æ do pow³oki na chwilê tak, by jeszcze Do Emacsa wróciæ, trzeba -u¿yæ C-z. (To nie dzia³a pod X-Windows, poniewa¿ tam nie ma prawdziwego -konceptu przej¶cia na chwilê do pow³oki. Zamiast tego C-z ,,ikonizuje'' -okno Emacsa.) - -Ten samouczek by³ pisany tak, by wszyscy nowi u¿ytkownicy mogli go -zrozumieæ. Je¶li co¶ pozostawi³ niejasnym, nie sied¼ cicho i nie -obwiniaj siebie, tylko daj nam znaæ! - - -KOPIOWANIE ----------- - -Niniejszy samouczek jest potomkiem w d³ugiej linii samouczków -Emacsa, która rozpoczyna siê od tego, który zosta³ napisany przez -Stuarta Cracrafta dla oryginalnego Emacsa. Zosta³ on zmodyfikowany we -wrze¶niu 1994 przez Bena Winga, który zaktualizowa³ go w celu uwzglêdnienia -pracy pod X-Windows. - -Autorem pierwszego t³umaczenia na jêzyk polski by³ Remek Trzaska -, a pomaga³ mu Ryszard Kubiak -. Tamto t³umaczenie zosta³o uaktualnione dla -wersji GNU Emacs 21 przez Beatê Wierzcho³owsk± -z pomoc± Ryszarda Kubiaka i Janusza S. Bienia . - -Ta wersja samouczka, podobnie jak GNU Emacs, jest chroniona prawem -autorskim, ale wolno j± kopiowaæ pod nastêpuj±cymi warunkami: - -Copyright (C) 1985, 1994, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 Free Software Foundation, Inc. - -Zezwala siê na wykonywanie lub rozpowszechnianie -wiernych kopii tego dokumentu w otrzymanej formie, na dowolnym -no¶niku, pod warunkiem zachowania informacji o -prawach autorskich i niniejszym zezwoleniu oraz pod -warunkiem, ¿e dystrybutor udzieli odbiorcy pozwolenia na -dalsze rozpowszechnianie zgodnie z niniejszym zezwoleniem. - - -Zezwala siê równie¿ na rozpowszechnianie na warunkach podanych -powy¿ej zmodyfikowanych wersji tego dokumentu lub jego czê¶ci, -pod warunkiem, ¿e zostan± wyra¼nie uwidocznione -informacje o tym, kto dokona³ modyfikacji jako ostatni. - - -Warunki kopiowania samego Emacsa s± bardziej skomplikowane, ale zgodne -z t± ide±. Proszê, przeczytaj plik COPYING, po czym rozdaj swoim -znajomym kopie Emacsa. Pomó¿ têpiæ obstrukcjonizm w informatyce, -u¿ywaj±c, tworz±c i dziel±c siê oprogramowaniem swobodnym. - -;;; Local Variables: -;;; mode: fundamental -;;; coding: latin-2 -;;; sentence-end-double-space: nil -;;; End: - -;;; arch-tag: 6c6b7445-4cd5-44ca-a101-7f4697b92f60 diff --git a/etc/TUTORIAL.pt_BR b/etc/TUTORIAL.pt_BR deleted file mode 100644 index f2ceb9a0e0a..00000000000 --- a/etc/TUTORIAL.pt_BR +++ /dev/null @@ -1,1088 +0,0 @@ -Tutorial do Emacs. Veja no fim as condições para cópia. - -Os comandos do Emacs geralmente envolvem a tecla CONTROL (algumas vezes -nomeada CTRL ou CTL) ou a tecla META (algumas vezes nomeada EDIT ou -ALT). Antes de escrever isso tudo toda vez, usaremos as seguintes -abreviações: - - C- Significa pressionar a tecla CONTROL enquanto digitar o - caractere . - Assim, C-f seria: Pressionar a tecla CONTROL e digitar f. - M- Significa pressionar a tecla META, EDIT ou ALT enquanto - digitar . - Se não tiver META, EDIT ou ALT, no lugar digite ESC e depois - . Escrevemos para tecla ESC. - - -Nota importante: para terminar a sessão do Emacs, digite C-x C-c. (Dois -caracteres.) Os caracteres ">>" na margem esquerda indicam direções para -você tentar usar um comando. Por exemplo: -<> -[Metade da página em branco para propósitos didáticos. O texto continua -abaixo] ->> Agora digite C-v (Ver próxima tela) para ir para próxima tela. - (vá em frente, faça isso pressionando a tecla CONTROL enquanto - digitar v). - De agora em diante, você deve fazer isso de novo sempre que você - terminar de ler a tela. - -Note que tem uma sobreposição de duas linhas quando você move de tela em -tela; isso fornece uma continuidade para que você continue lendo o -texto. - -A primeira coisa que você precisa saber é como se mover de um lugar a -outro no texto. Você já sabe como mover para próxima tela, com -C-v. Para mover para trás uma tela, digite M-v (pressione a tecla -META enquanto digita v, ou digite v se o seu teclado não tiver a tecla -META, EDIT ou ALT). - ->> Tente digitar M-v e depois C-v, algumas vezes. - - -* SUMÁRIO ---------- - -Os comandos a seguir são úteis para visualizar telas inteiras - - C-v Move para tela inteira posterior - M-x Move para tela inteira anterior - C-l Limpa a tela e re-mostrá todo o texto, movendo o texto ao - redor do cursor para o centro da tela. (Isso é - control-L, não control-1.) - ->> Encontre o cursor, e note o texto que está perto dele. - Digite C-l. - Encontre o cursor novamente e perceba que o mesmo texto continua - perto do cursor. - - -* CONTROLE BÁSICO DO CURSOR ---------------------------- - -Movendo de uma tela inteira para outra tela cheia é útil, mas como você -move para um lugar especifico com o mesmo texto na tela? - -Existem diversas maneiras para você poder fazer isso. A maneira mais -básica é utilizar os comandos C-p, C-b, C-f e C-n. Cada um desses -comandos movem o cursor uma linha ou coluna na tela em uma direção -particular. Aqui está uma tabela mostrando esses quatro comandos e as -direções que eles movem: - - Linha anterior, C-p - : - : - Traz, C-b .... Posição corrente do cursor .... Frente, C-f - : - : - Linha posterior, C-n - ->> Mova o cursor para a linha no meio do diagrama acima utilizando C-n - ou C-p. Digite C-l para ver o diagrama inteiro centralizado na tela. - -Você provavelmente achará isso fácil pensando neles pela letra: P para -Previous (anterior), N para Next (Posterior), B para Backward (trás) e F -para Forward (frente). Estes são os comandos básicos de posicionamento -de cursor e você os estará utilizando a TODO tempo, então seria ótimo -se você os aprendesse agora. - ->> Faça alguns C-n's para trazer o cursor abaixo desta linha. - ->> Mova para a linha com C-f's e depois para cima com C-p's. - Veja o que C-p faz quando o cursor está no meio da linha. - -Cada linha de texto termina com um caractere de nova linha, que serve -para separar da próxima linha. No fim da última linha deve ter um -caractere de nova linha (mas não é exigido pelo Emacs). - ->> Tente digitar C-b no começo da linha. O cursor deve mover para o fim - da linha anterior. Isso acontece por que ele se moveu para trás - através do caractere de nova linha. - -C-f pode mover o cursor através de uma Nova linha do mesmo jeito que - C-b. - ->> Faça mais alguns C-b's, assim você percebe onde o está o cursor. - Depois alguns C-f's para retornar para o fim da linha. - Depois mais um C-f para mover para linha seguinte. - -Quando você move o cursor passando o topo ou o rodapé da tela, o próximo -texto além da borda desloca-se na tela. Isso é chamado rolagem. Isso -ativa o Emacs para mover o cursor para o lugar especificado no texto sem -movê-lo fora da tela. - ->> Tente mover o cursor fora do rodapé da tela com C-n, e veja o que - acontece. - -Se mover por caracteres é muito lento, você pode se mover por -palavras. M-f (Meta-f) move uma palavra para frente e M-b uma palavra -para trás. - ->> Digite alguns M-f's e M-b's - -Quando você está no meio de uma palavra, M-f move o cursor para o fim da -mesma. Quando você está em um espaço em branco no meio de duas palavras, -M-f move o cursor para o fim da palavra seguinte. M-b funciona do mesmo -jeito na direção contraria. - ->> Digite M-f e M-b algumas vezes, intercalado com C-f's e C-b's assim - você pode observar a ação do M-f e M-b de varias lugares dentro e no - meio de palavras. - -Observe o paralelismo entre C-f e C-b por um lado, e M-f e M-b por outro -lado. Muito freqüentemente os caracteres Meta são usados para operações -relacionadas com as unidades definidas pela linguagem (palavras, -sentenças, parágrafos), enquanto caracteres Control operam nas unidades -básicas que são independente do que você está editando (caracteres, -linhas, etc). - -Esse paralelismo aplica-se entre linhas e sentenças: C-a e C-e move o -cursor para o começo ou fim da linha, e M-a e M-e move o cursor para o -começo ou fim da sentença. - ->> Tente alguns C-a's, e depois alguns C-e's. - Tente alguns M-a's, e depois alguns M-e's. - -Veja como repetidos C-a's fazem nada, mas repetidos M-a's mantém movendo -mais uma sentença. Embora estes não sejam completamente análogos, cada -um parece natural. - -A posição do cursor no texto é também chamado "ponto" (point). Para -parafrasear, o cursor mostra na tela onde o ponto é encontrado no texto. - -Aqui está um simples sumário das operações de movimento de cursor, -incluindo comandos de movimento de palavra e sentença. - - C-f Move o cursor um caractere para frente - C-b Move o cursor um caractere para trás - - M-f Move o cursor uma palavra para frente - M-b Move o cursor uma palavra para trás - - C-n Move o cursor para linha posterior - C-p Move o cursor para linha anterior - - C-a Move o cursor para o começo da linha - C-e Move o cursor para o fim da linha - - M-a Move o cursor para trás no começo da sentença - M-e Move o cursor para frente no fim da sentença - ->> Tente agora todos estes comandos algumas vezes para praticar. - Estes são os comandos mais utilizados. - -Outros dois comandos de movimento de cursor importantes são M-< (Meta -Menor-que), o qual move o cursor para o começo de todo o texto, e M-> -(Meta Maior-que), o qual move para o fim de todo o texto. - -Na maioria dos terminais, o "<" é acima da vírgula, então você precisa -utilizar a tecla shift para digitá-la. Nestes terminais você precisa -utilizar a tecla shift para digitar M-< também; sem a tecla shift, você -estaria teclando M-virgula. - ->> Tente agora M-<, para mover o cursor ao começo do tutorial. - Use então C-v repetidamente para trazer o cursor novamente aqui. - ->> Tente agora M->, para mover o cursor ao fim do tutorial. - Use então M-v repetidamente para trazer o cursor novamente aqui. - -Você também pode mover o cursor com as setas, se o seu terminal tem -teclas com setas. Nós recomendamos aprender C-b, C-f, C-n e C-p por três -razões. Primeira, elas funcionam em todos os terminais. Segunda, uma vez -que você ganhar prática usando o Emacs, você descobrirá que digitar -nestes caracteres Control é mais rápido do que digitar nas setas (porque -você não tem que mover suas mãos tão longe da posição de -digitação). Terceira, uma vez que você tiver o hábito de utilizar estes -comandos de caracteres Control, você pode facilmente aprender como usar -outros comandos avançados de movimentação do cursor. - -A maioria dos comandos do Emacs aceitam argumentos numéricos; para -maioria dos comandos, isso serve como um fator de repetição. A maneira -que você da a um comando uma repetição teclando C-u e depois os dígitos -antes de digitar o comando. Se você tem o META (EDIT ou ALT), tem outra -alternativa para digitar um argumento numérico: digite os dígitos -enquanto pressionando a tecla META. Nós recomendamos aprender o método -C-u porque funciona em todos os terminais. O argumento numérico também é -chamado de "argumento prefixo", porque você digita o argumento antes do -comando que ele se aplica. - -Por exemplo, C-u 8 C-f move o cursor oito caracteres para frente - ->> Tente usar C-n ou C-p com um argumento numérico, para mover o - cursor para um linha perto dessa com um único comando. - -A maioria dos comandos usam o argumento numérico para um fator de -repetição, mas alguns comandos usam isso de outra maneira. Diversos -comandos (mas nenhum daqueles comandos que você tenha aprendido até -agora) usam isso como uma marca -- a presença de um argumento prefixo, -independente do seu valor, faz o comando fazer alguma coisa diferente. - -C-v e M-v são outro tipo de exceção. Quando você da um argumento, eles -rolam a tela para cima ou para baixo por aquele número de linhas, de -preferência com a tela cheia. Por exemplo, C-u 8 C-v rola a tela 8 -linhas. - ->> Tente agora digitar C-u 8 C-v. - -Isso deve ter rolado a tela para cima 8 linhas. Se você quiser rolar a -tela para baixo novamente, você pode dar um argumento para o M-v. - -Se você está usando um display com janelas, como o X11 ou MS-Windows, -deve ter uma área retangular alta chamada barra de rolagem na mão -esquerda da janela do Emacs. Você pode rolar o texto clicando o mouse na -barra de rolagem. - ->> Tente pressionar o botão do meio no topo da área destacada junto a - barra de rolagem. Isso deve rolar o texto para uma determinada - posição dependendo de quão alto ou baixo você clicar. - ->> Tente mover o mouse para cima e para baixo, enquanto pressionar o - botão do meio. Você verá que o texto rolará para cima e baixo assim - que você mover o mouse. - - -* QUANDO O EMACS PARECE MORTO ------------------------------ - -Se o Emacs parar de responder os seus comandos, você pode seguramente -pará-lo digitando C-g. Você pode utilizar C-g para parar um comando que -está levando muito tempo para executar. - -Você também pode utilizar C-g para interromper um argumento numérico ou -o inicio de um comando que você não quer terminar. - ->> Digite C-u 100 para fazer um argumento numérico de 100, e depois - digite C-g. Agora digite C-f. O Cursor deve mover apenas um - caractere, porque você cancelou o argumento com C-g. - -Se você digitou um por engano, você pode sair dele com um c-g. - - -* COMANDOS DESABILITADOS ------------------------- - -Alguns comandos do Emacs são "desabilitados" para que os usuários -iniciantes não utilizem por acidente. - -Se você digita um dos comandos desabilitados, o Emacs mostrará uma -mensagem dizendo qual comando foi, e pergunta se você quer seguir e -executar o comando. - -Se você realmente quiser tentar o comando, digite Espaço na resposta da -pergunta. Normalmente, se você não quer executar o comando desabilitado, -responda a pergunta com "n". - ->> Digite C-x C-l (que é um comando desabilitado), - e então digite n para responder a pergunta. - - -* JANELAS ---------- - -O Emacs pode ter diversas janelas, cada uma mostrando seu próprio -texto. Nós vamos explicar mais tarde como utilizar estas múltiplas -janelas. Neste momento nos queremos explicar como se livrar das janelas -extras e voltar a edição básica em uma janela. É simples: - - C-x 1 Uma janela (mate todas as outras janelas). - -Isto é Control-x seguido pelo digito 1. C-x 1 expande a janela que está -com o cursor, para ocupar a tela inteira. Ela remove todas as outras -janelas. - ->> Mova o cursor para esta linha e digite C-u 0 C-l. ->> Digite Control-h k Control-f. - Veja como esta janela diminui, enquanto uma nova aparece para mostrar - a documentação do comando Control-f. - ->> Digite C-x 1 e veja a listagem de documentação desaparecer. - -Este comando é diferente dos outros que você aprendeu por isso ele -consiste em dois caracteres. Ele inicia com o caractere Control-x. Tem -uma grande serie de comandos que iniciam com Control-x; a maioria deles -tem a ver com janelas, arquivos, buffers, e coisas relacionadas. Estes -comandos tem dois, três ou quatro caracteres de tamanho. - - -* INSERINDO E REMOVENDO ------------------------ - -Se você quiser inserir um texto, apenas digite o texto. Os caracteres -que você verá, como A, 7, *, etc. são vistos pelo Emacs como texto e são -inseridos imediatamente. Digite para inserir um caractere de -nova linha. - -Você pode remover o último caractere que você inseriu digitando -. é uma tecla no teclado, que está nomeado como -"Del". Em algumas casos, a tecla "Backspace" serve como o , mas -nem sempre! - -Mas geralmente, remove o caractere imediatamente anterior a -posição corrente do cursor. - ->> Faça isso agora - Digite alguns caracteres, então remova-os - digitando algumas vezes. Não se preocupe em modificar este - arquivo; você não alterará o arquivo principal. Esta é a sua cópia - pessoal dele. - -Quando uma linha de texto fica muito grande na tela, a linha do texto é -continuada na linha seguinte. Uma barra invertida ("\") na margem -direita indica a linha que foi continuada. - ->> Insira texto até que você alcance a margem direita, e mantenha - inserindo. Você verá a linha de continuação aparecer. - ->> Utilize para remover o texto até a linha caber em uma linha - novamente. A linha de continuação irá embora. - -Você pode remover o caractere de nova linha como qualquer outro -caracter. Removendo o caractere de nova linha entre duas linhas você -juntará as duas em uma única linha. Se o resultado for muito longo para -acomodar na largura da tela, aparecerá um caractere de continuação. - ->> Mova o cursor para o inicio da linha e digite . Isso juntará - esta linha com a anterior. - ->> Digite para re-inserir a nova linha que você removeu. - -Lembre-se que a maioria dos comandos do Emacs podem receber um número de -repetição; isso inclui texto de caracteres. Repetir um texto de -caractere o insere algumas vezes. - ->> Tente isso agora -- digite C-u 8 * para inserir ********. - -Você acabou de aprender o jeito mais simples de digitar alguma coisa no -Emacs e corrigir os erros. Você pode remover palavras ou linhas -também. Aqui vai um sumário dos comandos de deleção: - - remove o caractere imediatamente antes do cursor - M-d remove o próximo caractere apos o cursor - - M- Mata a palavra imediatamente antes do cursor - M-d Mata a próxima palavra depois do cursor - - C-k Mata a posição do cursor até o fim da linha - M-k Mata até o fim da sentença corrente - -Note que o e o C-d vs M- e M-d estende o paralelo -iniciado por C-f e M-f (bem, não é realmente um controle de -caractere, mas não vamos nos preocupar com isso). C-k e M-k são como C-e -e M-e, uma parte, nessas linhas são sentenças opostas. - -Você pode também matar parte de um buffer com um método uniforme. Mova -para o fim dessa parte, e digite C-@ ou C-SPC (um ou outro). (SPC é a -Barra de Espaço.) Mova para o outro fim dessa parte, e digite C-w. Isso -matará todo o texto entre as duas posições. - ->> Mova o cursor para o V no inicio do parágrafo anterior. ->> Digite C-SPC. Emacs vai mostrar a mensagem "Mark set" no rodapé da - tela. ->> Mova o cursor para o . (ponto) no "fim", na segunda linha do - parágrafo. ->> Digite C-w. Isso vai matar o texto iniciando no V, e terminando bem - antes do . (ponto). - -A diferença entra "matar" e "remover" é que o texto "matado" pode ser -re-inserido, onde os textos "removidos" não podem ser re-inseridos. -Re-inserção de um texto matado chama-se colar (yanking). Geralmente, o -comando que pode remover bastante texto mata o texto (eles fazem com que -você possa colar (yank) o texto), enquanto os comandos que removem um -caractere, ou apenas linhas brancas ou espaços, fazem deleção (para que -você não possa colar esse texto). - ->> Mova o cursor para o inicio da linha que não esteja vazia. - Agora digite C-k para matar o texto nessa linha. ->> Digite C-k pela segunda vez. Você verá que a nova linha que segue a - linha será matada. - -Note que um simples C-k mata o conteúdo de uma linha, é um segundo C-k -mata a linha, e faz com que todas as outras linhas movam para cima. C-k -trata um argumento numérico especialmente: ele mata tantas linhas E seus -conteúdos. Isso não é uma simples repetição. C-u 2 C-k mata duas linhas -e suas novas linhas; digitar C-k duas vezes não faria isso. - -Para trazer o texto matado novamente é chamado colar "yaking". (Pense -nisso como colar, ou trazer de volta, algum texto que foi levado -embora.) Você pode colar (yank) o texto matado no mesmo lugar onde ele -foi matado, ou em qualquer outro lugar do buffer, ou ate em um arquivo -diferente. Você pode colar o texto diversas vezes, o que fará diversas -cópias dele. - -O comando para colar é C-y. Ele re-insere o último texto matado, na -posição corrente do cursor. - ->> Tente; digite C-y para colar o texto novamente. - -Se você fizer diversos C-k's em uma linha, todo esse texto matado será -salvo junto, então aquele C-y vai colar todas aquelas linhas de uma vez. - ->> Faca isso agora, digite C-k diversas vezes. - -Agora pegue o texto matado: - -Digite C-y. Então mova o cursor para baixo algumas linhas e digite C-y -novamente. Agora você sabe como copiar determinado texto. - -O que você faria se você tivesse determinado texto que você gostaria de -colar, e então você mata alguma outra coisa? C-y colará o kill mais -recente. Mas o antigo texto ainda não foi perdido. Você pode tê-lo -novamente usando o comando M-y. Depois que você der um C-y para pegar o -kill mais recente, digitar M-y troca o que você colou pelo anterior a -ele. Digitar M-y novamente e novamente traz kills anteriores e -anteriores. Quando você tiver alcançado o texto que você que esta -procurando, você não precisa fazer nada para mantê-lo. Apenas continue -com a sua edição, deixando o texto onde ele esta. - -Se você digitar M-y o suficiente, você começará do inicio novamente (o -kill mais recente). - ->> Mate uma linha, mova por ai, mate mais uma linha. - Agora digite C-y para colar a segunda linha matada. - Agora digite M-y e ele vai ser trocado pelo primeiro kill. - Faca mais alguns M-y's e veja o que você tem. Faca isso ate que o - segundo kill volte, e depois mais alguns. - Se você preferir, você pode tentar dar argumentos positivos e - negativos. - - -* DESFAZENDO (UNDO) -------------------- - -Se você fizer uma mudança no texto, e então decidir que isso foi um -erro, você pode desfazer com o comando de desfazer (undo), C-x u. - -Normalmente, C-x u desfaz as mudanças feitas por um comando; se você -repetir C-x u diversas vezes em uma linha, cada repetição desfará -um comando adicional. - -Mas tem duas exceções: comandos que não trocam o texto não contam (isso -inclui o movimento do cursor e a barra de rolagem), e caracteres -auto-inseridos são usualmente cuidados em grupos de mais de 20 (Isso e -para reduzir o numero de C-x u's que você deve digitar para desfazer a -inserção de um texto.). - ->> Mate essa linha com C-k, então digite C-x u e isso vai re-aparecer. - -C-_ é um comando alternativo para desfazer; ele funciona exatamente como -o C-x u, mas é mais fácil de digitar diversas vezes em uma linha. A -desvantagem de C-_ é que alguns teclados ele não é tão obvio para -digitar. É exatamente por isso que o C-x u é fornecido. Em alguns -terminais, você pode digitar C-_ digitando / enquanto segurando o -CONTROL. - -Um argumento numérico para C-_ ou C-x u age como um contador de -repetição. - -Você pode desfazer a deleção de texto da mesma maneira que você pode -desfazer o kill de um texto. A distinção entre matar e remover alguma -coisa afeta se você pode colar com C-y; isso não faz diferença para o -desfazer (undo). - - -* ARQUIVOS ----------- - -Para poder fazer o texto que você edita permanente, você precisa -colocá-lo em um arquivo. Ou então, isso será perdido quando o seu Emacs -for fechado. Para colocar seu texto em um arquivo, você precisa -"encontrar" o arquivo antes de digitar o texto (Isso também é chamado -"visitar" um arquivo.). - -Encontrando um arquivo significa que você verá o conteúdo de um arquivo -com o Emacs. De diversas maneiras, isso é como se você estivesse -editando o arquivo. De qualquer maneira, as mudanças que você fizer -utilizando o Emacs não se tornarão permanente ate que você "salve" o -arquivo. Isso e para que você evite deixar um arquivo meio-modificado no -sistema enquanto você não quer isso. Mesmo quando você salva, o Emacs -deixa o arquivo original sobre um arquivo de nome alterado no caso que -você mais tarde decida que aquelas mudanças foram um erro. - -Se você olhar no rodapé da tela você verá a linha que começa e termina -com traços e inicia com "--:-- TUTORIAL.pt_BR" ou algo parecido com -isso. Essa parte da tela normalmente mostra o nome do arquivo que você -esta visitando. Agora mesmo, você esta visitando um arquivo chamado -"TUTORIAL.pt_BR" que é sua própria cópia do tutorial do Emacs. Quando -você encontra um arquivo com o Emacs, o nome do arquivo aparecerá nesse -lugar específico. - -Algo especial para se dizer sobre o comando de encontrar arquivo e que -você tem que dizer qual nome do arquivo você quer. Dizemos que o comando -"lê um argumento do terminal" (nesse caso, o argumento e o nome do -arquivo). Depois que você digitar o comando - - C-x C-f Encontrar um arquivo - -O Emacs pede para você digitar o nome do arquivo. O nome do arquivo -aparece no rodapé da tela. A linha de rodapé é chamada de minibuffer -quando é utilizada para esse tipo de introdução de dados. Você pode -utilizar os comandos padrões do Emacs para editar o nome do arquivo. - -Enquanto você estiver digitando o nome do arquivo (ou qualquer outro -tipo de dado para o minibuffer), você pode cancelar o comando com a -tecla C-g. - ->> Digite C-x C-f, então digite C-g. Isso cancelará o minibuffer, e - também cancelará o comando C-x C-f que estava sendo utilizado no - minibuffer. Para que você não procure nenhum arquivo. - -Quando você terminar de digitar o nome do arquivo, digite para -terminar. Então o comando C-x C-f executará, e encontrará o arquivo -que você escolheu. O minibuffer desaparece quando o comando C-x C-f e -finalizado. - -Em pouco tempo o conteúdo do arquivo aparece na tela, e você poderá -editar o conteúdo dele. Quando você terminar de fazer suas alterações -permanentes digite o comando - - C-x C-s Salve o arquivo - -Isso copia o texto do Emacs para o arquivo. A primeira vez que você -fizer isso, o Emacs vai renomear o arquivo original para um novo nome -para que você não o perca. O nome novo e feito adicionando "~" no fim do -nome original do arquivo. - -Quando o salvamento for concluído, Emacs imprimirá o nome do arquivo -escrito. Você deve salvar o conteúdo do seu arquivo regularmente, para -que você não perca muito trabalho caso o sistema caia por um algum -motivo. - ->> Digite C-x C-s, salvará a cópia do seu tutorial. - Isso imprimirá "Wrote ...TUTORIAL.pt_BR" no fim da tela. - -NOTA: Em alguns sistemas, digitar C-x C-s travará a tela e você não -verá saída do Emacs. Isso indica que um "recurso" do sistema operacional -chamado "controle de fluxo" (flow control) esta interceptando o C-s e -não deixando que passe pelo Emacs. Para destravar a tela, digite -C-q. Então, leia na seção "Spontaneous Entry to Incremental Search" no -manual do Emacs para uma dica de como lidar com esse "recurso". - -Você pode encontrar um arquivo já existente, para vê-lo ou editá-lo. Você -também pode encontrar um arquivo que ainda não existe. Essa é a maneira -de criar um arquivo com o Emacs: encontre o arquivo, que iniciará -vazio, então começe a inserir o texto para o arquivo. Quando você pedir -para "salvar" o arquivo, o Emacs perguntará se você realmente quer -criar o arquivo com o texto que você acabou de inserir. De agora em -diante, você pode considerar que esta editando um arquivo já existente. - - -* BUFFERS ---------- - -Se você encontrar um segundo arquivo com C-x C-f, o primeiro continuara -dentro do Emacs. Você pode voltar para ele encontrando-o novamente com -C-x C-f. Dessa maneira você pode ter um grande numero de arquivos dentro -do Emacs. - ->> Crie um arquivo chamado "foo" digitando C-x C-f foo . - Depois digite algum texto, edite-o, e salve "foo" digitando C-x C-s. - Finalmente, digite C-x C-f TUTORIAL.pt_BR para voltar ao - tutorial. - -O Emacs guarda cada texto de um arquivo em um objeto chamado -"buffer". Encontrar um arquivo cria um novo buffer dentro do Emacs. Para -ver uma lista dos buffers que existem no serviço do seu Emacs, digite - - C-x C-b Lista os buffers - ->> Tente C-x C-b agora. - -Veja como cada buffer tem um nome, e ele também pode ter um nome de -arquivo para o conteúdo de arquivo que ele armazena. Alguns buffers não -correspondem a arquivos. Por exemplo, o buffer chamado "*Buffer List*" -não tem nenhum arquivo. Esse é o buffer que contem a lista de buffers -que foi feito com C-x C-b. QUALQUER texto que você ver numa janela do -Emacs e sempre parte de algum buffer. - ->> Digite C-x 1 para sair da lista dos buffers. - -Se você fizer mudanças no texto de um arquivo, então encontrar um novo -arquivo, isso não salva o conteúdo do primeiro arquivo. As mudanças -continuam dentro do Emacs, nos buffers de arquivo. A criação ou edição -do buffer do segundo arquivo não tem nenhum efeito no buffer do primeiro -arquivo. Isso é muito útil, mas também significa que você precisa de uma -maneira conveniente de salvar o buffer do primeiro arquivo. Seria -inconveniente ter que voltar para ele com C-x C-f para salvá-lo com C-x -C-s. Por isso temos - - C-x s Salve alguns buffers - -C-x s pergunta a você sobre cada buffer que contem modificação e você -não salvou. Ele te pergunta, para cada buffer, se você quer salvar. - ->> Insira uma linha de texto, então digite C-x s. - Isso deve te perguntar se você quer salvar o buffer chamado - TUTORIAL.pt_BR. - Responda sim para a pergunta digitando "y". - - -* ESTENDENDO O COMANDO SET --------------------------- - -Existem mais, muito mais comandos que o Emacs poderia possivelmente ser -colocado em todos os control e caracteres meta. O Emacs faz isso com o -comando X (estender). Que vem em duas versões: - - C-x Extensor de caractere. Seguido por um caractere. - M-x Extensor de nome de comando. Seguido por um longo nome. - -Esses comandos que são geralmente úteis mas pouco usados que os comandos -que você já aprendeu. Você já viu dois deles: os comandos de arquivos -C-x C-f para Encontrar e C-x C-s para Salvar. Outro exemplo de um -comando para finalizar a sessão do Emacs - esse é o comando C-x C-c (Não -se preocupe em perder as mudanças que você fez; C-x C-c oferece salvar -cada arquivo modificado antes de matar o Emacs.). - -C-z é o comando para sair do Emacs *temporariamente* - então você pode -voltar para a mesma seção do Emacs depois. - -Em sistemas que permitem isso, C-z "suspende" o Emacs; isso e, retorna -ao shell mas não destrói o Emacs. Nos shells mais comum, você pode -resumir o Emacs com o comando 'fg' ou com '%emacs'. - -Nos sistemas que não implementam suspensão, C-z cria um subshell rodando -sobre o Emacs para dar a você a chance de rodar outros programas e -retornar ao Emacs depois; isso não "sai" verdadeiramente do Emacs. Nesse -caso, o comando shell 'exit' é o comando usual para voltar ao Emacs do -subshell. - -A hora de usar o C-x C-c é quando você esta prestes a sair do sistema -operacional. É também a maneira correta de sair do Emacs quando chamado -através de um cliente de e-mail ou outros utilitários, porque eles não -controlam a suspensão do Emacs. Em outras circunstâncias, se você não -estiver saindo do sistema operacional, é melhor suspender o Emacs com -C-z ao invés de sair do Emacs. - -Existem diversos comando C-x. Aqui esta uma lista dos que você aprendeu: - - C-x C-f Encontrar arquivo. - C-x C-s Salvar arquivo. - C-x C-b Listar buffers. - C-x C-c Sair do Emacs. - C-x 1 Remover todas menos a janela atual. - C-x u Desfazer. - -O extensor de nome de comando é usado menos ainda, ou comandos que são -usados apenas em alguns modos. Um exemplo é o comando replace-string, -que globalmente troca uma string por outra. Quando você digita M-x, o -Emacs te pergunta no rodapé da tela M-x e você deve digitar o nome do -comando; nesse caso, "replace-string". Apenas digite "repl s" e o -Emacs completará o nome. ( é a tecla Tab, usualmente encontrando -abaixo do CapsLock ou Shift bem na extremidade do teclado.). Termine o -comando com . - -O comando replace-string requer dois argumentos - a string para ser -trocada, e a string que a substituirá. Você precisa terminar cada -argumento com . - ->> Mova o cursor para a linha branca duas linhas abaixo dessa. - Digite então M-x repl smudoualterado. - - Note como essa linha mudou: você substituiu a palavra m-u-d-o-u por - "alterado" quando ocorreu, apos a posição inicial do cursor. - - -* SALVAMENTO AUTOMÁTICO ------------------------ - -Quando você fizer mudanças em um arquivo, mas você ainda não tiver -salvo, elas podem ser perdidas se o seu computador der algum problema. -Para proteger você disso, o Emacs periodicamente escreve um arquivo "auto -salvo" para cada arquivo que você estiver editando. O nome do arquivo -auto salvo tem um # no inicio e no fim; por exemplo, se o seu arquivo -tiver o nome "ola.c", o nome do arquivo auto salvo dele será -"#ola.c#". Quando você salvar o arquivo da maneira normal, o Emacs -removerá os arquivos auto salvos. - -Se o computador der problema, você pode recuperar suas modificações auto -salvas abrindo o arquivo normalmente (o arquivo que você estava -editando, não o arquivo auto salvo) e então digitar M-x recover -file. Quando for pedida a confirmação, digite yes -para ir em frente e recuperar os dados auto salvos. - - -* ÁREA DE SAÍDA (ECHO AREA) ---------------------------- - -Se o Emacs ver que você esta digitando comandos multi-caractere -lentamente, ele os mostrará para você no fim da tela numa área chamada -Área de Saída ou Echo Area. A área de saída contem a linha de rodapé da -tela. - - -* MODE LINE ------------ - -A linha imediatamente acima da área de saída é chamada de "mode line". O -mode line diz algo algo mais ou menos assim: - ---:** TUTORIAL.pt_BR (Fundamental)--L670--58%---------------- - -Essa linha da informações úteis sobre o status do Emacs e o texto que -você esta editando. - -Você já sabe o que o nome do arquivo significa -- é o arquivo que você -encontrou. -NN%-- indica sua posição no arquivo texto; significa que NN -porcento do texto esta acima do topo da tela. Se o topo do arquivo -estiver na tela, ele mostrará --Top-- ao invés de --00%--. Se o rodapé do -texto estiver na tela, ele mostrará --Bot--. Se você estiver olhando um -texto muito pequeno que cabe todo na tela, o mode line mostrará ---All--. - -O L são dígitos e indicam a posição de uma outra maneira: eles mostram a -linha corrente do ponto. - -Os asteriscos próximo ao inicio significam que você fez mudanças no -texto. Logo após você visitar um arquivo ou salvar um arquivo, essa -parte do mode line não mostrará asteriscos, apenas traços. - -A parte do mode line dentro do parênteses lhe diz quais modos você esta -utilizando. O modo padrão é o Fundamental que é o que você esta -utilizando agora. É um exemplo de um "modo majoritário". - -O Emacs tem diversos diferentes modos majoritários. Alguns deles são -para edição de diferentes linguagens de programação e/ou tipos de texto, -como modo Lisp, modo Texto, etc. Em qualquer momento um é apenas um modo -majoritário e ativo, e seu nome pode ser encontrado no mode line -exatamente onde o "Fundamental" esta agora. - -Cada modo majoritário faz com que alguns comandos operem de modo -diferente. Por exemplo, existem comandos para criar comentários nos -programas, e desde que cada linguagem de programação tem uma idéia -diferente de como um comentário deve ser, cada modo majoritário tem que -inserir seus comentários individualmente. Cada modo majoritário é o nome -de um comando estendido, e é assim que você pode mudar para determinado -modo. Por exemplo, M-x fundamental-mode é o comando para trocar para o -modo Fundamental. - -Se você vai editar texto em Português, como neste arquivo, você pode -utilizar o modo Texto. - ->> Digite M-x text mode. - -Não se preocupe, nenhum dos comandos do Emacs que você aprendeu -mudarão. Mas você pode observar que o M-f e o M-b tratam os apóstrofos -como parte das palavras. Anteriormente, no modo Fundamental, M-f e M-b -trataram os apóstrofos como separadores de palavras. - -Modos majoritários fazem usualmente modificações como esta: a maioria -dos comandos fazem "a mesma coisa" em cada modo majoritário, mas eles -trabalham um pouquinho diferente. - -Para ver a documentação do seu modo majoritário, digite C-h m. - ->> Utilize C-u C-v uma ou mais para trazer essa linha próxima ao topo da - tela. ->> Digite C-h m, para ver como o modo texto difere do modo Fundamental. ->> Digite C-x 1 para remover a documentação da tela. - -Modos majoritários são chamados de majoritários porque também existem -modos minoritários. Modos minoritários não são alternativos aos modos -majoritários, apenas uma modificação minoritária deles. Cada modo -minoritário pode ser ligado ou desligado por ele mesmo, independente de -todos os outros modos minoritários, é independente do modo -majoritário. Então você pode não utilizar modos minoritários, ou um modo -minoritário, ou qualquer combinação de modos minoritários. - -Um modo minoritário que é bastante útil, especialmente para editar texto -em Português, é o modo Auto Fill. Quando ele esta ligado, o Emacs quebra -a linha entre as palavras automaticamente quando você inserir um texto e -criar uma linha muito comprida. - -Você pode ligar o modo Auto Fill fazendo M-x auto fill -mode. Quando o modo estiver ligado, você pode desligá-lo -novamente fazendo M-x auto fill mode. Se o modo estiver -desligado, esse comando o liga, e se ele estiver ligado, este comando o -desligara. Nos dizemos que o comando inverte seu status. - ->> Digite M-x auto fill mode agora. Então insira uma linha de - "asdf " diversas vezes ate que você veja dividir em duas linhas. Você - precisa colocar espaços entre as palavras porque o modo Auto Fill - quebra apenas nos espaços. - -A margem é usualmente definida com 70 caracteres, mas você pode -modificá-la com o comando C-x f. Você deve dar a margem que você quer -como um argumento numérico. - ->> Digite C-x f com um argumento de 20. (C-u 20 C-x f). - Então digite algum texto e veja o Emacs encher linhas com ate 20 - caracteres. Então, volte a definir a margem para 70 utilizando C-x f. - -Se você fizer uma mudança no meio de um parágrafo, o modo Auto Fill não -re-preencherá para você. Para re-preencher o parágrafo, digite M-q -(Meta-q) com o cursor dentro do parágrafo. - ->> Mova o cursor dentro do parágrafo anterior e digite M-q. - - -* PESQUISANDO -------------- - -O Emacs pode fazer pesquisas por strings (esses sao grupos de caracteres -ligados ou palavras) tanto para frente do texto ou para traz. Pesquisar -por uma string e um comando de movimento do cursor; ele move o cursor -para o próximo lugar onde a string aparece. - -O comando de pesquisa do Emacs é diferente dos comandos de pesquisa da -maioria dos editores, porque é uma pesquisa "incremental". Isso -significa que a pesquisa acontece enquanto você digita uma string para -pesquisar. - -O comando para iniciar a pesquisa é C-s para pesquisa para frente ou C-r -para pesquisa inversa. MAS ESPERE! Não tente fazer agora. - -Quando você digitar C-s você percebera que uma string "I-search" -aparecerá como prompt na área de saída. Isso diz para você que o Emacs -esta no que chamamos de pesquisa incremental esperando que você digite o -que você quer procurar. termina a pesquisa. - ->> Agora digite C-s para iniciar a pesquisa. DEVAGAR, uma letra por vez, - digite o caractere 'cursor', pausando cada vez que você digitar um - caractere, perceba o que acontece com o cursor. Agora que você - pesquisou por "cursor", uma vez. ->> Digite C-s novamente, para pesquisa a próxima ocorrência de "cursor". ->> Agora digite quatro vezes e veja como o cursor move. ->> Digite para terminar a pesquisa. - -Você viu o que aconteceu? O Emacs, em uma pesquisa incremental, tenta ir -para a ocorrência que você digitou ate o momento. Para ir para próxima -ocorrência de 'cursor' apenas digite C-s novamente. Se nenhuma -ocorrência existir, o Emacs bipa e te diz que a pesquisa atual -falhou. C-g também termina a pesquisa. - -NOTA: Em alguns sistemas, digitar C-s trava a tela e você não verá a -saída do Emacs. Isso indica que um "recurso" do sistema operacional -chamado "controle de fluxo" (flow control) esta interceptando o C-s e -não deixando que passe pelo Emacs. Para destravar a tela, digite -C-q. Então, leia na seção "Spontaneous Entry to Incremental Search" no -manual do Emacs para uma dica de como lhe dar com esse "recurso". - -Se você estiver no meio de uma pesquisa incremental e digitar , -você perceberá que o último caractere da pesquisa será apagado e a -pesquisa voltará para o último lugar da pesquisa. Por exemplo, imagine -que você tenha digitado "c", para pesquisar a primeira ocorrência de -"c". Agora se você digitar "u", o cursor moverá para a primeira -ocorrência de "cu". Agora digite . Isso apagará o "u" da -string de pesquisa, e o cursor moverá de volta para a primeira -ocorrência de "c". - -Se você estiver no meio de uma pesquisa e digitar um caractere control -ou meta (com algumas exceções--caracteres que são especiais em uma -pesquisa, como C-s e C-r), a pesquisa é terminada. - -O C-s inicia uma pesquisa que procura por qualquer ocorrência da string -de pesquisa APÓS a posição corrente do cursor. Se você quiser pesquisar -por alguma coisa anterior no texto, digite C-r ao invés. Tudo que nos -dissemos sobre C-s também implica para C-r, tirando a direção da -pesquisa que é reversa. - - -* MÚLTIPLAS JANELAS -------------------- - -Um dos recursos mais interessantes do Emacs é que você pode mostrar mais -de uma janela na tela ao mesmo tempo. - ->> Mova o cursor para essa linha e digite C-u 0 C-l (isso é control-L, - não control-1). - ->> Agora digite C-x 2 que vai dividir a tela em duas janelas. - As duas janelas vão mostrar esse tutorial. O cursor fica na janela - do topo. - ->> Digite C-M-v para rolar para o fim da janela. - (Se você não tiver uma tecla Meta de verdade, digite ESC C-v.). - ->> Digite C-x o ("o" para "outra") para mover o cursor para o rodapé - da janela. ->> Use C-v e M-v no rodapé da janela para rodá-la. - Continue lendo essas direções na janela do topo. - ->> Digite C-x o novamente para mover o cursor de volta para a janela - do topo. - O cursor na janela do topo esta exatamente como estava antes. - -Você pode continuar usando C-x o para alternar entre as janelas. Cada -janela tem sua própria posição de cursor, mas apenas uma janela mostra o -cursor. Todos os comandos mais comuns de edição aplicam para a janela -que o cursor esta. Chamamos isso de "janela selecionada". - -O comando C-M-v é muito útil para quando você estiver editando o texto -em uma janela e utilizando a outra janela para referencia. Você pode -manter o cursor sempre na janela que você estiver editando, e avançar -pela outra janela seqüencialmente utilizando C-M-v. - -C-M-v é um exemplo de um caractere CONTROL-META. Se você tiver uma tecla -META real, você pode digitar C-M-v segurando ambos CONTROL e META -enquanto digitar v. Não importa se CONTROL ou META "vem primeiro," -porque ambas as teclas agem modificando o caractere que você digita. - -Se você não tiver um tecla META real, você pode utilizar ESC ao invés, a -ordem não importa: você precisa digitar ESC seguido por Control-v, -porque Control-ESC v não funcionará. Isso porque ESC é um caractere -com seu próprio direito, não é uma tecla de modificação. - ->> Digite C-x 1 (na janela do topo) para fugir da janela do rodapé. - -(Se você tivesse digitado C-x 1 na janela do rodapé, você fugiria da -janela do topo. Pense neste comando como "Mantenha apenas uma janela--a -janela que estou dentro.") - -Você não precisa mostrar o mesmo buffer nas duas janelas. Se você -utilizar C-x C-f para encontrar um arquivo em outra janela, a outra -janela não mudara. Você pode encontrar um arquivo em cada janela -independentemente. - -Aqui esta uma maneira de utilizar duas janelas para mostrar coisas -diferentes: - ->> Digite C-x 4 C-f seguido pelo nome de um dos seus arquivos. - Termine com . Veja o arquivo especificado aparece na janela - do rodapé. O cursor irá para lá, também. - ->> Digite C-x o para voltar a janela do topo, e C-x1 para remover a - janela de rodapé. - - -* NÍVEIS RECURSIVOS DE EDIÇÃO ------------------------------ - -Algumas vezes você entrará no que chamamos de "nível de edição -recursiva". Isso é indicado por colchetes no mode line, envolvendo os -parênteses em volta do nome do modo majoritário. Por exemplo, você pode -ver [(Fundamental)] ao invés de (Fundamental). - -Para sair desses níveis recorríveis de edição, digite ESC ESC ESC. Isso -e um comando de todos os propósitos "saia". Você pode também utilizar -para eliminar janelas extras, e sair de um minibuffer. - ->> Digite M-x para entrar no minibuffer; então digite ESC ESC ESC para - sair. - -Você não pode utilizar C-g para sair de um nível de edição -recursiva. Isso porque o C-g é utilizado para cancelar comandos e -argumentos COM o nível de edição recursiva. - - -* CONSEGUINDO MAIS AJUDA ------------------------- - -Neste tutorial nos tentamos suprimir informações suficientes para que -você comece a utilizar o Emacs. Existe tanto disponível sobre Emacs que -seria impossível explicar tudo aqui. De qualquer maneira, você pode -querer aprender mais sobre Emacs mesmo porque ele tem muitos outros -recursos úteis. O Emacs proporciona comandos para leitura de -documentação sobre comandos do Emacs. Esses comandos de "ajuda" iniciam -com o caractere Control-h, que é chamado de "o caractere de ajuda". - -Para utilizar os recursos de ajuda, digite o caractere C-h, e então um -caractere dizendo que tipo de ajuda você quer. Se você REALMENTE estiver -perdido, digite C-h ? e o Emacs lhe dirá que tipo de ajuda ele pode -lhe dar. Se você digitar C-h e decidir que você não quer nenhuma ajuda, -apenas digite C-g para cancelar. - -(Alguns sistemas mudam o significado do caractere C-h. Eles não deveriam -fazer isso para todos os usuários, então você deve reclamar com o -administrador do sistema. Enquanto isso, se C-h não mostrar a mensagem -sobre ajuda no rodapé da tela, tente digitar a tecla F1 ou M-x help -.) - -O recurso de ajuda mais básico é o C-h c. Digite C-h, e o caractere c, é -um comando de caractere ou seqüência; então o Emacs mostrará uma breve -descrição do comando. - ->> Digite C-h c C-p - A mensagem deve ser algo assim - - C-p roda o comando linha-anterior - -Isso diz a você "o nome da função". Nome de funções são utilizados -basicamente para personalizar o estender o Emacs. Mas desde que nomes de -funções são utilizados para indicar que o que o comando faz, eles podem -servir também como uma breve documentação--suficiente para lembrar você -os comandos que você já aprendeu. - -Comandos multi-caractere como C-x C-s e (se você não tiver a tecla META -ou EDIT ou ALT) v é também permitido depois de C-h c. - -Para ter mais informação sobre um comando, utilize C-h k ao invés de C-h -c. - ->> Digite C-h k C-p. - -Isso mostra a documentação da função, assim como seu nome, em uma janela -do Emacs. Quando você terminar de ler a saída, digite C-x 1 para sair da -saída do texto de ajuda. Você não precisa fazer isso imediatamente -apos. Você pode fazer alguma edição enquanto utilizando como referencia -o texto de ajuda, e então digite C-x 1. - -Aqui estão algumas outras opções úteis do comando C-h: - - C-h f Descreve a função. Digite o nome da função. - ->> Tente digitar C-h f previous-line - Isso imprimirá toda informação que o Emacs tem sobre a função que - implementa o comando C-p. - - C-h a Comando Apropos. Digite uma palavra chave e o Emacs - listará todos os comandos que o nome contem essa - palavra. Esses comandos podem ser chamados com - Meta-x. Para alguns comandos, o comando Apropos - também listará um ou dois caracteres de seqüência que - roda o mesmo comando. - ->> Digite C-h a file. - -Isso mostra em uma outra janela a lista de todos os comandos M-x com -"arquivo" em seus nomes. Você verá comandos-caractere como C-x C-f -listados ao lado do comando correspondente assim como o find-file. - ->> Digite C-M-v para rolar a janela de ajuda. Faca isso algumas vezes. - ->> Digite C-x 1 para remover a janela de ajuda. - - -* CONCLUSÃO ------------ - -Lembre, para sair permanentemente do Emacs utilize C-x C-c. Para sair -para um shell temporariamente, para que você possa voltar ao Emacs mais -tarde, utilize C-z. - -Esse tutorial foi feito para ser entendível para todos os novos -usuários, então se você encontrou algo que parece não estar claro, não -sente e se culpe - reclame! - - -* CÓPIA -------- - -Esse tutorial descende de uma longa linha de tutoriais do Emacs -iniciando com um escrito por Stuart Cracraft para o Emacs original. - -Essa versão do tutorial foi originalmente traduzida por Marcelo Toledo - e como o GNU Emacs, tem um copyright, e vem -com uma permissão de distribuição de cópias nas seguintes condições: - -Copyright (C) 2004, 2005, 2006, 2007 Free Software Foundation, Inc. - - Permissão é garantida a qualquer um para fazer ou distribuir cópias - integrais deste documento como recebido, em qualquer meio, deixando - disponível e preservados o aviso de copyright e o aviso de permissão, - e o distribuidor garante que a permissão para distribuições - posteriores permitam o mesmo que esta nota. - - Permissão garantida para distribuir versões modificadas deste - documento, ou partes dele, sobre as condições acima, sempre que elas - tenham uma nota visível de quem foi o último a alterá-lo. - -As condições para copiar o Emacs especificamente são mais complexas, mas -no mesmo espírito. Por favor, leia o arquivo COPYING e dê cópias do GNU -Emacs para seus amigos. Ajude a erradicar o obstrucionismo de software -("proprietário") usando, escrevendo, e compartilhando software livre! - -;;; Local Variables: -;;; coding: latin-1 -;;; sentence-end-double-space: nil -;;; End: - -;;; arch-tag: 8ea256d6-2c4a-49ee-ac08-0ea6ef25bf8d diff --git a/etc/TUTORIAL.ro b/etc/TUTORIAL.ro deleted file mode 100644 index 159796403d4..00000000000 --- a/etc/TUTORIAL.ro +++ /dev/null @@ -1,1117 +0,0 @@ -Tutorialului de Emacs. A se citi sfârºitul pentru condiþii. -Traducere din englezã de Tudor Hulubei . -Mulþumiri Aidei Hulubei pentru corecturi ºi sugestii. - -Aceastã versiune a fost produsã plecând de la versiunea în limba -englezã, care este -Copyright (c) 1985 Free Software Foundation, Inc. - -Citiþi acum versiunea româneascã a tutorialului de Emacs. - -Comenzile Emacs folosesc în general tasta CONTROL (uneori denumitã -CTRL sau CTL) sau tasta META (uneori denumita EDIT sau ALT). În loc -sã scriem META sau CONTROL de fiecare datã când vrem sã prefixãm un -caracter, vom folosi urmãtoarele prescurtãri: - - C- înseamnã cã þineþi apãsatã tasta CONTROL în timp ce tastaþi - caracterul . Astfel, C-f înseamnã: þineþi apãsatã tasta - CONTROL ºi tastaþi f. - - M- înseamnã cã þineþi apãsatã tasta META, EDIT sau ALT în timp - ce tastaþi . Dacã nu existã tasta META, EDIT sau ALT, - tastaþi , ridicaþi ºi apoi tastaþi caracterul . - Am notat cu tasta ESC. - -Observaþie importantã: pentru a termina sesiunea Emacs, tastaþi C-x -C-c. (Douã caractere.) Caracterele ">>" la marginea din stânga -reprezintã instrucþiuni pentru a încerca o comandã. De exemplu: -<> ->> Acum tastaþi C-v (citirea urmãtorului ecran) pentru a vã muta la - urmãtorul ecran. (Executaþi aceastã comandã acum, tinând apãsatã - tasta CONTROL în timp ce tastaþi v). De acum înainte faceþi acest - lucru din nou, de fiecare datã când terminaþi de citit ecranul. - -De remarcat cã existã o zonã de suprapunere de douã linii când vã -mutaþi de la un ecran la altul; aveþi astfel o oarecare continuitate -în citirea textului. - -Primul lucru pe care trebuie sã-l stiþi este cum sã vã deplasaþi din -loc în loc în text. ªtiþi deja cum sã vã mutaþi la urmãtorul ecran cu -C-v. Pentru a vã deplasa înapoi un ecran, tastaþi M-v (þineþi apãsatã -tasta META ºi tastaþi v, sau v dacã nu aveþi o tastã META, EDIT, -sau ALT). - ->> Încercaþi sã tastaþi M-v ºi apoi C-v de câteva ori. - - -* SUMAR -------- - -Urmãtoarele comenzi sunt utile pentru a vedea ecrane: - - C-v avanseazã un ecran - M-v înapoi un ecran - C-l ºterge ecranul ºi reafiºeazã totul poziþionând textul - de lângã cursor în centrul ecranului. (Este C-L, nu - C-1.) - ->> Gãsiþi cursorul ºi þineþi minte ce text este în jurul lui. - Apoi tastaþi C-l. Gãsiþi cursorul din nou ºi observaþi cã textul - de lângã cursor este acelaºi. - - -* COMENZI DE BAZà PENTRU CONTROLUL CURSORULUI ---------------------------------------------- - -Mutatul ecran cu ecran este util, dar cum vã mutaþi la o anumitã -poziþie în textul de pe ecran? - -Sunt mai multe modalitaþi în care puteþi face acest lucru. Cel mai -simplu este sã folosiþi comenzile C-p, C-b, C-f ºi C-n. Fiecare din -aceste comenzi mutã cursorul o linie sau coloanã într-o anumitã -direcþie pe ecran. Diagrama urmãtoare prezintã aceste patru comenzi -ºi aratã direcþiile în care ele mutã cursorul. - - Linia precedentã, C-p - : - : - Înapoi, C-b .... Poziþia curentã a cursorului .... Înainte, C-f - : - : - Linia urmãtoare, C-n - ->> Mutaþi cursorul la linia din mijlocul diagramei folosind C-n sau - C-p. Tastaþi apoi C-l pentru a vedea întreaga diagramã centratã pe - ecran. - -Vi se va pãrea probabil mai simplu sã vã amintiþi aceste comenzi -gândindu-vã la semnificaþia lor în limba englezã: P pentru previous, N -pentru next, B pentru backward ºi F pentru forward. Acestea sunt -comenzile de bazã pentru poziþionarea cursorului ºi le veþi folosi tot -timpul, deci ar fi foarte util sã le învãþaþi acum. - ->> Tastaþi câteva C-n-uri pentru a aduce cursorul la aceastã linie. - ->> Mutaþi-vã în interiorul liniei cu C-f-uri ºi apoi în sus cu - C-p-uri. Urmãriþi ce face C-p atunci când cursorul este în - mijlocul liniei. - -Fiecare linie se terminã cu un caracter NEWLINE care o separã de linia -urmãtoare. Ultima linie în fiºierele dumneavoastrã ar trebui sã aibã -un asemenea caracter la sfârºit (deºi Emacs-ul nu-l necesitã). - ->> Încercaþi sã tastaþi C-b la începutul unei linii. Cursorul ar - trebui sã se mute la sfârºitul liniei precedente, din cauza - trecerii peste caracterul NEWLINE. - -C-f poate sã treacã peste un caracter NEWLINE, la fel ca ºi C-b. - ->> Tastaþi câteva C-b-uri, pentru a vã familiariza cu poziþia - cursorului. Tastaþi apoi câteva C-f-uri pentru a vã întoarce la - sfârºitul liniei. Încã un C-f ºi vã veþi muta la linia urmãtoare. - -Când ajungeþi sã treceþi peste începutul sau sfârºitul ecranului, -textul aflat dincolo de margine intrã în ecran, permiþându-i -Emacs-ului sã mute cursorul la poziþia specificatã, fãrã a ieºi din -zona vizibilã (ecran). Aceastã operaþiune se numeste în limba englezã -"scrolling". - ->> Încercaþi sã mutaþi cursorul în afara pãrþii de jos a ecranului cu - C-n ºi observaþi ce se întamplã. - -Dacã mutatul caracter cu caracter este lent, puteþi muta cursorul -cuvânt cu cuvânt. M-f (META-f) avanseazã cursorul cu un cuvânt, iar -M-b mutã cursorul un cuvânt înapoi. - ->> Tastaþi câteva M-f-uri ºi apoi câteva M-b-uri. - -Când cursorul este în mijlocul unui cuvânt, M-f îl mutã la sfârºitul -cuvântului. Când cursorul este în spaþiul dintre cuvinte, M-f îl mutã -la sfârºitul cuvântului urmãtor. M-b acþioneazã similar, dar în -direcþia opusã. - ->> Tastaþi M-f ºi M-b de câteva ori, intercalate cu C-f-uri ºi - C-b-uri, pentru a observa efectul comenzilor M-f ºi M-b din diverse - poziþii în interiorul cuvintelor ºi între ele. - -Observaþi paralela între C-f ºi C-b pe de o parte, ºi M-f ºi M-b pe de -cealaltã parte. De multe ori, caracterele META sunt folosite pentru -operaþii referitoare la unitãþile definite de limbaj (cuvinte, fraze, -paragrafe), în timp ce caracterele CONTROL opereazã pe unitãþi de -bazã, care sunt independente de tipul textului editat (caractere, -linii, etc). - -Aceastã paralelã se aplicã ºi între linii ºi fraze: C-a ºi C-e mutã -cursorul la începutul ºi, respectiv sfârºitul unei linii, în timp ce -M-a ºi M-e îl mutã la începutul ºi, respectiv sfârºitul unei fraze. - ->> Încercaþi câteva C-a-uri, apoi câteva C-e-uri. - Încercaþi câteva M-a-uri, apoi câteva M-e-uri. - -Remarcaþi cum repetarea tastãrii lui C-a nu schimbã nimic, în timp ce -repetarea tastãrii lui M-a mutã cursorul la fraza urmãtoare. Deºi -aceste operaþii nu sunt tocmai analoage, fiecare pare naturalã. - -Poziþia cursorului în text mai este numitã ºi "punct" ("point" în -limba englezã). Cursorul aratã pe ecran poziþia punctului în text. - -Operaþiile ce mutã cursorul (inclusiv comenzile ce mutã cursorul -cuvânt cu cuvânt sau frazã cu frazã) sunt prezentate în sumarul -urmãtor: - - C-f avanseazã un caracter - C-b înapoi un caracter - - M-f avanseazã un cuvânt - M-b înapoi un cuvânt - - C-n avanseazã o linie - C-p înapoi o linie - - C-a înapoi la începutul liniei - C-e avanseazã la sfârºitul liniei - - M-a înapoi la începutul frazei - M-e avanseazã la sfârºitul frazei - ->> Exersaþi toate aceste comenzi acum, sunt comenzile cele mai des - folosite. - -Douã alte comenzi importante legate de mutatul cursorului sunt M-< -(META Mai-mic), care mutã cursorul la începutul textului, ºi M-> (META -Mai-mare), care mutã cursorul la sfârºitul textului. - -Pe majoritatea terminalelor "<" este deasupra virgulei ºi deci este -necesar sã apãsaþi tasta SHIFT în acelaºi timp. Pe aceste terminale -este nevoie sã apãsaþi SHIFT ºi când tastaþi M-<; fãrã tasta SHIFT, -aþi apãsa M-virgulã. - ->> Încercaþi M-< acum, pentru a vã muta la începutul tutorialului. - Folosiþi apoi C-v în mod repetat pentru a ajunge înapoi aici. - ->> Încercaþi M-> acum, pentru a vã muta la sfârºitul tutorialului. - Folosiþi apoi M-v repetat pentru a ajunge înapoi aici. - -Puteþi de asemenea sã mutaþi cursorul cu tastele sãgeþi, dacã -terminalul are asemenea taste. Se recomandã însã acomodarea cu C-b, -C-f, C-n ºi C-p din trei motive. În primul rând, aceste taste -funcþioneazã pe toate tipurile de terminale. În al doilea rând, odatã -ce vã obiºnuiþi cu Emacs-ul, veþi remarca faptul cã tastarea lor este -mai rapidã decât cea a tastelor sãgeþi (pentru cã nu trebuie sã vã -schimbaþi poziþia mâinilor pe tastaturã). În al treilea rând, odatã -format obiceiul de a folosi aceste comenzi bazate pe CONTROL, -comenzile avansate de mutat cursorul se învaþã foarte uºor. - -Majoritatea comenzilor Emacs acceptã un argument numeric; pentru -majoritatea comenzilor, acest argument reprezintã un contor de -repetiþie. Contorul de repetiþie se introduce tastând C-u, cifrele ce -alcãtuiesc contorul ºi apoi comanda. Dacã aveþi tasta META (EDIT sau -ALT), existã ºi o altã alternativã pentru a introduce un argument -numeric: tastaþi cifrele în timp ce þineþi tasta META apãsatã. Se -recomandã însã folosirea metodei cu C-u, deoarece funcþioneazã pe -orice terminal. - -De exemplu, C-u 8 C-f avanseazã cursorul cu opt caractere. - ->> Încercaþi sã folosiþi C-n sau C-p cu un argument numeric pentru a - muta cursorul dintr-o singurã comandã pe o linie apropiatã de - aceasta. - -Majoritatea comenzilor utilizeazã argumentul numeric ca un contor de -repetitie. Anumite comenzi speciale îl folosesc însa în mod diferit. -C-v si M-v sunt printre aceste excepþii. Când li se dã un argument -numeric, ele mutã ecranul mai sus sau mai jos cu numarul specificat de -linii, nu de ecrane. De exemplu, C-u 4 C-v mutã ecranul cu 4 linii. - ->> Încercaþi sã tastaþi C-u 8 C-v acum. - -Aceastã comandã trebuie sã mute ecranul în sus cu 8 linii. Dacã -doriti sã îl mutaþi înapoi, puteþi sã-i daþi lui M-v un argument -numeric. - -Dacã folosiþi sistemul X Window, existã probabil o zonã rectangularã -numita "scroll bar" la dreapta ferestrei Emacs-ului. Puteþi deplasa -textul manipulând "scroll bar"-ul cu mouse-ul. - ->> Încercaþi sã apãsaþi butonul din mijloc al mouse-ului la mijlocul - butonului din scroll bar. Aceasta ar trebui sã mute textul la o - poziþie determinatã de cât de sus sau de jos aþi apãsat pe scroll - bar. - ->> Încercaþi sã mutaþi mouse-ul în sus ºi în jos þinând butonul din - mijloc apãsat. Veþi vedea cã textul se deplaseazã în sus ºi în jos - corespunzãtor cu miºcarea mouse-ului. - - -* CÂND EMACS-ul ESTE BLOCAT ---------------------------- - -Dacã Emacs-ul înceteazã sã vã raspundã la comenzi, îl puteþi opri, -fãrã sã pierdeþi modificãrile fãcute pânã acum, tastând C-g. Puteþi -folosi C-g pentru a opri o comandã care dureazã prea mult. - -Puteþi de asemenea folosi C-g pentru a opri introducerea unui argument -numeric sau începutul unei comenzi pe care nu doriþi sã o continuaþi. - ->> Tastaþi C-u 100 pentru a introduce 100 ca un argument numeric, apoi - tastaþi C-g. Tastaþi apoi C-f. Cursorul ar trebui sã se mute un - singur caracter, pentru cã aþi oprit introducerea argumentului - numeric cu C-g. - -Dacã aþi tastat un din greºealã, puteþi sã-l anulaþi cu un C-g. - - -* COMENZI DEZAFECTATE ---------------------- - -Anumite comenzi sunt dezafectate în Emacs, în aºa fel încât -utilizatorii sã nu le poatã folosi din neatenþie. - -Dacã tastaþi una din comenzile dezafectate, Emacs-ul va afiºa un mesaj -spunând ce comandã aþi tastat ºi întrebându-vã dacã doriþi sã -continuaþi. - -Dacã într-adevãr doriþi sã încercaþi comanda respectivã, tastaþi -SPAÞIU. În mod normal, dacã nu doriþi sã executaþi comanda -dezafectatã, rãspundeþi cu "n". - ->> Tastaþi : (care este o comandã dezafectatã), apoi tastaþi n - ca rãspuns la întrebarea pusã de Emacs. - - -* FERESTRE ----------- - -Emacs-ul poate avea mai multe ferestre, fiecare afiºând propriul sãu -text. Vom explica mai târziu tehnicile de folosire a ferestrelor -multiple. Acum vrem sã explicãm cum sã închideþi ferestrele care ar -putea apare ca rezultat al afiºãrii unor documentaþii sau rezultate -specifice anumitor comenzi. Este simplu: - - C-x 1 o singurã fereastrã (adicã închide toate celelalte - ferestre). - -Asta înseamnã CONTROL-x urmat de cifra 1. C-x 1 mãreºte fereastra -care conþine cursorul pânã când ocupã întregul ecran. Toate celelalte -ferestre sunt distruse. - ->> Mutaþi cursorul la aceastã linie ºi tastaþi C-u 0 C-l. - ->> Tastaþi C-h k C-f. Observaþi cum aceastã fereastrã se micºoreazã, - în timp ce o nouã fereastrã apare, afiºând documentaþia comenzii - C-f. - ->> Tastaþi C-x 1 ºi observaþi cum noua fereastrã dispare. - - -* INTRODUCEREA ªI ªTERGEREA ---------------------------- - -Dacã vreþi sã introduceþi text, pur ºi simplu tastaþi textul dorit. -Caracterele pe care le puteþi vedea, cum ar fi A, 7, *, etc. sunt -interpretate de Emacs ca text ºi introduse imediat. Tastaþi -(tasta mai este etichetatã uneori) pentru a introduce un -caracter NEWLINE. - -Puteþi ºterge ultimul caracter pe care l-aþi introdus tastând -. este o tastã pe tastaturã etichetatã "Del" sau -"Delete". În unele cazuri tasta "Backspace" poate acþiona ca -, dar nu întotdeauna! - -Mai general, ºterge caracterul dinaintea poziþiei curente a -cursorului. - ->> Executaþi urmãtoarele operaþii acum - tastaþi câteva caractere, - apoi ºtergeþi-le tastând de câteva ori. Nu vã temeþi cã - veþi schimba acest fiºier; nu veþi altera versiunea principalã a - tutorialului. Aceasta este copia dumneavoastrã personalã. - -Când o linie de text devine prea mare pentru a putea fi reprezentatã -pe o linie de ecran, linia de text este continuatã pe urmãtoarea linie -de pe ecran. Un caracter backslash ("\") la marginea din dreapta -indicã o linie care a fost continuatã. - ->> Introduceþi text pânã când depãºiþi cu câteva caractere marginea - din dreapta a ecranului. Veþi observa apariþia liniei de - continuare. - ->> Folosiþi -uri pentru a ºterge textul pânã când linia încape - din nou pe o linie de ecran. Linia de continuare va dispãrea. - -Puteþi ºterge un caracter NEWLINE ca pe orice alt caracter. ªtergerea -unui NEWLINE dintre douã linii concateneaza cele douã linii. Dacã -linia rezultatã este prea lungã pentru a fi afiºatã pe ecran, va fi -afiºatã cu o linie de continuare. - ->> Mutaþi cursorul la începutul unei linii ºi tastaþi . - Aceasta concateneazã linia curentã cu cea precedentã. - ->> Tastaþi pentru a reintroduce caracterul NEWLINE ºters. - -Aºa cum vã reamintiþi, majoritatea comenzilor Emacs pot primi un -argument numeric ce acþioneazã ca un contor de repetiþie; introducerea -caracterelor ascultã aceleaºi reguli. Un argument numeric dat unui -caracter duce la introducerea caracterului respectiv de numãrul -specificat de ori. - ->> Încercaþi asta acum - tastaþi C-u 8 * pentru a introduce ********. - -Aþi învãþat acum metodele elementare de tastat ºi corectat erori în -Emacs. Puteþi de asemenea ºterge cuvinte sau linii. Acesta este un -sumar al operaþiilor de ºtergere. - - ºterge caracterul de dinaintea cursorului - C-d ºterge caracterul de dupã cursor - - M- ºterge cuvântul de dinaintea cursorului - M-d ºterge cuvântul de dupã cursor - - C-k ºterge de la poziþia curentã pânã la sfârºitul - liniei - M-k ºterge de la poziþia curentã pânã la sfârºitul - frazei - -De remarcat cã ºi C-d versus M- ºi M-d extind -paralela începutã de C-f ºi M-f ( nu este cu adevãrat un -caracter bazat pe CONTROL, dar nu o sã ne ocupãm de asta acum). C-k -ºi M-k sunt ca C-e ºi M-e, într-un fel, dacã facem o paralelã între -linii ºi fraze. - -Când ºtergeþi mai mult de un caracter la un moment dat, Emacs-ul -pãstreazã intern textul distrus în aºa fel încât îl puteþi restaura. -Termenul folosit de Emacs pentru operaþiunea de restaurare a textului -distrus este "yanking". Puteþi restaura textul distrus fie în acelaºi -loc, fie în alt loc în fiºier. Puteþi de asemenea restaura textul de -mai multe ori pentru a face mai multe copii. Comanda de restaurare -este C-y. - -Diferenþa dintre "distrugerea" ºi "ºtergerea" unei porþiuni din text -este aceea ca porþiunile de text "distruse" pot fi restaurate, în timp -ce porþiunile de text "ºterse", nu. În general, comenzile care -distrug porþiuni semnificative din text, pãstreazã intern textul -respectiv, în timp ce comenzile care ºterg doar un caracter, linii -goale sau spaþii, nu fac acest lucru. - ->> Mutaþi cursorul la începutul unei linii care nu este goalã. - Tastaþi apoi C-k pentru a distruge textul de pe linia respectivã. ->> Tastaþi C-k o a doua oarã. Veþi observa distrugerea caracterului - NEWLINE de la sfârºitul liniei. - -Dupã cum vedeþi, un singur C-k distruge conþinutul liniei, iar un al -doilea C-k distruge linia însãºi, facând toate celelalte linii sã se -mute în sus. C-k trateazã un argument numeric în mod special: -distruge numãrul specificat de linii ºi conþinutul lor. Aceastã -comportare nu este doar o simplã repetiþie. C-u 2 C-k distruge douã -linii ºi NEWLINE-urile de dupã ele; tastând C-k de douã ori nu -obþineþi acelaºi rezultat. - -Pentru a extrage ultimul text distrus ºi a-l plasa la poziþia curentã -a cursorului, tastaþi C-y. - ->> Tastaþi C-y pentru a restaura textul distrus anterior. - -Gânditi-vã la C-y ca ºi cum aþi recupera ceva ce v-a fost luat. -Observaþi cã dacã executaþi mai multe C-k-uri la rând, tot textul -distrus este stocat într-o singurã bucatã, în aºa fel încât un singur -C-y va restaura toate liniile. - ->> Tastaþi acum C-k de câteva ori. - -Acum încercaþi sã restauraþi textul distrus: - ->> Tastaþi C-y. Mutaþi apoi cursorul câteva linii mai jos ºi tastaþi - C-y din nou. Veþi vedea cum se copiazã porþiuni de text. - -Ce faceþi dacã aveþi porþiuni de text pe care vreþi sã le restauraþi, -dar între timp distrugeþi o altã porþiune de text? C-y va restaura -porþiunea de text care a fost distrusã cel mai recent. Cu toate -acestea, textul distrus anterior nu este pierdut. Puteþi sã-l -restauraþi folosind comanda M-y. Dupã ce aþi executat C-y pentru a -obþine textul cel mai recent distrus, tastând M-y veþi înlocui textul -ce tocmai a fost restaurat cu textul distrus înaintea lui. Tastând -M-y de mai multe ori puteþi obþine porþiuni de text distrus din ce în -ce mai vechi. Odatã ajunºi la textul care vã intereseazã, puteþi sã -continuaþi editarea fãrã sã mai faceþi nimic special, lasând textul -restaurat în poziþia în care se gãseºte. - -Dacã tastaþi M-y de suficient de multe ori, veþi ajunge în cele din -urmã la punctul de plecare (textul distrus cel mai de curând). - ->> Distrugeþi o linie, mutaþi-vã puþin în jurul ei, distrugeþi o altã - linie. Executaþi apoi C-y pentru a obþine înapoi cea de-a doua - linie distrusã. Executaþi apoi M-y ºi veþi constata cã este - înlocuitã de prima linie distrusã. Executaþi mai multe M-y-uri ºi - observaþi ce obþineþi. Continuaþi sã le executaþi pânã când a doua - linie apare din nou, etc. Dacã doriþi, puteþi încerca sã-i daþi - comenzii M-y argumente numerice pozitive ºi negative. - - -* ANULARE ---------- - -Dacã faceþi o schimbare în text, ºi apoi constataþi cã aþi greºit, -puteþi anula schimbarea cu comanda de anulare, C-x u. - -În mod normal, C-x u anuleazã schimbãrile fãcute de o comandã; dacã -repetaþi C-x u de câteva ori la rând, fiecare nouã repetiþie anuleazã -încã o comandã. - -Existã însã douã excepþii: comenzile care nu schimbã textul nu sunt -luate în considerare (acestea includ comenzile de mutat cursorul ºi -cele de "scrolling"), iar caracterele introduse individual sunt -tratate în grupuri de maxim 20. (Motivaþia din spatele acestei -abordãri este aceea de a reduce numãrul de C-x u-uri pe care trebuie -sã le tastaþi pentru anularea inserãrilor de text). - ->> Distrugeþi linia aceasta cu C-k, apoi tastaþi C-x u; linia ar - trebui sã reaparã. - -C-_ este o altã comandã de anulare; funcþioneazã exact ca ºi C-x u, -dar este mai uºor de tastat de mai multe ori la rând. Dezavantajul -lui C-_ este cã pe anumite tastaturi nu este clar cum trebuie tastat. -Din acest motiv existã C-x u. Pe unele terminale se poate sã tastaþi -C-_ tastând "/" în timp ce þineþi apãsatã tasta CONTROL. - -Un argument numeric la C-_ sau C-x u acþioneazã ca un contor de -repetiþie. - - -* FIªIERE ---------- - -Pentru a face permanente modificãrile din textul pe care îl editaþi, -trebuie sã-l stocaþi (salvaþi) într-un fiºier. Altminteri, -modificãrile se vor pierde în momentul pãrãsirii Emacs-ului. Puneþi -textul într-un fiºier "deschizând" (sau "vizitând") fiºierul. - -Deschiderea unui fiºier înseamnã cã puteþi vedea conþinutul fiºierului -în Emacs. Este ca ºi cum aþi edita chiar fiºierul, singura diferenþã -fiind aceea cã schimbãrile nu devin permanente pânã când nu îl -"salvaþi" ("save" în limba englezã). Se evitã astfel existenþa în -sistem a unor fiºiere incomplet modificate atunci când nu doriþi acest -lucru. Chiar ºi când salvaþi fiºierul, Emacs-ul pãstreazã fiºierul -iniþial (cu un nume schimbat) în aºa fel încât sã-l puteþi recupera în -cazul în care decideþi cã modificãrile efectuate au fost greºite. - -Aproape de marginea de jos a ecranului veþi observa o linie care -începe ºi se terminã cu minusuri, ºi conþine ºirul "--:-- TUTORIAL.ro" -sau ceva în genul acesta. Aceastã parte a ecranului aratã întotdeauna -numele fiºierului pe care îl vizitaþi. Acum vizitaþi fiºierul -"TUTORIAL.ro" care este copia dumneavoastrã de încercãri a -tutorialului în limba românã. Orice fiºier aþi edita, numele acelui -fiºier va apãrea în poziþia respectivã. - -Comenzile pentru gãsirea ºi salvarea fiºierelor sunt diferite de -celelalte comenzi pe care le-aþi învãþat, în sensul cã sunt compuse -din douã caractere. Amândouã încep cu caracterul C-x. Existã o -întreagã serie de comenzi care încep cu C-x; multe dintre ele sunt -legate de fiºiere, buffere ºi alte lucruri înrudite. Aceste comenzi -sunt compuse din douã, trei sau patru caractere. - -Comenzii de deschidere a unui fiºier trebuie sã îi spuneþi numele -fiºierului dorit. Spunem despre comandã ca "citeºte un argument de la -terminal" (în acest caz, argumentul este numele fiºierului). Dupã ce -tastaþi comanda - - C-x C-f (deschide un fiºier) - -Emacs-ul vã va cere sã introduceþi numele fiºierului. Numele pe care -îl tastaþi apare pe ultima linie a ecranului. Aceastã linie se -numeste "minibuffer" când este folositã pentru acest tip de -introducere. Comenzile normale de editare în Emacs pot fi folosite ºi -pentru editarea numelui fiºierului. - -În timp ce introduceþi numele fiºierului (sau orice alt tip de -introducere de date în minibuffer), puteþi anula comanda cu C-g. - ->> Tastaþi C-x C-f, apoi tastaþi C-g. Aceasta anuleazã minibuffer-ul, - ºi, de asemenea, anuleazã comanda C-x C-f care îl folosea. În - concluzie, nu veþi mai deschide nici un fiºier. - -Când aþi terminat de introdus numele fiºierului, tastaþi -pentru a-l încheia. Dupã aceasta, comanda C-x C-f începe sã lucreze -ºi deschide fiºierul pe care l-aþi ales. Minibuffer-ul dispare când -comanda C-x C-f se terminã. - -Dupã câteva momente, conþinutul fiºierului apare pe ecran ºi îl puteþi -edita. Când doriti sã faceþi schimbãrile permanente, tastaþi comanda - - C-x C-s (salveazã fiºierul) - -Aceasta copiazã textul din Emacs într-un fiºier. Prima oarã când -faceþi acest lucru, Emacs-ul redenumeºte fiºierul iniþial în aºa fel -încât sã nu se piardã. Noul nume este creat prin adãugarea -caracterului "~" la numele iniþial. - -Când operaþiunea de salvare este terminatã, Emacs-ul afiºeazã numele -fiºierului salvat. Se recomandã salvarea la intervale relativ mici, -pentru a nu pierde prea multã muncã în cazul unei eventuale blocãri a -sistemului. - ->> Tastaþi C-x C-s, pentru a salva copia tutorialului. - Aceasta ar trebui sã afiºeze "Wrote ...TUTORIAL.ro" la marginea de - jos a ecranului. - -OBSERVAÞIE: În unele sisteme, tastarea comenzii C-x C-s va bloca -ecranul ºi nu veþi mai primi nici un de rãspuns din partea Emacs-ului. -Aceasta indicã faptul cã o facilitate a sistemului de operare numitã -"controlul fluxului" ("flow control" în limba englezã) intercepteazã -C-s, nelasându-l sã ajungã la Emacs. Pentru deblocarea ecranului, -tastaþi C-q. Puteþi gãsi detalii referitoare la aceastã aºa-numitã -"facilitate" în secþiunea "Spontaneous Entry to Incremental Search" -din manualul Emacs-ului. - -Puteþi deschide un fiºier existent, pentru a-l vedea sau edita. -Puteþi de asemenea deschide un fiºier care nu existã. Aceasta este -modalitatea în care creaþi noi fiºiere cu Emacs-ul: deschideþi -fiºierul (care va fi gol iniþial), apoi începeþi sã introduceþi text -în el. Când îi veþi cere sã "salveze" fiºierul, Emacs-ul va crea -fiºierul cu textul pe care l-aþi introdus. De acum înainte puteþi -considera cã editaþi un fiºier existent. - - -* BUFFERE ---------- - -Dacã deschideþi un al doilea fiºier cu C-x C-f, primul va continua sã -existe în Emacs. Puteþi sã vã mutaþi înapoi la el deschizându-l din -nou cu C-x C-f. În acest fel puteþi avea un numãr destul de mare de -fiºiere deschise în Emacs. - ->> Creaþi un fiºier numit "foo" tastând C-x C-f foo . - Introduceþi un text oarecare, editaþi-l, apoi salvaþi "foo" tastând - C-x C-s. În cele din urmã, tastaþi C-x C-f TUTORIAL.ro - pentru a vã întoarce la tutorial. - -Emacs-ul stocheazã textul fiecãrui fiºier într-un obiect numit -"buffer". Deschiderea unui fiºier creeazã un nou buffer în Emacs. -Pentru a vedea o listã a bufferelor existente în Emacs, tastaþi - - C-x C-b (lista de buffere) - ->> Încercaþi C-x C-b acum. - -Observaþi cum fiecare buffer are un nume ºi, uneori, un nume de fiºier -corespunzãtor fiºierului al cãrui conþinut este menþinut în buffer-ul -respectiv. Unele buffere nu corespund nici unui fiºier. De exemplu, -buffer-ul numit "*Buffer List*" nu are nici un fiºier asociat. Este -buffer-ul care conþine lista de buffere ºi a fost creat de comanda C-x -C-b. Orice text pe care îl vedeþi într-o fereastrã a Emacs-ului este -întotdeauna parte dintr-un buffer. - ->> Tastaþi C-x 1 pentru a scãpa de lista de buffere. - -Dacã faceþi schimbãri în textul unui fiºier, apoi deschideþi un alt -fiºier, primul fiºier nu este salvat. Schimbãrile efectuate rãmân în -Emacs, în buffer-ul asociat acelui fiºier. Crearea sau editarea -buffer-ului celui de-al doilea fiºier nu are nici un efect asupra -buffer-ului primului fiºier. Acest lucru este foarte util, dar -înseamnã cã aveþi nevoie de o modalitate convenabilã de a salva -buffer-ul primului fiºier. Ar fi obositor sã fie necesar sã vã mutaþi -înapoi la el cu C-x C-f pentru a-l putea salva cu C-x C-s. Din acest -motiv existã comanda: - - C-x s salveazã niºte buffere - -C-x s vã întreabã despre fiecare buffer care conþine modificãri (ºi -care nu a fost salvat) dacã doriþi sã-l salvaþi. - ->> Introduceþi o linie de text, apoi tastaþi C-x s. - Ar trebui sã vã întrebe dacã sã salveze buffer-ul TUTORIAL.ro. - Raspundeþi "da" la întrebare tastând "y". - - -* EXTINDEREA SETULUI DE COMENZI -------------------------------- - -Existã mult mai multe comenzi Emacs decât combinaþii de taste bazate -pe CONTROL ºi META. Soluþia în Emacs este folosirea comenzilor -eXtinse. Acestea sunt de douã feluri: - - C-x eXtinde un caracter; urmatã de un caracter - M-x eXtinde un nume; urmatã de un nume lung - -Acestea sunt comenzi care sunt utile în general, dar folosite mai rar -decât comenzile despre care aþi învãþat pânã acum. Aþi vãzut deja -douã dintre ele: comanda de deschis fiºiere (C-x C-f) ºi comanda de -salvat fiºiere (C-x C-s). Un alt exemplu este comanda de pãrãsit -Emacs-ul: C-x C-c. (Nu vã temeþi cã veþi pierde schimbãri fãcute în -fiºiere; înainte de a termina sesiunea curentã Emacs, C-x C-c vã va -întreba dacã doriþi sã salvaþi fiºierele modificate.) - -C-z este comanda cu care puteþi ieºi din Emacs *temporar* - astfel -încât sã puteþi sã vã întoarceþi la aceeaºi sesiune Emacs mai târziu. - -Pe sistemele unde este posibil, C-z "suspendã" Emacs-ul; asta înseamnã -cã, deºi vã veþi întoarce la prompt-ul shell-ului, Emacs-ul nu a fost -distrus. În shell-urile (interpretoarele de comenzi Unix) cele mai -uzuale puteþi reactiva Emacs-ul cu comanda `fg' sau `%emacs'. - -Pe sistemele care nu implementeazã mecanismele de suspendare, C-z -creeazã un subshell care ruleazã sub Emacs pentru a vã oferi -posibilitatea de a rula alte programe ºi de a vã întoarce la Emacs mai -târziu; pe aceste sisteme C-z nu iese cu adevãrat din Emacs - comanda -`exit' la promptul subshell-ului este modalitatea uzualã de a vã -întoarce în Emacs. - -În general C-x C-c se foloseºte înainte de pãrãsirea sistemului. -Puteþi folosi aceastã comandã ºi pentru a ieºi din instanþe de Emacs -lansate de programe de citit mail sau alte utilitare, deoarece acestea -s-ar putea sã nu fie capabile sã foloseascã facilitaþile de suspendare -ale Emacs-ului. În mod normal însã, dacã nu sunteþi pe cale sã -pãrãsiþi sistemul, este mai bine sã suspendaþi Emacs-ul cu C-z decât -sã ieºiþi complet cu C-x C-c. - -Emacs-ul are multe comenzi prefixate cu C-x. Aceasta este lista celor -pe care le-aþi învãþat pânã acum: - - C-x C-f deschide un fiºier - C-x C-s salveazã fiºierul - C-x C-b listeazã bufferele - C-x C-c pãrãseºte Emacs-ul - C-x u anuleazã - -Comenzile eXtinse cu nume sunt comenzile care sunt folosite ºi mai rar -sau comenzile care sunt folosite numai în anumite moduri. Un exemplu -este comanda replace-string (înlocuieºte-ºir) care înlocuieºte global -toate apariþiile unui ºir de caractere cu alt ºir de caractere. Când -tastaþi M-x, Emacs-ul afiºeazã pe ultima linie de pe ecran "M-x" ºi -puteþi introduce numele comenzii - în cazul nostru "replace-string". -Puteþi sã tastaþi doar "repl s" ºi Emacs-ul va completa numele. -Terminaþi comanda cu . - -Comanda replace-string necesitã douã argumente - ºirul ce va fi -înlocuit ºi ºirul înlocuitor. La sfârºitul introducerii fiecãrui -argument trebuie sã tastaþi . - ->> Mutaþi cursorul pe linia goalã care se gãseste douã linii mai jos. - Tastaþi apoi M-x repl smodificatalterat. - - Observaþi modul în care aceastã linie s-a modificat: aþi înlocuit - toate apariþiile cuvântului s-c-h-i-m-b-a-t cu "alterat", dupã - poziþia iniþialã a cursorului. - - -* SALVARE AUTOMATà ------------------- - -Dacã aþi facut schimbãri într-un fiºier, dar nu le-aþi salvat, aceste -schimbãri se pot pierde în cazul în care sistemul se blocheazã. -Pentru a vã proteja munca, Emacs-ul salveazã periodic un fiºier de -"autosalvare" pentru fiecare fiºier pe care îl editaþi. Acest fiºier -are un "#" la început ºi unul la sfârºit; de exemplu, dacã fiºierul -dumneavoastrã se numeste "hello.c", fiºierul de autosalvare -corespunzãtor se va numi "#hello.c#". Când salvaþi fiºierul în mod -normal, Emacs-ul ºterge fiºierul de autosalvare. - -În cazul unei cãderi a sistemului, puteþi sã vã recuperaþi fiºierul de -autosalvare deschizând fiºierul în mod normal (fiºierul pe care îl -editaþi, nu pe cel de autosalvare) ºi tastând dupã aceea M-x recover -file. Când vi se cere confirmarea, tastaþi yes pentru -a continua ºi a recupera fiºierul. - - -* ZONA DE ECOU --------------- - -Dacã Emacs-ul observã cã tastaþi comenzile încet, vi le va arãta la -marginea de jos a ecranului într-o zona numitã "zona de ecou". Zona -de ecou conþine cea mai de jos linie a ecranului. - - -* LINIA DE MOD --------------- - -Linia de deasupra zonei de ecou se numeºte "linia de mod" ("mode line" -în limba englezã). Linia de mod conþine ceva de genul: - ---**-Emacs: TUTORIAL (Fundamental)--L670--58%---------------- - -Aceastã linie prezintã informaþii utile despre starea Emacs-ului ºi -despre textul pe care îl editaþi. - -Stiþi deja ce înseamnã numele fiºierului - este fiºierul pe care l-aþi -deschis. -NN%-- indicã poziþia curentã a cursorului în text - NN la -sutã din text este deasupra primei linii de pe ecran. Dacã începutul -fiºierului este vizibil pe ecran, veþi vedea --Top-- în loc de ---00%--. Dacã sfârºitul fiºierului este vizibil pe ecran, veþi vedea ---Bot-- (de la "bottom" în limba englezã). Dacã fiºierul este atât de -mic, încât încape în întregime pe ecran, pe linia de mod veþi vedea ---All--. - -Stelele de la începutul liniei de mod semnalizeazã existenþa unor -modificãri nesalvate în text. Imediat dupã deschiderea fiºierului, -porþiunea respectivã din linia de mod nu conþine nici o stea, doar -minusuri. - -Porþiunea dinãuntrul parantezelor vã spune modul de editare curent. -Modul implicit este "Fundamental", modul pe care îl folosiþi chiar -acum. Este un exemplu de "mod major". - -Emacs-ul are multe moduri majore. Unele dintre ele sunt destinate -editãrii diferitelor limbaje ºi/sau tipuri de text, cum ar fi modul -Lisp, modul Text, etc. Numai un mod major poate fi activ la un moment -dat ºi numele sãu va fi întotdeauna acolo unde este "Fundamental" -acum. - -Fiecare mod major schimbã comportamentul unor comenzi. De exemplu -existã comenzi pentru crearea comentariilor într-un program, dar, cum -fiecare limbaj de programare are o idee diferitã despre felul cum ar -trebui sã arate un comentariu, fiecare mod major trebuie sã le -introducã într-un alt fel. Existã câte o comandã asociatã fiecãrui -mod major - aceasta este modalitatea de a schimba modul major. De -exemplu, M-x fundamental-mode este comanda cu care poate fi ales modul -"Fundamental". - -Dacã editaþi text în limba românã, cum ar fi de exemplu acest fiºier, -ar trebui probabil sã folosiþi modul Text. - ->> Tastaþi M-x text-mode. - -Nu vã temeti, nici una din comenzile pe care le-aþi învãþat pânã acum -nu schimbã Emacs-ul prea mult. Puteþi observa acum cã M-f ºi M-b -trateazã apostrofurile ca parte din cuvinte. Înainte, în modul -Fundamental, M-f ºi M-b tratau apostrofurile ca separatoare de -cuvinte. - -Modurile majore opereazã schimbãri subtile, ca cea descrisã mai sus. -Majoritatea comenzilor executã aceeaºi operaþie în fiecare mod major, -dar funcþioneazã puþin diferit. - -Pentru a vedea documentaþia referitoare la modul major curent, tastaþi -C-h m. - ->> Folosiþi C-u C-v o datã sau de mai multe ori pentru a aduce aceastã - linie aproape de începutul ecranului. Tastaþi C-h m ca sã aflaþi - diferenþele dintre modul Text ºi modul Fundamental. Tastaþi C-x 1 - pentru a ºterge documentaþia de pe ecran. - -Modurile majore se numesc "majore" pentru cã existã ºi moduri minore. -Modurile minore sunt ajustãri minore ale modurilor majore. Fiecare -mod minor poate fi activat sau dezactivat separat, independent de -celelalte moduri minore ºi independent de modul major curent. Puteþi -sã nu folosiþi nici un mod minor, un mod minor sau orice combinaþie de -moduri minore. - -Un mod minor care este foarte util, în mod special când editaþi text, -este modul "Auto Fill". Când acest mod este activat, Emacs-ul sparge -automat liniile la spaþiul dintre cuvinte de fiecare datã când -introducând text creaþi o linie care este prea lungã. - -Puteþi activa modul "Auto Fill" executând M-x auto-fill-mode. -Când acest mod este activat, îl puteþi dezactiva executând aceeaºi -comandã. Dacã modul este dezactivat, aceastã comandã îl activeazã, -când este activat, comanda îl dezactiveazã. Se spune cã aceastã -comandã inverseazã modul. - ->> Tastaþi M-x auto-fill-mode acum. Introduceþi apoi o linie - conþinând "asdf " de mai multe ori, pânã când linia se sparge în - douã. Trebuie sã puneþi spaþii între cuvinte pentru cã Auto Fill - sparge linia numai la spaþii. - -Marginea este stabilitã în mod normal la 70 de caractere, dar puteþi -schimba aceastã valoare cu comanda C-x f. Introduceþi valoarea doritã -ca argument numeric pentru C-x f. - ->> Tastaþi C-x f cu 20 ca argument numeric. (C-u 2 0 C-x f). - Introduceþi apoi un text oarecare ºi observaþi cum Emacs-ul umple - linii de maximum 20 de caractere. Restauraþi marginea la 70 de - caractere folosind din nou C-x f. - -Dacã faceþi schimbãri în mijlocul unui paragraf, modul Auto Fill nu -rearanjeazã paragraful. Pentru a face acest lucru, trebuie sã tastaþi -M-q (META-q) cu cursorul poziþionat înãuntrul paragrafului. - ->> Mutaþi cursorul în paragraful precedent ºi tastaþi M-q. - - -* CÃUTARE ---------- - -Emacs-ul poate cautã ºiruri (grupuri continue de caractere sau -cuvinte) fie înainte, fie înapoi (faþã de poziþia curentã a cursorului -în text). Cãutarea unui ºir este o operaþie ce mutã cursorul; -cursorul este mutat în poziþia corespunzãtoare urmãtoarei apariþii a -ºirului în text. - -Cãutarea este diferitã în Emacs faþã de majoritatea editoarelor, -deoarece este "incrementalã". Asta înseamnã cã execuþia operaþiunii -de cãutare se face în timp ce tastaþi ºirul de cãutat. - -Comanda ce iniþiazã cãutarea este C-s pentru cãutare înainte ºi C-r -pentru cãutare înapoi. AªTEPTAÞI! Nu le încercaþi acum. - -Când tastaþi C-s veþi remarca faptul cã ºirul "I-search" apare ca -prompt în zona de ecou. Aceasta vã spune cã Emacs-ul este în modul de -cãutare incrementalã, aºteptând ca dumneavoastrã sã introduceþi ºirul -pe care doriþi sã-l cãutaþi. Cãutarea poate fi terminatã cu . - ->> Tastaþi acum C-s pentru a porni o cãutare. ÎNCET, câte o singurã - literã la un moment dat, tastaþi cuvântul "cursor", fãcând o pauzã - dupã fiecare caracter tastat ca sã observaþi ce se întamplã cu - cursorul. Acum aþi terminat de cãutat prima apariþie a cuvântului - "cursor". ->> Tastaþi C-s din nou, pentru a cãuta urmãtoarea apariþie a - cuvântului "cursor". ->> Tastaþi acum de patru ori ºi observaþi miºcarea - cursorului. ->> Tastaþi pentru a termina cãutarea. - -Aþi observat ce s-a întamplat? În timpul unei cãutãri incrementale -Emacs-ul încearcã sã se poziþioneze pe prima apariþie a ºirului pe -care l-aþi introdus pânã în momentul respectiv. Dacã vreþi sã vã -poziþionaþi pe urmãtoarea apariþie a cuvântului "cursor", nu trebuie -decât sã tastaþi C-s încã o datã. Dacã nu mai existã o altã apariþie, -Emacs-ul va emite un sunet ºi vã va anunþa cã operaþiunea de cãutare a -eºuat ("failed" în limba englezã). C-g este o altã metodã de a -termina cãutarea. - -OBSERVAÞIE: Pe unele sisteme, C-s va bloca ecranul ºi nu veþi mai -primi nici un rãspuns de la Emacs. Aceasta indicã faptul cã o -"facilitate" a sistemului de operare numitã "controlul fluxului" -("flow control" în limba englezã) intercepteazã caracterul C-s ºi -acesta nu mai ajunge la Emacs. Pentru deblocarea ecranului, apãsaþi -C-q. Puteþi gãsi detalii referitoare la aceastã aºa-numitã -"facilitate" în secþiunea "Spontaneous Entry to Incremental Search" -din manualul Emacs-ului. - -Dacã sunteþi în mijlocul unei cãutãri incrementale ºi tastaþi -, veþi observa cã ultimul caracter în cãutarea incrementalã -este ºters ºi cãutarea se întoarce la poziþia anterioarã. De exemplu, -sã presupunem cã aþi tastat "c", pentru a cãuta prima apariþie a lui -"c". Dacã tastaþi "u", cursorul se va muta la prima apariþie a lui -"cu". Tastaþi acum . Aceasta va ºterge "u"-ul din ºirul de -cãutare ºi cursorul se va muta înapoi la prima apariþie a lui "c". - -Cãutarea incrementalã poate fi terminatã prin tastarea unui caracter -bazat pe CONTROL sau META (cu câteva excepþii - caracterele care sunt -specifice cãutãrii, cum ar fi C-s ºi C-r). - -C-s începe o cãutare care inspecteazã textul de DUPà poziþia curentã a -cursorului. Dacã doriþi sã cãutaþi în textul dinaintea poziþiei -curente a cursorului, folosiþi C-r. Toatã discuþia referitoare la C-s -se aplicã ºi comenzii C-r, cu menþiunea cã direcþia de cãutare este -inversã. - - -* FERESTRE MULTIPLE -------------------- - -Una dintre facilitãþile importante ale Emacs-ului este aceea de a -afiºa pe ecran mai multe ferestre simultan. - ->> Mutaþi cursorul pe aceastã linie ºi tastaþi C-u 0 C-l. - ->> Tastaþi acum C-x 2 pentru a împãrþi ecranul în douã ferestre. - Amândouã ferestrele vor afiºa acest tutorial. Cursorul va rãmane - în fereastra din partea de sus a ecranului. - ->> Tastaþi C-M-v pentru a miºca textul din fereastra de jos. - (Dacã nu aveþi o tastã META, tastaþi ESC C-v.) - ->> Tastaþi C-x o ("o" de la "other" - "cealaltã" în limba - englezã) pentru a muta cursorul în fereastra de jos. - ->> Tastaþi C-v ºi M-v în fereastra de jos pentru a muta textul. - Continuaþi sã citiþi aceste instrucþiuni în fereastra de sus. - ->> Tastaþi C-x o din nou pentru a muta cursorul înapoi în fereastra de - sus. Cursorul va fi plasat în locul unde a fost anterior. - -Puteþi continua sã folosiþi C-x o pentru a vã muta între ferestre. -Fiecare fereastrã are propria ei poziþie a cursorului, dar numai o -fereastrã aratã cursorul la un moment dat. Toate operaþiile normale -de editare au efect în fereastra în care se gãseºte cursorul - -fereastra respectivã se numeºte "fereastra selectatã". - -Comanda C-M-v este foarte utilã când editaþi text într-o fereastrã ºi -folosiþi cealaltã fereastrã pentru a citi documentaþii. Puteþi þine -întotdeauna cursorul în fereastra în care editaþi, în timp ce avansaþi -textul din cealaltã fereastrã cu C-M-v. - -C-M-v este un exemplu de caracter CONTROL-META. Dacã aveþi o tastã -META, puteþi tasta C-M-v þinând apãsate ºi CONTROL ºi META când tastaþi -v. Nu conteazã care dintre CONTROL sau META este apãsatã mai întâi, -pentru cã amândouã acþioneazã prin modificarea caracterului pe care îl -tastaþi. - -Dacã nu aveþi o tastã META ºi folosiþi ESC în loc, ordinea este -importantã: trebuie sã tastaþi ESC urmat de CONTROL-v; CONTROL-ESC v -nu va funcþiona, din cauza faptului cã ESC este un caracter de sine -stãtãtor, nu un modificator. - ->> Tastaþi C-x 1 (în fereastra de sus) ca sã renunþaþi la fereastra - de jos. - -(Dacã aþi tastat C-x 1 în fereastra de jos, aceastã comandã va închide -fereastra de sus. Gândiþi-vã la ea aºa "Pãstreazã doar o fereastrã - -cea în care sunt acum.") - -Nu este nevoie sã afisaþi acelaºi buffer în ambele ferestre. Dacã -folosiþi C-x C-f pentru a deschide un fiºier într-o fereastrã, -cealaltã fereastrã nu se schimbã. Puteþi deschide un fiºier diferit -în fiecare fereastrã. - -O altã modalitate de a folosi douã ferestre ca sã afiºaþi lucruri -diferite: - ->> Tastaþi C-x 4 C-f apoi numele unui fiºier. Terminaþi comanda - cu Observaþi cã fiºierul specificat apare în fereastra de - jos. Cursorul la fel. - ->> Tastaþi C-x o pentru a vã muta în fereastra de sus, apoi tastaþi - C-x 1 pentru a ºterge fereastra de jos. - - -* NIVELURI DE EDITARE RECURSIVà -------------------------------- - -Uneori veþi intra în ceea ce se numeste un "nivel de editare -recursivã". Acesta este indicat de prezenþa unor paranteze drepte în -linia de mod în jurul numelui modului major. De exemplu, s-ar putea -sã vedeþi [(Fundamental)] în loc de (Fundamental). - -Pentru a ieºi din nivelul de editare recursivã, tastaþi ESC ESC ESC. -Aceasta este o comandã de ieºire de uz general. O puteþi folosi ºi ca -sã ieºiþi din minibuffer sau ca sã eliminaþi ferestrele în plus. - ->> Tastaþi M-x pentru a intra în minibuffer; tastaþi apoi ESC ESC ESC - ca sã ieºiþi. - -Nu puteþi folosi C-g pentru a ieºi dintr-un nivel de editare recursivã -deoarece comanda C-g este folositã pentru a anula comenzi ºi argumente -înãuntrul unui nivel de editare recursivã. - - -* CUM PUTEÞI OBÞINE MAI MULTE INFORMAÞII ----------------------------------------- - -În acest tutorial am încercat sã furnizãm suficiente informaþii pentru -a face primii paºi în Emacs. Existã atât de multe comenzi în Emacs -încât ar fi imposibil sã le explicãm pe toate aici. S-ar putea însã -sã doriþi sã învaþaþi mai multe despre Emacs, deoarece oferã foarte -multe facilitaþi interesante. Existã comenzi pentru a citi -documentaþia despre comenzile Emacs-ului. Aceste comenzi ajutãtoare -sunt prefixate cu caracterul C-h, denumit ºi "caracterul de ajutor". - -Pentru a folosi aceste facilitãþi de ajutor, tastaþi caracterul C-h, -apoi un caracter ce specificã tipul de ajutor de care aveþi nevoie. -În cazul în care sunteþi nelãmurit, tastaþi C-h ? ºi Emacs-ul vã va -spune ce fel de ajutor vã poate oferi. Dacã aþi tastat C-h ºi vã -rãzgândiþi (nu mai doriþi ajutor) puteþi tasta C-g pentru a anula -comanda. - -(Anumite site-uri remapeazã caracterul C-h. Nu ar trebui sã facã asta -orbeºte pentru toþi utilizatorii - aveþi motiv sã vã plângeþi -administratorului de sistem. Între timp, dacã C-h nu afiºeazã un -mesaj despre ajutor la marginea de jos a ecranului, încercaþi M-x -help în loc.) - -Comanda elementarã de ajutor este C-h c. Tastaþi C-h, apoi caracterul -c ºi o comandã alcãtuitã dintr-un caracter sau secvenþã de caractere -ºi Emacs-ul va afiºa o scurtã descriere a comenzii. - ->> Tastaþi C-h c C-p. - -Mesajul ar trebui sã fie ceva de genul - - C-p runs the command previous-line - -Aceasta vã spune "numele funcþiei". Numele de funcþii sunt folosite -în principal pentru a adapta ºi extinde Emacs-ul, dar, cum numele -funcþiilor sunt alese în aºa fel încât sã indice actiunea comenzii -respective, ele pot servi ca o documentaþie foarte scurtã, suficientã -ca sã vã aminteascã de comenzi pe care le-aþi învãþat deja. - -Comenzile formate din mai multe caractere (cum ar fi C-x C-s) ºi (dacã -nu aveþi o tasta META, EDIT sau ALT) v sunt de asemenea permise -dupã C-h c. - -Pentru a obþine mai multe informaþii despre o comandã, folosiþi C-h k -în loc de C-h c. - ->> Tastaþi C-h k C-p. - -Aceastã comandã afiºeazã documentaþia ºi numele funcþiei într-o -fereastrã separatã. Când terminaþi de citit, tastaþi q pentru a -o elimina. Nu trebuie sã faceþi acest lucru imediat. Puteþi edita -o vreme, citind textul din fereastra de ajutor. - -Câteva comenzi C-h utile: - - C-h f descrie o funcþie al cãrei nume trebuie sã-l - introduceþi - ->> Încercaþi sã tastaþi C-h f previous-line. - Aceasta afiºeazã toatã informaþia pe care o are Emacs-ul despre - funcþia ce implementeazã comanda C-p. - - C-h a Command Apropos. Tastaþi un cuvânt cheie ºi Emacs-ul va - lista toate funcþiile ºi variabilele ale cãror nume - conþin acel cuvânt cheie. La stânga comenzilor care - pot fi invocate cu M-x va fi afiºatã o steluþã. - Pentru unele comenzi, Command Apropos va lista o - secvenþã de unul sau douã caractere ce executã aceeaºi - comandã. - ->> Tastaþi C-h a fiºier. - -Aceasta afiºeazã într-o altã ferastrã o listã a tuturor comenzilor M-x -al cãror nume conþine "fiºier". Veþi vedea caractere-comandã de genul -C-x C-f listate lângã comanda nume corespunzãtoare (find-file). - ->> Tastaþi C-M-v ca sã deplasaþi conþinutul ferestrei de ajutor. - Faceþi acest lucru de câteva ori. - ->> Tastaþi C-x 1 pentu a ºterge fereastra de ajutor. - - -* CONCLUZII ------------ - -Þineþi minte, pentru a ieºi permanent din Emacs, folosiþi C-x C-c. -Pentru a ieºi temporar într-un shell (în aºa fel încât sã vã puteþi -întoarce la Emacs mai târziu) folosiþi C-z. - -Acest tutorial a fost organizat în aºa fel încât sã fie pe înþelesul -noilor utilizatori - nu vã sfiiþi sã vã plângeþi autorilor dacã gasiþi -ceva neclar! - - -COPIERE -------- - -Acest tutorial este rezultatul prelucrãrii unei serii lungi de -tutoriale pentru Emacs derivate din cel scris de Stuart Cracraft -pentru versiunea iniþialã de Emacs. - -Cu scopul evitãrii oricãror confuzii datorate traducerii, las în -continuare noþita de copyright originalã în limba englezã. - -This version of the tutorial, like GNU Emacs, is copyrighted, and -comes with permission to distribute copies on certain conditions: - -Copyright (C) 1998, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 Free Software Foundation, Inc. - - Permission is granted to anyone to make or distribute verbatim copies - of this document as received, in any medium, provided that the - copyright notice and permission notice are preserved, - and that the distributor grants the recipient permission - for further redistribution as permitted by this notice. - - Permission is granted to distribute modified versions - of this document, or of portions of it, - under the above conditions, provided also that they - carry prominent notices stating who last altered them. - -Condiþiile de copiere a Emacs-ului sunt mai complexe, dar în acelaºi -spirit. Citiþi fiºierul COPYING ºi apoi distribuiþi prietenilor copii -ale Emacs-ului. Contribuiþi la eliminarea obstrucþionismului software -folosind, scriind ºi distribuind free software! - -;;; Local Variables: -;;; coding: iso-latin-2 -;;; End: - -;;; arch-tag: dcf252cf-bd67-4f8d-a440-1ec4b8dbfd70 diff --git a/etc/TUTORIAL.ru b/etc/TUTORIAL.ru deleted file mode 100644 index 9fc54ba121d..00000000000 --- a/etc/TUTORIAL.ru +++ /dev/null @@ -1,1162 +0,0 @@ -õÞÅÂÎÉË Emacs. õÓÌÏ×ÉÑ ÒÁÓÐÒÏÓÔÒÁÎÅÎÉÑ ÐÒÉ×ÅÄÅÎÙ × ËÏÎÃÅ ÆÁÊÌÁ - -äÌÑ ÕÐÒÁ×ÌÅÎÉÑ Emacs ÏÂÙÞÎÏ ÉÓÐÏÌØÚÕÅÔÓÑ ËÌÀÞ (key -- ÓÏÞÅÔÁÎÉÅ ËÌÁ×ÉÛ -ËÌÁ×ÉÁÔÕÒÙ É/ÉÌÉ ËÎÏÐÏË ÍÙÛÉ), ×ËÌÀÞÁÀÝÉÊ × ÓÅÂÑ ËÌÁ×ÉÛÕ CONTROL (ÉÎÏÇÄÁ -ÏÔÍÅÞÁÅÍÁÑ ËÁË CTRL ÉÌÉ CTL) ÉÌÉ ËÌÁ×ÉÛÕ META (ÉÎÏÇÄÁ ÐÏÍÅÞÅÎÎÕÀ ËÁË ALT ÉÌÉ -EDIT). ÷ ÄÁÌØÎÅÊÛÅÍ, ×ÍÅÓÔÏ ÔÏÇÏ, ÞÔÏÂÙ ËÁÖÄÙÊ ÒÁÚ ÐÉÓÁÔØ META ÉÌÉ CONTROL, -ÍÙ ÂÕÄÅÍ ÉÓÐÏÌØÚÏ×ÁÔØ ÓÌÅÄÕÀÝÉÅ ÓÏËÒÁÝÅÎÉÑ: - - C- -- ÓÌÅÄÕÅÔ ÕÄÅÒÖÉ×ÁÔØ ËÌÁ×ÉÛÕ CONTROL, ÐÏËÁ ÎÁÂÉÒÁÅÔÓÑ ÓÉÍ×ÏÌ - . ôÁË, C-f ÄÏÌÖÎÏ ÏÚÎÁÞÁÔØ: ÎÁÖÁÔØ ËÌÁ×ÉÛÕ CONTROL É f. - M- -- ÓÌÅÄÕÅÔ ÕÄÅÒÖÉ×ÁÔØ ËÌÁ×ÉÛÕ META, ÐÏËÁ ÎÁÂÉÒÁÅÔÓÑ ÓÉÍ×ÏÌ - . åÓÌÉ ÎÅÔ ËÌÁ×ÉÛÉ META, ALT ÉÌÉ EDIT, ÔÏ ÎÁÖÍÉÔÅ , - ÏÔÐÕÓÔÉÔÅ ÅÅ, Á ÐÏÔÏÍ ÎÁÂÅÒÉÔÅ ÓÉÍ×ÏÌ . - -÷ÁÖÎÏÅ ÚÁÍÅÞÁÎÉÅ: ÄÌÑ ÚÁ×ÅÒÛÅÎÉÑ ÓÅÁÎÓÁ Emacs, ÎÁÂÅÒÉÔÅ C-x C-c (Ä×Á -ÓÉÍ×ÏÌÁ). óÉÍ×ÏÌÙ ">>" Ó ÌÅ×ÏÊ ÓÔÏÒÏÎÙ ÕËÁÚÙ×ÁÀÔ, ÞÔÏ ×ÁÍ ÎÕÖÎÏ ÄÅÌÁÔØ, -ÞÔÏÂÙ ÐÒÉÍÅÎÉÔØ ËÏÍÁÎÄÕ. îÁÐÒÉÍÅÒ: -<<ðÕÓÔÙÅ ÓÔÒÏËÉ ×ÏËÒÕÇ ×ÓÔÁ×ÌÅÎÙ ËÏÍÁÎÄÏÊ help-with-tutorial>> -[óÅÒÅÄÉÎÁ ÓÔÒÁÎÉÃÙ ÏÓÔÁ×ÌÅÎÁ ÐÕÓÔÏÊ × ÕÞÅÂÎÙÈ ÃÅÌÑÈ. ôÅËÓÔ ÐÒÏÄÏÌÖÁÅÔÓÑ ÎÉÖÅ] ->> ôÅÐÅÒØ ÎÁÖÍÉÔÅ C-v (ÐÒÏÓÍÏÔÒ ÓÌÅÄÕÀÝÅÇÏ ÜËÒÁÎÁ) ÄÌÑ ÐÅÒÅÍÅÝÅÎÉÑ ÎÁ - ÓÌÅÄÕÀÝÉÊ ÜËÒÁÎ. (×ÙÐÏÌÎÉÔÅ ÜÔÕ ËÏÍÁÎÄÕ ÕÄÅÒÖÉ×ÁÑ ËÌÁ×ÉÛÕ CONTROL É - ÎÁÖÉÍÁÑ v). ôÅÐÅÒØ ×Ù ÄÏÌÖÎÙ ÜÔÏ ÓÄÅÌÁÔØ ÅÝÅ ÒÁÚ, ËÏÇÄÁ ÚÁËÏÎÞÉÔÅ ÞÉÔÁÔØ - ÜËÒÁÎ. - -ïÂÒÁÔÉÔÅ ×ÎÉÍÁÎÉÅ ÎÁ ÔÏ, ÞÔÏ, ÐÒÉ ÐÅÒÅÈÏÄÅ Ó ÜËÒÁÎÁ ÎÁ ÜËÒÁÎ ÐÅÒÅËÒÙ×ÁÀÔÓÑ -Ä×Å ÓÔÒÏÞËÉ -- ÜÔÏ ÏÂÅÓÐÅÞÉ×ÁÅÔ ÎÅËÏÔÏÒÕÀ ÎÅÐÒÅÒÙ×ÎÏÓÔØ ×ÏÓÐÒÉÑÔÉÑ, ÔÁË ÞÔÏ -×Ù ÍÏÖÅÔÅ ÐÒÏÄÏÌÖÁÔØ ÞÉÔÁÔØ ÔÅËÓÔ ÎÅ ÔÅÒÑÑ ÎÉÔÉ ÐÏ×ÅÓÔ×Ï×ÁÎÉÑ. - -ðÅÒ×ÏÅ, ÞÔÏ ×ÁÍ ÎÅÏÂÈÏÄÉÍÏ ÚÎÁÔØ -- ÜÔÏ ÔÏ, ËÁË ÐÅÒÅÄ×ÉÇÁÔØÓÑ ÐÏ ÔÅËÓÔÕ ÉÚ -ÏÄÎÏÇÏ ÍÅÓÔÁ × ÄÒÕÇÏÅ. ÷Ù ÕÖÅ ÚÎÁÅÔÅ, ËÁË ÐÅÒÅÍÅÓÔÉÔØÓÑ ×ÐÅÒÅÄ ÎÁ ÏÄÉÎ -ÜËÒÁÎ, ÉÓÐÏÌØÚÕÑ ÓÏÞÅÔÁÎÉÅ ËÌÁ×ÉÛ C-v. äÌÑ ÐÅÒÅÍÅÝÅÎÉÑ ÎÁÚÁÄ ÎÁ ÏÄÉÎ ÜËÒÁÎ, -ÎÁÖÍÉÔÅ M-v (ÕÄÅÒÖÉ×ÁÊÔÅ ËÌÁ×ÉÛÕ META É ÎÁÂÅÒÉÔÅ v, ÉÌÉ ÎÁÖÍÉÔÅ É -ÚÁÔÅÍ v, Á ÅÓÌÉ Õ ×ÁÓ ÎÅÔ ËÌÁ×ÉÛÉ META, EDIT ÉÌÉ ALT). - ->> ÐÏÐÒÏÂÕÊÔÅ ÎÁÂÒÁÔØ M-v, Á ÚÁÔÅÍ C-v, ÎÅÓËÏÌØËÏ ÒÁÚ. - -* ëòáôëéê ðåòåþåîø ëïíáîä -------------------------- - -äÌÑ ÐÒÏÓÍÏÔÒÁ ÉÓÐÏÌØÚÕÀÔÓÑ ÓÌÅÄÕÀÝÉÅ ËÏÍÁÎÄÙ: - - C-v ðÅÒÅÊÔÉ ÎÁ ÏÄÉÎ ÜËÒÁÎ ×ÐÅÒÅÄ - M-v ðÅÒÅÊÔÉ ÎÁ ÏÄÉÎ ÜËÒÁÎ ÎÁÚÁÄ - C-l ïÞÉÓÔÉÔØ ÜËÒÁÎ É ÏÔÏÂÒÁÚÉÔØ ×ÓÅ ÚÁÎÏ×Ï, ÒÁÚÍÅÓÔÉ× ÔÅËÓÔ, ÎÁÈÏÄÑÝÉÊÓÑ - ×ÏÚÌÅ ËÕÒÓÏÒÁ, × ÃÅÎÔÒÅ ÜËÒÁÎÁ. (ÜÔÏ CONTROL-L, Á ÎÅ CONTROL-1.) - ->> îÁÊÄÉÔÅ ËÕÒÓÏÒ, É ÚÁÐÏÍÎÉÔÅ ÔÅËÓÔ ×ÏÚÌÅ ÎÅÇÏ. ðÏÔÏÍ ÎÁÖÍÉÔÅ C-l. - îÁÊÄÉÔÅ ËÕÒÓÏÒ ÓÎÏ×Á É ÕÂÅÄÉÔÅÓØ, ÞÔÏ ×ÏÚÌÅ ÎÅÇÏ ×ÓÅ ÔÏÔ ÖÅ ÔÅËÓÔ. - -÷Ù ÔÁËÖÅ ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ ËÌÁ×ÉÛÉ PageUp É PageDn ÄÌÑ ÐÅÒÅÍÅÝÅÎÉÑ ÍÅÖÄÕ -ÜËÒÁÎÁÍÉ (ÅÓÌÉ ÏÎÉ ÅÓÔØ ÎÁ ×ÁÛÅÍ ÔÅÒÍÉÎÁÌÅ), ÎÏ ×Ù ÓÍÏÖÅÔÅ ÒÁÂÏÔÁÔØ ÂÏÌÅÅ -ÜÆÆÅËÔÉ×ÎÏ, ÅÓÌÉ ÂÕÄÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ ÓÏÞÅÔÁÎÉÑ C-v É M-v. - - -* âáúï÷ùå ëïíáîäù õðòá÷ìåîéñ ëõòóïòïí -------------------------------------- - -ä×ÉÖÅÎÉÅ ÏÔ ÜËÒÁÎÁ Ë ÜËÒÁÎÕ ÕÄÏÂÎÏ, ÎÏ ËÁË ÐÅÒÅÍÅÓÔÉÔØÓÑ × ÏÐÒÅÄÅÌÅÎÎÏÅ -ÍÅÓÔÏ × ÔÅËÓÔÅ ÎÁ ÜËÒÁÎÅ? - -åÓÔØ ÎÅÓËÏÌØËÏ ÓÐÏÓÏÂÏ× ×ÙÐÏÌÎÅÎÉÑ ÜÔÏÊ ÏÐÅÒÁÃÉÉ. ÷Ù ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ -ËÌÁ×ÉÛÉ ÕÐÒÁ×ÌÅÎÉÑ ËÕÒÓÏÒÏÍ (ÓÔÒÅÌËÉ), ÎÏ ÂÏÌÅÅ ÜÆÆÅËÔÉ×ÎÙÍ ÂÕÄÅÔ ÓÏÈÒÁÎÅÎÉÅ -ÒÕË × ÉÈ ÓÔÁÎÄÁÒÔÎÏÊ ÐÏÚÉÃÉÉ É ÉÓÐÏÌØÚÏ×ÁÔØ ËÏÍÁÎÄÙ C-p, C-b, C-f É C-n. üÔÉ -ËÏÍÁÎÄÙ ÜË×É×ÁÌÅÎÔÎÙ ÞÅÔÙÒÅÍ ËÌÁ×ÉÛÁÍ ÐÅÒÅÍÅÝÅÎÉÑ ËÕÒÓÏÒÁ, ËÁË ÜÔÏ ÐÏËÁÚÁÎÏ -ÎÁ ÓÈÅÍÅ: - - ðÒÅÄÙÄÕÝÁÑ ÓÔÒÏËÁ, C-p - : - : - îÁÚÁÄ, C-b .... ôÅËÕÝÁÑ ÐÏÚÉÃÉÑ ËÕÒÓÏÒÁ .... ÷ÐÅÒÅÄ, C-f - : - : - óÌÅÄÕÀÝÁÑ ÓÔÒÏËÁ, C-n - ->> ðÅÒÅÍÅÓÔÉÔÅ ËÕÒÓÏÒ ÎÁ ÓÔÒÏËÕ ÒÑÄÏÍ Ó ÄÉÁÇÒÁÍÍÏÊ, ÉÓÐÏÌØÚÕÑ ÓÏÞÅÔÁÎÉÑ - ËÌÁ×ÉÛ C-n ÉÌÉ C-p. ðÏÔÏÍ, ÎÁÖÍÉÔÅ C-l É ÐÏÓÍÏÔÒÉÔÅ ËÁË ÄÉÁÇÒÁÍÍÁ - ÐÅÒÅÍÅÓÔÉÔÓÑ × ÃÅÎÔÒ ÜËÒÁÎÁ. - -÷ÁÍ ÂÕÄÅÔ ÎÅÓÌÏÖÎÏ ÚÁÐÏÍÎÉÔØ ÜÔÉ ËÏÍÁÎÄÙ ÐÏ ÐÅÒ×ÙÍ ÂÕË×ÁÍ ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÈ -ÓÌÏ× -- B-ÎÁÚÁÄ (backward) É F-×ÐÅÒÅÄ (forward). üÔÏ ÏÓÎÏ×ÎÙÅ ËÏÍÁÎÄÙ -ÐÏÚÉÃÉÏÎÉÒÏ×ÁÎÉÑ ËÕÒÓÏÒÁ, ËÏÔÏÒÙÍÉ ÷Ù ÂÕÄÅÔÅ ÐÏÌØÚÏ×ÁÔØÓÑ ÷óåçäá, ÔÁË ÞÔÏ -ÂÕÄÅÔ ÎÅÐÌÏÈÏ ÉÈ ×ÙÕÞÉÔØ. - ->> îÁÖÍÉÔÅ ÎÅÓËÏÌØËÏ ÒÁÚ C-n, ÞÔÏÂÙ ÏÐÕÓÔÉÔØ ËÕÒÓÏÒ ×ÎÉÚ ÎÁ ÜÔÕ ÓÔÒÏËÕ. - ->> ðÅÒÅÍÅÓÔÉÔÅÓØ ÐÏ ÓÔÒÏËÅ, ÉÓÐÏÌØÚÕÑ C-f É ÐÏÔÏÍ ÐÏÄÎÉÍÉÔÅÓØ ××ÅÒÈ Ó - ÐÏÍÏÝØÀ C-p. ðÏÓÍÏÔÒÉÔÅ, ËÁË ÉÚÍÅÎÉÌÏÓØ ÐÏÌÏÖÅÎÉÅ ËÕÒÓÏÒÁ ÐÒÉ ÎÁÖÁÔÉÉ - ó-Ò, ÅÓÌÉ ÏÎ ÎÁÈÏÄÉÌÓÑ × ÓÅÒÅÄÉÎÅ ÓÔÒÏËÉ. - -ëÁÖÄÁÑ ÓÔÒÏËÁ ÔÅËÓÔÁ ÚÁ×ÅÒÛÁÅÔÓÑ ÓÉÍ×ÏÌÏÍ ÐÅÒÅ×ÏÄÁ ÓÔÒÏËÉ (Newline -character), ËÏÔÏÒÙÊ ÏÔÄÅÌÑÅÔ ÅÅ ÏÔ ÓÌÅÄÕÀÝÅÊ ÓÔÒÏËÉ. ðÏÓÌÅÄÎÑÑ ÓÔÒÏËÁ × -×ÁÛÅÍ ÆÁÊÌÅ ÄÏÌÖÎÁ ÂÙ ÔÏÖÅ ÚÁ×ÅÒÛÁÔØÓÑ ÓÉÍ×ÏÌÏÍ ÐÅÒÅ×ÏÄÁ ÓÔÒÏËÉ (ÎÏ Emacs ÎÅ -ÔÒÅÂÕÅÔ ÜÔÏÇÏ). - ->> ðÏÐÒÏÂÕÊÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ C-b × ÎÁÞÁÌÅ ÓÔÒÏËÉ. ëÕÒÓÏÒ ÄÏÌÖÅÎ ÐÅÒÅÍÅÓÔÉÔØÓÑ - ÎÁ ËÏÎÅà ÐÒÅÄÙÄÕÝÅÊ ÓÔÒÏËÉ. üÔÏ ÐÒÏÉÓÈÏÄÉÔ ÐÏÔÏÍÕ, ÞÔÏ ÏÎ Ä×ÉÖÅÔÓÑ ÎÁÚÁÄ - ÞÅÒÅÚ ÓÉÍ×ÏÌ ÐÅÒÅ×ÏÄÁ ÓÔÒÏËÉ. - -C-f ÍÏÖÅÔ ÐÅÒÅÍÅÝÁÔØ ËÕÒÓÏÒ ÞÅÒÅÚ ÓÉÍ×ÏÌ ÐÅÒÅ×ÏÄÁ ÓÔÒÏËÉ ÔÁË ÖÅ, ËÁË É C-b. - ->> ðÏÐÒÏÂÕÊÔÅ ÎÅÓËÏÌØËÏ ÒÁÚ ÐÒÉÍÅÎÉÔØ C-b ÔÁË, ÞÔÏÂÙ ÷Ù Õ×ÉÄÅÌÉ, ËÁË - Ä×ÉÖÅÔÓÑ ËÕÒÓÏÒ. äÁÌÅÅ ÉÓÐÏÌØÚÕÊÔÅ ÓÏÞÅÔÁÎÉÅ ËÌÁ×ÉÛ C-f ÞÔÏÂÙ ×ÅÒÎÕÔØÓÑ - ÎÁ ËÏÎÅà ÓÔÒÏËÉ. îÁÖÍÉÔÅ C-f ÅÝÅ ÒÁÚ, ÞÔÏÂÙ ÐÅÒÅÊÔÉ Ë ÎÁÞÁÌÕ ÓÌÅÄÕÀÝÅÊ - ÓÔÒÏËÉ. - -ëÏÇÄÁ ×Ù ÐÅÒÅÍÅÝÁÅÔÅÓØ ÚÁ ×ÅÒÈÎÉÊ ÉÌÉ ÎÉÖÎÉÊ ËÒÁÊ ÜËÒÁÎÁ, ÔÅËÓÔ, ÎÁÈÏÄÑÝÉÊÓÑ -ÚÁ ÜËÒÁÎÏÍ, ÓÄ×ÉÇÁÅÔÓÑ ×ÎÕÔÒØ ÜËÒÁÎÁ. üÔÏ ÎÁÚÙ×ÁÅÔÓÑ "ÐÒÏËÒÕÔËÁ -(scrolling)". ðÒÏËÒÕÔËÁ ÐÏÚ×ÏÌÑÅÔ Emacs'Õ ÐÅÒÅÍÅÝÁÔØ ËÕÒÓÏÒ × ÎÕÖÎÏÅ ÍÅÓÔÏ -ÔÅËÓÔÁ ÂÅÚ ÐÅÒÅÍÅÝÅÎÉÑ ÅÇÏ ÚÁ ÐÒÅÄÅÌÙ ÜËÒÁÎÁ. - ->> ðÏÐÒÏÂÕÊÔÅ ÐÅÒÅÍÅÓÔÉÔØ ËÕÒÓÏÒ ÚÁ ÎÉÖÎÀÀ ÇÒÁÎÉÃÕ ÜËÒÁÎÁ, ÉÓÐÏÌØÚÕÑ C-n, É - ÐÏÓÍÏÔÒÉÔÅ, ÞÔÏ ÐÒÏÉÚÏÊÄÅÔ. - -åÓÌÉ ÐÏÓÉÍ×ÏÌØÎÏÅ ÐÅÒÅÍÅÝÅÎÉÅ ÓÌÉÛËÏÍ ÍÅÄÌÅÎÎÏ, ÷Ù ÍÏÖÅÔÅ Ä×ÉÇÁÔØÓÑ ÐÏ -ÓÌÏ×ÁÍ. M-f (META-f) ÐÅÒÅÍÅÝÁÅÔ ×ÐÅÒÅÄ ÎÁ ÓÌÏ×Ï, Á M-b ÎÁÚÁÄ ÎÁ ÓÌÏ×Ï. - ->> îÁÖÍÉÔÅ ÎÅÓËÏÌØËÏ ÒÁÚ M-f É M-b. - -åÓÌÉ ËÕÒÓÏÒ ÎÁÈÏÄÉÔÓÑ × ÓÅÒÅÄÉÎÅ ÓÌÏ×Á, M-f ÐÅÒÅÍÅÓÔÉÔ ÅÇÏ × ËÏÎÅà ÓÌÏ×Á. -åÓÌÉ ËÕÒÓÏÒ ÎÁÈÏÄÉÔÓÑ ÍÅÖÄÕ ÓÌÏ×ÁÍÉ, M-f ÐÅÒÅÍÅÓÔÉÔ ÅÇÏ × ËÏÎÅà ÓÌÅÄÕÀÝÅÇÏ -ÓÌÏ×Á. M-b ÒÁÂÏÔÁÅÔ ÔÏÞÎÏ ÔÁË ÖÅ, ÎÏ × ÐÒÏÔÉ×ÏÐÏÌÏÖÎÏÍ ÎÁÐÒÁ×ÌÅÎÉÉ. - ->> îÁÖÍÉÔÅ M-f É M-b ÎÅÓËÏÌØËÏ ÒÁÚ, ÐÅÒÅÍÅÖÁÑ ÉÈ Ó C-f É C-b -- ÔÁË ×Ù - ÓÍÏÖÅÔÅ ÚÁÍÅÔÉÔØ ÄÅÊÓÔ×ÉÑ M-f É M-b ÉÚ ÒÁÚÎÙÈ ÐÏÚÉÃÉÊ × ÓÌÏ×ÁÈ É ÍÅÖÄÕ - ÎÉÍÉ. - -ïÔÍÅÔØÔÅ ÐÁÒÁÌÌÅÌØ ÍÅÖÄÕ C-f É C-b Ó ÏÄÎÏÊ ÓÔÏÒÏÎÙ, É M-f É M-b Ó -ÄÒÕÇÏÊ. ïÞÅÎØ ÞÁÓÔÏ Meta-ÓÉÍ×ÏÌÙ ÉÓÐÏÌØÚÕÀÔÓÑ ÄÌÑ ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÈ ÏÐÅÒÁÃÉÊ -ÎÁÄ ÅÄÉÎÉÃÁÍÉ, ÏÐÒÅÄÅÌÅÎÎÙÍÉ × ÑÚÙËÅ (ÓÌÏ×Á, ÐÒÅÄÌÏÖÅÎÉÑ, ÁÂÚÁÃÙ), ÔÏÇÄÁ ËÁË -Control-ÓÉÍ×ÏÌÙ ÒÁÂÏÔÁÀÔ Ó ÏÓÎÏ×ÎÙÍÉ ÅÄÉÎÉÃÁÍÉ, ÎÅÚÁ×ÉÓÉÍÏ ÏÔ ÔÏÇÏ, ÞÔÏ ÷Ù -ÒÅÄÁËÔÉÒÕÅÔÅ (ÓÉÍ×ÏÌÙ, ÓÔÒÏËÉ, É Ô.Ä.). - -üÔÁ ÐÁÒÁÌÌÅÌØ ÓÕÝÅÓÔ×ÕÅÔ ÍÅÖÄÕ ÓÔÒÏËÁÍÉ É ÐÒÅÄÌÏÖÅÎÉÑÍÉ: C-a É C-e -ÐÅÒÅÍÅÝÁÅÔ ËÕÒÓÏÒ × ÎÁÞÁÌÏ É ËÏÎÅà ÓÔÒÏËÉ, Á M-a É M-e ÐÅÒÅÍÅÝÁÅÔ ËÕÒÓÏÒ × -ÎÁÞÁÌÏ É ËÏÎÅà ÐÒÅÄÌÏÖÅÎÉÑ. - ->> ðÏÐÒÏÂÕÊÔÅ ÎÁÖÁÔØ ÐÁÒÕ ÒÁÚ C-a, Á ÐÏÔÏÍ ÐÁÒÕ ÒÁÚ C-e. ðÏÐÒÏÂÕÊÔÅ ÐÁÒÕ ÒÁÚ - ÎÁÖÁÔØ M-a, ÐÏÓÌÅ ÜÔÏÇÏ ÐÁÒÕ ÒÁÚ ÎÁÖÁÔØ M-e. - -ðÏÓÍÏÔÒÉÔÅ, ÞÔÏ ÐÏ×ÔÏÒ C-a ÎÉÞÅÇÏ ÎÅ ÉÚÍÅÎÑÅÔ, Á ÐÏ×ÔÏÒ M-a ÐÒÏÄÏÌÖÁÅÔ -Ä×ÉÖÅÎÉÅ ËÕÒÓÏÒÁ Ë ÓÌÅÄÕÀÝÅÍÕ ÐÒÅÄÌÏÖÅÎÉÀ. üÔÏ ÎÅ ÓÏÈÒÁÎÑÅÔ ÁÎÁÌÏÇÉÀ, ÎÏ -×ÙÇÌÑÄÉÔ ÅÓÔÅÓÔ×ÅÎÎÏ. - -ðÏÌÏÖÅÎÉÅ ËÕÒÓÏÒÁ × ÔÅËÓÔÅ ÔÁËÖÅ ÎÁÚÙ×ÁÀÔ "ÔÏÞËÏÊ ×ÓÔÁ×ËÉ". óËÁÖÅÍ ÉÎÁÞÅ: -ËÕÒÓÏÒ ÐÏËÁÚÙ×ÁÅÔ ÍÅÓÔÏ ÎÁ ÜËÒÁÎÅ × ËÁËÏÊ ÔÏÞËÅ ÂÕÄÅÔ ÒÁÓÐÏÌÏÖÅÎ ××ÏÄÉÍÙÊ -ÔÅËÓÔ. - -úÄÅÓØ ÓÏÂÒÁÎÙ ÏÓÎÏ×ÎÙÅ ËÏÍÁÎÄÙ ÐÅÒÅÍÅÝÅÎÉÑ ËÕÒÓÏÒÁ, ×ËÌÀÞÁÑ Ä×ÉÖÅÎÉÅ ÐÏ -ÓÌÏ×ÁÍ É ÐÒÅÄÌÏÖÅÎÉÑÍ: - - C-f îÁ ÓÉÍ×ÏÌ ×ÐÅÒÅÄ - C-b îÁ ÓÉÍ×ÏÌ ÎÁÚÁÄ - - M-f îÁ ÓÌÏ×Ï ×ÐÅÒÅÄ - M-b îÁ ÓÌÏ×Ï ÎÁÚÁÄ - - C-n îÁ ÓÌÅÄÕÀÝÕÀ ÓÔÒÏËÕ - C-p îÁ ÐÒÅÄÙÄÕÝÕÀ ÓÔÒÏËÕ - - C-a ÷ ÎÁÞÁÌÏ ÓÔÒÏËÉ - C-e ÷ ËÏÎÅà ÓÔÒÏËÉ - - M-a îÁÚÁÄ, × ÎÁÞÁÌÏ ÐÒÅÄÌÏÖÅÎÉÑ - M-e ÷ÐÅÒÅÄ, × ËÏÎÅà ÐÒÅÄÌÏÖÅÎÉÑ - ->> ðÏÐÒÏÂÕÊÔÅ ÓÅÊÞÁÓ ÎÁ ÐÒÁËÔÉËÅ ÐÒÉÍÅÎÉÔØ ÎÅÓËÏÌØËÏ ÒÁÚ ×ÓÅ ÜÔÉ ËÏÍÁÎÄÙ. - üÔÏ ÎÁÉÂÏÌÅÅ ÉÓÐÏÌØÚÕÅÍÙÅ ËÏÍÁÎÄÙ. - -ä×Å ÄÒÕÇÉÅ ×ÁÖÎÙÅ ËÏÍÁÎÄÙ Ä×ÉÖÅÎÉÑ ËÕÒÓÏÒÁ M-< (META Less-then -{íÅÎØÛÅ-þÅÍ}), ËÏÔÏÒÁÑ ÐÅÒÅÍÅÝÁÅÔ ËÕÒÓÏÒ × ÎÁÞÁÌÏ ÔÅËÓÔÁ, É M-> (META -Greater-than {âÏÌØÛÅ-þÅÍ}), ËÏÔÏÒÁÑ ÐÅÒÅÍÅÝÁÅÔ ËÕÒÓÏÒ × ËÏÎÅà ÔÅËÓÔÁ. - -îÁ ÂÏÌØÛÉÎÓÔ×Å ÔÅÒÍÉÎÁÌÏ× ÚÎÁË "<" ÎÁÈÏÄÉÔÓÑ ÎÁÄ ÚÎÁËÏÍ ÔÏÞËÉ, É ÞÔÏÂÙ -ÎÁÂÒÁÔØ ÅÇÏ, ×Ù ÄÏÌÖÎÙ ÉÓÐÏÌØÚÏ×ÁÔØ ËÌÁ×ÉÛÕ Shift. îÁ ÜÔÉÈ ÔÅÒÍÉÎÁÌÁÈ ×Ù ÔÁË -ÖÅ ÄÏÌÖÎÙ ÉÓÐÏÌØÚÏ×ÁÔØ Shift, ÞÔÏÂÙ ÎÁÂÒÁÔØ M-< (ÂÅÚ ÕÄÅÒÖÁÎÉÑ ËÌÁ×ÉÛÉ Shift -×Ù ÎÁÂÅÒÅÔÅ M-ÔÏÞËÁ). - ->> óÅÊÞÁÓ ÐÏÐÒÏÂÕÊÔÅ M-<, ÞÔÏÂÙ ÐÅÒÅÍÅÓÔÉÔØÓÑ × ÎÁÞÁÌÏ ÕÞÅÂÎÉËÁ. ðÏÔÏÍ - ÉÓÐÏÌØÚÕÊÔÅ C-v, ÞÔÏÂÙ ×ÅÒÎÕÔØÓÑ ÎÁÚÁÄ. - ->> óÅÊÞÁÓ ÐÏÐÒÏÂÕÊÔÅ M->, ÞÔÏÂÙ ÐÅÒÅÍÅÓÔÉÔØÓÑ Ë ËÏÎÃÕ ÕÞÅÂÎÉËÁ. éÓÐÏÌØÚÕÊÔÅ - M-v, ÞÔÏÂÙ ×ÅÒÎÕÔØÓÑ ÓÎÏ×Á. - -ëÕÒÓÏÒ ÍÏÖÎÏ ÐÅÒÅÍÅÝÁÔØ ËÌÁ×ÉÛÁÍÉ ÕÐÒÁ×ÌÅÎÉÑ ËÕÒÓÏÒÁ (ÓÔÒÅÌËÁÍÉ), ÅÓÌÉ ×ÁÛ -ÔÅÒÍÉÎÁÌ ÏÂÏÒÕÄÏ×ÁÎ ÉÍÉ. íÙ ÒÅËÏÍÅÎÄÕÅÍ ×ÙÕÞÉÔØ C-b, C-f, C-n É C-p ÐÏ ÔÒÅÍ -ÐÒÉÞÉÎÁÍ. ÷Ï-ÐÅÒ×ÙÈ, ÏÎÉ ÒÁÂÏÔÁÀÔ ÎÁ ÌÀÂÙÈ ÔÅÒÍÉÎÁÌÁÈ. ÷Ï-×ÔÏÒÙÈ, ÏÄÎÁÖÄÙ -ÐÏÌÕÞÉ× ÐÒÁËÔÉËÕ ÉÓÐÏÌØÚÏ×ÁÎÉÑ Emacs, ×Ù ÐÏÊÍÅÔÅ, ÞÔÏ ÉÓÐÏÌØÚÏ×ÁÔØ -CTRL-ÓÉÍ×ÏÌÙ ÕÄÏÂÎÅÅ É ÂÙÓÔÒÅÅ, ÞÅÍ ËÎÏÐËÉ ÓÏ ÓÔÒÅÌÏÞËÁÍÉ (ÐÏÔÏÍÕ ÞÔÏ ×Ù ÎÅ -ÕÂÉÒÁÅÔÅ ÒÕËÉ Ó ÏÂÙÞÎÏÇÏ ÉÈ ÐÏÌÏÖÅÎÉÑ ÐÒÉ ÐÅÞÁÔÉ). ÷-ÔÒÅÔØÉÈ, ËÁË ÔÏÌØËÏ ×Ù -ÐÒÉ×ÙËÎÉÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ CTRL-ÓÉÍ×ÏÌÙ, ×Ù ÓÍÏÖÅÔÅ ÔÁË ÖÅ ÌÅÇËÏ ×ÙÕÞÉÔØ É -ÉÓÐÏÌØÚÏ×ÁÔØ ÄÒÕÇÉÅ, ÒÁÓÛÉÒÅÎÎÙÅ ËÏÍÁÎÄÙ ÐÅÒÅÍÅÝÅÎÉÑ ËÕÒÓÏÒÁ. - -âÏÌØÛÉÎÓÔ×Ï ËÏÍÁÎÄ Emacs ÄÏÐÕÓËÁÀÔ ÚÁÄÁÎÉÅ ÃÉÆÒÏ×ÏÇÏ ÁÒÇÕÍÅÎÔÁ; ÄÌÑ -ÂÏÌØÛÉÎÓÔ×Á ËÏÍÁÎÄ, ÜÔÏ ÓÌÕÖÉÔ ÓÞÅÔÞÉËÏÍ ÐÏ×ÔÏÒÅÎÉÊ. þÔÏÂÙ ÚÁÄÁÔØ ÓÞÅÔÞÉË -ÐÏ×ÔÏÒÅÎÉÊ ÄÌÑ ËÏÍÁÎÄÙ, ÎÁÖÍÉÔÅ C-u, ÐÏÔÏÍ ÞÉÓÌÏ ÐÏ×ÔÏÒÅÎÉÊ, É ÕËÁÖÉÔÅ -ËÏÍÁÎÄÕ. åÓÌÉ Õ ×ÁÓ ÅÓÔØ ËÌÁ×ÉÛÁ META (ÉÌÉ EDIT ÉÌÉ ALT), ÔÏ ÃÉÆÒÏ×ÏÊ -ÁÒÇÕÍÅÎÔ ÍÏÖÎÏ ÚÁÄÁÔØ ÄÒÕÇÉÍ ÓÐÏÓÏÂÏÍ: ÎÁÂÅÒÉÔÅ ÃÉÆÒÙ, ÕÄÅÒÖÉ×ÁÑ ËÌÁ×ÉÛÕ -META. íÙ ÒÅËÏÍÅÎÄÕÅÍ ÐÒÉ×ÙËÎÕÔØ Ë ÉÓÐÏÌØÚÏ×ÁÎÉÀ C-u, ÐÏÓËÏÌØËÕ ÜÔÏ ÓÏÞÅÔÁÎÉÅ -ËÌÁ×ÉÛ ÒÁÂÏÔÁÅÔ ÎÁ ÌÀÂÏÍ ÔÅÒÍÉÎÁÌÅ. þÉÓÌÏ×ÏÊ ÁÒÇÕÍÅÎÔ ÔÁËÖÅ ÎÁÚÙ×ÁÅÔÓÑ -"ÐÒÅÆÉËÓÎÙÍ ÁÒÇÕÍÅÎÔÏÍ", ÐÏÓËÏÌØËÕ ×Ù ÚÁÄÁÅÔÅ ÁÒÇÕÍÅÎÔ ÄÏ ×ÙÐÏÌÎÅÎÉÑ -ËÏÍÁÎÄÙ. - -îÁÐÒÉÍÅÒ, C-u 8 C-f ÐÅÒÅÍÅÓÔÉÔ ËÕÒÓÏÒ ÎÁ ×ÏÓÅÍØ ÓÉÍ×ÏÌÏ× ×ÐÅÒÅÄ. - ->> ðÏÐÒÏÂÕÊÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ C-n ÉÌÉ C-p Ó ÃÉÆÒÏ×ÙÍ ÁÒÇÕÍÅÎÔÏÍ, ÞÔÏÂÙ - ÐÅÒÅÍÅÓÔÉÔØ ËÕÒÓÏÒ ÎÁ ÓÔÒÏËÕ ÒÑÄÏÍ Ó ÜÔÏÊ ËÏÍÁÎÄÏÊ. - -íÎÏÇÉÅ ËÏÍÁÎÄÙ ÉÓÐÏÌØÚÕÀÔ ÞÉÓÌÏ×ÏÊ ÁÒÇÕÍÅÎÔ ËÁË ÓÞÅÔÞÉË ÐÏ×ÔÏÒÅÎÉÊ, ÎÏ -ÎÅËÏÔÏÒÙÅ ËÏÍÁÎÄÙ ÉÓÐÏÌØÚÕÀÔ ÅÇÏ ÄÒÕÇÉÍ ÓÐÏÓÏÂÏÍ. îÅËÏÔÏÒÙÅ ËÏÍÁÎÄÙ (ÎÏ ÎÉ -ÏÄÎÁ ÉÚ ÎÉÈ ÎÅ ÂÙÌÁ ÅÝÅ ÏÐÉÓÁÎÁ × ÄÁÎÎÏÍ ÔÅËÓÔÅ) ÉÓÐÏÌØÚÕÀÔ ÅÇÏ ËÁË ÆÌÁÇ -- -ÎÁÌÉÞÉÅ ÐÒÅÆÉËÓÎÏÇÏ ÁÒÇÕÍÅÎÔÁ ×ÎÅ ÚÁ×ÉÓÉÍÏÓÔÉ ÏÔ ÅÇÏ ÚÎÁÞÅÎÉÑ, ÉÚÍÅÎÑÅÔ -ÐÏ×ÅÄÅÎÉÅ ËÏÍÁÎÄÙ. - -äÒÕÇÉÍ ×ÉÄÏÍ ÉÓËÌÀÞÅÎÉÊ Ñ×ÌÑÀÔÓÑ ËÌÀÞÉ C-v É M-v. ðÒÉ ÐÏÌÕÞÅÎÉÉ ÞÉÓÌÏ×ÏÇÏ -ÁÒÇÕÍÅÎÔÁ, ÏÎÉ ÐÒÏËÒÕÞÉ×ÁÀÔ ÜËÒÁÎ ××ÅÒÈ ÉÌÉ ×ÎÉÚ ÎÁ ÕËÁÚÁÎÎÏÅ ÞÉÓÌÏ ÓÔÒÏË, -×ÍÅÓÔÏ ÔÁËÏÇÏ ÖÅ ÞÉÓÌÁ ÜËÒÁÎÏ×. îÁÐÒÉÍÅÒ, C-u 8 C-v ÐÒÏËÒÕÔÉÔ ÜËÒÁÎ ÎÁ 8 -ÓÔÒÏË. - ->> óÅÊÞÁÓ ÐÏÐÒÏÂÕÊÔÅ ËÏÍÂÉÎÁÃÉÀ C-u 8 C-v. - -üÔÁ ËÏÍÁÎÄÁ ÄÏÌÖÎÁ ÐÒÏËÒÕÔÉÔØ ÜËÒÁÎ ÎÁ 8 ÓÔÒÏË ××ÅÒÈ. åÓÌÉ ×Ù ÈÏÔÉÔÅ -ÐÒÏËÒÕÔÉÔØ ÅÇÏ ×ÎÉÚ, ÍÏÖÅÔÅ ÚÁÄÁÔØ ÁÒÇÕÍÅÎÔ ÄÌÑ M-v. - -åÓÌÉ ×Ù ÉÓÐÏÌØÚÕÅÔÅ ÏËÏÎÎÕÀ ÓÉÓÔÅÍÕ, ÔÁËÕÀ ËÁË X11 ÉÌÉ MS-Windows, ÔÏ ÄÏÌÖÎÁ -ÂÙÔØ ×ÉÄÎÁ ÐÒÑÍÏÕÇÏÌØÎÁÑ ÏÂÌÁÓÔØ, ÉÍÅÎÕÅÍÁÑ ÐÏÌÏÓÏÊ ÐÒÏËÒÕÔËÉ, ËÏÔÏÒÁÑ ×ÉÄÎÁ -Ó ÌÅ×ÏÊ ÓÔÏÒÏÎÙ ÏËÎÁ Emacs. ÷Ù ÍÏÖÅÔÅ ÐÒÏËÒÕÞÉ×ÁÔØ ÔÅËÓÔ, ÉÓÐÏÌØÚÕÑ -ÍÁÎÉÐÕÌÑÔÏÒ ÍÙÛØ. - ->> ðÏÐÒÏÂÕÊÔÅ ÐÅÒÅÍÅÝÁÔØ ÍÙÛØ ÐÒÉ ÎÁÖÁÔÏÊ ÓÒÅÄÎÅÊ ËÎÏÐËÅ ÍÙÛÉ. ÷Ù Õ×ÉÄÉÔÅ - ËÁË ÔÅËÓÔ ÐÒÏËÒÕÞÉ×ÁÅÔÓÑ ××ÅÒÈ É ×ÎÉÚ. - - -* õðòá÷ìåîéå ëõòóïòïí îá X-ôåòíéîáìå ------------------------------------- - -åÓÌÉ Õ ×ÁÓ X-ÔÅÒÍÉÎÁÌ, ÔÏ ÄÌÑ ÕÐÒÁ×ÌÅÎÉÑ ËÕÒÓÏÒÏÍ, ×ÁÍ ×ÅÒÏÑÔÎÏ ÐÏËÁÖÅÔÓÑ -ÂÏÌÅÅ ÌÅÇËÉÍ ÉÓÐÏÌØÚÏ×ÁÎÉÅ ËÌÁ×ÉÛ ËÕÒÓÏÒÁ ÎÁ ÃÉÆÒÏ×ÏÊ ËÌÁ×ÉÁÔÕÒÅ -(ÓÐÒÁ×Á). óÔÒÅÌËÉ ×ÌÅ×Ï, ×ÐÒÁ×Ï, ××ÅÒÈ É ×ÎÉÚ ÐÅÒÅÄ×ÉÇÁÀÔ ËÕÒÓÏÒ × -ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÅÍ ÎÁÐÒÁ×ÌÅÎÉÉ -- ÏÎÉ ÒÁÂÏÔÁÀÔ ÔÏÞÎÏ ÔÁËÖÅ ËÁË C-b, C-f, C-p É -C-n, ÎÏ ÌÅÇÞÅ × ÎÁÂÏÒÅ É ÚÁÐÏÍÉÎÁÎÉÉ. ÷Ù ÔÁË ÖÅ ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ -ÓÏÞÅÔÁÎÉÑ C-left É C-right ÄÌÑ ÐÅÒÅÄ×ÉÖÅÎÉÑ ÐÏ ÓÌÏ×ÁÍ, É C-up É C-down ÄÌÑ -ÐÅÒÅÄ×ÉÖÅÎÉÑ ÐÏ ÂÌÏËÁÍ (Ô.Å. ÐÁÒÁÇÒÁÆÁÍ, ÅÓÌÉ ×Ù ÒÅÄÁËÔÉÒÕÅÔÅ ÔÅËÓÔ). åÓÌÉ -Õ ×ÁÓ ÅÓÔØ ËÎÏÐËÉ ÐÏÍÅÞÅÎÎÙÅ HOME (ÉÌÉ BEGIN) É/ÉÌÉ END, ÔÏ ÏÎÉ ÂÕÄÕÔ -ÐÅÒÅÍÅÝÁÔØ ËÕÒÓÏÒ × ÎÁÞÁÌÏ É ËÏÎÅà ÓÔÒÏËÉ, Á C-home É C-end ÂÕÄÕÔ ÐÅÒÅÍÅÝÁÔØ -× ÎÁÞÁÌÏ É ËÏÎÅà ÆÁÊÌÁ. åÓÌÉ ÎÁ ×ÁÛÅÊ ËÌÁ×ÉÁÔÕÒÅ ÅÓÔØ ËÎÏÐËÉ PgUp É PgDn, -ÔÏ ×Ù ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ ÉÈ ÄÌÑ ÐÅÒÅÍÅÝÅÎÉÑ ××ÅÒÈ É ×ÎÉÚ ÐÏÓÔÒÁÎÉÞÎÏ, -ÁÎÁÌÏÇÉÞÎÏ ÉÓÐÏÌØÚÏ×ÁÎÉÀ M-v É C-v. - -÷ÓÅ ÜÔÉ ËÏÍÁÎÄÙ ÍÏÇÕÔ ÉÓÐÏÌØÚÏ×ÁÔØ ÃÉÆÒÏ×ÏÊ ÁÒÇÕÍÅÎÔ, ÔÁË, ËÁË Ï ÜÔÏÍ -ÒÁÓÓËÁÚÁÎÏ ×ÙÛÅ. ÷Ù ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ ÕÓËÏÒÅÎÎÙÊ ÓÐÏÓÏ ××ÏÄÁ ÜÔÏÇÏ -ÁÒÇÕÍÅÎÔÁ: ÐÒÏÓÔÏ ÎÁÖÍÉÔÅ CONTROL ÉÌÉ META É ÎÁÂÅÒÉÔÅ ÞÉÓÌÏ. îÁÐÒÉÍÅÒ, ÄÌÑ -ÐÅÒÅÍÅÝÅÎÉÑ ÎÁ 12 ÓÌÏ× ×ÐÒÁ×Ï, ÎÁÂÅÒÉÔÅ C-1 C-2 C-right. úÁÐÏÍÎÉÔÅ ÞÔÏ ÔÁË -ÏÞÅÎØ ÌÅÇËÏ ÎÁÂÉÒÁÔØ, ÐÏÔÏÍÕ ÞÔÏ ×Ù ÎÅ ÏÔÐÕÓËÁÅÔÅ ËÎÏÐËÕ CONTROL ÍÅÖÄÕ -ÎÁÖÁÔÉÑÍÉ. - - -* åóìé EMACS úá÷éó ------------------- - -åÓÌÉ Emacs ÐÅÒÅÓÔÁÌ ÒÅÁÇÉÒÏ×ÁÔØ ÎÁ ×ÁÛÉ ËÏÍÁÎÄÙ, ÔÏ ×Ù ÍÏÖÅÔÅ ÉÚÂÅÖÁÔØ ÜÔÏÇÏ -ÐÒÏÓÔÏ ÎÁÖÁ× C-g. ÷Ù ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ C-g, ÞÔÏÂÙ ÏÓÔÁÎÏ×ÉÔØ ×ÙÐÏÌÎÅÎÉÅ -ËÏÍÁÎÄ, ËÏÔÏÒÙÅ ÓÌÉÛËÏÍ ÄÏÌÇÏ ×ÙÐÏÌÎÑÀÔÓÑ. - -÷Ù ÔÁËÖÅ ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ C-g ÄÌÑ ÏÔÍÅÎÙ ÎÁÂÒÁÎÎÏÇÏ ÃÉÆÒÏ×ÏÇÏ ÁÒÇÕÍÅÎÔÁ -ÉÌÉ ËÏÍÁÎÄÙ, ËÏÔÏÒÁÑ ÎÁÞÁÌÁ ×ÙÐÏÌÎÑÔØÓÑ, ÎÏ ËÏÔÏÒÕÀ ×Ù ÎÅ ÈÏÔÉÔÅ ÚÁ×ÅÒÛÁÔØ. - ->> îÁÂÅÒÉÔÅ C-u 100 ÄÌÑ ÚÁÄÁÎÉÑ ÁÒÇÕÍÅÎÔÁ 100, ÐÏÔÏÍ ÎÁÖÍÉÔÅ C-g. ôÅÐÅÒØ - ÎÁÖÍÉÔÅ C-f. ëÕÒÓÏÒ ÄÏÌÖÅÎ ÐÅÒÅÍÅÓÔÉÔØÓÑ ×ÓÅÇÏ ÎÁ ÏÄÉÎ ÓÉÍ×ÏÌ, ÐÏÔÏÍÕ ÞÔÏ - ×Ù ÏÔÍÅÎÉÌÉ ÁÒÇÕÍÅÎÔ ÎÁÖÁÔÉÅÍ C-g. - -åÓÌÉ ×Ù ÎÁÖÁÌÉ ÐÏ ÏÛÉÂËÅ, ÔÏ ×Ù ÔÁË ÖÅ ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ C-g ÞÔÏÂÙ -ÉÚÂÅÖÁÔØ ×ÏÚÄÅÊÓÔ×ÉÑ ÄÁÎÎÏÊ ËÏÍÁÎÄÙ. - - -* úáðòåýåîîùå ëïíáîäù (DISABLED COMMANDS) ------------------------------------------ - -îÅËÏÔÏÒÙÅ ËÏÍÁÎÄÙ Emacs "ÚÁÐÒÅÝÅÎÙ", ÐÏÓËÏÌØËÕ ÎÁÞÉÎÁÀÝÉÅ ÐÏÌØÚÏ×ÁÔÅÌÉ ÍÏÇÕÔ -ÓÌÕÞÁÊÎÏ ÉÓÐÏÌØÚÏ×ÁÔØ ÉÈ ÄÌÑ ÓÏ×ÅÒÛÅÎÉÑ ÏÐÁÓÎÙÈ ÄÅÊÓÔ×ÉÊ. - -åÓÌÉ ×Ù ÎÁÂÒÁÌÉ ÏÄÎÕ ÉÚ ÚÁÐÒÅÝÅÎÎÙÈ ËÏÍÁÎÄ, ÔÏ Emacs ÐÏËÁÖÅÔ ÓÏÏÂÝÅÎÉÅ -ÇÏ×ÏÒÑÝÅÅ Ï ÔÏÍ, ËÁËÁÑ ËÏÍÁÎÄÁ ×ÙÚÙ×ÁÅÔÓÑ, É ÚÁÐÒÏÓÉÔ Õ ×ÁÓ, ÈÏÔÉÔÅ ÌÉ ×Ù -ÐÒÏÄÏÌÖÁÔØ ÒÁÂÏÔÕ É ×ÙÐÏÌÎÑÔØ ÄÁÎÎÕÀ ËÏÍÁÎÄÕ. - -åÓÌÉ ×Ù ÄÅÊÓÔ×ÉÔÅÌØÎÏ ÐÏÐÒÏÂÏ×ÁÔØ ×ÙÐÏÌÎÉÔØ ËÏÍÁÎÄÕ, ÔÏ ÎÁÖÍÉÔÅ ËÌÁ×ÉÛÕ - (ÐÒÏÂÅÌ) × ÏÔ×ÅÔ ÎÁ ÚÁÄÁÎÎÙÊ ×ÏÐÒÏÓ. ïÂÙÞÎÏ, ÅÓÌÉ ×Ù ÎÅ ÈÏÔÉÔÅ -×ÙÐÏÌÎÑÔØ ÚÁÐÒÅÝÅÎÎÕÀ ËÏÍÁÎÄÕ, ÔÏ ÏÔ×ÅÔØÔÅ ÎÁ ×ÏÐÒÏÓ ÎÁÖÁÔÉÅÍ ËÌÁ×ÉÛÉ "n". - ->> îÁÖÍÉÔÅ `C-x C-l' (×ÙËÌÀÞÅÎÎÁÑ ËÏÍÁÎÄÁ), Á ÐÏÔÏÍ ÏÔ×ÅÔØÔÅ "n" ÎÁ ÚÁÄÁÎÎÙÊ - ×ÏÐÒÏÓ. - - -* ïëîá ------- - -Emacs ÍÏÖÅÔ ÏÔÏÂÒÁÖÁÔØ ÉÎÆÏÒÍÁÃÉÀ × ÎÅÓËÏÌØËÉÈ ÏËÎÁÈ, ËÁÖÄÏÅ ÉÚ ËÏÔÏÒÙÈ -ÏÔÏÂÒÁÖÁÅÔ Ó×ÏÊ ÔÅËÓÔ. ðÏÚÖÅ ÍÙ ÏÂßÑÓÎÉÍ ËÁË ÒÁÂÏÔÁÔØ Ó ÎÅÓËÏÌØËÉÍÉ ÏËÎÁÍÉ. -ðÒÑÍÏ ÓÅÊÞÁÓ ÍÙ ÈÏÔÉÍ ÏÂßÑÓÎÉÔØ ×ÁÍ ËÁË ÉÚÂÁ×ÌÑÔØÓÑ ÏÔ ÌÉÛÎÉÈ ÏËÏÎ É -×ÅÒÎÕÔØÓÑ Ë ÒÅÄÁËÔÉÒÏ×ÁÎÉÀ × ÏÄÎÏÍ ÏËÎÅ. üÔÏ ÏÞÅÎØ ÐÒÏÓÔÏ ÓÄÅÌÁÔØ: - - C-x 1 ïÄÎÏ ÏËÎÏ. (ÚÁËÒÙÔØ ×ÓÅ ÄÒÕÇÉÅ ÏËÎÁ). - -üÔÏ CONTROL-x ÓÏ ÓÌÅÄÕÀÝÅÊ ÃÉÆÒÏÊ 1. C-x 1 ÒÁÚ×ÅÒÎÅÔ ÏËÎÏ, ËÏÔÏÒÏÅ ÓÏÄÅÒÖÉÔ -ËÕÒÓÏÒ, ÔÁË, ÞÔÏÂÙ ÏÎÏ ÚÁÎÑÌÏ ×ÅÓØ ÜËÒÁÎ. ðÒÉ ÜÔÏÍ ÂÕÄÕÔ ÕÄÁÌÅÎÙ ×ÓÅ -ÏÓÔÁÌØÎÙÅ ÏËÎÁ. - ->> ðÅÒÅÍÅÓÔÉÔÅ ËÕÒÓÏÒ ÎÁ ÜÔÕ ÓÔÒÏËÕ É ÎÁÖÍÉÔÅ C-u 0 C-l. - ->> îÁÂÅÒÉÔÅ CONTROL-h k CONTROL-f. - ðÏÓÍÏÔÒÉÔÅ, ËÁË ÔÅËÕÝÅÅ ÏËÎÏ ÓÏÖÍÅÔÓÑ, ËÏÇÄÁ ÎÏ×ÏÅ ÐÏÑ×ÉÔÓÑ É ÏÔÏÂÒÁÚÉÔ - ÄÏËÕÍÅÎÔÁÃÉÀ ÎÁ ÓÏÞÅÔÁÎÉÅ ËÌÁ×ÉÛ CONTROL-f. - ->> îÁÂÅÒÉÔÅ C-x 1 É ÐÏÓÍÏÔÒÉÔÅ, ËÁË ÏËÎÏ Ó ÄÏËÕÍÅÎÔÁÃÉÅÊ ÉÓÞÅÚÎÅÔ. - -üÔÁ ËÏÍÁÎÄÁ ÏÔÌÉÞÁÅÔÓÑ ÏÔ ÄÒÕÇÉÈ ËÏÍÁÎÄ, ËÏÔÏÒÙÅ ×Ù ÉÚÕÞÉÌÉ, ÔÅÍ, ÞÔÏ ÏÎÁ -ÓÏÓÔÏÉÔ ÉÚ Ä×ÕÈ ÓÉÍ×ÏÌÏ×. ïÎÁ ÎÁÞÉÎÁÅÔÓÑ ÓÏ ÚÎÁËÁ CONTROL-x. åÓÔØ ÃÅÌÙÊ -ÎÁÂÏÒ ËÏÍÁÎÄ, ËÏÔÏÒÙÅ ÎÁÞÉÎÁÀÔÓÑ Ó CONTROL-x; ÍÎÏÇÉÅ ÉÚ ÎÉÈ ÒÁÂÏÔÁÀÔ Ó -ÏËÎÁÍÉ, ÂÕÆÅÒÁÍÉ, ÆÁÊÌÁÍÉ É ÁÎÁÌÏÇÉÞÎÙÍÉ ×ÅÝÁÍÉ. üÔÉ ËÏÍÁÎÄÙ ÓÏÓÔÏÑÔ ÉÚ -Ä×ÕÈ, ÔÒÅÈ ÉÌÉ ÞÅÔÙÒÅÈ ÚÎÁËÏ×. - - -* ÷óôá÷ëá é õäáìåîéå --------------------- - -åÓÌÉ ×Ù ÈÏÔÉÔÅ ×ÓÔÁ×ÉÔØ ÔÅËÓÔ, ÔÏ ÐÒÏÓÔÏ ÎÁÂÉÒÁÊÔÅ ÅÇÏ. óÉÍ×ÏÌÙ, ËÏÔÏÒÙÅ ×Ù -ÍÏÖÅÔÅ ×ÉÄÅÔØ, ÔÁËÉÅ ËÁË A, 7, *, É ÐÒ. ÐÏÎÉÍÁÀÔÓÑ Emacs'ÏÍ ËÁË ÔÅËÓÔ É -×ÓÔÁ×ÌÑÀÔÓÑ ÎÅÍÅÄÌÅÎÎÏ. îÁÖÍÉÔÅ (ËÎÏÐËÁ ÐÅÒÅ×ÏÄÁ ËÁÒÅÔËÉ) ÞÔÏÂÙ -×ÓÔÁ×ÉÔØ ÓÉÍ×ÏÌ ÎÏ×ÏÊ ÓÔÒÏËÉ. - -÷Ù ÍÏÖÅÔÅ ÕÄÁÌÉÔØ ÎÁÂÒÁÎÎÙÊ ÓÉÍ×ÏÌ ÎÁÖÉÍÁÑ ËÌÁ×ÉÛÕ . -- -ÜÔÏ ËÌÁ×ÉÛÁ ÎÁ ËÌÁ×ÉÁÔÕÒÅ, ËÏÔÏÒÕÀ ×Ù ÉÓÐÏÌØÚÕÅÔÅ É ×ÎÅ Emacs ÄÌÑ ÕÄÁÌÅÎÉÑ -ÐÏÓÌÅÄÎÅÇÏ ÎÁÂÒÁÎÎÏÇÏ ÓÉÍ×ÏÌÁ. ïÂÙÞÎÏ, ÜÔÏ ÂÏÌØÛÁÑ ËÌÁ×ÉÛÁ, ÒÁÓÐÏÌÏÖÅÎÎÁÑ -ÎÁ ÎÅÓËÏÌØËÏ ÓÔÒÏË ×ÙÛÅ ËÌÁ×ÉÛÉ ; ÏÂÙÞÎÏ ÏÎÁ ÐÏÍÅÞÅÎÁ ËÁË "Delete", -"Del" ÉÌÉ "Backspace". - -åÓÌÉ ÂÏÌØÛÁÑ ËÌÁ×ÉÛÁ ÐÏÍÅÞÅÎÁ ËÁË "Backspace", ÔÏ ÜÔÏ ÔÏ, ÞÔÏ ×ÁÍ ÎÕÖÎÏ -ÉÓÐÏÌØÚÏ×ÁÔØ ÔÏÇÄÁ, ËÏÇÄÁ ×Ù ÂÕÄÅÔÅ ÞÉÔÁÔØ ÐÒÏ . õ ×ÁÓ ÔÁËÖÅ ÍÏÖÅÔ -ÂÙÔØ ËÌÁ×ÉÛÁ, ÐÏÍÅÞÅÎÎÁÑ ËÁË "Delete", ÎÏ ÏÎÁ ÉÍÅÅÔ ÄÒÕÇÕÀ ÆÕÎËÃÉÀ, ÏÔÌÉÞÎÕÀ -ÏÔ . - -÷ ÏÓÎÏ×ÎÏÍ, ÕÄÁÌÑÅÔ ÓÉÍ×ÏÌ ÎÅÐÏÓÒÅÄÓÔ×ÅÎÎÏ ÐÅÒÅÄ ÔÅËÕÝÅÊ ÐÏÚÉÃÉÅÊ -ËÕÒÓÏÒÁ. - ->> ðÏÐÒÏÂÕÊÔÅ ×ÙÐÏÌÎÉÔØ ÜÔÏ ÓÅÊÞÁÓ -- ÎÁÂÅÒÉÔÅ ÎÅÓËÏÌØËÏ ÓÉÍ×ÏÌÏ×, Á ÚÁÔÅÍ - ÕÄÁÌÉÔÅ ÉÈ ÎÁÖÉÍÁÑ . îÅ ×ÏÌÎÕÊÔÅÓØ Ï ÉÚÍÅÎÅÎÉÑÈ ÜÔÏÇÏ ÆÁÊÌÁ -- - ×Ù ÎÅ ÉÚÍÅÎÑÅÔÅ ÇÌÁ×ÎÙÊ ÕÞÅÂÎÉË; ÜÔÏ ×ÁÛÁ ÌÉÞÎÁÑ ËÏÐÉÑ ÕÞÅÂÎÉËÁ. - -ëÏÇÄÁ ÓÔÒÏËÁ ÔÅËÓÔÁ ÓÔÁÎÏ×ÉÔÓÑ ÓÌÉÛËÏÍ ÂÏÌØÛÏÊ ÄÌÑ ÓÔÒÏËÉ ÜËÒÁÎÁ, ÔÏ ÏÎÁ -"ÐÒÏÄÏÌÖÁÅÔÓÑ" ÎÁ ÓÌÅÄÕÀÝÅÊ ÓÔÒÏËÅ ÜËÒÁÎÁ. óÉÍ×ÏÌ "ÏÂÒÁÔÎÙÊ ÓÌÜÛ" ("\") (ÉÌÉ -ÅÓÌÉ ×Ù ÉÓÐÏÌØÚÕÅÔÅ ÏËÏÎÎÕÀ ÓÉÓÔÅÍÕ, ÔÏ ÜÔÏ ÂÕÄÅÔ ÚÎÁÞÏË × ×ÉÄÅ ÍÁÌÅÎØËÏÊ -ÉÚÏÇÎÕÔÏÊ ÓÔÒÅÌËÉ) Ó ÐÒÁ×ÏÊ ÇÒÁÎÉÃÙ ÐÏËÁÚÙ×ÁÅÔ, ÞÔÏ ÓÔÒÏËÁ ÂÕÄÅÔ -ÐÒÏÄÏÌÖÁÅÔÓÑ Ó ÐÒÅÄÙÄÕÝÅÊ ÓÔÒÏËÉ. - ->> ÷×ÏÄÉÔÅ ÔÅËÓÔ, ÐÏËÁ ÏÎ ÎÅ ÄÏÓÔÉÇÎÅÔ ÐÒÁ×ÏÊ ÇÒÁÎÉÃÙ, É ÐÒÏÄÏÌÖÁÊÔÅ ×ÓÔÁ×ËÕ - ÓÉÍ×ÏÌÏ×. ÷Ù Õ×ÉÄÉÔÅ, ËÁË ÐÏÑ×ÉÔÓÑ ÓÉÍ×ÏÌ ÐÒÏÄÏÌÖÅÎÉÑ ÓÔÒÏËÉ. - ->> éÓÐÏÌØÚÕÊÔÅ ÄÌÑ ÕÄÁÌÅÎÉÑ ÔÅËÓÔÁ, ÄÏ ÔÅÈ ÐÏÒ, ÐÏËÁ ÓÔÒÏËÁ ÎÅ - ÐÏÍÅÓÔÉÔÓÑ × ÜËÒÁÎ ÓÎÏ×Á. óÉÍ×ÏÌ ÐÒÏÄÏÌÖÅÎÉÑ ÓÔÒÏËÉ ÉÓÞÅÚÎÅÔ Ó ÜËÒÁÎÁ. - -óÉÍ×ÏÌ ÎÏ×ÏÊ ÓÔÒÏËÉ ÍÏÖÎÏ ÕÄÁÌÑÔØ ÔÏÞÎÏ ÔÁË ÖÅ, ËÁË É ÌÀÂÏÊ ÄÒÕÇÏÊ ÓÉÍ×ÏÌ. -õÄÁÌÅÎÉÅ ÓÉÍ×ÏÌÁ ÎÏ×ÏÊ ÓÔÒÏËÉ ÍÅÖÄÕ Ä×ÕÍÑ ÓÔÒÏËÁÍÉ ÐÒÉ×ÅÄÅÔ Ë ÉÈ ÓËÌÅÊËÅ × -ÏÄÎÕ. åÓÌÉ ÐÏÌÕÞÅÎÎÁÑ ÓÔÒÏËÁ ÂÕÄÅÔ ÓÌÉÛËÏÍ ÄÌÉÎÎÏÊ, ÞÔÏÂÙ ×ÍÅÓÔÉÔØÓÑ × -ÜËÒÁÎ, ÔÏ ÏÎÁ ÂÕÄÅÔ ÏÔÏÂÒÁÖÅÎÁ ËÁË ÓÔÒÏËÁ Ó ÐÒÏÄÏÌÖÅÎÉÅÍ, ËÁË ÜÔÏ ÂÙÌÏ -ÏÐÉÓÁÎÏ ×ÙÛÅ. - ->> ðÅÒÅÍÅÓÔÉÔÅ ËÕÒÓÏÒ × ÎÁÞÁÌÏ ÓÔÒÏËÉ É ÎÁÖÍÉÔÅ . üÔÏ ÓÏÅÄÉÎÉÔ - ÔÅËÕÝÕÀ ÓÔÒÏËÕ Ó ÐÒÅÄÙÄÕÝÅÊ. - ->> îÁÖÍÉÔÅ ÄÌÑ ×ÓÔÁ×ËÉ ÎÏ×ÏÇÏ ÓÉÍ×ÏÌÁ ÓÔÒÏËÉ, ×ÍÅÓÔÏ ÕÄÁÌÅÎÎÏÇÏ - ×ÁÍÉ. - -ðÏÍÎÉÔÅ, ÞÔÏ ÍÎÏÇÉÅ ËÏÍÁÎÄÙ Emacs ÍÏÇÕÔ ÐÏÌÕÞÁÔØ ÓÞÅÔÞÉË ÐÏ×ÔÏÒÅÎÉÑ; ÐÒÏÓÔÙÅ -ÓÉÍ×ÏÌÙ ÎÅ Ñ×ÌÑÀÔÓÑ ÉÓËÌÀÞÅÎÉÅÍ. ÷Ù ÍÏÖÅÔÅ ×ÓÔÁ×ÌÑÔØ ÐÏ ÎÅÓËÏÌØËÏ ÓÉÍ×ÏÌÏ×, -ÉÓÐÏÌØÚÕÑ ÓÞÅÔÞÉËÉ ÐÏ×ÔÏÒÅÎÉÊ. - ->> ðÏÐÒÏÂÕÊÔÅ ÐÒÏ×ÅÒÉÔØ ÜÔÏ -- ÎÁÂÅÒÉÔÅ C-u 8 * ÄÌÑ ×ÓÔÁ×ËÉ ********. - -ôÅÐÅÒØ ×Ù ÎÁÕÞÉÌÉÓØ ÏÓÎÏ×ÁÍ ÎÁÂÏÒÁ ÔÅËÓÔÁ × Emacs É ÉÓÐÒÁ×ÌÅÎÉÑ ÏÛÉÂÏË. ÷Ù -ÔÁËÖÅ ÍÏÖÅÔÅ ÕÄÁÌÑÔØ ÓÌÏ×Á É ÓÔÒÏËÉ. úÄÅÓØ ÐÒÉ×ÅÄÅÎ ÓÐÉÓÏË ÏÐÅÒÁÃÉÊ -ÕÄÁÌÅÎÉÑ: - - ÕÄÁÌÉÔØ ÓÉÍ×ÏÌ ÐÅÒÅÄ ËÕÒÓÏÒÏÍ - C-d ÕÄÁÌÉÔØ ÓÉÍ×ÏÌ ÓÌÅÄÕÀÝÉÊ ÚÁ (ÎÁÄ) ËÕÒÓÏÒÏÍ - - M- õÂÉÔØ ÓÔÒÏËÕ ÎÅÐÏÓÒÅÄÓÔ×ÅÎÎÏ ÐÅÒÅÄ ËÕÒÓÏÒÏÍ - M-d õÂÉÔØ ÓÌÏ×Ï ÓÌÅÄÕÀÝÅÅ ÚÁ ËÕÒÓÏÒÏÍ - - C-k õÂÉÔØ ×ÓÅ ÏÔ ËÕÒÓÏÒÁ ÄÏ ËÏÎÃÁ ÓÔÒÏËÉ - M-k õÂÉÔØ ×ÓÅ ÄÏ ËÏÎÃÁ ÐÒÅÄÌÏÖÅÎÉÑ - -úÁÍÅÔØÔÅ, ÞÔÏ É C-d, ×ÍÅÓÔÅ Ó M- É M-d ÒÁÓÛÉÒÑÀÔ -ÐÁÒÁÌÌÅÌØ, ÎÁÞÁÔÕÀ C-f É M-f (ÄÁ, -- ÜÔÏ ÎÅ ÎÁÓÔÏÑÝÉÊ ÕÐÒÁ×ÌÑÀÝÉÊ -ÓÉÍ×ÏÌ, ÎÏ ÎÅ ÎÕÖÎÏ Ï ÜÔÏÍ ×ÏÌÎÏ×ÁÔØÓÑ). C-k É M-k, ËÁË É C-e É M-e, -ÐÒÏ×ÏÄÑÔ ÐÁÒÁÌÌÅÌØ ÍÅÖÄÕ ÓÔÒÏËÁÍÉ É ÐÒÅÄÌÏÖÅÎÉÑÍÉ. - -÷Ù ÍÏÖÅÔÅ ÕÄÁÌÉÔØ ÌÀÂÕÀ ÞÁÓÔØ ÂÕÆÅÒÁ ÏÄÎÉÍ ÍÅÔÏÄÏÍ. ðÅÒÅÍÅÓÔÉÔÅÓØ ÎÁ ÏÄÉÎ -ÉÚ ËÏÎÃÏ× ×ÙÂÒÁÎÎÏÊ ÏÂÌÁÓÔÉ É ÎÁÖÍÉÔÅ C-@ ÉÌÉ C- (ÏÄÎÏ ÉÚ ÜÔÉÈ -ÓÏÞÅÔÁÎÉÊ). úÄÅÓØ ÏÂÏÚÎÁÞÁÅÔ ËÌÁ×ÉÛÕ ÐÒÏÂÅÌÁ. ðÅÒÅÍÅÓÔÉÔÅÓØ ÎÁ ÄÒÕÇÏÊ -ËÏÎÅà ÏÂÌÁÓÔÉ É ÎÁÖÍÉÔÅ C-w. üÔÁ ÏÐÅÒÁÃÉÑ ÕÄÁÌÉÔ ×ÅÓØ ÔÅËÓÔ ÍÅÖÄÕ Ä×ÕÍÑ -ÕËÁÚÁÎÎÙÍÉ ÐÏÚÉÃÉÑÍÉ. - ->> ðÅÒÅÍÅÓÔÉÔÅ ËÕÒÓÏÒ Ë ÂÕË×Å ÷ × ÎÁÞÁÌÅ ÐÒÅÄÙÄÕÝÅÇÏ ÐÁÒÁÇÒÁÆÁ. ->> îÁÂÅÒÉÔÅ C-. Emacs ÄÏÌÖÅÎ ÏÔÏÂÒÁÚÉÔØ × ÎÉÖÎÅÊ ÞÁÓÔÉ ÜËÒÁÎÁ ÓÏÏÂÝÅÎÉÅ - "Mark set". ->> ðÅÒÅÍÅÓÔÉÔÅ ËÕÒÓÏÒ Ë ÂÕË×Å Ï × ÓÌÏ×Å "ËÏÎÃÏ×", ÎÁ ×ÔÏÒÏÊ ÓÔÒÏËÅ - ÐÁÒÁÇÒÁÆÁ. ->> îÁÂÅÒÉÔÅ C-w. üÔÏ ÕÄÁÌÉÔ ÔÅËÓÔ ÎÁÞÉÎÁÑ Ó ÂÕË×Ù ÷, É ÏËÁÎÞÉ×ÁÀÝÕÀÓÑ ÐÅÒÅÄ - ÂÕË×ÏÊ Ï. - -ïÔÌÉÞÉÅ ÍÅÖÄÕ "ÕÂÉÔØ (killing)" É "ÕÄÁÌÉÔØ (deleting)" ÚÁËÌÀÞÁÅÔÓÑ × ÔÏÍ, -ÞÔÏ "ÕÂÉÔÙÊ" ÔÅËÓÔ ÍÏÖÅÔ ÂÙÔØ ÚÁÎÏ×Ï ×ÓÔÁ×ÌÅÎ, × ÔÏ ×ÒÅÍÑ ËÁË "ÕÄÁÌÅÎÎÙÅ" -ÞÁÓÔÉ ÎÅ ÍÏÇÕÔ ÂÙÔØ ×ÓÔÁ×ÌÅÎÙ. ÷ÓÔÁ×ËÁ "ÕÂÉÔÏÇÏ" ÔÅËÓÔÁ ÎÁÚÙ×ÁÅÔÓÑ -"×ÏÓÓÔÁÎÏ×ÌÅÎÉÅ (yanking)". ÷ ÏÂÝÅÍ, ËÏÍÁÎÄÙ, ËÏÔÏÒÙÅ ÍÏÇÕÔ ÕÂÉÒÁÔØ ÂÏÌØÛÉÅ -ÞÁÓÔÉ ÔÅËÓÔÁ, ÕÂÉ×ÁÀÔ ÜÔÏÔ ÔÅËÓÔ (ÏÎÉ ÎÁÓÔÒÁÉ×ÁÀÔÓÑ ÔÁË, ÞÔÏ ×Ù ÍÏÖÅÔÅ -×ÏÓÓÔÁÎÏ×ÉÔØ ÔÅËÓÔ), × ÔÏ ×ÒÅÍÑ ËÁË ËÏÍÁÎÄÙ, ËÏÔÏÒÙÅ ÕÂÉÒÁÀÔ ÔÏÌØËÏ ÏÄÉÎ -ÓÉÍ×ÏÌ, ÉÌÉ ÕÄÁÌÑÀÔ ÔÏÌØËÏ ÐÕÓÔÙÅ ÓÔÒÏËÉ É ÐÒÏÂÅÌØÎÙÅ ÓÉÍ×ÏÌÙ, ×ÙÐÏÌÎÑÀÔ -ÏÐÅÒÁÃÉÀ ÕÄÁÌÅÎÉÑ (ÔÁË ÞÔÏ ×Ù ÎÅ ÍÏÖÅÔÅ ×ÏÓÓÔÁÎÏ×ÉÔØ ÔÅËÓÔ). - ->> ðÅÒÅÍÅÓÔÉÔÅ ËÕÒÓÏÒ ÎÁ ÎÁÞÁÌÏ ÎÅ ÐÕÓÔÏÊ ÓÔÒÏËÉ. ôÅÐÅÒØ ÎÁÖÍÉÔÅ C-k, ÞÔÏÂÙ - ÕÂÉÔØ ÔÅËÓÔ × ÜÔÏÊ ÓÔÒÏËÅ. - ->> îÁÖÍÉÔÅ C-k ÅÝÅ ÒÁÚ. ÷Ù ×ÉÄÉÔÅ, ÞÔÏ ÜÔÏ ÄÅÊÓÔ×ÉÅ ÕÂØÅÔ ÓÉÍ×ÏÌ ÎÏ×ÏÊ - ÓÔÒÏËÉ, ËÏÔÏÒÙÊ ÓÌÅÄÕÅÔ ÚÁ ÜÔÏÊ ÓÔÒÏËÏÊ. - -úÁÍÅÔØÔÅ, ÞÔÏ ÐÅÒ×ÏÅ ×ÙÐÏÌÎÅÎÉÅ C-k ÕÂÉ×ÁÅÔ ÓÏÄÅÒÖÉÍÏÅ ÓÔÒÏËÉ, Á ×ÔÏÒÏÊ -×ÙÚÏ× C-k ÕÂÉ×ÁÅÔ ÓÁÍÕ ÓÔÒÏËÕ É ÐÏÄÎÉÍÁÅÔ ÄÒÕÇÉÅ ÓÔÒÏËÉ ××ÅÒÈ. C-k -ÏÂÒÁÂÁÔÙ×ÁÅÔ ÞÉÓÌÏ×ÏÊ ÁÒÇÕÍÅÎÔ ÓÐÅÃÉÁÌØÎÙÍ ÏÂÒÁÚÏÍ -- ÕÂÉ×ÁÅÔ ÚÁÄÁÎÎÏÅ -ËÏÌÉÞÅÓÔ×Ï ÓÔÒÏË _é_ ÉÈ ÓÏÄÅÒÖÉÍÏÅ. üÔÏ ÎÅ ÐÒÏÓÔÏ ÐÏ×ÔÏÒÅÎÉÅ ËÏÍÁÎÄÙ. C-u 2 -C-k ÕÄÁÌÉÔ Ä×Å ÓÔÒÏËÉ, Á ÔÁËÖÅ ÚÁ×ÅÒÛÁÀÝÉÅ ÉÈ ÓÉÍ×ÏÌÙ ÎÏ×ÏÊ ÓÔÒÏËÉ; -Ä×ÕÈÒÁÚÏ×ÏÅ ×ÙÐÏÌÎÅÎÉÅ C-k ÎÅ ÓÄÅÌÁÅÔ ÜÔÏÇÏ. - -÷ÏÚ×ÒÁÔ ÕÂÉÔÏÇÏ ÒÁÎÅÅ ÔÅËÓÔÁ ÎÁÚÙ×ÁÅÔÓÑ "×ÏÓÓÔÁÎÏ×ÌÅÎÉÅ (yanking)". (äÕÍÁÊÔÅ -Ï ÜÔÏÍ, ËÁË Ï ×ÏÓÓÔÁÎÏ×ÌÅÎÉÉ ÉÌÉ ÐÏÍÅÝÅÎÉÉ ÎÁÚÁÄ, ÎÅËÏÔÏÒÏÇÏ ×ÚÑÔÏÇÏ -ÔÅËÓÔÁ). ÷Ù ÍÏÖÅÔÅ ×ÏÓÓÔÁÎÏ×ÉÔØ ÕÄÁÌÅÎÎÙÊ ÔÅËÓÔ × ÍÅÓÔÅ ÕÄÁÌÅÎÉÑ, ÉÌÉ × -ÌÀÂÏÊ ÄÒÕÇÏÊ ÔÏÞËÅ ÒÅÄÁËÔÉÒÕÅÍÏÇÏ ÔÅËÓÔÁ, ÉÌÉ ÄÁÖÅ × ÄÒÕÇÏÍ ÆÁÊÌÅ. ÷Ù -ÍÏÖÅÔÅ ×ÏÓÓÔÁÎÏ×ÉÔØ ÔÅËÓÔ ÎÅÓËÏÌØËÏ ÒÁÚ É ÐÏÌÕÞÉÔØ ÎÅÓËÏÌØËÏ ËÏÐÉÊ ÄÁÎÎÏÇÏ -ÔÅËÓÔÁ. - -äÌÑ ×ÏÓÓÔÁÎÏ×ÌÅÎÉÑ ÕÂÉÔÏÇÏ ÔÅËÓÔÁ ÉÓÐÏÌØÚÕÅÔÓÑ ÓÏÞÅÔÁÎÉÅ ËÌÁ×ÉÛ C-y. äÁÎÎÁÑ -ËÏÍÁÎÄÁ ×ÏÓÓÔÁÎÁ×ÌÉ×ÁÅÔ ÐÏÓÌÅÄÎÉÊ ÕÂÉÔÙÊ ÔÅËÓÔ × ÔÏÞËÅ ÒÁÓÐÏÌÏÖÅÎÉÑ ËÕÒÓÏÒÁ. - ->> ðÏÐÒÏÂÕÊÔÅ ×ÙÐÏÌÎÉÔØ ÜÔÕ ËÏÍÁÎÄÕ -- ÎÁÂÅÒÉÔÅ C-y, ÞÔÏÂÙ ×ÅÒÎÕÔØ ÔÅËÓÔ - ÎÁÚÁÄ. - -ðÏÍÎÉÔÅ, ÞÔÏ ÅÓÌÉ ×Ù ÉÓÐÏÌØÚÏ×ÁÌÉ ÎÅÓËÏÌØËÏ ËÏÍÁÎÄ C-k × ÏÄÎÏÊ ÓÔÒÏËÅ, ÔÏ -×ÓÅ ÕÂÉÔÙÅ ÓÔÒÏËÉ ÂÕÄÕÔ ÓÏÈÒÁÎÅÎÙ ×ÍÅÓÔÅ, ÔÁË, ÞÔÏ C-y ÔÁËÖÅ ×ÏÓÓÔÁÎÏ×ÉÔ ÉÈ -×ÍÅÓÔÅ. - ->> ðÏÐÒÏÂÕÊÔÅ ×ÙÐÏÌÎÉÔØ ÜÔÏ ÓÅÊÞÁÓ -- ÎÁÖÍÉÔÅ C-k ÎÅÓËÏÌØËÏ ÒÁÚ. - -ôÅÐÅÒØ ×ÅÒÎÅÍ ÕÂÉÔÙÊ ÔÅËÓÔ: - ->> îÁÖÍÉÔÅ C-y. ôÅÐÅÒØ ÐÅÒÅÍÅÓÔÉÔÅ ËÕÒÓÏÒ ÎÁ ÎÅÓËÏÌØËÏ ÓÔÒÏË ×ÎÉÚ, É ÓÎÏ×Á - ÎÁÖÍÉÔÅ C-y. óÅÊÞÁÓ ×Ù ×ÉÄÉÔÅ ËÁË ÍÏÖÎÏ ÓËÏÐÉÒÏ×ÁÔØ ÎÅËÏÔÏÒÙÊ ÔÅËÓÔ. - -þÔÏ ÄÅÌÁÔØ, ÅÓÌÉ ÅÓÔØ ÎÅËÏÔÏÒÙÊ ÔÅËÓÔ, ËÏÔÏÒÙÊ ×Ù ÈÏÔÉÔÅ ×ÅÒÎÕÔØ ÎÁÚÁÄ, Á -ÐÏÔÏÍ ÕÂÉÔØ ÞÔÏ-ÔÏ ÅÝÅ? ïÄÎÏ ÎÁÖÁÔÉÅ C-y ×ÅÒÎÅÔ ÔÏÌØËÏ ÐÏÓÌÅÄÎÉÊ ÕÄÁÌÅÎÎÙÊ -ÔÅËÓÔ. îÏ ÐÒÅÄÙÄÕÝÉÊ ÔÅËÓÔ ÎÅ ÂÕÄÅÔ ÐÏÔÅÒÑÎ -- ×Ù ÓÍÏÖÅÔÅ ÅÇÏ ×ÅÒÎÕÔØ -ÎÁÚÁÄ, ÉÓÐÏÌØÚÕÑ ËÏÍÁÎÄÕ M-y. ðÏÓÌÅ ÔÏÇÏ, ËÁË ×Ù ×ÅÒÎÕÌÉ ÐÏÓÌÅÄÎÉÊ -ÕÄÁÌÅÎÎÙÊ ÔÅËÓÔ, ÎÁÖÍÉÔÅ M-y, É ÚÁÍÅÎÉÔÅ ÜÔÏÔ ×ÏÓÓÔÁÎÏ×ÌÅÎÎÙÊ ÔÅËÓÔ ÔÅÍ, -ËÏÔÏÒÙÊ ÂÙÌ ÕÂÉÔ ÒÁÎÅÅ. îÁÖÉÍÁÑ M-y ÓÎÏ×Á É ÓÎÏ×Á, ×Ù ÂÕÄÅÔÅ ×ÏÚ×ÒÁÝÁÔØ -ÒÁÎÅÅ ÕÂÉÔÙÅ ÞÁÓÔÉ ÔÅËÓÔÁ. ëÏÇÄÁ ×Ù ÄÏÓÔÉÇÎÉÔÅ ÉÓËÏÍÏÇÏ ÔÅËÓÔÁ, ÔÏ ×ÁÍ ÎÅ -ÎÕÖÎÏ ÄÅÌÁÔØ ÎÉÞÅÇÏ ÞÔÏÂÙ ÓÏÈÒÁÎÉÔØ ÅÇÏ. ðÒÏÓÔÏ ÐÒÏÄÏÌÖÁÊÔÅ ÒÁÂÏÔÁÔØ, -ÏÓÔÁ×É× ×ÏÓÓÔÁÎÏ×ÌÅÎÎÙÊ ÔÅËÓÔ ÔÁÍ, ÇÄÅ ÏÎ ÅÓÔØ. - -îÁÖÉÍÁÑ M-y ÄÏÓÔÁÔÏÞÎÏÅ ÞÉÓÌÏ ÒÁÚ, ×Ù ÍÏÖÅÔÅ ×ÅÒÎÕÔØÓÑ × ÎÁÞÁÌØÎÕÀ ÔÏÞËÕ -(ÎÁÉÂÏÌÅÅ ÒÁÎÎÅÅ ÕÄÁÌÅÎÉÅ). - ->> õÂÅÊÔÅ ÓÔÒÏËÕ, ÐÅÒÅÍÅÓÔÉÔÅ ËÕÒÓÏÒ, É ÕÄÁÌÉÔÅ ÅÝÅ ÏÄÎÕ ÓÔÒÏËÕ. úÁÔÅÍ - ÉÓÐÏÌØÚÕÊÔÅ C-y ÄÌÑ ×ÏÓÓÔÁÎÏ×ÌÅÎÉÑ ×ÔÏÒÏÊ ÕÂÉÔÏÊ ÓÔÒÏËÉ, Á ÚÁÔÅÍ ÎÁÖÍÉÔÅ - M-y, É ÏÎÁ ÂÕÄÅÔ ÚÁÍÅÎÅÎÁ ÐÅÒ×ÏÊ ÕÂÉÔÏÊ ÓÔÒÏËÏÊ. îÁÖÍÉÔÅ M-y ÅÝÅ - ÎÅÓËÏÌØËÏ ÒÁÚ, ÞÔÏÂÙ Õ×ÉÄÅÔØ ÐÏÌÕÞÅÎÎÙÊ ÒÅÚÕÌØÔÁÔ. ðÒÏÄÏÌÖÁÊÔÅ ×ÙÐÏÌÎÑÔØ - ÜÔÕ ËÏÍÁÎÄÕ ÄÏ ÔÅÈ ÐÏÒ, ÐÏËÁ ×ÔÏÒÁÑ ÕÂÉÔÁÑ ÓÔÒÏËÁ ÎÅ ÂÕÄÅÔ ×ÏÓÓÔÁÎÏ×ÌÅÎÁ - ÓÎÏ×Á. åÓÌÉ ×ÁÍ ÈÏÞÅÔÓÑ, ÔÏ ×Ù ÍÏÖÅÔÅ ÚÁÄÁ×ÁÔØ ÐÏÌÏÖÉÔÅÌØÎÙÅ É - ÏÔÒÉÃÁÔÅÌØÎÙÅ ÁÒÇÕÍÅÎÔÙ ÄÌÑ ËÏÍÁÎÄÙ M-y. - - -* ïôíåîá (UNDO) ---------------- - -åÓÌÉ ×Ù ÓÄÅÌÁÌÉ ÉÚÍÅÎÅÎÉÑ × ÔÅËÓÔÅ, É ÒÅÛÉÌÉ, ÞÔÏ ÏÛÉÂÌÉÓØ, ÔÏ ×Ù ÍÏÖÅÔÅ -ÏÔÍÅÎÉÔØ ÉÚÍÅÎÅÎÉÑ Ó ÐÏÍÏÝØÀ ËÏÍÁÎÄÙ "ÏÔÍÅÎÁ", ËÏÔÏÒÁÑ ÐÒÉ×ÑÚÁÎÁ Ë ÓÏÞÅÔÁÎÉÀ -ËÌÁ×ÉÛ C-x u. - -ïÂÙÞÎÏ, C-x u ÏÔÍÅÎÑÅÔ ÉÚÍÅÎÅÎÉÑ, ÓÄÅÌÁÎÎÙÅ ÏÄÎÏÊ ËÏÍÁÎÄÏÊ; ÅÓÌÉ ÐÏ×ÔÏÒÉÔØ -C-x u ÎÅÓËÏÌØËÏ ÒÁÚ ÐÏÄÒÑÄ, ÔÏ ËÁÖÄÙÊ ÒÁÚ ÂÕÄÅÔ ÏÔÍÅÎÑÔØÓÑ ÅÝÅ ÏÄÎÁ ËÏÍÁÎÄÁ. - -îÏ ÅÓÔØ Ä×Á ÉÓËÌÀÞÅÎÉÑ -- ËÏÍÁÎÄÙ ÎÅ ÉÚÍÅÎÑÀÝÉÅ ÔÅËÓÔ, ÎÅ ÕÞÉÔÙ×ÁÀÔÓÑ (ÓÀÄÁ -×ËÌÀÞÁÅÔÓÑ ËÏÍÁÎÄÙ ÐÅÒÅÍÅÝÅÎÉÑ ËÕÒÓÏÒÁ É ÐÒÏËÒÕÔËÉ), É ËÏÍÁÎÄÙ ×ÓÔÁ×ËÉ -ÓÉÍ×ÏÌÏ× ÏÂÒÁÂÁÔÙ×ÁÀÔÓÑ ÇÒÕÐÐÁÍÉ ÄÏ 20 ÓÉÍ×ÏÌÏ×. (üÔÏ ÕÍÅÎØÛÁÅÔ ÞÉÓÌÏ -ÎÁÖÁÔÉÊ C-x u ËÏÔÏÒÙÅ ×ÁÍ ÎÕÖÎÏ ÂÕÄÅÔ ÎÁÂÒÁÔØ ÄÌÑ ÏÔÍÅÎÙ ××ÏÄÁ ÔÅËÓÔÁ). - ->> õÂÅÊÔÅ ÜÔÕ ÓÔÒÏËÕ Ó ÐÏÍÏÝØÀ C-k, Á ÚÁÔÅÍ ÎÁÂÅÒÉÔÅ C-x u É ÓÔÒÏËÁ ÄÏÌÖÎÁ - ×ÅÒÎÕÔØÓÑ ÎÁÚÁÄ. - -C-_ -- ÜÔÏ ÅÝÅ ËÏÍÁÎÄÁ ÏÔÍÅÎÙ; ÏÎÁ ÒÁÂÏÔÁÅÔ ÔÏÞÎÏ ÔÁËÖÅ ËÁË É C-x u, ÎÏ -ÌÅÇÞÅ × ÉÓÐÏÌØÚÏ×ÁÎÉÉ, ÅÓÌÉ ×ÁÍ ÎÕÖÎÏ ×ÙÐÏÌÎÉÔØ ÅÅ ÎÅÓËÏÌØËÏ ÒÁÚ -ÐÏÄÒÑÄ. îÅÕÄÏÂÎÏÅ ÐÏÌÏÖÅÎÉÅ C-_ ÎÁ ÎÅËÏÔÏÒÙÈ ËÌÁ×ÉÁÔÕÒÁÈ ÄÅÌÁÅÔ ÎÅ ÏÞÅ×ÉÄÎÙÍ -ÓÐÏÓÏ ÅÅ ÎÁÂÏÒÁ. ðÏÜÔÏÍÕ ÍÙ ÐÒÅÄÌÁÇÁÅÍ ÉÓÐÏÌØÚÏ×ÁÔØ C-x u. îÁ ÎÅËÏÔÏÒÙÈ -ÔÅÒÍÉÎÁÌÁÈ, ×Ù ÍÏÖÅÔÅ ÎÁÂÉÒÁÔØ C-_, ÎÁÖÉÍÁÑ / É ÕÄÅÒÖÉ×ÁÑ ËÌÁ×ÉÛÕ CONTROL. - -þÉÓÌÏ×ÏÊ ÁÒÇÕÍÅÎÔ ÄÌÑ C-_ ÉÌÉ C-x u ÉÓÐÏÌØÚÕÅÔÓÑ ËÁË ÓÞÅÔÞÉË ÐÏ×ÔÏÒÅÎÉÊ. - -÷Ù ÍÏÖÅÔÅ ÏÔÍÅÎÉÔØ ÕÄÁÌÅÎÉÅ ÔÅËÓÔÁ ÔÏÞÎÏ ÔÁË ÖÅ, ËÁË É ÏÔÍÅÎÕ ÕÂÉÔÉÑ ÔÅËÓÔÁ. -ïÔÌÉÞÉÅ ÍÅÖÄÕ ÕÂÉÊÓÔ×ÏÍ É ÕÄÁÌÅÎÉÅÍ ÞÅÇÏ-ÌÉÂÏ ÚÁËÌÀÞÁÅÔÓÑ × ÔÏÍ, ÞÔÏ ×Ù -ÍÏÖÅÔÅ ×ÏÓÓÔÁÎÏ×ÉÔØ ÕÂÉÔÙÊ ÔÅËÓÔ Ó ÐÏÍÏÝØÀ ËÏÍÁÎÄÙ C-y; ÎÏ ÄÌÑ ËÏÍÁÎÄÙ -ÏÔÍÅÎÙ ÎÅÔ ÎÉËÁËÏÊ ÒÁÚÎÉÃÙ ÍÅÖÄÕ ÜÔÉÍÉ ÏÐÅÒÁÃÉÑÍÉ. - -* æáêìù -------- - -þÔÏÂÙ ÓÏÚÄÁÎÎÙÊ ÔÅËÓÔ ÍÏÖÎÏ ÂÙÌÏ ÒÅÄÁËÔÉÒÏ×ÁÔØ ÐÏÚÖÅ, ×Ù ÄÏÌÖÎÙ ÐÏÍÅÓÔÉÔØ -ÅÇÏ × ÆÁÊÌ. éÎÁÞÅ, ÏÎ ÉÓÞÅÚÎÅÔ, ËÏÇÄÁ ×Ù ÐÏËÉÎÅÔÅ Emacs. ÷Ù ÐÏÍÅÝÁÅÔÅ ×ÁÛ -ÔÅËÓÔ × ÆÁÊÌ, "ÏÔËÒÙ×ÁÑ" ÆÁÊÌ (üÔÕ ÏÐÅÒÁÃÉÀ ÔÁËÖÅ ÎÁÚÙ×ÁÀÔ "ÐÏÓÅÔÉÔØ" ÆÁÊÌ). - -ïÔËÒÙÔØ ÆÁÊÌ ÏÚÎÁÞÁÅÔ ÐÏÓÍÏÔÒÅÔØ ÅÇÏ ÓÏÄÅÒÖÉÍÏÅ, Ó ÐÏÍÏÝØÀ Emacs. ÷Ï ÍÎÏÇÉÈ -ÓÌÕÞÁÑÈ, ÜÔÏ ÐÒÏÉÓÈÏÄÉÔ ÔÏÇÄÁ, ËÏÇÄÁ ×Ù ÒÅÄÁËÔÉÒÕÅÔÅ ÆÁÊÌ ÓÁÍÉ. ïÄÎÁËÏ ×ÁÛÉ -ÉÚÍÅÎÅÎÉÑ, ÓÄÅÌÁÎÎÙÅ Ó ÉÓÐÏÌØÚÏ×ÁÎÉÅÍ Emacs ÎÅ ÂÕÄÕÔ ÚÁÆÉËÓÉÒÏ×ÁÎÙ, ÐÏËÁ ×Ù -ÎÅ ÓÏÈÒÁÎÉÔÅ ÆÁÊÌ. ÷Ù ÍÏÖÅÔÅ ÎÅ ÏÓÔÁ×ÌÑÔØ ÞÁÓÔÉÞÎÏ ÉÚÍÅÎÅÎÎÙÊ ÆÁÊÌ × -ÓÉÓÔÅÍÅ, ÅÓÌÉ ×Ù ÎÅ ÈÏÔÉÔÅ ÅÇÏ ÓÏÈÒÁÎÑÔØ. äÁÖÅ ËÏÇÄÁ ×Ù ÓÏÈÒÁÎÑÅÔÅ ÆÁÊÌ, ÔÏ -Emacs ÏÓÔÁ×ÌÑÅÔ ÏÒÉÇÉÎÁÌØÎÙÊ ÆÁÊÌ, ÎÏ Ó ÄÒÕÇÉÍ ÉÍÅÎÅÍ, ÔÁË ÞÔÏ ×Ù ÐÏÚÖÅ -ÍÏÖÅÔÅ ÏÔÍÅÎÉÔØ ×ÁÛÉ ÉÚÍÅÎÅÎÉÑ, ×ÅÒÎÕ×ÛÉÓØ Ë ÐÒÅÄÙÄÕÝÅÊ ×ÅÒÓÉÉ ÆÁÊÌÁ. - -åÓÌÉ ×Ù ÐÏÓÍÏÔÒÉÔÅ × ÎÉÖÎÀÀ ÞÁÓÔØ ÜËÒÁÎÁ, ÔÏ ×Ù Õ×ÉÄÉÔÅ ÓÔÒÏËÕ, ËÏÔÏÒÁÑ -ÎÁÞÉÎÁÅÔÓÑ Ó ÔÉÒÅ É ÅÅ ÎÁÞÁÌÏ ×ÙÇÌÑÄÉÔ ÐÒÉÍÅÒÎÏ ÔÁË "--:-- TUTORIAL.ru". üÔÁ -ÞÁÓÔØ ÜËÒÁÎÁ ×ÓÅÇÄÁ ÐÏËÁÚÙ×ÁÅÔ ÉÍÑ ÏÔËÒÙÔÏÇÏ ×ÁÍÉ ÆÁÊÌÁ. éÔÁË, ÓÅÊÞÁÓ ×Ù -ÏÔËÒÙÌÉ ÆÁÊÌ Ó ÉÍÅÎÅÍ "TUTORIAL.ru", ËÏÔÏÒÙÊ Ñ×ÌÑÅÔÓÑ ×ÁÛÅÊ ÐÅÒÓÏÎÁÌØÎÏÊ -ËÏÐÉÅÊ ÕÞÅÂÎÉËÁ Emacs. äÌÑ ÌÀÂÏÇÏ ÆÁÊÌÁ, ËÏÔÏÒÙÊ ×Ù ÏÔËÒÏÅÔÅ, ÅÇÏ ÉÍÑ ÂÕÄÅÔ -ÐÏËÁÚÁÎÏ × ÜÔÏÊ ÓÔÒÏËÅ. - -ïÄÎÏÊ ÉÚ ×ÅÝÅÊ, ËÏÔÏÒÙÅ ×ÁÍ ÎÕÖÎÏ ÚÎÁÔØ Ï ËÏÍÁÎÄÅ ÏÔËÒÙÔÉÑ ÆÁÊÌÁ -- ÜÔÏ ÔÏ, -ÞÔÏ ×Ù ÄÏÌÖÎÙ ××ÅÓÔÉ ÉÍÑ ÆÁÊÌÁ, ËÏÔÏÒÙÊ ÎÕÖÎÏ ÏÔËÒÙÔØ. ôÁËÉÅ ËÏÍÁÎÄÙ ÍÙ -ÎÁÚÙ×ÁÅÍ ËÏÍÁÎÄÁÍÉ "ÞÉÔÁÀÝÉÍÉ ÁÒÇÕÍÅÎÔ Ó ÔÅÒÍÉÎÁÌÁ" (× ÎÁÛÅÍ ÓÌÕÞÁÅ, -ÁÒÇÕÍÅÎÔÏÍ Ñ×ÌÑÅÔÓÑ ÉÍÑ ÆÁÊÌÁ). ðÏÓÌÅ ××ÏÄÁ ËÏÍÁÎÄÙ - - C-x C-f ïÔËÒÙÔØ (ÎÁÊÔÉ) ÆÁÊÌ - -Emacs ÐÏÐÒÏÓÉÔ ×ÁÓ ××ÅÓÔÉ ÉÍÑ ÆÁÊÌÁ. éÍÑ ÆÁÊÌÁ ÎÁÂÉÒÁÅÔÓÑ × ÎÉÖÎÅÊ ÓÔÒÏËÅ -ÜËÒÁÎÁ. îÉÖÎÑÑ ÓÔÒÏËÁ ÎÁÚÙ×ÁÅÔÓÑ ÍÉÎÉ-ÂÕÆÅÒÏÍ -- ÏÎ ÓÐÅÃÉÁÌØÎÏ ÉÓÐÏÌØÚÕÅÔÓÑ -ÄÌÑ ××ÏÄÁ ÎÅÂÏÌØÛÏÇÏ ËÏÌÉÞÅÓÔ×Á ÄÁÎÎÙÈ. äÌÑ ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ ÉÍÅÎÉ ÆÁÊÌÁ ×Ù -ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ ÏÂÙÞÎÙÅ ËÏÍÁÎÄÙ ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ Emacs. - -ëÏÇÄÁ ×Ù ××ÏÄÉÔÅ ÉÍÑ ÆÁÊÌÁ (ÉÌÉ ÌÀÂÕÀ ÄÒÕÇÕÀ ÉÎÆÏÒÍÁÃÉÀ × ÍÉÎÉ-ÂÕÆÅÒÅ), ×Ù -ÍÏÖÅÔÅ ÏÔÍÅÎÉÔØ ÔÅËÕÝÕÀ ËÏÍÁÎÄÕ ÎÁÖÁ× C-g. - ->> îÁÖÍÉÔÅ C-x C-f, Á ÚÁÔÅÍ ÎÁÖÍÉÔÅ C-g. üÔÏ ÄÅÊÓÔ×ÉÅ ÏÔÍÅÎÉÔ ××ÏÄ ÄÁÎÎÙÈ × - ÍÉÎÉ-ÂÕÆÅÒÅ, É ÚÁÏÄÎÏ É ËÏÍÁÎÄÕ C-x C-f, ËÏÔÏÒÁÑ ÉÓÐÏÌØÚÏ×ÁÌÁ ÍÉÎÉ-ÂÕÆÅÒ - ÄÌÑ ÐÏÌÕÞÅÎÉÑ ÁÒÇÕÍÅÎÔÁ. ÷ ÉÔÏÇÅ, ×Ù ÎÅ ÏÔËÒÙÌÉ ÎÉ ÏÄÎÏÇÏ ÆÁÊÌÁ. - -ëÏÇÄÁ ×Ù ÚÁ×ÅÒÛÉÔÅ ××ÏÄ ÉÍÅÎÉ ÆÁÊÌÁ, ÎÁÖÍÉÔÅ . äÁÌÅÅ ÓÒÁÂÏÔÁÅÔ -ËÏÍÁÎÄÁ C-x C-f, ËÏÔÏÒÁÑ ÏÔËÒÏÅÔ ÕËÁÚÁÎÎÙÊ ×ÁÍÉ ÆÁÊÌ. íÉÎÉ-ÂÕÆÅÒ ÉÓÞÅÚÎÅÔ, -ËÏÇÄÁ ËÏÍÁÎÄÁ C-x C-f ÚÁ×ÅÒÛÉÔÓÑ. - -á ÍÇÎÏ×ÅÎÉÅÍ ÐÏÚÖÅ ÓÏÄÅÒÖÉÍÏÅ ÆÁÊÌÁ ÐÏÑ×ÉÔÓÑ ÎÁ ÜËÒÁÎÅ, É ×Ù ÓÍÏÖÅÔÅ ÅÇÏ -ÒÅÄÁËÔÉÒÏ×ÁÔØ. ëÏÇÄÁ ×Ù ÚÁËÏÎÞÉÔÅ ÒÅÄÁËÔÉÒÏ×ÁÎÉÅ, ÔÏ ÄÌÑ ÔÏÇÏ, ÞÔÏÂÙ -ÓÏÈÒÁÎÉÔØ ÉÚÍÅÎÅÎÉÑ, ÎÁÂÅÒÉÔÅ ËÏÍÁÎÄÕ - - C-x C-s óÏÈÒÁÎÉÔØ ÆÁÊÌ - -üÔÁ ËÏÍÁÎÄÁ ÓËÏÐÉÒÕÅÔ ÔÅËÓÔ ÉÚ Emacs × ÆÁÊÌ. ÷ ÐÅÒ×ÙÊ ÒÁÚ, ËÏÇÄÁ ×Ù ÜÔÏ -ÓÄÅÌÁÅÔÅ, Emacs ÐÅÒÅÉÍÅÎÕÅÔ ÏÒÉÇÉÎÁÌØÎÙÊ ÆÁÊÌ × ÆÁÊÌ Ó ÎÏ×ÙÍ ÉÍÅÎÅÍ, ÞÔÏÂÙ -ÎÅ ÐÏÔÅÒÑÌÏÓØ ÐÒÅÄÙÄÕÝÅÅ ÓÏÄÅÒÖÉÍÏÅ ÆÁÊÌÁ. îÏ×ÏÅ ÉÍÑ ÐÏÌÕÞÁÅÔÓÑ ÄÏÂÁ×ÌÅÎÉÅÍ -ÓÉÍ×ÏÌÁ "~" Ë ÏÒÉÇÉÎÁÌØÎÏÍÕ ÉÍÅÎÉ ÆÁÊÌÁ. - -ëÏÇÄÁ ÓÏÈÒÁÎÅÎÉÅ ÚÁ×ÅÒÛÉÔÓÑ, Emacs ÏÔÏÂÒÁÚÉÔ ÉÍÑ ÚÁÐÉÓÁÎÎÏÇÏ ÆÁÊÌÁ. ÷Ù -ÄÏÌÖÎÙ ÓÏÈÒÁÎÑÔØ ÉÚÍÅÎÅÎÉÑ ÄÏÓÔÁÔÏÞÎÏ ÞÁÓÔÏ, ÞÔÏÂÙ ÎÅ ÐÏÔÅÒÑÔØ ×ÎÅÓÅÎÎÙÅ -ÉÚÍÅÎÅÎÉÑ, ÅÓÌÉ ÓÉÓÔÅÍÁ ×ÄÒÕÇ ÚÁ×ÉÓÎÅÔ. - ->> îÁÂÅÒÉÔÅ C-x C-s, ÓÏÈÒÁÎÉÔÅ ×ÁÛÕ ËÏÐÉÀ ÕÞÅÂÎÉËÁ. ÷ ÎÉÖÎÅÊ ÓÔÒÏËÅ ÜËÒÁÎÁ - ÄÏÌÖÎÁ ÐÏÑ×ÉÔØÓÑ ÎÁÄÐÉÓØ "Wrote ...TUTORIAL.ru". - -úáíåþáîéå: îÁ ÎÅËÏÔÏÒÙÈ ÓÉÓÔÅÍÁÈ, ××ÏÄ C-x C-s ÚÁÂÌÏËÉÒÕÅÔ ÜËÒÁÎ, ÔÁË ÞÔÏ ×Ù -ÎÅ Õ×ÉÄÉÔÅ ÐÏÓÌÅÄÕÀÝÅÇÏ ×Ù×ÏÄÁ Emacs`Á. ôÁËÏÅ ÐÏ×ÅÄÅÎÉÅ ÏÚÎÁÞÁÅÔ, ÞÔÏ -ÏÐÅÒÁÃÉÏÎÎÁÑ ÓÉÓÔÅÍÁ ÉÍÅÅÔ "ÏÓÏÂÅÎÎÏÓÔØ", ÉÍÅÎÕÅÍÕÀ "flow control", -ÐÅÒÅÈ×ÁÔÙ×ÁÀÝÕÀ ÓÏÞÅÔÁÎÉÅ C-s É ÎÅ ÐÒÏÐÕÓËÁÀÝÕÀ ÜÔÏÔ ÓÉÍ×ÏÌ Ë Emacs`Õ. äÌÑ -ÓÎÑÔÉÑ ÂÌÏËÉÒÏ×ËÉ ÜËÒÁÎÁ, ÎÁÖÍÉÔÅ C-q. ïÂÒÁÔÉÔÅÓØ Ë ÒÁÚÄÅÌÕ "Spontaneous -Entry to Incremental Search" ÒÕËÏ×ÏÄÓÔ×Á Emacs, ÞÔÏÂÙ ÕÚÎÁÔØ Ï ÔÏÍ, ËÁË -ÂÏÒÏÔØÓÑ Ó ÜÔÏÊ "ÏÓÏÂÅÎÎÏÓÔØÀ". - -÷Ù ÍÏÖÅÔÅ ÏÔËÒÙÔØ ÓÕÝÅÓÔ×ÕÀÝÉÊ ÆÁÊÌ ÄÌÑ ÐÒÏÓÍÏÔÒÁ ÉÌÉ ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ. ÷Ù -ÔÁËÖÅ ÍÏÖÅÔÅ ÏÔËÒÙÔØ ÆÁÊÌ, ËÏÔÏÒÏÇÏ ÅÝÅ ÎÅ ÓÕÝÅÓÔ×ÕÅÔ. äÒÕÇÉÍÉ ÓÌÏ×ÁÍÉ -- -ÓÏÚÄÁÔØ ÆÁÊÌ Ó ÐÏÍÏÝØÀ Emacs ÍÏÖÎÏ ÔÁË: ÎÁÊÔÉ ÆÁÊÌ, ÓÏÚÄÁÔØ ÎÏ×ÙÊ, É ÎÁÞÁÔØ -××ÏÄÉÔØ ÔÅËÓÔ. ëÏÇÄÁ ×Ù ×ÙÐÏÌÎÉÔÅ ËÏÍÁÎÄÕ ÓÏÈÒÁÎÅÎÉÑ ÆÁÊÌÁ, ÔÏ Emacs ÓÏÚÄÁÓÔ -ÎÁÓÔÏÑÝÉÊ ÆÁÊÌ Ó ÎÁÂÒÁÎÎÙÍ ×ÁÍÉ ÔÅËÓÔÏÍ. äÁÌÅÅ, ËÁË ×Ù ÐÏÎÑÌÉ, ×Ù ÂÕÄÅÔÅ -ÒÅÄÁËÔÉÒÏ×ÁÔØ ÕÖÅ ÓÕÝÅÓÔ×ÕÀÝÉÊ ÆÁÊÌ. - - -* âõæåòá --------- - -åÓÌÉ ×Ù ÏÔËÒÙ×ÁÅÔÅ ×ÔÏÒÏÊ ÆÁÊÌ ÉÓÐÏÌØÚÕÑ ËÏÍÁÎÄÕ C-x C-f, ÔÏ ÐÅÒ×ÙÊ ÆÁÊÌ -ÏÓÔÁÅÔÓÑ ×ÎÕÔÒÉ Emacs. ÷Ù ÍÏÖÅÔÅ ÐÅÒÅËÌÀÞÉÔØÓÑ ÎÁÚÁÄ, ÏÔËÒÙ× ÅÇÏ ÓÎÏ×Á Ó -ÐÏÍÏÝØÀ C-x C-f. ôÁËÉÍ ÏÂÒÁÚÏÍ ×Ù ÍÏÖÅÔÅ ÚÁÇÒÕÚÉÔØ ÎÅÓËÏÌØËÏ ÆÁÊÌÏ× × Emacs. - ->> óÏÚÄÁÊÔÅ ÆÁÊÌ Ó ÉÍÅÎÅÍ "foo", ÎÁÂÒÁ× C-x C-f foo . - ÷ÓÔÁ×ØÔÅ ËÁËÏÊ-ÎÉÂÕÄØ ÔÅËÓÔ, ÉÚÍÅÎÉÔÅ ÅÇÏ, É ÓÏÈÒÁÎÉÔÅ ÆÁÊÌ "foo", - ÎÁÂÒÁ× C-x C-s. - îÁËÏÎÅÃ, ÎÁÂÅÒÉÔÅ C-x C-f TUTORIAL.ru , ÄÌÑ ÔÏÇÏ, ÞÔÏÂÙ ×ÅÒÎÕÔØÓÑ - ÎÁÚÁÄ Ë ÕÞÅÂÎÉËÕ. - -Emacs ÈÒÁÎÉÔ ÔÅËÓÔ ËÁÖÄÏÇÏ ÆÁÊÌÁ ×ÎÕÔÒÉ × ÏÂßÅËÔÅ, ÎÁÚÙ×ÁÅÍÏÍ "ÂÕÆÅÒ" -("buffer"). ïÔËÒÙÔÉÅ ÆÁÊÌÁ ÓÏÚÄÁÅÔ ÎÏ×ÙÊ ÂÕÆÅÒ ×ÎÕÔÒÉ Emacs. þÔÏÂÙ Õ×ÉÄÅÔØ -ÓÐÉÓÏË ÂÕÆÅÒÏ×, ÓÏÚÄÁÎÎÙÈ × ÔÅËÕÝÅÍ ÓÅÁÎÓÅ Emacs, ÎÁÂÅÒÉÔÅ - - C-x C-b óÐÉÓÏË ÂÕÆÅÒÏ× - ->> ðÏÐÒÏÂÕÊÔÅ ×ÙÐÏÌÎÉÔØ C-x C-b ÐÒÑÍÏ ÓÅÊÞÁÓ. - -íÙ ×ÉÄÉÍ, ÞÔÏ ËÁÖÄÙÊ ÂÕÆÅÒ ÉÍÅÅÔ ÉÍÑ, É ÍÏÖÅÔ ÉÍÅÔØ Ó×ÑÚÁÎÎÏÅ Ó ÎÉÍ ÉÍÑ -ÆÁÊÌÁ, ÓÏÄÅÒÖÉÍÏÅ ËÏÔÏÒÏÇÏ × ÈÒÁÎÉÔÓÑ × ÄÁÎÎÏÍ ÂÕÆÅÒÅ. ìàâïê ÔÅËÓÔ, ËÏÔÏÒÙÊ -×Ù ×ÉÄÉÔÅ × ÏËÎÅ Emacs, ×ÓÅÇÄÁ Ñ×ÌÑÅÔÓÑ ÞÁÓÔØÀ ËÁËÏÇÏ-ÌÉÂÏ ÂÕÆÅÒÁ. - ->> îÁÂÅÒÉÔÅ C-x 1, ÞÔÏÂÙ ÉÚÂÁ×ÉÔØÓÑ ÏÔ ÓÐÉÓËÁ ÂÕÆÅÒÏ×. - -ëÏÇÄÁ Õ ×ÁÓ ÅÓÔØ ÎÅÓËÏÌØËÏ ÂÕÆÅÒÏ×, ÔÏÌØËÏ ÏÄÉÎ ÉÚ ÎÉÈ Ñ×ÌÑÅÔÓÑ "ÔÅËÕÝÉÍ" × -ËÏÎËÒÅÔÎÙÊ ÍÏÍÅÎÔ ×ÒÅÍÅÎÉ. üÔÏ ÔÏÔ ÂÕÆÅÒ, ËÏÔÏÒÙÊ ×Ù ÉÚÍÅÎÑÅÔÅ. åÓÌÉ ×Ù -ÈÏÔÉÔÅ ÉÚÍÅÎÉÔØ ÄÁÎÎÙÅ × ÄÒÕÇÏÍ ÂÕÆÅÒÅ, ÔÏ ×Ù ÄÏÌÖÎÙ "ÐÅÒÅËÌÀÞÉÔØÓÑ" × ÎÅÇÏ. -åÓÌÉ ×Ù ÈÏÔÉÔÅ ÐÅÒÅËÌÀÞÉÔØÓÑ × ÂÕÆÅÒ, Ó×ÑÚÁÎÎÙÊ Ó ÆÁÊÌÏÍ, ÔÏ ×Ù ÍÏÖÅÔÅ -ÏÔËÒÙÔØ ÜÔÏÔ ÆÁÊÌ ÓÎÏ×Á Ó ÐÏÍÏÝØÀ C-x C-f. îÏ ÅÓÔØ ÂÏÌÅÅ ÐÒÏÓÔÏÊ ÓÐÏÓÏ -- -ÉÓÐÏÌØÚÏ×ÁÔØ ËÏÍÁÎÄÕ C-x b. ÷ ËÁÞÅÓÔ×Å ÁÒÇÕÍÅÎÔÁ ÄÌÑ ÄÁÎÎÏÊ ËÏÍÁÎÄÙ ×Ù -ÄÏÌÖÎÙ ÕËÁÚÁÔØ ÉÍÑ ÂÕÆÅÒÁ. - ->> îÁÂÅÒÉÔÅ C-x b foo ÄÌÑ ÐÅÒÅËÌÀÞÅÎÉÑ × ÂÕÆÅÒ "foo", ËÏÔÏÒÙÊ - ÈÒÁÎÉÔ ÔÅËÓÔ ÆÁÊÌÁ "foo". úÁÔÅÍ ÎÁÂÅÒÉÔÅ C-x b TUTORIAL ÄÌÑ - ×ÏÚ×ÒÁÝÅÎÉÑ × ÂÕÆÅÒ Ó ÄÁÎÎÙÍ ÕÞÅÂÎÉËÏÍ. - -þÁÝÅ ×ÓÅÇÏ ÉÍÑ ÂÕÆÅÒÁ ÓÏ×ÐÁÄÁÅÔ Ó ÉÍÅÎÅÍ ÆÁÊÌÁ (ÔÏÌØËÏ ÂÅÚ ÉÍÅÎÉ ËÁÔÁÌÏÇÏ×). -ïÄÎÁËÏ ÜÔÏ ÎÅ ×ÓÅÇÄÁ Ñ×ÌÑÅÔÓÑ ÐÒÁ×ÄÏÊ. óÐÉÓÏË ÂÕÆÅÒÏ×, ËÏÔÏÒÙÊ ×Ù ÓÏÚÄÁÅÔÅ -Ó ÐÏÍÏÝØÀ ËÏÍÁÎÄÙ C-x C-b ×ÓÅÇÄÁ ÐÏËÁÚÙ×ÁÅÔ ×ÁÍ ÉÍÅÎÁ ×ÓÅÈ ÂÕÆÅÒÏ×. - -ìàâïê ÔÅËÓÔ, ËÏÔÏÒÙÊ ×Ù ×ÉÄÉÔÅ × ÏËÎÅ Emacs, ×ÓÅÇÄÁ Ñ×ÌÑÅÔÓÑ ÞÁÓÔØÀ -ËÁËÏÇÏ-ÌÉÂÏ ÂÕÆÅÒÁ. îÅËÏÔÏÒÙÅ ÂÕÆÅÒÁ ÎÅ ÓÏÏÔ×ÅÔÓÔ×ÕÀÔ ÆÁÊÌÁÍ. îÁÐÒÉÍÅÒ, -ÂÕÆÅÒ Ó ÉÍÅÎÅÍ "*Buffer List*" ÎÅ Ó×ÑÚÁÎ ÎÉ Ó ËÁËÉÍ ÆÁÊÌÏÍ. üÔÏ ÂÕÆÅÒ, -ËÏÔÏÒÙÊ ÓÏÄÅÒÖÉÔ ÓÐÉÓÏË ÂÕÆÅÒÏ×, ËÏÔÏÒÙÊ ×Ù ÓÏÚÄÁÌÉ ÉÓÐÏÌØÚÕÑ C-x C-b. -âÕÆÅÒ Ó ÉÍÅÎÅÍ "*Messages*" ÔÁËÖÅ ÎÅ Ó×ÑÚÁÎ ÎÉ Ó ËÁËÉÍ ÆÁÊÌÏÍ; ÏÎ ÓÏÄÅÒÖÉÔ -ÓÏÏÂÝÅÎÉÑ, ËÏÔÏÒÙÅ ÏÔÏÂÒÁÖÁÀÔÓÑ × ÓÁÍÏÊ ÎÉÖÎÅÊ ÓÔÒÏËÅ ÏËÎÁ Emacs × ÔÅÞÅÎÉÉ -ÔÅËÕÝÅÊ ÓÅÓÓÉÉ ÒÁÂÏÔÙ Ó ÒÅÄÁËÔÏÒÏÍ. - ->> îÁÂÅÒÉÔÅ C-x b *Messages* ÄÌÑ ÐÒÏÓÍÏÔÒÁ ÓÏÄÅÒÖÉÍÏÇÏ ÂÕÆÅÒÁ - ÓÏÏÂÝÅÎÉÊ. úÁÔÅÍ ÎÁÂÅÒÉÔÅ C-x b TUTORIAL ÄÌÑ ×ÏÚ×ÒÁÔÁ × ÄÁÎÎÙÊ - ÕÞÅÂÎÉË. - -åÓÌÉ ×Ù ÉÚÍÅÎÑÅÔÅ ÔÅËÓÔ ÏÄÎÏÇÏ ÆÁÊÌÁ, Á ÚÁÔÅÍ ÏÔËÒÙ×ÁÅÔÅ ÄÒÕÇÏÊ, ÔÏ ÔÅËÓÔ × -ÐÅÒ×ÏÍ ÂÕÆÅÒÅ ÏÓÔÁÅÔÓÑ ÎÅ ÓÏÈÒÁÎÅÎÎÙÍ. éÚÍÅÎÅÎÉÑ ÏÓÔÁÎÕÔÓÑ ×ÎÕÔÒÉ Emacs, × -ÂÕÆÅÒÅ, Ó×ÑÚÁÎÎÏÍ Ó ÆÁÊÌÏÍ. óÏÚÄÁÎÉÅ ÉÌÉ ÒÅÄÁËÔÉÒÏ×ÁÎÉÅ ÓÌÅÄÕÀÝÅÇÏ ÂÕÆÅÒÁ ÎÅ -ÓËÁÚÙ×ÁÅÔÓÑ ÎÁ ÐÅÒ×ÏÍ ÂÕÆÅÒÅ. üÔÏ ÏÞÅÎØ ÕÄÏÂÎÏ, ÎÏ ÉÍÅÊÔÅ × ×ÉÄÕ, ÞÔÏ ×ÁÍ -ÎÕÖÎÏ ÉÍÅÔØ ÓÐÏÓÏ ÓÏÈÒÁÎÉÔØ ÐÅÒ×ÙÊ ÆÁÊÌÏ×ÙÊ ÂÕÆÅÒ. âÙÌÏ ÂÙ ÎÅÐÒÉÑÔÎÏ -ËÁÖÄÙÊ ÒÁÚ ×ÏÚ×ÒÁÝÁÔØÓÑ ÎÁÚÁÄ ÉÓÐÏÌØÚÕÑ C-x C-f É ÐÏÔÏÍ ÉÓÐÏÌØÚÏ×ÁÔØ C-x C-s -ÄÌÑ ÓÏÈÒÁÎÅÎÉÑ ÄÁÎÎÙÈ. ðÏÜÔÏÍÕ ÓÕÝÅÓÔ×ÕÅÔ ËÏÍÁÎÄÁ - - C-x s óÏÈÒÁÎÉÔØ ÎÅËÏÔÏÒÙÅ ÂÕÆÅÒÁ. (Save some buffers) - -C-x s ÚÁÐÒÁÛÉ×ÁÅÔ Õ ×ÁÓ ÐÏÄÔ×ÅÒÖÄÅÎÉÅ Ï ÓÏÈÒÁÎÅÎÉÉ ÄÌÑ ËÁÖÄÏÇÏ ÂÕÆÅÒÁ, -ËÏÔÏÒÙÊ ÓÏÄÅÒÖÉÔ ÎÅ ÓÏÈÒÁÎÅÎÎÙÅ ÉÚÍÅÎÅÎÉÑ. äÌÑ ËÁÖÄÏÇÏ ÔÁËÏÇÏ ÂÕÆÅÒÁ Õ ×ÁÓ -ÚÁÐÒÏÓÑÔ: ÓÏÈÒÁÎÑÔØ ÉÌÉ ÎÅ ÓÏÈÒÁÎÑÔØ ÉÚÍÅÎÅÎÉÑ. - ->> ÷ÓÔÁ×ØÔÅ ÓÔÒÏËÕ ÔÅËÓÔÁ, ÐÏÔÏÍ ÎÁÂÅÒÉÔÅ C-x s. - õ ×ÁÓ ÄÏÌÖÎÙ ÓÐÒÏÓÉÔØ, ÓÏÈÒÁÎÑÔØ ÌÉ ÂÕÆÅÒ Ó ÉÍÅÎÅÍ TUTORIAL.ru. ïÔ×ÅÔØÔÅ - ÎÁ ×ÏÐÒÏÓ ÕÔ×ÅÒÄÉÔÅÌØÎÏ, ÎÁÂÒÁ× "y". - - -* òáóûéòåîéå îáâïòá ëïíáîä --------------------------- - -õ Emacs ÏÞÅÎØ ÍÎÏÇÏ ËÏÍÁÎÄ, É ÏÎÉ ÎÅ ÍÏÇÕÔ ÂÙÔØ ÎÁÚÎÁÞÅÎÙ ÎÁ ×ÓÅ control- É -meta- ÓÉÍ×ÏÌÙ. Emacs ÏÂÈÏÄÉÔ ÜÔÏ, ÉÓÐÏÌØÚÕÑ X-ËÏÍÁÎÄÕ (eXtend). åÓÔØ Ä×Å -×ÏÚÍÏÖÎÏÓÔÉ: - - C-x òÁÓÛÉÒÅÎÉÅ Ó ÐÏÍÏÝØÀ ××ÏÄÁ ÐÒÅÆÉËÓÁ. úÁ ÎÉÍ ÓÌÅÄÕÅÍ ÏÄÉÎ ÓÉÍ×ÏÌ. - M-x òÁÓÛÉÒÅÎÉÅ ÎÁÂÏÒÁ ËÏÍÁÎÄ Ó ÐÏÍÏÝØÀ ÉÈ ÎÁÉÍÅÎÏ×ÁÎÉÑ. úÁ ÎÉÍ ÓÌÅÄÕÅÔ ÉÍÑ - ËÏÍÁÎÄÙ. - -üÔÏ ÐÏÌÅÚÎÙÅ ËÏÍÁÎÄÙ, ÎÏ ÏÎÉ ÉÓÐÏÌØÚÕÀÔÓÑ ÍÅÎÅÅ ÞÁÓÔÏ, ÞÅÍ ÔÅ ËÏÍÁÎÄÙ, -ËÏÔÏÒÙÅ ÍÙ ÉÚÕÞÉÌÉ. ÷Ù ÕÖÅ ×ÉÄÅÌÉ ÎÅËÏÔÏÒÙÅ ÉÚ ÎÉÈ: ËÏÍÁÎÄÙ ÒÁÂÏÔÙ Ó ÆÁÊÌÁÍÉ -C-x C-f -- ÏÔËÒÙÔØ ÆÁÊÌ, É C-x C-s -- ÓÏÈÒÁÎÉÔØ ÆÁÊÌ. äÒÕÇÏÊ ÐÒÉÍÅÒ -- -ËÏÍÁÎÄÁ ÚÁ×ÅÒÛÅÎÉÑ ÒÁÂÏÔÙ Ó Emacs -- C-x C-c. (îÅ ×ÏÌÎÕÊÔÅÓØ Ï ÔÏÍ, ÞÔÏ ×Ù -ÐÏÔÅÒÑÅÔÅ ÓÄÅÌÁÎÎÙÅ ÉÚÍÅÎÅÎÉÑ, C-x C-c ÐÒÅÄÌÁÇÁÅÔ ÓÏÈÒÁÎÉÔØ ÉÚÍÅÎÅÎÉÑ ÐÅÒÅÄ -ÕÄÁÌÅÎÉÅÍ ÂÕÆÅÒÁ Emacs). - -C-z -- ÜÔÏ ËÏÍÁÎÄÁ *×ÒÅÍÅÎÎÏÇÏ* ×ÙÈÏÄÁ ÉÚ Emacs. ÷Ù ÍÏÖÅÔÅ ×ÅÒÎÕÔØÓÑ × ÔÕ ÖÅ -ÓÅÓÓÉÀ Emacs ÐÏÚÖÅ. - -îÁ ÓÉÓÔÅÍÁÈ, ËÏÔÏÒÙÅ ÒÅÁÌÉÚÕÀÔ ÜÔÕ ×ÏÚÍÏÖÎÏÓÔØ, ËÏÍÁÎÄÁ C-z -"ÐÒÉÏÓÔÁÎÁ×ÌÉ×ÁÅÔ" ("suspends") Emacs; ×ÏÚ×ÒÁÝÁÅÔ × ËÏÍÁÎÄÎÙÊ ÐÒÏÃÅÓÓÏÒ -(shell), ÎÏ ÎÅ ÚÁËÒÙ×ÁÀÔ Emacs. ÷ ÂÏÌØÛÉÎÓÔ×Å ËÏÍÁÎÄÎÙÈ ÐÒÏÃÅÓÓÏÒÏ× ×Ù -ÍÏÖÅÔÅ ×ÅÒÎÕÔØÓÑ × Emacs, ÉÓÐÏÌØÚÕÑ ËÏÍÁÎÄÕ `fg' ÉÌÉ `%emacs'. - -÷ ÓÉÓÔÅÍÁÈ, ÎÅ ÐÏÄÄÅÒÖÉ×ÁÀÝÉÈ ÐÒÉÏÓÔÁÎÏ×ËÕ ÐÒÏÃÅÓÓÏ×, C-z ÓÏÚÄÁÅÔ ÎÏ×ÙÊ -ËÏÍÁÎÄÎÙÊ ÐÒÏÃÅÓÓÏÒ (subshell), ÚÁÐÕÝÅÎÎÙÊ ÉÚ-ÐÏÄ Emacs, ÞÔÏÂÙ ÄÁÔØ ×ÁÍ -×ÏÚÍÏÖÎÏÓÔØ ×ÙÐÏÌÎÉÔØ ÄÒÕÇÕÀ ÐÒÏÇÒÁÍÍÕ, É ÚÁÔÅÍ ×ÅÒÎÕÔØÓÑ × Emacs (ÜÔÏ ÎÅ -ÎÁÓÔÏÑÝÉÊ ×ÙÈÏÄ ÉÚ Emacs). ÷ ÔÁËÉÈ ÓÉÓÔÅÍÁ ÄÌÑ ×ÏÚ×ÒÁÔÁ × Emacs ×ÁÍ ÎÕÖÎÏ -ÉÓÐÏÌØÚÏ×ÁÔØ ËÏÍÁÎÄÕ `exit'. - -þÔÏÂÙ ÐÏËÉÎÕÔØ Emacs ÉÓÐÏÌØÚÕÊÔÅ ËÏÍÁÎÄÕ C-x C-c. ïÂÙÞÎÏ ÜÔÏ ÎÕÖÎÏ ÔÏÇÄÁ, -ËÏÇÄÁ ×Ù ÈÏÔÉÔÅ ÚÁËÏÎÞÉÔØ ÓÅÁÎÓ ÒÁÂÏÔÙ Ó ËÏÍÐØÀÔÅÒÏÍ. üÔÏ ÓÏÞÅÔÁÎÉÅ ÔÁËÖÅ -ÉÓÐÏÌØÚÕÅÔÓÑ, ÞÔÏÂÙ ×ÙÊÔÉ ÉÚ Emacs, ×ÙÚ×ÁÎÎÏÇÏ ÉÚ ÐÏÞÔÏ×ÏÊ ÐÒÏÇÒÁÍÍÙ, ÉÌÉ -ÄÒÕÇÏÊ ÕÔÉÌÉÔÙ, ËÏÔÏÒÁÑ ÍÏÖÅÔ ÎÅ ÚÎÁÔØ, ËÁË ÓÐÒÁ×ÉÔØÓÑ Ó ÐÒÉÏÓÔÁÎÏ×ÌÅÎÎÙÍ -Emacs. ïÂÙÞÎÏ, ÅÓÌÉ ×Ù ÎÅ ÓÏÂÉÒÁÅÔÅÓØ ×ÙÈÏÄÉÔØ ÉÚ ÓÉÓÔÅÍÙ, ÔÏ ÌÕÞÛÅ -ÐÒÉÏÓÔÁÎÏ×ÉÔØ Emacs, ÉÓÐÏÌØÚÕÑ C-z ×ÍÅÓÔÏ ÔÏÇÏ, ÞÔÏÂÙ ÐÏËÉÄÁÔØ ÅÇÏ ÓÏ×ÓÅÍ. - -óÕÝÅÓÔ×ÕÅÔ ÏÞÅÎØ ÍÎÏÇÏ ËÏÍÁÎÄ, ÉÓÐÏÌØÚÕÀÝÉÈ ÐÒÅÆÉËÓ C-x. ÷Ù ÕÖÅ ÉÚÕÞÉÌÉ -ÓÌÅÄÕÀÝÉÅ ËÏÍÁÎÄÙ: - - C-x C-f ïÔËÒÙÔØ ÆÁÊÌ - C-x C-s óÏÈÒÁÎÉÔØ ÆÁÊÌ - C-x s óÏÈÒÁÎÉÔØ ÎÅËÏÔÏÒÙÅ ÆÁÊÌÙ - C-x C-b óÐÉÓÏË ÂÕÆÅÒÏ× - C-x b ðÅÒÅËÌÀÞÉÔØÓÑ × ÂÕÆÅÒ - C-x C-c ÷ÙÈÏÄ ÉÚ Emacs - C-x 1 õÄÁÌÑÅÔ ×ÓÅ ÏËÎÁ ËÒÏÍÅ ÏÄÎÏÇÏ - C-x u ïÔÍÅÎÁ - -éÍÅÎÏ×ÁÎÎÙÅ ËÏÍÁÎÄÙ -- ÜÔÏ ËÏÍÁÎÄÙ, ËÏÔÏÒÙÅ ÉÓÐÏÌØÚÕÀÔÓÑ ÇÏÒÁÚÄÏ ÒÅÖÅ, ÉÌÉ -ÉÓÐÏÌØÚÕÀÔÓÑ ÔÏÌØËÏ × ÏÐÒÅÄÅÌÅÎÎÙÈ ÒÅÖÉÍÁÈ. ÷ ËÁÞÅÓÔ×Å ÐÒÉÍÅÒÁ ÍÏÖÎÏ -ÐÒÉ×ÅÓÔÉ ËÏÍÁÎÄÕ ÚÁÍÅÎÙ ÓÔÒÏËÉ, ËÏÔÏÒÁÑ ÚÁÍÅÎÑÅÔ ÏÄÎÕ ÓÔÒÏËÕ ÎÁ ÄÒÕÇÕÀ ×Ï -×ÓÅÍ ÔÅËÓÔÅ. ëÏÇÄÁ ×Ù ÎÁÂÅÒÅÔÅ M-x, Emacs ÐÒÅÄÌÏÖÉÔ ×ÁÍ ××ÅÓÔÉ ÉÍÑ ËÏÍÁÎÄÙ; -× ÎÁÛÅÍ ÓÌÕÞÁÅ, ÜÔÏ ËÏÍÁÎÄÁ "replace-string". îÁÂÅÒÉÔÅ ÌÉÛØ "repl s", -É Emacs ÄÏÐÏÌÎÉÔ ÉÍÑ. ( -- ÜÔÏ ËÌÁ×ÉÛÁ ÔÁÂÕÌÑÃÉÉ, ÏÂÙÞÎÏ ÎÁÈÏÄÑÝÁÑÓÑ -×ÙÛÅ ËÌÁ×ÉÛ CapsLock ÉÌÉ Shift × ÌÅ×ÏÊ ÞÁÓÔÉ ËÌÁ×ÉÁÔÕÒÙ). úÁ×ÅÒÛÉÔÅ ÉÍÑ -ÎÁÖÁÔÉÅÍ . - -ëÏÍÁÎÄÁ ÚÁÍÅÎÙ ÓÔÒÏËÉ (replace-string) ÔÒÅÂÕÅÔ Ä×Á ÁÒÇÕÍÅÎÔÁ -- ÓÔÒÏËÕ, -ËÏÔÏÒÁÑ ÂÕÄÅÔ ÚÁÍÅÎÅÎÁ, É ÓÔÒÏËÕ, ÎÁ ËÏÔÏÒÕÀ ÎÕÖÎÏ ÚÁÍÅÎÉÔØ. ÷Ù ÄÏÌÖÎÙ -ÚÁ×ÅÒÛÁÔØ ËÁÖÄÙÊ ÁÒÇÕÍÅÎÔ ××ÏÄÏÍ . - ->> ðÅÒÅÍÅÓÔÉÔÅ ËÕÒÓÏÒ ÎÁ Ä×Å ÐÕÓÔÙÅ ÓÔÒÏËÉ ÎÉÖÅ ÜÔÏÊ. - îÁÂÅÒÉÔÅ M-x repl sÆÁÊÌÆÁÊÌÙ. - - úÁÍÅÔØÔÅ, ËÁË ÜÔÁ ÓÔÒÏËÁ ÉÚÍÅÎÉÔÓÑ: ×Ù ÚÁÍÅÎÉÔÅ ÓÌÏ×Ï Æ-Á-Ê-Ì - ÓÌÏ×ÏÍ "ÆÁÊÌÙ" ×ÅÚÄÅ, ÇÄÅ ÏÎÏ ×ÓÔÒÅÔÉÔÓÑ, ÎÉÖÅ ÐÏÚÉÃÉÉ ËÕÒÓÏÒÁ. - - -* á÷ôïíáôéþåóëïå óïèòáîåîéå ---------------------------- - -ëÏÇÄÁ ×Ù ÉÚÍÅÎÑÅÔÅ ÆÁÊÌ, ÎÏ ÎÅ ÓÏÈÒÁÎÑÅÔÅ ÅÇÏ, ÔÏ × ÓÌÕÞÁÅ ËÒÁÈÁ ÓÉÓÔÅÍÙ ×Ù -ÍÏÖÅÔÅ ÐÏÔÅÒÑÔØ ÉÎÆÏÒÍÁÃÉÀ. þÔÏÂÙ ÚÁÝÉÔÉÔØ ×ÁÓ ÏÔ ÜÔÏÇÏ, Emacs ÐÅÒÉÏÄÉÞÅÓËÉ -ÓÏÈÒÁÎÑÅÔ ËÁÖÄÙÊ ÆÁÊÌ, ËÏÔÏÒÙÊ ×Ù ÒÅÄÁËÔÉÒÕÅÔÅ. á×ÔÏÍÁÔÉÞÅÓËÏÅ ÓÏÈÒÁÎÅÎÉÅ -ÐÒÏÉÓÈÏÄÉÔ × ÆÁÊÌ, ÉÍÑ ËÏÔÏÒÏÇÏ ÔÁËÏÅ ÖÅ, ÎÏ ÎÁÞÉÎÁÅÔÓÑ É ÚÁËÁÎÞÉ×ÁÅÔÓÑ -ÓÉÍ×ÏÌÏÍ "#"; ÎÁÐÒÉÍÅÒ, ÅÓÌÉ ×ÁÛ ÆÁÊÌ ÎÁÚÙ×ÁÅÔÓÑ "hello.c", ÔÏ Á×ÔÏÍÁÔÉÞÅÓËÉ -ÓÏÈÒÁÎÅÎÎÙÊ ÆÁÊÌ ÂÕÄÅÔ ÎÁÚÙ×ÁÔØÓÑ "#hello.c#". ëÏÇÄÁ ×Ù ÓÏÈÒÁÎÉÔÅ ÆÁÊÌ -ÏÂÙÞÎÙÍ ÓÐÏÓÏÂÏÍ, Emacs ÕÄÁÌÉÔ Á×ÔÏÍÁÔÉÞÅÓËÉ ÓÏÈÒÁÎÅÎÎÙÊ ÆÁÊÌ. - -åÓÌÉ ÓÉÓÔÅÍÁ ÚÁ×ÉÓÌÁ, ÔÏ ×Ù ÍÏÖÅÔÅ ×ÏÓÓÔÁÎÏ×ÉÔØ ×ÁÛÉ ÉÚÍÅÎÅÎÉÑ, ËÏÔÏÒÙÊ ÂÙÌÉ -ÓÏÈÒÁÎÅÎÙ Á×ÔÏÍÁÔÉÞÅÓËÉ, ÐÕÔÅÍ ÏÔËÒÙÔÉÑ ÎÕÖÎÏÇÏ ÆÁÊÌÁ (ÆÁÊÌÁ, ËÏÔÏÒÙÊ ×Ù -ÒÅÄÁËÔÉÒÏ×ÁÌÉ, ÎÅ ÓÏÈÒÁÎÅÎÎÏÇÏ), É ÚÁÔÅÍ ÎÁÂÒÁ× M-x recover-file. -ëÏÇÄÁ Õ ×ÁÓ ÚÁÐÒÏÓÑÔ ÐÏÄÔ×ÅÒÖÄÅÎÉÅ, ÎÁÂÅÒÉÔÅ yes, ÞÔÏÂÙ -×ÏÓÓÔÁÎÏ×ÉÔØ Á×ÔÏÍÁÔÉÞÅÓËÉ ÓÏÈÒÁÎÅÎÎÙÅ ÄÁÎÎÙÅ. - - -* ïâìáóôø üèï (ECHO AREA) -------------------------- - -åÓÌÉ Emacs ×ÉÄÉÔ, ÞÔÏ ×Ù ÍÅÄÌÅÎÎÏ ÎÁÂÉÒÁÅÔÅ ËÏÍÁÎÄÙ ÉÚ ÎÅÓËÏÌØËÉÈ ÓÉÍ×ÏÌÏ×, -ÔÏ ÏÎ ÐÏËÁÚÙ×ÁÅÔ ÉÈ ×ÁÍ ×ÎÉÚÕ ÜËÒÁÎÁ, × ÏÂÌÁÓÔÉ ÎÁÚÙ×ÁÅÍÏÊ "ÏÂÌÁÓÔØ ÜÈÏ". -ïÂÌÁÓÔØ ÜÈÏ -- ÜÔÏ ÓÁÍÁÑ ÎÉÖÎÑÑ ÓÔÒÏËÁ ÜËÒÁÎÁ. - - -* óôòïëá óïóôïñîéñ ------------------- - -óÔÒÏËÁ ÓÒÁÚÕ ÎÁÄ ÏÂÌÁÓÔØÀ ÜÈÏ ÎÁÚÙ×ÁÅÔÓÑ "ÓÔÒÏËÏÊ ÓÏÓÔÏÑÎÉÑ". ÷ÙÇÌÑÄÉÔ ÜÔÁ -ÓÔÒÏËÁ ÐÒÉÍÅÒÎÏ ÔÁË: - ---:** TUTORIAL.ru 63% L749 (Fundamental)----------------------- - -üÔÁ ÓÔÒÏËÁ ÓÏÏÂÝÁÅÔ ÐÏÌÅÚÎÕÀ ÉÎÆÏÒÍÁÃÉÀ Ï ÓÏÓÔÏÑÎÉÉ Emacs É ÔÅËÓÔÁ, ËÏÔÏÒÙÊ -×Ù ÒÅÄÁËÔÉÒÕÅÔÅ. - -÷Ù ÕÖÅ ÚÎÁÅÔÅ, ÞÔÏ ÏÚÎÁÞÁÅÔ ÉÍÑ ÆÁÊÌÁ -- ÜÔÏ ÆÁÊÌ, ËÏÔÏÒÙÊ ×Ù ÏÔËÒÙÌÉ. NN% -ÐÏËÁÚÙ×ÁÅÔ ÔÅËÕÝÕÀ ÐÏÚÉÃÉÀ ËÕÒÓÏÒÁ × ÔÅËÓÔÅ; ÜÔÏ ÏÚÎÁÞÁÅÔ ÞÔÏ NN ÐÒÏÃÅÎÔÏ× -ÔÅËÓÔÁ ÎÁÈÏÄÑÔÓÑ ×ÙÛÅ, ÞÅÍ ÎÁÞÁÌÏ ÜËÒÁÎÁ. åÓÌÉ ÐÅÒ×ÁÑ ÓÔÒÏËÁ ×ÓÅÇÏ ÔÅËÓÔÁ -ÎÁÈÏÄÉÔÓÑ × ÐÅÒ×ÏÊ ÓÔÒÏËÅ ÜËÒÁÎÁ, ×Ù ÔÁÍ Õ×ÉÄÉÔÅ "Top" ×ÍÅÓÔÏ "0%". åÓÌÉ ÎÁ -ÜËÒÁÎÅ ÏÔÏÂÒÁÖÁÅÔÓÑ ÐÏÓÌÅÄÎÑÑ ÓÔÒÏËÁ, ÔÏ ÂÕÄÅÔ ÏÔÏÂÒÁÖÅÎÏ "Bot". åÓÌÉ ÔÅËÓÔ -ÎÁÓÔÏÌØËÏ ÍÁÌ, ÞÔÏ ×ÅÓØ ×ÍÅÝÁÅÔÓÑ × ÜËÒÁÎ, ÔÏ ÓÔÒÏËÁ ÓÏÓÔÏÑÎÉÑ ÓÏÏÂÝÉÔ -"All". - -âÕË×Á L É ÃÉÆÒÙ ÐÏËÁÚÙ×ÁÀÔ ÐÏÚÉÃÉÀ ÄÒÕÇÉÍ ÓÐÏÓÏÂÏÍ -- ÏÎÉ ÐÏËÁÚÙ×ÁÀÔ ÎÏÍÅÒ -ÓÔÒÏËÉ × ËÏÔÏÒÏÊ ÎÁÈÏÄÉÔÓÑ ËÕÒÓÏÒ. - -ú×ÅÚÄÏÞËÉ × ÎÁÞÁÌÅ ÓÔÒÏËÉ ÏÚÎÁÞÁÀÔ, ÞÔÏ ×Ù ÉÚÍÅÎÑÌÉ ÔÅËÓÔ. ðÒÉ ÏÔËÒÙÔÉÉ ÉÌÉ -ÓÏÈÒÁÎÅÎÉÉ ÆÁÊÌÁ, ÜÔÁ ÞÁÓÔØ ÓÔÒÏËÉ ÂÕÄÅÔ ÓÏÄÅÒÖÁÔØ ÎÅ Ú×ÅÚÄÏÞËÉ, Á ÔÉÒÅ. - -þÁÓÔØ ÓÔÒÏËÉ ÓÔÁÔÕÓÁ ×ÎÕÔÒÉ ÓËÏÂÏË ÓÏÏÂÝÁÅÔ ×ÁÍ Ï ÒÅÖÉÍÅ ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ, -ËÏÔÏÒÙÍ ×Ù ÓÅÊÞÁÓ ÉÓÐÏÌØÚÕÅÔÅ. óÔÁÎÄÁÒÔÎÙÊ ÒÅÖÉÍ -- Fundamental, ÏÎ -ÉÓÐÏÌØÚÕÅÔÓÑ É ÄÁÎÎÏÍ ÄÏËÕÍÅÎÔÅ. üÔÏ ÐÒÉÍÅÒ "ÏÓÎÏ×ÎÏÇÏ ÒÅÖÉÍÁ" ("major -mode"). - -Emacs ÉÍÅÅÔ ÍÎÏÇÏ ÒÁÚÌÉÞÎÙÈ ÏÓÎÏ×ÎÙÈ ÒÅÖÉÍÏ×. îÅËÏÔÏÒÙÅ ÉÚ ÒÅÖÉÍÏ× -ÉÓÐÏÌØÚÕÀÔÓÑ ÄÌÑ ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ ÔÅËÓÔÁ ÎÁ ÒÁÚÌÉÞÎÙÈ ÑÚÙËÁÈ É/ÉÌÉ ÒÁÚÌÉÞÎÙÈ -×ÉÄÏ× ÔÅËÓÔÁ, ÔÁËÉÅ ËÁË Lisp-ÒÅÖÉÍ, Text-ÒÅÖÉÍ É ÐÒ. ÷ ËÁÖÄÙÊ ÍÏÍÅÎÔ -×ÒÅÍÅÎÉ ÄÅÊÓÔ×ÕÅÔ ÔÏÌØËÏ ÏÄÉÎ ÏÓÎÏ×ÎÏÊ ÒÅÖÉÍ, É ÅÇÏ ÎÁÚ×ÁÎÉÅ ×Ù ÍÏÖÅÔÅ ÎÁÊÔÉ -× ÓËÏÂËÁÈ -- ÔÁÍ, ÇÄÅ ÓÅÊÞÁÓ ÎÁÈÏÄÉÔÓÑ ÓÌÏ×Ï "Fundamental" (ÂÁÚÏ×ÙÊ). - -ëÁÖÄÙÊ ÏÓÎÏ×ÎÏÊ ÒÅÖÉÍ ÚÁÓÔÁ×ÌÑÅÔ ÎÅËÏÔÏÒÙÅ ËÏÍÁÎÄÙ ×ÅÓÔÉ ÓÅÂÑ ÎÅÍÎÏÇÏ ÐÏ -ÄÒÕÇÏÍÕ. îÁÐÒÉÍÅÒ, ÜÔÏ ËÏÍÁÎÄÙ ÓÏÚÄÁÎÉÑ ËÏÍÍÅÎÔÁÒÉÅ× × ÐÒÏÇÒÁÍÍÅ, É -ÐÏÓËÏÌØËÕ × ËÁÖÄÏÍ ÑÚÙËÅ ÐÒÏÇÒÁÍÍÉÒÏ×ÁÎÉÑ ËÏÍÍÅÎÔÁÒÉÉ ÚÁÐÉÓÙ×ÁÀÔÓÑ -ÐÏ-Ó×ÏÅÍÕ, ÔÏ É ËÁÖÄÙÊ ÏÓÎÏ×ÎÏÊ ÒÅÖÉÍ ×ÓÔÁ×ÌÑÅÔ ÉÈ ÐÏ-ÒÁÚÎÏÍÕ. ëÁÖÄÙÊ -ÏÓÎÏ×ÎÏÊ ÒÅÖÉÍ ÉÍÅÅÔ ÉÍÅÎÏ×ÁÎÎÕÀ ËÏÍÁÎÄÕ, ËÏÔÏÒÁÑ ×ËÌÀÞÁÅÔ ÅÇÏ. îÁÐÒÉÍÅÒ, -M-x fundamental-mode -- ÜÔÏ ËÏÍÁÎÄÁ, ËÏÔÏÒÁÑ ×ËÌÀÞÁÅÔ ÂÁÚÏ×ÙÊ (Fundamental) -ÒÅÖÉÍ. - -åÓÌÉ ×Ù ÒÅÄÁËÔÉÒÕÅÔÅ ÔÅËÓÔ ÎÁ ÅÓÔÅÓÔ×ÅÎÎÏÍ ÑÚÙËÅ, ÎÁÐÒÉÍÅÒ, ËÁË ÜÔÏÔ ÆÁÊÌ, -ÔÏ ×Ù ×ÅÒÏÑÔÎÏ ÄÏÌÖÎÙ ÐÅÒÅËÌÀÞÉÔØÓÑ × Text-ÒÅÖÉÍ. - ->> îÁÂÅÒÉÔÅ M-x text mode. - -îÅ ×ÏÌÎÕÊÔÅÓØ, ÎÉ ÏÄÎÁ ÉÚ ×ÙÕÞÅÎÎÙÈ ×ÁÍÉ ËÏÍÁÎÄ Emacs ÎÅ ÉÚÍÅÎÉÌÁÓØ. îÏ ×Ù -ÍÏÖÅÔÅ ÚÁÍÅÔÉÔØ, ÞÔÏ M-f É M-b ÔÅÐÅÒØ ÒÁÓÓÍÁÔÒÉ×ÁÀÔ ÁÐÏÓÔÒÏÆÙ ËÁË ÞÁÓÔØ -ÓÌÏ×Á. òÁÎÅÅ, × ÂÁÚÏ×ÏÍ ÒÅÖÉÍÅ (Fundamental mode), M-f É M-b ÐÏÎÉÍÁÌÉ -ÁÐÏÓÔÒÏÆÙ ËÁË ÒÁÚÄÅÌÉÔÅÌÉ ÓÌÏ×. - -ïÓÎÏ×ÎÏÊ ÒÅÖÉÍ ÏÂÙÞÎÏ ÄÅÌÁÅÔ ÎÅÂÏÌØÛÉÅ ÉÚÍÅÎÅÎÉÑ, ÔÁËÉÅ ËÁË: ÂÏÌØÛÉÎÓÔ×Ï -ËÏÍÁÎÄ ÄÅÌÁÀÔ "ÏÄÎÕ É ÔÕ ÖÅ ÒÁÂÏÔÕ" × ËÁÖÄÏÍ ÉÚ ÒÅÖÉÍÏ×, ÎÏ ÉÈ ÄÅÊÓÔ×ÉÅ -ÏÔÌÉÞÁÅÔÓÑ ËÁËÏÊ-ÎÉÂÕÄØ ÍÅÌÏÞØÀ. - -äÌÑ ÐÒÏÓÍÏÔÒÁ ÄÏËÕÍÅÎÔÁÃÉÉ Ï ÔÅËÕÝÅÍ ÏÓÎÏ×ÎÏÍ ÒÅÖÉÍÅ, ÎÁÖÍÉÔÅ C-h m. - ->> éÓÐÏÌØÚÕÊÔÅ C-u C-v ÏÄÉÎ ÒÁÚ ÉÌÉ ÂÏÌÅÅ, ÞÔÏÂÙ ÒÁÓÐÏÌÏÖÉÔØ ÜÔÕ ÓÔÒÏËÕ - ÂÌÉÖÅ Ë ×ÅÒÈÕ ÜËÒÁÎÁ. ->> îÁÂÅÒÉÔÅ C-h m, ÞÔÏÂÙ ÐÏÓÍÏÔÒÅÔØ ÏÔÌÉÞÉÑ Text-ÒÅÖÉÍÁ ÏÔ ÂÁÚÏ×ÏÇÏ. ->> îÁÂÅÒÉÔÅ C-x 1, ÞÔÏÂÙ ÕÂÒÁÔØ ÄÏËÕÍÅÎÔÁÃÉÀ Ó ÇÌÁÚ ÄÏÌÏÊ :) - -ïÓÎÏ×ÎÏÊ ÒÅÖÉÍ ÎÁÚÙ×ÁÅÔÓÑ ÏÓÎÏ×ÎÙÍ ÐÏÔÏÍÕ, ÞÔÏ ÔÁËÖÅ ÓÕÝÅÓÔ×ÕÀÔ -ÄÏÐÏÌÎÉÔÅÌØÎÙÅ (minor) ÒÅÖÉÍÙ. äÏÐÏÌÎÉÔÅÌØÎÙÅ ÒÅÖÉÍÙ ÎÅ Ñ×ÌÑÀÔÓÑ -ÁÌØÔÅÒÎÁÔÉ×ÁÍÉ ÏÓÎÏ×ÎÙÍ, ÏÎÉ ÔÏÌØËÏ ÎÅÍÎÏÇÏ ÉÚÍÅÎÑÀÔ ÉÈ ÐÏ×ÅÄÅÎÉÅ. ëÁÖÄÙÊ -ÄÏÐÏÌÎÉÔÅÌØÎÙÊ ÒÅÖÉÍ ×ËÌÀÞÁÅÔÓÑ/×ÙËÌÀÞÁÅÔÓÑ ÎÅÚÁ×ÉÓÉÍÏ ÏÔ ÄÒÕÇÉÈ -ÄÏÐÏÌÎÉÔÅÌØÎÙÈ ÒÅÖÉÍÏ×, É ÎÅÚÁ×ÉÓÉÍÏ ÏÔ ×ÁÛÅÇÏ ÏÓÎÏ×ÎÏÇÏ ÒÅÖÉÍÁ. ÷Ù ÍÏÖÅÔÅ -ÉÓÐÏÌØÚÏ×ÁÔØ ÏÓÎÏ×ÎÏÊ ÒÅÖÉÍ ÂÅÚ ÄÏÐÏÌÎÉÔÅÌØÎÙÈ, ÉÌÉ Ó ÌÀÂÏÊ ÉÈ ËÏÍÂÉÎÁÃÉÅÊ. - -ïÄÉÎ ÉÚ ÄÏÐÏÌÎÉÔÅÌØÎÙÈ ÒÅÖÉÍÏ× ÏÞÅÎØ ÐÏÌÅÚÅÎ, ÏÓÏÂÅÎÎÏ ÄÌÑ ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ -ÔÅËÓÔÁ -- ÜÔÏ ÒÅÖÉÍ Á×ÔÏÚÁÐÏÌÎÅÎÉÑ (Auto Fill mode). ëÏÇÄÁ ÜÔÏÔ ÒÅÖÉÍ -×ËÌÀÞÅÎ, ÔÏ Emacs ÒÁÚÒÙ×ÁÅÔ ÓÔÒÏËÉ ÍÅÖÄÕ ÓÌÏ×ÁÍÉ Á×ÔÏÍÁÔÉÞÅÓËÉ, × ÔÅÈ -ÓÌÕÞÁÑÈ ËÏÇÄÁ ×Ù ×ÓÔÁ×ÌÑÅÔÅ ÔÅËÓÔ É ÄÅÌÁÅÔÅ ÓÔÒÏËÉ ÓÌÉÛËÏÍ ÄÌÉÎÎÙÍÉ. - -÷Ù ÍÏÖÅÔÅ ×ËÌÀÞÉÔØ ÒÅÖÉÍ Á×ÔÏÚÁÐÏÌÎÅÎÉÑ, ÎÁÂÒÁ× M-x auto fill mode. -ëÏÇÄÁ ÜÔÏÔ ÒÅÖÉÍ ×ËÌÀÞÅÎ, ÅÇÏ ÍÏÖÎÏ ×ÙËÌÀÞÉÔØ Ó ÐÏÍÏÝØÀ ÔÏÊ ÖÅ ËÏÍÁÎÄÙ -- -M-x auto fill mode. åÓÌÉ ÒÅÖÉÍ ×ËÌÀÞÅÎ, ÔÏ ÔÁËÁÑ ËÏÍÁÎÄÁ ÅÇÏ -×ÙËÌÀÞÉÔ, ÅÓÌÉ ×ÙËÌÀÞÅÎ, ÔÏ ×ËÌÀÞÉÔ. íÙ ÎÁÚÙ×ÁÅÍ ÜÔÏ ËÏÍÁÎÄÏÊ "ÐÅÒÅËÌÀÞÅÎÉÑ -ÒÅÖÉÍÁ". - ->> îÁÂÅÒÉÔÅ M-x auto fill mode. úÁÔÅÍ ××ÏÄÉÔÅ ÓÔÒÏËÕ ÉÚ ÓÌÏ× "ÆÙ×Á " - ÐÏËÁ ÎÅ Õ×ÉÄÉÔÅ, ËÁË ÏÎÁ ÒÁÚÄÅÌÉÔÓÑ ÎÁ Ä×Å ÓÔÒÏËÉ. ÷Ù ÄÏÌÖÎÙ ÐÏÍÅÝÁÔØ - ÐÒÏÂÅÌÙ ÍÅÖÄÕ ÓÌÏ×ÁÍÉ, ÐÏÔÏÍÕ ÞÔÏ ÒÅÖÉÍ Á×ÔÏÚÁÐÏÌÎÅÎÉÑ ÒÁÚÂÉ×ÁÅÔ ÓÔÒÏËÉ - ÔÏÌØËÏ ÐÏ ÐÒÏÂÅÌÁÍ. - -çÒÁÎÉÃÁ ÒÁÚÂÉÅÎÉÑ ÏÂÙÞÎÏ ÒÁ×ÎÁ 70-ÔÉ ÓÉÍ×ÏÌÁÍ, ÎÏ ×Ù ÍÏÖÅÔÅ ÉÚÍÅÎÉÔØ ÅÅ -ÉÓÐÏÌØÚÕÑ ËÏÍÁÎÄÕ C-x f. ÷Ù ÄÏÌÖÎÙ ÚÁÄÁÔØ ÇÒÁÎÉÃÕ × ×ÉÄÅ ÞÉÓÌÏ×ÏÇÏ -ÁÒÇÕÍÅÎÔÁ ÄÌÑ ÜÔÏÊ ËÏÍÁÎÄÙ. - ->> ÷×ÅÄÉÔÅ C-x f Ó ÁÒÇÕÍÅÎÔÏÍ 20 (C-u 2 0 C-x f). úÁÔÅÍ ××ÅÄÉÔÅ ËÁËÏÊ-ÎÉÂÕÄØ - ÔÅËÓÔ, É ÐÏÓÍÏÔÒÉÔÅ ËÁË Emacs ÚÁÐÏÌÎÑÅÔ ÓÔÒÏËÉ ÐÏ 20 ÓÉÍ×ÏÌÏ× × ËÁÖÄÏÊ. - ÷ÅÒÎÉÔÅ ÚÎÁÞÅÎÉÅ ÇÒÁÎÉÃÙ ÒÁ×ÎÏÅ 70 ÎÁÚÁÄ, ÉÓÐÏÌØÚÕÑ ËÏÍÁÎÄÕ C-x f. - -åÓÌÉ ×Ù ÓÄÅÌÁÌÉ ÉÚÍÅÎÅÎÉÑ × ÓÅÒÅÄÉÎÅ ÐÁÒÁÇÒÁÆÁ, ÔÏ Á×ÔÏÚÁÐÏÌÎÅÎÉÅ ÎÅ -ÐÅÒÅÆÏÒÍÁÔÉÒÕÅÔ ÔÅËÓÔ Á×ÔÏÍÁÔÉÞÅÓËÉ. þÔÏÂÙ ÐÅÒÅÆÏÒÍÁÔÉÒÏ×ÁÔØ ÐÁÒÁÇÒÁÆ, -ÎÁÂÅÒÉÔÅ M-q (META-q) ËÏÇÄÁ ËÕÒÓÏÒ ÎÁÈÏÄÉÔÓÑ ×ÎÕÔÒÉ ÐÁÒÁÇÒÁÆÁ. - ->> ðÅÒÅÍÅÓÔÉÔÅ ËÕÒÓÏÒ × ÐÒÅÄÙÄÕÝÉÊ ÐÁÒÁÇÒÁÆ, É ÎÁÖÍÉÔÅ M-q. - - -* ðïéóë -------- - -Emacs ÕÍÅÅÔ ÉÓËÁÔØ ÓÔÒÏËÉ (ÎÅÐÒÅÒÙ×ÎÙÅ ÇÒÕÐÐÙ ÓÉÍ×ÏÌÏ× ÉÌÉ ÓÌÏ×Á) ×ÐÅÒÅÄ ÉÌÉ -ÎÁÚÁÄ ÐÏ ÔÅËÓÔÕ. ðÏÉÓË ÓÔÒÏËÉ -- ÜÔÏ ËÏÍÁÎÄÁ ÐÅÒÅÍÅÝÅÎÉÑ ËÕÒÓÏÒÁ; ÏÎÁ -ÐÅÒÅÍÅÝÁÅÔ ËÕÒÓÏÒ × ÓÌÅÄÕÀÝÕÀ ÔÏÞËÕ, ÇÄÅ ÎÁÊÄÅÎÁ ÉÓËÏÍÁÑ ÓÔÒÏËÁ. - -ëÏÍÁÎÄÁ ÐÏÉÓËÁ Emacs ÏÔÌÉÞÁÅÔÓÑ ÏÔ ÁÎÁÌÏÇÉÞÎÙÈ ËÏÍÁÎÄ ÂÏÌØÛÉÎÓÔ×Á ÄÒÕÇÉÈ -ÒÅÄÁËÔÏÒÏ× ÔÅÍ, ÞÔÏ ÏÎÁ ÉÎËÒÅÍÅÎÔÁÌØÎÁÑ. üÔÏ ÏÚÎÁÞÁÅÔ, ÞÔÏ ÐÏÉÓË ÐÒÏÉÓÈÏÄÉÔ -ÐÏ ÍÅÒÅ, ÔÏÇÏ ËÁË ×Ù ÎÁÂÉÒÁÅÔÅ ÉÓËÏÍÕÀ ÓÔÒÏËÕ. - -ëÏÍÁÎÄÁ, ÎÁÞÉÎÁÀÝÁÑ ÐÏÉÓË ×ÐÅÒÅÄ -- C-s, Á C-r ÉÝÅÔ ÎÁÚÁÄ. ðïäïöäéôå! îÅ -ÎÕÖÎÏ ÐÒÏÂÏ×ÁÔØ ÐÒÑÍÏ ÓÅÊÞÁÓ. - -ëÏÇÄÁ ×Ù ÎÁÖÍÅÔÅ C-s, ×Ù Õ×ÉÄÉÔÅ ÓÔÒÏËÕ "I-search", ÐÏÑ×É×ÛÕÀÓÑ × ÏÂÌÁÓÔÉ ÜÈÏ. -÷ÁÍ ÓÏÏÂÝÁÅÔÓÑ, ÞÔÏ Emacs ÖÄÅÔ ××ÏÄÁ ÓÌÏ×Á, ËÏÔÏÒÏÅ ×Ù ÈÏÔÉÔÅ ÎÁÊÔÉ. - ÚÁ×ÅÒÛÁÅÔ ÐÏÉÓË. - ->> ôÅÐÅÒØ ÎÁÖÍÉÔÅ C-s ÄÌÑ ÎÁÞÁÌÁ ÐÏÉÓËÁ. íÅÄÌÅÎÎÏ, ÐÏ ÏÄÎÏÊ ÂÕË×Å, ÎÁÂÉÒÁÊÔÅ - ÓÌÏ×Ï 'ËÕÒÓÏÒ', ÏÓÔÁÎÁ×ÌÉ×ÁÑÓØ ÐÏÓÌÅ ËÁÖÄÏÊ ××ÅÄÅÎÎÏÊ ÂÕË×Ù É ÚÁÍÅÞÁÑ ÞÔÏ - ÐÒÏÉÓÈÏÄÉÔ Ó ËÕÒÓÏÒÏÍ. - óÅÊÞÁÓ ×Ù ÎÁÛÌÉ ÐÅÒ×ÏÅ ×ÈÏÖÄÅÎÉÅ ÓÌÏ×Á "ËÕÒÓÏÒ". ->> îÁÖÍÉÔÅ C-s ÓÎÏ×Á, ÞÔÏÂÙ ÎÁÊÔÉ ÓÌÅÄÕÀÝÅÅ ×ÈÏÖÄÅÎÉÅ ÓÌÏ×Á "ËÕÒÓÏÒ". ->> ôÅÐÅÒØ ÎÁÖÍÉÔÅ ÞÅÔÙÒÅ ÒÁÚÁ É ÐÒÏÓÌÅÄÉÔÅ ÚÁ ÐÅÒÅÍÅÝÅÎÉÑÍÉ ËÕÒÓÏÒÁ. ->> îÁÖÍÉÔÅ ÄÌÑ ÚÁ×ÅÒÛÅÎÉÑ ÐÏÉÓËÁ. - -÷Ù ÚÁÍÅÔÉÌÉ, ÞÔÏ ÐÒÏÉÓÈÏÄÉÌÏ? Emacs × ÒÅÖÉÍÅ ÉÎËÒÅÍÅÎÔÁÌØÎÏÇÏ ÐÏÉÓËÁ ÐÙÔÁÌÓÑ -ÐÅÒÅÈÏÄÉÔØ Ë ÓÔÒÏËÁÍ, ÓÏ×ÐÁÄÁÀÝÉÍ Ó ÎÁÂÉÒÁÅÍÏÊ ×ÁÍÉ ÓÔÒÏËÏÊ, ÐÏÄÓ×ÅÞÉ×ÁÑ ÉÈ. -þÔÏÂÙ ÐÅÒÅÊÔÉ Ë ÓÌÅÄÕÀÝÅÍÕ ×ÈÏÖÄÅÎÉÑ ÓÌÏ×Á 'ËÕÒÓÏÒ' ÐÒÏÓÔÏ ÎÁÖÍÉÔÅ C-s -ÓÎÏ×Á. åÓÌÉ ÂÏÌØÛÅ ÎÅÔ ×ÈÏÖÄÅÎÉÊ, ÔÏ Emacs ÉÚÄÁÓÔ Ú×ÕËÏ×ÏÊ ÓÉÇÎÁÌ, É -ÓÏÏÂÝÉÔ, ÞÔÏ ×ÁÛ ÐÏÉÓË ÎÅ ÕÄÁÌÓÑ ("failing"), C-g ÔÁËÖÅ ÍÏÖÅÔ ÏÔÍÅÎÉÔØ -ÐÏÉÓË. - -úáíåþáîéå: îÁ ÎÅËÏÔÏÒÙÈ ÓÉÓÔÅÍÁÈ, ××ÏÄ C-x C-s ÚÁÂÌÏËÉÒÕÅÔ ÜËÒÁÎ, ÔÁË ÞÔÏ ×Ù -ÎÅ Õ×ÉÄÉÔÅ ÐÏÓÌÅÄÕÀÝÅÇÏ ×Ù×ÏÄÁ Emacs`Á. ôÁËÏÅ ÐÏ×ÅÄÅÎÉÅ ÏÚÎÁÞÁÅÔ, ÞÔÏ -ÏÐÅÒÁÃÉÏÎÎÁÑ ÓÉÓÔÅÍÁ ÉÍÅÅÔ "ÏÓÏÂÅÎÎÏÓÔØ", ÉÍÅÎÕÅÍÕÀ "flow control", -ÐÅÒÅÈ×ÁÔÙ×ÁÀÝÕÀ ÓÏÞÅÔÁÎÉÅ C-s É ÎÅ ÐÒÏÐÕÓËÁÀÝÕÀ ÜÔÏÔ ÓÉÍ×ÏÌ Ë Emacs`Õ. äÌÑ -ÓÎÑÔÉÑ ÂÌÏËÉÒÏ×ËÉ ÜËÒÁÎÁ, ÎÁÖÍÉÔÅ C-q. ïÂÒÁÔÉÔÅÓØ Ë ÒÁÚÄÅÌÕ "Spontaneous -Entry to Incremental Search" ÒÕËÏ×ÏÄÓÔ×Á Emacs, ÞÔÏÂÙ ÕÚÎÁÔØ Ï ÔÏÍ, ËÁË -ÂÏÒÏÔØÓÑ Ó ÜÔÏÊ "ÏÓÏÂÅÎÎÏÓÔØÀ". - -åÓÌÉ ×Ù ×Ï ×ÒÅÍÑ ÉÎËÒÅÍÅÎÔÁÌØÎÏÇÏ ÐÏÉÓËÁ ÎÁÖÍÅÔÅ , ÔÏ ×Ù ÚÁÍÅÔÉÔÅ, -ÞÔÏ ÐÏÓÌÅÄÎÉÊ ÓÉÍ×ÏÌ × ÉÓËÏÍÏÊ ÓÔÒÏËÅ ÕÄÁÌÉÌÓÑ, É ÐÏÉÓË ×ÅÒÎÕÌÓÑ Ë -ÐÒÅÄÙÄÕÝÅÍÕ ÎÁÊÄÅÎÎÏÍÕ ÍÅÓÔÕ. îÁÐÒÉÍÅÒ, ÐÒÅÄÐÏÌÏÖÉÍ, ÞÔÏ ×Ù ÎÁÂÒÁÌÉ "Ë", -ÐÏÉÓË ÐÅÒÅÊÄÅÔ Ë ÐÅÒ×ÏÍÕ ×ÈÏÖÄÅÎÉÀ ÓÉÍ×ÏÌÁ "Ë". ôÅÐÅÒØ, ÅÓÌÉ ×Ù ÎÁÂÅÒÅÔÅ -"Õ", ËÕÒÓÏÒ ÐÅÒÅÊÄÅÔ Ë ÐÅÒ×ÏÍÕ ×ÈÏÖÄÅÎÉÀ "ËÕ". îÁÖÁÔÉÅ ÕÄÁÌÉÔ -ÓÉÍ×ÏÌ "Õ" ÉÚ ÓÔÒÏËÉ ÐÏÉÓËÁ, É ËÕÒÓÏÒ ×ÅÒÎÅÔÓÑ Ë ÐÅÒ×ÏÍÕ ×ÈÏÖÄÅÎÉÀ "Ë". - -åÓÌÉ ×Ù ×Ï ×ÒÅÍÑ ÐÏÉÓËÁ ××ÅÄÅÔÅ control- ÉÌÉ meta- ÓÉÍ×ÏÌ (ÚÁ ÎÅËÏÔÏÒÙÍÉ -ÉÓËÌÀÞÅÎÉÑÍÉ, ÔÁËÉÍÉ, ËÁË ÓÉÍ×ÏÌÙ ÎÁÞÉÎÁÀÝÉÅ ÐÏÉÓË, Á ÉÍÅÎÎÏ C-s É C-r), -ÐÏÉÓË ÐÒÅËÒÁÔÉÔÓÑ. - -C-s ÎÁÞÉÎÁÅÔ ÐÏÉÓË É ÉÝÅÔ ÌÀÂÙÅ ×ÈÏÖÄÅÎÉÑ ÉÓËÏÍÏÊ ÓÔÒÏËÉ ðïóìå ÔÅËÕÝÅÊ -ÐÏÚÉÃÉÉ ËÕÒÓÏÒÁ. åÓÌÉ ×Ù ÈÏÔÉÔÅ ÎÁÊÔÉ ÞÔÏ-ÔÏ ÒÁÎÅÅ × ÔÅËÓÔÅ, ÔÏ ÎÁÖÍÉÔÅ -C-r. ÷ÓÅ, ÞÔÏ ÍÙ ÇÏ×ÏÒÉÌÉ Ï C-s, ÐÒÉÍÅÎÉÍÏ É Ë C-r, ÚÁ ÉÓËÌÀÞÅÎÉÅÍ -ÐÒÏÔÉ×ÏÐÏÌÏÖÎÏÇÏ ÎÁÐÒÁ×ÌÅÎÉÑ ÐÏÉÓËÁ. - - -* íîïöåóô÷ï ïëïî (MULTIPLE WINDOWS) ------------------------------------ - -ïÄÎÁ ÉÚ ÐÒÉÑÔÎÙÈ ÏÓÏÂÅÎÎÏÓÔÅÊ Emacs Ñ×ÌÑÅÔÓÑ ÔÏ, ÞÔÏ ×Ù ÍÏÖÅÔÅ ÏÄÎÏ×ÒÅÍÅÎÎÏ -ÏÔÏÂÒÁÖÁÔØ ÎÁ ÜËÒÁÎÅ ÎÅÓËÏÌØËÏ ÏËÏÎ. - ->> ðÅÒÅÍÅÓÔÉÔÅ ËÕÒÓÏÒ ÎÁ ÜÔÕ ÓÔÒÏËÕ, É ÎÁÂÅÒÉÔÅ C-u 0 C-l (ÜÔÏ CONTROL-L, Á - ÎÅ CONTROL-1). - ->> ôÅÐÅÒØ ÎÁÂÅÒÉÔÅ C-x 2, ÞÔÏ ÒÁÚÄÅÌÉÔ ÜËÒÁÎ ÎÁ Ä×Á ÏËÎÁ. - ïÂÁ ÏËÎÁ ÏÔÏÂÒÁÖÁÀÔ ÕÞÅÂÎÉË. ëÕÒÓÏÒ ÏÓÔÁÌÓÑ × ×ÅÒÈÎÅÍ ÏËÎÅ. - ->> îÁÖÍÉÔÅ C-M-v ÄÌÑ ÐÒÏËÒÕÔËÉ ÎÉÖÎÅÇÏ ÏËÎÁ. - (ÅÓÌÉ Õ ×ÁÓ ÎÅÔ ÎÁÓÔÏÑÝÅÊ ËÎÏÐËÉ META (Alt), ÔÏ ÎÁÖÍÉÔÅ C-v.) - ->> îÁÖÍÉÔÅ C-x o ("o" ÏÔ ÓÌÏ×Á "other" -- ÄÒÕÇÏÅ) ÄÌÑ ÐÅÒÅÍÅÝÅÎÉÑ ËÕÒÓÏÒÁ × - ÎÉÖÎÅÅ ÏËÎÏ. ->> éÓÐÏÌØÚÕÊÔÅ C-v É M-v × ÎÉÖÎÅÍ ÏËÎÅ, ÄÌÑ ÐÒÏËÒÕÔËÉ ÔÅËÓÔÁ. - ðÒÏÄÏÌÖÉÔÅ ÞÔÅÎÉÅ ÜÔÉÈ ÉÎÓÔÒÕËÃÉÊ × ×ÅÒÈÎÅÍ ÏËÎÅ. - ->> îÁÖÍÉÔÅ C-x o ÓÎÏ×Á, ÞÔÏÂÙ ÐÅÒÅÍÅÓÔÉÔØ ËÕÒÓÏÒ ÎÁÚÁÄ × ×ÅÒÈÎÅÅ ÏËÎÏ. - ëÕÒÓÏÒ × ×ÅÒÈÎÅÍ ÏËÎÅ ÔÁÍ ÖÅ, ÇÄÅ É ÂÙÌ ÄÏ ÔÏÇÏ. - -÷Ù ÍÏÖÅÔÅ ÐÒÏÄÏÌÖÁÔØ ÐÅÒÅËÌÀÞÁÔØÓÑ ÍÅÖÄÕ ÏËÎÁÍÉ, ÉÓÐÏÌØÚÕÑ C-x o. ëÁÖÄÏÅ -ÏËÎÏ ÈÒÁÎÉÔ Ó×ÏÀ ÐÏÚÉÃÉÀ ËÕÒÓÏÒÁ, ÎÏ ÔÏÌØËÏ ÏÄÎÏ ÐÏËÁÚÙ×ÁÅÔ ËÕÒÓÏÒ. ÷ÓÅ -ÏÂÙÞÎÙÅ ËÏÍÁÎÄÙ ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ ÐÒÉÍÅÎÑÀÔÓÑ Ë ÏËÎÕ, × ËÏÔÏÒÏÍ ÏÔÏÂÒÁÖÁÅÔÓÑ -ËÕÒÓÏÒ. íÙ ÎÁÚÙ×ÁÅÍ ÜÔÏ ÏËÎÏ "×ÙÂÒÁÎÎÙÍ" ("selected window"). - -ëÏÍÁÎÄÁ C-M-v ÏÞÅÎØ ÕÄÏÂÎÁ, ËÏÇÄÁ ×Ù ÒÅÄÁËÔÉÒÕÅÔÅ ÔÅËÓÔ × ÏÄÎÏÍ ÏËÎÅ, Á -×ÔÏÒÏÅ ÉÓÐÏÌØÚÕÅÔÅ × ËÁÞÅÓÔ×Å ÓÐÒÁ×ÏÞÎÉËÁ. ÷Ù ÍÏÖÅÔÅ ×ÓÅÇÄÁ ÓÏÈÒÁÎÑÔØ -ËÕÒÓÏÒ × ÏËÎÅ ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ É ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏ ÐÒÏÄ×ÉÇÁÔØÓÑ ×Ï ×ÔÏÒÏÍ, -ÉÓÐÏÌØÚÕÑ C-M-v. - -C-M-v -- ÐÒÉÍÅÒ CONTROL-META ÓÉÍ×ÏÌÁ. åÓÌÉ Õ ×ÁÓ ÅÓÔØ ÎÁÓÔÏÑÝÁÑ ËÎÏÐËÁ META -(Alt), ÔÏ ×Ù ÍÏÖÅÔÅ ÎÁÂÒÁÔØ C-M-v, ÎÁÖÁ× ÏÄÎÏ×ÒÅÍÅÎÎÏ CONTROL É META É, ÎÅ -ÏÔÐÕÓËÁÑ ÉÈ, ÎÁÖÁÔØ v. é ÎÅ ×ÁÖÎÏ, ËÁËÁÑ ÉÚ ËÌÁ×ÉÛ ÂÕÄÅÔ ÎÁÖÁÔÁ ÐÅÒ×ÏÊ, -CONTROL ÉÌÉ META, ÐÏÓËÏÌØËÕ ÜÔÉ ËÎÏÐËÉ ÍÏÄÉÆÉÃÉÒÕÀÔ ÔÉÐ ÓÉÍ×ÏÌÁ. - -åÓÌÉ Õ ×ÁÓ ÎÅÔ ÎÁÓÔÏÑÝÅÊ ËÎÏÐËÉ META, É ×ÍÅÓÔÏ ÎÅÅ ×Ù ÉÓÐÏÌØÚÕÅÔÅ , ÔÏ -ÐÏÒÑÄÏË ÄÏÌÖÅÎ ÂÙÔØ ÓÌÅÄÕÀÝÉÍ: ×Ù ÄÏÌÖÎÙ ÎÁÖÁÔØ , Á ÚÁÔÅÍ CTRL-v; -CONTROL- v ÎÅ ÂÕÄÅÔ ÒÁÂÏÔÁÔØ. üÔÏ ÐÒÏÉÓÈÏÄÉÔ ÐÏÔÏÍÕ, ÞÔÏ ÉÍÅÅÔ -Ó×ÏÊ ÓÏÂÓÔ×ÅÎÎÙÊ ÓÉÍ×ÏÌ -- ÜÔÏ ÎÅ ÍÏÄÉÆÉÃÉÒÕÀÝÁÑ ËÎÏÐËÁ. - ->> îÁÖÍÉÔÅ C-x 1 (× ×ÅÒÈÎÅÍ ÏËÎÅ), ÞÔÏÂÙ ÉÚÂÁ×ÉÔØÓÑ ÏÔ ÎÉÖÎÅÇÏ ÏËÎÁ. - -(åÓÌÉ ÂÙ ×Ù ÎÁÖÁÌÉ C-x 1 × ÎÉÖÎÅÍ ÏËÎÅ, ÔÏ ×Ù ÂÙ ÉÚÂÁ×ÉÌÉÓØ ÏÔ ×ÅÒÈÎÅÇÏ. -ðÏÎÉÍÁÊÔÅ ÜÔÕ ËÏÍÁÎÄÕ ËÁË "ïÓÔÁ×ÉÔØ ÔÏÌØËÏ ÏÄÎÏ ÏËÎÏ -- ÔÏ, × ËÏÔÏÒÏÍ Ñ -ÓÅÊÞÁÓ ÎÁÈÏÖÕÓØ"). - -÷ÁÍ ÎÅ ÎÕÖÎÏ ÏÔÏÂÒÁÖÁÔØ ÏÄÉÎ É ÔÏÔ ÖÅ ÂÕÆÅÒ × ÏÂÏÉÈ ÏËÎÁÈ. åÓÌÉ ×Ù -ÉÓÐÏÌØÚÕÅÔÅ C-x C-f, ÞÔÏÂÙ ÏÔËÒÙÔØ ÆÁÊÌ × ÏÄÎÏÍ ÏËÎÅ, ÄÒÕÇÏÅ ÏÓÔÁÎÅÔÓÑ ÂÅÚ -ÉÚÍÅÎÅÎÉÑ. ÷Ù ÍÏÖÅÔÅ ÏÔËÒÙ×ÁÔØ ÆÁÊÌÙ × ËÁÖÄÏÍ ÏËÎÅ ÎÅÚÁ×ÉÓÉÍÏ. - -åÓÔØ ÄÒÕÇÏÊ ÐÕÔØ ÉÓÐÏÌØÚÏ×ÁÔØ Ä×Á ÏËÎÁ, ÏÔÏÂÒÁÖÁÀÝÉÈ ÒÁÚÎÙÅ ÆÁÊÌÙ: - ->> îÁÂÅÒÉÔÅ C-x 4 C-f, É ××ÅÄÉÔÅ ÉÍÑ ÏÄÎÏÇÏ É ×ÁÛÉÈ ÆÁÊÌÏ×. úÁ×ÅÒÛÉÔÅ ××ÏÄ - ÎÁÖÁÔÉÅÍ . úÁÍÅÔØÔÅ, ÞÔÏ ×ÙÂÒÁÎÎÙÊ ÆÁÊÌ ÐÏÑ×ÉÌÓÑ × ÎÉÖÎÅÍ ÏËÎÅ. - ëÕÒÓÏÒ ÐÅÒÅÛÅÌ ÔÕÄÁ ÖÅ. - ->> îÁÂÅÒÉÔÅ C-x o, ÞÔÏÂÙ ×ÅÒÎÕÔØÓÑ × ×ÅÒÈÎÅÅ ÏËÎÏ, É ÚÁÔÅÍ C-x 1, ÞÔÏÂÙ - ÕÄÁÌÉÔØ ÎÉÖÎÅÅ ÏËÎÏ. - - -* òåëõòóé÷îùå õòï÷îé òåäáëôéòï÷áîéñ (RECURSIVE EDITING LEVELS) --------------------------------------------------------------- - -éÎÏÇÄÁ ×Ù ÂÕÄÅÔÅ ÐÏÐÁÄÁÔØ × ÔÁË ÎÁÚÙ×ÁÅÍÙÅ "ÒÅËÕÒÓÉ×ÎÙÅ ÕÒÏ×ÎÉ -ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ". îÁ ÜÔÏ ÕËÁÚÙ×ÁÀÔ ÐÒÑÍÏÕÇÏÌØÎÙÅ ÓËÏÂËÉ × ÓÔÒÏËÅ ÓÔÁÔÕÓÁ, -ÏËÒÕÖÁÀÝÉÅ ÏÂÙÞÎÙÅ ÓËÏÂËÉ ×ÏËÒÕÇ ÉÍÅÎÉ ÏÓÎÏ×ÎÏÇÏ ÒÅÖÉÍÁ. îÁÐÒÉÍÅÒ, ×Ù -Õ×ÉÄÉÔÅ [(Fundamental)] ×ÍÅÓÔÏ (Fundamental). - -þÔÏÂÙ ×ÙÊÔÉ ÉÚ ÒÅËÕÒÓÉ×ÎÙÈ ÕÒÏ×ÎÅÊ ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ, ÎÁÖÍÉÔÅ -. üÔÏ ÍÎÏÇÏÃÅÌÅ×ÁÑ ËÏÍÁÎÄÁ "×ÙÈÏÄ". ÷Ù ÔÁËÖÅ ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ ÅÅ, -ËÁË ÄÌÑ ÕÎÉÞÔÏÖÅÎÉÑ ÌÉÛÎÉÈ ÏËÏÎ, ÔÁË É ÄÌÑ ×ÙÈÏÄÁ ÉÚ ÍÉÎÉ-ÂÕÆÅÒÁ. - ->> îÁÖÍÉÔÅ M-x, ÞÔÏÂÙ ÐÏÐÁÓÔØ × ÍÉÎÉ-ÂÕÆÅÒ, Á ÚÁÔÅÍ ÎÁÖÍÉÔÅ - , ÞÔÏÂÙ ÐÏËÉÎÕÔØ ÅÇÏ. - -÷Ù ÎÅ ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ C-g, ÄÌÑ ×ÙÈÏÄÁ ÉÚ ÒÅËÕÒÓÉ×ÎÙÈ ÕÒÏ×ÎÅÊ -ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ. üÔÏ ÐÏÔÏÍÕ, ÞÔÏ C-g ÉÓÐÏÌØÚÕÅÔÓÑ ÄÌÑ ÏÔÍÅÎÙ ËÏÍÁÎÄÙ É -ÁÒÇÕÍÅÎÔÏ× âåú ÒÅËÕÒÓÉ×ÎÙÈ ÕÒÏ×ÎÅÊ ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ. - - -* ëáë ðïìõþéôø äïðïìîéôåìøîõà ðïíïýø ------------------------------------- - -÷ ÜÔÏÍ ÕÞÅÂÎÉËÅ ÍÙ ÐÏÐÙÔÁÌÉÓØ ÓÎÁÂÄÉÔØ ×ÁÓ ÔÏÌØËÏ ÔÏÊ ÉÎÆÏÒÍÁÃÉÅÊ, ËÏÔÏÒÁÑ -ÐÏÍÏÖÅÔ ×ÁÍ ÎÁÞÁÔØ ÐÏÌØÚÏ×ÁÔØÓÑ Emacs. ïÞÅÎØ ÍÎÏÇÏ ÉÎÆÏÒÍÁÃÉÉ ÄÏÓÔÕÐÎÏ × -Emacs, É ÎÅ×ÏÚÍÏÖÎÏ ×ÓÀ ÅÅ ÐÒÅÄÓÔÁ×ÉÔØ ÚÄÅÓØ. ïÄÎÁËÏ, ×Ù ÍÏÖÅÔÅ ×ÙÕÞÉÔØ -ÂÏÌØÛÅ ×ÏÚÍÏÖÎÏÓÔÅÊ Emacs É ÕÚÎÁÔØ ÄÒÕÇÉÅ ÐÏÌÅÚÎÙÅ ÏÓÏÂÅÎÎÏÓÔÉ. Emacs -ÐÒÅÄÏÓÔÁ×ÌÑÅÔ ËÏÍÁÎÄÙ ÄÌÑ ÞÔÅÎÉÑ ÄÏËÕÍÅÎÔÁÃÉÉ Ï ËÏÍÁÎÄÁÈ Emacs. üÔÉ ËÏÍÁÎÄÙ -"ÓÐÒÁ×ËÉ" ("help") ×ÓÅ ÎÁÞÉÎÁÀÔÓÑ Ó ÓÉÍ×ÏÌÁ CONTROL-h, ËÏÔÏÒÙÊ Ñ×ÌÑÅÔÓÑ -"ÓÉÍ×ÏÌÏÍ ÐÏÍÏÝÉ". - -þÔÏÂÙ ÉÓÐÏÌØÚÏ×ÁÔØ ×ÏÚÍÏÖÎÏÓÔÉ ÓÐÒÁ×ËÉ, ÎÁÖÍÉÔÅ C-h, É ÚÁÔÅÍ ÓÉÍ×ÏÌ, ËÏÔÏÒÙÊ -ÒÁÓÓËÁÖÅÔ, ËÁËÏÊ ÉÍÅÎÎÏ ×ÉÄ ÓÐÒÁ×ËÉ ×Ù ÈÏÔÉÔÅ ÐÏÌÕÞÉÔØ. åÓÌÉ ×Ù -äåêóô÷éôåìøîï ÒÁÓÔÅÒÑÌÉÓØ, ÎÁÂÅÒÉÔÅ C-h ?, É Emacs ÒÁÓÓËÁÖÅÔ ×ÁÍ Ï ÔÏÍ, -ËÁËÕÀ ÓÐÒÁ×ËÕ ÏÎ ÍÏÖÅÔ ×ÁÍ ÐÒÅÄÏÓÔÁ×ÉÔØ. åÓÌÉ ×Ù ÎÁÖÁÌÉ C-h É ÐÅÒÅÄÕÍÁÌÉ -ÏÂÒÁÝÁÔØÓÑ Ë ÓÐÒÁ×ËÅ, ÔÏ ÐÒÏÓÔÏ ÎÁÖÍÉÔÅ C-g, ÞÔÏÂÙ ÏÔÍÅÎÉÔØ ÜÔÕ ËÏÍÁÎÄÕ. - -(ëÏÅ-ÇÄÅ ÐÅÒÅÎÁÚÎÁÞÁÀÔ ÓÉÍ×ÏÌ C-h. òÅÁÌØÎÏÊ ÎÅÏÂÈÏÄÉÍÏÓÔÉ × ÜÔÏÍ ÎÅÔ, É -ÅÓÌÉ ÜÔÏ ÔÁË, ÔÏ ÓÏÏÂÝÉÔÅ Ï ÜÔÏÍ ÓÉÓÔÅÍÎÏÍÕ ÁÄÍÉÎÉÓÔÒÁÔÏÒÕ. ôÅÍ ×ÒÅÍÅÎÅÍ, -ÅÓÌÉ C-h ÎÅ ×ÙÚÙ×ÁÅÔ ÓÏÏÂÝÅÎÉÅ ÐÏÍÏÝÉ ×ÎÉÚÕ ÜËÒÁÎÁ, ÔÏ ÐÏÐÒÏÂÕÊÔÅ ×ÍÅÓÔÏ -ÜÔÏÇÏ ÎÁÖÁÔØ ËÌÁ×ÉÛÕ F1 ÉÌÉ ÎÁÂÒÁÔØ M-x help RET). - -ïÄÎÁ ÉÚ ÓÁÍÙÈ ÇÌÁ×ÎÙÈ ÆÕÎËÃÉÊ ÓÐÒÁ×ËÉ -- C-h c. îÁÖÍÉÔÅ C-h, ÚÁÔÅÍ c, É -ÓÉÍ×ÏÌ ËÏÍÁÎÄÙ ÉÌÉ ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÓÔØ, É Emacs ÏÔÏÂÒÁÚÉÔ ËÒÁÔËÏÅ ÎÁÂÒÁÎÎÏÊ -ÏÐÉÓÁÎÉÅ ËÏÍÁÎÄÙ. - ->> îÁÖÍÉÔÅ C-h c C-p. - -óÏÏÂÝÅÎÉÅ ÄÏÌÖÎÏ ×ÙÇÌÑÄÅÔØ ÐÒÉÍÅÒÎÏ ÔÁË: - - C-p runs the command previous-line - (C-p ×ÙÐÏÌÎÑÅÔ ËÏÍÁÎÄÕ previous-line {ÐÒÅÄÙÄÕÝÁÑ-ÓÔÒÏËÁ}) - -÷ÁÍ ÓÏÏÂÝÁÀÔ "ÉÍÑ ÆÕÎËÃÉÉ". éÍÅÎÁ ÆÕÎËÃÉÊ ÉÓÐÏÌØÚÕÀÔÓÑ × ÏÓÎÏ×ÎÏÍ ÄÌÑ -ÎÁÓÔÒÏÊËÉ É ÒÁÓÛÉÒÅÎÉÑ Emacs. éÍÅÎÁ ÆÕÎËÃÉÊ ×ÙÂÒÁÎÙ ÔÁË, ÞÔÏÂÙ ÐÏËÁÚÁÔØ, ÞÔÏ -ÉÍÅÎÎÏ ËÏÍÁÎÄÁ ÄÅÌÁÅÔ, Á ÔÁËÖÅ ÏÎÉ ÐÏÚ×ÏÌÑÀÔ Ó ÐÏÍÏÝØÀ ÜÔÏÊ ËÒÁÔËÏÊ -ÉÎÆÏÒÍÁÃÉÉ ÌÅÇÞÅ ÚÁÐÏÍÎÉÔØ ÕÖÅ ×ÙÕÞÅÎÎÙÅ ËÏÍÁÎÄÙ. - -íÎÏÇÏÓÉÍ×ÏÌØÎÙÅ ÓÏÞÅÔÁÎÉÑ ËÌÁ×ÉÛ, ÔÁËÉÅ ËÁË C-x C-s É (ÅÓÌÉ Õ ×ÁÓ ÎÅÔ ËÎÏÐËÉ -META ÉÌÉ EDIT ÉÌÉ ALT) v ÔÁËÖÅ ÂÕÄÕÔ ÄÏÓÔÕÐÎÙ ÄÌÑ ÐÏÌÕÞÅÎÉÑ ÓÐÒÁ×ËÉ Ó -ÐÏÍÏÝØÀ C-h c. - -÷Ù ÍÏÖÅÔÅ ÐÏÌÕÞÉÔØ ÂÏÌØÛÅ ÉÎÆÏÒÍÁÃÉÉ Ï ËÏÍÁÎÄÅ ÉÓÐÏÌØÚÕÑ C-h k ×ÍÅÓÔÏ C-h c. - ->> îÁÂÅÒÉÔÅ C-h k C-p. - -÷Ù Õ×ÉÄÉÔÅ ÏÐÉÓÁÎÉÅ ÆÕÎËÃÉÉ, Á ÔÁËÖÅ ÅÅ ÉÍÑ × ÏÔÄÅÌØÎÏÍ ÏËÎÅ Emacs. ëÏÇÄÁ ×Ù -ÚÁ×ÅÒÛÉÔÅ ÞÔÅÎÉÅ, ÎÁÖÍÉÔÅ C-x 1, ÞÔÏÂÙ ÉÚÂÁ×ÉÔØÓÑ ÏÔ ÔÅËÓÔÁ ÓÐÒÁ×ËÉ. ÷Ù -ÍÏÖÅÔÅ ×ÙÐÏÌÎÉÔØ ÉÚÍÅÎÅÎÉÅ ÔÅËÓÔÁ ×Ï ×ÒÅÍÑ ÐÒÏÓÍÏÔÒÁ ÔÅËÓÔÁ ÓÐÒÁ×ËÉ, Á -ÔÏÌØËÏ ÚÁÔÅÍ ÎÁÖÁÔØ C-x 1. - -åÓÔØ ÅÝÅ ÎÅÓËÏÌØËÏ ÐÏÌÅÚÎÙÈ ÆÕÎËÃÉÊ, ÄÏÓÔÕÐÎÙÈ ÞÅÒÅÚ C-h: - - C-h f ïÐÉÓÙ×ÁÅÔ ÆÕÎËÃÉÀ. ÷ÁÍ ÎÅÏÂÈÏÄÉÍÏ ÎÁÂÒÁÔØ ÉÍÑ ÆÕÎËÃÉÉ. - ->> ðÏÐÒÏÂÕÊÔÅ ÎÁÂÒÁÔØ C-h f previous-line. - üÔÏ ÒÁÓÐÅÞÁÔÁÅÔ ÉÎÆÏÒÍÁÃÉÀ Emacs Ï ÆÕÎËÃÉÉ, ËÏÔÏÒÁÑ ×ÙÐÏÌÎÑÅÔÓÑ ËÏÍÁÎÄÏÊ - C-p. - -áÎÁÌÏÇÉÞÎÁÑ ËÏÍÁÎÄÁ C-h v ÏÔÏÂÒÁÖÁÅÔ ÄÏËÕÍÅÎÔÁÃÉÀ Ï ÐÅÒÅÍÅÎÎÙÈ, ÚÎÁÞÅÎÉÅ -ËÏÔÏÒÙÈ ×Ù ÍÏÖÅÔÅ ÉÚÍÅÎÉÔØ ÄÌÑ ÎÁÓÔÒÏÊËÉ ÐÏ×ÅÄÅÎÉÑ Emacs. ÷ÁÍ ÎÕÖÎÏ ÎÁÂÒÁÔØ -ÉÍÑ ÐÅÒÅÍÅÎÎÏÊ, ËÏÇÄÁ Emacs ÚÁÐÒÏÓÉÔ ÅÇÏ. - - C-h a (Hyper Apropos). ÷×ÅÄÉÔÅ ËÌÀÞÅ×ÏÅ ÓÌÏ×Ï É Emacs ÐÏËÁÖÅÔ ×ÁÍ ÓÐÉÓÏË - ×ÓÅÈ ÆÕÎËÃÉÊ É ÐÅÒÅÍÅÎÎÙÈ, ÉÍÅÎÁ ËÏÔÏÒÙÈ ÓÏÄÅÒÖÁÔ ÜÔÏ - ÓÌÏ×Ï. ëÏÍÁÎÄÙ, ËÏÔÏÒÙÅ ÍÏÇÕÔ ÂÙÔØ ×ÙÚ×ÁÎÙ ÞÅÒÅÚ Meta-x, ÂÕÄÕÔ - ÏÔÍÅÞÅÎÙ Ú×ÅÚÄÏÞËÏÊ ÓÌÅ×Á. - ->> îÁÂÅÒÉÔÅ C-h a file. - -üÔÏ ÏÔÏÂÒÁÚÉÔ × ÄÒÕÇÏÍ ÏËÎÅ ÓÐÉÓÏË ×ÓÅÈ ËÏÍÁÎÄ M-x Õ ËÏÔÏÒÙÈ × ÉÍÅÎÁÈ -ÓÏÄÅÒÖÉÔÓÑ ÓÌÏ×Ï "file". ôÁËÖÅ × ÓÐÉÓËÅ ËÒÏÍÅ ËÏÍÁÎÄ ÔÁËÉÈ, ËÁË find-file, -×Ù Õ×ÉÄÉÔÅ ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÅ ÓÉÍ×ÏÌØÎÙÅ ËÏÍÁÎÄÙ ÔÁËÉÅ, ËÁË C-x C-f. - ->> îÁÂÅÒÉÔÅ C-M-v ÄÌÑ ÐÒÏËÒÕÔËÉ ÏËÎÁ ÓÐÒÁ×ËÉ. ÷ÙÐÏÌÎÉÔÅ ÜÔÏ ÎÅÓËÏÌØËÏ ÒÁÚ. - ->> îÁÂÅÒÉÔÅ C-x 1 ÄÌÑ ÕÄÁÌÅÎÉÑ ÏËÎÁ ÓÐÒÁ×ËÉ. - - C-h i þÉÔÁÔØ ÉÎÔÅÒÁËÔÉ×ÎÙÅ ÒÕËÏ×ÏÄÓÔ×Á (ÔÁË ÎÁÚÙ×ÁÅÍÙÅ Info). üÔÁ ËÏÍÁÎÄÁ - ÐÅÒÅÈÏÄÉÔ × ÓÐÅÃÉÁÌØÎÙÊ ÂÕÆÅÒ Ó ÉÍÅÎÅÍ `*info*', ÇÄÅ ×Ù ÍÏÖÅÔÅ - ÞÉÔÁÔØ ÉÎÔÅÒÁËÔÉ×ÎÙÅ ÒÕËÏ×ÏÄÓÔ×Á ÄÌÑ ÐÁËÅÔÏ×, ÕÓÔÁÎÏ×ÌÅÎÎÙÈ × ×ÁÛÅÊ - ÓÉÓÔÅÍÅ. îÁÂÅÒÉÔÅ m emacs ÄÌÑ ÞÔÅÎÉÑ ÒÕËÏ×ÏÄÓÔ×Á ÐÏ - Emacs. åÓÌÉ ×Ù ÎÉËÏÇÄÁ ÒÁÎÅÅ ÎÅ ÉÓÐÏÌØÚÏ×ÁÌÉ Info, ÔÏ ÎÁÂÅÒÉÔÅ ? É - Emacs ÏÔËÒÏÅÔ ÕÞÅÂÎÉË ÐÏ ×ÏÚÍÏÖÎÏÓÔÑÍ ÒÅÖÉÍÁ Info. ïÄÎÁÖÄÙ - ÏÚÎÁËÏÍÉ×ÛÉÓØ Ó ÜÔÉÍ ÕÞÅÂÎÉËÏÍ, ×Ù ÄÏÌÖÎÙ ÉÓÐÏÌØÚÏ×ÁÔØ ÒÕËÏ×ÏÄÓÔ×Ï - Emacs Info × ËÁÞÅÓÔ×Å ÏÓÎÏ×ÎÏÊ ÄÏËÕÍÅÎÔÁÃÉÉ. - - -* äïðïìîéôåìøîùå ÷ïúíïöîïóôé ----------------------------- - -÷Ù ÍÏÖÅÔÅ ÕÚÎÁÔØ ÂÏÌØÛÅ Ï Emacs ÞÉÔÁÑ ÅÇÏ ÒÕËÏ×ÏÄÓÔ×Ï, ËÎÉÇÉ ÉÌÉ -ÉÎÔÅÒÁËÔÉ×ÎÙÊ ÓÐÒÁ×ÏÞÎÉË (ÉÓÐÏÌØÚÕÊÔÅ ÍÅÎÀ Help ÉÌÉ ÎÁÂÅÒÉÔÅ F10 h r). ÷ÁÍ -ÏÓÏÂÅÎÎÏ ÐÏÎÒÁ×ÑÔÓÑ Ä×Å ÆÕÎËÃÉÉ -- ÄÏÐÏÌÎÅÎÉÅ, ËÏÔÏÒÏÅ ÓÏËÒÁÝÁÅÔ ËÏÌÉÞÅÓÔ×Ï -ÎÁÖÉÍÁÅÍÙÈ ËÌÁ×ÉÛ, É dired, ËÏÔÏÒÙÊ ÏÂÌÅÇÞÁÅÔ ÒÁÂÏÔÕ Ó ÆÁÊÌÁÍÉ. - -äÏÐÏÌÎÅÎÉÅ ÉÓÐÏÌØÚÕÅÔÓÑ ÄÌÑ ÔÏÇÏ, ÞÔÏÂÙ ÉÚÂÅÖÁÔØ ÎÁÂÏÒÁ ÌÉÛÎÉÈ ÓÉÍ×ÏÌÏ×. -îÁÐÒÉÍÅÒ, ÅÓÌÉ ×Ù ÈÏÔÉÔÅ ÐÅÒÅËÌÀÞÉÔØÓÑ × ÂÕÆÅÒ *Messages*, ÔÏ ×Ù ÍÏÖÅÔÅ -ÎÁÂÒÁÔØ C-x b *M É Emacs ÚÁÐÏÌÎÉÔ ÏÓÔÁÔÏË ÉÍÅÎÉ ÂÕÆÅÒÁ, ÐÏÓËÏÌØËÕ ÏÎ -ÍÏÖÅÔ ÏÐÒÅÄÅÌÉÔØ ÅÇÏ ÉÚ ÔÏÇÏ, ÞÔÏ ×Ù ÕÖÅ ÎÁÂÒÁÌÉ. äÏÐÏÌÎÅÎÉÑ ÏÐÉÓÁÎÙ × -Info-×ÅÒÓÉÉ ÒÕËÏ×ÏÄÓÔ×Á ÐÏ Emacs × ÒÁÚÄÅÌÅ "Completion". - -Dired ÐÏÚ×ÏÌÑÅÔ ×ÁÍ ÏÔÏÂÒÁÖÁÔØ ÓÐÉÓÏË ÆÁÊÌÏ× × ËÁÔÁÌÏÇÅ (Á ÔÁËÖÅ -ÐÏÄËÁÔÁÌÏÇÁÈ, × ÚÁ×ÉÓÉÍÏÓÔÉ ÏÔ ÎÁÓÔÒÏÊËÉ), ÐÅÒÅÍÅÝÁÔØÓÑ ÐÏ ÓÐÉÓËÕ ÆÁÊÌÏ×, -ÏÔËÒÙ×ÁÔØ ÉÈ, ÐÅÒÅÉÍÅÎÏ×Ù×ÁÔØ, ÕÄÁÌÑÔØ É ×ÙÐÏÌÎÑÔØ ÐÒÏÞÉÅ ÄÅÊÓÔ×ÉÑ ÎÁÄ -ÆÁÊÌÁÍÉ. Dired ÏÐÉÓÁÎ × Info-×ÅÒÓÉÉ ÒÕËÏ×ÏÄÓÔ×Á ÐÏ Emacs × ÒÁÚÄÅÌÅ "Dired". - -÷ ÒÕËÏ×ÏÄÓÔ×Å ÔÁËÖÅ ÏÐÉÓÁÎÙ ÐÒÏÞÉÅ ×ÏÚÍÏÖÎÏÓÔÉ Emacs. - - -* úáëìàþåîéå ------------- - -úÁÐÏÍÎÉÔÅ, ÞÔÏ ÄÌÑ ÔÏÇÏ ÞÔÏÂÙ ÓÏ×ÓÅÍ ×ÙÊÔÉ ÉÚ Emacs, ÉÓÐÏÌØÚÕÅÔÓÑ ÓÏÞÅÔÁÎÉÅ -ËÌÁ×ÉÛ C-x C-c. á ÞÔÏÂÙ ×ÒÅÍÅÎÎÏ ×ÙÊÔÉ × ÏÂÏÌÏÞËÕ (shell) É ÐÏÔÏÍ ×ÅÒÎÕÔØÓÑ -ÏÂÒÁÔÎÏ, ÉÓÐÏÌØÚÕÊÔÅ C-z. - -üÔÏÔ ÕÞÅÂÎÉË ÄÏÌÖÅÎ ÂÙÔØ ÐÏÎÑÔÅÎ ×ÓÅÍ ÎÏ×ÙÍ ÐÏÌØÚÏ×ÁÔÅÌÑÍ, ÎÏ ÅÓÌÉ ×Ù -ÎÁÊÄÅÔÅ ÞÔÏ-ÎÉÂÕÄØ ÎÅÑÓÎÏÅ, ÎÅ ÎÕÖÎÏ ÓÉÄÅÔØ É ÐÏÒÉÃÁÔØ ÓÅÂÑ -- ÖÁÌÕÊÔÅÓØ! - - -* õóìï÷éñ òáóðòïóôòáîåîéñ -------------------------- - -üÔÏÔ ÕÞÅÂÎÉË ÐÒÏÉÚÏÛÅÌ ÉÚ ÄÌÉÎÎÏÊ ÓÅÒÉÉ ÕÞÅÂÎÉËÏ× Emacs, ÎÁÞÁÔÏÊ Ó ÏÄÎÁÖÄÙ -ÎÁÐÉÓÁÎÎÏÇÏ Stuart Cracraft ÄÌÑ ÏÒÉÇÉÎÁÌØÎÏÇÏ Emacs. - -üÔÁ ×ÅÒÓÉÑ ÕÞÅÂÎÉËÁ, ËÁË É GNU Emacs, ÚÁÝÉÝÅÎÁ ÐÒÁ×ÁÍÉ ËÏÐÉÒÏ×ÁÎÉÑ -(copyrighted), É ÐÒÉÈÏÄÉÔ Ó ÏÇÒÁÎÉÞÅÎÉÑÍÉ ÒÁÓÐÒÏÓÔÒÁÎÅÎÉÑ ËÏÐÉÊ ÓÏ -ÓÌÅÄÕÀÝÉÍÉ ÓÏÇÌÁÛÅÎÉÑÍÉ: - -Copyright (C) 1985, 1996, 1998, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 Free Software Foundation, Inc. - - Permission is granted to anyone to make or distribute verbatim copies - of this document as received, in any medium, provided that the - copyright notice and permission notice are preserved, - and that the distributor grants the recipient permission - for further redistribution as permitted by this notice. - - Permission is granted to distribute modified versions - of this document, or of portions of it, - under the above conditions, provided also that they - carry prominent notices stating who last altered them. - -õÓÌÏ×ÉÑ ËÏÐÉÒÏ×ÁÎÉÑ ÓÁÍÏÇÏ Emacs ÂÏÌÅÅ ÓÌÏÖÎÙÅ, ÎÏ ÐÒÉÍÅÒÎÏ × ÔÏÍ ÖÅ ÄÕÈÅ. -ðÏÖÁÌÕÊÓÔÁ, ÐÒÏÞÔÉÔÅ ÆÁÊÌ COPYING É ÚÁÔÅÍ ÄÁÊÔÅ ËÏÐÉÀ GNU Emacs ×ÁÛÉÍ -ÄÒÕÚØÑÍ. ðÏÍÏÇÉÔÅ ÕÎÉÞÔÏÖÉÔØ ÏÂÓÔÒÕËÃÉÏÎÉÚÍ × ÏÂÌÁÓÔÉ ÐÒÏÇÒÁÍÍÎÏÇÏ -ÏÂÅÓÐÅÞÅÎÉÑ ("×ÌÁÄÅÎÉÅ"), ÉÓÐÏÌØÚÕÑ, ÓÏÚÄÁ×ÁÑ É ÒÁÓÐÒÏÓÔÒÁÎÑÑ Ó×ÏÂÏÄÎÏÅ -ÐÒÏÇÒÁÍÍÎÏÅ ÏÂÅÓÐÅÞÅÎÉÅ! - -// ÚÁÍÅÞÁÎÉÑ, ÉÓÐÒÁ×ÌÅÎÉÑ ÏÛÉÂÏË Ó ÖÄÕ ÐÏ ÁÄÒÅÓÕ alexott@gmail.com. -// Alex Ott. - -;;; Local Variables: -;;; coding: cyrillic-koi8 -;;; sentence-end-double-space: nil -;;; End: - -;;; arch-tag: ad4e5698-ea8b-45b7-b236-ed5ad5b72d2b diff --git a/etc/TUTORIAL.sk b/etc/TUTORIAL.sk deleted file mode 100644 index 7194654736f..00000000000 --- a/etc/TUTORIAL.sk +++ /dev/null @@ -1,1106 +0,0 @@ -Tútorial k Emacsu. Podmienky pozri na konci. -Do èe¹tiny prelo¾il Milan Zamazal , do slovenèiny Miroslav -Va¹ko . - -Máte pred sebou tútorial k Emacsu. - -Príkazy Emacsu v¹eobecne vyu¾ívajú klávesu CONTROL (obèas oznaèovanú ako CTRL -alebo CTL) alebo klávesu META (obèas oznaèovanú EDIT alebo ALT). Aby sme tieto -názvy nemuseli stále písa» v plnom znení, budeme pou¾íva» nasledujúce skratky: - C- znamená podr¾a» klávesu CONTROL a stlaèi» znak . - Teda C-f znamená: podr¾te klávesu CONTROL a stlaète f. - M- znamená podr¾a» klávesu META, EDIT alebo ALT a stlaèi» . - Ak nemáte ¾iadnu z kláves META, EDIT ani ALT, tak namiesto toho - stlaète a pustite klávesu ESC a potom . Klávesu ESC budeme - oznaèova» . - -Dôle¾itá poznámka: prácu s Emacsom ukonèíte stlaèením C-x C-c (dva znaky). -Znaky ">>" na µavom okraji oznaèujú miesta, kde si máte vyskú¹a» príkaz. Napr.: -<> -[Prostredná èas» obrazovky je prázdna zámerne. Text pokraèuje ni¾¹ie.] ->> Teraz stlaète C-v (view next screen) pre posun na ïal¹iu obrazovku. - (Smelo do toho, spravte to pridr¾aním klávesy control a stlaèením v.) - Od tejto chvíle by ste toto mali robi» ak doèítate zobrazenú - obrazovku. - -V¹imnite si, ¾e pri posuve obrazoviek v¾dy zostávajú zobrazené dva riadky -z predchádzajúcej obrazovky; to poskytuje urèitú náväznos» pri postupnom -èítaní textu. - -Prvá vec, ktorú potrebujete vedie» je, ako sa v texte pohybova» -z jedného miesta na druhé. U¾ viete, ako sa posunú» o jednu obrazovku -vpred, pomocou C-v. Na prechod o obrazovku spä» pou¾ite M-v -(podr¾te klávesu META a stlaète v alebo stlaète v ak -nemáte klávesy META, EDIT ani ALT). - ->> Skúste stlaèi» M-v a potom C-v, niekoµko krát to zopakujte. - - -* ZHRNUTIE ----------- - -Na prezeranie obrazovkových stránok sú u¾itoèné nasledujúce príkazy: - - C-v Posuv o obrazovku vpred - M-v Posuv o obrazovku spä» - C-l Zmazanie obrazovky a znovuzobrazenie celého textu, - pritom sa text pod kurzorom presunie k stredu obrazovky. - (Ide o Control-L a nie Control-1.) - ->> Nájdite kurzor a zapamätajte si, aký je okolo neho text. - Potom stlaète C-l. - Nájdite kurzor znovu a v¹imnite si, ¾e je okolo neho ten istý text. - -Na pohyb po celých obrazovkách mô¾ete tie¾ pou¾i» klávesy PageUp a PageDown, -ak ich Vá¹ terminál má, ale pre pohyb sú efektívnej¹ie klávesy C-v a M-v. - -* ZÁKLADNÉ OVLÁDANIE KURZORU ----------------------------- - -Pohyb medzi obrazovkami je u¾itoèný, ale ako sa premiestnime na konkrétne -miesto v texte na obrazovke? - -Je to mo¾né dosiahnu» niekoµkými spôsobmi. Najzákladnej¹ím spôsobom je -pou¾itie príkazov C-p, C-b, C-f a C-n. Ka¾dý z týchto príkazov presunie -kurzor na obrazovke o jeden riadok alebo ståpec v danom smere. -Tu je tabuµka znázoròujúca smer posunu kurzoru vyvolaný týmito ¹tyrmi -príkazmi: - - Predchádzajúci riadok, C-p - : - : - Dozadu, C-b .... Momentálna pozícia kurzoru .... Dopredu, C-f - : - : - Nasledujúci riadok, C-n - ->> Presuòte kurzor na prostredný riadok tohto diagramu pomocou - C-n alebo C-p. Potom stlaète C-l, aby ste na obrazovke videli celý - diagram vycentrovaný. - -Pravdepodobne si tieto príkazy µahko zapamätáte podµa zaèiatoèných písmen -anglických názvov: P ako previous (predchádzajúci), N ako next (nasledujúci), -B ako backward (spä»), F ako forward (vpred). Sú to základné príkazy pre -pohyb kurzoru a budete ich pou¾íva» stále, tak¾e by bolo veµmi vhodné, keby -ste sa ich teraz nauèili. - ->> Stlaète niekoµko krát C-n, aby ste kurzor presunuli na tento riadok. - ->> Posuòte kurzor dovnútra riadku pomocou niekoµkých C-f a potom hore - stlaèením C-p. Pozorujte, èo C-p robí, keï je kurzor uprostred riadku. - -Ka¾dý riadok textu konèí znakom nového riadku, ktorý ho oddeµuje od -nasledujúceho riadku. Znakom nového riadku by mal by» ukonèený aj posledný -riadok súboru (napriek tomu, ¾e to Emacs nevy¾aduje). - ->> Vyskú¹ajte C-b na zaèiatku riadku. Kurzor by sa mal presunú» na koniec - predchádzajúceho riadku, preto¾e ho tým presuniete cez znak nového riadku. - -C-f funguje analogicky ako C-b, tj. na konci riadku dôjde k presunu na -ïal¹í riadok. - ->> Stlaète niekoµkokrát C-b, tak¾e uvidíte, kde sa nachádza kurzor. - Potom stláèajte C-f, aby ste sa vrátili na koniec riadku. - Potom stlaète e¹te raz C-f, aby ste sa presunuli na nasledujúci - riadok. - -Keï kurzorom prejdete cez horný alebo dolný okraj obrazovky, posunie sa -text za príslu¹ným okrajom na obrazovku. Táto vlastnos» sa nazýva -"scrollovanie". Umo¾òuje premiestni» kurzor na µubovoµné miesto v texte, -bez toho, aby kurzor opustil obrazovku. - ->> Skúste posunú» kurzor pod dolný okraj obrazovky pomocou C-n a pozorujte, - èo sa stane. - -Ak je posun po znakoch príli¹ pomalý, mô¾ete sa pohybova» po -slovách. M-f (Meta-f) robí posun o slovo vpred a M-b robí posun -o slovo spä». - ->> Stlaète niekoµko krát M-f a M-b. - -Ak sa kurzor nachádza uprostred slova, M-f presunie kurzor na koniec -tohto slova. Ak sa nachádza kurzor v medzere medzi slovami, M-f presunie -kurzor na koniec nasledujúceho slova. M-b pracuje analogicky v opaènom -smere. - ->> Stlaète niekoµko krát M-f a M-b spolu s C-f a C-b, aby ste videli - výsledky príkazov M-f a M-b vykonávaných z rôznych miest vnútri slov - a medzi nimi. - -V¹imnite si analógie medzi C-f a C-b na jednej strane a M-f a M-b na -strane druhej. Meta znaky sú veµmi èasto vyu¾ívané pre operácie -vz»ahujúce sa na entity definované jazykom (slová, vety, odstavce), -naopak Control znaky pracujú na základných prvkoch nezávislých na tom, -èo práve editujete (znaky, riadky, a pod.). - -Táto analógia platí tie¾ pre riadky a vety: C-a a C-e vykonáva presun -na zaèiatok a koniec riadku, M-a a M-e vykonáva presun na zaèiatok a koniec -vety. - ->> Skúste niekoµko krát C-a a potom niekoµko krát C-e. - Skúste niekoµko krát M-a a potom niekoµko krát M-e. - -V¹imnite si, ¾e opakované C-a nerobí niè, ale opakované M-a v¾dy -vykoná presun na ïal¹iu vetu. Princípu analógie to síce príli¹ -nezodpovedá, ale napriek tomu je toto chovanie mo¾né pova¾ova» za prirodzené. - -Pozícia kurzoru v texte sa tie¾ nazýva "bod" ("point"). Aby sme to -parafrázovali, kurzor je vidie» na obrazovke v mieste, kde je bod umiestnený -v texte. - -Tu je prehµad jednoduchých operácií pre pohyb kurzoru vrátane príkazov pre -pohyb medzi slovami a vetami: - - C-f Presun o znak vpred - C-b Presun o znak spä» - - M-f Presun o slovo vpred - M-b Presun o slovo spä» - - C-n Presun na nasledujúci riadok - C-p Presun na predchádzajúci riadok - - C-a Presun na zaèiatok riadku - C-e Presun na koniec riadku - - M-a Presun spä» na zaèiatok vety - M-e Presun vpred na koniec vety - ->> Vyskú¹ajte si teraz niekoµko krát v¹etky tieto príkazy kvôli cviku. - Sú to najpou¾ívanej¹ie príkazy. - -Ïal¹ie dva dôle¾ité príkazy pre pohyb kurzoru sú M-< (Meta men¹ie-ako), -ktorý vykoná presun na zaèiatok celého textu, a M-> (Meta väè¹í-ako), -ktorý vykoná presun na koniec celého textu. - -Na väè¹ine terminálov je "<" nad èiarkou, tak¾e pre vyvolanie tohto znaku -musíte pou¾i» klávesu Shift. Na týchto termináloch je teda nutné pou¾i» -klávesu Shift aj v prípade príkazu M-<; bez klávesy Shift by ste stlaèili -M-èiarka. - ->> Skúste teraz M-< pre presun na zaèiatok tútorialu. - Pou¾ite potom opakovane C-v, aby ste sa opä» vrátili sem. - ->> Skúste teraz M-> pre presun na koniec tútorialu. - Pou¾ite potom opakovane M-v, aby ste sa opä» vrátili sem. - -Kurzor mô¾ete presúva» tie¾ pomocou kurzorových kláves (klávesy -so ¹ípkami), ak ich Vá¹ terminál má. My Vám v¹ak doporuèujeme nauèi» sa -C-b, C-f, C-n a C-p, a to z troch dôvodov. Za prvé, tieto klávesy fungujú -na v¹etkých typoch terminálov. Za druhé, akonáhle raz získate cvik -v pou¾ívaní Emacsu, zistíte, ¾e pou¾ívánie týchto CTRL znakov je -rýchlej¹ie ako pou¾ívanie kurzorových kláves (preto¾e nemusíte presúva» -ruku z písacej pozície). Za tretie, ak si zvyknete pou¾íva» tieto CTRL-znak -príkazy, µahko sa nauèíte pou¾íva» iné pokroèilé príkazy pre pohyb -kurzoru. - -Väè¹ina príkazov Emacsu akceptuje numerický argument; ten pre väè¹inu -príkazov slú¾i ako opakovaè. Poèet opakovaní príkazu zadáte -prostredníctvom stlaèenia C-u nasledovaného stlaèením príslu¹ných èíslic pred -vyvolaním príkazu. Ak máte META (alebo EDIT èi ALT) klávesu, existuje -alternatívna mo¾nos» zadania numerického argumentu: pridr¾te klávesu META -a stlaète príslu¹né èíslice. Doporuèujeme nauèi» sa C-u metódu, -preto¾e tá funguje na akomkoµvek terminále. Èíselný argument sa tie¾ nazýva -"prefixový argument", preto¾e ho pí¹ete e¹te pred príkazom, na ktorý sa -vz»ahuje. - -Napríklad C-u 8 C-f vykoná presun o osem znakov vpred. - ->> Skúste pou¾i» C-n alebo C-p s numerickým argumentom, na presun kurzoru - k tomuto riadku s jediným príkazom. - -Väè¹ina príkazov pou¾íva numerický argument ako opakovaè, ale niektoré príkazy -ho pou¾ívajú iným spôsobom. Zopár príkazov (ale ¾iaden z tých, ktoré ste sa -doteraz nauèili) ho pou¾íva ako príznak -- prítomnos» èíselného argumentu bez -ohµadu na jeho hodnotu spôsobí, ¾e sa príkaz správa ináè. - -Iným druhom výnimky sú C-v a M-v. Ak dostanú numerický argument, posunú -obrazovku hore alebo dole o zodpovedajúci poèet riadkov namiesto obrazoviek. -Napríklad C-u 4 C-v posunie obrazovku o 4 riadky. - ->> Skúste teraz stlaèi» C-u 8 C-v. - -To by malo posunú» obrazovku o 8 riadkov hore. Pokiaµ by ste ju chceli -posunú» naspä» dole, mô¾ete da» argument príkazu M-v. - -Ak pou¾ívate X Windows, mali by ste ma» na µavej strane emacsového okna -vysokú obdå¾nikovú oblas», nazvanú scrollbar. Mô¾ete potom text -posúva» klikaním my¹ou na scrollbar. - ->> Skúste stlaèi» prostredné tlaèítko na vrchole zvýraznenej oblasti - vo vnútri scrollbaru. To by malo text posunú» na pozíciu danú tým, ako - vysoko alebo nízko ste klikli. - ->> Skúste pri stlaèenom prostrednom tlaèidle posúva» my¹ou hore a dole. - Uvidíte, ako sa text posúva hore a dole podµa toho, ako - hýbete my¹ou. - - -* KEÏ EMACS NEREAGUJE ---------------------- - -Ak Emacs prestane reagova» na Va¹e príkazy, mô¾ete prebiehajúcu -èinnos» bezpeène zastavi» pomocou C-g. Pomocou C-g mô¾ete zastavi» -príkaz, ktorého èinnos» trvá príli¹ dlho. - -C-g mô¾ete pou¾i» tie¾ pre odstránenie numerického argumentu príkazu, -ktorý nechcete dokonèi». - ->> Stlaète C-u 100 pre vytvorenie numerického argumentu 100 a potom - stlaète C-g. Teraz stlaète C-f. Kurzor by sa mal posunú» iba - o jeden znak, preto¾e ste argument zru¹ili prostredníctvom - C-g. - -Ak ste omylom stlaèili , mô¾ete sa ho zbavi» pomocou C-g. - - -* DEAKTIVOVANÉ PRÍKAZY ----------------------- - -Niektoré príkazy Emacsu sú "deaktivované" ("disabled"), aby ich -zaèínajúci pou¾ívatelia nemohli vyvola» náhodne. - -Ak vyvoláte niektorý z deaktivovaných príkazov, Emacs zobrazí hlásenie -oznamujúce, ktorý príkaz to bol, s otázkou, èi chcete tento príkaz -vykona». - -Ak naozaj chcete príkaz vyskú¹a», stlaète medzerník ako odpoveï -na túto otázku. Zvyèajne, ak nechcete deaktivovaný príkaz -vykona», odpovedzte na túto otázku pomocou "n". - ->> Stlaète C-x C-l (èo je deaktivovaný príkaz), - potom na otázku odpovedzte n. - - -* OKNÁ ------- - -Emacs mô¾e ma» niekoµko okien (windows), pritom ka¾dé z nich zobrazuje svoj -vlastný text. Ako viac okien pou¾íva», objasníme neskôr. Teraz chceme -objasni», ako sa zbavi» nadbytoèných okien a vráti» sa do základnej -jednookennej editácie. Je to jednoduché: - - C-x 1 Jedno okno (tj. zru¹enie v¹etkých ostatných okien) - -Teda vlo¾enie Control-x nasledované èíslicou 1. C-x 1 roz¹íri okno -obsahujúce kurzor cez celú obrazovku. Zru¹í to v¹etky ostatné okná. - ->> Presuòte kurzor na tento riadok a stlaète C-u 0 C-l ->> Stlaète Control-h k Control-f. - Pozorujte, ako sa aktuálne okno zmen¹í a objaví sa nové okno - kvôli zobrazeniu dokumentácie pre príkaz Control-f. - ->> Stlaète C-x 1 a pozorujte, ako okno s dokumentáciou zmizne. - -Tento príkaz sa odli¹uje od u¾ nauèených príkazov tým, ¾e pozostáva z dvoch -znakov. Zaèína znakom CONTROL-x. Exostuje celá séria príkazov zaèínajúcich -na CONTROL-x; veµa z nich sa týka okien, súborov, bufferov a súvisiacich vecí. -Tieto príkazy pozostávajú z dvoch, troch alebo ¹tyroch znakov. - - -* VKLADANIE A MAZANIE ---------------------- - -Ak chcete vlo¾i» text, proste ho napí¹te. Znaky, ktoré vidíte, -ako A, 7, *, atï., sú Emacsom chápané ako text a vkladané okam¾ite. -Pre vlo¾enie znaku nového riadku stlaète (klávesu Enter). - -Posledný znak, ktorý ste napísali, mô¾ete zmaza» stlaèením . - je klávesa na klávesnici -- tá istá, ktorú normálne pou¾ívate na -zmazanie naposledy napísaného znaku. Je to zvyèajne veµká klávesa pár riadkov -nad klávesou , a je väè¹inou oznaèovaná ako "Delete", "Del" alebo -"Backspace". - -Ak je veµká klávesa na tom mieste oznaèená ako "Backspace", potom je to ona, -ktorú budete pou¾íva» ako . Mô¾e tam by» niekde inde e¹te klávesa -oznaèená ako "Delete", ale to nie je . - -V¹eobecne, ma¾e znak bezprostredne pred momentálnou pozíciou kurzoru. - ->> Vykonajte to teraz -- napí¹te niekoµko znakov a potom ich zma¾te - niekoµkými stlaèeniami . Nebojte sa zmien v tomto súbore; - originálny tútorial sa nezmení. Toto je Va¹a osobná kópia. - -Keï sa riadok textu zväè¹í natoµko, ¾e presiahne jeden riadok obrazovky, je -zobrazený na viacerých riadkoch obrazovky. Riadok textu, ktorý pokraèuje na -ïal¹om riadku obrazovky, je indikovaný spätným lomítkom ("\") (alebo, ak -pou¾ívate grafický systém, malá zakrivená ¹ípka) na pravom okraji obrazovky. - ->> Vkladajte text, pokiaµ nedosiahnete pravého okraju, a pokraèujte vo - vkladaní. Objaví sa Vám pokraèovací riadok. - ->> Pou¾ite pre zmazanie textu, pokiaµ se riadok textu opä» nevojde na - jeden riadok obrazovky. Pokraèovací riadok zmizne. - -Znak nového riadku mô¾ete zmaza» ako ktorýkoµvek iný znak. Zmazanie -znaku nového riadku medzi dvoma riadkami spôsobí ich spojenie do jediného -riadku. Ak je výsledný riadok príli¹ dlhý na to, aby sa vo¹iel na ¹írku -obrazovky, bude zobrazený pokraèovacím riadkom. - ->> Presuòte kurzor na zaèiatok riadku a stlaète . To tento - riadok spojí s riadkom predchádzajúcim. - ->> Stlaète pre znovuvlo¾enie zmazaného znaku nového riadku. - -Spomeòte si, ¾e väè¹ina príkazov Emacsu mô¾e dosta» poèet opakovaní; -vrátane textových znakov. Opakovanie textových znakov ich vlo¾í -niekoµko krát. - ->> Vyskú¹ajte si to -- stlaète C-u 8 * pre vlo¾enie ********. - -Teraz u¾ poznáte najzákladnej¹ie spôsoby, ako nieèo v Emacse napísa» a ako -opravova» chyby. Mô¾ete ale tie¾ maza» text po slovách alebo po riadkoch. -Tu je zhrnutie operácií pre mazanie textu: - - Zmazanie znaku bezprostredne pred kurzorom - C-d Zmazanie znaku nasledujúceho za kurzorom - - M- Zru¹enie slova bezprostredne pred kurzorom - M-d Zru¹enie slova nasledujúceho za kurzorom - - C-k Zru¹enie textu od pozície kurzoru do konca riadku - M-k Zru¹enie textu do konca aktuálnej vety - -V¹imnite si, ¾e a C-d, resp. M- a M-d, roz¹irujú paralelu -zaèatú C-f a M-f (pravda, naozaj nie je control znak, ale tým sa -nebudeme trápi»). C-k a M-k sú ako C-e a M-e v zmysle vz»ahu riadkov k vetám. - -¥ubovoµnú èas» buffera mô¾ete zru¹i» aj nasledujúcim spôsobom. Presuòte sa -na koniec tejto èasti a stlaète C-@ alebo C-SPC (µubovoµnú z týchto -kombinácií). (SPC znamená medzerník.) Presuòte sa na druhý koniec tejto -èasti a stlaète C-w. Text medzi týmito pozíciami bude zru¹ený. - ->> Presuòte kurzor na písmeno ¥ na zaèiatku predchádzajúceho odstavca. ->> Stlaète C-SPC. Emacs by mal zobrazi» v spodnom riadku obrazovky správu - "Mark set". ->> Presuòte kurzor na písmeno c v slove "koniec" na druhom riadku - odstavca. ->> Stlaète C-w. Text, ktorý zaèína písmenom L a konèí pred písmenom "c" - bude zru¹ený. - -Uvedomte si, ¾e rozdiel medzi "ru¹ením" ("killing") a "mazaním" -("deleting") je ten, ¾e "zru¹ené" veci mô¾u by» vhodené spä», zatiaµ èo -"zmazané" nie. V¹eobecne príkazy, ktoré mô¾u zmaza» väè¹ie mno¾stvo -textu, ukladajú text, zatiaµ èo príkazy, ktoré ma¾ú jediný znak alebo -iba prázdne riadky a medzery, mazaný text neukladajú. - ->> Presuòte kurzor na zaèiatok neprázdneho riadku. - Potom stlaète C-k pre zru¹enie textu na tomto riadku. ->> Stlaète C-k druhý krát. Uvidíte, ¾e to zru¹í znak nového riadku, ktorý - je za týmto riadkom. - -V¹imnite si, ¾e jedno C-k zru¹í obsah riadku a druhé C-k zru¹í riadok -samotný a posunie v¹etky ïal¹ie riadky hore. C-k spracováva numerický -argument ¹peciálne: zru¹í zodpovedajúci poèet riadkov VRÁTANE ich -obsahu. To u¾ nie je opakovanie. C-u 2 C-k zru¹í dva riadky a ich -obsah; dvojité stlaèenie C-k by toto obvykle nespravilo. - -Vracanie textov spä» sa nazýva "vhadzovanie" ("yanking"). (Predstavte -si opätovné vhadzovanie, vracanie spä» textu, ktorý bol odstránený.) -Zmazaný text mô¾ete vhodi» buï na to isté miesto, odkiaµ bol zmazaný, -alebo na iné miesto v bufferi, alebo dokonca aj do iného súboru. -Text mô¾ete vhodi» aj viac krát, keï vytvárate jeho ïal¹ie kópie. - -Príkazom na vhadzovanie je C-y. Tento príkaz vlo¾í posledný zmazaný -text na pozíciu, na ktorej sa nachádza kurzor. - ->> Skúste to; stlaète C-y pre vhodenie textu spä». - -Ak stlaèíte C-k niekoµko krát po sebe. v¹etok zmazaný text je ulo¾ený -spolu tak, aby bolo mo¾né vhodi» spä» v¹etky riadky naraz. - ->> Stlaète niekoµko krát C-k. - -Teraz obnovte naposledy zru¹ený text: - ->> Stlaète C-y. Potom posuòte kurzor o niekoµko riadkov ni¾¹ie a stlaète - C-y znovu. Teraz vidíte, ako je mo¾né kopírova» text. - -Èo keï máte nejaký text, ktorý by ste radi vhodili spä» a potom zru¹íte -nieèo iného? C-y by vlo¾ilo posledný zru¹ený text. Ale predchádzajúci -text ni je stratený. Mô¾ete ho získa» spä» pou¾itím príkazu M-y. Potom, -èo spravíte C-y pre získanie posledného zru¹eného textu, stlaèenie M-y -vymení tento vhodený text za predchádzajúci zru¹ený text. Ïal¹ími a -ïal¹ími stlaèeniami M-y dostávate predchádzajúce a predchádzajúce zru¹ené -texty. Keï dosiahnete text, ktorý hµadáte, nemusíte s ním pre jeho -uchovanie niè ïal¹ieho robi». Jednoducho vhodený text ponechajte, kde -je, a pokraèujte v editácii. - -Ak opakujete M-y dostatoène dlho, dostanete se spä» k východziemu -bodu (posledne zru¹enému textu). - ->> Zru¹te riadok, presuòte kurzor niekam inam a zru¹te iný riadok. - Potom vykonajte C-y pre vrátenie druhého zru¹eného riadku. - Potom stlaète M-y a vhodený riadok bude nahradený prvým zru¹eným riadkom. - Opakujte M-y a pozorujte, èo dostávate. Pokraèujte v tom, pokiaµ sa - znova neobjaví druhý zru¹ený riadok a potom niekoµko ïal¹ích. - Ak chcete, mô¾ete skúsi» preda» M-y kladné a záporné argumenty. - - -* UNDO ------- - -Ak vykonáte v texte zmenu a potom zistíte, ¾e to bol omyl, mô¾ete -zmenu vráti» príkazom undo, C-x u. - -C-x u obvykle vráti zmeny vykonané jedným príkazom; pokiaµ C-x u -zopakujete niekoµko krát po sebe, ka¾dé opakovanie vráti jeden ïal¹í -príkaz. - -Sú ale dve výnimky: príkazy, ktoré nemenia text, sa nepoèítajú (to -zahàòa príkazy pre pohyb kurzoru a rolovanie) a znaky vkladajúce -samy seba sú obvykle spracovávané v skupinách a¾ po 20. (To je kvôli -tomu, aby sa zredukoval poèet C-x u nutných pre vrátenie vkladaného -textu.) - ->> Zru¹te tento riadok pomocou C-k, stlaète potom C-x u a riadok by sa mal - znova objavi». - -Alternatívny undo príkaz je C-_; pracuje rovnako ako C-x u, je v¹ak -menej pracné ho aplikova» niekoµko krát za sebou. Nevýhodou C-_ je, ¾e -na niektorých klávesniciach nie je jasné, ako ho vyvola». To je dôvod, -preèo ponúkame aj C-x u. Na niektorých termináloch mô¾ete C-_ vyvola» -stlaèením / pri stlaèenom CTRL. - -Numerický argument pre C-_ a C-x u funguje ako poèet opakovaní. - -Pomocou príkazu undo mô¾ete vráti» zru¹ený aj zmazaný text. Rozdiel medzi -mazaním a ru¹ením textu ovplyvòuje mo¾nos» vhodenia tohto textu pomocou -C-y, neovplyvòuje ale mo¾nosti príkazu undo. - - -* SÚBORY --------- - -Aby text, ktorý editujete, zostal trvale uchovaný, musíte ho ulo¾i» do -súboru. Inak by bol po ukonèení Emacsu stratený. Svoju editáciu -spojíte so súborom "vyhµadaním" ("finding") súboru. (Tie¾ sa to -nazýva "nav¹tívenie" ("visiting") súboru.) - -Vyhµadanie súboru znamená, ¾e vidíte jeho obsah v Emacse. V mnohých -ohµadoch je to, ako by ste editovali priamo ten súbor. Napriek tomu zmeny, -ktoré prostredníctvom Emacsu robíte, sa nestanú trvalými, pokiaµ tieto -zmeny do súboru "neulo¾íte" ("save"). Tým sa zamedzí nechcenému ponechaniu -èiastoène zmeneného súboru v systéme. Dokonca aj keï súbor ulo¾íte, -Emacs uchová pôvodný súbor pod zmeneným názvom pre prípad, ¾e by ste -zistili, ¾e va¹e úpravy boli chybné. - -Keï sa pozriete do dolnej èasti obrazovky, uvidíte riadok, ktorý zaèína a -konèí pomlèkami a na zaèiatku má "--:-- TUTORIAL.sk" alebo nieèo podobného. -Táto èas» obrazovky obvykle obsahuje meno súboru, ktorý je práve -nav¹tívený. Akurát teraz máte nav¹tívený súbor nazvaný "TUTORIAL.sk", -ktorý je Va¹ou osobnou èmáraciou kópiou tútorialu Emacsu. Keï v Emacse -vyhµadáte súbor, jeho meno sa objaví presne na tom mieste. - -Ïal¹ou vecou súvisiacou s príkazom pre vyhµadanie súboru je to, ¾e musíte -poveda», ktoré meno súboru chcete. Hovoríme, ¾e príkaz "èíta argument -z terminálu" (v tomto prípade je argumentom meno súboru). Potom, èo -vyvoláte príkaz - - C-x C-f Vyhµadanie súboru - -Emacs sa Vás opýta na meno súboru. Meno súboru, ktoré pí¹ete, sa -objavuje v spodnom riadku obrazovky, ktorý sa v tejto situácii nazýva -minibuffer. Pre editáciu mena súboru mô¾ete pou¾íva» obvyklé editaèné -príkazy Emacsu. - -Zadávanie mena súboru (v¹eobecne akýkoµvek vstup z minibuffera) mô¾ete -zru¹i» príkazom C-g. - ->> Stlaète C-x C-f a potom C-g. To minibuffer zru¹í a tie¾ to zru¹í - príkaz C-x C-f, ktorý minibuffer pou¾il. Tak¾e nevyhµadáte ¾iadny - súbor. - -Po napísaní mena súboru stlaète na jeho ukonèenie. -Príkaz C-x C-f potom zaène pracova» a vyhµadá súbor, ktorý ste zvolili. -Po skonèení príkazu C-x C-f minibuffer zmizne. - -Po malej chvíli sa obsah súboru objaví na obrazovke a mô¾ete ho -editova». Keï chcete zmeny natrvalo ulo¾i», pou¾ite príkaz - - C-x C-s Ulo¾enie súboru - -To skopíruje text z Emacsu do súboru. Keï to spravíte prvý krát, Emacs -premenuje pôvodný súbor na súbor s novým menom, aby nebol stratený. -Nové meno je vytvorené pridaním "~" na koniec pôvodného mena súboru. - -Keï je ukladanie dokonèené, Emacs zobrazí meno zapísaného súboru. -Mali by ste uklada» rozumne èasto, aby ste nestratili príli¹ veµa práce -v prípade pádu systému. - ->> Stlaète C-x C-s pre ulo¾enie Va¹ej kópie tútorialu. - Malo by to zobrazi» "Wrote ...TUTORIAL.sk" v spodnom riadku obrazovky. - -POZNÁMKA: Na niektorých systémoch spôsobí stlaèenie C-x C-s zatuhnutie -obrazovky a nevidíte ¾iadny ïal¹í výstup z Emacsu. To znamená, ¾e -"vlastnos»" operaèného systému nazvaná "flow control" zachytáva C-s a -nepustí ho k Emacsu. Pre odtuhnutie obrazovky stlaète C-q. Potom -v sekcii "Spontaneous Entry to Incremental Search" v manuále Emacsu -vyhµadajte radu, ako sa vysporiada» s touto "vlastnos»ou". - -Existujúci súbor mô¾ete vyhµada», aby ste ho mohli prehliada» alebo -editova». Mô¾ete tie¾ vyhµada» súbor, ktorý e¹te neexistuje. To je -spôsob, akým sa dá vytvori» súbor v Emacse: vyhµadajte súbor, ktorý -bude na zaèiatku prázdny a potom zaènite vklada» text urèený pre tento -súbor. Keï po¾iadate o ulo¾enie, Emacs skutoène vytvorí súbor -s textom, ktorý ste vlo¾ili. Od tej chvíle sa potom mô¾ete cíti», ako -keby ste editovali u¾ existujúci súbor. - - -* BUFFERY ---------- - -Ak vyhµadáte pomocou C-x C-f druhý súbor, prvý súbor v Emacse -zostáva. Mô¾ete sa doò spä» prepnú» jeho opätovným vyhµadaním -pomocou C-x C-f. Týmto spôsobom mô¾ete do Emacsu dosta» pomerne veµa -súborov. - ->> Vytvorte súbor pomenovaný "foo" stlaèením C-x C-f foo . - Potom vlo¾te nejaký text, zmeòte ho a ulo¾te "foo" stlaèením C-x C-s. - Nakoniec stlaète C-x C-f TUTORIAL.sk , èím sa vrátite spä» do - tútorialu. - -Emacs ukladá text ka¾dého súboru do objektu nazývaného "buffer". -Vyhµadanie súboru vytvorí v Emacse nový buffer. Ak chcete vidie» zoznam -bufferov, ktoré momentálne existujú vo Va¹om procese Emacs, stlaète: - - C-x C-b Zoznam bufferov - ->> Skúste teraz C-x C-b. - -Uvidíte, ¾e ka¾dý buffer má v zozname meno a mô¾e tam ma» tie¾ meno súboru, -ktorého text obsahuje. AKÝKO¥VEK text, ktorý vidíte v emacsovom okne, je v¾dy -súèas»ou nejakého bufferu. - ->> Stlaète C-x 1, aby ste sa zbavili zoznamu bufferov. - -Ak máte niekoµko bufferov, iba jeden z nich je "aktuálny". Je to ten buffer, -ktorý práve upravujete. Ak chcete upravova» iný buffer, musíte sa doòho -"prepnú»". Ak sa chcete prepnú» do bufferu so súborom, mô¾ete ho znova otvori» -príkazom C-x C-f. Ale existuje jednoduch¹í spôsob: pou¾ite príkaz C-x b. Pri -tomto príkaze musíte napísa» meno bufferu. - ->> Napí¹te C-x b foo na vrátenie sa do bufferu "foo", ktorý uchováva - text súboru "foo". Potom napí¹te C-x b TUTORIAL.sk na vrátenie sa - do tohto návodu. - -Väè¹inu èasu, meno bufferu je také isté ako meno súboru (bez názvu adresára). -Ale nie je to v¾dy pravda. Zoznam bufferov vytvorený s C-x C-b v¾dy uká¾e mená -ka¾dého bufferu. - -HOCAKÝ text, ktorý vidíte v okne Emacsu je v¾dy èas» nejakého bufferu. -Niektoré buffery nezodpovedajú súborom. Napríklad, buffer pomenovaný -"*Buffer List*" nemá ¾iadny súbor. Je to buffer, ktorý obsahuje zoznam -bufferov, vytvorený pomocou C-x C-b. Buffer nazvaný "*Messages*" tie¾ -nezodpovedá súboru¨obsahuje správy, ktoré sa objavili na spodnom riadku poèas -vá¹ho sedenia s Emacsom. - ->> Napí¹te C-x b *Messages* a pozrite sa na buffer so správami. Potom - napí¹te C-x b TUTORIAL.sk na vrátenie sa do tohto návodu. - -Ak zmeníte text jedného súboru a potom vyhµadáte iný súbor, -nespôsobí to ulo¾enie prvého súboru. Jeho zmeny zostávajú v Emacse -uchované v jemu zodpovedajúcom buffere. Vytvorenie a úprava druhého -súboru nemá ¾iadny vplyv na buffer prvého súboru. To je veµmi -u¾itoèné, ale tie¾ to znamená, ¾e potrebujete vhodný spôsob, ako ulo¾i» -buffer prvého súboru. Nutnos» prepnú» sa spä» pomocou C-x C-f, aby -ho bolo mo¾né ulo¾i» prostredníctvom C-x C-s, by bola nemiestne -ob»a¾ujúca. Tak¾e máme - - C-x s Ulo¾enie niektorých bufferov - -C-x s sa Vás spýta na ka¾dý buffer, ktorý obsahuje zmeny, ktoré ste -neulo¾ili. Pre ka¾dý taký buffer sa Vás spýta, èi ho má ulo¾i». - ->> Vlo¾te riadok textu a potom stlaète C-x s. - Emacs by sa Vás mal opýta», èi má by» ulo¾ený buffer nazvaný TUTORIAL.sk. - Odpovedzte na túto otázku áno (yes) stlaèením "y". - - -* ROZ©IROVANIE SADY PRÍKAZOV ----------------------------- - -Existuje omnoho, omnoho viac príkazov Emacsu, ako tie, ktoré by vôbec mohli -by» rozmiestnené na v¹etky control a meta znaky. Emacs tento problém -obchádza prostredníctvom X (eXtend) príkazu. Ten vzniká dvoma spôsobmi: - - C-x Znakový eXtend. Nasledovaný jedným znakom. - M-x Pomenovaný príkaz eXtend. Nasledovaný dlhým názvom. - -To sú príkazy, ktoré sú v¹eobecne u¾itoèné, ale menej èasto pou¾ívané -ako tie, ktoré ste sa u¾ nauèili. U¾ ste videli dva z nich: súborové -príkazy C-x C-f pre vyhµadanie a C-x C-s pre ulo¾enie. Iný príklad je -príkaz pre ukonèenie Emacsu -- tj. príkaz C-x C-c. (Nemajte obavy -o stratu zmien, ktoré ste spravili; C-x C-c ponúkne ulo¾enie ka¾dého -zmeneného súboru pred tým, ne¾ sa Emacs skonèí.) - -C-z je príkaz na *doèasné* opustenie Emacsu -- mô¾ete sa po òom do -spusteného Emacsu vráti». - -Na systémoch, ktoré to umo¾òujú, C-z Emacs "pozastaví"; tzn. vráti Vás -do shellu, ale Emacs neskonèí. V najbe¾nej¹ích shelloch sa mô¾ete do -Emacsu vráti» príkazom `fg' alebo pomocou `%emacs'. - -Na systémoch, ktoré pozastavovanie procesov nemajú implementované, C-z -vytvorí subshell be¾iaci pod Emacsom, aby Vám dal ¹ancu spusti» iné -programy a potom sa do Emacsu vráti»; nevykoná teda pravé opustenie -Emacsu. V tom prípade je obvyklou cestou návratu zo subshellu do Emacsu -shellový príkaz `exit'. - -Chvíµa pre pou¾itie C-x C-c nastane vtedy, keï sa chystáte odhlási» sa zo -systému. Správne je to tie¾ pri ukonèovaní Emacsu vyvolaného po¹tovým -programom a rôznymi inými utilitami, preto¾e tie nemusia vedie», ako si poradi» -s pozastavením Emacsu. Napriek tomu za normálnych okolností, pokiaµ sa -nechystáte odhlási», je lep¹ie Emacs pozastavi» pomocou C-z ako ho ukonèi». - -Existuje mnoho C-x príkazov. Tu je zoznam tých, ktoré ste sa u¾ nauèili: - - C-x C-f Vyhµadanie súboru - C-x C-s Ulo¾enie súboru - C-x C-b Zoznam bufferov - C-x C-c Ukonèenie Emacsu - C-x 1 Zru¹enie v¹etkých okien okrem jedného - C-x u Undo - -Pomenované eXtended príkazy sú príkazy, ktoré sú pou¾ívané e¹te menej, alebo -príkazy, ktoré sú pou¾ívané iba v istých módoch. Príkladom je príkaz -replace-string, ktorý globálne nahradí jeden re»azec iným. Keï stlaèíte M-x, -vypí¹e sa na spodnom riadku obrazovky prompt M-x a vy by ste mali zada» meno -príkazu; v tomto prípade "replace-string". Jednoducho napí¹te "repl s" -a Emacs názov doplní. ( je klávesa Tab, be¾ne sa nachádza nad klávesou -CapsLock alebo Shift na µavom okraji klávesnice.) Skonèite zadávanie mena -príkazu pomocou . - -Príkaz replace-string vy¾aduje dva argumenty -- re»azec, ktorý má by» -nahradený, a re»azec, ktorý ho má nahradi». Ka¾dý argument musíte -ukonèi» pomocou . - ->> Presuòte kurzor na prázdny riadok dva riadky pod týmto. - Potom napí¹te M-x repl szmenilmodifikoval. - - V¹imnite si, ako sa tento riadok zmenil: nahradili ste slovo - z-m-e-n-i-l slovom "modifikoval", kdekoµvek sa za aktuálnou pozíciou - kurzoru vyskytlo. - - -* AUTOMATICKÉ UKLADANIE ------------------------ - -Ak ste spravili zmeny v súbore, ale nemáte ich e¹te ulo¾ené, -mô¾u by» v prípade páde systému stratené. Aby vás Emacs pred tým ochránil, -periodicky zapisuje "auto save" súbor pre ka¾dý súbor, ktorý -editujete. Meno auto save súboru má na zaèiatku a na konci #; -napríklad ak sa Vá¹ soubor nazýva "hello.c", jeho auto save -súbor sa nazýva "#hello.c#". Ak súbor ulo¾íte normálnym spôsobom, -Emacs auto save súbor zma¾e. - -Ak nastane pád systému, mô¾ete svoje úpravy obnovi» z auto-save -súboru, a to normálnym vyhµadaním súboru (toho, ktorý ste editovali, -nie auto save súboru) a následným spustením M-x recover-file. -Na ¾iados» o potvrdenie odpovedzte zadaním yes pre pokraèovanie a -obnovenie auto-save dát. - - -* ECHO OBLAS« -------------- - -Keï Emacs vidí, ¾e pí¹ete príkazy pomaly, ukazuje Vám ich v spodnej -èasti obrazovky v oblasti nazývanej "echo oblas»". Echo oblas» obsahuje -dolný riadok obrazovky. - - -* STAVOVÝ RIADOK ----------------- - -Riadok bezprostredne nad echo oblas»ou sa nazýva "stavový riadok" -("mode line"). -Stavový riadok vraví nieèo ako: - ---:** TUTORIAL.sk (Fundamental)--L670--58%---------------- - -Tento riadok podáva u¾itoènú informáciu o stave Emacsu a texte, ktorý -editujete. - -U¾ viete, èo znamená meno súboru -- je to súbor, ktorý ste vyhµadali. --NN%-- oznaèuje Va¹u aktuálnu pozíciu v texte; vraví, ¾e NN percent textu -je nad horným okrajom obrazovky. Ak je zaèiatok súboru na obrazovke, je -tu --Top-- a nie --00%--. Ak je koniec textu na obrazovke, je tu ---Bot--. Ak sa dívate na tak malý text, ¾e sa celý vojde na obrazovku, -stavový riadok vraví --All--. - -Písmeno L a èíslice oznaèujú pozíciu iným spôsobom, udávajú riadok, na ktorom -sa nachádza kurzor. - -Hviezdièky blízko zaèiatku znamenajú, ¾e ste text zmenili. Tesne po -vyhµadaní alebo ulo¾ení súboru v tejto èasti stavového riadku nie sú ¾iadne -hviezdièky, iba pomlèky. - -Èas» stavového riadku v zátvorkách vraví, v akých editaèných módoch sa -nachádzate. Implicitný mód je Fundamental, èo je ten, ktorý momentálne -pou¾ívate. Je príkladom hlavného módu ("major mode"). - -Emacs má celý rad hlavných módov. Niektoré z nich sú urèené pre -editovanie rôznych programovacích jazykov a/alebo textov ako napr. Lisp mód, -Text mód, atï. V µubovoµnom okamihu je aktívny práve jeden hlavný mód a -jeho meno je mo¾né nájs» v stavovom riadku na mieste, kde je teraz -"Fundamental". - -Ka¾dý hlavný mód mení chovanie niektorých príkazov. Napríklad existujú -príkazy pre vytváranie komentárov v programe, a preto¾e ka¾dý programovací -jazyk má inú predstavu o tom, ako má komentár vyzera», -musí ka¾dý hlavný mód vklada» komentáre inak. Ka¾dý hlavný mód je -vlastne meno extended príkazu, ktorým sa do tohoto módu mô¾ete -prepnú». Napríklad M-x fundamental-mode je príkaz pre prepnutie sa do -Fundamental módu. - -Ak sa chystát meni» normálny text, ako napríklad tento súbor, pravdepodobne by -ste mali pou¾i» Text mód. -> Napí¹te M-x text-mode . - -Nebojte sa, ¾iadny z príkazov, ktoré ste sa nauèili, chovanie Emacsu nijako -významne nezmení. Mô¾ete si ale v¹imnú», ¾e M-f a M-b teraz pracujú -s apostrofmi ako so súèas»ou slova. Pred tým, vo Fundamental móde, M-f -a M-b pracovali s apostrofmi ako oddeµovaèmi slov. - -Hlavné módy obyèajne robia men¹ie zmeny, ako bola táto: príkazy väè¹inou -robia "to isté", ale v ka¾dom hlavnom móde pracujú trochu inak. - -Dokumentáciu k aktuálnemu hlavnému módu si mô¾ete zobrazi» stlaèením C-h m. - ->> Raz alebo viac krát pou¾ite C-u C-v, aby ste tento riadok dostali - na vrchol obrazovky. ->> Stlaète C-h m, aby ste videli, ako sa Text mód lí¹i od Fundamental - módu. ->> Stlaète C-x 1 pre odstránenie dokumentácie z obrazovky. - -Hlavné módy sa nazývajú hlavné preto, ¾e tie¾ existujú vedµaj¹ie módy -(minor modes). Vedµaj¹ie módy nie sú alternatívou k hlavným módom, ale -ich malé modifikácie. Ka¾dý vedµaj¹í mód mô¾e by» zapnutý alebo vypnutý -sám o sebe nezávisle na v¹etkých ostatných vedµaj¹ích módoch a nezávisle na -hlavnom móde. Tak¾e nemusíte pou¾íva» ¾iadny vedµaj¹í mód alebo mô¾ete -pou¾íva» jeden vedµaj¹í mód alebo µubovoµnú kombináciu niekoµkých -vedµaj¹ích módov. - -Jedným z veµmi u¾itoèných vedµaj¹ích módov, hlavne pre úpravy slovenských -textov, je Auto Fill mód. Keï je tento mód zapnutý, Emacs zalomí riadok -medzi dvoma slovami, kedykoµvek vkladáte text a riadok sa stane príli¹ -dlhým. - -Auto Fill mód mô¾ete zapnú» vykonaním M-x auto-fill-mode. -Ak je tento mód zapnutý, mô¾ete ho vypnú» vykonaním M-x -auto-fill-mode. Ak je mód vypnutý, tento príkaz ho zapína, -a ak je mód zapnutý, tak ho tento príkaz vypína. Vravíme, ¾e tento -príkaz prepína ("toggles") tento mód. - ->> Napí¹te teïa M-x auto-fill-mode. Potom vkladajte "asdf " stále - dookola tak dlho, pokiaµ neuvidíte, ako sa vkladaný riadok rozdelí na dva - riadky. Do textu musíte vklada» medzery preto, ¾e Auto Fill mód - zalamuje riadky iba v medzerách. - -Okraj je obvykle nastavený na 70 znakov, ale mô¾ete to zmeni» príkazom -C-x f. Hodnotu okraju, ktorú si prajete, by ste mali preda» ako -numerický argument. - ->> Napí¹te C-x f s argumentom 20. (C-u 2 0 C-x f). - Potom napí¹te nejaký text a pozorujte, ako Emacs vypåòa riadky po - 20. znakoch. Potom nastavte okraj spä» na 70 opätovným pou¾itím - C-x f. - -Ak spravíte zmeny uprostred odstavca, Auto Fill mód ho -nepreformátuje. -Pre preformátovanie odstavca stlaète M-q (Meta-q) s kurzorom vnútri -odstavca. - ->> Presuòte kurzor do predchádzajúceho odstavcu a stlaète M-q. - - -* VYH¥ADÁVANIE --------------- - -Emacs vie v texte vyhµadáva» re»azce (tj. skupiny spojených znakov alebo -slov) smerom vpred alebo vzad. Hµadanie re»azca je príkaz presúvajúci -kurzor; presunie kurzor na najbli¾¹ie miesto, kde sa tento re»azec nachádza. - -Vyhµadávací príkaz Emacsu sa lí¹i od vyhµadávacích príkazov väè¹iny -editorov v tom zmysle, ¾e je "inkrementálny". To znamená, ¾e vyhµadávanie -sa robí u¾ v okam¾iku, keï zadávate hµadaný re»azec. - -Príkaz pre hµadanie vpred je C-s a pre hµadanie vzad C-r. -POZOR! E¹te to neskú¹ajte. - -Keï stlaèíte C-s, uvidíte v echo oblasti prompt "I-search". To Vám -vraví, ¾e Emacs sa nacháza v stave, ktorý sa nazýva inkrementálne hµadanie, -a èaká, kým mu zadáte, èo chcete hµada». hµadanie ukonèí. - ->> Teraz zaènite hµadanie stlaèením C-s. POMALY, písmeno po písmene, pí¹te - slovo 'kurzor'. Po ka¾dom písmene si v¹imnite, èo sa deje s kurzorom. - Teraz ste vyhµadali "kurzor" prvý krát. ->> Stlaète C-s znova, aby ste na¹li ïal¹í výskyt slova "kurzor". ->> Teraz ¹tyri krát stlaète a pozerajte, ako sa kurzor - presúva. ->> Stlaète pre ukonèenie hµadania. - -Videli ste, èo sa stalo? Emacs sa v inkrementálnom hµadaní pokú¹a -prejs» na ïal¹í výskyt re»azca, ktorý ste dosiaµ napísali. Ak chcete -prejs» na ïal¹í výskyt 'kurzor', jednoducho stlaète C-s zas. -Ak u¾ ¾iadny taký výskyt nie je, Emacs pípne a povie Vám, ¾e -hµadanie momentálne "zlyháva", C-g hµadanie ukonèí. - -POZNÁMKA: Na niektorých systémoch stlaèenie C-s spôsobí zatuhnutie -obrazovky a neuvidíte ¾iadny ïal¹í výstup z Emacsu. To znamená, ¾e -"vlastnos»" operaèného systému nazvaná "flow control" zachytáva C-s a -nepustí ho k Emacsu. Pre odtuhnutie obrazovky stlaète C-q. Potom -vyhµadajte v sekcii "Spontaneous Entry to Incremental Search" v manuále -Emacsu radu, ako obís» túto "vlastnos»". - -Ak uprostred inkrementálneho hµadania stlaèíte , uvidíte, -¾e posledný znak v hµadanom re»azci zmizne a hµadanie sa vracia na posledné -miesto hµadania. Predpokladajme napríklad, ¾e ste napísali "c", aby ste -na¹li prvý výskyt "k". Ak teraz stlaèíte "u", kurzor sa presunie na -prvý výskyt "ku". Teraz stlaète . To vyma¾e "u" z hµadaného -re»azca a kurzor sa presunie spä» na prvý výskyt "k". - -Ak uprostred hµadania stlaèíte control alebo meta znak (s niekoµkými -výnimkami -- znaky, ktoré sú ¹peciálne v hµadaní, ako C-s a C-r), -hµadanie bude ukonèené. - -C-s zaèína hµadanie, ktoré hµadá akýkoµvek výskyt hµadaného re»azca ZA -aktuálnu pozíciu kurzoru. Ak chcete nieèo hµada» v predchádzajúcom texte, -stlaète namiesto C-s C-r. V¹etko, èo sme povedali o C-s, platí tie¾ o C-r -okrem toho, ¾e smer hµadania je opaèný. - - -* VIAC OKIEN ------------- - -Jednou z pekných vlastností Emacsu je to, ¾e mô¾e na obrazovke zobrazi» -viac okien súèasne. - ->> Presuòte kurzor na tento riadok a stlaète C-u 0 C-l (to je CONTROL-L, nie - CONTROL-1). - ->> Ak stlaèíte C-x 2, obrazovka sa rozdelí na dve okná. - Obidve okná zobrazujú tento tútorial. Kurzor zostáva na vrchu okna. - ->> Stlaète C-M-v pre rolovanie spodného okna. - (Ak nemáte skutoènú klávesu Meta, stlaète ESC C-v.) - ->> Stlaète C-x o ("o" ako "other") pre presun kurzoru do dolného okna. ->> Pou¾ite C-v a M-v v spodnom okne pre jeho rolovanie. - Pokraèujte v èítaní týchto in¹trukcií v hornom okne. - ->> Znovu stlaète C-x o pre presun kurzoru spä» do horného okna. - Kurzor v hornom okne je presne na mieste, kde bol pôvodne. - -Mô¾ete ïalej pou¾íva» C-x o pre prepínanie medzi oknami. Ka¾dé okno má svoju -vlastnú pozíciu kurzoru, ale kurzor zobrazuje iba jedno okno. -V¹etky obvyklé editaèné príkazy platia pre okno, v ktorom sa nachádza -kurzor. Toto okno nazývame "aktívne okno" ("selected window"). - -Príkaz C-M-v je veµmi u¾itoèný, ak v jednom okne editujete text a -druhé okno pou¾ívate iba pre prehµad. Mô¾ete necháva» kurzor stále -v okne, kde editujete, a postupova» po druhom okne pomocou C-M-v. - -C-M-v je príkladom CONTROL-META znaku. Ak máte skutoènú META klávesu, -mô¾ete vyvola» C-M-v pridr¾aním oboch kláves CTRL a META pri stlaèení v. -Nezále¾í na tom, èi stlaèíte ako prvú klávesu CTRL alebo META, preto¾e obe -tieto klávesy fungujú ako modifikátory kláves, ktoré stlaèíte. - -Ak nemáte skutoènú META klávesu, mô¾ete namiesto nej pou¾i» ESC, na -poradí zále¾í: musíte stlaèi» ESC a potom CTRL-v; CTRL-ESC v by -nefungovalo. To preto, lebo ESC je samostatný znak, a nie modifikátor. - ->> Stlaète C-x 1 (v hornom okne), aby ste sa zbavili dolného okna. - -(Ak by ste C-x 1 stlaèili v dolnom okne, odstránilo by to horné okno. -Chápte tento príkaz ako "ponechaj akurát jedno okno -- to, v ktorom -akurát som".) - -Nemusíte v oboch oknách zobrazova» ten istý buffer. Ak pou¾ijete -C-x C-f pre vyhµadanie súboru v jednom z okien, druhé okno sa nezmení. -Mô¾ete vyhµadáva» súbory v oboch oknách nezávisle. - -Tu je ïal¹í spôsob, ako vyu¾i» dve okná na zobrazenie dvoch rôznych vecí: - ->> Stlaète C-x 4 C-f nasledované menom niektorého z Va¹ich súborov. - Dokonèite to pomocou . Vidíte zadaný súbor v dolnom okne. - Presunul sa tam aj kurzor. - ->> Stlaète C-x o pre presun spä» do horného okna a C-x 1 pre zmazanie - dolného okna. - - -* REKURZÍVNE EDITAÈNÉ ÚROVNE ----------------------------- - -Obèas sa dostanete do nieèoho, èo sa nazýva "rekurzívna editaèná úroveò" -("recursive editing level"). To je indikované hranatými zátvorkami v -stavovom riadku obklopujúcemu zátvorky okolo mena hlavného módu. -Napríklad mô¾ete vidie» [(Fundamental)] namiesto (Fundamental). - -Aby ste sa dostali z rekurzívnej editaènej úrovne, stlaète ESC ESC ESC. -To je v¹eobecný "vyskakovací" príkaz. Mô¾ete ho pou¾i» tie¾ pre odstránenie -niektorých okien a vyskoèenie z minibuffera. - ->> Stlaète M-x, aby ste sa dostali do minibuffera; potom stlaète - ESC ESC ESC, aby ste sa z neho dostali von. - -Z rekurzívnej editaènej úrovne nemô¾ete vyskoèi» pomocou C-g. To preto, ¾e -C-g je vyu¾ívané pre ru¹enie príkazov a argumentov VO VNÚTRI rekurzívnej -editaènej vrstvy. - - -* ZÍSKANIE ÏAL©EJ NÁPOVEDY --------------------------- - -V tomto tútoriale sme sa pokúsili Vám poskytnú» dostatok informácií, -aby ste mohli zaèa» Emacs pou¾íva». V Emacse je toho toµko, ¾e by bolo -nemo¾né to v¹etko objasni» v tomto návode. V ka¾dom prípade sa o Emacse -mô¾ete nauèi» viac, preto¾e má veµa u¾itoèných vlastností. Emacs ponúka -príkazy pre èítanie dokumentácie svojich príkazov. V¹etky tieto "help" -príkazy zaèínajú znakom Control-h, ktorý sa nazýva "help znak". - -Pre pou¾itie vlastností nápovedy stlaète znak C-h a potom znak hovoriaci, -aký druh nápovedy si ¾iadate. Ak ste NAOZAJ stratení, stlaète C-h ? a -Emacs Vám povie, aké druhy nápovedy Vám mô¾e poskytnú». Ak ste stlaèili -C-h a potom ste sa rozhodli, ¾e ¾iadnu nápovedu nechcete, jednoducho ju -zru¹te stlaèením C-g. - -(Na niektorých poèítaèoch je význam znaku C-h zmenený. To by naozaj -nemalo by» v¹eobecným nastavením pre v¹etkých pou¾ívateµov, tak¾e máte právo -pos»a¾ova» sa systémovému administrátorovi. Do tej doby, ak C-h -nezobrazuje hlásenie o nápovede v dolnej èasti obrazovky, skúste namiesto -toho pou¾íva» klávesu F1 alebo M-x help RET.) - -Najzákladnej¹í príkaz nápovedy je C-h c. Stlaète C-h, znak c a klávesový -príkaz; Emacs potom zobrazí veµmi struèný popis príkazu. - ->> Stlaète C-h c C-p. - - Hlásenie by malo vyzera» asi takto - - C-p runs the command previous-line - -To vám oznamuje "meno funkcie". Mená funkcií sú pou¾ívané hlavne pre -konfiguráciu a roz¹irovanie Emacsu. Ale preto¾e mená funkcií sú volené -tak, aby naznaèovali, èo zodpovedajúci príkaz robí, mô¾u slú¾i» tie¾ -ako veµmi struèná dokumentácia -- dostatoèná na to, aby Vám pripomenula -príkazy, ktoré ste sa u¾ nauèili. - -Viacznakové príkazy ako C-x C-s a (ak nemáte META, EDIT ani ALT -klávesu) v sú pre C-h c povolené tie¾. - -Na získanie viac informácií o príkaze pou¾ite namiesto C-h c C-h k. - ->> Stlaète C-h k C-p. - -To zobrazí dokumentáciu k funkcii a jej meno v emacsovom okne. Ak -výstup preèítate, stlaète C-x 1, aby ste sa textu nápovedy zbavili. -Nemusíte to robi» hneï. Mô¾ete chvíµu editova» a nazera» do textu -nápovedy a a¾ potom stlaèi» C-x 1. - -Tu sú ïal¹ie u¾itoèné voµby C-h: - - C-h f Popis funkcie. Zadáváte meno funkcie. - ->> Skúste napísa» C-h f previous-line. - To vypí¹e v¹etky informácie, ktoré Emacs má o funkcii implementujúcej - príkaz C-p. - -Podobný príkaz C-h v zobrazí dokumentáciu premennej, ktorej hodnotu -mô¾ete nastavi» pre ovplyvnenie chovania Emacsu. Meno premennej musíte -zada», a¾ keï sa naò Emacs spýta. - - C-h a Príkazové apropos. Zadajte kµúèové slovo a Emacs vypí¹e - v¹etky príkazy, ktorých meno obsahuje toto kµúèové - slovo. V¹etky tieto príkazy mô¾u by» vyvolané pomocou - Meta-x. Pre niektoré príkazy príkazové apropos vypí¹e - tie¾ jedno alebo dvojznakové sekvencie, ktoré vykonávajú - ten istý príkaz. - ->> Napí¹te C-h a file. - -To zobrazí v druhom okne zoznam v¹etkých M-x príkazov obsahujúcich "file" vo -svojom názve. Znakové príkazy ako C-x C-f uvidíte vypísané vedµa -zodpovedajúcich mien príkazov ako find-file. - ->> Stlaète C-M-v pre posun okna s nápovedou. Urobte to viac krát. - ->> Stlaète C-x 1 pre zmazanie okna s nápovedou. - - C-h i Èítanie on-line manuálov (tie¾ Info). Tento príkaz - Vás prepne do ¹peciálneho buffera s názvom `*info*', - v ktorom mô¾ete èíta» on-line manuály pre balíky - in¹talované na va¹om systéme. Ak stlaèíte m emacs , - mô¾ete si napríklad preèíta» manuál k Emacsu. Ak ste - doteraz nikdy nepou¾ívali Info, stlaète ? a Emacs vám - predstaví hlavné mo¾nosti módu pre Info. Ak toto - predstavenie absolvujete, mali by ste pou¾íva» Info - manuál Emacsu ako svoju primárnu dokumentáciu. - - -* VIAC VLASTNOSTÍ ------------------ - -Na to, aby ste sa nauèili viac o Emacse, preèítajte si jeho manuál, buï ako -knihu alebo on-line vo formáte Info (pou¾ite Help menu alebo stlaète F10 h r). -Dve vlastnosti, ktoré sa vám mô¾u páèi», je dopåòanie, ktoré ¹etrí písanie a -dired, ktorý zjednodu¹uje prácu so súbormi. - -Dopåòanie je na vyvarovanie sa zbytoèného písania. Napríklad, keï sa chcete -dosta» do bufferu *Messages*, mô¾ete napísa» C-x b *M a Emacs doplní -zvy¹ok mena bufferu, a¾ potiaµ, pokiaµ ho doká¾e zisti» z toho, èo ste u¾ -napísali. Dopåòanie je popísané v Info verzii manuálu Emacsu, v kapitole -nazvanej "Completion". - -Dired vám dovoµuje zobrazi» zoznam súborov v adresári (a voliteµne jeho -podadresároch), presúva», upravova», premenováva», maza» a ináè manipulova» so -súbormi. Dired je popísané v Info verzii manuálu Emacsu, v kapitole nazvanej -"Dired". - -Manuál tie¾ popisuje veµa iných vlastností Emacsu. - -* ZÁVER -------- - -Nezabudnite, Emacs ukonèíte vykonaním príkazu C-x C-c. Pre doèasný -odskok do shellu, z ktorého sa do Emacsu mô¾ete opä» vráti», -pou¾ite C-z. - -Zámerom tohto tútorialu je by» zrozumiteµný v¹etkým novým pou¾ívateµom, tak¾e -ak narazíte na nieèo nejasného, tak nezúfajte a nedávajte to za vinu sebe --- s»a¾ujte sa! - - -KOPÍROVANIE ------------ - -Tento tútorial vychádza z dlhej rady emacsových tútorialov zaèatej -tútorialom napísaným Stuartom Cracraftom pre pôvodný Emacs. - -Táto verzia tútorialu je, podobne ako GNU Emacs, chránená copyrightom -a je ¹írená s povolením distribuova» kópie za istých podmienok: - -Copyright (C) 1985, 1996, 1998, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 Free Software Foundation, Inc. - - Ka¾dému je zaruèené právo vytvára» a distribuova» presné kópie tohto - dokumentu tak, ako ho dostal, na akomkoµvek médiu, s tým, ¾e bude - zachovaná táto poznámka o autorstve a poznámka o povolení, a ¾e - distribútor zaruèuje príjemcovi právo na ïal¹iu redistribúciu povolenú - touto poznámkou. - - Je zaruèené právo distribuova» modifikované verzie tohto dokumentu - alebo jeho èastí pod hore uvedenými podmienkami za predpokladu, ¾e - obsahuje jasné poznámky uvádzajúce, kto urobil posledné úpravy. - -Podmienky pre kopírovanie Emacsu samotného sú zlo¾itej¹ie, ale -v rovnakom duchu. Preèítajte si, prosím, súbor COPYING a potom dajte kópie -GNU Emacsu svojim priateµom. Pomáhajte potlaèova» softwarovú ob¹trukciu -("vlastníctvo") pou¾ívaním, písaním a zdieµaním free softwaru! - -;;; Local Variables: -;;; coding: iso-latin-2 -;;; End: - -;;; arch-tag: 87861cfa-5cf6-4b87-9fab-86c93c5ca9f3 diff --git a/etc/TUTORIAL.sl b/etc/TUTORIAL.sl deleted file mode 100644 index a682d9acbe0..00000000000 --- a/etc/TUTORIAL.sl +++ /dev/null @@ -1,1140 +0,0 @@ -Prvo berilo za Emacs. Pogoji uporabe in raz¹irjanja so navedeni na koncu. - -Ukazi v Emacsu v splo¹nem vkljuèujejo tipki CONTROL (vèasih oznaèeni -CTRL ali CTL) in META (vèasih oznaèena EDIT ali ALT). Namesto, da bi ju -vedno izpisali s celim imenom, bomo uporabili naslednji okraj¹avi: - - C- pomeni, da moramo dr¾ati pritisnjeno tipko CONTROL, ko - vtipkamo . Oznaka C-f tako pomeni: dr¾imo pritisnjeno - tipko CONTROL in pritisnemo tipko f. - M- pomeni, da moramo dr¾ati pritisnjeno tipko META, EDIT ali - ALT, ko vtipkamo . Èe na tipkovnici ni tipk META, EDIT - ali ALT, pritisnemo tipko ESC, jo spustimo in zatem - pritisnemo tipko . Tipko ESC bomo oznaèevali z . - -Pomembno: Emacs zapustimo z ukazom C-x C-c (dva znaka). -V uèbeniku so vaje, s katerimi preskusite nove ukaze. Oznaèujeta jih -znaka ,>>` ob levem robu. Zgled: -<> -[Sredina strani je iz didaktiènih razlogov prazna. Besedilo se nadaljuje spodaj] ->> Vtipkajte zdaj ukaz C-v (View next screen, Prika¾i naslednji zaslon), - da se premaknete na naslednji zaslon (kar poskusite, pritisnite - hkrati tipko CONTROL in V). Od zdaj naprej boste morali to - napraviti sami vsakiè, ko pridete do konca zaslona. - -Ste opazili, da sta se dve vrstici s prej¹njega zaslona ponovili? Ta -kontinuiteta olaj¹a branje pri skakanju s strani na stran. - -Prva stvar, ki si jo morate zapomniti, je, kako se premikate po -datoteki. Zdaj ¾e veste, da se premaknete za cel zaslon naprej z -ukazom C-v. Za cel zaslon nazaj pa se premaknete z ukazom M-v -(pritisnite tipko META in jo dr¾ite ter pritisnite tipko v, ali pa -pritisnite in spustite ter zatem pritisnite tipko v, èe tipke -META, EDIT ali ALT na va¹i tipkovnici ni). - ->> Nekajkrat pritisnite M-v in C-v, da vidite, kako ukaza delujeta. - - -* POVZETEK ----------- - -Za pregled celega zaslona besedila so uporabni naslednji ukazi: - - C-v Premik se za cel zaslon naprej - M-v Premik se za cel zaslon nazaj - C-l Cel zaslon premaknemo tako, da je zdaj po vertikali - osredninjen okoli besedila, kjer se nahaja kazalèek - (znak v C-l je èrka L, ne ¹tevka 1) - ->> Poi¹èite kazalèek na zaslonu in si zapomnite besedilo okoli njega. - Vtipkajte C-l. - Ponovno poi¹èite kazalèek. Besedilo okoli njega je ostalo isto. - -Za premikanje za cel zaslon naprej ali nazaj lahko tipkovnicah, ki -imajo ti tipki, uporabljate tudi PageUp in PageDown. Opisan postopek s -C-v in M-v pa deluje povsod. - - -* PREMIKANJE KAZALÈKA ---------------------- - -Premiki za celo stran naprej in nazaj so sicer uporabni, ampak kako pa -pridemo do izbranega mesta na zaslonu? - -Naèinov je veè. Najosnovnej¹i je uporaba ukazov C-p, C-b, C-f in -C-n. Ti po vrsti premaknejo kazalèek v prej¹njo vrstico, znak nazaj, -znak naprej, in v naslednjo vrstico. Ti ¹tirje ukazi so enakovredni -kurzorskim tipkam: - - prej¹nja vrstica, C-p - : - : - nazaj, C-b .... trenutni polo¾aj kazalèka .... naprej, C-f - : - : - naslednja vrstica, C-n - ->> S pritiski na C-n ali C-p premaknite kazalèek v sredinsko vrstico - na diagramu zgoraj. Zatem pritisnite C-l. S tem diagram postavite na - sredino zaslona. - -V angle¹èini ima izbor tipk nazoren pomen. P kot ,previous` -(prej¹nji), N kot ,next` (naslednji), B kot ,backward` (nazaj) in F -kot ,forward` (naprej). Te osnovne ukaze za premikanje kazalèka boste -uporabljali ves èas. - ->> Nekajkrat pritisnite C-n, da pride kazalèek do te vrstice. - ->> Z nekaj C-f se pomaknite na desno na sredo vrstice, nato pa nekajkrat - pritisnite C-p. Opazujte, kaj se dogaja s kazalèkom na sredini - vrstice. - -Vsaka vrstice v besedilu je zakljuèena z znakom za novo vrstico -(angl. Newline). Ta loèuje vrstico v besedilu od naslednje. Tudi -zadnja vrstica v datoteki mora biti zaljuèena z znakom za novo vrstico -(èeprav tega Emacs ne zahteva). - ->> Poskusite ukaz C-b, ko je kazalèek na zaèetku vrstice. Kazalèek se - mora premakniti na konec prej¹nje vrstice. To je zato, ker se je - ravnokar premaknil prek znaka za konec vrstice. - -Ukaz C-f premika kazalèek prek znaka za novo vrstico enako kot C-b. - ->> Poskusite ¹e nekajkrat pritisniti C-b, da dobite obèutek za - premikanje kazalèka. Potem nekajkrat poskusite C-f, da pridete do konca - vrstice. ©e enkrat pritisnite C-f, da skoèite v naslednjo vrstico. - -Ko s kazalèkom dose¾ete zgornji ali spodnji rob zaslona, se besedilo -toliko premakne, da kazalèek ostane na zaslonu. V angle¹èini se temu -pravi ,,scrolling``. To omogoèa, da lahko premaknemo kazalèek na -katerokoli mesto v besedilu, a vseeno ostanemo na zaslonu. - ->> Poskusite kazalèek pripeljati s C-n èisto do dna zaslona in si oglejte, - kaj se zgodi. - -Èe se vam zdi premikanje po en znak prepoèasno, se lahko premikate za -celo besedo. M-f (META-f) premakne kazalèek za eno besedo naprej, M-b -pa za besedo nazaj. - ->> Poskusite nekajkrat M-f in M-b. - -Èe je kazalèek sredi besede, ga M-f prestavi na konec besede. Èe je v -belini med besedami, ga M-f premakne na konec naslednje besede. M-b -deluje podobno, a v nasprotni smeri. - ->> Nekajkrat poskusite M-f in M-b, vmes pa ¹e nekaj C-f in - C-b. Opazujte uèinke M-f in M-b, ko je kazalèek sredi besede ali - med besedami. - -Ste opazili paralelo med C-f in C-b na eni strani ter M-f in M-b na -drugi? V Emacsu se dostikrat ukazi Meta nana¹ajo na operacije nad -enotami jezika (besede, stavki, odstavki), medtem ko se ukazi Control -nana¹ajo na operacije, neodvisne od zvrsti besedila (znaki, vrstice -ipd.). - -Podobna zveza je tudi med vrsticami in stavki: ukaza C-a in C-e -premakneta kazalèek na zaèetek oz. konec vrstice, M-a in M-e pa na -zaèetek oz. konec stavka. - ->> Poskusite nekaj ukazov C-a, potem pa nekaj ukazov C-e. - Poskusite nekaj ukazov M-a, potem pa nekaj ukazov M-e. - -Ste opazili, da ponovljeni C-a ne napravijo niè, ponovljeni M-a pa se -premikajo naprej? Èeprav se ne obna¹ata enako, pa je vendar obna¹anje -enega in drugega po svoje naravno. - -Polo¾aju kazalèka na zaslonu pravimo tudi ,,point``, toèka. -Parafrazirano: kazalèek ka¾e na zaslonu, kje je toèka v besedilu. - -Povzetek preprostih ukazov za premikanje kazalèka, vkljuèno s premiki -po besedo in stavek: - - C-f Premik za znak naprej - C-b Premik za znak nazaj - - M-f Premik za besedo naprej - M-b Premik za besedo nazaj - - C-n Premik v naslednjo vrstico - C-p Premik v prej¹njo vrstico - - C-a Premik na zaèetek vrstice - C-e Premik na konec vrstice - - M-a Premik na zaèetek stavka - M-e Premik na konec stavka - ->> Za vajo nekajkrat poskusite vsakega od teh ukazov. - To so najpogosteje uporabljani ukazi. - -©e dva pomembna ukaza za premikanje kazalèka sta M-< (META-manj¹i od), -ki ga premakne na zaèetek datoteke, in M-> (META-veèji od), ki ga -premakne na konec datoteke. - -Na ameri¹kih tipkovnicah najdete znak < nad vejico in morate -pritisniti tipko Shift, da pridete do njega. Z ukazom M-< je enako - -prav tako morate pritisniti tipko Shift, sicer moste izvedli drug -ukaz, Meta-vejica. Na na¹ih tipkovnicah sta oba znaka na isti tipko, -in za ukaz M-> morate pritisniti ¹e tipko Shift. - ->> Poskusite zdaj M-<, skok na zaèetek tega uèbenika. - Potem se vrnite nazaj z zaporednimi C-v. - ->> Poskusite zdaj M->, skok na konec tega uèbenika. - Potem se vrnite nazaj z zaporednimi M-v. - -Èe ima va¹a tipkovnica kurzorske tipke, lahko premikate kazalèek po -zaslonu tudi z njimi. Vseeno priporoèamo, da se privadite ukazov C-b, -C-f, C-n in C-p, in to iz treh razlogov. Prviè, delujejo na èisto vseh -terminalih. Drugiè, z nekaj prakse v Emacsu boste opazili, da je -tipkanje ukazov s CONTROL hitrej¹e od tipkanja s kurzorskimi tipkami, ker -ni treba ves èas premikati desnice s tipkovnice na kurzorske tipke in -nazaj. In tretjiè, ko se enkrat navadite teh ukazov s CONTROL, se boste -enostavneje nauèili tudi bolj zapletenih ukazov za premikanje kazalèka. - -Veèini ukazov v Emacsu lahko podamo ¹tevilèni argument; najveèkrat ta -pove, kolikokrat zapovrstjo naj se ukaz izvede. Veèkratno ponovitev -ukaza izvedemo tako, da najprej vtipkamo C-u, zatem ¹tevilo, -kolikokrat naj se ukaz ponovi, in nazadnje ¾eljeni ukaz. Èe ima va¹a -tipkovnica tipko META (ali EDIT ali ALT), lahko izpustite ukaz C-u in -namesto tega vtipkate ¹tevilo ponovitev, medtem ko dr¾ite pritisnjeno -tipko META. Druga metoda je sicer kraj¹a, priporoèamo pa prvo, ker -deluje na vseh terminalih. Tak¹en ¹tevilèni argument je ,,prefiksni`` -argument, ker vnesemo argument pred ukazom, na katerega se nana¹a. - -Zgled: C-u 8 C-f premakne kazalèek za osem znakov naprej. - ->> Poskusite s primernim argumentom za ¹tevilo ponovitev ukaza - C-n ali C-p priti èim bli¾e tej vrstici v enem samem skoku. - -Veèina ukazov, ne pa vsi, uporablja ¹tevilèni argument kot ¹tevilo -ponovitev ukaza. Nekateri ukazi - nobeden od tistih, ki smo si jih -ogledali do zdaj - ga uporabljajo kot stikalo: s podanim prefiksnim -argumentom napravi ukaz nekaj drugega kot obièajno. - -Ukaza C-v in M-v sta tudi izjemi, a drugaèni. Èe jima podamo argument, -premakneta zaslon za navedeno ¹tevilo vrstic, ne pa zaslonov. Ukaz C-u -8 C-v, na primer, premakne zaslon navzgor za 8 vrstic. - ->> Poskusite zdaj C-u 8 C-v - -To bi moralo zaslon premakniti navzgor za osem vrstic. Èe bi ga radi -premaknili nazaj, poskusite M-v z istim argumentom. - -Èe uporabljate grafièni vmesnik, denimo X11 ali MS Windows, imate -verjetno ob robu Emacsovega okna navpièno pravokotno ploskev, -imenovano drsnik. Pogled na besedilo lahko premikate tudi tako, da z -mi¹ko kliknete na drsnik. - ->> Postavite kazalec na vrh oznaèenega obmoèja na drsniku in pritisnite - srednji gumb na mi¹ki. To bi moralo premakniti besedilo na mesto, - doloèeno s tem, kako visoko ali nizko na drsnik ste kliknili. - ->> Medtem ko dr¾ite srednji gumb pritisnjen, premikajte mi¹ko gor in - dol. Vidite, kako se premika besedilo v Emacsovem oknu, ko - premikate mi¹ko? - - -* ÈE SE EMACS OBESI -------------------- - -Èe se Emacs preneha odzivati na va¹e ukaze, ga lahko varno prekinete z -ukazom C-g. Z njim lahko prekinete ukaze, za katere bi trajalo -predolgo, da bi se izvedli. - -Isti ukaz, C-g, lahko uporabite tudi, da preklièete ¹tevilèni -argument, ali pa zaèetek ukaza, ki ga ne ¾elite izvesti. - ->> Vtipkajte C-u 100, s èimer ste izbrali ¹tevilèni argument 100, - zatem pa vtipkajte C-g. Vtipkajte zdaj C-f. Kazalèek se je - premaknil le za en znak, ker ste ¹tevilèni argument vmes preklicali - s C-g. - -Tudi èe ste po nesreèi vtipkali , se ga lahko znebite s C-g. - - -* ONEMOGOÈENI UKAZI -------------------- - -Nekaj ukazov v Emacsu je namenoma ,,onemogoèenih``, da bi jih -zaèetniki ne izvedli po nesreèi. - -Èe vtipkate tak onemogoèen ukaz, se bo na zaslonu pojavilo novo okno z -obvestilom, kateri ukaz ste sku¹ali izvesti, in vas vpra¹alo, èe ga -res ¾elite izvesti. - -Èe v resnici ¾elite poskusiti ukaz, pritisnite preslednico kot odgovor -na vpra¹anje. Normalno verjetno ukaza ne ¾elite izvesti, zato na -vpra¹anje odgovorite z ,n`. - ->> Vtipkajte C-x C-l (ki je onemogoèen ukaz), - zatem na vpra¹anje odgovorite n. - - -* OKNA ------- - -Emacs lahko prika¾e veè oken in v vsakem svoje besedilo. Kasneje bomo -razlo¾ili, kako uporabljamo veè oken hkrati. Zaenkrat bomo povedali -le, kako se znebite dodatnih oken, ki jih lahko odpre vgrajena pomoè ali -pa izpis kak¹nega drugega programa. Preprosto je: - - C-x 1 Eno okno (torej, zaprimo vsa ostala). - -To je CONTROL-x, ki mu sledi ¹tevka 1. Ukaz C-x 1 raztegne èez cel -zaslon okno, v katerem se nahaja kazalèek, ostala pa zapre. - ->> Premaknite kazalèek do te vrstice in vtipkajte C-u 0 C-l ->> Vtipkajte CONTROL-h k CONTROL-f. - Vidite, kako se je to okno skrèilo in odstopilo prostor oknu, - ki pojasnjuje ukaz CONTROL-f? - ->> Vtipkajte C-x 1 in spodnje okno se bo zaprlo. - -Za razliko od ukazov, ki smo se jih nauèili do zdaj, je ta ukaz -sestavljen iz dveh znakov. Zaène se z znakom CONTROL-x. Cela vrsta -ukazov se zaène enako, in mnogi od njih zadevajo delo z datotekami, -delovnimi podroèji in podobnim. Vsem tem ukazom je skupno, da se -zaènejo s CONTROL-x, ki mu sledi ¹e en, dva ali trije znaki. - - -* VRIVANJE IN BRISANJE ----------------------- - -Èe ¾elite v obstojeèe besedilo vriniti novo, preprosto premaknite -kazalèek na ¾eljeno mesto in zaènite tipkati. Znake, ki jih lahko -vidite, na primer A, 7, * in podobno, razume Emacs kot del besedila in -jih takoj vrine. S pritiskom na Return (ali Enter) vrinete znak za -skok v novo vrstico. - -Zadnji vtipkani znak lahko izbri¹ete s pritiskom na tipko -. To je tista tipka na tipkovnici, ki jo navadno uporabljate -za brisanje nazadnje natipkanega znaka. Navadno je to velika tipka -vrstico ali dve nad tipko , ki je oznaèena z "Backspace", -"Delete" ali "Del". - -Èe imate na tipkovnici tipko "Backspace", je to tipka . Naj -vas ne zmede, èe imate poleg tega ¹e tipko "Delete" - je -"Backspace". - -Splo¹no pobri¹e znak neposredno pred trenutnim polo¾ajem -kazalèka. - ->> Vtipkajte zdaj nekaj znakov in jih zatem s tipko pobri¹ite. - Niè naj vas ne skrbi, èe se je ta vrstica spremenila. Izvirnika - tega uèbenika ne boste pokvarili -- tole je samo va¹a osebna kopija. - -Ko vrstica postane predolga za zaslon, se ,,nadaljuje`` v naslednji -vrstici na zaslonu. Obrnjena po¹evnica (znak ,\`) ali v grafiènih -okoljih zavita pu¹èica ob desnem robu oznaèuje vrstico, ki se -nadaljuje v naslednji zaslonski vrstici. - ->> Zdaj zaènite tipkati besedilo, dokler ne dose¾ete desnega roba, in - ¹e naprej. Opazili boste, da se pojavi znak za nadaljevanje. - ->> S tipko pobri¹ite toliko znakov, da vrstica ne sega - veè èez ¹irino zaslona. Znak za nadaljevanje v naslednji - vrstici je izginil. - -Znak za novo vrstico lahko pobri¹emo enako kot vsak drug znak. S tem, -ko pobri¹emo znak za novo vrstico, zdru¾imo vrstici v eno samo. Èe bo -nova vrstica predolga, da bi cela pri¹la na zaslon, bo razdeljena v -veè zaslonskih vrstic. - ->> Premaknite kazalèek na zaèetek vrstice in pritisnite . To - zdru¾i vrstico s prej¹njo. - ->> Pritisnite . S tem ste ponovno vrinili znak za skok v novo - vrstico, ki ste ga malo prej zbrisali. - -Spomnimo se, da lahko za veèino ukazov v Emacsu doloèimo, naj se -izvedejo veèkrat zaporedoma; to vkljuèuje tudi vnos teksta. Ponovitev -obièajnega znaka ga veèkrat vrine v besedilo. - ->> Poskusite zdaj tole: da vnesete osem zvezdic, vtipkajte C-u 8 * - -Zdaj ste se nauèili najpreprostej¹i naèin, da v Emacsu nekaj natipkate -in popravite. Bri¹ete lahko tudi besede ali vrstice. Tu je povzetek -ukazov za brisanje: - - pobri¹e znak tik pred kazalèkom (levo od - oznake za kazalèek) - C-d pobri¹e znak tik za kazalèkom (,pod` oznako - za kazalèek) - - M- pobri¹e besedo tik pred kazalèkom - M-d pobri¹e besedo tik za kazalèkom - - C-k zavr¾e besedilo desno od kazalèka do konca vrstice - M-k zavr¾e besedilo od polo¾aja kazalèka do konca stavka - -Èrka ,d` je iz angle¹ke besede ,delete` (pobrisati), èrka ,k` pa iz -besede ,kill` (pobiti). Ste opazili, da in C-d na eni, ter -M- in M-d na drugi strani nadaljujeta paralelo, ki sta jo zaèela -C-f in M-f ( pravzaprav ni kontrolni znak, kar pa naj nas ne -moti). C-k in M-k sta v enakem sorodu s C-e in M-e: prvi deluje na -vrstice, drugi na stavke. - -Obstaja tudi splo¹en postopek za brisanje kateregakoli dela delovnega -podroèja. Kazalèek postavimo na en konec podroèja, ki ga ¾elimo -izbrisati, in pritisnemo C-@ ali C-SPC (SPC je -preslednica). Katerikoli od obeh ukazov deluje. Premaknite kazalèek na -drug konec podroèja, ki ga ¾elite izbrisati, in pritisnite C-w. S tem -ste zavrgli vse besedilo med obema mejama. - ->> Premaknite kazalèek na èrko O, s katero se zaèenja prej¹nji - odstavek. ->> Vtipkajte C-SPC. Emacs prika¾e sporoèilo "Mark set" (slov. Oznaka - postavljena) na dnu ekrana. ->> Premaknite kazalèek na èrko V v "postavimo" v drugi vrstici istega - odstavka. ->> Vtipkajte C-w. S tem zavr¾emo vse besedilo zaèen¹i z O in vse do - èrke V. - -Razlika med tem, èe zavr¾ete cel odstavek besedila (angl. ,,kill``, -pobiti) ali pa èe pobri¹ete znak (angl. ,,delete``), je ta, da lahko -prvega vrnete nazaj z ukazom C-y, drugega pa ne. Na splo¹no ukazi, ki -lahko povzroèijo veliko ¹kode (pobri¹ejo veliko besedila), shranijo -pobrisano besedilo; tisti, ki pobri¹ejo samo posamezni znak, ali samo -prazne vrstice in presledke, pa ne. - ->> Postavite kazalèek na zaèetek neprazne vrstice. Pritisnite C-k, da - pobri¹ete vsebino vrstice. ->> ©e enkrat pritisnite C-k. To pobri¹e ¹e znak za novo vrstico. - -Ste opazili, da prvi C-k pobri¹e vsebino vrstice, naslednji C-k pa ¹e -vrstici samo, s èimer se vse besedilo pod biv¹o vrstico premakne za -eno vrstico navzgor? Ukaz C-k obravnava ¹tevilèni argument malo -drugaèe: pobri¹e toliko in toliko vrstic z vsebinami vred. To ni zgolj -ponovitev. C-u 2 C-k pobri¹e dve polni vrstici besedila, kar je nekaj -drugega, kot èe dvakrat vtipkate C-k. - -Besedilo, ki ste ga prej pobili, lahko povrnete (angl. ,,yank`` -- -potegniti). Predstavljajte si, kot da potegnete nazaj nekaj, kar vam -je nekdo odnesel. Pobito besedilo lahko potegnete nazaj na isti ali pa -na kak¹en drug kraj v besedilu, ali pa celo v kaki drugi -datoteki. Isto besedilo lahko veèkrat potegnete nazaj, tako da je v -delovnem podroèju poveèterjeno. - -Ukaz za vraèanje pobitega besedila je C-y. - ->> Poskusite z ukazom C-y povrniti pobrisano besedilo. - -Èe ste uporabili veè zaporednih ukazov C-k, je vse pobrisano besedilo -shranjeno skupaj, in en sam C-y bo vrnil vse tako pobrisane vrstice. - ->> Poskusite, nekajkrat vtipkajte C-k. - -Zdaj pa vrnimo pobrisano besedilo: - ->> Vtipkajte C-y. Zdaj pa premaknite kazalèek za nekaj vrstic navzdol - in ¹e enkrat vtipkajte C-y. Vidite zdaj, kako se kopira dele - besedila? - -Kaj pa, èe ste pobrisali nekaj besedila, ki bi ga radi vrnili, vendar -ste za iskanim odlomkom pobrisali ¹e nekaj? C-y vrne samo nazadnje -pobrisan odlomek. Vendar tudi prej¹nje besedilo ni izgubljeno. Do -njega lahko pridete z ukazom M-y. Ko ste vrnili nazadnje zbrisano -besedilo s C-y, pritisnite M-y, ki ga zamenja s predzanje pobrisanim -besedilom. Vsak naslednji M-y prika¾e ¹e eno prej. Ko ste konèno -pri¹li do iskanega besedila, ni treba napraviti niè posebnega, da bi -ga obdr¾ali. Preprosto nadaljujte z urejanjem, in vrnjeno besedilo bo -ostalo, kamor ste ga odlo¾ili. - -Èe pritisnete M-y dovolj velikokrat, se boste vrnili na zaèete, torej -spet na zadnje pobrisano besedilo. - ->> Pobri¹ite vrstico, premaknite se nekam drugam, in pobri¹ite ¹e - eno vrstico. - Z ukazom C-y dobite nazaj to drugo vrstico. - Z ukazom M-y pa jo zamenjate s prvo vrstico. - Ponovite ukaz M-y ¹e nekajkrat in si oglejte, kaj dobite na - zaslon. Ponavljajte ga, dokler se ne prika¾e ponovno nazadnje - pobrisana vrstica, in ¹e naprej. Èe ¾elite, lahko tudi ukazu - M-y podate pozitivno ali negativno ¹tevilo ponovitev. - - -* PREKLIC UKAZA (UNDO) ----------------------- - -Èe ste besedilo spremenili, a ste se kasneje premislili, lahko -besedilo vrnete v prvotno stanje z ukazom Undo, C-x u. Normalno vrne -C-x u zadnjo spremembo besedila; èe ukaz ponovimo, preklièemo ¹e -predzadnjo spremembo, in vsaka nadaljnja ponovitev se¾e ¹e eno -spremembo globlje v zgodovino. - -Emacs hrani bolj ali manj celotno zgodovino na¹ih ukazov, z dvema -izjemama: ukazov, ki niso napravili nobene spremembe v besedilu -(npr. premik kazalèka), ne shranjuje, in zaporedje do 20 vrinjenih -znakov shrani kot en sam ukaz. Slednje prihrani nekaj ukazov C-x u, ki -bi jih morali vtipkati. - ->> Pobri¹ite to vrstico z ukazom C-k, potem jo priklièite nazaj s C-x u. - -C-_ je alternativni ukaz za preklic zadnjega ukaza. Deluje enako kot -s C-x u, ga je pa la¾je odtipkati, èe morate ukaz ponoviti veèkrat -zaporedoma. Te¾ava z ukazom C-_ je, da na nekaterih tipkovnicah ni -povsem oèitno, kako ga vtipkati, zato je podvojen ¹e kot C-x u. Na -nekaterih terminalih moramo na primer vtipkati /, medtem ko dr¾imo -pritisnjeno tipko CONTROL. - -Èe podamo ukazu C-_ ali C-x u numerièni argument, je to enako, kot èe -bi ukaz roèno ponovili tolikokrat, kot pravi argument. - -Ukaz za brisanje besedila lahko preklièete in besedilo povrnete, -enako, kot èe bi besedilo pobili. Razlika med brisanjem in pobijanjem -besedila je le ta, da le slednje lahko potegnete nazaj z ukazom -C-y. Preklic ukaza pa velja za eno in drugo. - - -* DATOTEKE ----------- - -Da bi bile spremembe v besedilu trajne, morate besedilo shraniti v -datoteko. V nasprotnem primeru jih boste za vedno izgubili tisti hip, -ko boste zapustili Emacs. Besedilo postavimo v datoteko tako, da -na disku ,,poi¹èemo`` (angl. find) datoteko, preden zaènemo tipkati -(pravimo tudi, da ,,obi¹èemo`` datoteko). - -Poiskati datoteko pomeni, da v Emacsu vidimo vsebino datoteke. To je -bolj ali manj tako, kot da z Emacsom urejamo datoteko samo. Vendar pa -spremembe ne postanejo trajne, dokler datoteke ne shranimo -(angl. save) na disk. Tako imamo mo¾nost, da se izognemo temu, da bi -nam na pol spremenjene datoteke le¾ale po disku, kadar tega ne -¾elimo. Ker pa Emacs ohrani izvorno datoteko pod spremenjenim imenom, -lahko prvotno datoteko priklièemo nazaj celo ¹e potem, ko smo datoteko -¾e shranili na disk. - -V predzadnji vrstici na dnu zaslona vidite vrstico, ki se zaène in -konèa z vezaji, in vsebuje niz znakov ,,--:-- TUTORIAL``. Ta del -zaslona navadno vsebuje ime datoteke, ki smo jo obiskali. Zdajle je to -,,TUTORIAL``, va¹a delovna kopija uèbenika Emacsa. Ko boste poiskali -kak¹no drugo datoteko, bo na tem mestu pisalo njeno ime. - -Posebnost ukaza za iskanje datoteke je, da moramo povedati, katero -datoteko i¹èemo. Pravimo, da ukaz ,,prebere argument s terminala`` (v -tem primeru je argument ime datoteke). Ko vtipkate ukaz - - C-x C-f (poi¹èi datoteko) - -vas Emacs povpra¹a po imenu datoteke. Kar vtipkate, se sproti vidi v -vrstici na dnu zaslona. Temu delovnemu podroèju pravimo pogovorni -vmesnik (minibuffer), kadar se uporablja za tovrstni vnos. Znotraj -pogovornega vmesnika lahko uporabljate obièajne ukaze za urejanje, èe -ste se na primer pri tipkanju zmotili. - -Sredi tipkanja imena datoteke (ali katerega koli drugega opravila v -pogovornem vmesniku) lahko ukaz preklièete s C-g. - ->> Vtipkajte C-x C-f, zatem pa ¹e C-g. Zadnji ukaz od treh je - zaprl pogovorni vmesnik in tudi preklical ukaz C-x C-f, ki je - uporabljal pogovorni vmesnik. Konec z iskanjem datoteke. - -Ko ste dokonèali ime, ga vnesete s pritiskom na . S tem se -po¾ene ukaz C-x C-f in poi¹èe iskano datoteko. Pogovorni vmesnik -izgine, ko je ukaz izveden. - -Trenutek kasneje se vsebina datoteke pojavi na zaslonu. Zdaj lahko -dopolnjujete, urejate ali kako drugaèe spreminjate vsebino. Ko ¾elite, -da ostanejo spremembe trajne, izvedete ukaz: - - C-x C-s (shrani datoteko) - -Besedilo se s tem shrani iz pomnilnika raèunalnika na datoteko na -disk. Ko prviè izvedete ta ukaz, se izvorna datoteka preimenuje, tako -da ni izgubljena. Najdete jo pod novim imenom, ki se od starega -razlikuje po tem, da ima na koncu pripet znak ,,~``. - -Ko je Emacs shranil datoteko, izpi¹e njeno ime. Shranjujte raje -pogosteje kot ne, da v primeru, èe gre z raèunalnikom kaj narobe, ne -izgubite veliko. - ->> Vtipkajte C-x C-s, s èimer boste shranili svojo kopijo tega - uèbenika. Emacs bo v vrstici na dnu zaslona izpisal ,,Wrote - ...TUTORIAL``. - -Opozorilo: na nekaterih sistemih bo ukaz C-x C-s zamrznil zaslon, in -tako ne boste videli, da Emacs ¹e kaj izpi¹e. To je znak, da je -operacijski sistem prestregel znak C-s in ga interpretiral kot znak za -prekinitev toka podatkov, namesto da bi ga posredoval Emacsu. Zaslon -,,odmrznete`` z ukazom C-q. Èe je va¹ sistem eden takih, si za nasvet, -kako re¹iti to nev¹eènost, oglejte razdelek ,,Spontaneous Entry to -Incremental Search`` v priroèniku za Emacs. - -Poi¹èete lahko lahko ¾e obstojeèo datoteko, da si jo ogledate ali -popravite, ali pa tudi datoteko, ki ¹e ne obstaja. To je naèin, kako z -Emacsom ustvarimo novo datoteko: poi¹èite datoteko z izbranim imenom, -ki bo sprva prazna, in zaènite pisati. Ko jo boste prviè shranili, bo -Emacs ustvaril datoteko z vne¹enim besedilom. Od tod dalje delate na -¾e obstojeèi datoteki. - - -* DELOVNA PODROÈJA ------------------- - -Tudi èe ste z ukazom C-x C-f poiskali in odprli drugo datoteko, prva -ostane v Emacsu. Nanjo se vrnete tako, da jo ¹e enkrat ,,poi¹èete`` z -ukazom C-x C-f. Tako imate lahko v Emacsu hkrati kar precej datotek. - ->> Ustvarite datoteko z imenom ,,bla`` tako, da vtipkate C-x C-f - bla . Natipkajte nekaj besedila, ga po potrebi popravite, in - shranite v datoteko ,,bla`` z ukazom C-x C-s. Ko ste konèali, se - vrnite v uèbenik z ukazom C-x C-f TUTORIAL . - -Emacs hrani besedilo vsake datoteke v takoimenovanem ,,delovnem -podroèju`` (angl. buffer). Ko poi¹èemo datoteko, Emacs ustvari zanjo -novo delovno podroèje. Vsa obstojeèa delovna podroèja v Emacsu vidimo -z ukazom: - - C-x C-b Seznam delovnih podroèij. - ->> Poskusite C-x C-b zdaj. - -Vidite, da ima vsako delovno podroèje svoje ime, pri nekaterih pa pi¹e -tudi ime datoteke, katere vsebina se hrani v njem. Vsako besedilo, ki -ga vidite v katerem od Emacsovih oken, je vedno del kak¹nega delovnega -podroèja. - ->> Z ukazom C-x 1 se znebite seznama delovnih podroèij. - -Tudi èe imate veè delovnih podroèij, pa je vedno le eno od njih -trenutno dejavno. To je tisto delovno podroèje, ki ga popravljate. Èe -¾elite popravljati drugo delovno podroèje, morate ,,preklopiti`` -nanj. Èe bi radi preklopili na delovno podroèje, ki pripada kak¹ni -datoteki, ¾e poznate en naèin, kako to storiti: ponovno ,,obi¹èete`` -(odprete) to datoteko z ukazom C-x C-f. Obstaja pa ¹e la¾ji naèin: z -ukazom C-x b. Pri tem ukazu morate navesti ime delovnega podroèja. - ->> Vtipkajte C-x b bla , s èimer se vrnete v delovno podroèje - ,,bla`` z vsebino datoteke ,,bla``, ki ste jo maloprej - odprli. Zatem vtipkajte C-x b TUTORIAL , s èimer se vrnete - nazaj v ta uèbenik. - -Veèinoma se ime delovnega podroèja kar ujema z imenom datoteke (brez -poti do datoteke), ne pa vedno. Seznam delovnih podroèij, ki ga -prika¾e ukaz C-x C-b, prika¾e imena vseh delovnih podroèij. - -Vsako besedilo, ki ga vidite v katerem od Emacsovih oken, je vedno del -kak¹nega delovnega podroèja. Nekatera delovna podroèja ne pripadajo -nobeni datoteki. Podroèje ,,*Buffer List*``, na primer, je ¾e eno -takih. To delovno podroèje smo ustvarili ravnokar, ko smo pognali ukaz -C-x C-b, in vsebuje seznam delovnih podroèij. Tudi delovno podroèje -,,Messages`` ne pripada nobeni datoteki, ampak vsebuje sporoèila, ki -jih je Emacs izpisoval v odzivnem podroèju na dnu zaslona. - ->> Vtipkajte C-x b *Messages* in si oglejte delovno podroèje - s sporoèili, zatem pa vtipkajte C-x b TUTORIAL in se tako - vrnite v uèbenik. - -Èe ste spreminjali besedilo ene datoteke, potem pa poiskali drugo, to -ne shrani spremeb v prvo datoteko. Te ostanejo znotraj Emacsa, na -delovnem podroèju, ki pripada prvi datoteki. Ustvarjenje ali -spreminjanje delovnega podroèja druge datoteke nima nobenega vpliva na -podroèje prve. To je zelo uporabno, pomeni pa tudi, da potrebujemo -udobno pot, da shranimo delovno podroèje prve datoteke. Nerodno bi -bilo preklapljanje na prvo podroèje s C-x C-f, da bi shranili s C-x -C-s. Namesto tega imamo: - - C-x s Shrani nekatera delovna podroèja - -Ukaz C-x poi¹èe delovna podroèja, katerih vsebina je bila spremenjena, -odkar je bila zadnjiè shranjena na datoteko. Za vsako tako delovno -podroèje C-x s vpra¹a, èe ga ¾elite shraniti. - - -* RAZ©IRJEN NABOR UKAZOV ------------------------- - -©e mnogo, mnogo je ukazov Emacsa, ki bi zaslu¾ili, da jih obesimo na -razne kontrolne in meta znake. Emacs se temu izogne z ukazom X (iz angl. -eXtend - raz¹iriti), ki uvede ukaz iz raz¹irjenega nabora. Dveh vrst je: - - C-x Znakovna raz¹iritev (angl. Character eXtend). - Sledi mu en sam znak. - M-x Raz¹iritev s poimenovanim ukazom. Sledi mu dolgo ime - ukaza. - -Tudi ti ukazi so na splo¹no uporabni, ne uporabljamo pa jih tako -pogosto kot tiste, ki ste se jih ¾e nauèili. Dva ukaza iz raz¹irjenega -nabora ¾e poznamo: C-x C-f, s katerim poi¹èemo datoteko, in C-x C-s, s -katerim datoteko shranimo. ©e en primer je ukaz, s katerim Emacsu -povemo, da ¾elimo konèati z delom iz iziti iz Emacsa. Ta ukaz je C-x -C-c (ne skrbite: preden konèa, Emacs ponudi, da shrani vse spremenjene -datoteke). - -Z ukazom C-z Emacs zapustimo samo *zaèasno*, tako da lahko ob vrnitvi -nadaljujemo z delom, kjer smo ostali. - -Na sistemih, ki to dopu¹èajo, ukaz C-z izide iz Emacsa v ukazno -lupino, a ga ne konèa - èe uporabljate ukazno lupino C, se lahko -vrnete z ukazom ,fg` ali splo¹neje z ukazom ,,%emacs``. - -Drugod ukaz C-z po¾ene sekundarno ukazno lupino, tako da lahko -po¾enete kak¹en drug program in se kasneje vrnete v Emacs. V tem -primeru pravzaprav Emacsa ne zapustimo. Ukaz ,,exit`` v ukazni lupini -je navadno naèin, da zapremo sekundarno lupino in se vrnemo v Emacs. - -Ukaz C-x C-c uporabimo, èe se nameravamo odjaviti s sistema. To je -tudi pravilen naèin za izhod iz Emacsa, èe je tega pognal program za -delo s po¹to ali kak drug program, saj ta verjetno ne ve, kaj -napraviti z zaèasno prekinjenim Emacsom. V vseh ostalih primerih pa, -èe se ne nameravate odjaviti s sistema, uporabite C-z, in se vrnite v -Emacs, ko bi radi spet urejali besedilo. - -Ukazov C-x je veliko. Zaenkrat smo spoznali naslednje: - - C-x C-f Poi¹èi datoteko. - C-x C-s Shrani datoteko. - C-x C-b Prika¾i seznam delovnih podroèij. - C-x C-c Konèaj Emacs. - C-x 1 Zapri vsa okna razen enega. - C-x u Preklic zadnjega ukaza. - -Poimenovani raz¹irjeni ukazi so ukazi, ki se uporabljajo ¹e bolj -poredko, ali pa se uporabljajo samo v nekaterih naèinih dela. Eden -takih je na primer ukaz replace-string, ki po vsem besedilu zamenja en -niz znakov z drugim. Ko vtipkate M-x, se to izpi¹e v pogovornem -vmesniku na dnu zaslona, Emacs pa èaka, da vtipkate ime ukaza, ki ga -¾elite priklicati; v tem primeru je to ,,replace-string``. Vtipkajte -samo ,,repl s`` in Emacs bo dopolnil ime ( je tabulatorska -tipka; navadno jo najdemo nad tipko Caps Lock ali Shift na levi strani -tipkovnice). Ukaz vnesete s pritiskom na . - -Ukaz replace-string potrebuje dva argumenta -- niz, ki ga ¾elite -zamenjati, in niz, s katerim bi radi zamenjali prvega. Vsakega posebej -vnesete in zakljuèite s pritiskom na tipko Return. - ->> Premaknite kazalèek na prazno vrstico dve vrstici pod to, zatem - vtipkajte M-x repl szamenjalaspremenila. - - Opazite, kako se je ta vrstica zamenjala? Vse besede - z-a-m-e-n-j-a-l-a od tod do konca besedila ste nadomestili z besedo - ,,spremenila``. - - -* AVTOMATIÈNO SHRANJEVANJE --------------------------- - -Spremembe v datoteki, ki jih ¹e niste shranili na disk, so izgubljene, -èe medtem denimo zmanjka elektrike. Da bi vas zavaroval pred tem, -Emacs periodièno avtomatièno shrani vse datoteke, ki jih -urejate. Avtomatièno shranjena datoteka se od izvorne razlikuje po -znaku ,#` na zaèetku in koncu imena: èe se je va¹a datoteka imenovala -,,hello.c``, se avtomatièno shranjena datoteka imenuje -,,#hello.c#``. Ko normalno shranite datoteko, avtomatièno shranjena -datoteka ni veè potrebna, in Emacs jo pobri¹e. - -Èe res pride do izgube podatkov v pomnilniku, lahko povrnete avtomatièno -shranjeno besedilo tako, da normalno poi¹èete datoteko (pravo ime -datoteke, ne ime avtomatièno shranjene datoteke), zatem pa vtipkate M-x -recover file. Ko vas vpra¹a za potrditev, vtipkajte yes -za nadaljevanje in povrnitev avtomatièno shranjenenih podatkov. - - -* ODZIVNO PODROÈJE ------------------- - -Kadar Emacs opazi, da poèasi vtipkavate ukaz, odpre v zadnji vrstici -na dnu zaslona odzivno podroèje in v njem sproti prikazuje natipkano. - - -* STATUSNA VRSTICA ------------------- - -Vrstica nad odzivnim podroèjem je statusna vrstica. Ta ka¾e verjetno -nekaj podobnega kot: - ---:** TUTORIAL (Fundamental)--L670--58%---------------------- - -V njej so izpisani pomembni podatki o stanju Emacsa in besedilu, ki ga -urejate. - -Zdaj ¾e veste, kaj pomeni ime datoteke -- to je datoteka, ki ste jo -poiskali. Oznaka --NN%-- pomeni, da je nad vrhom zaslona ¹e NN -odstotkov celotne datoteke. Èe je zaèetek datoteke na zaslonu, bo -namesto --00%-- pisalo --Top--. Podobno bo pisalo --Bot--, èe je -zadnja vrstica datoteke na zaslonu. Èe je datoteka, ki jo ogledujete, -tako kratka, da gre vsa na en zaslon, pa bo pisalo --All--. - -Èrka L in ¹tevilke za njo ka¾ejo polo¾aj ¹e drugaèe, kot zaporedno -¹tevilko vrstice, v kateri je kazalèek. - -Zvezdice na zaèetku vrstice pomenijo, da ste datoteko ¾e spreminjali. -Tik po tem, ko ste odprli ali shranili datoteko, ni nobenih zvezdic, -so samo èrtice. - -Del statusne vrstice znotraj oklepajev vam pove, v kak¹nem naèinu dela -Emacs. Privzeti naèin je osnovni naèin (Fundamental), v katerem ste -sedaj. Fundamental je eden od glavnih naèinov (angl. major -mode). Emacs pozna veliko razliènih glavnih naèinov. Nekateri od njih -so namenjeni pisanju programov, kot na primer Lisp, ali pisanju -besedil, kot npr. Text. Naenkrat je lahko aktiven le en glavni naèin, -njegovo ime pa je vedno izpisano v statusni vrstici, kjer zdaj pi¹e -Fundamental. - -Glavni naèini lahko spremenijo pomen nekaterim ukazom. Obstajajo, -denimo, ukazi za pisanje komentarjev v programu, in ker ima vsak -programski jezik svoje predstave o tem, kako mora komentar izgledati, -mora vsak glavni naèin vnesti komentarje drugaèe. Ker je vsak glavni -naèin ime raz¹irjenega ukaza, lahko tako tudi izbiramo glavni -naèin. Na primer, M-x fundamental-mode vas postavi v naèin -Fundamental. - -Èe nameravate popravljati slovensko (ali angle¹ko) besedilo, kot je na -primer tole, boste verjetno izbrali tekstovni naèin (Text). ->> Vtipkajte M-x text mode. - -Brez skrbi, noben od ukazov Emacsa, ki ste se jih nauèili, se s tem ne -spremeni kaj dosti. Lahko pa opazite, da Emacs zdaj jemlje opu¹èaje za -dele besed, ko se premikate z M-f ali M-b. V osnovnem naèinu jih je -obravnaval kot meje med besedami. - -Glavni naèini navadno poèenjajo majhne spremembe, kot je ta: veèina -ukazov ,,opravi isti posel``, vendar pa to poènejo na razlièen naèin. - -Dokumentacijo o trenutno aktivnem glavnem naèinu dobite z ukazom C-h m. - ->> Uporabite C-u C-v enkrat ali veèkrat, toliko, da bo ta vrstica blizu - vrha zaslona. ->> Vtipkajte C-h m, da vidite, v èem se tekstovni naèin (Text) razlikuje - od osnovnega (Fundamental). ->> Vtipkajte C-x 1, da umaknete dokumentacijo z zaslona. - -Glavnim naèinom pravimo glavni naèini zato, ker obstajajo tudi -podnaèini (angl. minor modes). Podnaèini ne nadome¹èajo glavnih -naèinom, ampak le spreminjajo njihovo obna¹anje. Podnaèine lahko -aktiviramo ali deaktiviramo neodvisno od glavnega naèina in neodvisno -od ostalih podnaèinov. Tako lahko ne uporabljate nobenega podnaèina, -en podnaèin, ali kombinacijo veèih podnaèinov. - -Podnaèin, ki je zelo uporaben posebno za pisanje besedil, je Auto -Fill. Ko je vklopljen, Emacs med pisanjem avtomatièno deli vrstice na -presledkih med besedami, tako da vrstice niso predolge. - -Vklopite ga lahko z ukazom M-x auto fill mode. Ko je -vklopljen, ga lahko izklopite z istim ukazom, M-x -auto fill mode. Z istim ukazom torej preklapljamo -(angl. toggle) med vklopljenim in izklopljenim stanjem. - ->> Vtipkajte zdaj M-x auto fill mode. Potem zaènite tipkati - "asdf asdkl sdjf sdjkf"... dokler ne opazite, da je Emacs razbil - vrstico na dve. Med tipkanjem mora biti dovolj presledkov, saj - Auto Fill prelamlja vrstice samo na presledkih. - -©irina besedila je navadno postavljena na 70 znakov, kar pa lahko -spremenite z ukazom C-x f. Novo ¹irino morate podati kot ¹tevilèni -argument. - ->> Vtipkajte C-x f in argument 20. (C-u 2 0 C-x f). Zatem vtipkajte - nekaj besedila in poglejte, èe bo Emacs res delil vrstice pri 20 - znakih. Potem z ukazom C-x f postavite mejo nazaj na 70. - -Auto Fill deluje le, kadar pi¹ete novo besedilo, ne pa, -kadar popravljate ¾e napisan odstavek. -Tak odstavek lahko poravnate tako, da kazalèek premaknete nekam -znotraj odstavka in uka¾ete M-q (META-q). - ->> Premaknite kazalèek v prej¹nji odstavek in izvedite M-q. - - -* ISKANJE ---------- - -Emacs lahko v besedilu poi¹èe niz znakov (zaporedje znakov ali besed), -naprej ali nazaj po besedilu. Iskanje spada v skupino ukazov za -premikanje kazalèka, saj premakne kazalèek na kraj v besedilu, kjer je -na¹el iskani niz. - -Iskanje v Emacsu je morda nekoliko drugaèno od tistega, ki ste ga -navajeni, in sicer je ,,inkrementalno``. To pomeni, da se iskanje -odvija hkrati s tem, ko tipkate iskani niz. - -Ukaza za iskanje sta C-s za iskanje naprej po datoteki in C-r za -iskanje nazaj po datoteki. POÈAKAJTE! Ne preizku¹ajte jih ¹e ta hip! - -Ko boste natipkali C-s, boste opazili niz ,,I-search`` kot pozivnik -v pogovornem vmesniku. To vam pove, da je Emacs v inkrementalnem iskanju -in vas èaka, da zaènete tipkati, kar i¹èete. zakljuèi iskanje. - ->> Pritisnite zdaj C-s. POÈASI, èrko za èrko, vtipkajte besedo - ,,kazalèek``. Za vsako vtipkano èrko se ustavite in si oglejte, kaj - se je zgodilo s kazalèkom. ->> ©e enkrat pritisnite C-s, da poi¹èete naslednji ,,kazalèek``. ->> ©estkrat pritisnite in opazujte, kako se premika kazalèek. ->> Konèajte iskanje s tipko . - -Ste videli, kaj se je zgodilo? Emacs pri inkrementalnem iskanju sku¹a -poiskati niz, ki ste ga natipkali do tistega hipa. Da poi¹èete -naslednje mesto, kjer se pojavi ,,kazalèek``, samo ¹e enkrat -pritisnete C-s. Èe takega mesta ni, Emacs èivkne in vam sporoèi, da -iskanje ni uspelo. Tudi C-g prekine iskanje. - -OPOZORILO: Na nekaterih sistemih bo s pritiskom na C-s ekran -zmrznil. To je znak, da je operacijski sistem prestregel znak C-s in -ga interpretiral kot znak za prekinitev toka podatkov, namesto da bi -ga posredoval programu Emacs. Ekran ,,odtajate`` s pritiskom na -C-q. Potem si oglejte razdelek ,,Spontaneous Entry to Incremental -Search`` v priroèniku za nasvet, kako se spopasti s to nev¹eènostjo. - -Èe sredi inkrementalnega iskanja pritisnete , boste opazili, -da to pobri¹e zadnji znak v iskanem nizu, kazalèek pa se premakne -nazaj na mesto v besedilu, kjer je na¹el kraj¹i niz. Na primer, -predpostavimo, da ste do zdaj natipkali ,,ka`` in je kazalèek na -mestu, kjer se prviè pojavi ,,ka``. Èe zdaj pritisnete , boste -s tem v pogovornem vmesniku izbrisali ,a`, hkrati pa se bo kazalèek -postavil na mesto, kjer je prviè na¹el ,k`, preden ste natipkali ¹e -,a`. - -Èe sredi iskanja vtipkate katerikoli kontrolni znaki ali metaznak -(razen tistih, ki imajo poseben pomen pri iskanju, to sta C-s in C-r), -se iskanje prekine. - -C-s zaène iskati na mestu v datoteki, kjer trenutno stoji kazalèek, in -i¹èe do konca datoteke. Èe bi radi iskali proti zaèetku datoteke, -namesto C-s vtipkamo C-r. Vse, kar smo povedali o ukazu C-s, velja -tudi za C-r, le smer iskanja je obrnjena. - - -* VEÈ OKEN NA ZASLONU ---------------------- - -Ena simpatiènih lastnosti Emacsa je, da zna hkrati prikazati veè oken -na ekranu, tudi èe ne delamo v grafiènem naèinu. - ->> Premaknite kazalèek v to vrstico in vtipkajte C-u 0 C-l (zadnji - znak je CONTROL-L, ne CONTROL-1) ->> Zdaj vtipkajte C-x 2, da razdelite zaslon na dve okni. - V obeh oknih imate odprt ta priroènik. Kazalèek je ostal v zgornjem - oknu. ->> Pritisnite C-M-v za listanje v spodnjem oknu. - (Èe nimate tipke META, tipkajte ESC C-v). ->> Vtipkajte C-x o (o kot ,,other``, drugi), da preselite kazalèek v - spodnje okno. ->> S C-v in M-v se v spodnjem oknu premikate po vsebini datoteke. - Zgornje okno ¹e vedno ka¾e ta navodila. ->> Ponovni C-x o vas vrne v zgornje okno. Kazalèek se je vrnil na - mesto, kjer je bil, preden smo skoèili v spodnje okno. - -Z ukazom C-x o lahko preklapljamo med okni. Vsako okno si zapomni, kje -v oknu je ostal kazalèek, samo trenutno aktivno okno pa kazalèek tudi -v resnici prika¾e. Vsi obièajni ukazi za urejanje, ki smo se jih -nauèili, veljajo za aktivno okno. - -Ukaz C-M-v je zelo uporaben, kadar urejamo besedilo v enem oknu, -drugega pa uporabljamo samo za pomoè. Kazalèek ostaja ves èas v oknu, -v katerem urejamo, po vsebini spodnjega okna pa se vseeno lahko -premikamo, ne da bi morali venomer skakati iz enega okna v drugega. - -C-M-v je primer znaka CONTROL-META. Èe imate v resnici tipko META (na -PC navadno levi Alt), lahko vtipkate C-M-v tako, da dr¾ite pritisnjeni -tako CONTROL kot META, medtem ko vtipkate v. Ni pomembno, katero od -tipk, CONTROL ali META, pritisnete prvo, saj obe delujeta ¹ele, ko -pritisnete znak, ki sledi (v zgornjem primeru ,v`). - -Nasprotno pa je vrstni red pritiskanja pomemben, èe nimate tipke META -in namesto nje uporabljate ESC. V tem primeru morate najprej -pritisniti ESC, potem pa Control-v. Obratna kombinacija, CONTROL-ESC v -ne deluje. To je zato, ker je ESC znak sam po sebi, ne pa modifikator, -kot sta CONTROL in META. - ->> V zgornjem oknu vtipkajte C-x 1, da se znebite spodnjega okna. - -(Èe bi vtipkali C-x 1 v spodnjem oknu, bi se znebili -zgornjega. Razmi¹ljajte o tem ukazu kot ,,Obdr¾i samo eno okno, in -sicer tisto, v katerem sem zdaj.``) - -Seveda ni nujno, da obe okni ka¾eta isto delovno podroèje. Èe v enem -oknu izvedete C-x C-f in poi¹èete novo datoteko, se vsebina drugega -okna ne spremeni. V vsakem oknu lahko neodvisno obdelujete drugo -datoteko. - -Pa ¹e ena pot, kako v dveh oknih prika¾ete dve razlièni datoteki: - ->> Vtipkajte C-x 4 C-f, in na pozivnik vtipkajte ime ene va¹ih - datotek. Konèajte z . Odpre se ¹e eno okno in izbrana - datoteka se pojavi v drugem oknu. Tudi kazalèek se preseli v drugo - okno. - ->> Vtipkajte C-x o, da se vrnete nazaj v zgornje okno, in C-x 1, da - zaprete spodnje okno. - - -* REKURZIVNI NIVOJI UREJANJA ----------------------------- - -Vèasih boste pri¹li v nekaj, èemur se pravi ,,rekurzivni nivo -urejanja``. To se vidi po tem, da v statusni vrstici oglati oklepaji -oklepajo ime glavnega naèina. V osnovnem naèinu bi, na primer, videli -[(Fundamental)] namesto (Fundamental). - -Iz rekurzivnega nivoja urejanja se re¹ite, èe vtipkate ESC ESC ESC. To -zaporedje je vsenamenski ukaz ,,pojdi ven``. Uporabite ga lahko tudi -za ukinjanje odveènih oken, ali vrnitev iz pogovornega vmesnika. - ->> Pritisnite M-x, da odprete pogovorni vmesnik, zatem pa vtipkajte - ESC ESC ESC, da pridete ven iz njega. - -Z ukazom C-g ne morete iz rekurzivnega nivoja urejanja, ker C-g -preklièe ukaze ali argumente ZNOTRAJ rekurzivnega nivoja. - - -* DODATNA POMOÈ ---------------- - -V tem uvodu smo posku¹ali zbrati dovolj informacij, da lahko zaènete -Emacs uporabljati. Emacs ponuja toliko, da bi bilo nemogoèe vse to -zbrati tukaj. Verjetno pa bi se vseeno radi nauèili kaj o ¹tevilnih -koristnih mo¾nostih, ki jih ¹e ne poznate. Emacs ima ¾e vgrajene -veliko dokumentacije, do katere lahko pridete s pritiskom na CONTROL-h -(h kot ,,help``, pomoè). - -Za pomoè pritisnete C-h, potem pa vtipkate znak, ki pove, kak¹no pomoè -¾elite. Èe ste poplnoma izgubljeni, vtipkajte C-h ? in Emacs vam bo -povedal, kak¹na pomoè je sploh na voljo. Èe ste vtipkali C-h, pa ste -si premislili, lahko ukaz preklièete s C-g. - -(Na nekaterih sistemih se znak C-h preslika v kaj drugega. To ni -dobro, in v takem primeru se prito¾ite sistemskemu vzdr¾evalcu. Medtem -pa, èe C-h ne prika¾e sporoèila o pomoèi na dnu zaslona, namesto tega -poskusite pritisniti tipko F1 ali pa vtipkajte M-x help .) - -Najosnovnej¹i tip pomoèi prika¾e C-h c. Pritisnite C-h, tipko c, zatem -pa ukazni znak ali zaporedje ukaznih znakov, in Emacs bo izpisal -kratek opis ukaza. - ->> Vtipkajte C-h c C-p. - Izpi¹e se nekaj takega kot - - C-p runs the command previous-line - -Ukaz je izpisal ime funkcije, ki izvede ukaz. Imena funkcij -uporabljamo, kadar pi¹emo prilagoditve in raz¹iritve Emacsa. Ker pa so -navadno imena funkcij izbrana tako, da kaj povedo o tem, kaj funkcija -poène, bo verjetno to tudi dovolj za kratko osve¾itev, èe ste se z -ukazom ¾e kdaj sreèali. - -Ukazu C-h lahko sledi tudi zaporedje znakov, kot na primer C-x C-s, -ali, èe nimate tipke META, v. - -Za veè informacij o ukazu vtipkajte C-h k namesto C-h c. - ->> Vtipkajte C-h k C-p. - -To odpre novo okno in v njem prika¾e dokumentacijo o funkciji, obenem -z njenim imenom. Ko ste opravili, vtipkajte C-x 1, da se znebite okna -z pomoèjo. Tega seveda ni potrebno napraviti takoj, ampak lahko -urejate, medtem ko imate odprto okno s pomoèjo, in ga zaprete, ko ste -konèali. - -Sledi ¹e nekaj uporabnih mo¾nosti, ki jih ponuja pomoè: - - C-h f Opi¹i funkcijo. Kot argument morate podati ime - funkcije. - ->> Poskusite C-h f previous-line. - To izpi¹e vse podatke, ki jih ima Emacs o funkciji, ki izvede ukaz C-p. - -Podoben ukaz C-h v izpi¹e dokumentacijo za spremenljivke, s katerimi -lahko nastavite obna¹anje Emacsa. Ob pozivniku morate vpisati ime -spremenljivke. - - C-h a Apropos. Vtipkajte kljuèno besedo in Emacs bo izpisal - vse ukaze, ki vsebujejo to kljuèno besedo. Vse te - ukaze lahko priklièete z META-x. Pri nekaterih ukazih - bo Apropos izpisal tudi eno ali dvoznakovno - zaporedje, s katerim dose¾ete isti uèinek. - ->> Vtipkajte C-h a file. - -To odpre novo okno, v katerem so vsa dolga imena ukazov, ki vsebujejo -,,file`` v imenu. Izvedete jih lahko z M-x. Pri nekaterih se izpi¹e -tudi kratek ukaz, npr. C-x C-f ali C-x C-w pri ukazih find-file in -write-file. - ->> Pritisnite C-M-v, da se sprehajate po oknu s pomoèjo. Poskusite - nekajkrat. - ->> Vtipkajte C-x 1, da zaprete okno s pomoèjo. - - C-h i Priroèniki z navodili za uporabo (tkim. datoteke - "info"). Ta ukaz vas prestavi v posebno delovno - podroèje, imenovano "info". V njem lahko prebirate - priroènike za programe, ki so name¹èeni v sistemu. Z - ukazom m emacs denimo dobite priroènik za - urejevalnik Emacs. Èe sistema Info ¹e niste - uporabljali, vtipkajte ? in Emacs vas bo popeljal na - vódeni izlet po naèinu Info in mo¾nostih, ki jih - ponuja. Ko boste zakljuèili z branjem tega prvega - berila, bo priroènik za Emacs v sistemu Info va¹ - glavni vir dokumentacije. - - -* DRUGE MO®NOSTI ----------------- - -©e veè se lahko nauèite o Emacsu z branjem priroènika, bodisi -natisnjenega, bodisi na zaslonu v sistemu Info (uporabite menu Help -ali vtipkajte F10 h r). Dve mo¾nosti, ki vam bosta morda posebej v¹eè, -sta samodejno zakljuèevanje vrstice, s katerim prihranite nekaj -tipkanja, in dired, s katerim poenostavimo delo z datotekami. - -Samodejno zakljuèevanje vrstic je naèin, s katerim prihranimo nekaj -tipkanja. Èe ¾elite denimo preklopiti v delovno podroèje *Messages*, -je dovolj, da vtipkate C-x b *M in Emacs bo sam dopolnil -preostanek imena delovnega podroèja. Samodejno zakljuèevanje je -opisano v sistemu Info v priroèniku za Emacs, razdelek ,,Completion``. - -Dired omogoèa izpis seznama datotek v imeniku (in po mo¾nosti tudi -podimenikih), premikanje po seznamu, obiskovanje (odpiranje), -preimenovanje, brisanje in druge operacije z datotekami. Dired je -opisav v sistemu Info v priroèniku za Emacs, razdelek ,,Dired``. - -Priroènik opisuje tudi mnoge druge mo¾nosti Emacsa. - - -* ZAKLJUÈEK ------------ - -Zapomnite si, da Emacs zapustite z ukazom C-x C-c. Èe bi radi samo -zaèasno skoèili v ukazno lupino in se kasneje vrnili v Emacs, pa -storite to z ukazom C-z. - -Ta uèbenik je napisan z namenom, da bi bil razumljiv vsem novincem v -Emacsu. Èe se vam kaj ne zdi jasno napisano, ne valite krivde nase - -prito¾ite se! - - -* RAZMNO®EVANJE IN RAZ©IRJANJE ------------------------------- - -Angle¹ki izvirnik tega uvoda v Emacs je naslednik dolge vrste tovrstnih -besedil, zaèen¹i s tistim, ki ga je Stuart Cracraft napisal za izvorni -Emacs. V sloven¹èino ga je prevedel Primo¾ Peterlin. - -To besedilo, kot sam GNU Emacs, je avtorsko delo, in njegovo -razmno¾evanje in raz¹irjanje je dovoljeno pod naslednjimi pogoji: - -Copyright (C) 1985, 1996, 1998, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 Free Software Foundation, Inc. - - Dovoljeno je izdelovati in raz¹irjati neokrnjene kopije tega spisa - v kakr¹nikoli obliki pod pogojem, da je ohranjena navedba o - avtorstvu in to dovoljenje, ter da distributer dovoljuje prejemniku - nadaljnje raz¹irjanje pod pogoji, navedenimi v tem dovoljenju. - - Pod pogoji iz prej¹njega odstavka je dovoljeno raz¹irjati - spremenjene verzije tega spisa ali njegovih delov, èe je jasno - oznaèeno, kdo je nazadnje vnesel spremembe. - -Pogoji za razmno¾evanje in raz¹irjanje samega Emacsa so malo drugaèni, -a v istem duhu. Prosimo, preberite datoteko COPYING in potem dajte -kopijo programa GNU Emacs svojim prijateljem. Pomagajte zatreti -obstrukcionizem (,,lastni¹tvo``) v programju tako, da uporabljate, -pi¹ete in delite prosto programje! - -;;; Local Variables: -;;; coding: iso-latin-2 -;;; sentence-end-double-space: nil -;;; End: - -;;; arch-tag: 985059e4-44c6-4ac9-b627-46c8db57acf6 diff --git a/etc/TUTORIAL.sv b/etc/TUTORIAL.sv deleted file mode 100644 index 2a54047e8dc..00000000000 --- a/etc/TUTORIAL.sv +++ /dev/null @@ -1,1153 +0,0 @@ -Emacs användarhandledning. I slutet finns kopieringsvillkoren. - -Emacs-kommandon innebär ofta användning av kontrolltangenten (vanligen -märkt CTRL eller CTL) eller META-tangenten (på vissa tangentbord märkt -ALT eller EDIT). Vi använder här följande förkortningar: - - C- håll ner kontrolltangenten samtidigt som du skriver bokstaven - . C-f betyder: håll ner kontrolltangenten och tryck f. - M- håll ner META-tangenten samtidigt som du skriver . Om - META-tangent saknas trycker du , ESC-tangenten, släpper - den och trycker sedan . - -Viktigt: För att avsluta Emacs trycker du C-x C-c (två tecken). -Tecknen ">>" i vänstermarginalen anger att du kan prova ett -kommando. Till exempel: -<> -[Tomma rader av pedagogiska skäl. Texten fortsätter nedanför.] ->> Tryck C-v (View next screen) för att hoppa till nästa skärmbild. - Prova nu. Håll ned kontrolltangenten och tryck v. Gör så i - fortsättningen när du är färdig med en skärmbild. - -Notera att det är ett överlapp på två rader när du byter från -skärmbild till skärmbild. Detta är för att behålla sammanhanget när du -bläddrar framåt i filen. - -Det första du behöver veta är hur du manövrerar från plats till plats -i texten. Du har redan lärt dig hur du flyttar en skärmbild framåt, -med C-v. För att flytta dig en skärmbild bakåt trycker du M-v. (Håll -ned META-tangenten och tryck v eller tryck v om du inte har -META-, EDIT- eller ALT-tangent.) - ->> Prova att trycka M-v och C-v några gånger. - - -* SAMMANFATTNING ----------------- - -Följande kommandon är bra för att se hela skärmbilder: - - C-v Flytta en skärmbild framåt. - M-v Flytta en skärmbild bakåt. - C-l Rita om skärmen och placera texten där markören står - mitt på skärmbilden. (Det är KONTROLL-L, inte - KONTROLL-1.) - ->> Leta reda på markören och se vad som står där. Tryck sedan C-l. - Hitta markören igen och notera att det är samma text som står kring - markören nu. - -Du kan också använda PageUp och PageDn tangenterna, om din terminal -har dem, för att flytta en hel skärmbild åt gången, men du redigerar -effektivare om du använder C-v och M-v. - - -* GRUNDLÄGGANDE MARKÖRRÖRELSER ------------------------------- - -Att flytta sig från skärmbild till skärmbild kan vara bra, men hur -förflyttar man sig till en speciell plats på skärmen? - -Det finns flera sätt att göra detta. Du kan använda piltangenterna, -men det är mer effektivt att ha händerna i standardläget och använda -kommandona C-p, C-b, C-f och C-n. Dessa tecken är likvärdiga med de -fyra piltangenterna. Så här: - - Föregående rad, C-p - : - : - Bakåt, C-b .... Nuvarande markörposition .... Framåt, C-f - : - : - Nästa rad, C-n - ->> Flytta markören till linjen mitt i diagrammet genom att använda C-n - och C-p. Använd sedan C-l för att centrera diagrammet på - skärmbilden. - -Detta är enklare att komma ihåg om du tänker på dessa förkortningar: P -för föregående (previous), N för nästa (next), B för bakåt (backward) -och F för framåt (forward). Dessa är de grundläggande kommandona för -att flytta markören och du kommer att använda dem hela tiden. - ->> Gör några C-n så att du kommer ned till den här raden. - ->> Flytta dig in i raden med hjälp av några C-f och sedan uppåt - med några C-p. Lägg märke till vad C-p gör när markören står mitt - på en rad. - -Textrader är åtskilda med radslutstecken. Den sista raden i filen -avslutas också vanligtvis med ett radslut men Emacs kräver inte att -den gör det. - ->> Prova med C-b i början av en rad. Detta gör att markören - flyttas till slutet av den tidigare raden. Detta är för att den - flyttar markören över radslutstecknet. - -C-f flyttar också över radslut, precis som C-b. - ->> Gör några fler C-b så att du får en känsla för var markören - är. Tryck sedan några C-f tills du kommer till slutet av - raden. Tryck ytterligare en C-f så att du flyttar markören till - nästa rad. - -När du flyttar markören förbi toppen eller botten av skärmbilden -kommer texten utanför skärmen att komma fram. Detta kallas "rullning" -och gör det möjligt för Emacs att flytta markören utan att den -försvinner ut ur skärmbilden. - ->> Prova att flytta markören förbi skärmbildens nederkant med hjälp av - C-n och se vad som händer. - -Om det går för sakta att flytta markören ett tecken i taget kan du -flytta den ett ord. M-f flyttar markören ett ord framåt och M-b -flyttar den ett ord bakåt. - ->> Prova några M-f och M-b. - -Om markören står mitt i ett ord kommer M-f att flytta markören till -slutet av ordet. Om du står mitt emellan två ord kommer M-f att flytta -markören till slutet av nästa ord. M-b fungerar på samma sätt men i -motsatt riktning. - ->> Tryck M-f och M-b några gånger och skifta markörposition med några - C-f och C-b så att du ser hur M-f och M-b uppför sig vid olika - placeringar av markören både i och mellan ord. - -Lägg märke till likheten mellan C-f och C-b å ena sidan och M-f och -M-b å den andra. Ofta används META-kommandon till språkrelaterade -operationer (ord, stycken, avsnitt), medan kontrollkommandon används -till grundläggande operationer som inte beror av vad man redigerar -(bokstäver, rader, etc.). - -Denna likhet finns också mellan rader och stycken: C-a och C-e flyttar -markören till början av en rad eller till slutet av en rad, medan M-a -och M-e flyttar den till början respektive slutet av ett stycke. - ->> Prova några C-a och sedan några C-e. - Prova också några M-a och sedan några M-e. - -Se hur efterföljande C-a efter varandra inte gör något, medan flera -M-a fortsätter att flytta markören till nästa stycke. Även om detta -inte verkar självklart är det ganska naturligt. - -Platsen där markören är i texten kallas också för "arbetspunkt" -(point). Eller omskrivet: Markören visar på skärmen var arbetspunkten -är i texten. - -Här är en kort sammanfattning av de enklaste markörförflyttnings- -kommandona, inklusive ord- och styckesförflyttningskommandon: - - C-f Flytta markören ett steg framåt - C-b Flytta markören ett steg bakåt - - M-f Flytta markören ett ord framåt - M-b Flytta markören ett ord bakåt - - C-n Flytta markören till nästa rad - C-p Flytta markören till föregående rad - - C-a Flytta markören till början av raden - C-e Flytta markören till slutet av raden - - M-a Flytta markören till början av meningen - M-e Flytta markören till slutet av meningen - ->> Prova alla dessa kommandon några gånger för tränings skull. - Dessa är de kommandon som används mest. - -Två andra viktiga markörrörelsekommandon är M-< (META mindre-än), som -flyttar markören till början av texten, och M-> (META större-än), som -flyttar den till slutet av texten. - -På en del tangentbord är "<" placerad över komma, så att man måste -använda skift för att få fram den. På dessa tangentbord måste man -också använda skift för att skriva M-<. Utan skifttangenten skulle det -bli M-komma. - ->> Prova M-< nu för att flytta markören till början av vägledningen. - Använd sedan C-v för att flytta markören tillbaka hit igen. - ->> Prova också M-> för att flytta markören till slutet av vägledningen. - Använd sedan M-v för att flytta markören tillbaka hit igen. - -Du kan också flytta markören med hjälp av piltangenterna, om -terminalen har piltangenter. Vi föreslår att du lär dig C-b, C-f, C-n -och C-p av tre skäl. För det första kommer de att fungera på alla -slags terminaler. För det andra kommer du att finna, när du har fått -lite träning i att använda Emacs, att det går mycket snabbare att -använda kontrollfunktionerna än piltangenterna (för att du undviker -att ändra fingersättningen). Den tredje anledningen är att när man har -lärt sig att använda kontrolltangenten blir det lättare att lära sig -de mer avancerade kontrollfunktionerna. - -De flesta kommandon i Emacs tar ett numeriskt argument och för de -flesta kommandon leder detta till att de repeteras. Ett numeriskt -argument anges genom att du skriver C-u och sedan talet, innan du -skriver kommandot. Om du har en META- (eller EDIT- eller ALT-) tangent -så finns det ett annat alternativ för att ge numeriska argument: skriv -talet medan du håller ned META-tangenten. Vi föreslår att du använder -C-u för det fungerar på alla slags terminaler. Det numeriska -argumentet kallas också för "prefixargument" eftersom det skrivs före -kommandot. - -Till exempel: C-u 8 C-f flyttar markören åtta steg framåt. - ->> Prova C-n eller C-p med ett numeriskt argument så att du - kommer så nära den här raden som möjligt med ett enda kommando. - -De flesta kommandon använder det numeriska argumentet för ett -repeterat utförande men det finns kommandon som använder det -annorlunda. Flera kommandon, men inga av dem du lärt dig hittills, -använder det som en flagga. Med ett prefixargument, och oberoende av -dess värde, gör kommandot något annat. - -C-v och M-v finns med bland dessa undantag. Om man ger ett argument -till ett av dessa kommandon kommer skärmbilden flytta sig upp eller -ned så många rader som argumentet anger, istället för så många -skärmbilder. Till exempel kommer C-u 8 C-v flytta skärmbilden 8 rader -uppåt. - ->> Prova C-u 8 C-v nu. - -Detta borde ha flyttat skärmbilden 8 rader uppåt. Om du önskar flytta -tillbaka igen är det bara att ge samma argument till M-v. - -Om du använder Emacs under ett fönstersystem, som X11 eller -MS-Windows, finns det troligen ett rektangulärt område på sidan -av Emacs-fönstret, en så kallad rullningslist. Genom att klicka i den -med musen kan du rulla texten. - ->> Prova att trycka med den mellersta musknappen i det utvalda området - på rullningslisten. Detta bör flytta skärmbilden till en plats i - texten beroende på var i rullningslisten du trycker. - ->> Prova att flytta musen upp och ner medan du håller ner den - mellersta musknappen. Du ser att texten rullar upp och ner beroende - på hur du för musen. - - -* OM EMACS HÄNGER ------------------ - -Om Emacs slutar att reagera på kommandon kan du lugnt stoppa dem genom -att trycka C-g. Du kan också använda C-g för att stoppa ett kommando -som tar för lång tid att utföra. - -Det är också möjligt att använda C-g för att avbryta ett numeriskt -argument eller början på ett kommando som du inte önskar att utföra. - ->> Skriv C-u 100 för att ge ett numeriskt argument på 100 och tryck - C-g. Tryck nu C-f. Markören skall nu flytta sig bara ett steg, för att - du avbröt argumentet med C-g. - -Om du av misstag slår blir du kvitt detta med ett C-g. - - -* SPÄRRADE KOMMANDON --------------------- - -En del Emacs-kommandon är "spärrade" så att nybörjare inte skall -använda dem av misstag. - -Om du provar ett av dessa spärrade kommandon kommer Emacs ge ett -meddelande som berättar vilket kommando det är och kommer att fråga om -du verkligen vill fortsätta och utföra detta kommando. - -Om du verkligen önskar att utföra kommandot trycker du mellanslag som -svar på frågan. Normalt, om du inte önskar att utföra detta kommando, -svarar du "n" på frågan. - ->> Skriv C-x C-l (som är ett spärrat kommando). - Skriv n som svar på frågan. - - -* FÖNSTER ---------- - -Emacs kan ha flera fönster och varje fönster kan visa sin egen text. -Vi kommer förklara senare hur man använder flera fönster. Här skall vi -förklara hur man blir av med extra fönster för att komma tillbaka till -det grundläggande läget med endast ett fönster. Det är enkelt: - - C-x 1 Ett fönster (dvs. ta bort alla andra fönster). - -Det är KONTROLL-x följt av siffran 1. C-x 1 utvidgar fönstret där -markören står så att det fyller hela skärmbilden. Alla andra fönster -tas bort. - ->> Flytta markören till den här raden och tryck C-u 0 C-l. ->> Tryck C-h k C-f. - Se hur det här fönstret krymper samtidigt som ett nytt uppträder - för att visa dokumentationen för C-f-kommandot. - ->> Slå C-x 1 och se hur dokumentationsfönstret nu försvinner. - -Kommandot skiljer sig lite från andra kommandon du har lärt dig -eftersom det består av två tecken. Det startar med tecknet -KONTROLL-x. Det är faktisk många kommandon som startar med KONTROLL-x -och många av dem har med filer, skärmbilder och liknande saker att -göra. Dessa kommandon är två, tre eller fyra tecken långa. - - -* SKRIVA OCH TA BORT TEXT -------------------------- - -Om du önskar att sätta in text är det bara att skriva in -texten. Tecken som du kan se, så som A, 7, *, etc. tolkas som text och -sätts in direkt. Skriv (retur-tangenten) för att sätta in en -radbrytning. - -Du kan radera det sista tecknet du skrev genom att trycka . - är en tangent på tangentbordet -- samma som du normalt -använder utanför Emacs för att ta bort det senaste tecknet du skrivit. -Det är vanligen en stor tangent några rader ovanför retur-tangenten, -och den är vanligtvis märkt "Delete, "Del" eller "Backspace". - -Om den stora tangenten är märkt med "Backspace" så är det den du -använder för . Det kan finnas en annan tangent som är märkt -med "Delete" men det är inte . - -Generellt raderar tecknet precis före den aktuella -markörspositionen. - ->> Gör detta nu: Skriv in några tecken och ta bort dem genom att - använda . Var inte rädd för att skriva i den här filen, - du kommer inte att kunna förändra originalet till vägledningen. - Detta är bara en lokal kopia. - -När en rad blir för lång för att rymmas på en skärmbredd så fortsätter -den på raden under. Ett bakstreck ("\") (eller om du kör under ett -fönstersystem, en liten böjd pil) i slutet av högermarginalen -indikerar att raden fortsätter. - ->> Skriv in lite text så att du kommer till slutet av raden och - fortsätt att skriva lite till. Du kommer då att se hur - fortsättningstecknet ser ut. - ->> Använd för att radera texten tills raden ryms på en - skärmbredd igen. Fortsättningstecknet kommer då att försvinna. - -Du kan radera radbrytning precis som andra tecken. Genom att radera -radbrytningen mellan två rader slås dessa samman till en. Om -resultatet av denna sammanslagning blir för stor för att passa inom en -skärmbredd, så kommer den att visas med ett fortsättningstecken. - ->> Flytta markören till början av en rad och tryck . - Detta kommer att klistra ihop raden med raden över. - ->> Tryck för att sätta in radbrytningen du tog bort. - -Tänk på att de flesta Emacs-kommandon kan ta numeriska argument. Detta -gäller också texttecken. Genom att repetera ett texttecken kommer det -skrivas flera gånger. - ->> Prova det nu: Skriv C-u 8 * för att sätta in ********. - -Du har nu lärt dig de mest grundläggande sätten att skriva något i -Emacs och att rätta fel. Du kan radera ord och rader också. Här är en -översikt över kommandon för radering: - - Raderar tecknet som står precis före markören - C-d Raderar tecknet som står precis under markören - - M- Raderar ordet precis före markören - M-d Raderar ordet precis efter markören - - C-k Raderar från markören till slutet av raden - M-k Raderar till slutet av stycket - -Lägg märke till att och C-d kontra M- och M-d -följer mönstret som började med C-f och M-f. ( är inte precis -ett kontrolltecken men låt oss inte bry oss om det.) C-k och M-k -fungerar på samma sätt som C-e och M-e (nästan). - -Du kan också ta bort vilken del som helst av texten med hjälp av -följande allmänna metod. Flytta till ena änden av det område du vill -ta bort och tryck C-@ eller C-mellanslag. Flytta till andra änden av -området och tryck C-w. Detta tar bort all text mellan de två -positionerna. - ->> Flytta markören till bokstaven D i föregående stycke. ->> Tryck C-mellanslag. Emacs skall nu visa meddelandet "Mark set" - längst ner på skärmen. ->> Flytta markören till bokstaven o i ordet metod på andra raden i - stycket. ->> Tryck C-w. Detta tar bort texten från och med D fram till just före - o. - -Skillnaden mellan att "ta bort" (killing) och "radera" (deleting) text -är att "borttagen" text kan hämtas tillbaka, medan raderad text inte -kan det. Återinsättning av borttagen text kallas "återhämtning" -(yanking). Generellt kan man säga att kommandon som tar bort fler än -ett tecken sparar undan texten (så att den kan återhämtas) medan -kommandon som bara raderar ett tecken eller tomma rader och mellanrum -inte sparar någonting (och den texten kan alltså inte återhämtas). - ->> Flytta markören till början av en rad som inte är tom. - Tryck C-k för att ta bort texten på raden. ->> Tryck C-k en gång till. Du kommer nu se att den raderar den tomma - raden som var kvar. - -Lägg märke till att ett enstaka C-k bara raderar texten på raden och -att det andra C-k raderar själva raden och flyttar upp texten på raden -under ett steg. C-k hanterar numeriska argument lite speciellt. Den -raderar så många rader OCH innehållet i dem. Detta är alltså inte bara -en repetition av kommandot. C-u 2 C-k raderar två rader samt de tomma -raderna, medan C-k två gånger inte kommer att göra det. - -Att sätta in borttagen text kallas att "återhämta" den (yanking). -(Tänk på det som att du rycker, eller drar, tillbaka någon text som -tagits bort.) Du kan antingen hämta tillbaka borttagen text till samma -plats som där den blev borttagen, eller så kan du sätta in den på en -annan plats i texten du redigerar eller till och med i en helt annan -fil. Du kan också hämta tillbaka samma text flera gånger så att du får -flera lika förekomster av den. - -Kommandot för att hämta tillbaka text är C-y. Kommandot hämtar -tillbaka den sist borttagna texten och placerar den där markören är. - ->> Prova: Gör C-y för att få tillbaka texten. - -Om du gör flera C-k i rad så kommer all bortagen text att sparas -samlat så att ett C-y återhämtar alla raderna på en gång. - ->> Prova detta. Tryck C-k ett par gånger. - -Och hämta så tillbaka igen: - ->> Tryck C-y. Flytta markören några rader ned och tryck C-y igen. - Så kopierar man text. - -Men vad gör du om du har en text du önskar att hämta tillbaka men du -har redan tagit bort något nytt? C-y skulle hämta tillbaka den senaste -texten som blev borttagen men tidigare bortagen text är inte -förlorad. Du kan få tillbaka den med kommandot M-y. Efter att du har -använt C-y för att hämta tillbaka den sist borttagna texten kommer M-y -ersätta denna text med tidigare borttagen text. Genom att göra M-y om -och om igen hämtas allt tidigare borttagen text tillbaka. När du har -nått den önskade texten behöver du inte göra något ytterligare för att -behålla den. Fortsätt bara med din redigeringen och lämna den -återtagna texten där den är. - -Om du gör M-y tillräckligt många gånger kommer du att komma tillbaka -till startpunkten (texten som sist blev borttagen). - ->> Ta bort en rad, flytta markören till en ny rad och ta bort även - denna rad. Använd C-y för att hämta tillbaka den sista raden. Tryck - M-y för att byta den mot den tidigare borttagna raden. Tryck flera - M-y och se vad du får. Fortsätt med detta tills du får tillbaka den - första raden igen och sedan några gånger till. Om du vill kan du - prova med positiva och negativa argument till M-y. - - -* ÅNGRA -------- - -Om du gör en förändring i texten och sedan ångrar dig, så kan du -upphäva ändringen med kommandot C-x u (undo). - -Normalt kommer C-x u upphäva förändringen som gjordes av det sist -utförda kommandot. Om du repeterar C-x u flera gånger kommer varje -repetition upphäva ett kommando till. - -Det finns två undantag. Kommandon som inte förändrar texten räknas -inte (detta inkluderar markörförflyttningar och bläddringskommandon), -och inskrivna enkelbokstäver blir vanligtvis grupperade i grupper om -upp till 20 tecken. Detta är för att reducera antalet C-x u som behövs -för att ångra inskriven text. - ->> Ta bort den här raden med C-k. C-x u kommer att hämta tillbaka den - igen. - -C-_ är ett alternativ till ångra-kommandot. Den fungerar på samma sätt -som C-x u men är enklare att trycka flera gånger i följd. Det -olämpliga med C-_ är att den är svår att hitta på en del tangentbord. -Det är därför vi också har C-x u. På en del terminaler kan du få fram -C-_ genom att trycka / samtidigt som Ctrl hålls nere. - -Ett numeriskt argument till C-_ eller C-x u medför repetering. - -Du kan ångra radering av text precis på samma sätt som du kan ångra -att du tagit bort text. Skillnaden mellan att ta bort och att radera -någonting påverkar endast om du kan hämta tillbaka det med C-y. För -ångerfunktionen spelar det ingen roll hur texten försvunnit. - - -* FILER -------- - -För att texten du har förändrat skall sparas permanent måste du lägga -den i en fil. Om du inte gör det kommer texten att försvinna när du -avslutar Emacs. Du lägger texten i en fil genom att först finna (find) -denna fil. Detta kallas också för att besöka filen (visit). - -Att finna en fil innebär att du ser filens innehåll i Emacs. På många -sätt är det som om du förändrar själva filen men förändringen du gör -kommer inte bli permanent förrän filen sparas (save). Detta är för att -undvika att halvförändrade filer sparas när du inte vill det. Till och -med när du sparar filen kommer Emacs att behålla originalet under ett -nytt namn, som backup, ifall du senare ångrar alltihop. - -Om du tittar nästan längst ner på skärmbilden så kommer du se en rad -som börjar och slutar med minustecken, och som innehåller texten -"--:-- TUTORIAL.sv". Denna del av skärmbilden visar alltid namnet på -filen du besöker. Just nu är du inne i en fil som heter "TUTORIAL.sv" -och som är en personlig kopia av vägledningen till Emacs. Vilken fil -du än är inne i så kommer filnamnet stå där. - -En annan sak med kommandot för att finna filer är att du måste ange -vilket filnamn du önskar. Vi säger att kommandot "läser ett argument -från terminalen". I detta fall är argumentet namnet på filen. Efter -att du gett kommandot - - C-x C-f Finn en fil - -kommer Emacs fråga efter ett filnamn. Filnamnet du skriver syns på den -nedersta raden i skärmbilden. Denna sista rad kallas minibuffert när -den används på det här sättet. Du kan använda vanliga Emacs-kommandon -för att förändra filnamnet. - -När du skriver in filnamnet, eller något annat i minibufferten, kan du -avbryta med kommandot C-g. - ->> Skriv C-x C-f och så C-g. Detta avbryter minibufferten och - avbryter också C-x C-f kommandot som använde minibufferten. Så att - du inte finner någon fil. - -När du är färdig med att skriva filnamnet trycker du för att -utföra kommandot. Då kommer C-x C-f kommandot att börja leta fram -filen. Minibufferten försvinner när C-x C-f kommandot är färdigt. - -Efter en liten stund kommer filen upp på skärmen och du kan börja -redigera innehållet. När du vill spara filen kan du använda detta -kommando - - C-x C-s Spara fil - -Detta sparar texten på skärmen till filen. Första gången detta görs -kommer Emacs att ge originalfilen ett nytt namn så att den inte går -förlorad. Det nya filnamnet bildas genom att lägga till ett "~" i -slutet av det ursprungliga filnamnet. - -När lagringen är utförd kommer Emacs skriva ut namnet på filen som -blev sparad. Du bör spara ofta så att du inte förlorar så mycket om -systemet kraschar. - ->> Skriv C-x C-s för att spara en kopia av denna vägledning. - Detta skall leda till att "Wrote ...TUTORIAL.sv" skrivs ut nederst - på skärmbilden. - -Observera: På vissa system leder C-x C-s till att skärmen låser -sig. Detta tyder på att systemet har "flödeskontroll" och att denna -har fångat C-s och inte skickat den vidare till Emacs. För att -fortsätta måste du trycka C-q. Se i så fall i avsnittet "Spontaneous -Entry to Incremental Search" i Emacs-manualen för att få tips på hur -detta kan undvikas. - -Du kan finna en existerande fil, antingen för att förändra den eller -för att titta på den. Du kan också finna en fil som inte existerar. -Det är så man skapar nya filer med Emacs: finn filen, som är tom till -att börja med, och sätt igång med att skriva texten som skall in i -filen. Först när du sparar filen kommer Emacs att verkligen skapa -filen med den text du har skrivit. Från och med detta editerar du en -fil som existerar. - - -* BUFFERTAR ------------ - -Om du finner en ny fil med C-x C-f kommer den första filen fortsätta -att vara öppen i Emacs. Du kan byta tillbaka till den genom att finna -den på nytt med C-x C-f. På så sätt kan du ha ett stort antal filer -öppna i Emacs. - ->> Skapa en fil med namnet "foo" genom att trycka C-x C-f foo . - Skriv in lite text, redigera den och spara "foo" genom att använda - C-x C-s. Skriv till slut C-x C-f TUTORIAL.sv för att komma - tillbaka till den här vägledningen. - -Emacs sparar texten för varje fil i ett objekt kallat "buffert". När -du finner en ny fil skapas en ny buffert i Emacs. För att se en lista -över existerande buffertar i Emacs kan du skriva - - C-x C-b Listning av buffertar. - ->> Prova C-x C-b nu. - -Se hur varje buffert har ett namn och att de också kan ha namnet på -den fil som innehållet kommer från. Vilken text du än ser i ett -Emacs-fönster så tillhör den alltid en buffert. - ->> Skriv C-x 1 för att bli kvitt buffertlistan. - -När du har flera buffertar så är bara en av dem "gällande" åt gången. -Det är den buffert du redigerar. Om du vill redigera en annan buffert -så måste du byta till den. Om du vill byta till en buffert som -motsvarar en fil kan du göra det genom att besöka den igen med C-x -C-f. Det finns dock ett enklare sätt: använd C-x b kommandot. I det -kommandot anger du buffertens namn. - ->> Skriv C-x b foo för att gå tillbaka till bufferten "foo" - som innehåller texten i filen "foo". Skriv sedan C-x b TUTORIAL.sv - för att komma tillbaka till den här handledningen. - -Mestadels är buffertens namn densamma som filens namn (utan -katalogdel.) Det är dock inte alltid så. Bufferlistan du skapar med -C-x C-b visar alltid namnen på varje buffert. - -All text du ser i ett Emacsfönster är alltid del av någon buffert. En -del buffertar är inte knutna till någon fil, till exempel bufferten -"*Buffer List*". Det är den buffert som innehåller buffertlistan som -skapades med C-x C-b. Bufferten "*Messages*" motsvarar inte heller -någon fil. Den innehåller de meddelanden som visas på den nedersta -raden i Emacs sessionen. - ->> Skriv C-x b *Messages* för att se meddelandebufferten. - Skriv sedan C-x b TUTORIAL.sv för att återgå till den här - handledningen. - -Om du ändrar texten till en fil och sedan öppnar en ny fil, så kommer -inte den första filen sparas. Förändringen ligger kvar i -bufferten. Skapande och redigering av den nya filen påverkar inte den -första filens buffert. Detta kan vara bra men betyder också att du -behöver ett lämpligt sätt att spara den första filens buffert. Det är -omständligt att flytta tillbaka till den tidigare bufferten med C-x -C-f för att sedan spara filen med C-x C-s. Därför finns kommandot - - C-x s Spara buffertar - -C-x s frågar för varje buffert med ändringar, som inte sparats, om du -vill spara eller ej. - ->> Sätt in en rad med text och spara med C-x s - Du skall nu få frågan om du önskar spara bufferten - TUTORIAL.sv. Svara ja på frågan genom att trycka "y" (yes). - - -* UTVIDGNING AV KOMMANDOMÄNGDEN -------------------------------- - -Det finns mycket fler Emacs-kommandon än antalet KONTROLL- eller -META-tangenter. För att komma förbi denna begränsning har Emacs ett -"X"- (eXtend) kommando. Detta finns i två varianter: - - C-x Tecken-utvidgning. Följs av ett tecken. - M-x Namngiven kommandoutvidgning. Följs av ett - kommandonamn. - -Detta är kommandon som är bra att ha men används mer sällan än de -kommandon du redan har lärt dig. Du har redan sett några av dem, C-x -C-f för finn, och C-x C-s för spara. Ett annat exempel är kommandot -för att avsluta Emacs som är C-x C-c. Var inte rädd för att förlora -förändringar du har gjort. C-x C-c erbjuder dig att spara förändringar -innan Emacs avslutas. - -C-z är kommandot för att avsluta Emacs *tillfälligt* så att du kan -återvända till samma Emacs senare. - -På system som tillåter det kommer C-z suspendera Emacs, dvs. returnera -till kommandoraden utan att avsluta Emacs. I de flesta system kan du få -tillbaka Emacs med kommandot 'fg' eller '%emacs'. - -På system som saknar suspendering startar C-z ett skal som kör under -Emacs och som ger dig chansen till att köra andra program och sedan -återgå till Emacs efteråt. Den ger ingen riktig avslutning av Emacs. I -detta fall återvänder man vanligtvis till Emacs med kommandot 'exit'. - -C-x C-c används när du skall avsluta Emacs. Det är klokt att avsluta -Emacs om den har startats av ett mail-program eller andra -applikationer eftersom det inte är säkert att de kan hantera -suspendering av Emacs. Under normala omständigheter, om du inte har -tänkt att logga ut, är det bättre att suspendera Emacs med C-z -istället för att avsluta. - -Det finns många C-x kommandon. Här är en lista över de du har lärt dig -hittills: - - C-x C-f Finn fil - C-x C-s Spara fil - C-x s Spara några buffertar - C-x C-b Lista buffertar - C-x b Byt buffert - C-x C-c Avsluta Emacs - C-x 1 Ta bort alla utom ett fönster - C-x u Ångra - -Namngivna utvidgade kommandon är kommandon som används mycket sällan -eller bara i vissa lägen. Ett exempel på ett sådant kommando är -replace-string, som globalt ersätter en teckensträng med en annan. När -du skriver M-x kommer Emacs visa en prompt nederst i skärmbilden med -M-x där du skall skriva in kommandot du önskar att köra, i det här -fallet "replace-string". Det är bara att skriva "repl s" och -Emacs kommer då att fylla i kommandonamnet. ( är -tabulatortangenten, som vanligtvis finns över CapsLock- eller -skifttangenten nära den vänstra kanten på tangentbordet.) Avsluta -kommandot med . - -Kommandot replace-string kräver två argument, teckensträngen som skall -ersättas och teckensträngen som den skall ersättas med. Du måste -avsluta bägge argumenten med . - ->> Flytta markören till den blanka raden två rader under denna rad. - Skriv M-x repl sförändradändrad. - - Lägg märke till hur den här raden har blivit förändrad. Du har - ersatt ordet f-ö-r-ä-n-d-r-a-d med "ändrad" på alla platser där - ordet förekom, från markören och nedåt. - - -* SPARAUTOMATIK ---------------- - -När du har gjort förändringar i en fil men inte sparat den, så kommer -ändringarna att gå förlorade om maskinen kraschar. Som ett skydd mot -detta sparar Emacs periodiskt ändringarna i en autosparfil för varje -fil du redigerar. Denna fil har ett # i början och slutet av -filnamnet. Om du till exempel har en fil med namnet "hej.c" så kommer -namnet på autosparfilen bli "#hej.c#". När du sparar filen på vanlig -sätt kommer Emacs radera autosparfilen. - -Om maskinen kraschar kan du återfå dina automatiskt sparade ändringar -genom att finna filen på vanlig sätt (filen du redigerade, inte -autosparfilen) och skriva M-x recover-file. När Emacs vill ha -bekräftelse svarar du yes för att återställa filen. - - -* EKOOMRÅDE ------------ - -Om Emacs ser att du skriver kommandon långsamt så kommer de att visas -på den nedersta raden i skärmbilden i ett område som kallas -"ekoområde" (echo area). Detta område innehåller den nedersta raden på -skärmbilden. - - -* LÄGESRADEN ------------- - -Raden precis över ekoområdet kallas "lägesrad" (mode line). Den ser -ungefär ut så här: - ---:** TUTORIAL 63% L749 (Fundamental)----------------------- - -Raden innehåller information om Emacs och texten du redigerar. - -Du vet redan vad filnamnet betyder, det är den fil du har funnit. NN% -visar den aktuella positionen i texten, dvs. NN procent av texten -befinner sig över toppen av skärmbilden. Om toppen av filen är i -skärmbilden kommer det stå "Top" istället för " 0%" och om slutet av -filen är i skärmbilden kommer det stå "Bot". Om du ser på en fil där -hela texten passar in på en sida kommer det stå "All". - -Bokstaven L följd av siffror anger positionen på ett annat -sätt. Siffrorna visar vilken rad som markören befinner sig på. - -Stjärnorna nära början av raden visar att det har skett förändringar i -filen sedan den sist blev sparad. När du precis har öppnat en fil -kommer det inte stå något här, bara minustecken. - -Den del av lägesraden som står inom parentes visar vilket -redigeringsläge (mode) du använder. Standardläget är "Fundamental", -som du använder nu. Det är ett exempel på ett huvudläge (major mode). - -Emacs har många olika huvudlägen. Några av dem är gjorda för -redigering av olika programmeringsspråk eller typer av text, till -exempel Lisp mode och Text mode. Det kan bara vara ett huvudläge åt -gången och lägesnamnet står alltid där det står Fundamental nu. - -Varje huvudläge gör att en del kommandon uppför sig annorlunda. Det -finns till exempel kommandon för att sätta in kommentarer i programkod -och eftersom varje programmeringsspråk har sitt sätt att skriva -kommentarer på så måste de olika huvudlägena sätta in dessa -kommentarer på olika sätt. Varje huvudläge namnger ett utvidgat -kommando som används för att byte till det läget. Till exempel är M-x -fundamental-mode kommandot för att byta till huvudläget Fundamental. - -Om du skall redigera text, såsom den här filen, bör du troligen -använda Text-läge. - ->> Skriv M-x text mode. - -Inget av kommandona du har lärt dig hittills förändrar Emacs i någon -högre grad. Men lägg märke till att M-f och M-b nu behandlar -apostrofer som en del av ord. Tidigare, i Fundamental mode, behandlade -M-f och M-b apostrofer som ordavskiljare. - -Varje huvudläge gör vanligtvis små förändringar som denna och de flesta -kommandon gör samma sak i varje huvudläge, de fungerar bara lite -annorlunda. - -För att få fram dokumentationen för det läge du är i nu kan du skriva -C-h m. - ->> Använd C-u C-v så att denna rad kommer nära toppen av - skärmbilden. ->> Skriv C-h m och se hur Text-läget skiljer sig från - Fundamental-läget. ->> Tryck C-x 1 för att ta bort dokumentationen från skärmbilden. - -Huvudläge kallas så för att det även finns sidolägen (minor mode). -Ett sidoläge ersätter inte ett huvudläge, utan modifierar det. Varje -sidoläge kan stängas av och på oberoende av andra sidolägen och -oberoende av huvudläget. Därför kan du använda ett sidoläge, en -kombination av flera sidolägen eller inget sidoläge alls. - -Ett bra sidoläge, speciellt för redigering av text, är -radbrytningsläget (auto-fill-mode). När detta läge är på bryter Emacs -rader mellan ord automatisk när du skriver in text så att en rad blir -för lång. - -Du kan slå på radbrytningsläget genom att skriva M-x auto fill -mode. När läget är påslaget kan du slå av det igen genom att -upprepa M-x auto fill mode. Om läget är avslaget slår -kommandot på det och vice versa. Vi säger att kommandot "växlar -läget". - ->> Skriv M-x auto fill mode nu. Skriv så in en rad med - "asdf " tills raden delar sig. Du måste sätta in blanktecken, för - Auto Fill bryter bara raden mellan ord. - -Marginalen är vanligtvis satt till 70 tecken men du kan ändra detta -genom att använda kommandot C-x f. Antalet tecken ges till kommandot -genom ett numeriskt argument. - ->> Skriv C-x f med ett argument på 20. (C-u 2 0 C-x f). Skriv sedan in - någon text och lägg märke till att Emacs bryter rader som är längre - än 20 tecken. Sätt tillbaka marginalen till 70 tecken igen, genom - att använda C-x f en gång till. - -Om du gör förändringar mitt i en rad så kommer inte sidoläget Auto -Fill att kunna omformattera raderna för dig. -För att göra detta kan du trycka M-q med markören inne i det avsnittet -du önskar att omformatera. - ->> Flytta markören in i föregående stycke och tryck M-q. - - -* SÖKNING ---------- - -Emacs kan söka efter textsträngar (grupper med sammanhängande -bokstäver eller ord) antingen framåt eller bakåt i texten. När du -söker efter text kommer markören att flytta sig till nästa plats där -teckensträngen uppträder. - -Sökmetoden i Emacs skiljer sig lite från sökmetoder i andra -redigeringsprogram genom att den är inkrementell. Detta betyder att -sökandet fortgår medan du skriver in teckensträngen du skall söka -efter. - -Kommandot för att inleda en sökning är C-s för att söka framåt och C-r -för att söka bakåt. MEN VÄNTA! Prova dem inte än. - -När du skriver C-s kommer du lägga märke till att texten "I-search" -dyker upp i eko-området. Detta säger dig att Emacs är inne i sidoläget -inkrementell sökning och väntar på att du skall skriva in det du letar -efter. avslutar sökandet. - ->> Skriv nu C-s för att starta en sökning. Skriv nu långsamt, en - bokstav i taget, ordet 'markör', och gör en paus efter varje gång - du skriver en bokstav så att du ser vad som sker med markören. Nu - har du sökt efter ordet "markör" en gång. ->> Skriv C-s en gång till för att söka efter nästa förekomst av ordet - "markör". ->> Tryck nu på fyra gånger och se hur markören flyttar sig ->> Tryck för att avsluta sökandet. - -Såg du vad som hände? Under inkrementell sökning försöker Emacs att gå -till den första förekomsten av texten som du har skrivit så långt, och -markerar träffen så att du ser var den är. För att gå till nästa -förekomst av ordet 'markör' är det bara att trycka C-s en gång till. -Om det inte finns flera förekomster kommer Emacs att pipa och meddela -att sökandet har misslyckats. C-g avbryter också sökandet. - -Observera: På vissa system gör C-s att skärmen låser sig. Detta tyder -på att systemets flödeskontroll har fångat upp C-s och inte skickat -den vidare till Emacs. För att fortsätta måste du trycka C-q. Se i så -fall avsnittet "Spontaneous Entry to Incremental Search" i -Emacs-manualen för råd om hur detta kan undvikas. - -Om du är inne i en inkrementell sökning och trycker kommer -du lägga märke till att den sista bokstaven i söksträngen blir raderad -och sökandet hoppar tillbaka till en tidigare förekomst. Om du till -exempel skriver "m" för att söka efter den första förekomsten av "m", -och sedan trycker "a" så kommer markören flytta sig till första -förekomsten av "ma". Tryck nu . Detta avlägsnar "a" från -söksträngen, och markören flyttar sig tillbaka till den första -förekomsten av "m". - -Om du är mitt i en sökning och trycker ett KONTROLL- eller META-tecken -så avbryts sökandet. Undantag är tecken som används under sökningen, -så som C-s och C-r. - -C-s startar en sökning som letar efter varje förekomst av söksträngen -EFTER markörspositionen. Om du skall söka efter en sträng tidigare i -texten måste du använda C-r. Allt vi har sagt om C-s gäller också för -C-r, bortsett från att riktningen på sökningen är den omvända. - - -* FLERA FÖNSTER ---------------- - -En av egenskaperna hos Emacs är att den kan visa mera än en buffert på -skärmen samtidig. - ->> Flytta markören till den här raden och tryck C-u 0 C-l (alltså - KONTROLL-L, inte KONTROLL-1). - ->> Skriv nu C-x 2, som leder till att skärmen delas i två - fönster. Bägge fönstren visar den här vägledningen. Markören står i - det övre fönstret. - ->> Skriv C-M-v för att rulla det nedre fönstret. - (Om du inte har META-tangenten trycker du C-v.) - ->> Skriv C-x o (o för other) för att flytta markören till det - nedre fönstret. - ->> Använd C-v och M-v i det nedre fönstret för att flytta upp - och ned i texten. Fortsätt att läsa den här texten i det övre - fönstret. - ->> Skriv C-x o igen för att flytta markören tillbaka till det övre - fönstret. Markören i det övre fönstret står på samma plats som det - gjorde när du lämnade det. - -Du kan fortsätta att använda C-x o för att byta mellan de två -fönstren. Vart och ett av fönstren har sin egen markörposition men det -är bara ett av fönstren som visar den. Alla redigeringskommandon -fungerar i det fönster där markören är synlig. Vi kallar detta fönster -för det valda fönstret (selected window). - -Kommandot C-M-v är bra när du redigerar text i ett fönster och -använder det andra fönstret för referenser. Då kan du kan ha markören -i samma fönster hela tiden och du kan använda C-M-v för att flytta dig -i det andra fönstret. - -C-M-v är ett exempel på en KONTROLL-META-kombination. Om du har -META-tangenten håller du både KONTROLL och META nedtryckt samtidigt -som du trycker v. Det har ingen betydelse vilken av tangenterna -KONTROLL och META som trycks först, för bägge fungerar så att de -"modifierar" de andra tangenterna du trycker. - -Om du inte har META-tangenten och använder istället är -ordningsföljden viktig. Du måste trycka följt av KONTROLL-v, -KONTROLL- v fungerar inte. Det är för att är ett tecken i -sig och inte en äkta "modifierare". - ->> Skriv C-x 1 i det övre fönstret för att bli kvitt det nedre - fönstret. - -Om du hade skrivit C-x 1 i det nedre fönstret skulle det övre ha -försvunnit. Tänk på detta kommando som "Behåll bara ett fönster, det -som markören står i." - -Du måste inte ha samma buffert i bägge fönstren. Du kan använda C-x -C-f för att finna en ny fil i ett av fönstren samtidigt som det andra -fönstret förblir oförändrat. Du kommer att märka att fönstren är helt -oberoende. - -Här är ett annat sätt att använda två fönster till att visa två olika -filer: - ->> Skriv C-x 4 C-f följt av ett filnamn. Avsluta med . - Den nya filen kommer då att dyka upp i det nedre fönstret. - Markören flyttats också dit. - ->> Skriv C-x o för att gå tillbaka till det övre fönstret och C-x - 1 för att bli kvitt det nedre igen. - - -* REKURSIVA REDIGERINGSNIVÅER ------------------------------ - -Ibland kan du hamna i något som kallas "rekursiv redigering" -(recursive editing level). Detta indikeras med hakparenteser runt -huvudläget i lägesraden. Till exempel kan det stå [(Fundamental)] -istället för (Fundamental). - -För att komma ur rekursiv redigering trycker du . -Detta är ett generellt brytkommando. Du kan också använda det för att -bli kvitt extra fönster och för att komma ut ur minibufferten. - ->> Skriv M-x för att komma in i minibufferten. Skriv så - för att komma ut. - -Du kan inte använda C-g för att komma ut ur rekursiv redigering. -Detta är för att C-g används för att avbryta kommandon och argument -under rekursiv redigering. - - -* MER HJÄLP ------------ - -I denna vägledning har vi försökt inkludera precis så mycket -information att du kan börja använda Emacs. Det finns så många -möjligheter i Emacs att det skulle vara omöjligt att förklara alla -här. Men du VILL säkert lära dig mer om Emacs eftersom den har många -goda egenskaper. Emacs tillhandahåller kommandon för att läsa all -dokumentation. Dessa hjälpkommandon startas med teckenkombinationen -C-h. - -För att använda hjälpen skriver du C-h följt av ett tecken för den -hjälp du behöver. Om du verkligen är helt villrådig kan du trycka C-h -? för att Emacs skall visa vilken hjälp som finns tillgänglig. Om du -har skrivit C-h och bestämmer dig för att du inte behöver ha någon -hjälp kan du trycka C-g för att avbryta. - -(På vissa platser är C-h omkonfigurerad. Det är normalt ingen bra ide´, -så du kan på goda grunder klaga hos systemadministratören. Under -tiden, om C-h inte visar ett hjälpmeddelande längst ner på skärmen, -kan du i stället försöka med funktionstangenten F1 eller M-x -help.) - -Den mest grundläggande hjälp-funktionen är C-h c. Skriv C-h, ett "c" -och en knappsekvens. Emacs ger då en beskrivning av kommandot. - ->> Skriv C-h c C-p. - -Meddelandet skall då bli något i stil med: - - C-p runs the command previous-line - -Detta ger ett funktionsnamn. Funktionsnamnen används huvudsakligen för -att specialanpassa och utvidga Emacs. Men eftersom funktionerna har -beskrivande namn kan de också fungera som en enkel dokumentation, -tillräckligt för att påminna dig om kommandon du redan lärt dig. - -Flerteckenskommandon, så som C-x C-s och (om du inte har META, EDIT -eller ALT tangenten) v, är också tillåtna efter C-h c. - -För att få mer information om ett kommando kan du använda C-h k -istället för C-h c. - ->> Skriv C-h k C-p. - -Detta kommer visa funktionens dokumentation och namn i ett eget -fönster. För att avsluta hjälpfönstret kan du trycka C-x 1. Du behöver -inte göra det omedelbart. Du kan editera med hjälptexten som stöd för -att först senare ta bort fönstret med C-x 1. - -Här är fler varianter på C-h: - - C-h f Beskriv en funktion. Du skriver in funktionsnamnet. - ->> Prova att skriva C-h f previous-line. - Detta ger den information Emacs har om funktionen - som implementerar kommandot C-p. - -Ett liknande kommando, C-h v, visar dokumentationen för de variabler -som du kan ändra värde på för att anpassa Emacs beteende. Du måste -ange namnet på variabeln när Emacs frågar efter den. - - C-h a Kommando-apropå (Command Apropos). Skriv in ett - nyckelord och Emacs listar all kommandon vars namn - innehåller det nyckelordet. Alla dessa - kommandon kan aktiveras med META-x. För några - kommandon listas också de kombinationer bestående av - en eller två tecken som kör det kommandot. - ->> Skriv C-h a file. - -Detta visar i ett annat fönster en lista över alla M-x kommandon där -"file" förekommer i kommandonamnet. Du kommer se teckenkommandon som -C-x C-f listade bredvid motsvarande kommandonamn, t.ex. find-file. - ->> Tryck C-M-v för att rulla texten i hjälpfönstret. Gör det några - gånger. - ->> Type C-x 1 för att ta bort hjälpfönstret. - - C-h i Läs direktmanualen (alias Info). Detta kommando - placerar dig i en speciell buffer vid namn "*info*" - där du kan läsa direkthjälpen för de paket som är - installerade i ditt system. Slå m emacs för - att läsa Emacs-manualen. Om du aldrig tidigare har - använt dig av Info, skriv ? och Emacs tar dig på en - guidad tur över Infolägets (Info-mode) möjligheter. - När du väl har tagit dig igenom den här - användarhandledningen så är det direktmanualen som är - din huvudsakliga källa till dokumentation. - - -* TILL SIST ------------ - -Tänk på att använda C-x C-c för att avsluta Emacs permanent. För att -tillfälligt gå till ett skal, så att du senare kan komma tillbaka -igen, använd C-z. (Under X kommer detta att minimera Emacs.) - -Denna vägledningen är avsedd för nya användare, om det är något som är -oklart duger det inte att sitta och tycka synd om sig själv -- Skicka -ett mail och klaga! - - -* MER FUNKTIONER ----------------- - -Du kan lära dig mer om Emacs genom att läsa dess manual, antingen i -bokform eller on-line i Info (använd Hjälp-menyn eller skriv F10 h r). -Två finesser som du kan komma att gilla speciellt är komplettering -(completion), som spar tangenttryckningar, och dired, som förenklar -filhantering. - -Komplettering är ett sätt att undvika onödiga tangenttryckningar. Till -exempel, om du vill byta till *Messages* bufferten, kan du du skriva -C-x b *M och Emacs kommer fylla i resten av buffertnamnet så -långt den kan räkna ut det från det du redan skrivit. Komplettering -finns beskrivet i Emacs-manualen i noden "Completion". - -Dired gör det möjligt att lista filer i en katalog (och även dess -subkataloger), flytta runt i listan, besöka, byta namn, ta bort och -operera på olika sätt på filerna. Dired finns beskrivet i Info i -Emacs-manualen i noden "Dired". - -Manualen beskriver även många andra Emacs funktioner. - - -* KOPIERING ------------ - -Denna vägledning härstammar från en hel rad Emacs-vägledningar och den -första skrevs av Stuart Cracraft för den ursprungliga Emacs. Mats -Lidell översatte den till Svenska. - -This version of the tutorial, like GNU Emacs, is copyrighted, and -comes with permission to distribute copies on certain conditions: - -Copyright (C) 1985, 1996, 1998, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 Free Software Foundation, Inc. - - Permission is granted to anyone to make or distribute verbatim copies - of this document as received, in any medium, provided that the - copyright notice and permission notice are preserved, - and that the distributor grants the recipient permission - for further redistribution as permitted by this notice. - - Permission is granted to distribute modified versions - of this document, or of portions of it, - under the above conditions, provided also that they - carry prominent notices stating who last altered them. - -The conditions for copying Emacs itself are more complex, but in the -same spirit. Please read the file COPYING and then do give copies of -GNU Emacs to your friends. Help stamp out software obstructionism -("ownership") by using, writing, and sharing free software! - -;;; Local Variables: -;;; coding: latin-1 -;;; sentence-end-double-space: nil -;;; End: - -;;; arch-tag: b352f774-622b-4cc6-85ce-43e3baf4fc1b diff --git a/etc/TUTORIAL.th b/etc/TUTORIAL.th deleted file mode 100644 index 8e70bc4fc71..00000000000 --- a/etc/TUTORIAL.th +++ /dev/null @@ -1,1014 +0,0 @@ -0,T$Yh10AW1M!RCc0*i10MU1aA!0Jl1(B. ,Tb;C40HV1!IR0Jh1G907i1RB"M'0$Yh10AW1MJSK0CQ1:`0'Wh1M9d"c9!RC7SJS`9R(B. -,TJ'G90ET1"0JT1708Tl1(B ,T>(B.,TH(B. 2528 ,Tb4B:0CT10IQ17?0CU1+M?05l1aG0Cl1?RG09l1`40*Q19(B (Free Software -Foundation, Inc); ,T!0CX13R0HV1!IR`0'Wh1M9d"5M907i1RB:7(B. -0,T7h1R9!S0EQ1'0HV1!IR0$Yh10AW1M!RCc0*i10MU1aA!0Jl1(B (Emacs tutorial) ,TM0BYh1c9"3P09Ui1(B. - -,Tb4B07Qh1Gd;$S0JQh1'"M'0MU1aA!0Jl1(B (Emacs) ,T(Pc0*i10$Yh10!Q1:0;Xh1A(B CONTROL (,T:R'$0CQi1'MR(`0;g190;Xh1A07Uh10AU1(B -0,TJQ1-0EQ1!I03l1(B CTRL ,TK0CW1M(B CTL) ,TK0CW1M(B 0,T;Xh1A(B META (,T:R'$0CQi1'MR(`0;g190;Xh1A07Uh10AU10JQ1-0EQ1!I03l1(B EDIT ,TK0CW1M(B -ALT). ,Ta7907Uh1(Pc0*i1$S`05g1Ac9!RCM08T1:RB(B, ,T`CR(Pc0*i105Q1G0Bh1M04Q1'05h1Md;09Ui1(B: - - C- ,TKARB06V1'c0Ki1!40;Xh1A(B CONTROL ,TaEP0;Xh1A0MQ1!IC(B ,T>0Ci1MA0!Q19(B. - 0,T4Q1'09Qi19(B C-f ,T(PKARB06V1'c0Ki1!40;Xh1A(B CONTROL ,TaEP0;Xh1A(B f ,T>0Ci1MA0!Q19(B. - M- ,TKARB06V1'c0Ki1!40;Xh1A(B META ,TK0CW1M(B EDIT ,TK0CW1M(B ALT ,TaEP0;Xh1A0MQ1!IC(B - ,T>0Ci1MA0!Q19(B. ,Tc9!C03U107Uh1d0Ah10AU10;Xh1A(B META, EDIT ,TK0CW1M(B ALT ,Tc0Ki1!40;Xh1A(B - ESC ,Ta0Ei1G;0Eh1MB(B, ,Ta0Ei1G!40;Xh1A(B . ,T`CRc0*i10JQ1-0EQ1!I03l1(B ,Ta790;Xh1A(B ESC. - -,TKARB`K05X1(B: ,Tc9!C03U107Uh105i1M'!RC`0ET1!c0*i10MU1aA!0Jl1(B, ,Tc0Ki1!40;Xh1A(B C-x C-c. (,TJM'05Q1G0MQ1!IC(B.) -0,T5Q1G0MQ1!IC(B ">>" 0,T7Uh1;CR!/M0BYh17R'"M:0+i1RB0AW1M`0;g19!RCa9P9Sc0Ki107h1R9EM'c0*i1$S0JQh1'(B. 0,T5Q1GM0Bh1R'`0*h19(B: -<> ->> ,T!40;Xh1A(B C-v (0,T4Y1K09i1R(M06Q14d;(B) ,T`0>Wh1M07Uh1(P`$0EWh1M9d;0BQ1'K09i1R(M06Q14d;(B. - (,TEM'7S04Y1b4B!RC!40;Xh1A(B CONTROL ,TaEP0;Xh1A0MQ1!IC(B v ,T>0Ci1MA0!Q19(B). - ,T(R!09Ui1d;(B, 0,T7h1R9$GC(PEM'c0*i1$S0JQh1'09Ui104Y1`0AWh1M07h1R90Mh1R9K09i1R(M09Ui1(:a0Ei1G(B. - -0,T7h1R9(P0JQ1'`!5`0Kg19d04i10Gh1RJM':CC07Q14"M'K09i1R(M07Uh1a0Ei1G(P0BQ1'$';CR!/c0Ki1`0Kg19:9K09i1R(M06Q14d;(B; 0,T9Uh1(B -,T`0;g19!RC0*h1GBc0Ki107h1R9JRARC60Mh1R9K09i1R(Md04i1M0Bh1R'05h1M`09Wh1M'(B. - -0,TJTh1'aC!07Uh107h1R9(S`0;g1905i1M'0CYi10$W1M!RC`$0EWh1M95SaK09h1'd;ARc90"i1M$GRA(B. ,T"3P09Ui107h1R97CR:(B -0,TGT108U1!RC`$0EWh1M9d;0BQ1'K09i1R(M06Q14d;a0Ei1G04i1GB0;Xh1A(B C-v. ,Tc9!RC07Uh1(P`$0EWh1M9!0EQ1:d;K09Vh1'K09i1R(M(B, ,T!40;Xh1A(B -M-v (,T!40;Xh1A(B META ,TaEP0;Xh1A(B v, ,TK0CW1M!40;Xh1A(B v 0,T6i1R07h1R9d0Ah10AU10;Xh1A(B META, EDIT, ,TK0CW1M(B ALT). - ->> ,TEM'!40;Xh1A(B M-v ,TaEP!40;Xh1A(B C-v 0,T4Y1!RC7S'R90JQ1!JM'JRA$0CQi1'(B. - - -* ,TJ0CX1;(B ------ - -,T$S0JQh1'05h1Md;09Ui1c0*i1`0AWh1M05i1M'!RC04Y1K09i1R(M05h1R'f(B: - - C-v ,T`$0EWh1M9d;0BQ1'K09i1R(M06Q14d;K09Vh1'K09i1R(M(B - M-v ,T`$0EWh1M9!0EQ1:d;K09Vh1'K09i1R(M(B - C-l ,TE:K09i1R(M(B ,Ta0Ei1GaJ4'0Ci1MA07Qi1'0Bi1RB5SaK09h1'"M'0"i1M$GRA07Uh10AU1(B - ,T`$M0Cl1`+M0Cl1(B (cursor) ,T;CR!/M0BYh1d;aJ4'd0Gi1!ER'(M(B. - (,T$S0JQh1'09Ui10$W1M(B CONTROL-L, ,Td0Ah1c0*h1(B CONTROL-1.) - ->> 0,TJQ1'`!55SaK09h1'"M'`$M0Cl1`+M0Cl1(B, ,TaEP0JQ1'`!504Y10Gh1R0AU10"i1M$GRAMPdCM0BYh1c!0Ei1`$M0Cl1`+M0Cl1(B. - ,Ta0Ei1G!40;Xh1A(B C-l. - 0,TJQ1'`!504Y15SaK09h1'"M'`$M0Cl1`+M0Cl10MU1!$0CQi1'(B ,T(P`0Kg190Gh1R0AU10"i1M$GRA`04T1A;CR!/M0BYh1c!0Ei1f(B 0,T!Q1:`$M0Cl1`+M0Cl1(B. - - -* ,T!RC$G:0$X1A`$M0Cl1`+M0Cl1`0:Wi1M'05i19(B ------------------------- - -,T!RC`$0EWh1M9K09i1R(Md;AR09Qi19`0;g190JTh1'(S`0;g19(B ,Ta05h107h1R9(P7SM0Bh1R'dC06i1R07h1R905i1M'!RC(P`$0EWh1M9d;0BQ1'(B -,T5SaK09h1'07Uh105i1M'!RC@RBc90"i1M$GRA07Uh1;CR!/M0BYh1:9K09i1R(M(B? - -0,TAU1KERB0GT108U107Uh1JRARC6(P7Sd04i1(B. 0,TGT108U107Uh10>Wi1907Uh10JX140$W1M!RCc0*i1$S0JQh1'(B C-p, C-b, C-f, ,TaEP(B C-n. -,Ta05h1EP$S0JQh1'(P`$0EWh1M9`$M0Cl1`+M0Cl1d;K09Vh1':CC07Q14K0CW1MK09Vh1'$M0EQ1A09l1c907T1H7R'c407T1H7R'K09Vh1':9K09i1R(M(B. -0,T5h1Md;09Ui1`0;g195RCR'aJ4'$S0JQh1'07Qi1'0JUh1(B ,TaEP07T1H7R'07Uh1`$M0Cl1`+M0Cl1`$0EWh1M9d;(B: - - ,T:CC07Q140!h1M9K09i1R(B, C-p - : - : - 0,TBi1M9!0EQ1:(B, C-b .... ,T5SaK09h1'`$M0Cl1`+M0Cl10;Q1(0(X10:Q19(B .... 0,T"i1R'K09i1R(B, C-f - : - : - ,T:CC07Q1406Q14d;(B, C-n - ->> ,T`$0EWh1M9`$M0Cl1`+M0Cl1d;07Uh10!Vh1'!ER'"M'0Wh1Mc0Ki10> ,TEM'c0*i1$S0JQh1'(B C-n 0,T4Y1`0>Wh1M07Uh1(P`$0EWh1M9`$M0Cl1`+M0Cl1E'AR0BQ1':CC07Q1409Ui1(B. - ->> ,TEM'`$0EWh1M9`0"i1Rd;c9:CC07Q14b4Bc0*i1$S0JQh1'(B C-f ,TaEP`$0EWh1M90"Vi190"i1R':9b4Bc0*i1$S0JQh1'(B C-p. - 0,TJQ1'`!504Y10Gh1R`0!T14MPdC0"Vi1906i1Rc0*i1$S0JQh1'(B C-p ,T`0AWh1M5SaK09h1'`$M0Cl1`+M0Cl1;CR!/M0BYh107Uh15C'!ER'(B - ,T"M':CC07Q14(B. - -,Ta05h1EP:CC07Q140JTi190JX1404i1GB0MQ1!"CP(B Newline, 0,T+Vh1'c0*i1aJ4'"M:`"5CPK0Gh1R':CC07Q14(B. 0,T7Uh107i1RB0JX14"M'(B -,Td?0El10!g1(P0AU10MQ1!"CP(B Newline ,T`0*h190!Q19(B (,Ta05h1JSK0CQ1:0MU1aA!0Jl1a0Ei1Gd0Ah1(S`0;g19(B). - ->> ,TEM'c0*i1$S0JQh1'(B C-b 0,T7Uh15SaK09h1'`0CTh1A05i19"M':CC07Q1404Y1(B. ,T`$M0Cl1`+M0Cl1(P`$0EWh1M9d;0BQ1'5SaK09h1'(B - 0,T7i1RB0JX14"M':CC07Q140!h1M9K09i1R(B. 0,T9Uh1`0;g19`>CRP0Gh1R`$M0Cl1`+M0Cl1d04i1`$0EWh1M90"i1RA0MQ1!"CP(B Newline ,Td;(B. - -,T$S0JQh1'(B C-f ,TJRARC6`$0EWh1M90"i1RA0MQ1!"CP(B Newline ,Td04i1`0*h19`04U1BG0!Q1:$S0JQh1'(B C-b. - ->> ,TEM'c0*i1$S0JQh1'(B C-b 0,T4Y10MU1!0JQ1!K09h1MB(B, 0,T7h1R9(PJRARC6`0"i1Rc(!RC`$0EWh1M9`$M0Cl1`+M0Cl1d04i104U10"Vi19(B. - ,Ta0Ei1GEM'c0*i1$S0JQh1'(B C-f ,T`0>Wh1M07Uh1(P`$0EWh1M9d;0BQ1'5SaK09h1'07i1RB0JX14"M':CC07Q14(B. - ,Ta0Ei1GEM'c0*i1$S0JQh1'(B C-f 0,TMU1!0JQ1!$0CQi1'`0>Wh1M07Uh1(P`$0EWh1M9d;0BQ1':CC07Q1406Q14d;(B. - -,T`0AWh1M07h1R9`$0EWh1M90> ,TEM'`$0EWh1M9`$M0Cl1`+M0Cl1E'MM!d;9M!K09i1R(Mb4Bc0*i1$S0JQh1'(B C-n, ,Ta0Ei1G04Y10Gh1R0AU1MPdC`0!T140"Vi19(B. - -0,T6i1R`$0EWh1M907U1EP05Q1G0MQ1!IC09Qi190*i1Rd;(B, 0,T7h1R90!g1JRARC6(P`$0EWh1M9d04i107U1EP$S(B. ,T$S0JQh1'(B M-f (META-f) -,Tc0*i1c9!RC`$0EWh1M9d;0BQ1'$S07Uh1M0BYh106Q14d;(B ,TaEP(B M-b ,Tc0*i1c9!RC`$0EWh1M9d;0BQ1'$S07Uh1M0BYh10!h1M9K09i1R(B. - ->> ,TEM'c0*i1$S0JQh1'(B M-f ,TaEP(B M-b 0,T4Y10JQ1!JM'JRA$0CQi1'(B. - -,T`0AWh1M07h1R9M0BYh107Uh15SaK09h1'!ER'"M'$S(B, ,T$S0JQh1'(B M-f ,T(Pc0*i1`$0EWh1M9d;0BQ1'5SaK09h1'07i1RB"M'$S09Qi19(B. ,T`0AWh1M(B -0,T7h1R9M0BYh107Uh15SaK09h1'`0Gi19GCC$CPK0Gh1R'$S(B, ,T$S0JQh1'(B M-f ,T(Pc0*i1`$0EWh1M9d;0BQ1'5SaK09h1'07i1RB"M'$S(B -0,T7Uh1M0BYh106Q14d;(B. ,T$S0JQh1'(B M-b ,T7SK09i1R07Uh17S9M'`04U1BG0!Q19(B ,Ta05h1`$0EWh1M9d;c907T1H7R'5C'0!Q190"i1RA(B. - -,TKARB`K05X1(B: ,T`09Wh1M'(R!@RIRd7Bd0Ah10AU1!RCc0*i10MQ1!"CP`0Gi19GCC$(B (whitespace) ,Tc9!RCaJ4'(B - ,T"M:`"5"M'$S(B, ,T)P09Qi19`0AWh1MM0BYh1c9bKA4@RIRd7B(B (ThaiText mode) 0,TMU1aA!0Jl1(B - ,T(P7S!RC!S0!Q1:"M:`"5"M'$Sb4BMR0HQ1Bb;Ca!CA05Q14$S(B. ,T$S0JQh1'(B M-f ,TaEP(B M-b - 0,T(V1'(P7S'R9d04i1(B, ,Ta05h1(Pc0Ki1> ,TEM'c0*i1$S0JQh1'(B M-f ,TaEP(B M-b 0,T4Y1(B, ,Tb4B;P;90!Q1:$S0JQh1'(B C-f ,TaEP(B C-b, 0,T7h1R9(P0JQ1'`!5(B - ,T`0Kg19!RC7S'R9"M'$S0JQh1'(B M-f ,TaEP(B M-b ,Tc95SaK09h1'05h1R'f(B 0,T7Qi1'c9$SaEPCPK0Gh1R'$S(B. - -0,T7h1R9JRARC60JQ1'`!5d04i10Gh1R$S0JQh1'(B C-f ,TaEP(B C-b 0,T9Qi197SK09i1R07Uh1c90EQ1!I3P`04U1BG0!Q1:$S0JQh1'(B M-f -,TaEP(B M-b, ,Ta05h1M0BYh1:9`!301l107Uh105h1R'0!Q19(B. 0,TJh1G9AR!(B 0,T;Xh1A(B META ,T(P06Y1!!SK94c0Ki1c0*i10!Q1:!RC7S'R9c9(B -,TCP04Q1:07Uh1`0!Uh1BG0"i1M'0!Q1:K09h1GB07Uh1!SK940"Vi197R'@RIR(B (,T`0*h19(B ,T$S(B, ,T;CPbB$(B, 0,TBh1MK09i1R(B, ,T`0;g1905i19(B), -,T"3P07Uh10;Xh1A(B CONTROL 0,T9Qi190AQ1!(P06Y1!!SK94c0Ki1c0*i10!Q1:!RC7S'R9c9CP04Q1:07Uh1`0!Uh1BG0"i1M'0!Q1:K09h1GB0Bh1MB(B -0,TMT1JCP07Uh17S!RCa0!i1d"d04i1(B (,T`0*h19(B 0,T5Q1G0MQ1!IC(B, ,T:CC07Q14(B, ,T`0;g1905i19(B). - -,T!RC7S'R9c97S9M'`04U1BG0!Q19JSK0CQ1::CC07Q140!Q1:;CPbB$(B: ,T$S0JQh1'(B C-a ,TaEP(B C-e ,Tc0*i1`$0EWh1M9(B -,Td;0BQ1'5SaK09h1'`0CTh1A05i19aEP07i1RB"M':CC07Q14(B, ,T"3P`04U1BG0!Q19$S0JQh1'(B M-a ,TaEP(B M-e ,Tc0*i1`$0EWh1M9(B -,Td;0BQ1'5SaK09h1'`0CTh1A05i19aEP07i1RB"M';CPbB$(B. - -,TKARB`K05X1(B: ,T`09Wh1M'(R!@RIRd7Bd0Ah109T1BAc0*i10MQ1!"CPA0KQ1>@R$(B (period) ,Tc9!RCaJ4'0(X140JTi190JX14"M'(B - ,T;CPbB$(B, ,T7Sc0Ki1d0Ah1JRARC6!SK94"M:`"5"M';CPbB$c0Ki106Y1!05i1M'd04i1(B. 0,T4Q1'09Qi19`0AWh1M(B - ,TM0BYh1c9bKA4@RIRd7B(B (ThaiText mode), ,T$S0JQh1'(B M-a ,TaEP(B M-e ,T(P`$0EWh1M9(B - ,T`$M0Cl1`+M0Cl1d;0BQ1'5SaK09h1'`0CTh1A05i19"M'0Bh1MK09i1R(B ,TaEP5SaK09h1'07i1RB0JX14"M'0Bh1MK09i1R(B - ,T5RAES04Q1:(B. ,TB!`0Gi19!C03U107Uh10AU1!RCc0*i10MQ1!"CPA0KQ1>@R$(B. - ->> ,TEM'c0*i1$S0JQh1'(B C-a ,TaEP(B C-e 0,T4Y10JQ1!JM'JRA$0CQi1'(B. - ,TEM'c0*i1$S0JQh1'(B M-a ,TaEP(B M-e 0,T4Y10JQ1!JM'JRA$0CQi1'(B. - -0,TJQ1'`!504Y10Gh1R!RCc0*i1$S0JQh1'(B C-a 0,T+i1Sf(B 0,T!Q19(Pd0Ah1`0!T14> ,TEM'c0*i1$S0JQh1'`K0Eh1R09Ui10JQ1!CPBP`0>Wh1M`0;g19!RC0=V1!0KQ14(B. - ,T$S0JQh1'`K0Eh1R09Ui1`0;g19$S0JQh1'07Uh1c0*i10!Q190:h1MBAR!(B. - -0,TAU10MU1!JM'$S0JQh1'07Uh1JS0$Q1-c9!RC`$0EWh1M95SaK09h1'0$W1M(B ,T$S0JQh1'(B M-< (META 0,T9i1MB!0Gh1R(B), ,Tc0*i1c9!RC(B -,T`$0EWh1M9d;0BQ1'5SaK09h1'`0CTh1A05i19"M'0"i1M$GRA(B, ,TaEP(B M-> (META ,TAR!!0Gh1R(B), ,Tc0*i1c9!RC`$0EWh1M9(B -,Td;0BQ1'5SaK09h1'07i1RB0JX14"M'0"i1M$GRA(B. - -,Tc9`$0CWh1M';ERB7R'(B (terminal) 0,TJh1G9cK0-h1(B, 0,TMQ1!"CP(B "<" ,T(PM0BYh1`K09W1M0MQ1!"CP0(X1E@R$(B -(comma), ,T)P09Qi1907h1R905i1M'c0*i10;Xh1A0*T1?05l1(B (shift) ,Tc9!RC0;i1M90MQ1!"CP09Qi19(B. ,TJSK0CQ1:`$0CWh1M'(B -,T;ERB7R'a::09Ui1(B, 0,T7h1R90(V1'05i1M'c0*i10;Xh1A0*T1?05l1c9!RC0;i1M9$S0JQh1'(B M-< ,Tc97S9M'`04U1BG0!Q19(B, 0,T6i1Rd0Ah1(B -,T$S09V1'06V1'0;Xh1A0*T1?05l1(B, 0,T!g1KARB$GRA0Gh1R07h1R9!S0EQ1'0;i1M9$S0JQh1'(B M-comma. - ->> ,TEM'c0*i1$S0JQh1'(B M-< 0,T4Y1(B, ,T`0>Wh1M`$0EWh1M9d;0BQ1'5SaK09h1'`0CTh1A05i19"M'0$Yh10AW1M!RCc0*i109Ui1(B. - ,Ta0Ei1Gc0*i1$S0JQh1'(B C-v 0,T+i1S0!Q19KERBf(B ,T$0CQi1'`0>Wh1M07Uh1(P`$0EWh1M9!0EQ1:AR0BQ1'5SaK09h1'`04T1A09Ui1(B. - ->> ,TEM'c0*i1$S0JQh1'(B M-> 0,T4Y1(B, ,T`0>Wh1M`$0EWh1M9d;0BQ1'5SaK09h1'07i1RB0JX14"M'0$Yh10AW1M!RCc0*i109Ui1(B. - ,Ta0Ei1Gc0*i1$S0JQh1'(B M-v 0,T+i1S0!Q19KERBf(B ,T$0CQi1'`0>Wh1M07Uh1(P`$0EWh1M9!0EQ1:AR0BQ1'5SaK09h1'`04T1A09Ui1(B. - -0,T7h1R9JRARC6`$0EWh1M9`$M0Cl1`+M0Cl1d04i104i1GB0;Xh1A0EY1!HC(B (arrow key), 0,T6i1R`$0CWh1M';ERB7R'"M'07h1R9(B -0,TAU10;Xh1A`K0Eh1R09Ui1M0BYh1(B. ,T`CRa9P9Sc0Ki10=V1!0KQ14c0*i1$S0JQh1'(B C-b, C-f, C-n ,TaEP(B C-p, 0,T4i1GB`K05X1CRP0Gh1R07h1R9d0Ah105i1M'`$0EWh1M90Bi1RB0AW1MMM!(R!5SaK09h1'0AW1M0JQ1A0CRP0Gh1RJRARC6c0*i1d04i10!Q1:`$0CWh1M';ERB7R'07X1!*09T14(B. 0,T5Q1G`E"MR0Cl1(B -0,T!T1G`A905l107Uh1!0Eh1RG06V1'09Ui1`0CU1B!0Gh1R(B ",TMR0Cl10!T1G`A905l1`05T1AK09i1R(B (prefix argument)", ,T`>CRP0Gh1R07h1R9(B -0,T5i1M'0;i1M905Q1G`E"0!h1M907Uh1(P0;i1M9$S0JQh1'(B. - -0,T5Q1GM0Bh1R'`0*h19(B, ,T$S0JQh1'(B C-u 8 C-f ,T(P`$0EWh1M9d;0"i1R'K09i1Ra;405Q1G0MQ1!IC(B. - ->> ,TEM'c0*i1$S0JQh1'(B C-n ,TK0CW1M(B C-p ,T;CP!M:0!Q1:05Q1G`E"MR0Cl10!T1G`A905l1(B, ,T`0>Wh1M07Uh1(P`$0EWh1M9`$M0Cl1`+M0Cl1(B - ,T`0"i1RARc!0Ei1:CC07Q1409Ui1b4Bc0*i1`0>U1B'$S0JQh1'`04U1BG(B. - -,T$S0JQh1'0Jh1G9cK0-h1c0*i105Q1G`E"MR0Cl10!T1G`A905l1`K0Eh1R09Ui1JSK0CQ1:!RC;CPAGE> ,TEM'c0*i1$S0JQh1'(B C-u 8 C-v 0,T4Y1(B. - -,T$S0JQh1'09Ui1(P`$0EWh1M90Ai1G9K09i1R(M0"Vi19d;a;4:CC07Q14(B. 0,T6i1R07h1R905i1M'!RC(P`$0EWh1M90Ai1G9!0EQ1:AR0MU1!(B, 0,T7h1R9(B -0,T!g17Sd04i1b4B!RC!S0!Q1:05Q1G`E"MR0Cl10!T1G`A905l1c0Ki10!Q1:$S0JQh1'(B M-v. - -0,T6i1R07h1R9!S0EQ1'c0*i1`M!0+l10GT19b40Gl1(B (X Window) ,TM0BYh1(B, ,T(P0AU1a<'`$0EWh1M90Ai1G9(B (scroll bar) 0,T7Uh1(B -,T`0;g190>Wi1907Uh10JUh1`K0EUh1BA0> ,TEM'!40;Xh1A!ER'07Uh10Jh1G9:90JX14"M'0>Wi1907Uh107Uh1`09i19(B (highlight) ,T@RBc9a<'`$0EWh1M90Ai1G9(B. - 0,T"i1M$GRA(P06Y1!`$0EWh1M90Ai1G9d;0BQ1'5SaK09h1'07Uh107Uh107h1R9d04i1$0ET1!(B. - ->> ,TEM'`$0EWh1M9`AR0Jl10"Vi19E'04Y1(B, ,T"3P07Uh10BQ1'!40;Xh1A!ER'M0BYh1(B. 0,T7h1R9(P>:0Gh1R0"i1M$GRA(P`$0EWh1M907Uh10"Vi19(B - ,TE'5RA07Uh107h1R9`$0EWh1M9`AR0Jl1d;(B. - - -* ,T!C03U107Uh10MU1aA!0Jl1K0BX14*P0'Q1!(B (hang up) ----------------------------- - -0,T6i1R0MU1aA!0Jl1K0BX14aEPd0Ah15M:J9M'$S0JQh1'c4f(B, 0,T7h1R9JRARC6B!`0ET1!$S0JQh1'd04i1M0Bh1R';EM40@Q1Bb4Bc0*i1(B -,T$S0JQh1'(B C-g. 0,T7h1R9JRARC6c0*i1$S0JQh1'(B C-g ,Tc9!RCB!`0ET1!$S0JQh1'07Uh1!S0EQ1'7S'R9M0BYh1d04i1(B. - -0,T7h1R9JRARC6c0*i1$S0JQh1'(B C-g ,T`0>Wh1MB!`0ET1!05Q1G`E"MR0Cl10!T1G`A905l1K0CW1M$S0JQh1'07Uh107h1R9!S0EQ1'0;i1M9M0BYh1d04i1(B. - ->> ,TEM'0;i1M9$S0JQh1'(B C-u 100 ,T`0>Wh1M07Uh1(Pc0Ki10AU105Q1G`E"MR0Cl10!T1G`A905l1`0;g19(B 100, ,Ta0Ei1G0;i1M9$S0JQh1'(B C-g. - 0,T;i1M9$S0JQh1'(B C-f. ,TU1B'K09Vh1'05Q1G0MQ1!IC(B, ,T`>CRP0Gh1R07h1R9d04i1(B - ,TB!`0ET1!05Q1G`E"MR0Cl10!T1G`A905l1d;a0Ei1G04i1GB$S0JQh1'(B C-g. - -0,T6i1R07h1R90;i1M9$S0JQh1'(B ,Tb4Bd0Ah1d04i105Qi1'c((B, 0,T7h1R90!g1JRARC6(PB!`0ET1!$S0JQh1'09Qi19d04i104i1GB$S0JQh1'(B C-g. - - -* ,T$S0JQh1'07Uh106Y1!0;T147R'(B (disable) ------------------------- - -,T$S0JQh1':R'$S0JQh1'06Y1!0;T147R'd0Gi1(B ,T`0>Wh1M07Uh1(P0;i1M'0!Q19d0Ah1c0Ki10Wh1M5M:0BW190BQ19$GRA05i1M'!RC(B. -,Tb4B;C!05T1a0Ei1G(B, 0,T6i1R07h1R9d0Ah105i1M'!RC(P;CPAGE> ,TEM'c0*i1$S0JQh1'(B C-x C-l (0,T+Vh1'`0;g19$S0JQh1'07Uh106Y1!0;T147R'd0Gi1(B), ,Ta0Ei1G0;i1M9(B "n" ,T`0>Wh1M`0;g19!RC5M:(B - ,T$S6RA(B. - - -* 0,TGT19b40Gl1(B (window) ----------------- - -0,TMU1aA!0Jl1JRARC60AU1d04i1KERB0GT19b40Gl1(B, ,Ta05h1EP0GT19b40Gl10!g1(PaJ4'U1B'0GT19b40Gl1`04U1BG(B. 0,T+Vh1'JRARC67Sd04i104Q1'09Ui1(B: - - C-x 1 ,TK09Vh1'0GT19b40Gl1(B (0,T$W1M!RC0;T140GT19b40Gl10MWh19f(B 0,T7Qi1'KA4(B) - -0,T9Qh190$W1M`0>U1B'0;i1M9$S0JQh1'(B C-x ,Ta0Ei1G5RA04i1GB`E"(B 1. ,T$S0JQh1'(B C-x 1 ,T(P"BRB0GT19b40Gl107Uh10AU1(B -,T`$M0Cl1`+M0Cl1M0BYh1(B ,Tc0Ki1`05g1AK09i1R(M(B. 0,T+Vh1'(P`0;g19!RC0;T140GT19b40Gl10MWh19f(B 0,T7Qi1'KA4(B. - ->> ,T`$0EWh1M9`$M0Cl1`+M0Cl1AR0BQ1':CC07Q1409Ui1(B ,Ta0Ei1G0;i1M9$S0JQh1'(B C-u 0 C-l. ->> 0,T;i1M9$S0JQh1'(B C-h k C-f. - ,T(P`0Kg190Gh1R0GT19b40Gl109Ui10AU1"9R40Bh1ME'(B ,T"3P07Uh10AU10GT19b40Gl1cK0Ah1`0!T140"Vi19aJ4'> 0,T;i1M9$S0JQh1'(B C-x 1 ,Ta0Ei1G(P>:0Gh1R0GT19b40Gl107Uh1aJ4'CRB!RC"M'`M!JRCKRBd;(B. - -,T$S0JQh1'09Ui105h1R'(R!$S0JQh1'07Uh1d04i1!0Eh1RGAR5C'07Uh10Gh1R$S0JQh1'09Ui1;CP!M:04i1GBJM'05Q1G0MQ1!IC(B. ,T$S0JQh1'09Ui1`0CTh1A05i19(B -0,T4i1GB0MQ1!"CP(B C-x. 0,TAU10*X14"M'$S0JQh1'07Uh10"Vi1905i1904i1GB0MQ1!"CP(B C-x; 0,TJh1G9cK0-h1(P`0!Uh1BG0"i1M'0!Q1:!RC(B -0,T(Q14!RC0!Q1:0GT19b40Gl1(B, ,Ta0?i1A0"i1M0AY1E(B, 0,T:Q1?`?M0Cl1(B, ,TaEP0MWh19f(B ,Tc97S9M'`04U1BG0!Q19(B. ,T$S0JQh1'`K0Eh1R09Ui1(P(B -,T;CP!M:04i1GBJM'(B, ,TJRA(B, ,TK0CW1M0JUh105Q1G0MQ1!IC(B. - - -* ,T!RCa7C!(B (inserting) ,TaEP!RCE:(B (deleting) ----------------------------------------------- - -0,T6i1R07h1R905i1M'!RC07Uh1(Pa7C!0"i1M$GRA(B, 0,T!g1JRARC67Sd04i1b4B!RC0;i1M90"i1M$GRA09Qi19`0"i1Rd;`07h1R09Qi19(B. -0,T5Q1G0MQ1!IC07Uh107h1R9`0Kg19(B, ,T`0*h19(B A, 7, *, ,T`0;g1905i19(B, 0,T5h1R'0!g106W1M0Gh1R`0;g190"i1M$GRAaEP06Y1!a7C!`0"i1Rd;(B -0,T7Q1907U107Uh10;i1M9(B. ,T!40;Xh1A(B ,Tc9!RC07Uh1(Pa7C!0MQ1!"CP(B Newline. - -0,T7h1R9JRARC6E:05Q1G0MQ1!IC05Q1G0JX1407i1RB07Uh107h1R9d04i10;i1M9`0"i1Rd;d04i1b4B!RC!40;Xh1A(B . 0,T;Xh1A(B - ,T`0;g190;Xh1Af(B ,TK09Vh1':9a0;i190>T1A0>l1(B, 0,T+Vh1':R'$0CQi1'MR(`0;g190;Xh1A07Uh1!S0!Q1:04i1GB(B "Del". ,Tc9:R'(B -,T!C03U1(B, 0,T;Xh1A(B "Backspace" 0,T!g17SK09i1R07Uh1`0*h19`04U1BG0!Q1:0;Xh1A(B , ,Ta05h10!g1d0Ah1`JAMd;(B. - -,Tb4B07Qh1Gd;a0Ei1G(B, 0,T;Xh1A(B ,T(Pc0*i1JSK0CQ1:E:05Q1G0MQ1!IC07Uh1M0BYh1K09i1R5SaK09h1'"M'`$M0Cl1`+M0Cl10;Q1(0(X10:Q19(B. - ->> ,TEM'7S04Y1(B--0,T;i1M905Q1G0MQ1!ICc4f(B 0,TJQ1!JM'JRA05Q1G(B, ,Ta0Ei1GE:05Q1G0MQ1!IC09Qi19MM!b4B!40;Xh1A(B - 0,TJQ1!JM'JRA$0CQi1'(B. ,Td0Ah105i1M'0!Q1'GE0Gh1R(P7Sc0Ki10"i1M$GRAc9a0?i1A0"i1M0AY1E09Ui1`;0EUh1B9d;(B; - 0,T7h1R9(Pd0Ah17Sc0Ki10"i1M$GRAc905i19)0:Q1:"M'0$Yh10AW1M!RCc0*i1`;0EUh1B9a;E'(B. 0,T9Uh1`0;g19`0>U1B')0:Q1:JS`9R`07h1R09Qi19(B. - -,T`0AWh1M0"i1M$GRAc9:CC07Q14BRG`0!T19!0Gh1RK09Vh1':CC07Q14"M'K09i1R(M(B, 0,T"i1M$GRAc9:CC07Q1409Qi19(P05h1M`09Wh1M'(B -,Td;0BQ1':CC07Q1406Q14d;"M'K09i1R(M(B. 0,TMQ1!"CP(B backslash ("\") 0,T7Uh1;ERB"M'"M:"GR0AW1M(P0:h1'0*Ui1(B -0,TGh1R0"i1M$GRA"M':CC07Q1409Qi1905h1M`09Wh1M'd;0BQ1':CC07Q1406Q14d;(B. - ->> 0,T;i1M90"i1M$GRA(9!CP07Qh1'06V1'"M:"GR(B, ,Ta0Ei1G0;i1M905h1Md;0MU1!(B. 0,T7h1R9(P`0Kg19!RCaJ4'> ,Tc0*i10;Xh1A(B ,T`0>Wh1ME:0"i1M$GRAMM!(9!CP07Qh1'0"i1M$GRA09Qi19>M04U10!Q1:$GRA!0Gi1R'"M'K09i1R(M(B. - ,T:CC07Q1407Uh105h1M`09Wh1M'0!Q190!g1(PKRBd;(B. - -0,T7h1R9JRARC6E:0MQ1!"CP(B Newline ,TMM!d04i1`0*h19`04U1BG0!Q1:05Q1G0MQ1!IC0MWh19f(B. ,T!RCE:0MQ1!"CP(B Newline -,TCPK0Gh1R'JM':CC07Q14(P`0;g19!RCCGAJM':CC07Q1409Qi19`0"i1R`0;g19:CC07Q14`04U1BG(B. 0,T6i1R> ,T`$0EWh1M9`$M0Cl1`+M0Cl1d;0BQ1'5SaK09h1'`0CTh1A05i19"M':CC07Q14(B, ,Ta0Ei1G!40;Xh1A(B . - ,T:CC07Q140;Q1(0(X10:Q19(P06Y1!`0*Wh1MA`0"i1R0!Q1::CC07Q140!h1M9K09i1R(B. - ->> ,T!40;Xh1A(B ,T`0>Wh1M07Uh1(Pa7C!0MQ1!"CP(B Newline ,T`0"i1Rd;cK0Ah1(B. - -,T$GC(Sd0Gi10Gh1R$S0JQh1'0Jh1G9cK0-h1"M'0MU1aA!0Jl1(PJRARC67Sc0Ki1;CPAGE> ,TEM'7S04Y1`04Uk1BG09Ui1(B--0,T;i1M9$S0JQh1'(B C-u 8 * ,T`0>Wh1M07Uh1(P0;i1M9JRB0MQ1!"CP(B ********. - -0,T7h1R9d04i1`0CU1B90CYi106V1'0GT108U1!RC`0:Wi1M'05i19c9!RC0;i1M9:R'0JTh1':R'M0Bh1R'c90MU1aA!0Jl1aEP!RCa0!i1d"(B -0,T"i1M0ER405h1R'f(B. 0,T7h1R9JRARC607Uh1(PE:07U1EP$SK0CW1M07U1EP:CC07Q14c97S9M'`04U1BG0!Q19(B. 0,T5h1Md;09Ui1`0;g19(B -,T!RCJ0CX1;!RCE:04i1GB0GT108U105h1R'f(B: - - ,TE:05Q1G0MQ1!IC07Uh1M0BYh1K09i1R5SaK09h1'`$M0Cl1`+M0Cl1(B - C-d ,TE:05Q1G0MQ1!IC07Uh1M0BYh106Q14d;K0EQ1'5SaK09h1'`$M0Cl1`+M0Cl1(B - - M- 0,T&h1R$S07Uh1M0BYh1K09i1R5SaK09h1'`$M0Cl1`+M0Cl1(B - M-d 0,T&h1R$S07Uh1M0BYh106Q14d;K0EQ1'5SaK09h1'`$M0Cl1`+M0Cl1(B - - C-k 0,T&h1R05Q1G0MQ1!IC05Qi1'a05h15SaK09h1'`$M0Cl1`+M0Cl1d;(906V1'07i1RB:CC07Q14(B - M-k 0,T&h1R05Q1G0MQ1!IC05Qi1'a05h15SaK09h1'`$M0Cl1`+M0Cl1d;(906V1'07i1RB"M';CPbB$(B - -,T$GC(P0JQ1'`!5d04i10Gh1R$S0JQh1'(B ,TaEP(B C-d, 0,T!Q1:(B M- ,TaEP(B M-d ,T`0;g19$S0JQh1'(B -,Tc97S9M'`04U1BG0!Q1907Uh1`0CTh1A(R!$S0JQh1'(B C-f ,TaEP(B M-f (,Ta0Ai10Gh1R0;Xh1A(B ,T(Pd0Ah1c0*h105Q1G0MQ1!IC(B -0,T!g15RA(B, ,Ta05h1d0Ah1d04i1`0;g19`0CWh1M'JS0$Q1-(B). ,T$S0JQh1'(B C-k ,TaEP(B M-k 0,T!g1`0*h19`04U1BG0!Q1:(B C-e ,TaEP(B M-e 0,T7Uh1(B -,T7S'R9c90EQ1!I3P`04U1BG0!Q19a05h1$9EPCP04Q1:(B, 0,T$W1MCP04Q1:07Uh1`0;g19:CC07Q140!Q1:;CPbB$(B. - -,T`0AWh1M07h1R9E:05Q1G0MQ1!ICd;AR!!0Gh1RK09Vh1'05Q1Gc9$0CQi1'K09Vh1'f(B, 0,TMU1aA!0Jl1(P0:Q1907V1!0"i1M$GRA07Uh106Y1!E:d;d0Gi1(B -,T`0>Wh1M0Gh1R07h1R9(PJRARC6`0CU1B!!0EQ1:ARd04i10MU1!(B. ,T!RC`0CU1B!!0EQ1:AR"M'0"i1M$GRA07Uh106Y1!0&h1Rd;09Qi19`0CU1B!0Gh1R(B -",T!RC`0CU1B!0$W19(B (yanking)". 0,T7h1R9JRARC6`0CU1B!0$W190"i1M$GRA07Uh106Y1!0&h1Rd;!0EQ1:ARd04i1b4Bc0Ki1(B -,T;CR!/c907Uh107Uh106Y1!0&h1Rd;(B, ,TK0CW1M;CR!/c907Uh1c4f(B ,T"M'0"i1M$GRA0!g1d04i1(B. 0,T7h1R9JRARC6`0CU1B!0$W190"i1M$GRA(B -0,T!Uh1$0CQi1'0!g1d04i1`0>Wh1M07Uh1(P7SJS`9R0"i1M$GRA(B. ,T$S0JQh1'07Uh1c0*i1c9!RC`0CU1B!0$W190$W1M(B C-y. - -0,TJTh1'07Uh1$GC0JQ1'`!50MQ19K09Vh1'0$W1M0"i1Ma5!05h1R'CPK0Gh1R'(B ",T!RC0&h1R(B (killing)" 0,T!Q1:(B ",T!RCE:(B -(deleting)". 0,TJTh1'07Uh106Y1!(B "0,T&h1R(B (killed)" ,Td;09Qi19(B, ,TJRARC607Uh1(P`0CU1B!0$W19(B (yank) ,TARd04i1(B, -,Ta05h10JTh1'07Uh106Y1!(B ",TE:(B (deleted)" ,Td;09Qi19(B, ,Td0Ah1JRARC6(P`0CU1B!0$W19ARd04i1(B. ,Tb4B07Qh1Gd;(B, ,T$S0JQh1'07Uh1JRARC6(B -,TE:0"i1M$GRAd04i107U1EPAR!f(B ,T(P`0!g1:0"i1M$GRA09Qi19d0Gi1(B, ,T"3P07Uh1$S0JQh1'07Uh1E:d04i107U1EP05Q1G0MQ1!IC(B, ,TK0CW1M:CC07Q14(B -,T`;0Eh1RaEP`0Gi19GCC$(B, ,T(Pd0Ah1`0!g1:0"i1M$GRA07Uh106Y1!E:d;(B. - ->> ,T`$0EWh1M9`$M0Cl1`+M0Cl1d;0BQ1'0(X14`0CTh1A05i19"M':CC07Q1407Uh1d0Ah1c0*h1:CC07Q14`;0Eh1R(B. - ,Ta0Ei1G0;i1M9$S0JQh1'(B C-k ,T`0>Wh1M07Uh1(P0&h1R0"i1M$GRA07Uh1M0BYh1:9:CC07Q1409Qi19(B. ->> 0,T;i1M9$S0JQh1'(B C-k 0,TMU1!$0CQi1'K09Vh1'(B. 0,T7h1R9(P`0Kg190Gh1R0MQ1!"CP(B Newline 0,T7Uh1M0BYh107i1RB:CC07Q1409Qi19(P06Y1!(B - 0,T&h1Rd;(B. - -,T(P0JQ1'`!5d04i10Gh1R$S0JQh1'(B C-k ,T$S0JQh1'aC!(P0&h1R`09Wi1M$GRA"M':CC07Q14(B, ,TaEP$S0JQh1'(B C-k ,T$S0JQh1'(B -0,T7Uh1JM'(P0&h1R:CC07Q1409Qi19(B, ,TaEP(P"0BQ1::CC07Q140MWh19f(B 0,T7Uh1`K0EW1M07Qi1'KA40"Vi19(B. ,T$S0JQh1'(B C-k 0,T(Q14!RC0!Q1:(B -0,T5Q1G`E"MR0Cl10!T1G`A905l1c90EQ1!I3P07Uh1a5!05h1R'MM!d;(B: ,T$S0JQh1'09Ui1(P0&h1RKERBf(B ,T:CC07Q14aEP`09Wi1MKR"M'(B -0,T"i1M$GRA04i1GB(B. 0,T9Uh1d0Ah1`K0AW1M9!RC7S0+i1Sa::;C!05T1(B. ,T$S0JQh1'(B C-u 2 C-k ,T(P0&h1R07Qi1'JM':CC07Q14(B -,T>0Ci1MA07Qi1'0MQ1!"CP(B Newline ,T"M':CC07Q1409Qi19f(B 0,T4i1GB(B; 0,T+Vh1'05h1R'(R!!RC7S$S0JQh1'(B C-k ,TJM'$0CQi1'(B. - -,Tc0*i1$S0JQh1'(B C-y ,Tc9!RC07Uh1(P`0CU1B!0$W190"i1M$GRA07Uh106Y1!0&h1Rd;K0EQ1'0JX14(B. 0,T"i1M$GRA07Uh106Y1!`0CU1B!0$W1909Qi19(P(B -,T;CR!/07Uh15SaK09h1'`$M0Cl1`+M0Cl10;Q1(0(X10:Q19(B. - ->> ,TEM'c0*i1$S0JQh1'(B C-y ,T`0>Wh1M07Uh1(P`0CU1B!0$W190"i1M$GRA!0EQ1:AR(B. - -,T$S0JQh1'(B C-y 0,T!g1`K0AW1M9!RC`0CU1B!0$W190JTh1'"M'07Uh1c$C:R'$9d04i1`MRd;(R!07h1R9(B. 0,T7h1R9(P0JQ1'`!5d04i10Gh1R(B -0,T6i1R07h1R9c0*i1$S0JQh1'(B C-k 0,T5T1405h1M0!Q19KERBf(B ,T$0CQi1'(B, 0,T"i1M$GRA07Uh106Y1!0&h1Rd;07Qi1'KA4(P06Y1!`0!g1:d0Gi104i1GB0!Q19(B, -,T)P09Qi19!RCc0*i1$S0JQh1'(B C-y ,T`0>U1B'$0CQi1'`04U1BG0!g1(P`0CU1B!0$W190"i1M$GRA!0EQ1:ARd04i107Qi1'KA4(B. - ->> ,TEM'c0*i1$S0JQh1'(B C-k ,TKERBf(B ,T$0CQi1'04Y1(B. - -,T`0>Wh1M07Uh1(P`0CU1B!0$W190"i1M$GRA07Uh106Y1!0&h1Rd;(B: - ->> ,TEM'c0*i1$S0JQh1'(B C-y. ,Ta0Ei1G`$0EWh1M9`$M0Cl1`+M0Cl1E'd;0JQ1!JM'JRA:CC07Q14(B, ,Ta0Ei1Gc0*i1$S0JQh1'(B C-y - 0,TMU1!$0CQi1'(B. 0,T7h1R9(P`0"i1Rc(0GT108U1!RC07Uh1(PJS`9R0"i1M$GRA(B. - -0,T7h1R9(P7SM0Bh1R'dC06i1R07h1R905i1M'!RC(P`0CU1B!0$W190"i1M$GRA:R'M0Bh1R'(B, ,Ta0Ei1G0&h1R:R'M0Bh1R'MM!d;(B? -,T$S0JQh1'(B C-y ,T(P`0CU1B!0$W190"i1M$GRA07Uh106Y1!0&h1R0Eh1R0JX14(B. ,Ta05h10"i1M$GRA0!h1M9K09i1R09Qi190BQ1'$'`K0EW1MM0BYh1(B. 0,T7h1R9(B -,TJRARC6(P`0CU1B!0$W19ARd04i10MU1!b4Bc0*i1$S0JQh1'(B M-y. ,TK0EQ1'(R!07Uh107h1R9d04i1`0CU1B!0$W190"i1M$GRA0Eh1R0JX14a0Ei1G(B, -,Tc0*i1$S0JQh1'(B M-y ,T`0>Wh1M07Uh1(P`0CU1B!0$W190"i1M$GRA0!h1M9K09i1R09Qi19ARa7907Uh1(B. ,T!RCc0*i1$S0JQh1'(B M-y ,Ta05h1EP$0CQi1'(B -,T(P`0CU1B!0$W190"i1M$GRA07Uh106Y1!0&h1Rd;c9ES04Q1:07Uh10Bi1M9!0EQ1:0"Vi19d;(B. ,T`0AWh1M07h1R9d04i10"i1M$GRA07Uh105i1M'!RC!0EQ1:0$W19AR(B, -0,T7h1R90!g1d0Ah1(S`0;g1907Uh1(P05i1M'7SMPdC0!Q1:0"i1M$GRA09Qi190MU1!(B. ,T`0>U1B';0Eh1MBM0BYh1M0Bh1R'09Qi19(B, ,Ta0Ei1G7S!RCa0!i1d"(B -0,T"i1M$GRA0MWh1905h1Md;(B. - -0,T6i1R07h1R9c0*i1$S0JQh1'(B M-y 0,T4i1GB(S9G9$0CQi1'07Uh1AR!>M(B, 0,T7h1R9(P0Bi1M9!0EQ1:AR0BQ1'0(X14`0CTh1A05i190MU1!$0CQi1'(B -(0,T"i1M$GRA07Uh106Y1!0&h1Rd;0Eh1R0JX14(B). - ->> 0,T&h1RK09Vh1':CC07Q14(B, ,T`$0EWh1M9`$M0Cl1`+M0Cl1d;(B, 0,T&h1R0MU1!:CC07Q14(B. - ,Ta0Ei1Gc0*i1$S0JQh1'(B C-y ,T`0>Wh1M07Uh1(P`0CU1B!0$W19:CC07Q1407Uh106Y1!0&h1Rd;c9$0CQi1'07Uh1JM'(B. - ,Ta0Ei1Gc0*i1$S0JQh1'(B M-y 0,T+Vh1'(P`0CV1B!0$W19:CC07Q1407Uh106Y1!0&h1Rd;c9$0CQi1'aC!ARa7907Uh1(B. - ,Tc0*i1$S0JQh1'(B M-y 0,TMU1!(B, ,Ta0Ei1G04Y10Gh1R(P`0!T14MPdC0"Vi19(B. ,TEM'7Sd;`0CWh1MBf(B ,T(9!0Gh1R:CC07Q1407Uh106Y1!0&h1Rd;(B - ,Tc9$0CQi1'07Uh1JM'(P!0EQ1:0$W19AR(B, ,Ta0Ei1G7Sd;0MU1!0JQ1!CPBP(B. - 0,T6i1R07h1R905i1M'!RC(B, 0,T7h1R9MR((PEM'!S0!Q1:05Q1G`E"MR0Cl10!T1G`A905l107Qi1'07Uh1`0;g19(S9G9:G!aEPE:c0Ki10!Q1:(B - ,T$S0JQh1'(B M-y 0,T4Y1(B. - - -* ,T!RC7S0Bi1M9(B (undo) -------------------- - -0,T6i1R07h1R9d04i1a0!i1d"0"i1M$GRAd;(B, ,TaEP0$T140Gh1Rd04i17S0ER4d;(B, 0,T7h1R9JRARC67S0Bi1M90JTh1'07Uh1d04i1(B -,T`;0EUh1B9a;E'd;a0Ei1G04i1GB$S0JQh1'!RC7S0Bi1M9(B, C-x u. - -,Tb4B;C!05T1(B, ,T$S0JQh1'(B C-x u ,T7S0Bi1M9$S0JQh1'07Uh1d04i17Sd;a0Ei1GK09Vh1'$S0JQh1'(B; 0,T6i1R07h1R97S0Bi1M90+i1S05T1405h1M0!Q19(B, -,T!RC7S0Bi1M9a05h1EP$0CQi1'(P0Bi1M9$S0JQh1'd;07U1EP$S0JQh1'(B. - -,Ta05h10AU10"i1MB!`0Gi19M0BYh1JM';CP!RC(B: ,T$S0JQh1'07Uh1d0Ah1`;0EUh1B9a;E'0"i1M$GRA(Pd0Ah109Q1:CGAM0BYh104i1GB(B (0,T9Uh1CGA06V1'(B -,T$S0JQh1'!RC`$0EWh1M9`$M0Cl1`+M0Cl1aEP!RC`$0EWh1M90Ai1G9(B), ,TaEP!RCa7C!05Q1G0MQ1!IC0!g1(P06Y1!0(Q14!RCb4BCGA(B -,T`0;g19!0EXh1A07Uh1d0Ah1`0!T19(B 20 0,T5Q1G0MQ1!IC05h1M!0EXh1A(B. (0,T7Qi1'09Ui1`0>Wh1ME4(S9G9$0CQi1'"M'$S0JQh1'(B C-x u ,Tc9!RC7S(B -0,TBi1M9!RCa7C!05Q1G0MQ1!IC(B.) - ->> 0,T&h1R:CC07Q1409Ui104i1GB$S0JQh1'(B C-k, ,Ta0Ei1G0;i1M9$S0JQh1'(B C-x u. ,T:CC07Q1407Uh106Y1!0&h1Rd;(P;CR!/!0EQ1:0$W19AR(B. - -,T$S0JQh1'(B C-_ ,T`0;g190MU1!$S0JQh1'K09Vh1'JSK0CQ1:!RC7S0Bi1M9(B; ,T$S0JQh1'09Ui17S'R9`K0AW1M90!Q1:$S0JQh1'(B C-x u, -,Ta05h10Gh1RJP4G!!0Gh1Rc9!RC0;i1M9KERBf(B ,T$0CQi1'05T1405h1M0!Q19(B. 0,T"i1M`0JU1B"M'$S0JQh1'(B C-_ 0,T9Ui10$W1Mc9:R'(B -,Ta0;i190>T1A0>l1(B, ,TMR((Pd0Ah17CR:0Gh1R(P0;i1M9$S0JQh1'd04i1M0Bh1R'dC(B. 0,T9Qh190$W1M`K05X107Uh17Sc0Ki1`CR05i1M'`50CU1BA$S0JQh1'(B -C-x u ,Tc0Ki10MU1!05h1R'KR!(B. ,Tc9`$0CWh1M';ERB7R':R'*09T14(B,0,T7h1R9MR((P0;i1M9$S0JQh1'(B C-_ ,Td04i1b4B!RC!4(B -0,TMQ1!"CP(B / ,Tc9"3P07Uh1!40;Xh1A(B CONTROL. - -0,T5Q1G`E"MR0Cl10!T1G`A905l1JSK0CQ1:$S0JQh1'(B C-_ ,TaEP(B C-x u ,T(P`0;g19!RC0+i1S(S9G9$0CQi1'"M'$S0JQh1'(B. - - -* ,Ta0?i1A0"i1M0AY1E(B (file) ----------------- - -,T`0>Wh1M07Uh1(P`0!g1:0"i1M$GRA07Uh1d04i1a0!i1d"d;09Qi19(B, 0,T7h1R9(P05i1M'`0!g1:0"i1M$GRA09Qi19d0Gi1c9a0?i1A0"i1M0AY1E(B. ,Td0Ah1`0*h1909Qi19(B -0,T"i1M$GRA0!g1(PKRBd;`0AWh1M07h1R9`0ET1!c0*i10MU1aA!0Jl1(B. ,T!RC07Uh1(P`0!g1:0"i1M$GRA09Qi19E'c9a0?i1A0"i1M0AY1E(B, 0,T7h1R9(B -,T(P05i1M'(B "0,T$i19KR(B (find)" ,Ta0?i1A0"i1M0AY1E0!h1M907Uh1(P`0"i1Rd;c90"i1M$GRA09Qi19d04i1(B. (0,T9Uh1`0CU1B!0Gh1R(B ",T!RC(B -,T`0BW1M9(B (visiting)" ,Ta0?i1A0"i1M0AY1E(B.) - -,T!RC0$i19KRa0?i1A0"i1M0AY1EKARB06V1'!RC07Uh107h1R9d04i1`0Kg19`09Wi1MKR"M'a0?i1A0"i1M0AY1E@RBc90MU1aA!0Jl1(B. ,Tc9KERBf(B -,T7R'(B, 0,T4Y1`K0AW1M90Gh1R07h1R9!S0EQ1'a0!i1d"0"i1M0AY1Ec9a0?i1A0"i1M0AY1EM0BYh1(B. ,TM0Bh1R'dC0!g15RA(B, ,T!RCa0!i1d"@RBc90MU1(B -,TaA!0Jl109Qi19(Pd0Ah1$'M0BYh1(9!0Gh1R07h1R9(P(B "0,T(Q14`0!g1:(B (save)" ,Ta0?i1A0"i1M0AY1E09Qi19(B. 0,T9Uh1`0;g19!RC0*h1GBc0Ki107h1R9(B -,TJRARC6K0EU1!`0EUh1B'!RC7Sc0Ki1a0?i1A0"i1M0AY1E06Y1!a0!i1d"d0Gi1$0CVh1'f(B ,T!ER'f(B 0,T6i1R07h1R9d0Ah1d04i105i1M'!RC(B. ,Ta0Ai10Gh1R(B -0,T7h1R9(P7S!RC0(Q14`0!g1:d;a0Ei1G0!g15RA(B, 0,TMU1aA!0Jl10!g10BQ1'$'`K0EW1Ma0?i1A0"i1M0AY1E05i19)0:Q1:d0Gi1b4B`0!g1:d0Gi1c90*Wh1M(B -,TcK0Ah1(B, ,T`0ER4(B. - -0,T6i1R07h1R90JQ1'`!504Y10Jh1G90Eh1R'"M'K09i1R(M"M'0MU1aA!0Jl1(B, 0,T7h1R9(P`0Kg19:CC07Q1407Uh1`0CTh1A05i19aEP0JTi190JX1404i1GB(B -,T`0Ji19;CP(B. ,T:CC07Q1409Qi19MR((P`0CTh1A05i1904i1GB(B "--:-- TUTORIAL" ,TK0CW1MMPdC7S9M'09Qi19(B. 0,TJh1G909Ui1(B -,T"M'K09i1R(M(B, ,Tb4B;C!05T1a0Ei1G(B, ,T(PaJ4'0*Wh1Ma0?i1A0"i1M0AY1E07Uh107h1R9!S0EQ1'`0BW1M9M0BYh1(B. ,T"3P09Ui107h1R9!S0EQ1'(B -,T`0BW1M9a0?i1A0"i1M0AY1E07Uh10*Wh1M0Gh1R(B "TUTORIAL.th" 0,T+Vh1'`0;g19JS`9R"M'0$Yh10AW1M!RCc0*i10MU1aA!0Jl1(B. ,T`0AWh1M07h1R9d04i1(B -,T`0BW1M9a0?i1A0"i1M0AY1E04i1GB0MU1aA!0Jl1(B, 0,T*Wh1M"M'a0?i1A0"i1M0AY1E09Qi19(P;CR!/c907Uh107Uh1d04i1!0Eh1RGd0Gi1a0Ei1G(B. - -0,TEQ1!I3P0>T1`HI0"i1MK09Vh1'"M'$S0JQh1'`0BW1M9a0?i1A0"i1M0AY1E0$W1M(B 0,T7h1R9(P05i1M':M!0*Wh1M"M'a0?i1A0"i1M0AY1E07Uh1(P(B -,T`0BW1M9(B. ,T`CR`0CU1B!0EQ1!I3P`0*h1909Ui10Gh1R(B "0,TMh1R9MR0Cl10!T1G`A905l1(R!`$0CWh1M';ERB7R'(B" (,Tc9!C03U109Ui1(B, ,TMR0Cl1(B -0,T!T1G`A905l10!g10$W1M0*Wh1M"M'a0?i1A0"i1M0AY1E(B). ,TK0EQ1'(R!07Uh107h1R90;i1M9$S0JQh1'(B - - C-x C-f Find a file - -0,TMU1aA!0Jl1(P6RA0*Wh1Ma0?i1A0"i1M0AY1E(B. 0,T*Wh1Ma0?i1A0"i1M0AY1E07Uh107h1R90;i1M9`0"i1Rd;(P;CR!/07Uh1:CC07Q140Eh1R'"M'K09i1R(M(B. -,T:CC07Q140Eh1R'"M'K09i1R(M`0CU1B!0Gh1R0AT109T10:Q1?`?M0Cl1(B (minibuffer) ,T`0AWh1M06Y1!c0*i1'R9c90EQ1!I3P09Ui1(B. -0,T7h1R9JRARC6c0*i1$S0JQh1'07Uh1c0*i1c9!RCa0!i1d";C!05T1"M'0MU1aA!0Jl1a0!i1d"0*Wh1M"M'a0?i1A0"i1M0AY1E(B. - -,T"3P07Uh107h1R9!S0EQ1'0;i1M90*Wh1Ma0?i1A0"i1M0AY1E(B (,TK0CW1M0"i1M0AY1Ec4f(B ,Tc90AT109T10:Q1?`?M0Cl109Ui1(B), 0,T7h1R9JRARC6(B -,TB!`0ET1!$S0JQh1'04i1GB!RCc0*i1$S0JQh1'(B C-g. - ->> 0,T;i1M9$S0JQh1'(B C-x C-f, ,Ta0Ei1G0;i1M9$S0JQh1'(B C-g. 0,T9Uh1`0;g19!RCB!`0ET1!0AT109T10:Q1?`?M0Cl1(B, ,TaEP(B - ,TB!`0ET1!$S0JQh1'(B C-x C-f 0,T7Uh1!S0EQ1'c0*i10AT109T10:Q1?`?M0Cl1M0BYh1(B. ,T08l10$W1M07h1R9(Pd0Ah1d04i1`0BW1M9(B - ,Ta0?i1A0"i1M0AY1Ec4f(B. - -,T`0AWh1M07h1R9d04i10;i1M90*Wh1Ma0?i1A0"i1M0AY1E`J0Cg1(a0Ei1G(B, ,T!40;Xh1A(B ,T`0>Wh1M07Uh1(P0JTi190JX14$S0JQh1'(B. ,Ta0Ei1G$S0JQh1'(B -C-x C-f 0,T!g1(P7S'R9(B, ,TaEP(P`0BW1M9a0?i1A0"i1M0AY1E07Uh107h1R9d04i1`0EW1M!d0Gi1(B. 0,TAT109T10:Q1?`?M0Cl1(P(B -,TKRBd;`0AWh1M`J0Cg1(0JTi19$S0JQh1'(B C-x C-f. - -,TK0EQ1'(R!09Qi19d0Ah19R9`09Wi1MKR"M'a0?i1A0"i1M0AY1E0!g1(P;CR!/:9K09i1R(M(B, ,TaEP07h1R90!g1(PJRARC6a0!i1d"(B -,T`09Wi1MKRd04i1(B. ,T`0AWh1M07h1R905i1M'!RC(Pa0!i1d"0"i1M$GRAM0Bh1R'6RGC(B, 0,T!g1c0Ki1c0*i1$S0JQh1'(B - - C-x C-s Save the file - -,T$S0JQh1'09Ui1(P7SJS`9R0"i1M$GRA07Uh1M0BYh1c90MU1aA!0Jl1`0"i1Rd;`0!g1:d0Gi1c9a0?i1A0"i1M0AY1E(B. ,Tc9!RC!CP7S`0*h1909Ui1c9(B -,T$0CQi1'aC!0JX14(B, 0,TMU1aA!0Jl1(P`;0EUh1B90*Wh1Ma0?i1A0"i1M0AY1E05i19)0:Q1:`0>Wh1M0Gh1R(Pd04i1$'d0Gi1(B. 0,T*Wh1McK0Ah109Qi1905Qi1'0"Vi19b4B(B -,T!RC`05T1A(B "~" ,T`0"i1Rd;07i1RB0*Wh1Ma0?i1A0"i1M0AY1E05i19)0:Q1:(B. - -,T`0AWh1M7S!RC0(Q14`0!g1:`0CU1B:0Ci1MBa0Ei1G(B, 0,TMU1aA!0Jl1(P0>T1A0>l10*Wh1Ma0?i1A0"i1M0AY1E09Qi19(B. 0,T7h1R9$GC(P0(Q14`0!g1:0"i1M0AY1E(B -0,T:h1MBf(B, ,T`0>Wh1M0Gh1R07h1R9(Pd04i1d0Ah105i1M'`0JU1B'R9d;AR!09Q1!KR!CP::`0!T140"Q140"i1M'(B. - ->> 0,T;i1M9$S0JQh1'(B C-x C-s, ,T`0>Wh1M0(Q14`0!g1:JS`9R0$Yh10AW1M!RCc0*i1"M'07h1R9(B. - ,T(P;CR!/(B "Write ...TUTORIAL.th" 0,T7Uh1:CC07Q140Eh1R'0JX14"M'K09i1R(M(B. - -0,T"i1M0JQ1'`!5(B: ,Tc9:R'CP::(B, ,T!RC0;i1M9$S0JQh1'(B C-x C-s ,T(P7Sc0Ki1K09i1R(M*P0'Q1!aEP07h1R9(Pd0Ah1d04i10CQ1:(B -0,T"i1M$GRAc4f(B ,T(R!0MU1aA!0Jl1(B. 0,T9Uh1aJ4'0Gh1R(B "feature" ,T"M'CP::;0/T10:Q105T1!RC07Uh1`0CU1B!0Gh1R(B "flow -control" ,Td04i10"Q14"GR'!RC7S'R9"M'(B C-s ,TaEPd0Ah1;0Eh1MBc0Ki1!0EQ1:0JYh10MU1aA!0Jl10MU1!(B. ,Tc0*i1$S0JQh1'(B C-g -,T`0>Wh1Ma0!i1d"d0Ah1c0Ki1K09i1R(M*P0'Q1!(B. ,Ta0Ei1G04Y1:707Uh10Gh1R04i1GB(B "Spontaneous Entry to -Incremental Search" ,Tc90$Yh10AW1M"M'0MU1aA!0Jl10+Vh1'(Pa9P9S!RC0(Q14!RC`0!Uh1BG0!Q1:(B "feature" 0,T9Ui1(B. - -0,T7h1R9JRARC6(P`0BW1M9a0?i1A0"i1M0AY1E07Uh10AU1M0BYh1a0Ei1G(B, ,T`0>Wh1M07Uh1(P04Y1K0CW1Ma0!i1d"(B. 0,T7h1R9JRARC6(P`0BW1M9(B -,Ta0?i1A0"i1M0AY1E07Uh10BQ1'd0Ah1;CR!/0!g1d04i1(B. 0,T9Uh1`0;g19!RCJ0Ci1R'a0?i1A0"i1M0AY1EcK0Ah1"M'0MU1aA!0Jl1(B: ,T`0BW1M9a0?i1A0"i1M0AY1E(B, -0,T+Vh1'(P`0CTh1A05i1904i1GBK09i1R(M0Gh1R'`;0Eh1R(B, ,Ta0Ei1G7S!RCa7C!0"i1M$GRA`0>Wh1M07Uh1(PJ0Ci1R'`0;g19a0?i1A0"i1M0AY1E05h1Md;(B. -,T`0AWh1M07h1R90JQh1'c0Ki1(B "0,T(Q14`0!g1:(B (save)" ,Ta0?i1A0"i1M0AY1E(B, 0,TMU1aA!0Jl10(V1'(PJ0Ci1R'a0?i1A0"i1M0AY1E04i1GB0"i1M$GRA07Uh1(B -0,T7h1R9d04i10;i1M9`0"i1Rd;(B. ,T(R!09Ui1d;(B, 0,T7h1R9JRARC6(P05Q140JT19c(EM'a0!i1d"a0?i1A0"i1M0AY1E07Uh10AU1M0BYh1a0Ei1Gd04i1(B. - - -* 0,T:Q1?`?M0Cl1(B (buffer) ------------------ - -0,T6i1R07h1R9`0BW1M90MU1!a0?i1A0"i1M0AY1Eb4Bc0*i1$S0JQh1'(B C-x C-f, ,Ta0?i1A0"i1M0AY1EaC!(P0BQ1'$'M0BYh1c90MU1aA!0Jl1(B. 0,T7h1R9(B -,TJRARC6(PJ0EQ1:!0EQ1:d;d04i10MU1!b4Bc0*i1$S0JQh1'(B C-x C-f. 0,TGT108U109Ui1(P7Sc0Ki107h1R9JRARC6`0BW1M9a0?i1A0"i1M0AY1E(B -,T@RBc90MU1aA!0Jl1d04i1(S9G9K09Vh1'(B. - ->> ,TJ0Ci1R'a0?i1A0"i1M0AY1EaEPc0Ki10*Wh1M0Gh1R(B "foo" ,Tb4B!RC0;i1M9$S0JQh1'(B C-x C-f foo . - ,Ta0Ei1G0;i1M90"i1M$GRA(B, ,Ta0!i1d"(B, ,TaEP0(Q14`0!g1:(B "foo" ,Tb4B!RC0;i1M9$S0JQh1'(B C-x C-s. - 0,TJX1407i1RB(B, 0,T;i1M9$S0JQh1'(B C-x C-f TUTORIAL ,T`0>Wh1M(Pd04i10Bi1M9!0EQ1:AR07Uh10"i1M$GRA(B - ,T"M'0$Yh10AW1M!RCc0*i1(B. - -0,TMU1aA!0Jl1`0!g1:0"i1M$GRA"M'a05h1EPa0?i1A0"i1M0AY1E@RBc90JTh1'f(B (object) ,TK09Vh1'(B, 0,T+Vh1'`0CU1B!0Gh1R(B "0,T:Q1?`?M0Cl1(B -(buffer)". ,T!RC`0BW1M9a0?i1A0"i1M0AY1E`0;g19!RCJ0Ci1R'0:Q1?`?M0Cl1cK0Ah1@RBc90MU1aA!0Jl1(B. ,Tc9!RC07Uh1(P04Y1(B -,TCRB!RC"M'0:Q1?`?M0Cl107Uh10AU1M0BYh1c90MU1aA!0Jl109Qi19(B, ,Tc0Ki10;i1M9$S0JQh1'(B: - - C-x C-b List buffers - ->> ,TEM'0;i1M9$S0JQh1'(B C-x C-b 0,T4Y1(B. - -0,T4Y10Gh1Ra05h1EP0:Q1?`?M0Cl10AU10*Wh1M0Gh1RMPdC(B, ,TaEP:R'0MQ190!g1`0;g190*Wh1M"M'a0?i1A0"i1M0AY1E07Uh10AU1`09Wi1MKR09Qi19f(B ,TM0BYh1(B. ,T:R'(B -0,T:Q1?`?M0Cl1d0Ah1d04i1`0!Uh1BG0"i1M'0!Q1:a0?i1A0"i1M0AY1E(B. 0,T5Q1GM0Bh1R'`0*h19(B, 0,T:Q1?`?M0Cl107Uh10AU10*Wh1M0Gh1R(B "*Buffer List*" -,Td0Ah10AU1a0?i1A0"i1M0AY1Ec4f(B 0,T7Qi1'0JTi19(B. 0,T9Uh1`0;g190:Q1?`?M0Cl10+Vh1':CC0(X1`09Wi1MKR"M'CRB!RC"M'0:Q1?`?M0Cl107Uh106Y1!J0Ci1R'(B -0,T4i1GB$S0JQh1'(B C-x C-b. 0,T"i1M$GRAc4f(B 0,T7Uh107h1R9`0Kg19:9K09i1R(M"M'0MU1aA!0Jl1(P;CR!/M0BYh1`0;g190Jh1G9K09Vh1'(B -,T"M'0:Q1?`?M0Cl1c40:Q1?`?M0Cl1K09Vh1'`JAM(B. - ->> ,TEM'c0*i1$S0JQh1'(B C-x 1 ,T`0>Wh1M07Uh1(P!S0(Q14CRB!RC"M'0:Q1?`?M0Cl1(B. - -0,T6i1R07h1R9a0!i1d"0"i1M$GRAc9a0?i1A0"i1M0AY1EK09Vh1'(B, ,Ta0Ei1G`0BW1M90MU1!a0?i1A0"i1M0AY1EK09Vh1'(B, 0,TMU1aA!0Jl10BQ1'd0Ah1d04i10(Q14`0!g1:(B -0,T"i1M$GRA"M'a0?i1A0"i1M0AY1EaC!(B. 0,T"i1M$GRA07Uh106Y1!a0!i1d"d;(P0BQ1'$'M0BYh1c90MU1aA!0Jl1(B, ,Tc90:Q1?`?M0Cl1JSK0CQ1:(B -,Ta0?i1A0"i1M0AY1E09Qi19(B. ,T!RCJ0Ci1R'K0CW1M!RCa0!i1d""M'0:Q1?`?M0Cl1JSK0CQ1:a0?i1A0"i1M0AY1E07Uh1JM'd0Ah1d04i10AU1Wh1M07Uh1(Pd04i1c0*i1$S0JQh1'(B C-x C-s ,Tc9!RC0(Q14`0!g1:(B. -0,T4Q1'09Qi19`CR0(V1'`50CU1BA$S0JQh1'(B - - C-x s Save some buffers - -,T$S0JQh1'(B C-x s ,T(P6RA07h1R9`0!Uh1BG0!Q1:0:Q1?`?M0Cl107Uh1d04i10CQ1:!RCa0!i1d"a05h10BQ1'd0Ah1d04i10CQ1:!RC0(Q14`0!g1:(B. 0,TMU1(B -,TaA!0Jl1(P6RA07h1R9(B, ,TJSK0CQ1:a05h1EP0:Q1?`?M0Cl104Q1'!0Eh1RG(B, 0,TGh1R(P0(Q14`0!g1:K0CW1Md0Ah1(B. - ->> ,Ta7C!0"i1M$GRA0JQ1!K09Vh1':CC07Q14(B, ,Ta0Ei1G0;i1M9$S0JQh1'(B C-x s. - 0,TMU1aA!0Jl1(P6RA07h1R90Gh1R(P0(Q14`0!g1:0:Q1?`?M0Cl10*Wh1M(B TUTORIAL ,TdKA(B. - ,T5M:0Gh1Rc0*h1b4B!RC0;i1M9(B "y". - - -* ,T!RC`0>Th1A0*X14$S0JQh1'(B --------------- - -0,TAU1$S0JQh1'"M'0MU1aA!0Jl1M0BYh10MU1!AR!ARB(9`0!T19!0Gh1R07Uh1(PJRARC6!S0!Q1:d04i104i1GB0MQ1!"CP;CPJA0!Q1:0MQ1!"CP(B -,T$M9b7CE(B (control character) ,TaEPM0@T10MQ1!"CP(B (meta character). 0,TMU1aA!0Jl1c0*i1!RC(B -,T;CPJA0!Q1:$S0JQh1'`J0CT1A(B (eXtend command). ,T!RC`J0CT1A09Ui1`0;g19d;d04i1JM'0EQ1!I3P(B: - - C-x ,T!RC`J0CT1A0MQ1!"CP(B (Character eXtend). ,T5RA04i1GBK09Vh1'05Q1G0MQ1!IC(B. - M-x ,T!RC`J0CT1A04i1GB0*Wh1M$S0JQh1'(B (Named command eXtend). ,T5RA04i1GB0*Wh1M`05g1A(B. - -,T$S0JQh1'`K0Eh1R09Ui1b4B07Qh1Gd;a0Ei1G(P0AU1;CPbB*09l1(B, ,Ta05h10AQ1!(P0AU1bM!RJc0*i109i1MB!0Gh1R$S0JQh1'05h1R'f(B 0,T7Uh107h1R9d04i1(B -,T`0CU1B90CYi1d;a0Ei1G(B. 0,T7h1R9d04i1>:d;a0Ei1GJM'$S0JQh1'(B: ,T$S0JQh1'JSK0CQ1:!RC0(Q14!RC0!Q1:a0?i1A0"i1M0AY1E(B C-x C-f -,TJSK0CQ1:!RC`0BW1M9(B (Find) ,TaEP(B C-x C-s ,TJSK0CQ1:!RC0(Q14`0!g1:(B (Save). 0,TMU1!05Q1GM0Bh1R'K09Vh1'0!g1(B -0,T$W1M$S0JQh1'07Uh1c0*i1c9!RC`0ET1!c0*i10MU1aA!0Jl1(B--,T$S0JQh1'(B C-x C-c. (,Td0Ah105i1M'`0;g190Kh1G'0Gh1R0"i1M0AY1E07Uh107h1R9d04i1(B -,Ta0!i1d"d;(P0JY1-KRB(B; ,T$S0JQh1'(B C-x C-c ,T(P`J9Mc0Ki10(Q14`0!g1:a0?i1A0"i1M0AY1E07Uh106Y1!a0!i1d"d;0!h1M907Uh1(P0JTi190JX14(B -0,TMU1aA!0Jl1(B.) - -,T$S0JQh1'(B C-z ,T`0;g19$S0JQh1'07Uh1c0*i1c9!RCMM!(R!0MU1aA!0Jl1`0;g19!RC0*Qh1G$CRG(B *temporarily*--,T)P09Qi19(B -0,T7h1R9JRARC6!0EQ1:d;0JYh10MU1aA!0Jl1d04i10MU1!K0EQ1'(R!09Qi19(B. - -,TJSK0CQ1:CP::07Uh1M09X1-R5c0Ki1c0*i1$S0JQh1'(B, C-z "suspends" 0,TMU1aA!0Jl1(B; 0,T9Qh190$W1M!RC!0EQ1:d;0BQ1'`*E0El1(B -(shell) ,Tb4Bd0Ah1d04i17SERB0MU1aA!0Jl1(B. ,Tc9`*E0El107Qh1Gd;(B, 0,T7h1R9JRARC60CU10+Y1A(B (resume) 0,TMU1aA!0Jl1(B -,Td04i104i1GB$S0JQh1'(B `fg' ,TK0CW1M04i1GB$S0JQh1'(B `%emacs'. - -,TJSK0CQ1:CP::07Uh1d0Ah10AU10?Q1'0!l10*Q19(B "suspend", ,T$S0JQh1'(B C-z ,T(PJ0Ci1R'0+Q1:`*E0El1(B (subshell) -,T@RBc05i10MU1aA!0Jl1`0>Wh1Mc0Ki107h1R90AU1bM!RJ4S`09T19'R9b;Ca!CA0MWh190!h1M9a0Ei1G0$h1MB!0EQ1:AR0BQ1'0MU1aA!0Jl10MU1!$0CQi1'(B; -0,T+Vh1'd0Ah1c0*h1!RC(B ",TMM!(R!(B (exit)" 0,TMU1aA!0Jl1(0CT1'(B. ,Tc9!C03U109Ui1(B, ,T$S0JQh1'`*E0El1(B `exit' ,T`0;g19$S0JQh1'(B -,T;C!05T107Uh1c0*i1c9!RC!0EQ1:d;0BQ1'0MU1aA!0Jl1(R!0+Q1:`*E0El1(B. - -,Tc0*i1$S0JQh1'(B C-x C-c 0,T!g105h1M`0AWh1M07h1R905i1M'!RC(P`0ET1!c0*i10MU1aA!0Jl1(0CT1'f(B. 0,TGT108U109Ui1`0;g190GT108U107Uh106Y1!05i1M'c9(B -,T!RC07Uh1(P`0ET1!c0*i10MU1aA!0Jl1(B, ,Td0Ah10Gh1R0MU1aA!0Jl109Qi19(P06Y1!`0CU1B!c0*i1(R!b;Ca!CA0(Q14!RC`AE0El1(B (mail -handling programs) ,TK0CW1Mb;Ca!CAMCC6;CPbB*09l1(B (utility programs) 0,T5h1R'f(B, -,T`09Wh1M'(R!0Gh1Rb;Ca!CA`K0Eh1R09Ui1d0Ah10AU10GT108U1!RC0(Q14!RC0!Q1:0MU1aA!0Jl1d04i1b4B5C'(B. ,Tc9J@R>!RC7S'R9(B -,T;C!05T1(B, 0,T6i1R07h1R9d0Ah1d04i105i1M'!RC(P`0ET1!c0*i10MU1aA!0Jl1(0CT1'f(B, 0,T7h1R90!g1$GC(P(B suspend ,Tb4B!RCc0*i1(B -,T$S0JQh1'(B C-z ,Ta79!RC`0ET1!c0*i1d;`EB(B. - -0,TBQ1'0AU1$S0JQh1'07Uh1M0BYh1c90*X14$S0JQh1'(B C-x 0,TMU1!AR!(B. 0,T5h1Md;09Ui1`0;g19CRB!RC$S0JQh1'07Uh107h1R9d04i1`0CU1B90CYi1d;a0Ei1G(B: - - C-x C-f ,T`0BW1M9a0?i1A0"i1M0AY1E(B (Find file). - C-x C-s 0,T(Q14`0!g1:a0?i1A0"i1M0AY1E(B (Save file). - C-x C-b ,T7SCRB!RC0:Q1?`?M0Cl1(B (List buffers). - C-x C-c ,T`0ET1!c0*i10MU1aA!0Jl1(B (Quit Emacs). - C-x 1 ,TE:K09i1R(M07Qi1'KA4b4B$'M0BYh1d0Gi1K09Vh1'K09i1R(M(B - (Delete all but one window). - C-x u ,T7S0Bi1M9(B (Undo). - -,T$S0JQh1'07Uh10AU10*Wh1M$S0JQh1'`J0CT1A09Ui1`0;g19$S0JQh1'07Uh1c0*i1d0Ah10$h1MB0:h1MB09Q1!(B, ,TK0CW1M`0;g19$S0JQh1'07Uh1c0*i1`)>RPc9:R'bKA4(B -,T`07h1R09Qi19(B. 0,T5Q1GM0Bh1R'K09Vh1'"M'$S0JQh1'09Ui10$W1M$S0JQh1'`;0EUh1B9a79(B-,TJRB0MQ1!"CP(B (replace-string), -0,T+Vh1'`0;g19!RC`;0EUh1B9a79JRB0MQ1!"CPK09Vh1'04i1GB0MU1!JRB0MQ1!"CPK09Vh1'07Qi1'KA4(B. ,T`0AWh1M07h1R90;i1M9$S0JQh1'(B M-x, -0,TMU1aA!0Jl1aJ4'(B M-x 0,T7Uh1:CC07Q140Eh1R'0JX14"M'K09i1R(M(B, ,Tc907Uh109Ui107h1R9(P05i1M'0>T1A0>l10*Wh1M"M'$S0JQh1'(B; ,Tc9!C03U109Ui1(B -0,T$W1M(B "replace-string". 0,T7h1R9MR((P0>T1A0>l1(B "repl s" ,Ta0Ei1G0MU1aA!0Jl1(P`05T1A0*Wh1M$S0JQh1'c0Ki1(B -,T`05g1A`M'd04i1(B. 0,TJTi190JX14$S0JQh1'04i1GB!RC!40;Xh1A(B . - -,T$S0JQh1'`;0EUh1B9a79(B-,TJRB0MQ1!"CP(B (replace-string) 0,T5i1M'!RCJM'MR0Cl10!T1G`A905l1(B--,TJRB0MQ1!"CP(B -0,T7Uh1(P06Y1!`;0EUh1B9a79(B, ,TaEPJRB0MQ1!"CP07Uh1(Pc0*i1`;0EUh1B9a79(B. 0,T7h1R9(P05i1M'0JTi190JX14!RC0;i1M9a05h1EPMR0Cl1(B -0,T!T1G`A905l104i1GB!RC!40;Xh1A(B . - ->> ,T`$0EWh1M9`$M0Cl1`+M0Cl1d;0BQ1':CC07Q14`;0Eh1R07Uh1M0BYh1c05i1:CC07Q1409Ui1d;JM':CC07Q14(B. - ,Ta0Ei1G0;i1M9$S0JQh1'(B M-x repl schangedaltered. - - 0,TJQ1'`!504Y1!RC`;0EUh1B9a;E'"M':CC07Q1409Ui1(B: 0,T7h1R9d04i1`;0EUh1B9a79$S0Gh1R(B c-h-a-n-g-e-d - 0,T4i1GB$S0Gh1R(B "altered" ,Tc907X1!07Uh107Uh1;CR!/05Qi1'a05h15SaK09h1'07Uh1`$M0Cl1`+M0Cl1M0BYh10;Q1(0(X10:Q19(B. - - -* 0,T(Q14`0!g1:0MQ15b90AQ105T1(B (auto save) -------------------------- - -,T`0AWh1M07h1R9d04i1a0!i1d"a0?i1A0"i1M0AY1Ea0Ei1G(B, ,Ta05h107h1R90BQ1'd0Ah1d04i10(Q14`0!g1:(B, ,Ta0?i1A0"i1M0AY1E`K0Eh1R09Qi19MR(0JY1-KRBd04i106i1R(B -,T`$0CWh1M'$MA0>T1G`5M0Cl1"M'07h1R9`0!T140"Q140"i1M'(B. ,T`0>Wh1M0;i1M'0!Q19`K05X1!RC03l1`0*h1909Ui1(B, 0,TMU1aA!0Jl17S!RC`0"U1B9(B -0,T"i1M$GRAJSK0CQ1:a05h1EPa0?i1A0"i1M0AY1E07Uh107h1R9!S0EQ1'7S!RCa0!i1d"M0BYh1E'c9a0?i1A0"i1M0AY1E(B "0,T(Q14`0!g1:0MQ15b90AQ105T1(B -(auto save)". 0,T*Wh1M"M'a0?i1A0"i1M0AY1E0(Q14`0!g1:0MQ15b90AQ105T1(B (auto save file) ,T(P06Y1!05Qi1'cK0Ah1c0Ki1(B -0,TAU10MQ1!"CP(B "#" ,TM0BYh107Qi1'0"i1R'K09i1RaEP0"i1R'K0EQ1'0*Wh1Ma0?i1A0"i1M0AY1E05i19)0:Q1:(B; 0,T5Q1GM0Bh1R'`0*h19(B, 0,T6i1R0*Wh1M"M'(B -,Ta0?i1A0"i1M0AY1E09Qi19`0;g19(B "hello.c", 0,T*Wh1M"M'a0?i1A0"i1M0AY1E0(Q14`0!g1:0MQ15b90AQ105T1(P`0;g19(B "#hello.c#". -,T`0AWh1M07h1R97S!RC0(Q14`0!g1:a0?i1A0"i1M0AY1E04i1GB0GT108U1!RC;C!05T1a0Ei1G(B, 0,TMU1aA!0Jl1(PE:a0?i1A0"i1M0AY1E0(Q14`0!g1:0MQ15b90AQ105T1(B -0,T9Qi19`0JU1B(B. - -0,T6i1R`$0CWh1M'$MA0>T1G`5M0Cl1`0!T140"Q140"i1M'(B, 0,T7h1R9JRARC60!Yi1(B (recover) ,T(R!a0?i1A0"i1M0AY1E0(Q14`0!g1:(B -0,TMQ15b90AQ105T109Qi19d04i104i1GB!RC`0BW1M9a0?i1A0"i1M0AY1Ea::;C!05T1(B (,Ta0?i1A0"i1M0AY1E07Uh107h1R9!S0EQ1'a0!i1d"M0BYh1(B, ,Td0Ah1c0*h1(B -,Ta0?i1A0"i1M0AY1E0(Q14`0!g1:0MQ15b90AQ105T1(B), ,Ta0Ei1G0>T1A0>l1$S0JQh1'(B M-x recover file. ,T`0AWh1M0AU1!RC(B -,T6RA`0>Wh1M!RC0BW190BQ19(B, 0,T>T1A0>l1$S0Gh1R(B yes ,T`0>Wh1M4S`09T19!RC05h1MaEP7S!RC0!Yi10"i1M0AY1E07Uh106Y1!(B -0,T(Q14`0!g1:0MQ15b90AQ105T109Qi19(B. - - -* ,T:0CT1`G3JP07i1M9(B (echo area) ------------------------- - -0,TMU1aA!0Jl10Mh1R9$S0JQh1';CPJA(B (multicharacter command) ,T"3P07Uh107h1R9!S0EQ1'0>T1A0>l1`0"i1Rd;0*i1Rf(B, -0,TMU1aA!0Jl1(PaJ4'$S0JQh1'05h1R'f(B 0,T7Uh107h1R9d04i10>T1A0>l1`0"i1Rd;5C'0Jh1G90Eh1R'"M'K09i1R(M5C':0CT1`G307Uh1`0CU1B!0Gh1R(B -",T:0CT1`G3JP07i1M9(B (echo area)". ,T:0CT1`G3JP07i1M90$W1M:CC07Q140Eh1R'0JX14"M'K09i1R(M(B. - - -* ,T:CC07Q14aJ4'bKA4(B (mode line) ---------------------------- - -,T:CC07Q1407Uh1M0BYh1`K09W1M:0CT1`G3JP07i1M909Qi19`0CU1B!0Gh1R(B "mode line". ,T:CC07Q14aJ4'bKA4(PaJ4'(B -0,T"i1M$GRA:R'M0Bh1R'c90EQ1!I3P(B: - ---:** TUTORIAL (Fundamental)--L670--58%---------------- - -,T:CC07Q1409Ui1c0Ki10"i1M0AY1E07Uh1`0;g19;CPbB*09l1`0!Uh1BG0!Q1:J6R9@R>"M'0MU1aA!0Jl1aEP0"i1M$GRA07Uh107h1R9!S0EQ1'7S!RC(B -,Ta0!i1d"M0BYh1(B. - -0,T7h1R97CR:a0Ei1G0Gh1R0*Wh1Ma0?i1A0"i1M0AY1E0AU1$GRAKARBM0Bh1R'dC(B--0,T$W1Ma0?i1A0"i1M0AY1E07Uh107h1R9d04i1`0BW1M9M0BYh1(B. -NN%-- -0,T:h1':M!5SaK09h1'0;Q1(0(X10:Q19c90"i1M$GRA"M'07h1R9(B; 0,T9Qh19KARB$GRA0Gh1R0AU10"i1M$GRA(B NN ,T`;M0Cl1`+905l107Uh1M0BYh1(B -,T`K09W1M5SaK09h1'0JY1'0JX14"M'K09i1R(M(B. 0,T6i1R5SaK09h1'0JY1'0JX14"M'a0?i1A0"i1M0AY1EM0BYh1:9K09i1R(M(B, ,T(P;CR!/(B ---Top-- ,Ta7907Uh1(P`0;g19(B --00%--. 0,T6i1R5SaK09h1'0Eh1R'0JX14"M'0"i1M$GRAM0BYh1:9K09i1R(M(B, ,T(P;CR!/(B ---Bot--. 0,T6i1R07h1R9!S0EQ1'`0BW1M9a0?i1A0"i1M0AY1E07Uh1`0Eg1!AR!(90"i1M$GRA07Qi1'KA4M0BYh1:9K09i1R(M(B, ,T:CC07Q14(B -,TaJ4'bKA4(PaJ4'0Gh1R(B --All--. - -,T`$0CWh1M'KARB4M!0(Q19:0CT1`G305i19f(B ,T"M':CC07Q14aJ4'bKA4KARB$GRA0Gh1R07h1R9d04i17S!RC(B -,T`;0EUh1B9a;E'`09Wi1MKRc90"i1M$GRAa0Ei1G(B. ,TKR!07h1R9`0>Th1'`0BW1M9K0CW1M0(Q14`0!g1:a0?i1A0"i1M0AY1E(B, 0,TJh1G907Uh1(B -,Td04i1!0Eh1RG06V1'09Qi19(Pd0Ah10AU1`$0CWh1M'KARB4M!0(Q19;CR!/(B, ,T(P0AU1a05h1`0Ji19;CP(B (dashes). - -0,TJh1G907Uh1M0BYh1CPK0Gh1R'G'`0Eg1:@RBc9:CC07Q14aJ4'bKA4(P:M!07h1R90Gh1R07h1R9!S0EQ1'M0BYh1c9bKA4!RCa0!i1d"(B -(editing mode) ,TMPdC(B. ,TbKA4b4B;0CT1BRB(B (default mode) 0,T$W1M(B Fundamental 0,T7Uh1(B -0,T7h1R9!S0EQ1'c0*i1M0BYh1c9"3P09Ui1(B. 0,T9Uh10$W1M05Q1GM0Bh1R'"M'(B ",TbKA4K0EQ1!(B (major mode)". - -0,TMU1aA!0Jl10AU1bKA4K0EQ1!M0BYh1KERBbKA4(B. 0,T:i1R'c0*i1JSK0CQ1:!RCa0!i1d"c9@RIRaEP(B/,TK0CW1M0"i1M$GRA*09T1405h1R'f(B, -,T`0*h19(B Lisp mode, Text mode, ,T`0;g1905i19(B. 0,T7h1R9(PM0BYh1c9bKA4K0EQ1!c4bKA4K0EQ1!K09Vh1'c9`GER(B -,T`04U1BG(B, ,TaEP0*Wh1M"M'bKA4K0EQ1!09Qi19(P;CR!/M0BYh107Uh1:CC07Q14aJ4'bKA4(B, 0,T7Uh107Uh10AU1(B "Fundamental" -,T;CR!/M0BYh1c9"3P09Ui1(B. - -,Ta05h1EPbKA4K0EQ1!(P7Sc0Ki1$S0JQh1'c0Ki1> M-x thai-text-mode - -,Td0Ah105i1M'0!Q1'GE(B, ,T$S0JQh1'07Uh107h1R9!S0EQ1'0HV1!IRM0BYh109Ui1d0Ah1d04i1c0Ki1Wh1M0Mh1R9CRBEP`0MU1B4"M'bKA4K0EQ1!0;Q1(0(X10:Q1907Uh107h1R9M0BYh1(B. - ->> ,Tc0*i1$S0JQh1'(B C-u C-v ,TK09Vh1'$0CQi1'K0CW1MAR!!0Gh1R09Qi19`0>Wh1M07Uh1(P"0BQ1::CC07Q1409Ui10"Vi19d;0BQ1'0Jh1G9:9"M'K09i1R(M(B. ->> 0,T;i1M9$S0JQh1'(B C-h m, ,T`0>Wh1M04Y10Gh1R(B Text mode 0,T5h1R'(R!(B Fundamental mode ,TM0Bh1R'dC(B. ->> 0,T;i1M9$S0JQh1'(B C-x 1 ,T`0>Wh1M"0(Q14`M!JRC0*Ui1a('MM!(R!K09i1R(M(B. - -0,T7Uh1`0CU1B!0Gh1RbKA4K0EQ1!09Qi190!g1`>CRP0Gh1R0AU1bKA40Bh1MB(B (minor mode) 0,TMU1!(B. ,TbKA40Bh1MBd0Ah1d04i1`0;g19(B -0,T5Q1G`0EW1M!c9bKA4K0EQ1!(B, ,T`09Wh1M'(R!0Gh1R0AU1!RC`;0EUh1B9d;`0>U1B'`0Eg1!09i1MB`07h1R09Qi19(B. ,Ta05h1EPbKA40Bh1MBJRARC6(B -,T(P`0;T14K0CW1M0;T14d04i1@RBc905Q1G`M'(B, 0,T$W1Ma05h1EPbKA40Bh1MB(P7S'R9b4B0MT1JCP(R!0!Q19(B, ,TaEP(B -,T`0;g190MT1JCP(R!bKA4K0EQ1!04i1GB(B. ,T)P09Qi1907h1R9JRARC6d0Ah1c0*i1bKA40Bh1MB`EB(B, ,TK0CW1MK09Vh1'bKA40Bh1MB(B, ,TK0CW1M(B -,TbKA40Bh1MBKERBf(B ,TbKA4RPJSK0CQ1:c0*i1a0!i1d"0"i1M$GRA07Uh1`0;g19@RIR0MQ1'!DI(B, 0,T$W1M(B -,TbKA40(Q14:CC07Q140MQ15b90AQ105T1(B (Auto Fill). ,T`0AWh1MbKA409Ui17S'R9(B, 0,TMU1aA!0Jl1(Pa0:h1':CC07Q14CPK0Gh1R'(B -,T$S0MQ15b90AQ105T1(B, 0,T7Q1907U107Uh107h1R9a7C!0"i1M$GRAaEP7Sc0Ki1:CC07Q1409Qi19BRG`0!T19d;(B. - -0,T7h1R9JRARC6`0;T14bKA40(Q14:CC07Q140MQ15b90AQ105T1d04i1b4B!RCc0*i1$S0JQh1'(B M-x auto fill -mode. ,T`0AWh1MbKA409Ui17S'R9M0BYh1(B, 0,T7h1R9JRARC60;T14bKA409Ui1d04i1b4B!RCc0*i1$S0JQh1'(B M-x -auto fill mode. 0,T6i1RbKA409Ui10;T14M0BYh1(B, ,T$S0JQh1'09Ui1(P`0;T14bKA4c0Ki17S'R9(B, ,TaEP06i1R(B -,TbKA409Ui1`0;T14M0BYh1(B, ,T$S0JQh1'09Ui10!g1(P0;T14bKA4(B. 0,T$W1M0>Y14d04i10Gh1R$S0JQh1'09Ui1(B "toggles the mode". - ->> 0,T;i1M9$S0JQh1'(B M-x auto fill mode 0,T4Y1(B. ,Ta0Ei1G0;i1M9(B "asdf " 0,T+i1Sf(B 0,T!Q19d;(9(B - 0,T7h1R9`0Kg190Gh1R:CC07Q1409Qi1906Y1!a0:h1'MM!`0;g19JM':CC07Q14(B. 0,T7h1R905i1M'c0Jh1`0Gi19GCC$`>CRP0Gh1R!RC0(Q14(B - ,T:CC07Q140MQ15b90AQ105T1(Pa0:h1':CC07Q145C'`0Gi19GCC$`07h1R09Qi19(B. - -,T"M:`0> 0,T;i1M9$S0JQh1'(B C-x f ,T>0Ci1MA04i1GBMR0Cl10!T1G`A905l1(B 20. (C-u 2 0 C-x f). - ,Ta0Ei1G0;i1M90"i1M$GRAaEP(P`0Kg190Gh1R0MU1aA!0Jl10(Q14:CC07Q1407Uh10AU1"9R4(B 20 0,T5Q1G0MQ1!IC(B. ,Ta0Ei1G05Qi1'"M:(B - ,T`0> ,T`$0EWh1M9`$M0Cl1`+M0Cl1`0"i1Rd;0BQ1'0Bh1MK09i1R0"i1R':9(B, ,Ta0Ei1G0;i1M9$S0JQh1'(B M-q. - - -* ,T!RC0JW1:0$i19(B (searching) ---------------------- - -0,TMU1aA!0Jl1JRARC60JW1:0$i19JRB0MQ1!"CP(B (,T!0EXh1A"M'05Q1G0MQ1!ICK0CW1M$S07Uh1M0BYh105h1M`09Wh1M'0!Q19(B) ,Td0Ah10Gh1R(Pd;(B -0,T"i1R'K09i1RK0CW1M0Bi1M9!0EQ1:(B, 0,T7Qh1G07Qi1'0"i1M$GRA(B. ,T!RC0JW1:0$i19JRB0MQ1!"CP0$W1M$S0JQh1'c9!RC`$0EWh1M95SaK09h1'(B -,T"M'`$M0Cl1`+M0Cl1(B; ,T`$M0Cl1`+M0Cl1(P`$0EWh1M9d;M0BYh107Uh15SaK09h1'06Q14d;07Uh10AU1JRB0MQ1!"CP09Qi19M0BYh1(B. - -,T$S0JQh1'0JW1:0$i19c90MU1aA!0Jl105h1R'(R!$S0JQh1'0JW1:0$i19c9b;Ca!CA:CC3R08T1!C03l1(B (editor) 0,TJh1G9cK0-h1(B, ,Tc9(B -0,TEQ1!I3P07Uh1`0;g19(B "incremental". 0,T9Uh1KARB$GRA0Gh1R!RC0JW1:0$i19`0CTh1A05Qi1'a05h107Uh107h1R9d04i10;i1M90MQ1!"CP07Uh1(B -0,T5i1M'!RC0JW1:0$i19(B. - -,T$S0JQh1'07Uh1c0*i1`0>Wh1Mc0Ki17S!RC0JW1:0$i19d;0"i1R'K09i1R0$W1M(B C-s, ,TaEP7S!RC0JW1:0$i190Bi1M9d;0"i1R'K0EQ1'0$W1M(B -C-r. ,Ta05h1$MB0!h1M9(B! ,TM0Bh1R`0>Th1'EM'(B. - -,T`0AWh1M07h1R90;i1M9$S0JQh1'(B C-s 0,T7h1R9(P0JQ1'`!5`0Kg190Gh1R0AU1$S0Gh1R(B "I-search" ,T;CR!/07Uh1:0CT1`G3JP07i1M9(B -(echo area). 0,T9Uh1aJ4'0Gh1R0MU1aA!0Jl1d04i1M0BYh1c9!RC0$i19a::(B incremental ,TaEP!S0EQ1'CM(B -0,TJTh1'07Uh107h1R9(P0>T1A0>l1`0>Wh1M0JW1:0$i19(B. ,T!40;Xh1A(B ,T`0>Wh1M0JTi190JX14$S0JQh1'0JW1:0$i19(B. - ->> 0,T;i1M9$S0JQh1'(B C-s ,T`0>Wh1M`0CTh1A!RC0JW1:0$i19(B. 0,T>T1A0>l10MQ1!IC07U1EP05Q1G0*i1Rf(B, 0,T>T1A0>l1$S0Gh1R(B 'cursor', - ,TK0BX14K0EQ1'(R!07Uh107h1R90>T1A0>l107U1EP05Q1G0MQ1!IC(B, ,Ta0Ei1G04Y10Gh1R0AU1MPdC`0!T140"Vi190!Q1:`$M0Cl1`+M0Cl1(B. - ,T"3P09Ui107h1R9d04i10JW1:0$i19$S0Gh1R(B "cursor" ,Td;K09Vh1'K9a0Ei1G(B. ->> 0,T;i1M9$S0JQh1'(B C-s 0,TMU1!$0CQi1'(B, ,T`0>Wh1M0JW1:0$i195SaK09h1'06Q14d;"M'$S0Gh1R(B "cursor". ->> ,T!40;Xh1A(B 0,TJQ1!0JUh1$0CQi1'(B, ,Ta0Ei1G04Y10Gh1R`$M0Cl1`+M0Cl1`$0EWh1M907Uh1M0Bh1R'dC(B. ->> ,T!40;Xh1A(B ,T`0>Wh1M0JTi190JX14$S0JQh1'0JW1:0$i19(B. - -0,T7h1R9`0Kg19K0CW1Md0Ah10Gh1R0AU1MPdC`0!T140"Vi19(B? ,Tc9!RC0JW1:0$i19a::(B incremental, 0,TMU1aA!0Jl1>BRBRA(B -,T`$0EWh1M9d;5RAJRB0MQ1!"CP07Uh107h1R9d04i10>T1A0>l1E'd;c9a05h1EP$0CQi1'(B. 0,T6i1R(P`$0EWh1M9d;0BQ1'5SaK09h1'(B -0,T6Q14d;"M'$S(B, 0,T!g17Sd04i1b4B!RC0;i1M9$S0JQh1'(B C-s 0,TMU1!$0CQi1'(B. 0,T6i1Rd0Ah10AU1$S09Qi190MU1!a0Ei1G(B, 0,TMU1aA!0Jl1(P0Ci1M'(B -,T:M!(B (beep) 0,T7h1R90Gh1R!RC0JW1:0$i19$0CQi1'09Qi19(B ",T>ER4(B (failing)", ,T$S0JQh1'(B C-g 0,T!g1JRARC6c0*i1c9(B -,T!RC0JTi190JX14!RC0JW1:0$i19d04i1(B. - -0,T"i1M0JQ1'`!5(B: ,Tc9:R'CP::(B, ,T!RC0;i1M9$S0JQh1'(B C-s ,T(P7Sc0Ki1CP::"M'07h1R9*P0'Q1!aEP07h1R9(Pd0Ah1`0Kg19(B -0,T"i1M$GRAMPdC:90MU1aA!0Jl1(B. 0,TEQ1!I3P09Ui1aJ4'0Gh1R(B "feature" ,T"M'CP::;0/T10:Q105T1!RC(B, 0,T7Uh1`0CU1B!0Gh1R(B -"flow control" 0,T9Qi19(B, ,Td04i10"Q14"GR'!RC7S'R9"M'$S0JQh1'(B C-s ,TaEPd0Ah1BMAc0Ki1!0EQ1:0JYh10MU1aA!0Jl1(B -0,TMU1!(B. ,T!RC07Uh1(Pa0!i1d"!RCK0BX14*P0'Q1!09Qi19(B, ,Tc0Ki10;i1M9$S0JQh1'(B C-q. 0,THV1!IR0GT108U1!RC0(Q14!RC0!Q1:(B "feature" -0,T9Ui1d04i107Uh1:707Uh10Gh1R04i1GB(B "Spontaneous Entry to Incremental Search" ,Tc90$Yh10AW1M"M'0MU1aA!0Jl1(B. - -0,T6i1R07h1R9M0BYh1CPK0Gh1R'!RC0JW1:0$i19a::(B incremental ,TM0BYh1(B, ,Ta0Ei1G07h1R9!40;Xh1A(B , 0,T7h1R9(P(B -0,TJQ1'`!5`0Kg190Gh1R05Q1G0MQ1!IC0JX1407i1RB07Uh107h1R90;i1M9`0"i1Rd;09Qi1906Y1!E:MM!(B, ,TaEP(P0Bi1M9!0EQ1:d;0BQ1'5SaK09h1'(B -0,T!h1M9K09i1R"M'!RC0JW1:0$i19(B. 0,T5Q1GM0Bh1R'`0*h19(B, ,TJA0AX105T10Gh1R07h1R9d04i10;i1M905Q1G0MQ1!IC(B "c", ,T`0>Wh1M07Uh1(P0JW1:0$i19(B -,T5SaK09h1'07Uh1;CR!/05Q1G0MQ1!IC(B "c" 0,T9Qi19(B. ,T5M909Ui106i1R07h1R90>T1A0>l105Q1G0MQ1!IC(B "u", ,T`$M0Cl1`+M0Cl10!g1(P(B -,T`$0EWh1M9d;M0BYh107Uh15SaK09h1'07Uh1;CR!/JRB0MQ1!"CP(B "cu" ,TaC!0JX14(B. ,T5M909Ui1c0Ki1!40;Xh1A(B . -0,T5Q1G0MQ1!IC(B "u" ,T(P06Y1!E:MM!(R!JRB0MQ1!"CP07Uh17S!RC0JW1:0$i19M0BYh1(B, ,TaEP`$M0Cl1`+M0Cl10!g1(P`$0EWh1M9(B -,T!0EQ1:d;0BQ1'5SaK09h1'07Uh1;CR!/05Q1G0MQ1!IC(B "c" ,TaC!0JX14(B. - -0,T6i1R07h1R9M0BYh1CPK0Gh1R'!RC0JW1:0$i19(B, ,Ta0Ei1G0;i1M9$S0JQh1';CPJA"M'(B CONTROL ,TK0CW1M(B META (,T9M!(R!(B -0,T"i1MB!`0Gi19:R';CP!RC(B--,T$S0JQh1'0>T1`HI07Uh1c0*i1JSK0CQ1:!RC0JW1:0$i19(B, ,Td04i1a0!h1(B C-s ,TaEP(B C-r), ,T!RC0JW1:(B -0,T$i19(P0JTi190JX14E'(B. - -,T$S0JQh1'(B C-s ,T`0CTh1A!RC0JW1:0$i1904i1GB!RCAM'KRJRB0MQ1!"CP05Qi1'a05h15SaK09h1'0;Q1(0(X10:Q19"M'`$M0Cl1`+M0Cl1(B. -0,T6i1R07h1R905i1M'!RC0JW1:0$i19JRB0MQ1!"CP07Uh1M0BYh10!h1M9K09i1Rc90"i1M$GRA09Qi19(B, ,Tc0Ki10;i1M9$S0JQh1'(B C-r ,Ta79(B. -,T$S0JQh1'(B C-s ,T(P7S'R9`K0AW1M90!Q1:$S0JQh1'(B C-r 0,T7X1!M0Bh1R'(B, ,TB!`0Gi1907T1H7R'"M'!RC0JW1:0$i19(B -,T`07h1R09Qi19(B, 0,T7Uh15C'0"i1RA0!Q19(B. - - -* 0,TGT19b40Gl1a::KERB0GT19b40Gl1(B (multiple windows) --------------------------------------- - -0,TEQ1!I3P07Uh109h1RJ9c(0MQ19K09Vh1'"M'0MU1aA!0Jl10!g10$W1M(B, 0,T7h1R9JRARC6aJ4'> ,T`$0EWh1M9`$M0Cl1`+M0Cl1AR07Uh1:CC07Q1409Ui1(B, ,Ta0Ei1G0;i1M9$S0JQh1'(B C-u 0 C-l. - ->> 0,T5h1Md;(B, 0,T;i1M9$S0JQh1'(B C-x 2 0,T+Vh1'(Pa0:h1'K09i1R(MMM!`0;g19JM'0GT19b40Gl1(B. - 0,T7Qi1'JM'0GT19b40Gl1aJ4'0$Yh10AW1M!RCc0*i109Ui1(B. ,T`$M0Cl1`+M0Cl1;CR!/M0BYh1c90GT19b40Gl1:9(B. - ->> 0,T;i1M9$S0JQh1'(B C-M-v ,T`0>Wh1M`$0EWh1M90Ai1G90GT19b40Gl10"i1R'0Eh1R'(B. - (0,T6i1R07h1R9d0Ah10AU10;Xh1A(B META, 0,T;i1M9$S0JQh1'(B ESC C-v ,Ta79(B.) - ->> 0,T;i1M9$S0JQh1'(B C-x o ("o" ,TKARB06V1'(B "other") ,T`0>Wh1M`$0EWh1M9`$M0Cl1`+M0Cl1AR0BQ1'0GT19b40Gl10Eh1R'(B. ->> ,Tc0*i1$S0JQh1'(B C-v ,TaEP(B M-v ,Tc90GT19b40Gl10Eh1R'`0>Wh1M07Uh1(P`$0EWh1M90Ai1G9(B. - 0,TMh1R9$Sa9P9S09Ui104i1GB0GT19b40Gl1:9(B. - ->> 0,T;i1M9$S0JQh1'(B C-x o 0,TMU1!$0CQi1'`0>Wh1M07Uh1(P`$0EWh1M9`$M0Cl1`+M0Cl1!0EQ1:d;0GT19b40Gl1:9(B. - ,T`$M0Cl1`+M0Cl1c90GT19b40Gl1:9(P;CR!/5C'07Uh107Uh1`$B;CR!/(B. - -0,T7h1R9JRARC6c0*i1$S0JQh1'(B C-x o ,T`0>Wh1MJ0EQ1:d;ARCPK0Gh1R'0GT19b40Gl1(B. ,Ta05h1EP0GT19b40Gl10AU15SaK09h1'"M'(B -,T`$M0Cl1`+M0Cl1"M'05Q1G`M'(B, ,Ta05h1(P0AU1`0>U1B'0GT19b40Gl1`04U1BG`07h1R09Qi1907Uh1aJ4'05Q1G`$M0Cl1`+M0Cl1(B. 0,T7X1!$S0JQh1'0!g1(P(B -0,TAU1Wh1M!RC0Mi1R'0MT1'(B. 0,T7h1R9JRARC6c0Ki1`$M0Cl1`+M0Cl1;CR!/:90GT19b40Gl107Uh107h1R9!S0EQ1'a0!i1d"M0BYh15EM4`GER(B, -,Ta0Ei1G`$0EWh1M95SaK09h1'"M'0MU1!0GT19b40Gl1K09Vh1'04i1GB$S0JQh1'(B C-M-v. - -,T$S0JQh1'(B C-M-v ,T`0;g1905Q1GM0Bh1R'K09Vh1'"M'$S0JQh1';CPJA(B CONTROL-META. 0,T6i1R07h1R90AU10;Xh1A(B META, -0,T7h1R9JRARC60;i1M9$S0JQh1'(B C-M-v ,Tb4B!RC!40;Xh1A(B CONTROL ,TaEP(B META ,T"3P07Uh1!40;Xh1A0MQ1!"CP(B -v. ,Td0Ah10Gh1R(P!40;Xh1A(B CONTROL ,TK0CW1M(B META 0,T!h1M90!g1d0Ah10AU10;Q1-KRMPdC(B, ,T`>CRP0Gh1R07Qi1'JM'0;Xh1A`0;g190;Xh1A(B -,T"BRB"M'0;Xh1A0MQ1!"CP07Uh107h1R9(P!4(B. - -0,T6i1R07h1R9d0Ah10AU10;Xh1A(B META, ,TaEP07h1R9c0*i10;Xh1A(B ESC ,Ta79(B, ,TES04Q1:"M'!RC!40;Xh1A(P0AU1CRP0Gh1R$S0JQh1'(B CONTROL-ESC v ,T(Pd0Ah1(B -,T7S'R9(B. 0,T7Qi1'09Ui1`>CRP0Gh1R0;Xh1A(B ESC ,T`0;g190MQ1!"CP05Q1GK09Vh1'(B, ,Td0Ah1c0*h10;Xh1A"BRB(B. - ->> 0,T;i1M9$S0JQh1'(B C-x 1 (,Tc90GT19b40Gl1:9(B) ,T`0>Wh1M!S0(Q140GT19b40Gl10Eh1R'(B. - -(0,T6i1R07h1R90;i1M9$S0JQh1'(B C-x 1 ,Tc90GT19b40Gl10Eh1R'(B, 0,TGT19b40Gl1:90!g1(PKRBd;(B. 0,T7h1R9JRARC6(S(B -,T$S0JQh1'09Ui1d04i1b4B0$T140Gh1R(B ",T`K0EW1Md0Gi1`0>U1B'K09Vh1'0GT19b40Gl1(B--0,TGT19b40Gl107Uh1M0BYh1c9"3P09Ui1(B.") - -0,T7h1R9d0Ah1(S`0;g1905i1M'aJ4'Wh1M0$i19KRa0?i1A0"i1M0AY1Ec90GT19b40Gl1K09Vh1'(B, 0,TMU1!0GT19b40Gl1K09Vh1'(Pd0Ah1`;0EUh1B9a;E'(B. 0,T7h1R9JRARC60$i19KR(B -,Ta0?i1A0"i1M0AY1Ec9a05h1EP0GT19b40Gl1d04i10MT1JCP05h1M0!Q19(B. - -0,T5h1Md;`0;g190MU1!0GT108U1K09Vh1'"M'!RCc0*i1JM'0GT19b40Gl1JSK0CQ1:aJ4'> 0,T;i1M9$S0JQh1'(B C-x 4 C-f ,Ta0Ei1G5RA04i1GB0*Wh1Ma0?i1A0"i1M0AY1E(B. 0,TJTi190JX14$S0JQh1'04i1GB!RC!40;Xh1A(B - . ,T(P`0Kg190Gh1R0AU1a0?i1A0"i1M0AY1E07Uh105i1M'!RC;CR!/M0BYh1c90GT19b40Gl10Eh1R'(B. ,T`$M0Cl1`+M0Cl10!g1(Pd;(B - ,T;CR!/07Uh10GT19b40Gl109Qi1904i1GB(B. - ->> 0,T;i1M9$S0JQh1'(B C-x o ,T`0>Wh1M!0EQ1:d;0BQ1'0GT19b40Gl1:9(B, ,Ta0Ei1G0;i1M9$S0JQh1'(B C-x 1 ,T`0>Wh1M!S0(Q140GT19b40Gl10Eh1R'(B. - - -* ,TCP04Q1:"M'!RCa0!i1d"a::`0CU1B!0+i1S(B (recursive editing levels) -------------------------------------------------------- - -,T:R'$0CQi1'07h1R9MR((P`0"i1Rd;M0BYh1c9(B ",TCP04Q1:"M'!RCa0!i1d"a::!RC`0CU1B!0+i1S(B (recursive editing -level)". ,TJ@R>04Q1'!0Eh1RG`0*h1909Ui1aJ4'04i1GBG'`0Eg1:0!i1RA0;Y1c9:CC07Q14aJ4'bKA4(B, 0,TEi1MACM:G'`0Eg1:07Uh1(B -,TaJ4'0*Wh1M"M'bKA4K0EQ1!(B. 0,T5Q1GM0Bh1R'`0*h19(B, 0,T7h1R9MR((P`0Kg19(B [(Fundamental)] ,Ta7907Uh1(P`0;g19(B -(Fundamental). - -,Tc9!RC07Uh1(PMM!(R!CP04Q1:"M'!RCa0!i1d"a::`0CU1B!0+i1S(B, ,T!40;Xh1A(B ESC ESC ESC. 0,T9Uh1`0;g19(B -,T$S0JQh1'07Uh1c0*i1d04i107Qh1Gd;c9!RCMM!(R!CP04Q1:c4f(B ,T"M'!RC;CPAGET1`HI0MWh19f(B, ,TCGA07Qi1'!RCMM!(R!0AT109T10:Q1?`?M0Cl1(B (minibuffer). - ->> 0,T;i1M9$S0JQh1'(B M-x ,T`0>Wh1M`0"i1Rd;c90AT109T10:Q1?`?M0Cl1(B; ,T!40;Xh1A(B ESC ESC ESC ,T`0>Wh1MMM!(R!(B - 0,TAT109T10:Q1?`?M0Cl109Qi19(B. - -0,T7h1R9d0Ah1JRARC6c0*i1$S0JQh1'(B C-g ,T`0>Wh1MMM!(R!CP04Q1:"M'!RCa0!i1d"a::`0CU1B!0+i1S(B. -,T`>CRP0Gh1R$S0JQh1'(B C-g ,Tc0*i1`0>Wh1MB!`0ET1!$S0JQh1'aEPMR0Cl10!T1G`A905l1@RBc9CP04Q1:"M'!RCa0!i1d"a::(B -,T`0CU1B!0+i1S(B. - - -* ,T!RC`0CU1B!04Y10"i1M$GRA0*h1GB`K0EW1M`0>Th1A`05T1A(B (getting more help) -------------------------------------------------- - -,Tc90$Yh10AW1M09Ui1`CR>BRBRA07Uh1(Pc0Ki10"i1M0AY1E07Uh1`0>U1B'>MJSK0CQ1:!RC`0CTh1Ac0*i10MU1aA!0Jl1(B. 0,TBQ1'$'0AU10"i1M0AY1E0MU1!AR!c9(B -0,TMU1aA!0Jl10+Vh1'`CRd0Ah1JRARC607Uh1(P9SARM08T1:RBd0Gi1c907Uh109Ui1d04i107Qi1'KA4(B. ,TM0Bh1R'dC0!g15RA(B, 0,T7h1R9MR(05i1M'!RC(B -,T`0CU1B90CYi1`0!Uh1BG0!Q1:0MU1aA!0Jl1`0>Th1A`05T1A`>CRP0MU1aA!0Jl10BQ1'0AU10$X13JA0:Q105T10MU1!AR!ARB(B. 0,TMU1aA!0Jl1d04i1`50CU1BA$S0JQh1'(B -,TJSK0CQ1:`0CU1B!04Y1`09Wi1MKR`0!Uh1BG0!Q1:$S0JQh1'"M'0MU1aA!0Jl1(B. ,T$S0JQh1'(B "0,T*h1GB`K0EW1M(B (help)" 0,T7Qi1'KA4`0CTh1A04i1GB(B -0,TMQ1!"CP(B CONTROL-h, 0,T+Vh1'`0CU1B!0Gh1R(B "0,TMQ1!"CP0*h1GB`K0EW1M(B (the Help character)". - -,Tc9!RC07Uh1(Pc0*i10$X13JA0:Q105T10*h1GB`K0EW1M(B, 0,T;i1M90MQ1!"CP(B C-h, ,Ta0Ei1G5RA04i1GB0MU1!K09Vh1'0MQ1!"CP`0>Wh1M:M!0Gh1R(B -0,T7h1R905i1M'!RC$S0*h1GB`K0EW1MMPdC(B. 0,T6i1R07h1R9d0Ah17CR:0Gh1R(P7SMPdC05h1Md;(B, 0,T;i1M9$S0JQh1'(B C-h ? ,Ta0Ei1G(B -0,TMU1aA!0Jl1(P:M!07h1R90Gh1R0AU1$S0*h1GBMPdC07Uh10MU1aA!0Jl1JRARC6(Pc0Ki1d04i1(B. 0,T6i1R07h1R90;i1M9$S0JQh1'(B C-h ,Ta0Ei1G(B -0,T5i1M'!RCB!`0ET1!07h1R9(B, 0,T!g1JRARC6B!`0ET1!d04i1b4Bc0*i1$S0JQh1'(B C-g. - -(,Tc9:R'CP::09Qi19(B, ,T$GRAKARB"M'0MQ1!"CP(B C-h ,Td04i106Y1!`;0EUh1B9d;(B. 0,T+Vh1'b4B$GRA`0;g19(0CT1'a0Ei1Gd0Ah1(B -,T$GC(P7S`0*h1909Ui1(B, 0,T7Qi1'09Ui107h1R9MR((P0*Ui1a('05h1M0RPK09i1R(B, 0,T6i1R(B -,T$S0JQh1'(B C-h ,Td0Ah1d04i1aJ4'0"i1M$GRA`0!Uh1BG0!Q1:$S0*h1GB`K0EW1M07Uh10Jh1G90Eh1R'"M'K09i1R(M09Qi19(B, ,Tc0Ki1EM'!40;Xh1A(B F1 -,TK0CW1M(B M-x help ,Ta79(B.) - -0,T$X13JA0:Q105T1`0:Wi1M'05i19"M'$S0JQh1'0*h1GB`K0EW1M0$W1M$S0JQh1'(B C-h c. ,TEM'0;i1M9$S0JQh1'(B C-h, 0,TMQ1!"CP(B c, ,Ta0Ei1G(B -,T5RA04i1GB0MQ1!"CPK0CW1MJRB0MQ1!"CP(B; ,Ta0Ei1G0MU1aA!0Jl1(PaJ4'$SM08T1:RB"M'$S0JQh1'09Qi19b4B0JQ1'`";(B. - ->> 0,T;i1M9$S0JQh1'(B C-h c CONTROL-p. - 0,T"i1M$GRA07Uh1;CR!/(P`0;g1904Q1'05h1Md;09Ui1(B - - C-p runs the command previous-line - -0,T9Uh1`0;g19!RC:M!(B "0,T*Wh1M0?Q1'0!l10*Q19"M'$S0JQh1'(B" 0,T9Qi19(B. 0,T*Wh1M"M'0?Q1'0!l10*Q19c0*i1`0>Wh1M!RC;0CQ1:aEPa05h1'`05T1A0MU1aA!0Jl1(B. -,Ta05h1`09Wh1M'(R!0*Wh1M"M'0?Q1'0!l10*Q1909Qi1905Qi1'`0>Wh1M0*Ui1:M!0Gh1R$S0JQh1'09Qi197S'R9M0Bh1R'dC(B, 0,T+Vh1'MR(`0;g1905Q1G0*h1GB:M!(B -,T$SM08T1:RBb4B0JQ1'`";d04i1(B--,TMR(`0>U1B'>M07Uh1(P`05W1M9c0Ki107h1R909V1!06V1'$S0JQh1'07Uh105i1M'!RCd04i1(B. - -,T$S0JQh1'07Uh1;CP!M:04i1GBKERB0MQ1!"CP(B ,T`0*h19$S0JQh1'(B C-x C-s ,TaEP(B (0,T6i1R07h1R9d0Ah10AU10;Xh1A(B META ,TK0CW1M(B -EDIT ,TK0CW1M(B ALT) ,T$S0JQh1'(B v ,TJRARC6c0*i15RAK0EQ1'$S0JQh1'(B C-h c. - -,T!RC07Uh1(P`0CU1B!04Y10"i1M0AY1E`0>Th1A`0!Uh1BG0!Q1:$S0JQh1'(B, ,Tc0Ki1c0*i1$S0JQh1'(B C-h k ,Ta79$S0JQh1'(B C-h c. - ->> 0,T;i1M9$S0JQh1'(B C-h k CONTROL-p. - -0,T9Uh1`0;g19!RCaJ4'0Ci1MA0!Q1:0*Wh1M"M'$S0JQh1'09Qi19(B, ,Tc90GT19b40Gl1K09Vh1'"M'0MU1aA!0Jl1(B. -,T`0AWh1M07h1R90Mh1R9`J0Cg1(a0Ei1G(B, 0,T;i1M9$S0JQh1'(B C-x 1 ,T`0>Wh1M!S0(Q140"i1M$GRA"M'$S0*h1GB`K0EW1M(B. 0,T7h1R9d0Ah1(B -,T(S`0;g1907Uh1(P05i1M'7S07Q1907U1(B. 0,T7h1R9MR(7S!RCa0!i1d""3P07Uh104Y10"i1M$GRA$S0*h1GB`K0EW1M09Qi19M0BYh1(B, ,Ta0Ei1G(B -0,T$h1MB0;i1M9$S0JQh1'(B C-x 1. - -0,T5h1Md;09Ui1`0;g1905Q1G`0EW1M!07Uh1`0;g19;CPbB*09l1(B: - - C-h f ,TM08T1:RB0?Q1'0!l10*Q19(B. 0,T>T1A0>l10*Wh1M0?Q1'0!l10*Q1907Uh105i1M'!RC7CR:5RAE'd;(B. - ->> ,TEM'0;i1M9$S0JQh1'(B C-h f previous-line. - 0,T9Uh1`0;g19!RC07Uh1(P7Sc0Ki10MU1aA!0Jl10>T1A0>l10"i1M0AY1E07Qi1'KA407Uh10AU1`0!Uh1BG0!Q1:0?Q1'0!l10*Q19"M'$S0JQh1'(B C-p. - - C-h a ,T$S0JQh1'$GRA07Uh1`KARPJA(B (Command Apropos). 0,T;i1M9$SK0EQ1!(B (keyword) - ,Ta0Ei1G0MU1aA!0Jl1(PaJ4'CRB!RC"M'$S0JQh1'07Qi1'KA407Uh10AU1$SK0EQ1!;CP!M:M0BYh1(B. - ,T$S0JQh1'`K0Eh1R09Ui1(P`0CU1B!c0*i1d04i104i1GB$S0JQh1'(B META-x. - ,TJSK0CQ1::R'$S0JQh1'(B, ,T$S0JQh1'$GRA07Uh1`KARPJA(B (Command Apropos) ,T(P(B - ,TaJ4'CRB!RC"M'$S0JQh1'07Uh1;CP!M:04i1GBK09Vh1'K0CW1MJM'JRB0MQ1!"CP07Uh1c0*i1`0CU1B!(B - ,T$S0JQh1'`04U1BG0!Q1904i1GB(B. - ->> 0,T;i1M9$S0JQh1'(B C-h a file. - -0,T9Uh1`0;g19!RCaJ4'CRB!RC"M'$S0JQh1';CP!M:"M'(B M-x 0,T!Q1:(B "file" ,Tc90*Wh1M"M'$S0JQh1'(B -0,T7Qi1'KA4c90MU1!K09i1R(M(B. 0,T7h1R9(P`0Kg19$S0JQh1';CP!M:0MQ1!"CP(B (character-command) ,T`0*h19(B C-x -C-f ,TaJ4'M0BYh10!Q1:0*Wh1M"M'$S0JQh1'09Qi19f(B ,T`0*h19(B find-file. - ->> 0,T;i1M9$S0JQh1'(B C-M-v ,T`0>Wh1M`$0EWh1M90Ai1G90GT19b40Gl1$S0*h1GB`K0EW1M(B (help window). ,TEM'7S04Y10JQ1!(B - ,TJM'JRA$0CQi1'(B. - ->> 0,T;i1M9$S0JQh1'(B C-x 1 ,T`0>Wh1M!S0(Q140GT19b40Gl1$S0*h1GB`K0EW1M(B. - - -* ,TJ0CX1;(B ------ - -0,TJTh1'$GC(Sd0Gi10$W1M(B, ,T$S0JQh1'(B C-x C-c ,Tc0*i1JSK0CQ1:MM!(R!0MU1aA!0Jl1M0Bh1R'6RGC(B. 0,T6i1R05i1M'!RCMM!d;0BQ1'(B -,T`*E0El10*Qh1G$CRG(B, ,TaEPJRARC6!0EQ1:AR0BQ1'0MU1aA!0Jl1d04i10MU1!09Qi19(B, ,Tc0Ki1c0*i1$S0JQh1'(B C-z. - -0,T$Yh10AW1M!RCc0*i109Ui10AU1`(59Rc0Ki10Th1'`0CTh1Ac0*i107Qi1'KERBJRARC6`0"i1Rc(d04i1(B, 0,T4Q1'09Qi1906i1R07h1R9>::R'0JTh1'07Uh1d0Ah1(B -0,T*Q14`(9(B, ,Td0Ah105i1M'09Qh1'5SK09T105Q1G`M'(B - ,TJM:6RAARd04i1`EB(B! - - -* ,T!RC7SJS`9R(B (copying) ----------------------- - -0,T$Yh10AW1M09Ui1d04i10CQ1:!RC0>Q129RAR`0;g19CPBP`GER9R9(B, ,T`0CTh1A05Qi1'a05h105i19)0:Q1:07Uh1`0"U1B9b4B(B Stuart Cracraft. - -0,T$Yh10AW1M`GM0Cl10*Q1909Ui1(B, ,T`0*h19`04U1BG0!Q1:(B GNU Emacs, ,Td04i10CQ1:!RCJ'G90JT1708Tl1(B, ,TaEP<9G!d0Gi1c9`0'Wh1M9d"c9(B -,T!RC`0Ch104i1GB(B: - -,TJ'G90ET1"0JT1708Tl1(B ,T>(B.,TH(B. 2528, 2529 ,Tb4B?0CU1+M?05l1aG0Cl1?RG09l1`40*Q19(B (Free Software Foundation) - - 0,T7X1!07h1R90AU10JT1708Tl1c9!RC7SJS`9RK0CW1M`0Ch1`M!JRC09Ui1(B, ,Tc907X1!0JWh1M(B, ,Tb4B05i1M'a9:0"i1M$GRAaJ4'(B - 0,TJT1708Tl1aEP!RCM09X1-R509Ui1d;>0Ci1MA04i1GB(B. 0,T7Qi1'09Ui1`0>Wh1M0*Ui1c0Ki1`0Kg190Gh1R00Ch1d04i1M09X1-R5c0Ki100Ch105h1Md;d04i1b4BMR0HQ1B0"i1M$GRAc9`M!JRC09Ui1(B. - - ,T!RCM09X1-R509Qi19d04i1CGA06V1'0JT1708Tl1c9!RC`0Ch1`GM0Cl10*Q1907Uh1;0CQ1:;0CX1'a0Ei1G(B, ,TK0CW1M0Jh1G9K09Vh1'"M'(B - ,T`M!JRC09Ui1(B, ,T@RBc05i1`0'Wh1M9d"0"i1R':9(B, ,T5EM4(90JT1708Tl1c9!RC:M!0Gh1Rc$C`0;g1900Ch1JS`9R"M'(B GNU Emacs ,Td;0BQ1'`0>Wh1M9f(B ,T"M'07h1R904i1GB(B. -0,T*h1GB0!Q197SERBCP::KG'+M?05l1aG0Cl1(B (",TaJ4'$GRA`0;g19`0(i1R0"i1RG`0(i1R"M'(B") 0,T4i1GB!RCc0*i1(B, -,T!RC`0"U1B9(B, ,TaEP!RC`0;g19`0(i1R"M'0Ch1GA0!Q19"M'+M?05l1aG0Cl1`J0CU1(B (free software). - - -* 0,T5i19)0:Q1:0Gh1R04i1GB`0CWh1M'!RC7SJS`9R(B --------------------------- - -0,T5h1Md;09Ui1`0;g19`M!JRC0Gh1R04i1GB`0CWh1M'!RC7SJS`9R07Uh1`0;g1905i19)0:Q1:(B. ,T`M!JRC09Ui1;CR!/M0BYh1c90$Yh10AW1M!RCc0*i1(B -0,TMU1aA!0Jl1)0:Q1:@RIR0MQ1'!DI(B, 0,T+Vh1'`0;g1905i19)0:Q1:"M'`M!JRCa;E)0:Q1:09Ui104i1GB(B. - -This tutorial descends from a long line of Emacs tutorials -starting with the one written by Stuart Cracraft for the original Emacs. - -This version of the tutorial, like GNU Emacs, is copyrighted, and -comes with permission to distribute copies on certain conditions: - -Copyright (C) 1985, 1996, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 Free Software Foundation, Inc. - - Permission is granted to anyone to make or distribute verbatim copies - of this document as received, in any medium, provided that the - copyright notice and permission notice are preserved, - and that the distributor grants the recipient permission - for further redistribution as permitted by this notice. - - Permission is granted to distribute modified versions - of this document, or of portions of it, - under the above conditions, provided also that they - carry prominent notices stating who last altered them. - -The conditions for copying Emacs itself are more complex, but in the -same spirit. Please read the file COPYING and then do give copies of -GNU Emacs to your friends. Help stamp out software obstructionism -("ownership") by using, writing, and sharing free software! - - -* ,T$S0Jh1'07i1RB(B ---------- - -0,T$Yh10AW1M)0:Q1:09Ui1d04i1a;E(R!05i19)0:Q1:07Uh1`0;g19@RIR0MQ1'!DI(B, 0,T+Vh1'(P;CR!/M0BYh1c90MU1aA!0Jl1`GM0Cl10*Q19(B 20.4. -0,T(B ,TG'0Hl1(B -,TJRB0JX1GCC3(B, ,Td04i10MT1'0$Yh10AW1M"M'0MU1aA!0Jl1`GM0Cl10*Q19`0!h1R(B, ,TaEP"3P09Ui10MU1aA!0Jl1`GM0Cl10*Q19(B 20.4 0,T!g1d04i1(B -,T`;0EUh1B9a;E'd;AR!a0Ei1G(B. ,T9M!(R!09Ui1(B, 0,TWh1M07Uh1(P`0"U1B9c0Ki1d04i1$GRA07Uh10*Q14`(9(B. ,TK0GQ1'`0;g19M0Bh1R'0BTh1'0Gh1R0$Yh10AW1M)0:Q1:09Ui1(P`0;g19;CPbB*09l1(B -,TaEP(Pd04i10CQ1:!RCa0!i1d"c0Ki104U10BTh1'f(B 0,T"Vi190MU1!05h1Mf(B ,Td;(B. ,T"M"M:0$X13(B 0,T$X1307Q1H09U10Bl1(B ,T`(0CT1->C(B 0,T7Uh1c0Ki1$GRA(B -0,T*h1GB`K0EW1M5CG(JM:05i19)0:Q1:(B. - -22 ,TA!CR$A(B 2542 -0,TGT10CQ1*(B ,THC`0ET1H0Ei1SGR03T1*(B -virach@nectec.or.th - -Translate - January 1999 by Virach Sornlertlamvanich - -;;; Local Variables: -;;; sentence-end-double-space: nil -;;; End: - -;;; arch-tag: 79ad252a-448a-4dc9-a4cb-2097dd1ec014 diff --git a/etc/TUTORIAL.translators b/etc/TUTORIAL.translators deleted file mode 100644 index b9e1f4b6ad3..00000000000 --- a/etc/TUTORIAL.translators +++ /dev/null @@ -1,95 +0,0 @@ -This file contains the list of translators and maintainers of the -tutorial. - -* TUTORIAL.bg: -Author: Ognyan Kulev -Maintainer: Ognyan Kulev - -* TUTORIAL.cn: -Author: Sun Yijiang -Maintainer: Sun Yijiang - -* TUTORIAL.cs: -Author: Milan Zamazal - Pavel Janík -Maintainer: Milan Zamazal - Pavel Janík - -* TUTORIAL.de: -Author: Werner Lemberg -Maintainer: Werner Lemberg - -* TUTORIAL.eo -Author: Dale Gulledge -Maintainer: Dale Gulledge - -* TUTORIAL.es: -Author: Rafael Sepúlveda -Maintainer: Rafael Sepúlveda - -* TUTORIAL.fr: -Author: Éric Jacoboni -Maintainer: Éric Jacoboni - -* TUTORIAL.it: -Author: Alfredo Finelli - Italian GNU Translation Group -Maintainer: Alfredo Finelli - Italian GNU Translation Group - -* TUTORIAL.ja: -Author: Kenichi Handa -Maintainer: Kenichi Handa - -* TUTORIAL.ko: -Author: Koaunghi Un -Maintainer: Maintainer needed. - -* TUTORIAL.nl: -Author: Pieter Schoenmakers -Maintainer: Pieter Schoenmakers - -* TUTORIAL.pl: -Author: Beatę Wierzchołowską - Janusz S. Bien -Maintainer: Radoslaw Moszczynski - -* TUTORIAL.pt_BR: -Author: Marcelo Toledo -Maintainer: Marcelo Toledo - -* TUTORIAL.ro: -Author: Tudor Hulubei -Maintainer: Maintainer needed. - -* TUTORIAL.ru: -Author: Alex Ott -Maintainer: Alex Ott - -* TUTORIAL.sk: -Author: Miroslav VaÅ¡ko - Pavel Janík -Maintainer: Pavel Janík - -* TUTORIAL.sl: -Author: Primož Peterlin -Maintainer: Primož Peterlin - -* TUTORIAL.sv: -Author: Mats Lidell -Maintainer: Mats Lidell - -* TUTORIAL.th: -Author: Virach Sornlertlamvanich -Maintainer: Virach Sornlertlamvanich - -* TUTORIAL.zh: -Author: Chao-Hong Liu -Maintainer: Chao-Hong Liu - - -;;; Local Variables: -;;; coding: utf-8 -;;; End: - -;;; arch-tag: 8788b16b-e739-4304-a7f2-729bdb999fa0 diff --git a/etc/TUTORIAL.zh b/etc/TUTORIAL.zh deleted file mode 100644 index 2793312763b..00000000000 --- a/etc/TUTORIAL.zh +++ /dev/null @@ -1,1086 +0,0 @@ -Emacs §Ö³t«ü«n¡]. - -Emacs «ü¥O³q±`¥]§t¦³ CONTROL Áä¡]¦³®É­Ô¥H CTRL ©Î CTL ¨Ó¼Ð¥Ü¡^©Î¬O -META Áä¡]¦³®É­Ô¥H EDIT ©Î ALT ¨Ó¼Ð¥Ü¡^¡C¬°¤FÁקK¨C¤@¦¸³£­n¼g¥X¨ä¥þ¦W¡A -§Ú­Ì±N·|¨Ï¥Î¤U­zªºÁY¼g¡G - - C- ªí¥Ü·íÁä¤J¦r¤¸ ®É «ö¦í CONTROL Áä¡C - ¦]¦¹¡AC-f ´N¬O¡G«ö¦í CONTROL Áä¦AÁä¤J f ¡C - M- ªí¥Ü·íÁä¤J¦r¤¸ ®É «ö¦í META ©Î EDIT ©Î ALT Áä¡C - ¦pªG¨S¦³ META ¡B EDIT ©Î ALT Áä®É¡A«h¥i¥H¥Î - ¡u«ö¤@¤U ESC ÁäµM«á©ñ¶}¡A¦AÁä¤J ªº¨BÆJ¡v - ¨Ó§@¬°´À¥N¡C§Ú­Ì¥H ¨Óªí¥Ü ESC Áä¡C - -­«­n³Æ§Ñ¿ý¡G­nÂ÷¶} Emacs §@·~¶¥¬q¡] session ¡^¡AÁä¤J C-x C-c ¡]¨â­Ó¦r -¤¸¡^¡C¦ì¦b¥ª°¼Ãä¬Éªº¡u>>¡v¦r¤¸¬OÅý±z¥i¥H¸ÕµÛ¨Ï¥Îªº«ü¥Oªº´£¥Ü¡CÁ|¨Ò¨Ó»¡¡G -<> -[Middle of page left blank for didactic purposes. Text continues below] ->> ²{¦bÁä¤J C-v ¡] View next screen ¡^¥H²¾¨ì¤U­Ó¿Ã¹õ¡C - ¡]¸Õ¸Õ¬Ý¡AÁä¤J¦r¤¸ v ®É¡A«ö¦í CONTROL Áä¡^ - ±q²{¦b¶}©l¡A±zÀ³¸Ó¦b¨C¦¸¾\Ū§¹¥Ø«eªº¿Ã¹õ®É°µ¤@¦¸³o­Ó°Ê§@¡C - -­nª`·Nªº¬O¡A·í±z±q¤@­Ó¿Ã¹õ²¾¨ì¥t¤@­Ó®É¡A¤¤¶¡·|¦³¨â¦æ­«½Æ¡F³o¼Ë°µ¬O¬°¤F -´£¨Ñ¤@¨Ç³sÄò©Ê¡AÅý±z¥i¥H±µÄò¦a¾\Ū¤å¦r¡C - -±z»Ý­nª¾¹Dªº²Ä¤@¥ó¨Æ¬O¦p¦ó¦b¤å¦r¤¤²¾°Ê¡C±z¤w¸gª¾¹D¤F¥i¥H C-v ¨Ó¦V«e²¾ -°Ê¤@­Ó¿Ã¹õ¡C­n¦V«á²¾°Ê¤@­Ó¿Ã¹õ¡A«hÁä¤J M-v ¡]«ö¦í META Áä¡AµM«áÁä¤J v -¡A©Î¬O¦pªG±z¨S¦³ META ¡B EDIT ©Î ALT Áä®ÉÁä¤J v ¡^¡C - ->> ¸ÕµÛÁä¤J M-v µM«á C-v ¡A³sÄò­Ó´X¦¸¡C - -¡i²{¦b±z¥i¥H C-v «ü¥O²¾¨ì«á­±¡u½Ķ¡v¤@¸`¡A¥H¨ú±oÃö©ó¥»¤åªºÂ½Ä¶¬ÛÃö¨Æ -¶µ¡FµM«á¥H M-v «ü¥O¦^¨ì³o¸Ì¡C¡j - - -* ºK­n¡] SUMMARY ¡^ -------------------- - -¥H¤Uªº«ü¥O¦bÀ˾\¿Ã¹õ®É¬Û·í¦³¥Î¡G¡i§Ú­Ì²{¦b¥H¡u¿Ã¹õ¡v¨Óªí¥Ü¡uÅã¥ÜÀɮפº -®eªº°Ï°ì¡v¡A¦]¬°¥Ø«e¬O³B¦b Emacs ¤¤ªº³æµ¡®æ¡] window ¡^Åã¥Üª¬ºA¡A¦pªG -¬O¦b¦hµ¡®æªºª¬ºA¤U¡A³o¸Ì©Ò¤¶²Ðªº«ü¥O«h§@¥Î¦b¡u¤u§@¤¤ªºµ¡®æ¡v¡C¦³Ãö©óµ¡ -®æªº¤¶²Ð¡A½Ð¨£µ¡®æ¡] windows ¡^¤@¸`¡C¡j - - C-v ¦V«e²¾°Ê¤@­Ó¿Ã¹õ¡þµ¡®æ - M-v ¦V«á²¾°Ê¤@­Ó¿Ã¹õ¡þµ¡®æ - C-l ²M°£¿Ã¹õ¡þµ¡®æ¡A¦A­«·sÅã¥Ü©Ò¦³¤å¦r¡A - ´å¼Ð©Ò¦b¦ì¸m·|Åã¥Ü©ó¿Ã¹õ¡þµ¡®æªº¤¤¥¡¡C - ¡]¬O CONTROL-L ¦Ó¤£¬O CONTROL-1 ¡^ - ->> §ä¥X´å¼Ðªº¦ì¸m¡A¨Ãª`·N¨äªþªñªº¤å¦r¬°¦ó¡CµM«áÁä¤J C-l ¡C - ¦A¦¸§ä¥X´å¼Ðªº¦ì¸m¡A½T»{¤@¤U¬Û¦Pªº¤å¦r²{¦b¤]¦ì¦b¨äªþªñ¡C - -¦pªG±zªº²×ºÝ¾÷¦³ PageUp »P PageDn Á䪺¸Ü¡A±z¤]¥i¥H¨Ï¥Î¥¦­Ì¨Ó¥H¿Ã¹õ¬°³æ -¦ì¦a²¾°Ê¡A¦ý¬O¨Ï¥Î C-v ©M M-v ·|¤ñ¸û¦³®Ä²v¡C - - -* °ò¥»ªº´å¼Ð±±¨î¡] BASIC CURSOR CONTROL ¡^ ------------------------------------------- - -¿Ã¹õ¨ì¿Ã¹õªº²¾°Ê¬O«Ü¦³¥Î¡A¦ý¬O±z¦p¦ó²¾°Ê¨ì¦ì©ó¿Ã¹õ¤º¤å¦r¤¤ªº¯S©w¦ì¸m©O¡H - -¦³´XºØ¤è¦¡¥i¥H¶i¦æ¡C±z¥i¥H¨Ï¥Î¤è¦VÁä¡A¦ý¬O±N±zªº¤â©ñ¦b¼Ð·Çªº¡eÁä½L¡f¦ì -¸m¡A¨Ã¥B¨Ï¥Î«ü¥O C-p ¡B C-b ¡B C-f ©M C-n ±N¤ñ¸û¦³®Ä²v¡C³o¨Ç¦r¤¸©M¥|­Ó -¤è¦VÁä¡eªº¥\¯à¡f¬O¦Pµ¥ªº¡A¦p¤U©Ò¥Ü¡G - - «e¤@¦æ C-p - : - : - ¦V«á²¾ C-b .... ¥Ø«e´å¼Ð¦ì¸m .... ¦V«e²¾ C-f - : - : - «á¤@¦æ C-n - ->> ¥H C-n ©Î C-p ±N´å¼Ð²¾¨ì¹Ï§Îªº¤¤¥¡¡C - Áä¤J C-l ·|¬Ý¨ì¾ã­Ó¹Ï§ÎÅã¥Ü¦b¿Ã¹õªº¤¤¥¡¡C - -±z·|µo²{¥Î¦r¥À©Ò¥Nªíªº·N¸q¨Ó°O¾Ð¥¦­Ì«Ü®e©ö¡GP ªí¥Ü previous ¡B N ªí¥Ü -next ¡B B ªí¥Ü backward ¡B¦Ó F «hªí¥Ü forward ¡C±z±N¡uÁ`¬O¡v¥Î¨ì³o¨Ç´å -¼Ð²¾°Ê«ü¥O¡C - ->> «ö´X¦¸ C-n §â´å¼Ð©¹¤U²¾°Ê¨ì³o¦æ¡C - ->> «ö´X¦¸ C-f ©¹«e²¾¨ì³o¦æ¡AµM«á¦A¥H C-p ©¹«á²¾°Ê¡C - ¬Ý¬Ý·í´å¼Ð¦b¥»¦æ¤¤¥¡®É¡AC-p ªº°Ê§@¬O«ç¼Ë¡C - -¨C¤@­Ó¤å¦r¦æ³£¥H¤@­Ó Newline ¦r¤¸§@¬°µ²§ô¡A¥¦¬O¥Î¨Ó»P¤U¤@¦æ§@¬°¤À§O¡C -¦b±zÀɮפ¤ªº³Ì«á¤@¦æÀ³¸Ó­n¦³¤@­Ó Newline ¨Ó§@¬°µ²§ô¡]¦ý¬O Emacs ¨Ã¤£¤@ -©w»Ý­n¥¦¨Ó½s¿èÀɮס^¡C - ->> ¸ÕµÛ¦b¤@¦æ¶}©lªº¦a¤èÁä¤J C-b ¡Cµ²ªGÀ³¸Ó·|²¾°Ê¨ì«e¤@¦æªº³Ì«á­±¡C - ³o¬O¦]¬°¥¦©¹«á²¾°Ê®É¶V¹L¤F Newline ¦r¤¸¡C - -C-f ¤]¥i¥H©M C-b ¤@¼Ë¦a¶V¹L Newline ¦r¤¸¡C¡iNewline ¦r¤¸¬O¡u¤£¥i¨£ -¡] invisible ¡^¦r¤¸¡v¡A¦b½s¿è¾¹¤¤¤@¯ë¬Ý¤£¨ì¥¦¡A³o¸Ì¥u¬O§i¶D±z¡G¦b¦æ­º -¦A©¹«e¨«¡A¨º»ò´å¼Ð·|¶]¨ì«e¤@¦æ¡]¦pªG¦³«e¤@¦æªº¸Ü¡^¡F¦b¦æ§À¦A©¹«á¨«¡A¨º -»ò´å¼Ð·|¶]¨ì«á¤@¦æ¡]¦pªG¦³«á¤@¦æªº¸Ü¡^¡C¡u¶V¹L Newline ¦r¤¸¡v·|Åý´å¼Ð -¶]¨ì¥t¥~¤@¦æ¡C¡j - ->> ¦h«ö´X¦¸ C-b¡A¦Û¤v·Pı¤@¤U´å¼Ð¦b­þ¡C - µM«á«ö´X¦¸ C-f ¦^¨ì³o¦æªº§À¤Ú¡C - ¦A«ö¤@¦¸ C-f ´N¥i¥H²¾¨ì¤U¤@¦æ¤F¡C - -·í±z²¾°Ê´å¼Ð¬ï¶V¿Ã¹õªº¤W¤è©Î¤U¤è®É¡A¦bÃä¬É¥~ªº¤å¦r·|²¾¦ì¶i¤J¿Ã¹õ¤º¡C³o -ºÙ¬°¡u±²°Ê¡v¡C¥¦Åý Emacs ¥i¥H±N´å¼Ð²¾°Ê¨ì¤å¦r¤¤ªº¥ô·N¯S©w¦ì¸m¡A¦P®É -¡]´å¼Ð¡^¤£·|¶]¥X¿Ã¹õ¥~¡C - ->> ¸ÕµÛ¥H C-n ±N´å¼Ð¶V¹L¿Ã¹õ¤U¤è¡AµM«á¬Ý¬Ýµo¥Í¤F¤°»ò¨Æ¡C - -¦pªG¤@­Ó¦r¤¸¤@­Ó¦r¤¸¦a²¾°Ê¤ÓºCªº¸Ü¡A±z¥i¥H¤@­Ó¦r¤@­Ó¦r¦a²¾°Ê¡CM-f -(META-f) ©¹«e²¾°Ê¤@­Ó¦r¡AM-b «h©¹«á²¾°Ê¤@­Ó¦r¡C¡i¹ï¤¤¤å¨Ó»¡¡A«h¬O²¾°Ê -¨ì¤U¤@­Ó©Î¤U¤@­Ó¼ÐÂI²Å¸¹ªº©Ò¦b¡C¡j - ->> Áä¤J¤@¨Ç M-f ©M M-b¡C - -·í±z¦b¤@­Ó¦rªº¤¤¶¡®É¡AM-f ·|²¾°Ê¨ì³o­Ó¦rªº§À¤Ú¡C·í±z¦b¦r»P¦r¶¡ªºªÅ¥Õ®É¡A -M-f ·|²¾°Ê¨ì¤U¤@­Ó¦rªº§À¤Ú¡CM-b ªº®ÄªG¬Û¦ü¡A¥u¬O¤è¦V¤£¦P¡C - ->> «ö´X¦¸ M-f ©M M-b¡A¤¤¶¡§¨Âø¤@¨Ç C-f ©M C-b¡A - ³o¼Ë¤l±z´N¥i¥HÆ[¹î M-f ©M M-b ¦b¦UºØ¡u¦ì¦b¦r¶¡©Î¦r¤¸¶¡¡v - ªº¤£¦P¦ì¸m¡A©Òªí²{¥X¨Óªº¦æ¬°¡C - -½Ðª`·N C-f ¡B C-b ©M M-f ¡B M-b ¨â¹ï¤§¶¡ªº¬Û¦ü©Ê¡C¡u¸g±`¡vªºª¬ªp¬O¡G -META ¦r¤¸¬O¥Î¨Ó§@¬°»P¡u¥H»y¨¥©w¸q¥Xªº³æ¦ì¡]¦r¡B¥y¤l¡B¬q¸¨¡^¡v¦³Ãöªº¾Þ -§@¡A¦Ó CONTROL ¦r¤¸«h¬O§@¥Î¦b¡u»P±z©Ò½s¿èµLÃöªº¡y°ò¥»¡z³æ¦ì¡]¦r¤¸©Î¦æ -µ¥¡^¡v¤W¡C - -³o­Ó¬Û¦ü©Ê¦b¡u¦æ»P¥y¤l¡v¤§¶¡¤]¦P¼Ë¾A¥Î¡GC-a ©M C-e ·|±N´å¼Ð²¾°Ê¨ì¡u¤@ -¦æ¡vªº ¶}©l©Mµ²§À³B¡A¦ÓM-a ©M M-e «h±N´å¼Ð²¾°Ê¨ì¡u¤@¥y¡vªº ¶}©l©Mµ²§À -³B¡C - ->> ¸ÕµÛ«ö¨â¦¸ C-a¡A¦A«ö¨â¦¸ C-e¡C - ¸ÕµÛ«ö¨â¦¸ M-a¡A¦A«ö¨â¦¸ M-e¡C - -¬Ý¤@¤U¬°¤°»ò­«½Æªº C-a «ü¥O·|¨S¦³§@¥Î¡A¦Ó­«½Æªº M-a «ü¥O«hÄ~Äò²¾°Ê¨ì¤U -¤@­Ó¥y¤l¡CÁöµM³o¨Ã¤£¯à»¡¬O§¹¥þÃþ¤ñ¡A¦ý¬O¨ä¤¤¨C­Ó«ü¥Oªº¦æ¬°¬Ý°_¨Ó³£¤Q¤À -¦ÛµM¡C - -´å¼Ð¦b¤å¦r¤¤ªº¦ì¸m¤]¥i¥HºÙ§@¡uÂI¦ì¡] point ¡^¡v¡C²³æ¨Ó»¡´N¬O¡G´å¼Ðªí -²{¥X¿Ã¹õ¤¤¡uÂI¦ì¡v©Ò¦bªº¤å¦r¦ì¸m¡C - -³o¸Ì¬O¤@¨Ç²³æ¡u´å¼Ð²¾°Ê¡] cursor-moving ¡^¾Þ§@¡vªº¾ã²z¡A¨ä¤¤¤]¥]¬A¤F -¡u¦r©M¥y¡vªº²¾°Ê«ü¥O¡G - - C-f ©¹«e²¾°Ê¤@­Ó¦r¤¸ - C-b ©¹¦^²¾°Ê¤@­Ó¦r¤¸ - - M-f ©¹«e²¾°Ê¤@­Ó¦r¡i¤¤¤å¬O²¾°Ê¨ì¤U¤@­Ó¼ÐÂI²Å¸¹¡j - M-b ©¹¦^²¾°Ê¤@­Ó¦r¡i¤¤¤å¬O²¾°Ê¨ì¤W¤@­Ó¼ÐÂI²Å¸¹¡j - - C-n ²¾°Ê¨ì¤U¤@¦æ - C-p ²¾°Ê¨ì¤W¤@¦æ - - C-a ²¾°Ê¨ì¦æ­º - C-e ²¾°Ê¨ì¦æ§À - - M-a ²¾¦^¥y­º - M-e ²¾¨ì¥y§À - ->> ½m²ß´X¦¸³o¨Ç«ü¥O¡C³o¨Ç³£¬O³Ì±`¨Ï¥Î¨ìªº«ü¥O¡C - -ÁÙ¦³¨â­Ó­«­nªº´å¼Ð°Ê§@¡] cursor-motion ¡^«ü¥O¡AM-<¡] META Less-than ¡^¡A -²¾°Ê¨ì¤å¦rªº³Ì¶}©l¡A¥H¤ÎM->¡] META Greater-than ¡^¡A²¾°Ê¨ì¤å¦rªº³Ì«á¡C - -¦b¤j³¡¥÷ªº²×ºÝ¾÷¡A¡u<¡v¬O¦b comma ¤W¤è¡A©Ò¥H±z¥²¶·­n¨Ï¥Î shift Áä¨ÓÁä -¤J¡C¦b³o¨Ç²×ºÝ¾÷¤W¡A±z¥²¶·¨Ï¥Î shift Áä¨ÓÁä¤J M-<¡F¨S¦³¨Ï¥Î shift Áä¡A -±z´NÅܦ¨Áä¤J M-comma ¤F¡C - ->> ²{¦b¸Õ¤@¤U M-< ¡A²¾¨ì¥»§Ö³t«ü«nªº³Ì¶}©l¡C - µM«á¦A­«½Æ¦a¨Ï¥Î C-v ¦^¨ì³o¸Ì¡C - ->> ²{¦b¸Õ¤@¤U M-> ¡A²¾¨ì¥»§Ö³t«ü«nªº³Ì«á¡C - µM«á¦A­«½Æ¦a¨Ï¥Î M-v ¦^¨ì³o¸Ì¡C - -¦pªG±zªº²×ºÝ¾÷¦³¤è¦VÁ䪺¸Ü¡A±z¤]¥i¥H¥Î¤è¦VÁä²¾°Ê´å¼Ð¡C§Ú­Ì¦³¤T­Ó²z¥Ñ«Ø -ij±z¾Ç²ß C-b ¡B C-f ¡B C-n ¡B ©M C-p ¡G(1) ¥ô¦óªº²×ºÝ¾÷³£¯à¨Ï¥Î¡C(2) -¤@¥¹±z¨Ï¥Î Emacs ¬Û·í¼ô½m¤F¡A±z·|µo²{Áä¤J³o¨Ç CONTROL ¦r¤¸¡A¤ñ°_¨Ï¥Î¤è -¦VÁä§Ö¦h¤F¡]¦]¬°±z¤£»Ý­n±N¤â²¾¶}¥´¦r°Ï¡^¡C(3) ¤@¥¹±z¨Ï¥Î³o¨Ç CONTROL -¦r¤¸«ü¥O¦¨¬°²ßºD¡A±z¤]¥i¥H«Ü®e©ö¦a¾Ç·|¨ä¥L¶i¶¥ªº´å¼Ð°Ê§@«ü¥O¡C - -¤j³¡¥÷ªº Emacs «ü¥O±µ¨ü¼Æ¦r°Ñ¼Æ¡F¹ï¤j³¡¥÷ªº«ü¥O¦Ó¨¥¡A¥¦ªº§@¥Î¬O«ü©w­« -½Æ¦¸¼Æ¡C±z­n«ü©w¤@­Ó«ü¥Oªº­«½Æ¦¸¼Æªº§@ªk¬O¡G¥ýÁä¤J C-u¡AµM«á¦b±zÁä¤J«ü -¥O«e¡AÁä¤J¥Nªí­«½Æ¦¸¼Æªº¼Æ¦ì¡C¦pªG±z¦³¤@­Ó META¡]©Î EDIT ©Î ALT ¡^Áä¡A -¨º»ò±zÁÙ¦³¥t¥~¤@­Ó´À¥N§@ªk¨Ó¿é¤J¼Æ¦r°Ñ¼Æ¡G«ö¦í META Áä®É¥´¤J³o¼Æ¦r¡C§Ú -­Ì«Øij±z¾Ç²ß C-u ªº¤èªk¡A¦]¬°¥¦¦b¥ô¦ó²×ºÝ¾÷³£¥i¥H¨Ï¥Î¡C¦¹¤@¼Æ¦r°Ñ¼Æ¤] -ºÙ§@¬°¡u¦r­º°Ñ¼Æ¡v¡A¦]¬°±z¦b³o°Ñ¼Æ©Ò§@¥Î¨ìªº«ü¥O«eÁä¤J¥¦¡C - -Á|¨Ò¨Ó»¡¡A C-u 8 C-f ¦V«e²¾°Ê 8 ­Ó¦r¤¸¡C - ->> ¸ÕµÛ¥H¤@­Ó¼Æ¦r°Ñ¼Æ¨Ó¨Ï¥Î C-n ©Î C-p¡A - ¥u¤@­Ó«ü¥O´N±N´å¼Ð²¾°Ê¨ì³o¦æªºªþªñ¡C - -¤j³¡¥÷ªº«ü¥O¨Ï¥Î¼Æ¦r°Ñ¼Æ¨Ó§@¬°¨ä­«½Æ¦¸¼Æ¡A¦ý¬O¨ä¤¤¦³¨Ç«ü¥O«h¬O§@¬°¨ä¥L -¥Î³~¡C¦³´X­Ó«ü¥O¡]¥Ø«e±z©|¥¼¾Ç¨ì¡^±N¥¦§@¬°ºX¼Ð -- ¥H¤@­Ó¦r­º°Ñ¼Æªº«¬ºA -¥X²{¡A¦Ó¤£ºÞ¨ä­È¬°¦ó¡A¥¦­ÌÅý³o«ü¥O°µ¨Ç¤£¤@¼Ëªº¨Æ¡C - -C-v ©M M-v «h¬O¥t¤@Ãþªº¨Ò¥~¡C·íµ¹©w¤@­Ó°Ñ¼Æ®É¡A¥¦­Ì±²°Ê¡u©Ò«ü©wªº¼Æ¶q -ªº¦æ¡]¥H¦æ¬°³æ¦ì¡^¡v¡A¦Ó¤£¬O¥H¡u¿Ã¹õ¡v¬°³æ¦ì±²°Ê¡CÁ|¨Ò¨Ó»¡¡AC-u 8 C-v -±NÅã¥Ü¿Ã¹õ±²°Ê 8 ¦æ¡C - ->> ²{¦b¸ÕµÛÁä¤J C-u 8 C-v¡C - -³o«ü¥OÀ³¸Ó¤w¸g±N¿Ã¹õ¦V¤W²¾¤F 8 ¦æ¡C­Y±z·Q±N¥¦¦A¦¸¦a¦V¤U±²°Ê¡A±z¥i¥H¦b -°õ¦æ M-v ®Éµ¹©w¤@­Ó°Ñ¼Æ¡C - -¦pªG±z¥¿¦b¨Ï¥Î X µøµ¡¨t²Î¡A¦b Emacs µøµ¡¥ª¤â°¼À³¸Ó¦³¤@­ÓºÙ¬°¡u±²°Ê¶b¡v -ªºªø¤è«¬°Ï°ì¡C±z¥i¥H¥Î·Æ¹«¦b±²°Ê¶b«ö¤@¤U¨Ó±²°Ê¤å¦r¡C - ->> ¸ÕµÛ¦b¡u±²°Ê¶b¤º¤Ï¥Õ°Ï°ì¤W¡vÀ£¤@¤U¤¤¶¡¶s¡C³oÀ³¸Ó·|±N¤å¦r±²°Ê¨ì - ¡u¥Ñ±z©Ò«ö¤@¤U·Æ¹«ªº¦a¤è¡v©Ò¨M©wªº¦ì¸m¡C - ->> ·í«ö¦í¤¤¶¡®É¡A¸ÕµÛ±N·Æ¹«¤W¤U²¾°Ê¡C - ±z·|¬Ý¨ì¤å¦rÀHµÛ±z²¾°Ê·Æ¹«¦Ó¤W¤U²¾°Ê¡C - - -* ·í EMACS µo§b®É¡] WHEN EMACS IS HUNG ¡^ ------------------------------------------ - -¦pªG Emacs °±¤î¦^À³±zªº«ü¥O¡A±z¥i¥HÁä¤J C-g ¨Ó¦w¥þ¦a°±¤î¥¦¡C±z¤]¥i¥H¨Ï -¥Î C-g ¨Ó°±¤î°õ¦æ¹L¤[ªº«ü¥O¡C - -±z¤]¥i¥H¨Ï¥Î C-g ¨Ó¨ú®ø¼Æ¦r°Ñ¼Æ©Î±z¤£·Q­n§¹¦¨ªº«ü¥O¡C - ->> Áä¤J C-u 100 ¥H³]©w¤@­Ó 100 ªº¼Æ¦r°Ñ¼Æ¡AµM«áÁä¤J C-g¡C - ²{¦bÁä¤J C-f¡C¥¦À³¸Ó¥u·|²¾°Ê¤@­Ó¦r¤¸¡A¦]¬°±z¤w¸g¥H C-g - ¨ú®ø¤F°Ñ¼Æ¡C - -¦pªG±z¤w¸g¤£¤p¤ß¦aÁä¤J¤@­Ó ¡A±z¥i¥H C-g ¨Ó¨ú®ø¥¦¡C - - -* µL®Ä¤Æªº«ü¥O¡] DISABLED COMMANDS ¡^ -------------------------------------- - -¦³¤@¨Ç Emacs «ü¥O³Q¡uµL®Ä¤Æ¡v¤F¡A¦]¦¹ªì¾ÇªÌ¤£·|·N¥~¦a¨Ï¥Î¨ì¥¦­Ì¡C - -¦pªG±zÁä¤J¤F¬Y¤@­ÓµL®Ä¤Æªº«ü¥O¡AEmacs ·|Åã¥Ü¤@­Ó°T®§¡A»¡©ú³o­Ó«ü¥O¬O¤° -»ò¡A¨Ã¥B¸ß°Ý±z¬O§_·Q­nÄ~Äò¡AµM«á°õ¦æ³o«ü¥O¡C - -¦pªG±z¯uªº·Q­n¸Õ¤@¤U³o­Ó«ü¥O¡A¨º»ò¦b·í Emacs ¸ß°Ý±z®É¡A½ÐÁä¤JªÅ¥Õ¡C¤@ -¯ë¨Ó»¡¡A¦pªG±z¤£·Q­n°õ¦æ³o­ÓµL®Ä¤Æªº«ü¥O¡A½Ð¥H¡yn¡z¨Ó¦^µª¥¦¡C - ->> Áä¤J C-x C-l ¡]³o¬O­ÓµL®Ä¤Æªº«ü¥O¡^ - µM«áÁä¤J n ¨Ó¦^µª°ÝÃD¡C - - -* µ¡®æ¡] WINDOWS ¡^ -------------------- - -Emacs ¥i¥H¦³¼Æ­Óµ¡®æ¡A¨C¤@­ÓÅã¥Ü¥¦¦Û¤vªº¤å¦r¡C§Ú­Ì¦bµy«á·|¸ÑÄÀ¦p¦ó¨Ï¥Î -¦h­«µ¡®æ¡C²{¦b§Ú­Ì·Q­n¸ÑÄÀ¦p¦ó°£¥h¦h¾lªºµ¡®æ¡AµM«á¦^¨ì°ò¥»ªº³æµ¡®æ½s¿è¡C -¥¦«Ü²³æ¡G - - C-x 1 One window ¡]§Y¡A°£¥h¨ä¥L©Ò¦³ªºµ¡®æ¡^¡C - -¨º¬O­Ó CONTROL-x «á­±¸òµÛ¼Æ¦r 1 ¡CC-x 1 ±N§t¦³´å¼Ðªºµ¡®æÂX¤j¨ì¾ã­Ó¿Ã¹õ¡C -¥¦±N©Ò¦³¨ä¥Lªºµ¡®æ°£¥h¡C - ->> ²¾°Ê´å¼Ð¨ì¥»¦æ¨Ã¥BÁä¤J C-u 0 C-l¡C ->> Áä¤J CONTROL-h k CONTROL-f¡C - ¬Ý¬Ý³o­Óµ¡®æ¦b·í¤@­Ó·sªºµ¡®æ¥X²{ - ¡]¥HÅã¥Ü¦³Ãö CONTROL-f «ü¥Oªº¤å¥ó®É¡^¡A¥¦¬O¦p¦óÁY¤pªº¡C - ->> Áä¤J C-x 1 ¥H¨Ï¤å¥ó¦Cªíµ¡®æ®ø¥¢¡C - -³o­Ó«ü¥O¨Ã¤£¹³±z¥ý«e©Ò¾Ç¹Lªº«ü¥O¨º¯ë¡A¥¦¥]¬A¤F¨â­Ó¦r¤¸¡C¥¦¬O¥H¦r¤¸ -CONTROL-x §@¬°¶}©l¡C¦³¤@¾ã­Ó¨t¦Cªº«ü¥O¬O¥H CONTROL-x §@¬°¶}©l¡F¥¦­Ì¤§ -¤¤¦³³\¦h¬O»P¡uµ¡®æ¡BÀɮסB¼È¦s°Ï¥H¤Î¬ÛÃö¨Æª«¡v¦³Ãöªº¡C³o¨Ç«ü¥O¦³ 2 ¡B -3 ©Î 4 ­Ó¦r¤¸ªø¡C - - -* ´¡¤J»P§R°£¡] INSERTING AND DELETING ¡^ ----------------------------------------- - -¦pªG±z·Q­n´¡¤J¤å¦r¡A§â¥¦Áä¤J´N¬O¤F¡C±z¥i¥H¬Ý¨ìªº¦r¤¸¡A¹³¬O A ¡B 7 ¡B * -µ¥¡A³Q Emacs µø¬°¤å¦r¨Ã¥B¥i¥Hª½±µ´¡¤J¡CÁä¤J -¡] carriage-return Áä¡^¥H´¡¤J¤@­Ó Newline ¦r¤¸¡C - -±z¥i¥HÁä¤J ¥H§R°£±z³Ì«áÁä¤Jªº¦r¤¸¡C ¬O¤@­ÓªºÁä½LÁä --- ´N¬O±z³q±`¦b Emacs ¥~¡A¨Ï¥Î¨Ó¡u§R°£±z³Ì«áÁä¤J¦r¤¸¡vªº¦P¤@­Ó¡C¤@¯ë¨Ó -»¡¬O­Ó¦b ¤W¤è¼Æ¦æªº¤jÁä¡A³q±`¼Ð¥Ü¬°¡yDelete¡z¡B¡yDel¡z©Î -¡yBackspace¡z¡C - -¦pªG¦b¨º¸Ì¦³­Ó¼Ð¥Ü¬°¡yBackspace¡zªº¤jÁä¡A¨º»ò¨º¤@­Ó´N¬O±z¨Ï¥Î¨Ó§@¬° - ªºÁä¤F¡C¬Y­Ó¦a¤è¥i¯à¤]·|¦³¥t¤@­Ó¼Ð¥Ü¬°¡yDelete¡zªºÁä¡A¦ý¨º­Ó -¨Ã¤£¬O ¡C - -§ó¤@¯ë¦a»¡¡A ±N¦ì©ó¥Ø«e´å¼Ð¦ì¸m«e¤@­Ó¦r¤¸¥[¥H§R°£¡C - ->> ²{¦b°µ -- Áä¤J¤@¨Ç¦r¤¸¡AµM«áÁä¤J´X¦¸ ¨Ó§R°£¥¦­Ì¡C - ¤£­n¾á¤ß³o­ÓÀÉ®×·|³Q§ó°Ê¡F±z¤£·|¼vÅT¨ì­ì¨Óªº§Ö³t«ü«n¡C - ¡]±z²{¦b¬Ý¨ìªº¡^³o¤@­Ó¬O±zªº­Ó¤H«þ¨©¡C - -·í¤@¦æ¤å¦rÅܱo¤ñ¡u¦bµ¡®æ¤¤ªº¤@¦æ¡vªø®É¡A³o¤@¦æ¤å¦r·|¡u±µÄò¡v¨ì²Ä¤G¦æµ¡ -®æ¦æ¡C³o®É¤@­Ó¤Ï±×½u¡u\¡v¡]©Î¦pªG±z¨Ï¥Îµøµ¡¤ÆªºÅã¥Ü¡A«h¬O¤@­Ó¤p¤pÅsÅs -ªº½bÀY¡^·|¦ì¦b¨ä¥kÃä¬É¥H«ü¥X¦¹¦æ±µÄòµÛ¡C - ->> ´¡¤J¤å¦r¡A¤@ª½¨ì±z¹F¨ì¥kÃä¬É¡AµM«á¦AÄ~Äò´¡¤J¡C - ±z·|¬Ý¨ì¤@­Ó±µÄò¦æ¥X²{¡C - ->> ¨Ï¥Î §R°£¤@¨Ç¤å¦r¡Aª½¨ì¦¹¦æ¦A¦¸¦¨¬°¤@­Óµ¡®æ¦æ¡C - ±µÄò¦æ®ø¥¢¤F¡C - -±z¥i¥H¹³§R°£¨ä¥L¦r¤¸¤@¼Ë¦a§R°£ Newline ¦r¤¸¡C±N¦ì¦b¨â¦æ¤¤ªº Newline ¦r -¤¸§R°£·|Åý¥¦­Ì¦X¨Ö¦¨¬°¤@¦æ¡C¦pªG¦X¨Öªºµ²ªG¨Ï³o¤@¦æ¤Óªø¡A¥H­PµLªk²Å¦Xµ¡ -®æªº¼e«×¡A¥¦·|¥H¤@­Ó±µÄò¦æ¨ÓÅã¥Ü¡C - ->> ²¾°Ê´å¼Ð¨ì¥»¦æªº¶}ÀY¨ÃÁä¤J ¡C - ³o·|±N¥»¦æ»P¨ä«e¤@¦æµ²¦X¬°¤@¦æ¡C - ->> Áä¤J ¥H­«·s´¡¤J±z­è¤~§R°£ªº Newline ¦r¤¸¡C - -°O±o¤j³¡¥÷ªº Emacs «ü¥O³£¥i¥Hµ¹¤©¤@­Ó­«½Æ­p¼Æ¡] repeat count ¡^¡F³o¤] -¥]¬A¤F¤å¦r¦r¤¸¡C­«½Æ¤@­Ó¤å¦r¦r¤¸·|±N¥¦´¡¤J¼Æ¦¸¡C - ->> ²{¦b´N¸Õ¤@¤U -- Áä¤J C-u 8 * ¥H´¡¤J ********¡C - -±z²{¦b¤w¸g¾Ç¨ì¤F¡uÁä¤J­Ó¤°»òªF¦è¶i Emacs ¥H¤Î­×¥¿¿ù»~¡vªº¤j³¡¥÷°ò¥»¤è -ªk¡C±z¤]¥i¥H¡u¥H¦r©Î¦æ¬°³æ¦ì¡v¦a§R°£¡C³o¸Ì¦³¥÷Ãö©ó¡u§R°£¾Þ§@¡vªººK­n¡G - - §R°£´å¼Ð©Ò¦bªº «e¤@­Ó¦r¤¸ - C-d §R°£´å¼Ð©Ò¦bªº «á¤@­Ó¦r¤¸ - - M- §R°£´å¼Ð©Ò¦bªº «e¤@­Ó¦r - M-d §R°£´å¼Ð©Ò¦bªº «á¤@­Ó¦r - - C-k §R°£±q´å¼Ð©Ò¦b¨ì¡u¦æ§À¡v¶¡ªº¦r¤¸ - M-k §R°£±q´å¼Ð©Ò¦b¨ì¡u¥y§À¡v¶¡ªº¦r¤¸ - -ª`·N¡u ©M C-d¡vÁÙ¦³¡uM- ©M M-d¡v¬O¥­¦æ¦a¦Û C-f ©M -M-f ÂX¥R¥X¨Óªº¡]¶â¡A ¨Ã¤£¬O±±¨î¦r¤¸¡A¦ý¬O¨S¤°»ò¦n¾á¤ßªº¡^¡C -C-k ©M M-k ¦b¬YºØµ{«×¤W»P C-e ©M M-e ¤@¼Ë¡A¦pªG§â¡u¤@¦æ¡v©M¡u¤@¥y¡v§@ -¬°Ãþ¤ñªº¸Ü¡C - -±z¤]¥i¥H¥u¥H¤@ºØ¤èªk¨Ó§R°£½w½Ä°Ï¤ºªº¥ô¦ó³¡¥÷¡A¥ý²¾°Ê¨ì±z·Q­n§R°£ªº³¡¥÷ -ªº¤@ºÝ¡AµM«áÁä¤J C-@ ©Î C-SPC ¡]¥ô¤@­Ó§Y¥i¡^¡C¡] SPC «üªº¬O Space Bar -¡^¦A²¾¨ì¨º³¡¥÷ªº¥t¤@ºÝ¡A±µµÛÁä¤J C-w ¡C³o¼Ë´N·|§â¤¶©ó³o¨â­Ó¦ì¸m¶¡ªº©Ò -¦³¤å¦r§R°£¡C - ->> ²¾°Ê´å¼Ð¨ì¤W¤@¬q¶}ÀYªº¡u±z¡v¦r¡C ->> Áä¤J C-SPC ¡C Emacs À³¸Ó·|¦b¿Ã¹õªº¤U¤èÅã¥Ü¤@­Ó¡uMark set¡v°T®§¡C ->> ²¾°Ê´å¼Ð¨ì²Ä¤G¦æ¤¤ªº¡uºÝ¡v¦r¡C ->> Áä¤J C-w ¡C³o¼Ë·|§â±q¡u±z¡v¶}©l¨ì­è¦n¡uºÝ¡v¤§«eªº¤å¦r§R°£¡C - -­nª`·Nªº¬O¡u±þ±¼¡] killing ¡^¡v©M¡u§R°£¡] deleting ¡^¡vªº¤£¦P¦b©ó³Q±þ -±¼ªº¥i¥H©Ô¦^¡A¦Ó³Q§R°£ªº«h¤£¯à¡C¡i¦³ÂIÃø¥H²z¸Ñ¡A±z¥i¥H³o»ò·Q¡G(1)¡u³Q -±þ±¼ªº¡v©|¦s¤r°©¡A¦Ó¡u³Q§R°£ªº¡v«h¤r°©µL¦s¤F¡I¥i¨£±o¹ï¹q¸£¸ê®Æ¨Ó»¡¡A -¡u§R°£¡v¤ñ¡u±þ±¼¡vÄY­«¦h¤F¡C(2)¹ê»Ú¤W¡A´Nºâ³Q§R°£¤F¡A§Ú­ÌÁÙ¬O¦³§Þ³N¥i -¥H§â¥¦±Ï¦^¨Ó¡A¤×¨ä¬O¤å¦r¸ê®Æ¡A«e´£¬O§R°£«á¤£¯à¶i¦æ¹êÅé°O¾ÐÅ骺®æ¦¡¤Æ°Ê -§@¡C¦ý³o¹ï©ó¤@¯ë¨Ï¥ÎªÌ¦Ó¨¥¬O¤£¥i¯àªº¡A¦]¦¹´N¤£¦Ò¼{³o±¡§Î¤F¡C¡j­«·s´¡¤J -³Q±þ±¼ªº¤å¦rºÙ¬°¡u©Ô¦^¡] yanking ¡^¡v¡C¤@¯ë¦Ó¨¥¡A¥i¥H²¾°£±¼«Ü¦h¤å¦rªº -«ü¥O·|§â¨º¨Ç¤å¦rÀx¦s°_¨Ó¡]¥¦­Ì³]©w¦¨±z¥i¥H±N¤å¦r©Ô¦^¡^¡A¦Ó¨º¨Ç¥u¬O§R°£ -¤@­Ó¦r¤¸©ÎªÌ¥u¬O°£¥hªÅ¥Õ¦æ©ÎªÅ¥Õªº«ü¥O¡A«h¤£·|Àx¦s³o¨Ç³Q§R°£ªº¤å¦r¡]¦] -¦¹±z¤£¯à±N¨º¤å¦r©Ô¦^¡^¡C - ->> ²¾°Ê´å¼Ð¨ì¤@«DªÅ¥Õ¦æªº¶}©l¡C - µM«áÁä¤J C-k ±þ±¼¦b¨º¤@¦æ¤Wªº¤å¦r¡C ->> ²Ä¤G¦¸Áä¤J C-k¡C±z±N·|¬Ý¨ì¥¦±þ±¼¸ò¦b¨º¤@¦æ«á­±ªº Newline ¦r¤¸¡C - -½Ðª`·N³æ¿Wªº C-k ·|§â¤@¦æªº¤º®e±þ±¼¡A¦Ó²Ä¤G­Ó C-k «h·|±þ±¼¨º¤@¦æ¥»¨­¡A -¨Ã¥B¨Ï±o©Ò¦³¨ä¥Lªº¦æ¦V¤W²¾°Ê¡CC-k ¥H«Ü¯S§Oªº¤è¦¡¨Ó³B²z¼Æ¦r°Ñ¼Æ¡A¥¦·|±þ -±¼«Ü¦h¦æ¥H¤Î¥¦­Ìªº¤º®e¡A³o¤£¶È¶È¬O­«½Æ¦Ó¤w¡AC-u 2 C-k ·|§â¨â¦æ¥H¤Î¥¦­Ì -ªº Newline ¦r¤¸±þ±¼¡F¦pªG¥u¬OÁä¤J C-k ¨â¦¸¨Ã¤£·|³o¼Ë¡C - -±N³Q±þ±¼ªº¤å¦r¦^´_ªº°Ê§@ºÙ¬°¡u©Ô¦^¡] yanking ¡^¡v¡C¡]§â¥¦·Q¹³¦¨±z§â§O -¤H±q±z¨­¤W¹Ü¥hªºªF¦è²r¤O¦a©Ô¦^¨Ó¡^±z¥i¥H¦b±z§R°£¤å¦rªº¦a¤è©Ô¦^¡A¤]¥i¥H -¦b¤å¦rªº¨ä¥L¦a¤è©Ô¦^¡C±z¥i¥H©Ô¦^¼Æ¦¸¦P¼Ëªº¤å¦r¡A¥H»s§@¥¦ªº¼Æ¥÷«þ¨©¡C - -©Ô¦^ªº«ü¥O¬° C-y¡C¥¦·|¦b¥Ø«e´å¼Ðªº¦ì¸m­«·s´¡¤J³Ì«á±þ±¼ªº¤å¦r¡C - ->> ¸Õ¸Õ¬Ý¡FÁä¤J C-y ±N¤å¦r©Ô¦^¡C - -¦pªG±z³sÄò¦a°µ¤F¼Æ¦¸ C-k¡A©Ò¦³³Q±þ±¼ªº¤å¦r³£·|³QÀx¦s¦b¤@°_¡A¦]¦¹°µ¤@¦¸ -C-y ´N·|§â©Ò¦³³o¨Ç¦æ³£©Ô¦^¨Ó¡C - ->> ²{¦b°µ¤@¤U¡AÁä¤J C-k ¼Æ¦¸¡C - -²{¦b­n¦^´_¨º¨Ç±þ±¼ªº¤å¦r¡G - ->> Áä¤J C-y¡CµM«á§â´å¼Ð©¹¤U²¾°Ê­Ó´X¦æ¡A¦A¤@¦¸Áä¤J C-y¡C - ±z²{¦bª¾¹D¦p¦ó½Æ»s¬Y¨Ç¤å¦r¤F¡C - -¦pªG±z¦³¤@¨Ç¤å¦r·Q­n©Ô¦^¨Ó¡A¦ý¬O«á¨Ó±z¤S±þ¤F¬Y¨ÇªF¦è¡A¨º»ò¸Ó«ç»ò°µ©O¡H -C-y ·|§â³Ìªñ±þ±¼ªº©Ô¦^¨Ó¡A¦ý¬O¥ý«eªº¤å¦r¨Ã¨S¦³®ø¥¢¡A±z¥i¥H¥Î M-y ¨Ó¦^ -¨ì¥¦¡C·í±z¤w¸g¨Ï¥Î C-y §â³Ìªñ±þ±¼ªº©Ô¦^¨Ó¤§«á¡A¦AÁä¤J M-y ¨Ó§â³o¨Ç©Ô¦^ -¨Óªº¤å¦r´À´«¬°¥ý«e©Ò±þ±¼ªº¡C¤@¦¸¤S¤@¦¸¦aÁä¤J M-y ·|§â¥ý«e¦A¥ý«e©Ò±þ±¼ -ªº¤å¦r±a¦^¨Ó¡C·í±z¨ì¤F±z·Q§äªº¤å¦r®É¡A±z¤£»Ý­n°µ¥ô¦ó¨Æ¨Ó«O¦s¥¦¡A¥u­nÄ~ -Äò±zªº½s¿è¡A§â³o¨Ç¤w©Ô¦^ªº¤å¦r¯d¦b¨º¸Ì´N¦n¡C - -¦pªG±z M-y °µ¤F«Ü¦h¦¸¡A±z¥i¯à·|¦^¨ì°_©lÂI¡A¤]´N¬O³Ìªñ±þ±¼ªº¡C - ->> ±þ±¼¤@¦æ¡A¨ì³B¶¶¡A¦A±þ±¼¥t¤@¦æ¡C - µM«á¥Î C-y ±N²Ä¤G¦¸±þ±¼ªº¨º¦æ±a¦^¨Ó¡C - µM«á¦A¥Î M-y¡A¥¦±N·|³Q²Ä¤@¦¸±þ±¼ªº¨º¦æ¨ú¥N¡C - ¦A°µ´X¦¸ M-y ¬Ý¬Ý±z·|±o¨ì¤°»ò¡C - ¤£¶¡Â_¦a°µ¡Aª½¨ì²Ä¤G­Ó±þ±¼¦æ¦^¨Ó¡A¦A°µ­Ó´X¦¸¡C - ¦pªG±z·Qªº¸Ü¡A±z¥i¥H¸ÕµÛµ¹ M-y ¥¿ªº©Î¬O­tªº°Ñ¼Æ¡C - - -* ¨ú®ø°Ê§@¡] UNDO ¡^ --------------------- - -¦pªG±z¹ï¤å¦r°µ¤F¤@¨Ç§ïÅÜ¡A«á¨Óı±o¥¦¬O­Ó¿ù»~¡A±z¥i¥H Undo «ü¥O¨ú®ø³o¤@ -­Ó§ïÅÜ¡AC-x u¡C - -³q±` C-x u ·|§â¤@­Ó«ü¥O©Ò³y¦¨ªº§ïÅܨú®ø±¼¡F¦pªG±z¦b¤@¦æ¤¤­«½Æ¤F³\¦h¦¸ -C-x u¡A¨C¤@­Ó­«½Æ³£·|¨ú®øÃB¥~ªº«ü¥O¡C - -¦ý¬O¦³¨â­Ó¨Ò¥~¡G -(1) ¨S¦³§ïÅܤå¦rªº«ü¥O¤£ºâ¡]³o¥]¬A¤F´å¼Ð²¾°Êªº«ü¥OÁÙ¦³±²¶b«ü¥O¡^¡F -(2) ¦Û¦æÁä¤Jªº¦r¤¸¥H¤@¸s¤@¸s -- ¨C¸s³Ì¦h 20 ­Ó -- ¨Ó¶i¦æ³B²z¡C - ¡]³o¬O¬°¤F´î¤Ö±z¦b¨ú®ø¡u´¡¤J¤å¦r°Ê§@¡v©Ò¥²¶·Áä¤J C-x u ªº¦¸¼Æ¡^ - ->> ¥H C-k ±N³o¤@¦æ±þ±¼¡AµM«áÁä¤J C-x u «á¥¦·|¦A¦¸¥X²{¡C - -C-_ ¬O¥t¤@­Ó¨ú®ø«ü¥O¡F¥¦ªº§@¥Î´N©M C-x u ¤@¼Ë¡A¦ý¬O¦b¤@¦æ¤¤¥¦¤ñ¸û®e©ö -Áä¤J³\¦h¦¸¡CC-_ ªº¯ÊÂI¬O¦b¬Y¨ÇÁä½L¤¤¤£¤Ó²M·¡¦p¦óÁä¤J¥¦¡A³o¤]¬O¬°¤°»ò§Ú -­Ì¦P®É´£¨Ñ C-x u ªº­ì¦]¡C¦b¬Y¨Ç²×ºÝ¾÷¡A±z¥i¥H«ö¦í CONTROL ¦AÁä¤J / ¡A -¨ÓÁä¤J C-_¡C - -¤@­Ó¼Æ¦r°Ñ¼Æ¹ï C-_ or C-x u ¨Ó»¡¡A¬O§@¬°­«½Æªº¦¸¼Æ¡C - - -* Àɮס] FILE ¡^ ----------------- - -¬°¤F¨Ï±z½s¿èªº¤å¦r¥Ã¤[«O¦s¡A±z¥²¶·§â¥¦©ñ¨ì¤@­ÓÀɮפ¤¡C¤£µM¡A·í±zÂ÷¶} -Emacs «á¡A¥¦´N·|ÀH¤§®ø¥¢¡C¬°¤F§â±zªº¤å¦r©ñ¦bÀɮפ¤¡A±z¥²¶·¦b±zÁä¤J³o¨Ç -¤å¦r«e¡u§ä¡] find ¡^¡vÀɮסC¡]³o¤]ºÙ¤§¬°¡u«ô³X¡] visiting ¡^¡vÀɮס^ - -§ä¤@­ÓÀɮתí¥Ü±z¥i¥H¦b Emacs ¤¤¬Ý¨ìÀɮתº¤º®e¡C±q³\¦h¤è­±¨Ó¬Ý¡A¥¦´N¹³ -¬O±zª½±µ½s¿è¨º­ÓÀɮפ@¼Ë¡CµM¦Ó¡Aª½¨ì±z¡uÀx¦s¡v³o­ÓÀɮפ§«e¡A±z¨Ï¥Î -Emacs ½s¿è©Ò°µ¥Xªº§ïÅܨ䣷|«O¦s¤U¨Ó¡C³o´N¬O¬°¤°»ò·í±z¤£·Q­n®É¡A±z¥i¥H -ÁקK¯d¤U­×§ï¨ì¤@¥bªºÀɮצb¨t²Î¤¤¡C§Y¨Ï·í±zÀx¦s¤F¡AEmacs ¤]·|§â­ì¥»ªºÀÉ -®×¥H¤@­Ó¤£¦Pªº¦WºÙ«O¯d¤U¨Ó¡A­Y±zµy«áı±o±zªº§ïÅܬO¤@­Ó¿ù»~ªº¸Ü¡A´N¥i¥H -¨Ï¥Î¥¦¡C - -¦b¾aªñ¿Ã¹õªº¤U¤è¡A±z¥i¥H¬Ý¨ì¥Ñ¯}§é¸¹¶}©l»Pµ²§ôªº¤@¦æ -- ³q±`¬O¥H¡u--:-- -TUTORIAL.zh¡v©Î¨ä¥LÃþ¦üªºªF¦è§@¬°¶}©l¡C³o¬O¿Ã¹õªº¤@³¡¤À¡A³q±`¥Î¨Óªí¥Ü -±z¥¿¦b«ô³XªºÀɮסC²{¦b¡A±z¥¿¦b«ô³XªºÀÉ®×¥s°µ¡uTUTORIAL.zh¡v¡A¥¦¬O±z­Ó -¤Hªº«þ¨©¡C·í±z¥H Emacs §ä¥X¤@­ÓÀɮ׮ɡA¨º­ÓÀɮתº¦W¦r´N·|¥X²{¦b¨º­Ó¦a -¤è¡C - -Ãö©ó´M§äÀɮתº«ü¥O¤¤¡A¦³¤@­Ó«Ü¯S§Oªº¬O¡A±z¥²¶·»¡¥X³o­Ó±z·Q­nªºÀɮצWºÙ¡C -§Ú­Ì»¡³o­Ó«ü¥O¡u±q²×ºÝ¾÷¤¤Åª¶i¤F¤@­Ó°Ñ¼Æ¡v¡C¡]¦b³o­Ó¨Ò¤l¤¤¡A³o°Ñ¼Æ´N¬O -Àɮתº¦WºÙ¡^·í±zÁä¤J³o­Ó«ü¥O«á¡A - - C-x C-f §ä¤@­ÓÀÉ®× - -Emacs ·|­n±zÁä¤JÀɦW¡C±z©ÒÁä¤JªºÀɦW·|¥X²{¦b¿Ã¹õªº©³¦æ¡C¦b³Q¥Î¨Ó§@¬°³o -ºØ§Î¦¡ªº¿é¤J®É¡A©³¦æ³QºÙ¬°¤p½w½Ä°Ï¡] minibuffer ¡^¡C±z¥i¥H¨Ï¥Î¥¿±`ªº -Emacs ½s¿è«ü¥O¨Ó½s¿è³o­ÓÀɦW¡C - -·í±z¥¿¦bÁä¤JÀɦW®É¡]©Î¬O¥ô¦óªº¤p½w½Ä°Ï¿é¤J®É¡^¡A±z¥i¥H¥Î C-g ³o­Ó«ü¥O -¨Ó¨ú®ø¥¦¡C - ->> Áä¤J C-x C-f¡AµM«áÁä¤J C-g¡C³o·|¨ú®ø¤p½w½Ä°Ï¡A - ¨Ã¥B¤]·|¨ú®ø¨Ï¥Î³o­Ó¤p½w½Ä°Ïªº C-x C-f «ü¥O¡C - ¦]¦¹±z¨S¦³§ä¥ô¦óÀɮסC - -·í±z¤w¸gÁä¤J¤F³o­ÓÀɦW¡A½ÐÁä¤J ¨Óµ²§ô¥¦¡CµM«á C-x C-f «ü¥O´N -·|¶}©l¹B§@¡A¨Ã¥B§ä¨ì±z©Ò¿ï¾ÜªºÀɮסC¤p½w½Ä°Ï¦b·í C-x C-f «ü¥Oµ²§ô®É´N -·|®ø¥¢¡C - -¹L¤F¤@·|¨à¡AÀɮתº¤º®e´N·|¥X²{¦b¿Ã¹õ¡AµM«á±z´N¥i¥H½s¿è¥¦ªº¤º®e¡C·í±z·Q -­n±zªº§ïÅܥä[«O¦s®É¡AÁä¤J³o­Ó«ü¥O¡G - - C-x C-s Àx¦s³o­ÓÀÉ®× - -³o·|§â¦b Emacs ¤¤ªº¤å¦r½Æ»s¨ìÀɮפ¤¡C·í±z²Ä¤@¦¸°µ³o­Ó°Ê§@®É¡AEmacs ·| -±N­ì©lªºÀÉ®×­«·s©R¦W¦¨¤@­Ó·sªº¦W¦r¡A³o¼Ë¥¦¤~¤£·|®ø¥¢¡C·sªº¦W¦r³q±`·|¥[ -¤J¡u~¡v¨ì­ì©lÀɮתº¦W¦r«á­±¡C - -·íÀx¦sµ²§ô®É¡AEmacs ·|§â¼g¤JÀɮתº¦W¦r¦C¥X¨Ó¡C±zÀ³¸Ó¸g±`¦a¶i¦æÀx¦s¡A³o -¼Ë¤l¦pªG¨t²Î·í¾÷®É¡A±z´N¤£·|·l¥¢¤Ó¦h¤u§@¡C - ->> Áä¤J C-x C-s ¥HÀx¦s¥»§Ö³t«ü«nªº±zªº«þ¨©¡C - ³o·|§â¡uWrote ...TUTORIAL.zh¡v³o­Ó°T®§Åã¥Ü¦b¿Ã¹õªº¤U¤è¡C - -ª`·N¡G¦b¬Y¨Ç¨t²Î¤¤¡AÁä¤J C-x C-s ±N·|§â¿Ã¹õ­áµ²¡A±z±N¬Ý¤£¨ì±q Emacs ¨Ó -ªº¥ô¦ó¿é¥X¡C³oªí¥Ü§@·~¨t²Î¤@­ÓºÙ¬°¡u¬yµ{±±¨î¡vªº¡u¥\¯à¡v±N C-s «ü¥OÄd -ºI¦í¡A¨Ã¥B¤£Åý¥¦¶Ç¨ì Emacs¡C­n¨ú®ø¿Ã¹õªº­áµ²¡A½ÐÁä¤J C-q¡CµM«á¨ì Emacs -¨Ï¥Î¤â¥U¤¤¬Ý¬Ý¹ï©ó¡uº¥¶i¦¡·j´Mªº¦P®É¶i¤J¡] Spontaneous Entry to -Incremental Search ¡^¡v³o­Ó¥DÃD¡A¥H¨ú±o³B²z³o­Ó¡u¥\¯à¡vªº«Øij¡C - -±z¥i¥H§ä¥X¤@­Ó¤w¸g¦s¦bªºÀɮסAµM«áÆ[¬Ý¥¦©Î½s¿è¥¦¡C±z¤]¥i¥H§ä¤@­ÓÁÙ¨S¦³ -¦s¦b¹LªºÀɮסC³o¬O¥H Emacs «Ø¥ß¤@­ÓÀɮתº¤èªk¡G§ä³o­ÓÀɮסA´N±q¹s¶}©l¡A -µM«á¶}©l´¡¤J¤å¦r¨ì³o­ÓÀɮפ¤¡C·í±z­n¨D¡uÀx¦s¡v³o­ÓÀɮסAEmacs ·|¯uªº«Ø -¥ß¤@­ÓÀɮסA¨Ã§â±z©Ò´¡¤Jªº¤å¦rÂ\¨ìÀɮפ¤¡C±q¨º®É­Ô¶}©l¡A±z´N¥i¥H·í¦Û¤v -¬O¦b½s¿è¤@­Ó¤w¸g¦s¦bªºÀɮפF¡C - - -* ½w½Ä°Ï¡] BUFFER ¡^ --------------------- - -¦pªG±z¥H C-x C-f¡u§ä¡v²Ä¤G­ÓÀɮסA²Ä¤@­ÓÀɮפ´µM¦s¦b Emacs ¤º¡C­n¤Á´« -¦^¥¦¡A±z¥i¥H C-x C-f ¦A§ä¥¦¤@¦¸¡C¨Ì¦¹¤è¦¡¡A±z¥i¥H¦b Emacs ¤º¶}±Ò¤£¤ÖÀÉ -®×¡C - ->> ¥HÁä¤J C-x C-f foo ªº¤è¦¡«Ø¥ß¤@­Ó¦W¬°¡ufoo¡vªºÀɮסC - µM«á´¡¤J¤@¨Ç¤å¦r¡A½s¿è¥¦¡AµM«á¦A¥H C-x C-s Àx¦s¡ufoo¡v¡C - ³Ì«á¡AÁä¤J C-x C-f TUTORIAL.zh ¦^¨ì¥»§Ö³t«ü«n¡C - -Emacs Àx¦s¨C­ÓÀɮתº¤å¦r¦b¤@­ÓºÙ¬°¡u½w½Ä°Ï¡] buffer ¡^¡vªºª«¥ó¤¤¡C§ä¤@ -­ÓÀÉ®×·|¦b Emacs ¤º³¡«Ø¥ß¤@­Ó½w½Ä°Ï¡C·Q­n¬Ý¥Ø«e¦s¦b±zªº Emacs ªº¤u§@¤¤ -½w½Ä°Ï¦Cªí¡AÁä¤J - - C-x C-b ¦C¥X½w½Ä°Ï - ->> ²{¦b´N¸Õ¤@¤U C-x C-b - -¬Ý¬Ý¨C¤@­Ó½w½Ä°Ï¬O¦p¦ó©R¦Wªº¡A¥¦¤]¥i¯à¦P®É¾Ö¦³¤@­Ó¡uÀx¦s¨ä¤º®eªºÀɮסv -ªº¦WºÙ¡C±z¦b¤@­Ó Emacs µ¡®æ©Ò¨£¨ìªº¡u¥ô¦ó¡v¤å¦r³£¬O¬Y­Ó½w½Ä°Ïªº¤@³¡¥÷¡C - ->> Áä¤J C-x 1 ¥HÂ÷¶}½w½Ä¦Cªí - -·í±z¦³¼Æ­Ó½w½Ä°Ï®É¡A¦b¥ô¦ó®É­Ô¨ä¤¤¥u¦³¤@­Ó¬O¡u¥Ø«e§@¥Îªº¡v¡C¦Ó¨º­Ó´N¬O -±z¦b½s¿èªº½w½Ä°Ï¡C¦pªG±z·Q­n½s¿è¥t¤@­Ó½w½Ä°Ï¡A¨º»ò±z¥²¶·¡u¤Á´«¡v¨ì¥¦¡C -¦pªG±z·Q­n¤Á´«¨ì³s±µ¨ì¬Y­ÓÀɮתº½w½Ä°Ï¡A±z¥i¥H¥Î C-x C-f ¦A¦¸«ô³X¨º­Ó -ÀɮסC¦ý¬O¦³­Ó¤ñ¸û²³æªº¤è¦¡¡G¨Ï¥Î C-x b ¡F¦b³o­Ó«ü¥O¤¤¡A±z¥²¶·Áä¤J½w -½Ä°Ïªº¦WºÙ¡C - ->> Áä¤J C-x b foo ¥H¦^¨ì§t¦³Àɮסufoo¡vªº¤å¦rªº½w½Ä°Ï¡C - µM«á«Ø¤J C-x b TUTORIAL ¥H¦^¨ì¥»§Ö³t«ü«n¡C - -´N¤j³¡¥÷ªº±¡ªp¨Ó»¡¡A½w½Ä°Ïªº¦WºÙ»PÀɮתº¦WºÙ¬O¬Û¦Pªº¡]°£¥h¤FÀɦW¤¤ªº¥Ø -¿ý³¡¥÷¡^¡CµM¦Ó¨Ã¤£Á`¬O¦p¦¹¡C±z¥H C-x C-b ©Ò»s§@¥Xªº½w½Ä°Ï¦CªíÁ`¬O·|Åã -¥Üµ¹±z¨C¤@­Ó½w½Ä°Ïªº¦WºÙ¡C - -±z¦b¤@­Ó Emacs µ¡®æ¤¤©Ò¨£¨ìªº¡u¥ô¦ó¡v¤å¦rÁ`¬O¬Y­Ó½w½Ä°Ïªº¤@³¡¥÷¡C¦³¤@ -¨Ç½w½Ä°Ï¨Ã¨S¦³³s±µ¨ìÀɮסCÁ|¨Ò¨Ó»¡¡A©R¦W¬°¡u*Buffer List*¡vªº½w½Ä°Ï¨Ã -¨S¦³¥ô¦óÀɮסC¥¦¬O¥]§t¦³±z¥H C-x C-b «ü¥O©Ò»s§@¥X¨Óªº½w½Ä°Ï¦Cªíªº½w½Ä -°Ï¡C©R¦W¬°¡u*Messages*¡vªº½w½Ä°Ï¤]¨S¦³³s±µ¨ì¥ô¦óÀɮסF¥¦¦b±zªº Emacs -§@·~¶¥¬q¤¤¥]§t¥X²{¦b©³¦æªº°T®§¡C - ->> Áä¤J C-x b *Messages* ¨Ó¬Ý¬Ý°T®§ªº½w½Ä°Ï¡C - µM«áÁä¤J C-x b TUTORIAL ¦^¨ì¥»§Ö³t«ü«n¡C - -¦pªG±z¹ïÀɮפ¤ªº¤å¦r°µ¤F­×§ï¡AµM«á§ä¥t¤@ÀɮסA³o­Ó°Ê§@¨Ã¤£·|Àx¦s²Ä¤@­Ó -ÀɮסC¥¦ªº­×§ï¤´Â¦s¦b Emacs ¤¤¡A¤]´N¬O¦b¨º­ÓÀɮתº½w½Ä°Ï¤¤¡C¹ï©ó²Ä¤G -­ÓÀɮתº«Ø¥ß©Î½s¿è¨Ã¤£·|¼vÅT¨ì²Ä¤@­ÓÀɮתº½w½Ä°Ï¡C³o¼Ë¤l«D±`¦³¥Î¡A¦ý³o -­Ó±¡§Î¤]ªí©ú¤F±z»Ý­n¡u¤@­Ó¤è«Kªº¤èªk¡v¨ÓÀx¦s²Ä¤@­ÓÀɮתº½w½Ä°Ï¡C¥u¬O¬° -Àx¦s²Ä¤@­ÓÀÉ®×´N¥²¶·¥H C-x C-f ¤Á´«½w½Ä°Ï¡A¤~¯à¥H C-x C-s ±N¥¦Àx¦s¡AÁ` -¬O­ÓÅý¤H°Q¹½ªº¹Lµ{¡C¦]¦¹§Ú­Ì¦³ - - C-x s Àx¦s¤@¨Ç½w½Ä°Ï - -C-x s ·|¸ß°Ý±zÃö©ó±z¤w°µ¥X­×§ï¦ýÁÙ¨SÀx¦sªº¨C¤@­Ó½w½Ä°Ï¡C¥¦·|°Ý±z¡A¹ï©ó -¨C¤@­Ó³o¼Ëªº½w½Ä°Ï¡A¬O§_­nÀx¦s¡H - ->> ´¡¤J¤@¦æ¤å¦r¡AµM«áÁä¤J C-x s¡C - ¥¦À³¸Ó·|°Ý±z¬O§_­nÀx¦s¦W¬° TUTORIAL.zh ªº½w½Ä°Ï¡C - Áä¤J¡yy¡z¥H¦^µª­nÀx¦s¡C - - -* ÂX¥R«ü¥O¶°¡] EXTENDING THE COMMAND SET ¡^ -------------------------------------------- - -¥Ñ©ó Emacs ¾Ö¦³¤Ó¦h«ü¥O¡A§Y«K¨Ï¥Î¤W©Ò¦³ªº CONTROL ©M META ¦r¤¸¡A¤]¨S¿ì -ªk§¹¥þÂ\¤W¡CEmacs ¥H X¡]ÂX¥R¡yeXtend¡z¡^«ü¥O¨Ó¸Ñ¨M³o­Ó°ÝÃD¡CÂX¥R«ü¥O¦³ -¨âºØ«¬¦¡¡G - - C-x ¦r¤¸ÂX¥R¡C«á­±¸òµÛ¤@­Ó¦r¤¸¡C - M-x ¦³¦WºÙªº«ü¥OÂX¥R¡C«á­±¸òµÛ¤@­Óªøªº¦WºÙ¡C - -ÁÙ¦³¤@¨Ç«ü¥O³q±`¨Ó»¡¬O«Ü¦³¥Îªº¡A¦ý¬O¤ñ±z¤w¸g¾Ç¨ìªº«ü¥O¸û¤Ö¨Ï¥Î¡C±z¤w¸g -¬Ý¹L¨ä¤¤¨â­Ó¡GÀɮ׫ü¥O¤¤ªº C-x C-f ¥h´M§ä¡A¥H¤Î C-x C-s ¥hÀx¦s¡C¨ä¥Lªº -¨Ò¤l«h¦³µ²§ô Emacs ¶¥¬qªº«ü¥O -- ³o­Ó«ü¥O¬O C-x C-c¡C¡]¤£­n¾á¤ß±z·|¥¢ -¥h¤w¸g°µ¥Xªº§ïÅÜ¡AC-x C-c ¦b¥¦±þ±¼ Emacs ¤§«e·|´£¨ÑÀx¦s¨C¤@­ÓÅܰʪºÀÉ -®×ªº¾÷·|¡C¡^ - -C-z ¬O *¼È®É* Â÷¶} Emacs ªº«ü¥O -- ¦]¦¹±zµy«á¥i¥H¦^¨ì¦P¼Ëªº Emacs ¶¥¬q¡C - -¦b¬Y¨Ç¤¹³\¥¦ªº§@¥Îªº¨t²Î¤¤¡A C-z ·|¡u¼È°±¦í¡] suspends ¡^¡vEmacs¡A¤]´N -¬O»¡¡A¥¦·|¦^¨ì shell ¦ý¤£·|§â Emacs ·´±¼¡C¦b³Ì±`¥Îªº shell ¤¤¡A±z¥i¥H -¥Î¡yfg¡z©Î¡y%emacs¡z¨âºØ«ü¥O«ì´_ Emacs¡C - -¦b¨S¦³´£¨Ñ¼È°±¥\¯àªº¨t²Î¤¤¡AC-z ·|¦b Emacs ©³¤U«Ø¥ß¤@­Ó subshell ¥HÅý -±z¦³¾÷·|°õ¦æ¨ä¥Lªºµ{¦¡¡A¨Ã¥B¦bµy«á¦^¨ì Emacs¡A¥¦¨Ã¨S¦³¯uªºÂ÷¶} Emacs¡C -¦b³o­Ó¨Ò¤l¤¤¡Ashell «ü¥O¡yexit¡z¬O±qsubshell ¦^¨ì Emacs ªº³q±`¤è¦¡¡C - -¨Ï¥Î C-x C-c ªº®É¾÷¬O·í±z¥´ºâ­nµn¥X®É¡C¥¦¤]«D±`¾A¦X¥Î¨ÓÂ÷¶}³Q¨ä¥L¶l¥ó -³B²zµ{¦¡¡A¥H¤Î³\¦h¤£¦PªºÀ³¥Îµ{¦¡©Ò±Ò°Êªº Emacs¡CµM¦Ó¦b¤@¯ëªºª¬ªp¤U¡A¦p -ªG±z¤£¥´ºâµn¥X¡A³Ì¦n¬O§â Emacs ¼È°±¦Ó¤£¬OÂ÷¶}¥¦¡C - -¦³³\¦h C-x ªº«ü¥O¡C³o¸Ì¬O¤@¥÷±z¤w¸g¾Ç¹Lªº¦Cªí¡G - - C-x C-f §äÀɮסC - C-x C-s Àx¦sÀɮסC - C-x C-b ¦C¥X½w½Ä°Ï¡C - C-x C-c Â÷¶} Emacs¡C - C-x 1 °£¤F¤@­Ó¥~¡A§R¥h¨ä¥L©Ò¦³ªºµ¡®æ¡C - C-x u ¨ú®ø°Ê§@¡C - -¥HÂX¥R¨Ó©R¦Wªº«ü¥O³q±`¬O¤£¤Ó±`¨Ï¥Îªº«ü¥O¡A©Î¬O¥u¦b¯S©wªº¼Ò¦¡¤U¤~·|¨Ï¥Î -ªº«ü¥O¡C¤@­Ó¨Ò¤l¬O¨ú¥N¦r¦ê«ü¥O¡A¥¦·|¥þ°ì¦a±N¤@­Ó¦r¦ê¥H¥t¤@­Ó¨Ó¨ú¥N¡C·í -±zÁä¤J M-x ®É¡AEmacs ·|¦b¿Ã¹õªº©³ºÝ¸ß°Ý±z¡AµM«á±z¤]À³¸ÓÁä¤J³o­Ó«ü¥Oªº -¦WºÙ¡C¦b³o­Ó¨Ò¤l¤¤¬O¡yreplace-string¡z¥u­nÁä¤J¡yrepl s¡z¡AµM«á -Emacs ±N·|¸É»ô³o­Ó¦WºÙ¡C¥H ¨Óµ²§ô³o­Ó«ü¥O¦WºÙ¡C - -¨ú¥N¦r¦ê«ü¥O»Ý­n¨â­Ó°Ñ¼Æ -- ³Q¨ú¥Nªº¦r¦ê¥H¤Î¥Î¨Ó¨ú¥N¥¦ªº¦r¦ê¡C±z¥²¶·¥H -Newline ¦r¤¸¨Óµ²§ô¨C¤@­Ó°Ñ¼Æ¡C - ->> ±N´å¼Ð²¾¨ì¥»¦æªº¤U¨â¦æªÅ¥Õ¡AµM«áÁä¤J - M-x repl schangedaltered¡C - - ¡i¬°¤F»¡©úªº¥Øªº¡A©ó¤U«O¯d¤@¦æ­ì¤å¡C - Notice how this line has changed: you've replaced... ¡j - -½Ðª`·N³o¤@¦æ¬O«ç»ò§ïÅܪº¡G¦b´å¼Ðªº°_©l¦ì¸m¤§«á¡A±z¤w¸g±N c-h-a-n-g-e-d -³o­Ó¦r -- ¤£ºÞ¥¦¦b­þ¸Ì¥X²{ -- ¥H¡ualtered¡v³o­Ó¦r¨Ó¨ú¥N¤F¡C - - -* ¦Û°Ê¦sÀÉ¡] AUTO SAVE ¡^ -------------------------- - -·í±z¦b¤@­ÓÀɮפ¤°µ¤F­×§ï¡A¦ý¬OÁÙ¨S¦³±N¥¦­ÌÀx¦s°_¨Ó¡A¨º»ò¦pªG±zªº¹q¸£·í -¾÷¡A¥¦­Ì±N¦³¥i¯à¿ò¥¢¡C¬°¤FÁקK³oºØ±¡§Îµo¥Í¦b±zªº¨­¤W¡AEmacs ·|©w´Á¦a±N -±z¥¿¦b½s¿èªºÀÉ®×¼g¤J¡u¦Û°ÊÀx¦s¡vÀɮפ¤¡C¦Û°ÊÀx¦sÀɮצbÀɦWªº«e«á·|¦U¦³ -¤@­Ó # ²Å¸¹¡FÁ|¨Ò¨Ó»¡¡A¦pªG±zªºÀɮצW¬°¡uhello.c¡v¡A¨º»ò¥¦ªº¦Û°ÊÀx¦sÀÉ -®×ªºÀɦW´N¬O¡u#hello.c#¡v¡C·í±z¥H¥­±`ªº¤è¦¡Àx¦sÀɮ׮ɡAEmacs ´N·|§â¥¦ -ªº¦Û°ÊÀx¦sÀɧR°£¡C - -¦pªG·í¾÷¡A±z¥i¥H¸g¥Ñ¥¿±`¦a´M§äÀɮסA¡]«üªº¬O±z¦b½s¿èªºÀɮצӤ£¬O¦Û°ÊÀx -¦sÀÉ¡^µM«áÁä¤J M-x recover file ¨Ó¦^´_±zªº¦Û°ÊÀx¦sÀÉ¡C·í¥¦­n¨D -½T»{®É¡AÁä¤J yes ¥HÄ~Äò¨Ã¦^´_¦Û°ÊÀx¦sªº¸ê®Æ¡C - - -* ¦^À³°Ï¡] ECHO AREA ¡^ ------------------------ - -¦pªG Emacs ¨£¨ì±z«ÜºC¦aÁä¤J¦h¦r¤¸«ü¥O¡A¥¦·|±N¥¦­ÌÅã¥Ü¦b¦ì©óµ¡®æ¤U¤è¡A -ºÙ¬°¡u¦^À³°Ï¡vªº°Ï°ìµ¹±z°Ñ¾\¡C¦^À³°Ï¦ì¦bµ¡®æªº³Ì«á¤@¦æ¡C - - -* ª¬ºA¦æ¡] MODE LINE ¡^ ------------------------ - -¦ì¦b¦^À³°Ïªº¥¿¤W­±¬OºÙ¬°¡uª¬ºA¦æ¡vªº¤@¦æ¡Cª¬ºA¦æÅã¥Ü¥X¤@¨Ç¸ê°T¡A¦p¡G - ---:** TUTORIAL.zh (Fundamental)--L670--58%---------------- - -¥»¦æ´£¨Ñ¤@¨ÇÃö©ó¡uEmacs ªºª¬ºA¡v¥H¤Î¡u±z¥¿¦b½s¿èªº¤å¦r¡vªº¦³¥Î¸ê°T¡C - -±z¤w¸gª¾¹DÀɦWªº·N¸q¬O¤°»ò¤F -- ´N¬O±z§äªºÀɮסC-NN%-- «ü¥X¥Ø«e±z¦b¤å -¦rÀɤ¤ªº¦ì¸m¡F¥¦ªº·N«ä¬O»¡¡G¦³ NN ¦Ê¤À¤ñªº¤å¦r¦ì¦bµ¡®æªº¤W­±¡C¦pªGÀÉ®× -ªº³»ºÝ´N¦ì¦bµ¡®æ¤¤¡A¨º»ò¥¦´N·|Åã¥Ü --Top-- ¦Ó¤£¬O --00%--¡C¦pªGÀɮתº -©³³¡´N¦ì¦bµ¡®æ¤¤¡A¨º»ò¥¦¬OÅã¥Ü --Bot--¡C¦pªG±z¥¿¦b¬Ýªº¤å¦rÀɫܤp¡A¦bµ¡ -®æ¤¤´N¨¬¥H¬Ý¨ì¥þ³¡ªº¤º®e¡A¨º»òª¬ºA¦æ´N·|Åã¥Ü --All--¡C - -L ©M¼Æ¦r¥H¥t¤@ºØ¤è¦¡¨Óªí¥Ü¥X¦ì¸m¡G¥¦­Ìµ¹¥X¤F¥Ø«e©Ò¦bªº¦æ¼Æ¡] Line ¡^¡C - -¦b¾aªñ«e­±ªº¬P¸¹ªí¥Ü±z¤w¸g¹ï³o¨Ç¤å¦r°µ¤F§ïÅÜ¡C¦b±z­è«ô³X©ÎÀx¦s¤@­ÓÀÉ®× -¤§«á¡Aª¬ºA¦æªº¨º­Ó³¡¤À·|¨S¦³¬P¸¹¡A¥u¦³¯}§é¸¹¡C - -ª¬ºA¦æ¤¤¦ì©ó¤p¬A©·¸Ì­±ªº³¡¤À¡A¬O¥Î¨Ó§i¶D±z¥¿¦b¨Ï¥Î¤°»ò½s¿è¼Ò¦¡¡C¹w³]ªº -¼Ò¦¡¬O Fundamental¡A¤]´N¬O±z²{¦b¨Ï¥Îªº¡C¥¦¬O¡u¥D¼Ò¦¡¡vªº¤@­Ó¨Ò¤l¡C - -Emacs ¦³³\¦h¤£¦Pªº¥D¼Ò¦¡¡C¥¦­Ì¤§¤¤¦³¤@¨Ç¬O¥Î¨Ó½s¿è¤£¦Pªº»y¨¥¥H¤Î¡þ©Î¤£ -¦PºØÃþªº¤å¦r¡A¹³¬O Lisp ¼Ò¦¡¡B Text ¼Ò¦¡µ¥µ¥¡C¦b¥ô¦óªº®É¶¡¥u¦³¤@­Ó¥D¼Ò -¦¡¥i¥H§@¥Î¡A¨Ã¥B¥¦ªº¦WºÙÁ`¥i¥H¦bª¬ºA¦æ¤¤³Q§ä¨ì¡A´N¦b²{¦bªº -¡uFundamental¡v¤¤ªº¦ì¸m¡C - -¨C¤@­Ó¥D¼Ò¦¡³£¨Ï±o¤@¨Ç«ü¥Oªº¦æ¬°ªí²{±o¤£¤Ó¤@¼Ë¡CÁ|¨Ò¨Ó»¡¡A¦b¤@­Óµ{¦¡¤¤ -¦³¤@¨Ç«ü¥O¥Î¨Ó»s§@¥Xµù¸Ñ¡A¦Ó¥Ñ©ó¨C¤@ºØµ{¦¡»y¨¥¹ï©ó¤@­Óµù¸ÑÀ³¸Óªø±o¹³¤° -»ò¡A³£¦³µÛ¤£¦Pªº·Qªk¡A¦]¦¹¨C¤@­Ó¥D¼Ò¦¡³£¥²¶·¥H¤£¦Pªº¤è¦¡¨Ó´¡¤Jµù¸Ñ¡C¨C -¤@­Ó¥D¼Ò¦¡¬O¤@­Ó©µ¦ù«ü¥Oªº¦WºÙ¡A¨Ï±o±z¥i¥H¥Î¨Ó¤Á´«¦Ü¨º­Ó¼Ò¦¡¡CÁ|¨Ò¨Ó»¡¡A -M-x fundamental-mode ´N¬O¤Á´«¨ì Fundamental ¼Ò¦¡ªº¤@­Ó«ü¥O¡C - -¦pªG±z·Q­n½s¿è¤HÃþ»y¨¥ªº¤å¦rÀÉ®× -- ¹³¬O²{¦bªº³o¤@­Ó¡A±zÀ³¸Ó¨Ï¥Î Text -¼Ò¦¡¡C - ->> Áä¤J M-x text mode¡C - -¤£­n¾á¤ß¡A¨S¦³¥ô¦ó¤@­Ó±z¤w¸g¾Ç¹Lªº Emacs «ü¥O¡A·|³Q§ïÅܦ¨¥ô¦ó«D±`¤£¦P -ªº§Î¦¡¡C¦ý¬O±z¥i¥Hµo²{¨ì M-f ©M M-b ²{¦b§âºJ¸¹¡]'¡^µø¬°¦rªº¤@³¡¤À¡C¥ý -«e¡A¦b Fundamental ¼Ò¦¡¤¤¡AM-f ©M M-b ±NºJ¸¹µø¬°¦rªº¤À¹j²Å¸¹¡C - -¥D¼Ò¦¡³q±`·|¹³¤W­z¨º­Ó¨Ò¤l¤@¼Ë¡A°µ¥X¤@¨Çºë¥©ªº§ïÅÜ¡G¤j³¡¤Àªº«ü¥O¦b¨C¤@ -­Ó¥D¼Ò¦¡¤¤¡u°µ¦P¼Ëªº¨Æ¡v¡A¦ý¬O¥¦­Ì¥H¤@ÂIÂI¤£¦Pªº¤è¦¡¨Ó¤u§@¡C¡i¦AÁ|­Ó¨Ò -¤l¡A±µÄò¤W­±©Ò¶}ªºÀY¡A¥Hµ{¦¡»y¨¥ªºµù¸Ñ¨Ó»¡¡C¦P¼Ë¤@­Ó´¡¤Jµù¸Ñªº°Ê§@¡A¦] -¬°±z¨Ï¥Îªºµ{¦¡»y¨¥¡þ¥D¼Ò¦¡ªº¤£¦P¦Ó¤£¦P¡C­Y±z¨Ï¥Î C »y¨¥¡AEmacs ´¡¤J -¡y/* ¤¶©ó¤¤¶¡ªº¬°µù¸Ñ°Ï¶ô */¡z¡F­Y±z¨Ï¥Îªº¬O Fortran »y¨¥¡AEmacs ´¡¤J -¡yc ¥H¦r¤¸ c ¬°­ºªº¬°µù¸Ñ¦æ¡z¡F­Y±z¨Ï¥Îªº¬O Basic »y¨¥¡AEmacs «h´¡¤J¡y' -ºJ¸¹¥H«áªº¬°µù¸Ñ¤å¦r¡z¡C½s¿è¾¹ªº¼u©Ê¦p¦¹¡A¹ê¦b¨S¦³¥²­n¬°¤F¤£¦Pªº»y¨¥¡B -¥Øªº©Î¥~Æ[¡A³]­p¯S®í¤Æªº½s¿è¾¹¡C¡u¨D¤j¦P¡A¦s¤p²§¡v¦b³o¸Ì¤]¬O¦¨¥ßªº¡C¡j - -­nÂsÄý±z²{¦b©Ò³Bªº¥D¼Ò¦¡ªº¤å¥ó¡AÁä¤J C-h m¡C - ->> ¨Ï¥Î C-u C-v ¤@©Î¼Æ¦¸¡A±N¥»¦æ±a¨ì¾aªñ¿Ã¹õªº¤W¤è¡C ->> Áä¤J C-h m¡A¬Ý¬Ý Text ¼Ò¦¡»P Fundamental ¼Ò¦¡¬O­þ¸Ì¤£¦P¡C ->> Áä¤J C-x 1 ±N¤å¥ó±q¿Ã¹õ²¾°£±¼¡C - -¥D¼Ò¦¡¤§©Ò¥HºÙ¬°¡u¥D­n¡] major ¡^¡vªº­ì¦]¬O¦]¬°¥¦­Ì¤]¦³¦¸¼Ò¦¡¡] minor -mode ¡^¡C¦¸­nªº¼Ò¦¡¨Ã¤£¬O¥D¼Ò¦¡ªº¨ä¥L¿ï¾Ü¡A¦Ó¥u¬O¦¸­nªº§ó§ï¡C¨C¤@­Ó¦¸ -¼Ò¦¡¥i¥H³Q¥¦¥»¨­±Ò¥Î©Î°±¤î¡A©M©Ò¦³¨ä¥Lªº¦¸¼Ò¦¡µLÃö¡A¨Ã¥B¤]©M±zªº¥D¼Ò¦¡ -µLÃö¡C©Ò¥H±z¥i¥H¤£¨Ï¥Î¦¸¼Ò¦¡¡A©Î¤@­Ó¡A©Î¥ô¦ó¼Æ¶qªº¦¸¼Ò¦¡ªº²Õ¦X¡C - -¦³¤@­Ó¥s°µ Auto Fill ¼Ò¦¡ªº¦¸¼Ò¦¡«D±`¦³¥Î¡A¯S§O¬O¦b½s¿è¤HÃþ»y¨¥ªº¤å¦r -®É¡C·í³o­Ó¼Ò¦¡±Ò¥Î®É¡A Emacs ¦b·í±z´¡¤J¤å¦r¨Ã¥B¨Ï¤@¦æ¤Ó¼e®É¡A·|±N¨º¤@ -¦æ¡A¦b¦r»P¦r¤§¶¡¦Û°Ê¦a¤À¹j¶}¡C - -±z¥i¥H M-x auto fill mode ¨Ó±N Auto Fill ¼Ò¦¡±Ò¥Î¡C·í³o­Ó¼Ò¦¡ -±Ò¥Î®É¡A±z¥i¥H¨Ï¥Î M-x auto fill mode ¨Ó±N¥¦¨ú®ø¡C·í³o­Ó¼Ò¦¡¤£ -¥Î®É¡A«h³o­Ó«ü¥O·|±N¥¦±Ò°Ê¡A¦Ó·í³o­Ó¼Ò¦¡±Ò¥Î®É¡A³o­Ó«ü¥O·|±N¥¦Ãö³¬¡C§Ú -­Ì»¡³o­Ó«ü¥O¥Î¨Ó¡u¤Á´«¡] toggle ¡^¡v¼Ò¦¡¡C - ->> ²{¦bÁä¤J M-x auto fill mode¡CµM«á¤@¦A¦a´¡¤J¦r¦ê - ¡u asdf ¡v¡Aª½¨ì±z¬Ý¨ì¥¦¤À¦¨¨â¦æ¡C±z¥²¶·¦b¥¦­Ì¤§¶¡Â\¤WªÅ¥Õ¡A - ¦]¬° Auto Fill ¥u¦bªÅ¥Õ³BÂ_¦æ¡C - -Ãä¬É³q±`³Q³]©w¬° 70 ­Ó¦r¤¸¡A¦ý¬O±z¥i¥H¥Î C-x f «ü¥O¨Ó§ïÅÜ¥¦¡C±zÀ³¸Ó¥H -¤@­Ó¼Æ¦r°Ñ¼Æªº¤è¦¡¨Óµ¹©w±z©Ò§Æ±æªºÃä¬É³]©w¡C - ->> Áä¤J C-x f ¨Ãªþ¤W¤Þ¼Æ 20¡G¡yC-u 2 0 C-x f¡z¡C - µM«áÁä¤J¤@¨Ç¤å¦r¡A¬Ý¬Ý Emacs ¥H 20 ­Ó¦r¤¸¡A - ¦b¦æ»P¦æ¤§¶¡¶i¦æ fill °Ê§@¡CµM«á¦A¥Î¤@¦¸ C-x f ±NÃä¬É³]¦^ 70¡C - -¦pªG±z¦b¤@­Ó¬q¸¨ªº¤¤¶¡°µ¥X§ïÅÜ¡AAuto Fill ¼Ò¦¡¨Ã¤£·|¬°±z­«·s¶i¦æ fill -ªº°Ê§@¡] re-fill ¡^¡C­n re-fill ³o­Ó¬q¸¨¡AÁä¤J M-q (META-q)¡A¦Ó´å¼Ð¥² -¶·³B¦b¨ä¤¤¡C - ->> ²¾°Ê´å¼Ð¨ì«e¤@¬q¤¤¡AµM«áÁä¤J M-q¡C - - -* ·j´M¡] SEARCHING ¡^ ---------------------- - -Emacs ¥i¥H·j´M¦r¦ê¡]¦r¦ê¥i¥H¬O¤@¸s³sÄòªº¦r¤¸©Î¦r¡^¡i´N¤¤¤å¨Ó»¡¡A¦r¤¸©M -¦r°ò¥»¤W·N¸q¬Û¦P¡F¦¹³B©Ò«üªº¡y¦r¡z¡A¬O­^¤å¤¤¨S¦³³QªÅ¥Õ¹j¶}ªº¦r¤¸¶° -¦X¡C¡j¡A©¹«e©Î©¹«á·j´M³£¥i¥H¡C·j´M¤@­Ó¦r¦ê¬O¤@ºØ´å¼Ð²¾°Ê«ü¥O¡A¥¦·|±N´å -¼Ð²¾°Ê¨ì¦r¦ê¥X²{ªº¤U¤@­Ó¦a¤è¡C - -Emacs ·j´M«ü¥O»P¤j³¡¤À½s¿è¾¹ªº·j´M«ü¥O¤£¦Pªº¦a¤è¦b©ó¡A¥¦¬O¡uº¥¶iªº -¡] incremental ¡^¡v¡C³oªí¥Ü·j´Mµo¥Í¦b±zÁä¤J·Q­n·j´Mªº¤å¦r¦ê«á¡C - -­n¶}©l·j´Mªº«ü¥O¬O¡GC-s ©¹«e·j´M¡AC-r ©¹«á·j´M¡C¦ý¥ýµ¥¤@¤U¡I²{¦b¥ý¤£­n -¸Õ¡C - -·í±zÁä¤J C-s ®É¡A·|µo²{¨ì¦³¤@­Ó¦r¦ê¡uI-search¡v¥X²{¦b¦^À³°Ï¤¤§@¬°´£¥Ü¡C -¥¦§i¶D±z Emacs ²{¦b¥¿³B©óºÙ¬°¡uº¥¶i¦¡·j´M¡vªºª¬ºA¤¤¡Aµ¥«Ý±zÁä¤J±z·Q­n -·j´Mªº¦r¦ê¡C ·|µ²§ô¤@­Ó·j´M¡C - ->> ²{¦bÁä¤J C-s ¶}©l¤@­Ó·j´M¡CºC¤@ÂI¡A¤@¦¸Áä¤J¤@­Ó¦r¤¸¡A - Áä¤J¡ycursor¡z³o­Ó¦r¡A¨CÁä¤J¤@­Ó¦r¤¸®É¡Aµy·L°±¤@¤U¡A - ª`·N¬Ý¬Ý´å¼Ðµo¥Í¤F¤°»ò¨Æ¡C²{¦b±z¤w´¿¸g·j´M¹L¡ucursor¡v³o­Ó¦r¤F¡C ->> ¦A¦¸Áä¤J C-s ¨Ó·j´M¡ucursor¡vªº¤U¤@­Ó¥X²{¦ì¸m¡C ->> ²{¦bÁä¤J ¥|¦¸¡A¬Ý¬Ý´å¼Ð¬O¦p¦ó²¾°Êªº¡C ->> Áä¤J µ²§ô·j´M¡C - -±z¦³¨S¦³¬Ý¨ìµo¥Í¤F¤°»ò¡H¦b¤@­Óº¥¶i¦¡·j´M¤¤¡AEmacs ¸ÕµÛ­n¨«¨ì±zÁä¤Jªº¦r -¦êªº¤U¤@­Ó¥X²{¦ì¸m¡C­n²¾°Ê¨ì´å¼Ð©Ò¦bªº¤U¤@­Ó¥X²{¦ì¸m¡A¥u­n¦AÁä¤J C-s -¤@¦¸¡C¦pªG¨Ã¨S¦³³o¼Ëªº¥X²{¦ì¸m¦s¦b¡AEmacs ·|¹Í¤@Án¡A¨Ã§i¶D±z¥Ø«eªº·j´M -¡u¥¢±Ñ¡v¡C¥t¥~ C-g ¤]¥i¥H¥Î¨Óµ²§ô·j´M¡C - -ª`·N¡G¦b¬Y¨Ç¨t²Î¤¤¡AÁä¤J C-s ±N·|§â¿Ã¹õ­áµ²¡A±z±N¬Ý¤£¨ì±q Emacs ¨Óªº¥ô -¦ó¿é¥X¡C³oªí¥Ü§@·~¨t²Î¤@­ÓºÙ¬°¡u¬yµ{±±¨î¡vªº¡u¥\¯à¡v±N C-s «ü¥OÄdºI¦í¡A -¨Ã¥B¤£Åý¥¦¶Ç¨ì Emacs¡C­n¨ú®ø¿Ã¹õªº­áµ²¡A½ÐÁä¤J C-q¡CµM«á¨ì Emacs ¨Ï¥Î -¤â¥U¤¤¬Ý¬Ý¹ï©ó¡uº¥¶i¦¡·j´Mªº¦P®É¶i¤J¡] Spontaneous Entry to -Incremental Search ¡^¡v³o­Ó¥DÃD¡A¥H¨ú±o³B²z³o­Ó¡u¥\¯à¡vªº«Øij¡C - -¦pªG±z¦b¤@­Óº¥¶i¦¡·j´Mªº¤¤¶¡¡A¨Ã¥BÁä¤J ¡A±z¥i¥Hµo²{¦b·j´M¦r¦ê -¤¤ªº³Ì«á¤@­Ó¦r¤¸³Q®ø°£¤F¡A¨Ã¥B·j´M·|¦^¨ì³o­Ó·j´Mªº³Ì«á¤@­Ó¦a¤è¡CÁ|¨Ò¨Ó -»¡¡A°²³]±z¤w¸gÁä¤J¤F¡yc¡z¡A¥Î¨Ó´M§ä¡uc¡vªº²Ä¤@¦¸¥X²{¡C²{¦b¦pªG±zÁä¤J -¡yu¡z¡A´å¼Ð·|²¾°Ê¨ì¡ucu¡vªº²Ä¤@¦¸¥X²{¦ì¸m¡C²{¦bÁä¤J ¡A³o·|±N -¡uu¡v±q·j´M¦r¦ê¤¤®ø°£¡A¨Ã¥B´å¼Ð·|²¾¦^¨ì¡uc¡vªº²Ä¤@¦¸¥X²{¦ì¸m¡C - -¦pªG±z¦b¤@­Ó·j´Mªº¤¤¶¡¡A¨Ã¥BÁä¤J¤@­Ó CONTROL ©Î META ¦r¤¸ªº¸Ü¡A¡]¦ý¦³ -¤@¨Ç¨Ò¥~ -- ¹ï·j´M¦Ó¨¥¯S§Oªº¦r¤¸¡A¹³¬O C-s ©M C-r ¡^¡A·j´M·|³Qµ²§ô¡C - -C-s ·|¶}©l¤@­Ó·j´M¡A¥¦·|´M§ä·j´M¦r¦ê¦b¥Ø«e´å¼Ð¦ì¸m¡u¤§«á¡v¡Aªº¥ô¦ó¥X²{ -¦ì¸m¡C¦pªG±z·Q­n¦b¥ý«e¤å¦r¤¤·j´M¡AÁä¤J C-r §@¬°´À¥N¡C°£¤F·j´Mªº¤è¦V¬Û -¤Ï¤§¥~¡A§Ú­Ì©Ò»¡ªº¦³Ãö C-s ªº©Ò¦³¨Æ±¡¡A¦P¼Ë¦a¥i¥HÀ³¥Î¨ì C-r ¤W¡C - - -* ¦h­«µ¡®æ¡] MULTIPLE WINDOWS ¡^ --------------------------------- - -Emacs ³\¦h¦n¥\¯àªº¨ä¤¤¤§¤@¬O¡A±z¥i¥H¦b¿Ã¹õ¤¤¦P®É®i¥Ü¶W¹L¤@­Óµ¡®æ¡C - ->> ²¾°Ê´å¼Ð¨ì³o¤@¦æ¨Ã¥BÁä¤J C-u 0 C-l¡C - ->> ²{¦bÁä¤J C-x 2¡A¥¦·|±N¿Ã¹õ¥­¤À¦¨¨â­Óµ¡®æ¡C - ³o¨â­Óµ¡®æ³£Åã¥ÜµÛ³o­Ó§Ö³t«ü«n¡C´å¼Ð«h°±¯d¦b¤W¤èªºµ¡®æ¡C - ->> Áä¤J C-M-v ¥H±²°Ê¤U¤èªºµ¡®æ¡C - ¡]¦pªG±z¨Ã¨S¦³¤@­Ó¯uªº META Áä¡A«hÁä¤J ESC C-v ¥ç¥i¡C¡^ - ->> Áä¤J C-x o¡]¡yo¡z«üªº¬O¨ä¥L¡yother¡zªº·N«ä¡^¡A - ±N´å¼Ð²¾°Ê¨ì¤U¤èªºµ¡®æ¡C - ->> ¦b¤U¤èªºµ¡®æ¤¤¡A¨Ï¥Î C-v ©M M-v ¨Ó±²°Ê¥¦¡C - Ä~Äòºû«ù¦b¤W¤èªºµ¡®æ¤¤¾\Ū³o¨Ç«ü¤Þ¡C - ->> ¦A¤@¦¸Áä¤J C-x o ±N´å¼Ð²¾¦^¨ì¤W¤èªºµ¡®æ¡C - ´å¼Ð·|¦^¨ì¥¦¦b¤W¤èµ¡®æ¤¤¡A­ì¥»©Ò¦bªº¦ì¸m¡C - -±z¥i¥H«ùÄò¨Ï¥Î C-x o ¦bµ¡®æ¤§¶¡¤Á´«¡C¨C¤@­Óµ¡®æ¦³¥¦¦Û¤vªº´å¼Ð¦ì¸m¡A¦ý -¬O¥u¦³¤@­Óµ¡®æ·|¯uªºÅã¥Ü¥X´å¼Ð¡C©Ò¦³³q±`ªº½s¿è«ü¥O¥u·|À³¥Î¨ì¨º­Ó´å¼Ð©Ò -¦bªºµ¡®æ¡C§Ú­ÌºÙ³o­Ó¬°¡u³Q¿ï¾Üªºµ¡®æ¡v¡C - -«ü¥O C-M-v ¦b·í±z©ó¤@­Óµ¡®æ¤¤½s¿è¤å¦r¡A¨Ã¨Ï¥Î¨ä¥Lªºµ¡®æ§@¬°°Ñ¦Ò¤§¥Î®É¡A -¬O«D±`¦³¥Îªº¡C±z¥i¥H±N´å¼Ð¤@ª½«O«ù¦b±z¥¿¦b½s¿èªºµ¡®æ¤¤¡A¨Ã¥H C-M-v «ü -¥O¦b¨ä¥Lªºµ¡®æ´`§Ç¦a«e¶i¡C¡iÅçÃÒ¤u§@¯S§O¾A¦X¥H³oºØ¤è¦¡¨Ó¶i¦æ¡A¦p GNU -¤¤Ä¶¤p²Õ¡G§ä¤@­Ó­ì©l­^¤åÀɮסF¦A§ä¥¦Â½Ä¶¦nªº¤¤¤åÀɮסA½s¿è³o­Ó¡u³Q¿ï¾Ü -ªºµ¡®æ¡v¡A¥H C-M-v «ü¥O¸ò¤WÅçÃÒ¤¤ªº¬q¸¨¡K¡K¡C¡j - -C-M-v ¬O CONTROL-META ¦r¤¸ªº¤@­Ó¨Ò¤l¡C¦pªG±z¦³¤@­Ó¯uªº META Áä¡A±z¥i¥H -¦P®É«ö¦í CONTROL ©M META ¦AÁä¤J v ¨ÓÁä¤J C-M-v¡CCONTROL ©Î META ¡u½Ö¥ý -³Q«ö¦í¡v¨Ã¨S¦³¼vÅT¡A¦]¬°³o¨â­ÓÁä³£¬O¥Î¨Ó­×¹¢±z©ÒÁä¤Jªº¦r¤¸¡C - -¦pªG±z¨Ã¨S¦³¤@­Ó¯uªº META Áä¡A±z¥i¥H¨Ï¥Î ESC ¨Ó§@¬°´À¥N¡A³o¼Ë¤l¶¶§Ç´N -¦³Ãö«Y¤F¡G±z¥²¶·Áä¤J ESC ¡A¸òµÛÁä¤J CONTROL-v¡ACONTROL-ESC v ¨Ã¤£·|§@ -¥Î¡C³o¬O¦]¬° ESC ¬O¤@­Ó¨ã¦³¥»¨­§@¥Îªº¦r¤¸¡A¦Ó¤£¬O¤@­Ó­×¹¢Áä¡C - ->> ¡]¦b¤W¤èµ¡®æ¡^Áä¤J C-x 1 ¥H°£¥h¤U¤èµ¡®æ¡C - -¡]¦pªG±z¤w¸g¦b©³ºÝªºµ¡®æÁä¤J C-x 1¡A¨º»ò±N·|§â¤W­±ªºµ¡®æÁôÂæí¡C±N³o­Ó -«ü¥O·Q¹³¦¨¡u¥u«O¯d¤@­Óµ¡®æ -- §Ú¥¿¦b½s¿èªº³o­Ó¡C¡v¡^ - -±z¤£»Ý­n¦b¨â­Ó¤£¦Pªºµ¡®æ¤¤Åã¥Ü¬Û¦Pªº½w½Ä°Ï¡C¦pªG±z¨Ï¥Î C-x C-f ¦b¤@­Ó -µ¡®æ¤¤§äÀɮסA¥t¤@­Óµ¡®æ¨Ã¤£¦]¦Ó§ïÅÜ¡C±z¥i¥H¦b¿W¥ßªº¥ô¤@­Óµ¡®æ¤¤§ä¡e¥¦ -¦Û¤vªº¡f¤@­ÓÀɮסC - -³o¸Ì¦³¥t¥~¤@­Ó¤è¦¡¥i¥H¥Î¨Ó¡A¨Ï¥Î¨â­Óµ¡®æÅã¥Ü¨â­Ó¤£¦PªºªF¦è¡G - ->> Áä¤J C-x 4 C-f¡A«á­±¸òµÛ±zªº¨ä¤¤¤@­ÓÀɮתº¦WºÙ¡C - ¥H §@¬°µ²§ô¡C¬Ý¬Ý«ü©wªºÀÉ®×¥X²{¦b¤U¤èªºµ¡®æ¡C - ´å¼Ð¤]¶]¨ì¨º¸Ì¡C - ->> Áä¤J C-x o ¥H¦^¨ì¤W¤èªºµ¡®æ¡AµM«á¥H C-x 1 §R°£±¼¤U¤èµ¡®æ¡C - - -* »¼°j½s¿è¶¥¼h¡] RECURSIVE EDITING LEVELS ¡^ --------------------------------------------- - -¦³®É­Ô±z·|¶i¤J©Ò¿×ªº¡u»¼°j½s¿è¶¥¼h¡v¡C¥¦¬O¥Ñ¦ì¦bª¬ºA¦æªº¤è¬A©·©Ò«ü©ú¡A -¨Ã¥B¥]§t¦í¥H¤p¬A©·¨Ó«ü©úªº¼Ò¦¡¦WºÙ¡CÁ|¨Ò¨Ó»¡¡A±z¥i¯à·|¬Ý¨ì -[(Fundamental)]¡A¦Ó¤£¬O (Fundamental)¡C - -­nÂ÷¶}»¼°j½s¿è¶¥¼h¡A½ÐÁä¤J ESC ESC ESC¡C³o¬O­Ó¥þ¥\¯àªº¡uÂ÷¶}¡v«ü¥O¡C±z -¤]¥i¥H¨Ï¥Î¥¦¨Ó°£¥h¦h¾lªºµ¡®æ¡A¨Ã¥BÂ÷¶}¤p½w½Ä°Ï¡C - ->> Áä¤J M-x ¥H¶i¤J¤p½w½Ä°Ï¡FµM«áÁä¤J ESC ESC ESC Â÷¶}¡C - -±zµLªk¨Ï¥Î C-g ¨ÓÂ÷¶}»¼°j½s¿è¶¥¼h¡C³o¬O¦]¬° C-g ¬O¥Î¨Ó¨ú®ø«ü¥O¥H¤Î¡u¦ì -©ó¡v»¼°j½s¿è¶¥¼h¤¤ªº¡u¤Þ¼Æ¡] arguments ¡^¡v¤§¬G¡C - - -* ¨ú±o§ó¦hªºÀ°§U¡] GETTING MORE HELP ¡^ ---------------------------------------- - -¦b¥»§Ö³t«ü«n¤¤¡A§Ú­Ì¸ÕµÛ¶È´£¨Ñ­è­è¦nªº¸ê°TÅý±z¥i¥H¶}©l¨Ï¥Î Emacs¡C¦b -Emacs ¤¤¦³¤Ó¦h¥i¨ú±oªº¸ê°T¡A·Q­n¦b³o¸Ì¥þ³¡¸ÑÄÀ¬O¤£¥i¯àªº¡CµM¦Ó¡A±z¤]³\ -·|·Q­n¾Ç²ß§ó¦h Emacs ¬ÛÃöªº¸ê°T¡A¦]¬°¥¦¦³³\¦h¨ä¥L¦³¥Îªº¥\¯à¡CEmacs ´£ -¨Ñ¤F¡u¾\Ū¦³Ãö Emacs «ü¥O¡vªº«ü¥O¡C³o¨Ç¡uhelp¡v«ü¥O³£¥H CONTROL-h ³o­Ó -¦r¤¸§@¬°¶}ÀY¡AºÙ§@¬°¡uHelp ¦r¤¸¡v¡C - -­n¨Ï¥Î Help ¥\¯à¡AÁä¤J C-h ¦r¤¸¡AµM«á¦AÁä¤J¤@­Ó»¡©ú±z©Ò»Ý­nªºÀ°§Uªº¦r -¤¸¡C¦pªG±z¯uªº¤£ª¾¹D­n°Ý¤°»ò¡A¨º»ò½ÐÁä¤J¡yC-h ?¡z¡A¦¹®É Emacs ±N·|§i¶D -±z¥¦¯à°÷´£¨ÑªºÀ°§U¡C¦pªG±z¤w¸gÁä¤J C-h¡A¦ýµo²{±z¨Ã¤£»Ý­n¥ô¦óÀ°§U¡AÁä¤J -C-g ¨Ó¨ú®ø±¼¥¦´N¬O¤F¡C - -¡]¦³¨Çºô¯¸±N C-h ³o­Ó¦r¤¸ªº·N¸q§ïÅܤF¡C¥L­Ì¯uªº¤£À³¸Ó§â¥¦³]¬°¹ï©Ò¦³¨Ï -¥ÎªÌ¥þ³¡³£¾A¥Îªº¤èªk¡A©Ò¥H±z²{¦b´N¦³¤F­Ó²z¥Ñ¨Ó©ê«è¨t²ÎºÞ²zªÌ¤F¡C¦b¦¹¦P -®É¡A¦pªG C-h ¨Ã¨S¦³¦bµ¡®æªº©³³¡Åã¥Ü¥ô¦ó¦³ÃöÀ°§Uªº°T®§¡A¸ÕµÛÁä¤J F1 Áä¡A -©Î¬O M-x help ¡C¡^ - -³Ì°ò¥»ªº HELP ¥\¯à¬O C-h c¡CÁä¤J C-h¡A¦r¤¸ c¡A¥H¤Î¤@­Ó©Î¤@¦ê¦r¤¸¡FµM«á -Emacs ·|Åã¥Ü¤@­Ó«D±`²µuªº¦³Ãö³o­Ó«ü¥Oªº¸ÑÄÀ¡C - ->> Áä¤J C-h c C-p¡C - -°T®§À³¸Ó·|¹³¬O³o¼Ë¡G - - C-p runs the command previous-line - -³o§i¶D¤F±z¡u¨ç¼Æªº¦WºÙ¡v¡C¨ç¼Æ¦WºÙ¥D­n¬O¥Î¨Ó¦Û­q¥H¤ÎÂX¥R Emacs¡C¦ý¬O¥Ñ -©ó¨ç¼Æ¦WºÙ¬O¥Ñ¡u¥Î¨Ó«ü¥X³o«ü¥O¦b°µ¨Ç¤°»ò¡v¦Ó³Q¿ï©w¡A¥¦­Ì¦]¦¹¤]¥i¥H§@¬° -«D±`²µuªº¤å¥ó -- ¨¬°÷´£¿ô±z¤w¸g¾Ç¹Lªº«ü¥O¡C - -¦h¦r¤¸«ü¥O¹³¬O C-x C-s ©M ¡]¦pªG±z¨S¦³ META ©Î EDIT ©Î ALT Áä¡^v -¤]¥i¥H¦b C-h c «á­±¥X²{¡C - -­n¨ú±o§ó¦h¦³Ãö¤@­Ó«ü¥Oªº¸ê°T¡A¥Î C-h k ¨Ó¨ú¥N¨Ï¥Î C-h c ¡C - ->> Áä¤J C-h k C-p¡C - -³o·|¦b¤@­Ó Emacs µ¡®æÅã¥Ü³o­Ó¨ç¼Æªº»¡©ú¤å¥ó¥H¤Î¥¦ªº¦WºÙ¡C·í±z¾\Ū§¹«á¡A -Áä¤J C-x 1 ¥H¸õÂ÷³o¨ÇÀ°§U¤å¦r¡C±z¨Ã¤£»Ý­n°¨¤W¸òµÛ°µ¡C±z¥i¥H°µ¨Ç½s¿è¡A -·í°Ñ¦Ò¨ìÀ°§U¤å¦r®É¦AÁä¤J C-x 1¡C - -³o¸Ì¦³¤@¨Ç¨ä¥L¦³¥Îªº C-h ¿ï¶µ¡G - - C-h f ¸ÑÄÀ¤@­Ó¨ç¼Æ¡C±z­nÁä¤J¦¹¨ç¼Æªº¦WºÙ¡C - ->> ¸ÕµÛÁä¤J C-h f previous-line¡C - ³o·|¦L¥X Emacs ©Ò¦³ªº¦³Ãö¡u¹ê§@¥X C-p ³o­Ó«ü¥Oªº¨ç¼Æ¡vªº¸ê°T - -C-h v ³o­ÓÃþ¦üªº«ü¥O·|Åã¥Ü¥X¡u±z¥i¥H¥Î¨Ó¦Û­q Emacs ¦æ¬°ªºÅܼơvªº¤å¥ó¡C -·í Emacs ­n¨D®É¡A±z»Ý­nÁä¤J³oÅܼƪº¦WºÙ¡C - - C-h a «ü¥O¬ÛÃö¬d§ä¡] Command Apropos ¡^¡C - Áä¤J¤@­ÓÃöÁä¦rµM«á Emacs ·|¦C¥X©Ò¦³ - ¡u¦b¨ä¦WºÙ¤¤§t¦³¦¹ÃöÁä¦r¡vªº¥þ³¡«ü¥O¡C - ³o¨Ç«ü¥O¥þ³¡³£¥i¥H¸g¥Ñ META-x ¨Ó±Ò°Ê¡C - ¹ï©ó¤@¨Ç«ü¥O¦Ó¨¥¡A«ü¥O¬ÛÃö¬d§ä¤]·|¦C¥X - ¡u¥i¥H°õ¦æ¬Û¦P«ü¥O¡vªº¤@­Ó©Î¨â­Ó¦r¤¸ªº¦ê¦C¡C - ->> Áä¤J C-h a file¡C - -³o·|¦b¥t¤@­Óµ¡®æÅã¥Ü¤@­Ó¡u¦b¨ä¦WºÙ¤¤§t¦³¡yfile¡zªº¥þ³¡ M-x «ü¥O¡vªº¦C -ªí¡C±z±N·|¬Ý¨ì¹³¬O C-x C-f ªº¡u¦r¤¸-«ü¥O¡v¦C¦b¨ä¬Û¹ïÀ³«ü¥O¦WºÙ¡]¦p¡G -find-file ¡^ªº®ÇÃä¡C - ->> Áä¤J C-M-v ¤W¤U²¾°Ê help µ¡®æ¡C¸Õ­Ó´X¦¸¡C - ->> Áä¤J C-x 1 ¨Ó§R°£ help µ¡®æ¡C - - C-h i ¾\Ū½u¤W¨Ï¥Î¤â¥U¡] a.k.a. Info ¡^¡C - ³o­Ó«ü¥O±N±z±a¨ì¤FºÙ¬°¡u*info*¡vªº¯S®í½w½Ä°Ï¡A¦b¨º¡A - ±z¥i¥H¾\Ū¦w¸Ë¦b±zªº¨t²Î¸Ìªº³nÅé®M¥óªº½u¤W¨Ï¥Î¤â¥U¡C - Áä¤J m emacs ¥H¾\Ū Emacs ¨Ï¥Î¤â¥U¡C - ¦pªG±z¦b¦¹¤§«e¥¼´¿¨Ï¥Î¹L Info ¨t²Î¡A½ÐÁä¤J¡y?¡z¡C - Emacs ±N·|±a±z¶i¤J Info ¼Ò¦¡¥\¯àªº¾ÉÄý«ü«n¡C - ¤@¥¹§¹¦¨¤F¥»§Ö³t«ü«nªº¬ãŪ¡A±zÀ³¸Ó¬d¾\ Emacs Info - ¨Ï¥Î¤â¥U¡A¥H§@¬°¥D­nªº°Ñ¦Ò¤å¥ó¡C - - -* §ó¦h¥\¯à¯S¦â¡] MORE FEATURES ¡^ ---------------------------------- - -±z¥i¥H¸g¥Ñ¾\Ū Emacs ¨Ï¥Î¤â¥U¡q¤£½×¬O¤@¥»®Ñ©Î¬O¦b Info ¤¤ªº½u¤Wª©¥» -¡]¨Ï¥Î Help ¿ï³æ©Î¬OÁä¤J F10 h r ¡^¡r¨Ó¾Ç¨ì§ó¦h¦³Ãö¥¦ªºª¾ÃÑ¡C¦³¨â­Ó±z -¥i¯à·|¯S§O³ßÅwªº¥\¯à¯S¦â¬O¥i¥H¸`¬Ù¥´¦r¶qªº completion ÁÙ¦³Â²¤ÆÀɮ׳B²z -ªº dired ¡C - -Completion ¬O¤@ºØÁקK¤£¥²­nªº¥´¦rªº¤è¦¡¡CÁ|¨Ò¨Ó»¡¡A¦pªG±z·Q­n¤Á´« -*Messages* ½w½Ä°Ï¡A±z¥i¥HÁä¤J C-x b *M ¡A¥u­n¥i¥H±q±z¤w¸gÁä¤Jªº¤å -¦r¤¤½T©w¡A Emacs ´N·|±N³Ñ¤Uªº½w½Ä°Ï¦WºÙ¸É»ô¡C Completion ¬O¦b Emacs ¨Ï -¥Î¤â¥Uªº Info ¤¤¡AºÙ¬°¡uCompletion¡vªº¸`ÂI¤¤©Ò¸ÑÄÀªº¡C - -Dired ¨Ï±z¥i¥H¦b¤@­Ó¥Ø¿ý¤¤¦C¥XÀɮס]¦¸¥Ø¿ý«h¬O¥i¿ïªº¡^¡B¦b¦Cªí¤¤¨ì³B²¾ -°Ê¡B«ô³X¡B­«·s©R¦W¡B§R°£¥H¤Î¹ïÀɮק@¾Þ§@¡C Dired ¬O¦b Emacs ¨Ï¥Î¤â¥Uªº -Info ¤¤¡AºÙ¬°¡uDired¡vªº¸`ÂI¤¤©Ò¸ÑÄÀªº¡C - -¨Ï¥Î¤â¥U¤]¸ÑÄÀ¤F³\¦h¨ä¥¦ Emacs ªº¥\¯à¯S¦â¡C - - -* µ²½×¡] CONCLUSION ¡^ ----------------------- - -°O¦í¡A­n§¹¥þÂ÷¶} Emacs ½Ð¨Ï¥Î C-x C-c ¡C­n¼È®ÉÂ÷¶}¨ì shell¡Aµy«á¦A¦^¨ì -Emacs¡A½Ð¨Ï¥Î C-z ¡C - -¥»§Ö³t«ü«n¹ï©ó©Ò¦³ªº·s¤âÀ³¸Ó³£¬O©ö©ó²z¸Ñªº¡A©Ò¥H¦pªG±zµo²{¤F¤°»ò¦a¤è¤£ -²M·¡¡A¤£­n¥u¬O§¤µÛ©Ç¦Û¤v -- ¡]¦V¥»¤å§@ªÌ©M½Ķ¡^µoÂI¨cÄ̧a¡I - - -* ½Ķ¡] TRANSLATION ¡^ ------------------------ - -¥»§Ö³t«ü«nªºÂ½Ä¶¤H­û¦Cªí¦p¤U¡A¦pªG±z¦b¾\Ū¥»¤å¤§«e¡A¡u§¹¥þ¡v¹ï Emacs -¨S¦³·§©À¡A½Ð§i¶D§Ú­Ì±zªº·N¨£¥H§@¬°¥»¤å«áÄòªº§ï¶i¨Ì¾Ú¡C½Ķ¤]´£¨Ñ¤F¤@¥÷ -¡mGNU Emacs ¤¤¤å³B²z»¡©ú¡n¦b -http://www.gnu.org/software/chinese/guide/emacs-chinese.zh.html ¡q³¡¥÷ -¤º®e¤w¸g¾ã²z¨ì¥»§Ö³t«ü«n¡r¡A¤]½Ð±z¦Û¦æ°Ñ¾\¡C - -½s¿è¾¹¬O¹q¸£¨Ï¥ÎªÌ³Ì±`±µÄ²¨ìªºÀ³¥Îµ{¦¡¡A¦]¦¹¤£À³¸ÓÅýªì¾ÇªÌ·P¨ì¹L©ó§xÃø¡A -´N¤@¯ëªºµû½×¨Ó»¡¡A Emacs ¬O¤£Ãø¾Ç·|¨Ï¥Îªº½s¿è¾¹¡A¦ý±zªº·N¨£¥i¥H¨Ï¥¦§ó -¬°¶Kªñ¤@¯ëªº¨Ï¥ÎªÌ¡A¨Ã¨Ï¹q¸£§@¬°¤u¨ãªº¨¤¦â±o¥H¥R¤Àµo´§¡C¦pªG±zÄ@·N´£¨Ñ -§ï¶iªº·N¨£¡A½Ð±H email ¨ì ¡C½Ð¤£­n®`²Û¡A -§Ú­ÌÅwªï¥ô¦ó¦³Ãöªº°Q½×¡F¦pªG±z¤£·Q±H¨ì¶l¥ó²M³æ¡A½Ðª½±µ email µ¹¥»¤å½ -Ķ ¡C½Ð¦b Title ¦æ¤¤¥]§t¦¹¦r¦ê¡uEmacs TUTORIAL: ¡v¡C - -¦pªG±z¬O Emacs ¦Ñ¤â¡AGNU Chinese Translators Team (GNU/CTT) - Åwªï±zªº¥[¤J¡A§Ú­Ì²{¦b¥¿»Ý­nÄ@ -·N§ë¤J½Ķ Emacs ¨Ï¥Î¤â¥Uªº¤H­û¡C - -¥»§Ö³t«ü«n¨Ã¨S¦³±Ä¥Î²ßºD¤W½s¿è¾¹©Ò¨Ï¥ÎªºÂ½Ä¶³N»y¡A¤@¤è­±¦]¬°¥¦ªº¹ê»Ú·N -¸q»P¤@¯ëªº½s¿è¾¹¤£¦P¡A­ì¤å¥»´N¤£¦P¡F¥t¤@¤è­±¤]¦]¬° Emacs ©Ò±Ä¥Îªºµøı -³]­p·§©À¡A¦­¦bµøµ¡¤Æ¨t²Î¤§«e´N¤w¸g¦s¦b¡A¥»½è¤]¤£¬Û¦P¡CÁ`¤§¡A½Ķ¥H¬°³o -¼Ë¥i¥HÀ°§U¹ï©ó Emacs ¾ã­Ó³]­p­õ¾Çªº²z¸Ñ¡C¦pªG¦¬¨ìªº¦^ÂФ¤¡A¤j³¡¥÷­n¨D -´£¥X­×§ï¡A§Ú­ÌÁÙ¬O±qµ½¦p¬y¡C - -(0) ¬°¤FÁקK¡u´å¼Ð²¾°Ê«ü¥O¡v½×­z¤Wªº²V²c¡A¥»¤å±Ä¥Îªº³N»y¬°¡G - ©¹¡u«e¡v²¾¡] move Forward ¡^¡F©¹¡u«á¡v²¾¡] move Backware ¡^ - ¡e©Î¬O©¹¡u¦^¡v²¾¡f¡F - ©¹¡u¤W¡v²¾¡] Previous line ¡^¡F©¹¡u¤U¡v²¾¡] Next line ¡^¡C -(1) ¦b¥»¤å¤¤¡A¡u¦æ¡v«üªº¬O row¡A³o¬O±Ä¥Î¤@¯ëªº²ßºD¥Îªk¡C - ¬°¤FÁקK»~¾É¤¤¤åŪªÌ¡A¯S§O¦b¦¹»¡©ú¡C¦b¥¿¦¡ªº¥Îªk¤¤¡G - ¡ucolumn¡v½Ķ¬°¡u¦æ¡v¡A¥H¡uÁa¡v¬°¦æ¡]ª½¦æ¡^¡A¤]Ķ¬°¡uÄæ¡v¡F - ¡urow¡v½Ķ¬°¡u¦C¡v¡A¥H¡u¾î¡v¬°¦C¡]¾î¦C¡^¡C - ŪªÌ«ä¯Á¤@¤U¡u¦XÁa³s¾î¡vÀ³¸Ó¥i¥H²z¸Ñ¡C - ¤j¬ù¬O¦]¬°¤¤¤å­ì¥»¬Oª½®Ñªº¡A§Ú­Ì»¡¡u¤@¦æ¦r¡v¬O¨S°ÝÃD¡F - ¦ý²{¦b¤j³¡¥÷ªº±¡§Î¤¤¤å¬O¾î®Ñªº¡A¥Ñ©ó²ßºD¨ÏµM¤]ºÙ¬°¤@¦æ¦r¤F¡C -(2) ¦³Ãö©ó¡u¤å¦r¡v¤Î¨ä¶°¦Xªº¬ÛÃöĶ¤å¡A½Ķ©Ò±Ä¥Îªº¦³¡G - ½s¿èªº¡u¤å¦r¡v¡G¡uµM«áÁä¤J¤@¨Ç¤å¦r¡v¡F - ¥Î¨Ó§@¬°»¡©ú¥\¯àªº¡u¤å¥ó¡v¡G¡u³o­Ó¨ç¼Æªº»¡©ú¤å¥ó¡v¡F - ¯S«ü¨ä©Ò»¡©úªº¤º®eªº¡u¤å¥»¡v¡G¡u¹ê»Ú®Ä¤O¥H­^¤å¥»¬°·Ç¡v¡C - §Y¨Ï¥u¬O¡u¤@¦æ¦r¡v¡A¥u­n¥¦¬O¥Î¨Ó§@¬°»¡©ú¤§¥Î¡A - ½ĶÁÙ¬O±N¥¦µø¬°¡u¤å¥ó¡v¡C -(3) ¡ucut¡vªº°Ê§@¦b Emacs ¤¤¤À¬°¡u±þ±¼¡v©M¡u§R°£¡v¡A¤§¶¡ªº®t²§¦p¤U¡G - ¤@¯ë½s¿è¾¹¤¤ªº¡ucut¡v¡G¥u¦³³Ìªñ³Q cut ªº¤å¦rÂ\¨ì clipboard ¤¤¡F - ¡u±þ±¼¡] killing ¡^¡v¡G³Q±þ±¼ªº¤å¦r¡A¥þ³¡³Q¥[¤J¨ì kill ring ¤¤¡F - ¡u§R°£¡] deleting ¡^¡v¡G³Q§R°£ªº¤å¦r¡A´N¬O³Q§R°£¤F¡C - ¦]¦¹¦b¤@¯ë½s¿è¾¹¤¤¡A±z¥u¯à paste¡u³Ìªñ¡v³Q cut ªº¤å¦r¡F - ¦Ó¦b Emacs ¤¤¡A±z¥i¥H¡u©Ô¦^¡v¥ô¦ó¥ý«e³Q±þ±¼ªº¤å¦r¡A¦P®É¡A - ¥¦ªº§@ªk«Ü®e©ö¡C¦Ü©ó³Q§R°£ªº¡A¦]¬°¥Î¨Ó§@¬°¡u§R°£¡v¥\¯àªº«ü¥O¡A - ©Ò¯à²¾¥hªº¤å¦r¼Æ¶q³£«Ü¤Ö¡A¦]¦¹¤]¨S¤°»ò¦n©Ô¦^ªº¡F - ¦pªG¯uªº·Q¦^´_³o¨Ç¤å¦r¡Aundo ±zªº°Ê§@´N¬O¤F¡C -(4) ¡uwindow¡v¦P®É½Ķ¬°¡uµøµ¡¡v©M¡uµ¡®æ¡v¡A - «eªÌªí¥Ü²{¦b¤@¯ë·§©À¤¤ªºµøµ¡¨t²Î¡A¦p¡uX µøµ¡¡v¡F - «áªÌªí¥Ü Emacs ¤¤ªºµøµ¡¡A½Ķ¦b¦¹³qºÙ¬°¡uµ¡®æ¡v¡C - Emacs ªº¡uµ¡®æ¡v§Y¨Ï¦b©R¥O¦C´£¥Ü¤U¤]¥i¥H¥¿±`¤u§@¡A - ¦¹¤@°ò¥»¯S©ÊÅãµM­È±o§Ú­Ì¥H¥t¤@­Ó±M¥Î³N»y¨Ó´y­z¥¦¡C -(5) Ãö©óÀɮתº³N»y¡A¡u§ä¡v¤@­ÓÀɮצb Emacs ¤¤¦³¨âºØ§@¥Î¡G - §ä¤@­Ó¡u¨Ã¤£¦s¦b¡vªºÀɮסAŪªÌÀ³»{ª¾¬°¡u¶}·sÀɮסv¡F - §ä¤@­Ó¡u¤w¸g¦s¦b¡vªºÀɮסA«h¬O¡u¶}±ÒÂÂÀÉ¡v¡C - Emacs ¥u¥H¤@­Ó¡u§ä¡vªº°Ê§@¨Ó¸Ñ¨M¡A¥D­nªº­ì¦]¬O¡u¹ê»Ú¤W¡v - ªº³nÅé¤u§@¦p¦¹¡CÀb«È­ÌÀ³¸Ó·|µo²{³o¼Ë¤ñ¸û¦ÛµM¡A - ¦]¬°¥¦¤ÏÀ³¤F¹q¸£ªº¤u§@¤è¦¡¡A¦P®É¾Þ§@°_¨Ó¤]¸û¤Ö¼o¸Ü¡C -(6) ¦b¡i¡j¤¤ªº¤å¦r¬°Â½Ä¶ªºµù¸Ñ¡C -(7) Ãö©ó¨Ï¤¤¤å¤å¥óµ²ºc¤ÆªºÄ³ÃD¡A°ÝÃD¤w¸gÀò±o¸Ñ¨M¡C -(8) ¥»Â½Ä¶¤å¥»©Ò±Ä¥ÎªºÂ²Ác¥Î»y®t²§¦Cªí¦p¤U¡G - zh cn - ¤å¥ó ¤åÀÉ - ³nÅé ³n¥ó - §@·~ ¾Þ§@ - ®M¥ó ¥] - µøµ¡ µ¡¤f - »¼°j »¼Âk - Àb«È ¶Â«È - ¸ê°T «H®§ - -¥t¥~¡A§Ú­Ì¤]¤Q¤ÀÅwªïŪªÌ¥i¥Hª½±µ­×§ï¥»§Ö³t«ü«n¡A°µ¥X¦Û¤vªºª©¥»¡A¥H¦Û¤v -»{¬°³Ì¬°¦X¾Aªº¤è¦¡¨Ó¤¶²Ð Emacs ¡C¦pªG±z°µ¥X¤F³o¼Ë­Ó¤H¤Æªºª©¥»¡A¨Ã¥B»{ -¬°¨¬¨Ñ¤j®a°Ñ¦Ò¨Ï¥Î¡A½Ð±Hµ¹ ¡A§Ú­Ì·|±N±z -ªºª©¥»¤½¶}¦b GNU/CTT ªººô­¶¤¤´£¨Ñµ¹¤¤¤å¨Ï¥ÎªÌ¤U¸ü¡C - -½Ķ¡G¼B ¬L§» -ÅçÃÒ¡G°¨ ³·µÓ - - -* ½Æ»s¡] COPYING ¡^ -------------------- - -¥»§Ö³t«ü«nªuŧ¦Û¨ã¦³±y¤[¾ú¥vªº Emacs §Ö³t«ü«n¡A¥Ñ Stuart Cracraft ¬°¤F -­ì©lªº Emacs ©Ò¼¶¼gªºª©¥»¶}©l¡C - -³o­Óª©¥»ªº§Ö³t«ü«n©M GNU Emacs ¤@¼Ë³£¬Oª©Åv¤Æªº¡A¨Ã¥B¤¹³\¦b¬Y¨Ç±ø¥ó¤U -´²§G¨ä«þ¨©¡G - -Copyright (C) 1985, 1996, 1998, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 Free Software Foundation, Inc. - - Permission is granted to anyone to make or distribute verbatim copies - of this document as received, in any medium, provided that the - copyright notice and permission notice are preserved, - and that the distributor grants the recipient permission - for further redistribution as permitted by this notice. - - ¥»¤å¤¹³\¦b¤£Åܧó¤å¥ó¤º®eªº«e´£¤U¥Zµn¦b¥ô¦ó§Î¦¡ªº´CÅ餤¡A - ¦ý»Ý«O¯dª©ÅvÁn©ú¥H¤Î³\¥iÁn©ú¡A - ´²§GªÌ¤]¥²¶·µ¹¤©±µ¨üªÌ¦p¦P¦¹Án©ú©Ò¤¹³\ªº¡A¶i¤@¨B´²§Gªº³\¥i¡C - ¡i¥»¬qĶ¤å´£¨ÑŪªÌ§@¬°°Ñ¦Ò¥HÀ°§U²z¸Ñ¡A¹ê»Ú®Ä¤O¥H­^¤å¥»¬°·Ç¡C¡j - - Permission is granted to distribute modified versions - of this document, or of portions of it, - under the above conditions, provided also that they - carry prominent notices stating who last altered them. - - ¥»¤å¤¹³\¦b»P¤W­z¬Û¦Pªº±ø¥ó¤U¡A´²§G­×§ï«áªºª©¥»¡A©Î¬O¨ä¤¤ªº¤@³¡¥÷¡A - ¦ý¥¦­Ì¤]¥²¶·±a¦³ÅãµÛªº¡A»¡©ú¥Ñ½Ö³Ì«á§ó°Ê¤F¥¦ªºÁn©ú¡C - ¡iCopyleft ª©Åv°£¤F´£¨Ñ¨Ï¥ÎªÌ¦Û¥Ñ¥~¡A¤]ºûÅ@­ì©l§@ªÌ¡A - ¥H¤Î«á¨Óªº­×§ï§@ªÌªº¦WÅAÅv¡] credit ¡^¡C - ¥»¬qĶ¤å´£¨ÑŪªÌ§@¬°°Ñ¦Ò¥HÀ°§U²z¸Ñ¡A¹ê»Ú®Ä¤O¥H­^¤å¥»¬°·Ç¡C¡j - -½Æ»s Emacs ¥»¨­ªº±ø¥ó¸û¬°½ÆÂø¡A¦ý¬O¨ã¦³¬Û¦Pªººë¯«¡C½Ð¾\Ū COPYING ³o­Ó -ÀɮסA¨Ã¥B½T¹êµ¹¤©±zªºªB¤Í GNU Emacs ªº«þ¨©¡C½Ð¸g¥Ñ¡u¨Ï¥Î¡B¼¶¼g¡B¥H¤Î -¤À¨É¦Û¥Ñ³nÅé¡v¨ÓÀ°§U®ø°£³nÅé»Ùê¥D¸q¡]¾Ö¦³Åv¡^¡I - -;;; DO NOT PUT THIS ON ZHS OR ZHT FILE... -;;; Local Variables: -;;; coding: chinese-big5 -;;; End: - -;;; arch-tag: a51dafb4-e602-432b-8020-5d5d5f150811 diff --git a/etc/tutorials/TUTORIAL b/etc/tutorials/TUTORIAL new file mode 100644 index 00000000000..eaa97619763 --- /dev/null +++ b/etc/tutorials/TUTORIAL @@ -0,0 +1,1131 @@ +Emacs tutorial. See end for copying conditions. + +Emacs commands generally involve the CONTROL key (sometimes labeled +CTRL or CTL) or the META key (sometimes labeled EDIT or ALT). Rather than +write that in full each time, we'll use the following abbreviations: + + C- means hold the CONTROL key while typing the character + Thus, C-f would be: hold the CONTROL key and type f. + M- means hold the META or EDIT or ALT key down while typing . + If there is no META, EDIT or ALT key, instead press and release the + ESC key and then type . We write for the ESC key. + +Important note: to end the Emacs session, type C-x C-c. (Two characters.) +The characters ">>" at the left margin indicate directions for you to +try using a command. For instance: +<> +[Middle of page left blank for didactic purposes. Text continues below] +>> Now type C-v (View next screen) to move to the next screen. + (go ahead, do it by holding down the CONTROL key while typing v). + From now on, you should do this again whenever you finish + reading the screen. + +Note that there is an overlap of two lines when you move from screen +to screen; this provides some continuity so you can continue reading +the text. + +The first thing that you need to know is how to move around from place +to place in the text. You already know how to move forward one screen, +with C-v. To move backwards one screen, type M-v (hold down the META key +and type v, or type v if you do not have a META, EDIT, or ALT key). + +>> Try typing M-v and then C-v, a few times. + + +* SUMMARY +--------- + +The following commands are useful for viewing screenfuls: + + C-v Move forward one screenful + M-v Move backward one screenful + C-l Clear screen and redisplay all the text, + moving the text around the cursor + to the center of the screen. + (That's CONTROL-L, not CONTROL-1.) + +>> Find the cursor, and note what text is near it. + Then type C-l. + Find the cursor again and notice that the same text + is near the cursor now. + +You can also use the PageUp and PageDn keys to move by screenfuls, if +your terminal has them, but you can edit more efficiently if you use +C-v and M-v. + + +* BASIC CURSOR CONTROL +---------------------- + +Moving from screenful to screenful is useful, but how do you +move to a specific place within the text on the screen? + +There are several ways you can do this. You can use the arrow keys, +but it's more efficient to keep your hands in the standard position +and use the commands C-p, C-b, C-f, and C-n. These characters +are equivalent to the four arrow keys, like this: + + Previous line, C-p + : + : + Backward, C-b .... Current cursor position .... Forward, C-f + : + : + Next line, C-n + +>> Move the cursor to the line in the middle of that diagram + using C-n or C-p. Then type C-l to see the whole diagram + centered in the screen. + +You'll find it easy to remember these letters by words they stand for: +P for previous, N for next, B for backward and F for forward. You +will be using these basic cursor positioning commands all the time. + +>> Do a few C-n's to bring the cursor down to this line. + +>> Move into the line with C-f's and then up with C-p's. + See what C-p does when the cursor is in the middle of the line. + +Each line of text ends with a Newline character, which serves to +separate it from the following line. The last line in your file ought +to have a Newline at the end (but Emacs does not require it to have +one). + +>> Try to C-b at the beginning of a line. It should move to + the end of the previous line. This is because it moves back + across the Newline character. + +C-f can move across a Newline just like C-b. + +>> Do a few more C-b's, so you get a feel for where the cursor is. + Then do C-f's to return to the end of the line. + Then do one more C-f to move to the following line. + +When you move past the top or bottom of the screen, the text beyond +the edge shifts onto the screen. This is called "scrolling". It +enables Emacs to move the cursor to the specified place in the text +without moving it off the screen. + +>> Try to move the cursor off the bottom of the screen with C-n, and + see what happens. + +If moving by characters is too slow, you can move by words. M-f +(META-f) moves forward a word and M-b moves back a word. + +>> Type a few M-f's and M-b's. + +When you are in the middle of a word, M-f moves to the end of the word. +When you are in whitespace between words, M-f moves to the end of the +following word. M-b works likewise in the opposite direction. + +>> Type M-f and M-b a few times, interspersed with C-f's and C-b's + so that you can observe the action of M-f and M-b from various + places inside and between words. + +Notice the parallel between C-f and C-b on the one hand, and M-f and +M-b on the other hand. Very often Meta characters are used for +operations related to the units defined by language (words, sentences, +paragraphs), while Control characters operate on basic units that are +independent of what you are editing (characters, lines, etc). + +This parallel applies between lines and sentences: C-a and C-e move to +the beginning or end of a line, and M-a and M-e move to the beginning +or end of a sentence. + +>> Try a couple of C-a's, and then a couple of C-e's. + Try a couple of M-a's, and then a couple of M-e's. + +See how repeated C-a's do nothing, but repeated M-a's keep moving one +more sentence. Although these are not quite analogous, each one seems +natural. + +The location of the cursor in the text is also called "point". To +paraphrase, the cursor shows on the screen where point is located in +the text. + +Here is a summary of simple cursor-moving operations, including the +word and sentence moving commands: + + C-f Move forward a character + C-b Move backward a character + + M-f Move forward a word + M-b Move backward a word + + C-n Move to next line + C-p Move to previous line + + C-a Move to beginning of line + C-e Move to end of line + + M-a Move back to beginning of sentence + M-e Move forward to end of sentence + +>> Try all of these commands now a few times for practice. + These are the most often used commands. + +Two other important cursor motion commands are M-< (META Less-than), +which moves to the beginning of the whole text, and M-> (META +Greater-than), which moves to the end of the whole text. + +On most terminals, the "<" is above the comma, so you must use the +shift key to type it. On these terminals you must use the shift key +to type M-< also; without the shift key, you would be typing M-comma. + +>> Try M-< now, to move to the beginning of the tutorial. + Then use C-v repeatedly to move back here. + +>> Try M-> now, to move to the end of the tutorial. + Then use M-v repeatedly to move back here. + +You can also move the cursor with the arrow keys, if your terminal has +arrow keys. We recommend learning C-b, C-f, C-n and C-p for three +reasons. First, they work on all kinds of terminals. Second, once +you gain practice at using Emacs, you will find that typing these Control +characters is faster than typing the arrow keys (because you do not +have to move your hands away from touch-typing position). Third, once +you form the habit of using these Control character commands, you can +easily learn to use other advanced cursor motion commands as well. + +Most Emacs commands accept a numeric argument; for most commands, this +serves as a repeat-count. The way you give a command a repeat count +is by typing C-u and then the digits before you type the command. If +you have a META (or EDIT or ALT) key, there is another, alternative way +to enter a numeric argument: type the digits while holding down the +META key. We recommend learning the C-u method because it works on +any terminal. The numeric argument is also called a "prefix argument", +because you type the argument before the command it applies to. + +For instance, C-u 8 C-f moves forward eight characters. + +>> Try using C-n or C-p with a numeric argument, to move the cursor + to a line near this one with just one command. + +Most commands use the numeric argument as a repeat count, but some +commands use it in some other way. Several commands (but none of +those you have learned so far) use it as a flag--the presence of a +prefix argument, regardless of its value, makes the command do +something different. + +C-v and M-v are another kind of exception. When given an argument, +they scroll the screen up or down by that many lines, rather than by a +screenful. For example, C-u 8 C-v scrolls the screen by 8 lines. + +>> Try typing C-u 8 C-v now. + +This should have scrolled the screen up by 8 lines. If you would like +to scroll it down again, you can give an argument to M-v. + +If you are using a windowed display, such as X11 or MS-Windows, there +should be a tall rectangular area called a scroll bar at the +side of the Emacs window. You can scroll the text by clicking the +mouse in the scroll bar. + +>> Try pressing the middle button at the top of the highlighted area + within the scroll bar. This should scroll the text to a position + determined by how high or low you click. + +>> Try moving the mouse up and down, while holding the middle button + pressed down. You'll see that the text scrolls up and down as + you move the mouse. + + +* WHEN EMACS IS HUNG +-------------------- + +If Emacs stops responding to your commands, you can stop it safely by +typing C-g. You can use C-g to stop a command which is taking too +long to execute. + +You can also use C-g to discard a numeric argument or the beginning of +a command that you do not want to finish. + +>> Type C-u 100 to make a numeric arg of 100, then type C-g. + Now type C-f. It should move just one character, + because you canceled the argument with C-g. + +If you have typed an by mistake, you can get rid of it +with a C-g. + + +* DISABLED COMMANDS +------------------- + +Some Emacs commands are "disabled" so that beginning users cannot use +them by accident. + +If you type one of the disabled commands, Emacs displays a message +saying what the command was, and asking you whether you want to go +ahead and execute the command. + +If you really want to try the command, type (the Space bar) in +answer to the question. Normally, if you do not want to execute the +disabled command, answer the question with "n". + +>> Type C-x C-l (which is a disabled command), + then type n to answer the question. + + +* WINDOWS +--------- + +Emacs can have several windows, each displaying its own text. We will +explain later on how to use multiple windows. Right now we want to +explain how to get rid of extra windows and go back to basic +one-window editing. It is simple: + + C-x 1 One window (i.e., kill all other windows). + +That is CONTROL-x followed by the digit 1. C-x 1 expands the window +which contains the cursor, to occupy the full screen. It deletes all +other windows. + +>> Move the cursor to this line and type C-u 0 C-l. +>> Type CONTROL-h k CONTROL-f. + See how this window shrinks, while a new one appears + to display documentation on the CONTROL-f command. + +>> Type C-x 1 and see the documentation listing window disappear. + +This command is unlike the other commands you have learned in that it +consists of two characters. It starts with the character CONTROL-x. +There is a whole series of commands that start with CONTROL-x; many of +them have to do with windows, files, buffers, and related things. +These commands are two, three or four characters long. + + +* INSERTING AND DELETING +------------------------ + +If you want to insert text, just type the text. Characters which you +can see, such as A, 7, *, etc. are taken by Emacs as text and inserted +immediately. Type (the carriage-return key) to insert a +Newline character. + +You can delete the last character you typed by typing . + is a key on the keyboard--the same one you normally use, +outside Emacs, for deleting the last character you typed. It is +normally a large key a couple of lines up from the key, and +it is usually labeled "Delete", "Del" or "Backspace". + +If the large key there is labeled "Backspace", then that's the one you +use for . There may also be another key labeled "Delete" +somewhere else, but that's not . + +More generally, deletes the character immediately before the +current cursor position. + +>> Do this now--type a few characters, then delete them + by typing a few times. Don't worry about this file + being changed; you will not alter the master tutorial. This is + your personal copy of it. + +When a line of text gets too big for one line on the screen, the line +of text is "continued" onto a second screen line. A backslash ("\") +(or, if you're using a windowed display, a little curved arrow) at the +right margin indicates a line which has been continued. + +>> Insert text until you reach the right margin, and keep on inserting. + You'll see a continuation line appear. + +>> Use s to delete the text until the line fits on one screen + line again. The continuation line goes away. + +You can delete a Newline character just like any other character. +Deleting the Newline character between two lines merges them into +one line. If the resulting combined line is too long to fit in the +screen width, it will be displayed with a continuation line. + +>> Move the cursor to the beginning of a line and type . This + merges that line with the previous line. + +>> Type to reinsert the Newline you deleted. + +Remember that most Emacs commands can be given a repeat count; +this includes text characters. Repeating a text character inserts +it several times. + +>> Try that now -- type C-u 8 * to insert ********. + +You've now learned the most basic way of typing something in +Emacs and correcting errors. You can delete by words or lines +as well. Here is a summary of the delete operations: + + Delete the character just before the cursor + C-d Delete the next character after the cursor + + M- Kill the word immediately before the cursor + M-d Kill the next word after the cursor + + C-k Kill from the cursor position to end of line + M-k Kill to the end of the current sentence + +Notice that and C-d vs M- and M-d extend the parallel +started by C-f and M-f (well, is not really a control +character, but let's not worry about that). C-k and M-k are like C-e +and M-e, sort of, in that lines are opposite sentences. + +You can also kill any part of the text with one uniform method. Move +to one end of that part, and type C-@ or C- (either one). ( +is the Space bar.) Move to the other end of that part, and type C-w. +That kills all the text between the two positions. + +>> Move the cursor to the Y at the start of the previous paragraph. +>> Type C-. Emacs should display a message "Mark set" + at the bottom of the screen. +>> Move the cursor to the n in "end", on the second line of the + paragraph. +>> Type C-w. This will kill the text starting from the Y, + and ending just before the n. + +The difference between "killing" and "deleting" is that "killed" text +can be reinserted, whereas "deleted" things cannot be reinserted. +Reinsertion of killed text is called "yanking". Generally, the +commands that can remove a lot of text kill the text (they set up so +that you can yank the text), while the commands that remove just one +character, or only remove blank lines and spaces, do deletion (so you +cannot yank that text). and C-d do deletion in the simplest +case, with no argument. When given an argument, they kill instead. + +>> Move the cursor to the beginning of a line which is not empty. + Then type C-k to kill the text on that line. +>> Type C-k a second time. You'll see that it kills the Newline + which follows that line. + +Note that a single C-k kills the contents of the line, and a second +C-k kills the line itself, and makes all the other lines move up. C-k +treats a numeric argument specially: it kills that many lines AND +their contents. This is not mere repetition. C-u 2 C-k kills two +lines and their newlines; typing C-k twice would not do that. + +Bringing back killed text is called "yanking". (Think of it as +yanking back, or pulling back, some text that was taken away.) You +can yank the killed text either at the same place where it was killed, +or at some other place in the text you are editing, or even in a +different file. You can yank the same text several times; that makes +multiple copies of it. + +The command for yanking is C-y. It reinserts the last killed text, +at the current cursor position. + +>> Try it; type C-y to yank the text back. + +If you do several C-k's in a row, all of the killed text is saved +together, so that one C-y will yank all of the lines at once. + +>> Do this now, type C-k several times. + +Now to retrieve that killed text: + +>> Type C-y. Then move the cursor down a few lines and type C-y + again. You now see how to copy some text. + +What do you do if you have some text you want to yank back, and then +you kill something else? C-y would yank the more recent kill. But +the previous text is not lost. You can get back to it using the M-y +command. After you have done C-y to get the most recent kill, typing +M-y replaces that yanked text with the previous kill. Typing M-y +again and again brings in earlier and earlier kills. When you have +reached the text you are looking for, you do not have to do anything to +keep it. Just go on with your editing, leaving the yanked text where +it is. + +If you M-y enough times, you come back to the starting point (the most +recent kill). + +>> Kill a line, move around, kill another line. + Then do C-y to get back the second killed line. + Then do M-y and it will be replaced by the first killed line. + Do more M-y's and see what you get. Keep doing them until + the second kill line comes back, and then a few more. + If you like, you can try giving M-y positive and negative + arguments. + + +* UNDO +------ + +If you make a change to the text, and then decide that it was a +mistake, you can undo the change with the undo command, C-x u. + +Normally, C-x u undoes the changes made by one command; if you repeat +the C-x u several times in a row, each repetition undoes one +additional command. + +But there are two exceptions: commands that do not change the text do +not count (this includes cursor motion commands and scrolling +command), and self-inserting characters are usually handled in groups +of up to 20. (This is to reduce the number of C-x u's you have to +type to undo insertion of text.) + +>> Kill this line with C-k, then type C-x u and it should reappear. + +C-_ is an alternative undo command; it works just the same as C-x u, +but it is easier to type several times in a row. The disadvantage of +C-_ is that on some keyboards it is not obvious how to type it. That +is why we provide C-x u as well. On some terminals, you can type C-_ +by typing / while holding down CONTROL. + +A numeric argument to C-_ or C-x u acts as a repeat count. + +You can undo deletion of text just as you can undo killing of text. +The distinction between killing something and deleting it affects +whether you can yank it with C-y; it makes no difference for undo. + + +* FILES +------- + +In order to make the text you edit permanent, you must put it in a +file. Otherwise, it will go away when your invocation of Emacs goes +away. In order to put your text in a file, you must "find" the file +before you enter the text. (This is also called "visiting" the file.) + +Finding a file means that you see the contents of the file within +Emacs. In many ways, it is as if you were editing the file itself. +However, the changes you make using Emacs do not become permanent +until you "save" the file. This is so you can avoid leaving a +half-changed file on the system when you do not want to. Even when +you save, Emacs leaves the original file under a changed name in case +you later decide that your changes were a mistake. + +If you look near the bottom of the screen you will see a line that +begins and ends with dashes, and starts with "--:-- TUTORIAL" or +something like that. This part of the screen normally shows the name +of the file that you are visiting. Right now, you are visiting a file +called "TUTORIAL" which is your personal scratch copy of the Emacs +tutorial. When you find a file with Emacs, that file's name will +appear in that precise spot. + +One special thing about the command for finding a file is that you +have to say what file name you want. We say the command "reads an +argument from the terminal" (in this case, the argument is the name of +the file). After you type the command + + C-x C-f Find a file + +Emacs asks you to type the file name. The file name you type appears +on the bottom line of the screen. The bottom line is called the +minibuffer when it is used for this sort of input. You can use +ordinary Emacs editing commands to edit the file name. + +While you are entering the file name (or any minibuffer input), +you can cancel the command with C-g. + +>> Type C-x C-f, then type C-g. This cancels the minibuffer, + and also cancels the C-x C-f command that was using the + minibuffer. So you do not find any file. + +When you have finished entering the file name, type to +terminate it. Then C-x C-f command goes to work, and finds the file +you chose. The minibuffer disappears when the C-x C-f command is +finished. + +In a little while the file contents appear on the screen, and you can +edit the contents. When you wish to make your changes permanent, +type the command + + C-x C-s Save the file + +This copies the text within Emacs into the file. The first time you +do this, Emacs renames the original file to a new name so that it is +not lost. The new name is made by adding "~" to the end of the +original file's name. + +When saving is finished, Emacs displays the name of the file written. +You should save fairly often, so that you will not lose very much +work if the system should crash. + +>> Type C-x C-s, saving your copy of the tutorial. + This should show "Wrote ...TUTORIAL" at the bottom of the screen. + +NOTE: On some systems, typing C-x C-s will freeze the screen and you +will see no further output from Emacs. This indicates that an +operating system "feature" called "flow control" is intercepting the +C-s and not letting it get through to Emacs. To unfreeze the screen, +type C-q. Then see the section "Spontaneous Entry to Incremental +Search" in the Emacs manual for advice on dealing with this "feature". + +You can find an existing file, to view it or edit it. You can also +find a file which does not already exist. This is the way to create a +file with Emacs: find the file, which will start out empty, and then +begin inserting the text for the file. When you ask to "save" the +file, Emacs will really create the file with the text that you have +inserted. From then on, you can consider yourself to be editing an +already existing file. + + +* BUFFERS +--------- + +If you find a second file with C-x C-f, the first file remains +inside Emacs. You can switch back to it by finding it again with +C-x C-f. This way you can get quite a number of files inside Emacs. + +>> Create a file named "foo" by typing C-x C-f foo . + Then insert some text, edit it, and save "foo" by typing C-x C-s. + Finally, type C-x C-f TUTORIAL + to come back to the tutorial. + +Emacs stores each file's text inside an object called a "buffer". +Finding a file makes a new buffer inside Emacs. To see a list of the +buffers that currently exist in your Emacs job, type + + C-x C-b List buffers + +>> Try C-x C-b now. + +See how each buffer has a name, and it may also have a file name for +the file whose contents it holds. ANY text you see in an Emacs window +is always part of some buffer. + +>> Type C-x 1 to get rid of the buffer list. + +When you have several buffers, only one of them is "current" at any +time. That buffer is the one you edit. If you want to edit another +buffer, you need to "switch" to it. If you want to switch to a buffer +that corresponds to a file, you can do it by visiting the file again +with C-x C-f. But there is an easier way: use the C-x b command. +In that command, you have to type the buffer's name. + +>> Type C-x b foo to go back to the buffer "foo" which holds + the text of the file "foo". Then type C-x b TUTORIAL + to come back to this tutorial. + +Most of the time, the buffer's name is the same as the file name +(without the file directory part). However, this is not always true. +The buffer list you make with C-x C-b always shows you the name of +every buffer. + +ANY text you see in an Emacs window is always part of some buffer. +Some buffers do not correspond to files. For example, the buffer +named "*Buffer List*" does not have any file. It is the buffer which +contains the buffer list that you made with C-x C-b. The buffer named +"*Messages*" also does not correspond to any file; it contains the +messages that have appeared on the bottom line during your Emacs +session. + +>> Type C-x b *Messages* to look at the buffer of messages. + Then type C-x b TUTORIAL to come back to this tutorial. + +If you make changes to the text of one file, then find another file, +this does not save the first file. Its changes remain inside Emacs, +in that file's buffer. The creation or editing of the second file's +buffer has no effect on the first file's buffer. This is very useful, +but it also means that you need a convenient way to save the first +file's buffer. It would be a nuisance to have to switch back to +it with C-x C-f in order to save it with C-x C-s. So we have + + C-x s Save some buffers + +C-x s asks you about each buffer which contains changes that you have +not saved. It asks you, for each such buffer, whether to save the +buffer. + +>> Insert a line of text, then type C-x s. + It should ask you whether to save the buffer named TUTORIAL. + Answer yes to the question by typing "y". + + +* EXTENDING THE COMMAND SET +--------------------------- + +There are many, many more Emacs commands than could possibly be put +on all the control and meta characters. Emacs gets around this with +the X (eXtend) command. This comes in two flavors: + + C-x Character eXtend. Followed by one character. + M-x Named command eXtend. Followed by a long name. + +These are commands that are generally useful but used less than the +commands you have already learned about. You have already seen a few +of them: the file commands C-x C-f to Find and C-x C-s to Save, for +example. Another example is the command to end the Emacs +session--this is the command C-x C-c. (Do not worry about losing +changes you have made; C-x C-c offers to save each changed file before +it kills the Emacs.) + +If you are using a graphical display that supports multiple +applications in parallel, you don't need any special command to move +from Emacs to another application. You can do this with the mouse or +with window manager commands. However, if you're using a text +terminal which can only show one application at a time, you need to +"suspend" Emacs to move to any other program. + +C-z is the command to exit Emacs *temporarily*--so that you can go +back to the same Emacs session afterward. When Emacs is running on a +text terminal, C-z "suspends" Emacs; that is, it returns to the shell +but does not destroy the Emacs. In the most common shells, you can +resume Emacs with the `fg' command or with `%emacs'. + +The time to use C-x C-c is when you are about to log out. It's also +the right thing to use to exit an Emacs invoked under mail handling +programs and other miscellaneous utilities, since they may not know +how to cope with suspension of Emacs. In ordinary circumstances, +though, if you are not about to log out, it is better to suspend Emacs +with C-z instead of exiting Emacs. + +There are many C-x commands. Here is a list of the ones you have learned: + + C-x C-f Find file + C-x C-s Save file + C-x s Save some buffers + C-x C-b List buffers + C-x b Switch buffer + C-x C-c Quit Emacs + C-x 1 Delete all but one window + C-x u Undo + +Named eXtended commands are commands which are used even less +frequently, or commands which are used only in certain modes. An +example is the command replace-string, which globally replaces one +string with another. When you type M-x, Emacs prompts you at the +bottom of the screen with M-x and you should type the name of the +command; in this case, "replace-string". Just type "repl s" and +Emacs will complete the name. ( is the Tab key, usually found +above the CapsLock or Shift key near the left edge of the keyboard.) +End the command name with . + +The replace-string command requires two arguments--the string to be +replaced, and the string to replace it with. You must end each +argument with . + +>> Move the cursor to the blank line two lines below this one. + Then type M-x repl schangedaltered. + + Notice how this line has changed: you've replaced + the word c-h-a-n-g-e-d with "altered" wherever it occurred, + after the initial position of the cursor. + + +* AUTO SAVE +----------- + +When you have made changes in a file, but you have not saved them yet, +they could be lost if your computer crashes. To protect you from +this, Emacs periodically writes an "auto save" file for each file that +you are editing. The auto save file name has a # at the beginning and +the end; for example, if your file is named "hello.c", its auto save +file's name is "#hello.c#". When you save the file in the normal way, +Emacs deletes its auto save file. + +If the computer crashes, you can recover your auto-saved editing by +finding the file normally (the file you were editing, not the auto +save file) and then typing M-x recover file. When it asks for +confirmation, type yes to go ahead and recover the auto-save +data. + + +* ECHO AREA +----------- + +If Emacs sees that you are typing multicharacter commands slowly, it +shows them to you at the bottom of the screen in an area called the +"echo area". The echo area contains the bottom line of the screen. + + +* MODE LINE +----------- + +The line immediately above the echo area is called the "mode line". +The mode line says something like this: + +--:** TUTORIAL 63% L749 (Fundamental)----------------------- + +This line gives useful information about the status of Emacs and +the text you are editing. + +You already know what the filename means--it is the file you have +found. NN% indicates your current position in the text; it means that +NN percent of the text is above the top of the screen. If the top of +the file is on the screen, it will say "Top" instead of " 0%". If the +bottom of the text is on the screen, it will say "Bot". If you are +looking at text so small that all of it fits on the screen, the mode +line says "All". + +The L and digits indicate position in another way: they give the +current line number of point. + +The stars near the front mean that you have made changes to the text. +Right after you visit or save a file, that part of the mode line shows +no stars, just dashes. + +The part of the mode line inside the parentheses is to tell you what +editing modes you are in. The default mode is Fundamental which is +what you are using now. It is an example of a "major mode". + +Emacs has many different major modes. Some of them are meant for +editing different languages and/or kinds of text, such as Lisp mode, +Text mode, etc. At any time one and only one major mode is active, +and its name can always be found in the mode line just where +"Fundamental" is now. + +Each major mode makes a few commands behave differently. For example, +there are commands for creating comments in a program, and since each +programming language has a different idea of what a comment should +look like, each major mode has to insert comments differently. Each +major mode is the name of an extended command, which is how you can +switch to that mode. For example, M-x fundamental-mode is a command to +switch to Fundamental mode. + +If you are going to be editing human-language text, such as this file, you +should probably use Text Mode. + +>> Type M-x text mode. + +Don't worry, none of the Emacs commands you have learned changes in +any great way. But you can observe that M-f and M-b now treat +apostrophes as part of words. Previously, in Fundamental mode, +M-f and M-b treated apostrophes as word-separators. + +Major modes usually make subtle changes like that one: most commands +do "the same job" in each major mode, but they work a little bit +differently. + +To view documentation on your current major mode, type C-h m. + +>> Use C-u C-v once or more to bring this line near the top of screen. +>> Type C-h m, to see how Text mode differs from Fundamental mode. +>> Type C-x 1 to remove the documentation from the screen. + +Major modes are called major because there are also minor modes. +Minor modes are not alternatives to the major modes, just minor +modifications of them. Each minor mode can be turned on or off by +itself, independent of all other minor modes, and independent of your +major mode. So you can use no minor modes, or one minor mode, or any +combination of several minor modes. + +One minor mode which is very useful, especially for editing +human-language text, is Auto Fill mode. When this mode is on, Emacs +breaks the line in between words automatically whenever you insert +text and make a line that is too wide. + +You can turn Auto Fill mode on by doing M-x auto fill mode. +When the mode is on, you can turn it off again by doing M-x +auto fill mode. If the mode is off, this command turns it on, +and if the mode is on, this command turns it off. We say that the +command "toggles the mode". + +>> Type M-x auto fill mode now. Then insert a line of "asdf " + over again until you see it divide into two lines. You must put in + spaces between them because Auto Fill breaks lines only at spaces. + +The margin is usually set at 70 characters, but you can change it +with the C-x f command. You should give the margin setting you want +as a numeric argument. + +>> Type C-x f with an argument of 20. (C-u 2 0 C-x f). + Then type in some text and see Emacs fill lines of 20 + characters with it. Then set the margin back to 70 using + C-x f again. + +If you make changes in the middle of a paragraph, Auto Fill mode +does not re-fill it for you. +To re-fill the paragraph, type M-q (META-q) with the cursor inside +that paragraph. + +>> Move the cursor into the previous paragraph and type M-q. + + +* SEARCHING +----------- + +Emacs can do searches for strings (these are groups of contiguous +characters or words) either forward through the text or backward +through it. Searching for a string is a cursor motion command; +it moves the cursor to the next place where that string appears. + +The Emacs search command is different from the search commands +of most editors, in that it is "incremental". This means that the +search happens while you type in the string to search for. + +The command to initiate a search is C-s for forward search, and C-r +for reverse search. BUT WAIT! Don't try them now. + +When you type C-s you'll notice that the string "I-search" appears as +a prompt in the echo area. This tells you that Emacs is in what is +called an incremental search waiting for you to type the thing that +you want to search for. terminates a search. + +>> Now type C-s to start a search. SLOWLY, one letter at a time, + type the word 'cursor', pausing after you type each + character to notice what happens to the cursor. + Now you have searched for "cursor", once. +>> Type C-s again, to search for the next occurrence of "cursor". +>> Now type four times and see how the cursor moves. +>> Type to terminate the search. + +Did you see what happened? Emacs, in an incremental search, tries to +go to the occurrence of the string that you've typed out so far. To +go to the next occurrence of 'cursor' just type C-s again. If no such +occurrence exists, Emacs beeps and tells you the search is currently +"failing". C-g would also terminate the search. + +NOTE: On some systems, typing C-s will freeze the screen and you will +see no further output from Emacs. This indicates that an operating +system "feature" called "flow control" is intercepting the C-s and not +letting it get through to Emacs. To unfreeze the screen, type C-q. +Then see the section "Spontaneous Entry to Incremental Search" in the +Emacs manual for advice on dealing with this "feature". + +If you are in the middle of an incremental search and type , +you'll notice that the last character in the search string is erased +and the search backs up to the last place of the search. For +instance, suppose you have typed "c", to search for the first +occurrence of "c". Now if you type "u", the cursor will move +to the first occurrence of "cu". Now type . This erases +the "u" from the search string, and the cursor moves back to +the first occurrence of "c". + +If you are in the middle of a search and type a control or meta +character (with a few exceptions--characters that are special in +a search, such as C-s and C-r), the search is terminated. + +The C-s starts a search that looks for any occurrence of the search +string AFTER the current cursor position. If you want to search for +something earlier in the text, type C-r instead. Everything that we +have said about C-s also applies to C-r, except that the direction of +the search is reversed. + + +* MULTIPLE WINDOWS +------------------ + +One of the nice features of Emacs is that you can display more than one +window on the screen at the same time. + +>> Move the cursor to this line and type C-u 0 C-l (that's CONTROL-L, not + CONTROL-1). + +>> Now type C-x 2 which splits the screen into two windows. + Both windows display this tutorial. The cursor stays in the top window. + +>> Type C-M-v to scroll the bottom window. + (If you do not have a real META key, type C-v.) + +>> Type C-x o ("o" for "other") to move the cursor to the bottom window. +>> Use C-v and M-v in the bottom window to scroll it. + Keep reading these directions in the top window. + +>> Type C-x o again to move the cursor back to the top window. + The cursor in the top window is just where it was before. + +You can keep using C-x o to switch between the windows. Each +window has its own cursor position, but only one window actually +shows the cursor. All the ordinary editing commands apply to the +window that the cursor is in. We call this the "selected window". + +The command C-M-v is very useful when you are editing text in one +window and using the other window just for reference. You can keep +the cursor always in the window where you are editing, and advance +through the other window sequentially with C-M-v. + +C-M-v is an example of a CONTROL-META character. If you have a real +META key, you can type C-M-v by holding down both CONTROL and META while +typing v. It does not matter whether CONTROL or META "comes first," +because both of these keys act by modifying the characters you type. + +If you do not have a real META key, and you use instead, the +order does matter: you must type followed by CONTROL-v, because +CONTROL- v will not work. This is because is a character +in its own right, not a modifier key. + +>> Type C-x 1 (in the top window) to get rid of the bottom window. + +(If you had typed C-x 1 in the bottom window, that would get rid +of the top one. Think of this command as "Keep just one +window--the window I am already in.") + +You do not have to display the same buffer in both windows. If you +use C-x C-f to find a file in one window, the other window does not +change. You can find a file in each window independently. + +Here is another way to use two windows to display two different +things: + +>> Type C-x 4 C-f followed by the name of one of your files. + End with . See the specified file appear in the bottom + window. The cursor goes there, too. + +>> Type C-x o to go back to the top window, and C-x 1 to delete + the bottom window. + + +* RECURSIVE EDITING LEVELS +-------------------------- + +Sometimes you will get into what is called a "recursive editing +level". This is indicated by square brackets in the mode line, +surrounding the parentheses around the major mode name. For +example, you might see [(Fundamental)] instead of (Fundamental). + +To get out of the recursive editing level, type . +That is an all-purpose "get out" command. You can also use it for +eliminating extra windows, and getting out of the minibuffer. + +>> Type M-x to get into a minibuffer; then type to + get out. + +You cannot use C-g to get out of a recursive editing level. This is +because C-g is used for canceling commands and arguments WITHIN the +recursive editing level. + + +* GETTING MORE HELP +------------------- + +In this tutorial we have tried to supply just enough information to +get you started using Emacs. There is so much available in Emacs that +it would be impossible to explain it all here. However, you may want +to learn more about Emacs since it has many other useful features. +Emacs provides commands for reading documentation about Emacs +commands. These "help" commands all start with the character +CONTROL-h, which is called "the Help character". + +To use the Help features, type the C-h character, and then a +character saying what kind of help you want. If you are REALLY lost, +type C-h ? and Emacs will tell you what kinds of help it can give. +If you have typed C-h and decide you do not want any help, just +type C-g to cancel it. + +(Some sites change the meaning of the character C-h. They really +should not do this as a blanket measure for all users, so you have +grounds to complain to the system administrator. Meanwhile, if C-h +does not display a message about help at the bottom of the screen, try +typing the F1 key or M-x help instead.) + +The most basic HELP feature is C-h c. Type C-h, the character c, and +a command character or sequence; then Emacs displays a very brief +description of the command. + +>> Type C-h c C-p. + +The message should be something like this: + + C-p runs the command previous-line + +This tells you the "name of the function". Function names are used +mainly for customizing and extending Emacs. But since function names +are chosen to indicate what the command does, they can serve also as +very brief documentation--sufficient to remind you of commands you +have already learned. + +Multi-character commands such as C-x C-s and (if you have no META or +EDIT or ALT key) v are also allowed after C-h c. + +To get more information about a command, use C-h k instead of C-h c. + +>> Type C-h k C-p. + +This displays the documentation of the function, as well as its +name, in an Emacs window. When you are finished reading the +output, type C-x 1 to get rid of the help text. You do not have +to do this right away. You can do some editing while referring +to the help text, and then type C-x 1. + +Here are some other useful C-h options: + + C-h f Describe a function. You type in the name of the + function. + +>> Try typing C-h f previous-line. + This displays all the information Emacs has about the + function which implements the C-p command. + +A similar command C-h v displays the documentation of variables whose +values you can set to customize Emacs behavior. You need to type in +the name of the variable when Emacs prompts for it. + + C-h a Command Apropos. Type in a keyword and Emacs will list + all the commands whose names contain that keyword. + These commands can all be invoked with META-x. + For some commands, Command Apropos will also list a one + or two character sequence which runs the same command. + +>> Type C-h a file. + +This displays in another window a list of all M-x commands with "file" +in their names. You will see character-commands like C-x C-f listed +beside the corresponding command names such as find-file. + +>> Type C-M-v to scroll the help window. Do this a few times. + +>> Type C-x 1 to delete the help window. + + C-h i Read On-line Manuals (a.k.a. Info). This command puts + you into a special buffer called `*info*' where you + can read on-line manuals for the packages installed on + your system. Type m emacs to read the Emacs + manual. If you have never before used Info, type ? + and Emacs will take you on a guided tour of Info mode + facilities. Once you are through with this tutorial, + you should consult the Emacs Info manual as your + primary documentation. + + +* MORE FEATURES +--------------- + +You can learn more about Emacs by reading its manual, either as a book +or on-line in Info (use the Help menu or type F10 h r). Two features +that you may like especially are completion, which saves typing, and +dired, which simplifies file handling. + +Completion is a way to avoid unnecessary typing. For instance, if you +want to switch to the *Messages* buffer, you can type C-x b *M +and Emacs will fill in the rest of the buffer name as far as it can +determine from what you have already typed. Completion is described +in Info in the Emacs manual in the node called "Completion". + +Dired enables you to list files in a directory (and optionally its +subdirectories), move around that list, visit, rename, delete and +otherwise operate on the files. Dired is described in Info in the +Emacs manual in the node called "Dired". + +The manual also describes many other Emacs features. + + +* CONCLUSION +------------ + +Remember, to exit Emacs permanently use C-x C-c. To exit to a shell +temporarily, so that you can come back to Emacs afterward, use C-z. + +This tutorial is meant to be understandable to all new users, so if +you found something unclear, don't sit and blame yourself - complain! + + +* COPYING +--------- + +This tutorial descends from a long line of Emacs tutorials +starting with the one written by Stuart Cracraft for the original Emacs. + +This version of the tutorial is a part of GNU Emacs. It is copyrighted +and comes with permission to distribute copies on certain conditions: + + Copyright (C) 1985, 1996, 1998, 2001, 2002, 2003, 2004, + 2005, 2006, 2007 Free Software Foundation, Inc. + + 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 3, 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., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. + +Please read the file COPYING and then do give copies of GNU Emacs to +your friends. Help stamp out software obstructionism ("ownership") by +using, writing, and sharing free software! + +;;; arch-tag: a0f84628-777f-4238-8865-451a73167f55 diff --git a/etc/tutorials/TUTORIAL.bg b/etc/tutorials/TUTORIAL.bg new file mode 100644 index 00000000000..cc8b2c5b2c5 --- /dev/null +++ b/etc/tutorials/TUTORIAL.bg @@ -0,0 +1,1197 @@ +Âúâåäåíèåòî íà Åìàêñ. Óñëîâèÿòà çà êîïèðàíå ñà â êðàÿ íà òåêñòà. + +Êîìàíäèòå íà Åìàêñ íàé-÷åñòî âêëþ÷âàò êëàâèøèòå CONTROL (ïîíÿêîãà +îòáåëÿçâàí ñ CTRL èëè CTL) è META (ïîíÿêîãà îòáåëÿçâàí ñ EDIT èëè +ALT). Âìåñòî äà ñå èçïèñâàò ñ ïúëíî èìå âñåêè ïúò, íèå ùå èçïîëçâàìå +ñëåäíèòå ñúêðàùåíèÿ: + + C-<çíàê> îçíà÷àâà çàäúðæàíå íà êëàâèøà CONTROL, äîêàòî ñå + íàòèñêà çíàêà <çíàê>. Òàêà C-f ùå îçíà÷àâà: äîêàòî + ñå çàäúðæà íàòèñíàò êëàâèøà CONTROL, ñå íàòèñêà f. + M-<çíàê> îçíà÷àâà çàäúðæàíå íàòèñíàò íà êëàâèøà META (èëè EDIT, + èëè ALT), äîêàòî ñå íàòèñêà <çíàê>. Àêî íÿìà êëàâèø + META, EDIT èëè ALT, âìåñòî íåãî íàòèñíåòå è îòïóñíåòå + êëàâèøà ESC è ñëåä òîâà âúâåäåòå <çíàê>. Íèå + çàïèñâàìå , çà äà îòáåëåæèì êëàâèøà ESC. + +Âàæíà áåëåæêà: â êðàÿ íà Åìàêñ ñåñèÿòà âúâåäåòå äâàòà çíàêà C-x C-c. +Çíàöèòå ">>" îòëÿâî âè äàâàò óêàçàíèå äà èçïúëíèòå êîìàíäà. Íàïðèìåð: +<> +>> Ñåãà âúâåäåòå C-v (Ïîêàæè ñëåäâàùèÿ åêðàí), çà äà ñå ïðèäâèæèòå êúì +ñëåäâàùèÿ åêðàí. + (Íàïðàâåòå ãî ñåãà, çàäðúæòå CONTROL, äîêàòî íàòèñêàòå v). + Îòñåãà íàòàòúê âèå ùå ïðàâèòå òîâà âèíàãè, êîãàòî ïðî÷åòåòå + åêðàíà. + +Çàáåëåæåòå, ÷å èìà ïðèïîêðèâàíå íà äâà ðåäà, êîãàòî ñå ïðèäâèæâàòå îò +åêðàí â åêðàí; òîâà îñèãóðÿâà íÿêàêâà ïðèåìñòâåíîñò, òàêà ÷å äà ìîæåòå +ïî-ëåñíî äà ïðîäúëæèòå ñ ÷åòåíåòî íà òåêñòà. + +Ïúðâîòî íåùî, êîåòî òðÿáâà äà çíàåòå, å êàê äà ñå ïðèäâèæâàòå îò åäíî +ìÿñòî íà òåêñòà êúì äðóãî. Âèå âå÷å çíàåòå êàê äà ñå ïðèäâèæâàòå +åêðàí íàïðåä, ñ C-v. Çà äà ñå ïðèäâèæèòå åêðàí íàçàä, âúâåäåòå M-v +(çàäðúæòå êëàâèøà META è íàòèñíåòå v, èëè âúâåäåòå v, àêî íÿìàòå +êëàâèø META, EDIT èëè ALT). + +>> Îïèòàéòå ñå äà âúâåäåòå M-v è ñëåä òîâà C-v íÿêîëêî ïúòè. + + +* ÎÁÎÁÙÅÍÈÅ +----------- + +Ñëåäâàùèòå êîìàíäè ñà ïîëåçíè ïðè ïúëíîåêðàííî ðàçãëåæäàíå: + + C-v Ïðèäâèæâàíå íàïðåä ñ åäèí åêðàí + M-v Ïðèäâèæâàíå íàçàä ñ åäèí åêðàí + C-l Èç÷èñòâàíå íà åêðàíà è ïðå÷åðòàâàíå íà öåëèÿ òåêñò, + ïðåìåñòâàéêè òåêñòà îêîëî êóðñîðà â ñðåäàòà íà åêðàíà. + (Òîâà å CONTROL-L, íå CONTROL-1.) + +>> Íàìåðåòå êóðñîðà è ñè çàïîìíåòå êàêúâ å òåêñòúò îêîëî íåãî. + Ñëåä òîâà âúâåäåòå C-l. + Íàìåðåòå ïàê êóðñîðà è âèæòå, ÷å ñúùèÿò òåêñò å ïàê îêîëî êóðñîðà. + +Ìîæå ñúùî äà èçïîëçâàòå êëàâèøèòå PageUp è PageDown çà ïðèäâèæâàíå ïî +åêðàíè, àêî âàøèÿò òåðìèíàë ãè ïðèòåæàâà, íî âèå ìîæåòå äà ðåäàêòèðàòå +ïî-åôåêòèâíî, àêî èçïîëçâàòå C-v è M-v. + + +* ÎÑÍÎÂÈ ÍÀ ÓÏÐÀÂËÅÍÈÅÒÎ ÍÀ ÊÓÐÑÎÐÀ +----------------------------------- + +Ïðèäâèæâàíåòî îò åêðàí íà åêðàí å ïîëåçíî, íî êàê äà ñå ïðèäâèæèòå äî +îïðåäåëåíî ìÿñòî âúòðå â òåêñòà íà åêðàíà? + +Èìà íÿêîëêî íà÷èíà äà ãî íàïðàâèòå. Ìîæå äà èçïîëçâàòå êëàâèøèòå +ñòðåëêè, íî å ïî-åôåêòèâíî äà äúðæèòå ðúöåòå ñè â ñòàíäàðòíî ïîëîæåíèå +è äà èçïîëçâàòå êîìàíäèòå C-p, C-b, C-f è C-n. Òåçè çíàöè ñà +åêâèâàëåíòíè íà ÷åòèðèòå êëàâèøè ñòðåëêè, åòî òàêà: + + Ïðåäèøåí ðåä (Previous), C-p + : + : + Íàçàä, C-b .... Òåêóùà ïîçèöèÿ íà êóðñîðà .... Íàïðåä, C-f + (Backward) : (Forward) + : + Ñëåäâàù ðåä (Next), C-n + +>> Ïðèäâèæåòå êóðñîðà äî ðåäà â ñðåäàòà íà òàçè äèàãðàìà, èçïîëçâàéêè + C-n è C-p. Ñëåä òîâà íàòèñíåòå C-l, çà äà âèäèòå öÿëàòà äèàãðàìà, + öåíòðèðàíà íà åêðàíà. + +Ùå íàìåðèòå, ÷å çàïîìíÿíåòî íà òåçè áóêâè ïî äóìèòå íà àíãëèéñêè íà +äåéñòâèÿòà, êîèòî èçâúðøâàò, å ëåñíî: P çà Previous (ïðåäèøåí), N çà +Next (ñëåäâàù), B çà Backward (íàçàä) è F çà Forward (íàïðåä). Âèå ùå +èçïîëçâàòå òåçè îñíîâíè êîìàíäè çà ïðèäâèæâàíå íà êóðñîðà ïðåç öÿëîòî +âðåìå. + +>> Âúâåäåòå íÿêîëêî C-n, çà äà äîâåäåòå êóðñîðà äî òîçè ðåä. + +>> Ïðèäâèæåòå ñå â ðåäà ñ íÿêîëêî C-f è ñëåä òîâà ñ íÿêîëêî C-p. + Âèæòå êàêâî ïðàâè C-p, êîãàòî êóðñîðúò å â ñðåäàòà íà ðåäà. + +Âñåêè ðåä îò òåêñò çàâúðøâà ñúñ çíàê çà íîâ ðåä, êîéòî ñëóæè çà +îòäåëÿíåòî íà ðåäà îò ñëåäâàùèÿ ðåä. Ïîñëåäíèÿò ðåä âúâ âàøèÿ ôàéë +òðÿáâà äà èìà çíàê çà íîâ ðåä â êðàÿ (íî Åìàêñ íå èçèñêâà òàêúâ, +êîãàòî ïðî÷èòà ôàéëà). + +>> Îïèòàéòå C-b â íà÷àëîòî íà ðåä. Òîâà òðÿáâà äà âè ïðèäâèæè â êðàÿ + íà ïðåäèøíèÿ ðåä. Òîâà å òàêà, çàùîòî êóðñîðúò ñå ïðèäâèæâà êúì + çíàêà çà íîâ ðåä íà ïðåäèøíèÿ ðåä. + +C-f ìîæå äà ïðèäâèæâà ïðåç çíàê çà íîâ ðåä òî÷íî êàêòî C-b. + +>> Íàïðàâåòå íÿêîëêî C-b ïðèäâèæâàíèÿ, òàêà ÷å äà äîáèåòå óñåùàíå êúäå + ñå íàìèðà êóðñîðúò. Ñëåä òîâà íÿêîëêî C-f, çà äà ñå âúðíåòå â êðàÿ + íà ðåäà. Ñëåä òîâà îùå íÿêîëêî C-f, çà äà ñå ïðèäâèæèòå äî + ñëåäâàùèÿ ðåä. + +Êîãàòî ñå ïðèäâèæâàòå ñëåä ãîðíèÿ èëè äîëíèÿ êðàé íà åêðàíà, òåêñòúò +îòâúä êðàÿ ñå èçìåñòâà êúì åêðàíà. Òîâà ñå íàðè÷à "ñêðîëèðàíå". Òî +ïîçâîëÿâà íà Åìàêñ äà ïðèäâèæâà êóðñîðà êúì çàäàäåíîòî ìÿñòî â òåêñòà, +áåç äà ãî èçêàðâà èçâúí åêðàíà. + +>> Îïèòàéòå ñå äà ïðèäâèæèòå êóðñîðà ñëåä äîëíèÿ êðàé íà åêðàíà ñ C-n + è âèæòå êàêâî ñå ñëó÷âà. + +Àêî ïðèäâèæâàíåòî ïî çíàöè å òâúðäå áàâíî, ìîæå äà ïðîáâàòå +ïðèäâèæâàíå ïî äóìè. M-f (META-f) ïðèäâèæâà êóðñîðà äóìà íàïðåä, à +M-b ïðèäâèæâà äóìà íàçàä. + +>> Âúâåäåòå íÿêîëêî M-f è M-b. + +Êîãàòî ñòå â ñðåäàòà íà äóìà, M-f ïðèäâèæâà â êðàÿ íà äóìàòà. Êîãàòî +ñòå â ïðàçíî ìÿñòî ìåæäó äóìè, M-f ïðèäâèæâà â êðàÿ íà ñëåäâàùàòà +äóìà. M-b ðàáîòè ïî ïîäîáåí íà÷èí â ïðîòèâîïîëîæíàòà ïîñîêà. + +>> Âúâåäåòå M-f è M-b íÿêîëêî ïúòè, ðàçìåñåíè ñ C-f è C-b, òàêà ÷å äà + ìîæåòå äà íàáëþäàâàòå äåéñòâèåòî íà M-f è M-b â ðàçëè÷íè ìåñòà + âúòðå è ìåæäó äóìèòå. + +Çàáåëåæåòå ïðèëèêàòà ìåæäó C-f è C-b, îò åäíà ñòðàíà, è M-f è M-b, îò +äðóãà. Ìíîãî ÷åñòî Meta-çíàöèòå ñà èçïîëçâàíè çà äåéñòâèÿ âúðõó +åäèíèöè, äåôèíèðàíè îò åçèêà (äóìè, èçðå÷åíèÿ, àáçàöè), äîêàòî +Control-çíàöèòå äåéñòâàò âúðõó îñíîâíè åäèíèöè, êîèòî ñà íåçàâèñèìè îò +òîâà, êàêâî ðåäàêòèðàòå (çíàöè, ðåäîâå è äðóãè). + +Òàçè ïðèëèêà ñå ïðèëàãà âúðõó ðåäîâå è èçðå÷åíèÿ: C-a è C-e ïðèäâèæâàò +äî íà÷àëîòî èëè êðàÿ íà ðåä, à M-a è M-e ïðèäâèæâàò äî íà÷àëîòî è êðàÿ +íà èçðå÷åíèå. + +>> Îïèòàéòå íÿêîëêî C-a, à ñëåä òîâà íÿêîëêî C-e. + Îïèòàéòå íÿêîëêî M-a, à ñëåä òîâà íÿêîëêî M-e. + +Âèæòå êàê ïîâòàðÿíåòî íà C-a íå ïðàâè íèùî, äîêàòî ïîâòàðÿíåòî íà M-a +ïðîäúëæàâà ïðèäâèæâàíåòî ñ îùå åäíî èçðå÷åíèå. Âúïðåêè ÷å òåçè +êëàâèøíè êîìáèíàöèè íå ñà òî÷íî àíàëîãè÷íè, âñÿêà åäíà îò òÿõ èçãëåæäà +åñòåñòâåíà. + +Ïîëîæåíèåòî íà êóðñîðà â òåêñòà ñå íàðè÷à ñúùî "òî÷êà". +Ïåðåôðàçèðàíî, êóðñîðúò ïîêàçâà íà åêðàíà êúäå å ðàçïîëîæåíà òî÷êàòà â +òåêñòà. + +Åòî îáîáùåíèå íà ïðîñòèòå äåéñòâèÿ, äâèæåùè êóðñîðà, âêëþ÷èòåëíî +ïðèäâèæâàùèòå ïî äóìà è èçðå÷åíèå: + + C-f Ïðèäâèæâà íàïðåä ñ åäèí çíàê + C-b Ïðèäâèæâà íàçàä ñ åäèí çíàê + + M-f Ïðèäâèæâà íàïðåä ñ åäíà äóìà + M-b ïðèäâèæâà íàçàä ñ åäíà äóìà + + C-n Ïðèäâèæâà äî ñëåäâàùèÿ ðåä + C-p Ïðèäâèæâà äî ïðåäèøíèÿ ðåä + + C-a Ïðèäâèæâà äî íà÷àëîòî íà ðåä + C-e Ïðèäâèæâà äî êðàÿ íà ðåä + + M-a Ïðèäâèæâà äî íà÷àëîòî íà èçðå÷åíèå + M-e Ïðèäâèæâà äî êðàÿ íà èçðå÷åíèå + +>> Ñåãà îïèòàéòå âñè÷êè òåçè êîìàíäè íÿêîëêî ïúòè çà ïðàêòèêà. Òåçè + ñà íàé-÷åñòî èçïîëçâàíèòå êîìàíäè. + +Äâå äðóãè âàæíè êîìàíäè çà äâèæåíèå íà êóðñîðà ñà M-< (Meta ïî-ìàëêî), +êîÿòî ïðèäâèæâà äî íà÷àëîòî íà öåëèÿ òåêñò, è M-> (Meta ïî-ãîëÿìî), +êîÿòî ïðåìåñòâà äî êðàÿ íà öåëèÿ òåêñò. + +Ïðè ïîâå÷åòî òåðìèíàëè çíàêúò "<" å îòáåëÿçàí íàä çàïåòàÿòà, òàêà ÷å +òðÿáâà äà èçïîëçâàòå êëàâèøà Shift, çà äà ãî íàïèøåòå. Íà òåçè +òåðìèíàëè òðÿáâà äà èçïîëçâàòå Shift, çà äà âúâåäåòå è M-<; áåç êëàâèøà +Shift áèõòå âúâåëè M-çàïåòàÿ. + +>> Îïèòàéòå M-< ñåãà, çà äà ñå ïðèäâèæèòå äî íà÷àëîòî íà âúâåäåíèåòî. + Ñëåä òîâà èçïîëçâàéòå C-v êîëêîòî å íóæíî ïúòè, çà äà ñå ïðèäâèæèòå + äî òóê. + +>> Îïèòàéòå M-> ñåãà, çà äà ñå ïðèäâèæèòå äî êðàÿ íà âúâåäåíèåòî. + Ñëåä òîâà èçïîëçâàéòå M-v êîëêîòî å íóæíî ïúòè, çà äà ñå ïðèäâèæèòå + äî òóê. + +Âèå ìîæåòå ñúùî äà ñå ïðèäâèæâàòå ñ êëàâèøèòå-ñòðåëêè, àêî âàøèÿò +òåðìèíàë èìà òàêèâà. Íèå ïðåïîðú÷âàìå äà íàó÷èòå C-b, C-f, C-n è C-p +ïî òðè ïðè÷èíè. Ïúðâî, òå ðàáîòÿò íà âñè÷êè âèäîâå òåðìèíàëè. Âòîðî, +âåäíúæ ñëåä êàòî äîáèåòå ïðàêòèêà â èçïîëçâàíåòî íà Åìàêñ, ùå +îòêðèåòå, ÷å âúâåæäàíåòî íà òåçè Control-çíàöè å ïî-áúðçî îò +âúâåæäàíåòî íà êëàâèøèòå ñòðåëêè, çàùîòî íå òðÿáâà äà ïðåìåñòâàòå +ðúêàòà ñè äàëå÷ îò îáëàñòòà íà êëàâèøèòå ñ áóêâè. Òðåòî, âåäíúæ ñëåä +êàòî ñè îôîðìèòå íàâèê äà èçïîëçâàòå òåçè êîìàíäè ñ Control çíàöè, âèå +ìîæåòå ñúùî òàêà ëåñíî äà íàó÷èòå ïî-íàïðåäíàëèòå êîìàíäè çà äâèæåíèå +íà êóðñîðà. + +Ïîâå÷åòî Åìàêñ êîìàíäè ïðèåìàò ÷èñëîâ àðãóìåíò; çà ïîâå÷åòî îò òÿõ òîé +ñëóæè êàòî áðîÿ÷ íà ïîâòîðåíèÿ. Íà÷èíúò, ïî êîéòî äàâàòå ÷èñëîâ +áðîÿ÷, å ñ âúâåæäàíå íà C-u, ïîñëåäâàíî îò âúâåæäàíå íà öèôðèòå, è +âñè÷êî òîâà ïðåäè âúâåæäàíå íà ñàìàòà êîìàíäà. Àêî èìàòå êëàâèø META +(èëè EDIT èëè ALT), èìà äðóã, àëòåðíàòèâåí íà÷èí äà âúâåäåòå ÷èñëîâ +àðãóìåíò: âúâåäåòå öèôðèòå, äîêàòî çàäúðæàòå êëàâèøà META. Íèå +ïðåïîðú÷âàìå äà íàó÷èòå íà÷èíà ñ C-u, çàùîòî òîé ðàáîòè íà êîéòî è äà +å òåðìèíàë. ×èñëîâèÿò àðãóìåíò ñå íàðè÷à ñúùî "ïðåôèêñåí àðãóìåíò", +çàùîòî ãî âúâåæäàòå ïðåäè êîìàíäàòà, çà êîÿòî å ïðåäíàçíà÷åí. + +Íàïðèìåð, C-u 8 C-f ïðèäâèæâà îñåì çíàêà íàïðåä. + +>> Îïèòàéòå èçïîëçâàíåòî íà C-n èëè C-p ñ ÷èñëîâ àðãóìåíò, çà äà + ïðèäâèæèòå êóðñîðà äî ðåä, áëèçúê äî òîçè, ñàìî ñ åäíà êîìàíäà. + +Ïîâå÷åòî êîìàíäè èçïîëçâàò ÷èñëîâèÿ àðãóìåíò êàòî áðîÿ÷ íà +ïîâòîðåíèÿòà, íî íÿêîè ãî èçïîëçâàò çà äðóãè öåëè. Íÿêîëêî êîìàíäè +(íî íèêîÿ îò òåçè, êîèòî ñòå íàó÷èëè äîñåãà) ãî èçïîëçâàò êàòî ôëàã -- +ïðèñúñòâèåòî íà ÷èñëîâ àðãóìåíò, íåçàâèñèìî îò ñòîéíîñòà ìó, êàðà +êîìàíäàòà äà âúðøè íåùî ðàçëè÷íî. + +C-v è M-v ñà äðóã âèä èçêëþ÷åíèå. Êîãàòî èì å äàäåí àðãóìåíò, òå +ñêðîëèðàò åêðàíà íàãîðå èëè íàäîëó ñúñ çàäàäåíèÿ áðîé ðåäîâå, âìåñòî ñ +åêðàíè. Íàïðèìåð, C-u 8 C-v ñêðîëèðà åêðàíà ñ 8 ðåäà. + +>> Ñåãà îïèòàéòå C-u 8 C-v. + +Òîâà áè òðÿáâàëî äà ñêðîëèðà åêðàíà ñ 8 ðåäà. Àêî èñêàòå äà +ñêðîëèðàòå îòíîâî íàäîëó, ìîæå äà äàäåòå àðãóìåíò íà M-v. + +Àêî èçïîëçâàòå ãðàôè÷åí èíòåðôåéñ, êàòî X11 èëè MS-Windows, áè +òðÿáâàëî äà èìà òúíêà ïðàâîúãúëíà îáëàñò, íàðå÷åíà ïëúçãà÷ (scroll +bar), â ëÿâàòà ñòðàíà íà ïðîçîðåöà íà Åìàêñ. Âèå ìîæåòå äà ñêðîëèðàòå +òåêñòà, ùðàêàéêè ñ ìèøêàòà â ïëúçãà÷à. + +>> Îïèòàéòå äà íàòèñíåòå ñðåäíèÿ áóòîí íà âúðõà íà îñâåòåíàòà îáëàñò + âúòðå â ïëúçãà÷à. Òîâà áè òðÿáâàëî äà ñêðîëèðà òåêñòà êúì + ïîëîæåíèå, îïðåäåëåíî îò òîâà êîëêî âèñîêî èëè íèñêî ñòå ùðàêíàëè. + +>> Îïèòàéòå ñå äà äâèæèòå ìèøêàòà íàãîðå è íàäîëó, äîêàòî ñòå + çàäúðæàëè äåñíèÿ áóòîí íàòèñíàò. Ùå âèäèòå, ÷å òåêñòúò ñå ñêðîëèðà + íàãîðå è íàäîëó, êàòî äâèæèòå ìèøêàòà. + + +* ÊÎÃÀÒÎ ÅÌÀÊÑ Å ÁËÎÊÈÐÀË +------------------------- + +Àêî Åìàêñ ñïðå äà îòãîâàðÿ íà âàøèòå êîìàíäè, âèå ìîæåòå äà ãî ñïðåòå +áåçîïàñíî, êàòî âúâåäåòå C-g. Ìîæå äà èçïîëçâàòå C-g, çà äà ñïðåòå +êîìàíäà, êîÿòî ñå èçïúëíÿâà òâúðäå äúëãî. + +Ñúùî ìîæåòå äà èçïîëçâàòå C-g, çà äà îòìåíèòå ÷èñëîâ àðãóìåíò èëè +íà÷àëîòî íà êîìàíäà, êîÿòî íå èñêàòå äà çàâúðøèòå. + +>> Âúâåäåòå C-u 100, çà äà íàïðàâèòå ÷èñëîâ àðãóìåíò 100, è âúâåäåòå + C-g. Ñåãà âúâåäåòå C-f. Òðÿáâà äà ñå ïðèäâèæèòå ñ òî÷íî åäèí + çíàê, çàùîòî âèå ïðåêðàòèõòå àðãóìåíòúò ñ C-g. + +Àêî ñòå âúâåëè ïî ïîãðåøêà, ìîæåòå äà ñå èçìúêíåòå ñ C-g. + + +* ÇÀÁÐÀÍÅÍÈ ÊÎÌÀÍÄÈ +------------------- + +Íÿêîè êîìàíäè íà Åìàêñ ñà "çàáðàíåíè", òàêà ÷å íà÷èíàåùèòå ïîòðåáèòåëè +äà íå ìîãàò äà ãè óïîòðåáÿò ïî ïîãðåøêà. + +Àêî âúâåäåòå íÿêîÿ îò çàáðàíåíèòå êîìàíäè, Åìàêñ èçâåæäà ñúîáùåíèå, +êàçâàéêè êàêâà å áèëà êîìàíäàòà è ïèòàéêè âè äàëè èñêàòå äà ïðîäúëæèòå +íàïðåä è äà èçïúëíèòå êîìàíäàòà. + +Àêî íàèñòèíà èñêàòå äà èçïðîáâàòå êîìàíäàòà, âúâåäåòå êëàâèøà èíòåðâàë +â îòãîâîð íà âúïðîñà. Îáèêíîâåíî àêî íå èñêàòå äà èçïúëíèòå +çàáðàíåíàòà êîìàíäà, îòãîâàðÿòå íà âúïðîñà ñ "n". + +>> Âúâåäåòå C-x C-l (êîÿòî å çàáðàíåíà êîìàíäà), è ñëåä òîâà âúâåäåòå + "n" â îòãîâîð íà âúïðîñà. + + +* ÏÐÎÇÎÐÖÈ +---------- + +Åìàêñ ìîæå äà óïðàâëÿâà íÿêîëêî ïðîçîðåöà, âñåêè èçâåæäàéêè ñâîé +ñîáñòâåí òåêñò. Íèå ùå îáÿñíèì ïî-êúñíî êàê äà èçïîëçâàòå íÿêîëêî +ïðîçîðåöà. Òî÷íî ñåãà íèå èñêàìå äà îáÿñíèì êàê äà ñå îòúðâåòå îò +äîïúëíèòåëíè ïðîçîðöè è äà ñå âúðíåòå êúì îñíîâíîòî ðåäàêòèðàíå ñ åäèí +ïðîçîðåö. Ïðîñòî å: + + C-x 1 Åäèí ïðîçîðåö (ò.å. ïðåìàõíè âñè÷êè äðóãè ïðîçîðöè). + +Òîâà å CONTROL-x, ïîñëåäâàí îò öèôðàòà 1. C-x 1 ðàçøèðÿâà ïðîçîðåöà, +ñúäúðæàù êóðñîðà, çà äà ìîæå äà çàïúëíè öåëèÿ åêðàí. Òÿ ïðåìàõâà +âñè÷êè äðóãè ïðîçîðöè. + +>> Ïðèäâèæåòå êóðñîðà äî òîçè ðåä è âúâåäåòå C-u 0 C-l. +>> Âúâåäåòå C-h k C-f. + Âèæòå êàê òîçè ïðîçîðåö ñå ñâèâà, äîêàòî äðóã ñå ïîÿâÿâà, çà äà + èçâåäå äîêóìåíòàöèÿòà íà êîìàíäàòà C-f. + +>> Âúâåäåòå C-x 1 è âèæòå êàê ïðîçîðåöúò ñ äîêóìåíòàöèÿòà èç÷åçâà. + +Òàçè êîìàíäà íå å êàòî äðóãèòå êîìàíäè, êîèòî ñòå íàó÷èëè, â òîâà +îòíîøåíèå, ÷å ñå ñúñòîè îò äâà çíàêà. Çàïî÷âà ñúñ çíàêà C-x. Èìà +öÿëà ðåäèöà îò êîìàíäè, êîèòî çàïî÷âàò ñ C-x; ìíîãî îò òÿõ èìàò íåùî +îáùî ñ ïðîçîðöè, ôàéëîâå, áóôåðè è ñâúðçàíèòå ñ òÿõ íåùà. Òåçè +êîìàíäè ñà îò äâà, òðè èëè ÷åòèðè çíàêà. + + +* ÂÌÚÊÂÀÍÅ È ÈÇÒÐÈÂÀÍÅ +---------------------- + +Àêî èñêàòå äà âìúêíåòå òåêñò, ïðîñòî ãî âúâåäåòå. Çíàöèòå, êîèòî +ìîãàò äà ñå âèæäàò, êàòî À, 7, * è ò.í., ñå âúçïðèåìàò îò Åìàêñ êàòî +òåêñò è ñå âìúêâàò âåäíàãà. Âúâåäåòå (êëàâèøúò çà âðúùàíå â +íà÷àëîòî íà ðåäà), çà äà âìúêíåòå çíàê çà íîâ ðåä. + +Ìîæå äà èçòðèåòå ïîñëåäíèÿ çíàê, êîéòî ñòå âúâåëè, ñ âúâåæäàíå íà +. å êëàâèø îò êëàâèàòóðàòà -- ñúùèÿò, êîéòî +îáèêíîâåíî èçïîëçâàòå èçâúí Åìàêñ, çà äà èçòðèåòå ïîñëåäíèÿ âúâåäåí îò +âàñ çíàê. Îáèêíîâåíî å ãîëÿì êëàâèø, íà íÿêîëêî ðåäà ðàçñòîÿíèå îò +êëàâèøà , è îáèêíîâåíî å îòáåëÿçàí ñ "Delete", "Del" èëè +"Backspace". + +Àêî ãîëåìèÿò êëàâèø òàì å ñ åòèêåò "Backspace", òîãàâà òîé å òîçè, +êîéòî ùå èçïîëçâàòå çà . Ìîæå äà èìà îùå åäèí êëàâèø ñ +åòèêåò "Delete" íÿêúäå äðóãàäå, íî òîé íå å . + +Ïî-îáùî êàçàíî, èçòðèâà çíàêà òî÷íî ïðåäè òåêóùîòî ìÿñòî íà +êóðñîðà. + +>> Íàïðàâåòå òîâà ñåãà -- íàïèøåòå íÿêîëêî çíàêà, ïîñëå ãè èçòðèéòå ñ + âúâåæäàíå íà íÿêîëêî ïúòè. Íå ñå áåçïîêîéòå, ÷å òîçè + ôàéë ùå áúäå ïðîìåíåí; âèå íÿìà äà ïðîìåíèòå ïúðâîíà÷àëíîòî + âúâåäåíèå. Òîâà å âàøå ëè÷íî êîïèå. + +Êîãàòî ðåä îò òåêñòà ñòàíå òâúðäå äúëúã, çà äà ñå ñúáåðå â ðåä îò +åêðàíà, ðåäúò îò òåêñòà ñå "ïðîäúëæàâà" íà ñëåäâàùèÿ ðåä. Îáðàòíà +íàêëîíåíà ÷åðòà ("\") (èëè, àêî èçïîëçâàòå ãðàôè÷åí èíòåðôåéñ, ìàëêà +èçêðèâåíà ñòðåëêà) â äÿñíàòà ãðàíèöà îòáåëÿçâà ðåä, êîéòî å áèë +ïðîäúëæåí. + +>> Âúâåäåòå òåêñò, äîêàòî ñòèãíåòå äÿñíàòà ãðàíèöà, è ïðîäúëæåòå ñ + âìúêâàíåòî. Ùå âèäèòå ïðîäúëæåíèåòî íà ðåäà äà ñå ïîêàçâà. + +>> Èçïîëçâàéòå íÿêîëêî , çà äà èçòðèåòå òåêñòà, äîêàòî ðåäúò + ñå âìåñòè â åäèí åêðàíåí ðåä. Ïðîäúëæåíèåòî íà ðåäà èç÷åçâà. + +Ìîæå äà èçòðèåòå çíàêà çà íîâ ðåä òî÷íî êàêòî âñåêè äðóã çíàê. +Èçòðèâàíåòî íà çíàêà çà íîâ ðåä ìåæäó äâà ðåäà ãè ñëèâà â åäèí ðåä. +Àêî ïîëó÷åíèÿò êîìáèíèðàí ðåä å òâúðäå äúëúã, çà äà ñå âìåñòè â +øèðèíàòà íà åêðàíà, òîé ùå áúäå ïîêàçàí êàòî ïðîäúëæåí ðåä. + +>> Ïðèäâèæåòå êóðñîðà â íà÷àëîòî íà ðåä è âúâåäåòå . Òîâà ùå + ñëåå òîçè ðåä ñ ïðåäèøíèÿ. + +>> Âúâåäåòå , çà äà âìúêíåòå íàíîâî çíàêà çà íîâ ðåä, êîéòî + èçòðèõòå. + +Çàïîìíåòå, ÷å íà ïîâå÷åòî êîìàíäè íà Åìàêñ ìîæå äà áúäå çàäàäåí áðîÿ÷ +íà ïîâòîðåíèÿòà; òîâà âêëþ÷âà âìúêâàíåòî íà òåêñòîâè çíàöè. +Ïîâòàðÿíåòî íà òåêñòîâ çíàê ãî âìúêâà íÿêîëêî ïúòè. + +>> Îïèòàéòå òîâà ñåãà -- âúâåäåòå C-u 8 *, çà äà âìúêíåòå ********. + +Ñåãà âèå ñòå íàó÷èëè íàé-îñíîâíèòå íà÷èíè çà âúâåæäàíå íà íåùî â Åìàêñ +è ïîïðàâÿíå íà ãðåøêè. Ìîæåòå ñúùî òàêà äà èçòðèâàòå äóìè èëè ðåäîâå. +Åòî îáîáùåíèå íà èçòðèâàùèòå äåéñòâèÿ: + + èçòðèâàíå íà çíàêà òî÷íî ïðåäè êóðñîðà + C-d èçòðèâàíå íà çíàêà òî÷íî ñëåä êóðñîðà + + M- èçòðèâàíå íà äóìàòà íåïîñðåäñòâåíî ïðåäè êóðñîðà + M-d èçòðèâàíå íà äóìàòà ñëåä êóðñîðà + + C-k èçòðèâàíå îò ìÿñòîòî íà êóðñîðà äî êðàÿ íà ðåäà + M-k èçòðèâàíå äî êðàÿ íà òåêóùîòî èçðå÷åíèå + +Çàáåëåæåòå, ÷å è C-d, ñðàâíåíè ñ M- è M-d, +ðàçøèðÿâàò ïîäîáèåòî, çàïî÷íàòî îò C-f è M-f (äîáðå, íå å +íàèñòèíà êîíòðîëèðàù çíàê, íî íåêà íå ñå áåçïîêîèì çà òîâà). C-k è +M-k ñà ïîäîáíè íà C-e è M-e â ñìèñúë, ÷å åäíèòå ñà çà ðåäîâå, à +äðóãèòå -- çà èçðå÷åíèÿ. + +Ìîæåòå ñúùî äà ïðåìàõíåòå âñÿêà ÷àñò îò áóôåðà ñ åäèí óíèâåðñàëåí +íà÷èí. Ïðèäâèæåòå ñå äî åäèíèÿ êðàé íà ÷àñòòà è âúâåäåòå C-@ èëè +C-èíòåðâàë (êîåòî è äà å îò äâåòå). Ïðèäâèæåòå ñå äî äðóãèÿ êðàé íà +÷àñòòà è âúâåäåòå C-w. Òîâà ùå èçðåæå öåëèÿ òåêñò ìåæäó òåçè äâà +êðàÿ. + +>> Ïðèäâèæåòå êóðñîðà äî çíàêà "Ì" â íà÷àëîòî íà ïðåäèøíèÿ àáçàö. +>> Âúâåäåòå C-èíòåðâàë. Åìàêñ òðÿáâà äà èçâåäå ñúîáùåíèå "Mark set" â + äîëíèÿ êðàé íà åêðàíà. +>> Ïðèäâèæåòå êóðñîðà äî áóêâàòà "ð" â "êðàé" íà âòîðèÿ ðåä îò àáçàöà. +>> Âúâåäåòå C-w. Òîâà ùå èçðåæå òåêñòà, çàïî÷âàù îò "Ì" è çàâúðøâàù + òî÷íî ïðåäè "ð". + +Ðàçëèêàòà ìåæäó "èçðÿçâàíå" (kill, cut) è "èçòðèâàíå" (delete) å, ÷å +"èçðÿçàíèÿò" òåêñò ìîæå äà áúäå âìúêíàò íàíîâî, äîêàòî "èçòðèòèòå" +íåùà íå ìîãàò äà ñå âìúêíàò íàíîâî. Ïîñòàâÿíåòî íàíîâî íà èçðÿçàí +òåêñò ñå íàðè÷à "âìúêâàíå" (yank, paste). Îáùî êàçàíî, êîìàíäèòå, +êîèòî îòñòðàíÿâàò ìíîãî òåêñò, ãî èçðÿçâàò (òàêà ÷å òîé äà ìîæå äà +áúäå âìúêíàò), äîêàòî êîìàíäèòå, êîèòî îòñòðàíÿâàò ñàìî åäèí çíàê èëè +èçòðèâàò ñàìî ïðàçíè ðåäîâå è çíàöè, èçâúðøâàò èçòðèâàíå (òàêà ÷å íå +ìîæåòå äà âìúêíåòå íàíîâî òîçè òåêñò). + +>> Ïðèäâèæåòå êóðñîðà äî íà÷àëîòî íà ðåä, êîéòî íå å ïðàçåí. Òîãàâà + âúâåäåòå C-k, çà äà èçðåæåòå òåêñòà íà òîçè ðåä. +>> Âúâåäåòå C-k âòîðè ïúò. Ùå âèäèòå, ÷å òîâà èçðÿçâà çíàêà çà íîâ + ðåä, êîéòî ñëåäâà ðåäà. + +Çàáåëåæåòå, ÷å åäèíè÷íî C-k èçðÿçâà ñúäúðæàíèåòî íà ðåäà, à ñëåäâàùîòî +C-k èçðÿçâà öåëèÿ ðåä è ïðàâè äðóãèòå ðåäîâå äà ñå ïðèäâèæàò íàãîðå. +C-k îáðàáîòâà ÷èñëîâèòå àðãóìåíòè ïî ñïåöèàëåí íà÷èí: ïðåìàõâàò ñå +òîëêîâà íà áðîé ðåäîâå È òÿõíîòî ñúäúðæàíèå. Òîâà íå å ïðîñòî +ïîâòîðåíèå. C-u 2 C-k èçðÿçâà äâà ðåäà è òåõíèòå çíàöè çà íîâ ðåä; +âúâåæäàíåòî íà C-k äâà ïúòè íå ïðàâè òîâà. + +Âðúùàíåòî îáðàòíî íà òåêñò ñå íàðè÷à "âìúêâàíå". (Ìèñëåòå çà íåãî +êàòî çà èçâàæäàíå îáðàòíî, èëè äðúïâàíå îáðàòíî, íà òåêñò, êîéòî å áèë +èçðÿçàí.) Ìîæåòå äà âìúêâàòå èçðÿçàíèÿ òåêñò èëè íà ñúùîòî ìÿñòî, +îòêúäåòî å áèë ïðåìàõíàò, èëè íà äðóãî ìÿñòî â áóôåðà, äàæå è â +ðàçëè÷åí ôàéë. Ìîæåòå äà âìúêâàòå åäèí è ñúù òåêñò íÿêîëêî ïúòè; òîâà +ïðàâè íÿêîëêî êîïèÿ îò íåãî. + +Êîìàíäàòà çà âìúêâàíå å C-y. Òÿ âìúêâà íàíîâî ïîñëåäíèÿ èçðÿçàí òåêñò +â òåêóùîòî ìÿñòî íà êóðñîðà. + +>> Îïèòàéòå ãî: âúâåäåòå C-y, çà äà èçâåäåòå òåêñòà îáðàòíî. + +Àêî íàïðàâèòå íÿêîëêî C-k â ðåä, âñè÷êî îò èçðÿçàíèÿ òåêñò ñå çàïàçâà +çàåäíî, òàêà ÷å åäíî C-y ùå èçâàäè âñè÷êè ðåäîâå íàâåäíúæ. + +>> Íàïðàâåòå òîâà ñåãà, âúâåäåòå C-k íÿêîëêî ïúòè. + +Ñåãà, çà äà èçêàðàòå èçðÿçàíèÿ òåêñò: + +>> Âúâåäåòå C-y. Ñëåä òîâà ïðèäâèæåòå êóðñîðà íàäîëó íÿêîëêî ðåäà è + âúâåäåòå C-y îòíîâî. Ñåãà âèæäàòå êàê äà êîïèðàòå íÿêàêúâ òåêñò. + +Êàêâî äà ïðàâèòå, àêî èìàòå íÿêàêúâ òåêñò, êîéòî èñêàòå äà âìúêíåòå +îáðàòíî, è ñëåä òîâà èçðåæåòå íåùî äðóãî? C-y ùå èçâàäè ïîñëåäíîòî +èçðÿçâàíå. Íî ïðåäèøíèÿò òåêñò íå å çàãóáåí. Ìîæåòå äà ãî âúðíåòå +îáðàòíî, èçïîëçâàéêè êîìàíäàòà M-y. Ñëåä êàòî èçïúëíèòå C-y, çà äà +âçåìåòå ïîñëåäíîòî èçðÿçâàíå, âúâåæäàíåòî íà M-y çàìåíÿ òîçè èçâàäåí +òåêñò ñ ïðåäèøíîòî èçðÿçâàíå. Âúâåæäàíåòî íà M-y îòíîâî è îòíîâî +âðúùà ïî-ðàííè è ïî-ðàííè èçðÿçâàíèÿ. Êîãàòî ñòèãíåòå òåêñòà, êîéòî +òúðñèòå, íå å íóæíî äà ïðàâèòå íèùî ïîâå÷å, çà äà ãî çàäúðæèòå. +Ïðîñòî ïðîäúëæåòå ñ ðåäàêòèðàíåòî, îñòàâÿéêè èçâàäåíèÿ òåêñò, êúäåòî +ñè å. + +Àêî âúâåäåòå M-y äîñòàòú÷åí áðîé ïúòè, ùå ñå âúðíåòå â íà÷àëíîòî +ïîëîæåíèå (ïîñëåäíîòî èçðÿçâàíå). + +>> Èçðåæåòå ðåä, ïðèäâèæåòå ñå íÿêúäå, èçðåæåòå äðóã ðåä. + Èçïúëíåòå C-y, çà äà âúðíåòå îáðàòíî âòîðèÿ èçðÿçàí ðåä. + Èçïúëíåòå M-y è òîçè âúðíàò òåêñò ùå áúäå çàìåíåí ñ ïúðâèÿ + èçðÿçàí ðåä. + Èçïúëíåòå íÿêîëêî M-y è âèæòå êàêâî ñå ïîëó÷àâà. Èçïúëíÿâàéòå òîâà, + äîêàòî âòîðèÿò èçðÿçàí ðåä ñå âúðíå, è ñëåä òîâà îùå íÿêîëêî ïúòè. + Àêî èñêàòå, ìîæå äà ïðîáâàòå äà äàäåòå íà M-y ïîëîæèòåëíè è + îòðèöàòåëíè ÷èñëîâè àðãóìåíòè. + + +* ÎÒÌßÍÀ +-------- + +Àêî íàïðàâèòå ïðîìÿíà â òåêñòà è ñëåä òîâà ðåøèòå, ÷å òîâà å áèëî +ãðåøêà, âèå ìîæåòå äà îòìåíèòå ïðîìÿíàòà ñ êîìàíäàòà çà îòìåíÿíå, C-x +u. + +Îáèêíîâåíî C-x u îòìåíÿ ïðîìåíèòå, íàïðàâåíè îò åäíà êîìàíäà; àêî +ïîâòàðÿòå C-x u íÿêîëêî ïúòè ïîñëåäîâàòåëíî, âñÿêî ïîâòîðåíèå îòìåíÿ +îùå åäíà êîìàíäà. + +Íî èìà äâå èçêëþ÷åíèÿ: êîìàíäèòå, êîèòî íå ïðîìåíÿò òåêñòà, íå ñå +áðîÿò (òîâà âêëþ÷âà ïðèäâèæâàíåòî íà êóðñîðà è ñêðîëèðàùèòå êîìàíäè), +è ñàìîâìúêâàùèòå ñå çíàöè îáèêíîâåíî ñå îáðàáîòâàò íà ãðóïè, âñÿêà äî +20 çíàêà. (Òîâà íàìàëÿâà áðîÿ íà C-x u, êîèòî òðÿáâà äà âúâåäåòå, çà +äà îòìåíèòå âúâåäåí òåêñò.) + +>> Èçðåæåòå òîçè ðåä ñ C-k, ñëåä òîâà âúâåäåòå C-x u è òîé òðÿáâà äà + ñå ïîÿâè îòíîâî. + +C-_ å àëòåðíàòèâíà îòìåíÿùà êîìàíäà; òÿ ðàáîòè òî÷íî êàòî C-x u, íî å +ïî-ëåñíà çà âúâåæäàíå íÿêîëêî ïúòè ïîñëåäîâàòåëíî. Íåäîñòàòúêúò íà +C_- å, ÷å íà íÿêîè êëàâèàòóðè íå å î÷åâèäíî êàê òðÿáâà äà ñå âúâåäå. +Çàòîâà îñèãóðÿâàìå è C-x u. Íà íÿêîè òåðìèíàëè ìîæå äà âúâåäåòå C-_ ñ +âúâåæäàíå íà /, äîêàòî çàäúðæàòå CONTROL. + +×èñëîâ àðãóìåíò êúì C-_ èëè C-x u äåéñòâà êàòî áðîÿ÷ íà ïîâòîðåíèÿòà. + +Ìîæå äà îòìåíÿòà èçòðèâàíå íà òåêñò òî÷íî êàêòî îòìåíÿòå èçðÿçâàíå íà +òåêñò. Ðàçëè÷èåòî ìåæäó èçðÿçâàíåòî íà íåùî è èçòðèâàíåòî ìó +âúçäåéñòâà äàëè ùå ìîæå äà ãî èçâàäèòå ñ C-y; çà îòìåíÿíåòî íÿìà +ðàçëèêà ìåæäó äâàòà âèäà. + + +* ÔÀÉËÎÂÅ +--------- + +Çà äà íàïðàâèòå òåêñòà, êîéòî ðåäàêòèðàòå, ïîñòîÿíåí, òðÿáâà äà ãî +ñëîæèòå âúâ ôàéë.  ïðîòèâåí ñëó÷àé òîé ùå èç÷åçíå, êîãàòî Åìàêñ +ïðèêëþ÷è. Çà äà ñëîæèòå âàøèÿ òåêñò âúâ ôàéë, òðÿáâà äà "íàìåðèòå" +ôàéëà ïðåäè äà âúâåæäàòå òåêñò. (Òîâà ñúùî ñå íàðè÷à "ïîñåùàâàíå" íà +ôàéëà.) + +Íàìèðàíå íà ôàéë îçíà÷àâà, ÷å âèæäàòå ñúäúðæàíèåòî ìó â Åìàêñ.  +ìíîãî ñëó÷àè òîâà å êàòî äà ðåäàêòèðàòå ñàìèÿ ôàéë. Îáà÷å ïðîìåíèòå, +êîèòî ïðàâèòå, èçïîëçâàéêè Åìàêñ, íå îñòàâàò ïîñòîÿííè, äîêàòî íå +"çàïèøåòå" ôàéëà. Òîâà å òàêà, çà äà ñå ïðåäîòâðàòè îñòàâÿíåòî íà +ïîëóïðîìåíåí ôàéë â ñèñòåìàòà, êîãàòî íå èñêàòå òîâà. Äîðè êîãàòî +çàïèñâàòå, Åìàêñ îñòàâÿ íà÷àëíèÿ ôàéë ïîä ïðîìåíåíî èìå, â ñëó÷àé, ÷å +ïî-êúñíî ðåøèòå, ÷å âàøèòå ïðîìåíè ñà áèëè ãðåøêà. + +Àêî ïîãëåäíåòå â äúíîòî íà åêðàíà, ùå âèäèòå ðåä, êîéòî çàïî÷âà è +çàâúðøâà ñ òèðåòà è çàïî÷âà ñ "-b:-- TUTORIAL.bg" èëè íåùî ïîäîáíî. +Òàçè ÷àñò îò åêðàíà ïîêàçâà èìåòî íà ôàéëà, êîéòî ñòå ïîñåòèëè. Òî÷íî +ñåãà âèå ñòå ïîñåòèëè ôàéë, íàðå÷åí "TUTORIAL.bg", êîéòî å âàøåòî +ëè÷íî êîïèå-÷åðíîâà íà Åìàêñ âúâåäåíèåòî. Êîãàòî íàìåðèòå ôàéë â +Åìàêñ, èìåòî íà òîçè ôàéë ùå ñå ïîÿâè íà ñúùîòî ìÿñòî. + +Îñîáåíîñò íà êîìàíäàòà çà íàìèðàíå íà ôàéë å, ÷å òðÿáâà äà êàæåòå +èìåòî íà ôàéëà, êîéòî èñêàòå. Íèå ãî íàðè÷àìå "÷åòåíå íà àðãóìåíò îò +òåðìèíàëà" (â òîçè ñëó÷àé àðãóìåíòúò å èìåòî íà ôàéëà). Ñëåä êàòî +âúâåäåòå êîìàíäàòà + + C-x C-f Íàìèðàíå íà ôàéë + +Åìàêñ âè ïîäêàíÿ äà âúâåäåòå èìåòî íà ôàéëà. Èìåòî íà ôàéëà, êîåòî +íàïèøåòå, ñå ïîÿâÿâà â äúíîòî íà åêðàíà. Ðåäúò â äúíîòî íà åêðàíà ñå +íàðè÷à ìèíèáóôåð, êîãàòî ñå èçïîëçâà çà òîçè âèä âõîä. Ìîæåòå äà +èçïîëçâàòå îáèêíîâåíèòå êîìàíäè çà ðåäàêòèðàíå íà Åìàêñ, çà äà +ðåäàêòèðàòå èìåòî íà ôàéëà. + +Êîãàòî âúâåæäàòå èìåòî íà ôàéëà (èëè êàêúâòî è äà å âõîä â +ìèíèáóôåðà), ìîæåòå äà ïðåêðàòèòå êîìàíäàòà ñ C-g. + +>> Âúâåäåòå C-x C-f è ñëåä òîâà C-g. Òîâà ïðåêðàòÿâà ìèíèáóôåðà, à + ñúùî è êîìàíäàòà C-x C-f, êîÿòî ñå å èçïúëíÿâàëà â ìèíèáóôåðà. + Òàêà ÷å íå íàìèðàòå ôàéë. + +Êîãàòî ïðèêëþ÷èòå ñ âúâåæäàíåòî íà èìåòî íà ôàéëà, âúâåäåòå , +çà äà ïîêàæåòå òîâà. Òîãàâà C-x C-f òðúãâà äà ðàáîòè è íàìèðà ôàéëà, +êîéòî ñòå èçáðàëè. Ìèíèáóôåðúò èç÷åçâà, êîãàòî êîìàíäàòà C-x C-f +ñâúðøè. + +Ñëåä ìàëêî ñúäúðæàíèåòî íà ôàéëà ñå ïîÿâÿâà íà åêðàíà è âèå ìîæåòå äà +ðåäàêòèðàòå ñúäúðæàíèåòî ìó. Êîãàòî ïîæåëàåòå äà çàïàçèòå âàøèòå +ïðîìåíè çà ïîñòîÿííî, âúâåäåòå êîìàíäàòà + + C-x C-s Çàïàçâàíå íà ôàéëà + +Òîâà êîïèðà òåêñòà îò Åìàêñ âúâ ôàéëà. Ïúðâèÿ ïúò, êîãàòî òîâà ñå +íàïðàâè, Åìàêñ ïðåèìåíóâà íà÷àëíèÿ ôàéë ñ íîâî èìå, òàêà ÷å òîé äà íå +ñå èçãóáè. Íîâîòî èìå ñå ïîñòðîÿâà ñ äîáàâÿíå íà "~" â êðàÿ íà èìåòî +íà íà÷àëíèÿ ôàéë. + +Êîãàòî çàïàçâàíåòî å ñâúðøèëî, Åìàêñ èçâåæäà èìåòî íà ôàéëà, êîéòî å +áèë çàïèñàí. Òðÿáâà äà çàïèñâàòå äîñòàòú÷íî ÷åñòî, òàêà ÷å äà íå +èçãóáèòå ìíîãî ðàáîòà, àêî ñèñòåìàòà ñå ñðèíå ïî íÿêàêâà ïðè÷èíà. + +>> Âúâåäåòå C-x C-s, çàïàçâàéêè âàøåòî êîïèå îò âúâåäåíèåòî. + Òîâà òðÿáâà äà èçâåäå "Wrote ...TUTORIAL.bg" â äúíîòî íà åêðàíà. + +ÇÀÁÅËÅÆÊÀ: Íà íÿêîè ñèñòåìè âúâåæäàíåòî íà C-x C-s ùå çàìðúçè åêðàíà è +âèå íÿìà äà âèæäàòå ïîâå÷å èçõîä îò Åìàêñ. Òîâà ïîêàçâà, ÷å åäíà +"ñïîñîáíîñò" íà îïåðàöèîííàòà ñèñòåìà, íàðè÷àíà "óïðàâëåíèå íà ïîòîêà" +(flow control), å ïðèõâàíàëà C-s è íå ãî ïðîïóñêà êúì Åìàêñ. Çà äà +ðàçìðàçèòå åêðàíà, âúâåäåòå C-q. Òîãàâà âèæòå ñåêöèÿòà "Ñïîíòàííî +âêëþ÷âàíå íà ïîñòúïêîâî òúðñåíå" (Spontaneous Entry to Incremental +Search) â ðúêîâîäñòâîòî íà Åìàêñ çà ñúâåò êàê äà ñå ñïðàâèòå ñ òàçè +"ñïîñîáíîñò". + +Ìîæå äà íàìåðèòå ñúùåñòâóâàù ôàéë, äà ãî ðàçãëåäàòå è äà ãî +ðåäàêòèðàòå. Ìîæåòå ñúùî äà íàìåðèòå ôàéë, êîéòî íå ñúùåñòâóâà. Òîâà +å íà÷èíúò çà ñúçäàâàíå íà íîâè ôàéëîâå â Åìàêñ: íàìèðàòå ôàéëà, êîéòî +ùå áúäå â íà÷àëîòî ïðàçåí, è òîãàâà çàïî÷âàòå âìúêâàíåòî íà òåêñòà çà +ôàéëà. Êîãàòî ãîâîðèòå çà "çàïèñâàíå" íà ôàéë, Åìàêñ âñúùíîñò ùå +ñúçäàäå ôàéëà ñ òåêñòà, êîéòî ñòå âúâåëè. Îòòàì íàòàòúê ìîæå äà +ñ÷èòàòå, ÷å ðåäàêòèðàòå âå÷å ñúùåñòâóâàù ôàéë. + + +* ÁÓÔÅÐÈ +-------- + +Àêî íàìåðèòå âòîðè ôàéë ñ C-x C-f, ïúðâèÿò ôàéë îñòàâà â Åìàêñ. +Ìîæåòå äà ïðåâêëþ÷èòå îáðàòíî êúì íåãî, êàòî ãî íàìåðèòå ïàê ñ C-x +C-f. Ïî òîçè íà÷èí ìîæå äà ïîëó÷èòå äîñòà íà áðîé ôàéëîâå â Åìàêñ. + +>> Ñúçäàéòå ôàéë ñ èìå "foo", âúâåæäàéêè C-x C-f foo . + Âìúêíåòå ìàëêî òåêñò, ðåäàêòèðàéòå ãî è çàïàçåòå "foo" ñ âúâåæäàíå + íà C-x C-s. + Íàêðàÿ âúâåäåòå C-x C-f TUTORIAL.bg , çà äà ñå âúðíåòå + îáðàòíî âúâ âúâåäåíèåòî. + +Åìàêñ çàïàçâà òåêñòà íà âñåêè ôàéë â îáåêò, íàðè÷àí "áóôåð". +Íàìèðàíåòî íà ôàéë ïðàâè íîâ áóôåð â Åìàêñ. Çà äà âèäèòå ñïèñúê íà +áóôåðèòå, êîèòî â ìîìåíòà ñúùåñòâóâàò âúâ âàøèÿ Åìàêñ, âúâåäåòå + + C-x C-b Ïîêàçâàíå íà áóôåðèòå + +>> Îïèòàéòå C-x C-b ñåãà. + +Âèæòå êàê âñåêè áóôåð èìà èìå, à ïîíÿêîãà è èìå íà ôàéë çà ôàéëà, +÷èåòî ñúäúðæàíèå äúðæè. ÂÑÅÊÈ òåêñò, êîéòî âèæäàòå â Åìàêñ ïðîçîðåö, +å âèíàãè ÷àñò îò íÿêàêúâ áóôåð. + +>> Âúâåäåòå C-x 1, çà äà ìàõíåòå ñïèñúêà ñ áóôåðèòå. + +Êîãàòî èìàòå íÿêîëêî áóôåðà, ñàìî åäèí îò òÿõ å "òåêóù" â äàäåí ìîìåíò +îò âðåìå. Òîâà å áóôåðúò, êîéòî ðåäàêòèðàòå. Àêî èñêàòå äà +ðåäàêòèðàòå äðóã áóôåð, ñå íóæäàåòå îò "ïðåâêëþ÷âàíå" êúì íåãî. Àêî +èñêàòå äà ñå ïðåâêëþ÷èòå êúì áóôåð, êîéòî ñúîòâåòñòâà íà ôàéë, ìîæåòå +äà ãî íàïðàâèòå, êàòî ïðîñòî ïîñåòèòå ôàéëà îòíîâî ñ C-x C-f. Íî èìà +è ïî-ëåñåí íà÷èí: èçïîëçâàíåòî íà êîìàíäàòà C-x b.  òàçè êîìàíäà +òðÿáâà äà âúâåäåòå èìåòî íà áóôåðà. + +>> Âúâåäåòå C-x b foo , çà äà ñå âúðíåòå êúì áóôåðà "foo", + êîéòî äúðæè òåêñòà íà ôàéëà "foo". Òîãàâà âúâåäåòå C-x b TUTORIAL + , çà äà ñå âúðíåòå â òîâà âúâåäåíèå. + + ïîâå÷åòî ñëó÷àè èìåòî íà áóôåðà å ñúùîòî êàòî èìåòî íà ôàéëà (áåç +÷àñòòà â êîÿ äèðåêòîðèÿ ñå íàìèðà). Îáà÷å òîâà íå âèíàãè å âÿðíî. +Ñïèñúêúò ñ áóôåðèòå, êîéòî ïðàâèòå ñ C-x C-b, âèíàãè âè ïîêàçâà èìåòî +íà âñåêè áóôåð. + +ÂÑÅÊÈ òåêñò, êîéòî âèæäàòå â Åìàêñ ïðîçîðåö, å âèíàãè ÷àñò îò íÿêàêúâ +áóôåð. Íÿêîè áóôåðè íå ñúîòâåòñòâàò íà ôàéëîâå. Íàïðèìåð áóôåðúò, +èìåíóâàí "*Buffer List*", íå ñúîòâåòñòâà íà ôàéë. Òîâà å áóôåðúò, +êîéòî ñúäúðæà ñïèñúêà ñ áóôåðèòå, êîèòî ñòå íàïðàâèëè ñ C-x C-b. +Áóôåðúò, èìåíóâàí "*Messages*", ñúùî íå ñúîòâåòñòâà íà ôàéë; òîé +ñúäúðæà ñúîáùåíèÿòà, êîèòî ñå ïîÿâÿâàò â äúíîòî íà åêðàíà ïî âðåìå íà +Åìàêñ ñåñèÿòà. + +>> Âúâåäåòå C-x b *Messages* , çà äà âèäèòå áóôåðà ñúñ + ñúîáùåíèÿòà. Ñëåä òîâà âúâåäåòå C-x C-b TUTORIAL , çà äà + ñå âúðíåòå êúì òîâà âúâåäåíèå. + +Àêî íàïðàâèòå ïðîìåíè â òåêñòà íà åäèí ôàéë è òîãàâà íàìåðèòå äðóã +ôàéë, òîâà íÿìà äà çàïèøå ïúðâèÿ ôàéë. Íåãîâèòå ïðîìåíè îñòàâàò âúòðå +â Åìàêñ, â áóôåðà íà ôàéëà. Ñúçäàâàíåòî èëè ðåäàêòèðàíåòî íà áóôåðà +íà âòîðèÿ ôàéë íÿìà åôåêò âúðõó áóôåðà íà ïúðâèÿ ôàéë. Òîâà å ìíîãî +ïîëåçíî, íî ñúùî îçíà÷àâà, ÷å ñå íóæäàåòå îò óäîáåí íà÷èí äà çàïàçèòå +áóôåðà íà ïúðâèÿ ôàéë. Ùå å íåóäîáíî äà ïðåâêëþ÷èòå îáðàòíî ñ C-x +C-f, çà äà ãî çàïàçèòå ñ C-x C-s. Òàêà ÷å èìàìå + + C-x s Çàïàçâà íÿêîè áóôåðè + +C-x s ïèòà çà âñåêè áóôåð, êîéòî ñúäúðæà ïðîìåíè, êîèòî íå ñòå +çàïàçèëè. Âúïðîñúò çà âñåêè òàêúâ áóôåð å äàëè äà áúäå çàïàçåí. + +>> Âìúêíåòå ðåä â òåêñòà, ñëåä òîâà âúâåäåòå C-x s. + Òðÿáâà äà áúäåòå ïîïèòàí äàëè äà çàïàçèòå áóôåðà, èìåíóâàí "TUTORIAL". + Îòãîâîðåòå ñ "äà" íà âúïðîñà, êàòî âúâåäåòå "y". + + +* ÐÀÇØÈÐßÂÀÍÅ ÍÀ ÍÀÁÎÐÀ ÊÎÌÀÍÄÈ +------------------------------- + +Èìà ìíîãî, ìíîãî ïîâå÷å êîìàíäè íà Åìàêñ, îòêîëêîòî ìîãàò äà ñå ñëîæàò +íà âñè÷êè êîíòðîëíè è ìåòà çíàöè. Åìàêñ çàîáèêàëÿ òîâà ñ X (eXtended) +êîìàíäàòà. Òîâà ñòàâà ïî äâà íà÷èíà: + + C-x Çíàêîâî ðàçøèðÿâàíå. Ïîñëåäâàíî îò åäèí çíàê. + M-x Ðàçøèðÿâàíå ñ èìåíóâàíà êîìàíäà. Ïîñëåäâàíî îò äúëãî + èìå. + +Òåçè êîìàíäè ñà îáùî âçåòî ïîëåçíè, íî ïî-ìàëêî, îòêîëêîòî êîìàíäèòå, +êîèòî äîñåãà ñòå íàó÷èëè. Âå÷å âèäÿõòå äâå îò òÿõ: êîìàíäèòå âúðõó +ôàéëîâå C-x C-f çà íàìèðàíå (Find) è C-x C-s çà çàïàçâàíå (Save). +Äðóã ïðèìåð å êîìàíäàòà çà êðàé íà Åìàêñ ñåñèÿòà -- òîâà å êîìàíäàòà +C-x C-c. (Íå ñå áåçïîêîéòå, ÷å ìîæå äà èçãóáèòå âñè÷êè ïðîìåíè, êîèòî +ñòå íàïðàâèëè; C-x C-c ïðåäëàãà äà çàïàçè âñåêè ïðîìåíåí ôàéë, ïðåäè +äà ïðåìàõíå Åìàêñ.) + +C-z å êîìàíäàòà çà èçëèçàíå îò Åìàêñ *âðåìåííî* -- òàêà ÷å äà ìîæåòå +äà ñå âúðíåòå êúì ñúùàòà Åìàêñ ñåñèÿ ïî-êúñíî. + +Íà ñèñòåìè, êîèòî ïîçâîëÿâàò òîâà, C-z "èçîñòàâÿ" (suspend) Åìàêñ, +ò.å. âðúùà êúì îáâèâêàòà, íî íå ðàçðóøàâà Åìàêñ.  ïîâå÷åòî îáâèâêè +ìîæåòå äà ïðîäúëæèòå Åìàêñ ñåñèÿòà ñ êîìàíäàòà "fg" èëè ñ "%emacs". + +Íà ñèñòåìè, êîèòî íå ïîçâîëÿâàò èçîñòàâÿíå, C-z ñúçäàâà íîâà +ïîäîáâèâêà, êîÿòî âúðâè ïîä Åìàêñ, çà äà âè äàäå øàíñ äà ñòàðòèðàòå +äðóãè ïðîãðàìè è äà ñå âúðíåòå êúì Åìàêñ ñëåä òîâà; òîâà íå å èñòèíñêî +"èçëèçàíå" îò Åìàêñ.  òîçè ñëó÷àé êîìàíäàòà íà îáâèâêàòà "exit" å +îáèêíîâåíèÿò íà÷èí äà ñå âúðíåòå îáðàòíî êúì Åìàêñ îò ïîäîáâèâêàòà. + +Ìîìåíòúò äà èçïîëçâàòå C-x C-c å, êîãàòî èñêàòå äà èçëåçåòå îò +ñèñòåìàòà. Òîâà å è ïðàâèëíàòà êîìàíäà çà èçëèçàíå, êîãàòî Åìàêñ å +èçâèêàí îò ïîùåíñêà ïðîãðàìà èëè äðóãè ñòðàíè÷íè ïðîãðàìè, òúé êàòî òå +ìîæå è äà íå çíàÿò êàê äà ñå ñïðàâÿò ñ èçîñòàâÿíåòî íà Åìàêñ. Ïðè +îáèêíîâåíè îáñòîÿòåëñòâà, îáà÷å, àêî íå ñòå òðúãíàëè äà èçëèçàòå îò +ñèñòåìàòà, ïî-äîáðå å äà èçîñòàâèòå Åìàêñ ñ C-z, âìåñòî äà èçëèçàòå îò +Åìàêñ. + +Èìà ìíîãî êîìàíäè C-x. Åòî ñïèñúê íà òåçè, êîèòî ñòå íàó÷èëè: + + C-x C-f Íàìèðàíå íà ôàéë. + C-x C-s Çàïàçâàíå íà ôàéë. + C-x C-b Ñïèñúê íà áóôåðèòå. + C-x C-c Èçëèçàíå îò Åìàêñ. + C-x 1 Èçòðèâàíå íà âñè÷êè ïðîçîðöè îñâåí åäèí. + C-x u Îòìÿíà. + +Èìåíóâàíèòå ðàçøèðåíè êîìàíäè ñà êîìàíäè, êîèòî ñå èçïîëçâàò äàæå îùå +ïî-ðÿäêî, èëè êîìàíäè, êîèòî ñå èçïîëçâàò ñàìî â îïðåäåëåíè ðåæèìè. +Ïðèìåð å êîìàíäàòà replace-string, êîÿòî çàìåíÿ ãëîáàëíî åäèí íèç ñ +äðóã. Êîãàòî âúâåäåòå M-x, Åìàêñ âè ïîäñêàçâà â äúíîòî íà åêðàíà ñ +M-x è âèå òðÿáâà äà âúâåäåòå èìåòî íà êîìàíäàòà, â òîçè ñëó÷àé +"replace-string". Ïðîñòî âúâåäåòå "repl s" è Åìàêñ ùå çàâúðøè +èìåòî. ( å êëàâèøúò Tab, îáèêíîâåíî íàìèðàù ñå íàä êëàâèøà +CapsLock èëè êëàâèøà Shift áëèçî äî ëåâèÿ êðàé íà êëàâèàòóðàòà.) +Çàâúðøåòå èìåòî íà êîìàíäàòà ñ . + +Êîìàíäàòà replace-string èçèñêâà äâà àðãóìåíòà -- íèçúò, êîéòî ùå áúäå +çàìåíÿí, è íèçúò, êîéòî ùå ãî çàìåíè. Òðÿáâà äà çàâúðøèòå âúâåæäàíåòî +íà âñåêè àðãóìåíò ñ . + +>> Ïðèäâèæåòå êóðñîðà äî ïðàçíèÿ ðåä, äâà ðåäà íàäîëó ïîä òîçè. + Òîãàâà âúâåäåòå M-x repl sïðîìåíÿèçìåíÿ + + Çàáåëåæåòå êàê òîçè ðåä ñå ïðîìåíÿ: âèå çàìåíèõòå äóìàòà + ï-ð-î-ì-å-í-ÿ ñ "èçìåíÿ", êúäåòî è äà ñå íàìèðà ñëåä íà÷àëíîòî + ìÿñòî íà êóðñîðà. + +ÇÀÁÅËÅÆÊÀ: Ïðåâêëþ÷âàíåòî êúì âúâåæäàíå íà êèðèëñêè áóêâà ñòàâà ñ C-\. + + +* ÀÂÒÎÌÀÒÈ×ÍÎ ÇÀÏÀÇÂÀÍÅ +----------------------- + +Êîãàòî ñòå íàïðàâèëè ïðîìåíè âúâ ôàéë, íî îùå íå ñòå ãî çàïàçèëè, òå +ìîãàò äà áúäàò çàãóáåíè, àêî êîìïþòúðúò âíåçàïíî ñå èçêëþ÷è. Çà äà âè +ïðåäïàçè îò òàêèâà ñèòóàöèè, Åìàêñ ïåðèîäè÷íî çàïàçâà "àâòîìàòè÷íî +çàïàçâàí" ôàéë çà âñåêè ôàéë, êîéòî ðåäàêòèðàòå. Èìåòî íà àâòîìàòè÷íî +çàïàçâàíèÿ ôàéë èìà # â íà÷àëîòî è â êðàÿ; íàïðèìåð, àêî âàøèÿò ôàéë å +ñ èìå "hello.c", èìåòî íà íåãîâèÿ àâòîìàòè÷íî çàïàçâàí ôàéë ùå áúäå +"#hello.c#". Êîãàòî çàïàçâàòå ôàéë ïî îáèêíîâåíèÿ íà÷èí, Åìàêñ +èçòðèâà íåãîâèÿ àâòîìàòè÷íî çàïèñâàí ôàéë. + +Àêî êîìïþòúðúò çàâèñíå, ìîæå äà âúçñòàíîâèòå âàøàòà àâòîìàòè÷íî +çàïàçâàíà ðåäàêöèÿ, êàòî íàìåðèòå ôàéëà êàêòî îáèêíîâåíî (ôàéëúò, +êîéòî ñòå ðåäàêòèðàëè, íå àâòîìàòè÷íî çàïàçâàíèÿ) è ñëåä òîâà âúâåäåòå +M-x recover file. Êîãàòî êîìàíäàòà èçèñêà ïîòâúðæäåíèå, +âúâåäåòå yes, çà äà ïðîäúëæèòå è äà âúçñòàíîâèòå àâòîìàòè÷íî +çàïàçâàíèòå äàííè. + + +* ÅÕÎ ÎÁËÀÑÒÒÀ +-------------- + +Àêî Åìàêñ âèäè, ÷å âúâåæäàòå ìíîãîçíàêîâè êîìàíäè áàâíî, ùå âè ãè +ïîêàæå â äúíîòî íà åêðàíà, â îáëàñò, íàðè÷àíà "åõî îáëàñò". Åõî +îáëàñòòà îáõâàùà ïîñëåäíèÿ ðåä îò åêðàíà. + + +* ÐÅÄ ÍÀ ÐÅÆÈÌÀ +---------------- + +Ðåäúò òî÷íî íàä åõî îáëàñòòà ñå íàðè÷à "ðåä íà ðåæèìà" (mode line). +Òîé ïîêàçâà íåùî êàòî: + +-b:** TUTORIAL.bg (Fundamental)--L670--58%---------------- + +Òîçè ðåä äàâà ïîëåçíà èíôîðìàöèÿ çà ñúñòîÿíèåòî íà Åìàêñ è òåêñòà, +êîéòî ðåäàêòèðàòå. + +Âå÷å çíàåòå êàêâî îçíà÷àâà èìåòî íà ôàéëà -- òîâà å ôàéëúò, êîéòî ñòå +íàìåðèëè. -NN%-- ïîêàçâà âàøàòà òåêóùà ïîçèöèÿ â òåêñòà; òîâà +îçíà÷àâà, ÷å NN ïðîöåíòà îò òåêñòà å íàä âúðõà íà åêðàíà. Àêî +íà÷àëîòî íà ôàéëà å íà åêðàíà, ùå ñå ïîêàçâà --Top-- (âðúõ) âìåñòî +--00%--. Àêî êðàÿ íà ôàéëà å íà åêðàíà, ùå ñå ïîêàçâà --Bot-- (äúíî). +Àêî ãëåäàòå òåêñò, êîéòî å òîëêîâà ìàëúê, ÷å ñå ïîêàçâà èçöÿëî íà +åêðàíà, ðåäúò íà ðåæèìà ùå èçâåäå --All--. + +Çíàêúò L è öèôðèòå ïîêàçâàò ìÿñòîòî ïî äðóã íà÷èí: òîâà å íîìåðúò íà +òåêóùèÿ ðåä íà òî÷êàòà. + +Çâåçäèòå áëèçî äî íà÷àëîòî îçíà÷àâàò, ÷å ñòå íàïðàâèëè ïðîìåíè â +òåêñòà. Âåäíàãà ñëåä êàòî ïîñåòèòå èëè çàïàçèòå ôàéë, òàçè ÷àñò îò +ðåäà íà ðåæèìà âå÷å íå ïîêàçâà çâåçäè, à ñàìî òèðåòà. + +×àñòòà îò ðåäà íà ðåæèìà âúòðå â ñêîáèòå å, çà äà âè ïîêàæå â êàêúâ +ðåæèì íà ðåäàêòèðàíå ñå íàìèðàòå. Ïîäðàçáèðàùèÿò ñå ðåæèì å +Fundamental (Îñíîâåí), êîéòî èçïîëçâàòå â ìîìåíòà. Òîâà å ïðèìåð çà +"ãëàâåí ðåæèì" (major mode). + +Åìàêñ èìà ìíîãî ãëàâíè ðåæèìè. Íÿêîè îò òÿõ ñà ïðåäâèäåíè çà +ðåäàêòèðàíå íà ðàçëè÷íè åçèöè è/èëè âèäîâå òåêñò, êàòî íàïðèìåð ðåæèì +Ëèñï, ðåæèì Òåêñò è äðóãè. Âúâ âñåêè åäèí ìîìåíò îò âðåìå òî÷íî åäèí +ãëàâåí ðåæèì å àêòèâåí è íåãîâîòî èìå ìîæå âèíàãè äà áúäå íàìåðåíî â +ðåäà íà ðåæèìà, òî÷íî êàêòî "Fundamental" ñåãà. + +Âñåêè ãëàâåí ðåæèì ïðàâè íÿêîè êîìàíäè äà ñå äúðæàò ïî ðàçëè÷åí íà÷èí. +Íàïðèìåð, èìà êîìàíäè çà ðåäàêòèðàíå íà êîìåíòàðè â ïðîãðàìè, è òúé +êàòî âñåêè ïðîãðàìåí åçèê èìà ðàçëè÷íà èäåÿ çà òîâà êàê òðÿáâà äà +èçãëåæäàò êîìåíòàðèòå, âñåêè ãëàâåí ðåæèì òðÿáâà äà âìúêâà êîìåíòàðè +ïî ðàçëè÷åí íà÷èí. Âñåêè ãëàâåí ðåæèì å èìå íà ðàçøèðåíà êîìàíäà, ñ +êîÿòî ïðåâêëþ÷âàòå êúì òîçè ðåæèì. Íàïðèìåð, M-x fundamental-mode å +êîìàíäà çà ïðåâêëþ÷âàíå êúì ðåæèì Fundamental. + +Êîãàòî ðåäàêòèðàòå òåêñò íà åñòåñòâåí åçèê, êàòî òîçè ôàéë, +íàé-âåðîÿòíî òðÿáâà äà èçïîëçâàòå ðåæèì Òåêñò (text). + +>> Âúâåäåòå M-x text mode. + +Íå ñå áåçïîêîéòå, íèêîÿ îò Åìàêñ êîìàíäèòå, êîèòî ñòå íàó÷èëè, íÿìà äà +ñå ïðîìåíè ïî íÿêàêúâ ñúùåñòâåí íà÷èí. Íî ìîæå äà çàáåëåæèòå, ÷å M-f +è M-b ñåãà âúçïðèåìàò àïîñòðîôèòå (') êàòî ÷àñò îò äóìèòå. Ïðåäè +òîâà, â îñíîâíèÿ ðåæèì (Fundamental), M-f è M-b ñå âúçïðèåìàõà êàòî +ðàçäåëèòåëè íà äóìè. + +Ãëàâíèòå ðåæèìè îáèêíîâåíî ïðàâÿò ìàëêè ïðîìåíè êàòî òàçè: ïîâå÷åòî +êîìàíäè âúðøàò "ñúùàòà ðàáîòà" âúâ âñåêè ãëàâåí ðåæèì, íî ðàáîòÿò ïî +ìàëêî ïî-ðàçëè÷åí íà÷èí. + +Çà äà âèäèòå äîêóìåíòàöèÿòà íà âàøèÿ òåêóù ãëàâåí ðåæèì, âúâåäåòå C-h +m. + +>> Óïîòðåáåòå C-u C-v âåäíúæ èëè ïîâå÷å ïúòè, çà äà äîêàðàòå òîçè ðåä + áëèçî äî âúðõà íà åêðàíà. +>> Âúâåäåòå C-h m, çà äà âèäèòå êàê òåêñòîâèÿò ðåæèì ñå ðàçëè÷àâà îò + îñíîâíèÿ ðåæèì. +>> Âúâåäåòå C-x 1, çà äà ïðåìàõíåòå äîêóìåíòàöèÿòà îò åêðàíà. + +Ãëàâíèòå ðåæèìè ñå íàðè÷àò ãëàâíè, çàùîòî èìà è ìàëêè (âòîðîñòåïåííè) +ðåæèìè (minor modes). Ìàëêèòå ðåæèìè íå ñà àëòåðíàòèâè íà ãëàâíèòå, à +ïðîñòî ìàëêè ïðîìåíè êúì òÿõ. Âñåêè ìàëúê ðåæèì ìîæå äà áúäå âêëþ÷åí +èëè èçêëþ÷åí ñàì çà ñåáå ñè, íåçàâèñèìî îò âñè÷êè äðóãè ìàëêè ðåæèìè +è íåçàâèñèìî îò âàøèÿ ãëàâåí ðåæèì. Òàêà ÷å ìîæå äà íå èçïîëçâàòå +ìàëêè ðåæèìè, äà èçïîëçâàòå åäèí ìàëúê ðåæèì, èëè äà èçïîëçâàòå +íÿêàêâà êîìáèíàöèÿ îò íÿêîëêî ìàëêè ðåæèìà. + +Åäèí ãëàâåí ðåæèì, êîéòî å ìíîãî ïîëåçåí, îñîáåíî çà ðåäàêòèðàíå íà +òåêñò íà åñòåñòâåí åçèê, å ðåæèìúò íà àâòîìàòè÷íî çàïúëâàíå (Auto Fill +mode). Êîãàòî òîçè ðåæèì å âêëþ÷åí, Åìàêñ àâòîìàòè÷íî ðàçäåëÿ ðåäà +ïðè ìÿñòîòî ìåæäó äóìèòå, êîãàòî âìúêâàòå òåêñò è íàïðàâèòå ðåä, êîéòî +å òâúðäå äúëúã. + +Ìîæå äà âêëþ÷èòå ðåæèìà íà àâòîìàòè÷íî çàïúëâàíå, êàòî èçïúëíèòå M-x +auto fill mode. Êîãàòî ðåæèìúò å âêëþ÷åí, ìîæå äà ãî +èçêëþ÷èòå ñ M-x auto fill mode. Àêî ðåæèìúò å èçêëþ÷åí, òàçè +êîìàíäà ãî âêëþ÷âà, à àêî å âêëþ÷åí, ãî èçêëþ÷âà. Êàçâàìå, ÷å +êîìàíäàòà "îáðúùà ðåæèìà". + +>> Âúâåäåòå M-x auto fill mode ñåãà. Ñëåä òîâà âìúêíåòå ðåä + îò "asdf " îòíîâî è îòíîâî, äîêàòî íå âèäèòå, ÷å òåêñòúò ñå ðàçäåëÿ + íà äâà ðåäà. Òðÿáâà äà ñëàãàòå èíòåðâàëè ìåæäó äóìèòå, çàùîòî + àâòîìàòè÷íîòî çàïúëâàíå ðàçäåëÿ ðåäîâåòå ñàìî ïðè èíòåðâàëèòå. + +Ãðàíèöàòà îáèêíîâåíî å çàäàäåíà íà 70 çíàêà, íî ìîæåòå äà ÿ ïðîìåíèòå +ñ êîìàíäàòà C-x f. Òðÿáâà äà çàäàâàòå òàçè ãðàíèöà êàòî ÷èñëîâ +àðãóìåíò íà êîìàíäàòà. + +>> Âúâåäåòå C-x f ñ àðãóìåíò 20. (C-u 2 0 C-x f). + Ñåãà âúâåäåòå íÿêàêúâ òåêñò è âèæòå êàê Åìàêñ çàïúëâà ðåäîâåòå ñ ïî + íå ïîâå÷å îò 20 çíàêà. Ïîñëå âúðíåòå îáðàòíî ãðàíèöàòà íà 70, + èçïîëçâàéêè C-x f îòíîâî. + +Àêî íàïðàâèòå ïðîìåíè â ñðåäàòà íà àáçàö, ðåæèìúò íà àâòîìàòè÷íî +çàïúëâàíå íÿìà äà ãî çàïúëíè íàíîâî çà âàñ. +Çà äà çàïúëíèòå íàíîâî àáçàö, âúâåæäàéòå M-q (META-q), äîêàòî êóðñîðúò +å âúòðå â àáçàöà. + +>> Ïðèäâèæåòå êóðñîðà âúòðå â ïðåäèøíèÿ àáçàö è âúâåäåòå M-q. + + +* ÒÚÐÑÅÍÅ +--------- + +Åìàêñ ìîæå äà èçâúðøâà òúðñåíèÿ íà íèçîâå (òîâà ñà ïîñëåäîâàòåëíîñòè +îò çíàöè èëè äóìè) èëè íàïðåä â òåêñòà, èëè íàçàä â íåãî. Òúðñåíåòî +íà íèç å ïðèäâèæâàùà êóðñîðà êîìàíäà; òÿ ïðåìåñòâà êóðñîðà íà +ñëåäâàùîòî ìÿñòî, êúäåòî ñå ñðåùà íèçúò. + +Êîìàíäàòà çà òúðñåíå íà Åìàêñ ñå ðàçëè÷àâà îò êîìàíäàòà çà òúðñåíå íà +ïîâå÷åòî ðåäàêòîðè ïî òîâà, ÷å òÿ å "ïîñòúïêîâà". Òîâà îçíà÷àâà, ÷å +òúðñåíåòî ñå èçâúðøâà îùå äîêàòî âúâåæäàòå òåêñòà, êîéòî òúðñèòå. + +Êîìàíäàòà çà çàïî÷âàíå íà òúðñåíå å C-s çà òúðñåíå íàïðåä, è C-r çà +òúðñåíå íàçàä. ÍÎ ÏÎ×ÀÊÀÉÒÅ! Íå ãè ïðîáâàéòå ñåãà. + +Êîãàòî âúâåäåòå C-s, ùå çàáåëåæèòå, ÷å íèçúò "I-search" ñå ïîÿâÿâà +êàòî ïîäñêàçêà â åõî îáëàñòòà. Òîâà âè êàçâà, ÷å Åìàêñ å â òîâà, +êîåòî ñå íàðè÷à ïîñòúïêîâî òúðñåíå, ÷àêàéêè âè äà âúâåæäàòå òåêñòà, +êîéòî èñêàòå äà òúðñèòå. ïðèêëþ÷âà òúðñåíåòî. + +>> Ñåãà âúâåäåòå C-s, çà äà çàïî÷íåòå òúðñåíåòî. ÁÀÂÍÎ, áóêâà ïî + áóêâà, âúâåäåòå äóìàòà "òúðñåíå", èç÷àêâàéêè ñëåä âúâåæäàíåòî íà + âñåêè çíàê, çà äà ìîæå äà çàáåëåæèòå êàêâî ñòàâà ñ êóðñîðà. Ñåãà + èçâúðøèõòå òúðñåíå íà "òúðñåíå" âåäíúæ. +>> Âúâåäåòå îòíîâî C-s, çà äà òúðñèòå äðóãî ñúâïàäåíèå ñ "òúðñåíå". +>> Ñåãà âúâåäåòå òðè ïúòè è âèæòå êàê ñå ïðèäâèæâà êóðñîðà. +>> Âúâåäåòå , çà äà ïðåêðàòèòå òúðñåíåòî. + +Çàáåëÿçàõòå ëè êàêâî ñòàíà? Åìàêñ, êîãàòî òúðñè ïîñòúïêîâî, ñå îïèòâà +äà íàìåðè ñëåäâàùîòî ñúâïàäåíèå íà íèçà, êîéòî ñå âúâåæäà. Çà äà +îòèäåòå íà ñëåäâàùîòî ñúâïàäåíèå íà "òúðñíå", ïðîñòî îòíîâî âúâåäåòå +C-s. Àêî íÿìà òàêîâà ñúâïàäåíèå, Åìàêñ áèáèïâà è âè êàçâà, ÷å +òúðñåíåòî å "ïðîâàëåíî" (failing). C-g ñúùî ïðåêðàòÿâà òúðñåíåòî. + +ÇÀÁÅËÅÆÊÀ: Íà íÿêîè ñèñòåìè âúâåæäàíåòî íà C-s ùå çàìðàçè åêðàíà è âèå +íÿìà äà ìîæå äà âèäèòå ïîâå÷å ðåàêöèÿ îò Åìàêñ. Òîâà ïîêàçâà, ÷å +"ñïîñîáíîñò" íà îïåðàöèîííàòà ñèñòåìà, íàðå÷åíà "óïðàâëåíèå íà ïîòîêà" +(flow control), å ïðèõâàíàëà C-s è íå ãî ïðîïóñêà äî Åìàêñ. Çà äà +ðàçìðàçèòå åêðàíà, âúâåäåòå C-q. Òîãàâà âèæòå ñåêöèÿòà "Ñïîíòàííî +âêëþ÷âàíå íà ïîñòúïêîâîòî òúðñåíå" (Spontaneous Entry to Incremental +Search) â ðúêîâîäñòâîòî íà Åìàêñ çà ñúâåò êàê äà ñå ñïðàâèòå ñ òàçè +"ñïîñîáíîñò". + +Àêî ñòå â ñðåäàòà íà ïîñòúïêîâî òúðñåíå è âúâåäåòå , ùå +çàáåëåæèòå, ÷å ïîñëåäíèÿò çíàê â òúðñåíèÿ íèç ñå èçòðèâà è òúðñåíåòî +ñå âðúùà êúì ïîñëåäíîòî ìÿñòî íà òúðñåíå. Íàïðèìåð, ïðåäïîëîæåòå, ÷å +ñòå âúâåëè "ò", çà äà íàìåðèòå ïúðâîòî ñúâïàäåíèå ñ "ò". Ñåãà, àêî +âúâåäåòå "ú", êóðñîðúò ùå ñå ïðèäâèæè êúì ïúðâîòî ñúâïàäåíèå íà "òú". +Ñåãà âúâåäåòå . Òîâà èçòðèâà çíàêà "ú" îò íèçà çà òúðñåíå è +êóðñîðúò ñå ïðåìåñòâà íàçàä, äî ïúðâîòî ñúâïàäåíèå ñ "ò". + +Àêî ñòå â ñðåäàòà íà òúðñåíå è âúâåäåòå êîíòðîëåí èëè ìåòà çíàê (ñ +íÿêîëêî èçêëþ÷åíèÿ -- çíàöèòå, êîèòî ñà ñïåöèàëíè ïî âðåìå íà òúðñåíå, +êàòî C-s è C-r), òúðñåíåòî ñå ïðåêðàòÿâà. + +C-s çàïî÷âà òúðñåíå, êîåòî ãëåäà çà ñúâïàäåíèå ñ íèçà, äàäåí çà +òúðñåíå ÑËÅÄ òåêóùîòî ìÿñòî íà êóðñîðà. Àêî èñêàòå äà òúðñèòå íåùî +ïî-ðàííî îò òåêñòà, âìåñòî òîâà âúâåäåòå C-r. Âñè÷êî, êîåòî êàçàõìå +çà C-s, âàæè è çà C-r, îñâåí ÷å ïîñîêàòà íà òúðñåíå å îáúðíàòà. + + +* ÌÍÎÆÅÑÒÂÎ ÏÐÎÇÎÐÖÈ +---------------- + +Åäíà îò ïðèâëåêàòåëíèòå ñïîñîáíîñòè íà Åìàêñ å òàçè, ÷å ìîæå äà +ãëåäàòå ïîâå÷å îò åäèí ïðîçîðåö íà åêðàíà â äàäåí ìîìåíò îò âðåìå. + +>> Ïðèäâèæåòå êóðñîðà äî òîçè ðåä è âúâåäåòå C-u 0 C-l (òîâà å + CONTROL-L, íå CONTROL-1). + +>> Ñåãà âúâåäåòå C-x 2, êîåòî ùå ðàçäåëè åêðàíà íà äâà îòäåëíè + ïðîçîðåöà. Äâàòà ïðîçîðåöà ïîêàçâàò òîâà âúâåäåíèå. Êóðñîðúò + îñòàâà íà ïî-ãîðíèÿ ïðîçîðåö. + +>> Âúâåäåòå C-M-v, çà äà ñêðîëèðàòå äîëíèÿ ïðîçîðåö. (Àêî íÿìàòå + èñòèíñêè êëàâèø META, âúâåäåòå ESC C-v.) + +>> Âúâåäåòå C-x o ("o" îò "other" -- "äðóã"), çà äà ïðèäâèæèòå + êóðñîðà â äîëíèÿ ïðîçîðåö. +>> Èçïîëçâàéòå C-v è M-v â äîëíèÿ ïðîçîðåö, çà äà ãî ñêðîëèðàòå. + Ïðîäúëæåòå ÷åòåíåòî íà òåçè íàñîêè îò âúâåäåíèåòî â ãîðíèÿ + ïðîçîðåö. + +>> Âúâåäåòå C-x o îòíîâî, çà äà ïðèäâèæèòå êóðñîðà îòíîâî â ãîðíèÿ + ïðîçîðåö. Êóðñîðúò â ãîðíèÿ ïðîçîðåö å òî÷íî òàì, êúäåòî å áèë + ïðåäè. + +Ìîæå äà ïðîäúëæèòå äà èçïîëçâàòå C-x o, çà äà ïðåâêëþ÷âàòå ìåæäó +ïðîçîðöèòå. Âñåêè ïðîçîðåö èìà ñîáñòâåíî ìÿñòî íà êóðñîðà, íî ñàìî +åäèí ïðîçîðåö ïîêàçâà êóðñîð. Âñè÷êè îáèêíîâåíè êîìàíäè çà +ðåäàêòèðàíå ñå ïðèëàãàò â ïðîçîðåöà, â êîéòî å êóðñîðúò. Íèå íàðè÷àìå +òîçè ïðîçîðåö "òåêóù ïðîçîðåö". + +Êîìàíäàòà C-M-v å ìíîãî ïîëåçíà, êîãàòî ðåäàêòèðàòå òåêñò â åäèí +ïðîçîðåö è èçïîëçâàòå äðóãèÿ ïðîçîðåö ïðîñòî çà ñïðàâêà. Ìîæå äà +äúðæèòå êóðñîðà âèíàãè â ïðîçîðåöà, êúäåòî ðåäàêòèðàòå, è äà +íàïðåäâàòå ïîñëåäîâàòåëíî â äðóãèÿ ïðîçîðåö ÷ðåç C-M-v. + +C-M-v å ïðèìåð çà çíàê CONTROL-META. Àêî èìàòå èñòèíñêè êëàâèø META, +ìîæå äà âúâåæäàòå C-M-v, çàäúðæàéêè åäíîâðåìåííî CONTROL è META, +äîêàòî âúâåæäàòå v. Íÿìà çíà÷åíèå äàëè CONTROL èëè META "å íàòèñíàò +ïúðâè", çàùîòî è äâàòà êëàâèøà äåéñòâàò, ìîäèôèöèðàéêè çíàêà, êîéòî +ñòå âúâåëè. + +Àêî íÿìàòå èñòèíñêè êëàâèø META è èçïîëçâàòå ESC âìåñòî òîâà, ðåäúò +èìà çíà÷åíèå: òðÿáâà äà âúâåæäàòå ESC, ïîñëåäâàí îò CONTROL-v, çàùîòî +CONTROL-ESC v íÿìà äà ðàáîòè. Òîâà å òàêà, çàùîòî ESC å ñîáñòâåí +çíàê, à íå ìîäèôèêàòîð. + +>> Âúâåäåòå C-x 1 (â ãîðíèÿ ïðîçîðåö), çà äà ìàõíåòå äîëíèÿ ïðîçîðåö. + +(Àêî ñòå âúâåëè C-x 1 â äîëíèÿ ïðîçîðåö, òîâà ùå ìàõíå ãîðíèÿ. +Ìèñëåòå çà òàçè êîìàíäà êàòî "Çàäðúæ òî÷íî åäèí ïðîçîðåö -- òîçè, â +êîéòî ñúì ñåãà".) + +Íÿìà íóæäà äà èçâåæäàòå åäèí è ñúùè áóôåð â äâàòà ïðîçîðåöà. Àêî +èçïîëçâàòå C-x C-f, çà äà íàìåðèòå ôàéë â åäèíèÿ ïðîçîðåö, äðóãèÿò +ïðîçîðåö íå ñå ïðîìåíÿ. Ìîæå äà íàìèðàòå ôàéë âúâ âñåêè ïðîçîðåö, +íåçàâèñèìî îò òîâà êàêâî èìà â äðóãèòå ïðîçîðöè. + +Åòî îùå åäèí íà÷èí äà èçïîëçâàòå äâà ïðîçîðåöà, çà äà ïîêàæåòå äâå +ðàçëè÷íè íåùà: + +>> Âúâåäåòå C-x 4 C-f, ïîñëåäâàíî îò èìåòî íà åäèí îò âàøèòå ôàéëîâå. + Çàâúðøåòå ñ . Âèæòå êàê òîçè ôàéë ñå ïîÿâÿâà â äîëíèÿ + ïðîçîðåö. Êóðñîðúò ñúùî îòèâà òàì. + +>> Âúâåäåòå C-x o, çà äà ñå âúðíåòå â ãîðíèÿ ïðîçîðåö, è C-x 1, çà äà + èçòðèåòå äîëíèÿ. + + +* ÂËÎÆÅÍÈ ÍÈÂÀ ÍÀ ÐÅÄÀÊÒÈÐÀÍÅ +----------------------------- + +Ïîíÿêîãà ùå ñå îçîâåòå â òîâà, êîåòî ñå íàðè÷à "âëîæåíî íèâî íà +ðåäàêòèðàíå" (recursive editing level). Òîâà ñå îòáåëÿçâà îò +êâàäðàòíè ñêîáè â ðåäà íà ðåæèìà, êîèòî îãðàæäàò ñêîáèòå îêîëî èìåòî +íà ãëàâíèÿ ðåæèì. Íàïðèìåð, ìîæå äà âèäèòå [(Fundamental)] âìåñòî +(Fundamental). + +Çà äà ñå ìàõíåòå îò âëîæåíîòî íèâî íà ðåäàêòèðàíå, âúâåäåòå ESC ESC +ESC. Òîâà å îáùà êîìàíäà çà "èçëèçàíå". Ìîæå è äà ÿ èçïîëçâàòå çà +ìàõàíå (ñêðèâàíå) íà äîïúëíèòåëíè ïðîçîðöè, êàêòî è çà äà ñå ìàõíåòå +îò ìèíèáóôåðà. + +>> Âúâåäåòå M-x, çà äà âëåçåòå â ìèíèáóôåð; òîãàâà âúâåäåòå ESC ESC + ESC, çà äà èçëåçåòå. + +Íå ìîæåòå äà èçïîëçâàòå C-g, çà äà èçëåçåòå îò âëîæåíî íèâî íà +ðåäàêòèðàíå. Òîâà å òàêà, çàùîòî C-g ñå èçïîëçâà çà ïðåêðàòÿâàíå íà +êîìàíäè è àðãóìåíòè ÂÚÒÐÅ âúâ âëîæåíî íèâî íà ðåäàêòèðàíå. + + +* ÏÎËÓ×ÀÂÀÍÅ ÍÀ ÄÎÏÚËÍÈÒÅËÍÀ ÏÎÌÎÙ +---------------------------------- + + òîâà âúâåäåíèå ñå îïèòàõìå äà îñèãóðèì äîñòàòú÷íî èíôîðìàöèÿ, çà äà +çàïî÷íåòå äà èçïîëçâàòå Åìàêñ. Èìà òîëêîâà ìíîãî îùå â Åìàêñ, ÷å íå å +âúçìîæíî òî äà áúäå îáÿñíåíî âñè÷êîòî òóê. Îáà÷å ìîæå äà ïîèñêàòå äà +íàó÷èòå ïîâå÷å çà Åìàêñ, òúé êàòî òîé ïðèòåæàâà îùå ìíîãî ïîëåçíè +ñïîñîáíîñòè. Åìàêñ èìà êîìàíäè çà ÷åòåíå íà äîêóìåíòàöèÿòà íà Åìàêñ +êîìàíäèòå. Òåçè "ïîìîùíè" êîìàíäè âñè÷êè çàïî÷âàò ñúñ çíàêà +CONTROL-h, êîéòî ñå íàðè÷à "çíàêúò çà ïîìîù". + +Çà äà èçïîëçâàòå âúçìîæíîñòèòå íà òàçè ïîìîù, âúâåäåòå çíàêà C-h è +ñëåä òîâà çíàêà, êàçâàù êàêúâ âèä ïîìîù èñêàòå. Àêî ÍÀÈÑÒÈÍÀ ñòå ñå +èçãóáèëè, âúâåäåòå C-h ? è Åìàêñ ùå âè êàæå ñ êàêâî ìîæå äà âè +ïîìîãíå. Àêî ñòå âúâåëè C-h è ðåøèòå, ÷å íå ñå íóæäàåòå îò ïîìîù, +ïðîñòî âúâåäåòå C-g, çà äà ÿ ïðåêðàòèòå. + +(Íÿêîè êîìïþòðè ïðîìåíÿò çíà÷åíèåòî íà çíàêà C-h. Òå íàèñòèíà íå +òðÿáâà äà ïðàâÿò òîâà êàòî ñëÿïà ìÿðêà çà âñè÷êè ïîòðåáèòåëè, òàêà ÷å +èìàòå îñíîâàíèå äà ñå îïëà÷åòå íà ñèñòåìíèÿ àäìèíèñòðàòîð. Ìåæäó +äðóãîòî, àêî C-h íå èçâåæäà ñúîáùåíèå çà ïîìîù â äúíîòî íà åêðàíà, +îïèòàéòå êëàâèøà F1 èëè M-x help âìåñòî òîâà.) + +Íàé-îñíîâíîòî ïîìîùíî ñðåäñòâî å C-h c. Âúâåäåòå C-h, çíàêà c è +êîìàíäåí çíàê èëè ïîñëåäîâàòåëíîñò îò çíàöè, îáðàçóâàùè êîìàíäà; +òîãàâà Åìàêñ ùå èçâåäå ìíîãî êðàòêî îïèñàíèå íà êîìàíäàòà. + +>> Type C-h c C-p. + +Èçâåäåíîòî îïèñàíèå òðÿáâà äà áúäå íåùî êàòî + + C-p runs the command previous-line + (C-p èçïúëíÿâà êîìàíäàòà ïðåäèøåí-ðåä) + +Òîâà âè êàçâà "èìåòî íà ôóíêöèÿòà". Èìåíàòà íà ôóíêöèèòå ñå èçïîëçâàò +íàé-âå÷å çà íàñòðîéâàíå è ðàçøèðÿâàíå íà Åìàêñ. Íî òúé êàòî èìåíàòà +íà ôóíêöèèòå ñà èçáðàíè òàêà, ÷å äà ïîêàçâàò êàêâî ïðàâè êîìàíäàòà, òå +ìîãàò äà ñëóæàò è çà ìíîãî êðàòêà äîêóìåíòàöèÿ -- äîñòàòú÷íà, çà äà âè +ïðèïîìíè êîìàíäè, êîèòî âå÷å ñòå ó÷èëè. + +Ìíîãîçíàêîâè êîìàíäè, êàòî C-x C-s è (àêî íÿìàòå êëàâèø META èëè EDIT +èëè ALT) v, ñúùî ñà ïîçâîëåíè ñëåä C-h c. + +Çà äà ïîëó÷èòå îùå èíôîðìàöèÿ çà êîìàíäà, èçïîëçâàéòå C-h k âìåñòî C-h +c. + +>> Âúâåäåòå C-h k C-p. + +Òîâà èçâåæäà äîêóìåíòàöèÿòà íà ôóíêöèÿòà, êàêòî è íåéíîòî èìå, â +îòäåëåí Åìàêñ ïðîçîðåö. Êîãàòî ÿ ïðî÷åòåòå, âúâåäåòå C-x 1, çà äà +ìàõíåòå ïîìîùíèÿ òåêñò. Íå å íóæíî äà ïðàâèòå òîâà òî÷íî ñåãà. Ìîæå +äà ðåäàêòèðàòå, äîêàòî ñå îáðúùàòå êúì ïîìîùíèÿ òåêñò çà ñïðàâêà, è +ñëåä òîâà äà âúâåäåòå C-x 1. + +Åòî îùå íÿêîëêî ïîëåçíè C-h âúçìîæíîñòè: + + C-h f Îïèñâà ôóíêöèÿ. Òðÿáâà äà âúâåäåòå èìåòî íà + ôóíêöèÿòà. + +>> Îïèòàéòå ñ âúâåæäàíå íà C-h f previous-line. + Òîâà èçâåæäà öÿëàòà èíôîðìàöèÿ, êîÿòî Åìàêñ çíàå çà ôóíêöèÿòà, + êîÿòî îñúùåñòâÿâà êîìàíäàòà C-p. + +Ïîäîáíà êîìàíäà, C-h v, èçâåæäà äîêóìåíòàöèÿòà íà ïðîìåíëèâèòå, êîèòî +ìîæå äà ïðîìåíÿòå, çà äà íàñòðîéâàòå ïîâåäåíèåòî íà Åìàêñ. Òðÿáâà äà +âúâåäåòå èìåòî íà ïðîìåíëèâàòà, êîãàòî Åìàêñ âè ïîäñêàæå òîâà. + + C-h a Êîìàíäà Àïðîïîñ. Âúâåäåòå êëþ÷îâà äóìà è Åìàêñ ùå + ïîêàæå ñïèñúê íà âñè÷êè êîìàíäè, ÷èåòî èìå ñúäúðæà + òàçè êëþ÷îâà äóìà. Òåçè êîìàíäè ìîãàò âñè÷êè äà áúäàò + èçâèêàíè ÷ðåç META-x. Çà íÿêîè êîìàíäè êîìàíäàòà + Àïðîïîñ ùå èçâåäå äîïúëíèòåëíî åäíîçíàêîâà èëè + äâóçíàêîâà ïîñëåäîâàòåëíîñò îò êëàâèøè, êîÿòî ïóñêà + ñúùàòà êîìàíäà. + +>> Âúâåäåòå C-h a file. + +Òîâà èçâåæäà â äðóã ïðîçîðåö ñïèñúê íà âñè÷êè M-x êîìàíäè, êîèòî +ñúäúðæàò "file" â òÿõíîòî èìå. Ùå âèäèòå çíàêîâè êîìàíäè êàòî C-x +C-f, èçáðîåíè èçìåæäó ñúîòâåòíèòå èìåíà íà êîìàíäè, êàòî find-file. + +>> Âúâåäåòå C-M-v, çà äà ñêðîëèðàòå ïîìîùíèÿ ïðîçîðåö. Íàïðàâåòå ãî + íÿêîëêî ïúòè. + +>> Âúâåäåòå C-x 1, çà äà èçòðèåòå ïîìîùíèÿ ïðîçîðåö. + + C-h i ×åòåíå íà ðúêîâîäñòâà (Info). Òàçè êîìàíäà âè ïðàùà â + ñïåöèàëåí áóôåð, íàðè÷àí "*info*", êúäåòî ìîæå äà + ÷åòåòå ðúêîâîäñòâàòà íà èíñòàëèðàíèòå âúâ âàøàòà + ñèñòåìà ïàêåòè. Âúâåäåòå m emacs , çà äà + ÷åòåòå ðúêîâîäñòâîòî íà Åìàêñ. Àêî íèêîãà ïðåäè òîâà + íå ñòå èçïîëçâàëè Info, âúâåäåòå ? è Åìàêñ ùå âêëþ÷è + âúâåäåíèå âúâ âúçìîæíîñòèòå íà ðåæèìà Èíôî. Âåäíúæ + ñëåä êàòî ñòå ïðåìèíàëè òîâà âúâåäåíèå, òðÿáâà äà ñå + êîíñóëòèðàòå ñ Åìàêñ Èíôî ðúêîâîäñòâîòî êàòî âàøà + îñíîâíà äîêóìåíòàöèÿ. + + +* ÎÙÅ ÂÚÇÌÎÆÍÎÑÒÈ +----------------- + +Ìîæå äà íàó÷èòå ïîâå÷å çà Åìàêñ ñ ÷åòåíå íà íåãîâîòî ðúêîâîäñòâî, èëè +êàòî êíèãà, èëè â Èíôî (èçïîëçâàéòå ìåíþòî ïîìîù (Help) èëè âúâåäåòå +F10 h r). Äâå âúçìîæíîñòè, êîèòî ìîæå äà æåëàåòå â íà÷àëîòî, ñà +äîâúðøâàíå (completion), êîåòî ñïåñòÿâà ïèñàíå, è dired, êîéòî +îïðîñòÿâà áîðàâåíåòî ñ ôàéëîâå. + +Äîâúðøâàíåòî å íà÷èí äà èçáÿãâàòå íåíóæíî ïèñàíå. Íàïðèìåð, àêî +èñêàòå äà ïðåâêëþ÷èòå êúì áóôåðà *Messages*, ìîæå äà âúâåäåòå C-x b +*M è Åìàêñ ùå çàïúëíè îñòàíàëàòà ÷àñò îò èìåòî íà áóôåðà, +äîêîëêîòî ìîæå äà ñå îïðåäåëè îò òîâà, êîåòî ñòå âúâåëè. Äîâúðøâàíåòî +å îïèñàíî â Èíôî-ðúêîâîäñòâîòî íà Åìàêñ â ñòðàíèöàòà "Äîâúðøâàíå" +("Completion"). + +Dired âè ïîçâîëÿâà äà ãëåäàòå ñïèñúêà îò ôàéëîâå â äèðåêòîðèÿ (è êàòî +âúçìîæíîñò: íåéíèòå ïîääèðåêòîðèè), äà ñå ïðèäâèæâàòå â òîçè ñïèñúê, +äà ïîñåùàâàòå, ïðåèìåíóâàòå, èçòðèâàòå è èçîáùî äåéñòâàòå âúðõó +ôàéëîâåòå. Dired å îïèñàí â Èíôî-ðúêîâîäñòâîòî íà Åìàêñ â ñòðàíèöàòà +"Dired". + +Ðúêîâîäñòâîòî íà Åìàêñ îïèñâà îùå ìíîãî äðóãè âúçìîæíîñòè íà +ðåäàêòîðà. + + +* ÇÀÊËÞ×ÅÍÈÅ +------------ + +Çàïîìíåòå: çà äà èçëåçåòå áåçâúçâðàòíî îò Åìàêñ, èçïîëçâàéòå C-x C-c. +Çà äà èçëåçåòå âðåìåííî â îáâèâêà, òàêà ÷å äà ñå âúðíåòå â Åìàêñ +ïî-êúñíî, èçïîëçâàéòå C-z. + +Òîâà âúâåäåíèå å ïðåäâèäåíî äà áúäå ðàçáèðàåìî çà âñè÷êè íîâè +ïîòðåáèòåëè, òàêà ÷å àêî íàìèðàòå íåùî íåÿñíî, íå ñå ñàìîîáâèíÿâàéòå +-- îïëà÷åòå ñå! + + +* ÊÎÏÈÐÀÍÅ +---------- + +Òîâà âúâåäåíèå ïðîèçëèçà îò äúëãà ïîðåäèöà âúâåäåíèÿ â Åìàêñ, +çàïî÷âàéêè îò åäíî, íàïèñàíî îò Ñòþúðò Êðàêðàôò çà íà÷àëíèÿ Åìàêñ. + +Òàçè âåðñèÿ íà âúâåäåíèåòî, êàêòî è ÃÍÓ Åìàêñ, å çàùèòåíà ñ àâòîðñêè +ïðàâà è èäâà ñ ðàçðåøåíèå äà ðàçïðîñòðàíÿâàòå êîïèÿ ïðè ñëåäíèòå +óñëîâèÿ: + +This version of the tutorial, like GNU Emacs, is copyrighted, and +comes with permission to distribute copies on certain conditions: + +Copyright (C) 1985, 1996, 1998, 2001, 2002, 2003, 2004, + 2005, 2006, 2007 Free Software Foundation, Inc. + + Permission is granted to anyone to make or distribute verbatim copies + of this document as received, in any medium, provided that the + copyright notice and permission notice are preserved, + and that the distributor grants the recipient permission + for further redistribution as permitted by this notice. + + Permission is granted to distribute modified versions + of this document, or of portions of it, + under the above conditions, provided also that they + carry prominent notices stating who last altered them. + +Óñëîâèÿòà çà êîïèðàíå íà ñàìèÿ Åìàêñ ñà ïî-ñëîæíè, íî â ñúùèÿ äóõ. +Ìîëÿ, ïðî÷åòåòå ôàéëà COPYING è òîãàâà äàâàéòå êîïèÿ íà ÃÍÓ Åìàêñ íà +ñâîè ïðèÿòåëè. Ïîìîãíåòå äà ñïðåì çàòâîðåíîñòòà íà ïðîãðàìèòå +("ïðèòåæàíèåòî"), êàòî èçïîëçâàìå, ïèøåì è ñïîäåëÿìå ñâîáîäåí ñîôòóåð! + +Ïðåâîäúò íà áúëãàðñêè å èçâúðøåí îò Îãíÿí Êóëåâ +. + +;;; Local Variables: +;;; coding: windows-1251 +;;; End: +;;; arch-tag: 70cf6ad7-c2e4-41fe-8199-74aa52683b0e diff --git a/etc/tutorials/TUTORIAL.cn b/etc/tutorials/TUTORIAL.cn new file mode 100644 index 00000000000..5e318e8ff90 --- /dev/null +++ b/etc/tutorials/TUTORIAL.cn @@ -0,0 +1,1033 @@ +Emacs ¿ìËÙÖ¸ÄÏ.£¨²é¿´°æȨÉùÃ÷ÇëÖÁ±¾ÎÄĩ⣩ + +¡¾×¢Ò⣺λÓÚ¡¾¡¿Ö®¼äµÄÄÚÈÝÊÇÒë×¢£¬±ÈÈç±¾ÐУ¬ÏÂͬ¡£¡¿ + +Emacs ¼üÅÌÃüÁîͨ³£°üº¬ CONTROL ¼ü£¨ÓÐʱºòÒÔ CTRL »ò CTL À´±êʾ£©ºÍ +META ¼ü£¨ÓÐʱºòÓà EDIT »ò ALT À´±êʾ£©¡£ÎªÁ˱ÜÃâÿ´Î¶¼ÒªÐ´³öÈ«Ãû£¬ÎÒÃÇ +Ô¼¶¨Ê¹ÓÃÏÂÊöËõд£º + + C- ±íʾµ±ÊäÈë×Ö·û ʱ°´×¡ CONTROL ¼ü¡£ + Òò´Ë C-f ¾Í±íʾ£º°´×¡ CONTROL ¼üÔÙÊäÈë f¡£ + + M- ±íʾµ±ÊäÈë×Ö·û ʱ°´×¡ META£¨»ò EDIT »ò ALT£©¼ü¡£ + Èç¹ûÄãµÄ¼üÅÌÉÏûÓÐ META ¡¢EDIT »ò ALT ¼ü£¬ÓÃÏÂÊö·½·¨Ò²µÈЧ£º + ÏÈ°´Ò»Ï ESC ¼üÈ»ºó·Å¿ª£¬ÔÙÊäÈë ¡£ÎÒÃÇÓà À´±íʾ + ESC ¼ü¡£ + +ÖØÒªÌáʾ£ºÒªÍ˳ö Emacs£¬ÇëÓà C-x C-c£¨Á½¸öÁ¬ÐøµÄ×éºÏ¼ü£©¡£ÏÂÎÄÖÐ×ó±ß¶¥ +Ðеġ°>>¡±×ÖÑùÓÃÀ´ÌáʾÄã³¢ÊÔ¼üÅÌÃüÁî¡£±ÈÈ磺 +<> +[±¾Ò³µ±ÖÐÌØÒâÁô³öһЩ¿Õ°×ÊdzöÓÚ½ÌѧĿµÄ£¬Çë¼ÌÐøÍùºóÔĶÁ] +>> ÏÖÔÚÊäÈë C-v £¨²é¿´ÏÂÒ»ÆÁÎÄ×Ö£©Òƶ¯µ½ÏÂÒ»ÆÁ¡£ + £¨±ð½ôÕÅ£¬ÔÚÊäÈë×Ö·û v µÄͬʱעÒâÒª°´×¡ CONTROL ¼ü£© + ´ÓÏÖÔÚ¿ªÊ¼£¬Ã¿¶ÁÍ굱ǰһÆÁÄ㶼ÐèÒªÕâÑù×öÒ»´Î¡£ + +ÖµµÃ×¢ÒâµÄÊÇ£¬µ±Äã´ÓÉÏÒ»ÆÁ¹öµ½ÏÂÒ»ÆÁʱ£¬Öмä»áÓÐÁ½ÐеÄÖظ´£»ÕâÑù×öÊÇΪ +ÁËά³Ö¹öÆÁµÄÁ¬ÐøÐÔ£¬·½±ãÄã˳³©¡¢Á¬ÐøµØÔĶÁ¡£ + +Óñ༭Æ÷£¬¿ªÃŵÚÒ»¼þʾÍÊÇѧ»áÔÚÎÄ×ÖÖÐÒƶ¯¡£ÄãÒѾ­ÖªµÀÁË C-v ¿ÉÒÔÏòÏÂÒÆ +¶¯Ò»ÆÁ£¬ÒªÍùÉÏÒÆ£¬ÇëÓà M-v £¨Ò²¾ÍÊÇ°´×¡ META ¼ü£¬È»ºóÊäÈëv£¬Èç¹ûÄãûÓÐ +META¡¢EDIT »ò ALT ¼üÄÇô¾ÍÏÈ°´ ÔÙ°´ v£©¡£ + +>> ÊÔÊÔ M-v£¬È»ºóÔÙÊÔÊÔ C-v£¬À´»ØåÞ¼¸´Î¡£ + + +* С½á£¨SUMMARY£© +----------------- + +ÒÔÏÂÃüÁîÔÚ·­Ò³ä¯ÀÀʱÏ൱ÓÐÓ㺠+ + C-v ÏòÇ°Òƶ¯Ò»ÆÁ + M-v ÏòºóÒƶ¯Ò»ÆÁ + C-l ÖØ»æÆÁÄ»£¬²¢½«¹â±êËùÔÚÐÐÖÃÓÚÆÁÄ»µÄÖÐÑë + £¨×¢ÒâÊÇ CONTROL-L£¬²»ÊÇ CONTROL-1£© + +>> ÕÒµ½¹â±ê£¬ÁôÒâÆ丽½üµÄÎÄ×Ö£¬È»ºóÊäÈë C-l¡£ + ÕÒÕÒ¹â±êÔÚÄÄÀÄã»á·¢ÏÖÆ丽½üµÄÎÄ×Ö²¢Ã»Óб仯¡£ + +Èç¹ûÄãµÄ¼üÅÌÉÏÓÐ PageUp ºÍ PageDn£¬Ò²¿ÉÒÔÓÃÕâÁ½¸ö¼üÀ´¹öÆÁ¡£²»¹ýʹÓà +C-v ºÍ M-v µÄЧÂÊÒª¸ü¸ßһЩ¡£ + + +* »ù±¾µÄ¹â±ê¿ØÖÆ£¨BASIC CURSOR CONTROL£© +---------------------------------------- + +ÕûÆÁµÄÒƶ¯ºÜÓÐÓ㬵«ÊÇÈçºÎÔÚÎÄ×ÖÖо«È·¶¨Î»ÄØ£¿ + +Óм¸ÖÖ·½Ê½¿ÉÒÔÑ¡Ôñ¡£Ó÷½Ïò¼üµ±È»¿ÉÒÔ£¬²»¹ý¸üÓÐЧÂʵķ½·¨ÊDZ£³ÖË«ÊÖλÓÚ +Ö÷¼üÅÌÇø£¬È»ºóʹÓà C-p ¡¢ C-b ¡¢ C-f ºÍ C-n ÕâËĸöÃüÁî¡£ËüÃǵŦÄܺͷ½ +Ïò¼üÊÇÒ»ÑùµÄ£¬ÈçÏÂͼËùʾ£º + + ÉÏÒ»ÐÐ C-p + : + : + Ïò×óÒÆ C-b .... Ä¿Ç°¹â±êλÖà .... ÏòÓÒÒÆ C-f + : + : + ÏÂÒ»ÐÐ C-n + +>> Óà C-n »ò C-p ½«¹â±êÒƵ½ÉÏͼµÄÖÐÑë¡£ + °´ C-l£¬Õû·ùͼ»á±»ÏÔʾÔÚÆÁÄ»µÄÖÐÑë¡£ + +¡°P N B F¡±Ëĸö×Öĸ·Ö±ð´ú±íÁËËĸö´Ê£¬ÓÃÕâËĸö´Ê¼ÇÒäÕâЩ×éºÏ¼ü»á¸üÈÝÒ×£º +P ´ú±í previous£¨ÉÏÒ»ÐУ©£¬N ´ú±í next£¨ÏÂÒ»ÐУ©£¬B ´ú±í backward£¨»Ø +ÍË£©£¬¶ø F Ôò´ú±í forward£¨Ç°½ø£©¡£ÕâЩ×éºÏ¼ü½ñºó½«ÓëÄãÐÎÓ°²»Àë¡£ + +>> °´¼¸´Î C-n °Ñ¹â±êÍùÏÂŲµ½ÕâÀï¡£ + +>> Óà C-f °Ñ¹â±êÒƶ¯µ½ÕâÒ»ÐУ¬È»ºóÔÙÓà C-p ÍùÉÏŲ¡£ + ×¢Òâ¹Û²ìµ±¹â±êÔÚÒ»ÐеÄÖÐÑëʱ C-p ÃüÁîµÄÐÐΪ¡£ + +ÿÐÐÎÄ×Ö¶¼ÒÔÒ»¸ö¡°»»Ðзû¡±½áÊø£¬¡°»»Ðзû¡±°ÑÐÐÓëÐÐÇø·Ö¿ªÀ´¡£ÎļþµÄ×îºó +Ò»ÐÐÒ²Ó¦¸ÃÒ²ÓÐÒ»¸ö»»Ðзû£¨²»¹ý Emacs ²¢²»Ç¿ÖÆÒªÇóÕâÒ»µã£©¡£ + +>> ÔÚÒ»ÐеÄÐÐÍ·ÊäÈë C-b¡£ + ¹â±êÓ¦¸Ã»áÒƶ¯µ½Ç°Ò»ÐеÄÐÐ⣬ÒòΪ¹â±êÔÚ»ØÍ˹ý³ÌÖÐÔ½¹ýÁË»»Ðзû¡£ + +ͬÑù C-f Ò²¿ÉÒÔÏñ C-b Ò»ÑùÔ½¹ý»»Ðзû¡£ + +>> Á¬°´¼¸´Î C-b£¬¸ÐÊÜһϹâ±êµÄÒƶ¯¡£ + È»ºó°´¼¸´Î C-f »Øµ½±¾ÐеÄÐÐβ¡£ + ÔÙ°´Ò»´Î C-f£¬¹â±ê»áÒƶ¯µ½ÏÂÒ»ÐС£ + +µ±ÄãÒƶ¯¹â±ê´©Ô½ÆÁÄ»µÄÉÏϱ߽çʱ£¬Ôڱ߽çÍâµÄÎÄ×Ö»áÒƶ¯µ½ÆÁÄ»ÄÚ£¬Õâ³ÆΪ +¡°¹ö¶¯¡±£¨scrolling£©¡£¹ö¶¯Ê¹µÃ¹â±ê¿ÉÒÔ±»Òƶ¯µ½ÎÄ×ÖÖеÄÈκÎλÖ㬲¢ÇÒ»¹ +²»»áÈùâ±êÅܵ½ÆÁÄ»Íâ±ßÈ¥¡£ + +>> Óà C-n ½«¹â±êÏÂÒÆ£¬Ò»Ö±Ô½¹ýÆÁÄ»±ß½ç£¬Í¬Ê±¹Û²ì·¢ÉúÁËʲô±ä»¯¡£ + +Èç¹ûÄãÏÓÒ»¸ö×Ö·ûÒ»¸ö×Ö·ûµØŲ¹â±êÌ«Âý£¬Ä㻹¿ÉÒÔÒ»¸ö´ÊÒ»¸ö´ÊµØÌø¡£M-f +(META-f) ¿ÉÒÔ½«¹â±êÍùÇ°Òƶ¯Ò»¸ö´Ê£¬¶ø M-b ÔòÊÇÍùºóÒÆ¡£¡¾ÕâÀïµÄ¡°´Ê¡±Ö¸ +Ó¢Îĵ¥´Ê£¬¶ÔÖÐÎÄÀ´Ëµ£¬ÔòÊÇÖ¸Òƶ¯µ½ÏÂÒ»¸ö±êµã·ûºÅ¡£¡¿ + +>> ÊÔÊÔ M-f ºÍ M-b¡£ + +Èç¹û¹â±êÍ£ÔÚÒ»¸ö´ÊµÄÖм䣬M-f »áÒƶ¯µ½Õâ¸ö´ÊµÄĩβ¡£Èç¹û¹â±ê´¦ÓÚ´ÊÓë´Ê +Ö®¼äµÄ¿Õ°×´¦£¬M-f »áÒƶ¯µ½ÏÂÒ»¸ö´ÊµÄĩβ¡£M-b µÄ¹¦ÄÜÀàËÆ£¬Ö»ÊÇ·½ÏòÏà·´¡£ + +>> °´¼¸´Î M-f ºÍ M-b£¬Öмä¼ÐÔÓһЩ C-f ºÍ C-b¡£ + Äã¿ÉÒԹ۲쵽 M-f ºÍ M-b ÔÚ²»Í¬Î»ÖÃÉÏËù±íÏÖ³öÀ´µÄ²»Í¬ÐÐΪ¡£ + +Çë×¢Òâ C-f ¡¢C-b ºÍ M-f ¡¢M-b Á½¶ÔÖ®¼äµÄÀà±È¹Øϵ¡£Í¨³£µÄ¹ßÀýÊÇ£ºMETA ϵ +ÁÐ×éºÏ¼üÓÃÀ´²Ù×÷¡°ÓÉÓïÑÔ¶¨ÒåµÄµ¥Î»£¨±ÈÈç´Ê¡¢¾ä×Ó¡¢¶ÎÂ䣩¡±£¬¶ø CONTROL +ϵÁÐ×éºÏ¼üÓÃÀ´²Ù×÷¡°ÓëÓïÑÔÎ޹صĻù±¾µ¥Î»£¨±ÈÈç×Ö·û¡¢Ðеȵȣ©¡±¡£ + +ÀàËƵĹßÀýÔÚ¡°ÐС±Óë¡°¾ä×Ó¡±Ö®¼äҲͬÑùÊÊÓãºC-a ºÍ C-e ¿ÉÒÔ½«¹â±êÒƶ¯µ½ +¡°Ò»ÐС±µÄÍ·²¿ºÍβ²¿£»¶ø M-a ºÍ M-e Ôò½«¹â±êÒƶ¯µ½¡°Ò»¾ä¡±µÄÍ·²¿ºÍβ²¿¡£ + +>> °´Á½´Î C-a£¬ÔÙ°´Á½´Î C-e¡£ + °´Á½´Î M-a£¬ÔÙ°´Á½´Î M-e¡£ + +ÏëÒ»ÏëΪʲôÖظ´µÄ C-a ÃüÁî»áûÓÐ×÷Ó㬶øÖظ´µÄ M-a ÃüÁîÔò»áÈùâ±ê²»¶Ï +µØ»ØÍ˵½ÉÏÒ»¸ö¾ä×Ó¡£ËäÈ»Õâ¸öÀà±È¹æÂɲ¢²»Ñϸñ£¬µ«ÊǺÜ×ÔÈ»¡£ + +¹â±êÍ£ÁôµÄλÖÃÒ²¿ÉÒÔ³Æ×÷¡°µãλ¡±£¨point£©¡£»òÕ߸ɴà˵£¬¹â±êָʾ³öÁËÆÁÄ» +ÉÏ¡°µãλ¡±ÔÚÎı¾ÖеÄλÖᣠ+ +ÕâÀï¶Ô¼òµ¥µÄ¹â±êÒƶ¯ÃüÁî×öÒ»¸ö×ܽᣬÆäÖÐÒ²°üÀ¨ÁËÕû´ÊºÍÕû¾äµÄÒƶ¯£º + + C-f ÏòÓÒÒƶ¯Ò»¸ö×Ö·û + C-b Ïò×óÒƶ¯Ò»¸ö×Ö·û + + M-f ÏòÓÒÒƶ¯Ò»¸ö´Ê¡¾¶ÔÖÐÎÄÊÇÒƶ¯µ½ÏÂÒ»¸ö±êµã·ûºÅ¡¿ + M-b Ïò×óÒƶ¯Ò»¸ö´Ê¡¾¶ÔÖÐÎÄÊÇÒƶ¯µ½ÉÏÒ»¸ö±êµã·ûºÅ¡¿ + + C-n Òƶ¯µ½ÏÂÒ»ÐÐ + C-p Òƶ¯µ½ÉÏÒ»ÐÐ + + C-a Òƶ¯µ½ÐÐÊ× + C-e Òƶ¯µ½ÐÐβ + + M-a Òƶ¯µ½¾äÊ× + M-e Òƶ¯µ½¾äβ + +>> °ÑÉÏÃæËùÓеÄÃüÁÁ·Ï°¼¸´Î£¬ÕâЩ¿É¶¼ÊÇ×î³£ÓõÄÃüÁî¡£ + +ÕâÀﻹҪ½éÉÜÁ½¸öÖØÒªµÄ¹â±êÒƶ¯ÃüÁM-< £¨META СÓںţ©¿ÉÒÔ½«¹â±êÒƶ¯µ½ +ËùÓÐÎÄ×ÖµÄ×ͷ£»M-> £¨META ´óÓںţ©¿ÉÒÔ½«¹â±êÒƶ¯µ½ËùÓÐÎÄ×ÖµÄ×îĩβ¡£ + +×¢Ò⣬Ôڴ󲿷ּüÅÌÉÏ£¬Ð¡Óںţ¨<£©ÐèÒªÓÃÉϵµ¼ü£¨Shift£©À´ÊäÈ룬ËùÒÔÔÚÕâ +Щ¼üÅÌÉÏÄãÓ¦¸ÃÓà Shift ¼üÀ´ÊäÈë M-<£¬Èç¹û²»°´ Shift ¼ü£¬ÄãÊäÈëµÄ»áÊÇ +M-comma£¨META ¶ººÅ£©¡£ + +>> ÊÔÒ»ÊÔ M-< £¬ÒƵ½±¾¿ìËÙÖ¸ÄϵÄ×ʼ¡£ + È»ºóÔÙ°´¼¸´Î C-v »Øµ½ÕâÀï¡£ + +>> ÊÔÒ»ÊÔ M-> £¬ÒƵ½±¾¿ìËÙÖ¸ÄϵÄ×îĩβ¡£ + È»ºóÔÙ°´¼¸´Î M-v »Øµ½ÕâÀï¡£ + +Èç¹ûÄãµÄ¼üÅÌÉÏÓз½Ïò¼üµÄ»°£¬Ò²¿ÉÒÔÓÃËüÃÇÀ´Òƶ¯¹â±ê¡£²»¹ýÎÒÃÇÓÐÈý¸öÀíÓÉ +ÍƼöÄãѧϰ C-b ¡¢C-f ¡¢C-n ¡¢ºÍ C-p£º£¨1£©ËüÃÇÔÚÈκμüÅÌÉ϶¼ÄÜÓᣣ¨2£© +µ±ÄãÊìÁ·Ê¹Óà Emacs Ö®ºó£¬Äã»á·¢ÏÖÓÃÕâЩ×éºÏ¼ü±ÈÓ÷½Ïò¼üÒª¿ìµÃ¶à£¬ÒòΪÄã +µÄÊÖ²»ÐèÒªÀ뿪´ò×ÖÇø¡££¨3£©Ò»µ©ÄãÏ°¹ßÁËʹÓÃÕâЩ×éºÏ¼ü£¬ÄãÒ²¿ÉÒÔºÜÈÝÒ×µØ +ÊÊÓ¦ÆäËü¸ü¸ß¼¶µÄ¹â±êÒƶ¯ÃüÁî¡£ + +´ó²¿·ÖµÄ Emacs ÃüÁî½ÓÊÜÊý×Ö²ÎÊý£¬²¢ÇÒ¶ÔÓÚ¶àÊýÃüÁî¶øÑÔ£¬ÕâЩÊý×Ö²ÎÊýµÄ×÷ +ÓÃÊÇÖ¸¶¨ÃüÁîµÄÖظ´´ÎÊý¡£ÎªÒ»¸öÃüÁîÖ¸¶¨Êý×Ö²ÎÊý£¨Ò²¾ÍÊÇÖظ´´ÎÊý£©µÄ·½·¨ +ÊÇ£ºÏÈÊäÈë C-u£¬È»ºóÊäÈëÊý×Ö×÷Ϊ²ÎÊý£¬×îºóÔÙÊäÈëÃüÁî¡£Èç¹ûÄãÓÐMETA £¨»ò +EDIT »ò ALT£©¼ü£¬ÄÇô»¹ÓÐÁíÒ»ÖÖ°ì·¨£º°´×¡ META ¼ü²»·Å£¬È»ºóÊäÈëÊý×Ö¡£²» +¹ýÎÒÃÇ»¹Êǽ¨ÒéÄãÓà C-u£¬ÒòΪËüÔÚÈκÎÖն˻úÉ϶¼ÄÜÓá£ÕâÖÖÊý×Ö²ÎÊýÒ²³ÆΪ +¡°Ç°×º²ÎÊý¡±£¬Òâ˼ÊÇ˵Õâ¸ö²ÎÊýÊÇÏÈÓÚʹÓÃËüµÄÃüÁî¶øÊäÈëµÄ¡£ + +¾ÙÀýÀ´Ëµ£¬ C-u 8 C-f »áÏòÇ°Òƶ¯ 8 ¸ö×Ö·û¡£ + +>> Ϊ C-n »òÕß C-p Ö¸¶¨Ò»¸öÊý×Ö²ÎÊý£¬ÕâÑùÄã¿ÉÒÔÖ»ÓÃÒ»¸öÃüÁî¾Í°Ñ¹â±êÒƶ¯ + µ½±¾Ðеĸ½½ü¡£ + +ËäÈ»´ó²¿·ÖÃüÁî°ÑÊý×Ö²ÎÊý½âÊÍΪÆäÖظ´´ÎÊý£¬µ«ÊÇÒ²ÓÐЩÃüÁîÀýÍ⣬ËüÃǽ«Êý +×Ö²ÎÊýÁí×öËüÓᣱÈÈçÓÐЩÃüÁÎÒÃÇÄ¿Ç°»¹Ã»Ñ§µ½£©½ö½ö½«Ç°×º²ÎÊý×÷Ϊһ¸ö +±êÖ¾¡ª¡ªÖ»Òª¸ø³öÓÐÒ»¸öǰ׺²ÎÊý£¬²»¹ÜÆäֵΪºÎ£¬Ëü¶¼»á¸Ä±äÃüÁîµÄ¹¦ÄÜ¡£ + +¶ø C-v ºÍ M-v ÔòÊôÓÚÁíÒ»ÖÖÀàÐ͵ÄÀýÍâ¡£µ±¸ø¶¨Ò»¸ö²ÎÊýʱ£¬ËüÃǽ«¹ö¶¯ÄãÖ¸ +¶¨µÄ¡°ÐÐÊý¡±£¬¶ø²»ÊÇ¡°ÆÁÊý¡±¡£¾ÙÀýÀ´Ëµ£¬C-u 8 C-v ½«ÆÁÄ»ÏòϹö¶¯ 8 ÐУ¬ +¶ø²»ÊÇ 8 ÆÁ¡£ + +>> ÏÖÔÚÊÔÊÔ¿´£¬ÊäÈë C-u 8 C-v¡£ + +Õâ¸öÃüÁîÓ¦¸ÃÒѾ­½«ÎÄ×ÖÏòÉϹö¶¯ÁË 8 ÐС£Èç¹ûÄãÏ뽫ËüÔٴεØÏòϹö¶¯£¬Äã¿É +ÒÔ¸ø¶¨Ò»¸ö²ÎÊýÈ»ºóÖ´ÐÐ M-v¡£ + +Èç¹ûÄãÕýÔÚʹÓÃÒ»¸ö´°¿Úϵͳ£¬±ÈÈç X11 »òÕß΢ÈíµÄ Windows£¬ÄÇôÔÚ Emacs +´°¿ÚµÄ±ßÔµÓ¦¸ÃÓÐÒ»¸ö³¤·½ÐεÄÇøÓò½Ð¡°¹ö¶¯Ìõ¡±£¬Äã¿ÉÒÔÓÃÊó±ê²Ù×ݹö¶¯ÌõÀ´ +¹ö¶¯ÎÄ×Ö¡£ + +>> ÊÔ×ÅÔÚ¡°¹ö¶¯ÌõÄڵķ´°×ÇøÓò¡±ÉÏ°´Ò»ÏÂÊó±êÖмü¡£ + ÎÄ×ÖÓ¦¸Ã»á¹ö¶¯µ½Êó±êËùָʾµÄλÖᣠ+ +>> µ±°´×¡Öмüʱ£¬ÊÔ׎«Êó±êÉÏÏÂÒƶ¯¡£ + Äã»á¿´µ½ÎÄ×ÖËæ×ÅÊó±êµÄÒƶ¯¶øÉÏϹö¶¯¡£ + ¡¾Windows °æ±¾·ûºÏ Windows ³ÌÐòµÄ´«Í³²Ù×÷Ï°¹ß£¬ÉÏÊö²Ù×÷²»ÊÊÓᣡ¿ + + +* ÔÚ EMACS ʧȥÏìÓ¦µÄʱºò£¨WHEN EMACS IS HUNG£© +----------------------------------------------- + +Èç¹û Emacs ¶ÔÄãµÄÃüÁîʧȥÏìÓ¦£¬Äã¿ÉÒÔÓà C-g À´°²È«µØÖÕÖ¹ÕâÌõÃüÁî¡£C-g +Ò²¿ÉÒÔÖÕÖ¹Ò»ÌõÖ´Ðйý¾ÃµÄÃüÁî¡£ + +C-g »¹¿ÉÒÔÈ¡ÏûÊý×Ö²ÎÊýºÍÖ»ÊäÈëµ½Ò»°ëµÄÃüÁî¡£ + +>> ÊäÈë C-u 100 É趨һ¸öֵΪ 100 µÄÊý×Ö²ÎÊý£¬È»ºó°´ C-g¡£ + ÏÖÔÚÔÙ°´ C-f£¬¹â±êÓ¦¸ÃÖ»»áÒƶ¯Ò»¸ö×Ö·û£¬ÒòΪÄãÒѾ­Óà C-g È¡ÏûÁ˲ÎÊý¡£ + +Èç¹ûÄ㲻СÐÄ°´ÁËһϠ£¬ÄãÒ²¿ÉÒÔÓà C-g À´È¡ÏûËü¡£ +¡¾Õâ¸ö˵·¨ËƺõÓÐÎÊÌ⣬ÒòΪ°´ÕÕÕâ¸ö°´¼ü˳ÐòÊäÈëµÄÓ¦¸ÃÊÇ C-M-g¡£ + È¡Ïû µÄÕýÈ·×ö·¨ÊÇÔÙÁ¬°´Á½´Î ¡£¡¿ + + +* ±»½ûÓõÄÃüÁDISABLED COMMANDS£© +----------------------------------- + +ÓÐһЩ Emacs ÃüÁî±»¡°½ûÓá±ÁË£¬ÒÔ±ÜÃâ³õѧÕßÔÚ²»Á˽âÆäÈ·Çй¦ÄܵÄÇé¿öÏÂÎó +ÓöøÔì³ÉÂé·³¡£ + +Èç¹ûÄãÓõ½ÁËÒ»¸ö±»½ûÓõÄÃüÁEmacs »áÏÔʾһ¸öÌáʾÏûÏ¢£¬¸æËßÄãÕâ¸öÃüÁî +µ½µ×ÊǸÉʲôµÄ£¬Ñ¯ÎÊÄãÊÇ·ñÒª¼ÌÐø£¬²¢Ôڵõ½ÄãµÄ¿Ï¶¨Ö®ºóÔÙÖ´ÐÐÕâÃüÁî¡£ + +Èç¹ûÄãÕæµÄÏëÓÃÕâÌõÃüÁÔÚ Emacs ѯÎÊÄãµÄʱºòÓ¦¸Ã°´¿Õ¸ñ¡£Ò»°ãÀ´Ëµ£¬Èç¹û +Äã²»ÏëÓ㬾Ͱ´¡°n¡±¡£ + +>> ÊÔÊÔ C-x C-l £¨ÕâÊÇÒ»¸ö±»½ûÓõÄÃüÁ + È»ºóÓà n À´»Ø´ðѯÎÊ¡£ + + +* ´°¸ñ£¨WINDOWS£© +----------------- + +Emacs ¿ÉÒÔÓжà¸ö´°¸ñ£¬Ã¿¸ö´°¸ñÏÔʾ²»Í¬µÄÎÄ×Ö¡£ºóÃæ»á½éÉÜÔõô¶Ô¸¶¶à¸ö´° +¸ñ£¬ÏÖÔÚÎÒÃÇÏÈѧ»áÈçºÎ¹Øµô¶àÓàµÄ´°¸ñ¡£ÆäʵҲºÜ¼òµ¥£º + + C-x 1 Ö»±£ÁôÒ»¸ö´°¸ñ£¨Ò²¾ÍÊǹصôÆäËüËùÓд°¸ñ£©¡£ + +Ò²¾ÍÊÇÏÈ°´ CONTROL-x È»ºóÔÙ°´ 1¡£C-x 1 »á±£Áô¹â±êËùÔڵĴ°¸ñ£¬²¢½«ÆäÀ©´ó +µ½Õû¸öÆÁÄ»£¬Í¬Ê±¹ØµôËùÓÐÆäËüµÄ´°¸ñ¡£ + +>> °Ñ¹â±êÒƵ½±¾ÐÐÈ»ºóÊäÈë C-u 0 C-l¡£ + +>> ÊäÈë CONTROL-h k CONTROL-f¡£¹Û²ìµ±Ò»¸öд°¸ñ³öÏÖʱµ±Ç°´°¸ñ£¨ÓÃÀ´ÏÔʾ + CONTROL-f ÃüÁîµÄÎĵµ£©ÊÇÈçºÎËõСµÄ¡£ + +>> ÊäÈë C-x 1 ¹ØµôÎĵµ´°¸ñ¡£ + +Õâ¸öÃüÁî¸úÏÈǰѧ¹ýµÄÃüÁ̫һÑù£¬ÒòΪËü°üº¬ÁËÁ½¸ö×Ö·û£¬ÒÔ CONTROL-x ¿ª +ʼ¡£ÓÐһϵÁÐÃüÁÊÇÒÔ CONTROL-x ¿ªÊ¼µÄ£¬ÕâЩÃüÁîÐí¶à¶¼¸ú¡°´°¸ñ¡¢Îļþ¡¢ +»º³åÇø¡¾»º³åÇø£¨buffer£©»áÔÚºóÎÄÏêϸ½éÉÜ¡¿¡±µÈµÈÖîÈç´ËÀàµÄ¶«Î÷Óйأ¬Æä +ÖÐÓÐЩÃüÁî¿ÉÄÜ°üº¬ÁË 2 ¸ö¡¢3 ¸ö»òÕß 4 ¸ö×Ö·û¡£ + + +* ²åÈëÓëɾ³ý£¨INSERTING AND DELETING£© +-------------------------------------- + +²åÈëÎÄ×ֺܼòµ¥£¬Ö±½ÓÇüüÅ̾ͿÉÒÔÁË¡£ÄãÄÜ¿´µ½µÄ×Ö·û£¬±ÈÈç A¡¢7¡¢* µÈµÈ£¬ +¶¼±» Emacs ÊÓΪÎÄ×Ö²¢ÇÒ¿ÉÒÔÖ±½Ó²åÈë¡£Çà £¨»Ø³µ¼ü£©»á²åÈëÒ»¸ö»» +Ðзû¡£ + +Äã¿ÉÒÔÓà À´É¾³ý×îºóÊäÈëµÄÒ»¸ö×Ö·û£¬Õâ¸ö¸úÄãÔÚ Emacs Ö®ÍâµÄÓà +·¨Ó¦¸ÃÒ»Ñù¡£Ò»°ãÀ´Ëµ ¾ÍÊÇλÓÚ ¼üÉÏ·½Ä³´¦µÄÒ»¸ö´ó¿éÍ· +µÄ¼ü£¬Í¨³£±»±êʾΪ¡°Delete¡±¡¢¡°Del¡±»òÕß¡°Backspace¡±¡£ + +Èç¹ûÄãÕÒµ½ÁË¡°Backspace¡±¼ü£¬ÄÇôËüÓ¦¸Ã¾ÍÊÇ £»ÕâʱÄÄÅÂÄãÓÖÔÚ±ð +µÄµØ·½ÕÒµ½ÁËÒ»¸ö¡°Del¡±¼ü£¬ÄÇôËüÒ²Ó¦¸Ã²»ÊÇ ¡£ + +Ò»ÖÖ¸üͨÓõÄ˵·¨ÊÇ£¬ ½«É¾³ýλÓÚ¹â±êÇ°µÄÒ»¸ö×Ö·û¡£ + +>> ÏÖÔÚ¾ÍÀ´ÊÔÊÔ¡ª¡ªÇõã×Ö£¬È»ºó°´¼¸Ï ɾ³ýËüÃÇ¡£ + ²»Óõ£ÐÄÎļþ±»Ð޸ģ¬Äã×öʲô¶¼Ã»¹Øϵ£¬ÕâÀï¾ÍÊÇר¸øÄãÁ·Ï°Óõġ£ + +Èç¹ûÒ»ÐÐÎÄ×ֺܳ¤¡¢³¬³öÁË´°¸ñµÄ¿í¶È£¬ÏÔʾ²»ÏµIJ¿·Ö»áÔÚ½ôÁÚµÄÏÂÒ»ÐмÌÐø +ÏÔʾ¡£Õâʱ»áÓÐÒ»¸ö·´Ð±Ïߣ¨ÔÚ¿ØÖÆ̨ÏÂÊÇ·´Ð±Ïߣ¬Èç¹ûÄãÓÃͼÐδ°¿Úϵͳ£¬Ôò +Ó¦¸ÃÊÇÒ»¸öССµÄתÍä¼ýÍ·£©ÏÔʾÔÚÓÒ±ßÑØ£¬±íÃ÷ÕâÊÇijһÐеĽÓÐøÏÔʾ¡£ + +>> ÊäÈëÎÄ×Ö£¬Ò»Ö±µ½ÆÁÄ»µÄÓұ߽磬Ȼºó¼ÌÐø£¬Äã»á¿´µ½Ò»¸ö½ÓÐøÐгöÏÖ¡£ + +>> Óà ɾµôһЩÎÄ×Ö£¬Ö±µ½´ËÐ㤶ÈСÓÚ´°¸ñ¿í¶È£¬½ÓÐøÐоÍÏûʧÁË¡£ + +»»Ðзû¸úÆäËü×Ö·ûÒ»Ñù¿ÉÒÔ±»É¾³ý¡£Á½ÐÐÖмäµÄ»»Ðзû±»É¾³ýºó£¬ÕâÁ½Ðн«»áºÏ +²¢³ÉÒ»ÐС£Èç¹ûºÏ²¢ºóµÄÕâÒ»ÐÐÌ«³¤£¬³¬³öÁË´°¸ñ¿í¶È£¬Ëü¾Í»áÒÔÒ»¸ö½ÓÐøÐÐÀ´ +ÏÔʾ¡£ + +>> Òƶ¯¹â±êµ½Ä³ÐеĿªÍ·²¢ÊäÈë ¡£ + Õâʱ¸ÃÐн«ÓëÆäÇ°Ò»ÐÐÒ»Æ𱻺ϲ¢ÎªÒ»ÐС£ + +>> ÊäÈë ÖØвåÈëÄã¸Õ²Åɾ³ýµÄ»»Ðзû¡£ + +Ç°Ãæ½²¹ý£¬´ó²¿·ÖµÄ Emacs ÃüÁ¿ÉÒÔÖ¸¶¨Öظ´´ÎÊý£¬ÕâÆäÖÐÒ²°üÀ¨ÊäÈë×Ö·ûµÄ +ÃüÁî¡£Öظ´Ö´ÐÐÊäÈë×Ö·ûµÄÃüÁîʵ¼ÊÉϾÍÊÇÊäÈë¶à¸öÏàͬµÄ×Ö·û¡£ + +>> ÊÔÊÔ C-u 8 *£¬Õ⽫»á²åÈë ********¡£ + +ºÃ£¬ÏÖÔÚÄãÓ¦¸ÃÒѾ­ÕÆÎÕÁË×î»ù±¾µÄµÄÎı¾²åÈëºÍÐ޸ŦÄÜ£¬Æäʵɾ³ý»¹¿ÉÒÔ +¡°ÒÔ´ÊΪµ¥Î»¡±½øÐУ¬ÏÂÃæÊÇÒ»¸ö¹ØÓÚ¡°É¾³ý¡±²Ù×÷µÄС½á£º + + ɾ³ý¹â±êÇ°µÄÒ»¸ö×Ö·û + C-d ɾ³ý¹â±êºóµÄÒ»¸ö×Ö·û + + M- ÒƳý¹â±êÇ°µÄÒ»¸ö´Ê + M-d ÒƳý¹â±êºóµÄÒ»¸ö´Ê + + C-k ÒƳý´Ó¹â±êµ½¡°ÐÐβ¡±¼äµÄ×Ö·û + M-k ÒƳý´Ó¹â±êµ½¡°¾äβ¡±¼äµÄ×Ö·û + +¡¾¿ÉÄÜÄãÒѾ­×¢Òâµ½ÁË¡°É¾³ý£¨delete£©¡±ºÍ¡°ÒƳý£¨kill£©¡±µÄÓôÊÇø±ð£¬ºó +ÎÄ»áÓÐÏêϸ˵Ã÷¡£¡¿ + +×¢Òâ¡° ºÍ C-d¡±»¹ÓС°M- ºÍ M-d¡±ÊǸù¾ÝÇ°Êö¹ßÀý´Ó C-f +ºÍ M-f ÑÜÉú³öÀ´µÄ£¨Æäʵ²»ÊÇ¿ØÖÆ×Ö·û£¬ÎÒÃÇÏȺöÂÔÕâÒ»µã£©¡£C-k +ºÍ M-k µÄ¹ØϵÔÚijÖ̶ֳÈÉÏÓë C-e ºÍ M-e Ò»Ñù¡ª¡ªÈç¹û°Ñ¡°Ò»ÐС±ºÍ¡°Ò»¾ä¡± +×÷Ò»¸öÀà±ÈµÄ»°¡£ + +ÄãÒ²¿ÉÒÔÓÃÒ»ÖÖͨÓõİ취À´ÒƳý»º³åÇøÀïµÄÈκÎÒ»²¿·Ö£ºÊ×ÏȰѹâ±êÒƶ¯µ½Äã +ÏëÒªÒƳýµÄÇøÓòµÄÒ»¶Ë£¬È»ºó°´ C-@ »ò C-SPC£¨ÈÎÒ»¼´¿É£¬SPCÖ¸¿Õ¸ñ£©¡¾×¢Ò⣬ +C-SPC ÍùÍù±»ÖÐÎÄÓû§É趨³ÉÊäÈë·¨Èȼü£¬Èç¹ûÕâÑù£¬C-SPC ¾Í±»ÏµÍ³À¹½Ø¶øÎÞ +·¨´«µÝ¸ø Emacs ÁË£¬Òò´ËÕâÀﻹÊÇÍƼöʹÓÃC-@¡£¡¿£¬È»ºó½«¹â±êÒƶ¯µ½ÁíÒ»¶Ë£¬ +ÔÙ°´ C-w ¾Í¿ÉÒÔ°ÑλÓÚÕâÁ½µãÖ®¼äµÄËùÓÐÎÄ×ÖÒƳýÁË¡£ + +>> Òƶ¯¹â±êµ½ÉÏÒ»¶Î¿ªÍ·µÄ¡°Ä㡱×Ö¡£ +>> ÊäÈë C-@ ¡£Emacs Ó¦¸Ã»áÔÚÆÁÄ»µÄÏ·½ÏÔʾһ¸ö¡°Mark set¡±µÄÏûÏ¢¡£ +>> Òƶ¯¹â±êµ½µÚ¶þÐÐÖеġ°¶Ë¡±×Ö¡£ +>> ÊäÈë C-w£¬´Ó¡°Ä㡱¿ªÊ¼µ½¡°¶Ë¡±Ö®Ç°µÄÎÄ×Ö±»È«²¿ÒƳý¡£ + +×¢Òâ,¡°ÒƳý£¨kill£©¡±ºÍ¡°É¾³ý£¨delete£©¡±µÄ²»Í¬ÔÚÓÚ±»ÒƳýµÄ¶«Î÷¿ÉÒÔÕÒ»Ø +À´£¬¶ø±»É¾³ýµÄ¾Í²»ÐÐÁË¡£¡¾Êµ¼ÊÉÏ£¬ÒƳýµôµÄ¶«Î÷ËäÈ»¿´ÆðÀ´¡°Ïûʧ¡±ÁË£¬µ« +ʵ¼ÊÉϱ» Emacs ¼Ç¼ÁËÏÂÀ´£¬Òò´Ë»¹¿ÉÒÔÕÒ»ØÀ´£»¶øɾ³ýµôµÄ¶«Î÷ËäȻҲ¿ÉÄÜ»¹ +ÔÚÄÚ´æÀµ«ÊÇÒѾ­±» Emacs¡°Å×Æú¡±ÁË£¬ËùÒÔ¾ÍÕÒ²»»ØÀ´ÁË¡£¡¿ÖØвåÈë±»ÒÆ +³ýµÄÎÄ×Ö³ÆΪ¡°Õٻأ¨yank£©¡±¡£Ò»°ã¶øÑÔ£¬ÄÇЩ¿ÉÄÜÏû³ýºÜ¶àÎÄ×ÖµÄÃüÁî»á°Ñ +Ïû³ýµôµÄÎÄ×ּǼÏÂÀ´£¨ËüÃDZ»É趨³ÉÁË¡°¿ÉÕٻء±£©£¬¶øÄÇЩֻÏû³ýÒ»¸ö×Ö·û +»òÕßÖ»Ïû³ý¿Õ°×µÄÃüÁî¾Í²»»á¼Ç¼±»Ïû³ýµÄÄÚÈÝ£¨×ÔÈ»ÄãÒ²¾ÍÎÞ·¨ÕÙ»ØÁË£©¡£ + +>> Òƶ¯¹â±êµ½Ò»·Ç¿Õ°×ÐеÄÐÐÍ·£¬È»ºóÊäÈë C-k ÒƳýÄÇÒ»ÐÐÉϵÄÎÄ×Ö¡£ + +>> ÔÙ´Î C-k£¬Äã¿ÉÒÔ¿´µ½ËüÒƳýÁ˸úÔÚÄÇÒ»ÐкóÃæµÄ»»Ðзû¡£ + +×¢Ò⣬µ¥¶ÀµÄ C-k »á°ÑÒ»ÐеÄÄÚÈÝÒƳý£¬¶øµÚ¶þ¸ö C-k Ôò»áÒƳý»»Ðзû£¬²¢Ê¹ +ÆäºóËùÓеÄÐж¼ÏòÉÏÒƶ¯¡£C-k ´¦ÀíÊý×Ö²ÎÊýµÄ·½Ê½ºÜÌرð£¬Ëü»á°Ñ²ÎÊýÖ¸¶¨µÄ +ÄÇô¶àÐÐÁ¬Í¬ÆäºóµÄ»»ÐзûÒ»ÆðÒƳý£¬¶ø²»½ö½öÊÇÖظ´ C-k ¶øÒÑ¡£±ÈÈç C-u 2 +C-k »á°ÑÁ½ÐÐÒÔ¼°ËüÃǵĻ»ÐзûÒƳý£»¶øÈç¹ûÖ»ÊÇÊäÈë C-k Á½´ÎÏÔÈ»²»ÊÇÕâ¸ö½á +¹û¡£ + +½«±»ÒƳýµÄÎÄ×Ö»Ö¸´µÄ¶¯×÷³ÆΪ¡°Õٻأ¨yanking£©¡±¡££¨¾ÍºÃÏñ°Ñ±ðÈË´ÓÄãÉí±ß +ÒÆ×ߵĶ«Î÷ÓÖÃÍÁ¦µØÀ­»ØÀ´¡££©Äã¿ÉÒÔÔÚÄãɾ³ýÎÄ×ֵĵط½Õٻأ¬Ò²¿ÉÒÔÔÚ±ðµÄ +µØ·½Õٻأ¬»¹¿ÉÒÔ¶à´ÎÕÙ»ØͬÑùµÄÎÄ×ÖÒԵõ½ËüµÄ¶à¸ö¿½±´¡£ + +ÕٻصÄÃüÁîÊÇ C-y¡£Ëü»áÔÚ¹â±êËùÔÚ´¦²åÈëÄã×îºóÒƳýµÄÎÄ×Ö¡£ + +>> ÊÔÊÔ¿´£¬ÊäÈë C-y ½«ÎÄ×ÖÕٻء£ + +Èç¹ûÄãÒ»´ÎÁ¬°´Á˺ü¸Ï C-k£¬ÄÇôËùÓб»ÒƳýµÄÐлᱻ´æ´¢ÔÚÒ»Æð£¬Ö»ÒªÒ»¸ö +C-y ¾Í¿ÉÒÔ°ÑËüÃǶ¼Õٻء£ + +>> ÔÚÕâÀïÊÔÊÔ£¬Á¬Ðø°´¼¸´Î C-k¡£ + +ÏÖÔÚÔÙÀ´»Ö¸´¸Õ¸Õ±»ÎÒÃÇÒƳýµÄÎÄ×Ö£º + +>> °´ C-y¡£È»ºó°Ñ¹â±êÍùÏÂÒƶ¯¼¸ÐУ¬ÔÙ°´Ò»´Î C-y¡£ + ÏÖÔÚÄãÓ¦¸ÃÖªµÀÔõô¸´ÖÆÎÄ×ÖÁË¡£ + +C-y ¿ÉÒÔÕÙ»Ø×î½üÒ»´ÎÒƳýµÄÄÚÈÝ£¬ÄÇÈçºÎÕÙ»ØÇ°¼¸´ÎÒƳýµÄÄÚÈÝÄØ£¿ËüÃǵ±È» +ûÓжª£¬Äã¿ÉÒÔÓà M-y À´ÕÙ»ØËüÃÇ¡£ÔÚÓà C-y ÕÙ»Ø×î½üÒƳýµÄÎÄ×ÖÖ®ºó£¬½ô½Ó +×ÅÔÙ°´ M-y ¾Í¿ÉÒÔÕÙ»ØÔÙÇ°Ò»´Î±»ÒƳýµÄÄÚÈÝ£¬ÔÙ°´Ò»´Î M-y ÓÖ¿ÉÒÔÕÙ»ØÔÙÉÏ +Ò»´ÎµÄ¡­¡­Á¬ÐøʹÓà M-y Ö±µ½ÕÒµ½ÄãÏëÒªÕٻصĶ«Î÷£¬È»ºóʲôҲ²»ÓÃ×ö£¬¼ÌÐø +±à¼­¾ÍÐÐÁË¡£ + +Èç¹ûÁ¬Ðø°´ M-y ºÜ¶à´Î£¬Äã¿ÉÄÜ»á»Øµ½Æðʼµã£¬Ò²¾ÍÊÇ×î½üÒƳýµÄÎÄ×Ö¡£ +¡¾¿´µÃ³öÕâʵ¼ÊÉÏÊÇÒ»¸ö»·¡£¡¿ + +>> ÒƳýÒ»ÐУ¬Òƶ¯Ò»Ï¹â±ê£¬È»ºóÔÙÒƳýÁíÍâÒ»ÐС£ + °´ C-y ½«µÚ¶þ´ÎÒƳýµÄÄÇÐÐÕÙ»ØÀ´¡£ + ½ô½Ó×ÅÔÙ°´ M-y£¬Ëü½«»á±»µÚÒ»´ÎÒƳýµÄÄÇÐÐÈ¡´ú¡£ + ÊÔ×ÅÔÙ°´¼¸Ï M-y ¿´¿´»á·¢Éúʲô¡£ + ÔÙ¼ÌÐø£¬Ö±µ½µÚ¶þÐб»ÕÙ»ØÀ´£¬È»ºóÔÙ×ö¸ö¼¸´Î¡£ + Èç¹û¸ÐÐËȤ£¬Äã¿ÉÒÔÊÔןø M-y Ö¸¶¨Ò»¸öÕýµÄ»ò¸ºµÄ²ÎÊý¡£ + + +* ³·Ïú£¨UNDO£© +-------------- + +Èç¹ûÄãÐÞ¸ÄÁËÒ»¶ÎÎÄ×Ö£¬ÓÖ¾õµÃ¸ÄµÃ²»ºÃ£¬¿ÉÒÔÓà undo ÃüÁî½øÐг·Ïú£º +C-x u¡£ + +ͨ³£ C-x u »áÏû³ýÒ»¸öÃüÁîËùÔì³ÉµÄËùÓиı䣻Èç¹ûÄãÔÚÒ»ÐÐÖÐÁ¬Ðø¶à´ÎµØʹÓà +C-x u£¬Äã»á°ÑÒÔÇ°µÄÃüÁîÒ²ÒÀ´Î³·Ïú¡£ + +µ«ÊÇÓÐÁ½¸öÀýÍ⣺ +1£© ûÓиıäÎÄ×ÖµÄÃüÁî²»Ë㣨°üÀ¨¹â±êÒƶ¯ÃüÁîºÍ¹ö¶¯ÃüÁ +2£© ´Ó¼üÅÌÊäÈëµÄ×Ö·ûÒÔ×éΪµ¥Î»¡ª¡ªÃ¿×é 20 ¸ö×Ö·û¡ª¡ªÀ´½øÐд¦Àí¡£ + £¨ÕâÊÇΪÁ˼õÉÙÄãÔÚ³·Ïú¡°²åÈëÎÄ×Ö¡±¶¯×÷ʱÐèÒªÊäÈë C-x u µÄ´ÎÊý£© + +>> Óà C-k ½«ÕâÒ»ÐÐÒƳý£¬È»ºóÊäÈë C-x u £¬Ëü»áÔٴγöÏÖ¡£ + +C-_ Ò²Êdz·ÏúÃüÁËüµÄ×÷Óøú C-x u Ò»Ñù£¬µ«ÊÇËü±È½ÏÈÝÒ׶à´ÎÊäÈë¡£C-_ µÄ +ȱµãÊÇÔÚijЩ¼üÅÌÉÏ¿ÉÄܲ»Ì«ÈÝÒ×°´£¬ÕâÒ²ÕýÊÇÎÒÃÇͬʱÌṩ C-x u µÄÔ­Òò¡£ÔÚ +ijЩÖÕ¶ËÉÏ£¬Äã¿ÉÒÔ°´×¡ CONTROL ÔÙ°´¡°/¡±À´ÊäÈë C-_¡£ + +Êý×Ö²ÎÊý¶ÔÓÚ C-_ ºÍ C-x u µÄÒâÒåÊÇÖ´Ðг·ÏúµÄÖظ´´ÎÊý¡£ + + +* Îļþ£¨FILE£© +-------------- + +Ïë±£´æ¹¤×÷³É¹û¾ÍÒª¼ÇµÃ´æÅÌ£¬·ñÔòÒ»µ©Í˳ö Emacs Äã±à¼­µÄÎÄ×־ͻᶪʧ¡£Òª +´æÅÌ£¬¾ÍÒªÔڱ༭ǰ¡°Ñ°ÕÒ¡±µ½Ò»¸ö´æÅÌÎļþ¡££¨Õâ¸ö¹ý³Ìͨ³£Ò²±»³ÆΪ¡°·ÃÎÊ¡± +Îļþ¡££© + +Ñ°ÕÒµ½Ò»¸öÎļþÒâζ×ÅÄã¿ÉÒÔÔÚ Emacs Àï²é¿´Õâ¸öÎļþµÄÄÚÈÝ¡£´ÓÐí¶à½Ç¶È¿´£¬ +Õâ¾ÍµÈÓÚÄãÔÚÖ±½Ó±à¼­Õâ¸öÎļþ£¬Ö»ÊÇÄãËù×öµÄÐÞ¸ÄÖ»ÓÐÔÚ¡°´æÅÌ¡±µÄʱºò²Å»á +±»Ð´ÈëÎļþ¡£Ò²ÕýÒòΪÈç´Ë£¬Äã¿ÉÒÔ¶ªÆúÒ»¸öдµ½Ò»°ëµÄÎļþ¶ø²»±Ø°ÑÕâ¸ö²Ðȱ +ÎļþÒ²±£´æµ½¼ÆËã»úÉÏ¡£ÔÚ´æÅ̵Äʱºò£¬Emacs »á°Ñ´æÅÌÇ°µÄÎļþÖØÃüÃû±£´æ£¬ +ÒÔ·ÀÄã¸ÄÍêÖ®ºóÓÖÏë·´»Ú¡£ + +ÔÚÆÁÄ»µÄÏ·½£¬ÄãÓ¦¸ÃÄܹ»¿´µ½Í·Î²¶¼ÊǶÌÏß¡°-¡±µÄÒ»ÐУ¬ÐÐÊ×ͨ³£ÊÇһЩÖîÈç +¡°--:-- TUTORIAL.cn¡±µÄÎÄ×Ö£¬ÕâЩÎÄ×Ö´ú±íÁËÄ㵱ǰÕýÔÚ·ÃÎʵÄÎļþ¡£±ÈÈçÄã +ÏÖÔÚÕýÔÚ·ÃÎʵÄÎļþ½Ð¡°TUTORIAL.cn¡±£¬ËüÖ»ÊÇÒ»¸ö¸øÄãÁÙʱʹÓõĿ½±´¡£Ã¿µ± +Emacs Ñ°ÕÒµ½Ò»¸öÎļþ£¬ÎļþÃû¾Í»á³öÏÖÔÚÕâ¸öλÖᣠ+ +Ñ°ÕÒÎļþµÄÃüÁîÓÐÒ»¸öÌص㣬ÄǾÍÊÇÄã±ØÐë¸ø³öÎļþÃû¡£ÎÒÃdzÆÕâ¸öÃüÁî¡°´ÓÖÕ +¶Ë¶ÁÈëÁËÒ»¸ö²ÎÊý¡±£¨ÔÚÕâÀÕâ¸ö²ÎÊýÏÔÈ»¾ÍÊÇÎļþÃû£©¡£ÔÚÄãÊäÈëÕâÌõÃüÁî +Ö®ºó£º + + C-x C-f Ñ°ÕÒÒ»¸öÎļþ + +Emacs »áÌáʾÄãÊäÈëÎļþÃû¡£ÄãÊäÈëµÄÎļþÃû»á³öÏÖÔÚÆÁÄ»×îµ×¶ËµÄÒ»ÐУ¬ÕâÒ» +Ðб»³ÆΪС»º³å£¨minibuffer£©£¬ÔÚС»º³åÀïÄã¿ÉÒÔʹÓÃͨ³£µÄ Emacs ±à¼­ÃüÁî +À´±à¼­ÎļþÃû¡£ + +ÔÚС»º³åÀïÊäÈëÎļþÃû£¨ÆäʵÊäÈëÆäËü¶«Î÷Ò²Ò»Ñù£©Ê±¿ÉÒÔÓà C-g È¡Ïû¡£ + +>> ÊäÈë C-x C-f£¬È»ºóÊäÈë C-g + Õâ»á¹ØµôС»º³å£¬Í¬Ê±Ò²»áÈ¡ÏûʹÓÃС»º³åµÄ C-x C-f ÃüÁî¡£ + µ±È»ÁË£¬ÄãҲûÓÐÕÒÈκÎÎļþ¡£ + +Óà ½áÊøÎļþÃûµÄÊäÈë¡£ÕâÖ®ºó C-x C-f ÃüÁʼ¹¤×÷²¢ÕÒµ½ÄãÖ¸¶¨µÄ +Îļþ¡£Ð¡»º³åÔÚ C-x C-f ÃüÁî½áÊøÖ®ºóÒ²»áÏûʧ¡£ + +Õ£ÑÛ¼äÎļþ¾Í±»ÏÔʾÔÚÆÁÄ»ÉÏ£¬Äã¿ÉÒÔ¿ªÊ¼±à¼­ÁË¡£´æÅÌÓÃÕâÌõÃüÁ + + C-x C-s ´¢´æÕâ¸öÎļþ + +ÕâÌõÃüÁî°Ñ Emacs ÖеÄÎÄ×Ö´æ´¢µ½ÎļþÖС£µÚÒ»´Î´æÅ̵Äʱºò Emacs »á½«Ô­ÎÄ +¼þÖØÃüÃûÒÔ±¸·Ý¡£ÖØÃüÃûµÄ¹æÔòͨ³£ÊÇÔÚÔ­ÎļþÃûÖ®ºóÌí¼ÓÒ»¸ö¡°~¡±×Ö·û¡£ +¡¾¶ÔÐí¶àÈËÀ´Ëµ£¬ÕâÊÇÒ»¸ö·³È˵ÄÌØÐÔ£¬¹ØµôÎļþ±¸·Ý¿ÉÒÔÓÃÈçÏÂÃüÁ + M-x customize-variable make-backup-files ¡¿ + +´æÅ̽áÊøºó£¬Emacs »áÏÔʾдÈëÎļþµÄÎļþÃû¡£Äã×îºÃÑø³É¾­³£´æÅ̵ÄÏ°¹ß£¬Õâ +¿ÉÒÔ¼õÉÙϵͳ±ÀÀ£ºÍËÀ»ú¸øÄã´øÀ´µÄËðʧ¡£ + +>> ÊäÈë C-x C-s °Ñ±¾¿ìËÙÖ¸ÄÏ´æÏÂÀ´¡£ + Äã»áÔÚÆÁÄ»µÄÏ·½¿´µ½Ò»ÌõÏûÏ¢£º¡°Wrote ...TUTORIAL.cn¡±¡£ + +×¢Ò⣺ÔÚijЩÖÕ¶ËÏ£¬ÊäÈë C-x C-s »á¶³½áÆÁÄ»¡¾ÆÁĻûÓÐÈκÎÊä³ö¡¿£¬Ê¹Äã¿´ +²»µ½ Emacs µÄÈκα仯¡£ÆäÔ­ÒòÊDzÙ×÷ϵͳµÄ¡°Á÷Á¿¿ØÖÆ¡±¹¦ÄÜÀ¹½ØÁË C-s ²¢ +¶³½áÁËÆÁÄ»¡£Óà C-q ¿ÉÒÔ½â³ýÆÁÄ»¶³½á¡£Òª½â¾öÕâ¸öÎÊÌ⣬Çë²Î¿¼ Emacs ÊÖ²á +ÀïµÄ¡°Spontaneous Entry to Incremental Search¡±Ò»½Ú¡¾Emacs ÊÖ²á¿ÉÄÜ»¹Ã» +ÓÐÖÐÎÄ·­Òë¡¿£¬ÄÇÀïÌṩÁËһЩÓÐÓõĽ¨Òé¡£ + +Äã²»µ«¿ÉÒÔÑ°ÕÒÒ»¸öÒÑÓеÄÎļþÀ´²é¿´»ò±à¼­£¬»¹¿ÉÒÔÑ°ÕÒÒ»¸ö²»´æÔÚµÄÎļþ¡£ +ʵ¼ÊÉÏÕâÕýÊÇ Emacs ´´½¨ÐÂÎļþµÄ·½·¨£ºÕÒµ½²»´æÔÚµÄÐÂÎļþ¡£Ö»ÓÐÔÚ´æÅ̵Äʱ +ºò£¬Emacs ²Å»áÕæÕý´´½¨Õâ¸öÎļþ¡£¶øÔÚÕâÖ®ºóµÄÒ»Çо͸ú±à¼­Ò»¸öÒÑÓÐÎļþû +ÓÐÇø±ðÁË¡£ + + +* »º³åÇø£¨BUFFER£© +------------------ + +Äã¿ÉÒÔÓà C-x C-f ÕÒµ½²¢´ò¿ªµÚ¶þ¸öÎļþ£¬µ«µÚÒ»¸öÎļþÈÔÈ»ÔÚ Emacs ÖС£Òª +ÇлصÚÒ»¸öÎļþ£¬Ò»ÖÖ°ì·¨ÊÇÔÙÓÃÒ»´Î C-x C-f¡£ÕâÑù£¬Äã¾Í¿ÉÒÔÔÚ Emacs ÖÐͬ +ʱ´ò¿ª¶à¸öÎļþ¡£ + +>> Óà C-x C-f foo µÄ·½Ê½½¨Á¢Ò»¸öÃûΪ¡°foo¡±µÄÎļþ¡£ + ÊäÈëһЩÎÄ×Ö£¬ÔÙÓà C-x C-s ±£´æÎļþ¡°foo¡±¡£ + ×îºó£¬ÊäÈë C-x C-f TUTORIAL.cn »Øµ½ÕâÀï¡£ + +Emacs °Ñÿ¸ö±à¼­ÖеÄÎļþ¶¼·ÅÔÚÒ»¸ö³ÆΪ¡°»º³åÇø£¨buffer£©¡±µÄµØ·½¡£Ã¿Ñ° +ÕÒµ½Ò»¸öÎļþ£¬Emacs ¾ÍÔÚÆäÄÚ²¿¿ª±ÙÒ»¸ö»º³åÇø¡£ÓÃÏÂÃæµÄÃüÁî¿ÉÒÔÁгöµ±Ç° +ËùÓеĻº³åÇø£º + + C-x C-b Áгö»º³åÇø + +>> ÏÖÔÚ¾ÍÊÔһϠC-x C-b + +¹Û²ìһϻº³åÇøÊÇÈçºÎ±»ÃüÃûµÄ£¬ËüºÜ¿ÉÄܸúÓëÆä¶ÔÓ¦µÄÎļþͬÃû¡£Êµ¼ÊÉÏ£¬Ò» +¸ö Emacs ´°¸ñÀïµÄÈκÎÎÄ×Ö¶¼ÊÇij¸ö»º³åÇøµÄÒ»²¿·Ö¡£ + +>> ÊäÈë C-x 1 À뿪»º³åÇøÁбí + +²»¹Ü´æÔÚ¶àÉÙ»º³åÇø£¬ÈκÎʱºò¶¼Ö»ÄÜÓÐÒ»¸ö¡°µ±Ç°¡±»º³åÇø£¬Ò²¾ÍÊÇÄãÕýÔÚ±à +¼­µÄÕâ¸ö¡£Èç¹ûÄãÏë±à¼­ÆäËüµÄ»º³åÇø£¬¾Í±ØÐë¡°Çл»¡±¹ýÈ¥¡£ÉÏÃæ½²¹ý£¬Óà +C-x C-f ÊÇÒ»ÖÖ°ì·¨¡£²»¹ý»¹ÓÐÒ»¸ö¸ü¼òµ¥µÄ°ì·¨£¬ÄǾÍÊÇÓà C-x b¡£ÓÃÕâÌõÃü +ÁÄã±ØÐëÊäÈ뻺³åÇøµÄÃû³Æ¡£ + +>> ÊäÈë C-x b foo ÒԻص½Îļþ¡°foo¡±µÄ»º³åÇø¡£ + È»ºóÊäÈë C-x b TUTORIAL.cn »Øµ½ÕâÀï¡£ + +´ó¶àÊýÇé¿öÏ£¬»º³åÇøÓë¸úÆä¶ÔÓ¦µÄÎļþÊÇͬÃûµÄ£¨²»°üÀ¨Ä¿Â¼Ãû£©£¬²»¹ýÕâÒ² +²»ÊǾø¶ÔµÄ¡£Óà C-x C-b µÃµ½µÄ»º³åÇøÁбí×ÜÊÇÏÔʾ»º³åÇøÃû¡£ + +ÄãÔÚ Emacs ´°¸ñÀï¿´µ½µÄ¡°ÈκΡ±ÎÄ×Ö¶¼Ò»¶¨ÊôÓÚij¸ö»º³åÇø¡£È»¶ø£¬»º³åÇøδ +±ØÓжÔÓ¦Îļþ£º±ÈÈçÏÔʾ»º³åÇøÁбíµÄ»º³åÇø¾ÍÊÇÕâÑù¡£ÔÙ±ÈÈç¡°*Messages*¡± +»º³åÇøҲûÓжÔÓ¦Îļþ£¬Õâ¸ö»º³åÇøÀï´æ·ÅµÄ¶¼ÊÇÔÚ Emacs µ×²¿³öÏÖµÄÏûÏ¢¡£ + +>> ÊäÈë C-x b *Messages* ³ò³òÏûÏ¢»º³åÇøÀﶼÓÐʲô¶«Î÷¡£ + È»ºóÔÙÊäÈë C-x b TUTORIAL.cn »Øµ½ÕâÀï¡£ + +Èç¹ûÄã¶Ôij¸öÎļþ×öÁËЩÐ޸ģ¬È»ºóÇл»µ½ÁíÒ»¸öÎļþ£¬Õâ¸ö¶¯×÷²¢²»»á°ïÄã°Ñ +Ç°Ò»¸öÎļþ´æÅÌ¡£¶ÔµÚÒ»¸öÎļþµÄÐÞ¸ÄÈÔÈ»½ö´æÔÚÓÚ Emacs ÖУ¬Ò²¾ÍÊÇÔÚËü¶ÔÓ¦ +µÄ»º³åÇøÀï¡£²¢ÇÒ£¬¶ÔµÚ¶þ¸öÎļþµÄÐÞ¸ÄÒ²²»»áÓ°Ïìµ½µÚÒ»¸öÎļþ¡£ÕâºÜÓÐÓ㬠+µ«ÊÇҲͦÂé·³£ºÒòΪÈç¹ûÄãÏëÒª´æ´¢µÚÒ»¸öÎļþ£¬»¹ÐèÒªÏÈ C-x C-f Çл»»ØÈ¥ÔÙ +Óà C-x C-s ´æÅÌ¡£ÄãÐèÒªÒ»¸ö¸ü¼ò±ãµÄ·½·¨£¬¶ø Emacs ÒѾ­ÎªÄã×¼±¸ºÃÁË£º + + C-x s ±£´æ¶à¸ö»º³åÇø + +C-x s »áÕÒ³öËùÓÐÒѱ»Ð޸ĵ«ÉÐδ´æÅ̵Ļº³åÇø£¬È»ºóÏòÄãÖð¸öѯÎÊ£ºÊÇ·ñÐèÒª +´æÅÌ£¿ + +>> ²åÈëÒ»ÐÐÎÄ×Ö£¬È»ºóÊäÈë C-x s¡£ + ËüÓ¦¸Ã»áÎÊÄ㣬ÊÇ·ñÒª´¢´æÃûΪ TUTORIAL.cn µÄ»º³åÇø£¿ + °´¡°y¡±¸æËßËüÄãÏë´æÅÌ¡£ + + +* ÃüÁÀ©Õ¹£¨EXTENDING THE COMMAND SET£© +----------------------------------------- + +Emacs µÄÃüÁî¾ÍÏñÌìÉϵÄÐÇÐÇ£¬ÊýÒ²Êý²»Çå¡£°ÑËüÃǶ¼¶ÔÓ¦µ½ CONTROL ºÍ META +×éºÏ¼üÉÏÏÔÈ»ÊDz»¿ÉÄܵġ£Emacs ÓÃÀ©Õ¹£¨eXtend£©ÃüÁîÀ´½â¾öÕâ¸öÎÊÌ⣬À©Õ¹ +ÃüÁîÓÐÁ½ÖÖ·ç¸ñ£º + + C-x ×Ö·ûÀ©Õ¹¡£ C-x Ö®ºóÊäÈëÁíÒ»¸ö×Ö·û»òÕß×éºÏ¼ü¡£ + M-x ÃüÁîÃûÀ©Õ¹¡£M-x Ö®ºóÊäÈëÒ»¸öÃüÁîÃû¡£ + +ºÜ¶àÀ©Õ¹ÃüÁÏ൱ÓÐÓã¬ËäÈ»ÓëÄãÒѾ­Ñ§¹ýµÄÃüÁî±ÈÆðÀ´£¬ËûÃÇ¿ÉÄܲ»ÄÇô³£ +Óá£ÎÒÃÇÔçÒѾ­¼û¹ýһЩÀ©Õ¹ÃüÁîÁË£¬±ÈÈçÓà C-x C-f Ñ°ÕÒÎļþºÍÓà C-x C-s +±£´æÎļþ£»Í˳ö Emacs ÓÃµÄ C-x C-c Ò²ÊÇÀ©Õ¹ÃüÁî¡££¨²»Óõ£ÐÄÍ˳ö Emacs »á +¸øÄã´øÀ´Ê²Ã´Ëðʧ£¬Emacs »áÔÚÍ˳ö֮ǰÌáÐÑÄã´æÅ̵ģ© + +ÔÚ¿ØÖÆ̨Ï£¬C-z ¿ÉÒÔÔÝʱÀ뿪 Emacs¡ª¡ªµ±È»£¬Ä㻹¿ÉÒÔÔÙ»ØÀ´¡£ + +ÔÚÔÊÐí C-z µÄϵͳÖУ¬C-z »á°Ñ Emacs¡°¹ÒÆ𡱣¬Ò²¾ÍÊÇ˵£¬Ëü»á»Øµ½ shell +µ«²»Í˳ö Emacs¡£ÔÚ³£ÓÃµÄ shell ÖУ¬Í¨³£¿ÉÒÔÓá°fg¡±»òÕß¡°%emacs¡±ÃüÁîÔÙ +´Î»Øµ½ Emacs ÖС£ + +ÔÚûÓÐÌṩ¹ÒÆð¹¦ÄܵÄϵͳÖУ¬C-z »áÔÚ Emacs ֮ϴ´½¨Ò»¸ö×Ó shell À´ÈÃÄã +ÔËÐÐÆäËü³ÌÐò£¬²¢ÇÒÔٴΡ°»Øµ½¡±Emacs ÖСª¡ªËäÈ»ÎÒÃDz¢Ã»ÓÐÕæÕýÀ뿪¹ý¡£Õâ +ÖÖÇé¿öÏ£¬Í¨³£Óà shell ÃüÁî¡°exit¡±´Ó×Ó shell »Øµ½ Emacs¡£ + +Äã×îºÃÔÚ´òËãÍ˳öµÇ½µÄʱºòÔÙÓà C-x C-c¡£ÔÚ Emacs ±»ÖîÈçÓʼþ´¦Àí³ÌÐòÖ®Àà +µÄÍⲿ³ÌÐòµ÷ÓÃÖ®ºó£¬Ò²¿ÉÒÔÓà C-x C-c Í˳ö¡£²»¹ýÒ»°ãÀ´½²£¬Èç¹ûÄã²»ÏëÍ˳ö +µÇ¼£¬×îºÃ»¹ÊÇ°Ñ Emacs ¹ÒÆð¶ø²»ÊÇÍ˳ö¡£ + +C-x µÄÀ©Õ¹ÃüÁîÓкܶ࣬ÏÂÃæÁгöµÄÊÇÄãÒѾ­Ñ§¹ýµÄ£º + + C-x C-f Ñ°ÕÒÎļþ¡£ + C-x C-s ±£´æÎļþ¡£ + C-x C-b Áгö»º³åÇø¡£ + C-x C-c À뿪 Emacs¡£ + C-x 1 ¹ØµôÆäËüËùÓд°¸ñ£¬Ö»±£ÁôÒ»¸ö¡£ + C-x u ³·Ïú¡£ + +ÓÃÃüÁîÃûÀ©Õ¹µÄÃüÁîͨ³£²¢²»³£Ó㬻òÖ»ÓÃÔÚ²¿·ÖģʽÏ¡£±ÈÈç replace-string +£¨×Ö·û´®Ìæ»»£©Õâ¸öÃüÁËü»áÔÚÈ«ÎÄ·¶Î§ÄÚ°ÑÒ»¸ö×Ö·û´®Ìæ»»³ÉÁíÒ»¸ö¡£ÔÚÊä +Èë M-x Ö®ºó£¬Emacs »áÔÚÆÁÄ»µ×¶ËÏòÄãѯÎʲ¢µÈ´ýÄãÊäÈëÃüÁîÃû¡£Èç¹ûÄãÏëÊäÈë +¡°replace-string¡±£¬ÆäʵֻÐèÒªÇá°repl s¡±¾ÍÐÐÁË£¬Emacs »á°ïÄã×Ô¶¯ +²¹Æë¡£ÊäÈëÍêÖ®ºó°´ ¡£ + +×Ö·û´®Ìæ»»ÃüÁîÐèÒªÁ½¸ö²ÎÊý¡ª¡ª±»Ìæ»»µÄ×Ö·û´®ºÍÓÃÀ´Ìæ»»ËüµÄ×Ö·û´®¡£Ã¿¸ö +²ÎÊýµÄÊäÈ붼ÒÔ»»ÐзûÀ´½áÊø¡£ + +>> ½«¹â±êÒƵ½±¾ÐÐÏÂÃæµÚ¶þÐеĿհ״¦£¬È»ºóÊäÈë + M-x repl schangedaltered¡£ + + ¡¾ÒÔϱ£ÁôÒ»ÐÐÔ­ÎÄ£¬ÒÔÓ¦Á·Ï°Ö®Ð裺¡¿ + Notice how this line has changed: you've replaced... + +Çë×¢ÒâÕâÒ»Ðеı仯£ºÔÚ¹â±êÖ®ºóµÄ·¶Î§ÄÚ£¬ÄãÒѾ­½«¡°changed¡±Õâ¸ö´Ê¡ª¡ª²» +ÂÛËüÔÚÄÄÀï³öÏÖ¡ª¡ªÈ«²¿Óá°altered¡±Ìæ»»µôÁË¡£ + + +* ×Ô¶¯±£´æ£¨AUTO SAVE£© +----------------------- + +Èç¹ûÄãÒѾ­ÐÞ¸ÄÁËÒ»¸öÎļþ£¬µ«ÊÇ»¹Ã»À´µÃ¼°´æÅÌÄãµÄ¼ÆËã»ú¾Í°Õ¹¤ÁË£¬ÄÇôÄã +Ëù×öµÄÐ޸ľͺܿÉÄܻᶪʧ¡£ÎªÁ˱ÜÃâÕâÑùµÄ²»ÐÒ·¢Éú£¬Emacs »á¶¨ÆÚ½«ÕýÔÚ±à +¼­µÄÎļþдÈëÒ»¸ö¡°×Ô¶¯±£´æ¡±ÎļþÖС£×Ô¶¯±£´æÎļþµÄÎļþÃûµÄͷβ¸÷ÓÐÒ»¸ö +¡°#¡±×Ö·û£¬±ÈÈçÄãÕýÔڱ༭µÄÎļþ½Ð¡°hello.c¡±£¬ÄÇôËüµÄ×Ô¶¯±£´æÎļþ¾Í½Ð +¡°#hello.c#¡±¡£Õâ¸öÎļþ»áÔÚÕý³£´æÅÌÖ®ºó±» Emacs ɾ³ý¡£ + +ËùÒÔ£¬¼ÙÈç²»ÐÒÕæµÄ·¢ÉúÁË£¬Äã´ó¿ÉÒÔ´ÓÈݵشò¿ªÔ­À´µÄÎļþ£¨×¢Òâ²»ÊÇ×Ô¶¯±£ +´æÎļþ£©È»ºóÊäÈë M-x recover file À´»Ö¸´ÄãµÄ×Ô¶¯±£´æÎļþ¡£ÔÚÌá +ʾȷÈϵÄʱºò£¬ÊäÈë yes¡£ + + +* »ØÏÔÇø£¨ECHO AREA£© +--------------------- + +Èç¹û Emacs ·¢ÏÖÄãÊäÈë¶à×Ö·ûÃüÁîµÄ½Ú×àºÜÂý£¬Ëü»áÔÚ´°¸ñµÄÏ·½³ÆΪ¡°»ØÏÔÇø¡± +µÄµØ·½¸øÄãÌáʾ¡£»ØÏÔÇøλÓÚÆÁÄ»µÄ×îÏÂÃæÒ»ÐС£ + + +* ״̬À¸£¨MODE LINE£© +--------------------- + +λÓÚ»ØÏÔÇøÕýÉÏ·½µÄÒ»Ðб»³ÆΪ¡°×´Ì¬À¸¡±¡£×´Ì¬À¸ÉÏ»áÏÔʾһЩÐÅÏ¢£¬±ÈÈ磺 + +--:** TUTORIAL.cn (Fundamental)--L670--54%---------------- + +״̬À¸ÏÔʾÁË Emacs µÄ״̬ºÍÄãÕýÔڱ༭µÄÎÄ×ÖµÄһЩÐÅÏ¢¡£ + +ÄãÓ¦¸ÃÖªµÀÎļþÃûµÄÒâ˼°É£¿¾ÍÊÇÄãÕÒµ½µÄÄǸöÎļþÂï¡£-NN%-- ÏÔʾµÄÊǹâ±êÔÚ +È«ÎÄÖеÄλÖá£Èç¹ûλÓÚÎļþµÄ¿ªÍ·£¬ÄÇô¾ÍÏÔʾ --Top-- ¶ø²»ÊÇ --00%--£»Èç +¹ûλÓÚÎļþµÄĩ⣬¾ÍÏÔʾ --Bot--¡£Èç¹ûÎļþºÜС£¬Ò»ÆÁ¾Í×ãÒÔÏÔʾȫ²¿ÄÚÈÝ£¬ +ÄÇô״̬À¸»áÏÔʾ --All--¡£ + +¡°L¡± ºÍÆäºóµÄÊý×Ö¸ø³öÁ˹â±êËùÔÚÐеÄÐкš£ + +×ͷµÄÐǺţ¨*£©±íʾÄãÒѾ­¶ÔÎÄ×Ö×ö¹ý¸Ä¶¯¡£¸Õ¸Õ´ò¿ªµÄÎļþ¿Ï¶¨Ã»Óб»¸Ä¶¯ +¹ý£¬ËùÒÔ״̬À¸ÉÏÏÔʾµÄ²»ÊÇÐǺŶøÊǶÌÏߣ¨-£©¡£ + +״̬À¸ÉÏСÀ¨ºÅÀïµÄÄÚÈݸæËßÄ㵱ǰÕýÔÚʹÓõı༭ģʽ¡£È±Ê¡µÄģʽÊÇ +Fundamental£¬¾ÍÊÇÄãÏÖÔÚÕýÔÚʹÓõÄÕâ¸ö¡£ËüÊÇÒ»ÖÖ¡°Ö÷ģʽ¡±¡£ + +Emacs µÄÖ÷ģʽÁÖÁÖ×Ü×Ü¡£ÓÐÓÃÀ´±à¼­³ÌÐò´úÂëµÄ¡ª¡ª±ÈÈç Lisp ģʽ£»Ò²ÓÐÓà +À´±à¼­¸÷ÖÖ×ÔÈ»ÓïÑÔÎı¾µÄ¡ª¡ª±ÈÈç Text ģʽ¡£ÈκÎÇé¿öÏÂÖ»ÄÜÓ¦ÓÃÒ»¸öÖ÷Ä£ +ʽ£¬ÆäÃû³Æ»áÏÔʾÔÚ״̬À¸ÉÏ£¬Ò²¾ÍÊÇÏÖÔÚÏÔʾ¡°Fundamental¡±µÄµØ·½¡£ + +Ö÷ģʽͨ³£»á¸Ä±äһЩÃüÁîµÄÐÐΪ¡£±È·½Ëµ£¬²»¹Ü±à¼­Ê²Ã´ÓïÑԵijÌÐò´úÂ룬Äã +¶¼¿ÉÒÔÓÃÒ»¸öÏàͬµÄÃüÁîÀ´Ìí¼Ó×¢ÊÍ¡£µ«ÊÇÔÚ²»Í¬µÄÓïÑÔÖÐ×¢Ê͵ÄÓï·¨ÍùÍùÊDz» +ͬµÄ£¬Õâʱ²»Í¬µÄÖ÷ģʽ¾Í»áÓø÷×Ô²»Í¬µÄÓï·¨¹æÔòÀ´Ìí¼Ó×¢ÊÍ¡£Ö÷ģʽ¶¼ÊÇ¿É +ÒÔÓà M-x Æô¶¯µÄÀ©Õ¹ÃüÁM-x fundamental-mode ¾Í¿ÉÒÔÇл»µ½ Fundamental +ģʽ¡£ + +±à¼­×ÔÈ»ÓïÑÔÎı¾¡ª¡ª±ÈÈçÏÖÔÚ¡ª¡ªÓ¦¸ÃÓà Text ģʽ¡£ + +>> ÊäÈë M-x text mode¡£ + +±ðµ£ÐÄ£¬Ê²Ã´¶¼Ã»±ä¡£²»¹ýϸÐÄһЩ¿ÉÒÔ·¢ÏÖ£¬M-f ºÍ M-b ÏÖÔڰѵ¥ÒýºÅ£¨'£© +ÊÓΪ´ÊµÄÒ»²¿·ÖÁË¡£¶øÔÚÏÈÇ°µÄ Fundamental ģʽÖУ¬M-f ºÍ M-b ¶¼½«µ¥ÒýºÅ +ÊÓΪ·Ö¸ôµ¥´ÊµÄ·ûºÅ¡£ + +Ö÷ģʽͨ³£¶¼»á¸ãһЩÀàËƵÄС¶¯×÷£¬ÒòΪºÜ¶àÃüÁîÆäʵÍê³ÉµÄÊÇ¡°ÏàͬµÄ¹¤ +×÷¡±£¬Ö»ÊÇÔÚ²»Í¬»·¾³Ï»áÓв»Í¬µÄ¹¤×÷·½Ê½¶øÒÑ¡£¡¾Ëùν¡°Çóͬ´æÒ족£¬ÔÚ +Emacs ÀïµÃµ½Á˺ܺõÄÌåÏÖ¡¿ + +Óà C-h m ¿ÉÒԲ鿴µ±Ç°Ö÷ģʽµÄÎĵµ¡£ + +>> Óà C-u C-v ½«±¾Ðдøµ½ÆÁÄ»µÄ×îÉÏ·½¡£ +>> ÊäÈë C-h m£¬¿´¿´ Text ģʽÓë Fundamental ģʽÓÐÄÄЩ²»Í¬¡£ +>> ÊäÈë C-x 1 ¹ØµôÎĵµ´°¸ñ¡£ + +Ö÷ģʽ֮ËùÒÔ³Æ֮Ϊ¡°Ö÷£¨major£©¡±Ä£Ê½£¬ÊÇÒòΪͬʱ»¹ÓС°¸¨Ä£Ê½¡±£¨minor +mode£©´æÔÚ¡£¸¨Ä£Ê½²¢²»ÄÜÌæ´úÖ÷ģʽ£¬¶øÊÇÌṩһЩ¸¨ÖúµÄ¹¦ÄÜ¡£Ã¿¸ö¸¨Ä£Ê½ +¶¼¿ÉÒÔ¶ÀÁ¢µØ¿ªÆôºÍ¹Ø±Õ£¬¸úÆäËü¸¨Ä£Ê½Î޹أ¬¸úÖ÷ģʽҲÎ޹ء£ËùÒÔÄã¿ÉÒÔ²» +ʹÓø¨Ä£Ê½£¬Ò²¿ÉÒÔֻʹÓÃÒ»¸ö»òͬʱʹÓöà¸ö¸¨Ä£Ê½¡£ + +ÓÐÒ»¸ö½Ð×ö×Ô¶¯ÕÛÐУ¨Auto Fill£©µÄ¸¨Ä£Ê½ºÜÓÐÓã¬ÌرðÊÇÔڱ༭×ÔÈ»ÓïÑÔÎı¾ +µÄʱºò¡£ÆôÓÃ×Ô¶¯ÕÛÐкó£¬Emacs »áÔÚÄã´ò×Ö³¬³öÒ»Ðб߽çʱ×Ô¶¯ÌæÄã»»ÐС£ + +Óà M-x auto fill mode Æô¶¯×Ô¶¯ÕÛÐÐģʽ¡£ÔÙÓÃÒ»´ÎÕâÌõÃüÁ×Ô¶¯ +ÕÛÐÐģʽ»á±»¹Ø±Õ¡£Ò²¾ÍÊÇ˵£¬Èç¹û×Ô¶¯ÕÛÐÐģʽûÓб»¿ªÆô£¬Õâ¸öÃüÁî»á¿ªÆô +Ëü£»Èç¹ûÒѾ­¿ªÆôÁË£¬Õâ¸öÃüÁî»á¹Ø±ÕËü¡£ËùÒÔÎÒÃÇ˵£¬Õâ¸öÃüÁî¿ÉÒÔÓÃÀ´¡°¿ª +¹Ø£¨toggle£©¡±Ä£Ê½¡£ + +>> ÏÖÔÚÊäÈë M-x auto fill mode¡£È»ºóËæ±ãÇõãʲô£¬Ö±µ½Äã¿´µ½Ëü + ·Ö³ÉÁ½ÐС£Äã±ØÐëÇÃһЩ¿Õ¸ñ£¬ÒòΪ Auto Fill Ö»ÔÚ¿Õ°×´¦½øÐжÏÐС£ + ¡¾ÊäÈë¿Õ¸ñ¶ÔÓ¢ÎÄÀ´ËµÊDZØÐëµÄ£¬¶ø¶ÔÖÐÎÄÔò²»±Ø¡£¡¿ + +Ðб߽çͨ³£±»É趨Ϊ 70 ¸ö×Ö·û¡¾ÕâÀïÖ¸Ó¢ÎÄ×Ö·û¡¿£¬Äã¿ÉÒÔÓà C-x f ÃüÁîÅäºÏ +Êý×Ö²ÎÊýÀ´ÖØÐÂÉ趨Ëü¡£ + +>> ÊäÈë C-x f ²¢´«µÝ²ÎÊý 20£º C-u 2 0 C-x f¡£ + È»ºóÊäÈëһЩÎÄ×Ö£¬¹Û²ì Emacs µÄ×Ô¶¯ÕÛÐж¯×÷ + ×îºóÔÙÓà C-x f ½«±ß½çÉè»Ø 70¡£ + +Èç¹ûÄãÔÚ¶ÎÂäµÄÖмä×öÁËһЩÐ޸ģ¬ÄÇô×Ô¶¯ÕÛÐÐģʽ²»»áÌæÄã°ÑÕû¸ö¶ÎÂäÖØР+ÕÛÐУ¬ÄãÐèÒªÓà M-q ÊÖ¶¯ÕÛÐС£×¢Ò⣬¹â±ê±ØÐëλÓÚÄãÐèÒªÕÛÐеÄÄÇÒ»¶ÎÀï¡£ + +>> Òƶ¯¹â±êµ½Ç°Ò»¶ÎÖУ¬È»ºóÊäÈë M-q¡£ + + +* ËÑË÷£¨SEARCHING£© +------------------- + +Emacs ¿ÉÒÔÏòÇ°»òÏòºóËÑË÷×Ö·û´®¡£ËÑË÷ÃüÁîÊÇÒ»¸öÒƶ¯¹â±êµÄÃüÁËÑË÷³É¹¦ +ºó£¬¹â±ê»áÍ£ÁôÔÚËÑË÷Ä¿±ê³öÏֵĵط½¡£ + +Emacs µÄËÑË÷ÃüÁîµÄ¶ÀÌØÖ®´¦ÔÚÓÚ£¬ËüÊÇ¡°½¥½øµÄ£¨incremental£©¡±¡£Òâ˼ÊÇËÑ +Ë÷ÓëÊäÈëͬʱ½øÐУºÄãÔÚ¼üÅÌÉÏÒ»×ÖÒ»¾äµØÊäÈëËÑË÷´ÊµÄ¹ý³ÌÖУ¬Emacs ¾ÍÒѾ­ +¿ªÊ¼ÌæÄãËÑË÷ÁË¡£ + +C-s ÊÇÏòÇ°ËÑË÷£¬C-r ÊÇÏòºóËÑË÷¡£²»¹ýÊÖ±ðÕâô¿ì£¡±ð׿±ÊÔ¡£ + +ÔÚ°´Ï C-s Ö®ºó£¬»ØÏÔÇøÀï»áÓС°I-search¡±×ÖÑù³öÏÖ£¬±íÃ÷Ä¿Ç° Emacs Õý´¦ +ÓÚ¡°½¥½øËÑË÷¡±×´Ì¬£¬²¢µÈ´ýÄãÊäÈëËÑË÷×Ö´®¡£°´ ¿ÉÒÔ½áÊøËÑË÷¡£ + +>> ÊäÈë C-s ¿ªÊ¼Ò»¸öËÑË÷¡£×¢ÒâÇÃÂýÒ»µã£¬Ò»´ÎÊäÈëÒ»¸ö×Ö·û¡£ + ÂýÂýÊäÈë¡°cursor¡±Õâ¸ö´Ê£¬Ã¿ÇÃÒ»¸ö×Ö¶¼Í£¶Ùһϲ¢¹Û²ì¹â±ê¡£ + ÏÖÔÚÄãÓ¦¸ÃÒÑÔø¾­ÕÒµ½¡°cursor¡±Õâ¸ö´ÊÁË¡£ +>> ÔÙ°´Ò»´Î C-s£¬ËÑË÷ÏÂÒ»¸ö¡°cursor¡±³öÏÖµÄλÖᣠ+>> ÏÖÔÚ°´ËÄ´ÎÍ˸ñ¼ü£¬¿´¿´¹â±êÊÇÈçºÎÒƶ¯µÄ¡£ +>> Çà ½áÊøËÑË÷¡£ + +¿´×ÐϸÁËô£¿ÔÚÒ»´Î½¥½øʽËÑË÷ÖУ¬Emacs »á³¢ÊÔÌøµ½ËÑË÷Ä¿±ê³öÏÖµÄλÖá£Òª +Ìøµ½ÏÂÒ»¸öÃüÖÐλÖ㬾ÍÔÙ°´Ò»´Î C-s¡£Èç¹ûÕÒ²»µ½Ä¿±ê£¬Emacs »á·¢³ö¡°ßÙ¡± +µÄÒ»Éù£¬¸æËßÄãËÑË÷ʧ°Ü¡£ÔÚÕû¸ö¹ý³ÌÖУ¬¶¼¿ÉÒÔÓà C-g À´ÖÕÖ¹ËÑË÷¡£¡¾Äã»á·¢ +ÏÖ C-g »áÈùâ±ê»Øµ½ËÑË÷¿ªÊ¼µÄλÖ㬶ø ÔòÈùâ±êÁôÔÚËÑË÷½á¹ûÉÏ£¬ +ÕâÊǺÜÓÐÓõŦÄÜ¡£¡¿ + +×¢Ò⣺ÔÚijЩÖÕ¶ËÏ£¬ÊäÈë C-x C-s »á¶³½áÆÁÄ»¡¾ÆÁĻûÓÐÈκÎÊä³ö¡¿£¬Ê¹Äã¿´ +²»µ½ Emacs µÄÈκα仯¡£ÆäÔ­ÒòÊDzÙ×÷ϵͳµÄ¡°Á÷Á¿¿ØÖÆ¡±¹¦ÄÜÀ¹½ØÁË C-s ²¢ +¶³½áÁËÆÁÄ»¡£Óà C-q ¿ÉÒÔ½â³ýÆÁÄ»¶³½á¡£Òª½â¾öÕâ¸öÎÊÌ⣬Çë²Î¿¼ Emacs ÊÖ²á +ÀïµÄ¡°Spontaneous Entry to Incremental Search¡±Ò»½Ú¡¾Emacs ÊÖ²á¿ÉÄÜ»¹Ã» +ÓÐÖÐÎÄ·­Òë¡¿£¬ÄÇÀïÌṩÁËһЩÓÐÓõĽ¨Òé¡£ + +ÔÚ½¥½øʽËÑË÷ÖУ¬°´Í˸ñ¼ü»áɾ³ýÄ¿±ê×Ö·û´®µÄ×îºóÒ»¸ö×Ö·û£¬²¢ÇÒ¹â±ê»á»Øµ½ +×î½üÒ»´ÎËÑË÷µÄÃüÖÐλÖᣱÈÈçÄãÒѾ­ÊäÈëÁË¡°c¡±£¬¹â±ê¾ÍÍ£ÔÚ¡°c¡±µÚÒ»´Î³ö +ÏÖµÄλÖã¬ÔÙÊäÈë¡°u¡±£¬¹â±êÍ£ÔÚ¡°cu¡±µÚÒ»´Î³öÏÖµÄλÖã¬ÕâʱÔÙ°´Í˸ñ¼ü£¬ +¡°u¡±¾Í´ÓËÑË÷×Ö´®ÖÐÏûʧÁË£¬È»ºó¹â±ê»á»Øµ½¡°c¡±µÚÒ»´Î³öÏÖµÄλÖᣠ+ +ÁíÍ⣬Èç¹ûÄãÔÚËÑË÷µÄʱºòÊäÈëÁË CONTROL »òÕß META ×éºÏ¼üµÄ»°£¬ËÑË÷¿ÉÄÜ»á +½áÊø¡££¨Ò²ÓÐÀýÍ⣬±ÈÈç C-s ºÍ M-r ÕâЩÓÃÓÚËÑË÷µÄÃüÁî¡££© + +Ç°Ãæ˵µÄ¶¼ÊÇ¡°ÏòÏ¡±ËÑË÷£¬Èç¹ûÏë¡°ÏòÉÏ¡±ËÑË÷£¬¿ÉÒÔÓà C-r¡£C-r Óë C-s +Ïà±È³ýÁËËÑË÷·½ÏòÏà·´Ö®Í⣬ÆäÓàµÄ²Ù×÷¶¼Ò»Ñù¡£ + + +* ¶à´°¸ñ£¨MULTIPLE WINDOWS£© +---------------------------- + +Emacs µÄÃÔÈËÖ®´¦ºÜ¶à£¬Äܹ»ÔÚÆÁÄ»ÉÏͬʱÏÔʾ¶à¸ö´°¸ñ¾ÍÊÇÆäÖÐÖ®Ò»¡£ + +>> Òƶ¯¹â±êµ½ÕâÒ»ÐУ¬È»ºóÊäÈë C-u 0 C-l¡£ + +>> ÏÖÔÚÊäÈë C-x 2£¬Ëü»á½«ÆÁÄ»»®·Ö³ÉÁ½¸ö´°¸ñ¡£ + ÕâÁ½¸ö´°¸ñÀïÏÔʾµÄ¶¼ÊDZ¾Æª¿ìËÙÖ¸ÄÏ£¬¶ø¹â±êÔòÍ£ÁôÔÚÉÏ·½µÄ´°¸ñÀï¡£ + +>> ÊÔÊÔÓà C-M-v ¹ö¶¯Ï·½µÄ´°¸ñ¡£ + £¨Èç¹ûÄ㲢ûÓÐ META ¼ü£¬Óà ESC C-v Ò²¿ÉÒÔ¡££© + ¡¾ÏòÉϹö¶¯ÊÇ C-M-S-v£¬Ò²¾ÍÊÇͬʱ°´×¡ CONTROL¡¢META ºÍ SHIFT ÔÙ°´ v¡¿ + +>> ÊäÈë C-x o£¨¡°o¡±Ö¸µÄÊÇ¡°ÆäËü£¨other£©¡±£©£¬ + ½«¹â±êתÒƵ½Ï·½µÄ´°¸ñ¡£ + +>> ÔÚÏ·½µÄ´°¸ñÖУ¬Óà C-v ºÍ M-v À´¹ö¶¯¡£ + ͬʱ¼ÌÐøÔÚÉÏ·½µÄ´°¸ñÀïÔĶÁÕâЩָµ¼¡£ + +>> ÔÙÊäÈë C-x o ½«¹â±êÒƻص½ÉÏ·½µÄ´°¸ñÀï¡£ + ¹â±ê»á»Øµ½ËüÔÚÉÏ·½´°¸ñÖÐÔ­±¾ËùÔÚµÄλÖᣠ+ +Á¬ÐøʹÓà C-x o ¿ÉÒÔ±éÀúËùÓд°¸ñ¡£Ã¿Ò»¸ö´°¸ñ¶¼ÓÐËü×Ô¼ºµÄ¹â±êλÖ㬵«ÊÇÖ» +ÓÐÒ»¸ö´°¸ñ»áÕæÕýÏÔʾÕâ¸ö¹â±ê¡£¡¾ÆäËü´°¸ñÔÚ¿ØÖÆ̨ϲ»»áÏÔʾ¹â±ê£¬ÔÚͼÐÎ +´°¿ÚÏÂȱʡÏÔʾΪïοչâ±ê¡£¡¿Ò»°ãËùÓеı༭ÃüÁ×÷ÓÃÓÚÕâ¸ö¹â±êËùÔڵĴ° +¸ñ£¬ÎÒÃdzÆÕâ¸ö´°¸ñΪ¡°±»Ñ¡ÖеĴ°¸ñ¡±¡£ + +µ±ÄãÔÚÒ»¸ö´°¸ñÖб༭£¬µ«ÓÃÁíÒ»¸ö´°¸ñ×÷Ϊ²Î¿¼µÄʱºò£¬C-M-v ÊǺÜÓÐÓõÄÃü +Áî¡£Äã¿ÉÒÔʼÖÕ´¦Óڱ༭´°¸ñÖУ¬È»ºóÓà C-M-v ÃüÁî¹ö¶¯ÁíÍâÒ»¸ö´°¸ñ¡£¡¾±ÈÈç +·­ÒëºÍУ¶Ô¾ÍºÜÊʺÏÓÃÕâÖÖ·½Ê½½øÐС£¡¿ + +C-M-v ÊÇÒ»¸ö CONTROL-META ×éºÏ¼ü¡£Èç¹ûÄãÓÐ META ¼üµÄ»°£¬¿ÉÒÔͬʱ°´×¡ +CONTROL ºÍ META ¼ü²¢ÊäÈë v¡£CONTROL ºÍ META ¼üÏÈ°´Äĸö¶¼¿ÉÒÔ£¬ÒòΪËüÃÇ +Ö»ÊÇÓÃÀ´¡°ÐÞÊΣ¨modify£©¡±ÄãÊäÈëµÄ×Ö·ûµÄ¡£ + +Èç¹ûÄ㲢ûÓÐ META ¼ü£¬ÄãÒ²¿ÉÒÔÓà ESC À´´úÌ棬²»¹ýÕâÑùµÄ»°¾ÍҪעÒâ°´¼ü˳ +ÐòÁË£ºÄã±ØÐëÏÈÊäÈë ESC £¬È»ºóÔÙÊäÈë CONTROL-v¡£CONTROL-ESC v ÊÇûÓõģ¬ +ÒòΪ ESC ±¾ÉíÊÇÒ»¸ö×Ö·û¼ü£¬¶ø²»ÊÇÒ»¸öÐÞÊμü£¨modifier key£©¡£ + +>> £¨ÔÚÉÏ·½´°¸ñÀÊäÈë C-x 1 ¹ØµôÏ·½´°¸ñ¡£ + +£¨Èç¹ûÄãÔÚÏ·½µÄ´°¸ñÀïÊäÈë C-x 1£¬ÄÇô¾Í»á¹ØµôÉÏ·½µÄ´°¸ñ¡£Äã¿ÉÒÔ°ÑÕâ¸ö +ÃüÁî¿´³ÉÊÇ¡°Ö»±£ÁôÒ»¸ö´°¸ñ¡±¡ª¡ª¾ÍÊÇÎÒÃÇÕýÔڱ༭µÄÕâ¸ö¡££© + +²»Í¬µÄ´°¸ñ¿ÉÒÔÏÔʾ²»Í¬µÄ»º³åÇø¡£Èç¹ûÄãÔÚÒ»¸ö´°¸ñÀïÓà C-x C-f ´ò¿ªÁËÒ»¸ö +Îļþ£¬ÁíÒ»¸ö´°¸ñ²¢²»»á·¢Éúʲô±ä»¯¡£ÈκÎÒ»¸ö´°¸ñÀﶼ¿ÉÒÔÓÃÀ´´ò¿ªÎļþ¡£ + +ÓÃÏÂÃæµÄ·½·¨¿ÉÒÔÔÚÒ»¸öпª´°¸ñÀï´ò¿ªÎļþ£º + +>> ÊäÈë C-x 4 C-f£¬½ô¸ú×ÅÊäÈëÒ»¸öÎļþÃû£¬ÔÙÓà ½áÊø¡£ + ¿ÉÒÔ¿´µ½ÄãÖ¸¶¨µÄÎļþ³öÏÖÔÚÏ·½µÄ´°¸ñÖУ¬Í¬Ê±¹â±êÒ²Ìøµ½ÁËÄÇÀï¡£ + +>> ÊäÈë C-x o »Øµ½ÉÏ·½µÄ´°¸ñ£¬È»ºóÔÙÓà C-x 1 ¹ØµôÏ·½´°¸ñ¡£ + + +* µÝ¹é±à¼­£¨RECURSIVE EDITING LEVELS£© +-------------------------------------- + +ÓÐʱºòÄã»á½øÈëËùνµÄ¡°µÝ¹é±à¼­¡±¡£µÝ¹é±à¼­×´Ì¬ÓÉλÓÚ״̬À¸µÄ·½À¨ºÅËùÖ¸ +ʾ£¬ÆäÖаüº¬ÁËÓÃСÀ¨ºÅÀ´Ö¸Ã÷µÄģʽÃû³Æ¡£±ÈÈç˵£¬ÄãÓÐʱ¿ÉÄܻῴµ½ +[(Fundamental)]£¬¶ø²»ÊÇ (Fundamental)¡£¡¾±ÈÈçÔÚÓà M-% ½øÐн»»¥Ê½Ìæ»»µÄ +ʱºòÄãÓÖÓÃÁË C-s ½øÐÐËÑË÷£¬ÕâʱÌ滻ģʽ²¢Ã»ÓнáÊø£¬µ«ÄãÓÖ½øÈëÁËËÑË÷ģʽ£¬ +Õâ¾ÍÊÇËùνµÄµÝ¹é±à¼­¡£¡¿ + +À뿪µÝ¹é±à¼­¿ÉÒÔÓà ESC ESC ESC¡£ÕâÊÇÒ»¸ö×îͨÓõġ°À뿪¡±ÃüÁÄãÉõÖÁ¿É +ÒÔʹÓÃËüÀ´¹Øµô¶àÓàµÄ´°¸ñ£¬»òÕßÀ뿪С»º³å¡£ + +>> ÊäÈë M-x ½øÈëС»º³å£»È»ºóÊäÈë ESC ESC ESC À뿪¡£ + +Äã²»ÄÜÓà C-g Í˳öµÝ¹é±à¼­£¬ÒòΪ C-g µÄ×÷ÓÃÊÇÈ¡Ïû¡°±¾²ãµÝ¹é±à¼­Ö®ÄÚ¡±µÄ +ÃüÁîºÍÆä²ÎÊý£¨arguments£©¡£ + + +* »ñµÃ¸ü¶à°ïÖú£¨GETTING MORE HELP£© +----------------------------------- + +±¾¿ìËÙÖ¸ÄϵÄÄ¿µÄ½ö½öÊÇ°ïÖúÄãÔÚ Emacs µÄº£ÑóÀïÏÂË®£¬²»ÖÁÓÚÊøÊÖÎÞ²ßÍûÑóÐË +̾¡£ÓÐ¹Ø Emacs µÄ»°Ìâ¿Éνº¹Å£³ä¶°£¬ÕâÀï×ÔÈ»ÊÇÄѾ¡ÍòÒ»¡£²»¹ý Emacs ºÜÀí +½âÄãÇóÖªÈô¿ÊµÄÐÄÇ飬ÒòΪËüÌṩµÄÇ¿´ó¹¦ÄÜʵÔÚÊÇÌ«¶àÁË¡£Îª´Ë£¬Emacs Ìṩ +ÁËһЩÃüÁîÀ´²é¿´ Emacs µÄÃüÁîÎĵµ£¬ÕâЩÃüÁÒÔ CONTROL-h ¿ªÍ·£¬Õâ¸ö×Ö +·ûÒ²Òò´Ë±»³ÆΪ¡°°ïÖú£¨Help£©×Ö·û¡±¡£ + +ҪʹÓðïÖú£¨Help£©¹¦ÄÜ£¬ÇëÏÈÊäÈë C-h£¬È»ºóÔÙÊäÈëÒ»¸ö×Ö·ûÒÔ˵Ã÷ÄãÐèҪʲ +ô°ïÖú¡£Èç¹ûÄãÁ¬×Ô¼ºµ½µ×ÐèҪʲô°ïÖú¶¼²»ÖªµÀ£¬ÄÇô¾ÍÊäÈë C-h ?£¬Emacs +»á¸æËßÄãËüÄÜÌṩÁËÄÄЩ°ïÖú¡£Èç¹ûÄã°´ÁË C-h ÓÖÏë·´»Ú£¬¿ÉÒÔÓà C-g È¡Ïû¡£ + +£¨ÓÐЩÖ÷»ú¸Ä±äÁË C-h µÄÒâÒ壬ÕâÖÖÒÔ¼º¶ÈÈËÍâ¼ÓÒ»µ¶ÇеÄ×ö·¨È·Êµ²»Ì«ºÃ£¬²» +¹ýµ¹ÊÇÈÃÄã¿ÉÒÔÒåÕý´ÇÑϵر§Ô¹ËûÃǵÄϵͳ¹ÜÀíÔ±¡£»°Ëµ»ØÀ´£¬Èç¹ûÄã°´ C-h Ö® +ºóûÓÐÈκΰïÖúÐÅÏ¢ÏÔʾ³öÀ´£¬ÄÇôÊÔÊÔ F1 ¼ü»òÕß M-x help ¡££© + +×î»ù±¾µÄ°ïÖú¹¦ÄÜÊÇ C-h c¡£ÊäÈë C-h c Ö®ºóÔÙÊäÈëÒ»¸ö×éºÏ¼ü£¬Emacs »á¸ø³ö +Õâ¸öÃüÁîµÄ¼òҪ˵Ã÷¡£ + +>> ÊäÈë C-h c C-p¡£ + +ÏÔʾµÄÏûÏ¢Ó¦¸Ã»áÊÇÕâÑù£º + + C-p runs the command previous-line + +ÕâÌõÏûÏ¢ÏÔʾÁË C-p ÃüÁî¶ÔÓ¦µÄº¯ÊýÃû£¬º¯ÊýÃûÖ÷ÒªÓÃÀ´¶¨ÖƺÍÀ©Õ¹ Emacs¡£Ãü +ÁîµÄ¹¦ÄÜÓɺ¯ÊýÍê³É£¬ËùÒÔº¯ÊýÃû±¾ÉíÒ²¿ÉÒÔ±»¿´³ÉÊÇ×î¼òµ¥µÄÎĵµ¡ª¡ªÖÁÉÙ¶Ô +ÓÚÄãÒѾ­Ñ§¹ýµÄÃüÁîÀ´Ëµ£¬ËüÃǵĺ¯ÊýÃû×ãÒÔ½âÊÍËüÃǵŦÄÜÁË¡£ + +¶à×Ö·ûÃüÁîÒ»Ñù¿ÉÒÔÓà C-h c À´²é¿´¡£ + +ÏëµÃµ½¸ü¶àµÄÐÅÏ¢£¬Çë°Ñ C-h c »»³É C-h k ÊÔÊÔ¿´¡£ + +>> ÊäÈë C-h k C-p¡£ + +ÉÏÃæµÄÃüÁî»áдò¿ªÒ»¸ö Emacs ´°¸ñÒÔÏÔʾº¯ÊýµÄÃû³Æ¼°ÆäÎĵµ¡£Äã¶ÁÍêÖ®ºó¿É +ÒÔÓà C-x 1 ¹ØµôÕâ¸ö°ïÖú´°¸ñ¡£µ±È»Äã²¢²»ÐèÒªÁ¢¼´ÕâÑù×ö£¬ÄãÍêÈ«¿ÉÒÔÏÈÔÚ±à +¼­´°¸ñÀï×öµã±ðµÄÊÂÇ飬ȻºóÔٹصô°ïÖú´°¸ñ¡£ + +»¹ÓÐһЩÆäËüÓÐÓÃµÄ C-h ÃüÁ + + C-h f ½âÊÍÒ»¸öº¯Êý¡£ÐèÒªÊäÈ뺯ÊýÃû¡£ + +>> ÊÔÊÔ¿´£¬ÊäÈë C-h f previous-line¡£ + Emacs »á¸ø³öËüËùÖªµÀµÄËùÓÐÓйء°ÊµÏÖ C-p ÃüÁÄܵĺ¯Êý¡±µÄÐÅÏ¢¡£ + +C-h v ÓÃÀ´ÏÔʾ Emacs ±äÁ¿µÄÎĵµ¡£Emacs ±äÁ¿¿ÉÒÔ±»ÓÃÀ´¡°¶¨ÖÆ Emacs µÄÐÐ +Ϊ¡±¡£Í¬Ñù£¬ÄãÐèÒªÊäÈë±äÁ¿µÄÃû³Æ¡£ + + C-h a Ïà¹ØÃüÁîËÑË÷£¨Command Apropos£©¡£ + ÊäÈëÒ»¸ö¹Ø¼ü´ÊÈ»ºó Emacs »áÁгöËùÓÐÃüÁîÃûÖаüº¬´Ë¹Ø¼ü´Ê + µÄÃüÁî¡£ÕâЩÃüÁîÈ«¶¼¿ÉÒÔÓà M-x À´Æô¶¯¡£¶ÔÓÚijЩÃüÁîÀ´Ëµ£¬ + Ïà¹ØÃüÁîËÑË÷»¹»áÁгöÒ»Á½¸ö×éºÏ¼ü¡£ + +>> ÊäÈë C-h a file¡£ + +Emacs »áÔÚÁíÒ»¸ö´°¸ñÀïÏÔʾһ¸ö M-x ÃüÁîÁÐ±í£¬Õâ¸öÁбí°üº¬ÁËËùÓÐÃû³ÆÖк¬ +ÓС°file¡±µÄÃüÁî¡£Äã¿ÉÒÔ¿´µ½Ïñ¡°C-x C-f¡±ÕâÑùµÄ×éºÏ¼üÏÔʾÔÚ¡°find-file¡± +ÕâÑùµÄÃüÁîÃûµÄÅԱߡ£ + +>> Óà C-M-v À´»Ø¹ö¶¯ help ´°¸ñ£¬¶àÊÔ¼¸´Î¡£ + +>> ÊäÈë C-x 1 À´É¾³ý help ´°¸ñ¡£ + + C-h i ÔĶÁÁª»úÊֲᣨҲ¾ÍÊÇͨ³£½²µÄ Info£©¡£ + Õâ¸öÃüÁî»á´ò¿ªÒ»¸ö³ÆΪ¡°*info*¡±µÄÌØÊ⻺³åÇø£¬ÔÚÄÇÀ + Äã¿ÉÒÔÔĶÁ°²×°ÔÚϵͳÀïµÄÈí¼þ°üʹÓÃÊֲᡣҪ¶Á Emacs µÄʹ + ÓÃÊֲᣬ°´ m emacs ¾Í¿ÉÒÔÁË¡£Èç¹ûÄã֮ǰ´ÓûÓà + ¹ý Info ϵͳ£¬ÄÇôÇë°´¡°?¡±£¬Emacs »á´øÄã½øÈë Info µÄʹ + ÓÃÖ¸ÄÏ¡£ÔÚ¿´Íê±¾¿ìËÙÖ¸ÄÏÖ®ºó£¬Emacs Info »á³ÉΪÄãµÄÖ÷Òª + ²Î¿¼Îĵµ¡£ + + +* ¸ü¶à¾«²Ê£¨MORE FEATURES£© +--------------------------- + +Ïëѧϰ¸ü¶àµÄʹÓü¼ÇÉ£¬Emacs ʹÓÃÊֲᣨmanual£©ÖµµÃÒ»¶Á¡£Äã¿ÉÒÔ¶ÁÖ½°æµÄ +Ê飬Ҳ¿ÉÒÔ¿´µç×Ó°æµÄÁª»úÊֲᣨ¿ÉÒÔ´Ó Help ²Ëµ¥½øÈë»òÕß°´ F10 h r£©¡£Ìá +Á½¸öÄã¿ÉÄÜ»áºÜ¸ÐÐËȤµÄ¹¦ÄÜ°É£¬Ò»¸öÊÇ¿ÉÒÔ°ïÄãÉÙÇüüÅÌµÄ completion£¨×Ô¶¯ +²¹È«£©£¬ÁíÒ»¸öÊÇ·½±ãÎļþ´¦ÀíµÄ dired£¨Ä¿Â¼±à¼­£©¡£ + +Completion ¿ÉÒÔÌæÄã½ÚÊ¡²»±ØÒªµÄ¼üÅÌÊäÈë¡£±ÈÈç˵ÄãÏëÇл»µ½ *Message* »º +³åÇø£¬Äã¾Í¿ÉÒÔÓà C-x b *M À´Íê³É¡£Ö»Òª Emacs Äܹ»¸ù¾ÝÄãÒѾ­ÊäÈëµÄ +ÎÄ×ÖÈ·¶¨ÄãÏëÒªÊäÈëµÄÄÚÈÝ£¬Ëü¾Í»á×Ô¶¯°ïÄã²¹Æë¡£ÓÐ¹Ø Completion µÄÏêϸ˵ +Ã÷¿ÉÒÔÔÚ Emacs Info Öеġ°Completion¡±Ò»½ÚÀïÕÒµ½¡£ + +Dired Äܹ»ÔÚÒ»¸ö»º³åÇøÀïÁгöÒ»¸öĿ¼ÏµÄËùÓÐÎļþ£¨¿ÉÒÔÑ¡ÔñÊÇ·ñÒ²Áгö×Ó +Ŀ¼£©£¬È»ºóÄã¿ÉÒÔÔÚÕâ¸öÎļþÁбíÉÏÍê³É¶ÔÎļþµÄÒƶ¯¡¢·ÃÎÊ¡¢ÖØÃüÃû»òɾ³ý +µÈµÈ²Ù×÷¡£Dired Ò²ÔÚ Emacs Info ÖÐÓÐÏêϸ½éÉÜ£¬²Î¼û¡°Dired¡±Ò»½Ú¡£ + +Emacs ʹÓÃÊÖ²áÀﻹÓÐÐíÐí¶à¶àµÄ¾«²Ê¹¦ÄܵÈ×ÅÄãÀ´Á˽⡣ + + +* ×ܽᣨCONCLUSION£© +-------------------- + +¼Çס£¬ÒªÍ˳ö Emacs ÇëÓà C-x C-c¡£ÒªÔÝʱÇл»µ½ shell ²¢ÇÒÉÔºóÔٻص½ +Emacs ÀïÀ´£¬ÇëÓà C-z¡£¡¾Çл»µ½ shell ½ö¶Ô¿ØÖÆ̨Ï嵀 Emacs ÓÐЧ¡¿ + +±¾ÎÄÍêÈ«ÊÇΪÁãÆðµãÐÂÊÖËùдµÄÆ𲽽̡̳£Èç¹ûÄã¾õµÃÄÄÀﻹ¿´²»Ã÷°×£¬Ç§Íò²» +Òª»³ÒÉ×Ô¼º£¬ÄÇÒ»¶¨ÊÇÎÒÃÇûÓÐдºÃ¡£ÎÒÃÇÓÀÔ¶»¶Ó­ÄãµÄ²»ÂúºÍ±§Ô¹¡£ + + +* ·­Ò루TRANSLATION£© +--------------------- + +·­Ò룺ËïÒ»½­ +У¶Ô£ºË®Ä¾ÉçÇø£¨www.newsmth.net£©Emacs °åÖÚ¶àÍøÓѼ°ÖÚ¶à Emacs ÖÐÎÄÓû§ + +Emacs ¿ìËÙÖ¸ÄÏ£¨Tutorial£©ÔçÓÐÁ½¸öÁõÕѺêµÄÖÐÎÄÒë±¾£¬·±¼ò¸÷Ò»¡£Æä¼òÌå°æ±¾ +£¨TUTORIAL.cn£©»ù±¾ÓÉ·±Ìå°æ±¾£¨TUTORIAL.zh£©¾­´ÊÓïÌæ»»¶øµÃ¡£È»¶ø·±¼òÖÐÎÄ +²»½öÔÚÓôÊÏ°¹ßÉÏÓÐËù²»Í¬£¬¸üÓÐÖî¶à±í´ï·½Ê½Óë¾ä·¨·½ÃæµÄ²îÒ죬Òò´ËÒ»Ö±ÒÔÀ´ +Óû§Ê¹Óà TUTORIAL.cn ¶¼»áÂÔ¾õÉúÓ²ºÍ»Þɬ¡£Õâ´ÎÖØз­Òë TUTORIAL.cn µÄ¶¯»ú +ÕýÊÇÔ´ÓÚÕâÖÖÌåÑ飬ϣÍûÎÒÃǵŤ×÷Äܹ»Èñ¾ÎĸüºÃµØ·¢»ÓÆä×÷Óá£TUTORIAL.zh +µÄÒëÎÄÖÊÁ¿ºÜ¸ß£¬ÔÚ·­Òë¹ý³ÌÖиøÓè¹ýÎÒÃÇÐí¶à½è¼øºÍ²Î¿¼£¬Ôڴ˶ÔÁõÕѺêµÄ¹¤×÷ +±íʾ¸Ðл¡£ + +·­Òë¹ý³ÌÖÐ×î´óµÄÌôսĪ¹ýÓÚÊõÓïÒë´ÊµÄÑ¡ÔñÁË¡£¾­¹ýˮľÉçÇø Emacs °åÈÈÐÄÍø +ÓÑС·¶Î§ÄÚµÄÌÖÂÛ£¬ÎÒÃÇÑ¡ÔñÁËÏÖÔÚµÄÒë·¨¡£Óû§µÄ¹ã·º²ÎÓëÊÇ×ÔÓÉÈí¼þÉúÃüÁ¦ +µÄԴȪ£¬ËùÒÔÈç¹ûÄãÓÐÈκν¨Òé¡¢¿±Îó»òÏë·¨£¬ÇëÓÃÄãϲ»¶µÄ·½Ê½ÏòÎÒÃÇÌá³ö¡£ +Äã¿ÉÒÔͨ¹ýµç×ÓÓʼþÖ±½ÓÁªÏµÒëÕߣ¬Ò²¿ÉÒԷŵ½ GNU Emacs µÄ¿ª·¢ÓʼþÁбí»òÕß +ˮľÉçÇøµÄ Emacs °åÉϽøÐÐÌÖÂÛ¡£ + +ÏÂÃæÁгöÖ÷ÒªÊõÓïµÄÒë´Ê¶ÔÕÕ£¬²¢¸ø³ö×¢ÊÍ˵Ã÷£º + + command ÃüÁî + cursor ¹â±ê + scrolling ¹ö¶¯ + numeric argument Êý×Ö²ÎÊý + window ´°¸ñ [1] + insert ²åÈë + delete ɾ³ý [2] + kill ÒƳý [2] + yank ÕÙ»Ø [2] + undo ³·Ïú + file Îļþ + buffer »º³åÇø + minibuffer С»º³å + echo area »ØÏÔÇø + mode line ״̬À¸ + search ËÑË÷ + incremental search ½¥½øʽËÑË÷ [3] + +[1] ¡°window¡±Ò»´ÊÔÚ¼ÆËã»úÏà¹ØµÄÁìÓòÒ»°ã¶¼±»ÒëΪ¡°´°¿Ú¡±¡£µ«ÊÇÔÚ Emacs + ÖУ¬»¹ÓÐÒ»¸ö¡°frame¡±µÄ¸ÅÄî¡£ÔÚ±»¹ã·ºÊ¹ÓÃµÄ X ´°¿ÚϵͳºÍ΢ÈíµÄÊÓ´° + £¨Windows£©ÏµÁвÙ×÷ϵͳÖУ¬Emacs µÄÒ»¸ö¡°frame¡±¾ÍÊÇÒ»¸ö¡°´°¿Ú¡±£¬Òò + ´Ë°Ñ Emacs Öеġ°frame¡±Òë³É¡°´°¿Ú¡±¸ü¼Ó·ûºÏͨ³£µÄÏ°¹ß¡£ÕâÑù£¬Emacs + Öеġ°window¡±¾ÍÖ»ÄÜÒë³É¡°´°¸ñ¡±ÁË¡£ÎÒÃÇÈÏΪ Emacs ÖÐ window ºÍ + frame µÄ¹ØϵÓô°¸ñºÍ´°¿ÚÀ´Àà±ÈÊÇÊ®·ÖÐÎÏóµÄ¡£ + + ¡¶Ñ§Ï°GNU Emacs¡·£¨µÚ¶þ°æ£©Ò»Êé¶Ô¡°window¡±ºÍ¡°frame¡±µÄ·­ÒëÓë±¾½Ì³Ì + ¸ÕºÃÏà·´£¨·Ö±ðÒë×÷¡°´°¿Ú¡±ºÍ¡°´°¸ñ¡±£©¡£ÔÚ´ËÌرð×¢Ã÷£¬ÒÔÏû³ý¿ÉÄܲúÉú + µÄÒɻ󡣣¨¸ÐлÀîÐñÕ ָ³ö£© + +[2] ¶ÔÓÚ¡°delete¡±ºÍ¡°kill¡±µÄÇø±ð£¬ÕýÎÄÒѾ­¸ø³öÁËÏêϸµÄ˵Ã÷¡£¡°É¾³ý¡±ºÍ + ¡°ÒƳý¡±Ïà±È½ÏÆðÀ´£¬Ç°Õ߸ü¶àµØÒþº¬×Å¡°ÆÆ»µ¡±ºÍ¡°²»¿É»Ö¸´¡±µÄÒâ˼£¬¶ø + ºóÕ߸ü¶àµØÒþº¬×Å¡°±»×ªÒÆ¡±ºÍ¡°¿É»Ö¸´¡±µÄÒâ˼¡£Òò´Ë·Ö±ðÑ¡ÔñËüÃÇ×÷ΪÉÏ + ÊöÁ½´ÊµÄÒë´Ê£¬Ï£ÍûÄܹ»ÌåÏÖ³öÇø±ð¡£¡°yank¡±ÔÚÖÐÎÄÎĵµÖÐÏÊÓжÔÓ¦Òë´Ê³ö + ÏÖ£¬·­ÒëµÄÀ§Äѽϴ󡣾¿Æä±¾ÒâÊÇ£º¡°a strong sudden pull¡±£¨²Î¼ûΤÊÏ´Ê + µä£©£¬¼´¡°ÃÍÈ»À­»Ø¡±¡£ÔÚÔ­ÎĵµÖÐ yank ±»ÒýÉêΪ¡°½«ÏÈÇ°ÒƳýµÄ¶«Î÷ÔÙÒÆ + »ØÀ´¡±Õâ¸öÒâ˼£¬ËùÒÔÎÒÃÇÑ¡ÔñÁË¡°Õٻء±Ò»´ÊÓëÆä¶ÔÓ¦¡£ + +[3] ¡°incremental¡±Ò»´ÊÔÚ¼ÆËã»úÖø×÷Öй㷺³öÏÖ£¬±»¹ã·º½ÓÊܵÄÖÐÎÄÒë´ÊÓÐÁ½ + ¸ö£º¡°ÔöÁ¿µÄ¡±ºÍ¡°½¥½øµÄ¡±¡£¡°incremental search¡±·­Òë³É¡°ÔöÁ¿Ê½ËÑË÷ + ¡±»òÕß¡°½¥½øʽËÑË÷¡±¶¼½²µÃͨ£¬ÇÒ¶¼Óи÷×ÔµÄÐÎÏóÖ®´¦¡£»¹ÊDzο¼Ô­ÎĶÔÆä + µÄ½âÊÍ£º¡°... means that the search happens while you type in the + string to search for¡±¡£Òâ˼ÊÇÖ®ËùÒÔ³ÆÆäΪ¡°incremental search¡±£¬ÊÇ + ÒòΪ¡°ÔÚÄãÊäÈëËÑË÷×Ö·û´®µÄ¹ý³ÌÖУ¬ËÑË÷¾ÍÒѾ­ÔÚ½øÐÐÁË¡±¡£ÎÒÃÇÈÏΪ¡°Ôö + Á¿µÄ¡±¸ü¼ÓÇ¿µ÷ÔÚÏÖÓлù´¡Éϵı仯£¨±ÈÈç¡°ÔöÁ¿±¸·Ý¡±£¬¡°ÔöÁ¿±àÒ롱£©£» + ¶ø¡°½¥½øµÄ¡±¸ü¼ÓÇ¿µ÷¹ý³ÌµÄÖð½¥·¢Õ¹£¬Ò²¸ü¼Ó·ûºÏÔ­ÎĵÄÒâ˼¡£Òò´ËÎÒÃÇÑ¡ + Ôñ½«¡°incremental search¡±Òë×÷¡°½¥½øʽËÑË÷¡±¡£ + + +* °æȨÉùÃ÷£¨COPYING£© +--------------------- + +This tutorial descends from a long line of Emacs tutorials +starting with the one written by Stuart Cracraft for the original Emacs. + +This version of the tutorial, like GNU Emacs, is copyrighted, and +comes with permission to distribute copies on certain conditions: + +Copyright (C) 1985, 1996, 1998, 2001, 2002, 2003, 2004, + 2005, 2006, 2007 Free Software Foundation, Inc. + + Permission is granted to anyone to make or distribute verbatim copies + of this document as received, in any medium, provided that the + copyright notice and permission notice are preserved, + and that the distributor grants the recipient permission + for further redistribution as permitted by this notice. + + Permission is granted to distribute modified versions + of this document, or of portions of it, + under the above conditions, provided also that they + carry prominent notices stating who last altered them. + +The conditions for copying Emacs itself are more complex, but in the +same spirit. Please read the file COPYING and then do give copies of +GNU Emacs to your friends. Help stamp out software obstructionism +("ownership") by using, writing, and sharing free software! + +¡¾ÏÂÃæΪ°æȨÉùÃ÷µÄÒëÎÄ£¬½ö¹©²Î¿¼¡£Êµ¼Ê·¨ÂÉЧÁ¦ÒÔÓ¢ÎÄÔ­ÎÄΪ׼¡£¡¿ + +±¾¿ìËÙÖ¸ÄÏÑØÏ®×ÔÀúÊ·ÓÆ¾ÃµÄ Emacs ¿ìËÙÖ¸ÄÏ£¬¿ÉÉÏËÝÖÁ Stuart Cracraft Ϊ×î +³õµÄ Emacs Ëù×÷µÄ°æ±¾¡£ + +±¾ÆªÎĵµÓë GNU Emacs Ò»ÑùÓµÓаæȨ£¬²¢ÔÊÐíÔÚÏÂÁÐÌõ¼þµÄÔ¼ÊøÏ·¢ÐÐÆ俽±´£º + + Copyright (C) 1985, 1996, 1998, 2001, 2002, 2003, 2004, 2005, 2006, + 2007 Free Software Foundation, Inc. + + ±¾ÎĵµÔÊÐíÔÚ²»±ä¸üÎĵµÄÚÈݵÄÇé¿öÏÂÓÉÈκÎÈË·¢²¼ÔÚÈκÎýÌåÉÏ£¬Í¬Ê±±ØÐë + ÍêÕû±£Áô°æȨºÍÐí¿ÉÉùÃ÷£¬ÇÒÐè¸øÓèÊÜÖÚÓë·¢ÐÐÕßÍêÈ«ÏàͬµÄ¡¢Èç±¾ÉùÃ÷ËùÔÊ + ÐíµÄÔٴη¢Ðб¾ÎĵµµÄȨÀû¡£ + + ±¾ÉùÃ÷ÔÊÐíÔÚÓëÉÏÊöÌõ¼þÏàͬµÄÇé¿öÏ·¢²¼¾­¹ýÐ޸ĵÄÈ«²¿»ò²¿·ÖÎĵµ£¬Í¬Ê± + ±ØÐ븽´øÏÔÒªµÄÎÄ×ÖÒÔÉêÃ÷ÎĵµµÄ×îºóÐÞ¸ÄÕß¡£ + +Emacs ×ÔÉíµÄ°æȨÎÊÌâËä±È±¾ÎĵµÒª¸´ÔÓһЩ£¬µ«Ò²»ùÓÚÏàͬµÄ¾«Éñ¡£¾´ÇëÔĶÁÎÄ +¼þ¡°COPYING¡±£¬È»ºóÏòÄãµÄÅóÓÑÃÇ·Ö·¢ GNU Emacs ¿½±´¡£ÈÃÎÒÃÇÒÔʹÓᢱàдºÍ +·ÖÏí×ÔÓÉÈí¼þµÄʵ¼ÊÐж¯À´¹²Í¬ìî³ýÈí¼þÕÏ°­Ö÷Ò壨ËùνµÄ¡°ËùÓÐȨ¡±£©£¡ + +;;; Local Variables: +;;; coding: chinese-iso-8bit +;;; End: + +;;; arch-tag: 46a53d82-a85a-46b6-bdc7-583aca063578 diff --git a/etc/tutorials/TUTORIAL.cs b/etc/tutorials/TUTORIAL.cs new file mode 100644 index 00000000000..fc4650d0fa2 --- /dev/null +++ b/etc/tutorials/TUTORIAL.cs @@ -0,0 +1,1047 @@ +Tutoriál k Emacsu. Podmínky viz na konci. +Do èe¹tiny pøelo¾il Milan Zamazal . + +Máte pøed sebou tutoriál k Emacsu. + +Pøíkazy Emacsu obecnì vyu¾ívají klávesu CONTROL (obèas oznaèovanou CTRL nebo +CTL) nebo klávesu META (obèas oznaèovanou EDIT nebo ALT). Abychom tyto názvy +nemuseli stále psát v plném znìní, budeme pou¾ívat následující zkratky: + + C- znamená pøidr¾et klávesu CONTROL a stisknout znak . + Tedy C-f znamená: pøidr¾te klávesu CONTROL a stisknìte f. + M- znamená pøidr¾et klávesu META, EDIT nebo ALT a stisknout . + Pokud ¾ádnou z kláves META, EDIT ani ALT nemáte, tak místo toho + stisknìte a pus»te klávesu ESC a poté . Klávesu ESC budeme + znaèit . + +Dùle¾itá poznámka: práci s Emacsem ukonèíte stiskem C-x C-c (dva znaky). +Znaky ">>" na levém okraji znaèí místa, kde si máte vyzkou¹et pøíkaz. +Napøíklad: +<> +[Prostøední èást obrazovky je prázdná zámìrnì. Text pokraèuje ní¾e.] +>> Nyní stisknìte C-v (view next screen) pro posun na dal¹í obrazovku. + (Smìle do toho, proveïte to pøidr¾ením klávesy CONTROL a stiskem v.) + Od této chvíle byste toto mìli provádìt kdykoliv doètete zobrazenou + obrazovku. + +V¹imnìte si, ¾e pøi posuvu obrazovek v¾dy zùstávají zobrazeny dva øádky +z pøedchozí obrazovky; to poskytuje urèitou návaznost pøi postupném +ètení textu. + +První vìc, kterou potøebujete vìdìt, je jak se v textu pohybovat +z jednoho místa na druhé. U¾ víte, jak se posunout o jednu obrazovku +vpøed, pomocí C-v. K pøechodu o obrazovku zpìt pou¾ijte M-v +(pøidr¾te klávesu META a stisknìte v nebo stisknìte v, jestli¾e +nemáte ¾ádnou z kláves META, EDIT nebo ALT). + +>> Zkuste stisknout M-v a pak C-v, nìkolikrát to zopakujte. + + +* SHRNUTÍ +--------- + +K prohlí¾ení obrazovkových stránek jsou u¾iteèné následující pøíkazy: + + C-v Posun o obrazovku vpøed + M-v Posun o obrazovku zpìt + C-l Smazání obrazovky a znovuzobrazení celého textu, + pøitom se text pod kurzorem pøesune ke støedu obrazovky. + (Jedná se o CONTROL-L a ne CONTROL-1.) + +>> Najdìte kurzor a zapamatujte si, jaký text je kolem nìj. + Pak stisknìte C-l. + Najdìte kurzor znovu a v¹imnìte si, ¾e je kolem nìj tentý¾ text. + + +* ZÁKLADNÍ OVLÁDÁNÍ KURZORU +--------------------------- + +Pohyb mezi obrazovkami je u¾iteèný, ale jak se pøemístíte na konkrétní +místo v textu na obrazovce? + +Je toho mo¾no dosáhnout nìkolika zpùsoby. Nejzákladnìj¹ím zpùsobem je +pou¾ití pøíkazù C-p, C-b, C-f a C-n. Ka¾dý z tìchto pøíkazù pøesune +kurzor na obrazovce o jeden øádek nebo sloupec v daném smìru. +Zde je tabulka znázoròující smìr posuvu kurzoru vyvolaný tìmito ètyømi +pøíkazy: + + Pøedchozí øádek, C-p + : + : + Dozadu, C-b .... Momentální pozice kurzoru .... Dopøedu, C-f + : + : + Následující øádek, C-n + +>> Pøesuòte kurzor na prostøední øádek tohoto diagramu pomocí + C-n nebo C-p. Potom stisknìte C-l, abyste na obrazovce vidìli celý + diagram vycentrován. + +Pravdìpodobnì se vám budou tyto pøíkazy snadno pamatovat podle +poèáteèních písmen anglických názvù: P jako previous (pøedchozí), +N jako next (následující), B jako backward (zpìt), F jako forward (vpøed). +Jsou to základní pøíkazy pro pohyb kurzoru a budete je pou¾ívat +neustále, tak¾e by bylo velmi vhodné, kdybyste se je teï nauèili. + +>> Proveïte nìkolikrát C-n, abyste kurzor pøesunuli na tento øádek. + +>> Posuòte kurzor dovnitø øádku pomocí nìkolika C-f a pak nahoru stiskem C-p. + Pozorujte, co C-p dìlá, kdy¾ je kurzor uprostøed øádku. + +Ka¾dý øádek textu konèí znakem nového øádku, který jej oddìluje od øádku +následujícího. Znakem nového øádku by mìl být ukonèen i poslední øádek +souboru (pøesto¾e to Emacs nevy¾aduje). + +>> Vyzkou¹ejte C-b na zaèátku øádku. Kurzor by se mìl pøesunout na konec + pøedchozího øádku, nebo» jej tím pøesunete pøes znak nového øádku. + +C-f funguje analogicky jako C-b, tj. na konci øádku dojde k pøesunu na +dal¹í øádek. + +>> Proveïte nìkolik C-b, tak¾e uvidíte, kde se nachází kurzor. + Pak provádìjte C-f, abyste se vrátili na konec øádku. + Pak proveïte je¹tì jednou C-f, abyste se pøesunuli na následující + øádek. + +Kdy¾ kurzorem pøejdete pøes horní nebo dolní okraj obrazovky, posune se +text za pøíslu¹ným okrajem na obrazovku. Tato vlastnost se nazývá +"scrollování". Umo¾òuje pøemístit kurzor na libovolné místo v textu, +ani¾ by kurzor opustil obrazovku. + +>> Zkuste posunout kurzor pod dolní okraj obrazovky pomocí C-n a pozorujte, + co se stane. + +Jestli¾e je posun po znacích pøíli¹ pomalý, mù¾ete se pohybovat po +slovech. M-f (META-f) provádí posun o slovo vpøed a M-b provádí posun +o slovo zpìt. + +>> Stisknìte nìkolikrát M-f a M-b. + +Pokud se kurzor nachází uprostøed slova, M-f provede pøesun na konec +tohoto slova. Nachází-li se kurzor v mezeøe mezi slovy, M-f provede +pøesun na konec následujícího slova. M-b pracuje analogicky v opaèném +smìru. + +>> Stisknìte nìkolikrát M-f a M-b prolo¾enì s C-f a C-b, abyste vidìli + výsledky pøíkazù M-f a M-b provádìných z rùzných míst uvnitø slov a + mezi nimi. + +V¹imnìte si analogie mezi C-f a C-b na jedné stranì a M-f a M-b na +stranì druhé. Znaky s klávesou META jsou velmi èasto vyu¾ívány pro operace +vztahující se k entitám definovaným jazykem (slova, vìty, odstavce), +zatímco znaky s klávesou CONTROL pracují na základních prvcích +nezávislých na tom, co zrovna editujete (znaky, øádky, apod.). + +Tato analogie platí také pro øádky a vìty: C-a a C-e provádí pøesun +na zaèátek a konec øádku, M-a a M-e provádí pøesun na zaèátek a konec +vìty. + +>> Zkuste nìkolikrát C-a a poté nìkolikrát C-e. + Zkuste nìkolikrát M-a a poté nìkolikrát M-e. + +V¹imnìte si, ¾e opakované C-a nedìlá nic, zatímco opakované M-a v¾dy +provádí posun o dal¹í vìtu. Principu analogie to sice pøíli¹ +neodpovídá, ale pøesto je toto chování mo¾no pova¾ovat za pøirozené. + +Pozice kurzoru v textu se také nazývá "bod" ("point"). Abychom to +parafrázovali, kurzor je vidìt na obrazovce v místì, kde je bod umístìn +v textu. + +Zde je pøehled jednoduchých operací pro pohyb kurzoru vèetnì pøíkazù pro +pohyb mezi slovy a vìtami: + + C-f Pøesun o znak vpøed + C-b Pøesun o znak zpìt + + M-f Pøesun o slovo vpøed + M-b Pøesun o slovo zpìt + + C-n Pøesun na následující øádek + C-p Pøesun na pøedchozí øádek + + C-a Pøesun na zaèátek øádku + C-e Pøesun na konec øádku + + M-a Pøesun zpìt na zaèátek vìty + M-e Pøesun vpøed na konec vìty + +>> Vyzkou¹ejte si teï nìkolikrát v¹echny tyto pøíkazy pro procvièení. + Jsou to nejpou¾ívanìj¹í pøíkazy. + +Dal¹í dva dùle¾ité pøíkazy pro pohyb kurzoru jsou M-< (META men¹í-ne¾), +který provede pøesun na zaèátek celého textu, a M-> (META vìt¹í-ne¾), +který provede pøesun na konec celého textu. + +Na vìt¹inì terminálù je "<" nad èárkou, tak¾e pro vyvolání tohoto znaku +musíte pou¾ít klávesu Shift. Na tìchto terminálech je tedy nutno pou¾ít +klávesu Shift i v pøípadì pøíkazu M-<; bez klávesy Shift byste provedli +M-èárka. + +>> Zkuste teï M-< pro pøesun na zaèátek tutoriálu. + Pou¾ijte pak opakovanì C-v, abyste se opìt vrátili sem. + +>> Zkuste teï M-> pro pøesun na konec tutoriálu. + Pou¾ijte pak opakovanì M-v, abyste se opìt vrátili sem. + +Kurzor mù¾ete pøesouvat také pomocí kurzorových kláves (klávesy +se ¹ipkami), pokud je vá¹ terminál má. My v¹ak doporuèujeme nauèit se +C-b, C-f, C-n a C-p, a to ze tøí dùvodù. Za prvé, tyto klávesy fungují +na v¹ech typech terminálù. Za druhé, jakmile jednou získáte cvik +v pou¾ívání Emacsu, zjistíte, ¾e pou¾ívání tìchto CTRL znakù je +rychlej¹í ne¾ pou¾ívání kurzorových kláves (proto¾e nemusíte pøesouvat +ruku z psací pozice). Za tøetí, zvyknete-li si pou¾ívat tyto CTRL-znak +pøíkazy, snadno se nauèíte pou¾ívat jiné pokroèilé pøíkazy pro pohyb +kurzoru. + +Vìt¹ina pøíkazù Emacsu akceptuje numerický argument; ten pro vìt¹inu +pøíkazù slou¾í jako opakovaè. Poèet opakování pøíkazu zadáte +prostøednictvím stisku C-u následovaného stiskem pøíslu¹ných èíslic pøed +vyvoláním pøíkazu. Máte-li META (nebo EDIT èi ALT) klávesu, existuje +alternativní mo¾nost zadání numerického argumentu: pøidr¾te klávesu META +a stisknìte pøíslu¹né èíslice. Doporuèujeme nauèit se C-u metodu, +proto¾e ta funguje na jakémkoliv terminálu. + +Napøíklad C-u 8 C-f provede pøesun o osm znakù vpøed. + +Vìt¹ina pøíkazù pou¾ívá numerický argument jako opakovaè. Jisté +výjimeèné pøíkazy jej pou¾ívají jiným zpùsobem. Mezi tyto výjimky patøí +C-v a M-v. Dostanou-li numerický argument, posunou obrazovku nahoru +nebo dolù o odpovídající poèet øádkù místo obrazovek. Napøíklad +C-u 4 C-v posune obrazovku o 4 øádky. + +>> Zkuste teï stisknout C-u 8 C-v. + +To by mìlo posunout obrazovku o 8 øádkù nahoru. Pokud byste ji chtìli +posunout zpìt dolù, mù¾ete dát argument pøíkazu M-v. + +Pou¾íváte-li X Window, mìli byste mít na levé stranì emacsového okna +vysokou obdélníkovou oblast, nazývanou scrollbar. Mù¾ete pak text +posouvat klikáním my¹í na scrollbar. + +>> Zkuste stisknout prostøední tlaèítko na vrcholu zvýraznìné oblasti + uvnitø scrollbaru. To by mìlo text posunout na pozici danou tím, jak + vysoko nebo nízko jste kliknuli. + +>> Zkuste pøi stisknutém prostøedním tlaèítku posouvat my¹í nahoru a + dolù. Uvidíte, jak se text posouvá nahoru a dolù podle toho, jak + posouváte my¹í. + + +* KDY® EMACS NEREAGUJE +---------------------- + +Jestli¾e Emacs pøestane reagovat na va¹e pøíkazy, mù¾ete probíhající +èinnost bezpeènì zastavit pomocí C-g. Pomocí C-g mù¾ete zastavit +pøíkaz, jeho¾ provádìní trvá pøíli¹ dlouho. + +C-g mù¾ete pou¾ít také pro odstranìní numerického argumentu pøíkazu, +který nechcete dokonèit. + +>> Stisknìte C-u 100 pro vytvoøení numerického argumentu 100 a pak + stisknìte C-g. Nyní stisknìte C-f. Mìl by být proveden posun + o právì jeden znak, proto¾e jste argument zru¹ili prostøednictvím + C-g. + +Pokud jste omylem stiskli , mù¾ete se jej zbavit pomocí C-g. + + +* DEAKTIVOVANÉ PØÍKAZY +---------------------- + +Nìkteré pøíkazy Emacsu jsou "deaktivované" ("disabled"), aby je +zaèínající u¾ivatelé nemohli vyvolat náhodnì. + +Pokud vyvoláte nìkterý z deaktivovaných pøíkazù, Emacs zobrazí hlá¹ení +oznamující, který pøíkaz to byl, s dotazem, zda chcete tento pøíkaz +provést. + +Pokud opravdu chcete pøíkaz vyzkou¹et, stisknìte mezerník jako odpovìï +na tuto otázku. Obyèejnì, jestli¾e nechcete deaktivovaný pøíkaz +provést, odpovìzte na tuto otázku pomocí "n". + +>> Stisknìte C-x C-l (co¾ je deaktivovaný pøíkaz), + pak na otázku odpovìzte n. + + +* OKNA +------ + +Emacs mù¾e mít nìkolik oken (windows), z nich¾ ka¾dé zobrazuje svùj +vlastní text. Jak více oken pou¾ívat, objasníme pozdìji. Nyní chceme +objasnit, jak se zbavit nadbyteèných oken a vrátit se do základní +jednookenní editace. Je to jednoduché: + + C-x 1 Jedno okno (tj. zru¹ení v¹ech ostatních oken) + +Tedy vlo¾ení CONTROL-x následované èíslicí 1. C-x 1 roz¹íøí okno +obsahující kurzor pøes celou obrazovku. Zru¹í to v¹echna ostatní okna. + +>> Stisknìte C-h k C-f. + Pozorujte, jak se aktuální okno zmen¹í a objeví se nové okno za + úèelem zobrazení dokumentace k pøíkazu C-f. + +>> Stisknìte C-x 1 a pozorujte, jak okno s dokumentací zmizí. + + +* VKLÁDÁNÍ A MAZÁNÍ +------------------- + +Chcete-li vlo¾it text, prostì jej napi¹te. Znaky, které vidíte, +jako A, 7, *, atd., jsou Emacsem chápány jako text a vkládány okam¾itì. +Pro vlo¾ení znaku nového øádku stisknìte (klávesu Enter). + +Poslední znak, který jste napsali, mù¾ete smazat stiskem . + je klávesa, která mù¾e být na klávesnici oznaèena "Del". +V nìkterých pøípadech jako slou¾í klávesa "Backspace", av¹ak ne +v¾dy! + +Obecnìji, ma¾e znak bezprostøednì pøed momentální pozicí +kurzoru. + +>> Proveïte to teï -- napi¹te nìkolik znakù a pak je sma¾te nìkolika + stisky . Nebojte se zmìn v tomto souboru; originální + tutoriál se nezmìní. Toto je va¹e osobní kopie. + +Kdy¾ se øádek textu zvìt¹í natolik, ¾e pøesáhne jeden øádek obrazovky, +je zobrazen na více øádcích obrazovky. Øádek textu, který pokraèuje na +dal¹ím øádku obrazovky, je indikován zpìtným lomítkem ("\") na pravém +okraji obrazovky. + +>> Vkládejte text, a¾ dosáhnete pravého okraje, a pokraèujte ve vkládání. + Objeví se vám pokraèovací øádek. + +>> Pou¾ijte pro smazání textu, a¾ se øádek textu opìt vejde na + jeden øádek obrazovky. Pokraèovací øádek zmizí. + +Znak nového øádku mù¾ete smazat jako kterýkoliv jiný znak. Smazání +znaku nového øádku mezi dvìma øádky zpùsobí jejich spojení do jediného +øádku. Je-li výsledný øádek pøíli¹ dlouhý na to, aby se ve¹el na ¹íøku +obrazovky, bude zobrazen pokraèovacím øádkem. + +>> Pøesuòte kurzor na zaèátek øádku a stisknìte . To tento + øádek spojí s øádkem pøedchozím. + +>> Stisknìte pro znovuvlo¾ení smazaného znaku nového øádku. + +Vzpomeòte si, ¾e vìt¹ina pøíkazù Emacsu mù¾e dostat poèet opakování; +vèetnì textových znakù. Opakování textových znakù je vlo¾í nìkolikrát. + +>> Vyzkou¹ejte si to teï -- stisknìte C-u 8 * pro vlo¾ení ********. + +Teï u¾ znáte nejzákladnìj¹í zpùsoby, jak nìco v Emacsu napsat a jak +opravovat chyby. Mù¾ete ov¹em také mazat po slovech nebo po øádcích. +Zde je shrnutí operací pro mazání textu: + + Smazání znaku bezprostøednì pøed kurzorem + C-d Smazání znaku následujícího za kurzorem + + M- Zru¹ení slova bezprostøednì pøed kurzorem + M-d Zru¹ení slova následujícího za kurzorem + + C-k Zru¹ení textu od pozice kurzoru do konce øádku + M-k Zru¹ení textu do konce aktuální vìty + +V¹imnìte si, ¾e a C-d, resp. M- a M-d, roz¹iøují +paralelu zapoèatou C-f a M-f (pravda, opravdu není CONTROL +znak, ale netrapme se tím). C-k a M-k jsou jako C-e a M-e ve smyslu +vztahu øádkù k vìtám. + +Libovolnou èást bufferu mù¾ete té¾ zru¹it následující metodou. +Pøesuòte se na jeden konec této èásti a stisknìte C-@ nebo C-SPC +(libovolnou z tìchto kombinací). (SPC oznaèuje mezerník.) Pøesuòte +se na druhý konec této èásti a stisknìte C-w. Text mezi tìmito +pozicemi bude zru¹en. + +>> Pøesuòte kurzor na písmeno L na zaèátku pøedchozího odstavce. +>> Stisknìte C-SPC. Emacs by mìl ve spodním øádku obrazovky + zobrazit zprávu "Mark set". +>> Pøesuòte kurzor na písmeno c ve slovì "konec" na druhém øádku + odstavce. +>> Stisknìte C-w. Text zaèínající písmenem L a konèící pøed písmenem + c bude zru¹en. + +Uvìdomte si, ¾e rozdíl mezi "ru¹ením" ("killing") a "mazáním" +("deleting") je ten, ¾e "zru¹ené" vìci mohou být zpìt vhozeny, zatímco +"smazané" nikoliv. Obecnì pøíkazy, které mohou smazat vìt¹í mno¾ství +textu, ukládají text, zatímco pøíkazy, které ma¾ou jediný znak nebo +pouze prázdné øádky a mezery, mazaný text neukládají. + +>> Pøesuòte kurzor na zaèátek neprázdného øádku. + Pak stisknìte C-k pro zru¹ení textu na tomto øádku. +>> Stisknìte C-k podruhé. Uvidíte, ¾e to zru¹í znak nového øádku, který + je za tímto øádkem. + +V¹imnìte si, ¾e jedno C-k zru¹í obsah øádku a druhé C-k zru¹í øádek +samotný a posune v¹echny dal¹í øádky nahoru. C-k zpracovává numerický +argument speciálnì: zru¹í odpovídající poèet øádkù VÈETNÌ jejich +obsahu. To u¾ není opakování. C-u 2 C-k zru¹í dva øádky a jejich +obsah; dvojitý stisk C-k by toto obvykle neudìlal. + +Vracení textu zpìt se nazývá "vhazování" ("yanking"). (Pøedstavte +si opìtovné vhazování, vracení døíve odstranìného textu zpátky.) +Zru¹ený text mù¾ete vhodit buï na stejné místo, kde byl zru¹en, +nebo na jiné místo v bufferu, nebo dokonce i do jiného souboru. +Text mù¾ete vhodit i vícekrát, vytváøíte tak jeho dal¹í kopie. + +Pøíkazem pro vhazování je C-y. Tento pøíkaz vlo¾í poslední smazaný +text na pozici, na které se nachází kurzor. + +>> Zkuste to; stisknìte C-y pro vhození textu zpìt. + +Stisknete-li nìkolikrát C-k po sobì, v¹echen smazaný text je ulo¾en +spoleènì tak, aby bylo mo¾né vhodit zpìt v¹echny øádky najednou. + +>> Stisknìte nìkolikrát C-k. + +Nyní obnovte poslednì zru¹ený text: + +>> Stisknìte C-y. Pak posuòte kurzor o nìkolik øádkù ní¾e a stisknìte + C-y znova. Nyní vidíte, jak lze text kopírovat. + +Co kdy¾ máte nìjaký text, který byste rádi vhodili zpìt a pak zru¹íte +nìco jiného? C-y by vlo¾ilo poslední zru¹ený text. Av¹ak pøedchozí +text není ztracen. Mù¾ete jej získat zpìt pou¾itím pøíkazu M-y. Poté, +co provedete C-y pro získání posledního zru¹eného textu, stisk M-y +vymìní tento vhozený text za pøedchozí zru¹ený text. Dal¹ími a +dal¹ími stisky M-y dostáváte pøedcházející a pøedcházející zru¹ené +texty. Kdy¾ dosáhnete textu, který hledáte, nemusíte s ním pro jeho +uchování nic dal¹ího provádìt. Jednodu¹e vhozený text ponechejte, kde +je, a pokraèujte v editaci. + +Pokud opakujete M-y dostateènì dlouho, dostanete se zpátky k výchozímu +bodu (poslednì zru¹enému textu). + +>> Zru¹te øádek, pøesuòte kurzor nìkam jinam a zru¹te jiný øádek. + Pak proveïte C-y pro vrácení druhého zru¹eného øádku. + Pak proveïte M-y a vhozený øádek bude nahrazen prvním zru¹eným øádkem. + Opakujte M-y a pozorujte, co dostáváte. Pokraèujte v tom, dokud se + znovu neobjeví druhý zru¹ený øádek a pak nìkolik dal¹ích. + Chcete-li, mù¾ete zkusit pøedat M-y kladné a záporné argumenty. + + +* UNDO +------ + +Jestli¾e provedete v textu zmìnu a pak zjistíte, ¾e to byl omyl, mù¾ete +zmìnu vrátit pøíkazem undo, C-x u. + +C-x u obvykle vrátí zmìny provedené jedním pøíkazem; pokud C-x u +zopakujete nìkolikrát za sebou, ka¾dé opakování vrátí jeden dal¹í +pøíkaz. + +Jsou ale dvì výjimky: pøíkazy, které nemìní text, se nepoèítají (to +zahrnuje pøíkazy pro pohyb kurzoru a scrollování) a znaky vkládající +samy sebe jsou obvykle zpracovávány ve skupinách a¾ po 20. (To je kvùli +tomu, aby se zredukoval poèet C-x u nutných pro vrácení vkládaného +textu.) + +>> Zru¹te tento øádek pomocí C-k, stisknìte pak C-x u a øádek by se mìl + znovu objevit. + +Alternativní undo pøíkaz je C-_; pracuje stejnì jako C-x u, je v¹ak +ménì pracné jej aplikovat nìkolikrát za sebou. Nevýhodou C-_ je, ¾e +na nìkterých klávesnicích není zøejmé, jak jej vyvolat. To je dùvod, +proè nabízíme i C-x u. Na nìkterých terminálech mù¾ete C-_ vyvolat +stiskem / pøi stisknutém CTRL. + +Numerický argument pro C-_ a C-x u funguje jako poèet opakování. + +Pomocí pøíkazu undo mù¾ete vrátit zru¹ený stejnì jako smazaný text. +Rozdíl mezi mazáním a ru¹ením textu ovlivòuje mo¾nost vhození tohoto +textu pomocí C-y, neovlivòuje mo¾nosti pøíkazu undo. + + +* SOUBORY +--------- + +Aby text, který editujete, zùstal trvale uchován, musíte jej ulo¾it do +souboru. Jinak by byl po ukonèení Emacsu ztracen. Svoji editaci +spojíte se souborem "vyhledáním" ("finding") souboru. (Také se to +nazývá "nav¹tívení" ("visiting") souboru.) + +Vyhledání souboru znamená, ¾e vidíte jeho obsah v Emacsu. V mnoha +ohledech je to, jako byste editovali pøímo ten soubor. Nicménì zmìny, +které prostøednictvím Emacsu èiníte, se nestanou trvalými, dokud tyto +zmìny do souboru "neulo¾íte" ("save"). Tím se zamezí nechtìnému ponechání +èásteènì zmìnìného souboru v systému. Dokonce i kdy¾ soubor ulo¾íte, +Emacs uchová pùvodní soubor pod zmìnìným názvem pro pøípad, ¾e byste +zjistili, ¾e va¹e úpravy byly chybné. + +Kdy¾ se podíváte do dolní èásti obrazovky, uvidíte øádek, který zaèíná a +konèí pomlèkami a na zaèátku má "2J:-- TUTORIAL.cs" nebo nìco podobného. +Tato èást obrazovky obvykle obsahuje jméno souboru, který je právì +nav¹tíven. Zrovna teï máte nav¹tíven soubor nazvaný "TUTORIAL.cs", +který je va¹í osobní èmárací kopií tutoriálu Emacsu. Kdy¾ v Emacsu +vyhledáte soubor, jeho jméno se objeví pøesnì na tom místì. + +Pøíkazy pro vyhledávání a ukládání souborù se na rozdíl od ostatních +pøíkazù, které jste se zatím nauèili, skládají ze dvou znakù. Oba +zaèínají znakem CONTROL-x. Existuje celá øada pøíkazù zaèínajících na +CONTROL-x; mnoho z nich pracuje se soubory, buffery a podobnými vìcmi. +Tyto pøíkazy jsou dlouhé dva, tøi nebo ètyøi znaky. + +Dal¹í vìcí ohlednì pøíkazu pro vyhledání souboru je to, ¾e musíte øíct, +které jméno souboru chcete. Øíkáme, ¾e pøíkaz "ète argument +z terminálu" (v tomto pøípadì je argumentem jméno souboru). Poté co +vyvoláte pøíkaz + + C-x C-f Vyhledání souboru + +Emacs se vás zeptá na jméno souboru. Jméno souboru, které pí¹ete, se +objevuje ve spodním øádku obrazovky, který se v této situaci nazývá +minibuffer. Pro editaci jména souboru mù¾ete pou¾ívat obvyklé editaèní +pøíkazy Emacsu. + +Zadávání jména souboru (obecnì kterýkoliv vstup z minibufferu) mù¾ete +zru¹it pøíkazem C-g. + +>> Stisknìte C-x C-f a pak C-g. To minibuffer zru¹í a takté¾ to zru¹í + pøíkaz C-x C-f, který minibuffer pou¾il. Tak¾e nevyhledáte ¾ádný + soubor. + +Po napsání jména souboru stisknìte . +Pøíkaz C-x C-f pak zaène pracovat a vyhledá soubor, který jste zvolili. +Po skonèení pøíkazu C-x C-f minibuffer zmizí. + +Po malé chvilce se obsah souboru objeví na obrazovce a mù¾ete jej +editovat. Kdy¾ chcete zmìny trvale ulo¾it, pou¾ijte pøíkaz + + C-x C-s Ulo¾ení souboru + +To zkopíruje text z Emacsu do souboru. Kdy¾ to provedete poprvé, Emacs +pøejmenuje pùvodní soubor na soubor s novým jménem, aby nebyl ztracen. +Nové jméno je vytvoøeno pøidáním "~" na konec pùvodního jména souboru. + +Kdy¾ je ukládání dokonèeno, Emacs zobrazí jméno zapsaného souboru. +Mìli byste ukládat rozumnì èasto, abyste neztratili pøíli¹ mnoho práce +v pøípadì pádu systému. + +>> Stisknìte C-x C-s pro ulo¾ení va¹í kopie tutoriálu. + Mìlo by to zobrazit "Wrote ...TUTORIAL.cs" ve spodním øádku obrazovky. + +POZNÁMKA: Na nìkterých systémech zpùsobí stisk C-x C-s ztuhnutí +obrazovky a nevidíte ¾ádný dal¹í výstup z Emacsu. To znamená, ¾e +"vlastnost" operaèního systému zvaná "flow control" zachycuje C-s a +nepropustí jej k Emacsu. Pro odtuhnutí obrazovky stisknìte C-q. Pak +v sekci "Spontaneous Entry to Incremental Search" v manuálu Emacsu +vyhledejte radu, jak se vypoøádat s touto "vlastností". + +Existující soubor mù¾ete vyhledat, abyste jej mohli prohlí¾et nebo +editovat. Mù¾ete také vyhledat soubor, který je¹tì neexistuje. To je +zpùsob, jakým lze vytvoøit soubor v Emacsu: vyhledejte soubor, který +bude na zaèátku prázdný a pak zaènìte vkládat text urèený pro tento +soubor. Kdy¾ po¾ádáte o ulo¾ení, Emacs skuteènì vytvoøí soubor +s textem, který jste vlo¾ili. Od té chvíle se pak mù¾ete cítit, jako +kdybyste editovali ji¾ existující soubor. + + +* BUFFERY +--------- + +Jestli¾e vyhledáte pomocí C-x C-f druhý soubor, první soubor v Emacsu +zùstává. Mù¾ete se do nìj zpìt pøepnout jeho opìtovným vyhledáním +pomocí C-x C-f. Tímto zpùsobem mù¾ete do Emacsu dostat pomìrnì hodnì +souborù. + +>> Vytvoøte soubor pojmenovaný "foo" stiskem C-x C-f foo . + Potom vlo¾te nìjaký text, zeditujte jej a ulo¾te "foo" stiskem C-x C-s. + Nakonec stisknìte C-x C-f TUTORIAL.cs , èím¾ se vrátíte zpìt do + tutoriálu. + +Emacs ukládá text ka¾dého souboru do objektu nazývaného "buffer". +Vyhledání souboru vytvoøí v Emacsu nový buffer. Chcete-li vidìt seznam +bufferù, které momentálnì existují ve va¹em procesu Emacs, stisknìte: + + C-x C-b Seznam bufferù + +>> Zkuste teï C-x C-b. + +Podívejte se, ¾e ka¾dý buffer má v seznamu jméno a mù¾e tam mít také jméno +souboru, jeho¾ text obsahuje. Nìkteré buffery neodpovídají souborùm. +Napøíklad buffer pojmenovaný "*Buffer List*" nemá ¾ádný soubor. Je to +buffer, který obsahuje seznam bufferù vytvoøený pomocí C-x C-b. +JAKÝKOLIV text, který vidíte v emacsovém oknì, je v¾dy souèástí +nìjakého bufferu. + +>> Stisknìte C-x 1, abyste se zbavili seznamu bufferù. + +Pokud provedete zmìny textu jednoho souboru a pak vyhledáte jiný soubor, +nezpùsobí to ulo¾ení prvního souboru. Jeho zmìny zùstávají v Emacsu +uchovány v jemu odpovídajícím bufferu. Vytvoøení a editace druhého +souboru nemá ¾ádný vliv na buffer prvního souboru. To je velmi +u¾iteèné, ale také to znamená, ¾e potøebujete vhodný zpùsob, jak ulo¾it +buffer prvního souboru. Nutnost pøepnout se zpátky pomocí C-x C-f, aby +jej bylo mo¾no ulo¾it prostøednictvím C-x C-s, by byla nemístnì +obtì¾ující. Tak¾e máme + + C-x s Ulo¾ení nìkterých bufferù + +C-x s se vás zeptá na ka¾dý buffer, který obsahuje zmìny, které jste +neulo¾ili. Pro ka¾dý takový buffer se vás zeptá, zda jej má ulo¾it. + +>> Vlo¾te øádek textu a pak stisknìte C-x s. + Mìli byste být dotázáni, zda má být ulo¾en buffer nazvaný TUTORIAL.cs. + Odpovìzte na tuto otázku ano (yes) stiskem "y". + + +* ROZ©IØOVÁNÍ SADY PØÍKAZÙ +-------------------------- + +Existuje mnohem, mnohem více pøíkazù Emacsu, ne¾ které by vùbec mohly +být rozmístìny na v¹echny CONTROL a META znaky. Emacs tento problém +obchází prostøednictvím X (eXtend) pøíkazu. Ten vzniká dvìma zpùsoby: + + C-x Znakový eXtend. Následován jedním znakem. + M-x Pojmenovaný pøíkaz eXtend. Následován dlouhým názvem. + +To jsou pøíkazy, které jsou obecnì u¾iteèné, av¹ak ménì èasto pou¾ívané +ne¾ ty, které jste se ji¾ nauèili. U¾ jste vidìli dva z nich: souborové +pøíkazy C-x C-f pro vyhledání a C-x C-s pro ulo¾ení. Jiný pøíklad je +pøíkaz pro ukonèení Emacsu -- tj. pøíkaz C-x C-c. (Nemìjte obavy +o ztrátu zmìn, které jste provedli; C-x C-c nabídne ulo¾ení ka¾dého +zmìnìného souboru, ne¾ Emacs ukonèí.) + +C-z je pøíkaz na *doèasné* opu¹tìní Emacsu -- mù¾ete se po nìm do +spu¹tìného Emacsu vrátit. + +Na systémech, které to umo¾òují, C-z Emacs "pozastaví"; tzn. vrátí vás +do shellu, av¹ak Emacs neukonèí. V nejbì¾nìj¹ích shellech se mù¾ete do +Emacsu vrátit pøíkazem `fg' nebo pomocí `%emacs'. + +Na systémech, které pozastavování procesù nemají implementováno, C-z +vytvoøí subshell bì¾ící pod Emacsem, aby vám dal ¹anci spustit jiné +programy a pak se do Emacsu vrátit; neprovede tedy pravé opu¹tìní +Emacsu. V tom pøípadì je obvyklou cestou návratu ze subshellu do Emacsu +shellovský pøíkaz `exit'. + +Chvíle pro pou¾ití C-x C-c nastane, kdy¾ se chystáte odhlásit ze +systému. Správné je to také pøi ukonèování Emacsu vyvolaného po¹tovním +programem a rùznými jinými utilitami, proto¾e ty nemusí vìdìt, jak si +poradit s pozastavením Emacsu. Nicménì za normálních okolností, pokud +se nechystáte odlogovat, je lépe Emacs pozastavit pomocí C-z ne¾ jej +ukonèit. + +Existuje mnoho C-x pøíkazù. Zde je seznam tìch, které jste se ji¾ nauèili: + + C-x C-f Vyhledání souboru + C-x C-s Ulo¾ení soubor + C-x C-b Seznam bufferù + C-x C-c Ukonèení Emacsu + C-x u Undo + +Pojmenované eXtended pøíkazy jsou pøíkazy, které jsou pou¾ívány je¹tì +ménì, nebo pøíkazy, které jsou pou¾ívány jenom v jistých módech. +Pøíkladem je pøíkaz replace-string, který globálnì nahradí jeden øetìzec +jiným. Kdy¾ stisknete M-x, vypí¹e se na spodním øádku obrazovky prompt +M-x a vy byste mìli zadat jméno pøíkazu; v tomto pøípadì +"replace-string". Jednodu¹e napi¹te "repl s" a Emacs název doplní. +Dokonèete zadávání jména pøíkazu pomocí . + +Pøíkaz replace-string vy¾aduje dva argumenty -- øetìzec, který má být +nahrazen, a øetìzec, který jej má nahradit. Ka¾dý argument musíte +ukonèit pomocí . + +>> Pøesuòte kurzor na prázdný øádek dva øádky pod tímto. + Pak napi¹te M-x repl szmìnilmodifikoval. + + V¹imnìte si, jak se tento øádek zmìnil: nahradili jste slovo + z-m-ì-n-i-l slovem "modifikoval", kdekoliv se za aktuální pozicí + kurzoru vyskytlo. + + +* AUTOMATICKÉ UKLÁDÁNÍ +---------------------- + +Jestli¾e jste provedli zmìny v souboru, ale nemáte je je¹tì ulo¾eny, +mohou být v pøípadì pádu systému ztraceny. Aby vás Emacs od toho +uchránil, periodicky zapisuje "auto save" soubor pro ka¾dý soubor, který +editujete. Jméno auto save souboru má na zaèátku a na konci #; +napøíklad jestli¾e se vá¹ soubor jmenuje "hello.c", jeho auto save +soubor se jmenuje "#hello.c#". Kdy¾ soubor ulo¾íte normálním zpùsobem, +Emacs auto save soubor sma¾e. + +Jestli¾e dojde k pádu systému, mù¾ete svoji editaci obnovit z auto-save +souboru, a to normálním vyhledáním souboru (toho, který jste editovali, +ne auto save souboru) a následnou aplikací M-x recover file. +Na ¾ádost o potvrzení odpovìzte zadáním yes pro pokraèování a +obnovení auto-save dat. + + +* ECHO OBLAST +------------- + +Kdy¾ Emacs vidí, ¾e pí¹ete pøíkazy pomalu, ukazuje vám je ve spodní +èásti obrazovky v oblasti nazývané "echo oblast". Echo oblast obsahuje +dolní øádek obrazovky. + + +* STAVOVÝ ØÁDEK +--------------- + +Øádek bezprostøednì nad echo oblastí se nazývá "stavový øádek" ("mode line"). +Stavový øádek øíká nìco jako: + +2J:** TUTORIAL.cs (Fundamental)--L670--58%---------------- + +Tento øádek podává u¾iteènou informaci o stavu Emacsu a textu, který +editujete. + +U¾ víte, co znamená jméno souboru -- je to soubor, který jste vyhledali. +-NN%-- oznaèuje va¹i aktuální pozici v textu; øíká, ¾e NN procent textu +je nad horním okrajem obrazovky. Je-li zaèátek souboru na obrazovce, je +zde --Top-- a ne --00%--. Je-li konec textu na obrazovce, je zde +--Bot--. Jestli¾e se díváte na tak malý text, ¾e se celý vejde na +obrazovku, stavový øádek øíká --All--. + +Hvìzdièky poblí¾ zaèátku znamenají, ¾e jste text zmìnili. Tìsnì po +vyhledání nebo ulo¾ení souboru v této èásti stavového øádku nejsou ¾ádné +hvìzdièky, pouze pomlèky. + +Èást stavového øádku v závorkách øíká, v jakých editaèních módech se +nacházíte. Implicitní mód je Fundamental, co¾ je ten, který momentálnì +pou¾íváte. Je pøíkladem hlavního módu ("major mode"). + +Emacs má celou øadu hlavních módù. Nìkteré z nich jsou urèeny pro +editaci rùzných programovacích jazykù a/nebo textù jako tøeba Lisp mód, +Text mód, atd. V libovolném okam¾iku je aktivní právì jeden hlavní mód a +jeho jméno lze nalézt ve stavovém øádku na místì, kde je teï +"Fundamental". + +Ka¾dý hlavní mód mìní chování nìkterých pøíkazù. Napøíklad existují +pøíkazy pro vytváøení komentáøù v programu, a proto¾e ka¾dý programovací +programovací jazyk má jinou pøedstavu o tom, jak má komentáø vypadat, +musí ka¾dý hlavní mód vkládat komentáøe jinak. Ka¾dý hlavní mód je +vlastnì jméno extended pøíkazu, kterým se do tohoto módu mù¾ete +pøepnout. Napøíklad M-x fundamental-mode je pøíkaz pro pøepnutí se do +Fundamental módu. + +Chystáte-li se editovat èeský text, jako tøeba tento soubor, +pravdìpodobnì byste mìli pou¾ít Text mód. +>> Napi¹te M-x text-mode. + +Nebojte se, ¾ádný z pøíkazù, které jste se nauèili, chování Emacsu nijak +významnì nezmìní. Mù¾ete si ale v¹imnout, ¾e M-f a M-b nyní pracují +s apostrofy jako se souèástmi slov. Pøedtím, ve Fundamental módu, M-f a +M-b pracovaly s apostrofy coby oddìlovaèi slov. + +Hlavní módy obvykle dìlají men¹í zmìny, jako byla tato: pøíkazy vìt¹inou +dìlají "toté¾", ale v ka¾dém hlavním módu pracují tro¹ku jinak. + +Dokumentaci k aktuálnímu hlavnímu módu si mù¾ete zobrazit stiskem C-h m. + +>> Jednou nebo nìkolikrát pou¾ijte C-u C-v, abyste tento øádek dostali + k vrcholu obrazovky. +>> Stisknìte C-h m, abyste vidìli, jak se Text mód li¹í od Fundamental + módu. +>> Stisknìte C-x 1 pro odstranìní dokumentace z obrazovky. + +Hlavní módy se nazývají hlavní proto, ¾e také existují vedlej¹í módy +(minor modes). Vedlej¹í módy nejsou alternativou k hlavním módùm, nýbr¾ +jejich malé modifikace. Ka¾dý vedlej¹í mód mù¾e být zapnut nebo vypnut +sám o sobì nezávisle na v¹ech ostatních vedlej¹ích módech a nezávisle na +hlavním módu. Tak¾e nemusíte pou¾ívat ¾ádný vedlej¹í mód nebo mù¾ete +pou¾ívat jeden vedlej¹í mód nebo libovolnou kombinaci nìkolika +vedlej¹ích módù. + +Jedním z velmi u¾iteèných vedlej¹ích módù, zejména pro editaci èeských +textù, je Auto Fill mód. Kdy¾ je tento mód zapnut, Emacs zalomí øádek +mezi dvìma slovy, kdykoliv vkládáte text a øádek se stane pøíli¹ +dlouhým. + +Auto Fill mód mù¾ete zapnout provedením M-x auto-fill-mode. +Je-li tento mód zapnut, mù¾ete jej vypnout provedením M-x +auto-fill-mode. Je-li mód vypnut, tento pøíkaz jej zapíná, +a je-li mód zapnut, tak jej tento pøíkaz vypíná. Øíkáme, ¾e tento +pøíkaz pøepíná ("toggles") tento mód. + +>> Napi¹te teï M-x auto-fill-mode. Pak vkládejte "asdf " stále + dokola tak dlouho, a¾ uvidíte, jak se vkládaný øádek rozdìlí na dva + øádky. Do textu musíte vkládat mezery proto, ¾e Auto Fill mód + zalamuje øádky pouze v mezerách. + +Okraj je obvykle nastaven na 70 znakù, ale mù¾ete to zmìnit pøíkazem +C-x f. Hodnotu okraje, kterou si pøejete, byste mìli pøedat jako +numerický argument. + +>> Napi¹te C-x f s argumentem 20. (C-u 2 0 C-x f). + Pak pi¹te nìjaký text a pozorujte, jak Emacs vyplòuje øádky po + 20 znacích. Pak nastavte okraj zpátky na 70 opìtovným pou¾itím + C-x f. + +Jestli¾e provedete zmìny uprostøed odstavce, Auto Fill mód jej +nepøeformátuje. +Pro pøeformátování odstavce stisknìte M-q (META-q) s kurzorem uvnitø +odstavce. + +>> Pøesuòte kurzor do pøedchozího odstavce a stisknìte M-q. + + +* VYHLEDÁVÁNÍ +------------- + +Emacs umí v textu vyhledávat øetìzce (tj. skupiny spojených znakù nebo +slov) smìrem vpøed nebo vzad. Hledání øetìzce je pøíkaz pøesunující +kurzor; pøesune kurzor na nejbli¾¹í místo, kde se tento øetìzec nachází. + +Vyhledávací pøíkaz Emacsu se li¹í od vyhledávacích pøíkazù vìt¹iny +editorù v tom smyslu, ¾e je "inkrementální". To znamená, ¾e vyhledávání +se provádí u¾ v okam¾iku, kdy zadáváte vyhledávací øetìzec. + +Pøíkaz pro zahájení hledání vpøed je C-s a pro hledání vzad C-r. +ALE POZOR! Nezkou¹ejte to je¹tì. + +Kdy¾ stisknete C-s, uvidíte v echo oblasti prompt "I-search". To vám +øíká, ¾e Emacs se nachází ve stavu, který se nazývá inkrementální hledání, +a èeká, a¾ mu zadáte, co chcete hledat. hledání ukonèí. + +>> Nyní zahajte hledání stiskem C-s. POMALU, písmeno po písmenu, pi¹te + slovo 'kurzor'. Po ka¾dém písmenu si v¹imnìte, co se dìje s kurzorem. + Teï jste vyhledali "kurzor" poprvé. +>> Stisknìte C-s znovu, abyste nalezli dal¹í výskyt "kurzor". +>> Nyní ètyøikrát stisknìte a pozorujte, jak se kurzor + pøesunuje. +>> Stisknìte pro ukonèení hledání. + +Vidìli jste, co se stalo? Emacs se v inkrementálním hledání pokou¹í +pøejít na dal¹í výskyt øetìzce, který jste dosud napsali. Chcete-li +pøejít na dal¹í výskyt 'kurzor', jednodu¹e stisknìte C-s znovu. +Jestli¾e u¾ ¾ádný takový výskyt není, Emacs pípne a øekne vám, ¾e +hledání momentálnì "selhává", C-g hledání ukonèí. + +POZNÁMKA: Na nìkterých systémech stisk C-s zpùsobí ztuhnutí +obrazovky a nevidíte ¾ádný dal¹í výstup z Emacsu. To znamená, ¾e +"vlastnost" operaèního systému zvaná "flow control" zachycuje C-s a +nepropustí jej k Emacsu. Pro odtuhnutí obrazovky stisknìte C-q. Pak +v sekci "Spontaneous Entry to Incremental Search" v manuálu Emacsu +vyhledejte radu, jak se vypoøádat s touto "vlastností". + +Jestli¾e uprostøed inkrementálního hledání stisknete , uvidíte, +¾e poslední znak v hledaném øetìzci zmizí a hledání se vrací na poslední +místo hledání. Pøedpokládejme napøíklad, ¾e jste napsali "c", abyste +na¹li první výskyt "k". Jestli¾e nyní stisknete "u", kurzor se pøesune na +první výskyt "ku". Teï stisknìte . To vyma¾e "u" z hledaného +øetìzce a kurzor se pøesune zpìt na první výskyt "k". + +Jestli¾e uprostøed hledání stisknete CONTROL nebo META znak (s nìkolika +výjimkami -- znaky, které jsou speciální v hledání, jako C-s a C-r), +hledání se ukonèí. + +C-s zahajuje hledání, které hledá jakýkoliv výskyt hledaného øetìzce ZA +aktuální pozicí kurzoru. Chcete-li nìco hledat v pøedcházejícím textu, +stisknìte C-r místo C-s. V¹e, co jsme øekli o C-s, platí také o C-r +kromì toho, ¾e smìr hledání je opaèný. + + +* VÍCE OKEN +----------- + +Jednou z pìkných vlastností Emacsu je to, ¾e mù¾e na obrazovce zobrazit +více oken souèasnì. + +>> Pøesuòte kurzor na tento øádek a stisknìte C-u 0 C-l. + +>> Teï stisknìte C-x 2, co¾ rozdìlí obrazovku na dvì okna. + Obì okna zobrazují tento tutoriál. Kurzor zùstává navrchu okna. + +>> Tisknìte C-M-v pro scrollování spodního okna. + (Nemáte-li skuteènou klávesu META, stisknìte ESC C-v.) + +>> Stisknìte C-x o ("o" jako "other") pro pøesun kurzoru do dolního okna. + +>> Pou¾ijte C-v a M-v ve spodním oknì pro jeho scrollování. + Pokraèujte ve ètení tìchto instrukcí v horním oknì. + +>> Znovu stisknìte C-x o pro pøesun kurzoru zpìt do horního okna. + Kurzor v horním oknì je pøesnì na místì, kde byl pùvodnì. + +Mù¾ete dále pou¾ívat C-x o pro pøepínání mezi okny. Ka¾dé okno má svoji +vlastní pozici kurzoru, ale jenom jedno okno kurzor skuteènì zobrazuje. +V¹echny obvyklé editaèní pøíkazy platí pro okno, ve kterém se nachází +kurzor. Toto okno nazýváme "aktivní okno" ("selected window"). + +Pøíkaz C-M-v je velmi u¾iteèný, jestli¾e v jednom oknì editujete text a +druhé okno pou¾íváte pouze pro pøehled. Mù¾ete kurzor nechávat stále +v oknì, kde editujete, a postupovat po druhém oknì pomocí C-M-v. + +C-M-v je pøíkladem CONTROL-META znaku. Máte-li skuteènou META klávesu, +mù¾ete vyvolat C-M-v pøidr¾ením obou kláves CTRL a META pøi stisku v. +Nezále¾í na tom, zda je prvnì stisknuta CTRL nebo META, proto¾e obì tyto +klávesy fungují jako modifikátory kláves, které tisknete. + +Pokud nemáte skuteènou META klávesu, mù¾ete místo ní pou¾ít ESC, na +poøadí zále¾í: musíte stisknout ESC a následnì CTRL-v; CTRL-ESC v by +nefungovalo. To proto, ¾e ESC je samostatný znak, nikoliv modifikátor. + +>> Stisknìte C-x 1 (v horním oknì), abyste se zbavili dolního okna. + +(Kdybyste C-x 1 stiskli v dolním oknì, odstranilo by to horní okno. +Chápejte tento pøíkaz jako "ponechej právì jedno okno -- to, ve kterém +zrovna jsem".) + +Nemusíte v obou oknech zobrazovat tentý¾ buffer. Jestli¾e pou¾ijete +C-x C-f pro vyhledání souboru v jednom z oken, druhé okno se nezmìní. +Mù¾ete vyhledávat soubory v obou oknech nezávisle. + +Zde je dal¹í zpùsob, jak vyu¾ít dvì okna ke zobrazení dvou rùzných vìcí: + +>> Stisknìte C-x 4 C-f následované jménem nìkterého z va¹ich souborù. + Dokonèete to pomocí . Vidíte zadaný soubor v dolním oknì. + Pøesunul se tam i kurzor. + +>> Stisknìte C-x o pro pøesun zpìt do horního okna a C-x 1 pro smazání + dolního okna. + + +* REKURZIVNÍ EDITAÈNÍ ÚROVNÌ +---------------------------- + +Obèas se dostanete do nìèeho, co se nazývá "rekurzivní editaèní úroveò" +("recursive editing level"). To je indikováno hranatými závorkami ve +stavovém øádku obklopujícími závorky okolo jména hlavního módu. +Napøíklad mù¾ete vidìt [(Fundamental)] místo (Fundamental). + +Abyste se dostali z rekurzivní editaèní úrovnì, stisknìte ESC ESC ESC. +To je obecný "vyskakovací" pøíkaz. Mù¾ete jej pou¾ít té¾ pro odstranìní +nìkterých oken a vyskoèení z minibufferu. + +>> Stisknìte M-x, abyste se dostali do minibufferu; pak stisknìte + ESC ESC ESC, abyste se z nìj dostali ven. + +Z rekurzivní editaèní úrovnì nemù¾ete vyskoèit pomocí C-g. To proto, ¾e +C-g je vyu¾íváno pro ru¹ení pøíkazù a argumentù UVNITØ rekurzivní +editaèní vrstvy. + + +* ZÍSKÁNÍ DAL©Í NÁPOVÌDY +------------------------ + +V tomto tutoriálu jsme se pokusili poskytnout vám dostatek informací, +abyste mohli zaèít Emacs pou¾ívat. V Emacsu je toho tolik, ¾e by bylo +nemo¾né to zde v¹echno objasnit. Nicménì se o Emacsu mù¾ete nauèit +více, proto¾e má mnoho u¾iteèných vlastností. Emacs nabízí pøíkazy pro +ètení dokumentace svých pøíkazù. V¹echny tyto "help" pøíkazy +zaèínají znakem CONTROL-h, který se nazývá "help znak". + +Pro pou¾ití vlastností nápovìdy stisknìte znak C-h a pak znak øíkající, +jaký druh nápovìdy ¾ádáte. Jste-li OPRAVDU ztraceni, stisknìte C-h ? a +Emacs vám sdìlí, jaké druhy nápovìdy vám mù¾e poskytnout. Jestli¾e +jste stiskli C-h a pak jste se rozhodli, ¾e ¾ádnou nápovìdu nechcete, +jednodu¹e to zru¹te stiskem C-g. + +(Na nìkterých poèítaèích je význam znaku C-h zmìnìn. To by opravdu +nemìlo být obecným nastavením pro v¹echny u¾ivatele, tak¾e máte právo +stì¾ovat si systémovému administrátorovi. Do té doby, jestli¾e C-h +nezobrazuje hlá¹ení o nápovìdì v dolní èásti obrazovky, zkuste místo +toho pou¾ívat klávesu F1 nebo M-x help RET.) + +Nejzákladnìj¹í help pøíkaz je C-h c. Stisknìte C-h, znak c a klávesový +pøíkaz; Emacs pak zobrazí velmi struèný popis pøíkazu. + +>> Stisknìte C-h c C-p. + Hlá¹ení by mìlo vypadat asi takto + + C-p runs the command previous-line + +To vám sdìluje "jméno funkce". Jména funkcí jsou pou¾ívána zejména pro +konfiguraci a roz¹iøování Emacsu. Ale proto¾e jména funkcí jsou volena +tak, aby naznaèovala, co odpovídající pøíkaz dìlá, mohou slou¾it také +jako velmi struèná dokumentace -- dostateèná k tomu, aby vám pøipomenula +pøíkazy, které jste se ji¾ nauèili. + +Víceznakové pøíkazy jako C-x C-s a (pokud nemáte META, EDIT ani ALT +klávesu) v jsou po C-h c povoleny také. + +K získání více informací o pøíkazu místo C-h c pou¾ijte C-h k. + +>> Stisknìte C-h k C-p. + +To zobrazí dokumentaci k funkci a její jméno v emacsovém oknì. A¾ +výstup pøeètete, stisknìte C-x 1, abyste se textu nápovìdy zbavili. +Nemusíte to dìlat hned. Mù¾ete chvíli editovat a nahlí¾et do textu +nápovìdy a teprve pak stisknout C-x 1. + +Zde jsou dal¹í u¾iteèné C-h volby: + + C-h f Popis funkce. Zadáváte jméno funkce. + +>> Zkuste napsat C-h f previous-line. + To vypí¹e ve¹keré informace, které Emacs má o funkci implementující + pøíkaz C-p. + +Podobný pøíkaz C-h v zobrazí dokumentaci promìnné, její¾ hodnotu +mù¾ete nastavit a zmìnit tím chování Emacsu. Jméno promìnné zadáte, a¾ +se na nì Emacs zeptá. + + C-h a Pøíkazové apropos. Zadejte klíèové slovo a Emacs vypí¹e + v¹echny pøíkazy, jejich¾ jména obsahují toto klíèové + slovo. V¹echny tyto pøíkazy mohou být vyvolány pomocí + META-x. Pro nìkteré pøíkazy pøíkazové apropos vypí¹e + také jedno nebo dvouznakové sekvence, které provádìjí + tentý¾ pøíkaz. + +>> Napi¹te C-h a file. + +To zobrazí v druhém oknì seznam v¹ech M-x pøíkazù obsahujících "file" ve +svém názvu. Znakové pøíkazy jako C-x C-f uvidíte vypsané vedle +odpovídajících jmen pøíkazù jako find-file. + +>> Stisknìte C-M-v pro posun okna s nápovìdou. Proveïte to nìkolikrát. + +>> Stisknìte C-x 1 pro smazání okna s nápovìdou. + + C-h i Ètení on-line manuálù (té¾ Info). Tento pøíkaz + vás pøepne do speciálního bufferu s názvem `*info*', + ve kterém mù¾ete èíst on-line manuály pro balíky + nainstalované na va¹em systému. Pokud stisknete + m emacs mù¾ete si napøíklad pøeèíst manuál + k Emacsu. Pokud jste dosud nikdy nepou¾ívali Info, + stisknìte ? a Emacs vám pøedstaví hlavní mo¾nosti + módu pro Info. A¾ si tyto mo¾nosti prostudujete, + mìli byste pou¾ívat Info manuál Emacsu jako svoji + primární dokumentaci. + + +* ZÁVÌR +------- + +Nezapomeòte, Emacs ukonèíte provedením pøíkazu C-x C-c. Pro doèasný +odskok do shellu, ze kterého se do Emacsu mù¾ete opìt vrátit, +pou¾ijte C-z. + +Zámìrem tohoto tutoriálu je být srozumitelný v¹em novým u¾ivatelùm, tak¾e +narazíte-li na nìco nejasného, tak neusedejte a neklaïte to za vinu sobì +-- stì¾ujte si! + + +KOPÍROVÁNÍ +---------- + +Tento tutoriál vychází z dlouhé øady emacsových tutoriálù zahájené +tutoriálem napsaným Stuartem Cracraftem pro pùvodní Emacs. + +Tato verze tutoriálu je, podobnì jako GNU Emacs, chránìna copyrightem a +je ¹íøena se svolením distribuovat kopie za jistých podmínek: + +Copyright (C) 1985, 1996, 1998, 2001, 2002, 2003, 2004, + 2005, 2006, 2007 Free Software Foundation, Inc. + + Ka¾dému je zaruèeno právo vytváøet a distribuovat pøesné kopie tohoto + dokumentu tak, jak jej obdr¾el, na jakémkoliv médiu, s tím, ¾e bude + zachována tato poznámka o autorství a poznámka o svolení a ¾e + distributor zaruèuje pøíjemci právo na dal¹í redistribuci povolenou + touto poznámkou. + + Je zaruèeno právo distribuovat modifikované verze tohoto dokumentu + nebo jeho èástí pod vý¹e uvedenými podmínkami za pøedpokladu, ¾e + obsahuje jasné poznámky uvádìjící, kdo provedl poslední modifikace. + +Podmínky pro kopírování Emacsu samotného jsou slo¾itìj¹í, av¹ak ve +stejném duchu. Pøeètìte si prosím soubor COPYING a pak pøedávejte kopie +GNU Emacsu svým pøátelùm. Pomáhejte potírat softwarovou obstrukci +("vlastnictví") pou¾íváním, psaním a sdílením free softwaru! + +;;; Local Variables: +;;; coding: iso-latin-2 +;;; End: + +;;; arch-tag: 479ef577-3d4d-4384-aeea-9fe79d5e89ca diff --git a/etc/tutorials/TUTORIAL.de b/etc/tutorials/TUTORIAL.de new file mode 100644 index 00000000000..abdc1fec6ab --- /dev/null +++ b/etc/tutorials/TUTORIAL.de @@ -0,0 +1,1490 @@ +Einführung in Emacs. Siehe Dateiende für Vervielfältigungsbedingungen. + +Emacs-Befehle beinhalten im allgemeinen die CONTROL-Taste (manchmal +auch als CTRL, CTL oder STRG beschriftet) sowie die META-Taste (auch +EDIT oder ALT genannt). Folgende Abkürzungen werden verwendet: + + C- bedeutet, daß die CONTROL-Taste gedrückt sein muß, + während man das Zeichen eingibt. Beispiel: + C-f Halten Sie die CONTROL-Taste gedrückt und drücken + Sie dann die f-Taste. + M- bedeutet, daß die META-Taste gedrückt sein muß, + während man das Zeichen eingibt. Statt dessen + kann man auch die ESC-Taste und anschließend + drücken (hintereinander, nicht gleichzeitig). Beispiel: + M-f Halten Sie die META-Taste gedrückt und geben + Sie den Buchstaben (klein) f ein. + +`>>' am linken Rand ist ein Hinweis, einen Befehl auszuprobieren: +<> +[Leerzeilen befinden sich hier aus didaktischen Gründen. Fortsetzung unten.] +>> Drücken Sie C-v, um zur nächsten Bildschirmseite vorzublättern. + Ab jetzt sollten Sie das stets tun, wenn Sie eine Seite fertig + gelesen haben. + +Beachten Sie bitte, daß beim Blättern die untersten zwei Zeilen der +vorigen Bildschirmseite als die zwei obersten Zeilen der neuen Seite +erscheinen, um eine gewisse Kontinuität während des Lesens zu +ermöglichen. + +Wichtig: Sie können Emacs mit der Befehlsfolge C-x C-c beenden. + +Im weiteren wird die ESC-Taste mit bezeichnet. + +[Falls die deutschen Umlaute nicht korrekt auf dem Bildschirm +erscheinen, lesen Sie bitte den Abschnitt `MULE' kurz vor Ende dieser +Einführung.] + +Zunächst müssen Sie wissen, wie man sich innerhalb eines Dokuments +bewegen kann. Wie man eine Bildschirmseite vorwärts blättert, wissen +Sie schon (C-v). Mit M-v blättern Sie eine Bildschirmseite zurück +(halten Sie die META-Taste gedrückt und geben Sie v ein, oder drücken +Sie zuerst und anschließend v). + +>> Probieren Sie einige Male M-v und C-v aus. + +[Auf den meisten Tastaturen bewirkt die PgUp-Taste (`page up', auch +mit `Bild' und einem Aufwärtspfeil beschriftet) dasselbe wie M-v bzw. +die PgDn-Taste (`page down', `Bild' mit Abwärtspfeil) dasselbe wie +C-v.] + + +* ZUSAMMENFASSUNG +----------------- + +Die folgenden Befehle sind nützlich, um Text bildschirmweise zu +betrachten: + + C-v eine Seite vorwärts blättern + M-v eine Seite zurück blättern + C-l lösche den Bildschirm und stelle den ganzen Text + erneut dar, wobei der Text rund um den Cursor zur + Mitte des Bildschirms bewegt wird. + (`l' ist der Buchstabe `klein L', nicht die Ziffer 1.) + + +>> Lokalisieren Sie den Cursor und merken sich den Text in dessen + Umgebung. Drücken Sie C-l. Der Cursor ist jetzt ungefähr in der + (vertikalen) Bildschirmmitte, und er hat seine Position relativ zum + Text nicht geändert. + + +* KONTROLLE DES CURSORS +----------------------- + +Text bildschirmweise anzuschauen ist sicherlich praktisch, aber wie +kommt man zu einer bestimmten Position innerhalb des gerade +dargestellten Textes? + +Es gibt verschiedene Möglichkeiten. Die Grundbefehle sind C-p, C-b, +C-f und C-n. Dem folgenden Diagramm können Sie entnehmen, welcher +Befehl den Cursor wohin bewegt: + + + vorige Zeile, C-p + : + : + zurück, C-b .... momentane Cursor-Position .... vorwärts, C-f + : + : + nächste Zeile, C-n + + +[Die Buchstaben p, b, f und n stehen für die englischen Worte +`previous', `backward', `forward' und `next'.] + +>> Bewegen Sie den Cursor zur Zeile in der Mitte des Diagramms mittels + C-n oder C-p. Geben Sie dann C-l ein, und das ganze Diagramm ist + zentriert auf dem Bildschirm. + +Normalerweise sind die vier Pfeiltasten mit den Cursor-Grundbefehlen +belegt. Falls nicht, sollten Sie Ihre Terminalkonfiguration +überprüfen. Wenn z.B. Ihr Terminalprogramm (mit dem Sie sich über +eine Modem-Leitung in Ihrem Rechenzentrum oder Internet-Provider +eingewählt haben) ein vt100-Terminal emuliert, sollte die +Umgebungsvariable `TERM=vt100' gesetzt sein. Unter dem X Window +System sollten die Pfeiltasten immer richtig belegt sein. + +Es ist von großer Wichtigkeit, sich mit obigen Cursor-Befehlen +vertraut zu machen, da man sie ständig braucht (besonders wenn man mit +Terminal-Emulationen arbeitet, welche die Pfeiltasten nicht +unterstützen). + +>> Drücken Sie ein paarmal C-n, um den Cursor zu dieser Zeile zu + bewegen. + +>> Bewegen Sie den Cursor vorwärts mittels C-f und nach oben mit C-p. + Beobachten Sie, was C-p tut, wenn der Cursor sich in der + Zeilenmitte befindet. + +Jede Textzeile endet mit einem Zeilenvorschub-Zeichen (`newline'), das +sie von der folgenden Zeile trennt. + +>> Probieren Sie C-b am Anfang einer Zeile. Der Cursor sollte zum + Ende der vorigen Zeile springen: C-b überspringt + Zeilenvorschub-Zeichen. + +C-f überspringt Zeilenvorschub-Zeichen analog zu C-b. + +>> Drücken Sie noch ein paarmal C-b, um ein Gefühl für den Cursor zu + bekommen. Bewegen sie anschließend den Cursor mittels C-f zum Ende + der Zeile. Geben Sie jetzt noch einmal C-f ein, um zur nächsten + Zeile zu springen. + +>> Falls die Pfeiltasten funktionieren, können Sie mit diesen das + gleiche probieren und üben. + +Wenn Sie den Cursor entweder nach oben oder nach unten über den +Bildschirmrand hinaus bewegen wollen, dann wird statt dessen Text in +den Bildschirm hineingeschoben. Dies nennt man `scrolling'. Auf +diese Weise verhindert Emacs, daß der Cursor je den sichtbaren Bereich +verläßt. + +>> Versuchen Sie den Cursor über den unteren Bildschirmrand hinaus zu + bewegen und beobachten Sie, was geschieht. + +Wenn zeichenweise Cursorbewegung zu langsam ist, dann kann man den +Cursor wortweise bewegen. M-f (META-f) bewegt den Cursor ein Wort +vor, und M-b ein Wort zurück. + +>> Geben Sie ein paarmal M-f und M-b ein. + +Befinden Sie sich in der Mitte eines Wortes, bewegt M-f den Cursor zum +Ende des Wortes. Befinden Sie dagegen sich in einem Wortzwischenraum, +bewegt M-f den Cursor zum Ende des nächsten Wortes. M-b arbeitet +analog, aber in die entgegengesetzte Richtung. + +>> Kombinieren Sie M-f und M-b mit den Befehlen C-f und C-b, um die + Cursorbewegung von verschiedenen Positionen aus innerhalb und + zwischen Wörtern zu beobachten. + +Beachten Sie die Parallele zwischen C-f und C-b einerseits und M-f und +M-b andererseits. Sehr oft werden mit `META-' beginnende Befehle für +Operationen verwendet, die mit Sprache zu tun haben (Wörter, Sätze, +Absätze), während CONTROL-Befehle mit den Text-Basiseinheiten +operieren, unabhängig davon, was Sie gerade editieren (Zeichen, +Buchstaben, Zeilen etc). + +Ein anderes Beispiel: C-a und C-e bewegt den Cursor zum Anfang +bzw. zum Ende einer Zeile, wohingegen M-a und M-e den Cursor zum +Anfang bzw. zum Ende eines Satzes springen läßt. + +>> Probieren Sie ein paarmal C-a und C-e. + Probieren Sie dann ein paarmal M-a und M-e. + +Beachten Sie, daß ein wiederholtes Drücken von C-a nichts bewirkt, +dagegen M-a den Cursor satzweise zurücksetzt. Hier endet die +Analogie, jedoch ist das Verhalten dieser Befehle leicht +nachvollziehbar. + +[Anmerkung 1: Im Deutschen kommt laut Duden nach einem Punkt nur ein +Leerzeichen. Falls Sie aber Texte schreiben, die weiter verarbeitet +werden (z.B. durch ein Textformatierprogramm wie TeX), dann sollten +Sie sich angewöhnen, nach einem Satzende stets ZWEI Leerzeichen zu +lassen. Dadurch ermöglichen Sie u.a., daß Emacs zwischen +Abkürzungspunkten und dem Satzende unterscheiden kann, was für +Textsuche in wissenschaftlichen Texten oft vorteilhaft ist.] + +[Anmerkung 2: Die Tasten `Home' (Pos1) und `End' (Ende) verhalten sich +standardmäßig wie C-a und C-e, wie wohl die meisten Benutzer +annehmen.] + +Die aktuelle Position des Cursors wird im Englischen auch `point' +(Punkt) genannt. Beachten Sie bitte, daß sich `point' stets +*zwischen* zwei Zeichen befindet, nämlich genau vor dem +Cursor-Kästchen. + +Hier ist eine Zusammenfassung von einfachen Bewegungsbefehlen für den +Cursor einschließlich der Wort- und Satzbewegungsbefehle: + + C-f ein Zeichen vorwärts (auch `Pfeil rechts'-Taste) + C-b ein Zeichen zurück (auch `Pfeil links'-Taste) + + M-f ein Wort vorwärts + M-b ein Wort zurück + + C-n eine Zeile vorwärts (auch `Pfeil hinunter'-Taste) + C-p eine Zeile zurück (auch `Pfeil hinauf'-Taste) + + C-a zum Zeilenanfang + C-e zum Zeilenende + + M-a zum Satzanfang + M-e zum Satzende + +>> Probieren Sie diese Befehle jetzt ein paarmal zur Übung. + Es sind die meistverwendeten Befehle innerhalb Emacs. + +Zwei weitere wichtige Befehle für die Cursorbewegung sind M-< (META +Kleiner-als) und M-> (META Größer-als), welche zum Anfang bzw. zum +Ende des ganzen Textes springen. + +Bei den meisten Terminal-Tastaturen befindet sich `<' über dem Komma, +d.h., Sie müssen zusätzlich die SHIFT-Taste verwenden (der Umschalter +ist auf deutschen Tastaturen normalerweise mit einem dicken +Aufwärtspfeil markiert). Ohne SHIFT-Taste würden Sie M-Komma +eingeben. + +>> Testen Sie nun M-<, um an den Anfang der Einführung + zu gelangen. Verwenden Sie dann C-v, um wieder hierher zu kommen. + +Ein weiteres, oft benütztes Konzept in Emacs ist die Markierung +(`mark'). Der Grundbefehl dazu ist C-SPC (oder gleichwertig C-@, +`SPC' bezeichnet die Leertaste, engl. `space key'); mit ihm kann eine +Markierung gesetzt werden. Mit C-u C-SPC kommt man zu dieser +Markierung zurück, falls man den Cursor inzwischen weiterbewegt hat. +Viele Befehle, die große Sprünge in einem Text ausführen (so auch M-> +und M-<) setzen eine Markierung implizit, was in der untersten Zeile +(dem Echobereich, s.u.) als `Mark set' angezeigt wird. + +>> Verwenden Sie jetzt M->, um zum Ende der Einführung + zu springen und benützen Sie C-u C-SPC, um hierher zurückzukehren. + +Markierungen werden in einem Ring gespeichert (d.h., die zuletzt in +den Ring eingehängte Markierung wird als erste zurückgeholt und wie +bei einem Schlüsselbund am Ende wieder in den Ring eingefügt). Mit +C-u C-SPC können Sie Stück für Stück alle Markierungen im +Markierungsring ansteuern. + +>> Drücken Sie hier C-SPC, gehen Sie dann zu verschiedenen Positionen + innerhalb dieses Dokuments und verwenden Sie C-SPC, um weitere + Markierungen zu setzen. Geben Sie anschließend C-u C-SPC so oft + ein, bis Sie wieder an dieser Position angelangt sind. + +Die meisten Emacs-Befehle akzeptieren ein numerisches Argument, das in +der Regel als Wiederholungszähler dient (d.h., wie oft der Befehl +ausgeführt werden soll). Eingegeben wird diese Zahl mit C-u, dann die +Ziffern und dann der Befehl selbst. Alternativ können Sie die +META-Taste (bzw. EDIT- oder ALT-Taste) gedrückt halten und dann die +Ziffern des Wiederholungszählers eingeben. Wir empfehlen allerdings, +die C-u-Methode zu lernen, da sie mit jedem Terminal funktioniert. +Das numerische Argument wird auch `Präfix-Argument' genannt, da man es +vor dem zugehörigen Befehl eingibt. + +Beispiel: C-u 8 C-f bewegt den Cursor acht Zeichen vorwärts. + +>> Versuchen Sie, C-n oder C-p mit einem numerischen Argument zu + verwenden und bewegen Sie den Cursor mit nur einem Befehl ungefähr + hierher. + +Wie gesagt, die meisten Befehle verwenden das numerische Argument als +Wiederholungszähler, jedoch nicht alle. Einige davon, die allerdings +noch nicht besprochen wurden, benützen es als Flag (`Flagge'), d.h., +allein das Vorhandensein eines Präfix-Arguments, unabhängig von seinem +Wert, signalisiert dem Befehl, etwas anderes zu tun. + +C-v und M-v sind weitere Ausnahmen. Gibt man diesen Befehlen einen +Parameter n, dann verschieben sie den Bildschirminhalt nicht um eine +ganze Bildschirmseite, sondern um n Zeilen. Beispiel: C-u 4 C-v +verschiebt den Bildschirminhalt um vier Zeilen. + +>> Versuchen Sie jetzt C-u 8 C-v auszuführen. + +Der Bildschirminhalt sollte jetzt um acht Zeilen nach oben verschoben +sein. Wollen Sie ihn nach unten verschieben, dann geben Sie M-v mit +einem numerischen Argument ein. + +Wenn Sie eine graphische Oberfläche wie X oder MS-Windows verwenden, +dann befindet sich ein schmaler, langgezogener rechteckiger Bereich auf +der linken oder rechten Seite des Emacs-Fensters. Dieser Bereich +wird Scrollbar genannt (`Verschiebungsbalken'). Sie können Text +verschieben, indem Sie mit der Maus auf den Scrollbar klicken. + +>> Drücken Sie die mittlere Taste (oder die linke und rechte Taste + gleichzeitig, falls Sie eine Zwei-Tasten-Maus verwenden) innerhalb + des Scrollbar-Bereichs. Das sollte den Text zu einer Position + verschieben, die davon abhängt, wie weit oben oder unten Sie + geklickt haben. + +>> Bewegen Sie nun die Maus auf und ab, während Sie die mittlere Taste + gedrückt halten. Sie werden sehen, daß der Text entsprechend der + Mausbewegungen nach oben oder unter verschoben wird. + + +* WENN EMACS NICHT MEHR REAGIERT +-------------------------------- + +Wenn Emacs `hängt', also auf keine Ihrer Eingaben reagiert, drücken +Sie C-g. Sie können C-g auch dazu benützen, einen Befehl zu stoppen, +der zu lange braucht. + +Eine andere Anwendung ist, einen teilweise eingegebenen Befehl zu +verwerfen, z.B. ein irrtümlich eingetipptes numerisches Argument zu +entfernen. + +>> Geben Sie C-u 100 ein, um ein numerisches Argument 100 zu + spezifizieren, und drücken Sie dann C-g. Wenn Sie jetzt C-f + ausführen, dann bewegt sich der Cursor genau ein Zeichen vorwärts, + da Sie ja das numerische Argument mittels C-g gelöscht haben. + +Wenn Sie aus Versehen gedrückt haben, können Sie dies ebenfalls +mit C-g rückgängig machen. + + +* DEAKTIVIERTE BEFEHLE +---------------------- + +Ein paar Befehle von Emacs sind deaktiviert (`disabled'), damit +Anfänger sie nicht unabsichtlich benutzen. + +Wenn Sie einen solchen Befehl eingeben, dann gibt Emacs eine Meldung +aus und fragt Sie, ob Sie ihn wirklich ausführen wollen. + +Antworten Sie mit y (für `yes') oder drücken Sie die Leertaste, wenn +Sie den Befehl ausführen wollen, sonst mit n. + +>> Geben Sie C-x C-l ein (das ist ein deaktivierter Befehl) und + drücken Sie n als Antwort auf die Frage. + + +* FENSTER +--------- + +Emacs kann mehrere Fenster (`windows') haben, von denen jedes seinen +eigenen Text darstellt. Später erklären wir, wie man mit Fenstern +umgeht. Hier wollen wir nur erklären, wie man ein (vielleicht +irrtümlich erzeugtes) Fenster wieder entfernt und zum normalen +Ein-Fenster-Editieren zurückkommt. Der Befehl ist einfach: + + C-x 1 Ein Fenster (d.h., schließe alle anderen Fenster) + +Das ist C-x gefolgt von der Ziffer 1. C-x 1 expandiert das Fenster, +in dem der Cursor sich befindet, sodaß es den ganzen Bildschirm +erfaßt. Alle anderen Fenster werden gelöscht. + +[Anmerkung: Emacs verwendet das Wort Fenster (`windows') in einem +anderen Sinn, als Sie es vielleicht gewöhnt sind. Wenn Sie einen +Textbildschirm vor sich haben, dann ist die Terminologie eindeutig. +Wenn Sie allerdings eine graphische Oberfläche benutzen, dann +bezeichnet ein Emacs-Fenster einen Teilbereich des Fensters (von Ihrer +graphischen Oberfläche erzeugt), in dem Emacs läuft, in völliger +Analogie zum Textmodus. Für (graphische) Fenster im herkömmlichen +Sinn verwenden die Emacs-Entwickler den Ausdruck Rahmen (`frame').] + +>> Bewegen Sie den Cursor zu dieser Zeile und geben Sie C-u 0 C-l ein. + +>> Drücken Sie jetzt C-h k C-f. + Beachten Sie, wie das Fenster schrumpft und ein neues dazukommt, + welches die (englische) Dokumentation des C-f Befehls anzeigt. + +>> Geben Sie jetzt C-x 1 ein. Das Dokumentationsfenster verschwindet + wieder. + + +* EINFÜGEN UND LÖSCHEN +---------------------- + +Wenn Sie Text einfügen wollen, dann geben Sie ihn einfach ein. +Sichtbare Zeichen, z.B. A, 7, * usw. werden als Text von Emacs sofort +eingefügt. Drücken Sie (die Zeilenvorschubtaste, meistens +mit `Enter' oder nur mit einem Rückwärts-Hakenpfeil beschriftet), um +ein Zeilenvorschubzeichen einzufügen. + +Sie können das zuletzt eingegebene Zeichen löschen, indem Sie +drücken. ist einer Taste auf der Tastatur zugeordnet, die +mit `Del' oder `Entf' beschriftet ist. In manchen Fällen dient die +Backspace-Taste (oft auch nur als Rückwärtspfeil beschriftet) als +, aber nicht immer! + +Allgemein gesprochen löscht das Zeichen unmittelbar vor der +aktuellen Cursorposition. + +[Beachten Sie, daß ein logischer Befehlsname ist, der auf die +jeweilige Tastatur abgebildet wird. Lesen Sie im Abschnitt `Rebinding +Keys in Your Init File' des Emacs-Handbuches nach, wie Sie +gegebenenfalls die Tastaturbelegung verändern können.] + +>> Probieren Sie das jetzt aus: Geben Sie ein paar Zeichen ein und + löschen Sie sie wieder mit . Sie brauchen sich keine + Sorgen zu machen, dieses Dokument zu verändern: Was Sie hier lesen, + ist nur eine (persönliche) Kopie des originalen Dokuments. + +Wenn eine Textzeile zu lang wird für eine Bildschirmzeile, dann wird +sie auf einer zweiten Bildschirmzeile `fortgesetzt'. Ein +`Backslash'-Zeichen (`\') bzw. ein kleiner gebogener Pfeil (bei +graphischen Oberflächen) am rechten Rand verdeutlicht das. + +>> Fügen Sie Text ein, bis Sie den rechten Rand erreicht haben. Fügen + Sie weiter Text ein. Beobachten Sie, wie eine Fortsetzungszeile + erscheint. + +>> Verwenden Sie so oft, bis die Textzeile wieder auf eine + Bildschirmzeile paßt. Die Fortsetzungszeile verschwindet wieder. + +Sie können das Zeilenvorschubzeichen wie jedes andere Zeichen löschen: +Die Zeilen vor und nach ihm werdan dann zu einer zusammengehängt. Ist +diese länger als die Bildschirmbreite, erscheint eine +Fortsetzungszeile. + +>> Bewegen Sie den Cursor zum Anfang der Zeile und geben Sie + ein: Die momentane Zeile wird an die vorige angehängt. + +>> Geben Sie ein, um wieder ein Zeilenvorschubzeichen + einzufügen. + +Denken Sie daran, daß die meisten Emacs-Befehle mit einem +Wiederholungszähler aufgerufen werden können. Tun Sie das mit einem +Textzeichen, dann wird es entsprechend dem numerischen Parameter +wiederholt. + +>> Drücken Sie C-u 8 *, und es wird ******** eingefügt. + +Bis jetzt kennen Sie die Grundbefehle, um Text in Emacs einzugeben und +Fehler zu korrigieren -- fast analog zu den Bewegungsbefehlen ist es +möglich, ganze Wörter, Sätze oder Zeilen zu löschen: + + lösche ein Zeichen vor dem Cursor + C-d lösche das Zeichen unter dem Cursor + + M- lösche bis zum (nächsten) Wortanfang unmittelbar + vor dem Cursor + M-d lösche bis zum (nächsten) Wortende nach + (bzw. unter) dem Cursor + + C-k lösche von momentaner Cursorposition bis zum Ende + der Zeile + M-k lösche bis zum nächsten Satzende nach + (bzw. unter) dem Cursor + +Beachten Sie bitte, daß je nach Tastaturbelegung die Del- +(Entf-) oder die Backspace- (Rückwärtspfeil-) Taste sein kann. + +Eine andere, einheitliche Methode zum Löschen von Text ist das +Befehlspaar C-@ (oder C-SPC) und C-w. Gehen sie zum Anfang des zu +löschenden Textes und drücken Sie C-@ oder C-SPC. Gehen Sie dann zum +Ende des zu löschenden Textes und drücken Sie C-w, um ihn zu +entfernen. + +>> Bewegen Sie den Cursor zum Buchstaben `E' am Anfang des letzten + Absatzes. +>> Drücken Sie C-SPC. Emacs sollte die Meldung `Mark set' am unteren + Bildschirmrand zeigen. +>> Bewegen Sie den Cursor zum Buchstaben `A' in der zweiten Zeile des + letzten Absatzes. +>> Geben Sie C-w ein. Der ganze Text, beginnend mit dem `E' und + endend vor dem `A', ist nun gelöscht. + +Löschen Sie mehr als ein Zeichen auf einmal, dann speichert Emacs den +gelöschten Text, damit Sie ihn bei Bedarf wieder zurückholen können. +Einfügen von bereits gelöschtem Text wird im englischen Dokumentation +von Emacs als `yanking' (wörtlich `herausreißen') bezeichnet. Sie +können den gelöschten Text an einer beliebigen Stelle wieder +einzufügen. Solange Sie nichts neues löschen, steht Ihnen dieser +gelöschte Textteil immer wieder zu Verfügung. Der Befehl dazu ist C-y +(das Ypsilon steht für `yank'). + +Emacs unterscheidet zwei Klassen von Löschbefehlen (was man im +Deutschen leider nicht gut wiedergeben kann): `killing' (umbringen) +und `deleting' (löschen). Wenn man sich vorstellt, daß `yanking' den +Begriff `von den Toten erwecken' darstellt, dann hat man ungefähr eine +Vorstellung von der Metapher -- Von einem `kill'-Befehl gelöschter +Text wird gespeichert und kann bei Bedarf mit C-y zurückgeholt +werden. Von einem `delete'-Befehl entfernter Text (in der Regel +einzelne Zeichen, leere Zeilen und Zwischenräume) wird nicht extra +gespeichert und kann daher auch nicht zurückgeholt werden. + +>> Bringen Sie den Cursor an den Anfang einer nicht-leeren Zeile und + geben Sie C-k ein, um die Zeile zu löschen. + +>> Geben Sie C-k ein zweites Mal ein. Nun wird der Zeilenvorschub + ebenfalls entfernt. + +Das letzte Beispiel zeigt, daß ein einmaliges Ausführen von C-k den +Zeileninhalt löscht, und daß ein nochmaliger C-k-Befehl die Zeile +selbst löscht. Ein numerisches Argument für C-k wird speziell +behandelt: es löscht die angegebene Anzahl von Zeilen UND die +Zeilenvorschübe: C-u 2 C-k löscht zwei Zeilen komplett; zweimal C-k +löscht dagegen nur eine Zeile. + +Wie schon erwähnt, bringt C-y den zuletzt gelöschten (`gekillten') +Text zurück -- man kann diesen Text einfügen, wo man will: an der +ursprünglichen Stelle, an einer anderen Stelle, oder sogar in einer +anderen Datei. Mehrmaliges Ausführen von C-y fügt den Text mehrmals +ein. + +>> Probieren Sie jetzt C-y, um diesen Effekt zu sehen. + +Führen Sie C-k mehrmals hintereinander aus, dann wird der so +gelöschte Text auf einmal gespeichert; C-y bringt dann den gesamten +Text zurück. + +>> Drücken Sie mehrmals C-k. + +Holen Sie jetzt den Text `von den Toten' zurück: + +>> Drücken Sie C-y. Bewegen Sie dann den Cursor ein paar Zeilen nach + unten und drücken Sie C-y erneut. Der eben eingefügte Text wird + noch einmal an anderer Stelle kopiert. + +Wie können Sie gelöschten Text wieder einfügen, wenn Sie in der +Zwischenzeit noch etwas anderes `gekillt' haben? C-y würde das +zuletzt gelöschte Textstück zurückholen, was aber nicht das gewünschte +ist. Verwenden Sie nun M-y (unmittelbar nach der erstmaligen +Ausführung von C-y), um den gerade mit C-y eingefügten Textteil durch +ein früher gelöschtes Textstück zu ersetzen. Durch wiederholtes +Betätigen von M-y kommen immer ältere gelöschte Textteile zum +Vorschein. Haben Sie das gewünschte gefunden, dann brauchen Sie +nichts weiter zu tun. Lassen Sie den eingefügten Text so wie er ist +und setzen Sie das Editieren fort. + +Drücken Sie M-y immer weiter, dann kommen Sie irgendwann wieder an den +Anfangspunkt zurück (Emacs zeigt Ihnen dann wieder das zuletzt +gelöschte Textfragment), haben also den gesamten Löschring +durchgesehen. + +>> Löschen Sie eine Zeile, bewegen Sie den Cursor zu einer anderen + Position und löschen Sie eine weitere Zeile. + Drücken Sie dann C-y, um die zweite gelöschte Zeile zurückzuholen. + Drücken Sie jetzt M-y, und die erste gelöschte Zeile erscheint + statt der zweiten. + Führen Sie nun ein paar weitere M-y-Befehle aus und beobachten Sie + das Ergebnis. Wiederholen Sie das solange, bis die zweite Zeile + wieder erscheint. + Wenn Sie wollen, dann können Sie M-y mit positiven oder negativen + Argumenten aufrufen, um direkt zu einem bestimmten Eintrag im + Löschring zu kommen. + +Unter dem X Window System besteht auch die Möglichkeit, mit der linken +Maustaste einen Textteil zu markieren (er erscheint dann normalerweise +grau unterlegt). Der Befehl C-w löscht diesen markierten Textteil (in +Emacs auch Region genannt) und fügt ihn in den Löschring ein. + +Dasselbe geht auch ohne Maus: bewegen Sie den Cursor zum Beginn des zu +löschenden Textteils, drücken Sie C-SPC, um eine Markierung für den +Beginn einer Region zu setzen, gehen Sie dann zum Ende des zu +löschenden Textes und drücken Sie C-w. + +Der lange Name für C-w ist kill-region (weiter unten wird erklärt, wie +man Befehle mit langen Namen ausführen kann). + + +* UNDO +------ + +Wenn Sie etwas am Text geändert haben und nachträglich bemerken, daß +das ein Fehler war, so können Sie den Fehler mit dem Befehl C-x u +ungeschehen machen (`undo'). + +Normalerweise macht C-x u das Verhalten von einem Befehl ungeschehen; +führen Sie C-x u mehrmals hintereinander aus, dann werden die +jeweiligen vorigen Befehle widerrufen. + +Es gibt jedoch zwei Ausnahmen: Befehle, die den Text nicht ändern, +werden nicht gezählt (z.B. Cursorbewegungen und Blättern im Text). +Und Befehle, die sich selbst einfügen (`self-inserting': Drücken Sie +zum Beispiel die `u'-Taste, dann wird der Buchstabe u eingefügt) +werden in Gruppen von bis zu 20 Zeichen wiederhergestellt, um die +Anzahl der notwendigen C-x u-Befehle zu reduzieren. + +>> Löschen Sie diese Zeilen mit C-k und drücken Sie anschließend + mehrmals C-x u, und die Zeilen erscheinen wieder. + +C-_ ist ein alternativer Undo-Befehl; er arbeitet genauso wie C-x u, +ist jedoch einfacher zu tippen, wenn Sie den Befehl mehrmals +hintereinander ausführen möchten. Der Nachteil von C-_ ist, daß bei +manchen Tastaturen nicht sofort einsichtig ist, wie man das eingibt. + +Eine weitere Eingabemöglichkeit bei vielen Terminals ist C-/. + +Ein numerisches Argument für C-_, C-x u oder C-/ wird als +Wiederholungszähler interpretiert. + +Der Unterschied zwischen der Undo-Funktion und dem oben erklärten C-y +ist, daß erstere gelöschten Text an exakt der gleichen Position wie +vorher wiederherstellt, wohingegen C-y den gelöschten Text an der +momentanen Cursorposition einfügt. Im übrigen kann auch `gekillter' +Text wieder hergestellt werden; der Unterschied zwischen `killing' und +`yanking' betrifft nur C-y, aber nicht die Undo-Funktion. + + +* DATEIEN +--------- + +Um editierten Text zu sichern, muß man ihn in einer Datei (`file') +speichern (`save'). Wird Emacs beendet, ohne daß man vorher den Text +gespeichert hat, dann ist der Text verloren. + +Will man andererseits bereits gesicherten Text mit Emacs editieren, so +muß die entsprechende Datei in Emacs geladen werden (im Englischen +wird das als `finding' (finden) bzw. als `visiting' (besuchen) +bezeichnet). + +Eine Datei `finden' bedeutet, daß man den Inhalt dieser Datei mit +Emacs bearbeitet -- es ist fast so, als ob man die Datei selbst +editiert. Jedoch werden Änderungen an dieser Datei erst dann +dauerhaft, wenn man sie speichert; auf diese Weise wird vermieden, daß +Dateien in einem halb-geänderten Zustand im Betriebssystem bleiben. +Es wird sogar die originale, unveränderte Datei unter einem anderen +Namen gesichert, falls Sie später entscheiden sollten, daß die +Änderungen ein Fehler sind. + +Wenn Sie die untere Bildschirmkante genauer betrachten, dann werden +Sie eine Zeile finden, die mit einem oder mehreren Bindestrichen +beginnt und endet; sie enthält unter anderem die Zeichenkette +`TUTORIAL.de'. An dieser Position befindet sich immer der Name der +Datei, die Sie momentan bearbeiten (`visit'). Gerade in diesem +Augenblick bearbeiten Sie eine Datei mit dem Namen `TUTORIAL.de' +(genauer gesagt, Emacs hat eine identische Kopie geladen). + +Die Befehle für das Laden und Speichern von Dateien bestehen aus zwei +Zeichen: Beide beginnen mit CONTROL-x. Es gibt eine ganze Reihe von +Kommandos, die mit C-x beginnen; viele von ihnen haben mit Dateien, +Puffern (s.u.) und ähnlichem zu tun. All diese Befehle sind zwei, +drei oder vier Zeichen lang -- Sie haben bereits C-x u kennengelernt. + +Um eine Datei in Emacs laden zu können, muß man dem Lade-Befehl den +Namen der Datei mitteilen. Der Befehl `liest ein Argument vom +Terminal' (in diesem Fall ist das der Name der Datei). Nachdem Sie + + C-x C-f (lade Datei) + +eingegeben haben, werden Sie von Emacs nach dem Dateinamen gefragt. +Die Zeichen, die Sie eingeben, werden in der untersten Bildschirmzeile +dargestellt, dem sogenannten Minipuffer (`minibuffer'). Sie können +ganz normale Emacs-Editierfunktionen verwenden, um den Dateinamen zu +ändern. + +Sie können jederzeit die Eingabe (auch von anderen Befehlen, die den +Minipuffer benutzen) mit C-g abbrechen. + +>> Drücken Sie C-x C-f und dann C-g. Der letzte Befehl verwirft + jegliche Eingabe in den Minipuffer und bricht außerdem den + Ladebefehl ab (Sie haben also keine Datei geladen). + +Wenn Sie den Dateinamen fertig eingegeben haben, drücken Sie , +um den Befehl abzuschließen; C-x C-f wird ausgeführt und lädt die von +Ihnen ausgesuchte Datei. Der Minipuffer verschwindet wieder, sobald +C-x C-f beendet ist. + +Ein paar Augenblicke später erscheint der Dateiinhalt auf dem +Bildschirm, und Sie können den Text editieren. Wenn Sie Ihre +Änderungen permanent speichern wollen, dann drücken Sie + + C-x C-s (sichere Datei) + +und Emacs kopiert den Text in die Datei. Beim ersten Mal benennt +Emacs die Originaldatei um, damit sie nicht verloren ist. Der neue +Name besteht aus dem Originalnamen plus einer angehängten Tilde `~' +[unter einigen Betriebssystemen wird statt dessen die +Namenserweiterung durch `.bak' ersetzt]. + +Emacs schreibt den Namen der gesicherten Datei in die unterste Zeile, +sobald C-x C-s fertig ausgeführt ist. Sie sollten den editierten Text +oft speichern, damit nicht allzuviel bei einem etwaigen Systemabsturz +verloren geht. + +>> Geben Sie C-x C-s ein, um Ihre Kopie der Einführung zu sichern. + Die Ausgabe am unteren Bildschirmrand sollte `Wrote ...TUTORIAL.de' + sein. + +Anmerkung: Bei einigen Systemen scheint es, als ob das Ausführen von +C-x C-s Emacs abstürzen ließe (Emacs reagiert mit keinen Meldungen +mehr; der Bildschirm scheint eingefroren). Dieser Effekt tritt auf, +wenn das Betriebssystem das Zeichen C-s abfängt (es wird für `flow +control' verwendet) und nicht an Emacs weiterreicht. Um den +Bildschirm wieder zum Leben zu erwecken, geben Sie C-q ein, und lesen +Sie dann den Abschnitt `Spontaneous Entry to Incremental Search' im +Emacs-Handbuch, was man am besten tun kann. Das Emacs-Handbuch ist +übrigens auch online verfügbar mittels C-h i, und zwar im Abschnitt +`Emacs' (unter der Voraussetzung natürlich, daß die Info-Dateien von +Emacs auch installiert wurden. Wenn nicht, beschweren Sie sich bei +Ihrem System-Administrator). + +[Eine erste Abhilfe zur Umschiffung des C-s-Problems schafft die +Befehlsfolge `M-x save-buffer', welche exakt das gleiche wie C-x C-s +bewirkt.] + +Sie können eine existierende Datei anschauen (`view') oder editieren. +Sie können aber auch eine Datei laden, die noch gar nicht existiert, +um so eine neue Datei zu erzeugen: Sie öffnen dazu die +(nicht-existente) Datei, die natürlich leer ist, und beginnen dann +einfach Text einzugeben. Wenn Sie jetzt die Datei speichern, erzeugt +Emacs wirklich die Datei und kopiert den editierten Text in sie +hinein. + + +* PUFFER +-------- + +Manche Editoren können nicht mehr als eine Datei gleichzeitig +bearbeiten. Wenn Sie jedoch eine zweite Datei in Emacs mit C-x C-f +laden, dann bleibt die erste in Emacs. Sie können zur ersten +zurückschalten, indem Sie noch einmal C-x C-f eingeben. Auf diese +Weise lassen sich eine ganze Reihe von Dateien laden und bearbeiten. + +>> Erzeugen Sie eine Datei mit dem Namen `foo', indem Sie + + C-x C-f foo + + eingeben. Tippen Sie etwas Text ein, editieren Sie ihn und + speichern Sie ihn abschließend mit C-x C-s. Kehren Sie + anschließend zu dieser Einführung zurück mit + + C-x C-f TUTORIAL.de + +Emacs speichert jeden Text, der aus einer Datei in Emacs geladen wird, +in einem `Puffer'-Objekt. Um eine Liste der momentan existierenden +Puffer zu sehen, geben Sie + + C-x C-b (liste Puffer auf) + +ein. + +>> Probieren Sie jetzt C-x C-b. + +Beachten Sie, daß jeder Puffer einen Namen hat und manche auch mit dem +Namen einer Datei assoziiert sind, dessen Inhalt sie enthalten. +Manche Puffer aber haben keinen zugehörige Datei, z.B. der mit dem +Namen `*Buffer List*'. Er wurde von dem Befehl C-x C-b erzeugt, um +die Pufferliste darzustellen. JEDER Text, den Sie innerhalb Emacs in +einem Fenster sehen, ist immer ein Ausschnitt eines Puffers. + +>> Geben Sie jetzt C-x 1 ein, um die Pufferliste wieder verschwinden + zu lassen. + +Wenn Sie Änderungen an einer Datei vornehmen und anschließend eine +andere Datei laden, dann wird die erste nicht gespeichert. Die +Änderungen bleiben in Emacs, und zwar in dem zur ersten Datei +gehörigen Puffer. Das ist sehr praktisch, bedeutet jedoch +gleichzeitig, daß man einen Befehl braucht, um den Puffer der ersten +Datei permanent abzuspeichern. Es wäre äußerst umständlich, müßte man +jedesmal C-x C-f eingeben, um den Puffer dann mit C-x C-s +abzuspeichern. Daher gibt es den Befehl + + C-x s (sichere mehrere Puffer) + +Dieser Befehl fragt Sie bei jedem Puffer, der Änderungen enthält, ob +Sie ihn speichern wollen. + +>> Fügen Sie eine Textzeile ein und drücken Sie dann C-x s. Emacs + fragt Sie jetzt, ob Sie einen Puffer mit dem Namen TUTORIAL.de + speichern wollen. Bejahen Sie, indem Sie `y' drücken. + +[Anmerkung: Sie verändern nicht die Originaldatei, sondern eine +persönliche Kopie.] + + +* WEITERE BEFEHLE +----------------- + +Es existieren viel mehr Emacs-Befehle als Tasten auf der Tastatur. Um +sie trotzdem alle benutzen zu können, gibt es zwei Erweiterungen: + + C-x Zeichenerweiterung. Gefolgt von einem Zeichen. + M-x Befehlserweiterung. Gefolgt von einem (langen) Namen. + +[Das `x' steht für das englische Wort `extension'.] Diese beiden +Befehle sind prinzipiell sehr nützlich, werden aber weniger oft +benötigt als die bisher vorgestellten. Sie haben bereits zwei Befehle +aus der ersten Kategorie kennengelernt: C-x C-f, um eine Datei zu +laden, und C-x C-s, um sie zu speichern. Ein weiteres Beispiel ist +C-x C-c, um Emacs zu beenden -- Sie brauchen sich keine Gedanken zu +machen, ob Sie beim Beenden von Emacs vielleicht vergessen haben, +Daten oder Text zu sichern -- Emacs fragt bei jedem geändertem Puffer +(bzw. Datei), ob er gespeichert werden soll. + +C-z ist der Befehl um Emacs *zeitweise* zu verlassen; es ist also +möglich, später an der unterbrochenen Stelle nahtlos weiterzuarbeiten. + +Auf den meisten Systemen wie Linux oder FreeBSD wird Emacs +`suspendiert', wenn Sie C-z drücken, d.h., Sie kehren zurück zur +Eingabezeile des Betriebssystems, ohne Emacs zu beenden. In der Regel +können Sie dann mittels des Befehls `fg' bzw. `%emacs' wieder zu Emacs +umschalten. Unter X Window System bewirkt C-z in der Regel, daß Emacs +ikonofiziert wird, also als Ikone (`Icon') darauf wartet, mit einem +Mausklick bei Bedarf wieder vergrößert zu werden. + +Bei Betriebssystemen bzw. Shells, die Suspension von Programmen nicht +implementiert haben (z.B. MS-DOS), startet C-z einen +System-Befehlsinterpreter innerhalb von Emacs (`subshell'). +Normalerweise müssen Sie dann `exit' in die Befehlszeile schreiben, um +zu Emacs zurückzukehren. + +Der beste Zeitpunkt für C-x C-c ist, wenn Sie sich ausloggen +(bzw. Ihren Computer ausschalten); Sie sollten Emacs ebenfalls +beenden, wenn Sie Emacs von einem anderen Programm aus aufgerufen +haben (z.B. einem Programm, das E-mails liest), da solche Programme +oft nicht wissen, wie sie mit Emacs im Suspend-Modus umgehen sollen. +In allen anderen Fällen ist es meistens günstiger, C-z zu benutzen und +Emacs nicht zu beenden, damit man im Bedarfsfalle sofort an der +gleichen Stelle weiterarbeiten kann. + +Hier ist eine Liste aller C-x-Befehle, die Sie bereits kennengelernt +haben: + + C-x C-f lade Datei + C-x C-s sichere Datei + C-x C-b zeige Pufferliste an + C-x C-c beende Emacs + C-x u widerrufen + C-x 1 lösche alle Fenster außer eines + +Ein Beispiel für einen Befehl mit langen Namen ist replace-string, der +global (also in der ganzen Datei bzw. Puffer) eine Zeichenkette durch +eine andere ersetzt. Wenn Sie M-x drücken, dann fragt Sie Emacs in +der untersten Bildschirmzeile nach dem Namen des Befehls (in diesem +Fall `replace-string'). Geben Sie jetzt `repl s' ein und Emacs +vervollständigt den Namen. Schließen Sie die Eingabe mit ab. +[ bezeichnet die Tabulatortaste.] + +>> Bewegen Sie den Cursor zu der leeren Zeile sechs Zeilen unter + dieser. Geben Sie dann + + M-x repl sBildschirmText + + ein und kehren Sie mit C-u C-SPC an diese Position zurück. + + Beachten Sie wie diese Bildschirmzeile jetzt aussieht: Sie haben + den Wortteil B-i-l-d-s-c-h-i-r-m durch `Text' ersetzt (und zwar im + ganzen Dokument beginnend von der Cursorposition). + +>> Drücken Sie jetzt C-x u, um diese Änderungen auf einmal rückgängig + zu machen. + + +* AUTOMATISCHES SPEICHERN +------------------------- + +Haben Sie Änderungen an einem Dokument vorgenommen, sie jedoch nicht +gespeichert, dann können sie verloren gehen, falls der Computer +abstürzt. Um Sie davor zu schützen, sichert Emacs in bestimmten +Zeitintervallen jede von Ihnen editierte Datei in sogenannten +`auto-save'-Dateien. Sie sind daran zu erkennen, daß sie mit einem # +beginnen und enden; z.B. ist `#hello.c#' der Name der Auto-save-Datei +von `hello.c'. Wenn Sie Ihren Text auf normalem Wege speichern, wird +die Auto-save-Datei gelöscht. + +Stürzt der Rechner einmal wirklich ab, so können Sie die Änderungen, +die beim letzten Auto-Save gespeichert worden sind, folgendermaßen +wiederherstellen: Laden Sie die Datei auf normalem Wege (die Datei, +die Sie bearbeitet haben, nicht die Auto-save-Datei) und geben Sie +dann `M-x recover-file' ein. Wenn Emacs Sie um Bestätigung +fragt, antworten Sie mit `yes', um den Inhalt der +Auto-save-Datei zu übernehmen. + + +* DER ECHO-BEREICH +------------------ + +Geben Sie Befehle langsam ein, dann zeigt Ihnen Emacs Ihre eigene +Eingabe am unteren Bildschirmrand im sogenannten Echo-Bereich (`echo +area'). Der Echo-Bereich enthält die unterste Bildschirmzeile. + +[Mini-Puffer und Echo-Bereich fallen normalerweise zusammen, sind aber +nicht das gleiche, da innerhalb des Echo-Bereiches nichts eingegeben +werden kann.] + + +* DIE STATUSZEILE +------------------ + +Die Bildschirmzeile unmittelbar über dem Echo-Bereich ist die +Statuszeile (`mode line'). Sie schaut ungefähr so aus: + +-1:** TUTORIAL.de 58% L865 (Fundamental)---------------------- + +Diese Zeile gibt nützliche Hinweise über den momentanen Zustand von +Emacs und den Text, den Sie gerade editieren. + +Sie wissen bereits, was der Dateiname bedeutet. `--NN%--' zeigt die +momentane Position innerhalb des Textes an: NN Prozent davon sind +oberhalb des Bildschirms. Ist der Dateianfang zu sehen, dann +erscheint `Top' anstelle von `00%'. Analog dazu erscheint `Bot' (für +das englische Wort `bottom'), wenn das Dateiende sichtbar ist. Wenn +Sie einen Text betrachten, der komplett auf den Bildschirm paßt, dann +erscheint `All'. + +Das `L' und die nachfolgenden Ziffern geben die aktuelle Zeilennummer +an, in denen sich der Cursor befindet. + +Am Anfang der Zeile sehen Sie `-1:**'. Die Zeichen vor dem +Doppelpunkt geben an, in welcher Kodierung der Text ist und welche +Eingabemethode verwendet wird. Dazu mehr weiter unten im Abschnitt +`MULE'. + +[Anstelle des Doppelpunktes können auch ein `\' und `/' stehen, falls +Sie Dateien editieren, die der MS-DOS- bzw. der +Macintosh-Textkonvention folgen: MS-DOS verwendet als +Zeilenvorschubzeichen CR-LF (Carriage Return gefolgt von Linefeed), +während Macintosh nur CR benutzt. Emacs verwendet standardmäßig LF.] + +Die Sterne nach dem Doppelpunkt bedeuten, daß Sie Änderungen am Text +vorgenommen haben. Wenn Sie gerade eine Datei in Emacs geladen oder +gespeichert haben, dann erscheinen statt der Sterne zwei Bindestriche. +Prozentzeichen nach dem Doppelpunkt stehen für eine Datei, die nur +gelesen, aber nicht editiert werden kann. + +Der eingeklammerte Teil gibt an, in welchem Editiermodus Sie sich +befinden. Der Standardmodus heißt `Fundamental' (Sie verwenden ihn +gerade); er ist ein Beispiel für einen Hauptmodus (`major mode'). + +Emacs hat viele Hauptmodi implementiert. Manche davon werden für +verschiedene (Computer-)Sprachen und/oder Textarten verwendet, +z.B. Lisp-Modus, Text-Modus usw. Es kann immer nur ein Hauptmodus +aktiviert sein, und der Name befindet sich dort, wo jetzt gerade +`Fundamental' steht. + +Einige Befehle verhalten sich jeweils in verschiedenen Hauptmodi +anders. Es gibt zum Beispiel einen Befehl, um einen Kommentar in den +Quellcode eines Computerprogramm einzufügen -- die Tastenfolge dafür +ist zwar (in der Regel) die gleiche, doch wird ein Kommentar mit der +für die aktuelle Programmiersprache gültigen Syntax eingefügt +(z.B. `// ...' für ein Programm in C++ oder `; ...' für Lisp). Um in +einen Hauptmodus zu schalten, hängen Sie einfach das englische Wort +`-mode' an den (kleingeschriebenen) Namen des Modus an und führen den +Befehl mittels M-x aus. Beispiel: `M-x fundamental-mode' schaltet in +den Fundamental-Modus. Weitere wichtige Modi sind c-mode, perl-mode, +lisp-mode, text-mode u.a. Die meisten davon werden automatisch +aktiviert, und zwar entsprechend der Namenserweiterung der zu ladenden +Datei: So wird z.B. durch das Laden der Datei foo.c automatisch der +C-Modus aktiviert. + +Wenn Sie deutschen oder englischen Text bearbeiten, dann sollten Sie +den Textmodus verwenden. [Falls Ihre Tastatur keine Umlaut-Tasten +hat, müssen Sie noch einen weiteren Nebenmodus aktivieren. Lesen Sie +dazu den Abschnitt `MULE' weiter unten.] + +>> Geben Sie `M-x text mode' ein. + +Sie brauchen keine Angst zu haben, daß sich die bisher dargestellte +Tastaturbelegung von Emacs stark ändert. Beobachten Sie z.B. die +Befehle M-f und M-b: Apostrophe werden nun als Teil eines Wortes +betrachtet (wie man's leicht an diesem Beispiel ausprobieren kann), +wohingegen im Fundamentalmodus Apostrophe als Worttrenner +(`word-separator') behandelt werden. + +Normalerweise ist das eben genannte Beispiel die Methode von +Hauptmodi: Die meisten Befehle tun `das gleiche', arbeiten aber +jeweils ein bißchen anders. + +Dokumentation zum derzeit aktuellen Hauptmodus bekommen Sie mit C-h m. + +>> Drücken Sie C-u C-v ein- oder mehrmals, um diese Zeile in die Nähe + des oberen Bildschirmrands zu bringen. +>> Lesen Sie nun mittels C-h m die englische Dokumentation zum + Textmodus. +>> Entfernen Sie schließlich das Dokumentationsfenster mit C-x 1. + +Neben den Hauptmodi gibt es auch Nebenmodi (`minor modes'). Nebenmodi +sind keine Alternativen zu Hauptmodi, sondern stellen Ergänzungen zur +Verfügung, die (normalerweise) in allen Hauptmodi funktionieren +(z.B. der Überschreibmodus: Zeichen werden nicht eingefügt, sondern +überschreiben den Text). Man kann Nebenmodi ein- und ausschalten +unabhängig von anderen Nebenmodi und Hauptmodi; mit anderen Worten, +Sie können zu Ihrem Hauptmodus keinen, einen oder sogar mehrere +Nebenmodi haben. + +Ein Nebenmodus, welcher äußerst nützlich ist, besonders für das +Editieren von Text, ist der automatische Zeilenumbruch (`Auto Fill +mode'). Ist dieser Modus aktiviert, dann bricht Emacs die laufende +Zeile selbsttätig zwischen Wörtern um, sobald sie zu lang wird. + +Sie können den Zeilenumbruchmodus einschalten mittels `M-x auto fill +mode'. Wenn der Modus aktiviert ist, können Sie ihn mit dem +gleichen Befehl wieder ausschalten. Mit anderen Worten, der Befehl +verhält sich wie ein Lichttaster, der bei Betätigung entweder das +Licht ein- oder ausschaltet, je nachdem, ob das Licht vorher +ausgeschaltet bzw. eingeschaltet war. Wir sagen, daß dieser Befehl +den Modus umschaltet (`toggle'). + +>> Geben Sie nun M-x auto-fill-mode ein. Fügen Sie + anschließend eine Zeile ein, die aus lauter `asdf ' besteht, und + zwar so lange, bis die Zeile automatisch umgebrochen wird. + Vergessen Sie nicht, Leerzeichen einzugeben, da nur dort ein + Umbruch erfolgt. + +Normalerweise ist die maximale Zeilenlänge 70 Zeichen (d.h., der linke +Rand ist ganz links auf Position 1 und der rechte Rand auf +Position 70), jedoch können Sie das mit dem Befehl C-x f ändern. +Geben Sie den neuen (rechten) Rand als numerischen Parameter ein. + +>> Geben Sie C-x mit dem Argument 20 ein (C-u 2 0 C-x f). Schreiben + Sie nun etwas Text und beobachten Sie, wie Emacs die laufende Zeile + an Position 20 umbricht. Setzen Sie anschließend den Rand wieder + zurück auf 70 mit dem gleichen Befehl. + +Machen Sie Änderungen in der Mitte eines Absatzes, dann reformatiert +der Zeilenfüllmodus nicht automatisch den Absatz. +Verwenden Sie dafür den Befehl M-q, wobei der Cursor innerhalb des +Absatzes stehen muß. + +>> Bewegen Sie den Cursor zurück zum letzten Absatz und drücken Sie + M-q. + + +* SUCHEN +-------- + +Emacs kann Zeichenketten (`strings') entweder in Richtung Pufferende +(vorwärts, `forward') oder in Richtung Pufferanfang (rückwärts, +`backward') suchen. Gleichzeitig wird der Cursor an die nächste +Stelle bewegt, wo diese Zeichenkette erscheint. + +Hier unterscheidet sich Emacs von vielen anderen Editoren, da nämlich +die Standard-Suchoperation inkrementelles Suchen ist, d.h., die Suche +beginnt dann, wenn Sie die Zeichen eingeben. + +Der Befehl für Vorwärtssuchen ist C-s und C-r für Rückwärtssuchen. +ABER HALT! Probieren Sie bitte diese Befehle noch nicht. + +Wenn Sie C-s eingeben, dann erscheint die Zeichenkette `I-search:' als +Eingabeaufforderung im Echobereich. Das bedeutet, daß Emacs jetzt +eine inkrementellen Suche ausführt und darauf wartet, daß Sie die zu +suchende Zeichenkette eingeben. beendet die Suche. + +>> Geben Sie jetzt C-s ein, um einen Suchvorgang zu starten. Schreiben + Sie LANGSAM, einen Buchstaben nach dem anderen, das Wort `Cursor', + und warten Sie jeweils ab, was mit dem Cursor passiert. Sie haben + jetzt das Wort `Cursor' einmal gefunden. +>> Drücken Sie C-s noch einmal, um die nächste Stelle zu suchen, wo das + Wort `Cursor' vorkommt. +>> Drücken Sie nun viermal und beobachten Sie, wie der Cursor + zurückspringt. +>> Beenden Sie die Suche mit . + +Verstehen Sie, was gerade vorgegangen ist? Emacs versucht während +einer inkrementellen Suche zu der Stelle zu gehen, wo die Zeichenkette +steht, die Sie bis jetzt eingegeben haben. Um die darauffolgende +Position zu suchen, wo `Cursor' steht, genügt es, noch einmal C-s zu +betätigen. Wenn es keine nächste Position gibt, dann ertönt ein +kurzer Ton, und Emacs sagt Ihnen, daß die Suche im Augenblick +fehlschlägt (`failing'). C-g beendet ebenfalls einen Suchvorgang. + +Anmerkung: Wie weiter oben schon einmal erwähnt, scheint es bei +einigen Systemen, als ob das Ausführen von C-s Emacs abstürzen läßt +(Emacs reagiert mit keinen Meldungen mehr; der Bildschirm wirkt +eingefroren). Dieser Effekt tritt auf, wenn das Betriebssystem das +Zeichen C-s abfängt (es wird für `flow control' verwendet) und nicht +an Emacs weiterreicht. Um den Bildschirm wieder zum Leben zu +erwecken, geben Sie C-q ein, und lesen Sie dann den Abschnitt +`Spontaneous Entry to Incremental Search' im Emacs-Handbuch, was man +am besten tun kann. + +Wenn Sie sich mitten in einer inkrementellen Suche befinden und + drücken, wird das letzte Zeichen im Suchstring gelöscht, und +der Cursor springt zurück auf die letzte Suchposition. Angenommen, +Sie haben `c' eingegeben, um das erste Auftreten von `c' zu suchen. +Geben Sie jetzt `u' ein, dann springt der Cursor zu dem ersten +Auftreten der Zeichenkette `cu'. Wenn Sie jetzt mit das `u' +vom Suchstring löschen, dann springt der Cursor zurück zum ersten `c'. +Drücken Sie dagegen ein paar mal C-s, um weitere `cu'-Zeichenketten zu +finden, dann bewirkt , daß Sie zum letzten Auftreten von `cu' +zurückspringen, und erst wenn es kein weiteres `cu' mehr gibt, springt +der Cursor zum ersten `c' zurück. + +Die Suche wird ebenfalls beendet, wenn Sie ein CONTROL- oder +META-Zeichen eingeben (mit ein paar Ausnahmen -- Zeichen, die +bei einer Suche speziell gehandhabt werden wie C-s oder C-r). + +C-s versucht, die Zeichenkette NACH der aktuellen Cursorposition zu +finden. Wollen Sie etwas davor suchen, müssen Sie C-r verwenden. Das +oben Gesagte gilt völlig analog, jedoch in die entgegengesetzte +Suchrichtung. + + +* MEHRFACHE FENSTER +------------------- + +Eine weitere, nützliche Fähigkeit von Emacs ist die Möglichkeit, mehr +als ein Fenster zur gleichen Zeit auf dem Bildschirm darzustellen. + +>> Bewegen Sie den Cursor zu dieser Zeile und geben Sie C-u 0 C-l ein. + +>> Drücken Sie nun C-x 2, um den Bildschirm in zwei Fenster zu teilen. + Beide Fenster zeigen diese Einführung an, und der Cursor bleibt im + oberen. + +>> Verwenden Sie C-M-v, um im unteren Fenster zu blättern (Sie können + statt dessen auch ESC C-v verwenden, falls Sie keine META-Taste + haben; siehe auch weiter unten). + +>> Mittels C-x o (das `o' steht für das englische Wort `other', `das + andere') können Sie den Cursor in das untere Fenster bewegen. + +>> Benützen Sie C-v und M-v, um im unteren Fenster zu blättern. Lesen + Sie die Emacs-Einführung jedoch im oberen Fenster weiter. + +>> Geben Sie C-x o nochmals ein, und der Cursor ist wieder im oberen + Fenster, genau an der Stelle, wo er vorher war. + +C-x o ist der Befehl, um zwischen (Emacs-)Fenstern hin- und +herzuschalten. Jedes Fenster hat eine eigene Cursorposition, aber nur +das aktuelle Fenster zeigt den Cursor an (unter X wird die +nicht-aktuelle Cursorposition durch ein leeres Rechteck dargestellt). +Alle normalen Editierbefehle betreffen das Fenster, in dem sich der +Cursor befindet. Wir nennen dieses Fenster `selektiert' (`selected +window'). + +Der Befehl M-C-v ist sehr nützlich, wenn man Text in einem Fenster +editiert und das andere Fenster als Referenz verwendet. Der Cursor +bleibt stets im gleichen Arbeitsfenster, und mit M-C-v kann man bequem +vorwärtsblättern. + +M-C-v ist ein Beispiel eines CONTROL-META-Zeichens. Haben Sie eine +META-Taste, dann kann man M-C-v erzeugen, indem man CTRL und META +gleichzeitig niedergedrückt hält, während man v eintippt. Es ist +egal, ob zuerst CTRL oder META niedergedrückt wird, da beide Tasten +gleichberechtigt das jeweils einzugebende Zeichen modifizieren. + +Haben Sie keine META-Taste, und Sie verwenden stattdessen ESC, dann +ist die Reihenfolge nicht mehr egal: Sie müssen zuerst ESC drücken, +gefolgt von CTRL-v. CTRL-ESC v funktioniert nicht! Der Grund dafür +ist, daß ESC ein eigenes Zeichen ist und keine Modifizier-Taste wie +META oder CTRL. + +Der umgekehrte Befehl zu M-C-v ist M-C-S-v, um im anderen Fenster +rückwärts zu blättern (d.h., Sie müssen die META-Taste sowie die +CONTROL- und SHIFT-Taste zusammen mit `v' betätigen) -- jetzt werden +Sie wahrscheinlich verstehen, warum manche Kritiker das Wort Emacs als +Abkürzung von Escape-Meta-Alt-Control-Shift betrachten. Leider +funktioniert diese Befehlsfolge normalerweise nur mit dem X Window +System, da C-v von C-S-v auf den meisten Textterminals nicht +unterschieden werden kann. + +[Unter X kann man außerdem in der Regel mit den bequemeren +Tastenkombinationen META-`Bild mit Aufwärtspfeil' bzw. META-`Bild mit +Abwärtspfeil' ebenfalls im anderen Fenster rück- bzw. vorwärts +blättern.] + +>> Entfernen Sie mit C-x 1 (eingegeben im oberen Fenster) das untere + Fenster. + +(Hätten Sie C-x 1 im unteren Fenster eingegeben, dann wäre das obere +Fenster geschlossen worden -- eine Eselsbrücke für C-x 1 ist `ich will +nur das *eine* Fenster, in dem ich mich gerade befinde.') + +Sie müssen nicht den gleichen Puffer in beiden Fenstern darstellen. +Wenn Sie C-x C-f verwenden, um in einem Fenster eine Datei zu laden, +dann bleibt das andere Fenster unverändert. Sie können in jedem +Fenster eine andere Datei anzeigen lassen, unabhängig vom anderen +Fenster. + +Hier eine andere Möglichkeit, in zwei Fenstern zwei verschiedene +Texte darzustellen: + +>> Geben Sie C-x 4 C-f ein, gefolgt vom Namen einer Ihrer Dateien. + Schließen Sie ab mit . Beobachten Sie, wie die + spezifizierte Datei im unteren Fenster erscheint. Der Cursor + springt ebenfalls in das untere Fenster. + +>> Bewegen Sie den Cursor mittels C-x o in das obere Fenster und geben + Sie C-x 1 ein, um das untere Fenster zu schließen. + + +* REKURSIVE EDITIER-EBENEN +-------------------------- + +Manchmal kann es passieren, daß Sie in eine sogenannte rekursive +Editier-Ebene geraten (`recursive editing level'). Sie können das an +den eckigen Klammern in der Statuszeile erkennen, welche den +derzeitigen Hauptmodus zusätzlich umschließen, z.B. [(Fundamental)] +anstelle von (Fundamental). + +Um eine rekursive Editier-Ebene zu verlassen, geben Sie ESC ESC ESC +ein. Diese Tastenkombination ist ein allgemeiner +Ich-will-hier-raus-Befehl. Sie können ihn auch verwenden, um +unerwünschte Fenster zu schließen und den Minipuffer zu verlassen. + +>> Geben Sie M-x ein, um in den Minipuffer zu gelangen, und tippen Sie + dann ESC ESC ESC, um ihn wieder zu verlassen. + +Mit C-g kann man eine rekursive Editier-Ebene nicht verlassen, da C-g +Befehle INNERHALB einer rekursiven Editier-Ebene stoppt. + +Rekursive Editier-Ebenen sind hier in dieser Einführung nicht weiter +dargestellt. Details finden Sie im Emacs-Handbuch beschrieben. + + +* MULE +------ + +Mule ist die Abkürzung für `Multi-lingual Enhancement to GNU Emacs'. +Früher wurde damit eine spezielle Emacs-Variante bezeichnet, die +allerdings seit der Version 20 mit Emacs verschmolzen ist. + +Emacs unterstützt eine große Anzahl von internationalen Zeichensätzen, +z.B. verschiedene europäische Varianten des lateinischen Alphabets, +Chinesisch, Russisch oder Thai, um nur einige zu nennen. In dieser +Einführung wird jedoch nur auf den deutschen Zeichensatz sowie +Eingabemöglichkeiten für Deutsch näher eingegangen. + +Der Standard-Zeichensatz für Deutsch ist Latin-1 (auch bekannt unter +dem Namen ISO-8859-1). Wenn anstelle der deutschen Umlaute +unansehnliche Konstrukte wie `\201ä' dargestellt werden, dann ist die +sogenannte Multibyte-Zeichenunterstützung deaktiviert (intern werden +in Emacs nicht-ASCII Zeichensätze durch mehr als ein Byte +repräsentiert). Durch den Befehl `M-x +toggle-enable-multibyte-characters' wird die +Multibyte-Zeichenunterstützung aktiviert. Denken Sie daran, die +Tabulatortaste zur Vervollständigung von Befehlsnamen zu benützen, +z.B. `M-x toggle-e'. + +Wenn anstelle der Umlaute `ä', `ö' oder `ü' die Zeichen `d', `v' und +`|' erscheinen (also `kleines D', `kleines V' und ein senkrechter +Strich), dann wird das achte Bit von jedem Byte abgeschnitten, sodaß +nur ASCII-Zeichen dargestellt werden können. In der Regel gibt es +zwei Ursachen für dieses Problem: Sie haben sich nicht `8-bit clean' +(z.B. mittels `telnet -8 ...') eingeloggt oder Ihr +Telekommunikationsprogramm ist nicht für 8-bit konfiguriert. + +>> Geben Sie `M-x toggle-enable-multibyte-characters' ein. Die + deutschen Umlaute (so sie von Ihrem Terminal darstellbar sind) + verschwinden und werden durch Zahlenkonstrukte ersetzt. So wird + zum Beispiel Umlaut a (`ä') dargestellt als `\201ä'. + +>> Aktivieren Sie wieder die Multibyte-Zeichenunterstützung mittels + `M-x toggle-enable-multibyte-characters'. + +Sehen Sie anstelle der Umlaute leere Kästchen (unter X), dann sollten +Sie mit C-x C-c Emacs beenden und folgendermaßen neu starten: + + emacs -fn fontset-standard + +Bei einem Textterminal gibt es weiter die Möglichkeit, die +Befehlsfolge `M-x standard-display-european' auszuführen, wodurch +Emacs die Multibyte-Zeichenunterstützung deaktiviert und direkt +Latin-1-Zeichen darzustellen versucht. Sie können auch probieren, +Emacs mit der `--unibyte'-Option zu starten, was einen ähnlichen +Effekt bewirkt. + +Falls das alles nichts nützt oder Sie Fragezeichen anstelle der +Umlaute auf ihrem Textterminal sehen, sollten Sie sich an Ihren +Systemadministrator wenden und sich beschweren, daß kein +Latin-1-Zeichensatz installiert ist (was heutzutage eigentlich eine +Selbstverständlichkeit sein sollte). Falls statt der Umlaute andere +Zeichen auf ihrem Textterminal erscheinen (z.B. kyrillische +Buchstaben), dann erkundigen Sie sich, wie sie auf Latin-1 umschalten +können. + +Lesen Sie im Emacs-Handbuch nach unter dem Stichwort `International', +welche weitere Optionen es bezüglich Zeichensätze gibt. + +Es empfiehlt sich, Latin-1 als Standardkodierung zu aktivieren, wenn +Sie primär Deutsch verwenden. Benutzen Sie zu diesem Zweck die +Befehlsfolge + + C-x l latin-1 + +(C-x l führt die Funktion set-language-environment aus), um +in einer laufenden Emacs-Sitzung auf Latin-1 umzuschalten. Dadurch +wird erreicht, daß Emacs beim Laden einer Datei (und Speichern +derselben) standardmäßig die Latin-1-Zeichenkodierung verwendet. Sie +können an der Ziffer 1 unmittelbar vor dem Doppelpunkt links unten in +der Statuszeile erkennen, daß Sie Latin-1 aktiviert haben. Beachten +Sie allerdings, daß set-language-environment keinen Einfluß auf die +Kodierung bereits existierender Puffer hat! Haben Sie eine Datei mit +deutschem Text in Latin-1-Kodierung irrtümlicherweise in einer +falschen Kodierung geladen, dann müssen Sie diesen Puffer aus Emacs +mit dem Befehl C-x k (kill-buffer) entfernen und die Datei erneut +laden, nachdem Sie mit set-language-environment auf Latin-1 +umgeschaltet haben. + +>> Führen Sie jetzt C-x l latin-1 aus und öffnen Sie + anschließend eine (neue) Datei mit dem Namen `bar' in einem anderen + Fenster mittels C-x 4 C-f bar . In der Statuszeile des + zweiten Fensters sehen Sie die Ziffer 1 unmittelbar vor dem + Doppelpunkt. + +>> Schließen Sie das soeben geöffnete Fenster mit C-x 1 wieder. + +Wie können Sie nun deutsche Umlaute eingeben? Es gibt prinzipiell +zwei unterschiedliche Fälle: Sie besitzen eine deutsche Tastatur mit +Tasten für die Umlaute oder Sie haben eine nicht-deutsche Tastatur. +Im ersteren Fall sollten Sie die Eingabemethode `german' auswählen, +welche direkt die Umlaute auf die entsprechenden Tasten abbildet. Im +letzteren Fall gibt es mehrere Möglichkeiten, wovon zwei hier erklärt +werden sollen, nämlich `latin-1-prefix' und `latin-1-postfix'. Die +Präfix-Methode erwartet zuerst den Akzent und dann den Basisbuchstaben +('a wird zu á, "s zu ß etc.), während bei der Postfix-Methode zuerst +der Basisbuchstabe und dann der Akzent einzugeben ist (a" wird zu ä, +s/ wird zu ß etc). + +Aktiviert wird die jeweilige Eingabe mit dem Befehl + + C-u C-\ Eingabemethode + +(z.B. C-u C-\ german ). Durch diese Befehlsfolge wird der +sogenannte Quail-Nebenmodus aktiviert, was sich durch eine kleine +Veränderung in der Statuszeile zeigt: Durch zwei oder drei Zeichen +unmittelbar vor der Pufferkodierung wird die aktuelle Eingabemethode +angezeigt. Ist der Eingabemodus einmal gewählt, kann man mit C-\ ihn +ein- und ausschalten. + +>> Geben Sie C-u C-\ latin-1-postfix ein. Beobachten Sie, + wie links unten in der Statuszeile die Anzeige von `1:**' auf + `1<1:**' springt. Probieren Sie ä einzugeben mittels a". + +>> Deaktivieren Sie den Eingabemodus wieder mit C-\. + +Folgende Kürzel in der Statuszeile repräsentieren die eben +beschriebenen Eingabemethoden: + + DE@ german + 1< latin-1-postfix + 1> latin-1-prefix + +So bedeutet die Angabe `DE@1:**', daß Sie die Eingabemethode `german' +in einem Puffer mit Latin-1-Kodierung verwenden, und daß die Datei +bereits modifiziert wurde. + +[Arbeitet Emacs in einem Terminal, werden noch zwei zusätzliche +Spalten zwischen Eingabemethode und Pufferkodierung eingefügt, und +zwar für die Tastatur- und Bildschirmkodierung.] + + +* WEITERE DOKUMENTATION VON EMACS +--------------------------------- + +Wir haben uns bemüht, in dieser Einführung genau soviel Information zu +geben, daß Sie beginnen können, mit Emacs zu arbeiten. Emacs ist +jedoch so mächtig und umfangreich, daß es den Rahmen einer Einführung +spränge, an dieser Stelle mehr zu erklären. Um Sie im weiteren +Lernverlauf zu unterstützen, stellt Emacs eine Reihe von +Hilfe-Funktionen zu Verfügung, die alle mit dem Präfix C-h (dem +Hilfe-Zeichen, `Help character') beginnen. + +Nach dem Drücken von C-h geben Sie ein weiteres Zeichen ein, um Emacs +zu sagen, worüber Sie mehr Informationen brauchen. Sollten Sie +WIRKLICH verloren sein, geben Sie C-h ? ein, und Emacs sagt Ihnen, +welche Art von Hilfe er Ihnen zu Verfügung stellen kann. Haben Sie +C-h versehentlich gedrückt, können Sie mit C-g sofort abbrechen. + +(Es kann vorkommen, daß bei manchen Computern bzw. Terminals C-h etwas +anderes bedeutet. Da erfahrungsgemäß C-h eine der meistbenötigten +Emacs-Befehle ist, haben Sie einen wirklichen Grund, sich in diesem +Fall beim Systemadministrator zu beschweren. Alternativen zu C-h sind +die F1-Taste und der lange Befehl M-x help .) + +Die elementarste Hilfestellung gibt C-h c. Drücken Sie C-h, dann das +Zeichen c, und dann einen Befehl: Emacs zeigt daraufhin eine kurze +Beschreibung des Befehls an. + +>> Geben Sie C-h c C-p ein. + Die Antwort darauf (im Echo-Bereich) sollte so ähnlich sein wie + + C-p runs the command previous-line + +Somit wissen Sie den `Namen der Funktion'. Funktionsnamen werden +hauptsächlich benutzt, um Emacs anzupassen bzw. zu erweitern. Aber da +Namen in der Regel beschreiben, was die jeweilige Funktion tut, können +sie auch als sehr kurze Beschreibung dienen -- ausreichend, um Sie an +Befehle zu erinnern, die Sie bereits gelernt haben. + +Aus mehr als einem Zeichen bestehende Befehle, z.B. C-x C-s oder +v, sind ebenfalls erlaubt nach C-h c. + +Um eine detaillierte Dokumentation eines Befehls zu erhalten, +verwenden Sie C-h k anstelle von C-h c. + +>> Geben Sie C-h k C-p ein. + +Diese Befehlsfolge zeigt die komplette Dokumentation des Befehls an +zusammen mit seinem Namen, und zwar in einem eigenem Fenster. Wenn +Sie die Beschreibung gelesen haben, benützen Sie am besten C-x 1, um +das Hilfe-Fenster wieder zu schließen. Sie müssen das nicht sofort +tun -- Sie können weiter Text editieren und das Fenster schließen, +wenn Sie es nicht mehr brauchen. + +Hier einige weitere nützliche Optionen von C-h: + + C-h f Beschreibt eine Funktion. Sie müssen den Namen der + Funktion eingeben. + +>> Probieren Sie C-h f previous-line. + Alle Information über den C-p-Befehl wird angezeigt. + +Sie können die Tabulator-Taste stets benützen, um den Namen des +jeweiligen Befehls zu vervollständigen. Geben Sie z.B. `C-h f +previous' ein, dann werden alle Befehle angezeigt, deren Namen +mit `previous-' beginnen. Ergänzen Sie die Zeichenkette auf +`previous-l' und drücken Sie dann , bleibt nur noch der Befehl +`previous-line' übrig, und Sie können mit abschließen. + +Ein ähnlicher Befehl ist C-h v. Er zeigt den Wert und die +Dokumentation von Variablen, deren Werte man ändern kann (um Emacs an +persönliche Bedürfnisse anzupassen). Auch hier kann man die +Tabulator-Taste zur Vervollständigung benutzen. + + C-h a Ein Befehls-Apropos. Gibt man ein Schlüsselwort ein, + dann zeigt Emacs alle Befehle, die dieses + Schlüsselwort enthalten. Alle angezeigten Befehle + können mit M-x aufgerufen werden. Für einige + Kommandos wird zusätzlich eine Zeichensequenz + (meistens bestehend aus einem oder zwei Zeichen) + aufgelistet, welche den gleichen Befehl startet. + +>> Geben Sie C-h a file ein. + +Alle M-x-Befehle, die das Wort `file' in ihrem Namen enthalten, werden +angezeigt. Beachten Sie, daß auch C-x C-f aufgelistet wird neben dem +zugehörigen langen Namen, find-file. + +>> Blättern Sie mit C-M-v, um sich die Liste der Funktionen anzusehen. + +>> Schließen Sie das Hilfefenster mit C-x 1. + + C-h i Dieser Befehl öffnet einen speziellen Puffer, um + Online-Handbücher zu lesen (im `Info'-Format), die auf + dem verwendeten Computersystem installiert sind. + Geben Sie z.B. m emacs ein, um das + Emacs-Handbuch zu lesen. Haben Sie `Info' noch nie + benutzt, tippen Sie ?, und Emacs führt Sie Schritt für + Schritt durch die Möglichkeiten des Info-Modus. Wenn + Sie diese Einführung fertiggelesen haben, sollten Sie + das Info-Handbuch für Emacs als primäre Dokumentation + benutzen. + + +* SCHLUSSBEMERKUNG +------------------ + +Das Wichtigste: Emacs wird mit C-x C-c beendet und mit C-z temporär +unterbrochen. + +Diese Einführung soll für alle neuen Benutzer von Emacs verständlich +sein. Wenn daher etwas unklar sein sollte, dann hadern Sie nicht mit +sich selbst. Schreiben Sie an die Free Software Foundation oder an +den Autor und erläutern Sie, was für Sie unklar geblieben ist. Eine +weitere Kontaktadresse ist die Mailing-Liste `de@li.org', in der +Probleme mit der Adaption von GNU-Programmen an das Deutsche +diskutiert werden. + + +* RECHTLICHES +------------- + +Die englische Version dieser Einführung hat eine lange Vorgeschichte. +Stuart Cracraft hat für die Urversion von Emacs das erste Tutorial +geschrieben. Übersetzer ins Deutsche ist Werner Lemberg (wl@gnu.org). + +Beachten Sie bitte, daß im Zweifelsfalle das englische Original dieser +Urheberrechtsnotiz gültig ist (zu finden in der Datei TUTORIAL). + +Copyright (C) 1985, 1996, 1997, 2001, 2002, 2003, 2004, + 2005, 2006, 2007 Free Software Foundation, Inc. + + Hiermit wird für jedermann die Erlaubnis erteilt, wörtliche, + unveränderte Kopien dieses Dokumentes für jegliches Medium zu + erstellen, unter der Voraussetzung, daß die Copyright-Notiz sowie + diese Erlaubnis beibehalten werden. Außerdem muß der Verteiler + dieses Dokuments den Empfängern die gleichen Rechte einräumen, + welche durch diese Erlaubnis gegeben sind. + + Zugleich wird die Erlaubnis erteilt, modifizierte Versionen dieses + Dokuments, oder Teile davon, zu verteilen, und zwar zu den oben + gegebenen Bedingungen unter der Voraussetzung, daß eindeutig zu + erkennen ist, wer zuletzt dieses Dokument verändert hat. + +Die Vervielfältigungsbedingungen für Emacs selbst sind etwas +komplexer, folgen aber in etwa den gleichen Richtlinien. Lesen Sie +bitte die Datei COPYING und geben Sie Emacs an Ihre Freunde weiter! +Helfen Sie mit, die Idee von freier Software zu propagieren, indem Sie +freie Software verwenden, verteilen, oder sogar selber schreiben. + +--- end of TUTORIAL.de --- + +;;; Local Variables: +;;; coding: latin-1 +;;; End: + +;;; arch-tag: a8f2fe06-631d-4ae1-887e-446f971b0baa diff --git a/etc/tutorials/TUTORIAL.eo b/etc/tutorials/TUTORIAL.eo new file mode 100644 index 00000000000..1f6e2d87880 --- /dev/null +++ b/etc/tutorials/TUTORIAL.eo @@ -0,0 +1,1126 @@ +Lernilo pri Emacs. Vidu finon por kondiæoj pri kopii. +Mallonga lernilo pri Emakso (Emacs). -- La uzokondiæojn vd æe la fino. + +Emaksaj ordonoj øenerale uzas aý la STIR-klavon (ofte markitan "Ctrl" +aý "CTL"), aý la META-klavon (ofte markitan "EDIT" aý "Alt"). Prefere +ol plene skribi tion æiufoje, ni uzos la sekvajn mallongigojn: + + C- signifas "premante la STIR-klavon tajpu la signon ". + Do, C-f estus: premtenu la STIR-klavon kaj tajpu f. + + M- signifas "premante la META-klavon (aý EDIT- aý Alt-klavon) + tajpu n. Se vi havas nek META- nek EDIT- nek + Alt-klavon, anstataýe premu kaj malpremu la Esc-klavon kaj + poste tajpu n. Ni skribas por la Esc-klavo. + +GRAVA NOTO: por fini la Emaksan seancon, tajpu C-x C-c. (Du signoj.) +En æi tiu lernilo, la signoj ">>" æe la maldekstra marøeno rekomendas +al vi tuj provi uzi ordonon. Ekzemple: +<> +[Mezo de paøo malplenas pro instruaj kialoj. La teksto pluas sube.] +>> Nun tajpu C-v (Vidu sekvantan ekranplenon) por vidigi la sekvan + ekranplenon. (Procedu: tenante premita la STIR-klavon tajpu v). + De nun, ripetu æi tion æiun fojon kiam vi finlegos la ekranon. + +Notu ke estas dulinia komuna¼o inter la tujsekvaj ekranplenoj; tio +donas kontinuecon por faciligi la legadon. + +Antaý æio vi bezonas scii kiel moviøi de loko al loko en la teksto. +Vi jam povas moviøi je unu ekrano antaýen per C-v. Por moviøi +malantaýen je unu ekrano, tajpu M-v (premu la META-klavon kaj tajpu v, +aý tajpu c se vi ne havas META-, EDIT- aý Alt-klavon). + +>> Provu tajpi M-v kaj sekve C-v kelkfoje. + + +* RESUMO +-------- + +La sekvaj ordonoj servas por foliumi ekranplenojn: + + C-v Moviøu antaýen je unu ekranpleno + M-v Moviøu malantaýen je unu ekranpleno + C-l Viþu la ekranon kaj reeligu la tutan tekston, aranøante + øin æirkaý la kursoro lokita centre de la ekrano. + (Tiu estas C-L, la stira lo; ne C-1, la stira unu.) + +>> Trovu la kursoron, kaj notu øian kuntekston. Tajpu C-l. Retrovu + la kursoron kaj notu ke øi restas en la sama kunteksto. + + +* BAZAJ RIMEDOJ POR REGI KURSORON +--------------------------------- + +Foliumi per ekranplenoj estas utila afero, sed kiel oni moviøu al +preciza loko en la teksto sur la ekrano? + +Estas kelkaj metodoj por fari tion. Oni povas uzi la sagoklavojn, sed +pli produktive estas teni la manojn en la normala pozicio kaj uzi la +ordonojn C-p, C-b, C-f, kaj C-n. Æiu de tiuj ordonoj movas la +kursoron je unu vertikalo aý horizontalo en la koncerna direkto sur la +ekrano. Æi tiu tabelo montras tiujn kvar ordonojn kaj kien ili movas +la kursoron: + + Al la antaýa linio, C-p + (angle: Previous line) + : + : + Antaýen, C-b .... Nuna loko de la kursoro .... Sekven, C-f + (ang. Backward) : (ang. Forward) + : + Al la sekva linio, C-n + (angle: Next line) + +>> Movu la kursoron al la centra linio de la diagramo per C-n aý C-p. + Tajpu C-l por vidi la tutan diagramon vertikale centrigita sur la + ekrano. + +La literoj estas elektitaj laý la koncernaj anglaj vortoj: P el +"previous", N el "next", B el "backward" kaj F el "forward". Tiuj +estas la bazaj ordonoj por movi la kursoron, kaj vi uzos ilin æiam, do +utilas al vi lerni ilin nune. + +>> Uzu C-n kelkfoje por mallevi la kursoron al æi tiu linio. + +>> Uzu C-f por avanci en la linion kaj sekve C-p por movi supren. + Atentu kion C-p faras kiam la kursoro estas meze de la linio. + +Æiu teksta linio finiøas per novlinia signo, kiu disigas øin disde la +sekva linio. La lasta linio en via dosiero devus havi novlinion æe la +fino (sed Emacs ne postulas øin). + +>> Provu uzi C-b æe linikomenco. Øi devas movi al la fino de la + antaýa linio. Tio okazas æar øi movas reen trans la novlinian + signon. + +C-f povas movi trans novlinion analogie kiel C-b + +>> Uzu C-b por vidi kie estas la kursoro. + Poste uzu C-f kelkfoje por reveni æe la linifinon. + Poste faru unu C-f pli por transiri en la sekvantan linion. + +Kiam vi pasas trans la supron aý malsupron de la ekrano, la teksto +transranda þoviøas sur la ekranon. Tio estas nomata "rulumado". Øi +ebligas movi la kursoron al specifita loko en la teksto sen perdi øin +(la kursoron) de sur la ekrano. + +>> Provu uzi C-n por movi la kursoron de sur la malsupro de la ekrano, + kaj vidu kio okazas. + +Se movado per signoj estas tro malrapida, moviøu per vortoj. M-f +(Meta-f) movas je unu vorto posten kaj M-b movas je unu vorto reen. + +>> Tajpu kelkfoje M-f kaj M-b. + +Kiam vi estas meze de vorto, M-f movas al la fino de la vorto. Kiam +vi estas en intervorta spaco, M-f movas al la fino de la sekva vorto. +M-b faras analogie en la mala direkto. + +>> Tajpu M-f kaj M-b kelkfoje, intermiksante kun C-f kaj C-b, por vidi + la efikon de M-f kaj M-b el diversaj lokoj ene kaj inter vortoj. + +Rimarku la analogion inter C-f kaj C-b unuflanke, kaj M-f kaj M-b +aliflanke. Tre ofte Meta-signoj servas por funkcioj rilataj al unuoj +difinitaj lingve (vortoj, frazoj, alineoj), dum la stiraj C-signoj +funkcias sur elementaj unuoj sendependaj de la enhavo (signopozicioj, +linioj, ktp.). + +Tiu analogio validas ankaý por linioj kaj frazoj: C-a kaj C-e movas al +la komenco aý fino de linio, kaj M-a kaj M-e movas al la komenco aý +fino de frazo. + +>> Provu kelkajn C-a, poste kelkajn C-e. + Provu kelkajn M-a, poste kelkajn M-e. + +Observu kiel ripetaj C-a faras nenion pli ol unufoje, dum ripetaj M-a +plu movas je unu frazo pluen. Kvankam la analogio ne estas plena, æiu +ordono kondutas nature. + +La loko de la kursoro en la teksto estas nomata "punkto" (angle +"point"). Alidire, la kursoro montras sur la ekrano kie "punkto" +estas en la teksto. + +Jen resumo de simplaj ordono por movi la kursoron, inklude la ordonojn +por moviøi per vortoj kaj frazoj: + + C-f Moviøu sekven je unu signopozicio + C-b Moviøu reen je unu signopozicio + + M-f Moviøu sekven je unu vorto + M-b Moviøu antaýen je unu vorto + + C-n Moviøu en la malsuran linion + C-p Moviøu en la suran linion + + C-a Moviøu al la linikomenco + C-e Moviøu al la linifino + + M-a Moviøu al la komenco de la frazo + M-e Moviøu al la fino de la frazo + +>> Provu æiujn æi ordonojn, nun po kelkfoje por praktiki. Ili estas + la plej ofte uzataj ordonoj. + +Du aliaj kursormovaj ordonoj estas M-< (Meta Malpli-ol), kiu movas al +la komenco de la tuta teksto, kaj M-> (Meta Pli-ol), kiu movas al la +fino de la tuta teksto. + +Æe la plejmulto de terminaloj, la "<" estas super la komo, do vi devas +uzi la majuskligan klavon por tajpi øin. Æe tiuj terminaloj vi ankaý +devas uzi la majuskligan klavon por tajpi M-<; sen la majuskliga klavo +rezultus "M-," (Meta-komo). + +>> Provu tajpi M-< nune, por moviøi al la komenco de la lernilo. + Poste uzu C-v multfoje por reveni æi tien. + +>> Provu tajpi M-> nune, por moviøi al la fino de la lernilo. + Poste uzu M-v multfoje por reveni æi tien. + +Vi ankaý povas movi la kursoron per la sagoklavoj, se via terminalo +havas ilin. Ni tamen rekomendas ke vi lernu C-b, C-f, C-n kaj C-p pro +tri kialoj. Unue, ili funkcias æe æia terminalo. Due, kiam vi +kutimiøos al Emakso, vi trovos ke tajpi tiujn stirsignojn estas pli +rapida ol tajpi la sagoklavojn (æar vi ne devas formovi viajn manojn +de la normala tajpada pozicio). Trie, kiam vi kutimiøos uzi tiujn +stirajn ordonojn, vi facile lernos uzi ankaý aliajn kursormovajn +ordonojn. + +La plejparto da Emaksaj ordonoj akceptas nombran argumenton; por la +plejparto da ordonoj, øi funkcias kiel ripetilo. Por indiki al ordono +la nombron de ripetoj, tajpu C-u kaj sekve la ciferojn antaý ol tajpi +la ordonon. Se vi havas META-klavon (aý EDIT-, aý Alt-klavon), eblas +ankaý alia metodo por doni nombran argumenton: tajpu la ciferojn +premtenante la META-klavon. Ni rekomendas lerni la metodon de C-u æar +øi funkcias æe æia terminalo. La nombra argumento ankaý estas nomata +"prefiksa argumento", æar la argumenton oni tajpas antaý la koncerna +ordono. + +Ekzemple, C-u 8 C-f movas vin al la oka signo sekvanta. + +>> Uzu C-n aý C-p kun nombra argumento por movi la kursoron en apudan + linion per sola ordono. + +La plejparto da ordonoj uzas la nombran argumenton kiel ripetilon, sed +iuj ordonoj øin uzas alicele. Kelkaj ordonoj (tamen neniu el la +lernitaj) uzas øin kiel indikilon -- la ekzisto de prefiksa argumento, +sendepende de øia valoro, igas la ordonon agi alimaniere. + +C-v kaj M-v estas alispeca escepto. Kiam vi donas al ili argumenton, +ili rulumas la ekranon supren aý suben je tiom da linioj, anstataý je +ekranplenoj. Ekzemple, C-u 8 C-v rulumas la ekranon je 8 linioj. + +>> Tajpu C-u 8 C-v nun. + +Æi tio devis rulumi la ekranon je 8 linioj supren. Se vi deziras +retrorulumi øin suben, vi povas doni argumenton al M-v. + +Se vi uzas Emakson sub grafika fenestrosistemo, ekz-e X11 aý +MS-Windows, øi devas havi altan ortograman regionon nomatan rulumskalo +æe la (mal)dekstra flanko de la Emaksa fenestro. Vi povas rulumi la +tekston klakante per la muso en la rulumskalo. + +>> Provu premi la mezan butonon (de la muso) æe la supro de la + emfazata regiono interne de la rulumskalo. Tio devus rulumi la + tekston øis pozicio determinita per tio, kiom alte aý malalte vi + alklakis. + +>> Provu movi la muson supren kaj suben, tenante premita la mezan + musbutonon. Vi vidos ke la teksto rulumas supren kaj suben laý + tio, kiel vi movas la muson. + + +* SE EMAKSO SVENIS +------------------ + +Se Emakso æesis respondi al viaj ordonoj, vi povas sendanøere øin +malbloki tajpante C-g. Vi povas uzi C-g por haltigi ordonon kiu +plenumiøas tro longe. + +Vi ankaý povas uzi C-g por forigi nombran argumenton aý la komencon de +ordono kiun vi ne deziras fini. + +>> Tajpu C-u 100 por fari nombran argumenton 100, sekve tajpu C-g. + Nun tajpu C-f. Øi devas movi je nur unu signo, æar vi forigis la + argumenton per C-g. + +Se vi erare tajpis (la eskapklavon), vi povas vin malembarasi de +øi per C-g. + + +* MALÞALTITAJ ORDONOJ +--------------------- + +Iuj Emaksaj ordonoj estas malþaltitaj por ke komencantoj ne uzu ilin +akcidente. + +Se vi tajpas iun el la malþaltitaj ordonoj, Emakso eligas mesaøon +indikantan la tajpitan ordonon, kaj demandas æu vere vi volas uzi øin. + +Se vi intencas uzi la ordonon, tajpu spaceton responde al la demando. +Normale, se vi ne deziras plenumi la malþaltitan ordonon, respondu per +"n". + +>> Tajpu C-x C-l (kiu estas malþaltita ordono), kaj tajpu "n" responde + al la demando. + + +* FENESTROJ +----------- + +En Emakso vi povas havi plurajn fenestrojn montrantajn sian propran +tekston. Ni klarigos poste kiel uzi plurajn fenestrojn. Sed nun ni +klarigu kiel forigi nebezonatajn fenestrojn kaj reveni al la simpla +unufenestra redaktado. Tio estas facila: + + C-x 1 Unu fenestro (t.e., forigu æiujn aliajn fenestrojn) + +Tio estas STIR-x kaj poste la cifero 1. "C-x 1" pligrandigas la +fenestron enhavantan la kursoron, tiel ke øi okupu la tutan ekranon. +Øi malaperigas æiujn aliajn fenestrojn. + +>> Movu la kursoron en æi tiun linion kaj tajpu C-u 0 C-l. +>> Tajpu C-h k C-f. + Vidu kiel æi tiu fenestro malkreskas, dum nova fenestro aperas por + montri instrukcion pri la C-f ordono. + +>> Tajpu C-x 1 kaj vidu la instrukcian fenestron malaperi. + +Tiu ordono malsimilas la aliajn ordonojn kiujn vi lernis antaýe æar øi +konsistas el du signoj. Øin komencas la signo STIR-x. Ekzistas tuta +serio da ordonoj kiuj komenciøas per STIR-x; multaj el ili koncernas +fenestrojn, dosierojn, bufrojn, kaj rilatajn aferojn. Tiuj ordonoj +estas du, tri aý kvar signojn longaj. + + +* ENÞOVO KAJ FORVIÞO +-------------------- + +Se vi deziras enþovi tekston, simple øin tajpu. Signojn kiujn oni +povas vidi, ekzemple A, 7, *, ktp, Emakso traktas kiel tekston kaj +enmetas tuj. Tajpu (la enigan klavon) por enigi linifinilon. + +Por forviþi la ¼us tajpitan signon tajpu . +estas tiu klavo de la klavaro, kiun oni ankaý ekster Emakso normale +uzas por forigi la ¼us tajpitan signon. Kutime øi estas granda klavo +unu aý du vicojn super Return-klavo, kaj eble estas markita per +"Delete", "Del" aý "Backspace". + +Se tiu klavo estas markita per "Backspace" (retropaþo), tiam øuste øin +oni uzu por . Se krome estas alia klavo, markita , +øi ne estas . + +Øenerale, estas tiu klavo kiu forviþas la signon tuj antaý +la nuna kursorloko. + +>> Faru æi tion nun -- tajpu kelkajn signojn, poste forviþu ilin + tajpante kelkajn . Ne timu difekti æi tiun dosieron; vi + ne þanøos la originalan lernilon. Æi tio estas nur ties labora + kopio por vi. + +Kiam linio da teksto iøas pli longa ol la ekrana linio, la teksta +linio transiras sur la sekvan ekranan linion. Retroklino ("\") -- aý, +en grafika fenestrosistemo, kurba sageto -- en la dekstra marøeno +indikas tian transiron. + +>> Enigu tekston øis øi atingos la dekstran marøenon, kaj plu enigu. + Vi vidos transiron en la sekvan linion. + +>> Ripete por remallongigi la tekstan linion øis la longo + de unu ekrana linio denove. La transiro malaperas. + +Vi povas forviþi linifinan signon tiel same kiel iun ajn signon. +Forviþo de linifinilo inter du linioj kunigas ilin en unu linion. Se +la rezulta kunigita linio estas pli longa ol la ekrana larøo, øi +aperos kun transiro. + +>> Movu la kursoron al la komenco de linio kaj tajpu . La + linio kuniøos kun la ¼usa linio. + +>> Tajpu por reenigi la linifinilon kiun vi ¼us forviþis. + +Memoru ke vi povas doni ripetilon al plejparto da Emaksaj ordonoj; tio +koncernas ankaý tekstajn signojn. Ripetilo æe teksta signo enigas øin +plurfoje. + +>> Provu tion nun -- tajpu "C-u 8 *" por enigi "********". + +Vi lernis la plej fundamentan metodon por tajpi en Emakso kaj por +korekti erarojn. Vi povas forviþi per vortoj aý per linioj. Jen +resumo de forviþaj ordonoj: + + forviþu la signon ¼us antaý la kursoro + C-d forviþu la signon tuj post la kursoro + + M- for¼etu la vorton ¼us antaý la kursoro + M-d for¼etu la vorton tuj post la kursoro + + C-k for¼etu de la kursorloko øis la linifino + M-k for¼etu de la kursorloko øis la frazfino + +Rimarku ke kaj C-d rilate al M- kaj M-d etendas +la analogion komencitan de C-f kaj M-f (nu, ne vere estas +stirsigno, sed ni ne estu tro pedantaj). C-k kaj M-k iom similas al +C-e kaj M-e, sed rilate al linioj anstataý frazoj. + +Vi ankaý povas for¼eti iun ajn parton de la bufro per unu senvaria +metodo. Moviøu al unu ekstrema¼o de tiu parto, kaj tajpu "C-@" (aý +"C-SPC", "SPC" simbolas spaceton). Moviøu al la alia ekstrema¼o, kaj +tajpu C-w. Tio for¼etas la tutan tekston inter la du lokoj. + +>> Movu la kursoron al la V æe la komenco de la antaýa alineo. +>> Tajpu C-SPC. Emakso devas montri mesaøon: "Mark set" ("Markite") + æe la fundo de la ekrano. +>> Movu la kursoron al la o en "ekstrema¼o", en la dua linio de la + alineo. +>> Tajpu C-w. Tio for¼etos la tekston komenciøantan æe la V, kaj + finiøantan ¼us antaý la o. + +La diferenco inter "for¬ETI" kaj "forVIÞI" ion konsistas en tio, ke vi +povas re-enþovi "for¼etitajn" a¼ojn, sed ne "forviþitajn" a¼ojn. +Re-enþovo de for¼etita teksto nomiøas "en¼eto" (angle "yanking"). +Øenerale, la ordonoj por forigi multe da teksto øin "for¼etas" (do, +ili ankaý ebligas øin "en¼eti"); male, la ordonoj por forviþi nur unu +signon, aý nur blankajn liniojn kaj spacetojn, ne konservas la +forigitan tekston (kaj oni ne povas øin en¼eti). + +>> Movu la kursoron al la komenco de nemalplena linio. Poste tajpu + C-k por for¼eti la tekston de tiu linio. +>> Tajpu C-k duafoje. Vi vidos ke øi for¼etas la linifinilon + sekvantan tiun linion. + +Rimarku ke unuopa C-k for¼etas la enhavon de la linio, kaj dua C-k +for¼etas la linion mem kaj igas la postajn liniojn þoviøi supren. C-k +traktas nombran argumenton speciale: øi for¼etas tiom da linioj KAJ +ilian enhava¼on. Æi tio ne estas simpla ripetado. C-u 2 C-k for¼etas +du liniojn kaj iliajn linifinojn; tajpi C-k dufoje ne farus tion. + +Reenigi for¼etitan tekston nomiøas "en¼etado". Vi povas en¼eti la +for¼etitan tekston aý en la saman lokon de kie øi estis for¼etita, aý +en alian lokon de la redaktata teksto, aý eæ en alian dosieron. Vi +povas en¼eti la tekston kelkfoje por fari plurajn kopiojn de øi. + +Por repreni la laste for¼etitan tekston kaj enigi øin tien kie la +kursoro nune estas, tajpu "C-y" (de la angla vorto "yank"). + +>> Provu øin: tajpu C-y por en¼eti la tekston. + +Atentu ke se vi tujsekve faras plurajn C-k, æiuj for¼etata¼oj +konserviøas kune, por ke oni povu en¼eti æiujn æi liniojn per unu C-y. + +>> Faru æi tion nun, tajpu C-k kelkfoje. + +Nun, por repreni tiun for¼etitan tekston: + +>> Tajpu C-y. Poste movu la kursoron je kelkaj linioj suben kaj tajpu + C-y denove. Nun vi scias kiel kopii iom da teksto. + +Kion fari se vi, havante iom da teksto en¼etota, for¼etas ion alian? +C-y en¼etus la pli ¼usan for¼eta¼on. Sed la antaýa teksto ne estas +perdita. Vi povas re-en¼eti øin per la ordono M-y. Farinte C-y por +en¼eti la plej ¼usan for¼eta¼on, tajpu M-y por anstataýigi la +en¼etitan tekston per pli frua for¼eta¼o. Tajpadu M-y denove, kaj unu +post la alia en¼etiøos pli fruaj for¼eta¼oj. Trovinte la seræatan +pecon, vi ne bezonas fari ion por konservi øin. Simple daýrigu vian +redaktadon, kaj lasu la en¼etitan tekston tie kie øi estas. + +Se vi uzos M-y sufiæe da fojoj, vi revenos al la komenca loko (la plej +¼usa for¼eta¼o). + +>> For¼etu linion, moviøu ien, for¼etu alian linion. + Poste uzu C-y por en¼eti reen la duan for¼etitan linion. + Poste uzu M-y kaj la unua for¼etita linio anstataýigos øin. + Uzu M-y plue kaj rigardu kion vi akiras. Daýrigu øis la reapero de + la dua for¼etita linio, kaj poste de kelkaj pli. Se vi deziras, vi + povas doni al M-y pozitivajn kaj negativajn argumentojn. + + +* MALFARADO +----------- + +Se vi þanøis la tekston, kaj sekve decidas ke tio estis eraro, vi +povas malfari la þanøon per la "malfaru"-ordono, C-x u (de la angla +"undo"). + +Normale, C-x u malfaras la þanøojn faritajn per unu ordono; se vi +tujsekve ripetas la ordonon C-x u kelkfoje, æiu ripeto malfaras unu +plian ordonon. + +Sed estas du esceptoj: ordonoj kiuj ne þanøas la tekston ne estas +atentataj (tiuj inkludas kursormovajn kaj rulumadajn ordonojn), kaj +memenigaj signoj kutime ariøas en grupojn po øis 20. (Tio malpliigas +la tajpadojn de C-x u necesajn por malfari tekstenigon.) + +>> For¼etu æi-linion per C-k, sekve tajpu C-x u kaj øi devas reaperi. + +C-_ estas alternativa malfara ordono; øi funkcias same kiel C-x u, sed +øi estas pli facila por plurfoja tajpado sinsekva. La malavantaøo de +C-_ estas ke iuj klavaroj malhavas evidentan metodon por tajpi øin. +Tial ni provizas ankaý C-x u. Æe iu klavaroj vi povas ricevi C-_ +tajpante / dum vi premtenas STIR-klavon. + +Nombra argumento æe C-_ aý C-x u agas kiel ripetilo. + +Vi povas malfari forviþon de teksto egale bone kiel vi povas malfari +for¼eton de teksto. La diferenco inter forviþo kaj for¼eto koncernas +la eblon en¼eti per C-y; øi ne ekzistas por malfaro. + + +* DOSIEROJ +----------- + +Por persistigi la redaktatan tekston, necesas meti øin en dosieron. +Alie, øi pereos kiam via Emaksa procezo finiøos. Por meti vian +tekston en dosieron, necesas "trovi" la dosieron antaý ol enigi la +tekston. (Tio ankaý estas nomata "viziti" la dosieron; angle "find, +visit a file".) + +Trovi dosieron signifas ke vi igas la enhavon de la dosiero atingebla +per Emakso. Plurrilate, øi estas kvazaý vi redaktus la dosieron mem. +Tamen, la þanøoj kiujn vi faras per Emakso ne persistiøas øis kiam vi +"konservos" (angle "save") la dosieron. Vi povas konservi la dosieron +por ne lasi duonþanøitan dosieron æe la sistemo kiam vi ne deziras +tion. Eæ kiam vi konservas, Emakso lasas la originalan dosieron sub +þanøita nomo por la eventualo ke vi poste decidos ke viaj þanøoj estis +eraraj. + +Se vi rigardos apud la fundon de la ekrano vi vidos linion kiun +komencas kaj finas strekoj; komence "--:-- TUTORIAL.eo" aý io simila. +Tiu parto de la ekrano normale montras la nomon de la vizitata +dosiero. Øuste nun, vi vizitas dosieron nomatan "TUTORIAL.eo" kiu +estas via propra kopio de la Emaksa lernilo. Kiam vi trovas dosieron +per Emakso, la nomo de tiu dosiero aperas æe tiu sama loko. + +Unu aparta¼o de la dosiertrova ordono estas, ke vi devas indiki kiun +dosiernomon vi deziras. Ni diras ke la ordono "legas argumenton de la +terminalo" (æi-okaze la argumento estas la dosiernomo). Post kiam vi +tajpis la ordonon + + C-x C-f Trovu dosieron + +Emakso petas ke vi tajpu la dosiernomon. La dosiernomo kiun vi tajpas +aperas sur la plej malsupra linio de la ekrano. Tiu linio estas +nomata "la bufreto" (angle "minibuffer") kiam øi estas uzata por tia +speco de enigado. Vi povas uzi ordinarajn Emaksajn redaktajn ordonojn +por redakti la dosiernomon. + +Dum vi enigas la dosiernomon (aý iun ajn bufretan enigon), vi povas +aboli la ordonon per C-g. + +>> Tajpu C-x C-f, kaj sekve C-g. Æi tio abolas la bufreton, kaj ankaý + abolas la ordonon "C-x C-f" kiu uzis la bufreton. Do vi ne trovis + dosieron. + +Fininte enigi la dosiernomon, tajpu . Tiam eklaboros la +ordono C-x C-f, kaj trovos la dosieron kiun vi elektis. La bufreto +malaperos kiam la C-x C-f ordono finiøos. + +Post eta tempo la enhavo de la dosiero aperas sur la ekrano, kaj vi +povas redakti la enhavon. Kiam vi deziras persistigi viajn þanøojn, +tajpu la ordonon + + C-x C-s konServu (angle "save") la dosieron + +Tio kopias la tekston el interne de Emakso en la dosieron. Æe la unua +konservado, Emakso renomas la originalan dosieron per nova nomo por ke +øi ne perdiøu. La nova nomo estas farata per aldono de "~" al la fino +de la originala dosiernomo. + +Fininte la konservadon, Emakso montras la nomon de la dosiero +skribita. Konservu sufiæe ofte, por ne perdi multe da laboro se la +sistemo paneos. + +>> Tajpu C-x C-s, por konservi vian kopion de la lernilo. + Emakso devas montri la mesaøon "Wrote ...TUTORIAL.eo" (Skribis + ...TUTORIAL.eo) æe la fundo de la ekrano. + +NOTO: Sur iuj sistemoj, C-x C-s senmovigas la ekranon kaj vi vidos +nenian pluan eligon de Emakso. Tio indikas ke operaciuma "trajto" +nomata "fluregulado" (angle "flow control") interkaptis la ordonon C-s +kaj ne lasas øin trapasi al Emakso. Por revivigi la ekranon, tajpu +C-q. Poste rigardu la sekcion nomatan "Spontaneous Entry to +Incremental Search" en la Emaksa manlibro por konsilo kion fari pri æi +tiu "trajto". + +Vi povas trovi ekzistantan dosieron, por vidigi aý redakti øin. Vi +ankaý povas trovi dosieron kiu ankoraý ne ekzistas. Æi tio estas la +maniero por krei dosieron per Emakso: trovu la dosieron, komence +malplenan, kaj sekve ekenigu la tekston por la dosiero. Kiam vi petos +"konservi" la dosieron, Emakso vere kreos la dosieron kun la teksto +kiun vi enigis. De tiam vi povos opinii ke vi redaktas jam +ekzistantan dosieron. + + +* BUFROJ +-------- + +Se vi trovas duan dosieron per C-x C-f, la unua dosiero restas interne +de Emakso. Vi povas reiri al øi retrovante øin denove per C-x C-f. +Tio ebligas al vi meti plurajn dosierojn en Emakson. + +>> Kreu dosieron nomatan "umo" tajpante "C-x C-f umo ". + Poste enigu iom da teksto, redaktu øin, kaj konservu "umo"n + tajpante "C-x C-s". + Fine, tajpu "C-x C-f TUTORIAL.eo " por reveni al la + lernilo. + +Emakso tenas la tekston de æiu dosiero en objekto nomata "bufro". +Trovo de dosiero kreas novan bufron interne de Emakso. Por vidi +liston de la bufroj kiuj nune ekzistas en via Emakso-procezo, tajpu + + C-x C-b Listigu bufrojn + +>> Provu C-x C-b nun. + +Vi vidas, ke æiu bufro havas nomon, kaj ke øi ankaý eble havas +dosiernomon por la dosiero kies enhavon øi tenas. ÆIU teksto kiun vi +vidas en Emaksa fenestro estas æiam parto de iu bufro. + +>> Tajpu C-x 1 por forigi la liston de bufroj. + +Se vi havas plurajn bufrojn, je æiu momento nur nur unu el ili estas +"la kuranta": tiu, kiun vi redaktas. Se vi volas redakti alian +bufron, vi bezonas "transiri" en øin. Se la celata bufro respondas al +dosiero, vi povas transiri per vizito al øi: C-x C-f ... Sed estas +pli facila metodo: uzi la ordonon "C-x b", donante al øi la nomon de +la celata bufro. + +>> Tajpu "C-x b umo " por transiri en la bufron "umo", + entenantan la tekston de la dosiero "umo". + Poste tajpu "C-x b TUTORIAL.eo " por reveni en la lernilon. + +Plej ofte, la bufronomo estas egala al la nomo de øia dosiero (sen la +dosiera parto). Tamen, ne æiam tio estas vera. La listo de bufroj +farita per "C-x C-b" æiam vidigas al vi la nomojn de æiuj bufroj. + +ÆIU teksto kiun vi vidas en Emaksa fenestro estas æiam parto de iu +bufro. Tamen iuj bufroj ne respondas al dosieroj. Ekzemple, la bufro +nomata "*Buffer List*" (Listo de Bufroj) ne havas dosieron. Øi estas +la bufro enhavanta la liston de bufroj faritaj per la ordono C-x C-b. +Ankaý la bufro "*Messages*" respondas al neniu dosiero; øi entenas la +mesaøojn aperintajn en la funda linio dum la Emaksa seanco. + +>> Tajpu "C-x b *Messages* " por vidigi la bufron de mesaøoj. + Poste tajpu "C-x b TUTORIAL.eo " por reveni en la lernilon. + +Se vi þanøas la tekston de unu dosiero, kaj sekve trovas alian +dosieron, æi tio ne konservas la unuan dosieron. Øiaj þanøoj restas +interne de Emakso, en la bufro de tiu dosiero. La kreado aý redaktado +de la bufro de la dua dosiero ne efikas la bufron de la unua dosiero. +Æi tio estas utilega, sed øi ankaý signifas ke vi bezonas oportunan +metodon por konservi la bufron de la unua dosiero. Estas øena devi +revenadi en øin per C-x C-f nur por konservi øin per C-x C-s. Tial ni +havas + + C-x s Konservu iom da bufroj. + +C-x s demandas vin pri æiu þanøita bufro kiun vi ne konservis. Øi +demandas vin, pri æiu tia bufro, æu konservi la bufron. + +>> Enigu linion da teksto, kaj sekve tajpu C-x s. + Emakso devas demandi vin æu øi konservu la bufron "TUTORIAL.eo". + Jesu tajpante "y" (de la angla "yes"). + + +* ETENDI LA ORDONARON +--------------------- + +Ekzistas multege pli da Emaksaj ordonoj ol eblas meti sur æiuj el la +stiraj kaj meta-aj signoj. Emakso solvas tiun problemon per la +X-ordonoj (de la angla eXtend, "etendo"). Estas du specoj da ili: + + C-x Signa etendo. Sekvata de unu signo. + M-x Nomhava ordona etendo. Sekvata de plena nomo. + +Æi tiuj estas la ordonoj ja utilaj, sed malpli oftaj ol la ordonoj +kiujn vi jam lernis. Vi jam vidis du el ili: la dosierajn ordonojn +C-x C-f por "trovi" kaj C-x C-s por "konservi". Alia ekzemplo estas +la ordono por fini Emaksan seancon -- la ordono C-x C-c. (Ne timu +perdi faritajn þanøojn; C-x C-c proponas konservi æiun þanøitan +dosieron antaý ol æesigi Emakson.) + +C-z estas la ordono por eliri Emakso *provizore* -- tiel ke vi povas +reveni en la saman Emaksan seancon poste. + +Sur sistemoj kiuj permesas øin, C-z "provizore æesigas" Emakson; t.e. +øi revenas en la þelon sed ne detruas Emakson. Je la plej komunaj +þeloj, vi povas reaktivigi Emakson per la ordono "fg" (de la angla +"foreground") aý per "%emacs". + +Sur sistemoj kiuj ne permesas provizoran æesigon, C-z kreas sub-þelon +sub Emakso por doni al vi þancon lanæi aliajn programojn kaj reiri al +Emakso poste; øi ne vere "eliras" el Emakso. Æi-okaze, la þela ordono +"exit" (eliru) estas la kutima maniero reiri al Emakso de la sub-þelo. + +La ordonon C-x C-c uzu por adiaýi. Øi estas ankaý la ordono uzenda +por eliri Emakson lanæitan per retpoþta programo aý alia simila +utila¼o, æar tiuj eble ne scias kiel trakti provizoran æesigon de +Emakso. Tamen, ordinare, se vi ne estas tuj adiaýonta, preferindas +provizore æesigi Emakson per C-z anstataý eliri Emakson. + +Ekzistas multe da ordonoj C-x. Jen listo de tiuj kiujn vi jam konas: + + C-x C-f Trovu dosieron. + C-x C-s Konservu dosieron. + C-x C-b Listigu bufrojn. + C-x C-c Æesigu Emakson. + C-x 1 Forigu æiujn fenestrojn krom unu. + C-x u Malfaru. + +Nomhavajn etenditajn ordonojn oni uzas eæ malpli ofte, aý uzas ilin +nur en kelkaj reøimoj. Ekzemplo estas la ordono "replace-string" +(anstataýigu-æenon), kiu anstataýigas unu æenon je alia tutbufre. +Kiam vi tajpas M-x, Emakso demandas de vi æe la fundo de la ekrano la +nomon de la ordono; æi-okaze, "replace-string". Simple tajpu +"repl s" kaj Emakso kompletigos la nomon. Finu la ordonnomon +per . + +La ordono replace-string postulas du argumentojn -- la anstataýigOTan +kaj la anstataýigONTan æenojn. Æiun argumenton finu per . + +>> Movu la kursoron al la blanka linio du liniojn sub æi tiu. + Poste tajpu "M-x repl sliniopeco". + + Rimarku kiel tiu æi linio þanøiøis: vi anstataýigis la vorton + l-i-n-i-o per "peco" kie ajn øi aperis, de post la komenca loko de + la kursoro. + + +* AÝTOMATA KONSERVADO +--------------------- + +Kiam vi faris þanøojn en dosiero, sed ankoraý ne konservis ilin, ili +povus perdiøi se via komputilo paneos. Por protekti vin de tio, +Emakso periode "aýtokonservas" æiujn dosierojn kiun vi redaktas. La +nomo de aýtokonservita dosiero havas la signon "#" komence kaj fine; +ekzemple, se via dosiero estas nomata "hello.c", øia aýtokonservita +dosiero nomiøos "#hello.c#". Kiam vi konservos la dosieron +normalmaniere, Emakso malkreos øian aýtokonservitan dosieron. + +Por reakiri vian aýtokonservitajn redakta¼ojn post paneo, +normalmaniere "trovu" la dosieron (per la nomo de la dosiero kiun vi +redaktis, ne per la nomo de la aýtokonservita dosiero) kaj poste tajpu +"yes" por konfirmi ke vi volas uzi la aýtomate konservitan +datumon. + + +* E¦A AREO +---------- + +Se vi tajpas plursignan ordonon malrapide, Emakso montras øin al vi æe +la fundo de la ekrano en areo nomata la "e¶a areo". La e¶a areo +enhavas la plej malsupran linion de la ekrano. + + +* REØIMLINIO +------------- + +La linio tuj super la e¶a areo estas nomata la "reøimlinio". La +reøimlinio montras ion similan al æi tio: + +--:** TUTORIAL.eo 63% L749 (Fundamental)----------------------- + +Tiu linio donas al vi utilan informon pri la stato de Emakso kaj la +redaktata teksto. + +Vi jam scias kion signifas la dosiernomo -- øi estas la dosiero kiun +vi trovis. -NN%-- montras vian nunan lokon en la teksto; øi signifas +ke NN elcentoj de la teksto estas supren de la supro de la ekrano. Se +la supro de la dosiero estas sur la ekrano, øi montras --Top-- +anstataý -- 0%--. Se la malsupro de la teksto estas sur la ekrano, øi +montras --Bot--. Se vi rigardas tekston tiom malgrandan ke æiom da øi +aperas en la ekrano, la reøimlinio montras --All--. + +La L kun ciferoj indikas la pozicion alimaniere: ili indikas la +kurantan lininumeron de "punkto". + +La steloj æe la komenco signifas ke vi þanøis la tekston. Antaý la +þanøoj, kiam vi ekvizitas aý konservis dosieron, en tiu parto de la +reøimlinio estas neniaj steloj, nur strekoj. + +La enkrampa parto de la reøimlinio montras al vi kiujn redaktadajn +reøimojn vi uzas. La defaýlta reøimo estas "Fundamental" (fundamenta) +kiun vi uzas nun. Øi estas ekzemplo pri "æefreøimo". + +Emakso havas multajn diversajn reøimojn. Iuj el ili estas por redakti +diversajn lingvojn kajaý specojn de teksto, ekzemple Lisp-reøimo, +Teksta-reøimo, ktp. Æiam unu kaj nur unu æefreøimo estas aktiva, kaj +øia nomo æiam aperas en la reøimlinio øuste kie "Fundamental" estas +nun. + +Æiu æefreøimo igas iujn ordonojn agi malsame. Ekzemple, estas ordonoj +por krei komentojn en programo, kaj æar æiu programlingvo havas +malsaman ideon pri tio, kiel komento aspektu, æiu æefreøimo devas +enigi komentojn malsame. Æiu æefreøimo estas la nomo de etenda +ordono, per kiu vi povas þalti tiun reøimon. Ekzemple, +"M-x fundamental-mode" estas ordono por þalti la Fundamentan reøimon. + +Se vi redaktos tekston (esperantan, anglan ktp), ekzemple æi tiun +dosieron, al vi eble konvenos Teksta-reøimo. + +>> Tajpu M-x text-mode. + +Ne maltrankviliøu, la Emaksaj ordonoj kiujn vi jam lernis malmulte +þanøiøas. Sed vi povas observi ke M-f kaj M-b nun traktas apostrofojn +kial parton de vortoj. Antaýe, en Fundamenta reøimo, M-f kaj M-b +traktis apostrofojn kiel vortajn disigilojn. + +Æefreøimoj kutime faras tiajn subtilajn þanøojn: la plejmulto da +ordonoj faras "la saman taskon" en æiu æefreøimo, sed ili funkcias +iomete malsame. + +Por vidi dokumentaron pri via nuna æefreøimo, tajpu C-h m. + +>> Per kelkaj C-u C-v loku æi tiun linion æe la supro de la ekrano. +>> Tajpu C-h m, por vidi kiel la Teksta reøimo diferencas disde la + Fundamenta reøimo. +>> Tajpu C-x 1 por forigi la dokumentaron for de la ekrano. + +Æefreøimojn oni nomas æefaj æar ekzistas ankaý "kromreøimoj". +Kromreøimoj ne estas alternativoj kontraý la æefreøimoj, nur negravaj +modifoj al ili. Æiun kromreøimon oni povas þalti aý malþalti, +sendepende de æiuj aliaj kromreøimoj, kaj sendepende de la æefreøimo. +Do vi povas uzi neniom da kromreøimoj, aý unu kromreøimon, aý ian ajn +kombina¼on de kelkaj kromreøimoj. + +Unu utilega kromreøimo, precipe por redakti homlingvan tekston +(esperantan, anglan ktp), estas la reøimo de Aýtomata Linifaldo (Auto +Fill mode). Kiam øi estas þaltita, Emakso aýtomate rompas la linion +inter vortoj æiufoje kiam la enigata tekstolinio iøas tro larøa. + +Por þalti la reøimon de Aýtomata Linifaldo tajpu +"M-x auto fill mode". Kiam la reøimo estas þaltita, vi povas +malþalti øin denove tajpante "M-x auto fill mode". Se la +reøimo estas malþaltita, tiu ordono þaltas øin, kaj se øi estas +þaltita, tiu ordono malþaltas øin. Ni diras ke la ordono "transþaltas +la reøimon". + +>> Tajpu "M-x auto file mode". Poste enigi linion el "asdf ", + ripete, øis vi vidos øin dividita en du liniojn. Vi devas enigi + spacetojn inter "asdf", æar la Aýtomata Linifaldo rompas liniojn + nur æe spacetoj. + +Normale la marøeno estas post 70 signoj, sed vi povas þanøi tion per +la ordono C-x f. Vi devus doni la marøenon kiu vi deziras por nombra +argumento. + +>> Tajpu C-x f kun la argumento 20. (C-u 2 0 C-x f). + Tajpu ia tekston kaj rigardu kiel Emakso faldas liniojn po 20 + signoj. Refiksu la marøenon al 70 per C-x f. + +Se vi faras þanøojn meze de alineo, la Aýtomata Linifalda reøimo ne +refaldas øin por vi. +Por rearanøi la alineon, tajpu M-q (Meta-q) dum la kursoro estas +interne de la alineo. + +>> Movu la kursoron en la antaýan alineon kaj tajpu M-q. + + +* SERÆADO +--------- + +Emakso povas seræi aperojn de æenoj (tiuj estas aroj da apudaj signoj +aý vortoj), aý antaýen tra la teksto, aý malantaýen. Seræi æenon +estas kursormova ordono; øi movas la kursoron al la sekvanta loko kie +la æeno aperas. + +La Emaksa seræa ordono diferencas de la seræaj ordonoj de la plimulto +da redaktiloj per tio, ke øi estas "dumtajpa". Tio signifas ke la +seræo okazas dum vi tajpas la æenon por priseræi. + +La ordono por komenci seræon estas C-s por la seræo antaýen, kaj C-r +por la seræo malantaýen. SED ATENDU! Ankoraý ne provu ilin nun. + +Kiam vi tajpos C-s, vi vidos la æenon "I-search" aperi invite en la +e¶a areo. Æi tio informas vin, ke Emakso estas en la dumtajpa seræo, +atendante ke vi tajpu la æenon kies aperon vi deziras trovi. +finas seræon. + +>> Nun tajpu C-s por komenci seræon. MALRAPIDE, unuliterope, tajpu la + vorton "kursoro", paýzante post æiu tajpita signo por vidi, kio + okazas al la kursoro. + Nun vi estas seræinta por "kursoro", unufoje. +>> Tajpu C-s denove, por seræi la sekvan aperon de "kursoro". +>> Nun tajpu kvarfoje kaj rigardu kiamaniere la kursoro + moviøas. +>> Tajpu por fini la seræon. + +Æu vi vidis, kio okazis? Emakso, en dumtajpa seræo, penas iri al la +apero de la æeno kiun vi jam tajpis. Por iri al la sekvanta apero de +"kursoro" nur tajpu C-s denove. Se nenia ajn apero ekzistas, Emakso +pepas kaj informas vin ke la seræo æi-foje "malsukcesis". Ankaý C-g +finus la seræon. + +RIMARKU: Æe iuj sistemoj, C-s senmovigas la ekranon kaj vi vidos ne +plu da eligo de Emakso. Æi tio indikas ke operaciuma "trajto" nomata +"fluregulado" interkaptis la C-s kaj ne permesas al øi trapasi al +Emakso. Por removebligi la ekranon, tajpu C-q. Konsultu la sekcion +"Spontaneous Entry to Incremental Search" en la Emaksa manlibro por +konsilo pri tio, kiel trakti æi tiun "trajton". + +Se, meze de dumtajpa seræo, vi tajpos , vi rimarkos ke la +lasta signo en la seræata æeno forviþiøas, kaj la seræo retroiras al +la ¼usa loko de la seræo. Ekzemple, supozu ke vi tajpis "k", por +seræi la unuan aperon de "k". Nun se vi tajpus "u, la kursoro moviøus +al la unua apero de "ku". Nun tajpu . Æi tio forigos la +"u" de el la seræata æeno, kaj la kursoro moviøos reen al la unua +apero de "k". + +Se, meze de dumtajpa seræo, vi tajpos STIRan aý META-signon +(esceptante kelkajn signojn, specialajn en la seræo, ekzemple C-s kaj +C-r), la seræo iøos finita. + +La C-s komencas seræon kiu celas iun ajn aperon de la seræata æeno +POST la nuna kursorloko. Se vi deziras seræi ion supre en la teksto, +tajpu C-r anstataýe. Æio dirita pri C-s validas pri C-r, krom ke la +direkto de la seræo estas inversa. + + +* MULTAJ FENESTROJ +------------------ + +Unu el la agrablaj trajtoj de Emakso estas ke vi povas havi plurajn +fenestrojn sur la ekrano samtempe. + +>> Movu la kursoron al tiu æi linio kaj tajpu "C-u 0 C-l" (kun Stira + lo, ne Stira unu). + +>> Nun tajpu "C-x 2", kio fendos la ekranon en du fenestrojn. + Ambaý fenestroj vidigas æi tiun lernilon. La kursoro restas en la + supra fenestro. + +>> Tajpu C-M-v por rulumi la malsupran fenestron + (Se vi ne havas veran Meta-klavon, tajpu Esc C-v.) + +>> Tajpu "C-x o" ("o" de la angla vorto "other", "alia") por movi la + kursoron en la malsupran fenestron. +>> Uzu C-v kaj M-v en la malsupra fenestro por rulumi øin. + Daýrigu legi æi tiun instrukcion en la supra fenestro. + +>> Tajpu C-x o denove por movi la kursoron reen en la supran fenestron. + La kursoro en la supra fenestro estas øuste kie øi estis antaýe. + +Vi povas plu uzi C-x o por moviøi inter fenestroj. Æiu fenestro havas +sian propran kursorlokon, sed nur unu fenestro ja montras la kursoron. +Æiuj el la ordinaraj redaktaj ordonoj apartenas al la fenestro kiu +enhavas la kursoron. Ni nomas tiun la "elektita fenestro". + +La ordono C-M-v estas utilega kiam vi redaktas tekston en unu fenestro +kaj uzas la alian fenestron nur por konsulti. Tiel vi æiam povas havi +la kursoron en la fenestro kie vi redaktas, kaj laýbezone rulumi tra +la alia fenestro per C-M-v. + +C-M-v estas ekzemplo de STIR-META-signo. Se vi havas veran +META-klavon, vi povas tajpi C-M-v premante ambaý STIR kaj META, kaj +tajpante v. Ne gravas, æu STIR aý META "venas unue," æar ili ambaý +funkcias kiel modifiloj de la signo kiun vi tajpas. + +Se vi ne havas veran META-klavon, kaj uzas anstataýe, la ordo +gravas: vi devas tajpi kaj poste C-v, æar "C-ESC v" ne funkcias. +Tiel estas æar estas ne modifilo, sed memstara signo. + +>> Tajpu "C-x 1" (en la supra fenestro) por forigi la malsupran + fenestron. + +(Se vi tajpus C-x 1 en la malsupra fenestro, tio forigus la supran. +Pensu pri tiu ordono kiel "restigu nur unu fenestron -- la fenestron +en kiu mi jam estas.") + +Ne estas nepra¼o havi la saman bufron en ambaý fenestroj. Se vi uzas +"C-x C-f" por trovi dosieron en unu fenestro, la alia fenestro ne +þanøiøas. Vi povas trovi dosieron sendepende en æiu fenestro. + +Jen alia maniero uzi du fenestrojn por montri du malsamajn aferojn: + +>> Tajpu "C-x 4 C-f", kaj sekve la nomon de unu el viaj dosieroj. + Finu per . Rimarku ke la elektita dosiero aperas en la + malsupra fenestro. Ankaý la kursoro iras tien. + +>> Tajpu "C-x o" por retroiri en la supran fenestron, kaj "C-x 1" por + forigi la malsupran fenestron. + + +* REKURSIAJ REDAKTAJ NIVELOJ +---------------------------- + +Iam vi eniros ion nomatan "rekursia redakta nivelo". Tio estas +indikata per ortaj krampoj en la reøimlinio, æirkaý la rondaj krampoj +de la nomo de la æefreøimo. Ekzemple, vi eble vidos [(Fundamental)] +anstataý (Fundamental). + +Por eliri el la rekursia redakta nivelo, tajpu Esc Esc Esc. Tio estas +universala "elira" ordono. Vi ankaý povas uzi øin por forigi kromajn +fenestrojn, aý por eliri el la bufreto. + +>> Tajpu "M-x" por eniri la bufreton; kaj poste tajpu "Esc Esc Esc" + por eliri. + +Oni ne povas uzi C-g por eliri el rekursia redakta nivelo. Tiel estas +æar C-g estas uzata por aboli ordonojn kaj argumentojn INTERNE DE la +rekursia redakta nivelo. + + +* KIEL AKIRI PLUAN HELPON +------------------------- + +En æi tiu lernilo ni penis provizi nur tiom da informo, kiom necesas +por ebligi al vi ekuzi Emakson. Emakso disponigas tiom da ebloj, ke +oni ne povas prezenti æiom da ili æi tie. Tamen, vi eble dezirus +lerni plu pri Emakso, æar øi havas multajn aliajn utilajn trajtojn. +Emakso provizas ordonojn por legi dokumenta¼on pri Emaksaj ordonoj. +Æiuj el tiuj æi "helpaj" ordonoj komenciøas per la signo C-h, kiu +estas nomata "la Help-signo". + +Por uzi la Helpajn ordonojn, tajpu la signon C-h, kaj sekve signon +indikantan kian helpon vi deziras. Se vi estas vere perdita, tajpu +C-h ? kaj Emakso montros al vi la specojn de helpo kiujn øi povas +provizi. Se vi tajpis C-h kaj decidas ke vi ne deziras helpon, simple +tajpu C-g por aboli øin. + +(En iuj lokoj oni þanøas la signifon de la signo C-h. Oni prefere ne +faru tion por æiuj uzantoj, do vi rajtas plendi al la sistemestro. +Dume, se C-h ne montras mesaøon pri helpo æe la fundo de la ekrano, +provu tajpi la F1-klavon aý "M-x help " anstataýe.) + +La plej baza HELPA rimedo estas "C-h c". Tajpu C-h, la signon c, kaj +ordonan signon aý sekvencon; sekve de tio Emakso montras koncizegan +priskribon pri la ordono. + +>> Tajpu C-h c C-p. + En la e¶a areo devas aperi proksimume tia mesaøo: + + C-p runs the command previous-line + +Æi tio diras al vi la "nomon de la funkcio". Funkciaj nomoj servas +æefe por agordi kaj etendi Emakson. Sed æar funkciaj nomoj estas +elektitaj por indiki kion la ordono faras, ili ankaý servas kiel +koncizega priskribo -- sufiæa por rememorigi vin pri ordonoj kiujn vi +jam lernis. + +Ankaý la plursignaj ordonoj, ekzemple "C-x C-s" kaj "v", estas +egale eblaj post C-h c. + +Por akiri pli da informo pri ordono, uzu C-h k anstataý C-h c. + +>> Tajpu C-h k C-p. + +Æi tio montras la plenan priskribon de la funkcio, aldone al øia nomo, +en Emaksa fenestro. Fininte legi la eliga¼on, tajpu "C-x 1" por +forigi la helptekston. Ne nepras fari tion tuj. Vi povas redakti +konsultante la helptekston, kaj poste tajpi C-x 1. + +Jen iom da aliaj utilaj elektoj por C-h: + + C-h f Priskribu funkcion. Vi tajpas la nomon de la funkcio. + +>> Provu tajpi C-h f previous-line. + Æi tio vidigas æiom da la informo kiun Emakso havas pri la funkcio + efektiviganta la C-p ordonon. + + C-h a Rilate al Ordono ("à propos"). Tajpu þlosilvorton kaj + Emakso listigos æiujn el la ordonoj kies nomoj enhavas + tiun þlosilvorton. Vi povas alvoki tiajn ordonoj per + META-x. Por iom da ordonoj, Rilate al Ordono ankaý + listigos unu- aý dusignan sekvencon alvokantan la + saman ordonon. + +>> Tajpu C-h a file. + +Sekve de æi tio vi vidos en aparta fenestro liston da æiuj M-x ordonoj +enhavantaj "file" en sia nomo. Vi vidos signajn ordonojn listigitaj +apud la respondaj ordonnomoj, ekzemple "C-x C-f" kaj "C-x C-w" apud +"find-file" kaj "write-file". + +>> Tajpu C-M-v por rulumi la helpfenestron. Faru æi tion kelkfoje. +>> Tajpu C-x 1 por forigi la helpfenestron. + + C-h i Vidigu dialogan manlibron (t.n. "Info"). Æi tiu + ordono transportos vin en specialan bufron, nomatan + "*info*", kie vi povos legi instrukciojn pri la + paka¼oj instalitaj en via sistemo. Ekzemple, tajpu + "m emacs " por legi la manlibron pri Emakso. + Se vi neniam antaýe uzis Info, tajpu "?", kaj Emakso + gvidos vin tra la prezento de la ebloj de la informa + reøimo. Finleginte æi tiun lernilon, uzu la + Info-manlibron kiel vian æefan dokumenta¼on. + + +* KROMAJ FUNKCIOJ +----------------- + +Pluajn informojn pri Emakso vi povas trovi foliumante ties manlibron, +æu paperan (libroforman) aý dialogan (en Info -- uzu la Help-menuon aý +tajpu "F10 h r"). Du funkcioj kiujn vi probable aparte aprezos estas +la kompletigo, þparanta tajpadon, kaj dired, faciliganta manipuladojn +dosierajn. + +Kompletigo estas rimedo por eviti redundan tajpadon. Ekzemple, se vi +volas transiri en la bufron *Messages*, sufiæas tajpi "C-x b *M" +kaj Emakso kompletigos la bufronomon per tiom da signoj, kiom øi povos +determini surbaze de tio, kion vi jam tajpis. La kompletigo estas +priskribita en la Info-manlibro pri Emakso en la nodo "Completion". + +Dired ebligas al vi listigi dosierujon (kaj eventuale, ties +subdosierujojn), kaj moviøi en tiu listo vizitante, alinomante, +forigante kaj alimaniere manipulante la dosierojn. Dired estas +priskribita en la Info-manlibro pri Emakso en la nodo "Dired". + +La manlibro priskribas ankaý multajn aliajn aparta¼ojn de Emakso. + + +* FINO +------ + +Memoru, por definitive eliri el Emakso uzu C-x C-c. Por eliri en la +þelon provizore, tiel ke vi povu reveni en Emakson poste, uzu C-z. + +Æi tiu lernilo estas farita kun la intenco esti komprenebla por æiu +nova uzanto, do se vi trovis ion ajn malklara, ne restu kulpigante vin +mem -- plendu! La adreso por la Esperanta Traduka Teamo estas +. + + +* KOPIADO +--------- + +Æi tiu lernilo devenas el longa vico da Emaksaj instruaj dosieroj ekde +la dosiero verkita de Stuart Cracraft por la originala Emakso. + +Æi tiu versio de la lernilo, same kiel GNU Emakso, estas metita sub +kopirajton, kaj venas kun permeso por disdoni kopiojn se certaj +kondiæoj estas observataj: + + Copyright (C) 1985, 1999, 2001, 2002, 2005, + 2007 Free Software Foundation, Inc. + + Æi tiu dosiero estas parto de "GNU Emacs". + + "GNU Emacs" estas libera programverko; vi povas øin pludistribui + kaj/aý modifi je la kondiæoj de la GNUa Øenerala Publika Permesilo, + eldonita de "Free Software Foundation", laý la versio 3 de tiu + Permesilo aý, se vi preferas, ajna posta versio. + + Ni distribuas æi tiun programon esperante ke øi estos utila, tamen + SEN IA AJN GARANTIO, i.a. sen la implica garantio pri + SURMERKATIGEBLO aý TAÝGECO POR IU KONKRETA CELO. Pliajn detalojn + vidu en la GNUa Øenerala Publika Permesilo. + + Ekzemplero de la GNUa Øenerala Publika Permesilo devas esti + liverita al vi kun æi tiu programo; se vi øin ne ricevis, turnu vin + al: Free Software Foundation, Inc., 51 Franklin Street, Fifth + Floor, Boston, MA 02110-1301, USA. + +Bonvole legu la dosieron COPYING kaj sekve donu kopiojn de GNU Emakso +al viaj amikoj. Helpu ekstermi programaran obstrukcismon +("proprietigon") per uzado, verkado kaj kunhavigo de libera +programaro! + +Æi tiun lernilon esperantigis D. Dale Gulledge; la tradukon reviziis +kaj kompletigis Sergio B. Pokrovskij. + +--- end of TUTORIAL.eo --- + +;;; Local Variables: +;;; coding: latin-3 +;;; End: + +;; arch-tag: ee436ebb-58b6-4102-9402-1e92c33966e9 diff --git a/etc/tutorials/TUTORIAL.es b/etc/tutorials/TUTORIAL.es new file mode 100644 index 00000000000..7fdd96811e5 --- /dev/null +++ b/etc/tutorials/TUTORIAL.es @@ -0,0 +1,1216 @@ +Tutorial de Emacs. Vea al final las condiciones de copiado. + +Generalmente los comandos de Emacs involucran la tecla CONTROL +(algunas veces llamada CTRL O CTL) o la tecla meta (algunas veces +llamada EDIT o ALT). En lugar de escribir completamente esto en cada +ocasión, usaremos las siguientes abreviaturas. + + C- significa mantener presionada la tecla CONTROL mientras + teclea el carácter . Por lo tanto C-f será: Mantenga + presionada la tecla CONTROL y teclee f. + M- significa mantener presionada la tecla META o EDIT o ALT + mientras teclea . Si no hay teclas META, EDIT o ALT, en + su lugar presione y libere la tecla ESC y luego teclee + . Escribimos para referirnos a la tecla ESC. + +Nota importante: para terminar la sesión de Emacs teclee C-x C-c (dos +caracteres). Los caracteres ">>" en el margen izquierdo indican +instrucciones para que usted trate de usar un comando. Por ejemplo: +<> +[Mitad de página en blanco para propósitos didácticos. El texto continúa abajo] +>> Ahora teclee C-v (ver la próxima pantalla) para desplazarse a la + siguiente pantalla (hágalo manteniendo la tecla control + oprimida mientras teclea v). Desde ahora debería hacer esto + cada vez que termine de leer la pantalla. + +Note que se superponen dos líneas cuando se mueve de pantalla en +pantalla; esto provee una continuidad para que pueda seguir leyendo el +texto. + +Lo primero que necesita saber es como moverse de un lugar a otro en el +texto. Ya sabe como avanzar una pantalla, con C-v. Para retroceder +una pantalla teclee M-v (mantenga oprimida la tecla META y teclee v, o +teclee v si no tiene las teclas META, EDIT o ALT). + +>> Intente teclear M-v y luego C-v, varias veces. + + +* RESUMEN +--------- + +Los siguientes comandos son útiles para ver pantallas completas: + + C-v Avanzar una pantalla completa + M-v Retroceder una pantalla completa + C-l Limpiar la pantalla y mostrar todo el texto de nuevo, + moviendo el texto alrededor del cursor al centro de la + pantalla (Esto es CONTROL-L, no CONTROL-1.) + +>> Encuentre el cursor, y fíjese qué texto hay cerca de éste. + Luego teclee C-l. + Encuentre el cursor otra vez y note que el mismo texto está cerca + del cursor ahora. + +Si su terminal las soporta, también puede usar las teclas AvPág o +RegPág para moverse por pantallas completas, pero puede editar más +eficientemente si usa C-v y M-v. + +* MOVIMIENTO BÁSICO DE CURSOR +----------------------------- + +Es útil moverse de una pantalla completa a otra pero, ¿cómo moverse a +un lugar específico dentro del texto en la pantalla? + +Puede hacerlo de diversas formas. Puede usar las teclas de flechas, +pero es mas eficiente mantener las manos en la posición estándar y +usar los comandos C-p, C-b, C-f, y C-n. Estos caracteres son +equivalentes a las cuatro teclas de flechas, de esta manera: + + Línea anterior, C-P + : + : + Atrás, C-b.... Posición actual del cursor .... Adelante, C-f + : + : + Línea siguiente, C-n + +>> Mueva el cursor a la línea en la mitad del diagrama + usando C-n o C-p. Luego teclee C-l para ver el + diagrama completo centrado en la pantalla. + +Le resultará fácil recordar estas letras por las palabras que +representan: P de Previous (anterior), N de Next (siguiente), B de +Backward (atrás) y F de Forward (adelante). Estará usando estos +comandos de posicionamiento básico del cursor todo el tiempo. + +>> Teclee algunos C-n para traer el cursor a esta línea. + +>> Muévase a la línea con C-f y hacia arriba con algunos C-p. Observe + lo que hace C-p cuando el cursor está en medio de la línea. + +Cada línea de texto termina con un carácter de nueva línea (Newline), +que sirve para separarla de la línea siguiente. La última línea de su +archivo debe de tener un carácter de nueva línea al final (pero Emacs +no requiere que ésta lo tenga). + +>> Intente usar C-b al comienzo de una línea. Debería moverse al + final de la línea previa. Esto sucede porque retrocede a través + del carácter de nueva línea. + +C-f puede moverse a través de una nueva línea igual que C-b. + +>> Teclee algunos C-b más para que sienta por donde se encuentra el + cursor. + Luego teclee C-f para regresar al final de la línea. + Luego teclee otro C-f más para moverse a la línea siguiente. + +Cuando pase el tope o el final de la pantalla, se mostrará el texto +más allá del borde de la pantalla. Esto recibe el nombre de +"desplazamiento". Esto le permite a Emacs mover el cursor al lugar +especificado en el texto sin moverlo fuera de la pantalla. + +>> Intente mover el cursor fuera del borde de la pantalla con C-n, y + observe lo que sucede. + +Si moverse por caracteres es muy lento, puede moverse por palabras. +M-f (META-f) mueve adelante una palabra y M-b mueva atrás una palabra. + +>> Teclee algunos M-f y M-b + +Cuando está en la mitad de una palabra, M-f mueve al final de la +palabra. Cuando está en un espacio entre dos palabras, M-f mueve al +final de la siguiente palabra. M-b trabaja de la misma forma en la +dirección opuesta. + +>> Teclee algunos M-f y M-b, intercaladas con C-f y C-b de tal forma + que observe la acción de M-f y M-b desde varios sitios dentro y + entre palabras. + +Note el paralelo entre C-f y C-b de un lado y M-f y M-b del otro. Muy +frecuentemente los caracteres Meta se usan para operaciones +relacionadas, con las unidades definidas por el lenguaje (palabras, +oraciones y párrafos), mientras los caracteres Control operan sobre +unidades básicas que son independientes de lo que está editando +(caracteres, líneas, etc). + +Este paralelo se aplica entre líneas y oraciones: C-a y C-e para +moverse al comienzo o al final de la línea; y M-a y M-e para mover al +comienzo o al final de una oración. + +>> Intente algunos C-a, y después unos cuantos C-e. +>> Intente algunos M-a, y después unos cuantos M-e. + +Vea cómo la repetición de C-a no hace nada, pero la repetición de M-a +sigue moviendo una oración más. Aunque no son muy análogas, cada una +parece natural. + +La ubicación del cursor en el texto se llama también "punto". En +otras palabras, el cursor muestra sobre la pantalla donde está +situado el punto dentro del texto. + +Aquí hay un resumen de operaciones simples de movimiento del cursor, +incluyendo los comandos de movimiento por palabra y oración: + + C-f Avanzar un carácter + C-d Retroceder un carácter + + M-f Avanzar una palabra + M-b Retroceder una palabra + + C-n Avanzar a la línea siguiente + C-p Retroceder a la línea anterior + + C-a Retroceder al comienzo de la línea + C-e Avanzar al final de la línea + + M-a Retroceder al comienzo de la oración + M-e Avanzar al final de la oración + +>> Ahora pruebe todos estos comandos algunas veces para practicar. + Estos comandos son los más frecuentemente usados. + +Otros dos comandos importantes de movimiento del cursor son M-< (META +Menor que), el cual se mueve al comienzo del texto entero, y M-> (META +Mayor que), el cual se mueve al final del texto entero. + +En la mayoría de las terminales, el "<" está sobre la coma, por lo +tanto tiene que usar la tecla shift para teclearlo. En estas +terminales tendrá que usar la tecla shift también al teclear M-<; sin +la tecla shift, usted estaría escribiendo M-coma. + +>> Ahora pruebe M-<, para moverse al comienzo del tutorial. + Después use C-v repetidamente para regresar aquí. + +>> Ahora pruebe M->, para moverse al final del tutorial. + Después use M-v repetidamente para regresar aquí. + +También puede mover el cursor con las teclas de flecha si su terminal +dispone de ellas. Recomendamos aprender C-b, C-f, C-n y C-p por tres +razones. Primero, funcionan en todo tipo de terminales. Segundo, una +vez que gane práctica usando Emacs, encontrará que teclear estos +caracteres Control es más rápido que usar teclas de flecha (porque no +tendrá que mover las manos de la posición para mecanografiar). +Tercero, una vez tenga el hábito de usar estos comandos Control, +también puede aprender a usar otros comandos avanzados de movimiento +del cursor fácilmente. + +La mayoría de comandos de Emacs aceptan un argumento numérico; para la +mayoría de comandos esto sirve como un factor de repetición. La +manera de pasarle un factor de repetición a un comando es tecleando +C-u y luego los dígitos antes de introducir los comandos. Si tiene +una tecla META (o EDIT o ALT), hay una manera alternativa para +ingresar un argumento numérico: teclear los dígitos mientras presiona +la tecla META. Recomendamos aprender el método C-u porque este +funciona en cualquier terminal. El argumento numérico es también +llamado un "argumento prefijo", porque usted teclea el argumento antes +del comando al que se aplica. + +Por ejemplo, C-u 8 C-f mueve hacia adelante ocho caracteres. + +>> Pruebe usar C-n o C-p con un argumento numérico, para mover el + cursor a una línea cercana a ésta con un solo comando. + +La mayoría de comandos usan el argumento numérico como un factor de +repetición, pero algunos comandos le dan otros usos. Varios comandos +(pero ninguno de los que ha aprendido hasta ahora) lo usan como una +bandera: la presencia de un argumento prefijo, sin tener en cuenta su +valor, hace que el comando actúe de forma diferente. + +C-v y M-v son otro tipo de excepción. Cuando se les da un argumento, +desplazan la pantalla arriba o abajo esa cantidad de líneas, en vez de +una pantalla completa. Por ejemplo, C-u 8 C-v desplaza la pantalla 8 +líneas. + +>> Pruebe tecleando C-u 8 C-v ahora. + +Esto debió haber desplazado la pantalla hacia arriba 8 líneas. Si +quisiera desplazarla hacia abajo de nuevo, puede dar un argumento a +M-v. + +Si está usando un sistema de ventanas, como X11 o MS-Windows, debe +haber una larga área rectangular llamada una barra de desplazamiento +en el lado izquierdo de la ventana de Emacs. Puede desplazar el texto +al oprimir el botón del ratón en la barra de desplazamiento. + +>> Pruebe presionando el botón del medio en la parte superior del área + resaltada en la barra de desplazamiento. Éste debe desplazar el + texto a una posición determinada según cuan alto o bajo oprima el + botón. + +>> Intente mover el ratón arriba y abajo, mientras mantiene el botón + del medio presionado. Verá que el texto se desplaza arriba y abajo + a medida que mueve el ratón. + + + +* CUANDO EMACS ESTÁ BLOQUEADO +----------------------------- + +Si Emacs dejara de responder a sus comandos, puede detenerlo con +seguridad al teclear C-g. Puede usar C-g para detener un comando que +esté tomando mucho tiempo para ejecutarse. + +También puede usar C-g para descartar un argumento numérico o el +comienzo de un comando que no quiere finalizar. + +>> Escriba C-u 100 para hacer un argumento numérico de 100, entonces + pruebe C-g. + Ahora pruebe C-f. Esto deberá mover sólo un carácter, ya que + canceló el argumento con C-g. + +Si ha tecleado por error, puede desecharlo con un C-g. + + +* COMANDOS DESACTIVADOS +----------------------- + +Algunos comandos de Emacs están "desactivados" de manera que los +usuarios principiantes no puedan usarlos accidentalmente. + +Si teclea uno de los comandos desactivados, Emacs muestra un mensaje +informando acerca de qué comando era, y preguntándole si quiere +continuar y ejecutar el comando. + +Si realmente quiere intentar el comando, teclee Espacio como repuesta +a la pregunta. Normalmente, si no quiere ejecutar el comando +desactivado, conteste la pregunta con "n". + +>> Escriba C-x C-l (que es un comando desactivado), a continuación + escriba n para responder la pregunta. + + +* VENTANAS +---------- + +Emacs puede tener varias ventanas, cada una mostrando su propio texto. +Explicaremos después como usar múltiples ventanas. Ahora mismo +queremos explicar cómo deshacerse de ventanas adicionales y volver a +la edición básica en una ventana. Es sencillo: + + C-x 1 Una ventana (p.ej., elimina todas las otras ventanas). + +Esto es CONTROL-x seguido por el dígito 1. C-x 1 expande la ventana que +contiene el cursor, para ocupar toda la pantalla. Esto borra todas las +demás ventanas. + +>> Mueva el cursor a esta línea y escriba C-u 0 C-l. +>> Escriba Control-h k Control-f. + Vea como esta ventana se encoge, mientras una nueva aparece y + muestra documentación sobre el comando Control-f. + +>> Escriba C-x 1 y vea que la ventana de listado de documentación + desaparece. + +Este comando es diferente a los otros que ha aprendido en que éste +consiste de dos caracteres. Comienza con el carácter CONTROL-x. Hay +toda una serie de comandos que comienzan con CONTROL-x; muchos de +ellos tienen que ver con ventanas, archivos, buffers y cosas +relacionadas. Estos comandos son de una longitud de dos, tres o +cuatro caracteres. + + +* INSERTAR Y BORRAR +------------------- + +Si quiere insertar un texto, basta con que lo teclee. Emacs +interpreta los caracteres que usted puede ver, tales como A, 7, *, +etc. como texto y los inserta inmediatamente. Teclee (la +tecla Enter) para insertar un carácter de nueva línea. + +Puede borrar el último carácter que escribió oprimiendo . + es una tecla en el teclado--la misma que normalmente usa +fuera de emacs para borrar el último carácter que escribió. +Normalmente es una tecla una o dos filas arriba de la tecla , +y que esta usualmente rotulada como "Backspace", "Del" o simplemente +con una flecha en dirección izquierda que no es parte de las teclas de +flecha. + +Si la tecla larga esta rotulada "Backspace", entonces esa es la que +debe de usar para . Puede haber otra tecla llamada "Del" en +otra parte, pero esa no es . + +Generalmente, borra el carácter inmediatamente anterior a la +posición actual del cursor. + +>> Haga esto ahora: teclee unos pocos caracteres, después bórrelos + tecleando varias veces. No se preocupe si este archivo + cambia, no alterará el tutorial principal. Ésta es su copia + personal de él. + +Cuando una línea de texto se hace muy grande para una sola línea en la +pantalla, la línea de texto "continúa" en una segunda línea en la +pantalla. Un backslash ("\") (o, si está usando un sistema de +ventanas, una pequeña flecha curva) en el margen derecho indica que la +línea "continúa". + +>> Inserte texto hasta que llegue al margen derecho, y siga + insertando. Verá aparecer una línea de continuación. + +>> Use para borrar el texto hasta que la línea de nuevo + quepa en la pantalla. La línea de continuación se pierde. + +Puede borrar un carácter de nueva línea como cualquier otro carácter. +Al borrar el carácter de nueva línea entre dos líneas las junta en una +sola línea. Si el resultado de la combinación de líneas es demasiado +largo para caber en el ancho de la pantalla, se mostrará con una línea +de continuación. + +>> Mueva el cursor al comienzo de una línea y teclee . Esto + juntará esa línea con la línea anterior. + +>> Teclee para reinsertar la nueva línea que borró. + +Recuerde que a la mayoría de los comandos de Emacs se les puede dar un +factor de repetición; esto incluye los caracteres de texto. Repetir +un carácter de texto lo inserta varias veces. + +>> Inténtelo ahora: teclee C-u 8 * para insertar ********. + +Ya ha aprendido la manera más básica de teclear algo en Emacs y +corregir errores. Puede borrar por palabras o por líneas. He aquí un +resumen de las operaciones de borrado: + + borra el carácter justo antes que el cursor + C-d borra el siguiente carácter después del cursor + + M- Elimina la palabra inmediatamente antes del + cursor + M-d Elimina la siguiente palabra después del cursor + + C-k Elimina desde el cursor hasta el fin de la línea + M-k Elimina hasta el final de la oración actual + +Note que y C-d, comparados con M- y M-d, extienden +el paralelismo iniciado por C-f y M-f (bien, no es realmente +una tecla de control, pero no nos preocuparemos de eso ahora). C-k y +M-k, en ciertas forma, son como C-e y M-e, en que las líneas son +oraciones opuestas. + +También puede eliminar cualquier parte del buffer con un método +uniforme. Muévase a un extremo de esa parte, y teclee C-@ o C-SPC +(cualquiera de los dos). (SPC es la barra espaciadora.) Muévase al +otro extremo de esa parte, y teclee C-w. Eso elimina todo el texto +entre las dos posiciones. + +>> Mueva el cursor a la letra T del inicio del párrafo anterior. +>> Teclee C-SPC. Emacs debe mostrar el mensaje "Mark set" en la parte + de abajo de la pantalla. +>> Mueva el cursor a la x en "extremo", en la segunda línea del + párrafo. +>> Teclee C-w. Esto eliminará el texto que comienza desde la T, y + termina justo antes de la x. + +La diferencia entre "eliminar" y "borrar" es que el texto "eliminado" +puede ser reinsertado, mientras que las cosas "borradas" no pueden ser +reinsertadas. La reinserción de texto eliminado se llama "yanking" o +"pegar". Generalmente, los comandos que pueden quitar mucho texto lo +eliminan, mientras que los comandos que quitan solo un carácter, o +solo lineas en blanco y espacios, borran (para que no pueda pegar ese +texto). + +>> Mueva el cursor al comienzo de una línea que no esté vacía. + Luego teclee C-k para eliminar el texto de esa línea. +>> Teclee C-k por segunda vez. Verá que elimina la nueva línea que + sigue a esa línea. + +Note que al teclear C-k una sola vez elimina el contenido de la línea, +y un segundo C-k elimina la línea misma, y hace que todas las otras +líneas se muevan hacia arriba. C-k trata un argumento numérico +especialmente: Elimina ese número de líneas y TAMBIÉN sus +contenidos. Esto no es una simple repetición. C-u 2 C-k elimina dos +líneas y sus nuevas líneas, tecleando C-k dos veces no hace esto. + +Traer texto eliminado de regreso es llamado "yanking" o "pegar". +(Piense en ello como pegar de nuevo, o traer de vuelta, algún texto +que le fue quitado.) Puede pegar el texto eliminado en, ya sea el +lugar en que fue eliminado, o en otra parte del buffer, o hasta en un +archivo diferente. Puede pegar el texto varias veces, lo que hace +varias copias de él. + +El comando para pegar es C-y. Reinserta el último texto eliminado, en +la posición actual del cursor. + +>> Inténtelo; teclee C-y para pegar de nuevo el texto. + +Si hace varios C-k seguidos, todo el texto eliminado se guarda junto, +de manera que un C-y pegará todas las líneas al mismo tiempo. + +>> Haga esto ahora, teclee C-k varias veces. + +Ahora para recuperar ese texto eliminado: + +>> Teclee C-y. Luego baje el cursor unas pocas líneas y teclee C-y de + nuevo. De esta forma puede copiar un texto. + +¿Qué hacer si tiene algún texto que quiere pegar, y entonces elimina +otra cosa? C-y pegaría la eliminación más reciente. Pero el texto +previo no está perdido. Puede regresar a éste usando el comando M-y. +Después de haber tecleado C-y para conseguir la eliminación más +reciente, tecleando M-y reemplaza el texto pegado con la eliminación +previa. Tecleando M-y una y otra vez traerá las eliminaciones +anteriores. Cuando haya encontrado el texto que buscaba, no tiene que +hacer nada para conservarlo. Sólo siga con su edición, dejando el +texto pegado en donde está. + +Si teclea M-y suficientes veces, regresa al punto inicial (la +eliminación más reciente). + +>> Elimine una línea, muévase un poco, elimine otra línea. + Luego teclee C-y para recuperar la segunda línea eliminada. + Luego teclee M-y y será reemplazado por la primera línea eliminada. + Teclee más veces M-y y vea lo que obtiene. Siga haciéndolo hasta + que la segunda línea eliminada regrese, y entonces unas pocas + más. Si quiere, puede tratar de darle a M-y argumentos positivos y + negativos. + + +* DESHACER +---------- + +Si hace un cambio al texto, y luego decide que fue un error, +puede deshacer el cambio con el comando deshacer, C-x u. + +Normalmente, C-x u deshace los cambios hechos por un comando; si repite +varias veces seguidas C-x u, cada repetición deshará un comando +adicional. + +Pero hay dos excepciones: los comandos que no cambian el texto no +cuentan (esto incluye los comandos de movimiento del cursor y el +comando de desplazamiento), y los caracteres de autoinserción se +manejan usualmente en grupos de hasta 20. (Esto es para reducir el +numero de C-x u que tenga que teclear para deshacer una inserción en +el texto.) + +>> Elimine esta línea con C-k, después teclee C-x u y debería + reaparecer. + +C-_ es un comando alternativo para deshacer; funciona igual que C-x u, +pero es más fácil de teclear varias veces seguidas. La desventaja de +C-_ es que en algunos teclados no es obvio cómo se teclea. Por esto +existe también C-x u. En algunas terminales, puede teclear C-_ al +teclear / mientras oprime CONTROL. + +Un argumento numérico para C-_ o C-x u actúa como un factor de +repetición. + +Uuede deshacer un texto borrado justo como puede deshacer el texto +eliminado. La distinción entre eliminar algo y borrar algo afecta en +si puede pegarlo con C-y; no hay diferencia alguna para deshacer. + + +* ARCHIVOS +---------- + +Para que pueda hacer permanente el texto que edite, lo debe colocar en +un archivo. De otra manera, éste se perderá cuando cierre Emacs. +Para poder poner su texto en un archivo, debe "encontrar" el archivo +antes de ingresar el texto. (Esto se llama también "visitar" el +archivo.) + +Encontrar un archivo significa que puede ver su contenido dentro de +Emacs. En cierta forma, es como si estuviera editando el archivo +mismo. Sin embargo los cambios que haga mediante Emacs no serán +permanentes hasta que "guarde" el archivo. Esto es para evitar dejar +un archivo a medio cambiar en el sistema cuando no quiera. Incluso +cuando guarde, Emacs dejará el archivo original bajo un nombre +cambiado en caso de que luego decida que sus cambios fueron un error. + +Si mira cerca del final de la pantalla podrá ver una línea que +comienza y termina con guiones, y comienza con "--:-- TUTORIAL.es" o +algo así. Esta parte de la pantalla normalmente muestra el nombre del +archivo que está visitando. En este momento está visitando un archivo +llamado "TUTORIAL.es" que es su borrador personal del tutorial de +Emacs. Cuando encuentre un archivo con Emacs, el nombre de ese +archivo aparecerá en ese mismo punto. + +Una cosa especial acerca del comando para encontrar un archivo, es que +tendrá que decir que nombre de archivo desea. Decimos que el comando +"lee un argumento desde la terminal" (en este caso, el argumento es el +nombre del archivo). Después de teclear el comando: + + C-x C-f Encontrar un archivo + +Emacs le pide que teclee el nombre del archivo. El nombre de archivo +que teclee aparece en la línea final de la pantalla. A la línea final +de la pantalla se la denomina minibuffer cuando se utiliza para este +tipo de entradas. Puede usar comandos de edición ordinarios de Emacs +para editar el nombre del archivo. + +Mientras está ingresando el nombre del archivo (o cualquier otra +entrada al minibuffer) puede cancelar el comando con C-g. + +>> Teclee C-x C-f, luego teclee C-g. Esto cancela el minibuffer, y + también cancela el comando C-x C-f que estaba usando el minibuffer. + Así que no encontrará archivo alguno. + +Cuando haya finalizado de ingresar el nombre del archivo, teclee + para terminarlo. Entonces el comando C-x C-f trabaja, y +encuentra el archivo que escogió. El minibuffer desaparece cuando el +comando C-x C-f termina. + +Poco tiempo después aparecerá el contenido del archivo en la pantalla, +y puede editarlo. Cuando quiera que sus cambios sean permanentes, +teclee el comando + + C-x C-s Guardar el archivo + +Esto copia el texto dentro de Emacs al archivo. La primera vez que +haga esto, Emacs renombrará el archivo original con un nuevo nombre +para que este no se pierda. El nuevo nombre se hace agregando "~" al +final del nombre del archivo original. + +Cuando guardar haya terminado, Emacs mostrará el nombre del archivo +escrito. Deberá guardar frecuentemente, para que no pierda mucho +trabajo si el sistema falla. + +>> Teclee C-x C-s, guardando la copia del tutorial. + Esto debería mostrar "Wrote ...TUTORIAL.es" al final de la + pantalla. + +NOTA: En algunos sistemas, teclear C-x C-s dejará inmóvil la pantalla +y no podrá ver más respuesta de Emacs. Esto indica que una +"característica" del sistema operativo llamada "control de flujo" está +interceptando el C-s y no permitiéndole llegar hasta Emacs. Para +descongelar la pantalla, teclee C-q. Luego consulte la sección +"Entrada Espontánea para Búsqueda Incremental" en el manual de Emacs +para consejos de cómo tratar con esta "característica". + +Puede encontrar un archivo existente, para verlo o editarlo. También +puede hacerlo con un archivo que no exista. Ésta es la forma de crear +un archivo en Emacs: encuentre el archivo, que comenzará vacío, luego +comience a insertar el texto para ese archivo. Cuando invoque +"guardar" el archivo, Emacs creará realmente el archivo con el texto +que ha insertado. De ahí en adelante, puede considerarse estar +editando un archivo existente. + + +* BUFFERS +--------- + +Si visita un segundo archivo con C-x C-f, el primer archivo permanece +dentro de Emacs. Puede volver a el encontrándolo de nuevo con C-x +C-f. De esta forma puede mantener un gran número de archivos dentro +de Emacs. + +>> Cree un archivo llamado "foo" tecleando C-x C-f foo . + Luego inserte algún texto, edítelo, y guarde "foo" tecleando C-x + C-s. + Finalmente teclee C-x C-f TUTORIAL.es + para regresar al tutorial. + +Emacs almacena cada texto del archivo dentro de un objeto llamado +"buffer". Al encontrar un archivo se crea un nuevo buffer dentro de +Emacs. Para mirar la lista de los buffers que existen actualmente en +su sesión de Emacs, teclee: + + C-x C-b Lista de Buffers + +>> Pruebe C-x C-b ahora. + +Vea como cada buffer tiene un nombre, y además puede tener un nombre +de archivo para el archivo que contiene. CUALQUIER texto que vea en +una ventana de Emacs es siempre parte de algún Buffer. + +>> Teclee C-x 1 para deshacerse de la lista de buffers. + +Cuando tenga varios buffers, solo uno de ellos es "actual" en algún +momento. Ese buffer es el que actualmente edita. Si quiere editar +otro buffer, necesita "cambiar" a él. Si quiere cambiar a un buffer +que corresponde a un archivo, puede hacerlo visitando el archivo de +nuevo con C-x C-f. Pero existe una manera más rápida: use el comando +C-x b. En ese comando, necesita teclear el nombre de buffer. + +>> Teclee C-x b foo para volver al buffer "foo" que contiene + el texto del archivo "foo". Después teclee C-x b TUTORIAL.es + para regresar a este tutorial. + +La mayoría del tiempo el nombre del buffer es el mismo que el nombre +del archivo (sin la parte del directorio del archivo). Sin embargo, +esto no es así siempre. La lista de buffers que hace con C-x C-b +siempre muestra el nombre de todos los buffers. + +CUALQUIER texto que vea en una ventana de Emacs siempre es parte de un +buffer. Algunos buffers no corresponden a un archivo. Por ejemplo, +el buffer llamado "*Buffer List*" no tiene ningún archivo. Es el +buffer que contiene la lista de buffers que ha creado con C-x C-b. El +buffer llamado "*Messages*" tampoco tiene un archivo correspondiente; +contiene los mensajes que han aparecido en la línea de abajo durante +su sesión de Emacs. + +>> Teclee C-x b *Messages* para ver el buffer de mensajes. + Luego teclee C-b TUTORIAL para regresar a este tutorial. + +Si hace cambios al texto de un archivo, y luego encuentra otro +archivo, esto no guarda el primer archivo. Sus cambios permanecerán +dentro de Emacs en ese buffer del archivo. La creación o edición del +segundo buffer de archivo no afecta al primero. Esto es muy útil, +pero también significa que necesita una forma conveniente para guardar +el archivo del primer buffer. Sería una molestia tener que volver a +este con C-x C-f para guardarlo con C-x C-s. Así tenemos + + C-x s Guardar algunos buffers + +C-x s le pregunta sobre cada buffer que contenga cambios que no haya +guardada. Le pregunta, por cada buffer, si quiere guardarlo o no. + +>> Inserte una línea de texto, luego teclee C-x s. + Debería preguntarle si desea guardar el buffer llamado TUTORIAL.es. + Conteste si a la pregunta tecleando "y". + + +* EXTENDER EL CONJUNTO DE COMANDOS +---------------------------------- + +Hay muchísimos más comandos de Emacs que los que podrían asignarse a +todos los caracteres control y meta. Emacs puede darle la vuelta a +esto usando el comando X (eXtendido). Este viene de dos formas: + + C-x Carácter eXtendido. Seguido por un carácter. + M-x Comando eXtendido por nombre. Seguido por un nombre + largo. + +Estos comandos son generalmente útiles pero menos usados que los +comandos que ha aprendido hasta ahora. Ya ha visto dos: los comandos +de archivo C-x C-f para Encontrar y C-x C-s para Guardar. Otro +ejemplo es el comando para terminar la sesión de Emacs: se trata del +comando C-x C-c. (No se preocupe por perder los cambios que haya +hecho; C-x C-c ofrece guardar cada archivo alterado antes de finalizar +Emacs.) + +C-z es el comando para salir de Emacs *temporalmente*: para que pueda +regresar a la misma sesión de Emacs después. + +En sistemas que lo permiten C-z "suspende" Emacs; esto es, se regresa +al intérprete de comandos pero no se destruye Emacs. En los +intérpretes de comandos más comunes, puede reanudar Emacs con el +comando `fg' o con `%emacs'. + +En sistemas que no implementen el suspendido, C-z crea un +subintérprete que corre bajo Emacs para darle la opción de correr +otros programas y regresar a Emacs después; esto en realidad no "sale" +de Emacs. En este caso, el comando `exit' del intérprete es la vía +usual para regresar a Emacs desde éste. + +El momento para usar C-x C-c es cuando está listo para salir del +sistema. Es además el paso correcto para salir de un Emacs llamado +bajo programas de manejo de correo y diversas otras utilidades, puesto +que ellos no saben cómo lidiar con la suspensión de Emacs. En +circunstancias normales, si no va a salir, es mejor suspender +Emacs con C-z en lugar de salir de él. + +Existen varios comandos C-x. Aquí hay una lista de los que ha +aprendido: + + C-x C-f Encontrar archivo. + C-x C-s Guardar archivo. + C-x C-b Lista de buffers. + C-x C-c Salir de Emacs. + C-x 1 Borrar todo menos una ventana. + C-x u Deshacer. + +Los comandos eXtendidos por nombre son comandos que se utilizan aún +con menos frecuencia, o únicamente en ciertos modos. Un ejemplo es el +comando replace-string, el cual globalmente substituye una cadena de +caracteres por otra. Cuando teclea M-x, Emacs le pregunta al +final de la pantalla con M-x y debe escribir el nombre del +comando; en este caso "replace-string". Solo teclee "repl s" y +Emacs completará el nombre. Finalice el nombre del comando con +. + +El comando replace-string requiere dos argumentos: la cadena de +caracteres a reemplazar, y la cadena de caracteres para reemplazarla. +Debe terminar cada argumento con . + +>> Mueva el cursor hacia la línea en blanco dos líneas abajo de esta. + A continuación escriba + M-x repl scambiadoalterado. + + Note cómo esta línea ha cambiado: ha substituido la palabra + c-a-m-b-i-a-d-o por "alterado" en cada ocurrencia, después de la + posición inicial del cursor. + + +* AUTO GUARDADO +--------------- + +Si ha hecho cambios en un archivo, pero no los ha guardado, éstos +podrían perderse si su computadora falla. Para protegerlo de esto, +Emacs periódicamente escribe un archivo "auto guardado" para cada +archivo que está editando. El nombre del archivo auto guardado tiene +un # al principio y al final; por ejemplo, si su archivo se llama +"hola.c", su archivo auto guardado es "#hola.c#". Cuando guarda por +la vía normal, Emacs borra su archivo de auto guardado. + +Si la computadora falla, puede recuperar su edición de auto +guardado encontrando el archivo normal (el archivo que estuvo +editando, no el archivo de auto guardar) y entonces tecleando M-x +recover file. Cuando le pregunte por la confirmación, teclee +yes para ir y recuperar la información del auto guardado. + + +* ÁREA DE ECO +------------- + +Si Emacs ve que usted está tecleando comandos de multicaracteres +lentamente, se los muestra al final de la pantalla en un área llamada +"área de eco". El área de eco contiene la línea final de la pantalla. + + +* LÍNEA DE MODO +--------------- + +La línea inmediatamente encima del área de eco recibe el nombre de +"línea de modo" o "mode line". La línea de modo dice algo así: + +--:** TUTORIAL.es (Fundamental)--l765--65%--------- + +Esta línea da información útil acerca del estado de Emacs y del texto +que está editando. + +Ya sabe qué significa el nombre del archivo: es el archivo que usted +ha encontrado. -NN%-- indica su posición actual en el texto; esto +significa que NN por ciento del texto está encima de la parte superior +de la pantalla. Si el principio del archivo está en la pantalla, este +dirá --Top-- en vez de --00%--. Si el final del texto está en la +pantalla, dirá --Bot--. Si está mirando un texto tan pequeño que cabe +en la pantalla, el modo de línea dirá --All--. + +La L y los dígitos indican la posición de otra forma: ellos dan el +número de línea actual del punto. + +Los asteriscos cerca del frente significan que usted ha hecho cambios +al texto. Inmediatamente después que visite o guarde un archivo, esa +parte de la línea de modo no muestra asteriscos, solo guiones. + +La parte de la línea de modo dentro de los paréntesis es para +indicarle en qué modo de edición está. El modo por omisión es +Fundamental, el cual está usando ahora. Este es un ejemplo de un +"modo mayor". + +Emacs tiene diferentes modos mayores. Algunos están hechos para +editar diferentes lenguajes y/o clases de texto, tales como modo de +Lisp, modo de Texto, etc. En cualquier momento uno y solo un modo +mayor está activo, y su nombre siempre se puede encontrar en la línea +de modo, justo en donde "Fundamental" está ahora. + +Cada modo mayor hace que algunos comandos actúen diferente. Por +ejemplo, hay comandos para crear comentarios en un programa, y como +cada lenguaje de programación tiene una idea diferente de cómo debe +verse un comentario, cada modo mayor tiene que insertar comentarios de +forma distinta. Cada modo mayor es el nombre de un comando extendido, +que es como puede cambiar a ese modo. Por ejemplo, M-x +fundamental-mode es un comando para cambiar al modo fundamental. + +Si va a editar un texto de algún lenguaje humano, como este archivo, +debería usar el modo de texto. +>> Teclee M-x text mode. + +No se preocupe, ninguno de los comandos de Emacs que ha aprendido +cambia de manera significativa. Pero puede observar que M-f y M-b +tratan los apóstrofes como parte de las palabras. Previamente, en +modo Fundamental, M-f y M-b trataban los apóstrofes como separadores +de palabras. + +Los modos mayores normalmente hacen cambios sutiles como el anterior: +la mayoría de comandos hacen "el mismo trabajo" en cada modo mayor, +pero funcionan un poco diferente. + +Para ver documentación en el modo mayor actual, teclee C-h m. + +>> Use C-u C-v una o más veces para traer esta línea cerca de la + parte superior de la pantalla. + +>> Teclee C-h m, para ver como el modo de Texto difiere del modo + Fundamental. + +>> Teclee C-x 1 para eliminar la documentación de la pantalla. + +Los modos mayores son llamados así porque también hay modos menores. +Los modos menores no son alternativas para los modos mayores, solo +modificaciones menores de éstos. Cada modo menor puede ser activado o +desactivado por sí mismo, independiente de todos los otros modos +menores, e independiente de su modo mayor. Por tanto, puede no usar +modos menores, o solamente uno, o cualquier combinación de varios +modos menores. + +Un modo menor que es muy útil, especialmente para editar textos en +español, es el modo Auto Fill. Cuando este modo está activado, Emacs +rompe la línea entre palabras automáticamente siempre que inserte +texto y la línea sea demasiado ancha. + +Puede activar el modo Auto Fill al hacer M-x auto fill mode. +Cuando el modo esté activado, puede desactivarlo nuevamente usando M-x +auto fill mode. Si el modo está desactivado, este comando lo +activa, y si el modo está activado, este comando lo desactiva. +Decimos que el comando "cambia el modo". + +>> teclee M-x auto fill mode ahora. Luego inserte una línea + de "asdf " repetidas veces hasta que la vea dividida en dos líneas. + Debe intercalar espacios porque Auto Fill sólo rompe líneas en los + espacios. + +El margen esta normalmente puesto en 70 caracteres, pero puede +cambiarlo con el comando C-x f. Debe indicar el margen deseado como +un argumento numérico. + +>> Teclee C-x f con un argumento de 20. (C-u 2 0 C-x f). Luego + teclee algún texto y vea como Emacs lo parte en líneas de 20 + caracteres. A continuación ponga de nuevo el margen a 70 usando + otra vez C-x f. + +Si hace cambios en el medio de un párrafo, el modo Auto Fill no lo +rellenará por usted. +Para rellenar el párrafo, teclee M-q (META-q) con el cursor dentro de +ese párrafo. + +>> Mueva el cursor al párrafo anterior y teclee M-q. + + +* BUSCAR +-------- + +Emacs puede hacer búsquedas de cadenas (grupos de caracteres o +palabras contiguos) hacia adelante a través del texto o hacia atrás en +el mismo. La búsqueda de una cadena es un comando de movimiento de +cursor; mueve el cursor al próximo lugar donde esa cadena aparece. + +El comando de búsqueda de Emacs es diferente a los comandos de +búsqueda de los demás editores, en que es "incremental". Esto +significa que la búsqueda ocurre mientras teclea la cadena para +buscarla. + +El comando para iniciar una búsqueda es C-s para búsqueda hacia +adelante, y C-r para la búsqueda hacia atrás. ¡PERO ESPERE! No los +intente aún. + +Cuando teclee C-s verá que la cadena "I-search" aparece como una +petición en el área de eco. Esto le indica que Emacs está en lo que +se conoce como búsqueda incremental, esperando que teclee lo que +quiere buscar. termina una búsqueda. + +>> Ahora teclee C-s para comenzar la búsqueda. LENTAMENTE, una letra + a la vez, teclee la palabra 'cursor', haciendo pausa después de + cada carácter para notar lo que pasa con el cursor. + Ahora ha buscado "cursor", una vez. +>> Teclee C-s de nuevo, para buscar la siguiente ocurrencia de + "cursor". +>> Ahora teclee cuatro veces y vea como se mueve el cursor. +>> Teclee para terminar la búsqueda. + +¿Vió lo que ocurrió? Emacs, en una búsqueda incremental, trata de ir +a la ocurrencia de la cadena que ha tecleado hasta el momento. Para +ir a la próxima ocurrencia de 'cursor' solo teclee C-s de nuevo. Si +tal ocurrencia no existe, Emacs pita y le dice que la búsqueda actual +está fallando ("failing"). C-g también termina la búsqueda. + +NOTA: En algunos sistemas, teclear C-s dejará inmóvil la pantalla y no +podrá ver más respuesta de Emacs. Esto indica que una +"característica" del sistema operativo llamada "control de flujo" está +interceptando el C-s y no permitiéndole llegar hasta Emacs. Para +descongelar la pantalla, teclee C-q. Luego consulte la sección +"Entrada Espontánea para Búsqueda Incremental" en el manual de Emacs +para consejos de cómo tratar con esta "característica". + +Si se encuentra en medio de una búsqueda incremental y teclea +, notará que el último carácter de la cadena buscada se borra +y la búsqueda vuelve al sitio anterior de la búsqueda. Por ejemplo, +suponga que ha tecleado "c", para buscar la primera ocurrencia de "c". +Ahora, si teclea "u", el cursor se moverá a la primera ocurrencia de +"cu". Ahora teclee . Esto borra la "u" de la cadena +buscada, y el cursor vuelve a la primera ocurrencia de "c". + +Si está en medio de una búsqueda y teclea un carácter control o meta +(con algunas pocas excepciones: los caracteres que son especiales en +una búsqueda, tales como C-s y C-r), la búsqueda termina. + +El C-s inicia una exploración que busca alguna ocurrencia de la cadena +buscada DESPUÉS de la posición actual del cursor. Si quiere buscar +algo anterior en el texto, teclee en cambio C-r. Todo lo que hemos +dicho sobre C-s también se aplica a C-r, excepto que la dirección de +la búsqueda se invierte. + + +* MÚLTIPLES VENTANAS +-------------------- + +Una de las características agradables de Emacs es que se puede mostrar +más de una ventana en la pantalla al mismo tiempo. + +>> Mueva el cursor a esta línea y teclee C-u 0 C-l (eso es CONTROL-L, + no CONTROL-1). + +>> Ahora teclee C-x 2 que divide la pantalla en dos ventanas. Ambas + ventanas muestran este tutorial. El cursor permanece en la ventana + superior. + +>> Teclee C-M-v para desplazar la ventana inferior. + (Si no tiene una tecla META real, teclee ESC C-v.) + +>> Teclee C-x o ("o" para "otro") para mover el cursor a la ventana + inferior. +>> Use C-v y M-v en la ventana inferior para desplazarla. + Siga leyendo estas direcciones en la ventana superior. + +>> Teclee C-x o de nuevo para mover el cursor de vuelta a la ventana + superior. + El cursor en la ventana superior está justo donde estaba antes. + +Puede continuar usando C-x o para cambiar entre las ventanas. Cada +ventana tiene su propia posición del cursor, pero únicamente una +ventana actual muestra el cursor. Todos los comandos de edición +comunes se aplican a la ventana en que está el cursor. Llamaremos +esto la "ventana seleccionada". + +El comando C-M-v es muy útil cuando está editando un texto en una +ventana y usando la otra ventana como referencia. Puede mantener el +cursor siempre en la ventana donde está editando, y avanzar a la otra +ventana secuencialmente con C-M-v. + +C-M-v es un ejemplo de un carácter CONTROL-META. Si tiene una tecla +META real, puede teclear C-M-v pulsando a la vez CONTROL y META +mientras teclea v. No importa qué tecla "vaya primero", CONTROL o +META, porque las dos teclas actúan modificando los caracteres que +teclea. + +Si no tiene una tecla META real, y en vez de eso usa ESC, el orden sí +importa: debe teclear ESC seguido de Control-v, porque Control-ESC v +no funcionará. Esto es porque ESC es un carácter que tiene valor por +sí mismo, no es una tecla modificadora. + +>> Teclee C-x 1 (en la ventana de arriba) para deshacerse de la + ventana de abajo. + +(Si hubiera tecleado C-x 1 en la ventana inferior, esto eliminaría la +superior. Piense en este comando como "mantener sólo una +ventana--aquella en la cual estoy.") + +No tiene por qué mostrarse el mismo buffer en ambas ventanas. Si usa +C-x C-f para encontrar un archivo en una ventana, la otra ventana no +cambia. Puede encontrar un archivo en cada ventana +independientemente. + +Aquí hay otra forma para usar dos ventanas para mostrar dos cosas +diferentes: + +>> Teclee C-x 4 C-f seguido del nombre de uno de sus archivos. + Finalice con . Vea que el archivo especificado aparece en + la ventana inferior. El cursor vá allá también. + +>> Teclee C-x o para regresar a la ventana superior, y C-x 1 para + borrar la ventana inferior. + + +* NIVELES RECURSIVOS DE EDICIÓN +-------------------------------- + +Algunas veces entrará a lo que es llamado un "nivel recursivo de +edición". Esto se indica en la línea de modo mediante corchetes en la +línea de modo, rodeando los paréntesis del nombre del modo mayor. Por +ejemplo, probablemente vea [(Fundamental)] en vez de (Fundamental). + +Para salir de los niveles recursivos de edición, teclee ESC ESC ESC. +Éste es un comando de "salida" para todo propósito. También lo puede +usar para eliminar ventanas extras, y salir del minibuffer. + +>> Teclee M-x para entrar a un minibuffer; luego teclee ESC ESC ESC + para salir. + +No se puede usar C-g para salir de los "niveles recursivos de +edición". Esto es porque C-g es usado para cancelar comandos y +argumentos DENTRO del nivel recursivo de edición. + + +* CONSEGUIR MAS AYUDA +--------------------- + +En este tutorial hemos tratado de ofrecer suficiente información para +que empiece a usar Emacs. Hay tanto disponible en Emacs que sería +imposible explicar todo aquí. Sin embargo, quizá desee aprender más +sobre Emacs, ya que tiene muchas otras características útiles. Emacs +provee comandos para leer documentación acerca de los comandos de +Emacs. Todos estos comandos de "ayuda" comienzan con el carácter +Control-h, que es llamado "el carácter de Ayuda (Help)". + +Para usar las funciones de ayuda, teclee el carácter C-h, y luego un +carácter decidiendo qué tipo de ayuda quiere. Si está REALMENTE +perdido teclee C-h ? y Emacs le dirá qué tipo de ayuda puede +ofrecerle. Si ha tecleado C-h y decide que no quiere ninguna ayuda, +teclee C-g para cancelarlo. + +(En algunas instalaciones cambian el significado del carácter C-h. +Realmente no deberían hacer esto como una política para todos los +usuarios, así que tiene argumentos para quejarse al administrador del +sistema. Mientras tanto, si C-h no muestra un mensaje de ayuda en el +final de la pantalla, intente teclear la tecla F1 o, en su lugar, M-x +help ). + +La función de AYUDA más básica es C-h c. Teclee C-h, el carácter c y +un carácter de comando o secuencia de comando; Emacs le mostrará +una descripción muy breve del comando. + +>> Teclee C-h c C-p. + El mensaje debe ser algo como + + C-p runs the command previous-line + +Esto le dice el "nombre de la función". Los nombres de función se +usan principalmente para adecuar y extender Emacs. Pero ya que los +nombres de las funciones se eligen para indicar lo que el comando +hace, también pueden servir como una breve documentación: suficiente +para recordarle los comandos que ha aprendido. + +Los comandos de múltiples caracteres tales como C-x C-s y (sí no tiene +las teclas META o EDIT o ALT) v también están permitidos después +de C-h c. + +Para conseguir más información sobre un comando use C-h k en vez de +C-h c. + +>> Teclee C-h k C-p. + +Esto muestra la documentación de la función, al igual que el nombre, +en una ventana de Emacs. Cuando haya terminado de leer el resultado, +teclee C-x 1 para deshacerse del texto de ayuda. No tiene que hacer +esto ahora. Puede hacer algunas ediciones mientras se refiere +al texto de ayuda, y entonces teclear C-x 1. + +Aquí hay algunas otras opciones útiles de C-h: + + C-h f Describe una función. Usted teclea el nombre de la + función. + +>> Intente teclear C-h f previous-line. + Esto muestra toda la información que Emacs tiene sobre la función + que implementa el comando C-p + +Un comando similar, C-h v, muestra la documentación de variables cuyos +valores pueda poner para adecuar el comportamiento de Emacs. Necesita +teclear el nombre de la variable cuando Emacs pregunte por ella. + + C-h a Comando Apropos. Teclee una palabra y Emacs hará una + lista de todos los comandos que contengan esa palabra. + Todos estos comandos pueden ser invocados con META-x. + Para algunos comandos, el Comando Apropos también + listará una secuencia de uno o dos caracteres la cual + ejecutará el mismo comando. + +>> Teclee C-h a file. + +Esto muestra en otra ventana una lista de todos los comandos M-x con +la palabra "file" en sus nombres. Verá comandos de caracteres como +C-x C-f listados además de los nombres de los comandos +correspondientes tales como find-file. + +>> Teclee C-M-v para desplazar la ventana de ayuda. Haga esto unas + cuantas veces. + +>> Teclee C-x 1 para borrar la ventana de ayuda. + + C-h i Leer los Manuales En-Línea (alias Info). Este comando + lo pone en un buffer especial llamado `*info*' donde + puede leer manuales en línea de los paquetes + instalados en su sistema. Teclee m Emacs + para leer el manual de Emacs. Sí nunca ha usado Info + antes, teclee ? y Emacs lo llevará en una visita + guiada de los servicios del modo de Info. Una vez que + haya terminado este tutorial, debería considerar el + manual Info de Emacs como su documentación primaria. + + +* MÁS CARACTERÍSTICAS +--------------------- + +Puede aprender más de Emacs leyendo su manual, ya sea como libro o en +línea en el Info (use el menú Ayuda--"Help"--o teclee F10 h r). Dos +características que pueden gustarle son la completación, que ahorra +teclear, y dired, que simplifica el manejo de archivos. + +La completación es una manera de ahorrar teclear innecesariamente. +Por ejemplo, si quiere cambiarse al buffer "*Messages*", puede teclear +C-x b *M y emacs encontrará el resto del nombre del buffer tan +lejos como pueda determinar de lo que ya haya tecleado. La +completación es descrita en el Info del manual de Emacs en el nodo +llamado "Completation". + +Dired le permite listar los archivos en un directorio (y opcionalmente +sus subdirectorios), moverse alrededor de esa lista, visitar, +renombrar, borrar y aparte de eso operar en los archivos. Dired esta +descrito en el Info en el manual de Emacs en el nodo llamado "Dired". + +El manual también describe otras características de Emacs. + + +* CONCLUSIÓN +------------ + +Recuerde, para salir permanentemente de Emacs use C-x C-c. Para salir +temporalmente a un intérprete de comandos, de forma que puede volver a +Emacs después, use C-z. + +Este tutorial intenta ser comprensible para todos los usuarios nuevos, +así que si encuentra algo que no esté claro, no se siente y se culpe a +sí mismo: ¡Quéjese! + + +* COPIA +------- + +Este tutorial desciende de una larga línea de tutoriales de Emacs +comenzando con el escrito por Stuart Cracraft para el Emacs original. + +La versión en español fue originalmente traducida por estudiantes del +Gimnasio Fidel Cano (un colegio en Santafé de Bogotá, Colombia): + + Carlos Alberto López Troncoso + Andrés Felipe Mancipe Galvis + Lina Fernanda Pinto García + Liliana Carolina Quitián Cedeño + Leonardo Ramírez Vargas + Juan David Vargas Botero + Juan Pablo Yela Gallón + Jorge Enrique Cárdenas Carrillo + +La versión en español ha sido revisada y corregida por: + + Pablo Reyes + Igor Támara + Melissa Giraldo de Támara + Vladimir Támara + Rafael Sepúlveda + Juanma Barranquero + +La versión en español ha sido actualizada por: + + Rafael Sepúlveda + +Por favor, en caso de duda, sólo es válido el original en inglés de la +siguiente nota de derechos de reproducción (que puede encontrar en el +archivo TUTORIAL). + +Copyright (C) 1985, 1996, 1998, 2001, 2002, 2003, 2004, + 2005, 2006, 2007 Free Software Foundation, Inc. + + Se permite a cualquiera hacer o distribuir copias literales de este + documento como se recibe, en cualquier medio, siempre que la nota + de derechos de reproducción y la nota de permiso se preserven, y + que el distribuidor permita que el que la recibe hacer distribución + posterior como lo permite esta nota. + + Se permite distribuir versiones modificadas de este documento, o + porciones de este, bajo las condiciones anteriores, siempre que + ellas tengan nota visible especificando quién fue el último en + alterarlas. + +Las condiciones para copiar Emacs mismo son más complejas, pero con el +mismo espíritu. Por favor lea el archivo COPYING y luego distribuya +copias de GNU Emacs a sus amigos. ¡Ayude a erradicar el +obstruccionismo del software ("propietariedad") usando, escribiendo, y +compartiendo software libre! + +--- end of TUTORIAL.es --- + +;;; Local Variables: +;;; coding: latin-1 +;;; End: + +;;; arch-tag: 66aae86e-6f86-4a3e-b82a-44a783f774fd diff --git a/etc/tutorials/TUTORIAL.fr b/etc/tutorials/TUTORIAL.fr new file mode 100644 index 00000000000..88dc98a088c --- /dev/null +++ b/etc/tutorials/TUTORIAL.fr @@ -0,0 +1,1203 @@ +Didacticiel d'Emacs. Voir la fin de ce document pour les conditions. + +Les commandes Emacs utilisent généralement la touche CONTROLE (souvent +désignée par CTRL ou CTL) ou la touche META (souvent désignée par EDIT +ou ALT). Pour ces touches, nous utiliserons les abréviations suivantes : + + C- signifie qu'il faut maintenir la touche CONTROLE appuyée tout + en tapant le caractère . Ainsi, C-f signifie : presser + sur la touche CONTROLE tout en pressant la touche f. + M- signifie qu'il faut maintenir la touche META ou EDIT ou ALT + appuyée tout en tapant le caractère . Si aucune de ces + touches n'existe, pressez puis relâchez la touche ESC et + tapez . Nous écrirons pour désigner la touche ESC. + +Tapez C-x C-c (deux caractères) pour terminer une session Emacs. +Dans ce didacticiel, les caractères ">>" en marge gauche indiquent les +directions à suivre pour essayer une commande. Ainsi : +<> +[Centre de page delibérément vide. Le texte continue ci-dessous.] +>> Tapez C-v (Voir l'écran suivant) pour passer à l'écran suivant + (faites-le, pressez la touche CTRL tout en pressant la touche v). + À partir de maintenant, vous devrez le faire à chaque fois que + vous avez fini de lire l'écran. + +Vous remarquerez qu'il y a un recouvrement de deux lignes lorsque l'on +passe d'un écran à un autre : cela permet une certaine continuité dans +la lecture du texte. + +La première chose que vous devez savoir est comment vous déplacer à +travers le texte. Vous savez déjà comment avancer d'un écran avec +C-v. Pour revenir un écran en arrière, tapez M-v (pressez la touche +META tout en appuyant sur v ou faites v si vous n'avez pas de +touche META, EDIT ou ALT). + +>> Faites M-v, puis C-v plusieurs fois. + +Si votre terminal en dispose, vous pouvez également utiliser les +touches PgUp et PgDn pour monter ou descendre d'un écran, bien que les +combinaisons C-v et M-v soient plus efficaces. + +* RÉSUMÉ +-------- + +Les commandes suivantes servent à manipuler des écrans : + + C-v Avance d'un écran + M-v Recule d'un écran + C-l Efface l'écran et réaffiche tout le texte autour du + curseur, qui est placé au milieu de l'écran + (il s'agit de CTRL-L, pas de CTRL-1). + + +>> Notez le texte situé à côté du curseur, puis faites C-l. + Recherchez l'emplacement du curseur et vous remarquerez que + c'est le même texte qui est à côté de lui. + + +* GESTION DU CURSEUR +-------------------- + +Passer d'un écran à l'autre est pratique, mais comment se déplacer à +un endroit précis du texte dans un écran ? + +Il existe plusieurs façons de faire. Vous pouvez utiliser les touches +du curseur, mais il est plus efficace de garder vos mains dans la même +position et d'utiliser les commandes C-p, C-b, C-f, et C-n. Ces +combinaisons sont équivalentes aux quatre touches du curseur : + + Ligne précédente, C-p + : + : + En arrière, C-b .... Position courante .... Vers l'avant, C-f + : + : + Ligne suivante, C-n + +>> Déplacez le curseur sur la ligne située au milieu de ce schéma en + utilisant C-n ou C-p. Puis, faites C-l pour placer le schéma au + centre de l'écran. + +Si vous connaissez un peu l'anglais, vous aurez sûrement constaté +qu'il était facile de se rappeler que P signifiait Previous +(précédent), N Next (suivant), B Backward (en arrière) et F Forward +(vers l'avant). + +>> Faites quelques C-n pour amener le curseur sur cette ligne. + +>> Déplacez-vous le long de la ligne avec des C-f, puis au-dessus avec + des C-p. Notez ce que fait C-p lorsque le curseur est au milieu de + la ligne. + + +Chaque ligne de texte se termine par un caractère Newline, qui sert à +la séparer de la ligne suivante. La dernière ligne de votre fichier +devrait se terminer par un Newline (mais Emacs n'exige pas qu'il y en +ait un). + +>> Essayez de faire C-b au début d'une ligne. Cela devrait déplacer le + curseur à la fin de la ligne précédente car il passe au-dessus du + caractère Newline. + +C-f peut passer au-dessus d'un Newline, tout comme C-b. + +>> Faites encore quelques C-b afin de bien sentir où est le curseur. + Puis, faites des C-f pour revenir à la fin de la ligne. + Enfin, faites quelques C-f supplémentaires pour passer à la ligne + suivante. + +Lorsque vous dépassez le haut ou le bas de l'écran, le texte au-delà +de ces limites est décalé pour passer dans l'écran : c'est ce qu'on +appelle le « scrolling ». Cela permet à Emacs de placer le curseur à +l'emplacement spécifié dans le texte sans devoir le placer en dehors +de l'écran. + +>> Essayez de placer le curseur au-delà du bas de l'écran avec C-n et + constatez ce qui se passe. + +Si le déplacement caractère par caractère est trop lent, vous pouvez +vous déplacer mot par mot. M-f (Meta-f) avance d'un mot et M-b recule +d'un mot. + +>> Faites quelques M-f et M-b. + +Lorsque vous êtes au milieu d'un mot, M-f place le curseur à la fin du +mot. Lorsque vous êtes entre deux mots, M-f place le curseur à la fin +du mot suivant. M-b fonctionne de la même façon dans la direction +opposée. + +>> Faites plusieurs fois M-f et M-b, espacés de C-f et C-b afin + d'observer l'action de M-f et M-b aux différents emplacements à + l'intérieur et à l'extérieur des mots. + +Notez le parallèle entre C-f et C-b d'un côté et M-f et M-b de +l'autre. Très souvent, les caractères Meta servent à des opérations +sur des unités définies par le langage (mots, phrases, paragraphe) +alors que les caractères de contrôle opèrent sur les unités de base +indépendantes de ce que l'on édite (caractères, lignes, etc.). + +Ce parallèle s'applique entre les lignes et les phrases : C-a et C-e +déplacent le curseur au début ou à la fin d'une ligne, tandis que M-a +et M-e le placent au début ou à la fin d'une phrase. + +>> Faites quelques C-a, puis quelques C-e. + Faites quelques M-a, puis quelques M-e. + +Vous constaterez que la répétition d'un C-a ne fait rien, mais que +celle d'un M-a vous déplace d'une phrase de plus. Bien que ces deux +commandes ne soient pas tout à fait analogues, chacune d'elle semble +naturelle. + +L'emplacement du curseur dans le texte est également appelé « point ». +Pour paraphraser, le curseur apparaît à l'écran à l'endroit où le +point est situé dans le texte. + +Voici un résumé des opérations de déplacements simples du curseur, +ainsi que les commandes de déplacement par mots et par phrases. + + C-f Avance d'un caractère + C-b Recule d'un caractère + + M-f Avance d'un mot + M-b Recule d'un mot + + C-n Avance d'une ligne + C-p Recule d'une ligne + + C-a Va au début de la ligne + C-e Va à la fin de la ligne + + M-a Va au début de la phrase + M-e Va à la fin de la phrase + +>> Essayez toutes ces commandes plusieurs fois afin de vous entraîner. + Ce sont celles qui sont utilisées le plus souvent. + +M-< (Meta inférieur à) et M-> (Meta supérieur à) sont deux autres +commandes importantes de déplacement du curseur. La première renvoie +au tout début du texte, la seconde à la fin de celui-ci. + +Sur certains claviers, le "<" se trouve sous la virgule, vous devez +donc utiliser la touche pour y avoir accès. Sur ces terminaux, +vous devez utiliser également la touche pour faire M-<, sinon +vous taperiez M-virgule. + +>> Faites M-< afin de vous déplacer au début du didacticiel. + Puis, faites plusieurs fois C-v pour revenir ici. + +>> Faites M-> afin de vous déplacer à la fin du didacticiel. + Puis, faites plusieurs fois M-v pour revenir ici. + +Vous pouvez également déplacer le curseur à l'aide des touches de +curseur, si votre terminal en dispose. Nous vous conseillons +d'apprendre à utiliser C-b, C-f, C-n et C-p pour trois raisons. Tout +d'abord, ces commandes fonctionnent sur tous les types de +terminaux. Ensuite, lorsque vous aurez un peu pratiqué Emacs, vous +vous rendrez compte qu'il est plus rapide de taper ces caractères de +contrôle que d'utiliser les touches de curseur (car vous n'avez pas +besoin de déplacer vos mains pour atteindre ces touches). Enfin, +lorsque vous aurez l'habitude d'utiliser ces commandes, vous +apprendrez plus facilement les autres commandes de déplacement plus +puissantes. + +La plupart des commandes Emacs acceptent un paramètre numérique qui, +la plupart du temps, indique un nombre de répétitions. Pour indiquer à +une commande le nombre de fois que l'on souhaite la répéter, on +utilise C-u suivi du nombre avant de taper la commande. Si vous avez +une touche META (ou EDIT ou ALT), il existe une autre façon d'entrer +un paramètre numérique : tapez le nombre tout en pressant la touche +META. Nous vous conseillons d'apprendre à utiliser la méthode C-u car +elle fonctionne sur tous les types de terminaux. Le paramètre +numérique est également appelé « paramètre préfixe » car on le précise +avant la commande sur laquelle il s'applique. + +C-u 8 C-f, par exemple, avance le curseur de huit caractères. + +>> Utilisez C-n ou C-p avec un paramètre numérique afin de déplacer, + en une seule commande, le curseur sur une ligne proche de celle-ci. + +La plupart des commandes utilisent le paramètre numérique pour +indiquer un nombre de répétitions, mais d'autres s'en servent +autrement. Plusieurs commandes (mais aucune de celles que nous avons +vues jusqu'à maintenant) l'utilisent comme indicateur -- la présence +d'un paramètre préfixe, quelle que soit sa valeur, force la commande à +agir différemment. + +C-v et M-v constituent un autre type d'exception. Lorsqu'on leur +donne un paramètre, elles font défiler l'écran vers le haut ou vers le +bas du nombre de lignes indiqué au lieu de passer d'un écran complet à +l'autre. C-u 8 C-v, par exemple, fait défiler l'écran de 8 lignes. + +>> Faites C-u 8 C-v. + +Cela a dû déplacer l'écran de 8 lignes vers le haut. Si vous voulez +redescendre de 8 lignes, il suffit de passer ce nombre comme paramètre +de M-v. + +Si vous utilisez un environnement graphique, comme X11 ou MS-Windows, +il devrait y avoir une zone rectangulaire appelée barre de défilement, +ou « scrollbar » sur le bord gauche de la fenêtre d'Emacs. Vous pouvez +faire défiler le texte en cliquant avec la souris dans cette barre de +défilement. + +>> Cliquez avec le bouton du milieu en haut de la zone mise en + évidence dans la barre de défilement. Cela devrait déplacer le + texte jusqu'à une position dépendant de la hauteur où vous avez + cliqué. + +>> Déplacez la souris de bas en haut tout en maintenant son bouton du + milieu pressé. Vous constaterez que le texte défile vers le haut et + vers le bas en fonction du déplacement de la souris. + + +* QUAND EMACS EST MUET +---------------------- + +Si Emacs cesse de répondre à vos commandes, vous pouvez le débloquer +en toute sécurité avec C-g. Cette commande fait stopper une commande +qui met trop de temps à s'exécuter. + +C-g peut également servir à annuler un paramètre numérique, ou le +début d'une commande que vous ne souhaitez pas terminer. + +>> Faites C-u 100 pour former un paramètre numérique de 100, puis + tapez C-g. + Faites maintenant C-f. Le déplacement ne sera que d'un caractère + car vous avez annulé le paramètre avec C-g. + +Si vous avez tapé par erreur, vous pouvez vous en débarrasser +avec un C-g. + + +* COMMANDES DÉSACTIVÉES +------------------------ + +Certaines commandes d'Emacs sont « désactivées » afin que les +utilisateurs débutants ne puissent les utiliser par accident. + +Si vous tapez l'une de ces commandes, Emacs affiche un message +indiquant quelle était la commande et vous demande si vous souhaitez +continuer et l'exécuter. + +Si vous souhaitez vraiment essayer la commande, tapez en +réponse à la question. Si vous ne voulez pas exécuter la commande +désactivée, il suffit normalement de répondre « n ». + +>> Faites C-x C-l (qui est une commande désactivée), + puis répondez n à la question. + +* FENÊTRES +---------- + +Emacs peut avoir plusieurs fenêtres, chacune affichant son propre +texte. Nous expliquerons plus tard comment utiliser plusieurs fenêtres ; +pour l'instant, nous expliquerons comment se débarrasser des +fenêtres supplémentaires pour revenir à une édition mono-fenêtre. +C'est très simple : + + C-x 1 Une seule fenêtre (i.e., supprime toutes les autres) + +Il s'agit de CTRL-x suivi du chiffre 1. C-x 1 étend la fenêtre +contenant le curseur pour qu'elle occupe tout l'écran. Cette commande +supprime toutes les autres fenêtres. + +>> Déplacez le curseur sur cette ligne et faites C-u 0 C-l. +>> Faites CONTROLE-h k CONTROLE-f. + Vous constatez que cette fenêtre est réduite alors qu'une nouvelle + apparaît pour afficher la documentation sur la commande CONTROLE-f. + +>> Faites C-x 1 et la fenêtre de documentation disparaît. + +Cette commande est différente de celles que nous avons déjà vues car +elle est formée de deux caractères. Elle commence par le caractère +CONTROLE-x, comme le font de nombreuses commandes de manipulation de +fenêtres, fichiers, tampons et autres entités associées. Ces commandes +font deux, trois ou quatre caractères. + + +* INSERTION ET SUPPRESSION +-------------------------- + +Si vous voulez insérer du texte, il vous suffit de le taper. Les +caractères que vous pouvez lire, comme A, 7, *, etc. sont considérés +comme du texte par Emacs et insérés immédiatement. Tapez (la +touche de retour chariot) pour insérer un caractère Newline. + +Vous pouvez effacer le dernier caractère que vous avez tapé en faisant +. est une touche du clavier -- la même que vous +utilisez habituellement en dehors d'Emacs, pour supprimer le dernier +caractère saisi. Il s'agit généralement de la grande touche située +quelques lignes au-dessus de la touche « Entrée ». Elle est +habituellement nommée « Delete », « Del », « Suppr » ou « Backspace ». + +Si cette grande touche s'appelle « Backspace », c'est celle-là qui +représente . Votre clavier peut également comporter une autre +touche, nommée « Delete », « Del » ou « Suppr », mais ce n'est pas +. + +Plus généralement, efface le caractère situé immédiatement +avant la position courante du curseur. + +>> Tapez quelques caractères puis effacez-les en faisant plusieurs + fois . Ne vous inquiétez pas de modifier ce fichier ; vous + ne modifierez pas le didacticiel principal mais uniquement votre + copie personnelle de celui-ci. + +Lorsqu'une ligne de texte devient trop longue pour tenir sur une seule +ligne de l'écran, elle se « continue » sur une deuxième ligne +d'écran. Une barre de fraction inverse (« \ ») ou, si vous utilisez un +environnement graphique, une petite flèche recourbée, sur la marge +droite indique une ligne qui se poursuit sur la ligne suivante. + +>> Insérez du texte jusqu'à atteindre la marge droite et continuez + d'en insérer. Vous verrez apparaître une ligne de continuation. + +>> Faites des pour effacer le texte jusqu'à ce que la ligne + tienne à nouveau sur une seule ligne d'écran. La ligne de + continuation disparaît. + +Vous pouvez effacer un caractère Newline comme n'importe quel autre +caractère. La suppression d'un Newline entre deux lignes les fusionne +en une seule ligne. Si la ligne résultante est trop longue pour tenir +dans la largeur de l'écran, elle s'affichera avec une ligne de +continuation. + +>> Placez le curseur au début d'une ligne et faites . + Cela fusionne cette ligne avec la ligne précédente. + +>> Faites pour remettre le Newline que vous avez supprimé. + +Rappelez-vous que la plupart des commandes Emacs peuvent utiliser un +nombre de répétitions ; les caractères de texte font de même. La +répétition d'un caractère de texte l'insère plusieurs fois. + +>> Faites C-u 8 * pour insérer ********. + +Vous connaissez maintenant la méthode la plus simple pour taper du +texte dans Emacs et pour corriger les erreurs. Vous pouvez également +effacer des mots ou des lignes entières. Voici un résumé des +opérations de suppression : + + Efface le caractère situé avant le curseur + C-d Efface le caractère situé après le curseur + + M- Supprime le mot situé avant le curseur + M-d Supprime le mot situé après le curseur + + C-k Supprime du curseur à la fin de la ligne + M-k Supprime jusqu'à la fin de la phrase courante + +Vous noterez que et C-d, par rapport à M- et M-d, +ont la même relation que C-f et M-f (en fait, n'est pas +vraiment un caractère de contrôle, mais ne nous soucions pas de cela) +C-k et M-k sont un peu comme C-e et M-e. + +Vous pouvez aussi supprimer n'importe quelle zone du tampon en +utilisant une méthode unique et générale. Placez-vous à une extrémité +de cette zone et tapez soit C-@, soit C-SPC (SPC désigne la barre +espace). Puis, allez à l'autre extrémité et faites C-w. Cela supprime +tout le texte compris entre ces deux positions. + +>> Placez le curseur sur le V au début du paragraphe précédent. +>> Faites C-SPC. Emacs devrait afficher un message "Mark set" + en bas de l'écran. +>> Déplacez le curseur sur le x d'« extrémité », sur la seconde ligne + du paragraphe. +>> Faites C-w. Cela supprimera le texte allant du V jusqu'au + caractère situé juste avant le x. + +La différence entre « effacer » et « supprimer » est que vous pouvez +réinsérer le texte « supprimé », alors que c'est impossible avec ce +qui a été « effacé ». La réinsertion d'un texte supprimé s'appelle le +« yanking ». Généralement, les commandes qui ôtent beaucoup de texte +le suppriment (afin que vous puissiez le récupérer), tandis que celles +qui ne font qu'ôter un seul caractère, des lignes blanches ou des +espaces, les effacent (vous ne pouvez donc pas récupérer ce texte). + +>> Placez le curseur au début d'une ligne non vide puis faites + C-k pour supprimer le texte de celle-ci. +>> Refaites C-k : vous verrez que cela supprime le Newline qui suit + cette ligne. + +Notez qu'un simple C-k supprime le contenu de la ligne et qu'un second +détruit la ligne elle-même, ce qui fait remonter toutes les lignes +suivantes. C-k traite son paramètre numérique d'une façon spéciale : +il détruit ce nombre de lignes ET leur contenu. Ce n'est pas une +simple répétition : C-u 2 C-k détruit deux lignes et leurs Newlines +alors que taper deux fois C-k n'aurait pas le même effet. + +Vous pouvez ramener le texte supprimé à la place qu'il occupait ou à +n'importe quel autre emplacement du texte. Vous pouvez récupérer +plusieurs fois ce texte afin d'en créer plusieurs copies. + +La commande de récupération est C-y. Elle réinsère le dernier texte +supprimé à la position courante du curseur. + +>> Essayez : faites C-y pour récupérer le texte. + +Si vous faites plusieurs C-k à la suite, tout le texte supprimé est +sauvegardé en même temps, de sorte qu'un seul C-y ramènera toutes les +lignes d'un seul coup. + +>> Faites plusieurs fois C-k. + +Maintenant, pour récupérer le texte détruit : + +>> Faites C-y, puis descendez le curseur de quelques lignes et refaites + C-y. Vous savez maintenant comment copier du texte. + +Que faire si vous avez du texte que vous voulez récupérer et, +qu'ensuite, vous supprimez autre chose ? C-y récupérerait la +suppression la plus récente mais le texte précédent n'est pas pour +autant perdu : vous pouvez le rappeler en utilisant la commande +M-y. Après avoir fait C-y pour récupérer la suppression la plus +récente, M-y remplacera ce texte récupéré par le texte supprimé +précédemment. En répétant les M-y, vous ramenez les suppressions de +plus en plus anciennes. Lorsque vous avez atteint le texte que vous +recherchez, vous n'avez rien besoin de faire pour le +conserver. Continuez simplement à éditer votre texte et laissez le +texte récupéré où il est. + +Si vous faites M-y suffisamment de fois, vous reviendrez à votre point +de départ (la suppression la plus récente). + +>> Supprimez une ligne, déplacez vous et supprimez une autre ligne. + Puis, faites C-y pour récupérer cette dernière. + Faites alors M-y et elle sera remplacée par la première ligne détruite. + Faites d'autres M-y et notez ce que vous obtenez, continuez jusqu'à + ce que la seconde ligne supprimée réapparaisse, et faites-en encore + quelques-uns de plus. + Si vous le souhaitez, vous pouvez essayer de passer des paramètres + positifs et négatifs à M-y. + + +* ANNULATION +------------ + +Si vous modifiez le texte, puis que vous décidez que c'était une +erreur, vous pouvez annuler cette modification avec la commande C-x u +(comme Undo, défaire). + +Normalement C-x u annule les modifications d'une seule commande ; si +vous répétez plusieurs fois C-x u dans une ligne, chaque répétition +annulera une commande supplémentaire. + +Il y a quand même deux exceptions : les commandes qui ne modifient pas +le texte ne comptent pas (cela inclut les commandes de déplacement du +curseur et les commandes de défilement du texte) et les caractères +auto-insérés sont habituellement gérés par groupes allant jusqu'à 20 +(ceci afin de réduire le nombre de C-x u que vous devriez taper pour +annuler l'insertion de texte). + +>> Supprimez cette ligne avec C-k, puis faites C-x u pour la voir + réapparaître. + +C-_ est une autre commande d'annulation ; elle fonctionne exactement +comme C-x u mais est plus facile à taper plusieurs fois dans une +ligne. Son inconvénient est qu'elle n'est pas facile à taper sur +certains claviers, c'est pourquoi C-x u existe aussi. Sur certains +terminaux, vous pouvez taper C-_ en tapant / tout en pressant la +touche CTRL. + +Un paramètre numérique passé à C-_ ou C-x u agit comme un nombre de +répétitions. + + +* FICHIERS +---------- + +Afin de rendre permanent le texte que vous éditez, vous devez le +placer dans un fichier. Sinon, il disparaîtra en même temps que votre +session Emacs. Pour placer un texte dans un fichier, vous devez +« trouver » le fichier avant d'entrer le texte (c'est ce que l'on +désigne également par « visiter » le fichier). + +Trouver un fichier signifie que vous voyez le contenu de ce fichier +dans Emacs. Par de nombreux aspects, c'est comme si vous éditiez le +fichier lui-même. Cependant, les modifications que vous faites avec +Emacs ne deviendront permanentes qu'après avoir « sauvegardé » le +fichier : cela évite d'avoir un fichier à moitié modifié sur le +système alors que vous ne le vouliez pas. Même lorsque vous +sauvegardez, Emacs garde le fichier original sous un nom modifié au +cas où vous décideriez ensuite d'annuler vos modifications. + +Si vous examinez le bas de l'écran, vous verrez une ligne qui commence +et finit par des tirets et débute par « -1:-- TUTORIAL.fr » ou quelque +chose comme ça. Cette partie de l'écran montre normalement le nom du +fichier que vous êtes en train de visiter. Pour l'instant, vous +visitez un fichier appelé « TUTORIAL.fr », qui est votre copie +personnelle du didacticiel Emacs. Lorsque vous trouvez un fichier avec +Emacs, son nom apparaît à cet endroit précis. + +Une particularité de la commande permettant de trouver un fichier est +que vous devez donner le nom du fichier voulu. On dit que la commande +« lit un paramètre à partir du terminal » (ici, le paramètre est le +nom du fichier). Après avoir fait la commande + + C-x C-f Trouve un fichier + +Emacs vous demande d'entrer le nom du fichier. Ce que vous tapez +s'inscrit dans la ligne située en bas de l'écran : cette ligne +s'appelle le mini-tampon lorsqu'elle sert à ce type de saisie. Vous +pouvez utiliser les commandes d'édition habituelles d'Emacs pour +éditer le nom du fichier. + +Pendant que vous entrez le nom du fichier (ou pendant n'importe quelle +saisie dans le mini-tampon), vous pouvez annuler la commande par C-g. + +>> Faites C-x C-f, puis C-g. Cela annule le mini-tampon et la commande + C-x C-f qui utilisait celui-ci : vous ne trouvez donc aucun fichier. + +Lorsque vous avez fini d'entrer le nom du fichier, tapez pour +terminer la saisie. La commande C-x C-f effectue son travail et trouve +le fichier choisi. Le mini-tampon disparaît lorsque C-x C-f a terminé. + +Au bout d'un court instant, le contenu du fichier apparaît à l'écran +et vous pouvez l'éditer. Lorsque vous voulez que vos modifications +deviennent permanentes, faites : + + C-x C-s Sauvegarde le fichier + +Cette commande copie dans le fichier le texte qui est dans Emacs. La +première fois, Emacs renomme le fichier original afin qu'il ne soit +pas perdu. Le nom de cette sauvegarde est construit en ajoutant « ~ » +à la fin du nom initial. + +Lorsque la sauvegarde est finie, Emacs affiche le nom du fichier +écrit. Sauvegardez à intervalles réguliers afin de perdre le moins +possible de travail au cas où votre système se planterait. + +>> Faites C-x C-s pour sauvegarder votre copie du didacticiel. + Cela devrait écrire "Wrote ...TUTORIAL.fr" en bas de l'écran. + +REMARQUE : Sur certains systèmes, C-x C-s gèlera l'écran et vous ne +verrez plus rien se produire dans Emacs. Cela indique qu'une +« fonctionnalité » du système d'exploitation, appelée « contrôle de flux », +a intercepté le C-s et ne lui permet pas de parvenir à Emacs. Pour +décoincer l'écran, faites C-q puis consultez la section « Spontaneous +Entry to Incremental Search » dans le manuel d'Emacs pour avoir des +avis sur la gestion de cette « fonctionnalité ». + +Vous pouvez trouver un fichier existant pour le visualiser ou +l'éditer. Vous pouvez également trouver un fichier qui n'existe pas +encore. C'est ainsi que l'on crée un fichier avec Emacs : on trouve le +fichier, qui démarre vide, puis on insère du texte. Lorsque l'on +demande à « sauvegarder » le fichier, Emacs crée alors vraiment le +fichier avec le texte que l'on a inséré. À partir de ce moment-là, +vous pouvez considérer que vous éditez un fichier déjà existant. + + +* TAMPONS +--------- + +Si vous trouvez un second fichier avec C-x C-f, le premier reste dans +Emacs. Vous pouvez y revenir en le retrouvant avec C-x C-f. Il est +ainsi possible d'avoir un nombre assez important de fichiers dans +Emacs. + +>> Créez un fichier nommé « truc » en faisant C-x C-f truc . + Puis, insérez du texte, éditez-le et sauvegardez « truc » en + faisant C-x C-s. + Enfin, faites C-x C-f TUTORIAL.fr pour revenir au didacticiel. + +Emacs stocke le texte de chaque fichier dans un objet appelé « tampon ». +Trouver un fichier crée un nouveau tampon dans Emacs. Pour voir la +liste des tampons existants dans votre session Emacs, faites + + C-x C-b Liste des tampons + +>> Faites C-x C-b + +Vous noterez que chaque tampon a un nom et qu'il peut également avoir +un nom de fichier pour le fichier qu'il contient. TOUT texte que vous +pouvez voir dans une fenêtre Emacs fait toujours partie d'un tampon. + +>> Faites C-x 1 pour faire disparaître la liste des tampons. + +Lorsque vous avez plusieurs tampons, seul l'un d'entre eux est le +tampon "courant" à un instant donné : c'est celui que vous éditez. Si +vous souhaitez éditer un autre tampon, vous devez "basculer" vers +lui. Pour basculer vers un tampon correspondant à un fichier, vous +pouvez le recharger avec C-x C-f mais il y a plus simple : utilisez la +commande C-x b en lui passant le nom du tampon. + +>> Faites C-x b truc pour revenir au tampon "truc", qui + contient le texte du fichier "truc". + Puis, faites C-x b TUTORIAL pour revenir à ce didacticiel. + +La plupart du temps, le nom d'un tampon est le même que celui du +fichier qu'il contient (sans le chemin), mais ce n'est pas toujours +vrai. La liste obtenue lorsque vous faites C-x C-b montre toujours les +noms de tous les tampons. + +TOUT texte que vous visualisez dans une fenêtre Emacs fait toujours +partie d'un tampon, mais certains tampons ne correspondent pas à des +fichiers : le tampon "*Buffer List*", par exemple, ne contient pas de +fichiers mais la liste obtenue par C-x C-b. Le tampon "*Messages*" ne +correspond pas non plus à un fichier ; il contient la liste des +messages apparus dans la ligne d'état pendant votre session Emacs. + +>> Faites C-x b *Messages* pour visualiser le tampon des + messages. + Puis, faites C-x b TUTORIAL pour revenir à ce didacticiel. + +Si vous modifiez le texte d'un fichier, puis que vous chargez un autre +fichier, le premier ne sera pas sauvegardé. Ses modifications restent +dans Emacs, dans le tampon qui lui est associé. La création ou +l'édition du tampon du second fichier n'a aucun effet sur le tampon du +premier. C'est très pratique, mais cela signifie aussi que vous avez +besoin d'une méthode simple pour sauvegarder le tampon du premier +fichier. Ce serait ennuyeux de devoir y revenir avec C-x C-f juste +pour le sauvegarder avec C-x C-s. On a donc : + + C-x s Sauvegarde certains tampons + +C-x s vous demande confirmation pour savoir s'il doit sauvegarder +chaque tampon contenant des modifications non encore sauvegardées. Il +vous demande, pour chacun de ces tampons, s'il doit le sauvegarder ou +non. + +>> Insérez une ligne de texte et faites C-x s. + Cela devrait vous demander si vous souhaitez sauvegarder le tampon + nommé TUTORIAL.fr. Répondez par l'affirmative en tapant « y ». + + +* EXTENSION DU JEU DE COMMANDES +------------------------------- + +Il y a bien plus de commandes Emacs qu'il ne serait possible d'en +créer avec tous les caractères de contrôle et Meta. Emacs contourne ce +problème à l'aide de la commande X (eXtension). Celle-ci se présente +sous deux déclinaisons : + + C-x eXtension caractère, suivie d'un seul caractère. + M-x eXtension d'une commande nommée, suivie d'un nom long. + +Ces commandes sont généralement des commandes utiles, mais elles sont +moins souvent utilisées que celles que vous avez déjà apprises. Vous +en avez déjà rencontré deux : les commandes de fichiers C-x C-f pour +trouver un fichier et C-x C-s pour sauvegarder. Un autre exemple est +la commande qui met fin à la session Emacs : C-x C-c (ne vous +inquiétez pour les modifications que vous avez faites, C-x C-c vous +proposera de sauvegarder tous les fichiers modifiés avant de quitter +Emacs). + +C-z est la commande permettant de quitter *temporairement* Emacs -- +afin de pouvoir revenir à la même session plus tard. + +Sur les systèmes qui le permettent, C-z « suspend » Emacs ; +c'est-à-dire qu'il revient au shell mais ne détruit pas Emacs. Avec +les shells les plus courants, vous pouvez revenir à Emacs en faisant +la commande 'fg' ou '%emacs'. + +Sur les systèmes qui n'implémentent pas ce mécanisme, C-z crée un +sous-shell qui s'exécute sous Emacs afin que vous puissiez lancer +d'autres programmes et revenir à Emacs ensuite : vous ne « sortez » +pas vraiment d'Emacs. Dans ce cas, la commande shell 'exit' est le +moyen habituel pour revenir à Emacs à partir de ce sous-shell. + +Le moment idéal pour utiliser C-x C-c est lorsque l'on se +déconnecte. C'est aussi la commande adaptée pour sortir d'un Emacs +invoqué par un programme de courrier ou tout autre utilitaire car +ceux-ci peuvent ne pas savoir comment gérer la suspension d'Emacs. Dans +des situations normales, si vous ne devez pas vous déconnecter, il est +préférable de suspendre Emacs avec C-z au lieu de le quitter. + +Il existe de nombreuses commandes C-x. Voici une liste de celles que +vous avez apprises : + + C-x C-f Trouve un fichier. + C-x C-s Sauvegarde un fichier. + C-x C-b Liste des tampons. + C-x C-c Quitte Emacs. + C-x 1 Détruit toutes les fenêtres, sauf une. + C-x u Annulation. + +Les eXtensions de commandes nommées sont des commandes utilisées +encore moins souvent, ou des commandes qui ne servent que dans +certains modes. Un exemple est la commande replace-string, qui +remplace globalement une chaîne par une autre. Lorsque vous faites +M-x, Emacs affiche M-x en bas de l'écran et vous demande de taper le +nom de la commande, « replace-string » ici. Contentez-vous de faire +«repl s » et Emacs complétera le nom ( représente la touche +de tabulation, qui se trouve habituellement au-dessus de la touche de +verrouillage des majuscules, à gauche du clavier). Terminez la +commande en pressant . + +La commande replace-string nécessite deux paramètres -- la chaîne à +remplacer et la chaîne de remplacement. Vous devez terminer chaque +paramètre par . + +>> Déplacez le curseur sur la ligne blanche deux lignes plus bas. + Puis, faites M-x repl schangéemodifiée. + + Notez comment cette ligne a été changée : vous avez remplacé le mot + c-h-a-n-g-é-e par « modifiée » à chaque fois qu'il apparaissait après + la position initiale du curseur. + + +* SAUVEGARDE AUTOMATIQUE +------------------------ + +Lorsque vous avez modifié un fichier, mais que vous ne l'avez pas +encore sauvegardé, ces modifications pourraient être perdues si votre +système se plantait. Pour vous protéger de ce problème, Emacs écrit +périodiquement un fichier de « sauvegarde automatique » pour chaque +fichier en cours d'édition. Le nom de ce fichier commence et se +termine par un # : si, par exemple, votre fichier s'appelle +« hello.c », son fichier de sauvegarde automatique s'appellera +« #hello.c# ». Lorsque vous sauvegardez le fichier de la façon +habituelle, Emacs détruit son fichier de sauvegarde automatique. + +Si l'ordinateur se plante, vous pouvez récupérer ce qui a été +sauvegardé automatiquement en ouvrant normalement le fichier (celui +que vous éditiez, pas la sauvegarde automatique), puis en faisant +M-x recover file. Lorsqu'Emacs vous demande de confirmer, +tapez yes pour continuer et récupérer ainsi les données +sauvées par la sauvegarde automatique. + + +* ZONE D'ECHO +------------- + +Si Emacs constate que vous tapez les commandes multi-caractères +lentement, il les affiche en bas de l'écran dans une zone nommée « +zone d'écho ». La zone d'écho contient la dernière ligne de l'écran. + + +* LIGNE DE MODE +--------------- + +La ligne placée immédiatement au dessus de la zone d'écho s'appelle la +« ligne de mode ». Elle affiche quelque chose comme ça : + +-1:** TUTORIAL.fr (Fundamental)--L752--67%---------------- + +Cette ligne donne des informations sur l'état d'Emacs et sur le texte +que vous êtes en train d'éditer. + +Vous savez déjà ce que signifie le nom de fichier -- c'est celui que +vous avez chargé. -NN%-- indique votre position actuelle dans le +texte ; cela signifie que NN pour cent du texte se trouve au dessus du +sommet de l'écran. Si le début du fichier est sur l'écran, il +s'affichera --Top-- et non --00%--. Si le bas du texte est sur +l'écran, il s'affichera --Bot--. Si tout le texte tient dans l'écran, +il s'affichera --All--. + +Le L et les chiffres qui le suivent indiquent une position d'une façon +différente : ils indiquent le numéro de la ligne courante du point. + +Les astérisques au début signifient que vous avez modifié le +texte. Lorsque vous venez de visiter ou sauvegarder un fichier, cette +partie de la ligne de mode n'affichera pas d'astérisques mais +simplement des tirets. + +La partie de la ligne de mode située entre parenthèses indique les +modes d'édition dans lesquels vous vous trouvez. Le mode par défaut +est « Fundamental » et c'est celui que vous êtes en train +d'utiliser. C'est un exemple de « mode majeur ». + +Emacs possède de nombreux modes majeurs différents. Certains sont +prévus pour éditer différents langages et/ou types de texte (mode +Lisp, mode Text, etc). À tout instant, il n'y a qu'un seul mode majeur +actif et son nom se trouve toujours dans la ligne de mode, à l'endroit +où « Fundamental » se trouve actuellement. + +Chaque mode majeur modifie le comportement de quelques commandes. Il +existe, par exemple, des commandes pour créer des commentaires dans un +programme et, comme chaque langage de programmation a sa propre +syntaxe pour les commentaires, chaque mode majeur doit insérer ceux-ci +de façon différente. Un mode majeur est le nom d'une commande étendue, +qui vous permet de basculer dans ce mode. M-x fundamental-mode, par +exemple, est une commande pour basculer dans le mode Fundamental. + +Si vous devez éditer du texte en langage naturel, comme ce fichier, +vous utiliserez probablement le mode Text. + +>> Faites M-x text mode. + +Ne vous inquiétez pas, aucune des commandes Emacs que vous avez +apprises ne change beaucoup mais vous pouvez constater que M-f et M-b +traitent maintenant les apostrophes comme des parties de mots. Avant, +dans le mode Fundamental, M-f et M-b les considéraient comme des +séparateurs de mots. + +Les modes majeurs font généralement des modifications subtiles comme +celle-ci : la plupart des commandes font « la même chose » dans tous +les modes majeurs, mais fonctionnent un peu différemment. + +Pour lire la documentation sur votre mode majeur actuel, faites C-h m. + +>> Faites une fois C-u C-v pour amener cette ligne près du haut de l'écran. +>> Faites C-h m pour voir comment le mode Text diffère du mode Fundamental. +>> Faites C-x 1 pour supprimer la documentation de l'écran. + +Les modes majeurs sont appelés ainsi parce qu'il existe aussi des modes +mineurs. Ces derniers ne sont pas des alternatives aux modes majeurs, +mais simplement des modifications de ceux-ci. Tout mode mineur peut +être activé ou désactivé indépendamment de tous les autres modes +mineurs et de votre mode majeur. Vous pouvez donc n'utiliser aucun +mode mineur, un seul, ou toute combinaison de plusieurs modes mineurs. + +Un mode mineur très utile, surtout lorsque l'on édite du langage +naturel, est le mode Auto Fill. Lorsqu'il est activé, Emacs coupe +automatiquement la ligne entre les mots lorsque vous insérez du texte +et que la ligne est trop longue. + +Vous pouvez activer le mode Auto Fill en faisant M-x auto fill +mode. Lorsqu'il est activé, vous pouvez le désactiver en +faisant à nouveau M-x auto fill mode. Si le mode est +désactivé, cette commande l'active et, s'il est activé, elle le +désactive : on dit que la commande « fait basculer le mode ». + +>> Faites M-x auto fill mode puis insérez une ligne de + plusieurs « azer » jusqu'à ce qu'elle se divise en deux lignes. + Vous devez mettre des espaces entre eux car le mode Auto Fill ne + coupe les lignes que sur les espaces. + +La marge est habituellement fixée à 70 caractères, mais pouvez +modifier cette valeur avec la commande C-x f. Vous devez fournir la +nouvelle valeur de la marge sous la forme d'un paramètre numérique. + +>> Faites C-x f avec un paramètre de 20 (C-u 2 0 C-x f). + Puis, tapez du texte et vous verrez qu'Emacs fait des lignes de 20 + caractères. Remettez la marge à 70 en refaisant C-x f. + +Si vous faites des modifications au milieu d'un paragraphe, le mode +Auto Fill ne reformatera pas ce paragraphe. +Pour cela, faites M-q (META-q) lorsque le curseur est placé dans ce +paragraphe. + +>> Placez le curseur dans le paragraphe précédent et faites M-q. + + +* RECHERCHE +----------- + +Emacs peut rechercher des chaînes de caractères (ce sont des groupes +de caractères contigus ou mots) soit vers l'avant, soit vers +l'arrière. La recherche d'une chaîne est une commande de déplacement +du curseur : elle déplace le curseur à l'emplacement où la chaîne +apparaît. + +La commande de recherche d'Emacs est différente de celle que l'on +trouve sur la plupart des éditeurs car elle est « incrémentale ». Cela +signifie que la recherche a lieu pendant que l'on tape la chaîne que +l'on recherche. + +La commande pour débuter une recherche est C-s pour rechercher vers +l'avant et C-r pour rechercher vers l'arrière. MAIS ATTENDEZ ! +N'essayez pas encore. + +Lorsque vous faites C-s la chaîne « I-search » apparaît comme invite +dans la zone d'écho. Cela vous indique qu'Emacs est dans ce que l'on +appelle une recherche incrémentale et qu'il attend que vous tapiez ce +que vous recherchez. termine une recherche. + +>> Faites C-s pour lancer une recherche. LENTEMENT, une lettre à la + fois, tapez le mot « curseur », en attendant entre chaque caractère + pour constater ce que fait le curseur. Vous avez maintenant atteint + « curseur » une première fois. +>> Tapez C-s à nouveau pour trouver l'occurrence suivante de « curseur ». +>> Faites maintenant quatre fois et étudiez les mouvements du + curseur. +>> Faites pour mettre fin à la recherche. + +Avez-vous vu ce qui se passait ? Emacs, dans une recherche +incrémentale, essaie d'aller sur l'occurrence de la chaîne que vous +avec tapée jusqu'à cet instant. Pour aller sur l'occurrence suivante de +« curseur », il suffit de refaire C-s : s'il ne trouve rien, Emacs +bippe et vous indique que la recherche a échoué. C-g permet également +de mettre fin à la recherche. + +REMARQUE : Sur certains systèmes, C-s gèlera l'écran et vous ne verrez +plus rien se produire dans Emacs. Cela indique qu'une +« fonctionnalité » du système d'exploitation, appelée « contrôle de +flux », a intercepté le C-s et ne lui permet pas de parvenir à +Emacs. Pour décoincer l'écran, faites C-q puis consultez la section +« Spontaneous Entry to Incremental Search » dans le manuel d'Emacs +pour avoir des avis sur la gestion de cette « fonctionnalité ». + +Si vous vous trouvez au milieu d'une recherche incrémentale et que +vous tapez , vous remarquerez que cela supprime le dernier +caractère de la chaîne recherchée et que la recherche reprend à +l'endroit où elle se trouvait précédemment. Supposons, par exemple, +que vous ayiez tapé « c » pour trouver la première occurrence de +« c ». Si vous tapez maintenant « u », le curseur ira sur la première +occurrence de « cu ». Faites : cela supprime le « u » de la +chaîne de recherche et le curseur revient à la première occurrence de +« c ». + +Si vous êtes au milieu d'une recherche et que vous tapez un caractère +de contrôle ou un meta-caractère (sauf quelques exceptions -- les +caractères considérés comme spéciaux pour les recherches, tels que C-s +et C-r), cela met fin à la recherche. + +C-s lance une recherche de toutes les occurrences de la chaîne APRÈS la +position courante du curseur. Si vous voulez faire une recherche plus +haut dans le texte, faites plutôt C-r. Tout ce que nous avons dit sur +C-s s'applique également à C-r, sauf que la direction de la recherche +est inversée. + +* FENÊTRES MULTIPLES +-------------------- + +L'une des caractéristiques les plus agréables d'Emacs est que vous +pouvez afficher plusieurs fenêtres en même temps à l'écran. + +>> Placez le curseur sur cette ligne et faites C-u 0 C-l (CTRL-L, pas + CTRL-1). + +>> Faites maintenant C-x 2 pour diviser l'écran en deux + fenêtres. Toutes les deux affichent ce didacticiel et le curseur + reste dans celle du haut. + +>> Faites C-M-v pour faire défiler la fenêtre du bas + (Si vous n'avez pas de touche Meta, faites C-V). + +>> Tapez C-x o (« o » pour « other ») afin de placer le curseur dans + la fenêtre du bas. +>> Utilisez C-v et M-v pour la faire défiler. + Conservez ces instructions dans la fenêtre du haut. + +>> Faites à nouveau C-x o pour replacer le curseur dans la fenêtre du + haut. Le curseur est exactement où il était avant. + +Vous pouvez continuer à utiliser C-x o pour passer d'une fenêtre à +l'autre. Chaque fenêtre a sa propre position du curseur, mais une +seule le montre vraiment. Toutes les commandes d'édition habituelles +s'appliquent à la fenêtre dans laquelle se trouve le curseur : on +l'appelle la « fenêtre sélectionnée ». + +La commande C-M-v est très utile lorsque l'on édite du texte dans une +fenêtre et que l'on utilise l'autre uniquement comme référence. Vous +pouvez conserver le curseur dans la fenêtre où vous éditez et +parcourir l'autre fenêtre avec C-M-v. + +C-M-v est un exemple de caractère CONTROLE-META. Si vous disposez +d'une touche META, vous pouvez faire C-M-v en pressant à la fois +CONTROLE et META tout en tapant v. Peu importe qui, de CONTROLE ou +META est pressée en premier car ces deux touches agissent en modifiant +les caractères que vous tapez. + +Si vous n'avez pas de touche META et que vous utilisez à la +place, l'ordre a son importance : vous devez taper puis C-v car +C-ESC v ne fonctionnera pas. En effet, est un caractère en +lui-même, ce n'est pas un modificateur de touches. + +>> Faites C-x 1 (dans la fenêtre du haut) pour supprimer la fenêtre du + bas. + +(Si vous aviez fait C-x 1 dans la fenêtre du bas, vous auriez supprimé +celle du haut. Pensez à cette commande comme signifiant « ne garde +qu'une fenêtre, celle dans laquelle je suis »). + +Vous n'êtes pas obligé d'afficher le même tampon dans les deux +fenêtres. Si vous faites C-x C-f pour trouver un fichier dans une +fenêtre, l'autre n'est pas modifiée. Chaque fenêtre peut contenir un +fichier indépendamment de l'autre. + +Voici une autre façon d'utiliser deux fenêtres pour afficher deux +choses différentes : + +>> Faites C-x 4 C-f suivi du nom d'un de vos fichiers puis faites + . Le fichier indiqué apparaît dans la fenêtre du bas et le + curseur s'y rend également. + +>> Faites C-x o pour revenir à la fenêtre du haut, puis C-x 1 pour + supprimer celle du bas. + + +* NIVEAUX D'ÉDITION RÉCURSIVE +----------------------------- + +Parfois, vous vous trouverez dans ce qui s'appelle un « niveau +d'édition récursive ». Cela est indiqué par des crochets dans la ligne +de mode, entourant les parenthèses situées autour du nom du mode +majeur. Vous verrez, par exemple [(Fundamental)] au lieu de (Fundamental). + +Pour sortir du niveau d'édition récursive, faites ESC ESC ESC. C'est +une commande de sortie à tout faire. Vous pouvez également l'utiliser +pour supprimer les fenêtres supplémentaires et pour sortir du +mini-tampon. + +>> Faites M-x pour aller dans le mini-tampon, puis faites ESC ESC ESC + pour en sortir. + +Vous ne pouvez pas utiliser C-g pour sortir d'un niveau d'édition +récursive car cette commande sert à annuler des commandes et des +paramètres DANS le niveau d'édition récursive. + +* OBTENIR DE L'AIDE SUPPLÉMENTAIRE +---------------------------------- + +Nous avons essayé, dans ce didacticiel, de ne fournir que les +informations suffisantes pour commencer à utiliser Emacs. Il y a tant +de possibilités avec Emacs qu'il serait impossible de tout expliquer +ici. Cependant, vous pouvez vouloir en apprendre plus, car il a bien +d'autres fonctionnalités utiles. Emacs dispose de commandes pour lire +la documentation sur ses commandes. Ces commandes d'« aide » +commencent toutes par le caractère C-h, le « caractère d'aide ». + +Pour utiliser l'aide, tapez C-h suivi d'un caractère indiquant le type +d'aide que vous souhaitez. Si vous êtes VRAIMENT perdu, faites C-h ? +et Emacs vous indiquera les types d'aide qu'il peut fournir. Si vous +avez tapé C-h et que vous vous ravisez, il vous suffit de faire C-g +pour annuler. + +Certains sites changent la signification du caractère C-h. Ils ne +devraient pas le faire à la légère pour tous les utilisateurs et vous +êtes donc en droit de vous plaindre auprès de l'administrateur +système. Cependant, si C-h n'affiche pas de message d'aide en bas de +l'écran, essayez à la place la touche F1 ou M-x help . + +La commande d'aide la plus simple est C-h c. Faites C-h, le caractère +c, puis un caractère ou une séquence de commande : Emacs affichera une +description très courte de cette commande. + +>> Faites C-h c C-p. + Le message devrait être quelque chose comme : + + C-p runs the command previous-line + +Cela vous donne le « nom de la fonction ». Les noms de fonction +servent principalement à la personnalisation et à l'extension d'Emacs, +mais comme ils sont choisis de façon à indiquer ce que fait la +commande, ils servent également de documentation rapide -- c'est +suffisant pour vous rappeler les commandes que vous avez déjà +apprises. + +Les commandes multi-caractères, comme C-x C-s et (si vous n'avez ni +touche META, ni touche EDIT, ni touche ALT) v sont également +possibles après C-h c. + +Pour obtenir plus d'informations sur une commande, faites C-h k au +lieu de C-h c. + +>> Faites C-h k C-p. + +Cela affiche la documentation de la fonction, ainsi que son nom, dans +une fenêtre Emacs. Lorsque vous avez fini de lire, faites C-x 1 pour +supprimer le texte de l'aide. Vous n'êtes pas obligé de le faire tout +de suite ; vous pouvez continuer à travailler tout en vous référant à +l'aide, puis taper C-x 1 lorsque vous n'avez plus besoin de celle-ci. + +Voici d'autres options utiles de C-h : + + C-h f Décrit une fonction. Vous tapez le nom de la fonction. + +>> Faites C-h f previous-line. + Cela affiche toutes les informations dont dispose Emacs sur la + fonction qui implémente la commande C-p. + + C-h a Commande Apropos. Tapez un mot-clé et Emacs affichera + toutes les commandes dont les noms contiennent ce + mot-clé. Ces commandes peuvent toutes être invoquées + avec M-x. Pour certaines, la commande Apropos + affichera également une séquence d'un ou deux + caractères exécutant la même commande. + +>> Faites C-h a file. + +Cela affiche dans une autre fenêtre une liste de toutes les commandes +M-x ayant « file » dans leurs noms. Vous verrez des commandes +caractères, comme C-x C-f, apparaître à côté des noms de commandes qui +leur correspondent, comme find-file. + +>> Faites C-M-v pour faire défiler la fenêtre d'aide. Faites-le + plusieurs fois. + +>> Faites C-x 1 pour supprimer la fenêtre d'aide. + + C-h i Manuels en ligne (alias Info). Cette commande vous place dans + un tampon spéciale, appelé « *info* », où vous pouvez + lire les manuels en ligne des paquetages installés sur + votre système. Faites m emacs pour lire le + manuel d'Emacs. Si vous n'avez jamais utilisé Info + auparavant, tapez ? et Emacs vous fera faire une visite + guidée des fonctionnalités du mode Info. Lorsque vous + en aurez fini avec ce didacticiel, le manuel Info + d'Emacs devrait être votre source de documentation + essentielle. + + +* FONCTIONNALITÉS SUPPLÉMENTAIRES +--------------------------------- + +Vous pouvez en apprendre plus en lisant le manuel d'Emacs, qu'il soit +imprimé ou en ligne avec le système Info (utilisez le menu Help, ou +faites F10 h r). Les deux fonctionnalités que vous apprécierez +particulièrement sont la complétion, qui permet d'économiser la +frappe, et dired, qui simplifie la manipulation des fichiers. + +La complétion permet d'éviter les frappes inutiles. Si, par exemple, +vous voulez basculer vers le tampon *Messages*, tapez simplement +C-x b *M et Emacs complètera le nom du tampon s'il peut le +déterminer à partir de ce que vous avez saisi avant la tabulation. La +complétion est décrite dans la version Info du manuel Emacs, à la +rubrique "Completion". + +Dired vous permet de consulter la liste des fichiers d'un répertoire +(et, éventuellement, de ses sous-répertoires), de vous déplacer dans +cette liste, d'ouvrir, de renommer, de supprimer et, de façon +générale, de manipuler ces fichiers. Dired est décrit dans la version +Info du manuel Emacs, à la rubrique "Dired". + +Le manuel décrit également les nombreuses autres fonctionnalités +d'Emacs. + +* CONCLUSION +------------ + +Rappelez-vous, pour quitter définitivement Emacs, faites C-x C-c. Pour +lancer temporairement un shell et pouvoir ensuite revenir à Emacs, +faites C-z. + +Ce didacticiel est destiné à être compréhensible par tous les nouveaux +utilisateurs. Si vous avez trouvé que quelque chose n'était pas clair, +ne restez pas les bras croisés à vous accuser de tous les maux -- +plaignez-vous ! + + +* COPIE +--------- + +Ce didacticiel descend d'une longue lignée de didacticiels Emacs, +débutée par celui qui fut écrit par Stuart Cracraft pour le premier +Emacs. + +Cette version du didacticiel, comme GNU Emacs, est placée sous +copyright, et vous pouvez en distribuer des copies sous certaines +conditions : + +Copyright (C) 1985, 1996, 2001, 2002, 2003, 2004, + 2005, 2006, 2007 Free Software Foundation, Inc. + + Chacun peut créer ou distribuer des copies de ce document tel qu'il + l'a reçu, sur n'importe quel support, pourvu que la note de + copyright et cette note de permission soient préservées et que le + distributeur garantisse au destinataire la permission d'une + redistribution ultérieure telle qu'elle est permise par cette note. + + Vous pouvez distribuer des versions modifiées de ce document, ou + de parties modifiées de celui-ci sous les conditions citées plus haut, + pourvu qu'il soit clairement indiqué qui les a modifié pour la + dernière fois. + +Les conditions de copie d'Emacs lui-même sont plus complexes, mais +dans le même esprit. Lisez le fichier COPYING et donnez ensuite des +copies de GNU Emacs à vos amis. Participez à l'éradication de +l'obstructionnisme du logiciel (sa « propriétarisation ») en +utilisant, écrivant et partagent des logiciels libres ! + +Cette traduction française a été effectuée par Éric Jacoboni +. + +--- end of TUTORIAL.fr --- + +;;; Local Variables: +;;; coding: latin-1 +;;; sentence-end-double-space: nil +;;; End: + +;;; arch-tag: f6c5c2ff-bf24-477c-bd18-32f76f51ba65 diff --git a/etc/tutorials/TUTORIAL.it b/etc/tutorials/TUTORIAL.it new file mode 100644 index 00000000000..74beb63f018 --- /dev/null +++ b/etc/tutorials/TUTORIAL.it @@ -0,0 +1,1120 @@ +Esercitazione di Emacs. Condizioni d'uso alla fine del file. + +I comandi di Emacs comportano generalmente l'uso del tasto CONTROL (a +volte indicato con CTRL o CTL) o del tasto META (a volte indicato con EDIT +o ALT). Piuttosto che indicarli per esteso ogni volta, useremo le +seguenti abbreviazioni: + + C- significa che bisogna tenere abbassato il tasto CONTROL mentre si + preme il carattere . Quindi C-f significa: tieni premuto + CONTROL e batti f. + + M- significa che bisogna tenere abbassato il tasto META o EDIT o ALT + mentre si preme il carattere . Se non ci sono tasti META, + EDIT o ALT, al loro posto si può premere e poi rilasciare il + tasto ESC e quindi premere . Useremo per indicare il + tasto ESC. + +Nota importante: per chiudere una sessione di lavoro di Emacs usa C-x +C-c. (Due caratteri.) I caratteri ">>" posti al margine sinistro +indicano le direttive per provare a usare un comando. Per esempio: +<> +>> Adesso premi C-v (Vedi schermata successiva) per spostarti + alla prossima schermata. (Vai avanti, tieni premuto il tasto + CONTROL mentre premi v). D'ora in poi dovrai fare così ogni volta + che finisci di leggere lo schermo. + +Si noti che le ultime due righe di ogni schermata appaiono in cima alla +schermata successiva, favorendo così la continuità di lettura. + +La prima cosa che bisogna imparare è come raggiungere un certo punto del +testo. Sai già come andare avanti di una schermata, con C-v. Per +andare indietro di una schermata, premi M-v (tieni premuto il tasto META +e poi premi v, oppure usa v se non c'è un tasto META, EDIT o ALT). + +>> Ora prova: premi M-v e quindi C-v alcune volte. + + +* SOMMARIO +---------- + +I comandi seguenti sono utili per visualizzare le varie parti del testo: + + C-v Vai avanti di una schermata + M-v Vai indietro di una schermata + C-l Cancella lo schermo e riscrivi tutto il testo, muovendo + il testo che si trova vicino al cursore al centro dello + schermo. (Il tasto è CONTROL-L, non CONTROL-1.) + +>> Trova il cursore, osserva quale parte di testo gli è vicina. Premi + C-l. Trova di nuovo il cursore e osserva che si trova sullo stesso + punto del testo. + + +* CONTROLLO DEL CURSORE +----------------------- + +Spostarsi da una schermata all'altra è utile, ma come ci si può spostare +fino ad un certo preciso punto del testo? + +Ci sono diversi modi per farlo. Il più elementare consiste nell'usare i +comandi C-p, C-b, C-f, C-n. Ognuno di essi muove il cursore di una riga o +di una colonna in una data direzione sullo schermo. La tabella seguente +mostra le direzioni in cui operano questi quattro comandi: + + Riga precedente, C-p + : + : + Indietro, C-b .... Posizione attuale cursore .... Avanti, C-f + : + : + Riga successiva, C-n + +>> Sposta il cursore sulla riga centrale del diagramma qui sopra usando + C-n o C-p. Poi usa C-l per portare il diagramma al centro dello + schermo. + +Le quattro lettere dei comandi sono mnemoniche in inglese: P per +precedente (previous), N per successivo (next), B per indietro (backward) +e F per avanti (forward). Questi sono tutti i comandi elementari per +posizionare il cursore, li userai IN CONTINUAZIONE e conviene perciò +impararli subito. + +>> Usa alcuni C-n per portare il cursore su questa riga. +>> Muovi il cursore sulla riga con C-f e poi in alto con C-p. Osserva + l'effetto di un C-p quando il cursore si trova a metà della riga. + +Ogni riga di testo termina con un carattere Newline, che serve a separarla +dalla successiva. È bene che l'ultima riga del tuo file termini con un +carattere Newline, benché Emacs non lo richieda. + +>> Prova a usare C-b all'inizio di una riga. Sposterà il cursore + alla fine della precedente. Questo avviene perché il cursore ha + superato all'indietro il carattere Newline. + +C-f sposta il cursore avanti attravero il carattere Newline proprio come +C-b. + +>> Premi alcune volte C-b per vedere dove si trova il cursore. Poi usa + C-f per tornare alla fine della riga. Usa quindi C-f per andare alla + riga successiva. + +Quando ci si sposta oltre l'inizio o la fine della schermata, il testo che +si trova oltre si sposta sullo schermo, ottenendo uno "scorrimento" +(scrolling). In questo modo Emacs posiziona il cursore sulla parte di +testo desiderata senza doverlo portare fuori dallo schermo visibile. + +>> Prova a muovere il cursore al di là della fine dello schermo con C-n e + osserva cosa succede. + +Se lo spostamento di un solo carattere alla volta è troppo lento allora ci +si può muovere di un'intera parola alla volta. M-f (META-f) e M-b +spostano il cursore rispettivamente in avanti e indietro di una parola. + +>> Prova alcune volte M-f e M-b. + +Quando il cursore è a metà di una parola, M-f lo sposta alla fine della +stessa. Quando è sullo spazio bianco tra due parole, M-f lo sposta alla +fine della parola successiva. M-b funziona in modo simile ma in direzione +opposta. + +>> Ora prova M-f e M-b alcune volte, alternandoli con C-f e C-b così da + poter osservare l'azione di M-f e M-b da vari punti tra le parole e + sulle stesse. + +Osserva il parallelo tra C-f e C-b da una parte e M-f e M-b dall'altra. +Molto spesso i caratteri con Meta sono usati per operazioni relative alle +unità definite dal linguaggio (parole, frasi, paragrafi), mentre i +caratteri con Control operano su unità base indipendenti da ciò che si +scrive (caratteri, righe, ecc.). + +Questo parallelo funziona anche tra righe e frasi: C-a e C-e spostano +all'inizio o alla fine di una riga, e M-a e M-e all'inizio o alla fine di +una frase. + +>> Prova due C-a e poi due C-e. Prova due M-a e poi due M-e. + +Osserva come un C-a ripetuto non abbia effetto, mentre M-a ripetuti +continuano a spostare il cursore all'inizio di frasi precendenti. Sebbene +questi due ultimi comandi non siano perfettamente analoghi, riteniamo che +il loro comportamento sia ragionevole. + +La posizione del cursore nel testo è anche chiamata "punto". Per meglio +dire, il cursore mostra sullo schermo dove si trova, al momento, il punto +nel testo. + +Ecco un sommario delle più semplici operazioni di spostamento del cursore, +compresi i comandi di spostamento di parola in parola o di frase in frase: + + C-f Sposta avanti di un carattere + C-b Sposta indietro di un carattere + + M-f Sposta avanti di una parola + M-b Sposta indietro di una parola + + C-n Sposta alla riga successiva + C-p Sposta alla riga precedente + + C-a Sposta all'inizio della riga + C-e Sposta alla fine della riga + + M-a Sposta all'inizio della frase + M-e Sposta alla fine della frase + +>> Prova tutti questi comandi alcune volte per fare pratica. Questi sono + i comandi più usati. + +Altri due importanti comandi di spostamento del cursore sono M-< (META +Minore-di), che sposta all'inizio dell'intero testo, e M-> (META +Maggiore-di), che sposta alla fine dell'intero testo. + +Su molte tastiere il carattere ">" si raggiunge premendo il tasto SHIFT. +Su queste tastiere bisogna usare il tasto SHIFT assieme a quello META; +senza il tasto SHIFT si otterrebbe un carattere diverso. + +>> Prova M-< adesso per andare all'inizio del tutorial. Poi usa C-v + ripetutamente per tornare a questo punto. +>> Prova M-> adesso, per andare alla fine del tutorial. Quindi usa M-v + ripetutamente per tornare a questo punto. + +Il cursore si può anche spostare con i tasti freccia, se il terminale li +ha. Noi raccomandiamo di imparare C-b, C-f, C-n e C-p per tre motivi: +primo, funzionano su tutti i terminali; secondo, una volta acquisita +pratica nell'uso di Emacs, ci si accorgerà che raggiungere questi +caratteri di controllo è più rapido che usare i tasti freccia perché non +bisogna spostare le mani dalla posizione di scrittura sulla tastiera; +terzo, una volta acquisita l'abitudine ad usare questi comandi con il +carattere Control, si può allo stesso modo imparare ad usare altri comandi +avanzati di spostamento del cursore. + +Molti comandi di Emacs accettano un argomento numerico che spesso serve a +conteggiare per quante volte vanno ripetuti. Il modo in cui si può +fornire ad un comando il numero di ripetizioni è il seguente: si usa C-u e +quindi si indicano le cifre prima di impartire il comando stesso. Se +esiste un tasto META (o EDIT o ALT) c'è un modo alternativo: si battono le +cifre tenendo premuto il tasto META. Noi consigliamo di imparare il +metodo con C-u perché funziona su tutti i terminali. L'argomento numerico +è anche chiamato "argomento prefisso", perché viene indicato prima del +comando a cui si riferisce. + +Per esempio, C-u 8 C-f sposta il cursore in avanti di otto caratteri. + +>> Prova ad usare C-n, o C-p, con un argomento numerico per spostare il + cursore su una riga vicina a questa con un solo comando. + +La maggior parte dei comandi usa l'argomento numerico come numero delle +ripetizioni da effettuare, tuttavia alcuni lo usano in modo diverso. +Altri comandi (ma nessuno di quelli imparati fino ad ora) lo usano come +indicatore di alternativa: la presenza di un argomento prefisso, +indipendentemente dal suo valore, modifica il comportamento del comando. + +C-v e M-v sono un'altra eccezione. Quando gli si fornisce un argomento +spostano l'area di testo visualizzato in alto o in basso del numero di +righe indicato invece che del numero di schermate. Per esempio, C-u 8 C-v +fa scorrere lo schermo di 8 righe. + +>> Ora prova con C-u 8 C-v. + +La schermata si sposta di 8 righe verso l'alto. Se vuoi tornare di nuovo +in basso puoi usare un argomento numerico con M-v. + +Quando si usa un sistema a finestre, come X11 o MS-Windows, ci dovrebbe +essere un'area rettangolare allungata chiamata barra di scorrimento a +un lato della finestra di Emacs. Si può far scorrere il testo con un +click del mouse nella barra di scorrimento. + +>> Prova a premere il pulsante centrale del mouse sopra all'area + evidenziata nella barra di scorrimento. Verrà visualizzata una parte + del testo, più verso l'inizio o la fine, a seconda del punto della + barra che il puntatore indicava mentre premevi il pulsante del mouse. +>> Prova a spostare il mouse in su e in giù mentre tieni premuto il + pulsante centrale. Osserva come il testo scorre in su e in giù mentre + muovi il mouse. + + +* QUANDO EMACS SI BLOCCA +------------------------ + +Se Emacs smette di rispondere ai comandi può essere fermato in modo sicuro +premendo C-g. Si può usare C-g per fermare un comando che sta impiegando +troppo tempo per l'esecuzione. + +Si può anche usare C-g per annullare un argomento numerico o l'esecuzione +di un comando che non si vuole più portare a termine. + +>> Batti C-u 100 per indicare un argomento numerico di 100, quindi premi + C-g. Ora premi C-f. Il cursore si sposta in avanti di un solo + carattere perché hai annullato l'argomento numerico con C-g. + +Se hai premuto per errore puoi annullare con C-g. + + +* COMANDI DISATTIVATI +--------------------- + +Alcuni comandi di Emacs sono "disattivati", così da evitare che utenti +principianti possano usarli per errore. + +Se si inserisce uno dei comandi disattivati Emacs mostra un messaggio in +cui dice quale sia il comando e chiede se davvero si vuole procedere con +l'esecuzione. + +Se effettivamente si vuole provare il comando bisogna premere la barra +spaziatrice come risposta a questa domanda. Normalmente, se non si vuole +eseguire il comando disattivato, bisogna rispondere alla domanda con "n". + +>> Prova C-x C-l (che è un comando disattivato), poi rispondi con "n" alla + domanda. + + +* FINESTRE +---------- + +Emacs può avere diverse finestre, ognuna contenente il suo testo. +Spiegheremo dopo come usare finestre multiple. Adesso ci occupiamo di +come eliminare le finestre in più e tornare alla scrittura con una sola +finestra. È semplice: + + C-x 1 Una finestra (cioè, elimina tutte le altre finestre). + +È un CONTROL-x seguito dalla cifra 1. C-x 1 espande la finestra che +continene il cursore su tutto lo schermo ed elimina tutte le altre +finestre. + +>> Sposta il cursore su questa riga e poi batti C-u 0 C-l. +>> Batti C-h k C-f. Osserva come questa finestra viene rimpicciolita + mentre ne appare un'altra che contiene la spiegazione del comando + CONTROL-f. +>> Batti C-x 1 e guarda come la finestra contenente la spiegazione + scompare. + +Questo comando è diverso da tutti quelli imparati finora perché contiene +due caratteri. Inizia con il carattere CONTROL-x. C'è un'ampia serie di +comandi che iniziano con CONTROL-x; molti di essi riguardano finestre, +file, buffer, e cose simili. Questi comandi possono essere lunghi due, +tre o quattro caratteri. + + +* INSERIMENTO E CANCELLAZIONE +----------------------------- + +Per inserire del testo basta premere i tasti corrispondenti alle varie +lettere che lo compongono. I caratteri visibili, come A, 7, *, ecc., sono +considerati testo e inseriti immediatamente. Si usa (il tasto +Invio) per inserire un carattere Newline. + +L'ultimo carattere inserito si cancella usando . è un +tasto che si trova sulla tastiera e che potrebbe essere etichettato come +"Del" o "Canc". Spesso il tasto "Backspace" (quello con la freccia +rivolta verso sinistra sopra il tasto Invio) serve da , ma non +sempre! + +Più in generale cancella il carattere posto immediatamente prima +della posizione attuale del cursore. + +>> Prova questo adesso - batti alcuni caratteri e poi cancellali con + ripetuto alcune volte. Non preoccuparti delle modifiche fatte + a questo file: l'esercitazione principale rimarrà intatta, quella che + stai usando ne è una tua copia personale. + +Quando una riga di testo diventa troppo lunga per essere visualizzata su +una riga di schermo essa viene "continuata" su una seconda riga dello +schermo. Un carattere barra retroversa ("\") posto accanto al margine +sinistro indica la prosecuzione della riga precedente. Quando si usa un +sistema a finestre grafico, invece della barra retroversa comparirà una +piccola freccia ricurva. + +>> Inserisci del testo fino a raggiungere il margine destro e poi + continua. Vedrai apparire la prosecuzione della riga. +>> Usa per cancellare il testo fino a quando la riga di testo è + di nuovo tutta contenuta in una sola riga dello schermo. La + prosecuzione alla riga successiva scompare. + +Si può cancellare un carattere Newline ("a capo", è un carattere che ha un +effetto ma non viene visualizzato esplicitamente) proprio come ogni altro. +Quando si cancella il carattere Newline che separa due righe queste +vengono unite in una riga sola. Se la riga risultante è troppo lunga per +essere contenuta dallo schermo allora sarà continuata nella riga +successiva. + +>> Muovi il cursore all'inizio di una riga e poi premi . Questo + unisce la riga alla precedente. +>> Premi per inserire di nuovo il carattere Newline che hai + cancellato. + +Si ricordi che la maggior parte dei comandi di Emacs può ricevere un +argomento numerico, compresi i caratteri per inserire il testo. Quando si +ripete un carattere di testo questo viene inserito un certo numero di +volte. + +>> Prova adesso - inserisci C-u 8 * per ottenere ********. + +Fino ad ora si è visto il modo più semplice di inserire testo in Emacs e +di correggere gli errori. In modo analogo è possibile cancellare parola +per parola o riga per riga. Ecco un sommario delle operazioni di +cancellazione: + + cancella il carattere posto subito prima del cursore + C-d cancella il carattere posto subito dopo il cursore + + M- elimina la parola posta prima del cursore + M-d elimina la parola posta subito dopo il cursore + + C-k cancella dalla posizione del cursore fino a fine riga + M-k cancella fino alla fine della frase corrente. + +Si osservi che e C-d da una parte e M- e M-d dall'altra +estendono il parallelo tra C-f e M-f (a dire il vero, non è un +vero e proprio carattere di controllo, ma non preoccupiamoci di questo). +C-k è simile a C-e e M-k è simile a M-e, nel senso che i primi operano su +righe e i secondi su frasi. + +Si può anche cancellare una qualsiasi parte del buffer in modo uniforme: +si sposta il cursore alla fine di quella parte e poi si usa C-@ o C-SPC +(uno o l'altro, SPC è la Barra Spaziatrice), poi si muove il cursore +all'altro estremo della zona e si preme C-w. Questo cancella tutto il +testo posto tra i due estremi. + +>> Sposta il cursore sulla P all'inizio del paragrafo precedente. Premi + C-SPC. Emacs dovrebbe mostrarti il messaggio "Mark set" nella parte + bassa dello schermo. Muovi il cursore sulla s di "estremi" del + paragrafo precedente. Premi C-w. Questo cancellerà il testo a partire + dalla `P' e fino alla lettera che precede `s'. + +La differenza tra "killing" (eliminazione) e "deleting" (cancellazione) è +che il testo "eliminato" può essere inserito di nuovo, mentre quello che +viene cancellato non si può recuperare. L'operazione di reinserimento del +testo soppresso si chiama "yanking". In genere i comandi che possono +rimuovere molto testo fanno un'operazione di eliminazione (così da poterlo +eventualmente reinserire), mentre i comandi che rimuovono un solo +carattere o solo righe vuote e spazi effettuano una cancellazione (quindi +non è possibile recuperare quel testo). + +>> Muovi il cursore all'inizio di una riga non vuota. Usa C-k per + eliminare il testo di quella riga. Premi C-k una seconda volta. Ti + accorgerai di come viene cancellato il carattere Newline posto dopo la + riga stessa. + +Si noti che un singolo C-k elimina il contenuto di una sola riga, un +secondo C-k cancella la riga stessa, e fa spostare in alto tutte le righe +successive. C-k usa un eventuale argomento numerico in modo speciale: +elimina quel numero di righe ed il loro contenuto. Non è una semplice +ripetizione del comando. C-u 2 C-k elimina due righe e i rispettivi +caratteri Newline; battere due volte C-k sarebbe diverso. + +Recuperare il testo eliminato è un'operazione chiamata "yanking". +(Significa "strappare", si deve pensare di riprendere del testo che era +stato portato via). Si può recuperare il testo che è stato eliminato sia +nella sua posizione originaria che in un altro punto del buffer o anche in +un diverso file. Si può reinserire diverse volte, facendone copie +multiple. + +Il comando per fare "yanking" è C-y. Inserisce il testo eliminato per +ultimo nel punto in cui si trova attualmente il cursore. + +>> Prova: premi C-y per recuperare il testo di prima. + +Se si eseguono operazioni di eliminazione immediatamente successive il +testo eliminato è considerato un tutt'uno e quindi un solo C-y inserirà +quelle righe tutte assieme. + +>> Prova adesso, premi C-k alcune volte. + +Adesso, per recuperare il testo eliminato: + +>> Premi C-y. Sposta il cursore alcune righe più in basso e premi di + nuovo C-y. Hai appena visto come copiare una parte di testo. + +Cosa succede se c'è del testo da recuperare tra quello eliminato ma è +stato eliminato altro testo dopo di esso? C-y restituirebbe il testo +dell'ultima eliminazione, tuttavia il testo eliminato in precedenza non è +perso. Si recupera con il comando M-y. Dopo aver usato C-y per +recuperare il testo più recentemente eliminato, un M-y sostituisce quel +testo con quello dell'eliminazione precedente. Premere M-y altre volte +recupera il testo delle eliminazioni via via precedenti. Quando è stato +trovato il testo cercato non si deve fare altro per tenerlo. Si può +andare avanti con la scrittura lasciando il testo recuperato dove si +trova. + +Quando si usa M-y un certo numero di volte si arriva di nuovo al testo di +partenza (quello eliminato per ultimo). + +>> Elimina una riga, sposta il cursore, elimina un'altra riga. Usa C-y per + recuperare la seconda riga eliminata. Premi M-y e verrà sostituita + dalla riga eliminata prima. Usa di nuovo M-y e osserva cosa succede. + Continua fino a quando non ritrovi la riga che avevi eliminato per + seconda. Se vuoi puoi usare un argomento numerico sia positivo che + negativo per M-y. + + +* ANNULLAMENTO +-------------- + +Se si modifica il testo e subito dopo ci si accorge di aver fatto un +errore si può annullare la modifica con il comando di annullamento C-x u. + +Normalmente C-x u annulla le modifiche fatte da un solo comando; se si usa +C-x u alcune volte di seguito ogni ripetizione annulla un comando +precedente. + +Ci sono due eccezioni: i comandi che non modificano il testo non contano, +tra questi i comandi di spostamento del cursore e quelli di scorrimento +del testo; i caratteri inseriti nel testo sono gestiti in gruppi, fino a +20 elementi, ciò per ridurre il numero di C-x u da usare per annullare +l'inserimento del testo. + +>> Elimina questa riga con C-k poi usa C-x u e guardala ricomparire. + +C-_ è un comando di annullamento alternativo; funziona come C-x u ma è più +semplice da inserire più volte di seguito. Lo svantaggio di C-_ è che su +alcune tastiere non è di inserimento immediato. Ecco perché abbiamo +previsto anche C-x u. Su alcuni terminali si può ottenere C-_ dal simbolo +/ mentre si tiene premuto il tasto CONTROL. + +Un argomento numerico per C-x u o C-_ agisce come numero delle ripetizioni +da effettuare. + +Si può annullare la cancellazione del testo proprio come se ne annulla +l'eliminazione. La distinzione tra l'eliminazione e la cancellazione +riguarda solo la possibilità di recuperare il testo con C-y; non c'è +differenza rispetto all'operazione di annullamento. + + +* FILE +------ + +Per conservare in modo permanente il testo inserito biaogna conservarlo in +un file, altrimenti sarà perso al termine dell'esecuzione di Emacs. Per +inserire il testo in un file bisogna aprire quel file prima di comporre il +testo. (Questa operazione si chiama anche "visita" del file.) + +Aprire un file significa osservarne il contenuto all'interno di Emacs. +Per molti versi è come se si operasse sul file stesso, tuttavia le +modifiche apportate al contenuto non sono definitive fino a quando non si +"salva" il file. Tutto questo avviene in modo tale da evitare di lasciare +un file su disco quando è modificato solo in parte. Persino quando si +salva il file Emacs conserva il contenuto originale dello stesso in un +file con un altro nome, nel caso in cui si capisca più tardi che le +modifiche sono state un errore. + +Osservando la parte bassa dello schermo si noti che c'è una riga che +inizia e finisce con dei trattini e che all'inizio contiene questo testo +"--:-- TUTORIAL.it" o qualcosa di simile. Questa parte dello schermo +normalmente mostra il nome del file che si sta "visitando". In questo +momento si "visita" un file che si chiama "TUTORIAL.it" che è poi una +copia dell'esercitazione di Emacs. Quando si apre un file con Emacs il +suo nome apparirà sempre in quel punto preciso. + +Una caratteristica particolare del comando per aprire i file è che bisogna +fornirgli il nome del file. Diciamo in questo caso che il comando "legge +un argomento dal terminale" (l'argomento è proprio il nome del file). +Dopo aver scritto il comando + + C-x C-f Trova un file + +Emacs chiede il nome del file. Il nome che si inserisce compare nella +riga più in basso sullo schermo. La riga di fondo è chiamata "minibuffer" +quando viene usato per questo genere di operazioni di inserimento. Si +possono usare i consueti comandi di Emacs per operare sul nome del file. + +Mentre si inserisce il nome del file (oppure ogni altro testo nel +minibuffer), si può annullare il comando con un C-g. + +>> Premi C-x C-f, poi premi C-g. Questo vuota il "minibuffer" e + interrompe l'esecuzione del comando C-x C-f che stava usando il + "minibuffer". Quindi non sarà aperto alcun file. + +Quando si finisce di indicare il nome del file bisogna premere per +portare a termine il comando. Il comando C-x C-f inizia il suo lavoro e +trova il file che è stato scelto. Il "minibuffer" scompare quando il +comando C-x C-f ha terminato l'esecuzione. + +Subito dopo, il contenuto del file compare sullo schermo e si può +modificare a piacere. Quando si desidera rendere permanenti le modifiche +si usa il comando + + C-x C-s Salva il file + +Questo copia il testo contenuto in Emacs nel file su disco. La prima +volta che si effetta questa operazione Emacs dà un nuovo nome al file +originale in modo da conservarlo. Il nuovo nome è ottenuto aggiungendo un +carattere "~" alla fine del nome originale. + +Quando il salvataggio è terminato Emacs mostra il nome del file appena +scritto. Si dovrebbero salvare le modifiche piuttosto spesso in modo da +non perdere troppo lavoro se per caso il sistema dovesse bloccarsi. + +>> Usa C-x C-f per salvare la tua copia di questa esercitazione. Questo + dovrebbe mostrare il messaggio "Wrote ...TUTORIAL.it" nella parte bassa + dello schermo. + +NOTA: su alcuni sistemi il comando C-x C-s bloccherà lo schermo e poi non +si vedrà più alcun altro messaggio da Emacs. Questo significa che una +caratteristica del sistema operativo chiamata "controllo di flusso" sta +intercettando il carattere C-s e non gli permette di arrivare fino ad +Emacs. Per sbloccare lo schermo si può usare C-q. Poi si legga la +sezione "Spontaneous Entry to Incremental Search" nel manuale di Emacs per +suggerimenti su come gestire questa caratteristica del proprio sistema. + +Si può aprire un file già esistente per leggerlo o modificarlo. Si può +anche "visitare" un file che ancora non esiste. Questo è un modo per +creare un nuovo file con Emacs: si apre il file che sarà inizialmente +vuoto e quindi si inizia ad inserire il testo. Quando si chiederà di +salvare il file Emacs lo creerà ed esso conterrà tutto il testo che è +stato inserito. Da quel punto in poi si potrà pensare di operare su un +file già esistente. + + +* BUFFER +-------- + +Se si apre un secondo file con C-x C-f il primo rimane aperto all'interno +di Emacs. Si può tornare a visualizzarlo "visitandolo" di nuovo con il +comando C-x C-f. In questo modo si possono aprire quanti file si vogliono +all'interno di Emacs. + +>> Crea un file chiamato "pippo" usando C-x C-f pippo . Inserisci + del testo e poi salva "pippo" con C-x C-s. Poi usa C-x C-f TUTORIAL.it + per tornare all'esercitazione. + +Emacs conserva il testo di ogni file all'interno di un oggetto chiamato +"buffer". La "visita" di un file produce un nuovo buffer all'interno di +Emacs. Per guardare una lista dei buffer che esistono attualmente nella +tua sessione di Emacs si usa + + C-x C-b Elenca buffer + +>> Prova C-x C-b adesso. + +Si osservi come ogni buffer abbia un nome e come possa avere anche il nome +di un file del quale conserva il contenuto. Alcuni buffer non +corrispondono ad alcun file. Per esempio il buffer che ha nome "*Buffer +List*" non ha un file corrispondente, è quello che contiene la lista che è +stata creata da C-x C-b. OGNI testo che si legge all'interno di Emacs è +sempre parte di un buffer. + +>> Usa C-x 1 per eliminare la lista dei buffer. + +Se si modifica in qualche modo il testo di un file e poi si visita un altro +file questo non comporta un salvataggio del primo. Le modifiche rimangono +solo all'interno di Emacs, nel buffer relativo a quel file. La creazione +o la modifica del buffer del secondo file non ha alcun effetto sul buffer +del primo. Sarebbe fastidioso dover tornare al primo file con C-x C-f per +salvarlo con C-x C-s. Così c'è il comando + + C-x s Salva alcuni buffer + +C-x s chiede conferma del salvataggio per ogni buffer che contiene testo +modificato e non ancora salvato. Chiede, per ognuno di quei buffer, se si +voglia salvarne il contenuto nel file corrispondente. + +>> Inserisci una riga di testo e poi premi C-x s. Dovrebbe chiederti se + vuoi salvare il buffer chiamato TUTORIAL.it. Rispondi di sì battendo + "y". + + +* ESTENDERE L'INSIEME DEI COMANDI +--------------------------------- + +Emacs ha molti comandi in più rispetto a quelli che potrebbero trovare +posto su tutti i caratteri CONTROL e META. Emacs risolve questo problema +usando il comando "estendi" (eXtend). Ce ne sono di due tipi: + + C-x Comando esteso carattere. Seguito da un carattere. + M-x Comando esteso con nome. Seguito da un nome di comando. + +Si tratta di comandi utili ma meno utilizzati di quelli che già osservati. +Se ne sono visti due: il comando C-x C-f per visitare un file e quello C-x +C-s per salvarlo. Un altro esempio è quello che serve per chiudere la +sessione Emacs - cioè il comando C-x C-c. Non bisogna temere di perdere +le modifiche fatte: C-x C-c propone infatti di salvare ogni file +modificato prima di chiudere Emacs. + +C-z è il comando che serve per uscire da Emacs *temporaneamente* - così da +poter tornare alla stessa sessione di Emacs in un momento successivo. + +Su sistemi che lo permettono C-z "sospende" Emacs, cioè riporta alla shell +che lo aveva invocato senza però porre termine alla sessione attuale. +Nelle shell più comuni si può riaprire la sessione in corso con il comando +`fg' oppure con `%emacs'. + +Su sistemi che non prevedono la possibilità di "sospensione", C-z crea una +subshell che funziona all'interno di Emacs per dare la possibilità di +usare altri programmi e poi tornare a Emacs successivamente; in pratica +non fa "uscire" veramente da Emacs. In questo caso il comando di shell +`exit' è il modo comune per tornare ad Emacs dalla subshell. + +Il momento di usare C-x C-c è quando si sta per effettuare il log-out dal +sistema. È anche il comando giusto quando si deve chiudere Emacs che è +stato invocato da un programma che gestisce la posta o da altri programmi +simili, dal momento che essi potrebbero non riuscire a gestire la +sospensione di Emacs. In circostanze normali, invece, se non si è sul +punto di fare un log-out è meglio sospendere l'esecuzione di Emacs +piuttosto che interromperla. + +Ci sono molti comandi che usano C-x. Ecco una lista di quelli già +conosciuti: + + C-x C-f Apri un file. + C-x C-s Salva un file. + C-x C-b Elenca buffer. + C-x C-c Chiudi Emacs. + C-x 1 Elimina tutte le finestre tranne una. + C-x u Annulla. + +I comandi estesi con nome sono usati ancora meno spesso, oppure sono usati +solo in certi "modi" di esecuzione. Un esempio è il comando +replace-string per sostituire in tutto il testo una stringa di caratteri +con un'altra. Quando si usa M-x Emacs visualizza "M-x" nella parte bassa +dello schermo, quindi si deve inserire per esteso il nome del comando; in +questo caso "replace-string". Inserisci solo "repl s" ed Emacs +completerà da solo il nome. ( è il tasto di tabulazione, che si +trova di solito sul lato sinistro della tastiera sopra al tasto Blocca +Maiuscole). Concludi l'inserimento del comando con il tasto . + +Il comando replace-string richiede due argomenti: la stringa da sostituire +e quella con cui sostituirla. Bisogna indicare la fine di ogni argomento +con . + +>> Muovi il cursore sulla riga bianca qui sotto, quindi batti M-x repl s + cambiata modificata . + +Osserva come questa riga è cambiata: hai sostituito la parola cam-bia-ta +con "modificata" tutte le volte che quella compariva nel testo, a partire +dalla posizione iniziale del cursore. + + +* SALVATAGGIO AUTOMATICO +------------------------ + +Quando si apportano delle modifiche ad un file ma non sono ancora state +salvate potrebbero essere perse se per caso il sistema si bloccasse. Per +proteggerti da questa eventualità Emacs scrive periodicamente un file di +"salvataggio automatico" per ogni file che si sta scrivendo. Il nome del +file di salvataggio automatico ha un carattere # all'inizio e alla fine; +per esempio se il file si chiama "ciao.c" il nome del file di salvataggio +automatico sarà "#ciao.c#". Quando si salva il file nel modo consueto +Emacs cancella il file di salvataggio automatico. + +Se il computer si blocca si può recuperare il file salvato automaticamente +aprendo il file in modo normale (il file che si stava scrivendo, non +quello di salvataggio automatico) e usando poi M-x recover file. +Quando viene chiesta la conferma si risponda con yes per andare +avanti nel recupero dei dati salvati automaticamente. + + +* AREA DI ECO +------------- + +Se Emacs si accorge che si inseriscono comandi multicarattere in modo +troppo lento allora mostra la sequenza nella parte bassa dello schermo in +un'area chiamata "area di eco". L'area in questione contiene l'ultima riga +dello schermo. + + +* MODE LINE +----------- + +La riga immediatamente sopra all'area di eco è chiamata "mode line" (riga +di modo). La "mode line" si presenta più o meno così: + +--:** TUTORIAL.it (Fundamental)--L720--64%--------------- + +Questa riga fornisce informazioni utili sullo stato di Emacs e sul testo +che si inserisce. + +Abbiamo già visto cosa significa il nome del file - è il file che si sta +visitando. --NN%-- (due cifre e il segno %) indica la posizione attuale +nel testo: significa che NN percento del testo si trova sopra al margine +superiore dello schermo. Se si visualizza l'inizio del file ci sarà +scritto --Top-- (inizio) invece che --00%--. Se invece ci si trova alla +fine del file ci sarà scritto --Bot-- (fine). Se si osserva un file +talmente piccolo da essere visualizzato per intero sullo schermo allora la +"mode line" indicherà --All-- (tutto). + +La lettera L e le cifre indicano il numero di riga (Line) del punto +indicato dal cursore in quel momento. + +I due asterischi vicino all'inizio indicano che sono state fatte delle +modifiche al testo. Se il file è stato appena aperto o appena salvato +quella parte della "mode line" non mostra alcun asterisco, solo trattini. + +La parte di "mode line" racchiusa tra parentesi serve ad indicare in quale +modo di scrittura ci si trovi. Il modo standard è "Fundamental" ed è +quello che probabilmente è attivo adesso. È un esempio di "modalità +primaria" (major mode). + +Emacs ha tanti diversi tipi di "modalità primarie". Alcuni di questi +servono per la scrittura di diversi linguaggi di programmazione e/o tipi +di testo, come la modalità Lisp, la modalità Testo, ecc. In un +determinato momento una sola "modalità primaria" alla volta può essere +attiva, e il suo nome è visualizzato sulla "mode line", proprio come +"Fundamental" lo è adesso. + +Ogni "modalità primaria" condiziona il comportamento di alcuni comandi. +Per esempio ci sono comandi per creare commenti in un programma e, dal +momento che ogni linguaggio di programmazione ha un diverso tipo di +commento, ogni "modalità primaria" deve inserire i commenti in modo +diverso. Ogni "modalità primaria" è anche il nome di un comando esteso +con nome che serve per attivare quella "modalità primaria". Per esempio +M-x fundamental-mode è il comando per attivare la modalità primaria +"Fundamental". + +Se si vuole inserire del testo in italiano, come questo file, serve +probabilmente la modalità testo ("text-mode"). + +>> Inserisci M-x text mode. + +Non preoccuparti, nessuno dei comandi che hai imparato verrà modificato in +modo sostanziale. Tuttavia adesso puoi osservare come M-f e M-b +considerino gli apostrofi come parti di parole. Al contrario, nella +modalità "Fundamental", M-f e M-b consideravano gli apostrofi dei +separatori di parole. + +Le "modalità primarie" di solito producono nei comandi piccoli cambiamenti +come questo: la maggior parte di essi "fa lo stesso lavoro" ma in maniera +appena diversa. + +Per leggere la documentazione sulla "modalità primaria" attuale si usa +C-h m. + +>> Usa C-u C-v una o più volte per portare questa riga vicino all'inizio + dello schermo. Usa C-h m per leggere come il "text-mode" (modo testo) + differisce dalla modalità "Fundamental". Premi C-x 1 per eliminare la + finestra contenente la documentazione. + +Le "modalità primarie" sono chiamate così perché ci sono anche delle +"modalità secondarie" (minor modes). Le "modalità secondarie" non sono +alternative alle "modalità primarie" ma solo piccole varianti di esse. +Ogni "modalità secondaria" può essere attivata o disattivata +indipendentemente da tutte le altre "modalità secondarie" e +indipendentemente dalla "modalità primaria" attiva in quel momento. Si +può quindi usare nessuna "modalità secondaria", una soltanto oppure ogni +altra combinazione di modalità secondarie. + +Una "modalità secondaria" molto utile, specialmente per il testo italiano, +è la modalità "Auto Fill". Quando questa modalità è attiva, Emacs +interrompe la riga tra due parole ogni volta che, nel corso +dell'inserimento, essa diventa troppo lunga. + +Si può attivare il modo "Auto Fill" con: M-x auto fill mode. +Quando la modalità suddetta è attiva può essere disattivata con M-x auto +fill mode. Se la modalità è disattivata questo comando la attiva, +viceversa se è già attiva. Un comando che funziona così si comporta come +un interruttore, attiva o disattiva qualcosa ogni volta che viene premuto. + +>> Usa M-x auto fill mode adesso. Inserisci una riga di "asdf" + ripetuti fino a quando non la vedi dividersi in due righe. Devi + interporre degli spazi perché la modalità "Auto Fill" spezza le righe + solo in corrispondenza di uno spazio. + +Il margine di solito è predisposto a 70 caratteri ma può essere spostato +con il comando C-x f. Bisogna fornire al comando l'argomento numerico del +margine che si desidera. + +>> Usa C-x f con un argomento di 20 (C-u 2 0 C-x f), poi inserisci del + testo e osserva come Emacs interrompe le righe a 20 caratteri. Infine + torna di nuovo a un margine di 70 caratteri con C-x f. + +Se si modifica il testo all'interno di un paragrafo la modalità +"Auto Fill" non +lo risistema. +Per risistemare i margini di un paragrafo +si usa M-q (META-q) +quando il cursore si trova in quel paragrafo. + +>> Muovi il cursore sul paragrafo precedente e premi M-q. + + +* CERCARE DEL TESTO +------------------- + +Emacs può effettuare la ricerca di stringhe (che sono gruppi di caratteri +contigui o parole) in posizione sia successiva che precedente nel testo. +Cercare una stringa è un comando che provoca lo spostamento del cursore: +lo porta lì dove la stringa compare. + +Il comando di ricerca di Emacs è diverso da quello di molti altri editor +perché è "incrementale". Ciò significa che la ricerca avviene proprio +mentre si inserisce la stringa da cercare. + +I comandi per iniziare la ricerca sono C-s per quella in avanti e C-r per +quella all'indietro nel testo. ASPETTA! Non provarli ora. + +Quando si preme C-s si vede comparire il messaggio "I-search" nell'"area +di eco", ciò significa che Emacs aspetta che si indichi ciò che deve +cercare. serve a concludere la ricerca. + +>> Adesso usa C-s per inziare la ricerca. LENTAMENTE, una lettera alla + volta, inserisci la parola `cursore', facendo una pausa dopo ogni + carattere scritto per vedere cosa succede al cursore. Hai cercato + "cursore" una volta sola. +>> Usa C-s un'altra volta per trovare il punto in cui la parola "cursore" + compare successivamente. +>> Adesso premi quattro volte e osserva come si muove il cursore. +>> Premi per concludere la ricerca. + +Hai visto cos'è successo? Durante una ricerca incrementale Emacs prova ad +andare al punto successivo in cui compare la stringa indicata fino a quel +momento. Per raggiungere il punto successivo in cui compare di nuovo +`cursore' basta solo premere C-s ancora una volta. Se la stringa cercata +non compare in alcun punto successivo Emacs emette un "beep" e informa che +la ricerca non è andata a buon fine ("failing"). C-g è un modo +alternativo per concludere la ricerca. + +NOTA: su alcuni sistemi il comando C-s bloccherà lo schermo e poi non si +vedrà alcun altro messaggio da Emacs. Questo significa che una +caratteristica del sistema operativo chiamata "controllo di flusso" sta +intercettando il carattere C-s e non gli permette di arrivare fino ad +Emacs. Per sbloccare lo schermo si può usare C-q. Poi si legga la +sezione "Spontaneous Entry to Incremental Search" nel manuale di Emacs per +suggerimenti su come gestire questa caratteristica del proprio sistema. + +Se durante una ricerca incrementale si preme il tasto ci si +accorgerà che l'ultimo carattere della stringa da cercare scompare e la +ricerca torna all'ultimo risultato trovato prima che fosse stato scritto. +Per esempio, supponiamo di aver battuto una "c" e di aver trovato la prima +"c" che compare nel testo. Se poi aggiungiamo una "u" il cursore si +sposta alla prima stringa "cu" che trova. Ora se si preme la "u" +viene cancellata dalla stringa da cercare e il cursore torna sulla "c" che +era stata trovata in precedenza. + +Se ci si trova nel mezzo di una operazione di ricerca e si usa un +carattere control o meta (con poche eccezioni - i caratteri che hanno +significato particolare durante la ricerca sono C-s e C-r) allora la +ricerca viene conclusa. + +Il comando C-s inizia la ricerca di ogni presenza della stringa in +posizione SUCCESSIVA a quella attuale del cursore. Se si vuole cercare +qualcosa che nel testo precede il cursore allora bisogna usare il comando +C-r. Tutto quello che abbiamo detto su C-s si applica allo stesso modo +per C-r, invertendo ovviamente la direzione di ricerca. + + +* FINESTRE MULTIPLE +------------------- + +Una delle caratteristiche interessanti di Emacs è che si possono +visualizzare più finestre sullo schermo nello stesso momento. + +>> Muovi il cursore su questa riga e inserisci C-u 0 C-l (è CONTROL-L, non + CONTROL-1). +>> Adesso usa C-x 2 che divide lo schermo in due parti. Entrambe le + finestre visualizzano questo tutorial. Il cursore si trova nella + finestra superiore. +>> Premi C-M-v per far scorrere la finestra inferiore. (Se non hai un + tasto META usa C-v.) +>> Usa C-x o per muovere il cursore nella finestra inferiore. +>> Usa C-v e M-v nella finestra inferiore per farvi scorrere il testo. + Continua a leggere queste indicazioni nella finestra superiore. +>> Premi C-x o di nuovo per muovere il cursore nella finestra superiore. + Il cursore si trova sul punto che occupava in precedenza. + +Si può continuare a usare C-x o per andare da una finestra all'altra. Ogni +finestra ha la sua posizione per il cursore ma solo una alla volta lo +visualizza. Tutti i comandi impartiti funzionano sulla finestra in cui si +trova il cursore. Noi la chiamiamo la "finestra selezionata". + +Il comando C-M-v è molto utile quando si inserisce del testo in una +finestra mentre si usa l'altra solo come riferimento. Si può tenere il +cursore sempre nella finestra in cui si lavora e portare avanti +sequenzialmente il testo contenuto nell'altra con C-M-v. + +C-M-v è un esempio di carattere CONTROL-META. Se c'è un vero e proprio +tasto META si può ottenere C-M-v tenendo premuti contemporaneamente +CONTROL e META mentre si batte v. Non importa quale tra CONTROL e META +viene premuto per primo perché essi agiscono assieme modificando i +caratteri inseriti dopo. + +Se non c'è un tasto META e si usa il tasto ESC l'ordine diventa +importante: bisogna premere prima e poi farlo seguire da CONTROL-v +perché CONTROL-ESC-v non funziona. Questo perché è un carattere a +sé stante e non uno che ne modifica altri. + +>> Usa C-x 1 (nella finestra superiore) per eliminare la finestra + inferiore. + +(Se usi C-x 1 nella finestra inferiore allora viene eliminata quella +superiore. Questo comando conserva una sola finestra, quella in cui si +trova il cursore.) + +Due finestre aperte contemporaneamente non devono necessariamente +contenere lo stesso buffer. Quando si usa C-x C-f per visitare un file in +una finestra il contenuto dell'altra non cambia. Si può "visitare" in +modo indipendente un file diverso in ogni finestra. + +Ecco un altro modo per usare due finestre per visualizzare cose diverse: + +>> Inserisci C-x 4 C-f seguito dal nome di uno dei tuoi file. Premi + . Osserva come il file viene aperto nella finestra inferiore. + Il cursore si posiziona in quella. +>> Usa C-x o per tornare alla finestra superiore e C-x 1 per eliminare + quella inferiore. + + +* LIVELLI DI EDITING RICORSIVO +------------------------------ + +A volte ci si può trovare in quello che si chiama un "livello di editing +ricorsivo", ciò è indicato dalla presenza di parentesi quadre nella "mode +line", attorno alle parentesi della "modalità primaria" attualmente in +uso. Per esempio si potrebbe leggere [(Fundamental)] invece che +(Fundamental). + +Per uscire dal livello di editing ricorsivo si usa . È +un comando di uscita di uso piuttosto generale, si può anche usare per +eliminare finestre in più e per uscire dal "minibuffer". + +>> Usa M-x per entrare nel "minibuffer": poi usa per + uscirne. + +Non è possibile usare C-g per uscire da un livello di editing ricorsivo, +ciò avviene perché C-g è usato per annullare i comandi all'INTERNO del +livello di editing ricorsivo. + + +* COME IMPARARE ALTRO +--------------------- + +In questo tutorial abbiamo provato a fornire le informazioni sufficienti +per iniziare ad usare Emacs. Ci sono così tante opzioni in Emacs che +sarebbe impossibile spiegarle tutte qui, ma è possibile imparare tutte le +altre caratteristiche di Emacs utili per il proprio lavoro. Ci sono +comandi per leggere la documentazione dei comandi disponibili in Emacs. +Questi comandi di aiuto iniziano tutti con il carattere C-h, che infatti è +chiamato "carattere di aiuto (help)". + +Per raggiungere le voci di Aiuto si usa il carattere C-h e poi un altro +carattere che specifica la richiesta. Quando davvero non si sa cosa fare +si può provare con C-h ? ed Emacs indicherà tutti i tipi di aiuto che può +fornire. Se si è attivato l'aiuto con C-h e si decide che non serve più +si può annullare la richiesta con C-g. + +Alcuni sistemi fanno un diverso uso del carattere C-h perché questo viene +indebitamente modificato dall'amministratore di sistema. A parte +rivolgerti allo stesso perché risolva il problema puoi provare ad accedere +alla funzione aiuto di Emacs con il tasto F1 oppure con M-x help. + +La forma base di aiuto è data da C-h c. Si inserisce C-h, il carattere c +e poi un carattere o una sequenza di caratteri; Emacs mostrerà una breve +descrizione del comando stesso. + +>> Prova C-h c C-p. Dovresti leggere un messaggio del tipo + + C-p runs the command previous-line (purtroppo in inglese!) + +Questo messaggio indica il "nome della funzione". I nomi di funzione sono +usati principalmente per personalizzare ed estendere Emacs e sono scelti +anche in modo da indicare che cosa il comando fa. Servono quindi anche da +breve descrizione, sufficiente per ricordarsi di comandi già imparati. + +I comandi con più caratteri come ad esempio C-x C-s e (se non c'è il tasto +META o EDIT o ALT) v sono permessi allo stesso modo dopo una +richiesta di aiuto fatta con C-h c. + +Per avere ulteriori informazioni su un comando si usa C-h k invece che C-h +c. + +>> Prova C-h k C-p. + +Questo mostrerà la documentazione della funzione, così come il suo nome, +all'interno di una finestra di Emacs. Quando hai finito di leggere usa +C-x 1 per eliminare la finestra con il testo di aiuto. Non sei obbligato +a farlo subito. Puoi anche lavorare sul tuo testo mentre fai riferimento +al testo di aiuto e poi usare un C-x 1. + +Ecco altre utili opzioni di C-h: + + C-h f Descrive una funzione. Inserisci il nome della funzione. + +>> Prova con C-h f previous-line. Avrai tutte le informazioni che + Emacs possiede sulla funzione che implementa il comando C-p. + +Un comando simile è C-h v che mostra la documentazione di variabili i cui +valori sono utilizzati per personalizzare il comportamento di Emacs. Devi +inserire il nome della variabile quando Emacs lo richiede. + + C-h a "Apropos" comando. Inserisci una parola ed Emacs ti + elencherà tutti i comandi il cui nome contiene quella + parola. Questi comandi possono tutti essere eseguiti con + META-x. Per alcuni comandi ti sarà mostrata anche una + sequenza di uno o due caratteri che serve a far partire il + comando senza doverlo inserire per esteso. + +>> Prova C-h a file + +Questo mostrerà in un'altra finestra una lista di tutti i comandi che +contengono la parola "file" nel nome. Nella lista si vedranno +comandi-carattere, come C-x C-f, assieme ai corrispondenti nomi per esteso +come "find-file". + +>> Usa C-M-v per far scorrere il testo nella finestra di aiuto. Ripeti + per alcune volte. +>> Usa C-x 1 per eliminare la finestra di aiuto. + + C-h i Leggi la documentazione. Questo comando apre un buffer + speciale chiamato `*info*' in cui puoi leggere i manuali + on-line dei pacchetti installati sul tuo sistema. Batti m + emacs per leggere il manuale di Emacs. Se non hai + mai usato il sistema Info prima d'ora premi ? ed Emacs ti + guiderà nell'uso delle opzioni del modo Info. Una volta + terminata questa esercitazione il manuale di Emacs contenuto + nel sistema Info dovrebbe diventare la tua principale fonte + di documentazione. + + +* CONCLUSIONI +------------- + +Ricorda che per chiudere una sessione di Emacs si usa C-x C-c. Per +tornare temporaneamente alla shell, così da poter rientrare in Emacs +successivamente, si usa C-z. + +Questo documento è stato creato per essere utile a tutti i nuovi utenti, +se qualcosa per te è stato poco chiaro non dare la colpa a te stesso - +lamentati! + + +* COPIA +------- + +La versione inglese di questo testo (disponibile nel file "TUTORIAL") +deriva da una lunga serie di tutorial di Emacs che iniziò con quello +scritto da Stuart Cracraft per il primo Emacs. La versione italiana è a +cura di Alfredo Finelli (alfredofnl@tiscali.it). + +Questo documento, come GNU Emacs, è coperto da copyright e viene +distribuito con il permesso di farne copie a determinate condizioni: + + NOTA BENE: la licenza che definisce a tutti gli effetti i termini + secondo i quali è possibile la copia e la distribuzione di questo + documento è quella originale in lingua inglese contenuta nel file + "TUTORIAL". Qui di seguito se ne riporta una traduzione a scopo + indicativo, restando comunque inteso il fatto che è quella originale a + fare fede. + +Copyright (C) 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. + + È permesso a chiunque copiare e distribuire attraverso ogni mezzo copie + fedeli di questo documento così come viene ricevuto, a condizione che + le informazioni sul copyright e sui permessi garantiti siano conservate + intatte e che il distributore riconosca a colui che riceve la copia il + diritto ad un'ulteriore distribuzione, che deve avvenire così come + definito in questa clausola. + + È permesso distribuire versioni modificate di questo documento, o di + ogni sua parte, alle condizioni indicate precedentemente, purché esse + portino chiaramente indicato il nome di colui che le ha modificate per + ultimo. + +Le condizioni per copiare Emacs sono più complesse ma definite con lo +stesso spirito. Per favore, leggete il file COPYING e poi distribuite +copie di GNU Emacs ai vostri amici. Aiutateci a combattere +l'ostruzionismo al software ("la proprietà") usando, scrivendo e +condividendo software libero! + +;;; Local Variables: +;;; coding: latin-1 +;;; End: + +;;; arch-tag: c6f7079d-8032-473d-91d4-36754af15719 diff --git a/etc/tutorials/TUTORIAL.ja b/etc/tutorials/TUTORIAL.ja new file mode 100644 index 00000000000..3452c02f0f8 --- /dev/null +++ b/etc/tutorials/TUTORIAL.ja @@ -0,0 +1,1073 @@ +Emacs $BF~Lg%,%$%I(B. $BK\%U%!%$%k$NCx:n8"$K$D$$$F$O:G8e$r8fMw2<$5$$!#(B + +Emacs $B$N%3%^%s%I$rF~NO$9$k$K$O!"0lHL$K%3%s%H%m!<%k%-! $B%3%s%H%m!<%k%-!<$r2!$7$?$^$^!"(B<$BJ8;z(B>$B%-!<$r2!$7$^$9!#Nc$($P!"(B + C-f $B$O%3%s%H%m!<%k%-!<$r2!$7$J$,$i(B f $B$N%-!<$r2!$9$3$H$G$9!#(B + M-<$BJ8;z(B> $B%a%?%-!<$r2!$7$?$^$^!"(B<$BJ8;z(B>$B%-!<$r2!$7$^$9!#$b$7%a%?%-!<$,$J(B + $B$$>l9g$O!"%(%9%1!<%W%-!<$r2!$7$F$+$iN%$7!"$=$l$+$i(B<$BJ8;z(B>$B%-!<(B + $B$r2!$7$^$9!#0J9_%(%9%1!<%W%-!<$N$3$H$r(B $B$H=q$-$^$9!#(B + +$B!*=EMW!*(B: Emacs$B$r=*N;$9$k$K$O!"(BC-x C-c $B$r%?%$%W$7$^$9!#(B +">>" $B$G;O$^$k9T$O!"$=$N;~2?$r$9$Y$-$+$r;X<($7$F$$$^$9!#Nc$($P!"(B +<> +[$B$3$N%Z!<%8$NESCf$N6uGr9T$O$o$6$HF~$l$F$"$j$^$9!#%,%$%I$O2<$KB3$-$^$9!#(B] +>> $B$G$O(B C-v $B!J $B$r2!$7$FN%$7$F(B v$B!K$G$9!#(B + +>> $B2?EY$+(B M-v $B$H(B C-v $B$r;n$7$F2<$5$$!#(B + + +$B!v$3$3$^$G$NMWLs(B +================ + + $B%U%!%$%k$r2hLLKh$K8+$F9T$/$K$O!"$9!#$3$N$H$-!"%+!<%=%k$N$"$k9T$,2hLL$NCf1{$K(B + $B$/$k$h$&$K$9$k!#!J(BC-1 $B$8$c$J$/$C$F(B C-L $B$G$9$h!*!K(B + +>> $B%+!<%=%k$r8+$D$1!"$=$N6a$/$K$I$s$JJ8>O$,=q$+$l$F$$$k$+$r3P$(!"(B + $B$=$l$+$i(B C-l $B$r%?%$%W$7$F2<$5$$!#(B + $B%+!<%=%k$,$I$3$K0\F0$7$?$+!"$=$N6a$/$NJ8>O$O$I$&$J$C$?$+$rD4$Y(B + $B$F$_$^$7$g$&!#(B + +$B$b$7$"$J$?$N%-!<%\!<%I$K(B PageUp $B$d(B PageDn $B%-!<$,$"$k$J$i!"$=$l$i$b2hLL(B +$B$r0\F0$9$k$N$K;H$($^$9!#$G$b!"(BC-v $B$d(B M-v $B$r;H$&J}$,8zN(E*$G$9!#(B + + +$B!v%+!<%=%k0\F0$N4pK\(B +======================== + +$B2hLLKh$N0\F0$O$G$-$k$h$&$K$J$j$^$7$?!#:#EY$O!"2hLL$NCf$G!"FCDj$N>l=j$K(B +$B0\F0$9$k$?$a$NJ}K!$r21$($^$7$g$&!#(B + +$B$3$l$K$O$$$/$D$+$N$d$jJ}$,$"$j$^$9!#Lp0u%-!<$r;H$&$3$H$b$G$-$^$9$,!"e$NI8=`0LCV$+$iBg$-$/F0$+$5$:$K!"(B C-p$B!"(BC-b$B!"(BC-f$B!"(BC-n $B$r;H(B +$B$&J}$,8zN(E*$G$9!#$3$l$i$O#4$D$NLp0u%-!<$HF1$8F/$-$r$7$^$9!#?^$G=q$1$P!"(B +$B> C-n $B$H(B C-p $B$G%+!<%=%k$r>e?^$N??Cf$N9T$KF0$+$7$F2<$5$$!#$=$l$+$i(B C-l + $B$r%?%$%W$7$F?^$NA4BN$,2hLLCf1{$K$/$k$h$&$K$7$F$_$^$7$g$&!#(B + + +$B$3$l$i$N%3%^%s%I$O$=$l$>$l!"(BPrevious, Next, Backward, Forward $B$NF,J8;z(B +$B$K$J$C$F$$$k$N$G!"21$($d$9$$$G$7$g$&!#$3$l$i$O!"%+!<%=%k0\F0$N4pK\%3%^(B +$B%s%I$G$"$j!"IQHK$K;H$&$b$N$G$9!#(B + +>> C-n $B$r2?2s$+%?%$%W$7!"$3$N9T$^$G%+!<%=%k$r0\F0$5$;$^$7$g$&!#(B + +>> C-f $B$r;H$C$F9T$NCf$[$I$K0\F0$7!"(BC-p $B$G2?9T$+>e$K0\F0$5$;$^$7$g$&!#(B + $B%+!<%=%k$N0LCV$NJQ2=$KCm0U$7$F2<$5$$!#(B + +$B3F9T$N:G8e$K$O!JL\$K$O8+$($J$$!K(B Newline $BJ8;z$,$"$j$^$9!#$3$l$O> $B9T$N@hF,$G(B C-b $B$r%?%$%W$7$F$_$^$7$g$&!#%+!<%=%k$OA0$N9T$NKvHx$K0\F0(B + $B$9$k$O$:$G$9!#$3$l$O(B C-b $B$,A0$N(B Newline $BJ8;z$r1[$($FLa$C$?$+$i$G$9!#(B + +$BF1MM$K(B C-f $B$O%+!<%=%k$r(B Newline $BJ8;z$r1[$($F> $B$5$i$K$b$&>/$7(B C-b $B$r%?%$%W$7$F%+!<%=%k0\F0$N46$8$rGD$s$G2<$5$$!#(B + $B:#EY$O(B C-f $B$G9TKv$^$G?J$s$G2<$5$$!#(B + $B$5$i$K$b$&0lEY(B C-f $B$r%?%$%W$7$FO$,2hLL$NCf$K0\F0$7$FMh$F$^$9!#$3$l$r!V%9%/%m!<%k!W$H8F$S$^$9!#2hLL(B +$B$,%9%/%m!<%k$9$k$3$H$K$h$C$F!"%+!<%=%k$r0\F0$5$;$F$b!"%+!<%=%k$O>o$K2h(B +$BLLFb$K$"$k$h$&$K$5$l$^$9!#(B + +>> C-n $B$r;H$C$F!"%+!<%=%k$r2hLL$N2 f) $B$G0lC18l@h$X!"(BM-b ( b) $B$G0lC18lA0$X0\F0$7$^$9!#(B + +$BCm0U!'(B $BF|K\8l$K$D$$$F$O!"C18l$N@Z$lL\$rG'<1$9$k$3$H$O$G$-$^$;$s$,!"5?(B + $B;wE*$JJ8@a$rC18l$N@Z$lL\$H$7$F$$$^$9!#(B + +>> M-f $B$d(B M-b $B$r2?2s$+;n$7$F$_$^$7$g$&!#(B + +$BC18l$NCfDx$K$$$k;~$O!"(BM-f $B$O$=$NC18l$N=*$o$j$^$G?J$_$^$9!#$b$7C18l4V$N(B +$B6uGr$K$$$k;~$K$O(B M-f $B$O> M-f $B$H(B M-b $B$r(B C-f $B$H(B C-b $B$r8r$($J$,$i?t2s;n$7!"%+!<%=%k$,C18lCf$K$"(B + $B$k;~$H!"C18l$HC18l$N4V$K$"$k;~$NF0$-$rD4$Y$F2<$5$$!#(B + +C-f $B$H(B C-b $B$KBP$9$k!"(BM-f $B$H(B M-b $B$NN`;w@-$KCmL\$7$^$7$g$&!#B?$/$N>l9g!"(B +$B%a%?%-!<$OJ8=q$r9=@.$9$k%f%K%C%H!JC18l!"J8!"CJMn!K$KBP$9$kA`:n$K;H$$!"(B +$B%3%s%H%m!<%k%-!<$O$=$l$h$j$b$b$C$H4pK\E*$JBP>]!JJ8;z$H$+9TEy!K$KBP$9$k(B +$BA`:n$K;H$$$^$9!#(B + +$B$3$NN`;w@-$O9T$HJ8$N4X78$K$b$"$j$^$9!#(BC-a $B$H(B C-e $B$O$=$l$>$l9TF,$H9TKv(B +$B$K0\F0$7!"(BM-a $B$H(B M-e $B$O$=$l$>$lJ8F,$HJ8Kv$K0\F0$7$^$9!#(B + +>> C-a $B$r#22s!"$=$l$+$i(B C-e $B$r#22s;n$7$^$7$g$&!#(B + M-a $B$r#22s!"$=$l$+$i(B M-e $B$r#22s;n$7$^$7$g$&!#(B + +C-a $B$r7+JV$7$F$b$=$l0J>e0\F0$7$^$;$s$,!"(BM-a $B$r7+$jJV$9$H$I$s$I$sA0$NJ8(B +$BF,$KLa$C$F$$$-$^$9!#$3$NItJ,$G$ON`;w@-$,GK$l$F$$$^$9$,!"$^$"$3$l$,<+A3(B +$B$JF0:n$G$O$J$$$G$7$g$&$+!#(B + +$BJ8>OCf$G%+!<%=%k$,$"$k0LCV$r!V%]%$%s%H!W$H8F$S$^$9!#8@$$$+$($l$P!"%+!<(B +$B%=%k$O!"J8>O$N$I$3$K%]%$%s%H$,$"$k$+$r2hLL>e$G<($7$F$$$k$N$G$9!#(B + +$B0J2<$KC1=c$J%+!<%=%k0\F0A`:n$K$D$$$FMWLs$7$^$9!#$3$N$J$+$K$O!"C18l$d9T(B +$BC10L$G$N0\F0%3%^%s%I$b4^$^$l$F$$$^$9!#(B + + C-f $B0lJ8;z> $B$3$l$iA4It$r2?EY$+;n$7$FN}=,$7$^$7$g$&!#(B + $B$I$l$bIQHK$K;H$&%3%^%s%I$G$9!#(B + +$B$"$HFs$D!"=EMW$J%+!<%=%k0\F0%3%^%s%I$,$"$j$^$9!#%U%!%$%k$N@hF,$K0\F0$9(B +$B$k(B M-< $B$H!"%U%!%$%k$NKvHx$K0\F0$9$k(B M-> $B$G$9!#(B + +$BBgDq$NCe$K$"$j!"$=$l$r%?%$%W$9(B +$B$k$K$O%7%U%H%-!<$r;H$&I,MW$,$"$j$^$9!#$7$?$,$C$F(B M-< $B$r%?%$%W$9$k$K$O!"(B +$B%a%?%-!<$H%7%U%H%-!<$H%3%s%^%-!<$rF1;~$K2!$5$M$P$J$j$^$;$s!#(B + +>> M-< $B$r;n$7$F!"$3$NF~Lg%,%$%I$N@hF,$K0\F0$7$^$7$g$&!#(B + $B$=$l$+$i!"(BC-v $B$r2?EY$+;H$C$F$3$3$^$G5"$C$F$-$F$/$@$5$$!#(B + +>> M-> $B$r;n$7$F!"$3$NF~Lg%,%$%I$NKvHx$K0\F0$7$^$7$g$&!#(B + $B$=$l$+$i!"(BM-v $B$r2?EY$+;H$C$F$3$3$^$G5"$C$F$-$F$/$@$5$$!#(B + +$B$b$7CeC#$7(B +$B$F$/$l$P!"$3$l$i$N%3%s%H%m!<%kJ8;z$rBG$DJ}$,!"Lp0u%-!<$rBG$D$h$j$:$C$H(B +$BB.$$$3$H$,J,$k$G$7$g$&!Jo$N0LCV$+$iBg$-$/F0$+$5$J$$$G$h$$$N$G!K!#(B +$B:G8e$K!"0lEY$3$l$i$N%3%s%H%m!<%kJ8;z$rBG$D=,47$rIU$1$?$i!"$b$C$H?J$s$@(B +$B%+!<%=%k0\F0%3%^%s%I$b4JC1$K3P$($k$3$H$,$G$-$^$9!#(B + +Emacs$B$NBgDq$N%3%^%s%I$K$O?tCM0z?t$rM?$($k$3$H$,$G$-$^$9!#BgDq$N>l9g$3(B +$B$N?tCM$G7+$jJV$72s?t$r;X<($9$k$3$H$K$J$j$^$9!#?tCM0z?t$rM?$($k$K$O!"%3(B +$B%^%s%I$rF~NO$9$kA0$K(B C-u $B$KB3$$$F?t;z$r2?7e$+%?%$%W$7$^$9!#$b$7%a%?%-!<(B +$B$,;H$($k$J$i!"%a%?%-!<$r2!$7$J$,$i?t;z$r%?%$%W$9$k$3$H$b$G$-$^$9!#$G$b(B +$B$d$O$j(B C-u $B$r3P$($k$3$H$r4+$a$^$9!#$=$l$O$I$s$JC> $BE,Ev$J?tCM0z?t$r(B C-n $B$"$k$$$O(B C-p $B$KM?$(!"0l2s$N%3%^%s%I$G$J$k$Y$/(B + $B$3$N9T$N6a$/$KMh$k$h$&$K$7$F$_$^$7$g$&!#(B + +$BBgDq$N%3%^%s%I$O?tCM0z?t$r7+$jJV$72s?t$H2ro$H$O0[$J$kF/$-$r$7$^$9!#(B + +C-v $B$d(B M-v $B$O$^$?0c$C$?%?%$%W$NNc30$G$9!#$3$N>l9g!";XDj$5$l$??t$N9T$@(B +$B$12hLL$r%9%/%m!<%k$5$;$k$3$H$K$J$j$^$9!#Nc$($P(B C-u 8 C-v $B$O2hLL$r#89T(B +$B>e$K%9%/%m!<%k$5$;$^$9!#(B + +>> C-u 8 C-v $B$r;n$7$F$_$^$7$g$&!#(B + +$B2hLL$,>e$K#89T%9%/%m!<%k$7$?$O$:$G$9!#$^$?2hLL$r2<$K%9%/%m!<%k$5$;$k$K$O(B +M-v $B$K0z?t$rM?$($l$P$h$$$N$G$9!#(B + +$B$b$7(B X $B$d(B MS-Windows $B$N%&%#%s%I%&%7%9%F%`$r;H$C$F$$$k$N$J$i!"%9%/%m!<(B +$B%k%P!<$H8F$P$l$k=DD9$N;M3Q$$%(%j%"$,(B Emacs $B$N%&%#%s%I%&$N:8C<$K$"$k$O(B +$B$:$G$9!#$=$3$r%^%&%9$G%/%j%C%/$7$F2hLL$r%9%/%m!<%k$5$;$k$3$H$b$G$-$^$9!#(B + +>> $B%9%/%m!<%k%P!<$NCf$G%^%&%9$N??Cf$N%\%?%s$r2!$7$F$_$^$7$g$&!#%\%?%s(B + $B$r2!$7$?0LCV$G7h$^$kJ8>O$N0LCV$^$G2hLL$,%9%/%m!<%k$7$^$9!#(B + +>> $B%9%/%m!<%k%P!<$NCf$G??Cf$N%\%?%s$r2!$7$?$^$^%^%&%9$r>e2<$KF0$+$7$F(B + $B$_$^$7$g$&!#$=$l$K9g$;$F2hLL$,%9%/%m!<%k$9$k$N$,J,$k$O$:$G$9!#(B + + +$B!v(B Emacs $B$,%O%s%0$7$?;~!JF0$+$J$/$J$C$?;~!K(B +========================================== + +$B$b$7(B Emacs $B$,%3%^%s%I$KH?1~$7$J$/$J$C$?$i!"(BC-g $B$r%?%$%W$9$k$3$H$G(BEmacs +$B$r0BA4$K;_$a$k$3$H$,$G$-$^$9!#(BC-g $B$G$H$F$b;~4V$N$+$+$k%3%^%s%I$r;_$a$k(B +$B$3$H$,$G$-$^$9!#(B + +C-g $B$O$^$?!"?tCM0z?t$re$N%-!> C-u 100 $B$H%?%$%W$7$F0z?t#1#0#0$r@_Dj$7$F$+$i(B C-g $B$rBG$C$F$_$^$7$g$&!#(B + $B$=$l$+$i(B C-f $B$rBG$C$F2<$5$$!#0lJ8;z$7$+?J$^$J$$$O$:$G$9!#$J$<$J$i!"(B + C-g $B$,?tCM0z?t$r%-%c%s%;%k$7$?$+$i$G$9!#(B + +$B4V0c$C$F(B $B$r%?%$%W$7$F$7$^$C$?;~$b!"(BC-g $B$G$=$l$rC$;$^$9!#(B + + +$B!v;HMQIT2D(B (disabled) $B%3%^%s%I(B +================================== + +$B$$$/$D$+$N%3%^%s%I$O=i?4> C-x C-l $B$H%?%$%W$7$F$_$^$7$g$&!J$3$l$O;HMQIT2D%3%^%s%I$G$9!K!#(B + $B$=$l$+$i(B n $B$H%?%$%W$7$^$7$g$&!#(B + + +$B!v%&%#%s%I%&(B +============ + +Emacs $B$O4v$D$b$N%&%#%s%I%&$K!"$=$l$>$l8DJL$NJ8>O$rI=<($9$k$3$H$,$G$-$^(B +$B$9!#$I$&$d$C$FJ#?t$N%&%#%s%I%&$rA`:n$9$k$+$O8eDx@bL@$7$^$9$,!"$3$3$G$O!"(B +$B$I$&$d$C$FM>J,$J%&%#%s%I%&$r>C$7$F!"85$N0l$D$N%&%#%s%I%&$N>uBV$KLa$k$+(B +$B$r@bL@$7$^$9!#$=$l$O4JC1$G$9!#(B + + C-x 1 $B%&%#%s%I%&$r#1$D$K$9$k!J$D$^$jB>$N%&%#%s%I%&$rA4It>C$9!K(B + +$B$D$^$j(B C-x $B$rBG$C$F$+$i$5$i$K(B 1 $B$rBG$D$N$G$9!#$3$N%3%^%s%I$O%+!<%=%k$N(B +$B$"$k%&%#%s%I%&$r2hLLA4BN$K9-$2$^$9!#B>$N%&%#%s%I%&$OA4It>C$($^$9!#(B + +>> $B%+!<%=%k$r$3$N9T$K;}$C$F$-$F!"(BC-u 0 C-l $B$H%?%$%W$7$F$_$F2<$5$$!#(B +>> $BB3$$$F(B C-h k C-f $B$H%?%$%W$7$F2<$5$$!#(B + $B?7$7$$%&%#%s%I%&$,(B C-f $B%3%^%s%I$N@bL@J8$rI=<($9$k$?$a$K8=$l$k$H$H$b(B + $B$K!"$3$N%&%#%s%I%&$,$I$N$h$&$K=L$`$+$r8+$F2<$5$$!#(B + +>> C-x 1 $B$H%?%$%W$7$F!"@bL@J8$rI=<($7$F$$$?%&%#%s%I%&$,>C$($k$N$r8+$F2<$5$$!#(B + +$B$3$N%3%^%s%I(B (C-x 1) $B$O$3$l$^$G$K3P$($?%3%^%s%I$H$O0[$J$j!"#2$D$N%-!<(B +$B$+$i$J$j$^$9!#:G=i$N%-!<$,(B Control-x $B$G$9!#$3$N%-!<$O!"B?$/$N%3%^%s%I(B +$B$r;O$a$k$?$a$N:G=i$N%-!<$G$9!#$=$l$i$N%3%^%s%I$NB?$/$O%&%#%s%I%&!"%U%!(B +$B%$%k!"%P%C%U%!!"$=$l$i$K4X78$9$k$b$N$rA`:n$9$k$?$a$N$b$N$G!"#2$"$k$$$O(B +$B#3!"#48D$N%-!<$rI,MW$H$9$k$b$N$,$"$j$^$9!#(B + + +$B!vA^F~$H:o=|(B +============ + +$BJ8>O$rF~NO$7$?$1$l$P!"C1$K$=$l$r%?%$%W$7$F2<$5$$!#(BEmacs $B$O!"L\$K8+$($k(B +$BJ8;z!J(BA, 7, * $BEy!K$rJ8>O$G$"$k$H$_$J$9$N$G!"$=$l$i$O$=$N$^$^A^F~$5$l$^(B +$B$9!#(B$B!J2~9T%-!A0$KF~NO$7$?J8;z$r:o=|$9$k$K$O!"(B $B$r%?%$%W$7$^$9!#(B +$B$O!"(BEmacs $B0J30$G!":G8e$K%?%$%W$7$?J8;z$r:o=|$9$k$?$a$K;H$&%-!<%\!<%I>e(B +$B$N%-!<$G$9!#DL>o$O!"(B $B%-!<$N>eJ}$K$"$kBg$-$a$N%-!<$G!"(B +"Delete" $B$H$+(B "Del" $B$H$+(B "Backspace" $B$H=q$$$"$j$^$9!#(B + +$B$b$7!"$=$N$=$l$,(B "Backspace" $B$H=q$$$F$"$k$J$i!"$=$l$,(B $B%-!<$G$9!#(B +$B$=$N>l9g!"B>$N>l=j$K(B "Delete" $B$H=q$$$F$"$k%-!<$,$"$k$+$b$7$l$^$;$s$,!"(B +$B$=$l$O(B $B%-!<$G$O$"$j$^$;$s!#(B + +$B$h$j0lHLE*$K8@$&$J$i!"(B $B$O8=:_%+!<%=%k$N$"$k0LCV$ND>A0$NJ8;z$r(B +$B:o=|$7$^$9!#(B + +>> $BJ8;z$r$$$/$D$+%?%$%W$7!"$=$l$+$i$=$l$i$r(B $B$r;H$C$F:o=|$7(B + $B$F2<$5$$!#$3$N%U%!%$%k$rJQ99$9$k$3$H$r5$$K$9$kI,MW$O$"$j$^$;$s!#%*(B + $B%j%8%J%k$NF~Lg%,%$%I%U%!%$%k$OJQ99$5$l$^$;$s$+$i!#:#8+$F$$$k%U%!%$(B + $B%k$O$"$J$?$N$?$a$N%3%T!<$G$9!#(B + +$BJ8>O$N0l9T$,2hLL$K<}$^$i$J$$DxD9$/$J$C$?>l9g!"$=$N9T$O2hLL>e$N.$5$J6J$C$?Lp0u!K$O!"$=$N(B +$B9T$,7QB3$5$l$F$$$k$3$H$rI=$7$F$$$^$9!#(B + +>> $B2hLL$N1&C<$^$GJ8>O$rF~NO$7!"$5$i$KF~NO$rB3$1$F2<$5$$!#(B + $B7QB39T$,$G$-$k$N$,J,$k$G$7$g$&!#(B + +>> $B$r;H$C$F#19T$K<}$^$k$H$3$m$^$G8=:_$N9T$rC;$/$7$F$_$F$/$@$5(B + $B$$!#7QB39T$O>C$($^$9!#(B + +$B2~9TJ8;z$bB>$NJ8;z$HF1$8$h$&$K:o=|$G$-$^$9!##2$D$N9T$N4V$N2~9TJ8;z$r>C(B +$B$9$H$=$l$i$N9T$,9g$o$5$j#1$D$N9T$K$J$j$^$9!#$b$7$=$N9g$o$5$C$?9T$,2hLL(B +$B$NI}$h$j$bD9$$>l9g$O!"7QB39T$H$J$C$FI=<($5$l$^$9!#(B + +>> $B%+!<%=%k$r9T$N@hF,$K0\F0$7!"(B $B$r%?%$%W$7$F2<$5$$!#8=:_$N9T$,(B + $B$=$NA0$N9T$H$D$J$,$j$^$9!#(B + +>> $B$r%?%$%W$7$F!":#:o=|$7$?2~9TJ8;z$r$^$?A^F~$7$F2<$5$$!#(B + +Emacs $B$N$[$H$s$I$N%3%^%s%I$O!"7+$jJV$7$N2s?t;XDj$G$-$k$3$H$r;W$$=P$7$F(B +$B2<$5$$!#$3$l$O!"J8;z$NA^F~$K$D$$$F$bEv$F$O$^$j$^$9!#(B + +>> C-u 8 * $B$H%?%$%W$9$k$H(B ******** $B$,A^F~$5$l$^$9!#;n$7$F$_$^$7$g$&!#(B + +$B$3$l$G!"(BEmacs $B$GJ8>O$rF~NO$7!"$^$?4V0c$$$r=$@5$9$k$b$C$H$b4pK\E*$JJ}K!(B +$B$r3X$s$@$3$H$K$J$j$^$9!#J8;z$HF1$8MM$K!"C18l$d9T$b:o=|$9$k$3$H$,$G$-$^(B +$B$9!#:o=|A`:n$K$D$$$FMWLs$9$k$H $B%+!<%=%k$ND>A0$NJ8;z$r:o=|!J(Bdelete$B!K(B + C-d $B%+!<%=%k$N$"$kJ8;z$r:o=|!J(Bdelete$B!K(B + + M- $B%+!<%=%k$ND>A0$NC18l$r>C5n!J(Bkill$B!K(B + M-d $B%+!<%=%k0LCV$N8e$m$K$"$kC18l$r>C5n!J(Bkill$B!K(B + + C-k $B%+!<%=%k0LCV$+$i9TKv$^$G$r>C5n!J(Bkill$B!K(B + M-k $B%+!<%=%k0LCV$+$iJ8Kv$^$G$r>C5n!J(Bkill$B!K(B + + $B$H(B C-d $B$KBP$9$k(B M- $B$H(B M-d $B$O!"(BC-f $B$H(B M-f $B$G;O$^$C$?N`(B +$B;w@-$r$^$?3HD%$7$^$9!#$3$3$G(B $B$O%3%s%H%m!<%kJ8;z$G$O$"$j$^$;$s(B +$B$,!"$^$"!"$=$l$O5$$K$7$J$$$G2<$5$$!#(BC-k $B$H(B M-k $B$N4X78$O(B C-e $B$H(B M-e $B$N(B +$B4X78!J9T$HJ8$NBPHf!K$HF1$8$G$9!#(B + +$B%P%C%U%!$N$I$NItJ,$G$b>C5n!J(Bkill$B!K$G$-$kC10l$NJ}K!$,$"$j$^$9!#>C5n$7$?(B +$B$$ItJ,$N;O$a$+=*$j$K0\F0$7!"(B C-@ $B$b$7$/$O(B C-SPC $B$r%?%$%W$7$^$9(B (SPC $B$O(B +$B%9%Z!<%9%P!<$N$3$H$3$G$9!K!#$=$l$+$i>C5n$7$?$$ItJ,$NH?BP$NC<$K0\F0$7!"(B +C-w $B$r%?%$%W$7$^$9!#$3$l$G$=$NItJ,$,>C5n$5$l$^$9!#(B + +>> $B%+!<%=%k$rA0$N%Q%i%0%i%U$N:G=i$NJ8;z!V%P!W$K0\F0$5$;$^$7$g$&!#(B +>> $B$=$l$+$i(B C-SPC $B$r%?%$%W$7$^$9!#(B"Mark set" $B$H$$$&%a%C%;!<%8$,2hLL$N(B + $B2> $B$5$i$K%+!<%=%k$r> C-w $B$r%?%$%W$7$^$7$g$&!#!V%P!W$+$i!V=*!W$ND>A0$^$G$,>C5n$5$l$^$9!#(B + +$B!V>C5n!J(Bkill$B!K!W$H!V:o=|!J(Bdelete$B!K!W$N0c$$$K5$$r$D$1$F2<$5$$!#>C5n$7$?(B +$BJ8>O$O:FEYA^F~$G$-$^$9$,!":o=|$7$?$b$N$O:FEYA^F~$9$k$3$H$O$G$-$^$;$s!#(B +$B0lC6>C5n$7$?$b$N$r:FEYA^F~$9$k$3$H$r:FF~!J(Byanking$B!K$H8F$S$^$9!#0lHL$K!"(B +$BBgNL$NJ8>O$r>C$9%3%^%s%I$O!"$=$NJ8>O$r>C5n$7$^$9$,!J$@$+$i8e$G:FF~$G$-(B +$B$^$9!K!"0lJ8;z$H$+6uGr9T$d6uGrJ8;z$N$_$r>C$9%3%^%s%I$O!"$=$l$i$r:o=|$7(B +$B$^$9!J$@$+$i$=$l$i$O:FF~$G$-$^$;$s!K!#(B + +>> $B6u9T$G$J$$9T$N@hF,$K%+!<%=%k$r0\F0$5$;$F2<$5$$!#(B + $B$=$l$+$i(B C-k $B$G$=$N9T$NJ8>O$r>C5n$7$F2<$5$$!#(B +>> $B$b$&0lEY(B C-k $B$r%?%$%W$7$F$/$@$5$$!#$=$N9T$KB3$/2~9TJ8;z$,>C$5$l$k$N(B + $B$,J,$j$^$7$?$+!#(B + +$B0l2sL\$N(B C-k $B$O$=$N9T$NJ8>O$r>C$7!"#22sL\$N(B C-k $B$O$=$N9T<+?H$r>C$7$F$=(B +$B$N@h$N9T$r>e$2$F$-$^$9!#(BC-k $B$N?tCM0z?t$N07$$$OFCC$7$^$9!#$3$l$OC1$J$k7+$jJV$7$G$O$"$j$^$;$s!#(BC-u 2 +C-k $B$O#2$D$N9T$H$=$l$>$l$KB3$/2~9TJ8;z$r>C$7$^$9$,!"(BC-k $B$r#2EY%?%$%W$7(B +$B$F$b$=$&$O$J$j$^$;$s!#(B + +$B>C5n$7$?J8>O$rI|3h$5$;$kA`:n$r:FF~!J(Byanking$B!K$H8F$S$^$9!#>C$7$?J8>O$O!"(B +$B85$HF1$8>l=j$K$G$b85$H$O0c$&>l=j$K$G$b!"$5$i$K$OJL$N%U%!%$%k$K$b:FF~$G(B +$B$-$^$9!#$^$?!"2?EY$b:FF~$9$k$3$H$GJ8>O$N%3%T!<$rJ#?t:n$k$3$H$b$G$-$^$9!#(B + +$B:FF~$N$?$a$N%3%^%s%I$O(B C-y $B$G$9!#$3$l$O!":G8e$K>C5n$7$?J8>O$r8=:_%+!<(B +$B%=%k$,$"$k0LCV$K:FF~$7$^$9!#(B + +>> $B;n$7$F2<$5$$!#(BC-y $B$r%?%$%W$7$F:G8e$K>C5n$7$?J8>O$r:FF~$7$^$7$g$&!#(B + +C-k $B$rB3$1$FC5n$7$?3F9T$OA4It$^$H$a$FJ]B8$5$l$k$N$G!"0l2s(B +$B$N(B C-y $B$G$=$l$i$N9T$,A4It:FF~$5$l$^$9!#(B + +>> C-k $B$r2?EY$+B3$1$F%?%$%W$7$F$_$F2<$5$$!#(B + +$B$5$"!">C5n$7$?J8>O$r:FF~$7$^$7$g$&!#(B + +>> C-y $B$r%?%$%W$7$F2<$5$$!#O$r%3%T!<$9$k$+J,$j$^$7$?$M!#(B + +$B2a5n$K>C5n$7$?J8>O$r:FF~$7$?$$$N$K!"JL$NJ8>O$r$=$N8e>C5n$7$?;~$O$I$&$9(B +$B$l$P$h$$$G$7$g$&!)(B C-y $B$O:G8e$K>C5n$7$?$b$N$r:FF~$7$^$9!#$G$b$=$l$G$h(B +$B$j0JA0$K>C5n$7$?J8>O$,$J$/$J$k$o$1$G$O$"$j$^$;$s!#$=$&$$$&J8>O$O(B M-y +$B$G:FF~$G$-$^$9!#(BC-y $B$G:G8e$K>C5n$7$?J8>O$r:FF~$7$?D>8e$K(BM-y $B$r%?%$%W$9(B +$B$k$H!"$=$N:FF~$5$l$?J8>O$O$=$l0JA0$K>C5n$7$?$b$N$KJQ99$5$l$^$9!#2?EY$b(B +$BB3$1$F(B M-y $B$r%?%$%W$9$k$H!"$5$i$KA0$K>C5n$7$?J8>O$r8F$SLa$;$^$9!#K>$_(B +$B$NJ8>O$K9T$-Ev$C$?$i!"$=$l$O$=$N$^$^$K$7$FJT=8:n6H$rB3$1$l$P$h$$$N$G$9!#(B + +$B$"$k2s?t$@$1(B M-y $B$r7+$jJV$7$?$i!"$^$?:G=i!J$D$^$j:G8e$K>C5n$7$?J8>O!K(B +$B$KLa$j$^$9!#(B + +>> $B0l9T>C5n$7!"JL$N9T$K9T$C$F$=$N9T$r>C5n$7$F2<$5$$!#(B + $B$=$l$+$i(B C-y $B$G#2HVL\!J:G8e!K$K>C5n$7$?9T$r:FF~$7$F2<$5$$!#(B + $BB3$$$F(B M-y $B$G$=$N9T$r:G=i$K>C5n$7$?9T$KJQ$($F2<$5$$!#(B + M-y $B$rB3$1$I$&$J$k$+8+$F$_$^$7$g$&!##2HVL\$K>C5n$7$?9T$,La$C$FMh$k(B + $B$^$G(B M-y $B$r7+$jJV$7!"$5$i$K$b$&2?EY$+(B M-y $B$r$7$^$7$g$&!#(B + $B$b$7K>$_$J$i(B M-y $B$K@5$b$7$/$OIi$N?tCM0z?t$rM?$($F$bNI$$$G$7$g$&!#(B + + +$B!vC$7(B(UNDO) +================ + +$B$b$7!"J8>O$rJQ99$7$?8e$G$=$NJQ99$O4V0c$$$@$C$?$H;W$C$?$i!"C$7(B +$B!J(Bundo$B!K%3%^%s%I(B C-x u $B$G$=$NJQ99$rC$9$3$H$,$G$-$^$9!#(B + +$BDL>o!"(BC-x u $B$O0l$D$N%3%^%s%I$K$h$kJQ99$rC$7$^$9!#B3$1$F2?EY$b(B C-x +u $B$r9T$($P$=$N$?$S$K0l$DA0$N%3%^%s%I$,C$7$K$J$j$^$9!#(B + +$B$?$@$7$3$l$K$ONc30$,Fs$D$"$j$^$9!#$^$:!"J8>O$rJQ99$7$J$$%3%^%s%I$OC$7$K$J$j$^$;$s!#%+!<%=%k0\F0$d%9%/%m!<%k$N%3%^%s%I$,$=$l$KEv$?$j$^$9!#(B +$B$=$l$+$i!"J8;z$NA^F~!J<+8JA^F~%3%^%s%I!K$O(B 20 $B8D0l$^$H$a$G07$o$l$^$9!#(B +$B$3$l$OJ8;z$NA^F~$rC$9$?$a$N(B C-x u $B$N2s?t$r8:$i$9$?$a$G$9!#(B + +>> $B$3$N9T$r(BC-k$B$G>C$7$F2<$5$$!#$=$7$F!"(BC-x u $B$GLa$7$F2<$5$$!#(B + +C-_ $B$bC$7!J(Bundo$B!K$r9T$J$&%3%^%s%I$G$9!#5!G=$O!"(BC-x u $B$HF1$8$G$9$,!"(B +$BB3$1$F2?EY$b%?%$%W$9$k>l9g$O$h$jJXMx$G$9!#(BC-_ $B$NLdBj$O!"%-!<%\!<%I$K$h$C(B +$B$F$O$I$&$d$C$F%?%$%W$9$k$N$+J,$j$E$i$$;v$G$9!#$@$+$i(B C-x u $B$,$"$k$N$G(B +$B$9!#CO$N:o=|$bJ8>O$N>C5n$HF1MM$KC$;$^$9!#:o=|$H>C5n$N0c$$$O:FF~$G$-(B +$B$k$+$I$&$+$N0c$$$@$1$G!"C$7$K$O4X78$"$j$^$;$s!#(B + + +$B!v%U%!%$%k(B +========== + +$BJT=8$7$F$$$kJ8>O$r915WE*$JJ*$K$9$k$K$O!"$=$l$r%U%!%$%k$KJ]B8$7$J$1$l$P(B +$B$J$j$^$;$s!#$5$b$J$$$H!"(BEmacs $B$N=*N;$HF1;~$K$=$l$O$J$/$J$C$F$7$^$$$^$9!#(B +$BJ8>O$r%U%!%$%k$K%;!<%V!JJ]B8!K$9$k$K$O!"J8>O$rF~NO$9$kA0$K!"$^$:%U%!%$(B +$B%k$r3+$+$J$1$l$P$J$j$^$;$s!J%U%!%$%k$r(B "visit" $B$9$k$H$b8@$$$^$9!K!#(B + +$B%U%!%$%k$r3+$/(B (find) $B$H$O!"$=$N%U%!%$%k$NCf?H$r(B Emacs $B$G8+$k$3$H$r0U(B +$BL#$7$^$9!#?'!9$J0UL#$G!"$=$l$O$"$J$?$,%U%!%$%k<+?H$rJT=8$7$F$$$k$+$NMM(B +$B$G$9!#$7$+$7!"(BEmacs $B$G9T$&JQ99$O%U%!%$%k$r%;!<%V$9$kKx$O915WE*$J$b$N$H(B +$B$J$j$^$;$s!#$3$l$O!"$=$l$rK>$^$J$$$N$K!"ESCf$^$GJQ99$7$?%U%!%$%k$,;D$k(B +$B$N$rHr$1$k$?$a$G$9!#%;!<%V$7$?8e$G$5$(!"JQ99$7$?$b$N$,4V0c$C$F$$$?;~$N(B +$B$?$a$K!"85$N%U%!%$%k$OL>A0$rJQ$($F;D$5$l$^$9!#(B + +$B2hLL$N0lHV2<6a$/$K!"(B"-J:-- TUTORIAL.ja" $B$NMM$JJ8;zNs$G;O$^$j(B "----" $B$G(B +$B=*$C$F$$$k9T$,$"$k$O$:$G$9!#DL>o$O2hLL$N$3$NItJ,$K8=:_3+$$$F$$$k%U%!%$(B +$B%k$NL>A0$,I=<($5$l$F$$$^$9!#:#$O(B "TUTORIAL.ja" $B$H$$$&L>$N%U%!%$%k!J$3(B +$B$l$O(B Emacs $BF~Lg%,%$%I$N$"$J$?MQ$N%3%T!<$G$9!K$r3+$$$F$$$^$9!#(BEmacs $B$G(B +$B%U%!%$%k$r3+$/$H$=$N%U%!%$%k$NL>A0$,$3$NItJ,$K8=$l$^$9!#(B + +$B%U%!%$%k$r3+$/$?$a$N%3%^%s%I$O$3$l$^$G3X$s$@$b$N$H$O0c$$!"%U%!%$%k$NL>(B +$BA0$r;XDj$7$J$1$l$P$J$j$^$;$s!#$3$l$r!"%3%^%s%I$,!VCl9g$O0z?t$O%U%!%$%kL>$G$9!#$rJ9$$$F$-$^$9!#%?%$%W$7$?%U%!%$%kL>(B +$B$O2hLL$N:G2<9T$KI=<($5$l$^$9!#$3$N:G2<9T$O!"$3$&$$$&F~NO$N$?$a$K;H$C$F(B +$B$$$k;~$O!"%_%K%P%C%U%!$H8F$S$^$9!#DL>o$NJT=8%3%^%s%I$G%U%!%$%kL>$rJT=8(B +$B$9$k$3$H$b$G$-$^$9!#(B + +$B%U%!%$%kL>$NF~NOCf!J$"$k$$$O$=$NB>$N%_%K%P%C%U%!F~NOCf!K$K(B C-g $B$K$h$C(B +$B$F%3%^%s%I$r%-%c%s%;%k$G$-$^$9!#(B + +>> C-x C-f $B$r%?%$%W$7$F$+$i(B C-g $B$r%?%$%W$7$F$_$^$7$g$&!#%_%K%P%C%U%!$,(B + $BC$5$l!"$=$l$r;H$C$F$$$?%3%^%s%I(B C-x C-f $B<+BN$bC$5$l$^$9!#(B + $B$@$+$i!"%U%!%$%k$O2?$b3+$+$l$^$;$s!#(B + +$B%U%!%$%kL>$rF~NO$7$?$i!"(B$B%-!<$r%?%$%W$7F~NO$r40N;$5$;$^$9!#$=$&(B +$B$9$k$H!"(BC-x C-f $B%3%^%s%I$,Av$j;O$a;XDj$7$?%U%!%$%k$r3+$-$^$9!#%_%K%P%C(B +$B%U%!$O(B C-x C-f $B%3%^%s%I$N=*N;$H$H$b$K>C$($^$9!#(B + +$B%U%!%$%k$NFbMF$,2hLL$KI=<($5$l$k$H!"$=$NFbMF$rJQ99$9$k$3$H$,$G$-$^$9!#(B +$B2C$($?JQ99$r915WE*$J$b$N$K$7$?$1$l$P!"O$r%U%!%$%k$K%3%T!<$7$^$9!#=i$a$F$3$l$r(B +$BA0$KIU$1BX$($k$N$G!"$=$NFbMF$O<:(B +$B$o$l$^$;$s!#$=$N?7$7$$L>A0$O85$N%U%!%$%k$NL>A0$N:G8e$K(B "~" $B$r$D$1$?$b(B +$B$N$G$9!#(B + +$B%;!<%V$7=*$o$k$H!"%;!<%V$7$?%U%!%$%k$NL>A0$,I=<($5$l$^$9!#3d$HIQHK$K%;!<(B +$B%V$7$?J}$,NI$$$G$7$g$&!#%7%9%F%`$,Mn$A$F$b$;$C$+$/$N:n6H$,%Q%"$K$J$i$J(B +$B$$$h$&$K!#(B + +>> C-x C-s $B$H%?%$%W$7$F$3$NF~Lg%,%$%I$N%3%T!<$r%;!<%V$7$F2<$5$$!#(B + $B2hLL:G2O$rF~NO$7$F$$$-$^$9!#(B +$B%U%!%$%k$r%;!<%V$7$h$&$H$7$?;~$K=i$a$F?7$7$$%U%!%$%k$,:n$i$l!":#$^$GF~(B +$BNO$7$?FbMF$,$=$l$K=q$-9~$^$l$^$9!#$=$l0J9_$O!"$"$J$?$O4{B8$N%U%!%$%k(B +$B!J$?$C$?:#:n$i$l$?%U%!%$%k!K$rJT=8$7$F$$$k$H;W$C$F2<$5$$!#(B + + +$B!v%P%C%U%!(B +========== + +$B#2$DL\$N%U%!%$%k$r(B C-x C-f $B$G3+$$$F$b!":G=i$N%U%!%$%k$O(B Emacs $BFbIt$K;D$C(B +$B$?$^$^$G$9!#$=$C$A$N%U%!%$%k$KLa$k$K$O$b$&0lEY(B C-x C-f $B$G$=$N%U%!%$%k(B +$B$r3+$1$P$h$$$N$G$9!#$3$&$d$C$F!"4v$D$b$N%U%!%$%k$r(B Emacs $B$G3+$/$3$H$,(B +$B$G$-$^$9!#(B + +>> "foo" $B$H$$$&L>$N%U%!%$%k$r:n$j$^$7$g$&!#(BC-x C-f foo $B$G$9!#(B + $B2?$+J8>O$rF~$l!"JT=8$7!"(BC-x C-s $B$G(B "foo" $B$r%;!<%V$7$F2<$5$$!#(B + $B:G8e$K(B C-x C-f TUTORIAL.ja $B$H%?%$%W$7(B + $BF~Lg%,%$%I$KLa$j$^$7$g$&!#(B + +Emacs $B$O%U%!%$%k$NFbMF$r%P%C%U%!!J(Bbuffer$B!K$H8F$P$l$k$b$N$NCf$K3JG<$7$F(B +$B$$$^$9!#%U%!%$%k$r3+$/$H?7$7$$%P%C%U%!$,$G$-$^$9!#(BEmacs $B$,8=:_;}$C$F$$(B +$B$k%P%C%U%!$N%j%9%H$r8+$k$K$O!"> C-x C-b $B$r;n$7$F$_$^$7$g$&!#(B + +$B3F%P%C%U%!$,$I$s$JL>A0$K$J$C$F$$$k$+!"$=$l$,3+$$$F$$$k%U%!%$%k$NL>A0$,(B +$B$I$&$J$C$F$$$k$+8+$F2<$5$$!#(BEmacs $B$N%&%#%s%I%&Fb$K$"$kJ8>O$O$I$l$b!"$$(B +$B$:$l$+$N%P%C%U%!$N0lIt$G$9!#(B + +>> C-x 1 $B$H%?%$%W$7$F%P%C%U%!%j%9%H$r>C$7$^$7$g$&!#(B + +$B%P%C%U%!$,J#?t$"$C$F$b!"$"$k;~E@$G$O$=$N0l$D$@$1$,!V8=:_!W$N%P%C%U%!$G(B +$B$9!#$=$l$O$"$J$?$,JT=8Cf$N%P%C%U%!$G$9!#$b$7B>$N%P%C%U%!$rJT=8$7$?$1$l(B +$B$P!"$=$N%P%C%U%!$K@ZBX$($J$1$l$P$J$j$^$;$s!#%U%!%$%k$r3+$$$F$$$k%P%C%U%!(B +$B$K@ZBX$($k$K$O!"$^$?(B C-x C-f $B$G$=$N%U%!%$%k$r3+$1$PNI$$$G$7$g$&!#$G$b!"(B +$B$b$C$H4JC1$JJ}K!$b$"$j$^$9!#(BC-x b $B%3%^%s%I$G$9!#$3$N%3%^%s%I$r%?%$%W$7(B +$B$F!"%P%C%U%!$NL>A0$rF~NO$9$l$PNI$$$N$G$9!#(B + +>> C-x b foo $B$H%?%$%W$7$F!"(B "foo" $B$H$$$&%U%!%$%k$r3+$$$F$$$k(B + "foo" $B%P%C%U%!$KLa$C$F$_$^$7$g$&!#$=$l$+$i(B C-x b TUTORIAL.ja + $B$H%?%$%W$7$F!"$3$N%,%$%I$KLa$j$^$7$g$&!#(B + +$BIaDL$O!"%P%C%U%!$NL>A0$H$=$l$,3+$$$F$$$k%U%!%$%k$NL>A0!J%G%#%l%/%H%jL>(B +$B$NItJ,$r=|$$$F!K$OF1$8$G$9!#Nc30$b$"$j$^$9!#(BC-x C-b $B$G:n$C$?%P%C%U%!%j(B +$B%9%H$O>o$K3F%P%C%U%!$NL>A0$rI=<($7$^$9!#(B + +$B$"$J$?$,(B Emacs $B$N%&%#%s%I%&$G8+$kJ8>O$O$I$l$b!"$$$:$l$+$N%P%C%U%!$N0l(B +$BIt$G$9!#%P%C%U%!$K$h$C$F$OBP1~$9$k%U%!%$%k$,L5$$$b$N$b$"$j$^$9!#Nc$($P(B +"*Buffer List*" $B$H$$$&L>A0$N%P%C%U%!$K$O%U%!%$%k$,$"$j$^$;$s!#$3$N%P%C(B +$B%U%!$O$"$J$?$,(B C-x C-b $B$G:n$C$?%P%C%U%!%j%9%H$rJ];}$7$F$$$k%P%C%U%!$G(B +$B$9!#(B"*Messages*" $B$H$$$&%P%C%U%!$b%U%!%$%k$r;}$A$^$;$s!#$3$N%P%C%U%!$O!"(B +Emacs $B$,:G2<9T$KI=<($9$k%a%C%;!<%8$rJ];}$7$F$$$^$9!#(B + +>> C-x b *Messages* $B$H%?%$%W$7$F%a%C%;!<%8$N%P%C%U%!$r8+$F$_(B + $B$^$7$g$&!#$=$l$+$i(B C-x b TUTORIAL.ja $B$G$3$N%,%$%I$KLa$C$F(B + $B2<$5$$!#(B + +$B$"$k%U%!%$%k$NFbMF$K$J$s$i$+$NJQ99$r2C$(!"$=$l$+$iB>$N%U%!%$%k$r3+$$$F(B +$B$b!":G=i$N%U%!%$%k$O$^$@%;!<%V$5$l$^$;$s!#JQ99$O(B Emacs $B$NFbIt!"$=$N%U%!(B +$B%$%k$KBP1~$9$k%P%C%U%!$NCf$K;D$C$?$^$^$G$9!##2HVL\$N%U%!%$%k$N%P%C%U%!(B +$B$r:n$C$?$j!"JT=8$7$?$j$7$F$b!":G=i$N%U%!%$%k$N%P%C%U%!$K$O2?$N1F6A$b$"(B +$B$j$^$;$s!#$3$l$O$H$F$bLr$KN)$A$^$9$,!":G=i$N%U%!%$%k$N%P%C%U%!$r%;!<%V(B +$B$9$k2?$+JXMx$JJ}K!$,I,MW$@$H$$$&$3$H$G$b$"$j$^$9!#(B C-x C-s $B$G%;!<%V$9(B +$B$k$?$a$K(B C-x C-f $B$G85$N%P%C%U%!$KLa$k$N$OLq2p$G$9!#$=$3$G$l$K$D$$$F!"$=$l(B +$B$r%;!<%V$9$k$+$I$&$+$rJ9$$$F$-$^$9!#(B + +>> $B0l9TJ8>O$rF~NO$7$F$+$i(B C-x s $B$H%?%$%W$7$F2<$5$$!#(B + TUTORIAL.ja $B$H$$$&%P%C%U%!$r%;!<%V$9$k$+$I$&$+J9$$$F$/$k$O$:$G$9!#(B + $B!V$O$$!W$HEz$($k$?$a$K(B "y" $B$H%?%$%W$7$F2<$5$$!#(B + + +$B!v%3%^%s%I$N3HD%(B +================ + +Emacs $B$K$O!"%3%s%H%m!<%kJ8;z$d%a%?J8;z$K3dEv$F$i$l$k$h$j$b$:$C$H$:$C$H(B +$BB?$/$N%3%^%s%I$,$"$j$^$9!#$3$l$i$r07$&$?$a$K!"3HD%!J(BeXtend$B!K%3%^%s%I$r(B +$B;H$$$^$9!#$=$l$K$O!"0J2<$N#2$D$NA0$K$h$k3HD%!#B3$1$F%3%^%s%I$NL>A0$rF~NO$7$^$9!#(B + +$B$3$l$i$O!"0lHLE*$K$OJXMx$@$1$l$I$b!"$3$l$^$G8+$F$-$?$b$N$[$I$OIQHK$KMQ(B +$B$$$i$l$J$$%3%^%s%I$G$9!#(BC-x C-f $B!J%U%!%$%k$r3+$/!K$d(B C-x C-s$B!J%U%!%$%k(B +$B$r%;!<%V!K$O$3$NCg4V$G$9!#B>$K!"(BC-x C-c$B!J(BEmacs $B$r=*N;!K$b$=$&$G$9!#(BC-x +C-c $B$K4X$7$F$O!"$=$l$^$G$K2C$($?JQ99$,L5$/$J$k$N$r?4G[$9$kI,MW$O$"$j$^(B +$B$;$s!#(BEmacs $B$r=*N;$5$;$kA0$K!"JQ99$5$l$?3F%U%!%$%k$r%;!<%V$9$k$+$I$&$+(B +$BJ9$$$F$-$^$9$+$i!#(B + +C-z $B$O!V0l;~E*$K!W(B Emacs $B$rH4$1$k%3%^%s%I$G$9!#$^$?F1$8(B Emacs $B%;%C%7%g(B +$B%s$KLa$k$3$H$,$G$-$^$9!#(B + +$B$=$l$,$G$-$k%7%9%F%`>e$J$i!"(BC-z $B$O(B Emacs $B$r!VCfCG!W$5$;$^$9!#$D$^$j(B +Emacs $B$r=*N;$9$k$3$H$J$/!"%3%^%s%I%7%'%k$KLa$k$3$H$,$G$-$^$9!#BgJ}$NI8(B +$B=`E*$J%7%'%k$J$i!"(B`fg' $B%3%^%s%I$b$7$/$O(B `%emacs' $B$K$h$C$F(B Emacs $B$r:F3+(B +$B$G$-$^$9!#(B + +$B!VCfCG!W5!G=$r$N%W%m%0%i%`$rAv$i$;$F$+$i$^$?(B Emacs $B$KLa$k$3$H$,$G$-(B +$B$k$h$&$K$7$^$9!#$3$N>l9gK\Ev$K(B Emacs $B$+$iH4$1=P$k$o$1$G$O$"$j$^$;$s$N(B +$B$G!"%7%'%k%3%^%s%I$N(B `exit' $B$,$=$N%5%V%7%'%k$+$i(B Emacs $B$KLa$kIaDL$N$d(B +$B$jJ}$G$9!#(B + +C-x C-c $B$O%m%0%"%&%H$7$h$&$H;W$&;~$K;H$&$b$N$G$9!#%a!<%k%D!<%k!J(Bmail +$B%3%^%s%IEy!K$d$=$NB>$NMM!9$J%"%W%j%1!<%7%g%s%W%m%0%i%`$,5/F0$7$?(B Emacs +$B$+$iH4$1=P$k>l9g$K;H$&$N$b@5$7$$$d$jJ}$G$9!#$3$l$i$N%W%m%0%i%`$O(B Emacs +$B$NCfCG$K$I$&BP=h$7$FNI$$$+CN$i$J$$$G$7$g$&$+$i!#$7$+$7$J$,$i!"IaDL$N>l(B +$B9g$O!"%m%0%"%&%H$7$h$&$H$7$J$$8B$j$O(B Emacs $B$r=*N;$5$;$k$h$j$O(B C-z $B$GCf(B +$BCG$5$;$kJ}$,NI$$$G$7$g$&!#(B + +C-x $B%3%^%s%I$O$?$/$5$s$"$j$^$9!#$3$l$^$G$K!"0J2<$r3X$S$^$7$?!#(B + + C-x C-f $B%U%!%$%k$r3+$/!J(BFind$B!K(B + C-x C-s $B%U%!%$%k$N%;!<%V!J(BSave$B!K(B + C-x C-b $B%P%C%U%!$N%j%9%H%"%C%W(B + C-x C-c Emacs $B$r=*N;(B + C-x 1 $B%&%#%s%I%&$r#1$D$K$9$k!J$D$^$jB>$N%&%#%s%I%&$rA4It>C$9!K(B + C-x u $BC$7(B + +$BL>A0$K$h$k3HD%%3%^%s%I$K$O!"$"$^$j;H$o$J$$$b$N$d!"FCDj$N%b!<%I$G$7$+;H(B +$B$o$J$$$b$N$,$"$j$^$9!#$?$H$($P(B replace-string $B$G$9$,!"$3$l$OJ8;zNs$rCV(B +$B49$9$k$b$N$G$9!#(BM-x $B$r%?%$%W$9$k$H!"(BEmacs $B$O2hLL$N:G2<9T$K(B M-x $B$HI=<((B +$B$7F~NO$rB%$9$N$G!"$=$3$K%3%^%s%I$NL>A0!J$3$N>l9g(B "replace-string"$B!K$r(B +$BF~$l$J$1$l$P$J$j$^$;$s!#(B"repl s" $B$H$@$1%?%$%W$9$k$H(B Emacs $B$,%3%^(B +$B%s%IL>$rJd40$7$F$/$l$^$9!#!J(B $B$O%?%V%-!<$G$9!#IaDL$O!"%-!<%\!<%I$N(B +$B:8C$rF~$l(B +$B$?$i(B $B$rBG$C$F2<$5$$!#(B + +"Replace string" $B%3%^%s%I$K$O0z?t$,Fs$DI,MW$G$9!#$I$NJ8;zNs$r$I$&CV49(B +$B$9$k$+$G$9!#3F0z?t$rF~NO$9$k$?$S$K(B $B$rBG$C$F2<$5$$!#(B + +>> $B%+!<%=%k$r$3$3$+$i#29T2<$N6u9T$K0\F0$5$;$F2<$5$$!#(B + M-x repl schangedAltered $B$H%?%$%W$7$^$7$g$&!#(B + + $B$3$N9T$,$I$&JQ$o$k$+(B(changed)$B8+$^$7$g$&!#$"$J$?$O%+!<%=%k0J9_A4It$N(B + c-h-a-n-g-e-d $B$H$$$&8l$r(B "altered" $B$KJQ$($?$N$G$9!#(B + + +$B!v<+F0%;!<%V(B +============ + +$B%U%!%$%k$KJQ99$r2C$($F$^$@%;!<%V$7$F$$$J$$>l9g!"$=$l$i$NJQ99$O7W;;5!$,(B +$B%/%i%C%7%e$9$k$H<:$o$l$F$7$^$&2DG=@-$,$"$j$^$9!#$=$&$$$&;vBV$rHr$1$k$?(B +$B$a!"JT=8Cf$N3F%U%!%$%k$K$D$$$F<+F0%;!<%V%U%!%$%k$,Dj4|E*$K=q$+$l$^$9!#(B +$B<+F0%;!<%V%U%!%$%k$OF,$H$*?,$K(B # $B$,IU$$$F$$$^$9!#Nc$($P(B "hello.c" $B$H$$(B +$B$&%U%!%$%k$N<+F0%;!<%V%U%!%$%k$O(B "#hello.c#" $B$G$9!#DL>o$NJ}K!$G%U%!%$(B +$B%k$r%;!<%V$7$?$H$-$K!"$=$&$$$&<+F0%;!<%V%U%!%$%k$O>C$5$l$^$9!#(B + +$B7W;;5!$,%/%i%C%7%e$7$?>l9g!"<+F0%;!<%V$5$l$?JT=8$r2sI|$5$;$k$3$H$,$G$-(B +$B$^$9!#IaDL$K%U%!%$%k!JJT=8$7$F$$$?$b$N$G!"<+F0%;!<%V%U%!%$%k$8$c$"$j$^(B +$B$;$s!K$r3+$-!"$=$l$+$i(B M-x recover file $B$H%?%$%W$9$k$N$G$9!#3N(B +$BG'$r5a$a$F$-$^$9$N$G!"(Byes $B$H%?%$%W$7<+F0%;!<%V$5$l$?%G!<%?$r2s(B +$BI|$7$^$9!#(B + + +$B!v%(%3!<%(%j%"(B +============== + +$B$b$7$f$C$/$j$H%3%^%s%I$rBG$C$?$J$i$P!"2hLL$N2<$N%(%3!<%(%j%"$H8F$P$l(B +$B$k>l=j$KBG$C$?$b$N$,I=<($5$l$^$9!#%(%3!<%(%j%"$O2hLL$N:G2<9T$G$9!#(B + + +$B!v%b!<%I%i%$%s(B +============== + +$B%(%3!<%(%j%"$N$9$0>e$N9T$O!"%b!<%I%i%$%s$H8F$S$^$9!#%b!<%I%i%$%s$O$3$s(B +$B$JIw$K8+$($k$G$7$g$&!#(B + +-J:** TUTORIAL.ja (Fundamental)--L670--58%---------------- + +$B$3$N9T$O(B Emacs $B$N>uBV5Z$SJT=8Cf$NJ8>O$K$D$$$FM-1W$J>pJs$rM?$($F$/$l$^(B +$B$9!#(B + +$B%U%!%$%kL>$K$D$$$F$O$b$&J,$C$F$$$^$9$M!#$=$l$O$"$J$?$,3+$$$?%U%!%$%k$G(B +$B$9!#(B-NN%-- $B$OJ8>OCf$N8=:_0LCV$r<($7$F$$$^$9!#J8>O$N(B NN% $B$,2hLL:G>eCJ$h(B +$B$jA0$K$"$k$H$$$&$3$H$G$9!#$b$7J8>O$N:G=i$N9T$,2hLL$K$"$k;~$K$O(B --00%-- +$B$NBe$j$K(B --Top-- $B$HI=<($7$^$9!#$b$7J8>O$N:G8e$N9T$,2hLL$K$"$k;~$K$O(B +--Bot-- $B$HI=<($7$^$9!#$b$72hLL$KA4It<}$^$C$F$7$^$&$h$&$JC;$$J8>O$r8+$F(B +$B$$$k$H$-$K$O(B --All-- $B$HI=<($7$^$9!#(B + +L $B$H$=$l$KB3$/?t;z$O8=:_$N9THV9f$r<($7$F$$$^$9!#(B + +$B@hF,6a$/$N@10u$O!"$"$J$?$,J8>O$rJQ99$7$?$3$H$r<($7$F$$$^$9!#%U%!%$%k$r(B +$B3+$$$?D>8e$d!"%;!<%V$7$?D>8e$O!"$=$NItJ,$K$O@10u$NBe$o$j$K%@%C%7%e(B `-' +$B$,I=<($5$l$^$9!#(B + +$B3g8L$K0O$^$l$?ItJ,$O$I$s$JJT=8%b!<%I$K$$$k$+$r<($7$^$9!#%G%U%)%k%H$O(B +"Fundamental" $B$H$$$&%b!<%I!"$3$l$,8=:_$N%b!<%I$G$9!#$3$l$O!V%a%8%c!<%b!<(B +$B%I!J(Bmajor mode$B!K!W$N0lNc$G$9!#(B + +Emacs $B$K$OB?$/$NO$rJT=8Cf$+$r0UL#$9$k$b(B +$B$N$b$"$j$^$9!#$$$D$G$bI,$:$$$:$l$+$N%a%8%c!<%b!<%I$N>uBV$K$J$C$F$$$^$9!#(B +$B$I$N%a%8%c!<%b!<%I$K$$$k$N$+$O!"%b!<%I%i%$%s$N8=:_$O(B "Fundamental" $B$H(B +$BI=<($7$F$$$kItJ,$r8+$l$PJ,$j$^$9!#(B + +$B3F%a%8%c!<%b!<%I$O4v$D$+$N%3%^%s%I$K0[$J$k?6$kIq$$$r$5$;$^$9!#Nc$($P!"(B +$B%W%m%0%i%`%j%9%HCf$K%3%a%s%H$rF~$l$k$?$a$N%3%^%s%I$,$"$j$^$9!#%3%a%s%H(B +$B$N7A<0!J%7%s%?%C%/%9!K$O!"%W%m%0%i%`8@8l$K$h$C$F0[$J$j!"%a%8%c!<%b!<%I(B +$B$O!"$=$l$KBP1~$9$k8@8l$K9g$C$?7A<0$G%3%a%s%H$rA^F~$7$^$9!#3F%a%8%c!<%b!<(B +$B%I$O3HD%%3%^%s%I$NL>A0$K$J$C$F$$$^$9!#$D$^$j$=$N3HD%%3%^%s%I$r;H$C$F%a(B +$B%8%c!<%b!<%I$r@Z$j49$($k$N$G$9!#Nc$($P!"(BM-x fundamental-mode $B$H$$$&$N(B +$B$O(B Fundamental $B%b!<%I$K@Z$j49$($k$?$a$N%3%^%s%I$G$9!#(B + +$B$b$7!"DL>o$N1Q8l$dF|K\8l$NJ8>O!J$3$N%U%!%$%k$N$h$&$J!K$rJT=8$9$k$N$J$i(B +$B$P!"(BText mode $B$r;H$$$^$7$g$&!#(B +>> M-x text-mode $B$H%?%$%W$7$F$_$F2<$5$$!#(B + +$B?4G[$7$J$$$G!#$3$l$^$G3X$s$@%3%^%s%I$O$?$$$7$FJQ$o$j$^$;$s$+$i!#$@$1$I!"(B +M-f $B$d(B M-b $B$,%"%]%9%H%m%U%#(B "'" $B$rC18l$N0lIt$@$H2r/$7$@$1$3$H$J$k$N$G$9!#(B + +$B8=:_$N%a%8%c!<%b!<%I$K$D$$$F$N@bL@J8$r8+$k$K$O(B C-h m $B$H%?%$%W$7$^$9!#(B + +>> C-u C-v $B$r0lFsEY$d$C$F$3$N9T$r2hLL$N>e$NJ}$K;}$C$F$$$-$^$7$g$&!#(B +>> C-h m $B$H%?%$%W$7!"(BText mode $B$H(B Fundamental mode $B$N0c$$$r$_$^$7$g$&!#(B +>> C-x 1 $B$G(B Text mode $B$N@bL@J8$r2hLL$+$i>C$7$^$7$g$&!#(B + +$B%a%8%c!<%b!<%I$,!V%a%8%c!$N%^%$%J!<(B +$B%b!<%I$K1F6A$rM?$($:$K!"$=$l$@$1$r%*%s%*%U$G$-$^$9!#$D$^$j!"%^%$%J!<%b!<(B +$B%I$rA4$/;H$o$J$+$C$?$j!"0l8D$@$1;H$C$?$j!"$$$/$D$+$rF1;~$K;H$C$?$j$G$-(B +$B$k$N$G$9!#(B + +$BDL>o$NJ8>O$rJT=8$7$F$$$k;~$K$H$F$bJXMx$J%^%$%J!<%b!<%I$N0l$D$K%*!<%H%U%#(B +$B%k!J(BAuto Fill$B!K%b!<%I$H$$$&$N$,$"$j$^$9!#$3$N%b!<%I$,%*%s$N;~$KJ8>O$r(B +$BF~NO$7$F$$$C$F9T$rD9$/$7$9$.$?>l9g!"<+F0E*$KC18l$HC18l$N4V$G9T$,J,3d$5(B +$B$l$^$9!JF|K\8l$N>l9g$O$I$NJ8;z$N4V$G$b!#6XB'=hM}$b$J$5$l$^$9!K!#(B + +Auto Fill $B%b!<%I$O(B M-x auto-fill-mode $B$H$d$l$P%*%s$K$G$-$^$9!#(B +$B$=$l$,%*%s$N>uBV$G(B M-x auto-fill-mode $B$H$d$l$,%*%U$K$G$-$^$9!#(B +$B$3$N%3%^%s%I$O!"%b!<%I$,%*%U$J$i%*%s$K!"%*%s$J$i%*%U$K$9$k$N$G$9!#$3$&(B +$B$$$&$N$r!V%b!<%I$r%H%0%k$9$k!W$H8@$$$^$9!#(B + +>> M-x auto-fill-mode $B$H%?%$%W$7$F!"(B "asdf " $B$G;O$^$k9T$rF~NO(B + $B$7$F2<$5$$!#9T$,J,3d$5$l$k$^$G2?EY$b(B "asdf " $B$H%?%$%W$7$^$7$g$&!#%9(B + $B%Z!<%9$rK:$l$:$K!#(BAuto Fill $B$O%9%Z!<%9$,F~NO$5$l$?;~$N$_F/$-$^$9!#(B + +$B1&%^!<%8%s$ODL>o(B 70 $BJ8;z!J%+%i%`!K$G$9$,!"(BC-x f $B%3%^%s%I$G$3$l$rJQ99$9(B +$B$k$3$H$,$G$-$^$9!#;XDj$NJ8;z?t$r?tCM0z?t$H$7$FM?$($^$9!#(B + +>> $B?tCM0z?t(B 20 $B$G(B C-x f $B$r$d$j$^$7$g$&!#(B (C-u 2 0 C-x f)$B!#(B + $B$=$l$+$iE,Ev$JJ8>O!J1Q8l!K$rF~NO$7!"(B20 $BJ8;z$G9T$,J,3d$5$l$k$N$r8+$F(B + $B$_$^$7$g$&!#$=$l$+$i(B C-x f $B%3%^%s%I$G$^$?%^!<%8%s$r(B 70 $BJ8;z$KLa$7$F(B + $B2<$5$$!#(B + +$B%Q%i%0%i%U$NESCf$rJQ99$7$F$b(B Auto Fill $B%b!<%I$O$=$l$r<+F0E*$K%U%#%k$7(B +$BD>$7$O$7$^$;$s!#(B +$B%Q%i%0%i%U$r%U%#%k$7D>$9$K$O%+!<%=%k$r$=$N%Q%i%0%i%U$NCf$KCV$$$F$+$i(B +M-q $B$r%?%$%W$7$^$9!#(B + +>> $B%+!<%=%k$r$3$N9TD>A0$N%Q%i%0%i%U$K0\F0$5$;(B M-q $B$H%?%$%W$7$F2<$5$$!#(B + + +$B!v8!:w(B +====== + +$BJ8>OCf$NFCDj$NJ8;zNs$r!"A08~$-$K$b8e8~$-$K$bC5$9;v$,$G$-$^$9!#J8;zNs$r(B +$BC5$9$H$$$&$N$O%+!<%=%k0\F0%3%^%s%I$G$9!#$D$^$j!"l=j$^$G%+!<%=%k$r0\F0$5$;$k$N$G$9!#(B + +Emacs $B$N8!:w%3%^%s%I$OB>$NBg35$N%(%G%#%?$N8!:w%3%^%s%I$H$O0[$j!V%$%s%/(B +$B%j%a%s%?%k!W$G$9!#8!:w$9$kJ8;zNs$r%?%$%W$7$F$$$k$=$P$+$i8!:w$,5/$k$N$G(B +$B$9!#(B + +$B8!:w$r;O$a$k$?$a$N%3%^%s%I$O!"A08~$-$K8!:w$9$k$J$i$P(B C-s$B!"8e8~$-$J$i(B +C-r $B$G$9!#$^$@$G$9!*!*:#$O$^$@;n$5$J$$$G2<$5$$!#(B + +C-s $B$rBG$D$H(B "I-search" $B$H$$$&J8;zNs$,%(%3!<%(%j%"$KI=<($5$l$k$N$,8+$((B +$B$k$G$7$g$&!#$3$l$O(B Emacs $B$,%$%s%/%j%a%s%?%k8!:w$H$$$&>uBV$K$$$F!"$"$J(B +$B$?$,C5$7$?$$J8;zNs$rF~NO$9$k$N$rBT$C$F$$$k$N$G$9!#(B $B$rBG$F$P8!(B +$B:w$r=*$o$l$^$9!#(B + +>> $B$5$F(B C-s $B$H%?%$%W$7$F8!:w$r;O$a$^$7$g$&!#$f$C$/$j$H#1J8;z$:$D(B + "cursor" $B$H$$$&C18l$rF~NO$7$^$9!##1J8;zBG$DKh$K%+!<%=%k$,$I$&F0$/$+(B + $B8+$^$7$g$&!#(B + $B$5$"!"(B"cursor" $B$,#12s8+$D$+$j$^$7$?!#(B +>> $B$b$&0lEY(B C-s $B$HBG$C$F> $B:#EY$O(B $B$r#42sBG$C$F!"%+!<%=%k$NF0$-$r8+$F2<$5$$!#(B +>> $B$HBG$C$F8!:w$r=*N;$7$^$7$g$&!#(B + +$B2?$,5/$C$?$+J,$j$^$9$+!)%$%s%/%j%a%s%?%k8!:w$G$O!"$"$J$?$,$=$l$^$G$KBG$C(B +$B$?J8;zNs$,8=$l$k$H$3$m$K9T$3$&$H$7$^$9!# $B$rBG$D$H8!:wJ8;zNsCf$N#1HV:G8e(B +$B$NJ8;z$,>C$($^$9!#$=$7$F!"%+!<%=%k$O!"A02s$N0LCV$KLa$j$^$9!#$?$H$($P!"(B +"c" $B$H%?%$%W$7$F:G=i$N(B "c" $B$rC5$7$^$9!#$=$l$+$i(B "u" $B$rBG$D$H:G=i$N(B"cu" +$B$N>l=j$K%+!<%=%k$,F0$-$^$9!#$=$3$G(B $B$rBG$D$H(B "u" $B$r8!:wJ8;zNs(B +$B$+$i>C$7$F!"%+!<%9%k$O:G=i$K(B "c" $B$,8=$l$?>l=j$KLa$j$^$9!#(B + +C-s $B$O!"8=:_$N%+!<%=%k0LCV0J9_$K=P$F$/$k8!:wJ8;zNs$rC5$7;O$a$^$9!#$b$7!"(B +$BJ8>O$NA0$NJ}$rC5$7$?$+$C$?$i!"(BC-r $B$r%?%$%W$7$^$9!#$3$l$^$G$N(B C-s $B$K$D(B +$B$$$F$N@bL@$O$9$Y$F(B C-r $B$K$bEv$F$O$^$j$^$9!#8!:w$NJ}8~$,H?BP$J$@$1$G$9!#(B + + +$B!vJ#?t$N%&%#%s%I%&(B +================== + +Emacs $B$NAGE($J5!G=$N0l$D$H$7$F!"0l$D$N2hLL$KF1;~$K$$$/$D$b$N%&%#%s%I%&(B +$B$rI=<($9$k$3$H$,$G$-$^$9!#(B + +>> $B%+!<%=%k$r$3$N9T$K;}$C$F$-$F(B C-u 0 C-l $B$H%?%$%W$7$F2<$5$$!J:G8e$N$O(B + CONTROL-L $B$G$9$h!"(BCONTROL-1 $B$8$c$"$j$^$;$s!K!#(B + +>> $B$=$l$+$i(B C-x 2 $B$G2hLL$r#2$D$N%&%#%s%I%&$KJ,3d$7$^$7$g$&!#$I$A$i$N%&%#(B + $B%s%I%&$b$3$N%,%$%I$rI=<($7$F$$$^$9!#%+!<%=%k$O>e$N%&%#%s%I%&Fb$G$9!#(B + +>> C-M-v $B$H%?%$%W$72<$N%&%#%s%I%&$r%9%/%m!<%k$5$;$^$7$g$&!#(B + $B!J%a%?%-!<$,$J$$>l9g$O(B ESC C-v $B$H%?%$%W$7$^$9!#!K(B + +>> C-x o $B!J(B"o" $B$O(B "other$B!JB>J}!K(B" $B$r0UL#$7$^$9!K$r%?%$%W$72<$N%&%#%s%I(B + $B%&$K%+!<%=%k$r0\$7$F2<$5$$!#(B +>> $B2<$N%&%#%s%I%&$G(B C-v $B$d(B M-v $B$r;H$C$F%9%/%m!<%k$5$;$^$7$g$&!#(B + $B$3$3$K=q$$$F$"$k;X<($O>e$N%&%#%s%I%&$GFI$_?J$s$G$/$@$5$$!#(B + +>> $B$b$&0lEY(B C-x o $B$H%?%$%W$7!"%+!<%=%k$r>e$N%&%#%s%I%&$KLa$7$^$9!#(B + $B%+!<%=%k$O>e$N%&%#%s%I%&$N85$"$C$?0LCV$KLa$j$^$9!#(B + +C-x o $B$r;H$C$F%&%#%s%I%&4V$r9T$C$?$jMh$?$j$G$-$^$9!#3F%&%#%s%I%&$O$=$l(B +$B<+?H$N%+!<%=%k0LCV$rJ];}$7$F$$$^$9$,!"0lEY$K$O0l$D$N%&%#%s%I%&$@$1$,%+!<(B +$B%=%k$rI=<($7$^$9!#DL>o$NJT=8%3%^%s%I$O3'%+!<%=%k$,$"$k%&%#%s%I%&$KBP$7(B +$B$FF/$-$^$9!#$=$N%&%#%s%I%&$r(B "selected window ($BA*BrCf$N%&%#%s%I%&(B)" $B$H(B +$B8F$S$^$9!#(B + +C-M-v $B%3%^%s%I$O!"0l$D$N%&%#%s%I%&$GJ8>O$rJT=8Cf$KB>$N%&%#%s%I%&$r;2>H(B +$B$7$F$$$k;~$KLrN)$A$^$9!#JT=8Cf$N>l=j$K%+!<%=%k$rJ]$C$?$^$^!"(BC-M-v $B$GB>(B +$B$N%&%#%s%I%&$rFI$_?J$a$F9T$/$3$H$,$G$-$^$9!#(B + +C-M-v $B$O%3%s%H%m!<%k%a%?J8;z$N0lNc$G$9!#%a%?%-!<$,$"$k>l9g$O!"%3%s%H%m!<(B +$B%k%-!<$H%a%?%-!<$r2!$7$J$,$i(B v $B$r%?%$%W$7$^$9!#%3%s%H%m!<%k%-!<$H%a%?(B +$B%-!<$O$I$A$i$r@h$K2!$7$F$b9=$$$^$;$s!#$I$A$i$b$=$N8e$K%?%$%W$5$l$kJ8;z(B +$B$KBP$9$k=$>~%-!<(B (modifier key) $B$H$7$FF/$/$+$i$G$9!#(B + +$B%a%?%-!<$,L5$$>l9g!"(BESC $B%-!<$r;H$$$^$9$,!"$3$N>l9g$O=gHV$,Bg;v$G$9!#$^(B +$B$:(BESC $B$r2!$7$F$+$iN%$7$F(B C-v $B$rBG$A$^$9!#(BC-ESC v $B$G$OBLL\$G$9!#$3$l$O(B +ESC $B$O$=$l<+BN$,0l$D$NJ8;z$G=$>~%-!<$G$O$J$$$+$i$G$9!#(B + +>> $B>e$N%&%#%s%I%&$G(B C-x 1 $B$H%?%$%W$72<$N%&%#%s%I%&$r>C$7$^$7$g$&(B + +$B!J$b$72<$N%&%#%s%I%&$G(B C-x 1 $B$H%?%$%W$9$k$H>e$N%&%#%s%I%&$,>C$($^$9!#(B +$B$3$N%3%^%s%I$O!V8=:_<+J,$,$$$k%&%#%s%I%&$@$1$K$7$J$5$$!W$H$$$&$b$N$@$H(B +$B;W$C$F2<$5$$!#!K(B + +$BN>J}$N%&%#%s%I%&$KF1$8%P%C%U%!$rI=<($9$kI,MW$O$"$j$^$;$s!#0lJ}$N%&%#%s(B +$B%I%&$G(B C-x C-f $B$G%U%!%$%k$r3+$$$F$bB>J}$N%&%#%s%I%&$OJQ2=$7$^$;$s!#3F(B +$B%&%#%s%I%&$K$*$$$FJL!9$N%U%!%$%k$r3+$/$3$H$,$G$-$k$N$G$9!#(B + +>> C-x 4 C-f $B$H%?%$%W$7B3$1$F2?$+<+J,$N%U%!%$%kL>$rF~NO$7$F2<$5$$!#(B + $B$GF~NO$r=*$o$i$;$F2<$5$$!#:#;XDj$7$?%U%!%$%k$,2<$N%&%#%s%I(B + $B%&$K8=$l$^$9!#%+!<%=%k$b$=$C$A$K0\$j$^$9!#(B + +>> C-x o $B$H%?%$%W$7>e$N%&%#%s%I%&$KLa$C$F2<$5$$!#$=$l$+$i(B C-x 1 $B$G2<$N(B + $B%&%#%s%I%&$r>C$7$^$7$g$&!#(B + + +$B!v:F5"JT=8%l%Y%k(B (RECURSIVE EDITING LEVELS) + +$B;~!9!JITK\0U$K!K:F5"JT=8%l%Y%k$H8F$P$l$k>uBV$KF~$k$3$H$,$"$j$^$9!#%b!<(B +$B%I%i%$%s$N%a%8%c!<%b!<%IL>$r0O$`4]3g8L(B "()" $B$,$5$i$Knl3g8L(B "[]" $B$G0O$^(B +$B$l$^$9!#Nc$($P!"(B(Fundamental) $B$HI=<($5$l$kBe$o$j$K(B [(Fundamental)] $B$N(B +$B$h$&$K$J$j$^$9!#(B + +$B:F5"JT=8%l%Y%k$+$iH4$1=P$9$K$O(B ESC ESC ESC $B$H%?%$%W$7$^$9!#$3$l$OHFMQ(B +$B!VH4$1=P$7!W%3%^%s%I$G$9!#M>J,$J%&%#%s%I%&$r>C$7$?$j!"%_%K%P%C%U%!$+$i(B +$BH4$1$?$j$9$k$N$K$b;H$($^$9!#(B + + +>> M-x $B$H%?%$%W$7%_%K%P%C%U%!$KF~$C$F2<$5$$!#$=$l$+$i(B ESC ESC ESC $B$H%?(B + $B%$%W$7H4$1=P$7$F$_$^$7$g$&!#(B + +C-g $B$G$O:F5"JT=8%l%Y%k$+$i$OH4$1=P$;$^$;$s!#$3$l$O!"(BC-g $B$,:F5"JT=8%l%Y(B +$B%kFb$G$N%3%^%s%I$d0z?t$rC$9$N$K;H$o$l$F$$$k$+$i$G$9!#(B + + +$B!v$b$C$H$b$C$H%X%k%W(B +==================== + +$B$3$NF~Lg%,%$%I$G$O(B Emacs $B$r;H$$;O$a$k$N$K==J,$J>pJs$rDs6!$7$?$D$b$j$G(B +$B$9!#(BEmacs $B$K$O$"$^$j$K$bB?$/$N5!G=$,$"$k$N$G!"$3$3$G$9$Y$F$r@bL@$9$k$N(B +$B$OL5M}$G$9!#Lr$KN)$D5!G=$r$b$C$HB?$/3X$S$?$$$H;W$&?M$N$?$a$K$O!"(BEmacs +$B$N%3%^%s%I$N@bL@$rFI$`$?$a$N%3%^%s%I$,$"$j$^$9!#$3$l$i$N!V%X%k%W!W%3%^(B +$B%s%I$O3'(B Control-h $BJ8;z!J%X%k%WJ8;z$H8F$S$^$9!K$G;O$^$j$^$9!#(B + +$B%X%k%W5!G=$r;H$&$K$O!"(BC-h $B$KB3$$$F$I$s$Jl9g$O(B C-h ? $B$H%?%$%W$7$^$7$g$&!#(B +$B$I$s$JC$9$3$H$,$G$-$^$9!#(B + +$B!J%5%$%H$K$h$C$F$O(B C-h $BJ8;z$N0UL#$rJQ99$7$F$$$k$+$b$7$l$^$;$s!#%f!<%6(B +$BA40w$KBP$9$kAm3gE*$Jl9g$O%7%9%F%`4IM} $B$r;n$7$F$_$F2<$5$$!#!K(B + +$B:G$b4pK\E*$J%X%k%W5!G=$O(B C-h c $B$G$9!#(BC-h$B!"$=$l$+$i(B c$B!"$=$7$F%3%^%s%I$N(B +$B%-!<> C-h c C-p $B$H%?%$%W$7$F$_$^$7$g$&!#(B + $B0J2<$N$h$&$J%a%C%;!<%8$,I=<($5$l$k$O$:$G$9!#(B + + C-p runs the command previous-line + +$B$3$l$O!V%U%!%s%/%7%g%s$NL>A0!W$rI=<($7$?$N$G$9!#%U%!%s%/%7%g%sL>$O$O$=$N%3%^%s%I$,2?$r$9$k$b$N$J$N$+$,J,$k$h$&$KIU$1$i$l$^$9$N(B +$B$G!"4JC1$J@bL@$H$7$F$b$=$N$^$^Lr$KN)$A$^$9!#0lEY3X$s$@%3%^%s%I$K$D$$$F(B +$B;W$$=P$9$K$O==J,$G$9!#(B + +C-x C-s $B$d!J%a%?%-!<$d%"%k%H%-!<$,$J$$>l9g$N!K(B v $B$J$I$NJ#?tJ8;z(B +$B$N%3%^%s%I$r(B C-h c $B$N8e$K%?%$%W$9$k$3$H$b$G$-$^$9!#(B + +$B%3%^%s%I$K$D$$$F$b$C$HB?$/$N>pJs$,M_$7$1$l$P(B C-h c $B$NBe$o$j$K(B C-h k $B$r(B +$B;H$$$^$9!#(B + +>> C-h k C-p $B$H%?%$%W$7$F$_$^$7$g$&!#(B + +Emacs$B$N%&%#%s%I%&$K!"%3%^%s%I$NL>A0$HF1;~$K$=$N5!G=$N@bL@$,I=<($5$l$^(B +$B$9!#FI$_=*$($?$i!"(BC-x 1 $B$H%?%$%W$7$F%X%k%W$NJ8>O$r>C$7$^$7$g$&!#I,$:$7(B +$B$b$9$0$K$=$&$9$kI,MW$O$"$j$^$;$s!#%X%k%W$NJ8>O$r8+$J$,$iJT=8$rB3$1!"$=(B +$B$l$+$i(B C-x 1 $B$H%?%$%W$7$F$b9=$$$^$;$s!#(B + +C-h $B$K$OB>$K$bLr$KN)$D%*%W%7%g%s$,$"$j$^$9!#(B + + C-h f $B%U%!%s%/%7%g%s$N@bL@!#%U%!%s%/%7%g%sL>$rF~NO$7$^$9!#(B + +>> C-h f previous-line $B$H%?%$%W$7$F$_$^$7$g$&!#(B + C-p $B%3%^%s%I$rpJs$rI=<($7(B + $B$^$9!#(B + +$B$3$l$K;w$?%3%^%s%I(B C-h v $B$O$=$NCM$r%;%C%H$9$k$H$3$K$h$C$F(B Emacs $B$N?6Iq(B +$B$$$r%+%9%?%^%$%:$G$-$kJQ?t$N@bL@$rI=<($7$^$9!#JQ?tL>$NF~NO$r%W%m%s%W%H(B +$B$K$7$?$,$C$FF~NO$7$^$9!#(B + + C-h a $B%3%^%s%I%"%W%m%]%9(B (command apropos)$B!#%-!<%o!<%I$rF~NO(B + $B$9$k$H!"$=$N%-!<%o!<%I$rL>A0$K4^$`A4$F$N%3%^%s%I$r%j%9(B + $B%H%"%C%W$7$^$9!#$3$l$i$N%3%^%s%I$OA4$F(B M-x $B$G> C-h a file $B$H%?%$%W$7$F$_$F2<$5$$!#(B + +"file"$B$H$$$&J8;zNs$rL>A0$N0lIt$K;}$DA4$F$N(B M-x $B%3%^%s%I!J3HD%%3%^%s%I!K(B +$B$rJL$N%&%#%s%I%&$KI=<($7$^$9!#(B C-x C-f $B$N$h$&$JJ8;z%3%^%s%I$bBP1~$9$k(B +$BL>A0!J(Bfind-file $B$N$h$&$K!K$KJB$s$GI=<($5$l$^$9!#(B + +>> C-M-v $B$H%?%$%W$7%X%k%W$N%&%#%s%I%&$r%9%/%m!<%k$5$;$^$7$g$&!#2?EY$+(B + $B$d$C$F2<$5$$!#(B + +>> C-x 1 $B$G%X%k%W%&%#%s%I%&$r>C$7$F2<$5$$!#(B + + C-h i $B%*%s%i%$%s%^%K%e%"%k!J(BInfo$B!K$rFI$`!#$3$N%3%^%s%I$r;H$&(B + $B$H!"$"$J$?$O(B `*info*' $B$H$$$&L>$NFC + $B$H%?%$%W$9$l$P(B Emacs $B$N%^%K%e%"%k$,FI$a$^$9!#$b$7(B Info + $B$r;H$&$N$,=i$a$F$J$i!"(B? $B$H%?%$%W$7$^$7$g$&!#(BInfo $B%b!<(B + $B%I$N%,%$%I%D%"!<$,;O$^$j$^$9!#$3$NF~Lg%,%$%I$rFI$_=*$((B + $B$?8e$O!"(BEmacs $B$N(B Info $B%^%K%e%"%k$r$"$J$?$N65K\$K$7$F2<(B + $B$5$$!#(B + + +$B!v$b$C$HB?$/$N5!G=(B +================== + +$BK\$N%^%K%e%"%k$G$"$m$&$H%*%s%i%$%s%^%K%e%"%k!J(BHelp $B%a%K%e!<$r;H$&$+(B +F10 h r$B!K$G$"$m$&$H!"$=$l$rFI$a$P(B Emacs $B$K$D$$$F$b$C$HB?$/$r3X$Y$^$9!#(B +$B$"$J$?$,FC$K$*5$$K>$$9$G$"$m$&5!G=$K!"%?%$%W?t$r8:$i$7$F$/$l$kJd40(B +$B!J(Bcompletion$B!K$H!"%U%!%$%k$N07$$$rC1=c2=$7$F$/$l$k%G%#%l%/%H%jJT=8(B +(dired) $B$N#2$D$N$,$"$j$^$9!#(B + +$BJd40!J(Bcompletion$B!K$O!"ITI,MQ$J%?%$%W$r>J$/$?$a$N$b$N$G$9!#$?$H$($P!"$b(B +$B$7(B *Message* $B%P%C%U%!$K@ZBX$($?$1$l$P!"(BC-x b *M $B$H%?%$%W$9$k$@$1(B +$B$G!"(BEmacs $B$O;D$j$N%P%C%U%!L>$r!"4{$K%?%$%W$7$?ItJ,$+$i7hDj$G$-$k8B$j!"(B +$BKd$a$F$/$l$^$9!#Jd40$O(B Info $B$N(B Emacs $B%^%K%e%"%k$N(B "Completion" $B$H$$$&(B +$B%N!<%I$G!"@bL@$5$l$F$$$^$9!#(B + +$B%G%#%l%/%H%jJT=8!J(Bdired$B!K$O!"%G%#%l%/%H%j$d$=$N%5%V%G%#%l%/%H%jCf$N%U%!(B +$B%$%k$r%j%9%H%"%C%W$7!"%j%9%HCf$r0\F0$7$J$,$i!"%U%!%$%k$r3+$/!"L>A0$rJQ(B +$B99$9$k!":o=|$9$k!"$=$NB>$NA`:n$r9T$&!"$J$I$,$G$-$^$9!#%G%#%l%/%H%jJT=8(B +$B$O!"(BInfo $B$N(B Emacs $B%^%K%e%"%k$N(B "Dired" $B$H$$$&%N!<%I$G!"@bL@$5$l$F$$$^(B +$B$9!#(B + +$B%^%K%e%"%k$O!"(BEmacs $B$N$=$NB>$NB?$/$N5!G=$K$D$$$F@bL@$7$F$$$^$9!#(B + + +$B!v$*$o$j$K(B +========== + +$BK:$l$J$$$G!*(BEmacs $B$r=*N;$9$k$K$O!"(BC-x C-c $B$G$9!#$^$?(B Emacs $B$KLa$C$FMh(B +$B$i$l$k$h$&$K0l;~E*$K%7%'%k$KLa$k$@$1$J$i(B C-z $B$G$9!#(B + +$B$3$NF~Lg%,%$%I$O!"$^$C$?$/$N=i?4 $B$,(B +Nemacs/Mule $BMQ$KJQ99!"$5$i$K5HEDLP$$(B +$B$^$9!#(B + +This tutorial descends from a long line of Emacs tutorials +starting with the one written by Stuart Cracraft for the original Emacs. + +This version of the tutorial, like GNU Emacs, is copyrighted, and +comes with permission to distribute copies on certain conditions: + +Copyright (C) 1985, 1996, 1998, 2001, 2002, 2003, 2004, + 2005, 2006, 2007 Free Software Foundation, Inc. + + Permission is granted to anyone to make or distribute verbatim copies + of this document as received, in any medium, provided that the + copyright notice and permission notice are preserved, + and that the distributor grants the recipient permission + for further redistribution as permitted by this notice. + + Permission is granted to distribute modified versions + of this document, or of portions of it, + under the above conditions, provided also that they + carry prominent notices stating who last altered them. + +The conditions for copying Emacs itself are more complex, but in the +same spirit. Please read the file COPYING and then do give copies of +GNU Emacs to your friends. Help stamp out software obstructionism +("ownership") by using, writing, and sharing free software! + +;;; Local Variables: +;;; coding: iso-2022-jp +;;; End: + +;;; arch-tag: 7136abc2-eb97-4f51-80a2-fa690ba4cfe8 diff --git a/etc/tutorials/TUTORIAL.ko b/etc/tutorials/TUTORIAL.ko new file mode 100644 index 00000000000..9f3d66a48af --- /dev/null +++ b/etc/tutorials/TUTORIAL.ko @@ -0,0 +1,1009 @@ +$(C@L8F=:(B(Emacs) $(CAvD'<-@T4O4Y(B. +$(C3!?!4B(B $(C:9;g(B $(CA60G@L(B +$(C@V=@4O4Y(B. $(CAv1](B $(C@P0m(B $(C@V4B(B $(C@L(B $(C1[@:(B $(C@L8F=:(B(Emacs) $(CAvD'<-@T4O4Y(B. + +$(C@L8F=:(B $(C8m7I5i@:(B $(C4k03(B $(CA&>n21b(B $(C:84Y4B(B $(C?l8.4B(B $(C4Y@=0z(B $(C00@:(B $(C>`=D(B $(CG%Gv@;(B $(C>21b7N(B $(CGU=C4Y(B: + + C-<$(C9.@Z(B> $(CA&>n $(C1[n META$(C $(C1[x@88i(B $(C3*?H $(C1[$(C@L6s0m(B + $(C>21b7N(B $(CGU4O4Y(B. + +$(C@/@G(B: C-x C-c$(C8&(B $(CD!8i(B $(C@L8F=:8&(B $(CA>7aGR(B $(C>"$(C4B(B $(C56@Z0!(B $(C8m7I@;(B $(C=GG`GX(B $(C:8557O(B +$(CGO0m@Z(B $(CGT@;(B $(CAv=CGU4O4Y(B. $(C?98&(B $(C5i>n(B: +<> +>> $(C4Y@=(B $(CH-8i@87N(B $(C?rAw@L1b(B $(C@'GX<-4B(B C-v ($(C4Y@=(B $(CH-8i(B $(C:81b(B)$(C8&(B $(CD(4O4Y(B. + ($(CGX(B $(C:8=J=C?@(B. $(CA&>nz@;(B $(C6'864Y(B $(C@L780T(B $(CGX>_(B $(CGU4O4Y(B. + +$(CGQ(B $(CH-8i?!<-(B $(C4Y8%(B $(CH-8i@87N(B $(C?rAw@O(B $(C6'(B $(C5N(B $(CAY@L(B $(C0cD#4Y4B(B $(C0M@;(B +$(C@/@GGO=J=C?@(B; $(C@L4B(B $(CGQ(B $(C9.@e@;(B $(C0h_(B $(CGO4B(B $(C0M@:(B $(C9.@e@G(B $(CGQ(B $(C0w?!<-(B $(C4Y8%(B $(C0w@87N(B $(C?rAw@L4B(B +$(C0M@T4O4Y(B. C-v$(C7N(B $(CGQ(B $(CH-8i@;(B $(C>UBJ@87N(B $(C?rAw@L4B(B $(C0M@:(B $(C@L9L(B $(C>K0m(B $(C@V=@4O4Y(B. +$(C5^BJ@87N(B $(CGQ(B $(CH-8i@;(B $(C?rAw@L1b(B $(C@'GX<-4B(B M-v$(C8&(B (META$(Cx@;(B $(C0f?l(B v$(C8&(B $(CD(4O4Y(B). + +>> $(C8n(B $(C9x(B M-v$(C?M(B C-v$(C8&(B $(C9x0%>F(B $(CCD(B $(C:8=J=C?@(B. + + +* $(C?d>`(B +------ + +$(C4Y@=@:(B $(C@|CUBJ@87N(B $(C?rAw@N4Y(B + ESC v $(CGQ(B $(C@|C<(B $(CH-8i@;(B $(C5^BJ@87N(B $(C?rAw@N4Y(B + C-l $(CH-8i@;(B $(CAv?l0m(B $(C8p5g(B $(C1[?y@;(B $(C4Y=C(B $(CH-8i(B $(CG%=CGO8i<-(B + $(C1t:}@L0!(B $(C@V4B(B $(C1[?y@;(B $(CH-8i@G(B $(CA_>S?!(B $(C?@0T(B $(CGQ4Y(B. + ($(CA&>nF4O6s(B $(CA&>n> $(C1t9Z@L8&(B $(CC#>F<-(B $(C1W(B $(C0w@G(B $(C1[?y@;(B $(C1b>oGO=J=C?@(B. + $(C1W8.0m4B(B C-l$(C@;(B $(CD!=J=C?@(B. + $(C1t9Z@L8&(B $(C4Y=C(B $(CC#>F<-(B $(C00@:(B $(C1[?y@L(B $(C1t9Z@L@G(B $(C1YC3?!(B $(C@V4B0!8&(B + $(CH.@NGO=J=C?@(B. + + +* $(C1b:;@{@N(B $(C1t9Z@L@G(B $(CA&>n(B +------------------------ + +$(CGQ(B $(CH-8i@;(B $(C?rAw@L4B(B $(C0M@:(B $(C@/?kGU4O4Y88(B $(CH-8i@G(B $(CGQ(B $(C1[?y3;?!<-(B $(C>n6;0T(B +$(CA$GXAx(B $(C@e?(B $(C1t9Z@L8&(B $(C?rAw@T4O4Y(B. +$(C?)1b?!(B $(C@L(B $(C3W0!Av(B $(C8m7I5i0z(B $(C1W(B $(C?rAw@L4B(B $(C9fGb@;(B $(C:8?)AV4B(B $(CG%0!(B $(C@V=@4O4Y(B. + + $(C5^(B $(CAY(B, C-p + : + : + $(C5^BJ@87N(B, C-b .... $(CGv@g@G(B $(C1t9Z@L(B $(C@'D!(B .... $(C>UBJ@87N(B, C-f + : + : + $(C>U(B $(CAY(B, C-n + +>> C-n$(C@L3*(B C-p$(C8&(B $(C=a<-(B $(C1t9Z@L8&(B $(C@'(B $(C55G%@G(B $(C0!?n5%(B $(CAY7N(B $(C?rAw@L=J=C?@(B. + $(C1W8.0m4B(B C-l$(C@;(B $(CCD<-(B $(C@L(B $(C55G%0!(B $(CH-8i@G(B $(CA_>S?!(B $(C@'D!GO4BAv8&(B + $(CH.@NGO=J=C?@(B. + +$(C@L(B $(C8m7I5i@:(B $(C1[@Z7N(B $(C1b>oGO4B(B $(C0M@L(B $(C=,?o(B $(C0M@T4O4Y(B: P$(C4B(B previous, N$(C@:(B +next, B$(C4B(B backward, F$(C4B(B forward. $(C@L5i@:(B $(C1b:;@{@N(B $(C1t9Z@L(B $(C@L5?(B +$(C8m7I@87N<-(B, $(CGW;s(B $(C;g?kGO0T(B $(C5I(B $(C0M@L9G7N(B $(CAv1](B $(C4g@e(B $(C8S8.(B $(C> C-n$(C@;(B $(C?)7/9x(B $(CCD<-(B $(C1t9Z@L8&(B $(C@L(B $(CAY7N(B $(C0!A.(B $(C?@=J=C?@(B. + +>> C-f$(C8&(B $(CCD<-(B $(CAY(B $(C>H?!<-(B $(C@L5?GX(B $(C:80m(B C-p$(C7N(B $(C5^(B $(CAY7N(B $(C0!=J=C?@(B. + $(C1t9Z@L0!(B $(CAY@G(B $(CA_0#?!(B $(C@V@;(B $(C6'(B C-p$(C0!(B $(C>n62(B $(C@[?k@;(B $(CGO4B0!(B $(C:8=J=C?@(B. + +$(C0"0"@G(B $(CAY@:(B $(C4Y@=?!(B $(C@L>nAv4B(B $(CAY0z(B $(C:P8.GO4B(B $(C;uAY(B $(C9.@Z7N(B $(C3!334O4Y(B. +$(CFD@O@G(B $(C86Av87(B $(CAY@:(B $(C3!?!(B $(C;uAY(B $(C9.@Z0!(B $(C@V>n>_(B $(CGU4O4Y(B ($(C1W7/3*(B $(C@L8F=:4B(B $(C@L8&(B +$(C?d18GOAv(B $(C>J=@4O4Y(B). + +>> $(CAY@L(B $(C=C@[GO4B(B $(C0w?!<-(B C-b$(C8&(B $(CCD(B $(C:8=J=C?@(B. $(C1t9Z@L0!(B $(C5^(B $(CAY@G(B $(C3!@87N(B + $(C?rAw?)>_(B $(CGU4O4Y(B. $(C1W(B $(C@L@/4B(B $(C1t9Z@L0!(B $(C;uAY(B $(C9.@Z8&(B $(C3Q>n<-(B $(C5^BJ@87N(B + $(C?rAw@L1b(B $(C6'9.@T4O4Y(B. + +C-f$(C55(B C-b$(CC373(B $(C;uAY(B $(C9.@Z8&(B $(C3Q>n<-(B $(C@L5?GR(B $(C> C-b$(C8&(B $(C8n(B $(C9x(B $(C4u(B $(CCD<-(B $(C1t9Z@L0!(B $(C>n5p(B $(C@V4B0!8&(B $(C:80m(B C-f$(C7N(B $(C4Y=C(B $(CAY@G(B + $(C3!1nAv(B $(C@L5?GO=J=C?@(B. + $(C1W(B $(C4Y@=?!(B C-f$(C7N(B $(C4Y@=(B $(CAY7N(B $(C@L5?GO=J=C?@(B. + +$(CH-8i@G(B $(C2@4k1b3*(B $(C9X9Y4Z@;(B $(CAv3*CD<-(B $(C@L5?GO8i(B $(C0!@e@Z8.8&(B $(C9~>n3-(B $(C1[?y@:(B +$(CH-8i(B $(C>H@87N(B $(C9P7A(B $(C5i>n(B $(C?I4O4Y(B. $(C@L0M@;(B "$(C5N7g8;1b(B(scrolling)"$(C6s0m(B +$(CGU4O4Y(B. $(C@L4B(B $(C@L8F=:0!(B $(C1t9Z@L8&(B $(CH-8i(B $(C9[@87N(B $(C3;:83;Av(B $(C>J0m(B $(C1[?y@G(B $(CA$GXAx(B +$(C@e> C-n$(C@87N(B $(C1t9Z@L8&(B $(CH-8i@G(B $(C9X9Y4Z(B $(C>F7!7N(B $(C?rAw?)<-(B, $(C>n62(B $(C@O@L(B + $(C9_;}GO4B0!8&(B $(C:8=J=C?@(B. + +$(CGQ(B $(C9.@Z>?(B $(C@L5?GO4B(B $(C0M@L(B $(C4@8.8i(B, $(CGQ(B $(C398;>?(B $(C?rAw@O(B $(C?(B $(C>UBJ@87N(B, M-b$(C4B(B $(CGQ(B $(C398;>?(B $(C5^BJ@87N(B $(C?rAw@T4O4Y(B. + +>> M-f$(C3*(B M-b$(C8&(B $(C8n(B $(C9x(B $(CCD(B $(C:8=J=C?@(B. + +$(C398;@G(B $(CA_0#?!<-4B(B $(C398;@G(B $(C3!@87N(B $(C?rAw@T4O4Y(B. $(C398;(B $(C;g@L@G(B $(C0x0#(B +$(C9.@Z?!<-4B(B M-f$(C0!(B $(C4Y@=(B $(C398;@G(B $(C3!@87N(B $(C?rAw@T4O4Y(B. M-b$(C4B(B $(C9]4k(B $(C9fGb@87N(B +$(C00@:(B $(C@[?k@;(B $(CGU4O4Y(B. + +>> $(CA_0#(B $(CA_0#?!(B C-f$(C?M(B C-b$(C8&(B $(CD!8i<-(B M-f$(C?M(B M-b$(C8&(B $(C8n(B $(C9x(B + $(C?,=@GO=J=C?@(B. $(C1W7/8i(B $(C398;@G(B $(C3;:N3*(B $(CA_0#?!<-(B M-f$(C?M(B M-b$(C0!(B $(C>n62(B + $(C@[?k@;(B $(CGO4B0!8&(B $(C:<(B $(Cp>n0!(B $(CA$@GGO4B(B $(C4\@'(B($(C398;(B, $(C9.@e(B, $(C4\6t(B)$(C@G(B $(C@[5??!(B $(C;g?k5G0m(B $(CA&>n(B +$(C9.@Z4B(B $(CFmA}GO4B(B $(C0M0z4B(B $(C0|0h>x4B(B $(C1b:;(B $(C4\@'(B($(C9.@Z(B, $(CAY(B $(C5n5n(B)$(C?!(B +$(C;g?k5K4O4Y(B. + +$(C4Y@=@:(B $(CAY0z(B $(C9.@e(B $(C;g@L?!(B $(C@{?k5G4B(B $(C@/;g<:@T4O4Y(B: C-a$(C?M(B C-e$(C4B(B $(CAY@G(B +$(C=C@[@L3*(B $(C3!@87N(B $(C?rAw@L0m(B, M-a$(C?M(B M-e$(C4B(B $(C9.@e@G(B $(C=C@[@L3*(B $(C3!@87N(B +$(C?rAw@T4O4Y(B. + +>> C-a$(C8&(B $(C5N<<9x(B $(CD#(B $(CHD(B C-e$(C8&(B $(C5N<<9x(B $(CCD(B $(C:8=J=C?@(B. + M-a$(C8&(B $(C5N<<9x(B $(CD#(B $(CHD(B M-e$(C8&(B $(C5N<<9x(B $(CCD(B $(C:8=J=C?@(B. + +C-a$(C4B(B $(C5N(B $(C9x(B $(C@L;s(B $(C9]:9GX55(B $(C>F9+71(B $(C@[?k@;(B $(CGOAv(B $(C>JAv88(B M-a$(C4B(B $(CGQ(B $(C9.@e@;(B +$(C4u(B $(C5Z7N(B $(C?rAw@L4B(B $(C0M?!(B $(C@/@GGO=J=C?@(B. $(C@L4B(B $(C:q7O(B $(C@/;g<:@:(B $(C>F4OAv88(B +$(C4g?,GQ(B $(C;g=G7N(B $(C?)0\A}4O4Y(B. + +$(C9.<-?!(B $(C@V4B(B $(C1t9Z@L@G(B $(C@'D!4B(B "$(CA!(B(point)"$(C@L6s0m(B $(C:N8(4O4Y(B. $(C:N?,GO@Z8i(B, +$(C1t9Z@L4B(B $(CH-8i;s?!<-(B, $(C9.<-(B $(C3;?!(B $(CA!@L(B $(C>n5p?!(B $(C@'D!GO0m(B $(C@V4B0!8&(B +$(C:8?)A]4O4Y(B. + +$(C4Y@=@:(B $(C398;0z(B $(C9.@e(B $(C4\@'@G(B $(C@L5?@;(B $(CFwGTGQ(B $(C4\`GO?4=@4O4Y(B. + + C-f $(CGQ(B $(C9.@Z(B $(C>UBJ@87N(B $(C?rAw@N4Y(B + C-b $(CGQ(B $(C9.@Z(B $(C5^BJ@87N(B $(C?rAw@N4Y(B + + M-f $(CGQ(B $(C4\>n(B $(C>UBJ@87N(B $(C?rAw@N4Y(B + M-b $(CGQ(B $(C4\>n(B $(C5^BJ@87N(B $(C?rAw@N4Y(B + + C-n $(C>U(B $(CAY7N(B $(C?rAw@N4Y(B + C-p $(C5^(B $(CAY7N(B $(C?rAw@N4Y(B + + C-a $(CAY@G(B $(C=C@[@87N(B $(C?rAw@N4Y(B + C-e $(CAY@G(B $(C3!@87N(B $(C?rAw@N4Y(B + + M-a $(C9.@e@G(B $(C=C@[@87N(B $(C?rAw@N4Y(B + M-e $(C9.@e@G(B $(C3!@87N(B $(C?rAw@N4Y(B + +>> $(C@L(B $(C8p5g(B $(C8m7I@;(B $(C8n(B $(C9x(B $(C?,=@GX(B $(C:8=J=C?@(B. $(C@L(B $(C8m7I5i@:(B $(C0!@e(B $(C@ZAV(B + $(C;g?k5G4B(B $(C8m7I5i@T4O4Y(B. + +$(C1t9Z@L8&(B $(C?rAw@L4B(B $(C4Y8%(B $(C5N0!Av(B $(CA_?dGQ(B $(C8m7I@:(B $(C@|(B $(C9.<-@G(B $(C=C@[@87N(B +$(C?rAw@L4B(B M-< (Meta$(C +(Meta$(C> M-<$(C8&(B $(CAv1](B $(CCD<-(B $(CAvD'<-@G(B $(C=C@[@87N(B $(C?rAw?)(B $(C:8=J=C?@(B. $(C1W8.0m4B(B C-v$(C8&(B + $(C9]:9GX<-(B $(C4Y=C(B $(C?)1b7N(B $(C59>F(B $(C?@=J=C?@(B. + +>> M->$(C8&(B $(CCD<-(B $(CAvD'<-@G(B $(C3!@87N(B $(C0!=J=C?@(B. $(C1W8.0m4B(B M-v$(C8&(B $(C9]:9GX<-(B $(C4Y=C(B + $(C?)1b7N(B $(C59>F(B $(C?@=J=C?@(B. + +$(C4\8;1b?!(B $(CH-;lG%(B $(C1[24B(B +$(C0M@;(B $(C1G@eGU4O4Y(B. $(CC9B07N(B, $(C@L5i@:(B $(C8p5g(B $(CA>7y@G(B $(C4\8;1b?!<-(B $(C;g?kGR(B $(C24B(B $(C0M?!(B $(C@Mn(B +$(C9.@Z@;(B $(CD!4B(B $(C0M@L(B $(CH-;lG%(B $(C1[@(B $(C:|8#4Y4B(B $(C0M@;(B $(C>K0T(B $(C5I(B +$(C0M@T4O4Y(B ($(CE8@Z(B $(C@'D!?!<-(B $(Cx1b(B $(C6'9.?!(B). $(Cn(B $(C9.@Z(B $(C8m7I@;(B $(C>24B(B $(C=@0|@L(B $(C5i8i(B $(C1t9Z@L8&(B $(C?rAw@L4B(B $(C4Y8%(B +$(C0m1^(B $(C8m7I5i55(B $(C=10T(B $(C9h?o(B $(CnA}4O4Y(B. META$(Cn62(B +$(C4\8;1b?!<-55(B $(C;g?kGR(B $(Cn(B, C-u 8 C-f$(C4B(B $(C9.@Z(B $(C?)4|03@G(B $(C>UBJ@87N(B $(C?rAw@T4O4Y(B. + +>> $(CGQ(B $(C9x@G(B $(C8m7I@87N(B $(C1t9Z@L0!(B $(C@L(B $(CAY(B $(C1YC3?!(B $(C?@557O(B, $(C<}@Z(B $(C@NnAx(B + C-n $(CH$@:(B C-p$(C8&(B $(C=C55GX(B $(C:8=J=C?@(B. + +$(C4k:N:P@G(B $(C8m7I5i@:(B $(C<}@Z(B $(C@N5(B $(CJ0m(B $(C1W(B +$(C88E-@G(B $(CAY@;(B $(CH-8i@G(B $(C@'3*(B $(C>F7!7N(B $(C5N7g8;1b(B $(CGU4O4Y(B. $(CAo(B, C-u 4 C-v$(C4B(B +$(CH-8i@;(B 4 $(CAY(B $(C88E-(B $(C5N7g8;1b(B $(CGU4O4Y(B. + +>> $(C@LA&(B C-u 8 C-v$(C8&(B $(CCD(B $(C:8=J=C?@(B. + +$(C@L7N<-(B $(CH-8i@:(B 8 $(CAY@L(B $(C@'7N(B $(C5N7g8;1b(B $(C5F@;(B $(C0M@T4O4Y(B. $(C4Y=C(B $(C9X@87N(B +$(C5N7g8;1b(B $(CGO1b(B $(C@'GX<-4B(B $(C@N5(B $(C0f?l?!4B(B $(C@L8F=:(B $(CC"@G(B +$(C?^Fm?!(B $(C5N7g8;1b(B $(C874k6s0m(B $(C:R8.?l4B(B $(C1b4Y6u(B $(C;g0"G|(B $(C8p>g@G(B $(CEM0!(B $(C@V@;(B +$(C0M@T4O4Y(B. $(C@L(B $(C5N7g8;1b(B $(C874k?!(B $(C4Y6wAc8&(B $(C5~1oGT@87N=a(B $(C1[?y@;(B $(C5N7g8;1b(B $(CGR(B +$(C> $(C5N7g8;1b(B $(C874k(B $(C3;?!<-(B $(C4+?!(B $(C6g4B(B $(C:N:P@G(B $(C2@4k1b8&(B $(CA_0#(B $(C4\C_7N(B $(C4-7/(B + $(C:8=J=C?@(B. $(C1W7/8i(B $(C1[?y@:(B $(C4Y6wAc7N(B $(C4)8%(B $(C@'D!?!(B $(C5{8%(B $(C>g(B $(C88E-@G(B $(C@'D!8&(B + $(C@'3*(B $(C>F7!7N(B $(C5N7g8;1b(B $(C5I(B $(C0M@T4O4Y(B. + +>> $(C4Y6wAc8&(B $(CA_0#(B $(C4\C_0!(B $(C4-7/Ax(B $(C;sEB?!<-(B $(C@'3*(B $(C>F7!7N(B $(C?rAw?)(B $(C:8=J=C?@(B. + $(C1W7/8i(B $(C1[?y@L(B $(C4Y6wAc0!(B $(C?rAw@L4B4k7N(B $(C@'3*(B $(C>F7!7N(B $(C5N7g8;1b(B $(C5I(B + $(C0M@T4O4Y(B. + + +* $(C@L8F=:@G(B $(C@[5?@L(B $(C4\@}5I(B $(C6'(B +--------------------------- + +$(C8m7I@;(B $(CAV>n55(B $(C@L8F=:0!(B $(C9]@@@;(B $(CGOAv(B $(C>J@;(B $(C6'4B(B C-g$(C8&(B $(CCD<-(B $(C@L8F=:@G(B $(C@[5?@;(B +$(C>H@|GO0T(B $(CA$Av=CE3(B $(Cn62(B $(C8m7I@;(B $(C=C@[GO?4Av88(B $(C=GG`=CE00m(B +$(C=MAv(B $(C>J@;(B $(C6'?!55(B $(C;g?k5I(B $(C> C-u 100$(C@;(B $(CCD<-(B $(C<}@Z(B $(C@Nx>]@=@87N(B $(CGQ(B + $(C9.@Z88(B $(C>U@87N(B $(C?rAw?)>_(B $(CGU4O4Y(B. + + +* $(C9+4I(B $(C8m7I(B +----------- + +$(C>n62(B $(C@L8F=:(B $(C8m7I@:(B "$(CGc?k5GAv(B $(C>J>F<-(B"(disabled) $(CCJ:8@Z0!(B $(C@_8x(B $(C;g?kGOAv(B +$(C>J557O(B $(C5G>n(B $(C@V=@4O4Y(B. + +$(C@L71(B $(C9+4I(B $(C8m7I@;(B $(C>28i(B, $(C@L8F=:4B(B $(C@L(B $(C8m7I@L(B $(C9+>y@L>z@88g(B, $(C@L(B $(C8m7I@;(B $(C1W3I(B +$(C1W4k7N(B $(C=GG`GR(B $(C0M@NAv8&(B $(C90>n(B $(C:84B(B $(C>K828;@;(B $(CH-8i(B $(CG%=CGU4O4Y(B. + +$(C?x7!0!(B $(C@L(B $(C8m7I@;(B $(C>20m@Z(B $(CGO?44Y8i(B, $(C90@=?!(B $(C4kGX(B $(C;g@L(B $(C9.@Z(B(Space)$(C8&(B $(CCD<-(B +$(C4dGO=J=C?@(B. $(C:8Ek@:(B $(C9+4I(B $(C8m7I@;(B $(C=GG`=CE0Av(B $(C>J1b(B $(C@'GX(B $(C90@=?!(B "n"$(C@87N(B +$(C4dGU4O4Y(B. + +>> C-x C-l ($(C9+4I(B $(C8m7I@G(B $(CGO3*(B)$(C@;(B $(CD#(B $(CHD(B n$(C@87N(B $(C90@=?!(B $(C4dGO=J=C?@(B. + + +* $(CC"(B +---- + +$(C@L8F=:4B(B $(C?)7/(B $(CC"@;(B $(C0!Az(B $(C24B(B $(C9f9}?!(B $(C4kGX<-4B(B $(C3*A_?!(B $(C<38mGO1b7N(B $(CGU4O4Y(B. $(CAv1]@:(B +$(C4Y8%(B $(CC"@;(B $(C>x>V0m(B $(C?x7!?!(B $(C@V4x(B $(CC"(B $(CGO3*7N(B $(C59>F0!(B $(CFmA}@;(B $(C0hx>[4O4Y(B). + +$(C@L0M@:(B $(CA&>n2557O(B $(CGU4O4Y(B. $(C4Y8%(B $(CC"5i@:(B $(CAv?vA}4O4Y(B. + +>> $(C1t9Z@L8&(B $(C@L(B $(CAY7N(B $(C?rAw@N(B $(CHD(B C-u 0 C-l$(C@;(B $(CD!=J=C?@(B. +>> $(CA&>nnnn6;0T(B $(CAY>n(B $(C5e4B0!8&(B $(C0|B{GO=J=C?@(B. + +>> C-x 1$(C@;(B $(CCD<-(B $(C9.<-H-(B $(C8q7O(B $(C@[<:(B $(CC"@L(B $(C>n6;0T(B $(C;g6sAv4B0!8&(B $(C:8=J=C?@(B. + +$(C@L(B $(C8m7I@:(B $(C5N(B $(C9.@Z7N(B $(C18<:5G>n(B $(C@V4Y4B(B $(CA!?!<-(B $(CAv1]1nAv(B $(C9h?n(B $(C4Y8%(B $(C8m7I5i0z(B +$(C4Y8(4O4Y(B. $(C=C@[@:(B $(CA&>nn94O4Y(B. + + +* $(C3"?l1b?M(B $(CAv?l1b(B +----------------- + +$(C1[?y@;(B $(C3"?l1b(B $(C@'GX<-4B(B $(C1W(B $(C1[?y@;(B $(CE8@ZD!8i(B $(C5K4O4Y(B. A, 7, *, $(C5n5n0z(B +$(C00@L(B, $(C:<(B $(C($(C:91M$(C8&(B $(CD!8i(B $(C86Av87@87N(B $(C@T7B5H(B $(C9.@Z0!(B $(CAv?vA}4O4Y(B. $(C4B(B +$(C1[n62(B $(C0f?l?!4B(B +"Backspace" $(C1[$(C@G(B $(C?*GR@;(B $(CGO1b55(B $(CGOAv88(B $(CGW;s(B $(C1W78Av4B(B +$(C>J=@4O4Y(B! + +$(CA;(B $(C4u(B $(C@O9]@{@87N(B, $(C4B(B $(C1t9Z@L(B $(CGv@'D!@G(B $(C9Y7N(B $(C@|?!(B $(C@V4B(B $(C9.@Z8&(B +$(CAv?s4O4Y(B. + +>> $(C1W(B $(C0M@;(B $(CGX(B $(C:8=J=C?@(B--$(C8n8n(B $(C9.@Z8&(B $(CD#(B $(CHD(B $(C8&(B $(CCD<-(B + $(CAv?v:8=J=C?@(B. $(C@L(B $(CFD@O@L(B $(C:/0f5G4B(B $(C0M?!(B $(C4kGQ(B $(C0FA$@:(B $(CGOAv(B $(C>J>F55(B + $(C5K4O4Y(B; $(C@86d(B $(CAvD'<-4B(B $(C:/0f5GAv(B $(C>J=@4O4Y(B. $(C@L(B $(CFD@O@:(B $(C@86d(B $(CAvD'<-@G(B + $(C03@N?k(B $(C:9;g:;@T4O4Y(B. + +$(C1[?y@L(B $(CH-8i@G(B $(CGQ(B $(CAY?!(B $(C4Y(B $(C5i>n0!Av(B $(C8xGR(B $(CA$557N(B $(CD?Av8i(B $(C1[?y@G(B $(CAY@:(B +$(CH-8i@G(B $(C5N9xB0(B $(CAY?!<-(B "$(C0hnAv4B(B $(C0M@;(B $(C0!8.E54O4Y(B. + +>> $(C1[?y@;(B $(C0hn<-557O(B $(CGO=J=C?@(B. $(C1W7/8i(B $(CAY(B + $(C0h> $(C8&(B $(C=a<-(B $(C1[?y@G(B $(CAY@L(B $(CGQ(B $(CH-8i(B $(CAY?!(B $(C2K(B $(CBw557O(B $(C4Y=C(B + $(CAv?l=J=C?@(B. $(CAY(B $(C0hx>nA}4O4Y(B. + +$(C;uAY(B $(C9.@Z55(B $(C4Y8%(B $(C9.@ZC373(B $(CAv?o(B $(Cn<-(B +$(CH-8i@G(B $(C3J:q8&(B $(C3Q>n<-8i(B $(C1W(B $(CAY@:(B $(CAY(B $(C0h> $(C1t9Z@L8&(B $(CAY@G(B $(C=C@[@87N(B $(C?rAw?)<-(B $(C8&(B $(CD!=J=C?@(B. $(C1W7/8i(B $(C1W(B + $(CAY@L(B $(C@L@|(B $(CAY0z(B $(CGUCDAz(B $(C0M@T4O4Y(B. + +>> $(C4Y=C(B $(C@;(B $(CCD<-(B $(CAv?vAx(B $(C;uAY(B $(C9.@Z8&(B $(C3"?l=J=C?@(B. + +$(C4k:N:P@G(B $(C@L8F=:(B $(C8m7I?!4B(B $(C9]:9(B $(CH=oGO=J=C?@(B; +$(C1[?y(B $(C9.@Z55(B $(CGX4g5K4O4Y(B. $(C1[?y(B $(C9.@Z8&(B $(C9]:9GO4B(B $(C0M@:(B $(C1W(B $(C0M@;(B $(C?)7/9x(B +$(C3"?l4B(B $(C0M@T4O4Y(B. + +>> $(C1W(B $(C0M@;(B $(CAv1](B $(CGX(B $(C:>4O4Y(B -- C-u 8 *$(C@;(B $(CCD<-(B ********$(C@;(B $(C3"?l=J=C?@(B. + +$(C@LA&(B $(C@L8F=:?!<-(B $(C9+>p0!8&(B $(CD!0m(B $(CBx?@8&(B $(C13A$GO4B(B $(C0!@e(B $(C1b:;@{@N(B $(C9f9}@;(B +$(C9h?|=@4O4Y(B. $(C398;@L3*(B $(CAY55(B $(CGQ9x?!(B $(CAv?o(B $(C`GU4O4Y(B. + + $(C1t9Z@L(B $(CAw@|@G(B $(C9.@Z(B $(CAv?l1b(B + C-d $(C1t9Z@L(B $(C4Y@=@G(B $(C9.@Z(B $(CAv?l1b(B + + M- $(C1t9Z@L(B $(CAw@|@G(B $(C398;(B $(CAW@L1b(B + M-d $(C1t9Z@L(B $(C4Y@=@G(B $(C398;(B $(CAW@L1b(B + + C-k $(C1t9Z@L(B $(C@'D!7N:NEM(B $(CAY(B $(C3!1nAv(B $(CAW@L1b(B + M-k $(CGv@g(B $(C9.@e@G(B $(C3!1nAv(B $(CAW@L1b(B + +C-f$(C?M(B M-f$(C?!<-(B $(C=C@[GQ(B $(C@/;g<:@L(B $(C?M(B C-d $(C1W8.0m(B M-$(C?M(B M-d$(C7N(B +$(C@L>nAv4B(B $(C0M@;(B $(C@/@GGO=J=C?@(B ($(C4B(B $(CAxA$GQ(B $(CA&>n(B $(C9.@Z4B(B $(C>F4OAv88(B +$(C1W715%?!(B $(C;s3dGOAv(B $(C>J557O(B $(CGU=C4Y(B). $(CAY0z(B $(C9.@e@L(B $(C4Y8#5m@L(B C-k$(C?M(B M-k$(C4B(B +C-e$(C?M(B M-e$(C?M(B $(C4Y8(4O4Y(B. + +$(C@O7|@{@N(B $(C9f9}(B $(CGO3*7N(B $(C;g@LD-@G(B $(C>n62(B $(C:N:P55(B $(CAW@O(B $(C> $(C1t:}@L8&(B $(C@|(B $(C9.4\@G(B $(C=C@[@N(B `$(C@O(B'$(C@Z7N(B $(C?rAw@L=J=C?@(B. +>> C-SPC$(C8&(B $(CD!=C?@(B. $(C@L8F=:4B(B $(CH-8i@G(B $(C9Y4Z?!(B "Mark set"$(C@L6s4B(B $(C>K828;@;(B + $(C:8?)AY(B $(C0M@T4O4Y(B. +>> $(C1t:}@L8&(B $(C@'(B $(C9.4\@G(B $(C5N9xB0(B $(CAY?!(B $(C@V4B(B `$(C3!(B'$(C@Z7N(B $(C?rAw@L=C?@(B. +>> C-w$(C8&(B $(CD!=C?@(B. $(C1W7/8i(B `$(C@O(B'$(C@Z7N(B $(C=C@[GX<-(B `$(C3!(B'$(C@Z1nAv@G(B $(C1[?y@L(B $(CAW?)Az(B + $(C0M@T4O4Y(B. + +"$(CAW@L1b(B"$(C?M(B "$(CAv?l1b(B"$(C@G(B $(C4Y8%(B $(CA!@:(B "$(CAW?)Ax(B" $(C1[?y@:(B $(C@gBw(B $(C3"?v3V@;(B $(Cx4Y4B(B $(C0M@T4O4Y(B. $(CAW?)Ax(B $(C1[?y@;(B +$(C4Y=C(B $(C;g?kGO4B(B $(C0M@;(B "$(C@b>F4g1b1b(B(yanking)"$(C6s0m(B $(CGU4O4Y(B. $(C@O9]@{@87N(B $(C89@:(B +$(C1[?y@;(B $(CA&0EGO4B(B $(C8m7I@:(B $(C1[?y@;(B $(CAW@L3*(B ($(C1W71(B $(C8m7I5i@:(B $(C1W(B $(C1[?y5i@;(B $(C4Y=C(B +$(C@b>F4g1f(B $(CnA.(B $(C@V=@4O4Y(B), $(CGQ(B $(C9.@Z8&(B $(CA&0EGO0E3*(B +$(C:s(B $(CAY(B $(CH$@:(B $(C0x0#9.@Z8&(B $(CA&0EGO4B(B $(C8m7I5i@:(B $(CAv?r@[?k@;(B $(CGU4O4Y(B ($(C1W7!<-(B $(C1W(B +$(C1[?y5i@:(B $(C4Y=C(B $(C@b>F(B $(C4g1f(B $(Cx=@4O4Y(B). + +>> $(C1t9Z@L8&(B $(C:q>nA.(B $(C@VAv(B $(C>J@:(B $(CAY@G(B $(C=C@[@87N(B $(C?rAw@L=J=C?@(B. $(C1W8.0m4B(B + C-k$(C8&(B $(CCD<-(B $(C1W(B $(CAY@G(B $(C1[?y@;(B $(CAW@L=J=C?@(B. +>> C-k$(C8&(B $(C4Y=C(B $(CD!=J=C?@(B. $(C1W7/8i(B $(C1W(B $(CAY(B $(C4Y@=?!(B $(C@V4B(B $(C;uAY(B $(C9.@Z0!(B $(CAW?)Av4B(B + $(C0M@;(B $(C:<(B $(CnAv4B(B $(C8p5g(B $(CAY@;(B $(C@'7N(B $(C?C834O4Y(B. C-k$(C4B(B $(C<}@Z(B $(C@NF4U4O4Y(B. C-u 2 C-k$(C4B(B $(C5N(B $(CAY0z(B $(C1W(B $(CAY@G(B $(C;uAY(B $(C9.@Z8&(B +$(CAW@T4O4Y(B; C-k$(C8&(B $(C5N(B $(C9x(B $(CD!8i(B $(C1W78Av(B $(C>J=@4O4Y(B. + +$(CAW?)Ax(B $(C1[?y@;(B $(C4Y=C(B $(CH8F4g1b1b(B"$(C6s0m(B $(C:N8(4O4Y(B. ($(C4)1:0!0!(B +$(C;/>F0#(B $(C0M@;(B $(C4Y=C(B $(C@b>F(B $(C4g1b4B(B $(C0MC373(B $(C;}0"GO=J=C?@(B.) $(CAW?)Ax(B $(C1[?y@:(B +$(CAW?)Ax(B $(C1W(B $(C0w?!(B $(C4Y=C(B $(C@b>F(B $(C4g0\Az(B $(CF4g0\Az(B $(CF4g0\A|@87N=a(B $(C?)7/(B $(C:9;g:;@;(B $(C885i0T(B $(C5I(B $(CF4g1b1b(B $(C8m7I@:(B C-y$(C@T4O4Y(B. $(C1W7/8i(B $(C0!@e(B $(C86Av87@87N(B $(CAW?)Ax(B $(C1[?y@;(B +$(CGv@g@G(B $(C1t:}@L(B $(C@'D!?!(B $(CH8> $(CGX(B $(C:8=J=C?@(B; C-y$(C8&(B $(CCD<-(B $(C1[?y@;(B $(C4Y=C(B $(C@b>F4g1b=J=C?@(B. + +$(CGQ(B $(C0!7ND-?!<-(B C-k$(C8&(B $(C?)7/9x(B $(C>28i(B $(CAW?)Ax(B $(C1[?y5i@L(B $(CGT22(B $(C0%9+8.5G>n(B $(C1W(B $(CAY(B +$(C8p5N8&(B C-y $(CGQ(B $(C9x@87N(B $(C@b>F4g1f(B $(C> C-k$(C8&(B $(C?)7/9x(B $(CCD<-(B $(C1W(B $(C0M@;(B $(CGX(B $(C:8=J=C?@(B. + +$(CAW?)Ax(B $(C1[?y@;(B $(CH8> C-y$(C8&(B $(CD!=J=C?@(B. $(C1W8.0m4B(B $(C1t9Z@L8&(B $(C8n(B $(CAY(B $(C>F7!7N(B $(C?rAw?)<-(B C-y$(C8&(B $(C4Y=C(B + $(CD!=J=C?@(B. $(C1[?y@L(B $(C>n6;0T(B $(C:9;g5G4B0!8&(B $(C>K(B $(CF4g1f(B $(C1[?y@L(B $(C@V4B5%(B $(C4Y8%(B $(C0M@;(B $(C6G(B $(CAW@L8i(B $(C>n6;0T(B $(C5G0Z=@4O1n(B? +C-y$(C4B(B $(C4u(B $(CCV1Y?!(B $(CAW?)Ax(B $(C0M@;(B $(C@b>F4g1f(B $(C0M@T4O4Y(B. $(C1W7/3*(B $(C1W(B $(C@|@G(B $(C1[?y@:(B +$(C@R>n9v80(B $(C0M@L(B $(C>F4U4O4Y(B. $(C1W(B $(C0M@:(B M-y $(C8m7I@;(B $(C=a<-(B $(CH8F4g0\A34x(B +$(C1[?y@L(B $(C1W(B $(C@|?!(B $(CAW?)Ax(B $(C0M@87N(B $(C;u7N9Y2n>nA}4O4Y(B(replace). M-y$(C8&(B $(CC$Bw(B +$(C?,0EG*(B $(CD!8i(B $(C@L@|?!(B $(CAW?)Ax(B $(C0M5i@L(B $(CBw7J7N(B $(C3*?I4O4Y(B. $(CC#0m@Z(B $(CGO4B(B $(C1[?y@L(B +$(C3*?@8i(B $(C4Y8%(B $(C@O@;(B $(CGR(B $(CGJ?d0!(B $(C>x=@4O4Y(B. $(C4\F4g0\Ax(B $(C1[?y@L(B $(C1W0w?!(B $(C32>F(B $(C@V0T(B $(C5K4O4Y(B. + +M-y$(C8&(B $(C0hF(B $(C?I4O4Y(B. + +>> $(CGQ(B $(CAY@;(B $(CAW@L0m(B $(CAV@'7N(B $(C?rAw@N(B $(CHD(B $(C4Y8%(B $(CAY@;(B $(CAW@L=J=C?@(B. + $(C1W8.0m4B(B C-y$(C7N(B $(C5N9xB0(B $(CAW?)Ax(B $(CAY@;(B $(CH8y@L(B $(C3*?@4B0!8&(B $(C:8=J=C?@(B. $(C5N9xB0(B $(CAW?)Ax(B $(CAY@L(B $(C3*?C(B + $(C6'1n4O(B $(C1W780T(B $(C0hgK0T(B $(C5G8i(B $(C9+8#1b(B(undo) $(C8m7I(B, C-x +u$(C7N(B $(C:/0f;gGW@;(B $(C9+8&(B $(CJ4B(B $(C8m7I@:(B $(C0m7A(B +$(C4k;s?!<-(B $(CA&?\5K4O4Y(B ($(C?)1b?!4B(B $(C1t9Z@L8&(B $(C?rAw@L4B(B $(C8m7I0z(B $(CH-8i(B $(C5N7g8;1b(B +$(C8m7I@L(B $(C@V=@4O4Y(B). $(C1W8.0m(B $(C@ZC<3"?l1b(B(self-inserting) $(C9.@Z5i@:(B +$(CFr;s@{@87N(B 20$(C031nAv@G(B $(CA}4\@87N(B $(CC38.5K4O4Y(B. ($(C@L4B(B $(C1[?y(B $(C3"?l1b8&(B $(C9+8#1b(B +$(C@'GX<-(B $(CE8@ZGX>_(B $(CGO4B(B C-x u$(C@G(B $(C> $(C@L(B $(CAY@;(B C-k$(C7N(B $(CAW@N(B $(CHD(B C-x u$(C8&(B $(CD!8i(B $(CAY@L(B $(C4Y=C(B $(C3*E83/(B $(C0M@T4O4Y(B. + +C-_$(C4B(B $(C9+8#1b(B $(C8m7I@G(B $(C4Y8%(B $(CG|EB@T4O4Y(B; C-x u$(C?M(B $(C00@:(B $(C@[?k@;(B $(CGOAv88(B $(CGQ(B +$(C0!7ND-?!<-(B $(C?)7/9x(B $(CE8@ZGO1b?!(B $(CFmGU4O4Y(B. C-_$(C@G(B $(C4\A!@:(B, $(C>n62(B +$(C1[n6;0T(B $(CE8@ZGX>_(B $(C5G4B0!0!(B $(C:R8m7aGO4Y4B(B $(C0M@T4O4Y(B. +$(C1W7!<-(B C-x u$(C55(B $(C;g?kGR(B $(Cn(B $(C@V4B(B $(C0M@T4O4Y(B. $(C>n62(B +$(C4\8;1b?!<-4B(B, CONTROL$(Cn62(B $(C0M@;(B $(CAW@L4B(B $(C0M0z(B $(CAv?l4B(B $(C0M@G(B $(CBw@LA!@:(B C-y$(C7N(B $(C@b>F4g1f(B $(Cx=@4O4Y(B. + +* $(CFD@O(B +------ + +$(CFmA}GQ(B $(C1[?y@;(B $(C?518@{@87N(B $(CGO1b(B $(C@'GX<-4B(B $(CFD@O?!(B $(C3V>n(B $(C5N>n>_(B $(CGU4O4Y(B. +$(C1W780T(B $(CGOAv(B $(C>J@88i(B, $(C@L8F=:0!(B $(C>x>nA|0z(B $(CGT22(B $(C1[?y55(B $(C;g6sA}4O4Y(B. $(C1[?y@;(B +$(CFD@O?!(B $(C3V1b(B $(C@'GX<-4B(B $(C1W7/1b(B $(C@|?!(B $(C1W(B $(CFD@O@;(B "$(CC#>F>_(B" $(CGU4O4Y(B. ($(C@L4B(B +$(CFD@O@;(B "$(C9f9.GO4B(B $(C0M(B"$(C@L6s0m55(B $(CGU4O4Y(B.) + +$(CFD@O@;(B $(CC#4B4Y4B(B $(C0M@:(B $(C@L8F=:(B $(C>H?!<-(B $(C1W(B $(CFD@O@G(B $(C3;?k@;(B $(C:;4Y4B(B $(C0M@;(B +$(C@G9LGU4O4Y(B. $(C?)7/0!Av(B $(C8i?!<-(B, $(C1W0M@:(B $(C1W(B $(CFD@O(B $(C@ZC<8&(B $(CFmA}GO7A4B(B $(C0M0z(B +$(C4Y8'>x=@4O4Y(B. $(C1W7/3*(B, $(C@L8F=:7N(B $(C:/0fGQ(B $(C;gGW@:(B $(C1W(B $(CFD@O@;(B "$(C0%9+8.(B"$(CGO1b(B +$(C@|1nAv4B(B $(C?518@{@LAv(B $(C8xGU4O4Y(B. $(C@L4B(B $(C@}9]Bk(B $(C:/0f5H(B $(CFD@O@;(B $(C?xD!(B $(C>J0T(B +$(C?n?5(B $(CC<0h?!(B $(C320\(B $(C5N4B(B $(C0M@;(B $(CGGGO1b(B $(C@'GX<-(B $(C1W78=@4O4Y(B. $(C0%9+8.8&(B $(CGX55(B +$(C@L8F=:4B(B $(C:/0f(B $(C;gGW@L(B $(C3*A_?!(B $(C=GHGX(B $(C1Y?x(B +$(CFD@O@;(B $(C:/0f5H(B $(C@L8'@87N(B $(C320\5S4O4Y(B. + +$(CH-8i@G(B $(C9Y4Z(B $(C0!1n@L8&(B $(C:88i(B "--:-- TUTORIAL.ko"$(C?M(B $(C00@:(B $(C=D@87N(B $(C=C@[GO4B(B, +$(C4k=C(B $(C9.@Z7N(B $(C=C@[GX<-(B $(C4k=C(B $(C9.@Z7N(B $(C3!3*4B(B $(CAY@L(B $(C@V@;(B $(C0M@T4O4Y(B. $(CH-8i@G(B $(C@L(B +$(C:N:P@:(B $(C:8Ek(B, $(C9f9.GO0m(B $(C@V4B(B $(CFD@O@G(B $(C@L8'@;(B $(C:8?)(B $(CA]4O4Y(B. $(CAv1]@:(B $(C@L8F=:(B +$(CAvD'<-@G(B $(C:9;g:;@N(B "TUTORIAL.ko"$(C6s4B(B $(CFD@O@;(B $(C9f9.GO0m(B $(C@V4B(B $(CA_@T4O4Y(B. +$(C@L8F=:7N(B $(CFD@O(B $(CC#1b8&(B $(CGO8i(B $(CA$H.Hw(B $(C1W(B $(C0w?!(B $(CFD@O@G(B $(C@L8'@L(B $(C3*E8334O4Y(B. + +$(CFD@O(B $(CC#1b(B $(C8m7I@G(B $(CF/:0GQ(B $(CA!@:(B $(C?xGO4B(B $(CFD@O@G(B $(C@L8'@;(B $(C8;GX>_(B $(CGO4B(B +$(C0M@T4O4Y(B. $(C8m7I@L(B "$(C4\8;1b7N:NEM(B $(C@NF7!@G(B $(C8m7I@;(B $(CD!0m(B $(C3*8i(B + + C-x C-f $(CFD@O(B $(CC#1b(B + +$(C@L8F=:4B(B $(CFD@O@G(B $(C@L8'@;(B $(CD!6s0m(B $(C?d18GU4O4Y(B. $(CFD@O(B $(C@L8'@;(B $(CD!8i(B $(CH-8i@G(B $(C9Y4Z(B +$(CAY?!(B $(C@L8'@L(B $(C3*E8334O4Y(B. $(C@L71(B $(CA>7y@G(B $(C@T7B?!(B $(C>2@O(B $(C6'?!4B(B $(C9Y4Z(B $(CAY@;(B $(C@[@:(B +$(C;g@LD-(B(minibuffer)$(C@L6s0m(B $(C:N8(4O4Y(B. $(CFr;s=C?!(B $(C>24B(B $(C@L8F=:@G(B $(CFmA}(B +$(C8m7I@87N(B $(CFD@O(B $(C@L8'@;(B $(CFmA}GR(B $(C7y@G(B $(C@[@:(B $(C;g@LD-(B $(C@T7B@;(B) $(C3V@;(B $(C6'(B, $(C8m7I@G(B +$(CCk> C-x C-f$(C8&(B $(CD!0m(B C-g$(C8&(B $(CD!=J=C?@(B. $(C@L4B(B $(C@[@:(B $(C;g@LD-@;(B $(CCk20m(B $(C@V4B(B C-x C-f $(C8m7I55(B $(CCkF9+(B + $(CFD@O55(B $(CC#Av(B $(C>J4B(B $(C0M@T4O4Y(B. + +$(CFD@O(B $(C@L8'@;(B $(C4Y(B $(C1b@TG_@88i(B $(C@;(B $(CCD<-(B $(CA>7aGO=J=C?@(B. $(C1W7/8i(B C-x +C-f $(C8m7I@L(B $(C@[5?5G>n(B $(C<1EC5H(B $(CFD@O@;(B $(CC#1b(B $(C=C@[GU4O4Y(B. C-x C-f $(C8m7I@L(B +$(C3!3*8i(B $(C@[@:(B $(C;g@LD-@:(B $(C;g6sA}4O4Y(B. + +$(C@a=C(B $(CHD?!4B(B $(CFD@O@G(B $(C3;?k@L(B $(CH-8i?!(B $(C3*E83*0m(B $(C1W(B $(C3;?k@;(B $(CFmA}GR(B $(Cn(B $(C3u@=@87N=a(B $(C@R>n9v81(B +$(C?l7A8&(B $(C9fAvGU4O4Y(B. $(C;u(B $(C@L8'@:(B $(C1Y?x(B $(CFD@O(B $(C@L8'@G(B $(C3!?!(B "~"$(C@;(B $(C4uGT@87N=a(B +$(C885i>nA}4O4Y(B. + +$(C0%9+8.0!(B $(C3!3*8i(B $(C@L8F=:4B(B $(C>2?)Ax(B $(CFD@O@G(B $(C@L8'@;(B $(C@NFAV(B +$(C@ZAV(B $(C0%9+8.GT@87N=a(B $(C?n?5(B $(CC<0h0!(B $(C?M8#8#(B $(C9+3JA.55(B $(C89@:(B $(C@[>w@L(B $(CJ557O(B $(CGU4O4Y(B. + +>> C-x C-s$(C8&(B $(CCD<-(B $(CAvD'<-@G(B $(C:9;g:;@;(B $(C0%9+8.(B $(CGO=J=C?@(B. + $(C1W7/8i(B "Wrote ...TUTORIAL.ko"$(C6s0m(B $(CH-8i@G(B $(C9Y4Z?!(B $(C@Nn62(B $(C?n?5(B $(CC<0h?!<-4B(B C-x C-s$(C8&(B $(CD!8i(B $(CH-8i@;(B $(C5?0a=CDQ<-(B, $(C@L8F=:0!(B +$(C>F9+(B $(CCb7B55(B $(CGOAv(B $(C>J4B(B $(C0M@;(B $(C:<(B $(C0f?l0!(B $(C@V=@4O4Y(B. $(C@L0M@:(B "$(CHe8'(B $(CA&>n(B"$(C6s0m(B +$(C:R8.?l4B(B $(C?n?5(B $(CC<0h@G(B "$(CF/B!(B"$(C@L(B C-s$(C8&(B $(C0!7NC$<-(B $(C@L8F=:8&(B $(CEkGX(B $(C@|4^5GAv(B +$(C>J557O(B $(CGO1b(B $(C6'9.@T4O4Y(B. C-q$(C8&(B $(C4)8#8i(B $(CH-8i@L(B $(CGXA&5K4O4Y(B. $(C1W8.0m(B $(C3*<-(B +$(C@L8F=:(B $(C<38m<-@G(B "Spontaneous Entry to Incremental Search"$(C6s4B(B $(C4\?x@;(B +$(C:88i(B $(C@L71(B "$(CF/B!(B"$(C@;(B $(C>n6;0T(B $(CCk1^GR(B $(Cp@;(B $(C@P@;(B $(CJ4B(B $(CFD@O55(B $(CC#@;(B $(CF<-(B $(C1[?y@;(B $(C3"?l1b(B $(C=C@[GU4O4Y(B. +$(CFD@O@;(B "$(C0%9+8.(B"$(CGO557O(B $(C?dC;GO8i(B $(C@L8F=:4B(B $(C3"?vAx(B $(C1[?y@;(B $(C3;?k@87N(B $(CGO4B(B +$(CFD@O@;(B $(C=GA&7N(B $(C885i>n(B $(C3@4O4Y(B. $(C1W71(B $(CHD?!4B(B $(C@L(B $(CFD@O@:(B $(C@L9L(B $(CA8@gGO4B(B +$(CFD@O@L(B $(C5K4O4Y(B. + + +* $(C;g@LD-(B +-------- + +$(C5N9xB0(B $(CFD@O@;(B C-x C-f$(C7N(B $(CC#@88i(B, $(CC99xB0(B $(CFD@O@:(B $(C@L8F=:@G(B $(C3;:N?!(B $(C32>F(B +$(C@V=@4O4Y(B. $(C1W(B $(CFD@O@:(B C-x C-f$(C7N(B $(C@gBw(B $(CC#@=@87N<-(B $(C4Y=C(B $(C>y9Y2\(B $(C> C-x C-f foo $(C@;(B $(CCD<-(B "foo"$(C6s4B(B $(C@L8'@G(B $(CFD@O@;(B $(C885e=J=C?@(B. + $(C1W8.0m4B(B $(C1[?y@;(B $(C3"?l0m(B $(CFmA}GO?)(B C-x C-s$(C7N(B "foo"$(C8&(B $(C0%9+8.GO=J=C?@(B. + $(C86Av87@87N(B, C-x C-f TUTORIAL.ko $(C@;(B $(CCD<-(B $(CAvD'<-7N(B $(C4Y=C(B $(C59>F(B + $(C?@=J=C?@(B. + +$(C@L8F=:4B(B $(C0"(B $(CFD@O@G(B $(C1[?y@;(B "$(C;g@LD-(B"$(C@L6s0m(B $(C:R8.?l4B(B $(C0M(B $(C>H?!(B $(C@z@eGU4O4Y(B. +$(CFD@O@;(B $(CC#4B(B $(C0M@:(B $(C@L8F=:@G(B $(C3;:N?!(B $(C;u(B $(C;g@LD-@;(B $(C885e4B(B $(C0M0z(B $(C00=@4O4Y(B. +$(C@L8F=:@G(B $(C@O7N(B $(CGvA8GO0m(B $(C@V4B(B $(C;g@LD-@G(B $(C8q7O@;(B $(C:81b(B $(C@'GX<-4B(B $(C4Y@=0z(B $(C00@L(B +$(CD!=J=C?@(B. + + C-x C-b $(C;g@LD-(B $(C8q7O(B + +>> C-x C-b$(C8&(B $(CAv1](B $(CCD(B $(C:8=J=C?@(B. + +$(C0"(B $(C;g@LD-@L(B $(C>n62(B $(C@L8'@;(B $(C0.0m(B $(C@V4B0!(B $(C:8=J=C?@(B. $(C;g@LD-@:(B $(C0#AwGO0m(B $(C@V4B(B +$(C1[?y@G(B $(C8pC<0!(B $(C5G4B(B $(CFD@O@G(B $(C@L8'@;(B $(C0.0m(B $(C@V@;(B $(Cn62(B +$(C;g@LD-5i@:(B $(CFD@O0z(B $(C9+0|GU4O4Y(B. $(C?98&(B $(C5i>n(B, "*Buffer List*"$(C6s4B(B $(C;g@LD-@:(B +$(C>F9+(B $(CFD@O55(B $(C0.0m(B $(C@VAv(B $(C>J=@4O4Y(B. $(C@L(B $(C;g@LD-@:(B C-x C-b$(C7N(B $(C885i>nAx(B $(C;g@LD-(B +$(C8q7O@;(B $(C4c0m(B $(C@V@;(B $(C;S@T4O4Y(B. $(C@L8F=:(B $(CC"(B $(C>H?!<-(B $(C:<(B $(Cn62(B $(C;g@LD-@G(B $(C@O:N:P(B $(C@T4O4Y(B. + +>> C-x 1$(C@;(B $(CCD<-(B $(C;g@LD-(B $(C8q7O@;(B $(C>x>V=J=C?@(B. + +$(CGQ(B $(CFD@O@G(B $(C1[?y@;(B $(C:/0fGQ(B $(CHD(B $(C4Y8%(B $(CFD@O@;(B $(CC#@88i(B $(CC99xB0(B $(CFD@O@:(B $(C0%9+8.5GAv(B +$(C>J@:(B $(C0M@T4O4Y(B. $(C1W(B $(C:/0f(B $(C;gGW@:(B $(C@L8F=:(B $(C3;:N@G(B $(CFD@O(B $(C;g@LD-?!88(B $(C32>F(B +$(C@V=@4O4Y(B. $(C5N9xB0(B $(CFD@O@G(B $(C;g@LD-@;(B $(C885i0E3*(B $(CFmA}GO4B(B $(C0M@:(B $(CC99xB0(B $(CFD@O@G(B +$(C;g@LD-?!(B $(C@|Gt(B $(C?5Gb@;(B $(CAVAv(B $(C>J=@4O4Y(B. $(C@L4B(B $(C8E?l(B $(C@/?kGO1b4B(B $(CGO3*(B $(C4Y8%(B +$(C8i?!<-4B(B $(CC99xB0(B $(CFD@O@G(B $(C;g@LD-@;(B $(C0%9+8.GR(B $(Cy9Y2[(B $(CHD(B +C-x C-s$(C7N(B $(C0%9+8.GO4B(B $(C0M@:(B $(C1MBz@:(B $(C@O@T4O4Y(B. $(C1W7!<-(B $(C4Y@=0z(B $(C00@:(B $(C8m7I@L(B +$(C@V=@4O4Y(B + + C-x s $(C8n8n(B $(C;g@LD-(B $(C0%9+8.(B + +C-x s$(C4B(B, $(C:/0f5G>zAv88(B $(C0%9+8.5GAv(B $(C>J@:(B $(C;g@LD-@L(B $(C@V3*(B $(CA6;gGX(B $(C:>4O4Y(B. +$(C1W8.0m4B(B $(C1W71(B $(C;g@LD-5i?!(B $(C4kGX<-(B $(C1W(B $(C0M@;(B $(C0%9+8.GR(B $(C0M@N0!8&(B $(C90>n(B +$(C:>4O4Y(B. + +>> $(CGQ(B $(CAY@G(B $(C1[?y@;(B $(C3"?n(B $(CHD(B C-x s$(C8&(B $(CD!=J=C?@(B. + $(C1W7/8i(B TUTORIAL.ko$(C6s4B(B $(C@L8'@G(B $(C;g@LD-@;(B $(C0%9+8.GR(B $(C0M@NAv(B $(C90>n(B $(C:<(B + $(C0M@T4O4Y(B. "y"$(C8&(B $(CCD<-(B $(C90@=?!(B $(C?96s0m(B $(C4dGO=J=C?@(B. + +* $(C8m7I>n@G(B $(CH.@e(B +--------------- + +$(C@L8F=:@G(B $(C8m7I>n4B(B $(C3J9+(B $(C89>F<-(B $(C@L(B $(C8p5g(B $(C8m7I@;(B $(CA&>nx=@4O4Y(B. $(C@L8F=:4B(B $(C@L71(B $(C9.A&8&(B X (eXtend) $(C8m7I@87N(B $(CGX0aGU4O4Y(B. +$(C@L?!4B(B $(C5N0!Av(B $(CA>7y0!(B $(C@V=@4O4Y(B: + + C-x $(C9.@Z(B $(CH.@e(B. $(C9.@Z(B $(CGO3*0!(B $(C5Z5{8'(B. + M-x $(C@L8'(B $(C8m7I@G(B $(CH.@e(B. $(C1d(B $(C@L8'@L(B $(C5Z5{8'(B. + +$(C@L(B $(C8m7I5i@:(B $(C4k03(B $(C@/?kGOAv88(B, $(CAv1]1nAv(B $(C9h?v(B $(C?B(B $(C8m7I5i:84Y4B(B $(C4z(B $(C:s9xGO0T(B +$(C;g?k5K4O4Y(B. $(C@L71(B $(CA>7y@G(B $(C8m7I@;(B $(C@L9L(B $(C5N(B $(C03(B $(C>K0m(B $(C@V=@4O4Y(B: $(CFD@O(B +$(C8m7I(B $(CA_?!(B C-x C-f$(C7N(B $(CC#1b?M(B C-x C-s$(C7N(B $(C0%9+8.GO1b(B. $(C4Y8%(B $(C?94B(B $(C@L8F=:(B $(C@[>w(B +$(C=C0#@;(B $(C86D!4B(B $(C8m7I@T4O4Y(B--$(C@L4B(B C-x C-c $(C8m7I(B. ($(C:/0f(B $(C;gGW@;(B +$(C@R>n9v8.Av3*(B $(C>J@;1n(B $(CGO4B(B $(C0FA$@:(B $(C>J(B $(CGX55(B $(C5K4O4Y(B; C-x C-c$(C4B(B $(C@L8F=:8&(B +$(CAW@L1b(B $(C@|?!(B $(C0"0"@G(B $(C:/0f5H(B $(CFD@O@;(B $(C0%9+8.GR(B $(C1bH88&(B $(CA]4O4Y(B.) + +C-z$(C4B(B $(C@L8F=:8&(B *$(C@S=C7N(B* $(C3*?@1b(B $(C@'GQ(B $(C8m7I@T4O4Y(B--$(C1W7!<-(B $(C4Y@=?!(B, $(CGO4x(B +$(CA_@G(B $(C@L8F=:(B $(C@[>w(B $(C=C0#@87N(B $(C4Y=C(B $(C5G59>F(B $(C0%(B $(CF(B $(C0!557O(B $(CGOAv88(B $(C@L8F=:8&(B $(CFD1+GO4B(B $(C0M@:(B +$(C>F4U4O4Y(B. $(C4k:N:P@G(B $(CA60!:q?!<-4B(B `fg'$(C3*(B `%emacs'$(C8m7I@87N(B $(C@L8F=:8&(B $(C0hJ4B(B $(C?n?5(B $(CC<0h?!<-4B(B C-z$(C?!(B $(C@GGX(B, $(C@L8F=:(B $(C9X?!<-(B +$(C=GG`5G4B(B $(C>F7'A60!:q0!(B $(C885i>n(B $(CAv0T(B $(C5G4B5%(B $(C?)1b<-(B $(C4Y8%(B $(CGA7N1W7%5i@;(B +$(C=GG`GQ(B $(CHD(B $(C@L8F=:7N(B $(C59>F(B $(C?C(B $(CF4U4O4Y(B. $(C@L(B $(C0f?l(B $(C:8Ek(B, $(CA60!:q(B $(C8m7I@N(B `exit'$(C@87N(B +$(C>F7'A60!:q?!<-(B $(C@L8F=:?!(B $(C5G59>F(B $(C?I4O4Y(B. + +C-x C-c$(C4B(B $(C@|;j1b?!<-(B $(C9~>n3*1b(B $(CGR(B $(C6'3*(B $(C;g?kGU4O4Y(B. $(CFmAv8&(B $(CCk1^GO4B(B +$(CGA7N1W7%@L3*(B $(C4Y8%(B $(C@b4YGQ(B $(C55?r8p(B(utilities)$(C5i@L(B $(C>_1bGQ(B $(C@L8F=:4B(B +$(CA_Av=CE24Y4B(B $(C0M@;(B $(C8p8#1b(B $(C6'9.?!(B $(C3*0!1b8&(B $(CGX>_(B $(CGU4O4Y(B. $(CGOAv88(B, $(C:8Ek@G(B +$(C0f?l(B, $(C9~>n3*1b8&(B $(CGOAv(B $(C>J4B(B $(CGQ(B, $(C@L8F=:8&(B $(C3*0!1b:84Y4B(B $(CA_AvGO4B(B $(C0M@L(B +$(CAA=@4O4Y(B. + +C-x $(C8m7I>n4B(B $(C89@L(B $(C@V=@4O4Y(B. $(C@L9L(B $(C9h?n(B $(C0M@;(B $(C>F7!?!(B $(CAW:8@T4O4Y(B. + + C-x C-f $(CFD@O(B $(CC#1b(B. + C-x C-s $(CFD@O(B $(C0%9+8.(B. + C-x C-b $(C;g@LD-(B $(C8q7O(B. + C-x C-c $(C@L8F=:(B $(C3!3;1b(B. + C-x u $(C9+8#1b(B. + +$(C@L8'(B $(CH.@e(B $(C8m7I@:(B $(C@ZAV(B $(C;g?k5GAv(B $(C>J0E3*(B $(CF/:0GQ(B $(C9f=D?!<-3*(B $(C>2@L4B(B +$(C8m7I@T4O4Y(B. $(CGQ0!Av(B $(C?94B(B replace-string $(C8m7I@N5%(B $(C@L4B(B $(C@|?*@{@87N(B $(CGQ(B +$(C9.@Z?-@;(B $(C4Y8%(B $(C9.@Z?-7N(B $(C;u7N9Y2_4O4Y(B. M-x$(C8&(B $(CD!8i(B $(C@L8F=:4B(B $(CH-8i@G(B +$(C9Y4Z?!<-(B M-x$(C6s0m(B $(C1f@b@LGO?)(B $(C8m7I@G(B $(C@L8'@;(B $(CD!557O(B $(CGU4O4Y(B; $(C@L(B $(C0f?l4B(B +"replace-string". "repl s"$(C88(B $(CCD55(B $(C@L8F=:4B(B $(C@L8'@;(B $(C?O<:=CE3(B +$(C0M@T4O4Y(B. $(C8m7I(B $(C@L8'@:(B $(C@87N(B $(C3!334O4Y(B. + +replace-string $(C8m7I@:(B $(C5N03@G(B $(C@NnA.>_(B $(CGR(B $(C9.@Z?-0z(B +$(C;u7N9Y2n>nAz(B $(C9.@Z?-(B. $(C0"0"@G(B $(C@N$(C@87N(B $(C3!3;>_(B $(CGU4O4Y(B. + +>> $(C1t9Z@L8&(B $(C@L(B $(CAY?!<-(B $(C5N(B $(CAY(B $(C>F7!@G(B $(C:s(B $(CAY7N(B $(C?rAw@L=J=C?@(B. + $(C1W(B $(CHD(B M-x repl s$(C:/H-5G(B$(C9Y2n(B$(C@;(B $(CD!=J=C?@(B. + + $(C@L(B $(CAY@L(B $(C>n6;0T(B $(C:/H-5G>z4B0!8&(B $(C@/@GGO=J=C?@(B: $(C1t9Z@L0!(B $(C@V4B(B $(CCJ1b(B $(C@'D!(B + $(C4Y@=?!(B $(C:/(B-$(CH-(B-$(C5G(B $(C6s4B(B $(C398;@L(B $(C3*?C(B $(C6'864Y(B "$(C9Y2n(B"$(C6s0m(B + $(C;u7N9Y2n>z=@4O4Y(B. + + +* $(C@Z5?(B $(C0%9+8.(B +------------- + +$(CFD@O@;(B $(C:/0fGQ(B $(CHD?!(B $(C>FAw(B $(C0%9+8.8&(B $(CGOAv(B $(C>J>R@88i(B $(C@|;j1b0!(B $(C?M8#8#(B +$(C9+3JA|@87N=a(B $(C:/0f(B $(C;gGW@;(B $(C@R>n(B $(C9v81(B $(CS@;(B $(C9fAvGO1b(B +$(C@'GX(B, $(C@L8F=:4B(B $(CFmA}GO0m(B $(C@V4B(B $(C0"0"@G(B $(CFD@O@;(B $(CAV1b@{@87N(B "$(C@Z5?(B $(C0%9+8.(B" +$(CFD@O?!(B $(C>94O4Y(B. $(C@Z5?(B $(C0%9+8.5H(B $(CFD@O@G(B $(C@L8'@:(B $(C>U5Z7N(B # $(C9.@Z0!(B $(C@V=@4O4Y(B; +$(C?98&(B $(C5i>n(B, "hello.c"$(C6s4B(B $(C@L8'@G(B $(CFD@O@:(B "#hello.c#"$(C6s4B(B $(C@L8'@G(B $(C@Z5?(B +$(C0%9+8.(B $(CFD@O@;(B $(C0.0T(B $(C5K4O4Y(B. $(CA$;s@{@87N(B $(CFD@O@;(B $(C0%9+8.GO8i(B $(C@L8F=:4B(B $(C@Z5?(B +$(C0%9+8.(B $(CFD@O@;(B $(CAv?s4O4Y(B. + +$(C@|;j1b0!(B $(C?M8#8#(B $(C9+3JAv8i(B $(C1W(B $(CFD@O@;(B ($(C@Z5?(B $(C0%9+8.5H(B $(CFD@O@L(B $(C>F4O6s(B +$(CFmA}GO4x(B $(CFD@O(B) $(CFr;s=CC373(B $(CC#@:(B $(CHD(B M-x recover-file$(C@;(B $(CD'@87N=a(B +$(C@Z5?(B $(C0%9+8.5H(B $(CFmA}90@;(B $(CH8:9=CE3(B $(C$(C@;(B $(CCD<-(B $(C0hF8.(B $(CEM(B +----------- + +$(C@L8F=:0!(B, $(C8m7I@;(B $(CD!4B(B $(CF8.(B +$(CEM(B"$(C6s0m(B $(C:R8.4B(B $(C:s(B $(CEM?!(B $(CD#(B $(C8m7I@;(B $(C:8?)A]4O4Y(B. $(C8^>F8.(B $(CEM4B(B $(CH-8i@G(B $(C9Y4Z(B +$(CAY@T4O4Y(B. + + +* $(C9f=D(B $(CAY(B +--------- + +$(C8^>F8.(B $(CEM@G(B $(C9Y7N(B $(C@-(B $(CAY@:(B "$(C9f=D(B $(CAY(B"$(C@L6s0m(B $(C:N8(4O4Y(B. $(C9f=D(B $(CAY@:(B $(C4Y@=0z(B +$(C00@:(B $(C=D@87N(B $(CG%=C5G>n(B $(C@V=@4O4Y(B. + +--:** TUTORIAL.ko (Fundamental)--L670--58%---------------- + +$(C@L(B $(CAY?!4B(B $(C@L8F=:3*(B $(CFmA}GO0m(B $(C@V4B(B $(C1[?y@G(B $(C;sH2?!(B $(C4kGQ(B $(C@/?kGQ(B $(CA$:80!(B +$(C0#Aw5G>n(B $(C@V=@4O4Y(B. + +$(CFD@O(B $(C@L8'@L(B $(C9+>y@;(B $(C@G9LGO4BAv4B(B $(C@L9L(B $(C>K0m(B $(C@V=@4O4Y(B--$(C1W(B $(C0M@:(B $(CC#>R4x(B +$(CFD@O@T4O4Y(B. -NN%--$(C4B(B $(C1[?y?!<-@G(B $(CGv@g(B $(C@'D!8&(B $(C0!8.E54O4Y(B; $(C@L4B(B $(CH-8i(B +$(C2@4k1b(B $(C@'7N(B NN $(CF[<>F.@G(B $(C1[?y@L(B $(C@V@=@;(B $(C@G9LGU4O4Y(B. $(CFD@O@G(B $(C2@4k1b0!(B +$(CH-8i?!(B $(C@V@88i(B --00%-- $(C4k=E?!(B --Top--$(C@L6s0m(B $(CG%=C5K4O4Y(B. $(C1[?y@G(B +$(C9X9Y4Z@L(B $(CH-8i?!(B $(C@V@88i(B --Bot--$(C@L6s0m(B $(CG%=C5K4O4Y(B. $(C1[?y@L(B $(C>FAV(B $(C@[>F<-(B +$(C8p5g(B $(C3;?k@L(B $(CH-8i?!(B $(C4Y(B $(C3*E83*8i(B $(C9f=D(B $(CAY?!4B(B --All--$(C@L6s0m(B $(CG%=C5K4O4Y(B. + +$(C0E@G(B $(C>U:N:P?!(B $(C@V4B(B $(C:0(B $(C9.@Z5i@:(B $(C1[?y@L(B $(C:/0f5G>z@=@;(B $(C@G9LGU4O4Y(B. $(CFD@O(B +$(C9f9.(B $(CAwHD3*(B $(C0%9+8.(B $(CAwHD?!4B(B $(C1W(B $(C0w?!(B $(C:0(B $(C9.@Z0!(B $(C>x0m(B $(C4k=C(B $(C9.@Z88(B +$(C@V=@4O4Y(B. + +$(C9f=D(B $(CAY@G(B $(C0}H#(B $(C9.@Z>H@:(B $(C>n62(B $(CFmA}(B $(C9f=D@;(B $(C;g?kGO0m(B $(C@V4B0!8&(B +$(C>K7AA]4O4Y(B. $(C>VCJ(B $(C9f=D@:(B Fundamental$(C7N<-(B $(CAv1](B $(C;g?k5G0m(B $(C@V4B(B +$(C9f=D@T4O4Y(B. $(C@L4B(B "$(CAV(B $(C9f=D(B"$(C@G(B $(CGQ(B $(C?9@T4O4Y(B. + +$(C@L8F=:?!4B(B $(CAV(B $(C9f=D@L(B $(C89@L(B $(C@V=@4O4Y(B. $(C1W(B $(CA_(B $(C8n0!Av4B(B $(C4Y8%(B $(C>p>n(B $(C6G(B/$(C6G4B(B +$(C4Y8%(B $(CA>7y@G(B $(C1[?y@;(B $(CFmA}GO557O(B $(CGO4B5%(B $(C>2@L8g(B, Lisp $(C9f=D(B, Text $(C9f=D(B +$(C5n5n@L(B $(C@V=@4O4Y(B. $(CGW;s(B $(CGQ(B $(C0!Av(B $(CAV(B $(C9f=D88@L(B $(C@{?k5G8g(B $(CAv1](B +"Fundamental"$(C@L6s0m(B $(C@{Gt(B $(C@V4B(B $(C0w?!(B $(CG%=C5K4O4Y(B. + +$(C0"0"@G(B $(CAV(B $(C9f=D@:(B $(C8n8n(B $(C8m7I5i@L(B $(C@[5?@;(B $(C4^8.GO557O(B $(C5G>n(B $(C@V=@4O4Y(B. $(C?98&(B +$(C5i>n(B, $(CGA7N1W7%?!4B(B $(C<38m9.@;(B $(C885e4B(B $(C8m7I@L(B $(C@V4B5%(B, $(CGA7N1W7%(B $(C>p>n5i@:(B +$(C<38m9.@G(B $(CG|EB@;(B $(C0"0"(B $(C4^8.(B $(CGO1b(B $(C6'9.?!(B $(C0"0"@G(B $(CAV(B $(C9f=D@:(B $(C<38m9.@;(B $(C<-7N(B +$(C4Y8#0T(B $(C3"?v(B $(C3V557O(B $(C5G>n(B $(C@V=@4O4Y(B. $(C8p5g(B $(CAV(B $(C9f=D@:(B $(CH.@e(B $(C8m7I@G(B $(C@L8'@;(B +$(C;g?kGO9G7N<-(B $(C1W(B $(C9f=D@87N(B $(C>y9Y2Y4B(B $(C0M@L(B $(C=10T(B $(C@N=D5I(B $(Cy9Y2Y4B(B $(C8m7I@T4O4Y(B. + +$(C@L(B $(CFD@O0z(B $(C00@:(B $(CGQ1[(B $(C1[?y@;(B $(CFmA}GO7A0m(B $(CGQ4Y8i(B Text $(C9f=D@;(B $(C>24B(B $(C0M@L(B +$(CAA@;(B $(C0M@T4O4Y(B. +>> M-x text mode$(C@;(B $(CCD(B $(C:8=J=C?@(B. + +$(CAv1]1nAv(B $(C9h?n(B $(C@L8F=:(B $(C8m7I5i@:(B $(C89@L(B $(C4^6sAvAv(B $(C>J@84O(B $(C0FA$GOAv(B $(C>J>F55(B +$(C5K4O4Y(B. $(C1W7/3*(B M-f$(C?M(B M-b$(C0!(B $(C>U@[@:5{?HG%8&(B $(C398;@G(B $(C@O:N7N(B $(CC38.GT@;(B +$(C0|B{GR(B $(CU@[@:5{?HG%8&(B $(C398;(B $(C:P8.(B $(C9.@Z7N(B $(CCk1^GO?4=@4O4Y(B. + +$(CAV(B $(C9f=D@:(B $(C:8Ek(B $(C4Y@=0z(B $(C00@:(B $(C9L9&GQ(B $(C:/H-8&(B $(CCJ7!GU4O4Y(B: $(C4k:N:P@G(B $(C8m7I5i@:(B +$(C0"0"@G(B $(CAV(B $(C9f=D?!<-(B "$(C00@:(B $(C@O(B"$(C@;(B $(CGOAv88(B $(C>`0#(B $(C4Y8#0T(B $(C@[5?GQ4Y(B. + +$(CGv@g@G(B $(CAV(B $(C9f=D?!(B $(C4kGQ(B $(C9.<-H-8&(B $(C:80m@Z(B $(CGO8i(B C-h m$(C@;(B $(CD!=J=C?@(B. + +>> C-u C-v$(C8&(B $(C8n(B $(C9x(B $(CCD<-(B $(C@L(B $(CAY@;(B $(CH-8i@G(B $(C2@4k1bBk@87N(B $(C?rAw@L=J=C?@(B. +>> C-h m$(C@;(B $(CCD<-(B Text $(C9f=D0z(B Fundamental $(C9f=D@G(B $(CBw@LA!@;(B $(C:8=J=C?@(B. +>> C-x 1$(C@;(B $(CCD<-(B $(C9.<-H-8&(B $(CH-8i?!<-(B $(C>x>V=J=C?@(B. + +$(CAV(B $(C9f=D@:(B $(C:N(B $(C9f=D@L(B $(C@V1b(B $(C6'9.?!(B $(CAV(B $(C9f=D@L6s0m(B $(C:N8(4O4Y(B. $(C:N(B $(C9f=D@:(B $(CAV(B +$(C9f=D@;(B $(C13CF4O6s(B $(CAV(B $(C9f=D@;(B $(C:NBw@{@87N(B $(C2Av(B $(C>J@;(B $(C5(B $(C5(B $(CFAV(B $(C@/?kGQ(B $(C:N(B $(C9f=DA_(B, $(CGQ1[(B $(C1[?y@;(B $(CFmA}GR(B $(C6'(B $(C@ZAV(B $(C;g?k5G4B(B Auto Fill +$(C9f=D@L(B $(C@V=@4O4Y(B. $(C@L(B $(C9f=D@L(B $(CDQA.(B $(C@V@;(B $(C6'(B $(C@L8F=:4B(B, $(CAY@L(B $(C3J9+(B $(C3P>nAv8i(B +$(C1[?y@L(B $(C3"?vA|?!(B $(C5{6s(B $(C398;;g@L?!<-(B $(C@Z5?@87N(B $(CAY9Y2^@;(B $(CGU4O4Y(B. + +Auto Fill $(C9f=D@;(B $(CDQ1b(B $(C@'GX<-4B(B M-x auto-fill-mode$(C@;(B $(CD(4O4Y(B. +$(C@L(B $(C9f=D@L(B $(CDQA.(B $(C@V@88i(B M-x auto-fill-mode$(C@;(B $(CCD<-(B $(C2x(B $(C> M-x auto fill mode$(C@;(B $(CAv1](B $(CCD(B $(C:8=J=C?@(B. $(C1W8.0m(B "asdf "$(C6s4B(B + $(CAY@;(B $(C0hn<-(B $(C1W(B $(CAY@L(B $(C5Q7N(B $(C3*45557O(B $(CGO=J=C?@(B. Auto Fill + $(C9f=D@:(B $(C0x0#(B $(C9.@Z?!<-88(B $(CAY9Y2^@;(B $(CGO1b(B $(C6'9.?!(B $(C2@(B $(C0x0#(B $(C9.@Z0!(B $(C5i>n(B + $(C@V>n>_(B $(CGU4O4Y(B. + +$(CGQ0h4B(B $(C:8Ek(B 70$(C03@G(B $(C9.@Z7N(B $(CA$GXA.(B $(C@VAv88(B C-x f $(C8m7I@87N(B $(C1W(B $(C0M@;(B $(C:/0fGR(B +$(C_(B $(CGU4O4Y(B. + +>> 20$(C@L6s4B(B $(C@NJ=@4O4Y(B. $(C1W(B $(C4\6t@;(B $(C4Y=C(B $(CC$?l1b(B $(C@'GX<-4B(B $(C1t9Z@L0!(B $(C4\6t(B $(C>H?!(B $(C@V4B(B +$(C;sEB?!<-(B M-q (Meta$(C> $(C1t9Z@L8&(B $(C@L@|(B $(C4\6t@87N(B $(C?rAw@N(B $(CHD(B M-q$(C8&(B $(CD!=J=C?@(B. + +* $(CC#1b(B +------ + +$(C@L8F=:4B(B $(C1[?y@G(B $(C>UBJ@L3*(B $(C5^BJ@87N(B $(C9.@Z?-@;(B ($(C9.@Z?-@:(B $(C?,H?!(B $(CC#1b0!(B +$(C@L7g>nAv0m(B $(C@V4Y4B(B $(C0M@;(B $(C@G9LGU4O4Y(B. + +$(CC#1b8&(B $(C=C@[=CE04B(B $(C8m7I@:(B $(C>UBJ@87N(B $(CC#1b0!(B C-s$(C@L0m(B $(C5^BJ@87N(B $(CC#1b0!(B +C-r$(C@T4O4Y(B. $(C1W7/3*(B $(C@a1q(B $(C1b4Y8.=J=C?@(B! $(CAv1](B $(C@L0M@;(B $(C=C55GX(B $(C:8Av(B +$(C86=J=C?@(B. + +C-s$(C8&(B $(CD!8i(B $(C8^>F8.(B $(CEM?!(B, $(C1f@b@L7N(B "I-search"$(C6s4B(B $(C9.@Z?-@L(B $(C3*E83*4B(B $(C0M@;(B +$(C:<(B $(C$(C@:(B $(CC#1b8&(B +$(C86D(4O4Y(B. + +>> $(C@LA&(B C-s$(C8&(B $(CCD<-(B $(CC#1b8&(B $(C=C@[GO=J=C?@(B. $(CC5C5Hw(B, $(CGQ(B $(C9x?!(B $(CGQ(B $(C1[@Z>?(B + 'cursor'$(C6s0m(B $(CD!8i<-(B $(C0"0"@G(B $(C9.@Z8&(B $(CD#(B $(CHD(B $(C1t9Z@L?!(B $(C>n62(B $(C@O@L(B $(C@O>n(B + $(C3*4B0!8&(B $(C@/@GGO=J=C?@(B. + $(C@LA&(B "cursor"$(C8&(B $(CGQ(B $(C9x(B $(CC#@:(B $(C0M@T4O4Y(B. +>> C-s$(C8&(B $(C4Y=C(B $(CCD<-(B $(C4Y@=?!(B $(C3*E83*4B(B "cursor"$(C8&(B $(CC#@8=J=C?@(B. +>> $(C@Z(B, $(C@LA&4B(B $(C8&(B $(C3W(B $(C9x(B $(CCD<-(B $(C1t9Z@L0!(B $(C>n6;0T(B $(C?rAw@L4B0!8&(B + $(C:8=J=C?@(B. +>> $(C@;(B $(CCD<-(B $(CC#1b8&(B $(C3!3;=J=C?@(B. + +$(C>n62(B $(CGv;s@L(B $(C@O>n3*4BAv8&(B $(C:8>R=@4O1n(B? $(CAu0!@{(B $(CC#1b?!<-(B $(C@L8F=:4B(B $(C1W6'1nAv(B +$(CE8@ZGQ(B $(C9.@Z?-@;(B $(CC#@87A0m(B $(CGU4O4Y(B. '$(C1t9Z@L(B'$(C0!(B $(C@V4B(B $(C4Y@=(B $(C@ex@88i(B $(C@L8F=:4B(B $(C;`K7A(B $(CAV8g(B C-g$(C7N55(B $(CC#1b8&(B $(C3!3>(B $(Cn62(B $(C?n?5(B $(CC<0h?!<-4B(B C-s$(C8&(B $(CD!8i(B $(CH-8i@;(B $(C5?0a=CDQ<-(B, $(C@L8F=:0!(B $(C>F9+(B +$(CCb7B55(B $(CGOAv(B $(C>J4B(B $(C0M@;(B $(C:<(B $(C0f?l0!(B $(C@V=@4O4Y(B. $(C@L0M@:(B "$(CHe8'(B $(CA&>n(B"$(C6s0m(B +$(C:R8.?l4B(B $(C?n?5(B $(CC<0h@G(B "$(CF/B!(B"$(C@L(B C-s$(C8&(B $(C0!7NC$<-(B $(C@L8F=:8&(B $(CEkGX(B $(C@|4^5GAv(B +$(C>J557O(B $(CGO1b(B $(C6'9.@T4O4Y(B. C-q$(C8&(B $(C4)8#8i(B $(CH-8i@L(B $(CGXA&5K4O4Y(B. $(C1W8.0m(B $(C3*<-(B +$(C@L8F=:(B $(C<38m<-@G(B "Spontaneous Entry to Incremental Search"$(C6s4B(B $(C4\?x@;(B +$(C:88i(B $(C@L71(B "$(CF/B!(B"$(C@;(B $(C>n6;0T(B $(CCk1^GR(B $(Cp@;(B $(C@P@;(B $(C$(C8&(B $(CD!8i(B $(CC#1b(B $(C9.@Z?-@G(B $(C86Av87(B $(C9.@Z0!(B +$(CAv?vAv0m(B $(CC#1b4B(B $(C86Av87@87N(B $(CC#>R4x(B $(C0w?!(B $(C5G59>F(B $(C0!4B(B $(C0M@;(B $(C:<(B $(Cn(B, "c"$(C0!(B $(C>n5p?!(B $(CC3@=@87N(B $(C3*?@4BAv8&(B $(C:81b(B $(C@'GX<-(B +"c"$(C8&(B $(CCF4Y0m(B $(CGU=C4Y(B. $(C@LA&(B "u"$(C8&(B $(CD!8i(B $(C1t9Z@L4B(B "cu"$(C0!(B $(CC3@=@87N(B $(C3*?@4B(B +$(C0w@87N(B $(C?rAw@O(B $(C0M@T4O4Y(B. $(C@LA&(B $(C8&(B $(CD!=J=C?@(B. $(C1W7/8i(B $(CC#1b(B +$(C9.@Z?-?!<-(B "u"$(C0!(B $(CAv?vAv0m(B $(C1t9Z@L4B(B "c"$(C0!(B $(CC3@=(B $(C3*?B(B $(C0w@87N(B $(C5G59>F(B +$(C0)4O4Y(B. + +$(CC#1bA_?!(B $(CA&>n(B $(C9.@Z3*(B meta $(C9.@Z8&(B $(CD!8i(B ($(C?9?\0!(B $(C@VAv88(B--$(CC#1b?!<-(B $(CF/:0GQ(B +$(C@G9L8&(B $(C0.4B(B C-s$(C3*(B C-r$(C0z(B $(C00@:(B $(C9.@Z5i(B) $(CC#1b4B(B $(C3!3*9v834O4Y(B. + +C-s$(C4B(B $(C1t9Z@L@G(B $(CGv@g(B $(C@'D!(B $(C4Y@=?!(B $(C9_0_5G4B(B $(CC#1b(B $(C9.@Z?-@;(B $(CC#557O(B +$(C=C@[=CE54O4Y(B. $(C@L@|?!(B $(C3*?B(B $(C1[?y?!<-(B $(C9+>p0!8&(B $(CC#@87A8i(B C-r$(C8&(B $(CD(4O4Y(B. +C-s$(C?!(B $(C@{?k5G4B(B $(C8p5g(B $(C;gGW@:(B $(C9fGb88(B $(C9Y2n>z@;(B $(C;S(B $(C8p5N(B C-r$(C?!(B $(C@{?k5K4O4Y(B. + +* $(C4YA_(B $(CC"(B +--------- + +$(C@L8F=:@G(B $(C1&Bz@:(B $(CF/B!(B $(CA_@G(B $(CGO3*7N(B $(CGQ(B $(C03(B $(C@L;s@G(B $(CC"@;(B $(C5?=C?!(B $(CH-8i?!(B $(CG%=CGR(B +$(C> $(C1t9Z@L8&(B $(C@L(B $(CAY7N(B $(C?rAw?)<-(B C-u 0 C-l$(C@;(B $(CCD(B $(C:8=J=C?@(B. + +>> C-x 2$(C8&(B $(CCD<-(B $(CH-8i@;(B $(C5N(B $(CC"@87N(B $(C3*4)=J=C?@(B. + $(C5N(B $(CC"@:(B $(C@L(B $(CAvD'<-8&(B $(CH-8i(B $(CG%=CGU4O4Y(B. $(C1t9Z@L4B(B $(C@-(B $(CC"?!(B $(C@V=@4O4Y(B. + +>> C-M-v$(C8&(B $(CCD<-(B $(C9Y4Z(B $(CC"@;(B $(C5N7g8;1b(B $(CGO=J=C?@(B. + (Meta$(Cx@88i(B ESC C-v$(C8&(B $(CD!=J=C?@(B.) + +>> C-x o ("o"$(C4B(B "other"$(C@G(B $(CC9(B $(C1[@Z(B)$(C8&(B $(CCD<-(B $(C1t9Z@L8&(B $(C9Y4Z(B $(CC"@87N(B + $(C?rAw@L=J=C?@(B. +>> $(C9Y4Z(B $(CC"?!<-(B C-v$(C?M(B M-v$(C8&(B $(C=a<-(B $(C5N7g8;1b(B $(CGO=J=C?@(B. + $(C@L(B $(CAv=C8&(B $(C@P4B(B $(C0M@:(B $(C2@4k1b(B $(CC"?!<-(B $(CGU4O4Y(B. + +>> C-x o$(C8&(B $(C4Y=C(B $(CCD<-(B $(C1t9Z@L8&(B $(C4Y=C(B $(C2@4k1b(B $(CC"@87N(B $(C?rAw@L=J=C?@(B. + $(C2@4k1b(B $(CC"?!<-(B, $(C1t9Z@L4B(B $(C@|?!(B $(C@V4x(B $(C0w@87N(B $(C0%(B $(C0M@T4O4Y(B. + +C-x o$(C8&(B $(C0hy9Y2Y1b8&(B $(CGR(B $(Cy@L(B +$(CC3@=?!(B $(C?@4B0!0!(B $(C9.A&5GAv(B $(C>J=@4O4Y(B. + +META$(Cx>n<-(B ESC$(Cn_(B $(CGO8g(B $(CA&>nJ=@4O4Y(B. $(C1W(B +$(C@L@/4B(B ESC$(C@L(B $(C:/0fF4O6s(B $(C@ZC<7N<-(B $(C1b4I@;(B $(C0!Ax(B $(C9.@Z@L1b(B $(C6'9.@T4O4Y(B. + +>> C-x 1$(C@;(B ($(C@L(B $(C2@4k1b(B $(CC"?!<-(B) $(CCD<-(B $(C9Y4Z(B $(CC"@;(B $(C>x>V=J=C?@(B. + +($(C9Y4Z(B $(CC"?!<-(B C-x 1$(C@;(B $(CD!8i(B $(C2@4k1b(B $(CC"@L(B $(C>x>nAz(B $(C0M@T4O4Y(B. $(C@L(B $(C8m7I@;(B "$(CGQ(B +$(CC"88(B $(C:8A8GO=C?@(B--$(CAv1](B $(C@[>wA_@N(B $(CC"88(B"$(C@L6s0m(B $(C;}0"GO=J=C?@(B.) + +$(C>gBJ(B $(CC"?!(B $(C00@:(B $(C;g@LD-@;(B $(CH-8i(B $(CG%=CGR(B $(CGJ?d4B(B $(C>x=@4O4Y(B. $(CGQ(B $(CC"?!<-(B C-x +C-f$(C7N(B $(CFD@O@;(B $(CC#@88i(B $(C4Y8%(B $(CC"@:(B $(C:/H-0!(B $(C>x=@4O4Y(B. $(C0"0"@G(B $(CC"?!<-(B $(CFD@O@;(B +$(C5683@{@87N(B $(CC#@;(B $(C> C-x 4 C-f$(C8&(B $(CD!0m(B $(CFD@O(B $(C@L8'(B $(CGO3*8&(B $(CCD(B $(C:8=J=C?@(B. + $(C@87N(B $(C3!3;=J=C?@(B. $(C1W(B $(CFD@O@L(B $(C9Y4Z(B $(CC"?!(B $(C3*E83*4B(B $(C0M@;(B + $(C:8=J=C?@(B. $(C1t9Z@L55(B $(C1W(B $(C0w@87N(B $(C?rAw@T4O4Y(B. + +>> C-x o$(C8&(B $(CCD<-(B $(C4Y=C(B $(C2@4k1b(B $(CC"@87N(B $(C59>F(B $(C0!<-(B C-x 1$(C7N(B $(C9Y4Z(B $(CC"@;(B + $(CAv?l=J=C?@(B. + + +* $(CH81M@{(B $(CFmA}(B $(CU5Z?!(B $(C@V4B(B $(CK(B $(Cn(B, +(Fundamental) $(C4k=E?!(B [(Fundamental)]$(C@L6s0m(B $(CG%=C5I(B $(C6'(B $(C@T4O4Y(B. + +$(C@L(B $(CH81M@{(B $(CFmA}(B $(Cn(B $(C3*1b(B $(C@'GX<-4B(B ESC ESC ESC$(C@;(B $(CD(4O4Y(B. +$(C@L(B $(C0M@:(B $(C4Y8q@{(B "$(C9~>n3*1b(B" $(C8m7I@T4O4Y(B. $(CC_0!5H(B $(CC"@;(B $(C>x>V0E3*(B $(C@[@:(B +$(C;g@LD-?!<-(B $(C3*?@1b(B $(C@'GX<-55(B $(C;g?k5I(B $(C> M-x$(C8&(B $(CCD<-(B $(C@[@:(B $(C;g@LD-@87N(B $(C5i>n(B $(C0!=J=C?@(B; $(C1W8.0m4B(B ESC ESC ESC$(C@;(B + $(CCD<-(B $(C:|A.(B $(C3*?@=J=C?@(B. + +C-g$(C8&(B $(C=a<-4B(B $(CH81M@{(B $(CFmA}(B $(Cn3/(B $(Cx=@4O4Y(B. $(C1W(B $(C@L@/4B(B C-g$(C0!(B +$(CH81M@{(B $(CFmA}(B $(Cr1b(B +--------------------- + +$(C@L(B $(CAvD'<-?!<-4B(B $(C@L8F=:(B $(C;g?k@;(B $(C=C@[GO1b?!(B $(CCf:PGQ(B $(CA$:88&(B $(CA&0xGO7A0m(B +$(C3k7BGO?4=@4O4Y(B. $(C@L8F=:?!4B(B $(C3J9+3*(B $(C89@:(B $(C1b4I@L(B $(C@V>n<-(B $(C?)1b<-4B(B $(C8p5N(B $(C4Y(B +$(C<38mGR(B $(Cx=@4O4Y(B. $(C1W7/3*(B, $(C@L8F=:?!4B(B $(C4Y8%(B $(C89@:(B $(C@/?kGQ(B $(CF/B!5i@L(B +$(C@V>n<-(B $(C@L8F=:?!(B $(C4kGX<-(B $(C4u(B $(C89@L(B $(C9h?l0m(B $(C=M@;(B $(C0M(B $(C@T4O4Y(B. $(C@L8F=:4B(B $(C@L8F=:(B +$(C8m7I?!(B $(C4kGQ(B $(C9.<-H-8&(B $(C@P@;(B $(Cn7y@G(B $(C55?r8;@;(B +$(C0!8#E04B(B $(C9.@Z8&(B $(CD(4O4Y(B. $(C@|Gt(B $(C;}0"@L(B $(C>J3*8i(B C-h ?$(C8&(B $(CCD<-(B, $(C@L8F=:0!(B +$(C>n62(B $(CA>7y@G(B $(C55?r8;@;(B $(CA&0xGR(B $(CF9+71(B $(C55?r8;@L(B $(CGJ?d>x4Y0m(B $(CFG4\5G8i(B C-g$(C8&(B $(CCD<-(B $(CCkn62(B $(C0w?!<-4B(B C-h$(C@G(B $(C@G9L8&(B $(C:/0f=CDQ(B $(C3u=@4O4Y(B. $(C1W5i@L(B $(C8p5g(B $(C;g?k@Z?!0T(B +$(C@L785m(B $(C@O0}@{@N(B $(CA6C38&(B $(CCkGX<-4B(B $(C>J5G4B(B $(C0M@L9G7N(B $(C@L0M@:(B $(C?n?5(B $(CC<0h(B +$(C0|8.@Z?!0T(B $(C:RFrGR(B $(CK828;@;(B $(CH-8i(B $(CG%=CGOAv(B $(C>J@88i(B $(C:RFr@L(B $(CGX0a5I(B $(C6'1nAv4B(B F1 $(C1[$(C@;(B $(C4k=E(B $(C;g?kGO557O(B $(CGO=J=C?@(B.) + +$(C0!@e(B $(C1b:;@{@N(B $(C55?r8;(B $(CF/B!@:(B C-h c $(C@T4O4Y(B. C-h$(C8&(B $(CD!0m(B $(C9.@Z(B c$(C8&(B $(CD#(B $(CHD(B +$(C8m7I(B $(C9.@Z3*(B $(C8m7I(B $(CFAV(B $(C0#4\GQ(B $(C<38m@;(B $(CH-8i(B $(CG%=CGU4O4Y(B. + +>> C-h c $(CA&>nK828;@:(B $(C4Y@=0z(B $(C00@:(B $(C=D@L>n>_(B $(CGU4O4Y(B. + + C-p runs the command previous-line + +$(C@L4B(B "$(C1b4I@G(B $(C@L8'(B"$(C@;(B $(C8;GX(B $(CA]4O4Y(B. $(C1b4I(B $(C@L8'@:(B $(C@L8F=:8&(B $(C@Z1b(B $(CCkGb?!(B +$(C8B0T(B $(C>20E3*(B $(CH.@eGR(B $(C6'(B $(CAV7N(B $(C;g?k5K4O4Y(B. $(C1W7/3*(B $(C1b4I(B $(C@L8'5i@:(B $(C1W(B $(C8m7I@L(B +$(C>n62(B $(C@O@;(B $(CGO4BAv8&(B $(C>K(B $(CFAV(B $(C0#4\GQ(B +$(C9.<-H-7N55(B -- $(C?)EB1nAv(B $(C9h?n(B $(C8m7I5i@;(B $(C1b>oGO4B5%(B $(CCf:PGR(B $(CA$557N(B -- +$(C;g?k5I(B $(Cv$(C?M(B $(C00@:(B $(C4YA_(B +$(C9.@Z(B $(C8m7I5i55(B C-h c$(C@G(B $(C4Y@=?!(B $(C?C(B $(Cr1b(B $(C@'GX<-4B(B C-h c $(C4k=E?!(B C-h k$(C8&(B +$(C;g?kGO=J=C?@(B. + +>> C-h k $(CA&>nz@88i(B C-x 1$(C7N(B $(C55?r8;(B $(C1[?y@;(B $(C>x>[4O4Y(B. $(C4g@e?!(B $(C>x>Y(B +$(CGJ?d4B(B $(C>x=@4O4Y(B. $(C55?r8;(B $(C1[?y@;(B $(CB|A6GO8i<-(B $(CFmA}@;(B $(CGO4Y0!(B C-x 1$(C@;(B $(CCD55(B +$(C5K4O4Y(B. + +$(C?)1b?!(B $(C6G4Y8%(B $(C@/?kGQ(B C-h$(C@G(B $(CC_0!(B $(C<1EC@L(B $(C@V=@4O4Y(B: + + C-h f $(C1b4I(B $(C1b> C-h f previous-line$(C@;(B $(CCD(B $(C:8=J=C?@(B. + $(C1W7/8i(B $(C@L8F=:0!(B C-p $(C8m7I@L(B $(CA&0xGO4B(B $(C1b4I?!(B $(C4kGQ(B $(C8p5g(B $(CA$:88&(B $(C@Nn(B(apropos). $(CGY=I>n8&(B $(CD!8i(B $(C@L8F=:0!(B $(C@L(B + $(CGY=I>n0!(B $(C5i>n(B $(C@V4B(B $(C8p5g(B $(C8m7I5i@G(B $(C8q7O@;(B $(C@[<:GR(B + $(C0M@T4O4Y(B. $(C@L(B $(C8m7I5i@:(B $(C8p5N(B Meta$(Cn62(B $(C8m7I5i?!(B $(C4kGX<-4B(B $(C00@:(B $(C8m7I@;(B $(C=GG`GO4B(B, + $(CGQ5N03@G(B $(C9.@Z7N(B $(C5H(B $(Cn0!(B + $(C@[<:GU4O4Y(B. + +>> C-h a file$(C@;(B $(CCD(B $(C:8=J=C?@(B. + +$(C1W7/8i(B $(C@L8'?!(B "file"$(C@L(B $(C5i>n(B $(C@V4B(B $(C8p5g(B M-x $(C8m7I5i@G(B $(C8q7O@L(B $(C@[<:5G?)(B +$(C4Y8%(B $(CC"?!(B $(CH-8i(B $(CG%=C5K4O4Y(B. find-file$(C0z(B $(C00@:(B $(C8m7I5i?!4B(B C-x C-f$(C?M(B $(C00@:(B +$(C9.@Z(B $(C8m7I@G(B $(C8q7O@L(B $(CGX4gGO4B(B $(C8m7I@G(B $(C?7?!(B $(C@[<:5G>n(B $(C@V4B(B $(C0M@;(B $(C:<(B $(C> C-M-v$(C8&(B $(CCD<-(B $(C55?r8;(B $(CC"@;(B $(C5N7g8;1b(B $(CGO=J=C?@(B. $(C@L8&(B $(C8n(B $(C9x(B $(CGO=J=C?@(B. + +>> C-x 1$(C@;(B $(CCD<-(B $(C55?r8;(B $(CC"@;(B $(CAv?l=J=C?@(B. + + C-h i $(C?B6s@N(B $(C<38m<-8&(B $(C@P1b(B ($(CAo(B Info). $(C@L(B $(C8m7I@:(B + `*info*'$(C6s4B(B $(CF/:0GQ(B $(C;g@LD-?!<-(B $(C=C=:E[?!(B $(C<3D!5H(B + $(C2Y7/9L@G(B $(C?B6s@N(B $(C<38m<-8&(B $(C:8?)A]4O4Y(B. m emacs + <$(C:91M$(C8&(B $(CD!8i(B $(C@L8F=:(B $(C<38m<-8&(B $(C@P@;(B $(Cn(B $(C:;(B $(C@{@L(B $(C>x@88i(B ?$(C8&(B $(CD!=J=C?@(B. $(C1W7/8i(B + $(C@L8F=:0!(B Info $(C9f=D@L(B $(C>n62(B $(C1b4I@L(B $(C@V4B(B $(CAv8&(B $(C>H3;GO4B(B + $(C?)G`@L(B $(C=C@[5K4O4Y(B. $(C@L(B $(CAvD'<-8&(B $(C@|:N(B $(C86D!8i(B $(C@L8F=:@G(B + Info $(C<38m<-8&(B $(CAV5H(B $(C9.<-H-7N(B $(C;}0"GX<-(B $(C@P>n>_(B $(CGU4O4Y(B. + +* $(C0a7P(B +------ + +$(C@L8F=:8&(B $(C?O@|Hw(B $(C3*0!1b(B $(C@'GX<-4B(B C-x C-c$(C8&(B $(C>44Y4B(B $(C;g=G@;(B $(C1b>oGO=J=C?@(B. +$(C@O=C@{@87N(B $(CA60!:q7N(B $(C3*0!<-(B $(CHD?!(B $(C4Y=C(B $(C@L8F=:?!(B $(C5G59>F(B $(C?C(B $(CnA3@89G7N(B +$(C:R:P8mGQ(B $(C;gGW@L(B $(C9_0_5G8i(B $(C>I>F<-(B $(C@Z1b(B $(C@Z=E@;(B $(CE?GOAv(B $(C8;0m(B $(C:RFrGO=J=C?@(B! + + +$(C:9;g(B $(CA60G(B +--------- + +$(C@L(B $(CAvD'<-4B(B Stuart Cracraft$(C>>0!(B $(C@L8F=:(B $(C1Y?x(B $(C@Z7a8&(B $(C@'GX(B $(C>4(B, $(C1d(B $(C@L8F=:(B +$(CAvD'<-8&(B $(C8pC<7N(B $(CGO?)(B $(C@[<:5H(B $(C0M@L4Y(B. + +GNU $(C@L8F=:?M(B $(C00@L(B $(C@L(B $(CAvD'<-(B $(CFG@:(B $(C@z@[1G@L(B $(C@V@88g(B $(CF/A$GQ(B $(CA60G@;(B $(C88A7GR(B +$(C6'?!(B $(C:9;g:;@;(B $(C9hFwGR(B $(Cn62(B $(C8EC<7N5gAv(B $(C9^@:(B $(C1W4k7N8&(B $(C:9;gGO0E3*(B + $(C:9;g:;@L(B $(C4Y8%(B $(C@L?!0T(B $(C9hFw5G4B(B $(C0M@L(B $(CGc?k5H4Y(B. + + $(C@L(B $(C9.<-@G(B $(Cn8&(B $(C>20m(B $(C885i0m(B $(C0x@/GT@87N=a(B $(Cn(B +$(C9fGX8&(B ("$(C betekent: houd de CONTROL-toets ingedrukt en tik de toets + Dus C-f wordt: houd de CONTROL-toets ingedrukt en tik f. + M- betekent: houd de META-, EDIT- of ALT-toets ingedrukt en tik + de toets . Als er geen toets META, EDIT of ALT is, kun + je ook eerst de ESC-toets tikken, gevolgd door . We + verwijzen naar de ESC-toets als . + +BELANGRIJK: om Emacs te verlaten, tik C-x C-c (twee tekens). +De tekens ">>" tegen de linkerkantlijn nodigen je uit om een bepaald +commando te proberen. Bijvoorbeeld: +<> +[Lege regels om didactische redenen. Hieronder gaat het verder.] +>> Tik nu C-v (volgend scherm) om naar het volgende scherm te gaan. + (Geef nu het commando door de CONTROL-toets ingedrukt te + houden terwijl je de v tikt.) Vanaf nu moet je dit steeds + herhalen als je klaar bent met het lezen van een scherm. + +Merk op dat er een overlapping van twee regels is als je van een +scherm naar het volgende gaat; dat zorgt voor continuïteit bij het +lezen van de tekst. + +Het eerste wat je moet weten, is hoe je je naar verschillende plaatsen +in de tekst kan bewegen. Je weet al hoe je een scherm vooruit moet +gaan: met C-v. Om een scherm terug te gaan, tik je M-v (houd de +META-toets ingedrukt en tik v, of tik v als je geen META-, EDIT- +of ALT-toets hebt). + +>> Probeer nu een paar keer M-v, steeds gevolgd door C-v. + + +* SAMENVATTING +-------------- + +De volgende commando's zijn handig om volledige schermen te bekijken: + + C-v Ga een scherm vooruit + M-v Ga een scherm terug + C-l Maak het scherm schoon en teken alle tekst opnieuw, + waarbij de regel waarop de cursor staat, op het + midden van het scherm terecht komt. (C-l is + CONTROL-L, niet CONTROL-1.) + +>> Kijk waar de cursor staat, en onthoud de tekst er omheen. Tik C-l. + Zoek de cursor en merk op dat hij nog steeds bij dezelfde tekst + staat. + +Als je toetsenbord PageUp- en PageDn-toetsen heeft dan kun je deze ook +gebruiken om een scherm terug dan wel vooruit te gaan, maar het werken +met C-v en M-v is efficiënter. + + +* BASISCOMMANDO'S CURSORBEWEGINGEN +---------------------------------- + +Het is handig om je per scherm te bewegen, maar hoe beweeg je je nu +naar een specifieke plaats op het scherm? + +Er is een aantal manieren waarop je dit kan doen. Je kan de +pijltjestoetsen gebruiken, maar het is efficiënter om je handen in de +standaardhouding te laten, en de commando's C-p, C-b, C-f en C-n te +gebruiken. Elk van deze commando's verplaatst de cursor precies een +regel of teken in een bepaalde richting op het scherm. Hier volgt een +figuur met de vier commando's en de richting waarin ze de cursor +bewegen: + + vorige regel, C-p + : + : + achteruit, C-b .... huidige cursorpositie .... vooruit, C-f + : + : + volgende regel, C-n + +>> Verplaats, met C-n of C-p, de cursor naar de middelste regel van de + figuur. Tik dan C-l om de hele figuur in het midden van het + centrum te plaatsen. + +Met een beetje kennis van het Engels zijn deze commando's gemakkelijk +te onthouden: de p komt van "previous" (vorige), de n van "next" +(volgende), de b van "backward" (achteruit) en de f van "forward" +(vooruit). Dit zijn de basiscommando's om de cursor te bewegen, dus +je zult ze VOORTDUREND gebruiken: het is vooruitziend als je ze nu +leert te gebruiken. + +>> Tik een paar keer C-n om de cursor op deze regel te krijgen. + +>> Beweeg je binnen de regel met C-f (herhaaldelijk) en terug omhoog + met C-p. Let op wat C-p doet als de cursor midden in een regel + staat. + +Elke regel eindigt met een Newline-teken (het Engelse "new line" +betekent "nieuwe regel"); dit teken scheidt elke regel van de +volgende. De laatste regel in een bestand zou eigenlijk ook met een +Newline moeten eindigen (maar dat is niet noodzakelijk voor Emacs). + +>> Probeer C-b aan het begin van een regel. De cursor zal zich naar + het eind van de vorige regel bewegen, omdat je achteruit over het + Newline teken gaat. + +Net als C-b kan ook C-f zich over Newline-tekens heen bewegen. + +>> Tik nog een aantal keren het commando C-b, zodat je een gevoel + krijgt waar de cursor is. Tik dan enkele keren C-f om de cursor + terug naar het einde van de regel te bewegen. Een verder C-f + commando beweegt de cursor dan naar de volgende regel. + +Wanneer je de cursor voorbij het begin of het einde van het scherm +beweegt, zal de tekst over het scherm heen schuiven. Dit heet +"scrollen", of "schuiven" in goed Nederlands. Door te scrollen zorgt +Emacs ervoor dat de cursor de gewenste beweging kan maken zonder dat +de cursor van het scherm af beweegt. + +>> Probeer de cursor voorbij de onderkant van het scherm te bewegen + met C-n en zie wat er gebeurt. + +Als de beweging per teken te langzaam gaat, kan je de cursor ook per +woord bewegen. M-f (META-f) beweegt de cursor een woord vooruit en +M-b een woord achteruit. + +>> Tik enkele keren M-f en M-b. + +Als je midden in een woord staat, beweegt M-f de cursor naar het eind +van het woord. Als je op een witte ruimte tussen twee woorden staat, +beweegt M-f de cursor naar het eind van het volgende woord. Het +commando M-b beweegt de cursor analoog de andere kant op. + +>> Tik enkele keren M-f en M-b en daar tussendoor een paar maal C-f en + C-b, zodat je ziet wat M-f en M-b doen vanaf bepaalde plaatsen in + een woord en tussen twee woorden. + +Merk op dat er een analogie bestaat tussen enerzijds C-f en C-b en +anderzijds M-f en M-b. Het is bij veel commando's zo dat META-tekens +gebruikt worden om iets te doen in eenheden van de taal (woorden, +zinnen, alinea's) terwijl CONTROL-tekens te maken hebben met dingen +die los staan van wat je aan het bewerken bent (tekens, regels, enz.). + +Deze analogie gaat ook op voor regels en zinnen: C-a en C-e bewegen de +cursor naar het begin of eind van een regel, terwijl met M-a, +respectievelijk M-e, de cursor naar het begin, respectievelijk het +eind, van een zin gaat. + +>> Tik enkele keren C-a, en dan een enkele keren C-e. + Tik een paar maal M-a, en dan enkele keren M-e. + +Bemerk hoe herhaalde C-a commando's niets doen, terwijl herhaalde M-a +commando's de cursor steeds een zin achteruit bewegen. Alhoewel ze +niet volledig overeenkomen, is het gedrag van beide heel natuurlijk. + +De plaats van de cursor in de tekst wordt "punt" genoemd (zonder +lidwoord, "point" in het Engels). Anders gezegd: de cursor laat op +het scherm de plek zien waar punt in de tekst staat. + +Nu volgt een samenvatting van eenvoudige cursorbewegingen, met +inbegrip van de commando's die de cursor per woord of zin bewegen: + + C-f Ga een teken vooruit + C-b Ga een teken achteruit + + M-f Ga een woord vooruit + M-b Ga een woord achteruit + + C-n Ga naar de volgende regel + C-p Ga naar de vorige regel + + C-a Ga naar het begin van de regel + C-e Ga naar het eind van de regel + + M-a Ga terug naar het begin van de zin + M-e Ga vooruit naar het eind van de zin + +>> Probeer al deze commando's een paar keer als oefening. Deze + commando's worden het vaakst gebruikt. + +Er zijn nog twee belangrijke cursorbewegingen: M-< (META kleiner-dan) +beweegt de cursor naar het begin van het bestand, en M-> (META +groter-dan) beweegt hem naar het eind. + +Op de meeste toetsenborden zit de '<' boven de komma, zodat je de +Shift-toets (ook wel bekend als de hoofdlettertoets) moet gebruiken om +het '<'-teken in te tikken. Op deze toetsenborden moet je ook de +shift gebruiken om M-< in te tikken: zonder shift zou je M-, (META +komma) tikken. + +>> Tik nu M-< om naar het begin van dit bestand te gaan. + Gebruik daarna C-v om hier weer terug te komen. + +>> Tik nu M-> om naar het eind van het bestand te springen. + Gebruik daarna M-v om hier weer terug te komen. + +Als je toetsenbord pijltjestoetsen heeft, kan je die ook gebruiken om +de cursor te verplaatsen. We raden je aan om C-b, C-f, C-n en C-p te +leren, om drie redenen. Ten eerste werken ze op alle toetsenborden, +ook die zonder pijltjestoetsen. Ten tweede zul je merken dat wanneer +je eenmaal wat ervaring hebt opgedaan in de omgang met Emacs, het +gebruik van de CONTROL-tekens sneller is dan werken met de +pijltjestoetsen (omdat je handen in de normale tikpositie kunnen +blijven). Ten derde, als je eenmaal gewend bent aan deze commando's +met CONTROL-tekens, kan je makkelijk andere gevorderde +cursorbewegingscommando's leren. + +De meeste Emacs-commando's accepteren een numeriek argument. Voor de +meeste commando's is dit argument het aantal keren dat het commando +herhaald moet worden. Je geeft dit numerieke argument aan met C-u en +vervolgens de cijfers van het getal, vóór het commando. Als je +toetsenbord een META- (of EDIT- of ALT-) toets heeft, is er ook een +andere manier om het getal aan te geven: tik de cijfers terwijl je de +META toets ingedrukt houdt. We raden je aan de C-u manier te leren +omdat die beschikbaar is op elke terminal. + +Bijvoorbeeld, C-u 8 C-f beweegt de cursor 8 plaatsen naar voren. + +>> Probeer eens om met C-n of C-p en een numeriek argument de cursor + met slechts een commando naar een regel in de buurt van deze zin te + bewegen. + +Voor de meeste commando's is het numerieke argument het aantal keren +dat het commando herhaald moet worden. Voor sommige commando's +betekent het echter iets anders. Verschillende commando's (die je +totnogtoe niet geleerd hebt) gebruiken het als een vlag -- de +aanwezigheid van een prefix-argument, ongeacht zijn waarde, maakt dat +het commando iets anders doet. + +C-v en M-v vormen een andere uitzondering. Met een numeriek argument +verschuiven deze commando's de tekst het aangegeven aantal regels in +plaats van (bijna) een heel scherm. Bijvoorbeeld, C-u 4 C-v +verschuift de tekst 4 regels. + +>> Probeer nu C-u 8 C-v. + +Daarmee zou je tekst 8 regels opgeschoven moeten zijn. Als je terug +omlaag wil scrollen, kan je M-v een argument geven. + +Als je een scherm met vensters gebruikt, zoals X Windows of +MS-Windows, zou je een grote rechthoek moeten zien aan de linkerkant +van het Emacs-venster. Deze rechthoek heet een schuifbalk +("scrollbar"). Je kan de tekst scrollen door met de muis in de +schuifbalk te klikken. + +>> Klik met de middelste muisknop bovenaan het heldere gebied in de + schuifbalk. Dit zou de tekst moeten verschuiven naar een positie + die afhankelijk is van hoe hoog of laag je klikt. + +>> Beweeg de muis op en neer terwijl je de middelste muisknop + ingedrukt houdt. Je zal zien dat de tekst met de muis mee heen en + weer scrollt. + + +* ALS EMACS HANGT +----------------- + +Als Emacs niet meer op commando's reageert, kan je het veilig +onderbreken door C-g te tikken. Je kan C-g gebruiken om een commando +te stoppen als het te lang duurt om uit te voeren. + +Je kan C-g ook gebruiken om een numeriek argument te verwijderen of om +het begin van een commando dat je niet wilt afmaken, te verwijderen. + +>> Tik nu C-u 100 om een numeriek argument te maken met de waarde 100, + en tik dan C-g. Tik vervolgens C-f. Het zou de cursor maar één + positie mogen verplaatsen, omdat je het argument verwijderd hebt + met C-g. + +Als je per ongeluk een tikt, kan je dat ongedaan maken met het +commando C-g. + + +* UITGESCHAKELDE COMMANDO'S +--------------------------- + +Sommige Emacs-commando's zijn uitgeschakeld zodat beginnende +gebruikers ze niet per ongeluk kunnen uitvoeren. + +Als je een van de uitgeschakelde commando's intikt, laat Emacs uitleg +zien over het commando dat je gegeven hebt, en vraagt of je het +werkelijk wil uitvoeren. + +Wanneer je het commando echt wil uitvoeren, tik dan (de +spatiebalk) als antwoord op de vraag. Normaal wil je het commando +niet uitvoeren en beantwoord je de vraag met "n" (van "no" of "nee"). + +>> Tik C-x C-l (een uitgeschakeld commando), en tik dan n als antwoord + op de vraag. + + +* VENSTERS +---------- + +Emacs kan meerdere vensters laten zien, elk venster met zijn eigen +tekst. We zullen later uitleggen hoe je met meerdere vensters om kan +gaan. Op dit moment willen we slechts uitleggen hoe je van extra +vensters af kunt komen en terug kan keren naar het werken met één +venster. Het is eenvoudig: + + C-x 1 Een enkel venster (dat wil zeggen: verwijder alle + andere vensters). + +Het commando is CONTROL-x gevolgd door het cijfer 1. C-x 1 vergroot +het venster waar de cursor in staat tot het hele scherm. Alle andere +vensters worden verwijderd. + +>> Zet de cursor op deze regel en tik C-u 0 C-l. +>> Tik nu C-h k C-f. + Zie hoe dit venster kleiner is geworden, terwijl een nieuw venster + verschijnt om de documentatie van het C-f commando te laten zien. + +>> Tik nu C-x 1 en zie het documentatievenster verdwijnen. + +Dit commando is anders dan de commando's die je tot nu toe geleerd +hebt aangezien het uit twee tekens bestaat. Het begint met het teken +CONTROL-x. Er zijn een heleboel commando's die met CONTROL-x +beginnen. Veel van die commando's hebben te maken met vensters, +bestanden, buffers, en gelijkaardige dingen. Dergelijke commando's +bestaan uit twee, drie of vier tekens. + + +* TOEVOEGEN EN WEGHALEN +----------------------- + +Als je tekst toe wil voegen, tik je die eenvoudigweg in. Tekens die +je kan zien, zoals A, 7, * en dergelijke, worden door Emacs als tekst +geïnterpreteerd en meteen aan de tekst toegevoegd. Tik (de +"volgende regel"-toets) om een Newline toe te voegen en dus een nieuwe +regel te beginnen. + +Je kan het laatste teken dat je hebt ingetikt weghalen door +te tikken. is een toets op het toetsenbord -- dezelfde +toets die je normaal gesproken gebruikt, buiten Emacs, om het laatst +ingetikte teken te wissen. Het is meestal een grote toets, een paar +rijen boven de -toets, waar "Delete", "Del" of "Backspace" op +staat. + +Als er op die grote toets "Backspace" staat, dan is dat degene die je +gebruikt voor . Er kan op een andere plaats ook nog een +andere toets zijn waarop "Delete" staat, maar dat is niet . + +In het algemeen haalt het teken weg dat juist voor de +cursorpositie staat. + +>> Probeer dit nu: tik een paar letters en haal ze weer weg door een + paar keer op te drukken. Maak je niet druk over het feit + dat dit bestand verandert; je zal niets veranderen aan de originele + versie van deze inleiding. Je zit slechts je eigen kopie te + wijzigen. + +Als een regel tekst te lang wordt om helemaal op het scherm getoond te +worden, dan gaat hij verder op de volgende schermregel. Een backslash +("\") in de rechtermarge (of, als je een scherm met vensters gebruikt, +een kleine gebogen pijl) laat dan zien dat de regel op de volgende +schermregel verder gaat. + +>> Voeg nu tekst toe totdat je de rechter kantlijn raakt, en blijf + toevoegen. Je zal zien dat er een vervolgregel verschijnt. + +>> Tik weer enkele keren om zoveel tekens weg te halen tot + de regel weer op een schermregel past. De vervolgregel zal + verdwijnen. + +Je kan een Newline zoals elk ander teken verwijderen. Als je een +Newline verwijdert, voeg je de twee regels waar de Newline tussen +staat samen tot een enkele regel. Als de regel die het resultaat is +van deze operatie niet op een schermregel past, zal hij getoond worden +met een vervolgregel. + +>> Beweeg de cursor naar het begin van een regel en tik . + Dit voegt de huidige en vorige regel samen. + +>> Tik om de Newline die je net verwijderd hebt weer toe te + voegen. + +Je herinnert je dat je bij de meeste Emacs-commando's het aantal keren +op kan geven, dat ze herhaald moeten worden. Dit geldt ook voor +gewone tekens. Als je een gewoon teken herhaalt, wordt dat teken +herhaaldelijk toegevoegd. + +>> Probeer dat nu: tik C-u 8 * om ******** toe te voegen. + +Je hebt nu de eenvoudigste manier geleerd om iets in Emacs te tikken +en fouten te verbeteren. Je kan tekst ook per woord of regel +verwijderen. Hier volgt een samenvatting van de commando's om tekst +te verwijderen: + + Haal het teken weg dat voor de cursor staat + C-d Haal het teken weg dat achter de cursor staat + + M- Verwijder het woord dat voor de cursor staat + M-d Verwijder het woord dat achter de cursor staat + + C-k Verwijder alles van de cursor tot het eind van de regel + M-k Verwijder alles van de cursor tot het eind van de zin + +Merk op dat en C-d, met M- en M-d de analogie +verder trekken, die begon met C-f en M-f (waarbij we voor het gemak +even vergeten dat niet echt een CONTROL-teken is). C-k en +M-k lijken enigzins op C-e en M-e in hun relatie tot regels en zinnen. + +Je kunt ook op één uniforme manier een willekeurig deel van de tekst +verwijderen. Beweeg daartoe naar één kant van het gedeelte dat je +wilt verwijderen en tik C-@ of C-. ( is de spatiebalk.) +Beweeg daarna naar de andere kant en tik C-w. Dat verwijdert alle +tekst tussen de twee posities. + +>> Beweeg de cursor naar de J aan het begin van de vorige alinea. +>> Tik C-. Emacs toont nu de mededeling "Mark set" ("Markering + geplaatst") onderaan het scherm. +>> Plaats de cursor op de n van "kant" op de tweede regel van de + alinea. +>> Tik C-w. Dit zal de tekst vanaf de J tot vlak voor de n + verwijderen. + +Er is een verschil tussen iets weghalen en iets verwijderen: iets dat +je hebt verwijderd, kan je terugbrengen, maar iets dat je hebt +weggehaald niet. (In het Engels is het verschil tussen "killing" en +"deleting" duidelijker dan tussen de Nederlandse vertalingen +"verwijderen" en "weghalen".) Verwijderde tekst terughalen heet +"yanken". In het algemeen geldt dat de commando's die meer tekst dan +een enkel teken, Newline of spatie verwijderen, deze tekst bewaren +zodat hij geyankt kan worden, terwijl dat niet geldt voor commando's +die slechts een enkel teken weghalen. + +>> Zet de cursor op het begin van een regel die niet leeg is. + Tik C-k om de tekst op die regel te verwijderen. +>> Tik C-k een tweede keer. Nu verwijdert dit commando het + Newline-teken. + +Merk op hoe een enkel C-k commando de inhoud van een regel verwijdert, +een tweede C-k commando de regel zelf zodat alle volgende regels een +regel omhoog komen. Het numerieke argument is voor C-k bijzonder: het +aangegeven aantal regels zal worden verwijderd, inclusief de inhoud. +Dit is meer dan simpelweg herhaling: C-u 2 C-k verwijdert twee regels, +terwijl tweemaal C-k tikken dat niet doet. + +Om de laatst verwijderde tekst terug te halen naar de plaats waar de +cursor nu op staat (te yanken), tik C-y. + +>> Probeer het nu: tik C-y om de tekst te yanken. + +Het is alsof je met C-y iets uit de prullenbak haalt wat je net had +verwijderd. Merk op dat verschillende C-k's achter elkaar alle regels +die verwijderd worden, bij elkaar bewaart zodat een enkele C-y die +regels in een keer terugbrengt. + +>> Probeer het nu: tik C-k een paar keer. + +Om de verwijderde tekst terug te halen: + +>> Tik C-y. Beweeg de cursor enkele regels naar beneden en tik weer + C-y. Je ziet nu hoe je tekst kan kopiëren. + +Wat moet je doen als je wat tekst terug wilt brengen, maar je intussen +al iets anders verwijderd hebt? C-y zou datgene terugbrengen wat je +het recentst hebt verwijderd. Gelukkig is de voorgaande tekst niet +verloren gegaan. Je kunt die tekst terughalen met M-y. Nadat je C-y +hebt getikt om de recentst weggegooide tekst terug te halen, vervangt +M-y die tekst met de tekst die je daarvoor had weggegooid. Je kunt +M-y herhalen om tekst terug te halen die je al langer geleden hebt +weggegooid. Als je de tekst te pakken hebt die je zocht, hoef je +niets te doen om die daar te houden. Je kan gewoon verder werken en +de teruggehaalde tekst met rust laten. + +Als je M-y vaak genoeg tikt kom je terug waar je begon, bij de laatst +verwijderde tekst. + +>> Verwijder een regel, beweeg de cursor wat, en verwijder nog een + regel. Tik C-y om de tweede regel die je verwijderde, terug te + halen. Tik nog een M-y en die regel wordt vervangen door de eerste + regel die je verwijderde. Tik nog enkele keren M-y en zie wat er + langs komt. Herhaal dit tot de tweede regel weer langs komt, en + dan nog een paar keer. Je kan ook experimenteren met positieve en + negatieve argumenten bij M-y. + + +* HERSTELLEN +------------ + +Als je de tekst veranderd hebt en je daar toch niet tevreden mee bent, +dan kan je de verandering ongedaan maken met het herstelcommando, C-x +u. + +Normaal gesproken herstelt C-x u de veranderingen die het gevolg zijn +van een enkel commando; door herhaaldelijk C-x u te tikken, worden +steeds eerdere commando's hersteld. + +Er zijn echter twee uitzonderingen: commando's die de tekst niet +wijzigen, zoals cursorbewegingen, worden overgeslagen, en commando's +die simpelweg het ingetikte teken aan de tekst toevoegen, worden +meestal gegroepeerd in groepjes van maximaal 20 tekens, zodat je +minder vaak het commando C-x u hoeft te tikken om teksttoevoegingen te +herstellen. + +>> Gooi deze regel weg met C-k; met C-x u zou hij weer moeten + verschijnen. + +C-_ is een alternatief voor C-x u. Het levert exact hetzelfde +resultaat op, maar is makkelijker om een paar keer achter elkaar te +tikken. Een nadeel van C-_ is dat op sommige toetsenborden het +intikken ervan niet gebruiksvriendelijk is. Dat is ook de reden voor +het alternatief, C-x u. Op sommige terminals kan je C-_ tikken door +"/" te tikken terwijl je de CONTROL-toets ingedrukt houdt. + +Een numeriek argument bij C-_ of C-x u duidt het aantal herhalingen +aan. + + +* BESTANDEN +----------- + +Om een tekst die je gemaakt of veranderd hebt op te slaan, moet je de +tekst in een bestand stoppen ("to save a file" in het Engels). Als je +dat niet doet, ben je die veranderingen kwijt op het moment dat je +Emacs verlaat. Je kan een bestand veranderen door het bestand te +"bezoeken". (Ook wel "vinden"; "finding" of "visiting" in het +Engels.) + +Een bestand bezoeken betekent dat je de inhoud van dat bestand in +Emacs ziet. Het lijkt er dan op alsof je het bestand aan het +veranderen bent. Deze veranderingen zijn echter slechts tijdelijk +zolang je het bestand niet opslaat. Op deze manier kan je nooit per +ongeluk een half gewijzigd bestand op het systeem achterlaten. Zelfs +als je het bestand opslaat, zorgt Emacs ervoor dat het originele +bestand onder een gewijzigde naam nog steeds beschikbaar is, voor het +geval je later besluit dat de veranderingen toch niet zo goed waren. + +Bij de onderkant van het scherm zie je een regel die begint en eindigt +met streepjes, met aan het begin "-1:-- TUTORIAL.nl" of iets +dergelijks. Dit deel van het scherm laat normaal de naam van het +bestand zien dat je op dat moment bezoekt. Op dit moment bezoek je +een bestand dat "TUTORIAL.nl" heet; het is je eigen kopie van de +Nederlandstalige Emacs-inleiding ("tutorial" in het Engels). Als je +in Emacs een bestand bezoekt dan staat de naam van het bestand altijd +op deze plaats. + +Iets bijzonders aan het commando om een bestand te bezoeken, is dat je +aan moet geven welk bestand je wil. Dit heet dat het commando "een +argument van de gebruiker vraagt"; in dit geval de naam van het +bestand. Nadat je het commando + + C-x C-f Bezoek bestand (met de f van "find file"). + +hebt getikt vraagt Emacs om de naam van het bestand. De naam die je +intikt verschijnt op de onderste regel van het scherm. Wanneer die +regel voor dit soort invoer gebruikt wordt, heet hij de minibuffer. +Je kan gewone Emacs commando's gebruiken om de bestandsnaam te +veranderen. + +Tijdens het invoeren van de bestandsnaam (of om het even welke invoer +in de minibuffer) kan je het commando afbreken met C-g. + +>> Tik C-x C-f gevolgd door C-g. Dit commando breekt de minibuffer af + en ook het C-x C-f commando dat van de minibuffer gebruik maakte. + Het resultaat is dat je geen bestand bezoekt. + +Als je de naam van een bestand hebt ingevoerd, tik dan om het +commando af te sluiten. Hierna gaat het C-x C-f commando aan het werk +en haalt het bestand op dat je aangegeven hebt. Als het C-x C-f +commando daarmee klaar is, verdwijnt de minibuffer. + +Na korte tijd verschijnt de inhoud van het bestand op het scherm en +kan je de inhoud wijzigen. Als je de wijzigingen op wilt slaan, tik +dan het commando + + C-x C-s Sla bestand op (met de s van "save file"). + +Dit commando slaat de tekst zoals Emacs die nu heeft in het bestand +op. De eerste keer dat je dit doet, slaat Emacs het originele bestand +onder een andere naam op, zodat het niet verloren gaat. De nieuwe +naam bestaat uit de oude bestandsnaam gevolgd door een "~". + +Als Emacs het bestand heeft opgeslagen, laat het de naam van het +bestand zien. Het is een goede gewoonte een bestand regelmatig op te +slaan zodat er niet teveel werk verloren gaat als het systeem hangt of +crasht. + +>> Tik C-x C-s, om je kopie van deze inleiding op te slaan. Als het + goed is verschijnt "Wrote ...TUTORIAL.nl" op de onderste + schermregel. + +OPMERKING: Op sommige systemen gebeurt er helemaal niets als je C-x +C-s tikt, en daarna ook niets meer. Dit komt door een eigenschap van +de machine waarop je werkt die te maken heeft met "flow control". Met +C-s stopt de "flow" en komt niets meer van wat je tikt bij Emacs +terecht. Om deze situatie te herstellen, tik C-q. Lees daarna het +hoofdstuk "Spontaneous Entry to Incremental Search" in het +Emacs-handboek over hoe je moet omgaan met deze situatie. + +Je kan een bestaand bestand bezoeken om het te bekijken of het te +wijzigen. Je kan ook een bestand bezoeken dat nog niet bestaat. Dit +is de manier om met Emacs een nieuw bestand te maken: bezoek het +bestand, dat eerst leeg zal zijn, en voeg tekst toe. Zodra je de +tekst opslaat, wordt het bestand werkelijk gecreëerd, met de tekst als +inhoud. Vanaf dat moment ben je dus bezig met een bestaand bestand. + + +* BUFFERS +--------- + +Als je een tweede bestand bezoekt met C-x C-f, blijft het eerste +bestand gewoon in Emacs. Je kan naar dat bestand terug door het +gewoon nog een keer te bezoeken met C-x C-f. Op deze manier kan je +een behoorlijk aantal bestanden in Emacs krijgen. + +>> Creëer een bestand dat "foo" heet door te tikken: C-x C-f foo + . Voeg hieraan wat tekst toe, wijzig hem, en sla "foo" op + door C-x C-s te tikken. Tik hierna C-x C-f TUTORIAL om + weer hier, in de inleiding, terug te komen. + +Emacs bewaart intern de tekst van elk bestand in een ding dat een +"buffer" genoemd wordt. Als je een bestand bezoekt wordt er een +nieuwe buffer gemaakt. Om een lijst van de huidige buffers te zien, +tik + + C-x C-b Laat de bufferlijst zien + +>> Probeer C-x C-b nu. + +Bemerk dat elke buffer een naam heeft en mogelijk ook een +bestandsnaam; dit is de naam van het bestand waarmee de buffer +overeenkomt. ALLE tekst die je in een Emacs venster ziet is altijd +onderdeel van een of andere buffer. + +>> Tik C-x 1 om de bufferlijst te verwijderen. + +Wanneer je met meerdere buffers werkt, dan is op elk moment slechts +één van die buffers "actueel". De actuele buffer is degene die je aan +het bewerken bent. Als je een andere buffer wilt bewerken, dan moet +je daarnaar "omschakelen". Als je wilt omschakelen naar een buffer +die overeenkomt met een bestand, dan kun je dit doen door dat bestand +opnieuw te bezoeken met C-x C-f. Er is ook een makkelijkere manier: +gebruik het commando C-x b. Dit commando vraagt je naar de naam van +de buffer. + +>> Tik C-x b foo om terug te gaan naar de buffer "foo" die de + tekst van het bestand "foo" bevat. Tik vervolgens C-x b TUTORIAL + om terug te komen naar deze Emacs-inleiding. + +Meestal is de naam van de buffer gelijk aan de naam van het bestand +(minus de naam van de directory). Dit klopt echter niet altijd. De +lijst met buffers die je maakt met C-x C-b laat je altijd de naam van +elke buffer zien. + +ALLE tekst die je ziet in een venster van Emacs is altijd onderdeel +van een of andere buffer. Sommige buffers komen niet overeen met een +bestand. De buffer genaamd "*Buffer List*" heeft bijvoorbeeld geen +bijbehorend bestand. Deze buffer bevat de lijst met buffers die je +gemaakt hebt met C-x C-b. Ook de buffer "*Messages*" heeft geen +geassocieerd bestand; deze buffer bevat de mededelingen die Emacs je +op de onderste regel toonde. + +>> Tik C-x b *Messages* om de buffer met mededelingen te + bekijken. Tik daarna weer C-x b TUTORIAL om terug te + keren naar deze buffer met de Emacs-inleiding + +Als je de tekst van het ene bestand verandert en dan een ander bestand +bezoekt, wordt het eerste bestand niet opgeslagen. De wijzigingen +blijven in Emacs, in de buffer die bij het bestand hoort. Het creëren +of veranderen van de buffer van het tweede bestand heeft geen effect +op de eerste buffer. Dit is erg nuttig, maar betekent ook dat er een +eenvoudige manier nodig is om het eerste bestand te bewaren. Het zou +erg vervelend zijn om er eerst naar terug te moeten gaan met C-x C-f +om het dan te kunnen bewaren met C-x C-s. Dus hebben we het commando: + + C-x s Sla een paar buffers op + +C-x s vraagt voor elke buffer die veranderingen heeft die nog niet +opgeslagen zijn, of je de buffer wilt bewaren. + +>> Voeg wat tekst toe en tik C-x s. + Emacs vraagt nu of je de buffer die TUTORIAL.nl heet wilt bewaren. + Beantwoord deze vraag positief door een "y" in te tikken (de y van + "yes", Engels voor "ja"). + + +* UITGEBREIDE COMMANDO'S +------------------------ + +Er zijn veel meer Emacs commando's dan er op de toetsen van het +toetsenbord passen, zelfs als we hun aantal kunnen vergroten door de +CONTROL- of META-toets te gebruiken. Emacs lost dit probleem op met +het X commando (met de X van eXtensie of uitbreiding). Het X commando +komt voor in twee smaken: + + C-x Tekenuitbreiding. Gevolgd door een teken. + M-x Commando-naam-uitbreiding. Wordt gevolgd door een naam. + +Deze commando's zijn in het algemeen nuttig, maar worden minder +gebruikt dan de commando's die je tot nu toe al geleerd hebt. Je hebt +al enkele van deze commando's gezien: C-x C-f om een bestand te +bezoeken en C-x C-s om het te bewaren, bijvoorbeeld. Een ander +voorbeeld is het commando om Emacs te verlaten: dit is C-x C-c. (Maak +je geen zorgen over het verloren gaan van veranderingen die niet +opgeslagen zijn; C-x C-c vraagt of je veranderde buffers wilt bewaren +voordat Emacs helemaal eindigt.) + +C-z is het commando om Emacs *tijdelijk* te verlaten, zodat je daarna +weer terug kan keren in dezelfde Emacs-sessie. + +Op systemen die deze mogelijkheid bieden, zet C-z Emacs stil: je komt +weer terug in de shell, maar Emacs is nog aanwezig. In de meeste +shells kan je Emacs weer activeren met het "fg" commando, of met +"%emacs". + +Op systemen die niet de mogelijkheid bieden om programma's stil te +zetten, creëert C-z een subshell onder Emacs om je zo in de +gelegenheid te stellen andere programma's uit te voeren en daarna weer +in Emacs terug te keren; Emacs wordt dus niet werkelijk verlaten. In +dit geval is het shellcommando "exit" de normale manier om de subshell +te verlaten en in Emacs terug te keren. + +Het moment om C-x C-c te gebruiken is wanneer je uit gaat loggen. Het +is ook het juiste commando om Emacs te beëindigen wanneer Emacs +opgestart was door een mail-programma of iets dergelijks, aangezien +die misschien niet met een stilgezette Emacs om kunnen gaan. Normaal +gezien is het echter beter Emacs stil te zetten met C-z dan om Emacs +te verlaten, behalve als je uit wilt loggen natuurlijk. + +Er bestaan vele C-x commando's. Hier is een lijst van degene die je +nu al kent: + + C-x C-f Bezoek bestand + C-x C-s Sla bestand op + C-x s Sla een paar buffers op + C-x C-b Laat bufferlijst zien + C-x b Schakel naar een buffer + C-x C-c Verlaat Emacs + C-x 1 Een enkel venster + C-x u Herstel + +Commando-naam-bevelen worden nog minder vaak gebruikt, of alleen onder +bepaalde omstandigheden. Een voorbeeld is het commando +replace-string, dat in de hele tekst een string vervangt door een +andere string ("to replace" betekent "vervangen"). Als je M-x tikt, +toont Emacs onderaan het scherm "M-x" en moet je de naam van het +commando intikken, in dit geval "replace-string". Als je gewoon +"repl s" tikt maakt Emacs de naam zelf af. Beëindig het commando +met . + +Het replace-string commando heeft twee argumenten nodig: de string die +vervangen moet worden en de string waarmee die vervangen moet worden. +Je sluit elk argument af met . + +>> Plaats de cursor op de lege regel twee regels onder deze regel. + Tik dan M-x repl sgewijzigdveranderd. + + Zie hoe deze regel daardoor gewijzigd is. Je hebt elk voorkomen + van het woord g-e-w-i-j-z-i-g-d vervangen door "veranderd"; te + beginnen op de plek waar de cursor staat. + + +* AUTOMATISCH BEWAREN +--------------------- + +Als je een bestand veranderd hebt maar het nog niet opgeslagen hebt, +zouden de veranderingen verloren kunnen gaan als het systeem zou +hangen of herstarten. Om je hiertegen te beschermen, slaat Emacs +regelmatig de veranderde tekst automatisch op. De naam van het +bestand waarin de tekst automatisch wordt opgeslagen begint en eindigt +met een #. Bijvoorbeeld, als je het bestand "hello.c" aan het +bewerken bent, wordt de tekst automatisch opgeslagen in een bestand +dat "#hello.c#" heet. Zodra je het bestand werkelijk opslaat, wordt +het automatisch opgeslagen bestand verwijderd. + +Als de computer crasht, kan je de automatisch opgeslagen tekst +terugkrijgen door het bestand gewoon te bezoeken (het originele +bestand, niet het automatisch opgeslagen), gevolgd door M-x +recover-file. Als Emacs vraagt om bevestiging, antwoord dan +met yes en de automatisch opgeslagen informatie wordt +teruggehaald. + + +* ECHO-GEBIED +------------- + +Als je een commando langzaam intikt, toont Emacs de tekens aan de +onderkant van het scherm in een deel dat het "echo-gebied" genoemd +wordt. Dit gebied omvat de onderste regel van het scherm. + + +* MODUS-REGEL +------------- + +De regel direct boven het echo gebied heet de "modusregel". De +modusregel ziet er ongeveer zo uit: + +-1:** TUTORIAL.nl 62% L763 (Fundamental)----------------------- + +Deze regel geeft interessante informatie over Emacs en de tekst die je +aan het bewerken bent. + +Je weet al wat de bestandsnaam betekent: het is de naam van het +bestand dat je bezoekt. NN% geeft je huidige positie in de tekst aan: +NN procent van de tekst bevindt zich boven het scherm. Als het +bestand vanaf het begin op het scherm staat, staat er "Top" in plaats +van " 0%". Als het laatste stuk tekst op het scherm staat, zal er +"Bot" staan (van "bottom", "onderkant" in het Nederlands). Als de +tekst zo klein is dat hij volledig op het scherm past staat "All" in +de modus-regel. + +De L gevolgd door een getal geeft het nummer van de regel waarin punt +zich bevindt. + +De sterretjes aan het begin betekenen dat je de tekst veranderd hebt. +Direct na het bezoeken of opslaan staan er gewoon streepjes. + +In de modusregel staat tussen haakjes in welke modus je aan het werken +bent. De standaardmodus is de "Fundamental" modus, die je nu gebruikt +("fundamental" is "basis" in het Nederlands). Een dergelijke modus +heet een hoofdmodus ("major mode" in het Engels). + +Emacs heeft verschillende hoofdmodi. Sommige daarvan zijn bedoeld +voor het bewerken van verschillende talen of soorten tekst, zoals +bijvoorbeeld Lisp modus, Text modus, etc. Op elk moment is er altijd +precies een modus actief, en de naam daarvan staat in de modusregel, +op de plaats waar nu "Fundamental" staat. + +Elke hoofdmodus zorgt ervoor dat sommige commando's zich anders +gedragen. Zo bestaat er een commando om een commentaar in een +programma te tikken, en aangezien elke programmeertaal een ander idee +heeft over hoe commentaar eruit moet zien, moet elke hoofdmodus op een +andere manier het commentaar beginnen. Elke hoofdmodus is de naam van +een uitgebreid commando, en met dat commando schakel je om naar die +hoofdmodus. Zo is bijvoorbeeld M-x fundamental-mode het commando om +naar de basismodus om te schakelen. + +Als je Nederlandse of Engelse tekst wil gaan bewerken, zoals +bijvoorbeeld dit bestand, kan je beter "Text mode" gebruiken, de modus +om tekst in een gewone taal te bewerken: + +>> Tik M-x text-mode. + +Wees gerust; geen van de commando's die je geleerd hebt zorgen voor +grondige veranderingen in Emacs. Een van de dingen die je kan merken, +is bijvoorbeeld dat M-f en M-b nu apostrofs als onderdeel van een +woord beschouwen. In de vorige modus (Fundamental) behandelen M-f en +M-b de apostrof als ruimte tussen twee woorden. + +Het is gebruikelijk dat hoofdmodi dergelijke subtiele verschillen +hebben. De meeste commando's doen dus min of meer hetzelfde in elke +hoofdmodus. + +Met het commando C-h m kan je de documentatie over de huidige +hoofdmodus lezen. + +>> Gebruik C-u C-v een paar keer om deze zin in de buurt van de + bovenkant van het scherm te krijgen. +>> Tik C-h m om te zien hoe de tekstmodus verschilt van de basismodus. +>> Tik C-x 1 om de documentatie van het scherm te verwijderen. + +Hoofdmodi heten zo omdat er ook bijmodi zijn. Bijmodi zijn geen +alternatieven voor hoofdmodi; het zijn slechts kleine aanpassingen +daarvan. Elke bijmodus kan aan- of uitgezet worden, onafhankelijk van +andere bijmodi en onafhankelijk van de hoofdmodus. Het is dus +mogelijk geen bijmodi, één bijmodus of een willekeurige combinatie van +bijmodi te gebruiken. + +Een nuttige bijmodus voor het bewerken van tekst in een natuurlijke +taal, zoals het Nederlands, is Auto Fill modus ("auto fill" betekent +automatisch uitvullen). Wanneer deze modus aanstaat, breekt Emacs +automatisch een regel tussen twee woorden af als de regel te lang +wordt. + +Je kan Auto Fill modus aanzetten met M-x auto-fill-mode. Als +deze modus al aanstaat, kan je hem uitzetten met M-x +auto-fill-mode. Als de modus uitstaat, zet dit commando de +modus aan; als ze aanstaat, zet dit commando de modus uit. We zeggen +dat het commando de modus "schakelt" ("to toggle" in het Engels). + +>> Tik nu M-x auto-fill-mode. Tik nu vele malen "asdf " op + een regel zodat je kan zien dat de regel in tweeën gesplitst wordt. + Er moeten wel spaties tussen de woorden staan, omdat de Auto Fill + modus de regel alleen op spaties breekt. + +De rechterkantlijn staat meestal op 70 tekens, maar die kan je +veranderen met het C-x f commando. Dit commando accepteert een +numeriek argument om de gewenste kantlijn te verkrijgen. + +>> Tik C-x f met 20 als argument (C-u 20 C-x f). + Tik wat tekst en zie dat Emacs de regels afbreekt bij 20 tekens. + Zet de kantlijn nu terug op 70, dus met met C-u 70 C-x f. + +Als je de tekst midden in een regel verandert vult Auto Fill modus de +regel niet opnieuw. +Om een alinea opnieuw te vullen, tik M-q (META-q) terwijl de cursor in +de alinea staat. + +>> Plaats de cursor in de voorgaande alinea en tik M-q. + + +* ZOEKEN +-------- + +Emacs kan tekenreeksen ("strings") zoeken, zowel volgend op de +cursorpositie, als eraan voorafgaand. Het zoeken naar een string +verplaatst de cursor naar de volgende plaats waar de gezochte string +voorkomt. + +Het zoekcommando van Emacs is anders dan de zoekcommando's van de +meeste tekstverwerkers; het zoekt incrementeel. Dit betekent dat het +zoeken gebeurt tijdens het intikken van de gezochte string. + +Het commando om het voorwaarts zoeken te starten is C-s (met de "s" +van "to search", zoeken); C-r start het achterwaarts zoeken (met de +"r" van "reverse" of achteruit). MAAR WACHT! Probeer ze nu nog niet. + +Als je C-s tikt verschijnt de string "I-search" in het echo-gebied. +Dit betekent dat Emacs bezig is met een "incremental search" +(incrementele zoekopdracht) en wacht op het intikken van de +zoekstring. beëindigt het zoeken. + +>> Tik nu C-s om het zoeken te starten. Tik nu, LANGZAAM, één letter + per keer, het woord "cursor", met een pauze na elke letter zodat je + kan zien wat er met de cursor gebeurt. Je hebt nu eenmaal naar het + woord "cursor" gezocht. +>> Tik nogmaals C-s, om naar het volgende voorkomen van het woord + "cursor" te zoeken. +>> Tik nu viermaal en let op de cursorbewegingen. +>> Tik om het zoeken te beëindigen. + +Zag je wat er gebeurde? Tijdens incrementeel zoeken probeert Emacs +naar de eerste plek te gaan waar de string staat die je tot dan toe +getikt hebt. Om naar de volgende plek te gaan, tik je C-s nog een +keer. Als er geen volgende plek is gevonden, biept Emacs en vertelt +je dat de zoekopdracht niets gevonden heeft ("failing" in het Engels). +C-g zou het zoeken ook afbreken. + +OPMERKING: Op sommige systemen gebeurt er helemaal niets als je C-s +tikt, en daarna ook niets meer. Dit komt door een eigenschap van de +machine waarop je werkt die te maken heeft met "flow control". Met +C-s stopt de "flow" en komt niets meer van wat je tikt bij Emacs +terecht. Om deze situatie te herstellen, tik C-q. Lees daarna het +hoofdstuk "Spontaneous Entry to Incremental Search" in het +Emacs-handboek over hoe je moet omgaan met deze situatie. + +Als je tijdens incrementeel zoeken tikt, zal je zien dat het +laatste teken dat je aan de zoekstring toegevoegd hebt, weggehaald +wordt en dat het zoeken teruggaat naar de voorgaande plaats. Als je +bijvoorbeeld begint met zoeken en je tikt een "c", dan ga je naar de +plaats waar de "c" het eerst voorkomt. Tik je vervolgens een "u", dan +gaat de cursor naar de plaats waar de string "cu" het eerst voorkomt. +Als je nu tikt, dan wordt de "u" van de zoekstring +afgehaald, en gaat de cursor terug naar de plaats waar hij stond +voordat je de "u" intikte, namelijk daar waar "c" het eerst voorkwam. + +Als je tijdens een zoekoperatie een CONTROL- of META-teken intikt, dan +wordt het zoeken beëindigd. Er zijn een paar uitzonderingen, namelijk +tekens die tijdens zoeken een speciale betekenis hebben, zoals C-s en +C-r. + +Met C-s begin je te zoeken naar de plaats waar de zoekstring voor het +eerst voorkomt NA de huidige cursorpositie. Als je iets wilt zoeken +dat eerder in de tekst moet voorkomen, gebruik dan C-r in plaats van +C-s. Alles wat we nu weten over C-s geldt ook voor C-r, alleen is de +zoekrichting omgedraaid. + + +* MEERDERE VENSTERS +------------------- + +Een van Emacs' aardige eigenschappen is dat je meerdere vensters op +het scherm kan laten zien. + +>> Zet de cursor op deze regel en tik C-u 0 C-l. + +>> Tik C-x 2 om het scherm in twee vensters op te splitsen. + Beide vensters laten deze inleiding zien; de cursor blijft in het + bovenste venster. + +>> Tik C-M-v om de tekst in het onderste venster te verschuiven. + (Als je geen META-toets hebt, tik dan C-v.) + +>> Tik C-x o (met de o van "other"; "ander" in het Nederlands) om de + cursor naar het andere venster te verplaatsen. + +>> Verschuif de tekst in het onderste venster, met C-v en M-v. + Zorg ervoor dat je deze inleiding in het bovenste venster leest. + +>> Tik weer C-x o om de cursor weer in het bovenste venster te zetten. + De cursor staat weer precies op de plaats waar hij stond toen je + het venster verliet. + +Je kan C-x o blijven gebruiken om van venster naar venster te gaan. +Elk venster heeft zijn eigen cursorpositie; de cursor is altijd enkel +zichtbaar in een daarvan. Alle normale commando's hebben betrekking +op het venster waarin de cursor staat. Dit venster is het +"geselecteerde venster" ("selected window" in het Engels). + +Het C-M-v commando is erg nuttig wanneer je tekst aan het bewerken +bent in het ene venster, terwijl je het andere venster als referentie +gebruikt. Je kan de cursor dan altijd in het venster houden waarin je +bezig bent, terwijl je met C-M-v door de tekst in het andere venster +loopt. + +C-M-v is een voorbeeld van een CONTROL-META teken. Als je een echte +META-toets hebt kan je C-M-v intikken door zowel CONTROL als META +ingedrukt te houden terwijl je v tikt. Het maakt niet uit in welke +volgorde je CONTROL en META indrukt; het gaat erom welke toetsen +ingedrukt zijn terwijl je tikt. + +Als je geen echte META-toets hebt kan je gebruiken; de volgorde +is dan wel belangrijk. Je moet dan eerst tikken, gevolgd door +CONTROL-v; CONTROL- v zal niet werken. Dit komt doordat +zelf een teken is, terwijl CONTROL en META dat niet zijn. + +>> Tik C-x 1 (in het bovenste venster) om het onderste venster te + laten verdwijnen. + +(Als je C-x 1 tikt in het onderste venster laat je het bovenste +verdwijnen. C-x 1 betekent zoveel als "ik wil maar 1 venster, en wel +dat venster waar de cursor nu in staat.") + +Je hoeft niet dezelfde buffer in beide vensters te hebben. Wanneer je +C-x C-f gebruikt om een bestand in één van de vensters te bezoeken, +zal het andere venster niet veranderen. Je kunt de vensters +onafhankelijk van elkaar gebruiken om bestanden te bezoeken. + +Hier is nog een manier om twee venster te krijgen die elk een andere +tekst laten zien: + +>> Tik C-x 4 C-f gevolgd door de naam van een van je bestanden, + gevolgd door . Het opgegeven bestand zal in het onderste + venster verschijnen, en de cursor zal in dat venster staan. + +>> Tik C-x o om terug naar het bovenste venster te gaan, en C-x 1 om + het onderste venster te laten verdwijnen. + + +* RECURSIEVE BEWERKINGSNIVEAUS +------------------------------ + +Soms kom je in Emacs in een recursief bewerkingsniveau terecht +(Engels: "recursive editing level"). Dit is te zien in de modusregel +aan de vierkante haken die om de haakjes van de naam van de hoofdmodus +staan. Dan staat er bijvoorbeeld [(Fundamental)] in plaats van +(Fundamental). + +Tik Om uit een recursief bewerkingsniveau te komen. +Dit is een algemeen "ontsnappingscommando". Je kan het ook gebruiken +om extra vensters te verwijderen of om uit de minibuffer te komen. + +>> Tik M-x om in een minibuffer te komen, en tik dan + om er weer uit te komen. + +C-g is niet bruikbaar om uit een recursief bewerkingsniveau te komen. +De reden hiervoor is dat C-g gebruikt wordt om commando's af te breken +BINNEN het recursieve bewerkingsniveau. + + +* MEER INFORMATIE +----------------- + +We hebben geprobeerd je met deze inleiding precies genoeg informatie +te leveren om met Emacs te beginnen werken. De mogelijkheden van +Emacs zijn zo groot dat het onmogelijk is nu alles uit te leggen. Het +kan zijn dat je meer over Emacs wil leren omdat het zoveel nuttige +mogelijkheden heeft. Emacs heeft commando's om documentatie te laten +zien over Emacs commando's. Deze "helpcommando's" beginnen allemaal +met C-h: "het Hulpteken". + +Om hulp te krijgen tik je C-h, gevolgd door een teken om aan te duiden +welke hulp je wilt. Als je het echt niet meer weet, tik C-h ? en +Emacs vertelt welke hulp het allemaal te bieden heeft. Als je C-h +hebt getikt maar van gedachten veranderd bent, tik je gewoon C-g om +het af te breken. + +(In sommige installaties wordt de betekenis van C-h veranderd. Dat is +geen goed idee, zeker als die verandering op alle gebruikers invloed +heeft, en is een geldige reden om je beklag te doen bij de +systeembeheerder of de helpdesk. Als C-h intussen niet een bericht +onderaan het scherm laat zien over mogelijke hulp, probeer dan de F1 +toets (functietoets 1) of gebruik M-x help .) + +De eenvoudigste hulp is C-h c. Tik C-h, het teken "c" en een teken of +uitgebreid commando, en Emacs laat een zeer korte beschrijving van het +commando zien. + +>> Tik C-h c C-p. + +De beschrijving die getoond wordt, zou zoiets moeten zijn als: + + C-p runs the command previous-line + + (Nederlands: C-p voert het commando previous-line uit.) + +Dit commando vertelt je "de naam van de functie". Functies worden +vooral gebruikt om Emacs uit te breiden of aan de wensen van de +gebruiker aan te passen. Aangezien functienamen gekozen zijn om aan +te geven wat de functie doet, zijn ze ook geschikt als heel korte +documentatie; genoeg om je te herinneren aan wat de commando's die je +al geleerd hebt betekenen. + +Uitgebreide commando's zoals C-x C-s en (als je geen META-, EDIT- of +ALT-toets hebt) v kunnen ook getikt worden na C-h c. + +Om meer informatie over een commando te krijgen, tik C-h k in plaats +van C-h c. + +>> Tik C-h k C-p. + +Dit laat de documentatie van de functie, inclusief de naam van de +functie, in een apart venster zien. Als je klaar bent met lezen, tik +C-x 1 om van dat venster af te komen. Je hoeft dat natuurlijk niet +meteen te doen. Je kan ook eerst wat anders doen voordat je C-x 1 +tikt. + +Hier zijn nog wat nuttige mogelijkheden van C-h: + + C-h f Beschrijf een functie. Je moet de naam van de functie + intikken. + +>> Tik C-h f previous-line + Dit laat alle informatie zien die Emacs heeft over de functie die + het C-p commando implementeert. + +Een vergelijkbaar commando C-h v toont de documentatie van variabelen +die je kunt instellen om het gedrag van Emacs naar wens aan te passen. +Het commando vraagt je om de naam van een variabele. + + C-h a Commando Apropos. Tik een woord in en Emacs zal een + lijst van alle commando's laten zien waarin dat woord + voorkomt. Al deze commando's kunnen aangeroepen + worden met M-x. Bij sommige commando's staat met + welke tekens dit commando direct uitgevoerd kan + worden. + +>> Tik C-h a file. + +Dit laat in een ander venster alle M-x commando's zien met "file" in +hun naam. Je zal teken-commando's zien als C-x C-f naast de +overeenkomende commandonaam zoals find-file. + +>> Tik C-M-v herhaaldelijk om de tekst in het hulpvenster te + verschuiven. + +>> Tik C-x 1 om het hulpvenster te verwijderen. + + C-h i Lees de online handleidingen (ook wel Info genoemd). + Dit commando zet je in een speciale buffer genaamd + "*info*" waar je online handleidingen kunt lezen van + software die op je computer is geïnstalleerd. Tik m + Emacs om de handleiding van Emacs te lezen. + Als je nog nooit Info hebt gebruikt dan kun je ? + tikken zodat Emacs je een rondleiding geeft langs de + mogelijkheden van het Info systeem. Wanneer je klaar + bent met deze Emacs-inleiding dan kun je de + Emacs-Info-handleiding gebruiken als je primaire bron + van informatie. + + +* MEER MOGELIJKHEDEN +-------------------- + +Je kunt meer over Emacs leren door haar handleiding te lezen. Deze is +zowel als boek als in elektronische vorm via Info beschikbaar (gebruik +het Help menu of tik h r). Kijk bijvoorbeeld eens naar +"completion", hetgeen minder tikwerk oplevert, of "dired" wat het +omgaan met bestanden vereenvoudigt. + +"Completion" (of "afmaken", in het Nederlands) is een manier om +onnodig tikwerk te voorkomen. Als je bijvoorbeeld naar de +"*Messages*" buffer wilt omschakelen, dan kun je C-x b *M tikken +en dan zal Emacs de rest van de buffernaam invullen voor zover dit +mogelijk is. Completion staat beschreven in de node "Completion" in +de Emacs-Info-handleiding. + +"Dired" toont je een lijst van bestanden in een directory, waarmee je +gemakkelijk bestanden kunt bezoeken, van naam kunt veranderen, kunt +wissen, of andere acties op uit kunt voeren. Informatie over Dired +kun je vinden in de node "Dired" van de Emacs-Info-handleiding. + + +* CONCLUSIE +----------- + +Denk eraan dat je met C-x C-c Emacs permanent verlaat. Om tijdelijk +een shell te krijgen en daarna weer in Emacs terug te komen, tik je +C-z. + +De bedoeling van deze inleiding is dat ze begrijpelijk is voor alle +nieuwe Emacs-gebruikers. Als je dus iets onduidelijks bent +tegengekomen, blijf dan niet zitten en maak jezelf geen verwijten. +Doe je beklag! + + +* KOPIËREN +----------- + +(De Engelse versie van) deze inleiding is voorafgegaan door een lange +reeks van Emacs-inleidingen, die begon met de inleiding die Stuart +Cracraft schreef voor de originele Emacs. Deze Nederlandse vertaling +is gemaakt door Pieter Schoenmakers op basis +van de GNU Emacs 20.2 TUTORIAL, en nagezien en verbeterd door Frederik +Fouvry en Lute Kamstra. + +(Wat nu volgt is een vertaling naar het Nederlands van de condities +voor gebruik en verspreiding van deze inleiding. Deze vertaling is +niet gecontroleerd door een jurist. Er kunnen derhalve geen rechten +aan de vertaling worden ontleend, en de vertaling wordt gevolgd door +het Engelse origineel.) + +Deze versie van de inleiding valt onder copyright, net als GNU Emacs. +Je mag deze inleiding verspreiden onder bepaalde voorwaarden: + +Copyright (C) 1985, 1996, 1997, 2001, 2002, 2003, 2004, + 2005, 2006, 2007 Free Software Foundation, Inc. + + Iedereen mag letterlijke kopieën van dit document, zowel ontvangen + als verspreiden, op elk medium, vooropgesteld dat de + copyrightvermelding en de toestemmingsmelding niet veranderd worden + en dat de verspreider aan de ontvanger dezelfde distributierechten + verleent als aan hem verleend worden door deze melding. + + Toestemming wordt verleend om veranderde versies van dit document, + of delen daarvan, te verspreiden, onder bovenstaande voorwaarden, + vooropgesteld dat ze ook duidelijk vermelden wie als laatste + veranderingen aangebracht heeft. + +De condities voor het kopiëren van Emacs zelf zijn ingewikkelder dan +dit, maar gebaseerd op dezelfde gedachte. Lees het bestand COPYING en +geef vervolgens kopieën van Emacs aan al je vrienden. Help bij het +uitroeien van softwarebeschermingspolitiek ("eigendom") door vrije +software te gebruiken, te schrijven en te delen! + +(Engels origineel van de copyrightmelding en condities: + +This version of the tutorial, like GNU Emacs, is copyrighted, and +comes with permission to distribute copies on certain conditions: + +Copyright (C) 1985, 1996, 1997, 2001, 2002, 2003, 2004, + 2005, 2006, 2007 Free Software Foundation, Inc. + + Permission is granted to anyone to make or distribute verbatim + copies of this document as received, in any medium, provided that + the copyright notice and permission notice are preserved, and that + the distributor grants the recipient permission for further + redistribution as permitted by this notice. + + Permission is granted to distribute modified versions of this + document, or of portions of it, under the above conditions, + provided also that they carry prominent notices stating who last + altered them. + +The conditions for copying Emacs itself are more complex, but in the +same spirit. Please read the file COPYING and then do give copies of +GNU Emacs to your friends. Help stamp out software obstructionism +("ownership") by using, writing, and sharing free software!) + +;;; Local Variables: +;;; coding: latin-1 +;;; End: + +;;; arch-tag: 3399e308-e605-4125-8fbb-b2fe91ac3149 diff --git a/etc/tutorials/TUTORIAL.pl b/etc/tutorials/TUTORIAL.pl new file mode 100644 index 00000000000..352d92b46b4 --- /dev/null +++ b/etc/tutorials/TUTORIAL.pl @@ -0,0 +1,1248 @@ +Krótki samouczek Emacsa. Warunki kopiowania znajduj± sie na koñcu pliku. + +Polecenia Emacsa wymagaj± na ogó³ wci¶niêcia klawisza CONTROL (oznaczanego +czasami Ctrl lub CTL) lub klawisza META (oznaczanego czasami EDIT +albo ALT). Dalej bêdziemy stosowaæ nastêpuj±ce skróty: + +C- oznacza przytrzymanie klawisza CONTROL przy naciskaniu + klawisza . Na przyk³ad C-f bêdzie odpowiada³o + naci¶niêciu f przy wci¶niêtym klawiszu CONTROL. +M- oznacza przytrzymanie klawisza META lub ALT przy naciskaniu + klawisza . Zamiast tego mo¿na nacisn±æ i pu¶ciæ klawisz + ESC, a potem nacisn±æ klawisz . + +Uwaga: aby zakoñczyæ sesjê Emacsa, naci¶nij C-x C-c (kolejno dwa znaki). +Znaki ">>" na lewym marginesie oznaczaj± w dalszej czê¶ci tego samouczka +æwiczenia dla Ciebie. Na przyk³ad: +<> +[Dodatkowe odstêpy zosta³y zrobione w celach dydaktycznych.] +>> Teraz naci¶nij C-v (nastêpny ekran), aby przej¶æ na nastêpny ekran + samouczka (zrób to naciskaj±c jednocze¶nie klawisze CONTROL i v). + Od tego momentu powiniene¶ robiæ to zawsze, gdy dojdziesz + do koñca ekranu. + +Zwróæ uwagê na to, ¿e kilka linii siê powtarza, gdy przechodzisz z +ekranu na nastêpny; ma to zapewniæ wra¿enie ci±g³o¶ci podczas przesuwania +siê w obrêbie pliku. + +Pierwsz± umiejêtno¶ci±, która powiniene¶ opanowaæ, jest sposób +przesuwania siê z miejsca na miejsce. Wiesz ju¿, jak przesuwaæ siê +o jeden ekran do przodu. Aby przesun±æ siê o jeden ekran do ty³u, +wci¶nij kombinacjê klawiszy M-v (to znaczy wci¶nij i przytrzymaj +klawisz META lub Alt i jednocze¶nie naci¶nij v albo naci¶nij kolejno +klawisze v, je¶li nie masz klawisza META lub Alt). + +>> Spróbuj nacisn±æ M-v, a potem C-v, by przesun±æ siê w przód i w ty³ + kilka razy. + + +PODSUMOWANIE +------------ + +Nastêpuj±ce polecenia s³u¿± do przegl±dania tekstu po jednym ekranie: + + C-v Przesuñ siê o jeden ekran do przodu + M-v Przesuñ siê o jeden ekran do ty³u + C-l Wyczy¶æ ekran i wy¶wietl go na nowo, umieszczaj±c + tekst z okolic kursora w ¶rodku ekranu. + (Ta kombinacja to CONTROL-L, a nie CONTROL-1.) + +>> Znajd¼ kursor i zapamiêtaj, jaki tekst jest w jego pobli¿u. + Naci¶nij nastêpnie C-l. + Znajd¼ kursor jeszcze raz i zwróæ uwagê, ¿e znajduje siê on + w pobli¿u tego samego tekstu. + +Mo¿esz tak¿e u¿yæ klawiszy PageUp i PageDn, je¶li s± dostêpne na +Twojej klawiaturze, do przemieszczania siê miêdzy stronami, ale u¿ycie +C-v i M-v jest bardziej efektywne. + +PODSTAWY KIEROWANIA KURSOREM +---------------------------- + +Przesuwanie siê z ekranu na ekran jest u¿yteczne, ale jak przej¶æ do +okre¶lonego miejsca w obrêbie jednego ekranu? + +Mo¿na to zrobiæ na kilka sposobów. Najprostszym jest u¿ycie poleceñ +C-p, C-b, C-f oraz C-n. Ka¿de z nich przesuwa kursor o jeden wiersz +albo kolumnê w okre¶lonym kierunku. Oto schemat, który to obrazuje: + + Poprzednia linia, C-p + (ang. previous line) + : + : + Do ty³u, C-b .... Kursor .... Do przodu, C-f + (ang. back) : (ang. forward) + : + : + Nastêpna linia, C-n + (ang. next line) + +>> Przesuñ kursor na ¶rodek tego schematu za pomoc± C-n lub C-p. + Potem naci¶nij C-l, by zobaczyæ ca³y diagram na ¶rodku ekranu. + +To s± podstawowe polecenia kieruj±ce po³o¿eniem kursora, których +bêdziesz u¿ywa³ bardzo czêsto, warto wiêc je zapamiêtaæ. + +>> Naci¶nij kilka razy C-n, by przesun±æ kursor do tej linii. + +>> Przesuñ siê w g³±b linii za pomoc± C-f, a potem do góry za pomoc± + C-p. Zwróæ uwagê na zachowanie siê C-p, gdy kursor jest w ¶rodku + linii. + +Ka¿da linia tekstu koñczy siê znakiem nowej linii, który oddziela j± +od nastêpnej. Ka¿dy Twój plik powinien siê koñczyæ znakiem nowej +linii (ale Emacs tego nie wymaga). + +>> Spróbuj nacisn±æ C-b na pocz±tku linii. Powinno Ciê to przenie¶æ + na koniec poprzedniej linii. Dzieje siê tak dlatego, ¿e kursor + przechodzi wówczas nad znakiem nowej linii. + +C-f przechodzi nad znakiem nowej linii tak samo jak C-b. + +>> Naci¶nij kilka razy C-b i obserwuj po³o¿enie kursora. + Naciskaj potem C-f, by wróciæ na koniec linii. W koñcu naci¶nij + jeszcze raz C-f, by przej¶æ do nastêpnej linii. + +Gdy przesuwasz kursor poza doln± krawêd¼ ekranu, tekst po³o¿ony +za krawêdzi± przesuwa siê na ekran (ang. scrolling). Dziêki temu +Emacs mo¿e przesun±æ kursor do okre¶lonego miejsca bez umieszczania +go poza ekranem. + +>> Spróbuj przesun±æ kursor poza doln± granicê ekranu za pomoc± C-n + i zobacz, co siê stanie. + +Je¶li przesuwanie siê o jeden znak na raz jest dla Ciebie zbyt wolne, +to spróbuj przesuwaæ siê o s³owa. M-f (Meta-f) przesuwa kursor o s³owo +do przodu, a M-b przesuwa go o s³owo do ty³u. + +>> Naci¶nij kilka razy M-f i M-b. + +Gdy jeste¶ w ¶rodku s³owa, to M-f przesuwa kursor na jego koniec. +Je¶li natomiast jeste¶ w przerwie miedzy s³owami, to M-f przesuwa +kursor na koniec nastêpnego s³owa. M-b zachowuje siê podobnie +dla ruchu do ty³u. + +>> Naci¶nij M-f i M-b kilka razy na przemian z C-f i C-b, tak by¶ + móg³ zauwa¿yæ dzia³anie M-f i M-b naci¶niêtych w ró¿nych miejscach + wewn±trz i miêdzy s³owami. + +Zauwa¿ podobieñstwo miêdzy C-f i C-b oraz M-f i M-b. Bardzo czêsto +kombinacje zawieraj±ce Meta (Alt) oznaczaj± operacje zwi±zane +z jednostkami jêzykowymi (s³owa, zdania, akapity), podczas gdy +kombinacje z klawiszem Control dzia³aj± na jednostkach podstawowych, +niezale¿nych od tego, co edytujesz (znaki, linie, itd.). + +Oto zale¿no¶æ, która stosuje siê do linii i zdañ: C-a i C-e przesuwaj± +kursor na pocz±tek i koniec linii, a M-a i M-e przesuwaj± go na pocz±tek +i koniec zdania. + +>> Naci¶nij kilka razy C-a, a potem kilka razy C-e. + Powtórz to z M-a, a potem z M-e. + +Czy zauwa¿y³e¶, ¿e powtarzanie C-a nic nie zmienia, natomiast powtórne +M-a przesuwa Ciê o jedno zdanie? Chocia¿ nie ma tu pe³nej analogii, +wydaje siê to jednak naturalne. + +Po³o¿enie kursora w tek¶cie jest okre¶lane mianem "punktu". + +Oto podsumowanie prostych poleceñ s³u¿±cych do przesuwania kursora, +w³±cznie z operacjami dotycz±cymi s³ów i zdañ: + + C-f Do przodu o jeden znak + C-b Do ty³u o jeden znak + + M-f Do przodu o s³owo + M-b Do ty³u o s³owo + + C-n Nastêpna linia + C-p Poprzednia linia + + C-a Pocz±tek linii + C-e Koniec linii + + M-a Do ty³u na pocz±tek zdania + M-e Do przodu na koniec zdania + +>> Przeæwicz kilka razy dla wprawy wszystkie powy¿sze polecenia. + Nale¿± one do najczê¶ciej u¿ywanych. + +Dwa inne wa¿ne polecenia przesuwaj±ce kursor to M-< (Meta lub Alt +i znak mniejszo¶ci), które przesuwa kursor na pocz±tek ca³ego tekstu +i M-> (Meta lub Alt i znak wiêkszo¶ci), które przesuwa kursor na koniec +ca³ego tekstu. + +Na wiêkszo¶ci klawiatur "<" jest nad przecinkiem, musisz wiêc u¿yæ +klawisza Shift, by nacisn±æ "<", i podobnie musisz u¿yæ klawisza Shift, +by nacisn±æ M-<. Bez Shift uzyska³by¶ M-przecinek. + +>> Naci¶nij M-<, by przej¶æ na pocz±tek samouczka, a potem kilka razy + u¿yj C-v, by powróciæ do tego miejsca. + +>> Teraz naci¶nij M->, by przej¶æ na koniec samouczka, i wróæ do tego + miejsca za pomoc± kilkakrotnego M-v. + +Je¶li Twoja klawiatura ma klawisze strza³ek, to mo¿esz ich u¿yæ do +przesuwania kursora. Radzimy Ci nauczyæ siê siê kombinacji C-b, C-f, +C-n i C-p z trzech powodów. Po pierwsze, dzia³aj± one na wszystkich +typach terminali. Po drugie, gdy ju¿ zdobêdziesz pewn± praktykê w +pos³ugiwaniu siê Emacsem, to bêdzie Ci szybciej nacisn±æ te kombinacje +ni¿ klawisze strza³ek (poniewa¿ nie wymaga to przenoszenia d³oni z +miejsca, które zajmuj± podczas szybkiego pisania za pomoc± 10 palców). +Po trzecie wreszcie, gdy ju¿ wyrobisz sobie zwyczaj pos³ugiwania siê +tymi poleceniami z klawiszem Control, to ³atwo przyjdzie Ci nauczyæ siê +bardziej zaawansowanych poleceñ przesuwaj±cych kursor. + +Wiêkszo¶æ poleceñ Emacsa akceptuje argument liczbowy; dla wiêkszo¶ci +poleceñ oznacza on liczbê powtórzeñ. Aby okre¶liæ liczbê powtórzeñ +polecenia, powiniene¶ je poprzedziæ naci¶niêciem C-u a potem cyfr. +Je¶li masz na klawiaturze klawisz META (lub EDIT albo ALT), to +alternatywnym sposobem wprowadzenia argumentu liczbowego jest u¿ycie +tego klawisza i wciskanie cyfr argumentu. Radzimy jednak przyswoiæ +sobie metodê z klawiszem C-u, poniewa¿ dzia³a ona na wszystkich +terminalach. + +Na przyk³ad C-u 8 C-f przesuwa kursor do przodu o osiem znaków. + +>> Spróbuj u¿yæ C-n i C-p z argumentem liczbowym, by przesun±æ kursor + do jednej z linii w pobli¿u tego zdania za pomoc± tylko jednego + polecenia. + +Wiêkszo¶æ poleceñ u¿ywa argumentu liczbowego jako liczby powtórzeñ. +Jest kilka poleceñ, które u¿ywaj± go w inny sposób. Do takich wyj±tków +nale¿± C-v i M-v. Je¶li poda siê im argument, to przesuwaj± zawarto¶æ +ekranu w górê lub w dó³ o podan± liczbê linii zamiast o tyle¿ ekranów. +Na przyk³ad C-u 4 C-v przewija ekran o 4 linie. + +>> Spróbuj nacisn±æ C-u 8 C-v. + +To powinno by³o przewin±æ ekran do góry o 8 linii. Je¶li chcia³by¶ +przewin±æ ekran w dó³, to powiniene¶ podaæ argument przed poleceniem M-v. + +Je¶li pracujesz w systemie z okienkowym trybem graficznym, jak X11 +lub MS-Windows, to prawdopodobnie po lewej stronie okna Emacsa znajduje +siê prostok±tny obszar nazywany po angielsku "scrollbar", a po polsku +suwakiem. Za jego pomoc± mo¿esz przewijaæ tekst, u¿ywaj±c do tego myszy. + +>> Spróbuj nacisn±æ ¶rodkowy klawisz myszy u góry pod¶wietlonego + obszaru na suwaku. To powinno przewin±æ tekst do miejsca + okre¶lonego przez wysoko¶æ, na której nacisn±³e¶ klawisz myszy. + +>> Przesuñ mysz do miejsca oddalonego od górnego koñca suwaka o mniej + wiêcej trzy linie i naci¶nij lewy klawisz myszy kilka razy. + + +* GDY EMACS JEST ZABLOKOWANY +---------------------------- + +Je¶li Emacs przestaje odpowiadaæ na Twoje polecenia, to mo¿esz go +bezpiecznie zatrzymaæ, przyciskaj±c C-g. Klawisza C-g mo¿esz te¿ u¿yæ do +przerwania polecenia, które zabiera zbyt wiele czasu. + +Mo¿esz tak¿e u¿yæ C-g do anulowania argumentu liczbowego albo pocz±tku +polecenia, którego nie zamierzasz dokoñczyæ. + +>> Napisz C-u 100 jako argument liczbowy, po czym naci¶nij C-g. + Teraz naci¶nij C-f. Powinno to przesun±æ kursor zaledwie o + jeden znak, poniewa¿ argument liczbowy anulowa³e¶ za pomoc± C-g. + +Za pomoc± klawisza C-g mo¿esz te¿ anulowaæ skutki omy³kowego +wci¶niêcia klawisza . + + +* ZABLOKOWANE POLECENIA +----------------------- + +Pewne polecenia Emacsa s± ,,zablokowane'' -- po to, by pocz±tkuj±cy +u¿ytkownicy nie mogli ich wywo³aæ przez przypadek. + +Je¶li wywo³asz jedno z zablokowanych poleceñ, to Emacs wypisze komunikat +informuj±cy o tym, co to za polecenie, i zapyta Ciê, czy istotnie chcesz +je wywo³aæ. + +Je¶li naprawdê chcesz wywo³aæ to polecenie, to odpowiedz na pytanie, +naciskaj±c spacjê. Je¶li nie chcesz wywo³aæ zablokowanego polecenia, +to na pytanie odpowiedz, naciskaj±c n. + +>> Napisz `C-x C-l' (co jest zablokowanym poleceniem) i odpowiedz n + na zadane pytanie. + + +* OKNA +------ + +Emacs mo¿e mieæ otwartych kilka okien, z których ka¿de wy¶wietla +w³asny tekst. Pojêcie ,,okna'', je¶li chodzi o Emacsa, nie odnosi +siê do osobnego okienka systemu okienkowego, lecz do pojedynczego +panelu wewn±trz okienka systemowego. (Emacs mo¿e te¿ pracowaæ +na kilku oknach systemowych (X-oknach); w terminologii Emacsa +nazywaj± siê one ramkami. Opisane jest to poni¿ej.) + +Na tym etapie lepiej jest siê nie zag³êbiaæ w techniki wykorzystuj±ce +kilka okien. Powiniene¶ jedynie wiedzieæ, w jaki sposób pozbyæ siê +nadmiaru okien, które mog± siê pojawiæ w wyniku wywo³ania Emacsowego +systemu pomocy albo niektórych poleceñ. Robi siê to w prosty sposób: + + C-x 1 Jedno okno (tzn. zlikwiduj wszystkie pozosta³e okna). + +Kombinacja ta to klawisz Control-x, po którym wystêpuje cyfra 1. +Powiêksza ona okno, w którym jest kursor tak, by wype³ni³o ono ekran, +kasuj±c zarazem pozosta³e okna Emacsa. + +>> Przesuñ kursor do tej linii i naci¶nij C-u 0 C-l. + +(C-l, jak pamiêtasz od¶wie¿a zawarto¶æ ekranu. Je¶li temu poleceniu +poda siê argument liczbowy, to bêdzie to oznacza³o ,,od¶wie¿ zawarto¶æ +ekranu i umie¶æ bie¿±ca liniê o tyle linii od góry ekranu''. Tak wiêc, +C-u 0 C-1 oznacza ,,od¶wie¿ ekran, umieszczaj±c bie¿±ca liniê na samej +górze''.) + +>> Naci¶nij Control-x 2 + Zauwa¿, ¿e okno siê kurczy, a jednocze¶nie pojawia siê nowe, + wy¶wietlaj±ce ten sam tekst. + +>> Naci¶nij C-x 1, a nowe okno zniknie. + + +* WSTAWIANIE I USUWANIE +----------------------- + +Je¶li chcesz wstawiæ nowy tekst, to po prostu go napisz. Znaki, które da +siê wy¶wietliæ, takie jak A, 7, *, itd., Emacs traktuje jako tekst i +natychmiast wstawia do dotychczasowego tekstu. Aby wstawiæ znak nowej +linii, trzeba nacisn±æ klawisz (na maszynach do pisania tak +oznacza³o siê znak powrotu karetki). + +Ostatnio napisany znak mo¿esz skasowaæ, naciskaj±c klawisz . +Chodzi tu o klawisz, którego normalnie u¿ywasz do skasowania ostatnio +napisanego znaku. Na wiêkszo¶ci klawiatur wyró¿nia siê on wielko¶ci±, +le¿y nad klawiszem i jest oznaczony napisem "Delete", "Del" +albo "Backspace". + +Je¶li masz na klawiaturze klawisz oznaczony "Backspace", to w³a¶nie on +jest wspomnianym . Oprócz niego mo¿e jeszcze wystêpowaæ +klawisz oznaczony s³owem "Delete", ale to nie on pe³ni rolê . + +Mówi±c bardziej ogólnie, usuwa znak bezpo¶rednio +poprzedzaj±cy bie¿±c± pozycjê kursora. + +>> Sprawd¼ to teraz: wstaw kilka znaków, po czym usuñ je, kilka razy + naciskaj±c . Nie martw siê, ¿e zmieniasz w ten sposób + niniejszy plik, w istocie nie zmieniasz g³ównego pliku samouczka. + Pracujesz teraz na jego kopii. + +Gdy linia tekstu staje siê zbyt d³uga, by zmie¶ciæ siê w jednym +wierszu ekranu, to jest ona ,,kontynuowana'' w wierszu nastêpnym. +Znak ,,backslash'' (`\') (albo - je¶li pracujesz w okienkowym +trybie graficznym - zagiêta strza³ka) umieszczony na prawym marginesie +wskazuje, ¿e dana linia jest kontynuowana w nastêpnym wierszu ekranu. + +>> Wpisuj jaki¶ tekst tak d³ugo, a¿ dojdziesz do prawego marginesu, i + potem nie przestawaj. Zauwa¿ysz, ¿e pojawi siê linia kontynuacji. + +>> U¿yj klawisza , by usun±æ znaki tekstu, tak by linia znowu + mie¶ci³a siê na ekranie; linia kontynuacji zniknie. + +Znak nowej linii mo¿na skasowaæ tak jak ka¿dy inny znak. Usuniêcie znaku +nowej linii miêdzy dwiema liniami spowoduje ich po³±czenie. Je¶li powsta³a +w wyniku tego linia tekstu jest zbyt d³uga, by zmie¶ciæ siê na szeroko¶æ +ekranu, to zostanie wy¶wietlona z lini± kontynuacji. + +>> Przesuñ kursor na pocz±tek linii i naci¶nij . Bie¿±ca + linia zostanie po³±czona z poprzedni±. + +>> Naci¶nij , by z powrotem wstawiæ znak nowej linii, który + skasowa³e¶. + +Jak ju¿ wiesz, wiêkszo¶æ poleceñ Emacsa mo¿na wywo³aæ z parametrem +liczby powtórzeñ; dotyczy to tak¿e znaków tekstu. Argument liczbowy +powoduje wstawienie znaku odpowiadaj±c± mu liczbê razy. + +>> Wypróbuj to teraz -- naci¶nij C-u 8 *, a uzyskasz ********. + +Nauczy³e¶ siê ju¿ wiêkszej czê¶ci podstawowych sposobów pisania oraz +poprawiania b³êdów. W Emacsie mo¿esz usuwaæ równie¿ ca³e s³owa lub +linie. Oto podsumowanie operacji usuwania znaków: + + usuñ znak bezpo¶rednio przed kursorem + C-d usuñ znak bezpo¶rednio za kursorem + + M- wytnij s³owo bezpo¶rednio przed kursorem + M-d wytnij s³owo bezpo¶rednio za kursorem + + C-k wytnij zawarto¶æ linii od kursora do jej koñca + M-k wytnij wszystkie znaki od kursora do koñca zdania + +Warto zauwa¿yæ, ¿e stosunek i C-d do M- i M-d +rozszerza analogiê wystêpuj±c± w zestawieniu C-f i M-f ( tak +naprawdê nie jest znakiem steruj±cym, ale nie jest to tutaj +istotne). C-k i M-k s± podobne do C-e i M-e w tym sensie, ¿e linie s± +odpowiednikami zdañ. + + +Oto metoda wycinania czê¶ci tekstu. Umie¶æ kursor na pocz±tku fragmentu, +który chcesz wyci±æ, i naci¶nij C-@ lub C-SPC (SPC-spacja). Teraz przejd¼ +na drugi koniec wybranego fragmentu i naci¶nij C-w. To wytnie ca³y tekst +zawarty miêdzy punktami pocz±tkowym i koñcowym. + +>> Przesuñ kursor na literê O na pocz±tku poprzedniego paragrafu. + +>> Naci¶nij C-SPC. Emacs wy¶wietli "Mark set" (znacznik ustawiony) + na dole ekranu. + +>> Przesuñ kursor do litery o w s³owie ,,kursor'' w drugim zdaniu. + +>> Naci¶nij C-w. Ta komenda wytnie ca³y fragment zaczynaj±cy siê od O, + a koñcz±cy tu¿ przed o. + +Gdy usuwasz wiêcej ni¿ jeden znak naraz, Emacs zachowuje usuniêty +tekst po to, by móg³ go z powrotem gdzie¶ wstawiæ. Wstawianie +usuniêtego tekstu nazywa siê ,,wklejaniem''. Usuniêty tekst +mo¿esz wkleiæ zarówno w to samo miejsce, z którego zosta³ usuniêty, +b±d¼ te¿ w inne miejsca. Ten sam tekst mo¿esz wkleiæ wielokrotnie, +w celu uzyskania wielu kopii. Poleceniem wklejenia tekstu jest C-y. + +Zauwa¿ ró¿nicê miêdzy ,,wycinaniem'' i ,,usuwaniem'', polegaj±c± na tym, +¿e rzeczy wyciête mo¿na na nowo wklejaæ, usuniêtych natomiast wklejaæ nie +mo¿na. Na ogó³ polecenia Emacsa, które kasuj± du¿o tekstu, zachowuj± go, +podczas gdy polecenia, które po prostu kasuj± jeden znak albo puste +linie lub odstêpy, skasowanego tekstu nie zachowuj±. + +>> Przesuñ kursor na pocz±tek linii, która nie jest pusta. Naci¶nij + C-k, by wyci±æ tekst z tej linii. + +>> Naci¶nij C-k jeszcze raz. Zauwa¿, ¿e wycina to znak nowej linii, + który znajduje siê za ta lini±. + +Zwróæ uwagê, ¿e pojedyncze C-k wycina zawarto¶æ linii, a powtórne C-k +wycina sam± liniê, tak ¿e pozosta³e linie przesuwaj± siê do góry. C-k +traktuje argument liczbowy w sposób specjalny: wycina ono tyle linii, +ile wynosi warto¶æ argumentu, ORAZ ich zawarto¶æ. To nie jest jedynie +powtórzenie kilka razy C-k. C-u 2 C-k wycina dwie linie wraz z ich +znakami nowej linii; dwukrotne naci¶niecie C-k nie zrobi³oby tego. + +By odzyskaæ ostatnio wyciêty tekst i wstawiæ go w miejsce kursora, +naci¶nij C-y. + +>> Twoja kolej. Naci¶nij C-y, by z powrotem wstawiæ tekst. + +Zwróæ uwagê, ¿e je¶li naci¶niesz C-k kilka razy z rzêdu, to ca³y wyciêty +tekst zostanie zachowywany w jednym kawa³ku, tak ¿e pojedyncze C-y wklei +wszystkie linie. + +>> Naci¶nij C-k kilka razy. + +A by odzyskaæ ten wyciêty tekst... + +>> ...naci¶nij C-y. Przesuñ potem kursor o kilka linii w dó³ i + naci¶nij C-y jeszcze raz. Widzisz, ¿e wstawia to ten sam tekst. + +Co zrobiæ, je¶li chcesz wstawiæ tekst, który wcze¶niej wyci±³e¶, +a potem wycinasz co¶ innego? C-y wstawia tekst ostatnio wyciêty. +Poprzedni fragment nie jest jednak stracony. Mo¿esz do niego wróciæ, +u¿ywaj±c polecenia M-y. Naciskaj±c C-y, wstawiasz tekst ostatnio +wyciêty, a naciskaj±c M-y, zastêpujesz ten tekst wyciêtym uprzednio. +Dalsze naciskanie M-y przywo³uje coraz wcze¶niejsze fragmenty tekstu. +Gdy dojdziesz do tekstu, którego szuka³e¶, po prostu kontynuuj edycjê +tekstu, pozostawiaj±c wklejony tekst tam, gdzie siê znajduje. + +Naciskaj±c M-y wystarczaj±co wiele razy, dojdziesz do punktu, +z którego wystartowa³e¶ (czyli tekstu wyciêtego ostatnio). + +>> Wytnij jak±¶ liniê, zmieñ pozycjê kursora i wytnij inn±. Naci¶nij + potem C-y, by wstawiæ drug± z wyciêtych linii. Potem naci¶nij M-y + i linia ta zostanie zast±piona przez t± pierwsz±. Naci¶nij M-y + jeszcze kilka razy, by zobaczyæ, co siê dzieje. Powtarzaj to a¿ + do ponownego pojawienia siê drugiej z linii. Mo¿esz te¿ wypróbowaæ, + co siê stanie, gdy polecenie M-y poprzedzisz argumentem dodatnim + albo ujemnym. + + +* COFNIJ +-------- + +Je¶li wprowadzisz zmiany do tekstu, a potem dojdziesz do wniosku, ¿e +to by³a pomy³ka, to mo¿esz cofn±æ zmiany, wydaj±c polecenie ,,cofnij'' +(ang. undo), C-x u. + +C-x u cofa zmiany wprowadzone przez jedno polecenie; je¶li powtórzysz +C-x u kilka razy z rzêdu, to ka¿de powtórzenie cofa kolejne polecenie. + +Od tej regu³y s± dwa wyj±tki: polecenia, które nie zmieniaj± tekstu nie +licz± siê jako polecenia, które mo¿na wycofaæ (dotyczy to zarówno +przesuniêæ kursora, jak i przewijania tekstu), oraz znaki wstawiane do +tekstu (np. litery) ³±czone s± w grupy do 20. (Redukuje to liczbê +naci¶niêæ C-x u, które musia³by¶ wykonaæ, by wycofaæ siê z niechcianych +zmian.) + +>> Wytnij tê liniê za pomoc± C-k, a potem naci¶nij C-x u; linia + powinna siê pojawiæ ponownie. + +C-_ jest innym sposobem wywo³ania polecenia "cofnij"; dzia³a to +dok³adnie tak samo jak C-x u, jest jednak ³atwiejsze do naci¶niêcia +kilka razy z rzêdu. Wad± kombinacji C-_ jest to, ¿e nie jest oczywiste +w jaki sposób j± uzyskaæ na niektórych klawiaturach. To w³a¶nie dlatego +dostêpna jest te¿ kombinacja C-x u. Na niektórych terminalach mo¿esz +nacisn±æ C-_ poprzez przytrzymanie Ctrl i naci¶niêcie /. + +Argument liczbowy podany przed C-_ lub C-x u okre¶la liczbê powtórzeñ +tego polecenia. + + +* PLIKI +------- + +Aby edytowany przez Ciebie tekst zosta³ na trwa³e zachowany, musisz +umie¶ciæ go w pliku. Je¶li tego nie zrobisz, to tekst zniknie, gdy +zamkniêty zostanie Emacs, za pomoc± którego go edytowa³e¶. Aby zachowaæ +tekst w pliku, najpierw musisz ten plik ,,znale¼æ'', i to zanim +zaczniesz wprowadzaæ tekst. Czynno¶æ znajdowania pliku (ang. "file +finding") bywa te¿ nazywana ,,odwiedzaniem pliku'' (ang. "file +visiting"). + +Odwiedzanie pliku w Emacsie powoduje wy¶wietlenie jego zawarto¶ci. +Bardzo czêsto jest to pocz±tek edycji pliku. Jednak¿e zmiany, które +wprowadzasz do pliku, nie s± w nim utrwalone, zanim go nie ,,zachowasz'' +(ang. save). Ma to zapobiec pozostawieniu w systemie pliku, który zosta³ +zmieniony tylko w po³owie, a tego chcesz unikn±æ. Gdy zachowujesz +zmieniony plik, Emacs zostawia orygina³ (pod inna nazw±) na wypadek, +gdyby¶ doszed³ do wniosku, ¿e wprowadzone zmiany by³y b³êdne. + +Je¶li popatrzysz na dó³ ekranu, to zauwa¿ysz liniê, która zaczyna siê +i koñczy my¶lnikami, a zawiera tekst ,,TUTORIAL''. W tej +czê¶ci ekranu zawsze mo¿esz znale¼æ nazwê pliku, który w³a¶nie +odwiedzasz. W tej chwili odwiedzasz plik o nazwie TUTORIAL, który +jest Twoj± w³asn± kopi± samouczka Emacsa. Obojêtnie, który plik +odwiedzisz, w³a¶nie w tym miejscu pojawi siê jego nazwa. + +Polecenia s³u¿±ce do odwiedzania i zachowywania plików ró¿ni± siê +od innych poleceñ, które ju¿ pozna³e¶, tym, ¿e sk³adaj± siê z dwóch +znaków. Obydwa zaczynaj± siê od znaku Control-x. Jest mnóstwo +poleceñ, które zaczynaj± siê od tego w³a¶nie znaku; wiele z nich +dotyczy plików, buforów oraz rzeczy z nimi zwi±zanych. Polecenia +te maj± d³ugo¶æ dwóch, trzech lub czterech znaków. + +Kolejn± nowo¶ci± odno¶nie polecenia odwiedzania pliku jest to, ¿e +musisz mu podaæ nazwê pliku, który chcesz znale¼æ. Mówimy o tym, ¿e +polecenie ,,czyta argument z terminala'' (w tym wypadku argument jest +nazw± pliku). Po wpisaniu polecenia + + C-x C-f znajd¼ plik (ang. find a file) + +Emacs poprosi Ciê o wpisanie nazwy pliku. Pojawia siê ona w dolnej linii +ekranu. Gdy ta linia jest u¿ywana do wprowadzania tego typu danych, +nazywa siê j± ,,minibuforem'' (ang. "minibuffer"). Do edycji nazwy pliku +w minibuforze mo¿esz u¿ywaæ zwyk³ych poleceñ Emacsa. + +Wprowadzanie nazwy pliku (lub jakichkolwiek innych danych w +minibuforze) mo¿na anulowaæ klawiszem C-g. + +>> Naci¶nij C-x C-f, po czym naci¶nij C-g. Na skutek tego zniknie + minibufor oraz przerwane zostanie wykonanie polecenia C-x C-f, które + tego minibufora u¿ywa³o. W rezultacie nie odwiedzisz ¿adnego pliku. + +Gdy skoñczysz wpisywaæ nazwê pliku, naci¶nij . Wówczas +polecenie C-x C-f zabierze siê do roboty i znajdzie plik, który +wybra³e¶. Z chwil± zakoñczenia wykonywania polecenia C-x C-f +zniknie te¿ minibufor. + +Zawarto¶æ znalezionego pliku po chwili pojawia siê na ekranie +i mo¿esz j± edytowaæ. Gdy chcesz zachowaæ zmiany, by je utrwaliæ, +wydaj polecenie + + C-x C-s zachowaj plik (ang. save). + +Kopiuje to tekst z Emacsa do pliku. Za pierwszym razem, gdy to +robisz, Emacs zmienia nazwê oryginalnego pliku, dodaj±c na +koñcu jego nazwy znak ~. W ten sposób powstaje zapasowa kopia +oryginalnego pliku. + +Gdy zachowywanie pliku siê koñczy, Emacs wypisuje jego nazwê u do³u +ekranu. Pliki powiniene¶ zachowywaæ stosunkowo czêsto, aby nie straciæ +za du¿o w wypadku za³amania systemu. + +>> Naci¶nij C-x C-s, by zachowaæ dla siebie kopiê samouczka. Emacs + powinien wypisaæ "Wrote ...TUTORIAL" na dole ekranu. + +UWAGA: W niektórych systemach naci¶niêcie C-x C-s zamra¿a ekran i w +rezultacie Emacs nie mo¿e pokazywaæ tekstu. Oznacza to, ¿e sk³adowa +systemu operacyjnego, zwana kontrol± przep³ywu (ang. flow control), +przechwyci³a znak C-s i nie pozwoli³a mu dotrzeæ do Emacsa. By odzyskaæ +kontrolê nad ekranem, naci¶nij C-q. Dodatkowej pomocy poszukaj w +rozdziale "Spontaneous Entry to Incremental Search" w podrêczniku +Emacsa. + +Odwiedziæ w celu edycji lub odczytu mo¿esz plik istniej±cy ju¿ w +systemie. Mo¿esz te¿ odwiedziæ plik, którego jeszcze nie ma w systemie i +w³a¶nie w taki sposób tworzy siê w Emacsie nowe pliki. Gdy poleceniem +C-x C-f odwiedzisz plik o nazwie nieistniej±cej w systemie, wówczas +Emacs wy¶wietli puste miejsce, do którego bêdziesz móg³ zacz±æ wpisywaæ +tekst. Gdy za¿±dasz zachowania wpisanego tekstu, Emacs utworzy w +systemie plik z tym tekstem. Od tego momentu mo¿esz uwa¿aæ, ¿e edytujesz +plik ju¿ istniej±cy. + + +* BUFORY +-------- + +Je¶li za pomoc± C-x C-f odwiedzisz inny plik, to plik odwiedzony +poprzednio pozostanie w Emacsie. Mo¿esz siê na niego prze³±czyæ, +odwiedzaj±c go jeszcze raz za pomoc± C-x C-f. W ten sposób mo¿esz +mieæ w Emacsie odwiedzonych jednocze¶nie wiele plików. + +>> Utwórz plik o nazwie "foo" za pomoc± C-x C-f foo . + Wpisz w niego jaki¶ tekst i zachowaj "foo" za pomoc± C-x C-s. + W koñcu napisz C-x C-f TUTORIAL , by wróciæ do samouczka. + +Emacs przechowuje tekst ka¿dego pliku w obiekcie, zwanym ,,buforem''. +Odwiedzenie pliku powoduje utworzenie nowego bufora wewn±trz Emacsa. By +zobaczyæ listê buforów, które istniej± w Twoim Emacsie, naci¶nij + + C-x C-b lista buforów (ang. list buffers). + +>> Naci¶nij C-x C-b. + +Zwróæ uwagê, ¿e ka¿dy bufor ma w³asn± nazwê, mo¿e te¿ mieæ skojarzon± z +nim nazwê pliku, który odwiedza. KA¯DY tekst, który ogl±dasz w Emacsie, +jest zawsze czê¶ci± jednego z buforów. + +>> Naci¶nij C-x 1 by pozbyæ siê listy buforów. + +Je¶li masz kilka buforów to tylko jeden z nich jest aktualny, ten +który w³a¶nie edytujesz. Je¶li chcesz edytowaæ inny bufer musisz siê +do niego "prze³±czyæ" (ang. switch). Je¶li chcesz prze³±czyæ siê do +bufora, który odwiedza jaki¶ plik, mo¿esz to zrobiæ poprzez ponowne +odwiedzenie pliku za pomoc± C-x C-f. Ale istnieje tak¿e ³atwiejszy +sposób: u¿yj C-x b. U¿ywaj±c tej komendy musisz podaæ nazwê bufora, do +którego zamierzasz siê prze³±czyæ. + +>> Naci¶nij C-x b foo by wróciæ do bufora "foo", który + przechowuje tekst pliku "foo". Nastêpnie naci¶nij C-x b TUTORIAL + by wróciæ do samouczka. + +Zwykle nazwa bufora odpowiada nazwie pliku (bez ¶cie¿ki), choæ czasami +zdarza siê inaczej. Lista buforów, któr± tworzysz za pomoc± C-x C-b +pokazuje nazwy wszystkich buforów. + +KA¯DY tekst, który pojawia siê w oknie Emacsa jest czê¶ci± jakiego¶ +bufora. Niektóre bufory nie odpowiadaj± ¿adnemu odwiedzanemu +plikowi. Na przyk³ad bufor "*Buffer List*" nie odwiedza ¿adnego pliku; +zawiera on listê buforów, utworzon± w reakcji na naci¶niêcie przez +Ciebie C-x C-b. Bufor "*Messages*" tak¿e nie odwiedza ¿adnego pliku; +zawiera komunikaty, które pojawia³y siê podczas Twojej sesji z +Emacsem. + +>> Naci¶nij C-x b *Messages* by obejrzeæ bufor zawieraj±cy + komunikaty. Nastêpnie naci¶nij C-x b TUTORIAL by wróciæ do + samouczka. + +Je¶li zmieniasz tekst w jakim¶ pliku, a potem odwiedzisz inny plik, to +zawarto¶æ tego pierwszego NIE jest automatycznie zachowywana. Zmiany, +które wprowadzi³e¶, pozostaj± w Emacsie, w buforze tego¿ pliku. +Tworzenie czy edytowanie innego bufora nie ma ¿adnego wp³ywu na +pozosta³e. Jest to bardzo przydatne, ale te¿ oznacza, ¿e potrzebny jest +Ci wygodny sposób zachowywania zawarto¶ci buforów. Niewygodne na +przyk³ad by³oby, aby zawsze w celu zachowania bufora trzeba by³o do +niego przechodziæ za pomoc± C-x C-f i dopiero potem wywo³ywaæ C-x C-s. +Dlatego istnieje polecenie: + + C-x s Zachowaj bufory (ang. save some buffers) + +W reakcji na polecenie C-x s Emacs dla ka¿dego z buforów, w którym +wystêpuj± nie zachowane do tej pory zmiany, zadaje pytanie, czy go +w tej chwili zachowaæ. + +>> Wstaw jak±¶ liniê tekstu, a potem naci¶nij C-x s. + Powiniene¶ zostaæ zapytany o to, czy chcesz zachowaæ bufor + TUTORIAL. Odpowiedz na to pytanie twierdz±co, naciskaj±c y. + + +* ROZSZERZANIE ZESTAWU POLECEÑ +------------------------------ + +Poleceñ Emacsa jest znacznie, znacznie wiêcej, ni¿ mo¿na by skojarzyæ +z klawiszami klawiatury, uwzglêdniaj±c nawet kombinacje z META lub Ctrl. +Emacs radzi sobie z tym problemem, udostêpniaj±c polecenia X (ang. +eXtend). Istniej± dwa rodzaje tych poleceñ: + + C-x Rozszerzenie o znak. Nastêpuje po nim jeden znak. + M-x Rozszerzenie o nazwane polecenie. Nastêpuje po nim + pe³na, niekiedy d³uga nazwa polecenia. + +Polecenia te s± u¿yteczne, ale u¿ywa siê ich nie tak czêsto, jak tych, +których ju¿ siê nauczy³e¶. Mia³e¶ ju¿ okazjê poznaæ dwa z nich: C-x C-f, +s³u¿±ce do odwiedzania plików, oraz C-x C-s do ich zachowywania. Innym +przyk³adem mo¿e byæ polecenie C-x C-c, które koñczy sesjê Emacsa. (Nie +martw siê, ¿e w ten sposób stracisz zmiany, które wprowadzi³e¶ do +tekstów; przed zamkniêciem sesji Emacs proponuje Ci zachowania +ka¿dego ze zmodyfikowanych plików.) + +C-z jest poleceniem, które wychodzi z Emacsa *na chwilê*, tak by¶ móg³ +wróciæ do niej wróciæ po jakim¶ czasie. + +W systemach, w których jest to mo¿liwe, C-z zawiesza proces Emacsa; +powoduje to powrót do pow³oki (ang. shell), ale nie niszczy Emacsa. +W najpopularniejszych pow³okach mo¿esz wróciæ do Emacsa za pomoc± +polecenia `fg' lub `%emacs'. + +W systemach, w których nie ma zawieszania procesów, C-z tworzy proces +podpow³oki (ang. "subshell"), który dzia³a pod Emacsem i daje Ci szansê +uruchamiania innych programów oraz powrotu do Emacsa po ich skoñczeniu; w +systemach tych C-z w istocie nie powoduje wyj¶cia z Emacsa i wówczas +normalnym poleceniem powrotu do Emacsa jest wyj¶cie z podpow³oki za +pomoc± polecenia "exit". + +Polecenia C-x C-c powiniene¶ u¿ywaæ, gdy masz zamiar siê wylogowaæ. +Zalecane jest tak¿e wychodzenie z Emacsa wystartowanego na przyk³ad przez +programy obs³uguj±ce pocztê elektroniczn± lub innego rodzaju narzêdzia, +poniewa¿ mog± one nie wiedzieæ, jak sobie poradziæ z zawieszeniem +Emacsa. Jednak¿e w zwyk³ych okoliczno¶ciach, je¶li nie musisz +wylogowywaæ siê z systemu, korzystniej jest zawiesiæ Emacsa za pomoc± +C-z, ni¿ z niego wyj¶æ. + +Istnieje wiele poleceñ zaczynaj±cych siê od C-x. Oto lista tych, +których ju¿ siê nauczy³e¶: + + C-x C-f odwied¼ plik + C-x C-s zachowaj plik + C-x C-b wy¶wietl listê buforów + C-x C-c wyjd¼ z Emacsa + C-x u cofnij + +Poleceñ podawanych za pomoc± nazwy u¿ywa siê jeszcze rzadziej lub u¿ywa +siê tylko w niektórych trybach. Przyk³adem mo¿e byæ polecenie +replace-string, które zastêpuje jeden ³añcuch innym w ca³ym tek¶cie. Gdy +naciskasz M-x, Emacs czeka na dalszy ci±g polecenia, wy¶wietlaj±c na +dole ekranu (w minibuforze) napis "M-x". Powiniene¶ tam wpisaæ nazwê +polecenia, w tym wypadku replace-string. Wystarczy przy tym, ¿e napisz +jedynie repl s; Emacs dokoñczy nazwê automatycznie. Wprowadzanie +nazwy zakoñcz naci¶niêciem klawisza . + +Polecenie replace-string wymaga dwóch argumentów: ³añcucha, który ma +zostaæ zast±piony, i ³añcucha, który ma zostaæ wstawiony w miejsce tego¿. +Wpisywanie ka¿dego z tych ³añcuchów trzeba zakoñczyæ przyci¶niêciem +klawisza . + +>> Przesuñ kursor do czystej linii, dwie linie poni¿ej tej. + Naci¶nij M-x repl szmienizmodyfikuje. + + Zwróæ uwagê, jak ta linia siê zmieni³a: zast±pi³e¶ s³owem + ,,zmodyfikuje'' ka¿de wyst±pienie s³owa z-m-i-e-n-i poni¿ej pocz±tkowej + pozycji kursora. + + +* AUTOMATYCZNE ZACHOWYWANIE +--------------------------- + +Je¶li zmian wprowadzonych do pliku nie zachowasz, to mo¿esz je straciæ w +wypadku, gdy Twój komputer przestanie dzia³aæ. By Ciê przed tym +uchroniæ, Emacs okresowo zachowuje wprowadzone zmiany w specjalnym +pliku, który ma znak # na pocz±tku i na koñcu swojej nazwy. Przyjmijmy +na przyk³ad, ¿e Twój plik nazywa siê "hello.c". Odpowiadaj±cy mu plik +zachowywany automatycznie bêdzie nosi³ nazwê "#hello.c#". Gdy +zachowasz plik w zwyk³y sposób, Emacs skasuje plik +zachowany automatycznie. + +Je¶li Twój komputer przestanie dzia³aæ, mo¿esz odzyskaæ Twoje dane z +pliku automatycznie zachowanego przez zwyk³e odwiedzenie tego pliku, +który edytowa³e¶ (a nie pliku automatycznie zachowanego!) i napisanie +M-x recover file. Gdy Emacs zapyta o potwierdzenie, to +dane zachowane automatycznie odzyskasz, je¶li odpowiesz yes. + + +* OBSZAR ECHA +------------- + +Je¶li polecenia dla Emacsa wpisujesz dostatecznie wolno, bêd± one +pokazywane w specjalnym obszarze na dole ekranu, zwanym obszarem echa +(ang. echo area). Obszar echa zawiera ostatni± doln± liniê ekranu. + + +* LINIA STANU +------------- + +Linia, która znajduje siê bezpo¶rednio nad obszarem echa, zwana jest +lini± trybu (ang. modeline). Pokazuje ona tekst podobny do +nastêpuj±cego: + +--:** TUTORIAL (Fundamental)--L670--58%---------------- + +Linia ta podaje u¿yteczne informacje o stanie Emacsa i tekstu, który +edytujesz. + +Wiesz ju¿, jakie jest znaczenie nazwy: oznacza ona plik, +który odwiedzi³e¶. --NN%-- informuje o bie¿±cej pozycji wewn±trz +tekstu; oznacza to, ¿e NN procent tekstu znajduje siê ponad górnym +brzegiem ekranu. Je¶li pocz±tek pliku znajduje siê na pocz±tku +ekranu, to zamiast liczby --00%-- zobaczysz w tym miejscu --Top--. +Podobnie dla koñca tekstu pojawi siê tam napis --Bot-- (ang. bottom). +Je¶li wy¶wietlasz tekst na tyle krótki, ¿e mie¶ci siê w +ca³o¶ci na ekranie, to linia trybu bêdzie zawiera³a napis --All--. + +Litera L, po której wystêpuj± cyfry, tak¿e opisuje Twoj± bie¿±c± +pozycjê: cyfry oznaczaj± numer linii, na której obecnie ustawiony jest +kursor. + +Gwiazdki blisko pocz±tku linii trybu oznaczaj±, ¿e wprowadzi³e¶ do +tekstu jakie¶ zmiany. Tu¿ po odwiedzeniu, a tak¿e po zachowaniu pliku +nie bêdzie w tym miejscu gwiazdek, lecz my¶lniki. + +Wewn±trz nawiasów znajdziesz informacje na temat trybu edycji, w +którym w³a¶nie jest Emacs. Domy¶lnym trybem edycji nazywa siê +podstawowym (ang. fundamental); jest to tryb u¿ywanym w³a¶nie w +tej chwili. Jest to przyk³ad ,,trybu g³ównego'' (ang. major mode). + +Emacs mo¿e dzia³aæ w wielu trybach g³ównych. Zosta³y one zaprojektowane, +aby u³atwiæ edycjê napisów w rozmaitych jêzykach programowania, takich +jak tryb Lisp czy C, oraz rodzajach tekstów, jak tryb tekstowy. W danej +chwili mo¿e byæ aktywny tylko jeden g³ówny tryb pracy i to jego nazwa +jest wy¶wietlana w linii trybu w miejscu, w którym teraz jest +"Fundamental". + +Ka¿dy z g³ównych trybów edycyjnych mo¿e zmieniæ zachowanie niektórych +poleceñ. Na przyk³ad w Emacsie istniej± polecenia s³u¿±ce do tworzenia +komentarzy w programach. Skoro ka¿dy jêzyk programowania sam okre¶la, +jak powinien wygl±daæ komentarz, to ka¿dy z g³ównych trybów edycyjnych +musi wstawiaæ komentarze w odpowiedni sposób. Trybowi edycyjnemu +odpowiada nazwa polecenia, które mo¿esz wykonaæ, by prze³±czyæ siê w ten +tryb lub go wy³±czyæ. Przyk³adem mo¿e byæ M-x fundamental-mode, które +jest poleceniem prze³±czaj±cym tryb podstawowy. + +Je¶li zamierzasz edytowaæ tekst w jêzyku angielskim, taki jak na +przyk³ad oryginalna wersja tego samouczka, to prawdopodobnie +powiniene¶ u¿yæ trybu tekstowego (ang. text mode). + +>> Napisz M-x text-mode. + +Nie musisz siê martwiæ, bo ¿adne z poleceñ, które do tej pory pozna³e¶, +nie zmienia Emacsa w powa¿ny sposób. Mo¿esz jednak zauwa¿yæ, ¿e teraz +M-f i M-b traktuj± apostrofy jako czê¶ci s³ów. Poprzednio, w trybie +podstawowym, polecenia te traktowa³y apostrofy jako separatory s³ów. + +G³ówne tryby edycji wprowadzaj± zwykle subtelne zmiany, takie jak +opisana powy¿ej; wiêkszo¶æ poleceñ nadal robi ,,to samo'', chocia¿ +byæ mo¿e w troszeczkê inny sposób. + +By zobaczyæ dokumentacjê na temat bie¿±cego g³ównego trybu edycji, +naci¶nij C-h m. + +>> Naci¶nij C-u C-v raz lub wiêcej razy, tak by ta linia znalaz³a siê + blisko góry ekranu. + +>> Naci¶nij C-h m, by odczytaæ dokumentacjê na temat tego, czym tryb + tekstowy ró¿ni siê od trybu podstawowego. + +>> Naci¶nij q, by usun±æ dokumentacjê trybu z ekranu. + +G³ówne tryby edycji nazywaj± siê w³a¶nie ,,g³ównymi'', gdy¿ wystêpuj± +tak¿e ,,podrzêdne'' tryby edycji (ang. minor modes). Podrzêdne tryby +edycji nie s± alternatyw± dla trybów g³ównych, lecz jedynie ich +niewielk± modyfikacj±. Ka¿dy podrzêdny tryb edycji mo¿na w³±czyæ lub +wy³±czyæ niezale¿nie od pozosta³ych trybów podrzêdnych, a tak¿e +niezale¿nie od trybu g³ównego. Mo¿esz wiec u¿ywaæ jednego, +kombinacji dowolnych, albo nie u¿ywaæ ¿adnego trybu podrzêdnego. + +Jednym z podrzêdnych trybów edycji, który jest bardzo u¿yteczny, +szczególnie do edycji tekstu angielskiego lub polskiego, jest tryb +automatycznego wype³niania (ang. auto fill mode). Je¶li jest on +w³±czony, to Emacs ³amie linie pomiêdzy s³owami automatycznie, gdy +podczas wstawiania tekstu linia robi siê za szeroka. + +Tryb automatycznego wstawiania w³±cza siê na przyk³ad poleceniem M-x +auto-fill-mode. Powtórzenie tego polecenie powoduje wy³±czenie +trybu, ponowne powtórzenie --- jego w³±czenie, i tak dalej. Mówimy, ¿e +polecenie ,,prze³±cza tryb''. + +>> Napisz M-x auto-fill-mode. Wstaw potem wiele napisów + ,,asdf '' tak d³ugo, a¿ zobaczysz, ¿e linia podzieli na dwie. + Miêdzy literami musisz wstawiaæ spacje, poniewa¿ tryb + automatycznego wype³niania ³amie linie tylko tam, gdzie s± spacje. + +Margines jest zazwyczaj ustawiony na 70 znaków, ale mo¿esz to zmieniæ +poleceniem C-x f. Powiniene¶ poleceniu podaæ argument liczbowy +mówi±cy, w której kolumnie ma zostaæ ustawiony margines. + +>> Wywo³aj C-x f z argumentem równym 20. (C-u 2 0 C-x f). + Napisz potem jaki¶ tekst i zauwa¿, ¿e Emacs wype³nia linie do + d³ugo¶ci co najwy¿ej 20 znaków. Ustaw margines z powrotem na + 70 znaków, wywo³uj±c jeszcze raz C-x f z odpowiednim argumentem. + +Je¶li zmieniasz tekst wewn±trz akapitu, to tryb automatycznego +wype³niania sam z siebie nie wyrówna marginesu. Mo¿esz go wyrównaæ +samodzielnie, wydaj±c polecenie M-q (Meta-q) (kursor powinien siê +wówczas znajdowaæ wewn±trz akapitu). + +>> Przesuñ kursor do poprzedniego akapitu i naci¶nij M-q. + + +* SZUKANIE +---------- + +Emacs potrafi szukaæ ³añcuchów (zwartych ci±gów znaków lub s³ów) +zarówno wstecz jak i do przodu. Szukanie ³añcucha jest poleceniem, +które przesuwa kursor --- do nastêpnego miejsca, w którym dany +³añcuch wystêpuje. + +Polecenie Emacsa "search" ró¿ni siê od podobnych poleceñ w innych +edytorach tym, ¿e jest przyrostowe. Znaczy to, ¿e szukanie odbywa +siê w trakcie, gdy wpisujesz kolejne znaki ³añcucha, który ma zostaæ +znaleziony. + +Poleceniami rozpoczynaj±cymi szukanie s±: C-s dla szukania w przód +oraz C-r dla szukania wstecz. POCZEKAJ PROSZÊ! Nie próbuj ich w tej +chwili. + +Gdy naci¶niesz C-s, zauwa¿ysz, ¿e w obszarze echa pojawi siê +tekst "I-search". Jest to informacja, ¿e Emacs znajduje siê w trybie +"incremental search" i czeka, by¶ napisa³ tekst, który ma znale¼æ. +Naci¶niêcie koñczy proces szukania. + +>> Rozpocznij teraz szukanie, naciskaj±c C-s. POWOLI, litera po + literze, napisz s³owo kursor, zatrzymuj±c siê po ka¿dym znaku + i obserwuj±c, gdzie zatrzymuje siê kursor. Gdy naci¶niesz drugie + r, bêdzie mo¿na powiedzieæ, ¿e szuka³e¶ s³owa kursor + jednokrotnie. Naci¶nij jeszcze raz C-s, by znale¼æ nastêpne + wyst±pienie s³owa kursor. Naci¶nij teraz cztery razy + i zobacz, co siê dzieje z kursorem. Naci¶nij , by skoñczyæ + szukanie. + +Widzia³e¶, co siê dzia³o? Podczas szukania przyrostowego Emacs próbuje +przej¶æ do miejsca wyst±pienia ³añcucha, który wpisa³e¶ do tej pory, +i pod¶wietla go dla Twojej wygody. By znale¼æ nastêpne wyst±pienie +s³owa kursor, po prostu jeszcze raz naci¶nij C-s. Je¶li takiego +wyst±pienia nie ma, to Emacs zapiszczy i napisze, ¿e szukanie +,,skoñczy³o siê pora¿k±''. + +Kombinacja C-g przerywa proces szukania, podobnie jak to czyni +z innymi poleceniami. + +UWAGA: W niektórych systemach naci¶niecie C-s zamra¿a ekran i w +rezultacie Emacs nie mo¿e pokazywaæ tekstu. Oznacza to, ¿e sk³adowa +systemu operacyjnego, zwana kontrol± przep³ywu (ang. "flow control"), +przechwyci³a znak C-s i nie pozwoli³a mu dotrzeæ do Emacsa. By odzyskaæ +kontrolê nad ekranem, naci¶nij C-q. Dodatkowej pomocy poszukaj w +rozdziale "Spontaneous Entry to Incremental Search" w podrêczniku +Emacsa. + +Je¶li podczas szukania przyrostowego naci¶niesz , to zauwa¿ysz, +¿e w minibuforze znika ostatni znak wpisanego przez ciebie ³añcucha, a +kursor wraca do poprzedniego miejsca. Przypu¶æmy na przyk³ad, ¿e +nacisn±³e¶ k i znalaz³e¶ pierwsze wyst±pienie tej litery. Je¶li teraz +naci¶niesz u, to kursor przesunie siê tu¿ za najbli¿sze litery +ku. Naci¶nij teraz . Spowoduje to skasowanie z wyszukiwanego +³añcucha litery u, a kursor wróci do pierwszego wyst±pienia litery k. + +Je¶li podczas szukania naci¶niesz jaki¶ klawisz w kombinacji z META lub +Ctrl (z nielicznymi wyj±tkami --- znakami, które maj± specjalne +znaczenie podczas szukania, takimi jak C-s i C-r), to szukanie zostanie +przerwane. + +C-s rozpoczyna proces szukania do przodu, czyli ZA bie¿±c± pozycj± +kursora. Je¶li chcesz szukaæ czego¶ po³o¿onego w tek¶cie wcze¶niej, +to naci¶nij C-r. Wszystko, co powiedzieli¶my o poleceniu C-s, stosuje +siê te¿ do C-r, oczywi¶cie w odniesieniu do szukania wstecz. + + +* WIELE OKIEN +------------- + +Jedn± z u¿ytecznych cech Emacsa jest mo¿liwo¶æ wy¶wietlania wiêcej ni¿ +jednego okna na raz. + +>> Przesuñ kursor do tej linii i naci¶nij C-u 0 C-l. + +>> Naci¶nij teraz C-x 2, co podzieli ekran na dwa okna. Obydwa okna + wy¶wietlaj± ten samouczek. Kursor pozostaje w górnym oknie. + +>> Naci¶nij C-M-v by przewin±æ dolne okno. (Je¶li nie masz + klawisza Meta lub Alt, to naci¶nij ESC C-v.) + +>> Naci¶nij C-x o ("o" jak angielskie "other") by przesun±æ kursor do + dolnego okna. U¿yj C-v i M-v w dolnym oknie, by przewin±æ jego + zawarto¶æ. Polecenia, które masz wykonaæ, odczytuj z górnego okna. + +>> Naci¶nij C-x o jeszcze raz tak, by kursor wróci³ do górnego okna. + Kursor w górnym oknie nie zmieni³ po³o¿enia. + +Ka¿de okno pamiêta po³o¿enie swojego kursora, lecz w danej chwili +tylko jedno z okien wy¶wietla kursor. Wszystkie polecenia edycyjne +stosuj± siê do okna, w którym jest kursor. To okno nazywane jest +,,oknem wybranym''. + +Polecenie C-M-v przyda Ci siê, gdy bêdziesz chcia³ edytowaæ tekst w +jednym oknie, a drugiego u¿ywa³ jako punktu odniesienia. Dziêki niemu +kursor mo¿e zawsze znajdowaæ siê w oknie, którego zawarto¶æ edytujesz, a +Ty mo¿esz przesuwaæ drugie okno. + +C-M-v to przyk³ad kombinacji, który uzyskuje siê, wciskaj±c jednocze¶nie +klawisze Ctrl i Meta (Alt). Je¶li masz prawdziwy klawisz META (Alt), to +C-M-v mo¿esz uzyskaæ przytrzymuj±c jednocze¶nie Ctrl oraz META (Alt) i +naciskaj±c v. Nie jest wa¿ne, co zosta³o naci¶niête wcze¶niej, Ctrl czy +META, poniewa¿ obydwa te klawisze dzia³aj± jako modyfikatory znaczenia +znaków. + +Je¶li nie masz klawisza META (Alt) i w jego zastêpstwie u¿ywasz ESC, to +kolejno¶æ naciskania klawiszy ma znaczenie: musisz najpierw nacisn±æ i +pu¶ciæ ESC, po czym nacisn±æ Ctrl-v; kombinacja Ctrl-ESC v nie zadzia³a. +Wynika to z tego, ¿e ESC jest znakiem, a nie modyfikatorem. + +>> Naci¶nij C-x 1 (w górnym oknie), by pozbyæ siê okna dolnego. + +(Je¶li nacisn±³by¶ C-x 1 w dolnym oknie, to górne by znik³o. Mo¿esz +sobie to polecenie t³umaczyæ jako ,,pozostaw tylko jedno okno --- to w +którym w³a¶nie jestem''.) + +Nie musi byæ tak, ¿e obydwa okna pokazuj± ten sam bufor. Je¶li u¿yjesz +C-x C-f, by odwiedziæ jaki¶ plik w jednym z nich, to zawarto¶æ drugiego +siê nie zmieni. Z zasady w ró¿nych oknach mo¿esz niezale¿nie wy¶wietlaæ +ró¿ne pliki. + +Oto inny sposób u¿ywania dwóch okien do wy¶wietlania dwóch ró¿nych +rzeczy: + +>> Naci¶nij C-x 4 C-f i nazwê jednego z Twoich plików. Zakoñcz + wprowadzanie klawiszem . Podany plik pojawi siê w dolnym + oknie razem z kursorem, który tam przeskakuje. + +>> Naci¶nij C-x o, by wróciæ do górnego okna, oraz C-x 1 by usun±æ + dolne okno. + + +* REKURSYWNE POZIOMY EDYCJI +--------------------------- + +Czasami mo¿esz znale¼æ siê w czym¶, co nazywa siê "rekursywnym +poziomem edycji". Mo¿esz to rozpoznaæ po nawiasach kwadratowych w +linii trybu, obejmuj±cych nawiasy okr±g³e zawieraj±ce nazwê g³ównego +trybu edycji. Móg³by¶ na przyk³ad zobaczyæ [(Fundamental)] zamiast +(Fundamental). + +By wyj¶æ z rekursywnego poziomu edycji, naci¶nij ESC ESC ESC. Jest to +ogólnego przeznaczenia polecenie ,,wychodzimy''. Mo¿esz go u¿yæ tak¿e, +by pozbyæ siê nadmiaru okien albo wyj¶æ z minibufora. + +>> Naci¶nij M-x by wej¶æ do minibufora, potem naci¶nij ESC ESC ESC, by + z niego wyj¶æ. + +Aby wyj¶æ z rekursywnego poziomu edycji, nie wystarczy u¿yæ C-g. Dzieje +siê tak dlatego, ¿e klawisz C-g jest u¿ywany do anulowania poleceñ i +argumentów WEWN¡TRZ pojedynczego rekursywnego poziomu edycji. + + +SZUKANIE POMOCY +--------------- + +W tym samouczku dostarczyli¶my tylko tyle informacji, ile jest +niezbêdne, by¶ móg³ zacz±æ u¿ywaæ Emacsa. Emacs jest istn± kopalni± +najró¿niejszych rzeczy, których nie sposób tutaj opisaæ. Bêdziesz +zapewne chcia³ dowiedzieæ siê o Emacsie wiêcej, poniewa¿ posiada on +wiele po¿ytecznych cech, o których na razie nic nie wiesz. Miêdzy innymi +jest w nim zaszyte mnóstwo wewnêtrznej dokumentacji. Dotrzeæ do tej +dokumentacji mo¿esz po naci¶niêciu kombinacji C-h. + +By uzyskaæ pomoc, naci¶nij C-h, a potem znak, który okre¶la jakiego +rodzaju pomocy oczekujesz. Je¶li poczujesz siê NAPRAWDÊ zagubiony, to +napisz C-h?, a Emacs podpowie, jakiego rodzaju pomocy mo¿e Ci +dostarczyæ. Je¶li naci¶niesz C-h, a potem zadecydujesz, ¿e pomoc nie +jest Ci jednak potrzebna, to aby anulowaæ zapocz±tkowane polecenie C-h, +po prostu wci¶nij C-g. + +Najprostsz± pomoc mo¿esz uzyskaæ naciskaj±c C-h c. Naci¶nij C-h a potem +c, po czym kombinacjê klawiszy, której znaczenie chcesz poznaæ; Emacs +wy¶wietli krótki opis polecenia odpowiadaj±cego tej kombinacji. + +>> Naci¶nij C-h c C-p. + +Powinno to przywo³aæ komunikat, o tre¶ci podobnej do + + C-p runs the command previous-line + +W ten sposób mo¿esz uzyskaæ ,,nazwê funkcji'' przypisanej kombinacji +klawiszy. Przydaje siê to podczas pisania kodu w Lispie, w którym +zapisane s± rozszerzenia Emacsa; wystarcza to tak¿e do przypomnienia +Ci, co dane polecenie robi, je¶li widzia³e¶ je ju¿ wcze¶niej, lecz +go nie zapamiêta³e¶. + +Jako dope³nienie polecenia C-h c Emacs dopuszcza te¿ wieloznakowe +kombinacje klawiszy, na przyk³ad C-x C-s albo (je¶li nie masz klawisza +META lub Alt) v. + +By uzyskaæ wiêcej informacji na temat polecenia, naci¶nij C-h k +zamiast C-h c. + +>> Naci¶nij C-h k C-p. + +To polecenie wy¶wietla dokumentacjê na temat danej funkcji oraz jej +nazwê w oknie Emacsa. Gdy skoñczysz ¶ledziæ wynik tego polecenia +naci¶nij C-x 1, by pozbyæ siê tekstu pomocy. Nie musisz tego robiæ od +razu. Mo¿esz wykonaæ pewne operacje w oparciu o tekst pomocy zanim +naci¶niesz C-x 1. + +Oto kilka innych u¿ytecznych wariantów C-h: + + C-h f Opisz funkcje o podanej nazwie. + +>> Napisz C-h f previous-line. Wypisze to na ekranie ca³± + informacje, jak± Emacs ma na temat funkcji, która implementuje + polecenie C-p. + +Podobnie komenda C-h v pokazuje na ekranie dokumentacjê zmiennych, +których warto¶ci mo¿esz zmieniæ, aby dostosowaæ Emacsa do swoich +preferencji. Wpisz nazwê zmiennej, gdy Emacs o ni± poprosi. + + + C-h a Apropos. Wpisz s³owo, a Emacs wypisze listê + wszystkich poleceñ, których nazwa zawiera to s³owo. + Polecenia te mo¿na wywo³ywaæ za pomoc± Meta-x. + Dla niektórych poleceñ Apropos wypisze jedno- lub + dwuznakowe sekwencje, które wywo³uj± te polecenia. + +>> Napisz C-h a file. + +Zobaczysz listê wszystkich poleceñ, +dostêpnych za pomoc± M-x, które maja s³owo "file" w swojej nazwie. +Zauwa¿ysz tam tak¿e polecenia takie, jak C-x C-f oraz C-x C-w, +umieszczone obok nazw poleceñ "find-file" i "write-file". + +>> Napisz C-M-v, aby przewin±æ okno pomocy. Zrób to kilka razy. +>> Napisz C-x 1, aby usun±æ okno pomocy. + + C-h i Czytanie elektronicznych podrêczników (w formacie Info). To + polecenie prze³±czy Ciê do specjalnego bufora o nazwie + *info*, gdzie bêdziesz móg³ przeczytaæ podrêczniki + dotycz±ce pakietów zainstalowanych w Twoim + systemie. Napisz m emacs , aby zapoznaæ siê z + podrêcznikiem Emacsa. Je¿eli nigdy wcze¶niej nie u¿ywa³e¶ + trybu Info, to napisz ?, a Emacs przedstawi Ci mo¿liwo¶ci + tego trybu. Po tym, jak zapoznasz siê z niniejszym krótkim + samouczkiem, w dalszej pracy dostêp do dokumentacji + bêdziesz uzyskiwa³ w³a¶nie za pomoc± Emacs Info. + + +DODATKOWE FUNKCJE +----------------- + +Wiêcej o Emacsie mo¿esz siê nauczyæ czytaj±c jego podrêcznik, w formie +ksi±¿kowej lub on-line w postaci Info (u¿yj menu Help lub naci¶nij F10 +h r). Dwie dodatkowe w³a¶ciwo¶ci, które szczególnie mog± siê przydaæ +to dope³nianie wprowadzanych danych i dired u³atwiaj±ce zarz±dzanie +plikami. + +Dope³nianie pozwala unikn±æ niepotrzebnego wpisywania. Na przyk³ad +je¶li chcesz siê prze³±czyæ do bufora *Messages*, mo¿esz nacisn±æ C-x +b *M a Emacs dope³ni dalsz± czê¶æ nazwy za Ciebie na tyle, na ile +bêdzie w stanie ustaliæ na podstawie tego, co do tej pory wpisa³e¶. Dope³nianie +jest opisane w Info w podrêczniku Emacsa w czê¶ci zatytu³owanej +"Dop³nianie" (ang. Completion). + +Dired umo¿liwia Ci zrobienie wykazu plików w danym katalogu (dodatkowo +w podkatalogach), przemieszczanie siê wewn±trz tej listy, odwiedzanie +plików, zmienianie nazw, usuwanie i inne operacje na plikach. Dired +jest opisane w Info w podrêczniku Emacsa w czê¶ci zatytu³owanej +"Dired". + +Podrêcznik dodatkowo opisuje wiele innych w³a¶ciwo¶ci Emacsa. + + +* KIEROWANIE KURSOREM Z X TERMINALA (akapit dodany przez autorów wersji polskiej) +----------------------------------- + +Je¶li pracujesz na terminalu graficznym, to do kierowania kursorem +prawdopodobnie ³atwiej Ci bêdzie u¿ywaæ klawiszy strza³ek po prawej +stronie klawiatury. Klawisze strza³ek: w lewo, w prawo, w górê i w dó³ +dzia³aj± zgodnie z oczekiwaniem; odpowiadaj± one dok³adnie C-b, C-f, C-p +i C-n, ale s± ³atwiejsze do zapamiêtania. Mo¿esz tak¿e u¿ywaæ C-lewo i +C-prawo, by przesuwaæ siê o s³owa, oraz C-góra i C-dó³, by przesuwaæ siê +o bloki (np. akapity, je¶li edytujesz tekst). Je¶li masz klawisze +oznaczone Home (lub Begin) oraz End, to przenios± Ciê one na pocz±tek i, +odpowiednio, na koniec linii, a C-Home i C-End na pocz±tek i koniec +pliku. Je¶li na Twojej klawiaturze s± klawisze PgUp i PgDn, to mo¿esz +ich u¿yæ do przesuwania siê o jeden ekran, tak jak M-v i C-v. + +Wszystkie te polecenia akceptuj± argument liczbowy, tak jak to +opisano powy¿ej. Wpisanie argumentu mo¿esz sobie upro¶ciæ: +naci¶nij i trzymaj CONTROL lub META i wpisz liczbê. Na +przyk³ad, aby przesun±æ kursor o 12 s³ów w prawo, naci¶nij C-1 C-2 +C-prawo. Zwróæ uwagê, ¿e jest to ³atwe do wpisania, poniewa¿ nie +musisz puszczaæ klawisza CONTROL podczas wpisywania cyfr. + + +* U¯YWANIE MENU (akapit dodany przez autorów wersji polskiej) +--------------- + +Je¶li pracujesz na X-terminalu, to u góry okna Emacsa powiniene¶ zauwa¿yæ +pasek z menu. Tego menu mo¿esz u¿ywaæ, by wywo³ywaæ najczê¶ciej +potrzebne polecenia Emacsa, takie jak "find file". Na pocz±tku bêdziesz +s±dzi³, ¿e jest to ³atwiejsze ni¿ u¿ywanie klawiatury, poniewa¿ nie +musisz siê na pamiêæ uczyæ kombinacji klawiszy, które uruchamiaj± +poszczególne polecenia. Gdy ju¿ jednak poznasz Emacsa, to zaczniesz +sobie te kombinacje przyswajaæ --- dla wygody przy pozycjach menu +pokazywane s± odpowiadaj±ce im kombinacje klawiszy. + +Zwróæ uwagê, ¿e niektóre pozycje wystêpuj±ce w menu nie maj± +odpowiedników klawiszowych. Na przyk³ad pozycja "Buffers" powoduje +wy¶wietlenie listy wszystkich dostêpnych buforów. Do ka¿dego z nich +mo¿esz siê prze³±czyæ, wybieraj±c jego nazwê, wy¶wietlon± pod pozycj± +Buffers. + + +PODSUMOWANIE +------------ + +Pamiêtaj, ¿e by wyj¶æ z Emacsa na sta³e, trzeba wydaæ polecenie C-x C-c. +By wyj¶æ do pow³oki na chwilê tak, by jeszcze Do Emacsa wróciæ, trzeba +u¿yæ C-z. (To nie dzia³a pod X-Windows, poniewa¿ tam nie ma prawdziwego +konceptu przej¶cia na chwilê do pow³oki. Zamiast tego C-z ,,ikonizuje'' +okno Emacsa.) + +Ten samouczek by³ pisany tak, by wszyscy nowi u¿ytkownicy mogli go +zrozumieæ. Je¶li co¶ pozostawi³ niejasnym, nie sied¼ cicho i nie +obwiniaj siebie, tylko daj nam znaæ! + + +KOPIOWANIE +---------- + +Niniejszy samouczek jest potomkiem w d³ugiej linii samouczków +Emacsa, która rozpoczyna siê od tego, który zosta³ napisany przez +Stuarta Cracrafta dla oryginalnego Emacsa. Zosta³ on zmodyfikowany we +wrze¶niu 1994 przez Bena Winga, który zaktualizowa³ go w celu uwzglêdnienia +pracy pod X-Windows. + +Autorem pierwszego t³umaczenia na jêzyk polski by³ Remek Trzaska +, a pomaga³ mu Ryszard Kubiak +. Tamto t³umaczenie zosta³o uaktualnione dla +wersji GNU Emacs 21 przez Beatê Wierzcho³owsk± +z pomoc± Ryszarda Kubiaka i Janusza S. Bienia . + +Ta wersja samouczka, podobnie jak GNU Emacs, jest chroniona prawem +autorskim, ale wolno j± kopiowaæ pod nastêpuj±cymi warunkami: + +Copyright (C) 1985, 1994, 2001, 2002, 2003, 2004, + 2005, 2006, 2007 Free Software Foundation, Inc. + +Zezwala siê na wykonywanie lub rozpowszechnianie +wiernych kopii tego dokumentu w otrzymanej formie, na dowolnym +no¶niku, pod warunkiem zachowania informacji o +prawach autorskich i niniejszym zezwoleniu oraz pod +warunkiem, ¿e dystrybutor udzieli odbiorcy pozwolenia na +dalsze rozpowszechnianie zgodnie z niniejszym zezwoleniem. + + +Zezwala siê równie¿ na rozpowszechnianie na warunkach podanych +powy¿ej zmodyfikowanych wersji tego dokumentu lub jego czê¶ci, +pod warunkiem, ¿e zostan± wyra¼nie uwidocznione +informacje o tym, kto dokona³ modyfikacji jako ostatni. + + +Warunki kopiowania samego Emacsa s± bardziej skomplikowane, ale zgodne +z t± ide±. Proszê, przeczytaj plik COPYING, po czym rozdaj swoim +znajomym kopie Emacsa. Pomó¿ têpiæ obstrukcjonizm w informatyce, +u¿ywaj±c, tworz±c i dziel±c siê oprogramowaniem swobodnym. + +;;; Local Variables: +;;; mode: fundamental +;;; coding: latin-2 +;;; sentence-end-double-space: nil +;;; End: + +;;; arch-tag: 6c6b7445-4cd5-44ca-a101-7f4697b92f60 diff --git a/etc/tutorials/TUTORIAL.pt_BR b/etc/tutorials/TUTORIAL.pt_BR new file mode 100644 index 00000000000..f2ceb9a0e0a --- /dev/null +++ b/etc/tutorials/TUTORIAL.pt_BR @@ -0,0 +1,1088 @@ +Tutorial do Emacs. Veja no fim as condições para cópia. + +Os comandos do Emacs geralmente envolvem a tecla CONTROL (algumas vezes +nomeada CTRL ou CTL) ou a tecla META (algumas vezes nomeada EDIT ou +ALT). Antes de escrever isso tudo toda vez, usaremos as seguintes +abreviações: + + C- Significa pressionar a tecla CONTROL enquanto digitar o + caractere . + Assim, C-f seria: Pressionar a tecla CONTROL e digitar f. + M- Significa pressionar a tecla META, EDIT ou ALT enquanto + digitar . + Se não tiver META, EDIT ou ALT, no lugar digite ESC e depois + . Escrevemos para tecla ESC. + + +Nota importante: para terminar a sessão do Emacs, digite C-x C-c. (Dois +caracteres.) Os caracteres ">>" na margem esquerda indicam direções para +você tentar usar um comando. Por exemplo: +<> +[Metade da página em branco para propósitos didáticos. O texto continua +abaixo] +>> Agora digite C-v (Ver próxima tela) para ir para próxima tela. + (vá em frente, faça isso pressionando a tecla CONTROL enquanto + digitar v). + De agora em diante, você deve fazer isso de novo sempre que você + terminar de ler a tela. + +Note que tem uma sobreposição de duas linhas quando você move de tela em +tela; isso fornece uma continuidade para que você continue lendo o +texto. + +A primeira coisa que você precisa saber é como se mover de um lugar a +outro no texto. Você já sabe como mover para próxima tela, com +C-v. Para mover para trás uma tela, digite M-v (pressione a tecla +META enquanto digita v, ou digite v se o seu teclado não tiver a tecla +META, EDIT ou ALT). + +>> Tente digitar M-v e depois C-v, algumas vezes. + + +* SUMÁRIO +--------- + +Os comandos a seguir são úteis para visualizar telas inteiras + + C-v Move para tela inteira posterior + M-x Move para tela inteira anterior + C-l Limpa a tela e re-mostrá todo o texto, movendo o texto ao + redor do cursor para o centro da tela. (Isso é + control-L, não control-1.) + +>> Encontre o cursor, e note o texto que está perto dele. + Digite C-l. + Encontre o cursor novamente e perceba que o mesmo texto continua + perto do cursor. + + +* CONTROLE BÁSICO DO CURSOR +--------------------------- + +Movendo de uma tela inteira para outra tela cheia é útil, mas como você +move para um lugar especifico com o mesmo texto na tela? + +Existem diversas maneiras para você poder fazer isso. A maneira mais +básica é utilizar os comandos C-p, C-b, C-f e C-n. Cada um desses +comandos movem o cursor uma linha ou coluna na tela em uma direção +particular. Aqui está uma tabela mostrando esses quatro comandos e as +direções que eles movem: + + Linha anterior, C-p + : + : + Traz, C-b .... Posição corrente do cursor .... Frente, C-f + : + : + Linha posterior, C-n + +>> Mova o cursor para a linha no meio do diagrama acima utilizando C-n + ou C-p. Digite C-l para ver o diagrama inteiro centralizado na tela. + +Você provavelmente achará isso fácil pensando neles pela letra: P para +Previous (anterior), N para Next (Posterior), B para Backward (trás) e F +para Forward (frente). Estes são os comandos básicos de posicionamento +de cursor e você os estará utilizando a TODO tempo, então seria ótimo +se você os aprendesse agora. + +>> Faça alguns C-n's para trazer o cursor abaixo desta linha. + +>> Mova para a linha com C-f's e depois para cima com C-p's. + Veja o que C-p faz quando o cursor está no meio da linha. + +Cada linha de texto termina com um caractere de nova linha, que serve +para separar da próxima linha. No fim da última linha deve ter um +caractere de nova linha (mas não é exigido pelo Emacs). + +>> Tente digitar C-b no começo da linha. O cursor deve mover para o fim + da linha anterior. Isso acontece por que ele se moveu para trás + através do caractere de nova linha. + +C-f pode mover o cursor através de uma Nova linha do mesmo jeito que + C-b. + +>> Faça mais alguns C-b's, assim você percebe onde o está o cursor. + Depois alguns C-f's para retornar para o fim da linha. + Depois mais um C-f para mover para linha seguinte. + +Quando você move o cursor passando o topo ou o rodapé da tela, o próximo +texto além da borda desloca-se na tela. Isso é chamado rolagem. Isso +ativa o Emacs para mover o cursor para o lugar especificado no texto sem +movê-lo fora da tela. + +>> Tente mover o cursor fora do rodapé da tela com C-n, e veja o que + acontece. + +Se mover por caracteres é muito lento, você pode se mover por +palavras. M-f (Meta-f) move uma palavra para frente e M-b uma palavra +para trás. + +>> Digite alguns M-f's e M-b's + +Quando você está no meio de uma palavra, M-f move o cursor para o fim da +mesma. Quando você está em um espaço em branco no meio de duas palavras, +M-f move o cursor para o fim da palavra seguinte. M-b funciona do mesmo +jeito na direção contraria. + +>> Digite M-f e M-b algumas vezes, intercalado com C-f's e C-b's assim + você pode observar a ação do M-f e M-b de varias lugares dentro e no + meio de palavras. + +Observe o paralelismo entre C-f e C-b por um lado, e M-f e M-b por outro +lado. Muito freqüentemente os caracteres Meta são usados para operações +relacionadas com as unidades definidas pela linguagem (palavras, +sentenças, parágrafos), enquanto caracteres Control operam nas unidades +básicas que são independente do que você está editando (caracteres, +linhas, etc). + +Esse paralelismo aplica-se entre linhas e sentenças: C-a e C-e move o +cursor para o começo ou fim da linha, e M-a e M-e move o cursor para o +começo ou fim da sentença. + +>> Tente alguns C-a's, e depois alguns C-e's. + Tente alguns M-a's, e depois alguns M-e's. + +Veja como repetidos C-a's fazem nada, mas repetidos M-a's mantém movendo +mais uma sentença. Embora estes não sejam completamente análogos, cada +um parece natural. + +A posição do cursor no texto é também chamado "ponto" (point). Para +parafrasear, o cursor mostra na tela onde o ponto é encontrado no texto. + +Aqui está um simples sumário das operações de movimento de cursor, +incluindo comandos de movimento de palavra e sentença. + + C-f Move o cursor um caractere para frente + C-b Move o cursor um caractere para trás + + M-f Move o cursor uma palavra para frente + M-b Move o cursor uma palavra para trás + + C-n Move o cursor para linha posterior + C-p Move o cursor para linha anterior + + C-a Move o cursor para o começo da linha + C-e Move o cursor para o fim da linha + + M-a Move o cursor para trás no começo da sentença + M-e Move o cursor para frente no fim da sentença + +>> Tente agora todos estes comandos algumas vezes para praticar. + Estes são os comandos mais utilizados. + +Outros dois comandos de movimento de cursor importantes são M-< (Meta +Menor-que), o qual move o cursor para o começo de todo o texto, e M-> +(Meta Maior-que), o qual move para o fim de todo o texto. + +Na maioria dos terminais, o "<" é acima da vírgula, então você precisa +utilizar a tecla shift para digitá-la. Nestes terminais você precisa +utilizar a tecla shift para digitar M-< também; sem a tecla shift, você +estaria teclando M-virgula. + +>> Tente agora M-<, para mover o cursor ao começo do tutorial. + Use então C-v repetidamente para trazer o cursor novamente aqui. + +>> Tente agora M->, para mover o cursor ao fim do tutorial. + Use então M-v repetidamente para trazer o cursor novamente aqui. + +Você também pode mover o cursor com as setas, se o seu terminal tem +teclas com setas. Nós recomendamos aprender C-b, C-f, C-n e C-p por três +razões. Primeira, elas funcionam em todos os terminais. Segunda, uma vez +que você ganhar prática usando o Emacs, você descobrirá que digitar +nestes caracteres Control é mais rápido do que digitar nas setas (porque +você não tem que mover suas mãos tão longe da posição de +digitação). Terceira, uma vez que você tiver o hábito de utilizar estes +comandos de caracteres Control, você pode facilmente aprender como usar +outros comandos avançados de movimentação do cursor. + +A maioria dos comandos do Emacs aceitam argumentos numéricos; para +maioria dos comandos, isso serve como um fator de repetição. A maneira +que você da a um comando uma repetição teclando C-u e depois os dígitos +antes de digitar o comando. Se você tem o META (EDIT ou ALT), tem outra +alternativa para digitar um argumento numérico: digite os dígitos +enquanto pressionando a tecla META. Nós recomendamos aprender o método +C-u porque funciona em todos os terminais. O argumento numérico também é +chamado de "argumento prefixo", porque você digita o argumento antes do +comando que ele se aplica. + +Por exemplo, C-u 8 C-f move o cursor oito caracteres para frente + +>> Tente usar C-n ou C-p com um argumento numérico, para mover o + cursor para um linha perto dessa com um único comando. + +A maioria dos comandos usam o argumento numérico para um fator de +repetição, mas alguns comandos usam isso de outra maneira. Diversos +comandos (mas nenhum daqueles comandos que você tenha aprendido até +agora) usam isso como uma marca -- a presença de um argumento prefixo, +independente do seu valor, faz o comando fazer alguma coisa diferente. + +C-v e M-v são outro tipo de exceção. Quando você da um argumento, eles +rolam a tela para cima ou para baixo por aquele número de linhas, de +preferência com a tela cheia. Por exemplo, C-u 8 C-v rola a tela 8 +linhas. + +>> Tente agora digitar C-u 8 C-v. + +Isso deve ter rolado a tela para cima 8 linhas. Se você quiser rolar a +tela para baixo novamente, você pode dar um argumento para o M-v. + +Se você está usando um display com janelas, como o X11 ou MS-Windows, +deve ter uma área retangular alta chamada barra de rolagem na mão +esquerda da janela do Emacs. Você pode rolar o texto clicando o mouse na +barra de rolagem. + +>> Tente pressionar o botão do meio no topo da área destacada junto a + barra de rolagem. Isso deve rolar o texto para uma determinada + posição dependendo de quão alto ou baixo você clicar. + +>> Tente mover o mouse para cima e para baixo, enquanto pressionar o + botão do meio. Você verá que o texto rolará para cima e baixo assim + que você mover o mouse. + + +* QUANDO O EMACS PARECE MORTO +----------------------------- + +Se o Emacs parar de responder os seus comandos, você pode seguramente +pará-lo digitando C-g. Você pode utilizar C-g para parar um comando que +está levando muito tempo para executar. + +Você também pode utilizar C-g para interromper um argumento numérico ou +o inicio de um comando que você não quer terminar. + +>> Digite C-u 100 para fazer um argumento numérico de 100, e depois + digite C-g. Agora digite C-f. O Cursor deve mover apenas um + caractere, porque você cancelou o argumento com C-g. + +Se você digitou um por engano, você pode sair dele com um c-g. + + +* COMANDOS DESABILITADOS +------------------------ + +Alguns comandos do Emacs são "desabilitados" para que os usuários +iniciantes não utilizem por acidente. + +Se você digita um dos comandos desabilitados, o Emacs mostrará uma +mensagem dizendo qual comando foi, e pergunta se você quer seguir e +executar o comando. + +Se você realmente quiser tentar o comando, digite Espaço na resposta da +pergunta. Normalmente, se você não quer executar o comando desabilitado, +responda a pergunta com "n". + +>> Digite C-x C-l (que é um comando desabilitado), + e então digite n para responder a pergunta. + + +* JANELAS +--------- + +O Emacs pode ter diversas janelas, cada uma mostrando seu próprio +texto. Nós vamos explicar mais tarde como utilizar estas múltiplas +janelas. Neste momento nos queremos explicar como se livrar das janelas +extras e voltar a edição básica em uma janela. É simples: + + C-x 1 Uma janela (mate todas as outras janelas). + +Isto é Control-x seguido pelo digito 1. C-x 1 expande a janela que está +com o cursor, para ocupar a tela inteira. Ela remove todas as outras +janelas. + +>> Mova o cursor para esta linha e digite C-u 0 C-l. +>> Digite Control-h k Control-f. + Veja como esta janela diminui, enquanto uma nova aparece para mostrar + a documentação do comando Control-f. + +>> Digite C-x 1 e veja a listagem de documentação desaparecer. + +Este comando é diferente dos outros que você aprendeu por isso ele +consiste em dois caracteres. Ele inicia com o caractere Control-x. Tem +uma grande serie de comandos que iniciam com Control-x; a maioria deles +tem a ver com janelas, arquivos, buffers, e coisas relacionadas. Estes +comandos tem dois, três ou quatro caracteres de tamanho. + + +* INSERINDO E REMOVENDO +----------------------- + +Se você quiser inserir um texto, apenas digite o texto. Os caracteres +que você verá, como A, 7, *, etc. são vistos pelo Emacs como texto e são +inseridos imediatamente. Digite para inserir um caractere de +nova linha. + +Você pode remover o último caractere que você inseriu digitando +. é uma tecla no teclado, que está nomeado como +"Del". Em algumas casos, a tecla "Backspace" serve como o , mas +nem sempre! + +Mas geralmente, remove o caractere imediatamente anterior a +posição corrente do cursor. + +>> Faça isso agora - Digite alguns caracteres, então remova-os + digitando algumas vezes. Não se preocupe em modificar este + arquivo; você não alterará o arquivo principal. Esta é a sua cópia + pessoal dele. + +Quando uma linha de texto fica muito grande na tela, a linha do texto é +continuada na linha seguinte. Uma barra invertida ("\") na margem +direita indica a linha que foi continuada. + +>> Insira texto até que você alcance a margem direita, e mantenha + inserindo. Você verá a linha de continuação aparecer. + +>> Utilize para remover o texto até a linha caber em uma linha + novamente. A linha de continuação irá embora. + +Você pode remover o caractere de nova linha como qualquer outro +caracter. Removendo o caractere de nova linha entre duas linhas você +juntará as duas em uma única linha. Se o resultado for muito longo para +acomodar na largura da tela, aparecerá um caractere de continuação. + +>> Mova o cursor para o inicio da linha e digite . Isso juntará + esta linha com a anterior. + +>> Digite para re-inserir a nova linha que você removeu. + +Lembre-se que a maioria dos comandos do Emacs podem receber um número de +repetição; isso inclui texto de caracteres. Repetir um texto de +caractere o insere algumas vezes. + +>> Tente isso agora -- digite C-u 8 * para inserir ********. + +Você acabou de aprender o jeito mais simples de digitar alguma coisa no +Emacs e corrigir os erros. Você pode remover palavras ou linhas +também. Aqui vai um sumário dos comandos de deleção: + + remove o caractere imediatamente antes do cursor + M-d remove o próximo caractere apos o cursor + + M- Mata a palavra imediatamente antes do cursor + M-d Mata a próxima palavra depois do cursor + + C-k Mata a posição do cursor até o fim da linha + M-k Mata até o fim da sentença corrente + +Note que o e o C-d vs M- e M-d estende o paralelo +iniciado por C-f e M-f (bem, não é realmente um controle de +caractere, mas não vamos nos preocupar com isso). C-k e M-k são como C-e +e M-e, uma parte, nessas linhas são sentenças opostas. + +Você pode também matar parte de um buffer com um método uniforme. Mova +para o fim dessa parte, e digite C-@ ou C-SPC (um ou outro). (SPC é a +Barra de Espaço.) Mova para o outro fim dessa parte, e digite C-w. Isso +matará todo o texto entre as duas posições. + +>> Mova o cursor para o V no inicio do parágrafo anterior. +>> Digite C-SPC. Emacs vai mostrar a mensagem "Mark set" no rodapé da + tela. +>> Mova o cursor para o . (ponto) no "fim", na segunda linha do + parágrafo. +>> Digite C-w. Isso vai matar o texto iniciando no V, e terminando bem + antes do . (ponto). + +A diferença entra "matar" e "remover" é que o texto "matado" pode ser +re-inserido, onde os textos "removidos" não podem ser re-inseridos. +Re-inserção de um texto matado chama-se colar (yanking). Geralmente, o +comando que pode remover bastante texto mata o texto (eles fazem com que +você possa colar (yank) o texto), enquanto os comandos que removem um +caractere, ou apenas linhas brancas ou espaços, fazem deleção (para que +você não possa colar esse texto). + +>> Mova o cursor para o inicio da linha que não esteja vazia. + Agora digite C-k para matar o texto nessa linha. +>> Digite C-k pela segunda vez. Você verá que a nova linha que segue a + linha será matada. + +Note que um simples C-k mata o conteúdo de uma linha, é um segundo C-k +mata a linha, e faz com que todas as outras linhas movam para cima. C-k +trata um argumento numérico especialmente: ele mata tantas linhas E seus +conteúdos. Isso não é uma simples repetição. C-u 2 C-k mata duas linhas +e suas novas linhas; digitar C-k duas vezes não faria isso. + +Para trazer o texto matado novamente é chamado colar "yaking". (Pense +nisso como colar, ou trazer de volta, algum texto que foi levado +embora.) Você pode colar (yank) o texto matado no mesmo lugar onde ele +foi matado, ou em qualquer outro lugar do buffer, ou ate em um arquivo +diferente. Você pode colar o texto diversas vezes, o que fará diversas +cópias dele. + +O comando para colar é C-y. Ele re-insere o último texto matado, na +posição corrente do cursor. + +>> Tente; digite C-y para colar o texto novamente. + +Se você fizer diversos C-k's em uma linha, todo esse texto matado será +salvo junto, então aquele C-y vai colar todas aquelas linhas de uma vez. + +>> Faca isso agora, digite C-k diversas vezes. + +Agora pegue o texto matado: + +Digite C-y. Então mova o cursor para baixo algumas linhas e digite C-y +novamente. Agora você sabe como copiar determinado texto. + +O que você faria se você tivesse determinado texto que você gostaria de +colar, e então você mata alguma outra coisa? C-y colará o kill mais +recente. Mas o antigo texto ainda não foi perdido. Você pode tê-lo +novamente usando o comando M-y. Depois que você der um C-y para pegar o +kill mais recente, digitar M-y troca o que você colou pelo anterior a +ele. Digitar M-y novamente e novamente traz kills anteriores e +anteriores. Quando você tiver alcançado o texto que você que esta +procurando, você não precisa fazer nada para mantê-lo. Apenas continue +com a sua edição, deixando o texto onde ele esta. + +Se você digitar M-y o suficiente, você começará do inicio novamente (o +kill mais recente). + +>> Mate uma linha, mova por ai, mate mais uma linha. + Agora digite C-y para colar a segunda linha matada. + Agora digite M-y e ele vai ser trocado pelo primeiro kill. + Faca mais alguns M-y's e veja o que você tem. Faca isso ate que o + segundo kill volte, e depois mais alguns. + Se você preferir, você pode tentar dar argumentos positivos e + negativos. + + +* DESFAZENDO (UNDO) +------------------- + +Se você fizer uma mudança no texto, e então decidir que isso foi um +erro, você pode desfazer com o comando de desfazer (undo), C-x u. + +Normalmente, C-x u desfaz as mudanças feitas por um comando; se você +repetir C-x u diversas vezes em uma linha, cada repetição desfará +um comando adicional. + +Mas tem duas exceções: comandos que não trocam o texto não contam (isso +inclui o movimento do cursor e a barra de rolagem), e caracteres +auto-inseridos são usualmente cuidados em grupos de mais de 20 (Isso e +para reduzir o numero de C-x u's que você deve digitar para desfazer a +inserção de um texto.). + +>> Mate essa linha com C-k, então digite C-x u e isso vai re-aparecer. + +C-_ é um comando alternativo para desfazer; ele funciona exatamente como +o C-x u, mas é mais fácil de digitar diversas vezes em uma linha. A +desvantagem de C-_ é que alguns teclados ele não é tão obvio para +digitar. É exatamente por isso que o C-x u é fornecido. Em alguns +terminais, você pode digitar C-_ digitando / enquanto segurando o +CONTROL. + +Um argumento numérico para C-_ ou C-x u age como um contador de +repetição. + +Você pode desfazer a deleção de texto da mesma maneira que você pode +desfazer o kill de um texto. A distinção entre matar e remover alguma +coisa afeta se você pode colar com C-y; isso não faz diferença para o +desfazer (undo). + + +* ARQUIVOS +---------- + +Para poder fazer o texto que você edita permanente, você precisa +colocá-lo em um arquivo. Ou então, isso será perdido quando o seu Emacs +for fechado. Para colocar seu texto em um arquivo, você precisa +"encontrar" o arquivo antes de digitar o texto (Isso também é chamado +"visitar" um arquivo.). + +Encontrando um arquivo significa que você verá o conteúdo de um arquivo +com o Emacs. De diversas maneiras, isso é como se você estivesse +editando o arquivo. De qualquer maneira, as mudanças que você fizer +utilizando o Emacs não se tornarão permanente ate que você "salve" o +arquivo. Isso e para que você evite deixar um arquivo meio-modificado no +sistema enquanto você não quer isso. Mesmo quando você salva, o Emacs +deixa o arquivo original sobre um arquivo de nome alterado no caso que +você mais tarde decida que aquelas mudanças foram um erro. + +Se você olhar no rodapé da tela você verá a linha que começa e termina +com traços e inicia com "--:-- TUTORIAL.pt_BR" ou algo parecido com +isso. Essa parte da tela normalmente mostra o nome do arquivo que você +esta visitando. Agora mesmo, você esta visitando um arquivo chamado +"TUTORIAL.pt_BR" que é sua própria cópia do tutorial do Emacs. Quando +você encontra um arquivo com o Emacs, o nome do arquivo aparecerá nesse +lugar específico. + +Algo especial para se dizer sobre o comando de encontrar arquivo e que +você tem que dizer qual nome do arquivo você quer. Dizemos que o comando +"lê um argumento do terminal" (nesse caso, o argumento e o nome do +arquivo). Depois que você digitar o comando + + C-x C-f Encontrar um arquivo + +O Emacs pede para você digitar o nome do arquivo. O nome do arquivo +aparece no rodapé da tela. A linha de rodapé é chamada de minibuffer +quando é utilizada para esse tipo de introdução de dados. Você pode +utilizar os comandos padrões do Emacs para editar o nome do arquivo. + +Enquanto você estiver digitando o nome do arquivo (ou qualquer outro +tipo de dado para o minibuffer), você pode cancelar o comando com a +tecla C-g. + +>> Digite C-x C-f, então digite C-g. Isso cancelará o minibuffer, e + também cancelará o comando C-x C-f que estava sendo utilizado no + minibuffer. Para que você não procure nenhum arquivo. + +Quando você terminar de digitar o nome do arquivo, digite para +terminar. Então o comando C-x C-f executará, e encontrará o arquivo +que você escolheu. O minibuffer desaparece quando o comando C-x C-f e +finalizado. + +Em pouco tempo o conteúdo do arquivo aparece na tela, e você poderá +editar o conteúdo dele. Quando você terminar de fazer suas alterações +permanentes digite o comando + + C-x C-s Salve o arquivo + +Isso copia o texto do Emacs para o arquivo. A primeira vez que você +fizer isso, o Emacs vai renomear o arquivo original para um novo nome +para que você não o perca. O nome novo e feito adicionando "~" no fim do +nome original do arquivo. + +Quando o salvamento for concluído, Emacs imprimirá o nome do arquivo +escrito. Você deve salvar o conteúdo do seu arquivo regularmente, para +que você não perca muito trabalho caso o sistema caia por um algum +motivo. + +>> Digite C-x C-s, salvará a cópia do seu tutorial. + Isso imprimirá "Wrote ...TUTORIAL.pt_BR" no fim da tela. + +NOTA: Em alguns sistemas, digitar C-x C-s travará a tela e você não +verá saída do Emacs. Isso indica que um "recurso" do sistema operacional +chamado "controle de fluxo" (flow control) esta interceptando o C-s e +não deixando que passe pelo Emacs. Para destravar a tela, digite +C-q. Então, leia na seção "Spontaneous Entry to Incremental Search" no +manual do Emacs para uma dica de como lidar com esse "recurso". + +Você pode encontrar um arquivo já existente, para vê-lo ou editá-lo. Você +também pode encontrar um arquivo que ainda não existe. Essa é a maneira +de criar um arquivo com o Emacs: encontre o arquivo, que iniciará +vazio, então começe a inserir o texto para o arquivo. Quando você pedir +para "salvar" o arquivo, o Emacs perguntará se você realmente quer +criar o arquivo com o texto que você acabou de inserir. De agora em +diante, você pode considerar que esta editando um arquivo já existente. + + +* BUFFERS +--------- + +Se você encontrar um segundo arquivo com C-x C-f, o primeiro continuara +dentro do Emacs. Você pode voltar para ele encontrando-o novamente com +C-x C-f. Dessa maneira você pode ter um grande numero de arquivos dentro +do Emacs. + +>> Crie um arquivo chamado "foo" digitando C-x C-f foo . + Depois digite algum texto, edite-o, e salve "foo" digitando C-x C-s. + Finalmente, digite C-x C-f TUTORIAL.pt_BR para voltar ao + tutorial. + +O Emacs guarda cada texto de um arquivo em um objeto chamado +"buffer". Encontrar um arquivo cria um novo buffer dentro do Emacs. Para +ver uma lista dos buffers que existem no serviço do seu Emacs, digite + + C-x C-b Lista os buffers + +>> Tente C-x C-b agora. + +Veja como cada buffer tem um nome, e ele também pode ter um nome de +arquivo para o conteúdo de arquivo que ele armazena. Alguns buffers não +correspondem a arquivos. Por exemplo, o buffer chamado "*Buffer List*" +não tem nenhum arquivo. Esse é o buffer que contem a lista de buffers +que foi feito com C-x C-b. QUALQUER texto que você ver numa janela do +Emacs e sempre parte de algum buffer. + +>> Digite C-x 1 para sair da lista dos buffers. + +Se você fizer mudanças no texto de um arquivo, então encontrar um novo +arquivo, isso não salva o conteúdo do primeiro arquivo. As mudanças +continuam dentro do Emacs, nos buffers de arquivo. A criação ou edição +do buffer do segundo arquivo não tem nenhum efeito no buffer do primeiro +arquivo. Isso é muito útil, mas também significa que você precisa de uma +maneira conveniente de salvar o buffer do primeiro arquivo. Seria +inconveniente ter que voltar para ele com C-x C-f para salvá-lo com C-x +C-s. Por isso temos + + C-x s Salve alguns buffers + +C-x s pergunta a você sobre cada buffer que contem modificação e você +não salvou. Ele te pergunta, para cada buffer, se você quer salvar. + +>> Insira uma linha de texto, então digite C-x s. + Isso deve te perguntar se você quer salvar o buffer chamado + TUTORIAL.pt_BR. + Responda sim para a pergunta digitando "y". + + +* ESTENDENDO O COMANDO SET +-------------------------- + +Existem mais, muito mais comandos que o Emacs poderia possivelmente ser +colocado em todos os control e caracteres meta. O Emacs faz isso com o +comando X (estender). Que vem em duas versões: + + C-x Extensor de caractere. Seguido por um caractere. + M-x Extensor de nome de comando. Seguido por um longo nome. + +Esses comandos que são geralmente úteis mas pouco usados que os comandos +que você já aprendeu. Você já viu dois deles: os comandos de arquivos +C-x C-f para Encontrar e C-x C-s para Salvar. Outro exemplo de um +comando para finalizar a sessão do Emacs - esse é o comando C-x C-c (Não +se preocupe em perder as mudanças que você fez; C-x C-c oferece salvar +cada arquivo modificado antes de matar o Emacs.). + +C-z é o comando para sair do Emacs *temporariamente* - então você pode +voltar para a mesma seção do Emacs depois. + +Em sistemas que permitem isso, C-z "suspende" o Emacs; isso e, retorna +ao shell mas não destrói o Emacs. Nos shells mais comum, você pode +resumir o Emacs com o comando 'fg' ou com '%emacs'. + +Nos sistemas que não implementam suspensão, C-z cria um subshell rodando +sobre o Emacs para dar a você a chance de rodar outros programas e +retornar ao Emacs depois; isso não "sai" verdadeiramente do Emacs. Nesse +caso, o comando shell 'exit' é o comando usual para voltar ao Emacs do +subshell. + +A hora de usar o C-x C-c é quando você esta prestes a sair do sistema +operacional. É também a maneira correta de sair do Emacs quando chamado +através de um cliente de e-mail ou outros utilitários, porque eles não +controlam a suspensão do Emacs. Em outras circunstâncias, se você não +estiver saindo do sistema operacional, é melhor suspender o Emacs com +C-z ao invés de sair do Emacs. + +Existem diversos comando C-x. Aqui esta uma lista dos que você aprendeu: + + C-x C-f Encontrar arquivo. + C-x C-s Salvar arquivo. + C-x C-b Listar buffers. + C-x C-c Sair do Emacs. + C-x 1 Remover todas menos a janela atual. + C-x u Desfazer. + +O extensor de nome de comando é usado menos ainda, ou comandos que são +usados apenas em alguns modos. Um exemplo é o comando replace-string, +que globalmente troca uma string por outra. Quando você digita M-x, o +Emacs te pergunta no rodapé da tela M-x e você deve digitar o nome do +comando; nesse caso, "replace-string". Apenas digite "repl s" e o +Emacs completará o nome. ( é a tecla Tab, usualmente encontrando +abaixo do CapsLock ou Shift bem na extremidade do teclado.). Termine o +comando com . + +O comando replace-string requer dois argumentos - a string para ser +trocada, e a string que a substituirá. Você precisa terminar cada +argumento com . + +>> Mova o cursor para a linha branca duas linhas abaixo dessa. + Digite então M-x repl smudoualterado. + + Note como essa linha mudou: você substituiu a palavra m-u-d-o-u por + "alterado" quando ocorreu, apos a posição inicial do cursor. + + +* SALVAMENTO AUTOMÁTICO +----------------------- + +Quando você fizer mudanças em um arquivo, mas você ainda não tiver +salvo, elas podem ser perdidas se o seu computador der algum problema. +Para proteger você disso, o Emacs periodicamente escreve um arquivo "auto +salvo" para cada arquivo que você estiver editando. O nome do arquivo +auto salvo tem um # no inicio e no fim; por exemplo, se o seu arquivo +tiver o nome "ola.c", o nome do arquivo auto salvo dele será +"#ola.c#". Quando você salvar o arquivo da maneira normal, o Emacs +removerá os arquivos auto salvos. + +Se o computador der problema, você pode recuperar suas modificações auto +salvas abrindo o arquivo normalmente (o arquivo que você estava +editando, não o arquivo auto salvo) e então digitar M-x recover +file. Quando for pedida a confirmação, digite yes +para ir em frente e recuperar os dados auto salvos. + + +* ÁREA DE SAÍDA (ECHO AREA) +--------------------------- + +Se o Emacs ver que você esta digitando comandos multi-caractere +lentamente, ele os mostrará para você no fim da tela numa área chamada +Área de Saída ou Echo Area. A área de saída contem a linha de rodapé da +tela. + + +* MODE LINE +----------- + +A linha imediatamente acima da área de saída é chamada de "mode line". O +mode line diz algo algo mais ou menos assim: + +--:** TUTORIAL.pt_BR (Fundamental)--L670--58%---------------- + +Essa linha da informações úteis sobre o status do Emacs e o texto que +você esta editando. + +Você já sabe o que o nome do arquivo significa -- é o arquivo que você +encontrou. -NN%-- indica sua posição no arquivo texto; significa que NN +porcento do texto esta acima do topo da tela. Se o topo do arquivo +estiver na tela, ele mostrará --Top-- ao invés de --00%--. Se o rodapé do +texto estiver na tela, ele mostrará --Bot--. Se você estiver olhando um +texto muito pequeno que cabe todo na tela, o mode line mostrará +--All--. + +O L são dígitos e indicam a posição de uma outra maneira: eles mostram a +linha corrente do ponto. + +Os asteriscos próximo ao inicio significam que você fez mudanças no +texto. Logo após você visitar um arquivo ou salvar um arquivo, essa +parte do mode line não mostrará asteriscos, apenas traços. + +A parte do mode line dentro do parênteses lhe diz quais modos você esta +utilizando. O modo padrão é o Fundamental que é o que você esta +utilizando agora. É um exemplo de um "modo majoritário". + +O Emacs tem diversos diferentes modos majoritários. Alguns deles são +para edição de diferentes linguagens de programação e/ou tipos de texto, +como modo Lisp, modo Texto, etc. Em qualquer momento um é apenas um modo +majoritário e ativo, e seu nome pode ser encontrado no mode line +exatamente onde o "Fundamental" esta agora. + +Cada modo majoritário faz com que alguns comandos operem de modo +diferente. Por exemplo, existem comandos para criar comentários nos +programas, e desde que cada linguagem de programação tem uma idéia +diferente de como um comentário deve ser, cada modo majoritário tem que +inserir seus comentários individualmente. Cada modo majoritário é o nome +de um comando estendido, e é assim que você pode mudar para determinado +modo. Por exemplo, M-x fundamental-mode é o comando para trocar para o +modo Fundamental. + +Se você vai editar texto em Português, como neste arquivo, você pode +utilizar o modo Texto. + +>> Digite M-x text mode. + +Não se preocupe, nenhum dos comandos do Emacs que você aprendeu +mudarão. Mas você pode observar que o M-f e o M-b tratam os apóstrofos +como parte das palavras. Anteriormente, no modo Fundamental, M-f e M-b +trataram os apóstrofos como separadores de palavras. + +Modos majoritários fazem usualmente modificações como esta: a maioria +dos comandos fazem "a mesma coisa" em cada modo majoritário, mas eles +trabalham um pouquinho diferente. + +Para ver a documentação do seu modo majoritário, digite C-h m. + +>> Utilize C-u C-v uma ou mais para trazer essa linha próxima ao topo da + tela. +>> Digite C-h m, para ver como o modo texto difere do modo Fundamental. +>> Digite C-x 1 para remover a documentação da tela. + +Modos majoritários são chamados de majoritários porque também existem +modos minoritários. Modos minoritários não são alternativos aos modos +majoritários, apenas uma modificação minoritária deles. Cada modo +minoritário pode ser ligado ou desligado por ele mesmo, independente de +todos os outros modos minoritários, é independente do modo +majoritário. Então você pode não utilizar modos minoritários, ou um modo +minoritário, ou qualquer combinação de modos minoritários. + +Um modo minoritário que é bastante útil, especialmente para editar texto +em Português, é o modo Auto Fill. Quando ele esta ligado, o Emacs quebra +a linha entre as palavras automaticamente quando você inserir um texto e +criar uma linha muito comprida. + +Você pode ligar o modo Auto Fill fazendo M-x auto fill +mode. Quando o modo estiver ligado, você pode desligá-lo +novamente fazendo M-x auto fill mode. Se o modo estiver +desligado, esse comando o liga, e se ele estiver ligado, este comando o +desligara. Nos dizemos que o comando inverte seu status. + +>> Digite M-x auto fill mode agora. Então insira uma linha de + "asdf " diversas vezes ate que você veja dividir em duas linhas. Você + precisa colocar espaços entre as palavras porque o modo Auto Fill + quebra apenas nos espaços. + +A margem é usualmente definida com 70 caracteres, mas você pode +modificá-la com o comando C-x f. Você deve dar a margem que você quer +como um argumento numérico. + +>> Digite C-x f com um argumento de 20. (C-u 20 C-x f). + Então digite algum texto e veja o Emacs encher linhas com ate 20 + caracteres. Então, volte a definir a margem para 70 utilizando C-x f. + +Se você fizer uma mudança no meio de um parágrafo, o modo Auto Fill não +re-preencherá para você. Para re-preencher o parágrafo, digite M-q +(Meta-q) com o cursor dentro do parágrafo. + +>> Mova o cursor dentro do parágrafo anterior e digite M-q. + + +* PESQUISANDO +------------- + +O Emacs pode fazer pesquisas por strings (esses sao grupos de caracteres +ligados ou palavras) tanto para frente do texto ou para traz. Pesquisar +por uma string e um comando de movimento do cursor; ele move o cursor +para o próximo lugar onde a string aparece. + +O comando de pesquisa do Emacs é diferente dos comandos de pesquisa da +maioria dos editores, porque é uma pesquisa "incremental". Isso +significa que a pesquisa acontece enquanto você digita uma string para +pesquisar. + +O comando para iniciar a pesquisa é C-s para pesquisa para frente ou C-r +para pesquisa inversa. MAS ESPERE! Não tente fazer agora. + +Quando você digitar C-s você percebera que uma string "I-search" +aparecerá como prompt na área de saída. Isso diz para você que o Emacs +esta no que chamamos de pesquisa incremental esperando que você digite o +que você quer procurar. termina a pesquisa. + +>> Agora digite C-s para iniciar a pesquisa. DEVAGAR, uma letra por vez, + digite o caractere 'cursor', pausando cada vez que você digitar um + caractere, perceba o que acontece com o cursor. Agora que você + pesquisou por "cursor", uma vez. +>> Digite C-s novamente, para pesquisa a próxima ocorrência de "cursor". +>> Agora digite quatro vezes e veja como o cursor move. +>> Digite para terminar a pesquisa. + +Você viu o que aconteceu? O Emacs, em uma pesquisa incremental, tenta ir +para a ocorrência que você digitou ate o momento. Para ir para próxima +ocorrência de 'cursor' apenas digite C-s novamente. Se nenhuma +ocorrência existir, o Emacs bipa e te diz que a pesquisa atual +falhou. C-g também termina a pesquisa. + +NOTA: Em alguns sistemas, digitar C-s trava a tela e você não verá a +saída do Emacs. Isso indica que um "recurso" do sistema operacional +chamado "controle de fluxo" (flow control) esta interceptando o C-s e +não deixando que passe pelo Emacs. Para destravar a tela, digite +C-q. Então, leia na seção "Spontaneous Entry to Incremental Search" no +manual do Emacs para uma dica de como lhe dar com esse "recurso". + +Se você estiver no meio de uma pesquisa incremental e digitar , +você perceberá que o último caractere da pesquisa será apagado e a +pesquisa voltará para o último lugar da pesquisa. Por exemplo, imagine +que você tenha digitado "c", para pesquisar a primeira ocorrência de +"c". Agora se você digitar "u", o cursor moverá para a primeira +ocorrência de "cu". Agora digite . Isso apagará o "u" da +string de pesquisa, e o cursor moverá de volta para a primeira +ocorrência de "c". + +Se você estiver no meio de uma pesquisa e digitar um caractere control +ou meta (com algumas exceções--caracteres que são especiais em uma +pesquisa, como C-s e C-r), a pesquisa é terminada. + +O C-s inicia uma pesquisa que procura por qualquer ocorrência da string +de pesquisa APÓS a posição corrente do cursor. Se você quiser pesquisar +por alguma coisa anterior no texto, digite C-r ao invés. Tudo que nos +dissemos sobre C-s também implica para C-r, tirando a direção da +pesquisa que é reversa. + + +* MÚLTIPLAS JANELAS +------------------- + +Um dos recursos mais interessantes do Emacs é que você pode mostrar mais +de uma janela na tela ao mesmo tempo. + +>> Mova o cursor para essa linha e digite C-u 0 C-l (isso é control-L, + não control-1). + +>> Agora digite C-x 2 que vai dividir a tela em duas janelas. + As duas janelas vão mostrar esse tutorial. O cursor fica na janela + do topo. + +>> Digite C-M-v para rolar para o fim da janela. + (Se você não tiver uma tecla Meta de verdade, digite ESC C-v.). + +>> Digite C-x o ("o" para "outra") para mover o cursor para o rodapé + da janela. +>> Use C-v e M-v no rodapé da janela para rodá-la. + Continue lendo essas direções na janela do topo. + +>> Digite C-x o novamente para mover o cursor de volta para a janela + do topo. + O cursor na janela do topo esta exatamente como estava antes. + +Você pode continuar usando C-x o para alternar entre as janelas. Cada +janela tem sua própria posição de cursor, mas apenas uma janela mostra o +cursor. Todos os comandos mais comuns de edição aplicam para a janela +que o cursor esta. Chamamos isso de "janela selecionada". + +O comando C-M-v é muito útil para quando você estiver editando o texto +em uma janela e utilizando a outra janela para referencia. Você pode +manter o cursor sempre na janela que você estiver editando, e avançar +pela outra janela seqüencialmente utilizando C-M-v. + +C-M-v é um exemplo de um caractere CONTROL-META. Se você tiver uma tecla +META real, você pode digitar C-M-v segurando ambos CONTROL e META +enquanto digitar v. Não importa se CONTROL ou META "vem primeiro," +porque ambas as teclas agem modificando o caractere que você digita. + +Se você não tiver um tecla META real, você pode utilizar ESC ao invés, a +ordem não importa: você precisa digitar ESC seguido por Control-v, +porque Control-ESC v não funcionará. Isso porque ESC é um caractere +com seu próprio direito, não é uma tecla de modificação. + +>> Digite C-x 1 (na janela do topo) para fugir da janela do rodapé. + +(Se você tivesse digitado C-x 1 na janela do rodapé, você fugiria da +janela do topo. Pense neste comando como "Mantenha apenas uma janela--a +janela que estou dentro.") + +Você não precisa mostrar o mesmo buffer nas duas janelas. Se você +utilizar C-x C-f para encontrar um arquivo em outra janela, a outra +janela não mudara. Você pode encontrar um arquivo em cada janela +independentemente. + +Aqui esta uma maneira de utilizar duas janelas para mostrar coisas +diferentes: + +>> Digite C-x 4 C-f seguido pelo nome de um dos seus arquivos. + Termine com . Veja o arquivo especificado aparece na janela + do rodapé. O cursor irá para lá, também. + +>> Digite C-x o para voltar a janela do topo, e C-x1 para remover a + janela de rodapé. + + +* NÍVEIS RECURSIVOS DE EDIÇÃO +----------------------------- + +Algumas vezes você entrará no que chamamos de "nível de edição +recursiva". Isso é indicado por colchetes no mode line, envolvendo os +parênteses em volta do nome do modo majoritário. Por exemplo, você pode +ver [(Fundamental)] ao invés de (Fundamental). + +Para sair desses níveis recorríveis de edição, digite ESC ESC ESC. Isso +e um comando de todos os propósitos "saia". Você pode também utilizar +para eliminar janelas extras, e sair de um minibuffer. + +>> Digite M-x para entrar no minibuffer; então digite ESC ESC ESC para + sair. + +Você não pode utilizar C-g para sair de um nível de edição +recursiva. Isso porque o C-g é utilizado para cancelar comandos e +argumentos COM o nível de edição recursiva. + + +* CONSEGUINDO MAIS AJUDA +------------------------ + +Neste tutorial nos tentamos suprimir informações suficientes para que +você comece a utilizar o Emacs. Existe tanto disponível sobre Emacs que +seria impossível explicar tudo aqui. De qualquer maneira, você pode +querer aprender mais sobre Emacs mesmo porque ele tem muitos outros +recursos úteis. O Emacs proporciona comandos para leitura de +documentação sobre comandos do Emacs. Esses comandos de "ajuda" iniciam +com o caractere Control-h, que é chamado de "o caractere de ajuda". + +Para utilizar os recursos de ajuda, digite o caractere C-h, e então um +caractere dizendo que tipo de ajuda você quer. Se você REALMENTE estiver +perdido, digite C-h ? e o Emacs lhe dirá que tipo de ajuda ele pode +lhe dar. Se você digitar C-h e decidir que você não quer nenhuma ajuda, +apenas digite C-g para cancelar. + +(Alguns sistemas mudam o significado do caractere C-h. Eles não deveriam +fazer isso para todos os usuários, então você deve reclamar com o +administrador do sistema. Enquanto isso, se C-h não mostrar a mensagem +sobre ajuda no rodapé da tela, tente digitar a tecla F1 ou M-x help +.) + +O recurso de ajuda mais básico é o C-h c. Digite C-h, e o caractere c, é +um comando de caractere ou seqüência; então o Emacs mostrará uma breve +descrição do comando. + +>> Digite C-h c C-p + A mensagem deve ser algo assim + + C-p roda o comando linha-anterior + +Isso diz a você "o nome da função". Nome de funções são utilizados +basicamente para personalizar o estender o Emacs. Mas desde que nomes de +funções são utilizados para indicar que o que o comando faz, eles podem +servir também como uma breve documentação--suficiente para lembrar você +os comandos que você já aprendeu. + +Comandos multi-caractere como C-x C-s e (se você não tiver a tecla META +ou EDIT ou ALT) v é também permitido depois de C-h c. + +Para ter mais informação sobre um comando, utilize C-h k ao invés de C-h +c. + +>> Digite C-h k C-p. + +Isso mostra a documentação da função, assim como seu nome, em uma janela +do Emacs. Quando você terminar de ler a saída, digite C-x 1 para sair da +saída do texto de ajuda. Você não precisa fazer isso imediatamente +apos. Você pode fazer alguma edição enquanto utilizando como referencia +o texto de ajuda, e então digite C-x 1. + +Aqui estão algumas outras opções úteis do comando C-h: + + C-h f Descreve a função. Digite o nome da função. + +>> Tente digitar C-h f previous-line + Isso imprimirá toda informação que o Emacs tem sobre a função que + implementa o comando C-p. + + C-h a Comando Apropos. Digite uma palavra chave e o Emacs + listará todos os comandos que o nome contem essa + palavra. Esses comandos podem ser chamados com + Meta-x. Para alguns comandos, o comando Apropos + também listará um ou dois caracteres de seqüência que + roda o mesmo comando. + +>> Digite C-h a file. + +Isso mostra em uma outra janela a lista de todos os comandos M-x com +"arquivo" em seus nomes. Você verá comandos-caractere como C-x C-f +listados ao lado do comando correspondente assim como o find-file. + +>> Digite C-M-v para rolar a janela de ajuda. Faca isso algumas vezes. + +>> Digite C-x 1 para remover a janela de ajuda. + + +* CONCLUSÃO +----------- + +Lembre, para sair permanentemente do Emacs utilize C-x C-c. Para sair +para um shell temporariamente, para que você possa voltar ao Emacs mais +tarde, utilize C-z. + +Esse tutorial foi feito para ser entendível para todos os novos +usuários, então se você encontrou algo que parece não estar claro, não +sente e se culpe - reclame! + + +* CÓPIA +------- + +Esse tutorial descende de uma longa linha de tutoriais do Emacs +iniciando com um escrito por Stuart Cracraft para o Emacs original. + +Essa versão do tutorial foi originalmente traduzida por Marcelo Toledo + e como o GNU Emacs, tem um copyright, e vem +com uma permissão de distribuição de cópias nas seguintes condições: + +Copyright (C) 2004, 2005, 2006, 2007 Free Software Foundation, Inc. + + Permissão é garantida a qualquer um para fazer ou distribuir cópias + integrais deste documento como recebido, em qualquer meio, deixando + disponível e preservados o aviso de copyright e o aviso de permissão, + e o distribuidor garante que a permissão para distribuições + posteriores permitam o mesmo que esta nota. + + Permissão garantida para distribuir versões modificadas deste + documento, ou partes dele, sobre as condições acima, sempre que elas + tenham uma nota visível de quem foi o último a alterá-lo. + +As condições para copiar o Emacs especificamente são mais complexas, mas +no mesmo espírito. Por favor, leia o arquivo COPYING e dê cópias do GNU +Emacs para seus amigos. Ajude a erradicar o obstrucionismo de software +("proprietário") usando, escrevendo, e compartilhando software livre! + +;;; Local Variables: +;;; coding: latin-1 +;;; sentence-end-double-space: nil +;;; End: + +;;; arch-tag: 8ea256d6-2c4a-49ee-ac08-0ea6ef25bf8d diff --git a/etc/tutorials/TUTORIAL.ro b/etc/tutorials/TUTORIAL.ro new file mode 100644 index 00000000000..159796403d4 --- /dev/null +++ b/etc/tutorials/TUTORIAL.ro @@ -0,0 +1,1117 @@ +Tutorialului de Emacs. A se citi sfârºitul pentru condiþii. +Traducere din englezã de Tudor Hulubei . +Mulþumiri Aidei Hulubei pentru corecturi ºi sugestii. + +Aceastã versiune a fost produsã plecând de la versiunea în limba +englezã, care este +Copyright (c) 1985 Free Software Foundation, Inc. + +Citiþi acum versiunea româneascã a tutorialului de Emacs. + +Comenzile Emacs folosesc în general tasta CONTROL (uneori denumitã +CTRL sau CTL) sau tasta META (uneori denumita EDIT sau ALT). În loc +sã scriem META sau CONTROL de fiecare datã când vrem sã prefixãm un +caracter, vom folosi urmãtoarele prescurtãri: + + C- înseamnã cã þineþi apãsatã tasta CONTROL în timp ce tastaþi + caracterul . Astfel, C-f înseamnã: þineþi apãsatã tasta + CONTROL ºi tastaþi f. + + M- înseamnã cã þineþi apãsatã tasta META, EDIT sau ALT în timp + ce tastaþi . Dacã nu existã tasta META, EDIT sau ALT, + tastaþi , ridicaþi ºi apoi tastaþi caracterul . + Am notat cu tasta ESC. + +Observaþie importantã: pentru a termina sesiunea Emacs, tastaþi C-x +C-c. (Douã caractere.) Caracterele ">>" la marginea din stânga +reprezintã instrucþiuni pentru a încerca o comandã. De exemplu: +<> +>> Acum tastaþi C-v (citirea urmãtorului ecran) pentru a vã muta la + urmãtorul ecran. (Executaþi aceastã comandã acum, tinând apãsatã + tasta CONTROL în timp ce tastaþi v). De acum înainte faceþi acest + lucru din nou, de fiecare datã când terminaþi de citit ecranul. + +De remarcat cã existã o zonã de suprapunere de douã linii când vã +mutaþi de la un ecran la altul; aveþi astfel o oarecare continuitate +în citirea textului. + +Primul lucru pe care trebuie sã-l stiþi este cum sã vã deplasaþi din +loc în loc în text. ªtiþi deja cum sã vã mutaþi la urmãtorul ecran cu +C-v. Pentru a vã deplasa înapoi un ecran, tastaþi M-v (þineþi apãsatã +tasta META ºi tastaþi v, sau v dacã nu aveþi o tastã META, EDIT, +sau ALT). + +>> Încercaþi sã tastaþi M-v ºi apoi C-v de câteva ori. + + +* SUMAR +------- + +Urmãtoarele comenzi sunt utile pentru a vedea ecrane: + + C-v avanseazã un ecran + M-v înapoi un ecran + C-l ºterge ecranul ºi reafiºeazã totul poziþionând textul + de lângã cursor în centrul ecranului. (Este C-L, nu + C-1.) + +>> Gãsiþi cursorul ºi þineþi minte ce text este în jurul lui. + Apoi tastaþi C-l. Gãsiþi cursorul din nou ºi observaþi cã textul + de lângã cursor este acelaºi. + + +* COMENZI DE BAZà PENTRU CONTROLUL CURSORULUI +--------------------------------------------- + +Mutatul ecran cu ecran este util, dar cum vã mutaþi la o anumitã +poziþie în textul de pe ecran? + +Sunt mai multe modalitaþi în care puteþi face acest lucru. Cel mai +simplu este sã folosiþi comenzile C-p, C-b, C-f ºi C-n. Fiecare din +aceste comenzi mutã cursorul o linie sau coloanã într-o anumitã +direcþie pe ecran. Diagrama urmãtoare prezintã aceste patru comenzi +ºi aratã direcþiile în care ele mutã cursorul. + + Linia precedentã, C-p + : + : + Înapoi, C-b .... Poziþia curentã a cursorului .... Înainte, C-f + : + : + Linia urmãtoare, C-n + +>> Mutaþi cursorul la linia din mijlocul diagramei folosind C-n sau + C-p. Tastaþi apoi C-l pentru a vedea întreaga diagramã centratã pe + ecran. + +Vi se va pãrea probabil mai simplu sã vã amintiþi aceste comenzi +gândindu-vã la semnificaþia lor în limba englezã: P pentru previous, N +pentru next, B pentru backward ºi F pentru forward. Acestea sunt +comenzile de bazã pentru poziþionarea cursorului ºi le veþi folosi tot +timpul, deci ar fi foarte util sã le învãþaþi acum. + +>> Tastaþi câteva C-n-uri pentru a aduce cursorul la aceastã linie. + +>> Mutaþi-vã în interiorul liniei cu C-f-uri ºi apoi în sus cu + C-p-uri. Urmãriþi ce face C-p atunci când cursorul este în + mijlocul liniei. + +Fiecare linie se terminã cu un caracter NEWLINE care o separã de linia +urmãtoare. Ultima linie în fiºierele dumneavoastrã ar trebui sã aibã +un asemenea caracter la sfârºit (deºi Emacs-ul nu-l necesitã). + +>> Încercaþi sã tastaþi C-b la începutul unei linii. Cursorul ar + trebui sã se mute la sfârºitul liniei precedente, din cauza + trecerii peste caracterul NEWLINE. + +C-f poate sã treacã peste un caracter NEWLINE, la fel ca ºi C-b. + +>> Tastaþi câteva C-b-uri, pentru a vã familiariza cu poziþia + cursorului. Tastaþi apoi câteva C-f-uri pentru a vã întoarce la + sfârºitul liniei. Încã un C-f ºi vã veþi muta la linia urmãtoare. + +Când ajungeþi sã treceþi peste începutul sau sfârºitul ecranului, +textul aflat dincolo de margine intrã în ecran, permiþându-i +Emacs-ului sã mute cursorul la poziþia specificatã, fãrã a ieºi din +zona vizibilã (ecran). Aceastã operaþiune se numeste în limba englezã +"scrolling". + +>> Încercaþi sã mutaþi cursorul în afara pãrþii de jos a ecranului cu + C-n ºi observaþi ce se întamplã. + +Dacã mutatul caracter cu caracter este lent, puteþi muta cursorul +cuvânt cu cuvânt. M-f (META-f) avanseazã cursorul cu un cuvânt, iar +M-b mutã cursorul un cuvânt înapoi. + +>> Tastaþi câteva M-f-uri ºi apoi câteva M-b-uri. + +Când cursorul este în mijlocul unui cuvânt, M-f îl mutã la sfârºitul +cuvântului. Când cursorul este în spaþiul dintre cuvinte, M-f îl mutã +la sfârºitul cuvântului urmãtor. M-b acþioneazã similar, dar în +direcþia opusã. + +>> Tastaþi M-f ºi M-b de câteva ori, intercalate cu C-f-uri ºi + C-b-uri, pentru a observa efectul comenzilor M-f ºi M-b din diverse + poziþii în interiorul cuvintelor ºi între ele. + +Observaþi paralela între C-f ºi C-b pe de o parte, ºi M-f ºi M-b pe de +cealaltã parte. De multe ori, caracterele META sunt folosite pentru +operaþii referitoare la unitãþile definite de limbaj (cuvinte, fraze, +paragrafe), în timp ce caracterele CONTROL opereazã pe unitãþi de +bazã, care sunt independente de tipul textului editat (caractere, +linii, etc). + +Aceastã paralelã se aplicã ºi între linii ºi fraze: C-a ºi C-e mutã +cursorul la începutul ºi, respectiv sfârºitul unei linii, în timp ce +M-a ºi M-e îl mutã la începutul ºi, respectiv sfârºitul unei fraze. + +>> Încercaþi câteva C-a-uri, apoi câteva C-e-uri. + Încercaþi câteva M-a-uri, apoi câteva M-e-uri. + +Remarcaþi cum repetarea tastãrii lui C-a nu schimbã nimic, în timp ce +repetarea tastãrii lui M-a mutã cursorul la fraza urmãtoare. Deºi +aceste operaþii nu sunt tocmai analoage, fiecare pare naturalã. + +Poziþia cursorului în text mai este numitã ºi "punct" ("point" în +limba englezã). Cursorul aratã pe ecran poziþia punctului în text. + +Operaþiile ce mutã cursorul (inclusiv comenzile ce mutã cursorul +cuvânt cu cuvânt sau frazã cu frazã) sunt prezentate în sumarul +urmãtor: + + C-f avanseazã un caracter + C-b înapoi un caracter + + M-f avanseazã un cuvânt + M-b înapoi un cuvânt + + C-n avanseazã o linie + C-p înapoi o linie + + C-a înapoi la începutul liniei + C-e avanseazã la sfârºitul liniei + + M-a înapoi la începutul frazei + M-e avanseazã la sfârºitul frazei + +>> Exersaþi toate aceste comenzi acum, sunt comenzile cele mai des + folosite. + +Douã alte comenzi importante legate de mutatul cursorului sunt M-< +(META Mai-mic), care mutã cursorul la începutul textului, ºi M-> (META +Mai-mare), care mutã cursorul la sfârºitul textului. + +Pe majoritatea terminalelor "<" este deasupra virgulei ºi deci este +necesar sã apãsaþi tasta SHIFT în acelaºi timp. Pe aceste terminale +este nevoie sã apãsaþi SHIFT ºi când tastaþi M-<; fãrã tasta SHIFT, +aþi apãsa M-virgulã. + +>> Încercaþi M-< acum, pentru a vã muta la începutul tutorialului. + Folosiþi apoi C-v în mod repetat pentru a ajunge înapoi aici. + +>> Încercaþi M-> acum, pentru a vã muta la sfârºitul tutorialului. + Folosiþi apoi M-v repetat pentru a ajunge înapoi aici. + +Puteþi de asemenea sã mutaþi cursorul cu tastele sãgeþi, dacã +terminalul are asemenea taste. Se recomandã însã acomodarea cu C-b, +C-f, C-n ºi C-p din trei motive. În primul rând, aceste taste +funcþioneazã pe toate tipurile de terminale. În al doilea rând, odatã +ce vã obiºnuiþi cu Emacs-ul, veþi remarca faptul cã tastarea lor este +mai rapidã decât cea a tastelor sãgeþi (pentru cã nu trebuie sã vã +schimbaþi poziþia mâinilor pe tastaturã). În al treilea rând, odatã +format obiceiul de a folosi aceste comenzi bazate pe CONTROL, +comenzile avansate de mutat cursorul se învaþã foarte uºor. + +Majoritatea comenzilor Emacs acceptã un argument numeric; pentru +majoritatea comenzilor, acest argument reprezintã un contor de +repetiþie. Contorul de repetiþie se introduce tastând C-u, cifrele ce +alcãtuiesc contorul ºi apoi comanda. Dacã aveþi tasta META (EDIT sau +ALT), existã ºi o altã alternativã pentru a introduce un argument +numeric: tastaþi cifrele în timp ce þineþi tasta META apãsatã. Se +recomandã însã folosirea metodei cu C-u, deoarece funcþioneazã pe +orice terminal. + +De exemplu, C-u 8 C-f avanseazã cursorul cu opt caractere. + +>> Încercaþi sã folosiþi C-n sau C-p cu un argument numeric pentru a + muta cursorul dintr-o singurã comandã pe o linie apropiatã de + aceasta. + +Majoritatea comenzilor utilizeazã argumentul numeric ca un contor de +repetitie. Anumite comenzi speciale îl folosesc însa în mod diferit. +C-v si M-v sunt printre aceste excepþii. Când li se dã un argument +numeric, ele mutã ecranul mai sus sau mai jos cu numarul specificat de +linii, nu de ecrane. De exemplu, C-u 4 C-v mutã ecranul cu 4 linii. + +>> Încercaþi sã tastaþi C-u 8 C-v acum. + +Aceastã comandã trebuie sã mute ecranul în sus cu 8 linii. Dacã +doriti sã îl mutaþi înapoi, puteþi sã-i daþi lui M-v un argument +numeric. + +Dacã folosiþi sistemul X Window, existã probabil o zonã rectangularã +numita "scroll bar" la dreapta ferestrei Emacs-ului. Puteþi deplasa +textul manipulând "scroll bar"-ul cu mouse-ul. + +>> Încercaþi sã apãsaþi butonul din mijloc al mouse-ului la mijlocul + butonului din scroll bar. Aceasta ar trebui sã mute textul la o + poziþie determinatã de cât de sus sau de jos aþi apãsat pe scroll + bar. + +>> Încercaþi sã mutaþi mouse-ul în sus ºi în jos þinând butonul din + mijloc apãsat. Veþi vedea cã textul se deplaseazã în sus ºi în jos + corespunzãtor cu miºcarea mouse-ului. + + +* CÂND EMACS-ul ESTE BLOCAT +--------------------------- + +Dacã Emacs-ul înceteazã sã vã raspundã la comenzi, îl puteþi opri, +fãrã sã pierdeþi modificãrile fãcute pânã acum, tastând C-g. Puteþi +folosi C-g pentru a opri o comandã care dureazã prea mult. + +Puteþi de asemenea folosi C-g pentru a opri introducerea unui argument +numeric sau începutul unei comenzi pe care nu doriþi sã o continuaþi. + +>> Tastaþi C-u 100 pentru a introduce 100 ca un argument numeric, apoi + tastaþi C-g. Tastaþi apoi C-f. Cursorul ar trebui sã se mute un + singur caracter, pentru cã aþi oprit introducerea argumentului + numeric cu C-g. + +Dacã aþi tastat un din greºealã, puteþi sã-l anulaþi cu un C-g. + + +* COMENZI DEZAFECTATE +--------------------- + +Anumite comenzi sunt dezafectate în Emacs, în aºa fel încât +utilizatorii sã nu le poatã folosi din neatenþie. + +Dacã tastaþi una din comenzile dezafectate, Emacs-ul va afiºa un mesaj +spunând ce comandã aþi tastat ºi întrebându-vã dacã doriþi sã +continuaþi. + +Dacã într-adevãr doriþi sã încercaþi comanda respectivã, tastaþi +SPAÞIU. În mod normal, dacã nu doriþi sã executaþi comanda +dezafectatã, rãspundeþi cu "n". + +>> Tastaþi : (care este o comandã dezafectatã), apoi tastaþi n + ca rãspuns la întrebarea pusã de Emacs. + + +* FERESTRE +---------- + +Emacs-ul poate avea mai multe ferestre, fiecare afiºând propriul sãu +text. Vom explica mai târziu tehnicile de folosire a ferestrelor +multiple. Acum vrem sã explicãm cum sã închideþi ferestrele care ar +putea apare ca rezultat al afiºãrii unor documentaþii sau rezultate +specifice anumitor comenzi. Este simplu: + + C-x 1 o singurã fereastrã (adicã închide toate celelalte + ferestre). + +Asta înseamnã CONTROL-x urmat de cifra 1. C-x 1 mãreºte fereastra +care conþine cursorul pânã când ocupã întregul ecran. Toate celelalte +ferestre sunt distruse. + +>> Mutaþi cursorul la aceastã linie ºi tastaþi C-u 0 C-l. + +>> Tastaþi C-h k C-f. Observaþi cum aceastã fereastrã se micºoreazã, + în timp ce o nouã fereastrã apare, afiºând documentaþia comenzii + C-f. + +>> Tastaþi C-x 1 ºi observaþi cum noua fereastrã dispare. + + +* INTRODUCEREA ªI ªTERGEREA +--------------------------- + +Dacã vreþi sã introduceþi text, pur ºi simplu tastaþi textul dorit. +Caracterele pe care le puteþi vedea, cum ar fi A, 7, *, etc. sunt +interpretate de Emacs ca text ºi introduse imediat. Tastaþi +(tasta mai este etichetatã uneori) pentru a introduce un +caracter NEWLINE. + +Puteþi ºterge ultimul caracter pe care l-aþi introdus tastând +. este o tastã pe tastaturã etichetatã "Del" sau +"Delete". În unele cazuri tasta "Backspace" poate acþiona ca +, dar nu întotdeauna! + +Mai general, ºterge caracterul dinaintea poziþiei curente a +cursorului. + +>> Executaþi urmãtoarele operaþii acum - tastaþi câteva caractere, + apoi ºtergeþi-le tastând de câteva ori. Nu vã temeþi cã + veþi schimba acest fiºier; nu veþi altera versiunea principalã a + tutorialului. Aceasta este copia dumneavoastrã personalã. + +Când o linie de text devine prea mare pentru a putea fi reprezentatã +pe o linie de ecran, linia de text este continuatã pe urmãtoarea linie +de pe ecran. Un caracter backslash ("\") la marginea din dreapta +indicã o linie care a fost continuatã. + +>> Introduceþi text pânã când depãºiþi cu câteva caractere marginea + din dreapta a ecranului. Veþi observa apariþia liniei de + continuare. + +>> Folosiþi -uri pentru a ºterge textul pânã când linia încape + din nou pe o linie de ecran. Linia de continuare va dispãrea. + +Puteþi ºterge un caracter NEWLINE ca pe orice alt caracter. ªtergerea +unui NEWLINE dintre douã linii concateneaza cele douã linii. Dacã +linia rezultatã este prea lungã pentru a fi afiºatã pe ecran, va fi +afiºatã cu o linie de continuare. + +>> Mutaþi cursorul la începutul unei linii ºi tastaþi . + Aceasta concateneazã linia curentã cu cea precedentã. + +>> Tastaþi pentru a reintroduce caracterul NEWLINE ºters. + +Aºa cum vã reamintiþi, majoritatea comenzilor Emacs pot primi un +argument numeric ce acþioneazã ca un contor de repetiþie; introducerea +caracterelor ascultã aceleaºi reguli. Un argument numeric dat unui +caracter duce la introducerea caracterului respectiv de numãrul +specificat de ori. + +>> Încercaþi asta acum - tastaþi C-u 8 * pentru a introduce ********. + +Aþi învãþat acum metodele elementare de tastat ºi corectat erori în +Emacs. Puteþi de asemenea ºterge cuvinte sau linii. Acesta este un +sumar al operaþiilor de ºtergere. + + ºterge caracterul de dinaintea cursorului + C-d ºterge caracterul de dupã cursor + + M- ºterge cuvântul de dinaintea cursorului + M-d ºterge cuvântul de dupã cursor + + C-k ºterge de la poziþia curentã pânã la sfârºitul + liniei + M-k ºterge de la poziþia curentã pânã la sfârºitul + frazei + +De remarcat cã ºi C-d versus M- ºi M-d extind +paralela începutã de C-f ºi M-f ( nu este cu adevãrat un +caracter bazat pe CONTROL, dar nu o sã ne ocupãm de asta acum). C-k +ºi M-k sunt ca C-e ºi M-e, într-un fel, dacã facem o paralelã între +linii ºi fraze. + +Când ºtergeþi mai mult de un caracter la un moment dat, Emacs-ul +pãstreazã intern textul distrus în aºa fel încât îl puteþi restaura. +Termenul folosit de Emacs pentru operaþiunea de restaurare a textului +distrus este "yanking". Puteþi restaura textul distrus fie în acelaºi +loc, fie în alt loc în fiºier. Puteþi de asemenea restaura textul de +mai multe ori pentru a face mai multe copii. Comanda de restaurare +este C-y. + +Diferenþa dintre "distrugerea" ºi "ºtergerea" unei porþiuni din text +este aceea ca porþiunile de text "distruse" pot fi restaurate, în timp +ce porþiunile de text "ºterse", nu. În general, comenzile care +distrug porþiuni semnificative din text, pãstreazã intern textul +respectiv, în timp ce comenzile care ºterg doar un caracter, linii +goale sau spaþii, nu fac acest lucru. + +>> Mutaþi cursorul la începutul unei linii care nu este goalã. + Tastaþi apoi C-k pentru a distruge textul de pe linia respectivã. +>> Tastaþi C-k o a doua oarã. Veþi observa distrugerea caracterului + NEWLINE de la sfârºitul liniei. + +Dupã cum vedeþi, un singur C-k distruge conþinutul liniei, iar un al +doilea C-k distruge linia însãºi, facând toate celelalte linii sã se +mute în sus. C-k trateazã un argument numeric în mod special: +distruge numãrul specificat de linii ºi conþinutul lor. Aceastã +comportare nu este doar o simplã repetiþie. C-u 2 C-k distruge douã +linii ºi NEWLINE-urile de dupã ele; tastând C-k de douã ori nu +obþineþi acelaºi rezultat. + +Pentru a extrage ultimul text distrus ºi a-l plasa la poziþia curentã +a cursorului, tastaþi C-y. + +>> Tastaþi C-y pentru a restaura textul distrus anterior. + +Gânditi-vã la C-y ca ºi cum aþi recupera ceva ce v-a fost luat. +Observaþi cã dacã executaþi mai multe C-k-uri la rând, tot textul +distrus este stocat într-o singurã bucatã, în aºa fel încât un singur +C-y va restaura toate liniile. + +>> Tastaþi acum C-k de câteva ori. + +Acum încercaþi sã restauraþi textul distrus: + +>> Tastaþi C-y. Mutaþi apoi cursorul câteva linii mai jos ºi tastaþi + C-y din nou. Veþi vedea cum se copiazã porþiuni de text. + +Ce faceþi dacã aveþi porþiuni de text pe care vreþi sã le restauraþi, +dar între timp distrugeþi o altã porþiune de text? C-y va restaura +porþiunea de text care a fost distrusã cel mai recent. Cu toate +acestea, textul distrus anterior nu este pierdut. Puteþi sã-l +restauraþi folosind comanda M-y. Dupã ce aþi executat C-y pentru a +obþine textul cel mai recent distrus, tastând M-y veþi înlocui textul +ce tocmai a fost restaurat cu textul distrus înaintea lui. Tastând +M-y de mai multe ori puteþi obþine porþiuni de text distrus din ce în +ce mai vechi. Odatã ajunºi la textul care vã intereseazã, puteþi sã +continuaþi editarea fãrã sã mai faceþi nimic special, lasând textul +restaurat în poziþia în care se gãseºte. + +Dacã tastaþi M-y de suficient de multe ori, veþi ajunge în cele din +urmã la punctul de plecare (textul distrus cel mai de curând). + +>> Distrugeþi o linie, mutaþi-vã puþin în jurul ei, distrugeþi o altã + linie. Executaþi apoi C-y pentru a obþine înapoi cea de-a doua + linie distrusã. Executaþi apoi M-y ºi veþi constata cã este + înlocuitã de prima linie distrusã. Executaþi mai multe M-y-uri ºi + observaþi ce obþineþi. Continuaþi sã le executaþi pânã când a doua + linie apare din nou, etc. Dacã doriþi, puteþi încerca sã-i daþi + comenzii M-y argumente numerice pozitive ºi negative. + + +* ANULARE +--------- + +Dacã faceþi o schimbare în text, ºi apoi constataþi cã aþi greºit, +puteþi anula schimbarea cu comanda de anulare, C-x u. + +În mod normal, C-x u anuleazã schimbãrile fãcute de o comandã; dacã +repetaþi C-x u de câteva ori la rând, fiecare nouã repetiþie anuleazã +încã o comandã. + +Existã însã douã excepþii: comenzile care nu schimbã textul nu sunt +luate în considerare (acestea includ comenzile de mutat cursorul ºi +cele de "scrolling"), iar caracterele introduse individual sunt +tratate în grupuri de maxim 20. (Motivaþia din spatele acestei +abordãri este aceea de a reduce numãrul de C-x u-uri pe care trebuie +sã le tastaþi pentru anularea inserãrilor de text). + +>> Distrugeþi linia aceasta cu C-k, apoi tastaþi C-x u; linia ar + trebui sã reaparã. + +C-_ este o altã comandã de anulare; funcþioneazã exact ca ºi C-x u, +dar este mai uºor de tastat de mai multe ori la rând. Dezavantajul +lui C-_ este cã pe anumite tastaturi nu este clar cum trebuie tastat. +Din acest motiv existã C-x u. Pe unele terminale se poate sã tastaþi +C-_ tastând "/" în timp ce þineþi apãsatã tasta CONTROL. + +Un argument numeric la C-_ sau C-x u acþioneazã ca un contor de +repetiþie. + + +* FIªIERE +--------- + +Pentru a face permanente modificãrile din textul pe care îl editaþi, +trebuie sã-l stocaþi (salvaþi) într-un fiºier. Altminteri, +modificãrile se vor pierde în momentul pãrãsirii Emacs-ului. Puneþi +textul într-un fiºier "deschizând" (sau "vizitând") fiºierul. + +Deschiderea unui fiºier înseamnã cã puteþi vedea conþinutul fiºierului +în Emacs. Este ca ºi cum aþi edita chiar fiºierul, singura diferenþã +fiind aceea cã schimbãrile nu devin permanente pânã când nu îl +"salvaþi" ("save" în limba englezã). Se evitã astfel existenþa în +sistem a unor fiºiere incomplet modificate atunci când nu doriþi acest +lucru. Chiar ºi când salvaþi fiºierul, Emacs-ul pãstreazã fiºierul +iniþial (cu un nume schimbat) în aºa fel încât sã-l puteþi recupera în +cazul în care decideþi cã modificãrile efectuate au fost greºite. + +Aproape de marginea de jos a ecranului veþi observa o linie care +începe ºi se terminã cu minusuri, ºi conþine ºirul "--:-- TUTORIAL.ro" +sau ceva în genul acesta. Aceastã parte a ecranului aratã întotdeauna +numele fiºierului pe care îl vizitaþi. Acum vizitaþi fiºierul +"TUTORIAL.ro" care este copia dumneavoastrã de încercãri a +tutorialului în limba românã. Orice fiºier aþi edita, numele acelui +fiºier va apãrea în poziþia respectivã. + +Comenzile pentru gãsirea ºi salvarea fiºierelor sunt diferite de +celelalte comenzi pe care le-aþi învãþat, în sensul cã sunt compuse +din douã caractere. Amândouã încep cu caracterul C-x. Existã o +întreagã serie de comenzi care încep cu C-x; multe dintre ele sunt +legate de fiºiere, buffere ºi alte lucruri înrudite. Aceste comenzi +sunt compuse din douã, trei sau patru caractere. + +Comenzii de deschidere a unui fiºier trebuie sã îi spuneþi numele +fiºierului dorit. Spunem despre comandã ca "citeºte un argument de la +terminal" (în acest caz, argumentul este numele fiºierului). Dupã ce +tastaþi comanda + + C-x C-f (deschide un fiºier) + +Emacs-ul vã va cere sã introduceþi numele fiºierului. Numele pe care +îl tastaþi apare pe ultima linie a ecranului. Aceastã linie se +numeste "minibuffer" când este folositã pentru acest tip de +introducere. Comenzile normale de editare în Emacs pot fi folosite ºi +pentru editarea numelui fiºierului. + +În timp ce introduceþi numele fiºierului (sau orice alt tip de +introducere de date în minibuffer), puteþi anula comanda cu C-g. + +>> Tastaþi C-x C-f, apoi tastaþi C-g. Aceasta anuleazã minibuffer-ul, + ºi, de asemenea, anuleazã comanda C-x C-f care îl folosea. În + concluzie, nu veþi mai deschide nici un fiºier. + +Când aþi terminat de introdus numele fiºierului, tastaþi +pentru a-l încheia. Dupã aceasta, comanda C-x C-f începe sã lucreze +ºi deschide fiºierul pe care l-aþi ales. Minibuffer-ul dispare când +comanda C-x C-f se terminã. + +Dupã câteva momente, conþinutul fiºierului apare pe ecran ºi îl puteþi +edita. Când doriti sã faceþi schimbãrile permanente, tastaþi comanda + + C-x C-s (salveazã fiºierul) + +Aceasta copiazã textul din Emacs într-un fiºier. Prima oarã când +faceþi acest lucru, Emacs-ul redenumeºte fiºierul iniþial în aºa fel +încât sã nu se piardã. Noul nume este creat prin adãugarea +caracterului "~" la numele iniþial. + +Când operaþiunea de salvare este terminatã, Emacs-ul afiºeazã numele +fiºierului salvat. Se recomandã salvarea la intervale relativ mici, +pentru a nu pierde prea multã muncã în cazul unei eventuale blocãri a +sistemului. + +>> Tastaþi C-x C-s, pentru a salva copia tutorialului. + Aceasta ar trebui sã afiºeze "Wrote ...TUTORIAL.ro" la marginea de + jos a ecranului. + +OBSERVAÞIE: În unele sisteme, tastarea comenzii C-x C-s va bloca +ecranul ºi nu veþi mai primi nici un de rãspuns din partea Emacs-ului. +Aceasta indicã faptul cã o facilitate a sistemului de operare numitã +"controlul fluxului" ("flow control" în limba englezã) intercepteazã +C-s, nelasându-l sã ajungã la Emacs. Pentru deblocarea ecranului, +tastaþi C-q. Puteþi gãsi detalii referitoare la aceastã aºa-numitã +"facilitate" în secþiunea "Spontaneous Entry to Incremental Search" +din manualul Emacs-ului. + +Puteþi deschide un fiºier existent, pentru a-l vedea sau edita. +Puteþi de asemenea deschide un fiºier care nu existã. Aceasta este +modalitatea în care creaþi noi fiºiere cu Emacs-ul: deschideþi +fiºierul (care va fi gol iniþial), apoi începeþi sã introduceþi text +în el. Când îi veþi cere sã "salveze" fiºierul, Emacs-ul va crea +fiºierul cu textul pe care l-aþi introdus. De acum înainte puteþi +considera cã editaþi un fiºier existent. + + +* BUFFERE +--------- + +Dacã deschideþi un al doilea fiºier cu C-x C-f, primul va continua sã +existe în Emacs. Puteþi sã vã mutaþi înapoi la el deschizându-l din +nou cu C-x C-f. În acest fel puteþi avea un numãr destul de mare de +fiºiere deschise în Emacs. + +>> Creaþi un fiºier numit "foo" tastând C-x C-f foo . + Introduceþi un text oarecare, editaþi-l, apoi salvaþi "foo" tastând + C-x C-s. În cele din urmã, tastaþi C-x C-f TUTORIAL.ro + pentru a vã întoarce la tutorial. + +Emacs-ul stocheazã textul fiecãrui fiºier într-un obiect numit +"buffer". Deschiderea unui fiºier creeazã un nou buffer în Emacs. +Pentru a vedea o listã a bufferelor existente în Emacs, tastaþi + + C-x C-b (lista de buffere) + +>> Încercaþi C-x C-b acum. + +Observaþi cum fiecare buffer are un nume ºi, uneori, un nume de fiºier +corespunzãtor fiºierului al cãrui conþinut este menþinut în buffer-ul +respectiv. Unele buffere nu corespund nici unui fiºier. De exemplu, +buffer-ul numit "*Buffer List*" nu are nici un fiºier asociat. Este +buffer-ul care conþine lista de buffere ºi a fost creat de comanda C-x +C-b. Orice text pe care îl vedeþi într-o fereastrã a Emacs-ului este +întotdeauna parte dintr-un buffer. + +>> Tastaþi C-x 1 pentru a scãpa de lista de buffere. + +Dacã faceþi schimbãri în textul unui fiºier, apoi deschideþi un alt +fiºier, primul fiºier nu este salvat. Schimbãrile efectuate rãmân în +Emacs, în buffer-ul asociat acelui fiºier. Crearea sau editarea +buffer-ului celui de-al doilea fiºier nu are nici un efect asupra +buffer-ului primului fiºier. Acest lucru este foarte util, dar +înseamnã cã aveþi nevoie de o modalitate convenabilã de a salva +buffer-ul primului fiºier. Ar fi obositor sã fie necesar sã vã mutaþi +înapoi la el cu C-x C-f pentru a-l putea salva cu C-x C-s. Din acest +motiv existã comanda: + + C-x s salveazã niºte buffere + +C-x s vã întreabã despre fiecare buffer care conþine modificãri (ºi +care nu a fost salvat) dacã doriþi sã-l salvaþi. + +>> Introduceþi o linie de text, apoi tastaþi C-x s. + Ar trebui sã vã întrebe dacã sã salveze buffer-ul TUTORIAL.ro. + Raspundeþi "da" la întrebare tastând "y". + + +* EXTINDEREA SETULUI DE COMENZI +------------------------------- + +Existã mult mai multe comenzi Emacs decât combinaþii de taste bazate +pe CONTROL ºi META. Soluþia în Emacs este folosirea comenzilor +eXtinse. Acestea sunt de douã feluri: + + C-x eXtinde un caracter; urmatã de un caracter + M-x eXtinde un nume; urmatã de un nume lung + +Acestea sunt comenzi care sunt utile în general, dar folosite mai rar +decât comenzile despre care aþi învãþat pânã acum. Aþi vãzut deja +douã dintre ele: comanda de deschis fiºiere (C-x C-f) ºi comanda de +salvat fiºiere (C-x C-s). Un alt exemplu este comanda de pãrãsit +Emacs-ul: C-x C-c. (Nu vã temeþi cã veþi pierde schimbãri fãcute în +fiºiere; înainte de a termina sesiunea curentã Emacs, C-x C-c vã va +întreba dacã doriþi sã salvaþi fiºierele modificate.) + +C-z este comanda cu care puteþi ieºi din Emacs *temporar* - astfel +încât sã puteþi sã vã întoarceþi la aceeaºi sesiune Emacs mai târziu. + +Pe sistemele unde este posibil, C-z "suspendã" Emacs-ul; asta înseamnã +cã, deºi vã veþi întoarce la prompt-ul shell-ului, Emacs-ul nu a fost +distrus. În shell-urile (interpretoarele de comenzi Unix) cele mai +uzuale puteþi reactiva Emacs-ul cu comanda `fg' sau `%emacs'. + +Pe sistemele care nu implementeazã mecanismele de suspendare, C-z +creeazã un subshell care ruleazã sub Emacs pentru a vã oferi +posibilitatea de a rula alte programe ºi de a vã întoarce la Emacs mai +târziu; pe aceste sisteme C-z nu iese cu adevãrat din Emacs - comanda +`exit' la promptul subshell-ului este modalitatea uzualã de a vã +întoarce în Emacs. + +În general C-x C-c se foloseºte înainte de pãrãsirea sistemului. +Puteþi folosi aceastã comandã ºi pentru a ieºi din instanþe de Emacs +lansate de programe de citit mail sau alte utilitare, deoarece acestea +s-ar putea sã nu fie capabile sã foloseascã facilitaþile de suspendare +ale Emacs-ului. În mod normal însã, dacã nu sunteþi pe cale sã +pãrãsiþi sistemul, este mai bine sã suspendaþi Emacs-ul cu C-z decât +sã ieºiþi complet cu C-x C-c. + +Emacs-ul are multe comenzi prefixate cu C-x. Aceasta este lista celor +pe care le-aþi învãþat pânã acum: + + C-x C-f deschide un fiºier + C-x C-s salveazã fiºierul + C-x C-b listeazã bufferele + C-x C-c pãrãseºte Emacs-ul + C-x u anuleazã + +Comenzile eXtinse cu nume sunt comenzile care sunt folosite ºi mai rar +sau comenzile care sunt folosite numai în anumite moduri. Un exemplu +este comanda replace-string (înlocuieºte-ºir) care înlocuieºte global +toate apariþiile unui ºir de caractere cu alt ºir de caractere. Când +tastaþi M-x, Emacs-ul afiºeazã pe ultima linie de pe ecran "M-x" ºi +puteþi introduce numele comenzii - în cazul nostru "replace-string". +Puteþi sã tastaþi doar "repl s" ºi Emacs-ul va completa numele. +Terminaþi comanda cu . + +Comanda replace-string necesitã douã argumente - ºirul ce va fi +înlocuit ºi ºirul înlocuitor. La sfârºitul introducerii fiecãrui +argument trebuie sã tastaþi . + +>> Mutaþi cursorul pe linia goalã care se gãseste douã linii mai jos. + Tastaþi apoi M-x repl smodificatalterat. + + Observaþi modul în care aceastã linie s-a modificat: aþi înlocuit + toate apariþiile cuvântului s-c-h-i-m-b-a-t cu "alterat", dupã + poziþia iniþialã a cursorului. + + +* SALVARE AUTOMATà +------------------ + +Dacã aþi facut schimbãri într-un fiºier, dar nu le-aþi salvat, aceste +schimbãri se pot pierde în cazul în care sistemul se blocheazã. +Pentru a vã proteja munca, Emacs-ul salveazã periodic un fiºier de +"autosalvare" pentru fiecare fiºier pe care îl editaþi. Acest fiºier +are un "#" la început ºi unul la sfârºit; de exemplu, dacã fiºierul +dumneavoastrã se numeste "hello.c", fiºierul de autosalvare +corespunzãtor se va numi "#hello.c#". Când salvaþi fiºierul în mod +normal, Emacs-ul ºterge fiºierul de autosalvare. + +În cazul unei cãderi a sistemului, puteþi sã vã recuperaþi fiºierul de +autosalvare deschizând fiºierul în mod normal (fiºierul pe care îl +editaþi, nu pe cel de autosalvare) ºi tastând dupã aceea M-x recover +file. Când vi se cere confirmarea, tastaþi yes pentru +a continua ºi a recupera fiºierul. + + +* ZONA DE ECOU +-------------- + +Dacã Emacs-ul observã cã tastaþi comenzile încet, vi le va arãta la +marginea de jos a ecranului într-o zona numitã "zona de ecou". Zona +de ecou conþine cea mai de jos linie a ecranului. + + +* LINIA DE MOD +-------------- + +Linia de deasupra zonei de ecou se numeºte "linia de mod" ("mode line" +în limba englezã). Linia de mod conþine ceva de genul: + +--**-Emacs: TUTORIAL (Fundamental)--L670--58%---------------- + +Aceastã linie prezintã informaþii utile despre starea Emacs-ului ºi +despre textul pe care îl editaþi. + +Stiþi deja ce înseamnã numele fiºierului - este fiºierul pe care l-aþi +deschis. -NN%-- indicã poziþia curentã a cursorului în text - NN la +sutã din text este deasupra primei linii de pe ecran. Dacã începutul +fiºierului este vizibil pe ecran, veþi vedea --Top-- în loc de +--00%--. Dacã sfârºitul fiºierului este vizibil pe ecran, veþi vedea +--Bot-- (de la "bottom" în limba englezã). Dacã fiºierul este atât de +mic, încât încape în întregime pe ecran, pe linia de mod veþi vedea +--All--. + +Stelele de la începutul liniei de mod semnalizeazã existenþa unor +modificãri nesalvate în text. Imediat dupã deschiderea fiºierului, +porþiunea respectivã din linia de mod nu conþine nici o stea, doar +minusuri. + +Porþiunea dinãuntrul parantezelor vã spune modul de editare curent. +Modul implicit este "Fundamental", modul pe care îl folosiþi chiar +acum. Este un exemplu de "mod major". + +Emacs-ul are multe moduri majore. Unele dintre ele sunt destinate +editãrii diferitelor limbaje ºi/sau tipuri de text, cum ar fi modul +Lisp, modul Text, etc. Numai un mod major poate fi activ la un moment +dat ºi numele sãu va fi întotdeauna acolo unde este "Fundamental" +acum. + +Fiecare mod major schimbã comportamentul unor comenzi. De exemplu +existã comenzi pentru crearea comentariilor într-un program, dar, cum +fiecare limbaj de programare are o idee diferitã despre felul cum ar +trebui sã arate un comentariu, fiecare mod major trebuie sã le +introducã într-un alt fel. Existã câte o comandã asociatã fiecãrui +mod major - aceasta este modalitatea de a schimba modul major. De +exemplu, M-x fundamental-mode este comanda cu care poate fi ales modul +"Fundamental". + +Dacã editaþi text în limba românã, cum ar fi de exemplu acest fiºier, +ar trebui probabil sã folosiþi modul Text. + +>> Tastaþi M-x text-mode. + +Nu vã temeti, nici una din comenzile pe care le-aþi învãþat pânã acum +nu schimbã Emacs-ul prea mult. Puteþi observa acum cã M-f ºi M-b +trateazã apostrofurile ca parte din cuvinte. Înainte, în modul +Fundamental, M-f ºi M-b tratau apostrofurile ca separatoare de +cuvinte. + +Modurile majore opereazã schimbãri subtile, ca cea descrisã mai sus. +Majoritatea comenzilor executã aceeaºi operaþie în fiecare mod major, +dar funcþioneazã puþin diferit. + +Pentru a vedea documentaþia referitoare la modul major curent, tastaþi +C-h m. + +>> Folosiþi C-u C-v o datã sau de mai multe ori pentru a aduce aceastã + linie aproape de începutul ecranului. Tastaþi C-h m ca sã aflaþi + diferenþele dintre modul Text ºi modul Fundamental. Tastaþi C-x 1 + pentru a ºterge documentaþia de pe ecran. + +Modurile majore se numesc "majore" pentru cã existã ºi moduri minore. +Modurile minore sunt ajustãri minore ale modurilor majore. Fiecare +mod minor poate fi activat sau dezactivat separat, independent de +celelalte moduri minore ºi independent de modul major curent. Puteþi +sã nu folosiþi nici un mod minor, un mod minor sau orice combinaþie de +moduri minore. + +Un mod minor care este foarte util, în mod special când editaþi text, +este modul "Auto Fill". Când acest mod este activat, Emacs-ul sparge +automat liniile la spaþiul dintre cuvinte de fiecare datã când +introducând text creaþi o linie care este prea lungã. + +Puteþi activa modul "Auto Fill" executând M-x auto-fill-mode. +Când acest mod este activat, îl puteþi dezactiva executând aceeaºi +comandã. Dacã modul este dezactivat, aceastã comandã îl activeazã, +când este activat, comanda îl dezactiveazã. Se spune cã aceastã +comandã inverseazã modul. + +>> Tastaþi M-x auto-fill-mode acum. Introduceþi apoi o linie + conþinând "asdf " de mai multe ori, pânã când linia se sparge în + douã. Trebuie sã puneþi spaþii între cuvinte pentru cã Auto Fill + sparge linia numai la spaþii. + +Marginea este stabilitã în mod normal la 70 de caractere, dar puteþi +schimba aceastã valoare cu comanda C-x f. Introduceþi valoarea doritã +ca argument numeric pentru C-x f. + +>> Tastaþi C-x f cu 20 ca argument numeric. (C-u 2 0 C-x f). + Introduceþi apoi un text oarecare ºi observaþi cum Emacs-ul umple + linii de maximum 20 de caractere. Restauraþi marginea la 70 de + caractere folosind din nou C-x f. + +Dacã faceþi schimbãri în mijlocul unui paragraf, modul Auto Fill nu +rearanjeazã paragraful. Pentru a face acest lucru, trebuie sã tastaþi +M-q (META-q) cu cursorul poziþionat înãuntrul paragrafului. + +>> Mutaþi cursorul în paragraful precedent ºi tastaþi M-q. + + +* CÃUTARE +--------- + +Emacs-ul poate cautã ºiruri (grupuri continue de caractere sau +cuvinte) fie înainte, fie înapoi (faþã de poziþia curentã a cursorului +în text). Cãutarea unui ºir este o operaþie ce mutã cursorul; +cursorul este mutat în poziþia corespunzãtoare urmãtoarei apariþii a +ºirului în text. + +Cãutarea este diferitã în Emacs faþã de majoritatea editoarelor, +deoarece este "incrementalã". Asta înseamnã cã execuþia operaþiunii +de cãutare se face în timp ce tastaþi ºirul de cãutat. + +Comanda ce iniþiazã cãutarea este C-s pentru cãutare înainte ºi C-r +pentru cãutare înapoi. AªTEPTAÞI! Nu le încercaþi acum. + +Când tastaþi C-s veþi remarca faptul cã ºirul "I-search" apare ca +prompt în zona de ecou. Aceasta vã spune cã Emacs-ul este în modul de +cãutare incrementalã, aºteptând ca dumneavoastrã sã introduceþi ºirul +pe care doriþi sã-l cãutaþi. Cãutarea poate fi terminatã cu . + +>> Tastaþi acum C-s pentru a porni o cãutare. ÎNCET, câte o singurã + literã la un moment dat, tastaþi cuvântul "cursor", fãcând o pauzã + dupã fiecare caracter tastat ca sã observaþi ce se întamplã cu + cursorul. Acum aþi terminat de cãutat prima apariþie a cuvântului + "cursor". +>> Tastaþi C-s din nou, pentru a cãuta urmãtoarea apariþie a + cuvântului "cursor". +>> Tastaþi acum de patru ori ºi observaþi miºcarea + cursorului. +>> Tastaþi pentru a termina cãutarea. + +Aþi observat ce s-a întamplat? În timpul unei cãutãri incrementale +Emacs-ul încearcã sã se poziþioneze pe prima apariþie a ºirului pe +care l-aþi introdus pânã în momentul respectiv. Dacã vreþi sã vã +poziþionaþi pe urmãtoarea apariþie a cuvântului "cursor", nu trebuie +decât sã tastaþi C-s încã o datã. Dacã nu mai existã o altã apariþie, +Emacs-ul va emite un sunet ºi vã va anunþa cã operaþiunea de cãutare a +eºuat ("failed" în limba englezã). C-g este o altã metodã de a +termina cãutarea. + +OBSERVAÞIE: Pe unele sisteme, C-s va bloca ecranul ºi nu veþi mai +primi nici un rãspuns de la Emacs. Aceasta indicã faptul cã o +"facilitate" a sistemului de operare numitã "controlul fluxului" +("flow control" în limba englezã) intercepteazã caracterul C-s ºi +acesta nu mai ajunge la Emacs. Pentru deblocarea ecranului, apãsaþi +C-q. Puteþi gãsi detalii referitoare la aceastã aºa-numitã +"facilitate" în secþiunea "Spontaneous Entry to Incremental Search" +din manualul Emacs-ului. + +Dacã sunteþi în mijlocul unei cãutãri incrementale ºi tastaþi +, veþi observa cã ultimul caracter în cãutarea incrementalã +este ºters ºi cãutarea se întoarce la poziþia anterioarã. De exemplu, +sã presupunem cã aþi tastat "c", pentru a cãuta prima apariþie a lui +"c". Dacã tastaþi "u", cursorul se va muta la prima apariþie a lui +"cu". Tastaþi acum . Aceasta va ºterge "u"-ul din ºirul de +cãutare ºi cursorul se va muta înapoi la prima apariþie a lui "c". + +Cãutarea incrementalã poate fi terminatã prin tastarea unui caracter +bazat pe CONTROL sau META (cu câteva excepþii - caracterele care sunt +specifice cãutãrii, cum ar fi C-s ºi C-r). + +C-s începe o cãutare care inspecteazã textul de DUPà poziþia curentã a +cursorului. Dacã doriþi sã cãutaþi în textul dinaintea poziþiei +curente a cursorului, folosiþi C-r. Toatã discuþia referitoare la C-s +se aplicã ºi comenzii C-r, cu menþiunea cã direcþia de cãutare este +inversã. + + +* FERESTRE MULTIPLE +------------------- + +Una dintre facilitãþile importante ale Emacs-ului este aceea de a +afiºa pe ecran mai multe ferestre simultan. + +>> Mutaþi cursorul pe aceastã linie ºi tastaþi C-u 0 C-l. + +>> Tastaþi acum C-x 2 pentru a împãrþi ecranul în douã ferestre. + Amândouã ferestrele vor afiºa acest tutorial. Cursorul va rãmane + în fereastra din partea de sus a ecranului. + +>> Tastaþi C-M-v pentru a miºca textul din fereastra de jos. + (Dacã nu aveþi o tastã META, tastaþi ESC C-v.) + +>> Tastaþi C-x o ("o" de la "other" - "cealaltã" în limba + englezã) pentru a muta cursorul în fereastra de jos. + +>> Tastaþi C-v ºi M-v în fereastra de jos pentru a muta textul. + Continuaþi sã citiþi aceste instrucþiuni în fereastra de sus. + +>> Tastaþi C-x o din nou pentru a muta cursorul înapoi în fereastra de + sus. Cursorul va fi plasat în locul unde a fost anterior. + +Puteþi continua sã folosiþi C-x o pentru a vã muta între ferestre. +Fiecare fereastrã are propria ei poziþie a cursorului, dar numai o +fereastrã aratã cursorul la un moment dat. Toate operaþiile normale +de editare au efect în fereastra în care se gãseºte cursorul - +fereastra respectivã se numeºte "fereastra selectatã". + +Comanda C-M-v este foarte utilã când editaþi text într-o fereastrã ºi +folosiþi cealaltã fereastrã pentru a citi documentaþii. Puteþi þine +întotdeauna cursorul în fereastra în care editaþi, în timp ce avansaþi +textul din cealaltã fereastrã cu C-M-v. + +C-M-v este un exemplu de caracter CONTROL-META. Dacã aveþi o tastã +META, puteþi tasta C-M-v þinând apãsate ºi CONTROL ºi META când tastaþi +v. Nu conteazã care dintre CONTROL sau META este apãsatã mai întâi, +pentru cã amândouã acþioneazã prin modificarea caracterului pe care îl +tastaþi. + +Dacã nu aveþi o tastã META ºi folosiþi ESC în loc, ordinea este +importantã: trebuie sã tastaþi ESC urmat de CONTROL-v; CONTROL-ESC v +nu va funcþiona, din cauza faptului cã ESC este un caracter de sine +stãtãtor, nu un modificator. + +>> Tastaþi C-x 1 (în fereastra de sus) ca sã renunþaþi la fereastra + de jos. + +(Dacã aþi tastat C-x 1 în fereastra de jos, aceastã comandã va închide +fereastra de sus. Gândiþi-vã la ea aºa "Pãstreazã doar o fereastrã - +cea în care sunt acum.") + +Nu este nevoie sã afisaþi acelaºi buffer în ambele ferestre. Dacã +folosiþi C-x C-f pentru a deschide un fiºier într-o fereastrã, +cealaltã fereastrã nu se schimbã. Puteþi deschide un fiºier diferit +în fiecare fereastrã. + +O altã modalitate de a folosi douã ferestre ca sã afiºaþi lucruri +diferite: + +>> Tastaþi C-x 4 C-f apoi numele unui fiºier. Terminaþi comanda + cu Observaþi cã fiºierul specificat apare în fereastra de + jos. Cursorul la fel. + +>> Tastaþi C-x o pentru a vã muta în fereastra de sus, apoi tastaþi + C-x 1 pentru a ºterge fereastra de jos. + + +* NIVELURI DE EDITARE RECURSIVà +------------------------------- + +Uneori veþi intra în ceea ce se numeste un "nivel de editare +recursivã". Acesta este indicat de prezenþa unor paranteze drepte în +linia de mod în jurul numelui modului major. De exemplu, s-ar putea +sã vedeþi [(Fundamental)] în loc de (Fundamental). + +Pentru a ieºi din nivelul de editare recursivã, tastaþi ESC ESC ESC. +Aceasta este o comandã de ieºire de uz general. O puteþi folosi ºi ca +sã ieºiþi din minibuffer sau ca sã eliminaþi ferestrele în plus. + +>> Tastaþi M-x pentru a intra în minibuffer; tastaþi apoi ESC ESC ESC + ca sã ieºiþi. + +Nu puteþi folosi C-g pentru a ieºi dintr-un nivel de editare recursivã +deoarece comanda C-g este folositã pentru a anula comenzi ºi argumente +înãuntrul unui nivel de editare recursivã. + + +* CUM PUTEÞI OBÞINE MAI MULTE INFORMAÞII +---------------------------------------- + +În acest tutorial am încercat sã furnizãm suficiente informaþii pentru +a face primii paºi în Emacs. Existã atât de multe comenzi în Emacs +încât ar fi imposibil sã le explicãm pe toate aici. S-ar putea însã +sã doriþi sã învaþaþi mai multe despre Emacs, deoarece oferã foarte +multe facilitaþi interesante. Existã comenzi pentru a citi +documentaþia despre comenzile Emacs-ului. Aceste comenzi ajutãtoare +sunt prefixate cu caracterul C-h, denumit ºi "caracterul de ajutor". + +Pentru a folosi aceste facilitãþi de ajutor, tastaþi caracterul C-h, +apoi un caracter ce specificã tipul de ajutor de care aveþi nevoie. +În cazul în care sunteþi nelãmurit, tastaþi C-h ? ºi Emacs-ul vã va +spune ce fel de ajutor vã poate oferi. Dacã aþi tastat C-h ºi vã +rãzgândiþi (nu mai doriþi ajutor) puteþi tasta C-g pentru a anula +comanda. + +(Anumite site-uri remapeazã caracterul C-h. Nu ar trebui sã facã asta +orbeºte pentru toþi utilizatorii - aveþi motiv sã vã plângeþi +administratorului de sistem. Între timp, dacã C-h nu afiºeazã un +mesaj despre ajutor la marginea de jos a ecranului, încercaþi M-x +help în loc.) + +Comanda elementarã de ajutor este C-h c. Tastaþi C-h, apoi caracterul +c ºi o comandã alcãtuitã dintr-un caracter sau secvenþã de caractere +ºi Emacs-ul va afiºa o scurtã descriere a comenzii. + +>> Tastaþi C-h c C-p. + +Mesajul ar trebui sã fie ceva de genul + + C-p runs the command previous-line + +Aceasta vã spune "numele funcþiei". Numele de funcþii sunt folosite +în principal pentru a adapta ºi extinde Emacs-ul, dar, cum numele +funcþiilor sunt alese în aºa fel încât sã indice actiunea comenzii +respective, ele pot servi ca o documentaþie foarte scurtã, suficientã +ca sã vã aminteascã de comenzi pe care le-aþi învãþat deja. + +Comenzile formate din mai multe caractere (cum ar fi C-x C-s) ºi (dacã +nu aveþi o tasta META, EDIT sau ALT) v sunt de asemenea permise +dupã C-h c. + +Pentru a obþine mai multe informaþii despre o comandã, folosiþi C-h k +în loc de C-h c. + +>> Tastaþi C-h k C-p. + +Aceastã comandã afiºeazã documentaþia ºi numele funcþiei într-o +fereastrã separatã. Când terminaþi de citit, tastaþi q pentru a +o elimina. Nu trebuie sã faceþi acest lucru imediat. Puteþi edita +o vreme, citind textul din fereastra de ajutor. + +Câteva comenzi C-h utile: + + C-h f descrie o funcþie al cãrei nume trebuie sã-l + introduceþi + +>> Încercaþi sã tastaþi C-h f previous-line. + Aceasta afiºeazã toatã informaþia pe care o are Emacs-ul despre + funcþia ce implementeazã comanda C-p. + + C-h a Command Apropos. Tastaþi un cuvânt cheie ºi Emacs-ul va + lista toate funcþiile ºi variabilele ale cãror nume + conþin acel cuvânt cheie. La stânga comenzilor care + pot fi invocate cu M-x va fi afiºatã o steluþã. + Pentru unele comenzi, Command Apropos va lista o + secvenþã de unul sau douã caractere ce executã aceeaºi + comandã. + +>> Tastaþi C-h a fiºier. + +Aceasta afiºeazã într-o altã ferastrã o listã a tuturor comenzilor M-x +al cãror nume conþine "fiºier". Veþi vedea caractere-comandã de genul +C-x C-f listate lângã comanda nume corespunzãtoare (find-file). + +>> Tastaþi C-M-v ca sã deplasaþi conþinutul ferestrei de ajutor. + Faceþi acest lucru de câteva ori. + +>> Tastaþi C-x 1 pentu a ºterge fereastra de ajutor. + + +* CONCLUZII +----------- + +Þineþi minte, pentru a ieºi permanent din Emacs, folosiþi C-x C-c. +Pentru a ieºi temporar într-un shell (în aºa fel încât sã vã puteþi +întoarce la Emacs mai târziu) folosiþi C-z. + +Acest tutorial a fost organizat în aºa fel încât sã fie pe înþelesul +noilor utilizatori - nu vã sfiiþi sã vã plângeþi autorilor dacã gasiþi +ceva neclar! + + +COPIERE +------- + +Acest tutorial este rezultatul prelucrãrii unei serii lungi de +tutoriale pentru Emacs derivate din cel scris de Stuart Cracraft +pentru versiunea iniþialã de Emacs. + +Cu scopul evitãrii oricãror confuzii datorate traducerii, las în +continuare noþita de copyright originalã în limba englezã. + +This version of the tutorial, like GNU Emacs, is copyrighted, and +comes with permission to distribute copies on certain conditions: + +Copyright (C) 1998, 2001, 2002, 2003, 2004, 2005, + 2006, 2007 Free Software Foundation, Inc. + + Permission is granted to anyone to make or distribute verbatim copies + of this document as received, in any medium, provided that the + copyright notice and permission notice are preserved, + and that the distributor grants the recipient permission + for further redistribution as permitted by this notice. + + Permission is granted to distribute modified versions + of this document, or of portions of it, + under the above conditions, provided also that they + carry prominent notices stating who last altered them. + +Condiþiile de copiere a Emacs-ului sunt mai complexe, dar în acelaºi +spirit. Citiþi fiºierul COPYING ºi apoi distribuiþi prietenilor copii +ale Emacs-ului. Contribuiþi la eliminarea obstrucþionismului software +folosind, scriind ºi distribuind free software! + +;;; Local Variables: +;;; coding: iso-latin-2 +;;; End: + +;;; arch-tag: dcf252cf-bd67-4f8d-a440-1ec4b8dbfd70 diff --git a/etc/tutorials/TUTORIAL.ru b/etc/tutorials/TUTORIAL.ru new file mode 100644 index 00000000000..9fc54ba121d --- /dev/null +++ b/etc/tutorials/TUTORIAL.ru @@ -0,0 +1,1162 @@ +õÞÅÂÎÉË Emacs. õÓÌÏ×ÉÑ ÒÁÓÐÒÏÓÔÒÁÎÅÎÉÑ ÐÒÉ×ÅÄÅÎÙ × ËÏÎÃÅ ÆÁÊÌÁ + +äÌÑ ÕÐÒÁ×ÌÅÎÉÑ Emacs ÏÂÙÞÎÏ ÉÓÐÏÌØÚÕÅÔÓÑ ËÌÀÞ (key -- ÓÏÞÅÔÁÎÉÅ ËÌÁ×ÉÛ +ËÌÁ×ÉÁÔÕÒÙ É/ÉÌÉ ËÎÏÐÏË ÍÙÛÉ), ×ËÌÀÞÁÀÝÉÊ × ÓÅÂÑ ËÌÁ×ÉÛÕ CONTROL (ÉÎÏÇÄÁ +ÏÔÍÅÞÁÅÍÁÑ ËÁË CTRL ÉÌÉ CTL) ÉÌÉ ËÌÁ×ÉÛÕ META (ÉÎÏÇÄÁ ÐÏÍÅÞÅÎÎÕÀ ËÁË ALT ÉÌÉ +EDIT). ÷ ÄÁÌØÎÅÊÛÅÍ, ×ÍÅÓÔÏ ÔÏÇÏ, ÞÔÏÂÙ ËÁÖÄÙÊ ÒÁÚ ÐÉÓÁÔØ META ÉÌÉ CONTROL, +ÍÙ ÂÕÄÅÍ ÉÓÐÏÌØÚÏ×ÁÔØ ÓÌÅÄÕÀÝÉÅ ÓÏËÒÁÝÅÎÉÑ: + + C- -- ÓÌÅÄÕÅÔ ÕÄÅÒÖÉ×ÁÔØ ËÌÁ×ÉÛÕ CONTROL, ÐÏËÁ ÎÁÂÉÒÁÅÔÓÑ ÓÉÍ×ÏÌ + . ôÁË, C-f ÄÏÌÖÎÏ ÏÚÎÁÞÁÔØ: ÎÁÖÁÔØ ËÌÁ×ÉÛÕ CONTROL É f. + M- -- ÓÌÅÄÕÅÔ ÕÄÅÒÖÉ×ÁÔØ ËÌÁ×ÉÛÕ META, ÐÏËÁ ÎÁÂÉÒÁÅÔÓÑ ÓÉÍ×ÏÌ + . åÓÌÉ ÎÅÔ ËÌÁ×ÉÛÉ META, ALT ÉÌÉ EDIT, ÔÏ ÎÁÖÍÉÔÅ , + ÏÔÐÕÓÔÉÔÅ ÅÅ, Á ÐÏÔÏÍ ÎÁÂÅÒÉÔÅ ÓÉÍ×ÏÌ . + +÷ÁÖÎÏÅ ÚÁÍÅÞÁÎÉÅ: ÄÌÑ ÚÁ×ÅÒÛÅÎÉÑ ÓÅÁÎÓÁ Emacs, ÎÁÂÅÒÉÔÅ C-x C-c (Ä×Á +ÓÉÍ×ÏÌÁ). óÉÍ×ÏÌÙ ">>" Ó ÌÅ×ÏÊ ÓÔÏÒÏÎÙ ÕËÁÚÙ×ÁÀÔ, ÞÔÏ ×ÁÍ ÎÕÖÎÏ ÄÅÌÁÔØ, +ÞÔÏÂÙ ÐÒÉÍÅÎÉÔØ ËÏÍÁÎÄÕ. îÁÐÒÉÍÅÒ: +<<ðÕÓÔÙÅ ÓÔÒÏËÉ ×ÏËÒÕÇ ×ÓÔÁ×ÌÅÎÙ ËÏÍÁÎÄÏÊ help-with-tutorial>> +[óÅÒÅÄÉÎÁ ÓÔÒÁÎÉÃÙ ÏÓÔÁ×ÌÅÎÁ ÐÕÓÔÏÊ × ÕÞÅÂÎÙÈ ÃÅÌÑÈ. ôÅËÓÔ ÐÒÏÄÏÌÖÁÅÔÓÑ ÎÉÖÅ] +>> ôÅÐÅÒØ ÎÁÖÍÉÔÅ C-v (ÐÒÏÓÍÏÔÒ ÓÌÅÄÕÀÝÅÇÏ ÜËÒÁÎÁ) ÄÌÑ ÐÅÒÅÍÅÝÅÎÉÑ ÎÁ + ÓÌÅÄÕÀÝÉÊ ÜËÒÁÎ. (×ÙÐÏÌÎÉÔÅ ÜÔÕ ËÏÍÁÎÄÕ ÕÄÅÒÖÉ×ÁÑ ËÌÁ×ÉÛÕ CONTROL É + ÎÁÖÉÍÁÑ v). ôÅÐÅÒØ ×Ù ÄÏÌÖÎÙ ÜÔÏ ÓÄÅÌÁÔØ ÅÝÅ ÒÁÚ, ËÏÇÄÁ ÚÁËÏÎÞÉÔÅ ÞÉÔÁÔØ + ÜËÒÁÎ. + +ïÂÒÁÔÉÔÅ ×ÎÉÍÁÎÉÅ ÎÁ ÔÏ, ÞÔÏ, ÐÒÉ ÐÅÒÅÈÏÄÅ Ó ÜËÒÁÎÁ ÎÁ ÜËÒÁÎ ÐÅÒÅËÒÙ×ÁÀÔÓÑ +Ä×Å ÓÔÒÏÞËÉ -- ÜÔÏ ÏÂÅÓÐÅÞÉ×ÁÅÔ ÎÅËÏÔÏÒÕÀ ÎÅÐÒÅÒÙ×ÎÏÓÔØ ×ÏÓÐÒÉÑÔÉÑ, ÔÁË ÞÔÏ +×Ù ÍÏÖÅÔÅ ÐÒÏÄÏÌÖÁÔØ ÞÉÔÁÔØ ÔÅËÓÔ ÎÅ ÔÅÒÑÑ ÎÉÔÉ ÐÏ×ÅÓÔ×Ï×ÁÎÉÑ. + +ðÅÒ×ÏÅ, ÞÔÏ ×ÁÍ ÎÅÏÂÈÏÄÉÍÏ ÚÎÁÔØ -- ÜÔÏ ÔÏ, ËÁË ÐÅÒÅÄ×ÉÇÁÔØÓÑ ÐÏ ÔÅËÓÔÕ ÉÚ +ÏÄÎÏÇÏ ÍÅÓÔÁ × ÄÒÕÇÏÅ. ÷Ù ÕÖÅ ÚÎÁÅÔÅ, ËÁË ÐÅÒÅÍÅÓÔÉÔØÓÑ ×ÐÅÒÅÄ ÎÁ ÏÄÉÎ +ÜËÒÁÎ, ÉÓÐÏÌØÚÕÑ ÓÏÞÅÔÁÎÉÅ ËÌÁ×ÉÛ C-v. äÌÑ ÐÅÒÅÍÅÝÅÎÉÑ ÎÁÚÁÄ ÎÁ ÏÄÉÎ ÜËÒÁÎ, +ÎÁÖÍÉÔÅ M-v (ÕÄÅÒÖÉ×ÁÊÔÅ ËÌÁ×ÉÛÕ META É ÎÁÂÅÒÉÔÅ v, ÉÌÉ ÎÁÖÍÉÔÅ É +ÚÁÔÅÍ v, Á ÅÓÌÉ Õ ×ÁÓ ÎÅÔ ËÌÁ×ÉÛÉ META, EDIT ÉÌÉ ALT). + +>> ÐÏÐÒÏÂÕÊÔÅ ÎÁÂÒÁÔØ M-v, Á ÚÁÔÅÍ C-v, ÎÅÓËÏÌØËÏ ÒÁÚ. + +* ëòáôëéê ðåòåþåîø ëïíáîä +------------------------- + +äÌÑ ÐÒÏÓÍÏÔÒÁ ÉÓÐÏÌØÚÕÀÔÓÑ ÓÌÅÄÕÀÝÉÅ ËÏÍÁÎÄÙ: + + C-v ðÅÒÅÊÔÉ ÎÁ ÏÄÉÎ ÜËÒÁÎ ×ÐÅÒÅÄ + M-v ðÅÒÅÊÔÉ ÎÁ ÏÄÉÎ ÜËÒÁÎ ÎÁÚÁÄ + C-l ïÞÉÓÔÉÔØ ÜËÒÁÎ É ÏÔÏÂÒÁÚÉÔØ ×ÓÅ ÚÁÎÏ×Ï, ÒÁÚÍÅÓÔÉ× ÔÅËÓÔ, ÎÁÈÏÄÑÝÉÊÓÑ + ×ÏÚÌÅ ËÕÒÓÏÒÁ, × ÃÅÎÔÒÅ ÜËÒÁÎÁ. (ÜÔÏ CONTROL-L, Á ÎÅ CONTROL-1.) + +>> îÁÊÄÉÔÅ ËÕÒÓÏÒ, É ÚÁÐÏÍÎÉÔÅ ÔÅËÓÔ ×ÏÚÌÅ ÎÅÇÏ. ðÏÔÏÍ ÎÁÖÍÉÔÅ C-l. + îÁÊÄÉÔÅ ËÕÒÓÏÒ ÓÎÏ×Á É ÕÂÅÄÉÔÅÓØ, ÞÔÏ ×ÏÚÌÅ ÎÅÇÏ ×ÓÅ ÔÏÔ ÖÅ ÔÅËÓÔ. + +÷Ù ÔÁËÖÅ ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ ËÌÁ×ÉÛÉ PageUp É PageDn ÄÌÑ ÐÅÒÅÍÅÝÅÎÉÑ ÍÅÖÄÕ +ÜËÒÁÎÁÍÉ (ÅÓÌÉ ÏÎÉ ÅÓÔØ ÎÁ ×ÁÛÅÍ ÔÅÒÍÉÎÁÌÅ), ÎÏ ×Ù ÓÍÏÖÅÔÅ ÒÁÂÏÔÁÔØ ÂÏÌÅÅ +ÜÆÆÅËÔÉ×ÎÏ, ÅÓÌÉ ÂÕÄÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ ÓÏÞÅÔÁÎÉÑ C-v É M-v. + + +* âáúï÷ùå ëïíáîäù õðòá÷ìåîéñ ëõòóïòïí +------------------------------------- + +ä×ÉÖÅÎÉÅ ÏÔ ÜËÒÁÎÁ Ë ÜËÒÁÎÕ ÕÄÏÂÎÏ, ÎÏ ËÁË ÐÅÒÅÍÅÓÔÉÔØÓÑ × ÏÐÒÅÄÅÌÅÎÎÏÅ +ÍÅÓÔÏ × ÔÅËÓÔÅ ÎÁ ÜËÒÁÎÅ? + +åÓÔØ ÎÅÓËÏÌØËÏ ÓÐÏÓÏÂÏ× ×ÙÐÏÌÎÅÎÉÑ ÜÔÏÊ ÏÐÅÒÁÃÉÉ. ÷Ù ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ +ËÌÁ×ÉÛÉ ÕÐÒÁ×ÌÅÎÉÑ ËÕÒÓÏÒÏÍ (ÓÔÒÅÌËÉ), ÎÏ ÂÏÌÅÅ ÜÆÆÅËÔÉ×ÎÙÍ ÂÕÄÅÔ ÓÏÈÒÁÎÅÎÉÅ +ÒÕË × ÉÈ ÓÔÁÎÄÁÒÔÎÏÊ ÐÏÚÉÃÉÉ É ÉÓÐÏÌØÚÏ×ÁÔØ ËÏÍÁÎÄÙ C-p, C-b, C-f É C-n. üÔÉ +ËÏÍÁÎÄÙ ÜË×É×ÁÌÅÎÔÎÙ ÞÅÔÙÒÅÍ ËÌÁ×ÉÛÁÍ ÐÅÒÅÍÅÝÅÎÉÑ ËÕÒÓÏÒÁ, ËÁË ÜÔÏ ÐÏËÁÚÁÎÏ +ÎÁ ÓÈÅÍÅ: + + ðÒÅÄÙÄÕÝÁÑ ÓÔÒÏËÁ, C-p + : + : + îÁÚÁÄ, C-b .... ôÅËÕÝÁÑ ÐÏÚÉÃÉÑ ËÕÒÓÏÒÁ .... ÷ÐÅÒÅÄ, C-f + : + : + óÌÅÄÕÀÝÁÑ ÓÔÒÏËÁ, C-n + +>> ðÅÒÅÍÅÓÔÉÔÅ ËÕÒÓÏÒ ÎÁ ÓÔÒÏËÕ ÒÑÄÏÍ Ó ÄÉÁÇÒÁÍÍÏÊ, ÉÓÐÏÌØÚÕÑ ÓÏÞÅÔÁÎÉÑ + ËÌÁ×ÉÛ C-n ÉÌÉ C-p. ðÏÔÏÍ, ÎÁÖÍÉÔÅ C-l É ÐÏÓÍÏÔÒÉÔÅ ËÁË ÄÉÁÇÒÁÍÍÁ + ÐÅÒÅÍÅÓÔÉÔÓÑ × ÃÅÎÔÒ ÜËÒÁÎÁ. + +÷ÁÍ ÂÕÄÅÔ ÎÅÓÌÏÖÎÏ ÚÁÐÏÍÎÉÔØ ÜÔÉ ËÏÍÁÎÄÙ ÐÏ ÐÅÒ×ÙÍ ÂÕË×ÁÍ ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÈ +ÓÌÏ× -- B-ÎÁÚÁÄ (backward) É F-×ÐÅÒÅÄ (forward). üÔÏ ÏÓÎÏ×ÎÙÅ ËÏÍÁÎÄÙ +ÐÏÚÉÃÉÏÎÉÒÏ×ÁÎÉÑ ËÕÒÓÏÒÁ, ËÏÔÏÒÙÍÉ ÷Ù ÂÕÄÅÔÅ ÐÏÌØÚÏ×ÁÔØÓÑ ÷óåçäá, ÔÁË ÞÔÏ +ÂÕÄÅÔ ÎÅÐÌÏÈÏ ÉÈ ×ÙÕÞÉÔØ. + +>> îÁÖÍÉÔÅ ÎÅÓËÏÌØËÏ ÒÁÚ C-n, ÞÔÏÂÙ ÏÐÕÓÔÉÔØ ËÕÒÓÏÒ ×ÎÉÚ ÎÁ ÜÔÕ ÓÔÒÏËÕ. + +>> ðÅÒÅÍÅÓÔÉÔÅÓØ ÐÏ ÓÔÒÏËÅ, ÉÓÐÏÌØÚÕÑ C-f É ÐÏÔÏÍ ÐÏÄÎÉÍÉÔÅÓØ ××ÅÒÈ Ó + ÐÏÍÏÝØÀ C-p. ðÏÓÍÏÔÒÉÔÅ, ËÁË ÉÚÍÅÎÉÌÏÓØ ÐÏÌÏÖÅÎÉÅ ËÕÒÓÏÒÁ ÐÒÉ ÎÁÖÁÔÉÉ + ó-Ò, ÅÓÌÉ ÏÎ ÎÁÈÏÄÉÌÓÑ × ÓÅÒÅÄÉÎÅ ÓÔÒÏËÉ. + +ëÁÖÄÁÑ ÓÔÒÏËÁ ÔÅËÓÔÁ ÚÁ×ÅÒÛÁÅÔÓÑ ÓÉÍ×ÏÌÏÍ ÐÅÒÅ×ÏÄÁ ÓÔÒÏËÉ (Newline +character), ËÏÔÏÒÙÊ ÏÔÄÅÌÑÅÔ ÅÅ ÏÔ ÓÌÅÄÕÀÝÅÊ ÓÔÒÏËÉ. ðÏÓÌÅÄÎÑÑ ÓÔÒÏËÁ × +×ÁÛÅÍ ÆÁÊÌÅ ÄÏÌÖÎÁ ÂÙ ÔÏÖÅ ÚÁ×ÅÒÛÁÔØÓÑ ÓÉÍ×ÏÌÏÍ ÐÅÒÅ×ÏÄÁ ÓÔÒÏËÉ (ÎÏ Emacs ÎÅ +ÔÒÅÂÕÅÔ ÜÔÏÇÏ). + +>> ðÏÐÒÏÂÕÊÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ C-b × ÎÁÞÁÌÅ ÓÔÒÏËÉ. ëÕÒÓÏÒ ÄÏÌÖÅÎ ÐÅÒÅÍÅÓÔÉÔØÓÑ + ÎÁ ËÏÎÅà ÐÒÅÄÙÄÕÝÅÊ ÓÔÒÏËÉ. üÔÏ ÐÒÏÉÓÈÏÄÉÔ ÐÏÔÏÍÕ, ÞÔÏ ÏÎ Ä×ÉÖÅÔÓÑ ÎÁÚÁÄ + ÞÅÒÅÚ ÓÉÍ×ÏÌ ÐÅÒÅ×ÏÄÁ ÓÔÒÏËÉ. + +C-f ÍÏÖÅÔ ÐÅÒÅÍÅÝÁÔØ ËÕÒÓÏÒ ÞÅÒÅÚ ÓÉÍ×ÏÌ ÐÅÒÅ×ÏÄÁ ÓÔÒÏËÉ ÔÁË ÖÅ, ËÁË É C-b. + +>> ðÏÐÒÏÂÕÊÔÅ ÎÅÓËÏÌØËÏ ÒÁÚ ÐÒÉÍÅÎÉÔØ C-b ÔÁË, ÞÔÏÂÙ ÷Ù Õ×ÉÄÅÌÉ, ËÁË + Ä×ÉÖÅÔÓÑ ËÕÒÓÏÒ. äÁÌÅÅ ÉÓÐÏÌØÚÕÊÔÅ ÓÏÞÅÔÁÎÉÅ ËÌÁ×ÉÛ C-f ÞÔÏÂÙ ×ÅÒÎÕÔØÓÑ + ÎÁ ËÏÎÅà ÓÔÒÏËÉ. îÁÖÍÉÔÅ C-f ÅÝÅ ÒÁÚ, ÞÔÏÂÙ ÐÅÒÅÊÔÉ Ë ÎÁÞÁÌÕ ÓÌÅÄÕÀÝÅÊ + ÓÔÒÏËÉ. + +ëÏÇÄÁ ×Ù ÐÅÒÅÍÅÝÁÅÔÅÓØ ÚÁ ×ÅÒÈÎÉÊ ÉÌÉ ÎÉÖÎÉÊ ËÒÁÊ ÜËÒÁÎÁ, ÔÅËÓÔ, ÎÁÈÏÄÑÝÉÊÓÑ +ÚÁ ÜËÒÁÎÏÍ, ÓÄ×ÉÇÁÅÔÓÑ ×ÎÕÔÒØ ÜËÒÁÎÁ. üÔÏ ÎÁÚÙ×ÁÅÔÓÑ "ÐÒÏËÒÕÔËÁ +(scrolling)". ðÒÏËÒÕÔËÁ ÐÏÚ×ÏÌÑÅÔ Emacs'Õ ÐÅÒÅÍÅÝÁÔØ ËÕÒÓÏÒ × ÎÕÖÎÏÅ ÍÅÓÔÏ +ÔÅËÓÔÁ ÂÅÚ ÐÅÒÅÍÅÝÅÎÉÑ ÅÇÏ ÚÁ ÐÒÅÄÅÌÙ ÜËÒÁÎÁ. + +>> ðÏÐÒÏÂÕÊÔÅ ÐÅÒÅÍÅÓÔÉÔØ ËÕÒÓÏÒ ÚÁ ÎÉÖÎÀÀ ÇÒÁÎÉÃÕ ÜËÒÁÎÁ, ÉÓÐÏÌØÚÕÑ C-n, É + ÐÏÓÍÏÔÒÉÔÅ, ÞÔÏ ÐÒÏÉÚÏÊÄÅÔ. + +åÓÌÉ ÐÏÓÉÍ×ÏÌØÎÏÅ ÐÅÒÅÍÅÝÅÎÉÅ ÓÌÉÛËÏÍ ÍÅÄÌÅÎÎÏ, ÷Ù ÍÏÖÅÔÅ Ä×ÉÇÁÔØÓÑ ÐÏ +ÓÌÏ×ÁÍ. M-f (META-f) ÐÅÒÅÍÅÝÁÅÔ ×ÐÅÒÅÄ ÎÁ ÓÌÏ×Ï, Á M-b ÎÁÚÁÄ ÎÁ ÓÌÏ×Ï. + +>> îÁÖÍÉÔÅ ÎÅÓËÏÌØËÏ ÒÁÚ M-f É M-b. + +åÓÌÉ ËÕÒÓÏÒ ÎÁÈÏÄÉÔÓÑ × ÓÅÒÅÄÉÎÅ ÓÌÏ×Á, M-f ÐÅÒÅÍÅÓÔÉÔ ÅÇÏ × ËÏÎÅà ÓÌÏ×Á. +åÓÌÉ ËÕÒÓÏÒ ÎÁÈÏÄÉÔÓÑ ÍÅÖÄÕ ÓÌÏ×ÁÍÉ, M-f ÐÅÒÅÍÅÓÔÉÔ ÅÇÏ × ËÏÎÅà ÓÌÅÄÕÀÝÅÇÏ +ÓÌÏ×Á. M-b ÒÁÂÏÔÁÅÔ ÔÏÞÎÏ ÔÁË ÖÅ, ÎÏ × ÐÒÏÔÉ×ÏÐÏÌÏÖÎÏÍ ÎÁÐÒÁ×ÌÅÎÉÉ. + +>> îÁÖÍÉÔÅ M-f É M-b ÎÅÓËÏÌØËÏ ÒÁÚ, ÐÅÒÅÍÅÖÁÑ ÉÈ Ó C-f É C-b -- ÔÁË ×Ù + ÓÍÏÖÅÔÅ ÚÁÍÅÔÉÔØ ÄÅÊÓÔ×ÉÑ M-f É M-b ÉÚ ÒÁÚÎÙÈ ÐÏÚÉÃÉÊ × ÓÌÏ×ÁÈ É ÍÅÖÄÕ + ÎÉÍÉ. + +ïÔÍÅÔØÔÅ ÐÁÒÁÌÌÅÌØ ÍÅÖÄÕ C-f É C-b Ó ÏÄÎÏÊ ÓÔÏÒÏÎÙ, É M-f É M-b Ó +ÄÒÕÇÏÊ. ïÞÅÎØ ÞÁÓÔÏ Meta-ÓÉÍ×ÏÌÙ ÉÓÐÏÌØÚÕÀÔÓÑ ÄÌÑ ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÈ ÏÐÅÒÁÃÉÊ +ÎÁÄ ÅÄÉÎÉÃÁÍÉ, ÏÐÒÅÄÅÌÅÎÎÙÍÉ × ÑÚÙËÅ (ÓÌÏ×Á, ÐÒÅÄÌÏÖÅÎÉÑ, ÁÂÚÁÃÙ), ÔÏÇÄÁ ËÁË +Control-ÓÉÍ×ÏÌÙ ÒÁÂÏÔÁÀÔ Ó ÏÓÎÏ×ÎÙÍÉ ÅÄÉÎÉÃÁÍÉ, ÎÅÚÁ×ÉÓÉÍÏ ÏÔ ÔÏÇÏ, ÞÔÏ ÷Ù +ÒÅÄÁËÔÉÒÕÅÔÅ (ÓÉÍ×ÏÌÙ, ÓÔÒÏËÉ, É Ô.Ä.). + +üÔÁ ÐÁÒÁÌÌÅÌØ ÓÕÝÅÓÔ×ÕÅÔ ÍÅÖÄÕ ÓÔÒÏËÁÍÉ É ÐÒÅÄÌÏÖÅÎÉÑÍÉ: C-a É C-e +ÐÅÒÅÍÅÝÁÅÔ ËÕÒÓÏÒ × ÎÁÞÁÌÏ É ËÏÎÅà ÓÔÒÏËÉ, Á M-a É M-e ÐÅÒÅÍÅÝÁÅÔ ËÕÒÓÏÒ × +ÎÁÞÁÌÏ É ËÏÎÅà ÐÒÅÄÌÏÖÅÎÉÑ. + +>> ðÏÐÒÏÂÕÊÔÅ ÎÁÖÁÔØ ÐÁÒÕ ÒÁÚ C-a, Á ÐÏÔÏÍ ÐÁÒÕ ÒÁÚ C-e. ðÏÐÒÏÂÕÊÔÅ ÐÁÒÕ ÒÁÚ + ÎÁÖÁÔØ M-a, ÐÏÓÌÅ ÜÔÏÇÏ ÐÁÒÕ ÒÁÚ ÎÁÖÁÔØ M-e. + +ðÏÓÍÏÔÒÉÔÅ, ÞÔÏ ÐÏ×ÔÏÒ C-a ÎÉÞÅÇÏ ÎÅ ÉÚÍÅÎÑÅÔ, Á ÐÏ×ÔÏÒ M-a ÐÒÏÄÏÌÖÁÅÔ +Ä×ÉÖÅÎÉÅ ËÕÒÓÏÒÁ Ë ÓÌÅÄÕÀÝÅÍÕ ÐÒÅÄÌÏÖÅÎÉÀ. üÔÏ ÎÅ ÓÏÈÒÁÎÑÅÔ ÁÎÁÌÏÇÉÀ, ÎÏ +×ÙÇÌÑÄÉÔ ÅÓÔÅÓÔ×ÅÎÎÏ. + +ðÏÌÏÖÅÎÉÅ ËÕÒÓÏÒÁ × ÔÅËÓÔÅ ÔÁËÖÅ ÎÁÚÙ×ÁÀÔ "ÔÏÞËÏÊ ×ÓÔÁ×ËÉ". óËÁÖÅÍ ÉÎÁÞÅ: +ËÕÒÓÏÒ ÐÏËÁÚÙ×ÁÅÔ ÍÅÓÔÏ ÎÁ ÜËÒÁÎÅ × ËÁËÏÊ ÔÏÞËÅ ÂÕÄÅÔ ÒÁÓÐÏÌÏÖÅÎ ××ÏÄÉÍÙÊ +ÔÅËÓÔ. + +úÄÅÓØ ÓÏÂÒÁÎÙ ÏÓÎÏ×ÎÙÅ ËÏÍÁÎÄÙ ÐÅÒÅÍÅÝÅÎÉÑ ËÕÒÓÏÒÁ, ×ËÌÀÞÁÑ Ä×ÉÖÅÎÉÅ ÐÏ +ÓÌÏ×ÁÍ É ÐÒÅÄÌÏÖÅÎÉÑÍ: + + C-f îÁ ÓÉÍ×ÏÌ ×ÐÅÒÅÄ + C-b îÁ ÓÉÍ×ÏÌ ÎÁÚÁÄ + + M-f îÁ ÓÌÏ×Ï ×ÐÅÒÅÄ + M-b îÁ ÓÌÏ×Ï ÎÁÚÁÄ + + C-n îÁ ÓÌÅÄÕÀÝÕÀ ÓÔÒÏËÕ + C-p îÁ ÐÒÅÄÙÄÕÝÕÀ ÓÔÒÏËÕ + + C-a ÷ ÎÁÞÁÌÏ ÓÔÒÏËÉ + C-e ÷ ËÏÎÅà ÓÔÒÏËÉ + + M-a îÁÚÁÄ, × ÎÁÞÁÌÏ ÐÒÅÄÌÏÖÅÎÉÑ + M-e ÷ÐÅÒÅÄ, × ËÏÎÅà ÐÒÅÄÌÏÖÅÎÉÑ + +>> ðÏÐÒÏÂÕÊÔÅ ÓÅÊÞÁÓ ÎÁ ÐÒÁËÔÉËÅ ÐÒÉÍÅÎÉÔØ ÎÅÓËÏÌØËÏ ÒÁÚ ×ÓÅ ÜÔÉ ËÏÍÁÎÄÙ. + üÔÏ ÎÁÉÂÏÌÅÅ ÉÓÐÏÌØÚÕÅÍÙÅ ËÏÍÁÎÄÙ. + +ä×Å ÄÒÕÇÉÅ ×ÁÖÎÙÅ ËÏÍÁÎÄÙ Ä×ÉÖÅÎÉÑ ËÕÒÓÏÒÁ M-< (META Less-then +{íÅÎØÛÅ-þÅÍ}), ËÏÔÏÒÁÑ ÐÅÒÅÍÅÝÁÅÔ ËÕÒÓÏÒ × ÎÁÞÁÌÏ ÔÅËÓÔÁ, É M-> (META +Greater-than {âÏÌØÛÅ-þÅÍ}), ËÏÔÏÒÁÑ ÐÅÒÅÍÅÝÁÅÔ ËÕÒÓÏÒ × ËÏÎÅà ÔÅËÓÔÁ. + +îÁ ÂÏÌØÛÉÎÓÔ×Å ÔÅÒÍÉÎÁÌÏ× ÚÎÁË "<" ÎÁÈÏÄÉÔÓÑ ÎÁÄ ÚÎÁËÏÍ ÔÏÞËÉ, É ÞÔÏÂÙ +ÎÁÂÒÁÔØ ÅÇÏ, ×Ù ÄÏÌÖÎÙ ÉÓÐÏÌØÚÏ×ÁÔØ ËÌÁ×ÉÛÕ Shift. îÁ ÜÔÉÈ ÔÅÒÍÉÎÁÌÁÈ ×Ù ÔÁË +ÖÅ ÄÏÌÖÎÙ ÉÓÐÏÌØÚÏ×ÁÔØ Shift, ÞÔÏÂÙ ÎÁÂÒÁÔØ M-< (ÂÅÚ ÕÄÅÒÖÁÎÉÑ ËÌÁ×ÉÛÉ Shift +×Ù ÎÁÂÅÒÅÔÅ M-ÔÏÞËÁ). + +>> óÅÊÞÁÓ ÐÏÐÒÏÂÕÊÔÅ M-<, ÞÔÏÂÙ ÐÅÒÅÍÅÓÔÉÔØÓÑ × ÎÁÞÁÌÏ ÕÞÅÂÎÉËÁ. ðÏÔÏÍ + ÉÓÐÏÌØÚÕÊÔÅ C-v, ÞÔÏÂÙ ×ÅÒÎÕÔØÓÑ ÎÁÚÁÄ. + +>> óÅÊÞÁÓ ÐÏÐÒÏÂÕÊÔÅ M->, ÞÔÏÂÙ ÐÅÒÅÍÅÓÔÉÔØÓÑ Ë ËÏÎÃÕ ÕÞÅÂÎÉËÁ. éÓÐÏÌØÚÕÊÔÅ + M-v, ÞÔÏÂÙ ×ÅÒÎÕÔØÓÑ ÓÎÏ×Á. + +ëÕÒÓÏÒ ÍÏÖÎÏ ÐÅÒÅÍÅÝÁÔØ ËÌÁ×ÉÛÁÍÉ ÕÐÒÁ×ÌÅÎÉÑ ËÕÒÓÏÒÁ (ÓÔÒÅÌËÁÍÉ), ÅÓÌÉ ×ÁÛ +ÔÅÒÍÉÎÁÌ ÏÂÏÒÕÄÏ×ÁÎ ÉÍÉ. íÙ ÒÅËÏÍÅÎÄÕÅÍ ×ÙÕÞÉÔØ C-b, C-f, C-n É C-p ÐÏ ÔÒÅÍ +ÐÒÉÞÉÎÁÍ. ÷Ï-ÐÅÒ×ÙÈ, ÏÎÉ ÒÁÂÏÔÁÀÔ ÎÁ ÌÀÂÙÈ ÔÅÒÍÉÎÁÌÁÈ. ÷Ï-×ÔÏÒÙÈ, ÏÄÎÁÖÄÙ +ÐÏÌÕÞÉ× ÐÒÁËÔÉËÕ ÉÓÐÏÌØÚÏ×ÁÎÉÑ Emacs, ×Ù ÐÏÊÍÅÔÅ, ÞÔÏ ÉÓÐÏÌØÚÏ×ÁÔØ +CTRL-ÓÉÍ×ÏÌÙ ÕÄÏÂÎÅÅ É ÂÙÓÔÒÅÅ, ÞÅÍ ËÎÏÐËÉ ÓÏ ÓÔÒÅÌÏÞËÁÍÉ (ÐÏÔÏÍÕ ÞÔÏ ×Ù ÎÅ +ÕÂÉÒÁÅÔÅ ÒÕËÉ Ó ÏÂÙÞÎÏÇÏ ÉÈ ÐÏÌÏÖÅÎÉÑ ÐÒÉ ÐÅÞÁÔÉ). ÷-ÔÒÅÔØÉÈ, ËÁË ÔÏÌØËÏ ×Ù +ÐÒÉ×ÙËÎÉÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ CTRL-ÓÉÍ×ÏÌÙ, ×Ù ÓÍÏÖÅÔÅ ÔÁË ÖÅ ÌÅÇËÏ ×ÙÕÞÉÔØ É +ÉÓÐÏÌØÚÏ×ÁÔØ ÄÒÕÇÉÅ, ÒÁÓÛÉÒÅÎÎÙÅ ËÏÍÁÎÄÙ ÐÅÒÅÍÅÝÅÎÉÑ ËÕÒÓÏÒÁ. + +âÏÌØÛÉÎÓÔ×Ï ËÏÍÁÎÄ Emacs ÄÏÐÕÓËÁÀÔ ÚÁÄÁÎÉÅ ÃÉÆÒÏ×ÏÇÏ ÁÒÇÕÍÅÎÔÁ; ÄÌÑ +ÂÏÌØÛÉÎÓÔ×Á ËÏÍÁÎÄ, ÜÔÏ ÓÌÕÖÉÔ ÓÞÅÔÞÉËÏÍ ÐÏ×ÔÏÒÅÎÉÊ. þÔÏÂÙ ÚÁÄÁÔØ ÓÞÅÔÞÉË +ÐÏ×ÔÏÒÅÎÉÊ ÄÌÑ ËÏÍÁÎÄÙ, ÎÁÖÍÉÔÅ C-u, ÐÏÔÏÍ ÞÉÓÌÏ ÐÏ×ÔÏÒÅÎÉÊ, É ÕËÁÖÉÔÅ +ËÏÍÁÎÄÕ. åÓÌÉ Õ ×ÁÓ ÅÓÔØ ËÌÁ×ÉÛÁ META (ÉÌÉ EDIT ÉÌÉ ALT), ÔÏ ÃÉÆÒÏ×ÏÊ +ÁÒÇÕÍÅÎÔ ÍÏÖÎÏ ÚÁÄÁÔØ ÄÒÕÇÉÍ ÓÐÏÓÏÂÏÍ: ÎÁÂÅÒÉÔÅ ÃÉÆÒÙ, ÕÄÅÒÖÉ×ÁÑ ËÌÁ×ÉÛÕ +META. íÙ ÒÅËÏÍÅÎÄÕÅÍ ÐÒÉ×ÙËÎÕÔØ Ë ÉÓÐÏÌØÚÏ×ÁÎÉÀ C-u, ÐÏÓËÏÌØËÕ ÜÔÏ ÓÏÞÅÔÁÎÉÅ +ËÌÁ×ÉÛ ÒÁÂÏÔÁÅÔ ÎÁ ÌÀÂÏÍ ÔÅÒÍÉÎÁÌÅ. þÉÓÌÏ×ÏÊ ÁÒÇÕÍÅÎÔ ÔÁËÖÅ ÎÁÚÙ×ÁÅÔÓÑ +"ÐÒÅÆÉËÓÎÙÍ ÁÒÇÕÍÅÎÔÏÍ", ÐÏÓËÏÌØËÕ ×Ù ÚÁÄÁÅÔÅ ÁÒÇÕÍÅÎÔ ÄÏ ×ÙÐÏÌÎÅÎÉÑ +ËÏÍÁÎÄÙ. + +îÁÐÒÉÍÅÒ, C-u 8 C-f ÐÅÒÅÍÅÓÔÉÔ ËÕÒÓÏÒ ÎÁ ×ÏÓÅÍØ ÓÉÍ×ÏÌÏ× ×ÐÅÒÅÄ. + +>> ðÏÐÒÏÂÕÊÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ C-n ÉÌÉ C-p Ó ÃÉÆÒÏ×ÙÍ ÁÒÇÕÍÅÎÔÏÍ, ÞÔÏÂÙ + ÐÅÒÅÍÅÓÔÉÔØ ËÕÒÓÏÒ ÎÁ ÓÔÒÏËÕ ÒÑÄÏÍ Ó ÜÔÏÊ ËÏÍÁÎÄÏÊ. + +íÎÏÇÉÅ ËÏÍÁÎÄÙ ÉÓÐÏÌØÚÕÀÔ ÞÉÓÌÏ×ÏÊ ÁÒÇÕÍÅÎÔ ËÁË ÓÞÅÔÞÉË ÐÏ×ÔÏÒÅÎÉÊ, ÎÏ +ÎÅËÏÔÏÒÙÅ ËÏÍÁÎÄÙ ÉÓÐÏÌØÚÕÀÔ ÅÇÏ ÄÒÕÇÉÍ ÓÐÏÓÏÂÏÍ. îÅËÏÔÏÒÙÅ ËÏÍÁÎÄÙ (ÎÏ ÎÉ +ÏÄÎÁ ÉÚ ÎÉÈ ÎÅ ÂÙÌÁ ÅÝÅ ÏÐÉÓÁÎÁ × ÄÁÎÎÏÍ ÔÅËÓÔÅ) ÉÓÐÏÌØÚÕÀÔ ÅÇÏ ËÁË ÆÌÁÇ -- +ÎÁÌÉÞÉÅ ÐÒÅÆÉËÓÎÏÇÏ ÁÒÇÕÍÅÎÔÁ ×ÎÅ ÚÁ×ÉÓÉÍÏÓÔÉ ÏÔ ÅÇÏ ÚÎÁÞÅÎÉÑ, ÉÚÍÅÎÑÅÔ +ÐÏ×ÅÄÅÎÉÅ ËÏÍÁÎÄÙ. + +äÒÕÇÉÍ ×ÉÄÏÍ ÉÓËÌÀÞÅÎÉÊ Ñ×ÌÑÀÔÓÑ ËÌÀÞÉ C-v É M-v. ðÒÉ ÐÏÌÕÞÅÎÉÉ ÞÉÓÌÏ×ÏÇÏ +ÁÒÇÕÍÅÎÔÁ, ÏÎÉ ÐÒÏËÒÕÞÉ×ÁÀÔ ÜËÒÁÎ ××ÅÒÈ ÉÌÉ ×ÎÉÚ ÎÁ ÕËÁÚÁÎÎÏÅ ÞÉÓÌÏ ÓÔÒÏË, +×ÍÅÓÔÏ ÔÁËÏÇÏ ÖÅ ÞÉÓÌÁ ÜËÒÁÎÏ×. îÁÐÒÉÍÅÒ, C-u 8 C-v ÐÒÏËÒÕÔÉÔ ÜËÒÁÎ ÎÁ 8 +ÓÔÒÏË. + +>> óÅÊÞÁÓ ÐÏÐÒÏÂÕÊÔÅ ËÏÍÂÉÎÁÃÉÀ C-u 8 C-v. + +üÔÁ ËÏÍÁÎÄÁ ÄÏÌÖÎÁ ÐÒÏËÒÕÔÉÔØ ÜËÒÁÎ ÎÁ 8 ÓÔÒÏË ××ÅÒÈ. åÓÌÉ ×Ù ÈÏÔÉÔÅ +ÐÒÏËÒÕÔÉÔØ ÅÇÏ ×ÎÉÚ, ÍÏÖÅÔÅ ÚÁÄÁÔØ ÁÒÇÕÍÅÎÔ ÄÌÑ M-v. + +åÓÌÉ ×Ù ÉÓÐÏÌØÚÕÅÔÅ ÏËÏÎÎÕÀ ÓÉÓÔÅÍÕ, ÔÁËÕÀ ËÁË X11 ÉÌÉ MS-Windows, ÔÏ ÄÏÌÖÎÁ +ÂÙÔØ ×ÉÄÎÁ ÐÒÑÍÏÕÇÏÌØÎÁÑ ÏÂÌÁÓÔØ, ÉÍÅÎÕÅÍÁÑ ÐÏÌÏÓÏÊ ÐÒÏËÒÕÔËÉ, ËÏÔÏÒÁÑ ×ÉÄÎÁ +Ó ÌÅ×ÏÊ ÓÔÏÒÏÎÙ ÏËÎÁ Emacs. ÷Ù ÍÏÖÅÔÅ ÐÒÏËÒÕÞÉ×ÁÔØ ÔÅËÓÔ, ÉÓÐÏÌØÚÕÑ +ÍÁÎÉÐÕÌÑÔÏÒ ÍÙÛØ. + +>> ðÏÐÒÏÂÕÊÔÅ ÐÅÒÅÍÅÝÁÔØ ÍÙÛØ ÐÒÉ ÎÁÖÁÔÏÊ ÓÒÅÄÎÅÊ ËÎÏÐËÅ ÍÙÛÉ. ÷Ù Õ×ÉÄÉÔÅ + ËÁË ÔÅËÓÔ ÐÒÏËÒÕÞÉ×ÁÅÔÓÑ ××ÅÒÈ É ×ÎÉÚ. + + +* õðòá÷ìåîéå ëõòóïòïí îá X-ôåòíéîáìå +------------------------------------ + +åÓÌÉ Õ ×ÁÓ X-ÔÅÒÍÉÎÁÌ, ÔÏ ÄÌÑ ÕÐÒÁ×ÌÅÎÉÑ ËÕÒÓÏÒÏÍ, ×ÁÍ ×ÅÒÏÑÔÎÏ ÐÏËÁÖÅÔÓÑ +ÂÏÌÅÅ ÌÅÇËÉÍ ÉÓÐÏÌØÚÏ×ÁÎÉÅ ËÌÁ×ÉÛ ËÕÒÓÏÒÁ ÎÁ ÃÉÆÒÏ×ÏÊ ËÌÁ×ÉÁÔÕÒÅ +(ÓÐÒÁ×Á). óÔÒÅÌËÉ ×ÌÅ×Ï, ×ÐÒÁ×Ï, ××ÅÒÈ É ×ÎÉÚ ÐÅÒÅÄ×ÉÇÁÀÔ ËÕÒÓÏÒ × +ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÅÍ ÎÁÐÒÁ×ÌÅÎÉÉ -- ÏÎÉ ÒÁÂÏÔÁÀÔ ÔÏÞÎÏ ÔÁËÖÅ ËÁË C-b, C-f, C-p É +C-n, ÎÏ ÌÅÇÞÅ × ÎÁÂÏÒÅ É ÚÁÐÏÍÉÎÁÎÉÉ. ÷Ù ÔÁË ÖÅ ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ +ÓÏÞÅÔÁÎÉÑ C-left É C-right ÄÌÑ ÐÅÒÅÄ×ÉÖÅÎÉÑ ÐÏ ÓÌÏ×ÁÍ, É C-up É C-down ÄÌÑ +ÐÅÒÅÄ×ÉÖÅÎÉÑ ÐÏ ÂÌÏËÁÍ (Ô.Å. ÐÁÒÁÇÒÁÆÁÍ, ÅÓÌÉ ×Ù ÒÅÄÁËÔÉÒÕÅÔÅ ÔÅËÓÔ). åÓÌÉ +Õ ×ÁÓ ÅÓÔØ ËÎÏÐËÉ ÐÏÍÅÞÅÎÎÙÅ HOME (ÉÌÉ BEGIN) É/ÉÌÉ END, ÔÏ ÏÎÉ ÂÕÄÕÔ +ÐÅÒÅÍÅÝÁÔØ ËÕÒÓÏÒ × ÎÁÞÁÌÏ É ËÏÎÅà ÓÔÒÏËÉ, Á C-home É C-end ÂÕÄÕÔ ÐÅÒÅÍÅÝÁÔØ +× ÎÁÞÁÌÏ É ËÏÎÅà ÆÁÊÌÁ. åÓÌÉ ÎÁ ×ÁÛÅÊ ËÌÁ×ÉÁÔÕÒÅ ÅÓÔØ ËÎÏÐËÉ PgUp É PgDn, +ÔÏ ×Ù ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ ÉÈ ÄÌÑ ÐÅÒÅÍÅÝÅÎÉÑ ××ÅÒÈ É ×ÎÉÚ ÐÏÓÔÒÁÎÉÞÎÏ, +ÁÎÁÌÏÇÉÞÎÏ ÉÓÐÏÌØÚÏ×ÁÎÉÀ M-v É C-v. + +÷ÓÅ ÜÔÉ ËÏÍÁÎÄÙ ÍÏÇÕÔ ÉÓÐÏÌØÚÏ×ÁÔØ ÃÉÆÒÏ×ÏÊ ÁÒÇÕÍÅÎÔ, ÔÁË, ËÁË Ï ÜÔÏÍ +ÒÁÓÓËÁÚÁÎÏ ×ÙÛÅ. ÷Ù ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ ÕÓËÏÒÅÎÎÙÊ ÓÐÏÓÏ ××ÏÄÁ ÜÔÏÇÏ +ÁÒÇÕÍÅÎÔÁ: ÐÒÏÓÔÏ ÎÁÖÍÉÔÅ CONTROL ÉÌÉ META É ÎÁÂÅÒÉÔÅ ÞÉÓÌÏ. îÁÐÒÉÍÅÒ, ÄÌÑ +ÐÅÒÅÍÅÝÅÎÉÑ ÎÁ 12 ÓÌÏ× ×ÐÒÁ×Ï, ÎÁÂÅÒÉÔÅ C-1 C-2 C-right. úÁÐÏÍÎÉÔÅ ÞÔÏ ÔÁË +ÏÞÅÎØ ÌÅÇËÏ ÎÁÂÉÒÁÔØ, ÐÏÔÏÍÕ ÞÔÏ ×Ù ÎÅ ÏÔÐÕÓËÁÅÔÅ ËÎÏÐËÕ CONTROL ÍÅÖÄÕ +ÎÁÖÁÔÉÑÍÉ. + + +* åóìé EMACS úá÷éó +------------------ + +åÓÌÉ Emacs ÐÅÒÅÓÔÁÌ ÒÅÁÇÉÒÏ×ÁÔØ ÎÁ ×ÁÛÉ ËÏÍÁÎÄÙ, ÔÏ ×Ù ÍÏÖÅÔÅ ÉÚÂÅÖÁÔØ ÜÔÏÇÏ +ÐÒÏÓÔÏ ÎÁÖÁ× C-g. ÷Ù ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ C-g, ÞÔÏÂÙ ÏÓÔÁÎÏ×ÉÔØ ×ÙÐÏÌÎÅÎÉÅ +ËÏÍÁÎÄ, ËÏÔÏÒÙÅ ÓÌÉÛËÏÍ ÄÏÌÇÏ ×ÙÐÏÌÎÑÀÔÓÑ. + +÷Ù ÔÁËÖÅ ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ C-g ÄÌÑ ÏÔÍÅÎÙ ÎÁÂÒÁÎÎÏÇÏ ÃÉÆÒÏ×ÏÇÏ ÁÒÇÕÍÅÎÔÁ +ÉÌÉ ËÏÍÁÎÄÙ, ËÏÔÏÒÁÑ ÎÁÞÁÌÁ ×ÙÐÏÌÎÑÔØÓÑ, ÎÏ ËÏÔÏÒÕÀ ×Ù ÎÅ ÈÏÔÉÔÅ ÚÁ×ÅÒÛÁÔØ. + +>> îÁÂÅÒÉÔÅ C-u 100 ÄÌÑ ÚÁÄÁÎÉÑ ÁÒÇÕÍÅÎÔÁ 100, ÐÏÔÏÍ ÎÁÖÍÉÔÅ C-g. ôÅÐÅÒØ + ÎÁÖÍÉÔÅ C-f. ëÕÒÓÏÒ ÄÏÌÖÅÎ ÐÅÒÅÍÅÓÔÉÔØÓÑ ×ÓÅÇÏ ÎÁ ÏÄÉÎ ÓÉÍ×ÏÌ, ÐÏÔÏÍÕ ÞÔÏ + ×Ù ÏÔÍÅÎÉÌÉ ÁÒÇÕÍÅÎÔ ÎÁÖÁÔÉÅÍ C-g. + +åÓÌÉ ×Ù ÎÁÖÁÌÉ ÐÏ ÏÛÉÂËÅ, ÔÏ ×Ù ÔÁË ÖÅ ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ C-g ÞÔÏÂÙ +ÉÚÂÅÖÁÔØ ×ÏÚÄÅÊÓÔ×ÉÑ ÄÁÎÎÏÊ ËÏÍÁÎÄÙ. + + +* úáðòåýåîîùå ëïíáîäù (DISABLED COMMANDS) +----------------------------------------- + +îÅËÏÔÏÒÙÅ ËÏÍÁÎÄÙ Emacs "ÚÁÐÒÅÝÅÎÙ", ÐÏÓËÏÌØËÕ ÎÁÞÉÎÁÀÝÉÅ ÐÏÌØÚÏ×ÁÔÅÌÉ ÍÏÇÕÔ +ÓÌÕÞÁÊÎÏ ÉÓÐÏÌØÚÏ×ÁÔØ ÉÈ ÄÌÑ ÓÏ×ÅÒÛÅÎÉÑ ÏÐÁÓÎÙÈ ÄÅÊÓÔ×ÉÊ. + +åÓÌÉ ×Ù ÎÁÂÒÁÌÉ ÏÄÎÕ ÉÚ ÚÁÐÒÅÝÅÎÎÙÈ ËÏÍÁÎÄ, ÔÏ Emacs ÐÏËÁÖÅÔ ÓÏÏÂÝÅÎÉÅ +ÇÏ×ÏÒÑÝÅÅ Ï ÔÏÍ, ËÁËÁÑ ËÏÍÁÎÄÁ ×ÙÚÙ×ÁÅÔÓÑ, É ÚÁÐÒÏÓÉÔ Õ ×ÁÓ, ÈÏÔÉÔÅ ÌÉ ×Ù +ÐÒÏÄÏÌÖÁÔØ ÒÁÂÏÔÕ É ×ÙÐÏÌÎÑÔØ ÄÁÎÎÕÀ ËÏÍÁÎÄÕ. + +åÓÌÉ ×Ù ÄÅÊÓÔ×ÉÔÅÌØÎÏ ÐÏÐÒÏÂÏ×ÁÔØ ×ÙÐÏÌÎÉÔØ ËÏÍÁÎÄÕ, ÔÏ ÎÁÖÍÉÔÅ ËÌÁ×ÉÛÕ + (ÐÒÏÂÅÌ) × ÏÔ×ÅÔ ÎÁ ÚÁÄÁÎÎÙÊ ×ÏÐÒÏÓ. ïÂÙÞÎÏ, ÅÓÌÉ ×Ù ÎÅ ÈÏÔÉÔÅ +×ÙÐÏÌÎÑÔØ ÚÁÐÒÅÝÅÎÎÕÀ ËÏÍÁÎÄÕ, ÔÏ ÏÔ×ÅÔØÔÅ ÎÁ ×ÏÐÒÏÓ ÎÁÖÁÔÉÅÍ ËÌÁ×ÉÛÉ "n". + +>> îÁÖÍÉÔÅ `C-x C-l' (×ÙËÌÀÞÅÎÎÁÑ ËÏÍÁÎÄÁ), Á ÐÏÔÏÍ ÏÔ×ÅÔØÔÅ "n" ÎÁ ÚÁÄÁÎÎÙÊ + ×ÏÐÒÏÓ. + + +* ïëîá +------ + +Emacs ÍÏÖÅÔ ÏÔÏÂÒÁÖÁÔØ ÉÎÆÏÒÍÁÃÉÀ × ÎÅÓËÏÌØËÉÈ ÏËÎÁÈ, ËÁÖÄÏÅ ÉÚ ËÏÔÏÒÙÈ +ÏÔÏÂÒÁÖÁÅÔ Ó×ÏÊ ÔÅËÓÔ. ðÏÚÖÅ ÍÙ ÏÂßÑÓÎÉÍ ËÁË ÒÁÂÏÔÁÔØ Ó ÎÅÓËÏÌØËÉÍÉ ÏËÎÁÍÉ. +ðÒÑÍÏ ÓÅÊÞÁÓ ÍÙ ÈÏÔÉÍ ÏÂßÑÓÎÉÔØ ×ÁÍ ËÁË ÉÚÂÁ×ÌÑÔØÓÑ ÏÔ ÌÉÛÎÉÈ ÏËÏÎ É +×ÅÒÎÕÔØÓÑ Ë ÒÅÄÁËÔÉÒÏ×ÁÎÉÀ × ÏÄÎÏÍ ÏËÎÅ. üÔÏ ÏÞÅÎØ ÐÒÏÓÔÏ ÓÄÅÌÁÔØ: + + C-x 1 ïÄÎÏ ÏËÎÏ. (ÚÁËÒÙÔØ ×ÓÅ ÄÒÕÇÉÅ ÏËÎÁ). + +üÔÏ CONTROL-x ÓÏ ÓÌÅÄÕÀÝÅÊ ÃÉÆÒÏÊ 1. C-x 1 ÒÁÚ×ÅÒÎÅÔ ÏËÎÏ, ËÏÔÏÒÏÅ ÓÏÄÅÒÖÉÔ +ËÕÒÓÏÒ, ÔÁË, ÞÔÏÂÙ ÏÎÏ ÚÁÎÑÌÏ ×ÅÓØ ÜËÒÁÎ. ðÒÉ ÜÔÏÍ ÂÕÄÕÔ ÕÄÁÌÅÎÙ ×ÓÅ +ÏÓÔÁÌØÎÙÅ ÏËÎÁ. + +>> ðÅÒÅÍÅÓÔÉÔÅ ËÕÒÓÏÒ ÎÁ ÜÔÕ ÓÔÒÏËÕ É ÎÁÖÍÉÔÅ C-u 0 C-l. + +>> îÁÂÅÒÉÔÅ CONTROL-h k CONTROL-f. + ðÏÓÍÏÔÒÉÔÅ, ËÁË ÔÅËÕÝÅÅ ÏËÎÏ ÓÏÖÍÅÔÓÑ, ËÏÇÄÁ ÎÏ×ÏÅ ÐÏÑ×ÉÔÓÑ É ÏÔÏÂÒÁÚÉÔ + ÄÏËÕÍÅÎÔÁÃÉÀ ÎÁ ÓÏÞÅÔÁÎÉÅ ËÌÁ×ÉÛ CONTROL-f. + +>> îÁÂÅÒÉÔÅ C-x 1 É ÐÏÓÍÏÔÒÉÔÅ, ËÁË ÏËÎÏ Ó ÄÏËÕÍÅÎÔÁÃÉÅÊ ÉÓÞÅÚÎÅÔ. + +üÔÁ ËÏÍÁÎÄÁ ÏÔÌÉÞÁÅÔÓÑ ÏÔ ÄÒÕÇÉÈ ËÏÍÁÎÄ, ËÏÔÏÒÙÅ ×Ù ÉÚÕÞÉÌÉ, ÔÅÍ, ÞÔÏ ÏÎÁ +ÓÏÓÔÏÉÔ ÉÚ Ä×ÕÈ ÓÉÍ×ÏÌÏ×. ïÎÁ ÎÁÞÉÎÁÅÔÓÑ ÓÏ ÚÎÁËÁ CONTROL-x. åÓÔØ ÃÅÌÙÊ +ÎÁÂÏÒ ËÏÍÁÎÄ, ËÏÔÏÒÙÅ ÎÁÞÉÎÁÀÔÓÑ Ó CONTROL-x; ÍÎÏÇÉÅ ÉÚ ÎÉÈ ÒÁÂÏÔÁÀÔ Ó +ÏËÎÁÍÉ, ÂÕÆÅÒÁÍÉ, ÆÁÊÌÁÍÉ É ÁÎÁÌÏÇÉÞÎÙÍÉ ×ÅÝÁÍÉ. üÔÉ ËÏÍÁÎÄÙ ÓÏÓÔÏÑÔ ÉÚ +Ä×ÕÈ, ÔÒÅÈ ÉÌÉ ÞÅÔÙÒÅÈ ÚÎÁËÏ×. + + +* ÷óôá÷ëá é õäáìåîéå +-------------------- + +åÓÌÉ ×Ù ÈÏÔÉÔÅ ×ÓÔÁ×ÉÔØ ÔÅËÓÔ, ÔÏ ÐÒÏÓÔÏ ÎÁÂÉÒÁÊÔÅ ÅÇÏ. óÉÍ×ÏÌÙ, ËÏÔÏÒÙÅ ×Ù +ÍÏÖÅÔÅ ×ÉÄÅÔØ, ÔÁËÉÅ ËÁË A, 7, *, É ÐÒ. ÐÏÎÉÍÁÀÔÓÑ Emacs'ÏÍ ËÁË ÔÅËÓÔ É +×ÓÔÁ×ÌÑÀÔÓÑ ÎÅÍÅÄÌÅÎÎÏ. îÁÖÍÉÔÅ (ËÎÏÐËÁ ÐÅÒÅ×ÏÄÁ ËÁÒÅÔËÉ) ÞÔÏÂÙ +×ÓÔÁ×ÉÔØ ÓÉÍ×ÏÌ ÎÏ×ÏÊ ÓÔÒÏËÉ. + +÷Ù ÍÏÖÅÔÅ ÕÄÁÌÉÔØ ÎÁÂÒÁÎÎÙÊ ÓÉÍ×ÏÌ ÎÁÖÉÍÁÑ ËÌÁ×ÉÛÕ . -- +ÜÔÏ ËÌÁ×ÉÛÁ ÎÁ ËÌÁ×ÉÁÔÕÒÅ, ËÏÔÏÒÕÀ ×Ù ÉÓÐÏÌØÚÕÅÔÅ É ×ÎÅ Emacs ÄÌÑ ÕÄÁÌÅÎÉÑ +ÐÏÓÌÅÄÎÅÇÏ ÎÁÂÒÁÎÎÏÇÏ ÓÉÍ×ÏÌÁ. ïÂÙÞÎÏ, ÜÔÏ ÂÏÌØÛÁÑ ËÌÁ×ÉÛÁ, ÒÁÓÐÏÌÏÖÅÎÎÁÑ +ÎÁ ÎÅÓËÏÌØËÏ ÓÔÒÏË ×ÙÛÅ ËÌÁ×ÉÛÉ ; ÏÂÙÞÎÏ ÏÎÁ ÐÏÍÅÞÅÎÁ ËÁË "Delete", +"Del" ÉÌÉ "Backspace". + +åÓÌÉ ÂÏÌØÛÁÑ ËÌÁ×ÉÛÁ ÐÏÍÅÞÅÎÁ ËÁË "Backspace", ÔÏ ÜÔÏ ÔÏ, ÞÔÏ ×ÁÍ ÎÕÖÎÏ +ÉÓÐÏÌØÚÏ×ÁÔØ ÔÏÇÄÁ, ËÏÇÄÁ ×Ù ÂÕÄÅÔÅ ÞÉÔÁÔØ ÐÒÏ . õ ×ÁÓ ÔÁËÖÅ ÍÏÖÅÔ +ÂÙÔØ ËÌÁ×ÉÛÁ, ÐÏÍÅÞÅÎÎÁÑ ËÁË "Delete", ÎÏ ÏÎÁ ÉÍÅÅÔ ÄÒÕÇÕÀ ÆÕÎËÃÉÀ, ÏÔÌÉÞÎÕÀ +ÏÔ . + +÷ ÏÓÎÏ×ÎÏÍ, ÕÄÁÌÑÅÔ ÓÉÍ×ÏÌ ÎÅÐÏÓÒÅÄÓÔ×ÅÎÎÏ ÐÅÒÅÄ ÔÅËÕÝÅÊ ÐÏÚÉÃÉÅÊ +ËÕÒÓÏÒÁ. + +>> ðÏÐÒÏÂÕÊÔÅ ×ÙÐÏÌÎÉÔØ ÜÔÏ ÓÅÊÞÁÓ -- ÎÁÂÅÒÉÔÅ ÎÅÓËÏÌØËÏ ÓÉÍ×ÏÌÏ×, Á ÚÁÔÅÍ + ÕÄÁÌÉÔÅ ÉÈ ÎÁÖÉÍÁÑ . îÅ ×ÏÌÎÕÊÔÅÓØ Ï ÉÚÍÅÎÅÎÉÑÈ ÜÔÏÇÏ ÆÁÊÌÁ -- + ×Ù ÎÅ ÉÚÍÅÎÑÅÔÅ ÇÌÁ×ÎÙÊ ÕÞÅÂÎÉË; ÜÔÏ ×ÁÛÁ ÌÉÞÎÁÑ ËÏÐÉÑ ÕÞÅÂÎÉËÁ. + +ëÏÇÄÁ ÓÔÒÏËÁ ÔÅËÓÔÁ ÓÔÁÎÏ×ÉÔÓÑ ÓÌÉÛËÏÍ ÂÏÌØÛÏÊ ÄÌÑ ÓÔÒÏËÉ ÜËÒÁÎÁ, ÔÏ ÏÎÁ +"ÐÒÏÄÏÌÖÁÅÔÓÑ" ÎÁ ÓÌÅÄÕÀÝÅÊ ÓÔÒÏËÅ ÜËÒÁÎÁ. óÉÍ×ÏÌ "ÏÂÒÁÔÎÙÊ ÓÌÜÛ" ("\") (ÉÌÉ +ÅÓÌÉ ×Ù ÉÓÐÏÌØÚÕÅÔÅ ÏËÏÎÎÕÀ ÓÉÓÔÅÍÕ, ÔÏ ÜÔÏ ÂÕÄÅÔ ÚÎÁÞÏË × ×ÉÄÅ ÍÁÌÅÎØËÏÊ +ÉÚÏÇÎÕÔÏÊ ÓÔÒÅÌËÉ) Ó ÐÒÁ×ÏÊ ÇÒÁÎÉÃÙ ÐÏËÁÚÙ×ÁÅÔ, ÞÔÏ ÓÔÒÏËÁ ÂÕÄÅÔ +ÐÒÏÄÏÌÖÁÅÔÓÑ Ó ÐÒÅÄÙÄÕÝÅÊ ÓÔÒÏËÉ. + +>> ÷×ÏÄÉÔÅ ÔÅËÓÔ, ÐÏËÁ ÏÎ ÎÅ ÄÏÓÔÉÇÎÅÔ ÐÒÁ×ÏÊ ÇÒÁÎÉÃÙ, É ÐÒÏÄÏÌÖÁÊÔÅ ×ÓÔÁ×ËÕ + ÓÉÍ×ÏÌÏ×. ÷Ù Õ×ÉÄÉÔÅ, ËÁË ÐÏÑ×ÉÔÓÑ ÓÉÍ×ÏÌ ÐÒÏÄÏÌÖÅÎÉÑ ÓÔÒÏËÉ. + +>> éÓÐÏÌØÚÕÊÔÅ ÄÌÑ ÕÄÁÌÅÎÉÑ ÔÅËÓÔÁ, ÄÏ ÔÅÈ ÐÏÒ, ÐÏËÁ ÓÔÒÏËÁ ÎÅ + ÐÏÍÅÓÔÉÔÓÑ × ÜËÒÁÎ ÓÎÏ×Á. óÉÍ×ÏÌ ÐÒÏÄÏÌÖÅÎÉÑ ÓÔÒÏËÉ ÉÓÞÅÚÎÅÔ Ó ÜËÒÁÎÁ. + +óÉÍ×ÏÌ ÎÏ×ÏÊ ÓÔÒÏËÉ ÍÏÖÎÏ ÕÄÁÌÑÔØ ÔÏÞÎÏ ÔÁË ÖÅ, ËÁË É ÌÀÂÏÊ ÄÒÕÇÏÊ ÓÉÍ×ÏÌ. +õÄÁÌÅÎÉÅ ÓÉÍ×ÏÌÁ ÎÏ×ÏÊ ÓÔÒÏËÉ ÍÅÖÄÕ Ä×ÕÍÑ ÓÔÒÏËÁÍÉ ÐÒÉ×ÅÄÅÔ Ë ÉÈ ÓËÌÅÊËÅ × +ÏÄÎÕ. åÓÌÉ ÐÏÌÕÞÅÎÎÁÑ ÓÔÒÏËÁ ÂÕÄÅÔ ÓÌÉÛËÏÍ ÄÌÉÎÎÏÊ, ÞÔÏÂÙ ×ÍÅÓÔÉÔØÓÑ × +ÜËÒÁÎ, ÔÏ ÏÎÁ ÂÕÄÅÔ ÏÔÏÂÒÁÖÅÎÁ ËÁË ÓÔÒÏËÁ Ó ÐÒÏÄÏÌÖÅÎÉÅÍ, ËÁË ÜÔÏ ÂÙÌÏ +ÏÐÉÓÁÎÏ ×ÙÛÅ. + +>> ðÅÒÅÍÅÓÔÉÔÅ ËÕÒÓÏÒ × ÎÁÞÁÌÏ ÓÔÒÏËÉ É ÎÁÖÍÉÔÅ . üÔÏ ÓÏÅÄÉÎÉÔ + ÔÅËÕÝÕÀ ÓÔÒÏËÕ Ó ÐÒÅÄÙÄÕÝÅÊ. + +>> îÁÖÍÉÔÅ ÄÌÑ ×ÓÔÁ×ËÉ ÎÏ×ÏÇÏ ÓÉÍ×ÏÌÁ ÓÔÒÏËÉ, ×ÍÅÓÔÏ ÕÄÁÌÅÎÎÏÇÏ + ×ÁÍÉ. + +ðÏÍÎÉÔÅ, ÞÔÏ ÍÎÏÇÉÅ ËÏÍÁÎÄÙ Emacs ÍÏÇÕÔ ÐÏÌÕÞÁÔØ ÓÞÅÔÞÉË ÐÏ×ÔÏÒÅÎÉÑ; ÐÒÏÓÔÙÅ +ÓÉÍ×ÏÌÙ ÎÅ Ñ×ÌÑÀÔÓÑ ÉÓËÌÀÞÅÎÉÅÍ. ÷Ù ÍÏÖÅÔÅ ×ÓÔÁ×ÌÑÔØ ÐÏ ÎÅÓËÏÌØËÏ ÓÉÍ×ÏÌÏ×, +ÉÓÐÏÌØÚÕÑ ÓÞÅÔÞÉËÉ ÐÏ×ÔÏÒÅÎÉÊ. + +>> ðÏÐÒÏÂÕÊÔÅ ÐÒÏ×ÅÒÉÔØ ÜÔÏ -- ÎÁÂÅÒÉÔÅ C-u 8 * ÄÌÑ ×ÓÔÁ×ËÉ ********. + +ôÅÐÅÒØ ×Ù ÎÁÕÞÉÌÉÓØ ÏÓÎÏ×ÁÍ ÎÁÂÏÒÁ ÔÅËÓÔÁ × Emacs É ÉÓÐÒÁ×ÌÅÎÉÑ ÏÛÉÂÏË. ÷Ù +ÔÁËÖÅ ÍÏÖÅÔÅ ÕÄÁÌÑÔØ ÓÌÏ×Á É ÓÔÒÏËÉ. úÄÅÓØ ÐÒÉ×ÅÄÅÎ ÓÐÉÓÏË ÏÐÅÒÁÃÉÊ +ÕÄÁÌÅÎÉÑ: + + ÕÄÁÌÉÔØ ÓÉÍ×ÏÌ ÐÅÒÅÄ ËÕÒÓÏÒÏÍ + C-d ÕÄÁÌÉÔØ ÓÉÍ×ÏÌ ÓÌÅÄÕÀÝÉÊ ÚÁ (ÎÁÄ) ËÕÒÓÏÒÏÍ + + M- õÂÉÔØ ÓÔÒÏËÕ ÎÅÐÏÓÒÅÄÓÔ×ÅÎÎÏ ÐÅÒÅÄ ËÕÒÓÏÒÏÍ + M-d õÂÉÔØ ÓÌÏ×Ï ÓÌÅÄÕÀÝÅÅ ÚÁ ËÕÒÓÏÒÏÍ + + C-k õÂÉÔØ ×ÓÅ ÏÔ ËÕÒÓÏÒÁ ÄÏ ËÏÎÃÁ ÓÔÒÏËÉ + M-k õÂÉÔØ ×ÓÅ ÄÏ ËÏÎÃÁ ÐÒÅÄÌÏÖÅÎÉÑ + +úÁÍÅÔØÔÅ, ÞÔÏ É C-d, ×ÍÅÓÔÅ Ó M- É M-d ÒÁÓÛÉÒÑÀÔ +ÐÁÒÁÌÌÅÌØ, ÎÁÞÁÔÕÀ C-f É M-f (ÄÁ, -- ÜÔÏ ÎÅ ÎÁÓÔÏÑÝÉÊ ÕÐÒÁ×ÌÑÀÝÉÊ +ÓÉÍ×ÏÌ, ÎÏ ÎÅ ÎÕÖÎÏ Ï ÜÔÏÍ ×ÏÌÎÏ×ÁÔØÓÑ). C-k É M-k, ËÁË É C-e É M-e, +ÐÒÏ×ÏÄÑÔ ÐÁÒÁÌÌÅÌØ ÍÅÖÄÕ ÓÔÒÏËÁÍÉ É ÐÒÅÄÌÏÖÅÎÉÑÍÉ. + +÷Ù ÍÏÖÅÔÅ ÕÄÁÌÉÔØ ÌÀÂÕÀ ÞÁÓÔØ ÂÕÆÅÒÁ ÏÄÎÉÍ ÍÅÔÏÄÏÍ. ðÅÒÅÍÅÓÔÉÔÅÓØ ÎÁ ÏÄÉÎ +ÉÚ ËÏÎÃÏ× ×ÙÂÒÁÎÎÏÊ ÏÂÌÁÓÔÉ É ÎÁÖÍÉÔÅ C-@ ÉÌÉ C- (ÏÄÎÏ ÉÚ ÜÔÉÈ +ÓÏÞÅÔÁÎÉÊ). úÄÅÓØ ÏÂÏÚÎÁÞÁÅÔ ËÌÁ×ÉÛÕ ÐÒÏÂÅÌÁ. ðÅÒÅÍÅÓÔÉÔÅÓØ ÎÁ ÄÒÕÇÏÊ +ËÏÎÅà ÏÂÌÁÓÔÉ É ÎÁÖÍÉÔÅ C-w. üÔÁ ÏÐÅÒÁÃÉÑ ÕÄÁÌÉÔ ×ÅÓØ ÔÅËÓÔ ÍÅÖÄÕ Ä×ÕÍÑ +ÕËÁÚÁÎÎÙÍÉ ÐÏÚÉÃÉÑÍÉ. + +>> ðÅÒÅÍÅÓÔÉÔÅ ËÕÒÓÏÒ Ë ÂÕË×Å ÷ × ÎÁÞÁÌÅ ÐÒÅÄÙÄÕÝÅÇÏ ÐÁÒÁÇÒÁÆÁ. +>> îÁÂÅÒÉÔÅ C-. Emacs ÄÏÌÖÅÎ ÏÔÏÂÒÁÚÉÔØ × ÎÉÖÎÅÊ ÞÁÓÔÉ ÜËÒÁÎÁ ÓÏÏÂÝÅÎÉÅ + "Mark set". +>> ðÅÒÅÍÅÓÔÉÔÅ ËÕÒÓÏÒ Ë ÂÕË×Å Ï × ÓÌÏ×Å "ËÏÎÃÏ×", ÎÁ ×ÔÏÒÏÊ ÓÔÒÏËÅ + ÐÁÒÁÇÒÁÆÁ. +>> îÁÂÅÒÉÔÅ C-w. üÔÏ ÕÄÁÌÉÔ ÔÅËÓÔ ÎÁÞÉÎÁÑ Ó ÂÕË×Ù ÷, É ÏËÁÎÞÉ×ÁÀÝÕÀÓÑ ÐÅÒÅÄ + ÂÕË×ÏÊ Ï. + +ïÔÌÉÞÉÅ ÍÅÖÄÕ "ÕÂÉÔØ (killing)" É "ÕÄÁÌÉÔØ (deleting)" ÚÁËÌÀÞÁÅÔÓÑ × ÔÏÍ, +ÞÔÏ "ÕÂÉÔÙÊ" ÔÅËÓÔ ÍÏÖÅÔ ÂÙÔØ ÚÁÎÏ×Ï ×ÓÔÁ×ÌÅÎ, × ÔÏ ×ÒÅÍÑ ËÁË "ÕÄÁÌÅÎÎÙÅ" +ÞÁÓÔÉ ÎÅ ÍÏÇÕÔ ÂÙÔØ ×ÓÔÁ×ÌÅÎÙ. ÷ÓÔÁ×ËÁ "ÕÂÉÔÏÇÏ" ÔÅËÓÔÁ ÎÁÚÙ×ÁÅÔÓÑ +"×ÏÓÓÔÁÎÏ×ÌÅÎÉÅ (yanking)". ÷ ÏÂÝÅÍ, ËÏÍÁÎÄÙ, ËÏÔÏÒÙÅ ÍÏÇÕÔ ÕÂÉÒÁÔØ ÂÏÌØÛÉÅ +ÞÁÓÔÉ ÔÅËÓÔÁ, ÕÂÉ×ÁÀÔ ÜÔÏÔ ÔÅËÓÔ (ÏÎÉ ÎÁÓÔÒÁÉ×ÁÀÔÓÑ ÔÁË, ÞÔÏ ×Ù ÍÏÖÅÔÅ +×ÏÓÓÔÁÎÏ×ÉÔØ ÔÅËÓÔ), × ÔÏ ×ÒÅÍÑ ËÁË ËÏÍÁÎÄÙ, ËÏÔÏÒÙÅ ÕÂÉÒÁÀÔ ÔÏÌØËÏ ÏÄÉÎ +ÓÉÍ×ÏÌ, ÉÌÉ ÕÄÁÌÑÀÔ ÔÏÌØËÏ ÐÕÓÔÙÅ ÓÔÒÏËÉ É ÐÒÏÂÅÌØÎÙÅ ÓÉÍ×ÏÌÙ, ×ÙÐÏÌÎÑÀÔ +ÏÐÅÒÁÃÉÀ ÕÄÁÌÅÎÉÑ (ÔÁË ÞÔÏ ×Ù ÎÅ ÍÏÖÅÔÅ ×ÏÓÓÔÁÎÏ×ÉÔØ ÔÅËÓÔ). + +>> ðÅÒÅÍÅÓÔÉÔÅ ËÕÒÓÏÒ ÎÁ ÎÁÞÁÌÏ ÎÅ ÐÕÓÔÏÊ ÓÔÒÏËÉ. ôÅÐÅÒØ ÎÁÖÍÉÔÅ C-k, ÞÔÏÂÙ + ÕÂÉÔØ ÔÅËÓÔ × ÜÔÏÊ ÓÔÒÏËÅ. + +>> îÁÖÍÉÔÅ C-k ÅÝÅ ÒÁÚ. ÷Ù ×ÉÄÉÔÅ, ÞÔÏ ÜÔÏ ÄÅÊÓÔ×ÉÅ ÕÂØÅÔ ÓÉÍ×ÏÌ ÎÏ×ÏÊ + ÓÔÒÏËÉ, ËÏÔÏÒÙÊ ÓÌÅÄÕÅÔ ÚÁ ÜÔÏÊ ÓÔÒÏËÏÊ. + +úÁÍÅÔØÔÅ, ÞÔÏ ÐÅÒ×ÏÅ ×ÙÐÏÌÎÅÎÉÅ C-k ÕÂÉ×ÁÅÔ ÓÏÄÅÒÖÉÍÏÅ ÓÔÒÏËÉ, Á ×ÔÏÒÏÊ +×ÙÚÏ× C-k ÕÂÉ×ÁÅÔ ÓÁÍÕ ÓÔÒÏËÕ É ÐÏÄÎÉÍÁÅÔ ÄÒÕÇÉÅ ÓÔÒÏËÉ ××ÅÒÈ. C-k +ÏÂÒÁÂÁÔÙ×ÁÅÔ ÞÉÓÌÏ×ÏÊ ÁÒÇÕÍÅÎÔ ÓÐÅÃÉÁÌØÎÙÍ ÏÂÒÁÚÏÍ -- ÕÂÉ×ÁÅÔ ÚÁÄÁÎÎÏÅ +ËÏÌÉÞÅÓÔ×Ï ÓÔÒÏË _é_ ÉÈ ÓÏÄÅÒÖÉÍÏÅ. üÔÏ ÎÅ ÐÒÏÓÔÏ ÐÏ×ÔÏÒÅÎÉÅ ËÏÍÁÎÄÙ. C-u 2 +C-k ÕÄÁÌÉÔ Ä×Å ÓÔÒÏËÉ, Á ÔÁËÖÅ ÚÁ×ÅÒÛÁÀÝÉÅ ÉÈ ÓÉÍ×ÏÌÙ ÎÏ×ÏÊ ÓÔÒÏËÉ; +Ä×ÕÈÒÁÚÏ×ÏÅ ×ÙÐÏÌÎÅÎÉÅ C-k ÎÅ ÓÄÅÌÁÅÔ ÜÔÏÇÏ. + +÷ÏÚ×ÒÁÔ ÕÂÉÔÏÇÏ ÒÁÎÅÅ ÔÅËÓÔÁ ÎÁÚÙ×ÁÅÔÓÑ "×ÏÓÓÔÁÎÏ×ÌÅÎÉÅ (yanking)". (äÕÍÁÊÔÅ +Ï ÜÔÏÍ, ËÁË Ï ×ÏÓÓÔÁÎÏ×ÌÅÎÉÉ ÉÌÉ ÐÏÍÅÝÅÎÉÉ ÎÁÚÁÄ, ÎÅËÏÔÏÒÏÇÏ ×ÚÑÔÏÇÏ +ÔÅËÓÔÁ). ÷Ù ÍÏÖÅÔÅ ×ÏÓÓÔÁÎÏ×ÉÔØ ÕÄÁÌÅÎÎÙÊ ÔÅËÓÔ × ÍÅÓÔÅ ÕÄÁÌÅÎÉÑ, ÉÌÉ × +ÌÀÂÏÊ ÄÒÕÇÏÊ ÔÏÞËÅ ÒÅÄÁËÔÉÒÕÅÍÏÇÏ ÔÅËÓÔÁ, ÉÌÉ ÄÁÖÅ × ÄÒÕÇÏÍ ÆÁÊÌÅ. ÷Ù +ÍÏÖÅÔÅ ×ÏÓÓÔÁÎÏ×ÉÔØ ÔÅËÓÔ ÎÅÓËÏÌØËÏ ÒÁÚ É ÐÏÌÕÞÉÔØ ÎÅÓËÏÌØËÏ ËÏÐÉÊ ÄÁÎÎÏÇÏ +ÔÅËÓÔÁ. + +äÌÑ ×ÏÓÓÔÁÎÏ×ÌÅÎÉÑ ÕÂÉÔÏÇÏ ÔÅËÓÔÁ ÉÓÐÏÌØÚÕÅÔÓÑ ÓÏÞÅÔÁÎÉÅ ËÌÁ×ÉÛ C-y. äÁÎÎÁÑ +ËÏÍÁÎÄÁ ×ÏÓÓÔÁÎÁ×ÌÉ×ÁÅÔ ÐÏÓÌÅÄÎÉÊ ÕÂÉÔÙÊ ÔÅËÓÔ × ÔÏÞËÅ ÒÁÓÐÏÌÏÖÅÎÉÑ ËÕÒÓÏÒÁ. + +>> ðÏÐÒÏÂÕÊÔÅ ×ÙÐÏÌÎÉÔØ ÜÔÕ ËÏÍÁÎÄÕ -- ÎÁÂÅÒÉÔÅ C-y, ÞÔÏÂÙ ×ÅÒÎÕÔØ ÔÅËÓÔ + ÎÁÚÁÄ. + +ðÏÍÎÉÔÅ, ÞÔÏ ÅÓÌÉ ×Ù ÉÓÐÏÌØÚÏ×ÁÌÉ ÎÅÓËÏÌØËÏ ËÏÍÁÎÄ C-k × ÏÄÎÏÊ ÓÔÒÏËÅ, ÔÏ +×ÓÅ ÕÂÉÔÙÅ ÓÔÒÏËÉ ÂÕÄÕÔ ÓÏÈÒÁÎÅÎÙ ×ÍÅÓÔÅ, ÔÁË, ÞÔÏ C-y ÔÁËÖÅ ×ÏÓÓÔÁÎÏ×ÉÔ ÉÈ +×ÍÅÓÔÅ. + +>> ðÏÐÒÏÂÕÊÔÅ ×ÙÐÏÌÎÉÔØ ÜÔÏ ÓÅÊÞÁÓ -- ÎÁÖÍÉÔÅ C-k ÎÅÓËÏÌØËÏ ÒÁÚ. + +ôÅÐÅÒØ ×ÅÒÎÅÍ ÕÂÉÔÙÊ ÔÅËÓÔ: + +>> îÁÖÍÉÔÅ C-y. ôÅÐÅÒØ ÐÅÒÅÍÅÓÔÉÔÅ ËÕÒÓÏÒ ÎÁ ÎÅÓËÏÌØËÏ ÓÔÒÏË ×ÎÉÚ, É ÓÎÏ×Á + ÎÁÖÍÉÔÅ C-y. óÅÊÞÁÓ ×Ù ×ÉÄÉÔÅ ËÁË ÍÏÖÎÏ ÓËÏÐÉÒÏ×ÁÔØ ÎÅËÏÔÏÒÙÊ ÔÅËÓÔ. + +þÔÏ ÄÅÌÁÔØ, ÅÓÌÉ ÅÓÔØ ÎÅËÏÔÏÒÙÊ ÔÅËÓÔ, ËÏÔÏÒÙÊ ×Ù ÈÏÔÉÔÅ ×ÅÒÎÕÔØ ÎÁÚÁÄ, Á +ÐÏÔÏÍ ÕÂÉÔØ ÞÔÏ-ÔÏ ÅÝÅ? ïÄÎÏ ÎÁÖÁÔÉÅ C-y ×ÅÒÎÅÔ ÔÏÌØËÏ ÐÏÓÌÅÄÎÉÊ ÕÄÁÌÅÎÎÙÊ +ÔÅËÓÔ. îÏ ÐÒÅÄÙÄÕÝÉÊ ÔÅËÓÔ ÎÅ ÂÕÄÅÔ ÐÏÔÅÒÑÎ -- ×Ù ÓÍÏÖÅÔÅ ÅÇÏ ×ÅÒÎÕÔØ +ÎÁÚÁÄ, ÉÓÐÏÌØÚÕÑ ËÏÍÁÎÄÕ M-y. ðÏÓÌÅ ÔÏÇÏ, ËÁË ×Ù ×ÅÒÎÕÌÉ ÐÏÓÌÅÄÎÉÊ +ÕÄÁÌÅÎÎÙÊ ÔÅËÓÔ, ÎÁÖÍÉÔÅ M-y, É ÚÁÍÅÎÉÔÅ ÜÔÏÔ ×ÏÓÓÔÁÎÏ×ÌÅÎÎÙÊ ÔÅËÓÔ ÔÅÍ, +ËÏÔÏÒÙÊ ÂÙÌ ÕÂÉÔ ÒÁÎÅÅ. îÁÖÉÍÁÑ M-y ÓÎÏ×Á É ÓÎÏ×Á, ×Ù ÂÕÄÅÔÅ ×ÏÚ×ÒÁÝÁÔØ +ÒÁÎÅÅ ÕÂÉÔÙÅ ÞÁÓÔÉ ÔÅËÓÔÁ. ëÏÇÄÁ ×Ù ÄÏÓÔÉÇÎÉÔÅ ÉÓËÏÍÏÇÏ ÔÅËÓÔÁ, ÔÏ ×ÁÍ ÎÅ +ÎÕÖÎÏ ÄÅÌÁÔØ ÎÉÞÅÇÏ ÞÔÏÂÙ ÓÏÈÒÁÎÉÔØ ÅÇÏ. ðÒÏÓÔÏ ÐÒÏÄÏÌÖÁÊÔÅ ÒÁÂÏÔÁÔØ, +ÏÓÔÁ×É× ×ÏÓÓÔÁÎÏ×ÌÅÎÎÙÊ ÔÅËÓÔ ÔÁÍ, ÇÄÅ ÏÎ ÅÓÔØ. + +îÁÖÉÍÁÑ M-y ÄÏÓÔÁÔÏÞÎÏÅ ÞÉÓÌÏ ÒÁÚ, ×Ù ÍÏÖÅÔÅ ×ÅÒÎÕÔØÓÑ × ÎÁÞÁÌØÎÕÀ ÔÏÞËÕ +(ÎÁÉÂÏÌÅÅ ÒÁÎÎÅÅ ÕÄÁÌÅÎÉÅ). + +>> õÂÅÊÔÅ ÓÔÒÏËÕ, ÐÅÒÅÍÅÓÔÉÔÅ ËÕÒÓÏÒ, É ÕÄÁÌÉÔÅ ÅÝÅ ÏÄÎÕ ÓÔÒÏËÕ. úÁÔÅÍ + ÉÓÐÏÌØÚÕÊÔÅ C-y ÄÌÑ ×ÏÓÓÔÁÎÏ×ÌÅÎÉÑ ×ÔÏÒÏÊ ÕÂÉÔÏÊ ÓÔÒÏËÉ, Á ÚÁÔÅÍ ÎÁÖÍÉÔÅ + M-y, É ÏÎÁ ÂÕÄÅÔ ÚÁÍÅÎÅÎÁ ÐÅÒ×ÏÊ ÕÂÉÔÏÊ ÓÔÒÏËÏÊ. îÁÖÍÉÔÅ M-y ÅÝÅ + ÎÅÓËÏÌØËÏ ÒÁÚ, ÞÔÏÂÙ Õ×ÉÄÅÔØ ÐÏÌÕÞÅÎÎÙÊ ÒÅÚÕÌØÔÁÔ. ðÒÏÄÏÌÖÁÊÔÅ ×ÙÐÏÌÎÑÔØ + ÜÔÕ ËÏÍÁÎÄÕ ÄÏ ÔÅÈ ÐÏÒ, ÐÏËÁ ×ÔÏÒÁÑ ÕÂÉÔÁÑ ÓÔÒÏËÁ ÎÅ ÂÕÄÅÔ ×ÏÓÓÔÁÎÏ×ÌÅÎÁ + ÓÎÏ×Á. åÓÌÉ ×ÁÍ ÈÏÞÅÔÓÑ, ÔÏ ×Ù ÍÏÖÅÔÅ ÚÁÄÁ×ÁÔØ ÐÏÌÏÖÉÔÅÌØÎÙÅ É + ÏÔÒÉÃÁÔÅÌØÎÙÅ ÁÒÇÕÍÅÎÔÙ ÄÌÑ ËÏÍÁÎÄÙ M-y. + + +* ïôíåîá (UNDO) +--------------- + +åÓÌÉ ×Ù ÓÄÅÌÁÌÉ ÉÚÍÅÎÅÎÉÑ × ÔÅËÓÔÅ, É ÒÅÛÉÌÉ, ÞÔÏ ÏÛÉÂÌÉÓØ, ÔÏ ×Ù ÍÏÖÅÔÅ +ÏÔÍÅÎÉÔØ ÉÚÍÅÎÅÎÉÑ Ó ÐÏÍÏÝØÀ ËÏÍÁÎÄÙ "ÏÔÍÅÎÁ", ËÏÔÏÒÁÑ ÐÒÉ×ÑÚÁÎÁ Ë ÓÏÞÅÔÁÎÉÀ +ËÌÁ×ÉÛ C-x u. + +ïÂÙÞÎÏ, C-x u ÏÔÍÅÎÑÅÔ ÉÚÍÅÎÅÎÉÑ, ÓÄÅÌÁÎÎÙÅ ÏÄÎÏÊ ËÏÍÁÎÄÏÊ; ÅÓÌÉ ÐÏ×ÔÏÒÉÔØ +C-x u ÎÅÓËÏÌØËÏ ÒÁÚ ÐÏÄÒÑÄ, ÔÏ ËÁÖÄÙÊ ÒÁÚ ÂÕÄÅÔ ÏÔÍÅÎÑÔØÓÑ ÅÝÅ ÏÄÎÁ ËÏÍÁÎÄÁ. + +îÏ ÅÓÔØ Ä×Á ÉÓËÌÀÞÅÎÉÑ -- ËÏÍÁÎÄÙ ÎÅ ÉÚÍÅÎÑÀÝÉÅ ÔÅËÓÔ, ÎÅ ÕÞÉÔÙ×ÁÀÔÓÑ (ÓÀÄÁ +×ËÌÀÞÁÅÔÓÑ ËÏÍÁÎÄÙ ÐÅÒÅÍÅÝÅÎÉÑ ËÕÒÓÏÒÁ É ÐÒÏËÒÕÔËÉ), É ËÏÍÁÎÄÙ ×ÓÔÁ×ËÉ +ÓÉÍ×ÏÌÏ× ÏÂÒÁÂÁÔÙ×ÁÀÔÓÑ ÇÒÕÐÐÁÍÉ ÄÏ 20 ÓÉÍ×ÏÌÏ×. (üÔÏ ÕÍÅÎØÛÁÅÔ ÞÉÓÌÏ +ÎÁÖÁÔÉÊ C-x u ËÏÔÏÒÙÅ ×ÁÍ ÎÕÖÎÏ ÂÕÄÅÔ ÎÁÂÒÁÔØ ÄÌÑ ÏÔÍÅÎÙ ××ÏÄÁ ÔÅËÓÔÁ). + +>> õÂÅÊÔÅ ÜÔÕ ÓÔÒÏËÕ Ó ÐÏÍÏÝØÀ C-k, Á ÚÁÔÅÍ ÎÁÂÅÒÉÔÅ C-x u É ÓÔÒÏËÁ ÄÏÌÖÎÁ + ×ÅÒÎÕÔØÓÑ ÎÁÚÁÄ. + +C-_ -- ÜÔÏ ÅÝÅ ËÏÍÁÎÄÁ ÏÔÍÅÎÙ; ÏÎÁ ÒÁÂÏÔÁÅÔ ÔÏÞÎÏ ÔÁËÖÅ ËÁË É C-x u, ÎÏ +ÌÅÇÞÅ × ÉÓÐÏÌØÚÏ×ÁÎÉÉ, ÅÓÌÉ ×ÁÍ ÎÕÖÎÏ ×ÙÐÏÌÎÉÔØ ÅÅ ÎÅÓËÏÌØËÏ ÒÁÚ +ÐÏÄÒÑÄ. îÅÕÄÏÂÎÏÅ ÐÏÌÏÖÅÎÉÅ C-_ ÎÁ ÎÅËÏÔÏÒÙÈ ËÌÁ×ÉÁÔÕÒÁÈ ÄÅÌÁÅÔ ÎÅ ÏÞÅ×ÉÄÎÙÍ +ÓÐÏÓÏ ÅÅ ÎÁÂÏÒÁ. ðÏÜÔÏÍÕ ÍÙ ÐÒÅÄÌÁÇÁÅÍ ÉÓÐÏÌØÚÏ×ÁÔØ C-x u. îÁ ÎÅËÏÔÏÒÙÈ +ÔÅÒÍÉÎÁÌÁÈ, ×Ù ÍÏÖÅÔÅ ÎÁÂÉÒÁÔØ C-_, ÎÁÖÉÍÁÑ / É ÕÄÅÒÖÉ×ÁÑ ËÌÁ×ÉÛÕ CONTROL. + +þÉÓÌÏ×ÏÊ ÁÒÇÕÍÅÎÔ ÄÌÑ C-_ ÉÌÉ C-x u ÉÓÐÏÌØÚÕÅÔÓÑ ËÁË ÓÞÅÔÞÉË ÐÏ×ÔÏÒÅÎÉÊ. + +÷Ù ÍÏÖÅÔÅ ÏÔÍÅÎÉÔØ ÕÄÁÌÅÎÉÅ ÔÅËÓÔÁ ÔÏÞÎÏ ÔÁË ÖÅ, ËÁË É ÏÔÍÅÎÕ ÕÂÉÔÉÑ ÔÅËÓÔÁ. +ïÔÌÉÞÉÅ ÍÅÖÄÕ ÕÂÉÊÓÔ×ÏÍ É ÕÄÁÌÅÎÉÅÍ ÞÅÇÏ-ÌÉÂÏ ÚÁËÌÀÞÁÅÔÓÑ × ÔÏÍ, ÞÔÏ ×Ù +ÍÏÖÅÔÅ ×ÏÓÓÔÁÎÏ×ÉÔØ ÕÂÉÔÙÊ ÔÅËÓÔ Ó ÐÏÍÏÝØÀ ËÏÍÁÎÄÙ C-y; ÎÏ ÄÌÑ ËÏÍÁÎÄÙ +ÏÔÍÅÎÙ ÎÅÔ ÎÉËÁËÏÊ ÒÁÚÎÉÃÙ ÍÅÖÄÕ ÜÔÉÍÉ ÏÐÅÒÁÃÉÑÍÉ. + +* æáêìù +------- + +þÔÏÂÙ ÓÏÚÄÁÎÎÙÊ ÔÅËÓÔ ÍÏÖÎÏ ÂÙÌÏ ÒÅÄÁËÔÉÒÏ×ÁÔØ ÐÏÚÖÅ, ×Ù ÄÏÌÖÎÙ ÐÏÍÅÓÔÉÔØ +ÅÇÏ × ÆÁÊÌ. éÎÁÞÅ, ÏÎ ÉÓÞÅÚÎÅÔ, ËÏÇÄÁ ×Ù ÐÏËÉÎÅÔÅ Emacs. ÷Ù ÐÏÍÅÝÁÅÔÅ ×ÁÛ +ÔÅËÓÔ × ÆÁÊÌ, "ÏÔËÒÙ×ÁÑ" ÆÁÊÌ (üÔÕ ÏÐÅÒÁÃÉÀ ÔÁËÖÅ ÎÁÚÙ×ÁÀÔ "ÐÏÓÅÔÉÔØ" ÆÁÊÌ). + +ïÔËÒÙÔØ ÆÁÊÌ ÏÚÎÁÞÁÅÔ ÐÏÓÍÏÔÒÅÔØ ÅÇÏ ÓÏÄÅÒÖÉÍÏÅ, Ó ÐÏÍÏÝØÀ Emacs. ÷Ï ÍÎÏÇÉÈ +ÓÌÕÞÁÑÈ, ÜÔÏ ÐÒÏÉÓÈÏÄÉÔ ÔÏÇÄÁ, ËÏÇÄÁ ×Ù ÒÅÄÁËÔÉÒÕÅÔÅ ÆÁÊÌ ÓÁÍÉ. ïÄÎÁËÏ ×ÁÛÉ +ÉÚÍÅÎÅÎÉÑ, ÓÄÅÌÁÎÎÙÅ Ó ÉÓÐÏÌØÚÏ×ÁÎÉÅÍ Emacs ÎÅ ÂÕÄÕÔ ÚÁÆÉËÓÉÒÏ×ÁÎÙ, ÐÏËÁ ×Ù +ÎÅ ÓÏÈÒÁÎÉÔÅ ÆÁÊÌ. ÷Ù ÍÏÖÅÔÅ ÎÅ ÏÓÔÁ×ÌÑÔØ ÞÁÓÔÉÞÎÏ ÉÚÍÅÎÅÎÎÙÊ ÆÁÊÌ × +ÓÉÓÔÅÍÅ, ÅÓÌÉ ×Ù ÎÅ ÈÏÔÉÔÅ ÅÇÏ ÓÏÈÒÁÎÑÔØ. äÁÖÅ ËÏÇÄÁ ×Ù ÓÏÈÒÁÎÑÅÔÅ ÆÁÊÌ, ÔÏ +Emacs ÏÓÔÁ×ÌÑÅÔ ÏÒÉÇÉÎÁÌØÎÙÊ ÆÁÊÌ, ÎÏ Ó ÄÒÕÇÉÍ ÉÍÅÎÅÍ, ÔÁË ÞÔÏ ×Ù ÐÏÚÖÅ +ÍÏÖÅÔÅ ÏÔÍÅÎÉÔØ ×ÁÛÉ ÉÚÍÅÎÅÎÉÑ, ×ÅÒÎÕ×ÛÉÓØ Ë ÐÒÅÄÙÄÕÝÅÊ ×ÅÒÓÉÉ ÆÁÊÌÁ. + +åÓÌÉ ×Ù ÐÏÓÍÏÔÒÉÔÅ × ÎÉÖÎÀÀ ÞÁÓÔØ ÜËÒÁÎÁ, ÔÏ ×Ù Õ×ÉÄÉÔÅ ÓÔÒÏËÕ, ËÏÔÏÒÁÑ +ÎÁÞÉÎÁÅÔÓÑ Ó ÔÉÒÅ É ÅÅ ÎÁÞÁÌÏ ×ÙÇÌÑÄÉÔ ÐÒÉÍÅÒÎÏ ÔÁË "--:-- TUTORIAL.ru". üÔÁ +ÞÁÓÔØ ÜËÒÁÎÁ ×ÓÅÇÄÁ ÐÏËÁÚÙ×ÁÅÔ ÉÍÑ ÏÔËÒÙÔÏÇÏ ×ÁÍÉ ÆÁÊÌÁ. éÔÁË, ÓÅÊÞÁÓ ×Ù +ÏÔËÒÙÌÉ ÆÁÊÌ Ó ÉÍÅÎÅÍ "TUTORIAL.ru", ËÏÔÏÒÙÊ Ñ×ÌÑÅÔÓÑ ×ÁÛÅÊ ÐÅÒÓÏÎÁÌØÎÏÊ +ËÏÐÉÅÊ ÕÞÅÂÎÉËÁ Emacs. äÌÑ ÌÀÂÏÇÏ ÆÁÊÌÁ, ËÏÔÏÒÙÊ ×Ù ÏÔËÒÏÅÔÅ, ÅÇÏ ÉÍÑ ÂÕÄÅÔ +ÐÏËÁÚÁÎÏ × ÜÔÏÊ ÓÔÒÏËÅ. + +ïÄÎÏÊ ÉÚ ×ÅÝÅÊ, ËÏÔÏÒÙÅ ×ÁÍ ÎÕÖÎÏ ÚÎÁÔØ Ï ËÏÍÁÎÄÅ ÏÔËÒÙÔÉÑ ÆÁÊÌÁ -- ÜÔÏ ÔÏ, +ÞÔÏ ×Ù ÄÏÌÖÎÙ ××ÅÓÔÉ ÉÍÑ ÆÁÊÌÁ, ËÏÔÏÒÙÊ ÎÕÖÎÏ ÏÔËÒÙÔØ. ôÁËÉÅ ËÏÍÁÎÄÙ ÍÙ +ÎÁÚÙ×ÁÅÍ ËÏÍÁÎÄÁÍÉ "ÞÉÔÁÀÝÉÍÉ ÁÒÇÕÍÅÎÔ Ó ÔÅÒÍÉÎÁÌÁ" (× ÎÁÛÅÍ ÓÌÕÞÁÅ, +ÁÒÇÕÍÅÎÔÏÍ Ñ×ÌÑÅÔÓÑ ÉÍÑ ÆÁÊÌÁ). ðÏÓÌÅ ××ÏÄÁ ËÏÍÁÎÄÙ + + C-x C-f ïÔËÒÙÔØ (ÎÁÊÔÉ) ÆÁÊÌ + +Emacs ÐÏÐÒÏÓÉÔ ×ÁÓ ××ÅÓÔÉ ÉÍÑ ÆÁÊÌÁ. éÍÑ ÆÁÊÌÁ ÎÁÂÉÒÁÅÔÓÑ × ÎÉÖÎÅÊ ÓÔÒÏËÅ +ÜËÒÁÎÁ. îÉÖÎÑÑ ÓÔÒÏËÁ ÎÁÚÙ×ÁÅÔÓÑ ÍÉÎÉ-ÂÕÆÅÒÏÍ -- ÏÎ ÓÐÅÃÉÁÌØÎÏ ÉÓÐÏÌØÚÕÅÔÓÑ +ÄÌÑ ××ÏÄÁ ÎÅÂÏÌØÛÏÇÏ ËÏÌÉÞÅÓÔ×Á ÄÁÎÎÙÈ. äÌÑ ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ ÉÍÅÎÉ ÆÁÊÌÁ ×Ù +ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ ÏÂÙÞÎÙÅ ËÏÍÁÎÄÙ ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ Emacs. + +ëÏÇÄÁ ×Ù ××ÏÄÉÔÅ ÉÍÑ ÆÁÊÌÁ (ÉÌÉ ÌÀÂÕÀ ÄÒÕÇÕÀ ÉÎÆÏÒÍÁÃÉÀ × ÍÉÎÉ-ÂÕÆÅÒÅ), ×Ù +ÍÏÖÅÔÅ ÏÔÍÅÎÉÔØ ÔÅËÕÝÕÀ ËÏÍÁÎÄÕ ÎÁÖÁ× C-g. + +>> îÁÖÍÉÔÅ C-x C-f, Á ÚÁÔÅÍ ÎÁÖÍÉÔÅ C-g. üÔÏ ÄÅÊÓÔ×ÉÅ ÏÔÍÅÎÉÔ ××ÏÄ ÄÁÎÎÙÈ × + ÍÉÎÉ-ÂÕÆÅÒÅ, É ÚÁÏÄÎÏ É ËÏÍÁÎÄÕ C-x C-f, ËÏÔÏÒÁÑ ÉÓÐÏÌØÚÏ×ÁÌÁ ÍÉÎÉ-ÂÕÆÅÒ + ÄÌÑ ÐÏÌÕÞÅÎÉÑ ÁÒÇÕÍÅÎÔÁ. ÷ ÉÔÏÇÅ, ×Ù ÎÅ ÏÔËÒÙÌÉ ÎÉ ÏÄÎÏÇÏ ÆÁÊÌÁ. + +ëÏÇÄÁ ×Ù ÚÁ×ÅÒÛÉÔÅ ××ÏÄ ÉÍÅÎÉ ÆÁÊÌÁ, ÎÁÖÍÉÔÅ . äÁÌÅÅ ÓÒÁÂÏÔÁÅÔ +ËÏÍÁÎÄÁ C-x C-f, ËÏÔÏÒÁÑ ÏÔËÒÏÅÔ ÕËÁÚÁÎÎÙÊ ×ÁÍÉ ÆÁÊÌ. íÉÎÉ-ÂÕÆÅÒ ÉÓÞÅÚÎÅÔ, +ËÏÇÄÁ ËÏÍÁÎÄÁ C-x C-f ÚÁ×ÅÒÛÉÔÓÑ. + +á ÍÇÎÏ×ÅÎÉÅÍ ÐÏÚÖÅ ÓÏÄÅÒÖÉÍÏÅ ÆÁÊÌÁ ÐÏÑ×ÉÔÓÑ ÎÁ ÜËÒÁÎÅ, É ×Ù ÓÍÏÖÅÔÅ ÅÇÏ +ÒÅÄÁËÔÉÒÏ×ÁÔØ. ëÏÇÄÁ ×Ù ÚÁËÏÎÞÉÔÅ ÒÅÄÁËÔÉÒÏ×ÁÎÉÅ, ÔÏ ÄÌÑ ÔÏÇÏ, ÞÔÏÂÙ +ÓÏÈÒÁÎÉÔØ ÉÚÍÅÎÅÎÉÑ, ÎÁÂÅÒÉÔÅ ËÏÍÁÎÄÕ + + C-x C-s óÏÈÒÁÎÉÔØ ÆÁÊÌ + +üÔÁ ËÏÍÁÎÄÁ ÓËÏÐÉÒÕÅÔ ÔÅËÓÔ ÉÚ Emacs × ÆÁÊÌ. ÷ ÐÅÒ×ÙÊ ÒÁÚ, ËÏÇÄÁ ×Ù ÜÔÏ +ÓÄÅÌÁÅÔÅ, Emacs ÐÅÒÅÉÍÅÎÕÅÔ ÏÒÉÇÉÎÁÌØÎÙÊ ÆÁÊÌ × ÆÁÊÌ Ó ÎÏ×ÙÍ ÉÍÅÎÅÍ, ÞÔÏÂÙ +ÎÅ ÐÏÔÅÒÑÌÏÓØ ÐÒÅÄÙÄÕÝÅÅ ÓÏÄÅÒÖÉÍÏÅ ÆÁÊÌÁ. îÏ×ÏÅ ÉÍÑ ÐÏÌÕÞÁÅÔÓÑ ÄÏÂÁ×ÌÅÎÉÅÍ +ÓÉÍ×ÏÌÁ "~" Ë ÏÒÉÇÉÎÁÌØÎÏÍÕ ÉÍÅÎÉ ÆÁÊÌÁ. + +ëÏÇÄÁ ÓÏÈÒÁÎÅÎÉÅ ÚÁ×ÅÒÛÉÔÓÑ, Emacs ÏÔÏÂÒÁÚÉÔ ÉÍÑ ÚÁÐÉÓÁÎÎÏÇÏ ÆÁÊÌÁ. ÷Ù +ÄÏÌÖÎÙ ÓÏÈÒÁÎÑÔØ ÉÚÍÅÎÅÎÉÑ ÄÏÓÔÁÔÏÞÎÏ ÞÁÓÔÏ, ÞÔÏÂÙ ÎÅ ÐÏÔÅÒÑÔØ ×ÎÅÓÅÎÎÙÅ +ÉÚÍÅÎÅÎÉÑ, ÅÓÌÉ ÓÉÓÔÅÍÁ ×ÄÒÕÇ ÚÁ×ÉÓÎÅÔ. + +>> îÁÂÅÒÉÔÅ C-x C-s, ÓÏÈÒÁÎÉÔÅ ×ÁÛÕ ËÏÐÉÀ ÕÞÅÂÎÉËÁ. ÷ ÎÉÖÎÅÊ ÓÔÒÏËÅ ÜËÒÁÎÁ + ÄÏÌÖÎÁ ÐÏÑ×ÉÔØÓÑ ÎÁÄÐÉÓØ "Wrote ...TUTORIAL.ru". + +úáíåþáîéå: îÁ ÎÅËÏÔÏÒÙÈ ÓÉÓÔÅÍÁÈ, ××ÏÄ C-x C-s ÚÁÂÌÏËÉÒÕÅÔ ÜËÒÁÎ, ÔÁË ÞÔÏ ×Ù +ÎÅ Õ×ÉÄÉÔÅ ÐÏÓÌÅÄÕÀÝÅÇÏ ×Ù×ÏÄÁ Emacs`Á. ôÁËÏÅ ÐÏ×ÅÄÅÎÉÅ ÏÚÎÁÞÁÅÔ, ÞÔÏ +ÏÐÅÒÁÃÉÏÎÎÁÑ ÓÉÓÔÅÍÁ ÉÍÅÅÔ "ÏÓÏÂÅÎÎÏÓÔØ", ÉÍÅÎÕÅÍÕÀ "flow control", +ÐÅÒÅÈ×ÁÔÙ×ÁÀÝÕÀ ÓÏÞÅÔÁÎÉÅ C-s É ÎÅ ÐÒÏÐÕÓËÁÀÝÕÀ ÜÔÏÔ ÓÉÍ×ÏÌ Ë Emacs`Õ. äÌÑ +ÓÎÑÔÉÑ ÂÌÏËÉÒÏ×ËÉ ÜËÒÁÎÁ, ÎÁÖÍÉÔÅ C-q. ïÂÒÁÔÉÔÅÓØ Ë ÒÁÚÄÅÌÕ "Spontaneous +Entry to Incremental Search" ÒÕËÏ×ÏÄÓÔ×Á Emacs, ÞÔÏÂÙ ÕÚÎÁÔØ Ï ÔÏÍ, ËÁË +ÂÏÒÏÔØÓÑ Ó ÜÔÏÊ "ÏÓÏÂÅÎÎÏÓÔØÀ". + +÷Ù ÍÏÖÅÔÅ ÏÔËÒÙÔØ ÓÕÝÅÓÔ×ÕÀÝÉÊ ÆÁÊÌ ÄÌÑ ÐÒÏÓÍÏÔÒÁ ÉÌÉ ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ. ÷Ù +ÔÁËÖÅ ÍÏÖÅÔÅ ÏÔËÒÙÔØ ÆÁÊÌ, ËÏÔÏÒÏÇÏ ÅÝÅ ÎÅ ÓÕÝÅÓÔ×ÕÅÔ. äÒÕÇÉÍÉ ÓÌÏ×ÁÍÉ -- +ÓÏÚÄÁÔØ ÆÁÊÌ Ó ÐÏÍÏÝØÀ Emacs ÍÏÖÎÏ ÔÁË: ÎÁÊÔÉ ÆÁÊÌ, ÓÏÚÄÁÔØ ÎÏ×ÙÊ, É ÎÁÞÁÔØ +××ÏÄÉÔØ ÔÅËÓÔ. ëÏÇÄÁ ×Ù ×ÙÐÏÌÎÉÔÅ ËÏÍÁÎÄÕ ÓÏÈÒÁÎÅÎÉÑ ÆÁÊÌÁ, ÔÏ Emacs ÓÏÚÄÁÓÔ +ÎÁÓÔÏÑÝÉÊ ÆÁÊÌ Ó ÎÁÂÒÁÎÎÙÍ ×ÁÍÉ ÔÅËÓÔÏÍ. äÁÌÅÅ, ËÁË ×Ù ÐÏÎÑÌÉ, ×Ù ÂÕÄÅÔÅ +ÒÅÄÁËÔÉÒÏ×ÁÔØ ÕÖÅ ÓÕÝÅÓÔ×ÕÀÝÉÊ ÆÁÊÌ. + + +* âõæåòá +-------- + +åÓÌÉ ×Ù ÏÔËÒÙ×ÁÅÔÅ ×ÔÏÒÏÊ ÆÁÊÌ ÉÓÐÏÌØÚÕÑ ËÏÍÁÎÄÕ C-x C-f, ÔÏ ÐÅÒ×ÙÊ ÆÁÊÌ +ÏÓÔÁÅÔÓÑ ×ÎÕÔÒÉ Emacs. ÷Ù ÍÏÖÅÔÅ ÐÅÒÅËÌÀÞÉÔØÓÑ ÎÁÚÁÄ, ÏÔËÒÙ× ÅÇÏ ÓÎÏ×Á Ó +ÐÏÍÏÝØÀ C-x C-f. ôÁËÉÍ ÏÂÒÁÚÏÍ ×Ù ÍÏÖÅÔÅ ÚÁÇÒÕÚÉÔØ ÎÅÓËÏÌØËÏ ÆÁÊÌÏ× × Emacs. + +>> óÏÚÄÁÊÔÅ ÆÁÊÌ Ó ÉÍÅÎÅÍ "foo", ÎÁÂÒÁ× C-x C-f foo . + ÷ÓÔÁ×ØÔÅ ËÁËÏÊ-ÎÉÂÕÄØ ÔÅËÓÔ, ÉÚÍÅÎÉÔÅ ÅÇÏ, É ÓÏÈÒÁÎÉÔÅ ÆÁÊÌ "foo", + ÎÁÂÒÁ× C-x C-s. + îÁËÏÎÅÃ, ÎÁÂÅÒÉÔÅ C-x C-f TUTORIAL.ru , ÄÌÑ ÔÏÇÏ, ÞÔÏÂÙ ×ÅÒÎÕÔØÓÑ + ÎÁÚÁÄ Ë ÕÞÅÂÎÉËÕ. + +Emacs ÈÒÁÎÉÔ ÔÅËÓÔ ËÁÖÄÏÇÏ ÆÁÊÌÁ ×ÎÕÔÒÉ × ÏÂßÅËÔÅ, ÎÁÚÙ×ÁÅÍÏÍ "ÂÕÆÅÒ" +("buffer"). ïÔËÒÙÔÉÅ ÆÁÊÌÁ ÓÏÚÄÁÅÔ ÎÏ×ÙÊ ÂÕÆÅÒ ×ÎÕÔÒÉ Emacs. þÔÏÂÙ Õ×ÉÄÅÔØ +ÓÐÉÓÏË ÂÕÆÅÒÏ×, ÓÏÚÄÁÎÎÙÈ × ÔÅËÕÝÅÍ ÓÅÁÎÓÅ Emacs, ÎÁÂÅÒÉÔÅ + + C-x C-b óÐÉÓÏË ÂÕÆÅÒÏ× + +>> ðÏÐÒÏÂÕÊÔÅ ×ÙÐÏÌÎÉÔØ C-x C-b ÐÒÑÍÏ ÓÅÊÞÁÓ. + +íÙ ×ÉÄÉÍ, ÞÔÏ ËÁÖÄÙÊ ÂÕÆÅÒ ÉÍÅÅÔ ÉÍÑ, É ÍÏÖÅÔ ÉÍÅÔØ Ó×ÑÚÁÎÎÏÅ Ó ÎÉÍ ÉÍÑ +ÆÁÊÌÁ, ÓÏÄÅÒÖÉÍÏÅ ËÏÔÏÒÏÇÏ × ÈÒÁÎÉÔÓÑ × ÄÁÎÎÏÍ ÂÕÆÅÒÅ. ìàâïê ÔÅËÓÔ, ËÏÔÏÒÙÊ +×Ù ×ÉÄÉÔÅ × ÏËÎÅ Emacs, ×ÓÅÇÄÁ Ñ×ÌÑÅÔÓÑ ÞÁÓÔØÀ ËÁËÏÇÏ-ÌÉÂÏ ÂÕÆÅÒÁ. + +>> îÁÂÅÒÉÔÅ C-x 1, ÞÔÏÂÙ ÉÚÂÁ×ÉÔØÓÑ ÏÔ ÓÐÉÓËÁ ÂÕÆÅÒÏ×. + +ëÏÇÄÁ Õ ×ÁÓ ÅÓÔØ ÎÅÓËÏÌØËÏ ÂÕÆÅÒÏ×, ÔÏÌØËÏ ÏÄÉÎ ÉÚ ÎÉÈ Ñ×ÌÑÅÔÓÑ "ÔÅËÕÝÉÍ" × +ËÏÎËÒÅÔÎÙÊ ÍÏÍÅÎÔ ×ÒÅÍÅÎÉ. üÔÏ ÔÏÔ ÂÕÆÅÒ, ËÏÔÏÒÙÊ ×Ù ÉÚÍÅÎÑÅÔÅ. åÓÌÉ ×Ù +ÈÏÔÉÔÅ ÉÚÍÅÎÉÔØ ÄÁÎÎÙÅ × ÄÒÕÇÏÍ ÂÕÆÅÒÅ, ÔÏ ×Ù ÄÏÌÖÎÙ "ÐÅÒÅËÌÀÞÉÔØÓÑ" × ÎÅÇÏ. +åÓÌÉ ×Ù ÈÏÔÉÔÅ ÐÅÒÅËÌÀÞÉÔØÓÑ × ÂÕÆÅÒ, Ó×ÑÚÁÎÎÙÊ Ó ÆÁÊÌÏÍ, ÔÏ ×Ù ÍÏÖÅÔÅ +ÏÔËÒÙÔØ ÜÔÏÔ ÆÁÊÌ ÓÎÏ×Á Ó ÐÏÍÏÝØÀ C-x C-f. îÏ ÅÓÔØ ÂÏÌÅÅ ÐÒÏÓÔÏÊ ÓÐÏÓÏ -- +ÉÓÐÏÌØÚÏ×ÁÔØ ËÏÍÁÎÄÕ C-x b. ÷ ËÁÞÅÓÔ×Å ÁÒÇÕÍÅÎÔÁ ÄÌÑ ÄÁÎÎÏÊ ËÏÍÁÎÄÙ ×Ù +ÄÏÌÖÎÙ ÕËÁÚÁÔØ ÉÍÑ ÂÕÆÅÒÁ. + +>> îÁÂÅÒÉÔÅ C-x b foo ÄÌÑ ÐÅÒÅËÌÀÞÅÎÉÑ × ÂÕÆÅÒ "foo", ËÏÔÏÒÙÊ + ÈÒÁÎÉÔ ÔÅËÓÔ ÆÁÊÌÁ "foo". úÁÔÅÍ ÎÁÂÅÒÉÔÅ C-x b TUTORIAL ÄÌÑ + ×ÏÚ×ÒÁÝÅÎÉÑ × ÂÕÆÅÒ Ó ÄÁÎÎÙÍ ÕÞÅÂÎÉËÏÍ. + +þÁÝÅ ×ÓÅÇÏ ÉÍÑ ÂÕÆÅÒÁ ÓÏ×ÐÁÄÁÅÔ Ó ÉÍÅÎÅÍ ÆÁÊÌÁ (ÔÏÌØËÏ ÂÅÚ ÉÍÅÎÉ ËÁÔÁÌÏÇÏ×). +ïÄÎÁËÏ ÜÔÏ ÎÅ ×ÓÅÇÄÁ Ñ×ÌÑÅÔÓÑ ÐÒÁ×ÄÏÊ. óÐÉÓÏË ÂÕÆÅÒÏ×, ËÏÔÏÒÙÊ ×Ù ÓÏÚÄÁÅÔÅ +Ó ÐÏÍÏÝØÀ ËÏÍÁÎÄÙ C-x C-b ×ÓÅÇÄÁ ÐÏËÁÚÙ×ÁÅÔ ×ÁÍ ÉÍÅÎÁ ×ÓÅÈ ÂÕÆÅÒÏ×. + +ìàâïê ÔÅËÓÔ, ËÏÔÏÒÙÊ ×Ù ×ÉÄÉÔÅ × ÏËÎÅ Emacs, ×ÓÅÇÄÁ Ñ×ÌÑÅÔÓÑ ÞÁÓÔØÀ +ËÁËÏÇÏ-ÌÉÂÏ ÂÕÆÅÒÁ. îÅËÏÔÏÒÙÅ ÂÕÆÅÒÁ ÎÅ ÓÏÏÔ×ÅÔÓÔ×ÕÀÔ ÆÁÊÌÁÍ. îÁÐÒÉÍÅÒ, +ÂÕÆÅÒ Ó ÉÍÅÎÅÍ "*Buffer List*" ÎÅ Ó×ÑÚÁÎ ÎÉ Ó ËÁËÉÍ ÆÁÊÌÏÍ. üÔÏ ÂÕÆÅÒ, +ËÏÔÏÒÙÊ ÓÏÄÅÒÖÉÔ ÓÐÉÓÏË ÂÕÆÅÒÏ×, ËÏÔÏÒÙÊ ×Ù ÓÏÚÄÁÌÉ ÉÓÐÏÌØÚÕÑ C-x C-b. +âÕÆÅÒ Ó ÉÍÅÎÅÍ "*Messages*" ÔÁËÖÅ ÎÅ Ó×ÑÚÁÎ ÎÉ Ó ËÁËÉÍ ÆÁÊÌÏÍ; ÏÎ ÓÏÄÅÒÖÉÔ +ÓÏÏÂÝÅÎÉÑ, ËÏÔÏÒÙÅ ÏÔÏÂÒÁÖÁÀÔÓÑ × ÓÁÍÏÊ ÎÉÖÎÅÊ ÓÔÒÏËÅ ÏËÎÁ Emacs × ÔÅÞÅÎÉÉ +ÔÅËÕÝÅÊ ÓÅÓÓÉÉ ÒÁÂÏÔÙ Ó ÒÅÄÁËÔÏÒÏÍ. + +>> îÁÂÅÒÉÔÅ C-x b *Messages* ÄÌÑ ÐÒÏÓÍÏÔÒÁ ÓÏÄÅÒÖÉÍÏÇÏ ÂÕÆÅÒÁ + ÓÏÏÂÝÅÎÉÊ. úÁÔÅÍ ÎÁÂÅÒÉÔÅ C-x b TUTORIAL ÄÌÑ ×ÏÚ×ÒÁÔÁ × ÄÁÎÎÙÊ + ÕÞÅÂÎÉË. + +åÓÌÉ ×Ù ÉÚÍÅÎÑÅÔÅ ÔÅËÓÔ ÏÄÎÏÇÏ ÆÁÊÌÁ, Á ÚÁÔÅÍ ÏÔËÒÙ×ÁÅÔÅ ÄÒÕÇÏÊ, ÔÏ ÔÅËÓÔ × +ÐÅÒ×ÏÍ ÂÕÆÅÒÅ ÏÓÔÁÅÔÓÑ ÎÅ ÓÏÈÒÁÎÅÎÎÙÍ. éÚÍÅÎÅÎÉÑ ÏÓÔÁÎÕÔÓÑ ×ÎÕÔÒÉ Emacs, × +ÂÕÆÅÒÅ, Ó×ÑÚÁÎÎÏÍ Ó ÆÁÊÌÏÍ. óÏÚÄÁÎÉÅ ÉÌÉ ÒÅÄÁËÔÉÒÏ×ÁÎÉÅ ÓÌÅÄÕÀÝÅÇÏ ÂÕÆÅÒÁ ÎÅ +ÓËÁÚÙ×ÁÅÔÓÑ ÎÁ ÐÅÒ×ÏÍ ÂÕÆÅÒÅ. üÔÏ ÏÞÅÎØ ÕÄÏÂÎÏ, ÎÏ ÉÍÅÊÔÅ × ×ÉÄÕ, ÞÔÏ ×ÁÍ +ÎÕÖÎÏ ÉÍÅÔØ ÓÐÏÓÏ ÓÏÈÒÁÎÉÔØ ÐÅÒ×ÙÊ ÆÁÊÌÏ×ÙÊ ÂÕÆÅÒ. âÙÌÏ ÂÙ ÎÅÐÒÉÑÔÎÏ +ËÁÖÄÙÊ ÒÁÚ ×ÏÚ×ÒÁÝÁÔØÓÑ ÎÁÚÁÄ ÉÓÐÏÌØÚÕÑ C-x C-f É ÐÏÔÏÍ ÉÓÐÏÌØÚÏ×ÁÔØ C-x C-s +ÄÌÑ ÓÏÈÒÁÎÅÎÉÑ ÄÁÎÎÙÈ. ðÏÜÔÏÍÕ ÓÕÝÅÓÔ×ÕÅÔ ËÏÍÁÎÄÁ + + C-x s óÏÈÒÁÎÉÔØ ÎÅËÏÔÏÒÙÅ ÂÕÆÅÒÁ. (Save some buffers) + +C-x s ÚÁÐÒÁÛÉ×ÁÅÔ Õ ×ÁÓ ÐÏÄÔ×ÅÒÖÄÅÎÉÅ Ï ÓÏÈÒÁÎÅÎÉÉ ÄÌÑ ËÁÖÄÏÇÏ ÂÕÆÅÒÁ, +ËÏÔÏÒÙÊ ÓÏÄÅÒÖÉÔ ÎÅ ÓÏÈÒÁÎÅÎÎÙÅ ÉÚÍÅÎÅÎÉÑ. äÌÑ ËÁÖÄÏÇÏ ÔÁËÏÇÏ ÂÕÆÅÒÁ Õ ×ÁÓ +ÚÁÐÒÏÓÑÔ: ÓÏÈÒÁÎÑÔØ ÉÌÉ ÎÅ ÓÏÈÒÁÎÑÔØ ÉÚÍÅÎÅÎÉÑ. + +>> ÷ÓÔÁ×ØÔÅ ÓÔÒÏËÕ ÔÅËÓÔÁ, ÐÏÔÏÍ ÎÁÂÅÒÉÔÅ C-x s. + õ ×ÁÓ ÄÏÌÖÎÙ ÓÐÒÏÓÉÔØ, ÓÏÈÒÁÎÑÔØ ÌÉ ÂÕÆÅÒ Ó ÉÍÅÎÅÍ TUTORIAL.ru. ïÔ×ÅÔØÔÅ + ÎÁ ×ÏÐÒÏÓ ÕÔ×ÅÒÄÉÔÅÌØÎÏ, ÎÁÂÒÁ× "y". + + +* òáóûéòåîéå îáâïòá ëïíáîä +-------------------------- + +õ Emacs ÏÞÅÎØ ÍÎÏÇÏ ËÏÍÁÎÄ, É ÏÎÉ ÎÅ ÍÏÇÕÔ ÂÙÔØ ÎÁÚÎÁÞÅÎÙ ÎÁ ×ÓÅ control- É +meta- ÓÉÍ×ÏÌÙ. Emacs ÏÂÈÏÄÉÔ ÜÔÏ, ÉÓÐÏÌØÚÕÑ X-ËÏÍÁÎÄÕ (eXtend). åÓÔØ Ä×Å +×ÏÚÍÏÖÎÏÓÔÉ: + + C-x òÁÓÛÉÒÅÎÉÅ Ó ÐÏÍÏÝØÀ ××ÏÄÁ ÐÒÅÆÉËÓÁ. úÁ ÎÉÍ ÓÌÅÄÕÅÍ ÏÄÉÎ ÓÉÍ×ÏÌ. + M-x òÁÓÛÉÒÅÎÉÅ ÎÁÂÏÒÁ ËÏÍÁÎÄ Ó ÐÏÍÏÝØÀ ÉÈ ÎÁÉÍÅÎÏ×ÁÎÉÑ. úÁ ÎÉÍ ÓÌÅÄÕÅÔ ÉÍÑ + ËÏÍÁÎÄÙ. + +üÔÏ ÐÏÌÅÚÎÙÅ ËÏÍÁÎÄÙ, ÎÏ ÏÎÉ ÉÓÐÏÌØÚÕÀÔÓÑ ÍÅÎÅÅ ÞÁÓÔÏ, ÞÅÍ ÔÅ ËÏÍÁÎÄÙ, +ËÏÔÏÒÙÅ ÍÙ ÉÚÕÞÉÌÉ. ÷Ù ÕÖÅ ×ÉÄÅÌÉ ÎÅËÏÔÏÒÙÅ ÉÚ ÎÉÈ: ËÏÍÁÎÄÙ ÒÁÂÏÔÙ Ó ÆÁÊÌÁÍÉ +C-x C-f -- ÏÔËÒÙÔØ ÆÁÊÌ, É C-x C-s -- ÓÏÈÒÁÎÉÔØ ÆÁÊÌ. äÒÕÇÏÊ ÐÒÉÍÅÒ -- +ËÏÍÁÎÄÁ ÚÁ×ÅÒÛÅÎÉÑ ÒÁÂÏÔÙ Ó Emacs -- C-x C-c. (îÅ ×ÏÌÎÕÊÔÅÓØ Ï ÔÏÍ, ÞÔÏ ×Ù +ÐÏÔÅÒÑÅÔÅ ÓÄÅÌÁÎÎÙÅ ÉÚÍÅÎÅÎÉÑ, C-x C-c ÐÒÅÄÌÁÇÁÅÔ ÓÏÈÒÁÎÉÔØ ÉÚÍÅÎÅÎÉÑ ÐÅÒÅÄ +ÕÄÁÌÅÎÉÅÍ ÂÕÆÅÒÁ Emacs). + +C-z -- ÜÔÏ ËÏÍÁÎÄÁ *×ÒÅÍÅÎÎÏÇÏ* ×ÙÈÏÄÁ ÉÚ Emacs. ÷Ù ÍÏÖÅÔÅ ×ÅÒÎÕÔØÓÑ × ÔÕ ÖÅ +ÓÅÓÓÉÀ Emacs ÐÏÚÖÅ. + +îÁ ÓÉÓÔÅÍÁÈ, ËÏÔÏÒÙÅ ÒÅÁÌÉÚÕÀÔ ÜÔÕ ×ÏÚÍÏÖÎÏÓÔØ, ËÏÍÁÎÄÁ C-z +"ÐÒÉÏÓÔÁÎÁ×ÌÉ×ÁÅÔ" ("suspends") Emacs; ×ÏÚ×ÒÁÝÁÅÔ × ËÏÍÁÎÄÎÙÊ ÐÒÏÃÅÓÓÏÒ +(shell), ÎÏ ÎÅ ÚÁËÒÙ×ÁÀÔ Emacs. ÷ ÂÏÌØÛÉÎÓÔ×Å ËÏÍÁÎÄÎÙÈ ÐÒÏÃÅÓÓÏÒÏ× ×Ù +ÍÏÖÅÔÅ ×ÅÒÎÕÔØÓÑ × Emacs, ÉÓÐÏÌØÚÕÑ ËÏÍÁÎÄÕ `fg' ÉÌÉ `%emacs'. + +÷ ÓÉÓÔÅÍÁÈ, ÎÅ ÐÏÄÄÅÒÖÉ×ÁÀÝÉÈ ÐÒÉÏÓÔÁÎÏ×ËÕ ÐÒÏÃÅÓÓÏ×, C-z ÓÏÚÄÁÅÔ ÎÏ×ÙÊ +ËÏÍÁÎÄÎÙÊ ÐÒÏÃÅÓÓÏÒ (subshell), ÚÁÐÕÝÅÎÎÙÊ ÉÚ-ÐÏÄ Emacs, ÞÔÏÂÙ ÄÁÔØ ×ÁÍ +×ÏÚÍÏÖÎÏÓÔØ ×ÙÐÏÌÎÉÔØ ÄÒÕÇÕÀ ÐÒÏÇÒÁÍÍÕ, É ÚÁÔÅÍ ×ÅÒÎÕÔØÓÑ × Emacs (ÜÔÏ ÎÅ +ÎÁÓÔÏÑÝÉÊ ×ÙÈÏÄ ÉÚ Emacs). ÷ ÔÁËÉÈ ÓÉÓÔÅÍÁ ÄÌÑ ×ÏÚ×ÒÁÔÁ × Emacs ×ÁÍ ÎÕÖÎÏ +ÉÓÐÏÌØÚÏ×ÁÔØ ËÏÍÁÎÄÕ `exit'. + +þÔÏÂÙ ÐÏËÉÎÕÔØ Emacs ÉÓÐÏÌØÚÕÊÔÅ ËÏÍÁÎÄÕ C-x C-c. ïÂÙÞÎÏ ÜÔÏ ÎÕÖÎÏ ÔÏÇÄÁ, +ËÏÇÄÁ ×Ù ÈÏÔÉÔÅ ÚÁËÏÎÞÉÔØ ÓÅÁÎÓ ÒÁÂÏÔÙ Ó ËÏÍÐØÀÔÅÒÏÍ. üÔÏ ÓÏÞÅÔÁÎÉÅ ÔÁËÖÅ +ÉÓÐÏÌØÚÕÅÔÓÑ, ÞÔÏÂÙ ×ÙÊÔÉ ÉÚ Emacs, ×ÙÚ×ÁÎÎÏÇÏ ÉÚ ÐÏÞÔÏ×ÏÊ ÐÒÏÇÒÁÍÍÙ, ÉÌÉ +ÄÒÕÇÏÊ ÕÔÉÌÉÔÙ, ËÏÔÏÒÁÑ ÍÏÖÅÔ ÎÅ ÚÎÁÔØ, ËÁË ÓÐÒÁ×ÉÔØÓÑ Ó ÐÒÉÏÓÔÁÎÏ×ÌÅÎÎÙÍ +Emacs. ïÂÙÞÎÏ, ÅÓÌÉ ×Ù ÎÅ ÓÏÂÉÒÁÅÔÅÓØ ×ÙÈÏÄÉÔØ ÉÚ ÓÉÓÔÅÍÙ, ÔÏ ÌÕÞÛÅ +ÐÒÉÏÓÔÁÎÏ×ÉÔØ Emacs, ÉÓÐÏÌØÚÕÑ C-z ×ÍÅÓÔÏ ÔÏÇÏ, ÞÔÏÂÙ ÐÏËÉÄÁÔØ ÅÇÏ ÓÏ×ÓÅÍ. + +óÕÝÅÓÔ×ÕÅÔ ÏÞÅÎØ ÍÎÏÇÏ ËÏÍÁÎÄ, ÉÓÐÏÌØÚÕÀÝÉÈ ÐÒÅÆÉËÓ C-x. ÷Ù ÕÖÅ ÉÚÕÞÉÌÉ +ÓÌÅÄÕÀÝÉÅ ËÏÍÁÎÄÙ: + + C-x C-f ïÔËÒÙÔØ ÆÁÊÌ + C-x C-s óÏÈÒÁÎÉÔØ ÆÁÊÌ + C-x s óÏÈÒÁÎÉÔØ ÎÅËÏÔÏÒÙÅ ÆÁÊÌÙ + C-x C-b óÐÉÓÏË ÂÕÆÅÒÏ× + C-x b ðÅÒÅËÌÀÞÉÔØÓÑ × ÂÕÆÅÒ + C-x C-c ÷ÙÈÏÄ ÉÚ Emacs + C-x 1 õÄÁÌÑÅÔ ×ÓÅ ÏËÎÁ ËÒÏÍÅ ÏÄÎÏÇÏ + C-x u ïÔÍÅÎÁ + +éÍÅÎÏ×ÁÎÎÙÅ ËÏÍÁÎÄÙ -- ÜÔÏ ËÏÍÁÎÄÙ, ËÏÔÏÒÙÅ ÉÓÐÏÌØÚÕÀÔÓÑ ÇÏÒÁÚÄÏ ÒÅÖÅ, ÉÌÉ +ÉÓÐÏÌØÚÕÀÔÓÑ ÔÏÌØËÏ × ÏÐÒÅÄÅÌÅÎÎÙÈ ÒÅÖÉÍÁÈ. ÷ ËÁÞÅÓÔ×Å ÐÒÉÍÅÒÁ ÍÏÖÎÏ +ÐÒÉ×ÅÓÔÉ ËÏÍÁÎÄÕ ÚÁÍÅÎÙ ÓÔÒÏËÉ, ËÏÔÏÒÁÑ ÚÁÍÅÎÑÅÔ ÏÄÎÕ ÓÔÒÏËÕ ÎÁ ÄÒÕÇÕÀ ×Ï +×ÓÅÍ ÔÅËÓÔÅ. ëÏÇÄÁ ×Ù ÎÁÂÅÒÅÔÅ M-x, Emacs ÐÒÅÄÌÏÖÉÔ ×ÁÍ ××ÅÓÔÉ ÉÍÑ ËÏÍÁÎÄÙ; +× ÎÁÛÅÍ ÓÌÕÞÁÅ, ÜÔÏ ËÏÍÁÎÄÁ "replace-string". îÁÂÅÒÉÔÅ ÌÉÛØ "repl s", +É Emacs ÄÏÐÏÌÎÉÔ ÉÍÑ. ( -- ÜÔÏ ËÌÁ×ÉÛÁ ÔÁÂÕÌÑÃÉÉ, ÏÂÙÞÎÏ ÎÁÈÏÄÑÝÁÑÓÑ +×ÙÛÅ ËÌÁ×ÉÛ CapsLock ÉÌÉ Shift × ÌÅ×ÏÊ ÞÁÓÔÉ ËÌÁ×ÉÁÔÕÒÙ). úÁ×ÅÒÛÉÔÅ ÉÍÑ +ÎÁÖÁÔÉÅÍ . + +ëÏÍÁÎÄÁ ÚÁÍÅÎÙ ÓÔÒÏËÉ (replace-string) ÔÒÅÂÕÅÔ Ä×Á ÁÒÇÕÍÅÎÔÁ -- ÓÔÒÏËÕ, +ËÏÔÏÒÁÑ ÂÕÄÅÔ ÚÁÍÅÎÅÎÁ, É ÓÔÒÏËÕ, ÎÁ ËÏÔÏÒÕÀ ÎÕÖÎÏ ÚÁÍÅÎÉÔØ. ÷Ù ÄÏÌÖÎÙ +ÚÁ×ÅÒÛÁÔØ ËÁÖÄÙÊ ÁÒÇÕÍÅÎÔ ××ÏÄÏÍ . + +>> ðÅÒÅÍÅÓÔÉÔÅ ËÕÒÓÏÒ ÎÁ Ä×Å ÐÕÓÔÙÅ ÓÔÒÏËÉ ÎÉÖÅ ÜÔÏÊ. + îÁÂÅÒÉÔÅ M-x repl sÆÁÊÌÆÁÊÌÙ. + + úÁÍÅÔØÔÅ, ËÁË ÜÔÁ ÓÔÒÏËÁ ÉÚÍÅÎÉÔÓÑ: ×Ù ÚÁÍÅÎÉÔÅ ÓÌÏ×Ï Æ-Á-Ê-Ì + ÓÌÏ×ÏÍ "ÆÁÊÌÙ" ×ÅÚÄÅ, ÇÄÅ ÏÎÏ ×ÓÔÒÅÔÉÔÓÑ, ÎÉÖÅ ÐÏÚÉÃÉÉ ËÕÒÓÏÒÁ. + + +* á÷ôïíáôéþåóëïå óïèòáîåîéå +--------------------------- + +ëÏÇÄÁ ×Ù ÉÚÍÅÎÑÅÔÅ ÆÁÊÌ, ÎÏ ÎÅ ÓÏÈÒÁÎÑÅÔÅ ÅÇÏ, ÔÏ × ÓÌÕÞÁÅ ËÒÁÈÁ ÓÉÓÔÅÍÙ ×Ù +ÍÏÖÅÔÅ ÐÏÔÅÒÑÔØ ÉÎÆÏÒÍÁÃÉÀ. þÔÏÂÙ ÚÁÝÉÔÉÔØ ×ÁÓ ÏÔ ÜÔÏÇÏ, Emacs ÐÅÒÉÏÄÉÞÅÓËÉ +ÓÏÈÒÁÎÑÅÔ ËÁÖÄÙÊ ÆÁÊÌ, ËÏÔÏÒÙÊ ×Ù ÒÅÄÁËÔÉÒÕÅÔÅ. á×ÔÏÍÁÔÉÞÅÓËÏÅ ÓÏÈÒÁÎÅÎÉÅ +ÐÒÏÉÓÈÏÄÉÔ × ÆÁÊÌ, ÉÍÑ ËÏÔÏÒÏÇÏ ÔÁËÏÅ ÖÅ, ÎÏ ÎÁÞÉÎÁÅÔÓÑ É ÚÁËÁÎÞÉ×ÁÅÔÓÑ +ÓÉÍ×ÏÌÏÍ "#"; ÎÁÐÒÉÍÅÒ, ÅÓÌÉ ×ÁÛ ÆÁÊÌ ÎÁÚÙ×ÁÅÔÓÑ "hello.c", ÔÏ Á×ÔÏÍÁÔÉÞÅÓËÉ +ÓÏÈÒÁÎÅÎÎÙÊ ÆÁÊÌ ÂÕÄÅÔ ÎÁÚÙ×ÁÔØÓÑ "#hello.c#". ëÏÇÄÁ ×Ù ÓÏÈÒÁÎÉÔÅ ÆÁÊÌ +ÏÂÙÞÎÙÍ ÓÐÏÓÏÂÏÍ, Emacs ÕÄÁÌÉÔ Á×ÔÏÍÁÔÉÞÅÓËÉ ÓÏÈÒÁÎÅÎÎÙÊ ÆÁÊÌ. + +åÓÌÉ ÓÉÓÔÅÍÁ ÚÁ×ÉÓÌÁ, ÔÏ ×Ù ÍÏÖÅÔÅ ×ÏÓÓÔÁÎÏ×ÉÔØ ×ÁÛÉ ÉÚÍÅÎÅÎÉÑ, ËÏÔÏÒÙÊ ÂÙÌÉ +ÓÏÈÒÁÎÅÎÙ Á×ÔÏÍÁÔÉÞÅÓËÉ, ÐÕÔÅÍ ÏÔËÒÙÔÉÑ ÎÕÖÎÏÇÏ ÆÁÊÌÁ (ÆÁÊÌÁ, ËÏÔÏÒÙÊ ×Ù +ÒÅÄÁËÔÉÒÏ×ÁÌÉ, ÎÅ ÓÏÈÒÁÎÅÎÎÏÇÏ), É ÚÁÔÅÍ ÎÁÂÒÁ× M-x recover-file. +ëÏÇÄÁ Õ ×ÁÓ ÚÁÐÒÏÓÑÔ ÐÏÄÔ×ÅÒÖÄÅÎÉÅ, ÎÁÂÅÒÉÔÅ yes, ÞÔÏÂÙ +×ÏÓÓÔÁÎÏ×ÉÔØ Á×ÔÏÍÁÔÉÞÅÓËÉ ÓÏÈÒÁÎÅÎÎÙÅ ÄÁÎÎÙÅ. + + +* ïâìáóôø üèï (ECHO AREA) +------------------------- + +åÓÌÉ Emacs ×ÉÄÉÔ, ÞÔÏ ×Ù ÍÅÄÌÅÎÎÏ ÎÁÂÉÒÁÅÔÅ ËÏÍÁÎÄÙ ÉÚ ÎÅÓËÏÌØËÉÈ ÓÉÍ×ÏÌÏ×, +ÔÏ ÏÎ ÐÏËÁÚÙ×ÁÅÔ ÉÈ ×ÁÍ ×ÎÉÚÕ ÜËÒÁÎÁ, × ÏÂÌÁÓÔÉ ÎÁÚÙ×ÁÅÍÏÊ "ÏÂÌÁÓÔØ ÜÈÏ". +ïÂÌÁÓÔØ ÜÈÏ -- ÜÔÏ ÓÁÍÁÑ ÎÉÖÎÑÑ ÓÔÒÏËÁ ÜËÒÁÎÁ. + + +* óôòïëá óïóôïñîéñ +------------------ + +óÔÒÏËÁ ÓÒÁÚÕ ÎÁÄ ÏÂÌÁÓÔØÀ ÜÈÏ ÎÁÚÙ×ÁÅÔÓÑ "ÓÔÒÏËÏÊ ÓÏÓÔÏÑÎÉÑ". ÷ÙÇÌÑÄÉÔ ÜÔÁ +ÓÔÒÏËÁ ÐÒÉÍÅÒÎÏ ÔÁË: + +--:** TUTORIAL.ru 63% L749 (Fundamental)----------------------- + +üÔÁ ÓÔÒÏËÁ ÓÏÏÂÝÁÅÔ ÐÏÌÅÚÎÕÀ ÉÎÆÏÒÍÁÃÉÀ Ï ÓÏÓÔÏÑÎÉÉ Emacs É ÔÅËÓÔÁ, ËÏÔÏÒÙÊ +×Ù ÒÅÄÁËÔÉÒÕÅÔÅ. + +÷Ù ÕÖÅ ÚÎÁÅÔÅ, ÞÔÏ ÏÚÎÁÞÁÅÔ ÉÍÑ ÆÁÊÌÁ -- ÜÔÏ ÆÁÊÌ, ËÏÔÏÒÙÊ ×Ù ÏÔËÒÙÌÉ. NN% +ÐÏËÁÚÙ×ÁÅÔ ÔÅËÕÝÕÀ ÐÏÚÉÃÉÀ ËÕÒÓÏÒÁ × ÔÅËÓÔÅ; ÜÔÏ ÏÚÎÁÞÁÅÔ ÞÔÏ NN ÐÒÏÃÅÎÔÏ× +ÔÅËÓÔÁ ÎÁÈÏÄÑÔÓÑ ×ÙÛÅ, ÞÅÍ ÎÁÞÁÌÏ ÜËÒÁÎÁ. åÓÌÉ ÐÅÒ×ÁÑ ÓÔÒÏËÁ ×ÓÅÇÏ ÔÅËÓÔÁ +ÎÁÈÏÄÉÔÓÑ × ÐÅÒ×ÏÊ ÓÔÒÏËÅ ÜËÒÁÎÁ, ×Ù ÔÁÍ Õ×ÉÄÉÔÅ "Top" ×ÍÅÓÔÏ "0%". åÓÌÉ ÎÁ +ÜËÒÁÎÅ ÏÔÏÂÒÁÖÁÅÔÓÑ ÐÏÓÌÅÄÎÑÑ ÓÔÒÏËÁ, ÔÏ ÂÕÄÅÔ ÏÔÏÂÒÁÖÅÎÏ "Bot". åÓÌÉ ÔÅËÓÔ +ÎÁÓÔÏÌØËÏ ÍÁÌ, ÞÔÏ ×ÅÓØ ×ÍÅÝÁÅÔÓÑ × ÜËÒÁÎ, ÔÏ ÓÔÒÏËÁ ÓÏÓÔÏÑÎÉÑ ÓÏÏÂÝÉÔ +"All". + +âÕË×Á L É ÃÉÆÒÙ ÐÏËÁÚÙ×ÁÀÔ ÐÏÚÉÃÉÀ ÄÒÕÇÉÍ ÓÐÏÓÏÂÏÍ -- ÏÎÉ ÐÏËÁÚÙ×ÁÀÔ ÎÏÍÅÒ +ÓÔÒÏËÉ × ËÏÔÏÒÏÊ ÎÁÈÏÄÉÔÓÑ ËÕÒÓÏÒ. + +ú×ÅÚÄÏÞËÉ × ÎÁÞÁÌÅ ÓÔÒÏËÉ ÏÚÎÁÞÁÀÔ, ÞÔÏ ×Ù ÉÚÍÅÎÑÌÉ ÔÅËÓÔ. ðÒÉ ÏÔËÒÙÔÉÉ ÉÌÉ +ÓÏÈÒÁÎÅÎÉÉ ÆÁÊÌÁ, ÜÔÁ ÞÁÓÔØ ÓÔÒÏËÉ ÂÕÄÅÔ ÓÏÄÅÒÖÁÔØ ÎÅ Ú×ÅÚÄÏÞËÉ, Á ÔÉÒÅ. + +þÁÓÔØ ÓÔÒÏËÉ ÓÔÁÔÕÓÁ ×ÎÕÔÒÉ ÓËÏÂÏË ÓÏÏÂÝÁÅÔ ×ÁÍ Ï ÒÅÖÉÍÅ ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ, +ËÏÔÏÒÙÍ ×Ù ÓÅÊÞÁÓ ÉÓÐÏÌØÚÕÅÔÅ. óÔÁÎÄÁÒÔÎÙÊ ÒÅÖÉÍ -- Fundamental, ÏÎ +ÉÓÐÏÌØÚÕÅÔÓÑ É ÄÁÎÎÏÍ ÄÏËÕÍÅÎÔÅ. üÔÏ ÐÒÉÍÅÒ "ÏÓÎÏ×ÎÏÇÏ ÒÅÖÉÍÁ" ("major +mode"). + +Emacs ÉÍÅÅÔ ÍÎÏÇÏ ÒÁÚÌÉÞÎÙÈ ÏÓÎÏ×ÎÙÈ ÒÅÖÉÍÏ×. îÅËÏÔÏÒÙÅ ÉÚ ÒÅÖÉÍÏ× +ÉÓÐÏÌØÚÕÀÔÓÑ ÄÌÑ ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ ÔÅËÓÔÁ ÎÁ ÒÁÚÌÉÞÎÙÈ ÑÚÙËÁÈ É/ÉÌÉ ÒÁÚÌÉÞÎÙÈ +×ÉÄÏ× ÔÅËÓÔÁ, ÔÁËÉÅ ËÁË Lisp-ÒÅÖÉÍ, Text-ÒÅÖÉÍ É ÐÒ. ÷ ËÁÖÄÙÊ ÍÏÍÅÎÔ +×ÒÅÍÅÎÉ ÄÅÊÓÔ×ÕÅÔ ÔÏÌØËÏ ÏÄÉÎ ÏÓÎÏ×ÎÏÊ ÒÅÖÉÍ, É ÅÇÏ ÎÁÚ×ÁÎÉÅ ×Ù ÍÏÖÅÔÅ ÎÁÊÔÉ +× ÓËÏÂËÁÈ -- ÔÁÍ, ÇÄÅ ÓÅÊÞÁÓ ÎÁÈÏÄÉÔÓÑ ÓÌÏ×Ï "Fundamental" (ÂÁÚÏ×ÙÊ). + +ëÁÖÄÙÊ ÏÓÎÏ×ÎÏÊ ÒÅÖÉÍ ÚÁÓÔÁ×ÌÑÅÔ ÎÅËÏÔÏÒÙÅ ËÏÍÁÎÄÙ ×ÅÓÔÉ ÓÅÂÑ ÎÅÍÎÏÇÏ ÐÏ +ÄÒÕÇÏÍÕ. îÁÐÒÉÍÅÒ, ÜÔÏ ËÏÍÁÎÄÙ ÓÏÚÄÁÎÉÑ ËÏÍÍÅÎÔÁÒÉÅ× × ÐÒÏÇÒÁÍÍÅ, É +ÐÏÓËÏÌØËÕ × ËÁÖÄÏÍ ÑÚÙËÅ ÐÒÏÇÒÁÍÍÉÒÏ×ÁÎÉÑ ËÏÍÍÅÎÔÁÒÉÉ ÚÁÐÉÓÙ×ÁÀÔÓÑ +ÐÏ-Ó×ÏÅÍÕ, ÔÏ É ËÁÖÄÙÊ ÏÓÎÏ×ÎÏÊ ÒÅÖÉÍ ×ÓÔÁ×ÌÑÅÔ ÉÈ ÐÏ-ÒÁÚÎÏÍÕ. ëÁÖÄÙÊ +ÏÓÎÏ×ÎÏÊ ÒÅÖÉÍ ÉÍÅÅÔ ÉÍÅÎÏ×ÁÎÎÕÀ ËÏÍÁÎÄÕ, ËÏÔÏÒÁÑ ×ËÌÀÞÁÅÔ ÅÇÏ. îÁÐÒÉÍÅÒ, +M-x fundamental-mode -- ÜÔÏ ËÏÍÁÎÄÁ, ËÏÔÏÒÁÑ ×ËÌÀÞÁÅÔ ÂÁÚÏ×ÙÊ (Fundamental) +ÒÅÖÉÍ. + +åÓÌÉ ×Ù ÒÅÄÁËÔÉÒÕÅÔÅ ÔÅËÓÔ ÎÁ ÅÓÔÅÓÔ×ÅÎÎÏÍ ÑÚÙËÅ, ÎÁÐÒÉÍÅÒ, ËÁË ÜÔÏÔ ÆÁÊÌ, +ÔÏ ×Ù ×ÅÒÏÑÔÎÏ ÄÏÌÖÎÙ ÐÅÒÅËÌÀÞÉÔØÓÑ × Text-ÒÅÖÉÍ. + +>> îÁÂÅÒÉÔÅ M-x text mode. + +îÅ ×ÏÌÎÕÊÔÅÓØ, ÎÉ ÏÄÎÁ ÉÚ ×ÙÕÞÅÎÎÙÈ ×ÁÍÉ ËÏÍÁÎÄ Emacs ÎÅ ÉÚÍÅÎÉÌÁÓØ. îÏ ×Ù +ÍÏÖÅÔÅ ÚÁÍÅÔÉÔØ, ÞÔÏ M-f É M-b ÔÅÐÅÒØ ÒÁÓÓÍÁÔÒÉ×ÁÀÔ ÁÐÏÓÔÒÏÆÙ ËÁË ÞÁÓÔØ +ÓÌÏ×Á. òÁÎÅÅ, × ÂÁÚÏ×ÏÍ ÒÅÖÉÍÅ (Fundamental mode), M-f É M-b ÐÏÎÉÍÁÌÉ +ÁÐÏÓÔÒÏÆÙ ËÁË ÒÁÚÄÅÌÉÔÅÌÉ ÓÌÏ×. + +ïÓÎÏ×ÎÏÊ ÒÅÖÉÍ ÏÂÙÞÎÏ ÄÅÌÁÅÔ ÎÅÂÏÌØÛÉÅ ÉÚÍÅÎÅÎÉÑ, ÔÁËÉÅ ËÁË: ÂÏÌØÛÉÎÓÔ×Ï +ËÏÍÁÎÄ ÄÅÌÁÀÔ "ÏÄÎÕ É ÔÕ ÖÅ ÒÁÂÏÔÕ" × ËÁÖÄÏÍ ÉÚ ÒÅÖÉÍÏ×, ÎÏ ÉÈ ÄÅÊÓÔ×ÉÅ +ÏÔÌÉÞÁÅÔÓÑ ËÁËÏÊ-ÎÉÂÕÄØ ÍÅÌÏÞØÀ. + +äÌÑ ÐÒÏÓÍÏÔÒÁ ÄÏËÕÍÅÎÔÁÃÉÉ Ï ÔÅËÕÝÅÍ ÏÓÎÏ×ÎÏÍ ÒÅÖÉÍÅ, ÎÁÖÍÉÔÅ C-h m. + +>> éÓÐÏÌØÚÕÊÔÅ C-u C-v ÏÄÉÎ ÒÁÚ ÉÌÉ ÂÏÌÅÅ, ÞÔÏÂÙ ÒÁÓÐÏÌÏÖÉÔØ ÜÔÕ ÓÔÒÏËÕ + ÂÌÉÖÅ Ë ×ÅÒÈÕ ÜËÒÁÎÁ. +>> îÁÂÅÒÉÔÅ C-h m, ÞÔÏÂÙ ÐÏÓÍÏÔÒÅÔØ ÏÔÌÉÞÉÑ Text-ÒÅÖÉÍÁ ÏÔ ÂÁÚÏ×ÏÇÏ. +>> îÁÂÅÒÉÔÅ C-x 1, ÞÔÏÂÙ ÕÂÒÁÔØ ÄÏËÕÍÅÎÔÁÃÉÀ Ó ÇÌÁÚ ÄÏÌÏÊ :) + +ïÓÎÏ×ÎÏÊ ÒÅÖÉÍ ÎÁÚÙ×ÁÅÔÓÑ ÏÓÎÏ×ÎÙÍ ÐÏÔÏÍÕ, ÞÔÏ ÔÁËÖÅ ÓÕÝÅÓÔ×ÕÀÔ +ÄÏÐÏÌÎÉÔÅÌØÎÙÅ (minor) ÒÅÖÉÍÙ. äÏÐÏÌÎÉÔÅÌØÎÙÅ ÒÅÖÉÍÙ ÎÅ Ñ×ÌÑÀÔÓÑ +ÁÌØÔÅÒÎÁÔÉ×ÁÍÉ ÏÓÎÏ×ÎÙÍ, ÏÎÉ ÔÏÌØËÏ ÎÅÍÎÏÇÏ ÉÚÍÅÎÑÀÔ ÉÈ ÐÏ×ÅÄÅÎÉÅ. ëÁÖÄÙÊ +ÄÏÐÏÌÎÉÔÅÌØÎÙÊ ÒÅÖÉÍ ×ËÌÀÞÁÅÔÓÑ/×ÙËÌÀÞÁÅÔÓÑ ÎÅÚÁ×ÉÓÉÍÏ ÏÔ ÄÒÕÇÉÈ +ÄÏÐÏÌÎÉÔÅÌØÎÙÈ ÒÅÖÉÍÏ×, É ÎÅÚÁ×ÉÓÉÍÏ ÏÔ ×ÁÛÅÇÏ ÏÓÎÏ×ÎÏÇÏ ÒÅÖÉÍÁ. ÷Ù ÍÏÖÅÔÅ +ÉÓÐÏÌØÚÏ×ÁÔØ ÏÓÎÏ×ÎÏÊ ÒÅÖÉÍ ÂÅÚ ÄÏÐÏÌÎÉÔÅÌØÎÙÈ, ÉÌÉ Ó ÌÀÂÏÊ ÉÈ ËÏÍÂÉÎÁÃÉÅÊ. + +ïÄÉÎ ÉÚ ÄÏÐÏÌÎÉÔÅÌØÎÙÈ ÒÅÖÉÍÏ× ÏÞÅÎØ ÐÏÌÅÚÅÎ, ÏÓÏÂÅÎÎÏ ÄÌÑ ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ +ÔÅËÓÔÁ -- ÜÔÏ ÒÅÖÉÍ Á×ÔÏÚÁÐÏÌÎÅÎÉÑ (Auto Fill mode). ëÏÇÄÁ ÜÔÏÔ ÒÅÖÉÍ +×ËÌÀÞÅÎ, ÔÏ Emacs ÒÁÚÒÙ×ÁÅÔ ÓÔÒÏËÉ ÍÅÖÄÕ ÓÌÏ×ÁÍÉ Á×ÔÏÍÁÔÉÞÅÓËÉ, × ÔÅÈ +ÓÌÕÞÁÑÈ ËÏÇÄÁ ×Ù ×ÓÔÁ×ÌÑÅÔÅ ÔÅËÓÔ É ÄÅÌÁÅÔÅ ÓÔÒÏËÉ ÓÌÉÛËÏÍ ÄÌÉÎÎÙÍÉ. + +÷Ù ÍÏÖÅÔÅ ×ËÌÀÞÉÔØ ÒÅÖÉÍ Á×ÔÏÚÁÐÏÌÎÅÎÉÑ, ÎÁÂÒÁ× M-x auto fill mode. +ëÏÇÄÁ ÜÔÏÔ ÒÅÖÉÍ ×ËÌÀÞÅÎ, ÅÇÏ ÍÏÖÎÏ ×ÙËÌÀÞÉÔØ Ó ÐÏÍÏÝØÀ ÔÏÊ ÖÅ ËÏÍÁÎÄÙ -- +M-x auto fill mode. åÓÌÉ ÒÅÖÉÍ ×ËÌÀÞÅÎ, ÔÏ ÔÁËÁÑ ËÏÍÁÎÄÁ ÅÇÏ +×ÙËÌÀÞÉÔ, ÅÓÌÉ ×ÙËÌÀÞÅÎ, ÔÏ ×ËÌÀÞÉÔ. íÙ ÎÁÚÙ×ÁÅÍ ÜÔÏ ËÏÍÁÎÄÏÊ "ÐÅÒÅËÌÀÞÅÎÉÑ +ÒÅÖÉÍÁ". + +>> îÁÂÅÒÉÔÅ M-x auto fill mode. úÁÔÅÍ ××ÏÄÉÔÅ ÓÔÒÏËÕ ÉÚ ÓÌÏ× "ÆÙ×Á " + ÐÏËÁ ÎÅ Õ×ÉÄÉÔÅ, ËÁË ÏÎÁ ÒÁÚÄÅÌÉÔÓÑ ÎÁ Ä×Å ÓÔÒÏËÉ. ÷Ù ÄÏÌÖÎÙ ÐÏÍÅÝÁÔØ + ÐÒÏÂÅÌÙ ÍÅÖÄÕ ÓÌÏ×ÁÍÉ, ÐÏÔÏÍÕ ÞÔÏ ÒÅÖÉÍ Á×ÔÏÚÁÐÏÌÎÅÎÉÑ ÒÁÚÂÉ×ÁÅÔ ÓÔÒÏËÉ + ÔÏÌØËÏ ÐÏ ÐÒÏÂÅÌÁÍ. + +çÒÁÎÉÃÁ ÒÁÚÂÉÅÎÉÑ ÏÂÙÞÎÏ ÒÁ×ÎÁ 70-ÔÉ ÓÉÍ×ÏÌÁÍ, ÎÏ ×Ù ÍÏÖÅÔÅ ÉÚÍÅÎÉÔØ ÅÅ +ÉÓÐÏÌØÚÕÑ ËÏÍÁÎÄÕ C-x f. ÷Ù ÄÏÌÖÎÙ ÚÁÄÁÔØ ÇÒÁÎÉÃÕ × ×ÉÄÅ ÞÉÓÌÏ×ÏÇÏ +ÁÒÇÕÍÅÎÔÁ ÄÌÑ ÜÔÏÊ ËÏÍÁÎÄÙ. + +>> ÷×ÅÄÉÔÅ C-x f Ó ÁÒÇÕÍÅÎÔÏÍ 20 (C-u 2 0 C-x f). úÁÔÅÍ ××ÅÄÉÔÅ ËÁËÏÊ-ÎÉÂÕÄØ + ÔÅËÓÔ, É ÐÏÓÍÏÔÒÉÔÅ ËÁË Emacs ÚÁÐÏÌÎÑÅÔ ÓÔÒÏËÉ ÐÏ 20 ÓÉÍ×ÏÌÏ× × ËÁÖÄÏÊ. + ÷ÅÒÎÉÔÅ ÚÎÁÞÅÎÉÅ ÇÒÁÎÉÃÙ ÒÁ×ÎÏÅ 70 ÎÁÚÁÄ, ÉÓÐÏÌØÚÕÑ ËÏÍÁÎÄÕ C-x f. + +åÓÌÉ ×Ù ÓÄÅÌÁÌÉ ÉÚÍÅÎÅÎÉÑ × ÓÅÒÅÄÉÎÅ ÐÁÒÁÇÒÁÆÁ, ÔÏ Á×ÔÏÚÁÐÏÌÎÅÎÉÅ ÎÅ +ÐÅÒÅÆÏÒÍÁÔÉÒÕÅÔ ÔÅËÓÔ Á×ÔÏÍÁÔÉÞÅÓËÉ. þÔÏÂÙ ÐÅÒÅÆÏÒÍÁÔÉÒÏ×ÁÔØ ÐÁÒÁÇÒÁÆ, +ÎÁÂÅÒÉÔÅ M-q (META-q) ËÏÇÄÁ ËÕÒÓÏÒ ÎÁÈÏÄÉÔÓÑ ×ÎÕÔÒÉ ÐÁÒÁÇÒÁÆÁ. + +>> ðÅÒÅÍÅÓÔÉÔÅ ËÕÒÓÏÒ × ÐÒÅÄÙÄÕÝÉÊ ÐÁÒÁÇÒÁÆ, É ÎÁÖÍÉÔÅ M-q. + + +* ðïéóë +------- + +Emacs ÕÍÅÅÔ ÉÓËÁÔØ ÓÔÒÏËÉ (ÎÅÐÒÅÒÙ×ÎÙÅ ÇÒÕÐÐÙ ÓÉÍ×ÏÌÏ× ÉÌÉ ÓÌÏ×Á) ×ÐÅÒÅÄ ÉÌÉ +ÎÁÚÁÄ ÐÏ ÔÅËÓÔÕ. ðÏÉÓË ÓÔÒÏËÉ -- ÜÔÏ ËÏÍÁÎÄÁ ÐÅÒÅÍÅÝÅÎÉÑ ËÕÒÓÏÒÁ; ÏÎÁ +ÐÅÒÅÍÅÝÁÅÔ ËÕÒÓÏÒ × ÓÌÅÄÕÀÝÕÀ ÔÏÞËÕ, ÇÄÅ ÎÁÊÄÅÎÁ ÉÓËÏÍÁÑ ÓÔÒÏËÁ. + +ëÏÍÁÎÄÁ ÐÏÉÓËÁ Emacs ÏÔÌÉÞÁÅÔÓÑ ÏÔ ÁÎÁÌÏÇÉÞÎÙÈ ËÏÍÁÎÄ ÂÏÌØÛÉÎÓÔ×Á ÄÒÕÇÉÈ +ÒÅÄÁËÔÏÒÏ× ÔÅÍ, ÞÔÏ ÏÎÁ ÉÎËÒÅÍÅÎÔÁÌØÎÁÑ. üÔÏ ÏÚÎÁÞÁÅÔ, ÞÔÏ ÐÏÉÓË ÐÒÏÉÓÈÏÄÉÔ +ÐÏ ÍÅÒÅ, ÔÏÇÏ ËÁË ×Ù ÎÁÂÉÒÁÅÔÅ ÉÓËÏÍÕÀ ÓÔÒÏËÕ. + +ëÏÍÁÎÄÁ, ÎÁÞÉÎÁÀÝÁÑ ÐÏÉÓË ×ÐÅÒÅÄ -- C-s, Á C-r ÉÝÅÔ ÎÁÚÁÄ. ðïäïöäéôå! îÅ +ÎÕÖÎÏ ÐÒÏÂÏ×ÁÔØ ÐÒÑÍÏ ÓÅÊÞÁÓ. + +ëÏÇÄÁ ×Ù ÎÁÖÍÅÔÅ C-s, ×Ù Õ×ÉÄÉÔÅ ÓÔÒÏËÕ "I-search", ÐÏÑ×É×ÛÕÀÓÑ × ÏÂÌÁÓÔÉ ÜÈÏ. +÷ÁÍ ÓÏÏÂÝÁÅÔÓÑ, ÞÔÏ Emacs ÖÄÅÔ ××ÏÄÁ ÓÌÏ×Á, ËÏÔÏÒÏÅ ×Ù ÈÏÔÉÔÅ ÎÁÊÔÉ. + ÚÁ×ÅÒÛÁÅÔ ÐÏÉÓË. + +>> ôÅÐÅÒØ ÎÁÖÍÉÔÅ C-s ÄÌÑ ÎÁÞÁÌÁ ÐÏÉÓËÁ. íÅÄÌÅÎÎÏ, ÐÏ ÏÄÎÏÊ ÂÕË×Å, ÎÁÂÉÒÁÊÔÅ + ÓÌÏ×Ï 'ËÕÒÓÏÒ', ÏÓÔÁÎÁ×ÌÉ×ÁÑÓØ ÐÏÓÌÅ ËÁÖÄÏÊ ××ÅÄÅÎÎÏÊ ÂÕË×Ù É ÚÁÍÅÞÁÑ ÞÔÏ + ÐÒÏÉÓÈÏÄÉÔ Ó ËÕÒÓÏÒÏÍ. + óÅÊÞÁÓ ×Ù ÎÁÛÌÉ ÐÅÒ×ÏÅ ×ÈÏÖÄÅÎÉÅ ÓÌÏ×Á "ËÕÒÓÏÒ". +>> îÁÖÍÉÔÅ C-s ÓÎÏ×Á, ÞÔÏÂÙ ÎÁÊÔÉ ÓÌÅÄÕÀÝÅÅ ×ÈÏÖÄÅÎÉÅ ÓÌÏ×Á "ËÕÒÓÏÒ". +>> ôÅÐÅÒØ ÎÁÖÍÉÔÅ ÞÅÔÙÒÅ ÒÁÚÁ É ÐÒÏÓÌÅÄÉÔÅ ÚÁ ÐÅÒÅÍÅÝÅÎÉÑÍÉ ËÕÒÓÏÒÁ. +>> îÁÖÍÉÔÅ ÄÌÑ ÚÁ×ÅÒÛÅÎÉÑ ÐÏÉÓËÁ. + +÷Ù ÚÁÍÅÔÉÌÉ, ÞÔÏ ÐÒÏÉÓÈÏÄÉÌÏ? Emacs × ÒÅÖÉÍÅ ÉÎËÒÅÍÅÎÔÁÌØÎÏÇÏ ÐÏÉÓËÁ ÐÙÔÁÌÓÑ +ÐÅÒÅÈÏÄÉÔØ Ë ÓÔÒÏËÁÍ, ÓÏ×ÐÁÄÁÀÝÉÍ Ó ÎÁÂÉÒÁÅÍÏÊ ×ÁÍÉ ÓÔÒÏËÏÊ, ÐÏÄÓ×ÅÞÉ×ÁÑ ÉÈ. +þÔÏÂÙ ÐÅÒÅÊÔÉ Ë ÓÌÅÄÕÀÝÅÍÕ ×ÈÏÖÄÅÎÉÑ ÓÌÏ×Á 'ËÕÒÓÏÒ' ÐÒÏÓÔÏ ÎÁÖÍÉÔÅ C-s +ÓÎÏ×Á. åÓÌÉ ÂÏÌØÛÅ ÎÅÔ ×ÈÏÖÄÅÎÉÊ, ÔÏ Emacs ÉÚÄÁÓÔ Ú×ÕËÏ×ÏÊ ÓÉÇÎÁÌ, É +ÓÏÏÂÝÉÔ, ÞÔÏ ×ÁÛ ÐÏÉÓË ÎÅ ÕÄÁÌÓÑ ("failing"), C-g ÔÁËÖÅ ÍÏÖÅÔ ÏÔÍÅÎÉÔØ +ÐÏÉÓË. + +úáíåþáîéå: îÁ ÎÅËÏÔÏÒÙÈ ÓÉÓÔÅÍÁÈ, ××ÏÄ C-x C-s ÚÁÂÌÏËÉÒÕÅÔ ÜËÒÁÎ, ÔÁË ÞÔÏ ×Ù +ÎÅ Õ×ÉÄÉÔÅ ÐÏÓÌÅÄÕÀÝÅÇÏ ×Ù×ÏÄÁ Emacs`Á. ôÁËÏÅ ÐÏ×ÅÄÅÎÉÅ ÏÚÎÁÞÁÅÔ, ÞÔÏ +ÏÐÅÒÁÃÉÏÎÎÁÑ ÓÉÓÔÅÍÁ ÉÍÅÅÔ "ÏÓÏÂÅÎÎÏÓÔØ", ÉÍÅÎÕÅÍÕÀ "flow control", +ÐÅÒÅÈ×ÁÔÙ×ÁÀÝÕÀ ÓÏÞÅÔÁÎÉÅ C-s É ÎÅ ÐÒÏÐÕÓËÁÀÝÕÀ ÜÔÏÔ ÓÉÍ×ÏÌ Ë Emacs`Õ. äÌÑ +ÓÎÑÔÉÑ ÂÌÏËÉÒÏ×ËÉ ÜËÒÁÎÁ, ÎÁÖÍÉÔÅ C-q. ïÂÒÁÔÉÔÅÓØ Ë ÒÁÚÄÅÌÕ "Spontaneous +Entry to Incremental Search" ÒÕËÏ×ÏÄÓÔ×Á Emacs, ÞÔÏÂÙ ÕÚÎÁÔØ Ï ÔÏÍ, ËÁË +ÂÏÒÏÔØÓÑ Ó ÜÔÏÊ "ÏÓÏÂÅÎÎÏÓÔØÀ". + +åÓÌÉ ×Ù ×Ï ×ÒÅÍÑ ÉÎËÒÅÍÅÎÔÁÌØÎÏÇÏ ÐÏÉÓËÁ ÎÁÖÍÅÔÅ , ÔÏ ×Ù ÚÁÍÅÔÉÔÅ, +ÞÔÏ ÐÏÓÌÅÄÎÉÊ ÓÉÍ×ÏÌ × ÉÓËÏÍÏÊ ÓÔÒÏËÅ ÕÄÁÌÉÌÓÑ, É ÐÏÉÓË ×ÅÒÎÕÌÓÑ Ë +ÐÒÅÄÙÄÕÝÅÍÕ ÎÁÊÄÅÎÎÏÍÕ ÍÅÓÔÕ. îÁÐÒÉÍÅÒ, ÐÒÅÄÐÏÌÏÖÉÍ, ÞÔÏ ×Ù ÎÁÂÒÁÌÉ "Ë", +ÐÏÉÓË ÐÅÒÅÊÄÅÔ Ë ÐÅÒ×ÏÍÕ ×ÈÏÖÄÅÎÉÀ ÓÉÍ×ÏÌÁ "Ë". ôÅÐÅÒØ, ÅÓÌÉ ×Ù ÎÁÂÅÒÅÔÅ +"Õ", ËÕÒÓÏÒ ÐÅÒÅÊÄÅÔ Ë ÐÅÒ×ÏÍÕ ×ÈÏÖÄÅÎÉÀ "ËÕ". îÁÖÁÔÉÅ ÕÄÁÌÉÔ +ÓÉÍ×ÏÌ "Õ" ÉÚ ÓÔÒÏËÉ ÐÏÉÓËÁ, É ËÕÒÓÏÒ ×ÅÒÎÅÔÓÑ Ë ÐÅÒ×ÏÍÕ ×ÈÏÖÄÅÎÉÀ "Ë". + +åÓÌÉ ×Ù ×Ï ×ÒÅÍÑ ÐÏÉÓËÁ ××ÅÄÅÔÅ control- ÉÌÉ meta- ÓÉÍ×ÏÌ (ÚÁ ÎÅËÏÔÏÒÙÍÉ +ÉÓËÌÀÞÅÎÉÑÍÉ, ÔÁËÉÍÉ, ËÁË ÓÉÍ×ÏÌÙ ÎÁÞÉÎÁÀÝÉÅ ÐÏÉÓË, Á ÉÍÅÎÎÏ C-s É C-r), +ÐÏÉÓË ÐÒÅËÒÁÔÉÔÓÑ. + +C-s ÎÁÞÉÎÁÅÔ ÐÏÉÓË É ÉÝÅÔ ÌÀÂÙÅ ×ÈÏÖÄÅÎÉÑ ÉÓËÏÍÏÊ ÓÔÒÏËÉ ðïóìå ÔÅËÕÝÅÊ +ÐÏÚÉÃÉÉ ËÕÒÓÏÒÁ. åÓÌÉ ×Ù ÈÏÔÉÔÅ ÎÁÊÔÉ ÞÔÏ-ÔÏ ÒÁÎÅÅ × ÔÅËÓÔÅ, ÔÏ ÎÁÖÍÉÔÅ +C-r. ÷ÓÅ, ÞÔÏ ÍÙ ÇÏ×ÏÒÉÌÉ Ï C-s, ÐÒÉÍÅÎÉÍÏ É Ë C-r, ÚÁ ÉÓËÌÀÞÅÎÉÅÍ +ÐÒÏÔÉ×ÏÐÏÌÏÖÎÏÇÏ ÎÁÐÒÁ×ÌÅÎÉÑ ÐÏÉÓËÁ. + + +* íîïöåóô÷ï ïëïî (MULTIPLE WINDOWS) +----------------------------------- + +ïÄÎÁ ÉÚ ÐÒÉÑÔÎÙÈ ÏÓÏÂÅÎÎÏÓÔÅÊ Emacs Ñ×ÌÑÅÔÓÑ ÔÏ, ÞÔÏ ×Ù ÍÏÖÅÔÅ ÏÄÎÏ×ÒÅÍÅÎÎÏ +ÏÔÏÂÒÁÖÁÔØ ÎÁ ÜËÒÁÎÅ ÎÅÓËÏÌØËÏ ÏËÏÎ. + +>> ðÅÒÅÍÅÓÔÉÔÅ ËÕÒÓÏÒ ÎÁ ÜÔÕ ÓÔÒÏËÕ, É ÎÁÂÅÒÉÔÅ C-u 0 C-l (ÜÔÏ CONTROL-L, Á + ÎÅ CONTROL-1). + +>> ôÅÐÅÒØ ÎÁÂÅÒÉÔÅ C-x 2, ÞÔÏ ÒÁÚÄÅÌÉÔ ÜËÒÁÎ ÎÁ Ä×Á ÏËÎÁ. + ïÂÁ ÏËÎÁ ÏÔÏÂÒÁÖÁÀÔ ÕÞÅÂÎÉË. ëÕÒÓÏÒ ÏÓÔÁÌÓÑ × ×ÅÒÈÎÅÍ ÏËÎÅ. + +>> îÁÖÍÉÔÅ C-M-v ÄÌÑ ÐÒÏËÒÕÔËÉ ÎÉÖÎÅÇÏ ÏËÎÁ. + (ÅÓÌÉ Õ ×ÁÓ ÎÅÔ ÎÁÓÔÏÑÝÅÊ ËÎÏÐËÉ META (Alt), ÔÏ ÎÁÖÍÉÔÅ C-v.) + +>> îÁÖÍÉÔÅ C-x o ("o" ÏÔ ÓÌÏ×Á "other" -- ÄÒÕÇÏÅ) ÄÌÑ ÐÅÒÅÍÅÝÅÎÉÑ ËÕÒÓÏÒÁ × + ÎÉÖÎÅÅ ÏËÎÏ. +>> éÓÐÏÌØÚÕÊÔÅ C-v É M-v × ÎÉÖÎÅÍ ÏËÎÅ, ÄÌÑ ÐÒÏËÒÕÔËÉ ÔÅËÓÔÁ. + ðÒÏÄÏÌÖÉÔÅ ÞÔÅÎÉÅ ÜÔÉÈ ÉÎÓÔÒÕËÃÉÊ × ×ÅÒÈÎÅÍ ÏËÎÅ. + +>> îÁÖÍÉÔÅ C-x o ÓÎÏ×Á, ÞÔÏÂÙ ÐÅÒÅÍÅÓÔÉÔØ ËÕÒÓÏÒ ÎÁÚÁÄ × ×ÅÒÈÎÅÅ ÏËÎÏ. + ëÕÒÓÏÒ × ×ÅÒÈÎÅÍ ÏËÎÅ ÔÁÍ ÖÅ, ÇÄÅ É ÂÙÌ ÄÏ ÔÏÇÏ. + +÷Ù ÍÏÖÅÔÅ ÐÒÏÄÏÌÖÁÔØ ÐÅÒÅËÌÀÞÁÔØÓÑ ÍÅÖÄÕ ÏËÎÁÍÉ, ÉÓÐÏÌØÚÕÑ C-x o. ëÁÖÄÏÅ +ÏËÎÏ ÈÒÁÎÉÔ Ó×ÏÀ ÐÏÚÉÃÉÀ ËÕÒÓÏÒÁ, ÎÏ ÔÏÌØËÏ ÏÄÎÏ ÐÏËÁÚÙ×ÁÅÔ ËÕÒÓÏÒ. ÷ÓÅ +ÏÂÙÞÎÙÅ ËÏÍÁÎÄÙ ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ ÐÒÉÍÅÎÑÀÔÓÑ Ë ÏËÎÕ, × ËÏÔÏÒÏÍ ÏÔÏÂÒÁÖÁÅÔÓÑ +ËÕÒÓÏÒ. íÙ ÎÁÚÙ×ÁÅÍ ÜÔÏ ÏËÎÏ "×ÙÂÒÁÎÎÙÍ" ("selected window"). + +ëÏÍÁÎÄÁ C-M-v ÏÞÅÎØ ÕÄÏÂÎÁ, ËÏÇÄÁ ×Ù ÒÅÄÁËÔÉÒÕÅÔÅ ÔÅËÓÔ × ÏÄÎÏÍ ÏËÎÅ, Á +×ÔÏÒÏÅ ÉÓÐÏÌØÚÕÅÔÅ × ËÁÞÅÓÔ×Å ÓÐÒÁ×ÏÞÎÉËÁ. ÷Ù ÍÏÖÅÔÅ ×ÓÅÇÄÁ ÓÏÈÒÁÎÑÔØ +ËÕÒÓÏÒ × ÏËÎÅ ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ É ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏ ÐÒÏÄ×ÉÇÁÔØÓÑ ×Ï ×ÔÏÒÏÍ, +ÉÓÐÏÌØÚÕÑ C-M-v. + +C-M-v -- ÐÒÉÍÅÒ CONTROL-META ÓÉÍ×ÏÌÁ. åÓÌÉ Õ ×ÁÓ ÅÓÔØ ÎÁÓÔÏÑÝÁÑ ËÎÏÐËÁ META +(Alt), ÔÏ ×Ù ÍÏÖÅÔÅ ÎÁÂÒÁÔØ C-M-v, ÎÁÖÁ× ÏÄÎÏ×ÒÅÍÅÎÎÏ CONTROL É META É, ÎÅ +ÏÔÐÕÓËÁÑ ÉÈ, ÎÁÖÁÔØ v. é ÎÅ ×ÁÖÎÏ, ËÁËÁÑ ÉÚ ËÌÁ×ÉÛ ÂÕÄÅÔ ÎÁÖÁÔÁ ÐÅÒ×ÏÊ, +CONTROL ÉÌÉ META, ÐÏÓËÏÌØËÕ ÜÔÉ ËÎÏÐËÉ ÍÏÄÉÆÉÃÉÒÕÀÔ ÔÉÐ ÓÉÍ×ÏÌÁ. + +åÓÌÉ Õ ×ÁÓ ÎÅÔ ÎÁÓÔÏÑÝÅÊ ËÎÏÐËÉ META, É ×ÍÅÓÔÏ ÎÅÅ ×Ù ÉÓÐÏÌØÚÕÅÔÅ , ÔÏ +ÐÏÒÑÄÏË ÄÏÌÖÅÎ ÂÙÔØ ÓÌÅÄÕÀÝÉÍ: ×Ù ÄÏÌÖÎÙ ÎÁÖÁÔØ , Á ÚÁÔÅÍ CTRL-v; +CONTROL- v ÎÅ ÂÕÄÅÔ ÒÁÂÏÔÁÔØ. üÔÏ ÐÒÏÉÓÈÏÄÉÔ ÐÏÔÏÍÕ, ÞÔÏ ÉÍÅÅÔ +Ó×ÏÊ ÓÏÂÓÔ×ÅÎÎÙÊ ÓÉÍ×ÏÌ -- ÜÔÏ ÎÅ ÍÏÄÉÆÉÃÉÒÕÀÝÁÑ ËÎÏÐËÁ. + +>> îÁÖÍÉÔÅ C-x 1 (× ×ÅÒÈÎÅÍ ÏËÎÅ), ÞÔÏÂÙ ÉÚÂÁ×ÉÔØÓÑ ÏÔ ÎÉÖÎÅÇÏ ÏËÎÁ. + +(åÓÌÉ ÂÙ ×Ù ÎÁÖÁÌÉ C-x 1 × ÎÉÖÎÅÍ ÏËÎÅ, ÔÏ ×Ù ÂÙ ÉÚÂÁ×ÉÌÉÓØ ÏÔ ×ÅÒÈÎÅÇÏ. +ðÏÎÉÍÁÊÔÅ ÜÔÕ ËÏÍÁÎÄÕ ËÁË "ïÓÔÁ×ÉÔØ ÔÏÌØËÏ ÏÄÎÏ ÏËÎÏ -- ÔÏ, × ËÏÔÏÒÏÍ Ñ +ÓÅÊÞÁÓ ÎÁÈÏÖÕÓØ"). + +÷ÁÍ ÎÅ ÎÕÖÎÏ ÏÔÏÂÒÁÖÁÔØ ÏÄÉÎ É ÔÏÔ ÖÅ ÂÕÆÅÒ × ÏÂÏÉÈ ÏËÎÁÈ. åÓÌÉ ×Ù +ÉÓÐÏÌØÚÕÅÔÅ C-x C-f, ÞÔÏÂÙ ÏÔËÒÙÔØ ÆÁÊÌ × ÏÄÎÏÍ ÏËÎÅ, ÄÒÕÇÏÅ ÏÓÔÁÎÅÔÓÑ ÂÅÚ +ÉÚÍÅÎÅÎÉÑ. ÷Ù ÍÏÖÅÔÅ ÏÔËÒÙ×ÁÔØ ÆÁÊÌÙ × ËÁÖÄÏÍ ÏËÎÅ ÎÅÚÁ×ÉÓÉÍÏ. + +åÓÔØ ÄÒÕÇÏÊ ÐÕÔØ ÉÓÐÏÌØÚÏ×ÁÔØ Ä×Á ÏËÎÁ, ÏÔÏÂÒÁÖÁÀÝÉÈ ÒÁÚÎÙÅ ÆÁÊÌÙ: + +>> îÁÂÅÒÉÔÅ C-x 4 C-f, É ××ÅÄÉÔÅ ÉÍÑ ÏÄÎÏÇÏ É ×ÁÛÉÈ ÆÁÊÌÏ×. úÁ×ÅÒÛÉÔÅ ××ÏÄ + ÎÁÖÁÔÉÅÍ . úÁÍÅÔØÔÅ, ÞÔÏ ×ÙÂÒÁÎÎÙÊ ÆÁÊÌ ÐÏÑ×ÉÌÓÑ × ÎÉÖÎÅÍ ÏËÎÅ. + ëÕÒÓÏÒ ÐÅÒÅÛÅÌ ÔÕÄÁ ÖÅ. + +>> îÁÂÅÒÉÔÅ C-x o, ÞÔÏÂÙ ×ÅÒÎÕÔØÓÑ × ×ÅÒÈÎÅÅ ÏËÎÏ, É ÚÁÔÅÍ C-x 1, ÞÔÏÂÙ + ÕÄÁÌÉÔØ ÎÉÖÎÅÅ ÏËÎÏ. + + +* òåëõòóé÷îùå õòï÷îé òåäáëôéòï÷áîéñ (RECURSIVE EDITING LEVELS) +-------------------------------------------------------------- + +éÎÏÇÄÁ ×Ù ÂÕÄÅÔÅ ÐÏÐÁÄÁÔØ × ÔÁË ÎÁÚÙ×ÁÅÍÙÅ "ÒÅËÕÒÓÉ×ÎÙÅ ÕÒÏ×ÎÉ +ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ". îÁ ÜÔÏ ÕËÁÚÙ×ÁÀÔ ÐÒÑÍÏÕÇÏÌØÎÙÅ ÓËÏÂËÉ × ÓÔÒÏËÅ ÓÔÁÔÕÓÁ, +ÏËÒÕÖÁÀÝÉÅ ÏÂÙÞÎÙÅ ÓËÏÂËÉ ×ÏËÒÕÇ ÉÍÅÎÉ ÏÓÎÏ×ÎÏÇÏ ÒÅÖÉÍÁ. îÁÐÒÉÍÅÒ, ×Ù +Õ×ÉÄÉÔÅ [(Fundamental)] ×ÍÅÓÔÏ (Fundamental). + +þÔÏÂÙ ×ÙÊÔÉ ÉÚ ÒÅËÕÒÓÉ×ÎÙÈ ÕÒÏ×ÎÅÊ ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ, ÎÁÖÍÉÔÅ +. üÔÏ ÍÎÏÇÏÃÅÌÅ×ÁÑ ËÏÍÁÎÄÁ "×ÙÈÏÄ". ÷Ù ÔÁËÖÅ ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ ÅÅ, +ËÁË ÄÌÑ ÕÎÉÞÔÏÖÅÎÉÑ ÌÉÛÎÉÈ ÏËÏÎ, ÔÁË É ÄÌÑ ×ÙÈÏÄÁ ÉÚ ÍÉÎÉ-ÂÕÆÅÒÁ. + +>> îÁÖÍÉÔÅ M-x, ÞÔÏÂÙ ÐÏÐÁÓÔØ × ÍÉÎÉ-ÂÕÆÅÒ, Á ÚÁÔÅÍ ÎÁÖÍÉÔÅ + , ÞÔÏÂÙ ÐÏËÉÎÕÔØ ÅÇÏ. + +÷Ù ÎÅ ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ C-g, ÄÌÑ ×ÙÈÏÄÁ ÉÚ ÒÅËÕÒÓÉ×ÎÙÈ ÕÒÏ×ÎÅÊ +ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ. üÔÏ ÐÏÔÏÍÕ, ÞÔÏ C-g ÉÓÐÏÌØÚÕÅÔÓÑ ÄÌÑ ÏÔÍÅÎÙ ËÏÍÁÎÄÙ É +ÁÒÇÕÍÅÎÔÏ× âåú ÒÅËÕÒÓÉ×ÎÙÈ ÕÒÏ×ÎÅÊ ÒÅÄÁËÔÉÒÏ×ÁÎÉÑ. + + +* ëáë ðïìõþéôø äïðïìîéôåìøîõà ðïíïýø +------------------------------------ + +÷ ÜÔÏÍ ÕÞÅÂÎÉËÅ ÍÙ ÐÏÐÙÔÁÌÉÓØ ÓÎÁÂÄÉÔØ ×ÁÓ ÔÏÌØËÏ ÔÏÊ ÉÎÆÏÒÍÁÃÉÅÊ, ËÏÔÏÒÁÑ +ÐÏÍÏÖÅÔ ×ÁÍ ÎÁÞÁÔØ ÐÏÌØÚÏ×ÁÔØÓÑ Emacs. ïÞÅÎØ ÍÎÏÇÏ ÉÎÆÏÒÍÁÃÉÉ ÄÏÓÔÕÐÎÏ × +Emacs, É ÎÅ×ÏÚÍÏÖÎÏ ×ÓÀ ÅÅ ÐÒÅÄÓÔÁ×ÉÔØ ÚÄÅÓØ. ïÄÎÁËÏ, ×Ù ÍÏÖÅÔÅ ×ÙÕÞÉÔØ +ÂÏÌØÛÅ ×ÏÚÍÏÖÎÏÓÔÅÊ Emacs É ÕÚÎÁÔØ ÄÒÕÇÉÅ ÐÏÌÅÚÎÙÅ ÏÓÏÂÅÎÎÏÓÔÉ. Emacs +ÐÒÅÄÏÓÔÁ×ÌÑÅÔ ËÏÍÁÎÄÙ ÄÌÑ ÞÔÅÎÉÑ ÄÏËÕÍÅÎÔÁÃÉÉ Ï ËÏÍÁÎÄÁÈ Emacs. üÔÉ ËÏÍÁÎÄÙ +"ÓÐÒÁ×ËÉ" ("help") ×ÓÅ ÎÁÞÉÎÁÀÔÓÑ Ó ÓÉÍ×ÏÌÁ CONTROL-h, ËÏÔÏÒÙÊ Ñ×ÌÑÅÔÓÑ +"ÓÉÍ×ÏÌÏÍ ÐÏÍÏÝÉ". + +þÔÏÂÙ ÉÓÐÏÌØÚÏ×ÁÔØ ×ÏÚÍÏÖÎÏÓÔÉ ÓÐÒÁ×ËÉ, ÎÁÖÍÉÔÅ C-h, É ÚÁÔÅÍ ÓÉÍ×ÏÌ, ËÏÔÏÒÙÊ +ÒÁÓÓËÁÖÅÔ, ËÁËÏÊ ÉÍÅÎÎÏ ×ÉÄ ÓÐÒÁ×ËÉ ×Ù ÈÏÔÉÔÅ ÐÏÌÕÞÉÔØ. åÓÌÉ ×Ù +äåêóô÷éôåìøîï ÒÁÓÔÅÒÑÌÉÓØ, ÎÁÂÅÒÉÔÅ C-h ?, É Emacs ÒÁÓÓËÁÖÅÔ ×ÁÍ Ï ÔÏÍ, +ËÁËÕÀ ÓÐÒÁ×ËÕ ÏÎ ÍÏÖÅÔ ×ÁÍ ÐÒÅÄÏÓÔÁ×ÉÔØ. åÓÌÉ ×Ù ÎÁÖÁÌÉ C-h É ÐÅÒÅÄÕÍÁÌÉ +ÏÂÒÁÝÁÔØÓÑ Ë ÓÐÒÁ×ËÅ, ÔÏ ÐÒÏÓÔÏ ÎÁÖÍÉÔÅ C-g, ÞÔÏÂÙ ÏÔÍÅÎÉÔØ ÜÔÕ ËÏÍÁÎÄÕ. + +(ëÏÅ-ÇÄÅ ÐÅÒÅÎÁÚÎÁÞÁÀÔ ÓÉÍ×ÏÌ C-h. òÅÁÌØÎÏÊ ÎÅÏÂÈÏÄÉÍÏÓÔÉ × ÜÔÏÍ ÎÅÔ, É +ÅÓÌÉ ÜÔÏ ÔÁË, ÔÏ ÓÏÏÂÝÉÔÅ Ï ÜÔÏÍ ÓÉÓÔÅÍÎÏÍÕ ÁÄÍÉÎÉÓÔÒÁÔÏÒÕ. ôÅÍ ×ÒÅÍÅÎÅÍ, +ÅÓÌÉ C-h ÎÅ ×ÙÚÙ×ÁÅÔ ÓÏÏÂÝÅÎÉÅ ÐÏÍÏÝÉ ×ÎÉÚÕ ÜËÒÁÎÁ, ÔÏ ÐÏÐÒÏÂÕÊÔÅ ×ÍÅÓÔÏ +ÜÔÏÇÏ ÎÁÖÁÔØ ËÌÁ×ÉÛÕ F1 ÉÌÉ ÎÁÂÒÁÔØ M-x help RET). + +ïÄÎÁ ÉÚ ÓÁÍÙÈ ÇÌÁ×ÎÙÈ ÆÕÎËÃÉÊ ÓÐÒÁ×ËÉ -- C-h c. îÁÖÍÉÔÅ C-h, ÚÁÔÅÍ c, É +ÓÉÍ×ÏÌ ËÏÍÁÎÄÙ ÉÌÉ ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÓÔØ, É Emacs ÏÔÏÂÒÁÚÉÔ ËÒÁÔËÏÅ ÎÁÂÒÁÎÎÏÊ +ÏÐÉÓÁÎÉÅ ËÏÍÁÎÄÙ. + +>> îÁÖÍÉÔÅ C-h c C-p. + +óÏÏÂÝÅÎÉÅ ÄÏÌÖÎÏ ×ÙÇÌÑÄÅÔØ ÐÒÉÍÅÒÎÏ ÔÁË: + + C-p runs the command previous-line + (C-p ×ÙÐÏÌÎÑÅÔ ËÏÍÁÎÄÕ previous-line {ÐÒÅÄÙÄÕÝÁÑ-ÓÔÒÏËÁ}) + +÷ÁÍ ÓÏÏÂÝÁÀÔ "ÉÍÑ ÆÕÎËÃÉÉ". éÍÅÎÁ ÆÕÎËÃÉÊ ÉÓÐÏÌØÚÕÀÔÓÑ × ÏÓÎÏ×ÎÏÍ ÄÌÑ +ÎÁÓÔÒÏÊËÉ É ÒÁÓÛÉÒÅÎÉÑ Emacs. éÍÅÎÁ ÆÕÎËÃÉÊ ×ÙÂÒÁÎÙ ÔÁË, ÞÔÏÂÙ ÐÏËÁÚÁÔØ, ÞÔÏ +ÉÍÅÎÎÏ ËÏÍÁÎÄÁ ÄÅÌÁÅÔ, Á ÔÁËÖÅ ÏÎÉ ÐÏÚ×ÏÌÑÀÔ Ó ÐÏÍÏÝØÀ ÜÔÏÊ ËÒÁÔËÏÊ +ÉÎÆÏÒÍÁÃÉÉ ÌÅÇÞÅ ÚÁÐÏÍÎÉÔØ ÕÖÅ ×ÙÕÞÅÎÎÙÅ ËÏÍÁÎÄÙ. + +íÎÏÇÏÓÉÍ×ÏÌØÎÙÅ ÓÏÞÅÔÁÎÉÑ ËÌÁ×ÉÛ, ÔÁËÉÅ ËÁË C-x C-s É (ÅÓÌÉ Õ ×ÁÓ ÎÅÔ ËÎÏÐËÉ +META ÉÌÉ EDIT ÉÌÉ ALT) v ÔÁËÖÅ ÂÕÄÕÔ ÄÏÓÔÕÐÎÙ ÄÌÑ ÐÏÌÕÞÅÎÉÑ ÓÐÒÁ×ËÉ Ó +ÐÏÍÏÝØÀ C-h c. + +÷Ù ÍÏÖÅÔÅ ÐÏÌÕÞÉÔØ ÂÏÌØÛÅ ÉÎÆÏÒÍÁÃÉÉ Ï ËÏÍÁÎÄÅ ÉÓÐÏÌØÚÕÑ C-h k ×ÍÅÓÔÏ C-h c. + +>> îÁÂÅÒÉÔÅ C-h k C-p. + +÷Ù Õ×ÉÄÉÔÅ ÏÐÉÓÁÎÉÅ ÆÕÎËÃÉÉ, Á ÔÁËÖÅ ÅÅ ÉÍÑ × ÏÔÄÅÌØÎÏÍ ÏËÎÅ Emacs. ëÏÇÄÁ ×Ù +ÚÁ×ÅÒÛÉÔÅ ÞÔÅÎÉÅ, ÎÁÖÍÉÔÅ C-x 1, ÞÔÏÂÙ ÉÚÂÁ×ÉÔØÓÑ ÏÔ ÔÅËÓÔÁ ÓÐÒÁ×ËÉ. ÷Ù +ÍÏÖÅÔÅ ×ÙÐÏÌÎÉÔØ ÉÚÍÅÎÅÎÉÅ ÔÅËÓÔÁ ×Ï ×ÒÅÍÑ ÐÒÏÓÍÏÔÒÁ ÔÅËÓÔÁ ÓÐÒÁ×ËÉ, Á +ÔÏÌØËÏ ÚÁÔÅÍ ÎÁÖÁÔØ C-x 1. + +åÓÔØ ÅÝÅ ÎÅÓËÏÌØËÏ ÐÏÌÅÚÎÙÈ ÆÕÎËÃÉÊ, ÄÏÓÔÕÐÎÙÈ ÞÅÒÅÚ C-h: + + C-h f ïÐÉÓÙ×ÁÅÔ ÆÕÎËÃÉÀ. ÷ÁÍ ÎÅÏÂÈÏÄÉÍÏ ÎÁÂÒÁÔØ ÉÍÑ ÆÕÎËÃÉÉ. + +>> ðÏÐÒÏÂÕÊÔÅ ÎÁÂÒÁÔØ C-h f previous-line. + üÔÏ ÒÁÓÐÅÞÁÔÁÅÔ ÉÎÆÏÒÍÁÃÉÀ Emacs Ï ÆÕÎËÃÉÉ, ËÏÔÏÒÁÑ ×ÙÐÏÌÎÑÅÔÓÑ ËÏÍÁÎÄÏÊ + C-p. + +áÎÁÌÏÇÉÞÎÁÑ ËÏÍÁÎÄÁ C-h v ÏÔÏÂÒÁÖÁÅÔ ÄÏËÕÍÅÎÔÁÃÉÀ Ï ÐÅÒÅÍÅÎÎÙÈ, ÚÎÁÞÅÎÉÅ +ËÏÔÏÒÙÈ ×Ù ÍÏÖÅÔÅ ÉÚÍÅÎÉÔØ ÄÌÑ ÎÁÓÔÒÏÊËÉ ÐÏ×ÅÄÅÎÉÑ Emacs. ÷ÁÍ ÎÕÖÎÏ ÎÁÂÒÁÔØ +ÉÍÑ ÐÅÒÅÍÅÎÎÏÊ, ËÏÇÄÁ Emacs ÚÁÐÒÏÓÉÔ ÅÇÏ. + + C-h a (Hyper Apropos). ÷×ÅÄÉÔÅ ËÌÀÞÅ×ÏÅ ÓÌÏ×Ï É Emacs ÐÏËÁÖÅÔ ×ÁÍ ÓÐÉÓÏË + ×ÓÅÈ ÆÕÎËÃÉÊ É ÐÅÒÅÍÅÎÎÙÈ, ÉÍÅÎÁ ËÏÔÏÒÙÈ ÓÏÄÅÒÖÁÔ ÜÔÏ + ÓÌÏ×Ï. ëÏÍÁÎÄÙ, ËÏÔÏÒÙÅ ÍÏÇÕÔ ÂÙÔØ ×ÙÚ×ÁÎÙ ÞÅÒÅÚ Meta-x, ÂÕÄÕÔ + ÏÔÍÅÞÅÎÙ Ú×ÅÚÄÏÞËÏÊ ÓÌÅ×Á. + +>> îÁÂÅÒÉÔÅ C-h a file. + +üÔÏ ÏÔÏÂÒÁÚÉÔ × ÄÒÕÇÏÍ ÏËÎÅ ÓÐÉÓÏË ×ÓÅÈ ËÏÍÁÎÄ M-x Õ ËÏÔÏÒÙÈ × ÉÍÅÎÁÈ +ÓÏÄÅÒÖÉÔÓÑ ÓÌÏ×Ï "file". ôÁËÖÅ × ÓÐÉÓËÅ ËÒÏÍÅ ËÏÍÁÎÄ ÔÁËÉÈ, ËÁË find-file, +×Ù Õ×ÉÄÉÔÅ ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÅ ÓÉÍ×ÏÌØÎÙÅ ËÏÍÁÎÄÙ ÔÁËÉÅ, ËÁË C-x C-f. + +>> îÁÂÅÒÉÔÅ C-M-v ÄÌÑ ÐÒÏËÒÕÔËÉ ÏËÎÁ ÓÐÒÁ×ËÉ. ÷ÙÐÏÌÎÉÔÅ ÜÔÏ ÎÅÓËÏÌØËÏ ÒÁÚ. + +>> îÁÂÅÒÉÔÅ C-x 1 ÄÌÑ ÕÄÁÌÅÎÉÑ ÏËÎÁ ÓÐÒÁ×ËÉ. + + C-h i þÉÔÁÔØ ÉÎÔÅÒÁËÔÉ×ÎÙÅ ÒÕËÏ×ÏÄÓÔ×Á (ÔÁË ÎÁÚÙ×ÁÅÍÙÅ Info). üÔÁ ËÏÍÁÎÄÁ + ÐÅÒÅÈÏÄÉÔ × ÓÐÅÃÉÁÌØÎÙÊ ÂÕÆÅÒ Ó ÉÍÅÎÅÍ `*info*', ÇÄÅ ×Ù ÍÏÖÅÔÅ + ÞÉÔÁÔØ ÉÎÔÅÒÁËÔÉ×ÎÙÅ ÒÕËÏ×ÏÄÓÔ×Á ÄÌÑ ÐÁËÅÔÏ×, ÕÓÔÁÎÏ×ÌÅÎÎÙÈ × ×ÁÛÅÊ + ÓÉÓÔÅÍÅ. îÁÂÅÒÉÔÅ m emacs ÄÌÑ ÞÔÅÎÉÑ ÒÕËÏ×ÏÄÓÔ×Á ÐÏ + Emacs. åÓÌÉ ×Ù ÎÉËÏÇÄÁ ÒÁÎÅÅ ÎÅ ÉÓÐÏÌØÚÏ×ÁÌÉ Info, ÔÏ ÎÁÂÅÒÉÔÅ ? É + Emacs ÏÔËÒÏÅÔ ÕÞÅÂÎÉË ÐÏ ×ÏÚÍÏÖÎÏÓÔÑÍ ÒÅÖÉÍÁ Info. ïÄÎÁÖÄÙ + ÏÚÎÁËÏÍÉ×ÛÉÓØ Ó ÜÔÉÍ ÕÞÅÂÎÉËÏÍ, ×Ù ÄÏÌÖÎÙ ÉÓÐÏÌØÚÏ×ÁÔØ ÒÕËÏ×ÏÄÓÔ×Ï + Emacs Info × ËÁÞÅÓÔ×Å ÏÓÎÏ×ÎÏÊ ÄÏËÕÍÅÎÔÁÃÉÉ. + + +* äïðïìîéôåìøîùå ÷ïúíïöîïóôé +---------------------------- + +÷Ù ÍÏÖÅÔÅ ÕÚÎÁÔØ ÂÏÌØÛÅ Ï Emacs ÞÉÔÁÑ ÅÇÏ ÒÕËÏ×ÏÄÓÔ×Ï, ËÎÉÇÉ ÉÌÉ +ÉÎÔÅÒÁËÔÉ×ÎÙÊ ÓÐÒÁ×ÏÞÎÉË (ÉÓÐÏÌØÚÕÊÔÅ ÍÅÎÀ Help ÉÌÉ ÎÁÂÅÒÉÔÅ F10 h r). ÷ÁÍ +ÏÓÏÂÅÎÎÏ ÐÏÎÒÁ×ÑÔÓÑ Ä×Å ÆÕÎËÃÉÉ -- ÄÏÐÏÌÎÅÎÉÅ, ËÏÔÏÒÏÅ ÓÏËÒÁÝÁÅÔ ËÏÌÉÞÅÓÔ×Ï +ÎÁÖÉÍÁÅÍÙÈ ËÌÁ×ÉÛ, É dired, ËÏÔÏÒÙÊ ÏÂÌÅÇÞÁÅÔ ÒÁÂÏÔÕ Ó ÆÁÊÌÁÍÉ. + +äÏÐÏÌÎÅÎÉÅ ÉÓÐÏÌØÚÕÅÔÓÑ ÄÌÑ ÔÏÇÏ, ÞÔÏÂÙ ÉÚÂÅÖÁÔØ ÎÁÂÏÒÁ ÌÉÛÎÉÈ ÓÉÍ×ÏÌÏ×. +îÁÐÒÉÍÅÒ, ÅÓÌÉ ×Ù ÈÏÔÉÔÅ ÐÅÒÅËÌÀÞÉÔØÓÑ × ÂÕÆÅÒ *Messages*, ÔÏ ×Ù ÍÏÖÅÔÅ +ÎÁÂÒÁÔØ C-x b *M É Emacs ÚÁÐÏÌÎÉÔ ÏÓÔÁÔÏË ÉÍÅÎÉ ÂÕÆÅÒÁ, ÐÏÓËÏÌØËÕ ÏÎ +ÍÏÖÅÔ ÏÐÒÅÄÅÌÉÔØ ÅÇÏ ÉÚ ÔÏÇÏ, ÞÔÏ ×Ù ÕÖÅ ÎÁÂÒÁÌÉ. äÏÐÏÌÎÅÎÉÑ ÏÐÉÓÁÎÙ × +Info-×ÅÒÓÉÉ ÒÕËÏ×ÏÄÓÔ×Á ÐÏ Emacs × ÒÁÚÄÅÌÅ "Completion". + +Dired ÐÏÚ×ÏÌÑÅÔ ×ÁÍ ÏÔÏÂÒÁÖÁÔØ ÓÐÉÓÏË ÆÁÊÌÏ× × ËÁÔÁÌÏÇÅ (Á ÔÁËÖÅ +ÐÏÄËÁÔÁÌÏÇÁÈ, × ÚÁ×ÉÓÉÍÏÓÔÉ ÏÔ ÎÁÓÔÒÏÊËÉ), ÐÅÒÅÍÅÝÁÔØÓÑ ÐÏ ÓÐÉÓËÕ ÆÁÊÌÏ×, +ÏÔËÒÙ×ÁÔØ ÉÈ, ÐÅÒÅÉÍÅÎÏ×Ù×ÁÔØ, ÕÄÁÌÑÔØ É ×ÙÐÏÌÎÑÔØ ÐÒÏÞÉÅ ÄÅÊÓÔ×ÉÑ ÎÁÄ +ÆÁÊÌÁÍÉ. Dired ÏÐÉÓÁÎ × Info-×ÅÒÓÉÉ ÒÕËÏ×ÏÄÓÔ×Á ÐÏ Emacs × ÒÁÚÄÅÌÅ "Dired". + +÷ ÒÕËÏ×ÏÄÓÔ×Å ÔÁËÖÅ ÏÐÉÓÁÎÙ ÐÒÏÞÉÅ ×ÏÚÍÏÖÎÏÓÔÉ Emacs. + + +* úáëìàþåîéå +------------ + +úÁÐÏÍÎÉÔÅ, ÞÔÏ ÄÌÑ ÔÏÇÏ ÞÔÏÂÙ ÓÏ×ÓÅÍ ×ÙÊÔÉ ÉÚ Emacs, ÉÓÐÏÌØÚÕÅÔÓÑ ÓÏÞÅÔÁÎÉÅ +ËÌÁ×ÉÛ C-x C-c. á ÞÔÏÂÙ ×ÒÅÍÅÎÎÏ ×ÙÊÔÉ × ÏÂÏÌÏÞËÕ (shell) É ÐÏÔÏÍ ×ÅÒÎÕÔØÓÑ +ÏÂÒÁÔÎÏ, ÉÓÐÏÌØÚÕÊÔÅ C-z. + +üÔÏÔ ÕÞÅÂÎÉË ÄÏÌÖÅÎ ÂÙÔØ ÐÏÎÑÔÅÎ ×ÓÅÍ ÎÏ×ÙÍ ÐÏÌØÚÏ×ÁÔÅÌÑÍ, ÎÏ ÅÓÌÉ ×Ù +ÎÁÊÄÅÔÅ ÞÔÏ-ÎÉÂÕÄØ ÎÅÑÓÎÏÅ, ÎÅ ÎÕÖÎÏ ÓÉÄÅÔØ É ÐÏÒÉÃÁÔØ ÓÅÂÑ -- ÖÁÌÕÊÔÅÓØ! + + +* õóìï÷éñ òáóðòïóôòáîåîéñ +------------------------- + +üÔÏÔ ÕÞÅÂÎÉË ÐÒÏÉÚÏÛÅÌ ÉÚ ÄÌÉÎÎÏÊ ÓÅÒÉÉ ÕÞÅÂÎÉËÏ× Emacs, ÎÁÞÁÔÏÊ Ó ÏÄÎÁÖÄÙ +ÎÁÐÉÓÁÎÎÏÇÏ Stuart Cracraft ÄÌÑ ÏÒÉÇÉÎÁÌØÎÏÇÏ Emacs. + +üÔÁ ×ÅÒÓÉÑ ÕÞÅÂÎÉËÁ, ËÁË É GNU Emacs, ÚÁÝÉÝÅÎÁ ÐÒÁ×ÁÍÉ ËÏÐÉÒÏ×ÁÎÉÑ +(copyrighted), É ÐÒÉÈÏÄÉÔ Ó ÏÇÒÁÎÉÞÅÎÉÑÍÉ ÒÁÓÐÒÏÓÔÒÁÎÅÎÉÑ ËÏÐÉÊ ÓÏ +ÓÌÅÄÕÀÝÉÍÉ ÓÏÇÌÁÛÅÎÉÑÍÉ: + +Copyright (C) 1985, 1996, 1998, 2001, 2002, 2003, 2004, + 2005, 2006, 2007 Free Software Foundation, Inc. + + Permission is granted to anyone to make or distribute verbatim copies + of this document as received, in any medium, provided that the + copyright notice and permission notice are preserved, + and that the distributor grants the recipient permission + for further redistribution as permitted by this notice. + + Permission is granted to distribute modified versions + of this document, or of portions of it, + under the above conditions, provided also that they + carry prominent notices stating who last altered them. + +õÓÌÏ×ÉÑ ËÏÐÉÒÏ×ÁÎÉÑ ÓÁÍÏÇÏ Emacs ÂÏÌÅÅ ÓÌÏÖÎÙÅ, ÎÏ ÐÒÉÍÅÒÎÏ × ÔÏÍ ÖÅ ÄÕÈÅ. +ðÏÖÁÌÕÊÓÔÁ, ÐÒÏÞÔÉÔÅ ÆÁÊÌ COPYING É ÚÁÔÅÍ ÄÁÊÔÅ ËÏÐÉÀ GNU Emacs ×ÁÛÉÍ +ÄÒÕÚØÑÍ. ðÏÍÏÇÉÔÅ ÕÎÉÞÔÏÖÉÔØ ÏÂÓÔÒÕËÃÉÏÎÉÚÍ × ÏÂÌÁÓÔÉ ÐÒÏÇÒÁÍÍÎÏÇÏ +ÏÂÅÓÐÅÞÅÎÉÑ ("×ÌÁÄÅÎÉÅ"), ÉÓÐÏÌØÚÕÑ, ÓÏÚÄÁ×ÁÑ É ÒÁÓÐÒÏÓÔÒÁÎÑÑ Ó×ÏÂÏÄÎÏÅ +ÐÒÏÇÒÁÍÍÎÏÅ ÏÂÅÓÐÅÞÅÎÉÅ! + +// ÚÁÍÅÞÁÎÉÑ, ÉÓÐÒÁ×ÌÅÎÉÑ ÏÛÉÂÏË Ó ÖÄÕ ÐÏ ÁÄÒÅÓÕ alexott@gmail.com. +// Alex Ott. + +;;; Local Variables: +;;; coding: cyrillic-koi8 +;;; sentence-end-double-space: nil +;;; End: + +;;; arch-tag: ad4e5698-ea8b-45b7-b236-ed5ad5b72d2b diff --git a/etc/tutorials/TUTORIAL.sk b/etc/tutorials/TUTORIAL.sk new file mode 100644 index 00000000000..7194654736f --- /dev/null +++ b/etc/tutorials/TUTORIAL.sk @@ -0,0 +1,1106 @@ +Tútorial k Emacsu. Podmienky pozri na konci. +Do èe¹tiny prelo¾il Milan Zamazal , do slovenèiny Miroslav +Va¹ko . + +Máte pred sebou tútorial k Emacsu. + +Príkazy Emacsu v¹eobecne vyu¾ívajú klávesu CONTROL (obèas oznaèovanú ako CTRL +alebo CTL) alebo klávesu META (obèas oznaèovanú EDIT alebo ALT). Aby sme tieto +názvy nemuseli stále písa» v plnom znení, budeme pou¾íva» nasledujúce skratky: + C- znamená podr¾a» klávesu CONTROL a stlaèi» znak . + Teda C-f znamená: podr¾te klávesu CONTROL a stlaète f. + M- znamená podr¾a» klávesu META, EDIT alebo ALT a stlaèi» . + Ak nemáte ¾iadnu z kláves META, EDIT ani ALT, tak namiesto toho + stlaète a pustite klávesu ESC a potom . Klávesu ESC budeme + oznaèova» . + +Dôle¾itá poznámka: prácu s Emacsom ukonèíte stlaèením C-x C-c (dva znaky). +Znaky ">>" na µavom okraji oznaèujú miesta, kde si máte vyskú¹a» príkaz. Napr.: +<> +[Prostredná èas» obrazovky je prázdna zámerne. Text pokraèuje ni¾¹ie.] +>> Teraz stlaète C-v (view next screen) pre posun na ïal¹iu obrazovku. + (Smelo do toho, spravte to pridr¾aním klávesy control a stlaèením v.) + Od tejto chvíle by ste toto mali robi» ak doèítate zobrazenú + obrazovku. + +V¹imnite si, ¾e pri posuve obrazoviek v¾dy zostávajú zobrazené dva riadky +z predchádzajúcej obrazovky; to poskytuje urèitú náväznos» pri postupnom +èítaní textu. + +Prvá vec, ktorú potrebujete vedie» je, ako sa v texte pohybova» +z jedného miesta na druhé. U¾ viete, ako sa posunú» o jednu obrazovku +vpred, pomocou C-v. Na prechod o obrazovku spä» pou¾ite M-v +(podr¾te klávesu META a stlaète v alebo stlaète v ak +nemáte klávesy META, EDIT ani ALT). + +>> Skúste stlaèi» M-v a potom C-v, niekoµko krát to zopakujte. + + +* ZHRNUTIE +---------- + +Na prezeranie obrazovkových stránok sú u¾itoèné nasledujúce príkazy: + + C-v Posuv o obrazovku vpred + M-v Posuv o obrazovku spä» + C-l Zmazanie obrazovky a znovuzobrazenie celého textu, + pritom sa text pod kurzorom presunie k stredu obrazovky. + (Ide o Control-L a nie Control-1.) + +>> Nájdite kurzor a zapamätajte si, aký je okolo neho text. + Potom stlaète C-l. + Nájdite kurzor znovu a v¹imnite si, ¾e je okolo neho ten istý text. + +Na pohyb po celých obrazovkách mô¾ete tie¾ pou¾i» klávesy PageUp a PageDown, +ak ich Vá¹ terminál má, ale pre pohyb sú efektívnej¹ie klávesy C-v a M-v. + +* ZÁKLADNÉ OVLÁDANIE KURZORU +---------------------------- + +Pohyb medzi obrazovkami je u¾itoèný, ale ako sa premiestnime na konkrétne +miesto v texte na obrazovke? + +Je to mo¾né dosiahnu» niekoµkými spôsobmi. Najzákladnej¹ím spôsobom je +pou¾itie príkazov C-p, C-b, C-f a C-n. Ka¾dý z týchto príkazov presunie +kurzor na obrazovke o jeden riadok alebo ståpec v danom smere. +Tu je tabuµka znázoròujúca smer posunu kurzoru vyvolaný týmito ¹tyrmi +príkazmi: + + Predchádzajúci riadok, C-p + : + : + Dozadu, C-b .... Momentálna pozícia kurzoru .... Dopredu, C-f + : + : + Nasledujúci riadok, C-n + +>> Presuòte kurzor na prostredný riadok tohto diagramu pomocou + C-n alebo C-p. Potom stlaète C-l, aby ste na obrazovke videli celý + diagram vycentrovaný. + +Pravdepodobne si tieto príkazy µahko zapamätáte podµa zaèiatoèných písmen +anglických názvov: P ako previous (predchádzajúci), N ako next (nasledujúci), +B ako backward (spä»), F ako forward (vpred). Sú to základné príkazy pre +pohyb kurzoru a budete ich pou¾íva» stále, tak¾e by bolo veµmi vhodné, keby +ste sa ich teraz nauèili. + +>> Stlaète niekoµko krát C-n, aby ste kurzor presunuli na tento riadok. + +>> Posuòte kurzor dovnútra riadku pomocou niekoµkých C-f a potom hore + stlaèením C-p. Pozorujte, èo C-p robí, keï je kurzor uprostred riadku. + +Ka¾dý riadok textu konèí znakom nového riadku, ktorý ho oddeµuje od +nasledujúceho riadku. Znakom nového riadku by mal by» ukonèený aj posledný +riadok súboru (napriek tomu, ¾e to Emacs nevy¾aduje). + +>> Vyskú¹ajte C-b na zaèiatku riadku. Kurzor by sa mal presunú» na koniec + predchádzajúceho riadku, preto¾e ho tým presuniete cez znak nového riadku. + +C-f funguje analogicky ako C-b, tj. na konci riadku dôjde k presunu na +ïal¹í riadok. + +>> Stlaète niekoµkokrát C-b, tak¾e uvidíte, kde sa nachádza kurzor. + Potom stláèajte C-f, aby ste sa vrátili na koniec riadku. + Potom stlaète e¹te raz C-f, aby ste sa presunuli na nasledujúci + riadok. + +Keï kurzorom prejdete cez horný alebo dolný okraj obrazovky, posunie sa +text za príslu¹ným okrajom na obrazovku. Táto vlastnos» sa nazýva +"scrollovanie". Umo¾òuje premiestni» kurzor na µubovoµné miesto v texte, +bez toho, aby kurzor opustil obrazovku. + +>> Skúste posunú» kurzor pod dolný okraj obrazovky pomocou C-n a pozorujte, + èo sa stane. + +Ak je posun po znakoch príli¹ pomalý, mô¾ete sa pohybova» po +slovách. M-f (Meta-f) robí posun o slovo vpred a M-b robí posun +o slovo spä». + +>> Stlaète niekoµko krát M-f a M-b. + +Ak sa kurzor nachádza uprostred slova, M-f presunie kurzor na koniec +tohto slova. Ak sa nachádza kurzor v medzere medzi slovami, M-f presunie +kurzor na koniec nasledujúceho slova. M-b pracuje analogicky v opaènom +smere. + +>> Stlaète niekoµko krát M-f a M-b spolu s C-f a C-b, aby ste videli + výsledky príkazov M-f a M-b vykonávaných z rôznych miest vnútri slov + a medzi nimi. + +V¹imnite si analógie medzi C-f a C-b na jednej strane a M-f a M-b na +strane druhej. Meta znaky sú veµmi èasto vyu¾ívané pre operácie +vz»ahujúce sa na entity definované jazykom (slová, vety, odstavce), +naopak Control znaky pracujú na základných prvkoch nezávislých na tom, +èo práve editujete (znaky, riadky, a pod.). + +Táto analógia platí tie¾ pre riadky a vety: C-a a C-e vykonáva presun +na zaèiatok a koniec riadku, M-a a M-e vykonáva presun na zaèiatok a koniec +vety. + +>> Skúste niekoµko krát C-a a potom niekoµko krát C-e. + Skúste niekoµko krát M-a a potom niekoµko krát M-e. + +V¹imnite si, ¾e opakované C-a nerobí niè, ale opakované M-a v¾dy +vykoná presun na ïal¹iu vetu. Princípu analógie to síce príli¹ +nezodpovedá, ale napriek tomu je toto chovanie mo¾né pova¾ova» za prirodzené. + +Pozícia kurzoru v texte sa tie¾ nazýva "bod" ("point"). Aby sme to +parafrázovali, kurzor je vidie» na obrazovke v mieste, kde je bod umiestnený +v texte. + +Tu je prehµad jednoduchých operácií pre pohyb kurzoru vrátane príkazov pre +pohyb medzi slovami a vetami: + + C-f Presun o znak vpred + C-b Presun o znak spä» + + M-f Presun o slovo vpred + M-b Presun o slovo spä» + + C-n Presun na nasledujúci riadok + C-p Presun na predchádzajúci riadok + + C-a Presun na zaèiatok riadku + C-e Presun na koniec riadku + + M-a Presun spä» na zaèiatok vety + M-e Presun vpred na koniec vety + +>> Vyskú¹ajte si teraz niekoµko krát v¹etky tieto príkazy kvôli cviku. + Sú to najpou¾ívanej¹ie príkazy. + +Ïal¹ie dva dôle¾ité príkazy pre pohyb kurzoru sú M-< (Meta men¹ie-ako), +ktorý vykoná presun na zaèiatok celého textu, a M-> (Meta väè¹í-ako), +ktorý vykoná presun na koniec celého textu. + +Na väè¹ine terminálov je "<" nad èiarkou, tak¾e pre vyvolanie tohto znaku +musíte pou¾i» klávesu Shift. Na týchto termináloch je teda nutné pou¾i» +klávesu Shift aj v prípade príkazu M-<; bez klávesy Shift by ste stlaèili +M-èiarka. + +>> Skúste teraz M-< pre presun na zaèiatok tútorialu. + Pou¾ite potom opakovane C-v, aby ste sa opä» vrátili sem. + +>> Skúste teraz M-> pre presun na koniec tútorialu. + Pou¾ite potom opakovane M-v, aby ste sa opä» vrátili sem. + +Kurzor mô¾ete presúva» tie¾ pomocou kurzorových kláves (klávesy +so ¹ípkami), ak ich Vá¹ terminál má. My Vám v¹ak doporuèujeme nauèi» sa +C-b, C-f, C-n a C-p, a to z troch dôvodov. Za prvé, tieto klávesy fungujú +na v¹etkých typoch terminálov. Za druhé, akonáhle raz získate cvik +v pou¾ívaní Emacsu, zistíte, ¾e pou¾ívánie týchto CTRL znakov je +rýchlej¹ie ako pou¾ívanie kurzorových kláves (preto¾e nemusíte presúva» +ruku z písacej pozície). Za tretie, ak si zvyknete pou¾íva» tieto CTRL-znak +príkazy, µahko sa nauèíte pou¾íva» iné pokroèilé príkazy pre pohyb +kurzoru. + +Väè¹ina príkazov Emacsu akceptuje numerický argument; ten pre väè¹inu +príkazov slú¾i ako opakovaè. Poèet opakovaní príkazu zadáte +prostredníctvom stlaèenia C-u nasledovaného stlaèením príslu¹ných èíslic pred +vyvolaním príkazu. Ak máte META (alebo EDIT èi ALT) klávesu, existuje +alternatívna mo¾nos» zadania numerického argumentu: pridr¾te klávesu META +a stlaète príslu¹né èíslice. Doporuèujeme nauèi» sa C-u metódu, +preto¾e tá funguje na akomkoµvek terminále. Èíselný argument sa tie¾ nazýva +"prefixový argument", preto¾e ho pí¹ete e¹te pred príkazom, na ktorý sa +vz»ahuje. + +Napríklad C-u 8 C-f vykoná presun o osem znakov vpred. + +>> Skúste pou¾i» C-n alebo C-p s numerickým argumentom, na presun kurzoru + k tomuto riadku s jediným príkazom. + +Väè¹ina príkazov pou¾íva numerický argument ako opakovaè, ale niektoré príkazy +ho pou¾ívajú iným spôsobom. Zopár príkazov (ale ¾iaden z tých, ktoré ste sa +doteraz nauèili) ho pou¾íva ako príznak -- prítomnos» èíselného argumentu bez +ohµadu na jeho hodnotu spôsobí, ¾e sa príkaz správa ináè. + +Iným druhom výnimky sú C-v a M-v. Ak dostanú numerický argument, posunú +obrazovku hore alebo dole o zodpovedajúci poèet riadkov namiesto obrazoviek. +Napríklad C-u 4 C-v posunie obrazovku o 4 riadky. + +>> Skúste teraz stlaèi» C-u 8 C-v. + +To by malo posunú» obrazovku o 8 riadkov hore. Pokiaµ by ste ju chceli +posunú» naspä» dole, mô¾ete da» argument príkazu M-v. + +Ak pou¾ívate X Windows, mali by ste ma» na µavej strane emacsového okna +vysokú obdå¾nikovú oblas», nazvanú scrollbar. Mô¾ete potom text +posúva» klikaním my¹ou na scrollbar. + +>> Skúste stlaèi» prostredné tlaèítko na vrchole zvýraznenej oblasti + vo vnútri scrollbaru. To by malo text posunú» na pozíciu danú tým, ako + vysoko alebo nízko ste klikli. + +>> Skúste pri stlaèenom prostrednom tlaèidle posúva» my¹ou hore a dole. + Uvidíte, ako sa text posúva hore a dole podµa toho, ako + hýbete my¹ou. + + +* KEÏ EMACS NEREAGUJE +--------------------- + +Ak Emacs prestane reagova» na Va¹e príkazy, mô¾ete prebiehajúcu +èinnos» bezpeène zastavi» pomocou C-g. Pomocou C-g mô¾ete zastavi» +príkaz, ktorého èinnos» trvá príli¹ dlho. + +C-g mô¾ete pou¾i» tie¾ pre odstránenie numerického argumentu príkazu, +ktorý nechcete dokonèi». + +>> Stlaète C-u 100 pre vytvorenie numerického argumentu 100 a potom + stlaète C-g. Teraz stlaète C-f. Kurzor by sa mal posunú» iba + o jeden znak, preto¾e ste argument zru¹ili prostredníctvom + C-g. + +Ak ste omylom stlaèili , mô¾ete sa ho zbavi» pomocou C-g. + + +* DEAKTIVOVANÉ PRÍKAZY +---------------------- + +Niektoré príkazy Emacsu sú "deaktivované" ("disabled"), aby ich +zaèínajúci pou¾ívatelia nemohli vyvola» náhodne. + +Ak vyvoláte niektorý z deaktivovaných príkazov, Emacs zobrazí hlásenie +oznamujúce, ktorý príkaz to bol, s otázkou, èi chcete tento príkaz +vykona». + +Ak naozaj chcete príkaz vyskú¹a», stlaète medzerník ako odpoveï +na túto otázku. Zvyèajne, ak nechcete deaktivovaný príkaz +vykona», odpovedzte na túto otázku pomocou "n". + +>> Stlaète C-x C-l (èo je deaktivovaný príkaz), + potom na otázku odpovedzte n. + + +* OKNÁ +------ + +Emacs mô¾e ma» niekoµko okien (windows), pritom ka¾dé z nich zobrazuje svoj +vlastný text. Ako viac okien pou¾íva», objasníme neskôr. Teraz chceme +objasni», ako sa zbavi» nadbytoèných okien a vráti» sa do základnej +jednookennej editácie. Je to jednoduché: + + C-x 1 Jedno okno (tj. zru¹enie v¹etkých ostatných okien) + +Teda vlo¾enie Control-x nasledované èíslicou 1. C-x 1 roz¹íri okno +obsahujúce kurzor cez celú obrazovku. Zru¹í to v¹etky ostatné okná. + +>> Presuòte kurzor na tento riadok a stlaète C-u 0 C-l +>> Stlaète Control-h k Control-f. + Pozorujte, ako sa aktuálne okno zmen¹í a objaví sa nové okno + kvôli zobrazeniu dokumentácie pre príkaz Control-f. + +>> Stlaète C-x 1 a pozorujte, ako okno s dokumentáciou zmizne. + +Tento príkaz sa odli¹uje od u¾ nauèených príkazov tým, ¾e pozostáva z dvoch +znakov. Zaèína znakom CONTROL-x. Exostuje celá séria príkazov zaèínajúcich +na CONTROL-x; veµa z nich sa týka okien, súborov, bufferov a súvisiacich vecí. +Tieto príkazy pozostávajú z dvoch, troch alebo ¹tyroch znakov. + + +* VKLADANIE A MAZANIE +--------------------- + +Ak chcete vlo¾i» text, proste ho napí¹te. Znaky, ktoré vidíte, +ako A, 7, *, atï., sú Emacsom chápané ako text a vkladané okam¾ite. +Pre vlo¾enie znaku nového riadku stlaète (klávesu Enter). + +Posledný znak, ktorý ste napísali, mô¾ete zmaza» stlaèením . + je klávesa na klávesnici -- tá istá, ktorú normálne pou¾ívate na +zmazanie naposledy napísaného znaku. Je to zvyèajne veµká klávesa pár riadkov +nad klávesou , a je väè¹inou oznaèovaná ako "Delete", "Del" alebo +"Backspace". + +Ak je veµká klávesa na tom mieste oznaèená ako "Backspace", potom je to ona, +ktorú budete pou¾íva» ako . Mô¾e tam by» niekde inde e¹te klávesa +oznaèená ako "Delete", ale to nie je . + +V¹eobecne, ma¾e znak bezprostredne pred momentálnou pozíciou kurzoru. + +>> Vykonajte to teraz -- napí¹te niekoµko znakov a potom ich zma¾te + niekoµkými stlaèeniami . Nebojte sa zmien v tomto súbore; + originálny tútorial sa nezmení. Toto je Va¹a osobná kópia. + +Keï sa riadok textu zväè¹í natoµko, ¾e presiahne jeden riadok obrazovky, je +zobrazený na viacerých riadkoch obrazovky. Riadok textu, ktorý pokraèuje na +ïal¹om riadku obrazovky, je indikovaný spätným lomítkom ("\") (alebo, ak +pou¾ívate grafický systém, malá zakrivená ¹ípka) na pravom okraji obrazovky. + +>> Vkladajte text, pokiaµ nedosiahnete pravého okraju, a pokraèujte vo + vkladaní. Objaví sa Vám pokraèovací riadok. + +>> Pou¾ite pre zmazanie textu, pokiaµ se riadok textu opä» nevojde na + jeden riadok obrazovky. Pokraèovací riadok zmizne. + +Znak nového riadku mô¾ete zmaza» ako ktorýkoµvek iný znak. Zmazanie +znaku nového riadku medzi dvoma riadkami spôsobí ich spojenie do jediného +riadku. Ak je výsledný riadok príli¹ dlhý na to, aby sa vo¹iel na ¹írku +obrazovky, bude zobrazený pokraèovacím riadkom. + +>> Presuòte kurzor na zaèiatok riadku a stlaète . To tento + riadok spojí s riadkom predchádzajúcim. + +>> Stlaète pre znovuvlo¾enie zmazaného znaku nového riadku. + +Spomeòte si, ¾e väè¹ina príkazov Emacsu mô¾e dosta» poèet opakovaní; +vrátane textových znakov. Opakovanie textových znakov ich vlo¾í +niekoµko krát. + +>> Vyskú¹ajte si to -- stlaète C-u 8 * pre vlo¾enie ********. + +Teraz u¾ poznáte najzákladnej¹ie spôsoby, ako nieèo v Emacse napísa» a ako +opravova» chyby. Mô¾ete ale tie¾ maza» text po slovách alebo po riadkoch. +Tu je zhrnutie operácií pre mazanie textu: + + Zmazanie znaku bezprostredne pred kurzorom + C-d Zmazanie znaku nasledujúceho za kurzorom + + M- Zru¹enie slova bezprostredne pred kurzorom + M-d Zru¹enie slova nasledujúceho za kurzorom + + C-k Zru¹enie textu od pozície kurzoru do konca riadku + M-k Zru¹enie textu do konca aktuálnej vety + +V¹imnite si, ¾e a C-d, resp. M- a M-d, roz¹irujú paralelu +zaèatú C-f a M-f (pravda, naozaj nie je control znak, ale tým sa +nebudeme trápi»). C-k a M-k sú ako C-e a M-e v zmysle vz»ahu riadkov k vetám. + +¥ubovoµnú èas» buffera mô¾ete zru¹i» aj nasledujúcim spôsobom. Presuòte sa +na koniec tejto èasti a stlaète C-@ alebo C-SPC (µubovoµnú z týchto +kombinácií). (SPC znamená medzerník.) Presuòte sa na druhý koniec tejto +èasti a stlaète C-w. Text medzi týmito pozíciami bude zru¹ený. + +>> Presuòte kurzor na písmeno ¥ na zaèiatku predchádzajúceho odstavca. +>> Stlaète C-SPC. Emacs by mal zobrazi» v spodnom riadku obrazovky správu + "Mark set". +>> Presuòte kurzor na písmeno c v slove "koniec" na druhom riadku + odstavca. +>> Stlaète C-w. Text, ktorý zaèína písmenom L a konèí pred písmenom "c" + bude zru¹ený. + +Uvedomte si, ¾e rozdiel medzi "ru¹ením" ("killing") a "mazaním" +("deleting") je ten, ¾e "zru¹ené" veci mô¾u by» vhodené spä», zatiaµ èo +"zmazané" nie. V¹eobecne príkazy, ktoré mô¾u zmaza» väè¹ie mno¾stvo +textu, ukladajú text, zatiaµ èo príkazy, ktoré ma¾ú jediný znak alebo +iba prázdne riadky a medzery, mazaný text neukladajú. + +>> Presuòte kurzor na zaèiatok neprázdneho riadku. + Potom stlaète C-k pre zru¹enie textu na tomto riadku. +>> Stlaète C-k druhý krát. Uvidíte, ¾e to zru¹í znak nového riadku, ktorý + je za týmto riadkom. + +V¹imnite si, ¾e jedno C-k zru¹í obsah riadku a druhé C-k zru¹í riadok +samotný a posunie v¹etky ïal¹ie riadky hore. C-k spracováva numerický +argument ¹peciálne: zru¹í zodpovedajúci poèet riadkov VRÁTANE ich +obsahu. To u¾ nie je opakovanie. C-u 2 C-k zru¹í dva riadky a ich +obsah; dvojité stlaèenie C-k by toto obvykle nespravilo. + +Vracanie textov spä» sa nazýva "vhadzovanie" ("yanking"). (Predstavte +si opätovné vhadzovanie, vracanie spä» textu, ktorý bol odstránený.) +Zmazaný text mô¾ete vhodi» buï na to isté miesto, odkiaµ bol zmazaný, +alebo na iné miesto v bufferi, alebo dokonca aj do iného súboru. +Text mô¾ete vhodi» aj viac krát, keï vytvárate jeho ïal¹ie kópie. + +Príkazom na vhadzovanie je C-y. Tento príkaz vlo¾í posledný zmazaný +text na pozíciu, na ktorej sa nachádza kurzor. + +>> Skúste to; stlaète C-y pre vhodenie textu spä». + +Ak stlaèíte C-k niekoµko krát po sebe. v¹etok zmazaný text je ulo¾ený +spolu tak, aby bolo mo¾né vhodi» spä» v¹etky riadky naraz. + +>> Stlaète niekoµko krát C-k. + +Teraz obnovte naposledy zru¹ený text: + +>> Stlaète C-y. Potom posuòte kurzor o niekoµko riadkov ni¾¹ie a stlaète + C-y znovu. Teraz vidíte, ako je mo¾né kopírova» text. + +Èo keï máte nejaký text, ktorý by ste radi vhodili spä» a potom zru¹íte +nieèo iného? C-y by vlo¾ilo posledný zru¹ený text. Ale predchádzajúci +text ni je stratený. Mô¾ete ho získa» spä» pou¾itím príkazu M-y. Potom, +èo spravíte C-y pre získanie posledného zru¹eného textu, stlaèenie M-y +vymení tento vhodený text za predchádzajúci zru¹ený text. Ïal¹ími a +ïal¹ími stlaèeniami M-y dostávate predchádzajúce a predchádzajúce zru¹ené +texty. Keï dosiahnete text, ktorý hµadáte, nemusíte s ním pre jeho +uchovanie niè ïal¹ieho robi». Jednoducho vhodený text ponechajte, kde +je, a pokraèujte v editácii. + +Ak opakujete M-y dostatoène dlho, dostanete se spä» k východziemu +bodu (posledne zru¹enému textu). + +>> Zru¹te riadok, presuòte kurzor niekam inam a zru¹te iný riadok. + Potom vykonajte C-y pre vrátenie druhého zru¹eného riadku. + Potom stlaète M-y a vhodený riadok bude nahradený prvým zru¹eným riadkom. + Opakujte M-y a pozorujte, èo dostávate. Pokraèujte v tom, pokiaµ sa + znova neobjaví druhý zru¹ený riadok a potom niekoµko ïal¹ích. + Ak chcete, mô¾ete skúsi» preda» M-y kladné a záporné argumenty. + + +* UNDO +------ + +Ak vykonáte v texte zmenu a potom zistíte, ¾e to bol omyl, mô¾ete +zmenu vráti» príkazom undo, C-x u. + +C-x u obvykle vráti zmeny vykonané jedným príkazom; pokiaµ C-x u +zopakujete niekoµko krát po sebe, ka¾dé opakovanie vráti jeden ïal¹í +príkaz. + +Sú ale dve výnimky: príkazy, ktoré nemenia text, sa nepoèítajú (to +zahàòa príkazy pre pohyb kurzoru a rolovanie) a znaky vkladajúce +samy seba sú obvykle spracovávané v skupinách a¾ po 20. (To je kvôli +tomu, aby sa zredukoval poèet C-x u nutných pre vrátenie vkladaného +textu.) + +>> Zru¹te tento riadok pomocou C-k, stlaète potom C-x u a riadok by sa mal + znova objavi». + +Alternatívny undo príkaz je C-_; pracuje rovnako ako C-x u, je v¹ak +menej pracné ho aplikova» niekoµko krát za sebou. Nevýhodou C-_ je, ¾e +na niektorých klávesniciach nie je jasné, ako ho vyvola». To je dôvod, +preèo ponúkame aj C-x u. Na niektorých termináloch mô¾ete C-_ vyvola» +stlaèením / pri stlaèenom CTRL. + +Numerický argument pre C-_ a C-x u funguje ako poèet opakovaní. + +Pomocou príkazu undo mô¾ete vráti» zru¹ený aj zmazaný text. Rozdiel medzi +mazaním a ru¹ením textu ovplyvòuje mo¾nos» vhodenia tohto textu pomocou +C-y, neovplyvòuje ale mo¾nosti príkazu undo. + + +* SÚBORY +-------- + +Aby text, ktorý editujete, zostal trvale uchovaný, musíte ho ulo¾i» do +súboru. Inak by bol po ukonèení Emacsu stratený. Svoju editáciu +spojíte so súborom "vyhµadaním" ("finding") súboru. (Tie¾ sa to +nazýva "nav¹tívenie" ("visiting") súboru.) + +Vyhµadanie súboru znamená, ¾e vidíte jeho obsah v Emacse. V mnohých +ohµadoch je to, ako by ste editovali priamo ten súbor. Napriek tomu zmeny, +ktoré prostredníctvom Emacsu robíte, sa nestanú trvalými, pokiaµ tieto +zmeny do súboru "neulo¾íte" ("save"). Tým sa zamedzí nechcenému ponechaniu +èiastoène zmeneného súboru v systéme. Dokonca aj keï súbor ulo¾íte, +Emacs uchová pôvodný súbor pod zmeneným názvom pre prípad, ¾e by ste +zistili, ¾e va¹e úpravy boli chybné. + +Keï sa pozriete do dolnej èasti obrazovky, uvidíte riadok, ktorý zaèína a +konèí pomlèkami a na zaèiatku má "--:-- TUTORIAL.sk" alebo nieèo podobného. +Táto èas» obrazovky obvykle obsahuje meno súboru, ktorý je práve +nav¹tívený. Akurát teraz máte nav¹tívený súbor nazvaný "TUTORIAL.sk", +ktorý je Va¹ou osobnou èmáraciou kópiou tútorialu Emacsu. Keï v Emacse +vyhµadáte súbor, jeho meno sa objaví presne na tom mieste. + +Ïal¹ou vecou súvisiacou s príkazom pre vyhµadanie súboru je to, ¾e musíte +poveda», ktoré meno súboru chcete. Hovoríme, ¾e príkaz "èíta argument +z terminálu" (v tomto prípade je argumentom meno súboru). Potom, èo +vyvoláte príkaz + + C-x C-f Vyhµadanie súboru + +Emacs sa Vás opýta na meno súboru. Meno súboru, ktoré pí¹ete, sa +objavuje v spodnom riadku obrazovky, ktorý sa v tejto situácii nazýva +minibuffer. Pre editáciu mena súboru mô¾ete pou¾íva» obvyklé editaèné +príkazy Emacsu. + +Zadávanie mena súboru (v¹eobecne akýkoµvek vstup z minibuffera) mô¾ete +zru¹i» príkazom C-g. + +>> Stlaète C-x C-f a potom C-g. To minibuffer zru¹í a tie¾ to zru¹í + príkaz C-x C-f, ktorý minibuffer pou¾il. Tak¾e nevyhµadáte ¾iadny + súbor. + +Po napísaní mena súboru stlaète na jeho ukonèenie. +Príkaz C-x C-f potom zaène pracova» a vyhµadá súbor, ktorý ste zvolili. +Po skonèení príkazu C-x C-f minibuffer zmizne. + +Po malej chvíli sa obsah súboru objaví na obrazovke a mô¾ete ho +editova». Keï chcete zmeny natrvalo ulo¾i», pou¾ite príkaz + + C-x C-s Ulo¾enie súboru + +To skopíruje text z Emacsu do súboru. Keï to spravíte prvý krát, Emacs +premenuje pôvodný súbor na súbor s novým menom, aby nebol stratený. +Nové meno je vytvorené pridaním "~" na koniec pôvodného mena súboru. + +Keï je ukladanie dokonèené, Emacs zobrazí meno zapísaného súboru. +Mali by ste uklada» rozumne èasto, aby ste nestratili príli¹ veµa práce +v prípade pádu systému. + +>> Stlaète C-x C-s pre ulo¾enie Va¹ej kópie tútorialu. + Malo by to zobrazi» "Wrote ...TUTORIAL.sk" v spodnom riadku obrazovky. + +POZNÁMKA: Na niektorých systémoch spôsobí stlaèenie C-x C-s zatuhnutie +obrazovky a nevidíte ¾iadny ïal¹í výstup z Emacsu. To znamená, ¾e +"vlastnos»" operaèného systému nazvaná "flow control" zachytáva C-s a +nepustí ho k Emacsu. Pre odtuhnutie obrazovky stlaète C-q. Potom +v sekcii "Spontaneous Entry to Incremental Search" v manuále Emacsu +vyhµadajte radu, ako sa vysporiada» s touto "vlastnos»ou". + +Existujúci súbor mô¾ete vyhµada», aby ste ho mohli prehliada» alebo +editova». Mô¾ete tie¾ vyhµada» súbor, ktorý e¹te neexistuje. To je +spôsob, akým sa dá vytvori» súbor v Emacse: vyhµadajte súbor, ktorý +bude na zaèiatku prázdny a potom zaènite vklada» text urèený pre tento +súbor. Keï po¾iadate o ulo¾enie, Emacs skutoène vytvorí súbor +s textom, ktorý ste vlo¾ili. Od tej chvíle sa potom mô¾ete cíti», ako +keby ste editovali u¾ existujúci súbor. + + +* BUFFERY +--------- + +Ak vyhµadáte pomocou C-x C-f druhý súbor, prvý súbor v Emacse +zostáva. Mô¾ete sa doò spä» prepnú» jeho opätovným vyhµadaním +pomocou C-x C-f. Týmto spôsobom mô¾ete do Emacsu dosta» pomerne veµa +súborov. + +>> Vytvorte súbor pomenovaný "foo" stlaèením C-x C-f foo . + Potom vlo¾te nejaký text, zmeòte ho a ulo¾te "foo" stlaèením C-x C-s. + Nakoniec stlaète C-x C-f TUTORIAL.sk , èím sa vrátite spä» do + tútorialu. + +Emacs ukladá text ka¾dého súboru do objektu nazývaného "buffer". +Vyhµadanie súboru vytvorí v Emacse nový buffer. Ak chcete vidie» zoznam +bufferov, ktoré momentálne existujú vo Va¹om procese Emacs, stlaète: + + C-x C-b Zoznam bufferov + +>> Skúste teraz C-x C-b. + +Uvidíte, ¾e ka¾dý buffer má v zozname meno a mô¾e tam ma» tie¾ meno súboru, +ktorého text obsahuje. AKÝKO¥VEK text, ktorý vidíte v emacsovom okne, je v¾dy +súèas»ou nejakého bufferu. + +>> Stlaète C-x 1, aby ste sa zbavili zoznamu bufferov. + +Ak máte niekoµko bufferov, iba jeden z nich je "aktuálny". Je to ten buffer, +ktorý práve upravujete. Ak chcete upravova» iný buffer, musíte sa doòho +"prepnú»". Ak sa chcete prepnú» do bufferu so súborom, mô¾ete ho znova otvori» +príkazom C-x C-f. Ale existuje jednoduch¹í spôsob: pou¾ite príkaz C-x b. Pri +tomto príkaze musíte napísa» meno bufferu. + +>> Napí¹te C-x b foo na vrátenie sa do bufferu "foo", ktorý uchováva + text súboru "foo". Potom napí¹te C-x b TUTORIAL.sk na vrátenie sa + do tohto návodu. + +Väè¹inu èasu, meno bufferu je také isté ako meno súboru (bez názvu adresára). +Ale nie je to v¾dy pravda. Zoznam bufferov vytvorený s C-x C-b v¾dy uká¾e mená +ka¾dého bufferu. + +HOCAKÝ text, ktorý vidíte v okne Emacsu je v¾dy èas» nejakého bufferu. +Niektoré buffery nezodpovedajú súborom. Napríklad, buffer pomenovaný +"*Buffer List*" nemá ¾iadny súbor. Je to buffer, ktorý obsahuje zoznam +bufferov, vytvorený pomocou C-x C-b. Buffer nazvaný "*Messages*" tie¾ +nezodpovedá súboru¨obsahuje správy, ktoré sa objavili na spodnom riadku poèas +vá¹ho sedenia s Emacsom. + +>> Napí¹te C-x b *Messages* a pozrite sa na buffer so správami. Potom + napí¹te C-x b TUTORIAL.sk na vrátenie sa do tohto návodu. + +Ak zmeníte text jedného súboru a potom vyhµadáte iný súbor, +nespôsobí to ulo¾enie prvého súboru. Jeho zmeny zostávajú v Emacse +uchované v jemu zodpovedajúcom buffere. Vytvorenie a úprava druhého +súboru nemá ¾iadny vplyv na buffer prvého súboru. To je veµmi +u¾itoèné, ale tie¾ to znamená, ¾e potrebujete vhodný spôsob, ako ulo¾i» +buffer prvého súboru. Nutnos» prepnú» sa spä» pomocou C-x C-f, aby +ho bolo mo¾né ulo¾i» prostredníctvom C-x C-s, by bola nemiestne +ob»a¾ujúca. Tak¾e máme + + C-x s Ulo¾enie niektorých bufferov + +C-x s sa Vás spýta na ka¾dý buffer, ktorý obsahuje zmeny, ktoré ste +neulo¾ili. Pre ka¾dý taký buffer sa Vás spýta, èi ho má ulo¾i». + +>> Vlo¾te riadok textu a potom stlaète C-x s. + Emacs by sa Vás mal opýta», èi má by» ulo¾ený buffer nazvaný TUTORIAL.sk. + Odpovedzte na túto otázku áno (yes) stlaèením "y". + + +* ROZ©IROVANIE SADY PRÍKAZOV +---------------------------- + +Existuje omnoho, omnoho viac príkazov Emacsu, ako tie, ktoré by vôbec mohli +by» rozmiestnené na v¹etky control a meta znaky. Emacs tento problém +obchádza prostredníctvom X (eXtend) príkazu. Ten vzniká dvoma spôsobmi: + + C-x Znakový eXtend. Nasledovaný jedným znakom. + M-x Pomenovaný príkaz eXtend. Nasledovaný dlhým názvom. + +To sú príkazy, ktoré sú v¹eobecne u¾itoèné, ale menej èasto pou¾ívané +ako tie, ktoré ste sa u¾ nauèili. U¾ ste videli dva z nich: súborové +príkazy C-x C-f pre vyhµadanie a C-x C-s pre ulo¾enie. Iný príklad je +príkaz pre ukonèenie Emacsu -- tj. príkaz C-x C-c. (Nemajte obavy +o stratu zmien, ktoré ste spravili; C-x C-c ponúkne ulo¾enie ka¾dého +zmeneného súboru pred tým, ne¾ sa Emacs skonèí.) + +C-z je príkaz na *doèasné* opustenie Emacsu -- mô¾ete sa po òom do +spusteného Emacsu vráti». + +Na systémoch, ktoré to umo¾òujú, C-z Emacs "pozastaví"; tzn. vráti Vás +do shellu, ale Emacs neskonèí. V najbe¾nej¹ích shelloch sa mô¾ete do +Emacsu vráti» príkazom `fg' alebo pomocou `%emacs'. + +Na systémoch, ktoré pozastavovanie procesov nemajú implementované, C-z +vytvorí subshell be¾iaci pod Emacsom, aby Vám dal ¹ancu spusti» iné +programy a potom sa do Emacsu vráti»; nevykoná teda pravé opustenie +Emacsu. V tom prípade je obvyklou cestou návratu zo subshellu do Emacsu +shellový príkaz `exit'. + +Chvíµa pre pou¾itie C-x C-c nastane vtedy, keï sa chystáte odhlási» sa zo +systému. Správne je to tie¾ pri ukonèovaní Emacsu vyvolaného po¹tovým +programom a rôznymi inými utilitami, preto¾e tie nemusia vedie», ako si poradi» +s pozastavením Emacsu. Napriek tomu za normálnych okolností, pokiaµ sa +nechystáte odhlási», je lep¹ie Emacs pozastavi» pomocou C-z ako ho ukonèi». + +Existuje mnoho C-x príkazov. Tu je zoznam tých, ktoré ste sa u¾ nauèili: + + C-x C-f Vyhµadanie súboru + C-x C-s Ulo¾enie súboru + C-x C-b Zoznam bufferov + C-x C-c Ukonèenie Emacsu + C-x 1 Zru¹enie v¹etkých okien okrem jedného + C-x u Undo + +Pomenované eXtended príkazy sú príkazy, ktoré sú pou¾ívané e¹te menej, alebo +príkazy, ktoré sú pou¾ívané iba v istých módoch. Príkladom je príkaz +replace-string, ktorý globálne nahradí jeden re»azec iným. Keï stlaèíte M-x, +vypí¹e sa na spodnom riadku obrazovky prompt M-x a vy by ste mali zada» meno +príkazu; v tomto prípade "replace-string". Jednoducho napí¹te "repl s" +a Emacs názov doplní. ( je klávesa Tab, be¾ne sa nachádza nad klávesou +CapsLock alebo Shift na µavom okraji klávesnice.) Skonèite zadávanie mena +príkazu pomocou . + +Príkaz replace-string vy¾aduje dva argumenty -- re»azec, ktorý má by» +nahradený, a re»azec, ktorý ho má nahradi». Ka¾dý argument musíte +ukonèi» pomocou . + +>> Presuòte kurzor na prázdny riadok dva riadky pod týmto. + Potom napí¹te M-x repl szmenilmodifikoval. + + V¹imnite si, ako sa tento riadok zmenil: nahradili ste slovo + z-m-e-n-i-l slovom "modifikoval", kdekoµvek sa za aktuálnou pozíciou + kurzoru vyskytlo. + + +* AUTOMATICKÉ UKLADANIE +----------------------- + +Ak ste spravili zmeny v súbore, ale nemáte ich e¹te ulo¾ené, +mô¾u by» v prípade páde systému stratené. Aby vás Emacs pred tým ochránil, +periodicky zapisuje "auto save" súbor pre ka¾dý súbor, ktorý +editujete. Meno auto save súboru má na zaèiatku a na konci #; +napríklad ak sa Vá¹ soubor nazýva "hello.c", jeho auto save +súbor sa nazýva "#hello.c#". Ak súbor ulo¾íte normálnym spôsobom, +Emacs auto save súbor zma¾e. + +Ak nastane pád systému, mô¾ete svoje úpravy obnovi» z auto-save +súboru, a to normálnym vyhµadaním súboru (toho, ktorý ste editovali, +nie auto save súboru) a následným spustením M-x recover-file. +Na ¾iados» o potvrdenie odpovedzte zadaním yes pre pokraèovanie a +obnovenie auto-save dát. + + +* ECHO OBLAS« +------------- + +Keï Emacs vidí, ¾e pí¹ete príkazy pomaly, ukazuje Vám ich v spodnej +èasti obrazovky v oblasti nazývanej "echo oblas»". Echo oblas» obsahuje +dolný riadok obrazovky. + + +* STAVOVÝ RIADOK +---------------- + +Riadok bezprostredne nad echo oblas»ou sa nazýva "stavový riadok" +("mode line"). +Stavový riadok vraví nieèo ako: + +--:** TUTORIAL.sk (Fundamental)--L670--58%---------------- + +Tento riadok podáva u¾itoènú informáciu o stave Emacsu a texte, ktorý +editujete. + +U¾ viete, èo znamená meno súboru -- je to súbor, ktorý ste vyhµadali. +-NN%-- oznaèuje Va¹u aktuálnu pozíciu v texte; vraví, ¾e NN percent textu +je nad horným okrajom obrazovky. Ak je zaèiatok súboru na obrazovke, je +tu --Top-- a nie --00%--. Ak je koniec textu na obrazovke, je tu +--Bot--. Ak sa dívate na tak malý text, ¾e sa celý vojde na obrazovku, +stavový riadok vraví --All--. + +Písmeno L a èíslice oznaèujú pozíciu iným spôsobom, udávajú riadok, na ktorom +sa nachádza kurzor. + +Hviezdièky blízko zaèiatku znamenajú, ¾e ste text zmenili. Tesne po +vyhµadaní alebo ulo¾ení súboru v tejto èasti stavového riadku nie sú ¾iadne +hviezdièky, iba pomlèky. + +Èas» stavového riadku v zátvorkách vraví, v akých editaèných módoch sa +nachádzate. Implicitný mód je Fundamental, èo je ten, ktorý momentálne +pou¾ívate. Je príkladom hlavného módu ("major mode"). + +Emacs má celý rad hlavných módov. Niektoré z nich sú urèené pre +editovanie rôznych programovacích jazykov a/alebo textov ako napr. Lisp mód, +Text mód, atï. V µubovoµnom okamihu je aktívny práve jeden hlavný mód a +jeho meno je mo¾né nájs» v stavovom riadku na mieste, kde je teraz +"Fundamental". + +Ka¾dý hlavný mód mení chovanie niektorých príkazov. Napríklad existujú +príkazy pre vytváranie komentárov v programe, a preto¾e ka¾dý programovací +jazyk má inú predstavu o tom, ako má komentár vyzera», +musí ka¾dý hlavný mód vklada» komentáre inak. Ka¾dý hlavný mód je +vlastne meno extended príkazu, ktorým sa do tohoto módu mô¾ete +prepnú». Napríklad M-x fundamental-mode je príkaz pre prepnutie sa do +Fundamental módu. + +Ak sa chystát meni» normálny text, ako napríklad tento súbor, pravdepodobne by +ste mali pou¾i» Text mód. +> Napí¹te M-x text-mode . + +Nebojte sa, ¾iadny z príkazov, ktoré ste sa nauèili, chovanie Emacsu nijako +významne nezmení. Mô¾ete si ale v¹imnú», ¾e M-f a M-b teraz pracujú +s apostrofmi ako so súèas»ou slova. Pred tým, vo Fundamental móde, M-f +a M-b pracovali s apostrofmi ako oddeµovaèmi slov. + +Hlavné módy obyèajne robia men¹ie zmeny, ako bola táto: príkazy väè¹inou +robia "to isté", ale v ka¾dom hlavnom móde pracujú trochu inak. + +Dokumentáciu k aktuálnemu hlavnému módu si mô¾ete zobrazi» stlaèením C-h m. + +>> Raz alebo viac krát pou¾ite C-u C-v, aby ste tento riadok dostali + na vrchol obrazovky. +>> Stlaète C-h m, aby ste videli, ako sa Text mód lí¹i od Fundamental + módu. +>> Stlaète C-x 1 pre odstránenie dokumentácie z obrazovky. + +Hlavné módy sa nazývajú hlavné preto, ¾e tie¾ existujú vedµaj¹ie módy +(minor modes). Vedµaj¹ie módy nie sú alternatívou k hlavným módom, ale +ich malé modifikácie. Ka¾dý vedµaj¹í mód mô¾e by» zapnutý alebo vypnutý +sám o sebe nezávisle na v¹etkých ostatných vedµaj¹ích módoch a nezávisle na +hlavnom móde. Tak¾e nemusíte pou¾íva» ¾iadny vedµaj¹í mód alebo mô¾ete +pou¾íva» jeden vedµaj¹í mód alebo µubovoµnú kombináciu niekoµkých +vedµaj¹ích módov. + +Jedným z veµmi u¾itoèných vedµaj¹ích módov, hlavne pre úpravy slovenských +textov, je Auto Fill mód. Keï je tento mód zapnutý, Emacs zalomí riadok +medzi dvoma slovami, kedykoµvek vkladáte text a riadok sa stane príli¹ +dlhým. + +Auto Fill mód mô¾ete zapnú» vykonaním M-x auto-fill-mode. +Ak je tento mód zapnutý, mô¾ete ho vypnú» vykonaním M-x +auto-fill-mode. Ak je mód vypnutý, tento príkaz ho zapína, +a ak je mód zapnutý, tak ho tento príkaz vypína. Vravíme, ¾e tento +príkaz prepína ("toggles") tento mód. + +>> Napí¹te teïa M-x auto-fill-mode. Potom vkladajte "asdf " stále + dookola tak dlho, pokiaµ neuvidíte, ako sa vkladaný riadok rozdelí na dva + riadky. Do textu musíte vklada» medzery preto, ¾e Auto Fill mód + zalamuje riadky iba v medzerách. + +Okraj je obvykle nastavený na 70 znakov, ale mô¾ete to zmeni» príkazom +C-x f. Hodnotu okraju, ktorú si prajete, by ste mali preda» ako +numerický argument. + +>> Napí¹te C-x f s argumentom 20. (C-u 2 0 C-x f). + Potom napí¹te nejaký text a pozorujte, ako Emacs vypåòa riadky po + 20. znakoch. Potom nastavte okraj spä» na 70 opätovným pou¾itím + C-x f. + +Ak spravíte zmeny uprostred odstavca, Auto Fill mód ho +nepreformátuje. +Pre preformátovanie odstavca stlaète M-q (Meta-q) s kurzorom vnútri +odstavca. + +>> Presuòte kurzor do predchádzajúceho odstavcu a stlaète M-q. + + +* VYH¥ADÁVANIE +-------------- + +Emacs vie v texte vyhµadáva» re»azce (tj. skupiny spojených znakov alebo +slov) smerom vpred alebo vzad. Hµadanie re»azca je príkaz presúvajúci +kurzor; presunie kurzor na najbli¾¹ie miesto, kde sa tento re»azec nachádza. + +Vyhµadávací príkaz Emacsu sa lí¹i od vyhµadávacích príkazov väè¹iny +editorov v tom zmysle, ¾e je "inkrementálny". To znamená, ¾e vyhµadávanie +sa robí u¾ v okam¾iku, keï zadávate hµadaný re»azec. + +Príkaz pre hµadanie vpred je C-s a pre hµadanie vzad C-r. +POZOR! E¹te to neskú¹ajte. + +Keï stlaèíte C-s, uvidíte v echo oblasti prompt "I-search". To Vám +vraví, ¾e Emacs sa nacháza v stave, ktorý sa nazýva inkrementálne hµadanie, +a èaká, kým mu zadáte, èo chcete hµada». hµadanie ukonèí. + +>> Teraz zaènite hµadanie stlaèením C-s. POMALY, písmeno po písmene, pí¹te + slovo 'kurzor'. Po ka¾dom písmene si v¹imnite, èo sa deje s kurzorom. + Teraz ste vyhµadali "kurzor" prvý krát. +>> Stlaète C-s znova, aby ste na¹li ïal¹í výskyt slova "kurzor". +>> Teraz ¹tyri krát stlaète a pozerajte, ako sa kurzor + presúva. +>> Stlaète pre ukonèenie hµadania. + +Videli ste, èo sa stalo? Emacs sa v inkrementálnom hµadaní pokú¹a +prejs» na ïal¹í výskyt re»azca, ktorý ste dosiaµ napísali. Ak chcete +prejs» na ïal¹í výskyt 'kurzor', jednoducho stlaète C-s zas. +Ak u¾ ¾iadny taký výskyt nie je, Emacs pípne a povie Vám, ¾e +hµadanie momentálne "zlyháva", C-g hµadanie ukonèí. + +POZNÁMKA: Na niektorých systémoch stlaèenie C-s spôsobí zatuhnutie +obrazovky a neuvidíte ¾iadny ïal¹í výstup z Emacsu. To znamená, ¾e +"vlastnos»" operaèného systému nazvaná "flow control" zachytáva C-s a +nepustí ho k Emacsu. Pre odtuhnutie obrazovky stlaète C-q. Potom +vyhµadajte v sekcii "Spontaneous Entry to Incremental Search" v manuále +Emacsu radu, ako obís» túto "vlastnos»". + +Ak uprostred inkrementálneho hµadania stlaèíte , uvidíte, +¾e posledný znak v hµadanom re»azci zmizne a hµadanie sa vracia na posledné +miesto hµadania. Predpokladajme napríklad, ¾e ste napísali "c", aby ste +na¹li prvý výskyt "k". Ak teraz stlaèíte "u", kurzor sa presunie na +prvý výskyt "ku". Teraz stlaète . To vyma¾e "u" z hµadaného +re»azca a kurzor sa presunie spä» na prvý výskyt "k". + +Ak uprostred hµadania stlaèíte control alebo meta znak (s niekoµkými +výnimkami -- znaky, ktoré sú ¹peciálne v hµadaní, ako C-s a C-r), +hµadanie bude ukonèené. + +C-s zaèína hµadanie, ktoré hµadá akýkoµvek výskyt hµadaného re»azca ZA +aktuálnu pozíciu kurzoru. Ak chcete nieèo hµada» v predchádzajúcom texte, +stlaète namiesto C-s C-r. V¹etko, èo sme povedali o C-s, platí tie¾ o C-r +okrem toho, ¾e smer hµadania je opaèný. + + +* VIAC OKIEN +------------ + +Jednou z pekných vlastností Emacsu je to, ¾e mô¾e na obrazovke zobrazi» +viac okien súèasne. + +>> Presuòte kurzor na tento riadok a stlaète C-u 0 C-l (to je CONTROL-L, nie + CONTROL-1). + +>> Ak stlaèíte C-x 2, obrazovka sa rozdelí na dve okná. + Obidve okná zobrazujú tento tútorial. Kurzor zostáva na vrchu okna. + +>> Stlaète C-M-v pre rolovanie spodného okna. + (Ak nemáte skutoènú klávesu Meta, stlaète ESC C-v.) + +>> Stlaète C-x o ("o" ako "other") pre presun kurzoru do dolného okna. +>> Pou¾ite C-v a M-v v spodnom okne pre jeho rolovanie. + Pokraèujte v èítaní týchto in¹trukcií v hornom okne. + +>> Znovu stlaète C-x o pre presun kurzoru spä» do horného okna. + Kurzor v hornom okne je presne na mieste, kde bol pôvodne. + +Mô¾ete ïalej pou¾íva» C-x o pre prepínanie medzi oknami. Ka¾dé okno má svoju +vlastnú pozíciu kurzoru, ale kurzor zobrazuje iba jedno okno. +V¹etky obvyklé editaèné príkazy platia pre okno, v ktorom sa nachádza +kurzor. Toto okno nazývame "aktívne okno" ("selected window"). + +Príkaz C-M-v je veµmi u¾itoèný, ak v jednom okne editujete text a +druhé okno pou¾ívate iba pre prehµad. Mô¾ete necháva» kurzor stále +v okne, kde editujete, a postupova» po druhom okne pomocou C-M-v. + +C-M-v je príkladom CONTROL-META znaku. Ak máte skutoènú META klávesu, +mô¾ete vyvola» C-M-v pridr¾aním oboch kláves CTRL a META pri stlaèení v. +Nezále¾í na tom, èi stlaèíte ako prvú klávesu CTRL alebo META, preto¾e obe +tieto klávesy fungujú ako modifikátory kláves, ktoré stlaèíte. + +Ak nemáte skutoènú META klávesu, mô¾ete namiesto nej pou¾i» ESC, na +poradí zále¾í: musíte stlaèi» ESC a potom CTRL-v; CTRL-ESC v by +nefungovalo. To preto, lebo ESC je samostatný znak, a nie modifikátor. + +>> Stlaète C-x 1 (v hornom okne), aby ste sa zbavili dolného okna. + +(Ak by ste C-x 1 stlaèili v dolnom okne, odstránilo by to horné okno. +Chápte tento príkaz ako "ponechaj akurát jedno okno -- to, v ktorom +akurát som".) + +Nemusíte v oboch oknách zobrazova» ten istý buffer. Ak pou¾ijete +C-x C-f pre vyhµadanie súboru v jednom z okien, druhé okno sa nezmení. +Mô¾ete vyhµadáva» súbory v oboch oknách nezávisle. + +Tu je ïal¹í spôsob, ako vyu¾i» dve okná na zobrazenie dvoch rôznych vecí: + +>> Stlaète C-x 4 C-f nasledované menom niektorého z Va¹ich súborov. + Dokonèite to pomocou . Vidíte zadaný súbor v dolnom okne. + Presunul sa tam aj kurzor. + +>> Stlaète C-x o pre presun spä» do horného okna a C-x 1 pre zmazanie + dolného okna. + + +* REKURZÍVNE EDITAÈNÉ ÚROVNE +---------------------------- + +Obèas sa dostanete do nieèoho, èo sa nazýva "rekurzívna editaèná úroveò" +("recursive editing level"). To je indikované hranatými zátvorkami v +stavovom riadku obklopujúcemu zátvorky okolo mena hlavného módu. +Napríklad mô¾ete vidie» [(Fundamental)] namiesto (Fundamental). + +Aby ste sa dostali z rekurzívnej editaènej úrovne, stlaète ESC ESC ESC. +To je v¹eobecný "vyskakovací" príkaz. Mô¾ete ho pou¾i» tie¾ pre odstránenie +niektorých okien a vyskoèenie z minibuffera. + +>> Stlaète M-x, aby ste sa dostali do minibuffera; potom stlaète + ESC ESC ESC, aby ste sa z neho dostali von. + +Z rekurzívnej editaènej úrovne nemô¾ete vyskoèi» pomocou C-g. To preto, ¾e +C-g je vyu¾ívané pre ru¹enie príkazov a argumentov VO VNÚTRI rekurzívnej +editaènej vrstvy. + + +* ZÍSKANIE ÏAL©EJ NÁPOVEDY +-------------------------- + +V tomto tútoriale sme sa pokúsili Vám poskytnú» dostatok informácií, +aby ste mohli zaèa» Emacs pou¾íva». V Emacse je toho toµko, ¾e by bolo +nemo¾né to v¹etko objasni» v tomto návode. V ka¾dom prípade sa o Emacse +mô¾ete nauèi» viac, preto¾e má veµa u¾itoèných vlastností. Emacs ponúka +príkazy pre èítanie dokumentácie svojich príkazov. V¹etky tieto "help" +príkazy zaèínajú znakom Control-h, ktorý sa nazýva "help znak". + +Pre pou¾itie vlastností nápovedy stlaète znak C-h a potom znak hovoriaci, +aký druh nápovedy si ¾iadate. Ak ste NAOZAJ stratení, stlaète C-h ? a +Emacs Vám povie, aké druhy nápovedy Vám mô¾e poskytnú». Ak ste stlaèili +C-h a potom ste sa rozhodli, ¾e ¾iadnu nápovedu nechcete, jednoducho ju +zru¹te stlaèením C-g. + +(Na niektorých poèítaèoch je význam znaku C-h zmenený. To by naozaj +nemalo by» v¹eobecným nastavením pre v¹etkých pou¾ívateµov, tak¾e máte právo +pos»a¾ova» sa systémovému administrátorovi. Do tej doby, ak C-h +nezobrazuje hlásenie o nápovede v dolnej èasti obrazovky, skúste namiesto +toho pou¾íva» klávesu F1 alebo M-x help RET.) + +Najzákladnej¹í príkaz nápovedy je C-h c. Stlaète C-h, znak c a klávesový +príkaz; Emacs potom zobrazí veµmi struèný popis príkazu. + +>> Stlaète C-h c C-p. + + Hlásenie by malo vyzera» asi takto + + C-p runs the command previous-line + +To vám oznamuje "meno funkcie". Mená funkcií sú pou¾ívané hlavne pre +konfiguráciu a roz¹irovanie Emacsu. Ale preto¾e mená funkcií sú volené +tak, aby naznaèovali, èo zodpovedajúci príkaz robí, mô¾u slú¾i» tie¾ +ako veµmi struèná dokumentácia -- dostatoèná na to, aby Vám pripomenula +príkazy, ktoré ste sa u¾ nauèili. + +Viacznakové príkazy ako C-x C-s a (ak nemáte META, EDIT ani ALT +klávesu) v sú pre C-h c povolené tie¾. + +Na získanie viac informácií o príkaze pou¾ite namiesto C-h c C-h k. + +>> Stlaète C-h k C-p. + +To zobrazí dokumentáciu k funkcii a jej meno v emacsovom okne. Ak +výstup preèítate, stlaète C-x 1, aby ste sa textu nápovedy zbavili. +Nemusíte to robi» hneï. Mô¾ete chvíµu editova» a nazera» do textu +nápovedy a a¾ potom stlaèi» C-x 1. + +Tu sú ïal¹ie u¾itoèné voµby C-h: + + C-h f Popis funkcie. Zadáváte meno funkcie. + +>> Skúste napísa» C-h f previous-line. + To vypí¹e v¹etky informácie, ktoré Emacs má o funkcii implementujúcej + príkaz C-p. + +Podobný príkaz C-h v zobrazí dokumentáciu premennej, ktorej hodnotu +mô¾ete nastavi» pre ovplyvnenie chovania Emacsu. Meno premennej musíte +zada», a¾ keï sa naò Emacs spýta. + + C-h a Príkazové apropos. Zadajte kµúèové slovo a Emacs vypí¹e + v¹etky príkazy, ktorých meno obsahuje toto kµúèové + slovo. V¹etky tieto príkazy mô¾u by» vyvolané pomocou + Meta-x. Pre niektoré príkazy príkazové apropos vypí¹e + tie¾ jedno alebo dvojznakové sekvencie, ktoré vykonávajú + ten istý príkaz. + +>> Napí¹te C-h a file. + +To zobrazí v druhom okne zoznam v¹etkých M-x príkazov obsahujúcich "file" vo +svojom názve. Znakové príkazy ako C-x C-f uvidíte vypísané vedµa +zodpovedajúcich mien príkazov ako find-file. + +>> Stlaète C-M-v pre posun okna s nápovedou. Urobte to viac krát. + +>> Stlaète C-x 1 pre zmazanie okna s nápovedou. + + C-h i Èítanie on-line manuálov (tie¾ Info). Tento príkaz + Vás prepne do ¹peciálneho buffera s názvom `*info*', + v ktorom mô¾ete èíta» on-line manuály pre balíky + in¹talované na va¹om systéme. Ak stlaèíte m emacs , + mô¾ete si napríklad preèíta» manuál k Emacsu. Ak ste + doteraz nikdy nepou¾ívali Info, stlaète ? a Emacs vám + predstaví hlavné mo¾nosti módu pre Info. Ak toto + predstavenie absolvujete, mali by ste pou¾íva» Info + manuál Emacsu ako svoju primárnu dokumentáciu. + + +* VIAC VLASTNOSTÍ +----------------- + +Na to, aby ste sa nauèili viac o Emacse, preèítajte si jeho manuál, buï ako +knihu alebo on-line vo formáte Info (pou¾ite Help menu alebo stlaète F10 h r). +Dve vlastnosti, ktoré sa vám mô¾u páèi», je dopåòanie, ktoré ¹etrí písanie a +dired, ktorý zjednodu¹uje prácu so súbormi. + +Dopåòanie je na vyvarovanie sa zbytoèného písania. Napríklad, keï sa chcete +dosta» do bufferu *Messages*, mô¾ete napísa» C-x b *M a Emacs doplní +zvy¹ok mena bufferu, a¾ potiaµ, pokiaµ ho doká¾e zisti» z toho, èo ste u¾ +napísali. Dopåòanie je popísané v Info verzii manuálu Emacsu, v kapitole +nazvanej "Completion". + +Dired vám dovoµuje zobrazi» zoznam súborov v adresári (a voliteµne jeho +podadresároch), presúva», upravova», premenováva», maza» a ináè manipulova» so +súbormi. Dired je popísané v Info verzii manuálu Emacsu, v kapitole nazvanej +"Dired". + +Manuál tie¾ popisuje veµa iných vlastností Emacsu. + +* ZÁVER +------- + +Nezabudnite, Emacs ukonèíte vykonaním príkazu C-x C-c. Pre doèasný +odskok do shellu, z ktorého sa do Emacsu mô¾ete opä» vráti», +pou¾ite C-z. + +Zámerom tohto tútorialu je by» zrozumiteµný v¹etkým novým pou¾ívateµom, tak¾e +ak narazíte na nieèo nejasného, tak nezúfajte a nedávajte to za vinu sebe +-- s»a¾ujte sa! + + +KOPÍROVANIE +----------- + +Tento tútorial vychádza z dlhej rady emacsových tútorialov zaèatej +tútorialom napísaným Stuartom Cracraftom pre pôvodný Emacs. + +Táto verzia tútorialu je, podobne ako GNU Emacs, chránená copyrightom +a je ¹írená s povolením distribuova» kópie za istých podmienok: + +Copyright (C) 1985, 1996, 1998, 2001, 2002, 2003, 2004, + 2005, 2006, 2007 Free Software Foundation, Inc. + + Ka¾dému je zaruèené právo vytvára» a distribuova» presné kópie tohto + dokumentu tak, ako ho dostal, na akomkoµvek médiu, s tým, ¾e bude + zachovaná táto poznámka o autorstve a poznámka o povolení, a ¾e + distribútor zaruèuje príjemcovi právo na ïal¹iu redistribúciu povolenú + touto poznámkou. + + Je zaruèené právo distribuova» modifikované verzie tohto dokumentu + alebo jeho èastí pod hore uvedenými podmienkami za predpokladu, ¾e + obsahuje jasné poznámky uvádzajúce, kto urobil posledné úpravy. + +Podmienky pre kopírovanie Emacsu samotného sú zlo¾itej¹ie, ale +v rovnakom duchu. Preèítajte si, prosím, súbor COPYING a potom dajte kópie +GNU Emacsu svojim priateµom. Pomáhajte potlaèova» softwarovú ob¹trukciu +("vlastníctvo") pou¾ívaním, písaním a zdieµaním free softwaru! + +;;; Local Variables: +;;; coding: iso-latin-2 +;;; End: + +;;; arch-tag: 87861cfa-5cf6-4b87-9fab-86c93c5ca9f3 diff --git a/etc/tutorials/TUTORIAL.sl b/etc/tutorials/TUTORIAL.sl new file mode 100644 index 00000000000..a682d9acbe0 --- /dev/null +++ b/etc/tutorials/TUTORIAL.sl @@ -0,0 +1,1140 @@ +Prvo berilo za Emacs. Pogoji uporabe in raz¹irjanja so navedeni na koncu. + +Ukazi v Emacsu v splo¹nem vkljuèujejo tipki CONTROL (vèasih oznaèeni +CTRL ali CTL) in META (vèasih oznaèena EDIT ali ALT). Namesto, da bi ju +vedno izpisali s celim imenom, bomo uporabili naslednji okraj¹avi: + + C- pomeni, da moramo dr¾ati pritisnjeno tipko CONTROL, ko + vtipkamo . Oznaka C-f tako pomeni: dr¾imo pritisnjeno + tipko CONTROL in pritisnemo tipko f. + M- pomeni, da moramo dr¾ati pritisnjeno tipko META, EDIT ali + ALT, ko vtipkamo . Èe na tipkovnici ni tipk META, EDIT + ali ALT, pritisnemo tipko ESC, jo spustimo in zatem + pritisnemo tipko . Tipko ESC bomo oznaèevali z . + +Pomembno: Emacs zapustimo z ukazom C-x C-c (dva znaka). +V uèbeniku so vaje, s katerimi preskusite nove ukaze. Oznaèujeta jih +znaka ,>>` ob levem robu. Zgled: +<> +[Sredina strani je iz didaktiènih razlogov prazna. Besedilo se nadaljuje spodaj] +>> Vtipkajte zdaj ukaz C-v (View next screen, Prika¾i naslednji zaslon), + da se premaknete na naslednji zaslon (kar poskusite, pritisnite + hkrati tipko CONTROL in V). Od zdaj naprej boste morali to + napraviti sami vsakiè, ko pridete do konca zaslona. + +Ste opazili, da sta se dve vrstici s prej¹njega zaslona ponovili? Ta +kontinuiteta olaj¹a branje pri skakanju s strani na stran. + +Prva stvar, ki si jo morate zapomniti, je, kako se premikate po +datoteki. Zdaj ¾e veste, da se premaknete za cel zaslon naprej z +ukazom C-v. Za cel zaslon nazaj pa se premaknete z ukazom M-v +(pritisnite tipko META in jo dr¾ite ter pritisnite tipko v, ali pa +pritisnite in spustite ter zatem pritisnite tipko v, èe tipke +META, EDIT ali ALT na va¹i tipkovnici ni). + +>> Nekajkrat pritisnite M-v in C-v, da vidite, kako ukaza delujeta. + + +* POVZETEK +---------- + +Za pregled celega zaslona besedila so uporabni naslednji ukazi: + + C-v Premik se za cel zaslon naprej + M-v Premik se za cel zaslon nazaj + C-l Cel zaslon premaknemo tako, da je zdaj po vertikali + osredninjen okoli besedila, kjer se nahaja kazalèek + (znak v C-l je èrka L, ne ¹tevka 1) + +>> Poi¹èite kazalèek na zaslonu in si zapomnite besedilo okoli njega. + Vtipkajte C-l. + Ponovno poi¹èite kazalèek. Besedilo okoli njega je ostalo isto. + +Za premikanje za cel zaslon naprej ali nazaj lahko tipkovnicah, ki +imajo ti tipki, uporabljate tudi PageUp in PageDown. Opisan postopek s +C-v in M-v pa deluje povsod. + + +* PREMIKANJE KAZALÈKA +--------------------- + +Premiki za celo stran naprej in nazaj so sicer uporabni, ampak kako pa +pridemo do izbranega mesta na zaslonu? + +Naèinov je veè. Najosnovnej¹i je uporaba ukazov C-p, C-b, C-f in +C-n. Ti po vrsti premaknejo kazalèek v prej¹njo vrstico, znak nazaj, +znak naprej, in v naslednjo vrstico. Ti ¹tirje ukazi so enakovredni +kurzorskim tipkam: + + prej¹nja vrstica, C-p + : + : + nazaj, C-b .... trenutni polo¾aj kazalèka .... naprej, C-f + : + : + naslednja vrstica, C-n + +>> S pritiski na C-n ali C-p premaknite kazalèek v sredinsko vrstico + na diagramu zgoraj. Zatem pritisnite C-l. S tem diagram postavite na + sredino zaslona. + +V angle¹èini ima izbor tipk nazoren pomen. P kot ,previous` +(prej¹nji), N kot ,next` (naslednji), B kot ,backward` (nazaj) in F +kot ,forward` (naprej). Te osnovne ukaze za premikanje kazalèka boste +uporabljali ves èas. + +>> Nekajkrat pritisnite C-n, da pride kazalèek do te vrstice. + +>> Z nekaj C-f se pomaknite na desno na sredo vrstice, nato pa nekajkrat + pritisnite C-p. Opazujte, kaj se dogaja s kazalèkom na sredini + vrstice. + +Vsaka vrstice v besedilu je zakljuèena z znakom za novo vrstico +(angl. Newline). Ta loèuje vrstico v besedilu od naslednje. Tudi +zadnja vrstica v datoteki mora biti zaljuèena z znakom za novo vrstico +(èeprav tega Emacs ne zahteva). + +>> Poskusite ukaz C-b, ko je kazalèek na zaèetku vrstice. Kazalèek se + mora premakniti na konec prej¹nje vrstice. To je zato, ker se je + ravnokar premaknil prek znaka za konec vrstice. + +Ukaz C-f premika kazalèek prek znaka za novo vrstico enako kot C-b. + +>> Poskusite ¹e nekajkrat pritisniti C-b, da dobite obèutek za + premikanje kazalèka. Potem nekajkrat poskusite C-f, da pridete do konca + vrstice. ©e enkrat pritisnite C-f, da skoèite v naslednjo vrstico. + +Ko s kazalèkom dose¾ete zgornji ali spodnji rob zaslona, se besedilo +toliko premakne, da kazalèek ostane na zaslonu. V angle¹èini se temu +pravi ,,scrolling``. To omogoèa, da lahko premaknemo kazalèek na +katerokoli mesto v besedilu, a vseeno ostanemo na zaslonu. + +>> Poskusite kazalèek pripeljati s C-n èisto do dna zaslona in si oglejte, + kaj se zgodi. + +Èe se vam zdi premikanje po en znak prepoèasno, se lahko premikate za +celo besedo. M-f (META-f) premakne kazalèek za eno besedo naprej, M-b +pa za besedo nazaj. + +>> Poskusite nekajkrat M-f in M-b. + +Èe je kazalèek sredi besede, ga M-f prestavi na konec besede. Èe je v +belini med besedami, ga M-f premakne na konec naslednje besede. M-b +deluje podobno, a v nasprotni smeri. + +>> Nekajkrat poskusite M-f in M-b, vmes pa ¹e nekaj C-f in + C-b. Opazujte uèinke M-f in M-b, ko je kazalèek sredi besede ali + med besedami. + +Ste opazili paralelo med C-f in C-b na eni strani ter M-f in M-b na +drugi? V Emacsu se dostikrat ukazi Meta nana¹ajo na operacije nad +enotami jezika (besede, stavki, odstavki), medtem ko se ukazi Control +nana¹ajo na operacije, neodvisne od zvrsti besedila (znaki, vrstice +ipd.). + +Podobna zveza je tudi med vrsticami in stavki: ukaza C-a in C-e +premakneta kazalèek na zaèetek oz. konec vrstice, M-a in M-e pa na +zaèetek oz. konec stavka. + +>> Poskusite nekaj ukazov C-a, potem pa nekaj ukazov C-e. + Poskusite nekaj ukazov M-a, potem pa nekaj ukazov M-e. + +Ste opazili, da ponovljeni C-a ne napravijo niè, ponovljeni M-a pa se +premikajo naprej? Èeprav se ne obna¹ata enako, pa je vendar obna¹anje +enega in drugega po svoje naravno. + +Polo¾aju kazalèka na zaslonu pravimo tudi ,,point``, toèka. +Parafrazirano: kazalèek ka¾e na zaslonu, kje je toèka v besedilu. + +Povzetek preprostih ukazov za premikanje kazalèka, vkljuèno s premiki +po besedo in stavek: + + C-f Premik za znak naprej + C-b Premik za znak nazaj + + M-f Premik za besedo naprej + M-b Premik za besedo nazaj + + C-n Premik v naslednjo vrstico + C-p Premik v prej¹njo vrstico + + C-a Premik na zaèetek vrstice + C-e Premik na konec vrstice + + M-a Premik na zaèetek stavka + M-e Premik na konec stavka + +>> Za vajo nekajkrat poskusite vsakega od teh ukazov. + To so najpogosteje uporabljani ukazi. + +©e dva pomembna ukaza za premikanje kazalèka sta M-< (META-manj¹i od), +ki ga premakne na zaèetek datoteke, in M-> (META-veèji od), ki ga +premakne na konec datoteke. + +Na ameri¹kih tipkovnicah najdete znak < nad vejico in morate +pritisniti tipko Shift, da pridete do njega. Z ukazom M-< je enako - +prav tako morate pritisniti tipko Shift, sicer moste izvedli drug +ukaz, Meta-vejica. Na na¹ih tipkovnicah sta oba znaka na isti tipko, +in za ukaz M-> morate pritisniti ¹e tipko Shift. + +>> Poskusite zdaj M-<, skok na zaèetek tega uèbenika. + Potem se vrnite nazaj z zaporednimi C-v. + +>> Poskusite zdaj M->, skok na konec tega uèbenika. + Potem se vrnite nazaj z zaporednimi M-v. + +Èe ima va¹a tipkovnica kurzorske tipke, lahko premikate kazalèek po +zaslonu tudi z njimi. Vseeno priporoèamo, da se privadite ukazov C-b, +C-f, C-n in C-p, in to iz treh razlogov. Prviè, delujejo na èisto vseh +terminalih. Drugiè, z nekaj prakse v Emacsu boste opazili, da je +tipkanje ukazov s CONTROL hitrej¹e od tipkanja s kurzorskimi tipkami, ker +ni treba ves èas premikati desnice s tipkovnice na kurzorske tipke in +nazaj. In tretjiè, ko se enkrat navadite teh ukazov s CONTROL, se boste +enostavneje nauèili tudi bolj zapletenih ukazov za premikanje kazalèka. + +Veèini ukazov v Emacsu lahko podamo ¹tevilèni argument; najveèkrat ta +pove, kolikokrat zapovrstjo naj se ukaz izvede. Veèkratno ponovitev +ukaza izvedemo tako, da najprej vtipkamo C-u, zatem ¹tevilo, +kolikokrat naj se ukaz ponovi, in nazadnje ¾eljeni ukaz. Èe ima va¹a +tipkovnica tipko META (ali EDIT ali ALT), lahko izpustite ukaz C-u in +namesto tega vtipkate ¹tevilo ponovitev, medtem ko dr¾ite pritisnjeno +tipko META. Druga metoda je sicer kraj¹a, priporoèamo pa prvo, ker +deluje na vseh terminalih. Tak¹en ¹tevilèni argument je ,,prefiksni`` +argument, ker vnesemo argument pred ukazom, na katerega se nana¹a. + +Zgled: C-u 8 C-f premakne kazalèek za osem znakov naprej. + +>> Poskusite s primernim argumentom za ¹tevilo ponovitev ukaza + C-n ali C-p priti èim bli¾e tej vrstici v enem samem skoku. + +Veèina ukazov, ne pa vsi, uporablja ¹tevilèni argument kot ¹tevilo +ponovitev ukaza. Nekateri ukazi - nobeden od tistih, ki smo si jih +ogledali do zdaj - ga uporabljajo kot stikalo: s podanim prefiksnim +argumentom napravi ukaz nekaj drugega kot obièajno. + +Ukaza C-v in M-v sta tudi izjemi, a drugaèni. Èe jima podamo argument, +premakneta zaslon za navedeno ¹tevilo vrstic, ne pa zaslonov. Ukaz C-u +8 C-v, na primer, premakne zaslon navzgor za 8 vrstic. + +>> Poskusite zdaj C-u 8 C-v + +To bi moralo zaslon premakniti navzgor za osem vrstic. Èe bi ga radi +premaknili nazaj, poskusite M-v z istim argumentom. + +Èe uporabljate grafièni vmesnik, denimo X11 ali MS Windows, imate +verjetno ob robu Emacsovega okna navpièno pravokotno ploskev, +imenovano drsnik. Pogled na besedilo lahko premikate tudi tako, da z +mi¹ko kliknete na drsnik. + +>> Postavite kazalec na vrh oznaèenega obmoèja na drsniku in pritisnite + srednji gumb na mi¹ki. To bi moralo premakniti besedilo na mesto, + doloèeno s tem, kako visoko ali nizko na drsnik ste kliknili. + +>> Medtem ko dr¾ite srednji gumb pritisnjen, premikajte mi¹ko gor in + dol. Vidite, kako se premika besedilo v Emacsovem oknu, ko + premikate mi¹ko? + + +* ÈE SE EMACS OBESI +------------------- + +Èe se Emacs preneha odzivati na va¹e ukaze, ga lahko varno prekinete z +ukazom C-g. Z njim lahko prekinete ukaze, za katere bi trajalo +predolgo, da bi se izvedli. + +Isti ukaz, C-g, lahko uporabite tudi, da preklièete ¹tevilèni +argument, ali pa zaèetek ukaza, ki ga ne ¾elite izvesti. + +>> Vtipkajte C-u 100, s èimer ste izbrali ¹tevilèni argument 100, + zatem pa vtipkajte C-g. Vtipkajte zdaj C-f. Kazalèek se je + premaknil le za en znak, ker ste ¹tevilèni argument vmes preklicali + s C-g. + +Tudi èe ste po nesreèi vtipkali , se ga lahko znebite s C-g. + + +* ONEMOGOÈENI UKAZI +------------------- + +Nekaj ukazov v Emacsu je namenoma ,,onemogoèenih``, da bi jih +zaèetniki ne izvedli po nesreèi. + +Èe vtipkate tak onemogoèen ukaz, se bo na zaslonu pojavilo novo okno z +obvestilom, kateri ukaz ste sku¹ali izvesti, in vas vpra¹alo, èe ga +res ¾elite izvesti. + +Èe v resnici ¾elite poskusiti ukaz, pritisnite preslednico kot odgovor +na vpra¹anje. Normalno verjetno ukaza ne ¾elite izvesti, zato na +vpra¹anje odgovorite z ,n`. + +>> Vtipkajte C-x C-l (ki je onemogoèen ukaz), + zatem na vpra¹anje odgovorite n. + + +* OKNA +------ + +Emacs lahko prika¾e veè oken in v vsakem svoje besedilo. Kasneje bomo +razlo¾ili, kako uporabljamo veè oken hkrati. Zaenkrat bomo povedali +le, kako se znebite dodatnih oken, ki jih lahko odpre vgrajena pomoè ali +pa izpis kak¹nega drugega programa. Preprosto je: + + C-x 1 Eno okno (torej, zaprimo vsa ostala). + +To je CONTROL-x, ki mu sledi ¹tevka 1. Ukaz C-x 1 raztegne èez cel +zaslon okno, v katerem se nahaja kazalèek, ostala pa zapre. + +>> Premaknite kazalèek do te vrstice in vtipkajte C-u 0 C-l +>> Vtipkajte CONTROL-h k CONTROL-f. + Vidite, kako se je to okno skrèilo in odstopilo prostor oknu, + ki pojasnjuje ukaz CONTROL-f? + +>> Vtipkajte C-x 1 in spodnje okno se bo zaprlo. + +Za razliko od ukazov, ki smo se jih nauèili do zdaj, je ta ukaz +sestavljen iz dveh znakov. Zaène se z znakom CONTROL-x. Cela vrsta +ukazov se zaène enako, in mnogi od njih zadevajo delo z datotekami, +delovnimi podroèji in podobnim. Vsem tem ukazom je skupno, da se +zaènejo s CONTROL-x, ki mu sledi ¹e en, dva ali trije znaki. + + +* VRIVANJE IN BRISANJE +---------------------- + +Èe ¾elite v obstojeèe besedilo vriniti novo, preprosto premaknite +kazalèek na ¾eljeno mesto in zaènite tipkati. Znake, ki jih lahko +vidite, na primer A, 7, * in podobno, razume Emacs kot del besedila in +jih takoj vrine. S pritiskom na Return (ali Enter) vrinete znak za +skok v novo vrstico. + +Zadnji vtipkani znak lahko izbri¹ete s pritiskom na tipko +. To je tista tipka na tipkovnici, ki jo navadno uporabljate +za brisanje nazadnje natipkanega znaka. Navadno je to velika tipka +vrstico ali dve nad tipko , ki je oznaèena z "Backspace", +"Delete" ali "Del". + +Èe imate na tipkovnici tipko "Backspace", je to tipka . Naj +vas ne zmede, èe imate poleg tega ¹e tipko "Delete" - je +"Backspace". + +Splo¹no pobri¹e znak neposredno pred trenutnim polo¾ajem +kazalèka. + +>> Vtipkajte zdaj nekaj znakov in jih zatem s tipko pobri¹ite. + Niè naj vas ne skrbi, èe se je ta vrstica spremenila. Izvirnika + tega uèbenika ne boste pokvarili -- tole je samo va¹a osebna kopija. + +Ko vrstica postane predolga za zaslon, se ,,nadaljuje`` v naslednji +vrstici na zaslonu. Obrnjena po¹evnica (znak ,\`) ali v grafiènih +okoljih zavita pu¹èica ob desnem robu oznaèuje vrstico, ki se +nadaljuje v naslednji zaslonski vrstici. + +>> Zdaj zaènite tipkati besedilo, dokler ne dose¾ete desnega roba, in + ¹e naprej. Opazili boste, da se pojavi znak za nadaljevanje. + +>> S tipko pobri¹ite toliko znakov, da vrstica ne sega + veè èez ¹irino zaslona. Znak za nadaljevanje v naslednji + vrstici je izginil. + +Znak za novo vrstico lahko pobri¹emo enako kot vsak drug znak. S tem, +ko pobri¹emo znak za novo vrstico, zdru¾imo vrstici v eno samo. Èe bo +nova vrstica predolga, da bi cela pri¹la na zaslon, bo razdeljena v +veè zaslonskih vrstic. + +>> Premaknite kazalèek na zaèetek vrstice in pritisnite . To + zdru¾i vrstico s prej¹njo. + +>> Pritisnite . S tem ste ponovno vrinili znak za skok v novo + vrstico, ki ste ga malo prej zbrisali. + +Spomnimo se, da lahko za veèino ukazov v Emacsu doloèimo, naj se +izvedejo veèkrat zaporedoma; to vkljuèuje tudi vnos teksta. Ponovitev +obièajnega znaka ga veèkrat vrine v besedilo. + +>> Poskusite zdaj tole: da vnesete osem zvezdic, vtipkajte C-u 8 * + +Zdaj ste se nauèili najpreprostej¹i naèin, da v Emacsu nekaj natipkate +in popravite. Bri¹ete lahko tudi besede ali vrstice. Tu je povzetek +ukazov za brisanje: + + pobri¹e znak tik pred kazalèkom (levo od + oznake za kazalèek) + C-d pobri¹e znak tik za kazalèkom (,pod` oznako + za kazalèek) + + M- pobri¹e besedo tik pred kazalèkom + M-d pobri¹e besedo tik za kazalèkom + + C-k zavr¾e besedilo desno od kazalèka do konca vrstice + M-k zavr¾e besedilo od polo¾aja kazalèka do konca stavka + +Èrka ,d` je iz angle¹ke besede ,delete` (pobrisati), èrka ,k` pa iz +besede ,kill` (pobiti). Ste opazili, da in C-d na eni, ter +M- in M-d na drugi strani nadaljujeta paralelo, ki sta jo zaèela +C-f in M-f ( pravzaprav ni kontrolni znak, kar pa naj nas ne +moti). C-k in M-k sta v enakem sorodu s C-e in M-e: prvi deluje na +vrstice, drugi na stavke. + +Obstaja tudi splo¹en postopek za brisanje kateregakoli dela delovnega +podroèja. Kazalèek postavimo na en konec podroèja, ki ga ¾elimo +izbrisati, in pritisnemo C-@ ali C-SPC (SPC je +preslednica). Katerikoli od obeh ukazov deluje. Premaknite kazalèek na +drug konec podroèja, ki ga ¾elite izbrisati, in pritisnite C-w. S tem +ste zavrgli vse besedilo med obema mejama. + +>> Premaknite kazalèek na èrko O, s katero se zaèenja prej¹nji + odstavek. +>> Vtipkajte C-SPC. Emacs prika¾e sporoèilo "Mark set" (slov. Oznaka + postavljena) na dnu ekrana. +>> Premaknite kazalèek na èrko V v "postavimo" v drugi vrstici istega + odstavka. +>> Vtipkajte C-w. S tem zavr¾emo vse besedilo zaèen¹i z O in vse do + èrke V. + +Razlika med tem, èe zavr¾ete cel odstavek besedila (angl. ,,kill``, +pobiti) ali pa èe pobri¹ete znak (angl. ,,delete``), je ta, da lahko +prvega vrnete nazaj z ukazom C-y, drugega pa ne. Na splo¹no ukazi, ki +lahko povzroèijo veliko ¹kode (pobri¹ejo veliko besedila), shranijo +pobrisano besedilo; tisti, ki pobri¹ejo samo posamezni znak, ali samo +prazne vrstice in presledke, pa ne. + +>> Postavite kazalèek na zaèetek neprazne vrstice. Pritisnite C-k, da + pobri¹ete vsebino vrstice. +>> ©e enkrat pritisnite C-k. To pobri¹e ¹e znak za novo vrstico. + +Ste opazili, da prvi C-k pobri¹e vsebino vrstice, naslednji C-k pa ¹e +vrstici samo, s èimer se vse besedilo pod biv¹o vrstico premakne za +eno vrstico navzgor? Ukaz C-k obravnava ¹tevilèni argument malo +drugaèe: pobri¹e toliko in toliko vrstic z vsebinami vred. To ni zgolj +ponovitev. C-u 2 C-k pobri¹e dve polni vrstici besedila, kar je nekaj +drugega, kot èe dvakrat vtipkate C-k. + +Besedilo, ki ste ga prej pobili, lahko povrnete (angl. ,,yank`` -- +potegniti). Predstavljajte si, kot da potegnete nazaj nekaj, kar vam +je nekdo odnesel. Pobito besedilo lahko potegnete nazaj na isti ali pa +na kak¹en drug kraj v besedilu, ali pa celo v kaki drugi +datoteki. Isto besedilo lahko veèkrat potegnete nazaj, tako da je v +delovnem podroèju poveèterjeno. + +Ukaz za vraèanje pobitega besedila je C-y. + +>> Poskusite z ukazom C-y povrniti pobrisano besedilo. + +Èe ste uporabili veè zaporednih ukazov C-k, je vse pobrisano besedilo +shranjeno skupaj, in en sam C-y bo vrnil vse tako pobrisane vrstice. + +>> Poskusite, nekajkrat vtipkajte C-k. + +Zdaj pa vrnimo pobrisano besedilo: + +>> Vtipkajte C-y. Zdaj pa premaknite kazalèek za nekaj vrstic navzdol + in ¹e enkrat vtipkajte C-y. Vidite zdaj, kako se kopira dele + besedila? + +Kaj pa, èe ste pobrisali nekaj besedila, ki bi ga radi vrnili, vendar +ste za iskanim odlomkom pobrisali ¹e nekaj? C-y vrne samo nazadnje +pobrisan odlomek. Vendar tudi prej¹nje besedilo ni izgubljeno. Do +njega lahko pridete z ukazom M-y. Ko ste vrnili nazadnje zbrisano +besedilo s C-y, pritisnite M-y, ki ga zamenja s predzanje pobrisanim +besedilom. Vsak naslednji M-y prika¾e ¹e eno prej. Ko ste konèno +pri¹li do iskanega besedila, ni treba napraviti niè posebnega, da bi +ga obdr¾ali. Preprosto nadaljujte z urejanjem, in vrnjeno besedilo bo +ostalo, kamor ste ga odlo¾ili. + +Èe pritisnete M-y dovolj velikokrat, se boste vrnili na zaèete, torej +spet na zadnje pobrisano besedilo. + +>> Pobri¹ite vrstico, premaknite se nekam drugam, in pobri¹ite ¹e + eno vrstico. + Z ukazom C-y dobite nazaj to drugo vrstico. + Z ukazom M-y pa jo zamenjate s prvo vrstico. + Ponovite ukaz M-y ¹e nekajkrat in si oglejte, kaj dobite na + zaslon. Ponavljajte ga, dokler se ne prika¾e ponovno nazadnje + pobrisana vrstica, in ¹e naprej. Èe ¾elite, lahko tudi ukazu + M-y podate pozitivno ali negativno ¹tevilo ponovitev. + + +* PREKLIC UKAZA (UNDO) +---------------------- + +Èe ste besedilo spremenili, a ste se kasneje premislili, lahko +besedilo vrnete v prvotno stanje z ukazom Undo, C-x u. Normalno vrne +C-x u zadnjo spremembo besedila; èe ukaz ponovimo, preklièemo ¹e +predzadnjo spremembo, in vsaka nadaljnja ponovitev se¾e ¹e eno +spremembo globlje v zgodovino. + +Emacs hrani bolj ali manj celotno zgodovino na¹ih ukazov, z dvema +izjemama: ukazov, ki niso napravili nobene spremembe v besedilu +(npr. premik kazalèka), ne shranjuje, in zaporedje do 20 vrinjenih +znakov shrani kot en sam ukaz. Slednje prihrani nekaj ukazov C-x u, ki +bi jih morali vtipkati. + +>> Pobri¹ite to vrstico z ukazom C-k, potem jo priklièite nazaj s C-x u. + +C-_ je alternativni ukaz za preklic zadnjega ukaza. Deluje enako kot +s C-x u, ga je pa la¾je odtipkati, èe morate ukaz ponoviti veèkrat +zaporedoma. Te¾ava z ukazom C-_ je, da na nekaterih tipkovnicah ni +povsem oèitno, kako ga vtipkati, zato je podvojen ¹e kot C-x u. Na +nekaterih terminalih moramo na primer vtipkati /, medtem ko dr¾imo +pritisnjeno tipko CONTROL. + +Èe podamo ukazu C-_ ali C-x u numerièni argument, je to enako, kot èe +bi ukaz roèno ponovili tolikokrat, kot pravi argument. + +Ukaz za brisanje besedila lahko preklièete in besedilo povrnete, +enako, kot èe bi besedilo pobili. Razlika med brisanjem in pobijanjem +besedila je le ta, da le slednje lahko potegnete nazaj z ukazom +C-y. Preklic ukaza pa velja za eno in drugo. + + +* DATOTEKE +---------- + +Da bi bile spremembe v besedilu trajne, morate besedilo shraniti v +datoteko. V nasprotnem primeru jih boste za vedno izgubili tisti hip, +ko boste zapustili Emacs. Besedilo postavimo v datoteko tako, da +na disku ,,poi¹èemo`` (angl. find) datoteko, preden zaènemo tipkati +(pravimo tudi, da ,,obi¹èemo`` datoteko). + +Poiskati datoteko pomeni, da v Emacsu vidimo vsebino datoteke. To je +bolj ali manj tako, kot da z Emacsom urejamo datoteko samo. Vendar pa +spremembe ne postanejo trajne, dokler datoteke ne shranimo +(angl. save) na disk. Tako imamo mo¾nost, da se izognemo temu, da bi +nam na pol spremenjene datoteke le¾ale po disku, kadar tega ne +¾elimo. Ker pa Emacs ohrani izvorno datoteko pod spremenjenim imenom, +lahko prvotno datoteko priklièemo nazaj celo ¹e potem, ko smo datoteko +¾e shranili na disk. + +V predzadnji vrstici na dnu zaslona vidite vrstico, ki se zaène in +konèa z vezaji, in vsebuje niz znakov ,,--:-- TUTORIAL``. Ta del +zaslona navadno vsebuje ime datoteke, ki smo jo obiskali. Zdajle je to +,,TUTORIAL``, va¹a delovna kopija uèbenika Emacsa. Ko boste poiskali +kak¹no drugo datoteko, bo na tem mestu pisalo njeno ime. + +Posebnost ukaza za iskanje datoteke je, da moramo povedati, katero +datoteko i¹èemo. Pravimo, da ukaz ,,prebere argument s terminala`` (v +tem primeru je argument ime datoteke). Ko vtipkate ukaz + + C-x C-f (poi¹èi datoteko) + +vas Emacs povpra¹a po imenu datoteke. Kar vtipkate, se sproti vidi v +vrstici na dnu zaslona. Temu delovnemu podroèju pravimo pogovorni +vmesnik (minibuffer), kadar se uporablja za tovrstni vnos. Znotraj +pogovornega vmesnika lahko uporabljate obièajne ukaze za urejanje, èe +ste se na primer pri tipkanju zmotili. + +Sredi tipkanja imena datoteke (ali katerega koli drugega opravila v +pogovornem vmesniku) lahko ukaz preklièete s C-g. + +>> Vtipkajte C-x C-f, zatem pa ¹e C-g. Zadnji ukaz od treh je + zaprl pogovorni vmesnik in tudi preklical ukaz C-x C-f, ki je + uporabljal pogovorni vmesnik. Konec z iskanjem datoteke. + +Ko ste dokonèali ime, ga vnesete s pritiskom na . S tem se +po¾ene ukaz C-x C-f in poi¹èe iskano datoteko. Pogovorni vmesnik +izgine, ko je ukaz izveden. + +Trenutek kasneje se vsebina datoteke pojavi na zaslonu. Zdaj lahko +dopolnjujete, urejate ali kako drugaèe spreminjate vsebino. Ko ¾elite, +da ostanejo spremembe trajne, izvedete ukaz: + + C-x C-s (shrani datoteko) + +Besedilo se s tem shrani iz pomnilnika raèunalnika na datoteko na +disk. Ko prviè izvedete ta ukaz, se izvorna datoteka preimenuje, tako +da ni izgubljena. Najdete jo pod novim imenom, ki se od starega +razlikuje po tem, da ima na koncu pripet znak ,,~``. + +Ko je Emacs shranil datoteko, izpi¹e njeno ime. Shranjujte raje +pogosteje kot ne, da v primeru, èe gre z raèunalnikom kaj narobe, ne +izgubite veliko. + +>> Vtipkajte C-x C-s, s èimer boste shranili svojo kopijo tega + uèbenika. Emacs bo v vrstici na dnu zaslona izpisal ,,Wrote + ...TUTORIAL``. + +Opozorilo: na nekaterih sistemih bo ukaz C-x C-s zamrznil zaslon, in +tako ne boste videli, da Emacs ¹e kaj izpi¹e. To je znak, da je +operacijski sistem prestregel znak C-s in ga interpretiral kot znak za +prekinitev toka podatkov, namesto da bi ga posredoval Emacsu. Zaslon +,,odmrznete`` z ukazom C-q. Èe je va¹ sistem eden takih, si za nasvet, +kako re¹iti to nev¹eènost, oglejte razdelek ,,Spontaneous Entry to +Incremental Search`` v priroèniku za Emacs. + +Poi¹èete lahko lahko ¾e obstojeèo datoteko, da si jo ogledate ali +popravite, ali pa tudi datoteko, ki ¹e ne obstaja. To je naèin, kako z +Emacsom ustvarimo novo datoteko: poi¹èite datoteko z izbranim imenom, +ki bo sprva prazna, in zaènite pisati. Ko jo boste prviè shranili, bo +Emacs ustvaril datoteko z vne¹enim besedilom. Od tod dalje delate na +¾e obstojeèi datoteki. + + +* DELOVNA PODROÈJA +------------------ + +Tudi èe ste z ukazom C-x C-f poiskali in odprli drugo datoteko, prva +ostane v Emacsu. Nanjo se vrnete tako, da jo ¹e enkrat ,,poi¹èete`` z +ukazom C-x C-f. Tako imate lahko v Emacsu hkrati kar precej datotek. + +>> Ustvarite datoteko z imenom ,,bla`` tako, da vtipkate C-x C-f + bla . Natipkajte nekaj besedila, ga po potrebi popravite, in + shranite v datoteko ,,bla`` z ukazom C-x C-s. Ko ste konèali, se + vrnite v uèbenik z ukazom C-x C-f TUTORIAL . + +Emacs hrani besedilo vsake datoteke v takoimenovanem ,,delovnem +podroèju`` (angl. buffer). Ko poi¹èemo datoteko, Emacs ustvari zanjo +novo delovno podroèje. Vsa obstojeèa delovna podroèja v Emacsu vidimo +z ukazom: + + C-x C-b Seznam delovnih podroèij. + +>> Poskusite C-x C-b zdaj. + +Vidite, da ima vsako delovno podroèje svoje ime, pri nekaterih pa pi¹e +tudi ime datoteke, katere vsebina se hrani v njem. Vsako besedilo, ki +ga vidite v katerem od Emacsovih oken, je vedno del kak¹nega delovnega +podroèja. + +>> Z ukazom C-x 1 se znebite seznama delovnih podroèij. + +Tudi èe imate veè delovnih podroèij, pa je vedno le eno od njih +trenutno dejavno. To je tisto delovno podroèje, ki ga popravljate. Èe +¾elite popravljati drugo delovno podroèje, morate ,,preklopiti`` +nanj. Èe bi radi preklopili na delovno podroèje, ki pripada kak¹ni +datoteki, ¾e poznate en naèin, kako to storiti: ponovno ,,obi¹èete`` +(odprete) to datoteko z ukazom C-x C-f. Obstaja pa ¹e la¾ji naèin: z +ukazom C-x b. Pri tem ukazu morate navesti ime delovnega podroèja. + +>> Vtipkajte C-x b bla , s èimer se vrnete v delovno podroèje + ,,bla`` z vsebino datoteke ,,bla``, ki ste jo maloprej + odprli. Zatem vtipkajte C-x b TUTORIAL , s èimer se vrnete + nazaj v ta uèbenik. + +Veèinoma se ime delovnega podroèja kar ujema z imenom datoteke (brez +poti do datoteke), ne pa vedno. Seznam delovnih podroèij, ki ga +prika¾e ukaz C-x C-b, prika¾e imena vseh delovnih podroèij. + +Vsako besedilo, ki ga vidite v katerem od Emacsovih oken, je vedno del +kak¹nega delovnega podroèja. Nekatera delovna podroèja ne pripadajo +nobeni datoteki. Podroèje ,,*Buffer List*``, na primer, je ¾e eno +takih. To delovno podroèje smo ustvarili ravnokar, ko smo pognali ukaz +C-x C-b, in vsebuje seznam delovnih podroèij. Tudi delovno podroèje +,,Messages`` ne pripada nobeni datoteki, ampak vsebuje sporoèila, ki +jih je Emacs izpisoval v odzivnem podroèju na dnu zaslona. + +>> Vtipkajte C-x b *Messages* in si oglejte delovno podroèje + s sporoèili, zatem pa vtipkajte C-x b TUTORIAL in se tako + vrnite v uèbenik. + +Èe ste spreminjali besedilo ene datoteke, potem pa poiskali drugo, to +ne shrani spremeb v prvo datoteko. Te ostanejo znotraj Emacsa, na +delovnem podroèju, ki pripada prvi datoteki. Ustvarjenje ali +spreminjanje delovnega podroèja druge datoteke nima nobenega vpliva na +podroèje prve. To je zelo uporabno, pomeni pa tudi, da potrebujemo +udobno pot, da shranimo delovno podroèje prve datoteke. Nerodno bi +bilo preklapljanje na prvo podroèje s C-x C-f, da bi shranili s C-x +C-s. Namesto tega imamo: + + C-x s Shrani nekatera delovna podroèja + +Ukaz C-x poi¹èe delovna podroèja, katerih vsebina je bila spremenjena, +odkar je bila zadnjiè shranjena na datoteko. Za vsako tako delovno +podroèje C-x s vpra¹a, èe ga ¾elite shraniti. + + +* RAZ©IRJEN NABOR UKAZOV +------------------------ + +©e mnogo, mnogo je ukazov Emacsa, ki bi zaslu¾ili, da jih obesimo na +razne kontrolne in meta znake. Emacs se temu izogne z ukazom X (iz angl. +eXtend - raz¹iriti), ki uvede ukaz iz raz¹irjenega nabora. Dveh vrst je: + + C-x Znakovna raz¹iritev (angl. Character eXtend). + Sledi mu en sam znak. + M-x Raz¹iritev s poimenovanim ukazom. Sledi mu dolgo ime + ukaza. + +Tudi ti ukazi so na splo¹no uporabni, ne uporabljamo pa jih tako +pogosto kot tiste, ki ste se jih ¾e nauèili. Dva ukaza iz raz¹irjenega +nabora ¾e poznamo: C-x C-f, s katerim poi¹èemo datoteko, in C-x C-s, s +katerim datoteko shranimo. ©e en primer je ukaz, s katerim Emacsu +povemo, da ¾elimo konèati z delom iz iziti iz Emacsa. Ta ukaz je C-x +C-c (ne skrbite: preden konèa, Emacs ponudi, da shrani vse spremenjene +datoteke). + +Z ukazom C-z Emacs zapustimo samo *zaèasno*, tako da lahko ob vrnitvi +nadaljujemo z delom, kjer smo ostali. + +Na sistemih, ki to dopu¹èajo, ukaz C-z izide iz Emacsa v ukazno +lupino, a ga ne konèa - èe uporabljate ukazno lupino C, se lahko +vrnete z ukazom ,fg` ali splo¹neje z ukazom ,,%emacs``. + +Drugod ukaz C-z po¾ene sekundarno ukazno lupino, tako da lahko +po¾enete kak¹en drug program in se kasneje vrnete v Emacs. V tem +primeru pravzaprav Emacsa ne zapustimo. Ukaz ,,exit`` v ukazni lupini +je navadno naèin, da zapremo sekundarno lupino in se vrnemo v Emacs. + +Ukaz C-x C-c uporabimo, èe se nameravamo odjaviti s sistema. To je +tudi pravilen naèin za izhod iz Emacsa, èe je tega pognal program za +delo s po¹to ali kak drug program, saj ta verjetno ne ve, kaj +napraviti z zaèasno prekinjenim Emacsom. V vseh ostalih primerih pa, +èe se ne nameravate odjaviti s sistema, uporabite C-z, in se vrnite v +Emacs, ko bi radi spet urejali besedilo. + +Ukazov C-x je veliko. Zaenkrat smo spoznali naslednje: + + C-x C-f Poi¹èi datoteko. + C-x C-s Shrani datoteko. + C-x C-b Prika¾i seznam delovnih podroèij. + C-x C-c Konèaj Emacs. + C-x 1 Zapri vsa okna razen enega. + C-x u Preklic zadnjega ukaza. + +Poimenovani raz¹irjeni ukazi so ukazi, ki se uporabljajo ¹e bolj +poredko, ali pa se uporabljajo samo v nekaterih naèinih dela. Eden +takih je na primer ukaz replace-string, ki po vsem besedilu zamenja en +niz znakov z drugim. Ko vtipkate M-x, se to izpi¹e v pogovornem +vmesniku na dnu zaslona, Emacs pa èaka, da vtipkate ime ukaza, ki ga +¾elite priklicati; v tem primeru je to ,,replace-string``. Vtipkajte +samo ,,repl s`` in Emacs bo dopolnil ime ( je tabulatorska +tipka; navadno jo najdemo nad tipko Caps Lock ali Shift na levi strani +tipkovnice). Ukaz vnesete s pritiskom na . + +Ukaz replace-string potrebuje dva argumenta -- niz, ki ga ¾elite +zamenjati, in niz, s katerim bi radi zamenjali prvega. Vsakega posebej +vnesete in zakljuèite s pritiskom na tipko Return. + +>> Premaknite kazalèek na prazno vrstico dve vrstici pod to, zatem + vtipkajte M-x repl szamenjalaspremenila. + + Opazite, kako se je ta vrstica zamenjala? Vse besede + z-a-m-e-n-j-a-l-a od tod do konca besedila ste nadomestili z besedo + ,,spremenila``. + + +* AVTOMATIÈNO SHRANJEVANJE +-------------------------- + +Spremembe v datoteki, ki jih ¹e niste shranili na disk, so izgubljene, +èe medtem denimo zmanjka elektrike. Da bi vas zavaroval pred tem, +Emacs periodièno avtomatièno shrani vse datoteke, ki jih +urejate. Avtomatièno shranjena datoteka se od izvorne razlikuje po +znaku ,#` na zaèetku in koncu imena: èe se je va¹a datoteka imenovala +,,hello.c``, se avtomatièno shranjena datoteka imenuje +,,#hello.c#``. Ko normalno shranite datoteko, avtomatièno shranjena +datoteka ni veè potrebna, in Emacs jo pobri¹e. + +Èe res pride do izgube podatkov v pomnilniku, lahko povrnete avtomatièno +shranjeno besedilo tako, da normalno poi¹èete datoteko (pravo ime +datoteke, ne ime avtomatièno shranjene datoteke), zatem pa vtipkate M-x +recover file. Ko vas vpra¹a za potrditev, vtipkajte yes +za nadaljevanje in povrnitev avtomatièno shranjenenih podatkov. + + +* ODZIVNO PODROÈJE +------------------ + +Kadar Emacs opazi, da poèasi vtipkavate ukaz, odpre v zadnji vrstici +na dnu zaslona odzivno podroèje in v njem sproti prikazuje natipkano. + + +* STATUSNA VRSTICA +------------------ + +Vrstica nad odzivnim podroèjem je statusna vrstica. Ta ka¾e verjetno +nekaj podobnega kot: + +--:** TUTORIAL (Fundamental)--L670--58%---------------------- + +V njej so izpisani pomembni podatki o stanju Emacsa in besedilu, ki ga +urejate. + +Zdaj ¾e veste, kaj pomeni ime datoteke -- to je datoteka, ki ste jo +poiskali. Oznaka --NN%-- pomeni, da je nad vrhom zaslona ¹e NN +odstotkov celotne datoteke. Èe je zaèetek datoteke na zaslonu, bo +namesto --00%-- pisalo --Top--. Podobno bo pisalo --Bot--, èe je +zadnja vrstica datoteke na zaslonu. Èe je datoteka, ki jo ogledujete, +tako kratka, da gre vsa na en zaslon, pa bo pisalo --All--. + +Èrka L in ¹tevilke za njo ka¾ejo polo¾aj ¹e drugaèe, kot zaporedno +¹tevilko vrstice, v kateri je kazalèek. + +Zvezdice na zaèetku vrstice pomenijo, da ste datoteko ¾e spreminjali. +Tik po tem, ko ste odprli ali shranili datoteko, ni nobenih zvezdic, +so samo èrtice. + +Del statusne vrstice znotraj oklepajev vam pove, v kak¹nem naèinu dela +Emacs. Privzeti naèin je osnovni naèin (Fundamental), v katerem ste +sedaj. Fundamental je eden od glavnih naèinov (angl. major +mode). Emacs pozna veliko razliènih glavnih naèinov. Nekateri od njih +so namenjeni pisanju programov, kot na primer Lisp, ali pisanju +besedil, kot npr. Text. Naenkrat je lahko aktiven le en glavni naèin, +njegovo ime pa je vedno izpisano v statusni vrstici, kjer zdaj pi¹e +Fundamental. + +Glavni naèini lahko spremenijo pomen nekaterim ukazom. Obstajajo, +denimo, ukazi za pisanje komentarjev v programu, in ker ima vsak +programski jezik svoje predstave o tem, kako mora komentar izgledati, +mora vsak glavni naèin vnesti komentarje drugaèe. Ker je vsak glavni +naèin ime raz¹irjenega ukaza, lahko tako tudi izbiramo glavni +naèin. Na primer, M-x fundamental-mode vas postavi v naèin +Fundamental. + +Èe nameravate popravljati slovensko (ali angle¹ko) besedilo, kot je na +primer tole, boste verjetno izbrali tekstovni naèin (Text). +>> Vtipkajte M-x text mode. + +Brez skrbi, noben od ukazov Emacsa, ki ste se jih nauèili, se s tem ne +spremeni kaj dosti. Lahko pa opazite, da Emacs zdaj jemlje opu¹èaje za +dele besed, ko se premikate z M-f ali M-b. V osnovnem naèinu jih je +obravnaval kot meje med besedami. + +Glavni naèini navadno poèenjajo majhne spremembe, kot je ta: veèina +ukazov ,,opravi isti posel``, vendar pa to poènejo na razlièen naèin. + +Dokumentacijo o trenutno aktivnem glavnem naèinu dobite z ukazom C-h m. + +>> Uporabite C-u C-v enkrat ali veèkrat, toliko, da bo ta vrstica blizu + vrha zaslona. +>> Vtipkajte C-h m, da vidite, v èem se tekstovni naèin (Text) razlikuje + od osnovnega (Fundamental). +>> Vtipkajte C-x 1, da umaknete dokumentacijo z zaslona. + +Glavnim naèinom pravimo glavni naèini zato, ker obstajajo tudi +podnaèini (angl. minor modes). Podnaèini ne nadome¹èajo glavnih +naèinom, ampak le spreminjajo njihovo obna¹anje. Podnaèine lahko +aktiviramo ali deaktiviramo neodvisno od glavnega naèina in neodvisno +od ostalih podnaèinov. Tako lahko ne uporabljate nobenega podnaèina, +en podnaèin, ali kombinacijo veèih podnaèinov. + +Podnaèin, ki je zelo uporaben posebno za pisanje besedil, je Auto +Fill. Ko je vklopljen, Emacs med pisanjem avtomatièno deli vrstice na +presledkih med besedami, tako da vrstice niso predolge. + +Vklopite ga lahko z ukazom M-x auto fill mode. Ko je +vklopljen, ga lahko izklopite z istim ukazom, M-x +auto fill mode. Z istim ukazom torej preklapljamo +(angl. toggle) med vklopljenim in izklopljenim stanjem. + +>> Vtipkajte zdaj M-x auto fill mode. Potem zaènite tipkati + "asdf asdkl sdjf sdjkf"... dokler ne opazite, da je Emacs razbil + vrstico na dve. Med tipkanjem mora biti dovolj presledkov, saj + Auto Fill prelamlja vrstice samo na presledkih. + +©irina besedila je navadno postavljena na 70 znakov, kar pa lahko +spremenite z ukazom C-x f. Novo ¹irino morate podati kot ¹tevilèni +argument. + +>> Vtipkajte C-x f in argument 20. (C-u 2 0 C-x f). Zatem vtipkajte + nekaj besedila in poglejte, èe bo Emacs res delil vrstice pri 20 + znakih. Potem z ukazom C-x f postavite mejo nazaj na 70. + +Auto Fill deluje le, kadar pi¹ete novo besedilo, ne pa, +kadar popravljate ¾e napisan odstavek. +Tak odstavek lahko poravnate tako, da kazalèek premaknete nekam +znotraj odstavka in uka¾ete M-q (META-q). + +>> Premaknite kazalèek v prej¹nji odstavek in izvedite M-q. + + +* ISKANJE +--------- + +Emacs lahko v besedilu poi¹èe niz znakov (zaporedje znakov ali besed), +naprej ali nazaj po besedilu. Iskanje spada v skupino ukazov za +premikanje kazalèka, saj premakne kazalèek na kraj v besedilu, kjer je +na¹el iskani niz. + +Iskanje v Emacsu je morda nekoliko drugaèno od tistega, ki ste ga +navajeni, in sicer je ,,inkrementalno``. To pomeni, da se iskanje +odvija hkrati s tem, ko tipkate iskani niz. + +Ukaza za iskanje sta C-s za iskanje naprej po datoteki in C-r za +iskanje nazaj po datoteki. POÈAKAJTE! Ne preizku¹ajte jih ¹e ta hip! + +Ko boste natipkali C-s, boste opazili niz ,,I-search`` kot pozivnik +v pogovornem vmesniku. To vam pove, da je Emacs v inkrementalnem iskanju +in vas èaka, da zaènete tipkati, kar i¹èete. zakljuèi iskanje. + +>> Pritisnite zdaj C-s. POÈASI, èrko za èrko, vtipkajte besedo + ,,kazalèek``. Za vsako vtipkano èrko se ustavite in si oglejte, kaj + se je zgodilo s kazalèkom. +>> ©e enkrat pritisnite C-s, da poi¹èete naslednji ,,kazalèek``. +>> ©estkrat pritisnite in opazujte, kako se premika kazalèek. +>> Konèajte iskanje s tipko . + +Ste videli, kaj se je zgodilo? Emacs pri inkrementalnem iskanju sku¹a +poiskati niz, ki ste ga natipkali do tistega hipa. Da poi¹èete +naslednje mesto, kjer se pojavi ,,kazalèek``, samo ¹e enkrat +pritisnete C-s. Èe takega mesta ni, Emacs èivkne in vam sporoèi, da +iskanje ni uspelo. Tudi C-g prekine iskanje. + +OPOZORILO: Na nekaterih sistemih bo s pritiskom na C-s ekran +zmrznil. To je znak, da je operacijski sistem prestregel znak C-s in +ga interpretiral kot znak za prekinitev toka podatkov, namesto da bi +ga posredoval programu Emacs. Ekran ,,odtajate`` s pritiskom na +C-q. Potem si oglejte razdelek ,,Spontaneous Entry to Incremental +Search`` v priroèniku za nasvet, kako se spopasti s to nev¹eènostjo. + +Èe sredi inkrementalnega iskanja pritisnete , boste opazili, +da to pobri¹e zadnji znak v iskanem nizu, kazalèek pa se premakne +nazaj na mesto v besedilu, kjer je na¹el kraj¹i niz. Na primer, +predpostavimo, da ste do zdaj natipkali ,,ka`` in je kazalèek na +mestu, kjer se prviè pojavi ,,ka``. Èe zdaj pritisnete , boste +s tem v pogovornem vmesniku izbrisali ,a`, hkrati pa se bo kazalèek +postavil na mesto, kjer je prviè na¹el ,k`, preden ste natipkali ¹e +,a`. + +Èe sredi iskanja vtipkate katerikoli kontrolni znaki ali metaznak +(razen tistih, ki imajo poseben pomen pri iskanju, to sta C-s in C-r), +se iskanje prekine. + +C-s zaène iskati na mestu v datoteki, kjer trenutno stoji kazalèek, in +i¹èe do konca datoteke. Èe bi radi iskali proti zaèetku datoteke, +namesto C-s vtipkamo C-r. Vse, kar smo povedali o ukazu C-s, velja +tudi za C-r, le smer iskanja je obrnjena. + + +* VEÈ OKEN NA ZASLONU +--------------------- + +Ena simpatiènih lastnosti Emacsa je, da zna hkrati prikazati veè oken +na ekranu, tudi èe ne delamo v grafiènem naèinu. + +>> Premaknite kazalèek v to vrstico in vtipkajte C-u 0 C-l (zadnji + znak je CONTROL-L, ne CONTROL-1) +>> Zdaj vtipkajte C-x 2, da razdelite zaslon na dve okni. + V obeh oknih imate odprt ta priroènik. Kazalèek je ostal v zgornjem + oknu. +>> Pritisnite C-M-v za listanje v spodnjem oknu. + (Èe nimate tipke META, tipkajte ESC C-v). +>> Vtipkajte C-x o (o kot ,,other``, drugi), da preselite kazalèek v + spodnje okno. +>> S C-v in M-v se v spodnjem oknu premikate po vsebini datoteke. + Zgornje okno ¹e vedno ka¾e ta navodila. +>> Ponovni C-x o vas vrne v zgornje okno. Kazalèek se je vrnil na + mesto, kjer je bil, preden smo skoèili v spodnje okno. + +Z ukazom C-x o lahko preklapljamo med okni. Vsako okno si zapomni, kje +v oknu je ostal kazalèek, samo trenutno aktivno okno pa kazalèek tudi +v resnici prika¾e. Vsi obièajni ukazi za urejanje, ki smo se jih +nauèili, veljajo za aktivno okno. + +Ukaz C-M-v je zelo uporaben, kadar urejamo besedilo v enem oknu, +drugega pa uporabljamo samo za pomoè. Kazalèek ostaja ves èas v oknu, +v katerem urejamo, po vsebini spodnjega okna pa se vseeno lahko +premikamo, ne da bi morali venomer skakati iz enega okna v drugega. + +C-M-v je primer znaka CONTROL-META. Èe imate v resnici tipko META (na +PC navadno levi Alt), lahko vtipkate C-M-v tako, da dr¾ite pritisnjeni +tako CONTROL kot META, medtem ko vtipkate v. Ni pomembno, katero od +tipk, CONTROL ali META, pritisnete prvo, saj obe delujeta ¹ele, ko +pritisnete znak, ki sledi (v zgornjem primeru ,v`). + +Nasprotno pa je vrstni red pritiskanja pomemben, èe nimate tipke META +in namesto nje uporabljate ESC. V tem primeru morate najprej +pritisniti ESC, potem pa Control-v. Obratna kombinacija, CONTROL-ESC v +ne deluje. To je zato, ker je ESC znak sam po sebi, ne pa modifikator, +kot sta CONTROL in META. + +>> V zgornjem oknu vtipkajte C-x 1, da se znebite spodnjega okna. + +(Èe bi vtipkali C-x 1 v spodnjem oknu, bi se znebili +zgornjega. Razmi¹ljajte o tem ukazu kot ,,Obdr¾i samo eno okno, in +sicer tisto, v katerem sem zdaj.``) + +Seveda ni nujno, da obe okni ka¾eta isto delovno podroèje. Èe v enem +oknu izvedete C-x C-f in poi¹èete novo datoteko, se vsebina drugega +okna ne spremeni. V vsakem oknu lahko neodvisno obdelujete drugo +datoteko. + +Pa ¹e ena pot, kako v dveh oknih prika¾ete dve razlièni datoteki: + +>> Vtipkajte C-x 4 C-f, in na pozivnik vtipkajte ime ene va¹ih + datotek. Konèajte z . Odpre se ¹e eno okno in izbrana + datoteka se pojavi v drugem oknu. Tudi kazalèek se preseli v drugo + okno. + +>> Vtipkajte C-x o, da se vrnete nazaj v zgornje okno, in C-x 1, da + zaprete spodnje okno. + + +* REKURZIVNI NIVOJI UREJANJA +---------------------------- + +Vèasih boste pri¹li v nekaj, èemur se pravi ,,rekurzivni nivo +urejanja``. To se vidi po tem, da v statusni vrstici oglati oklepaji +oklepajo ime glavnega naèina. V osnovnem naèinu bi, na primer, videli +[(Fundamental)] namesto (Fundamental). + +Iz rekurzivnega nivoja urejanja se re¹ite, èe vtipkate ESC ESC ESC. To +zaporedje je vsenamenski ukaz ,,pojdi ven``. Uporabite ga lahko tudi +za ukinjanje odveènih oken, ali vrnitev iz pogovornega vmesnika. + +>> Pritisnite M-x, da odprete pogovorni vmesnik, zatem pa vtipkajte + ESC ESC ESC, da pridete ven iz njega. + +Z ukazom C-g ne morete iz rekurzivnega nivoja urejanja, ker C-g +preklièe ukaze ali argumente ZNOTRAJ rekurzivnega nivoja. + + +* DODATNA POMOÈ +--------------- + +V tem uvodu smo posku¹ali zbrati dovolj informacij, da lahko zaènete +Emacs uporabljati. Emacs ponuja toliko, da bi bilo nemogoèe vse to +zbrati tukaj. Verjetno pa bi se vseeno radi nauèili kaj o ¹tevilnih +koristnih mo¾nostih, ki jih ¹e ne poznate. Emacs ima ¾e vgrajene +veliko dokumentacije, do katere lahko pridete s pritiskom na CONTROL-h +(h kot ,,help``, pomoè). + +Za pomoè pritisnete C-h, potem pa vtipkate znak, ki pove, kak¹no pomoè +¾elite. Èe ste poplnoma izgubljeni, vtipkajte C-h ? in Emacs vam bo +povedal, kak¹na pomoè je sploh na voljo. Èe ste vtipkali C-h, pa ste +si premislili, lahko ukaz preklièete s C-g. + +(Na nekaterih sistemih se znak C-h preslika v kaj drugega. To ni +dobro, in v takem primeru se prito¾ite sistemskemu vzdr¾evalcu. Medtem +pa, èe C-h ne prika¾e sporoèila o pomoèi na dnu zaslona, namesto tega +poskusite pritisniti tipko F1 ali pa vtipkajte M-x help .) + +Najosnovnej¹i tip pomoèi prika¾e C-h c. Pritisnite C-h, tipko c, zatem +pa ukazni znak ali zaporedje ukaznih znakov, in Emacs bo izpisal +kratek opis ukaza. + +>> Vtipkajte C-h c C-p. + Izpi¹e se nekaj takega kot + + C-p runs the command previous-line + +Ukaz je izpisal ime funkcije, ki izvede ukaz. Imena funkcij +uporabljamo, kadar pi¹emo prilagoditve in raz¹iritve Emacsa. Ker pa so +navadno imena funkcij izbrana tako, da kaj povedo o tem, kaj funkcija +poène, bo verjetno to tudi dovolj za kratko osve¾itev, èe ste se z +ukazom ¾e kdaj sreèali. + +Ukazu C-h lahko sledi tudi zaporedje znakov, kot na primer C-x C-s, +ali, èe nimate tipke META, v. + +Za veè informacij o ukazu vtipkajte C-h k namesto C-h c. + +>> Vtipkajte C-h k C-p. + +To odpre novo okno in v njem prika¾e dokumentacijo o funkciji, obenem +z njenim imenom. Ko ste opravili, vtipkajte C-x 1, da se znebite okna +z pomoèjo. Tega seveda ni potrebno napraviti takoj, ampak lahko +urejate, medtem ko imate odprto okno s pomoèjo, in ga zaprete, ko ste +konèali. + +Sledi ¹e nekaj uporabnih mo¾nosti, ki jih ponuja pomoè: + + C-h f Opi¹i funkcijo. Kot argument morate podati ime + funkcije. + +>> Poskusite C-h f previous-line. + To izpi¹e vse podatke, ki jih ima Emacs o funkciji, ki izvede ukaz C-p. + +Podoben ukaz C-h v izpi¹e dokumentacijo za spremenljivke, s katerimi +lahko nastavite obna¹anje Emacsa. Ob pozivniku morate vpisati ime +spremenljivke. + + C-h a Apropos. Vtipkajte kljuèno besedo in Emacs bo izpisal + vse ukaze, ki vsebujejo to kljuèno besedo. Vse te + ukaze lahko priklièete z META-x. Pri nekaterih ukazih + bo Apropos izpisal tudi eno ali dvoznakovno + zaporedje, s katerim dose¾ete isti uèinek. + +>> Vtipkajte C-h a file. + +To odpre novo okno, v katerem so vsa dolga imena ukazov, ki vsebujejo +,,file`` v imenu. Izvedete jih lahko z M-x. Pri nekaterih se izpi¹e +tudi kratek ukaz, npr. C-x C-f ali C-x C-w pri ukazih find-file in +write-file. + +>> Pritisnite C-M-v, da se sprehajate po oknu s pomoèjo. Poskusite + nekajkrat. + +>> Vtipkajte C-x 1, da zaprete okno s pomoèjo. + + C-h i Priroèniki z navodili za uporabo (tkim. datoteke + "info"). Ta ukaz vas prestavi v posebno delovno + podroèje, imenovano "info". V njem lahko prebirate + priroènike za programe, ki so name¹èeni v sistemu. Z + ukazom m emacs denimo dobite priroènik za + urejevalnik Emacs. Èe sistema Info ¹e niste + uporabljali, vtipkajte ? in Emacs vas bo popeljal na + vódeni izlet po naèinu Info in mo¾nostih, ki jih + ponuja. Ko boste zakljuèili z branjem tega prvega + berila, bo priroènik za Emacs v sistemu Info va¹ + glavni vir dokumentacije. + + +* DRUGE MO®NOSTI +---------------- + +©e veè se lahko nauèite o Emacsu z branjem priroènika, bodisi +natisnjenega, bodisi na zaslonu v sistemu Info (uporabite menu Help +ali vtipkajte F10 h r). Dve mo¾nosti, ki vam bosta morda posebej v¹eè, +sta samodejno zakljuèevanje vrstice, s katerim prihranite nekaj +tipkanja, in dired, s katerim poenostavimo delo z datotekami. + +Samodejno zakljuèevanje vrstic je naèin, s katerim prihranimo nekaj +tipkanja. Èe ¾elite denimo preklopiti v delovno podroèje *Messages*, +je dovolj, da vtipkate C-x b *M in Emacs bo sam dopolnil +preostanek imena delovnega podroèja. Samodejno zakljuèevanje je +opisano v sistemu Info v priroèniku za Emacs, razdelek ,,Completion``. + +Dired omogoèa izpis seznama datotek v imeniku (in po mo¾nosti tudi +podimenikih), premikanje po seznamu, obiskovanje (odpiranje), +preimenovanje, brisanje in druge operacije z datotekami. Dired je +opisav v sistemu Info v priroèniku za Emacs, razdelek ,,Dired``. + +Priroènik opisuje tudi mnoge druge mo¾nosti Emacsa. + + +* ZAKLJUÈEK +----------- + +Zapomnite si, da Emacs zapustite z ukazom C-x C-c. Èe bi radi samo +zaèasno skoèili v ukazno lupino in se kasneje vrnili v Emacs, pa +storite to z ukazom C-z. + +Ta uèbenik je napisan z namenom, da bi bil razumljiv vsem novincem v +Emacsu. Èe se vam kaj ne zdi jasno napisano, ne valite krivde nase - +prito¾ite se! + + +* RAZMNO®EVANJE IN RAZ©IRJANJE +------------------------------ + +Angle¹ki izvirnik tega uvoda v Emacs je naslednik dolge vrste tovrstnih +besedil, zaèen¹i s tistim, ki ga je Stuart Cracraft napisal za izvorni +Emacs. V sloven¹èino ga je prevedel Primo¾ Peterlin. + +To besedilo, kot sam GNU Emacs, je avtorsko delo, in njegovo +razmno¾evanje in raz¹irjanje je dovoljeno pod naslednjimi pogoji: + +Copyright (C) 1985, 1996, 1998, 2001, 2002, 2003, 2004, + 2005, 2006, 2007 Free Software Foundation, Inc. + + Dovoljeno je izdelovati in raz¹irjati neokrnjene kopije tega spisa + v kakr¹nikoli obliki pod pogojem, da je ohranjena navedba o + avtorstvu in to dovoljenje, ter da distributer dovoljuje prejemniku + nadaljnje raz¹irjanje pod pogoji, navedenimi v tem dovoljenju. + + Pod pogoji iz prej¹njega odstavka je dovoljeno raz¹irjati + spremenjene verzije tega spisa ali njegovih delov, èe je jasno + oznaèeno, kdo je nazadnje vnesel spremembe. + +Pogoji za razmno¾evanje in raz¹irjanje samega Emacsa so malo drugaèni, +a v istem duhu. Prosimo, preberite datoteko COPYING in potem dajte +kopijo programa GNU Emacs svojim prijateljem. Pomagajte zatreti +obstrukcionizem (,,lastni¹tvo``) v programju tako, da uporabljate, +pi¹ete in delite prosto programje! + +;;; Local Variables: +;;; coding: iso-latin-2 +;;; sentence-end-double-space: nil +;;; End: + +;;; arch-tag: 985059e4-44c6-4ac9-b627-46c8db57acf6 diff --git a/etc/tutorials/TUTORIAL.sv b/etc/tutorials/TUTORIAL.sv new file mode 100644 index 00000000000..2a54047e8dc --- /dev/null +++ b/etc/tutorials/TUTORIAL.sv @@ -0,0 +1,1153 @@ +Emacs användarhandledning. I slutet finns kopieringsvillkoren. + +Emacs-kommandon innebär ofta användning av kontrolltangenten (vanligen +märkt CTRL eller CTL) eller META-tangenten (på vissa tangentbord märkt +ALT eller EDIT). Vi använder här följande förkortningar: + + C- håll ner kontrolltangenten samtidigt som du skriver bokstaven + . C-f betyder: håll ner kontrolltangenten och tryck f. + M- håll ner META-tangenten samtidigt som du skriver . Om + META-tangent saknas trycker du , ESC-tangenten, släpper + den och trycker sedan . + +Viktigt: För att avsluta Emacs trycker du C-x C-c (två tecken). +Tecknen ">>" i vänstermarginalen anger att du kan prova ett +kommando. Till exempel: +<> +[Tomma rader av pedagogiska skäl. Texten fortsätter nedanför.] +>> Tryck C-v (View next screen) för att hoppa till nästa skärmbild. + Prova nu. Håll ned kontrolltangenten och tryck v. Gör så i + fortsättningen när du är färdig med en skärmbild. + +Notera att det är ett överlapp på två rader när du byter från +skärmbild till skärmbild. Detta är för att behålla sammanhanget när du +bläddrar framåt i filen. + +Det första du behöver veta är hur du manövrerar från plats till plats +i texten. Du har redan lärt dig hur du flyttar en skärmbild framåt, +med C-v. För att flytta dig en skärmbild bakåt trycker du M-v. (Håll +ned META-tangenten och tryck v eller tryck v om du inte har +META-, EDIT- eller ALT-tangent.) + +>> Prova att trycka M-v och C-v några gånger. + + +* SAMMANFATTNING +---------------- + +Följande kommandon är bra för att se hela skärmbilder: + + C-v Flytta en skärmbild framåt. + M-v Flytta en skärmbild bakåt. + C-l Rita om skärmen och placera texten där markören står + mitt på skärmbilden. (Det är KONTROLL-L, inte + KONTROLL-1.) + +>> Leta reda på markören och se vad som står där. Tryck sedan C-l. + Hitta markören igen och notera att det är samma text som står kring + markören nu. + +Du kan också använda PageUp och PageDn tangenterna, om din terminal +har dem, för att flytta en hel skärmbild åt gången, men du redigerar +effektivare om du använder C-v och M-v. + + +* GRUNDLÄGGANDE MARKÖRRÖRELSER +------------------------------ + +Att flytta sig från skärmbild till skärmbild kan vara bra, men hur +förflyttar man sig till en speciell plats på skärmen? + +Det finns flera sätt att göra detta. Du kan använda piltangenterna, +men det är mer effektivt att ha händerna i standardläget och använda +kommandona C-p, C-b, C-f och C-n. Dessa tecken är likvärdiga med de +fyra piltangenterna. Så här: + + Föregående rad, C-p + : + : + Bakåt, C-b .... Nuvarande markörposition .... Framåt, C-f + : + : + Nästa rad, C-n + +>> Flytta markören till linjen mitt i diagrammet genom att använda C-n + och C-p. Använd sedan C-l för att centrera diagrammet på + skärmbilden. + +Detta är enklare att komma ihåg om du tänker på dessa förkortningar: P +för föregående (previous), N för nästa (next), B för bakåt (backward) +och F för framåt (forward). Dessa är de grundläggande kommandona för +att flytta markören och du kommer att använda dem hela tiden. + +>> Gör några C-n så att du kommer ned till den här raden. + +>> Flytta dig in i raden med hjälp av några C-f och sedan uppåt + med några C-p. Lägg märke till vad C-p gör när markören står mitt + på en rad. + +Textrader är åtskilda med radslutstecken. Den sista raden i filen +avslutas också vanligtvis med ett radslut men Emacs kräver inte att +den gör det. + +>> Prova med C-b i början av en rad. Detta gör att markören + flyttas till slutet av den tidigare raden. Detta är för att den + flyttar markören över radslutstecknet. + +C-f flyttar också över radslut, precis som C-b. + +>> Gör några fler C-b så att du får en känsla för var markören + är. Tryck sedan några C-f tills du kommer till slutet av + raden. Tryck ytterligare en C-f så att du flyttar markören till + nästa rad. + +När du flyttar markören förbi toppen eller botten av skärmbilden +kommer texten utanför skärmen att komma fram. Detta kallas "rullning" +och gör det möjligt för Emacs att flytta markören utan att den +försvinner ut ur skärmbilden. + +>> Prova att flytta markören förbi skärmbildens nederkant med hjälp av + C-n och se vad som händer. + +Om det går för sakta att flytta markören ett tecken i taget kan du +flytta den ett ord. M-f flyttar markören ett ord framåt och M-b +flyttar den ett ord bakåt. + +>> Prova några M-f och M-b. + +Om markören står mitt i ett ord kommer M-f att flytta markören till +slutet av ordet. Om du står mitt emellan två ord kommer M-f att flytta +markören till slutet av nästa ord. M-b fungerar på samma sätt men i +motsatt riktning. + +>> Tryck M-f och M-b några gånger och skifta markörposition med några + C-f och C-b så att du ser hur M-f och M-b uppför sig vid olika + placeringar av markören både i och mellan ord. + +Lägg märke till likheten mellan C-f och C-b å ena sidan och M-f och +M-b å den andra. Ofta används META-kommandon till språkrelaterade +operationer (ord, stycken, avsnitt), medan kontrollkommandon används +till grundläggande operationer som inte beror av vad man redigerar +(bokstäver, rader, etc.). + +Denna likhet finns också mellan rader och stycken: C-a och C-e flyttar +markören till början av en rad eller till slutet av en rad, medan M-a +och M-e flyttar den till början respektive slutet av ett stycke. + +>> Prova några C-a och sedan några C-e. + Prova också några M-a och sedan några M-e. + +Se hur efterföljande C-a efter varandra inte gör något, medan flera +M-a fortsätter att flytta markören till nästa stycke. Även om detta +inte verkar självklart är det ganska naturligt. + +Platsen där markören är i texten kallas också för "arbetspunkt" +(point). Eller omskrivet: Markören visar på skärmen var arbetspunkten +är i texten. + +Här är en kort sammanfattning av de enklaste markörförflyttnings- +kommandona, inklusive ord- och styckesförflyttningskommandon: + + C-f Flytta markören ett steg framåt + C-b Flytta markören ett steg bakåt + + M-f Flytta markören ett ord framåt + M-b Flytta markören ett ord bakåt + + C-n Flytta markören till nästa rad + C-p Flytta markören till föregående rad + + C-a Flytta markören till början av raden + C-e Flytta markören till slutet av raden + + M-a Flytta markören till början av meningen + M-e Flytta markören till slutet av meningen + +>> Prova alla dessa kommandon några gånger för tränings skull. + Dessa är de kommandon som används mest. + +Två andra viktiga markörrörelsekommandon är M-< (META mindre-än), som +flyttar markören till början av texten, och M-> (META större-än), som +flyttar den till slutet av texten. + +På en del tangentbord är "<" placerad över komma, så att man måste +använda skift för att få fram den. På dessa tangentbord måste man +också använda skift för att skriva M-<. Utan skifttangenten skulle det +bli M-komma. + +>> Prova M-< nu för att flytta markören till början av vägledningen. + Använd sedan C-v för att flytta markören tillbaka hit igen. + +>> Prova också M-> för att flytta markören till slutet av vägledningen. + Använd sedan M-v för att flytta markören tillbaka hit igen. + +Du kan också flytta markören med hjälp av piltangenterna, om +terminalen har piltangenter. Vi föreslår att du lär dig C-b, C-f, C-n +och C-p av tre skäl. För det första kommer de att fungera på alla +slags terminaler. För det andra kommer du att finna, när du har fått +lite träning i att använda Emacs, att det går mycket snabbare att +använda kontrollfunktionerna än piltangenterna (för att du undviker +att ändra fingersättningen). Den tredje anledningen är att när man har +lärt sig att använda kontrolltangenten blir det lättare att lära sig +de mer avancerade kontrollfunktionerna. + +De flesta kommandon i Emacs tar ett numeriskt argument och för de +flesta kommandon leder detta till att de repeteras. Ett numeriskt +argument anges genom att du skriver C-u och sedan talet, innan du +skriver kommandot. Om du har en META- (eller EDIT- eller ALT-) tangent +så finns det ett annat alternativ för att ge numeriska argument: skriv +talet medan du håller ned META-tangenten. Vi föreslår att du använder +C-u för det fungerar på alla slags terminaler. Det numeriska +argumentet kallas också för "prefixargument" eftersom det skrivs före +kommandot. + +Till exempel: C-u 8 C-f flyttar markören åtta steg framåt. + +>> Prova C-n eller C-p med ett numeriskt argument så att du + kommer så nära den här raden som möjligt med ett enda kommando. + +De flesta kommandon använder det numeriska argumentet för ett +repeterat utförande men det finns kommandon som använder det +annorlunda. Flera kommandon, men inga av dem du lärt dig hittills, +använder det som en flagga. Med ett prefixargument, och oberoende av +dess värde, gör kommandot något annat. + +C-v och M-v finns med bland dessa undantag. Om man ger ett argument +till ett av dessa kommandon kommer skärmbilden flytta sig upp eller +ned så många rader som argumentet anger, istället för så många +skärmbilder. Till exempel kommer C-u 8 C-v flytta skärmbilden 8 rader +uppåt. + +>> Prova C-u 8 C-v nu. + +Detta borde ha flyttat skärmbilden 8 rader uppåt. Om du önskar flytta +tillbaka igen är det bara att ge samma argument till M-v. + +Om du använder Emacs under ett fönstersystem, som X11 eller +MS-Windows, finns det troligen ett rektangulärt område på sidan +av Emacs-fönstret, en så kallad rullningslist. Genom att klicka i den +med musen kan du rulla texten. + +>> Prova att trycka med den mellersta musknappen i det utvalda området + på rullningslisten. Detta bör flytta skärmbilden till en plats i + texten beroende på var i rullningslisten du trycker. + +>> Prova att flytta musen upp och ner medan du håller ner den + mellersta musknappen. Du ser att texten rullar upp och ner beroende + på hur du för musen. + + +* OM EMACS HÄNGER +----------------- + +Om Emacs slutar att reagera på kommandon kan du lugnt stoppa dem genom +att trycka C-g. Du kan också använda C-g för att stoppa ett kommando +som tar för lång tid att utföra. + +Det är också möjligt att använda C-g för att avbryta ett numeriskt +argument eller början på ett kommando som du inte önskar att utföra. + +>> Skriv C-u 100 för att ge ett numeriskt argument på 100 och tryck + C-g. Tryck nu C-f. Markören skall nu flytta sig bara ett steg, för att + du avbröt argumentet med C-g. + +Om du av misstag slår blir du kvitt detta med ett C-g. + + +* SPÄRRADE KOMMANDON +-------------------- + +En del Emacs-kommandon är "spärrade" så att nybörjare inte skall +använda dem av misstag. + +Om du provar ett av dessa spärrade kommandon kommer Emacs ge ett +meddelande som berättar vilket kommando det är och kommer att fråga om +du verkligen vill fortsätta och utföra detta kommando. + +Om du verkligen önskar att utföra kommandot trycker du mellanslag som +svar på frågan. Normalt, om du inte önskar att utföra detta kommando, +svarar du "n" på frågan. + +>> Skriv C-x C-l (som är ett spärrat kommando). + Skriv n som svar på frågan. + + +* FÖNSTER +--------- + +Emacs kan ha flera fönster och varje fönster kan visa sin egen text. +Vi kommer förklara senare hur man använder flera fönster. Här skall vi +förklara hur man blir av med extra fönster för att komma tillbaka till +det grundläggande läget med endast ett fönster. Det är enkelt: + + C-x 1 Ett fönster (dvs. ta bort alla andra fönster). + +Det är KONTROLL-x följt av siffran 1. C-x 1 utvidgar fönstret där +markören står så att det fyller hela skärmbilden. Alla andra fönster +tas bort. + +>> Flytta markören till den här raden och tryck C-u 0 C-l. +>> Tryck C-h k C-f. + Se hur det här fönstret krymper samtidigt som ett nytt uppträder + för att visa dokumentationen för C-f-kommandot. + +>> Slå C-x 1 och se hur dokumentationsfönstret nu försvinner. + +Kommandot skiljer sig lite från andra kommandon du har lärt dig +eftersom det består av två tecken. Det startar med tecknet +KONTROLL-x. Det är faktisk många kommandon som startar med KONTROLL-x +och många av dem har med filer, skärmbilder och liknande saker att +göra. Dessa kommandon är två, tre eller fyra tecken långa. + + +* SKRIVA OCH TA BORT TEXT +------------------------- + +Om du önskar att sätta in text är det bara att skriva in +texten. Tecken som du kan se, så som A, 7, *, etc. tolkas som text och +sätts in direkt. Skriv (retur-tangenten) för att sätta in en +radbrytning. + +Du kan radera det sista tecknet du skrev genom att trycka . + är en tangent på tangentbordet -- samma som du normalt +använder utanför Emacs för att ta bort det senaste tecknet du skrivit. +Det är vanligen en stor tangent några rader ovanför retur-tangenten, +och den är vanligtvis märkt "Delete, "Del" eller "Backspace". + +Om den stora tangenten är märkt med "Backspace" så är det den du +använder för . Det kan finnas en annan tangent som är märkt +med "Delete" men det är inte . + +Generellt raderar tecknet precis före den aktuella +markörspositionen. + +>> Gör detta nu: Skriv in några tecken och ta bort dem genom att + använda . Var inte rädd för att skriva i den här filen, + du kommer inte att kunna förändra originalet till vägledningen. + Detta är bara en lokal kopia. + +När en rad blir för lång för att rymmas på en skärmbredd så fortsätter +den på raden under. Ett bakstreck ("\") (eller om du kör under ett +fönstersystem, en liten böjd pil) i slutet av högermarginalen +indikerar att raden fortsätter. + +>> Skriv in lite text så att du kommer till slutet av raden och + fortsätt att skriva lite till. Du kommer då att se hur + fortsättningstecknet ser ut. + +>> Använd för att radera texten tills raden ryms på en + skärmbredd igen. Fortsättningstecknet kommer då att försvinna. + +Du kan radera radbrytning precis som andra tecken. Genom att radera +radbrytningen mellan två rader slås dessa samman till en. Om +resultatet av denna sammanslagning blir för stor för att passa inom en +skärmbredd, så kommer den att visas med ett fortsättningstecken. + +>> Flytta markören till början av en rad och tryck . + Detta kommer att klistra ihop raden med raden över. + +>> Tryck för att sätta in radbrytningen du tog bort. + +Tänk på att de flesta Emacs-kommandon kan ta numeriska argument. Detta +gäller också texttecken. Genom att repetera ett texttecken kommer det +skrivas flera gånger. + +>> Prova det nu: Skriv C-u 8 * för att sätta in ********. + +Du har nu lärt dig de mest grundläggande sätten att skriva något i +Emacs och att rätta fel. Du kan radera ord och rader också. Här är en +översikt över kommandon för radering: + + Raderar tecknet som står precis före markören + C-d Raderar tecknet som står precis under markören + + M- Raderar ordet precis före markören + M-d Raderar ordet precis efter markören + + C-k Raderar från markören till slutet av raden + M-k Raderar till slutet av stycket + +Lägg märke till att och C-d kontra M- och M-d +följer mönstret som började med C-f och M-f. ( är inte precis +ett kontrolltecken men låt oss inte bry oss om det.) C-k och M-k +fungerar på samma sätt som C-e och M-e (nästan). + +Du kan också ta bort vilken del som helst av texten med hjälp av +följande allmänna metod. Flytta till ena änden av det område du vill +ta bort och tryck C-@ eller C-mellanslag. Flytta till andra änden av +området och tryck C-w. Detta tar bort all text mellan de två +positionerna. + +>> Flytta markören till bokstaven D i föregående stycke. +>> Tryck C-mellanslag. Emacs skall nu visa meddelandet "Mark set" + längst ner på skärmen. +>> Flytta markören till bokstaven o i ordet metod på andra raden i + stycket. +>> Tryck C-w. Detta tar bort texten från och med D fram till just före + o. + +Skillnaden mellan att "ta bort" (killing) och "radera" (deleting) text +är att "borttagen" text kan hämtas tillbaka, medan raderad text inte +kan det. Återinsättning av borttagen text kallas "återhämtning" +(yanking). Generellt kan man säga att kommandon som tar bort fler än +ett tecken sparar undan texten (så att den kan återhämtas) medan +kommandon som bara raderar ett tecken eller tomma rader och mellanrum +inte sparar någonting (och den texten kan alltså inte återhämtas). + +>> Flytta markören till början av en rad som inte är tom. + Tryck C-k för att ta bort texten på raden. +>> Tryck C-k en gång till. Du kommer nu se att den raderar den tomma + raden som var kvar. + +Lägg märke till att ett enstaka C-k bara raderar texten på raden och +att det andra C-k raderar själva raden och flyttar upp texten på raden +under ett steg. C-k hanterar numeriska argument lite speciellt. Den +raderar så många rader OCH innehållet i dem. Detta är alltså inte bara +en repetition av kommandot. C-u 2 C-k raderar två rader samt de tomma +raderna, medan C-k två gånger inte kommer att göra det. + +Att sätta in borttagen text kallas att "återhämta" den (yanking). +(Tänk på det som att du rycker, eller drar, tillbaka någon text som +tagits bort.) Du kan antingen hämta tillbaka borttagen text till samma +plats som där den blev borttagen, eller så kan du sätta in den på en +annan plats i texten du redigerar eller till och med i en helt annan +fil. Du kan också hämta tillbaka samma text flera gånger så att du får +flera lika förekomster av den. + +Kommandot för att hämta tillbaka text är C-y. Kommandot hämtar +tillbaka den sist borttagna texten och placerar den där markören är. + +>> Prova: Gör C-y för att få tillbaka texten. + +Om du gör flera C-k i rad så kommer all bortagen text att sparas +samlat så att ett C-y återhämtar alla raderna på en gång. + +>> Prova detta. Tryck C-k ett par gånger. + +Och hämta så tillbaka igen: + +>> Tryck C-y. Flytta markören några rader ned och tryck C-y igen. + Så kopierar man text. + +Men vad gör du om du har en text du önskar att hämta tillbaka men du +har redan tagit bort något nytt? C-y skulle hämta tillbaka den senaste +texten som blev borttagen men tidigare bortagen text är inte +förlorad. Du kan få tillbaka den med kommandot M-y. Efter att du har +använt C-y för att hämta tillbaka den sist borttagna texten kommer M-y +ersätta denna text med tidigare borttagen text. Genom att göra M-y om +och om igen hämtas allt tidigare borttagen text tillbaka. När du har +nått den önskade texten behöver du inte göra något ytterligare för att +behålla den. Fortsätt bara med din redigeringen och lämna den +återtagna texten där den är. + +Om du gör M-y tillräckligt många gånger kommer du att komma tillbaka +till startpunkten (texten som sist blev borttagen). + +>> Ta bort en rad, flytta markören till en ny rad och ta bort även + denna rad. Använd C-y för att hämta tillbaka den sista raden. Tryck + M-y för att byta den mot den tidigare borttagna raden. Tryck flera + M-y och se vad du får. Fortsätt med detta tills du får tillbaka den + första raden igen och sedan några gånger till. Om du vill kan du + prova med positiva och negativa argument till M-y. + + +* ÅNGRA +------- + +Om du gör en förändring i texten och sedan ångrar dig, så kan du +upphäva ändringen med kommandot C-x u (undo). + +Normalt kommer C-x u upphäva förändringen som gjordes av det sist +utförda kommandot. Om du repeterar C-x u flera gånger kommer varje +repetition upphäva ett kommando till. + +Det finns två undantag. Kommandon som inte förändrar texten räknas +inte (detta inkluderar markörförflyttningar och bläddringskommandon), +och inskrivna enkelbokstäver blir vanligtvis grupperade i grupper om +upp till 20 tecken. Detta är för att reducera antalet C-x u som behövs +för att ångra inskriven text. + +>> Ta bort den här raden med C-k. C-x u kommer att hämta tillbaka den + igen. + +C-_ är ett alternativ till ångra-kommandot. Den fungerar på samma sätt +som C-x u men är enklare att trycka flera gånger i följd. Det +olämpliga med C-_ är att den är svår att hitta på en del tangentbord. +Det är därför vi också har C-x u. På en del terminaler kan du få fram +C-_ genom att trycka / samtidigt som Ctrl hålls nere. + +Ett numeriskt argument till C-_ eller C-x u medför repetering. + +Du kan ångra radering av text precis på samma sätt som du kan ångra +att du tagit bort text. Skillnaden mellan att ta bort och att radera +någonting påverkar endast om du kan hämta tillbaka det med C-y. För +ångerfunktionen spelar det ingen roll hur texten försvunnit. + + +* FILER +------- + +För att texten du har förändrat skall sparas permanent måste du lägga +den i en fil. Om du inte gör det kommer texten att försvinna när du +avslutar Emacs. Du lägger texten i en fil genom att först finna (find) +denna fil. Detta kallas också för att besöka filen (visit). + +Att finna en fil innebär att du ser filens innehåll i Emacs. På många +sätt är det som om du förändrar själva filen men förändringen du gör +kommer inte bli permanent förrän filen sparas (save). Detta är för att +undvika att halvförändrade filer sparas när du inte vill det. Till och +med när du sparar filen kommer Emacs att behålla originalet under ett +nytt namn, som backup, ifall du senare ångrar alltihop. + +Om du tittar nästan längst ner på skärmbilden så kommer du se en rad +som börjar och slutar med minustecken, och som innehåller texten +"--:-- TUTORIAL.sv". Denna del av skärmbilden visar alltid namnet på +filen du besöker. Just nu är du inne i en fil som heter "TUTORIAL.sv" +och som är en personlig kopia av vägledningen till Emacs. Vilken fil +du än är inne i så kommer filnamnet stå där. + +En annan sak med kommandot för att finna filer är att du måste ange +vilket filnamn du önskar. Vi säger att kommandot "läser ett argument +från terminalen". I detta fall är argumentet namnet på filen. Efter +att du gett kommandot + + C-x C-f Finn en fil + +kommer Emacs fråga efter ett filnamn. Filnamnet du skriver syns på den +nedersta raden i skärmbilden. Denna sista rad kallas minibuffert när +den används på det här sättet. Du kan använda vanliga Emacs-kommandon +för att förändra filnamnet. + +När du skriver in filnamnet, eller något annat i minibufferten, kan du +avbryta med kommandot C-g. + +>> Skriv C-x C-f och så C-g. Detta avbryter minibufferten och + avbryter också C-x C-f kommandot som använde minibufferten. Så att + du inte finner någon fil. + +När du är färdig med att skriva filnamnet trycker du för att +utföra kommandot. Då kommer C-x C-f kommandot att börja leta fram +filen. Minibufferten försvinner när C-x C-f kommandot är färdigt. + +Efter en liten stund kommer filen upp på skärmen och du kan börja +redigera innehållet. När du vill spara filen kan du använda detta +kommando + + C-x C-s Spara fil + +Detta sparar texten på skärmen till filen. Första gången detta görs +kommer Emacs att ge originalfilen ett nytt namn så att den inte går +förlorad. Det nya filnamnet bildas genom att lägga till ett "~" i +slutet av det ursprungliga filnamnet. + +När lagringen är utförd kommer Emacs skriva ut namnet på filen som +blev sparad. Du bör spara ofta så att du inte förlorar så mycket om +systemet kraschar. + +>> Skriv C-x C-s för att spara en kopia av denna vägledning. + Detta skall leda till att "Wrote ...TUTORIAL.sv" skrivs ut nederst + på skärmbilden. + +Observera: På vissa system leder C-x C-s till att skärmen låser +sig. Detta tyder på att systemet har "flödeskontroll" och att denna +har fångat C-s och inte skickat den vidare till Emacs. För att +fortsätta måste du trycka C-q. Se i så fall i avsnittet "Spontaneous +Entry to Incremental Search" i Emacs-manualen för att få tips på hur +detta kan undvikas. + +Du kan finna en existerande fil, antingen för att förändra den eller +för att titta på den. Du kan också finna en fil som inte existerar. +Det är så man skapar nya filer med Emacs: finn filen, som är tom till +att börja med, och sätt igång med att skriva texten som skall in i +filen. Först när du sparar filen kommer Emacs att verkligen skapa +filen med den text du har skrivit. Från och med detta editerar du en +fil som existerar. + + +* BUFFERTAR +----------- + +Om du finner en ny fil med C-x C-f kommer den första filen fortsätta +att vara öppen i Emacs. Du kan byta tillbaka till den genom att finna +den på nytt med C-x C-f. På så sätt kan du ha ett stort antal filer +öppna i Emacs. + +>> Skapa en fil med namnet "foo" genom att trycka C-x C-f foo . + Skriv in lite text, redigera den och spara "foo" genom att använda + C-x C-s. Skriv till slut C-x C-f TUTORIAL.sv för att komma + tillbaka till den här vägledningen. + +Emacs sparar texten för varje fil i ett objekt kallat "buffert". När +du finner en ny fil skapas en ny buffert i Emacs. För att se en lista +över existerande buffertar i Emacs kan du skriva + + C-x C-b Listning av buffertar. + +>> Prova C-x C-b nu. + +Se hur varje buffert har ett namn och att de också kan ha namnet på +den fil som innehållet kommer från. Vilken text du än ser i ett +Emacs-fönster så tillhör den alltid en buffert. + +>> Skriv C-x 1 för att bli kvitt buffertlistan. + +När du har flera buffertar så är bara en av dem "gällande" åt gången. +Det är den buffert du redigerar. Om du vill redigera en annan buffert +så måste du byta till den. Om du vill byta till en buffert som +motsvarar en fil kan du göra det genom att besöka den igen med C-x +C-f. Det finns dock ett enklare sätt: använd C-x b kommandot. I det +kommandot anger du buffertens namn. + +>> Skriv C-x b foo för att gå tillbaka till bufferten "foo" + som innehåller texten i filen "foo". Skriv sedan C-x b TUTORIAL.sv + för att komma tillbaka till den här handledningen. + +Mestadels är buffertens namn densamma som filens namn (utan +katalogdel.) Det är dock inte alltid så. Bufferlistan du skapar med +C-x C-b visar alltid namnen på varje buffert. + +All text du ser i ett Emacsfönster är alltid del av någon buffert. En +del buffertar är inte knutna till någon fil, till exempel bufferten +"*Buffer List*". Det är den buffert som innehåller buffertlistan som +skapades med C-x C-b. Bufferten "*Messages*" motsvarar inte heller +någon fil. Den innehåller de meddelanden som visas på den nedersta +raden i Emacs sessionen. + +>> Skriv C-x b *Messages* för att se meddelandebufferten. + Skriv sedan C-x b TUTORIAL.sv för att återgå till den här + handledningen. + +Om du ändrar texten till en fil och sedan öppnar en ny fil, så kommer +inte den första filen sparas. Förändringen ligger kvar i +bufferten. Skapande och redigering av den nya filen påverkar inte den +första filens buffert. Detta kan vara bra men betyder också att du +behöver ett lämpligt sätt att spara den första filens buffert. Det är +omständligt att flytta tillbaka till den tidigare bufferten med C-x +C-f för att sedan spara filen med C-x C-s. Därför finns kommandot + + C-x s Spara buffertar + +C-x s frågar för varje buffert med ändringar, som inte sparats, om du +vill spara eller ej. + +>> Sätt in en rad med text och spara med C-x s + Du skall nu få frågan om du önskar spara bufferten + TUTORIAL.sv. Svara ja på frågan genom att trycka "y" (yes). + + +* UTVIDGNING AV KOMMANDOMÄNGDEN +------------------------------- + +Det finns mycket fler Emacs-kommandon än antalet KONTROLL- eller +META-tangenter. För att komma förbi denna begränsning har Emacs ett +"X"- (eXtend) kommando. Detta finns i två varianter: + + C-x Tecken-utvidgning. Följs av ett tecken. + M-x Namngiven kommandoutvidgning. Följs av ett + kommandonamn. + +Detta är kommandon som är bra att ha men används mer sällan än de +kommandon du redan har lärt dig. Du har redan sett några av dem, C-x +C-f för finn, och C-x C-s för spara. Ett annat exempel är kommandot +för att avsluta Emacs som är C-x C-c. Var inte rädd för att förlora +förändringar du har gjort. C-x C-c erbjuder dig att spara förändringar +innan Emacs avslutas. + +C-z är kommandot för att avsluta Emacs *tillfälligt* så att du kan +återvända till samma Emacs senare. + +På system som tillåter det kommer C-z suspendera Emacs, dvs. returnera +till kommandoraden utan att avsluta Emacs. I de flesta system kan du få +tillbaka Emacs med kommandot 'fg' eller '%emacs'. + +På system som saknar suspendering startar C-z ett skal som kör under +Emacs och som ger dig chansen till att köra andra program och sedan +återgå till Emacs efteråt. Den ger ingen riktig avslutning av Emacs. I +detta fall återvänder man vanligtvis till Emacs med kommandot 'exit'. + +C-x C-c används när du skall avsluta Emacs. Det är klokt att avsluta +Emacs om den har startats av ett mail-program eller andra +applikationer eftersom det inte är säkert att de kan hantera +suspendering av Emacs. Under normala omständigheter, om du inte har +tänkt att logga ut, är det bättre att suspendera Emacs med C-z +istället för att avsluta. + +Det finns många C-x kommandon. Här är en lista över de du har lärt dig +hittills: + + C-x C-f Finn fil + C-x C-s Spara fil + C-x s Spara några buffertar + C-x C-b Lista buffertar + C-x b Byt buffert + C-x C-c Avsluta Emacs + C-x 1 Ta bort alla utom ett fönster + C-x u Ångra + +Namngivna utvidgade kommandon är kommandon som används mycket sällan +eller bara i vissa lägen. Ett exempel på ett sådant kommando är +replace-string, som globalt ersätter en teckensträng med en annan. När +du skriver M-x kommer Emacs visa en prompt nederst i skärmbilden med +M-x där du skall skriva in kommandot du önskar att köra, i det här +fallet "replace-string". Det är bara att skriva "repl s" och +Emacs kommer då att fylla i kommandonamnet. ( är +tabulatortangenten, som vanligtvis finns över CapsLock- eller +skifttangenten nära den vänstra kanten på tangentbordet.) Avsluta +kommandot med . + +Kommandot replace-string kräver två argument, teckensträngen som skall +ersättas och teckensträngen som den skall ersättas med. Du måste +avsluta bägge argumenten med . + +>> Flytta markören till den blanka raden två rader under denna rad. + Skriv M-x repl sförändradändrad. + + Lägg märke till hur den här raden har blivit förändrad. Du har + ersatt ordet f-ö-r-ä-n-d-r-a-d med "ändrad" på alla platser där + ordet förekom, från markören och nedåt. + + +* SPARAUTOMATIK +--------------- + +När du har gjort förändringar i en fil men inte sparat den, så kommer +ändringarna att gå förlorade om maskinen kraschar. Som ett skydd mot +detta sparar Emacs periodiskt ändringarna i en autosparfil för varje +fil du redigerar. Denna fil har ett # i början och slutet av +filnamnet. Om du till exempel har en fil med namnet "hej.c" så kommer +namnet på autosparfilen bli "#hej.c#". När du sparar filen på vanlig +sätt kommer Emacs radera autosparfilen. + +Om maskinen kraschar kan du återfå dina automatiskt sparade ändringar +genom att finna filen på vanlig sätt (filen du redigerade, inte +autosparfilen) och skriva M-x recover-file. När Emacs vill ha +bekräftelse svarar du yes för att återställa filen. + + +* EKOOMRÅDE +----------- + +Om Emacs ser att du skriver kommandon långsamt så kommer de att visas +på den nedersta raden i skärmbilden i ett område som kallas +"ekoområde" (echo area). Detta område innehåller den nedersta raden på +skärmbilden. + + +* LÄGESRADEN +------------ + +Raden precis över ekoområdet kallas "lägesrad" (mode line). Den ser +ungefär ut så här: + +--:** TUTORIAL 63% L749 (Fundamental)----------------------- + +Raden innehåller information om Emacs och texten du redigerar. + +Du vet redan vad filnamnet betyder, det är den fil du har funnit. NN% +visar den aktuella positionen i texten, dvs. NN procent av texten +befinner sig över toppen av skärmbilden. Om toppen av filen är i +skärmbilden kommer det stå "Top" istället för " 0%" och om slutet av +filen är i skärmbilden kommer det stå "Bot". Om du ser på en fil där +hela texten passar in på en sida kommer det stå "All". + +Bokstaven L följd av siffror anger positionen på ett annat +sätt. Siffrorna visar vilken rad som markören befinner sig på. + +Stjärnorna nära början av raden visar att det har skett förändringar i +filen sedan den sist blev sparad. När du precis har öppnat en fil +kommer det inte stå något här, bara minustecken. + +Den del av lägesraden som står inom parentes visar vilket +redigeringsläge (mode) du använder. Standardläget är "Fundamental", +som du använder nu. Det är ett exempel på ett huvudläge (major mode). + +Emacs har många olika huvudlägen. Några av dem är gjorda för +redigering av olika programmeringsspråk eller typer av text, till +exempel Lisp mode och Text mode. Det kan bara vara ett huvudläge åt +gången och lägesnamnet står alltid där det står Fundamental nu. + +Varje huvudläge gör att en del kommandon uppför sig annorlunda. Det +finns till exempel kommandon för att sätta in kommentarer i programkod +och eftersom varje programmeringsspråk har sitt sätt att skriva +kommentarer på så måste de olika huvudlägena sätta in dessa +kommentarer på olika sätt. Varje huvudläge namnger ett utvidgat +kommando som används för att byte till det läget. Till exempel är M-x +fundamental-mode kommandot för att byta till huvudläget Fundamental. + +Om du skall redigera text, såsom den här filen, bör du troligen +använda Text-läge. + +>> Skriv M-x text mode. + +Inget av kommandona du har lärt dig hittills förändrar Emacs i någon +högre grad. Men lägg märke till att M-f och M-b nu behandlar +apostrofer som en del av ord. Tidigare, i Fundamental mode, behandlade +M-f och M-b apostrofer som ordavskiljare. + +Varje huvudläge gör vanligtvis små förändringar som denna och de flesta +kommandon gör samma sak i varje huvudläge, de fungerar bara lite +annorlunda. + +För att få fram dokumentationen för det läge du är i nu kan du skriva +C-h m. + +>> Använd C-u C-v så att denna rad kommer nära toppen av + skärmbilden. +>> Skriv C-h m och se hur Text-läget skiljer sig från + Fundamental-läget. +>> Tryck C-x 1 för att ta bort dokumentationen från skärmbilden. + +Huvudläge kallas så för att det även finns sidolägen (minor mode). +Ett sidoläge ersätter inte ett huvudläge, utan modifierar det. Varje +sidoläge kan stängas av och på oberoende av andra sidolägen och +oberoende av huvudläget. Därför kan du använda ett sidoläge, en +kombination av flera sidolägen eller inget sidoläge alls. + +Ett bra sidoläge, speciellt för redigering av text, är +radbrytningsläget (auto-fill-mode). När detta läge är på bryter Emacs +rader mellan ord automatisk när du skriver in text så att en rad blir +för lång. + +Du kan slå på radbrytningsläget genom att skriva M-x auto fill +mode. När läget är påslaget kan du slå av det igen genom att +upprepa M-x auto fill mode. Om läget är avslaget slår +kommandot på det och vice versa. Vi säger att kommandot "växlar +läget". + +>> Skriv M-x auto fill mode nu. Skriv så in en rad med + "asdf " tills raden delar sig. Du måste sätta in blanktecken, för + Auto Fill bryter bara raden mellan ord. + +Marginalen är vanligtvis satt till 70 tecken men du kan ändra detta +genom att använda kommandot C-x f. Antalet tecken ges till kommandot +genom ett numeriskt argument. + +>> Skriv C-x f med ett argument på 20. (C-u 2 0 C-x f). Skriv sedan in + någon text och lägg märke till att Emacs bryter rader som är längre + än 20 tecken. Sätt tillbaka marginalen till 70 tecken igen, genom + att använda C-x f en gång till. + +Om du gör förändringar mitt i en rad så kommer inte sidoläget Auto +Fill att kunna omformattera raderna för dig. +För att göra detta kan du trycka M-q med markören inne i det avsnittet +du önskar att omformatera. + +>> Flytta markören in i föregående stycke och tryck M-q. + + +* SÖKNING +--------- + +Emacs kan söka efter textsträngar (grupper med sammanhängande +bokstäver eller ord) antingen framåt eller bakåt i texten. När du +söker efter text kommer markören att flytta sig till nästa plats där +teckensträngen uppträder. + +Sökmetoden i Emacs skiljer sig lite från sökmetoder i andra +redigeringsprogram genom att den är inkrementell. Detta betyder att +sökandet fortgår medan du skriver in teckensträngen du skall söka +efter. + +Kommandot för att inleda en sökning är C-s för att söka framåt och C-r +för att söka bakåt. MEN VÄNTA! Prova dem inte än. + +När du skriver C-s kommer du lägga märke till att texten "I-search" +dyker upp i eko-området. Detta säger dig att Emacs är inne i sidoläget +inkrementell sökning och väntar på att du skall skriva in det du letar +efter. avslutar sökandet. + +>> Skriv nu C-s för att starta en sökning. Skriv nu långsamt, en + bokstav i taget, ordet 'markör', och gör en paus efter varje gång + du skriver en bokstav så att du ser vad som sker med markören. Nu + har du sökt efter ordet "markör" en gång. +>> Skriv C-s en gång till för att söka efter nästa förekomst av ordet + "markör". +>> Tryck nu på fyra gånger och se hur markören flyttar sig +>> Tryck för att avsluta sökandet. + +Såg du vad som hände? Under inkrementell sökning försöker Emacs att gå +till den första förekomsten av texten som du har skrivit så långt, och +markerar träffen så att du ser var den är. För att gå till nästa +förekomst av ordet 'markör' är det bara att trycka C-s en gång till. +Om det inte finns flera förekomster kommer Emacs att pipa och meddela +att sökandet har misslyckats. C-g avbryter också sökandet. + +Observera: På vissa system gör C-s att skärmen låser sig. Detta tyder +på att systemets flödeskontroll har fångat upp C-s och inte skickat +den vidare till Emacs. För att fortsätta måste du trycka C-q. Se i så +fall avsnittet "Spontaneous Entry to Incremental Search" i +Emacs-manualen för råd om hur detta kan undvikas. + +Om du är inne i en inkrementell sökning och trycker kommer +du lägga märke till att den sista bokstaven i söksträngen blir raderad +och sökandet hoppar tillbaka till en tidigare förekomst. Om du till +exempel skriver "m" för att söka efter den första förekomsten av "m", +och sedan trycker "a" så kommer markören flytta sig till första +förekomsten av "ma". Tryck nu . Detta avlägsnar "a" från +söksträngen, och markören flyttar sig tillbaka till den första +förekomsten av "m". + +Om du är mitt i en sökning och trycker ett KONTROLL- eller META-tecken +så avbryts sökandet. Undantag är tecken som används under sökningen, +så som C-s och C-r. + +C-s startar en sökning som letar efter varje förekomst av söksträngen +EFTER markörspositionen. Om du skall söka efter en sträng tidigare i +texten måste du använda C-r. Allt vi har sagt om C-s gäller också för +C-r, bortsett från att riktningen på sökningen är den omvända. + + +* FLERA FÖNSTER +--------------- + +En av egenskaperna hos Emacs är att den kan visa mera än en buffert på +skärmen samtidig. + +>> Flytta markören till den här raden och tryck C-u 0 C-l (alltså + KONTROLL-L, inte KONTROLL-1). + +>> Skriv nu C-x 2, som leder till att skärmen delas i två + fönster. Bägge fönstren visar den här vägledningen. Markören står i + det övre fönstret. + +>> Skriv C-M-v för att rulla det nedre fönstret. + (Om du inte har META-tangenten trycker du C-v.) + +>> Skriv C-x o (o för other) för att flytta markören till det + nedre fönstret. + +>> Använd C-v och M-v i det nedre fönstret för att flytta upp + och ned i texten. Fortsätt att läsa den här texten i det övre + fönstret. + +>> Skriv C-x o igen för att flytta markören tillbaka till det övre + fönstret. Markören i det övre fönstret står på samma plats som det + gjorde när du lämnade det. + +Du kan fortsätta att använda C-x o för att byta mellan de två +fönstren. Vart och ett av fönstren har sin egen markörposition men det +är bara ett av fönstren som visar den. Alla redigeringskommandon +fungerar i det fönster där markören är synlig. Vi kallar detta fönster +för det valda fönstret (selected window). + +Kommandot C-M-v är bra när du redigerar text i ett fönster och +använder det andra fönstret för referenser. Då kan du kan ha markören +i samma fönster hela tiden och du kan använda C-M-v för att flytta dig +i det andra fönstret. + +C-M-v är ett exempel på en KONTROLL-META-kombination. Om du har +META-tangenten håller du både KONTROLL och META nedtryckt samtidigt +som du trycker v. Det har ingen betydelse vilken av tangenterna +KONTROLL och META som trycks först, för bägge fungerar så att de +"modifierar" de andra tangenterna du trycker. + +Om du inte har META-tangenten och använder istället är +ordningsföljden viktig. Du måste trycka följt av KONTROLL-v, +KONTROLL- v fungerar inte. Det är för att är ett tecken i +sig och inte en äkta "modifierare". + +>> Skriv C-x 1 i det övre fönstret för att bli kvitt det nedre + fönstret. + +Om du hade skrivit C-x 1 i det nedre fönstret skulle det övre ha +försvunnit. Tänk på detta kommando som "Behåll bara ett fönster, det +som markören står i." + +Du måste inte ha samma buffert i bägge fönstren. Du kan använda C-x +C-f för att finna en ny fil i ett av fönstren samtidigt som det andra +fönstret förblir oförändrat. Du kommer att märka att fönstren är helt +oberoende. + +Här är ett annat sätt att använda två fönster till att visa två olika +filer: + +>> Skriv C-x 4 C-f följt av ett filnamn. Avsluta med . + Den nya filen kommer då att dyka upp i det nedre fönstret. + Markören flyttats också dit. + +>> Skriv C-x o för att gå tillbaka till det övre fönstret och C-x + 1 för att bli kvitt det nedre igen. + + +* REKURSIVA REDIGERINGSNIVÅER +----------------------------- + +Ibland kan du hamna i något som kallas "rekursiv redigering" +(recursive editing level). Detta indikeras med hakparenteser runt +huvudläget i lägesraden. Till exempel kan det stå [(Fundamental)] +istället för (Fundamental). + +För att komma ur rekursiv redigering trycker du . +Detta är ett generellt brytkommando. Du kan också använda det för att +bli kvitt extra fönster och för att komma ut ur minibufferten. + +>> Skriv M-x för att komma in i minibufferten. Skriv så + för att komma ut. + +Du kan inte använda C-g för att komma ut ur rekursiv redigering. +Detta är för att C-g används för att avbryta kommandon och argument +under rekursiv redigering. + + +* MER HJÄLP +----------- + +I denna vägledning har vi försökt inkludera precis så mycket +information att du kan börja använda Emacs. Det finns så många +möjligheter i Emacs att det skulle vara omöjligt att förklara alla +här. Men du VILL säkert lära dig mer om Emacs eftersom den har många +goda egenskaper. Emacs tillhandahåller kommandon för att läsa all +dokumentation. Dessa hjälpkommandon startas med teckenkombinationen +C-h. + +För att använda hjälpen skriver du C-h följt av ett tecken för den +hjälp du behöver. Om du verkligen är helt villrådig kan du trycka C-h +? för att Emacs skall visa vilken hjälp som finns tillgänglig. Om du +har skrivit C-h och bestämmer dig för att du inte behöver ha någon +hjälp kan du trycka C-g för att avbryta. + +(På vissa platser är C-h omkonfigurerad. Det är normalt ingen bra ide´, +så du kan på goda grunder klaga hos systemadministratören. Under +tiden, om C-h inte visar ett hjälpmeddelande längst ner på skärmen, +kan du i stället försöka med funktionstangenten F1 eller M-x +help.) + +Den mest grundläggande hjälp-funktionen är C-h c. Skriv C-h, ett "c" +och en knappsekvens. Emacs ger då en beskrivning av kommandot. + +>> Skriv C-h c C-p. + +Meddelandet skall då bli något i stil med: + + C-p runs the command previous-line + +Detta ger ett funktionsnamn. Funktionsnamnen används huvudsakligen för +att specialanpassa och utvidga Emacs. Men eftersom funktionerna har +beskrivande namn kan de också fungera som en enkel dokumentation, +tillräckligt för att påminna dig om kommandon du redan lärt dig. + +Flerteckenskommandon, så som C-x C-s och (om du inte har META, EDIT +eller ALT tangenten) v, är också tillåtna efter C-h c. + +För att få mer information om ett kommando kan du använda C-h k +istället för C-h c. + +>> Skriv C-h k C-p. + +Detta kommer visa funktionens dokumentation och namn i ett eget +fönster. För att avsluta hjälpfönstret kan du trycka C-x 1. Du behöver +inte göra det omedelbart. Du kan editera med hjälptexten som stöd för +att först senare ta bort fönstret med C-x 1. + +Här är fler varianter på C-h: + + C-h f Beskriv en funktion. Du skriver in funktionsnamnet. + +>> Prova att skriva C-h f previous-line. + Detta ger den information Emacs har om funktionen + som implementerar kommandot C-p. + +Ett liknande kommando, C-h v, visar dokumentationen för de variabler +som du kan ändra värde på för att anpassa Emacs beteende. Du måste +ange namnet på variabeln när Emacs frågar efter den. + + C-h a Kommando-apropå (Command Apropos). Skriv in ett + nyckelord och Emacs listar all kommandon vars namn + innehåller det nyckelordet. Alla dessa + kommandon kan aktiveras med META-x. För några + kommandon listas också de kombinationer bestående av + en eller två tecken som kör det kommandot. + +>> Skriv C-h a file. + +Detta visar i ett annat fönster en lista över alla M-x kommandon där +"file" förekommer i kommandonamnet. Du kommer se teckenkommandon som +C-x C-f listade bredvid motsvarande kommandonamn, t.ex. find-file. + +>> Tryck C-M-v för att rulla texten i hjälpfönstret. Gör det några + gånger. + +>> Type C-x 1 för att ta bort hjälpfönstret. + + C-h i Läs direktmanualen (alias Info). Detta kommando + placerar dig i en speciell buffer vid namn "*info*" + där du kan läsa direkthjälpen för de paket som är + installerade i ditt system. Slå m emacs för + att läsa Emacs-manualen. Om du aldrig tidigare har + använt dig av Info, skriv ? och Emacs tar dig på en + guidad tur över Infolägets (Info-mode) möjligheter. + När du väl har tagit dig igenom den här + användarhandledningen så är det direktmanualen som är + din huvudsakliga källa till dokumentation. + + +* TILL SIST +----------- + +Tänk på att använda C-x C-c för att avsluta Emacs permanent. För att +tillfälligt gå till ett skal, så att du senare kan komma tillbaka +igen, använd C-z. (Under X kommer detta att minimera Emacs.) + +Denna vägledningen är avsedd för nya användare, om det är något som är +oklart duger det inte att sitta och tycka synd om sig själv -- Skicka +ett mail och klaga! + + +* MER FUNKTIONER +---------------- + +Du kan lära dig mer om Emacs genom att läsa dess manual, antingen i +bokform eller on-line i Info (använd Hjälp-menyn eller skriv F10 h r). +Två finesser som du kan komma att gilla speciellt är komplettering +(completion), som spar tangenttryckningar, och dired, som förenklar +filhantering. + +Komplettering är ett sätt att undvika onödiga tangenttryckningar. Till +exempel, om du vill byta till *Messages* bufferten, kan du du skriva +C-x b *M och Emacs kommer fylla i resten av buffertnamnet så +långt den kan räkna ut det från det du redan skrivit. Komplettering +finns beskrivet i Emacs-manualen i noden "Completion". + +Dired gör det möjligt att lista filer i en katalog (och även dess +subkataloger), flytta runt i listan, besöka, byta namn, ta bort och +operera på olika sätt på filerna. Dired finns beskrivet i Info i +Emacs-manualen i noden "Dired". + +Manualen beskriver även många andra Emacs funktioner. + + +* KOPIERING +----------- + +Denna vägledning härstammar från en hel rad Emacs-vägledningar och den +första skrevs av Stuart Cracraft för den ursprungliga Emacs. Mats +Lidell översatte den till Svenska. + +This version of the tutorial, like GNU Emacs, is copyrighted, and +comes with permission to distribute copies on certain conditions: + +Copyright (C) 1985, 1996, 1998, 2001, 2002, 2003, 2004, + 2005, 2006, 2007 Free Software Foundation, Inc. + + Permission is granted to anyone to make or distribute verbatim copies + of this document as received, in any medium, provided that the + copyright notice and permission notice are preserved, + and that the distributor grants the recipient permission + for further redistribution as permitted by this notice. + + Permission is granted to distribute modified versions + of this document, or of portions of it, + under the above conditions, provided also that they + carry prominent notices stating who last altered them. + +The conditions for copying Emacs itself are more complex, but in the +same spirit. Please read the file COPYING and then do give copies of +GNU Emacs to your friends. Help stamp out software obstructionism +("ownership") by using, writing, and sharing free software! + +;;; Local Variables: +;;; coding: latin-1 +;;; sentence-end-double-space: nil +;;; End: + +;;; arch-tag: b352f774-622b-4cc6-85ce-43e3baf4fc1b diff --git a/etc/tutorials/TUTORIAL.th b/etc/tutorials/TUTORIAL.th new file mode 100644 index 00000000000..8e70bc4fc71 --- /dev/null +++ b/etc/tutorials/TUTORIAL.th @@ -0,0 +1,1014 @@ +0,T$Yh10AW1M!RCc0*i10MU1aA!0Jl1(B. ,Tb;C40HV1!IR0Jh1G907i1RB"M'0$Yh10AW1MJSK0CQ1:`0'Wh1M9d"c9!RC7SJS`9R(B. +,TJ'G90ET1"0JT1708Tl1(B ,T>(B.,TH(B. 2528 ,Tb4B:0CT10IQ17?0CU1+M?05l1aG0Cl1?RG09l1`40*Q19(B (Free Software +Foundation, Inc); ,T!0CX13R0HV1!IR`0'Wh1M9d"5M907i1RB:7(B. +0,T7h1R9!S0EQ1'0HV1!IR0$Yh10AW1M!RCc0*i10MU1aA!0Jl1(B (Emacs tutorial) ,TM0BYh1c9"3P09Ui1(B. + +,Tb4B07Qh1Gd;$S0JQh1'"M'0MU1aA!0Jl1(B (Emacs) ,T(Pc0*i10$Yh10!Q1:0;Xh1A(B CONTROL (,T:R'$0CQi1'MR(`0;g190;Xh1A07Uh10AU1(B +0,TJQ1-0EQ1!I03l1(B CTRL ,TK0CW1M(B CTL) ,TK0CW1M(B 0,T;Xh1A(B META (,T:R'$0CQi1'MR(`0;g190;Xh1A07Uh10AU10JQ1-0EQ1!I03l1(B EDIT ,TK0CW1M(B +ALT). ,Ta7907Uh1(Pc0*i1$S`05g1Ac9!RCM08T1:RB(B, ,T`CR(Pc0*i105Q1G0Bh1M04Q1'05h1Md;09Ui1(B: + + C- ,TKARB06V1'c0Ki1!40;Xh1A(B CONTROL ,TaEP0;Xh1A0MQ1!IC(B ,T>0Ci1MA0!Q19(B. + 0,T4Q1'09Qi19(B C-f ,T(PKARB06V1'c0Ki1!40;Xh1A(B CONTROL ,TaEP0;Xh1A(B f ,T>0Ci1MA0!Q19(B. + M- ,TKARB06V1'c0Ki1!40;Xh1A(B META ,TK0CW1M(B EDIT ,TK0CW1M(B ALT ,TaEP0;Xh1A0MQ1!IC(B + ,T>0Ci1MA0!Q19(B. ,Tc9!C03U107Uh1d0Ah10AU10;Xh1A(B META, EDIT ,TK0CW1M(B ALT ,Tc0Ki1!40;Xh1A(B + ESC ,Ta0Ei1G;0Eh1MB(B, ,Ta0Ei1G!40;Xh1A(B . ,T`CRc0*i10JQ1-0EQ1!I03l1(B ,Ta790;Xh1A(B ESC. + +,TKARB`K05X1(B: ,Tc9!C03U107Uh105i1M'!RC`0ET1!c0*i10MU1aA!0Jl1(B, ,Tc0Ki1!40;Xh1A(B C-x C-c. (,TJM'05Q1G0MQ1!IC(B.) +0,T5Q1G0MQ1!IC(B ">>" 0,T7Uh1;CR!/M0BYh17R'"M:0+i1RB0AW1M`0;g19!RCa9P9Sc0Ki107h1R9EM'c0*i1$S0JQh1'(B. 0,T5Q1GM0Bh1R'`0*h19(B: +<> +>> ,T!40;Xh1A(B C-v (0,T4Y1K09i1R(M06Q14d;(B) ,T`0>Wh1M07Uh1(P`$0EWh1M9d;0BQ1'K09i1R(M06Q14d;(B. + (,TEM'7S04Y1b4B!RC!40;Xh1A(B CONTROL ,TaEP0;Xh1A0MQ1!IC(B v ,T>0Ci1MA0!Q19(B). + ,T(R!09Ui1d;(B, 0,T7h1R9$GC(PEM'c0*i1$S0JQh1'09Ui104Y1`0AWh1M07h1R90Mh1R9K09i1R(M09Ui1(:a0Ei1G(B. + +0,T7h1R9(P0JQ1'`!5`0Kg19d04i10Gh1RJM':CC07Q14"M'K09i1R(M07Uh1a0Ei1G(P0BQ1'$';CR!/c0Ki1`0Kg19:9K09i1R(M06Q14d;(B; 0,T9Uh1(B +,T`0;g19!RC0*h1GBc0Ki107h1R9JRARC60Mh1R9K09i1R(Md04i1M0Bh1R'05h1M`09Wh1M'(B. + +0,TJTh1'aC!07Uh107h1R9(S`0;g1905i1M'0CYi10$W1M!RC`$0EWh1M95SaK09h1'd;ARc90"i1M$GRA(B. ,T"3P09Ui107h1R97CR:(B +0,TGT108U1!RC`$0EWh1M9d;0BQ1'K09i1R(M06Q14d;a0Ei1G04i1GB0;Xh1A(B C-v. ,Tc9!RC07Uh1(P`$0EWh1M9!0EQ1:d;K09Vh1'K09i1R(M(B, ,T!40;Xh1A(B +M-v (,T!40;Xh1A(B META ,TaEP0;Xh1A(B v, ,TK0CW1M!40;Xh1A(B v 0,T6i1R07h1R9d0Ah10AU10;Xh1A(B META, EDIT, ,TK0CW1M(B ALT). + +>> ,TEM'!40;Xh1A(B M-v ,TaEP!40;Xh1A(B C-v 0,T4Y1!RC7S'R90JQ1!JM'JRA$0CQi1'(B. + + +* ,TJ0CX1;(B +----- + +,T$S0JQh1'05h1Md;09Ui1c0*i1`0AWh1M05i1M'!RC04Y1K09i1R(M05h1R'f(B: + + C-v ,T`$0EWh1M9d;0BQ1'K09i1R(M06Q14d;K09Vh1'K09i1R(M(B + M-v ,T`$0EWh1M9!0EQ1:d;K09Vh1'K09i1R(M(B + C-l ,TE:K09i1R(M(B ,Ta0Ei1GaJ4'0Ci1MA07Qi1'0Bi1RB5SaK09h1'"M'0"i1M$GRA07Uh10AU1(B + ,T`$M0Cl1`+M0Cl1(B (cursor) ,T;CR!/M0BYh1d;aJ4'd0Gi1!ER'(M(B. + (,T$S0JQh1'09Ui10$W1M(B CONTROL-L, ,Td0Ah1c0*h1(B CONTROL-1.) + +>> 0,TJQ1'`!55SaK09h1'"M'`$M0Cl1`+M0Cl1(B, ,TaEP0JQ1'`!504Y10Gh1R0AU10"i1M$GRAMPdCM0BYh1c!0Ei1`$M0Cl1`+M0Cl1(B. + ,Ta0Ei1G!40;Xh1A(B C-l. + 0,TJQ1'`!504Y15SaK09h1'"M'`$M0Cl1`+M0Cl10MU1!$0CQi1'(B ,T(P`0Kg190Gh1R0AU10"i1M$GRA`04T1A;CR!/M0BYh1c!0Ei1f(B 0,T!Q1:`$M0Cl1`+M0Cl1(B. + + +* ,T!RC$G:0$X1A`$M0Cl1`+M0Cl1`0:Wi1M'05i19(B +------------------------ + +,T!RC`$0EWh1M9K09i1R(Md;AR09Qi19`0;g190JTh1'(S`0;g19(B ,Ta05h107h1R9(P7SM0Bh1R'dC06i1R07h1R905i1M'!RC(P`$0EWh1M9d;0BQ1'(B +,T5SaK09h1'07Uh105i1M'!RC@RBc90"i1M$GRA07Uh1;CR!/M0BYh1:9K09i1R(M(B? + +0,TAU1KERB0GT108U107Uh1JRARC6(P7Sd04i1(B. 0,TGT108U107Uh10>Wi1907Uh10JX140$W1M!RCc0*i1$S0JQh1'(B C-p, C-b, C-f, ,TaEP(B C-n. +,Ta05h1EP$S0JQh1'(P`$0EWh1M9`$M0Cl1`+M0Cl1d;K09Vh1':CC07Q14K0CW1MK09Vh1'$M0EQ1A09l1c907T1H7R'c407T1H7R'K09Vh1':9K09i1R(M(B. +0,T5h1Md;09Ui1`0;g195RCR'aJ4'$S0JQh1'07Qi1'0JUh1(B ,TaEP07T1H7R'07Uh1`$M0Cl1`+M0Cl1`$0EWh1M9d;(B: + + ,T:CC07Q140!h1M9K09i1R(B, C-p + : + : + 0,TBi1M9!0EQ1:(B, C-b .... ,T5SaK09h1'`$M0Cl1`+M0Cl10;Q1(0(X10:Q19(B .... 0,T"i1R'K09i1R(B, C-f + : + : + ,T:CC07Q1406Q14d;(B, C-n + +>> ,T`$0EWh1M9`$M0Cl1`+M0Cl1d;07Uh10!Vh1'!ER'"M'0Wh1Mc0Ki10> ,TEM'c0*i1$S0JQh1'(B C-n 0,T4Y1`0>Wh1M07Uh1(P`$0EWh1M9`$M0Cl1`+M0Cl1E'AR0BQ1':CC07Q1409Ui1(B. + +>> ,TEM'`$0EWh1M9`0"i1Rd;c9:CC07Q14b4Bc0*i1$S0JQh1'(B C-f ,TaEP`$0EWh1M90"Vi190"i1R':9b4Bc0*i1$S0JQh1'(B C-p. + 0,TJQ1'`!504Y10Gh1R`0!T14MPdC0"Vi1906i1Rc0*i1$S0JQh1'(B C-p ,T`0AWh1M5SaK09h1'`$M0Cl1`+M0Cl1;CR!/M0BYh107Uh15C'!ER'(B + ,T"M':CC07Q14(B. + +,Ta05h1EP:CC07Q140JTi190JX1404i1GB0MQ1!"CP(B Newline, 0,T+Vh1'c0*i1aJ4'"M:`"5CPK0Gh1R':CC07Q14(B. 0,T7Uh107i1RB0JX14"M'(B +,Td?0El10!g1(P0AU10MQ1!"CP(B Newline ,T`0*h190!Q19(B (,Ta05h1JSK0CQ1:0MU1aA!0Jl1a0Ei1Gd0Ah1(S`0;g19(B). + +>> ,TEM'c0*i1$S0JQh1'(B C-b 0,T7Uh15SaK09h1'`0CTh1A05i19"M':CC07Q1404Y1(B. ,T`$M0Cl1`+M0Cl1(P`$0EWh1M9d;0BQ1'5SaK09h1'(B + 0,T7i1RB0JX14"M':CC07Q140!h1M9K09i1R(B. 0,T9Uh1`0;g19`>CRP0Gh1R`$M0Cl1`+M0Cl1d04i1`$0EWh1M90"i1RA0MQ1!"CP(B Newline ,Td;(B. + +,T$S0JQh1'(B C-f ,TJRARC6`$0EWh1M90"i1RA0MQ1!"CP(B Newline ,Td04i1`0*h19`04U1BG0!Q1:$S0JQh1'(B C-b. + +>> ,TEM'c0*i1$S0JQh1'(B C-b 0,T4Y10MU1!0JQ1!K09h1MB(B, 0,T7h1R9(PJRARC6`0"i1Rc(!RC`$0EWh1M9`$M0Cl1`+M0Cl1d04i104U10"Vi19(B. + ,Ta0Ei1GEM'c0*i1$S0JQh1'(B C-f ,T`0>Wh1M07Uh1(P`$0EWh1M9d;0BQ1'5SaK09h1'07i1RB0JX14"M':CC07Q14(B. + ,Ta0Ei1GEM'c0*i1$S0JQh1'(B C-f 0,TMU1!0JQ1!$0CQi1'`0>Wh1M07Uh1(P`$0EWh1M9d;0BQ1':CC07Q1406Q14d;(B. + +,T`0AWh1M07h1R9`$0EWh1M90> ,TEM'`$0EWh1M9`$M0Cl1`+M0Cl1E'MM!d;9M!K09i1R(Mb4Bc0*i1$S0JQh1'(B C-n, ,Ta0Ei1G04Y10Gh1R0AU1MPdC`0!T140"Vi19(B. + +0,T6i1R`$0EWh1M907U1EP05Q1G0MQ1!IC09Qi190*i1Rd;(B, 0,T7h1R90!g1JRARC6(P`$0EWh1M9d04i107U1EP$S(B. ,T$S0JQh1'(B M-f (META-f) +,Tc0*i1c9!RC`$0EWh1M9d;0BQ1'$S07Uh1M0BYh106Q14d;(B ,TaEP(B M-b ,Tc0*i1c9!RC`$0EWh1M9d;0BQ1'$S07Uh1M0BYh10!h1M9K09i1R(B. + +>> ,TEM'c0*i1$S0JQh1'(B M-f ,TaEP(B M-b 0,T4Y10JQ1!JM'JRA$0CQi1'(B. + +,T`0AWh1M07h1R9M0BYh107Uh15SaK09h1'!ER'"M'$S(B, ,T$S0JQh1'(B M-f ,T(Pc0*i1`$0EWh1M9d;0BQ1'5SaK09h1'07i1RB"M'$S09Qi19(B. ,T`0AWh1M(B +0,T7h1R9M0BYh107Uh15SaK09h1'`0Gi19GCC$CPK0Gh1R'$S(B, ,T$S0JQh1'(B M-f ,T(Pc0*i1`$0EWh1M9d;0BQ1'5SaK09h1'07i1RB"M'$S(B +0,T7Uh1M0BYh106Q14d;(B. ,T$S0JQh1'(B M-b ,T7SK09i1R07Uh17S9M'`04U1BG0!Q19(B ,Ta05h1`$0EWh1M9d;c907T1H7R'5C'0!Q190"i1RA(B. + +,TKARB`K05X1(B: ,T`09Wh1M'(R!@RIRd7Bd0Ah10AU1!RCc0*i10MQ1!"CP`0Gi19GCC$(B (whitespace) ,Tc9!RCaJ4'(B + ,T"M:`"5"M'$S(B, ,T)P09Qi19`0AWh1MM0BYh1c9bKA4@RIRd7B(B (ThaiText mode) 0,TMU1aA!0Jl1(B + ,T(P7S!RC!S0!Q1:"M:`"5"M'$Sb4BMR0HQ1Bb;Ca!CA05Q14$S(B. ,T$S0JQh1'(B M-f ,TaEP(B M-b + 0,T(V1'(P7S'R9d04i1(B, ,Ta05h1(Pc0Ki1> ,TEM'c0*i1$S0JQh1'(B M-f ,TaEP(B M-b 0,T4Y1(B, ,Tb4B;P;90!Q1:$S0JQh1'(B C-f ,TaEP(B C-b, 0,T7h1R9(P0JQ1'`!5(B + ,T`0Kg19!RC7S'R9"M'$S0JQh1'(B M-f ,TaEP(B M-b ,Tc95SaK09h1'05h1R'f(B 0,T7Qi1'c9$SaEPCPK0Gh1R'$S(B. + +0,T7h1R9JRARC60JQ1'`!5d04i10Gh1R$S0JQh1'(B C-f ,TaEP(B C-b 0,T9Qi197SK09i1R07Uh1c90EQ1!I3P`04U1BG0!Q1:$S0JQh1'(B M-f +,TaEP(B M-b, ,Ta05h1M0BYh1:9`!301l107Uh105h1R'0!Q19(B. 0,TJh1G9AR!(B 0,T;Xh1A(B META ,T(P06Y1!!SK94c0Ki1c0*i10!Q1:!RC7S'R9c9(B +,TCP04Q1:07Uh1`0!Uh1BG0"i1M'0!Q1:K09h1GB07Uh1!SK940"Vi197R'@RIR(B (,T`0*h19(B ,T$S(B, ,T;CPbB$(B, 0,TBh1MK09i1R(B, ,T`0;g1905i19(B), +,T"3P07Uh10;Xh1A(B CONTROL 0,T9Qi190AQ1!(P06Y1!!SK94c0Ki1c0*i10!Q1:!RC7S'R9c9CP04Q1:07Uh1`0!Uh1BG0"i1M'0!Q1:K09h1GB0Bh1MB(B +0,TMT1JCP07Uh17S!RCa0!i1d"d04i1(B (,T`0*h19(B 0,T5Q1G0MQ1!IC(B, ,T:CC07Q14(B, ,T`0;g1905i19(B). + +,T!RC7S'R9c97S9M'`04U1BG0!Q19JSK0CQ1::CC07Q140!Q1:;CPbB$(B: ,T$S0JQh1'(B C-a ,TaEP(B C-e ,Tc0*i1`$0EWh1M9(B +,Td;0BQ1'5SaK09h1'`0CTh1A05i19aEP07i1RB"M':CC07Q14(B, ,T"3P`04U1BG0!Q19$S0JQh1'(B M-a ,TaEP(B M-e ,Tc0*i1`$0EWh1M9(B +,Td;0BQ1'5SaK09h1'`0CTh1A05i19aEP07i1RB"M';CPbB$(B. + +,TKARB`K05X1(B: ,T`09Wh1M'(R!@RIRd7Bd0Ah109T1BAc0*i10MQ1!"CPA0KQ1>@R$(B (period) ,Tc9!RCaJ4'0(X140JTi190JX14"M'(B + ,T;CPbB$(B, ,T7Sc0Ki1d0Ah1JRARC6!SK94"M:`"5"M';CPbB$c0Ki106Y1!05i1M'd04i1(B. 0,T4Q1'09Qi19`0AWh1M(B + ,TM0BYh1c9bKA4@RIRd7B(B (ThaiText mode), ,T$S0JQh1'(B M-a ,TaEP(B M-e ,T(P`$0EWh1M9(B + ,T`$M0Cl1`+M0Cl1d;0BQ1'5SaK09h1'`0CTh1A05i19"M'0Bh1MK09i1R(B ,TaEP5SaK09h1'07i1RB0JX14"M'0Bh1MK09i1R(B + ,T5RAES04Q1:(B. ,TB!`0Gi19!C03U107Uh10AU1!RCc0*i10MQ1!"CPA0KQ1>@R$(B. + +>> ,TEM'c0*i1$S0JQh1'(B C-a ,TaEP(B C-e 0,T4Y10JQ1!JM'JRA$0CQi1'(B. + ,TEM'c0*i1$S0JQh1'(B M-a ,TaEP(B M-e 0,T4Y10JQ1!JM'JRA$0CQi1'(B. + +0,TJQ1'`!504Y10Gh1R!RCc0*i1$S0JQh1'(B C-a 0,T+i1Sf(B 0,T!Q19(Pd0Ah1`0!T14> ,TEM'c0*i1$S0JQh1'`K0Eh1R09Ui10JQ1!CPBP`0>Wh1M`0;g19!RC0=V1!0KQ14(B. + ,T$S0JQh1'`K0Eh1R09Ui1`0;g19$S0JQh1'07Uh1c0*i10!Q190:h1MBAR!(B. + +0,TAU10MU1!JM'$S0JQh1'07Uh1JS0$Q1-c9!RC`$0EWh1M95SaK09h1'0$W1M(B ,T$S0JQh1'(B M-< (META 0,T9i1MB!0Gh1R(B), ,Tc0*i1c9!RC(B +,T`$0EWh1M9d;0BQ1'5SaK09h1'`0CTh1A05i19"M'0"i1M$GRA(B, ,TaEP(B M-> (META ,TAR!!0Gh1R(B), ,Tc0*i1c9!RC`$0EWh1M9(B +,Td;0BQ1'5SaK09h1'07i1RB0JX14"M'0"i1M$GRA(B. + +,Tc9`$0CWh1M';ERB7R'(B (terminal) 0,TJh1G9cK0-h1(B, 0,TMQ1!"CP(B "<" ,T(PM0BYh1`K09W1M0MQ1!"CP0(X1E@R$(B +(comma), ,T)P09Qi1907h1R905i1M'c0*i10;Xh1A0*T1?05l1(B (shift) ,Tc9!RC0;i1M90MQ1!"CP09Qi19(B. ,TJSK0CQ1:`$0CWh1M'(B +,T;ERB7R'a::09Ui1(B, 0,T7h1R90(V1'05i1M'c0*i10;Xh1A0*T1?05l1c9!RC0;i1M9$S0JQh1'(B M-< ,Tc97S9M'`04U1BG0!Q19(B, 0,T6i1Rd0Ah1(B +,T$S09V1'06V1'0;Xh1A0*T1?05l1(B, 0,T!g1KARB$GRA0Gh1R07h1R9!S0EQ1'0;i1M9$S0JQh1'(B M-comma. + +>> ,TEM'c0*i1$S0JQh1'(B M-< 0,T4Y1(B, ,T`0>Wh1M`$0EWh1M9d;0BQ1'5SaK09h1'`0CTh1A05i19"M'0$Yh10AW1M!RCc0*i109Ui1(B. + ,Ta0Ei1Gc0*i1$S0JQh1'(B C-v 0,T+i1S0!Q19KERBf(B ,T$0CQi1'`0>Wh1M07Uh1(P`$0EWh1M9!0EQ1:AR0BQ1'5SaK09h1'`04T1A09Ui1(B. + +>> ,TEM'c0*i1$S0JQh1'(B M-> 0,T4Y1(B, ,T`0>Wh1M`$0EWh1M9d;0BQ1'5SaK09h1'07i1RB0JX14"M'0$Yh10AW1M!RCc0*i109Ui1(B. + ,Ta0Ei1Gc0*i1$S0JQh1'(B M-v 0,T+i1S0!Q19KERBf(B ,T$0CQi1'`0>Wh1M07Uh1(P`$0EWh1M9!0EQ1:AR0BQ1'5SaK09h1'`04T1A09Ui1(B. + +0,T7h1R9JRARC6`$0EWh1M9`$M0Cl1`+M0Cl1d04i104i1GB0;Xh1A0EY1!HC(B (arrow key), 0,T6i1R`$0CWh1M';ERB7R'"M'07h1R9(B +0,TAU10;Xh1A`K0Eh1R09Ui1M0BYh1(B. ,T`CRa9P9Sc0Ki10=V1!0KQ14c0*i1$S0JQh1'(B C-b, C-f, C-n ,TaEP(B C-p, 0,T4i1GB`K05X1CRP0Gh1R07h1R9d0Ah105i1M'`$0EWh1M90Bi1RB0AW1MMM!(R!5SaK09h1'0AW1M0JQ1A0CRP0Gh1RJRARC6c0*i1d04i10!Q1:`$0CWh1M';ERB7R'07X1!*09T14(B. 0,T5Q1G`E"MR0Cl1(B +0,T!T1G`A905l107Uh1!0Eh1RG06V1'09Ui1`0CU1B!0Gh1R(B ",TMR0Cl10!T1G`A905l1`05T1AK09i1R(B (prefix argument)", ,T`>CRP0Gh1R07h1R9(B +0,T5i1M'0;i1M905Q1G`E"0!h1M907Uh1(P0;i1M9$S0JQh1'(B. + +0,T5Q1GM0Bh1R'`0*h19(B, ,T$S0JQh1'(B C-u 8 C-f ,T(P`$0EWh1M9d;0"i1R'K09i1Ra;405Q1G0MQ1!IC(B. + +>> ,TEM'c0*i1$S0JQh1'(B C-n ,TK0CW1M(B C-p ,T;CP!M:0!Q1:05Q1G`E"MR0Cl10!T1G`A905l1(B, ,T`0>Wh1M07Uh1(P`$0EWh1M9`$M0Cl1`+M0Cl1(B + ,T`0"i1RARc!0Ei1:CC07Q1409Ui1b4Bc0*i1`0>U1B'$S0JQh1'`04U1BG(B. + +,T$S0JQh1'0Jh1G9cK0-h1c0*i105Q1G`E"MR0Cl10!T1G`A905l1`K0Eh1R09Ui1JSK0CQ1:!RC;CPAGE> ,TEM'c0*i1$S0JQh1'(B C-u 8 C-v 0,T4Y1(B. + +,T$S0JQh1'09Ui1(P`$0EWh1M90Ai1G9K09i1R(M0"Vi19d;a;4:CC07Q14(B. 0,T6i1R07h1R905i1M'!RC(P`$0EWh1M90Ai1G9!0EQ1:AR0MU1!(B, 0,T7h1R9(B +0,T!g17Sd04i1b4B!RC!S0!Q1:05Q1G`E"MR0Cl10!T1G`A905l1c0Ki10!Q1:$S0JQh1'(B M-v. + +0,T6i1R07h1R9!S0EQ1'c0*i1`M!0+l10GT19b40Gl1(B (X Window) ,TM0BYh1(B, ,T(P0AU1a<'`$0EWh1M90Ai1G9(B (scroll bar) 0,T7Uh1(B +,T`0;g190>Wi1907Uh10JUh1`K0EUh1BA0> ,TEM'!40;Xh1A!ER'07Uh10Jh1G9:90JX14"M'0>Wi1907Uh107Uh1`09i19(B (highlight) ,T@RBc9a<'`$0EWh1M90Ai1G9(B. + 0,T"i1M$GRA(P06Y1!`$0EWh1M90Ai1G9d;0BQ1'5SaK09h1'07Uh107Uh107h1R9d04i1$0ET1!(B. + +>> ,TEM'`$0EWh1M9`AR0Jl10"Vi19E'04Y1(B, ,T"3P07Uh10BQ1'!40;Xh1A!ER'M0BYh1(B. 0,T7h1R9(P>:0Gh1R0"i1M$GRA(P`$0EWh1M907Uh10"Vi19(B + ,TE'5RA07Uh107h1R9`$0EWh1M9`AR0Jl1d;(B. + + +* ,T!C03U107Uh10MU1aA!0Jl1K0BX14*P0'Q1!(B (hang up) +---------------------------- + +0,T6i1R0MU1aA!0Jl1K0BX14aEPd0Ah15M:J9M'$S0JQh1'c4f(B, 0,T7h1R9JRARC6B!`0ET1!$S0JQh1'd04i1M0Bh1R';EM40@Q1Bb4Bc0*i1(B +,T$S0JQh1'(B C-g. 0,T7h1R9JRARC6c0*i1$S0JQh1'(B C-g ,Tc9!RCB!`0ET1!$S0JQh1'07Uh1!S0EQ1'7S'R9M0BYh1d04i1(B. + +0,T7h1R9JRARC6c0*i1$S0JQh1'(B C-g ,T`0>Wh1MB!`0ET1!05Q1G`E"MR0Cl10!T1G`A905l1K0CW1M$S0JQh1'07Uh107h1R9!S0EQ1'0;i1M9M0BYh1d04i1(B. + +>> ,TEM'0;i1M9$S0JQh1'(B C-u 100 ,T`0>Wh1M07Uh1(Pc0Ki10AU105Q1G`E"MR0Cl10!T1G`A905l1`0;g19(B 100, ,Ta0Ei1G0;i1M9$S0JQh1'(B C-g. + 0,T;i1M9$S0JQh1'(B C-f. ,TU1B'K09Vh1'05Q1G0MQ1!IC(B, ,T`>CRP0Gh1R07h1R9d04i1(B + ,TB!`0ET1!05Q1G`E"MR0Cl10!T1G`A905l1d;a0Ei1G04i1GB$S0JQh1'(B C-g. + +0,T6i1R07h1R90;i1M9$S0JQh1'(B ,Tb4Bd0Ah1d04i105Qi1'c((B, 0,T7h1R90!g1JRARC6(PB!`0ET1!$S0JQh1'09Qi19d04i104i1GB$S0JQh1'(B C-g. + + +* ,T$S0JQh1'07Uh106Y1!0;T147R'(B (disable) +------------------------ + +,T$S0JQh1':R'$S0JQh1'06Y1!0;T147R'd0Gi1(B ,T`0>Wh1M07Uh1(P0;i1M'0!Q19d0Ah1c0Ki10Wh1M5M:0BW190BQ19$GRA05i1M'!RC(B. +,Tb4B;C!05T1a0Ei1G(B, 0,T6i1R07h1R9d0Ah105i1M'!RC(P;CPAGE> ,TEM'c0*i1$S0JQh1'(B C-x C-l (0,T+Vh1'`0;g19$S0JQh1'07Uh106Y1!0;T147R'd0Gi1(B), ,Ta0Ei1G0;i1M9(B "n" ,T`0>Wh1M`0;g19!RC5M:(B + ,T$S6RA(B. + + +* 0,TGT19b40Gl1(B (window) +---------------- + +0,TMU1aA!0Jl1JRARC60AU1d04i1KERB0GT19b40Gl1(B, ,Ta05h1EP0GT19b40Gl10!g1(PaJ4'U1B'0GT19b40Gl1`04U1BG(B. 0,T+Vh1'JRARC67Sd04i104Q1'09Ui1(B: + + C-x 1 ,TK09Vh1'0GT19b40Gl1(B (0,T$W1M!RC0;T140GT19b40Gl10MWh19f(B 0,T7Qi1'KA4(B) + +0,T9Qh190$W1M`0>U1B'0;i1M9$S0JQh1'(B C-x ,Ta0Ei1G5RA04i1GB`E"(B 1. ,T$S0JQh1'(B C-x 1 ,T(P"BRB0GT19b40Gl107Uh10AU1(B +,T`$M0Cl1`+M0Cl1M0BYh1(B ,Tc0Ki1`05g1AK09i1R(M(B. 0,T+Vh1'(P`0;g19!RC0;T140GT19b40Gl10MWh19f(B 0,T7Qi1'KA4(B. + +>> ,T`$0EWh1M9`$M0Cl1`+M0Cl1AR0BQ1':CC07Q1409Ui1(B ,Ta0Ei1G0;i1M9$S0JQh1'(B C-u 0 C-l. +>> 0,T;i1M9$S0JQh1'(B C-h k C-f. + ,T(P`0Kg190Gh1R0GT19b40Gl109Ui10AU1"9R40Bh1ME'(B ,T"3P07Uh10AU10GT19b40Gl1cK0Ah1`0!T140"Vi19aJ4'> 0,T;i1M9$S0JQh1'(B C-x 1 ,Ta0Ei1G(P>:0Gh1R0GT19b40Gl107Uh1aJ4'CRB!RC"M'`M!JRCKRBd;(B. + +,T$S0JQh1'09Ui105h1R'(R!$S0JQh1'07Uh1d04i1!0Eh1RGAR5C'07Uh10Gh1R$S0JQh1'09Ui1;CP!M:04i1GBJM'05Q1G0MQ1!IC(B. ,T$S0JQh1'09Ui1`0CTh1A05i19(B +0,T4i1GB0MQ1!"CP(B C-x. 0,TAU10*X14"M'$S0JQh1'07Uh10"Vi1905i1904i1GB0MQ1!"CP(B C-x; 0,TJh1G9cK0-h1(P`0!Uh1BG0"i1M'0!Q1:!RC(B +0,T(Q14!RC0!Q1:0GT19b40Gl1(B, ,Ta0?i1A0"i1M0AY1E(B, 0,T:Q1?`?M0Cl1(B, ,TaEP0MWh19f(B ,Tc97S9M'`04U1BG0!Q19(B. ,T$S0JQh1'`K0Eh1R09Ui1(P(B +,T;CP!M:04i1GBJM'(B, ,TJRA(B, ,TK0CW1M0JUh105Q1G0MQ1!IC(B. + + +* ,T!RCa7C!(B (inserting) ,TaEP!RCE:(B (deleting) +---------------------------------------------- + +0,T6i1R07h1R905i1M'!RC07Uh1(Pa7C!0"i1M$GRA(B, 0,T!g1JRARC67Sd04i1b4B!RC0;i1M90"i1M$GRA09Qi19`0"i1Rd;`07h1R09Qi19(B. +0,T5Q1G0MQ1!IC07Uh107h1R9`0Kg19(B, ,T`0*h19(B A, 7, *, ,T`0;g1905i19(B, 0,T5h1R'0!g106W1M0Gh1R`0;g190"i1M$GRAaEP06Y1!a7C!`0"i1Rd;(B +0,T7Q1907U107Uh10;i1M9(B. ,T!40;Xh1A(B ,Tc9!RC07Uh1(Pa7C!0MQ1!"CP(B Newline. + +0,T7h1R9JRARC6E:05Q1G0MQ1!IC05Q1G0JX1407i1RB07Uh107h1R9d04i10;i1M9`0"i1Rd;d04i1b4B!RC!40;Xh1A(B . 0,T;Xh1A(B + ,T`0;g190;Xh1Af(B ,TK09Vh1':9a0;i190>T1A0>l1(B, 0,T+Vh1':R'$0CQi1'MR(`0;g190;Xh1A07Uh1!S0!Q1:04i1GB(B "Del". ,Tc9:R'(B +,T!C03U1(B, 0,T;Xh1A(B "Backspace" 0,T!g17SK09i1R07Uh1`0*h19`04U1BG0!Q1:0;Xh1A(B , ,Ta05h10!g1d0Ah1`JAMd;(B. + +,Tb4B07Qh1Gd;a0Ei1G(B, 0,T;Xh1A(B ,T(Pc0*i1JSK0CQ1:E:05Q1G0MQ1!IC07Uh1M0BYh1K09i1R5SaK09h1'"M'`$M0Cl1`+M0Cl10;Q1(0(X10:Q19(B. + +>> ,TEM'7S04Y1(B--0,T;i1M905Q1G0MQ1!ICc4f(B 0,TJQ1!JM'JRA05Q1G(B, ,Ta0Ei1GE:05Q1G0MQ1!IC09Qi19MM!b4B!40;Xh1A(B + 0,TJQ1!JM'JRA$0CQi1'(B. ,Td0Ah105i1M'0!Q1'GE0Gh1R(P7Sc0Ki10"i1M$GRAc9a0?i1A0"i1M0AY1E09Ui1`;0EUh1B9d;(B; + 0,T7h1R9(Pd0Ah17Sc0Ki10"i1M$GRAc905i19)0:Q1:"M'0$Yh10AW1M!RCc0*i1`;0EUh1B9a;E'(B. 0,T9Uh1`0;g19`0>U1B')0:Q1:JS`9R`07h1R09Qi19(B. + +,T`0AWh1M0"i1M$GRAc9:CC07Q14BRG`0!T19!0Gh1RK09Vh1':CC07Q14"M'K09i1R(M(B, 0,T"i1M$GRAc9:CC07Q1409Qi19(P05h1M`09Wh1M'(B +,Td;0BQ1':CC07Q1406Q14d;"M'K09i1R(M(B. 0,TMQ1!"CP(B backslash ("\") 0,T7Uh1;ERB"M'"M:"GR0AW1M(P0:h1'0*Ui1(B +0,TGh1R0"i1M$GRA"M':CC07Q1409Qi1905h1M`09Wh1M'd;0BQ1':CC07Q1406Q14d;(B. + +>> 0,T;i1M90"i1M$GRA(9!CP07Qh1'06V1'"M:"GR(B, ,Ta0Ei1G0;i1M905h1Md;0MU1!(B. 0,T7h1R9(P`0Kg19!RCaJ4'> ,Tc0*i10;Xh1A(B ,T`0>Wh1ME:0"i1M$GRAMM!(9!CP07Qh1'0"i1M$GRA09Qi19>M04U10!Q1:$GRA!0Gi1R'"M'K09i1R(M(B. + ,T:CC07Q1407Uh105h1M`09Wh1M'0!Q190!g1(PKRBd;(B. + +0,T7h1R9JRARC6E:0MQ1!"CP(B Newline ,TMM!d04i1`0*h19`04U1BG0!Q1:05Q1G0MQ1!IC0MWh19f(B. ,T!RCE:0MQ1!"CP(B Newline +,TCPK0Gh1R'JM':CC07Q14(P`0;g19!RCCGAJM':CC07Q1409Qi19`0"i1R`0;g19:CC07Q14`04U1BG(B. 0,T6i1R> ,T`$0EWh1M9`$M0Cl1`+M0Cl1d;0BQ1'5SaK09h1'`0CTh1A05i19"M':CC07Q14(B, ,Ta0Ei1G!40;Xh1A(B . + ,T:CC07Q140;Q1(0(X10:Q19(P06Y1!`0*Wh1MA`0"i1R0!Q1::CC07Q140!h1M9K09i1R(B. + +>> ,T!40;Xh1A(B ,T`0>Wh1M07Uh1(Pa7C!0MQ1!"CP(B Newline ,T`0"i1Rd;cK0Ah1(B. + +,T$GC(Sd0Gi10Gh1R$S0JQh1'0Jh1G9cK0-h1"M'0MU1aA!0Jl1(PJRARC67Sc0Ki1;CPAGE> ,TEM'7S04Y1`04Uk1BG09Ui1(B--0,T;i1M9$S0JQh1'(B C-u 8 * ,T`0>Wh1M07Uh1(P0;i1M9JRB0MQ1!"CP(B ********. + +0,T7h1R9d04i1`0CU1B90CYi106V1'0GT108U1!RC`0:Wi1M'05i19c9!RC0;i1M9:R'0JTh1':R'M0Bh1R'c90MU1aA!0Jl1aEP!RCa0!i1d"(B +0,T"i1M0ER405h1R'f(B. 0,T7h1R9JRARC607Uh1(PE:07U1EP$SK0CW1M07U1EP:CC07Q14c97S9M'`04U1BG0!Q19(B. 0,T5h1Md;09Ui1`0;g19(B +,T!RCJ0CX1;!RCE:04i1GB0GT108U105h1R'f(B: + + ,TE:05Q1G0MQ1!IC07Uh1M0BYh1K09i1R5SaK09h1'`$M0Cl1`+M0Cl1(B + C-d ,TE:05Q1G0MQ1!IC07Uh1M0BYh106Q14d;K0EQ1'5SaK09h1'`$M0Cl1`+M0Cl1(B + + M- 0,T&h1R$S07Uh1M0BYh1K09i1R5SaK09h1'`$M0Cl1`+M0Cl1(B + M-d 0,T&h1R$S07Uh1M0BYh106Q14d;K0EQ1'5SaK09h1'`$M0Cl1`+M0Cl1(B + + C-k 0,T&h1R05Q1G0MQ1!IC05Qi1'a05h15SaK09h1'`$M0Cl1`+M0Cl1d;(906V1'07i1RB:CC07Q14(B + M-k 0,T&h1R05Q1G0MQ1!IC05Qi1'a05h15SaK09h1'`$M0Cl1`+M0Cl1d;(906V1'07i1RB"M';CPbB$(B + +,T$GC(P0JQ1'`!5d04i10Gh1R$S0JQh1'(B ,TaEP(B C-d, 0,T!Q1:(B M- ,TaEP(B M-d ,T`0;g19$S0JQh1'(B +,Tc97S9M'`04U1BG0!Q1907Uh1`0CTh1A(R!$S0JQh1'(B C-f ,TaEP(B M-f (,Ta0Ai10Gh1R0;Xh1A(B ,T(Pd0Ah1c0*h105Q1G0MQ1!IC(B +0,T!g15RA(B, ,Ta05h1d0Ah1d04i1`0;g19`0CWh1M'JS0$Q1-(B). ,T$S0JQh1'(B C-k ,TaEP(B M-k 0,T!g1`0*h19`04U1BG0!Q1:(B C-e ,TaEP(B M-e 0,T7Uh1(B +,T7S'R9c90EQ1!I3P`04U1BG0!Q19a05h1$9EPCP04Q1:(B, 0,T$W1MCP04Q1:07Uh1`0;g19:CC07Q140!Q1:;CPbB$(B. + +,T`0AWh1M07h1R9E:05Q1G0MQ1!ICd;AR!!0Gh1RK09Vh1'05Q1Gc9$0CQi1'K09Vh1'f(B, 0,TMU1aA!0Jl1(P0:Q1907V1!0"i1M$GRA07Uh106Y1!E:d;d0Gi1(B +,T`0>Wh1M0Gh1R07h1R9(PJRARC6`0CU1B!!0EQ1:ARd04i10MU1!(B. ,T!RC`0CU1B!!0EQ1:AR"M'0"i1M$GRA07Uh106Y1!0&h1Rd;09Qi19`0CU1B!0Gh1R(B +",T!RC`0CU1B!0$W19(B (yanking)". 0,T7h1R9JRARC6`0CU1B!0$W190"i1M$GRA07Uh106Y1!0&h1Rd;!0EQ1:ARd04i1b4Bc0Ki1(B +,T;CR!/c907Uh107Uh106Y1!0&h1Rd;(B, ,TK0CW1M;CR!/c907Uh1c4f(B ,T"M'0"i1M$GRA0!g1d04i1(B. 0,T7h1R9JRARC6`0CU1B!0$W190"i1M$GRA(B +0,T!Uh1$0CQi1'0!g1d04i1`0>Wh1M07Uh1(P7SJS`9R0"i1M$GRA(B. ,T$S0JQh1'07Uh1c0*i1c9!RC`0CU1B!0$W190$W1M(B C-y. + +0,TJTh1'07Uh1$GC0JQ1'`!50MQ19K09Vh1'0$W1M0"i1Ma5!05h1R'CPK0Gh1R'(B ",T!RC0&h1R(B (killing)" 0,T!Q1:(B ",T!RCE:(B +(deleting)". 0,TJTh1'07Uh106Y1!(B "0,T&h1R(B (killed)" ,Td;09Qi19(B, ,TJRARC607Uh1(P`0CU1B!0$W19(B (yank) ,TARd04i1(B, +,Ta05h10JTh1'07Uh106Y1!(B ",TE:(B (deleted)" ,Td;09Qi19(B, ,Td0Ah1JRARC6(P`0CU1B!0$W19ARd04i1(B. ,Tb4B07Qh1Gd;(B, ,T$S0JQh1'07Uh1JRARC6(B +,TE:0"i1M$GRAd04i107U1EPAR!f(B ,T(P`0!g1:0"i1M$GRA09Qi19d0Gi1(B, ,T"3P07Uh1$S0JQh1'07Uh1E:d04i107U1EP05Q1G0MQ1!IC(B, ,TK0CW1M:CC07Q14(B +,T`;0Eh1RaEP`0Gi19GCC$(B, ,T(Pd0Ah1`0!g1:0"i1M$GRA07Uh106Y1!E:d;(B. + +>> ,T`$0EWh1M9`$M0Cl1`+M0Cl1d;0BQ1'0(X14`0CTh1A05i19"M':CC07Q1407Uh1d0Ah1c0*h1:CC07Q14`;0Eh1R(B. + ,Ta0Ei1G0;i1M9$S0JQh1'(B C-k ,T`0>Wh1M07Uh1(P0&h1R0"i1M$GRA07Uh1M0BYh1:9:CC07Q1409Qi19(B. +>> 0,T;i1M9$S0JQh1'(B C-k 0,TMU1!$0CQi1'K09Vh1'(B. 0,T7h1R9(P`0Kg190Gh1R0MQ1!"CP(B Newline 0,T7Uh1M0BYh107i1RB:CC07Q1409Qi19(P06Y1!(B + 0,T&h1Rd;(B. + +,T(P0JQ1'`!5d04i10Gh1R$S0JQh1'(B C-k ,T$S0JQh1'aC!(P0&h1R`09Wi1M$GRA"M':CC07Q14(B, ,TaEP$S0JQh1'(B C-k ,T$S0JQh1'(B +0,T7Uh1JM'(P0&h1R:CC07Q1409Qi19(B, ,TaEP(P"0BQ1::CC07Q140MWh19f(B 0,T7Uh1`K0EW1M07Qi1'KA40"Vi19(B. ,T$S0JQh1'(B C-k 0,T(Q14!RC0!Q1:(B +0,T5Q1G`E"MR0Cl10!T1G`A905l1c90EQ1!I3P07Uh1a5!05h1R'MM!d;(B: ,T$S0JQh1'09Ui1(P0&h1RKERBf(B ,T:CC07Q14aEP`09Wi1MKR"M'(B +0,T"i1M$GRA04i1GB(B. 0,T9Uh1d0Ah1`K0AW1M9!RC7S0+i1Sa::;C!05T1(B. ,T$S0JQh1'(B C-u 2 C-k ,T(P0&h1R07Qi1'JM':CC07Q14(B +,T>0Ci1MA07Qi1'0MQ1!"CP(B Newline ,T"M':CC07Q1409Qi19f(B 0,T4i1GB(B; 0,T+Vh1'05h1R'(R!!RC7S$S0JQh1'(B C-k ,TJM'$0CQi1'(B. + +,Tc0*i1$S0JQh1'(B C-y ,Tc9!RC07Uh1(P`0CU1B!0$W190"i1M$GRA07Uh106Y1!0&h1Rd;K0EQ1'0JX14(B. 0,T"i1M$GRA07Uh106Y1!`0CU1B!0$W1909Qi19(P(B +,T;CR!/07Uh15SaK09h1'`$M0Cl1`+M0Cl10;Q1(0(X10:Q19(B. + +>> ,TEM'c0*i1$S0JQh1'(B C-y ,T`0>Wh1M07Uh1(P`0CU1B!0$W190"i1M$GRA!0EQ1:AR(B. + +,T$S0JQh1'(B C-y 0,T!g1`K0AW1M9!RC`0CU1B!0$W190JTh1'"M'07Uh1c$C:R'$9d04i1`MRd;(R!07h1R9(B. 0,T7h1R9(P0JQ1'`!5d04i10Gh1R(B +0,T6i1R07h1R9c0*i1$S0JQh1'(B C-k 0,T5T1405h1M0!Q19KERBf(B ,T$0CQi1'(B, 0,T"i1M$GRA07Uh106Y1!0&h1Rd;07Qi1'KA4(P06Y1!`0!g1:d0Gi104i1GB0!Q19(B, +,T)P09Qi19!RCc0*i1$S0JQh1'(B C-y ,T`0>U1B'$0CQi1'`04U1BG0!g1(P`0CU1B!0$W190"i1M$GRA!0EQ1:ARd04i107Qi1'KA4(B. + +>> ,TEM'c0*i1$S0JQh1'(B C-k ,TKERBf(B ,T$0CQi1'04Y1(B. + +,T`0>Wh1M07Uh1(P`0CU1B!0$W190"i1M$GRA07Uh106Y1!0&h1Rd;(B: + +>> ,TEM'c0*i1$S0JQh1'(B C-y. ,Ta0Ei1G`$0EWh1M9`$M0Cl1`+M0Cl1E'd;0JQ1!JM'JRA:CC07Q14(B, ,Ta0Ei1Gc0*i1$S0JQh1'(B C-y + 0,TMU1!$0CQi1'(B. 0,T7h1R9(P`0"i1Rc(0GT108U1!RC07Uh1(PJS`9R0"i1M$GRA(B. + +0,T7h1R9(P7SM0Bh1R'dC06i1R07h1R905i1M'!RC(P`0CU1B!0$W190"i1M$GRA:R'M0Bh1R'(B, ,Ta0Ei1G0&h1R:R'M0Bh1R'MM!d;(B? +,T$S0JQh1'(B C-y ,T(P`0CU1B!0$W190"i1M$GRA07Uh106Y1!0&h1R0Eh1R0JX14(B. ,Ta05h10"i1M$GRA0!h1M9K09i1R09Qi190BQ1'$'`K0EW1MM0BYh1(B. 0,T7h1R9(B +,TJRARC6(P`0CU1B!0$W19ARd04i10MU1!b4Bc0*i1$S0JQh1'(B M-y. ,TK0EQ1'(R!07Uh107h1R9d04i1`0CU1B!0$W190"i1M$GRA0Eh1R0JX14a0Ei1G(B, +,Tc0*i1$S0JQh1'(B M-y ,T`0>Wh1M07Uh1(P`0CU1B!0$W190"i1M$GRA0!h1M9K09i1R09Qi19ARa7907Uh1(B. ,T!RCc0*i1$S0JQh1'(B M-y ,Ta05h1EP$0CQi1'(B +,T(P`0CU1B!0$W190"i1M$GRA07Uh106Y1!0&h1Rd;c9ES04Q1:07Uh10Bi1M9!0EQ1:0"Vi19d;(B. ,T`0AWh1M07h1R9d04i10"i1M$GRA07Uh105i1M'!RC!0EQ1:0$W19AR(B, +0,T7h1R90!g1d0Ah1(S`0;g1907Uh1(P05i1M'7SMPdC0!Q1:0"i1M$GRA09Qi190MU1!(B. ,T`0>U1B';0Eh1MBM0BYh1M0Bh1R'09Qi19(B, ,Ta0Ei1G7S!RCa0!i1d"(B +0,T"i1M$GRA0MWh1905h1Md;(B. + +0,T6i1R07h1R9c0*i1$S0JQh1'(B M-y 0,T4i1GB(S9G9$0CQi1'07Uh1AR!>M(B, 0,T7h1R9(P0Bi1M9!0EQ1:AR0BQ1'0(X14`0CTh1A05i190MU1!$0CQi1'(B +(0,T"i1M$GRA07Uh106Y1!0&h1Rd;0Eh1R0JX14(B). + +>> 0,T&h1RK09Vh1':CC07Q14(B, ,T`$0EWh1M9`$M0Cl1`+M0Cl1d;(B, 0,T&h1R0MU1!:CC07Q14(B. + ,Ta0Ei1Gc0*i1$S0JQh1'(B C-y ,T`0>Wh1M07Uh1(P`0CU1B!0$W19:CC07Q1407Uh106Y1!0&h1Rd;c9$0CQi1'07Uh1JM'(B. + ,Ta0Ei1Gc0*i1$S0JQh1'(B M-y 0,T+Vh1'(P`0CV1B!0$W19:CC07Q1407Uh106Y1!0&h1Rd;c9$0CQi1'aC!ARa7907Uh1(B. + ,Tc0*i1$S0JQh1'(B M-y 0,TMU1!(B, ,Ta0Ei1G04Y10Gh1R(P`0!T14MPdC0"Vi19(B. ,TEM'7Sd;`0CWh1MBf(B ,T(9!0Gh1R:CC07Q1407Uh106Y1!0&h1Rd;(B + ,Tc9$0CQi1'07Uh1JM'(P!0EQ1:0$W19AR(B, ,Ta0Ei1G7Sd;0MU1!0JQ1!CPBP(B. + 0,T6i1R07h1R905i1M'!RC(B, 0,T7h1R9MR((PEM'!S0!Q1:05Q1G`E"MR0Cl10!T1G`A905l107Qi1'07Uh1`0;g19(S9G9:G!aEPE:c0Ki10!Q1:(B + ,T$S0JQh1'(B M-y 0,T4Y1(B. + + +* ,T!RC7S0Bi1M9(B (undo) +------------------- + +0,T6i1R07h1R9d04i1a0!i1d"0"i1M$GRAd;(B, ,TaEP0$T140Gh1Rd04i17S0ER4d;(B, 0,T7h1R9JRARC67S0Bi1M90JTh1'07Uh1d04i1(B +,T`;0EUh1B9a;E'd;a0Ei1G04i1GB$S0JQh1'!RC7S0Bi1M9(B, C-x u. + +,Tb4B;C!05T1(B, ,T$S0JQh1'(B C-x u ,T7S0Bi1M9$S0JQh1'07Uh1d04i17Sd;a0Ei1GK09Vh1'$S0JQh1'(B; 0,T6i1R07h1R97S0Bi1M90+i1S05T1405h1M0!Q19(B, +,T!RC7S0Bi1M9a05h1EP$0CQi1'(P0Bi1M9$S0JQh1'd;07U1EP$S0JQh1'(B. + +,Ta05h10AU10"i1MB!`0Gi19M0BYh1JM';CP!RC(B: ,T$S0JQh1'07Uh1d0Ah1`;0EUh1B9a;E'0"i1M$GRA(Pd0Ah109Q1:CGAM0BYh104i1GB(B (0,T9Uh1CGA06V1'(B +,T$S0JQh1'!RC`$0EWh1M9`$M0Cl1`+M0Cl1aEP!RC`$0EWh1M90Ai1G9(B), ,TaEP!RCa7C!05Q1G0MQ1!IC0!g1(P06Y1!0(Q14!RCb4BCGA(B +,T`0;g19!0EXh1A07Uh1d0Ah1`0!T19(B 20 0,T5Q1G0MQ1!IC05h1M!0EXh1A(B. (0,T7Qi1'09Ui1`0>Wh1ME4(S9G9$0CQi1'"M'$S0JQh1'(B C-x u ,Tc9!RC7S(B +0,TBi1M9!RCa7C!05Q1G0MQ1!IC(B.) + +>> 0,T&h1R:CC07Q1409Ui104i1GB$S0JQh1'(B C-k, ,Ta0Ei1G0;i1M9$S0JQh1'(B C-x u. ,T:CC07Q1407Uh106Y1!0&h1Rd;(P;CR!/!0EQ1:0$W19AR(B. + +,T$S0JQh1'(B C-_ ,T`0;g190MU1!$S0JQh1'K09Vh1'JSK0CQ1:!RC7S0Bi1M9(B; ,T$S0JQh1'09Ui17S'R9`K0AW1M90!Q1:$S0JQh1'(B C-x u, +,Ta05h10Gh1RJP4G!!0Gh1Rc9!RC0;i1M9KERBf(B ,T$0CQi1'05T1405h1M0!Q19(B. 0,T"i1M`0JU1B"M'$S0JQh1'(B C-_ 0,T9Ui10$W1Mc9:R'(B +,Ta0;i190>T1A0>l1(B, ,TMR((Pd0Ah17CR:0Gh1R(P0;i1M9$S0JQh1'd04i1M0Bh1R'dC(B. 0,T9Qh190$W1M`K05X107Uh17Sc0Ki1`CR05i1M'`50CU1BA$S0JQh1'(B +C-x u ,Tc0Ki10MU1!05h1R'KR!(B. ,Tc9`$0CWh1M';ERB7R':R'*09T14(B,0,T7h1R9MR((P0;i1M9$S0JQh1'(B C-_ ,Td04i1b4B!RC!4(B +0,TMQ1!"CP(B / ,Tc9"3P07Uh1!40;Xh1A(B CONTROL. + +0,T5Q1G`E"MR0Cl10!T1G`A905l1JSK0CQ1:$S0JQh1'(B C-_ ,TaEP(B C-x u ,T(P`0;g19!RC0+i1S(S9G9$0CQi1'"M'$S0JQh1'(B. + + +* ,Ta0?i1A0"i1M0AY1E(B (file) +---------------- + +,T`0>Wh1M07Uh1(P`0!g1:0"i1M$GRA07Uh1d04i1a0!i1d"d;09Qi19(B, 0,T7h1R9(P05i1M'`0!g1:0"i1M$GRA09Qi19d0Gi1c9a0?i1A0"i1M0AY1E(B. ,Td0Ah1`0*h1909Qi19(B +0,T"i1M$GRA0!g1(PKRBd;`0AWh1M07h1R9`0ET1!c0*i10MU1aA!0Jl1(B. ,T!RC07Uh1(P`0!g1:0"i1M$GRA09Qi19E'c9a0?i1A0"i1M0AY1E(B, 0,T7h1R9(B +,T(P05i1M'(B "0,T$i19KR(B (find)" ,Ta0?i1A0"i1M0AY1E0!h1M907Uh1(P`0"i1Rd;c90"i1M$GRA09Qi19d04i1(B. (0,T9Uh1`0CU1B!0Gh1R(B ",T!RC(B +,T`0BW1M9(B (visiting)" ,Ta0?i1A0"i1M0AY1E(B.) + +,T!RC0$i19KRa0?i1A0"i1M0AY1EKARB06V1'!RC07Uh107h1R9d04i1`0Kg19`09Wi1MKR"M'a0?i1A0"i1M0AY1E@RBc90MU1aA!0Jl1(B. ,Tc9KERBf(B +,T7R'(B, 0,T4Y1`K0AW1M90Gh1R07h1R9!S0EQ1'a0!i1d"0"i1M0AY1Ec9a0?i1A0"i1M0AY1EM0BYh1(B. ,TM0Bh1R'dC0!g15RA(B, ,T!RCa0!i1d"@RBc90MU1(B +,TaA!0Jl109Qi19(Pd0Ah1$'M0BYh1(9!0Gh1R07h1R9(P(B "0,T(Q14`0!g1:(B (save)" ,Ta0?i1A0"i1M0AY1E09Qi19(B. 0,T9Uh1`0;g19!RC0*h1GBc0Ki107h1R9(B +,TJRARC6K0EU1!`0EUh1B'!RC7Sc0Ki1a0?i1A0"i1M0AY1E06Y1!a0!i1d"d0Gi1$0CVh1'f(B ,T!ER'f(B 0,T6i1R07h1R9d0Ah1d04i105i1M'!RC(B. ,Ta0Ai10Gh1R(B +0,T7h1R9(P7S!RC0(Q14`0!g1:d;a0Ei1G0!g15RA(B, 0,TMU1aA!0Jl10!g10BQ1'$'`K0EW1Ma0?i1A0"i1M0AY1E05i19)0:Q1:d0Gi1b4B`0!g1:d0Gi1c90*Wh1M(B +,TcK0Ah1(B, ,T`0ER4(B. + +0,T6i1R07h1R90JQ1'`!504Y10Jh1G90Eh1R'"M'K09i1R(M"M'0MU1aA!0Jl1(B, 0,T7h1R9(P`0Kg19:CC07Q1407Uh1`0CTh1A05i19aEP0JTi190JX1404i1GB(B +,T`0Ji19;CP(B. ,T:CC07Q1409Qi19MR((P`0CTh1A05i1904i1GB(B "--:-- TUTORIAL" ,TK0CW1MMPdC7S9M'09Qi19(B. 0,TJh1G909Ui1(B +,T"M'K09i1R(M(B, ,Tb4B;C!05T1a0Ei1G(B, ,T(PaJ4'0*Wh1Ma0?i1A0"i1M0AY1E07Uh107h1R9!S0EQ1'`0BW1M9M0BYh1(B. ,T"3P09Ui107h1R9!S0EQ1'(B +,T`0BW1M9a0?i1A0"i1M0AY1E07Uh10*Wh1M0Gh1R(B "TUTORIAL.th" 0,T+Vh1'`0;g19JS`9R"M'0$Yh10AW1M!RCc0*i10MU1aA!0Jl1(B. ,T`0AWh1M07h1R9d04i1(B +,T`0BW1M9a0?i1A0"i1M0AY1E04i1GB0MU1aA!0Jl1(B, 0,T*Wh1M"M'a0?i1A0"i1M0AY1E09Qi19(P;CR!/c907Uh107Uh1d04i1!0Eh1RGd0Gi1a0Ei1G(B. + +0,TEQ1!I3P0>T1`HI0"i1MK09Vh1'"M'$S0JQh1'`0BW1M9a0?i1A0"i1M0AY1E0$W1M(B 0,T7h1R9(P05i1M':M!0*Wh1M"M'a0?i1A0"i1M0AY1E07Uh1(P(B +,T`0BW1M9(B. ,T`CR`0CU1B!0EQ1!I3P`0*h1909Ui10Gh1R(B "0,TMh1R9MR0Cl10!T1G`A905l1(R!`$0CWh1M';ERB7R'(B" (,Tc9!C03U109Ui1(B, ,TMR0Cl1(B +0,T!T1G`A905l10!g10$W1M0*Wh1M"M'a0?i1A0"i1M0AY1E(B). ,TK0EQ1'(R!07Uh107h1R90;i1M9$S0JQh1'(B + + C-x C-f Find a file + +0,TMU1aA!0Jl1(P6RA0*Wh1Ma0?i1A0"i1M0AY1E(B. 0,T*Wh1Ma0?i1A0"i1M0AY1E07Uh107h1R90;i1M9`0"i1Rd;(P;CR!/07Uh1:CC07Q140Eh1R'"M'K09i1R(M(B. +,T:CC07Q140Eh1R'"M'K09i1R(M`0CU1B!0Gh1R0AT109T10:Q1?`?M0Cl1(B (minibuffer) ,T`0AWh1M06Y1!c0*i1'R9c90EQ1!I3P09Ui1(B. +0,T7h1R9JRARC6c0*i1$S0JQh1'07Uh1c0*i1c9!RCa0!i1d";C!05T1"M'0MU1aA!0Jl1a0!i1d"0*Wh1M"M'a0?i1A0"i1M0AY1E(B. + +,T"3P07Uh107h1R9!S0EQ1'0;i1M90*Wh1Ma0?i1A0"i1M0AY1E(B (,TK0CW1M0"i1M0AY1Ec4f(B ,Tc90AT109T10:Q1?`?M0Cl109Ui1(B), 0,T7h1R9JRARC6(B +,TB!`0ET1!$S0JQh1'04i1GB!RCc0*i1$S0JQh1'(B C-g. + +>> 0,T;i1M9$S0JQh1'(B C-x C-f, ,Ta0Ei1G0;i1M9$S0JQh1'(B C-g. 0,T9Uh1`0;g19!RCB!`0ET1!0AT109T10:Q1?`?M0Cl1(B, ,TaEP(B + ,TB!`0ET1!$S0JQh1'(B C-x C-f 0,T7Uh1!S0EQ1'c0*i10AT109T10:Q1?`?M0Cl1M0BYh1(B. ,T08l10$W1M07h1R9(Pd0Ah1d04i1`0BW1M9(B + ,Ta0?i1A0"i1M0AY1Ec4f(B. + +,T`0AWh1M07h1R9d04i10;i1M90*Wh1Ma0?i1A0"i1M0AY1E`J0Cg1(a0Ei1G(B, ,T!40;Xh1A(B ,T`0>Wh1M07Uh1(P0JTi190JX14$S0JQh1'(B. ,Ta0Ei1G$S0JQh1'(B +C-x C-f 0,T!g1(P7S'R9(B, ,TaEP(P`0BW1M9a0?i1A0"i1M0AY1E07Uh107h1R9d04i1`0EW1M!d0Gi1(B. 0,TAT109T10:Q1?`?M0Cl1(P(B +,TKRBd;`0AWh1M`J0Cg1(0JTi19$S0JQh1'(B C-x C-f. + +,TK0EQ1'(R!09Qi19d0Ah19R9`09Wi1MKR"M'a0?i1A0"i1M0AY1E0!g1(P;CR!/:9K09i1R(M(B, ,TaEP07h1R90!g1(PJRARC6a0!i1d"(B +,T`09Wi1MKRd04i1(B. ,T`0AWh1M07h1R905i1M'!RC(Pa0!i1d"0"i1M$GRAM0Bh1R'6RGC(B, 0,T!g1c0Ki1c0*i1$S0JQh1'(B + + C-x C-s Save the file + +,T$S0JQh1'09Ui1(P7SJS`9R0"i1M$GRA07Uh1M0BYh1c90MU1aA!0Jl1`0"i1Rd;`0!g1:d0Gi1c9a0?i1A0"i1M0AY1E(B. ,Tc9!RC!CP7S`0*h1909Ui1c9(B +,T$0CQi1'aC!0JX14(B, 0,TMU1aA!0Jl1(P`;0EUh1B90*Wh1Ma0?i1A0"i1M0AY1E05i19)0:Q1:`0>Wh1M0Gh1R(Pd04i1$'d0Gi1(B. 0,T*Wh1McK0Ah109Qi1905Qi1'0"Vi19b4B(B +,T!RC`05T1A(B "~" ,T`0"i1Rd;07i1RB0*Wh1Ma0?i1A0"i1M0AY1E05i19)0:Q1:(B. + +,T`0AWh1M7S!RC0(Q14`0!g1:`0CU1B:0Ci1MBa0Ei1G(B, 0,TMU1aA!0Jl1(P0>T1A0>l10*Wh1Ma0?i1A0"i1M0AY1E09Qi19(B. 0,T7h1R9$GC(P0(Q14`0!g1:0"i1M0AY1E(B +0,T:h1MBf(B, ,T`0>Wh1M0Gh1R07h1R9(Pd04i1d0Ah105i1M'`0JU1B'R9d;AR!09Q1!KR!CP::`0!T140"Q140"i1M'(B. + +>> 0,T;i1M9$S0JQh1'(B C-x C-s, ,T`0>Wh1M0(Q14`0!g1:JS`9R0$Yh10AW1M!RCc0*i1"M'07h1R9(B. + ,T(P;CR!/(B "Write ...TUTORIAL.th" 0,T7Uh1:CC07Q140Eh1R'0JX14"M'K09i1R(M(B. + +0,T"i1M0JQ1'`!5(B: ,Tc9:R'CP::(B, ,T!RC0;i1M9$S0JQh1'(B C-x C-s ,T(P7Sc0Ki1K09i1R(M*P0'Q1!aEP07h1R9(Pd0Ah1d04i10CQ1:(B +0,T"i1M$GRAc4f(B ,T(R!0MU1aA!0Jl1(B. 0,T9Uh1aJ4'0Gh1R(B "feature" ,T"M'CP::;0/T10:Q105T1!RC07Uh1`0CU1B!0Gh1R(B "flow +control" ,Td04i10"Q14"GR'!RC7S'R9"M'(B C-s ,TaEPd0Ah1;0Eh1MBc0Ki1!0EQ1:0JYh10MU1aA!0Jl10MU1!(B. ,Tc0*i1$S0JQh1'(B C-g +,T`0>Wh1Ma0!i1d"d0Ah1c0Ki1K09i1R(M*P0'Q1!(B. ,Ta0Ei1G04Y1:707Uh10Gh1R04i1GB(B "Spontaneous Entry to +Incremental Search" ,Tc90$Yh10AW1M"M'0MU1aA!0Jl10+Vh1'(Pa9P9S!RC0(Q14!RC`0!Uh1BG0!Q1:(B "feature" 0,T9Ui1(B. + +0,T7h1R9JRARC6(P`0BW1M9a0?i1A0"i1M0AY1E07Uh10AU1M0BYh1a0Ei1G(B, ,T`0>Wh1M07Uh1(P04Y1K0CW1Ma0!i1d"(B. 0,T7h1R9JRARC6(P`0BW1M9(B +,Ta0?i1A0"i1M0AY1E07Uh10BQ1'd0Ah1;CR!/0!g1d04i1(B. 0,T9Uh1`0;g19!RCJ0Ci1R'a0?i1A0"i1M0AY1EcK0Ah1"M'0MU1aA!0Jl1(B: ,T`0BW1M9a0?i1A0"i1M0AY1E(B, +0,T+Vh1'(P`0CTh1A05i1904i1GBK09i1R(M0Gh1R'`;0Eh1R(B, ,Ta0Ei1G7S!RCa7C!0"i1M$GRA`0>Wh1M07Uh1(PJ0Ci1R'`0;g19a0?i1A0"i1M0AY1E05h1Md;(B. +,T`0AWh1M07h1R90JQh1'c0Ki1(B "0,T(Q14`0!g1:(B (save)" ,Ta0?i1A0"i1M0AY1E(B, 0,TMU1aA!0Jl10(V1'(PJ0Ci1R'a0?i1A0"i1M0AY1E04i1GB0"i1M$GRA07Uh1(B +0,T7h1R9d04i10;i1M9`0"i1Rd;(B. ,T(R!09Ui1d;(B, 0,T7h1R9JRARC6(P05Q140JT19c(EM'a0!i1d"a0?i1A0"i1M0AY1E07Uh10AU1M0BYh1a0Ei1Gd04i1(B. + + +* 0,T:Q1?`?M0Cl1(B (buffer) +----------------- + +0,T6i1R07h1R9`0BW1M90MU1!a0?i1A0"i1M0AY1Eb4Bc0*i1$S0JQh1'(B C-x C-f, ,Ta0?i1A0"i1M0AY1EaC!(P0BQ1'$'M0BYh1c90MU1aA!0Jl1(B. 0,T7h1R9(B +,TJRARC6(PJ0EQ1:!0EQ1:d;d04i10MU1!b4Bc0*i1$S0JQh1'(B C-x C-f. 0,TGT108U109Ui1(P7Sc0Ki107h1R9JRARC6`0BW1M9a0?i1A0"i1M0AY1E(B +,T@RBc90MU1aA!0Jl1d04i1(S9G9K09Vh1'(B. + +>> ,TJ0Ci1R'a0?i1A0"i1M0AY1EaEPc0Ki10*Wh1M0Gh1R(B "foo" ,Tb4B!RC0;i1M9$S0JQh1'(B C-x C-f foo . + ,Ta0Ei1G0;i1M90"i1M$GRA(B, ,Ta0!i1d"(B, ,TaEP0(Q14`0!g1:(B "foo" ,Tb4B!RC0;i1M9$S0JQh1'(B C-x C-s. + 0,TJX1407i1RB(B, 0,T;i1M9$S0JQh1'(B C-x C-f TUTORIAL ,T`0>Wh1M(Pd04i10Bi1M9!0EQ1:AR07Uh10"i1M$GRA(B + ,T"M'0$Yh10AW1M!RCc0*i1(B. + +0,TMU1aA!0Jl1`0!g1:0"i1M$GRA"M'a05h1EPa0?i1A0"i1M0AY1E@RBc90JTh1'f(B (object) ,TK09Vh1'(B, 0,T+Vh1'`0CU1B!0Gh1R(B "0,T:Q1?`?M0Cl1(B +(buffer)". ,T!RC`0BW1M9a0?i1A0"i1M0AY1E`0;g19!RCJ0Ci1R'0:Q1?`?M0Cl1cK0Ah1@RBc90MU1aA!0Jl1(B. ,Tc9!RC07Uh1(P04Y1(B +,TCRB!RC"M'0:Q1?`?M0Cl107Uh10AU1M0BYh1c90MU1aA!0Jl109Qi19(B, ,Tc0Ki10;i1M9$S0JQh1'(B: + + C-x C-b List buffers + +>> ,TEM'0;i1M9$S0JQh1'(B C-x C-b 0,T4Y1(B. + +0,T4Y10Gh1Ra05h1EP0:Q1?`?M0Cl10AU10*Wh1M0Gh1RMPdC(B, ,TaEP:R'0MQ190!g1`0;g190*Wh1M"M'a0?i1A0"i1M0AY1E07Uh10AU1`09Wi1MKR09Qi19f(B ,TM0BYh1(B. ,T:R'(B +0,T:Q1?`?M0Cl1d0Ah1d04i1`0!Uh1BG0"i1M'0!Q1:a0?i1A0"i1M0AY1E(B. 0,T5Q1GM0Bh1R'`0*h19(B, 0,T:Q1?`?M0Cl107Uh10AU10*Wh1M0Gh1R(B "*Buffer List*" +,Td0Ah10AU1a0?i1A0"i1M0AY1Ec4f(B 0,T7Qi1'0JTi19(B. 0,T9Uh1`0;g190:Q1?`?M0Cl10+Vh1':CC0(X1`09Wi1MKR"M'CRB!RC"M'0:Q1?`?M0Cl107Uh106Y1!J0Ci1R'(B +0,T4i1GB$S0JQh1'(B C-x C-b. 0,T"i1M$GRAc4f(B 0,T7Uh107h1R9`0Kg19:9K09i1R(M"M'0MU1aA!0Jl1(P;CR!/M0BYh1`0;g190Jh1G9K09Vh1'(B +,T"M'0:Q1?`?M0Cl1c40:Q1?`?M0Cl1K09Vh1'`JAM(B. + +>> ,TEM'c0*i1$S0JQh1'(B C-x 1 ,T`0>Wh1M07Uh1(P!S0(Q14CRB!RC"M'0:Q1?`?M0Cl1(B. + +0,T6i1R07h1R9a0!i1d"0"i1M$GRAc9a0?i1A0"i1M0AY1EK09Vh1'(B, ,Ta0Ei1G`0BW1M90MU1!a0?i1A0"i1M0AY1EK09Vh1'(B, 0,TMU1aA!0Jl10BQ1'd0Ah1d04i10(Q14`0!g1:(B +0,T"i1M$GRA"M'a0?i1A0"i1M0AY1EaC!(B. 0,T"i1M$GRA07Uh106Y1!a0!i1d"d;(P0BQ1'$'M0BYh1c90MU1aA!0Jl1(B, ,Tc90:Q1?`?M0Cl1JSK0CQ1:(B +,Ta0?i1A0"i1M0AY1E09Qi19(B. ,T!RCJ0Ci1R'K0CW1M!RCa0!i1d""M'0:Q1?`?M0Cl1JSK0CQ1:a0?i1A0"i1M0AY1E07Uh1JM'd0Ah1d04i10AU1Wh1M07Uh1(Pd04i1c0*i1$S0JQh1'(B C-x C-s ,Tc9!RC0(Q14`0!g1:(B. +0,T4Q1'09Qi19`CR0(V1'`50CU1BA$S0JQh1'(B + + C-x s Save some buffers + +,T$S0JQh1'(B C-x s ,T(P6RA07h1R9`0!Uh1BG0!Q1:0:Q1?`?M0Cl107Uh1d04i10CQ1:!RCa0!i1d"a05h10BQ1'd0Ah1d04i10CQ1:!RC0(Q14`0!g1:(B. 0,TMU1(B +,TaA!0Jl1(P6RA07h1R9(B, ,TJSK0CQ1:a05h1EP0:Q1?`?M0Cl104Q1'!0Eh1RG(B, 0,TGh1R(P0(Q14`0!g1:K0CW1Md0Ah1(B. + +>> ,Ta7C!0"i1M$GRA0JQ1!K09Vh1':CC07Q14(B, ,Ta0Ei1G0;i1M9$S0JQh1'(B C-x s. + 0,TMU1aA!0Jl1(P6RA07h1R90Gh1R(P0(Q14`0!g1:0:Q1?`?M0Cl10*Wh1M(B TUTORIAL ,TdKA(B. + ,T5M:0Gh1Rc0*h1b4B!RC0;i1M9(B "y". + + +* ,T!RC`0>Th1A0*X14$S0JQh1'(B +-------------- + +0,TAU1$S0JQh1'"M'0MU1aA!0Jl1M0BYh10MU1!AR!ARB(9`0!T19!0Gh1R07Uh1(PJRARC6!S0!Q1:d04i104i1GB0MQ1!"CP;CPJA0!Q1:0MQ1!"CP(B +,T$M9b7CE(B (control character) ,TaEPM0@T10MQ1!"CP(B (meta character). 0,TMU1aA!0Jl1c0*i1!RC(B +,T;CPJA0!Q1:$S0JQh1'`J0CT1A(B (eXtend command). ,T!RC`J0CT1A09Ui1`0;g19d;d04i1JM'0EQ1!I3P(B: + + C-x ,T!RC`J0CT1A0MQ1!"CP(B (Character eXtend). ,T5RA04i1GBK09Vh1'05Q1G0MQ1!IC(B. + M-x ,T!RC`J0CT1A04i1GB0*Wh1M$S0JQh1'(B (Named command eXtend). ,T5RA04i1GB0*Wh1M`05g1A(B. + +,T$S0JQh1'`K0Eh1R09Ui1b4B07Qh1Gd;a0Ei1G(P0AU1;CPbB*09l1(B, ,Ta05h10AQ1!(P0AU1bM!RJc0*i109i1MB!0Gh1R$S0JQh1'05h1R'f(B 0,T7Uh107h1R9d04i1(B +,T`0CU1B90CYi1d;a0Ei1G(B. 0,T7h1R9d04i1>:d;a0Ei1GJM'$S0JQh1'(B: ,T$S0JQh1'JSK0CQ1:!RC0(Q14!RC0!Q1:a0?i1A0"i1M0AY1E(B C-x C-f +,TJSK0CQ1:!RC`0BW1M9(B (Find) ,TaEP(B C-x C-s ,TJSK0CQ1:!RC0(Q14`0!g1:(B (Save). 0,TMU1!05Q1GM0Bh1R'K09Vh1'0!g1(B +0,T$W1M$S0JQh1'07Uh1c0*i1c9!RC`0ET1!c0*i10MU1aA!0Jl1(B--,T$S0JQh1'(B C-x C-c. (,Td0Ah105i1M'`0;g190Kh1G'0Gh1R0"i1M0AY1E07Uh107h1R9d04i1(B +,Ta0!i1d"d;(P0JY1-KRB(B; ,T$S0JQh1'(B C-x C-c ,T(P`J9Mc0Ki10(Q14`0!g1:a0?i1A0"i1M0AY1E07Uh106Y1!a0!i1d"d;0!h1M907Uh1(P0JTi190JX14(B +0,TMU1aA!0Jl1(B.) + +,T$S0JQh1'(B C-z ,T`0;g19$S0JQh1'07Uh1c0*i1c9!RCMM!(R!0MU1aA!0Jl1`0;g19!RC0*Qh1G$CRG(B *temporarily*--,T)P09Qi19(B +0,T7h1R9JRARC6!0EQ1:d;0JYh10MU1aA!0Jl1d04i10MU1!K0EQ1'(R!09Qi19(B. + +,TJSK0CQ1:CP::07Uh1M09X1-R5c0Ki1c0*i1$S0JQh1'(B, C-z "suspends" 0,TMU1aA!0Jl1(B; 0,T9Qh190$W1M!RC!0EQ1:d;0BQ1'`*E0El1(B +(shell) ,Tb4Bd0Ah1d04i17SERB0MU1aA!0Jl1(B. ,Tc9`*E0El107Qh1Gd;(B, 0,T7h1R9JRARC60CU10+Y1A(B (resume) 0,TMU1aA!0Jl1(B +,Td04i104i1GB$S0JQh1'(B `fg' ,TK0CW1M04i1GB$S0JQh1'(B `%emacs'. + +,TJSK0CQ1:CP::07Uh1d0Ah10AU10?Q1'0!l10*Q19(B "suspend", ,T$S0JQh1'(B C-z ,T(PJ0Ci1R'0+Q1:`*E0El1(B (subshell) +,T@RBc05i10MU1aA!0Jl1`0>Wh1Mc0Ki107h1R90AU1bM!RJ4S`09T19'R9b;Ca!CA0MWh190!h1M9a0Ei1G0$h1MB!0EQ1:AR0BQ1'0MU1aA!0Jl10MU1!$0CQi1'(B; +0,T+Vh1'd0Ah1c0*h1!RC(B ",TMM!(R!(B (exit)" 0,TMU1aA!0Jl1(0CT1'(B. ,Tc9!C03U109Ui1(B, ,T$S0JQh1'`*E0El1(B `exit' ,T`0;g19$S0JQh1'(B +,T;C!05T107Uh1c0*i1c9!RC!0EQ1:d;0BQ1'0MU1aA!0Jl1(R!0+Q1:`*E0El1(B. + +,Tc0*i1$S0JQh1'(B C-x C-c 0,T!g105h1M`0AWh1M07h1R905i1M'!RC(P`0ET1!c0*i10MU1aA!0Jl1(0CT1'f(B. 0,TGT108U109Ui1`0;g190GT108U107Uh106Y1!05i1M'c9(B +,T!RC07Uh1(P`0ET1!c0*i10MU1aA!0Jl1(B, ,Td0Ah10Gh1R0MU1aA!0Jl109Qi19(P06Y1!`0CU1B!c0*i1(R!b;Ca!CA0(Q14!RC`AE0El1(B (mail +handling programs) ,TK0CW1Mb;Ca!CAMCC6;CPbB*09l1(B (utility programs) 0,T5h1R'f(B, +,T`09Wh1M'(R!0Gh1Rb;Ca!CA`K0Eh1R09Ui1d0Ah10AU10GT108U1!RC0(Q14!RC0!Q1:0MU1aA!0Jl1d04i1b4B5C'(B. ,Tc9J@R>!RC7S'R9(B +,T;C!05T1(B, 0,T6i1R07h1R9d0Ah1d04i105i1M'!RC(P`0ET1!c0*i10MU1aA!0Jl1(0CT1'f(B, 0,T7h1R90!g1$GC(P(B suspend ,Tb4B!RCc0*i1(B +,T$S0JQh1'(B C-z ,Ta79!RC`0ET1!c0*i1d;`EB(B. + +0,TBQ1'0AU1$S0JQh1'07Uh1M0BYh1c90*X14$S0JQh1'(B C-x 0,TMU1!AR!(B. 0,T5h1Md;09Ui1`0;g19CRB!RC$S0JQh1'07Uh107h1R9d04i1`0CU1B90CYi1d;a0Ei1G(B: + + C-x C-f ,T`0BW1M9a0?i1A0"i1M0AY1E(B (Find file). + C-x C-s 0,T(Q14`0!g1:a0?i1A0"i1M0AY1E(B (Save file). + C-x C-b ,T7SCRB!RC0:Q1?`?M0Cl1(B (List buffers). + C-x C-c ,T`0ET1!c0*i10MU1aA!0Jl1(B (Quit Emacs). + C-x 1 ,TE:K09i1R(M07Qi1'KA4b4B$'M0BYh1d0Gi1K09Vh1'K09i1R(M(B + (Delete all but one window). + C-x u ,T7S0Bi1M9(B (Undo). + +,T$S0JQh1'07Uh10AU10*Wh1M$S0JQh1'`J0CT1A09Ui1`0;g19$S0JQh1'07Uh1c0*i1d0Ah10$h1MB0:h1MB09Q1!(B, ,TK0CW1M`0;g19$S0JQh1'07Uh1c0*i1`)>RPc9:R'bKA4(B +,T`07h1R09Qi19(B. 0,T5Q1GM0Bh1R'K09Vh1'"M'$S0JQh1'09Ui10$W1M$S0JQh1'`;0EUh1B9a79(B-,TJRB0MQ1!"CP(B (replace-string), +0,T+Vh1'`0;g19!RC`;0EUh1B9a79JRB0MQ1!"CPK09Vh1'04i1GB0MU1!JRB0MQ1!"CPK09Vh1'07Qi1'KA4(B. ,T`0AWh1M07h1R90;i1M9$S0JQh1'(B M-x, +0,TMU1aA!0Jl1aJ4'(B M-x 0,T7Uh1:CC07Q140Eh1R'0JX14"M'K09i1R(M(B, ,Tc907Uh109Ui107h1R9(P05i1M'0>T1A0>l10*Wh1M"M'$S0JQh1'(B; ,Tc9!C03U109Ui1(B +0,T$W1M(B "replace-string". 0,T7h1R9MR((P0>T1A0>l1(B "repl s" ,Ta0Ei1G0MU1aA!0Jl1(P`05T1A0*Wh1M$S0JQh1'c0Ki1(B +,T`05g1A`M'd04i1(B. 0,TJTi190JX14$S0JQh1'04i1GB!RC!40;Xh1A(B . + +,T$S0JQh1'`;0EUh1B9a79(B-,TJRB0MQ1!"CP(B (replace-string) 0,T5i1M'!RCJM'MR0Cl10!T1G`A905l1(B--,TJRB0MQ1!"CP(B +0,T7Uh1(P06Y1!`;0EUh1B9a79(B, ,TaEPJRB0MQ1!"CP07Uh1(Pc0*i1`;0EUh1B9a79(B. 0,T7h1R9(P05i1M'0JTi190JX14!RC0;i1M9a05h1EPMR0Cl1(B +0,T!T1G`A905l104i1GB!RC!40;Xh1A(B . + +>> ,T`$0EWh1M9`$M0Cl1`+M0Cl1d;0BQ1':CC07Q14`;0Eh1R07Uh1M0BYh1c05i1:CC07Q1409Ui1d;JM':CC07Q14(B. + ,Ta0Ei1G0;i1M9$S0JQh1'(B M-x repl schangedaltered. + + 0,TJQ1'`!504Y1!RC`;0EUh1B9a;E'"M':CC07Q1409Ui1(B: 0,T7h1R9d04i1`;0EUh1B9a79$S0Gh1R(B c-h-a-n-g-e-d + 0,T4i1GB$S0Gh1R(B "altered" ,Tc907X1!07Uh107Uh1;CR!/05Qi1'a05h15SaK09h1'07Uh1`$M0Cl1`+M0Cl1M0BYh10;Q1(0(X10:Q19(B. + + +* 0,T(Q14`0!g1:0MQ15b90AQ105T1(B (auto save) +------------------------- + +,T`0AWh1M07h1R9d04i1a0!i1d"a0?i1A0"i1M0AY1Ea0Ei1G(B, ,Ta05h107h1R90BQ1'd0Ah1d04i10(Q14`0!g1:(B, ,Ta0?i1A0"i1M0AY1E`K0Eh1R09Qi19MR(0JY1-KRBd04i106i1R(B +,T`$0CWh1M'$MA0>T1G`5M0Cl1"M'07h1R9`0!T140"Q140"i1M'(B. ,T`0>Wh1M0;i1M'0!Q19`K05X1!RC03l1`0*h1909Ui1(B, 0,TMU1aA!0Jl17S!RC`0"U1B9(B +0,T"i1M$GRAJSK0CQ1:a05h1EPa0?i1A0"i1M0AY1E07Uh107h1R9!S0EQ1'7S!RCa0!i1d"M0BYh1E'c9a0?i1A0"i1M0AY1E(B "0,T(Q14`0!g1:0MQ15b90AQ105T1(B +(auto save)". 0,T*Wh1M"M'a0?i1A0"i1M0AY1E0(Q14`0!g1:0MQ15b90AQ105T1(B (auto save file) ,T(P06Y1!05Qi1'cK0Ah1c0Ki1(B +0,TAU10MQ1!"CP(B "#" ,TM0BYh107Qi1'0"i1R'K09i1RaEP0"i1R'K0EQ1'0*Wh1Ma0?i1A0"i1M0AY1E05i19)0:Q1:(B; 0,T5Q1GM0Bh1R'`0*h19(B, 0,T6i1R0*Wh1M"M'(B +,Ta0?i1A0"i1M0AY1E09Qi19`0;g19(B "hello.c", 0,T*Wh1M"M'a0?i1A0"i1M0AY1E0(Q14`0!g1:0MQ15b90AQ105T1(P`0;g19(B "#hello.c#". +,T`0AWh1M07h1R97S!RC0(Q14`0!g1:a0?i1A0"i1M0AY1E04i1GB0GT108U1!RC;C!05T1a0Ei1G(B, 0,TMU1aA!0Jl1(PE:a0?i1A0"i1M0AY1E0(Q14`0!g1:0MQ15b90AQ105T1(B +0,T9Qi19`0JU1B(B. + +0,T6i1R`$0CWh1M'$MA0>T1G`5M0Cl1`0!T140"Q140"i1M'(B, 0,T7h1R9JRARC60!Yi1(B (recover) ,T(R!a0?i1A0"i1M0AY1E0(Q14`0!g1:(B +0,TMQ15b90AQ105T109Qi19d04i104i1GB!RC`0BW1M9a0?i1A0"i1M0AY1Ea::;C!05T1(B (,Ta0?i1A0"i1M0AY1E07Uh107h1R9!S0EQ1'a0!i1d"M0BYh1(B, ,Td0Ah1c0*h1(B +,Ta0?i1A0"i1M0AY1E0(Q14`0!g1:0MQ15b90AQ105T1(B), ,Ta0Ei1G0>T1A0>l1$S0JQh1'(B M-x recover file. ,T`0AWh1M0AU1!RC(B +,T6RA`0>Wh1M!RC0BW190BQ19(B, 0,T>T1A0>l1$S0Gh1R(B yes ,T`0>Wh1M4S`09T19!RC05h1MaEP7S!RC0!Yi10"i1M0AY1E07Uh106Y1!(B +0,T(Q14`0!g1:0MQ15b90AQ105T109Qi19(B. + + +* ,T:0CT1`G3JP07i1M9(B (echo area) +------------------------ + +0,TMU1aA!0Jl10Mh1R9$S0JQh1';CPJA(B (multicharacter command) ,T"3P07Uh107h1R9!S0EQ1'0>T1A0>l1`0"i1Rd;0*i1Rf(B, +0,TMU1aA!0Jl1(PaJ4'$S0JQh1'05h1R'f(B 0,T7Uh107h1R9d04i10>T1A0>l1`0"i1Rd;5C'0Jh1G90Eh1R'"M'K09i1R(M5C':0CT1`G307Uh1`0CU1B!0Gh1R(B +",T:0CT1`G3JP07i1M9(B (echo area)". ,T:0CT1`G3JP07i1M90$W1M:CC07Q140Eh1R'0JX14"M'K09i1R(M(B. + + +* ,T:CC07Q14aJ4'bKA4(B (mode line) +--------------------------- + +,T:CC07Q1407Uh1M0BYh1`K09W1M:0CT1`G3JP07i1M909Qi19`0CU1B!0Gh1R(B "mode line". ,T:CC07Q14aJ4'bKA4(PaJ4'(B +0,T"i1M$GRA:R'M0Bh1R'c90EQ1!I3P(B: + +--:** TUTORIAL (Fundamental)--L670--58%---------------- + +,T:CC07Q1409Ui1c0Ki10"i1M0AY1E07Uh1`0;g19;CPbB*09l1`0!Uh1BG0!Q1:J6R9@R>"M'0MU1aA!0Jl1aEP0"i1M$GRA07Uh107h1R9!S0EQ1'7S!RC(B +,Ta0!i1d"M0BYh1(B. + +0,T7h1R97CR:a0Ei1G0Gh1R0*Wh1Ma0?i1A0"i1M0AY1E0AU1$GRAKARBM0Bh1R'dC(B--0,T$W1Ma0?i1A0"i1M0AY1E07Uh107h1R9d04i1`0BW1M9M0BYh1(B. -NN%-- +0,T:h1':M!5SaK09h1'0;Q1(0(X10:Q19c90"i1M$GRA"M'07h1R9(B; 0,T9Qh19KARB$GRA0Gh1R0AU10"i1M$GRA(B NN ,T`;M0Cl1`+905l107Uh1M0BYh1(B +,T`K09W1M5SaK09h1'0JY1'0JX14"M'K09i1R(M(B. 0,T6i1R5SaK09h1'0JY1'0JX14"M'a0?i1A0"i1M0AY1EM0BYh1:9K09i1R(M(B, ,T(P;CR!/(B +--Top-- ,Ta7907Uh1(P`0;g19(B --00%--. 0,T6i1R5SaK09h1'0Eh1R'0JX14"M'0"i1M$GRAM0BYh1:9K09i1R(M(B, ,T(P;CR!/(B +--Bot--. 0,T6i1R07h1R9!S0EQ1'`0BW1M9a0?i1A0"i1M0AY1E07Uh1`0Eg1!AR!(90"i1M$GRA07Qi1'KA4M0BYh1:9K09i1R(M(B, ,T:CC07Q14(B +,TaJ4'bKA4(PaJ4'0Gh1R(B --All--. + +,T`$0CWh1M'KARB4M!0(Q19:0CT1`G305i19f(B ,T"M':CC07Q14aJ4'bKA4KARB$GRA0Gh1R07h1R9d04i17S!RC(B +,T`;0EUh1B9a;E'`09Wi1MKRc90"i1M$GRAa0Ei1G(B. ,TKR!07h1R9`0>Th1'`0BW1M9K0CW1M0(Q14`0!g1:a0?i1A0"i1M0AY1E(B, 0,TJh1G907Uh1(B +,Td04i1!0Eh1RG06V1'09Qi19(Pd0Ah10AU1`$0CWh1M'KARB4M!0(Q19;CR!/(B, ,T(P0AU1a05h1`0Ji19;CP(B (dashes). + +0,TJh1G907Uh1M0BYh1CPK0Gh1R'G'`0Eg1:@RBc9:CC07Q14aJ4'bKA4(P:M!07h1R90Gh1R07h1R9!S0EQ1'M0BYh1c9bKA4!RCa0!i1d"(B +(editing mode) ,TMPdC(B. ,TbKA4b4B;0CT1BRB(B (default mode) 0,T$W1M(B Fundamental 0,T7Uh1(B +0,T7h1R9!S0EQ1'c0*i1M0BYh1c9"3P09Ui1(B. 0,T9Uh10$W1M05Q1GM0Bh1R'"M'(B ",TbKA4K0EQ1!(B (major mode)". + +0,TMU1aA!0Jl10AU1bKA4K0EQ1!M0BYh1KERBbKA4(B. 0,T:i1R'c0*i1JSK0CQ1:!RCa0!i1d"c9@RIRaEP(B/,TK0CW1M0"i1M$GRA*09T1405h1R'f(B, +,T`0*h19(B Lisp mode, Text mode, ,T`0;g1905i19(B. 0,T7h1R9(PM0BYh1c9bKA4K0EQ1!c4bKA4K0EQ1!K09Vh1'c9`GER(B +,T`04U1BG(B, ,TaEP0*Wh1M"M'bKA4K0EQ1!09Qi19(P;CR!/M0BYh107Uh1:CC07Q14aJ4'bKA4(B, 0,T7Uh107Uh10AU1(B "Fundamental" +,T;CR!/M0BYh1c9"3P09Ui1(B. + +,Ta05h1EPbKA4K0EQ1!(P7Sc0Ki1$S0JQh1'c0Ki1> M-x thai-text-mode + +,Td0Ah105i1M'0!Q1'GE(B, ,T$S0JQh1'07Uh107h1R9!S0EQ1'0HV1!IRM0BYh109Ui1d0Ah1d04i1c0Ki1Wh1M0Mh1R9CRBEP`0MU1B4"M'bKA4K0EQ1!0;Q1(0(X10:Q1907Uh107h1R9M0BYh1(B. + +>> ,Tc0*i1$S0JQh1'(B C-u C-v ,TK09Vh1'$0CQi1'K0CW1MAR!!0Gh1R09Qi19`0>Wh1M07Uh1(P"0BQ1::CC07Q1409Ui10"Vi19d;0BQ1'0Jh1G9:9"M'K09i1R(M(B. +>> 0,T;i1M9$S0JQh1'(B C-h m, ,T`0>Wh1M04Y10Gh1R(B Text mode 0,T5h1R'(R!(B Fundamental mode ,TM0Bh1R'dC(B. +>> 0,T;i1M9$S0JQh1'(B C-x 1 ,T`0>Wh1M"0(Q14`M!JRC0*Ui1a('MM!(R!K09i1R(M(B. + +0,T7Uh1`0CU1B!0Gh1RbKA4K0EQ1!09Qi190!g1`>CRP0Gh1R0AU1bKA40Bh1MB(B (minor mode) 0,TMU1!(B. ,TbKA40Bh1MBd0Ah1d04i1`0;g19(B +0,T5Q1G`0EW1M!c9bKA4K0EQ1!(B, ,T`09Wh1M'(R!0Gh1R0AU1!RC`;0EUh1B9d;`0>U1B'`0Eg1!09i1MB`07h1R09Qi19(B. ,Ta05h1EPbKA40Bh1MBJRARC6(B +,T(P`0;T14K0CW1M0;T14d04i1@RBc905Q1G`M'(B, 0,T$W1Ma05h1EPbKA40Bh1MB(P7S'R9b4B0MT1JCP(R!0!Q19(B, ,TaEP(B +,T`0;g190MT1JCP(R!bKA4K0EQ1!04i1GB(B. ,T)P09Qi1907h1R9JRARC6d0Ah1c0*i1bKA40Bh1MB`EB(B, ,TK0CW1MK09Vh1'bKA40Bh1MB(B, ,TK0CW1M(B +,TbKA40Bh1MBKERBf(B ,TbKA4RPJSK0CQ1:c0*i1a0!i1d"0"i1M$GRA07Uh1`0;g19@RIR0MQ1'!DI(B, 0,T$W1M(B +,TbKA40(Q14:CC07Q140MQ15b90AQ105T1(B (Auto Fill). ,T`0AWh1MbKA409Ui17S'R9(B, 0,TMU1aA!0Jl1(Pa0:h1':CC07Q14CPK0Gh1R'(B +,T$S0MQ15b90AQ105T1(B, 0,T7Q1907U107Uh107h1R9a7C!0"i1M$GRAaEP7Sc0Ki1:CC07Q1409Qi19BRG`0!T19d;(B. + +0,T7h1R9JRARC6`0;T14bKA40(Q14:CC07Q140MQ15b90AQ105T1d04i1b4B!RCc0*i1$S0JQh1'(B M-x auto fill +mode. ,T`0AWh1MbKA409Ui17S'R9M0BYh1(B, 0,T7h1R9JRARC60;T14bKA409Ui1d04i1b4B!RCc0*i1$S0JQh1'(B M-x +auto fill mode. 0,T6i1RbKA409Ui10;T14M0BYh1(B, ,T$S0JQh1'09Ui1(P`0;T14bKA4c0Ki17S'R9(B, ,TaEP06i1R(B +,TbKA409Ui1`0;T14M0BYh1(B, ,T$S0JQh1'09Ui10!g1(P0;T14bKA4(B. 0,T$W1M0>Y14d04i10Gh1R$S0JQh1'09Ui1(B "toggles the mode". + +>> 0,T;i1M9$S0JQh1'(B M-x auto fill mode 0,T4Y1(B. ,Ta0Ei1G0;i1M9(B "asdf " 0,T+i1Sf(B 0,T!Q19d;(9(B + 0,T7h1R9`0Kg190Gh1R:CC07Q1409Qi1906Y1!a0:h1'MM!`0;g19JM':CC07Q14(B. 0,T7h1R905i1M'c0Jh1`0Gi19GCC$`>CRP0Gh1R!RC0(Q14(B + ,T:CC07Q140MQ15b90AQ105T1(Pa0:h1':CC07Q145C'`0Gi19GCC$`07h1R09Qi19(B. + +,T"M:`0> 0,T;i1M9$S0JQh1'(B C-x f ,T>0Ci1MA04i1GBMR0Cl10!T1G`A905l1(B 20. (C-u 2 0 C-x f). + ,Ta0Ei1G0;i1M90"i1M$GRAaEP(P`0Kg190Gh1R0MU1aA!0Jl10(Q14:CC07Q1407Uh10AU1"9R4(B 20 0,T5Q1G0MQ1!IC(B. ,Ta0Ei1G05Qi1'"M:(B + ,T`0> ,T`$0EWh1M9`$M0Cl1`+M0Cl1`0"i1Rd;0BQ1'0Bh1MK09i1R0"i1R':9(B, ,Ta0Ei1G0;i1M9$S0JQh1'(B M-q. + + +* ,T!RC0JW1:0$i19(B (searching) +--------------------- + +0,TMU1aA!0Jl1JRARC60JW1:0$i19JRB0MQ1!"CP(B (,T!0EXh1A"M'05Q1G0MQ1!ICK0CW1M$S07Uh1M0BYh105h1M`09Wh1M'0!Q19(B) ,Td0Ah10Gh1R(Pd;(B +0,T"i1R'K09i1RK0CW1M0Bi1M9!0EQ1:(B, 0,T7Qh1G07Qi1'0"i1M$GRA(B. ,T!RC0JW1:0$i19JRB0MQ1!"CP0$W1M$S0JQh1'c9!RC`$0EWh1M95SaK09h1'(B +,T"M'`$M0Cl1`+M0Cl1(B; ,T`$M0Cl1`+M0Cl1(P`$0EWh1M9d;M0BYh107Uh15SaK09h1'06Q14d;07Uh10AU1JRB0MQ1!"CP09Qi19M0BYh1(B. + +,T$S0JQh1'0JW1:0$i19c90MU1aA!0Jl105h1R'(R!$S0JQh1'0JW1:0$i19c9b;Ca!CA:CC3R08T1!C03l1(B (editor) 0,TJh1G9cK0-h1(B, ,Tc9(B +0,TEQ1!I3P07Uh1`0;g19(B "incremental". 0,T9Uh1KARB$GRA0Gh1R!RC0JW1:0$i19`0CTh1A05Qi1'a05h107Uh107h1R9d04i10;i1M90MQ1!"CP07Uh1(B +0,T5i1M'!RC0JW1:0$i19(B. + +,T$S0JQh1'07Uh1c0*i1`0>Wh1Mc0Ki17S!RC0JW1:0$i19d;0"i1R'K09i1R0$W1M(B C-s, ,TaEP7S!RC0JW1:0$i190Bi1M9d;0"i1R'K0EQ1'0$W1M(B +C-r. ,Ta05h1$MB0!h1M9(B! ,TM0Bh1R`0>Th1'EM'(B. + +,T`0AWh1M07h1R90;i1M9$S0JQh1'(B C-s 0,T7h1R9(P0JQ1'`!5`0Kg190Gh1R0AU1$S0Gh1R(B "I-search" ,T;CR!/07Uh1:0CT1`G3JP07i1M9(B +(echo area). 0,T9Uh1aJ4'0Gh1R0MU1aA!0Jl1d04i1M0BYh1c9!RC0$i19a::(B incremental ,TaEP!S0EQ1'CM(B +0,TJTh1'07Uh107h1R9(P0>T1A0>l1`0>Wh1M0JW1:0$i19(B. ,T!40;Xh1A(B ,T`0>Wh1M0JTi190JX14$S0JQh1'0JW1:0$i19(B. + +>> 0,T;i1M9$S0JQh1'(B C-s ,T`0>Wh1M`0CTh1A!RC0JW1:0$i19(B. 0,T>T1A0>l10MQ1!IC07U1EP05Q1G0*i1Rf(B, 0,T>T1A0>l1$S0Gh1R(B 'cursor', + ,TK0BX14K0EQ1'(R!07Uh107h1R90>T1A0>l107U1EP05Q1G0MQ1!IC(B, ,Ta0Ei1G04Y10Gh1R0AU1MPdC`0!T140"Vi190!Q1:`$M0Cl1`+M0Cl1(B. + ,T"3P09Ui107h1R9d04i10JW1:0$i19$S0Gh1R(B "cursor" ,Td;K09Vh1'K9a0Ei1G(B. +>> 0,T;i1M9$S0JQh1'(B C-s 0,TMU1!$0CQi1'(B, ,T`0>Wh1M0JW1:0$i195SaK09h1'06Q14d;"M'$S0Gh1R(B "cursor". +>> ,T!40;Xh1A(B 0,TJQ1!0JUh1$0CQi1'(B, ,Ta0Ei1G04Y10Gh1R`$M0Cl1`+M0Cl1`$0EWh1M907Uh1M0Bh1R'dC(B. +>> ,T!40;Xh1A(B ,T`0>Wh1M0JTi190JX14$S0JQh1'0JW1:0$i19(B. + +0,T7h1R9`0Kg19K0CW1Md0Ah10Gh1R0AU1MPdC`0!T140"Vi19(B? ,Tc9!RC0JW1:0$i19a::(B incremental, 0,TMU1aA!0Jl1>BRBRA(B +,T`$0EWh1M9d;5RAJRB0MQ1!"CP07Uh107h1R9d04i10>T1A0>l1E'd;c9a05h1EP$0CQi1'(B. 0,T6i1R(P`$0EWh1M9d;0BQ1'5SaK09h1'(B +0,T6Q14d;"M'$S(B, 0,T!g17Sd04i1b4B!RC0;i1M9$S0JQh1'(B C-s 0,TMU1!$0CQi1'(B. 0,T6i1Rd0Ah10AU1$S09Qi190MU1!a0Ei1G(B, 0,TMU1aA!0Jl1(P0Ci1M'(B +,T:M!(B (beep) 0,T7h1R90Gh1R!RC0JW1:0$i19$0CQi1'09Qi19(B ",T>ER4(B (failing)", ,T$S0JQh1'(B C-g 0,T!g1JRARC6c0*i1c9(B +,T!RC0JTi190JX14!RC0JW1:0$i19d04i1(B. + +0,T"i1M0JQ1'`!5(B: ,Tc9:R'CP::(B, ,T!RC0;i1M9$S0JQh1'(B C-s ,T(P7Sc0Ki1CP::"M'07h1R9*P0'Q1!aEP07h1R9(Pd0Ah1`0Kg19(B +0,T"i1M$GRAMPdC:90MU1aA!0Jl1(B. 0,TEQ1!I3P09Ui1aJ4'0Gh1R(B "feature" ,T"M'CP::;0/T10:Q105T1!RC(B, 0,T7Uh1`0CU1B!0Gh1R(B +"flow control" 0,T9Qi19(B, ,Td04i10"Q14"GR'!RC7S'R9"M'$S0JQh1'(B C-s ,TaEPd0Ah1BMAc0Ki1!0EQ1:0JYh10MU1aA!0Jl1(B +0,TMU1!(B. ,T!RC07Uh1(Pa0!i1d"!RCK0BX14*P0'Q1!09Qi19(B, ,Tc0Ki10;i1M9$S0JQh1'(B C-q. 0,THV1!IR0GT108U1!RC0(Q14!RC0!Q1:(B "feature" +0,T9Ui1d04i107Uh1:707Uh10Gh1R04i1GB(B "Spontaneous Entry to Incremental Search" ,Tc90$Yh10AW1M"M'0MU1aA!0Jl1(B. + +0,T6i1R07h1R9M0BYh1CPK0Gh1R'!RC0JW1:0$i19a::(B incremental ,TM0BYh1(B, ,Ta0Ei1G07h1R9!40;Xh1A(B , 0,T7h1R9(P(B +0,TJQ1'`!5`0Kg190Gh1R05Q1G0MQ1!IC0JX1407i1RB07Uh107h1R90;i1M9`0"i1Rd;09Qi1906Y1!E:MM!(B, ,TaEP(P0Bi1M9!0EQ1:d;0BQ1'5SaK09h1'(B +0,T!h1M9K09i1R"M'!RC0JW1:0$i19(B. 0,T5Q1GM0Bh1R'`0*h19(B, ,TJA0AX105T10Gh1R07h1R9d04i10;i1M905Q1G0MQ1!IC(B "c", ,T`0>Wh1M07Uh1(P0JW1:0$i19(B +,T5SaK09h1'07Uh1;CR!/05Q1G0MQ1!IC(B "c" 0,T9Qi19(B. ,T5M909Ui106i1R07h1R90>T1A0>l105Q1G0MQ1!IC(B "u", ,T`$M0Cl1`+M0Cl10!g1(P(B +,T`$0EWh1M9d;M0BYh107Uh15SaK09h1'07Uh1;CR!/JRB0MQ1!"CP(B "cu" ,TaC!0JX14(B. ,T5M909Ui1c0Ki1!40;Xh1A(B . +0,T5Q1G0MQ1!IC(B "u" ,T(P06Y1!E:MM!(R!JRB0MQ1!"CP07Uh17S!RC0JW1:0$i19M0BYh1(B, ,TaEP`$M0Cl1`+M0Cl10!g1(P`$0EWh1M9(B +,T!0EQ1:d;0BQ1'5SaK09h1'07Uh1;CR!/05Q1G0MQ1!IC(B "c" ,TaC!0JX14(B. + +0,T6i1R07h1R9M0BYh1CPK0Gh1R'!RC0JW1:0$i19(B, ,Ta0Ei1G0;i1M9$S0JQh1';CPJA"M'(B CONTROL ,TK0CW1M(B META (,T9M!(R!(B +0,T"i1MB!`0Gi19:R';CP!RC(B--,T$S0JQh1'0>T1`HI07Uh1c0*i1JSK0CQ1:!RC0JW1:0$i19(B, ,Td04i1a0!h1(B C-s ,TaEP(B C-r), ,T!RC0JW1:(B +0,T$i19(P0JTi190JX14E'(B. + +,T$S0JQh1'(B C-s ,T`0CTh1A!RC0JW1:0$i1904i1GB!RCAM'KRJRB0MQ1!"CP05Qi1'a05h15SaK09h1'0;Q1(0(X10:Q19"M'`$M0Cl1`+M0Cl1(B. +0,T6i1R07h1R905i1M'!RC0JW1:0$i19JRB0MQ1!"CP07Uh1M0BYh10!h1M9K09i1Rc90"i1M$GRA09Qi19(B, ,Tc0Ki10;i1M9$S0JQh1'(B C-r ,Ta79(B. +,T$S0JQh1'(B C-s ,T(P7S'R9`K0AW1M90!Q1:$S0JQh1'(B C-r 0,T7X1!M0Bh1R'(B, ,TB!`0Gi1907T1H7R'"M'!RC0JW1:0$i19(B +,T`07h1R09Qi19(B, 0,T7Uh15C'0"i1RA0!Q19(B. + + +* 0,TGT19b40Gl1a::KERB0GT19b40Gl1(B (multiple windows) +-------------------------------------- + +0,TEQ1!I3P07Uh109h1RJ9c(0MQ19K09Vh1'"M'0MU1aA!0Jl10!g10$W1M(B, 0,T7h1R9JRARC6aJ4'> ,T`$0EWh1M9`$M0Cl1`+M0Cl1AR07Uh1:CC07Q1409Ui1(B, ,Ta0Ei1G0;i1M9$S0JQh1'(B C-u 0 C-l. + +>> 0,T5h1Md;(B, 0,T;i1M9$S0JQh1'(B C-x 2 0,T+Vh1'(Pa0:h1'K09i1R(MMM!`0;g19JM'0GT19b40Gl1(B. + 0,T7Qi1'JM'0GT19b40Gl1aJ4'0$Yh10AW1M!RCc0*i109Ui1(B. ,T`$M0Cl1`+M0Cl1;CR!/M0BYh1c90GT19b40Gl1:9(B. + +>> 0,T;i1M9$S0JQh1'(B C-M-v ,T`0>Wh1M`$0EWh1M90Ai1G90GT19b40Gl10"i1R'0Eh1R'(B. + (0,T6i1R07h1R9d0Ah10AU10;Xh1A(B META, 0,T;i1M9$S0JQh1'(B ESC C-v ,Ta79(B.) + +>> 0,T;i1M9$S0JQh1'(B C-x o ("o" ,TKARB06V1'(B "other") ,T`0>Wh1M`$0EWh1M9`$M0Cl1`+M0Cl1AR0BQ1'0GT19b40Gl10Eh1R'(B. +>> ,Tc0*i1$S0JQh1'(B C-v ,TaEP(B M-v ,Tc90GT19b40Gl10Eh1R'`0>Wh1M07Uh1(P`$0EWh1M90Ai1G9(B. + 0,TMh1R9$Sa9P9S09Ui104i1GB0GT19b40Gl1:9(B. + +>> 0,T;i1M9$S0JQh1'(B C-x o 0,TMU1!$0CQi1'`0>Wh1M07Uh1(P`$0EWh1M9`$M0Cl1`+M0Cl1!0EQ1:d;0GT19b40Gl1:9(B. + ,T`$M0Cl1`+M0Cl1c90GT19b40Gl1:9(P;CR!/5C'07Uh107Uh1`$B;CR!/(B. + +0,T7h1R9JRARC6c0*i1$S0JQh1'(B C-x o ,T`0>Wh1MJ0EQ1:d;ARCPK0Gh1R'0GT19b40Gl1(B. ,Ta05h1EP0GT19b40Gl10AU15SaK09h1'"M'(B +,T`$M0Cl1`+M0Cl1"M'05Q1G`M'(B, ,Ta05h1(P0AU1`0>U1B'0GT19b40Gl1`04U1BG`07h1R09Qi1907Uh1aJ4'05Q1G`$M0Cl1`+M0Cl1(B. 0,T7X1!$S0JQh1'0!g1(P(B +0,TAU1Wh1M!RC0Mi1R'0MT1'(B. 0,T7h1R9JRARC6c0Ki1`$M0Cl1`+M0Cl1;CR!/:90GT19b40Gl107Uh107h1R9!S0EQ1'a0!i1d"M0BYh15EM4`GER(B, +,Ta0Ei1G`$0EWh1M95SaK09h1'"M'0MU1!0GT19b40Gl1K09Vh1'04i1GB$S0JQh1'(B C-M-v. + +,T$S0JQh1'(B C-M-v ,T`0;g1905Q1GM0Bh1R'K09Vh1'"M'$S0JQh1';CPJA(B CONTROL-META. 0,T6i1R07h1R90AU10;Xh1A(B META, +0,T7h1R9JRARC60;i1M9$S0JQh1'(B C-M-v ,Tb4B!RC!40;Xh1A(B CONTROL ,TaEP(B META ,T"3P07Uh1!40;Xh1A0MQ1!"CP(B +v. ,Td0Ah10Gh1R(P!40;Xh1A(B CONTROL ,TK0CW1M(B META 0,T!h1M90!g1d0Ah10AU10;Q1-KRMPdC(B, ,T`>CRP0Gh1R07Qi1'JM'0;Xh1A`0;g190;Xh1A(B +,T"BRB"M'0;Xh1A0MQ1!"CP07Uh107h1R9(P!4(B. + +0,T6i1R07h1R9d0Ah10AU10;Xh1A(B META, ,TaEP07h1R9c0*i10;Xh1A(B ESC ,Ta79(B, ,TES04Q1:"M'!RC!40;Xh1A(P0AU1CRP0Gh1R$S0JQh1'(B CONTROL-ESC v ,T(Pd0Ah1(B +,T7S'R9(B. 0,T7Qi1'09Ui1`>CRP0Gh1R0;Xh1A(B ESC ,T`0;g190MQ1!"CP05Q1GK09Vh1'(B, ,Td0Ah1c0*h10;Xh1A"BRB(B. + +>> 0,T;i1M9$S0JQh1'(B C-x 1 (,Tc90GT19b40Gl1:9(B) ,T`0>Wh1M!S0(Q140GT19b40Gl10Eh1R'(B. + +(0,T6i1R07h1R90;i1M9$S0JQh1'(B C-x 1 ,Tc90GT19b40Gl10Eh1R'(B, 0,TGT19b40Gl1:90!g1(PKRBd;(B. 0,T7h1R9JRARC6(S(B +,T$S0JQh1'09Ui1d04i1b4B0$T140Gh1R(B ",T`K0EW1Md0Gi1`0>U1B'K09Vh1'0GT19b40Gl1(B--0,TGT19b40Gl107Uh1M0BYh1c9"3P09Ui1(B.") + +0,T7h1R9d0Ah1(S`0;g1905i1M'aJ4'Wh1M0$i19KRa0?i1A0"i1M0AY1Ec90GT19b40Gl1K09Vh1'(B, 0,TMU1!0GT19b40Gl1K09Vh1'(Pd0Ah1`;0EUh1B9a;E'(B. 0,T7h1R9JRARC60$i19KR(B +,Ta0?i1A0"i1M0AY1Ec9a05h1EP0GT19b40Gl1d04i10MT1JCP05h1M0!Q19(B. + +0,T5h1Md;`0;g190MU1!0GT108U1K09Vh1'"M'!RCc0*i1JM'0GT19b40Gl1JSK0CQ1:aJ4'> 0,T;i1M9$S0JQh1'(B C-x 4 C-f ,Ta0Ei1G5RA04i1GB0*Wh1Ma0?i1A0"i1M0AY1E(B. 0,TJTi190JX14$S0JQh1'04i1GB!RC!40;Xh1A(B + . ,T(P`0Kg190Gh1R0AU1a0?i1A0"i1M0AY1E07Uh105i1M'!RC;CR!/M0BYh1c90GT19b40Gl10Eh1R'(B. ,T`$M0Cl1`+M0Cl10!g1(Pd;(B + ,T;CR!/07Uh10GT19b40Gl109Qi1904i1GB(B. + +>> 0,T;i1M9$S0JQh1'(B C-x o ,T`0>Wh1M!0EQ1:d;0BQ1'0GT19b40Gl1:9(B, ,Ta0Ei1G0;i1M9$S0JQh1'(B C-x 1 ,T`0>Wh1M!S0(Q140GT19b40Gl10Eh1R'(B. + + +* ,TCP04Q1:"M'!RCa0!i1d"a::`0CU1B!0+i1S(B (recursive editing levels) +------------------------------------------------------- + +,T:R'$0CQi1'07h1R9MR((P`0"i1Rd;M0BYh1c9(B ",TCP04Q1:"M'!RCa0!i1d"a::!RC`0CU1B!0+i1S(B (recursive editing +level)". ,TJ@R>04Q1'!0Eh1RG`0*h1909Ui1aJ4'04i1GBG'`0Eg1:0!i1RA0;Y1c9:CC07Q14aJ4'bKA4(B, 0,TEi1MACM:G'`0Eg1:07Uh1(B +,TaJ4'0*Wh1M"M'bKA4K0EQ1!(B. 0,T5Q1GM0Bh1R'`0*h19(B, 0,T7h1R9MR((P`0Kg19(B [(Fundamental)] ,Ta7907Uh1(P`0;g19(B +(Fundamental). + +,Tc9!RC07Uh1(PMM!(R!CP04Q1:"M'!RCa0!i1d"a::`0CU1B!0+i1S(B, ,T!40;Xh1A(B ESC ESC ESC. 0,T9Uh1`0;g19(B +,T$S0JQh1'07Uh1c0*i1d04i107Qh1Gd;c9!RCMM!(R!CP04Q1:c4f(B ,T"M'!RC;CPAGET1`HI0MWh19f(B, ,TCGA07Qi1'!RCMM!(R!0AT109T10:Q1?`?M0Cl1(B (minibuffer). + +>> 0,T;i1M9$S0JQh1'(B M-x ,T`0>Wh1M`0"i1Rd;c90AT109T10:Q1?`?M0Cl1(B; ,T!40;Xh1A(B ESC ESC ESC ,T`0>Wh1MMM!(R!(B + 0,TAT109T10:Q1?`?M0Cl109Qi19(B. + +0,T7h1R9d0Ah1JRARC6c0*i1$S0JQh1'(B C-g ,T`0>Wh1MMM!(R!CP04Q1:"M'!RCa0!i1d"a::`0CU1B!0+i1S(B. +,T`>CRP0Gh1R$S0JQh1'(B C-g ,Tc0*i1`0>Wh1MB!`0ET1!$S0JQh1'aEPMR0Cl10!T1G`A905l1@RBc9CP04Q1:"M'!RCa0!i1d"a::(B +,T`0CU1B!0+i1S(B. + + +* ,T!RC`0CU1B!04Y10"i1M$GRA0*h1GB`K0EW1M`0>Th1A`05T1A(B (getting more help) +------------------------------------------------- + +,Tc90$Yh10AW1M09Ui1`CR>BRBRA07Uh1(Pc0Ki10"i1M0AY1E07Uh1`0>U1B'>MJSK0CQ1:!RC`0CTh1Ac0*i10MU1aA!0Jl1(B. 0,TBQ1'$'0AU10"i1M0AY1E0MU1!AR!c9(B +0,TMU1aA!0Jl10+Vh1'`CRd0Ah1JRARC607Uh1(P9SARM08T1:RBd0Gi1c907Uh109Ui1d04i107Qi1'KA4(B. ,TM0Bh1R'dC0!g15RA(B, 0,T7h1R9MR(05i1M'!RC(B +,T`0CU1B90CYi1`0!Uh1BG0!Q1:0MU1aA!0Jl1`0>Th1A`05T1A`>CRP0MU1aA!0Jl10BQ1'0AU10$X13JA0:Q105T10MU1!AR!ARB(B. 0,TMU1aA!0Jl1d04i1`50CU1BA$S0JQh1'(B +,TJSK0CQ1:`0CU1B!04Y1`09Wi1MKR`0!Uh1BG0!Q1:$S0JQh1'"M'0MU1aA!0Jl1(B. ,T$S0JQh1'(B "0,T*h1GB`K0EW1M(B (help)" 0,T7Qi1'KA4`0CTh1A04i1GB(B +0,TMQ1!"CP(B CONTROL-h, 0,T+Vh1'`0CU1B!0Gh1R(B "0,TMQ1!"CP0*h1GB`K0EW1M(B (the Help character)". + +,Tc9!RC07Uh1(Pc0*i10$X13JA0:Q105T10*h1GB`K0EW1M(B, 0,T;i1M90MQ1!"CP(B C-h, ,Ta0Ei1G5RA04i1GB0MU1!K09Vh1'0MQ1!"CP`0>Wh1M:M!0Gh1R(B +0,T7h1R905i1M'!RC$S0*h1GB`K0EW1MMPdC(B. 0,T6i1R07h1R9d0Ah17CR:0Gh1R(P7SMPdC05h1Md;(B, 0,T;i1M9$S0JQh1'(B C-h ? ,Ta0Ei1G(B +0,TMU1aA!0Jl1(P:M!07h1R90Gh1R0AU1$S0*h1GBMPdC07Uh10MU1aA!0Jl1JRARC6(Pc0Ki1d04i1(B. 0,T6i1R07h1R90;i1M9$S0JQh1'(B C-h ,Ta0Ei1G(B +0,T5i1M'!RCB!`0ET1!07h1R9(B, 0,T!g1JRARC6B!`0ET1!d04i1b4Bc0*i1$S0JQh1'(B C-g. + +(,Tc9:R'CP::09Qi19(B, ,T$GRAKARB"M'0MQ1!"CP(B C-h ,Td04i106Y1!`;0EUh1B9d;(B. 0,T+Vh1'b4B$GRA`0;g19(0CT1'a0Ei1Gd0Ah1(B +,T$GC(P7S`0*h1909Ui1(B, 0,T7Qi1'09Ui107h1R9MR((P0*Ui1a('05h1M0RPK09i1R(B, 0,T6i1R(B +,T$S0JQh1'(B C-h ,Td0Ah1d04i1aJ4'0"i1M$GRA`0!Uh1BG0!Q1:$S0*h1GB`K0EW1M07Uh10Jh1G90Eh1R'"M'K09i1R(M09Qi19(B, ,Tc0Ki1EM'!40;Xh1A(B F1 +,TK0CW1M(B M-x help ,Ta79(B.) + +0,T$X13JA0:Q105T1`0:Wi1M'05i19"M'$S0JQh1'0*h1GB`K0EW1M0$W1M$S0JQh1'(B C-h c. ,TEM'0;i1M9$S0JQh1'(B C-h, 0,TMQ1!"CP(B c, ,Ta0Ei1G(B +,T5RA04i1GB0MQ1!"CPK0CW1MJRB0MQ1!"CP(B; ,Ta0Ei1G0MU1aA!0Jl1(PaJ4'$SM08T1:RB"M'$S0JQh1'09Qi19b4B0JQ1'`";(B. + +>> 0,T;i1M9$S0JQh1'(B C-h c CONTROL-p. + 0,T"i1M$GRA07Uh1;CR!/(P`0;g1904Q1'05h1Md;09Ui1(B + + C-p runs the command previous-line + +0,T9Uh1`0;g19!RC:M!(B "0,T*Wh1M0?Q1'0!l10*Q19"M'$S0JQh1'(B" 0,T9Qi19(B. 0,T*Wh1M"M'0?Q1'0!l10*Q19c0*i1`0>Wh1M!RC;0CQ1:aEPa05h1'`05T1A0MU1aA!0Jl1(B. +,Ta05h1`09Wh1M'(R!0*Wh1M"M'0?Q1'0!l10*Q1909Qi1905Qi1'`0>Wh1M0*Ui1:M!0Gh1R$S0JQh1'09Qi197S'R9M0Bh1R'dC(B, 0,T+Vh1'MR(`0;g1905Q1G0*h1GB:M!(B +,T$SM08T1:RBb4B0JQ1'`";d04i1(B--,TMR(`0>U1B'>M07Uh1(P`05W1M9c0Ki107h1R909V1!06V1'$S0JQh1'07Uh105i1M'!RCd04i1(B. + +,T$S0JQh1'07Uh1;CP!M:04i1GBKERB0MQ1!"CP(B ,T`0*h19$S0JQh1'(B C-x C-s ,TaEP(B (0,T6i1R07h1R9d0Ah10AU10;Xh1A(B META ,TK0CW1M(B +EDIT ,TK0CW1M(B ALT) ,T$S0JQh1'(B v ,TJRARC6c0*i15RAK0EQ1'$S0JQh1'(B C-h c. + +,T!RC07Uh1(P`0CU1B!04Y10"i1M0AY1E`0>Th1A`0!Uh1BG0!Q1:$S0JQh1'(B, ,Tc0Ki1c0*i1$S0JQh1'(B C-h k ,Ta79$S0JQh1'(B C-h c. + +>> 0,T;i1M9$S0JQh1'(B C-h k CONTROL-p. + +0,T9Uh1`0;g19!RCaJ4'0Ci1MA0!Q1:0*Wh1M"M'$S0JQh1'09Qi19(B, ,Tc90GT19b40Gl1K09Vh1'"M'0MU1aA!0Jl1(B. +,T`0AWh1M07h1R90Mh1R9`J0Cg1(a0Ei1G(B, 0,T;i1M9$S0JQh1'(B C-x 1 ,T`0>Wh1M!S0(Q140"i1M$GRA"M'$S0*h1GB`K0EW1M(B. 0,T7h1R9d0Ah1(B +,T(S`0;g1907Uh1(P05i1M'7S07Q1907U1(B. 0,T7h1R9MR(7S!RCa0!i1d""3P07Uh104Y10"i1M$GRA$S0*h1GB`K0EW1M09Qi19M0BYh1(B, ,Ta0Ei1G(B +0,T$h1MB0;i1M9$S0JQh1'(B C-x 1. + +0,T5h1Md;09Ui1`0;g1905Q1G`0EW1M!07Uh1`0;g19;CPbB*09l1(B: + + C-h f ,TM08T1:RB0?Q1'0!l10*Q19(B. 0,T>T1A0>l10*Wh1M0?Q1'0!l10*Q1907Uh105i1M'!RC7CR:5RAE'd;(B. + +>> ,TEM'0;i1M9$S0JQh1'(B C-h f previous-line. + 0,T9Uh1`0;g19!RC07Uh1(P7Sc0Ki10MU1aA!0Jl10>T1A0>l10"i1M0AY1E07Qi1'KA407Uh10AU1`0!Uh1BG0!Q1:0?Q1'0!l10*Q19"M'$S0JQh1'(B C-p. + + C-h a ,T$S0JQh1'$GRA07Uh1`KARPJA(B (Command Apropos). 0,T;i1M9$SK0EQ1!(B (keyword) + ,Ta0Ei1G0MU1aA!0Jl1(PaJ4'CRB!RC"M'$S0JQh1'07Qi1'KA407Uh10AU1$SK0EQ1!;CP!M:M0BYh1(B. + ,T$S0JQh1'`K0Eh1R09Ui1(P`0CU1B!c0*i1d04i104i1GB$S0JQh1'(B META-x. + ,TJSK0CQ1::R'$S0JQh1'(B, ,T$S0JQh1'$GRA07Uh1`KARPJA(B (Command Apropos) ,T(P(B + ,TaJ4'CRB!RC"M'$S0JQh1'07Uh1;CP!M:04i1GBK09Vh1'K0CW1MJM'JRB0MQ1!"CP07Uh1c0*i1`0CU1B!(B + ,T$S0JQh1'`04U1BG0!Q1904i1GB(B. + +>> 0,T;i1M9$S0JQh1'(B C-h a file. + +0,T9Uh1`0;g19!RCaJ4'CRB!RC"M'$S0JQh1';CP!M:"M'(B M-x 0,T!Q1:(B "file" ,Tc90*Wh1M"M'$S0JQh1'(B +0,T7Qi1'KA4c90MU1!K09i1R(M(B. 0,T7h1R9(P`0Kg19$S0JQh1';CP!M:0MQ1!"CP(B (character-command) ,T`0*h19(B C-x +C-f ,TaJ4'M0BYh10!Q1:0*Wh1M"M'$S0JQh1'09Qi19f(B ,T`0*h19(B find-file. + +>> 0,T;i1M9$S0JQh1'(B C-M-v ,T`0>Wh1M`$0EWh1M90Ai1G90GT19b40Gl1$S0*h1GB`K0EW1M(B (help window). ,TEM'7S04Y10JQ1!(B + ,TJM'JRA$0CQi1'(B. + +>> 0,T;i1M9$S0JQh1'(B C-x 1 ,T`0>Wh1M!S0(Q140GT19b40Gl1$S0*h1GB`K0EW1M(B. + + +* ,TJ0CX1;(B +----- + +0,TJTh1'$GC(Sd0Gi10$W1M(B, ,T$S0JQh1'(B C-x C-c ,Tc0*i1JSK0CQ1:MM!(R!0MU1aA!0Jl1M0Bh1R'6RGC(B. 0,T6i1R05i1M'!RCMM!d;0BQ1'(B +,T`*E0El10*Qh1G$CRG(B, ,TaEPJRARC6!0EQ1:AR0BQ1'0MU1aA!0Jl1d04i10MU1!09Qi19(B, ,Tc0Ki1c0*i1$S0JQh1'(B C-z. + +0,T$Yh10AW1M!RCc0*i109Ui10AU1`(59Rc0Ki10Th1'`0CTh1Ac0*i107Qi1'KERBJRARC6`0"i1Rc(d04i1(B, 0,T4Q1'09Qi1906i1R07h1R9>::R'0JTh1'07Uh1d0Ah1(B +0,T*Q14`(9(B, ,Td0Ah105i1M'09Qh1'5SK09T105Q1G`M'(B - ,TJM:6RAARd04i1`EB(B! + + +* ,T!RC7SJS`9R(B (copying) +---------------------- + +0,T$Yh10AW1M09Ui1d04i10CQ1:!RC0>Q129RAR`0;g19CPBP`GER9R9(B, ,T`0CTh1A05Qi1'a05h105i19)0:Q1:07Uh1`0"U1B9b4B(B Stuart Cracraft. + +0,T$Yh10AW1M`GM0Cl10*Q1909Ui1(B, ,T`0*h19`04U1BG0!Q1:(B GNU Emacs, ,Td04i10CQ1:!RCJ'G90JT1708Tl1(B, ,TaEP<9G!d0Gi1c9`0'Wh1M9d"c9(B +,T!RC`0Ch104i1GB(B: + +,TJ'G90ET1"0JT1708Tl1(B ,T>(B.,TH(B. 2528, 2529 ,Tb4B?0CU1+M?05l1aG0Cl1?RG09l1`40*Q19(B (Free Software Foundation) + + 0,T7X1!07h1R90AU10JT1708Tl1c9!RC7SJS`9RK0CW1M`0Ch1`M!JRC09Ui1(B, ,Tc907X1!0JWh1M(B, ,Tb4B05i1M'a9:0"i1M$GRAaJ4'(B + 0,TJT1708Tl1aEP!RCM09X1-R509Ui1d;>0Ci1MA04i1GB(B. 0,T7Qi1'09Ui1`0>Wh1M0*Ui1c0Ki1`0Kg190Gh1R00Ch1d04i1M09X1-R5c0Ki100Ch105h1Md;d04i1b4BMR0HQ1B0"i1M$GRAc9`M!JRC09Ui1(B. + + ,T!RCM09X1-R509Qi19d04i1CGA06V1'0JT1708Tl1c9!RC`0Ch1`GM0Cl10*Q1907Uh1;0CQ1:;0CX1'a0Ei1G(B, ,TK0CW1M0Jh1G9K09Vh1'"M'(B + ,T`M!JRC09Ui1(B, ,T@RBc05i1`0'Wh1M9d"0"i1R':9(B, ,T5EM4(90JT1708Tl1c9!RC:M!0Gh1Rc$C`0;g1900Ch1JS`9R"M'(B GNU Emacs ,Td;0BQ1'`0>Wh1M9f(B ,T"M'07h1R904i1GB(B. +0,T*h1GB0!Q197SERBCP::KG'+M?05l1aG0Cl1(B (",TaJ4'$GRA`0;g19`0(i1R0"i1RG`0(i1R"M'(B") 0,T4i1GB!RCc0*i1(B, +,T!RC`0"U1B9(B, ,TaEP!RC`0;g19`0(i1R"M'0Ch1GA0!Q19"M'+M?05l1aG0Cl1`J0CU1(B (free software). + + +* 0,T5i19)0:Q1:0Gh1R04i1GB`0CWh1M'!RC7SJS`9R(B +-------------------------- + +0,T5h1Md;09Ui1`0;g19`M!JRC0Gh1R04i1GB`0CWh1M'!RC7SJS`9R07Uh1`0;g1905i19)0:Q1:(B. ,T`M!JRC09Ui1;CR!/M0BYh1c90$Yh10AW1M!RCc0*i1(B +0,TMU1aA!0Jl1)0:Q1:@RIR0MQ1'!DI(B, 0,T+Vh1'`0;g1905i19)0:Q1:"M'`M!JRCa;E)0:Q1:09Ui104i1GB(B. + +This tutorial descends from a long line of Emacs tutorials +starting with the one written by Stuart Cracraft for the original Emacs. + +This version of the tutorial, like GNU Emacs, is copyrighted, and +comes with permission to distribute copies on certain conditions: + +Copyright (C) 1985, 1996, 2001, 2002, 2003, 2004, + 2005, 2006, 2007 Free Software Foundation, Inc. + + Permission is granted to anyone to make or distribute verbatim copies + of this document as received, in any medium, provided that the + copyright notice and permission notice are preserved, + and that the distributor grants the recipient permission + for further redistribution as permitted by this notice. + + Permission is granted to distribute modified versions + of this document, or of portions of it, + under the above conditions, provided also that they + carry prominent notices stating who last altered them. + +The conditions for copying Emacs itself are more complex, but in the +same spirit. Please read the file COPYING and then do give copies of +GNU Emacs to your friends. Help stamp out software obstructionism +("ownership") by using, writing, and sharing free software! + + +* ,T$S0Jh1'07i1RB(B +--------- + +0,T$Yh10AW1M)0:Q1:09Ui1d04i1a;E(R!05i19)0:Q1:07Uh1`0;g19@RIR0MQ1'!DI(B, 0,T+Vh1'(P;CR!/M0BYh1c90MU1aA!0Jl1`GM0Cl10*Q19(B 20.4. +0,T(B ,TG'0Hl1(B +,TJRB0JX1GCC3(B, ,Td04i10MT1'0$Yh10AW1M"M'0MU1aA!0Jl1`GM0Cl10*Q19`0!h1R(B, ,TaEP"3P09Ui10MU1aA!0Jl1`GM0Cl10*Q19(B 20.4 0,T!g1d04i1(B +,T`;0EUh1B9a;E'd;AR!a0Ei1G(B. ,T9M!(R!09Ui1(B, 0,TWh1M07Uh1(P`0"U1B9c0Ki1d04i1$GRA07Uh10*Q14`(9(B. ,TK0GQ1'`0;g19M0Bh1R'0BTh1'0Gh1R0$Yh10AW1M)0:Q1:09Ui1(P`0;g19;CPbB*09l1(B +,TaEP(Pd04i10CQ1:!RCa0!i1d"c0Ki104U10BTh1'f(B 0,T"Vi190MU1!05h1Mf(B ,Td;(B. ,T"M"M:0$X13(B 0,T$X1307Q1H09U10Bl1(B ,T`(0CT1->C(B 0,T7Uh1c0Ki1$GRA(B +0,T*h1GB`K0EW1M5CG(JM:05i19)0:Q1:(B. + +22 ,TA!CR$A(B 2542 +0,TGT10CQ1*(B ,THC`0ET1H0Ei1SGR03T1*(B +virach@nectec.or.th + +Translate - January 1999 by Virach Sornlertlamvanich + +;;; Local Variables: +;;; sentence-end-double-space: nil +;;; End: + +;;; arch-tag: 79ad252a-448a-4dc9-a4cb-2097dd1ec014 diff --git a/etc/tutorials/TUTORIAL.translators b/etc/tutorials/TUTORIAL.translators new file mode 100644 index 00000000000..b9e1f4b6ad3 --- /dev/null +++ b/etc/tutorials/TUTORIAL.translators @@ -0,0 +1,95 @@ +This file contains the list of translators and maintainers of the +tutorial. + +* TUTORIAL.bg: +Author: Ognyan Kulev +Maintainer: Ognyan Kulev + +* TUTORIAL.cn: +Author: Sun Yijiang +Maintainer: Sun Yijiang + +* TUTORIAL.cs: +Author: Milan Zamazal + Pavel Janík +Maintainer: Milan Zamazal + Pavel Janík + +* TUTORIAL.de: +Author: Werner Lemberg +Maintainer: Werner Lemberg + +* TUTORIAL.eo +Author: Dale Gulledge +Maintainer: Dale Gulledge + +* TUTORIAL.es: +Author: Rafael Sepúlveda +Maintainer: Rafael Sepúlveda + +* TUTORIAL.fr: +Author: Éric Jacoboni +Maintainer: Éric Jacoboni + +* TUTORIAL.it: +Author: Alfredo Finelli + Italian GNU Translation Group +Maintainer: Alfredo Finelli + Italian GNU Translation Group + +* TUTORIAL.ja: +Author: Kenichi Handa +Maintainer: Kenichi Handa + +* TUTORIAL.ko: +Author: Koaunghi Un +Maintainer: Maintainer needed. + +* TUTORIAL.nl: +Author: Pieter Schoenmakers +Maintainer: Pieter Schoenmakers + +* TUTORIAL.pl: +Author: Beatę Wierzchołowską + Janusz S. Bien +Maintainer: Radoslaw Moszczynski + +* TUTORIAL.pt_BR: +Author: Marcelo Toledo +Maintainer: Marcelo Toledo + +* TUTORIAL.ro: +Author: Tudor Hulubei +Maintainer: Maintainer needed. + +* TUTORIAL.ru: +Author: Alex Ott +Maintainer: Alex Ott + +* TUTORIAL.sk: +Author: Miroslav VaÅ¡ko + Pavel Janík +Maintainer: Pavel Janík + +* TUTORIAL.sl: +Author: Primož Peterlin +Maintainer: Primož Peterlin + +* TUTORIAL.sv: +Author: Mats Lidell +Maintainer: Mats Lidell + +* TUTORIAL.th: +Author: Virach Sornlertlamvanich +Maintainer: Virach Sornlertlamvanich + +* TUTORIAL.zh: +Author: Chao-Hong Liu +Maintainer: Chao-Hong Liu + + +;;; Local Variables: +;;; coding: utf-8 +;;; End: + +;;; arch-tag: 8788b16b-e739-4304-a7f2-729bdb999fa0 diff --git a/etc/tutorials/TUTORIAL.zh b/etc/tutorials/TUTORIAL.zh new file mode 100644 index 00000000000..2793312763b --- /dev/null +++ b/etc/tutorials/TUTORIAL.zh @@ -0,0 +1,1086 @@ +Emacs §Ö³t«ü«n¡]. + +Emacs «ü¥O³q±`¥]§t¦³ CONTROL Áä¡]¦³®É­Ô¥H CTRL ©Î CTL ¨Ó¼Ð¥Ü¡^©Î¬O +META Áä¡]¦³®É­Ô¥H EDIT ©Î ALT ¨Ó¼Ð¥Ü¡^¡C¬°¤FÁקK¨C¤@¦¸³£­n¼g¥X¨ä¥þ¦W¡A +§Ú­Ì±N·|¨Ï¥Î¤U­zªºÁY¼g¡G + + C- ªí¥Ü·íÁä¤J¦r¤¸ ®É «ö¦í CONTROL Áä¡C + ¦]¦¹¡AC-f ´N¬O¡G«ö¦í CONTROL Áä¦AÁä¤J f ¡C + M- ªí¥Ü·íÁä¤J¦r¤¸ ®É «ö¦í META ©Î EDIT ©Î ALT Áä¡C + ¦pªG¨S¦³ META ¡B EDIT ©Î ALT Áä®É¡A«h¥i¥H¥Î + ¡u«ö¤@¤U ESC ÁäµM«á©ñ¶}¡A¦AÁä¤J ªº¨BÆJ¡v + ¨Ó§@¬°´À¥N¡C§Ú­Ì¥H ¨Óªí¥Ü ESC Áä¡C + +­«­n³Æ§Ñ¿ý¡G­nÂ÷¶} Emacs §@·~¶¥¬q¡] session ¡^¡AÁä¤J C-x C-c ¡]¨â­Ó¦r +¤¸¡^¡C¦ì¦b¥ª°¼Ãä¬Éªº¡u>>¡v¦r¤¸¬OÅý±z¥i¥H¸ÕµÛ¨Ï¥Îªº«ü¥Oªº´£¥Ü¡CÁ|¨Ò¨Ó»¡¡G +<> +[Middle of page left blank for didactic purposes. Text continues below] +>> ²{¦bÁä¤J C-v ¡] View next screen ¡^¥H²¾¨ì¤U­Ó¿Ã¹õ¡C + ¡]¸Õ¸Õ¬Ý¡AÁä¤J¦r¤¸ v ®É¡A«ö¦í CONTROL Áä¡^ + ±q²{¦b¶}©l¡A±zÀ³¸Ó¦b¨C¦¸¾\Ū§¹¥Ø«eªº¿Ã¹õ®É°µ¤@¦¸³o­Ó°Ê§@¡C + +­nª`·Nªº¬O¡A·í±z±q¤@­Ó¿Ã¹õ²¾¨ì¥t¤@­Ó®É¡A¤¤¶¡·|¦³¨â¦æ­«½Æ¡F³o¼Ë°µ¬O¬°¤F +´£¨Ñ¤@¨Ç³sÄò©Ê¡AÅý±z¥i¥H±µÄò¦a¾\Ū¤å¦r¡C + +±z»Ý­nª¾¹Dªº²Ä¤@¥ó¨Æ¬O¦p¦ó¦b¤å¦r¤¤²¾°Ê¡C±z¤w¸gª¾¹D¤F¥i¥H C-v ¨Ó¦V«e²¾ +°Ê¤@­Ó¿Ã¹õ¡C­n¦V«á²¾°Ê¤@­Ó¿Ã¹õ¡A«hÁä¤J M-v ¡]«ö¦í META Áä¡AµM«áÁä¤J v +¡A©Î¬O¦pªG±z¨S¦³ META ¡B EDIT ©Î ALT Áä®ÉÁä¤J v ¡^¡C + +>> ¸ÕµÛÁä¤J M-v µM«á C-v ¡A³sÄò­Ó´X¦¸¡C + +¡i²{¦b±z¥i¥H C-v «ü¥O²¾¨ì«á­±¡u½Ķ¡v¤@¸`¡A¥H¨ú±oÃö©ó¥»¤åªºÂ½Ä¶¬ÛÃö¨Æ +¶µ¡FµM«á¥H M-v «ü¥O¦^¨ì³o¸Ì¡C¡j + + +* ºK­n¡] SUMMARY ¡^ +------------------- + +¥H¤Uªº«ü¥O¦bÀ˾\¿Ã¹õ®É¬Û·í¦³¥Î¡G¡i§Ú­Ì²{¦b¥H¡u¿Ã¹õ¡v¨Óªí¥Ü¡uÅã¥ÜÀɮפº +®eªº°Ï°ì¡v¡A¦]¬°¥Ø«e¬O³B¦b Emacs ¤¤ªº³æµ¡®æ¡] window ¡^Åã¥Üª¬ºA¡A¦pªG +¬O¦b¦hµ¡®æªºª¬ºA¤U¡A³o¸Ì©Ò¤¶²Ðªº«ü¥O«h§@¥Î¦b¡u¤u§@¤¤ªºµ¡®æ¡v¡C¦³Ãö©óµ¡ +®æªº¤¶²Ð¡A½Ð¨£µ¡®æ¡] windows ¡^¤@¸`¡C¡j + + C-v ¦V«e²¾°Ê¤@­Ó¿Ã¹õ¡þµ¡®æ + M-v ¦V«á²¾°Ê¤@­Ó¿Ã¹õ¡þµ¡®æ + C-l ²M°£¿Ã¹õ¡þµ¡®æ¡A¦A­«·sÅã¥Ü©Ò¦³¤å¦r¡A + ´å¼Ð©Ò¦b¦ì¸m·|Åã¥Ü©ó¿Ã¹õ¡þµ¡®æªº¤¤¥¡¡C + ¡]¬O CONTROL-L ¦Ó¤£¬O CONTROL-1 ¡^ + +>> §ä¥X´å¼Ðªº¦ì¸m¡A¨Ãª`·N¨äªþªñªº¤å¦r¬°¦ó¡CµM«áÁä¤J C-l ¡C + ¦A¦¸§ä¥X´å¼Ðªº¦ì¸m¡A½T»{¤@¤U¬Û¦Pªº¤å¦r²{¦b¤]¦ì¦b¨äªþªñ¡C + +¦pªG±zªº²×ºÝ¾÷¦³ PageUp »P PageDn Á䪺¸Ü¡A±z¤]¥i¥H¨Ï¥Î¥¦­Ì¨Ó¥H¿Ã¹õ¬°³æ +¦ì¦a²¾°Ê¡A¦ý¬O¨Ï¥Î C-v ©M M-v ·|¤ñ¸û¦³®Ä²v¡C + + +* °ò¥»ªº´å¼Ð±±¨î¡] BASIC CURSOR CONTROL ¡^ +------------------------------------------ + +¿Ã¹õ¨ì¿Ã¹õªº²¾°Ê¬O«Ü¦³¥Î¡A¦ý¬O±z¦p¦ó²¾°Ê¨ì¦ì©ó¿Ã¹õ¤º¤å¦r¤¤ªº¯S©w¦ì¸m©O¡H + +¦³´XºØ¤è¦¡¥i¥H¶i¦æ¡C±z¥i¥H¨Ï¥Î¤è¦VÁä¡A¦ý¬O±N±zªº¤â©ñ¦b¼Ð·Çªº¡eÁä½L¡f¦ì +¸m¡A¨Ã¥B¨Ï¥Î«ü¥O C-p ¡B C-b ¡B C-f ©M C-n ±N¤ñ¸û¦³®Ä²v¡C³o¨Ç¦r¤¸©M¥|­Ó +¤è¦VÁä¡eªº¥\¯à¡f¬O¦Pµ¥ªº¡A¦p¤U©Ò¥Ü¡G + + «e¤@¦æ C-p + : + : + ¦V«á²¾ C-b .... ¥Ø«e´å¼Ð¦ì¸m .... ¦V«e²¾ C-f + : + : + «á¤@¦æ C-n + +>> ¥H C-n ©Î C-p ±N´å¼Ð²¾¨ì¹Ï§Îªº¤¤¥¡¡C + Áä¤J C-l ·|¬Ý¨ì¾ã­Ó¹Ï§ÎÅã¥Ü¦b¿Ã¹õªº¤¤¥¡¡C + +±z·|µo²{¥Î¦r¥À©Ò¥Nªíªº·N¸q¨Ó°O¾Ð¥¦­Ì«Ü®e©ö¡GP ªí¥Ü previous ¡B N ªí¥Ü +next ¡B B ªí¥Ü backward ¡B¦Ó F «hªí¥Ü forward ¡C±z±N¡uÁ`¬O¡v¥Î¨ì³o¨Ç´å +¼Ð²¾°Ê«ü¥O¡C + +>> «ö´X¦¸ C-n §â´å¼Ð©¹¤U²¾°Ê¨ì³o¦æ¡C + +>> «ö´X¦¸ C-f ©¹«e²¾¨ì³o¦æ¡AµM«á¦A¥H C-p ©¹«á²¾°Ê¡C + ¬Ý¬Ý·í´å¼Ð¦b¥»¦æ¤¤¥¡®É¡AC-p ªº°Ê§@¬O«ç¼Ë¡C + +¨C¤@­Ó¤å¦r¦æ³£¥H¤@­Ó Newline ¦r¤¸§@¬°µ²§ô¡A¥¦¬O¥Î¨Ó»P¤U¤@¦æ§@¬°¤À§O¡C +¦b±zÀɮפ¤ªº³Ì«á¤@¦æÀ³¸Ó­n¦³¤@­Ó Newline ¨Ó§@¬°µ²§ô¡]¦ý¬O Emacs ¨Ã¤£¤@ +©w»Ý­n¥¦¨Ó½s¿èÀɮס^¡C + +>> ¸ÕµÛ¦b¤@¦æ¶}©lªº¦a¤èÁä¤J C-b ¡Cµ²ªGÀ³¸Ó·|²¾°Ê¨ì«e¤@¦æªº³Ì«á­±¡C + ³o¬O¦]¬°¥¦©¹«á²¾°Ê®É¶V¹L¤F Newline ¦r¤¸¡C + +C-f ¤]¥i¥H©M C-b ¤@¼Ë¦a¶V¹L Newline ¦r¤¸¡C¡iNewline ¦r¤¸¬O¡u¤£¥i¨£ +¡] invisible ¡^¦r¤¸¡v¡A¦b½s¿è¾¹¤¤¤@¯ë¬Ý¤£¨ì¥¦¡A³o¸Ì¥u¬O§i¶D±z¡G¦b¦æ­º +¦A©¹«e¨«¡A¨º»ò´å¼Ð·|¶]¨ì«e¤@¦æ¡]¦pªG¦³«e¤@¦æªº¸Ü¡^¡F¦b¦æ§À¦A©¹«á¨«¡A¨º +»ò´å¼Ð·|¶]¨ì«á¤@¦æ¡]¦pªG¦³«á¤@¦æªº¸Ü¡^¡C¡u¶V¹L Newline ¦r¤¸¡v·|Åý´å¼Ð +¶]¨ì¥t¥~¤@¦æ¡C¡j + +>> ¦h«ö´X¦¸ C-b¡A¦Û¤v·Pı¤@¤U´å¼Ð¦b­þ¡C + µM«á«ö´X¦¸ C-f ¦^¨ì³o¦æªº§À¤Ú¡C + ¦A«ö¤@¦¸ C-f ´N¥i¥H²¾¨ì¤U¤@¦æ¤F¡C + +·í±z²¾°Ê´å¼Ð¬ï¶V¿Ã¹õªº¤W¤è©Î¤U¤è®É¡A¦bÃä¬É¥~ªº¤å¦r·|²¾¦ì¶i¤J¿Ã¹õ¤º¡C³o +ºÙ¬°¡u±²°Ê¡v¡C¥¦Åý Emacs ¥i¥H±N´å¼Ð²¾°Ê¨ì¤å¦r¤¤ªº¥ô·N¯S©w¦ì¸m¡A¦P®É +¡]´å¼Ð¡^¤£·|¶]¥X¿Ã¹õ¥~¡C + +>> ¸ÕµÛ¥H C-n ±N´å¼Ð¶V¹L¿Ã¹õ¤U¤è¡AµM«á¬Ý¬Ýµo¥Í¤F¤°»ò¨Æ¡C + +¦pªG¤@­Ó¦r¤¸¤@­Ó¦r¤¸¦a²¾°Ê¤ÓºCªº¸Ü¡A±z¥i¥H¤@­Ó¦r¤@­Ó¦r¦a²¾°Ê¡CM-f +(META-f) ©¹«e²¾°Ê¤@­Ó¦r¡AM-b «h©¹«á²¾°Ê¤@­Ó¦r¡C¡i¹ï¤¤¤å¨Ó»¡¡A«h¬O²¾°Ê +¨ì¤U¤@­Ó©Î¤U¤@­Ó¼ÐÂI²Å¸¹ªº©Ò¦b¡C¡j + +>> Áä¤J¤@¨Ç M-f ©M M-b¡C + +·í±z¦b¤@­Ó¦rªº¤¤¶¡®É¡AM-f ·|²¾°Ê¨ì³o­Ó¦rªº§À¤Ú¡C·í±z¦b¦r»P¦r¶¡ªºªÅ¥Õ®É¡A +M-f ·|²¾°Ê¨ì¤U¤@­Ó¦rªº§À¤Ú¡CM-b ªº®ÄªG¬Û¦ü¡A¥u¬O¤è¦V¤£¦P¡C + +>> «ö´X¦¸ M-f ©M M-b¡A¤¤¶¡§¨Âø¤@¨Ç C-f ©M C-b¡A + ³o¼Ë¤l±z´N¥i¥HÆ[¹î M-f ©M M-b ¦b¦UºØ¡u¦ì¦b¦r¶¡©Î¦r¤¸¶¡¡v + ªº¤£¦P¦ì¸m¡A©Òªí²{¥X¨Óªº¦æ¬°¡C + +½Ðª`·N C-f ¡B C-b ©M M-f ¡B M-b ¨â¹ï¤§¶¡ªº¬Û¦ü©Ê¡C¡u¸g±`¡vªºª¬ªp¬O¡G +META ¦r¤¸¬O¥Î¨Ó§@¬°»P¡u¥H»y¨¥©w¸q¥Xªº³æ¦ì¡]¦r¡B¥y¤l¡B¬q¸¨¡^¡v¦³Ãöªº¾Þ +§@¡A¦Ó CONTROL ¦r¤¸«h¬O§@¥Î¦b¡u»P±z©Ò½s¿èµLÃöªº¡y°ò¥»¡z³æ¦ì¡]¦r¤¸©Î¦æ +µ¥¡^¡v¤W¡C + +³o­Ó¬Û¦ü©Ê¦b¡u¦æ»P¥y¤l¡v¤§¶¡¤]¦P¼Ë¾A¥Î¡GC-a ©M C-e ·|±N´å¼Ð²¾°Ê¨ì¡u¤@ +¦æ¡vªº ¶}©l©Mµ²§À³B¡A¦ÓM-a ©M M-e «h±N´å¼Ð²¾°Ê¨ì¡u¤@¥y¡vªº ¶}©l©Mµ²§À +³B¡C + +>> ¸ÕµÛ«ö¨â¦¸ C-a¡A¦A«ö¨â¦¸ C-e¡C + ¸ÕµÛ«ö¨â¦¸ M-a¡A¦A«ö¨â¦¸ M-e¡C + +¬Ý¤@¤U¬°¤°»ò­«½Æªº C-a «ü¥O·|¨S¦³§@¥Î¡A¦Ó­«½Æªº M-a «ü¥O«hÄ~Äò²¾°Ê¨ì¤U +¤@­Ó¥y¤l¡CÁöµM³o¨Ã¤£¯à»¡¬O§¹¥þÃþ¤ñ¡A¦ý¬O¨ä¤¤¨C­Ó«ü¥Oªº¦æ¬°¬Ý°_¨Ó³£¤Q¤À +¦ÛµM¡C + +´å¼Ð¦b¤å¦r¤¤ªº¦ì¸m¤]¥i¥HºÙ§@¡uÂI¦ì¡] point ¡^¡v¡C²³æ¨Ó»¡´N¬O¡G´å¼Ðªí +²{¥X¿Ã¹õ¤¤¡uÂI¦ì¡v©Ò¦bªº¤å¦r¦ì¸m¡C + +³o¸Ì¬O¤@¨Ç²³æ¡u´å¼Ð²¾°Ê¡] cursor-moving ¡^¾Þ§@¡vªº¾ã²z¡A¨ä¤¤¤]¥]¬A¤F +¡u¦r©M¥y¡vªº²¾°Ê«ü¥O¡G + + C-f ©¹«e²¾°Ê¤@­Ó¦r¤¸ + C-b ©¹¦^²¾°Ê¤@­Ó¦r¤¸ + + M-f ©¹«e²¾°Ê¤@­Ó¦r¡i¤¤¤å¬O²¾°Ê¨ì¤U¤@­Ó¼ÐÂI²Å¸¹¡j + M-b ©¹¦^²¾°Ê¤@­Ó¦r¡i¤¤¤å¬O²¾°Ê¨ì¤W¤@­Ó¼ÐÂI²Å¸¹¡j + + C-n ²¾°Ê¨ì¤U¤@¦æ + C-p ²¾°Ê¨ì¤W¤@¦æ + + C-a ²¾°Ê¨ì¦æ­º + C-e ²¾°Ê¨ì¦æ§À + + M-a ²¾¦^¥y­º + M-e ²¾¨ì¥y§À + +>> ½m²ß´X¦¸³o¨Ç«ü¥O¡C³o¨Ç³£¬O³Ì±`¨Ï¥Î¨ìªº«ü¥O¡C + +ÁÙ¦³¨â­Ó­«­nªº´å¼Ð°Ê§@¡] cursor-motion ¡^«ü¥O¡AM-<¡] META Less-than ¡^¡A +²¾°Ê¨ì¤å¦rªº³Ì¶}©l¡A¥H¤ÎM->¡] META Greater-than ¡^¡A²¾°Ê¨ì¤å¦rªº³Ì«á¡C + +¦b¤j³¡¥÷ªº²×ºÝ¾÷¡A¡u<¡v¬O¦b comma ¤W¤è¡A©Ò¥H±z¥²¶·­n¨Ï¥Î shift Áä¨ÓÁä +¤J¡C¦b³o¨Ç²×ºÝ¾÷¤W¡A±z¥²¶·¨Ï¥Î shift Áä¨ÓÁä¤J M-<¡F¨S¦³¨Ï¥Î shift Áä¡A +±z´NÅܦ¨Áä¤J M-comma ¤F¡C + +>> ²{¦b¸Õ¤@¤U M-< ¡A²¾¨ì¥»§Ö³t«ü«nªº³Ì¶}©l¡C + µM«á¦A­«½Æ¦a¨Ï¥Î C-v ¦^¨ì³o¸Ì¡C + +>> ²{¦b¸Õ¤@¤U M-> ¡A²¾¨ì¥»§Ö³t«ü«nªº³Ì«á¡C + µM«á¦A­«½Æ¦a¨Ï¥Î M-v ¦^¨ì³o¸Ì¡C + +¦pªG±zªº²×ºÝ¾÷¦³¤è¦VÁ䪺¸Ü¡A±z¤]¥i¥H¥Î¤è¦VÁä²¾°Ê´å¼Ð¡C§Ú­Ì¦³¤T­Ó²z¥Ñ«Ø +ij±z¾Ç²ß C-b ¡B C-f ¡B C-n ¡B ©M C-p ¡G(1) ¥ô¦óªº²×ºÝ¾÷³£¯à¨Ï¥Î¡C(2) +¤@¥¹±z¨Ï¥Î Emacs ¬Û·í¼ô½m¤F¡A±z·|µo²{Áä¤J³o¨Ç CONTROL ¦r¤¸¡A¤ñ°_¨Ï¥Î¤è +¦VÁä§Ö¦h¤F¡]¦]¬°±z¤£»Ý­n±N¤â²¾¶}¥´¦r°Ï¡^¡C(3) ¤@¥¹±z¨Ï¥Î³o¨Ç CONTROL +¦r¤¸«ü¥O¦¨¬°²ßºD¡A±z¤]¥i¥H«Ü®e©ö¦a¾Ç·|¨ä¥L¶i¶¥ªº´å¼Ð°Ê§@«ü¥O¡C + +¤j³¡¥÷ªº Emacs «ü¥O±µ¨ü¼Æ¦r°Ñ¼Æ¡F¹ï¤j³¡¥÷ªº«ü¥O¦Ó¨¥¡A¥¦ªº§@¥Î¬O«ü©w­« +½Æ¦¸¼Æ¡C±z­n«ü©w¤@­Ó«ü¥Oªº­«½Æ¦¸¼Æªº§@ªk¬O¡G¥ýÁä¤J C-u¡AµM«á¦b±zÁä¤J«ü +¥O«e¡AÁä¤J¥Nªí­«½Æ¦¸¼Æªº¼Æ¦ì¡C¦pªG±z¦³¤@­Ó META¡]©Î EDIT ©Î ALT ¡^Áä¡A +¨º»ò±zÁÙ¦³¥t¥~¤@­Ó´À¥N§@ªk¨Ó¿é¤J¼Æ¦r°Ñ¼Æ¡G«ö¦í META Áä®É¥´¤J³o¼Æ¦r¡C§Ú +­Ì«Øij±z¾Ç²ß C-u ªº¤èªk¡A¦]¬°¥¦¦b¥ô¦ó²×ºÝ¾÷³£¥i¥H¨Ï¥Î¡C¦¹¤@¼Æ¦r°Ñ¼Æ¤] +ºÙ§@¬°¡u¦r­º°Ñ¼Æ¡v¡A¦]¬°±z¦b³o°Ñ¼Æ©Ò§@¥Î¨ìªº«ü¥O«eÁä¤J¥¦¡C + +Á|¨Ò¨Ó»¡¡A C-u 8 C-f ¦V«e²¾°Ê 8 ­Ó¦r¤¸¡C + +>> ¸ÕµÛ¥H¤@­Ó¼Æ¦r°Ñ¼Æ¨Ó¨Ï¥Î C-n ©Î C-p¡A + ¥u¤@­Ó«ü¥O´N±N´å¼Ð²¾°Ê¨ì³o¦æªºªþªñ¡C + +¤j³¡¥÷ªº«ü¥O¨Ï¥Î¼Æ¦r°Ñ¼Æ¨Ó§@¬°¨ä­«½Æ¦¸¼Æ¡A¦ý¬O¨ä¤¤¦³¨Ç«ü¥O«h¬O§@¬°¨ä¥L +¥Î³~¡C¦³´X­Ó«ü¥O¡]¥Ø«e±z©|¥¼¾Ç¨ì¡^±N¥¦§@¬°ºX¼Ð -- ¥H¤@­Ó¦r­º°Ñ¼Æªº«¬ºA +¥X²{¡A¦Ó¤£ºÞ¨ä­È¬°¦ó¡A¥¦­ÌÅý³o«ü¥O°µ¨Ç¤£¤@¼Ëªº¨Æ¡C + +C-v ©M M-v «h¬O¥t¤@Ãþªº¨Ò¥~¡C·íµ¹©w¤@­Ó°Ñ¼Æ®É¡A¥¦­Ì±²°Ê¡u©Ò«ü©wªº¼Æ¶q +ªº¦æ¡]¥H¦æ¬°³æ¦ì¡^¡v¡A¦Ó¤£¬O¥H¡u¿Ã¹õ¡v¬°³æ¦ì±²°Ê¡CÁ|¨Ò¨Ó»¡¡AC-u 8 C-v +±NÅã¥Ü¿Ã¹õ±²°Ê 8 ¦æ¡C + +>> ²{¦b¸ÕµÛÁä¤J C-u 8 C-v¡C + +³o«ü¥OÀ³¸Ó¤w¸g±N¿Ã¹õ¦V¤W²¾¤F 8 ¦æ¡C­Y±z·Q±N¥¦¦A¦¸¦a¦V¤U±²°Ê¡A±z¥i¥H¦b +°õ¦æ M-v ®Éµ¹©w¤@­Ó°Ñ¼Æ¡C + +¦pªG±z¥¿¦b¨Ï¥Î X µøµ¡¨t²Î¡A¦b Emacs µøµ¡¥ª¤â°¼À³¸Ó¦³¤@­ÓºÙ¬°¡u±²°Ê¶b¡v +ªºªø¤è«¬°Ï°ì¡C±z¥i¥H¥Î·Æ¹«¦b±²°Ê¶b«ö¤@¤U¨Ó±²°Ê¤å¦r¡C + +>> ¸ÕµÛ¦b¡u±²°Ê¶b¤º¤Ï¥Õ°Ï°ì¤W¡vÀ£¤@¤U¤¤¶¡¶s¡C³oÀ³¸Ó·|±N¤å¦r±²°Ê¨ì + ¡u¥Ñ±z©Ò«ö¤@¤U·Æ¹«ªº¦a¤è¡v©Ò¨M©wªº¦ì¸m¡C + +>> ·í«ö¦í¤¤¶¡®É¡A¸ÕµÛ±N·Æ¹«¤W¤U²¾°Ê¡C + ±z·|¬Ý¨ì¤å¦rÀHµÛ±z²¾°Ê·Æ¹«¦Ó¤W¤U²¾°Ê¡C + + +* ·í EMACS µo§b®É¡] WHEN EMACS IS HUNG ¡^ +----------------------------------------- + +¦pªG Emacs °±¤î¦^À³±zªº«ü¥O¡A±z¥i¥HÁä¤J C-g ¨Ó¦w¥þ¦a°±¤î¥¦¡C±z¤]¥i¥H¨Ï +¥Î C-g ¨Ó°±¤î°õ¦æ¹L¤[ªº«ü¥O¡C + +±z¤]¥i¥H¨Ï¥Î C-g ¨Ó¨ú®ø¼Æ¦r°Ñ¼Æ©Î±z¤£·Q­n§¹¦¨ªº«ü¥O¡C + +>> Áä¤J C-u 100 ¥H³]©w¤@­Ó 100 ªº¼Æ¦r°Ñ¼Æ¡AµM«áÁä¤J C-g¡C + ²{¦bÁä¤J C-f¡C¥¦À³¸Ó¥u·|²¾°Ê¤@­Ó¦r¤¸¡A¦]¬°±z¤w¸g¥H C-g + ¨ú®ø¤F°Ñ¼Æ¡C + +¦pªG±z¤w¸g¤£¤p¤ß¦aÁä¤J¤@­Ó ¡A±z¥i¥H C-g ¨Ó¨ú®ø¥¦¡C + + +* µL®Ä¤Æªº«ü¥O¡] DISABLED COMMANDS ¡^ +------------------------------------- + +¦³¤@¨Ç Emacs «ü¥O³Q¡uµL®Ä¤Æ¡v¤F¡A¦]¦¹ªì¾ÇªÌ¤£·|·N¥~¦a¨Ï¥Î¨ì¥¦­Ì¡C + +¦pªG±zÁä¤J¤F¬Y¤@­ÓµL®Ä¤Æªº«ü¥O¡AEmacs ·|Åã¥Ü¤@­Ó°T®§¡A»¡©ú³o­Ó«ü¥O¬O¤° +»ò¡A¨Ã¥B¸ß°Ý±z¬O§_·Q­nÄ~Äò¡AµM«á°õ¦æ³o«ü¥O¡C + +¦pªG±z¯uªº·Q­n¸Õ¤@¤U³o­Ó«ü¥O¡A¨º»ò¦b·í Emacs ¸ß°Ý±z®É¡A½ÐÁä¤JªÅ¥Õ¡C¤@ +¯ë¨Ó»¡¡A¦pªG±z¤£·Q­n°õ¦æ³o­ÓµL®Ä¤Æªº«ü¥O¡A½Ð¥H¡yn¡z¨Ó¦^µª¥¦¡C + +>> Áä¤J C-x C-l ¡]³o¬O­ÓµL®Ä¤Æªº«ü¥O¡^ + µM«áÁä¤J n ¨Ó¦^µª°ÝÃD¡C + + +* µ¡®æ¡] WINDOWS ¡^ +------------------- + +Emacs ¥i¥H¦³¼Æ­Óµ¡®æ¡A¨C¤@­ÓÅã¥Ü¥¦¦Û¤vªº¤å¦r¡C§Ú­Ì¦bµy«á·|¸ÑÄÀ¦p¦ó¨Ï¥Î +¦h­«µ¡®æ¡C²{¦b§Ú­Ì·Q­n¸ÑÄÀ¦p¦ó°£¥h¦h¾lªºµ¡®æ¡AµM«á¦^¨ì°ò¥»ªº³æµ¡®æ½s¿è¡C +¥¦«Ü²³æ¡G + + C-x 1 One window ¡]§Y¡A°£¥h¨ä¥L©Ò¦³ªºµ¡®æ¡^¡C + +¨º¬O­Ó CONTROL-x «á­±¸òµÛ¼Æ¦r 1 ¡CC-x 1 ±N§t¦³´å¼Ðªºµ¡®æÂX¤j¨ì¾ã­Ó¿Ã¹õ¡C +¥¦±N©Ò¦³¨ä¥Lªºµ¡®æ°£¥h¡C + +>> ²¾°Ê´å¼Ð¨ì¥»¦æ¨Ã¥BÁä¤J C-u 0 C-l¡C +>> Áä¤J CONTROL-h k CONTROL-f¡C + ¬Ý¬Ý³o­Óµ¡®æ¦b·í¤@­Ó·sªºµ¡®æ¥X²{ + ¡]¥HÅã¥Ü¦³Ãö CONTROL-f «ü¥Oªº¤å¥ó®É¡^¡A¥¦¬O¦p¦óÁY¤pªº¡C + +>> Áä¤J C-x 1 ¥H¨Ï¤å¥ó¦Cªíµ¡®æ®ø¥¢¡C + +³o­Ó«ü¥O¨Ã¤£¹³±z¥ý«e©Ò¾Ç¹Lªº«ü¥O¨º¯ë¡A¥¦¥]¬A¤F¨â­Ó¦r¤¸¡C¥¦¬O¥H¦r¤¸ +CONTROL-x §@¬°¶}©l¡C¦³¤@¾ã­Ó¨t¦Cªº«ü¥O¬O¥H CONTROL-x §@¬°¶}©l¡F¥¦­Ì¤§ +¤¤¦³³\¦h¬O»P¡uµ¡®æ¡BÀɮסB¼È¦s°Ï¥H¤Î¬ÛÃö¨Æª«¡v¦³Ãöªº¡C³o¨Ç«ü¥O¦³ 2 ¡B +3 ©Î 4 ­Ó¦r¤¸ªø¡C + + +* ´¡¤J»P§R°£¡] INSERTING AND DELETING ¡^ +---------------------------------------- + +¦pªG±z·Q­n´¡¤J¤å¦r¡A§â¥¦Áä¤J´N¬O¤F¡C±z¥i¥H¬Ý¨ìªº¦r¤¸¡A¹³¬O A ¡B 7 ¡B * +µ¥¡A³Q Emacs µø¬°¤å¦r¨Ã¥B¥i¥Hª½±µ´¡¤J¡CÁä¤J +¡] carriage-return Áä¡^¥H´¡¤J¤@­Ó Newline ¦r¤¸¡C + +±z¥i¥HÁä¤J ¥H§R°£±z³Ì«áÁä¤Jªº¦r¤¸¡C ¬O¤@­ÓªºÁä½LÁä +-- ´N¬O±z³q±`¦b Emacs ¥~¡A¨Ï¥Î¨Ó¡u§R°£±z³Ì«áÁä¤J¦r¤¸¡vªº¦P¤@­Ó¡C¤@¯ë¨Ó +»¡¬O­Ó¦b ¤W¤è¼Æ¦æªº¤jÁä¡A³q±`¼Ð¥Ü¬°¡yDelete¡z¡B¡yDel¡z©Î +¡yBackspace¡z¡C + +¦pªG¦b¨º¸Ì¦³­Ó¼Ð¥Ü¬°¡yBackspace¡zªº¤jÁä¡A¨º»ò¨º¤@­Ó´N¬O±z¨Ï¥Î¨Ó§@¬° + ªºÁä¤F¡C¬Y­Ó¦a¤è¥i¯à¤]·|¦³¥t¤@­Ó¼Ð¥Ü¬°¡yDelete¡zªºÁä¡A¦ý¨º­Ó +¨Ã¤£¬O ¡C + +§ó¤@¯ë¦a»¡¡A ±N¦ì©ó¥Ø«e´å¼Ð¦ì¸m«e¤@­Ó¦r¤¸¥[¥H§R°£¡C + +>> ²{¦b°µ -- Áä¤J¤@¨Ç¦r¤¸¡AµM«áÁä¤J´X¦¸ ¨Ó§R°£¥¦­Ì¡C + ¤£­n¾á¤ß³o­ÓÀÉ®×·|³Q§ó°Ê¡F±z¤£·|¼vÅT¨ì­ì¨Óªº§Ö³t«ü«n¡C + ¡]±z²{¦b¬Ý¨ìªº¡^³o¤@­Ó¬O±zªº­Ó¤H«þ¨©¡C + +·í¤@¦æ¤å¦rÅܱo¤ñ¡u¦bµ¡®æ¤¤ªº¤@¦æ¡vªø®É¡A³o¤@¦æ¤å¦r·|¡u±µÄò¡v¨ì²Ä¤G¦æµ¡ +®æ¦æ¡C³o®É¤@­Ó¤Ï±×½u¡u\¡v¡]©Î¦pªG±z¨Ï¥Îµøµ¡¤ÆªºÅã¥Ü¡A«h¬O¤@­Ó¤p¤pÅsÅs +ªº½bÀY¡^·|¦ì¦b¨ä¥kÃä¬É¥H«ü¥X¦¹¦æ±µÄòµÛ¡C + +>> ´¡¤J¤å¦r¡A¤@ª½¨ì±z¹F¨ì¥kÃä¬É¡AµM«á¦AÄ~Äò´¡¤J¡C + ±z·|¬Ý¨ì¤@­Ó±µÄò¦æ¥X²{¡C + +>> ¨Ï¥Î §R°£¤@¨Ç¤å¦r¡Aª½¨ì¦¹¦æ¦A¦¸¦¨¬°¤@­Óµ¡®æ¦æ¡C + ±µÄò¦æ®ø¥¢¤F¡C + +±z¥i¥H¹³§R°£¨ä¥L¦r¤¸¤@¼Ë¦a§R°£ Newline ¦r¤¸¡C±N¦ì¦b¨â¦æ¤¤ªº Newline ¦r +¤¸§R°£·|Åý¥¦­Ì¦X¨Ö¦¨¬°¤@¦æ¡C¦pªG¦X¨Öªºµ²ªG¨Ï³o¤@¦æ¤Óªø¡A¥H­PµLªk²Å¦Xµ¡ +®æªº¼e«×¡A¥¦·|¥H¤@­Ó±µÄò¦æ¨ÓÅã¥Ü¡C + +>> ²¾°Ê´å¼Ð¨ì¥»¦æªº¶}ÀY¨ÃÁä¤J ¡C + ³o·|±N¥»¦æ»P¨ä«e¤@¦æµ²¦X¬°¤@¦æ¡C + +>> Áä¤J ¥H­«·s´¡¤J±z­è¤~§R°£ªº Newline ¦r¤¸¡C + +°O±o¤j³¡¥÷ªº Emacs «ü¥O³£¥i¥Hµ¹¤©¤@­Ó­«½Æ­p¼Æ¡] repeat count ¡^¡F³o¤] +¥]¬A¤F¤å¦r¦r¤¸¡C­«½Æ¤@­Ó¤å¦r¦r¤¸·|±N¥¦´¡¤J¼Æ¦¸¡C + +>> ²{¦b´N¸Õ¤@¤U -- Áä¤J C-u 8 * ¥H´¡¤J ********¡C + +±z²{¦b¤w¸g¾Ç¨ì¤F¡uÁä¤J­Ó¤°»òªF¦è¶i Emacs ¥H¤Î­×¥¿¿ù»~¡vªº¤j³¡¥÷°ò¥»¤è +ªk¡C±z¤]¥i¥H¡u¥H¦r©Î¦æ¬°³æ¦ì¡v¦a§R°£¡C³o¸Ì¦³¥÷Ãö©ó¡u§R°£¾Þ§@¡vªººK­n¡G + + §R°£´å¼Ð©Ò¦bªº «e¤@­Ó¦r¤¸ + C-d §R°£´å¼Ð©Ò¦bªº «á¤@­Ó¦r¤¸ + + M- §R°£´å¼Ð©Ò¦bªº «e¤@­Ó¦r + M-d §R°£´å¼Ð©Ò¦bªº «á¤@­Ó¦r + + C-k §R°£±q´å¼Ð©Ò¦b¨ì¡u¦æ§À¡v¶¡ªº¦r¤¸ + M-k §R°£±q´å¼Ð©Ò¦b¨ì¡u¥y§À¡v¶¡ªº¦r¤¸ + +ª`·N¡u ©M C-d¡vÁÙ¦³¡uM- ©M M-d¡v¬O¥­¦æ¦a¦Û C-f ©M +M-f ÂX¥R¥X¨Óªº¡]¶â¡A ¨Ã¤£¬O±±¨î¦r¤¸¡A¦ý¬O¨S¤°»ò¦n¾á¤ßªº¡^¡C +C-k ©M M-k ¦b¬YºØµ{«×¤W»P C-e ©M M-e ¤@¼Ë¡A¦pªG§â¡u¤@¦æ¡v©M¡u¤@¥y¡v§@ +¬°Ãþ¤ñªº¸Ü¡C + +±z¤]¥i¥H¥u¥H¤@ºØ¤èªk¨Ó§R°£½w½Ä°Ï¤ºªº¥ô¦ó³¡¥÷¡A¥ý²¾°Ê¨ì±z·Q­n§R°£ªº³¡¥÷ +ªº¤@ºÝ¡AµM«áÁä¤J C-@ ©Î C-SPC ¡]¥ô¤@­Ó§Y¥i¡^¡C¡] SPC «üªº¬O Space Bar +¡^¦A²¾¨ì¨º³¡¥÷ªº¥t¤@ºÝ¡A±µµÛÁä¤J C-w ¡C³o¼Ë´N·|§â¤¶©ó³o¨â­Ó¦ì¸m¶¡ªº©Ò +¦³¤å¦r§R°£¡C + +>> ²¾°Ê´å¼Ð¨ì¤W¤@¬q¶}ÀYªº¡u±z¡v¦r¡C +>> Áä¤J C-SPC ¡C Emacs À³¸Ó·|¦b¿Ã¹õªº¤U¤èÅã¥Ü¤@­Ó¡uMark set¡v°T®§¡C +>> ²¾°Ê´å¼Ð¨ì²Ä¤G¦æ¤¤ªº¡uºÝ¡v¦r¡C +>> Áä¤J C-w ¡C³o¼Ë·|§â±q¡u±z¡v¶}©l¨ì­è¦n¡uºÝ¡v¤§«eªº¤å¦r§R°£¡C + +­nª`·Nªº¬O¡u±þ±¼¡] killing ¡^¡v©M¡u§R°£¡] deleting ¡^¡vªº¤£¦P¦b©ó³Q±þ +±¼ªº¥i¥H©Ô¦^¡A¦Ó³Q§R°£ªº«h¤£¯à¡C¡i¦³ÂIÃø¥H²z¸Ñ¡A±z¥i¥H³o»ò·Q¡G(1)¡u³Q +±þ±¼ªº¡v©|¦s¤r°©¡A¦Ó¡u³Q§R°£ªº¡v«h¤r°©µL¦s¤F¡I¥i¨£±o¹ï¹q¸£¸ê®Æ¨Ó»¡¡A +¡u§R°£¡v¤ñ¡u±þ±¼¡vÄY­«¦h¤F¡C(2)¹ê»Ú¤W¡A´Nºâ³Q§R°£¤F¡A§Ú­ÌÁÙ¬O¦³§Þ³N¥i +¥H§â¥¦±Ï¦^¨Ó¡A¤×¨ä¬O¤å¦r¸ê®Æ¡A«e´£¬O§R°£«á¤£¯à¶i¦æ¹êÅé°O¾ÐÅ骺®æ¦¡¤Æ°Ê +§@¡C¦ý³o¹ï©ó¤@¯ë¨Ï¥ÎªÌ¦Ó¨¥¬O¤£¥i¯àªº¡A¦]¦¹´N¤£¦Ò¼{³o±¡§Î¤F¡C¡j­«·s´¡¤J +³Q±þ±¼ªº¤å¦rºÙ¬°¡u©Ô¦^¡] yanking ¡^¡v¡C¤@¯ë¦Ó¨¥¡A¥i¥H²¾°£±¼«Ü¦h¤å¦rªº +«ü¥O·|§â¨º¨Ç¤å¦rÀx¦s°_¨Ó¡]¥¦­Ì³]©w¦¨±z¥i¥H±N¤å¦r©Ô¦^¡^¡A¦Ó¨º¨Ç¥u¬O§R°£ +¤@­Ó¦r¤¸©ÎªÌ¥u¬O°£¥hªÅ¥Õ¦æ©ÎªÅ¥Õªº«ü¥O¡A«h¤£·|Àx¦s³o¨Ç³Q§R°£ªº¤å¦r¡]¦] +¦¹±z¤£¯à±N¨º¤å¦r©Ô¦^¡^¡C + +>> ²¾°Ê´å¼Ð¨ì¤@«DªÅ¥Õ¦æªº¶}©l¡C + µM«áÁä¤J C-k ±þ±¼¦b¨º¤@¦æ¤Wªº¤å¦r¡C +>> ²Ä¤G¦¸Áä¤J C-k¡C±z±N·|¬Ý¨ì¥¦±þ±¼¸ò¦b¨º¤@¦æ«á­±ªº Newline ¦r¤¸¡C + +½Ðª`·N³æ¿Wªº C-k ·|§â¤@¦æªº¤º®e±þ±¼¡A¦Ó²Ä¤G­Ó C-k «h·|±þ±¼¨º¤@¦æ¥»¨­¡A +¨Ã¥B¨Ï±o©Ò¦³¨ä¥Lªº¦æ¦V¤W²¾°Ê¡CC-k ¥H«Ü¯S§Oªº¤è¦¡¨Ó³B²z¼Æ¦r°Ñ¼Æ¡A¥¦·|±þ +±¼«Ü¦h¦æ¥H¤Î¥¦­Ìªº¤º®e¡A³o¤£¶È¶È¬O­«½Æ¦Ó¤w¡AC-u 2 C-k ·|§â¨â¦æ¥H¤Î¥¦­Ì +ªº Newline ¦r¤¸±þ±¼¡F¦pªG¥u¬OÁä¤J C-k ¨â¦¸¨Ã¤£·|³o¼Ë¡C + +±N³Q±þ±¼ªº¤å¦r¦^´_ªº°Ê§@ºÙ¬°¡u©Ô¦^¡] yanking ¡^¡v¡C¡]§â¥¦·Q¹³¦¨±z§â§O +¤H±q±z¨­¤W¹Ü¥hªºªF¦è²r¤O¦a©Ô¦^¨Ó¡^±z¥i¥H¦b±z§R°£¤å¦rªº¦a¤è©Ô¦^¡A¤]¥i¥H +¦b¤å¦rªº¨ä¥L¦a¤è©Ô¦^¡C±z¥i¥H©Ô¦^¼Æ¦¸¦P¼Ëªº¤å¦r¡A¥H»s§@¥¦ªº¼Æ¥÷«þ¨©¡C + +©Ô¦^ªº«ü¥O¬° C-y¡C¥¦·|¦b¥Ø«e´å¼Ðªº¦ì¸m­«·s´¡¤J³Ì«á±þ±¼ªº¤å¦r¡C + +>> ¸Õ¸Õ¬Ý¡FÁä¤J C-y ±N¤å¦r©Ô¦^¡C + +¦pªG±z³sÄò¦a°µ¤F¼Æ¦¸ C-k¡A©Ò¦³³Q±þ±¼ªº¤å¦r³£·|³QÀx¦s¦b¤@°_¡A¦]¦¹°µ¤@¦¸ +C-y ´N·|§â©Ò¦³³o¨Ç¦æ³£©Ô¦^¨Ó¡C + +>> ²{¦b°µ¤@¤U¡AÁä¤J C-k ¼Æ¦¸¡C + +²{¦b­n¦^´_¨º¨Ç±þ±¼ªº¤å¦r¡G + +>> Áä¤J C-y¡CµM«á§â´å¼Ð©¹¤U²¾°Ê­Ó´X¦æ¡A¦A¤@¦¸Áä¤J C-y¡C + ±z²{¦bª¾¹D¦p¦ó½Æ»s¬Y¨Ç¤å¦r¤F¡C + +¦pªG±z¦³¤@¨Ç¤å¦r·Q­n©Ô¦^¨Ó¡A¦ý¬O«á¨Ó±z¤S±þ¤F¬Y¨ÇªF¦è¡A¨º»ò¸Ó«ç»ò°µ©O¡H +C-y ·|§â³Ìªñ±þ±¼ªº©Ô¦^¨Ó¡A¦ý¬O¥ý«eªº¤å¦r¨Ã¨S¦³®ø¥¢¡A±z¥i¥H¥Î M-y ¨Ó¦^ +¨ì¥¦¡C·í±z¤w¸g¨Ï¥Î C-y §â³Ìªñ±þ±¼ªº©Ô¦^¨Ó¤§«á¡A¦AÁä¤J M-y ¨Ó§â³o¨Ç©Ô¦^ +¨Óªº¤å¦r´À´«¬°¥ý«e©Ò±þ±¼ªº¡C¤@¦¸¤S¤@¦¸¦aÁä¤J M-y ·|§â¥ý«e¦A¥ý«e©Ò±þ±¼ +ªº¤å¦r±a¦^¨Ó¡C·í±z¨ì¤F±z·Q§äªº¤å¦r®É¡A±z¤£»Ý­n°µ¥ô¦ó¨Æ¨Ó«O¦s¥¦¡A¥u­nÄ~ +Äò±zªº½s¿è¡A§â³o¨Ç¤w©Ô¦^ªº¤å¦r¯d¦b¨º¸Ì´N¦n¡C + +¦pªG±z M-y °µ¤F«Ü¦h¦¸¡A±z¥i¯à·|¦^¨ì°_©lÂI¡A¤]´N¬O³Ìªñ±þ±¼ªº¡C + +>> ±þ±¼¤@¦æ¡A¨ì³B¶¶¡A¦A±þ±¼¥t¤@¦æ¡C + µM«á¥Î C-y ±N²Ä¤G¦¸±þ±¼ªº¨º¦æ±a¦^¨Ó¡C + µM«á¦A¥Î M-y¡A¥¦±N·|³Q²Ä¤@¦¸±þ±¼ªº¨º¦æ¨ú¥N¡C + ¦A°µ´X¦¸ M-y ¬Ý¬Ý±z·|±o¨ì¤°»ò¡C + ¤£¶¡Â_¦a°µ¡Aª½¨ì²Ä¤G­Ó±þ±¼¦æ¦^¨Ó¡A¦A°µ­Ó´X¦¸¡C + ¦pªG±z·Qªº¸Ü¡A±z¥i¥H¸ÕµÛµ¹ M-y ¥¿ªº©Î¬O­tªº°Ñ¼Æ¡C + + +* ¨ú®ø°Ê§@¡] UNDO ¡^ +-------------------- + +¦pªG±z¹ï¤å¦r°µ¤F¤@¨Ç§ïÅÜ¡A«á¨Óı±o¥¦¬O­Ó¿ù»~¡A±z¥i¥H Undo «ü¥O¨ú®ø³o¤@ +­Ó§ïÅÜ¡AC-x u¡C + +³q±` C-x u ·|§â¤@­Ó«ü¥O©Ò³y¦¨ªº§ïÅܨú®ø±¼¡F¦pªG±z¦b¤@¦æ¤¤­«½Æ¤F³\¦h¦¸ +C-x u¡A¨C¤@­Ó­«½Æ³£·|¨ú®øÃB¥~ªº«ü¥O¡C + +¦ý¬O¦³¨â­Ó¨Ò¥~¡G +(1) ¨S¦³§ïÅܤå¦rªº«ü¥O¤£ºâ¡]³o¥]¬A¤F´å¼Ð²¾°Êªº«ü¥OÁÙ¦³±²¶b«ü¥O¡^¡F +(2) ¦Û¦æÁä¤Jªº¦r¤¸¥H¤@¸s¤@¸s -- ¨C¸s³Ì¦h 20 ­Ó -- ¨Ó¶i¦æ³B²z¡C + ¡]³o¬O¬°¤F´î¤Ö±z¦b¨ú®ø¡u´¡¤J¤å¦r°Ê§@¡v©Ò¥²¶·Áä¤J C-x u ªº¦¸¼Æ¡^ + +>> ¥H C-k ±N³o¤@¦æ±þ±¼¡AµM«áÁä¤J C-x u «á¥¦·|¦A¦¸¥X²{¡C + +C-_ ¬O¥t¤@­Ó¨ú®ø«ü¥O¡F¥¦ªº§@¥Î´N©M C-x u ¤@¼Ë¡A¦ý¬O¦b¤@¦æ¤¤¥¦¤ñ¸û®e©ö +Áä¤J³\¦h¦¸¡CC-_ ªº¯ÊÂI¬O¦b¬Y¨ÇÁä½L¤¤¤£¤Ó²M·¡¦p¦óÁä¤J¥¦¡A³o¤]¬O¬°¤°»ò§Ú +­Ì¦P®É´£¨Ñ C-x u ªº­ì¦]¡C¦b¬Y¨Ç²×ºÝ¾÷¡A±z¥i¥H«ö¦í CONTROL ¦AÁä¤J / ¡A +¨ÓÁä¤J C-_¡C + +¤@­Ó¼Æ¦r°Ñ¼Æ¹ï C-_ or C-x u ¨Ó»¡¡A¬O§@¬°­«½Æªº¦¸¼Æ¡C + + +* Àɮס] FILE ¡^ +---------------- + +¬°¤F¨Ï±z½s¿èªº¤å¦r¥Ã¤[«O¦s¡A±z¥²¶·§â¥¦©ñ¨ì¤@­ÓÀɮפ¤¡C¤£µM¡A·í±zÂ÷¶} +Emacs «á¡A¥¦´N·|ÀH¤§®ø¥¢¡C¬°¤F§â±zªº¤å¦r©ñ¦bÀɮפ¤¡A±z¥²¶·¦b±zÁä¤J³o¨Ç +¤å¦r«e¡u§ä¡] find ¡^¡vÀɮסC¡]³o¤]ºÙ¤§¬°¡u«ô³X¡] visiting ¡^¡vÀɮס^ + +§ä¤@­ÓÀɮתí¥Ü±z¥i¥H¦b Emacs ¤¤¬Ý¨ìÀɮתº¤º®e¡C±q³\¦h¤è­±¨Ó¬Ý¡A¥¦´N¹³ +¬O±zª½±µ½s¿è¨º­ÓÀɮפ@¼Ë¡CµM¦Ó¡Aª½¨ì±z¡uÀx¦s¡v³o­ÓÀɮפ§«e¡A±z¨Ï¥Î +Emacs ½s¿è©Ò°µ¥Xªº§ïÅܨ䣷|«O¦s¤U¨Ó¡C³o´N¬O¬°¤°»ò·í±z¤£·Q­n®É¡A±z¥i¥H +ÁקK¯d¤U­×§ï¨ì¤@¥bªºÀɮצb¨t²Î¤¤¡C§Y¨Ï·í±zÀx¦s¤F¡AEmacs ¤]·|§â­ì¥»ªºÀÉ +®×¥H¤@­Ó¤£¦Pªº¦WºÙ«O¯d¤U¨Ó¡A­Y±zµy«áı±o±zªº§ïÅܬO¤@­Ó¿ù»~ªº¸Ü¡A´N¥i¥H +¨Ï¥Î¥¦¡C + +¦b¾aªñ¿Ã¹õªº¤U¤è¡A±z¥i¥H¬Ý¨ì¥Ñ¯}§é¸¹¶}©l»Pµ²§ôªº¤@¦æ -- ³q±`¬O¥H¡u--:-- +TUTORIAL.zh¡v©Î¨ä¥LÃþ¦üªºªF¦è§@¬°¶}©l¡C³o¬O¿Ã¹õªº¤@³¡¤À¡A³q±`¥Î¨Óªí¥Ü +±z¥¿¦b«ô³XªºÀɮסC²{¦b¡A±z¥¿¦b«ô³XªºÀÉ®×¥s°µ¡uTUTORIAL.zh¡v¡A¥¦¬O±z­Ó +¤Hªº«þ¨©¡C·í±z¥H Emacs §ä¥X¤@­ÓÀɮ׮ɡA¨º­ÓÀɮתº¦W¦r´N·|¥X²{¦b¨º­Ó¦a +¤è¡C + +Ãö©ó´M§äÀɮתº«ü¥O¤¤¡A¦³¤@­Ó«Ü¯S§Oªº¬O¡A±z¥²¶·»¡¥X³o­Ó±z·Q­nªºÀɮצWºÙ¡C +§Ú­Ì»¡³o­Ó«ü¥O¡u±q²×ºÝ¾÷¤¤Åª¶i¤F¤@­Ó°Ñ¼Æ¡v¡C¡]¦b³o­Ó¨Ò¤l¤¤¡A³o°Ñ¼Æ´N¬O +Àɮתº¦WºÙ¡^·í±zÁä¤J³o­Ó«ü¥O«á¡A + + C-x C-f §ä¤@­ÓÀÉ®× + +Emacs ·|­n±zÁä¤JÀɦW¡C±z©ÒÁä¤JªºÀɦW·|¥X²{¦b¿Ã¹õªº©³¦æ¡C¦b³Q¥Î¨Ó§@¬°³o +ºØ§Î¦¡ªº¿é¤J®É¡A©³¦æ³QºÙ¬°¤p½w½Ä°Ï¡] minibuffer ¡^¡C±z¥i¥H¨Ï¥Î¥¿±`ªº +Emacs ½s¿è«ü¥O¨Ó½s¿è³o­ÓÀɦW¡C + +·í±z¥¿¦bÁä¤JÀɦW®É¡]©Î¬O¥ô¦óªº¤p½w½Ä°Ï¿é¤J®É¡^¡A±z¥i¥H¥Î C-g ³o­Ó«ü¥O +¨Ó¨ú®ø¥¦¡C + +>> Áä¤J C-x C-f¡AµM«áÁä¤J C-g¡C³o·|¨ú®ø¤p½w½Ä°Ï¡A + ¨Ã¥B¤]·|¨ú®ø¨Ï¥Î³o­Ó¤p½w½Ä°Ïªº C-x C-f «ü¥O¡C + ¦]¦¹±z¨S¦³§ä¥ô¦óÀɮסC + +·í±z¤w¸gÁä¤J¤F³o­ÓÀɦW¡A½ÐÁä¤J ¨Óµ²§ô¥¦¡CµM«á C-x C-f «ü¥O´N +·|¶}©l¹B§@¡A¨Ã¥B§ä¨ì±z©Ò¿ï¾ÜªºÀɮסC¤p½w½Ä°Ï¦b·í C-x C-f «ü¥Oµ²§ô®É´N +·|®ø¥¢¡C + +¹L¤F¤@·|¨à¡AÀɮתº¤º®e´N·|¥X²{¦b¿Ã¹õ¡AµM«á±z´N¥i¥H½s¿è¥¦ªº¤º®e¡C·í±z·Q +­n±zªº§ïÅܥä[«O¦s®É¡AÁä¤J³o­Ó«ü¥O¡G + + C-x C-s Àx¦s³o­ÓÀÉ®× + +³o·|§â¦b Emacs ¤¤ªº¤å¦r½Æ»s¨ìÀɮפ¤¡C·í±z²Ä¤@¦¸°µ³o­Ó°Ê§@®É¡AEmacs ·| +±N­ì©lªºÀÉ®×­«·s©R¦W¦¨¤@­Ó·sªº¦W¦r¡A³o¼Ë¥¦¤~¤£·|®ø¥¢¡C·sªº¦W¦r³q±`·|¥[ +¤J¡u~¡v¨ì­ì©lÀɮתº¦W¦r«á­±¡C + +·íÀx¦sµ²§ô®É¡AEmacs ·|§â¼g¤JÀɮתº¦W¦r¦C¥X¨Ó¡C±zÀ³¸Ó¸g±`¦a¶i¦æÀx¦s¡A³o +¼Ë¤l¦pªG¨t²Î·í¾÷®É¡A±z´N¤£·|·l¥¢¤Ó¦h¤u§@¡C + +>> Áä¤J C-x C-s ¥HÀx¦s¥»§Ö³t«ü«nªº±zªº«þ¨©¡C + ³o·|§â¡uWrote ...TUTORIAL.zh¡v³o­Ó°T®§Åã¥Ü¦b¿Ã¹õªº¤U¤è¡C + +ª`·N¡G¦b¬Y¨Ç¨t²Î¤¤¡AÁä¤J C-x C-s ±N·|§â¿Ã¹õ­áµ²¡A±z±N¬Ý¤£¨ì±q Emacs ¨Ó +ªº¥ô¦ó¿é¥X¡C³oªí¥Ü§@·~¨t²Î¤@­ÓºÙ¬°¡u¬yµ{±±¨î¡vªº¡u¥\¯à¡v±N C-s «ü¥OÄd +ºI¦í¡A¨Ã¥B¤£Åý¥¦¶Ç¨ì Emacs¡C­n¨ú®ø¿Ã¹õªº­áµ²¡A½ÐÁä¤J C-q¡CµM«á¨ì Emacs +¨Ï¥Î¤â¥U¤¤¬Ý¬Ý¹ï©ó¡uº¥¶i¦¡·j´Mªº¦P®É¶i¤J¡] Spontaneous Entry to +Incremental Search ¡^¡v³o­Ó¥DÃD¡A¥H¨ú±o³B²z³o­Ó¡u¥\¯à¡vªº«Øij¡C + +±z¥i¥H§ä¥X¤@­Ó¤w¸g¦s¦bªºÀɮסAµM«áÆ[¬Ý¥¦©Î½s¿è¥¦¡C±z¤]¥i¥H§ä¤@­ÓÁÙ¨S¦³ +¦s¦b¹LªºÀɮסC³o¬O¥H Emacs «Ø¥ß¤@­ÓÀɮתº¤èªk¡G§ä³o­ÓÀɮסA´N±q¹s¶}©l¡A +µM«á¶}©l´¡¤J¤å¦r¨ì³o­ÓÀɮפ¤¡C·í±z­n¨D¡uÀx¦s¡v³o­ÓÀɮסAEmacs ·|¯uªº«Ø +¥ß¤@­ÓÀɮסA¨Ã§â±z©Ò´¡¤Jªº¤å¦rÂ\¨ìÀɮפ¤¡C±q¨º®É­Ô¶}©l¡A±z´N¥i¥H·í¦Û¤v +¬O¦b½s¿è¤@­Ó¤w¸g¦s¦bªºÀɮפF¡C + + +* ½w½Ä°Ï¡] BUFFER ¡^ +-------------------- + +¦pªG±z¥H C-x C-f¡u§ä¡v²Ä¤G­ÓÀɮסA²Ä¤@­ÓÀɮפ´µM¦s¦b Emacs ¤º¡C­n¤Á´« +¦^¥¦¡A±z¥i¥H C-x C-f ¦A§ä¥¦¤@¦¸¡C¨Ì¦¹¤è¦¡¡A±z¥i¥H¦b Emacs ¤º¶}±Ò¤£¤ÖÀÉ +®×¡C + +>> ¥HÁä¤J C-x C-f foo ªº¤è¦¡«Ø¥ß¤@­Ó¦W¬°¡ufoo¡vªºÀɮסC + µM«á´¡¤J¤@¨Ç¤å¦r¡A½s¿è¥¦¡AµM«á¦A¥H C-x C-s Àx¦s¡ufoo¡v¡C + ³Ì«á¡AÁä¤J C-x C-f TUTORIAL.zh ¦^¨ì¥»§Ö³t«ü«n¡C + +Emacs Àx¦s¨C­ÓÀɮתº¤å¦r¦b¤@­ÓºÙ¬°¡u½w½Ä°Ï¡] buffer ¡^¡vªºª«¥ó¤¤¡C§ä¤@ +­ÓÀÉ®×·|¦b Emacs ¤º³¡«Ø¥ß¤@­Ó½w½Ä°Ï¡C·Q­n¬Ý¥Ø«e¦s¦b±zªº Emacs ªº¤u§@¤¤ +½w½Ä°Ï¦Cªí¡AÁä¤J + + C-x C-b ¦C¥X½w½Ä°Ï + +>> ²{¦b´N¸Õ¤@¤U C-x C-b + +¬Ý¬Ý¨C¤@­Ó½w½Ä°Ï¬O¦p¦ó©R¦Wªº¡A¥¦¤]¥i¯à¦P®É¾Ö¦³¤@­Ó¡uÀx¦s¨ä¤º®eªºÀɮסv +ªº¦WºÙ¡C±z¦b¤@­Ó Emacs µ¡®æ©Ò¨£¨ìªº¡u¥ô¦ó¡v¤å¦r³£¬O¬Y­Ó½w½Ä°Ïªº¤@³¡¥÷¡C + +>> Áä¤J C-x 1 ¥HÂ÷¶}½w½Ä¦Cªí + +·í±z¦³¼Æ­Ó½w½Ä°Ï®É¡A¦b¥ô¦ó®É­Ô¨ä¤¤¥u¦³¤@­Ó¬O¡u¥Ø«e§@¥Îªº¡v¡C¦Ó¨º­Ó´N¬O +±z¦b½s¿èªº½w½Ä°Ï¡C¦pªG±z·Q­n½s¿è¥t¤@­Ó½w½Ä°Ï¡A¨º»ò±z¥²¶·¡u¤Á´«¡v¨ì¥¦¡C +¦pªG±z·Q­n¤Á´«¨ì³s±µ¨ì¬Y­ÓÀɮתº½w½Ä°Ï¡A±z¥i¥H¥Î C-x C-f ¦A¦¸«ô³X¨º­Ó +ÀɮסC¦ý¬O¦³­Ó¤ñ¸û²³æªº¤è¦¡¡G¨Ï¥Î C-x b ¡F¦b³o­Ó«ü¥O¤¤¡A±z¥²¶·Áä¤J½w +½Ä°Ïªº¦WºÙ¡C + +>> Áä¤J C-x b foo ¥H¦^¨ì§t¦³Àɮסufoo¡vªº¤å¦rªº½w½Ä°Ï¡C + µM«á«Ø¤J C-x b TUTORIAL ¥H¦^¨ì¥»§Ö³t«ü«n¡C + +´N¤j³¡¥÷ªº±¡ªp¨Ó»¡¡A½w½Ä°Ïªº¦WºÙ»PÀɮתº¦WºÙ¬O¬Û¦Pªº¡]°£¥h¤FÀɦW¤¤ªº¥Ø +¿ý³¡¥÷¡^¡CµM¦Ó¨Ã¤£Á`¬O¦p¦¹¡C±z¥H C-x C-b ©Ò»s§@¥Xªº½w½Ä°Ï¦CªíÁ`¬O·|Åã +¥Üµ¹±z¨C¤@­Ó½w½Ä°Ïªº¦WºÙ¡C + +±z¦b¤@­Ó Emacs µ¡®æ¤¤©Ò¨£¨ìªº¡u¥ô¦ó¡v¤å¦rÁ`¬O¬Y­Ó½w½Ä°Ïªº¤@³¡¥÷¡C¦³¤@ +¨Ç½w½Ä°Ï¨Ã¨S¦³³s±µ¨ìÀɮסCÁ|¨Ò¨Ó»¡¡A©R¦W¬°¡u*Buffer List*¡vªº½w½Ä°Ï¨Ã +¨S¦³¥ô¦óÀɮסC¥¦¬O¥]§t¦³±z¥H C-x C-b «ü¥O©Ò»s§@¥X¨Óªº½w½Ä°Ï¦Cªíªº½w½Ä +°Ï¡C©R¦W¬°¡u*Messages*¡vªº½w½Ä°Ï¤]¨S¦³³s±µ¨ì¥ô¦óÀɮסF¥¦¦b±zªº Emacs +§@·~¶¥¬q¤¤¥]§t¥X²{¦b©³¦æªº°T®§¡C + +>> Áä¤J C-x b *Messages* ¨Ó¬Ý¬Ý°T®§ªº½w½Ä°Ï¡C + µM«áÁä¤J C-x b TUTORIAL ¦^¨ì¥»§Ö³t«ü«n¡C + +¦pªG±z¹ïÀɮפ¤ªº¤å¦r°µ¤F­×§ï¡AµM«á§ä¥t¤@ÀɮסA³o­Ó°Ê§@¨Ã¤£·|Àx¦s²Ä¤@­Ó +ÀɮסC¥¦ªº­×§ï¤´Â¦s¦b Emacs ¤¤¡A¤]´N¬O¦b¨º­ÓÀɮתº½w½Ä°Ï¤¤¡C¹ï©ó²Ä¤G +­ÓÀɮתº«Ø¥ß©Î½s¿è¨Ã¤£·|¼vÅT¨ì²Ä¤@­ÓÀɮתº½w½Ä°Ï¡C³o¼Ë¤l«D±`¦³¥Î¡A¦ý³o +­Ó±¡§Î¤]ªí©ú¤F±z»Ý­n¡u¤@­Ó¤è«Kªº¤èªk¡v¨ÓÀx¦s²Ä¤@­ÓÀɮתº½w½Ä°Ï¡C¥u¬O¬° +Àx¦s²Ä¤@­ÓÀÉ®×´N¥²¶·¥H C-x C-f ¤Á´«½w½Ä°Ï¡A¤~¯à¥H C-x C-s ±N¥¦Àx¦s¡AÁ` +¬O­ÓÅý¤H°Q¹½ªº¹Lµ{¡C¦]¦¹§Ú­Ì¦³ + + C-x s Àx¦s¤@¨Ç½w½Ä°Ï + +C-x s ·|¸ß°Ý±zÃö©ó±z¤w°µ¥X­×§ï¦ýÁÙ¨SÀx¦sªº¨C¤@­Ó½w½Ä°Ï¡C¥¦·|°Ý±z¡A¹ï©ó +¨C¤@­Ó³o¼Ëªº½w½Ä°Ï¡A¬O§_­nÀx¦s¡H + +>> ´¡¤J¤@¦æ¤å¦r¡AµM«áÁä¤J C-x s¡C + ¥¦À³¸Ó·|°Ý±z¬O§_­nÀx¦s¦W¬° TUTORIAL.zh ªº½w½Ä°Ï¡C + Áä¤J¡yy¡z¥H¦^µª­nÀx¦s¡C + + +* ÂX¥R«ü¥O¶°¡] EXTENDING THE COMMAND SET ¡^ +------------------------------------------- + +¥Ñ©ó Emacs ¾Ö¦³¤Ó¦h«ü¥O¡A§Y«K¨Ï¥Î¤W©Ò¦³ªº CONTROL ©M META ¦r¤¸¡A¤]¨S¿ì +ªk§¹¥þÂ\¤W¡CEmacs ¥H X¡]ÂX¥R¡yeXtend¡z¡^«ü¥O¨Ó¸Ñ¨M³o­Ó°ÝÃD¡CÂX¥R«ü¥O¦³ +¨âºØ«¬¦¡¡G + + C-x ¦r¤¸ÂX¥R¡C«á­±¸òµÛ¤@­Ó¦r¤¸¡C + M-x ¦³¦WºÙªº«ü¥OÂX¥R¡C«á­±¸òµÛ¤@­Óªøªº¦WºÙ¡C + +ÁÙ¦³¤@¨Ç«ü¥O³q±`¨Ó»¡¬O«Ü¦³¥Îªº¡A¦ý¬O¤ñ±z¤w¸g¾Ç¨ìªº«ü¥O¸û¤Ö¨Ï¥Î¡C±z¤w¸g +¬Ý¹L¨ä¤¤¨â­Ó¡GÀɮ׫ü¥O¤¤ªº C-x C-f ¥h´M§ä¡A¥H¤Î C-x C-s ¥hÀx¦s¡C¨ä¥Lªº +¨Ò¤l«h¦³µ²§ô Emacs ¶¥¬qªº«ü¥O -- ³o­Ó«ü¥O¬O C-x C-c¡C¡]¤£­n¾á¤ß±z·|¥¢ +¥h¤w¸g°µ¥Xªº§ïÅÜ¡AC-x C-c ¦b¥¦±þ±¼ Emacs ¤§«e·|´£¨ÑÀx¦s¨C¤@­ÓÅܰʪºÀÉ +®×ªº¾÷·|¡C¡^ + +C-z ¬O *¼È®É* Â÷¶} Emacs ªº«ü¥O -- ¦]¦¹±zµy«á¥i¥H¦^¨ì¦P¼Ëªº Emacs ¶¥¬q¡C + +¦b¬Y¨Ç¤¹³\¥¦ªº§@¥Îªº¨t²Î¤¤¡A C-z ·|¡u¼È°±¦í¡] suspends ¡^¡vEmacs¡A¤]´N +¬O»¡¡A¥¦·|¦^¨ì shell ¦ý¤£·|§â Emacs ·´±¼¡C¦b³Ì±`¥Îªº shell ¤¤¡A±z¥i¥H +¥Î¡yfg¡z©Î¡y%emacs¡z¨âºØ«ü¥O«ì´_ Emacs¡C + +¦b¨S¦³´£¨Ñ¼È°±¥\¯àªº¨t²Î¤¤¡AC-z ·|¦b Emacs ©³¤U«Ø¥ß¤@­Ó subshell ¥HÅý +±z¦³¾÷·|°õ¦æ¨ä¥Lªºµ{¦¡¡A¨Ã¥B¦bµy«á¦^¨ì Emacs¡A¥¦¨Ã¨S¦³¯uªºÂ÷¶} Emacs¡C +¦b³o­Ó¨Ò¤l¤¤¡Ashell «ü¥O¡yexit¡z¬O±qsubshell ¦^¨ì Emacs ªº³q±`¤è¦¡¡C + +¨Ï¥Î C-x C-c ªº®É¾÷¬O·í±z¥´ºâ­nµn¥X®É¡C¥¦¤]«D±`¾A¦X¥Î¨ÓÂ÷¶}³Q¨ä¥L¶l¥ó +³B²zµ{¦¡¡A¥H¤Î³\¦h¤£¦PªºÀ³¥Îµ{¦¡©Ò±Ò°Êªº Emacs¡CµM¦Ó¦b¤@¯ëªºª¬ªp¤U¡A¦p +ªG±z¤£¥´ºâµn¥X¡A³Ì¦n¬O§â Emacs ¼È°±¦Ó¤£¬OÂ÷¶}¥¦¡C + +¦³³\¦h C-x ªº«ü¥O¡C³o¸Ì¬O¤@¥÷±z¤w¸g¾Ç¹Lªº¦Cªí¡G + + C-x C-f §äÀɮסC + C-x C-s Àx¦sÀɮסC + C-x C-b ¦C¥X½w½Ä°Ï¡C + C-x C-c Â÷¶} Emacs¡C + C-x 1 °£¤F¤@­Ó¥~¡A§R¥h¨ä¥L©Ò¦³ªºµ¡®æ¡C + C-x u ¨ú®ø°Ê§@¡C + +¥HÂX¥R¨Ó©R¦Wªº«ü¥O³q±`¬O¤£¤Ó±`¨Ï¥Îªº«ü¥O¡A©Î¬O¥u¦b¯S©wªº¼Ò¦¡¤U¤~·|¨Ï¥Î +ªº«ü¥O¡C¤@­Ó¨Ò¤l¬O¨ú¥N¦r¦ê«ü¥O¡A¥¦·|¥þ°ì¦a±N¤@­Ó¦r¦ê¥H¥t¤@­Ó¨Ó¨ú¥N¡C·í +±zÁä¤J M-x ®É¡AEmacs ·|¦b¿Ã¹õªº©³ºÝ¸ß°Ý±z¡AµM«á±z¤]À³¸ÓÁä¤J³o­Ó«ü¥Oªº +¦WºÙ¡C¦b³o­Ó¨Ò¤l¤¤¬O¡yreplace-string¡z¥u­nÁä¤J¡yrepl s¡z¡AµM«á +Emacs ±N·|¸É»ô³o­Ó¦WºÙ¡C¥H ¨Óµ²§ô³o­Ó«ü¥O¦WºÙ¡C + +¨ú¥N¦r¦ê«ü¥O»Ý­n¨â­Ó°Ñ¼Æ -- ³Q¨ú¥Nªº¦r¦ê¥H¤Î¥Î¨Ó¨ú¥N¥¦ªº¦r¦ê¡C±z¥²¶·¥H +Newline ¦r¤¸¨Óµ²§ô¨C¤@­Ó°Ñ¼Æ¡C + +>> ±N´å¼Ð²¾¨ì¥»¦æªº¤U¨â¦æªÅ¥Õ¡AµM«áÁä¤J + M-x repl schangedaltered¡C + + ¡i¬°¤F»¡©úªº¥Øªº¡A©ó¤U«O¯d¤@¦æ­ì¤å¡C + Notice how this line has changed: you've replaced... ¡j + +½Ðª`·N³o¤@¦æ¬O«ç»ò§ïÅܪº¡G¦b´å¼Ðªº°_©l¦ì¸m¤§«á¡A±z¤w¸g±N c-h-a-n-g-e-d +³o­Ó¦r -- ¤£ºÞ¥¦¦b­þ¸Ì¥X²{ -- ¥H¡ualtered¡v³o­Ó¦r¨Ó¨ú¥N¤F¡C + + +* ¦Û°Ê¦sÀÉ¡] AUTO SAVE ¡^ +------------------------- + +·í±z¦b¤@­ÓÀɮפ¤°µ¤F­×§ï¡A¦ý¬OÁÙ¨S¦³±N¥¦­ÌÀx¦s°_¨Ó¡A¨º»ò¦pªG±zªº¹q¸£·í +¾÷¡A¥¦­Ì±N¦³¥i¯à¿ò¥¢¡C¬°¤FÁקK³oºØ±¡§Îµo¥Í¦b±zªº¨­¤W¡AEmacs ·|©w´Á¦a±N +±z¥¿¦b½s¿èªºÀÉ®×¼g¤J¡u¦Û°ÊÀx¦s¡vÀɮפ¤¡C¦Û°ÊÀx¦sÀɮצbÀɦWªº«e«á·|¦U¦³ +¤@­Ó # ²Å¸¹¡FÁ|¨Ò¨Ó»¡¡A¦pªG±zªºÀɮצW¬°¡uhello.c¡v¡A¨º»ò¥¦ªº¦Û°ÊÀx¦sÀÉ +®×ªºÀɦW´N¬O¡u#hello.c#¡v¡C·í±z¥H¥­±`ªº¤è¦¡Àx¦sÀɮ׮ɡAEmacs ´N·|§â¥¦ +ªº¦Û°ÊÀx¦sÀɧR°£¡C + +¦pªG·í¾÷¡A±z¥i¥H¸g¥Ñ¥¿±`¦a´M§äÀɮסA¡]«üªº¬O±z¦b½s¿èªºÀɮצӤ£¬O¦Û°ÊÀx +¦sÀÉ¡^µM«áÁä¤J M-x recover file ¨Ó¦^´_±zªº¦Û°ÊÀx¦sÀÉ¡C·í¥¦­n¨D +½T»{®É¡AÁä¤J yes ¥HÄ~Äò¨Ã¦^´_¦Û°ÊÀx¦sªº¸ê®Æ¡C + + +* ¦^À³°Ï¡] ECHO AREA ¡^ +----------------------- + +¦pªG Emacs ¨£¨ì±z«ÜºC¦aÁä¤J¦h¦r¤¸«ü¥O¡A¥¦·|±N¥¦­ÌÅã¥Ü¦b¦ì©óµ¡®æ¤U¤è¡A +ºÙ¬°¡u¦^À³°Ï¡vªº°Ï°ìµ¹±z°Ñ¾\¡C¦^À³°Ï¦ì¦bµ¡®æªº³Ì«á¤@¦æ¡C + + +* ª¬ºA¦æ¡] MODE LINE ¡^ +----------------------- + +¦ì¦b¦^À³°Ïªº¥¿¤W­±¬OºÙ¬°¡uª¬ºA¦æ¡vªº¤@¦æ¡Cª¬ºA¦æÅã¥Ü¥X¤@¨Ç¸ê°T¡A¦p¡G + +--:** TUTORIAL.zh (Fundamental)--L670--58%---------------- + +¥»¦æ´£¨Ñ¤@¨ÇÃö©ó¡uEmacs ªºª¬ºA¡v¥H¤Î¡u±z¥¿¦b½s¿èªº¤å¦r¡vªº¦³¥Î¸ê°T¡C + +±z¤w¸gª¾¹DÀɦWªº·N¸q¬O¤°»ò¤F -- ´N¬O±z§äªºÀɮסC-NN%-- «ü¥X¥Ø«e±z¦b¤å +¦rÀɤ¤ªº¦ì¸m¡F¥¦ªº·N«ä¬O»¡¡G¦³ NN ¦Ê¤À¤ñªº¤å¦r¦ì¦bµ¡®æªº¤W­±¡C¦pªGÀÉ®× +ªº³»ºÝ´N¦ì¦bµ¡®æ¤¤¡A¨º»ò¥¦´N·|Åã¥Ü --Top-- ¦Ó¤£¬O --00%--¡C¦pªGÀɮתº +©³³¡´N¦ì¦bµ¡®æ¤¤¡A¨º»ò¥¦¬OÅã¥Ü --Bot--¡C¦pªG±z¥¿¦b¬Ýªº¤å¦rÀɫܤp¡A¦bµ¡ +®æ¤¤´N¨¬¥H¬Ý¨ì¥þ³¡ªº¤º®e¡A¨º»òª¬ºA¦æ´N·|Åã¥Ü --All--¡C + +L ©M¼Æ¦r¥H¥t¤@ºØ¤è¦¡¨Óªí¥Ü¥X¦ì¸m¡G¥¦­Ìµ¹¥X¤F¥Ø«e©Ò¦bªº¦æ¼Æ¡] Line ¡^¡C + +¦b¾aªñ«e­±ªº¬P¸¹ªí¥Ü±z¤w¸g¹ï³o¨Ç¤å¦r°µ¤F§ïÅÜ¡C¦b±z­è«ô³X©ÎÀx¦s¤@­ÓÀÉ®× +¤§«á¡Aª¬ºA¦æªº¨º­Ó³¡¤À·|¨S¦³¬P¸¹¡A¥u¦³¯}§é¸¹¡C + +ª¬ºA¦æ¤¤¦ì©ó¤p¬A©·¸Ì­±ªº³¡¤À¡A¬O¥Î¨Ó§i¶D±z¥¿¦b¨Ï¥Î¤°»ò½s¿è¼Ò¦¡¡C¹w³]ªº +¼Ò¦¡¬O Fundamental¡A¤]´N¬O±z²{¦b¨Ï¥Îªº¡C¥¦¬O¡u¥D¼Ò¦¡¡vªº¤@­Ó¨Ò¤l¡C + +Emacs ¦³³\¦h¤£¦Pªº¥D¼Ò¦¡¡C¥¦­Ì¤§¤¤¦³¤@¨Ç¬O¥Î¨Ó½s¿è¤£¦Pªº»y¨¥¥H¤Î¡þ©Î¤£ +¦PºØÃþªº¤å¦r¡A¹³¬O Lisp ¼Ò¦¡¡B Text ¼Ò¦¡µ¥µ¥¡C¦b¥ô¦óªº®É¶¡¥u¦³¤@­Ó¥D¼Ò +¦¡¥i¥H§@¥Î¡A¨Ã¥B¥¦ªº¦WºÙÁ`¥i¥H¦bª¬ºA¦æ¤¤³Q§ä¨ì¡A´N¦b²{¦bªº +¡uFundamental¡v¤¤ªº¦ì¸m¡C + +¨C¤@­Ó¥D¼Ò¦¡³£¨Ï±o¤@¨Ç«ü¥Oªº¦æ¬°ªí²{±o¤£¤Ó¤@¼Ë¡CÁ|¨Ò¨Ó»¡¡A¦b¤@­Óµ{¦¡¤¤ +¦³¤@¨Ç«ü¥O¥Î¨Ó»s§@¥Xµù¸Ñ¡A¦Ó¥Ñ©ó¨C¤@ºØµ{¦¡»y¨¥¹ï©ó¤@­Óµù¸ÑÀ³¸Óªø±o¹³¤° +»ò¡A³£¦³µÛ¤£¦Pªº·Qªk¡A¦]¦¹¨C¤@­Ó¥D¼Ò¦¡³£¥²¶·¥H¤£¦Pªº¤è¦¡¨Ó´¡¤Jµù¸Ñ¡C¨C +¤@­Ó¥D¼Ò¦¡¬O¤@­Ó©µ¦ù«ü¥Oªº¦WºÙ¡A¨Ï±o±z¥i¥H¥Î¨Ó¤Á´«¦Ü¨º­Ó¼Ò¦¡¡CÁ|¨Ò¨Ó»¡¡A +M-x fundamental-mode ´N¬O¤Á´«¨ì Fundamental ¼Ò¦¡ªº¤@­Ó«ü¥O¡C + +¦pªG±z·Q­n½s¿è¤HÃþ»y¨¥ªº¤å¦rÀÉ®× -- ¹³¬O²{¦bªº³o¤@­Ó¡A±zÀ³¸Ó¨Ï¥Î Text +¼Ò¦¡¡C + +>> Áä¤J M-x text mode¡C + +¤£­n¾á¤ß¡A¨S¦³¥ô¦ó¤@­Ó±z¤w¸g¾Ç¹Lªº Emacs «ü¥O¡A·|³Q§ïÅܦ¨¥ô¦ó«D±`¤£¦P +ªº§Î¦¡¡C¦ý¬O±z¥i¥Hµo²{¨ì M-f ©M M-b ²{¦b§âºJ¸¹¡]'¡^µø¬°¦rªº¤@³¡¤À¡C¥ý +«e¡A¦b Fundamental ¼Ò¦¡¤¤¡AM-f ©M M-b ±NºJ¸¹µø¬°¦rªº¤À¹j²Å¸¹¡C + +¥D¼Ò¦¡³q±`·|¹³¤W­z¨º­Ó¨Ò¤l¤@¼Ë¡A°µ¥X¤@¨Çºë¥©ªº§ïÅÜ¡G¤j³¡¤Àªº«ü¥O¦b¨C¤@ +­Ó¥D¼Ò¦¡¤¤¡u°µ¦P¼Ëªº¨Æ¡v¡A¦ý¬O¥¦­Ì¥H¤@ÂIÂI¤£¦Pªº¤è¦¡¨Ó¤u§@¡C¡i¦AÁ|­Ó¨Ò +¤l¡A±µÄò¤W­±©Ò¶}ªºÀY¡A¥Hµ{¦¡»y¨¥ªºµù¸Ñ¨Ó»¡¡C¦P¼Ë¤@­Ó´¡¤Jµù¸Ñªº°Ê§@¡A¦] +¬°±z¨Ï¥Îªºµ{¦¡»y¨¥¡þ¥D¼Ò¦¡ªº¤£¦P¦Ó¤£¦P¡C­Y±z¨Ï¥Î C »y¨¥¡AEmacs ´¡¤J +¡y/* ¤¶©ó¤¤¶¡ªº¬°µù¸Ñ°Ï¶ô */¡z¡F­Y±z¨Ï¥Îªº¬O Fortran »y¨¥¡AEmacs ´¡¤J +¡yc ¥H¦r¤¸ c ¬°­ºªº¬°µù¸Ñ¦æ¡z¡F­Y±z¨Ï¥Îªº¬O Basic »y¨¥¡AEmacs «h´¡¤J¡y' +ºJ¸¹¥H«áªº¬°µù¸Ñ¤å¦r¡z¡C½s¿è¾¹ªº¼u©Ê¦p¦¹¡A¹ê¦b¨S¦³¥²­n¬°¤F¤£¦Pªº»y¨¥¡B +¥Øªº©Î¥~Æ[¡A³]­p¯S®í¤Æªº½s¿è¾¹¡C¡u¨D¤j¦P¡A¦s¤p²§¡v¦b³o¸Ì¤]¬O¦¨¥ßªº¡C¡j + +­nÂsÄý±z²{¦b©Ò³Bªº¥D¼Ò¦¡ªº¤å¥ó¡AÁä¤J C-h m¡C + +>> ¨Ï¥Î C-u C-v ¤@©Î¼Æ¦¸¡A±N¥»¦æ±a¨ì¾aªñ¿Ã¹õªº¤W¤è¡C +>> Áä¤J C-h m¡A¬Ý¬Ý Text ¼Ò¦¡»P Fundamental ¼Ò¦¡¬O­þ¸Ì¤£¦P¡C +>> Áä¤J C-x 1 ±N¤å¥ó±q¿Ã¹õ²¾°£±¼¡C + +¥D¼Ò¦¡¤§©Ò¥HºÙ¬°¡u¥D­n¡] major ¡^¡vªº­ì¦]¬O¦]¬°¥¦­Ì¤]¦³¦¸¼Ò¦¡¡] minor +mode ¡^¡C¦¸­nªº¼Ò¦¡¨Ã¤£¬O¥D¼Ò¦¡ªº¨ä¥L¿ï¾Ü¡A¦Ó¥u¬O¦¸­nªº§ó§ï¡C¨C¤@­Ó¦¸ +¼Ò¦¡¥i¥H³Q¥¦¥»¨­±Ò¥Î©Î°±¤î¡A©M©Ò¦³¨ä¥Lªº¦¸¼Ò¦¡µLÃö¡A¨Ã¥B¤]©M±zªº¥D¼Ò¦¡ +µLÃö¡C©Ò¥H±z¥i¥H¤£¨Ï¥Î¦¸¼Ò¦¡¡A©Î¤@­Ó¡A©Î¥ô¦ó¼Æ¶qªº¦¸¼Ò¦¡ªº²Õ¦X¡C + +¦³¤@­Ó¥s°µ Auto Fill ¼Ò¦¡ªº¦¸¼Ò¦¡«D±`¦³¥Î¡A¯S§O¬O¦b½s¿è¤HÃþ»y¨¥ªº¤å¦r +®É¡C·í³o­Ó¼Ò¦¡±Ò¥Î®É¡A Emacs ¦b·í±z´¡¤J¤å¦r¨Ã¥B¨Ï¤@¦æ¤Ó¼e®É¡A·|±N¨º¤@ +¦æ¡A¦b¦r»P¦r¤§¶¡¦Û°Ê¦a¤À¹j¶}¡C + +±z¥i¥H M-x auto fill mode ¨Ó±N Auto Fill ¼Ò¦¡±Ò¥Î¡C·í³o­Ó¼Ò¦¡ +±Ò¥Î®É¡A±z¥i¥H¨Ï¥Î M-x auto fill mode ¨Ó±N¥¦¨ú®ø¡C·í³o­Ó¼Ò¦¡¤£ +¥Î®É¡A«h³o­Ó«ü¥O·|±N¥¦±Ò°Ê¡A¦Ó·í³o­Ó¼Ò¦¡±Ò¥Î®É¡A³o­Ó«ü¥O·|±N¥¦Ãö³¬¡C§Ú +­Ì»¡³o­Ó«ü¥O¥Î¨Ó¡u¤Á´«¡] toggle ¡^¡v¼Ò¦¡¡C + +>> ²{¦bÁä¤J M-x auto fill mode¡CµM«á¤@¦A¦a´¡¤J¦r¦ê + ¡u asdf ¡v¡Aª½¨ì±z¬Ý¨ì¥¦¤À¦¨¨â¦æ¡C±z¥²¶·¦b¥¦­Ì¤§¶¡Â\¤WªÅ¥Õ¡A + ¦]¬° Auto Fill ¥u¦bªÅ¥Õ³BÂ_¦æ¡C + +Ãä¬É³q±`³Q³]©w¬° 70 ­Ó¦r¤¸¡A¦ý¬O±z¥i¥H¥Î C-x f «ü¥O¨Ó§ïÅÜ¥¦¡C±zÀ³¸Ó¥H +¤@­Ó¼Æ¦r°Ñ¼Æªº¤è¦¡¨Óµ¹©w±z©Ò§Æ±æªºÃä¬É³]©w¡C + +>> Áä¤J C-x f ¨Ãªþ¤W¤Þ¼Æ 20¡G¡yC-u 2 0 C-x f¡z¡C + µM«áÁä¤J¤@¨Ç¤å¦r¡A¬Ý¬Ý Emacs ¥H 20 ­Ó¦r¤¸¡A + ¦b¦æ»P¦æ¤§¶¡¶i¦æ fill °Ê§@¡CµM«á¦A¥Î¤@¦¸ C-x f ±NÃä¬É³]¦^ 70¡C + +¦pªG±z¦b¤@­Ó¬q¸¨ªº¤¤¶¡°µ¥X§ïÅÜ¡AAuto Fill ¼Ò¦¡¨Ã¤£·|¬°±z­«·s¶i¦æ fill +ªº°Ê§@¡] re-fill ¡^¡C­n re-fill ³o­Ó¬q¸¨¡AÁä¤J M-q (META-q)¡A¦Ó´å¼Ð¥² +¶·³B¦b¨ä¤¤¡C + +>> ²¾°Ê´å¼Ð¨ì«e¤@¬q¤¤¡AµM«áÁä¤J M-q¡C + + +* ·j´M¡] SEARCHING ¡^ +--------------------- + +Emacs ¥i¥H·j´M¦r¦ê¡]¦r¦ê¥i¥H¬O¤@¸s³sÄòªº¦r¤¸©Î¦r¡^¡i´N¤¤¤å¨Ó»¡¡A¦r¤¸©M +¦r°ò¥»¤W·N¸q¬Û¦P¡F¦¹³B©Ò«üªº¡y¦r¡z¡A¬O­^¤å¤¤¨S¦³³QªÅ¥Õ¹j¶}ªº¦r¤¸¶° +¦X¡C¡j¡A©¹«e©Î©¹«á·j´M³£¥i¥H¡C·j´M¤@­Ó¦r¦ê¬O¤@ºØ´å¼Ð²¾°Ê«ü¥O¡A¥¦·|±N´å +¼Ð²¾°Ê¨ì¦r¦ê¥X²{ªº¤U¤@­Ó¦a¤è¡C + +Emacs ·j´M«ü¥O»P¤j³¡¤À½s¿è¾¹ªº·j´M«ü¥O¤£¦Pªº¦a¤è¦b©ó¡A¥¦¬O¡uº¥¶iªº +¡] incremental ¡^¡v¡C³oªí¥Ü·j´Mµo¥Í¦b±zÁä¤J·Q­n·j´Mªº¤å¦r¦ê«á¡C + +­n¶}©l·j´Mªº«ü¥O¬O¡GC-s ©¹«e·j´M¡AC-r ©¹«á·j´M¡C¦ý¥ýµ¥¤@¤U¡I²{¦b¥ý¤£­n +¸Õ¡C + +·í±zÁä¤J C-s ®É¡A·|µo²{¨ì¦³¤@­Ó¦r¦ê¡uI-search¡v¥X²{¦b¦^À³°Ï¤¤§@¬°´£¥Ü¡C +¥¦§i¶D±z Emacs ²{¦b¥¿³B©óºÙ¬°¡uº¥¶i¦¡·j´M¡vªºª¬ºA¤¤¡Aµ¥«Ý±zÁä¤J±z·Q­n +·j´Mªº¦r¦ê¡C ·|µ²§ô¤@­Ó·j´M¡C + +>> ²{¦bÁä¤J C-s ¶}©l¤@­Ó·j´M¡CºC¤@ÂI¡A¤@¦¸Áä¤J¤@­Ó¦r¤¸¡A + Áä¤J¡ycursor¡z³o­Ó¦r¡A¨CÁä¤J¤@­Ó¦r¤¸®É¡Aµy·L°±¤@¤U¡A + ª`·N¬Ý¬Ý´å¼Ðµo¥Í¤F¤°»ò¨Æ¡C²{¦b±z¤w´¿¸g·j´M¹L¡ucursor¡v³o­Ó¦r¤F¡C +>> ¦A¦¸Áä¤J C-s ¨Ó·j´M¡ucursor¡vªº¤U¤@­Ó¥X²{¦ì¸m¡C +>> ²{¦bÁä¤J ¥|¦¸¡A¬Ý¬Ý´å¼Ð¬O¦p¦ó²¾°Êªº¡C +>> Áä¤J µ²§ô·j´M¡C + +±z¦³¨S¦³¬Ý¨ìµo¥Í¤F¤°»ò¡H¦b¤@­Óº¥¶i¦¡·j´M¤¤¡AEmacs ¸ÕµÛ­n¨«¨ì±zÁä¤Jªº¦r +¦êªº¤U¤@­Ó¥X²{¦ì¸m¡C­n²¾°Ê¨ì´å¼Ð©Ò¦bªº¤U¤@­Ó¥X²{¦ì¸m¡A¥u­n¦AÁä¤J C-s +¤@¦¸¡C¦pªG¨Ã¨S¦³³o¼Ëªº¥X²{¦ì¸m¦s¦b¡AEmacs ·|¹Í¤@Án¡A¨Ã§i¶D±z¥Ø«eªº·j´M +¡u¥¢±Ñ¡v¡C¥t¥~ C-g ¤]¥i¥H¥Î¨Óµ²§ô·j´M¡C + +ª`·N¡G¦b¬Y¨Ç¨t²Î¤¤¡AÁä¤J C-s ±N·|§â¿Ã¹õ­áµ²¡A±z±N¬Ý¤£¨ì±q Emacs ¨Óªº¥ô +¦ó¿é¥X¡C³oªí¥Ü§@·~¨t²Î¤@­ÓºÙ¬°¡u¬yµ{±±¨î¡vªº¡u¥\¯à¡v±N C-s «ü¥OÄdºI¦í¡A +¨Ã¥B¤£Åý¥¦¶Ç¨ì Emacs¡C­n¨ú®ø¿Ã¹õªº­áµ²¡A½ÐÁä¤J C-q¡CµM«á¨ì Emacs ¨Ï¥Î +¤â¥U¤¤¬Ý¬Ý¹ï©ó¡uº¥¶i¦¡·j´Mªº¦P®É¶i¤J¡] Spontaneous Entry to +Incremental Search ¡^¡v³o­Ó¥DÃD¡A¥H¨ú±o³B²z³o­Ó¡u¥\¯à¡vªº«Øij¡C + +¦pªG±z¦b¤@­Óº¥¶i¦¡·j´Mªº¤¤¶¡¡A¨Ã¥BÁä¤J ¡A±z¥i¥Hµo²{¦b·j´M¦r¦ê +¤¤ªº³Ì«á¤@­Ó¦r¤¸³Q®ø°£¤F¡A¨Ã¥B·j´M·|¦^¨ì³o­Ó·j´Mªº³Ì«á¤@­Ó¦a¤è¡CÁ|¨Ò¨Ó +»¡¡A°²³]±z¤w¸gÁä¤J¤F¡yc¡z¡A¥Î¨Ó´M§ä¡uc¡vªº²Ä¤@¦¸¥X²{¡C²{¦b¦pªG±zÁä¤J +¡yu¡z¡A´å¼Ð·|²¾°Ê¨ì¡ucu¡vªº²Ä¤@¦¸¥X²{¦ì¸m¡C²{¦bÁä¤J ¡A³o·|±N +¡uu¡v±q·j´M¦r¦ê¤¤®ø°£¡A¨Ã¥B´å¼Ð·|²¾¦^¨ì¡uc¡vªº²Ä¤@¦¸¥X²{¦ì¸m¡C + +¦pªG±z¦b¤@­Ó·j´Mªº¤¤¶¡¡A¨Ã¥BÁä¤J¤@­Ó CONTROL ©Î META ¦r¤¸ªº¸Ü¡A¡]¦ý¦³ +¤@¨Ç¨Ò¥~ -- ¹ï·j´M¦Ó¨¥¯S§Oªº¦r¤¸¡A¹³¬O C-s ©M C-r ¡^¡A·j´M·|³Qµ²§ô¡C + +C-s ·|¶}©l¤@­Ó·j´M¡A¥¦·|´M§ä·j´M¦r¦ê¦b¥Ø«e´å¼Ð¦ì¸m¡u¤§«á¡v¡Aªº¥ô¦ó¥X²{ +¦ì¸m¡C¦pªG±z·Q­n¦b¥ý«e¤å¦r¤¤·j´M¡AÁä¤J C-r §@¬°´À¥N¡C°£¤F·j´Mªº¤è¦V¬Û +¤Ï¤§¥~¡A§Ú­Ì©Ò»¡ªº¦³Ãö C-s ªº©Ò¦³¨Æ±¡¡A¦P¼Ë¦a¥i¥HÀ³¥Î¨ì C-r ¤W¡C + + +* ¦h­«µ¡®æ¡] MULTIPLE WINDOWS ¡^ +-------------------------------- + +Emacs ³\¦h¦n¥\¯àªº¨ä¤¤¤§¤@¬O¡A±z¥i¥H¦b¿Ã¹õ¤¤¦P®É®i¥Ü¶W¹L¤@­Óµ¡®æ¡C + +>> ²¾°Ê´å¼Ð¨ì³o¤@¦æ¨Ã¥BÁä¤J C-u 0 C-l¡C + +>> ²{¦bÁä¤J C-x 2¡A¥¦·|±N¿Ã¹õ¥­¤À¦¨¨â­Óµ¡®æ¡C + ³o¨â­Óµ¡®æ³£Åã¥ÜµÛ³o­Ó§Ö³t«ü«n¡C´å¼Ð«h°±¯d¦b¤W¤èªºµ¡®æ¡C + +>> Áä¤J C-M-v ¥H±²°Ê¤U¤èªºµ¡®æ¡C + ¡]¦pªG±z¨Ã¨S¦³¤@­Ó¯uªº META Áä¡A«hÁä¤J ESC C-v ¥ç¥i¡C¡^ + +>> Áä¤J C-x o¡]¡yo¡z«üªº¬O¨ä¥L¡yother¡zªº·N«ä¡^¡A + ±N´å¼Ð²¾°Ê¨ì¤U¤èªºµ¡®æ¡C + +>> ¦b¤U¤èªºµ¡®æ¤¤¡A¨Ï¥Î C-v ©M M-v ¨Ó±²°Ê¥¦¡C + Ä~Äòºû«ù¦b¤W¤èªºµ¡®æ¤¤¾\Ū³o¨Ç«ü¤Þ¡C + +>> ¦A¤@¦¸Áä¤J C-x o ±N´å¼Ð²¾¦^¨ì¤W¤èªºµ¡®æ¡C + ´å¼Ð·|¦^¨ì¥¦¦b¤W¤èµ¡®æ¤¤¡A­ì¥»©Ò¦bªº¦ì¸m¡C + +±z¥i¥H«ùÄò¨Ï¥Î C-x o ¦bµ¡®æ¤§¶¡¤Á´«¡C¨C¤@­Óµ¡®æ¦³¥¦¦Û¤vªº´å¼Ð¦ì¸m¡A¦ý +¬O¥u¦³¤@­Óµ¡®æ·|¯uªºÅã¥Ü¥X´å¼Ð¡C©Ò¦³³q±`ªº½s¿è«ü¥O¥u·|À³¥Î¨ì¨º­Ó´å¼Ð©Ò +¦bªºµ¡®æ¡C§Ú­ÌºÙ³o­Ó¬°¡u³Q¿ï¾Üªºµ¡®æ¡v¡C + +«ü¥O C-M-v ¦b·í±z©ó¤@­Óµ¡®æ¤¤½s¿è¤å¦r¡A¨Ã¨Ï¥Î¨ä¥Lªºµ¡®æ§@¬°°Ñ¦Ò¤§¥Î®É¡A +¬O«D±`¦³¥Îªº¡C±z¥i¥H±N´å¼Ð¤@ª½«O«ù¦b±z¥¿¦b½s¿èªºµ¡®æ¤¤¡A¨Ã¥H C-M-v «ü +¥O¦b¨ä¥Lªºµ¡®æ´`§Ç¦a«e¶i¡C¡iÅçÃÒ¤u§@¯S§O¾A¦X¥H³oºØ¤è¦¡¨Ó¶i¦æ¡A¦p GNU +¤¤Ä¶¤p²Õ¡G§ä¤@­Ó­ì©l­^¤åÀɮסF¦A§ä¥¦Â½Ä¶¦nªº¤¤¤åÀɮסA½s¿è³o­Ó¡u³Q¿ï¾Ü +ªºµ¡®æ¡v¡A¥H C-M-v «ü¥O¸ò¤WÅçÃÒ¤¤ªº¬q¸¨¡K¡K¡C¡j + +C-M-v ¬O CONTROL-META ¦r¤¸ªº¤@­Ó¨Ò¤l¡C¦pªG±z¦³¤@­Ó¯uªº META Áä¡A±z¥i¥H +¦P®É«ö¦í CONTROL ©M META ¦AÁä¤J v ¨ÓÁä¤J C-M-v¡CCONTROL ©Î META ¡u½Ö¥ý +³Q«ö¦í¡v¨Ã¨S¦³¼vÅT¡A¦]¬°³o¨â­ÓÁä³£¬O¥Î¨Ó­×¹¢±z©ÒÁä¤Jªº¦r¤¸¡C + +¦pªG±z¨Ã¨S¦³¤@­Ó¯uªº META Áä¡A±z¥i¥H¨Ï¥Î ESC ¨Ó§@¬°´À¥N¡A³o¼Ë¤l¶¶§Ç´N +¦³Ãö«Y¤F¡G±z¥²¶·Áä¤J ESC ¡A¸òµÛÁä¤J CONTROL-v¡ACONTROL-ESC v ¨Ã¤£·|§@ +¥Î¡C³o¬O¦]¬° ESC ¬O¤@­Ó¨ã¦³¥»¨­§@¥Îªº¦r¤¸¡A¦Ó¤£¬O¤@­Ó­×¹¢Áä¡C + +>> ¡]¦b¤W¤èµ¡®æ¡^Áä¤J C-x 1 ¥H°£¥h¤U¤èµ¡®æ¡C + +¡]¦pªG±z¤w¸g¦b©³ºÝªºµ¡®æÁä¤J C-x 1¡A¨º»ò±N·|§â¤W­±ªºµ¡®æÁôÂæí¡C±N³o­Ó +«ü¥O·Q¹³¦¨¡u¥u«O¯d¤@­Óµ¡®æ -- §Ú¥¿¦b½s¿èªº³o­Ó¡C¡v¡^ + +±z¤£»Ý­n¦b¨â­Ó¤£¦Pªºµ¡®æ¤¤Åã¥Ü¬Û¦Pªº½w½Ä°Ï¡C¦pªG±z¨Ï¥Î C-x C-f ¦b¤@­Ó +µ¡®æ¤¤§äÀɮסA¥t¤@­Óµ¡®æ¨Ã¤£¦]¦Ó§ïÅÜ¡C±z¥i¥H¦b¿W¥ßªº¥ô¤@­Óµ¡®æ¤¤§ä¡e¥¦ +¦Û¤vªº¡f¤@­ÓÀɮסC + +³o¸Ì¦³¥t¥~¤@­Ó¤è¦¡¥i¥H¥Î¨Ó¡A¨Ï¥Î¨â­Óµ¡®æÅã¥Ü¨â­Ó¤£¦PªºªF¦è¡G + +>> Áä¤J C-x 4 C-f¡A«á­±¸òµÛ±zªº¨ä¤¤¤@­ÓÀɮתº¦WºÙ¡C + ¥H §@¬°µ²§ô¡C¬Ý¬Ý«ü©wªºÀÉ®×¥X²{¦b¤U¤èªºµ¡®æ¡C + ´å¼Ð¤]¶]¨ì¨º¸Ì¡C + +>> Áä¤J C-x o ¥H¦^¨ì¤W¤èªºµ¡®æ¡AµM«á¥H C-x 1 §R°£±¼¤U¤èµ¡®æ¡C + + +* »¼°j½s¿è¶¥¼h¡] RECURSIVE EDITING LEVELS ¡^ +-------------------------------------------- + +¦³®É­Ô±z·|¶i¤J©Ò¿×ªº¡u»¼°j½s¿è¶¥¼h¡v¡C¥¦¬O¥Ñ¦ì¦bª¬ºA¦æªº¤è¬A©·©Ò«ü©ú¡A +¨Ã¥B¥]§t¦í¥H¤p¬A©·¨Ó«ü©úªº¼Ò¦¡¦WºÙ¡CÁ|¨Ò¨Ó»¡¡A±z¥i¯à·|¬Ý¨ì +[(Fundamental)]¡A¦Ó¤£¬O (Fundamental)¡C + +­nÂ÷¶}»¼°j½s¿è¶¥¼h¡A½ÐÁä¤J ESC ESC ESC¡C³o¬O­Ó¥þ¥\¯àªº¡uÂ÷¶}¡v«ü¥O¡C±z +¤]¥i¥H¨Ï¥Î¥¦¨Ó°£¥h¦h¾lªºµ¡®æ¡A¨Ã¥BÂ÷¶}¤p½w½Ä°Ï¡C + +>> Áä¤J M-x ¥H¶i¤J¤p½w½Ä°Ï¡FµM«áÁä¤J ESC ESC ESC Â÷¶}¡C + +±zµLªk¨Ï¥Î C-g ¨ÓÂ÷¶}»¼°j½s¿è¶¥¼h¡C³o¬O¦]¬° C-g ¬O¥Î¨Ó¨ú®ø«ü¥O¥H¤Î¡u¦ì +©ó¡v»¼°j½s¿è¶¥¼h¤¤ªº¡u¤Þ¼Æ¡] arguments ¡^¡v¤§¬G¡C + + +* ¨ú±o§ó¦hªºÀ°§U¡] GETTING MORE HELP ¡^ +--------------------------------------- + +¦b¥»§Ö³t«ü«n¤¤¡A§Ú­Ì¸ÕµÛ¶È´£¨Ñ­è­è¦nªº¸ê°TÅý±z¥i¥H¶}©l¨Ï¥Î Emacs¡C¦b +Emacs ¤¤¦³¤Ó¦h¥i¨ú±oªº¸ê°T¡A·Q­n¦b³o¸Ì¥þ³¡¸ÑÄÀ¬O¤£¥i¯àªº¡CµM¦Ó¡A±z¤]³\ +·|·Q­n¾Ç²ß§ó¦h Emacs ¬ÛÃöªº¸ê°T¡A¦]¬°¥¦¦³³\¦h¨ä¥L¦³¥Îªº¥\¯à¡CEmacs ´£ +¨Ñ¤F¡u¾\Ū¦³Ãö Emacs «ü¥O¡vªº«ü¥O¡C³o¨Ç¡uhelp¡v«ü¥O³£¥H CONTROL-h ³o­Ó +¦r¤¸§@¬°¶}ÀY¡AºÙ§@¬°¡uHelp ¦r¤¸¡v¡C + +­n¨Ï¥Î Help ¥\¯à¡AÁä¤J C-h ¦r¤¸¡AµM«á¦AÁä¤J¤@­Ó»¡©ú±z©Ò»Ý­nªºÀ°§Uªº¦r +¤¸¡C¦pªG±z¯uªº¤£ª¾¹D­n°Ý¤°»ò¡A¨º»ò½ÐÁä¤J¡yC-h ?¡z¡A¦¹®É Emacs ±N·|§i¶D +±z¥¦¯à°÷´£¨ÑªºÀ°§U¡C¦pªG±z¤w¸gÁä¤J C-h¡A¦ýµo²{±z¨Ã¤£»Ý­n¥ô¦óÀ°§U¡AÁä¤J +C-g ¨Ó¨ú®ø±¼¥¦´N¬O¤F¡C + +¡]¦³¨Çºô¯¸±N C-h ³o­Ó¦r¤¸ªº·N¸q§ïÅܤF¡C¥L­Ì¯uªº¤£À³¸Ó§â¥¦³]¬°¹ï©Ò¦³¨Ï +¥ÎªÌ¥þ³¡³£¾A¥Îªº¤èªk¡A©Ò¥H±z²{¦b´N¦³¤F­Ó²z¥Ñ¨Ó©ê«è¨t²ÎºÞ²zªÌ¤F¡C¦b¦¹¦P +®É¡A¦pªG C-h ¨Ã¨S¦³¦bµ¡®æªº©³³¡Åã¥Ü¥ô¦ó¦³ÃöÀ°§Uªº°T®§¡A¸ÕµÛÁä¤J F1 Áä¡A +©Î¬O M-x help ¡C¡^ + +³Ì°ò¥»ªº HELP ¥\¯à¬O C-h c¡CÁä¤J C-h¡A¦r¤¸ c¡A¥H¤Î¤@­Ó©Î¤@¦ê¦r¤¸¡FµM«á +Emacs ·|Åã¥Ü¤@­Ó«D±`²µuªº¦³Ãö³o­Ó«ü¥Oªº¸ÑÄÀ¡C + +>> Áä¤J C-h c C-p¡C + +°T®§À³¸Ó·|¹³¬O³o¼Ë¡G + + C-p runs the command previous-line + +³o§i¶D¤F±z¡u¨ç¼Æªº¦WºÙ¡v¡C¨ç¼Æ¦WºÙ¥D­n¬O¥Î¨Ó¦Û­q¥H¤ÎÂX¥R Emacs¡C¦ý¬O¥Ñ +©ó¨ç¼Æ¦WºÙ¬O¥Ñ¡u¥Î¨Ó«ü¥X³o«ü¥O¦b°µ¨Ç¤°»ò¡v¦Ó³Q¿ï©w¡A¥¦­Ì¦]¦¹¤]¥i¥H§@¬° +«D±`²µuªº¤å¥ó -- ¨¬°÷´£¿ô±z¤w¸g¾Ç¹Lªº«ü¥O¡C + +¦h¦r¤¸«ü¥O¹³¬O C-x C-s ©M ¡]¦pªG±z¨S¦³ META ©Î EDIT ©Î ALT Áä¡^v +¤]¥i¥H¦b C-h c «á­±¥X²{¡C + +­n¨ú±o§ó¦h¦³Ãö¤@­Ó«ü¥Oªº¸ê°T¡A¥Î C-h k ¨Ó¨ú¥N¨Ï¥Î C-h c ¡C + +>> Áä¤J C-h k C-p¡C + +³o·|¦b¤@­Ó Emacs µ¡®æÅã¥Ü³o­Ó¨ç¼Æªº»¡©ú¤å¥ó¥H¤Î¥¦ªº¦WºÙ¡C·í±z¾\Ū§¹«á¡A +Áä¤J C-x 1 ¥H¸õÂ÷³o¨ÇÀ°§U¤å¦r¡C±z¨Ã¤£»Ý­n°¨¤W¸òµÛ°µ¡C±z¥i¥H°µ¨Ç½s¿è¡A +·í°Ñ¦Ò¨ìÀ°§U¤å¦r®É¦AÁä¤J C-x 1¡C + +³o¸Ì¦³¤@¨Ç¨ä¥L¦³¥Îªº C-h ¿ï¶µ¡G + + C-h f ¸ÑÄÀ¤@­Ó¨ç¼Æ¡C±z­nÁä¤J¦¹¨ç¼Æªº¦WºÙ¡C + +>> ¸ÕµÛÁä¤J C-h f previous-line¡C + ³o·|¦L¥X Emacs ©Ò¦³ªº¦³Ãö¡u¹ê§@¥X C-p ³o­Ó«ü¥Oªº¨ç¼Æ¡vªº¸ê°T + +C-h v ³o­ÓÃþ¦üªº«ü¥O·|Åã¥Ü¥X¡u±z¥i¥H¥Î¨Ó¦Û­q Emacs ¦æ¬°ªºÅܼơvªº¤å¥ó¡C +·í Emacs ­n¨D®É¡A±z»Ý­nÁä¤J³oÅܼƪº¦WºÙ¡C + + C-h a «ü¥O¬ÛÃö¬d§ä¡] Command Apropos ¡^¡C + Áä¤J¤@­ÓÃöÁä¦rµM«á Emacs ·|¦C¥X©Ò¦³ + ¡u¦b¨ä¦WºÙ¤¤§t¦³¦¹ÃöÁä¦r¡vªº¥þ³¡«ü¥O¡C + ³o¨Ç«ü¥O¥þ³¡³£¥i¥H¸g¥Ñ META-x ¨Ó±Ò°Ê¡C + ¹ï©ó¤@¨Ç«ü¥O¦Ó¨¥¡A«ü¥O¬ÛÃö¬d§ä¤]·|¦C¥X + ¡u¥i¥H°õ¦æ¬Û¦P«ü¥O¡vªº¤@­Ó©Î¨â­Ó¦r¤¸ªº¦ê¦C¡C + +>> Áä¤J C-h a file¡C + +³o·|¦b¥t¤@­Óµ¡®æÅã¥Ü¤@­Ó¡u¦b¨ä¦WºÙ¤¤§t¦³¡yfile¡zªº¥þ³¡ M-x «ü¥O¡vªº¦C +ªí¡C±z±N·|¬Ý¨ì¹³¬O C-x C-f ªº¡u¦r¤¸-«ü¥O¡v¦C¦b¨ä¬Û¹ïÀ³«ü¥O¦WºÙ¡]¦p¡G +find-file ¡^ªº®ÇÃä¡C + +>> Áä¤J C-M-v ¤W¤U²¾°Ê help µ¡®æ¡C¸Õ­Ó´X¦¸¡C + +>> Áä¤J C-x 1 ¨Ó§R°£ help µ¡®æ¡C + + C-h i ¾\Ū½u¤W¨Ï¥Î¤â¥U¡] a.k.a. Info ¡^¡C + ³o­Ó«ü¥O±N±z±a¨ì¤FºÙ¬°¡u*info*¡vªº¯S®í½w½Ä°Ï¡A¦b¨º¡A + ±z¥i¥H¾\Ū¦w¸Ë¦b±zªº¨t²Î¸Ìªº³nÅé®M¥óªº½u¤W¨Ï¥Î¤â¥U¡C + Áä¤J m emacs ¥H¾\Ū Emacs ¨Ï¥Î¤â¥U¡C + ¦pªG±z¦b¦¹¤§«e¥¼´¿¨Ï¥Î¹L Info ¨t²Î¡A½ÐÁä¤J¡y?¡z¡C + Emacs ±N·|±a±z¶i¤J Info ¼Ò¦¡¥\¯àªº¾ÉÄý«ü«n¡C + ¤@¥¹§¹¦¨¤F¥»§Ö³t«ü«nªº¬ãŪ¡A±zÀ³¸Ó¬d¾\ Emacs Info + ¨Ï¥Î¤â¥U¡A¥H§@¬°¥D­nªº°Ñ¦Ò¤å¥ó¡C + + +* §ó¦h¥\¯à¯S¦â¡] MORE FEATURES ¡^ +--------------------------------- + +±z¥i¥H¸g¥Ñ¾\Ū Emacs ¨Ï¥Î¤â¥U¡q¤£½×¬O¤@¥»®Ñ©Î¬O¦b Info ¤¤ªº½u¤Wª©¥» +¡]¨Ï¥Î Help ¿ï³æ©Î¬OÁä¤J F10 h r ¡^¡r¨Ó¾Ç¨ì§ó¦h¦³Ãö¥¦ªºª¾ÃÑ¡C¦³¨â­Ó±z +¥i¯à·|¯S§O³ßÅwªº¥\¯à¯S¦â¬O¥i¥H¸`¬Ù¥´¦r¶qªº completion ÁÙ¦³Â²¤ÆÀɮ׳B²z +ªº dired ¡C + +Completion ¬O¤@ºØÁקK¤£¥²­nªº¥´¦rªº¤è¦¡¡CÁ|¨Ò¨Ó»¡¡A¦pªG±z·Q­n¤Á´« +*Messages* ½w½Ä°Ï¡A±z¥i¥HÁä¤J C-x b *M ¡A¥u­n¥i¥H±q±z¤w¸gÁä¤Jªº¤å +¦r¤¤½T©w¡A Emacs ´N·|±N³Ñ¤Uªº½w½Ä°Ï¦WºÙ¸É»ô¡C Completion ¬O¦b Emacs ¨Ï +¥Î¤â¥Uªº Info ¤¤¡AºÙ¬°¡uCompletion¡vªº¸`ÂI¤¤©Ò¸ÑÄÀªº¡C + +Dired ¨Ï±z¥i¥H¦b¤@­Ó¥Ø¿ý¤¤¦C¥XÀɮס]¦¸¥Ø¿ý«h¬O¥i¿ïªº¡^¡B¦b¦Cªí¤¤¨ì³B²¾ +°Ê¡B«ô³X¡B­«·s©R¦W¡B§R°£¥H¤Î¹ïÀɮק@¾Þ§@¡C Dired ¬O¦b Emacs ¨Ï¥Î¤â¥Uªº +Info ¤¤¡AºÙ¬°¡uDired¡vªº¸`ÂI¤¤©Ò¸ÑÄÀªº¡C + +¨Ï¥Î¤â¥U¤]¸ÑÄÀ¤F³\¦h¨ä¥¦ Emacs ªº¥\¯à¯S¦â¡C + + +* µ²½×¡] CONCLUSION ¡^ +---------------------- + +°O¦í¡A­n§¹¥þÂ÷¶} Emacs ½Ð¨Ï¥Î C-x C-c ¡C­n¼È®ÉÂ÷¶}¨ì shell¡Aµy«á¦A¦^¨ì +Emacs¡A½Ð¨Ï¥Î C-z ¡C + +¥»§Ö³t«ü«n¹ï©ó©Ò¦³ªº·s¤âÀ³¸Ó³£¬O©ö©ó²z¸Ñªº¡A©Ò¥H¦pªG±zµo²{¤F¤°»ò¦a¤è¤£ +²M·¡¡A¤£­n¥u¬O§¤µÛ©Ç¦Û¤v -- ¡]¦V¥»¤å§@ªÌ©M½Ķ¡^µoÂI¨cÄ̧a¡I + + +* ½Ķ¡] TRANSLATION ¡^ +----------------------- + +¥»§Ö³t«ü«nªºÂ½Ä¶¤H­û¦Cªí¦p¤U¡A¦pªG±z¦b¾\Ū¥»¤å¤§«e¡A¡u§¹¥þ¡v¹ï Emacs +¨S¦³·§©À¡A½Ð§i¶D§Ú­Ì±zªº·N¨£¥H§@¬°¥»¤å«áÄòªº§ï¶i¨Ì¾Ú¡C½Ķ¤]´£¨Ñ¤F¤@¥÷ +¡mGNU Emacs ¤¤¤å³B²z»¡©ú¡n¦b +http://www.gnu.org/software/chinese/guide/emacs-chinese.zh.html ¡q³¡¥÷ +¤º®e¤w¸g¾ã²z¨ì¥»§Ö³t«ü«n¡r¡A¤]½Ð±z¦Û¦æ°Ñ¾\¡C + +½s¿è¾¹¬O¹q¸£¨Ï¥ÎªÌ³Ì±`±µÄ²¨ìªºÀ³¥Îµ{¦¡¡A¦]¦¹¤£À³¸ÓÅýªì¾ÇªÌ·P¨ì¹L©ó§xÃø¡A +´N¤@¯ëªºµû½×¨Ó»¡¡A Emacs ¬O¤£Ãø¾Ç·|¨Ï¥Îªº½s¿è¾¹¡A¦ý±zªº·N¨£¥i¥H¨Ï¥¦§ó +¬°¶Kªñ¤@¯ëªº¨Ï¥ÎªÌ¡A¨Ã¨Ï¹q¸£§@¬°¤u¨ãªº¨¤¦â±o¥H¥R¤Àµo´§¡C¦pªG±zÄ@·N´£¨Ñ +§ï¶iªº·N¨£¡A½Ð±H email ¨ì ¡C½Ð¤£­n®`²Û¡A +§Ú­ÌÅwªï¥ô¦ó¦³Ãöªº°Q½×¡F¦pªG±z¤£·Q±H¨ì¶l¥ó²M³æ¡A½Ðª½±µ email µ¹¥»¤å½ +Ķ ¡C½Ð¦b Title ¦æ¤¤¥]§t¦¹¦r¦ê¡uEmacs TUTORIAL: ¡v¡C + +¦pªG±z¬O Emacs ¦Ñ¤â¡AGNU Chinese Translators Team (GNU/CTT) + Åwªï±zªº¥[¤J¡A§Ú­Ì²{¦b¥¿»Ý­nÄ@ +·N§ë¤J½Ķ Emacs ¨Ï¥Î¤â¥Uªº¤H­û¡C + +¥»§Ö³t«ü«n¨Ã¨S¦³±Ä¥Î²ßºD¤W½s¿è¾¹©Ò¨Ï¥ÎªºÂ½Ä¶³N»y¡A¤@¤è­±¦]¬°¥¦ªº¹ê»Ú·N +¸q»P¤@¯ëªº½s¿è¾¹¤£¦P¡A­ì¤å¥»´N¤£¦P¡F¥t¤@¤è­±¤]¦]¬° Emacs ©Ò±Ä¥Îªºµøı +³]­p·§©À¡A¦­¦bµøµ¡¤Æ¨t²Î¤§«e´N¤w¸g¦s¦b¡A¥»½è¤]¤£¬Û¦P¡CÁ`¤§¡A½Ķ¥H¬°³o +¼Ë¥i¥HÀ°§U¹ï©ó Emacs ¾ã­Ó³]­p­õ¾Çªº²z¸Ñ¡C¦pªG¦¬¨ìªº¦^ÂФ¤¡A¤j³¡¥÷­n¨D +´£¥X­×§ï¡A§Ú­ÌÁÙ¬O±qµ½¦p¬y¡C + +(0) ¬°¤FÁקK¡u´å¼Ð²¾°Ê«ü¥O¡v½×­z¤Wªº²V²c¡A¥»¤å±Ä¥Îªº³N»y¬°¡G + ©¹¡u«e¡v²¾¡] move Forward ¡^¡F©¹¡u«á¡v²¾¡] move Backware ¡^ + ¡e©Î¬O©¹¡u¦^¡v²¾¡f¡F + ©¹¡u¤W¡v²¾¡] Previous line ¡^¡F©¹¡u¤U¡v²¾¡] Next line ¡^¡C +(1) ¦b¥»¤å¤¤¡A¡u¦æ¡v«üªº¬O row¡A³o¬O±Ä¥Î¤@¯ëªº²ßºD¥Îªk¡C + ¬°¤FÁקK»~¾É¤¤¤åŪªÌ¡A¯S§O¦b¦¹»¡©ú¡C¦b¥¿¦¡ªº¥Îªk¤¤¡G + ¡ucolumn¡v½Ķ¬°¡u¦æ¡v¡A¥H¡uÁa¡v¬°¦æ¡]ª½¦æ¡^¡A¤]Ķ¬°¡uÄæ¡v¡F + ¡urow¡v½Ķ¬°¡u¦C¡v¡A¥H¡u¾î¡v¬°¦C¡]¾î¦C¡^¡C + ŪªÌ«ä¯Á¤@¤U¡u¦XÁa³s¾î¡vÀ³¸Ó¥i¥H²z¸Ñ¡C + ¤j¬ù¬O¦]¬°¤¤¤å­ì¥»¬Oª½®Ñªº¡A§Ú­Ì»¡¡u¤@¦æ¦r¡v¬O¨S°ÝÃD¡F + ¦ý²{¦b¤j³¡¥÷ªº±¡§Î¤¤¤å¬O¾î®Ñªº¡A¥Ñ©ó²ßºD¨ÏµM¤]ºÙ¬°¤@¦æ¦r¤F¡C +(2) ¦³Ãö©ó¡u¤å¦r¡v¤Î¨ä¶°¦Xªº¬ÛÃöĶ¤å¡A½Ķ©Ò±Ä¥Îªº¦³¡G + ½s¿èªº¡u¤å¦r¡v¡G¡uµM«áÁä¤J¤@¨Ç¤å¦r¡v¡F + ¥Î¨Ó§@¬°»¡©ú¥\¯àªº¡u¤å¥ó¡v¡G¡u³o­Ó¨ç¼Æªº»¡©ú¤å¥ó¡v¡F + ¯S«ü¨ä©Ò»¡©úªº¤º®eªº¡u¤å¥»¡v¡G¡u¹ê»Ú®Ä¤O¥H­^¤å¥»¬°·Ç¡v¡C + §Y¨Ï¥u¬O¡u¤@¦æ¦r¡v¡A¥u­n¥¦¬O¥Î¨Ó§@¬°»¡©ú¤§¥Î¡A + ½ĶÁÙ¬O±N¥¦µø¬°¡u¤å¥ó¡v¡C +(3) ¡ucut¡vªº°Ê§@¦b Emacs ¤¤¤À¬°¡u±þ±¼¡v©M¡u§R°£¡v¡A¤§¶¡ªº®t²§¦p¤U¡G + ¤@¯ë½s¿è¾¹¤¤ªº¡ucut¡v¡G¥u¦³³Ìªñ³Q cut ªº¤å¦rÂ\¨ì clipboard ¤¤¡F + ¡u±þ±¼¡] killing ¡^¡v¡G³Q±þ±¼ªº¤å¦r¡A¥þ³¡³Q¥[¤J¨ì kill ring ¤¤¡F + ¡u§R°£¡] deleting ¡^¡v¡G³Q§R°£ªº¤å¦r¡A´N¬O³Q§R°£¤F¡C + ¦]¦¹¦b¤@¯ë½s¿è¾¹¤¤¡A±z¥u¯à paste¡u³Ìªñ¡v³Q cut ªº¤å¦r¡F + ¦Ó¦b Emacs ¤¤¡A±z¥i¥H¡u©Ô¦^¡v¥ô¦ó¥ý«e³Q±þ±¼ªº¤å¦r¡A¦P®É¡A + ¥¦ªº§@ªk«Ü®e©ö¡C¦Ü©ó³Q§R°£ªº¡A¦]¬°¥Î¨Ó§@¬°¡u§R°£¡v¥\¯àªº«ü¥O¡A + ©Ò¯à²¾¥hªº¤å¦r¼Æ¶q³£«Ü¤Ö¡A¦]¦¹¤]¨S¤°»ò¦n©Ô¦^ªº¡F + ¦pªG¯uªº·Q¦^´_³o¨Ç¤å¦r¡Aundo ±zªº°Ê§@´N¬O¤F¡C +(4) ¡uwindow¡v¦P®É½Ķ¬°¡uµøµ¡¡v©M¡uµ¡®æ¡v¡A + «eªÌªí¥Ü²{¦b¤@¯ë·§©À¤¤ªºµøµ¡¨t²Î¡A¦p¡uX µøµ¡¡v¡F + «áªÌªí¥Ü Emacs ¤¤ªºµøµ¡¡A½Ķ¦b¦¹³qºÙ¬°¡uµ¡®æ¡v¡C + Emacs ªº¡uµ¡®æ¡v§Y¨Ï¦b©R¥O¦C´£¥Ü¤U¤]¥i¥H¥¿±`¤u§@¡A + ¦¹¤@°ò¥»¯S©ÊÅãµM­È±o§Ú­Ì¥H¥t¤@­Ó±M¥Î³N»y¨Ó´y­z¥¦¡C +(5) Ãö©óÀɮתº³N»y¡A¡u§ä¡v¤@­ÓÀɮצb Emacs ¤¤¦³¨âºØ§@¥Î¡G + §ä¤@­Ó¡u¨Ã¤£¦s¦b¡vªºÀɮסAŪªÌÀ³»{ª¾¬°¡u¶}·sÀɮסv¡F + §ä¤@­Ó¡u¤w¸g¦s¦b¡vªºÀɮסA«h¬O¡u¶}±ÒÂÂÀÉ¡v¡C + Emacs ¥u¥H¤@­Ó¡u§ä¡vªº°Ê§@¨Ó¸Ñ¨M¡A¥D­nªº­ì¦]¬O¡u¹ê»Ú¤W¡v + ªº³nÅé¤u§@¦p¦¹¡CÀb«È­ÌÀ³¸Ó·|µo²{³o¼Ë¤ñ¸û¦ÛµM¡A + ¦]¬°¥¦¤ÏÀ³¤F¹q¸£ªº¤u§@¤è¦¡¡A¦P®É¾Þ§@°_¨Ó¤]¸û¤Ö¼o¸Ü¡C +(6) ¦b¡i¡j¤¤ªº¤å¦r¬°Â½Ä¶ªºµù¸Ñ¡C +(7) Ãö©ó¨Ï¤¤¤å¤å¥óµ²ºc¤ÆªºÄ³ÃD¡A°ÝÃD¤w¸gÀò±o¸Ñ¨M¡C +(8) ¥»Â½Ä¶¤å¥»©Ò±Ä¥ÎªºÂ²Ác¥Î»y®t²§¦Cªí¦p¤U¡G + zh cn + ¤å¥ó ¤åÀÉ + ³nÅé ³n¥ó + §@·~ ¾Þ§@ + ®M¥ó ¥] + µøµ¡ µ¡¤f + »¼°j »¼Âk + Àb«È ¶Â«È + ¸ê°T «H®§ + +¥t¥~¡A§Ú­Ì¤]¤Q¤ÀÅwªïŪªÌ¥i¥Hª½±µ­×§ï¥»§Ö³t«ü«n¡A°µ¥X¦Û¤vªºª©¥»¡A¥H¦Û¤v +»{¬°³Ì¬°¦X¾Aªº¤è¦¡¨Ó¤¶²Ð Emacs ¡C¦pªG±z°µ¥X¤F³o¼Ë­Ó¤H¤Æªºª©¥»¡A¨Ã¥B»{ +¬°¨¬¨Ñ¤j®a°Ñ¦Ò¨Ï¥Î¡A½Ð±Hµ¹ ¡A§Ú­Ì·|±N±z +ªºª©¥»¤½¶}¦b GNU/CTT ªººô­¶¤¤´£¨Ñµ¹¤¤¤å¨Ï¥ÎªÌ¤U¸ü¡C + +½Ķ¡G¼B ¬L§» +ÅçÃÒ¡G°¨ ³·µÓ + + +* ½Æ»s¡] COPYING ¡^ +------------------- + +¥»§Ö³t«ü«nªuŧ¦Û¨ã¦³±y¤[¾ú¥vªº Emacs §Ö³t«ü«n¡A¥Ñ Stuart Cracraft ¬°¤F +­ì©lªº Emacs ©Ò¼¶¼gªºª©¥»¶}©l¡C + +³o­Óª©¥»ªº§Ö³t«ü«n©M GNU Emacs ¤@¼Ë³£¬Oª©Åv¤Æªº¡A¨Ã¥B¤¹³\¦b¬Y¨Ç±ø¥ó¤U +´²§G¨ä«þ¨©¡G + +Copyright (C) 1985, 1996, 1998, 2001, 2002, 2003, 2004, + 2005, 2006, 2007 Free Software Foundation, Inc. + + Permission is granted to anyone to make or distribute verbatim copies + of this document as received, in any medium, provided that the + copyright notice and permission notice are preserved, + and that the distributor grants the recipient permission + for further redistribution as permitted by this notice. + + ¥»¤å¤¹³\¦b¤£Åܧó¤å¥ó¤º®eªº«e´£¤U¥Zµn¦b¥ô¦ó§Î¦¡ªº´CÅ餤¡A + ¦ý»Ý«O¯dª©ÅvÁn©ú¥H¤Î³\¥iÁn©ú¡A + ´²§GªÌ¤]¥²¶·µ¹¤©±µ¨üªÌ¦p¦P¦¹Án©ú©Ò¤¹³\ªº¡A¶i¤@¨B´²§Gªº³\¥i¡C + ¡i¥»¬qĶ¤å´£¨ÑŪªÌ§@¬°°Ñ¦Ò¥HÀ°§U²z¸Ñ¡A¹ê»Ú®Ä¤O¥H­^¤å¥»¬°·Ç¡C¡j + + Permission is granted to distribute modified versions + of this document, or of portions of it, + under the above conditions, provided also that they + carry prominent notices stating who last altered them. + + ¥»¤å¤¹³\¦b»P¤W­z¬Û¦Pªº±ø¥ó¤U¡A´²§G­×§ï«áªºª©¥»¡A©Î¬O¨ä¤¤ªº¤@³¡¥÷¡A + ¦ý¥¦­Ì¤]¥²¶·±a¦³ÅãµÛªº¡A»¡©ú¥Ñ½Ö³Ì«á§ó°Ê¤F¥¦ªºÁn©ú¡C + ¡iCopyleft ª©Åv°£¤F´£¨Ñ¨Ï¥ÎªÌ¦Û¥Ñ¥~¡A¤]ºûÅ@­ì©l§@ªÌ¡A + ¥H¤Î«á¨Óªº­×§ï§@ªÌªº¦WÅAÅv¡] credit ¡^¡C + ¥»¬qĶ¤å´£¨ÑŪªÌ§@¬°°Ñ¦Ò¥HÀ°§U²z¸Ñ¡A¹ê»Ú®Ä¤O¥H­^¤å¥»¬°·Ç¡C¡j + +½Æ»s Emacs ¥»¨­ªº±ø¥ó¸û¬°½ÆÂø¡A¦ý¬O¨ã¦³¬Û¦Pªººë¯«¡C½Ð¾\Ū COPYING ³o­Ó +ÀɮסA¨Ã¥B½T¹êµ¹¤©±zªºªB¤Í GNU Emacs ªº«þ¨©¡C½Ð¸g¥Ñ¡u¨Ï¥Î¡B¼¶¼g¡B¥H¤Î +¤À¨É¦Û¥Ñ³nÅé¡v¨ÓÀ°§U®ø°£³nÅé»Ùê¥D¸q¡]¾Ö¦³Åv¡^¡I + +;;; DO NOT PUT THIS ON ZHS OR ZHT FILE... +;;; Local Variables: +;;; coding: chinese-big5 +;;; End: + +;;; arch-tag: a51dafb4-e602-432b-8020-5d5d5f150811 diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 2b6fde4a231..06f6927f222 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,10 @@ +2007-08-22 Glenn Morris + + * startup.el (tutorial-directory): New constant. + (fancy-splash-text): Tutorials now in tutorial-directory. + * tutorial.el (help-with-tutorial): Tutorials now in + tutorial-directory. + 2007-08-22 Michael Albinus * net/tramp.el (top): Require cl.el, when `copy-tree' is not available