玄齋詩歌日誌

アメーバブログを退会しました。ヤフーブログだけ続けます。よろしくお願いいたします。

自由研究・その他

[ リスト | 詳細 ]

僕が疑問に思ったことを、図書館等で調べた結果を、

ここに載せています。
記事検索
検索

全2ページ

[1] [2]

[ 次のページ ]

イメージ 1
 
 
Google で検索していると、いろんな事が分かってきます。
 
漢文の原文が載っている中国語のサイトを見ていると、
いくつかの文字が表示されないで「・」みたいな形になっていることが
良くあります。
 
その場合にこの文字がどんな字であるかを推測する方法が
見つかりました。
 
例えば、『荘子(そうじ)』の注釈を集めた
『荘子集釈(そうじちゅうしゃく)』の原文が読めるサイトがありまして、
その中の最初の篇である「内篇(ないへん)逍遙遊(しょうようゆう)第一」
の一部が、
 
「鯤即卵字,許慎作●,古音讀如關,亦讀如昆。」
 
というふうになっていて、「●」の部分の文字がわからないのです。
 
 
こういう場合には、 Google で前後の文を検索してみると、
面白い結果が得られます。
 

検索のキーワードを以下のようにします。
 
"鯤即卵字" "許慎作" "古音讀如關"
 
この下の画像のようにします。
 
 
イメージ 2
 
 
そして検索結果をずっと見ていくと、表示できないものもありますが、
その中には、以下の画像のような結果が出て来ます。
 
 
 
イメージ 3
 
 
 
この検索結果の太字の強調部分を見ますと、
 
鯤即卵字,許慎作,古音讀如關,
鯤即卵字,許慎作,古音讀如關,
 
というふうにして、わからなかった文字の部分の候補が
発見されるのです。
 
候補として、「廾」と「卝」の二つが出て来ました。
 

ここからさらに検討する際には、もう少し前後の多くの文章を読んでいきますと、
 
「段玉裁曰:魚子未生者曰鯤。鯤即卵字,許慎作●,
古音讀如關,亦讀如昆。」
 
書き下し文は、
 
「段玉裁(だんぎょくさい)曰(いわ)く:
魚子(ぎょし)の未だ生ぜざる者を『鯤(こん)』と曰(い)う。
『鯤(こん)』は即ち『卵(らん)』の字で,許慎(きょしん)は『●』と作り,
古音(こおん)は『関(かん)』の如(ごと)くに読み、
亦(ま)た『昆(こん)』の如くに読む。」
 
 
この文を読んでいくと、清の時代の儒学者の段玉裁(だんぎょくさい)
という人の注釈の中で、まだ生まれていない魚の卵のことを
『鯤(こん)』と言い、それを後漢の時代の儒学者の許慎(きょしん)
という人は『鯤(こん)』の字に『●』の字を当てて、その字は「関(かん)」、
または「昆(こん)」と読むということです。
 
この二つの文字、「廾」は「キョウ」と読み、「卝」は「カン」と読みます。
ですからこの場合、「卝(カン)」の方が妥当だとわかります。
 
 
確認のため、「卝(カン)」を昔の辞書である
『康煕字典(こうきじてん)』で引くと、
 
「總角也、幼稚也」とありました。
「總角(総角: そうかく)」とはあげまきのことで、
子どもの髪を頭の両側に束ねて角のように髪を結うことです。
 
そしてもう一つの意味として「幼稚(ようち)」があるので、
「魚の卵」とは「幼い」という意味で共通していますので、
「●」は「卝(カン)」だろうと推測が付きます。
 
さらに、この注釈を付けた段玉裁(だんぎょくさい)自身が著した
『説文解字注(せつもんかいじちゅう)』の中で、
 
 「卝(カン)」の字の解説で、「古文卵」、つまり、
古い時代には卵の意味で使っていたとありましたので、
「卝(カン)」で良さそうだとわかります。
 
 
これだけわかるだけでもずいぶん違います。
今までの当てずっぽうよりは正解により近づいています。
 
 
漢文に関する本はとても高いので、
購入をする前にきちんとした原文に近いものが得られるのは嬉しいです。
 
当時のお相手の方のことを考えていろいろと勉強していく中で、
いろんな事に日々気づいています。
これからもしっかりとがんばっていこうと思います。
先週の終わりから今日まで、「隠岐後鳥羽院和歌大賞」に投稿するための
短歌を作っていました。
 
その短歌を作る際に一つの参考とするために、
万葉集の月の短歌をまとめて読んでみようと思いました。

僕はそういうものをまとめて読むために、Excel で表を作ってから、
その表をプリントアウトしてから読む習慣があります。
その方がいつも読みやすいと思っています。

そこでまず次のサイトから、短歌の部分だけを、
Excel のシートにコピー&ペーストしました。
 
 
 たのしい万葉集: 月(つき)を詠んだ歌
 
http://www6.airnet.ne.jp/manyo/main/nature/tsuki.html
 
 
 
Excel のシートにコピー&ペーストしたら、次のようになりました。
 
 
 
イメージ 1
 
 
これを見ると、その歌の番号と短歌の本文が一つのセルに
まとまってしまっており、
しかも一行一行の間に空白行があるので、
手動で表を作るには時間がかかりそうだと思いました。
 

各行のデータを見てみると、次のようになっています。
 
 0008: 熟田津に船乗りせむと月待てば潮もかなひぬ今は漕ぎ出でな
 
四桁の数字(指定した桁数以下の数値にはゼロを付けた数字)と
コロンと半角スペース、そして短歌の本文という形になっています。
 

このデータの構造は同じなので、
これは Excel の操作を自動化するためのマクロというプログラムに
出来るのではないかと思いました。
 
少なくともマウスで一つ一つ、数百件も処理するよりは
楽だろうと思いました。
 
そこで次のようなマクロのプログラムを書いてみました。
 
 
' ここからがマクロのコードになります。
' この緑色の行はコメント行です。
 
' エラー防止のためのお約束です。
Option Explicit
 
' 短歌と番号を別々のセルに入れて整理するマクロのプログラムです。
Sub 短歌と番号の抜き出し()
 
  ' 変数の宣言です。
  
  ' セルの範囲を示す変数です。
  Dim r As Range
  Dim r2 As Range

  ' セルの文字列の値を格納します。
  Dim sr As String
  
  ' セルの文字列の値を番号と本文に分けて取得する変数です。
  Dim sg() As String
  
  
  ' マウスで選択したセルの範囲の一個一個のセルで、
  ' 処理を行わせるためのループです。
  For Each r In Selection
 
    bLabel:
      
    ' セルの値を変数 sr に代入します。
    sr = r.Value
    
    ' もしセルが空白であれば、
    If sr = "" Then
    
      ' さらにもしその下のセルも空白であれば、
      If r.Offset(1, 0).Value = "" Then
        
        ' ループを抜けます(無限ループを回避するためです)。
        Exit For
       
      End If
     
      ' 現在のセルが空白で、下のセルが空白ではない場合は、
      ' 以下のような処理をします。
     
      ' 現在のセルのすぐ下のセルの範囲を取得します。
      Set r2 = r.Offset(1, 0)
     
      ' 現在のセルを削除します。
      r.Delete Shift:=xlUp
     
      ' すぐ下のセルと現在のセルを入れ換えて、
      '  "bLabel: " とあるマクロの行まで移動します。
      Set r = Nothing
      Set r = r2
      Set r2 = Nothing
      GoTo bLabel
     
     
    ' 普通にデータが入っている場合、
    ElseIf Len(sr) > 7 Then
     
      ' データをコロンと半角スペースを区切りとして、
      ' 番号と短歌の本文に分けます。
      sg = Split(sr, ": ")
     
      ' 右隣のセルに番号を代入します。
      ' セルの書式を四桁の数字にして、
      ' セルの配置を「中央揃え」にします。
      With r.Offset(0, 1)
        .NumberFormat = "0000"
        .HorizontalAlignment = xlCenter
        .Value = sg(0)
      End With
     
      ' 更に右隣のセルに、短歌の本文を代入します。
      r.Offset(0, 2).Value = sg(1)
     
      ' 更に二つ右のセルに、もとのデータを代入します。
      ' もとのデータをなくさないための保険です。
      r.Offset(0, 4).Value = sr
     
      ' 現在のセルのデータを消します。
      r.ClearContents
   
    End If
    Set r = Nothing
 
  Next
 
  ' 列の幅を文字列の長さに揃える処理です。
  Columns(2).EntireColumn.AutoFit
  Columns(3).EntireColumn.AutoFit
  Columns(5).EntireColumn.AutoFit
 
End Sub
' ここまででマクロのコードは終了です。
 
 
このマクロのコードを実行してみます。
 
まず、次の画像のように、マウスで範囲を指定します。
 
イメージ 2
 
 
そしてマクロを実行すると、以下のようになります。
 
 
イメージ 3
 
 
B 列に番号、C 列に短歌の本文が来て、
A 列のもとのデータが消えて、E 列に移動しています。
そして B C E 列のセルの横幅も調整されています。
 
この形に出来るとあとは表作りが楽です。
少し手動で処理をして、仕上がりは以下のようになりました。
 
 
イメージ 4
 
 
こういう作業の間にプログラミングをするのは楽しいです。
 
プログラミングをする間は、漢詩を作っているときと同じように思います。
 
他の Web ページなどでプログラミングの参考になる資料を見つけても
そのまま自分のプログラムに組み込めるわけではないので、
そこで自分で考えて自分のプログラムに使えるように
資料の中身を加工しなければなりません。
 
それが昔の漢詩を参考にして、自分の漢詩を作るときも
同じではないかなと、そう思っています。
 
案外プログラミングが得意な人は漢詩もすぐ作れるのではないかと、
そんな風にも思います。
 
 
いろんな事を学んで実行してみるのは楽しいなといつも思います。
検査入院が終わったあとも、いろんな事を学んでいきたいなと思います。

イメージ 1

イメージ 2

イメージ 3


僕は現在、以下の『全唐詩』のサイトから漢詩をコピーしてまとめるという
作業をしています。

簫堯『中國詩苑』 - 《全唐詩》總目(私人公益 全文免費下載)
http://www.xysa.com/quantangshi/t-index.htm

詩の文章をコピーして一句ごとに改行を入れ直して、
それを Excel にコピーして書き下し文を書いていって、
原文と書き下し文がセットとなる形にして、
その後、出来たものを縦書きの Word の文書にコピーする、
そして書き下し文の難しい言葉にふりがなを振っていき、
最後に原文の一文字一文字の間に半角スペースを入れて出来上がり、
それを繰り返していました。

何回も繰り返しているうちに、半角スペースをキーボードで入力するのは
かなり面倒になってきましたので、この作業を Excel のマクロという
Excel の処理を自動化するプログラムを使って行えるようにしました。
次のような Excel のマクロを書いてみました。


' ここからがマクロの本文です。(この行はコメント行です)

' エラー防止のお約束です。
Option Explicit

' 漢詩の本文に一文字一文字に半角スペースを追加するマクロです。
Sub 漢詩原文スペース追加()

 ' 変数の宣言です。
 Dim r As Range
 Dim sr As String
 Dim sa As String
 Dim co As Long

 ' マウスカーソルで選択した Excel のセルの範囲を一つ一つ取得します。
 For Each r In Selection

  sa = ""
  sr = r.Value


  For co = 1 To Len(sr)

    ' ここの部分で半角スペースを追加しています。
   ' 一文字ずつ取り出して半角スペースを加えることを繰り返しています。

   sa = sa + Mid(sr, co, 1) + " "

  Next

  ' 末尾の全角の丸や点の前後の半角スペースを削除しています。
  sa = Replace(sa, " 。 ", "。")
  sa = Replace(sa, " , ", ",")
  sa = Replace(sa, " 、 ", "、")

  ' 半角スペースが入った文字列をもとのセルの値に代入しています。
  r.Value = sa

 Next

End Sub
' ここまでが半角スペースを追加するマクロです。

' 半角スペースを全て取り除くマクロです。
' これは状態を元に戻すために仮に作りました。

Sub スペース削除()

' 変数の宣言です。
 Dim r As Range
 Dim sr As String

 ' マウスカーソルで選択した Excel のセルの範囲を一つ一つ取得します。
 For Each r In Selection

  ' セルの値を取り出しています。
  sr = r.Value

  ' 半角スペースを空っぽの文字列に置き換えて取り除いています。
  r.Value = Replace(sr, " ", "")

 Next

End Sub
' マクロの本文の終わりです。


どんな風になるかを上の画像で示しています。

マクロ使用前の状態が画像の一枚目です。
このようにしてマウスで範囲を選択して、マクロを実行しますと、
二枚目の画像の状態のように半角スペースが一文字ごとに追加されています。

そして作業を終えて Word の文書ファイルになった様子が三枚目の画像です。
一件の面倒事が解決できました。僕はこういうことを考えるのが好きです。

プログラミングは高校生以来の趣味で、学生の頃の研究分野でもありました。
書道や水墨画のような風流な特技を持たない僕は、
日々このようにして楽しんでいます。


知人から教えていただいた便利な Web サイトです。

近代デジタルライブラリー - 国立国会図書館
http://kindai.ndl.go.jp/

この Web サイトでは国立国会図書館が所蔵する明治〜昭和前期の
刊行図書を見ることができます。

いろいろと検索しているうちでとても便利なのは、
漢詩の作詩に必要な『詩韻含英異同弁』や『詩韻精英』も見ることができることです。

これはある韻の文字が含まれている言葉を集めたもので、
例えば『詩韻含英異同弁』の上平声一東の「東」の部分を見てみますと、

海東、浙東、漢東、自東、嶺東、・・・
泖東、小東、大東、乃東、江東、・・・

などと並んでいる中から言葉を選んで、
上手く各句が韻を踏むように言葉を選んでいくものです。


僕も『詩韻含英異同弁』を師匠(不孤さん)から頂いたわけですが、
少しずつぼろぼろになってきたのでそろそろ買い換えようかと思っていましたら、
こちらのサイトで見ることができるので少し見てみました。

すると10ページずつ PDF のファイルにできるので、本の全体を細かく区切って、
必要な部分だけをプリントアウトしたものを持ち歩けば便利だなと思いました。

この Web サイトも上手く活用して漢詩作りに役立てていきます。

家紋ジェネレータ

イメージ 1

何人かの方がやっておられた「家紋ジェネレータ」を、僕もしてみました。
氏名と生年月日を入力すると、その人の家紋が出てくるというものです。


サントリー綾鷹ホームページ    http://ayataka.jp/#top


お茶の宣伝のサイトのようですね。

FUN (遊戯)という箇所をクリックすれば、家紋ジェネレータのページに入ることができます。



僕の家紋は、「サボテン」でした。



【サボテン】 逆境に強く、順応能力が高く、何事にも動じることが少ないサボテン紋のあなた。
不平不満を口にせず、ジッと耐える性質のようです。その目に見えない魅力で仲間や異性から
頼りにされる事も多いでしょう。しかし本当は人一倍寂しがりやのあなた。たまには誰かに
思い切り甘えてみてはいかがですか。



逆境に強く、何事にも動じることがない・・・、そんなことはありませんが、
普段はあまり不平不満を口にしないのは当たっていますね。
ため込んで爆発しないように気をつけたいです。

開く トラックバック(1)

全2ページ

[1] [2]

[ 次のページ ]


.

ブログバナー

白川 玄齋
白川 玄齋
男性 / 非公開
人気度
Yahoo!ブログヘルプ - ブログ人気度について
検索 検索

詩歌関連

写真・画像関連

文学・語学・その他

殿堂入り

自由律俳句

登録されていません

1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31

よしもとブログランキング

もっと見る

[PR]お得情報

CMで話題のふるさと納税サイトさとふる
毎日お礼品ランキング更新中!
2019年のふるさと納税は≪12/31まで≫
数量限定!イオンおまとめ企画
「無料お試しクーポン」か
「値引きクーポン」が必ず当たる!

その他のキャンペーン


プライバシー -  利用規約 -  メディアステートメント -  ガイドライン -  順守事項 -  ご意見・ご要望 -  ヘルプ・お問い合わせ

Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.

みんなの更新記事