Extension:CodeEditor

From mediawiki.org
Jump to navigation Jump to search
This page is a translated version of the page Extension:CodeEditor and the translation is 100% complete.
Other languages:
Bahasa Indonesia • ‎English • ‎Türkçe • ‎español • ‎français • ‎polski • ‎português do Brasil • ‎हिन्दी • ‎中文 • ‎日本語 • ‎한국어
Bu uzantı MediaWiki 1.31 ve üstü ile gelir. Böylece tekrar indirmek zorunda değilsiniz. Ancak, verilen diğer talimatları izlemeniz gerekir.
MediaWiki manüel uzantıları
OOjs UI icon advanced.svg
CodeEditor
Sürüm durumu: kararlı
CodeEditor extension screenshot.png
Açıklama Site ve kullanıcı JS, CSS ve Lua sayfaları için gelişmiş düzenleme araç çubuğu ile entegre bir sözdizimi vurgulayan kod düzenleyici sağlar
Yazar(lar)
  • Brion Vibber
  • Derk-Jan Hartman
  • authors of Ace (ace.c9.io)
Uyumluluk politikası Snapshots releases along with MediaWiki. Master is not backwards compatible.
MediaWiki 1.32+
Veritabanı değişiklikleri Hayır
Lisans GPL-2.0-or-later AND BSD-3-Clause
İndir
  • $wgCodeEditorEnableCore
Translatewiki.net adresinde mevcutsa, CodeEditor uzantısını çevirin

Kullanım ve sürüm matrisini kontrol edin.

Sorunlar Açık görevler · Hata bildir

CodeEditor uzantısı, WikiEditor gelişmiş düzenleme araç çubuğunu gömülü bir Ace editör widget'ı ile genişleterek, kullanıcı/site JavaScript sayfaları, CSS sayfaları, JSON sayfaları ve LUA sayfaları için Scribunto uzantısı da yüklendiğinde, yani Modül ad alanındaki sayfalar. Kod düzenleyici, normal viki sayfalarında, yani "vikimetin" içerik modeline sahip viki sayfalarında gösterilmez.

Aşağıdaki özellikleri sağlar:

  • JavaScript, CSS ve Lua için sözdizimi vurgulama
  • otomatik girinti
  • sekme tuşu, sekme girintileri (1.22'den beri), öncesinde yumuşak girintiler üretir.
  • sekme/kaydırma sekmesi ile seçimi girintileme/girintiyi kaldırma
  • JavaScript için sözdizimi geçerliliği kontrolü
  • Parantez ve köşeli parantezler için çift eşleştirme

Kurulum

Bu uzantının çalışması için WikiEditor uzantısının yüklenmesi gerekir. Scribunto uzantısının yüklenmesi isteğe bağlıdır.
  • Vagrant kullanıyorsanız, vagrant roles enable codeeditor --provision ile yükleyin
Manüel kurulum
  • Dosyaları indirin ve extensions/ klasörünüzdeki CodeEditor adlı dizine yerleştirin.
  • LocalSettings.php dosyanızın altına aşağıdaki kodu ekleyin:
    wfLoadExtension( 'CodeEditor' );
    $wgDefaultUserOptions['usebetatoolbar'] = 1; // user option provided by WikiEditor extension
    
  • Gerektiği gibi yapılandırın.
  • Yes Yapıldı – Uzantının başarıyla yüklendiğini doğrulamak için vikinizde Special:Version seçeneğine gidin.

Yapılandırma

$wgCodeEditorEnableCore
MediaWiki, Kullanıcı ve diğer temel ad alanlarındaki JavaScript ve CSS sayfalarında düzenleyiciyi devre dışı bırakmak için $wgCodeEditorEnableCore = false; ayarlayın (varsayılan "true")
$wgScribuntoUseCodeEditor
Bu uzantıyı Scribunto için devre dışı bırakmak, yani modül ad alanında $wgScribuntoUseCodeEditor = false; ayarlayın (varsayılan "true")
Bu yapılandırma parametresi Scribunto uzantısı tarafından sağlanır ve bu nedenle CodeEditor ve bunun çalışması için yüklenmesi gereken Scribunto uzantısının çağrılmasından sonra eklenmelidir.
JavaScript

ACE düzenleyicisinin yapılandırmasını MediaWiki JS kancası (i.e. mw.hook( 'codeEditor.configure' ).add( ... )) bağlayarak değiştirmek mümkündür. Kancanıza iletilen argüman bir ACE düzenleyici oturumu olacaktır.

WikiEditor entegrasyonu

Gelecek editör çalışmasına hazırlık olarak CodeEditor'ü Extension:WikiEditor takılabilir kısımlarına entegre ediyorum, çünkü onu düz olmayan şeyleri düzenlemek için genişletmek isteyeceğiz vikimetin, araç çubuğu ayarlarında bazı değişikliklere ihtiyaç duyacak ve ne olmayacak. JS/CSS burada yine de sonunda düz metin döndürür, bu da onu daha kolay bir ara proje yapar. --brion 00:26, 14 Haziran 2011 (UTC)

İyi:

  • çevreleyen metne alıntı çiftleri dahil olmak üzere özel karakter ekleme çalışması
  • bağlantı iletişim kutuları dahil olmak üzere temel biçimlendirme eklemeleri çalışır
  • arama/değiştirme iletişim kutusu çalışmaları
    • Ace'nin yerleşik arama/değiştirme kullanıcı arayüzü de klavye komutlarından tetiklenir, yine de bunları devre dışı bırakmanız gerekir! (onCommandKey)

Kötü:

  • çok satırlı biçimlendirme doğru şekilde uygulanmıyor (ama bu gerçekten burada geçerli olmalı mı? :)

Yapılacaklar:

  • uygulanmayan araç çubuğu düğmelerini kaldırın (biçimlendirme, sözdizimi yardımı?)
  • daha doğrudan kullanışlı olan araç çubuğu düğmeleri ekleyin
    • girinti/çıkıntı
    • ortak anahtar kelimeler veya kod bitleri için ekleme yardımcıları
    • MW JS API kaynağı, JS ve CSS spesifikasyonları/belgeleri için yardım kaynağı

Bilinen Sorunlar

  • erişilebilirlik: sekme/üst karakter sekmesi geçersiz kılınır. Klavye bağımlısı kullanıcılar için tutarlı bir alternatif var mı?
  • erişilebilirlik: orijinal metin alanındaki erişim anahtarının taşınması veya başka bir şekilde kullanılması gerekir
  • kaydırma çubuğu çok geniş başlatılıyor; doldurulduktan sonra yeniden boyutlandırma kontrolünü tetiklemeniz gerekir (düzeltilebilir mi?)
  • imleç/kaydırma konumu önizlemelerde/değişikliklerde gösterilmiyor

Lisans

Bu uzantı lisanslı iken GNU Genel Kamu Lisansı v2.0 veya üstü (GPL-2.0+), lisanslı BSD 3 maddeli "Yeni" veya "Revize" Lisans (BSD-3-Clause) kullanır.