كيف يمكنني indent كتلة من التعليمات البرمجية C في همة?[مكررة]
سؤال
مكررة:
في بعض الأحيان أريد أن المسافة البادئة كتلة من التعليمات البرمجية C في همة.وعادة ما انتهى الجدولة ذلك سطرا سطرا.
ما هو أفضل/أسرع طريقة ؟
المحلول
أنا مندهش لم يأت أحد حتى مع =%
بعد.
تأكد من أن لديك :set cindent
,
ضع نفسك على أحد {}
من كتلة الخاص بك ، مجرد ضرب:
=%
كافة التعليمات البرمجية داخل هذه الكتلة سوف يكون بشكل صحيح بادئة.
نصائح أخرى
أدخل وضع البصرية ، حدد التالي مطابقة قوس ، indent:
V
%
>
استخدام '>' إلى علامة التبويب كتلة
في حين إدراج:ج-d ، C-t
في حين البصرية:>, <
في حين العادي:>>, <<
في أي من هذه طرق استخدام '.' أطراف أخرى.
محاولة
:مجموعة cindent
هذا بدوره على ج الطعج السحر في همة.لذا بمجرد فتح هدفين ، فإنه سيتم تلقائيا علامة التبويب حتى تقوم بإغلاق هدفين.
إذا كان لديك unindented رمز التي تبدو مثل هذا...
if (foo)
{
/* line 1 */
/* line 2 */
/* line 3 */
}
...ضع المؤشر على "الخط رقم 1" في سطر الأوامر و اكتب 3==
, حيث 3 هو عدد خطوط المسافة البادئة.
أعتقد أن هذا سوف تفعل ذلك من دون أي indent مفاتيح يتم تعيين.
:startRange,stopRange s/^/^\t/g
يجب إضافة علامة التبويب مساحة في بداية الخط الفاصل بين خط مجموعة رقم تقدمها
إزاحة مع:
:startRange,stopRange s/^\t/^/g
بالإضافة إلى ما skinp قال: إذا كان لديك:
int foo()
{
/* line 1 */
/* line 2 */
/* line 3 */
/* line 4 */
}
و لسبب ما ترغب أن تبدو مثل هذا (أيتريد كل شيء بادئة 4 مساحات* من حيث كانوا سابقا بدلا من الطعج 'صحيح' وفقا cindent القواعد):
int foo()
{
/* line 1 */
/* line 2 */
/* line 3 */
/* line 4 */
}
في أي مكان داخل كتلة هل viB> (visualselection innerBlock في الهامش)**
*
أو أيا كان shiftwidth في
**
سادسا} هو نفس viB, و قد يكون من الأسهل أن نتذكر منذ السادس} يختار داخل {}, السادس) يختار ضمن () السادس] يحدد في [] ، و السادس> يختار ضمن <>.
أيضا, va}, va) ، الخ.حدد {}, () ، وما إلى ذلك بالإضافة إلى ما ورد في كتلة.