にっきダイアリー

はてなダイアリーからはてなblogに移動してみました。

LightNEasy Mini 2.5 と PHP5.3

LightNEasyをVertrigoServ2.24(PHP5.3.10)上で起動したらNoticeが山のように出てうざい件。
ブラウザ上で出てきた警告情報を見ながら該当箇所を確認したら、変数や定数を宣言してるモジュールをrequireする前や条件によってrequireしない時も、はては初期化されてるかどうかの確認もなしにif文の中で使ってたり、文字列連結したり。
エラーレベルが低い設定になってたり、古いPHP使ってたりすると文句言われないからなーと思いつつ。

しかしこれだけは言いたい。その変数を後で使うならunsetせずに0か''代入しておけよちくしょー、と。

VBAで計算する春分の日と秋分の日

Wikipedia春分の日秋分の日のページにあった簡易計算をそのままVBAにしただけ。

' 春分の日 (1900-2099)
Function Speq(Optional year As Integer = 0) As Integer
    Dim my As Integer
    
    ' 年の指定がないときは今年で計算
    If y = 0 Then
        y = Int(Format(Date, "yyyy"))
    End If
    
    my = y Mod 4
    Speq = 20

    Select Case my
        Case 0 '西暦年数の4での剰余が0の場合
            Select Case y
                Case Is <= 1956 '1900年 - 1956年までは3月21日
                    Speq = 21
                Case 1960 To 2088 '1960年 - 2088年までは3月20日
                    Speq = 20
                Case Is >= 2092 '2092年 - 2096年までは3月19日
                    Speq = 19
            End Select
        
        Case 1 '西暦年数の4での剰余が1の場合
            Select Case y
                Case Is <= 1989 '1901年 - 1989年までは3月21日
                    Speq = 21
                Case Is >= 1993 '1993年 - 2097年までは3月20日
                    Speq = 20
            End Select

        Case 2 '西暦年数の4での剰余が2の場合
            Select Case y
                Case Is <= 2022 '1902年 - 2022年までは3月21日
                    Speq = 21
                Case Is >= 2026 '2026年 - 2098年までは3月20日
                    Speq = 20
            End Select
        
        Case 3 '西暦年数の4での剰余が3の場合
            Select Case y
                Case Is <= 1923 '1903年 - 1923年までは3月22日
                    Speq = 22
                Case 1927 To 2055 '1927年 - 2055年までは3月21日
                    Speq = 21
                Case Is >= 2059 '2059年 - 2099年までは3月20日
                    Speq = 20
            End Select
    End Select
    
End Function

' 秋分の日 (1900-2099)
Function Aueq(Optional y As Integer = 0) As Integer
    Dim my As Integer
    
    ' 年の指定がないときは今年で計算
    If y = 0 Then
        y = Int(Format(Date, "yyyy"))
    End If
    
    my = y Mod 4
    Aueq = 23

    Select Case my
        Case 0 '西暦年数の4での剰余が0の場合
            Select Case y
                Case Is <= 2008 '1900年〜2008年までは9月23日
                    Aueq = 23
                Case Is >= 2012 '2012年〜2096年までは9月22日
                    Aueq = 22
            End Select
        
        Case 1 '西暦年数の4での剰余が1の場合
            Select Case y
                Case Is <= 1917 '1901年〜1917年までは9月24日
                    Aueq = 24
                Case 1921 To 2041 '1921年〜2041年までは9月23日
                    Aueq = 23
                Case Is >= 2045 '2045年〜2097年までは9月22日
                    Aueq = 22
            End Select

        Case 2 '西暦年数の4での剰余が2の場合
            Select Case y
                Case Is <= 1946 '1902年〜1946年までは9月24日
                    Aueq = 24
                Case 1950 To 2074 '1950年〜2074年までは9月23日
                    Aueq = 23
                Case Is >= 2078 '2078年〜2098年までは9月22日
                    Aueq = 22
            End Select

        Case 3 '西暦年数の4での剰余が3の場合
            Select Case y
                Case Is <= 1979 '1903年〜1979年までは9月24日
                    Aueq = 24
                Case Is >= 1083 '1983年〜2099年までは9月23日
                    Aueq = 23
            End Select
            
    End Select
    
End Function
  • 2015/03/31 秋分の日のcase3 の数値が間違ってたので修正(コメントはあってるのにねえ……

Opera11に入れた拡張機能のメモ

増えたら追記する予定。

残念だったのがあちこちでお勧めされてるcontentblockhelperがなくなってることだった。
どんなのか試してみたかったんだけどなあ。

2012/5/5 追記

ContentBlockHelper復活してた。
拡張機能「 ContentBlockHelper」 - Opera アドオン

VMware Player Ver.3.1.4 上に FreeBSD-8.2 をインストールする

同じことを3か月おいて2回繰り返したので、次やる時のためにメモ。

  1. FreeBSDのFTPサーバーから8.2のISOイメージをダウンロード。ネットワークインストールするならbootonlyが小さくていい。
  2. VMwareを起動し「新規仮想マシンの作成」を選択。インストーライメージにダウンロードしたbootonly.isoを選択。仮想マシン名、保存先など適当に。
  3. 完了を押して仮想マシンを起動する。
  4. sysinstallが起動したらStandardインストールを選択。ディスクは全部使用、スライスはおまかせ(a)。インストールメディアに「3.FTP Passive」を選択(デフォルトのNAT接続の場合)。
  5. インストール終了後、ConfigureからPackagesを選択。misc/compat6x-i386x11-drivers/xf86-input-vmmouse と x11-drivers/xf86-video-vmware (その他好みのパッケージ)を追加。
  6. ctrl+altを押してホストに戻り、VMware Player の「仮想マシン」メニューから「VMware Tools のインストール」を選択。場合によっては VMware Tools の最新版がダウンロードされる。
  7. ゲストにもどり、マニュアルの手順通りに VMware Tools をインストール。
  8. 適当にいじって遊ぶ

todo.txt の書式

終わってないタスク
(優先度) 作-成-日 @タスクの種類 +プロジェクト 内容
終了したタスク
x 終-了-日 作-成-日 @タスクの種類 +プロジェクト 内容

で、いいのかな。
正確な情報は https://github.com/ginatrapani/todo.txt-cli/wiki/The-Todo.txt-Format 参照のこと。
てかま別に外部アプリ使うつもりもないなら「Dropboxにtxtファイルおいて、そこにtodo書き込む」って思想だけいただいて、勝手に俺書式でやっちゃってもいいような気がする。
なんか久々に本家のドキュメントを読み返したら終了マークのxは小文字だと書いてあったので訂正しておく。