Notepad ++ XML Auto Indent + Penutup Tag


2

Saya memigrasikan pertanyaan yang saya posting di stackoverflow ke sini karena mungkin lebih relevan.

Ini pertanyaannya:

Saya sedang mencari cara untuk kode XML (mxml, khususnya) di Notepad ++ sedemikian rupa sehingga mengikuti perilaku plugin "Indent by Fold" - lekukan setelah menekan 'enter' mengikuti tag pembuka - tetapi juga termasuk tag otomatis yang menutup mirip untuk apa yang disediakan oleh plugin "XML Tools".

Masalah dengan mengaktifkan keduanya sekaligus adalah bahwa saya mulai dengan sesuatu seperti ini:

<hello| 

(Catatan: karakter '|' mewakili kursor)

Kemudian setelah menekan tombol '>', saya mendapatkan ini:

<hello>|</hello>

Dan setelah menekan 'Enter,' saya mendapatkan sesuatu yang terlihat seperti ini:

<hello>
   |</hello>

Yang saya cari adalah sesuatu yang terlihat seperti ini (setelah menekan tombol '>'):

<hello>
   |
</hello>

Bantuan apa pun akan sangat dihargai.

Jawaban:


2

Inilah solusi cepat dan kotor saya. Benar-benar hanya melibatkan pembuatan makro dan mengaktifkan fitur alat XML.

Pertama, hapus plugin "Indent By Fold", jika diinstal.

Kemudian, aktifkan fitur "Tag tutup otomatis" dengan masuk ke Plugin> Alat XML.

Juga, aktifkan indentasi Notepad ++ dengan membuka Pengaturan> Preferensi> MISC. Tab

Selanjutnya, pergi ke Makro> Mulai Perekaman.

Sekarang, tekan tombol berikut dalam urutan ini:

>, masuk, masuk, naik, tab.

Lalu, buka Macro> Stop Recording. Diikuti oleh, Makro> Simpan Makro Terekam Saat Ini.

Ini akan membuat '>' final serta tag penutup, tetapi kemudian membiarkan kursor Anda di-indentasi di baris baru antara tag pembuka dan penutup.

Saya menyimpan milik saya sebagai "CTRL + '.'".

Alasan di balik ini adalah jika saya ada di sini:

<hello|

Hal yang wajar untuk dilakukan adalah dengan menekan tombol '>'. Karena saya perlu menekan SHIFT + '.' pada keyboard QWERTY untuk mendapatkan karakter ini, saya pikir saya akan menggunakan CTRL + '.' (hanya satu tombol lagi) untuk menjalankan makro dan menyimpan SHIFT + '.' untuk kasus-kasus di mana saya hanya ingin karakter lama polos (mis <hello />.).

Ini hasilnya setelah memukul CTRL + '.'

<hello>
   |
</hello>

Saya akan mencari solusi yang lebih elegan, tetapi untuk saat ini sepertinya cukup bagus.

Semoga ini membantu!

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.