Re: [Wiki][Ruby] Hiki quote_page.rb and id2name()
新城@筑波大学情報です。こんにちは。
In article <uslt4ap83.fsf@anet.ne.jp>
OOTANI TAKASHI <tksotn@anet.ne.jp> writes:
> class Symbol
> def id2name
> sprintf "%s",self
> end
> end
> でどうでしょうか。これで足りなければさらに
> class Fixnum
> def id2name
> sprintf "%s",self.to_sym
> end
> end
情報ありがとうございます。記事見た時には、これはすごいと思っ
たのですが、いざ試してみたら、残念ながら動きませんでした。今
見ると、次のように NilClass と言っているので、別の問題かもし
れません。
------------------------------------------------------------
{{quote_page('xxx')}}
NoMethodError (undefined method `id2name' for nil:NilClass): inline plugin
------------------------------------------------------------
> > HTML の <H1><H2><H3> があれば、<H2><H3><H4> とか<H3><H4><H5>
> > に変える処理をしているのでしょうけれど、何で id2name() が必
> > 要なのか、よくわかりません。id2name() を使わない書き方は、な
> > いでしょうか。
>
> 引数のtokensがシンボルのハッシュのアレイのようなので、ここだけシンボルを
> 使わないように直すのは無理だと思います。
シンボル使うなら、次のようにするのが筋じゃないかなあ。
symtoi[:h] = 1;
symtoi[:h2] = 2;
...
itosym[1] = :h1
itosym[2] = :h2
itosym[symtoi[sym]-1]
シンボルをバラスのは、Lisp では危険なこととされていたんだけ
ど。あれは、Atom だから、原子分解。
\\ 新城 靖 (しんじょう やすし) \\
\\ 筑波大学 電子・情報 \\
Fnews-brouse 1.9(20180406) -- by Mizuno, MWE <mwe@ccsf.jp>
GnuPG Key ID = ECC8A735
GnuPG Key fingerprint = 9BE6 B9E9 55A5 A499 CD51 946E 9BDC 7870 ECC8 A735