มีทางลัดในการสร้างบล็อกความคิดเห็นใน Xcode หรือไม่


153

ฉันกำลังเขียนโค้ด C ที่เข้ากันได้กับ ANSI และด้วยเหตุนี้ฉันจึงไม่สามารถใช้//ความคิดเห็นline ( ) ฉันใช้ Xcode ใน Sublime Text และ Eclipse และฉันคิดว่า IDE อื่น ๆ ส่วนใหญ่จะมีแป้นพิมพ์ลัดแยกต่างหากสำหรับความคิดเห็นในบรรทัดและบล็อกความคิดเห็น ( /**/) อย่างไรก็ตามฉันไม่เห็นว่าใน Xcode ที่จริงแล้วฉันไม่เห็นตัวเลือกเมนูเพื่อเพิ่มความคิดเห็นบล็อก มันไม่รองรับ Xcode หรือเปล่า? แน่นอนว่ามันจะเป็นการตัดสินใจที่อ่อนแอถ้าเป็นเช่นนั้น

คำตอบ:


232

ลอง+command /มันใช้งานได้สำหรับฉัน

ดังนั้นคุณเพียงแค่ไฮไลต์บล็อกของรหัสที่คุณต้องการแสดงความคิดเห็นและกดสองปุ่มเหล่านั้น


13
@Nizam เพียงกดCommand+ Shift+ 7คือCommand+ /อีกครั้ง
muenchdo

41

UPDATE:

ตั้งแต่ฉันขี้เกียจและไม่ได้ใช้โซลูชันของฉันอย่างเต็มที่ฉันจึงค้นหาและพบBlockComment สำหรับ Xcodeปลั๊กอินที่เพิ่งเปิดตัว ( มิถุนายน 2017 ) ไม่ต้องกังวลกับโซลูชันของฉันปลั๊กอินนี้ทำงานได้อย่างสวยงามและฉันขอแนะนำอย่างยิ่ง

คำตอบเดิม:

ข้อใดข้อหนึ่งข้างต้นไม่ได้ผลกับฉันในXcode 7และ8ดังนั้นฉัน:

  1. บริการAutomator ที่สร้างโดยใช้AppleScript
  2. ตรวจสอบให้แน่ใจ "แทนที่ข้อความที่เลือกเอาท์พุท" คือการตรวจสอบ
  3. ใส่รหัสต่อไปนี้:

    on run {input, parameters}
    return "/*\n" & (input as string) & "*/"
    end run

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

ตอนนี้คุณสามารถเข้าถึงบริการนั้นผ่าน Xcode - เมนูบริการหรือโดยคลิกขวาที่กลุ่มรหัสที่คุณต้องการแสดงความคิดเห็นหรือให้ทางลัดภายใต้การตั้งค่าระบบ


36

ขณะนี้มี xCode 8 ที่คุณสามารถทำได้:

+ +/

เพื่อสร้างความคิดเห็นเอกสารอัตโนมัติ

ที่มา: https://twitter.com/felix_schwarz/status/774166330161233920


1
สิ่งนี้ไม่ทำงานสำหรับฉันเมื่อใช้งานกับ Swift และกดตัวเลือกคำสั่ง / ฉันทำอะไรผิด? ฉันเพิ่งได้รับ\\\ Descriptionและไม่ได้บล็อก doc กับ @params ฯลฯ
Jonnny

เป็นเพราะฟังก์ชั่นของคุณไม่ได้ให้พารามิเตอร์ใด ๆ
Beninho85

23

ขณะนี้มีปลั๊กอิน Xcode ที่อนุญาตสิ่งนี้: CComment CComment

วิธีที่ง่ายที่สุดในการติดตั้งนี้คือการใช้ที่น่าตื่นตาตื่นใจผู้จัดการปลั๊กอิน Alcatraz สำหรับ Xcode

แก้ไข Apple ได้เศร้า (และผิด IMHO) ออกรุ่นปลั๊กอินเก่าด้วย Xcode 8 ระบบปลั๊กอินใหม่ค่อนข้าง จำกัด แต่ควรอนุญาตให้มีการพัฒนาปลั๊กอินเช่นนี้อีกครั้ง สำหรับทุกคนที่สนใจในการทำเช่นนี้ดูWWDC 2016 เซสชั่น 414 นอกจากนี้โปรดยื่น radarsสำหรับ API สำหรับปลั๊กอินที่คุณต้องการเขียนหรือดู


2
สิ่งนี้ไม่ทำงานจาก Xcode 6.3 (เวอร์ชัน 6.3.1 (6D1002)) เป็นต้นไป ไม่มีปลั๊กอินทำงาน
Abhishek Bedi

@AbhishekBedi ดูstackoverflow.com/questions/30361228/…สำหรับการแก้ไขปัญหาปลั๊กอินทั่วไปสำหรับรุ่น Xcode ใหม่
fzwo

12

อัปเดต: อัปเดต Xcode 8

ตอนนี้ด้วย xcode 8 คุณสามารถทำได้:

+ +/

หมายเหตุ: วิธีการด้านล่างจะไม่ทำงานใน xcode version => 8

ขั้นตอนง่าย ๆ ในการเพิ่มฟังก์ชั่น Block Comment ให้กับโปรแกรมแก้ไขของ mac OS X

  1. เปิดAutomator
  2. เลือกบริการ
  3. ค้นหาRun Shell Scriptแล้วดับเบิ้ลคลิก

เพิ่ม applescript ด้านล่างใน textarea

awk 'BEGIN{print "/*"}{print $0}END{print "*/"}'

apple script สำหรับบล็อกความคิดเห็น

  1. บันทึกสคริปต์เป็น Block Comment

เพิ่มแป้นพิมพ์ลัด

เปิดการตั้งค่าระบบ> แป้นพิมพ์> ทางลัดเพิ่มทางลัดใหม่โดยการคลิก+และชื่อเดียวกันเช่นBlock Commentที่คุณให้กับ applescript ในขั้นตอนที่ 4 เพิ่มแป้นพิมพ์ลัดของคุณแล้วคลิกปุ่มเพิ่ม

แป้นพิมพ์ลัดใหม่

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


@Baig สิ่งที่แปลกคือเมื่อฉันทดสอบในหน้าต่างแสดงผล Automator 'Run Shell Script' มันใช้งานได้ดี บางทีคำสั่งผสมคีย์ลัดของฉันกำลังถูกใช้งานอยู่และนี่อาจเป็นการปิดกั้นหรือไม่ แต่ฟังก์ชั่นเมนูบริบทไม่ทำงานเช่นกัน? นี่กำลังดักฟังฉันอยู่ ...
Charles Robertson

7

ฉันแก้ไขโค้ดของNikola Milicevicนิดหน่อยดังนั้นมันจึงลบ block comment หากมีการใส่รหัสไว้แล้ว:

on run {input, parameters}
    repeat with anInput in input
        if "/*" is in anInput then
            set input to replaceText("/*", "", input as string)
            set input to replaceText("*/", "", input as string)

            return input
            exit repeat
        end if
    end repeat
    return "/*" & (input as string) & "*/"
end run

on replaceText(find, replace, textString)
    set prevTIDs to AppleScript's text item delimiters
    set AppleScript's text item delimiters to find
    set textString to text items of textString
    set AppleScript's text item delimiters to replace
    set textString to "" & textString
    set AppleScript's text item delimiters to prevTIDs
    return textString
end replaceText

หวังว่านี่จะช่วยใครซักคนป้อนคำอธิบายรูปภาพที่นี่


7

ใน XCode 10 คุณสามารถใช้ option + command + backslash เพื่อเขียนความคิดเห็นที่สวยงามสำหรับฟังก์ชั่นหรือคลาสของคุณดังด้านล่าง:

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


6

คุณสามารถกำหนดสิ่งนี้ด้วยตัวคุณเองได้อย่างง่ายดายนี่คือคำอธิบายทีละขั้นตอน

1. ) ในไฟล์ xCode .m ของคุณให้พิมพ์สิ่งต่อไปนี้ไม่สำคัญว่าคุณพิมพ์ที่ใดตราบเท่าที่มันเป็นพื้นที่ว่างเปล่า

/*
*/

2. ) เน้นว่าโค้ดสองบรรทัดจากนั้นลากและวางลงบนพื้นที่ 'code snippet library' (อยู่ที่ด้านล่างของแผงยูทิลิตี้) เครื่องหมายบวกสีน้ำเงินจะปรากฏขึ้นหากคุณทำถูกต้อง

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

3. ) หลังจากคุณปล่อยมือจากปุ่มเมาส์ของคุณแล้วหน้าต่างใหม่จะปรากฏขึ้นและจะขอให้คุณเพิ่มชื่อทางลัด ฯลฯ ตามที่ปรากฏ. อย่างที่คุณเห็นฉันเพิ่มทางลัดไปที่ // ดังนั้นทุกครั้งที่ฉันต้องการบล็อกความคิดเห็นฉันจะพิมพ์ // หวังว่านี่จะช่วยได้

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


1

ฉันจัดการเพื่อให้ทำงานได้ดีผ่านงาน automator และใช้ทางลัดเพื่อผูกกับคีย์ผสม ctrl + ตัวเลือก + คำสั่ง + b สิ่งที่ฉันต้องทำคือไฮไลต์รหัสที่ฉันต้องการบล็อกความคิดเห็นใน xcode และกดปุ่มด้านบนและข้อความที่เลือกคือบล็อกความเห็นออกโดยใช้ / * ... * /

ฉันใช้การพับโค้ดอย่างยุติธรรมดังนั้นเหตุผลที่ฉันต้องการฟังก์ชั่นนี้คือเพื่อให้ฉันสามารถพับบล็อกของโค้ดที่ถูกคอมเม้นต์ได้อย่างง่ายดาย ... รหัสให้ความเห็นตามปกติโดยใช้ // ไม่ต้องพับ

ฉันไม่คุ้นเคยกับการใช้ mac automator แต่ฉันเพียงแค่ติดตาม instrux ในวิดีโอ wwdc ต่อไปนี้

ในวิดีโอ WWDC 2012 เซสชัน 402 - ทำงานอย่างมีประสิทธิภาพด้วย Xcode (จากประมาณ 6 นาที) มีคำอธิบายเกี่ยวกับวิธีใช้ Mac OSX Automator เพื่อเพิ่มบริการเพื่อจัดการกับข้อความที่เลือก ตัวอย่างที่แสดงในวิดีโอคือการลบรายการที่ซ้ำกันในการเลือกข้อความโดยใช้การเรียงลำดับคำสั่งเชลล์และ uniq ใช้วิธีการนี้คุณทำเช่นเดียวกัน แต่คุณป้อนคำสั่งต่อไปนี้แทนสิ่งที่เขาทำในวิดีโอ

awk 'BEGIN {print "/ "} {พิมพ์ $ 0} END {print " /"}'

(โปรดทราบว่ามีเครื่องหมายดอกจัน 2 ตัวในบรรทัดก่อนหน้าซึ่งมีสาเหตุบางประการที่ไม่แสดง ... ด้วยเหตุผลดังกล่าวจะปรากฏในภาพหน้าจอด้านล่างเพื่อคัดลอกเป็นคำสั่งที่ถูกต้องเพื่อป้อน)

คุณควรจะใช้งานเชลล์สคริปแบบนี้

ภาพหน้าจอ

สำหรับข้อความที่เลือกให้ใส่ตัวคั่นความคิดเห็นก่อนและหลัง

เมื่อคุณบันทึกคุณควรได้รับตัวเลือกเพื่อตั้งชื่อ (ฉันเรียกว่า blockcomment) และเพื่อกำหนดแป้นพิมพ์ลัด

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

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

หวังว่านี่จะช่วยได้


0

มีสัญลักษณ์ก่อนเมนูวิธีใช้บน xcode ซึ่งมีสคริปต์ผู้ใช้แก้ไข ในการยกเลิกการเลือก / ความคิดเห็นภายใต้ความคิดเห็นให้เปลี่ยน $ cCmt = "//" ของฉัน; ถึง $ cCmt = "#" ของฉัน; หรืออะไรก็ตามที่ IDE ของคุณทำงานด้วย จากนั้นโดยการเลือกบรรทัดและคำสั่ง + / (มันเป็นค่าเริ่มต้นของฉัน xcode) คุณสามารถแสดงความคิดเห็นและยกเลิกหมายเหตุบรรทัดที่เลือก


0

@Nikola Milicevic

นี่คือภาพหน้าจอของปัญหาการเยื้อง นี่มันน้อยมาก แต่ก็แปลกที่มันทำงานได้ดีในภาพตัวอย่างของคุณ

ฉันกำลังเพิ่มภาพหน้าจอของการตั้งค่า Automator ของฉัน ...

ขอบคุณ

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

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

ปรับปรุง:

ถ้าฉันเปลี่ยนสคริปต์เล็กน้อยเป็น:

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

จากนั้นเลือกบรรทัดเต็มใน XCode ฉันได้ผลลัพธ์ที่ต้องการ:

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

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


0

หากคุณกำลังมองหาวิธีในการแปลงความคิดเห็นที่สร้างอัตโนมัติจากAdd Documentationการดำเนินการ (อยู่ภายใต้cmd- shift- /) คุณอาจพบว่ามันมีประโยชน์เช่นกัน:

function run(input, parameters) {
  var lines = input[0].split('\n');
  var line1 = lines[0];
  var prefixRe = /^( *)\/\/\/?(.*)/gm;
  var prefix = prefixRe.test(line1) ? line1.replace(prefixRe, "$1") : ""

  var result = prefix + "/*\n";  
  lines.forEach(function(line) {
    result += prefix + line.replace(prefixRe, "$2") + '\n';
  });
  result += '\n' + prefix + ' */';
  return result;
}

พักเช่นเดียวกับใน @Charles Robertson คำตอบ:

อัตโนมัติ

บริการ


0

ใน xcode 11.1 swift 5.0

เลือกรหัสที่คุณต้องการเพิ่มความคิดเห็นบล็อกแล้วกด + +/

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


-1

Cmd+ Shift+ 7จะแสดงความคิดเห็นบรรทัดที่เลือก


หมายถึงน่าจะเป็น+Cmd /มันดูเหมือนว่าอย่างน้อยรูปแบบแป้นพิมพ์ภาษาเยอรมันมี/ใน7ที่สำคัญ แต่ในรูปแบบของสหรัฐ/อยู่ในที่สำคัญของตัวเองโดยไม่ต้องมีการเปลี่ยนแปลง
Jake Cobb

ฉันมี/มากกว่า7ที่สำคัญในการจัดวางแป้นพิมพ์ภาษานอร์เวย์เช่นกัน แต่ก็ยังไม่ทำงาน .. ทางลัดนี้เพียงแค่เปิด-Help เมนู
Sti

-1

ใน Macbooks คุณสามารถใช้shift+ cmd+ 7เพื่อแสดงความคิดเห็นบล็อกที่เน้นไว้ก่อนหน้า


-11

ดูเหมือนว่าผู้คนจำนวนมากตอบคำถามนี้แล้ว

ใน Swift 3.0 ความคิดเห็นบรรทัดเดียวคือการใส่เครื่องหมายทับสองหน้าล่วงหน้า: "//"; multiline ถูกใส่ "/ * .... * /"

หวังว่านี่จะช่วยได้

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