Automatyczne zawijanie wierszy w kolumnie w VSCode

105

Jak mogę automatycznie zawijać wiersze na stałe w VSCode? Rozumiem przez to, że jeśli linia osiągnie określoną kolumnę, automatycznie wstaw nową linię na granicy słowa najbliżej tej kolumny bez przekraczania. Vim ma ustawienie o nazwie textwidth, które robi to, czego lubię używać podczas edycji Markdown. O ile wiem, nie wygląda to na VSCode. Po prostu ma sposoby na kontrolowanie pakowania w oprogramowanie.

Brian Schlenker
źródło
2
Czy ktoś mógłby już na to odpowiedzieć!
umayfindurself
Twoje wykorzystanie tego w odniesieniu do przecen jest genialne, nigdy nie myślałem o takich trudnych przerwach.
Mark Carpenter Jr

Odpowiedzi:

143

VSCode nie obsługuje tego po wyjęciu z pudełka. Ale możesz zainstalować Rewraprozszerzenie, które pozwala sformatować blok, w którym aktualnie znajduje się kursor, naciskając Alt+ Q.

Rewrap nie wymaga dalszych ustawień, ponieważ odczytuje ustawienia VSCode w celu uzyskania kolumny, w której ma nastąpić przerwanie.

Rewrapobsługuje również automatyczne zawijanie (domyślnie wyłączone): https://github.com/stkb/Rewrap/wiki/Auto-wrap

oli_obk
źródło
2
Oznaczając to jako zaakceptowaną odpowiedź i edytując, aby wspomnieć, że teraz obsługuje automatyczne ponowne pakowanie!
Brian Schlenker,
1
Wygląda na to, że dotyczy to tylko komentarzy blokowych? co z liniami kodu? Wypróbowałem najnowszą wersję, czyli 1.9.1, a komentarze blokowe są automatycznie zawijane, jednak w przypadku linii kodu (używam języka C) tak nie jest.
Yusuf Husainy
3
Warto wspomnieć, że działa bardzo dobrze z MarkDown ❤
chesterbr
2
Nie mogę zawijać linii kodu za pomocą ReWrap, jak wskazał @YusufHusainy.
Fawwaz Yusran
39

Niestety, VSCode nie ma jeszcze tej funkcji. Ale nadal możemy sprawić, że będzie tak blisko, jak piękna funkcja automatycznego zawijania słów w vimie .


Pierwszy krok

Musimy skonfigurować funkcję miękkiego zawijania słów w VSCode.

  1. Otwórz ustawienia VSCode za pośrednictwem Code => Preferences => Settings.
  2. Dodaj te 3 linie ustawień edytora.

    "editor.wordWrap": "wordWrapColumn",
    "editor.wrappingIndent": "same",
    "editor.wordWrapColumn": n
    

    Nie zapomnij zmienić ( n ) na preferowaną długość linii kolumn. Dla mnie wygodniej jest ustawić go na 60.

  3. Zapisz to ustawienie.

Głównym celem tego pierwszego kroku jest zapewnienie nam większego komfortu podczas pisania, ponieważ nie musimy ręcznie wpisywać Enteri wyświetlać długiej linii tekstu.


Drugi krok

Musimy zainstalować emulację Vima dla VSCode i ustawić vim textwidth.

  1. Zainstaluj emulację Vima poprzez rozszerzenia VSCode.
  2. Otwórz ustawienia VSCode za pośrednictwem Code => Preferences => Settings.
  3. Dodaj tę linię ustawień vima.

    "vim.textwidth": n,

    Nie zapomnij zmienić ( n ) na preferowaną długość linii kolumn. Dla mnie ustawię to na to samo z ( n ) w pierwszym kroku.

  4. Zapisz to ustawienie.


Rzeczywiste użycie

Kiedy skończysz pisać cały dokument, możesz w ten sposób sformatować go tak, aby był mocno zawijany.

  1. Blokuj cały tekst za pomocą trybu linii wizualnych ( Shift+ v)
  2. Wpisz „gq”
Wanda Ichsanul Isra
źródło
Mówisz „jeszcze”. Czy znasz jakieś plany lub trwające prace?
oli_obk
Nie, nie jestem pewien. Planuję zaproponować tę funkcję zespołowi programistów VSCode. Dlatego mówię „jeszcze”, ponieważ nadal może istnieć możliwość dodania tej funkcji w przyszłości VSCode.
Wanda Ichsanul Isra
Co to znaczy „tryb linii wizualnej”? Używając Shift + v, po prostu wprowadza duże V do edytora
user1081679,
Wpisz go, gdy jesteś w trybie normalnym, a nie w trybie wstawiania
Wanda Ichsanul Isra
14

Teraz VSCode obsługuje automatyczne zawijanie po wyjęciu z pudełka.

Ustawienia -> Edytor tekstu -> Ostatnie 3 opcje (jak na dzień dzisiejszy) służą do automatycznego zawijania.

  1. Zawijanie wyrazów (kontroluje sposób zawijania linii)
  2. Kolumna zawijania wyrazów (kontroluje kolumnę zawijania w edytorze)
  3. Wcięcie zawijane (kontroluje wcięcie zawijanych wierszy)

Domyślnie zawijanie słów jest wyłączone.

Arun Kumar Khattri
źródło
24
To jest dla "miękkiego" zawijania, czyli zawijania, gdy jest wyświetlane w edytorze, ale nie zawijania twojego rzeczywistego tekstu.
początek
2

Obecnie w narzędziu do śledzenia problemów z kodem VS w serwisie GitHub znajduje się otwarte żądanie, które można znaleźć tutaj

Mark Carpenter Jr
źródło
2

Hard Wrap Comments

Użyj rozszerzenia Rewrap .

Kod miękkiego opakowania

Dodaj następujące ustawienie (zastąp szerokość kolumny swoimi preferencjami): "editor.wordWrapColumn": 100

Następnie dodaj "editor.wordWrap": "wordWrapColumn"(zawijanie kolumny) lub "editor.wordWrap": "bounded"(zawijanie kolumny lub rzutni).

Komentarze typu Hard Wrap i kod Soft Wrap

Niestety rozszerzenie i ustawienia VSCode nie działają ładnie.

Zapraszam do głosowania za tą prośbą o funkcję .

jabacchetta
źródło