Secara otomatis membungkus garis keras pada kolom di VSCode

105

Bagaimana saya bisa secara otomatis membungkus garis keras di VSCode? Maksud saya, jika sebuah baris mencapai kolom tertentu, secara otomatis memasukkan baris baru pada batas kata yang paling dekat dengan kolom itu tanpa melewati. Vim memiliki pengaturan yang disebut textwidth yang melakukan ini yang saya suka gunakan saat mengedit penurunan harga. Sepertinya VSCode tidak melakukannya, sejauh yang saya tahu. Ini hanya memiliki cara untuk mengontrol softwrapping.

Brian Schlenker
sumber
2
Bisakah seseorang menjawab ini sudah!
umayfindurself
Penggunaan Anda dalam hal penurunan harga ini brilian, saya tidak pernah berpikir untuk menggunakan jeda keras seperti itu.
Mark Carpenter Jr

Jawaban:

143

VSCode tidak mendukung ini di luar kotak. Tetapi Anda dapat memasang Rewrapekstensi, yang memungkinkan Anda untuk memformat blok tempat kursor Anda berada saat ini dengan menekanAlt + Q.

Rewrap tidak memerlukan pengaturan lebih lanjut, karena membaca pengaturan VSCode untuk mendapatkan kolom yang akan dipecah.

Rewrapjuga mendukung pembungkusan otomatis (dinonaktifkan secara default): https://github.com/stkb/Rewrap/wiki/Auto-wrap

oli_obk
sumber
2
Menandai ini sebagai jawaban yang diterima dan mengedit untuk menyebutkan bahwa sekarang mendukung pembungkus ulang otomatis!
Brian Schlenker
1
Sepertinya ini hanya untuk memblokir komentar? bagaimana dengan baris kode? Saya mencoba versi terbaru yaitu 1.9.1 dan memblokir komentar memang terbungkus otomatis, namun untuk baris kode (saya menggunakan bahasa C) tidak.
Yusuf Husainy
3
Layak untuk disebutkan, ini bekerja sangat baik dengan Markdown ❤
chesterbr
2
Saya tidak bisa membungkus baris kode dengan ReWrap seperti yang ditunjukkan @YusufHusainy.
Fawwaz Yusran
39

Sayangnya, VSCode belum memiliki fitur ini. Tapi, kita masih bisa membuatnya sedekat vim dengan fitur pembungkus kata otomatis yang indah.


Langkah pertama

Kita perlu mengatur fitur soft word wrap di VSCode.

  1. Buka Pengaturan VSCode melalui Code => Preferences => Settings.
  2. Tambahkan 3 baris pengaturan editor ini.

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

    Jangan lupa untuk mengubah ( n ) dengan panjang garis kolom pilihan Anda. Bagi saya, saya merasa lebih nyaman menyetelnya ke 60.

  3. Simpan pengaturan ini.

Tujuan utama dari langkah pertama ini adalah agar kita lebih nyaman saat mengetik karena tidak perlu mengetik secara manual Enterdan melihat baris teks yang panjang.


Tahap kedua

Kita perlu menginstal emulasi Vim untuk VSCode dan mengaturnya vim textwidth.

  1. Instal emulasi Vim melalui ekstensi VSCode.
  2. Buka Pengaturan VSCode melalui Code => Preferences => Settings.
  3. Tambahkan baris pengaturan vim ini.

    "vim.textwidth": n,

    Jangan lupa untuk mengubah ( n ) dengan panjang garis kolom pilihan Anda. Bagi saya, saya akan mengatur ini menjadi sama dengan ( n ) di langkah pertama.

  4. Simpan pengaturan ini.


Penggunaan Sebenarnya

Setelah selesai menulis seluruh dokumen, Anda dapat memformatnya menjadi garis bungkus keras menggunakan cara ini.

  1. Blokir semua teks menggunakan mode garis visual (Shift + v)
  2. Ketik 'gq'
Wanda Ichsanul Isra
sumber
Anda mengatakan "belum". Apakah Anda mengetahui adanya rencana atau pekerjaan yang sedang berlangsung?
oli_obk
Tidak, saya tidak yakin. Saya memiliki rencana untuk mengusulkan fitur ini ke tim pengembang VSCode. Itulah mengapa saya mengatakan "belum" karena masih ada kemungkinan fitur ini ditambahkan di masa depan VSCode.
Wanda Ichsanul Isra
Apa yang dimaksud dengan "mode garis visual"? Menggunakan Shift + v hanya memasukkan huruf besar V ke editor
user1081679
Ketik saat Anda dalam mode normal, bukan mode sisip
Wanda Ichsanul Isra
14

Sekarang VSCode mendukung pembungkus otomatis di luar kotak.

Pengaturan -> Editor Teks -> 3 opsi terakhir (seperti pada hari ini) adalah untuk autowrapping.

  1. Word Wrap (Mengontrol bagaimana garis harus dibungkus)
  2. Word Wrap Column (Mengontrol kolom pembungkus editor)
  3. Wrapping indent (Mengontrol indentasi garis yang dibungkus)

Secara default Word Wrap tidak aktif.

Arun Kumar Khattri
sumber
24
Ini untuk pembungkusan "lunak", alias, membungkus saat ditampilkan di editor, tetapi tidak membungkus teks Anda yang sebenarnya.
forivall
2

Saat ini ada permintaan Terbuka untuk ini di pelacak Masalah VS Code di GitHub, Anda Dapat Menemukannya Di Sini

Mark Carpenter Jr
sumber
2

Komentar Keras

Gunakan ekstensi Rewrap .

Kode Bungkus Lembut

Tambahkan pengaturan berikut (ganti lebar kolom dengan preferensi Anda): "editor.wordWrapColumn": 100

Lalu tambahkan salah satu "editor.wordWrap": "wordWrapColumn"(membungkus di kolom) atau "editor.wordWrap": "bounded"(membungkus di kolom atau viewport).

Komentar Bungkus Keras dan Kode Bungkus Lembut

Sayangnya ekstensi dan pengaturan VSCode tidak berfungsi dengan baik.

Jangan ragu untuk memberi suara positif pada permintaan fitur ini .

jabacchetta.dll
sumber