ฉันเพิ่งเริ่มใช้ตัวแก้ไขรหัส Visual Studio ฉันรักมันจริง ๆ แต่มีคุณลักษณะที่สำคัญอย่างหนึ่ง (สำหรับฉัน) ที่ฉันไม่สามารถหาได้ มีรายการวิธีการคล้ายกับเนวิเกเตอร์ใน NetBeans หรือสมาชิกแบบเลื่อนลงใน Visual Studio หรือไม่?
ฉันเพิ่งเริ่มใช้ตัวแก้ไขรหัส Visual Studio ฉันรักมันจริง ๆ แต่มีคุณลักษณะที่สำคัญอย่างหนึ่ง (สำหรับฉัน) ที่ฉันไม่สามารถหาได้ มีรายการวิธีการคล้ายกับเนวิเกเตอร์ใน NetBeans หรือสมาชิกแบบเลื่อนลงใน Visual Studio หรือไม่?
คำตอบ:
ใช่มีworkbench.action.gotoSymbol
คำสั่ง บน Windows และ Linux จะตั้งค่าเป็นCTRL+ Shift+ Oตามค่าเริ่มต้น
ถ้าคำสั่งนี้ไม่สามารถใช้ได้สำหรับประเภทไฟล์ที่คุณกำลังทำงานกับแล้วคุณควรจะดูที่เป็นส่วนขยาย VSCode บางภาษารองรับคุณสมบัตินี้
:
หลังจากCtrl+ Shift + O
ผลลัพธ์จะถูกจัดกลุ่มตามประเภทซึ่งจะแสดงรายการฟังก์ชันทั้งหมดในรายการย่อยเดียว
ปรับปรุง : ตามที่ระบุไว้ในการแสดงความคิดเห็นโดย @ เจฟฟ์-xiao ส่วนขยายนี้จะเลิกและก็ตอนนี้สร้างขึ้นในลักษณะของภาพรหัสสตูดิโอ มันควรจะอยู่ที่ด้านล่างของ file explorer เป็นมุมมอง "เค้าร่าง"
ข้อความก่อนหน้า: ขณะนี้มีส่วนขยายที่รองรับสิ่งนี้ Code Outlineสร้างพาเนลในส่วน "Explorer" และสำหรับ JavaScript จะแสดงรายการตัวแปรและฟังก์ชั่นในไฟล์ ฉันใช้มันมาระยะหนึ่งแล้วและมันก็ทำให้เกิดรอยคันที่ฉันมีอยู่ นักวิจารณ์คนอื่นพูดถึงว่ามันรองรับ Python และ PHP ได้ดี
ดูเหมือนว่าจะยังอยู่ในการพัฒนา แต่ฉันไม่ได้มีปัญหาใด ๆ รุ่นพัฒนาที่มีอยู่บน GitHub หากคุณเป็นผู้เขียนอ่านนี้ - ขอบคุณ!
เรียกใช้Go to symbol
คำสั่งของ Code :
macOS: cmd+ shift+ o(ตัวอักษรo
ไม่ใช่ศูนย์)
Windows / Linux: ctrl+ shift+o
พิมพ์เครื่องหมายโคลอน ( :) หลังจากเรียกใช้Go to symbol
จะจัดกลุ่มสัญลักษณ์ตามประเภท (คลาส, อินเทอร์เฟซ, วิธีการ, คุณสมบัติ, ตัวแปร) จากนั้นเลื่อนไปที่methods
ส่วน
มีรีลีสใหม่ที่สามารถทำเช่นนั้นได้! ตรวจสอบบันทึกย่อประจำรุ่นล่าสุดเกี่ยวกับร่างรหัสได้ที่นี่
ในVSCode 1.24คุณสามารถทำได้
คลิกขวาที่แถบด้านข้างและการตรวจสอบEXPLORER
Outline
UPDATE:ขณะนี้คุณลักษณะส่วนขยายอยู่ในตัวแล้วและส่วนขยายนั้นเลิกใช้แล้ว
ฉันได้พบ extention นี้เค้าร่างรหัส นี่คือลักษณะ:
ฉันเชื่อว่าเป็นสิ่งที่คุณมองหา
ไม่มีฟีเจอร์ดังกล่าวในวันนี้CTRL+ SHIFT+ O== CTRL+ P@ ไม่สามารถใช้ได้กับทุกภาษา
เป็นทางเลือกสุดท้ายคุณสามารถใช้แผงการค้นหา - แม้ว่ามันจะไม่ได้ใช้งานง่ายอย่างที่คุณต้องการคุณสามารถป้อน regex นี้ในแผงการค้นหาเพื่อค้นหาฟังก์ชั่นทั้งหมด:
function\s([_A-Za-z0-9]+)\s*\(
สำหรับผู้ใช้ PHP :)
ตรวจสอบให้แน่ใจว่าคุณมีปลั๊กอิน ' สัญลักษณ์ PHP ' จากนั้นคุณสามารถรับเมธอดและคลาสทั้งหมดได้ที่ ' OUTLINE ' แถบด้านล่าง
กด⌘ command+ ⇧ shift+ Oใน "macOS" หรือCtrl+ Shift+ Oขณะใช้ "Windows"
มันเป็นส่วนเพิ่มเติมของคำตอบสำหรับคำถามนี้ที่นี่ แต่ฉันคิดว่ามันอาจมีประโยชน์ ตามที่หลายคนพูดถึง Visual Studio Code มีส่วนOUTLINEซึ่งให้ความสามารถในการเรียกดูฟังก์ชันที่แตกต่างและแสดงไว้ที่ด้านข้าง
ฉันต้องการเพิ่มว่าถ้าคุณตรวจสอบเครื่องหมายเคอร์เซอร์ติดตามมันจะเน้นชื่อฟังก์ชั่นนั้นในมุมมอง OUTLINE ซึ่งมีประโยชน์มากในการเรียกดูและดูฟังก์ชันที่คุณใช้
ตลาดรหัส Visual Studio มีส่วนขยายที่ดีมากชื่อGo To Methodสำหรับการนำทางเฉพาะวิธีในไฟล์รหัส
กดCtrl+ Shift+ Pและพิมพ์install extensions
และกด Enter
ตอนนี้พิมพ์Add to method
ในช่องค้นหาของส่วนขยายตลาดแล้วกด Enter
คลิกinstallเพื่อติดตั้งส่วนขยาย
ขั้นตอนสุดท้ายคือการผูกแป้นพิมพ์ลัดเข้ากับคำสั่งworkbench.action.gotoMethod
เพื่อทำให้มันเป็นผลผลิตที่แท้จริงสำหรับนักพัฒนา
สัญลักษณ์เปิดตามชื่อ : CTRL+ T อาจเป็นสิ่งที่คุณกำลังมองหา ทำงานได้อย่างสมบูรณ์กับโครงการ TypeScript ของฉัน
ในปี 2020 เวอร์ชั่นของ VSCode
Cmd+P
ctrl+shift+o // This should work for javascript files by default
สำหรับ PHP ติดตั้งส่วนขยายPHP SYMBOLS
สำหรับ PYTHON ให้ติดตั้งPYTHONส่วนขยาย
ในการโหลดซ้ำสิ่งนี้จะทำงานได้ดี
Ctrl+P
และพิมพ์ได้@
- ซึ่งจะแสดงรายการฟังก์ชั่น / สัญลักษณ์ทั้งหมดในไฟล์ และเมื่อพิมพ์@function_name
จะค้นหาสตริงฟัซซี่บนสัญลักษณ์
CTRL+ F12( CMD+ F12สำหรับ Mac) - เปิดสำหรับฉันทุกวิธีและสมาชิกในคลาส PHP
มีปลั๊กอินที่เรียกว่าแสดงฟังก์ชั่นซึ่งแสดงรายการคำจำกัดความของฟังก์ชั่นทั้งหมดในไฟล์ นอกจากนี้ยังช่วยให้คุณสามารถจัดเรียงฟังก์ชั่นเพื่อให้สามารถค้นหาได้อย่างง่ายดาย
ลองดูที่Show Functions
ปลั๊กอิน มันสามารถแสดงฟังก์ชั่นสัญลักษณ์ที่คั่นหน้าโดยการแสดงออกปกติที่กำหนด นิพจน์ทั่วไปนั้นเป็นตัวช่วยที่แท้จริงโดยเฉพาะอย่างยิ่งเมื่อคุณไม่ได้ใช้ภาษากระแสหลักและเมื่อ CodeOutline ไม่ทำงาน มันน่าเกลียดที่จะเห็นหน้าต่างที่แยกจากกันด้วยฟังก์ชั่นเหล่านี้ (CodeOutline ดูเหมือนว่าจะรวมได้ดีกว่า) แต่อย่างน้อยก็มีบางอย่างที่จะใช้