連番を任意の数字から始められるようにしてみました。ついでにスクリプト名や変数名を整理しました。(if...else構文も正しくしました:30日21時) ^_^
# kszs.awk
#
# 使い方:
# awk -f kszs.awk > num.txt
BEGIN {
# 連番開始・終了番号と面付数の入力を求める
printf "開始番号=" > "/dev/stderr"
getline sn_start < "/dev/stdin"
printf "終了番号=" > "/dev/stderr"
getline sn_end < "/dev/stdin"
printf "面付数=" > "/dev/stderr"
getline n_men < "/dev/stdin"
# 連番の個数を計算する
n_sn = sn_end - sn_start + 1
# 総シート数(ページ数)を計算する # 以下6行訂正しました
n = int ( n_sn / n_men )
if ( n_sn % n_men == 0 ) {
n_sheet = n
} else {
n_sheet = n + 1
}
## n_sheet = int ( 0.5 + n_sn / n_men ) # これは間違いでした
# i は作業中のシート番号
for ( i = 0; i < n_sheet; i++ ) {
# j はシート内の面番号
for ( j = 0; j < n_men; j++ ) {
# シート番号と連番開始番号との和が
# そのシート内最初の連番になる
# また、総シート数の値が連番の増分となる
serialnum = i + sn_start + j * n_sheet
# 連番を標準出力に改行付きで書き出す
# 最大数を超えている場合は改行だけを書き出す
if ( serialnum <= sn_end ) {
print serialnum
} else {
print ""
}
}
}
}
経緯については、前の記事をご参照ください。
http://lamium.blogspot.com/2010/10/blog-post_30.html
それより、やもさんの新しい記事の方が、串刺しやこの間の経緯がよくわかります。
Kushizashiはワールドワイドに
2010年10月30日
串刺しナンバリング:焼き鳥の一品ではござらぬ
串刺し印刷用の連番を生成するawkスクリプトを、私も遅ればせながら作ってみました。
串刺し印刷そのものをよく知らないので、なんか見当違いをしているような気もします。BEGINだけというのもawkスクリプトとしては変則的でしょうね。ご批評くだされ。
★ 総ページ数の計算と、if...else構文を正しくしました(30日21時)
# kusizasinum.awk
#
# 使い方:
# awk -f kusizasinum.awk > num.txt
BEGIN {
# 連番最大数と面付数の入力を求める
printf "最大数=" > "/dev/stderr"
getline maxnum < "/dev/stdin"
printf "面付数=" > "/dev/stderr"
getline mennum < "/dev/stdin"
# 総シート数(ページ数)を計算する # 以下6行訂正しました
n = int ( maxnum / mennum )
if ( maxnum % mennum == 0 ) {
sheetnum = n
} else {
sheetnum = n + 1
}
# sheetnum = int ( 0.5 + maxnum / mennum ) # これは間違いでした
# i は作業中のシート番号
for ( i = 1; i <= sheetnum; i++ ) {
# j はシート内の面番号
for ( j = 0; j < mennum; j++ ) {
# シート番号がそのシート内最初の連番になり
# 総シート数の値が連番の増分となる
serialnum = i + j * sheetnum
# 連番を標準出力に改行付きで書き出す
# 最大数を超えている場合は改行だけを書き出す
if ( serialnum <= maxnum ) {
print serialnum
} else {
print ""
}
}
}
}
連番を任意の番号から始められるようにした改訂版はこちら。
なお、この経緯についてはスクリプトの達人のみなさんによる次のページを参照してください。
串刺し会長やまさん:These are the days of my life
お話してきました。
串刺し印刷について。
あさうすさん:実験ルーム
串刺し面付けってなぁに?
やもさん:やもめも
あえてScriptを使わずに串刺しナンバリングしてみる(小ネタ)
Kushizashiはワールドワイドに
たけうちとおるさん:たけうちとおるのスクリプトノート
僕もScriptを使わずに串刺しナンバリング
僕もScriptを使って串刺しナンバリング
市川せうぞーさん:名もないテクノ手
あえてScriptを使って串刺しナンバリングしてみる(小ネタ)
chalcedonyさん:
くしざし試作
串刺し印刷そのものをよく知らないので、なんか見当違いをしているような気もします。BEGINだけというのもawkスクリプトとしては変則的でしょうね。ご批評くだされ。
★ 総ページ数の計算と、if...else構文を正しくしました(30日21時)
# kusizasinum.awk
#
# 使い方:
# awk -f kusizasinum.awk > num.txt
BEGIN {
# 連番最大数と面付数の入力を求める
printf "最大数=" > "/dev/stderr"
getline maxnum < "/dev/stdin"
printf "面付数=" > "/dev/stderr"
getline mennum < "/dev/stdin"
# 総シート数(ページ数)を計算する # 以下6行訂正しました
n = int ( maxnum / mennum )
if ( maxnum % mennum == 0 ) {
sheetnum = n
} else {
sheetnum = n + 1
}
# i は作業中のシート番号
for ( i = 1; i <= sheetnum; i++ ) {
# j はシート内の面番号
for ( j = 0; j < mennum; j++ ) {
# シート番号がそのシート内最初の連番になり
# 総シート数の値が連番の増分となる
serialnum = i + j * sheetnum
# 連番を標準出力に改行付きで書き出す
# 最大数を超えている場合は改行だけを書き出す
if ( serialnum <= maxnum ) {
print serialnum
} else {
print ""
}
}
}
}
連番を任意の番号から始められるようにした改訂版はこちら。
なお、この経緯についてはスクリプトの達人のみなさんによる次のページを参照してください。
串刺し会長やまさん:These are the days of my life
お話してきました。
串刺し印刷について。
あさうすさん:実験ルーム
串刺し面付けってなぁに?
やもさん:やもめも
あえてScriptを使わずに串刺しナンバリングしてみる(小ネタ)
Kushizashiはワールドワイドに
たけうちとおるさん:たけうちとおるのスクリプトノート
僕もScriptを使わずに串刺しナンバリング
僕もScriptを使って串刺しナンバリング
市川せうぞーさん:名もないテクノ手
あえてScriptを使って串刺しナンバリングしてみる(小ネタ)
chalcedonyさん:
くしざし試作
2010年10月9日
フランス詩のリズム(書きかけ)
Arthur Rimbaud(アルチュール・ランボー)の「Le dormeur du val」という詩を河津聖恵さんが10月5日付blog『詩空間』で紹介ています。140年前の今月、プロシア・フランスの激戦に遭遇した16歳のランボー。死者の寒さに気づいたランボーの優しさと正義感に河津さんは感動したといいます(http://reliance.blog.eonet.jp/default/2010/10/post-9233.html)。
フランス語ではどんな響きがするのだろうかと、Wikipediaを起点に探してみると、『Litterature audio.com』に朗読がありました(http://www.litteratureaudio.com/livre-audio-gratuit-mp3/rimbaud-arthur-le-dormeur-du-val-version-2.html)。原文も見つけました(http://poesie.webnet.fr/lesgrandsclassiques/poemes/arthur_rimbaud/le_dormeur_du_val.html)。
私はフランス語はほとんどわからないのですが、ところどころにある英語やラテン語と似通った言葉を手がかりに読み・聴いています。「D'argent」(銀の)や「Dort」(眠っている)、「il a froid」(彼は寒い)、「Tranquille」(静かな)という語の前または後ろにおく休止が、その言葉を際立たせている、そんな朗読です。
原文の行かえと朗読での区切りが一致しないように思うのです。
さらに、フランスのSaphoという歌手が歌っているというので、探してみると、彼女の公式サイトで試聴ができました。http://www.fxproject.net/sapho/audio.html ;ここの49番めにあります。ロックだと思うのですが、こちらは行かえどおりの区切りで歌っています。
フランス詩では、いったい、行かえはどんな位置づけになっているのでしょうか。
こちらでは中原中也による訳詞を引いておきましょう。『青空文庫』に収録されているものです(http://www.aozora.gr.jp/cards/001296/card47296.html)。
フランス語ではどんな響きがするのだろうかと、Wikipediaを起点に探してみると、『Litterature audio.com』に朗読がありました(http://www.litteratureaudio.com/livre-audio-gratuit-mp3/rimbaud-arthur-le-dormeur-du-val-version-2.html)。原文も見つけました(http://poesie.webnet.fr/lesgrandsclassiques/poemes/arthur_rimbaud/le_dormeur_du_val.html)。
私はフランス語はほとんどわからないのですが、ところどころにある英語やラテン語と似通った言葉を手がかりに読み・聴いています。「D'argent」(銀の)や「Dort」(眠っている)、「il a froid」(彼は寒い)、「Tranquille」(静かな)という語の前または後ろにおく休止が、その言葉を際立たせている、そんな朗読です。
原文の行かえと朗読での区切りが一致しないように思うのです。
さらに、フランスのSaphoという歌手が歌っているというので、探してみると、彼女の公式サイトで試聴ができました。http://www.fxproject.net/sapho/audio.html ;ここの49番めにあります。ロックだと思うのですが、こちらは行かえどおりの区切りで歌っています。
フランス詩では、いったい、行かえはどんな位置づけになっているのでしょうか。
Le dormeur du val
C'est un trou de verdure où chante une rivière,
Accrochant follement aux herbes des haillons
D'argent ; où le soleil, de la montagne fière,
Luit : c'est un petit val qui mousse de rayons.
Un soldat jeune, bouche ouverte, tête nue,
Et la nuque baignant dans le frais cresson bleu,
Dort ; il est étendu dans l'herbe, sous la nue,
Pâle dans son lit vert où la lumière pleut.
Les pieds dans les glaïeuls, il dort. Souriant comme
Sourirait un enfant malade, il fait un somme :
Nature, berce-le chaudement : il a froid.
Les parfums ne font pas frissonner sa narine ;
Il dort dans le soleil, la main sur sa poitrine,
Tranquille. Il a deux trous rouges au côté droit.
Accrochant follement aux herbes des haillons
D'argent ; où le soleil, de la montagne fière,
Luit : c'est un petit val qui mousse de rayons.
Un soldat jeune, bouche ouverte, tête nue,
Et la nuque baignant dans le frais cresson bleu,
Dort ; il est étendu dans l'herbe, sous la nue,
Pâle dans son lit vert où la lumière pleut.
Les pieds dans les glaïeuls, il dort. Souriant comme
Sourirait un enfant malade, il fait un somme :
Nature, berce-le chaudement : il a froid.
Les parfums ne font pas frissonner sa narine ;
Il dort dans le soleil, la main sur sa poitrine,
Tranquille. Il a deux trous rouges au côté droit.
こちらでは中原中也による訳詞を引いておきましょう。『青空文庫』に収録されているものです(http://www.aozora.gr.jp/cards/001296/card47296.html)。
谷間の睡眠者
これは緑の窪、其処に小川は
銀のつづれを小草 にひつかけ、
其処に陽は、矜 りかな山の上から
顔を出す、泡立つ光の小さな谷間。
若い兵卒、口を開 き、頭は露 き出し
頸は露けき草に埋まり、
眠つてる、草ン中に倒れてゐるんだ雲 の下 、
蒼ざめて。陽光 はそそぐ緑の寝床に。
両足を、水仙菖 に突つ込んで、眠つてる、微笑むで、
病児の如く微笑んで、夢に入つてる。
自然よ、彼をあつためろ、彼は寒い!
いかな香気も彼の鼻腔にひびきなく、
陽光 の中にて彼眠る、片手を静かな胸に置き、
見れば二つの血の孔 が、右脇腹に開 いてゐる。
銀のつづれを
其処に陽は、
顔を出す、泡立つ光の小さな谷間。
若い兵卒、口を
頸は露けき草に埋まり、
眠つてる、草ン中に倒れてゐるんだ
蒼ざめて。
両足を、
病児の如く微笑んで、夢に入つてる。
自然よ、彼をあつためろ、彼は寒い!
いかな香気も彼の鼻腔にひびきなく、
見れば二つの血の
登録:
投稿 (Atom)