home *** CD-ROM | disk | FTP | other *** search
/ ftp.madoka.org / 2014.12.ftp.madoka.org.tar / ftp.madoka.org / pub / plum / 1.x / plum12.lzh / plum12 / module.doc < prev    next >
Text File  |  1997-09-25  |  11KB  |  331 lines

  1. plum module manual
  2.  
  3.  
  4. 1. plumñ╬ÑΓÑ╕Ñσí╝Ñδ
  5.  
  6.   plumñ╧ñ╜ñ╬ñ█ñ╚ñ≤ñ╔ñ╬╡í╟╜ñ≥ÑΓÑ╕Ñσí╝Ñδñ╦ñΦñ├ñ╞╝┬╕╜ñ╖ñ╞ñññ▐ñ╣íú
  7.  
  8.   ╔ß─╠ñ╦╛∩├≤ñ╣ñδñ╬ñ╦╔¼═╫ñ╩ÑΓÑ╕Ñσí╝Ñδñ╧ñóñΘñ½ñ╕ñß═╤░╒ñ╡ñ∞ñ╞ñññδñ╬ñ╟íó
  9.   ╔¼═╫ñ╩╡í╟╜ñ≥╗²ñ─ÑΓÑ╕Ñσí╝Ñδñ≥┴╚ñ▀╣■ñ≤ñ╟╗╚ñ├ñ╞▓╝ñ╡ññíú
  10.  
  11.   ñ▐ñ┐íóplumñ╬ÑΓÑ╕Ñσí╝Ñδñ╧╚µ│╙┼¬┤╩├▒ñ╩╣╜┬ññ╦ñ╩ñ├ñ╞ñññδñ╬ñ╟íó
  12.   ╝½╩¼ñ╟┐╖ñ╖ññ╡í╟╜ñ¼═▀ñ╖ñ»ñ╩ñ├ñ┐ñ╚ñ¡ñ╦ñΓ╝½║εñ╬ÑΓÑ╕Ñσí╝Ñδñ≥┤╩├▒ñ╦
  13.   ─╔▓├ñ╣ñδñ│ñ╚ñ¼ñ╟ñ¡ñ▐ñ╣íú
  14.  
  15.  
  16. 2. ÑΓÑ╕Ñσí╝Ñδ░∞═≈
  17.  
  18.   ╕╜║▀plumñ╦╔╒┬░ñ╖ñ╞ñññδÑΓÑ╕Ñσí╝Ñδñ╬░∞═≈ñ╟ñ╣íú
  19.  
  20.   * autoaway.plm  Ñ╦Ñ├Ñ»Ñ═í╝Ñαñ╦╣τñ∩ñ╗ñ╞AWAYñ≥└▀─Ωñ╣ñδ
  21.   * autojoin.plm  Ñ┴ÑπÑ≤Ñ═Ñδñ╦╝½╞░┼¬ñ╦JOINñ╣ñδ
  22.   * autoload.plm  .plumrcñ¼╩╤╣╣ñ╡ñ∞ñ┐ñ╚ñ¡ñ╦╞╔ñ▀╣■ñ▀─╛ñ╣
  23.   * awaynick.plm  Ñ»ÑΘÑñÑóÑ≤Ñ╚ñ≥└▄┬│ñ╖ñ┐ñ╚ñ¡ñ╦Ñ╦Ñ├Ñ»Ñ═í╝Ñαñ≥╩╤╣╣ñ╣ñδ
  24.   * config.plm    ╕╜║▀ñ╬└▀─Ωñ≥╔╜╝¿ñ╣ñδ
  25.   * cron.plm      ╗╪─Ωñ╖ñ┐╗■╣∩ñ╦Ñ│Ñ▐Ñ≤Ñ╔ñ≥╝┬╣╘ñ╣ñδ
  26.   * ctcp.plm      CTCPÑßÑ├Ñ╗í╝Ñ╕ñ≥╜Φ═²ñ╣ñδ
  27.   * dailylog.plm  1╞ⁿñ┤ñ╚ñ╬ÑφÑ░ñ≥ñ╚ñδ
  28.   * dccgate.plm   DCC SEND/GETñ≥├µ╖╤ñ╣ñδ
  29.   * dccget.plm    DCC SENDñ≥╝½╞░┼¬ñ╦╝⌡┐«ñ╣ñδ
  30.   * dynaload.plm  ÑΓÑ╕Ñσí╝Ñδñ¼╩╤╣╣ñ╡ñ∞ñ┐ñ╚ñ¡ñ╦╞╔ñ▀╣■ñ▀─╛ñ╣
  31.   * fastoper.plm  ñ╩ñδñ╚ñ≥╟█ñδ
  32.   * fork.plm      ╡»╞░╗■ñ╦Ñ╨Ñ├Ñ»Ñ░ÑΘѪÑ≤Ñ╔ñ╟╝┬╣╘ñ╣ñδ
  33.   * invite.plm    INVITEñ╡ñ∞ñ┐ñ╚ñ¡ñ╦JOINñ╣ñδ
  34.   * main.plm      IRCñ╦╛∩├≤ñ╣ñδ
  35.   * makeoper.plm  ñ╩ñδñ╚ñ≥╗²ñ├ñ╞ñññ╩ñññ╚ñ¡ñ╦íóñ╩ñδñ╚ñ≥╝Ωñ╦╞■ñ∞ñδ
  36.   * noisybot.plm  ╞├─Ωñ╬ÑßÑ├Ñ╗í╝Ñ╕ñ╦╚┐▒■ñ╖ñ╞ÑßÑ├Ñ╗í╝Ñ╕ñ≥┴≈ñδ
  37.   * privconv.plm  CHOCOAñ╟░∞╔⌠ñ╬PRIVMSGñ¼ñ¬ñ½ñ╖ñ»ñ╩ñδñ╬ñ≥╦╔ñ░
  38.   * show.plm      ╞■╬╧ñ╖ñ┐╝░ñ≥╔╛▓┴ñ╣ñδ
  39.   * taillog.plm   ─╛┴░ñ╬ÑφÑ░ñ≥╔╜╝¿ñ╣ñδ
  40.   * usermode.plm  Ñµí╝Ñ╢í╝ÑΓí╝Ñ╔ñ≥└▀─Ωñ╣ñδ
  41.   * version.plm   CTCPÑ╨í╝Ñ╕ÑτÑ≤ñ≥╩╓ñ╣
  42.   * waitoper.plm  ñ╩ñδñ╚ñ≥ñ»ñ╨ñδ
  43.   * yuurii.plm    ñµí╝ñΩñúñ╬Ñ¿Ñ▀ÑσÑ∞í╝Ñ╖ÑτÑ≤ñ≥╣╘ñª
  44.  
  45.  
  46. 3. ÑΓÑ╕Ñσí╝Ñδñ╬▓≥└Γ
  47.  
  48.   plumñ╦╔╒┬░ñ╖ñ╞ñññδÑΓÑ╕Ñσí╝Ñδñ╬▓≥└Γñ╚íó.plumrcñ╦╗╪─Ωñ╣ñδÑ╫ÑφÑ╤Ñ╞Ñúñ╬
  49.   ▓≥└Γñ╟ñ╣íú
  50.  
  51.   * autoaway.plm
  52.     Ñ╦Ñ├Ñ»Ñ═í╝Ñαñ≥╩╤╣╣ñ╖ñ┐ñ╚ñ¡ñ╦íóñ╜ñ∞ñ╦┬╨▒■ñ╖ñ┐AWAYñ≥└▀─Ωñ╖ñ▐ñ╣íú
  53.     └▀─Ωñ╡ñ∞ñ╞ñññ╩ññÑ╦Ñ├Ñ»Ñ═í╝Ñαñ╦╩╤╣╣ñ╖ñ┐ñ╚ñ¡ñ╧AWAYñ≥╝ΦñΩ╛├ñ╖ñ▐ñ╣íú
  54.  
  55.       > nick: plum_Zzz ñ¬ñΣñ╣ñ▀ñ┴ñσñªñ╟ñ╣
  56.       > nick: plum_away ñ¬ñ╟ñ½ñ▒ñ╖ñ╞ñ▐ñ╣
  57.  
  58.   * autojoin.plm
  59.     Ñ╡í╝Ñ╨ñ╦└▄┬│ñ╖ñ┐ñ╚ñ¡ñ╦╗╪─Ωñ╖ñ┐Ñ┴ÑπÑ≤Ñ═Ñδñ╦╝½╞░┼¬ñ╦JOINñ╖ñ▐ñ╣íú
  60.     ñ▐ñ┐íóKICKñ╡ñ∞ñ╞ñΓÑ┴ÑπÑ≤Ñ═Ñδñ╦JOINñ╖ñ▐ñ╣íú
  61.  
  62.       > autojoin: #ñ█ñ¿ñ█ñ¿
  63.       > autojoin: #ñ╤ñΦñ╤ñΦ:*.jp
  64.       > autojoin: %ñ▐ñ╦ñτñ▐ñ╦ñτ
  65.  
  66.   * autoload.plm
  67.     .plumrcñ¼╩╤╣╣ñ╡ñ∞ñ┐ñ╚ñ¡ñ╦íó╝½╞░┼¬ñ╦╞╔ñ▀╣■ñ▀─╛ñ╖ñ▐ñ╣íú
  68.     ñ┐ñ└ñ╖plumñ╬╛⌡┬╓ñ≥╩╤╣╣ñ╣ñδñ∩ñ▒ñ╟ñ╧ñ╩ñññ╬ñ╟├φ░╒ñ╖ñ╞▓╝ñ╡ññíú
  69.     (client:ñ╬Ñ▌í╝Ñ╚╚╓╣µñ≥╩╤ñ¿ñ┐ñΩñ╣ñδñ╚╕┼ññÑ▌í╝Ñ╚ñ≥│½ñ¡ñ├ñ╤ñ╩ñ╖ñ╦ñ╖ñ▐ñ╣)
  70.  
  71.   * awaynick.plm
  72.     Ñ»ÑΘÑñÑóÑ≤Ñ╚ñ≥└▄┬│ñ╡ñ∞ñ┐ñ╚ñ¡ñ╚íóÑ»ÑΘÑñÑóÑ≤Ñ╚ñ≥╜¬╬╗ñ╖ñ┐ñ╚ñ¡ñ╦Ñ╦Ñ├Ñ»
  73.     Ñ═í╝Ñαñ≥╩╤╣╣ñ╖ñ▐ñ╣íú
  74.  
  75.       > staynick: plum
  76.       > awaynick: plum_Zzz
  77.  
  78.   * config.plm
  79.     ╕╜║▀ñ╬╝┬╣╘┤─╢¡ñ╬╛≡╩≤ñ≥╔╜╝¿ñ╖ñ▐ñ╣íúñ│ñ╬ÑΓÑ╕Ñσí╝Ñδñ≥┴╚ñ▀╣■ñαñ╚plumñ╧
  80.     ñññ»ñ─ñ½ñ╬Ñ╟í╝Ñ┐ñ≥╔╜╝¿ñ╖ñ╞╜¬╬╗ñ╖ñ▐ñ╣íú
  81.     plumñ¼ñªñ▐ñ»╝┬╣╘ñ╟ñ¡ñ╩ñññ╚ñ¡ñ╧ñ│ñ╬Ñ╟í╝Ñ┐ñ≥╢╡ñ¿ñ╞▓╝ñ╡ññíú
  82.  
  83.   * cron.plm
  84.     ╗╪─Ωñ╖ñ┐╞ⁿ╔╒íó╗■╣∩ñ╦ñ╩ñ├ñ┐ñ╚ñ¡ñ╦Ñ│Ñ▐Ñ≤Ñ╔ñ≥╝┬╣╘ñ╖ñ▐ñ╣íú
  85.  
  86.       > cron: */*/* 00:*:* /usr/local/bin/tar -czvf log.tar.gz log/
  87.       > cron: 1998/01/01 00:*:* echo 'a happy new year' | mail hasegawa
  88.  
  89.   * ctcp.plm
  90.     ÑßÑ├Ñ╗í╝Ñ╕ñ½ñΘCTCPñ≥╝ΦñΩ╜╨ñ╖ñ╞┬╛ñ╬ÑΓÑ╕Ñσí╝Ñδñ╦┼╧ñ╗ñδñΦñªñ╦ñ╖ñ▐ñ╣íú
  91.     CTCPñ≥╗╚ñªÑΓÑ╕Ñσí╝Ñδ(dccget.plm/dccgate.plm/version.plm)ñ≥═°═╤ñ╣ñδ
  92.     ╛∞╣τñ╧╔¼ñ║┴╚ñ▀╣■ñ≤ñ╟▓╝ñ╡ññíú
  93.  
  94.   * dailylog.plm
  95.     ░∞╞ⁿñ┤ñ╚ñ╬ÑφÑ░ñ≥╡¡╧┐ñ╖ñ▐ñ╣íú╡¡╧┐ñ╣ñδñ╬ñ╧ÑßÑ├Ñ╗í╝Ñ╕ñ╩ñ╔ñ╬╔¼═╫ñ╚
  96.     ╗╫ñ∩ñ∞ñδ╛≡╩≤ñ└ñ▒ñ╟ñ╣íú
  97.  
  98.       > dailylog: ~/irc/log/log%y%m%d
  99.       > logheader: %h:%m:%s
  100.       > filemode: 600
  101.  
  102.     dailylogñ╬%yíó%míó%dñ╧ñ╜ñ∞ñ╛ñ∞╟»íó╖εíó╞ⁿñ╦╩╤┤╣ñ╡ñ∞ñ▐ñ╣íú
  103.     logheaderñ╬%híó%míó%sñ╧ñ╜ñ∞ñ╛ñ∞╗■íó╩¼íó╔├ñ╦╩╤┤╣ñ╡ñ∞ñ▐ñ╣íú
  104.  
  105.   * dccgate.plm
  106.     DCCñ╬Ñ╒ÑíÑñÑδñ╬┴≈╝⌡┐«ñ≥├µ╖╤ñ╖ñ▐ñ╣íúÑ╒ÑíÑñÑóѪÑ⌐í╝Ñδñ¼ñóñδ╛∞╣τñ╧íó
  107.     Ñ╒ÑíÑñÑóѪÑ⌐í╝Ñδ╛σñ╟dccgate.plmñ≥┴╚ñ▀╣■ñ≤ñ└plumñ≥╞░ñ½ñ╗ñ╨íó
  108.     Ñ╒ÑíÑñÑóѪÑ⌐í╝Ñδñ╬╞Γ│░ñ╟DCCñ╬Ñ╒ÑíÑñÑδñ╬┴≈╝⌡┐«ñ¼ñ╟ñ¡ñ▐ñ╣íú
  109.  
  110.   * dccget.plm
  111.     DCCñ╬Ñ╒ÑíÑñÑδñ╬┴≈┐«ñ≥╝½╞░┼¬ñ╦╝⌡┐«ñ╖ñ▐ñ╣íú
  112.     ╞▒ñ╕Ñ╒ÑíÑñÑδ╠╛ñ¼ñ╣ñ╟ñ╦┬╕║▀ñ╣ñδ╛∞╣τñ╧╩╠ñ╬Ñ╒ÑíÑñÑδ╠╛ñ╟╩▌┬╕ñ╖ñ▐ñ╣íú
  113.  
  114.       > tmpdir: ~/tmp
  115.       > filemode: 600
  116.       > dirmode: 700
  117.  
  118.   * dynaload.plm
  119.     ÑΓÑ╕Ñσí╝Ñδñ¼╩╤╣╣ñ╡ñ∞ñ┐ñ╚ñ¡ñ╦╝½╞░┼¬ñ╦╞╔ñ▀╣■ñ▀─╛ñ╖ñ▐ñ╣íú
  120.     ÑΓÑ╕Ñσí╝Ñδ╞Γñ╬┤╪┐⌠ñ╧░∞├╢┴┤ñ╞╛├ñ╡ñ∞ñ▐ñ╣ñ¼íó╩╤┐⌠ñ╧╞╔ñ▀╣■ñ▀─╛ñ╣
  121.     ┴░ñ╬├═ñ¼ñ╜ñ╬ñ▐ñ▐╗─ñΩñ▐ñ╣íú
  122.  
  123.   * fastoper.plm
  124.     Ñ┴ÑπÑ≤Ñ═Ñδñ╦JOINñ╖ñ╞ñ¡ñ┐┐═ñ≥ѬÑ┌Ñ∞í╝Ñ┐ñ╦ñ╖ñ▐ñ╣íú
  125.  
  126.       > fastoper: pupu*!pupu@*.eds.ecip.nagoya-u.ac.jp
  127.       > fastoper: cookie*!cookie@*.eds.ecip.nagoya-u.ac.jp
  128.  
  129.   * fork.plm
  130.     plumñ≥Ñ╨Ñ├Ñ»Ñ░ÑΘѪÑ≤Ñ╔ñ╟╝┬╣╘ñ╖ñ▐ñ╣íú
  131.  
  132.   * invite.plm
  133.     INVITEñ╡ñ∞ñ┐ñ╚ñ¡ñ╦ñ╜ñ╬Ñ┴ÑπÑ≤Ñ═Ñδñ╦JOINñ╖ñ▐ñ╣íú
  134.     Ñ╫ÑφÑ╤Ñ╞Ñúñ╧Ñ┴ÑπÑ≤Ñ═Ñδ╠╛ñ╚ѵí╝Ñ╢í╝╠╛ñ╬ñ╔ñ┴ñΘñ╟ñΓ╗╪─Ωñ╟ñ¡ñ▐ñ╣íú
  135.  
  136.       > invite: #ñ█ñ▓ñ█ñ▓
  137.       > invite: pupu*!pupu@*.eds.ecip.nagoya-u.ac.jp
  138.  
  139.   * main.plm
  140.     IRCñ╦╛∩├≤ñ╣ñδñ╬ñ╦╔¼═╫ñ╩╜Φ═²ñ≥╣╘ñññ▐ñ╣íú
  141.     ñ│ñ╬ÑΓÑ╕Ñσí╝Ñδñ└ñ▒ñ╧║╟─π╕┬┴╚ñ▀╣■ñ≤ñ╟▓╝ñ╡ññíú
  142.  
  143.   * makeoper.plm
  144.     Ñ┴ÑπÑ≤Ñ═Ñδñ╦╝½╩¼ñ└ñ▒ñ╖ñ½ñññ╩ñññ╬ñ╦ѬÑ┌Ñ∞í╝Ñ┐ñ╟ñ╧ñ╩ññ╛∞╣τñ╦íó
  145.     ░∞┼┘Ñ┴ÑπÑ≤Ñ═Ñδñ≥╚┤ñ▒ñ╞╞■ñΩñ╩ñ¬ñ╣ñ│ñ╚ñ╦ñΦñ├ñ╞ѬÑ┌Ñ∞í╝Ñ┐ñ╦ñ╩ñΩñ▐ñ╣íú
  146.  
  147.   * noisybot.plm
  148.     ╞├─Ωñ╬ÑßÑ├Ñ╗í╝Ñ╕ñ≥╝⌡┐«ñ╖ñ┐ñ╚ñ¡ñ╦íó┬╨▒■ñ╣ñδÑßÑ├Ñ╗í╝Ñ╕ñ≥╩╓ñ╖ñ▐ñ╣íú
  149.     ╠╛┴░ñ╬─╠ñΩñªñδñ╡ñññ╬ñ╟ñóñ▐ñΩñ¬ñ╣ñ╣ñßñ╖ñ▐ñ╗ñ≤íú
  150.  
  151.       > noisybot: ñ╫ñΘñα ñ╧í┴ññí∙
  152.       > noisybot: ñ▄ñ├ñ╚ ñ▄ñ├ñ╚ñ╕ñπñ╩ñññΓñ≤
  153.  
  154.   * privconv.plm
  155.     CHOCOAñ╟ñ╧PRIVMSGñ╬ÑßÑ├Ñ╗í╝Ñ╕ñ¼:ñ╟╗╧ñ▐ñ├ñ╞ñññ╩ñññΓñ╬ñ≥└╡ñ╖ñ»╜Φ═²ñ╟
  156.     ñ¡ñ╩ñññΦñªñ╟ñ╣(0.2f14ñ╟│╬╟º)íúñ│ñ╬ÑΓÑ╕Ñσí╝Ñδñ╧ñ╣ñ┘ñ╞ñ╬ÑßÑ├Ñ╗í╝Ñ╕ñ╦
  157.     :ñ≥ñ─ñ▒ñ╞íóCHOCOAñ¼└╡ñ╖ñ»╜Φ═²ñ╟ñ¡ñδñΦñªñ╦ñ╖ñ▐ñ╣íú
  158.  
  159.   * show.plm
  160.     ╗╪─Ωñ╖ñ┐╝░ñ≥╝┬╣╘ñ╖ñ╞íóñ╜ñ╬╖δ▓╠ñ≥NOTICEñ╟╩╓ñ╖ñ▐ñ╣íúñ│ñ╬ÑΓÑ╕Ñσí╝Ñδñ≥
  161.     ┴╚ñ▀╣■ñαñ╚íóSHOWñ╚ñññªÑ│Ñ▐Ñ≤Ñ╔ñ¼╗╚ñ¿ñδñΦñªñ╦ñ╩ñΩñ▐ñ╣íú
  162.     ñ│ñ∞ñ╧íó/SHOW 1+2 ñ╬ñΦñªñ╦╗╚ñññ▐ñ╣íú
  163.     ┤≡╦▄┼¬ñ╦Ñ╟Ñ╨Ñ├Ñ░═╤ñ╩ñ╬ñ╟╔ß─╠ñ╧┴╚ñ▀╣■ñα╔¼═╫ñ╧ñóñΩñ▐ñ╗ñ≤íú
  164.  
  165.   * taillog.plm
  166.     Ñ»ÑΘÑñÑóÑ≤Ñ╚ñ≥└▄┬│ñ╣ñδ─╛┴░ñ╬ÑφÑ░ñ≥╔╜╝¿ñ╖ñ▐ñ╣íú
  167.  
  168.       > taillog: 50
  169.       > logheader: %h:%m:%s
  170.  
  171.     logheaderñ╬%híó%míó%sñ╧ñ╜ñ∞ñ╛ñ∞╗■íó╩¼íó╔├ñ╦╩╤┤╣ñ╡ñ∞ñ▐ñ╣íú
  172.  
  173.   * usermode.plm
  174.     IRCÑ╡í╝Ñ╨ñ╦└▄┬│ñ╖ñ┐ñ╚ñ¡ñ╦ѵí╝Ñ╢í╝ÑΓí╝Ñ╔ñ≥└▀─Ωñ╖ñ▐ñ╣íú
  175.  
  176.       > usermode: +i
  177.  
  178.   * version.plm
  179.     CTCP VERSIONñ≥╝⌡ñ▒╝Φñ├ñ┐ñ╚ñ¡ñ╦íóplumñ╚perlñ╬Ñ╨í╝Ñ╕ÑτÑ≤ñ≥╩╓ñ╖ñ▐ñ╣íú
  180.  
  181.   * waitoper.plm
  182.     Ñ┴ÑπÑ≤Ñ═Ñδñ╦JOINñ╖ñ╞ñ¡ñ┐┐═ñ≥ѬÑ┌Ñ∞í╝Ñ┐ñ╦ñ╖ñ▐ñ╣íú
  183.  
  184.       > waitmax: 20
  185.       > waitoper: pupu*!pupu@*.eds.ecip.nagoya-u.ac.jp
  186.       > waitoper: cookie*!cookie@*.eds.ecip.nagoya-u.ac.jp
  187.  
  188.   * yuurii.plm
  189.     pirc bot ñµí╝ñΩñúñ╬Ñ¿Ñ▀ÑσÑ∞í╝Ñ╖ÑτÑ≤ñ≥╣╘ñññ▐ñ╣íúñµí╝ñΩñú═╤ñ╬
  190.     .pluginrcñ╚plug-inñ¼ñ╜ñ╬ñ▐ñ▐╗╚ñ¿ñ▐ñ╣íú╕╜║▀Ñ¿Ñ▀ÑσÑ∞í╝Ñ╚ñ╖ñ╞ñññδñ╬ñ╧
  191.     yuurii 1.6.2ñ╟ñ╣íú
  192.  
  193.       > yuurii: .pluginrc
  194.  
  195.  
  196. 4. ÑΓÑ╕Ñσí╝Ñδñ╬║εñΩ╩²
  197.  
  198.   plumñ≥ñ╖ñ╨ñΘñ»╗╚ñ├ñ╞ñññδñ╚íó╝½╩¼ñ╟ñΓÑΓÑ╕Ñσí╝Ñδñ¼║εñΩñ┐ñ»ñ╩ñδñ½ñΓñ╖ñ∞
  199.   ñ▐ñ╗ñ≤íú
  200.  
  201.   plumñ╦╔╒┬░ñ╖ñ╞ñññδÑΓÑ╕Ñσí╝Ñδñ≥╕½ñδñ╚ñ∩ñ½ñδñ╚╗╫ñññ▐ñ╣ñ¼íóplumñ╬
  202.   ÑΓÑ╕Ñσí╝Ñδñ╦ñ╧ñóñδ╖Φñ▐ñ├ñ┐╜±╝░ñ¼ñóñΩñ▐ñ╣íúñ╜ñ∞ñ╧íó
  203.  
  204.     package sample;
  205.     $_ = 'sample';
  206.  
  207.   ñ╚ñññªñΓñ╬ñ╟ñ╣íúñ│ñ∞ñ╧plumñ╦sampleÑ╤Ñ├Ñ▒í╝Ñ╕ñ≥╗╚═╤ñ╣ñδñ╚ñññªñ│ñ╚ñ≥
  208.   └δ╕└ñ╣ñδñΓñ╬ñ╟ñ╣íúsampleñ╬╔⌠╩¼ñ╧ÑΓÑ╕Ñσí╝Ñδñ┤ñ╚ñ╦╞╔ñ▀ñ½ñ¿ñ╞▓╝ñ╡ññíú
  209.  
  210.   ║╟─π╕┬íóñ│ñ╬2╣╘ñ¼ñóñ∞ñ╨plumñ╬ÑΓÑ╕Ñσí╝Ñδñ╚ñ╖ñ╞╟º╝▒ñ╡ñ∞ñ▐ñ╣íú
  211.   ╩╤┐⌠ñ╬╜Θ┤ⁿ▓╜ñ╩ñ╔ñ╧╔¼ñ║ñ│ñ╬2╣╘ñ╬┤╓ñ╟╣╘ñªñΦñªñ╦ñ╖ñ╞▓╝ñ╡ññíú
  212.  
  213.   plumñ╬ÑΓÑ╕Ñσí╝Ñδñ╧┤≡╦▄┼¬ñ╦Ñ╡Ñ╓Ñδí╝Ñ┴Ñ≤ñ╬╜╕╣τñ╟ñ╣íúñ│ñ∞ñΘñ╬Ñ╡Ñ╓Ñδí╝
  214.   Ñ┴Ñ≤ñ╦ñ╧ñ╜ñ∞ñ╛ñ∞╖Φñ▐ñ├ñ┐╠╛┴░ñ¼╔╒ñññ╞ñ¬ñΩíóplumñ¼▓┐ñ½╜Φ═²ñ≥╣╘ñªñ╚ñ¡
  215.   ñ╦íóñ╜ñ∞ñ╦▒■ñ╕ñ┐Ñ╡Ñ╓Ñδí╝Ñ┴Ñ≤ñ¼╝┬╣╘ñ╡ñ∞ñ▐ñ╣íú
  216.  
  217.   ñ╜ñ∞ñ╛ñ∞ñ╬ÑΓÑ╕Ñσí╝Ñδñ╟ñ╧╔¼═╫ñ╦▒■ñ╕ñ╞Ñ╡Ñ╓Ñδí╝Ñ┴Ñ≤ñ≥║εñ├ñ╞ñ¬ñ▒ñ╨íó
  218.   plumñ¼╝½╞░┼¬ñ╦ñ╜ñ∞ñΘñ≥╝┬╣╘ñ╖ñ╞ñ»ñ∞ñ▐ñ╣íú
  219.  
  220.   plumñ¼╝┬╣╘ñ╣ñδÑ╡Ñ╓Ñδí╝Ñ┴Ñ≤ñ╦ñ╧░╩▓╝ñ╬ñΦñªñ╩ñΓñ╬ñ¼ñóñΩñ▐ñ╣íú
  221.  
  222.     server_open   Ñ╡í╝Ñ╨ñ╪ñ╬Ñ∞Ñ╕Ñ╣Ñ╚Ñ∞í╝Ñ╖ÑτÑ≤ñ¼┤░╬╗ñ╖ñ┐ñ╚ñ¡íú
  223.                   (Ñ╡í╝Ñ╨ñ╪PASSíóNICKíóUSERñ≥┴≈ñΩíó001ñ≥╝⌡┐«ñ╖ñ┐ñ╚ñ¡)
  224.     server_close  Ñ╡í╝Ñ╨ñ╚ñ╬└▄┬│ñ¼└┌├╟ñ╡ñ∞ñ┐ñ╚ñ¡íú
  225.     client_open   Ñ»ÑΘÑñÑóÑ≤Ñ╚ñ╬Ñ∞Ñ╕Ñ╣Ñ╚Ñ∞í╝Ñ╖ÑτÑ≤ñ¼┤░╬╗ñ╖ñ┐ñ╚ñ¡íú
  226.                   (Ñ»ÑΘÑñÑóÑ≤Ñ╚ñ½ñΘ└╡ñ╖ññPASSíóNICKíóUSERñ¼┴≈ñΘñ∞ñ╞ñ¡ñ┐ñ╚ñ¡)
  227.     client_close  Ñ»ÑΘÑñÑóÑ≤Ñ╚ñ╚ñ╬└▄┬│ñ¼└┌├╟ñ╡ñ∞ñ┐ñ╚ñ¡íú
  228.     main_loop     ÑßÑñÑ≤Ñδí╝Ñ╫ñ≥╜Φ═²ñ╣ñδñ╚ñ¡íú
  229.     ss_????       Ñ╡í╝Ñ╨ñ½ñΘñ╬│╞Ñ│Ñ▐Ñ≤Ñ╔ñ╬╞■╬╧ñ¼ñóñ├ñ┐ñ╚ñ¡íú
  230.     sp_????       Ñ╡í╝Ñ╨ñ╪│╞Ñ│Ñ▐Ñ≤Ñ╔ñ≥╜╨╬╧ñ╣ñδñ╚ñ¡íú
  231.     cs_????       Ñ»ÑΘÑñÑóÑ≤Ñ╚ñ½ñΘ│╞Ñ│Ñ▐Ñ≤Ñ╔ñ╬╞■╬╧ñ¼ñóñ├ñ┐ñ╚ñ¡íú
  232.     cp_????       Ñ»ÑΘÑñÑóÑ≤Ñ╚ñ╪│╞Ñ│Ñ▐Ñ≤Ñ╔ñ≥╜╨╬╧ñ╣ñδñ╚ñ¡íú
  233.  
  234.   ctcp.plmñ≥ÑñÑ≤Ñ▌í╝Ñ╚ñ╣ñδñ╚░╩▓╝ñ╬Ñ╡Ñ╓Ñδí╝Ñ┴Ñ≤ñΓ╝┬╣╘ñ╡ñ∞ñ▐ñ╣íú
  235.  
  236.     xss_????      Ñ╡í╝Ñ╨ñ½ñΘ│╞CTCPñ╬╞■╬╧ñ¼ñóñ├ñ┐ñ╚ñ¡íú
  237.     xsp_????      Ñ╡í╝Ñ╨ñ╪│╞CTCPñ≥╜╨╬╧ñ╣ñδñ╚ñ¡íú
  238.     xcs_????      Ñ»ÑΘÑñÑóÑ≤Ñ╚ñ½ñΘ│╞CTCPñ╬╞■╬╧ñ¼ñóñ├ñ┐ñ╚ñ¡íú
  239.     xcp_????      Ñ»ÑΘÑñÑóÑ≤Ñ╚ñ╪│╞CTCPñ≥╜╨╬╧ñ╣ñδñ╚ñ¡íú
  240.  
  241.   ÑΓÑ╕Ñσí╝Ñδñ╦Ñ╡Ñ╓Ñδí╝Ñ┴Ñ≤ñ¼1ñ─ñΓñ╩ññ(╩╤┐⌠ñ╬╜Θ┤ⁿ▓╜ñ└ñ▒ñ╬ñΦñªñ╩)╛∞╣τñ╧
  242.   Ñ╤Ñ├Ñ▒í╝Ñ╕╠╛ñ╦mainñ≥╗╪─Ωñ╖ñ╞ñΓñ½ñ▐ñññ▐ñ╗ñ≤íú(ñ╔ñ┴ñΘñ½ñ╚╕└ñªñ╚íóñ╜ñªñ╖ñ┐
  243.   ╩²ñ¼ñññññ╟ñ╣)
  244.  
  245.   ñ│ñ∞ñΘñ╬Ñ╡Ñ╓Ñδí╝Ñ┴Ñ≤ñ╦┼╧ñ╡ñ∞ñδ╩╤┐⌠ñ╧░╩▓╝ñ╬ñΦñªñ╦ñ╩ñ├ñ╞ñññ▐ñ╣íú
  246.  
  247.     server_open(SERVERNO)
  248.     server_close(SERVERNO)
  249.     client_open(CLIENTNO)
  250.     client_close(CLIENTNO)
  251.     main_loop(USERNO)
  252.     ss_????(SERVERNO, PREFIX, COMMAND, PARAMS)
  253.     sp_????(SERVERNO, PREFIX, COMMAND, PARAMS)
  254.     cs_????(CLIENTNO, PREFIX, COMMAND, PARAMS)
  255.     cp_????(CLIENTNO, PREFIX, COMMAND, PARAMS)
  256.     xss_????(SERVERNO, PREFIX, CTCP, PARAMS)
  257.     xsp_????(SERVERNO, PREFIX, CTCP, PARAMS)
  258.     xcs_????(CLIENTNO, PREFIX, CTCP, PARAMS)
  259.     xcp_????(CLIENTNO, PREFIX, CTCP, PARAMS)
  260.  
  261.     SERVERNO  Ñ╡í╝Ñ╨ñ╬Ñ╒ÑíÑñÑδ╚╓╣µ
  262.     CLIENTNO  Ñ»ÑΘÑñÑóÑ≤Ñ╚ñ╬Ñ╒ÑíÑñÑδ╚╓╣µ
  263.     USERNO    Ñµí╝Ñ╢╚╓╣µ
  264.     PREFIX    IRCÑ╫ÑφÑ╚Ñ│Ñδñ╬Ñ╫Ñ∞Ñ╒ÑúÑ»Ñ╣(nick!user@host.domainñ╬╔⌠╩¼)
  265.     COMMAND   IRCÑ╫ÑφÑ╚Ñ│Ñδñ╬Ñ│Ñ▐Ñ≤Ñ╔(JOIN/PART/PRIVMSGñ╩ñ╔)
  266.     CTCP      CTCPÑ│Ñ▐Ñ≤Ñ╔(PING/FINGER/VERSIONñ╩ñ╔)
  267.     PARAMS    IRCÑ╫ÑφÑ╚Ñ│Ñδñ╬╗─ñΩñ╬╔⌠╩¼(ñ│ñ∞ñ└ñ▒ñ╧╟█╬≤ñ╟ñ╣)
  268.  
  269.   ñ│ñ╬ñªñ┴íó║╟╕σñ╬8ñ─ñ╬Ñ╡Ñ╓Ñδí╝Ñ┴Ñ≤ñ╧╠ßñΩ├═ñ╚ñ╖ñ╞┼╧ñ╡ñ∞ñ┐IRCÑ╫ÑφÑ╚Ñ│Ñδñ≥
  270.   ╩╓ñ╖ñ╞▓╝ñ╡ññ(PREFIX, COMMAND/CTCP, PARAMSñ└ñ▒ñ╟ñ╣íúSERVERNO/CLIENTNO
  271.   ñ╧ñññΩñ▐ñ╗ñ≤)íúñ│ñ╬ñ╚ñ¡PREFIXñ╚PARAMSñ╧╩╤╣╣ñ╖ñ╞ñΓñ½ñ▐ñññ▐ñ╗ñ≤íú
  272.  
  273.  
  274. 5. Ñ╡Ñ≤Ñ╫ÑδÑΓÑ╕Ñσí╝Ñδ
  275.  
  276.   └Γ╠└ñ└ñ▒ñ╟ñ╧ñ∩ñ½ñΩñ╦ñ»ñññ╚╗╫ñªñ╬ñ╟íóñññ»ñ─ñ½Ñ╡Ñ≤Ñ╫ÑδÑΓÑ╕Ñσí╝Ñδñ≥
  277.   ╜±ñññ╞└Γ╠└ñ╖ñ▐ñ╣íú
  278.  
  279.       # dailyfork.plm
  280.      1: package dailyfork;
  281.      2: $day = (localtime(time))[3];
  282.      3: $_ = 'dailyfork';
  283.      4: 
  284.      5: sub main_loop {
  285.      6:   local($userno) = @_;
  286.      7:   local($today) = (localtime(time))[3];
  287.      8:   if ($day != $today) {
  288.      9:     $day = $today;
  289.     10:     exit if fork;
  290.     11:   }
  291.     12: }
  292.  
  293.   ñ│ñ∞ñ╧1╞ⁿñ┤ñ╚ñ╦forkñ╣ñδÑΓÑ╕Ñσí╝Ñδñ╟ñ╣íú║╟╜Θñ╦╞╔ñ▀╣■ñ▐ñ∞ñ┐ñ╚ñ¡ñ╦
  294.   1í┴3╣╘╠▄ñ¼╝┬╣╘ñ╡ñ∞ñ▐ñ╣íúñ│ñ╬ñªñ┴1╣╘╠▄ñ╚3╣╘╠▄ñ╧╖Φñ▐ñΩ╩╕╢τñ╟íó
  295.   2╣╘╠▄ñ╟╕╜║▀ñ╬╞ⁿ╔╒ñ≥$dayñ╦└▀─Ωñ╖ñ╞ñññ▐ñ╣íú
  296.  
  297.   sub main_loopñ╧plumñ¼ÑßÑñÑ≤Ñδí╝Ñ╫ñ≥1▓≤╜Φ═²ñ╣ñδñ┐ñ╙ñ╦1▓≤╝┬╣╘ñ╡ñ∞ñ▐ñ╣íú
  298.   7╣╘╠▄ñ╟╕╜║▀ñ╬╞ⁿ╔╒ñ≥$todayñ╦└▀─Ωñ╖íó8╣╘╠▄ñ╟░╩┴░ñ╦└▀─Ωñ╖ñ┐$dayñ╬├═ñ╚
  299.   ╚µ│╙ñ╖íóñ╜ñ∞ñ¼░πñª├═ñ╩ñΘ(╝íñ╬╞ⁿñ╦ñ╩ñ├ñ┐ñΘ)íóforkñ╖ñ╞┐╞Ñ╫ÑφÑ╗Ñ╣ñ╧
  300.   ╜¬╬╗ñ╖ñ▐ñ╣íú
  301.  
  302.       # autokick.plm
  303.      1: package autokick;
  304.      2: $_ = 'autokick';
  305.      3: 
  306.      4: sub ss_join {
  307.      5:   local($serverno, $prefix, $cmd, $chan) = @_;
  308.      6:   local($nick, $user, $host) = &'prefix($prefix);
  309.      7:   local($regex) = &'regex('*!*@*.jp');
  310.      8:   if (&'exist($'nameslist{$'userno[$serverno], $chan},
  311.      9:               "\@$'nick[$serverno]")) {
  312.     10:     if ($prefix !~ /$regex/i) {
  313.     11:       &'s_print($serverno, '', 'KICK', $chan, $nick);
  314.     12:     }
  315.     13:   }
  316.     14:   return ($prefix, $cmd, $chan);
  317.     15: }
  318.  
  319.   ñ│ñ╬ÑΓÑ╕Ñσí╝Ñδñ╧Ñ┴ÑπÑ≤Ñ═Ñδñ╦JOINñ╖ñ╞ñ¡ñ┐┐═ñ¼*!*@*.jpñ╦Ñ▐Ñ├Ñ┴
  320.   ñ╖ñ╩ñ½ñ├ñ┐ñ╚ñ¡ñ╦íóñ╜ñ╬┐═ñ≥Ñ¡Ñ├Ñ»ñ╣ñδÑΓÑ╕Ñσí╝Ñδñ╟ñ╣íú
  321.  
  322.   ss_joinñ╧Ñ╡í╝Ñ╨ñ½ñΘJOINñ¼┴≈ñΘñ∞ñ╞ñ¡ñ┐ñ╚ñ¡ñ╦╝┬╣╘ñ╡ñ∞ñ▐ñ╣íú
  323.   6╣╘╠▄ñ╧nick!user@hostnameñ≥nickíóuseríóhostñ╦╩¼▓≥ñ╖ñ▐ñ╣
  324.   7╣╘╠▄ñ╧*!*@*.jpñ╦┬╨▒■ñ╣ñδ└╡╡¼╔╜╕╜ñ≥╝Φ╞└ñ╖ñ▐ñ╣íúñ│ñ╬╛∞╣τñ╧
  325.   $regexñ╧.*\!.*\@.*\.jpñ╦ñ╩ñΩñ▐ñ╣íú
  326.   8íó9╣╘╠▄ñ╧╝½╩¼ñ¼ñ╜ñ╬Ñ┴ÑπÑ≤Ñ═Ñδñ╟ñ╩ñδñ╚ñ≥╗²ñ├ñ╞ñññδñ½ñ╔ñªñ½│╬╟ºñ╖ñ▐ñ╣íú
  327.   10╣╘╠▄ñ╟Ñ╤Ñ┐í╝Ñ≤Ñ▐Ñ├Ñ┴ñ≥╣╘ññíó11╣╘╠▄ñ╟Ñ╡í╝Ñ╨ñ╦KICKñ≥┴≈ñΩñ▐ñ╣íú
  328.   14╣╘╠▄ñ╟╠ßñΩ├═ñ≥╩╓ñ╖ñ▐ñ╣íúñ│ñ╬ÑΓÑ╕Ñσí╝Ñδñ╟ñ╧╝⌡ñ▒╝Φñ├ñ┐IRCÑ╫ÑφÑ╚Ñ│Ñδñ≥
  329.   ╩╤╣╣ñ╗ñ║ñ╦ñ╜ñ╬ñ▐ñ▐╩╓ñ╖ñ╞ñññ▐ñ╣íú
  330.  
  331.