Visual Studio Kodu'ndaki tüm örnekleri (tüm dosyalarda) nasıl bulurum ve değiştiririm?


245

Visual Studio Code sürüm 1.0 kullanarak farklı bir sözcüğün tüm örneklerini bulmak ve değiştirmek nasıl anlayamıyorum.

Ctrl + Shift + F yapmak bana sadece bir klasör aramak için izin verir, çünkü bu mümkün olması izlenimi olsun, ama ben buradan devam etmek nasıl clueless.

Çeşitli tuş kombinasyonlarına baktım https://code.visualstudio.com/Docs/customization/keybindings

Ancak sadece açık dosyadaki tüm olayların nasıl değiştirileceğini buldum (Ctrl + h)

Tüm minnetle takdir yardımcı, bu beni deli ediyor.

Yanıtlar:


363

Visual Studio Code 1.8 kullanıyorum ve bu özellik kullanılabilir. Ancak ilk başta anlamak biraz zor ve (yazma sırasında) dokümanlar nasıl kullanılacağını açıkça açıklamıyor, bu yüzden adım adım nasıl çalıştığı aşağıda açıklanmıştır:

Dosyalarda Değiştir'i çağır (Düzenle menüsünün altında veya Ctrl+ Shift+ kısayoluyla H)

Soldaki dosya bölmesinin yerini alan standart bir Bul / Değiştir girişi görürsünüz:

resim açıklamasını buraya girin

Arama dizenizi ve değiştirme dizesini girin, ardından enter tuşuna basın. Tüm dosyaları arayarak bir saniye daha çalkalanabilir, ardından tüm proje dosyalarınızda önerilen değişiklikleri gösterecektir - ancak bu değişikliklerin henüz yapılmadığını unutmayın ! İşte böyle görünüyor:

resim açıklamasını buraya girin

Şimdi değişiklikleri yapmanız gerekiyor (ve bundan sonra bile değiştirilen dosyaları kaydetmeniz gerekiyor .)

Bu değişiklikleri çeşitli şekillerde yapabilirsiniz:

1) Tüm dosyalarda aynı anda tüm değişiklikleri yapın.

Değiştirme dizenizin yanındaki değiştir simgesini tıklayın (not: bu toplu işlemi onaylamak için bir iletişim kutusu alırsınız.)

resim açıklamasını buraya girin

2) Tüm değişiklikleri bir defada tek bir dosyada yapın.

Dosya adının yanındaki değiştir simgesini tıklayın (not: simge yalnızca dosya adı satırının üzerine geldiğinizde görünür)

resim açıklamasını buraya girin

3) Tek bir dosyada tek bir değişiklik yapın.

Tek tek değişikliğin yanındaki değiştir simgesini tıklayın: (not: simge yalnızca değişiklik satırının üzerine geldiğinizde görünür)

resim açıklamasını buraya girin

Son olarak, kaydetmeyi unutmayın!

Tüm bu dosyalar şimdi editörde değiştirildi ve henüz diske kaydedilmedi.

Dosya -> Tümünü Kaydet (veya Ctrl+ Alt+ S) kullanın

Güncelleme: Bunun ne zaman eklendiğinden emin değilim, ancak "Tümünü değiştir" düğmesini tıklayıp bu iletişim kutusunu görürseniz, "Değiştir" i tıkladığınızda tüm dosyalar tek bir tıklamayla değişir ve kaydedilir:

resim açıklamasını buraya girin


1
Bir 'arama-değiştirme' kaydetmek mümkün müdür? Ben sık sık 'class =' ​​için arama ve yerine 'className ='
Rune Jeppesen

1
Son adımı atlayıp sessiz arama ve değiştirme yapmak mümkün müdür? Önemsiz bir arama ve değiştirme yapıyorsam, her bir dosyayı kaydetmek istemiyorum.
satJ

1
Bu soruların her ikisinin de cevabından emin değilim. Ancak @satJ, Ctrl+Alt+Sdeğiştirilmiş tüm dosyaları bir kerede kaydettiğini unutmayın , bu yüzden oldukça hızlı ve kolaydır.
Jeff Ward

Lanet olsun bu tehlikeli, varsayılan olarak tüm dosyaları değiştiriyor. Tek bir dosyada bulmak / değiştirmek için bir komut var mı?
Alexander Mills

Geçerli varsayılan tüm kaydetme Ctrl-k, ardından s harfidir. Ctrl-k ve ardından Ctrl + w, programlar bir grup açtıktan sonra tüm pencerelerinizi kapatacaktır.
Rebecca

25

Güncelleme

Sürüm 1.3 (Haziran 2016) itibariyle Visual Studio Code'da arama yapmak ve değiştirmek mümkündür. Ctrl + shift + f tuşlarını kullanarak tüm tekrarları arayabilir ve değiştirebilirsiniz.

Şu anda bu mümkün görünmüyor (Sürüm 1.1.1 (Nisan 2016))

"S: Global olarak arama yapmak ve değiştirmek mümkün müdür?

C: Bu özellik henüz uygulanmadı, ancak ileride de gelmesini bekleyebilirsiniz! "

https://code.visualstudio.com/Docs/editor/codebasics

Bu topluluk tarafından da isteniyor gibi görünüyor: https://github.com/Microsoft/vscode/issues/1690


Belirli bir klasördeki şeyleri aramak için alana klasör yolunu eklemeniz yeterlidir files to include. Çalışma alanının dışında bile bir şeyler bulabilir / değiştirebilirsiniz. File dosya adlarında değil dosyalarda arama yapar. (Herkes çalışma alanının dışında dosya adını nasıl arayacağını biliyor mu?)
JinSnow

22

Tek bir dosyadaki (şu anda açık) bir dizeyi değiştirmek için: CTRL + H

Çalışma alanı düzeyinde değiştirmek için: CTRL + SHIFT + H


Not: Ctrl + Shift + H tuşlarını kullanırken aramanın çalışması için enter tuşuna basmanız gerekir.
Aaron Franke

19

Bu en iyi yol.

  1. Önce imlecinizi üyeye getirin ve F2'ye tıklayın.

  2. Ardından yeni adı yazın ve Enter tuşuna basın. Bu, projenizdeki her dosyadaki tüm olayları yeniden adlandırır.

Bu, birden fazla dosyada yeniden adlandırmak istediğinizde idealdir. Örneğin, Açısal bir hizmette herkese açık olarak erişilebilir bir işlevi yeniden adlandırmak ve bunu kullanan her yerde güncellenmesini isteyebilirsiniz.

Daha fazla harika araç için şiddetle tavsiye ederim: https://johnpapa.net/refactoring-with-visual-studio-code/


yalnızca geçerli dosyadaki oluşumları yeniden adlandırmak istersem ne olur?
temirbek

@temirbek bu isteği bir süredir takip ediyorum. 2 yıldan fazla oldu ve henüz uygulanmadı. github.com/Microsoft/vscode/issues/14836
DonDaniel

Merhaba, ayrıca ilgili klasörleri yeniden adlandırır ve içe aktarır mı?
Tamashi Kaizen

5

Açık Visual Studio Kod Tuş Bağlantıları sayfasında bölüm Klavye Kısayolları Referans her ana işletim sistemi için bir PDF bağlantıları vardır. Açıldıktan sonra, "dosyalarda değiştir" i veya ihtiyacınız olabilecek diğer kısayolları arayın.

Başka bir yol, istediğiniz komut da dahil olmak üzere ilgili tüm komutları listelemek için "replace" yazabileceğiniz Komut Paletini ( ctrl/cmd+ shift+ P) kullanmaktır :

Dosyalarda Değiştir ctrl/cmd+ shift+H

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.