Title: Chapter 3 Mastering Editors
1Chapter 3Mastering Editors
Guide To UNIX Using Linux Fourth Edition
2Objectives
- Explain the basics of UNIX/Linux files, including
ASCII, binary, and executable files - Understand the types of editors
- Create and edit files using the vi editor
- Create and edit files using the Emacs editor
3Understanding UNIX/Linux Files
- Almost everything you create in UNIX/Linux is
stored in a file - Bit binary digit
- In one of two states 0 or 1
- Machine language exclusive use of 0s and 1s as a
way to communicate with computer - Used by earliest programmers
4ASCII Text Files
- Byte (binary term) string of eight bits
- A byte can be configured into fixed patterns of
bits - ASCII American Standard Code for Information
Interchange - 256 different characters
- Unicode
- Supports up to 65,536 characters
- Text files contain nothing but printable
characters - Binary files contain nonprintable characters
- Example machine instructions
5Look at Page 113
6Binary Files
- Some things cannot be represented with ASCII
codes - Binary files are used instead
- Example graphic files include bit patterns
- Bitmap made of rows and columns of dots
7Executable Program Files
- Text files containing program code are compiled
into machine-readable language - Scripts are files containing commands
- Typically interpreted, not compiled
- Executables compiled and interpreted files that
can be run
8Using Editors
- Editor program for creating and modifying files
containing source code, text, data, memos, etc. - Text editor a simplified word-processing program
- Used to create and edit documents
- Two text editors normally included in UNIX/Linux
are screen editors - vi
- Emacs
- Line editor works with one line (or group of
lines) at a time
9Using the vi Editor
- vi is a visual editor
- vi is also a modal editor
- Supports three modes
- Insert mode
- Accessed by typing i
- Command mode
- Accessed by typing Esc
- Extended (ex) command set mode
- Accessed by typing in command mode
- Download the vi editor document on Canvas for
reference
10Creating a New File in the vi Editor
11Inserting Text
- When you start vi, you are in command mode
- To insert text in your file, switch to insert
mode - Use i (insert) command
- To return to command mode, press Esc
12Repeating a Change
- Use a period (.) to repeat the most recent change
you made - Repeat command
- Works in command mode
13Moving the Cursor
- To move cursor use arrow keys (command/insert
mode) or (in command mode) use
14Deleting Text
- Deletion commands available (command mode)
- dd is used for cutting text
- Use yank (yy) command for copying text
15Undoing a Command
- Type u to use the undo command
- Example
- If you delete a few lines from a file by mistake,
type u to restore the text
16Searching for a Pattern
- To search forward for a pattern of characters
- Type a forward slash (/)
- Type the pattern you are seeking
- Press Enter
- Examples /\lttop, /s..n, /passt, /!
17Searching and Replacing
- Screen-oriented commands execute at the location
of the cursor - Line-oriented commands require you to specify an
exact location (an address) for the operation - Preceded by a colon ()
- Operate in ex mode
- Used for commands that perform more than one
action - Example searching and replacing
- 1,s/insure/ensure/g
18Saving a File and Exiting vi
- To save file without exiting, use w
- To save and exit, use wq, x, ZZ
- (Do this in command mode)
19Adding Text from Another File
- To copy entire contents of one file into another
file - Use vi to edit the file you would like to copy
into - Use the command r filename
- filename is the name of the file that contains
the information you want to copy
20Leaving vi Temporarily
- To launch a shell or execute other commands from
within vi, use ! - Example
- !cal
- To run several command-line commands in a
different shell without closing vi session - Use Ctrlz to display the command line
- Type fg to go back to vi
21Leaving vi Temporarily (continued)
22Changing Your Display While Editing
- To turn on line numbering
- set number
- To delete lines 4 through 6 (ex mode)
- 4,6d
23Copying or Cutting and Pasting
- The command yy copies (yanks) a specified number
of lines - To cut the lines, use dd
- Lines are placed in clipboard
- Use p to paste the clipboard contents
24Printing Text Files
- To print a file, use the lpr (line print) shell
command - Example
- !lpr -P lp2 accounts
25Canceling an Editing Session
- Canceling an editing session will discard all the
changes you have made - Or, save changes you made since last using w
- Saves file without exiting vi
26Getting Help in vi
- Use the help command
- help
- Other alternatives
- man vi
- From the command line
- !man vi
- From vi (command mode)
27Using the Emacs Editor
- Emacs is a popular UNIX/Linux text editor
- Not modal
- More complex than vi
- More consistent than vi
- Sophisticated macro language
- Macro set of commands that automates a complex
task - Uses read mail, edit contents of directories,
etc. - Powerful command syntax
- Extensible
28Using the Emacs Editor (continued)
29Using the Emacs Editor (continued)
30Creating a New File in Emacs
31Navigating in Emacs
- To create a new file emacs filename
- To navigate in the file, use the cursor movement
keys or Ctrl/Alt key combinations - Example Altf
- To save your work
- Use File menu
- Use the save icon
- Press Ctrlx, Ctrls
- To exit use menu, icon, or Ctrlx, Ctrlc
32Deleting Information
- Del or Backspace keys delete individual
characters - Ctrlk deletes to the end of a line
- To undo a deletion, use Ctrlx, u
- Repeatedly undoes each deletion
33Copying, Cutting, and Pasting Text
- To Copy-Paste or Cut-Paste
- Mark the text
- Position cursor at the beginning, and
CtrlSpacebar - Navigate to the end of the text you want to
include - Altw copies the text
- Ctrlw cuts the text
- To paste, move to where you want to place the
text - Ctrly (the yank command)
34Searching in Emacs
- One way to search in Emacs is to
- Press Ctrls
- Entering string to find (on status line)
- Pressing Ctrls repeatedly to find each
occurrence - Use Ctrlr to search backward
- Other alternatives
- Use search forward for a string icon
- On the menu Edit ? Search ? Search
35Reformatting a File
- Altq turns on word wrap feature
- Lines automatically wrap around from one line to
the next
36Getting Help in Emacs
- Emacs comes with extensive documentation and a
tutorial - Tutorial is useful for getting up to speed
quickly - Click Help menu ? Emacs Tutorial
- Or (in most versions), type Ctrlh and then type
t - To view general Emacs documentation
- Ctrlh (press one or two times)
- Or, man emacs at command line
37Summary
- Bytes computer characters (a series of bits)
stored using numeric codes - The vi editor is popular among UNIX/Linux users
- Three modes insert (i), command (Esc), and ex
(Esc ) - With vi, you edit a copy of the file placed in
memory - File is not altered until you save it on disk
- Emacs is a popular alternative to vi
- Supports powerful command syntax and is
extensible - Insert text simply by typing
- Sophisticated macro language
38Command Summary
39Command Summary (continued)
40Chapter 3 Unix Exercises
- Work through Hands-on Projects at end of
chapter 3 - Canvas Review Questions
- (Do not do questions 22,23,24 and 25)
- Read chapter 4 before next class session
- Quiz 3 Unix