Get me outta here!

blog.delphinus.dev

vim とか Perl な話題とか……

Menu

Skip to content
  • プライバシーポリシー
  • perl
  • Vim
  • 映画
  • 投稿一覧
  • はじめに

Author Archives

delphinus

MySQLにユーザーを登録する

2010年3月20日 by delphinus

新しくインストールするたびに調べてるので、覚え書きとしておいておく。

ユーザ権限の設定 | MySQL講座 [Smart]
http://www.rfs.jp/server/mysql/02/02.html

インストール直後は

$ /usr/bin/mysqladmin -u root password 'new-password'

とやって、rootにパスワードを設定する。更に、localhost以外のホストからもアクセス可能にする(ハイライトしている部分が入力すべきコマンド)。

$ mysql -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 6
Server version: 5.0.77 Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> GRANT ALL PRIVILEGES ON *.* TO root@'%' IDENTIFIED BY 'パスワード' WITH GRANT OPTION;
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;

後は、MySQL AdministratorでGUIを使って一般ユーザーを作れば楽ちん。

MySQL :: MySQL GUI Tools Bundle: Archived Downloads
http://dev.mysql.com/downloads/gui-tools/5.0.html

MySQL Leave a comment

【Javascript】「var」はなるべく一つにまとめよう

2010年3月19日 by delphinus

「YUI CompressorでJavascriptを圧縮する | blog.delphinus.dev」で書いた YUI Compressor で Javascript ファイルを圧縮するといつも次のような警告文が出る。

[WARNING] Try to use a single 'var' statement per scope.

ググって調べてみると次のリンクがヒットした。

Try to use one var statement per scope in JavaScript
http://wonko.com/post/try-to-use-one-var-statement-per-scope-in-javascript

つまり、一つのスコープ内で複数の var を使うのはリソースの無駄になるというのだ。リンク先のをそのままコピーすると、

悪い例

function getElementsByClassName(className, tagName, root) {
  var elements = [];
  var root     = root || document;
  var tagName  = tagName || '*';
  var haystack = root.getElementsByTagName(tagName);
  var regex    = new RegExp('(?:^|\\s+)' + className + '(?:\\s+|$)');

  for (var i = 0, length = haystack.length; i < length; ++i) {
    var el = haystack[i];

    if (el.className && regex.test(el.className)) {
      elements.push(el);
    }
  }

  return elements;
}

良い例

function getElementsByClassName(className, tagName, root) {
  root    = root || document;
  tagName = tagName || '*';

  var elements = [],
      haystack = root.getElementsByTagName(tagName),
      length   = haystack.length,
      regex    = new RegExp('(?:^|\\s+)' + className + '(?:\\s+|$)'),
      el, i;

  for (i = 0; i < length; ++i) {
    el = haystack[i];

    if (el.className && regex.test(el.className)) {
      elements.push(el);
    }
  }

  return elements;
}

記事のコメントには、こんな最適化じゃ目に見える差なんて出ないよ、なんて意見もあり、どちらが正しいのかよくわからない。しかし、関数の一番最初で変数を全部宣言するなんて、いかにも古臭い言語という感じでなんかやだな。

javascript Leave a comment

YUI CompressorでJavascriptを圧縮する

2010年3月18日 by delphinus

「Javascriptライブラリをgzip圧縮する | blog.delphinus.dev」では一つの Javascript を gzip 圧縮する話を書いた。しかし gzip で圧縮する前に、ライブラリ内のコメントや空行など、動作に支障のない部分を削ってしまった方が更に効果は高い。勿論それは手作業でも可能だが、ツールを使った方が確実で早いだろう。今回は YUI Compressor を使ってみることにした。

YUI Compressor
http://developer.yahoo.com/yui/compressor/

ダウンロードとインストール

ダウンロードして解凍すると、build ディレクトリの中に実行ファイル(jar 形式)が現れる。

$ unzip yuicompressor-2.4.2.zip
$ cd yuicompressor-2.4.2/build
$ ll
total 1664
-rw-r--r--@ 1 delphinus  staff  851219 11 14  2008 yuicompressor-2.4.2.jar

実行には Java 実行環境も必要なのでインストールしておこう(Mac OS X では標準で入ってるっぽい?)。

java.com: あなたと Java
http://www.java.com/ja/

Continue reading →

javascript Leave a comment

【MovableType】iPhone用テンプレートの導入

2010年3月17日 by delphinus

IMG_1031.PNG

MovableType の iPhone 用テーマを導入してみた。この種のテーマでは crema 氏による iPhone テンプレート for MTがデファクトスタンダードのようだが、インストール手順が非常に煩雑だったことで導入をためらっていた。

そんなとき、もう一つの選択肢を発見。

Ogawa::Buzz: Pluggable なテンプレートセットを実現する Templetsフレームワーク
http://blog.as-is.net/2008/08/pluggable-templets.html

このプラグインを使うと、ベースとなるテンプレートに対して小さなテーマの固まり(「テンプレット」と呼ばれる。)を追加することができる。デフォルトで上述の「iPhone テンプレート for MT」を「テンプレット化」したものが用意されており、導入がだいぶ簡単になっている。手順は次の通りだ。

  1. テンプレットプラグインのインストール
  2. iPhone テンプレットをインストール
  3. 現在のテーマにテンプレットを適用する

Continue reading →

iPhone Movable Type 4 Comments

【Mac OS X】newsyslogを使ってログローテートする

2010年3月16日 by delphinus

Mac OS Xにおいて定期的なログローテートを行うには「newsyslog」を使う。今回はApacheとSquidのログについて設定する。設定ファイル「/private/etc/newsyslog.conf」に、以下の行を追加した。

#### Apache用の設定
/var/log/apache2/access_log 644 7   *   $W1D04  JB  /var/run/httpd.pid
/var/log/apache2/error_log  644 7   *   $W1D04  JB  /var/run/httpd.pid
#### Squid用の設定
/opt/local/var/squid/logs/access.log    squid:squid 644 7   *   $W1D04  JB  /opt/local/var/run/squid/squid.pid
/opt/local/var/squid/logs/cache.log     squid:squid 644 7   *   $W1D04  JB  /opt/local/var/run/squid/squid.pid
/opt/local/var/squid/logs/store.log     squid:squid 644 7   *   $W1D04  JB  /opt/local/var/run/squid/squid.pid

以降の説明は以下のサイトを参考にさせていただきました。

MacOSXでサーバー稼業 : Web共有機能のログをローテーションさせよう
http://earlybirds.ddo.jp/namahage/inegalog/article.php?id=64
newsyslog.conf(5) OS X Manual Page
https://developer.apple.com/library/mac/#documentation/darwin/reference/manpages/man5/newsyslog.conf.5.html#//apple_ref/doc/man/5/newsyslog.conf

Continue reading →

Apache Mac Leave a comment

【MovableType】iPhone用管理ツール「iMT」がMT5に正式対応

2010年3月15日 by delphinus

iPhoneなどのスマートフォンで記事の投稿・編集、コメントの閲覧・削除などが行えるプラグイン、「iMT」がバージョンアップしてMT5に対応してた。

iMT – iPhone Interface for Movable Type
http://plugins.movabletype.org/imt/

インストール方法はこちら。MT4用の文書だが、MT5でも方法は変わっていない。

Movable Type 4 を iPod touch または iPhone で利用する
http://www.movabletype.jp/documentation/appendices/imt.html

Continue reading →

iPhone Movable Type 1 Comment

【Mac】iPhoneで高画質なニコニコ動画(3G + VPN編)

2010年3月14日 by delphinus

【Mac】iPhoneで高画質なニコニコ動画(Wi-Fi編) | blog.delphinus.devではeXstreamNicoを使ってWi-Fi環境でニコニコ動画を視聴するところまで書いた。3Gで視聴するためにはルータなどでポートを開けるだけでよい(多分)のだが、認証機構が存在しないので色々と問題がある。

だったら通信経路自体を暗号化しよう! というのがVPN。VPNとはVirtual Private Networkの略で、公衆回線を経由していながら、自宅や会社などのLAN内と同じセキュリティレベルと利便性を維持するための技術だ。

Virtual Private Network – Wikipedia
http://ja.wikipedia.org/wiki/Vpn

携帯機器 ---(3G)---> 自宅の鯖 ---(通常の回線)---> 外部
    +----- 暗号化 ------+

こんなイメージになる。別にニコニコ見るためだけに導入するような技術ではない。安全に自宅鯖へアクセスできるのでLAN内でしか許されないようなサービスを利用しやすい。通信は必ず自宅を経由することになるので、携帯機器からのアクセスを禁じているサービスも利用可能になる1。

デメリットは、ネットワーク的に廻り道をすることになるので速度が犠牲になる(ことが多い)。また、携帯機器で使う場合は通信の暗号化・複合化に電池をもりもり食うのでその辺にも注意が必要。

その他注意点として、通信はあくまで3G回線を経由するので回線使用料はきちんと取られる。僕みたいに毎月iPhoneを限度額以上に使っているのなら今更気にすることではないけどね2。

前置きが長くなった。では、実際にVPNを使うための設定をしていこう。例によって、Macでの設定方法だ。

Continue reading →

iPhone Mac Leave a comment

Post navigation

← Older posts
Newer posts →

アカウントでログイン

最近の投稿

  • Moves API のための Perl モジュールを作りました 2013年9月11日
  • ロボットは僕に言った「君は人間じゃない」 2013年7月30日
  • 人は一生に何回キーを叩くんだろう? 2013年7月29日
  • 【Vim】カラースキームを切り替えるたった一つのさえたやりかた 2013年7月23日
  • 【WordPress】「前の記事」「次の記事」のリンクにサムネイルを付ける 2013年7月17日
  • 【Powerline】Git branch セグメントが Mac OS X で動かない? 2013年7月16日
  • 【Vim】80桁教信者の憂鬱 その2(ホットキーでトグル、他) 2013年6月24日
  • 【vim】80桁教信者の憂鬱 2013年6月20日
  • 【MacVim】メニューバーでアイコンが見えない! 2013年6月19日
  • 【unite.vim】set_substitute_pattern は衰退しました(その2) 2013年6月18日
Proudly powered by WordPress | Theme: Something Fishy by Caroline Moore.
blog.delphinus.dev
Proudly powered by WordPress | Theme: Something Fishy by Caroline Moore.