<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>zInformatik &#187; Sourround</title>
	<atom:link href="http://zinformatik.de/tag/sourround/feed/" rel="self" type="application/rss+xml" />
	<link>http://zinformatik.de</link>
	<description>Computer, Informatik und Mikrocontroller Blog</description>
	<lastBuildDate>Fri, 23 Jul 2010 21:22:06 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Vim Plugin &#8211; Surround umschließt Text mit Klammern, Anführungszeichen und HTML-Tags</title>
		<link>http://zinformatik.de/tipps-tricks/interessante-programme/plugins-erweiterungen/vim-plugin-surround-umschliest-text-mit-klammern-anfuhrungszeichen-und-html-tags/</link>
		<comments>http://zinformatik.de/tipps-tricks/interessante-programme/plugins-erweiterungen/vim-plugin-surround-umschliest-text-mit-klammern-anfuhrungszeichen-und-html-tags/#comments</comments>
		<pubDate>Tue, 14 Jul 2009 16:32:30 +0000</pubDate>
		<dc:creator>zimon</dc:creator>
				<category><![CDATA[Plugins und Erweiterungen]]></category>
		<category><![CDATA[Ubuntuusers-Planet]]></category>
		<category><![CDATA[vim Tipps]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Klammern]]></category>
		<category><![CDATA[Sourround]]></category>
		<category><![CDATA[Vim]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://zinformatik.de/?p=1528</guid>
		<description><![CDATA[<p>Für Vim gibt es ein sehr praktisches Plugin namens <a href="http://www.vim.org/scripts/script.php?script_id=1697" title="Vim Plugin - Surround" target="_blank" class="liexternal">Surround</a>, welches es einem ermöglicht Wörter, Sätze, Absätze, Zeilen,&#8230; mit Klammern, Anführungszeichen oder XML-Tags zu umschließen. Solche Umschließungen können auch geändert oder gelöscht werden.</p>
<p>Zur Installation wird das Archiv surround.zip im Verzeichnis <code>~/.vim</code> entpackt.</p>
<p>Grundsätzlich lehnt sich die Bedienung an das Konzept an, den&#8230;</p>]]></description>
			<content:encoded><![CDATA[<p>Für Vim gibt es ein sehr praktisches Plugin namens <a href="http://www.vim.org/scripts/script.php?script_id=1697" title="Vim Plugin - Surround" target="_blank" class="liexternal">Surround</a>, welches es einem ermöglicht Wörter, Sätze, Absätze, Zeilen,&#8230; mit Klammern, Anführungszeichen oder XML-Tags zu umschließen. Solche Umschließungen können auch geändert oder gelöscht werden.</p>
<p>Zur Installation wird das Archiv surround.zip im Verzeichnis <code>~/.vim</code> entpackt.</p>
<p>Grundsätzlich lehnt sich die Bedienung an das Konzept an, den Text zwischen Klammern, Anführungszeichen,&#8230; zu ändern so wie es im Artikel <a href="http://zinformatik.de/tipps-tricks/vim-tipps/vim-bewegungskommandos/" title="vim Bewegungskommandos" target="_self" class="liinternal">Vim Bewegungskommandos</a> im Abschnitt &#8220;Spezielle Bewegungskommandos&#8221; beschrieben ist. </p>
<p><strong>Text Umschließen</strong><br />
Die Syntax zum Umschließen von Text ist:<br />
<code>ys&lt;BEWEGUNG&gt;&lt;ZEICHEN&gt;</code></p>
<p>Beispiele:</p>
<ul>
<li><code>ysis"</code> &#8211; der aktuelle Satz wird mit doppelten Anführungszeichen umschlossen.</li>
<li><code>ysiw&lt;b&gt;</code> &#8211; versieht das aktuelle Wort mit mit dem HTML-Tag <code>b</code>, so dass es fett angezeigt wird.</li>
<li><code>yss)</code> &#8211; umschließt die aktuelle Zeile mit runden Klammern.</li>
<li><code>ysi)"</code> &#8211; umschließt den Text zwischen den Klammern mit doppelten Anführungszeichen.</li>
<li><code>ysa")</code> &#8211; umschließt den den Text zwischen den doppelten Anführungszeichen und die Anführungszeichen selbst mit runden Klammern.</li>
</ul>
<p>Statt den Bewegungskommandos kann man auch im visuellen Modus den gewünschten Text markieren. Dann drückt man <code>s</code> gefolgt vom gewünschten Zeichen.<br />
Beispiel: <code>s"</code> um den markierten Text mit doppelten Anführungszeichen zu umschließen.</p>
<p>Damit man es sich besser vorstellen kann hier ein konkretes Beispiel. Die folgende Zeile:</p>

<div class="wp_syntax"><div class="code"><pre class="plain" style="font-family:monospace;">Dies ist eine Beispielzeile</pre></div></div>

<p>wird durch <code>yss"</code> zu</p>

<div class="wp_syntax"><div class="code"><pre class="plain" style="font-family:monospace;">&quot;Dies ist eine Beispielzeile&quot;</pre></div></div>

<p>Liegt der Cursor auf dem Wort &#8220;eine&#8221;, so kann man mit <code>ysiw)</code> das Wort mit Klammern umschließen:</p>

<div class="wp_syntax"><div class="code"><pre class="plain" style="font-family:monospace;">&quot;Dies ist (eine) Beispielzeile&quot;</pre></div></div>

<p><strong>Umschließung ändern</strong><br />
Um die Umschließung von Text zu ändern nutzt man folgende Syntax:<br />
<code>cs&lt;AKTUELLES_ZEICHEN&gt;&lt;NEUES_ZEICHEN&gt;</code></p>
<p>Beispiele:</p>
<ul>
<li><code>cst"</code> &#8211; ändert das XML/HTML-Tag zu doppelten Anführungszeichen.</li>
<li><code>cs"'</code> &#8211; ändert doppelte in einfache Anführungszeichen.</li>
<li><code>cs)}</code> &#8211; ändert runde in geschweifte Klammern.</li>
</ul>
<p><strong>Umschließung löschen</strong><br />
Die Syntax um eine Umschließung zu löschen ist:<br />
<code>ds&lt;ZEICHEN&gt;</code></p>
<p>Beispiele:</p>
<ul>
<li><code>ds]</code> &#8211; löscht eckige Klammern.</li>
<li><code>ds'</code> &#8211; löscht einfache Anführungszeichen.</li>
<li><code>dst</code> &#8211; löscht XML/HTML-Tags.</li>
</ul>
<p><strong>Wiederholen</strong><br />
Leider funktioniert das Wiederholen des letzten Kommandos mit Punkt nicht mit dem Surround-Plugin. Jedoch kann man es mit dem Plugin <a href="http://www.vim.org/scripts/script.php?script_id=2136" title="Vim Plugin - repeat" target="_blank" class="liexternal">repeat</a> zum funktionieren bringen.<br />
Dafür kopiert man die Datei <code>repeat.vim</code> in das Verzeichnis <code>~/.vim/autoload/</code>. Nachdem man <code>.</code> (Punkt) gedrückt hat muss man jedoch das Zeichen, welches eingefügt werden soll wiederholen.</p>
<p>Abhilfe schafft ansonsten auch die Nutzung von <a href="http://zinformatik.de/tipps-tricks/vim-tipps/makros-aufzeichnen-mit-vim/" title="Makros aufzeichnen mit vim" target="_self" class="liinternal">Makros</a>. Dabei können häufig genutzte Surroundings auch als Makro in die <code>~/.vimrc</code> gespeichert werden.<br />
Folgende Zeile definiert das Register k so, dass beim Aufruf des Makros k mittels <code>@k</code> das aktuelle Wort in runde Klammern eingeschlossen wird:</p>

<div class="wp_syntax"><div class="code"><pre class="vim" style="font-family:monospace;"><span style="color: #804040;">let</span> <span style="color: #000000;">@</span>k=<span style="color: #C5A22D;">&quot;ysiw)&quot;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://zinformatik.de/tipps-tricks/interessante-programme/plugins-erweiterungen/vim-plugin-surround-umschliest-text-mit-klammern-anfuhrungszeichen-und-html-tags/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
