Microsoft, geliştirilmiş sabitlenmiş sekmeler ve daha fazlasıyla VS Code 1.51'i yayınladı

Okuma zamanı simgesi 11 dk. okuman


Okuyucular MSpoweruser'ı desteklemeye yardımcı olur. Bağlantılarımız aracılığıyla satın alırsanız komisyon alabiliriz. Araç İpucu Simgesi

MSPoweruser'ın editör ekibini ayakta tutmasına nasıl yardımcı olabileceğinizi öğrenmek için açıklama sayfamızı okuyun. Daha fazla

Microsoft VS Kodu

Microsoft VS Kodu

Microsoft bugün, çeşitli iyileştirmeler ve hata düzeltmeleri ile Visual Studio Code v1.51'in (Ekim 2020 güncellemesi) yayınlandığını duyurdu. Bu yeni güncelleme artık yeniden boyutlandırılabilir IntelliSense öneri kutusu, Kalıcı uzak terminal oturumları, geliştirilmiş sabitlenmiş sekmeler ve daha fazlasıyla birlikte geliyor. Aşağıda Microsoft tarafından sağlanan tam değişiklik günlüğünü bulun.

Tezgâh#

Daha belirgin sabitlenmiş sekmeler#

Sabitlenmiş sekmeler artık etkin değilken bile tespit edilmelerini kolaylaştırmak için her zaman pin simgelerini gösterecek. Bir düzenleyici hem sabitlenmişse hem de kaydedilmemiş değişiklikler içeriyorsa, simge her iki durumu da yansıtır.

Sabitleme simgelerini gösteren etkin olmayan sabitlenmiş sekmeler

Uzatma ağaçları özel vurgulu kullanır#

Uzantı ağacı görünümlerinde yerel araç ipucunu kullanmak yerine, artık platformlar arası tutarlı olan ve genel UX'e daha iyi uyan özel bir fareyle üzerine gelme kullanıyoruz.

Özel ağaç vurgusu

Senkronize etmeden bir uzantı yükleyin#

Artık, ayarlar senkronizasyonu etkinken bir uzantıyı senkronize etmeden yükleyebilirsiniz.

Uzantıyı senkronize etmeden yükleyin

Tema: GitHub Işığı

Explorer'dan bir uzantı yükleyin#

VS Kodu artık bir VSIX dosyasına sağ tıklayarak ve Uzantı VSIX'i yükleyin bağlam menüsü öğesi.

Giriş bulanıklığı komutu#

Yeni bir dahili workbench.action.blur Odaklanabilen herhangi bir girdiden odağı kaldıran komut artık kullanılabilir. Bu komut için bir klavye kısayolu atayabilirsiniz. Klavye Kısayolları Tercihleri.

Entegre Terminal#

yerel yankı#

Terminalde değişiklik yapmak geleneksel olarak bilgilerin terminal sürecine gönderilmesini, işlenmesini ve etkilenmesi için VS Koduna döndürülmesini gerektirir. Bu, zayıf veya uzak bir bağlantı üzerinde çalışırken yavaş olabilir. SSH sunucusu or kod alanı.

Bu sürüm, terminale, yerel olarak yapılan değişiklikleri ve imleç hareketlerini tahmin etmeye ve sunucuya gidiş dönüş gerektirmeden bunları kullanıcı arayüzünde göstermeye çalışan bir "yerel yankı" modu ekler. Varsayılan olarak, tahmin edilen karakterler "soluk" olarak gösterilir:

Hemen girilen karakterlerin soluklaştığı 250 ms gecikmeli yazmayı gösteren GIF

Bunu yapılandırmak için kullanabileceğiniz iki ayar vardır:

  • terminal.integrated.localEchoLatencyThreshold yerel yankının etkinleştirileceği algılanan gecikme eşiğini milisaniye cinsinden yapılandırır. Bu ayarlanabilir 0 özelliği her zaman açmak için veya -1 devre dışı bırakmak için. Varsayılan 30.
  • terminal.integrated.localEchoStyle yerel karakterin stilini veya rengini yapılandırır, varsayılan olarak dim.

IntelliSense#

Yeniden boyutlandırılabilir öneriler#

Bu dönüm noktasında, öneriler kullanıcı arayüzünde birkaç iyileştirme yaptık. Her şeyden önce, şimdi yeniden boyutlandırılabilir. Kontrolü yeniden boyutlandırmak için kenarları veya köşeleri sürükleyin.

Yeniden Boyutlandırılabilir Öneriler denetimi

Tema: GitHub Işığı, Yazı Tipi: FiraCode

Öneri listesinin boyutu, oturumlar arasında kaydedilecek ve geri yüklenecektir. Ayrıntılar bölmesinin boyutu, bu boyut daha değişken olma eğiliminde olduğundan yalnızca oturum başına kaydedilir. Ayrıca editor.suggest.maxVisibleSuggestions ayarı eski haline geldi.

Öneriler için durum çubuğu#

Öneri denetimi artık pencerenin alt kısmında kendi durum çubuğunu da gösterebilir. kullanarak etkinleştirin editor.suggest.showStatusBar ayar. Ayrıntıları değiştirmeyi kolaylaştırır ve bir tamamlamanın eklemeyi, değiştirmeyi veya her ikisini birden destekleyip desteklemediğini gösterir.

Öneriler Durum Çubuğu

Tema: GitHub Işığı, Yazı Tipi: FiraCode

Yukarıdaki örnekte, "Ekle" seçildiğinde Math.floorceil ve "Değiştir"in seçilmesiyle sonuçlanır Math.floor.

Yeni editor.suggest.insertMode ayarı, eklemeyi mi yoksa değiştirmeyi mi tercih edeceğinizi yapılandırmanıza olanak tanır. Bir öneri her ikisini de desteklediğinde, tercihiniz varsayılan olacaktır.

Önerileri seçmek için imleci hareket ettirin#

Son olarak, artık öneriler gösterilirken imleci hareket ettirebilirsiniz. Örneğin, bir kelimenin sonundaki önerileri tetikleyebilir, daha fazla öneri görmek için sola gidebilir ve ardından kelimenin üzerine yazmak için değiştir seçeneğini kullanabilirsiniz.

Öneriler gösterilirken imleci hareket ettirme

Tema: GitHub Işığı

Emmet#

Emmet'teki özel snippet'ler geri döndü. Ek olarak, snippet'ler artık snippet dosyası kaydedildikten veya güncellendikten sonra otomatik olarak yenilenir. emmet.extensionsPath ayarı.

Emmet özel parçacıkları tekrar çalışıyor

Kaynak kontrolü#

Kaynak Kontrolü giriş kutusu, taahhüt mesajı geçmişini kaydeder#

Bu, bir özellik isteği SCM taahhüt geçmişinde gezinmek için. basmak Up ve Aşağı sırasıyla önceki ve sonraki taahhütleri görüntülemek için. Doğrudan giriş kutusunun ilk ve son konumuna gitmek için, Ara Toplam ilgili ok tuşuyla birlikte.

SCM giriş kutusuna bir mesaj yazıp, değişiklikleri hazırlayıp uyguladıktan sonra, yukarı oka basmak az önce taahhüt edilen mesajı ortaya çıkarır.

Git: Alt menüde etiket komutları#

Etiketle ilgili Git komutları eklendi. ... Git menüsü.

Git etiketleri alt menüsü

Git: Rebase komutu#

A new Git: Şubeyi yeniden başlat… Kullanıcı arabirimini kullanarak bir dalı yeniden temellendirmenizi sağlayan komut eklendi.

Git: Özyinelemeli klon komutu#

İle Git: Klon (Öyinelemeli) komutuyla, artık iç içe Git alt modülleri de dahil olmak üzere Git depolarını özyinelemeli olarak klonlayabilirsiniz.

Zaman Çizelgesi: Emoji kısa kod oluşturma#

Artık emoji kısa kodları oluşturuyoruz, örneğin :smile:, Zaman Çizelgesi Görünümünde.

Emoji ile zaman çizelgesi görünümü

Diller#

Markdown akıllı seçim#

Aşağıdaki yeni komutları kullanarak Markdown belgelerinde seçimi genişletin ve küçültün:

  • Expand: Shift+Alt+Sağ
  • Çekmek: Shift+Alt+Sol

Seçim aşağıdakiler için geçerlidir ve geleneksel bir hiyerarşik modeli takip eder:

  • Başlıkları
  • Listeler
  • Teklifleri engelle
  • çitle çevrili kod blokları
  • HTML kod blokları
  • Paragraf

Bir Markdown belgesindeki akıllı seçim, bir blok öğesinden onu içeren blok öğesine, bir başlık altındaki içeriğin geri kalanına, başlığın kendisine genişler

JavaScript ve TypeScript için boş ayraç biçimlendirme seçeneği#

Yeni javascript.format.insertSpaceAfterOpeningAndBeforeClosingEmptyBraces ve typescript.format.insertSpaceAfterOpeningAndBeforeClosingEmptyBraces biçimlendirme yapılandırma seçeneği, boş parantezler arasına boşluk eklenip eklenmediğini kontrol eder. Bu ayarlar için varsayılan değer doğrudur. Örneğin, JavaScript için:

class Foo {
  doFoo() {}
}

ayar "javascript.format.insertSpaceAfterOpeningAndBeforeClosingEmptyBraces": false ve kodu biçimlendirmek şu şekilde sonuçlanır:

class Foo {
  doFoo() {} // Notice that the space has been removed
}

Tarayıcı desteği#

Klasörleri indirin (Edge, Chrome)#

Yeniden yararlanmak Dosya Sistemi Erişimi API, bir tarayıcıda çalışan Microsoft VS Kodu artık tüm dosya ve klasörleri diske indirmek için Dosya Gezgini'nden klasörler için bir indirme eylemi sunabilir.

Klasörü indir

Not: Bu, Microsoft Edge veya Google Chrome'un yeni bir sürümünü gerektirir.

Çalışma Alanı bildirimini aç#

içeren bir klasör açarsanız .code-workspace Dosyaları en üst düzeyde, şimdi açmanızı isteyen bir bildirim göreceksiniz. Bu, masaüstü için Microsoft VS Code'da her zaman böyleydi ve şimdi tarayıcıda da çalışacak.

Çalışma alanı bildirimini aç

Yanlışlıkla kapatmayı önleyin#

yeni bir ayar window.confirmBeforeClose tezgahı kapatmadan veya terk etmeden önce bir onay iletişim kutusu göstermek için eklendi.

Olası değerler şunlardır:

  • keyboardOnly Onay, yalnızca kapatmak için bir tuş bağlama kullandığınızda gösterilecektir (örneğin, Ctrl + W). (varsayılan)
  • always: Bir fare hareketiyle kapatsanız bile, onay iletişim kutusu her zaman gösterilecektir.
  • never: Onay hiçbir zaman gösterilmeyecektir.

Onay iletişim kutusunu kapat

not: Bu ayar tüm durumları kapsamayabilir. Tarayıcılar yine de onay almadan bir sekmeyi veya pencereyi kapatmaya karar verebilir.

Uzantılara katkılar#

GitHub Çekme İstekleri ve Sorunları#

üzerinde çalışmalar devam ediyor GitHub Çekme İstekleri ve Sorunları çekme istekleri ve sorunları üzerinde çalışmanıza, oluşturmanıza ve yönetmenize olanak tanıyan uzantı.

Tüm yeni özellikler ve güncellemeler hakkında bilgi edinmek için tamamını görebilirsiniz. 0.22.0 için değişiklik günlüğü uzantının serbest bırakılması.

Uzaktan Geliştirme#

üzerinde çalışmalar devam ediyor Uzaktan Geliştirme uzantılarıbir kapsayıcı, uzak makine veya Linux için Windows Alt Sistemi (WSL) tam özellikli bir geliştirme ortamı olarak.

1.51'deki öne çıkan özellikler şunlardır:

  • Terminal oturumlarına devam etme/yeniden bağlanma yeteneği.
  • Geliştirilmiş bağlantı noktası yönlendirme deneyimi.

Yeni uzantı özellikleri ve hata düzeltmeleri hakkında bilgi edinebilirsiniz. Uzaktan Geliştirme sürüm notları.

Önizleme özellikleri#

Önizleme özellikleri yayınlanmaya hazır değil ancak kullanılabilecek kadar işlevsel. Geliştirme aşamasındayken erken geri bildirimlerinizi memnuniyetle karşılıyoruz.

Ayarlar senkronizasyonu#

Ayarlar senkronizasyonu artık uzantıların genel durumunu senkronize ediyor. Uzantılar, yeni tanıtılanları kullanarak eşitlenecek durumu sağlamalıdır. setKeysForSync API.

Proxy kimlik bilgilerini hatırla#

Bir ağ bağlantısının bir proxy ile kimlik doğrulaması gerektirdiğini gösteren oturum açma iletişim kutusunu elden geçiriyoruz. Yeni bir ayar, window.enableExperimentalProxyLoginDialog: true, gelecekteki bir sürümde varsayılanı yapmayı planladığımız bu yeni deneyimi etkinleştirecek.

Proxy Girişi

Tema: GitHub Işığı

İletişim kutusu Microsoft VS Code penceresinin içinde görünecek ve VS Code'u her başlattığınızda bunları sağlamak zorunda kalmamanız için kimlik bilgilerini hatırlamanın bir yolunu sunacaktır. Kimlik bilgileri, işletim sistemi standart kimlik bilgileri deposunda (macOS'ta anahtar zinciri, Windows'ta Windows Kimlik Bilgileri Yöneticisi ve Linux'ta gnome anahtarlığı) depolanır.

Bu diyaloğu hala oturum başına yalnızca bir kez gösteriyoruz, ancak gelecekte bu kararı tekrar gözden geçirebiliriz. Hatırlanmak için seçtiğiniz kimlik bilgilerinin geçerli olmaması durumunda iletişim kutusunun tekrar göründüğünü göreceksiniz. Onları tekrar sağlamak, onları değiştirmenize izin verir.

Lütfen bu seçeneği etkinleştirin ve bir şey beklendiği gibi çalışmadığında bize bildirin. Sorun izleyici.

TypeScript 4.1 beta desteği#

Microsoft VS Kodu şunları destekler: TypeScript 4.1 beta ve gece inşa eder. 4.1 güncellemesi, destek gibi bazı yeni TypeScript dil özelliklerini getiriyor. özyinelemeli koşul türleri, ayrıca takım iyileştirmeleri. Bir odak alanı olmuştur başlangıç ​​desteği ekleme için @see JSDoc yorumlarındaki etiketler.

TypeScript 4.1 gece derlemelerini kullanmaya başlamak için TypeScript Nightly uzantısı. Lütfen geri bildiriminizi paylaşın ve TypeScript 4.1 ile herhangi bir hatayla karşılaşırsanız bize bildirin.

Uzantı yazma#

Güncellenmiş uzantı örnekleri#

Bazılarımızı güncelledik uzatma örnekleri renk teması belirteçlerimize bağlı Microsoft VS Code varsayılan stillerini dahil etmek. Bu, ortak öğelerin (metin, düğmeler, girişler) temaya uygun olacağı ve üründeki varsayılan stiller ile eşleşeceği anlamına gelir. Bunu içeren uzantılar aşağıdadır:

Web görünümü stili örnekleri

Ağaçlarda Codicon renkleri#

Sonlandırılması ile birlikte ThemeIcon renk API'si, uzantı yazarları, özel ağaç görünümlerinde kodlarda tema renklerini kullanabilir.

Simge renkleriyle ağaç görünümü

Küresel Durumu Senkronize Et#

Uzantılar artık, Ayarlar Senkronizasyonu etkinleştirildiğinde değerlerinin senkronize edilmesi gereken anahtarları sağlayarak, yeni tanıtılan setKeysForSync API girişi globalState hatıra.

/**
 * Set the keys whose values should be synchronized across devices when synchronizing user-data
 * like configuration, extensions, and mementos.
 *
 * Note that this function defines the whole set of keys whose values are synchronized:
 *  - calling it with an empty array stops synchronization for this memento
 *  - calling it with a non-empty array replaces all keys whose values are synchronized
 *
 * For any given set of keys this function needs to be called only once but there is no harm in
 * repeatedly calling it.
 *
 * @param keys The set of keys whose values are synced.
 */
setKeysForSync(keys: string[]): void;

Yorum dizisi yanıt düğmesi görünürlüğü#

Yorum Yap uzantılar artık yeni bir özellik ile bir yorum dizisindeki yanıtla düğmesinin görünürlüğünü kontrol edebilir, CommentThread#canReply. olarak ayarlandığında false, kullanıcılar yorum dizisinde yanıtla düğmesini veya yorum kutusunu görmez.

Önerilen uzantı API'leri#

Her dönüm noktası, önerilen yeni API'lerle birlikte gelir ve uzantı yazarları bunları deneyebilir. Her zaman olduğu gibi, geri bildiriminizi istiyoruz. Önerilen bir API'yi denemek için yapmanız gerekenler:

  • Önerilen API'ler sık ​​sık değiştiği için Insider'ları kullanmalısınız.
  • Bu satıra sahip olmalısınız package.json uzantınızın dosyası: "enableProposedApi": true.
  • En son sürümünü kopyalayın vscode.proposed.d.ts projenizin kaynak konumuna dosyalayın.

Önerilen bir API'yi kullanan bir uzantı yayınlayamazsınız. Bir sonraki sürümde son değişiklikler olabilir ve mevcut uzantıları asla bozmak istemeyiz.

Katlama aralığı sağlayıcıları olayı değiştirir#

Katlama aralığı sağlayıcıları, editöre, katlama aralıklarının güncellenmesi gerektiği konusunda sinyal verebilir. onDidChangeFoldingRanges olay.

Daha fazla ayrıntı ve geri bildirim sağlamak için lütfen kullanın #108929 sayı sorunu var.

Şifre API'leri#

Devam eden çalışmaların bir parçası olarak Kimlik Doğrulama Sağlayıcıları, hassas bilgileri depolamak ve almak için API'yi tanıttık. Dahili olarak, bu, keytar VS Code'un sırları depolamak için kullandığı kitaplık.

/**
 * Retrieve a password that was stored with key. Returns undefined if there
 * is no password matching that key.
 * @param key The key the password was stored under.
 */
export function getPassword(key: string): Thenable<string | undefined>;

/**
 * Store a password under a given key.
 * @param key The key to store the password under
 * @param value The password
 */
export function setPassword(key: string, value: string): Thenable<void>;

/**
 * Remove a password from storage.
 * @param key The key the password was stored under.
 */
export function deletePassword(key: string): Thenable<void>;

/**
 * Fires when a password is set or deleted.
 */
export const onDidChangePassword: Event<void>;

Mühendislik#

Microsoft VS Code Güvenilir Türleri uyumlu hale getirme#

VS Code "Güvenilir Türler" uyumlu hale getirmek için çabalarımızı sürdürdük. Amaç, DOM tabanlı siteler arası komut dosyası çalıştırma güvenlik açıklarını önlemektir. Web.dev'de güvenilir türler hakkında daha fazla bilgi edinebilirsiniz. Güvenilir Türler sitesi ve ilerlememizi takip edin #103699 sayı sorunu var.

Kaynak: Microsoft

Konular hakkında daha fazla bilgi: microsoft, Visual Studio Kodu 1.51, VS Kodu

Yorum bırak

E-posta hesabınız yayımlanmayacak. Gerekli alanlar işaretlenmişlerdir. *