YAML'deki yorumları nasıl engellersiniz?


1372

YAML'de bir satır bloğunu nasıl yorumlayabilirim?


sorunun belirli bir metin editörü ile nasıl yapılacağı konusunda bir göstergesi yoktur, bu nedenle lütfen yaml sözdizimi kuralları ve özgürlükleri açısından cevaplamaya sadık kalın.
Alexander Stohr

Yanıtlar:


2007

YAML satır içi yorumları destekler, ancak blok yorumları desteklemez.

Gönderen Vikipedi :

Yorumlar sayı işaretiyle ( #) başlar, satırın herhangi bir yerine başlayabilir ve satırın sonuna kadar devam edebilir

Wikipedia'dan da JSON ile bir karşılaştırma :

Sözdizimi farklılıkları belirsizdir ve pratikte nadiren ortaya çıkar: JSON, UTF-32 gibi genişletilmiş karakter kümelerine izin verir, YAML, JSON olmasa da virgül, eşittir ve iki nokta gibi ayırıcılardan sonra bir boşluk gerektirir ve JSON'un standart olmayan bazı uygulamaları dilbilgisini Javascript'in /* ... */yorumlarını içerir. Bu tür kenar kasaları işlemek, satır içi YAML olarak ayrıştırmadan önce JSON'un hafif ön işleme tabi tutulması gerekebilir.

# If you want to write
# a block-commented Haiku
# you'll need three pound signs

49
harika haiku (5/7/5 hece)
Scott Pelak

224

Teknik özellik , yorumları işaretlemenin yalnızca bir yolunu açıklar:

Açık bir yorum “#” göstergesi ile işaretlenir.

Bu kadar. Blok yorum yok.


137

Bu konuda akıllı olmaya çalışmıyorum, ancak düzenleyiciniz için Sublime Text kullanıyorsanız, adımlar şunlardır:

  1. Bloğu seçin
  2. cmd/Mac üzerinde + veya Linux ve Windows üzerinde ctrl+/
  3. kâr

Diğer editörlerin de benzer işlevselliğe sahip olduğunu hayal ediyorum. Hangisini kullanıyorsun? Biraz kazmaktan mutluluk duyarım.


8

3
YEdit eklentisi ile Eclipse'deyseniz, ctrl- / 'nin standart Eclipse block-comment-toggler'ı yaml dosyalarındaki blok yorumlarını değiştirir.
Matt Gibson

1
YAML
Faraz

3
JetBrains IDE'lerinde çalışır: RubyMine ve Gogland
Rich Sutton

3
VSCode'da da çalışır.
Zain Patel

67

Vim'de aşağıdakilerden birini yapabilirsiniz:

  • Tüm satırları yorumlayın: :%s/^/#
  • Yorum satırları 10-15: :10,15s/^/#
  • Mevcut satıra 10 numaralı yorum satırı: :10,.s/^/#
  • Sonuna kadar yorum satırı 10: :10,$s/^/#

veya görsel blok kullanarak:

  1. Üzerinden görsel blok girdikten sonra çok satırlı bir sütun seçin Ctrl+v.
  2. Basın rizledi #seçimi yerine çoklu-hat bloğunu açıklama ya Shift+i#Escseçiminden önce açıklama karakterleri girmek için.

8
mümkün olan en az düşünme;). "Vim, I did a thing. do it here, and here and here and here and here..."
Conrad.Dean

4
Mevcut seçime yorum yapmak için vurup :yazabilirsiniz s/^/#.
hakunin

1
@ Conrad.Dean makrolarda düşünmeyi öğrenmeye çalışın . Gerçi hemen hemen aynı bu görev için, qqI#<esc>jqdaha sonra @Q@Q@Q@Q@Q@Q(daha hızlı kapalı shift tuşu izin vermemektir çünkü), çok daha karmaşık görevler için uzatabilirsiniz bir alışkanlıktır. Küçük başla. Sık çalışın. Yakında mükemmel denemek çok karmaşık makrolar yaratacak. Önce kaydı temizlerseniz, özyineleme almak için sondan önce qqqekleyebilirsiniz (ancak yalnızca dosyanın sonuna). @qq
Bruno Bronosky

@BrunoBronosky: bunların yerine @q, basitçe 6@qya 10000@qda isterseniz.
bodo

2
@bodo gerçekten yapabilirsiniz. Çoğu vim komutu :h countçarpanları kabul eder. Ama benim için görsel olarak 6'nın üzerinde bir şey var ve bunu elden yapmak zorundayım çünkü güvenilir bir şekilde tahmin edemiyorum. Bunun istisnası, terminalimde 60+ satır olduğunu bildiğimden çok büyük marco oynatımlarını tahmin etmek için kullanacağım. Bir bonus olarak, herkesin arama eşleşmelerinde tekrarlamayı :h gnkolaylaştıran şeyleri öğrenmesini önereceğim .. Bkz. Vimcasts.org/episodes/operating-on-search-matches-using-gn
Bruno Bronosky

29

Alternatif bir yaklaşım:

Eğer

  • YAML yapınız, uygulamanız tarafından kullanılacak iyi tanımlanmış alanlara sahip
  • VE uygulamanızla uğraşmayacak ek alanları özgürce ekleyebilirsiniz

sonra

  • herhangi bir düzeyde "Açıklama" veya "Yorum" veya "Notlar" gibi bir blok metin alanı ekleyebilirsiniz.

Misal:

Onun yerine

# This comment
# is too long

kullanım

Description: >
  This comment
  is too long

veya

Comment: >
    This comment is also too long
    and newlines survive from parsing!

Diğer avantajlar:

  1. Yorumlar büyük ve karmaşık hale gelirse ve yinelenen bir desene sahipse, bunları düz metin bloklarından nesnelere yükseltebilirsiniz.
  2. Uygulamanız - gelecekte - bu yorumları okuyabilir veya güncelleyebilir

Akıllı! Teşekkür ederim.
Justin Krause

Sanırım bu sorunun cevabı. özellikle biri YAML'den bu ikisine dönüşecekse bu yorumların JSON veya XML'de görünmesini istiyorsa.
Mohd

7

YAML'de yorum yapmayı engellemenin bir yolu, aynı anda birden çok satıra # (yorum) etiketi eklemek için Notepad ++ gibi bir metin düzenleyicisi kullanmaktır.

Notepad ++ uygulamasında, seçili metin için "Yorumu Engelle" sağ tıklatma seçeneğini kullanarak bunu yapabilirsiniz.

Woo Görüntüler!


18
Tek yol bu değil .
Charlie Egan

Ve FWIW, bunun için klavye kısayolu (np ++ 'da) ctrl-shift-Q (pencerelerde. Diğer platformlar için düzenleme> yorum / uncomment menüsüne bakın).
charlie arehart

6

Eclipse'yi yedit eklentisiyle (.yaml dosyaları için bir düzenleyici) kullanıyorsanız, birden fazla satırı aşağıdaki yollarla yorumlayabilirsiniz:

  1. yorumlanacak satırları seçme ve ardından
  2. Ctrl+ Shift+C

Yorum kaldırmak için aynı adımları uygulayın.


5

Windows'ta Ruby Mine kullanıcıları için:

Dosyayı düzenleyicide aç Bloğu seçin ve Ctrl+ tuşuna basın forward slash, # ile başlayan bloğu seçmiş olacaksınız.

Şimdi yorum yapılan bloğun yorumunu kaldırmak istiyorsanız, aynı tuş kombinasyonuna Ctrl+ forward slashtekrar basın


1
Bence tüm JetBrains IDE'leri için işe yarıyor. Ben de PyCharm için çalışıyor biliyorum :) Mac OSX üzerinde de çalışır.
Edgar Martinez

5

Emacs, comment-dwim (Ne demek istediğimi yap) - sadece bloğu seç ve bir yap:

M-;

Bu bir geçiş - yorum ve yorum bloklarını yorumlamak için kullanın.

Yüklü mod modu yoksa Emacs'a karma karakterini (#) kullanmasını söylemeniz gerekir.


5

Visual Studio Code (VSCode) kullanıcıları için, birden çok satıra yorum yazmanın kısayolu, yorum yapmak istediğiniz satırları vurgulamak ve ardından şu tuşa basmaktır:

ctrl + /

ctrl+ Düğmesine /tekrar basılması , seçilen bir veya daha fazla satır için yorumları kapatmak için de kullanılabilir.


1

Azure Devops tarayıcısında (ardışık düzen yaml düzenleyicisi),

Ctrl+ K+ CYorum Bloğu

Ctrl+ K+ UOnay Engeli

Bir de 'Blok Açıklamasını Aç / Kapat' seçeneği var ama bu benim için işe yaramadı. resim açıklamasını buraya girin

Başka 'garip' yollar da var: 'Komut Paleti'ni görmek için sağ tıklayın veya F1

resim açıklamasını buraya girin

Ardından bir imleç seçeneği seçin. resim açıklamasını buraya girin

Şimdi bu sadece #

hatta daha akıllı [ Ctrl+ k] + [ Ctrl+ c]

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.