มีช็อตคัตโค้ดรูปแบบสำหรับ Visual Studio หรือไม่


429

ในEclipseมีทางลัด, Ctrl+ Shift+ F, ที่เยื้องรหัสและแก้ไขความคิดเห็นและบรรทัดว่าง Visual Studio 2010 มีความเทียบเท่าหรือไม่


VS ทำชุดย่อยของ Eclipse VS ไม่แก้ไขบรรทัดว่างเปล่าหรือไม่แสดงความคิดเห็น เพื่อให้ได้ Enchilada ทั้งหมดคุณต้อง reSharper หรืออะไรทำนองนั้น
John Henckel

เหตุใดจึงมีการติดแท็กด้วย Visual Studio 2010, Visual Studio 2010 และ Visual Studio 2013
Peter Mortensen

คำตอบ:


734

Visual Studio พร้อมการผูกคีย์ C #

หากต้องการตอบคำถามเฉพาะใน C # คุณมีแนวโน้มที่จะใช้รูปแบบแป้นพิมพ์ C # ซึ่งจะใช้ปุ่มลัดเหล่านี้ตามค่าเริ่มต้น:

Ctrl+ E, Ctrl+ Dเพื่อจัดรูปแบบเอกสารทั้งหมด

Ctrl+ E, Ctrl+ Fเพื่อจัดรูปแบบส่วนที่เลือก

คุณสามารถเปลี่ยนสิ่งเหล่านี้ได้ในเมนูเครื่องมือตัวเลือกสภาพแวดล้อมแป้นพิมพ์ (โดยเลือก "รูปแบบการจับคู่แป้นพิมพ์" ที่แตกต่างกันหรือเชื่อมโยงแต่ละคีย์เข้ากับคำสั่ง "Edit.FormatDocument" และ "Edit.FormatSelection")

หากคุณไม่ได้เลือกที่จะใช้ C # โครงการแผนที่แป้นพิมพ์แล้วคุณอาจพบทางลัดที่สำคัญที่แตกต่างกัน ตัวอย่างเช่นถ้าคุณไม่ได้ใช้การเชื่อมโยง C # คีย์น่าจะเป็น:

Ctrl+ K+ D(เอกสารทั้งหมด)

Ctrl+ K+ F(ตัวเลือกเท่านั้น)

เพื่อหาที่ผูกที่สำคัญนำไปใช้ในคุณสำเนาของ Visual Studio ดูในเมนูแก้ไขเมนูขั้นสูง - ปุ่มจะแสดงไปทางขวาของรายการเมนูเพื่อให้มันง่ายที่จะค้นพบสิ่งที่พวกเขาอยู่ในระบบของคุณ


(โปรดอย่าแก้ไขคำตอบนี้เพื่อเปลี่ยนการผูกกุญแจด้านบนเป็นสิ่งที่ระบบของคุณมี!)


1
การผูกทางลัดของฉันดูเหมือนจะแตกต่างกัน แต่ตำแหน่งของรายการเมนูช่วยได้แน่นอน ฉันต้องเล่นรอบกับตัวเลือกเหล่านั้น ...
Soumya

2
นอกจากนี้ในเครื่องมือ> ตัวเลือกไปที่ตัวแก้ไขข้อความ> C #> การจัดรูปแบบและคุณสามารถควบคุมวิธีการจัดรูปแบบรหัส
Jason Williams

61
ทางลัดเหล่านี้ (เริ่มต้นด้วย Ctrl + E) ใช้ได้สำหรับ Visual Studio 2005 และ 2008 เท่านั้น ใช้ทางลัด Ctrl + K + D และ Ctrl + K + F เพื่อให้เหมือนกันใน Visual Studio 2010 (ถ้าคุณใช้การกำหนดค่าเริ่มต้น)
Jpsy

3
แน่นอน แต่เพื่อความชัดเจน: การตั้งค่า C # สำหรับ vs2010 ยังคงเป็นตามที่อธิบายไว้ในคำตอบของฉัน
Jason Williams

นอกจากนี้ยังแก้ไขรหัสที่จู่ ๆ ก็รวมเป็นหนึ่งบรรทัดของรหัสเท่านั้น ฉันใช้ VS 2012.
Flash3

108

Ctrl+ K+ D(เอกสารทั้งหมด)

Ctrl+ K+ F(ตัวเลือกเท่านั้น)


ฉันเพิ่งสังเกตเห็นว่าพวกเขาแตกต่างกัน เมื่อผมจัดรูปแบบเอกสารทั้งหมด ( Edit.FormatDocument) บางรหัสล้างยังเกิดขึ้นเช่นเราได้ตั้งไว้Add/remove braces for single-line control statements(คำอธิบายที่ไม่ดีจริงๆเพราะผู้ใช้มีความคิดสิ่งที่เกิดขึ้นเมื่อคุณเปิดใช้งานได้ ^^ ไม่ได้) เพื่อจัดรูปแบบเสมอเปลี่ยนแปลงไปif(foo) bar; if(foo) { bar; }การเรียกใช้งาน Edit.FormatSelection จะไม่เปลี่ยนแปลงสิ่งนั้น อาจเป็นข้อผิดพลาดก็จะรายงานหากฉันไม่พบอะไรเลย
bugybunny

ตกลงฉันเพิ่งรู้ว่ามันเป็นไปไม่ได้ที่จะดำเนินการทุกการกระทำเนื่องจากการเลือกผู้ใช้สามารถเป็นอะไรก็ได้และไม่รวมวงเล็บเปิด / ปิดทั้งหมด ฯลฯ ฉันยังรายงานเพราะการกระทำบางอย่างควรจะทำได้
bugybunny

33

ลองCtrl+ K+ D(อย่ายกCtrlกุญแจระหว่างนั้น)


2
คี่ CTRL + K + CTRL + D ใช้งานได้ (ปรากฏในแถบสถานะที่เป็นที่รู้จัก แต่ CTRL + K + D ไม่ได้และไม่ทำอะไรเลยอาจมีบางอย่างที่เกี่ยวข้องกับตัวแก้ไขโปรไฟล์ แต่ฉันจำไม่ได้ว่าตัวเลือกใด ฉันเลือก
ปล้น

22

ได้คุณสามารถใช้ปุ่มลัดแบบสองเส้น ( Ctrl+ K, Ctrl+ Fหากคุณใช้รูปแบบทั่วไป) เพื่อจัดรูปแบบที่คุณเลือก

ตัวเลือกการจัดรูปแบบอื่น ๆ อยู่ภายใต้เมนูแก้ไขขั้นสูงและเช่นเดียวกับคำสั่ง Visual Studio ทั้งหมดคุณสามารถตั้งค่าฮ็อตคีย์ของคุณเองผ่านเมนูเครื่องมือตัวเลือกสภาพแวดล้อมแป้นพิมพ์ (คำสั่งเลือกรูปแบบที่เรียกว่าEdit.FormatSelection)

การจัดรูปแบบไม่ได้ทำอะไรกับบรรทัดว่างเปล่า แต่มันจะเยื้องรหัสของคุณตามกฎบางอย่างที่มักจะออกเล็กน้อยจากสิ่งที่คุณอาจต้องการ


2
หากโดย "ปิดเล็กน้อย" คุณหมายถึงการจัดฟันสำหรับคำสั่งบล็อกเริ่มต้นที่บรรทัดใหม่แสดงว่าไม่ใช่ปัญหา นั่นเป็นวิธีที่ฉันชอบ
Soumya

นี่คือทางลัดเริ่มต้นสำหรับ Visual Studio 2010 สำหรับ VS 2005 และ 2008 ใช้ทางลัดเริ่มต้น Ctrl + E + D และ Ctrl + E + F
Jpsy

มันจะจัดรูปแบบรหัสตามวิธีที่กำหนดโดยการตั้งค่าของคุณ - ค่าเริ่มต้นหากคุณไม่ได้กำหนดค่าให้ใช้เครื่องมือ»ตัวเลือก»ตัวแก้ไขข้อความ» CSS (สำหรับ VS 2012 อาจเป็นสิ่งที่คล้ายกันมากในรุ่นก่อนหน้านี้หากไม่เหมือนกัน .)
โทมัส


10

เพื่อจัดตำแหน่งข้อความในรูปแบบที่เหมาะสม -

  • Ctrl+ K+ Dสำหรับหน้าส่วนหน้าเช่น.aspxหรือ.cshtml

  • Ctrl+ K+ Fสำหรับ.csหน้า

แต่สังเกตให้กดปุ่มทั้งหมดตามลำดับ ...




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