c# - مشاريع - كيف يمكنني جعل فيسوال ستوديو توليد الأقواس لكتلة دالة؟




مشاريع الفيجوال بيسك جاهزة (4)

يمكن أن أقسم لقد رأيت الناس كتابة رؤوس وظيفة ومن ثم ضرب بعض تركيبة المفاتيح لصناعة السيارات في إنشاء الأقواس وظيفة وإدراج المؤشر بينهما مثل ذلك:

void foo()_

إلى

void foo()
{
    _
}

هل هذه ميزة مضمنة؟


الأدوات تبدو لطيفة (وخاصة ريشارجر ولكن في $ 200-350 أوش!) ولكن انتهى بي الأمر مجرد تسجيل الماكرو وتعيينه ل كترل + ألت + [

خرج ماكرو من هذا القبيل:

Sub FunctionBraces()
    DTE.ActiveDocument.Selection.NewLine
    DTE.ActiveDocument.Selection.Text = "{}"
    DTE.ActiveDocument.Selection.CharLeft
    DTE.ActiveDocument.Selection.NewLine(2)
    DTE.ActiveDocument.Selection.LineUp
    DTE.ActiveDocument.Selection.Indent
End Sub

تحرير: لقد استخدمت مسجل الماكرو لجعل هذا ولم يكن سيئا للغاية


تحقق من ريشاربر - بل هو فيسوال ستوديو إضافة على مع هذه الميزة، بين العديد من التنمية الأخرى يساعد.

انظر أيضا C # كومبلتر ، إضافة أخرى.

إذا كنت ترغب في لفة الخاصة بك، وتحقق من هذه المقالة . مجنون أن المرء يجب أن نفعل ذلك، على الرغم من.


ويمكن تحقيق ذلك باستخدام مقتطفات الشفرة، وبعضها قد بني بالفعل (حاول كتابة "سفم" وضرب تاب-تاب) ..

هناك ثروة من المعلومات على الشبكة على خلق هذه:

جيف لم وظيفة نفسه هنا

لديك جوجل! أنا استخدمها الكثير! :د


أنا فقط خلق واحد على أساس @ لوقا أعلاه. هذا واحد، وتريد أن تصل إلى إنتر ثم ضرب تركيبة المفاتيح الخاصة بك وأنه سيتم إدراج:

if ()
{

}
else
{

}

وسوف يضع المؤشر الخاص بك في الأقواس بواسطة بيان إف.

Sub IfStatement()
    DTE.ActiveDocument.Selection.Text = "if ()"
    DTE.ActiveDocument.Selection.NewLine()
    DTE.ActiveDocument.Selection.Text = "{"
    DTE.ActiveDocument.Selection.NewLine(2)
    DTE.ActiveDocument.Selection.Text = "}"
    DTE.ActiveDocument.Selection.NewLine()
    DTE.ActiveDocument.Selection.Text = "else"
    DTE.ActiveDocument.Selection.NewLine(2)
    DTE.ActiveDocument.Selection.Text = "{"
    DTE.ActiveDocument.Selection.NewLine(2)
    DTE.ActiveDocument.Selection.Text = "}"
    DTE.ActiveDocument.Selection.LineUp(False, 7)
    DTE.ActiveDocument.Selection.EndOfLine()
    DTE.ActiveDocument.Selection.CharLeft(3)
End Sub






visual-studio