KTUGFaq

KTUG FAQ

PerlTeX (rev. 1.10)

·Î±×ÀÎ:
ºñ¹Ð¹øÈ£:
°¡ÀÔ
Beware of friends who are false and deceitful.
°¢ÁÖTeX4ht/È­QuickLinksPDFExtractionKarnes/2009-09&value=WinEdtTip/¼ö½ÄÆíÁý › PerlTeX

¼Ò°³


Perl Äڵ带 °¡Áö°í LaTeX ¸ÅÅ©·Î¸¦ Á¤ÀÇÇØ ½á¸Ô´Â Àç¹ÌÀÖ´Â ÆÐÅ°ÁöÀÌ´Ù. Perl ¸ÅÅ©·Î°¡ LaTeX ¸ÅÅ©·Î·Î µÇ´Â °ÍÀÌ´Ù. À̷νá LaTeXÀÇ Á¶ÆÇ ´É·Â°ú PerlÀÇ ÇÁ·Î±×·¡¹Ö ´É·ÂÀ» °áÇÕÇÒ ¼ö ÀÖ°Ô µÈ´Ù.

»ç¿ë¹ý

ÇÁ¸®¾Úºí¿¡ \usepackage{perltex}¶ó°í ¼±¾ðÇÑ´Ù. ÀÌÁ¦ \perlnewcommand, \perlrenewcommand, \perlnewenvironment, \perlrenewenvironmentÀÇ ³×°¡Áö ¸í·ÉÀ» ÀÌ¿ëÇÒ ¼ö ÀÖ´Ù.

¹®¼­ÄÄÆÄÀÏÀº perltex.plÀ̶ó´Â ½ºÅ©¸³Æ®¸¦ »ç¿ëÇÑ´Ù. ¿É¼ÇÀº ´ÙÀ½°ú °°´Ù.
--latex=program
        ±âº»°ªÀÎ latex ´ë½Å ´Ù¸¥ ½ÇÇà¸í·É(¿¹:pdflatex)À» ÁÙ ¼ö ÀÖ´Ù.
--nosafe
        ±âº»°ªÀ¸·Î À§ÇèÇÑ PerlÄÚµå(¿¹: ÆÄÀÏ»èÁ¦)°¡ ½ÇÇàµÇÁö ¾Êµµ·Ï µÇ¾î Àִµ¥
        ÀÌ ¿É¼ÇÀº ¾ÈÀüÀåÄ¡¸¦ Ç®¾îÁØ´Ù. ¸ðµç Perl Äڵ尡 ±×´ë·Î ½ÇÇàµÈ´Ù.
--permit=feature
        ƯÁ¤ PerlÄڵ常À» ¾ÈÀüÀåÄ¡·ÎºÎÅÍ ÇØÁ¦ÇÑ´Ù. ¿©·¯¹ø ¿É¼ÇÀ» ÁÙ ¼ö ÀÖ´Ù.

º¸±â1: ÇÑ±Û Sorting ¿¹Á¦

TeXÀ¸·Î´Â ¹®ÀÚ¿­À» ¼ÒÆÃÇÏ´Â Äڵ带 Â¥±â°¡ ½±Áö¾Ê´Ù. PerlTeX¿¡°Ô ÀÌ·± °ÍÀº ½ÄÀº Á× ¸Ô±âº¸´Ù ½±´Ù.

test.tex:
\documentclass[a4paper]{article}
\usepackage{perltex}
\usepackage{dhhangul}
\perlnewcommand{\sortarg}[1]{join ',', sort split ',', $_[0]}
\newcommand{\teststring}{ÇѱÛ,°¡³ª´Ù,¿ì¸®³ª¶ó,´ëÇѹα¹}
\begin{document}
\begin{center}
\teststring\\
$\Downarrow$\\
\sortarg{\teststring}
\end{center}
\end{document}
PerlTeXÀº TeX ¸ÅÅ©·Î¸¦ ¸¸³ª¸é À̸¦ È®Àå(expand)ÇÑ ÈÄ Perl·Î ó¸®ÇÑ´Ù. È®ÀåÀ» ¸øÇÏ°Ô ÇÏ·Á¸é \noexpand¸¦ TeX ¸ÅÅ©·Î ¾Õ¿¡ ºÙÀÌ¸é µÈ´Ù.

ÄÄÆÄÀÏ:
$ perltex.pl --latex=lambda --nosafe test.tex

±× °á°ú: perltexsortexample.png

¿Í~ º¸±â¸¸ Çصµ ½Å³³´Ï´Ù. :D --Progress

º¸±â2: DB¿Í ¿¬µ¿ÇÑ List Plot ±×¸®±â

º» ¿¹Á¦´Â DB(MySQL)¿¡ ÀúÀåµÇ¾î ÀÖ´Â ¼öÄ¡ µ¥ÀÌÅ͸¦ Perl·Î ÃßÃâÇÏ¿© À̸¦ PSTricks¸¦ ÀÌ¿ëÇÏ¿© List plotÀ» ±×¸®´Â ¿¹Á¦ÀÌ´Ù. ¿©±â¼­ ±¸ÇöÇÏ·Á´Â °ÍÀº List plot¿¡¼­ Àüü Æò±Õ°ú ÃÖ´ë°ª, ÃÖ¼Ò°ªÀ» perl·Î »êÃâÇÏ¿© À̸¦ ¹Ù·Î TeXÀ¸·Î Ãâ·ÂÇÏ´Â ±â´ÉÀ» ÁÖ´Â °ÍÀÌ´Ù. ¿©±â ¿¹Á¦´Â Linux¿¡¼­ »ç¿ëÇÏ´Â °ÍÀ» °¡Á¤ÇÏ°í testÇÏ¿´À¸³ª Windows¿¡¼­µµ »ç¿ë°¡´ÉÇϸ®¶ó »ý°¢µÈ´Ù.

DB¿¡¼­ °ü·Ã µ¥ÀÌÅÍ ÃßÃâÇϱâ

º» ¿¹Á¦¸¦ µû¶ó ÇÒ ¼ö ÀÖµµ·Ï DB »ý¼º¿¡¼­ µ¥ÀÌÅÍ ÀÔ·Â ±×¸®°í ÃßÃâ±îÁö¸¦ º¸À̱â·Î ÇÏ°Ú´Ù. ÀÏ´Ü, localhost¿¡ MySQLÀÌ ¼³Ä¡ µÇ¾î ÀÖ´Ù°í °¡Á¤ÇÏ°í, 1. DB Á¢¼Ó ¹× À¯Àú »ý¼º
% mysql -h localhost -p -u root
Enter password: *****
mysql> GRANT ALL ON perltexdb.* TO 'ptuser'@'localhost' IDENTIFIED BY 'ptpass';
Query OK, 0 rows affected (0.09 sec)
mysql> CREATE DATABASE perltexdb;
Query OK, 1 row affected (0.08 sec)
mysql> quit
2. Table »ý¼º ¹× µ¥ÀÌÅÍ ÀÔ·Â
% mysql -h localhost -p -u ptuser
Enter password: ptpass
mysql> USE perltexdb;
mysql> CREATE TABLE perfdata (num INT, value FLOAT);
mysql> INSERT INTO perfdata (num,value) VALUES(1, 10.21);
mysql> INSERT INTO perfdata (num,value) VALUES(2, 20.22);
mysql> INSERT INTO perfdata (num,value) VALUES(3, 30.23);
mysql> INSERT INTO perfdata (num,value) VALUES(4, 40.24);
mysql> INSERT INTO perfdata (num,value) VALUES(5, 50.25);
mysql> INSERT INTO perfdata (num,value) VALUES(6, 52.24);
mysql> INSERT INTO perfdata (num,value) VALUES(7, 30.23);
mysql> INSERT INTO perfdata (num,value) VALUES(8, 20.22);
mysql> INSERT INTO perfdata (num,value) VALUES(9, 10.21);
mysql> INSERT INTO perfdata (num,value) VALUES(10, 8.18);

3. DB¿¡¼­ µ¥ÀÌÅÍ °¡Á®¿À±â PerlÀÇ DBI moduleÀ» »ç¿ëÇÏ¿© PSTricks¸¦ ÅëÇØ Graph¸¦ ±×¸±¶§ ÇÊ¿äÇÑ ÀÔ·Â data ÆÄÀÏÀ» »ý¼ºÇÑ´Ù.
#! /usr/bin/perl -w
# connect.pl - connect to the MySQL server

use strict;
use DBI;
my $dsn = "DBI:mysql:host=localhost;database=perltexdb";

my $mysqldbh = DBI->connect ($dsn, "ptuser", "ptpass")
    or die "Cannot connect to server\n";

my $mysqlsth= $mysqldbh->prepare(
    "SELECT num, value FROM perfdata"
);

open(DATAFH, ">perfdata.dat");
$mysqlsth->execute();

my $count = 0;
while (my @val = $mysqlsth->fetchrow_array ())
{
    print DATAFH "$val[0]\t$val[1]\n";
    ++$count;
}

$mysqlsth->finish();
print "$count rows were returned\n";

Áú¹®

¾È³çÇϽʴϱî? perl·Î tex¸¦ ÇÒ ¼ö ÀÖ´Ù´Ï ¸Å¿ì ÁÁ¾Æº¸ÀÔ´Ï´Ù. Á¦°¡ ÀÏÀü¿¡ ktugÀÇ practical use¸¦ Á¤¸®ÇØ º¼·Á°í perl¸¦ ÀÌ¿ëÇؼ­ parctical useºÎºÐÀ» down¹Þ¾Æ º»ÀûÀÌ ÀÖ½À´Ï´Ù. ±×¶§´Â ÇÑÂü ´õ Çغ¸·Á°í Çߴµ¥, ±×¸¸ ½Ã°£°ú ´É·ÂÀÌ µþ·Á¼­ ¸øÇÏ°í ¸»¾Ò½À´Ï´Ù. ±×·¸´Ù¸é, °¡·É ´ÙÀ½°ú °°Àº °Íµµ °¡´ÉÇÑÁö¿ä?

perl¸¦ ÀÌ¿ëÇؼ­ À§ÀÇ KtugWiki page¸¦ down¹Þ°í(title page¿¡¼­ wikipage name¸¦ ¹Þ°í ³­ÈÄ¿¡ °¢°¢ÀÇ Pagenameº°·Î À§ÀÇ ³»¿ëÀ» down¹Þ´Â´Ù) ³­ÈÄ¿¡ ÀÌ ³»¿ëÀ» perl¸¦ ÀÌ¿ëÇؼ­(wiki¹®¹ýÀ» tex·Î ¹Ù²Ù´Âµ¥ perl¸¦ ÀÌ¿ëÇØ¾ß ÇÒ °Í °°½À´Ï´Ù) tex·Î ¹Ù²Ü¼ö ÀÖÀ»±î¿ä? ¾îÂ¸é ±×³É perl·Î ´Ù ÇÒ ¼öµµ ÀÖÀ» ÀÏ °°À̵µ »ý°¢Àº µì´Ï´Ù¸¸......

±×·±´Ù°í Çؼ­ Á¦°¡ wikipage¸¦ down¹Þ¾Æ¼­ ¾îÂî ÇØ º¸°Ú´Ù´Â ¸»Àº ¾Æ´Õ´Ï´Ù. ±×·¡µµ ¾ÕÀ¸·Î Á¡Á¡´õ wikipage°¡ ¸¹¾ÆÁö¸é, ¾ðÁ¦°¡´Â ´©±º°¡¿¡ ÀÇÇؼ­ ÀÌ·±ÇÑ ÀÏÀÌ µÇ¾îÁ®¾ß ÇÏÁö ¾ÊÀ»±î? »ý°¢Çؼ­ ±×³É Çѹø »ý°¢³ª´Âµ¥·Î Àû¾î º¸¾Ò½À´Ï´Ù. wikiµµ ÁÁÁö¸¸, ¾Æ¹«·¡µµ Á¦ ³ªÀÌ(?)¿¡´Â ±×³É Ã¥À¸·Î ÇÑ±Ç °¡Áö°í ÀÖ´Â °Íµµ ÁÁ½À´Ï´Ù.

¿©±â¿¡ ÀÌ·± ³»¿ëÀÌ ¾î¿ï¸®Áö ¾ÊÀ¸¸é Áö¿ì¼Åµµ °ü°è¾ø½À´Ï´Ù. --synapse

^
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2008-01-11 00:52:35
Processing time 0.0460 sec