{"id":443190,"date":"2024-12-26T06:02:42","date_gmt":"2024-12-26T06:02:42","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=443190"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=443190","title":{"rendered":"<span>\u0412\u0451\u0440\u0441\u0442\u043a\u0430 \u0423\u0447\u0435\u0431\u043d\u0438\u043a\u0430 (LaTeX + CPP + GNU Make + Jenkins = \u0423\u0447\u0435\u0431\u043d\u0438\u043a)<\/span>"},"content":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/3f0\/316\/a2a\/3f0316a2adb98c5ef304916f338b47f0.png\" width=\"574\" height=\"364\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/3f0\/316\/a2a\/3f0316a2adb98c5ef304916f338b47f0.png\"\/><\/figure>\n<p>\u0412\u044b, \u043d\u0430\u0432\u0435\u0440\u043d\u043e\u0435 \u0443\u0434\u0438\u0432\u0438\u0442\u0435\u0441\u044c, \u043d\u043e \u0447\u0442\u043e\u0431\u044b \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0443\u0447\u0435\u0431\u043d\u0438\u043a, \u043d\u0430\u0434\u043e \u0437\u043d\u0430\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0441\u0431\u043e\u0440\u043a\u0438 \u0438\u0437 \u0441\u043e\u0444\u0442\u0432\u0435\u0440\u043d\u043e\u0433\u043e \u0411\u0438\u0433\u0422\u0435\u0445\u0430 \u0438, \u043a\u0430\u043a \u043d\u0438 \u0441\u0442\u0440\u0430\u043d\u043d\u043e, \u0441\u0442\u0430\u0440\u044b\u0439 \u0434\u043e\u0431\u0440\u044b\u0439 \u0441\u0438\u0448\u043d\u044b\u0439 \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 (cpp). \u0414\u0430, \u0433\u043e\u0441\u043f\u043e\u0434\u0430&#8230; \u0418\u043c\u0435\u043d\u043d\u043e \u0442\u0430\u043a&#8230; \u0421\u0435\u0439\u0447\u0430\u0441 \u043e\u0431\u044a\u044f\u0441\u043d\u044e, \u043f\u043e\u0447\u0435\u043c\u0443&#8230; <\/p>\n<p>\u0412 front-end \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u044f\u0437\u044b\u043a \u0440\u0430\u0437\u043c\u0435\u0442\u043a\u0438 <strong>LaTe\u0425<\/strong>. \u041c\u043d\u043e\u0433\u0438\u0435 \u043f\u0440\u043e \u043d\u0435\u0433\u043e \u0441\u043b\u044b\u0448\u0430\u043b\u0438 \u0438 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0435\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442. \u042d\u0442\u043e \u044f\u0437\u044b\u043a \u0441\u043e\u0437\u0434\u0430\u043d \u0434\u043b\u044f \u0432\u0451\u0440\u0441\u0442\u043a\u0438 \u043f\u0440\u0435\u043a\u0440\u0430\u0441\u043d\u043e \u0441\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043e\u0432. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0432\u0441\u0435 datasheet(\u044b) \u043d\u0430 \u043a\u0443\u043b\u044c\u0442\u043e\u0432\u044b\u0435 \u043c\u0438\u0440\u043e\u0432\u044b\u0435 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u044b \u043f\u043e 5000+ \u0441\u0442\u0440\u0430\u043d\u0438\u0446 \u043a\u0430\u043a \u0440\u0430\u0437 \u0441\u043e\u0431\u0440\u0430\u043d\u044b \u0438\u043c\u0435\u043d\u043d\u043e \u0447\u0435\u0440\u0435\u0437 \u0443\u0442\u0438\u043b\u0438\u0442\u0443 LaTeX. \u041e\u0431\u044b\u0447\u043d\u043e \u043d\u0430 LaTeX \u043f\u0440\u043e\u0444\u0435\u0441\u0441\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u0442\u0430\u043a \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u043c\u044b\u0435 <strong>\u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u0438\u0441\u0430\u0442\u0435\u043b\u0438<\/strong>. \u0412 \u0437\u0430\u043f\u0430\u0434\u043d\u043e\u0439 \u0430\u043a\u0430\u0434\u0435\u043c\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0441\u0440\u0435\u0434\u0435 \u0442\u043e\u0436\u0435 \u0430\u043a\u0442\u0438\u0432\u043d\u043e \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u044e\u0442 LaTeX \u0434\u043b\u044f \u0432\u0451\u0440\u0441\u0442\u043a\u0438 \u0441\u0432\u043e\u0438\u0445 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u0439 \u043d\u0430 IEEE Explore \u0438 \u0434\u043b\u044f \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0438 \u0441\u043b\u0430\u0439\u0434\u043e\u0432 \u043d\u0430 \u0432\u0441\u044f\u0447\u0435\u0441\u043a\u0438\u0435 \u043e\u043a\u043e\u043b\u043e\u043d\u0430\u0443\u0447\u043d\u044b\u0435 \u043a\u043e\u043d\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0438. <\/p>\n<p>\u041f\u0440\u0438 \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u0438 \u043a\u043d\u0438\u0433\u0438 \u0432 latex \u0430\u0432\u0442\u043e\u0440 \u043d\u0435 \u0434\u043e\u043b\u0436\u0435\u043d \u0434\u0443\u043c\u0430\u0442\u044c \u043e\u0431 \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u0438. \u0410\u0432\u0442\u043e\u0440 \u0434\u0443\u043c\u0430\u0435\u0442 \u043e \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u0438. \u0417\u0430 \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u0435 \u0430\u0432\u0442\u043e\u0440 \u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u043d\u0435 \u043d\u0435\u0441\u0451\u0442. \u0412\u0441\u044f \u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0441\u0442\u044c \u0437\u0430 \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u0435 \u0441\u0442\u0440\u0430\u043d\u0438\u0446 \u043f\u0435\u0440\u0435\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 LaTeX. \u0412 \u044d\u0442\u043e\u043c \u043e\u0441\u043d\u043e\u0432\u043d\u0430\u044f \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044f. <\/p>\n<p>\u0415\u0449\u0451 \u0434\u043e\u0441\u0442\u043e\u0438\u043d\u0441\u0442\u0432\u043e <strong>LaTeX<\/strong> \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0441\u043e\u0437\u0434\u0430\u0442\u044c *.pdf \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442 \u0441 \u043d\u0443\u0436\u043d\u044b\u043c\u0438 \u043e\u0442\u0441\u0442\u0443\u043f\u0430\u043c\u0438, \u043d\u0443\u043c\u0435\u0440\u0430\u0446\u0438\u0435\u0439, \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430\u043c\u0438, 7-\u043c\u0438 \u044d\u0442\u0430\u0436\u043d\u044b\u043c\u0438 \u0444\u043e\u0440\u043c\u0443\u043b\u0430\u043c\u0438,  \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f\u043c\u0438 \u0438 \u043f\u0440\u043e\u0447\u0435\u0439 \u043f\u0440\u0435\u043a\u0440\u0430\u0441\u043d\u043e\u0439 \u043f\u043e\u043b\u0438\u0433\u0440\u0430\u0444\u0438\u0435\u0439 \u0432\u0430\u043c \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u043e \u043d\u0435 \u043d\u0443\u0436\u043d\u0430 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u0430\u044f \u043c\u044b\u0448\u043a\u0430. \u0414\u0430&#8230; \u0412\u043e\u0442 \u0442\u0430\u043a&#8230;<\/p>\n<p>\u0412 \u044d\u0442\u043e\u0439 \u0437\u0430\u043c\u0435\u0442\u043a\u0435 \u044f \u043f\u043e\u043a\u0430\u0436\u0443 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0442\u0440\u044e\u043a\u043e\u0432 \u043f\u043e \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 LaTeX. <\/p>\n<p>\u0418\u0442\u0430\u043a, \u0442\u0430\u043d\u0446\u0443\u0435\u043c \u043e\u0442 \u043f\u0435\u0447\u043a\u0438&#8230;<\/p>\n<p><strong>\u0427\u0442\u043e \u043d\u0430\u0434\u043e \u0438\u0437 \u0441\u043e\u0444\u0442\u0432\u0435\u0440\u0430 (\u041f\u041e)?<\/strong><\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<td data-colwidth=\"66\" width=\"66\">\n<p align=\"left\"><strong>\u2116<\/strong><\/p>\n<\/td>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\"><strong>\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0443\u0442\u0438\u043b\u0438\u0442\u044b<\/strong><\/p>\n<\/td>\n<td data-colwidth=\"73\" width=\"73\">\n<p align=\"left\"><strong>CygWin<\/strong> <\/p>\n<\/td>\n<td>\n<p align=\"left\"><strong>\u041f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u0435<\/strong><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"66\" width=\"66\">\n<p align=\"left\">1<\/p>\n<\/td>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">cpp<\/p>\n<\/td>\n<td data-colwidth=\"73\" width=\"73\">\n<p align=\"left\">+<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 \u044f\u0437\u044b\u043a\u0430 \u0421\u0438<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"66\" width=\"66\">\n<p align=\"left\">2<\/p>\n<\/td>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">pdf viewer<\/p>\n<\/td>\n<td data-colwidth=\"73\" width=\"73\">\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\u041e\u0431\u043e\u0437\u0440\u0435\u0432\u0430\u0442\u0435\u043b\u044c pdf \u0444\u0430\u0439\u043b\u043e\u0432<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"66\" width=\"66\">\n<p align=\"left\">3<\/p>\n<\/td>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">pandoc<\/p>\n<\/td>\n<td data-colwidth=\"73\" width=\"73\">\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\u0443\u0442\u0438\u043b\u0438\u0442\u0430 \u0434\u043b\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f latex \u0432 docx<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"66\" width=\"66\">\n<p align=\"left\">4<\/p>\n<\/td>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">cmd<\/p>\n<\/td>\n<td data-colwidth=\"73\" width=\"73\">\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\u0418\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440 \u044f\u0437\u044b\u043a\u0430 Batch<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"66\" width=\"66\">\n<p align=\"left\">5<\/p>\n<\/td>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">make<\/p>\n<\/td>\n<td data-colwidth=\"73\" width=\"73\">\n<p align=\"left\">+<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0418\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440 \u044f\u0437\u044b\u043a\u0430 make<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"66\" width=\"66\">\n<p align=\"left\">6<\/p>\n<\/td>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">pdflatex<\/p>\n<\/td>\n<td data-colwidth=\"73\" width=\"73\">\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\u0418\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440 \u044f\u0437\u044b\u043a\u0430 LaTeX<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"66\" width=\"66\">\n<p align=\"left\">7<\/p>\n<\/td>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">Eclipse IDE<\/p>\n<\/td>\n<td data-colwidth=\"73\" width=\"73\">\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\u0422\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0439 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440 Eclipse <\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"66\" width=\"66\">\n<p align=\"left\">8<\/p>\n<\/td>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">git<\/p>\n<\/td>\n<td data-colwidth=\"73\" width=\"73\">\n<p align=\"left\">+<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u0438\u0441\u0442\u0435\u043c\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044f \u0432\u0435\u0440\u0441\u0438\u0439 \u0434\u043b\u044f \u0432\u0430\u0448\u0438\u0445 \u0442\u0435\u043a\u0441\u0442\u043e\u0432 \u0443\u0447\u0435\u0431\u043d\u0438\u043a\u0430<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"66\" width=\"66\">\n<p align=\"left\">12<\/p>\n<\/td>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">realpath<\/p>\n<\/td>\n<td data-colwidth=\"73\" width=\"73\">\n<p align=\"left\">+<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0412\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u044c \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u044b\u0439 \u043f\u0443\u0442\u044c \u043a \u043f\u0430\u043f\u043a\u0435<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"66\" width=\"66\">\n<p align=\"left\">13<\/p>\n<\/td>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">sort<\/p>\n<\/td>\n<td data-colwidth=\"73\" width=\"73\">\n<p align=\"left\">+<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0423\u0442\u0438\u043b\u0438\u0442\u0430 \u0434\u043b\u044f \u0441\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u043a\u0438 \u0441\u0442\u0440\u043e\u043a. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0434\u043b\u044f \u0441\u043f\u0438\u0441\u043a\u0430 \u0430\u043a\u0440\u043e\u043d\u0438\u043c\u043e\u0432.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"66\" width=\"66\">\n<p align=\"left\">9<\/p>\n<\/td>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">tree<\/p>\n<\/td>\n<td data-colwidth=\"73\" width=\"73\">\n<p align=\"left\">+<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041e\u0431\u043e\u0437\u0440\u0435\u0432\u0430\u0442\u0435\u043b\u044c \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0433\u043e \u043f\u0430\u043f\u043a\u0438<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"66\" width=\"66\">\n<p align=\"left\">10<\/p>\n<\/td>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">m4<\/p>\n<\/td>\n<td data-colwidth=\"73\" width=\"73\">\n<p align=\"left\">+<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0423\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440. \u0426\u0435\u043b\u044b\u0439 \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432\u044b\u0439 \u044f\u0437\u044b\u043a.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"66\" width=\"66\">\n<p align=\"left\">11<\/p>\n<\/td>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">grep<\/p>\n<\/td>\n<td data-colwidth=\"73\" width=\"73\">\n<p align=\"left\">+<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u043e\u0438\u0441\u043a \u043f\u043e \u043a\u043b\u044e\u0447\u0435\u0432\u043e\u043c\u0443 \u0441\u043b\u043e\u0432\u0443 \u043d\u0430 \u0436\u0435\u0441\u0442\u043a\u043e\u043c \u0434\u0438\u0441\u043a\u0435<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>\u0411\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u044d\u0442\u0438\u0445 \u0443\u0442\u0438\u043b\u0438\u0442 \u043f\u0440\u0435\u0441\u043f\u043e\u043a\u043e\u0439\u043d\u043e \u0431\u0435\u0440\u0443\u0442\u0441\u044f \u0438\u0437 CygWin \u0438\u043b\u0438 MinGW. <\/p>\n<p><strong>\u041a\u0430\u043a\u043e\u0432 \u043f\u043b\u0430\u043d?<\/strong><\/p>\n<p>\u042f \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0438 \u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0432\u043e\u0442 \u0442\u0430\u043a\u043e\u0439 \u043a\u043e\u043d\u0432\u0435\u0439\u0435\u0440 \u043c\u0435\u0442\u0430\u043c\u043e\u0440\u0444\u043e\u0437\u0430 \u0444\u0430\u0439\u043b\u0438\u043a\u043e\u0432.<\/p>\n<figure class=\"\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/bf7\/059\/735\/bf7059735690a75e039feaad10cf9b36.png\" alt=\"\u043a\u043e\u043d\u0432\u0435\u0439\u0435\u0440 \u043c\u0435\u0442\u0430\u043c\u043e\u0440\u0444\u043e\u0437\u0430 \u0444\u0430\u0439\u043b\u0438\u043a\u043e\u0432\" title=\"\u043a\u043e\u043d\u0432\u0435\u0439\u0435\u0440 \u043c\u0435\u0442\u0430\u043c\u043e\u0440\u0444\u043e\u0437\u0430 \u0444\u0430\u0439\u043b\u0438\u043a\u043e\u0432\" width=\"355\" height=\"484\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/bf7\/059\/735\/bf7059735690a75e039feaad10cf9b36.png\"\/><\/p>\n<div><figcaption>\u043a\u043e\u043d\u0432\u0435\u0439\u0435\u0440 \u043c\u0435\u0442\u0430\u043c\u043e\u0440\u0444\u043e\u0437\u0430 \u0444\u0430\u0439\u043b\u0438\u043a\u043e\u0432<\/figcaption><\/div>\n<\/figure>\n<p>\u0417\u0435\u043b\u0451\u043d\u044b\u043c \u0446\u0432\u0435\u0442\u043e\u043c \u043f\u043e\u043a\u0440\u0430\u0448\u0435\u043d\u044b \u0442\u0435 \u0444\u0430\u0439\u043b\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0434\u043b\u044f \u043d\u0430\u0441 <strong>\u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0430\u043c\u0438<\/strong>. \u042d\u0442\u043e \u0442\u043e \u0441\u0430\u043c\u043e\u0435, \u0447\u0442\u043e \u043d\u0430\u0434\u043e \u043f\u043e\u0434\u0432\u0435\u0440\u0433\u0430\u0442\u044c \u0432\u0435\u0440\u0441\u0438\u043e\u043d\u043d\u043e\u043c\u0443 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044e \u0432 git \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438. GNU Make \u0442\u0443\u0442 \u0432\u044b\u0441\u0442\u0443\u043f\u0430\u0435\u0442 \u0434\u0438\u0440\u0438\u0436\u0435\u0440\u043e\u043c \u043e\u0440\u043a\u0435\u0441\u0442\u0440\u0430 \u0438 \u043c\u0435\u0445\u0430\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043a\u043e\u0440\u043e\u0431\u043a\u043e\u0439 \u043f\u0435\u0440\u0435\u0434\u0430\u0447 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e. <\/p>\n<p>\u041d\u0430 \u043a\u0430\u0436\u0434\u0443\u044e \u0433\u043b\u0430\u0432\u0443 \u043a\u043d\u0438\u0433\u0438 \u0441\u043e\u0437\u0434\u0430\u0435\u0442\u0441\u044f *.texi \u0444\u0430\u0439\u043b, *.mk \u0444\u0430\u0439\u043b \u0438 \u043f\u0430\u043f\u043a\u0430 \u0441 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430\u043c\u0438. \u0412\u043e\u0442 \u043f\u0440\u0438\u043c\u0435\u0440 *.texi \u0444\u0430\u0439\u043b\u0430 \u0434\u043b\u044f \u0433\u043b\u0430\u0432\u044b:<\/p>\n<pre><code class=\"elixir\">sinclude(`latex_m4_preproc_utils.texi')  \\graphicspath{ {PATH_CHAPTER_X_DIR\/pix} }   \\chapter{\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0413\u043b\u0430\u0432\u044b}   \\section{\u041f\u0440\u043e\u043b\u043e\u0433} \u0445\u0445\u0445\u0445\u0445\u0445\u0445\u0445\u0445\u0445\u0445\u0445\u0445  \\section{\u041f\u0430\u0440\u0430\u0433\u0440\u0430\u0444\\_1} \u0445\u0445\u0445\u0445\u0445\u0445\u0445\u0445\u0445\u0445  \\section{\u0418\u0442\u043e\u0433} \u0445\u0445\u0445\u0445\u0445\u0445\u0445\u0445\u0445\u0445\u0445\u0445  \\section{\u0413\u0438\u043f\u0435\u0440\u0441\u0441\u044b\u043b\u043a\u0438}  \\begin{enumerate}   \\item \\href{wwwwwwwwwwwwwwwww}{zzzzzzzzzzzz} \\end{enumerate} <\/code><\/pre>\n<p>\u041d\u0430 \u0432\u0445\u043e\u0434 \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430 cpp(\u0438\u043b\u0438 m4) \u043f\u043e\u0434\u0430\u044e\u0442\u0441\u044f \u0444\u0430\u0439\u043b\u044b *.texi. \u041d\u0430 \u0443\u0442\u0438\u043b\u0438\u0442\u0443 pdflatex \u043c\u044b \u043f\u043e\u0434\u0430\u0435\u043c \u0432\u044b\u0445\u043e\u0434 \u0441\u0430\u043c\u043e\u0433\u043e \u043e\u0431\u044b\u043a\u043d\u043e\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u0438\u0448\u043d\u043e\u0433\u043e \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430 (\u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u0430\u044f \u0443\u0442\u0438\u043b\u0438\u0442\u0430 cpp) &#8212; \u0442\u043e \u0435\u0441\u0442\u044c \u0444\u0430\u0439\u043b *.tex.<\/p>\n<p>\u0415\u0441\u043b\u0438 \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u0442\u044c \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u044e, \u0442\u043e LaTex &#8212; \u044d\u0442\u043e \u043a\u0430\u043a \u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u0449\u0438\u043a LD \u0438\u0437 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041f\u041e, \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0435 \u0434\u043b\u044f \u0431\u0438\u043d\u0430\u0440\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430, \u0430 \u0434\u043b\u044f \u043e\u0431\u044b\u043a\u043d\u043e\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u043e\u0447\u0438\u0442\u0430\u0435\u043c\u043e\u0433\u043e \u0442\u0435\u043a\u0441\u0442\u0430. \u0412\u043e\u0442 \u0442\u0430\u043a\u0438\u0435 \u0432\u043e\u0442 \u043f\u0438\u0440\u043e\u0436\u043a\u0438 \u0441 \u043a\u0430\u043f\u0443\u0441\u0442\u043e\u0439.<\/p>\n<p>\u0414\u043e\u043f\u0443\u0441\u0442\u0438\u043c, \u0432\u044b \u043f\u0438\u0448\u0435\u0442\u0435 \u043a\u0443\u0440\u0441\u043e\u0432\u043e\u0439 \u043f\u0440\u043e\u0435\u043a\u0442, \u043c\u0430\u0433\u0438\u0441\u0442\u0435\u0440\u0441\u043a\u0438\u0439 \u0434\u0438\u043f\u043b\u043e\u043c, datasheet \u043d\u0430 \u043d\u0430\u0432\u043e\u0440\u043e\u0447\u0435\u043d\u043d\u044b\u0439 ASIC \u0441 270-\u044e SPI-\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u043c\u0438 \u0438\u043b\u0438 \u0443\u0447\u0435\u0431\u043d\u0438\u043a \u043f\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e. \u0427\u0442\u043e \u043d\u0430\u0434\u043e \u0443\u043c\u0435\u0442\u044c \u0434\u0435\u043b\u0430\u0442\u044c \u043d\u0430 Latex? \u041d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043c\u043d\u043e\u0433\u043e \u0432\u0441\u0435\u0433\u043e \u0440\u0430\u0437\u043d\u043e\u0433\u043e. \u041e\u0434\u043d\u0430\u043a\u043e \u0432\u043e\u0442 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0439 \u0434\u0436\u0435\u043d\u0442\u043b\u044c\u043c\u0435\u043d\u0441\u043a\u0438\u0439 \u043d\u0430\u0431\u043e\u0440:<\/p>\n<ol>\n<li>\n<p>\u0412\u0441\u0442\u0430\u0432\u043a\u0430 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f <\/p>\n<\/li>\n<li>\n<p>\u0412\u0441\u0442\u0430\u0432\u043a\u0430 \u0446\u0438\u0442\u0430\u0442\u044b<\/p>\n<\/li>\n<li>\n<p>\u0412\u0441\u0442\u0430\u0432\u043a\u0430 \u043a\u0443\u0441\u043a\u043e\u0432 \u043a\u043e\u0434\u0430 (\u0442\u0430\u043a \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u043c\u044b\u0435 \u043b\u0438\u0441\u0442\u0438\u043d\u0433\u0438)<\/p>\n<\/li>\n<li>\n<p>\u0412\u0441\u0442\u0430\u0432\u043a\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u044b<\/p>\n<\/li>\n<li>\n<p>\u0412\u0441\u0442\u0430\u0432\u043a\u0430 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439<\/p>\n<\/li>\n<li>\n<p>\u0412\u0441\u0442\u0430\u0432\u043a\u0430 \u0433\u0438\u043f\u0435\u0440\u0441\u0441\u044b\u043b\u043e\u043a<\/p>\n<\/li>\n<li>\n<p>\u0412\u0441\u0442\u0430\u0432\u043a\u0430 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439<\/p>\n<\/li>\n<li>\n<p>\u0412\u0441\u0442\u0430\u0432\u043a\u0430 \u043e\u0433\u043b\u0430\u0432\u043b\u0435\u043d\u0438\u044f<\/p>\n<\/li>\n<li>\n<p>\u0412\u0441\u0442\u0430\u0432\u043a\u0430 \u0441\u043f\u0438\u0441\u043a\u0430 \u043b\u0438\u0442\u0435\u0440\u0430\u0442\u0443\u0440\u044b<\/p>\n<p>\u0410 \u0442\u0435\u043f\u0435\u0440\u044c \u043e\u0431\u043e \u0432\u0441\u0435\u043c \u043f\u043e \u043f\u043e\u0440\u044f\u0434\u043a\u0443.<\/p>\n<\/li>\n<\/ol>\n<p><strong>\u0412\u0441\u0442\u0430\u0432\u043a\u0430 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f<\/strong><\/p>\n<p>\u042d\u0442\u043e\u0442 \u043a\u0443\u0441\u043e\u043a LaTeX-\u043a\u043e\u0434\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442 \u0432\u0441\u0442\u0430\u0432\u043a\u0443 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0441 \u0438\u043c\u0435\u043d\u0435\u043c <strong>arch.png<\/strong><\/p>\n<pre><code> \\begin{figure}[h]     \\centering     \\includegraphics[width=0.99\\textwidth]{arch}     \\caption{Harvard architecture }     \\label{fig:mesh1} \\end{figure} <\/code><\/pre>\n<p>\u041c\u043e\u0436\u043d\u043e \u0434\u0430\u0436\u0435 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043c\u0430\u043a\u0440\u043e\u0444\u0443\u043d\u043a\u0446\u0438\u044e \u0434\u043b\u044f \u0432\u0441\u0442\u0430\u0432\u043a\u0438 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438 \u043e\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u0447\u043a\u043e\u0439. \u0412\u043e\u0442 \u0442\u0430\u043a: <strong>INSERT_PIX(  arch  ,   Harvard architecture  )<\/strong>. LaTeX \u0441\u0430\u043c \u043d\u0430\u0439\u0434\u0435\u0442 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438\u0439 \u043f\u043e \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u0443 \u0444\u0430\u0439\u043b \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0432 \u043f\u0440\u043e\u0438\u043d\u0434\u0435\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043f\u0443\u0442\u044f\u0445.<\/p>\n<pre><code class=\"cpp\"> #define INSERT_PIX(FILE_NAME,HINT )  \\   \\begin{figure}[h]  \\     \\centering   \\     \\includegraphics[width=0.99\\textwidth]{FILE_NAME}   \\     \\caption{HINT }  \\     \\label{fig:FILE_NAME}  \\   \\end{figure}     <\/code><\/pre>\n<p><strong>\u041a\u0430\u043a \u043d\u0430 Latex \u043e\u0444\u043e\u0440\u043c\u0438\u0442\u044c \u0446\u0438\u0442\u0430\u0442\u0443?<\/strong><\/p>\n<p>\u0412 \u043b\u044e\u0431\u043e\u043c \u0442\u0435\u043a\u0441\u0442\u0435 \u043e\u0442 \u0441\u043b\u0443\u0447\u0430\u044f \u043a \u0441\u043b\u0443\u0447\u0430\u044e \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u0446\u0438\u0442\u0430\u0442\u044b. \u041d\u0430 LaTeX \u044d\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0442\u0430\u043a:<\/p>\n<pre><code class=\"erlang\">\\begin{quote}     \u0412 \u043b\u044e\u0431\u043e\u043c \u0434\u0435\u043b\u0435 \u0432\u0430\u0436\u043d\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u044b.      \u0418\u043d\u0430\u0447\u0435 \u0432\u0442\u043e\u0440\u043e\u0441\u0442\u0435\u043f\u0435\u043d\u043d\u043e\u0435, \u0445\u043e\u0442\u044f \u0438 \u043d\u0443\u0436\u043d\u043e\u0435, \u043e\u0442\u043d\u0438\u043c\u0435\u0442 \u0432\u0441\u0435 \u0441\u0438\u043b\u044b      \u0438 \u043d\u0435 \u0434\u0430\u0441\u0442 \u0434\u043e\u0439\u0442\u0438 \u0434\u043e \u0433\u043b\u0430\u0432\u043d\u043e\u0433\u043e. \\end{quote} <\/code><\/pre>\n<p><strong>\u041a\u0430\u043a \u043e\u0444\u043e\u0440\u043c\u0438\u0442\u044c \u0432\u0441\u0442\u0430\u0432\u043a\u0443 \u043a\u0443\u0441\u043a\u0430 \u0441 \u043a\u043e\u0434\u043e\u043c?<\/strong><\/p>\n<p>\u0412\u0441\u0442\u0430\u0432\u043a\u0430 \u043b\u0438\u0441\u0442\u0438\u043d\u0433\u0430 \u0441 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c:<\/p>\n<pre><code class=\"cpp\">\\begin{lstlisting}[label=some-code,caption=\u041f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u0439 if]              int ret = NVRAM_Get(ID_IPv4_ROLE, tmp, 1, &amp;tmp_len);     if (MM_RET_CODE_OK != ret) {         return ERROR_CODE_HARDWARE_FAULT;     }  \\end{lstlisting}<\/code><\/pre>\n<p>\u0415\u0441\u043b\u0438 \u0432\u044b \u043f\u0438\u0448\u0435\u0442\u0435 \u0443\u0447\u0435\u0431\u043d\u0438\u043a \u043f\u043e \u0421\u0438 \u0438 \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0435 \u043b\u0438\u0441\u0442\u0438\u043d\u0433\u0438 \u0441 \u0421\u0438-\u043a\u043e\u0434\u043e\u043c \u0432 LaTex \u043a\u043e\u0434, \u0442\u043e \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 \u0431\u0443\u0434\u0435\u0442 \u043f\u044b\u0442\u0430\u0442\u044c\u0441\u044f \u0432\u0441\u0442\u0430\u0432\u0438\u0442\u044c include-\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u043d\u0435\u0442, \u0438 \u0432\u044b\u0434\u0430\u0441\u0442 \u043e\u0448\u0438\u0431\u043a\u0443. \u0412\u0441\u0451 \u0437\u0430\u043a\u043b\u0438\u043d\u0438\u0442. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u0440\u0438\u0434\u0435\u0442\u0441\u044f \u0443\u0431\u0438\u0440\u0430\u0442\u044c \u0441\u0438\u043c\u0432\u043e\u043b # \u0438\u0437 \u043b\u0438\u0441\u0442\u0438\u043d\u0433\u043e\u0432 \u0441 \u043a\u043e\u0434\u043e\u043c \u0438 \u043f\u0438\u0441\u0430\u0442\u044c \u0441\u043f\u0440\u0430\u0432\u043a\u0443 (*), \u0447\u0442\u043e \u043d\u0430\u0434\u043e \u043f\u043e\u0434\u0440\u0430\u0437\u0443\u043c\u0435\u0432\u0430\u0442\u044c \u043f\u0435\u0440\u0432\u044b\u043c \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u043c \u0432 \u0441\u0442\u0440\u043e\u043a\u0435 \u0441\u0438\u043c\u0432\u043e\u043b #.<\/p>\n<p><strong>\u041a\u0430\u043a \u043e\u0444\u043e\u0440\u043c\u0438\u0442\u044c \u0442\u0430\u0431\u043b\u0438\u0446\u0443?<\/strong><\/p>\n<p>\u0422\u0430\u0431\u043b\u0438\u0446\u044b \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e \u0432\u0441\u0442\u0440\u0435\u0447\u0430\u044e\u0442\u0441\u044f \u0432 \u0442\u0435\u043a\u0441\u0442\u0430\u0445. \u0412\u043e\u0442 \u0442\u0430\u043a \u043e\u043d\u0438 \u043f\u0438\u0448\u0443\u0442\u0441\u044f \u043d\u0430 LaTeX:<\/p>\n<pre><code>\\begin{tabular} {ll}     \u0410\u043a\u0440\u043e\u043d\u0438\u043c &amp; \u0420\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u0430 \\\\     \\hline     TUI &amp; Text-based user interface \\\\     CLI &amp; command-line interface \\\\     UART &amp; universal asynchronous receiver \/ transmitter \\\\     JTAG &amp; Joint Test Action Group \\\\     LED &amp; light-emitting diode \\\\     CIC &amp; Cascaded integrator\u2013comb \\\\ \\end{tabular} <\/code><\/pre>\n<p><strong>\u041a\u0430\u043a \u043e\u0444\u043e\u0440\u043c\u0438\u0442\u044c \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 &#171;\u0447\u0438\u0432\u043e-\u043b\u0438\u0431\u043e&#187;?<\/strong><\/p>\n<p>\u0412 \u043b\u044e\u0431\u044b\u0445 \u0442\u0435\u043a\u0441\u0442\u0430\u0445 \u0442\u043e \u0442\u0430\u043c \u0442\u043e \u0437\u0434\u0435\u0441\u044c \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e \u043f\u043e\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0441\u043f\u0438\u0441\u043a\u0438 \u0432\u0441\u044f\u0447\u0435\u0441\u043a\u0438\u0445 \u043f\u0443\u043d\u043a\u0442\u0438\u043a\u043e\u0432. \u0412 LaTex \u044d\u0442\u043e \u043e\u0444\u043e\u0440\u043c\u043b\u044f\u0435\u0442\u0441\u044f \u0442\u0430\u043a:<\/p>\n<pre><code class=\"elixir\">\\begin{enumerate}     \\item One     \\item Two     \\item Three \\end{enumerate}<\/code><\/pre>\n<p><strong>\u041a\u0430\u043a \u043e\u0444\u043e\u0440\u043c\u0438\u0442\u044c \u0433\u0438\u043f\u0435\u0440\u0441\u0441\u044b\u043b\u043a\u0438?<\/strong><\/p>\n<p>\u0412 \u0433\u0438\u043f\u0435\u0440\u0441\u0441\u044b\u043b\u043a\u0438 \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u0442\u043e\u0447\u0438\u0442\u044c \u0441\u043f\u0438\u0441\u043e\u043a \u043b\u0438\u0442\u0435\u0440\u0430\u0442\u043e\u0440\u044b:<\/p>\n<pre><code class=\"cpp\">\\section{\u0413\u0438\u043f\u0435\u0440\u0441\u0441\u044b\u043b\u043a\u0438}  \\begin{enumerate}   \\item \\href{https:\/\/habr.com\/ru\/post\/673522\/}{\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 ToolChain(\u0430) \u0434\u043b\u044f Win10+GCC+\u0421+Makefile+ARM Cortex-Mx+GDB}   \\item \\href{https:\/\/habr.com\/ru\/post\/111691\/}{\u041f\u0440\u0438\u043c\u0435\u0440 Makefile}   \\item \\href{https:\/\/www.opennet.ru\/docs\/RUS\/gnumake\/}{\u042d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 GNU Make}   \\item \\href{https:\/\/habr.com\/ru\/articles\/857416}{\u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u041f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u0438\u0437 Make \u0421\u043a\u0440\u0438\u043f\u0442\u0430}   \\item \\href{https:\/\/www.youtube.com\/watch?v=HEEVxZ4rBCo}{CI\/CD \u043f\u0440\u043e\u0448\u0438\u0432\u043e\u043a \u0434\u043b\u044f \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u043e\u0432 \u0432 Wiren Board ( \u043d\u0430\u0447\u0430\u043b\u043e \u043d\u0430 25:20)}   \\item \\href{https:\/\/www.youtube.com\/watch?v=vmuO4bHjTSo&amp;t=7s}{\u041a\u043e\u043d\u0432\u0435\u0435\u0440\u0443\u043c 30: \u042d\u0432\u043e\u043b\u044e\u0446\u0438\u044f \u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f \u0434\u043b\u044f embedded \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438}   \\item \\href{https:\/\/habr.com\/ru\/post\/47513\/}{GNU Make \u043c\u043e\u0436\u0435\u0442 \u0431\u043e\u043b\u044c\u0448\u0435 \u0447\u0435\u043c \u0442\u044b \u0434\u0443\u043c\u0430\u0435\u0448\u044c} \\end{enumerate} <\/code><\/pre>\n<p><strong>\u041a\u0430\u043a \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 CPP?<\/strong><\/p>\n<p>\u041a\u0430\u043a \u043c\u043d\u043e\u0433\u0438\u043c \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e, \u0421\u0438-\u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0435\u0441\u043f\u043e\u043a\u043e\u0439\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u043b\u044e\u0431\u043e\u0433\u043e \u0434\u0440\u0443\u0433\u043e\u0433\u043e \u044f\u0437\u044b\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f (\u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0421\u0438) \u0438\u043b\u0438 \u043b\u044e\u0431\u043e\u0433\u043e \u0434\u0440\u0443\u0433\u043e\u0433\u043e \u0442\u0435\u043a\u0441\u0442\u0430 \u0432 \u043e\u0431\u0449\u0435\u043c. \u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430 \u0434\u0430\u0436\u0435 \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0438 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0435 \u043a\u043b\u044e\u0447\u0438 \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e. \u0412\u043e\u0442 \u0442\u0430\u043a\u043e\u0439 \u043f\u0443\u0447\u043e\u043a \u043e\u043f\u0446\u0438\u0439 \u043d\u0430\u0434\u043e \u043f\u043e\u0434\u0430\u0442\u044c \u043d\u0430 \u0443\u0442\u0438\u043b\u0438\u0442\u0443 cpp \u0434\u043b\u044f \u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u0438 \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430:<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<td data-colwidth=\"177\" width=\"177\">\n<p align=\"left\"><strong>\u041e\u043f\u0446\u0438\u044f (\u043a\u043b\u044e\u0447 CLI)<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"left\"><strong>\u041f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u0435<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"left\"><strong>\u041f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u0435<\/strong><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"177\" width=\"177\">\n<p align=\"left\">-E<\/p>\n<\/td>\n<td>\n<p align=\"left\">textual output from the preprocessor will be in UTF-8.<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0417\u0430\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0442\u044c \u0432 \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u043a\u0435 UTF-8<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"177\" width=\"177\">\n<p align=\"left\">-P<\/p>\n<\/td>\n<td>\n<p align=\"left\">Inhibit generation of linemarkers<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0423\u0431\u0440\u0430\u0442\u044c \u043b\u0438\u0448\u043d\u0438\u0435 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0438 \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430. \u042d\u0442\u0430 \u043e\u043f\u0446\u0438\u044f \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u043d\u0435 \u0421\u0438 \u043a\u043e\u0434\u0430<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"177\" width=\"177\">\n<p align=\"left\">-C<\/p>\n<\/td>\n<td>\n<p align=\"left\">Do not discard comments<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041d\u0435 \u043e\u0442\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0442\u044c \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0438<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"177\" width=\"177\">\n<p align=\"left\"><strong>-traditional-cpp<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"left\">Traditional Mode <\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041d\u0435 \u0443\u0434\u0430\u043b\u044f\u0442\u044c \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0438\u0434\u0443\u0449\u0438\u0435 \u043f\u0440\u043e\u0431\u0435\u043b\u044b  <\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"177\" width=\"177\">\n<p align=\"left\">-nostdinc<\/p>\n<\/td>\n<td>\n<p align=\"left\">Do not search the standard system directories for header files<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041d\u0435 \u0438\u0441\u043a\u0430\u0442\u044c \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u0447\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b \u0432 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0445 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f\u0445<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"177\" width=\"177\">\n<p align=\"left\">-fexec-charset=UTF-8<\/p>\n<\/td>\n<td>\n<p align=\"left\">Set the execution character set<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0417\u0430\u0434\u0430\u0442\u044c \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432 \u0432 \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u043a\u0435 UTF-8<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"177\" width=\"177\">\n<p align=\"left\">-DHAS_XXX<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\u041f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u043c\u0430\u043a\u0440\u043e\u0441 HAS_XXX \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"177\" width=\"177\">\n<p align=\"left\">-undef<\/p>\n<\/td>\n<td>\n<p align=\"left\">Do not predefine any system-specific or GCC-specific macros. The standard<br \/> predefined macros remain defined.<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043c\u0430\u043a\u0440\u043e\u0441\u044b \u043e\u0442 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 \u0421\u0438 \u043a\u043e\u0434\u0430. \u041e\u043d\u0438 \u0442\u0443\u0442 \u043d\u0435 \u043d\u0443\u0436\u043d\u044b, \u0442\u0430\u043a \u043a\u0430\u043a \u043d\u0435\u0442 \u0441\u0430\u043c\u043e\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u043e\u0433\u043e \u043a\u043e\u0434\u0430.<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>\u041f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043e\u043c cpp \u043c\u043e\u0436\u043d\u043e \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c \u0421\u0438-\u043a\u043e\u0434, \u043d\u043e \u0442\u0430\u043a\u0436\u0435 \u0438 \u0432\u0435\u0440\u0441\u0442\u0430\u0442\u044c LaTeX, \u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u0430\u0442\u044c \u0433\u0440\u0430\u0444\u044b \u0432 GraphViz, \u043f\u0435\u0440\u0435\u043a\u0440\u0430\u0438\u0432\u0430\u0442\u044c Assembler \u043a\u043e\u0434, \u043f\u0435\u0440\u0435\u0442\u0430\u0441\u043e\u0432\u044b\u0432\u0430\u0442\u044c LD \u0441\u043a\u0440\u0438\u043f\u0442\u044b \u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u0449\u0438\u043a\u0430 \u0438 \u0432\u0441\u0451, \u043d\u0430 \u0447\u0442\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u0430\u043c \u0445\u0432\u0430\u0442\u0438\u0442 \u0444\u0430\u043d\u0442\u0430\u0437\u0438\u0438. \u0421\u0438\u0448\u043d\u044b\u0439 \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 &#8212; \u044d\u0442\u043e \u0434\u0443\u0431\u043e\u0432\u0430\u044f \u0432\u0435\u0449\u044c.<\/p>\n<p><strong>\u0421\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f<\/strong><\/p>\n<p>\u0412\u043e\u0442 \u0442\u0430\u043a \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u043f\u0430\u043f\u043a\u0430 \u0441 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0430\u043c\u0438 \u0443\u0447\u0435\u0431\u043d\u0438\u043a\u0430. \u041d\u0430 \u043a\u0430\u0436\u0434\u0443\u044e \u0433\u043b\u0430\u0432\u0443 \u043f\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0439 \u043f\u0430\u043f\u043e\u0447\u043a\u0435.<\/p>\n<pre><code>&gt;    C:\\cygwin64\\bin\\tree.exe . \u251c\u2500\u2500 about_author \u2502\u00a0\u00a0 \u251c\u2500\u2500 about_author.mk \u2502\u00a0\u00a0 \u251c\u2500\u2500 about_author.texi \u2502\u00a0\u00a0 \u2514\u2500\u2500 pix \u251c\u2500\u2500 attributes_of_good_firmware \u2502\u00a0\u00a0 \u251c\u2500\u2500 attributes_of_good_firmware.mk \u2502\u00a0\u00a0 \u251c\u2500\u2500 attributes_of_good_firmware.texi \u2502\u00a0\u00a0 \u2514\u2500\u2500 pix \u2502\u00a0\u00a0     \u251c\u2500\u2500 free.png \u2502\u00a0\u00a0     \u251c\u2500\u2500 nano.png \u2502\u00a0\u00a0     \u2514\u2500\u2500 ubolx_od.png \u251c\u2500\u2500 bibliography \u2502\u00a0\u00a0 \u251c\u2500\u2500 bibliography.mk \u2502\u00a0\u00a0 \u251c\u2500\u2500 bibliography.texi \u2502\u00a0\u00a0 \u2514\u2500\u2500 pix \u251c\u2500\u2500 good_swc \u2502\u00a0\u00a0 \u251c\u2500\u2500 good_swc.mk \u2502\u00a0\u00a0 \u251c\u2500\u2500 good_swc.texi \u2502\u00a0\u00a0 \u2514\u2500\u2500 pix \u2502\u00a0\u00a0     \u251c\u2500\u2500 arch.png \u2502\u00a0\u00a0     \u251c\u2500\u2500 folder.png \u2502\u00a0\u00a0     \u251c\u2500\u2500 list.png \u2502\u00a0\u00a0     \u251c\u2500\u2500 reg.png \u2502\u00a0\u00a0     \u2514\u2500\u2500 scan.png \u251c\u2500\u2500 latex_misc.texi \u251c\u2500\u2500 library.mk \u251c\u2500\u2500 preamble.texi \u2514\u2500\u2500 why_make     \u251c\u2500\u2500 pix     \u2502\u00a0\u00a0 \u251c\u2500\u2500 IAR.png     \u2502\u00a0\u00a0 \u251c\u2500\u2500 diff.png     \u2502\u00a0\u00a0 \u251c\u2500\u2500 pc.png     \u2502\u00a0\u00a0 \u251c\u2500\u2500 perf.png     \u2502\u00a0\u00a0 \u251c\u2500\u2500 reactor.png     \u2502\u00a0\u00a0 \u2514\u2500\u2500 spher.png     \u251c\u2500\u2500 why_make.mk     \u2514\u2500\u2500 why_make.texi  12 directories, 33 files  &gt;<\/code><\/pre>\n<p><strong>\u041a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 Latex \u0444\u0430\u0439\u043b<\/strong><\/p>\n<p>\u0410 \u044d\u0442\u043e, \u0433\u043e\u0441\u043f\u043e\u0434\u0430, \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 LaTeX \u0444\u0430\u0439\u043b, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0439, \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u043a\u043e\u043d\u0444\u0438\u0433\u0430, \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 \u0438 \u0432\u043c\u043e\u043d\u0442\u0438\u0440\u0443\u0435\u0442 \u0432\u0441\u0435 \u043a\u0443\u0441\u043e\u0447\u043a\u0438 \u0433\u043b\u0430\u0432.<\/p>\n<pre><code class=\"cpp\">\\documentclass[a4paper, 16pt]{book}  #include \"preamble.texi\"  \\begin{document}  \\title{ \\textbf{ \u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0431\u0440\u043e\u0448\u044e\u0440\u044b }} \\author{aabzel} \\date{\\today} \\maketitle \\tableofcontents  #ifdef HAS_ABOUT_AUTHOR #include \"about_author.texi\" #endif  #ifdef HAS_ATTRIBUTES_OF_GOOD_FIRMWARE #include \"attributes_of_good_firmware.texi\" #endif  #ifdef HAS_GOOD_SWC #include \"good_swc.texi\" #endif  #ifdef HAS_WHY_MAKE #include \"why_make.texi\" #endif  #ifdef HAS_BIBLIOGRAPHY #include \"bibliography.texi\" #endif  \\end{document} <\/code><\/pre>\n<p>\u043f\u0440\u0435\u0430\u043c\u0431\u0443\u043b\u0430 preamble.texi \u0443 \u043c\u0435\u043d\u044f \u0432\u043e\u0442 \u0442\u0430\u043a\u0430\u044f<\/p>\n<pre><code class=\"dart\"> \\usepackage[T2A]{fontenc} \\usepackage{cmap} % \u0434\u043b\u044f \u043a\u043e\u043f\u0438\u043f\u0430\u0441\u0442\u044b \u0438\u0437 PDF \\usepackage{uarial} \\renewcommand{\\familydefault}{\\sfdefault} \\usepackage{hyperref} \\usepackage{graphicx} \\usepackage[utf8]{inputenc} \\usepackage[russian]{babel} \\usepackage{listings} \\usepackage{listingsutf8} \\usepackage[margin=0.6in]{geometry} \\usepackage{indentfirst} % \u0434\u043b\u044f \u0440\u0443\u0441\u0441\u043a\u0438\u0445 \u043a\u0440\u0430\u0441\u043d\u044b\u0445 \u0441\u0442\u0440\u043e\u043a \\geometry{top=20mm}  \\setlength{\\parindent}{1.25cm}  \\sffamily \\usepackage[fontsize=14.0pt]{fontsize} \\renewcommand{\\sfdefault}{cmss}<\/code><\/pre>\n<p>\u0421\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0432\u044b\u043d\u0435\u0441 \u043f\u0440\u0435\u0430\u043c\u0431\u0443\u043b\u0443 \u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 *.texi \u0444\u0430\u0439\u043b, \u0447\u0442\u043e\u0431\u044b \u0431\u0435\u0437 \u043f\u0440\u0438\u0447\u0438\u043d\u044b \u043d\u0435 \u043c\u043e\u0437\u043e\u043b\u0438\u0442\u044c \u0433\u043b\u0430\u0437\u0430. <\/p>\n<p>\u041e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 \u0436\u0435 *.texi \u0444\u0430\u0439\u043b \u0434\u043b\u044f \u0433\u043b\u0430\u0432\u044b \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0432\u043e\u0442 \u0442\u0430\u043a:<\/p>\n<pre><code class=\"css\">\\graphicspath{ {PATH_CHAPTER_X_DIR\/pix} } \\chapter{\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0433\u043b\u0430\u0432\u044b} \u0422\u0435\u043a\u0441\u0442 \u0433\u043b\u0430\u0432\u044b <\/code><\/pre>\n<p>\u0422\u0443\u0442 \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043c\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 \u0432\u0441\u0442\u0430\u0432\u0438\u0442 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e PATH_CHAPTER_X_DIR, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0443\u043a\u0430\u0436\u0435\u0442 \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u044b\u0439 \u043f\u0443\u0442\u044c \u043a \u044d\u0442\u043e\u0439 \u043f\u0430\u043f\u043a\u0435. \u0421\u0430\u043c \u043f\u0443\u0442\u044c \u0440\u0430\u0441c\u0447\u0438\u0442\u0430\u0435\u0442 make \u0441\u043a\u0440\u0438\u043f\u0442. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043a\u0443\u0434\u0430 \u0431\u044b \u0432\u044b \u043d\u0438 \u043a\u043b\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043b\u0438 \u0438\u0437 GIT \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0438 LaTeX, \u043f\u0443\u0442\u044c \u043a \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430\u043c \u0432\u0441\u0442\u0430\u043d\u0435\u0442 \u0432  \u043d\u0443\u0436\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438. \u0412\u044b \u0443\u0436\u0435 \u043b\u044e\u0431\u0438\u0442\u0435 \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440?<\/p>\n<p><strong>\u0421\u043a\u0440\u0438\u043f\u0442\u044b MAKE \u0444\u0430\u0439\u043b\u043e\u0432<\/strong><\/p>\n<p>\u042d\u0442\u043e \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 \u0444\u0430\u0439\u043b<\/p>\n<pre><code class=\"bash\">ARTIFACT_NAME=main_generated FINAL_LATEX_FILE =$(ARTIFACT_NAME).tex ARTIFACT_DOCS=$(ARTIFACT_NAME).docx ARTIFACT_PDF=$(ARTIFACT_NAME).pdf   BUILD_DIR=artifacts  CPP_OPT += -undef CPP_OPT += -E CPP_OPT += -P CPP_OPT += -C CPP_OPT += -fexec-charset=UTF-8 CPP_OPT += -traditional-cpp CPP_OPT += -nostdinc CPP_OPT += $(OPT)  PANDOC_OPT += -f latex  PANDOC_OPT += -t docx  $(ARTIFACT_DOCS) : $(FINAL_LATEX_FILE) pandoc -s $^ $(PANDOC_OPT) -o $@  $(FINAL_LATEX_FILE):$(SOURCES_DOT) $(BUILD_DIR) $(info Preproc...) cpp main.texi  $(CPP_OPT) $(INCDIR) -E -o $@  $(ARTIFACT_PDF): $(FINAL_LATEX_FILE) $(BUILD_DIR) $(info generate_pdf...) .\/latex.bat $(FINAL_LATEX_FILE)  move_artifacts: $(BUILD_DIR) mv $(ARTIFACT_DOCS) $(BUILD_DIR)\/$(ARTIFACT_DOCS) mv $(ARTIFACT_PDF) $(BUILD_DIR)\/$(ARTIFACT_PDF)  all: $(ARTIFACT_PDF) $(ARTIFACT_DOCS) move_artifacts $(info All)  $(BUILD_DIR): mkdir -p $@  clean: $(info clean) rm $(ART_PDV) rm $(FINAL_LATEX_FILE) -rm -fR $(BUILD_DIR)  include $(DOCUMENTATION_DIR)\/library\/library.mk<\/code><\/pre>\n<p>\u042d\u0442\u043e \u0444\u0430\u0439\u043b library.mk<\/p>\n<pre><code class=\"bash\">$(info LIBRARY_MK_INC=$(LIBRARY_MK_INC) )  ifneq ($(LIBRARY_MK_INC),Y)     LIBRARY_MK_INC=Y      LIBRARY_DIR=$(DOCUMENTATION_DIR)\/library      INCDIR += -I$(LIBRARY_DIR)     OPT += -DHAS_LIBRARY      ifeq ($(ABOUT_AUTHOR),Y)         include $(LIBRARY_DIR)\/about_author\/about_author.mk     endif      ifeq ($(CHAPTER_1),Y)         include $(LIBRARY_DIR)\/chapter_1\/chapter_1.mk     endif          ifeq ($(CHAPTER_2),Y)         include $(LIBRARY_DIR)\/chapter_2\/chapter_2.mk     endif      ifeq ($(CHAPTER_3),Y)         include $(LIBRARY_DIR)\/chapter_3\/chapter_3.mk     endif         ifeq ($(BIBLIOGRAPHY),Y)         include $(LIBRARY_DIR)\/bibliography\/bibliography.mk    endif  endif<\/code><\/pre>\n<p>\u041d\u0443 \u0438 make-\u0444\u0430\u0439\u043b \u0434\u043b\u044f \u0433\u043b\u0430\u0432\u044b. \u0422\u0443\u0442 \u0432\u043c\u0435\u0441\u0442\u043e CHAPTER_X \u0438 chapter_x \u0432\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u043e\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u0435 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0441\u0432\u043e\u0435\u0439 \u0433\u043b\u0430\u0432\u044b.<\/p>\n<pre><code class=\"bash\">$(info CHAPTER_X_MK_INC=$(CHAPTER_X_MK_INC) )  ifneq ($(CHAPTER_X_MK_INC),Y)     CHAPTER_X_MK_INC=Y      CHAPTER_X_DIR=$(LIBRARY_DIR)\/chapter_x     #@echo $(error CHAPTER_X_DIR=$(CHAPTER_X_DIR))      INCDIR += -I$(CHAPTER_X_DIR)     OPT += -DHAS_CHAPTER_X_DIR     OPT += -DHAS_FOREIGN_AUTHORS      OPT += -DPATH_CHAPTER_X_DIR=$(CHAPTER_X_DIR) endif<\/code><\/pre>\n<p>\u0412 \u0444\u0430\u0439\u043b\u0435 <strong>config.mk<\/strong> \u0432\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u0434\u0435\u043a\u043b\u0430\u0440\u0430\u0442\u0438\u0432\u043d\u043e \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u0442\u0435, \u043a\u0430\u043a\u0438\u0435 \u0433\u043b\u0430\u0432\u044b \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u0432 \u0432\u0430\u0448\u0443 \u043a\u043d\u0438\u0433\u0443, \u0430 \u043a\u0430\u043a\u0438\u0435 \u0432\u044b\u043f\u0438\u043b\u0438\u0432\u0430\u0442\u044c:<\/p>\n<pre><code class=\"bash\"> ABOUT_AUTHOR=Y CHAPTER_1=N CHAPTER_2=Y CHAPTER_3=N BIBLIOGRAPHY=Y <\/code><\/pre>\n<p>\u0418, \u043d\u0430\u043a\u043e\u043d\u0435\u0446, \u0441\u0430\u043c <strong>Makefile<\/strong>. \u041a\u0430\u043a \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043c\u0435\u0442\u0438\u0442\u044c, \u0432 \u044f\u0437\u044b\u043a\u0435 make \u0442\u043e\u0436\u0435 \u0435\u0441\u0442\u044c \u0441\u0432\u043e\u0439 \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 &#8212; \u043a\u043e\u043c\u0430\u043d\u0434\u0430 include<\/p>\n<pre><code class=\"bash\">PROJECT_PATH:=$(dir $(realpath $(lastword $(MAKEFILE_LIST)))) DOCUMENTATION_DIR:=$(PROJECT_PATH)..\/..\/..\/docs  PROJECT_PATH:=$(subst \/cygdrive\/c\/,C:\/,$(PROJECT_PATH)) DOCUMENTATION_DIR:=$(subst \/cygdrive\/c\/,C:\/,$(DOCUMENTATION_DIR))  INCDIR += -I$(PROJECT_PATH) INCDIR += -I$(WORKSPACE_LOC)  include $(PROJECT_PATH)config.mk include $(DOCUMENTATION_DIR)\/docs.mk include $(DOCUMENTATION_DIR)\/make_scripts\/typeset_book.mk  <\/code><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u0441\u0442\u0430\u0435\u0442\u0441\u044f \u0434\u0437\u044b\u043a\u043d\u0443\u0442\u044c \u043f\u043e *.bat-\u0441\u043a\u0440\u0438\u043f\u0442\u0443, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442 \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u0438 <strong>make -i all<\/strong> \u0438 \u0443 \u0432\u0430\u0441 \u0432 \u044d\u0442\u043e\u0439 \u043f\u0430\u043f\u043a\u0435 \u043f\u043e\u044f\u0432\u0438\u0442\u0441\u044f *.docx \u0438 \u0433\u043e\u0442\u043e\u0432\u044b\u0439 \u0434\u043b\u044f \u043f\u0435\u0447\u0430\u0442\u0438 *.pdf  \u0444\u0430\u0439\u043b. Easy!<\/p>\n<p>\u0414\u0435\u043c\u043e-\u0432\u0435\u0440\u0441\u0438\u044e \u043f\u043e\u043b\u0443\u0447\u0438\u0432\u0448\u0435\u0433\u043e\u0441\u044f \u0443\u0447\u0435\u0431\u043d\u0438\u043a\u0430 <a href=\"https:\/\/github.com\/aabzel\/Artifacts\/blob\/main\/mcu_book_m\/mcu_book.pdf\" rel=\"noopener noreferrer nofollow\">\u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0442\u0443\u0442 <\/a><\/p>\n<p><strong>\u0412\u0430\u0436\u043d\u044b\u0435 \u043c\u043e\u043c\u0435\u043d\u0442\u044b<\/strong><\/p>\n<p>1&#8212;\u0412\u0441\u0435 latex \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0438 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435 \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f UTF-8. \u0418\u043d\u0430\u0447\u0435 \u0443\u0442\u0438\u043b\u0438\u0442\u0430 <strong>pandoc<\/strong> \u0432\u0430\u043c \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 *.docs \u0441 \u043a\u0440\u0430\u043a\u043e\u0437\u044f\u0431\u0440\u0430\u043c\u0438.<\/p>\n<p><strong>\u0421\u0431\u043e\u0440\u043a\u0430 \u0443\u0447\u0435\u0431\u043d\u0438\u043a\u0430 \u043d\u0430 CI \u0441\u0435\u0440\u0432\u0435\u0440\u0435 Jenkins<\/strong><\/p>\n<p>\u0410 \u0442\u0435\u043f\u0435\u0440\u044c \u043f\u0440\u0438\u044f\u0442\u043d\u044b\u0439 \u0431\u043e\u043d\u0443\u0441. \u042d\u0442\u043e\u0442 make \u0441\u043a\u0440\u0438\u043f\u0442 \u0441\u0431\u043e\u0440\u043a\u0438 \u0443\u0447\u0435\u0431\u043d\u0438\u043a\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u044b \u043d\u0430\u043f\u0438\u0441\u0430\u043b\u0438 \u0441\u043a\u0430\u0440\u043c\u043b\u0438\u0432\u0430\u0435\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0443 \u0441\u0431\u043e\u0440\u043a\u0438 Jenkins \u0438 \u0441\u0435\u0440\u0432\u0435\u0440 \u0441\u0430\u043c \u043d\u0430\u043c \u0442\u0435\u043f\u0435\u0440\u044c \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c *.pdf(\u043a\u0443) \u043f\u043e\u0441\u043b\u0435 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043a\u043e\u043c\u043c\u0438\u0442\u0430 \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439. \u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438. \u0417\u0434\u043e\u0440\u043e\u0432\u043e! \u0412\u044b \u0443\u0436\u0435 \u043b\u044e\u0431\u0438\u0442\u0435 \u0441\u043a\u0440\u0438\u043f\u0442\u044b c\u0431\u043e\u0440\u043a\u0438?<\/p>\n<p>\u041f\u043b\u044e\u0441 \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u0441\u0435\u0440\u0432\u0435\u0440 \u0441\u0431\u043e\u0440\u043a\u0438 \u0434\u0430\u0441\u0442 \u0432\u0430\u043c \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u044e, \u0447\u0442\u043e \u0432\u044b \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u0437\u0430\u0431\u044b\u043b\u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0432 git \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/00b\/1a3\/363\/00b1a33637e751b78f85a362537e9c08.png\" width=\"725\" height=\"543\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/00b\/1a3\/363\/00b1a33637e751b78f85a362537e9c08.png\"\/><\/figure>\n<p><strong>\u0414\u043e\u0441\u0442\u043e\u0438\u043d\u0441\u0442\u0432\u0430 \u0442\u0430\u043d\u0434\u0435\u043c\u0430 LaTex + \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430<\/strong><\/p>\n<p>++ \u0412\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0435 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0443\u0435\u043c\u044b\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0441\u0431\u043e\u0440\u043a\u0438 \u0441\u0432\u043e\u0435\u0439 \u0431\u0440\u043e\u0448\u044e\u0440\u044b. \u0411\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u0441\u0431\u043e\u0440\u043a\u0438 \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0441\u0438\u043d\u0442\u0435\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0432\u0430\u0440\u0438\u0430\u0446\u0438\u0439 \u043e\u0434\u043d\u043e\u0433\u043e \u0438 \u0442\u043e\u0433\u043e \u0436\u0435 \u0443\u0447\u0435\u0431\u043d\u0438\u043a\u0430, \u043c\u0435\u043d\u044f\u044f \u043d\u0430\u0431\u043e\u0440 \u0433\u043b\u0430\u0432 \u0438 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u0435, \u043f\u0440\u043e\u0441\u0442\u043e \u043c\u0430\u043d\u0438\u043f\u0443\u043b\u0438\u0440\u0443\u044f \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u043c\u0438 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f \u0432 \u0441\u043a\u0440\u0438\u043f\u0442\u0430\u0445 \u0441\u0431\u043e\u0440\u043a\u0438 make. \u0412\u0430\u043c \u0443\u0436\u0435 \u043d\u0440\u0430\u0432\u0438\u0442\u0441\u044f \u0441\u0438c\u0442\u0435\u043c\u0430 \u0441\u0431\u043e\u0440\u043a\u0438 GNU Make?&#8230;<\/p>\n<p>++ \u0412\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0435 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u044b\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0439 \u0434\u043b\u044f \u0432\u0451\u0440\u0441\u0442\u043a\u0438 \u0441\u0432\u043e\u0435\u0433\u043e \u0434\u043e\u043a\u0430. \u0412\u0441\u0435 \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u044b\u0435 \u0443\u0442\u0438\u043b\u0438\u0442\u044b \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u044e\u0442\u0441\u044f.<\/p>\n<p>++ \u0411\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u044f \u0441\u043a\u0440\u0438\u043f\u0442\u0430\u043c \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u0435\u0440\u0441\u0442\u0430\u0442\u044c \u0443\u0447\u0435\u0431\u043d\u0438\u043a \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u0445 \u0441\u0431\u043e\u0440\u043a\u0438 \u0440\u044f\u0434\u043e\u043c \u0441 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0430\u043c\u0438. \u0412\u0441\u0451, \u0447\u0442\u043e \u043e\u0442 \u0432\u0430\u0441 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u044d\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043a\u043e\u043c\u0438\u0442 \u0432 git \u0438, \u0432\u0443\u0430\u043b\u044f, \u0443 \u0432\u0430\u0441 \u043d\u043e\u0432\u043e\u0435 \u0438\u0437\u0434\u0430\u043d\u0438\u0435 \u043a\u043d\u0438\u0433\u0438.<\/p>\n<p><strong>\u041d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043a\u0438 CPP<\/strong><\/p>\n<p>&#8212; \u0415\u0441\u043b\u0438 \u0432\u044b \u043f\u0438\u0448\u0435\u0442\u0435 \u0443\u0447\u0435\u0431\u043d\u0438\u043a \u043f\u043e \u0421\u0438 \u0438 \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0435 \u043b\u0438\u0441\u0442\u0438\u043d\u0433\u0438 \u0441 \u0421\u0438-\u043a\u043e\u0434\u043e\u043c \u0432 LaTex \u043a\u043e\u0434, \u0442\u043e \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 \u0431\u0443\u0434\u0435\u0442 \u043f\u044b\u0442\u0430\u0442\u044c\u0441\u044f \u0432\u0441\u0442\u0430\u0432\u0438\u0442\u044c include-\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u043d\u0435\u0442, \u0438 \u0432\u044b\u0434\u0430\u0441\u0442 \u043e\u0448\u0438\u0431\u043a\u0443. \u0412\u0441\u0451 \u0437\u0430\u043a\u043b\u0438\u043d\u0438\u0442. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u0440\u0438\u0434\u0435\u0442\u0441\u044f \u0443\u0431\u0438\u0440\u0430\u0442\u044c \u0441\u0438\u043c\u0432\u043e\u043b # \u0438\u0437 \u043b\u0438\u0441\u0442\u0438\u043d\u0433\u043e\u0432 \u0441 \u043a\u043e\u0434\u043e\u043c \u0438 \u043f\u0438\u0441\u0430\u0442\u044c \u0441\u043f\u0440\u0430\u0432\u043a\u0443, \u0447\u0442\u043e \u043d\u0430\u0434\u043e \u043f\u043e\u0434\u0440\u0430\u0437\u0443\u043c\u0435\u0432\u0430\u0442\u044c \u0442\u0443\u0442 \u0441\u0438\u043c\u0432\u043e\u043b #. \u00a0<\/p>\n<p>\u041e\u0434\u043d\u0430\u043a\u043e \u044d\u0442\u043e \u043b\u0435\u0433\u043a\u043e \u0440\u0435\u0448\u0430\u0435\u0442\u0441\u044f. \u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0435\u0449\u0451 \u0431\u043e\u043b\u0435\u0435 \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 c \u043b\u0430\u043a\u043e\u043d\u0438\u0447\u043d\u044b\u043c \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435\u043c: <strong>m4<\/strong>.  \u041d\u0430\u0434\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u0440\u0435\u0438\u043d\u043a\u0430\u0440\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 m4 \u0438\u0437 197x. \u0422\u0443\u0442 \u043e\u043d \u0434\u0430\u0436\u0435 \u0431\u043e\u043b\u0435\u0435 \u043f\u0440\u0438\u043c\u0435\u043d\u0438\u043c \u043d\u0435\u0436\u0435\u043b\u0438 cpp.<\/p>\n<p><strong>\u041a\u0430\u043a \u043c\u0438\u0433\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441 \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430 CPP \u043d\u0430 \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 M4?<\/strong><\/p>\n<p>\u0422\u0430\u043a \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0443\u0441\u043b\u043e\u0432\u043d\u0430\u044f \u0432\u0441\u0442\u0430\u0432\u043a\u0430 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0433\u043e \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u0447\u043d\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430:<\/p>\n<pre><code class=\"cpp\">----------------------------- CPP  #define HAS_FILE1  #ifdef HAS_FILE1     #include \"file1.txt\" #endif  ---------------------------- M4  define(HAS_FILE2)  ifdef(`HAS_FILE1', `include(`file1.txt')', )  -------------------------------<\/code><\/pre>\n<p>\u0422\u0430\u043a \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043c\u0430\u043a\u0440\u043e-\u043f\u043e\u0434\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0441 \u0437\u0430\u043c\u0435\u043d\u043e\u0439: <\/p>\n<pre><code class=\"cpp\">--------------------------------------------- CPP  #define INSERT_PIX(FILE_NAME,HINT, TOKEN )  \\   \\begin{figure}[h]  \\       \\centering   \\       \\includegraphics[width=0.99\\textwidth]{FILE_NAME}   \\       \\caption{HINT }  \\       \\label{fig:TOKEN}  \\   \\end{figure}  INSERT_PIX(IL_62.jpg, IL-62 cocpit, IL_62) INSERT_PIX(cat.jpg, \u0418\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u043a\u043e\u0442\u0430, cat) ------------------------------------ M4  define(INSERT_PIX, format(                            \\begin{figure}[h]                                \\centering                                 \\includegraphics[width=0.99\\textwidth]{%s}                                 \\caption{%s }                                \\label{fig:%s}                            \\end{figure}                          , $1, $2 , $3                           )            )  INSERT_PIX(IL_62.jpg, IL-62 cocpit, IL_62) INSERT_PIX(cat.jpg, \u0418\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u043a\u043e\u0442\u0430, cat)<\/code><\/pre>\n<p>\u0423\u0441\u043b\u043e\u0432\u043d\u0430\u044f \u0432\u0441\u0442\u0430\u0432\u043a\u0430 \u043a\u043e\u0434\u0430:<\/p>\n<pre><code class=\"cpp\"> ---------------------------------------------------------- CPP  #ifdef  HAS_FOREIGN_AUTHORS   \\item \u0426\u0438\u0444\u0440\u043e\u0432\u0430\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0441\u0438\u0433\u043d\u0430\u043b\u043e\u0432, \u0421\u0442\u0438\u0432\u0435\u043d \u0421\u043c\u0438\u0442,2018   \\item Extreme C,   Kamran Amini, 2019       \\item \u042f\u0437\u044b\u043a \u0421 \u0432 XXI \u0432\u0435\u043a\u0435,    \u0411\u0435\u043d \u041a\u043b\u0435\u043c\u0435\u043d\u0441 ,  2015    \\item \u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0442\u0440\u044e\u043a\u0438 \u0434\u043b\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u043e\u0432,   \u0413\u0435\u043d\u0440\u0438 \u0423\u043e\u0440\u0440\u0435\u043d-\u043c\u043b., 2014   \\item \u0410\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430 \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c,   \u0414\u0430\u043d\u0438\u044d\u043b\u0435 \u041b\u0430\u043a\u0430\u043c\u0435\u0440\u0430, 2023  #endif   ------------------------------------------------------------------- M4  ifdef(`HAS_FOREIGN_AUTHORS',   `   \\item \u0426\u0438\u0444\u0440\u043e\u0432\u0430\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0441\u0438\u0433\u043d\u0430\u043b\u043e\u0432, \u0421\u0442\u0438\u0432\u0435\u043d \u0421\u043c\u0438\u0442,2018   \\item Extreme C,   Kamran Amini, 2019       \\item \u042f\u0437\u044b\u043a \u0421 \u0432 XXI \u0432\u0435\u043a\u0435,    \u0411\u0435\u043d \u041a\u043b\u0435\u043c\u0435\u043d\u0441 ,  2015    \\item \u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0442\u0440\u044e\u043a\u0438 \u0434\u043b\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u043e\u0432,   \u0413\u0435\u043d\u0440\u0438 \u0423\u043e\u0440\u0440\u0435\u043d-\u043c\u043b., 2014   \\item \u0410\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430 \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c,   \u0414\u0430\u043d\u0438\u044d\u043b\u0435 \u041b\u0430\u043a\u0430\u043c\u0435\u0440\u0430, 2023    ' )  -------------------------------------------------------------------------------------------------------------------<\/code><\/pre>\n<p>\u041a\u0430\u043a \u0441\u0430\u043c\u0438 \u0432\u0438\u0434\u0438\u0442\u0435, \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 <strong>M4<\/strong> \u043c\u043e\u0436\u0435\u0442 \u0432\u0441\u0451 \u0442\u043e\u0436\u0435, \u0447\u0442\u043e \u0438 \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 CPP, \u043f\u0440\u0438\u0442\u043e\u043c \u0434\u0430\u0436\u0435 \u0431\u043e\u043b\u044c\u0448\u0435! M4 &#8212; \u044d\u0442\u043e \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0438\u0440\u0443\u0435\u043c\u044b\u0439 \u044f\u0437\u044b\u043a \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0442\u0438\u043f\u0430 <strong>awk<\/strong> \u0438\u043b\u0438 python. \u041f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 M4 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u0430\u0436\u0435 \u043a\u0430\u043a \u043a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0442\u043e\u0440 \u0444\u043e\u0440\u043c\u0443\u043b.<\/p>\n<p><strong>\u0418\u0442\u043e\u0433\u0438<\/strong><\/p>\n<p>\u0423\u0434\u0430\u043b\u043e\u0441\u044c \u043d\u0430\u0443\u0447\u0438\u0442\u044c\u0441\u044f \u0432\u0435\u0440\u0441\u0442\u0430\u0442\u044c \u0432\u044b\u0441\u043e\u043a\u043e\u0434\u043e\u0431\u0440\u043e\u0442\u043d\u0443\u044e \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044e \u043a\u043e\u0434\u043e\u043c \u043d\u0430 LaTeX. \u041e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0443\u0447\u0435\u0431\u043d\u0438\u043a\u0430, \u0432 \u043e\u0431\u0449\u0435\u043c-\u0442\u043e, \u043d\u0438\u0447\u0435\u043c \u043d\u0435 \u043e\u0442\u043b\u0438\u0447\u0430\u0435\u0442\u0441\u044f \u043e\u0442 \u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0441\u0431\u043e\u0440\u043a\u0438 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u044b\u0445 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c.<\/p>\n<p>\u0412\u0435\u0440\u043e\u044f\u0442\u043d\u043e \u0442\u0430\u043a\u043e\u0439 \u0442\u0430\u043d\u0434\u0435\u043c\u043d\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u0432\u0435\u0440\u0441\u0442\u043a\u0438 \u043e\u043a\u0430\u0436\u0435\u0442\u0441\u044f \u043f\u043e \u043d\u0443\u0442\u0440\u0443 \u043a\u0430\u043a \u0440\u0430\u0437 \u0442\u0435\u043c, \u043a\u0442\u043e \u043f\u0440\u0438\u0448\u0435\u043b \u043a \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438 \u0438\u0437 \u043a\u0430\u043a\u043e\u0433\u043e-\u0442\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u0421\u043e \u0441\u0432\u043e\u0438\u043c\u0438 \u043f\u043e\u0433\u0440\u0435\u043c\u0443\u0448\u043a\u0430\u043c\u0438.<\/p>\n<p>\u042d\u0442\u043e\u0442 \u0442\u0435\u043a\u0441\u0442 \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u0432\u0443\u0437\u043e\u0432\u0446\u0430\u043c \u0432\u0430\u0440\u0438\u0442\u044c \u0441\u0432\u043e\u0438 \u043a\u0443\u0440\u0441\u043e\u0432\u044b\u0435, \u0434\u0438\u043f\u043b\u043e\u043c\u043d\u044b\u0435 \u0440\u0430\u0431\u043e\u0442\u044b, \u043f\u0440\u0435\u0437\u0435\u043d\u0442\u0430\u0446\u0438\u0438 \u0438 \u0432\u0441\u044f\u0447\u0435\u0441\u043a\u0438\u0435 \u0442\u0435\u0437\u0438\u0441\u044b. \u0422\u0430\u043a\u0436\u0435 \u044d\u0442\u043e\u0442 \u0442\u0435\u043a\u0441\u0442 \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u043c \u043f\u0438\u0441\u0430\u0442\u0435\u043b\u044f\u043c, \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u0430\u043c \u043e\u0444\u043e\u0440\u043c\u043b\u044f\u0442\u044c \u043f\u0440\u0438\u044f\u0442\u043d\u044b\u0439 doc food.<\/p>\n<p>\u0412\u043e\u0442 \u0442\u0430\u043a, \u0433\u043e\u0441\u043f\u043e\u0434\u0430. \u0422\u0435\u043f\u0435\u0440\u044c \u0438 \u0412\u044b \u0443\u043c\u0435\u0435\u0442\u0435 \u0432\u0435\u0440\u0441\u0442\u0430\u0442\u044c \u0443\u0447\u0435\u0431\u043d\u0438\u043a\u0438 \u0438 \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u043f\u043e\u043a\u043e\u0439\u043d\u043e \u0443\u0447\u0438\u0442\u044c \u044d\u0442\u043e\u043c\u0443 \u0434\u0440\u0443\u0433\u0438\u0445.<\/p>\n<p><strong>\u0421\u043b\u043e\u0432\u0430\u0440\u044c<\/strong><\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<td data-colwidth=\"114\" width=\"114\">\n<p align=\"left\"><strong>\u0410\u043a\u0440\u043e\u043d\u0438\u043c<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"left\"><strong>\u0420\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u0430<\/strong><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"114\" width=\"114\">\n<p align=\"left\">CPP<\/p>\n<\/td>\n<td>\n<p align=\"left\">C PreProcessor<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"114\" width=\"114\">\n<p align=\"left\">pdf<\/p>\n<\/td>\n<td>\n<p align=\"left\">Portable Document Format<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"114\" width=\"114\">\n<p align=\"left\">UTF<\/p>\n<\/td>\n<td>\n<p align=\"left\">Unicode Transformation Format<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"114\" width=\"114\">\n<p align=\"left\">CLI<\/p>\n<\/td>\n<td>\n<p align=\"left\">Command-line interface<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"114\" width=\"114\">\n<p align=\"left\">GNU <\/p>\n<\/td>\n<td>\n<p align=\"left\">GNU\u2019s Not UNIX<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"114\" width=\"114\">\n<p align=\"left\">UNIX<\/p>\n<\/td>\n<td>\n<p align=\"left\">Uniplexed Information and Computing System<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p><strong>\u0421\u0441\u044b\u043b\u043a\u0438<\/strong><\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<td data-colwidth=\"50\" width=\"50\">\n<p align=\"left\"><strong>#<\/strong><\/p>\n<\/td>\n<td data-colwidth=\"596\" width=\"596\">\n<p align=\"left\"><strong>\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430<\/strong><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"50\" width=\"50\">\n<p align=\"left\">1<\/p>\n<\/td>\n<td data-colwidth=\"596\" width=\"596\">\n<p align=\"left\">Using the GNU Compiler Collection, Richard M. Stallman<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"50\" width=\"50\">\n<p align=\"left\">4<\/p>\n<\/td>\n<td data-colwidth=\"596\" width=\"596\">\n<p align=\"left\"><a href=\"https:\/\/www.opennet.ru\/man.shtml?topic=m4&amp;category=1&amp;russian=2\" rel=\"noopener noreferrer nofollow\">manual page for M4<\/a><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"50\" width=\"50\">\n<p align=\"left\">6<\/p>\n<\/td>\n<td data-colwidth=\"596\" width=\"596\">\n<p align=\"left\"><a href=\"https:\/\/www.opennet.ru\/\" rel=\"noopener noreferrer nofollow\">opennet<\/a><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"50\" width=\"50\">\n<p align=\"left\">5<\/p>\n<\/td>\n<td data-colwidth=\"596\" width=\"596\">\n<p align=\"left\"><a href=\"http:\/\/gnu.ist.utl.pt\/software\/m4\/manual\/\" rel=\"noopener noreferrer nofollow\">GNU m4- GNU macro processor<\/a><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"50\" width=\"50\">\n<p align=\"left\">2<\/p>\n<\/td>\n<td data-colwidth=\"596\" width=\"596\">\n<p align=\"left\"><a href=\"https:\/\/github.com\/aabzel\/Artifacts\/blob\/main\/mcu_book_m\/mcu_book.pdf\" rel=\"noopener noreferrer nofollow\">Demo \u0432\u0435\u0440\u0441\u0438\u044f \u043f\u043e\u043b\u0443\u0447\u0438\u0432\u0448\u0435\u0433\u043e\u0441\u044f \u0443\u0447\u0435\u0431\u043d\u0438\u043a\u0430<\/a>   <\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"50\" width=\"50\">\n<p align=\"left\">3<\/p>\n<\/td>\n<td data-colwidth=\"596\" width=\"596\">\n<p align=\"left\"><a href=\"https:\/\/www.youtube.com\/watch?v=yQzchRtGa5U&amp;list=PLAhpO6hd6pHZgbaWctKAlH4_8Hv1GI8D0\" rel=\"noopener noreferrer nofollow\">\u041a\u0443\u043b\u044c\u0442\u043e\u0432\u044b\u0439 \u043a\u0443\u0440\u0441 \u0432\u0438\u0434\u0435\u043e \u043b\u0435\u043a\u0446\u0438\u0439 \u043f\u043e LaTeX \u043e\u0442 \u042e\u0440\u0438\u044f \u0422\u0430\u0440\u0430\u0441\u0435\u0432\u0438\u0447\u0430<\/a><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"50\" width=\"50\">\n<p align=\"left\">7<\/p>\n<\/td>\n<td data-colwidth=\"596\" width=\"596\">\n<p align=\"left\"><a href=\"https:\/\/latex-tutorial.com\/tutorials\/\" rel=\"noopener noreferrer nofollow\">A simple guide to LaTeX \u2013 Step by Step<\/a><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"50\" width=\"50\">\n<p align=\"left\">8<\/p>\n<\/td>\n<td data-colwidth=\"596\" width=\"596\">\n<p align=\"left\"><a href=\"https:\/\/latex-tutorial.com\/tutorials\/figures\/\" rel=\"noopener noreferrer nofollow\">Insert an image in LaTeX \u2013 Adding a figure or picture<\/a><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p><strong>\u0412\u043e\u043f\u0440\u043e\u0441\u044b:<\/strong><\/p>\n<ol>\n<li>\n<p>\u0415\u0441\u0442\u044c \u043b\u0438 \u0441\u043f\u043e\u0441\u043e\u0431 \u043f\u043e\u043c\u0435\u0442\u0438\u0442\u044c \u0443\u0447\u0430\u0441\u0442\u043e\u043a \u043a\u043e\u0434\u0430 \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u0421\u0438 \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 \u0435\u0433\u043e \u043d\u0435 \u043c\u0435\u043d\u044f\u043b? \u0427\u0442\u043e\u0431\u044b \u043a\u0430\u043a \u0432\u0441\u0442\u0440\u0435\u0442\u0438\u043b\u0430\u0441\u044c \u0441\u0442\u0440\u043e\u043a\u0430 #include &#171;file.h&#187; \u0442\u0430\u043a \u0438 \u043e\u0441\u0442\u0430\u043b\u0430\u0441\u044c \u0432 \u043f\u0435\u0440\u0432\u043e\u0437\u0434\u0430\u043d\u043d\u043e\u043c \u0432\u0438\u0434\u0435.   (<span class=\"habrahidden\">\u0421\u043f\u043e\u0439\u043b\u0435\u0440: \u041d\u0438\u043a\u0430\u043a, \u043d\u0430\u0434\u043e \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u0442\u044c \u043d\u0430 \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 M4)<\/span><\/p>\n<\/li>\n<li>\n<p>\u041a\u0430\u043a \u0441\u0438\u0448\u043d\u044b\u043c \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0440\u043e\u0440\u043e\u043c cpp \u0432\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043a\u0443\u0441\u043e\u043a \u0442\u0435\u043a\u0441\u0442\u0430 \u043c\u0430\u043a\u0440\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u0435\u0439, \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u0432 \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u044b \u0441\u0442\u0440\u043e\u043a?  <span class=\"habrahidden\">(\u0421\u043f\u043e\u0439\u043b\u0435\u0440: \u041d\u0438\u043a\u0430\u043a, \u043d\u0430\u0434\u043e \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u0442\u044c \u043d\u0430  \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 M4)<\/span><\/p>\n<\/li>\n<li>\n<p>\u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u043b\u0438 \u0430\u043d\u0430\u043b\u043e\u0433 \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0439 \u0443\u0442\u0438\u043b\u0438\u0442\u044b clang-format \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f LaTeX \u043a\u043e\u0434\u0430?<\/p>\n<\/li>\n<li>\n<p>\u041a\u0430\u043a \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b LaTeX \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u043b \u0440\u0443\u0441\u0441\u043a\u0443\u044e \u0433\u0440\u0430\u043c\u043e\u0442\u043d\u043e\u0441\u0442\u044c?<\/p>\n<\/li>\n<\/ol>\n<\/div>\n<\/div>\n<\/div>\n<p><!----><!----><\/div>\n<p><!----><\/p>\n<div class=\"tm-article-poll-container\"><!--[--><\/p>\n<div class=\"tm-article-poll tm-article-poll_variant-bordered\">\n<div class=\"tm-notice tm-notice_positive tm-article-poll__notice\"><!----><\/p>\n<div class=\"tm-notice__inner\"><!----><\/p>\n<div class=\"tm-notice__content\" data-test-id=\"notice-content\"><!--[--><span>\u0422\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 \u043c\u043e\u0433\u0443\u0442 \u0443\u0447\u0430\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0432 \u043e\u043f\u0440\u043e\u0441\u0435. <a rel=\"nofollow\" href=\"\/kek\/v1\/auth\/habrahabr\/?back=\/ru\/articles\/859120\/&#038;hl=ru\">\u0412\u043e\u0439\u0434\u0438\u0442\u0435<\/a>, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430.<\/span><!--]--><\/div>\n<\/div>\n<\/div>\n<p><!--[--><\/p>\n<div class=\"tm-article-poll__header\">\u0412\u044b \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u043b\u0438 LaTeX \u043f\u0440\u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u0438 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438?<\/div>\n<div class=\"tm-article-poll__answers\"><!--[--><\/p>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent tm-article-poll__answer-percent_winning\">54.84% <\/span><span class=\"tm-article-poll__answer-label\">\u0434\u0430<\/span><span class=\"tm-article-poll__answer-votes\">17<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress tm-article-poll__answer-progress_winning\" style=\"width: 54.84%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">45.16% <\/span><span class=\"tm-article-poll__answer-label\">\u043d\u0435\u0442<\/span><span class=\"tm-article-poll__answer-votes\">14<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 45.16%\"><\/div>\n<\/div>\n<\/div>\n<p><!--]--><\/div>\n<div class=\"tm-article-poll__stats\"> \u041f\u0440\u043e\u0433\u043e\u043b\u043e\u0441\u043e\u0432\u0430\u043b 31 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c.   \u0412\u043e\u0437\u0434\u0435\u0440\u0436\u0430\u0432\u0448\u0438\u0445\u0441\u044f \u043d\u0435\u0442. <\/div>\n<p><!--]--><\/div>\n<div class=\"tm-article-poll tm-article-poll_variant-bordered\">\n<div class=\"tm-notice tm-notice_positive tm-article-poll__notice\"><!----><\/p>\n<div class=\"tm-notice__inner\"><!----><\/p>\n<div class=\"tm-notice__content\" data-test-id=\"notice-content\"><!--[--><span>\u0422\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 \u043c\u043e\u0433\u0443\u0442 \u0443\u0447\u0430\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0432 \u043e\u043f\u0440\u043e\u0441\u0435. <a rel=\"nofollow\" href=\"\/kek\/v1\/auth\/habrahabr\/?back=\/ru\/articles\/859120\/&#038;hl=ru\">\u0412\u043e\u0439\u0434\u0438\u0442\u0435<\/a>, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430.<\/span><!--]--><\/div>\n<\/div>\n<\/div>\n<p><!--[--><\/p>\n<div class=\"tm-article-poll__header\">\u0412 \u0447\u0451\u043c \u0412\u044b \u043e\u0431\u044b\u0447\u043d\u043e \u043f\u0438\u0448\u0435\u0442\u0435 \u0434\u043e\u043a\u0438?<\/div>\n<div class=\"tm-article-poll__answers\"><!--[--><\/p>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent tm-article-poll__answer-percent_winning\">40% <\/span><span class=\"tm-article-poll__answer-label\">\u0412 LaTeX<\/span><span class=\"tm-article-poll__answer-votes\">14<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress tm-article-poll__answer-progress_winning\" style=\"width: 40%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">25.71% <\/span><span class=\"tm-article-poll__answer-label\">\u0412 MS Word<\/span><span class=\"tm-article-poll__answer-votes\">9<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 25.71%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">17.14% <\/span><span class=\"tm-article-poll__answer-label\">\u0412 Open Office<\/span><span class=\"tm-article-poll__answer-votes\">6<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 17.14%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">20% <\/span><span class=\"tm-article-poll__answer-label\">\u0412 Google Docs<\/span><span class=\"tm-article-poll__answer-votes\">7<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 20%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">8.57% <\/span><span class=\"tm-article-poll__answer-label\">\u041f\u0435\u0447\u0430\u0442\u0430\u044e \u043d\u0430 \u043c\u0435\u0445\u0430\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043f\u0435\u0447\u0430\u0442\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u043a\u0435<\/span><span class=\"tm-article-poll__answer-votes\">3<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 8.57%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">2.86% <\/span><span class=\"tm-article-poll__answer-label\">\u041f\u0438\u0448\u0443 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044e \u043e\u0442 \u0440\u0443\u043a\u0438 \u0441\u0438\u043d\u0435\u0439 \u0440\u0443\u0447\u043a\u043e\u0439<\/span><span class=\"tm-article-poll__answer-votes\">1<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 2.86%\"><\/div>\n<\/div>\n<\/div>\n<p><!--]--><\/div>\n<div class=\"tm-article-poll__stats\"> \u041f\u0440\u043e\u0433\u043e\u043b\u043e\u0441\u043e\u0432\u0430\u043b\u0438 35 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439.   \u0412\u043e\u0437\u0434\u0435\u0440\u0436\u0430\u043b\u0438\u0441\u044c 3 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f. <\/div>\n<p><!--]--><\/div>\n<div class=\"tm-article-poll tm-article-poll_variant-bordered\">\n<div class=\"tm-notice tm-notice_positive tm-article-poll__notice\"><!----><\/p>\n<div class=\"tm-notice__inner\"><!----><\/p>\n<div class=\"tm-notice__content\" data-test-id=\"notice-content\"><!--[--><span>\u0422\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 \u043c\u043e\u0433\u0443\u0442 \u0443\u0447\u0430\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0432 \u043e\u043f\u0440\u043e\u0441\u0435. <a rel=\"nofollow\" href=\"\/kek\/v1\/auth\/habrahabr\/?back=\/ru\/articles\/859120\/&#038;hl=ru\">\u0412\u043e\u0439\u0434\u0438\u0442\u0435<\/a>, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430.<\/span><!--]--><\/div>\n<\/div>\n<\/div>\n<p><!--[--><\/p>\n<div class=\"tm-article-poll__header\">\u0412\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u0441\u0431\u043e\u0440\u043a\u0438 Make \u043d\u0435 \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u043e\u0433\u043e \u043c\u0430\u0448\u0438\u043d\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430?<\/div>\n<div class=\"tm-article-poll__answers\"><!--[--><\/p>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">40.54% <\/span><span class=\"tm-article-poll__answer-label\">\u0434\u0430<\/span><span class=\"tm-article-poll__answer-votes\">15<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 40.54%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent tm-article-poll__answer-percent_winning\">59.46% <\/span><span class=\"tm-article-poll__answer-label\">\u043d\u0435\u0442<\/span><span class=\"tm-article-poll__answer-votes\">22<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress tm-article-poll__answer-progress_winning\" style=\"width: 59.46%\"><\/div>\n<\/div>\n<\/div>\n<p><!--]--><\/div>\n<div class=\"tm-article-poll__stats\"> \u041f\u0440\u043e\u0433\u043e\u043b\u043e\u0441\u043e\u0432\u0430\u043b\u0438 37 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439.   \u0412\u043e\u0437\u0434\u0435\u0440\u0436\u0430\u0432\u0448\u0438\u0445\u0441\u044f \u043d\u0435\u0442. <\/div>\n<p><!--]--><\/div>\n<p><!--]--><\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/articles\/859120\/\"> https:\/\/habr.com\/ru\/articles\/859120\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<figure class=\"full-width\"><\/figure>\n<p>\u0412\u044b, \u043d\u0430\u0432\u0435\u0440\u043d\u043e\u0435 \u0443\u0434\u0438\u0432\u0438\u0442\u0435\u0441\u044c, \u043d\u043e \u0447\u0442\u043e\u0431\u044b \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0443\u0447\u0435\u0431\u043d\u0438\u043a, \u043d\u0430\u0434\u043e \u0437\u043d\u0430\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0441\u0431\u043e\u0440\u043a\u0438 \u0438\u0437 \u0441\u043e\u0444\u0442\u0432\u0435\u0440\u043d\u043e\u0433\u043e \u0411\u0438\u0433\u0422\u0435\u0445\u0430 \u0438, \u043a\u0430\u043a \u043d\u0438 \u0441\u0442\u0440\u0430\u043d\u043d\u043e, \u0441\u0442\u0430\u0440\u044b\u0439 \u0434\u043e\u0431\u0440\u044b\u0439 \u0441\u0438\u0448\u043d\u044b\u0439 \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 (cpp). \u0414\u0430, \u0433\u043e\u0441\u043f\u043e\u0434\u0430&#8230; \u0418\u043c\u0435\u043d\u043d\u043e \u0442\u0430\u043a&#8230; \u0421\u0435\u0439\u0447\u0430\u0441 \u043e\u0431\u044a\u044f\u0441\u043d\u044e, \u043f\u043e\u0447\u0435\u043c\u0443&#8230; <\/p>\n<p>\u0412 front-end \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u044f\u0437\u044b\u043a \u0440\u0430\u0437\u043c\u0435\u0442\u043a\u0438 <strong>LaTe\u0425<\/strong>. \u041c\u043d\u043e\u0433\u0438\u0435 \u043f\u0440\u043e \u043d\u0435\u0433\u043e \u0441\u043b\u044b\u0448\u0430\u043b\u0438 \u0438 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0435\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442. \u042d\u0442\u043e \u044f\u0437\u044b\u043a \u0441\u043e\u0437\u0434\u0430\u043d \u0434\u043b\u044f \u0432\u0451\u0440\u0441\u0442\u043a\u0438 \u043f\u0440\u0435\u043a\u0440\u0430\u0441\u043d\u043e \u0441\u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043e\u0432. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0432\u0441\u0435 datasheet(\u044b) \u043d\u0430 \u043a\u0443\u043b\u044c\u0442\u043e\u0432\u044b\u0435 \u043c\u0438\u0440\u043e\u0432\u044b\u0435 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u044b \u043f\u043e 5000+ \u0441\u0442\u0440\u0430\u043d\u0438\u0446 \u043a\u0430\u043a \u0440\u0430\u0437 \u0441\u043e\u0431\u0440\u0430\u043d\u044b \u0438\u043c\u0435\u043d\u043d\u043e \u0447\u0435\u0440\u0435\u0437 \u0443\u0442\u0438\u043b\u0438\u0442\u0443 LaTeX. \u041e\u0431\u044b\u0447\u043d\u043e \u043d\u0430 LaTeX \u043f\u0440\u043e\u0444\u0435\u0441\u0441\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u0442\u0430\u043a \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u043c\u044b\u0435 <strong>\u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u0438\u0441\u0430\u0442\u0435\u043b\u0438<\/strong>. \u0412 \u0437\u0430\u043f\u0430\u0434\u043d\u043e\u0439 \u0430\u043a\u0430\u0434\u0435\u043c\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0441\u0440\u0435\u0434\u0435 \u0442\u043e\u0436\u0435 \u0430\u043a\u0442\u0438\u0432\u043d\u043e \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u044e\u0442 LaTeX \u0434\u043b\u044f \u0432\u0451\u0440\u0441\u0442\u043a\u0438 \u0441\u0432\u043e\u0438\u0445 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u0439 \u043d\u0430 IEEE Explore \u0438 \u0434\u043b\u044f \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0438 \u0441\u043b\u0430\u0439\u0434\u043e\u0432 \u043d\u0430 \u0432\u0441\u044f\u0447\u0435\u0441\u043a\u0438\u0435 \u043e\u043a\u043e\u043b\u043e\u043d\u0430\u0443\u0447\u043d\u044b\u0435 \u043a\u043e\u043d\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0438. <\/p>\n<p>\u041f\u0440\u0438 \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u0438 \u043a\u043d\u0438\u0433\u0438 \u0432 latex \u0430\u0432\u0442\u043e\u0440 \u043d\u0435 \u0434\u043e\u043b\u0436\u0435\u043d \u0434\u0443\u043c\u0430\u0442\u044c \u043e\u0431 \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u0438. \u0410\u0432\u0442\u043e\u0440 \u0434\u0443\u043c\u0430\u0435\u0442 \u043e \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u0438. \u0417\u0430 \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u0435 \u0430\u0432\u0442\u043e\u0440 \u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u043d\u0435 \u043d\u0435\u0441\u0451\u0442. \u0412\u0441\u044f \u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0441\u0442\u044c \u0437\u0430 \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u0435 \u0441\u0442\u0440\u0430\u043d\u0438\u0446 \u043f\u0435\u0440\u0435\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 LaTeX. \u0412 \u044d\u0442\u043e\u043c \u043e\u0441\u043d\u043e\u0432\u043d\u0430\u044f \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044f. <\/p>\n<p>\u0415\u0449\u0451 \u0434\u043e\u0441\u0442\u043e\u0438\u043d\u0441\u0442\u0432\u043e <strong>LaTeX<\/strong> \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0441\u043e\u0437\u0434\u0430\u0442\u044c *.pdf \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442 \u0441 \u043d\u0443\u0436\u043d\u044b\u043c\u0438 \u043e\u0442\u0441\u0442\u0443\u043f\u0430\u043c\u0438, \u043d\u0443\u043c\u0435\u0440\u0430\u0446\u0438\u0435\u0439, \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430\u043c\u0438, 7-\u043c\u0438 \u044d\u0442\u0430\u0436\u043d\u044b\u043c\u0438 \u0444\u043e\u0440\u043c\u0443\u043b\u0430\u043c\u0438,  \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f\u043c\u0438 \u0438 \u043f\u0440\u043e\u0447\u0435\u0439 \u043f\u0440\u0435\u043a\u0440\u0430\u0441\u043d\u043e\u0439 \u043f\u043e\u043b\u0438\u0433\u0440\u0430\u0444\u0438\u0435\u0439 \u0432\u0430\u043c \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u043e \u043d\u0435 \u043d\u0443\u0436\u043d\u0430 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u0430\u044f \u043c\u044b\u0448\u043a\u0430. \u0414\u0430&#8230; \u0412\u043e\u0442 \u0442\u0430\u043a&#8230;<\/p>\n<p>\u0412 \u044d\u0442\u043e\u0439 \u0437\u0430\u043c\u0435\u0442\u043a\u0435 \u044f \u043f\u043e\u043a\u0430\u0436\u0443 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0442\u0440\u044e\u043a\u043e\u0432 \u043f\u043e \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 LaTeX. <\/p>\n<p>\u0418\u0442\u0430\u043a, \u0442\u0430\u043d\u0446\u0443\u0435\u043c \u043e\u0442 \u043f\u0435\u0447\u043a\u0438&#8230;<\/p>\n<p><strong>\u0427\u0442\u043e \u043d\u0430\u0434\u043e \u0438\u0437 \u0441\u043e\u0444\u0442\u0432\u0435\u0440\u0430 (\u041f\u041e)?<\/strong><\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<td data-colwidth=\"66\" width=\"66\">\n<p align=\"left\"><strong>\u2116<\/strong><\/p>\n<\/td>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\"><strong>\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0443\u0442\u0438\u043b\u0438\u0442\u044b<\/strong><\/p>\n<\/td>\n<td data-colwidth=\"73\" width=\"73\">\n<p align=\"left\"><strong>CygWin<\/strong> <\/p>\n<\/td>\n<td>\n<p align=\"left\"><strong>\u041f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u0435<\/strong><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"66\" width=\"66\">\n<p align=\"left\">1<\/p>\n<\/td>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">cpp<\/p>\n<\/td>\n<td data-colwidth=\"73\" width=\"73\">\n<p align=\"left\">+<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 \u044f\u0437\u044b\u043a\u0430 \u0421\u0438<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"66\" width=\"66\">\n<p align=\"left\">2<\/p>\n<\/td>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">pdf viewer<\/p>\n<\/td>\n<td data-colwidth=\"73\" width=\"73\">\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\u041e\u0431\u043e\u0437\u0440\u0435\u0432\u0430\u0442\u0435\u043b\u044c pdf \u0444\u0430\u0439\u043b\u043e\u0432<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"66\" width=\"66\">\n<p align=\"left\">3<\/p>\n<\/td>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">pandoc<\/p>\n<\/td>\n<td data-colwidth=\"73\" width=\"73\">\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\u0443\u0442\u0438\u043b\u0438\u0442\u0430 \u0434\u043b\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f latex \u0432 docx<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"66\" width=\"66\">\n<p align=\"left\">4<\/p>\n<\/td>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">cmd<\/p>\n<\/td>\n<td data-colwidth=\"73\" width=\"73\">\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\u0418\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440 \u044f\u0437\u044b\u043a\u0430 Batch<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"66\" width=\"66\">\n<p align=\"left\">5<\/p>\n<\/td>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">make<\/p>\n<\/td>\n<td data-colwidth=\"73\" width=\"73\">\n<p align=\"left\">+<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0418\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440 \u044f\u0437\u044b\u043a\u0430 make<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"66\" width=\"66\">\n<p align=\"left\">6<\/p>\n<\/td>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">pdflatex<\/p>\n<\/td>\n<td data-colwidth=\"73\" width=\"73\">\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\u0418\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440 \u044f\u0437\u044b\u043a\u0430 LaTeX<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"66\" width=\"66\">\n<p align=\"left\">7<\/p>\n<\/td>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">Eclipse IDE<\/p>\n<\/td>\n<td data-colwidth=\"73\" width=\"73\">\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\u0422\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0439 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440 Eclipse <\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"66\" width=\"66\">\n<p align=\"left\">8<\/p>\n<\/td>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">git<\/p>\n<\/td>\n<td data-colwidth=\"73\" width=\"73\">\n<p align=\"left\">+<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u0438\u0441\u0442\u0435\u043c\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044f \u0432\u0435\u0440\u0441\u0438\u0439 \u0434\u043b\u044f \u0432\u0430\u0448\u0438\u0445 \u0442\u0435\u043a\u0441\u0442\u043e\u0432 \u0443\u0447\u0435\u0431\u043d\u0438\u043a\u0430<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"66\" width=\"66\">\n<p align=\"left\">12<\/p>\n<\/td>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">realpath<\/p>\n<\/td>\n<td data-colwidth=\"73\" width=\"73\">\n<p align=\"left\">+<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0412\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u044c \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u044b\u0439 \u043f\u0443\u0442\u044c \u043a \u043f\u0430\u043f\u043a\u0435<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"66\" width=\"66\">\n<p align=\"left\">13<\/p>\n<\/td>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">sort<\/p>\n<\/td>\n<td data-colwidth=\"73\" width=\"73\">\n<p align=\"left\">+<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0423\u0442\u0438\u043b\u0438\u0442\u0430 \u0434\u043b\u044f \u0441\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u043a\u0438 \u0441\u0442\u0440\u043e\u043a. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0434\u043b\u044f \u0441\u043f\u0438\u0441\u043a\u0430 \u0430\u043a\u0440\u043e\u043d\u0438\u043c\u043e\u0432.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"66\" width=\"66\">\n<p align=\"left\">9<\/p>\n<\/td>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">tree<\/p>\n<\/td>\n<td data-colwidth=\"73\" width=\"73\">\n<p align=\"left\">+<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041e\u0431\u043e\u0437\u0440\u0435\u0432\u0430\u0442\u0435\u043b\u044c \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0433\u043e \u043f\u0430\u043f\u043a\u0438<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"66\" width=\"66\">\n<p align=\"left\">10<\/p>\n<\/td>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">m4<\/p>\n<\/td>\n<td data-colwidth=\"73\" width=\"73\">\n<p align=\"left\">+<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0423\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440. \u0426\u0435\u043b\u044b\u0439 \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432\u044b\u0439 \u044f\u0437\u044b\u043a.<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"66\" width=\"66\">\n<p align=\"left\">11<\/p>\n<\/td>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">grep<\/p>\n<\/td>\n<td data-colwidth=\"73\" width=\"73\">\n<p align=\"left\">+<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u043e\u0438\u0441\u043a \u043f\u043e \u043a\u043b\u044e\u0447\u0435\u0432\u043e\u043c\u0443 \u0441\u043b\u043e\u0432\u0443 \u043d\u0430 \u0436\u0435\u0441\u0442\u043a\u043e\u043c \u0434\u0438\u0441\u043a\u0435<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>\u0411\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u044d\u0442\u0438\u0445 \u0443\u0442\u0438\u043b\u0438\u0442 \u043f\u0440\u0435\u0441\u043f\u043e\u043a\u043e\u0439\u043d\u043e \u0431\u0435\u0440\u0443\u0442\u0441\u044f \u0438\u0437 CygWin \u0438\u043b\u0438 MinGW. <\/p>\n<p><strong>\u041a\u0430\u043a\u043e\u0432 \u043f\u043b\u0430\u043d?<\/strong><\/p>\n<p>\u042f \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0438 \u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0432\u043e\u0442 \u0442\u0430\u043a\u043e\u0439 \u043a\u043e\u043d\u0432\u0435\u0439\u0435\u0440 \u043c\u0435\u0442\u0430\u043c\u043e\u0440\u0444\u043e\u0437\u0430 \u0444\u0430\u0439\u043b\u0438\u043a\u043e\u0432.<\/p>\n<figure class=\"\">\n<div><figcaption>\u043a\u043e\u043d\u0432\u0435\u0439\u0435\u0440 \u043c\u0435\u0442\u0430\u043c\u043e\u0440\u0444\u043e\u0437\u0430 \u0444\u0430\u0439\u043b\u0438\u043a\u043e\u0432<\/figcaption><\/div>\n<\/figure>\n<p>\u0417\u0435\u043b\u0451\u043d\u044b\u043c \u0446\u0432\u0435\u0442\u043e\u043c \u043f\u043e\u043a\u0440\u0430\u0448\u0435\u043d\u044b \u0442\u0435 \u0444\u0430\u0439\u043b\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0434\u043b\u044f \u043d\u0430\u0441 <strong>\u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0430\u043c\u0438<\/strong>. \u042d\u0442\u043e \u0442\u043e \u0441\u0430\u043c\u043e\u0435, \u0447\u0442\u043e \u043d\u0430\u0434\u043e \u043f\u043e\u0434\u0432\u0435\u0440\u0433\u0430\u0442\u044c \u0432\u0435\u0440\u0441\u0438\u043e\u043d\u043d\u043e\u043c\u0443 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044e \u0432 git \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438. GNU Make \u0442\u0443\u0442 \u0432\u044b\u0441\u0442\u0443\u043f\u0430\u0435\u0442 \u0434\u0438\u0440\u0438\u0436\u0435\u0440\u043e\u043c \u043e\u0440\u043a\u0435\u0441\u0442\u0440\u0430 \u0438 \u043c\u0435\u0445\u0430\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043a\u043e\u0440\u043e\u0431\u043a\u043e\u0439 \u043f\u0435\u0440\u0435\u0434\u0430\u0447 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e. <\/p>\n<p>\u041d\u0430 \u043a\u0430\u0436\u0434\u0443\u044e \u0433\u043b\u0430\u0432\u0443 \u043a\u043d\u0438\u0433\u0438 \u0441\u043e\u0437\u0434\u0430\u0435\u0442\u0441\u044f *.texi \u0444\u0430\u0439\u043b, *.mk \u0444\u0430\u0439\u043b \u0438 \u043f\u0430\u043f\u043a\u0430 \u0441 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430\u043c\u0438. \u0412\u043e\u0442 \u043f\u0440\u0438\u043c\u0435\u0440 *.texi \u0444\u0430\u0439\u043b\u0430 \u0434\u043b\u044f \u0433\u043b\u0430\u0432\u044b:<\/p>\n<pre><code class=\"elixir\">sinclude(`latex_m4_preproc_utils.texi')  \\graphicspath{ {PATH_CHAPTER_X_DIR\/pix} }   \\chapter{\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0413\u043b\u0430\u0432\u044b}   \\section{\u041f\u0440\u043e\u043b\u043e\u0433} \u0445\u0445\u0445\u0445\u0445\u0445\u0445\u0445\u0445\u0445\u0445\u0445\u0445  \\section{\u041f\u0430\u0440\u0430\u0433\u0440\u0430\u0444\\_1} \u0445\u0445\u0445\u0445\u0445\u0445\u0445\u0445\u0445\u0445  \\section{\u0418\u0442\u043e\u0433} \u0445\u0445\u0445\u0445\u0445\u0445\u0445\u0445\u0445\u0445\u0445\u0445  \\section{\u0413\u0438\u043f\u0435\u0440\u0441\u0441\u044b\u043b\u043a\u0438}  \\begin{enumerate}   \\item \\href{wwwwwwwwwwwwwwwww}{zzzzzzzzzzzz} \\end{enumerate} <\/code><\/pre>\n<p>\u041d\u0430 \u0432\u0445\u043e\u0434 \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430 cpp(\u0438\u043b\u0438 m4) \u043f\u043e\u0434\u0430\u044e\u0442\u0441\u044f \u0444\u0430\u0439\u043b\u044b *.texi. \u041d\u0430 \u0443\u0442\u0438\u043b\u0438\u0442\u0443 pdflatex \u043c\u044b \u043f\u043e\u0434\u0430\u0435\u043c \u0432\u044b\u0445\u043e\u0434 \u0441\u0430\u043c\u043e\u0433\u043e \u043e\u0431\u044b\u043a\u043d\u043e\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u0438\u0448\u043d\u043e\u0433\u043e \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430 (\u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u0430\u044f \u0443\u0442\u0438\u043b\u0438\u0442\u0430 cpp) &#8212; \u0442\u043e \u0435\u0441\u0442\u044c \u0444\u0430\u0439\u043b *.tex.<\/p>\n<p>\u0415\u0441\u043b\u0438 \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u0442\u044c \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u044e, \u0442\u043e LaTex &#8212; \u044d\u0442\u043e \u043a\u0430\u043a \u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u0449\u0438\u043a LD \u0438\u0437 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041f\u041e, \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0435 \u0434\u043b\u044f \u0431\u0438\u043d\u0430\u0440\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430, \u0430 \u0434\u043b\u044f \u043e\u0431\u044b\u043a\u043d\u043e\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u043e\u0447\u0438\u0442\u0430\u0435\u043c\u043e\u0433\u043e \u0442\u0435\u043a\u0441\u0442\u0430. \u0412\u043e\u0442 \u0442\u0430\u043a\u0438\u0435 \u0432\u043e\u0442 \u043f\u0438\u0440\u043e\u0436\u043a\u0438 \u0441 \u043a\u0430\u043f\u0443\u0441\u0442\u043e\u0439.<\/p>\n<p>\u0414\u043e\u043f\u0443\u0441\u0442\u0438\u043c, \u0432\u044b \u043f\u0438\u0448\u0435\u0442\u0435 \u043a\u0443\u0440\u0441\u043e\u0432\u043e\u0439 \u043f\u0440\u043e\u0435\u043a\u0442, \u043c\u0430\u0433\u0438\u0441\u0442\u0435\u0440\u0441\u043a\u0438\u0439 \u0434\u0438\u043f\u043b\u043e\u043c, datasheet \u043d\u0430 \u043d\u0430\u0432\u043e\u0440\u043e\u0447\u0435\u043d\u043d\u044b\u0439 ASIC \u0441 270-\u044e SPI-\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u043c\u0438 \u0438\u043b\u0438 \u0443\u0447\u0435\u0431\u043d\u0438\u043a \u043f\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e. \u0427\u0442\u043e \u043d\u0430\u0434\u043e \u0443\u043c\u0435\u0442\u044c \u0434\u0435\u043b\u0430\u0442\u044c \u043d\u0430 Latex? \u041d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043c\u043d\u043e\u0433\u043e \u0432\u0441\u0435\u0433\u043e \u0440\u0430\u0437\u043d\u043e\u0433\u043e. \u041e\u0434\u043d\u0430\u043a\u043e \u0432\u043e\u0442 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0439 \u0434\u0436\u0435\u043d\u0442\u043b\u044c\u043c\u0435\u043d\u0441\u043a\u0438\u0439 \u043d\u0430\u0431\u043e\u0440:<\/p>\n<ol>\n<li>\n<p>\u0412\u0441\u0442\u0430\u0432\u043a\u0430 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f <\/p>\n<\/li>\n<li>\n<p>\u0412\u0441\u0442\u0430\u0432\u043a\u0430 \u0446\u0438\u0442\u0430\u0442\u044b<\/p>\n<\/li>\n<li>\n<p>\u0412\u0441\u0442\u0430\u0432\u043a\u0430 \u043a\u0443\u0441\u043a\u043e\u0432 \u043a\u043e\u0434\u0430 (\u0442\u0430\u043a \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u043c\u044b\u0435 \u043b\u0438\u0441\u0442\u0438\u043d\u0433\u0438)<\/p>\n<\/li>\n<li>\n<p>\u0412\u0441\u0442\u0430\u0432\u043a\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u044b<\/p>\n<\/li>\n<li>\n<p>\u0412\u0441\u0442\u0430\u0432\u043a\u0430 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439<\/p>\n<\/li>\n<li>\n<p>\u0412\u0441\u0442\u0430\u0432\u043a\u0430 \u0433\u0438\u043f\u0435\u0440\u0441\u0441\u044b\u043b\u043e\u043a<\/p>\n<\/li>\n<li>\n<p>\u0412\u0441\u0442\u0430\u0432\u043a\u0430 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439<\/p>\n<\/li>\n<li>\n<p>\u0412\u0441\u0442\u0430\u0432\u043a\u0430 \u043e\u0433\u043b\u0430\u0432\u043b\u0435\u043d\u0438\u044f<\/p>\n<\/li>\n<li>\n<p>\u0412\u0441\u0442\u0430\u0432\u043a\u0430 \u0441\u043f\u0438\u0441\u043a\u0430 \u043b\u0438\u0442\u0435\u0440\u0430\u0442\u0443\u0440\u044b<\/p>\n<p>\u0410 \u0442\u0435\u043f\u0435\u0440\u044c \u043e\u0431\u043e \u0432\u0441\u0435\u043c \u043f\u043e \u043f\u043e\u0440\u044f\u0434\u043a\u0443.<\/p>\n<\/li>\n<\/ol>\n<p><strong>\u0412\u0441\u0442\u0430\u0432\u043a\u0430 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f<\/strong><\/p>\n<p>\u042d\u0442\u043e\u0442 \u043a\u0443\u0441\u043e\u043a LaTeX-\u043a\u043e\u0434\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442 \u0432\u0441\u0442\u0430\u0432\u043a\u0443 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0441 \u0438\u043c\u0435\u043d\u0435\u043c <strong>arch.png<\/strong><\/p>\n<pre><code> \\begin{figure}[h]     \\centering     \\includegraphics[width=0.99\\textwidth]{arch}     \\caption{Harvard architecture }     \\label{fig:mesh1} \\end{figure} <\/code><\/pre>\n<p>\u041c\u043e\u0436\u043d\u043e \u0434\u0430\u0436\u0435 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043c\u0430\u043a\u0440\u043e\u0444\u0443\u043d\u043a\u0446\u0438\u044e \u0434\u043b\u044f \u0432\u0441\u0442\u0430\u0432\u043a\u0438 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438 \u043e\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u0447\u043a\u043e\u0439. \u0412\u043e\u0442 \u0442\u0430\u043a: <strong>INSERT_PIX(  arch  ,   Harvard architecture  )<\/strong>. LaTeX \u0441\u0430\u043c \u043d\u0430\u0439\u0434\u0435\u0442 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438\u0439 \u043f\u043e \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u0443 \u0444\u0430\u0439\u043b \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0432 \u043f\u0440\u043e\u0438\u043d\u0434\u0435\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043f\u0443\u0442\u044f\u0445.<\/p>\n<pre><code class=\"cpp\"> #define INSERT_PIX(FILE_NAME,HINT )  \\   \\begin{figure}[h]  \\     \\centering   \\     \\includegraphics[width=0.99\\textwidth]{FILE_NAME}   \\     \\caption{HINT }  \\     \\label{fig:FILE_NAME}  \\   \\end{figure}     <\/code><\/pre>\n<p><strong>\u041a\u0430\u043a \u043d\u0430 Latex \u043e\u0444\u043e\u0440\u043c\u0438\u0442\u044c \u0446\u0438\u0442\u0430\u0442\u0443?<\/strong><\/p>\n<p>\u0412 \u043b\u044e\u0431\u043e\u043c \u0442\u0435\u043a\u0441\u0442\u0435 \u043e\u0442 \u0441\u043b\u0443\u0447\u0430\u044f \u043a \u0441\u043b\u0443\u0447\u0430\u044e \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u0446\u0438\u0442\u0430\u0442\u044b. \u041d\u0430 LaTeX \u044d\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0442\u0430\u043a:<\/p>\n<pre><code class=\"erlang\">\\begin{quote}     \u0412 \u043b\u044e\u0431\u043e\u043c \u0434\u0435\u043b\u0435 \u0432\u0430\u0436\u043d\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u044b.      \u0418\u043d\u0430\u0447\u0435 \u0432\u0442\u043e\u0440\u043e\u0441\u0442\u0435\u043f\u0435\u043d\u043d\u043e\u0435, \u0445\u043e\u0442\u044f \u0438 \u043d\u0443\u0436\u043d\u043e\u0435, \u043e\u0442\u043d\u0438\u043c\u0435\u0442 \u0432\u0441\u0435 \u0441\u0438\u043b\u044b      \u0438 \u043d\u0435 \u0434\u0430\u0441\u0442 \u0434\u043e\u0439\u0442\u0438 \u0434\u043e \u0433\u043b\u0430\u0432\u043d\u043e\u0433\u043e. \\end{quote} <\/code><\/pre>\n<p><strong>\u041a\u0430\u043a \u043e\u0444\u043e\u0440\u043c\u0438\u0442\u044c \u0432\u0441\u0442\u0430\u0432\u043a\u0443 \u043a\u0443\u0441\u043a\u0430 \u0441 \u043a\u043e\u0434\u043e\u043c?<\/strong><\/p>\n<p>\u0412\u0441\u0442\u0430\u0432\u043a\u0430 \u043b\u0438\u0441\u0442\u0438\u043d\u0433\u0430 \u0441 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c:<\/p>\n<pre><code class=\"cpp\">\\begin{lstlisting}[label=some-code,caption=\u041f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u0439 if]              int ret = NVRAM_Get(ID_IPv4_ROLE, tmp, 1, &amp;tmp_len);     if (MM_RET_CODE_OK != ret) {         return ERROR_CODE_HARDWARE_FAULT;     }  \\end{lstlisting}<\/code><\/pre>\n<p>\u0415\u0441\u043b\u0438 \u0432\u044b \u043f\u0438\u0448\u0435\u0442\u0435 \u0443\u0447\u0435\u0431\u043d\u0438\u043a \u043f\u043e \u0421\u0438 \u0438 \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0435 \u043b\u0438\u0441\u0442\u0438\u043d\u0433\u0438 \u0441 \u0421\u0438-\u043a\u043e\u0434\u043e\u043c \u0432 LaTex \u043a\u043e\u0434, \u0442\u043e \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 \u0431\u0443\u0434\u0435\u0442 \u043f\u044b\u0442\u0430\u0442\u044c\u0441\u044f \u0432\u0441\u0442\u0430\u0432\u0438\u0442\u044c include-\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u043d\u0435\u0442, \u0438 \u0432\u044b\u0434\u0430\u0441\u0442 \u043e\u0448\u0438\u0431\u043a\u0443. \u0412\u0441\u0451 \u0437\u0430\u043a\u043b\u0438\u043d\u0438\u0442. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u0440\u0438\u0434\u0435\u0442\u0441\u044f \u0443\u0431\u0438\u0440\u0430\u0442\u044c \u0441\u0438\u043c\u0432\u043e\u043b # \u0438\u0437 \u043b\u0438\u0441\u0442\u0438\u043d\u0433\u043e\u0432 \u0441 \u043a\u043e\u0434\u043e\u043c \u0438 \u043f\u0438\u0441\u0430\u0442\u044c \u0441\u043f\u0440\u0430\u0432\u043a\u0443 (*), \u0447\u0442\u043e \u043d\u0430\u0434\u043e \u043f\u043e\u0434\u0440\u0430\u0437\u0443\u043c\u0435\u0432\u0430\u0442\u044c \u043f\u0435\u0440\u0432\u044b\u043c \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u043c \u0432 \u0441\u0442\u0440\u043e\u043a\u0435 \u0441\u0438\u043c\u0432\u043e\u043b #.<\/p>\n<p><strong>\u041a\u0430\u043a \u043e\u0444\u043e\u0440\u043c\u0438\u0442\u044c \u0442\u0430\u0431\u043b\u0438\u0446\u0443?<\/strong><\/p>\n<p>\u0422\u0430\u0431\u043b\u0438\u0446\u044b \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e \u0432\u0441\u0442\u0440\u0435\u0447\u0430\u044e\u0442\u0441\u044f \u0432 \u0442\u0435\u043a\u0441\u0442\u0430\u0445. \u0412\u043e\u0442 \u0442\u0430\u043a \u043e\u043d\u0438 \u043f\u0438\u0448\u0443\u0442\u0441\u044f \u043d\u0430 LaTeX:<\/p>\n<pre><code>\\begin{tabular} {ll}     \u0410\u043a\u0440\u043e\u043d\u0438\u043c &amp; \u0420\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u0430 \\\\     \\hline     TUI &amp; Text-based user interface \\\\     CLI &amp; command-line interface \\\\     UART &amp; universal asynchronous receiver \/ transmitter \\\\     JTAG &amp; Joint Test Action Group \\\\     LED &amp; light-emitting diode \\\\     CIC &amp; Cascaded integrator\u2013comb \\\\ \\end{tabular} <\/code><\/pre>\n<p><strong>\u041a\u0430\u043a \u043e\u0444\u043e\u0440\u043c\u0438\u0442\u044c \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 &#171;\u0447\u0438\u0432\u043e-\u043b\u0438\u0431\u043e&#187;?<\/strong><\/p>\n<p>\u0412 \u043b\u044e\u0431\u044b\u0445 \u0442\u0435\u043a\u0441\u0442\u0430\u0445 \u0442\u043e \u0442\u0430\u043c \u0442\u043e \u0437\u0434\u0435\u0441\u044c \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e \u043f\u043e\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0441\u043f\u0438\u0441\u043a\u0438 \u0432\u0441\u044f\u0447\u0435\u0441\u043a\u0438\u0445 \u043f\u0443\u043d\u043a\u0442\u0438\u043a\u043e\u0432. \u0412 LaTex \u044d\u0442\u043e \u043e\u0444\u043e\u0440\u043c\u043b\u044f\u0435\u0442\u0441\u044f \u0442\u0430\u043a:<\/p>\n<pre><code class=\"elixir\">\\begin{enumerate}     \\item One     \\item Two     \\item Three \\end{enumerate}<\/code><\/pre>\n<p><strong>\u041a\u0430\u043a \u043e\u0444\u043e\u0440\u043c\u0438\u0442\u044c \u0433\u0438\u043f\u0435\u0440\u0441\u0441\u044b\u043b\u043a\u0438?<\/strong><\/p>\n<p>\u0412 \u0433\u0438\u043f\u0435\u0440\u0441\u0441\u044b\u043b\u043a\u0438 \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u0442\u043e\u0447\u0438\u0442\u044c \u0441\u043f\u0438\u0441\u043e\u043a \u043b\u0438\u0442\u0435\u0440\u0430\u0442\u043e\u0440\u044b:<\/p>\n<pre><code class=\"cpp\">\\section{\u0413\u0438\u043f\u0435\u0440\u0441\u0441\u044b\u043b\u043a\u0438}  \\begin{enumerate}   \\item \\href{https:\/\/habr.com\/ru\/post\/673522\/}{\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 ToolChain(\u0430) \u0434\u043b\u044f Win10+GCC+\u0421+Makefile+ARM Cortex-Mx+GDB}   \\item \\href{https:\/\/habr.com\/ru\/post\/111691\/}{\u041f\u0440\u0438\u043c\u0435\u0440 Makefile}   \\item \\href{https:\/\/www.opennet.ru\/docs\/RUS\/gnumake\/}{\u042d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 GNU Make}   \\item \\href{https:\/\/habr.com\/ru\/articles\/857416}{\u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u041f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u0438\u0437 Make \u0421\u043a\u0440\u0438\u043f\u0442\u0430}   \\item \\href{https:\/\/www.youtube.com\/watch?v=HEEVxZ4rBCo}{CI\/CD \u043f\u0440\u043e\u0448\u0438\u0432\u043e\u043a \u0434\u043b\u044f \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u043e\u0432 \u0432 Wiren Board ( \u043d\u0430\u0447\u0430\u043b\u043e \u043d\u0430 25:20)}   \\item \\href{https:\/\/www.youtube.com\/watch?v=vmuO4bHjTSo&amp;t=7s}{\u041a\u043e\u043d\u0432\u0435\u0435\u0440\u0443\u043c 30: \u042d\u0432\u043e\u043b\u044e\u0446\u0438\u044f \u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f \u0434\u043b\u044f embedded \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438}   \\item \\href{https:\/\/habr.com\/ru\/post\/47513\/}{GNU Make \u043c\u043e\u0436\u0435\u0442 \u0431\u043e\u043b\u044c\u0448\u0435 \u0447\u0435\u043c \u0442\u044b \u0434\u0443\u043c\u0430\u0435\u0448\u044c} \\end{enumerate} <\/code><\/pre>\n<p><strong>\u041a\u0430\u043a \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 CPP?<\/strong><\/p>\n<p>\u041a\u0430\u043a \u043c\u043d\u043e\u0433\u0438\u043c \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e, \u0421\u0438-\u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0435\u0441\u043f\u043e\u043a\u043e\u0439\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u043b\u044e\u0431\u043e\u0433\u043e \u0434\u0440\u0443\u0433\u043e\u0433\u043e \u044f\u0437\u044b\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f (\u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0421\u0438) \u0438\u043b\u0438 \u043b\u044e\u0431\u043e\u0433\u043e \u0434\u0440\u0443\u0433\u043e\u0433\u043e \u0442\u0435\u043a\u0441\u0442\u0430 \u0432 \u043e\u0431\u0449\u0435\u043c. \u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430 \u0434\u0430\u0436\u0435 \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0438 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0435 \u043a\u043b\u044e\u0447\u0438 \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e. \u0412\u043e\u0442 \u0442\u0430\u043a\u043e\u0439 \u043f\u0443\u0447\u043e\u043a \u043e\u043f\u0446\u0438\u0439 \u043d\u0430\u0434\u043e \u043f\u043e\u0434\u0430\u0442\u044c \u043d\u0430 \u0443\u0442\u0438\u043b\u0438\u0442\u0443 cpp \u0434\u043b\u044f \u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u0438 \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430:<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<td data-colwidth=\"177\" width=\"177\">\n<p align=\"left\"><strong>\u041e\u043f\u0446\u0438\u044f (\u043a\u043b\u044e\u0447 CLI)<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"left\"><strong>\u041f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u0435<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"left\"><strong>\u041f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u0435<\/strong><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"177\" width=\"177\">\n<p align=\"left\">-E<\/p>\n<\/td>\n<td>\n<p align=\"left\">textual output from the preprocessor will be in UTF-8.<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0417\u0430\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0442\u044c \u0432 \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u043a\u0435 UTF-8<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"177\" width=\"177\">\n<p align=\"left\">-P<\/p>\n<\/td>\n<td>\n<p align=\"left\">Inhibit generation of linemarkers<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0423\u0431\u0440\u0430\u0442\u044c \u043b\u0438\u0448\u043d\u0438\u0435 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0438 \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430. \u042d\u0442\u0430 \u043e\u043f\u0446\u0438\u044f \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u043d\u0435 \u0421\u0438 \u043a\u043e\u0434\u0430<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"177\" width=\"177\">\n<p align=\"left\">-C<\/p>\n<\/td>\n<td>\n<p align=\"left\">Do not discard comments<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041d\u0435 \u043e\u0442\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0442\u044c \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0438<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"177\" width=\"177\">\n<p align=\"left\"><strong>-traditional-cpp<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"left\">Traditional Mode <\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041d\u0435 \u0443\u0434\u0430\u043b\u044f\u0442\u044c \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0438\u0434\u0443\u0449\u0438\u0435 \u043f\u0440\u043e\u0431\u0435\u043b\u044b  <\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"177\" width=\"177\">\n<p align=\"left\">-nostdinc<\/p>\n<\/td>\n<td>\n<p align=\"left\">Do not search the standard system directories for header files<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041d\u0435 \u0438\u0441\u043a\u0430\u0442\u044c \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u0447\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b \u0432 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0445 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f\u0445<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"177\" width=\"177\">\n<p align=\"left\">-fexec-charset=UTF-8<\/p>\n<\/td>\n<td>\n<p align=\"left\">Set the execution character set<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0417\u0430\u0434\u0430\u0442\u044c \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432 \u0432 \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u043a\u0435 UTF-8<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"177\" width=\"177\">\n<p align=\"left\">-DHAS_XXX<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\u041f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u043c\u0430\u043a\u0440\u043e\u0441 HAS_XXX \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"177\" width=\"177\">\n<p align=\"left\">-undef<\/p>\n<\/td>\n<td>\n<p align=\"left\">Do not predefine any system-specific or GCC-specific macros. The standard<br \/> predefined macros remain defined.<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043c\u0430\u043a\u0440\u043e\u0441\u044b \u043e\u0442 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 \u0421\u0438 \u043a\u043e\u0434\u0430. \u041e\u043d\u0438 \u0442\u0443\u0442 \u043d\u0435 \u043d\u0443\u0436\u043d\u044b, \u0442\u0430\u043a \u043a\u0430\u043a \u043d\u0435\u0442 \u0441\u0430\u043c\u043e\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u043e\u0433\u043e \u043a\u043e\u0434\u0430.<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>\u041f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043e\u043c cpp \u043c\u043e\u0436\u043d\u043e \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c \u0421\u0438-\u043a\u043e\u0434, \u043d\u043e \u0442\u0430\u043a\u0436\u0435 \u0438 \u0432\u0435\u0440\u0441\u0442\u0430\u0442\u044c LaTeX, \u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u0430\u0442\u044c \u0433\u0440\u0430\u0444\u044b \u0432 GraphViz, \u043f\u0435\u0440\u0435\u043a\u0440\u0430\u0438\u0432\u0430\u0442\u044c Assembler \u043a\u043e\u0434, \u043f\u0435\u0440\u0435\u0442\u0430\u0441\u043e\u0432\u044b\u0432\u0430\u0442\u044c LD \u0441\u043a\u0440\u0438\u043f\u0442\u044b \u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u0449\u0438\u043a\u0430 \u0438 \u0432\u0441\u0451, \u043d\u0430 \u0447\u0442\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u0430\u043c \u0445\u0432\u0430\u0442\u0438\u0442 \u0444\u0430\u043d\u0442\u0430\u0437\u0438\u0438. \u0421\u0438\u0448\u043d\u044b\u0439 \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 &#8212; \u044d\u0442\u043e \u0434\u0443\u0431\u043e\u0432\u0430\u044f \u0432\u0435\u0449\u044c.<\/p>\n<p><strong>\u0421\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f<\/strong><\/p>\n<p>\u0412\u043e\u0442 \u0442\u0430\u043a \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u043f\u0430\u043f\u043a\u0430 \u0441 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0430\u043c\u0438 \u0443\u0447\u0435\u0431\u043d\u0438\u043a\u0430. \u041d\u0430 \u043a\u0430\u0436\u0434\u0443\u044e \u0433\u043b\u0430\u0432\u0443 \u043f\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0439 \u043f\u0430\u043f\u043e\u0447\u043a\u0435.<\/p>\n<pre><code>&gt;    C:\\cygwin64\\bin\\tree.exe . \u251c\u2500\u2500 about_author \u2502\u00a0\u00a0 \u251c\u2500\u2500 about_author.mk \u2502\u00a0\u00a0 \u251c\u2500\u2500 about_author.texi \u2502\u00a0\u00a0 \u2514\u2500\u2500 pix \u251c\u2500\u2500 attributes_of_good_firmware \u2502\u00a0\u00a0 \u251c\u2500\u2500 attributes_of_good_firmware.mk \u2502\u00a0\u00a0 \u251c\u2500\u2500 attributes_of_good_firmware.texi \u2502\u00a0\u00a0 \u2514\u2500\u2500 pix \u2502\u00a0\u00a0     \u251c\u2500\u2500 free.png \u2502\u00a0\u00a0     \u251c\u2500\u2500 nano.png \u2502\u00a0\u00a0     \u2514\u2500\u2500 ubolx_od.png \u251c\u2500\u2500 bibliography \u2502\u00a0\u00a0 \u251c\u2500\u2500 bibliography.mk \u2502\u00a0\u00a0 \u251c\u2500\u2500 bibliography.texi \u2502\u00a0\u00a0 \u2514\u2500\u2500 pix \u251c\u2500\u2500 good_swc \u2502\u00a0\u00a0 \u251c\u2500\u2500 good_swc.mk \u2502\u00a0\u00a0 \u251c\u2500\u2500 good_swc.texi \u2502\u00a0\u00a0 \u2514\u2500\u2500 pix \u2502\u00a0\u00a0     \u251c\u2500\u2500 arch.png \u2502\u00a0\u00a0     \u251c\u2500\u2500 folder.png \u2502\u00a0\u00a0     \u251c\u2500\u2500 list.png \u2502\u00a0\u00a0     \u251c\u2500\u2500 reg.png \u2502\u00a0\u00a0     \u2514\u2500\u2500 scan.png \u251c\u2500\u2500 latex_misc.texi \u251c\u2500\u2500 library.mk \u251c\u2500\u2500 preamble.texi \u2514\u2500\u2500 why_make     \u251c\u2500\u2500 pix     \u2502\u00a0\u00a0 \u251c\u2500\u2500 IAR.png     \u2502\u00a0\u00a0 \u251c\u2500\u2500 diff.png     \u2502\u00a0\u00a0 \u251c\u2500\u2500 pc.png     \u2502\u00a0\u00a0 \u251c\u2500\u2500 perf.png     \u2502\u00a0\u00a0 \u251c\u2500\u2500 reactor.png     \u2502\u00a0\u00a0 \u2514\u2500\u2500 spher.png     \u251c\u2500\u2500 why_make.mk     \u2514\u2500\u2500 why_make.texi  12 directories, 33 files  &gt;<\/code><\/pre>\n<p><strong>\u041a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 Latex \u0444\u0430\u0439\u043b<\/strong><\/p>\n<p>\u0410 \u044d\u0442\u043e, \u0433\u043e\u0441\u043f\u043e\u0434\u0430, \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 LaTeX \u0444\u0430\u0439\u043b, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0439, \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u043a\u043e\u043d\u0444\u0438\u0433\u0430, \u043f\u0440\u0435\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 \u0438 \u0432\u043c\u043e\u043d\u0442\u0438\u0440\u0443\u0435\u0442 \u0432\u0441\u0435 \u043a\u0443\u0441\u043e\u0447\u043a\u0438 \u0433\u043b\u0430\u0432.<\/p>\n<pre><code class=\"cpp\">\\documentclass[a4paper, 16pt]{book}  #include \"preamble.texi\"  \\begin{document}  \\title{ \\textbf{ \u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0431\u0440\u043e\u0448\u044e\u0440\u044b }} \\author{aabzel} \\date{\\today} \\maketitle \\tableofcontents  #ifdef HAS_ABOUT_AUTHOR #include \"about_author.texi\" #endif  #ifdef HAS_ATTRIBUTES_OF_GOOD_FIRMWARE #include \"attributes_of_good_firmware.texi\" #endif  #ifdef HAS_GOOD_SWC #include \"good_swc.texi\" #endif  #ifdef HAS_WHY_MAKE #include \"why_make.texi\" #endif  #ifdef HAS_BIBLIOGRAPHY #include \"bibliography.texi\" #endif  \\end{document} <\/code><\/pre>\n<p>\u043f\u0440\u0435\u0430\u043c\u0431\u0443\u043b\u0430 preamble.texi \u0443 \u043c\u0435\u043d\u044f \u0432\u043e\u0442 \u0442\u0430\u043a\u0430\u044f<\/p>\n<pre><code class=\"dart\"> \\usepackage[T2A]{fontenc} \\usepackage{cmap} % \u0434\u043b\u044f \u043a\u043e\u043f\u0438\u043f\u0430\u0441\u0442\u044b \u0438\u0437 PDF \\usepackage{uarial} \\renewcommand{\\familydefault}{\\sfdefault} \\usepackage{hyperref} \\usepackage{graphicx}<\/code><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-443190","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/443190","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=443190"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/443190\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=443190"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=443190"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=443190"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}