glossary.texi 58 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484
  1. @c This is part of the Emacs manual.
  2. @c Copyright (C) 1985-1987, 1993-1995, 1997, 2001-2017 Free Software
  3. @c Foundation, Inc.
  4. @c See file emacs.texi for copying conditions.
  5. @node Glossary
  6. @unnumbered Glossary
  7. @cindex glossary
  8. @table @asis
  9. @anchor{Glossary---Abbrev}
  10. @item Abbrev
  11. An abbrev is a text string that expands into a different text string
  12. when present in the buffer. For example, you might define a few letters
  13. as an abbrev for a long phrase that you want to insert frequently.
  14. @xref{Abbrevs}.
  15. @item Aborting
  16. Aborting means getting out of a recursive edit (q.v.). The
  17. commands @kbd{C-]} and @kbd{M-x top-level} are used for this.
  18. @xref{Quitting}.
  19. @item Active Region
  20. Setting the mark (q.v.@:) at a position in the text also activates it.
  21. When the mark is active, we call the region an active region.
  22. @xref{Mark}.
  23. @item Alt
  24. Alt is the name of a modifier bit that a keyboard input character may
  25. have. To make a character Alt, type it while holding down the @key{Alt}
  26. key. Such characters are given names that start with @kbd{@key{Alt}-}
  27. (usually written @kbd{A-} for short). (Note that many terminals have a
  28. key labeled @key{Alt} that is really a @key{META} key.) @xref{User
  29. Input, Alt}.
  30. @item Argument
  31. @xref{Glossary---Numeric Argument}.
  32. @item @acronym{ASCII} character
  33. An @acronym{ASCII} character is either an @acronym{ASCII} control
  34. character or an @acronym{ASCII} printing character. @xref{User Input}.
  35. @item @acronym{ASCII} control character
  36. An @acronym{ASCII} control character is the Control version of an upper-case
  37. letter, or the Control version of one of the characters @samp{@@[\]^_?}.
  38. @item @acronym{ASCII} printing character
  39. @acronym{ASCII} letters, digits, space, and the following punctuation
  40. characters: @samp{!@@#$%^&*()_-+=|\~`@{@}[]:;"'<>,.?/}.
  41. @item Auto Fill Mode
  42. Auto Fill mode is a minor mode (q.v.@:) in which text that you insert is
  43. automatically broken into lines of a given maximum width.
  44. @xref{Filling}.
  45. @item Auto Saving
  46. Auto saving is the practice of periodically saving the contents of an
  47. Emacs buffer in a specially-named file, so that the information will
  48. be preserved if the buffer is lost due to a system error or user error.
  49. @xref{Auto Save}.
  50. @item Autoloading
  51. Emacs can automatically load Lisp libraries when a Lisp program requests a
  52. function from those libraries. This is called ``autoloading''.
  53. @xref{Lisp Libraries}.
  54. @item Backtrace
  55. A backtrace is a trace of a series of function calls showing how a
  56. program arrived at a certain point. It is used mainly for finding and
  57. correcting bugs (q.v.). Emacs can display a backtrace when it signals
  58. an error or when you type @kbd{C-g} (@pxref{Glossary---Quitting}).
  59. @xref{Checklist}.
  60. @item Backup File
  61. A backup file records the contents that a file had before the current
  62. editing session. Emacs makes backup files automatically to help you
  63. track down or cancel changes you later regret making. @xref{Backup}.
  64. @item Balancing Parentheses
  65. Emacs can balance parentheses (or other matching delimiters) either
  66. manually or automatically. You do manual balancing with the commands
  67. to move over parenthetical groupings (@pxref{Moving by Parens}).
  68. Automatic balancing works by blinking or highlighting the delimiter
  69. that matches the one you just inserted, or inserting the matching
  70. delimiter for you (@pxref{Matching,,Matching Parens}).
  71. @anchor{Glossary---Balanced Expression}
  72. @item Balanced Expressions
  73. A balanced expression is a syntactically recognizable expression, such
  74. as a symbol, number, string constant, block, or parenthesized expression
  75. in C@. @xref{Expressions,Balanced Expressions}.
  76. @item Balloon Help
  77. @xref{Glossary---Tooltips}.
  78. @item Base Buffer
  79. A base buffer is a buffer whose text is shared by an indirect buffer
  80. (q.v.).
  81. @item Bidirectional Text
  82. Some human languages, such as English, are written from left to right.
  83. Others, such as Arabic, are written from right to left. Emacs
  84. supports both of these forms, as well as any mixture of them---this
  85. is ``bidirectional text''. @xref{Bidirectional Editing}.
  86. @item Bind
  87. To bind a key sequence means to give it a binding (q.v.).
  88. @xref{Rebinding}.
  89. @anchor{Glossary---Binding}
  90. @item Binding
  91. A key sequence gets its meaning in Emacs by having a binding, which is a
  92. command (q.v.), a Lisp function that is run when you type that
  93. sequence. @xref{Commands,Binding}. Customization often involves
  94. rebinding a character to a different command function. The bindings of
  95. all key sequences are recorded in the keymaps (q.v.). @xref{Keymaps}.
  96. @item Blank Lines
  97. Blank lines are lines that contain only whitespace. Emacs has several
  98. commands for operating on the blank lines in the buffer. @xref{Blank Lines}.
  99. @item Bookmark
  100. Bookmarks are akin to registers (q.v.@:) in that they record positions
  101. in buffers to which you can return later. Unlike registers, bookmarks
  102. persist between Emacs sessions. @xref{Bookmarks}.
  103. @item Border
  104. A border is a thin space along the edge of the frame, used just for
  105. spacing, not for displaying anything. An Emacs frame has an ordinary
  106. external border, outside of everything including the menu bar, plus an
  107. internal border that surrounds the text windows, their scroll bars
  108. and fringes, and separates them from the menu bar and tool bar. You
  109. can customize both borders with options and resources (@pxref{Borders
  110. X}). Borders are not the same as fringes (q.v.).
  111. @item Buffer
  112. The buffer is the basic editing unit; one buffer corresponds to one text
  113. being edited. You normally have several buffers, but at any time you are
  114. editing only one, the current buffer, though several can be visible
  115. when you are using multiple windows or frames (q.v.). Most buffers
  116. are visiting (q.v.@:) some file. @xref{Buffers}.
  117. @item Buffer Selection History
  118. Emacs keeps a buffer selection history that records how recently each
  119. Emacs buffer has been selected. This is used for choosing a buffer to
  120. select. @xref{Buffers}.
  121. @item Bug
  122. A bug is an incorrect or unreasonable behavior of a program, or
  123. inaccurate or confusing documentation. Emacs developers treat bug
  124. reports, both in Emacs code and its documentation, very seriously and
  125. ask you to report any bugs you find. @xref{Bugs}.
  126. @item Button Down Event
  127. A button down event is the kind of input event (q.v.@:) generated
  128. right away when you press down on a mouse button. @xref{Mouse Buttons}.
  129. @item By Default
  130. @xref{Glossary---Default}.
  131. @item Byte Compilation
  132. @xref{Glossary---Compilation}.
  133. @anchor{Glossary---C-}
  134. @item @kbd{C-}
  135. @kbd{C-} in the name of a character is an abbreviation for Control.
  136. @xref{User Input,C-}.
  137. @item @kbd{C-M-}
  138. @kbd{C-M-} in the name of a character is an abbreviation for
  139. Control-Meta. If your terminal lacks a real @key{META} key, you type
  140. a Control-Meta character by typing @key{ESC} and then typing the
  141. corresponding Control character. @xref{User Input,C-M-}.
  142. @item Case Conversion
  143. Case conversion means changing text from upper case to lower case or
  144. vice versa. @xref{Case}.
  145. @item Case Folding
  146. Case folding means ignoring the differences between case variants of
  147. the same letter: upper-case, lower-case, and title-case. Emacs
  148. performs case folding by default in text search. @xref{Lax Search}.
  149. @item Character
  150. Characters form the contents of an Emacs buffer. Also, key sequences
  151. (q.v.@:) are usually made up of characters (though they may include
  152. other input events as well). @xref{User Input}.
  153. @item Character Folding
  154. Character folding means ignoring differences between similarly looking
  155. characters, such as between @code{a}, and @code{@:a} and @code{@'a}.
  156. Emacs performs character folding by default in text search. @xref{Lax
  157. Search}.
  158. @item Character Set
  159. Emacs supports a number of character sets, each of which represents a
  160. particular alphabet or script. @xref{International}.
  161. @item Character Terminal
  162. @xref{Glossary---Text Terminal}.
  163. @item Click Event
  164. A click event is the kind of input event (q.v.@:) generated when you
  165. press a mouse button and release it without moving the mouse.
  166. @xref{Mouse Buttons}.
  167. @item Client
  168. @xref{Glossary---Server}.
  169. @item Clipboard
  170. A clipboard is a buffer provided by the window system for transferring
  171. text between applications. On the X Window System, the clipboard is
  172. provided in addition to the primary selection (q.v.); on MS-Windows and Mac,
  173. the clipboard is used @emph{instead} of the primary selection.
  174. @xref{Clipboard}.
  175. @item Coding System
  176. A coding system is an encoding for representing text characters in a
  177. file or in a stream of information. Emacs has the ability to convert
  178. text to or from a variety of coding systems when reading or writing it.
  179. @xref{Coding Systems}.
  180. @item Command
  181. A command is a Lisp function specially defined to be able to serve as a
  182. key binding in Emacs. When you type a key sequence (q.v.), its
  183. binding (q.v.@:) is looked up in the relevant keymaps (q.v.@:) to find
  184. the command to run. @xref{Commands}.
  185. @item Command History
  186. @xref{Glossary---Minibuffer History}.
  187. @item Command Name
  188. A command name is the name of a Lisp symbol that is a command
  189. (@pxref{Commands}). You can invoke any command by its name using
  190. @kbd{M-x} (@pxref{M-x,M-x,Running Commands by Name}).
  191. @item Comment
  192. A comment is text in a program which is intended only for humans reading
  193. the program, and which is specially marked so that it will be ignored
  194. when the program is loaded or compiled. Emacs offers special commands
  195. for creating, aligning and killing comments. @xref{Comments}.
  196. @item Common Lisp
  197. Common Lisp is a dialect of Lisp (q.v.@:) much larger and more powerful
  198. than Emacs Lisp. Emacs provides a subset of Common Lisp in the CL
  199. package. @xref{Top, Common Lisp, Overview, cl, Common Lisp Extensions}.
  200. @anchor{Glossary---Compilation}
  201. @item Compilation
  202. Compilation is the process of creating an executable program from source
  203. code. Emacs has commands for compiling files of Emacs Lisp code
  204. (@pxref{Byte Compilation,,, elisp, the Emacs Lisp
  205. Reference Manual}) and programs in C and other languages
  206. (@pxref{Compilation}).
  207. @item Complete Key
  208. A complete key is a key sequence that fully specifies one action to be
  209. performed by Emacs. For example, @kbd{X} and @kbd{C-f} and @kbd{C-x m}
  210. are complete keys. Complete keys derive their meanings from being bound
  211. (q.v.@:) to commands (q.v.). Thus, @kbd{X} is conventionally bound to
  212. a command to insert @samp{X} in the buffer; @kbd{C-x m} is
  213. conventionally bound to a command to begin composing a mail message.
  214. @xref{Keys}.
  215. @item Completion
  216. Completion is what Emacs does when it automatically expands an
  217. abbreviation for a name into the entire name. Completion is done for
  218. minibuffer (q.v.@:) arguments when the set of possible valid inputs
  219. is known; for example, on command names, buffer names, and
  220. file names. Completion usually occurs when @key{TAB}, @key{SPC} or
  221. @key{RET} is typed. @xref{Completion}.
  222. @anchor{Glossary---Continuation Line}
  223. @item Continuation Line
  224. When a line of text is longer than the width of the window, it
  225. normally (but see @ref{Glossary---Truncation}) takes up more than one
  226. screen line when displayed. We say that the text line is continued, and all
  227. screen lines used for it after the first are called continuation
  228. lines. @xref{Continuation Lines}. A related Emacs feature is
  229. filling (q.v.).
  230. @item Control Character
  231. A control character is a character that you type by holding down the
  232. @key{Ctrl} key. Some control characters also have their own keys, so
  233. that you can type them without using @key{Ctrl}. For example,
  234. @key{RET}, @key{TAB}, @key{ESC} and @key{DEL} are all control
  235. characters. @xref{User Input}.
  236. @item Copyleft
  237. A copyleft is a notice giving the public legal permission to
  238. redistribute and modify a program or other work of art, but requiring
  239. modified versions to carry similar permission. Copyright is normally
  240. used to keep users divided and helpless; with copyleft we turn that
  241. around to empower users and encourage them to cooperate.
  242. The particular form of copyleft used by the GNU project is called the
  243. GNU General Public License. @xref{Copying}.
  244. @item @key{Ctrl}
  245. The @key{Ctrl} or control key is what you hold down
  246. in order to enter a control character (q.v.). @xref{Glossary---C-}.
  247. @item Current Buffer
  248. The current buffer in Emacs is the Emacs buffer on which most editing
  249. commands operate. You can select any Emacs buffer as the current one.
  250. @xref{Buffers}.
  251. @item Current Line
  252. The current line is the line that point is on (@pxref{Point}).
  253. @item Current Paragraph
  254. The current paragraph is the paragraph that point is in. If point is
  255. between two paragraphs, the current paragraph is the one that follows
  256. point. @xref{Paragraphs}.
  257. @item Current Defun
  258. The current defun is the defun (q.v.@:) that point is in. If point is
  259. between defuns, the current defun is the one that follows point.
  260. @xref{Defuns}.
  261. @item Cursor
  262. The cursor is the rectangle on the screen which indicates the position
  263. (called point; q.v.@:) at which insertion and deletion takes place.
  264. The cursor is on or under the character that follows point. Often
  265. people speak of ``the cursor'' when, strictly speaking, they mean
  266. ``point''. @xref{Point,Cursor}.
  267. @item Customization
  268. Customization is making minor changes in the way Emacs works, to
  269. reflect your preferences or needs. It is often done by setting
  270. variables (@pxref{Variables}) or faces (@pxref{Face Customization}),
  271. or by rebinding key sequences (@pxref{Keymaps}).
  272. @cindex cut and paste
  273. @item Cut and Paste
  274. @xref{Glossary---Killing}, and @ref{Glossary---Yanking}.
  275. @anchor{Glossary---Daemon}
  276. @item Daemon
  277. A daemon is a standard term for a system-level process that runs in the
  278. background. Daemons are often started when the system first starts up.
  279. When Emacs runs in daemon-mode, it does not
  280. open a display. You connect to it with the
  281. @command{emacsclient} program. @xref{Emacs Server}.
  282. @item Default Argument
  283. The default for an argument is the value that will be assumed if you
  284. do not specify one. When the minibuffer is used to read an argument,
  285. the default argument is used if you just type @key{RET}.
  286. @xref{Minibuffer}.
  287. @anchor{Glossary---Default}
  288. @item Default
  289. A default is the value that is used for a certain purpose when
  290. you do not explicitly specify a value to use.
  291. @item Default Directory
  292. When you specify a file name that does not start with @samp{/} or @samp{~},
  293. it is interpreted relative to the current buffer's default directory.
  294. (On MS systems, file names that start with a drive letter
  295. @samp{@var{x}:} are treated as absolute, not relative.)
  296. @xref{Minibuffer File,Default Directory}.
  297. @item Defun
  298. A defun is a major definition at the top level in a program. The name
  299. ``defun'' comes from Lisp, where most such definitions use the construct
  300. @code{defun}. @xref{Defuns}.
  301. @item @key{DEL}
  302. @key{DEL} is a character that runs the command to delete one character
  303. of text before the cursor. It is typically either the @key{Delete}
  304. key or the @key{BACKSPACE} key, whichever one is easy to type.
  305. @xref{Erasing,DEL}.
  306. @item Deletion
  307. Deletion means erasing text without copying it into the kill ring
  308. (q.v.). The alternative is killing (q.v.). @xref{Killing,Deletion}.
  309. @anchor{Glossary---Deletion of Files}
  310. @item Deletion of Files
  311. Deleting a file means erasing it from the file system.
  312. (Note that some systems use the concept of a trash can, or recycle
  313. bin, to allow you to undelete files.)
  314. @xref{Misc File Ops,Misc File Ops,Miscellaneous File Operations}.
  315. @item Deletion of Messages
  316. Deleting a message (in Rmail, and other mail clients) means flagging
  317. it to be eliminated from your mail file. Until you expunge (q.v.@:)
  318. the Rmail file, you can still undelete the messages you have deleted.
  319. @xref{Rmail Deletion}.
  320. @item Deletion of Windows
  321. Deleting a window means eliminating it from the screen. Other windows
  322. expand to use up the space. The text that was in the window is not
  323. lost, and you can create a new window with the same dimensions as the
  324. old if you wish. @xref{Windows}.
  325. @item Directory
  326. File directories are named collections in the file system, within which
  327. you can place individual files or subdirectories. They are sometimes
  328. referred to as ``folders''. @xref{Directories}.
  329. @anchor{Glossary---Directory Local Variable}
  330. @item Directory Local Variable
  331. A directory local variable is a local variable (q.v.@:) that applies
  332. to all the files within a certain directory. @xref{Directory
  333. Variables}.
  334. @item Dired
  335. Dired is the Emacs facility that displays the contents of a file
  336. directory and allows you to ``edit the directory'', performing
  337. operations on the files in the directory. @xref{Dired}.
  338. @item Disabled Command
  339. A disabled command is one that you may not run without special
  340. confirmation. The usual reason for disabling a command is that it is
  341. confusing for beginning users. @xref{Disabling}.
  342. @item Down Event
  343. Short for ``button down event'' (q.v.).
  344. @item Drag Event
  345. A drag event is the kind of input event (q.v.@:) generated when you
  346. press a mouse button, move the mouse, and then release the button.
  347. @xref{Mouse Buttons}.
  348. @item Dribble File
  349. A dribble file is a file into which Emacs writes all the characters that
  350. you type on the keyboard. Dribble files can be used to make a record
  351. for debugging Emacs bugs. Emacs does not make a dribble file unless you
  352. tell it to. @xref{Bugs}.
  353. @c TODO? Not really appropriate for the user manual I think.
  354. @c Dynamic Binding
  355. @item Echo Area
  356. The echo area is the bottom line of the screen, used for echoing the
  357. arguments to commands, for asking questions, and showing brief messages
  358. (including error messages). The messages are stored in the buffer
  359. @file{*Messages*} so you can review them later. @xref{Echo Area}.
  360. @item Echoing
  361. Echoing is acknowledging the receipt of input events by displaying
  362. them (in the echo area). Emacs never echoes single-character key
  363. sequences; longer key sequences echo only if you pause while typing
  364. them.
  365. @item Electric
  366. We say that a character is electric if it is normally self-inserting
  367. (q.v.), but the current major mode (q.v.@:) redefines it to do something
  368. else as well. For example, some programming language major modes define
  369. particular delimiter characters to reindent the line, or insert one or
  370. more newlines in addition to self-insertion.
  371. @anchor{Glossary---End Of Line}
  372. @item End Of Line
  373. End of line is a character or a sequence of characters that indicate
  374. the end of a text line. On GNU and Unix systems, this is a newline
  375. (q.v.), but other systems have other conventions. @xref{Coding
  376. Systems,end-of-line}. Emacs can recognize several end-of-line
  377. conventions in files and convert between them.
  378. @item Environment Variable
  379. An environment variable is one of a collection of variables stored by
  380. the operating system, each one having a name and a value. Emacs can
  381. access environment variables set by its parent shell, and it can set
  382. variables in the environment it passes to programs it invokes.
  383. @xref{Environment}.
  384. @item EOL
  385. @xref{Glossary---End Of Line}.
  386. @item Error
  387. An error occurs when an Emacs command cannot execute in the current
  388. circumstances. When an error occurs, execution of the command stops
  389. (unless the command has been programmed to do otherwise) and Emacs
  390. reports the error by displaying an error message (q.v.).
  391. @c Not helpful?
  392. @c Type-ahead is discarded. Then Emacs is ready to read another
  393. @c editing command.
  394. @item Error Message
  395. An error message is output displayed by Emacs when you ask it to do
  396. something impossible (such as, killing text forward when point is at
  397. the end of the buffer), or when a command malfunctions in some way.
  398. Such messages appear in the echo area, accompanied by a beep.
  399. @item @key{ESC}
  400. @key{ESC} is a character used as a prefix for typing Meta characters on
  401. keyboards lacking a @key{META} key. Unlike the @key{META} key (which,
  402. like the @key{SHIFT} key, is held down while another character is
  403. typed), you press the @key{ESC} key as you would press a letter key, and
  404. it applies to the next character you type.
  405. @item Expression
  406. @xref{Glossary---Balanced Expression}.
  407. @item Expunging
  408. Expunging an Rmail, Gnus newsgroup, or Dired buffer is an operation
  409. that truly discards the messages or files you have previously flagged
  410. for deletion.
  411. @item Face
  412. A face is a style of displaying characters. It specifies attributes
  413. such as font family and size, foreground and background colors,
  414. underline and strike-through, background stipple, etc. Emacs provides
  415. features to associate specific faces with portions of buffer text, in
  416. order to display that text as specified by the face attributes.
  417. @xref{Faces}.
  418. @item File Local Variable
  419. A file local variable is a local variable (q.v.@:) specified in a
  420. given file. @xref{File Variables}, and @ref{Glossary---Directory
  421. Local Variable}.
  422. @anchor{Glossary---File Locking}
  423. @item File Locking
  424. Emacs uses file locking to notice when two different users
  425. start to edit one file at the same time. @xref{Interlocking}.
  426. @item File Name
  427. @c This is fairly tautological...
  428. A file name is a name that refers to a file. File names may be relative
  429. or absolute; the meaning of a relative file name depends on the current
  430. directory, but an absolute file name refers to the same file regardless
  431. of which directory is current. On GNU and Unix systems, an absolute
  432. file name starts with a slash (the root directory) or with @samp{~/} or
  433. @samp{~@var{user}/} (a home directory). On MS-Windows/MS-DOS, an
  434. absolute file name can also start with a drive letter and a colon, e.g.,
  435. @samp{@var{d}:}.
  436. Some people use the term ``pathname'' for file names, but we do not;
  437. we use the word ``path'' only in the term ``search path'' (q.v.).
  438. @item File-Name Component
  439. A file-name component names a file directly within a particular
  440. directory. On GNU and Unix systems, a file name is a sequence of
  441. file-name components, separated by slashes. For example, @file{foo/bar}
  442. is a file name containing two components, @samp{foo} and @samp{bar}; it
  443. refers to the file named @samp{bar} in the directory named @samp{foo} in
  444. the current directory. MS-DOS/MS-Windows file names can also use
  445. backslashes to separate components, as in @file{foo\bar}.
  446. @item Fill Prefix
  447. The fill prefix is a string that should be expected at the beginning
  448. of each line when filling is done. It is not regarded as part of the
  449. text to be filled. @xref{Filling}.
  450. @anchor{Glossary---Filling}
  451. @item Filling
  452. Filling text means adjusting the position of line-breaks to shift text
  453. between consecutive lines, so that all the lines are approximately the
  454. same length. @xref{Filling}. Some other editors call this feature
  455. ``line wrapping''.
  456. @anchor{Glossary---Font Lock}
  457. @item Font Lock
  458. Font Lock is a mode that highlights parts of buffer text in different
  459. faces, according to the syntax. Some other editors refer to this as
  460. ``syntax highlighting''. For example, all comments (q.v.@:)
  461. might be colored red. @xref{Font Lock}.
  462. @item Fontset
  463. A fontset is a named collection of fonts. A fontset specification lists
  464. character sets and which font to use to display each of them. Fontsets
  465. make it easy to change several fonts at once by specifying the name of a
  466. fontset, rather than changing each font separately. @xref{Fontsets}.
  467. @item Formfeed Character
  468. @xref{Glossary---Page}.
  469. @item Frame
  470. A frame is a rectangular cluster of Emacs windows. Emacs starts out
  471. with one frame, but you can create more. You can subdivide each frame
  472. into Emacs windows (q.v.). When you are using a window system
  473. (q.v.), more than one frame can be visible at the same time.
  474. @xref{Frames}. Some other editors use the term ``window'' for this,
  475. but in Emacs a window means something else.
  476. @item Free Software
  477. Free software is software that gives you the freedom to share, study
  478. and modify it. Emacs is free software, part of the GNU project
  479. (q.v.), and distributed under a copyleft (q.v.@:) license called the
  480. GNU General Public License. @xref{Copying}.
  481. @anchor{Glossary---Free Software Foundation}
  482. @item Free Software Foundation
  483. The Free Software Foundation (FSF) is a charitable foundation
  484. dedicated to promoting the development of free software (q.v.).
  485. For more information, see @uref{http://fsf.org/, the FSF website}.
  486. @item Fringe
  487. On a graphical display (q.v.), there's a narrow portion of the frame
  488. (q.v.@:) between the text area and the window's border. These
  489. ``fringes'' are used to display symbols that provide information about
  490. the buffer text (@pxref{Fringes}). Emacs displays the fringe using a
  491. special face (q.v.@:) called @code{fringe}. @xref{Faces,fringe}.
  492. @item FSF
  493. @xref{Glossary---Free Software Foundation}.
  494. @item FTP
  495. FTP is an acronym for File Transfer Protocol. This is one standard
  496. method for retrieving remote files (q.v.).
  497. @item Function Key
  498. A function key is a key on the keyboard that sends input but does not
  499. correspond to any character. @xref{Function Keys}.
  500. @item Global
  501. Global means ``independent of the current environment; in effect
  502. throughout Emacs''. It is the opposite of local (q.v.). Particular
  503. examples of the use of ``global'' appear below.
  504. @item Global Abbrev
  505. A global definition of an abbrev (q.v.@:) is effective in all major
  506. modes that do not have local (q.v.@:) definitions for the same abbrev.
  507. @xref{Abbrevs}.
  508. @item Global Keymap
  509. The global keymap (q.v.@:) contains key bindings that are in effect
  510. everywhere, except when overridden by local key bindings in a major
  511. mode's local keymap (q.v.). @xref{Keymaps}.
  512. @item Global Mark Ring
  513. The global mark ring records the series of buffers you have recently
  514. set a mark (q.v.@:) in. In many cases you can use this to backtrack
  515. through buffers you have been editing, or in which you have found
  516. tags (@pxref{Glossary---Tags Table}). @xref{Global Mark Ring}.
  517. @anchor{Glossary---Global Substitution}
  518. @item Global Substitution
  519. Global substitution means replacing each occurrence of one string by
  520. another string throughout a large amount of text. @xref{Replace}.
  521. @item Global Variable
  522. The global value of a variable (q.v.@:) takes effect in all buffers
  523. that do not have their own local (q.v.@:) values for the variable.
  524. @xref{Variables}.
  525. @item GNU
  526. GNU is a recursive acronym for GNU's Not Unix, and it refers to a
  527. Unix-compatible operating system which is free software (q.v.).
  528. @xref{Manifesto}. GNU is normally used with Linux as the kernel since
  529. Linux works better than the GNU kernel. For more information, see
  530. @uref{http://www.gnu.org/, the GNU website}.
  531. @item Graphic Character
  532. Graphic characters are those assigned pictorial images rather than
  533. just names. All the non-Meta (q.v.@:) characters except for the
  534. Control (q.v.@:) characters are graphic characters. These include
  535. letters, digits, punctuation, and spaces; they do not include
  536. @key{RET} or @key{ESC}. In Emacs, typing a graphic character inserts
  537. that character (in ordinary editing modes). @xref{Inserting Text}.
  538. @item Graphical Display
  539. A graphical display is one that can display images and multiple fonts.
  540. Usually it also has a window system (q.v.).
  541. @item Highlighting
  542. Highlighting text means displaying it with a different foreground and/or
  543. background color to make it stand out from the rest of the text in the
  544. buffer.
  545. Emacs uses highlighting in several ways. It highlights the region
  546. whenever it is active (@pxref{Mark}). Incremental search also
  547. highlights matches (@pxref{Incremental Search}). @xref{Glossary---Font Lock}.
  548. @item Hardcopy
  549. Hardcopy means printed output. Emacs has various commands for
  550. printing the contents of Emacs buffers. @xref{Printing}.
  551. @item @key{HELP}
  552. @key{HELP} is the Emacs name for @kbd{C-h} or @key{F1}. You can type
  553. @key{HELP} at any time to ask what options you have, or to ask what a
  554. command does. @xref{Help}.
  555. @item Help Echo
  556. Help echo is a short message displayed in the echo area (q.v.@:) when
  557. the mouse pointer is located on portions of display that require some
  558. explanations. Emacs displays help echo for menu items, parts of the
  559. mode line, tool-bar buttons, etc. On graphical displays, the messages
  560. can be displayed as tooltips (q.v.). @xref{Tooltips}.
  561. @item Home Directory
  562. Your home directory contains your personal files. On a multi-user GNU
  563. or Unix system, each user has his or her own home directory. When you
  564. start a new login session, your home directory is the default
  565. directory in which to start. A standard shorthand for your home
  566. directory is @samp{~}. Similarly, @samp{~@var{user}} represents the
  567. home directory of some other user.
  568. @item Hook
  569. A hook is a list of functions to be called on specific occasions, such
  570. as saving a buffer in a file, major mode activation, etc. By
  571. customizing the various hooks, you can modify Emacs's behavior without
  572. changing any of its code. @xref{Hooks}.
  573. @item Hyper
  574. Hyper is the name of a modifier bit that a keyboard input character may
  575. have. To make a character Hyper, type it while holding down the
  576. @key{Hyper} key. Such characters are given names that start with
  577. @kbd{Hyper-} (usually written @kbd{H-} for short). @xref{User Input}.
  578. @item Iff
  579. ``Iff'' means ``if and only if''. This terminology comes from
  580. mathematics. Try to avoid using this term in documentation, since
  581. many are unfamiliar with it and mistake it for a typo.
  582. @item Inbox
  583. An inbox is a file in which mail is delivered by the operating system.
  584. Rmail transfers mail from inboxes to Rmail files in which the
  585. mail is then stored permanently or until explicitly deleted.
  586. @xref{Rmail Inbox}.
  587. @anchor{Glossary---Incremental Search}
  588. @item Incremental Search
  589. Emacs provides an incremental search facility, whereby Emacs begins
  590. searching for a string as soon as you type the first character.
  591. As you type more characters, it refines the search. @xref{Incremental Search}.
  592. @item Indentation
  593. Indentation means blank space at the beginning of a line. Most
  594. programming languages have conventions for using indentation to
  595. illuminate the structure of the program, and Emacs has special
  596. commands to adjust indentation.
  597. @xref{Indentation}.
  598. @item Indirect Buffer
  599. An indirect buffer is a buffer that shares the text of another buffer,
  600. called its base buffer (q.v.). @xref{Indirect Buffers}.
  601. @item Info
  602. Info is the hypertext format used by the GNU project for writing
  603. documentation.
  604. @item Input Event
  605. An input event represents, within Emacs, one action taken by the user on
  606. the terminal. Input events include typing characters, typing function
  607. keys, pressing or releasing mouse buttons, and switching between Emacs
  608. frames. @xref{User Input}.
  609. @item Input Method
  610. An input method is a system for entering non-@acronym{ASCII} text characters by
  611. typing sequences of @acronym{ASCII} characters (q.v.). @xref{Input Methods}.
  612. @item Insertion
  613. Insertion means adding text into the buffer, either from the keyboard
  614. or from some other place in Emacs.
  615. @item Interlocking
  616. @xref{Glossary---File Locking}.
  617. @item Isearch
  618. @xref{Glossary---Incremental Search}.
  619. @item Justification
  620. Justification means adding extra spaces within lines of text in order
  621. to adjust the position of the text edges. @xref{Fill Commands}.
  622. @item Key Binding
  623. @xref{Glossary---Binding}.
  624. @item Keyboard Macro
  625. Keyboard macros are a way of defining new Emacs commands from
  626. sequences of existing ones, with no need to write a Lisp program.
  627. You can use a macro to record a sequence of commands, then
  628. play them back as many times as you like.
  629. @xref{Keyboard Macros}.
  630. @cindex keyboard shortcuts
  631. @item Keyboard Shortcut
  632. A keyboard shortcut is a key sequence (q.v.@:) that invokes a
  633. command. What some programs call ``assigning a keyboard shortcut'',
  634. Emacs calls ``binding a key sequence''. @xref{Glossary---Binding}.
  635. @item Key Sequence
  636. A key sequence (key, for short) is a sequence of input events (q.v.@:)
  637. that are meaningful as a single unit. If the key sequence is enough to
  638. specify one action, it is a complete key (q.v.); if it is not enough,
  639. it is a prefix key (q.v.). @xref{Keys}.
  640. @item Keymap
  641. The keymap is the data structure that records the bindings (q.v.@:) of
  642. key sequences to the commands that they run. For example, the global
  643. keymap binds the character @kbd{C-n} to the command function
  644. @code{next-line}. @xref{Keymaps}.
  645. @item Keyboard Translation Table
  646. The keyboard translation table is an array that translates the character
  647. codes that come from the terminal into the character codes that make up
  648. key sequences.
  649. @item Kill Ring
  650. The kill ring is where all text you have killed (@pxref{Glossary---Killing})
  651. recently is saved. You can reinsert any of the killed text still in
  652. the ring; this is called yanking (q.v.). @xref{Yanking}.
  653. @anchor{Glossary---Killing}
  654. @item Killing
  655. Killing means erasing text and saving it on the kill ring so it can be
  656. yanked (q.v.@:) later. Some other systems call this ``cutting''.
  657. Most Emacs commands that erase text perform killing, as opposed to
  658. deletion (q.v.). @xref{Killing}.
  659. @item Killing a Job
  660. Killing a job (such as, an invocation of Emacs) means making it cease
  661. to exist. Any data within it, if not saved in a file, is lost.
  662. @xref{Exiting}.
  663. @item Language Environment
  664. Your choice of language environment specifies defaults for the input
  665. method (q.v.@:) and coding system (q.v.). @xref{Language
  666. Environments}. These defaults are relevant if you edit
  667. non-@acronym{ASCII} text (@pxref{International}).
  668. @c TODO? Not really appropriate for the user manual I think.
  669. @c Lexical Binding
  670. @item Line Wrapping
  671. @xref{Glossary---Filling}.
  672. @item Lisp
  673. Lisp is a programming language. Most of Emacs is written in a dialect
  674. of Lisp, called Emacs Lisp, which is extended with special features that
  675. make it especially suitable for text editing tasks.
  676. @item List
  677. A list is, approximately, a text string beginning with an open
  678. parenthesis and ending with the matching close parenthesis. In C mode
  679. and other non-Lisp modes, groupings surrounded by other kinds of matched
  680. delimiters appropriate to the language, such as braces, are also
  681. considered lists. Emacs has special commands for many operations on
  682. lists. @xref{Moving by Parens}.
  683. @item Local
  684. Local means ``in effect only in a particular context''; the relevant
  685. kind of context is a particular function execution, a particular
  686. buffer, or a particular major mode. It is the opposite of ``global''
  687. (q.v.). Specific uses of ``local'' in Emacs terminology appear below.
  688. @item Local Abbrev
  689. A local abbrev definition is effective only if a particular major mode
  690. is selected. In that major mode, it overrides any global definition
  691. for the same abbrev. @xref{Abbrevs}.
  692. @item Local Keymap
  693. A local keymap is used in a particular major mode; the key bindings
  694. (q.v.@:) in the current local keymap override global bindings of the
  695. same key sequences. @xref{Keymaps}.
  696. @item Local Variable
  697. A local value of a variable (q.v.@:) applies to only one buffer.
  698. @xref{Locals}.
  699. @item @kbd{M-}
  700. @kbd{M-} in the name of a character is an abbreviation for @key{Meta},
  701. one of the modifier keys that can accompany any character.
  702. @xref{User Input,M-}.
  703. @item @kbd{M-C-}
  704. @kbd{M-C-} in the name of a character is an abbreviation for
  705. Control-Meta; it means the same thing as @kbd{C-M-} (q.v.).
  706. @item @kbd{M-x}
  707. @kbd{M-x} is the key sequence that is used to call an Emacs command by
  708. name. This is how you run commands that are not bound to key sequences.
  709. @xref{M-x,M-x,Running Commands by Name}.
  710. @anchor{Glossary---Mail}
  711. @item Mail
  712. Mail means messages sent from one user to another through the computer
  713. system, to be read at the recipient's convenience. Emacs has commands for
  714. composing and sending mail, and for reading and editing the mail you have
  715. received. @xref{Sending Mail}. @xref{Rmail}, for one way to read
  716. mail with Emacs.
  717. @item Mail Composition Method
  718. A mail composition method is a program runnable within Emacs for editing
  719. and sending a mail message. Emacs lets you select from several
  720. alternative mail composition methods. @xref{Mail Methods}.
  721. @item Major Mode
  722. The Emacs major modes are a mutually exclusive set of options, each of
  723. which configures Emacs for editing a certain sort of text. Ideally,
  724. each programming language has its own major mode. @xref{Major Modes}.
  725. @c FIXME: Mention margins for filling?
  726. @item Margin
  727. The space between the usable part of a window (including the
  728. fringe) and the window edge.
  729. @item Mark
  730. The mark points to a position in the text. It specifies one end of the
  731. region (q.v.), point being the other end. Many commands operate on
  732. all the text from point to the mark. Each buffer has its own mark.
  733. @xref{Mark}.
  734. @item Mark Ring
  735. The mark ring is used to hold several recent previous locations of the
  736. mark, in case you want to move back to them. Each buffer has its
  737. own mark ring; in addition, there is a single global mark ring (q.v.).
  738. @xref{Mark Ring}.
  739. @item Menu Bar
  740. The menu bar is a line at the top of an Emacs frame. It contains
  741. words you can click on with the mouse to bring up menus, or you can use
  742. a keyboard interface to navigate it. @xref{Menu Bars}.
  743. @item Message
  744. @xref{Glossary---Mail}.
  745. @item Meta
  746. Meta is the name of a modifier bit which you can use in a command
  747. character. To enter a meta character, you hold down the @key{Meta}
  748. key while typing the character. We refer to such characters with
  749. names that start with @kbd{Meta-} (usually written @kbd{M-} for
  750. short). For example, @kbd{M-<} is typed by holding down @key{Meta}
  751. and at the same time typing @kbd{<} (which itself is done, on most
  752. terminals, by holding down @key{SHIFT} and typing @kbd{,}).
  753. @xref{User Input,Meta}.
  754. On some terminals, the @key{Meta} key is actually labeled @key{Alt}
  755. or @key{Edit}.
  756. @item Meta Character
  757. A Meta character is one whose character code includes the Meta bit.
  758. @item Minibuffer
  759. The minibuffer is the window that appears when necessary inside the
  760. echo area (q.v.), used for reading arguments to commands.
  761. @xref{Minibuffer}.
  762. @anchor{Glossary---Minibuffer History}
  763. @item Minibuffer History
  764. The minibuffer history records the text you have specified in the past
  765. for minibuffer arguments, so you can conveniently use the same text
  766. again. @xref{Minibuffer History}.
  767. @item Minor Mode
  768. A minor mode is an optional feature of Emacs, which can be switched on
  769. or off independently of all other features. Each minor mode has a
  770. command to turn it on or off. Some minor modes are global (q.v.),
  771. and some are local (q.v.). @xref{Minor Modes}.
  772. @item Minor Mode Keymap
  773. A minor mode keymap is a keymap that belongs to a minor mode and is
  774. active when that mode is enabled. Minor mode keymaps take precedence
  775. over the buffer's local keymap, just as the local keymap takes
  776. precedence over the global keymap. @xref{Keymaps}.
  777. @item Mode Line
  778. The mode line is the line at the bottom of each window (q.v.), giving
  779. status information on the buffer displayed in that window. @xref{Mode
  780. Line}.
  781. @item Modified Buffer
  782. A buffer (q.v.@:) is modified if its text has been changed since the
  783. last time the buffer was saved (or since it was created, if it
  784. has never been saved). @xref{Saving}.
  785. @item Moving Text
  786. Moving text means erasing it from one place and inserting it in
  787. another. The usual way to move text is by killing (q.v.@:) it and then
  788. yanking (q.v.@:) it. @xref{Killing}.
  789. @item MULE
  790. @cindex MULE
  791. Prior to Emacs 23, @acronym{MULE} was the name of a software package
  792. which provided a @dfn{MULtilingual Enhancement} to Emacs, by adding
  793. support for multiple character sets (q.v.). @acronym{MULE} was later
  794. integrated into Emacs, and much of it was replaced when Emacs gained
  795. internal Unicode support in version 23.
  796. Some parts of Emacs that deal with character set support still use the
  797. @acronym{MULE} name. @xref{International}.
  798. @item Multibyte Character
  799. A multibyte character is a character that takes up several bytes in a
  800. buffer. Emacs uses multibyte characters to represent non-@acronym{ASCII} text,
  801. since the number of non-@acronym{ASCII} characters is much more than 256.
  802. @xref{International Chars, International Characters}.
  803. @item Named Mark
  804. A named mark is a register (q.v.), in its role of recording a
  805. location in text so that you can move point to that location.
  806. @xref{Registers}.
  807. @item Narrowing
  808. Narrowing means creating a restriction (q.v.@:) that limits editing in
  809. the current buffer to only a part of the text. Text outside that part
  810. is inaccessible for editing (or viewing) until the boundaries are
  811. widened again, but it is still there, and saving the file saves it
  812. all. @xref{Narrowing}.
  813. @item Newline
  814. Control-J characters in the buffer terminate lines of text and are
  815. therefore also called newlines. @xref{Glossary---End Of Line}.
  816. @cindex nil
  817. @cindex t
  818. @item @code{nil}
  819. @code{nil} is a value usually interpreted as a logical ``false''. Its
  820. opposite is @code{t}, interpreted as ``true''.
  821. @anchor{Glossary---Numeric Argument}
  822. @item Numeric Argument
  823. A numeric argument is a number, specified before a command, to change
  824. the effect of the command. Often the numeric argument serves as a
  825. repeat count. @xref{Arguments}.
  826. @item Overwrite Mode
  827. Overwrite mode is a minor mode. When it is enabled, ordinary text
  828. characters replace the existing text after point rather than pushing
  829. it to one side. @xref{Minor Modes}.
  830. @item Package
  831. A package is a collection of Lisp code that you download and
  832. automatically install from within Emacs. Packages provide a
  833. convenient way to add new features. @xref{Packages}.
  834. @anchor{Glossary---Page}
  835. @item Page
  836. A page is a unit of text, delimited by formfeed characters (@acronym{ASCII}
  837. control-L, code 014) at the beginning of a line. Some Emacs
  838. commands are provided for moving over and operating on pages.
  839. @xref{Pages}.
  840. @item Paragraph
  841. Paragraphs are the medium-size unit of human-language text. There are
  842. special Emacs commands for moving over and operating on paragraphs.
  843. @xref{Paragraphs}.
  844. @item Parsing
  845. We say that certain Emacs commands parse words or expressions in the
  846. text being edited. Really, all they know how to do is find the other
  847. end of a word or expression.
  848. @item Point
  849. Point is the place in the buffer at which insertion and deletion
  850. occur. Point is considered to be between two characters, not at one
  851. character. The terminal's cursor (q.v.@:) indicates the location of
  852. point. @xref{Point}.
  853. @item Prefix Argument
  854. @xref{Glossary---Numeric Argument}.
  855. @item Prefix Key
  856. A prefix key is a key sequence (q.v.@:) whose sole function is to
  857. introduce a set of longer key sequences. @kbd{C-x} is an example of
  858. prefix key; any two-character sequence starting with @kbd{C-x} is
  859. therefore a legitimate key sequence. @xref{Keys}.
  860. @c I don't think this kind of thing needs to be here.
  861. @ignore
  862. @item Primary Rmail File
  863. Your primary Rmail file is the file named @samp{RMAIL} in your home
  864. directory. That's where Rmail stores your incoming mail, unless you
  865. specify a different file name. @xref{Rmail}.
  866. @end ignore
  867. @item Primary Selection
  868. The primary selection is one particular X selection (q.v.); it is the
  869. selection that most X applications use for transferring text to and from
  870. other applications.
  871. The Emacs kill commands set the primary selection and the yank command
  872. uses the primary selection when appropriate. @xref{Killing}.
  873. @item Prompt
  874. A prompt is text used to ask you for input. Displaying a prompt
  875. is called prompting. Emacs prompts always appear in the echo area
  876. (q.v.). One kind of prompting happens when the minibuffer is used to
  877. read an argument (@pxref{Minibuffer}); the echoing that happens when
  878. you pause in the middle of typing a multi-character key sequence is also
  879. a kind of prompting (@pxref{Echo Area}).
  880. @item Query-Replace
  881. Query-replace is an interactive string replacement feature provided by
  882. Emacs. @xref{Query Replace}.
  883. @anchor{Glossary---Quitting}
  884. @item Quitting
  885. Quitting means canceling a partially typed command or a running
  886. command, using @kbd{C-g} (or @kbd{C-@key{BREAK}} on MS-DOS). @xref{Quitting}.
  887. @item Quoting
  888. Quoting means depriving a character of its usual special significance.
  889. The most common kind of quoting in Emacs is with @kbd{C-q}. What
  890. constitutes special significance depends on the context and on
  891. convention. For example, an ordinary character as an Emacs command
  892. inserts itself; so in this context, a special character is any character
  893. that does not normally insert itself (such as @key{DEL}, for example),
  894. and quoting it makes it insert itself as if it were not special. Not
  895. all contexts allow quoting. @xref{Inserting Text,Quoting}.
  896. @item Quoting File Names
  897. Quoting a file name turns off the special significance of constructs
  898. such as @samp{$}, @samp{~} and @samp{:}. @xref{Quoted File Names}.
  899. @item Read-Only Buffer
  900. A read-only buffer is one whose text you are not allowed to change.
  901. Normally Emacs makes buffers read-only when they contain text which
  902. has a special significance to Emacs; for example, Dired buffers.
  903. Visiting a file that is write-protected also makes a read-only buffer.
  904. @xref{Buffers}.
  905. @item Rectangle
  906. A rectangle consists of the text in a given range of columns on a given
  907. range of lines. Normally you specify a rectangle by putting point at
  908. one corner and putting the mark at the diagonally opposite corner.
  909. @xref{Rectangles}.
  910. @item Recursive Editing Level
  911. A recursive editing level is a state in which part of the execution of
  912. a command involves asking you to edit some text. This text may
  913. or may not be the same as the text to which the command was applied.
  914. The mode line indicates recursive editing levels with square brackets
  915. (@samp{[} and @samp{]}). @xref{Recursive Edit}.
  916. @item Redisplay
  917. Redisplay is the process of correcting the image on the screen to
  918. correspond to changes that have been made in the text being edited.
  919. @xref{Screen,Redisplay}.
  920. @item Regexp
  921. @xref{Glossary---Regular Expression}.
  922. @item Region
  923. The region is the text between point (q.v.@:) and the mark (q.v.).
  924. Many commands operate on the text of the region. @xref{Mark,Region}.
  925. @item Register
  926. Registers are named slots in which text, buffer positions, or
  927. rectangles can be saved for later use. @xref{Registers}. A related
  928. Emacs feature is bookmarks (q.v.).
  929. @anchor{Glossary---Regular Expression}
  930. @item Regular Expression
  931. A regular expression is a pattern that can match various text strings;
  932. for example, @samp{a[0-9]+} matches @samp{a} followed by one or more
  933. digits. @xref{Regexps}.
  934. @item Remote File
  935. A remote file is a file that is stored on a system other than your own.
  936. Emacs can access files on other computers provided that they are
  937. connected to the same network as your machine, and (obviously) that
  938. you have a supported method to gain access to those files.
  939. @xref{Remote Files}.
  940. @item Repeat Count
  941. @xref{Glossary---Numeric Argument}.
  942. @item Replacement
  943. @xref{Glossary---Global Substitution}.
  944. @item Restriction
  945. A buffer's restriction is the amount of text, at the beginning or the
  946. end of the buffer, that is temporarily inaccessible. Giving a buffer a
  947. nonzero amount of restriction is called narrowing (q.v.); removing
  948. a restriction is called widening (q.v.). @xref{Narrowing}.
  949. @item @key{RET}
  950. @key{RET} is a character that in Emacs runs the command to insert a
  951. newline into the text. It is also used to terminate most arguments
  952. read in the minibuffer (q.v.). @xref{User Input,Return}.
  953. @item Reverting
  954. Reverting means returning to the original state. Emacs lets you
  955. revert a buffer by re-reading its file from disk. @xref{Reverting}.
  956. @c Seems too obvious, also there is nothing special about the format
  957. @c these days.
  958. @ignore
  959. @item Rmail File
  960. An Rmail file is a file containing text in the format used by
  961. Rmail for storing mail. @xref{Rmail}.
  962. @end ignore
  963. @item Saving
  964. Saving a buffer means copying its text into the file that was visited
  965. (q.v.@:) in that buffer. This is the way text in files actually gets
  966. changed by your Emacs editing. @xref{Saving}.
  967. @item Scroll Bar
  968. A scroll bar is a tall thin hollow box that appears at the side of a
  969. window. You can use mouse commands in the scroll bar to scroll the
  970. window. The scroll bar feature is supported only under windowing
  971. systems. @xref{Scroll Bars}.
  972. @item Scrolling
  973. Scrolling means shifting the text in the Emacs window so as to see a
  974. different part of the buffer. @xref{Scrolling}.
  975. @item Searching
  976. Searching means moving point to the next occurrence of a specified
  977. string or the next match for a specified regular expression.
  978. @xref{Search}.
  979. @item Search Path
  980. A search path is a list of directory names, to be used for searching for
  981. files for certain purposes. For example, the variable @code{load-path}
  982. holds a search path for finding Lisp library files. @xref{Lisp Libraries}.
  983. @item Secondary Selection
  984. The secondary selection is one particular X selection (q.v.); some X
  985. applications can use it for transferring text to and from other
  986. applications. Emacs has special mouse commands for transferring text
  987. using the secondary selection. @xref{Secondary Selection}.
  988. @item Selected Frame
  989. The selected frame is the one your input currently operates on.
  990. @xref{Frames}.
  991. @item Selected Window
  992. The selected window is the one your input currently operates on.
  993. @xref{Basic Window}.
  994. @item Selecting a Buffer
  995. Selecting a buffer means making it the current (q.v.@:) buffer.
  996. @xref{Select Buffer}.
  997. @item Selection
  998. Windowing systems allow an application program to specify
  999. selections whose values are text. A program can also read the
  1000. selections that other programs have set up. This is the principal way
  1001. of transferring text between window applications. Emacs has commands to
  1002. work with the primary (q.v.@:) selection and the secondary (q.v.@:)
  1003. selection, and also with the clipboard (q.v.).
  1004. @item Self-Documentation
  1005. Self-documentation is the feature of Emacs that can tell you what any
  1006. command does, or give you a list of all commands related to a topic
  1007. you specify. You ask for self-documentation with the help character,
  1008. @kbd{C-h}. @xref{Help}.
  1009. @item Self-Inserting Character
  1010. A character is self-inserting if typing that character inserts that
  1011. character in the buffer. Ordinary printing and whitespace characters
  1012. are self-inserting in Emacs, except in certain special major modes.
  1013. @item Sentences
  1014. Emacs has commands for moving by or killing by sentences.
  1015. @xref{Sentences}.
  1016. @anchor{Glossary---Server}
  1017. @item Server
  1018. Within Emacs, you can start a ``server'' process, which listens for
  1019. connections from ``clients''. This offers a faster alternative to
  1020. starting several Emacs instances. @xref{Emacs Server}, and
  1021. @ref{Glossary---Daemon}.
  1022. @c This is only covered in the lispref, not the user manual.
  1023. @ignore
  1024. @item Session Manager
  1025. Some window systems (q.v.@:) provide a tool called a ``session manager''.
  1026. This offers the ability to save your windows when you log off,
  1027. and restore them after you log in again.
  1028. @end ignore
  1029. @item Sexp
  1030. A sexp (short for ``s-expression'') is the basic syntactic unit of
  1031. Lisp in its textual form: either a list, or Lisp atom. Sexps are also
  1032. the balanced expressions (q.v.@:) of the Lisp language; this is why
  1033. the commands for editing balanced expressions have @samp{sexp} in their
  1034. name. @xref{Expressions,Sexps}.
  1035. @item Simultaneous Editing
  1036. Simultaneous editing means two users modifying the same file at once.
  1037. Simultaneous editing, if not detected, can cause one user to lose his
  1038. or her work. Emacs detects all cases of simultaneous editing, and
  1039. warns one of the users to investigate.
  1040. @xref{Interlocking,Interlocking,Simultaneous Editing}.
  1041. @item @key{SPC}
  1042. @key{SPC} is the space character, which you enter by pressing the
  1043. space bar.
  1044. @item Speedbar
  1045. The speedbar is a special tall frame that provides fast access to Emacs
  1046. buffers, functions within those buffers, Info nodes, and other
  1047. interesting parts of text within Emacs. @xref{Speedbar}.
  1048. @item Spell Checking
  1049. Spell checking means checking correctness of the written form of each
  1050. one of the words in a text. Emacs can use various external
  1051. spelling-checker programs to check the spelling of parts of a buffer
  1052. via a convenient user interface. @xref{Spelling}.
  1053. @item String
  1054. A string is a kind of Lisp data object that contains a sequence of
  1055. characters. Many Emacs variables are intended to have strings as
  1056. values. The Lisp syntax for a string consists of the characters in the
  1057. string with a @samp{"} before and another @samp{"} after. A @samp{"}
  1058. that is part of the string must be written as @samp{\"} and a @samp{\}
  1059. that is part of the string must be written as @samp{\\}. All other
  1060. characters, including newline, can be included just by writing them
  1061. inside the string; however, backslash sequences as in C, such as
  1062. @samp{\n} for newline or @samp{\241} using an octal character code, are
  1063. allowed as well.
  1064. @item String Substitution
  1065. @xref{Glossary---Global Substitution}.
  1066. @item Syntax Highlighting
  1067. @xref{Glossary---Font Lock}.
  1068. @item Syntax Table
  1069. The syntax table tells Emacs which characters are part of a word,
  1070. which characters balance each other like parentheses, etc.
  1071. @xref{Syntax Tables,, Syntax Tables, elisp, The Emacs Lisp Reference
  1072. Manual}.
  1073. @item Super
  1074. Super is the name of a modifier bit that a keyboard input character may
  1075. have. To make a character Super, type it while holding down the
  1076. @key{SUPER} key. Such characters are given names that start with
  1077. @kbd{Super-} (usually written @kbd{s-} for short). @xref{User Input}.
  1078. @item Suspending
  1079. Suspending Emacs means stopping it temporarily and returning control
  1080. to its parent process, which is usually a shell. Unlike killing a job
  1081. (q.v.), you can later resume the suspended Emacs job without losing
  1082. your buffers, unsaved edits, undo history, etc. @xref{Exiting}.
  1083. @item @key{TAB}
  1084. @key{TAB} is the tab character. In Emacs it is typically used for
  1085. indentation or completion.
  1086. @anchor{Glossary---Tags Table}
  1087. @item Tags Table
  1088. A tags table is a file that serves as an index to the function
  1089. definitions in one or more other files. @xref{Tags Tables}.
  1090. @item Termscript File
  1091. A termscript file contains a record of all characters sent by Emacs to
  1092. the terminal. It is used for tracking down bugs in Emacs redisplay.
  1093. Emacs does not make a termscript file unless you tell it to.
  1094. @xref{Bugs}.
  1095. @item Text
  1096. ``Text'' has two meanings (@pxref{Text}):
  1097. @itemize @bullet
  1098. @item
  1099. Data consisting of a sequence of characters, as opposed to binary
  1100. numbers, executable programs, and the like. The basic contents of an
  1101. Emacs buffer (aside from the text properties, q.v.@:) are always text
  1102. in this sense.
  1103. @item
  1104. Data consisting of written human language (as opposed to programs),
  1105. or following the stylistic conventions of human language.
  1106. @end itemize
  1107. @anchor{Glossary---Text Terminal}
  1108. @item Text Terminal
  1109. A text terminal, or character terminal, is a display that is limited
  1110. to displaying text in character units. Such a terminal cannot control
  1111. individual pixels it displays. Emacs supports a subset of display
  1112. features on text terminals.
  1113. @item Text Properties
  1114. Text properties are annotations recorded for particular characters in
  1115. the buffer. Images in the buffer are recorded as text properties;
  1116. they also specify formatting information. @xref{Editing Format Info}.
  1117. @item Theme
  1118. A theme is a set of customizations (q.v.@:) that give Emacs a
  1119. particular appearance or behavior. For example, you might use a theme
  1120. for your favorite set of faces (q.v.).
  1121. @item Tool Bar
  1122. The tool bar is a line (sometimes multiple lines) of icons at the top
  1123. of an Emacs frame. Clicking on one of these icons executes a command.
  1124. You can think of this as a graphical relative of the menu bar (q.v.).
  1125. @xref{Tool Bars}.
  1126. @anchor{Glossary---Tooltips}
  1127. @item Tooltips
  1128. Tooltips are small windows displaying a help echo (q.v.@:) text, which
  1129. explains parts of the display, lists useful options available via mouse
  1130. clicks, etc. @xref{Tooltips}.
  1131. @item Top Level
  1132. Top level is the normal state of Emacs, in which you are editing the
  1133. text of the file you have visited. You are at top level whenever you
  1134. are not in a recursive editing level (q.v.@:) or the minibuffer
  1135. (q.v.), and not in the middle of a command. You can get back to top
  1136. level by aborting (q.v.@:) and quitting (q.v.). @xref{Quitting}.
  1137. @item Transient Mark Mode
  1138. The default behavior of the mark (q.v.@:) and region (q.v.), in which
  1139. setting the mark activates it and highlights the region, is called
  1140. Transient Mark mode. In GNU Emacs 23 and onwards, it is enabled by
  1141. default. @xref{Disabled Transient Mark}.
  1142. @item Transposition
  1143. Transposing two units of text means putting each one into the place
  1144. formerly occupied by the other. There are Emacs commands to transpose
  1145. two adjacent characters, words, balanced expressions (q.v.@:) or lines
  1146. (@pxref{Transpose}).
  1147. @item Trash Can
  1148. @xref{Glossary---Deletion of Files}.
  1149. @anchor{Glossary---Truncation}
  1150. @item Truncation
  1151. Truncating text lines in the display means leaving out any text on a
  1152. line that does not fit within the right margin of the window
  1153. displaying it. @xref{Continuation Lines,Truncation}, and
  1154. @ref{Glossary---Continuation Line}.
  1155. @item TTY
  1156. @xref{Glossary---Text Terminal}.
  1157. @item Undoing
  1158. Undoing means making your previous editing go in reverse, bringing
  1159. back the text that existed earlier in the editing session.
  1160. @xref{Undo}.
  1161. @item Unix
  1162. Unix is a class of multi-user computer operating systems with a long
  1163. history. There are several implementations today. The GNU project
  1164. (q.v.@:) aims to develop a complete Unix-like operating system that
  1165. is free software (q.v.).
  1166. @item User Option
  1167. A user option is a face (q.v.@:) or a variable (q.v.@:) that exists so
  1168. that you can customize Emacs by setting it to a new value.
  1169. @xref{Easy Customization}.
  1170. @item Variable
  1171. A variable is an object in Lisp that can store an arbitrary value.
  1172. Emacs uses some variables for internal purposes, and has others (known
  1173. as ``user options''; q.v.@:) just so that you can set their values to
  1174. control the behavior of Emacs. The variables used in Emacs that you
  1175. are likely to be interested in are listed in the Variables Index in
  1176. this manual (@pxref{Variable Index}). @xref{Variables}, for
  1177. information on variables.
  1178. @item Version Control
  1179. Version control systems keep track of multiple versions of a source file.
  1180. They provide a more powerful alternative to keeping backup files (q.v.).
  1181. @xref{Version Control}.
  1182. @item Visiting
  1183. Visiting a file means loading its contents into a buffer (q.v.@:)
  1184. where they can be edited. @xref{Visiting}.
  1185. @item Whitespace
  1186. Whitespace is any run of consecutive formatting characters (space,
  1187. tab, newline, and backspace).
  1188. @item Widening
  1189. Widening is removing any restriction (q.v.@:) on the current buffer;
  1190. it is the opposite of narrowing (q.v.). @xref{Narrowing}.
  1191. @item Window
  1192. Emacs divides a frame (q.v.@:) into one or more windows, each of which
  1193. can display the contents of one buffer (q.v.@:) at any time.
  1194. @xref{Screen}, for basic information on how Emacs uses the screen.
  1195. @xref{Windows}, for commands to control the use of windows. Some
  1196. other editors use the term ``window'' for what we call a ``frame''
  1197. (q.v.@:) in Emacs.
  1198. @item Window System
  1199. A window system is software that operates on a graphical display
  1200. (q.v.), to subdivide the screen so that multiple applications can
  1201. have their] own windows at the same time. All modern operating systems
  1202. include a window system.
  1203. @item Word Abbrev
  1204. @xref{Glossary---Abbrev}.
  1205. @item Word Search
  1206. Word search is searching for a sequence of words, considering the
  1207. punctuation between them as insignificant. @xref{Word Search}.
  1208. @anchor{Glossary---Yanking}
  1209. @item Yanking
  1210. Yanking means reinserting text previously killed (q.v.). It can be
  1211. used to undo a mistaken kill, or for copying or moving text. Some
  1212. other systems call this ``pasting''. @xref{Yanking}.
  1213. @end table