[#37041] [ANN] Exerb/Exerb-CC 2.6.0 — Yuya Kato <yuya-ml@4th.to>
未踏ユース終了まで1ヶ月を切って、焦り気味のYuyaです。
27 messages
2003/02/02
[#37074] Re: [ANN] Exerb/Exerb-CC 2.6.0
— Satoshi Osabe <s-osabe@...>
2003/02/09
長部と申します。
[#37096] Re: [ANN] Exerb/Exerb-CC 2.6.0
— Satoshi Osabe <s-osabe@...>
2003/02/11
長部です。
[#37202] Re: [ANN] Exerb/Exerb-CC 2.6.0
— "TOYOFUKU Chikanobu" <toyofuku@...>
2003/03/02
豊福です。
[#37206] Re: [ANN] Exerb/Exerb-CC 2.6.0
— Yuya Kato <yuya-ml@4th.to>
2003/03/04
Yuyaです。
[#37208] Re: [ANN] Exerb/Exerb-CC 2.6.0
— Satoshi Osabe <osabe@...>
2003/03/04
長部と申します。
[#37209] Re: [ANN] Exerb/Exerb-CC 2.6.0
— nobu.nakada@...
2003/03/04
なかだです。
[#37211] Re: [ANN] Exerb/Exerb-CC 2.6.0
— "U.Nakamura" <usa@...>
2003/03/04
こんにちは、なかむら(う)です。
[#37047] String#each_byte — Take_tk <ggb03124@...>
たけ(tk)です
12 messages
2003/02/04
[#37050] Re: String#each_byte
— Tietew <tietew-ml-ruby-list@...>
2003/02/04
[#37052] 改行が認識されない? — 金光雅夫 (KANEMITSU Masao) <masao-k@...>
金光です。どもっ。
6 messages
2003/02/04
[#37058] Re: Local variables & blocks — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
27 messages
2003/02/05
[#37059] Re: Local variables & blocks
— ichimal@...
2003/02/06
皆様、初めまして鈴木です。
[#37063] Re: Local variables & blocks
— matz@... (Yukihiro Matsumoto)
2003/02/07
まつもと ゆきひろです
[#37110] Re: Local variables & blocks
— ichimal@...
2003/02/16
鈴木です。
[#37115] Re: Local variables & blocks
— Tanaka Akira <akr@...17n.org>
2003/02/17
In article <200302161629.h1GGTvJ5008901@fenix.ne.jp>,
[#37123] 私はこれにハマリました。
— Shin-ichiro HARA <sinara@...>
2003/02/18
原です。
[#37065] UDPから受信出来ない。 — Toru MITANI <toru@...>
6 messages
2003/02/07
[#37081] setup.rb: Patch to ignore CVS,*~,... — "Shirai,Kaoru" <shirai@...>
白井です。
13 messages
2003/02/10
[#37082] Re: setup.rb: Patch to ignore CVS,*~,...
— Minero Aoki <aamine@...>
2003/02/10
あおきです。
[#37083] Re: setup.rb: Patch to ignore CVS,*~,...
— "Shirai,Kaoru" <shirai@...>
2003/02/10
白井です。
[#37084] Re: setup.rb: Patch to ignore CVS,*~,...
— Minero Aoki <aamine@...>
2003/02/10
あおきです。
[#37085] Re: setup.rb: Patch to ignore CVS,*~,...
— "Shirai,Kaoru" <shirai@...>
2003/02/10
白井です。
[#37114] 配列とべき集合 — Masahiro Sato <msato@...>
7 messages
2003/02/17
[#37135] TMailと..なFrom行 — ICHIKAWA Manabu <ichikawa@...>
市川ともうします。
5 messages
2003/02/19
[#37153] rubyからJavaScriptの関数を起動する方法は? — "Masakazu Fujimoto" <masakazu@...>
8 messages
2003/02/23
[#37162] Rubyの10年 — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
9 messages
2003/02/24
[#37171] setup.rb 3.1.4 — Minero Aoki <aamine@...>
あおきです。
7 messages
2003/02/25
[#37179] — "松尾尚典" <matsuo.hisanori@...>
松尾です。こんばんは。
10 messages
2003/02/25
[ruby-list:37081] setup.rb: Patch to ignore CVS,*~,...
From:
"Shirai,Kaoru" <shirai@...>
Date:
2003-02-10 06:22:40 UTC
List:
ruby-list #37081
白井です。
[ruby-list:30270] setup.rb のスレッドでも議論されていた、
install.rb/setup.rb で .bak .org .rej CVS/ RCS/ といったゴミを弾けないか
という問題についてです。
tarball で配布する際はあらかじめ削除するという手があるのですが、 CVS
ディレクトリを含むソースツリー上で開発している時にも install.rb/setup.rb
を使いたい場面があります。やはりゴミはインストールの対象から除いてくれた
方がありがたいと思います。
というわけで、 setup-3.1.2 に対するパッチを書きました。これにより、
RCS CVS *~ *.bak *.BAK core *.core #* .#* *.orig *.rej *.old
といったファイルがインストールの対象から除かれます。
ところで、 src/*.rb から install.rb/setup.rb を作る方法が見付からなか
ったのですが、どうすれば良いのでしょうか? とりあえず、
for type in setup install; do
cat src/in.$type.rb \
| ruby -ne 'if ($_ =~ %r"setup/(\w+)") then system("cat",
"src/#{$1}.rb") else print($_) end' \
> $type.rb
done
という風に生成しています。
--
shirai@korinkan.co.jp
Shirai,Kaoru
Korinkan Ltd.
Attachments (1)
cvsignore.diff
(1.5 KB, text/x-diff)
diff -x CVS -x tmp -x *~ -Nru setup-3.1.2.orig/src/fileop.rb setup-3.1.2/src/fileop.rb
--- setup-3.1.2.orig/src/fileop.rb Tue May 7 13:52:44 2002
+++ setup-3.1.2/src/fileop.rb Mon Feb 10 14:52:29 2003
@@ -1,3 +1,31 @@
+module CvsIgnore
+ PATTERNS = %w( RCS CVS *~ *.bak *.BAK core *.core #* .#* *.orig *.rej *.old )
+
+ class << self
+ def match?(fpath)
+ matched = false
+ filename = File.basename(fpath)
+ CvsIgnore::PATTERNS.each do |pattern|
+ matched = glob_match(pattern, filename)
+ break if matched
+ end
+ matched
+ end
+
+ def glob_match(pat, str)
+ case pat[0]
+ when nil
+ not str[0]
+ when ?*
+ glob_match(pat[1..-1], str) || str[0] && glob_match(pat, str[1..-1])
+ when ??
+ str[0] && glob_match(pat[1..-1], str[1..-1])
+ else
+ pat[0] == str[0] && glob_match(pat[1..-1], str[1..-1])
+ end
+ end
+ end
+end
module FileOperations
@@ -102,13 +130,20 @@
def all_files( dname )
Dir.open( dname ) {|d|
- return d.find_all {|n| File.file? "#{dname}/#{n}" }
+ return d.find_all {|n|
+ path = "#{dname}/#{n}"
+ File.file?(path) && !(CvsIgnore.match?(path))
+ }
}
end
def all_dirs( dname )
Dir.open( dname ) {|d|
- return d.find_all {|n| dir? "#{dname}/#{n}" } - %w(. ..)
+ dirs = d.find_all {|n|
+ path = "#{dname}/#{n}"
+ dir?(path) && !(CvsIgnore.match?(path))
+ }
+ return (dirs - %w(. ..))
}
end