Tire ile ayrılmış kasanın adı nedir?


509

Bu PascalCase: SomeSymbol

Bu camelCase: someSymbol

Bu snake_case: some_symbol

Sorularıma Yani bunun için yaygın olarak kabul gören isim olup olmadığıdır: some-symbol? URL'lerde yaygın olarak kullanılır.


11
Hayır. Çoğu dil bu tür tanımlayıcılara izin vermez. Ayrıca birincisine Pascal davası denir.
Cat Plus Plus

4
Bunun
kopyası

14
@CatPlusPlus Lisp bu durumu kullanır ve Google a'yı -bir alan olarak değerlendirdiğinden, neredeyse her SEO dostu URL de kullanır.
lms

4
PascalCase adıyla verdiğiniz ilk örneği çağırmanın daha yaygın olduğuna inanıyorum .
Drew Noakes

24
@CatPlusPlus 1) URL'ler programlama dilleriyle alakasız DEĞİLDİR. Bunlar en sık kullanılan kaynak programlama dillerinden biridir. Bazı diller URL'leri birinci sınıf bir nesne olarak bile ele alır. Go'da birinci sınıf olmasa da, paketleri içe aktarmak için URL'ler kullanılır. 2) Kısa çizgi ile ayrılmış dize, birkaç dilde (biri için LISP ailesi) ve ayrıca CSS gibi programlamada kullanılan endişeli dillerde oldukça yaygındır. Sizin için "azınlık" nedir, diğerlerinin her gün giriş yaptığı dildir. Hepimiz VB6 programcısı değiliz.
Kasım'da Hejazzman

Yanıtlar:


433

Bu dava sözleşmesi için gerçekten standart bir isim yoktur ve buna ne denmesi gerektiği konusunda anlaşmazlık vardır.

Bununla birlikte, 2019'dan itibaren kebap vakasının kazandığı güçlü bir dava var :

https://trends.google.com/trends/explore?date=all&q=kebab-case,spinal-case,lisp-case,dash-case,caterpillar-case

omurga vakası uzak bir saniyedir ve başka hiçbir terimin hiç çekişi yoktur.

Ek olarak, kebab-case birçok javascript kod kütüphanesinin sözlüğüne girmiştir, örneğin:

Ancak, insanların kullandığı başka terimler de vardır. Lisp, bu sözleşmeyi on yıllardır bu Wikipedia girişinde açıklandığı gibi kullanmıştır , bu nedenle bazı insanlar bunu lisp vakası olarak tanımlamıştır . Gördüğüm diğer bazı formlar arasında tırtıl kılıfı , tire kılıfı ve tire - ancak bunların hiçbiri standart değil.

Sorunuzun cevabı Yani: Hayır, bu durum kongre benzer tek bir geniş kabul gören ismi yoktur snake_case veya CamelCase yaygın kabul edilmektedir.


118
Bağlantılı wikipedia makalesinde şu anda bu yığın taşması sorusuna geri bağlantı veren bir başvuru var ... özellikle kebap durumu sorusuna. Belki wikipedia'yı kaynak olarak kullanmak akıllıca bir fikir değildi.
dequis

8
@BenLee Özür dilerim. 2012-10-07 tarihinde anonim bir kullanıcı tarafından diğer Wikipedia geçmişi olmayan bir IP adresinden referans alınmadan spinal-case / train-case'in Wikipedia'ya eklendiğine dikkat edin. Dairesel olarak Wikipedia'ya dönmeyen bu terimler için başka bir kanıt bulamadım. Öte yandan, bu StackOverflow sorusunun kebap vakasının kanıt olmadan bir Wikipedia makalesine girilen bir şeye bağlı olmayan bir kullanıcı topluluğuna sahip olduğuna dair kanıt sunduğunu hissettim. Umarım bu orijinal araştırma ücretinden kaçınmak için yeterlidir.
Robert Tupelo-Schneck

7
Omuriliği ve Train-Case'i tamamen (cazip olarak vandalizm) çıkarmak için cazip davrandım; ama belki de uzun süredir devam eden Wikipedia vandalizmi aslında kendisi için kanıt oluşturabilir. Burada olan şey bu.
Robert Tupelo-Schneck

11
Ezilmiş ve sonra uzun ve hayvan temasıyla devam ettiği için "catipillar-case" i seviyorum
RenaissanceProgrammer

55
kebap-case-çünkü kelimeler gibi görünüyor-bir-kebap üzerine saptırılmış
Aaron_H

464

Buna kebap davası denir . Sadakat belgelerine bakın .


190
İşte resmi yapan bir referans ;)
Andreas

13
İşte başka bir referans: github.com/qerub/camel-snake-kebab ;)
qerub

11
Referanstaki özyineleme, Lisp benzeri bir şey olduğu anlamına gelir.
Michael Della Bitta

140
Bu cevabı doğru olduğuna inandığım için değil, doğru cevap olmasını istediğim için onayladım.
Jason Swett

43
Burada devam eden sitogenezi seviyorum . Bu cevap bağlantılar lodash bağlantıları wikipedia bu cevaba bağlantılar!
gilly3

37

Bazen tırtıl kılıfı olarak da bilinir


61
tırtıl kılıfı kebap kasasından çok daha mantıklıdır, çünkü develer, yılanlar ve tırtıllar her türlü canlı yaratıkken kebap değildir.
Daira Hopwood


4
"Tırtıl" dört heceye sahipken "kebap", "çizgi" ve "kısa çizgi" bir veya iki tane olduğundan, tırtıl davası için tartışmanın kaybedilen bir savaş olduğunu düşünüyorum
Ninjakannon

1
"caterpillar-case" bir vaka adı olamayacak kadar uzun, bence "worm-case" daha iyi bir seçim olacaktır. : D
Bahattin Ungormus

5
@ DairaHopwood tamamen katılıyorum .. Pascal aynı zamanda yaşayan bir yaratıktı.
nawfal


12

Karakter olarak (-) "tire" ya da "çizgi" olarak adlandırılır, "isim daha doğal görünüyor tire-durum " veya " tire durum " (daha az kullanılır) .

Wikipedia'da belirtildiği gibi , " kebap-case " de kullanılmaktadır. Görünüşe göre ( cevaba bakınız ) bunun nedeni bir şiş gibi görünecek ... Gerçi biraz hayal gücü gerekiyor. Örneğin lodash lib'de
kullanılır .

Son zamanlarda, " dash-case "


6
Kebap vakası, eğer herhangi bir yardım varsa, döner kebaptan daha çok şiş kebaptan bahsediyor.
Alper

10

Her zaman aradım ve 'pano' olarak adlandırıldığını duydum.


21
Sonsuza dek Dashy McDash Davası olarak bilinecektir
colllin

15
@colllin Bence dashy-mcdash-case;)
siguy85

7

Bazı araştırmalardan sonra tam liste:

  • Kebap kılıfı
  • Caterpillar çantası
  • Kısa çizgi
  • Kısa çizgi
  • Lisp çantası
  • Omurga kılıfı
  • CSS davası

6

Standart bir ad yoktur.

Jquery ve lodash gibi kütüphaneler bunu ifade eder kebab-case. Yani yapar Vuejs JavaScript çerçeve. Ancak, kebab-casejavascript dünyasında olarak adlandırıldığını beyan etmenin güvenli olup olmadığından emin değilim .


Bunun gibi sen Vuejs dokümanlardan buraya geldiyse
a20

5

Basitçe tireli olduğunu söyleyebilirim .


8
Tireleme , İngilizce bir soruya iyi bir cevap olabilir, ancak kod için yeterince spesifik değildir. Örneğin, kebab-casetüm harflerde küçük harf kullanılır.
rybo111



2

İşte daha yeni bir rahatsızlık. Açısal JS ve Pluralsight kurslarındaki her yerdeki belgeler ve açısal üzerindeki kitaplar, hepsi kebap vakasını yılan kasası olarak adlandırır, ikisi arasında ayrım yapmaz.

Çok kötü tırtıl kılıfı yapışmadı çünkü snake_case ve tırtıl kılıfı kolayca hatırlanır ve aslında temsil ettikleri gibi görünürler (eğer iyi bir hayal gücünüz varsa).


1

İçin ECMAScript teklifim String.prototype.toKebabCase.

String.prototype.toKebabCase = function () {
  return this.valueOf().replace(/-/g, ' ').split('')
    .reduce((str, char) => char.toUpperCase() === char ?
      `${str} ${char}` :
      `${str}${char}`, ''
    ).replace(/ * /g, ' ').trim().replace(/ /g, '-').toLowerCase();
}

teklife herhangi bir yanıt var mı?
nxmohamad

cevabınıza herhangi bir cevap var mı?
Dane Brouwer
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.