ນີ້ແມ່ນຄໍາສັ່ງຫຍໍ້ຫນ້າທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນຫຼາຍໆບ່ອນເຮັດວຽກອອນໄລນ໌ຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator
ໂຄງການ:
NAME
indent - ປ່ຽນລັກສະນະຂອງໂປຣແກຣມ C ໂດຍການໃສ່ ຫຼືລຶບຊ່ອງຫວ່າງອອກ.
ສະຫຼຸບສັງລວມ
ຫຍໍ້ ໜ້າ [ທາງເລືອກ] [ການປ້ອນຂໍ້ມູນໄຟລ໌]
ຫຍໍ້ ໜ້າ [ທາງເລືອກ] [single-input-file] [-o output-file]
ຫຍໍ້ ໜ້າ - ການປ່ຽນແປງ
ລາຍລະອຽດ
ໜ້າຜູ້ຊາຍນີ້ຖືກສ້າງຂຶ້ນຈາກໄຟລ໌ indent.texinfo. ນີ້ແມ່ນສະບັບຂອງ "The ຫຍໍ້ ໜ້າ
ຄູ່ມື", ສໍາລັບ Indent Version, ປັບປຸງຫຼ້າສຸດ .
ໄດ້ ຫຍໍ້ ໜ້າ ໂປຣແກຣມສາມາດໃຊ້ເພື່ອເຮັດໃຫ້ລະຫັດອ່ານງ່າຍຂຶ້ນ. ມັນຍັງສາມາດປ່ຽນຈາກຫນຶ່ງ
ຮູບແບບການຂຽນ C ກັບຄົນອື່ນ.
ຫຍໍ້ ໜ້າ ເຂົ້າໃຈຈໍານວນຫຼວງຫຼາຍກ່ຽວກັບ syntax ຂອງ C, ແຕ່ມັນຍັງພະຍາຍາມ
ຮັບມືກັບ syntax ທີ່ບໍ່ຄົບຖ້ວນແລະບໍ່ຖືກຕ້ອງ.
ໃນເວີຊັ່ນ 1.2 ແລະຮຸ່ນຫຼ້າສຸດ, ຮູບແບບ GNU ຂອງການຫຍໍ້ໜ້າແມ່ນເປັນຄ່າເລີ່ມຕົ້ນ.
OPTIONS
- ບໍ່ດີ, --blank-lines-after-declarations
ບັງຄັບເສັ້ນຫວ່າງເປົ່າຫຼັງຈາກການປະກາດ.
ເບິ່ງ ຂອບໃຈ ເສັ້ນ.
-bap, --blank-lines-after-procedures
ບັງຄັບເສັ້ນເປົ່າຫຼັງຈາກອົງການຈັດຕັ້ງຂັ້ນຕອນ.
ເບິ່ງ ຂອບໃຈ ເສັ້ນ.
- ບີບີ, --blank-lines-before-block-comments
ບັງຄັບເສັ້ນຫວ່າງກ່ອນບລັອກຄຳເຫັນ.
ເບິ່ງ ຂອບໃຈ ເສັ້ນ.
-bbo, --break-before-boolean-operator
ຕ້ອງການທໍາລາຍສາຍຍາວກ່ອນ boolean operator.
ເບິ່ງ BREAKING LONG ເສັ້ນ.
-bc, --blank-lines-after-commas
ບັງຄັບແຖວໃໝ່ຫຼັງຈາກເຄື່ອງໝາຍຈຸດໃນການປະກາດ.
ເບິ່ງ ຄຳ ອະທິບາຍ.
-bl, --braces-after-if-line
ວາງສາຍແຂນໃສ່ເສັ້ນຫຼັງ if, ແລະອື່ນໆ
ເບິ່ງ ຖະແຫຼງການ.
-blf, --braces-after-func-def-line
ວາງວົງເລັບໃສ່ແຖວຕໍ່ໄປນີ້ເສັ້ນນິຍາມຟັງຊັນ.
ເບິ່ງ ຄຳ ອະທິບາຍ.
-blin, --brac-indentn
ຫຍໍ້ໜ້າວົງເລັບ n ສະຖານທີ່.
ເບິ່ງ ຖະແຫຼງການ.
-bls, --braces-after-struct-decl-line
ເອົາສາຍແຂນໃສ່ເສັ້ນຫຼັງຈາກ ໂຄງສ້າງ ສາຍການປະກາດ.
ເບິ່ງ ຄຳ ອະທິບາຍ.
-br, --braces-on-if-line
ເອົາສາຍແຂນໃສ່ເສັ້ນດ້ວຍ if, ແລະອື່ນໆ
ເບິ່ງ ຖະແຫຼງການ.
-brf, --braces-on-func-def-line
ໃສ່ວົງເລັບໃສ່ເສັ້ນນິຍາມຟັງຊັນ.
ເບິ່ງ ຄຳ ອະທິບາຍ.
-brs, --braces-on-struct-decl-line
ໃສ່ວົງເລັບ ໂຄງສ້າງ ເສັ້ນປະກາດ.
ເບິ່ງ ຄຳ ອະທິບາຍ.
-bs, --Bill-Shannon, --blank-before-sizeof
ເອົາຊ່ອງຫວ່າງລະຫວ່າງ ຂະຫນາດຂອງ ແລະການໂຕ້ຖຽງຂອງຕົນ.
ເບິ່ງ ຖະແຫຼງການ.
-cn, --comment-indentationn
ໃສ່ຄໍາຄິດເຫັນຢູ່ເບື້ອງຂວາຂອງລະຫັດໃນຖັນ n.
ເບິ່ງ COMMENTS.
-cbin, --case-brace-indentationn
Indent ວົງເລັບຫຼັງຈາກປ້າຍກໍລະນີ N ຍະຫວ່າງ.
ເບິ່ງ ຖະແຫຼງການ.
-cdn, --declaration-comment-columnn
ໃສ່ຄຳເຫັນຢູ່ເບື້ອງຂວາຂອງຄຳປະກາດໃນຖັນ n.
ເບິ່ງ COMMENTS.
-cdb, --comment-delimiters-on-blank-lines
ໃສ່ຕົວຂັ້ນຄໍາຄິດຄໍາເຫັນໃສ່ເສັ້ນຫວ່າງເປົ່າ.
ເບິ່ງ COMMENTS.
-cdw, --cuddle-do-ໃນຂະນະທີ່
Cuddle ໃນຂະນະທີ່ຂອງ do {} ໃນຂະນະທີ່; ແລະກ່ອນໜ້າ '}'.
ເບິ່ງ COMMENTS.
-ນີ້, --cuddle-ອື່ນ
ກອດຕົວອື່ນ ແລະນຳໜ້າ '}'.
ເບິ່ງ COMMENTS.
- ນີ້n, --ການຕໍ່ເນື່ອງ-ຫຍໍ້ໜ້າn
ສືບຕໍ່ຫຍໍ້ໜ້າຂອງ n ສະຖານທີ່.
ເບິ່ງ ຖະແຫຼງການ.
-clin, --case-indentationn
ປ້າຍກໍລະນີຫຍໍ້ໜ້າຂອງ n ສະຖານທີ່.
ເບິ່ງ ຖະແຫຼງການ.
-cpn, --else-endif-columnn
ເອົາຄໍາເຫັນໄປທາງຂວາຂອງ #ອື່ນ ແລະ #ສຸດທ້າຍ ຖະແຫຼງການໃນຖັນ n.
ເບິ່ງ COMMENTS.
-cs, --space-after-cast
ວາງພື້ນທີ່ຫຼັງຈາກຕົວປະຕິບັດການສົ່ງສັນຍານ.
ເບິ່ງ ຖະແຫຼງການ.
-dn, --line-comments-indentationn
ກໍານົດຫຍໍ້ຫນ້າຂອງຄໍາເຫັນທີ່ບໍ່ແມ່ນສິດທິຂອງລະຫັດເພື່ອ n ສະຖານທີ່.
ເບິ່ງ COMMENTS.
-bfda, --break-function-decl-args
ຕັດເສັ້ນກ່ອນການໂຕ້ຖຽງທັງໝົດໃນການປະກາດ.
ເບິ່ງ ຄຳ ອະທິບາຍ.
-bfde, --break-function-decl-args-end
ຕັດເສັ້ນຫຼັງຈາກການໂຕ້ຖຽງສຸດທ້າຍໃນການປະກາດ.
ເບິ່ງ ຄຳ ອະທິບາຍ.
-ດີເຈ, --left-justify-declarations
ຖ້າ -cd 0 ຖືກໃຊ້ຫຼັງຈາກນັ້ນຄໍາເຫັນຫຼັງຈາກການປະກາດຈະຖືກປະໄວ້ໃຫ້ຖືກຕ້ອງທາງຫລັງ
ການປະກາດ.
ເບິ່ງ ຄຳ ອະທິບາຍ.
-dun, --declaration-indentationn
ໃສ່ຕົວແປໃນຖັນ n.
ເບິ່ງ ຄຳ ອະທິບາຍ.
-fc1, --format-first-column-comments
ຈັດຮູບແບບຄຳເຫັນໃນຖັນທຳອິດ.
ເບິ່ງ COMMENTS.
-fca, --format-all-comments
ຢ່າປິດການຈັດຮູບແບບຄຳເຫັນທັງໝົດ.
ເບິ່ງ COMMENTS.
-gnu, --gnu-style
ໃຊ້ຮູບແບບການເຂົ້າລະຫັດ GNU. ນີ້ແມ່ນຄ່າເລີ່ມຕົ້ນ.
ເບິ່ງ COMMON ກຽວ.
-hnl, --honour-newlines
ຕ້ອງການທໍາລາຍເສັ້ນຍາວຢູ່ຕໍາແຫນ່ງຂອງແຖວໃຫມ່ໃນການປ້ອນຂໍ້ມູນ.
ເບິ່ງ BREAKING LONG ເສັ້ນ.
-in, --indent-ລະດັບn
ຕັ້ງລະດັບການຫຍໍ້ໜ້າເປັນ n ສະຖານທີ່.
ເບິ່ງ INDENTATION.
-ລາວn, --indent-labeln
ກໍານົດການຊົດເຊີຍສໍາລັບປ້າຍຊື່ໄປຫາຖັນ n.
ເບິ່ງ INDENTATION.
-ipn, --parameter-indentationn
ຫຍໍ້ໜ້າປະເພດພາລາມິເຕີໃນນິຍາມຟັງຊັນແບບເກົ່າໂດຍ n ສະຖານທີ່.
ເບິ່ງ INDENTATION.
-kr, --k-and-r-style
ໃຊ້ຮູບແບບການຂຽນລະຫັດ Kernighan ແລະ Ritchie.
ເບິ່ງ COMMON ກຽວ.
-ln, --ຄວາມຍາວເສັ້ນn
ກໍານົດຄວາມຍາວເສັ້ນສູງສຸດສໍາລັບແຖວທີ່ບໍ່ແມ່ນຄໍາຄິດຄໍາເຫັນ n.
ເບິ່ງ BREAKING LONG ເສັ້ນ.
-lcn, --comment-line-lengthn
ກໍານົດຄວາມຍາວເສັ້ນສູງສຸດສໍາລັບການຈັດຮູບແບບຄໍາເຫັນເປັນ n.
ເບິ່ງ COMMENTS.
-linux, --linux-style
ໃຊ້ຮູບແບບການຂຽນລະຫັດ Linux.
ເບິ່ງ COMMON ກຽວ.
-lp, --continue-at-ວົງເລັບ
ວາງແຖວຕໍ່ເນື່ອງຢູ່ໃນວົງເລັບ.
ເບິ່ງ INDENTATION.
-lps, --leave-preprocessor-space
ປ່ອຍຊ່ອງຫວ່າງລະຫວ່າງ '#' ແລະຄໍາສັ່ງຂອງຕົວປະມວນຜົນກ່ອນ.
ເບິ່ງ INDENTATION.
-nbad, --no-blank-lines-after-declarations
ຢ່າບັງຄັບເສັ້ນເປົ່າຫຼັງຈາກການປະກາດ.
ເບິ່ງ ຂອບໃຈ ເສັ້ນ.
-nbap, --no-blank-lines-after-procedures
ຢ່າບັງຄັບເສັ້ນເປົ່າຫຼັງຈາກອົງການຈັດຕັ້ງຂັ້ນຕອນ.
ເບິ່ງ ຂອບໃຈ ເສັ້ນ.
-nbbo, --break-after-boolean-operator
ບໍ່ມັກທີ່ຈະທໍາລາຍສາຍຍາວກ່ອນ boolean operator.
ເບິ່ງ BREAKING LONG ເສັ້ນ.
-nbc, --no-blank-lines-after-commas
ຢ່າບັງຄັບແຖວໃໝ່ຫຼັງຈາກເຄື່ອງໝາຍຈຸດໃນການປະກາດ.
ເບິ່ງ ຄຳ ອະທິບາຍ.
-nbfda, --dont-break-function-decl-args
ຢ່າວາງແຕ່ລະການໂຕ້ຖຽງໃນການປະກາດຟັງຊັນຢູ່ໃນແຖວແຍກຕ່າງຫາກ.
ເບິ່ງ ຄຳ ອະທິບາຍ.
-ncdb, --no-comment-delimiters-on-blank-lines
ຫ້າມໃສ່ຕົວຂັ້ນຄຳເຫັນໃສ່ແຖວຫວ່າງເປົ່າ.
ເບິ່ງ COMMENTS.
-ncdw, --dont-cuddle-do-while
ຢ່າກອດ } ແລະ ໃນຂະນະທີ່ ຂອງ do {} ໃນຂະນະທີ່;.
ເບິ່ງ ຖະແຫຼງການ.
-nce, -- dont-cuddle-ອື່ນ
ຢ່າກອດ } ແລະ ອື່ນ.
ເບິ່ງ ຖະແຫຼງການ.
-ncs, --no-space-after-casts
ຢ່າວາງຊ່ອງຫວ່າງຫຼັງຈາກຕົວປະຕິບັດການສົ່ງສັນຍານ.
ເບິ່ງ ຖະແຫຼງການ.
-ndjn, --dont-left-justify-declarations
ຄໍາເຫັນຫຼັງຈາກການປະກາດແມ່ນປະຕິບັດຄືກັນກັບຄໍາເຫັນຫຼັງຈາກຄໍາຖະແຫຼງອື່ນໆ.
ເບິ່ງ ຄຳ ອະທິບາຍ.
-nfc1, --dont-format-first-column-comments
ຢ່າຈັດຮູບແບບຄຳເຫັນໃນຖັນທຳອິດຕາມປົກກະຕິ.
ເບິ່ງ COMMENTS.
-nfca, --dont-format-comments
ຫ້າມຈັດຮູບແບບຄຳເຫັນໃດໆ.
ເບິ່ງ COMMENTS.
-nhl, --ignore-newlines
ບໍ່ມັກທີ່ຈະທໍາລາຍເສັ້ນຍາວຢູ່ຕໍາແຫນ່ງຂອງເສັ້ນໃຫມ່ໃນວັດສະດຸປ້ອນ.
ເບິ່ງ BREAKING LONG ເສັ້ນ.
- ປາຍ, --no-parameter-indentation
ສູນຫຍໍ້ໜ້າຄວາມກວ້າງສຳລັບພາລາມິເຕີ.
ເບິ່ງ INDENTATION.
-nlp, --dont-line-up-ວົງເລັບ
ຢ່າຈັດແຖວວົງເລັບ.
ເບິ່ງ ຖະແຫຼງການ.
-nps, --no-space-after-function-call-names
ຢ່າວາງພື້ນທີ່ຫຼັງຈາກຟັງຊັນໃນການໂທຟັງຊັນ.
ເບິ່ງ ຖະແຫຼງການ.
- np, --no-space-after-partheses
ຢ່າວາງຊ່ອງຫວ່າງຫຼັງຈາກທຸກໆ '(' ແລະກ່ອນທຸກໆ ')'.
ເບິ່ງ ຖະແຫຼງການ.
-npsl, --dont-break-procedure-type
ເອົາປະເພດຂອງຂັ້ນຕອນໃນເສັ້ນດຽວກັນກັບຊື່ຂອງມັນ.
ເບິ່ງ ຄຳ ອະທິບາຍ.
-nsaf, --no-space-after-for
ຢ່າວາງຊ່ອງຫວ່າງຫຼັງຈາກທຸກໆຄັ້ງ ສໍາລັບການ.
ເບິ່ງ ຖະແຫຼງການ.
- ນາໄຊ, --no-space-after-if
ຢ່າວາງຊ່ອງຫວ່າງຫຼັງຈາກທຸກໆຄັ້ງ if.
ເບິ່ງ ຖະແຫຼງການ.
- ໂນ, --no-space-after-while
ຢ່າວາງຊ່ອງຫວ່າງຫຼັງຈາກທຸກໆຄັ້ງ ໃນຂະນະທີ່.
ເບິ່ງ ຖະແຫຼງການ.
-nsc, --dont-star-ຄໍາເຫັນ
ຢ່າໃສ່ຕົວອັກສອນ '*' ຢູ່ຊ້າຍຂອງຄຳເຫັນ.
ເບິ່ງ COMMENTS.
- ໂນ, --leave-optional-blank-lines
ຢ່າກືນເສັ້ນຫວ່າງທີ່ເປັນທາງເລືອກ.
ເບິ່ງ ຂອບໃຈ ເສັ້ນ.
-nss, --dont-space-special-semicolon
ຢ່າບັງຄັບຊ່ອງຫວ່າງກ່ອນເຄື່ອງໝາຍຈໍ້າຈຸດຫຼັງຈາກຄຳເວົ້າສະເພາະ. ປິດການໃຊ້ງານ '-ss'.
ເບິ່ງ ຖະແຫຼງການ.
- ຫມາກແຫ້ງເປືອກແຂງ, --no-tabs
ໃຊ້ຍະຫວ່າງແທນແຖບ.
ເບິ່ງ INDENTATION.
-nv, --ບໍ່ມີຄຳເວົ້າ
ປິດໃຊ້ງານໂໝດ verbose.
ເບິ່ງ MISCELLANEOUS OPTIONS.
- ຕົ້ນສະບັບ, --ຕົ້ນສະບັບ
ໃຊ້ຮູບແບບການຂຽນລະຫັດ Berkeley ຕົ້ນສະບັບ.
ເບິ່ງ COMMON ກຽວ.
-npro, --ignore-profile
ຢ່າອ່ານໄຟລ໌ '.indent.pro'.
ເບິ່ງ ຮຽກຮ້ອງ ຫຍໍ້ໜ້າ.
-pcs, --space-after-procedure-calls
ໃສ່ຊ່ອງຫວ່າງລະຫວ່າງຊື່ຂອງຂັ້ນຕອນທີ່ຖືກເອີ້ນແລະ '('.
ເບິ່ງ ຖະແຫຼງການ.
-pin, --paren-indentationn
ລະບຸການຫຍໍ້ໜ້າເພີ່ມເຕີມຕໍ່ວົງເລັບເປີດ '(' ເມື່ອຄຳຖະແຫຼງທີ່ແຕກຫັກ. ເບິ່ງ
ຖະແຫຼງການ.
-pmt, --preserve-mtime
ຮັກສາເວລາເຂົ້າເຖິງ ແລະແກ້ໄຂໃນໄຟລ໌ຜົນຜະລິດ.ເບິ່ງ MISCELLANEOUS OPTIONS.
-ppin, --preprocessor-indentationn
ລະບຸການຫຍໍ້ໜ້າສຳລັບ preprocessor conditional statements.ເບິ່ງ INDENTATION.
-prs, --space-after-partheses
ໃສ່ຊ່ອງຫວ່າງຫຼັງຈາກທຸກໆ '(' ແລະກ່ອນທຸກໆ ')'.
ເບິ່ງ ຖະແຫຼງການ.
-psl, --procnames-start-lines
ໃສ່ປະເພດຂອງຂັ້ນຕອນໃນແຖວກ່ອນຊື່ຂອງມັນ.
ເບິ່ງ ຄຳ ອະທິບາຍ.
- ປອດໄພ, --space-after-for
ໃສ່ຊ່ອງຫວ່າງຫຼັງຈາກແຕ່ລະຄົນ ສໍາລັບການ.
ເບິ່ງ ຖະແຫຼງການ.
-sai, --space-after-if
ໃສ່ຊ່ອງຫວ່າງຫຼັງຈາກແຕ່ລະຄົນ if.
ເບິ່ງ ຖະແຫຼງການ.
-ເລື່ອຍ, --space-after-while
ໃສ່ຊ່ອງຫວ່າງຫຼັງຈາກແຕ່ລະຄົນ ໃນຂະນະທີ່.
ເບິ່ງ ຖະແຫຼງການ.
-sbin, --struct-brace-indentationn
Indent ວົງເລັບຂອງໂຄງສ້າງ, union ຫຼື enum N spaces.
ເບິ່ງ ຖະແຫຼງການ.
-sc, --start-left-of-comments
ໃສ່ຕົວອັກສອນ '*' ຢູ່ດ້ານຊ້າຍຂອງຄຳເຫັນ.
ເບິ່ງ COMMENTS.
- sob, --swallow-optional-blank-lines
ກືນເສັ້ນເປົ່າທາງເລືອກ.
ເບິ່ງ ຂອບໃຈ ເສັ້ນ.
-ss, --space-special-semicolon
ຢູ່ໃນແຖວດຽວ ສໍາລັບການ ແລະ ໃນຂະນະທີ່ ຂໍ້ຄວາມ, ບັງຄັບໃຫ້ຫວ່າງເປົ່າກ່ອນເຄື່ອງໝາຍຈຸດ.
ເບິ່ງ ຖະແຫຼງການ.
-st, --ມາດຕະຖານ-ຜົນຜະລິດ
ຂຽນໃສ່ຜົນໄດ້ຮັບມາດຕະຖານ.
ເບິ່ງ ຮຽກຮ້ອງ ຫຍໍ້ໜ້າ.
-T ບອກ ຫຍໍ້ ໜ້າ ຊື່ຂອງ typenames.
ເບິ່ງ ຄຳ ອະທິບາຍ.
-tsn, --tab-sizen
ຕັ້ງຂະຫນາດແຖບເປັນ n ສະຖານທີ່.
ເບິ່ງ INDENTATION.
-ອອກ, --use-tabs
ໃຊ້ແຖບ. ນີ້ແມ່ນຄ່າເລີ່ມຕົ້ນ.
ເບິ່ງ INDENTATION.
-v, -- verbose
ເປີດໃຊ້ໂໝດ verbose.
ເບິ່ງ MISCELLANEOUS OPTIONS.
-ການປ່ຽນແປງ
ຜົນຜະລິດຈໍານວນສະບັບຂອງ ຫຍໍ້ ໜ້າ.
ເບິ່ງ MISCELLANEOUS OPTIONS.
ຮຽກຮ້ອງ ຫຍໍ້ໜ້າ
ໃນຖານະເປັນສະບັບ 1.3, ຮູບແບບຂອງ ຫຍໍ້ ໜ້າ ຄໍາສັ່ງແມ່ນ:
ຫຍໍ້ໜ້າ [ທາງເລືອກໃນການ] [ໄຟລ໌ປ້ອນຂໍ້ມູນ]
ຫຍໍ້ໜ້າ [ທາງເລືອກໃນການ] [ໄຟລ໌ປ້ອນຂໍ້ມູນດຽວ] [-ອ output-file]
ຮູບແບບນີ້ແມ່ນແຕກຕ່າງຈາກສະບັບກ່ອນຫນ້າແລະສະບັບອື່ນໆຂອງ ຫຍໍ້ ໜ້າ.
ໃນຮູບແບບທໍາອິດ, ຫນຶ່ງຫຼືຫຼາຍໄຟລ໌ປ້ອນຂໍ້ມູນຖືກລະບຸ. ຫຍໍ້ ໜ້າ ເຮັດສໍາເນົາສໍາຮອງຂອງ
ແຕ່ລະໄຟລ໌, ແລະໄຟລ໌ຕົ້ນສະບັບຖືກແທນທີ່ດ້ວຍສະບັບຫຍໍ້ຫນ້າຂອງມັນ. ເບິ່ງ ແບັກອັບ ເອກະສານ,
ສໍາລັບຄໍາອະທິບາຍວິທີການສໍາຮອງຂໍ້ມູນໄດ້ຖືກເຮັດ.
ໃນຮູບແບບທີສອງ, ມີການລະບຸໄຟລ໌ປ້ອນຂໍ້ມູນອັນດຽວເທົ່ານັ້ນ. ໃນກໍລະນີນີ້, ຫຼືໃນເວລາທີ່ມາດຕະຖານ
ການປ້ອນຂໍ້ມູນຖືກນໍາໃຊ້, ທ່ານອາດຈະລະບຸໄຟລ໌ຜົນຜະລິດຫຼັງຈາກທາງເລືອກ '-o'.
ສາເຫດ ຫຍໍ້ ໜ້າ ເພື່ອຂຽນໃສ່ຜົນໄດ້ຮັບມາດຕະຖານ, ໃຊ້ຕົວເລືອກ '-st'. ນີ້ແມ່ນອະນຸຍາດເທົ່ານັ້ນ
ເມື່ອມີໄຟລ໌ປ້ອນຂໍ້ມູນດຽວ, ຫຼືເມື່ອການປ້ອນຂໍ້ມູນມາດຕະຖານຖືກໃຊ້.
ຖ້າບໍ່ມີໄຟລ໌ປ້ອນຂໍ້ມູນຖືກຕັ້ງຊື່, ວັດສະດຸປ້ອນມາດຕະຖານຈະຖືກອ່ານສໍາລັບການປ້ອນຂໍ້ມູນ. ນອກຈາກນັ້ນ, ຖ້າຊື່ໄຟລ໌
ລະບຸຊື່ '-', ຫຼັງຈາກນັ້ນການປ້ອນຂໍ້ມູນມາດຕະຖານຈະຖືກອ່ານ.
ຕົວຢ່າງ, ແຕ່ລະຄໍາສັ່ງຕໍ່ໄປນີ້ຈະໃສ່ໂປຼແກຼມ 'slithy_toves.c' ແລະ
ຂຽນຂໍ້ຄວາມຫຍໍ້ໜ້າຂອງມັນໄປທີ່ 'slithy_toves.out':
ຫຍໍ້ໜ້າ slithy_toves.c -o slithy_toves.out
indent -st slithy_toves.c > slithy_toves.out
cat slithy_toves.c | ຫຍໍ້ໜ້າ -o slithy_toves.out
ທາງເລືອກອື່ນໆທີ່ສຸດທີ່ຈະ ຫຍໍ້ ໜ້າ ຄວບຄຸມວິທີການຈັດຮູບແບບໂຄງການ. ໃນຖານະເປັນສະບັບ 1.2,
ຫຍໍ້ ໜ້າ ຍັງຮັບຮູ້ຊື່ຍາວສໍາລັບແຕ່ລະຊື່ທາງເລືອກ. ທາງເລືອກຍາວແມ່ນ prefixed ໂດຍ
ທັງ '--' ຫຼື '+'. [ '+' ຈະຖືກແທນທີ່ດ້ວຍ '--' ເພື່ອຮັກສາຄວາມສອດຄ່ອງຂອງ
ມາດຕະຖານ POSIX.]
ໃນເອກະສານນີ້ສ່ວນໃຫຍ່, ຊື່ແບບດັ້ງເດີມ, ຊື່ສັ້ນແມ່ນໃຊ້ເພື່ອຄວາມສົດຊື່ນ.
ເບິ່ງ ທາງເລືອກ ບົດສະຫຼຸບ, ສໍາລັບບັນຊີລາຍຊື່ຂອງທາງເລືອກ, ລວມທັງຊື່ຍາວແລະສັ້ນ.
ນີ້ແມ່ນຕົວຢ່າງອື່ນ:
indent -br test/metabolism.c -l85
ນີ້ຈະຫຍໍ້ໜ້າໂປຣແກຣມ 'test/metabolism.c' ໂດຍໃຊ້ຕົວເລືອກ '-br' ແລະ '-l85', ຂຽນ
ຜົນໄດ້ຮັບກັບຄືນໄປບ່ອນ 'test/metabolism.c', ແລະຂຽນເນື້ອໃນຕົ້ນສະບັບຂອງ
'test/metabolism.c' ໄປຫາໄຟລ໌ສຳຮອງໃນໄດເລກະທໍລີ 'test'.
ການຮຽກຮ້ອງທຽບເທົ່າໂດຍໃຊ້ຊື່ທາງເລືອກຍາວສໍາລັບຕົວຢ່າງນີ້ຈະເປັນ:
ຫຍໍ້ໜ້າ --braces-on-if-line --line-length185 test/metabolism.c
indent +braces-on-if-line +line-length185 test/metabolism.c
ຖ້າເຈົ້າພົບວ່າເຈົ້າມັກໃຊ້ ຫຍໍ້ ໜ້າ ດ້ວຍທາງເລືອກດຽວກັນ, ທ່ານອາດຈະໃສ່ທາງເລືອກເຫຼົ່ານັ້ນ
ເຂົ້າໄປໃນໄຟລ໌ທີ່ມີຊື່ວ່າ '.indent.pro'. ຫຍໍ້ ໜ້າ ຈະຊອກຫາໄຟລ໌ໂປຣໄຟລ໌ຢູ່ໃນສາມບ່ອນ.
ທໍາອິດມັນຈະກວດເບິ່ງຕົວແປສະພາບແວດລ້ອມ INDENT_PROFILE. ຖ້າມັນມີຄຸນຄ່າຂອງມັນ
ຄາດວ່າຈະຕັ້ງຊື່ໄຟລ໌ທີ່ຈະໃຊ້. ຖ້າຕົວແປສະພາບແວດລ້ອມບໍ່ມີ,
indent ຊອກຫາ '.indent.pro' ໃນໄດເລກະທໍລີປະຈຸບັນ
ແລະໃຊ້ມັນຖ້າພົບເຫັນ. ສຸດທ້າຍ ຫຍໍ້ ໜ້າ ຈະຄົ້ນຫາໄດເລກະທໍລີເຮືອນຂອງທ່ານສໍາລັບ '.indent.pro'
ແລະໃຊ້ໄຟລ໌ນັ້ນຖ້າມັນຖືກພົບເຫັນ. ພຶດຕິກໍານີ້ແມ່ນແຕກຕ່າງຈາກສະບັບອື່ນໆ
of ຫຍໍ້ ໜ້າ, ເຊິ່ງໂຫຼດທັງສອງໄຟລ໌ຖ້າພວກມັນທັງສອງມີຢູ່.
ຮູບແບບຂອງ '.indent.pro' ແມ່ນພຽງແຕ່ບັນຊີລາຍຊື່ຂອງທາງເລືອກ, ຄືກັນກັບພວກເຂົາເຈົ້າຈະປາກົດຢູ່ໃນ
ເສັ້ນຄໍາສັ່ງ, ແຍກໂດຍຊ່ອງສີຂາວ (ແຖບ, ຊ່ອງຫວ່າງ, ແລະແຖວໃຫມ່). ທາງເລືອກໃນ
'.indent.pro' ອາດຈະຖືກອ້ອມຮອບດ້ວຍຄຳເຫັນ C ຫຼື C++, ໃນກໍລະນີທີ່ພວກມັນຖືກລະເລີຍ.
ສະຫຼັບເສັ້ນຄໍາສັ່ງຖືກຈັດການ ຫຼັງຈາກ ກຳລັງປະມວນຜົນ '.indent.pro'. ຕົວເລືອກທີ່ລະບຸໃນພາຍຫຼັງ
override ອາກິວເມັນທີ່ລະບຸໄວ້ກ່ອນຫນ້ານີ້, ໂດຍມີຂໍ້ຍົກເວັ້ນຫນຶ່ງ: ທາງເລືອກທີ່ລະບຸຢ່າງຊັດເຈນ
ແທນທີ່ຕົວເລືອກພື້ນຫຼັງສະເໝີ (ເບິ່ງ COMMON ກຽວ). ທ່ານສາມາດປ້ອງກັນ ຫຍໍ້ ໜ້າ ຈາກ
ອ່ານໄຟລ໌ '.indent.pro' ໂດຍການລະບຸທາງເລືອກ '-npro'.
ແບັກອັບ ເອກະສານ
ໃນຖານະເປັນສະບັບ 1.3, GNU ຫຍໍ້ ໜ້າ ເຮັດໄຟລ໌ສໍາຮອງແບບ GNU, ແບບດຽວກັນກັບ GNU Emacs ເຮັດ.
ນີ້ຫມາຍຄວາມວ່າບໍ່ວ່າຈະ ງ່າຍດາຍ or ເບີ ອາດຈະສ້າງຊື່ໄຟລ໌ສຳຮອງ.
ຊື່ໄຟລ໌ສຳຮອງທີ່ງ່າຍດາຍແມ່ນສ້າງຂຶ້ນໂດຍການຕໍ່ທ້າຍກັບຊື່ໄຟລ໌ຕົ້ນສະບັບ.
ຄ່າເລີ່ມຕົ້ນຂອງຄຳຕໍ່ທ້າຍນີ້ແມ່ນ '~' (tilde). ດັ່ງນັ້ນ, ການສໍາຮອງຂໍ້ມູນ
ໄຟລ໌ສໍາລັບ 'python.c' ຈະເປັນ 'python.c~'.
ແທນທີ່ຈະເປັນຄ່າເລີ່ມຕົ້ນ, ທ່ານອາດຈະລະບຸສະຕຣິງໃດນຶ່ງເປັນຄຳຕໍ່ທ້າຍໂດຍການຕັ້ງຄ່າສະພາບແວດລ້ອມ
ຕົວແປ SIMPLE_BACKUP_SUFFIX ຕໍ່ກັບຄຳຕໍ່ທ້າຍທີ່ທ່ານຕ້ອງການ.
ເວີຊັນສຳຮອງທີ່ເປັນຕົວເລກຂອງໄຟລ໌ 'momeraths.c' ຄ້າຍຄື 'momeraths.c.~23~', ບ່ອນທີ່ 23 ແມ່ນ.
ສະບັບຂອງການສໍາຮອງຂໍ້ມູນໂດຍສະເພາະນີ້. ເມື່ອເຮັດການສໍາຮອງຂໍ້ມູນທີ່ເປັນຕົວເລກຂອງໄຟລ໌
'src/momeraths.c', ໄຟລ໌ສຳຮອງຈະຖືກຕັ້ງຊື່ 'src/momeraths.c.~V~', ທີ່ V ແມ່ນຫນຶ່ງ
ຫຼາຍກວ່າລຸ້ນທີ່ສູງທີ່ສຸດໃນປະຈຸບັນຢູ່ໃນໄດເລກະທໍລີ 'src'. ໄດ້
ຕົວແປສິ່ງແວດລ້ອມ VERSION_WIDTH ຄວບຄຸມຈໍານວນຕົວເລກ, ໂດຍໃຊ້ສູນ padding ຊ້າຍ
ເມື່ອມີຄວາມຈໍາເປັນ. ຕົວຢ່າງ, ການຕັ້ງຄ່າຕົວແປນີ້ເປັນ "2" ຈະນໍາໄປສູ່ໄຟລ໌ສໍາຮອງຂໍ້ມູນ
ມີຊື່ວ່າ 'momeraths.c.~04~'.
ປະເພດຂອງໄຟລ໌ສໍາຮອງຂໍ້ມູນທີ່ສ້າງຂຶ້ນແມ່ນຄວບຄຸມໂດຍມູນຄ່າຂອງຕົວແປສະພາບແວດລ້ອມ
VERSION_CONTROL. ຖ້າມັນເປັນສະຕຣິງ 'ງ່າຍດາຍ', ຫຼັງຈາກນັ້ນພຽງແຕ່ການສໍາຮອງຂໍ້ມູນງ່າຍດາຍຈະຖືກເຮັດ. ຖ້າ
ຄ່າຂອງມັນແມ່ນສະຕຣິງ 'ຕົວເລກ', ຫຼັງຈາກນັ້ນການສໍາຮອງຂໍ້ມູນທີ່ເປັນຕົວເລກຈະຖືກເຮັດ. ຖ້າມູນຄ່າຂອງມັນ
'numbered-existing', ຫຼັງຈາກນັ້ນການສໍາຮອງຂໍ້ມູນຕົວເລກຈະຖືກເຮັດຖ້າມີ ແລ້ວ ມີຢູ່ແລ້ວ ເບີ
ສໍາຮອງຂໍ້ມູນສໍາລັບໄຟລ໌ທີ່ຖືກ indented; ຖ້າບໍ່ດັ່ງນັ້ນ, ການສໍາຮອງຂໍ້ມູນທີ່ງ່າຍດາຍແມ່ນເຮັດ. ຖ້າ
VERSION_CONTROL ບໍ່ໄດ້ຕັ້ງ, ຫຼັງຈາກນັ້ນ ຫຍໍ້ ໜ້າ ສົມມຸດພຶດຕິກຳຂອງ 'ຕົວເລກທີ່ມີຢູ່'.
ຮຸ່ນອື່ນໆຂອງ ຫຍໍ້ ໜ້າ ໃຊ້ຄຳຕໍ່ທ້າຍ '.BAK' ໃນການຕັ້ງຊື່ໄຟລ໌ສຳຮອງ. ພຶດຕິກໍານີ້ສາມາດ
ໄດ້ຮັບການປະຕິບັດຕາມໂດຍການຕັ້ງຄ່າ SIMPLE_BACKUP_SUFFIX ກັບ '.BAK'.
ໃຫ້ສັງເກດວ່າສະບັບອື່ນໆຂອງ ຫຍໍ້ ໜ້າ ເຮັດການສໍາຮອງຂໍ້ມູນໃນໄດເລກະທໍລີປະຈຸບັນ, ແທນທີ່ຈະ
ໃນໄດເລກະທໍລີຂອງໄຟລ໌ຕົ້ນສະບັບເປັນ GNU ຫຍໍ້ ໜ້າ ດຽວນີ້.
COMMON ກຽວ
ມີຫຼາຍຮູບແບບທົ່ວໄປຂອງລະຫັດ C, ລວມທັງແບບ GNU, Kernighan &
ແບບ Ritchie, ແລະແບບເດີມຂອງ Berkeley. ຮູບແບບອາດຈະຖືກເລືອກດ້ວຍອັນດຽວ
ຄວາມເປັນມາ ທາງເລືອກ, ເຊິ່ງກໍານົດຊຸດຂອງຄ່າສໍາລັບທາງເລືອກອື່ນທັງຫມົດ. ແນວໃດກໍ່ຕາມ,
ທາງເລືອກທີ່ລະບຸໄວ້ຢ່າງຊັດເຈນສະເຫມີໄປ override ທາງເລືອກທີ່ຫມາຍໂດຍທາງເລືອກພື້ນຖານ.
ໃນຖານະເປັນສະບັບ 1.2, ຮູບແບບເລີ່ມຕົ້ນຂອງ GNU ຫຍໍ້ ໜ້າ ແມ່ນຮູບແບບ GNU. ດັ່ງນັ້ນ, ມັນບໍ່ແມ່ນ
ມີຄວາມຈໍາເປັນຕໍ່ໄປອີກແລ້ວທີ່ຈະລະບຸທາງເລືອກ '-gnu' ເພື່ອໃຫ້ໄດ້ຮັບຮູບແບບນີ້, ເຖິງແມ່ນວ່າຈະເຮັດແນວນັ້ນ
ຈະບໍ່ເຮັດໃຫ້ເກີດຄວາມຜິດພາດ. ການຕັ້ງຄ່າທາງເລືອກທີ່ສອດຄ່ອງກັບຮູບແບບ GNU ແມ່ນ:
-nbad -bap -nbc -bbo -bl -bli2 -bls -ncdb -nce -cp1 -cs -di2
-ndj -nfc1 -nfca -hnl -i2 -ip5 -lp -pcs -nprs -psl -saf -sai
-saw -nsc -nsob
ຮູບແບບການຂຽນລະຫັດ GNU ແມ່ນເປັນທີ່ຕ້ອງການໂດຍໂຄງການ GNU. ມັນເປັນແບບທີ່ GNU
ໂຫມດ Emacs C ຊຸກຍູ້ແລະທີ່ຖືກນໍາໃຊ້ໃນສ່ວນ C ຂອງ GNU Emacs. (ຄົນ
ມີຄວາມສົນໃຈໃນການຂຽນໂປຼແກຼມສໍາລັບໂຄງການ GNU ຄວນໄດ້ຮັບສໍາເນົາຂອງ "GNU Coding
ມາດຕະຖານ", ເຊິ່ງຍັງກວມເອົາບັນຫາ semantic ແລະ portability ເຊັ່ນ: ການນໍາໃຊ້ຫນ່ວຍຄວາມຈໍາ, ໄດ້
ຂະໜາດຂອງຈຳນວນເຕັມ, ແລະອື່ນໆ)
ແບບ Kernighan & Ritchie ຖືກນໍາໃຊ້ຕະຫຼອດຫນັງສືທີ່ມີຊື່ສຽງຂອງພວກເຂົາ "The C Programming
ພາສາ" ມັນຖືກເປີດໃຊ້ດ້ວຍຕົວເລືອກ '-kr'. ຮູບແບບ Kernighan & Ritchie
ສອດຄ້ອງກັບຊຸດຂອງຕົວເລືອກຕໍ່ໄປນີ້:
-nbad -bap -bbo -nbc -br -brs -c33 -cd33 -ncdb -ce -ci4 -cli0
-cp33 -cs -d0 -di1 -nfc1 -nfca -hnl -i4 -ip0 -l75 -lp -npcs
-nprs -npsl -saf -sai -saw -nsc -nsob -nss
ແບບ Kernighan & Ritchie ບໍ່ໃສ່ຄໍາຄິດເຫັນຢູ່ເບື້ອງຂວາຂອງລະຫັດໃນຖັນດຽວກັນຢູ່ທີ່
ຕະຫຼອດເວລາ (ຫຼືມັນໃຊ້ພຽງແຕ່ຊ່ອງດຽວຢູ່ເບື້ອງຂວາຂອງລະຫັດ), ດັ່ງນັ້ນສໍາລັບຮູບແບບນີ້
ຫຍໍ້ ໜ້າ ໄດ້ເລືອກຖັນທີ 33 ໂດຍເຈດຕະນາ.
ແບບຂອງຕົ້ນສະບັບ Berkeley ຫຍໍ້ ໜ້າ ອາດຈະໄດ້ຮັບໂດຍການລະບຸ '-orig' (ຫຼືໂດຍ
ການລະບຸ '--original', ການນໍາໃຊ້ຊື່ທາງເລືອກຍາວ). ແບບນີ້ແມ່ນທຽບເທົ່າກັບ
ການຕັ້ງຄ່າຕໍ່ໄປນີ້:
-nbad -nbap -bbo -bc -br -brs -c33 -cd33 -cdb -ce -ci4 -cli0
-cp33 -di16 -fc1 -fca -hnl -i4 -ip4 -l75 -lp -npcs -nprs -psl
-saf -sai -saw -sc -nsob -nss -ts8
ຮູບແບບ Linux ແມ່ນໃຊ້ໃນລະຫັດ linux kernel ແລະໄດເວີ. ໂດຍທົ່ວໄປແລ້ວລະຫັດຕ້ອງປະຕິບັດຕາມ
ຮູບແບບການຂຽນລະຫັດ Linux ທີ່ຈະຍອມຮັບ. ຮູບແບບນີ້ແມ່ນທຽບເທົ່າກັບສິ່ງຕໍ່ໄປນີ້
ການຕັ້ງຄ່າ:
-nbad -bap -nbc -bbo -hnl -br -brs -c33 -cd33 -ncdb -ce -ci4
-cli0 -d0 -di1 -nfc1 -i8 -ip0 -l80 -lp -npcs -nprs -npsl -sai
-saf -saw -ncs -nsc -sob -nfca -cp33 -ss -ts8 -il1
ຂອບໃຈ ເສັ້ນ
ຮູບແບບການຂຽນໂປຼແກຼມຕ່າງໆໃຊ້ເສັ້ນເປົ່າຢູ່ໃນສະຖານທີ່ຕ່າງໆ. ຫຍໍ້ ໜ້າ ມີຈໍານວນຂອງ
ທາງເລືອກໃນການແຊກຫຼືລົບເສັ້ນເປົ່າໃນສະຖານທີ່ສະເພາະ.
ທາງເລືອກ '-ບໍ່ດີ' ເຮັດໃຫ້ເກີດ ຫຍໍ້ ໜ້າ ເພື່ອບັງຄັບເສັ້ນເປົ່າຫຼັງຈາກທຸກໆການປະກາດ.
ທາງເລືອກ '-nbad' ເຮັດໃຫ້ເກີດ ຫຍໍ້ ໜ້າ ບໍ່ບັງຄັບເສັ້ນເປົ່າດັ່ງກ່າວ.
ທາງເລືອກ '-bap' ບັງຄັບໃຫ້ເສັ້ນເປົ່າຫຼັງຈາກທຸກຂັ້ນຕອນ. ທາງເລືອກ '-nbap'
ບັງຄັບໃຫ້ບໍ່ມີເສັ້ນຫວ່າງດັ່ງກ່າວ.
ຕົວເລືອກ '-bbb' ບັງຄັບເສັ້ນຫວ່າງກ່ອນທຸກໆຄໍາຄິດຄໍາເຫັນທີ່ມີກ່ອງ (ເບິ່ງ COMMENTS.) ທ
ຕົວເລືອກ '-nbbb' ບໍ່ໄດ້ບັງຄັບເສັ້ນຫວ່າງດັ່ງກ່າວ.
ທາງເລືອກ '-sob' ສາເຫດ ຫຍໍ້ ໜ້າ ເພື່ອກືນເສັ້ນເປົ່າທາງເລືອກ (ນັ້ນແມ່ນທາງເລືອກໃດໆ
ເສັ້ນເປົ່າທີ່ມີຢູ່ໃນວັດສະດຸປ້ອນຈະຖືກລຶບອອກຈາກຜົນຜະລິດ). ຖ້າ '-nsob' ແມ່ນ
ລະບຸໄວ້, ເສັ້ນຫວ່າງໃດໆທີ່ມີຢູ່ໃນໄຟລ໌ປ້ອນຂໍ້ມູນຈະຖືກສຳເນົາໄປໃສ່ໄຟລ໌ຜົນຜະລິດ.
--blank-lines-after-declarations
ຕົວເລືອກ '-bad' ບັງຄັບໃຫ້ເສັ້ນຫວ່າງຫຼັງຈາກທຸກໆການປະກາດ. '-nbad'
ທາງເລືອກບໍ່ໄດ້ເພີ່ມເສັ້ນເປົ່າດັ່ງກ່າວ.
ສໍາລັບຕົວຢ່າງ, ໄດ້ຮັບການປ້ອນຂໍ້ມູນ
char *foo;
char *bar;
/* ນີ້ແຍກຕັນຂອງປະກາດ. */
int baz;
ຫຍໍ້ ໜ້າ - ບໍ່ດີ ຜະລິດ
char *foo;
char *bar;
/* ນີ້ແຍກຕັນຂອງປະກາດ. */
int baz;
ແລະ ຫຍໍ້ ໜ້າ -nbad ຜະລິດ
char *foo;
char *bar;
/* ນີ້ແຍກຕັນຂອງປະກາດ. */
int baz;
--blank-lines-after-procedures
ທາງເລືອກ '-bap' ບັງຄັບໃຫ້ເສັ້ນເປົ່າຫຼັງຈາກທຸກຂັ້ນຕອນ.
ສໍາລັບຕົວຢ່າງ, ໄດ້ຮັບການປ້ອນຂໍ້ມູນ
int
ຟູ ()
{
puts("ສະບາຍດີ");
}
/* ແຖບຂັ້ນຕອນແມ່ນຫນ້າສົນໃຈຫນ້ອຍ. */
char *
ແຖບ ()
{
puts("ສະບາຍດີ");
}
ຫຍໍ້ ໜ້າ -bap ຜະລິດ
int
ຟູ ()
{
puts ("ສະບາຍດີ");
}
/* ແຖບຂັ້ນຕອນແມ່ນຫນ້າສົນໃຈຫນ້ອຍ. */
char *
ແຖບ ()
{
puts ("ສະບາຍດີ");
}
ແລະ ຫຍໍ້ ໜ້າ -nbap ຜະລິດ
int
ຟູ ()
{
puts ("ສະບາຍດີ");
}
/* ແຖບຂັ້ນຕອນແມ່ນຫນ້າສົນໃຈຫນ້ອຍ. */
char *
ແຖບ ()
{
puts ("ສະບາຍດີ");
}
ບໍ່ມີເສັ້ນເປົ່າຈະຖືກເພີ່ມຫຼັງຈາກຂັ້ນຕອນ ຟູ.
COMMENTS
ຫຍໍ້ ໜ້າ ຮູບແບບທັງ C ແລະ C ++ ຄໍາເຫັນ. ຄຳເຫັນ C ແມ່ນເລີ່ມຕົ້ນດ້ວຍ '/*', ສິ້ນສຸດດ້ວຍ
'*/' ແລະອາດມີຕົວອັກສອນແຖວໃໝ່. ຄຳເຫັນ C++ ເລີ່ມຕົ້ນດ້ວຍຕົວຂັ້ນ '//' ແລະ
ສິ້ນສຸດຢູ່ໃນແຖວໃຫມ່.
ຫຍໍ້ ໜ້າ ປະຕິບັດຄໍາຄິດເຫັນທີ່ແຕກຕ່າງກັນໂດຍອີງຕາມສະພາບການຂອງເຂົາເຈົ້າ. ຫຍໍ້ ໜ້າ ຄວາມພະຍາຍາມທີ່ຈະ
ຈໍາແນກລະຫວ່າງຄໍາເຫັນທີ່ປະຕິບັດຕາມຄໍາຖະແຫຼງການ, ຄໍາເຫັນທີ່ປະຕິບັດຕາມການປະກາດ,
ຄໍາຄິດຄໍາເຫັນປະຕິບັດຕາມຄໍາແນະນໍາ preprocessor, ແລະຄໍາຄິດຄໍາເຫັນທີ່ບໍ່ໄດ້ນໍາຫນ້າໂດຍລະຫັດຂອງ
ປະເພດໃດກໍ່ຕາມ, ie, ພວກເຂົາເລີ່ມຕົ້ນຂໍ້ຄວາມຂອງເສັ້ນ (ເຖິງແມ່ນວ່າບໍ່ຈໍາເປັນຕ້ອງຢູ່ໃນຄໍລໍາ 1).
ຫຍໍ້ ໜ້າ ການຈໍາແນກເພີ່ມເຕີມລະຫວ່າງຄໍາຄິດຄໍາເຫັນທີ່ພົບເຫັນນອກຂະບວນການແລະການລວບລວມ,
ແລະສິ່ງທີ່ພົບເຫັນຢູ່ໃນພວກມັນ. ໂດຍສະເພາະ, ຄໍາເຫັນເລີ່ມຕົ້ນແຖວທີ່ພົບເຫັນຢູ່ໃນ a
ຂັ້ນຕອນການຈະຖືກຫຍໍ້ເຂົ້າໄປໃນຖັນທີ່ລະຫັດແມ່ນໃນປັດຈຸບັນ indented. ໄດ້
ຂໍ້ຍົກເວັ້ນນີ້ແມ່ນຄໍາເຫັນເລີ່ມຕົ້ນຢູ່ໃນຖັນຊ້າຍສຸດ; ຄວາມຄິດເຫັນດັ່ງກ່າວແມ່ນຜົນຜະລິດ
ຢູ່ໃນຖັນນັ້ນ.
ຫຍໍ້ ໜ້າ ຄວາມພະຍາຍາມທີ່ຈະອອກຈາກ ປ່ອງ ຄໍາເຫັນ ບໍ່ໄດ້ດັດແກ້. ແນວຄວາມຄິດທົ່ວໄປຂອງຄໍາເຫັນດັ່ງກ່າວແມ່ນ
ມັນຖືກຫຸ້ມຢູ່ໃນສີ່ຫລ່ຽມຫຼື 'ກ່ອງ' ຂອງດາວຫຼື dashes ເພື່ອກໍານົດມັນອອກຈາກກັນ.
ຊັດເຈນກວ່ານັ້ນ, ຄໍາຄິດເຫັນແບບກ່ອງແມ່ນຖືກກໍານົດເປັນຄໍາທີ່ '/*' ເບື້ອງຕົ້ນແມ່ນປະຕິບັດຕາມ
ທັນທີໂດຍຕົວອັກສອນ '*', '=', '_', ຫຼື '-', ຫຼືຕົວອັກສອນທີ່ເລີ່ມຕົ້ນ.
ຕົວຂັ້ນຄຳຄິດເຫັນ ('/*') ຢູ່ໃນແຖວນັ້ນເອງ, ແລະແຖວຕໍ່ໄປນີ້ເລີ່ມຕົ້ນດ້ວຍ '*'
ໃນຖັນດຽວກັນກັບດາວຂອງຕົວກໍານົດການເປີດ.
ຕົວຢ່າງຂອງຄໍາຄິດເຫັນທີ່ມີກ່ອງແມ່ນ:
/*************************
*ຄອມເມັ້ນໃນກ່ອງ!! *
**********************/
/*
* ກິ່ນຫອມທີ່ແຕກຕ່າງກັນ,
* ສໍາລັບຄວາມຄິດເຫັນທີ່ແຕກຕ່າງກັນ.
*/
ຫຍໍ້ ໜ້າ ຄວາມພະຍາຍາມທີ່ຈະອອກຄໍາຄິດເຫັນ boxed ແທ້ຍ້ອນວ່າເຂົາເຈົ້າໄດ້ຖືກພົບເຫັນຢູ່ໃນໄຟລ໌ແຫຼ່ງ.
ດັ່ງນັ້ນການຫຍໍ້ໜ້າຂອງຄຳເຫັນແມ່ນບໍ່ປ່ຽນແປງ, ແລະຄວາມຍາວຂອງມັນບໍ່ໄດ້ຖືກກວດສອບ
ທາງ. ການປ່ຽນແປງພຽງແຕ່ວ່າຕົວອັກສອນແຖບຝັງອາດຈະໄດ້ຮັບການປ່ຽນເປັນ
ຈໍານວນພື້ນທີ່ທີ່ເຫມາະສົມ.
ຖ້າຕົວເລືອກ '-bbb' ຖືກລະບຸ, ຄຳເຫັນໃນກ່ອງດັ່ງກ່າວທັງໝົດຈະຖືກນຳໜ້າດ້ວຍຊ່ອງຫວ່າງ
ແຖວ, ເວັ້ນເສຍແຕ່ວ່າຄໍາຄິດເຫັນດັ່ງກ່າວຖືກນໍາຫນ້າດ້ວຍລະຫັດ.
ຄວາມຄິດເຫັນທີ່ບໍ່ແມ່ນຄໍາຄິດຄໍາເຫັນທີ່ມີກ່ອງອາດຈະຖືກຈັດຮູບແບບ, ຊຶ່ງຫມາຍຄວາມວ່າເສັ້ນແມ່ນ
ແຍກໃຫ້ພໍດີກັບຂອບດ້ານຂວາ ແລະດ້ານຊ້າຍເຕັມໄປດ້ວຍຊ່ອງຫວ່າງ. ເສັ້ນໃຫມ່ດຽວແມ່ນ
ເທົ່າກັບຊ່ອງຫວ່າງ, ແຕ່ເສັ້ນຫວ່າງ (ສອງແຖວ ຫຼືຫຼາຍກວ່າແຖວໃໝ່ຕິດຕໍ່ກັນ) ຖືກນໍາໄປໝາຍເຖິງ
ຫຍໍ້ໜ້າ. ການຈັດຮູບແບບຂອງຄໍາເຫັນທີ່ເລີ່ມຕົ້ນຫຼັງຈາກຖັນທໍາອິດຖືກເປີດໃຊ້
ດ້ວຍຕົວເລືອກ '-fca'. ເພື່ອຈັດຮູບແບບທີ່ເລີ່ມຕົ້ນໃນຖັນໜຶ່ງ, ໃຫ້ລະບຸ '-fc1'. ດັ່ງກ່າວ
ການຈັດຮູບແບບຖືກປິດໃຊ້ງານໂດຍຄ່າເລີ່ມຕົ້ນ.
ຂອບຂວາສໍາລັບການຈັດຮູບແບບເລີ່ມຕົ້ນເປັນ 78, ແຕ່ອາດຈະຖືກປ່ຽນແປງດ້ວຍຕົວເລືອກ '-lc'.
ຖ້າຂອບທີ່ລະບຸໄວ້ບໍ່ອະນຸຍາດໃຫ້ພິມຄຳເຫັນ, ຂອບຈະເປັນ
ຂະຫຍາຍອັດຕະໂນມັດສໍາລັບໄລຍະເວລາຂອງຄໍາເຫັນນັ້ນ. ຂອບແມ່ນບໍ່ເຄົາລົບຖ້າ
ຄຳເຫັນບໍ່ໄດ້ຖືກຈັດຮູບແບບ.
ຖ້າຄໍາຄິດເຫັນເລີ່ມຕົ້ນເສັ້ນ (ie, ບໍ່ມີຂໍ້ຄວາມຂອງໂປລແກລມໄປທາງຊ້າຍ), ມັນຈະເປັນ
ຫຍໍ້ໜ້າໄປຫາຖັນທີ່ມັນພົບເຫັນຢູ່ໃນນັ້ນ ເວັ້ນເສຍແຕ່ວ່າຄຳເຫັນນັ້ນຢູ່ພາຍໃນບລັອກຂອງລະຫັດ. ໃນ
ກໍລະນີນັ້ນ, ຄໍາເຫັນດັ່ງກ່າວຈະຖືກສອດຄ່ອງກັບລະຫັດຫຍໍ້ຫນ້າຂອງບລັອກນັ້ນ (ເວັ້ນເສຍແຕ່ວ່າ
ຄໍາຄິດຄໍາເຫັນໄດ້ເລີ່ມຕົ້ນໃນຄໍລໍາທໍາອິດ). ການຈັດວາງນີ້ອາດຈະໄດ້ຮັບຜົນກະທົບຈາກຕົວເລືອກ '-d',
ເຊິ່ງລະບຸຈໍານວນທີ່ຄໍາເຫັນດັ່ງກ່າວຖືກຍ້າຍໄປທີ່ ໄວ້, ຫຼື unindented.
ຕົວຢ່າງ, '-d2' ວາງຄໍາຄິດຄໍາເຫັນສອງຊ່ອງໄປທາງຊ້າຍຂອງລະຫັດ. ໂດຍຄ່າເລີ່ມຕົ້ນ, ຄໍາເຫັນ
ແມ່ນສອດຄ່ອງກັບລະຫັດ, ເວັ້ນເສຍແຕ່ວ່າພວກເຂົາເລີ່ມຕົ້ນໃນຖັນທໍາອິດ, ໃນກໍລະນີທີ່ພວກເຂົາຖືກປະໄວ້
ຢູ່ທີ່ນັ້ນໂດຍຄ່າເລີ່ມຕົ້ນ --- ເພື່ອເຮັດໃຫ້ພວກເຂົາສອດຄ່ອງກັບລະຫັດ, ໃຫ້ລະບຸ '-fc1'.
ຄຳເຫັນຢູ່ເບື້ອງຂວາຂອງລະຫັດຈະປາກົດເປັນຄ່າເລີ່ມຕົ້ນໃນຖັນທີ 33. ນີ້ອາດຈະຖືກປ່ຽນແປງ
ກັບຫນຶ່ງໃນສາມທາງເລືອກ. '-c' ຈະລະບຸຖັນສໍາລັບຄໍາຄິດຄໍາເຫັນຕໍ່ໄປນີ້ລະຫັດ,
'-cd' ກໍານົດຄໍລໍາສໍາລັບຄໍາເຫັນດັ່ງຕໍ່ໄປນີ້ການປະກາດ, ແລະ '-cp' ກໍານົດການ
ຖັນສໍາລັບຄໍາເຫັນປະຕິບັດຕາມຄໍາແນະນໍາ preprocessor #ອື່ນ ແລະ #ສຸດທ້າຍ. '-dj' ຮ່ວມກັນ
ດ້ວຍ '-cd0' ສາມາດຖືກໃຊ້ເພື່ອສະກັດກັ້ນການຈັດຮຽງຂອງຄໍາເຫັນໄປທາງຂວາຂອງການປະກາດ,
ເຮັດໃຫ້ຄໍາຄິດຄໍາເຫັນປະຕິບັດຕາມຫນຶ່ງແຖບຈາກໃນຕອນທ້າຍຂອງການປະກາດ. ປົກກະຕິ '-cd0'
ເຮັດໃຫ້ '-c' ກາຍເປັນປະສິດທິພາບ.
ຖ້າລະຫັດທາງຊ້າຍຂອງຄໍາຄິດເຫັນເກີນຖັນເລີ່ມຕົ້ນ, ຖັນຄໍາເຫັນ
ຈະຖືກຂະຫຍາຍໄປຫາຖັນແທັບຢຸດຖັດໄປໃນທ້າຍຂອງລະຫັດ, ຫຼືໃນກໍລະນີຂອງ
preprocessor ຄໍາສັ່ງ, ໄປຫາຊ່ອງຫນຶ່ງທີ່ຜ່ານມາໃນຕອນທ້າຍຂອງຄໍາສັ່ງ. ສ່ວນຂະຫຍາຍນີ້ຄົງຢູ່ໄດ້
ພຽງແຕ່ສໍາລັບຜົນໄດ້ຮັບຂອງຄໍາເຫັນສະເພາະນັ້ນ.
ຕົວເລືອກ '-cdb' ວາງຕົວຂັ້ນຄໍາຄິດຄໍາເຫັນໃສ່ເສັ້ນຫວ່າງເປົ່າ. ດັ່ງນັ້ນ, ເສັ້ນດຽວ
ຄໍາຄິດເຫັນເຊັ່ນ /* ຄວາມຮັກ ກອດ */ ສາມາດປ່ຽນເປັນ:
/*
ຮັກກອດ
*/
ດາວສາມາດຖືກວາງໄວ້ໃນຕອນຕົ້ນຂອງຄໍາເຫັນຫຼາຍແຖວດ້ວຍຕົວເລືອກ '-sc'. ດັ່ງນັ້ນ,
ຄຳເຫັນແຖວດຽວຂ້າງເທິງສາມາດປ່ຽນໄດ້ (ດ້ວຍ '-cdb -sc') ເປັນ:
/*
* ຮັກກອດ
*/
ຖະແຫຼງການ
ຕົວເລືອກ '-br' ຫຼື '-bl' ລະບຸວິທີການຈັດຮູບແບບວົງເລັບ.
ຕົວເລືອກ '-br' ຈັດຮູບແບບຄຳຖະແຫຼງທີ່ຊ້ອນກັນດັ່ງນີ້:
ຖ້າ (x > 0) {
x--;
}
ຕົວເລືອກ '-bl' ຈັດຮູບແບບໃຫ້ເຂົາເຈົ້າເຊັ່ນນີ້:
ຖ້າ (x > 0)
{
x--;
}
ຖ້າທ່ານໃຊ້ຕົວເລືອກ '-bl', ທ່ານອາດຈະຕ້ອງການລະບຸທາງເລືອກ '-bli'. ທາງເລືອກນີ້
ລະບຸຈໍານວນຊ່ອງຫວ່າງທີ່ວົງເລັບຖືກຫຍໍ້ໜ້າ. '-bli2', ຄ່າເລີ່ມຕົ້ນ, ໃຫ້
ຜົນໄດ້ຮັບສະແດງໃຫ້ເຫັນຂ້າງເທິງ. '-bli0' ຜົນໄດ້ຮັບຕໍ່ໄປນີ້:
ຖ້າ (x > 0)
{
x--;
}
ຖ້າທ່ານກໍາລັງໃຊ້ຕົວເລືອກ '-br', ທ່ານອາດຈະຕ້ອງການໃຊ້ຕົວເລືອກ '-ce' ເຊັ່ນກັນ. ນີ້
ສາເຫດ ອື່ນ ໃນການກໍ່ສ້າງຖ້າຫາກວ່າຫຼັງຈາກນັ້ນ-else ເພື່ອ cuddle ເຖິງທັນທີກ່ອນຫນ້າ
'}'. ຕົວຢ່າງ, ດ້ວຍ '-br -ce' ທ່ານໄດ້ຮັບສິ່ງຕໍ່ໄປນີ້:
ຖ້າ (x > 0) {
x--;
} else {
fprintf (stderr, "...ມີບາງຢ່າງຜິດພາດບໍ?\n");
}
ດ້ວຍ '-br -nce' ລະຫັດຈະປາກົດເປັນ
ຖ້າ (x > 0) {
x--;
}
ອື່ນ {
fprintf (stderr, "...ມີບາງຢ່າງຜິດພາດບໍ?\n");
}
ນີ້ເຮັດໃຫ້ເກີດ ໃນຂະນະທີ່ ຢູ່ໃນຮອບ do-while ເພື່ອ cuddle ເຖິງ '}' ກ່ອນໜ້າທັນທີ.
ຕົວຢ່າງ, ດ້ວຍ '-cdw' ທ່ານໄດ້ຮັບສິ່ງຕໍ່ໄປນີ້:
ເຮັດ {
x--;
} ໃນຂະນະທີ່ (x);
ດ້ວຍ '-ncdw' ລະຫັດຈະປາກົດເປັນ
ເຮັດ {
x--;
}
ໃນຂະນະທີ່ (x);
ຕົວເລືອກ '-cli' ລະບຸຈໍານວນຊ່ອງຫວ່າງທີ່ປ້າຍກໍລະນີຄວນຈະຖືກຫຍໍ້ໜ້າເຂົ້າ
ສິດທິຂອງການບັນຈຸ ສະຫຼັບ ຄໍາຖະແຫຼງທີ່.
ຄ່າເລີ່ມຕົ້ນໃຫ້ລະຫັດເຊັ່ນ:
ສະຫຼັບ (i)
{
ກໍລະນີ 0:
ທໍາລາຍ;
ກໍລະນີ 1:
{
++i;
}
default:
ທໍາລາຍ;
}
ການນໍາໃຊ້ '-cli2' ທີ່ຈະກາຍເປັນ:
ສະຫຼັບ (i)
{
ກໍລະນີ 0:
ທໍາລາຍ;
ກໍລະນີ 1:
{
++i;
}
default:
ທໍາລາຍ;
}
ການຫຍໍ້ໜ້າຂອງວົງເລັບຂ້າງລຸ່ມຂໍ້ຄວາມກໍລະນີສາມາດຄວບຄຸມດ້ວຍ '-cbin'
ທາງເລືອກ. ຕົວຢ່າງ, ການນໍາໃຊ້ '-cli2 -cbi0' ຜົນໄດ້ຮັບໃນ:
ສະຫຼັບ (i)
{
ກໍລະນີ 0:
ທໍາລາຍ;
ກໍລະນີ 1:
{
++i;
}
default:
ທໍາລາຍ;
}
ຖ້າເຄື່ອງໝາຍຈຸດຢູ່ໃນເສັ້ນດຽວກັນກັບ a ສໍາລັບການ or ໃນຂະນະທີ່ ຄໍາຖະແຫຼງການ, ທາງເລືອກ '-ss' ຈະ
ເຮັດໃຫ້ພື້ນທີ່ຖືກວາງໄວ້ກ່ອນເຄື່ອງໝາຍຈຸດ. ນີ້ເນັ້ນຫນັກໃສ່ semicolon, ເຮັດໃຫ້ມັນ
ຈະແຈ້ງວ່າຮ່າງກາຍຂອງ ສໍາລັບການ or ໃນຂະນະທີ່ ຖະແຫຼງການແມ່ນຄໍາຖະແຫຼງທີ່ຫວ່າງເປົ່າ. '-nss' ປິດການໃຊ້ງານ
ຄຸນນະສົມບັດນີ້.
ທາງເລືອກ '-pcs' ເຮັດໃຫ້ຊ່ອງຫວ່າງຖືກຈັດໃສ່ລະຫວ່າງຊື່ຂອງຂັ້ນຕອນການເປັນ
ເອີ້ນວ່າ ແລະ '(' (ຕົວຢ່າງ, puts puts ("ສະບາຍດີ");. ທາງເລືອກ '-npcs' ຈະໃຫ້
puts("ສະບາຍດີ");).
ຖ້າຕົວເລືອກ '-cs' ຖືກລະບຸ, ຫຍໍ້ ໜ້າ ເຮັດໃຫ້ຊ່ອງຫວ່າງລະຫວ່າງຕົວປະຕິບັດການສຽງໂຫວດທັງຫມົດແລະ
ວັດຖຸທີ່ຈະຖືກໂຍນ. '-ncs' ຮັບປະກັນວ່າບໍ່ມີຊ່ອງຫວ່າງລະຫວ່າງຕົວປະຕິບັດການສຽງໂຫວດທັງຫມົດແລະ
ວັດຖຸ. ຈື່ໄວ້ວ່າ ຫຍໍ້ ໜ້າ ພຽງແຕ່ຮູ້ກ່ຽວກັບປະເພດຂໍ້ມູນ C ມາດຕະຖານແລະດັ່ງນັ້ນບໍ່ສາມາດ
ຮັບຮູ້ປະເພດຂອງຜູ້ໃຊ້ທີ່ກໍານົດໃນສຽງໂຫວດທັງຫມົດ. ດັ່ງນັ້ນ (mytype) ສິ່ງ ບໍ່ໄດ້ຖືກປະຕິບັດເປັນນັກສະແດງ.
ທາງເລືອກ '-bs' ໃຫ້ແນ່ໃຈວ່າມີຊ່ອງຫວ່າງລະຫວ່າງຄໍາສໍາຄັນ ຂະຫນາດຂອງ ແລະມັນ
ການໂຕ້ຖຽງ. ໃນບາງສະບັບ, ນີ້ແມ່ນເອີ້ນວ່າທາງເລືອກ 'Bill_Shannon'.
ທາງເລືອກ '-saf' ບັງຄັບຊ່ອງຫວ່າງລະຫວ່າງ a ສໍາລັບການ ແລະວົງເລັບຕໍ່ໄປນີ້. ນີ້ແມ່ນ
Default
ຕົວເລືອກ '-sai' ບັງຄັບຊ່ອງຫວ່າງລະຫວ່າງ a if ແລະວົງເລັບຕໍ່ໄປນີ້. ນີ້ແມ່ນ
Default
ຕົວເລືອກ '-saw' ບັງຄັບຊ່ອງຫວ່າງລະຫວ່າງ a ໃນຂະນະທີ່ ແລະວົງເລັບຕໍ່ໄປນີ້. ນີ້ແມ່ນ
ຄ່າເລີ່ມຕົ້ນ.
ຕົວເລືອກ '-prs' ເຮັດໃຫ້ວົງເລັບທັງໝົດຖືກແຍກອອກດ້ວຍຊ່ອງຫວ່າງຈາກອັນໃດກໍໄດ້
ລະຫວ່າງເຂົາເຈົ້າ. ຕົວຢ່າງ, ການນໍາໃຊ້ '-prs' ຜົນໄດ້ຮັບໃນລະຫັດເຊັ່ນ:
ໃນຂະນະທີ່ ( ( e_code - s_code ) < ( dec_ind - 1 ) )
{
set_buf_break ( bb_dec_ind );
*e_code++ = ' ';
}
ຄຳ ອະທິບາຍ
ໂດຍຄ່າເລີ່ມຕົ້ນ ຫຍໍ້ ໜ້າ ຈະຈັດແຖວຕົວລະບຸ, ໃນຖັນທີ່ລະບຸໄວ້ໂດຍຕົວເລືອກ '-di'.
ຕົວຢ່າງ, '-di16' ເຮັດໃຫ້ສິ່ງຕ່າງໆເບິ່ງຄືວ່າ:
int foo;
char *bar;
ການນໍາໃຊ້ຄ່າຂະຫນາດນ້ອຍ (ເຊັ່ນຫນຶ່ງຫຼືສອງ) ສໍາລັບທາງເລືອກ '-di' ສາມາດຖືກນໍາໃຊ້ເພື່ອເຮັດໃຫ້ເກີດ
ຕົວລະບຸທີ່ຈະຈັດໃສ່ໃນຕໍາແຫນ່ງທໍາອິດທີ່ມີຢູ່; ຍົກຕົວຢ່າງ:
int foo;
char *bar;
ຄ່າທີ່ມອບໃຫ້ກັບຕົວເລືອກ '-di' ຈະຍັງຄົງມີຜົນຕໍ່ຕົວແປທີ່ວາງໄວ້ແຍກຕ່າງຫາກ
ສາຍຈາກປະເພດຂອງພວກເຂົາ, ຕົວຢ່າງ '-di2' ຈະນໍາໄປສູ່:
int
ຟູ;
ຖ້າຕົວເລືອກ '-bc' ຖືກລະບຸ, ແຖວໃໝ່ຈະຖືກບັງຄັບຫຼັງຈາກແຕ່ລະເຄື່ອງໝາຍຈຸດໃນການປະກາດ.
ຍົກຕົວຢ່າງ,
ຢູ່ໃນ,
b,
c;
ດ້ວຍຕົວເລືອກ '-nbc' ນີ້ຈະເບິ່ງຄືວ່າ
int a, b, c;
ຕົວເລືອກ '-bfda' ເຮັດໃຫ້ແຖວໃໝ່ຖືກບັງຄັບຫຼັງຈາກເຄື່ອງໝາຍຈຸດແຍກການໂຕ້ແຍ້ງ.
ຂອງການປະກາດຫນ້າທີ່. ການໂຕ້ຖຽງຈະປາກົດຢູ່ໃນລະດັບການຫຍໍ້ໜ້າໜຶ່ງເລິກກວ່າ
ການປະກາດຫນ້າທີ່. ນີ້ແມ່ນເປັນປະໂຫຍດໂດຍສະເພາະສໍາລັບຫນ້າທີ່ທີ່ມີການໂຕ້ຖຽງຍາວ
ລາຍການ. ທາງເລືອກ '-bfde' ເຮັດໃຫ້ແຖວໃຫມ່ຖືກບັງຄັບກ່ອນວົງເລັບປິດຂອງ
ການປະກາດຫນ້າທີ່. ສໍາລັບທັງສອງທາງເລືອກ, ການຕັ້ງຄ່າ 'n' ແມ່ນຄ່າເລີ່ມຕົ້ນ: -nbdfa ແລະ -nbdfe.
ຍົກຕົວຢ່າງ,
void foo (int arg1, char arg2, int *arg3, arg4 ຍາວ, char arg5);
ດ້ວຍຕົວເລືອກ '-bfda' ນີ້ຈະເບິ່ງຄືວ່າ
void foo (
int arg1,
char arg2,
int *arg3,
arg ຍາວ 4,
char arg5);
ນອກຈາກນັ້ນ, ທາງເລືອກ '-bfde' ນີ້ຈະເບິ່ງຄືວ່າ
void foo (
int arg1,
char arg2,
int *arg3,
arg ຍາວ 4,
char arg5
);
ທາງເລືອກ '-psl' ເຮັດໃຫ້ປະເພດຂອງຂັ້ນຕອນທີ່ຖືກກໍານົດໄວ້ໃນເສັ້ນ
ກ່ອນຊື່ຂອງຂະບວນການ. ແບບນີ້ແມ່ນຕ້ອງການສໍາລັບການ etags ໂຄງການທີ່ຈະເຮັດວຽກ
ຢ່າງຖືກຕ້ອງ, ເຊັ່ນດຽວກັນກັບບາງສ່ວນຂອງ c-mode ຫນ້າທີ່ຂອງ Emacs.
ທ່ານຕ້ອງໃຊ້ຕົວເລືອກ '-T' ເພື່ອບອກ ຫຍໍ້ ໜ້າ ຊື່ຂອງ typenames ທັງຫມົດໃນໂຄງການຂອງທ່ານ
ທີ່ຖືກກໍານົດໂດຍ ພິມປະເພດ. '-T' ສາມາດລະບຸໄດ້ຫຼາຍກວ່າຫນຶ່ງຄັ້ງ, ແລະທຸກຊື່
ທີ່ລະບຸໄວ້ຖືກນໍາໃຊ້. ສໍາລັບຕົວຢ່າງ, ຖ້າໂຄງການຂອງທ່ານປະກອບດ້ວຍ
typedef ບໍ່ໄດ້ເຊັນຍາວ CODE_ADDR;
typedef enum {ສີແດງ,ສີຟ້າ,ສີຂຽວ} COLOR;
ເຈົ້າຈະໃຊ້ຕົວເລືອກ '-T CODE_ADDR -T COLOR'.
ຕົວເລືອກ '-brs' ຫຼື '-bls' ລະບຸວິທີການຈັດຮູບແບບວົງເລັບໃນການປະກາດໂຄງສ້າງ. ໄດ້
'-brs' ຮູບແບບທາງເລືອກໃນວົງເລັບແບບນີ້:
ໂຄງສ້າງ foo {
intx;
};
ຕົວເລືອກ '-bls' ຈັດຮູບແບບໃຫ້ເຂົາເຈົ້າເຊັ່ນນີ້:
ໂຄງສ້າງ foo
{
intx;
};
ຄືກັນກັບຕົວເລືອກໂຄງສ້າງ '-brs' ແລະ '-bls',
ຕົວເລືອກວົງເລັບຟັງຊັນ '-brf' ຫຼື '-blf' ລະບຸວິທີການຈັດຮູບແບບວົງເລັບໃນຟັງຊັນ
ຄໍານິຍາມ. ຕົວເລືອກ '-brf' ຈັດຮູບແບບວົງເລັບແບບນີ້:
ຢູ່ໃນອັນດຽວ (void) {
return 1
};
ຕົວເລືອກ '-blf' ຈັດຮູບແບບໃຫ້ເຂົາເຈົ້າເຊັ່ນນີ້:
ຢູ່ໃນອັນດຽວ (void)
{
return 1
};
INDENTATION
ບັນຫາຫນຶ່ງໃນການຈັດຮູບແບບລະຫັດແມ່ນໄລຍະໄກຂອງແຕ່ລະເສັ້ນຄວນຈະຖືກຫຍໍ້ຫນ້າຈາກຊ້າຍ
ຂອບ. ໃນເວລາທີ່ການເລີ່ມຕົ້ນຂອງຄໍາຖະແຫຼງການເຊັ່ນ: if or ສໍາລັບການ ແມ່ນພົບ, ໄດ້
ລະດັບການຫຍໍ້ໜ້າແມ່ນເພີ່ມຂຶ້ນໂດຍຄ່າທີ່ລະບຸໄວ້ໂດຍຕົວເລືອກ '-i'. ຍົກຕົວຢ່າງ,
ໃຊ້ '-i8' ເພື່ອລະບຸການຫຍໍ້ໜ້າແປດຕົວອັກສອນສຳລັບແຕ່ລະລະດັບ. ໃນເວລາທີ່ຄໍາຖະແຫຼງການແມ່ນ
ແຍກສອງແຖວ, ແຖວທີສອງຖືກຫຍໍ້ໜ້າດ້ວຍຊ່ອງຫວ່າງເພີ່ມເຕີມຈຳນວນໜຶ່ງ
ລະບຸໂດຍຕົວເລືອກ '-ci'. '-ci' ເລີ່ມຕົ້ນເປັນ 0. ແນວໃດກໍ່ຕາມ, ຖ້າທາງເລືອກ '-lp' ແມ່ນ
ລະບຸໄວ້, ແລະເສັ້ນໜຶ່ງມີວົງເລັບຊ້າຍທີ່ບໍ່ໄດ້ປິດຢູ່ໃນແຖວນັ້ນ
ແຖວຕໍ່ເນື່ອງຈະຖືກຈັດແຖວຂຶ້ນເພື່ອເລີ່ມຕົ້ນທີ່ຕຳແໜ່ງຕົວອັກສອນຫຼັງຈາກຊ້າຍ
ວົງເລັບ. ການປະມວນຜົນນີ້ຍັງໃຊ້ກັບ '[' ແລະໃຊ້ກັບ '{' ເມື່ອມັນເກີດຂຶ້ນໃນ
ລາຍຊື່ເບື້ອງຕົ້ນ. ຕົວຢ່າງ, ຊິ້ນສ່ວນຂອງລະຫັດຕໍ່ເນື່ອງອາດຈະເບິ່ງຄືວ່ານີ້ກັບ
ມີຜົນບັງຄັບໃຊ້ '-nlp -ci3':
p1 = first_procedure (ຂັ້ນຕອນທີສອງ (p2, p3),
third_procedure (p4, p5));
ດ້ວຍ '-lp' ໃນຜົນກະທົບ, ລະຫັດເບິ່ງຄືວ່າຈະແຈ້ງກວ່າ:
p1 = first_procedure (ຂັ້ນຕອນທີສອງ (p2, p3),
third_procedure (p4, p5));
ເມື່ອຄໍາຖະແຫຼງທີ່ແຍກຢູ່ໃນລະຫວ່າງສອງຫຼືຫຼາຍກວ່າຄູ່ຄູ່ (...), ແຕ່ລະຄູ່ພິເສດ
ເຮັດໃຫ້ລະດັບ indentation ຫຍໍ້ໜ້າເພີ່ມເຕີມ:
ຖ້າ ((((i < 2 &&
k > 0) || p == 0) &&
q == 1) ||
n = 0)
ທາງເລືອກ '-ipN' ສາມາດໃຊ້ເພື່ອກໍານົດການຊົດເຊີຍເພີ່ມເຕີມຕໍ່ paren. ຕົວຢ່າງ, '-ip0'
ຈະຈັດຮູບແບບຂ້າງເທິງເປັນ:
ຖ້າ ((((i < 2 &&
k > 0) || p == 0) &&
q == 1) ||
n = 0)
ຫຍໍ້ ໜ້າ ສົມມຸດວ່າແທັບຖືກຈັດໃສ່ໃນຊ່ວງເວລາປົກກະຕິຂອງທັງວັດສະດຸປ້ອນແລະຜົນຜະລິດ
ລັກສະນະສາຍ. ໄລຍະຫ່າງເຫຼົ່ານີ້ແມ່ນຕາມຄ່າເລີ່ມຕົ້ນ 8 ຖັນກວ້າງ, ແຕ່ (ຕາມສະບັບ 1.2)
ອາດຈະມີການປ່ຽນແປງໂດຍທາງເລືອກ '-ts'. ແຖບຖືກປະຕິບັດເປັນຈໍານວນທີ່ທຽບເທົ່າຂອງຊ່ອງ.
ການຫຍໍ້ໜ້າຂອງການປະກາດປະເພດໃນນິຍາມຟັງຊັນແບບເກົ່າຖືກຄວບຄຸມໂດຍ
ພາຣາມິເຕີ '-ip'. ນີ້ແມ່ນຕົວກໍານົດການຕົວເລກທີ່ລະບຸຈໍານວນຊ່ອງທີ່ຈະຫຍໍ້ຫນ້າ
ປະເພດການປະກາດ. ຕົວຢ່າງ, ຄ່າເລີ່ມຕົ້ນ '-ip5' ເຮັດໃຫ້ຄໍານິຍາມເບິ່ງຄືວ່ານີ້:
char *
create_world (x, y, scale)
intx;
int y;
ຂະໜາດເລື່ອນ;
{
. . .
}
ສໍາລັບຄວາມເຂົ້າກັນໄດ້ກັບ indent ຮຸ່ນອື່ນໆ, ທາງເລືອກ '-nip' ແມ່ນສະຫນອງໃຫ້, ເຊິ່ງແມ່ນ
ເທົ່າກັບ '-ip0'.
ANSI C ອະນຸຍາດໃຫ້ວາງພື້ນທີ່ສີຂາວຢູ່ໃນແຖວຄໍາສັ່ງ preprocessor ລະຫວ່າງຕົວອັກສອນ
'#' ແລະຊື່ຄໍາສັ່ງ. ໂດຍຄ່າເລີ່ມຕົ້ນ, ຫຍໍ້ ໜ້າ ເອົາຊ່ອງນີ້ອອກ, ແຕ່ການລະບຸ
'-lps' ທາງເລືອກ directs ຫຍໍ້ ໜ້າ ເພື່ອປ່ອຍໃຫ້ພື້ນທີ່ນີ້ບໍ່ຖືກແກ້ໄຂ. ຕົວເລືອກ '-ppi' overrides
'-nlps' ແລະ '-lps'.
ທາງເລືອກນີ້ສາມາດຖືກນໍາໃຊ້ເພື່ອຮ້ອງຂໍໃຫ້ preprocessor ເງື່ອນໄຂສາມາດເປັນ
ຫຍໍ້ໜ້າດ້ວຍຈຳນວນຍະຫວ່າງທີ່ໃຫ້ໄວ້, ຕົວຢ່າງດ້ວຍຕົວເລືອກ '-ppi 3'
#ຖ້າ X
#ຖ້າ Y
#ກຳນົດ Z 1
#ອື່ນ
#ກຳນົດ Z 0
#ສຸດທ້າຍ
#ສຸດທ້າຍ
ກາຍເປັນ
#ຖ້າ X
# ຖ້າ Y
# ກໍານົດ Z 1
# ອື່ນ
# ກໍານົດ Z 0
# endif
#ສຸດທ້າຍ
ຕົວເລືອກນີ້ກຳນົດຄ່າຊົດເຊີຍທີ່ປ້າຍກຳກັບ (ຍົກເວັ້ນປ້າຍກໍລະນີ) ຈະຖືກຕັ້ງ. ຖ້າ
ມັນຖືກຕັ້ງເປັນສູນ ຫຼືຕົວເລກບວກ, ນີ້ຊີ້ບອກເຖິງໄລຍະໄກຈາກຂອບຊ້າຍຫາ
ຫຍໍ້ໜ້າປ້າຍຊື່. ຖ້າມັນຖືກຕັ້ງເປັນຕົວເລກລົບ, ນີ້ຊີ້ບອກວ່າໄກຈາກຕົວເລກ
ລະດັບຫຍໍ້ໜ້າປັດຈຸບັນເພື່ອວາງປ້າຍກຳກັບ. ການຕັ້ງຄ່າເລີ່ມຕົ້ນແມ່ນ -2 ເຊິ່ງກົງກັບ
ພຶດຕິກໍາຂອງ indent ຮຸ່ນກ່ອນຫນ້າ. ໃຫ້ສັງເກດວ່າພາລາມິເຕີນີ້ບໍ່ມີຜົນຕໍ່
ການວາງປ້າຍກໍລະນີ; ເບິ່ງຕົວກໍານົດການ '-cli' ສໍາລັບການນັ້ນ. ສໍາລັບຕົວຢ່າງ, ມີທາງເລືອກ
'-il 1'
ກຸ່ມ
ຟັງຊັນ()
{
ຖ້າ (do_stuff1() == ຂໍ້ຜິດພາດ)
goto cleanup1;
ຖ້າ (do_stuff2() == ຂໍ້ຜິດພາດ)
goto cleanup2;
ກັບຄືນ SUCCESS;
ທໍາຄວາມສະອາດ 2:
do_cleanup2();
ທໍາຄວາມສະອາດ 1:
do_cleanup1();
ກັບຄືນ ERROR;
}
ກາຍເປັນ
ກຸ່ມ
ຟັງຊັນ()
{
ຖ້າ (do_stuff1() == ຂໍ້ຜິດພາດ)
goto cleanup1;
ຖ້າ (do_stuff2() == ຂໍ້ຜິດພາດ)
goto cleanup2;
ກັບຄືນ SUCCESS;
ທໍາຄວາມສະອາດ 2:
do_cleanup2();
ທໍາຄວາມສະອາດ 1:
do_cleanup1();
ກັບຄືນ ERROR;
}
BREAKING LONG ເສັ້ນ
ດ້ວຍຕົວເລືອກ '-ln', ຫຼື '--line-lengthn', ມັນເປັນໄປໄດ້ທີ່ຈະລະບຸຄວາມຍາວສູງສຸດ
ຂອງລະຫັດ C, ບໍ່ລວມເອົາຄໍາຄິດຄໍາເຫັນທີ່ເປັນໄປໄດ້ທີ່ປະຕິບັດຕາມມັນ.
ເມື່ອເສັ້ນຍາວກວ່າຄວາມຍາວຂອງເສັ້ນທີ່ກໍານົດໄວ້, GNU ຫຍໍ້ ໜ້າ ພະຍາຍາມທໍາລາຍ
ເສັ້ນຢູ່ສະຖານທີ່ທີ່ມີເຫດຜົນ. ນີ້ແມ່ນໃຫມ່ຂອງສະບັບ 2.1 ແນວໃດກໍ່ຕາມແລະບໍ່ສະຫລາດຫຼາຍ
ຫຼືປ່ຽນແປງໄດ້.
ໃນປັດຈຸບັນມີສອງທາງເລືອກທີ່ອະນຸຍາດໃຫ້ຫນຶ່ງແຊກແຊງກັບ algorithm ວ່າ
ກໍານົດບ່ອນທີ່ຈະທໍາລາຍເສັ້ນ.
ທາງເລືອກ '-bbo' ເຮັດໃຫ້ GNU ຫຍໍ້ ໜ້າ ຕ້ອງການທໍາລາຍສາຍຍາວກ່ອນ boolean
ຜູ້ປະກອບການ && ແລະ ||. ທາງເລືອກ '-nbbo' ເຮັດໃຫ້ GNU ຫຍໍ້ ໜ້າ ບໍ່ມີຄວາມຕ້ອງການນັ້ນ. ສໍາລັບ
ຕົວຢ່າງ, ຕົວເລືອກເລີ່ມຕົ້ນ '-bbo' (ຮ່ວມກັບ '--line-length60' ແລະ '--ignore-
newlines') ເຮັດໃຫ້ລະຫັດເບິ່ງຄືວ່ານີ້:
ຖ້າ (ຫນ້າກາກ
&& ((ໜ້າກາກ[0] == '\0')
|| (ໜ້າກາກ[1] == '\0'
&& ((ໜ້າກາກ[0] == '0') || (ໜ້າກາກ[0] == '*')))))
ການນໍາໃຊ້ທາງເລືອກ '-nbbo' ຈະເຮັດໃຫ້ມັນເບິ່ງຄືວ່ານີ້:
ຖ້າ (ຫນ້າກາກ &&
((ໜ້າກາກ[0] == '\0') ||
(ໜ້າກາກ[1] == '\0' &&
((ໜ້າກາກ[0] == '0') || (ໜ້າກາກ[0] == '*')))))
ຢ່າງໃດກໍຕາມ, ຄ່າເລີ່ມຕົ້ນ '-hnl' ໃຫ້ກຽດແຖວໃຫມ່ໃນໄຟລ໌ປ້ອນຂໍ້ມູນໂດຍການໃຫ້ພວກເຂົາສູງສຸດ
ບູລິມະສິດທີ່ເປັນໄປໄດ້ເພື່ອທໍາລາຍເສັ້ນຢູ່. ຕົວຢ່າງ, ເມື່ອໄຟລ໌ປ້ອນເຂົ້າເບິ່ງຄືດັ່ງນີ້:
ຖ້າ (ຫນ້າກາກ
&& ((ໜ້າກາກ[0] == '\0')
|| (ໜ້າກາກ[1] == '\0' && ((ໜ້າກາກ[0] == '0') || (ໜ້າກາກ[0] == '*')))))
ຫຼັງຈາກນັ້ນ, ການນໍາໃຊ້ທາງເລືອກ '-hnl', ຫຼື '--honour-newlines', ຮ່ວມກັນກັບກ່ອນຫນ້ານີ້.
ທີ່ໄດ້ກ່າວມາ '-nbbo' ແລະ '--line-length60', ຈະເຮັດໃຫ້ຜົນຜະລິດບໍ່ແມ່ນສິ່ງທີ່ຖືກມອບໃຫ້.
ຕົວຢ່າງສຸດທ້າຍແຕ່ຈະມັກທໍາລາຍຕໍາແຫນ່ງທີ່ລະຫັດແມ່ນ
ແຍກຢູ່ໃນໄຟລ໌ປ້ອນຂໍ້ມູນ:
ຖ້າ (ຫນ້າກາກ
&& ((ໜ້າກາກ[0] == '\0')
|| (ໜ້າກາກ[1] == '\0' &&
((ໜ້າກາກ[0] == '0') || (ໜ້າກາກ[0] == '*')))))
ແນວຄວາມຄິດທີ່ຢູ່ເບື້ອງຫລັງທາງເລືອກນີ້ແມ່ນເສັ້ນທີ່ຍາວເກີນໄປ, ແຕ່ຖືກແຍກອອກແລ້ວ,
ຈະບໍ່ຖືກແຕະຕ້ອງໂດຍ GNU ຫຍໍ້ ໜ້າ. ລະຫັດທີ່ສັບສົນແທ້ໆຄວນຈະຖືກແລ່ນຜ່ານ ຫຍໍ້ ໜ້າ at
ຢ່າງຫນ້ອຍຫນຶ່ງຄັ້ງໂດຍໃຊ້ຕົວເລືອກ '--ignore-newlines' ເຖິງແມ່ນວ່າ.
ການປິດການນຳໃຊ້ ການຈັດຮູບແບບ
ການຈັດຮູບແບບຂອງລະຫັດ C ອາດຈະຖືກພິການສໍາລັບສ່ວນຂອງໂຄງການໂດຍການຝັງພິເສດ
ການຄວບຄຸມ ຄໍາເຫັນ ໃນໂຄງການ. ເພື່ອປິດການຈັດຮູບແບບສໍາລັບພາກສ່ວນຂອງໂປຣແກຣມ, ວາງ
ຄວາມຄິດເຫັນການຄວບຄຸມການປິດ /* *ຫຍໍ້ເຂົ້າ-ປິດ* */ ກ່ອນໜ້ານັ້ນເອງ
ພາກ. ຂໍ້ຄວາມໂຄງການທີ່ສະແກນຫຼັງຈາກຄໍາຄິດເຫັນການຄວບຄຸມນີ້ແມ່ນຜົນຜະລິດທີ່ຊັດເຈນເປັນການປ້ອນຂໍ້ມູນ
ໂດຍບໍ່ມີການດັດແກ້ຈົນກ່ວາຄໍາຄິດເຫັນທີ່ສອດຄ້ອງກັນໄດ້ຖືກສະແກນຢູ່ໃນເສັ້ນໂດຍ
ຕົວຂອງມັນເອງ. ຄໍາຄິດຄໍາເຫັນການຄວບຄຸມການປິດການໃຊ້ງານແມ່ນ /* *ເປີດຫຍໍ້ໜ້າ* */, ແລະຂໍ້ຄວາມໃດໆທີ່ປະຕິບັດຕາມ
ຄໍາຄິດຄໍາເຫັນກ່ຽວກັບສາຍແມ່ນຍັງຜົນຜະລິດ unformated. ການຈັດຮູບແບບເລີ່ມຕົ້ນອີກຄັ້ງດ້ວຍການປ້ອນຂໍ້ມູນ
ເສັ້ນປະຕິບັດຕາມຄໍາຄິດເຫັນການຄວບຄຸມການເປີດໃຊ້ງານ.
ພິເສດກ່ວາ, ຫຍໍ້ ໜ້າ ບໍ່ພະຍາຍາມກວດສອບຕົວຂັ້ນປິດ (*/) ສໍາລັບການເຫຼົ່ານີ້ C
ຄໍາຄິດເຫັນ, ແລະຊ່ອງຫວ່າງໃດໆຢູ່ໃນເສັ້ນແມ່ນມີຄວາມໂປ່ງໃສທັງຫມົດ.
ຄໍາຄິດເຫັນການຄວບຄຸມເຫຼົ່ານີ້ຍັງເຮັດວຽກຢູ່ໃນຮູບແບບ C ++ ຂອງພວກເຂົາ, ຄື // *ຫຍໍ້ເຂົ້າ-ປິດ* ແລະ //
*ເປີດຫຍໍ້ໜ້າ*.
ຄວນສັງເກດວ່າລັດພາຍໃນຂອງ ຫຍໍ້ ໜ້າ ຍັງຄົງບໍ່ປ່ຽນແປງໃນໄລຍະ
ພາກສ່ວນທີ່ບໍ່ມີຮູບແບບ. ດັ່ງນັ້ນ, ສໍາລັບການຍົກຕົວຢ່າງ, ປິດການຈັດຮູບແບບຢູ່ເຄິ່ງກາງຂອງ a
function ແລະສືບຕໍ່ມັນຫຼັງຈາກສິ້ນສຸດຂອງຫນ້າທີ່ອາດຈະນໍາໄປສູ່ຜົນໄດ້ຮັບທີ່ແປກປະຫຼາດ. ມັນ
ດັ່ງນັ້ນຈຶ່ງເປັນສິ່ງທີ່ສະຫລາດທີ່ຈະເປັນໂມດູນບາງຢ່າງໃນການເລືອກລະຫັດທີ່ຈະປະໄວ້ unformatted.
ໃນຖານະເປັນບັນທຶກປະຫວັດສາດ, ບາງສະບັບກ່ອນຫນ້ານີ້ຂອງ ຫຍໍ້ ໜ້າ ຜະລິດຂໍ້ຄວາມຄວາມຜິດພາດເລີ່ມຕົ້ນ
ກັບ *ຫຍໍ້ເຂົ້າ**. ສະບັບເຫຼົ່ານີ້ຂອງ ຫຍໍ້ ໜ້າ ຖືກຂຽນໄວ້ເພື່ອບໍ່ສົນໃຈເສັ້ນຂໍ້ຄວາມທີ່ປ້ອນເຂົ້າ
ເຊິ່ງເລີ່ມຕົ້ນດ້ວຍຂໍ້ຄວາມສະແດງຂໍ້ຜິດພາດດັ່ງກ່າວ. ຂ້າພະເຈົ້າໄດ້ລົບລັກສະນະ incestuous ນີ້ອອກຈາກ GNU
ຫຍໍ້ ໜ້າ.
MISCELLANEOUS OPTIONS
ເພື່ອຊອກຫາວ່າສະບັບໃດ ຫຍໍ້ ໜ້າ ທ່ານມີ, ໃຊ້ຄໍາສັ່ງ ຫຍໍ້ ໜ້າ -ການປ່ຽນແປງ. ນີ້ຈະ
ລາຍງານຈໍານວນສະບັບຂອງ ຫຍໍ້ ໜ້າ, ໂດຍບໍ່ມີການດໍາເນີນການໃດໆຂອງການປຸງແຕ່ງປົກກະຕິ.
ຕົວເລືອກ '-v' ສາມາດໃຊ້ເພື່ອເປີດໃຊ້ໂໝດ verbose. ເມື່ອຢູ່ໃນໂຫມດ verbose, ຫຍໍ້ ໜ້າ ບົດລາຍງານ
ເມື່ອມັນແຍກສາຍໜຶ່ງຂອງວັດສະດຸປ້ອນເຂົ້າເປັນສອງແຖວຂອງຜົນຜະລິດເພີ່ມເຕີມ, ແລະໃຫ້ຂະໜາດບາງອັນ
ສະຖິຕິໃນການສໍາເລັດ.
ທາງເລືອກ '-pmt' ເຮັດໃຫ້ເກີດ ຫຍໍ້ ໜ້າ ເພື່ອຮັກສາການເຂົ້າເຖິງແລະເວລາການດັດແກ້ກ່ຽວກັບ
ໄຟລ໌ຜົນຜະລິດ. ການນໍາໃຊ້ທາງເລືອກນີ້ມີປະໂຫຍດທີ່ແລ່ນ indent ໃນແຫຼ່ງທັງຫມົດແລະ
ໄຟລ໌ header ໃນໂຄງການຈະບໍ່ເຮັດໃຫ້ເກີດ ເຮັດໃຫ້ ເພື່ອສ້າງຕັ້ງເປົ້າໝາຍທັງໝົດຄືນໃໝ່. ທາງເລືອກນີ້ເທົ່ານັ້ນ
ມີຢູ່ໃນລະບົບປະຕິບັດການທີ່ມີ POSIX ເວລາ(2) function
ໃຊ້ຫຍໍ້ໜ້າອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net