neulab/tldr huggingface dataset:
Sometimes with a program as complicated as as it is very hard to construct an example that will make the program follow a certain path through the code. If you do not send us the example, we will not be able to construct one, so we will not be able to verify that the bug is fixed.
And if we cannot understand what bug you are trying to fix, or why your patch should be an improvement, we will not install it. A test case will help us to understand.
•   A guess about what the bug is or what it depends on.
Such guesses are usually wrong. Even we cannot guess right about such things without first using the debugger to find the facts.
Acknowledgements If you have contributed to GAS and your name isn't listed here, it is not meant as a slight. We just don't know about it. Send mail to the maintainer, and we'll correct the situation. Currently the maintainer is Ken Raeburn (email address raeburn@cyGNUs.com).
Dean Elsner wrote the original GNU assembler for the VAX.
Jay Fenlason maintained GAS for a while, adding support for GDB-specific debug information and the 68k series machines, most of the preprocessing pass, and extensive changes in messages.c, input-file.c, write.c.
K. Richard Pixley maintained GAS for a while, adding various enhancements and many bug fixes, including merging support for several processors, breaking GAS up to handle multiple object file format back ends (including heavy rewrite, testing, an integration of the coff and b.out back ends), adding configuration including heavy testing and verification of cross assemblers and file splits and renaming, converted GAS to strictly ANSI C including full prototypes, added support for m680[34]0 and cpu32, did considerable work on i960 including a COFF port (including considerable amounts of reverse engineering), a SPARC opcode file rewrite, DECstation, rs6000, and hp300hpux host ports, updated “know” assertions and made them work, much other reorganization, cleanup, and lint.
Ken Raeburn wrote the high-level BFD interface code to replace most of the code in format-specific I/O modules.
The original VMS support was contributed by David L. Kashtan. Eric Youngdale has done much work with it since.
The Intel 80386 machine description was written by Eliot Dresselhaus.
Minh Tran-Le at IntelliCorp contributed some AIX 386 support.
The Motorola 88k machine description was contributed by Devon Bowen of Buffalo University and Torbjorn Granlund of the Swedish Institute of Computer Science.
Keith Knowles at the Open Software Foundation wrote the original MIPS back end ( tc-mips.c, tc-mips.h), and contributed Rose format support (which hasn't been merged in yet). Ralph Campbell worked with the MIPS code to support a.out format.
Support for the Zilog Z8k and Renesas H8/300 processors (tc-z8k, tc-h8300), and IEEE 695 object file format (obj-ieee), was written by Steve Chamberlain of CyGNUs Support. Steve also modified the COFF back end to use BFD for some low-level operations, for use with the H8/300 and AMD 29k targets.
John Gilmore built the AMD 29000 support, added .include support, and simplified the configuration of which versions accept which directives.  He updated the 68k machine description so that Motorola's opcodes always produced fixed-size instructions (e.g., jsr), while synthetic instructions remained shrinkable ( jbsr).  John fixed many bugs, including true tested cross-compilation support, and one bug in relaxation that took a week and required the proverbial one-bit fix.
Ian Lance Taylor of CyGNUs Support merged the Motorola and MIT syntax for the 68k, completed support for some COFF targets (68k, i386 SVR3, and SCO Unix), added support for MIPS ECOFF and ELF targets, wrote the initial RS/6000 and PowerPC assembler, and made a few other minor patches.
Steve Chamberlain made GAS able to generate listings.
Hewlett-Packard contributed support for the HP9000/300.
Jeff Law wrote GAS and BFD support for the native HPPA object format (SOM) along with a fairly extensive HPPA testsuite (for both SOM and ELF object formats). This work was supported by both the Center for Software Science at the University of Utah and CyGNUs Support.
Support for ELF format files has been worked on by Mark Eichin of CyGNUs Support (original, incomplete implementation for SPARC), Pete Hoogenboom and Jeff Law at the University of Utah (HPPA mainly), Michael Meissner of the Open Software Foundation (i386 mainly), and Ken Raeburn of CyGNUs Support (sparc, and some initial 64-bit support).
Linas Vepstas added GAS support for the ESA/390 “IBM 370” architecture.
Richard Henderson rewrote the Alpha assembler. Klaus Kaempf wrote GAS and BFD support for openVMS/Alpha.
Timothy Wall, Michael Hayes, and Greg Smart contributed to the various tic* flavors.
David Heine, Sterling Augustine, Bob Wilson and John Ruttenberg from Tensilica, Inc. added support for Xtensa processors.
Several engineers at CyGNUs Support have also provided many small bug fixes and configuration enhancements.
Many others have contributed large or small bugfixes and enhancements. If you have contributed significant work and are not mentioned on this list, and want to be, let us know. Some of the history has been lost; we are not intentionally leaving anyone out.
GNU Free Documentation License Copyright (C) 2000, 2003 Free Software Foundation, Inc. 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
1.   PREAMBLE
The purpose of this License is to make a manual, textbook, or other written document “free” in the sense of freedom: to assure everyone the effective freedom to copy and redistribute it, with or without modifying it, either commercially or noncommercially. Secondarily, this License preserves for the author and publisher a way to get credit for their work, while not being considered responsible for modifications made by others.
This License is a kind of “copyleft”, which means that derivative works of the document must themselves be free in the same sense. It complements the GNU General Public License, which is a copyleft license designed for free software.
We have designed this License in order to use it for manuals for free software, because free software needs free documentation: a free program should come with manuals providing the same freedoms that the software does. But this License is not limited to software manuals; it can be used for any textual work, regardless of subject matter or whether it is published as a printed book. We recommend this License principally for works whose purpose is instruction or reference.
2.   APPLICABILITY AND DEFINITIONS
This License applies to any manual or other work that contains a notice placed by the copyright holder saying it can be distributed under the terms of this License. The “Document”, below, refers to any such manual or work. Any member of the public is a licensee, and is addressed as “you.”
A “Modified Version” of the Document means any work containing the Document or a portion of it, either copied verbatim, or with modifications and/or translated into another language.
A “Secondary Section” is a named appendix or a front-matter section of the Document that deals exclusively with the relationship of the publishers or authors of the Document to the Document's overall subject (or to related matters) and contains nothing that could fall directly within that overall subject.  (For example, if the Document is in part a textbook of mathematics, a Secondary Section may not explain any mathematics.) The relationship could be a matter of historical connection with the subject or with related matters, or of legal, commercial, philosophical, ethical or political position regarding them.
The “Invariant Sections” are certain Secondary Sections whose titles are designated, as being those of Invariant Sections, in the notice that says that the Document is released under this License.
The “Cover Texts” are certain short passages of text that are listed, as Front-Cover Texts or Back-Cover Texts, in the notice that says that the Document is released under this License.
A “Transparent” copy of the Document means a machine-readable copy, represented in a format whose specification is available to the general public, whose contents can be viewed and edited directly and straightforwardly with generic text editors or (for images composed of pixels) generic paint programs or (for drawings) some widely available drawing editor, and that is suitable for input to text formatters or for automatic translation to a variety of formats suitable for input to text formatters. A copy made in an otherwise Transparent file format whose markup has been designed to thwart or discourage subsequent modification by readers is not Transparent. A copy that is not “Transparent” is called “Opaque.”
Examples of suitable formats for Transparent copies include plain ASCII without markup, Texinfo input format, LaTeX input format, SGML or XML using a publicly available DTD, and standard-conforming simple HTML designed for human modification.  Opaque formats include PostScript, PDF, proprietary formats that can be read and edited only by proprietary word processors, SGML or XML for which the DTD and/or processing tools are not generally available, and the machine- generated HTML produced by some word processors for output purposes only.
The “Title Page” means, for a printed book, the title page itself, plus such following pages as are needed to hold, legibly, the material this License requires to appear in the title page. For works in formats which do not have any title page as such, “Title Page” means the text near the most prominent appearance of the work's title, preceding the beginning of the body of the text.
3.   VERBATIM COPYING
You may copy and distribute the Document in any medium, either commercially or noncommercially, provided that this License, the copyright notices, and the license notice saying this License applies to the Document are reproduced in all copies, and that you add no other conditions whatsoever to those of this License. You may not use technical measures to obstruct or control the reading or further copying of the copies you make or distribute. However, you may accept compensation in exchange for copies. If you distribute a large enough number of copies you must also follow the conditions in section 3.
You may also lend copies, under the same conditions stated above, and you may publicly display copies.
4.   COPYING IN QUANTITY
If you publish printed copies of the Document numbering more than 100, and the Document's license notice requires Cover Texts, you must enclose the copies in covers that carry, clearly and legibly, all these Cover Texts: Front-Cover Texts on the front cover, and Back- Cover Texts on the back cover. Both covers must also clearly and legibly identify you as the publisher of these copies.  The front cover must present the full title with all words of the title equally prominent and visible. You may add other material on the covers in addition.  Copying with changes limited to the covers, as long as they preserve the title of the Document and satisfy these conditions, can be treated as verbatim copying in other respects.
If the required texts for either cover are too voluminous to fit legibly, you should put the first ones listed (as many as fit reasonably) on the actual cover, and continue the rest onto adjacent pages.
If you publish or distribute Opaque copies of the Document numbering more than 100, you must either include a machine-readable Transparent copy along with each Opaque copy, or state in or with each Opaque copy a publicly-accessible computer-network location containing a complete Transparent copy of the Document, free of added material, which the general network-using public has access to download anonymously at no charge using public-standard network protocols.  If you use the latter option, you must take reasonably prudent steps, when you begin distribution of Opaque copies in quantity, to ensure that this Transparent copy will remain thus accessible at the stated location until at least one year after the last time you distribute an Opaque copy (directly or through your agents or retailers) of that edition to the public.
It is requested, but not required, that you contact the authors of the Document well before redistributing any large number of copies, to give them a chance to provide you with an updated version of the Document.
5.   MODIFICATIONS
You may copy and distribute a Modified Version of the Document under the conditions of sections 2 and 3 above, provided that you release the Modified Version under precisely this License, with the Modified Version filling the role of the Document, thus licensing distribution and modification of the Modified Version to whoever possesses a copy of it. In addition, you must do these things in the Modified Version:
A. Use in the Title Page (and on the covers, if any) a title distinct from that of the Document, and from those of previous versions (which should, if there were any, be listed in the History section of the Document). You may use the same title as a previous version if the original publisher of that version gives permission.  B. List on the Title Page, as authors, one or more persons or entities responsible for authorship of the modifications in the Modified Version, together with at least five of the principal authors of the Document (all of its principal authors, if it has less than five).  C.  State on the Title page the name of the publisher of the Modified Version, as the publisher.  D. Preserve all the copyright notices of the Document.  E. Add an appropriate copyright notice for your modifications adjacent to the other copyright notices.  F. Include, immediately after the copyright notices, a license notice giving the public permission to use the Modified Version under the terms of this License, in the form shown in the Addendum below.  G. Preserve in that license notice the full lists of Invariant Sections and required Cover Texts given in the Document's license notice.  H. Include an unaltered copy of this License.  I. Preserve the section entitled “History”, and its title, and add to it an item stating at least the title, year, new authors, and publisher of the Modified Version as given on the Title Page.  If there is no section entitled “History” in the Document, create one stating the title, year, authors, and publisher of the Document as given on its Title Page, then add an item describing the Modified Version as stated in the previous sentence.  J. Preserve the network location, if any, given in the Document for public access to a Transparent copy of the Document, and likewise the network locations given in the Document for previous versions it was based on. These may be placed in the “History” section. You may omit a network location for a work that was published at least four years before the Document itself, or if the original publisher of the version it refers to gives permission.  K. In any section entitled “Acknowledgements” or “Dedications”, preserve the section's title, and preserve in the section all the substance and tone of each of the contributor acknowledgements and/or dedications given therein.  L. Preserve all the Invariant Sections of the Document, unaltered in their text and in their titles. Section numbers or the equivalent are not considered part of the section titles.  M. Delete any section entitled “Endorsements.” Such a section may not be included in the Modified Version.  N. Do not retitle any existing section as “Endorsements” or to conflict in title with any Invariant Section.
If the Modified Version includes new front-matter sections or appendices that qualify as Secondary Sections and contain no material copied from the Document, you may at your option designate some or all of these sections as invariant.  To do this, add their titles to the list of Invariant Sections in the Modified Version's license notice. These titles must be distinct from any other section titles.
You may add a section entitled “Endorsements”, provided it contains nothing but endorsements of your Modified Version by various parties--for example, statements of peer review or that the text has been approved by an organization as the authoritative definition of a standard.
You may add a passage of up to five words as a Front-Cover Text, and a passage of up to 25 words as a Back-Cover Text, to the end of the list of Cover Texts in the Modified Version. Only one passage of Front- Cover Text and one of Back-Cover Text may be added by (or through arrangements made by) any one entity. If the Document already includes a cover text for the same cover, previously added by you or by arrangement made by the same entity you are acting on behalf of, you may not add another; but you may replace the old one, on explicit permission from the previous publisher that added the old one.
The author(s) and publisher(s) of the Document do not by this License give permission to use their names for publicity for or to assert or imply endorsement of any Modified Version.
6.   COMBINING DOCUMENTS
You may combine the Document with other documents released under this License, under the terms defined in section 4 above for modified versions, provided that you include in the combination all of the Invariant Sections of all of the original documents, unmodified, and list them all as Invariant Sections of your combined work in its license notice.
The combined work need only contain one copy of this License, and multiple identical Invariant Sections may be replaced with a single copy. If there are multiple Invariant Sections with the same name but different contents, make the title of each such section unique by adding at the end of it, in parentheses, the name of the original author or publisher of that section if known, or else a unique number. Make the same adjustment to the section titles in the list of Invariant Sections in the license notice of the combined work.
In the combination, you must combine any sections entitled “History” in the various original documents, forming one section entitled “History”; likewise combine any sections entitled “Acknowledgements”, and any sections entitled “Dedications.” You must delete all sections entitled “Endorsements.”
7.   COLLECTIONS OF DOCUMENTS
You may make a collection consisting of the Document and other documents released under this License, and replace the individual copies of this License in the various documents with a single copy that is included in the collection, provided that you follow the rules of this License for verbatim copying of each of the documents in all other respects.
You may extract a single document from such a collection, and distribute it individually under this License, provided you insert a copy of this License into the extracted document, and follow this License in all other respects regarding verbatim copying of that document.
8.   AGGREGATION WITH INDEPENDENT WORKS
A compilation of the Document or its derivatives with other separate and independent documents or works, in or on a volume of a storage or distribution medium, does not as a whole count as a Modified Version of the Document, provided no compilation copyright is claimed for the compilation. Such a compilation is called an “aggregate”, and this License does not apply to the other self-contained works thus compiled with the Document, on account of their being thus compiled, if they are not themselves derivative works of the Document.
If the Cover Text requirement of section 3 is applicable to these copies of the Document, then if the Document is less than one quarter of the entire aggregate, the Document's Cover Texts may be placed on covers that surround only the Document within the aggregate. Otherwise they must appear on covers around the whole aggregate.
9.   TRANSLATION
Translation is considered a kind of modification, so you may distribute translations of the Document under the terms of section 4. Replacing Invariant Sections with translations requires special permission from their copyright holders, but you may include translations of some or all Invariant Sections in addition to the original versions of these Invariant Sections. You may include a translation of this License provided that you also include the original English version of this License. In case of a disagreement between the translation and the original English version of this License, the original English version will prevail.
10.  TERMINATION
You may not copy, modify, sublicense, or distribute the Document except as expressly provided for under this License. Any other attempt to copy, modify, sublicense or distribute the Document is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.
11.  FUTURE REVISIONS OF THIS LICENSE
The Free Software Foundation may publish new, revised versions of the GNU Free Documentation License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. See http://www.gnu.org/copyleft/.
Each version of the License is given a distinguishing version number. If the Document specifies that a particular numbered version of this License “or any later version” applies to it, you have the option of following the terms and conditions either of that specified version or of any later version that has been published (not as a draft) by the Free Software Foundation. If the Document does not specify a version number of this License, you may choose any version ever published (not as a draft) by the Free Software Foundation.
ADDENDUM: How to use this License for your documents To use this License in a document you have written, include a copy of the License in the document and put the following copyright and license notices just after the title page:
Copyright (C)  year  your name. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with the Invariant Sections being list their titles, with the Front-Cover Texts being list, and with the Back-Cover Texts being list. A copy of the license is included in the section entitled "GNU Free Documentation License."
If you have no Invariant Sections, write “with no Invariant Sections” instead of saying which ones are invariant. If you have no Front-Cover Texts, write “no Front-Cover Texts” instead of “Front-Cover Texts being list ”; likewise for Back-Cover Texts.
If your document contains nontrivial examples of program code, we recommend releasing these examples in parallel under your choice of free software license, such as the GNU General Public License, to permit their use in free software.
identify(1)                  General Commands Manual                 identify(1)
identify - describes the format and characteristics of one or more image files.
identify [options] input-file
The identify program is a member of the ImageMagick(1) suite of tools. It describes the format and characteristics of one or more image files. It also reports if an image is incomplete or corrupt. The information returned includes the image number, the file name, the width and height of the image, whether the image is colormapped or not, the number of colors in the image (by default off use -define unique=true option), the number of bytes in the image, the format of the image (JPEG, PNM, etc.), and finally the number of seconds it took to read and process the image. Many more attributes are available with the verbose option.
For more information about the identify command, point your browser to file:///usr/share/doc/ImageMagick-7/www/identify.html or http://imagemagick.org/script/identify.php.
Image Settings: -alpha option        on, activate, off, deactivate, set, opaque, copy transparent, extract, background, or shape -antialias           remove pixel-aliasing -authenticate value  decrypt image with this password -clip                clip along the first path from the 8BIM profile -clip-mask filename  associate a clip mask with the image -clip-path id        clip along a named path from the 8BIM profile -colorspace type     alternate image colorspace -crop geometry       cut out a rectangular region of the image -define format:option define one or more image format options -define unique=true  return the number of unique colors in the image -density geometry    horizontal and vertical density of the image -depth value         image depth -endian type         endianness (MSB or LSB) of the image -extract geometry    extract area from image -features distance   analyze image features (e.g. contrast, correlation) -format "string"     output formatted image characteristics -fuzz distance       colors within this distance are considered equal -gamma value         of gamma correction -interlace type      type of image interlacing scheme -interpolate method  pixel color interpolation method -limit type value    pixel cache resource limit -list type           Color, Configure, Delegate, Format, Magic, Module, Resource, or Type -matte               store matte channel if the image has one -moments             report image moments -monitor             monitor progress -ping                efficiently determine image attributes -precision value     maximum number of significant digits to print -quiet               suppress all warning messages -read-mask filename  associate a read mask with the image -regard-warnings     pay attention to warning messages -respect-parentheses settings remain in effect until parenthesis boundary -sampling-factor geometry horizontal and vertical sampling factor -seed value          seed a new sequence of pseudo-random numbers -set attribute value set an image attribute -size geometry       width and height of image -strip               strip image of all profiles and comments -unique              display the number of unique colors in the image -units type          the units of image resolution -verbose             print detailed information about the image -virtual-pixel method virtual pixel access method
Image Operators: -auto-orient         automatically orient image -channel mask        set the image channel mask -grayscale method    convert image to grayscale -negate              replace each pixel with its complementary color
Miscellaneous Options: -debug events        display copious debugging information -help                print program options -list type           print a list of supported option arguments -log format          format of debugging information -version             print version information
Although some options appear to modify the file to be identified, the identify command is strictly read only. For instance, the crop option crops the in-memory image and then describes the result.
SORT(1)                           User Commands                          SORT(1)
sort - sort lines of text files
sort [OPTION]... [FILE]... sort [OPTION]... --files0-from=F
Write sorted concatenation of all FILE(s) to standard output.
Mandatory arguments to long options are mandatory for short options too. Ordering options:
-b, --ignore-leading-blanks ignore leading blanks
-d, --dictionary-order consider only blanks and alphanumeric characters
-f, --ignore-case fold lower case to upper case characters
-g, --general-numeric-sort compare according to general numerical value
-i, --ignore-nonprinting consider only printable characters
-M, --month-sort compare (unknown) < 'JAN' < ... < 'DEC'
-h, --human-numeric-sort compare human readable numbers (e.g., 2K 1G)
-n, --numeric-sort compare according to string numerical value
-R, --random-sort shuffle, but group identical keys.  See shuf(1)
-r, --reverse reverse the result of comparisons
--sort=WORD sort according to WORD: general-numeric -g, human-numeric -h, month -M, numeric -n, random -R, version -V
-V, --version-sort natural sort of (version) numbers within text
--batch-size=NMERGE merge at most NMERGE inputs at once; for more use temp files
-c, --check, --check=diagnose-first check for sorted input; do not sort
-C, --check=quiet, --check=silent like -c, but do not report first bad line
--compress-program=PROG compress temporaries with PROG; decompress them with PROG -d
--debug annotate the part of the line used to sort, and warn about questionable usage to stderr
--files0-from=F read input from the files specified by NUL-terminated names in file F; If F is - then read names from standard input
-k, --key=KEYDEF sort via a key; KEYDEF gives location and type
-m, --merge merge already sorted files; do not sort
-o, --output=FILE write result to FILE instead of standard output
-s, --stable stabilize sort by disabling last-resort comparison
-S, --buffer-size=SIZE use SIZE for main memory buffer
-t, --field-separator=SEP use SEP instead of non-blank to blank transition
-T, --temporary-directory=DIR use DIR for temporaries, not $TMPDIR or /tmp; multiple options specify multiple directories
--parallel=N change the number of sorts run concurrently to N
-u, --unique with -c, check for strict ordering; without -c, output only the first of an equal run
KEYDEF is F[.C][OPTS][,F[.C][OPTS]] for start and stop position, where F is a field number and C a character position in the field; both are origin 1, and the stop position defaults to the line's end.  If neither -t nor -b is in effect, characters in a field are counted from the beginning of the preceding whitespace.  OPTS is one or more single-letter ordering options [bdfgiMhnRrV], which override global ordering options for that key.  If no key is given, use the entire line as the key.  Use --debug to diagnose incorrect key usage.
SIZE may be followed by the following multiplicative suffixes: % 1% of memory, b 1, K 1024 (default), and so on for M, G, T, P, E, Z, Y.
*** WARNING *** The locale specified by the environment affects sort order.  Set LC_ALL=C to get the traditional sort order that uses native byte values.
Written by Mike Haertel and Paul Eggert.
shuf(1), uniq(1)
Full documentation <https://www.gnu.org/software/coreutils/sort> or available locally via: info '(coreutils) sort invocation'
VI(1)                             User Commands                            VI(1)
vi, view, vedit - screen oriented (visual) display editor based on ex
vi [-c command|+command] [-r [filename]] [-s|-] [-t tagstring] [-w size] [-lLRV] [file ...]
view [-c command|+command] [-r [filename]] [-s|-] [-t tagstring] [-w size] [-lLRV] [file ...]
vedit [-c command|+command] [-r [filename]] [-s|-] [-t tagstring] [-w size] [-lLRV] [file ...]
Vi (visual) is a display oriented text editor based on ex(1).  Ex and vi run the same code; it is possible to get to the command mode of ex from within vi and vice-versa.
The view command is identical to vi except that files are opened read- only.  The vedit command is also identical, but sets some options to values more useful for novices.
The following options are accepted:
-c command or +command Execute command when editing begins.
-l     Start in a special mode useful for the Lisp programming language.
-r [filename] or -L When no argument is supplied with this option, all files to be recovered are listed and the editor exits immediately.  If a filename is specified, the corresponding temporary file is opened in recovery mode.
-R     Files are opened read-only when this option is given.
-s or - Script mode; all feedback for interactive editing is disabled. EXINIT and .exrc files are not processed.
-t tagstring Read the tags file, then choose the file and position specified by tagstring for editing.
-V     Echo command input to standard error, unless it originates from a terminal.
-w size Specify the size of the editing window for visual mode.
The Introduction to Display Editing with Vi provides full details on using vi.
Most of the ex commands are available in visual mode when prefixed by a : character. See ex(1) for a description of them.
The following gives the uses the editor makes of each character.  The characters are presented in their order in the ASCII character set: Control characters come first, then most special characters, then the digits, upper and then lower case characters.
For each character we tell a meaning it has as a command and any meaning it has during an insert.  If it has only meaning as a command, then only this is discussed.  Section numbers in parentheses indicate where the character is discussed in “An Introduction to Display Editing with Vi”; a `f' after the section number means that the character is mentioned in a footnote.
^@     Not a command character.  If typed as the first character of an insertion it is replaced with the last text inserted, and the insert terminates.  Only 128 characters are saved from the last insert; if more characters were inserted the mechanism is not available.  A ^@ cannot be part of the file due to the editor implementation (7.5f).
^A     Unused.
^B     Backward window.  A count specifies repetition.  Two lines of continuity are kept if possible (2.1, 6.1, 7.2).
^C     Unused.
^D     As a command, scrolls down a half-window of text.  A count gives the number of (logical) lines to scroll, and is remembered for future ^D and ^U commands (2.1, 7.2).  During an insert, backtabs over autoindent white space at the beginning of a line (6.6, 7.5); this white space cannot be backspaced over.
^E     Exposes one more line below the current screen in the file, leaving the cursor where it is if possible.
^F     Forward window.  A count specifies repetition.  Two lines of continuity are kept if possible (2.1, 6.1, 7.2).
^G     Equivalent to :fCR, printing the current file, whether it has been modified, the current line number and the number of lines in the file, and the percentage of the way through the file.
^H (BS) Same as left arrow.  (See h).  During an insert, eliminates the last input character, backing over it but not erasing it; it remains so the user can see what he typed if he wishes to type something only slightly different (3.1, 7.5).
^I (TAB) Not a command character.  When inserted it prints as some number of spaces.  When the cursor is at a tab character it rests at the last of the spaces which represent the tab.  The spacing of tabstops is controlled by the tabstop option (4.1, 6.6).
^J (LF) Same as down arrow (see j).
^K     Unused.
^L     The ASCII formfeed character, this causes the screen to be cleared and redrawn.  This is useful after a transmission error, if characters typed by a program other than the editor scramble the screen, or after output is stopped by an interrupt (5.4, 7.2f).
^M (CR) A carriage return advances to the next line, at the first non- white position in the line.  Given a count, it advances that many lines (2.3).  During an insert, a CR causes the insert to continue onto another line (3.1).
^N     Same as down arrow (see j).
^O     Unused.
^P     Same as up arrow (see k).
^Q     Not a command character.  In input mode, ^Q quotes the next character, the same as ^V , except that some teletype drivers will eat the ^Q so that the editor never sees it.
^R     Redraws the current screen, eliminating logical lines not corresponding to physical lines (lines with only a single @ character on them).  On hardcopy terminals in open mode, retypes the current line (5.4, 7.2, 7.8).
^S     Unused.  Some teletype drivers use ^S to suspend output until ^Q is pressed.
^T     Not a command character.  During an insert, with autoindent set and at the beginning of the line, inserts shiftwidth white space.
^U     Scrolls the screen up, inverting ^D which scrolls down.  Counts work as they do for ^D, and the previous scroll amount is common to both.  On a dumb terminal, ^U will often necessitate clearing and redrawing the screen further back in the file (2.1, 7.2).
^V     Not a command character.  In input mode, quotes the next character so that it is possible to insert non-printing and special characters into the file (4.2, 7.5).
^W     Not a command character.  During an insert, backs up as b would in command mode; the deleted characters remain on the display (see ^H) (7.5).
^X     Unused.
^Y     Exposes one more line above the current screen, leaving the cursor where it is if possible.  (No mnemonic value for this key; however, it is next to ^U which scrolls up a bunch.)
^Z     If supported by the Unix system, stops the editor, exiting to the top level shell.  Same as :stopCR.  Otherwise, unused.
^[ (ESC) Cancels a partially formed command, such as a z when no following character has yet been given; terminates inputs on the last line (read by commands such as : / and ?); ends insertions of new text into the buffer.  If an ESC is given when quiescent in command state, the editor rings the bell or flashes the screen.  The user can thus hit ESC if he doesn't know what is happening till the editor rings the bell.  If the user doesn't know whether he is in insert mode he can type ESCa, and then material to be input; the material will be inserted correctly whether or not he was in insert mode when he started (1.6, 3.1, 7.5).
^\     Unused.
^]     Searches for the word which is after the cursor as a tag. Equivalent to typing :ta, this word, and then a CR.  Mnemonically, this command is “ right to” (7.3).
^^     Equivalent to :e #CR, returning to the previous position in the last edited file, or editing a file which the user specified if he got a `No write since last change diagnostic' and does not want to have to type the file name again (7.3).  (The user has to do a :w before ^^ will work in this case.  If he does not wish to write the file he should do :e! #CR instead.)
^_     Unused.  Reserved as the command character for the Tektronix 4025 and 4027 terminal.
SPACE  Same as right arrow (see l).
!      An operator, which processes lines from the buffer with reformatting commands.  Follow ! with the object to be processed, and then the command name terminated by CR.  Doubling ! and preceding it by a count causes count lines to be filtered; otherwise the count is passed on to the object after the !.  Thus 2!}fmtCR reformats the next two paragraphs by running them through the program fmt.  If working on LISP, the command !%grindCR, given at the beginning of a function, will run the text of the function through the LISP grinder (6.7, 7.3).  To read a file or the output of a command into the buffer :r (7.3) can be used.  To simply execute a command, :! (7.3).  Precedes a named buffer specification.  There are named buffers 1-9 used for saving deleted text and named buffers a-z into which the user can place text (4.3, 6.3)
#      The macro character which, when followed by a number, will substitute for a function key on terminals without function keys (6.9).  In input mode, if this is the erase character, it will delete the last character typed in input mode, and must be preceded with a \ to insert it, since it normally backs over the last input character.
$      Moves to the end of the current line.  If the list option is set, then the end of each line will be shown by printing a $ after the end of the displayed text in the line.  Given a count, advances to the count'th following end of line; thus 2$ advances to the end of the following line.
%      Moves to the parenthesis or brace { } which balances the parenthesis or brace at the current cursor position.
&      A synonym for :&CR, by analogy with the ex & command.
´      When followed by a ´ returns to the previous context at the beginning of a line.  The previous context is set whenever the current line is moved in a non-relative way.  When followed by a letter a-z, returns to the line which was marked with this letter with a m command, at the first non-white character in the line. (2.2, 5.3).  When used with an operator such as d, the operation takes place over complete lines; if ` is used, the operation takes place from the exact marked place to the current cursor position within the line.
(      Retreats to the beginning of a sentence, or to the beginning of a LISP s-expression if the lisp option is set.  A sentence ends at a . ! or ? which is followed by either the end of a line or by two spaces.  Any number of closing ) ] " and ´ characters may appear after the . ! or ?, and before the spaces or end of line. Sentences also begin at paragraph and section boundaries (see { and [[ below).  A count advances that many sentences (4.2, 6.8).
)      Advances to the beginning of a sentence.  A count repeats the effect.  See ( above for the definition of a sentence (4.2, 6.8).
*      Unused.
+      Same as CR when used as a command.
,      Reverse of the last f F t or T command, looking the other way in the current line.  Especially useful after hitting too many ; characters.  A count repeats the search.
-      Retreats to the previous line at the first non-white character. This is the inverse of + and RETURN.  If the line moved to is not on the screen, the screen is scrolled, or cleared and redrawn if this is not possible.  If a large amount of scrolling would be required the screen is also cleared and redrawn, with the current line at the center (2.3).
.      Repeats the last command which changed the buffer.  Especially useful when deleting words or lines; the user can delete some words/lines and then hit . to delete more and more words/lines. Given a count, it passes it on to the command being repeated. Thus after a 2dw, 3. deletes three words (3.3, 6.3, 7.2, 7.4).
/      Reads a string from the last line on the screen, and scans forward for the next occurrence of this string.  The normal input editing sequences may be used during the input on the bottom line; an returns to command state without ever searching.  The search begins when the user hits CR to terminate the pattern; the cursor moves to the beginning of the last line to indicate that the search is in progress; the search may then be terminated with a DEL or RUB, or by backspacing when at the beginning of the bottom line, returning the cursor to its initial position.  Searches normally wrap end-around to find a string anywhere in the buffer.
When used with an operator the enclosed region is normally affected.  By mentioning an offset from the line matched by the pattern the user can force whole lines to be affected.  To do this a pattern with a closing a closing / and then an offset +n or -n must be given.
To include the character / in the search string, it must be escaped with a preceding \.  A ^ at the beginning of the pattern forces the match to occur at the beginning of a line only; this speeds the search.  A $ at the end of the pattern forces the match to occur at the end of a line only.  More extended pattern matching is available, see section 7.4; unless nomagic ist set in the .exrc file the user will have to preceed the characters . [ * and ~ in the search pattern with a \ to get them to work as one would naively expect (1.6, 2.2, 6.1, 7.2, 7.4).
0      Moves to the first character on the current line.  Also used, in forming numbers, after an initial 1-9.
1-9    Used to form numeric arguments to commands (2.3, 7.2).
:      A prefix to a set of commands for file and option manipulation and escapes to the system.  Input is given on the bottom line and terminated with an CR, and the command then executed.  The user can return to where he was by hitting DEL or RUB if he hit : accidentally (see ex(1) and primarily 6.2 and 7.3).
;      Repeats the last single character find which used f F t or T.  A count iterates the basic scan (4.1).
<      An operator which shifts lines left one shiftwidth, normally 8 spaces.  Like all operators, affects lines when repeated, as in <<.  Counts are passed through to the basic object, thus 3<< shifts three lines (6.6, 7.2).
=      Reindents line for LISP, as though they were typed in with lisp and autoindent set (6.8).
>      An operator which shifts lines right one shiftwidth, normally 8 spaces.  Affects lines when repeated as in >>.  Counts repeat the basic object (6.6, 7.2).
?      Scans backwards, the opposite of /.  See the / description above for details on scanning (2.2, 6.1, 7.4).
@      A macro character (6.9).  If this is the kill character, it must be escaped with a \ to type it in during input mode, as it normally backs over the input given on the current line (3.1, 3.4, 7.5).
A      Appends at the end of line, a synonym for $a (7.2).
B      Backs up a word, where words are composed of non-blank sequences, placing the cursor at the beginning of the word.  A count repeats the effect (2.4).
C      Changes the rest of the text on the current line; a synonym for c$.
D      Deletes the rest of the text on the current line; a synonym for d$.
E      Moves forward to the end of a word, defined as blanks and non- blanks, like B and W.  A count repeats the effect.
F      Finds a single following character, backwards in the current line. A count repeats this search that many times (4.1).
G      Goes to the line number given as preceding argument, or the end of the file if no preceding count is given.  The screen is redrawn with the new current line in the center if necessary (7.2).
H      Home arrow.  Homes the cursor to the top line on the screen.  If a count is given, then the cursor is moved to the count'th line on the screen.  In any case the cursor is moved to the first non- white character on the line.  If used as the target of an operator, full lines are affected (2.3, 3.2).
I      Inserts at the beginning of a line; a synonym for ^i.
J      Joins together lines, supplying appropriate white space: one space between words, two spaces after a ., and no spaces at all if the first character of the joined on line is ).  A count causes that many lines to be joined rather than the default two (6.5, 7.1f).
K      Unused.
L      Moves the cursor to the first non-white character of the last line on the screen.  With a count, to the first non-white of the count'th line from the bottom.  Operators affect whole lines when used with L (2.3).
M      Moves the cursor to the middle line on the screen, at the first non-white position on the line (2.3).
N      Scans for the next match of the last pattern given to / or ?, but in the reverse direction; this is the reverse of n.
O      Opens a new line above the current line and inputs text there up to an ESC.  A count can be used on dumb terminals to specify a number of lines to be opened; this is generally obsolete, as the slowopen option works better (3.1).
P      Puts the last deleted text back before/above the cursor.  The text goes back as whole lines above the cursor if it was deleted as whole lines.  Otherwise the text is inserted between the characters before and at the cursor.  May be preceded by a named buffer specification "x to retrieve the contents of the buffer; buffers 1-9 contain deleted material, buffers a-z are available for general use (6.3).
Q      Quits from vi to ex command mode.  In this mode, whole lines form commands, ending with a RETURN.  One can give all the : commands; the editor supplies the : as a prompt (7.7).
R      Replaces characters on the screen with characters typed (overlay fashion).  Terminates with an ESC.
S      Changes whole lines, a synonym for cc.  A count substitutes for that many lines.  The lines are saved in the numeric buffers, and erased on the screen before the substitution begins.
T      Takes a single following character, locates the character before the cursor in the current line, and places the cursor just after that character.  A count repeats the effect.  Most useful with operators such as d (4.1).
U      Restores the current line to its state before the user started changing it (3.5).
V      Unused.
W      Moves forward to the beginning of a word in the current line, where words are defined as sequences of blank/non-blank characters.  A count repeats the effect (2.4).
X      Deletes the character before the cursor.  A count repeats the effect, but only characters on the current line are deleted.
Y      Yanks a copy of the current line into the unnamed buffer, to be put back by a later p or P; a very useful synonym for yy.  A count yanks that many lines.  May be preceded by a buffer name to put lines in that buffer (7.4).
ZZ     Exits the editor.  (Same as :xCR.)  If any changes have been made, the buffer is written out to the current file.  Then the editor quits.