Bagaimana cara saya memotong spasi spasi dengan Notepad ++ secara otomatis?

70

Saya tidak ingin menghapus baris yang kosong sepenuhnya, tetapi saya ingin menghapus tab dan spasi kosong di dalamnya. Eclipse biasanya melakukannya (melalui pengaturan preferensi) ketika kita menyimpan file.

Misalnya, file sebelum disimpan ($ = akhir baris):

def shuffle(list):$
    import random $
    $
    random.shuffle(list)
    $
$

... dan ketika saya menyimpan ini di editor, Eclipse melakukan hal berikut:

def shuffle(list):$
    import random$
$
    random.shuffle(list)
$
$

Bagaimana saya bisa memotong spasi spasi dengan Notepad ++ secara otomatis?

Srikanth
sumber
Untuk memangkas spasi putih dari beberapa file sekaligus, lakukan Temukan & Ganti untuk ekspresi reguler [ \t]+$. ( Cuplikan Layar ) ( Sumber )
Stevoisiak

Jawaban:

74

Anda harus dapat melakukan pencarian / penggantian ekspresi reguler di Notepad ++ menggunakan pola seperti \s+$.

Ada juga beberapa opsi di bawah menu Edit -> Operasi Kosong yang mungkin sesuai dengan kebutuhan Anda.

Di bawah menu "Makro" ada pilihan untuk "Potong trailing dan simpan". Jika Anda perlu melakukan ekspresi reguler dimungkinkan untuk membuat makro namun saya belum pernah mencobanya.

Johanno
sumber
9
ya di Notepad ++ versi saya, ada Edit -> Trim Trailing Space, tapi bisakah saya memicu itu secara otomatis untuk setiap penyimpanan?
Srikanth
5
Ada opsi untuk "Trim trailing and save" di bawah menu Makro
johanno
22
Saya telah mengikat tombol Ctrl + S ke Macro -> Trim Trailing and saveopsi, menggunakan Settings -> Shortcut Mapper...opsi. Ini jauh lebih baik daripada harus ingat untuk menjalankan makro sepanjang waktu. :)
Casey Kuball
Pencarian \s+$akan cocok dengan baris kosong apa pun, apa pun spasi. Saya sarankan menggunakan [ \t]+$sebagai gantinya. (Lihat Bagaimana cara menghapus spasi spasi tambahan menggunakan ekspresi reguler? )
Stevoisiak
63

Alt+ Shift+ Smelakukan apa yang Anda inginkan. Bahkan itu juga menyimpan file.

Memperbarui

Seperti dicatat 10basetom, Anda dapat menetapkan pintasan yang berbeda untuk makro ini. Anda dapat mengontrol pintasan di bawah Pengaturan> Pemintas Peta> [Makro] .

masukkan deskripsi gambar di sini

kon psik
sumber
10
Untuk menghapus spasi tambahan saat Anda menyimpan: (1) Hapus pintasan default Save (Ctrl + S), lalu (2) tetapkan makro "Trim Trailing and save" ke Ctrl + S.
thdoan
1
Dan untuk menghapus Savepintasan default , klik dua kali pada Shortcutbidang lalu pilih Nonedari kotak kombo.
Mitch
2
Saya menemukan halaman ini, memperbarui pintasan saya seperti yang Anda sarankan dan menggunakannya dengan bahagia selamanya. Kemudian baru-baru ini saya harus memasang mesin baru dan benar-benar lupa bagaimana saya melakukannya sebelumnya ... Mencari lagi dan menemukan jawaban ini lagi! Anda harus mendapatkan +2 karena membantu saya seperti ini!
Stijn de Witt
Pengaturan> Shortcut Mapper, lalu tab 'Makro'
bonob
Ini harus menjadi jawaban yang dipilih untuk saya ^^
Nam G VU
4

Plugins> Plugin Manager> Show Plugin Manager
Di bawah tab Available, pilih EditorConfig dan klik [Instal]

Tambahkan .editorconfigfile ke folder (beri nama .editorconfig.untuk menghindari kesalahan Windows "Anda harus mengetikkan nama file" - titik terakhir akan dihapus)

# trims trailing whitespace for all files; filter like [*.{json,xml}]
[*]
trim_trailing_whitespace = true

EditorConfig juga dapat menentukan pengkodean, indentasi dan karakter baris baru, dll.

Pengembang web
sumber
1
Tampaknya plugin EditorConfig untuk Notepad ++ sebenarnya tidak mendukung opsi trim_trailing_whitespace
jpa
1
Dukungan untuk trim_trailing_whitespaceditambahkan pada 2016-04-20 . / cc @jpa
Stijn
Saya berharap saya bisa lebih meningkatkan ini, bahkan jika hanya untuk .editorconfig.trik. Untuk berpikir bahwa saya telah menggunakan membuat file-file melalui Command Prompt seperti manusia gua selama bertahun-tahun.
jamesdlin
4

Saya mengubah cara pintas untuk menemukan solusi untuk ini. Saya menghapus shortcut pintas (mapper pintas -> menu utama -> simpan) dan memetakan Ctrl+ Ske makro "Trim Trailing and Save" (mapper pintas -> makro -> trim trailing dan save). Dengan cara ini makro menggantikan fungsi penyimpanan dan tidak perlu mengingat pintasan Alt+ Shift+ S.

Tenang
sumber
2

Jawaban yang ada terlihat tua.

Coba jalur di bawah ini:

Notepad++ > Edit (menu) > Blank Operations > Trim Trailing Space
Manohar Reddy Poreddy
sumber
1
Saya mencatat makro untuk "Trim Trailing Spaces" DAN "convert Tabs to Spaces", untuk konsistensi dalam kontrol versi. Saya kemudian Disimpan makro dengan kombinasi kode kunci Atl-T. Alt-T, Ctrl-Sadalah kombo cepat untuk memotong, mengonversi, dan menyimpan. Saya sengaja melakukan ini dalam dua langkah, karena saya tidak ingin memangkas file penurunan harga, atau mengubah tab / trailing ketika mengedit file pengelola lain yang mungkin default ke standar yang berbeda dari yang saya gunakan. Notepad++ > Edit (menu) > Blank Operations > Trim Trailing Spacedan Notepad++ > Edit (menu) > Blank Operations > TAB to Space. (N ++ juga memiliki ... Space to TABopsi.)
SherylHohman
1

Ctrl+ F-> Alihkan ke tab Ganti ->

Temukan apa: \ t \ r

Ganti dengan:

Pastikan Diperpanjang modus pencarian aktif, lalu ganti semua.

Jika Anda ingin menyimpan juga, johanno memiliki solusi yang benar. Makro -> Potong Trailing dan Simpan berfungsi seperti yang ditentukan.

dr4g1116
sumber
Jawaban ini sudah usang
Antonio
1

Cara lain -

  1. Edit> Operasi Kosong> Hapus Kosong dan EOL yang Tidak Perlu
  2. Plugin> XML Tools> Pretty print (hanya XML - dengan jeda baris)

'XML Tools' adalah plugin yang dapat kita pasang untuk notepad ++

Pritam Karmakar
sumber
1

Alt+ Shift+ Sadalah pintasan default untuk ini. Ada di menu bar sebagai Macro -> Trim Trailing and save. Anda dapat mengubah ini di bawah Settings -> Shortcut Mapper -> [Macros].

Memutar ulang 'Trim Trailing and save' melalui Shortcut Mapper

Membangun jawaban kon psych , jika Anda ingin secara otomatis memotong spasi putih kapan saja Anda simpan, Anda dapat mengatur ini untuk menggantikan perilaku Ctrl+ default S. Ingatlah untuk mengubah atau menghapus pintasan penyimpanan asli untuk mencegah konflik.

Menonaktifkan pintasan 'save' default

Stevoisiak
sumber
+1 untuk 'Ingatlah untuk mengubah atau menghapus pintasan penyimpanan asli untuk mencegah konflik.'
Wafeeq
1

Untuk mempertahankan perintah menu yang ada, petakan (sebelumnya tidak ditetapkan) Ctrl+ Tuntuk memotong spasi tambahan. Lalu, lakukan Ctrl+ Tdan Ctrl+ Sbersamaan.

Ini memungkinkan Anda membuat perubahan kecil pada file tanpa membingungkan utilitas perbandingan teks dan program kontrol sumber dengan mengubah (berpotensi) ratusan baris.

al h
sumber
1

Ini adalah langkah-langkah tepat untuk mengarahkan ulang pintasan "Simpan" standar Ctrl+ Ssebagai gantinya "Potong Trailing dan Simpan"

  • Pengaturan-> Shortcut Mapper ...
  • Tab Menu Utama, klik dua kali pada "Simpan", ubah Ske Tidak Ada
  • Tab Macro, klik dua kali pada "Trim Trailing Space and Save", ubah ke Ctrl+S

Pintasan Macro juga dapat dimodifikasi dari Makro-> Ubah Pintasan / Hapus Makro ...

Antonio
sumber
Terima kasih, ini benar-benar jawaban terbaik
simon tan