Difference between revisions of "Introduction to Linux in HPC/The vim text editor"
Introduction to Linux in HPC/The vim text editor
Jump to navigation
Jump to search
m |
m |
||
Line 53: | Line 53: | ||
|| | || | ||
+ press <code>:wq</code> or <code>:X</code> or <code>ZZ</code> keys | + press <code>:wq</code> or <code>:X</code> or <code>ZZ</code> keys | ||
− | || Explanation: Any of the pressed key combinations will trigger a save and exit when in normal mode. | + | || Explanation: Any of the pressed key combinations will trigger a save and exit when in normal mode. The sequence <code>:q!</code> would exit without writing the file. |
− | - press <code>Ctrl-x Ctrl-s</code> | + | - press <code>Ctrl-x Ctrl-s</code> keys |
+ | || | ||
+ | </quiz> | ||
+ | {{hidden end}} | ||
+ | |||
+ | {{hidden begin | ||
+ | |title = How to copy and paste <code>5</code> entire lines in normal mode? | ||
+ | }} | ||
+ | <quiz display=simple> | ||
+ | { | ||
+ | |type="()"} | ||
+ | + press <code>5yy</code> keys, move the cursor and press <code>p</code> | ||
+ | || Explanation: commands can be repeated by placing an integer value before them. In this case 5 lines are copied by pressing <code>5yy</code>. The paste command is executed by pressing <code>p</code>, pressing <code>5p</code> would have pasted 25 lines. | ||
+ | + press <code>5yy</code> keys, move the cursor and press <code>5p</code> | ||
+ | || | ||
+ | - press <code>Ctrl-c Ctrl-v</code> keys | ||
+ | || | ||
+ | </quiz> | ||
+ | {{hidden end}} | ||
+ | |||
+ | {{hidden begin | ||
+ | |title = How to search and replace all occurences of the pattern <code>foo</code> with <code>bar</code> in normal mode? | ||
+ | }} | ||
+ | <quiz display=simple> | ||
+ | { | ||
+ | |type="()"} | ||
+ | + press <code>:s%/foo/bar/g</code> keys | ||
+ | || Explanation: the command <code>:s%/foo/bar/g</code> will search and replace the pattern in the entire file. Without the <code>g</code> modifier, it would search the entire file as well but only the first occurence in each line would be replaced. The <code>c</code> modifier asks for a confirmation each time. | ||
+ | - press <code>:s%/foo/bar/</code> keys | ||
+ | || | ||
+ | - press <code>:sed%/foo/bar/</code> keys | ||
|| | || | ||
</quiz> | </quiz> | ||
Line 67: | Line 97: | ||
{ | { | ||
|type="()"} | |type="()"} | ||
− | + | + | - <code>$ vim -r filename</code> |
− | || <code>$ vim - | + | || |
+ | + <code>$ vim -R filename</code> | ||
+ | || Explanation: the <code>-R<option> opens the file read-only. This can be overriden by pressing <code>:w!</code> or <code>:set noro</code> | ||
+ | - <code>$ vim -n filename</code> | ||
+ | || | ||
</quiz> | </quiz> | ||
{{hidden end}} | {{hidden end}} | ||
Line 74: | Line 108: | ||
{{Warning|mode=info|text= '''If you forget in which mode you are in while using vim, just keep pressing Esc.'''}} | {{Warning|mode=info|text= '''If you forget in which mode you are in while using vim, just keep pressing Esc.'''}} | ||
− | |||
=== Exercises in Terminal (slide 100) === <!--T:5--> | === Exercises in Terminal (slide 100) === <!--T:5--> |
Revision as of 20:17, 25 November 2020
Tutorial | |
---|---|
Title: | Introduction to Linux in HPC |
Provider: | HPC.NRW
|
Contact: | tutorials@hpc.nrw |
Type: | Multi-part video |
Topic Area: | HPC Platforms |
License: | CC-BY-SA |
Syllabus
| |
1. Background and History | |
2. The Command Line | |
3. Linux Directory Structure | |
4. Files | |
5. Text display and search | |
6. Users and permissions | |
7. Processes | |
8. The vim text editor | |
9. Shell scripting | |
10. Environment variables | |
11. System configuration | |
12. SSH Connections | |
13. SSH: Graphics and File Transfer | |
14. Various tips |
This part of the Linux tutorials introduces the vim text editor and describes its main features and use cases. A short explanation of the most important commands paired with examples on how to use them allow the user to delve right in. The tutorial demonstrates the basics, like opening/writing files or moving within the text as well as the most often employed tasks like search&replace or copy&paste which makes it interesting to both complete beginners and more intermediate users. The vim text editor's main advantage is that it's present in most unix operational systems, futhermore it's highly configurable and provides an extensive plugin system.
Video
Quiz
How many modes does vim have?
How to enter the insert mode of
vim
?
How to save a file and exit during normal mode?
How to copy and paste
5
entire lines in normal mode?
How to search and replace all occurences of the pattern
foo
with bar
in normal mode?
How would you open a file in read-only mode using the
Hint: In terminal
vim
editor? Hint: In terminal
man vim
Info: | If you forget in which mode you are in while using vim, just keep pressing Esc. |
Exercises in Terminal (slide 100)
1. Create a vim file and write some text in it with insert (pressing i
) and than undo and redo the changes.
Answer: |
|