Contoh: Jika saya memiliki dokumen dengan 2 indentasi spasi, dan saya ingin memiliki 4 indentasi spasi, bagaimana cara saya secara otomatis mengubahnya dengan menggunakan editor Teks Sublime?
228
Contoh: Jika saya memiliki dokumen dengan 2 indentasi spasi, dan saya ingin memiliki 4 indentasi spasi, bagaimana cara saya secara otomatis mengubahnya dengan menggunakan editor Teks Sublime?
Berikut ini adalah trik yang rapi dalam Sublime Text 2 atau 3 untuk mengubah spasi indentasi Anda dalam dokumen.
TL; DR:
Mengubah dari 2 spasi menjadi 4 spasi:
Pastikan lebar tab diatur ke 2. Konversi lekukan 2-ruang Anda menjadi tab, alihkan ke lebar tab 4, lalu konversikan lekukan kembali ke spasi.
Penjelasan rinci:
Pergi ke:
View -> Indentation
Itu harus membaca:
Indent using spaces [x]
Tab width: 2
Pilih:
Convert Indentation to Tabs
Kemudian Pilih:
Tab width: 4
Convert Indentation to Spaces
Selesai
Saya sebenarnya menemukan bahwa kewarasan saya lebih baik untuk menentukan preferensi pengguna seperti:
Ini
detect_indentation: false
sangat penting, karena memaksa Sublime untuk menghormati pengaturan ini di setiap file, yang bertentangan denganView -> Indentation
pengaturan.Jika Anda ingin menjadi mewah, Anda juga dapat menentukan pintasan keyboard untuk secara otomatis mengindentasi ulang kode Anda (YMMV) dengan menempelkan yang berikut di
Sublime -> Preferences -> Key Binding - User
:dan untuk memvisualisasikan spasi putih:
sumber
Dalam benak saya, saya menemukan solusi yang lebih sederhana daripada Magne:
Di mac:
Pada windows atau platform lain berubah
cmd+f
danalt+enter
dengan apa pun hotkeyfind
dan Andaselect all
.Catatan: metode ini rentan terhadap "kesalahan" jika Anda memiliki lebih dari satu ruang dalam kode Anda. Dengan demikian kurang aman daripada metode Magne, tetapi lebih cepat (setidaknya bagi saya).
sumber
RubyFormat
maka Anda dapat dengan mudah mengatur ukuran tab yang diinginkan dan kemudian melakukan memformat ulang kode. Dalam halRubyFormat
itu akan terjadicmd+shift+R
.Sementara banyak saran berfungsi saat mengonversi 2 -> 4 ruang. Saya mengalami beberapa masalah saat mengonversi 4 -> 2.
Inilah yang akhirnya saya gunakan:
Sublime Text 3/Packages/User/to-2.sublime-macro
sumber
Jika Anda menemukan pencarian dan penggantian yang lebih cepat untuk digunakan, Anda dapat menggunakan penggantian regex seperti ini:
Temukan (regex):
(^|\G) {2}
(Alih-alih "{2}"<space>{2}
Anda bisa menulis dua spasi. Gunakan di sini untuk kejelasan.)Ganti dengan 4 spasi, atau apa pun yang Anda inginkan
\t
.sumber
Saya menulis sebuah plugin untuk itu. Anda dapat menemukannya di sini atau mencari "ReIndent" di kontrol paket. Sebagian besar melakukan hal yang sama seperti yang ditulis Kyle Finley tetapi dengan cara yang mudah dengan pintasan untuk mengkonversi antara 2 dan 4 dan sebaliknya.
sumber
Anda harus menambahkan kode ini ke binding kunci khusus Anda:
dengan menekan ctrl + f12, file itu akan di-reindent ke ukuran tab 4. jika Anda menginginkan ukuran tab yang berbeda, Anda cukup mengubah angka "value". Formatnya adalah json sederhana.
sumber
{ "keys": ["ctrl+f10"], "command": "set_setting", "args": {"setting": "translate_tabs_to_spaces", "value": 2} }, { "keys": ["ctrl+f11"], "command": "set_setting", "args": {"setting": "tab_size", "value": 2} }, { "keys": ["ctrl+f12"], "command": "set_setting", "args": {"setting": "tab_size", "value": 4} },
Hal termudah yang saya lakukan adalah,
dan itu menyelesaikan masalah saya.
Anda dapat melakukan hal yang sama,
serta sesuai kebutuhan Anda.
Menyebutkan snapshot yang sama.
sumber
Baru-baru ini saya menghadapi masalah yang sama. Saya menggunakan editor luhur. ini bukan masalah dengan kode tetapi dengan editor.
Di bawah ini perubahan dalam pengaturan preferensi bekerja untuk saya.
Menu Teks Sublim -> Preferensi -> Pengaturan: Khusus Sintaksis :
sumber