C-C++ Beautifier HOW-TO <author>Al Dev (Alavoor Vasudevan) <htmlurl url="mailto:alavoor@yahoo.com" name="alavoor@yahoo.com"> <date>v7.0, 5 Sep 2000 <trans>ÀÌÈ£¿¬<url url="mailto:guru2k@kldp.org" name="guru2k@kldp.org"> <abstract> ÀÌ ¹®¼­´Â C/C++ ÇÁ·Î±×·¥À» Çü½ÄÈ­ ÇÏ´Â °Í(¾Æ¸§´ä°Ô)À» µµ¿ï °ÍÀÌ´Ù. ±×·¡¼­ ´ç½ÅÀÇ C/C++ ÇÁ·Î±×·¥ ÄÚµù Ç¥ÁØÀÌ ´õ Àб⠽±°í Á¤È®ÇÒ °ÍÀÌ´Ù. ÀÌ ¹®¼­ÀÇ Á¤º¸´Â ¸ðµç ¿î¿µÃ¼Á¦¿¡¼­ »ç¿ëÇÒ ¼ö ÀÖ´Ù - ¸®´ª½º, MS DOS, Windows 95/NT, OS/2, IBM OSµé, Unix like ¼Ö¶ó¸®½ºÀÇ ¸ðµç dz¹Ì, HPUX, AIX, SCO, Sinix, BSD, SCO, ±âŸ.. ±×¸®°í ±×¿Ü "C" ÄÄÆÄÀÏ·¯°¡ Áö¿øµÇ´Â ¸ðµç ¿î¿µÃ¼Á¦µé (ÀÌ°ÍÀº ÀÌ Ç༺ÀÇ °ÅÀÇ ¸ðµç ¿î¿µÃ¼Á¦¸¦ ÀǹÌÇÑ´Ù!). </abstract> <toc> <sect>¼Ò°³ <p> C/C++ À̳ª ´Ù¸¥ ¾ð¾î¿¡¼­ Ç¥ÁØ ÄÚµùÀº ÇÁ·Î±×·¥À» ÇÁ·Î±×·¡¸Ó¿¡ ÀÇÇØ ´õ Àб⠽±°í/ÀÌÇØÇϱ⠽±°Ô ¸¸µé±â À§Çؼ­´Â ÇʼöÀÌ´Ù. ÀÌ ¸ñÀûÀ» ´Þ¼ºÇϱâ À§ÇÑ C/C++À» ¾Æ¸§´ä°Ô ÇÏ´Â (Çü½ÄÈ­ÇÏ´Â Åø) ÀÌ ÀÖ´Ù. Äڵ带 Çü½ÄÈ­ ÇÏ´Â °Í(¾Æ¸§´ä°Ô)À» <bf>2¹ø</bf>ÇÏ´Â °ÍÀº ÇÁ·Î±×·¡¸ÓÀÇ <bf>»ý»ê·Â</bf>À» Çâ»ó½ÃŲ´Ù!! ¸®´ª½º/À¯´Ð½º¿¡´Â <bf>"indent"</bf> ¿Í <bf>"cb"</bf> ¶ó ºÒ¸®´Â ¸í·ÉÀÌ ÀÖ´Ù. "man indent" ¿Í "man cb" ¸¦ ÂüÁ¶Çضó. <bf>indent</bf>¿Í <bf>cb</bf> ÀÛ¾÷Àº ¿ÀÁ÷ "C" ÇÁ·Î±×·¥À» À§ÇÑ °ÍÀÌ´Ù. "C++" ÇÁ·Î±×·¥À» À§Çؼ­´Â <bf>"bcpp"</bf> ¸¦ »ç¿ëÇ϶ó. ¹Ø¿¡ ÀÖ´Â °÷¿¡¼­ ¾Æ¸§´ä°Ô ÇÏ´Â ÇÁ·Î±×·¥À» ´Ù¿î·Îµå Ç϶ó. <itemize> <item>C++ : BCPP »çÀÌÆ®´Â <url url="http://dickey.his.com/bcpp/bcpp.html"> ȤÀº <url url="http://www.clark.net/pub/dickey"> ÀÌ´Ù. <item>C++ : BCPP ftp »çÀÌÆ®´Â <url url="ftp://dickey.his.com/bcpp/bcpp.tar.gz"> ÀÌ´Ù. <item>C++ : <url url="http://www.consultix-inc.com/c++b.html"> <item>C : <url url="http://www.chips.navy.mil/oasys/c/"> <item>C++ : <url url="http://www.semdesigns.com/Products/DMS/DMSToolkit.html"> </itemize> ³ª´Â C++ ÇÁ·Î±×·¥À» Çü½ÄÈ­ Çϱâ À§Çؼ­ BCPP¸¦ ½è°í ÀÛµ¿ÀÌ ÀߵǾú´Ù. ´ç½ÅÀº ´Ù¸¥ ÅøÀ» È®ÀÎÇϱ⸦ ¿øÇÒÁöµµ ¸ð¸£°í ´ç½ÅÀÌ Á¦ÀÏ ÁÁ¾Æ ÇÒ °ÍÀ» ¾²¶ó. BCPP´Â <htmlurl url="mailto:steve@alpha.ocbbs.gen .nz" name="steve@alpha.ocbbs.gen.nz"> ¿¡ ÀÖ´Â Steven De Toni¿¡ ÀÇÇØ ¾²¿©Á³´Ù. <sect> ³»°¡ ¾î¶»°Ô ¾Æ¸§´ä°Ô ÇÏ´Â ÇÁ·Î±×·¥À» ¹ÏÀ» ¼ö Àִ°¡??!! <p> ´ç½ÅÀº ¾Æ¸§´ä°Ô ÇÏ´Â ÇÁ·Î±×·¥À» ÀÔÁõÇÏ°í ½Å·ÚÇÏ°Ô ÇÏ´Â <bf>°úÇÐÀûÀÎ</bf> ¹æ¹ýÀÌ ÇÊ¿äÇÏ´Ù°í 100% Àå´ãÇÑ´Ù. ¹æ¹ýÀ» ¼­¼úÇÒ °ÍÀÌ´Ù. ¾Æ¸§´ä°Ô ÇÏ´Â ÇÁ·Î±×·¥À» "ÈǸ¢ÇÏ´Ù°í ¹Ï°í" È®½ÇÇÏ´Ù°í ¹Þ¾ÆµéÀÌ°Ô ÇÏ·Á°í ÀÌ ºÎºÐ¿¡¼­´Â ¹æ¹ýÀ» ¼­¼úÇÒ °ÍÀÌ´Ù. <bf>BCPP</bf>°°Àº ¾Æ¸§´ä°Ô ÇÏ´Â ÇÁ·Î±×·¥ÀÌ »ç½ÇÀÓÀ» ÀÔÁõÇϱâ À§Çؼ­, <bf>indent</bf> ȤÀº <bf>cb</bf> ´Â ÀԷ¹ÞÀº ¼Ò½ºÄڵ带 Çü½ÄÈ­ÇÑ ÈÄ ÇÇÇسª º¯°æÇÏÁö ¾Ê´Â´Ù, ´ç½ÅÀº "°ËÁõ ÇÁ·Î±×·¥" ¼Ð ½ºÅ©¸³Æ®¸¦ »ç¿ëÇϰųª ´ÙÀ½ÀÇ ±â¹ýÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù - ÄÄÆÄÀÏ·¯¸¦ ÀÌ¿ëÇؼ­ ÃÖÃÊÀÇ ÀԷ¹ÞÀº ¼Ò½º ÄÚµå·Î ºÎÅÍ ¿ÀºêÁ§Æ® Äڵ带 »ý¼ºÇ϶ó - <code> g++ -c myprogram.cpp </code> ¿©±â¼­ g++ Àº GNU C++ ÄÄÆÄÀÏ·¯ÀÌ´Ù. ÀÌ°ÍÀº myprogram.o ¶ó´Â ¿ÀºêÁ§Æ® ÆÄÀÏÀ» ¸¸µé °ÍÀÌ´Ù. ÀÌ ÆÄÀÏÀ» ÀÏ´Ü ¹é¾÷½ÃŲ´Ù - <code> mv myprogram.o myprogram_orig.o </code> bcpp¸¦ ½ÇÇà½ÃÄѶó - <code> bcpp myprogram.cpp </code> ÀÌ °ÍÀº Çü½ÄÈ­µÈ Ãâ·Â ÇÁ·Î±×·¥ ÆÄÀÏÀÎ myprogram.cppÀ» ¸¸µé°ÍÀÌ°í ¿ø·¡ÀÇ ÆÄÀÏÀ» myprogram.cpp.orig·Î ¸¸µé °ÍÀÌ´Ù. »õ ÆÄÀÏÀ» ÄÄÆÄÀÏ Çضó - <code> g++ -c myprogram.cpp </code> Áö±Ý µÎ°³ÀÇ ¿ÀºêÁ§Æ® ÆÄÀÏÀ» ºñ±³Çϱâ À§Çؼ­ À¯´Ð½ºÀÇ "diff" ¸í·ÉÀ» »ç¿ëÇضó - <code> diff myprogram.o myprogram_orig.o </code> ÀÌ ÆÄÀÏ µÑ ´Ù °°À» °ÍÀ» °ÍÀÌ´Ù. bcpp´Â ¿Ïº®ÇÏ°Ô ÀÛ¾÷ÇÑ´Ù´Â °ÍÀ» °ËÁõ Çß´Ù. DOS³ª Windows 95 ¿¡¼­ ´ç½ÅÀÌ ÀÚÀ¯·Î¿î <url name="Cygnus" url="http://www.cygnus.com"> ÀÎ Cygwin ¸¦ »ç¿ëÇϱ⠿øÇÒ °ÍÀÌ´Ù. ¶ÇÇÑ ´ç½ÅÀº ÄÄÆÄÀÏ·¯ ¿¡¼­ ¿ÀºêÁ§Æ® Ãâ·Â ´ë½Å¿¡ ¾î¼Àºí·¯ Ãâ·ÂÀ» »ç¿ëÇÒ ¼öµµ ÀÖ´Ù. ´ÙÀ½°ú °°ÀÌ - <code> g++ -S myprogram.cpp </code> ÀÌ°ÍÀº myprogram.s¸¦ ¸¸µç´Ù. °ËÁõ ÇÏ·Á¸é - <code> diff myprogram.s myprogram_orig.s </code> ÀÌ ½ºÅÜÀº ´ç½ÅÀÇ °ªÁø ¼Ò½º ÄÚµå´Â ¼Õ»óµÇÁö ¾Ê°í bcpp´Â ¿ÀÁ÷ ¿Ã¹Ù¸¥ Çü½ÄÈ­ ÀÛ¾÷¸¸ ÇÏ°í ´ç½ÅÀÇ Äڵ忡 ¾î¶² ¹æ¹ýÀ¸·Îµç Àý´ë·Î º¯°æÀ̳ª ÇÇÇظ¦ ÇÏÁö ¾Ê´Â´Ù´Â °ÍÀ» 100% º¸ÁõÇÑ´Ù. ÀÌ ¹æ¹ýÀº 'bcpp' °°Àº ¾Æ¸§´ä°Ô ÇÏ´Â ÇÁ·Î±×·¥Àº Àü¹®¾îÀÇ Æ¯¼ºÀ» Àå´ãÇÏ°í º¸ÁõÇÏ°Ô ÇÒ °ÍÀÌ´Ù. ÀÌ µÎ°³ÀÇ ½ºÅÜÀº Ç×»ó ´ç½ÅÀÌ <bf>bcpp</bf>, <bf>indent</bf> ȤÀº <bf>cb</bf>°°Àº ¾Æ¸§´ä°Ô ÇÏ´Â ÇÁ·Î±×·¥À» »ç¿ëÇϵµ·Ï °­·ÂÇÏ°Ô ÃßõÇÑ´Ù. <sect> ´Ù¸¥ ¾ð¾î¸¦ À§ÇÑ ¾Æ¸§´ä°Ô ÇÏ´Â ÇÁ·Î±×·¥ <p> HTML, SQL, Java, Perl, Fortran °°ÀÌ ´Ù¸¥ ¾ð¾î¸¦ À§ÇÑ ¾Æ¸§´ä°Ô ÇÏ´Â ÇÁ·Î±×·¥À» ¾ò±â À§Çؼ­´Â ¾Æ·¡ÀÇ »çÀÌÆ®¿¡ ¹æ¹®Çضó. <itemize> <item> HTML : <url url="http://www.digital-mines.com/htb/"> <item> HTML : <url url="http://www.datacomm.ch/mwoog/software/perl/beautifier.html"> <item> HTML : <url url="http://www.watson-net.com/free/perl/s_fhtml.asp"> <item> SQL : <url url="http://www.netbula.com/products/sqlb"> <item> Java, SQL, HTML, C++ : <url url="http://www.semdesigns.com/Products/DMS/DMSToolkit.html"> <item> Java : <url url="http://www.jindent.com"> <item> Java JPretty : <url url="http://www.mmsindia.com/index.html"> <item> Perl : <url url="http://www.consultix-inc.com/www.consultix-inc.com/talk.htm"> <item> Perl : <url url="http://www.consultix-inc.com/www.consultix-inc.com/perl_beautifier.html"> <item> Fortran beautifier : <url url="http://www.aeem.iastate.edu/Fortran/tools.html"> <item>C++ : BCPP site is at <url url="http://www.clark.net/pub/dickey/bcpp/bcpp.html"> <item>C++ : <url url="http://www.consultix-inc.com/www.consultix-inc.com/c++b.html"> <item>C : <url url="http://www.chips.navy.mil/oasys/c/"> </itemize> <itemize> <item>¾Æ¸§´ä°Ô ÇÏ´Â ÇÁ·Î±×·¥ÀÇ ¹é¼­ : <url url="http://www.consultix-inc.com/www.consultix-inc.com/talk.htm"> </itemize> HTMLÀ» »ç¿ëÇÏ¿© Àü½ÃÇϱâ À§ÇÑ ÄÚµåÀÇ ÇÁ¸®Á¨Å×À̼ÇÀ» ¸¸µç·Á¸é - <itemize> <item>html·Î ÇÁ¸®Á¨Å×ÀÌ¼Ç (C,C++,Java) : <url url="http://www.perlstudio.de/cbindex.html"> </itemize> ¶ÇÇÑ <url url="http://www.yahoo.com"> ȤÀº <url url="http://www.lycos.com"> °°Àº °Ë»ö¿£Áø¿¡¼­ "beautfier"À̶ó´Â Å°¿öµå·Î ã¾Æº¸¶ó. <sect> °ËÁõ ½ºÅ©¸³Æ® <p> ÀÌ °ÍÀº ¾Æ¸§´ä°Ô ÇÏ´Â ÇÁ·Î±×·¥À» °ËÁõÇϱâ À§ÇÑ ÄܼР½ºÅ©¸³Æ®ÀÌ´Ù. ¸®´ª½º 'contrib' ½Ãµð·Ò¿¡ ÀÖ´Â "pdksh*.rpm" ÀÌ ÇÊ¿äÇÏ´Ù. ÀÌ ÆÄÀÏÀ» 'ÅؽºÆ®' ÆÄÀÏ°ú a+rx·Î ÀúÀåÇضó. ´ç½ÅÀº ÆÞ·Î ÀÌ ¼Ð ½ºÅ©¸³Æ®¸¦ ´Ù½Ã ¾µ ¼ö À־ ´ç½ÅÀº Windows 95/NT ȤÀº MSDOS ¿¡¼­ ±×°ÍÀ» ¾µ ¼ö ÀÖ´Ù. <bf>bcpp</bf>, <bf>cb</bf> ȤÀº <bf>indent</bf>¸¦ À§ÇÑ Æ÷ÀÎÆ® PRGM º¯¼ö¸¦ ¼³¸íÇضó. <code> #!/bin/ksh # Verification program to check C++ Beautifiers 'bcpp', 'indent' or cb ############################################################ # Copyright # The copyright policy is GNU/GPL. # Author: Al Dev (Alavoor Vasudevan) alavoor@yahoo.com ############################################################ check_beautify_now() { # Remove all the temp files.... \rm -f ${TMP_FILE} \rm -f ${TMP_CPPFILE}*.* FNAME=$1 if [ ! -f ${FNAME} ]; then print "\nError: The file ${FNAME} does not exist!!. Aborting now ...." exit fi \cp -f ${FNAME} ${TMP_CPPFILE}.cpp ${COMPILER} -c ${TMP_CPPFILE}.cpp if [ ! -f ${TMP_CPPFILE}.o ]; then print "Fatal Error: Failed to compile ${FNAME}. Aborting now... " exit fi \mv -f ${TMP_CPPFILE}.o ${TMP_CPPFILE}_orig.o aa=`basename $PRGM` print "\nRunning, verifying $aa on ${FNAME}" ${PRGM} ${TMP_CPPFILE}.cpp ${COMPILER} -c ${TMP_CPPFILE}.cpp \rm -f $TMP_FILE diff ${TMP_CPPFILE}.o ${TMP_CPPFILE}_orig.o 1> $TMP_FILE 2>> $TMP_FILE result="" result=`wc -c $TMP_FILE | awk '{print $1}' ` if [ "$result" = "0" ]; then print "Success!! Beautifier $aa is working properly!!\n" else print "Fatal Error: Something wrong!! Beautifier is not working!!" exit fi # ${COMPILER} -S ${TMP_CPPFILE}.cpp # diff ${TMP_CPPFILE}.s ${TMP_CPPFILE}_orig.s # Remove all the temp files.... \rm -f ${TMP_FILE} \rm -f ${TMP_CPPFILE}*.* } ########## Main of program begins here ##################3 #PRGM=/usr/bin/bcpp #PRGM=/usr/bin/cb PRGM=/usr/bin/indent COMPILER=/usr/bin/g++ TMP_FILE=beautify.tmp TMP_CPPFILE=beautify-tmp_cppfile print -n "Enter the C++ file name <default is *.cpp> : " read ans if [ "$ans" = "" -o "$ans" = " " ]; then ans="ALL" else FILENAME=$ans fi # Remove all the temp files.... \rm -f ${TMP_FILE} \rm -f ${TMP_CPPFILE}*.* if [ "$ans" != "ALL" ]; then check_beautify_now ${FILENAME} else ls *.cpp | while read FILENAME do check_beautify_now ${FILENAME} done fi </code> <sect> °ü·Ã URL <p> ¾Æ·¡¿¡ ÀÖ´Â C, C++ °ü·Ã »çÀÌÆ®¸¦ ¹æ¹®Ç϶ó - <itemize> <item> <url url="http://metalab.unc.edu/LDP/HOWTO/Vim-HOWTO.html" name="C++, C¸¦ À§ÇÑ Vim Ä÷¯ ÅؽºÆ® ¿¡µðÅÍ"> <item> <url url="http://metalab.unc.edu/LDP/HOWTO/C++Programming-HOWTO.html" name="C++ Programming HOWTO"> <item> <url url="http://metalab.unc.edu/LDP/HOWTO/CVS-HOWTO.html" name="CVS HOWTO for C++ programs"> <item> Linux goodies ¸ÞÀÎ »çÀÌÆ® <url url="http://www.aldev.8m.com"> <item> Linux goodies ¹Ì·¯ »çÀÌÆ® <url url="http://aldev.webjump.com"> </itemize> <sect> ÀÌ ¹®¼­ÀÇ ´Ù¸¥ Çü½Ä <p> ÀÌ ¹®¼­´Â 11°³ÀÇ ´Ù¸¥ Çü½ÄÀ¸·Î ÃâÆǵȴÙ. ÀÚ¼¼È÷ ¸»Çϸé - DVI, Postscript, Latex, Adobe Acrobat PDF, LyX, GNU-info, HTML, RTF(Rich Text Format), Plain-text, Unix man pages and SGML. <itemize> <item> HTML, DVI, Postscript¿Í SGMl Çü½ÄÀº ´ÙÀ½ÀÇ »çÀÌÆ®¿¡¼­ ±¸ÇÒ ¼ö ÀÖ´Ù - <url url="ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/other-formats/"> <item>ÅؽºÆ® Çü½ÄÀº ´ÙÀ½ÀÇ »çÀÌÆ®¿¡¼­ ±¸ÇÒ ¼ö ÀÖ´Ù - <url url="ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO"> <item>ÇÁ¶û½º¾î, µ¶ÀϾî, ½ºÆäÀξî, Áß±¹¾î, ÀϺ»¾î °°ÀÌ ´Ù¸¥ ¾ð¾î·Î µÈ ¹ø¿ªº»Àº ´ÙÀ½ÀÇ »çÀÌÆ®¿¡¼­ ±¸ÇÒ ¼ö ÀÖ´Ù. <url url="ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO"> ´Ù¸¥ ¾ð¾î·Î ¹ø¿ªÇϱâ À§ÇÑ ¾î¶°ÇÑ µµ¿òµµ ȯ¿µÇÏ´Â ¹ÙÀÌ´Ù. </itemize> ÀÌ ¹®¼­´Â ´ÙÀ½ÀÇ »çÀÌÆ®¿¡¼­ ±¸ÇÒ ¼ö ÀÖ´Â "SGML-Tools"¶ó´Â ÅøÀ» ½á¼­ ¸¸µé¾ú´Ù. <url url="http://www.sgmltools.org"> ´ç½ÅÀÌ ´ÙÀ½ÀÇ ¸í·ÉÀ» ½á¼­ ¼Ò½º·Î ºÎÅÍ ÄÄÆÄÀÏ ÇÒ ¼ö ÀÖ´Ù. <itemize> <item>sgml2html C-C++Beautifier-HOWTO.sgml (html ÆÄÀÏÀ» »ý¼º) <item>sgml2rtf C-C++Beautifier-HOWTO.sgml (RTF ÆÄÀÏÀ» »ý¼º) <item>sgml2latex C-C++Beautifier-HOWTO.sgml (latex ÆÄÀÏÀ» »ý¼º) </itemize> LaTeX ¹®¼­´Â PDF ÆÄÀÏ·Î <bf>sgml2latex</bf>(±×¸®°í dvips)ÀÇ Ãâ·ÂÀ¸·Î Postscript ÆÄÀÏÀ» ¸¸µé°í Acrobet <bf>distill</bf> ( <url url="http://www.adobe.com"> )À» ´ÙÀ½ÀÇ ¸í·É¾î¸¦ ÅëÇؼ­ °£´ÜÈ÷ º¯Çü½Ãų ¼ö ÀÖ´Ù. <code> bash$ man sgml2latex bash$ sgml2latex filename.sgml bash$ man dvips bash$ dvips -o filename.ps filename.dvi bash$ distill filename.ps bash$ man ghostscript bash$ man ps2pdf bash$ ps2pdf input.ps output.pdf bash$ acroread output.pdf & </code> ȤÀº GhostscriptÀÇ <bf>ps2pdf</bf> ¸í·É¾î·Î ÇÒ ¼ö ÀÖ´Ù. ps2pdf´Â AdobeÀÇ Acrobat DistillerÀÇ ¸ðµç ±â´ÉÀ» °ÅÀÇ ¶È °°ÀÌ ¼öÇàÇÑ´Ù: PostScript ÆÄÀÏÀ» Portable Document Format(PDF) ÆÄÀÏ·Î º¯Çü½ÃŲ´Ù. <bf>ps2pdf</bf>´Â <bf>pdfwrite</bf>¶ó°í ºÒ¸®¿ì´Â Ưº°ÇÑ "Ãâ·Â ÀåÄ¡"¸¦ °ñ¶ó³»´Â Ghostscript¸¦ »ç¿ëÇÏ´Â ¸Å¿ì ÀÛÀº ¸í·É¾î ½ºÅ©¸³Æ® (¹èÄ¡ ÆÄÀÏ) µµ±¸ÀÌ´Ù. ps2pdf¸¦ »ç¿ë ÇÏ·Á¸é, <bf>pdfwrite</bf> ÀåÄ¡´Â Ghostscript°¡ ÄÄÆÄÀÏ µÇ¾úÀ» ¶§ makefile¾È¿¡ Æ÷ÇԵǾî ÀÖ¾î¾ß ÇÑ´Ù. GhostscriptÀÇ ¼³Ä¡ Ç׸ñÀÌ ÀÖ´Â ¹®¼­¸¦ ºÁ¶ó. ÀÌ ¹®¼­´Â ¿©±â¿¡ ÀÖ´Ù - <itemize> <item> <url url="http://sunsite.unc.edu/LDP/HOWTO/C-C++Beautifier-HOWTO.html"> </itemize> ¶ÇÇÑ ´ÙÀ½ÀÇ ¹Ì·¯ »çÀÌÆ®¿¡¼­ ÀÌ ¹®¼­¸¦ ãÀ» ¼ö ÀÖ´Ù - <itemize> <item> <url url="http://www.caldera.com/LDP/HOWTO/C-C++Beautifier-HOWTO.html"> <item> <url url="http://www.WGS.com/LDP/HOWTO/C-C++Beautifier-HOWTO.html"> <item> <url url="http://www.cc.gatech.edu/linux/LDP/HOWTO/C-C++Beautifier-HOWTO.html"> <item> <url url="http://www.redhat.com/linux-info/ldp/HOWTO/C-C++Beautifier-HOWTO.html"> <item> ´Ù¸¥ ´ç½Å °¡±îÀÌ(³×Æ®¿öÅ© ÁÖ¼Ò) Àִ¹̷¯ »çÀÌÆ® <url url="http://sunsite.unc.edu/LDP/hmirrors.html"> ¿¡¼­ /LDP/HOWTO/C-C++Beautifier-HOWTO.html·Î °¡¶ó. </itemize> dvi Çü½ÄÀÇ ¹®¼­¸¦ º¸±â À§Çؼ­´Â, xdvi ÇÁ·Î±×·¥À» ½á¾ß ÇÑ´Ù. xdvi ÇÁ·Î±×·¥Àº ControlPanel | Applications | Publishing | TeX ¸Þ´º ¹öÆ°¿¡¼­ ãÀ» ¼ö ÀÖ´Â tetex-xdvi*.rpm ÆÐÅ°Áö·Î ·¹µåÇÞ ¸®´ª½º¿¡ ÀÖ´Ù. dvi ¹®¼­¸¦ Àбâ À§Çؼ­´Â ¸í·ÉÀ» ½ÇÇàÇضó - <tscreen><verb> xdvi -geometry 80x90 howto.dvi man xdvi </verb></tscreen> ±×¸®°í ¸¶¿ì½º·Î âÀÇ Å©±â¸¦ ¹Ù²ã¶ó. xdviÀÇ ¸ÇÆäÀÌÁö¸¦ º¸¶ó. Page Up, Page Down keys °°Àº È­»ìÇ¥ Å°¸¦ ½á¶ó, ¶ÇÇÑ À§·Î, ¾Æ·¡·Î, °¡¿îµ¥·Î, ´ÙÀ½ ÆäÀÌÁö·Î, ÀÌÀü ÆäÀÌÁö ±âŸ¸¦ À§Çؼ­ f, d, u, c, l, r, p, n ¹®ÀÚ Å°µµ ¾µ ¼ö ÀÖ´Ù. Àü¹®°¡ ¸Þ´º·Î °¡·Á¸é 'x'¸¦ ´©¸£¶ó. ´ç½ÅÀº Æ÷½ºÆ®½ºÅ©¸³Æ® ÆÄÀÏÀ» 'gv' (ghostview) ¶ó´Â °í½ºÆ®½ºÅ©¸³Æ® ÇÁ·Î±×·¥Àº ghostscript.rpm ÆÐÅ°Áö ȤÀº ·¹µåÇÞ ¸®´ª½ºÀÇ gv ÇÁ·Î±×·¥ ControlPanel | Applications | Graphics ¸Þ´º ¹öÆ°¿¡ ÀÖ´Â gv*.rpm ÆÐÅ°ÁöÀÇ ÇÁ·Î±×·¥À» ½á¼­ ÀÐÀ» ¼ö ÀÖ´Ù. gv ÇÁ·Î±×·¥Àº °í½ºÆ®½ºÅ©¸³Æ®¿¡ ºñÇØ ´õ Ä£ÀýÇÏ´Ù. °í½ºÆ®½ºÅ©¸³Æ®¿Í gv´Â ¶ÇÇÑ ´Ù¸¥ OS/2, Windows 95 ±×¸®°í NT °°Àº ´Ù¸¥ Ç÷§Æû¿¡¼­µµ ÀÌ¿ë °¡´ÉÇÏ´Ù. <itemize> <item>Windows 95, OS/2 ±×¸®°í ´Ù¸¥ ¿î¿µÃ¼Á¦¿ë Ghostscript´Â ´ÙÀ½ÀÇ »çÀÌÆ®¿¡¼­ ±¸ÇÒ ¼ö ÀÖ´Ù. <url url="http://www.cs.wisc.edu/~ghost"> </itemize> postscript ¹®¼­¸¦ ÀÐÀÌ À§Çؼ­´Â ´ÙÀ½ÀÇ ¸í·É¾î¸¦ »ç¿ëÇ϶ó - <tscreen><verb> gv howto.ps ghostscript howto.ps </verb></tscreen> ´ç½ÅÀº Netscape Navigator, Microsoft Internet explorer, Redhat Baron Web browser ȤÀº ´Ù¸¥ ¾î¶² ºê¶ó¿ìÁ®¸¦ ½á¼­ HTML Çü½ÄÀÇ ¹®¼­¸¦ ÀÐÀ» ¼ö ÀÖ´Ù. ´ç½ÅÀº latex·Î "X-Windows" ÀÇ ¾ÕºÎºÐÀ» LyX¸¦ ½á¼­ LyX¸¦ Ãâ·ÂÇؼ­ latex¸¦ ÀÐÀ» ¼ö ÀÖ´Ù. <sect> Copyright <p> Copyright policy is GNU/GPL as per LDP (Linux Documentation project). LDP is a GNU/GPL project. Additional restrictions are - you must retain the author's name, email address and this copyright notice on all the copies. If you make any changes or additions to this document then you should intimate all the authors of this document. </article>