Muutke küpsiste eelistusi

Learning the vi and Vim Editors: Power and Agility Beyond Just Text Editing 8th New edition [Pehme köide]

  • Formaat: Paperback / softback, 500 pages, kõrgus x laius: 233x178 mm
  • Ilmumisaeg: 30-Nov-2021
  • Kirjastus: O'Reilly Media
  • ISBN-10: 1492078808
  • ISBN-13: 9781492078807
Teised raamatud teemal:
  • Pehme köide
  • Hind: 63,19 €*
  • * hind on lõplik, st. muud allahindlused enam ei rakendu
  • Tavahind: 74,34 €
  • Säästad 15%
  • Raamatu kohalejõudmiseks kirjastusest kulub orienteeruvalt 2-4 nädalat
  • Kogus:
  • Lisa ostukorvi
  • Tasuta tarne
  • Tellimisaeg 2-4 nädalat
  • Lisa soovinimekirja
  • Formaat: Paperback / softback, 500 pages, kõrgus x laius: 233x178 mm
  • Ilmumisaeg: 30-Nov-2021
  • Kirjastus: O'Reilly Media
  • ISBN-10: 1492078808
  • ISBN-13: 9781492078807
Teised raamatud teemal:
Among the text editors being used in the programming community, perhaps the most important family is vi and its derivatives. With this updated edition, Unix and Linux users will learn text editing basics for both vi and Vim ("vi improved") before moving on to advanced editing tools for each editor. Authors Arnold Robbins and Elbert Hannah cover the latest major releases of Vim, including 8.0 and 8.2.

If you're a programmer or computer analyst, or you work with browsers or command-line interfaces, using Vim can speed up your work and make complex tasks easier. You'll examine multiwindow editing, global search and replacement, and power tools for programmers, and learn how to write interactive macros and scripts to extend the editor--all in the easy-to-follow style that's made this book a classic.

Go beyond the basics to learn which vi commands fit your specific needs Learn advanced vi tools that shift most of the editing burden to the computer Explore Vim tools that provide major improvements over vi Examine Vim's multiwindow editing feature, a significant upgrade over vi Use Vim scripts to customize and tailor Vim to your needs Look at Vim in modern GUI environments with Graphical Vim (gvim) See Vim in the broader programming milieu, including using it as an IDE
Preface xv
Part I vi and Vim Fundamentals
1 Introducing vi and Vim
3(12)
Text Editors and Text Editing
3(4)
Text Editors
3(3)
Text Editing
6(1)
A Brief Historical Perspective
7(2)
Opening and Closing Files
9(4)
Opening a File from the Command Line
9(1)
Opening a File from the GUI
10(1)
Problems Opening Files
10(1)
Modus Operandi
11(1)
Saving and Quitting a File
12(1)
Quitting Without Saving Edits
13(2)
Problems Saving Files
13(1)
Exercises
14(1)
2 Simple Editing
15(26)
vi Commands
16(1)
Moving the Cursor in Command Mode
17(6)
Single Movements
18(2)
Numeric Arguments
20(1)
Movement Within a Line
20(2)
Movement by Text Blocks
22(1)
Simple Edits
23(13)
Inserting New Text
24(1)
Appending Text
25(1)
Changing Text
25(3)
Changing Case
28(1)
Deleting Text
28(4)
Moving Text
32(1)
Copying Text
33(1)
Repeating or Undoing Your Last Command
34(2)
More Ways to Insert Text
36(1)
Numeric Arguments for Insert Commands
37(1)
Joining Two Lines with J
37(1)
Problems with vi Commands
38(1)
Mode Indicators
38(1)
Review of Basic vi Commands
39(2)
3 Moving Around in a Hurry
41(14)
Movement by Screens
41(5)
Scrolling the Screen
42(1)
Repositioning the Screen with z
43(1)
Redrawing the Screen
43(1)
Movement Within a Screen
44(1)
Movement by Line
45(1)
Movement by Text Blocks
46(1)
Movement by Searches
47(4)
Repeating Searches
48(2)
Current Line Searches
50(1)
Movement by Line Number
51(1)
The G (Go To) Command
52(1)
Review of vi Motion Commands
52(3)
4 Beyond the Basics
55(10)
More Command Combinations
55(1)
Options When Starting vi and Vim
56(4)
Advancing to a Specific Place
57(1)
Read-Only Mode
58(1)
Recovering a Buffer
59(1)
Making Use of Registers
60(2)
Recovering Deletions
60(1)
Yanking to Named Registers
61(1)
Marking Your Place
62(1)
Other Advanced Edits
63(1)
Review of Register and Marking Commands
63(2)
5 Introducing the ex Editor
65(20)
ex Commands
66(2)
Exercise: The ex Editor
68(1)
Problem Getting to Visual Mode
68(1)
Editing with ex
68(6)
Line Addresses
69(1)
Defining a Range of Lines
69(2)
Line-Addressing Symbols
71(1)
Search Patterns
72(1)
Redefining the Current Line Position
73(1)
Global Searches
73(1)
Combining ex Commands
74(1)
Saving and Exiting Files
74(3)
Renaming the Buffer
76(1)
Saving Part of a File
76(1)
Appending to a Saved File
76(1)
Copying a File into Another File
77(1)
Editing Multiple Files
77(4)
Invoking Vim on Multiple Files
78(1)
Using the Argument List
78(1)
Calling in New Files
79(1)
Filename Shortcuts
79(1)
Switching Files from Command Mode
80(1)
Edits Between Files
80(1)
ex Command Summaries
81(4)
6 Global Replacement
85(28)
The Substitute Command
85(1)
Confirming Substitutions
86(2)
Doing Things Globally Across the File
88(1)
Context-Sensitive Replacement
88(1)
Pattern-Matching Rules
89(8)
Metacharacters Used in Search Patterns
90(2)
POSIX Bracket Expressions
92(2)
Metacharacters Used in Replacement Strings
94(2)
More Substitution Tricks
96(1)
Pattern-Matching Examples
97(9)
Search for General Class of Words
98(1)
Block Move by Patterns
99(1)
More Examples
100(6)
A Final Look at Pattern Matching
106(7)
Deleting an Unknown Block of Text
106(1)
Switching Items in a Textual Database
107(2)
Using :g to Repeat a Command
109(1)
Collecting Lines
110(3)
7 Advanced Editing
113(44)
Customizing vi and Vim
114(4)
The :set Command
114(2)
The .exrc File
116(1)
Alternate Environments
116(1)
Some Useful Options
117(1)
Executing Unix Commands
118(4)
Filtering Text Through a Command
120(2)
Saving Commands
122(14)
Word Abbreviation
122(2)
Using the map Command
124(1)
Mapping with a Leader
125(1)
Protecting Keys from Interpretation by ex
125(1)
A Complex Mapping Example
126(2)
More Examples of Mapping Keys
128(2)
Mapping Keys for Insert Mode
130(1)
Mapping Function Keys
131(1)
Mapping Other Special Keys
132(2)
Mapping Multiple Input Keys
134(1)
@-Functions
135(1)
Executing Registers from ex
136(1)
Using ex Scripts
136(7)
Looping in a Shell Script
137(2)
Here Documents
139(1)
Sorting Text Blocks: A Sample ex Script
140(2)
Comments in ex Scripts
142(1)
Beyond ex
142(1)
Editing Program Source Code
143(14)
Indentation Control
143(3)
A Special Search Command
146(1)
Using Tags
147(1)
Enhanced Tags
148(9)
Part II Vim
8 Vim (vi Improved): Overview and Improvements over vi
157(26)
About Vim
158(1)
Overview
159(5)
Author and History
159(1)
Why Vim?
160(1)
Compare and Contrast with vi
160(1)
Categories of Features
161(3)
Philosophy
164(1)
Aids and Easy Modes for New Users
164(1)
Built-In Help
165(2)
Startup and Initialization Options
167(7)
Command-Line Options
167(3)
Behaviors Associated to Command Name
170(1)
System and User Configuration Files
171(1)
Environment Variables
172(2)
New Motion Commands
174(2)
Visual Mode Motion
175(1)
Extended Regular Expressions
176(4)
Extended Undo
180(1)
Incremental Searching
181(1)
Left-Right Scrolling
181(1)
Summary
181(2)
9 Graphical Vim (gvim)
183(30)
General Introduction to gvim
184(6)
Starting gvim
184(2)
Using the Mouse
186(2)
Useful Menus
188(2)
Customizing Scrollbars, Menus, and Toolbars
190(12)
Scrollbars
190(1)
Menus
191(8)
Toolbars
199(3)
Tooltips
202(1)
gvim in Microsoft Windows
202(1)
gvim in the X Window System
203(1)
Running gvim in Microsoft Windows WSL
203(8)
Installing gvim in WSL 2
204(1)
Installing an X Server for Windows
205(1)
Configuring the X Server for Windows
205(6)
GUI Options and Command Synopsis
211(2)
10 Multiple Windows in Vim
213(24)
Initiating Multiwindow Editing
215(3)
Multiwindow Initiation from the Command Line
215(2)
Multiwindow Editing Inside Vim
217(1)
Opening Windows
218(3)
New Windows
218(1)
Options During Splits
218(2)
Conditional Split Commands
220(1)
Window Command Summary
220(1)
Moving Around Windows (Getting Your Cursor from Here to There)
221(1)
Moving Windows Around
222(2)
Moving Windows (Rotate or Exchange)
222(1)
Moving Windows and Changing Their Layout
223(1)
Window Move Commands: Synopsis
224(1)
Resizing Windows
224(4)
Window Resize Commands
225(1)
Window Sizing Options
226(1)
Resizing Command Synopsis
227(1)
Buffers and Their Interaction with Windows
228(3)
Vim's Special Buffers
229(1)
Hidden Buffers
229(1)
Buffer Commands
230(1)
Buffer Command Synopsis
231(1)
Playing Tag with Windows
231(2)
Tabbed Editing
233(1)
Closing and Quitting Windows
234(2)
Summary
236(1)
11 Vim Enhancements for Programmers
237(52)
Folding and Outlining (Outline Mode)
238(12)
The Fold Commands
240(2)
Manual Folding
242(5)
Outlining
247(2)
A Few Words About the Other Fold Methods
249(1)
Auto and Smart Indenting
250(10)
Vim autoindent Extensions to vi's autoindent
251(1)
smartindent
251(1)
cindent
252(6)
indentexpr
258(1)
A Final Word on Indentation
259(1)
Keyword and Dictionary Word Completion
260(9)
Insertion Completion Commands
261(7)
Some Final Comments on Vim Autocompletion
268(1)
Tag Stacking
269(2)
Syntax Highlighting
271(10)
Getting Started
271(1)
Customization
272(6)
Rolling Your Own
278(3)
Compiling and Checking Errors with Vim
281(6)
More Uses for the Quickfix List Window
285(2)
Some Final Thoughts on Vim for Writing Programs
287(2)
12 Vim Scripts
289(26)
What's Your Favorite Color (Scheme)?
289(11)
Conditional Execution
290(2)
Variables
292(1)
The execute Command
293(2)
Defining Functions
295(1)
A Nice Vim Piggybacking Trick
296(1)
Tuning a Vim Script with Global Variables
297(2)
Arrays
299(1)
Dynamic File Type Configuration Through Scripting
300(8)
Autocommands
300(2)
Checking Options
302(1)
Buffer Variables
303(1)
The exists() Function
304(2)
Autocommands and Groups
306(1)
Deleting Autocommands
306(2)
Some Additional Thoughts About Vim Scripting
308(5)
A Useful Vim Script Example
309(1)
More About Variables
310(1)
Expressions
311(1)
Extensions
311(1)
A Few More Comments About autocmd
311(1)
Internal Functions
311(2)
Resources
313(2)
13 Other Cool Stuff in Vim
315(24)
Spell It! (i-t)
315(3)
For a Different Take on Words, Try Thesaurus
318(1)
Editing Binary Files
318(2)
Digraphs: Non-ASCII Characters
320(2)
Editing Files in Other Places
322(2)
Navigating and Changing Directories
324(2)
Backups with Vim
326(1)
HTML Your Text
327(1)
What's the Difference?
328(2)
viminfo: Now, Where Was I?
330(4)
The viminfo Option
331(1)
The mksession Command
332(2)
What's My Line (Size)?
334(2)
Abbreviations of Vim Commands and Options
336(1)
A Few Quickies (Not Necessarily Vim-Specific)
337(1)
More Resources
338(1)
14 Some Vim Power Techniques
339(18)
Several Convenience Maps
339(4)
Exiting Vim Simplified
339(1)
Resize Your Window
340(1)
Double Your Fun
340(3)
Moving into the Fast Lane
343(7)
Finding a Hard-to-Remember Command
343(2)
Analyzing a Famous Speech
345(3)
Some More Use Cases
348(2)
Hitting the Speed Limit
350(2)
Enhancing the Status Line
352(1)
Summary
353(4)
Part III Vim in the Larger Milieu
15 Vim as IDE: Some Assembly Required
357(18)
Plug-In Managers
357(2)
Finding Just the Right Plug-In
359(1)
Why Do We Want an IDE?
360(1)
Doing It Yourself
361(9)
EditorConfig: Consistent Text Editing Setup
361(1)
NERDTree: File Tree Traversal Within Vim
362(1)
nerdtree-git-plug-in: NERDTree with Git Status Indicators
362(1)
Fugitive: Running Git from Within Vim
363(2)
Completion
365(4)
Termdebug: Use GDB Directly Within Vim
369(1)
All-in-One IDES
370(2)
Coding Is Great, but What If I'm a Writer?
372(1)
Conclusion
373(2)
16 vi Is Everywhere
375(36)
Introduction
375(1)
Improving the Command-Line Experience
375(1)
Sharing Multiple Shells
376(1)
The readline Library
377(4)
The Bash Shell
377(3)
Other Programs
380(1)
The .inputrc File
380(1)
Other Unix Shells
381(3)
The Z Shell (zsh)
382(1)
Keep As Much History As You Can
382(1)
Command-Line Editing: Some Closing Thoughts
383(1)
Windows PowerShell
384(1)
Developer Tools
384(7)
The Clewn GDB Driver
384(1)
CGDB: Curses GDB
385(1)
Vim Inside Visual Studio
386(1)
Vim for Visual Studio Code
387(4)
Unix Utilities
391(6)
More or Less?
391(2)
screen
393(4)
And..., Browsers!
397(8)
Wasavi
398(1)
Vim + Chromium = Vimium
399(6)
vi for MS Word and Outlook
405(3)
Honorable Mention: Tools with Some vi Features
408(1)
Google Mail
408(1)
Microsoft PowerToys
408(1)
Summary
409(2)
17 Epilogue
411(4)
Part IV. Appendixes
A The vi, ex, and Vim Editors
415(46)
B Setting Options
461(10)
C The Lighter Side of vi
471(12)
D vi and Vim: Source Code and Building
483(8)
Index 491