ນີ້ແມ່ນຄໍາສັ່ງ metalint ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນຫຼາຍໆບ່ອນເຮັດວຽກອອນໄລນ໌ຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator
ໂຄງການ:
NAME
metalint - ຕົວກວດສອບຄວາມສອດຄ່ອງຂອງຫົວໜ່ວຍ metaconfig
ສະຫຼຸບສັງລວມ
ໂລຫະ [ -hklsV ] [ -L dir ]
ລາຍລະອຽດ
ໂລຫະ parses ຫນ່ວຍງານແລະດໍາເນີນການກວດສອບຄວາມສອດຄ່ອງຢ່າງກວ້າງຂວາງຈໍານວນຫນຶ່ງ, ເພື່ອເຮັດໃຫ້ແນ່ໃຈວ່າໄດ້
ຊຸດທັງຫມົດແມ່ນສຽງ. ເນື່ອງຈາກຈໍານວນຫົວຫນ່ວຍທີ່ມີຈໍານວນຫຼວງຫຼາຍ, ມັນໄດ້ກາຍເປັນ
ມີຄວາມຫຍຸ້ງຍາກຫຼາຍທີ່ຈະຮັກສາຫົວຫນ່ວຍດ້ວຍຕົນເອງ, ແລະຂະບວນການອັດຕະໂນມັດສາມາດເປັນຈິງ
ຊ່ວຍເຫຼືອ, ເຖິງແມ່ນວ່າບໍ່ສົມບູນແບບ.
ໂລຫະ ດໍາເນີນການຈາກພາຍໃນໄດເລກະທໍລີຊຸດລະດັບສູງສຸດຂອງທ່ານແລະຖືກນໍາໃຊ້ເພື່ອໃຫ້ແນ່ໃຈວ່າ
ຫນ່ວຍງານສ່ວນຕົວຂອງເຈົ້າແມ່ນອີງໃສ່ຫນ່ວຍງານທີ່ມີສາທາລະນະຢ່າງຖືກຕ້ອງ. ຖ້າເຈົ້າ
ການພັດທະນາຫົວຫນ່ວຍໃຫມ່ຢ່າງເຂັ້ມງວດ, ທ່ານຄວນດໍາເນີນການ ໂລຫະ ກ່ຽວກັບພວກເຂົາກ່ອນທີ່ຈະເຮັດໃຫ້ພວກເຂົາສາທາລະນະ
ທີ່ມີຢູ່.
OPTIONS
ໂລຫະ ຮັບຮູ້ຊຸດທາງເລືອກຕໍ່ໄປນີ້:
-h ພິມຄໍາອະທິບາຍການນໍາໃຊ້ສັ້ນແລະອອກ.
-k ຮັກສາຊົ່ວຄາວ .MT ລະບົບ.
-l (ຍັງບໍ່ໄດ້ປະຕິບັດເທື່ອ) ໂດຍຄ່າເລີ່ມຕົ້ນ, ໂລຫະ ພຽງແຕ່ລາຍງານບັນຫາທີ່ກ່ຽວຂ້ອງກັບ
ຫນ່ວຍງານສ່ວນຕົວຂອງເຈົ້າເອງ. ສະຫຼັບນີ້ຊີ້ທາງ ໂລຫະ ເພື່ອລາຍງານ
ບັນຫາຢູ່ໃນຫນ່ວຍບໍລິການສາທາລະນະ.
-s ໂໝດງຽບ.
-L dir ລົບລ້າງສະຖານທີ່ຫ້ອງສະໝຸດເລີ່ມຕົ້ນ. ໂດຍປົກກະຕິພຽງແຕ່ເປັນປະໂຫຍດສໍາລັບ metaconfig
ຜູ້ຮັກສາທ້ອງຖິ່ນເພື່ອກວດກາເບິ່ງຫນ່ວຍງານທີ່ຖືກພັດທະນາແທນທີ່ຈະເປັນ
ທີ່ມີຢູ່ສາທາລະນະ. ໄດ້ dir ທີ່ລະບຸໄວ້ແມ່ນຫນຶ່ງທີ່ປະກອບດ້ວຍຫົວຫນ່ວຍ
U ລະບົບ.
-V ພິມໝາຍເລກລຸ້ນ ແລະອອກ.
ທິດສະດີວິທະຍາ
ການວິນິດໄສຕໍ່ໄປນີ້ອາດຈະຖືກປ່ອຍອອກມາໂດຍ ໂລຫະ:
"(?MAKE) ບໍ່ສົນໃຈແຖວລາຍຊື່ທີ່ຊໍ້າກັນ."
ຫຼາຍກວ່າໜຶ່ງອັນ ?ເຮັດ: ການຂຶ້ນລົງຂອງສາຍແບກແມ່ນພົບເຫັນຢູ່ໃນໜ່ວຍ. ອາດຈະມີ
ພຽງເສັ້ນດຽວເທົ່ານັ້ນ, ເຖິງແມ່ນວ່າຫຼາຍເສັ້ນ ?MAKE ອາດຈະເກີດຂຶ້ນ.
"(?MAKE) ໜ່ວຍພິເສດ 'Xxx' ບໍ່ຄວນຖືກລະບຸວ່າເປັນການສ້າງ."
ສັນຍາລັກຫົວໜ່ວຍພິເສດ (ຕົວອັກສອນຕົວພິມໃຫຍ່) ອາດຈະຖືກລະບຸໄວ້ໃນລາຍການເທົ່ານັ້ນ
ຫນ່ວຍງານພິເສດຂອງຕົນເອງ. ເພື່ອສະກັດກັ້ນການເຕືອນນີ້ໃນກໍລະນີທີ່ຖືກຕ້ອງ, ເພີ່ມ '+' ຢູ່ທາງຫນ້າ
ຂອງສັນຍາລັກການກະທໍາຜິດ (ສັງເກດວ່າສໍາລັບຫນ່ວຍງານທີ່ບໍ່ແມ່ນພິເສດ, '+' ໃນຕໍາແຫນ່ງນີ້
ຊີ້ໃຫ້ເຫັນສັນຍາລັກພາຍໃນທີ່ບໍ່ຄວນປາກົດຢູ່ໃນໄຟລ໌ config.sh).
"(?MAKE) '+xxx' ຢູ່ໃນລາຍການ x ຄັ້ງ."
ການເພິ່ງພາອາໄສຕາມເງື່ອນໄຂແມ່ນລະບຸໄວ້ຫຼາຍກວ່າໜຶ່ງຄັ້ງ. ຢ່າງໃດກໍຕາມ, ນີ້ແມ່ນບໍ່ເປັນອັນຕະລາຍ.
"(?MAKE) 'xxx' ຢູ່ໃນລາຍການ x ເວລາ."
ການເພິ່ງພາອາໄສແບບປົກກະຕິແມ່ນລະບຸໄວ້ຫຼາຍກວ່າໜຶ່ງຄັ້ງ. ອີກເທື່ອຫນຶ່ງ, ຄວາມຜິດພາດທີ່ບໍ່ເປັນອັນຕະລາຍ.
"(?MAKE) 'xxx' ລະບຸໄວ້ເປັນທັງເງື່ອນໄຂ ແລະ ການເພິ່ງພາອາໄສເຕັມ."
ສັນຍາລັກແມ່ນໄດ້ລະບຸໄວ້ເປັນການອີງຕາມປົກກະຕິແລະເປັນເງື່ອນໄຂຫນຶ່ງ. Metaconfig ຈະ
ພິຈາລະນານີ້ເປັນການເພິ່ງພາອາໄສຢ່າງເຕັມທີ່, ແຕ່ນັ້ນອາດຈະບໍ່ແມ່ນສິ່ງທີ່ທ່ານໃນເບື້ອງຕົ້ນ
ຕ້ອງການ...
"(?Y) ຄໍາສັ່ງການຈັດວາງທີ່ບໍ່ຮູ້ຈັກ 'xxx'."
ຄໍາແນະນໍາການຈັດວາງອາດຈະເປັນພຽງແຕ່ຫນຶ່ງໃນ top, Default or ທາງລຸ່ມ, ແຕ່ກໍລະນີບໍ່
ເລື່ອງ. ຄໍາສັ່ງທີ່ບໍ່ຮູ້ຈັກພຽງແຕ່ຖືກລະເລີຍແລະຖືກປະຕິບັດຄືກັບວ່າ Default ໄດ້
ລະບຸ.
"(?S) ຊໍ້າກັນຄໍາອະທິບາຍສໍາລັບຕົວແປ '$xxx'."
ສັນຍາລັກ Shell ແມ່ນອະທິບາຍຫຼາຍກ່ວາຫນຶ່ງຄັ້ງ, ແລະທີ່ຈະຜະລິດສອງການເຂົ້າໃນ
ຄຳ ສັບ.
"(?s) ຕົວແປ '$xxx' ບໍ່ໄດ້ລະບຸໄວ້ໃນ ?MAKE: line."
ຫນ່ວຍງານອະທິບາຍການເຂົ້າສັນຍາລັກ shell ທີ່ບໍ່ສາມາດຖືກນໍາໃຊ້ພາຍນອກນັບຕັ້ງແຕ່ບໍ່ໄດ້
ລະບຸວ່າເປັນການເພິ່ງພາອາໄສ.
"(?S) syntax ຜິດພາດໃນ ?S: construct."
ການອະທິບາຍດ້ວຍຕົນເອງ.
"(?C) ຊໍ້າກັນຄໍາອະທິບາຍສໍາລັບສັນຍາລັກ 'XXX'."
ສັນຍາລັກ C ຖືກອະທິບາຍຫຼາຍກວ່າຫນຶ່ງຄັ້ງ, ແລະມັນຈະຜະລິດສອງລາຍການສໍາລັບມັນຢູ່ໃນ
ຄຳ ສັບ.
"(?C) syntax ຜິດພາດໃນ ?C: construct."
ການອະທິບາຍດ້ວຍຕົນເອງ.
"(?H) ສັນຍາລັກ 'XXX' ຖືກກຳນົດແລ້ວ."
ປາກົດຂື້ນ, ສອງເສັ້ນ ?H: ກໍາລັງກໍານົດສັນຍາລັກ C ດຽວກັນ.
"(?H) ຕົວແປ '$xxx' ບໍ່ມີລາຍຊື່ຢູ່ໃນ ?MAKE: line."
ຕົວແປແມ່ນຖືກນໍາໃຊ້, ແຕ່ບໍ່ໄດ້ລະບຸໄວ້ໃນເສັ້ນຂຶ້ນກັບ.
"(?H) ພາກສ່ວນຖືກຍົກເລີກແລ້ວໂດຍ '?H:.'."
ບໍ່ສາມາດມີ ?H: ສາຍຫຼັງຈາກທໍາອິດ '?H:.' ຫມາຍເຖິງການສິ້ນສຸດຂອງສິ່ງນັ້ນ
ສ່ວນ.
"(?H) ສາຍ cpp ທີ່ບໍ່ທຳມະດາຄວນຖືກປົກປ້ອງດ້ວຍ '?%<:'."
ທັງໝົດ ?H: ສາຍທີ່ຖືກຮັບຮູ້ໂດຍ metaconfig ແລະດັ່ງນັ້ນຈຶ່ງ ໂລຫະ ມີຂອງເຂົາເຈົ້າ
inclusion ໃນ config.h ອັດຕະໂນມັດປ້ອງກັນໂດຍສັນຍາລັກທີ່ເຫມາະສົມຖ້າຫາກວ່າບໍ່ມີ
ສະຫນອງໃຫ້. ແນວໃດກໍ່ຕາມ, ສາຍທີ່ບໍ່ໄດ້ຮັບການຮັບຮູ້ຕ້ອງໄດ້ຮັບການປົກປ້ອງດ້ວຍລໍາດັບ '?%<:' ໄປຫາ
ຫຼີກເວັ້ນການລວມຂອງພວກມັນຖ້າຫນ່ວຍງານບໍ່ຖືກໂຫລດຢູ່ໃນ Configure.
"(?H) ແຖວບໍ່ຄວນມີຢູ່ໃນລາຍຊື່ນີ້ແຕ່ຢູ່ໃນ '?C:'."
ພຽງແຕ່ສາຍ cpp ຄວນປາກົດຢູ່ໃນພາກສ່ວນ ?H:. ຖ້າຫາກທ່ານມີຄໍາຄິດເຫັນທີ່ຈະໃສ່
ກ່ຽວກັບສັນຍາລັກ, ໃຊ້ ?C:. ຖ້າທ່ານຕ້ອງການສະແດງຄວາມຄິດເຫັນຂອງລຸ້ນໃດນຶ່ງ
ລໍາດັບ, ໃຫ້ພວກເຂົາເຂົ້າໄປໃນ ?X: ຄໍາຄິດຄໍາເຫັນເພື່ອບໍ່ໃຫ້ມັນເຂົ້າໄປໃນ config.h.
"(?H) ຂໍ້ຈຳກັດ 'xxx' ເປັນສັນຍາລັກທີ່ບໍ່ຮູ້ຈັກ."
ທັງໝົດ ?sym: ຂໍ້ຈຳກັດຢູ່ໃນເສັ້ນ ?H: ຄວນເປັນ shell ຫຼື C ທີ່ຖືກຕ້ອງ
ສັນຍາລັກ, ກໍານົດໃນຫນ່ວຍບໍລິການ.
"(?M) syntax ຜິດພາດໃນ ?M: construct."
ການອະທິບາຍດ້ວຍຕົນເອງ.
"(?m) ສັນຍາລັກ 'xxx' ຢູ່ແລ້ວໃນແຖວ ?M: ໃນ 'yyy'."
ຄໍານິຍາມ magic ສໍາລັບສັນຍາລັກ xxx ແມ່ນພະຍາຍາມ, ແຕ່ອັນອື່ນໄດ້ຖືກສະຫນອງໃຫ້ແລ້ວ
ໃນຫົວໜ່ວຍ yyy.
"(?v) ການປະກາດທີ່ເຫັນໄດ້ໃນຫນ່ວຍງານທີ່ບໍ່ແມ່ນພິເສດຖືກລະເລີຍ."
ການປະກາດທີ່ເຫັນໄດ້ (?V: ເສັ້ນ) ອາດຈະປາກົດຢູ່ໃນຫນ່ວຍພິເສດເທົ່ານັ້ນ. ຖ້າບໍ່ດັ່ງນັ້ນ, ພວກເຂົາ
ບໍ່ມີຄວາມຫມາຍ.
"(?v) ຕ້ອງການຕົວແປ '$xxx' ເຮັດໃຫ້ເບິ່ງເຫັນໄດ້."
ຕົວແປທີ່ຕ້ອງການ (ອະທິບາຍວ່າເປັນການຂຶ້ນກັບ ?MAKE: line) ບໍ່ສາມາດເຮັດໄດ້
ເຫັນໄດ້ຕັ້ງແຕ່ນັ້ນບໍ່ມີຄວາມຫມາຍ: ຫນ່ວຍງານບໍ່ສາມາດຂຶ້ນກັບມັນແລະຫຼັງຈາກນັ້ນ
ໂຄສະນາວ່າມັນຖືກກໍານົດຢູ່ໃນທ້ອງຖິ່ນ.
"(?v) ກໍານົດຕົວແປ '$xxx' ເຮັດໃຫ້ເບິ່ງເຫັນໄດ້."
ຕົວແປທີ່ກໍານົດ (ລະບຸໄວ້ໃນ ?MAKE: line) ບໍ່ສາມາດເບິ່ງເຫັນໄດ້, ເພາະວ່າ
ມັນຍັງສາມາດຕ້ອງການໂດຍກົງໃນຫນ່ວຍອື່ນ.
"(?v) ຕົວແປ '$xxx' ເຮັດໃຫ້ເຫັນໄດ້ໂດຍຫົວໜ່ວຍ yyy ແລ້ວ."
ການປະກາດບໍ່ສອດຄ່ອງ: ສອງໜ່ວຍກຳລັງເຮັດໃຫ້ສັນຍາລັກອັນດຽວເຫັນໄດ້...
"(?v) ຕົວແປ '$xxx' ແລ້ວອ່ານ-ຂຽນ ເຫັນໄດ້ໃນ yyy."
ຕົວແປໄດ້ຖືກເຮັດໃຫ້ເຫັນໄດ້ເປັນອ່ານ-ຂຽນໂດຍຫນ່ວຍອື່ນ.
"(?v) ຕົວແປ '$xxx' ເຫັນໄດ້ຢ່າງອ່ານເທົ່ານັ້ນໃນ yyy."
ຕົວປ່ຽນແປງໄດ້ຖືກເຮັດໃຫ້ເຫັນໄດ້ເປັນອ່ານເທົ່ານັ້ນໂດຍຫນ່ວຍອື່ນ.
"(?w) ຕົວແປ '$xxx' ຕ້ອງການແລ້ວ."
ຕົວແປແມ່ນຕ້ອງການຢູ່ແລ້ວ, ບໍ່ຈໍາເປັນຕ້ອງຖາມຢ່າງຈະແຈ້ງຢູ່ທີ່ນີ້.
"(?w) ຕົວແປ '$xxx' ຍັງຖືກກໍານົດຢູ່ໃນທ້ອງຖິ່ນ."
ຕົວແປທີ່ຕ້ອງການຈະຂັດກັບຕົວແປທີ່ກໍານົດໃນທ້ອງຖິ່ນແລະສາມາດສົ່ງຜົນໃຫ້
ໄດ້ຮັບມູນຄ່າຂີ້ເຫຍື້ອ.
"(?w) ຕົວແປ '$xxx' ຢູ່ໃນລາຍການ ?W: ແຖວໃນ 'yyy'."
ຕົວແປໃນສ່ວນສັນຍາລັກຂອງແກະຂອງເສັ້ນ ?W: ສາມາດປາກົດຢູ່ໃນຫນ່ວຍດຽວເທົ່ານັ້ນ.
"(?f) ໄຟລ໌ທີ່ຜະລິດ 'xxx' ຖືກປະກາດດ້ວຍກັນ."
ໄຟລ໌ດັ່ງກ່າວມີລາຍຊື່ຫຼາຍກວ່າໜຶ່ງຄັ້ງຢູ່ໃນແຖວ ?F: ພາຍໃຕ້ຊື່ດຽວກັນ. ນີ້ເຮັດ
ບໍ່ປາກົດເມື່ອປະກາດທັງໄຟລ໌ UU ສ່ວນຕົວ ແລະໄຟລ໌ສາທາລະນະທີ່ມີອັນດຽວກັນ
ຊື່, ສໍາລັບການຍົກຕົວຢ່າງ.
"(?f) ໄຟລ໌ UU ໃນຫນ່ວຍງານທີ່ບໍ່ແມ່ນພິເສດຖືກລະເລີຍ."
ໄຟລ໌ UU ສ່ວນຕົວ (ເຊັ່ນໄຟລ໌ເຊັ່ນ ອ່ານຂອງຂ້ອຍ script ສ້າງສໍາລັບການ perusal ຕໍ່ມາໂດຍ
ກໍາຫນົດຄ່າ) ອາດຈະຖືກສ້າງຂື້ນໃນຫນ່ວຍງານພິເສດເທົ່ານັ້ນ. ຂໍ້ຍົກເວັ້ນໄດ້ອະນຸຍາດໃຫ້ຖ້າຫາກວ່າ ?F: line
ຖືກນໍາໜ້າດ້ວຍ ?LINT: hint.
"(?T) ສັນຍາລັກຊົ່ວຄາວ '$xxx' ປະກາດຄູນ."
ການອະທິບາຍດ້ວຍຕົນເອງ.
"ຄໍາສັ່ງຄວນມາຫຼັງຈາກ ?ເຮັດການປະກາດ."
ຄໍາສັ່ງທີ່ລະບຸໄວ້ລະຫວ່າງ () ໃນຕອນຕົ້ນຂອງຂໍ້ຄວາມນີ້ຄວນຈະມາແທ້ໆ
ຫຼັງຈາກ ?MAKE: ສາຍ. ທ່ານຕ້ອງໄດ້ຈັດລໍາດັບຫນ່ວຍບໍລິການຫຼື ໂລຫະ ຈະບໍ່ສາມາດ
ການວິນິດໄສບັນຫາຢ່າງຖືກຕ້ອງ.
"ລໍາດັບການຄວບຄຸມ '?XXX:' ຖືກລະເລີຍພາຍໃນຮ່າງກາຍ."
ພະຍາຍາມໃຊ້ເສັ້ນຄວບຄຸມນອກເໜືອໄປຈາກ ?X: ຫຼື ?LINT: ໃນຕົວເຄື່ອງ, ເຊິ່ງຄວນ
ມີພຽງແຕ່ລະຫັດ shell
"ຕົວແປ '$xxx' ຖືກປ່ຽນ."
ຕົວແປທີ່ລະບຸໄວ້ຕາມທີ່ຕ້ອງການໃນແຖວການເພິ່ງພາອາໄສແມ່ນມີການປ່ຽນແປງ. ຕົວແປດັ່ງກ່າວຄວນ
ອ່ານໄດ້ຢ່າງດຽວສຳລັບໜ່ວຍ. ໃຊ້ ການປ່ຽນແປງ lint hint ເພື່ອສະກັດກັ້ນຂໍ້ຄວາມນີ້ໃນ
ກໍລະນີ pathological.
"ບໍ່ ?ເຮັດ: ເສັ້ນອະທິບາຍການຂຶ້ນກັບ."
ແຕ່ລະຫນ່ວຍຄວນມີເສັ້ນການເພິ່ງພາອາໄສ, ຫຼືມັນຈະຖືກລະເລີຍໂດຍງຽບໆ
metaconfig. ຂໍ້ຄວາມນີ້ຖືກສະກັດກັ້ນໂດຍ ?LINT: ຄຳໃບ້ຫວ່າງເປົ່າ.
"ເສັ້ນຮ່າງກາຍທໍາອິດຄວນຈະເປັນ ': ລາຍລະອຽດ' ທົ່ວໄປ."
ເສັ້ນ shell ທໍາອິດຂອງຫນ່ວຍງານທີ່ຈະຖືກເພີ່ມໃສ່ Configure ທີ່ສ້າງຂຶ້ນ
script ຄວນຖືຄໍາອະທິບາຍຈຸດປະສົງຂອງຫນ່ວຍງານ, ໃນເສັ້ນ ':'. ຕ້ອງມີ
a ຊ່ອງຫຼັງຈາກ ':', ເນື່ອງຈາກວ່າມັນຖືກຕີຄວາມໂດຍແກະ, ແລະຄໍາອະທິບາຍ
ຄວນຫຼີກເວັ້ນຕົວອັກສອນ meta ເຊັ່ນ '(' ຫຼື '>' ເວັ້ນເສຍແຕ່ວ່າສະຕຣິງທັງໝົດຈະຖືກອ້າງອີງ.
ຂໍ້ຄວາມຖືກສະກັດກັ້ນໂດຍ ?LINT: nocomment hint.
"ຊ່ອງຫວ່າງຫຼັງຈາກ ':' ເພື່ອເຮັດໃຫ້ມັນເປັນຄໍາຄິດຄໍາເຫັນ."
ເສັ້ນທີ່ເລີ່ມຕົ້ນດ້ວຍ ':' ຖືກຕີຄວາມໝາຍໂດຍແກະ ແຕ່ຈະຖືກລະເລີຍ. ຕ້ອງມີ
be a space ຫຼັງຈາກ ':' ເຖິງແມ່ນວ່າ, ຫຼື shell ຈະພະຍາຍາມ execute ທີ່ບໍ່ຮູ້ຈັກ
ຄຳສັ່ງ...
"ພົບເຫັນຕົວອັກສອນເມຕາທີ່ບໍ່ໄດ້ອ້າງອີງ > ໃນແຖວຄຳເຫັນ."
ເສັ້ນທີ່ເລີ່ມຕົ້ນດ້ວຍ ':' ຖືກຕີຄວາມໝາຍໂດຍ shell ແຕ່ຈະຖືກລະເລີຍ. ນີ້ຫມາຍຄວາມວ່າ
ຕົວອັກສອນ meta ທີ່ມີຄວາມຫມາຍເຊັ່ນ '(' ຫຼື '>' ຈະຕ້ອງຖືກອ້າງເຖິງ ຫຼືຫລົບຫນີດ້ວຍ.
backslash ຊັ້ນນໍາ.
"ພົບເຫັນຄໍາອ້າງອີງ dangling ໃນ ':' ເສັ້ນຄໍາເຫັນ."
ວົງຢືມດ່ຽວ ຫຼືຄູ່ທີ່ບໍ່ໄດ້ປິດແມ່ນໄດ້ພົບເຫັນຢູ່ໃນແຖວຄຳເຫັນ ':'. ນັບຕັ້ງແຕ່ນັ້ນ
ເສັ້ນຖືກຕີຄວາມໂດຍແກະ, ເຖິງແມ່ນວ່າຈະຖືກລະເວັ້ນ, ວົງຢືມທັງຫມົດຕ້ອງກົງກັນຢ່າງສົມບູນ.
"ບໍ່ໄດ້ສິ້ນສຸດດ້ວຍເສັ້ນເປົ່າ."
ເນື່ອງຈາກຫົວຫນ່ວຍທັງຫມົດຖືກລວບລວມຮ່ວມກັນເພື່ອສ້າງເປັນ script ໃຫຍ່, ມັນແນະນໍາໃຫ້
(ເພາະສະນັ້ນຈຶ່ງບັງຄັບໃຊ້ໂດຍ ໂລຫະ) ທີ່ໄຟລ໌ແຕ່ລະຫນ່ວຍສິ້ນສຸດດ້ວຍເສັ້ນຫວ່າງເປົ່າ.
"ແຖວສຸດທ້າຍບໍ່ໄດ້ລົງທ້າຍດ້ວຍຕົວອັກສອນແຖວໃໝ່."
ອັນນີ້ພຽງແຕ່ມີຈຸດປະສົງໃຫ້ຜູ້ໃຊ້ທີ່ບັນນາທິການບໍ່ໄດ້ເພີ່ມແຖວໃໝ່ຢູ່ສະເໝີ
ໃນຕອນທ້າຍຂອງໄຟລ໌ຂໍ້ຄວາມ. ບໍ່ຄວນເກີດຂຶ້ນໃນເວລາທີ່ທ່ານໃຊ້ vi.
"ສັນຍາລັກ '$xxx' ບໍ່ໄດ້ຖືກອະທິບາຍ."
ສັນຍາລັກ shell ທີ່ກໍານົດໂດຍຫນ່ວຍງານນີ້ບໍ່ໄດ້ຖືກບັນທຶກໄວ້. ໃຊ້ ອະທິບາຍ lint hint
ເພື່ອສະກັດກັ້ນຂໍ້ຄວາມນີ້.
"ສັນຍາລັກ C 'XXX' ບໍ່ໄດ້ຖືກອະທິບາຍ."
ສັນຍາລັກ C ທີ່ກໍານົດໂດຍຫນ່ວຍງານນີ້ບໍ່ໄດ້ຖືກບັນທຶກໄວ້. ໃຊ້ ເປັນທີ່ຮູ້ຈັກ lint hint ກັບ
ສະກັດກັ້ນຂໍ້ຄວາມນີ້.
"ສັນຍາລັກ C 'XXX' ບໍ່ໄດ້ຖືກກໍານົດໂດຍ ?H: line."
ສັນຍາລັກ AC ໄດ້ຖືກໂຄສະນາໂດຍບໍ່ເຄີຍກໍານົດ, ເພາະສະນັ້ນມັນບໍ່ສາມາດປາກົດຢູ່ໃນ config.h
ໄຟລ໌ແລະດັ່ງນັ້ນຈຶ່ງບໍ່ມີປະໂຍດ ...
"ຕົວແປ '$xxx' ຄວນຖືກຕັ້ງ."
ຕົວປ່ຽນແປງທີ່ລະບຸໄວ້ໃນສາຍການຜະລິດທີ່ເຮັດໂດຍຫນ່ວຍງານບໍ່ໄດ້ຖືກກໍານົດໂດຍລະຫັດ shell
ຮ່າງກາຍ. ໃຊ້ ທີ່ກໍານົດໄວ້ lint hint ເພື່ອສະກັດກັ້ນຂໍ້ຄວາມນີ້ໃນກໍລະນີຂອງ pathological.
"ຕົວແປການເພິ່ງພາອາໄສທີ່ບໍ່ໄດ້ໃຊ້ '$xxx'."
ປາກົດຂື້ນວ່າບໍ່ມີການນໍາໃຊ້ແມ່ນມາຈາກຕົວແປຂອງແກະ. ໃຊ້ ການປ່ຽນແປງ or ການນໍາໃຊ້ ຄໍາແນະນໍາ lint
(ຂຶ້ນກັບສະຖານະການ) ເພື່ອສະກັດກັ້ນຂໍ້ຄວາມນີ້.
"ຕົວແປເງື່ອນໄຂທີ່ບໍ່ໄດ້ໃຊ້ '$xxx'.
ປາກົດຂື້ນວ່າບໍ່ມີການນໍາໃຊ້ແມ່ນມາຈາກການຂຶ້ນກັບເງື່ອນໄຂນີ້. ໄດ້ ການປ່ຽນແປງ or ການນໍາໃຊ້ ຝັກ
ຄໍາແນະນໍາສາມາດຖືກນໍາໃຊ້ເພື່ອສະກັດກັ້ນຂໍ້ຄວາມນີ້.
"ຕົວແປຊົ່ວຄາວທີ່ບໍ່ໄດ້ໃຊ້ '$xxx'."
ຕົວແປທີ່ປະກາດວ່າຊົ່ວຄາວໃນແຖວ ?T: ບໍ່ໄດ້ໃຊ້. ໄດ້ ການນໍາໃຊ້ lint hint ຈະ
fool ໂລຫະ ຄິດວ່າມັນຖືກນໍາໃຊ້ຢ່າງແທ້ຈິງ.
"ບໍ່ຮູ້ຈັກລໍາດັບການຄວບຄຸມ '?XXX:'."
ພະຍາຍາມໃຊ້ລໍາດັບການຄວບຄຸມທີ່ບໍ່ຮູ້ຈັກ.
"ຄຳຮ້ອງຂໍ LINT ທີ່ບໍ່ຮູ້ຈັກ 'ບໍ່ຖືກຕ້ອງ' ຖືກລະເລີຍ."
ບໍ່ຮູ້ຈັກ ?LINT: ແທັກຖືກໃຊ້. ແທັກດັ່ງກ່າວທັງໝົດຈະຕ້ອງຖືກສະກົດເປັນຕົວພິມນ້ອຍ.
"ສັນຍາລັກ '$xxx' ບໍ່ມີຄ່າເລີ່ມຕົ້ນ."
ສັນຍາລັກທີ່ໃຊ້ເປັນການອີງຕາມເງື່ອນໄຂໃນບາງຫນ່ວຍບໍລິການບໍ່ມີຄ່າເລີ່ມຕົ້ນທີ່ກໍານົດໂດຍ a
?D: ແຖວ.
"ເຊົາແລ້ວ ?ເຮັດ: ຂຶ້ນກັບ 'xxx'."
ຫນ່ວຍງານລາຍຊື່ສັນຍາລັກເປັນການເພິ່ງພາອາໄສ, ແຕ່ສັນຍາລັກນັ້ນແມ່ນບໍ່ຮູ້ຈັກ, ie
ບໍ່ເຄີຍປະກົດວ່າເຮັດໂດຍຫນ່ວຍອື່ນ.
"ສັນຍາລັກ '$xxx' ຫາຍໄປຈາກ ?MAKE."
ສັນຍາລັກທີ່ໃຊ້ຫຼືກໍານົດບໍ່ໄດ້ລະບຸໄວ້ເປັນການຂຶ້ນຢູ່ໃນເສັ້ນ ?MAKE:.
"ຂາດ xxx ຈາກ ?ສ້າງໃຫ້ເຫັນ '$yyy'."
ສັນຍາລັກທີ່ກໍານົດເປັນທີ່ເຫັນໄດ້ໂດຍຫນ່ວຍງານພິເສດແມ່ນຖືກນໍາໃຊ້, ແຕ່ຫນ່ວຍພິເສດນັ້ນບໍ່ແມ່ນ
ສ່ວນຫນຶ່ງຂອງສາຍການເພິ່ງພາອາໄສ.
"stale ?M: dependency 'xxx'."
ເສັ້ນ Magic ລາຍຊື່ສັນຍາລັກ C ເປັນການເພິ່ງພາອາໄສແຕ່ສັນຍາລັກນັ້ນບໍ່ຮູ້ຈັກໂດຍຫນ່ວຍໃດ.
"ສັນຍາລັກທີ່ບໍ່ຮູ້ຈັກ '$xxx'."
ຂ້ອຍບໍ່ມີຄວາມຄິດກ່ຽວກັບສັນຍາລັກນີ້ແມ່ນຫຍັງ. ຖ້າຕົວແປແມ່ນກໍານົດພາຍນອກ, ນີ້
ການເຕືອນສາມາດຖືກສະກັດກັ້ນຜ່ານທາງທີ່ຖືກຕ້ອງ ?LINT: extern.
"ສັນຍາລັກອ່ານເທົ່ານັ້ນ '$xxx' ຖືກຕັ້ງ."
ສັນຍາລັກທີ່ຄວນຈະອ່ານໄດ້ເທົ່ານັ້ນແມ່ນຖືກກໍານົດໂດຍຕົວລະຫັດ shell ຂອງຫນ່ວຍງານ.
"ສັນຍາລັກລ້າສະໄຫມ 'xxx' ຖືກໃຊ້."
ສັນຍາລັກທີ່ລ້າສະໄຫມແມ່ນຖືກນໍາໃຊ້ໃນລະຫັດ shell ຂອງຫນ່ວຍງານ.
"ສັນຍາລັກທີ່ຍັງບໍ່ໄດ້ປະກາດ '$xxx' ຖືກຕັ້ງໄວ້."
ຫນ່ວຍບໍລິການພະຍາຍາມກໍານົດຕົວແປຂອງແກະທີ່ບໍ່ໄດ້ຖືກປະກາດເປັນຢ່າງອື່ນວ່າເຮັດ
ຫຼືເປັນຕົວແປຊົ່ວຄາວ, ຫຼືໃດກໍ່ຕາມ.
"unclosed ?H: ພາກ."
ສ່ວນ ?H: ບໍ່ໄດ້ຖືກຍົກເລີກໂດຍ '?H:.' ອັນດຽວ. ເສັ້ນກ່ອນຮ່າງກາຍຂອງ
ຫົວໜ່ວຍ ຫຼືຈຸດເລີ່ມຕົ້ນຂອງພາກສ່ວນ ?C: ອື່ນ.
"ສັນຍາລັກ C 'xxx' ແມ່ນຖືກກໍານົດຢູ່ໃນຫນ່ວຍງານຕໍ່ໄປນີ້:"
ສັນຍາລັກ C ແມ່ນຖືກກໍານົດໄວ້ໃນຫຼາຍຫນ່ວຍ. ໜ່ວຍງານທີ່ກະທຳຜິດມີລາຍຊື່.
"ສັນຍາລັກ Shell 'xxx' ແມ່ນຖືກກໍານົດຢູ່ໃນຫນ່ວຍງານຕໍ່ໄປນີ້:"
ສັນຍາລັກຫອຍແມ່ນກໍານົດຢູ່ໃນຫຼາຍກ່ວາຫນຶ່ງຫນ່ວຍ. ໜ່ວຍງານທີ່ກະທຳຜິດປະຕິບັດຕາມ.
"ສັນຍາລັກ Shell 'xxx' ແມ່ນທັງຫມົດ:"
ສັນຍາລັກຫອຍແມ່ນໄດ້ກໍານົດໂດຍບາງຫນ່ວຍງານ, ການຍົກເລີກໂດຍຄົນອື່ນແລະນໍາໃຊ້ເປັນຊົ່ວຄາວ.
"ສັນຍາລັກ Shell 'xxx' ແມ່ນທັງຖືກກໍານົດແລະລ້າສະໄຫມ:"
ການອະທິບາຍດ້ວຍຕົນເອງ.
"ສັນຍາລັກ Shell 'xxx' ແມ່ນທັງຖືກກໍານົດແລະໃຊ້ເປັນການຊົ່ວຄາວ:"
ການອະທິບາຍດ້ວຍຕົນເອງ.
"ສັນຍາລັກ Shell 'xxx' ຖືກຍົກເລີກຍັງໃຊ້ເປັນການຊົ່ວຄາວ:"
ການອະທິບາຍດ້ວຍຕົນເອງ.
"ນິຍາມຂອງ '$xxx' ບໍ່ປິດໂດຍ '?S:.'."
ການອະທິບາຍດ້ວຍຕົນເອງ.
"ນິຍາມຂອງ 'XXX' ບໍ່ໄດ້ປິດໂດຍ '?C:.'."
ການອະທິບາຍດ້ວຍຕົນເອງ.
"ຄໍານິຍາມ magic ຂອງ 'xxx' ບໍ່ໄດ້ປິດໂດຍ '?M:.'."
ການອະທິບາຍດ້ວຍຕົນເອງ.
"ຕົວແປ '$xxx' ຖືກກໍານົດພາຍນອກ."
ຕົວແປທີ່ກໍານົດພາຍນອກ (ເຊັ່ນໃນຫນ່ວຍອື່ນ) ແມ່ນຖືກນໍາໃຊ້, ໂດຍບໍ່ມີການທີ່ເຫມາະສົມ
ຂໍ້ມູນການເພິ່ງພາອາໄສ. ໃຊ້ ພາຍນອກ lint hint ເພື່ອສະກັດກັ້ນຂໍ້ຄວາມນີ້.
"ໄຟລ໌ 'xxx' ບໍ່ໄດ້ຖືກສ້າງ."
ໄຟລ໌ທີ່ມີລາຍຊື່ເປັນໄຟລ໌ UU ສ່ວນຕົວບໍ່ໄດ້ສ້າງໂດຍຫນ່ວຍງານພິເສດ. ການສ້າງແມ່ນ
ກວດພົບໂດຍການເຫັນການປ່ຽນເສັ້ນທາງ shell ຢ່າງຊັດເຈນໄປຫາໄຟລ໌, ບໍ່ແມ່ນໂດຍ implicit
ການສ້າງ (ເຊັ່ນການລວບລວມ C ຈະເປັນຕົວຢ່າງ). ຫນ່ວຍງານພິເສດທັງຫມົດຄວນ
ສ້າງພຽງແຕ່ shell scripts ຢ່າງຈະແຈ້ງຢ່າງໃດກໍ່ຕາມດັ່ງນັ້ນຂໍ້ຄວາມນີ້ບໍ່ສາມາດຖືກສະກັດກັ້ນຜ່ານ
ຄໍາແນະນໍາ lint.
"ໄຟລ໌ທ້ອງຖິ່ນ 'xxx' ອາດຈະ override ທີ່ຕັ້ງໂດຍ 'unit.U'."
ທ່ານກໍາລັງພະຍາຍາມສ້າງໄຟລ໌ທ້ອງຖິ່ນ, ແຕ່ຫນ່ວຍງານພິເສດຈະສ້າງຫນຶ່ງ bearing
ຊື່ດຽວກັນຄືກັນອ້ອຍຕ້ອຍແລະຄວນຈະໄດ້ຮັບການໂຫຼດກ່ອນພາຍໃນ ກໍາຫນົດຄ່າ, ເຈົ້າຈະ
ລົບລ້າງໄຟລ໌ນັ້ນ. ປ່ຽນຊື່ໄຟລ໌ທ້ອງຖິ່ນຂອງທ່ານ.
"ໄຟລ໌ຊົ່ວຄາວທີ່ບໍ່ໄດ້ໃຊ້ 'xxx'.
ໄຟລ໌ດັ່ງກ່າວໄດ້ຖືກປະກາດຢູ່ໃນເສັ້ນ ?F: ແຕ່ບໍ່ປາກົດວ່າຖືກໃຊ້ຢູ່ບ່ອນໃດ.
ໄຟລ໌ຊົ່ວຄາວ 'xxx' ໃຊ້ຜິດ.
ໄຟລ໌ຊົ່ວຄາວໃນທ້ອງຖິ່ນໄດ້ຖືກປະກາດຢູ່ໃນເສັ້ນ ?F: ແລະຖືກນໍາໃຊ້ໃນທາງທີ່
ອາດຈະບໍ່ເຫມາະສົມ. ແທ້ຈິງແລ້ວ, ໄຟລ໌ທ້ອງຖິ່ນທັງຫມົດດັ່ງກ່າວຄວນຈະຖືກເອີ້ນດ້ວຍ
ເສັ້ນທາງພີ່ນ້ອງທີ່ຊັດເຈນ, ເພື່ອຫຼີກເວັ້ນການຊອກຫາ PATH ທີ່ສາມາດເຮັດໃຫ້ເຈົ້າມີໄຟລ໌ອື່ນ.
"ທ່ານອາດຈະບໍ່ໄດ້ຮັບໄຟລ໌ 'xxx' ຈາກ 'unit.U' ສະເໝີ."
ເບິ່ງຄືວ່າທ່ານກໍາລັງໂທຫາໄຟລ໌ທີ່ລະບຸໄວ້, ແຕ່ບໍ່ແມ່ນໂດຍໃຊ້ພີ່ນ້ອງທີ່ຊັດເຈນ
ຊື່ເສັ້ນທາງ. ການອີງໃສ່ PATH ເພື່ອຊອກຫາໄຟລ໌ນີ້ບໍ່ປອດໄພ. ເພື່ອແກ້ໄຂບັນຫານີ້,
ໂທຫາໄຟລ໌ຂອງທ່ານໂດຍໃຊ້ບາງສິ່ງບາງຢ່າງເຊັ່ນ: ./xxx.
"ບໍ່ມີຫນ່ວຍງານຈາກ ?MAKE ສໍາລັບໄຟລ໌ສ່ວນຕົວ 'xxx'."
ທ່ານກໍາລັງໃຊ້ໄຟລ໌ UU ສ່ວນຕົວໂດຍບໍ່ມີລາຍຊື່ຫນ່ວຍງານພິເສດທີ່ຜະລິດມັນຢູ່ໃນ
ສາຍການເພິ່ງພາອາໄສຂອງທ່ານ. ເພີ່ມຫົວໜ່ວຍໃສ່ລາຍຊື່ການເພິ່ງພາອາໄສຂອງເຈົ້າ.
"ໄຟລ໌ສ່ວນຕົວທີ່ບໍ່ຮູ້ຈັກ 'xxx'."
ໄຟລ໌ບໍ່ປາກົດຢູ່ໃນ ?F: line; ແນວໃດກໍ່ຕາມມັນຄວນຈະ.
"ໄຟລ໌ 'xxx' ຖືກກໍານົດຢູ່ໃນຫນ່ວຍງານຕໍ່ໄປນີ້:"
ຫນ່ວຍງານທີ່ມີລາຍຊື່ບໍ່ສາມາດຕົກລົງກັນໄດ້ວ່າໃຜກໍາລັງກໍານົດໄຟລ໌.
"ບໍ່ມີຊື່ເອກະສານທີ່ນີ້ທໍ້ຖອຍໃຈ."
ທ່ານຄວນລະເວັ້ນຈາກການນໍາໃຊ້ຊື່ເປົ່າສໍາລັບເອກະສານທີ່ນີ້, ເປັນ ໂລຫະ ຈະບໍ່
ຕິດຕາມກວດກາເຫຼົ່ານັ້ນ.
"unclosed here-document xxx ເລີ່ມເສັ້ນ x."
ເອກະສານເປີດຢູ່ທີ່ນີ້ຢູ່ແຖວ x ບໍ່ເຄີຍປິດຢູ່ໃນໜ່ວຍນີ້. ນີ້ໂດຍທົ່ວໄປ
ຫມາຍຄວາມວ່າເມື່ອຫນ່ວຍງານຖືກນໍາໃຊ້, script ທີ່ສ້າງຂຶ້ນຈະບໍ່ເຮັດວຽກ!
"ຄໍາແນະນໍາ 'LINT xxx' spurious."
ທ່ານໄດ້ໃສ່ ?LINT: ຄໍາສັ່ງທີ່ບໍ່ໄດ້ໃຊ້ເພື່ອປິດສຽງເຕືອນ.
"ພົບຮອບວຽນສໍາລັບ:"
ມີວົງຈອນການເພິ່ງພາອາໄສສໍາລັບສັນຍາລັກທີ່ລະບຸໄວ້. ພຽງແຕ່ສັນຍາລັກທີ່ກ່ຽວຂ້ອງ
ໃນວົງຈອນແມ່ນລະບຸໄວ້.
"ຮອບວຽນກ່ຽວຂ້ອງກັບ:"
exerpt ຂອງ dependencies ທີ່ພົບວົງຈອນໄດ້ຖືກລະບຸໄວ້. ນີ້ອາດຈະມີສ່ວນຮ່ວມ
ສັນຍາລັກຫຼາຍກ່ວາຂໍ້ຄວາມທີ່ຜ່ານມາ, ເພາະວ່າ ໂລຫະ ຕົວຈິງແລ້ວ rescans ໄດ້
ກົດລະບຽບເພື່ອເນັ້ນຫນັກໃສ່ວົງຈອນແລະຢຸດທຸກຄັ້ງທີ່ມັນໄດ້ພົບເຫັນຫນຶ່ງ, ie ມັນບໍ່ໄດ້
ພະຍາຍາມຫຼຸດຜ່ອນມັນ (ວົງຈອນໄດ້ຖືກພົບເຫັນໂດຍໃຊ້ສູດການຄິດໄລ່ອື່ນ, ແຕ່ຫນ້າເສຍດາຍ
ບໍ່ສາມາດຖົ່ມມັນອອກໄດ້, ແຕ່ພຽງແຕ່ເວົ້າວ່າແນ່ນອນວ່າມີຫນຶ່ງ).
ການອ້າງອິງ
ໂລຫະ ໃຊ້ສາຍການຄວບຄຸມຕໍ່ໄປນີ້, ເຊິ່ງຖືກລະເລີຍໂດຍ metaconfig:
?V:ອ່ານຢ່າງດຽວ ສັນຍາລັກ:ອ່ານ - ຂຽນ ສັນຍາລັກ
ເສັ້ນນີ້ຄວນຈະຖືກນໍາໃຊ້ໃນຫນ່ວຍງານພິເສດເທົ່ານັ້ນ. ມັນລາຍຊື່ຕົວແປຂອງແກະທັງໝົດ
ກໍານົດໂດຍຫົວຫນ່ວຍທີ່ບໍ່ຄວນນໍາໃຊ້ໂດຍກົງເປັນການຂຶ້ນກັບຫນ່ວຍງານອື່ນໆ:
ພວກເຂົາຕ້ອງລວມເອົາຫນ່ວຍງານພິເສດນີ້ຢູ່ໃນບັນຊີລາຍຊື່ການເພິ່ງພາອາໄສຂອງພວກເຂົາຖ້າພວກເຂົາໃຊ້ສິ່ງໃດກໍ່ຕາມ
ຂອງສັນຍາລັກທີ່ອະທິບາຍຢູ່ທີ່ນີ້. ເຫຼົ່ານັ້ນສາມາດຖືກເບິ່ງເປັນສັນຍາລັກສົ່ງອອກທີ່ທ່ານ
ສືບທອດມາຈາກເວລາທີ່ຂຶ້ນກັບຫນ່ວຍງານ. ສັນຍາລັກອາດຈະຖືກສົ່ງອອກອ່ານເທົ່ານັ້ນຫຼື
ອ່ານ-ຂຽນ.
?F:ໄຟ ສ້າງ
ເສັ້ນນີ້ຮັບໃຊ້ສອງຈຸດປະສົງ: ມັນແມ່ນ ໂລຫະ hint, ແລະຍັງ placeholder ສໍາລັບ
ໃນອະນາຄົດ jmake ໃຊ້. ມັນຕ້ອງບອກສາມປະເພດຂອງໄຟລ໌: ໄຟລ໌ຊົ່ວຄາວທີ່ມີ
ສ້າງສໍາລັບການທົດສອບ, UU ສ່ວນຕົວທີ່ສ້າງຂຶ້ນໃນໄດເລກະທໍລີ UU ສໍາລັບຕໍ່ມາ
perusal, ແລະສາທາລະນະທີ່ປະໄວ້ຢູ່ໃນລະບົບຮາກຂອງຊຸດ. ຊົ່ວຄາວ
ໄຟລ໌ຈະຕ້ອງຢູ່ໃນລາຍການ '!' ກ່ອນໜ້າ. ລັກສະນະ (ຫມາຍຄວາມວ່າ "ບໍ່! ພວກມັນບໍ່ໄດ້ຖືກໃຊ້ຄືນໃຫມ່
ຕໍ່ມາ!
./file, ບໍ່ພຽງແຕ່ ເອກະສານ), ແລະສາທາລະນະຄວນຈະມີຊື່ເປັນ.
?T:ຫອຍ ຊົ່ວຄາວ
ແຖວນີ້ຄວນບອກຕົວແປທັງໝົດທີ່ໃຊ້ເປັນຕົວແປຊົ່ວຄາວພາຍໃນໜ່ວຍ
ຮ່າງກາຍ. ເສັ້ນນີ້ຄວນຈະຖືກເກັບຮັກສາໄວ້ຢ່າງຖືກຕ້ອງ, ແລະປ້ອງກັນບໍ່ໃຫ້ທ່ານຂຽນຫນ່ວຍ
ການກໍານົດສັນຍາລັກທີ່ຈະຖືກນໍາໃຊ້ເປັນຕົວແປ scratch ໃນຫນ່ວຍອື່ນ ...
?LINT:ຄໍາ ລາຍຊື່ສັນຍາລັກ
ລະບຸຄຳໃບ້. ຄໍາສໍາຄັນຕໍ່ໄປນີ້ສາມາດໃຊ້ໄດ້:
ການປ່ຽນແປງ shell variable ຕົກລົງທີ່ຈະປ່ຽນແປງ
ສ້າງ ໄຟລ໌ຄົງທີ່ຕົກລົງທີ່ຈະສ້າງໂດຍຫນ່ວຍງານທີ່ບໍ່ແມ່ນພິເສດ
ກໍານົດ ຕົວແປຂອງ shell ທີ່ລະບຸໄວ້ແມ່ນຖືກກໍານົດຢູ່ໃນຫນ່ວຍນີ້
ອະທິບາຍ ຕົວແປຂອງ shell ທີ່ລະບຸໄວ້ແມ່ນອະທິບາຍໂດຍ ?S:
ພາຍນອກ ຕົວແປທີ່ຮູ້ວ່າຖືກ ກຳ ນົດພາຍນອກ
ຫວ່າງເປົ່າ ໄຟລ໌ຫົວໜ່ວຍຫວ່າງເປົ່າ ແລະເກັບໄວ້ເປັນບ່ອນວາງເທົ່ານັ້ນ.
ເປັນທີ່ຮູ້ຈັກ ຕົວແປ C ໄດ້ຖືກອະທິບາຍໄວ້
ບໍ່ມີຄໍາເຫັນ ໄຟລ໌ຫນ່ວຍແມ່ນພິເສດແລະອາດຈະພາດແຖວ ': description' ຊັ້ນນໍາ.
ບໍ່ໄດ້ຢູ່ທີ່ນີ້ ຊື່ທີ່ລະບຸໄວ້ບໍ່ແມ່ນຢູ່ທີ່ນີ້ເອກະສານ (ເຊັ່ນ "1 << foo" ໃນ C
ໂຄງການ)
ທີ່ກໍານົດໄວ້ ຕົວແປທີ່ລະບຸໄວ້ຖືກຕັ້ງ
ການນໍາໃຊ້ ຕົວແປທີ່ລະບຸໄວ້ແມ່ນຖືກນໍາໃຊ້ໂດຍຫນ່ວຍງານນີ້
ບໍ່ໄດ້ປິດ ບັນຊີລາຍຊື່ຂອງເອກະສານຢູ່ທີ່ນີ້ບໍ່ໄດ້ປິດຢູ່ໃນຫນ່ວຍງານນີ້
usefile ໄຟລ໌ທີ່ລະບຸໄວ້ຖືກໃຊ້ (ຢ່າໃສ່ຊື່ດ້ວຍ '!' ສໍາລັບຊົ່ວຄາວ
ອັນ)
AUTHORS
Harlan Stenn[email protected]> ຂຽນສະບັບທໍາອິດ, ອີງໃສ່ Larry Wall's
metaconfig ຈາກໄລຍະຫ່າງ 2.0.
Raphael Manfredi[email protected]> rewrte ມັນຈາກ scratch ສໍາລັບ 3.0 ມີຈໍານວນຫນ້ອຍ
ການຍົກລະດັບ.
ໃຊ້ metalint ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net