その1〜とりあえず押さえておくべき事

スキンを弄るのにも慣れてきたので、忘れないうちに要点をまとめておくことにします。



1.オペラのインストールフォルダ内のstandard_skin.zipを参考にする
 例)C:\Program files\Opera\skin\standard_skin.zip
  概観の設定でスキンを変更する際に「OperaStandard」と表示されているスキンです。これを解凍するとstandard_skinフォルダの中にskin.iniというファイルが出てきますが、これがスキン変更の際の肝です。



2.skin.iniの中身は[ ]で括られたセクションに分かれている
セクション部分[]の記述を変更すると、そのセクションに対応するブラウザ表示のみが変わる




3.テキストエディタには必ずGrepが可能なものを用いる(更には比較機能も欲しい)
 僕は始めにWindows付属のメモ帳でskin.iniを開いて作業してましたが・・非常に時間がかかってしまいますからやめたほうがいいです。スキン以外のカスタマイズでも共通して言えることかもしれませんが、メモ帳はやめておきましょう・・。skin.iniで指定されている特定のセクションを変更する事で、予期しないところまで影響してしまう事が多々あると思われます。なので手を加えようとしているセクションに対して予めGrepを用いる事で、そのセクションを参照*1している他のセクションが存在するかどうか、又は差し替えようとしている画像を利用している他のセクションが存在するかどうかを確認しておくのがいいと思います。ちなみにOperaデフォルトのスキンにおけるskin.iniには、全部で160以上のセクションがあります*2。積極的にGrepを使ってある程度構造を把握する必要があるでしょう。
 又、skin.iniを弄っている最中にどこをどのように変更したのか忘れがちです。そういう時は元のファイルとの比較をしたり、バックアップを取っておくなりしましょう。




4.どのセクションがブラウザ上のどの部分に該当するのかを把握する必要がある
当たり前ですが、セクション名を見てもそれがどの部分なのか分からないと作業のしようがありませんよね。こちらの方々のHPを参考にさせてもらいました。
http://d.hatena.ne.jp/bend_tail/20070315/1173963572
http://tirukuru.jp/theothers/opera/opera_button/index.html
http://kawatarou.info/note/opera/notifier_skin.htm

追加で、主なボタンに関するセクションとその色分けです


[Pagebar Button Skin] 薄い緑色
[Tab Button Skin]   青色
[Push Button Skin]  濃い緑色
[Push defult Button Skin] 紫色
[Toolbar Button Skin] オレンジ色
[Link Button Skin] 水色
[Menu Button Skin] 黄色

こうやってみると [Toolbar Button Skin]がかなり利用されてます。





5.skin.iniを編集したら保存して、当初のskin.zipから解凍されて出てきた他のフォルダとまとめて選択し、一緒に.zipへ再圧縮する。
上の人が説明されてますが、重要なので再度ここで書かせてもらいます。skin.iniが収まっているフォルダそのものを選択してから圧縮して作ったskin.zipは、読み込んでくれませんでした。



6.Operaのデフォルトスキンの内容を記述しているstandard_skin.iniの中で、 元から記述されていないセクションを、Operaは原則として認識しない。←想像です。確信は・・ありません(笑
原則として・・とする理由は、[〜.selected]などの「.」で飾る状態修飾子の場合は、Userが勝手にセクションを設けて記述しても例外的に認識してくれているみたいだからです。





7.Opera9.26とOpera9.5βではSkin.iniの中身が異なる
よってそれぞれ専用のSkin.iniとして編集していく必要があります。ぜんぜん違うわけではないんだけど・・微妙に違う。。




しかしここ↓の日本語訳読んでみたかったなぁ・・リンク切ればっかりで見つからないよ。。
http://my.opera.com/community/customize/skins/specs/

*1:例えば[ B ]においてClone = Aという記述があるならば、BセクションがAセクションを参照してますから、Aに施した変更がBにも及びます。

*2:9.26が162個、9.5が184個・・で合ってるかな?