Xcode'da bir blok yorumu yapmak için bir kısayol var mı?


153

ANSI uyumlu C kodu yazıyorum ve bu nedenle line ( //) yorumunu kullanamıyorum . Xcode kullanıyorum. Sublime Text ve Eclipse ve bence diğer çoğu IDE'de satır yorumları ve blok yorumları ( /**/) için ayrı klavye kısayolları vardır . Ancak, Xcode'da görmüyorum - aslında, bir blok yorumu eklemek için bir menü seçeneği bile görmüyorum. Xcode'da desteklenmiyor mu? Kesinlikle böyle bir karar yok gibi görünüyor.

Yanıtlar:


232

command+ ' Yı deneyin /. Benim için çalışıyor.

Yani, sadece yorum yapmak istediğiniz kod bloğunu vurgulayın ve bu iki tuşa basın.


13
@Nizam Tekrar Command+ Shift+ 7, yani Command+ tuşlarına basın /.
muenchdo

41

GÜNCELLEME:

Tembel olduğumdan ve çözümümü tam olarak uygulamadığımdan beri araştırdım ve yakın zamanda piyasaya sürülen bir eklenti olan Xcode için BlockComment'i buldum ( Haziran 2017 ). Çözümümle uğraşmayın, bu eklenti güzel çalışıyor ve kesinlikle tavsiye ederim.

ORİJİNAL CEVAP:

Yukarıdakilerin hiçbiri Xcode 7 ve 8'de benim için çalışmadı , bu yüzden ben:

  1. AppleScript kullanılarak oluşturulan Automator hizmeti
  2. "Çıktı seçili metnin yerini alıyor" seçeneğinin işaretli olduğundan emin olun
  3. Aşağıdaki kodu girin:

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

resim açıklamasını buraya girin

Artık bu hizmete Xcode - Services menüsü üzerinden veya yorum yapmak istediğiniz seçili kod bloğuna sağ tıklayarak veya Sistem Tercihleri ​​altında bir kısayol vererek erişebilirsiniz.



23

Bu sağlayan bir Xcode eklentisi artık yoktur: CComment .

Bunu kurmanın en kolay yolu, Xcode için inanılmaz Alcatraz eklenti yöneticisini kullanmaktır .

EDIT Apple ne yazık ki (ve yanlış bir şekilde IMHO) eski eklenti modelini Xcode 8 ile emekliye ayırdı. Yeni eklenti sistemi oldukça sınırlıdır, ancak böyle bir eklentinin tekrar geliştirilmesine izin vermelidir. Bunu yapmak isteyen herkes için WWDC 2016 oturum 414'ü izleyin . Ayrıca, yazmak veya görmek istediğiniz eklentiler için API için radarlar da gönderin.


2
Bu, Xcode 6.3 (Sürüm 6.3.1 (6D1002)) ve sonrasında çalışmaz. Hiçbir eklenti çalışmaz.
Abhishek Bedi

@AbhishekBedi Yeni Xcode sürümleri için genel eklenti sorun gidermesi için stackoverflow.com/questions/30361228/… adresine bakın .
fzwo

12

GÜNCELLEME: Xcode 8 Güncellemesi

Şimdi xcode 8 ile şunları yapabilirsiniz:

+ +/

Not: Aşağıdaki yöntem xcode sürümü => 8'de çalışmaz

Mac OS X'in herhangi bir düzenleyicisine Blok Yorumu işlevselliği eklemek için çok basit adımlar

  1. Automator'u
  2. Hizmet Seçin
  3. Arama Kabuk Betiği Çalıştır ve çift tıklayın

Aşağıdaki el yazısını textarea'ya ekleyin

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

blok yorum için elma komut dosyası

  1. Komut dosyasını farklı kaydet Block Comment

Klavye kısayolu ekle

Sistem Tercihi> Klavye> Kısayollar'ı açın , 4. adımda el yazısına +verdiğinizle aynı adı tıklatıp sağa tıklayarak yeni kısayol ekleyin Block Comment. Senin ekleyin Klavye Kısayol tıklamanız Ekle düğmesine.

Yeni klavye kısayolu

Artık Xcode veya başka bir düzenleyicide blok açıklamayı kullanabilmeli, bazı metinleri seçebilmeli, herhangi bir kod satırı veya sağ tıklamayı yorumlamak için kısayol tuşunuzu kullanabilmeniz, bağlam menüsü ve bu komut dosyasına verdiğiniz adın alt.


@Baig Garip olan şey, Automator 'Kabuk Betiğini Çalıştır' çıkış penceresinde test ettiğimde iyi çalışıyor olması. Belki, kısayol tuşu kombinasyonum zaten kullanılıyor ve bu onu engelliyor olabilir mi? Ancak, bağlam menüsü işlevselliği de çalışmıyor? Bu beni rahatsız ediyor ...
Charles Robertson

7

Kod zaten yorumlanmışsa, aynı zamanda yorum bloğunu da kaldırmak için Nikola Milicevic'in kodunu biraz değiştirdim :

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

Umarım bu birine yardımcı olur.resim açıklamasını buraya girin


7

XCode 10'da, işleviniz veya sınıfınız için aşağıdaki gibi güzel bir yorum yazmak için seçenek + komut + ters eğik çizgi kullanabilirsiniz:

resim açıklamasını buraya girin


6

Bunu kendiniz çok kolay bir şekilde atayabilirsiniz, işte adım adım bir açıklama.

1.) xCode .m dosyasında aşağıdakileri yazın, boş bir alan olduğu sürece nereye yazdığınız önemli değildir.

/*
*/

2.) İki kod satırını vurgulayın ve 'kod snippet kitaplığı paneli' alanına sürükleyip bırakın (bu, Yardımcı Programlar panelinin alt kısmındadır). Doğru yaparsanız açık mavi artı işareti görünür.

resim açıklamasını buraya girin

3.) Fare düğmesini bıraktıktan sonra, yeni bir pencere açılacak ve sizden isim, kısa yol vb. Eklemenizi isteyecektir; gosterildigi gibi. Gördüğünüz gibi kısayolumu //. Bu yüzden her blok yorumu istediğimde // yazacağım. Bu yardımcı olur umarım

resim açıklamasını buraya girin


1

Ben bir otomat görev yoluyla bu iyi çalışmayı başardı ve ctrl + seçenek + command + b tuş kombinasyonu bağlamak için kısayol kullandık. tek yapmam gereken kodun xcode'da yorumlanmasını istediğiniz kodu vurgulamak ve yukarıdaki tuşlara basmak ve seçilen metin / * ... * / kullanarak bloktan yorum yapmaktır.

i kolayca yorumladı kod bloğunu aşağı katlamak böylece bu işlevsellik istedim nedeni adil bir katlama kodu kullanın ... kod // alışkanlık kat kullanarak her zamanki şekilde yorumladı.

im mac automator kullanarak aşina değilim ama ben sadece aşağıdaki wwdc video instrux takip

WWDC 2012 videosunda Oturum 402 - Xcode ile Verimli Çalışma (yaklaşık 6 dakikadan itibaren), seçilen metni değiştirmek için bir hizmet eklemek üzere Mac OSX Automator'ı nasıl kullanacağınıza dair bir açıklama var. Videoda gösterilen örnek, sort ve uniq kabuk komutlarını kullanarak bir metin seçimindeki kopyaları kaldırmaktır. Bu yaklaşımı kullanarak aynı şeyi yaparsınız ancak videoda yaptıkları yerine aşağıdaki komutu girersiniz

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

(önceki satırda bir nedenden dolayı görünmeyen 2 yıldız olması gerektiğini unutmayın .... aşağıdaki ekran görüntüsünde görünürler, bu yüzden girmek için doğru komut olarak kopyalayın)

sonunda böyle bir kabuk betiği çalıştırmalısınız.

ekran görüntüsü

bu, seçilen herhangi bir metin için yorum sınırlayıcılarını önce ve sonra koyacaktır.

kaydettiğinizde, adlandırmak için seçenekler almalısınız (buna blockcomment denir) ve ayrıca bir klavye kısayolu atamak için

xcode'u açabilmeniz, bir metin seçebilmeniz, sağ tıklayabilmeniz, bağlam menüsünü açabilmeniz ve bu komut dosyasına verdiğiniz ad en altta görünmelidir

sadece adı tıkladığınızda komut dosyası çalıştırılır ve seçilen kodun yorumlanmasını engeller veya atadığınız klavye kısayolunu kullanır.

Bu yardımcı olur umarım


0

Xcode üzerinde, kullanıcı betiğini düzenle olan yardım menüsünden önce bir sembol vardır. Yorumlar bölümündeki Yorum Yok / Yorum Seçimi'nde $ cCmt = "//"; $ cCmt = "#"; veya IDE'niz ne olursa olsun. Ardından satırları seçerek + / (varsayılan benim xcode'um) komutunu seçerek seçili satırları yorumlayabilir ve açıklamayı kaldırabilirsiniz.


0

@Nikola Milicevic

Girinti sorununun ekran görüntüsü. Bu çok küçük, ancak örnek görselinizde çok iyi çalıştığı garip.

Ayrıca Automator kurulumumun ekran görüntüsünü de ekliyorum ...

Teşekkürler

resim açıklamasını buraya girin

resim açıklamasını buraya girin

Güncelleme:

Senaryoyu biraz değiştirirsem:

resim açıklamasını buraya girin

Ve sonra XCode'da tam satırları seçin, istenen sonucu elde ederim:

resim açıklamasını buraya girin

resim açıklamasını buraya girin


0

Otomatik olarak oluşturulan yorumu Add Documentationişlemden dönüştürmek için bir yol arıyorsanız ( cmd- shift- altında bulunur /) da yararlı olabilir:

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 yanıtındakiyle aynı kalanı:

Otomatikleştirici

Hizmetler


0

Xcode 11.1'de hızlı 5.0

blok yorumu eklemek istediğiniz kodu seçin ve + +/

resim açıklamasını buraya girin


-1

Cmd+ Shift+ 7seçilen satırları yorumlayacaktır.


Muhtemelen Cmd+ demekti /. En az görünüyor Almanca klavye düzeni vardır /üzerinde 7anahtarı ancak ABD düzeninde /kayması olmaksızın kendi anahtarıyla üzerindedir.
Jake Cobb

Ben de Norveç klavye düzeni /üzerinde 7anahtar var, ama yine de çalışmıyor .. bu kısayol Yardım menüsünü açar
Şti

-1

Macbook'larda, önceden vurgulanmış bir bloğa yorum yapmak için shift+ cmd+ tuşlarını kullanabilirsiniz7


-11

Zaten birçok insan bu soruyu cevaplıyor gibi görünüyor.

Swift 3.0'da, tek satırlı yorum çift eğik çizgi koymaktır: "//"; çok satırlı "/ * .... * /" konur.

Bu yardımcı olur umarım.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.