トップ(最新)

nDiki : シフト JIS

シフト JIS

文字符号化方式の1つ。

1バイト目2バイト目
ASCII / JIS ローマ字0x21 - 0x7E
半角カタカナ0xA1 - 0xDF
2バイト文字0x81 - 0x9F、0xE0 - 0xEF0x40 - 0x7E、0x80 - 0xFC

2バイト目は 0x40 から 0xFC のうち 0x7E を除いた範囲。 0x40 - 0x7E (@,A-Z,[,\,],^,_,`,a-z,{,|,},~) はそのバイトを見ただけでは、1バイト目か2バイト目か区別できない。

スポンサード リンク

Related term

2004年7月19日 (月)

Mozilla カスタムキーワード このエントリーを含むはてなブックマーク

スポンサード リンク

Mozilla カスタムキーワードを使ってみた。

日本語キーワードは Mozilla を起動した時のロケール設定に依存したエンコーディングでエンコードされるようだ。 普段通りだと日本語EUCになるが、

 LANG=ja_JP.UTF-8 mozilla

で起動するとUTF-8でエンコードされる。

 javascript:location.href = 'http://www.naney.org/diki/dk/'
   + encodeURIComponent('%s') + '.html';

として普段のロケール設定でもキーワードを UTF-8 でエンコードできる。 シフト JIS にするには?

◇ Twitter やってます。この記事が気にいったらぜひ twitter.com/Naney の follower になってください。


[ 7月19日全て ]

2004年7月23日 (金)

プロジェクト関連ドキュメントを TeX このエントリーを含むはてなブックマーク

現在進行中のプロジェクトの一つがそろそろ大詰め。 ドキュメント書きに突入。 前回までは過去の方法を踏襲して MS Word ベースだったのだが、自分がマネージャになった今期からは全面的に TeX ベースへ移行させる。

LinuxWindows でそれぞれ

を用意。 Makefile は時間がなかったので GNUmakefile と Makefile を作って Linux 用と Windows 用の両方作ったのだが、後々面倒なので一本化したい。


[ 7月23日全て ]

2004年7月28日 (水)

xyzzyを読み取り専用メディアから起動する このエントリーを含むはてなブックマーク

新人プログラマには「プログラムを組むんだから、とりあえずテキストエディタを何か入れておけ」と言うのだが、実際のところ自分が今仕事で使っている Windows BOX にはテキストエディタインストールされていない。

メモ帳」ですよ。

ちゃんと編集する時は Linux BOX 上の Emacs を使ってしまうので、Windows BOX では力を入れて環境構築していなかったり。 しかし、やっぱり何かテキストエディタがないと不便といえば不便。 ということで久しぶりに何か入れてみることにした。

最近は「インストール不要のソフトを USB メモリに入れて相手先で利用できるようにする」環境作りをぽちぽちしているので、エディタもそのようにできるのを選びたい。

  • 読み取り専用メディアからインストールなしで起動できる
  • UTF-8 のファイルを編集できる
  • できれば Emacs ライクなキーバインディング

というのが主な条件。

書き込み禁止にした USB メモリや、read only な Samba 公開ディレクトリ上(あるいは CD-R 上)から直接起動できるようにするのが目的。

@ xyzzy 0.2.2.233

以前にもちょっと使ったことがある。 Meadow はヘビーだし設定が面倒なので xyzzy が良い。

で実験。

アーカイブを展開してすぐ xyzzy.exe を実行できるのだが、

  1. ダンプイメージ
  2. etc/DOC (lisp/help.l より)
  3. $XYZZY/usr/usrname/os/xyzzy.ini
  4. $XYZZY/usr/usrname/os/.xyzzy.history

を書き出せる必要がある。etc/DOC 以外の位置はコマンドライン引数環境変数で指定できる。が etc/DOC だけ変更する方法がわからない。

保留。

@ サクラエディタ 1.4.8.0

同僚が使っているサクラエディタも試してみる。 インストーラを使用したくないので、実行可能ファイル・ヘルプファイルそれから必要な補助ファイルをそれぞれ取得して、同じディレクトリへ。

こちらは read only でも特に問題なく起動した。 ただし、

なので躊躇。

@ 再び xyzzy

xyzzy の設定をいじってみる。

site-lisp/siteinit.l を

 (setq lisp::*documentation-path*
       (merge-pathnames "xyzzy-DOC"
                        (directory-namestring (si:dump-image-path))))

として etc/DOC をかわりにダンプイメージファイルと同じディレクトリに xyzzy-DOC として生成するように変更。

それから起動用に

 mkdir %TMP%\xyzzy
 xyzzy -image %TMP%\xyzzy\xyzzy.dump -config %TMP%\xyzzy

というバッチファイルを作成。ダンプイメージファイル、設定ファイルを置くディレクトリを環境変数TMPの下の xyzzy サブディレクトリに出力するようにする。

これで書き込み禁止ディレクトリから起動できるようになった。

必要があれば書き込みディレクトリはアカウント毎に変えた方がいいかな。 Windows 98 SE だとユーザ名やホームディレクトリとして使える環境変数は標準状態では存在しないようなので一工夫が必要になるか。


[ 7月28日全て ]

2005年4月10日 (日)

Windows 上での Apache 2.0.53 では PATH_INFOシフト JIS このエントリーを含むはてなブックマーク

WiKickerWindows 上での動作確認の続き。 WiKickerPPM パッケージを作成して ActivePerl 5.8.6.811 上にインストール。 依存するモジュールで、ActivePerl に入っていないものは以下の通り。

既に手元で PPM パッケージ化済みなので、これもインストールしておく。

後は RCS をパスの通っているディレクトリに入れてタイムゾーンを設定。

 TZ=JST-9

CGI プログラムとして実行。 お、表示できた。 書き込みはと。

エラー

予想していたけれど、sendmail に依存していたところ。 sendmail が見つからない場合はメールの送信をスキップするように修正。

これでうまく動くかなと思ったら、日本語名のページを作るとうまく表示できない問題を発見。

@ PATH_INFOシフト JIS で渡される

WiKicker では UTF-8 文字列をURIエスケープして WikiPageURLを生成している。 このURIにアクセスされると WiKicker は、PATH_INFO から WikiName を取り出す。 この文字列がシフト JIS になってしまっている。

Windowsファイル名に使用する charset にあわせて、Apache が変換してしまっているようだ。 調べてみると他の WikiEngine でも同様の問題にあっているという記事が見つかった。

将来の 2.0 系でパッチが取り込まれて修正されるとか、そうでないとか。

現状どうするかなぁ。 WiKicker 側でシフト JIS から UTF-8 に戻すというのもできない事はないけれど、あまりやりたくはないな。 いったんシフト JIS を介しているという時点で、シフト JIS に無い文字の扱いに関する問題をかかえてしまっているし(Apache が)。

対策案:

  • Apache 1.x 系を使う (まだ未確認だが、こちらだと勝手に変換されないらしい)
  • WiKickerPATH_INFO を使わないオプションをつける(URI Query Component は勝手に変換されない)
  • WiKicker 側でシフト JIS から UTF-8 に変換する

[ 4月10日全て ]

2005年4月13日 (水)

[ 4月13日全て ]

2006年6月20日 (火)

WiKicker 0.35 リリース - 添付機能の修正など このエントリーを含むはてなブックマーク

添付機能を有効にすると、添付ファイルが無いページに対応するディレクトリが無条件に作られてしまう問題を修正。

それから日本語ファイル名のファイルを WikiPage に添付した際、Internet Explorer でそのファイルをダウンロードして保存しようとすると URI エスケープされた文字列がデフォルトの保存ファイル名になってしまいよろしくない。 このため、Content-Disposition ヘッダをつけてレスポンスを返すためのダウンロード用のリンクも追加。

Cotent-Disposition ヘッダでファイル名を指定する際、

ファイル名シフト JIS でエンコードしてしまうようにした。

ファイル名シフト JIS で表現できない文字があるかもしれないし、Accept-Language に ja があったからといって Windowsロケール日本語になっているという保証もないので、かなりいい加減なコードである。

なにか良い方法があったら修正したい。


[ 6月20日全て ]

2008年8月5日 (火)

Twitter への書き込みを自動的に Skype ムードメッセージに設定する for Windows このエントリーを含むはてなブックマーク

半年ぐらい前に Skype for LinuxTwitter への書き込みを自動的に Skype ムードメッセージに設定するスクリプト(記事)を作って cron で 10分毎に更新するようにした。

Windows BOX 上 Skype を使っている時も同様にできるように、Skype4COM を使うバージョンも書いてみた。 D-Bus ではなく Skype4COM を使うようにすることと、Skype4COM にはシフト JIS の文字列を渡すようにすること以外はほとんど同じ。

Skype4COM の DLL を登録し、Skype が起動している状態で以下の Perl スクリプトを実行。

 #!/usr/bin/perl

 use strict;
 use warnings;
 use Win32::OLE;
 use URI::Fetch;
 use XML::RSS;
 use Date::Parse;
 use Encode;

 my $id = '自分の Twitter ID';

 my $time = time;
 my $fetch_response
   = URI::Fetch->fetch(
               "http://twitter.com/statuses/user_timeline/$id.rss?dummy=$time")
   or die URI::Fetch->errstr;
 my $rss = XML::RSS->new;
 $rss->parse($fetch_response->content);
 die 'no items' if @{$rss->{items}} == 0;
 my $item = $rss->{items}->[0];
 my ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst)
   = localtime(str2time($item->{pubDate}));
 my $title = $item->{title};

 my $mood
   = sprintf("$title [%02d/%02d %02d:%02d]", $mon + 1, $mday, $hour, $min);

 $mood = Encode::encode('shiftjis', $mood);

 my $skype = Win32::OLE->new('Skype4COM.Skype');
 $skype->Client->Start unless $skype->Client->IsRunning;
 my $profile = $skype->CurrentUserProfile;
 $profile->{MoodText} = $mood;

インストール済みだった ActivePerl 5.8.8.822 で動作を確認(ちなみに現時点での最新は ActivePerl 5.10.0.1003)。なお URI::FetchXML::RSS、Date::Parse(TimeDate) は標準では入っていないので PPM パッケージインストール

タスク スケジューラで10分毎に上記のスクリプトを wperl.exe で実行するように設定。 これで Windows 上でもさえずりをムードメッセージに設定できるようになった。


[ 8月5日全て ]

2010年3月19日 (金)

今日のさえずり - ここ最近裏紙が激しく不足している このエントリーを含むはてなブックマーク

@ 2010年03月17日

@ 2010年03月18日

@ 2010年03月19日

  • 09:47 このシーズン初めて袴女子みかけた。 (@ 秋葉原駅 w/ 5 others) http://4sq.com/68fhHr
  • 10:13 Edyお得ナビの配信停止にアンケート回答必須って何様だ。
  • 12:23 プレーンとキャラメル ショコラ。 (@ マネケン JR秋葉原駅店) http://4sq.com/ddiNoY
  • 12:33 メンチカツ弁当(昼食) 398円。 (@ デイリーヤマザキ秋葉原駅前店) http://4sq.com/db4PTq
  • 16:58 ここ最近裏紙が激しく不足している。
  • 19:08 裏紙 GET。
  • 21:47 会社の掃除当番表に自分だけ名前の代わりに Naney って書いてあった。よくわかってらっしゃる子だれ?
  • 21:49 パセラ店頭のスーパーマリオで女が絶叫している。きぃーっ。
  • 21:53 この時間までアミノ酸飲料配布ってガンバルなあ。 (@ ヨドバシカメラマルチメディアAkiba w/ 3 others) http://4sq.com/77WGwe
[ 3月19日全て ]

この日記のはてなブックマーク数 Add to Google RSS

Process Time: 0.045499s / load averages: 0.06, 0.19, 0.18
nDiki by WATANABE Yoshimasa (profile)
Powered by DiKicker
Base theme by Nana (for tDiary)