Tslint: peningkatan aturan indent

Dibuat pada 19 Agu 2015  ·  37Komentar  ·  Sumber: palantir/tslint

Mirip dengan ESLint , kita harus dapat menerapkan indentasi 2-spasi atau 4-spasi melalui opsi seperti:

  • [x] [true, "spaces", 2]
  • [x] [true, "spaces", 4]

Selain itu, sebaiknya memiliki opsi "detect" (seperti yang disarankan di #122) yang mencoba menebak gaya indentasi dalam file dan menegakkan konsistensi:

  • [ ] [true, "detect"]
P1 Fixed Enhancement

Komentar yang paling membantu

@dimitriy-k #2723 baru saja bergabung, itu akan ada di rilis berikutnya.

Semua 37 komentar

+1

+1 untuk menegakkan jumlah spasi.

+1

Apakah ini hanya berfungsi jika lekukan dapat dibagi dengan jumlah ruang yang dikonfigurasi?

{
    theObject.something()
             .more(); // 13 spaces.
}

Metode di atas (sejajarkan titik) tidak akan didukung?

@ Glen-84 Saya melihat dua kemungkinan:

  • Pemeriksaan lekukan baris demi baris (di mana contoh Anda tidak akan diizinkan
  • Pernyataan demi pernyataan, periksa lekukan. Karena dalam contoh Anda, theObject.something().more() semuanya adalah satu pernyataan, itu hanya akan memeriksa level indentasi di awal.

Saya pikir mereka berdua memiliki pro dan kontra, tetapi yang kedua mungkin lebih disukai di sini.

:+1:

+1
@JKillian -> Saya akan memilih opsi # 2 di mana pernyataan diperiksa, tidak setiap baris.

+1 opsi 2, memeriksa pernyataan demi pernyataan

@JKillian Terima kasih. Opsi kedua terlihat bagus. =)

Sunting: Saya berubah pikiran .

+1 opsi 1

Cara yang baik adalah yang ESLINT http://eslint.org/docs/rules/indent

+9000 SSJ3
Tolong, teman-teman, terapkan opsi indentasi 4 spasi secepatnya. Saya mulai banyak memprogram dalam TypeScript dan indentasi default 2 spasi terasa sangat buruk bagi saya. Bagi sebagian orang, sangat sulit untuk melihat level indentasi beberapa kode dengan hanya 2 spasi ...

@radarsu Anda mungkin ingin mencoba menggunakan .editorconfig untuk saat ini.

@radarsu Saat ini aturan lekukan baru mengetahui jika Anda memiliki kesalahan lekukan berdasarkan pada bagaimana kode Anda sejajar dengan pernyataan sebelumnya. Anda dapat menggunakan empat lekukan spasi dan membuat aturan senang (sebenarnya, itulah yang dilakukan kode sumber TSLint)

@JKillian tahu betapa sulitnya mengatasi ini? saya ingin mulai menerapkan ukuran indentasi. Saya terbuka untuk meretasnya jika tidak terlalu banyak waktu yang terbuang (hanya punya begitu banyak waktu selama minggu depan).

Sulit untuk mengatakan betapa sulitnya itu - saya berharap itu tidak akan sederhana setidaknya haha. Pasti pergi untuk itu meskipun!

@mcriss @strike-sbolel Tolong berhenti menambahkan +1 komentar.

Sepertinya upaya serupa sedang dilakukan di sini https://github.com/buzinas/tslint-eslint-rules/issues/74

Saya berubah pikiran , karena opsi 2 mengizinkan kode seperti:

{
    theObject.something()
             .more() // 13 spaces.
           .wrong()
                    .moreWrong();
}

Di dunia yang ideal, kami akan menggunakan opsi 1 dengan pengaturan untuk mengizinkan (atau menegakkan) garis "terbungkus" untuk diposisikan di bawah periode terakhir di baris sebelumnya.

{
    theObject.something()
             .more()  // 13 spaces.
             .right() // Must be the same as above now, because the previous line used this indentation mode.
             .moreRight();
}

Atau:

{
    theObject.something()
        .more() // (4 x 2) spaces.
        .right()
        .moreRight();
}

Bisakah kami merilis pembaruan?

@owais peningkatannya belum diterapkan di inti TSLint. Tautan itu ke repo eksternal dengan aturan khusus.

Oh. Saya tidak menyadari bahwa saya sedang melihat repo lain. :) Terima kasih atas tautannya. Saya pikir saya mungkin menggunakan itu.

@adidahiya Apakah ini masih sesuatu yang luar biasa, dan apakah saya layak membuka PR? Atau apakah lebih baik menggunakan aturan khusus yang Anda tautkan?

@pudgeball pasti akan dengan senang hati menerima PR (seperti yang ditunjukkan oleh label)

perhatikan bahwa #2723 tidak memperbaiki masalah ini. Ini memperbaiki tab -> x spasi dan x spasi -> tab, tetapi tidak memperbaiki x spasi -> y spasi

masih belum ada pembaruan pada ukuran indentasi?... permintaan dari 2015

@dimitriy-k #2723 baru saja bergabung, itu akan ada di rilis berikutnya.

Apa yang akan disebut aturan ini? 😄

@dolanmiu itu bukan aturan baru. Ini diterapkan persis seperti yang disebutkan dalam deskripsi masalah asli. Cukup klik PR yang saya tautkan.

@adidahiya Saya menggunakan versi terbaru dari tslint 5.3.2

Dan menggunakan yang berikut ini:

    "indent": [
      true,
      "spaces",
      4
    ],

Saya memiliki file yang 2 semua 2 spasi, tetapi tidak mendeteksinya! Apakah saya melakukan sesuatu yang salah, atau ada bug?

@dolanmiu ya itu sepertinya masalah baru, saya juga perhatikan #2723 tidak berfungsi seperti yang saya harapkan. Saya mengajukan https://github.com/palantir/tslint/issues/2814

ada pembaruan?

"indent": [true, "spaces", 4] tidak bekerja untuk saya

@liul85 coba instal tslint-eslint-rules dan gunakan terIndentRule

@leocaseiro terima kasih telah berbagi, saya akan mencobanya.

Masih tidak berfungsi di tslint 5.11.0

"indent": [true, "spaces", 4] masih tidak berfungsi...

Apakah halaman ini membantu?
0 / 5 - 0 peringkat