Jawabannya tentu saja mungkin tergantung pada banyak faktor, tetapi jika kita mulai dengan kode teks biasa yang diformat dengan baik , maka seseorang dapat lebih atau kurang menggeneralisasi hal-hal di sini.
'Format' awal dalam teks sumber akan menjadi:
baris baru , spasi dan karakter tab . Perhatikan bahwa baris baru dan manual garis istirahat (seperti dalam perangkat lunak DTP) tidak hal yang sama, dan sebaliknya, beberapa bahasa langka mungkin
memungkinkan karakter format lain, meskipun saya belum pernah mendengar tentang itu.
Komentar bukanlah bagian dari kode yang dapat dieksekusi, sehingga komentar dapat diformat ulang tanpa banyak risiko, jika ada yang tahu apakah itu benar-benar komentar. Jadi hal pertama yang harus dilihat adalah bagaimana komentar ditandai.
Beberapa dasar tentang format plaintext awal bagus untuk diketahui. Misalnya, untuk Python, ada panduan gaya PEP8 . Meskipun dibuat untuk Python, panduan pemformatan ini dapat digunakan sebagai referensi untuk bahasa utama seperti C / C ++ dan Java. Melihat ke berbagai contoh proyek dapat membantu ketika ragu.
Dengan demikian, prinsip pertama adalah: Jangan mengubah teks sumber.
Saya akan memeriksa daftar periksa - pastikan bahwa:
- Tidak ada penempatan otomatis karakter pada tahap apa pun.
- Tidak ada pengeditan pada teks yang dilakukan (kecuali jika Anda yakin 100% harus dilakukan).
- Tidak ada garis pembungkus yang muncul.
- Lekukan dipertahankan secara visual dan konsisten (sekitar empat x lebar per tingkat lekukan).
- Level indent (nol) awal harus terlihat.
- Gaya yang ditentukan tidak merusak pemformatan sintaks (jika penyorotan sintaks digunakan).
- Miliki cadangan sumber dalam teks biasa, sehingga dapat memeriksa ulang pemformatan asli atau memulai lagi.
- Nomor baris, jika ada, harus utuh terutama jika direferensikan dalam penjelasan.
Sebenarnya jika sumber asli diformat dengan benar, seharusnya tidak ada pembungkus garis sama sekali. Jika garis yang dibungkus masih muncul dan tidak dapat dihindari, maka indentasi gantung satu tingkat adalah solusi yang paling umum (lihat PEP terkait di atas). Jika perlu, perlu dilakukan pemecah baris - bacalah panduan gaya atau penulis.
Masih beberapa karakter 'spasi putih' kecil mungkin perlu diganti. Karena sumber dapat menyertakan karakter tab, ini berarti tentu saja penyetel harus memastikan bahwa semua tab di awal setiap baris konsisten, yaitu lekukan bersarang dipertahankan secara visual dan setiap tingkat lekukan berikutnya memiliki lebar yang sama (kira-kira empat x lebar per satu tingkat indentasi).
Idealnya, lekukan yang dibuat dengan karakter spasi atau spasi campuran dan tab harus diganti dengan tabulasi (atau dengan apa yang dapat dilakukan perangkat lunak DTP dengan lebih baik untuk lekukan bersarang), jadi, jika perlu, menyesuaikan lekukan mungkin lebih mudah.
Tentu saja orang dapat meninggalkan spasi, tetapi mungkin lebih sulit untuk mengatur lebar ketika mengubah font dan lebih sulit untuk menyelaraskan lekukan garis dalam seperti di kolom tabel.
Fon + spasi monospace
Perhatikan bahwa jika sumber diformat dengan spasi secara sengaja dan dimaksudkan untuk dibaca dalam font monospasi saja, (misalnya ASCII-diagram atau ASCII-art) orang harus melestarikan ruang yang sama sekali tidak berubah , tetapi keputusan ini harus dibuat dari awal. Fon "Courier New" paling umum untuk kasus ini. Tetap jika tidak benar-benar diperlukan, saya menyarankan agar tidak menggunakan monospace, karena semakin sedikit orang baru yang memilih monospace untuk pengkodean hari ini, dan dalam hal proofreading, font proporsional akan memberikan pengalaman membaca yang lebih baik.
Secara umum, font yang dikondensasi (misalnya Arial sempit) atau lebih kecil mungkin berfungsi lebih baik: itu memberikan lebih banyak penekanan berbeda dengan teks tubuh, itu akan membuat kode lebih kompak, dan dengan demikian kurang mungkin bahwa pembungkus garis yang tidak diinginkan akan muncul.
Saya pikir di sini orang dapat menggambar garis, dan jika hal di atas dilakukan, maka ada kemungkinan 99% bahwa semuanya harus baik-baik saja, setidaknya untuk blok kode font tunggal tanpa warna.
Alat dan pemformatan tingkat lanjut
Selanjutnya, tampilan dapat ditingkatkan secara signifikan dengan menggunakan penyorotan sintaksis.
cetak warna atau tampilan layar: dalam tata letak penuh warna, setiap fitur penyorotan dapat digunakan, jadi ini adalah skenario terbaik, tetapi pencetakan dapat memberikan beberapa perubahan warna.
cetak grayscale atau b / w: di sini tentu saja orang dapat menggunakan huruf tebal (misalnya kata kunci) atau huruf miring (misalnya komentar) tetapi perhatikan bahwa warna akan dikonversi menjadi abu-abu dengan semua konsekuensi. Misalnya komentar yang berwarna abu-abu mungkin terlihat bagus di layar, tetapi bisa menjadi terlalu pucat di atas kertas.
Pertanyaan yang paling penting adalah, apakah pembuat tata letak memiliki alat yang dapat mewakili kode dalam bentuk yang dapat dibaca. Untungnya, ada banyak alat gratis untuk mengedit kode, yang paling menonjol (untuk Windows) adalah: Notepad ++, VSCode, Visual Studio . Tetapi berhati-hatilah dengan kemungkinan konversi otomatis tab ke spasi.
Di Notepad ++ ada opsi untuk mengekspor kode sebagai RTF , yang akan mempertahankan semua pemformatan dan penyorotan sintaksis sumber.
Jika tata letak tidak memerlukan perubahan aliran teks dalam presentasi kode, seseorang dapat langsung menggunakan gambar (tangkapan layar) - itu tidak begitu fleksibel seperti teks, tetapi akan mempertahankan pemformatan dan penomoran baris 100%, dan dapat menghemat banyak waktu. Misalnya, nomor baris bisa sulit dipertahankan dalam bentuk teks. Juga mengekspor ke PDF adalah alternatif yang baik - tetapi tidak semua perangkat lunak DTP dapat menanamkan PDF dan beberapa format dapat hilang saat mencetak ke PDF.
Misalnya, pengaturan saya untuk kode Python di Notepad ++ terlihat seperti ini:
Ini hanya untuk mengilustrasikan, bahwa seseorang dapat langsung menggunakan tangkapan layar dan itu sebenarnya metode yang paling mudah. Ada berbagai alat yang dapat membantu menangkap layar - seseorang mungkin perlu 'menjahit' layar untuk gambar dengan resolusi lebih tinggi.
Skema warna tentu saja berdasarkan individu, didefinisikan dalam konfigurator gaya editor, yang sudah mengetahui bahasa yang didukung, sehingga menyulitkan untuk membuat pemformatan yang salah bahkan jika orang tidak tahu sintaksisnya. Di sini aturan tipografi umum harus berfungsi: tidak terlalu banyak warna, font yang konsisten, lekukan, penspasian garis yang nyaman.
Alat / plugin tambahan untuk definisi bahasa khusus juga umum, tetapi yang memerlukan pengetahuan sintaksis.