Programmieren mit Harald R. Haberstroh (original) (raw)

Freitag, 29. September 2017

vim Einführung (2AHIF, 2BHIF)

Vim ist ein hervorragender Editor mit Syntaxhervorhebung und Vergleichsfunktionen, mehreren Darstellungsfenstern und vielen anderen nützlichen Funktionen. Leider ist der Einstieg damit nicht immer ganz leicht, da vim eine Weiterentwicklung des Editors vi ist, den es bereits in den 80er Jahren gab, wo Benutzerfreundlichkeit noch eine andere Bedeutung hatte als heute. Weiterhin erscheint vim im unkonfigurierten Zustand zunächst erstmal sehr langweilig und es ist mühselig eine passende Konfiguration zu erstellen.
Der vi ist praktisch auf jedem Linux-System verfügbar und kann von der Shell (Terminal) aus verwendet werden. Daher ist es praktisch, wenn man den vi(m) beherrscht, wenn man einen Server (z.B. Web-Server) über das Internet warten muss. Die wichtigsten Funkionen kann man probieren und üben mit vimtutor
Weitere Dokumentation finden Sie hier:
vim Kurzreferenz
vim Homepage www.vim.org
vim Quick Reference Card (2 Seiten)
Wir verwenden eine spezielle Konfigurationsdatei für den vim. Im Laufe dieses Schuljahres werden wir Ihnen diese Datei (eigentlich eine überarbeitete Version, denn die bisherige Version ist hauptsächlich für C-Programmierung eingerichtet) zur Verfügung stellen. Also, bleiben Sie dran oder suchen Sie auf www.vim.org/scripts nach passenden Scripts für den vim.
vim ist eine Erweiterung des Standard-Unix-Editors vi. vimsteht für vi improved.
vim gibt es nicht nur für Unix-Plattformen, sondern auch für andere Betriebssysteme (Windows, OSX). Siehe dazu auch http://www.vim.org/. vimist frei verfügbar.
Es ist besser, einen Editor wirklich gut zu beherrschen als viele verschiedene Editoren oder Entwicklungsumgebungen nur mittelmäßig bedienen zu können. Der vim eignet sich besonders als universeller (Programmier-)Editor, da er für jede Plattform verfügbar ist und hochgradig konfigurierbar bzw. programmierbar ist.
vi gibt es auf jedem Unix-ähnlichem System. Wenn nichts mehr geht, dann muss man u.U. dem vinehmen und in den Konfigurationsdateien Änderungen vornehmen.

vim hat (wie vi) mehrere Betriebsmodi:

Dies hat den Vorteil, dass man einen mächtigen Editor (vimist programmierbar, arbeitet mit regulären Ausdrücken usw.) auch über einfache Terminals bedienen kann. Alle Funktionen sind über eine Standardtastatur mit Escape-Taste verfügbar. Man braucht keine Funktionstasten und keine Cursortasten. Funktions- und Cursortasten sowie Maus können bei geeigneten Terminals (X-Window System, Console) verwendet werden.

Nachteilig ist der relativ hohe Lernaufwand.

Befehlsmodus

Grundsätzlich kann jeder Befehl mehrfach ausgeführt werden, indem zuerst eine Anzahl angegeben wird. Z.B. 10ddlöscht 10 Zeilen (siehe unten), 2dwlöscht 2 Worte.
[ _Anzahl_ ] _Befehl_ [ _Taste_ ]
[ _Anzahl_ ] _Befehl_ [ _Bereich_ ]
Cursorbewegung

`` khinauf

h llinks rechts

`` jhinunter

^F orward page

^Backward page

^D own half page

^U p half page

w ord right

b ack word

[_line_ ]Goto line (default letzte Zeile)

( Sätze zurück

) Sätze vorwärts

{ Absätze zurück

} Absätze vorwärts

f _c_gehe zum Zeichen c in der aktuellen Zeile

'm gehe zu Marke m

ma mark a (setze Marke a), Marken werden auch für Lösch-, Änder- und Kopieroperationen verwendet (sieh weiter unten)

Löschen (d elete)

dd Zeile löschen

dw Wort löschen

x Zeichen unter Cursor löschen

X Zeichen links von Cursor löschen

D bis Zeilenende löschen

_Bereich_ dlöschen des Bereichs

d' _marke_löschen bis zur Marke _marke_(ein Buchstabe, vorher gesetzt mit m _marke_)

Ändern

>schiebt Text nach rechts (shiftwidth)

<schiebt Text nach links (shiftwidth)

iEinfügen vor Cursor (insert)

aEinfügen nach Cursor (append)

IEinfügen Zeilenanfang (Insert)

AEinfügen Zeilenende (Append)

o Öffnet neue Zeile darunter (open line)

O Öffnet neue Zeile darüber

J (join) hänge die nächste Zeile an die aktuelle Zeile an (mit Leerzeichen getrennt)

r _x_ersetzen des aktuellen Zeichens durch das Zeichen _x_(kein ESC nötig)

cw ändert Wort (change word)

_Bereich_ cändert Bereich (vgl. Bereich angeben)

c' _marke_ändert Bereich bis zur Marke

Bereich angeben (markieren)

Cursor an ein Ende des Bereichs setzen, v eingeben, den Cursor zum anderen Ende bewegen und den gewünschten Befehl eingeben. Zeilenweise markieren mit V.

Wurde :set mouse=a gesetzt, dann kann auch mit der Maus markiert werden.

Fast alle Befehle arbeiten mit einem so markierten Bereich.

Kopieren/Einfügen

_Bereich_ y"yank", Bereich wird in den Puffer kopiert

y' _marke_kopiert Bereich bis zur Marke in den Puffer

yw Wort in den Puffer

Y Zeile in den Puffer

pEinfügen nach Cursor (paste - "einkleben")

Suchen

^A sucht nächstes Vorkommen des Wortes unter Cursor

%platziert Curser auf zugehörige ( ) { } [ ]

Anzahl%platziert Cursor auf Anzahl Prozent der Datei

/ _text_sucht vorwärts _text_ oder regulären Ausdruck

? _text_sucht rückwärts _text_ oder regulären Ausdruck

* sucht das Wort unter dem Cursor

Wiederholung

. (Punkt) wiederholt letztes Kommando

n letzte Suche wiederholen

N letzte Suche in umgekehrter Richtung

Rückgängig

u undo, der vi kann nur die letzte Änderung rückgängig machen (d.h. uu stellt die letzte Änderung wieder her), der vimkann im Prinzip beliebig viele Änderungen rückgängig machen

^r(crtl+r) redo (nur vim) macht das letzte undo bzw. die letzten undos wieder rückgängig

Sonstige Kommandos

^G zeigt Dateistatus und Zeilennummer

^Lerneuert Bildschirm

_Bereich_ !führt angegebenen Bereich einem Filter zu, der anschließend eingegeben werden muss

Änderungsmodus

Eingegebener Text wird eingefügt (bei i,a,...) bzw. ersetzt markierten Bereich (c,...), löschen mit Backspace in der aktuellen Zeile möglich (nur eben eingegebener Text).
Der Änderungsmodus wird mit der ESC-Taste verlassen.
^v (ctrl+v) stellt sicher, dass das nächste Zeichen normal eingegeben wird (z.B. wird bei TAB normalerweise nicht das Tabulator-Zeichen eingefügt sondern so viele Leerzeichen als nötig, will man jedoch das TAB-Zeichen einfügen, muss man ^vTAB drücken).

Ex-Befehle (Colon mode)

:[ _Zeile_ ][, _Zeile_ ] _Befehl_ _Argumente_

Der Bereich _Zeile,Zeile_bezeichnet Anfangszeile und Endzeile. Ein .(Punkt) bedeutet aktuelle Zeile, $die letzte Zeile. Wurde vorher ein Bereich mit vausgewählt, dann wird automatisch ein Bereich eingefügt: '<,'>(die Marke '<bezeichnet den Anfang und '>das Ende eines markierten Bereichs). %ist die Kurzform von 1,$.

:xSpeichern und Ende

:w write, speichern

:w dateiSpeichern in Datei (write), wurde vorher ein Bereich markiert, so wird dieser Bereich in diedateigeschrieben.

:r dateiEinfügen von Datei (read)

:q Quit (schließen eines Fensters)

:split [datei]weiteres Fenster (mit datei öffnen)

Suchen und ersetzen

:s/ _suchtext_ / _ersatztext_ /[g]

Ersetzen von _suchtext_durch _ersatztext_. Wird g(die eckigen Klammern bezeichnen "optional") angegeben, dann wird auch mehrfaches Vorkommen pro Zeile ersetzt. _suchtext_kann ein regulärer Ausdruck sein.

Wenn kein Bereich angegeben wird, dann wird die Ersetzung nur in der aktuellen zeile durchgeführt. Wird ein Bereich markiert, so wird nur in diesem Bereich ersetzt. Es können auch Zeilennummern angegeben werden:

:.,$s/i++/j++/g ersetze alle i++ durch j++von der aktuellen Zeile bis zum
Ende der Datei.

Setzen von Modi

:se tabstop=3Tabulatorweite

:se shiftwidth=3Weite für > und <

:se aioder :set autoindent automatisches Einrücken

:se etoder :set expandtab Tabulator wird durch Leerzeichen ersetzt (dies sollte eingestellt werden!)

:syntax onHighlighting von Sourcen

Abkürzungen

:ab lhs rhsDefinieren einer Abkürzung lhs (left hand side) für rhs (right hand side), Abkürzungen werden expandiert, sobald ESC,Enter oder die Leertaste gedrückt wird.

:ablistet alle Abkürzungen auf.

:unab lhslöscht die Abkürzung lhs.

:help abbreviateHilfe zu den Abkürzungen.

Konfigurationsdatei .vimrc

In dieser Datei können beliebige Ex-Befehle stehen. Diese Datei wird beim Starten von vimausgeführt. Weitere Konfigurationsmöglichkeiten sind in der Dokumentation (:help) beschrieben. So können Abkürzungen definiert werden, Funktionstasten belegt werden und in Abhängigkeit eines Dateityps Konfigurationsdateien ausgeführt werden.

reguläre Ausdrücke

Reguläre Ausdrücke werden immer wieder benötigt. Der vim erlaubt es reguläre Ausdrücke zu beim Suchen. Das Programm grep erlaubt reguläre Ausdrücke. Reguläre Ausdrücke ermöglichen es Suchmuster anzugeben. Dabei gibt es viel mehr Möglichkeiten als bei den Shell-Suchmustern. Es folgen beispielhaft die wichtigsten Ausdrücke:

\. (Punkt) steht für ein beliebiges Zeichen

[aeiou] ein Selbstlaut klein geschrieben

[A-Z] alle Großbuchstaben

[^0-9] alles außer Ziffern

cdrom\|floppy alle Vorkommnisse der Worte cdromoder floppy

a\+ mindestens ein a(a,aa,aaa,aaaa, ...)

.* keines, ein oder mehrere beliebige Zeichen (der *braucht keinen \)

\( _ausdruck\_ )+ das Muster _ausdruck_muss mindestens einmal vorkommen

_ausdruck_ { _von_ , _bis_ } _ausdruck_muss mindestens _von_mal und höchstens _bis_mal vorkommen.

_ausdruck_ { _n_ } _ausdruck_muss genau _n_mal vorkommen.

^ _ausdruck_ _ausdruck_muss am Zeilenanfang stehen.

_Ausdruck_ $ _ausdruck_muss am Zeilenende stehen.

Die Operatoren \+und *sind "gefräßig", d.h. sie nehmen soviel als möglich, u.U. bis zum Ende eine Zeile. Der Ausdruck a.*hpasst auf ah,ahh,abh,abhcdh.

**Beispiele:

[0-9A-Fa-f]+ erkennt Hexadezimalzahlen, z.B. 123,abc,F000usw.

\(un\)*stable erkenntstable,unstable,ununstable, unununstableetc.

\(un\)\{-,1}stableerkenntstableund unstable

int [a-z]\+(.*); passt auf alle Prototypen von int-Funktionen, die nur
Kleinbuchstaben im Namen haben.

Labels: POS1-2, vim

Montag, 30. September 2013

vim Übung

Legen Sie eine Datei mit ihren Initialen und Extension .txt an
Bsp:

hh.txt

Einfügen von 5 Zeilen mit beliebigem Text
Einfügen von Asterix als eigene Zeile nach der 4. Zeile
Positionieren auf 3. Zeile
Am Ende der Zeile das wort xyyz einfügen
Kopieren der 3. Zeile
Einfügen dieser Zeile 85 mal nach der 5. Zeile
Suchen nach String rix
Schalten Sie die Zeilennummerierung ein
Gehe zu Zeile 70
Lösche 10 Zeilen
Kopiere Zeilen 13-45 in eine neue Datei mit Namen 'parthh.txt'
Alle Zeichen 'y' durch '§' ersetzen
Einfügen der Zeilen 5-10 aus der Datei 'parthhtxt' nach der letzten Zeile

Labels: Aufgabe, POS1-2, vim

# Eingestellt von Harald R. Haberstroh @ 12:43 0 Kommentare

vim Einführung (POS1: 2BHIF)

Vim ist ein hervorragender Editor mit Syntaxhervorhebung und Vergleichsfunktionen, mehreren Darstellungsfenstern und vielen anderen nützlichen Funktionen. Leider ist der Einstieg damit nicht immer ganz leicht, da vim eine Weiterentwicklung des Editors vi ist, den es bereits in den 80er Jahren gab, wo Benutzerfreundlichkeit noch eine andere Bedeutung hatte als heute. Weiterhin erscheint vim im unkonfigurierten Zustand zunächst erstmal sehr langweilig und es ist mühselig eine passende Konfiguration zu erstellen.
Der vi ist praktisch auf jedem Linux-System verfügbar und kann von der Shell (Terminal) aus verwendet werden. Daher ist es praktisch, wenn man den vi(m) beherrscht, wenn man einen Server (z.B. Web-Server) über das Internet warten muss. Die wichtigsten Funkionen kann man probieren und üben mit vimtutor
Weitere Dokumentation finden Sie hier:
vim Kurzreferenz auf LinWiKi
vim Homepage www.vim.org
vim Quick Reference Card (2 Seiten)
Wir verwenden eine spezielle Konfigurationsdatei für den vim. Im Laufe dieses Schuljahres werden wir Ihnen diese Datei (eigentlich eine überarbeitete Version, denn die bisherige Version ist hauptsächlich für C-Programmierung eingerichtet) zur Verfügung stellen. Also, bleiben Sie dran oder suchen Sie auf www.vim.org/scripts nach passenden Scripts für den vim.
vim ist eine Erweiterung des Standard-Unix-Editors vi. vimsteht für vi improved.
vim gibt es nicht nur für Unix-Plattformen, sondern auch für andere Betriebssysteme (Windows, OSX). Siehe dazu auch http://www.vim.org/. vimist frei verfügbar.
Es ist besser, einen Editor wirklich gut zu beherrschen als viele verschiedene Editoren oder Entwicklungsumgebungen nur mittelmäßig bedienen zu können. Der vim eignet sich besonders als universeller (Programmier-)Editor, da er für jede Plattform verfügbar ist und hochgradig konfigurierbar bzw. programmierbar ist.
vi gibt es auf jedem Unix-ähnlichem System. Wenn nichts mehr geht, dann muss man u.U. dem vinehmen und in den Konfigurationsdateien Änderungen vornehmen.

vim hat (wie vi) mehrere Betriebsmodi:

Dies hat den Vorteil, dass man einen mächtigen Editor (vimist programmierbar, arbeitet mit regulären Ausdrücken usw.) auch über einfache Terminals bedienen kann. Alle Funktionen sind über eine Standardtastatur mit Escape-Taste verfügbar. Man braucht keine Funktionstasten und keine Cursortasten. Funktions- und Cursortasten sowie Maus können bei geeigneten Terminals (X-Window System, Console) verwendet werden.

Nachteilig ist der relativ hohe Lernaufwand.

Befehlsmodus

Grundsätzlich kann jeder Befehl mehrfach ausgeführt werden, indem zuerst eine Anzahl angegeben wird. Z.B. 10ddlöscht 10 Zeilen (siehe unten), 2dwlöscht 2 Worte.
[ _Anzahl_ ] _Befehl_ [ _Taste_ ]
[ _Anzahl_ ] _Befehl_ [ _Bereich_ ]
Cursorbewegung

`` khinauf

h llinks rechts

`` jhinunter

^F orward page

^Backward page

^D own half page

^U p half page

w ord right

b ack word

[_line_ ]Goto line (default letzte Zeile)

( Sätze zurück

) Sätze vorwärts

{ Absätze zurück

} Absätze vorwärts

f _c_gehe zum Zeichen c in der aktuellen Zeile

'm gehe zu Marke m

ma mark a (setze Marke a), Marken werden auch für Lösch-, Änder- und Kopieroperationen verwendet (sieh weiter unten)

Löschen (d elete)

dd Zeile löschen

dw Wort löschen

x Zeichen unter Cursor löschen

X Zeichen links von Cursor löschen

D bis Zeilenende löschen

_Bereich_ dlöschen des Bereichs

d' _marke_löschen bis zur Marke _marke_(ein Buchstabe, vorher gesetzt mit m _marke_)

Ändern

>schiebt Text nach rechts (shiftwidth)

<schiebt Text nach links (shiftwidth)

iEinfügen vor Cursor (insert)

aEinfügen nach Cursor (append)

IEinfügen Zeilenanfang (Insert)

AEinfügen Zeilenende (Append)

o Öffnet neue Zeile darunter (open line)

O Öffnet neue Zeile darüber

J (join) hänge die nächste Zeile an die aktuelle Zeile an (mit Leerzeichen getrennt)

r _x_ersetzen des aktuellen Zeichens durch das Zeichen _x_(kein ESC nötig)

cw ändert Wort (change word)

_Bereich_ cändert Bereich (vgl. Bereich angeben)

c' _marke_ändert Bereich bis zur Marke

Bereich angeben (markieren)

Cursor an ein Ende des Bereichs setzen, v eingeben, den Cursor zum anderen Ende bewegen und den gewünschten Befehl eingeben. Zeilenweise markieren mit V.

Wurde :set mouse=a gesetzt, dann kann auch mit der Maus markiert werden.

Fast alle Befehle arbeiten mit einem so markierten Bereich.

Kopieren/Einfügen

_Bereich_ y"yank", Bereich wird in den Puffer kopiert

y' _marke_kopiert Bereich bis zur Marke in den Puffer

yw Wort in den Puffer

Y Zeile in den Puffer

pEinfügen nach Cursor (paste - "einkleben")

Suchen

^A sucht nächstes Vorkommen des Wortes unter Cursor

%platziert Curser auf zugehörige ( ) { } [ ]

Anzahl%platziert Cursor auf Anzahl Prozent der Datei

/ _text_sucht vorwärts _text_ oder regulären Ausdruck

? _text_sucht rückwärts _text_ oder regulären Ausdruck

* sucht das Wort unter dem Cursor

Wiederholung

. (Punkt) wiederholt letztes Kommando

n letzte Suche wiederholen

N letzte Suche in umgekehrter Richtung

Rückgängig

u undo, der vi kann nur die letzte Änderung rückgängig machen (d.h. uu stellt die letzte Änderung wieder her), der vimkann im Prinzip beliebig viele Änderungen rückgängig machen

^r(crtl+r) redo (nur vim) macht das letzte undo bzw. die letzten undos wieder rückgängig

Sonstige Kommandos

^G zeigt Dateistatus und Zeilennummer

^Lerneuert Bildschirm

_Bereich_ !führt angegebenen Bereich einem Filter zu, der anschließend eingegeben werden muss

Änderungsmodus

Eingegebener Text wird eingefügt (bei i,a,...) bzw. ersetzt markierten Bereich (c,...), löschen mit Backspace in der aktuellen Zeile möglich (nur eben eingegebener Text).
Der Änderungsmodus wird mit der ESC-Taste verlassen.
^v (ctrl+v) stellt sicher, dass das nächste Zeichen normal eingegeben wird (z.B. wird bei TAB normalerweise nicht das Tabulator-Zeichen eingefügt sondern so viele Leerzeichen als nötig, will man jedoch das TAB-Zeichen einfügen, muss man ^vTAB drücken).

Ex-Befehle (Colon mode)

:[ _Zeile_ ][, _Zeile_ ] _Befehl_ _Argumente_

Der Bereich _Zeile,Zeile_bezeichnet Anfangszeile und Endzeile. Ein .(Punkt) bedeutet aktuelle Zeile, $die letzte Zeile. Wurde vorher ein Bereich mit vausgewählt, dann wird automatisch ein Bereich eingefügt: '<,'>(die Marke '<bezeichnet den Anfang und '>das Ende eines markierten Bereichs). %ist die Kurzform von 1,$.

:xSpeichern und Ende

:w write, speichern

:w dateiSpeichern in Datei (write), wurde vorher ein Bereich markiert, so wird dieser Bereich in diedateigeschrieben.

:r dateiEinfügen von Datei (read)

:q Quit (schließen eines Fensters)

:split [datei]weiteres Fenster (mit datei öffnen)

Suchen und ersetzen

:s/ _suchtext_ / _ersatztext_ /[g]

Ersetzen von _suchtext_durch _ersatztext_. Wird g(die eckigen Klammern bezeichnen "optional") angegeben, dann wird auch mehrfaches Vorkommen pro Zeile ersetzt. _suchtext_kann ein regulärer Ausdruck sein.

Wenn kein Bereich angegeben wird, dann wird die Ersetzung nur in der aktuellen zeile durchgeführt. Wird ein Bereich markiert, so wird nur in diesem Bereich ersetzt. Es können auch Zeilennummern angegeben werden:

:.,$s/i++/j++/g ersetze alle i++ durch j++von der aktuellen Zeile bis zum
Ende der Datei.

Setzen von Modi

:se tabstop=3Tabulatorweite

:se shiftwidth=3Weite für > und <

:se aioder :set autoindent automatisches Einrücken

:se etoder :set expandtab Tabulator wird durch Leerzeichen ersetzt (dies sollte eingestellt werden!)

:syntax onHighlighting von Sourcen

Abkürzungen

:ab lhs rhsDefinieren einer Abkürzung lhs (left hand side) für rhs (right hand side), Abkürzungen werden expandiert, sobald ESC,Enter oder die Leertaste gedrückt wird.

:ablistet alle Abkürzungen auf.

:unab lhslöscht die Abkürzung lhs.

:help abbreviateHilfe zu den Abkürzungen.

Konfigurationsdatei .vimrc

In dieser Datei können beliebige Ex-Befehle stehen. Diese Datei wird beim Starten von vimausgeführt. Weitere Konfigurationsmöglichkeiten sind in der Dokumentation (:help) beschrieben. So können Abkürzungen definiert werden, Funktionstasten belegt werden und in Abhängigkeit eines Dateityps Konfigurationsdateien ausgeführt werden.

reguläre Ausdrücke

Reguläre Ausdrücke werden immer wieder benötigt. Der vim erlaubt es reguläre Ausdrücke zu beim Suchen. Das Programm grep erlaubt reguläre Ausdrücke. Reguläre Ausdrücke ermöglichen es Suchmuster anzugeben. Dabei gibt es viel mehr Möglichkeiten als bei den Shell-Suchmustern. Es folgen beispielhaft die wichtigsten Ausdrücke:

\. (Punkt) steht für ein beliebiges Zeichen

[aeiou] ein Selbstlaut klein geschrieben

[A-Z] alle Großbuchstaben

[^0-9] alles außer Ziffern

cdrom\|floppy alle Vorkommnisse der Worte cdromoder floppy

a\+ mindestens ein a(a,aa,aaa,aaaa, ...)

.* keines, ein oder mehrere beliebige Zeichen (der *braucht keinen \)

\( _ausdruck\_ )+ das Muster _ausdruck_muss mindestens einmal vorkommen

_ausdruck_ { _von_ , _bis_ } _ausdruck_muss mindestens _von_mal und höchstens _bis_mal vorkommen.

_ausdruck_ { _n_ } _ausdruck_muss genau _n_mal vorkommen.

^ _ausdruck_ _ausdruck_muss am Zeilenanfang stehen.

_Ausdruck_ $ _ausdruck_muss am Zeilenende stehen.

Die Operatoren \+und *sind "gefräßig", d.h. sie nehmen soviel als möglich, u.U. bis zum Ende eine Zeile. Der Ausdruck a.*hpasst auf ah,ahh,abh,abhcdh.

**Beispiele:

[0-9A-Fa-f]+ erkennt Hexadezimalzahlen, z.B. 123,abc,F000usw.

\(un\)*stable erkenntstable,unstable,ununstable, unununstableetc.

\(un\)\{-,1}stableerkenntstableund unstable

int [a-z]\+(.*); passt auf alle Prototypen von int-Funktionen, die nur
Kleinbuchstaben im Namen haben.

Labels: POS1-2, vim

# Eingestellt von Harald R. Haberstroh @ 11:45 0 Kommentare

Donnerstag, 29. September 2011

vim Übung

Legen Sie eine Datei mit ihren Initialen und Extension .txt an
Bsp:

rr.txt

Einfügen von 5 Zeilen mit beliebigem Text

Einfügen von Asterix als eigene Zeile nach der 4. Zeile

Positionieren auf 3. Zeile

Am Ende der Zeile das wort xyyz einfügen

Kopieren der 3. Zeile

Einfügen dieser Zeile 85 mal nach der 5. Zeile

Suchen nach String rix

Schalten Sie die Zeilennummerierung ein

Gehe zu Zeile 70

Lösche 10 Zeilen

Kopiere Zeilen 13-45 in eine neue Datei mit Namen 'partrr.txt'

Alle Zeichen 'y' durch '§' ersetzen

Einfügen der Zeilen 5-10 aus der Datei 'partrr.txt' nach der letzten Zeile

Labels: Aufgabe, Linux, POS1-2, vim

# Eingestellt von Harald R. Haberstroh @ 09:23 0 Kommentare

vim Einführung

Bitte lesen Sie die Vim-Einführung und bearbeiten Sie die Fragen auf dem alten Blog.

Bearbeiten Sie auch die Übungsbeispiele vim - Übung und vim - Übung 2.

Vim ist ein hervorragender Editor mit Syntaxhervorhebung und Vergleichsfunktionen, mehreren Darstellungsfenstern und vielen anderen nützlichen Funktionen. Leider ist der Einstieg damit nicht immer ganz leicht, da vim eine Weiterentwicklung des Editors vi ist, den es bereits in den 80er Jahren gab, wo Benutzerfreundlichkeit noch eine andere Bedeutung hatte als heute. Weiterhin erscheint vim im unkonfigurierten Zustand zunächst erstmal sehr langweilig und es ist mühselig eine passende Konfiguration zu erstellen.

Der vi ist praktisch auf jedem Linux-System verfügbar und kann von der Shell (Terminal) aus verwendet werden. Daher ist es praktisch, wenn man den vi(m) beherrscht, wenn man einen Server (z.B. Web-Server) über das Internet warten muss. Die wichtigsten Funkionen kann man probieren und üben mit vimtutor

Weitere Dokumentation finden Sie hier:
vim Kurzreferenz auf LinWiKi
vim Homepage www.vim.org
vim Quick Reference Card (2 Seiten)

Wir verwenden eine spezielle Konfigurationsdatei für den vim. Im Laufe dieses Schuljahres werden wir Ihnen diese Datei (eigentlich eine überarbeitete Version, denn die bisherige Version ist hauptsächlich für C-Programmierung eingerichtet) zur Verfügung stellen. Also, bleiben Sie dran oder suchen Sie auf www.vim.org/scripts nach passenden Scripts für den vim.

Labels: Aufgabe, Linux, POS1-2, vim

# Eingestellt von Harald R. Haberstroh @ 09:22 0 Kommentare

Freitag, 8. Januar 2010

Vergleichen von Dateien mit eclipse

eclipse bietet eine einfache Möglichkeit, aber doch nicht ganz offensichtliche Möglichkeit, Dateien miteinander zu vergleichen. Man markiert in den Projekten einfach die beiden zu vergleichenden Dateien (Strg-Klick) und wählt im Kontextmenu (rechte Maustaste) Compare With->Each Other:

Der Vergleich zeigt die Unterschiede links - rechts:

Offensichtlicher ist der Vergleich mit anderen Versionen einer Datei, denn hier gibt's im Kontextmenü Compare With->History bzw. Compare With->Local History.

Freunde der Kommandozeile verwenden natürlich

diff datei1 datei2
1,2c1,2
< /*
< * GuiApp.java

/**

Wobei

gvimdiff datei1 datei2

ein schöneres Ergebnis liefert:

Labels: eclipse, vim

# Eingestellt von Harald R. Haberstroh @ 14:10 0 Kommentare

Sonntag, 4. Oktober 2009

vim Übung

Legen Sie eine Datei mit ihren Initialen und Extension .txt an
Bsp:

rr.txt

Einfügen von 5 Zeilen mit beliebigem Text

Einfügen von Asterix als eigene Zeile nach der 4. Zeile

Positionieren auf 3. Zeile

Am Ende der Zeile das wort xyyz einfügen

Kopieren der 3. Zeile

Einfügen dieser Zeile 85 mal nach der 5. Zeile

Suchen nach String rix

Schalten Sie die Zeilennummerierung ein

Gehe zu Zeile 70

Lösche 10 Zeilen

Kopiere Zeilen 13-45 in eine neue Datei mit Namen 'partrr.txt'

Alle Zeichen 'y' durch '§' ersetzen

Einfügen der Zeilen 5-10 aus der Datei 'partrr.txt' nach der letzten Zeile

Labels: Aufgabe, PR2, vim

# Eingestellt von Harald R. Haberstroh @ 15:08 0 Kommentare

Donnerstag, 1. Oktober 2009

vim Einführung

Bitte lesen Sie die Vim-Einführung und bearbeiten Sie die Fragen auf dem alten Blog.

Bearbeiten Sie auch die Übungsbeispiele vim - Übung und vim - Übung 2.

Vim ist ein hervorragender Editor mit Syntaxhervorhebung und Vergleichsfunktionen, mehreren Darstellungsfenstern und vielen anderen nützlichen Funktionen. Leider ist der Einstieg damit nicht immer ganz leicht, da vim eine Weiterentwicklung des Editors vi ist, den es bereits in den 80er Jahren gab, wo Benutzerfreundlichkeit noch eine andere Bedeutung hatte als heute. Weiterhin erscheint vim im unkonfigurierten Zustand zunächst erstmal sehr langweilig und es ist mühselig eine passende Konfiguration zu erstellen.

Der vi ist praktisch auf jedem Linux-System verfügbar und kann von der Shell (Terminal) aus verwendet werden. Daher ist es praktisch, wenn man den vi(m) beherrscht, wenn man einen Server (z.B. Web-Server) über das Internet warten muss. Die wichtigsten Funkionen kann man probieren und üben mit vimtutor

Weitere Dokumentation finden Sie hier:
vim Kurzreferenz auf LinWiKi
vim Homepage www.vim.org
vim Quick Reference Card (2 Seiten)

Wir verwenden eine spezielle Konfigurationsdatei für den vim. Im Laufe dieses Schuljahres werden wir Ihnen diese Datei (eigentlich eine überarbeitete Version, denn die bisherige Version ist hauptsächlich für C-Programmierung eingerichtet) zur Verfügung stellen. Also, bleiben Sie dran oder suchen Sie auf www.vim.org/scripts nach passenden Scripts für den vim.

Labels: Aufgabe, PR2, vim

# Eingestellt von Harald R. Haberstroh @ 09:50 0 Kommentare

This page is powered by Blogger. Isn't yours?

Abonnieren Kommentare [Atom]