[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[dennou-ruby:001980] Re: gpprint, gpview



堀之内です。

> > 一緒にコミットした変更で、GGraph に margin_info というメソッドを
> > 加えましたので利用してみてください。DCL.gropn のすぐ後に
> > ...
> 
> 素晴らしいです. どうしてこんなにさっくりと有用なメソッド定義できる
> んですか(;^^)  ぜひとも使わせていただきます!

いや、昔から整理が苦手で、必要な情報もほっとくとすぐ
わからなくなっちゃうタチだもので。以前 IDL で似たよう
なのを作って使ってたので、ずっと作りたいと思ってました。

# 今、いくつもの数値実験の図を出し始めたので、このままでは
   やばいと思って作ったまで。

> これって僕には相当難しそうに思えるのですが... 区切となる文字を考え
> ればいいんですかね. どうぞよろしくお願いいたします. (すみません)

長くなるのはディレクトリーが深いからというのが大半でしょうから、
'/' で切ればいいでしょう。こんな感じでコミットしました:

      def __shorten_path(str,maxlen)
        return str if str.length <= maxlen
        astr = str.split(/\//)
        while(str.length > maxlen)
          astr.length!=2 ? at = (astr.length)/2 : at = 0
          astr.delete_at( at )
          (a = astr.dup)[at, 0] = '...'       # insert(at,'...') if Ruby>=1.8
          str = a.join('/')
        end
        str
      end
      private :__shorten_path