เชถเซเช•เซเชฐเชตเชพเชฐ, เช“เช—เชธเซเชŸ 2 เชจเชพ เชฐเซ‹เชœ, C เช…เชจเซ‡ C++ เชญเชพเชทเชพเช“ เชฎเชพเชŸเซ‡ เชฒเซ‡เช•เซเชธเชฟเช•เชฒ เชตเชฟเชถเซเชฒเซ‡เชทเช•เซ‹เชจเชพ เชฎเชซเชค เชœเชจเชฐเซ‡เชŸเชฐ re2cเชจเซเช‚ เชชเซเชฐเช•เชพเชถเชจ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เชนเชคเซเช‚. เชฐเซ€เชฎเชพเช‡เชจเซเชกเชฐ เชคเชฐเซ€เช•เซ‡, re2c เชจเซ‡ 1993 เชฎเชพเช‚ เชชเซ€เชŸเชฐ เชฌเชพเชฎเซเชฌเซ‹เชฒเชฟเชธ เชฆเซเชตเชพเชฐเชพ เช–เซ‚เชฌ เชœ เชเชกเชชเซ€ เชฒเซ‡เช•เซเชธเชฟเช•เชฒ เชตเชฟเชถเซเชฒเซ‡เชทเช•เซ‹เชจเชพ เชชเซเชฐเชพเชฏเซ‹เช—เชฟเช• เชœเชจเชฐเซ‡เชŸเชฐ เชคเชฐเซ€เช•เซ‡ เชฒเช–เชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เชนเชคเซเช‚, เชœเซ‡ เชœเชจเชฐเซ‡เชŸเซ‡เชก เช•เซ‹เชกเชจเซ€ เชเชกเชช เช…เชจเซ‡ เช…เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡ เชฒเชตเชšเซ€เช• เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพ เช‡เชจเซเชŸเชฐเชซเซ‡เชธ เชฆเซเชตเชพเชฐเชพ เช…เชจเซเชฏ เชœเชจเชฐเซ‡เชŸเชฐเชฅเซ€ เช…เชฒเช— เช›เซ‡ เชœเซ‡ เชตเชฟเชถเซเชฒเซ‡เชทเช•เซ‹เชจเซ‡ เชธเชฐเชณเชคเชพเชฅเซ€ เช…เชจเซ‡ เช…เชธเชฐเช•เชพเชฐเช• เชฐเซ€เชคเซ‡ เชเชฎเซเชฌเซ‡เชก เช•เชฐเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡. เชนเชพเชฒเชจเซ‹ เช•เซ‹เชก เช†เชงเชพเชฐ. เชคเซเชฏเชพเชฐเชฅเซ€, เช† เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸ เชธเชฎเซเชฆเชพเชฏ เชฆเซเชตเชพเชฐเชพ เชตเชฟเช•เชธเชพเชตเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซ‹ เช›เซ‡ เช…เชจเซ‡ เชคเซ‡ เช”เชชเชšเชพเชฐเชฟเช• เชตเซเชฏเชพเช•เชฐเชฃ เช…เชจเซ‡ เชฎเชฐเซเชฏเชพเชฆเชฟเชค เชฐเชพเชœเซเชฏ เชฎเชถเซ€เชจเซ‹เชจเชพ เช•เซเชทเซ‡เชคเซเชฐเชฎเชพเช‚ เชชเซเชฐเชฏเซ‹เช—เซ‹ เช…เชจเซ‡ เชธเช‚เชถเซ‹เชงเชจ เชฎเชพเชŸเซ‡เชจเซเช‚ เชชเซเชฒเซ‡เชŸเชซเซ‹เชฐเซเชฎ เชฌเชจเซ€ เชฐเชนเซเชฏเซเช‚ เช›เซ‡.

เชธเช‚เชธเซเช•เชฐเชฃ 1.2 เชฎเชพเช‚ เชฎเซเช–เซเชฏ เชจเชตเซ€เชจเชคเชพเช“:

  • เช‡เชจเชชเซเชŸ เชกเซ‡เชŸเชพเชจเชพ เช…เช‚เชคเชจเซ‡ เชคเชชเชพเชธเชตเชพ เชฎเชพเชŸเซ‡ เชเช• เชจเชตเซ€ (เชธเชฐเชณ) เชฐเซ€เชค เช‰เชฎเซ‡เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เช›เซ‡
    (เช…เช‚เช—เซเชฐเซ‡เชœเซ€ "EOF เชจเชฟเชฏเชฎ").
    เช† เชฎเชพเชŸเซ‡, re2c:eof เชฐเซ‚เชชเชฐเซ‡เช–เชพเช‚เช•เชจ เช‰เชฎเซ‡เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เช›เซ‡,
    เชคเชฎเชจเซ‡ เชŸเชฐเซเชฎเชฟเชจเชฒ เช…เช•เซเชทเชฐ เชชเชธเช‚เชฆ เช•เชฐเชตเชพ เชฆเซ‡ เช›เซ‡,
    เช…เชจเซ‡ เช–เชพเชธ $ เชจเชฟเชฏเชฎ เช•เซ‡ เชœเซ‡ เชฒเซ‡เช•เซเชธเชฐ เชนเซ‹เชฏ เชคเซ‹ เชซเชพเชฏเชฐ เช•เชฐเซ‡ เช›เซ‡
    เช‡เชจเชชเซเชŸ เชกเซ‡เชŸเชพเชจเชพ เช…เช‚เชค เชธเซเชงเซ€ เชธเชซเชณเชคเชพเชชเซ‚เชฐเซเชตเช• เชชเชนเซ‹เช‚เชšเซเชฏเชพ.
    เชเชคเชฟเชนเชพเชธเชฟเช• เชฐเซ€เชคเซ‡, re2c เชฎเชพเชŸเซ‡ เช˜เชฃเซ€ เชšเช•เชพเชธเชฃเซ€ เชชเชฆเซเชงเชคเชฟเช“เชจเซ€ เชชเชธเช‚เชฆเช—เซ€ เชชเซ‚เชฐเซ€ เชชเชพเชกเซ‡ เช›เซ‡
    เชฎเชฐเซเชฏเชพเชฆเชพ, เช•เชพเชฐเซเชฏเช•เซเชทเชฎเชคเชพ เช…เชจเซ‡ เชธเชฐเชณเชคเชพเชฎเชพเช‚ เช…เชฒเช—-เช…เชฒเช— เช‡เชจเชชเซเชŸเซเชธเชจเซ‹ เช…เช‚เชค
    เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซเชธ เชจเชตเซ€ เชชเชฆเซเชงเชคเชฟ เช•เซ‹เชก เชฒเช–เชตเชพเชจเซเช‚ เชธเชฐเชณ เชฌเชจเชพเชตเชตเชพ เชฎเชพเชŸเซ‡ เชฐเชšเชพเชฏเซ‡เชฒ เช›เซ‡, เชœเซเชฏเชพเชฐเซ‡
    เชœเซเชฏเชพเชฐเซ‡ เช…เชธเชฐเช•เชพเชฐเช• เช…เชจเซ‡ เชตเซเชฏเชพเชชเช•เชชเชฃเซ‡ เชฒเชพเช—เซ เชฐเชนเซ‡ เช›เซ‡. เชœเซ‚เชจเซ€ เชฐเซ€เชคเซ‹
    เชนเชœเซ เชชเชฃ เช•เชพเชฎ เช•เชฐเซ‡ เช›เซ‡ เช…เชจเซ‡ เช•เซ‡เชŸเชฒเชพเช• เช•เชฟเชธเซเชธเชพเช“เชฎเชพเช‚ เชชเชธเช‚เชฆ เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡.

  • เชกเชพเชฏเชฐเซ‡เช•เซเชŸเชฟเชตเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชฌเชพเชนเซเชฏ เชซเชพเช‡เชฒเซ‹เชจเซ‡ เชถเชพเชฎเซ‡เชฒ เช•เชฐเชตเชพเชจเซ€ เช•เซเชทเชฎเชคเชพ เช‰เชฎเซ‡เชฐเซ€
    /*!include:re2c "file.re" */ เชœเซเชฏเชพเช‚ file.re
    เช† เชถเชพเชฎเซ‡เชฒ เชซเชพเช‡เชฒเชจเซเช‚ เชจเชพเชฎ เช›เซ‡. Re2c เชซเชพเช‡เชฒ เชกเชฟเชฐเซ‡เช•เซเชŸเชฐเซ€ เชธเชนเชฟเชค เชซเชพเช‡เชฒเซ‹ เชฎเชพเชŸเซ‡ เชœเซเช เช›เซ‡,
    เชคเซ‡เชฎเชœ -I เชตเชฟเช•เชฒเซเชชเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เช‰เชฒเซเชฒเซ‡เช–เชฟเชค เชชเชพเชฅเชจเซ€ เชฏเชพเชฆเซ€เชฎเชพเช‚.
    เชธเชฎเชพเชตเชฟเชทเซเชŸ เชซเชพเช‡เชฒเซ‹เชฎเชพเช‚ เช…เชจเซเชฏ เชซเชพเช‡เชฒเซ‹เชจเซ‹ เชธเชฎเชพเชตเซ‡เชถ เชฅเชˆ เชถเช•เซ‡ เช›เซ‡.
    Re2c เชถเชพเชฎเซ‡เชฒ/ เชกเชฟเชฐเซ‡เช•เซเชŸเชฐเซ€เชฎเชพเช‚ "เชธเซเชŸเชพเชจเซเชกเชฐเซเชก" เชซเชพเช‡เชฒเซ‹ เชชเซเชฐเชฆเชพเชจ เช•เชฐเซ‡ เช›เซ‡
    เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸ - เชเชตเซ€ เช…เชชเซ‡เช•เซเชทเชพ เช›เซ‡ เช•เซ‡ เช‰เชชเชฏเซ‹เช—เซ€ เชตเซเชฏเชพเช–เซเชฏเชพเช“ เชคเซเชฏเชพเช‚ เชเช•เช เชพ เชฅเชถเซ‡
    เชจเชฟเชฏเชฎเชฟเชค เช…เชญเชฟเชตเซเชฏเช•เซเชคเชฟเช“, เชชเซเชฐเชฎเชพเชฃเชญเซ‚เชค เชชเซเชธเซเชคเช•เชพเชฒเชฏ เชœเซ‡เชตเซเช‚ เช•เช‚เชˆเช•.
    เช…เชคเซเชฏเชพเชฐ เชธเซเชงเซ€, เช•เชพเชฎเชฆเชพเชฐเซ‹เชจเซ€ เชตเชฟเชจเช‚เชคเซ€ เชชเชฐ, เชฏเซเชจเชฟเช•เซ‹เชก เชถเซเชฐเซ‡เชฃเซ€เช“เชจเซ€ เชตเซเชฏเชพเช–เซเชฏเชพ เชธเชพเชฅเซ‡เชจเซ€ เชเช• เชซเชพเช‡เชฒ เช‰เชฎเซ‡เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เช›เซ‡.

  • เชฎเชจเชธเซเชตเซ€ เชธเชพเชฅเซ‡ เชนเซ‡เชกเชฐ เชซเชพเช‡เชฒเซ‹ เชœเชจเชฐเซ‡เชŸ เช•เชฐเชตเชพเชจเซ€ เช•เซเชทเชฎเชคเชพ เช‰เชฎเซ‡เชฐเซ€
    -t --type-header เชตเชฟเช•เชฒเซเชชเซ‹เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชธเชพเชฎเช—เซเชฐเซ€ (เช…เชฅเชตเชพ เชฏเซ‹เช—เซเชฏ
    เชฐเซ‚เชชเชฐเซ‡เช–เชพเช‚เช•เชจเซ‹) เช…เชจเซ‡ เชจเชตเชพ เชจเชฟเชฐเซเชฆเซ‡เชถเซ‹ /*!เชนเซ‡เชกเชฐ:re2c:on*/ เช…เชจเซ‡
    /*!เชนเซ‡เชกเชฐ:re2c:off*/. เช† เชเชตเชพ เช•เชฟเชธเซเชธเชพเช“เชฎเชพเช‚ เช‰เชชเชฏเซ‹เช—เซ€ เชฅเชˆ เชถเช•เซ‡ เช›เซ‡ เชœเซเชฏเชพเช‚
    เชœเซเชฏเชพเชฐเซ‡ re2c เชจเซ‡ เชตเซ‡เชฐเซ€เชเชฌเชฒ, เชธเซเชŸเซเชฐเช•เซเชšเชฐเซเชธ เช…เชจเซ‡ เชฎเซ‡เช•เซเชฐเซ‹เชจเซ€ เชตเซเชฏเชพเช–เซเชฏเชพเช“ เชฌเชจเชพเชตเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชนเซ‹เชฏ,
    เช…เชจเซเชฏ เช…เชจเซเชตเชพเชฆ เชเช•เชฎเซ‹เชฎเชพเช‚ เชตเชชเชฐเชพเชฏ เช›เซ‡.

  • Re2c เชนเชตเซ‡ เชฐเซ‡เช—เซเชฏเซเชฒเชฐ เชเช•เซเชธเชชเซเชฐเซ‡เชถเชจเชฎเชพเช‚ UTF8 เชถเชพเชฌเซเชฆเชฟเช• เช…เชจเซ‡ เช…เช•เซเชทเชฐ เชตเชฐเซเช—เซ‹เชจเซ‡ เชธเชฎเชœเซ‡ เช›เซ‡.
    เชฎเซ‚เชณเชญเซ‚เชค เชฐเซ€เชคเซ‡, re2c "โˆ€x โˆƒy" เชœเซ‡เชตเชพ เช…เชญเชฟเชตเซเชฏเช•เซเชคเชฟเช“เชจเซเช‚ เชตเชฟเชถเซเชฒเซ‡เชทเชฃ เช•เชฐเซ‡ เช›เซ‡.
    1-เชฌเซ€เชŸ ASCII เช…เช•เซเชทเชฐเซ‹เชจเซ‹ เช•เซเชฐเชฎ e2 88 80 78 20 e2 88 83 79
    (เชนเซ‡เช•เซเชธ เช•เซ‹เชกเซเชธ), เช…เชจเซ‡ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเช“เช เชœเชพเชคเซ‡ เชœ เชฏเซเชจเชฟเช•เซ‹เชก เช…เช•เซเชทเชฐเซ‹เชฅเซ€ เชฌเชšเชตเซเช‚ เชชเชกเชถเซ‡:
    "u2200x u2203y". เช† เช˜เชฃเชพ เชฒเซ‹เช•เซ‹ เชฎเชพเชŸเซ‡ เช–เซ‚เชฌ เชœ เช…เชธเซเชตเชฟเชงเชพเชœเชจเช• เช…เชจเซ‡ เช…เชจเชชเซ‡เช•เซเชทเชฟเชค เช›เซ‡
    เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเช“ (เชธเชคเชค เชฌเช— เชฐเชฟเชชเซ‹เชฐเซเชŸเซเชธ เชฆเซเชตเชพเชฐเชพ เชชเซเชฐเชพเชตเชพ เชคเชฐเซ€เช•เซ‡). เชคเซ‹ เชนเชตเซ‡
    re2c --input-encoding เชตเชฟเช•เชฒเซเชช เชชเซ‚เชฐเซ‹ เชชเชพเชกเซ‡ เช›เซ‡ ,
    เชœเซ‡ เชคเชฎเชจเซ‡ เชตเชฐเซเชคเชจ เชฌเชฆเชฒเชตเชพ เช…เชจเซ‡ "โˆ€x โˆƒy" เชคเชฐเซ€เช•เซ‡ เชชเชฆเชšเซเช›เซ‡เชฆเชจ เช•เชฐเชตเชพเชจเซ€ เชชเชฐเชตเชพเชจเช—เซ€ เช†เชชเซ‡ เช›เซ‡
    2200 78 20 2203 79.

  • Re2c เชนเชตเซ‡ เชจเชฟเชฏเชฎเชฟเชค re2c เชฌเซเชฒเซ‹เช•เชจเชพ เช‰เชชเชฏเซ‹เช—เชจเซ‡ -r --reuse เชฎเซ‹เชกเชฎเชพเช‚ เชชเชฐเชตเชพเชจเช—เซ€ เช†เชชเซ‡ เช›เซ‡.
    เช† เช…เชจเซเช•เซ‚เชณ เช›เซ‡ เชœเซ‹ เช‡เชจเชชเซเชŸ เชซเชพเช‡เชฒเชฎเชพเช‚ เช˜เชฃเชพ เชฌเซเชฒเซ‹เช•เซเชธ เชนเซ‹เชฏ เช…เชจเซ‡ เชคเซ‡เชฎเชพเช‚เชจเชพ เช•เซ‡เชŸเชฒเชพเช• เชœ เชนเซ‹เชฏ
    เชซเชฐเซ€เชฅเซ€ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡.

  • เชนเชตเซ‡ เชคเชฎเซ‡ เชšเซ‡เชคเชตเชฃเซ€เช“ เช…เชจเซ‡ เชญเซ‚เชฒ เชธเช‚เชฆเซ‡เชถเชพเช“เชจเซเช‚ เชซเซ‹เชฐเซเชฎเซ‡เชŸ เชธเซ‡เชŸ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹
    เชจเชตเชพ --location-format เชตเชฟเช•เชฒเซเชชเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ . GNU เชซเซ‹เชฐเซเชฎเซ‡เชŸ เชชเซเชฐเชฆเชฐเซเชถเชฟเชค เชฅเชพเชฏ เช›เซ‡
    เชซเชพเช‡เชฒเชจเชพเชฎ:เชฒเชพเช‡เชจ:เช•เซ‰เชฒเชฎ:, เช…เชจเซ‡ เชซเชพเช‡เชฒเชจเชพเชฎ (เชฒเชพเช‡เชจ, เช•เซ‰เชฒเชฎ) เชคเชฐเซ€เช•เซ‡ MSVC เชซเซ‹เชฐเซเชฎเซ‡เชŸ.
    เช† เชธเซเชตเชฟเชงเชพ IDE เชชเซเชฐเซ‡เชฎเซ€เช“ เชฎเชพเชŸเซ‡ เช‰เชชเชฏเซ‹เช—เซ€ เชฅเชˆ เชถเช•เซ‡ เช›เซ‡.
    A --verbose เชตเชฟเช•เชฒเซเชช เชชเชฃ เช‰เชฎเซ‡เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซ‹ เช›เซ‡, เชœเซ‡ เชธเชซเชณ เชฅเชตเชพ เชชเชฐ เชŸเซ‚เช‚เช•เซ‹ เชตเชฟเชœเชฏ เชธเช‚เชฆเซ‡เชถ เช›เชพเชชเซ‡ เช›เซ‡.

  • เชซเซเชฒเซ‡เช•เซเชธ เชธเชพเชฅเซ‡ "เชธเซเชธเช‚เช—เชคเชคเชพ" เชฎเซ‹เชกเชฎเชพเช‚ เชธเซเชงเชพเชฐเซ‹ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซ‹ เช›เซ‡ - เช•เซ‡เชŸเชฒเซ€เช• เชชเชพเชฐเซเชธเชฟเช‚เช— เชญเซ‚เชฒเซ‹ เชธเซเชงเชพเชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เช›เซ‡ เช…เชจเซ‡
    เชฆเซเชฐเซเชฒเชญ เช•เชฟเชธเซเชธเชพเช“เชฎเชพเช‚ เช–เซ‹เชŸเซ€ เช“เชชเชฐเซ‡เชŸเชฐ เช…เช—เซเชฐเชคเชพ.
    เชเชคเชฟเชนเชพเชธเชฟเช• เชฐเซ€เชคเซ‡, -F --flex-support เชตเชฟเช•เชฒเซเชช เชคเชฎเชจเซ‡ เช•เซ‹เชก เชฒเช–เชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡
    เชซเซเชฒเซ‡เช•เซเชธ เชถเซˆเชฒเซ€ เช…เชจเซ‡ re2c เชถเซˆเชฒเซ€เชฎเชพเช‚ เชฎเชฟเชถเซเชฐเชฟเชค, เชœเซ‡ เชชเชพเชฐเซเชธเชฟเช‚เช—เชจเซ‡ เชฅเซ‹เชกเซเช‚ เชฎเซเชถเซเช•เซ‡เชฒ เชฌเชจเชพเชตเซ‡ เช›เซ‡.
    เชจเชตเชพ เช•เซ‹เชกเชฎเชพเช‚ เชซเซเชฒเซ‡เช•เซเชธ เชธเซเชธเช‚เช—เชคเชคเชพ เชฎเซ‹เชกเชจเซ‹ เชญเชพเช—เซเชฏเซ‡ เชœ เช‰เชชเชฏเซ‹เช— เชฅเชพเชฏ เช›เซ‡,
    เชชเชฐเช‚เชคเซ re2c เชชเชพเช›เชณเชจเซ€ เชธเซเชธเช‚เช—เชคเชคเชพ เชฎเชพเชŸเซ‡ เชคเซ‡เชจเซ‡ เชธเชฎเชฐเซเชฅเชจ เช†เชชเชตเชพเชจเซเช‚ เชšเชพเชฒเซ เชฐเชพเช–เซ‡ เช›เซ‡.

  • เช…เช•เซเชทเชฐ เชตเชฐเซเช— เชฌเชพเชฆเชฌเชพเช•เซ€ เช“เชชเชฐเซ‡เชŸเชฐ / เชนเชตเซ‡ เชฒเชพเช—เซ เชฅเชพเชฏ เช›เซ‡
    เชเชจเซเช•เซ‹เชกเชฟเช‚เช—เชจเซ‡ เชตเชฟเชธเซเชคเซƒเชค เช•เชฐเชคเชพ เชชเชนเซ‡เชฒเชพ, เชœเซ‡ เชคเซ‡เชจเซ‡ เชฎเซ‹เชŸเซ€ เชธเช‚เช–เซเชฏเชพเชฎเชพเช‚ เช•เซ‡เชธเซ‹เชฎเชพเช‚ เช‰เชชเชฏเซ‹เช—เชฎเชพเช‚ เชฒเซ‡เชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡,
    เชœเซ‹ เชšเชฒ เช…เช•เซเชทเชฐ เชฒเช‚เชฌเชพเชˆ เชเชจเซเช•เซ‹เชกเชฟเช‚เช—เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡ (เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡ UTF8).

  • เช†เช‰เชŸเชชเซเชŸ เชซเชพเชˆเชฒ เชนเชตเซ‡ เชชเชฐเชฎเชพเชฃเซ เชฐเซ€เชคเซ‡ เชฌเชจเชพเชตเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เช›เซ‡: re2c เชชเชนเซ‡เชฒเชพ เช•เชพเชฎเชšเชฒเชพเช‰ เชซเชพเชˆเชฒ เชฌเชจเชพเชตเซ‡ เช›เซ‡
    เช…เชจเซ‡ เชคเซ‡เชฎเชพเช‚ เชชเชฐเชฟเชฃเชพเชฎ เชฒเช–เซ‡ เช›เซ‡, เช…เชจเซ‡ เชชเช›เซ€ เช†เช‰เชŸเชชเซเชŸ เชชเชฐ เช•เชพเชฎเชšเชฒเชพเช‰ เชซเชพเช‡เชฒเชจเซเช‚ เชจเชพเชฎ เชฌเชฆเชฒเซ€ เชจเชพเช–เซ‡ เช›เซ‡
    เชเช• เช“เชชเชฐเซ‡เชถเชจ.

  • เชฆเชธเซเชคเชพเชตเซ‡เชœเซ€เช•เชฐเชฃ เชชเซ‚เชฐเซเชฃ เช…เชจเซ‡ เชซเชฐเซ€เชฅเซ€ เชฒเช–เชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เชนเชคเซเช‚; เช–เชพเชธ เช•เชฐเซ€เชจเซ‡, เชจเชตเชพ เช‰เชฎเซ‡เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเชพ เชนเชคเชพ
    เชชเซเชฐเช•เชฐเชฃเซ‹ เชฌเชซเชฐ เชญเชฐเชตเชพ เชตเชฟเชถเซ‡
    ะธ เช‡เชจเชชเซเชŸ เชกเซ‡เชŸเชพเชจเชพ เช…เช‚เชคเชจเซ€ เชคเชชเชพเชธ เช•เชฐเชตเชพเชจเซ€ เชฐเซ€เชคเซ‹ เชตเชฟเชถเซ‡.
    เชจเชตเชพ เชฆเชธเซเชคเชพเชตเซ‡เชœเซ‹ เชซเซ‹เชฐเซเชฎเชฎเชพเช‚ เชเช•เชคเซเชฐเชฟเชค เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡
    เชเช• เชตเซเชฏเชพเชชเช• เชเช•-เชชเซƒเชทเซเช  เชฎเชพเชฐเซเช—เชฆเชฐเซเชถเชฟเช•เชพ
    เช‰เชฆเชพเชนเชฐเชฃเซ‹ เชธเชพเชฅเซ‡ (เชธเชฎเชพเชจ เชธเซเชคเซเชฐเซ‹เชคเซ‹ เชฎเซ‡เชจเชชเซ‡เชœ เช…เชจเซ‡ เช“เชจเชฒเชพเชˆเชจ เชฆเชธเซเชคเชพเชตเซ‡เชœเซ€เช•เชฐเชฃเชฎเชพเช‚ เชฐเซ‡เชจเซเชกเชฐ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเชพ เช›เซ‡).
    เชซเซ‹เชจ เชชเชฐ เชธเชพเช‡เชŸเชจเซ€ เชตเชพเช‚เชšเชจเช•เซเชทเชฎเชคเชพ เชธเซเชงเชพเชฐเชตเชพ เชฎเชพเชŸเซ‡ เชจเชฌเชณเชพ เชชเซเชฐเชฏเชพเชธเซ‹ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเชพ เช›เซ‡.

  • เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเช“เชจเชพ เชฆเซƒเชทเซเชŸเชฟเช•เซ‹เชฃเชฅเซ€, re2c เช เชตเชงเซ เชธเช‚เชชเซ‚เชฐเซเชฃ เชธเชฌเชธเชฟเชธเซเชŸเชฎ เชนเชธเซเชคเช—เชค เช•เชฐเซ€ เช›เซ‡
    เชกเชฟเชฌเช—เซ€เช‚เช— เชกเซ€เชฌเช—เซ€เช‚เช— เช•เซ‹เชก เชนเชตเซ‡ เชฐเซ€เชฒเซ€เช เชฌเชฟเชฒเซเชกเซเชธเชฎเชพเช‚ เช…เช•เซเชทเชฎ เช›เซ‡ เช…เชจเซ‡
    เชฐเซ‚เชชเชฐเซ‡เช–เชพเช‚เช•เชฟเชค เชตเชฟเช•เชฒเซเชช --enable-debug เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชธเช•เซเชฐเชฟเชฏ เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡.

เช† เชชเซเชฐเช•เชพเชถเชจเชฎเชพเช‚ เชฒเชพเช‚เชฌเซ‹ เชธเชฎเชฏ เชฒเชพเช—เซเชฏเซ‹ - เชฒเช—เชญเช— เช†เช–เซเช‚ เชตเชฐเซเชท.
เชฎเซ‹เชŸเชพเชญเชพเช—เชจเซ‹ เชธเชฎเชฏ, เชนเช‚เชฎเซ‡เชถเชจเซ€ เชœเซ‡เชฎ, เชธเซˆเชฆเซเชงเชพเช‚เชคเชฟเช• เชฎเชพเชณเช–เซเช‚ เช…เชจเซ‡ เชฒเซ‡เช–เชจ เชตเชฟเช•เชธเชพเชตเชตเชพเชฎเชพเช‚ เช–เชฐเซเชšเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซ‹ เชนเชคเซ‹
เชฒเซ‡เช– "เชเชจเชเชซเช เชชเชฐ เช•เชพเชฐเซเชฏเช•เซเชทเชฎ POSIX เชธเชฌเชฎเซ‡เชš เชเช•เซเชธเชŸเซเชฐเซ‡เช•เซเชถเชจ".
เชฒเซ‡เช–เชฎเชพเช‚ เชตเชฐเซเชฃเชตเซ‡เชฒ เช…เชฒเซเช—เซ‹เชฐเชฟเชงเชฎเซเชธ เชชเซเชฐเชพเชฏเซ‹เช—เชฟเช• เชฒเชพเช‡เชฌเซเชฐเซ‡เชฐเซ€ libre2c เชฎเชพเช‚ เชฒเชพเช—เซ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡
(เชฒเชพเช‡เชฌเซเชฐเซ‡เชฐเซ€ เช…เชจเซ‡ เชฌเซ‡เชจเซเชšเชฎเชพเชฐเซเช•เชจเซเช‚ เชจเชฟเชฐเซเชฎเชพเชฃ เชฎเซ‚เชณเชญเซ‚เชค เชฐเซ€เชคเซ‡ เช…เช•เซเชทเชฎ เช›เซ‡ เช…เชจเซ‡ เชฐเซ‚เชชเชฐเซ‡เช–เชพเช‚เช•เชจ เชตเชฟเช•เชฒเซเชช เชฆเซเชตเชพเชฐเชพ เชธเช•เซเชทเชฎ เช›เซ‡
--enable-libs). เชชเซเชธเซเชคเช•เชพเชฒเชฏเชจเซ€ เช•เชฒเซเชชเชจเชพ เชนเชพเชฒเชจเซ€ เชนเชฐเซ€เชซ เชคเชฐเซ€เช•เซ‡ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เชจเชฅเซ€
RE2 เชœเซ‡เชตเชพ เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸ, เชชเชฐเช‚เชคเซ เชจเชตเชพ เชตเชฟเช•เชพเชธ เชฎเชพเชŸเซ‡ เชธเช‚เชถเซ‹เชงเชจ เชชเซเชฒเซ‡เชŸเชซเซ‹เชฐเซเชฎ เชคเชฐเซ€เช•เซ‡
เช…เชฒเซเช—เซ‹เชฐเชฟเชงเชฎเซเชธ (เชœเซ‡ เชชเช›เซ€ re2c เช…เชฅเชตเชพ เช…เชจเซเชฏ เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸเชฎเชพเช‚ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡).
เชคเซ‡ เชชเชฐเซ€เช•เซเชทเชฃ, เชฌเซ‡เชจเซเชšเชฎเชพเชฐเซเช• เช…เชจเซ‡ เช…เชจเซเชฏ เชญเชพเชทเชพเช“เชฎเชพเช‚ เชฌเช‚เชงเชจเช•เชฐเซเชคเชพ เชฌเชจเชพเชตเชตเชพเชจเชพ เชฆเซƒเชทเซเชŸเชฟเช•เซ‹เชฃเชฅเซ€ เชชเชฃ เช…เชจเซเช•เซ‚เชณ เช›เซ‡.

re2c เชกเซ‡เชตเชฒเชชเชฐเซเชธ เชคเชฐเชซเชฅเซ€ เช† เชฐเชฟเชฒเซ€เช เช•เชฐเชตเชพเชฎเชพเช‚ เชฎเชฆเชฆ เช•เชฐเชจเชพเชฐ เชฆเชฐเซ‡เช•เชจเซ‹ เช†เชญเชพเชฐ,
เช…เชจเซ‡ เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡ เชธเชฎเซเชฆเชพเชฏเชจเซ‡ เชตเชฟเชšเชพเชฐเซ‹, เชฌเช— เชฐเชฟเชชเซ‹เชฐเซเชŸเซเชธ, เชชเซ‡เชš, เชฎเชจเซ‹เชฌเชณ, เชตเช—เซ‡เชฐเซ‡ เชฎเชพเชŸเซ‡. ;]

เชธเซ‹เชฐเซเชธ: linux.org.ru

เชเช• เชŸเชฟเชชเซเชชเชฃเซ€ เช‰เชฎเซ‡เชฐเซ‹