คุณจัดรูปแบบรหัสอัตโนมัติใน Visual Studio ได้อย่างไร


818

ฉันรู้ว่า Visual Studio สามารถจัดรูปแบบอัตโนมัติเพื่อทำให้วิธีการของฉันและลูปเยื้องอย่างถูกต้อง แต่ฉันไม่พบการตั้งค่า


17
จากเมนูด้านบน: แก้ไข -> ขั้นสูง -> จัดรูปแบบเอกสาร
zipzit

6
แล้วปี 2019 ล่ะ
l --''''''--------- '' '' '' '' '' ''

1
ยังคงเหมือนเดิมใน vs2019
Finn

คุณหมายถึง "คุณจัดรูปแบบกลุ่มของรหัสด้วยการกดแป้นสองครั้ง" ได้อย่างไร นั่นน่าจะเป็นสิ่งที่คำตอบที่ได้รับความนิยมอ้างถึง (มากกว่า "คุณจัดรูปแบบอัตโนมัติอย่างไร" ... ขณะที่คุณพิมพ์ / วาง / ฯลฯ )
KevinVictor

สำหรับ Visual Studio 2017 ใช้ทางลัด Ctrl + Alt + Enter
Fairuz Sulaiman

คำตอบ:


1314

ในการจัดรูปแบบการเลือก: Ctrl+ K, Ctrl+F

ในการจัดรูปแบบเอกสาร: Ctrl+ K,Ctrl +D

ดูที่กำหนดไว้ล่วงหน้าแป้นพิมพ์ลัด (ทั้งสองนี้Edit.FormatSelectionและEdit.FormatDocument.)

หมายเหตุสำหรับ OSX

บน OSX ให้ใช้CMD ⌘รหัสไม่Ctrl:

  • ในการจัดรูปแบบการเลือก: CMD ⌘+ K, CMD ⌘+F
  • ในการจัดรูปแบบเอกสาร: CMD ⌘+ K, CMD ⌘+D

17
เทียบกับปี 2010 ดูเหมือนจะเป็น ctrl + k, ctrl + d
Sarawut Positwinyu

29
มัน Ctr + K, Ctrl + D ใน Visual Studio 2013 เพื่อจัดรูปแบบเอกสาร
กริช

5
ใน VS2010 หากคุณมีFormat document is not available...ข้อผิดพลาดโปรดอ่าน: stackoverflow.com/q/8812741/1016891
tom_mai78101

4
สิ่งเหล่านี้ถูกต้องสำหรับ VS2013
James Wierzba

9
ฉันไม่รู้ว่าเพราะเหตุใด Microsoft จึงเปลี่ยนแปลงสิ่งเหล่านี้ สำหรับการอ้างอิงในอนาคตสามารถพบได้ภายใต้แก้ไข -> ขั้นสูง -> เอกสารรูปแบบใครจะรู้ว่าพวกเขากำลังจะเปลี่ยนชื่อเมนูในการทำซ้ำครั้งถัดไป
Jeremy

153

สำหรับ Visual Studio 2010/2013/2015/2017

  • จัดรูปแบบเอกสาร ( Ctrl+K, Ctrl+D) ดังนั้นพิมพ์Ctrl+KและจากCtrl+Dนั้นเป็นลำดับ
  • การเลือกรูปแบบ ( Ctrl+K, Ctrl+F)

การแก้ไขแถบเครื่องมือ-> ขั้นสูง (หากคุณไม่เห็นขั้นสูงให้เลือกไฟล์รหัสในโซลูชันสำรวจแล้วลองอีกครั้ง)

ทางลัดของคุณอาจแสดงแตกต่างจากของฉันขณะที่ฉันตั้งค่าการเข้ารหัส C # แต่การนำทางผ่านแถบเครื่องมือจะนำคุณไปสู่สิ่งที่คุณต้องการ

หากไม่ได้ผลให้มองหาข้อผิดพลาดในรหัสของคุณเช่นวงเล็บเหลี่ยมหายไปซึ่งหยุดรูปแบบอัตโนมัติไม่ให้ทำงาน


11
หากคุณพบว่ามันใช้งานไม่ได้ให้ตรวจสอบวงเล็บของคุณ {}, () เมื่อมันไม่ได้ผลสำหรับฉันนั่นเป็นเพราะมีวงเล็บเปิดอยู่ที่ไหนสักแห่งในไฟล์
ono2012

40

ทำตามขั้นตอนด้านล่าง:

  • ไปที่ Tools
  • ไปที่ Options
  • ไปที่ Text Editor options
  • คลิกภาษาที่คุณต้องการ ฉันใช้C#เป็นตัวอย่าง

ดูภาพด้านล่าง:

ป้อนคำอธิบายรูปภาพที่นี่


24
และเมื่อฉันทำเช่นนี้? ฉันไม่เห็นการตั้งค่าเหล่านั้นจัดการการเยื้องอัตโนมัติหรือไม่
MrJalapeno

21
@MrJalapeno ฉันไม่รู้ว่าคำถามที่ฉันตอบเมื่อ 6 ปีที่แล้ว แต่ 34 คนพบว่ามีประโยชน์ ขอโทษสำหรับความสับสน. ฉันอาจตีความคำถามในกรณีที่คำตอบของฉันถูกนำไปใช้เนื่องจากมีการจัดรูปแบบตัวเลือกที่เกี่ยวข้องในคำตอบของฉัน ในความเข้าใจย้อนหลังมันปลอดภัยที่จะบอกว่า OP กำลังมองหา ctrl + k, ctrl + d
Pete

(สไตล์โค้ด) การจัดรูปแบบ> "รูปแบบอัตโนมัติเมื่อวาง"
tomsmithweb

37

ฉันติดตั้งส่วนขยายที่ชื่อว่า "จัดรูปแบบเอกสารในบันทึก" ซึ่งจัดรูปแบบเอกสารทั้งหมดทุกครั้งที่คุณบันทึก สำหรับการติดตั้งใน VS15 หรือ 17 บนเครื่องมือเพียงคลิก "ส่วนขยายและการอัพเดท ... ":

ป้อนคำอธิบายรูปภาพที่นี่

จากนั้นไปที่ "ออนไลน์" ที่แผงด้านซ้ายแล้วค้นหา "จัดรูปแบบเอกสารในการบันทึก" ป้อนคำอธิบายรูปภาพที่นี่

ฉันหวังว่ามันจะช่วย!


นอกจากนี้คุณสามารถติดตั้งได้โดยภาพสตูดิโอสถานที่ตลาดmarketplace.visualstudio.com/...
VMM

28

แม้ว่าคำถามจะค่อนข้างเก่า แต่บางคนอาจพบว่ามีประโยชน์

คุณสามารถกำหนดการผูกกุญแจใหม่ได้โดยไปที่ Tools -> options -> Environment -> keyboard

ป้อนคำอธิบายรูปภาพที่นี่


ขอบคุณ สำหรับฉัน Ctrl E + D ในรูปแบบ VS2005 :)
nawfal

20
  1. ไปที่เครื่องมือ -> ส่วนขยายและการอัปเดตแล้วพิมพ์ "Productivity" ในการค้นหา: 1
  2. ติดตั้ง 'เครื่องมือไฟฟ้าเพิ่มประสิทธิภาพการผลิต 2015'
  3. รีสตาร์ท VS
  4. ไปที่เครื่องมือ -> ตัวเลือก -> เครื่องมือไฟฟ้าเพิ่มประสิทธิภาพ -> คำสั่งพลังงานและตรวจสอบ "จัดรูปแบบเอกสารในการบันทึก": 2

คงจะดีถ้ามันทำงานในขณะที่พิมพ์เช่นเดียวกับ VB.NET:
tmighty

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

ติดตั้งส่วนขยายสำหรับ visual studio 2019 ฉันไม่ powerCommands หลังจากคัดลอก HTML
Amir Dora

มันใช้งานได้สำหรับฉันชุมชน Microsoft Visual Studio 2019 เวอร์ชัน 16.5.2
Slava Latun


10

หากคุณแสดงแถบเครื่องมือการแก้ไขซอร์ส HTML มีปุ่ม "ฟอร์แมตทั้งเอกสาร" เช่นกัน


นั่นเป็นสถานที่แปลกสำหรับมัน ฉันได้ค้นหาสิ่งเหล่านี้ทั้งหมดแล้ว
rory.ap

1
ฉันมี VS13 แถบเครื่องมือนั้นไม่มีปุ่ม "จัดรูปแบบเอกสาร"
emcor

1
การใช้ Microsoft Visual Studio Community 2015 เวอร์ชัน 14.0.23107.0 D14REL มีปุ่ม "ฟอร์แมตเอกสารทั้งหมด" บนแถบเครื่องมือที่กล่าวถึง
เอียนคาร์เพนเตอร์

9

วิธีการแก้ปัญหาที่ระบุไว้ในคำตอบที่ได้รับการยอมรับไม่ได้นำไปใช้กับMicrosoft Visual Studio 2012

ในกรณีของ VS2012 ทางลัดคือ:

  • สำหรับบล็อกรหัสที่ไฮไลต์: Ctrl+ K, Ctrl+F
  • สำหรับการจัดรูปแบบทั้งเอกสาร: Ctrl+ K, Ctrl+D

ที่จริงมันไม่ผิด ทั้ง CTRL + K, F และ CTRL + E, F ทำสิ่งเดียวกัน หากคุณไปที่ EDIT -> ขั้นสูงคุณจะเห็นทางลัดที่แสดงรายการเป็น CTRL + E, D และ CTRL + E, F การแสดงความคิดเห็นสามารถทำได้ด้วย CTRL + K, C หรือ CTRL + E, C - การใช้ VS2012 พรีเมียมพร้อมติดตั้งอัพเดตล่าสุดทั้งหมด
Alan006

1
@ Alan006 น่าสนใจ การติดตั้ง VS2012 Pro ของฉันบอกว่า Ctrl + e, f / Ctrl + e, d ไม่ใช่คำสั่ง
Geowil

5
ฉันคิดว่ามันน่าจะเกี่ยวข้องกับการตั้งค่าสภาพแวดล้อม / การพัฒนาที่คุณเลือกในการเปิดตัวครั้งแรก พวกเขาทั้งคู่ทำงานเพื่อฉันดังนั้นฉันจะไม่บ่น: D
Alan006

@ Alan006 ถูกต้องสภาพแวดล้อมเริ่มต้นสำหรับ VS2010 ขึ้นไปใช้รูปแบบแป้นพิมพ์สำหรับ "Visual Basic" (ตรวจสอบเครื่องมือ -> ตัวเลือก -> แป้นพิมพ์ ) "Visual C # 2005" มีการผูกแป้นพิมพ์ที่แตกต่างกันเล็กน้อย
ไบรอันเวย์


7

ใน VS 2017 และ 2019

CTRL E + Dรูปแบบเอกสารเป็น

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

ตอนนี้ ...

คลิกที่Add Commandปุ่ม
หมวดหมู่: แก้ไข
คำสั่ง:
คลิกรูปแบบเอกสารOK


6

ภายใต้ภายใต้เครื่องมือ -> ตัวเลือก -> ตัวแก้ไขข้อความจากนั้นไปที่ส่วนการจัดรูปแบบ -> ทั่วไปของภาษาใดก็ตามที่คุณต้องการจัดรูปแบบคุณจะพบทั่วไปทั่วไปเลือกช่องทำเครื่องหมายการจัดรูปแบบทั้งสามแบบ

ภายใต้เครื่องมือ -> ตัวเลือก -> แก้ไขข้อความแล้วไปที่แท็บส่วนหนึ่งของสิ่งที่ภาษาที่คุณต้องการรูปแบบที่คุณจะได้พบกับการเยื้อง เลือกสมาร์ทและมันจะเปิดใช้งานการจัดรูปแบบอัตโนมัติทุกครั้งที่คุณใช้องค์ประกอบการปิดหนึ่งอย่าง )} ภายในบล็อกนั้น

ไม่จำเป็นต้องมีการกดแป้น


1
สิ่งนี้ไม่ปรับปรุงโค้ด "ทำให้ยุ่งเหยิง" ในขณะที่ VB.NET ทำสิ่งนี้
tmighty

5

คุณสามารถเพิ่มปุ่มลงในแถบเครื่องมือของคุณได้โดยคลิกที่ลูกศรดรอปดาวน์ทางด้านขวาของปุ่มแถบเครื่องมือสุดท้ายเลือก "เพิ่มหรือลบปุ่ม" แล้วคลิกปุ่มที่คุณต้องการเพิ่มเครื่องหมาย ปุ่มที่คุณเลือกจะปรากฏบนแถบเครื่องมือของคุณ ...

ป้อนคำอธิบายรูปภาพที่นี่

จากนั้นคุณเพียงเลือกข้อความและคลิกปุ่มเพิ่มการเยื้องหรือลดการเยื้องปุ่ม ฉันทดสอบสิ่งนี้ใน Visual Studio 2013 เท่านั้น



5

คำถามเดิมกล่าวว่า "ฉันไม่พบการตั้งค่า"

คำตอบง่ายๆคือ: ดูเมนูด้านบนแล้ว

แก้ไข -> ขั้นสูง -> จัดรูปแบบเอกสาร

คุณจะเห็นการกดปุ่มที่กำหนดในปัจจุบันสำหรับฟังก์ชันนั้น ไม่มีอะไรพิเศษที่จะท่องจำ สิ่งนี้จะช่วยได้มากหากคุณใช้สภาพแวดล้อมของนักพัฒนาหลาย ๆ ระบบบนระบบปฏิบัติการที่แตกต่าง


5

เลือกข้อมูลและคลิกขวาแล้วคุณจะพบตัวเลือกนี้ จัดรูปแบบเอกสารและเลือกรูปแบบ

เห็นภาพนี้


หัวข้อนี้เป็นเรื่องเกี่ยวกับ Visual Studio ความคิดเห็นของคุณพูดถึง Visual Studio Code
S. ten Brinke

4

ในเวอร์ชันที่ใหม่กว่าช็อตคัตสำหรับการจัดรูปแบบทั้งเอกสารคือ: Shift+ Alt+F


2

เพียงเพื่อเพิ่มเติมคำตอบของStarwfanaticและEwanด้านบน คุณสามารถปรับแต่ง IDE ของคุณเพื่อเพิ่มใด ๆปุ่มเพื่อใด ๆแถบเครื่องมือ - เพื่อให้คุณสามารถเพิ่มปุ่มรูปแบบ (เป็นแถบเครื่องมือ HTML แหล่งที่มาของการแก้ไขมี) ไปยังแถบเครื่องมืออื่น ๆ (เช่นการแก้ไขข้อความที่มีทั้งหมดที่แก้ไขอื่น ๆ เช่นการควบคุมการเพิ่มขึ้น / ลดลงเยื้อง)

คลิกที่ลูกศรทางด้านขวาของแถบเครื่องมือ> เพิ่มหรือลบปุ่ม> ปรับแต่ง ... > แท็บคำสั่ง> ปุ่มเพิ่มคำสั่ง ...

รูปแบบเอกสารและรูปแบบการเลือกอยู่ภายใต้กลุ่มแก้ไข

(ทดสอบใน VS2010 และ VS2013)


2

ใน VS 2019 "การล้างรหัส" (RunDefaultCodeCleanup) เป็นขั้นสูง (นำมาจาก ReSharper): Ctrl + K, Ctrl + E

กล่องโต้ตอบตัวเลือก: ตัวแก้ไขข้อความ> C #> ลักษณะรหัส> การจัดรูปแบบ

การตั้งค่าการจัดรูปแบบอัตโนมัติใน Visual Studio


1

ด้วยส่วนขยายการจัดรูปแบบต่อเนื่อง (เชิงพาณิชย์พัฒนาโดยฉัน) รหัสจะถูกจัดรูปแบบโดยอัตโนมัติเมื่อคุณพิมพ์


ดีมากและควรรวมอยู่ใน VS เป็นค่าเริ่มต้น แต่ราคาสูงเกินไป สำหรับ 19 €ฉันจะได้กล่าวว่า "ยอดเยี่ยม!"
tmighty

1

ฉันมี Mac และฉันคลิกรหัส> การตั้งค่า> การตั้งค่า> พื้นที่ทำงาน> การจัดรูปแบบจากนั้นเลือกรูปแบบเมื่อบันทึกรูปแบบในการบันทึก

ตอนนี้ทุกครั้งที่ฉันกดcmd+ sมันจะจัดรูปแบบไฟล์โดยอัตโนมัติ

ป้อนคำอธิบายรูปภาพที่นี่


2
แม้ว่าฉันจะไม่มี Mac (และดังนั้นบางที Visual Studio บน Mac จะดูเหมือน VS Code หรือไม่) คำตอบ / สกรีนช็อตของคุณสำหรับ VS Code ไม่ใช่ Visual Studio ซึ่งเป็นสิ่งที่ OP กำลังถาม
เกร็ก L

1

Visual Studio Extension - CodeMaidค่อนข้างใช้ได้


ไม่พบส่วนขยาย
Sushan


1
ด้วยส่วนขยายนี้คุณสามารถคลิกขวาที่โฟลเดอร์และล้างรหัสทั้งหมดในไฟล์ทั้งหมดในนั้นได้อย่างสะดวก
xinthose

0

การตัด / วางส่วนเป็นอีกหนึ่งวิธีที่รวดเร็ว (และง่ายต่อการจดจำ)


2
... ? ที่ไม่ได้จัดรูปแบบอะไรสำหรับฉัน ในความเป็นจริงเหตุผลที่ผมมองขึ้นไปนี้คือรูปแบบหลังจากตัดและวาง ..
tenwest

นั่นไม่ได้ฟอร์แมตโค้ดของคุณด้วยการตั้งค่า defatult บางทีคุณอาจมีการตั้งค่า / ปลั๊กอินที่ทำงานหลังจากวาง สูงถึงพฤศจิกายน 2018 (v 1.30.2) SHIFT + ALT + F
ปาโบล

0

หากคุณสามารถจ่ายได้ (หรือถ้าคุณมีสิทธิ์ได้รับการทดลองใช้ฟรี 30 วัน) Jetbrains ReSharperสามารถจัดรูปแบบไดเรกทอรีโครงการใหม่ทั้งหมด

เพียงติดตั้ง -> คลิกขวาที่ไดเรกทอรี -> เลือกรหัสการล้างข้อมูลจากเมนูบริบท


0
#include "stdafx.h"
#include <stdio.h>


int main(){
    char filename[15];

    printf("Enter file name:");
    scanf("%s", filename);
    Automat(filename);
    freq(filename);
}

int Automat(char filename[]){

    FILE*fp;
    char c;
    int state = 1;
    int duma = 0;
    fp = fopen(filename, "r");
    if (fp == NULL){
        printf("Error");
        system("pause");
    }
    while (!feof(fp)){
        c = fgetc(fp);

        switch (state){
        case 1:
            if (c == '\t' || c == '\n' || c == ' '){
                state = 3;
                break;
            }
        case 2:
            if (c >='A'|| c<='Z'){
                break;
            }

        case 3: duma++;
            state = 1;
            break;
        }
    }
    printf("Broq e : %d\n", duma);
    return 1;
}
int freq(char filename[]){

    FILE*fp;
    char c;
    int state = 1, sequence = 0;
    fp = fopen(filename, "r");
    if (fp == NULL){
        printf("Error");
        system("pause");
    }



    while (!feof(fp)){
        c = fgetc(fp);
        switch (state){
        case 1:
            if (c >= 'A' && c <= 'Z'){
                state = 2;
                break;
            }

        case 2:
            if (c == '\t' || c == '\n'||c == ' '){
                sequence++;
                state = 1;
                break;

            }
        }

    }
    printf("Sequence is : %d\n", sequence);
}

1
@Robson สำหรับบางสิ่งเช่นนั้นมันอาจจะดีกว่าถ้าคุณส่งการแก้ไขที่แนะนำ คุณสามารถไฮไลต์รหัสทั้งหมดแล้วกด Ctrl-K และมันจะเยื้องโดยอัตโนมัติ
EJoshuaS - คืนสถานะโมนิก้า

0

คุณยังสามารถลองใช้ตัวเลือกเมนูคลิกขวาเพื่อจัดรูปแบบการเลือกเอกสารการเข้ารหัส ลองดูที่ภาพหน้าจอด้านล่าง

ป้อนคำอธิบายรูปภาพที่นี่


0

เลือกข้อความที่คุณต้องการเยื้องโดยอัตโนมัติ

คลิกการเลือกรูปแบบในการแก้ไขขั้นสูงหรือกด CTRL + K, CTRL + F การเลือกรูปแบบใช้กฎการเยื้องที่ชาญฉลาดสำหรับภาษาที่คุณกำลังเขียนโปรแกรมกับข้อความที่เลือก

ขั้นตอน (1): - CTRL + A

ขั้นตอน (2): - CTRL + K

ขั้นตอนที่ (3): - CTRL + F



-1

ใน Visual Studio 2015 และ 2017 สำหรับรหัส c # 1) เลื่อนไปยังจุดสิ้นสุดของไฟล์ 2) ลบ "Curly Bracket" สุดท้าย}} 3) รอจนกระทั่งบรรทัดด้านบนแสดงข้อผิดพลาด 4) แทนที่ "FINAL Bracket"} :)

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