Versi 5.7 dari Python autoindent di Notepad ++ setengah bekerja


3

Autoindenting tidak berfungsi pada Notepad ++ dengan benar. Saya tidak dapat menemukan file SciTE yang setara . Pengaturan menu -> Preferensi -> MISC -> Indentasi otomatis dicentang. Saya tidak dapat menemukan pengaturan indentasi Python selain dari Pengaturan menu -> Preferensi -> pengaturan lang / tab -> pengaturan tab default -> Python -> ukuran 4, ganti dengan spasi.

if True:
pass

Tapi itu terus membuat indentasi jika indentasi secara manual:

if True:
    #foo
    pass

Dalam SciTE berfungsi sebagaimana dimaksud. Saya menemukan variabel yang mengendalikan ini:

# python.properties
statement.indent.$(file.patterns.py)=5 class def elif else except finally for if try while with

scite:

if True:
    pass

Jawaban:


3

Pertanyaan ini layak mendapatkan jawaban yang diperbarui: sekarang ada plugin Python Indent yang, ketika diaktifkan (Menu Utama> Ekstensi> Python Indent> Aktifkan) indentasi saat mengetik Python. Baris baru setelah titik dua :seperti di def foo():indentasi baris berikut, menghasilkan:

def foo():
    """ works """
    pass

Dengan versi Notepad ++ saat ini, hadir Pengelola Plugin (Menu Utama> Ekstensi> Pengelola Plugin), yang membuat pemasangan plugin menjadi sangat mudah.


2

Sebagian besar pengembang program pengeditan teks menyalahgunakan indentasi nama, seperti halnya Notepad ++, yang hanya memiliki "mempertahankan indentasi".

Anda bisa menggunakan plugin NppAutoIndent .

Deskripsi di plugin Directory for Notepad ++ mengatakan:

Plugin NppAutoIndent memiliki lekukan 'pintar' untuk bahasa gaya-C, seperti C / C ++, PHP, Java dan semacamnya.

Ini adalah rilis pertama jadi jangan berharap itu sempurna, dan tentu saja itu tidak sepenuhnya sesuai dengan preferensi Anda;)

Tidak ada dukungan untuk HTML / XML dan seperti itu, mungkin nanti, pencocokan tag jauh lebih sulit untuk diterapkan.

Indentor lain adalah UniversalIndentGUI , yang secara tegas mengklaim dukungan untuk Python dalam daftar fitur-fiturnya , dan tersedia sebagai plugin Notepad ++.


@Ciantic: Jika Andalah yang menerima jawaban saya, hanya komentar yang menerima jawaban dan menugaskan hadiah adalah dua tindakan yang berbeda. Untuk nanti, gunakan tombol Bounty.
— harrymc

Bukan itu bukan aku. NppAutoIndent tidak berfungsi untuk Python. Saya akan menunggu jika seseorang menemukan solusi yang membantu Python, jika tidak ada yang muncul saya menerima ini juga.
— Ciantic

@Ciantic: Saya telah menambahkan UniversalIndentGUI, yang mungkin bisa lebih baik untuk Python.
— harrymc
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.