Soru Visual Studio 2010'da 'surround with' tip snippet nasıl oluşturulur?


Görsel stüdyo 2010'da 'surround with' snippet'i oluşturmanın bir yolu var mı? Yedek kod parçasının nasıl oluşturulacağını biliyorum. Snippet ile basit bir surround, asp: hyperlink içeren bir metin bloğunu çevreleyebilir. Öntanımlı olarak 'surround with' snippet'lerinin bir asp bloğu ile bir kod bloğunu çevrelemesi gibi.


32
2018-05-05 16:49


Menşei


biraz farklı soru, ama aynı cevap: stackoverflow.com/a/2879206/93394 - kmote


Cevaplar:


MSDN makalesine bakın. snippet'ler oluşturma. Size iyi bir başlangıç ​​yapmalı. Snippet'inizi oluştururken, ona SnippetType verdiğinizden emin olun. SurroundsWith snippet'i seçili kodu çevrelemek için.

En son Visual Studio için (şu anda 2017), orada Microsoft Docs'ta Kod Parçacıkları, Hem de Örnek: Kod Snippet'i Oluşturma.


24
2018-05-05 17:24



Bunu nasıl yapıyorsunuz bilmiyorum ama parçacıklar benim için hiç çalışmaz! Yerleşik olanlarda kodu değiştirdiğimde ve bunları uygun klasöre yerleştirdiğimde bile değil! (VsDir \ Code Snippets \ Visual Basic) veya (VsDir \ Code Snippets \ Visual C #) - Alex Essilfie
@Alex: Ben her zaman hemen hemen her şey için destek arasında, son derece üstün snippet desteğine sahip Resharper'ı kullanırım. - Matthew Ferreira
Örnek için buraya bakın: blackwasp.co.uk/VSSnippetTypes.aspx - Sara


İyi belgelendirilmemiş bazı önceden tanımlanmış kimlikler olduğu ortaya çıkıyor. Özellikle için SurroundWith snippet yazın, bir kimlik var $ Seçilen $. Yani, örneğin, #Eğer snippet şudur:

...
<Code Language="csharp">
    <![CDATA[#if $expression$ $selected$ $end$ #endif]]>
</Code>
...

$ Uç $ Kimlik, Surround işlevi tamamlandığında imleci nereye yerleştireceğini gösterir. Bu gerçekten bunun için var. Tabii, dahil etmeyi unutmayın SurroundsWith SnippetType olarak

Daha fazla örnek için, önceden tanımlanmış snippet'lere C: \ Program Files \ Microsoft Visual Studio 10.0 \\ Snippet'ler \ 1033 \ 'de bakın.


29
2017-10-18 22:39



VS2012 snippet'leri VS2010 ile aynı yerde saklamıyor. Kod Parçacıkları Yöneticisini açarsanız ve bir snippet kümesini tıklarsanız, depolandıkları yolu size gösterir. Mil uzakta değil ama yolu bulana kadar beni hala güldürdü - Phil Hale
C: \ Program Dosyaları (x86) \ Microsoft Visual Studio 10.0 \ VC # \ Parçacıklar \ 1033 \ Visual C # - SAm
Bu cevap Microsoft'un yazması gereken belgeleri içermektedir. @DiamondBack'i paylaştığınız için teşekkürler. - Marcel


Yukarıdaki kullanışlı cevaplardan Appart, işte Kod Parçacıkları Şeması Referansısnippet elemanları için geçerli değerler bulmak için yararlıdır.


1
2018-04-07 12:04





Bir örnek ve VS2017 için bazı tavsiyeler (önceki cevaplara dayanarak):

Örnek bir XML pasajı içindir, ancak bunun herhangi bir dile az ya da çok uygulanacağını tahmin ediyorum.

  1. Aşağıdaki kodu bir dosyaya yapıştırın ve example.snippet olarak herhangi bir yere kaydedin
  2. VS yapmak Araçlar-> Kod Snippet Yöneticisi, XML Dili ve sonra XML Snippet'leri seçin
  3. İçe Aktar'ı tıklayın ve example.snippet'i seçin.
  4. Son'u ve Tamam'ı tıklayın.
  5. Bu noktada VS'yi yeniden başlattım ama bu gibi dürüst olmayan önlemler alınmayabilir.
  6. Bir XML dosyasında para etiketleri ile çevrelemek istediğiniz metni seçin.
  7. Ctrl + K, Ctrl + S, XML Parçacıklarım'ı ve ardından "Snippet ile SurroundWith Örneği" ni seçin.

Metninizden önce bir <para> etiketi yerleştirilecek ve </ para>.

Takip eden yeni bir satır eklerseniz, metinden sonra ek bir boş satır alırsınız ve bitiş etiketini takip eden metin, bitiş etiketi ile aynı satırda görünür. Bunu düşünürsen mantıklı.

Bir satırdaki metnin yalnızca bir bölümünü seçerseniz, beklediğiniz şeyi alabilir veya almayabilirsiniz. Snippet'in ayarlanması gerekebilir.

<?xml version="1.0" encoding="utf-8"?>
<CodeSnippets
  xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
  <CodeSnippet Format="1.0.0">
    <Header>
      <Title>Example of a SurroundsWith snippet</Title>
      <Shortcut>shortcutsdontwork</Shortcut>
      <Description>
        complete example of SurroundsWith
        will put para tag on the line above selected text
        and /para end tag on the line below selected text
        will positon the cursor immediately after the
        closing angle bracket of the end tag
      </Description>
      <Author>mikedamay - TheDisappointedProgrammer</Author>
      <SnippetTypes>
        <SnippetType>SurroundsWith</SnippetType>
      </SnippetTypes>
    </Header>
    <Snippet>
      <Code Language="XML">
        <![CDATA[<para>
        $selected$
        </para>$end$]]>
      </Code>
    </Snippet>
  </CodeSnippet>
</CodeSnippets>

Kod parçacıklarının davranışları hakkındaki yorumlarım, Microsoft'un Microsoft araçları takımı için alışılmadık olduğunu söyleyerek VS2017'deki kod parçacıklarının davranışıyla kısıtlayacağım. Özellikle hangi kısayolların yapıldığına dair iddialardan sakının. Görebildiğim kadarıyla yararlı bir şey yapmıyorlar.


1
2017-09-28 09:19