Ubah tab menjadi spasi di Notepad ++

1077

Bagaimana cara mengonversi tab menjadi spasi di Notepad ++?

Saya menemukan halaman web yang menyarankan itu mungkin, tetapi saya tidak dapat menemukan informasi tentang cara melakukannya.

Saya ingin dapat melakukannya, karena beberapa formulir web tidak menghormati kode dengan tab di dalamnya.

Helephant
sumber
4
Tab indent = 1x karakter, Space indent = lebih dari 3x karakter.
Yousha Aleayoub
SciTE melakukan ini dengan mudah. Sayang sekali itu tidak meluas seperti halnya Notepad ++.
bvj
1
Sepertinya saya sudah memasuki Twilight Zone. Notepad ++ saya selalu memberi tiga spasi pada setiap tab, dan tidak ada yang saya perbarui dalam IDE yang mengubah perilaku. Saya telah menggunakannya selama bertahun-tahun dan tidak pernah mengalami masalah ini sebelum o_o. Bahkan penurunan peringkat tidak menghilangkan masalah. Jadi ya Saya menyebutnya. Fitur Twilight Zone.
kayleeFrye_onDeck
@YoushaAleayoub 1 spasi = 1 spasi, 1 tab = berbeda untuk semua orang.
csabinho
3
@csabinho itu intinya. Jadi setiap orang dapat menyesuaikannya dan mengaturnya sesuai ukuran mereka sendiri. #Freedom :)
Yousha Aleayoub

Jawaban:

989

Untuk mengonversi tab yang ada menjadi spasi, tekan Edit->Blank Operations->TAB to Space.

Jika di masa depan Anda ingin memasukkan spasi alih-alih tab saat Anda menekan tombol tab:

  1. Pergi ke Settings->Preferences...->Language(sejak versi 7.1) atau Settings->Preferences...->Tab Settings(versi sebelumnya)
  2. Memeriksa Replace by space
  3. ( Opsional ) Anda dapat mengatur jumlah ruang untuk digunakan sebagai pengganti Tab dengan mengubah Tab sizebidang.

Cuplikan layar Replace by space

mrzli
sumber
29
@Algina - Anda dapat mengubah pengaturan untuk Notepad ++ untuk secara otomatis mengonversi tab menjadi spasi - cukup buka: Pengaturan - Preferensi - Pengaturan Tab - centang kotak "Ganti dengan Spasi" - seperti mrzli yang sudah dijelaskan dalam jawaban ini.
AddingColor
3
Ini dipengaruhi oleh ukuran tab yang ditentukan dalam "Pengaturan" - "Preferensi" - "Pengaturan Tab" - "Ukuran Tab", secara alami.
gak
6
Saya hanya ingin menambahkan bahwa jalur untuk saya adalah: Settings=> Language Menu/Tab Settings=> Replace by space(Di sudut kanan bawah). Ini hampir seperti kata mrzli, tapi aku kesulitan memperhatikan di mana katanya Tab Settings. (Saya tahu saya buta!)
Dzyann
11
Tidak ada Pengaturan -> Preferensi ... -> Pengaturan Tab di Notepad ++ v7.1 Sekarang di bawah Pengaturan -> Preferensi -> Bahasa
Dave Burton
3
Saya menggunakan v7.2.2 dan saya bisa mengubah tab ke spasi menggunakan Edit -> Blank Operations -> Tab to Space. Juga Tab Settingssekarang Edit -> Preferences -> Language. Meskipun, saya tidak mengerti apa yang Tab Settingsdilakukannya. Saya sudah mencentang Replace by spacekotaknya javascript, tetapi saya masih mendapatkan tab saat saya menekan tombol tab. Bukankah seharusnya mencetak 4 spasi sebagai gantinya?
akinuri
585

Usang: Jawaban ini hanya benar untuk Notepad ++ versi lama. Konversi antar tab / spasi sekarang dibangun di Notepad ++ dan plugin TextFX tidak lagi tersedia di dialog Plugin Manager.

  • Pertama atur pengaturan "replace by spasi" di Preferences -> Language Menu/Tab Settings.
  • Selanjutnya, buka dokumen yang ingin Anda ganti tab.
  • Sorot semua teks ( CTRL+ A).
  • Kemudian pilih TextFX -> TextFX Edit -> Leading spaces to tabs or tabs to spaces.

Catatan: Pastikan plugin TextFX Characters terinstal ( Plugins -> Plugin manager -> Show plugin manager, Installedtab). Kalau tidak, tidak akan ada menu TextFX.

pengguna48821
sumber
1
Ya, ini jauh lebih masuk akal daripada melakukan pencarian / ganti, dan TextFX terintegrasi untuk Notepad ++.
rjh
130
Hanya fitur dengan nama buruk di menu yang ditempatkan dengan buruk.
spoulson
14
Jawaban terbaik untuk pertanyaan (mungkin bukan seperti yang dimaksudkan penulis) adalah tab untuk spasi plugin yang ditawarkan di bawah ini. Pertanyaannya meminta semua tab menjadi spasi, sementara jawaban ini hanya mengonversi spasi terkemuka . Jika, misalnya, Anda perlu mengonversi data tabular yang diberi spasi dengan tab sambil mempertahankan posisi kolom, jawaban ini tidak akan membantu Anda. Plugin adalah satu-satunya solusi Notepad ++ untuk pertanyaan itu yang bisa saya lihat di sini.
Binary Phile
4
Saya perlu masuk ke manajer plugin dan menginstal plugin TextFX, tetapi setelah saya memiliki ini sisa instruksi baik-baik saja.
Rebecca Chernoff
12
Jawaban yang sepertinya salah. Sebagai Bile Phile menunjukkan itu hanya mengkonversi tab terkemuka. Dalam versi yang lebih baru ada juga pilihan Edit -> Operasi Kosong -> TAB ke ruang, tetapi itu tidak berfungsi seperti yang diminta juga. Sejauh yang saya lihat tidak ada cara saat ini di NP ++ di luar kotak. Belum mencoba plugin Binary Phile menyebutkan.
Stijn de Witt
228

Pengaturan ->Preferensi ->Edit Komponen (tab) ->Pengaturan Tab (grup) ->Ganti dengan ruang

Dalam versi 5.6.8 (dan di atas):

Pengaturan ->Preferensi ... ->Menu Bahasa / Pengaturan ->Tab Pengaturan Tab (grup) ->Ganti dengan ruang

Aron Rotteveel
sumber
Terima kasih balasannya. Saya berharap ada cara untuk menerapkannya pada blok teks yang disorot. Saya lebih suka bekerja dengan tab. Saya hanya ingin dapat beralih ke spasi sebelum menempelkan beberapa kode ke dalam formulir.
Helephant
3
Meskipun balasan oleh Dror jelas merupakan 'jawaban', ini pasti juga membantu untuk mengetahui kegunaan lain!
Marc Bollinger
Bukan jawaban untuk pertanyaan tetapi jawaban yang saya cari. Ceria, Aron.
BrezzaP
Wow! Begitu banyak desas-desus tentang tugas sederhana (tampaknya). Ganti dengan \ t dan Perpanjangan switch berfungsi dengan baik untuk saya
waanders
3
Versi 5.9.3 memiliki Edit-> Blank Operations-> TAB to Space. Lihat jawaban oleh mrzli.
koppor
148

Anda perlu mengganti \t - pastikan Anda menggunakan mode tambahan!

Menggantikan

Dror
sumber
22
hanya untuk menekankan, Anda perlu menempatkan empat ruang (atau dua, atau apa pun) dalam kotak "ganti dengan".
Hasen
1
Anda dapat mengganti \ t (tab) ke sejumlah spasi, lihat wiki.answers.com/Q/How_many_spaces_is_a_tab
Dror
7
Ini hanya akan berfungsi dengan baik untuk tab di awal baris. Misalnya dalam garis seperti ini (menggunakan [tab] untuk mewakili tab): "[tab] foo [tab] bar", dengan ukuran tab 4 spasi, tab pertama harus 4 spasi, tetapi tab kedua harus hanya 1 ruang.
Mercator
4
@DaveE Tidak, kasing Mercator adalah kasing universal tentang cara kerja TAB. Meskipun disebutkan dalam komentar dan bukan pada pertanyaan awal, yang pada dasarnya diinginkan OP adalah perubahan transaperent dari tab ke spasi, yaitu, ia tidak boleh tahu dengan menjaga konversi, bahwa konversi telah dilakukan. Dengan mengambil teks yang dipilih dan memperluasnya ke awal baris, seseorang dapat mengimplementasikan perhitungan dan melakukan apa yang disiratkan oleh mercator. Itu hanya tergantung pada teks yang diperluas hingga batas garis. Jadi kasus per kasus keputusan tidak diperlukan. Persis seperti yang dilakukan oleh perintah perluasan di UNIX
Paralife
2
Jawaban lain mungkin menjawab pertanyaan spesifik, tapi saya pikir jawaban ini yang terbaik, karena menjawab bagaimana cara mengganti tab dengan APA SAJA, bukan hanya spasi.
Kik
84

Ikuti prosedur ini untuk mengonversi spasi menjadi tab atau sebaliknya:

Spasi - Tab

Keshava GN
sumber
1
Tersedia di Notepad ++ v6.3.2 dan beberapa versi sebelumnya.
AdrianHHH
Untuk versi 7.5.4, ini sangat mempesona bagi saya, mendapatkan semua karakter tab (tidak hanya memimpin) tanpa instalasi plugin tambahan
J. Paulding
Apakah ada tombol pintas untuk melakukan hal yang sama. ?
Akshat Chaturvedi
26

Saya baru saja memasang plugin Notepad ++ untuk mengonversi tab menjadi spasi. Ya, itu mengonversi tab di tengah baris. Ya, memperhitungkan karakter lain di dalam bidang tab. Coba lihat.

carl
sumber
1
Bagaimana jika saya memiliki string yang ingin saya definisikan dengan Tab di dalamnya? Itu mengubah kode sumber dan string literal saya juga?
Maxwellb
Bekerja seperti pesona tab untuk spasi. Hanya itu yang terjadi.
Binary Phile
Terima kasih, ini luar biasa. Ini sebenarnya satu-satunya jawaban nyata untuk pertanyaan yang mencakup semua situasi - tab terkemuka atau tab tertanam, dan mengambil lokasi dalam teks dan lebar tab yang tepat menjadi pertimbangan.
RenniePet
Ini harus menjadi jawaban untuk pertanyaan ini, terutama sekarang karena TextFX tidak berada dalam instalasi default Notepad ++. Plugin ini bekerja dengan sempurna. Terima kasih!
Brown
2
Versi 5.9.3 memiliki Edit-> Blank Operations-> TAB to Space. Lihat jawaban oleh mrzli.
koppor
10

Cara mudah:

  1. Sorot satu area tab
  2. Salinan
  3. Bawa temukan / ganti
  4. Rekatkan ke bidang temukan
  5. Klik ke bidang ganti dan tekan spasi
  6. Lalu ganti semua.
matt lohkamp
sumber
2
itu pendekatan malas, yang umumnya MO saya:]
matt lohkamp
3
Ini juga cara Notepad (bukan ++) dalam melakukan sesuatu.
Maxwellb
Di Notepad ++ 6.5.5, mencoba TO TABS (dari koma), ini adalah satu-satunya pendekatan yang bekerja untuk saya: ketik a tab, pilih dan copy, dan itu akan ditempelkan ke bidang ganti. (Memasukkan ke /tdalam Replace withkotak tidak berfungsi, terlepas dari apakah saya memilih Extendedatau Regular Expression.)
Doug_Ivison
5
@Doug_Ivison Itu karena /tbukan urutan pelarian; itu garis miring, dan huruf t. Jika Anda ingin mengganti tab, gunakan \t. Oleh karena itu Extended (\n, \r, \t, \0, \x...).
Dan Bechard
@Dan Anda benar ... terima kasih. Salin / tempel berfungsi, dan \tberfungsi.
Doug_Ivison
7

Dalam versi 5.8.7:

Pengaturan Menu -> Preferensi ... -> Pengaturan Menu / Tab Bahasa -> Pengaturan Tab (Anda dapat memilih bahasa untuk mengganti tab menjadi spasi. Ini keren!) -> Hapus centang Gunakan nilai default dan centang Ganti berdasarkan ruang .

Cuplikan layar dialog Preferensi

Stephenmjm
sumber
Apa yang dimaksud dengan "bahasa untuk mengganti tab"?
Peter Mortensen
Ini berubah lagi dalam versi 7.1 (2016-10-16) (dari "Menu Bahasa / Pengaturan Tab" menjadi "Bahasa" )
Peter Mortensen
7

Saya tidak membaca semua jawaban, tetapi saya tidak menemukan jawaban yang saya cari.

Saya menggunakan Python dan tidak ingin mencari / mengganti atau 'operasi kosong' setiap kali saya ingin mengkompilasi kode ...

Jadi solusi terbaik bagi saya adalah itu terjadi dengan cepat !

Inilah solusi sederhana yang saya temukan :

Pergi ke:

  1. Pengaturan Menu -> Preferensi
  2. Pilih Pengaturan Tab
  3. Pilih jenis bahasa Anda (mis. Python)
  4. Pilih kotak centang 'Gunakan nilai default'
  5. Pilih kotak centang 'Ganti dengan ruang'

Masukkan deskripsi gambar di sini

Alg_D
sumber
Ini berubah lagi dalam versi 7.1 (2016-10-16) (dari "Menu Bahasa / Pengaturan Tab" menjadi "Bahasa" (dan "Pengaturan Tab" di versi yang lebih lama (seperti dalam jawaban ini))).
Peter Mortensen
3

Tidak ada tab 'Edit Komponen' di pengaturan preferensi. Anda harus membuka 'Menu Bahasa / Pengaturan Tab', ada opsi di sana untuk mengontrol perilaku tab. Anda bahkan dapat mengatur agar berfungsi berbeda tergantung pada bahasa file.

Elliot
sumber
Dan setelah mengaturnya di sana, gunakan TextFX (TextFX -> TextFX Edit -> Leading spasi untuk tab atau tab ke spasi) seperti yang dijelaskan sebelumnya. Ini jelas cara untuk masuk dalam versi terbaru Npp.
Cees Meijer
Ini berubah lagi dalam versi 7.1 (2016-10-16) (dari "Pengaturan Menu / Tab Bahasa" menjadi "Bahasa" )
Peter Mortensen
2

Plugin CLR Tabs to Spaces harus menjadi pilihan yang baik. Saya telah menggunakannya dan berhasil.

Murid
sumber
Kemenangan sempurna! sorot teks, plugins> CLR Tabs to Spaces> Tabs to Spaces. plugin ini memperhitungkan berapa banyak ruang yang diperlukan untuk tab yaitu output spasi Anda terlihat persis sama dengan output tab Anda.
sonjz
2

Saya ikuti cara sederhana ini:

  • Klik dua kali (Sorot) tab tunggal (yaitu: \ t ).
  • Tekan ctrl + F( Find/repace).
  • Anda mungkin tidak melihat \ t atau area tab tunggal pada Find What:bidang. Tapi jangan khawatir.
  • Masukkan bidang spacedalam Replace With:.
  • Klik Replce All.

Selesai! :)

Lihat:

Ganti * Tab * dengan * Spasi * di <code> Notepad ++ </code>

Catatan: Metode ini berlaku untuk membalik kasus (Ganti spasi dengan tab ) juga.

Keshava GN
sumber
Jika Anda memilih "Diperpanjang" dari Mode Pencarian, Anda dapat memasukkan \ t dan juga akan menemukan tab. Masalah dengan solusi ini adalah tidak menyesuaikan spasi untuk tab, yaitu, jika tab memiliki maksimum 5 spasi, teks Anda sebelum tab mungkin 1-4 spasi ...
sonjz
1
Tidak tahu mengapa jawaban ini diturunkan, tetapi bagi saya ini mungkin yang terbaik karena mewujudkan yang berikut: KISS. Jelas itu tidak akan pernah mencakup semua kasus sudut dan kelimpahan konfigurasi plug-in akan membawa, tetapi sekali lagi, harus bergantung pada plug-in untuk sesuatu yang sangat sederhana hanya gila untuk kasus umum. KISS sepanjang jalan.
luis.espinal
2

Jika Anda kebetulan bekerja di lingkungan Unix, perintah rentangkan adalah yang Anda butuhkan:

Paralife
sumber
1
Bukankah Notepad ++ khusus Windows?
orang itu
1

Pengaturan> Preferensi> Pengaturan Tab Periksa "ganti dengan ruang". Perhatikan di atasnya ada ukuran Tab: 4 Klik pada empat dan jendela akan terbuka dengan opsi untuk mengubah nilai ke integer lain.

Masukkan bilangan bulat yang Anda inginkan dan tekan tombol ENTER.

Itu dia <3.

Shawn Reeder
sumber