おはよう。 時刻は午前七時五十分ちょうどです。(日本中央標準時)

small programs

pluto

pluto は簡素なスケジュール通知サーヴィスを提供します。 もうちゃんとメンテしてません。

文法

  <datebase> ::= | <datebase> \newline | <datebase> <stmt> \newline
      <stmt> ::= <pred> | <schedule>
      <pred> ::= pred <identifier> <expr> end
  <schedule> ::= <for> ? <string> | <for> ? <string> ; <string>
       <for> ::= <expr> | <expr> for <forparam>
  <forparam> ::= <cardinal> | (<cardinal>) | ( , <cardinal>)
               | (<cardinal> , <cardinal>)
      <expr> ::= <or>
        <or> ::= <and> | <or> , <and>
       <and> ::= <not> | <and> & <not>
       <not> ::= <period> | not <not>
    <period> ::= <shift> | <period> - <shift>
     <shift> ::= <tag> | <shift> <shiftop> <shiftparam>
   <shiftop> ::= bw | fw
<shiftparam> ::= <cardinal> | (<cardinal>) | ( , <expr>)
               | (<cardinal> , <expr>)
       <tag> ::= <primary> | <tag> $ <digits>
   <primary> ::= <date> | <wd> | leap | " string "
               | <fail> | <identifier> | (<expr>)
      <date> ::= <triple> | <wtriple> | <pair> | <wpair> | <julian>
    <triple> ::= <y> / <m> / <md>
   <wtriple> ::= <y> / <m> / <wd> <ordinal>
      <pair> ::= <y> / <yd>
     <wpair> ::= <y> / <wd> <ordinal>
    <julian> ::= <ordinal>
      <fail> ::= fail <failopt>
   <failopt> ::= | !
         <y> ::= | <ordinal>
        <yd> ::= | <ordinal>
         <m> ::= | <ordinal> | <mn>
        <mn> ::= jan | feb | mar | apr | may | jun
               | jul | aug | sep | oct | nov | dec
        <md> ::= | <ordinal>
        <wd> ::= sun | mon | tue | wed | thu | fri | sat
<identifier> ::= <letter> | <identifier> <letter>
    <letter> ::=  _ | <upper> | <lower>
     <upper> ::= A | B | C | ... | X | Y | Z
     <lower> ::= a | b | c | ... | x | y | z
    <string> ::= | <string> \character
   <ordinal> ::= <digits> | <digits> r
  <cardinal> ::= * | <cardinal2>
 <cardinal2> ::= <cardinal3> | <cardinal2> <cardinal3>
 <cardinal3> ::= <digits> w | <digits> d | <digits>
    <digits> ::= <digit> | <digits> <digit>
     <digit> ::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9

pluto による祝日の定義

pred hveq
  /03/20 &
    (1960//, 1964//, 1968//, 1972//, 1976//, 1980//, 1984//, 1988//,
     1992//, 1993//, 1996//, 1997//, 2000//, 2001//, 2004//, 2005//),
  /03/21 &
    (1949//, 1950//, 1951//, 1952//, 1953//, 1954//, 1955//, 1956//,
     1957//, 1958//, 1959//, 1961//, 1962//, 1963//, 1965//, 1966//,
     1967//, 1969//, 1970//, 1971//, 1973//, 1974//, 1975//, 1977//,
     1978//, 1979//, 1981//, 1982//, 1983//, 1985//, 1986//, 1987//,
     1989//, 1990//, 1991//, 1994//, 1995//, 1998//, 1999//, 2002//,
     2003//, 2006//, 2007//),
  not //
end

pred haeq
  /09/23 &
    (1948//, 1949//, 1950//, 1952//, 1953//, 1954//, 1956//, 1957//,
     1958//, 1960//, 1961//, 1962//, 1964//, 1965//, 1966//, 1968//,
     1969//, 1970//, 1972//, 1973//, 1974//, 1976//, 1977//, 1978//,
     1980//, 1981//, 1982//, 1983//, 1984//, 1985//, 1986//, 1987//,
     1988//, 1989//, 1990//, 1991//, 1992//, 1993//, 1994//, 1995//,
     1996//, 1997//, 1998//, 1999//, 2000//, 2001//, 2002//, 2003//,
     2004//, 2005//, 2006//, 2007//),
  /09/24 &
    (1951//, 1955//, 1959//, 1963//, 1967//, 1971//, 1975//, 1979//),
  not //
end

# 2
pred chol
  not 1948/07/20 - 2007/12/31 & "DOMAIN ERROR (in pred chol)" & fail!,
  /01/01 & "元日",
  ((/01/15 & 1948/07/20 - 1999/12/31),
   (/01/mon 2 & 2000/01/01 - 1r)) & "成人の日",
  (/02/11 & 1966/12/09 - 1r) & "建国記念の日",
  hveq & "春分の日",
  (/04/29 & 1 - 1989/02/16) & "天皇誕生日",
  (/04/29 & 1989/02/17 - 2006/12/31) & "みどりの日",
  (/04/29 & 2007/01/01 - 1r) & "昭和の日",
  /05/03 & "憲法記念日",
  (/05/04 & 2007/01/01 - 1r) & "みどりの日",
  /05/05 & "こどもの日",
  ((/07/20 & 1996/01/01 - 2002/12/31),
   (/07/mon 3 & 2003/01/01 - 1r))  & "海の日",
  ((/09/15 & 1966/06/25 - 2002/12/31),
   (/09/mon 3 & 2003/01/01 - 1r)) & "敬老の日",
  haeq & "秋分の日",
  ((/10/10 & 1966/06/25 - 1999/12/31),
   (/10/mon 2 & 2000/01/01 - 1r)) & "体育の日",
  /11/03 & "文化の日",
  /11/23 & "勤労感謝の日",
  (/12/23 & 1989/02/17 - 1r) & "天皇誕生日"
end

pred need_subs
  chol & (sun, need_subs fw 1d)
end

# 3.2
pred shol
  ((1973/04/12 - 2006/12/31 &
    (mon & chol fw 1d),
   (2007/01/01 - 1r &
    (not chol & need_subs fw 1d)))) & "振替休日"
end

# 3.3
pred nhol
  ((1985/12/27 - 2006/12/31 &
    (not sun & not shol & chol fw 1d & chol bw 1d)),
   (2007/01/01 - 1r &
    (not chol & chol fw 1d & chol bw 1d))) & "国民の休日"
end

# extra
pred ehol
  1959/04/10 & "皇太子明仁親王の結婚の儀",
  1989/02/24 & "昭和天皇の大喪の礼",
  1990/11/12 & "即位礼正殿の儀",
  1993/06/09 & "皇太子徳仁親王の結婚の儀"
end

pred lhol
  chol, shol, nhol, ehol
end

pluto-1.5.9.tar.gz [ 315k]

dvipc

dvipc は DVI ファイルのペイジ数を報告します。 DVIPC はそれぞれのファイルごとに そのペイジ数とファイル名を一行にならべて印字します。 もし、ふたつ以上のファイル名が与えられていれば、 DVIPC は 最後の行にそれらの総ペイジ数を印字します。

dvipc-1.1.1.tar.gz [ 48k]

stared

stared はtar のヘッダを非対話的に編集します。 以前に Perl で書いたものをもとにしています。


    stared script < foo.tar > bar.tar

といったふうにつかいます。 編集には Ruby のコードをつかいます。

stared-1.1r.tar.gz [ 2k]

sspbm

sspbm netpbm (pbmplus) で画像データの書式変換をおこなうときの手順を推測します。 この版は 1mar1994 1mar1994 plus patches に対応しています。

sspbm-2.1.tar.gz [ 9k]


目次

ふなばただよし 1996-2006
更新日時: 2010-01-11T19:35:42+09:00