Visual Studio'nun dosyalarda satır sonlarını karıştırmasını durdurun


124

Visual Studio 2010'da metin tabanlı bir dosya açarken, düzenlemelerimi orijinal dosyanın satır sonlandırma biçimi yerine CRLF ile yazacaktır. VS'nin bunu yapmasını nasıl durdurabilirim? Yarı saygın bir editör bu yeteneğe sahip olmalıdır.

Daha da kötüsü, VS dosyayı CRLF'de bölümlerle yazdığından beri (dosyayı yeniden açarken) benden dosya sonunu dönüştürmemi isteyen bir iletişim kutusu sunacak.


Bu eklenti, deneyin: Strip'em
yapar


1
@JonWatte 28 Nisan 2016 itibarıyla
gözden geçiriliyor

2
Bugünlerde. Nihayet düzelttiklerini görmek güzel.
Brett Ryan

Yanıtlar:


84

Açık Dosya menüsünden seçin Gelişmiş Seçenekleri Kaydet orada kontrol edebilirsiniz.

Düzenleme: İşte belgeler , önce bir dosya açmalısınız.


5
VS2010 nihai kurulumumda bu menü öğesine sahip değilim.
Palantir

6
VS2010 Ultimate'da bu ayara sahibim, ancak bu seçenek genel kalıcı bir seçenek değil ve yalnızca mevcut düzenleyici oturumu için geçerli. Tek istediğim, VS'nin dosyayı düzenlerken şu anda açık olan dosyaların satır sonlarına saygı duyması.
Brett Ryan

2
Dosya + Farklı Kaydet, Kaydet düğmesindeki oka tıklayın. Aynı şey ama dosyaya özel.
Hans Passant

13
Komutunu görmüyorum olanlar için Filemenü, sen gitmek gerekebilir Tools, Customize, Commandssekme, Menu Bar: File, Add Command..., File, Advanced Save Options..., Ok, Close. Şimdi seçeneğe sahip olmalısın.
davidg

92
Bu aslında sorunu çözmez, çünkü HER KAZANDIĞINIZDA bu seçeneği seçmeniz gerekir. Ayrıca her kaydettiğinizde SATIR SONU SEÇENEĞİ SEÇMENİZ gerektiği anlamına gelir. Diğer tüm metin düzenleyicilerinin desteklediği doğru davranış, yükleme sırasında biçimi algılamak ve kaydetme sırasında bu biçimde kaydetmektir. VS2010'un bu AFAICT'i yapmasının bir yolu yok ve bu utanç verici.
Jon Watte

70

Visual Studio 2015'te (bu, aynı değer için 2019'da kalır), ayarı kontrol edin:

Araçlar> Seçenekler> Ortam> Belgeler> Yüklemede tutarlı satır sonlarını kontrol edin

VS2015, artık tutarsız oldukları bir dosyayı açtığınızda satır sonlarını dönüştürmenizi isteyecektir, bu nedenle tek yapmanız gereken dosyaları açmak, komut isteminden istenen seçeneği seçmek ve tekrar kaydetmek.


4
Bu şimdi yardımcı olabilirken, sorunun visual-studio-2010 olarak etiketlendiğini unutmayın .
dakab

4
Bu seçenekteki sorun, size belgede hangi satır sonlarının en yaygın olduğunu söylememesidir, bu nedenle önce belgeyi Notepad ++ ile açmalı ve sonra yalnızca doğru seçeneği seçmeliyim. Ayrıca bu bir yükleme sorunu değil, tasarruf sorunudur.
Strategy Thinker

3
Karşılaştığım sorun, dosyaları LF sonlandırmalarıyla açıyor olmam ve sonra düzenlediğim veya eklediğim her satırın CR LF sonlarıyla kaydedilmesiydi. Dosyayı tekrar açtığımda bana tutarsız satır sonlarını neye değiştirmek istediğimi soruyor, LF'yi seçiyordum ve sonra süreç tekrar ediyordu. işte nasıl
FragmentalStew

Bu, karışık satır sonlarına sahip bir metni kopyalayıp yapıştırma sorununu çözmez. Kontrolü tetiklemek için dosyayı yeniden açmanız gerekir.
Andry

22

VS2010 + ile bir eklenti çözümü vardır: Line Endings Unifier .

Eklenti yüklendiğinde, çözüm gezgininde dosya ve klasörlere sağ tıklayabilir ve menü öğesini çağırabilirsiniz. Unify Line Endings in this file

Bunun için yapılandırma şu adresten edinilebilir:

Araçlar -> Seçenekler -> Satır Sonları Birleştiricisi.

Dahil edilen varsayılan dosya uzantısı listesi oldukça dardır:

 .cpp; .c; .h; .hpp; .cs; .js; .vb; .txt;

Şunun gibi bir şey kullanmak isteyebilirsiniz:

 .cpp; .c; .h; .hpp; .cs; .js; .vb; .txt; .scss; .coffee; .ts; .jsx; .markdown; .config

11
Bu aslında bir eklentidir ve varsayılan olarak kurulmaz.
boş

1
@null buna işaret ettiğiniz için teşekkürler, aslında aradığım şey buydu. Yanıtı tüm bunları daha iyi yansıtacak şekilde güncelledim
Chris Marisic

13

bkz. http://editorconfig.org ve https://docs.microsoft.com/en-us/visualstudio/ide/create-portable-custom-editor-options?view=vs-2017

  1. Mevcut değilse, projeniz için .editorconfig adlı yeni bir dosya ekleyin

  2. Düzenleyici yapılandırmasını tercih ettiğiniz davranışı kullanmak için değiştirin.

Sekmeler yerine boşlukları ve tüm kod dosyaları için CRLF'yi tercih ederim.
İşte benim .editorconfig

# http://editorconfig.org
root = true

[*]
indent_style = space
indent_size = 4
end_of_line = crlf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true

[*.md]
trim_trailing_whitespace = false

[*.tmpl.html]
indent_size = 4

[*.scss]
indent_size = 2 
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.