FreeBSD 6.0,Apache2.2,Subversion のめも
以下をためしたつもり。
- ファイルシステムベースの DAV のインストール
- Subversion ベースのDAV のインストール
- 日本語ファイル名が扱えるように (mod_encoding)
- Apache2.0, 2.2 で試行
- mod_encoding 以外は apache2.0 と同じ.
設定
''http.conf'' の ''LoadModule'' ''dav_module'', ''dav_fs_module'' がコメントアウトされたら外す。
''http.conf'' に以下を追加
Alias /webdav "/home/www/webdav"
<Directory "/home/www/webdav">
DAV on
DAVMinTimeout 1800
Options Indexes
IndexOptions FancyIndexing
AuthType Basic
AuthName "Please Input ID and Password"
AuthUserfile "/usr/local/webdav.passwd"
Require valid-user
Order allow,deny
Allow from all
</Directory>
DAVLockDB /usr/local/var/apache2/DAVLock必要なファイル/ディレクトリを作成
% mkdir /home/www/webdav % mkdir /usr/local/var/apache2 % chown www:www /home/www/webdav % chown www:www /usr/local/var/apache2 % htpasswd -c /usr/local/webdav.passwd webdav password: ********
今月の日曜日は何回か
- 人のを見て直す.
- 月の最終日は Date.new(y, m, -1) で取れるのか.
- 1 で足したり引いたりきもちわる
- (last.day - last.wday + 6) / 7
- (last.day - last.wday) > 28 ? 5 : 4
- シェルスクリプトおもろいなぁ.
require 'date' now = Date.today y = now.year m = now.month last = Date.new(y, m, -1) puts (last.day - last.wday + 6) / 7
今月「日曜日」が何回あるのか数える
Ruby
- 月の最終日を調べて,最終日曜日を調べて 7 で割る
- 1 で足したり引いたりきもちわる
- (31..28) ってできないのか. reverse した.
require 'date'
now = Date.today
y = now.year
m = now.month
last_jd = (28..31).map {|d| Date.valid_date?(y,m,d)}.reverse.detect{|d| d}
last = Date.jd(last_jd)
puts (last.day - last.wday - 1) / 7 + 1
Haskell
- がんばって書いた.なんとかコンパイルできた.
- head filter っぽいのないのかな
import Time
nDays n = TimeDiff { tdYear = 0,
tdMonth = 0,
tdDay = n,
tdHour = 0,
tdMin = 0,
tdSec = 0,
tdPicosec = 0
}
isSameMonth c0 c1 = (f c0) == (f c1)
where f = ctMonth.toUTCTime
lastDay c = head $ filter (isSameMonth c) $ [(nDays (d - day)) `addToClockTime` c| d <- [31,30..28]]
where day = ctDay.toUTCTime c
lastSunday c = head $ filter isSunday $ [(nDays (-w)) `addToClockTime` (lastDay c) | w <- [0..6]]
where isSunday c' = (ctWDay.toUTCTime) c' == Sunday
countSunday c = (d - 1) `div` 7 + 1
where d = ctDay.toUTCTime $ lastSunday c
main = do {
c <- getClockTime;
print $ countSunday c
}