Visual Studio 2005/2012: จะเก็บวงเล็บปีกกาแรกไว้ในบรรทัดเดียวกันได้อย่างไร


119

พยายามทำให้ฟังก์ชัน css / C # ของฉันมีลักษณะดังนี้:

body {
    color:#222;
}

แทนสิ่งนี้:

body 
{
    color:#222;
}

เมื่อฉันฟอร์แมตโค้ดโดยอัตโนมัติ


2
ทำไมคุณถึงต้องการทำสิ่งนี้? คุณกำลังว่ายทวนน้ำแนวทาง MS สำหรับสไตล์. NET เป็นรูปแบบอัตโนมัติในปัจจุบัน
Anthony Mastrean

36
@AnthonyMastrean: ฉันไม่คิดว่าจะมีแนวทาง MS สำหรับสิ่งใด ๆ บางทีผู้ชายคนนี้ทำงานบน java เป็นส่วนใหญ่และพวกเขาคุ้นเคยกับการประชุมชื่อนี้ และอย่างน้อย css ไม่ใช่สิ่งที่เกี่ยวข้องกับ. net :)
Dzung Nguyen

1
ฉันพยายามใช้รูปแบบนี้ แต่ยอมแพ้ VS. หากมีคนอื่นดูโค้ดในเวอร์ชันของตนอย่างน้อยก็เป็นมาตรฐานทั้งหมด
webnoob

15
อย่าใช้คำว่ามาตรฐานผิด ไม่ใช่ทุกคนที่ต้องการจัดฟันในรูปแบบเดียวกัน
Anders Lindén

1
ไปงานปาร์ตี้ช้าไปหน่อย แต่มันง่ายกว่ามากสำหรับฉันที่จะอ่านรหัสของฉันเมื่อวงเล็บปีกกาอยู่ในแถวเดียวกัน นอกจากนี้คุณสามารถใส่รหัสเพิ่มเติมเกี่ยวกับ screenspace เดียวกันชนะชนะสำหรับฉัน: /
ไอแซคคลาร์ก

คำตอบ:


209

ค#

  1. ในเมนูเครื่องมือคลิกตัวเลือก
  2. คลิกแสดงพารามิเตอร์ทั้งหมด (ช่องทำเครื่องหมายที่ด้านล่างซ้าย) ( แสดงการตั้งค่าทั้งหมดใน VS 2010)
  3. แก้ไขข้อความ
  4. ค#
  5. การจัดรูปแบบ
  6. บรรทัดใหม่

และตรวจสอบเวลาที่คุณต้องการขึ้นบรรทัดใหม่ด้วยวงเล็บ

css:

เกือบจะเหมือนกัน แต่มีตัวเลือกน้อยกว่า

  1. ในเมนูเครื่องมือคลิกตัวเลือก
  2. คลิกแสดงพารามิเตอร์ทั้งหมด (ช่องทำเครื่องหมายที่ด้านล่างซ้าย) ( แสดงการตั้งค่าทั้งหมดใน VS 2010)
  3. แก้ไขข้อความ
  4. CSS
  5. รูปแบบ

และกว่าที่คุณเลือกการจัดรูปแบบที่คุณต้องการ (ในกรณีของคุณปุ่มตัวเลือกที่สอง)

สำหรับ Visual Studio 2015:

เครื่องมือ→ตัวเลือก

ในแถบด้านข้างไปที่ตัวแก้ไขข้อความ→ C # →การจัดรูปแบบ→เส้นใหม่

และยกเลิกการเลือกช่องทำเครื่องหมายทุกช่องในส่วน"ตัวเลือกบรรทัดใหม่สำหรับวงเล็บปีกกา"

ใส่คำอธิบายภาพที่นี่


2
สำหรับ css ใน Visual Studio 2013 คุณสามารถเปลี่ยนค่าเป็นอย่างอื่นได้นอกเหนือจากค่าเริ่มต้นในTools > Options > Text Editor > Css > Advanced > Brace positions
David Sherret

สำหรับ Visual Studio Code ไปที่ File -> Preferences -> Settings และภายใต้ Extensions ให้เลือกภาษาที่คุณต้องการเปลี่ยนคุณสมบัติ ค้นหา Clang_format_fallback Style(เช่น: สำหรับ C ++ C_Cpp: Clang_format_fallback Style) และเปลี่ยนค่าจากVisual Studioเป็นGoogle
Riccardo Bonesi

สำหรับ Visual Studio 2017:Tools > Options > Text Editor > C# > Code Style > Formatting > New Lines
koviroli

26

Tools -> Options -> Text Editor -> C # -> Formatting -> New Lines -> New Line Options สำหรับวงเล็บปีกกา -> ยกเลิกการเลือกทุกช่อง


11

แนวทาง MS อย่างเป็นทางการ(ณ เวลานั้นในปี 2008)บอกให้คุณมีปีกกาในบรรทัดเดียวกับ method / property / class และอื่น ๆ อีกมากมายที่ไม่ได้บังคับใช้ใน Visual Studio

คุณสามารถเปลี่ยนการตั้งค่าข้อความอัตโนมัติเหล่านี้ได้ใน:
Tools -> Options -> Text Editor -> [ภาษาที่คุณต้องการเปลี่ยน]

อัปเดต:นี่เป็นไปตามหนังสือ "Framework Design Guidelines" ที่เขียนโดยบุคคลสำคัญบางคนจากทีม. NET หากคุณดูซอร์สโค้ดสำหรับไลค์ASP.NET MVC สิ่งนี้จะไม่ถูกต้องอีกต่อไป


คุณช่วยระบุข้อมูลอ้างอิงสำหรับ @Seb นี้ได้ไหม ผมพบว่าเอกสาร MS แนวทางจาก 2005 ที่ระบุว่าการประชุมตรงข้ามสำหรับวงเล็บปีกกา (รูปแบบต่อไปบรรทัด): blogs.msdn.com/b/brada/archive/2005/01/26/361363.aspx ตัวฉันเองชอบสไตล์ "อียิปต์" (วงเล็บปีกกาเปิดบรรทัดเดียวกัน) และหวังว่า C # จะเป็นไปตามอนุสัญญานี้ ...
Ian Campbell

6

Tools -> Options -> Text Editor -> CSS -> Formattingไปที่ คลิก "กึ่งขยาย" ซึ่งตรงกับสไตล์ที่คุณกำหนด

หน้าจอตัวเลือก


1
ตัวเลือกนี้ดูเหมือนจะหายไปในปี 2013 :(
ลูกา


2

มีการตั้งค่าการจัดรูปแบบเฉพาะใน VS 2008/2010 เพื่อให้วงเล็บปีกกาเปิดอยู่ในบรรทัดเดียวกัน:

คลิกเครื่องมือ -> ตัว
เลือกเลือก 'CSS' ภายในโหนดโครงสร้าง 'ตัวแก้ไขข้อความ'
เลือก 'การจัดรูปแบบ' ภายใต้โหนด 'CSS'
คลิกปุ่มตัวเลือก 'กึ่งขยาย'

คุณจะเห็นตัวอย่างว่าปุ่มตัวเลือกต่างๆมีประโยชน์อย่างไรกับการจัดรูปแบบ


1

หากคุณกำลังมองหาตัวเลือกนี้ภายในVisual Studio 2014 แสดงว่าอยู่ในขั้นสูงและตอนนี้เป็นช่องแบบเลื่อนลง 'ตำแหน่งรั้ง':

ใส่คำอธิบายภาพที่นี่


0

สำหรับ Visual Studio Mac OS (Community edition) เวอร์ชัน 8.3 คุณต้องดำเนินการดังต่อไปนี้:

การตั้งค่า -> ซอร์สโค้ด (ในเมนูด้านซ้าย) -> การจัดรูปแบบโค้ด -> ซอร์สโค้ด C # -> รูปแบบ C # -> กดแก้ไข

ใส่คำอธิบายภาพที่นี่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.