オワコン

私が「オワコン」という言葉に苛立ちを覚えるのは、その言葉が発せられる文脈がたいてい、だらだらと客観的っぽい批判を書き連ねつつ、単に「俺はこれが嫌いだ」ということが言いたいんだというのが透けて見えるからだということに思い至った。そして自戒せねば、とも。


JScriptでExcelブックを操作

Windows Scripting Host では、デフォルトで VBAライクな VBScript と JavaScript ライクな JScript が動きます。ActiveXObject クラスを使うと、Excel.Application のようなOLEオブジェクトも扱えるので、JScript で Excel マクロ的なものも書けます。

Excel ブックと一体で扱いたい時は相変わらず VBA しか選択肢がないのですが、大量ファイルを一括処理するバッチなどは JScript で書いたほうが何かとやりやすいです。

というわけで備忘録的サンプル。 

/* WSH Script: JScriptからExcelブックを操作する例 */
/* 全シートのヘッダ/フッタを全部消す              */

/**
 * Operation for a worksheet
 * -- Erace all headers and footers of the sheet.
 */
function sheetOp(sheet) {
    var ps = sheet.PageSetup;

    ps.PrintArea = "";
    ps.LeftHeader = "";
    ps.CenterHeader = "";
    ps.RightHeader = "";
    ps.LeftFooter = "";
    ps.CenterFooter = "";
    ps.RightFooter = "";

}


/**
 * Get ActiveX Excel object
 */
function getExcelApplication() {
    var excel = new ActiveXObject("Excel.Application");
    return excel;
}

/**
 * main loop
 */
function main(filename, sheetOp) {
    var excel = getExcelApplication();
    var book = excel.Workbooks.Open(filename, true, false);
    try {
        var sheets = book.Worksheets;
        for (var i = 1; i <= sheets.Count; i++) {
            sheetOp(sheets.Item(i));
        }
    } finally {
        excel.DisplayAlerts = false;
        book.Close(true);
        excel.Quit();
    }
}

var args = WScript.arguments;
var filename = args(0);
main(filename, sheetOp);

Meadow + Gauche セットアップメモ

Windowsで、emacs(Meadow) 上で Gauche を使えるようにするためのメモ。 Meadow 3.01-dev と Gauche 0.9.2 の組み合わせで確認しています。

  1. Meadow をインストールする
    http://www.meadowy.org/meadow/
    Netinstall を利用する。
  2. Gauche をインストールする。
    http://practical-scheme.net/gauche/download-j.html
    Windows用バイナリインストーラを利用する。
  3. Meadow のインストールフォルダにある dot.emacs.ja を編集。以下の内容を追記する。
    追記したらファイル名を .emacs として保存
    ;;; Schemeの設定
    (setq process-coding-system-alist
          (cons '("gosh" utf-8 . utf-8) process-coding-system-alist))
    (setq scheme-program-name "gosh.exe -i")
    (autoload 'scheme-mode "cmuscheme" "Major mode for Scheme." t)
    (autoload 'run-scheme "cmuscheme" "Run an inferior Scheme process." t)
    
  4. Meadowを起動して、M-x run-scheme で gosh プロンプトが出てくればOK。

scheme-program-name の値は、Gauche をバイナリインストーラでインストールしていれば gosh.exe への Path は設定済のはずなので、ファイル名だけでいいはず。だめならフルパスを指定。

おまけ: emacs 操作メモ

  • M-x run-scheme : schme処理系開始
  • C-j : インデントつけて改行
  • C-/ : Undo
  • C-y : paste(yank)
  • C-@ : 範囲指定開始
  • M-w : コピー
  • C-x C-s : 保存
  • C-x C-w : 名前をつけて保存
  • C-c C-c : プロセスキル
  • C-c C-l : REPL処理系にロード

REPLのプロンプトでの操作

  • M-p : ヒストリ呼び出し(前)
  • M-n : ヒストリ呼び出し(次)

参考:


シンタックスハイライトのテスト

google-code-prettifyを導入してみたので

class ManagedResource[T <: {def close(): Unit}](resource: T) {
  def foreach[U](f: T => U) {
    try {
      f(resource)
    } finally {
      resource.close
    }
  }
}
object ManagedResource {
  def apply[T <: {def close(): Unit}](resource: T) = new ManagedResource(resource)
}

大なり小なりの実体参照への変換は自力でやっとかなきゃ駄目か。



車のスピーカー交換

なんか最近、カーオーディオに変なノイズが乗るなーと思って見てもらったら、ノイズ以前に左スピーカーが完全に死んでいました。なんで気づかないの私w

右ももう寿命だってことなので、その場で交換してもらいました。同グレードの型落ちが安かったので助かりました。

で、交換後。
メーカーもグレードも変わらないので音質は大差ないですが、左が生き返っただけで全然違いますね。ほんとどうして気づかなかったんだ。


[MHF]しばらくサブアカに籠ろうかと

MHFの話。

フレのみなさんのおかげで、少ない総プレイ時間のわりに順調に凄腕まで到達できたのでちと申し訳ないのですが、ここらでちょっとサブアカつくって、はじめからやりなおそうかな、なんて思ってます。

理由はいくつかあるんですが、初期で配布された特典装備に、HR1から今に至るまで頼りきりで、武器防具であれこれ悩んだりする楽しみを結構スポイルしちゃったのかなー、などと思ったのが大きいです。上位をプレミアム使ってさくっとやり過ごしてしまいましたし。

まあ、普段そういうのが面倒臭いと公言しているので、今更何言っているのか、と怒られそうですが。

サブアカは当面、猟団にも参加せずソロで黙々と狩るつもりなので、そっとしておいてください。



ブログ移行しました。それと近況

自サイトのWordPressのメンテがめんどくさくなったのでtumblrに移行しました。今後ともよろしく。

前ブログは今年の元旦から放置して、Twitterでくだらんことばっかり呟いておりましたが、Twitter見てない方向けに正月以降の近況報告などを。

  • お仕事復帰して九ヶ月ほど経ち、周囲もだいぶ遠慮がなくなってきました。まあ休みは確保できてるので、まだ手加減されてるのかもしれませんが。それなりに忙しい日々です。
  • 大震災、被災された方や諸々に巻き込まれてしまった方には、改めてお見舞い申し上げます。私はと言えば、親戚含めてさほど被害はありませんでした。「3.11以降、この国の空気は変わってしまった」などとしたり顔で言う評論家もいますが、あれから三ヶ月、個人的には、精神面も含め、震災前とほとんど変わらない感じでおります。
  • 物作りの方は、あいかわらずほとんど手が着いておりません。ソフトシンセを買ってインストールして腐らせております。期待してくださってる方には、申し訳なく思っております。

こんな感じで、概ね元気に後ろ向き生活をしています。


Close Bitnami banner
Bitnami