Js-beautify: HTML: tambahkan opsi untuk mempertahankan pembungkusan atribut secara manual

Dibuat pada 4 Feb 2017  ·  19Komentar  ·  Sumber: beautify-web/js-beautify

Opsi --wrap-attributes memiliki kemungkinan nilai berikut: auto|force|force-aligned|force-expand-multiline
Ini memungkinkan untuk memadatkan semua atribut menjadi satu baris atau membungkusnya secara otomatis masing-masing.

Apakah mungkin untuk mempertahankan pembungkus awal?

html enhancement

Komentar yang paling membantu

Ini adalah ide bagus, tidak ada opsi yang memungkinkan untuk membungkus secara manual.

Akan sangat bagus untuk memiliki opsi yang akan melakukan force|force-aligned|force-expand-multiline hanya jika panjang garis bungkus (default 120) telah dipukul karena auto hanya membungkus atribut sebanyak yang diperlukan. Sesuatu seperti opsi auto-expand-multiline|auto-aligned ?

Semua 19 komentar

Ini adalah ide bagus, tidak ada opsi yang memungkinkan untuk membungkus secara manual.

Akan sangat bagus untuk memiliki opsi yang akan melakukan force|force-aligned|force-expand-multiline hanya jika panjang garis bungkus (default 120) telah dipukul karena auto hanya membungkus atribut sebanyak yang diperlukan. Sesuatu seperti opsi auto-expand-multiline|auto-aligned ?

@Robula
Silakan buka edisi baru untuk apa yang Anda miliki di paragraf kedua Anda.

@Montago , @Andikki - apa yang Anda gambarkan adalah opsi bernama sesuatu seperti unchanged atau preserve , benar?

@bitwiseman tidak, hanya opsi lain seperti "Force-Aligned" ... melainkan "auto-aligned"

Apa yang harus dilakukan, hanyalah menyelaraskan semua atribut yang telah dibungkus secara manual.
semua elemen / atribut lainnya tidak tersentuh.

@Montago - Ah, jadi lebih seperti align-only .

ya itu masuk akal :)

benjolan untuk ini!

Akan sangat bagus untuk secara manual memiliki beberapa atribut di baris baru dan beberapa di baris yang sama. Kemudian saya dapat memutuskan mana yang saya inginkan dan yang lainnya secara otomatis diformat. Terima kasih

@bitwiseman Saya tidak berpikir penyelarasan diperlukan, tetapi jika ya, harus ada dua opsi - satu untuk menerapkan indent_size yang biasa, yang lain untuk menyelaraskan - semuanya sambil menjaga jeda baris awal.

Contoh
Sumber:

<input type="text"     class="form-control"  autocomplete="off" 
      [(ngModel)]="myValue"          [disabled]="isDisabled" [placeholder]="placeholder" 
  [typeahead]="suggestionsSource" [typeaheadOptionField]="suggestionValueField" [typeaheadItemTemplate]="suggestionTemplate"   [typeaheadWaitMs]="300"
                        (typeaheadOnSelect)="onSuggestionSelected($event)" />

Memaksa lekukan saja:

<input type="text" class="form-control" autocomplete="off" 
  [(ngModel)]="myValue" [disabled]="isDisabled" [placeholder]="placeholder" 
  [typeahead]="suggestionsSource" [typeaheadOptionField]="suggestionValueField" [typeaheadItemTemplate]="suggestionTemplate" [typeaheadWaitMs]="300"
  (typeaheadOnSelect)="onSuggestionSelected($event)" />

Hanya memaksa penyelarasan:

<input type="text" class="form-control" autocomplete="off" 
       [(ngModel)]="myValue" [disabled]="isDisabled" [placeholder]="placeholder" 
       [typeahead]="suggestionsSource" [typeaheadOptionField]="suggestionValueField" [typeaheadItemTemplate]="suggestionTemplate" [typeaheadWaitMs]="300"
       (typeaheadOnSelect)="onSuggestionSelected($event)" />

Tidak yakin apakah ini masalah yang tepat untuk meminta ini, tetapi saya merasa opsi auto-align harus bertindak seperti auto ; membungkus setelah cutoff kolom tertentu, dan jika sebuah garis terbungkus, tag akan diperlakukan seperti force-align .

Contoh
Ratakan paksa ketika panjang garis lebih besar dari wrapLineLength:

<div [isWrapped]="false" [attributesAligned]="false"></div>

<really-long-angular-component-that-would-force-wrapping class="wrapped"
                                                         [isWrapped]="true"
                                                         [attributesAligned]="true">

Hampir menjelajahi 5 atau 6 topik di mana orang menantikan fitur ini untuk diterapkan. Karena tidak, akan sangat bagus untuk memiliki ini di vscode dengan if wrap requries dan force-alignment untuk baris yang sesuai ini vs.

😞.

@kaankucukx Tidak yakin apa yang Anda maksud? Apakah itu tercakup dalam contoh sebelumnya?

+1 untuk ini, saat ini saya memiliki hasil terbaik dengan force untuk setang, tetapi masih menghasilkan pembungkus yang tidak diinginkan di dalam blok setang saya:

   </label>
     {{#artdeco-hoverable-trigger placement="right"
      as
      |card|}}

dan

  <ul class="text-ad-edit-panel__dropdown-list">
    {{#each yourCompanyPageTypes
      as
      |companyPageType
      index|}}

Saya hanya perlu mempertahankan baris baru atribut baris baru secara manual, tetapi mendapatkan lekukan yang benar.

FWIW ini tidak berfungsi di editor mana pun, yang saya temukan, kecuali untuk Intellij. Akan senang melihat ini diterapkan!

FWIW ini tidak berfungsi di editor mana pun, yang saya temukan, kecuali untuk Intellij. Akan senang melihat ini diterapkan!

Bekerja di Netbeans juga.

FWIW tidak dapat menjalankan ini di VSCode
Berkembang dengan Vue
Ekstensi: Lebih Cantik, Vetur
Pemformatan terus mengembalikan semua tag dan atribut html ke satu baris. Saya telah menggunakan banyak solusi yang disarankan.
Akan sangat bagus untuk mengetahui apakah orang-orang ini bekerja dalam file .vue di VSCode

@christoferd tentang itulah masalah ini. Tidak bekerja. js-beautify tidak mampu menjaga jeda baris. Itu akan selalu mengaturnya ke satu baris.

Saya terus kembali menggunakan WebStorm karena mereka memiliki formatter sendiri dan berfungsi dengan jeda baris.

Terkait dengan #1404

Terima kasih telah mengerjakan perbaikan @MacKLess! Saya dengan cemas menunggu rilis baru, jadi saya bisa mencobanya

Apakah halaman ini membantu?
0 / 5 - 0 peringkat