Log In
Or create an account -> 
Imperial Library
  • Home
  • About
  • News
  • Upload
  • Forum
  • Help
  • Login/SignUp

Index
Learning the vi and Vim Editors
Preface
Scope of This Book How the Material Is Presented
Discussion of vi Commands Conventions Keystrokes Problem Checklist
What You Need to Know Before Starting Comments and Questions Safari® Books Online About the Previous Editions Preface to the Seventh Edition
What’s New Versions Acknowledgments from the Sixth Edition Acknowledgments for the Seventh Edition
I. Basic and Advanced vi
1. The vi Text Editor
A Brief Historical Perspective Opening and Closing Files
Opening a File Problems Opening Files Modus Operandi Saving and Quitting a File
Quitting Without Saving Edits
Problems Saving Files Exercises
2. Simple Editing
vi Commands Moving the Cursor
Single Movements Numeric Arguments Movement Within a Line Movement by Text Blocks
Simple Edits
Inserting New Text Appending Text Changing Text
Words Lines Characters Substituting text
Changing Case Deleting Text
Words Lines Characters Problems with deletions
Moving Text
Transposing two letters
Copying Text Repeating or Undoing Your Last Command
Repeat Undo
More Ways to Insert Text
Numeric Arguments for Insert Commands
Joining Two Lines with J
Problem Checklist
Review of Basic vi Commands
3. Moving Around in a Hurry
Movement by Screens
Scrolling the Screen Repositioning the Screen with z Redrawing the Screen Movement Within a Screen Movement by Line
Movement on the current line
Movement by Text Blocks Movement by Searches
Repeating Searches
Changing through searching
Current Line Searches
Movement by Line Number
The G (Go To) Command
Review of vi Motion Commands
4. Beyond the Basics
More Command Combinations Options When Starting vi
Advancing to a Specific Place Read-Only Mode Recovering a Buffer
Making Use of Buffers
Recovering Deletions Yanking to Named Buffers
Marking Your Place Other Advanced Edits Review of vi Buffer and Marking Commands
5. Introducing the ex Editor
ex Commands
Exercise: The ex Editor Problem Checklist
Editing with ex
Line Addresses Defining a Range of Lines Line Addressing Symbols Search Patterns Redefining the Current Line Position Global Searches Combining ex Commands
Saving and Exiting Files
Renaming the Buffer Saving Part of a File Appending to a Saved File
Copying a File into Another File Editing Multiple Files
Invoking vi on Multiple Files Using the Argument List Calling in New Files Switching Files from vi Edits Between Files
6. Global Replacement
Confirming Substitutions Context-Sensitive Replacement Pattern-Matching Rules
Metacharacters Used in Search Patterns POSIX Bracket Expressions Metacharacters Used in Replacement Strings More Substitution Tricks
Pattern-Matching Examples
Search for General Class of Words Block Move by Patterns More Examples
A Final Look at Pattern Matching
Deleting an Unknown Block of Text Switching Items in a Textual Database Using :g to Repeat a Command Collecting Lines
7. Advanced Editing
Customizing vi
The :set Command The .exrc File Alternate Environments Some Useful Options
Executing Unix Commands
Filtering Text Through a Command
Filtering text with ex Filtering text with vi
Saving Commands
Word Abbreviation Using the map Command Protecting Keys from Interpretation by ex A Complex Mapping Example More Examples of Mapping Keys Mapping Keys for Insert Mode Mapping Function Keys Mapping Other Special Keys Mapping Multiple Input Keys @-Functions Executing Buffers from ex
Using ex Scripts
Looping in a Shell Script Here Documents Sorting Text Blocks: A Sample ex Script Comments in ex Scripts Beyond ex
Editing Program Source Code
Indentation Control A Special Search Command Using Tags
8. Introduction to the vi Clones
And These Are My Brothers, Darrell, Darrell, and Darrell Multiwindow Editing GUI Interfaces Extended Regular Expressions Enhanced Tags
Exuberant ctags The New tags Format Tag Stacks
Solaris vi Exuberant ctags and Vim
Improved Facilities
Command-Line History and Completion Arbitrary Length Lines and Binary Data Infinite Undo Incremental Searching Left-Right Scrolling Visual Mode Mode Indicators
Programming Assistance
Edit-Compile Speedup Syntax Highlighting
Editor Comparison Summary Nothing Like the Original A Look Ahead
II. Vim
9. Vim (vi Improved): An Introduction
Overview
Author and History Why Vim? Compare and Contrast with vi Categories of Features Philosophy
Where to Get Vim Getting Vim for Unix and GNU/Linux Getting Vim for Windows Environments Getting Vim for the Macintosh Environment Other Operating Systems Aids and Easy Modes for New Users Summary
10. Major Vim Improvements over vi
Built-in Help Startup and Initialization Options
Command-Line Options Behaviors Associated to Command Name System and User Configuration Files Environment Variables
How to set environment variables Environment variables relevant to Vim
New Motion Commands
Visual Mode Motion
Extended Regular Expressions Customizing the Executable
11. Multiple Windows in Vim
Initiating Multiwindow Editing
Multiwindow Initiation from the Command Line (Shell) Multiwindow Editing Inside Vim
Opening Windows
New Windows Options During Splits Conditional Split Commands Window Command Summary
Moving Around Windows (Getting Your Cursor from Here to There) Moving Windows Around
Moving Windows (Rotate or Exchange) Moving Windows and Changing Their Layout Window Move Commands: Synopsis
Resizing Windows
Window Resize Commands Window Sizing Options Resizing Command Synopsis
Buffers and Their Interaction with Windows
Vim’s Special Buffers Hidden Buffers Buffer Commands Buffer Command Synopsis
Playing Tag with Windows Tabbed Editing Closing and Quitting Windows Summary
12. Vim Scripts
What’s Your Favorite Color (Scheme)?
Conditional Execution
Using the strftime() function
Variables The execute Command Defining Functions A Nice Vim Piggybacking Trick Tuning a Vim Script with Global Variables Arrays
Dynamic File Type Configuration Through Scripting
Autocommands Checking Options Buffer Variables The exists() Function Autocommands and Groups Deleting Autocommands
Some Additional Thoughts About Vim Scripting
A Useful Vim Script Example More About Variables Expressions Extensions A Few More Comments About autocmd Internal Functions
Resources
13. Graphical Vim (gvim)
General Introduction to gvim
Starting gvim Using the Mouse Useful Menus
gvim’s Window menu gvim’s right-click pop-up menu
Customizing Scrollbars, Menus, and Toolbars
Scrollbars Menus
Basic menu customization More menu customization Putting it all together
Toolbars Tooltips
gvim in Microsoft Windows gvim in the X Window System GUI Options and Command Synopsis
14. Vim Enhancements for Programmers
Folding and Outlining (Outline Mode)
The Fold Commands Manual Folding Outlining A Few Words About the Other Fold Methods
Auto and Smart Indenting
Vim autoindent Extensions to vi’s autoindent smartindent cindent
The cinkeys option The cinwords option The cinoptions option
indentexpr A Final Word on Indentation
Keyword and Dictionary Word Completion
Insertion Completion Commands
Completing whole lines Completion by keyword in file Completion by dictionary Completion by thesaurus Completion by keyword in current file and included files Completion by tag Completion by filename Completion by macro and definition names Completion method with Vim commands Completion by user functions Completion by omni function Completion for spelling correction Completion with the complete option
Some Final Comments on Vim Autocompletion
Tag Stacking Syntax Highlighting
Getting Started Customization
Syntax groups The colorscheme command Setting the background option The highlight command Overriding syntax files
Rolling Your Own
Compiling and Checking Errors with Vim
More Uses for the Quickfix List Window
Some Final Thoughts on Vim for Writing Programs
15. Other Cool Stuff in Vim
Editing Binary Files Digraphs: Non-ASCII Characters Editing Files in Other Places Navigating and Changing Directories Backups with Vim HTML Your Text What’s the Difference? Undoing Undos Now, Where Was I?
The viminfo Option The mksession Command
What’s My Line (Size)? Abbreviations of Vim Commands and Options A Few Quickies (Not Necessarily Vim-Specific) More Resources
III. Other vi Clones
16. nvi: New vi
Author and History Important Command-Line Arguments Online Help and Other Documentation Initialization Multiwindow Editing GUI Interfaces Extended Regular Expressions Improvements for Editing
Command-Line History and Completion Tag Stacks Infinite Undo Arbitrary Length Lines and Binary Data Incremental Searching Left-Right Scrolling
Programming Assistance Interesting Features Sources and Supported Operating Systems
17. Elvis
Author and History Important Command-Line Arguments Online Help and Other Documentation Initialization
The Session File Initialization Steps
Multiwindow Editing GUI Interfaces
The Basic Window Mouse Behavior The Toolbar Options
Extended Regular Expressions Improved Editing Facilities
Command-Line History and Completion Tag Stacks Infinite Undo Arbitrary Length Lines and Binary Data Left-Right Scrolling Visual Mode
Programming Assistance
Edit-Compile Speedup Syntax Highlighting
Interesting Features
Display Modes Pre- and Post-Operation Control Files
elvis Futures Sources and Supported Operating Systems
18. vile: vi Like Emacs
Authors and History Important Command-Line Arguments Online Help and Other Documentation Initialization Multiwindow Editing GUI Interfaces
Building xvile xvile Basic Appearance and Functionality
Scrollbars Setting the cursor position and mouse motions Selections Clipboard Resources Adding menus
Building winvile winvile Basic Appearance and Functionality
Extended Regular Expressions Improved Editing Facilities
Command-Line History and Completion Tag Stacks Infinite Undo Arbitrary Length Lines and Binary Data
Locale support File formats
Incremental Searching Left-Right Scrolling Visual Mode
Programming Assistance
Edit-Compile Speedup Syntax Highlighting
Interesting Features
The vile Editing Model Major Modes The Procedure Language Miscellaneous Small Features
Sources and Supported Operating Systems
IV. Appendixes
A. The vi, ex, and Vim Editors
Command-Line Syntax
Command-Line Options
Review of vi Operations
Command Mode Insert Mode Syntax of vi Commands
Examples Visual mode (Vim only)
Status-Line Commands
vi Commands
Movement Commands
Character Text Lines Screens Searches Line numbering Marks
Insert Commands Edit Commands
Changing and deleting text Copying and moving
Saving and Exiting Accessing Multiple Files Window Commands (Vim) Interacting with the System Macros Miscellaneous Commands
vi Configuration
The :set Command Example .exrc File
ex Basics
Syntax of ex Commands Addresses Address Symbols Options
Alphabetical Summary of ex Commands
abbreviate append args bdelete buffer buffers cd center change close copy delete edit file fold foldclose foldopen global hide insert join jumps k left list map mark marks mkexrc move new next nohlsearch number only open preserve previous print put qall quit read read recover redo resize rewind right sbnext sbuffer set shell snext source split sprevious stop substitute suspend sview t tag tags unabbreviate undo unhide unmap v version view visual visual vsplit wall wnext wq wqall write write X xit yank z & @ = ! < > ~ address ENTER
B. Setting Options
Solaris vi Options nvi 1.79 Options elvis 2.2 Options Vim 7.1 Options vile 9.6 Options
C. Problem Checklists
Problems Opening Files Problems Saving Files Problems Getting to Visual Mode Problems with vi Commands Problems with Deletions
D. vi and the Internet
Where to Start vi Web Sites
The vi Lover’s Home Page The Vi Pages vi Powered! vi for Java Lovers Online vi Tutorial
A Different vi Clone Amaze Your Friends! Tastes Great, Less Filling vi Quotes
Index About the Authors Colophon
  • ← Prev
  • Back
  • Next →
  • ← Prev
  • Back
  • Next →

Chief Librarian: Las Zenow <zenow@riseup.net>
Fork the source code from gitlab
.

This is a mirror of the Tor onion service:
http://kx5thpx2olielkihfyo4jgjqfb7zx7wxr3sd4xzt26ochei4m6f7tayd.onion