středa 26. března 2008

.NET a C#: Snippety - Tvorba vlastních

Dnes začnu netradičně kódem, a ten budu vysvětlovat až posléze. Jak jsem minule napsal, snippet je xml soubor s koncovkou .snippet.
Teď vysvětlení pár věci:
<?xml version="1.0" encoding="utf-8"?>
<codesnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
<codesnippet format="1.0.0">
<header>
<title>reg</title>
<shortcut>reg</shortcut>
<description>Vlozi #region blok s volitelnym popisem</description>
<author>Roman Lonik</author>
<snippettypes>
<snippettype>Expansion</snippettype>
<snippettype>SurroundsWith</snippettype>
</snippettypes>
</header>
<declarations>
<literal>
<id>popis</id>
<tooltip>Nahradte popiskem bloku.</tooltip>
<default>MujRegion</default>
</literal>
</declarations>
<code language="csharp"><![CDATA[#region $popis$
$selected$ $end$ #endregion $popis$]]>
</code>
</codesnippet>
</codesnippets>

  • Title - Titulek snippetu, který se objevuje ve Visual Studiu.
  • Shortcut - Zkratka, pomocí které vyvoláte snippet (podobně jako fore je zkratka pro snippet foreach)
  • Description, Author snad nepotřebuje popis (jedná se o popis a autora)
  • V sekci SnippetStyles nadefinujete, o jaký typ snippetu se jedná
    • SurroundWith - snippet můžeme umístit kolem označeného textu.
    • Expansion - snippet může být umístěn na místě kurzoru
    • Refactoring - Určuje, že se snippet používá během Visual C# refaktoring
  • V sekci Declarations nadefinujeme proměnné, které použijeme ve snippetu. Ty mají následující členy:
    • ID - Identifikátor proměnné, který použijeme v kódu proměnné.
    • ToolTip - tento text se zobrazí v zeleném rámečku umístěného snippetu a můžete jej nahradit
    • Default - defaultní hodnota, která se doplní, když vy žádnou neurčíte.
  • Code - vlastní kód snippetu. Nezapomeňte specifikovat, který jazyk pro typ snippetu používáte. (použijeme C#).
    • CDATA - samotný kód. My chceme snippet, který udělá #region blok s volitelným popisem. Proměnné dáváme mezi znak $. $selected$ a $end$ označuje hranice označeného textu. Abychom věděli, kolem jaké oblasti snippet umístit (typ SurroundWith)

Žádné komentáře:

Okomentovat