KTUGFaq
KTUG FAQ
You will meet an important person who will help you advance professionally.
FrontPage › noweb
[ÆíÁý]
nowebÀ̶õ ¶
noweb Àº LaTeX À» »ç¿ëÇÏ´Â cweb ÀÌ´Ù.
web/cweb ÀÌ TeX À» ´ë»óÀ¸·Î ÇÏ´Â °Íó·³ noweb Àº LaTeX À» ´ë»óÀ¸·Î ÇÑ´Ù.
Áï, ±âÁ¸ÀÇ ¸ðµç LaTeX ÀÇ ÆÐÅ°Áö¸¦ cweb ¿¡¼ Á¦°øÇÏ´Â literate programming °ú ÇÔ²² »ç¿ëÇÒ ¼ö ÀÖ´Ù.
[ÆíÁý]
´Ù¿î·Îµå/ÀνºÅç ¶
http://www.eecs.harvard.edu/nr/noweb/
¿¡¼ ¼Ò½º¸¦ ´Ù¿î·Îµå ÇÏ¿© ÄÄÆÄÀÏ ÇØÁÖ¸é µÈ´Ù.
[ÆíÁý]
knoweb ¶
±âÁ¸ÀÇ noweb À» °³¼±ÇÑ ½ºÅ¸ÀÏ ÆÄÀÏ, http://www.k-online.com/~joer/noweb/knoweb.html ¿¡¼ ´Ù¿î·Îµå ¹ÞÀ» ¼ö ÀÖ´Ù.
ÀÌ ¹öÀüÀÌ ¹®Á¦°¡ ¾ø°í ´õ ¾ÈÁ¤ÀûÀ̹ǷΠ°¡´ÉÇϸé knoweb.sty ¸¦ »ç¿ëÇϵµ·Ï ÇÑ´Ù.
[ÆíÁý]
¿¹Á¦ ¸¸µé±â ¶
°£´ÜÈ÷ ±¸±¸´ÜÀ» ÇØÁÖ´Â ¿¹Á¦¸¦ ¸¸µé¾î º¸¾Ò´Ù.
\documentclass{article} \usepackage{noweb} \usepackage{dhucs} \begin{document} \section{±¸±¸´Ü ¸¸µé±â} ±¸±¸´ÜÀ» ÇØÁÖ´Â ÇÁ·Î±×·¥À» ÀÛ¼ºÇØ º¸ÀÚ. @ °¡Àå ³ôÀº ·¹º§¿¡¼´Â ´ÙÀ½°ú °°ÀÌ Ã³¸®ÇÒ ¼ö ÀÖ´Ù. <<nine.c>>= <<headers>> <<engine>> <<main>> <<print>> <<test>> @ »óÅ´ [[status]]·Î Ç¥½Ã°¡ °¡´ÉÇÏ´Ù. <<headers>>= /* Çì´õÆÄÀÏ */ #include <stdio.h> #include <assert.h> @ <<engine>>= /* DoxyGen string */ int engine(int x, int y) { assert(x >= 0 && y >= 0); return (x * y); } @ <<print>>= /* Write down the result. */ int print(int x, int y, int z) { printf("(%d) X (%d) = (%d)\n",x,y,z); } @ <<main>>= /* Main Routine */ int main() { int i, j; for (i = 1; i < 3; i++) { for (j = 1; j < 3; j++) { int z = engine(i,j); print(i,j,z); } } } @ <<test>>= /* Test routine */ int test() { printf("testme\n"); } @ \end{document}
[ÆíÁý]
»ç¿ë¹ý ¶
ÅØÆÄÀÏ ¾ò±â
noweave -delay nine.nw > nine.tex
¼Ò½ºÄÚµå ¾ò±â
notangle nine.nw -Rnine.c > nine.c
[ÆíÁý]
°á°ú ¶
Åؼҽº¸¦ ÄÄÆÄÀÏ Çϸé pdf ¸¦ ¾òÀ» ¼ö ÀÖ´Ù.
¼Ò½ºÄڵ带 ÄÄÆÄÀÏ Çϸé ÇÁ·Î±×·¥À» ¾òÀ» ¼ö ÀÖ´Ù.
$ gcc nine.c -o nine $ ./nine (1) X (1) = (1) (1) X (2) = (2) (2) X (1) = (2) (2) X (2) = (4)