[#30827] 正規表現まわりの parse — sheepman <sheepman@...>
こんにちは。
[#30850] ruby-mode.el の改善案 — sheepman <sheepman@...>
こんにちは。
[#30852] Ruby/Tk on Windows — hidaka@... (HIDAKA Takahiro)
ひだかです。
[#30855] オブジェクトをソースへ — Daisuke Aoki <dai@...>
青木@横浜です。
[#30872] ext/curses — Takaaki Tateishi <ttate@...>
立石です.
[#30885] SAGE — "Shin'ya Adzumi" <adzumi@...>
あづみです。
[#30897] ActiveScriptRuby + showModalDialog — keiichi matsunaga <ma2@...>
松永です。
[#30920] [REQ] Regexp#match! — Minero Aoki <aamine@...>
あおきです。
At Thu, 16 Aug 2001 11:24:45 +0900,
[#30945] file exist check method? — "Inoue" <inoue@...>
井上です。
こんにちは、なかむら(う)です。
新井です。
こんにちは、なかむら(う)です。
新井です。
なかだです。
新井です。
こんにちは、なかむら(う)です。
新井です。
こんにちは、なかむら(う)です。
新井です。
こんにちは、なかむら(う)です。
新井です。
なかだです。
新井です。
こんにちは、なかむら(う)です。
新井です。
もりきゅうです。長文ごめんなさい。
岩月と申します。そろそろ寝なくては。
もりきゅうです。
もりきゅうです。
なかだです。
もりきゅうです。
すぎむし。
なかだです。
もりきゅうです。subject 変えました。
In <200108201823.AA00825@yoshida.nifty.ne.jp>
File#join とか File#split とか使った事ないんですが…
なかだです。
From: nobu.nakada@nifty.ne.jp
In <20010823.222131.74756515.pegacorn@jcom.home.ne.jp>
こんにちは、なかむら(う)です。
なかだです。
もりきゅうです。
こんにちは、なかむら(う)です。
なかだです。
こんにちは、なかむら(う)です。
なかだです。
こんにちは、なかむら(う)です。
こんにちは、なかむら(う)です。
なかだです。
こんにちは、なかむら(う)です。
なかだです。
こんにちは、なかむら(う)です。
なかだです。
[#30961] popen() で Insecure PATH — 堀川 久 <vzw00011@...>
こんにちは。
まつもと ゆきひろです
こんにちは。
In <3b7e90ac.6968%vzw00011@nifty.ne.jp>
[#30987] [REQ] String#slice(re, n) — Minero Aoki <aamine@...>
あおきです。
[#31002] ruby のインストール — Andre Ribeiro Hanai <andre@...>
始めまして葉内です。
[#31005] インストールしました — 嶋崎 正貴 <hayashih@...>
嶋崎と申します
From: 嶋崎 正貴 <hayashih@interbroad.or.jp>
[#31035] 安全な文字列の評価方法 — 斉藤和樹 <QZS01353@...>
こんにちは。斉藤です。
[#31060] WIN32OLE の質問 : 環境変数の設定はどうやる? — Hirofumi Tamori <tamori@...>
[#31066] [Q] string underline in emacs — "K.Kosako" <kosako@...>
emacs 20.7.2でruby-mode.elを使用しています。
[#31069] ruby と mysql の使える webhosting — Ryuichiro Hara <ruby@...>
FAQかもしれないのですが...
[#31071] ruby on sun — Koichi Takehara <Koichi.Takehara@...>
ルビー初心者の竹原です。
[#31128] Ruby.exe で実行中は編集禁止? — Take_tk <ggb03124@...>
Ruby.exe(ruby 1.6.4 (2001-06-04) [i586-mswin32])で一日中回しているスク
[#31144] create_process または Win での外部コマンド実行 — Take_tk <ggb03124@...>
Windows で外部コマンドを実行するにはどういう方法があるのでしょうか?。
こんにちは、なかむら(う)です。
なかだです。
たけ(tk)です。
なかだです。
たけ(tk)です。
なかだです。
In message <200108291540.f7TFecg03766@sharui.nakada.kanuma.tochigi.jp>
[ruby-list:31079] Re: File#join
File#join とか File#split とか使った事ないんですが… ファイル名を扱うクラスがあればいいなと思って、 ruby の勉強を兼ねてこんなクラスを作ってます。 他の人達と方向が多少(?)ずれてるような気がしますが、 こんな考え方もあるということで…。(^^; # まだ作りかけなのでバグがあったり機能が不足してたりします。 ---- 馬越
Attachments (2)
class FileName < String
PF_UNIX = 0
PF_WINDOWS = 1
PF_DOS = 2
case RUBY_PLATFORM
when /cygwin|mswin32|mingw/
PLATFORM = PF_WINDOWS
Separator = '\\'
Separators = '\\/'
when /djgpp/
PLATFORM = PF_DOS
Separator = '\\'
Separators = Separator
else
PLATFORM = PF_UNIX
Separator = '/'
Separators = Separator
end
PSeparator = Regexp.new(Regexp.quote(Separator))
PSeparators = Regexp.new(Regexp.quote(Separators))
if defined?(casecmp)
alias icasecmp casecmp
else
def icasecmp(name)
upcase.casecmp(name.upcase)
end
end
alias casecmp <=>
def <=>(name)
case PLATFORM
when PF_WINDOWS || PF_DOS
icasecmp(name)
else # unix
casecmp(name)
end
end
def clean
clean(self)
end
def FileName.clean(path)
case PLATFORM
when PF_WINDOWS || PF_DOS
case path
when /^[#{Separators}]{2}/o
is_unc = true if PLATFORM == PF_WINDOWS
when /^([a-zA-Z]:)(.*)/
is_drv = true
drv = $1
path = $2
end
paths = path.gsub(/[#{Separators}]+/o, Separator).split(PSeparator)
else # unix
paths = path.gsub(/#{Separator}{2,}/o, Separator).split(PSeparator)
end
clean_paths = Array.new
paths.each do |elm|
case elm
when '.'
# abandon
when '..'
if clean_paths.size == 0 || clean_paths[-1] == '..'
clean_paths.push(elm)
elsif clean_paths.size == 1 && clean_paths[0] == ''
# abandon
else
clean_paths.pop
end
else
clean_paths.push(elm)
end
end
if clean_paths[0] == ''
if is_drv
head = drv
elsif is_unc
head = Separator
else
head = ''
end
elsif is_drv
head = drv
else
head = ''
end
head + clean_paths.join(Separator)
end
end