ฉันสามารถบันทึก / เล่นมาโครใน Visual Studio 2012/2013/2015/2017/2019 ได้หรือไม่


194

เห็นได้ชัดว่ามาโครถูกดร็อปจาก Visual Studio 2012

มีปลั๊กอิน / ส่วนขยาย / เครื่องมือที่จะให้ฉันบันทึก & เล่นแป้นพิมพ์มาโคร (เหมือนแมโครบันทึก / เล่นชั่วคราวใน Visual Studio 2010) หรือไม่

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


1
ดูเหมือนว่าคุณอาจต้องการดูเทมเพลต T4 อย่างน้อยก็สำหรับสถานการณ์การสร้างรหัสของคุณ
จอห์นแซนเดอร์

Visual Studio 2012 และมาโคร - viva64.com/th/b/0175

2013 ยังไม่รองรับมาโคร! - ดู bharry blogs.msdn.com/b/bharry/archive/2013/06/03/…
laktak

3
อัพเดท: พวกเขากลับมาแล้ว! ส่วนขยายใหม่สำหรับ VS2013 ได้รับการเผยแพร่เพื่อให้ผู้ใช้ "บันทึกคำสั่งส่วนใหญ่ใน Visual Studio รวมถึงการแก้ไขข้อความ" (รายละเอียดที่นี่: visualstudiogallery.msdn.microsoft.com/… )
kmote

1
ควรอ่านเกี่ยวกับปฏิกิริยาของJon Robbins
เจสันอีแวนส์

คำตอบ:


177

คุณสามารถลองมาโครข้อความสำหรับส่วนขยายVisual Studio 2012-2019 (ฉันเป็นผู้เขียน) โดยพื้นฐานแล้วมันทำสิ่งเดียวกันกับมาโคร Notepad ++ (การแก้ไขข้อความไม่มีระบบอัตโนมัติ UI)

รหัสนี้เป็นโอเพ่นซอร์ส ( GitHub ) ดังนั้นอย่าลังเลที่จะมีส่วนร่วมในการปรับปรุง :-)


20
+1 พระเจ้าอวยพรคุณ เพียงไม่กี่นาทีที่ผ่านมาฉันรู้สึกตกใจเมื่อพบว่ามีการละเว้นมาโครของ VS2012 และคุณโพสต์เมื่อ 11 ชั่วโมงก่อนที่ฉันจะมาที่นี่!
Shaul Behr

3
Xavier ฉันเพิ่งติดตั้งส่วนขยายของคุณและสิ่งหนึ่งที่ขาดหายไปคือการรองรับการค้นหาการดำเนินการ (เช่น F3 เพื่อค้นหาข้อความถัดไป) สิ่งนี้มีประโยชน์มากสำหรับการใช้งานกับข้อความซึ่งคุณไม่สามารถใช้โดยการเลื่อนเคอร์เซอร์มาตรฐาน มีโอกาสเพิ่มหรือไม่
pxb

2
@ pxb จุดดีฉันไม่เคยคิดว่าจะใช้สิ่งเหล่านี้ แต่ฉันเห็นว่ามันมีประโยชน์ ฉันได้สร้างปัญหาขึ้นมาแล้วและจะพิจารณาอย่างแน่นอน
Xavier Poinas

! น่ากลัว ขอบคุณมาก. ฉันกำลังจะตายโดยไม่มีการสนับสนุนมาโคร
Sam Woods

ฉันรักมัน! มันดีกว่าการใช้แมโครช้าใน VS2010!
Vlad Iliescu

160

ใน Visual Studio รุ่นนี้ในขณะที่มีคุณสมบัติหลายร้อยตัว แต่ก็มีบางส่วนที่เรานำไปใช้จริง หนึ่งในนั้นคือคุณสมบัติการทำงานอัตโนมัติของแมโครรวมถึงการบันทึก / เล่นซ้ำแมโครโครงการแมโครและ Macros IDE แม้ว่าเราจะรู้ว่ามาโครนั้นมีค่าสำหรับผู้ที่ใช้งาน แต่น่าเสียดายที่ข้อมูลการใช้งานของเราแสดงให้เห็นว่านักพัฒนา Visual Studio น้อยกว่า 1% ใช้ประโยชน์จากคุณลักษณะนี้ ดังนั้นเราจึงพบว่าเราลงทุนอย่างลึกซึ้งยิ่งขึ้นในพื้นที่ Visual Studio ที่ใช้งานทุกวันและยังไม่ได้อัปเดตมาโครสำหรับหลาย ๆ รุ่น

ที่มา: แมโครใน Visual Studio 11 Developer Preview

ฉันเริ่มที่จะแก้ไขปัญหานี้ (แม้ว่าจะไม่สะดวก) โดยการตัด / วางลงในแผ่นจดบันทึก ++บันทึกและเรียกใช้แมโครที่นั่นแล้วตัด / วางกลับเข้าไปใน Visual Studio 2012


187
การตัดโค้ดออกจาก IDE ระดับโลกของคุณเพื่อวางลงใน Notepad ++ เพื่อบันทึกและเล่นแมโครอย่างง่ายคือ Microsoft Fail ที่ชัดเจน อย่างไรก็ตามฉันเห็นด้วยว่านี่เป็นวิธีแก้ปัญหาที่ง่ายที่สุดในปัจจุบัน เศร้า แต่จริง
mattmc3

69
ทำน้อยกว่า 1% แน่นอนนักพัฒนาทุกคน (VS / C #) ฉันรู้ว่าได้ใช้มาโครฉันไม่เห็นด้วยทุกวัน
Sanjeevakumar Hiremath

13
อีกเหตุผลที่จะยึดติดกับ VS2010 - หรือขอให้นำมันกลับมาที่นี่visualstudio.uservoice.com/forums/121579-visual-studio/ ......
มิสเตอร์คุก

14
ไม่น่าเชื่อ ... 1% ??? มันไม่เป็นความจริง! คุณสมบัตินี้จะต้องเพิ่มเข้ามาอีกครั้ง - ฉันใช้มาโครอย่างต่อเนื่องในปี 2010
Rockdocta

44
@SanjeevakumarHiremath ฉันยอมรับว่าตัวเลขฟังก์ชั่นต่ำ (ไม่แน่ใจว่ามันถูกสร้างขึ้นมา) แต่นี่เป็นข้อโต้แย้งในการตรวจสอบกล่องเสมอเมื่อคุณติดตั้งผลิตภัณฑ์ Microsoft ที่ระบุว่า "ส่งสถิติการใช้งานที่ไม่ระบุชื่อเพื่อช่วยให้ผลิตภัณฑ์ MS ดีขึ้น"
Michael

48

โดดเด่นและโหวตให้นำมาโครกลับมาแล้ว!

http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/2650757-bring-back-macros

อัพเดท (10/4/2556):

เย้! ขอบคุณคะแนนของคุณตอนนี้มาโครได้รับการพิจารณาสำหรับการกลับมา! ผลักดันต่อไป!

ขณะนี้เรากำลังตรวจสอบความเป็นไปได้ของการส่งมอบความสามารถในการเขียนสคริปต์ใน Visual Studio รุ่นในอนาคต โปรดแสดงความคิดเห็นของคุณเกี่ยวกับความสามารถในการเขียนสคริปต์ที่เราควรเสนอในขณะที่เราทำการวิจัยข้อเสนอแนะนี้

Tony Goodhew ผู้จัดการโครงการ VS Pro


1
โหวต +3 แม้ว่าฉันจะทำเช่นเดียวกันสำหรับการสนับสนุนบลูทู ธ SPP ใน WP7 (ซึ่งเป็นคุณสมบัติที่ขอ # 1) และใช้เวลากว่าสองปีในการติดตั้ง SPP รุ่นที่ จำกัด :(
eduncan911

24

ตั้งแต่ใช้Sublime Textฉันพบว่ามีวิธีที่ดีกว่าในการแก้ไขข้อความมากกว่าการใช้มาโคร

ประเสริฐช่วยให้คุณสามารถแก้ไขข้อความของคุณด้วยเคอร์เซอร์หลายรายการในครั้งเดียว เป็นการยากที่จะอธิบาย แต่มีภาพเคลื่อนไหวหลายอย่างที่แสดงให้เห็นที่http://www.sublimetext.com

ภาพหน้าจอประเสริฐ

ฉันได้เพิ่ม Sublime เป็นเครื่องมือภายนอกใน Visual Studio:

  • เปิดเครื่องมือ / เครื่องมือภายนอก
  • เพิ่ม: ประเสริฐเลือก exe และใช้อาร์กิวเมนต์เหล่านี้: $ (ItemPath): $ (CurLine): $ (CurCol)
  • (เลื่อนไปยังด้านบนเนื่องจากจะทำให้ขั้นตอนต่อไปง่ายขึ้นมิฉะนั้นจำตำแหน่งของมันได้)
  • จากนั้นไปที่การปรับแต่ง / คีย์บอร์ดค้นหา Tools.ExternalCommand1 และเพิ่มแป้นพิมพ์ลัดที่คุณต้องการ

สิ่งนี้จะเปิดเอกสารปัจจุบันใน Sublime ที่ตำแหน่งเคอร์เซอร์เดียวกับที่คุณอยู่ใน VS

(เช่นกัน Sublime สามารถทำมาโครได้ในกรณีที่คุณยังต้องการ)


3
นี่คือส่วนขยายที่ยอดเยี่ยมสำหรับ VS2012 + ที่เพิ่มการแก้ไขประเภทนี้มันมีประโยชน์กับฉันมาก: visualstudiogallery.msdn.microsoft.com/…
Duane

2
ดังกล่าวมีบางครั้งที่แมโครใช้งานได้สะดวกเช่นต้องดำเนินการเหมือนกันในหลายไฟล์
Duane

19

มาโครกลับมาแล้ว!

ภายใต้การตรวจสอบ→เสร็จสมบูรณ์

เราได้ยินความคิดเห็นของคุณดังและชัดเจนและเรากำลังดำเนินการแก้ไขปัญหาอยู่ เรามีความยินดีเป็นอย่างยิ่งที่จะประกาศว่าขณะนี้เราได้เปิดตัวมาโครรุ่นที่รองรับทั้ง Visual Studio 2015 และ Visual Studio 2013

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

สำหรับข้อมูลเพิ่มเติมดูโพสต์บล็อกที่นี่: http://aka.ms/vsmacros

เรายังเปิดรหัสที่มาภายใต้ใบอนุญาต MIT หากคุณมีข้อเสนอแนะหรือมีส่วนร่วมอย่าลังเลที่จะสร้างปัญหาหรือคำขอดึงใน repo GitHub ใหม่: http://github.com/Microsoft/VS-Macros

Justin Clareburt ผู้จัดการโครงการอาวุโส

มาโครสำหรับ Visual Studio

มาโครสำหรับ Visual Studio เป็นส่วนเสริมสำหรับ Visual Studio 2013 และ Visual Studio 2015 ที่ช่วยให้การใช้มาโครในการทำงานซ้ำ ๆ โดยอัตโนมัติใน IDE นามสกุลสามารถบันทึกคำสั่งส่วนใหญ่ใน Visual Studio รวมถึงการแก้ไขข้อความ คุณสมบัติ

  • บันทึกและเล่นการใช้งานเอกสารและคำสั่ง Visual Studio IDE
  • เล่นได้หลายครั้ง
  • จัดการและคงอยู่แมโครด้วย Macro Explorer
  • กำหนดการผูกคีย์บอร์ดให้กับแมโครใดก็ได้
  • แมโครถูกบันทึกเป็นไฟล์ JavaScript ที่เรียกใช้ VS DTE API
  • การแก้ไขมาโครใน Visual Studio พร้อม DTE IntelliSense
  • หยุดเล่น
  • ตัวอย่างแมโคร

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


ปลั๊กอินนี้เป็นรถมาก ในที่สุดฉันก็สามารถใช้งาน VS2017 ได้ในที่สุด แต่มันก็หยุดทำงานสองสามชั่วโมงต่อมา ความคิดเห็นส่วนใหญ่เป็นลบ
StuartN

โปรดทราบว่าในขณะที่ซอร์สโค้ดเป็นโอเพ่นซอร์ส "ส่วนขยายนี้ถูกสร้างขึ้นครั้งแรกโดยกลุ่มของฝึกงานในทีม Visual Studio มันไม่ได้รับการบำรุงรักษาอีกต่อไป"
Yann Duran

16

Visual Commander extension (พัฒนาโดยฉัน) รองรับการแก้ไขโค้ดการบันทึกแมโครและการเล่นใน Visual Studio 2015/2017/2019


ส่วนขยายนี้ยอดเยี่ยมมาก! มันเป็น GreaseMonkey สำหรับ Visual Studio! ฉันทำงานได้ดีกับมัน (ทำให้ WebEssentials รวบรวมไฟล์ LESS ทั้งหมดในโครงการของฉัน) และยังทำลายความเสียหายบางส่วนให้กับโครงการด้วย! ขอบคุณมากสำหรับซอฟต์แวร์ชิ้นนี้
Ashraf Sabry

ฉันลองกับ VS2015 แล้วมันก็ไม่ได้บันทึกการกระทำของแทนที่: '(
Gabrielizalo

5

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

https://visualstudiogallery.msdn.microsoft.com/d3fbf133-e51b-41a2-b86f-9560a96ff62b

ฉันขอแนะนำให้ยังคงลงคะแนนสำหรับคุณสมบัติเพื่อกระตุ้นให้พวกเขาสร้างส่วนขยายสำหรับ Visual Studio 2015 ด้วย: https://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/2650757-bring-back- แมโคร


ฟังดูดีทีเดียว แต่ปุ่ม CTRL-M, P ถูกผูกไว้กับ "หยุดการสรุป" แม้หลังจากลบการเชื่อมโยงนี้แล้วการเล่นเริ่มต้นจะไม่ทำงาน
Wheezil


2

VSScriptอนุญาตให้บันทึกเขียนและแก้ไขมาโครในLuaแม้ว่าฉันยังไม่สามารถใช้งานกับ Visual Studio 2015 ได้ (ปุ่มคำสั่งเป็นสีเทาและเอกสารรองรับ Visual Studio 2005 ถึง 2015 RC)

ปัจจุบันมีการเปิดตัวเป็นฟรีแวร์


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