51.1. ФоÑмаÑиÑование
ÐÑÑ Ð¾Ð´Ð½Ñй код ÑоÑмаÑиÑÑеÑÑÑ Ñ Ð¾ÑÑÑÑпом на 4 позиÑии, Ñ ÑÐ¾Ñ Ñанением ÑабÑлÑÑии (Ñ. е. ÑÐ¸Ð¼Ð²Ð¾Ð»Ñ ÑабÑлÑÑии не ÑазвоÑаÑиваÑÑÑÑ Ð² пÑобелÑ). ÐÐ»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ логиÑеÑкого ÑÑÐ¾Ð²Ð½Ñ Ð¾ÑÑÑÑпа добавлÑеÑÑÑ Ð¾Ð´Ð½Ð° ÑабÑлÑÑиÑ.
ÐÑавила оÑоÑÐ¼Ð»ÐµÐ½Ð¸Ñ (ÑаÑÐ¿Ð¾Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ñкобок и Ñ. д.) ÑледÑÑÑ ÑоглаÑениÑм BSD. Ð ÑаÑÑноÑÑи, ÑигÑÑнÑе Ñкобки Ð´Ð»Ñ ÑпÑавлÑемÑÑ
ими блоков if, while, switch и Ñ. д. ÑазмеÑаÑÑÑÑ Ð² оÑделÑнÑÑ
ÑÑÑокаÑ
.
ÐгÑаниÑÑÑе ÑазмеÑÑ ÑÑÑок, ÑÑÐ¾Ð±Ñ ÐºÐ¾Ð´ можно бÑло ÑиÑаÑÑ Ð² окне ÑиÑиной 80 Ñимволов. (ÐÑо не знаÑиÑ, ÑÑо никогда нелÑÐ·Ñ Ð·Ð°Ñ Ð¾Ð´Ð¸ÑÑ Ð·Ð° 80 Ñимволов. ÐапÑимеÑ, не ÑÑÐ¾Ð¸Ñ ÑазбиваÑÑ Ð´Ð»Ð¸Ð½Ð½ÑÑ ÑÑÑÐ¾ÐºÑ ÑообÑÐµÐ½Ð¸Ñ Ð² пÑоизволÑнÑÑ Ð¼ÐµÑÑÐ°Ñ , пÑоÑÑо ÑÑÐ¾Ð±Ñ ÐºÐ¾Ð´ ÑмеÑалÑÑ Ð² 80 Ñимволов, Ñак как ÑÑо в ÑезÑлÑÑаÑе ÑкоÑее вÑего не ÑÐ´ÐµÐ»Ð°ÐµÑ ÐºÐ¾Ð´ более ÑиÑабелÑнÑм.)
Ðе иÑполÑзÑйÑе комменÑаÑии в ÑÑиле C++ (комменÑаÑии //). СÑÑогие компилÑÑоÑÑ ANSI C иÑ
не пÑинимаÑÑ. Ðо ÑÑой же пÑиÑине не иÑполÑзÑйÑе ÑаÑÑиÑÐµÐ½Ð¸Ñ C++, напÑимеÑ, не обÑÑвлÑйÑе новÑе пеÑеменнÑе в ÑеÑедине блока.
ÐÑедпоÑиÑаемÑй ÑÑÐ¸Ð»Ñ Ð¼Ð½Ð¾Ð³Ð¾ÑÑÑоÑнÑÑ Ð±Ð»Ð¾ÐºÐ¾Ð² вÑглÑÐ´Ð¸Ñ Ñак:
/* * ÑекÑÑ ÐºÐ¾Ð¼Ð¼ÐµÐ½ÑаÑÐ¸Ñ Ð½Ð°ÑинаеÑÑÑ Ð·Ð´ÐµÑÑ * и пÑодолжаеÑÑÑ Ð·Ð´ÐµÑÑ */
ÐамеÑÑÑе, ÑÑо блоки комменÑаÑиев, наÑинаÑÑиеÑÑ Ñ Ð¿ÐµÑвого Ñимвола, бÑдÑÑ ÑÐ¾Ñ ÑанÑÑÑÑÑ ÑÑилиÑой pgindent как еÑÑÑ, но ÑодеÑжимое блоков комменÑаÑиев Ñ Ð¾ÑÑÑÑпами бÑÐ´ÐµÑ Ð¿ÐµÑеÑазбиÑо по ÑÑÑокам как обÑÑнÑй ÑекÑÑ. ÐÑли Ð²Ñ Ñ Ð¾ÑиÑе ÑÐ¾Ñ ÑаниÑÑ ÑазÑÑÐ²Ñ ÑÑÑок в блоке Ñ Ð¾ÑÑÑÑпом, добавÑÑе минÑÑÑ ÑледÑÑÑим обÑазом:
/*----------
* ÑекÑÑ ÐºÐ¾Ð¼Ð¼ÐµÐ½ÑаÑÐ¸Ñ Ð½Ð°ÑинаеÑÑÑ Ð·Ð´ÐµÑÑ
* и пÑодолжаеÑÑÑ Ð·Ð´ÐµÑÑ
*----------
*/ХоÑÑ Ð¿ÑедлагаемÑе пÑавки кода не обÑзаÑелÑно Ð´Ð¾Ð»Ð¶Ð½Ñ ÑледоваÑÑ ÑÑим пÑавилам ÑоÑмаÑиÑованиÑ, лÑÑÑе Ð¸Ñ Ð¿ÑидеÑживаÑÑÑÑ. ÐÐ°Ñ ÐºÐ¾Ð´ бÑÐ´ÐµÑ Ð¿ÑопÑÑен ÑеÑез pgindent пеÑед ÑледÑÑÑим вÑпÑÑком, поÑÑÐ¾Ð¼Ñ Ð½ÐµÑ ÑмÑÑла наводиÑÑ Ð² нÑм кÑаÑоÑÑ Ð¿Ð¾ дÑÑгим пÑавилам. ÐÐ»Ñ Ð¿Ñавок еÑÑÑ Ñ Ð¾ÑоÑее пÑавило: «оÑоÑмлÑйÑе новÑй код Ñак же, как вÑглÑÐ´Ð¸Ñ ÑÑÑеÑÑвÑÑÑий код вокÑÑг».
РкаÑалоге src/tools ÑодеÑжаÑÑÑ Ð¿ÑимеÑÑ Ñайлов наÑÑÑойки, коÑоÑÑе можно иÑполÑзоваÑÑ Ñ ÑедакÑоÑами emacs, xemacs или vim Ð´Ð»Ñ ÑпÑоÑÐµÐ½Ð¸Ñ Ð·Ð°Ð´Ð°Ñи ÑоÑмаÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ ÐºÐ¾Ð´Ð° в ÑооÑвеÑÑÑвии Ñ Ð¾Ð¿Ð¸ÑаннÑми ÑоглаÑениÑми.
ЧÑÐ¾Ð±Ñ ÑабÑлÑÑÐ¸Ñ Ð¿Ð¾ÐºÐ°Ð·ÑвалаÑÑ Ð´Ð¾Ð»Ð¶Ð½Ñм обÑазом в ÑÑедÑÑÐ²Ð°Ñ Ð¿ÑоÑмоÑÑа ÑекÑÑа more и less, Ð¸Ñ Ð¼Ð¾Ð¶Ð½Ð¾ вÑзваÑÑ Ñак:
more -x4 less -x4