カテゴリー「パソコン・インターネット」の記事

Magic keyboardとMagic trackpad 2を購入

AppleストアでMagic keyboardとMagic trackpad 2を買ってしまいました(マウスは使用頻度が低いのと予算の関係で旧型のままです)。

使い勝手を書いてみたいと思います。


IMG_0796.jpg

外観はこんな感じで、写真奥の旧型と比べると、Trackpad 2の幅が広い分横方向の場所をとります。奥行きは短くなっていますが、Magic Trackpad 2は横幅が結構広く、ここまででかい必要があるのかと思います。

使い勝手はざっくりと以下のような感じです。


Magic Keyboard

キーストロークは旧型より浅くなっていると思いますが、キーの支持がしっかりしており、打鍵感覚は旧型よりよくなっています。このキーボードは気に入りました。

キーボードの種別は日本語版です。「信者はUS版だろ」という意見もあると思うのですが、使い慣れた日本語版にしておきました。会社で使っているWindows PCとキー配列が違うと、マシンを変わるたびに混乱しそうな気がするので、キー配列は日本語に統一しています。


Magic Trackpad2

MacBookと同じ感圧タッチになって、フォースフィードバックもついているということで期待したのですが、使ってみると正直こんなもんかという感じでした。旧型のTrackpadではクリックをするためには、パッドの下半分のエリアを押し込む必要があったのですが、Magic Trackpad 2はどこを押してもクリックを認識するので便利ですが、「タップでクリック」を認識するように設定してあるため、押し込むクリック操作をすることが少なく、どこでもクリック(押し込む)ことができる便利さを享受できるシーンが思ったより少ないです。

iPhone 6sの3D touchのようにプレス(強押し)した際のアクションがOS Xでは少ないことも感圧タッチのアドバンテージを減らしているように思います。

Trackpad_config.png

あと、私のiMac固有の問題だと思うのですが、旧 Trackpadではカーソ移動の追随性が悪くなる傾向がありました(カーソルを動かすとカクカクとカーソルが動く)。OSXをアップデートすると改善したりするのですが、10.11.1にアップデートしてからまた調子が悪かったのですが、Magic Trackpad 2に変えてからは、カーソルの追随性は良好です。ひょっとすると、旧Trackpadでは2.4G帯無線の混信の影響があったのかも知れません。


その他

使い始める時、Lightningケーブルを挿入すればペアリングできると思っていたのですが、ケーブルを挿してもkeyboard/trackpadとも認識してくれません。薄い説明書を見ると、電源スイッチがあるではないですか。旧型には電源スイッチはなかったので、この点は意表を突かれました。

Magic KeyboardとMagic Trackpadと合わせて税込み28,728円は正直、信者価格で高いです。ただ、Magic Keyboardの使い勝手は大変よく、旧型からの買い替え価値はあると思います。Magic Trackpad 2は個人的には微妙でしたが、Magic Keyboardとデザインや奥行きを合わせるためにはまあありかなと思います。

ブログエディター変更

ブログエディターの変更をトライ中。

これまでは、Windows Live Writerを使っていたのですが、Windows10ではインストールできなくなってしまった(後、Windows環境は7から10に移行したい)ため、後継が必要となりました。最近はOSXがメイン環境なのでこの際、OSXで動くブログエディータを探したところ、見つかったのは以下:

  • ecto — シェアウエアで執筆時点で2651円
  • MarsEdit — AppStoreで買えるが執筆時点で4800円とお値段高め

価格的にはectoがお手ごろ。ectoを使ってLive Writer相当の機能があるかを確認してみる。

画像の挿入はLive Writerの方はサイズやリンクなど細かな指定が出来たが、ectoだとドラッグで画像の拡大・縮小を行うだけみたい。

IMG_0771.jpg

Live Writerはプログラムコードの貼り付けにSyntaxHighlighterのプラグインが使え大変便利だったが、ectoにはプラグインがなさそう。手動でタグを設定してみる。

#include "mbed.h"

DigitalOut led(LED1);

int main() 
{
    unsigned int i = 0;
    wait(0.1);

    while (1) 
    {        
        printf("Hello World %05d\n", i++);
        led = !led;

        wait(1.0);
    }
}

SyntaxHighlighterのタグをカスタムタグに登録してみた。

#include "mbed.h"

Serial pc(USBTX, USBRX); // tx, rx

DigitalOut led(LED1);

char message1[] = "mbed demo start.\r\nSend message via serial interface.";
char message2[] = "Hello World";

int main() 
{
    unsigned int i = 0;

    pc.printf("%s\n", message1);
    while (1) 
    {
        pc.printf("%s %05d\n", message2, i++);
        led = !led;

        wait(1.0);
    }
}

とりあえず使えそうな感じなので、ectoをレジストしてみるか。

Parallels DesktopでWindows on Mac

6月に自宅PCをiMacにリプレースし、当初はWinodwsを動かすためにBoot Campを使っていたのですが、Parallelsを使った仮想環境に変更しました。Parallelsの使用は当初考えたのですが、Windowsの起動回数はきっと減ると思っていたため結構お高いParallelsはペイしないと考えて回避していました。ここに至る変遷と試行錯誤を記載します。


我が家におけるWindowsの必要シーン

Mac OSのきびきびした動作ときれいな画面に慣れると、できるだけ多くの作業をMacに移したくなるのですが、我が家の場合、以下のソフト・作業はWindowsベースとなります:

  1. LPCExpressoのIDEとVisual Studio (主にC#)
  2. かみさんが使う家計簿ソフト(家計簿マム): Macの家計簿ソフトへの移行も考えましたが、データ移行が難しく(どうしても欠落してしまうデータが発生)断念
  3. はがき印刷 :年に1回なのでソフトを買い換えるまでもない
  4. このブログ作成(Windows Live Writerを使用): そのうちMacのソフト(Mars Editあたりかな)に変わるかも
  5. ゲームはやらない: グラフィック性能は重視しない

あと外せない条件は、かみさんとアカウントを分けてMacを共有するため、Windowsもそれぞれのアカウントから起動できる必要があります。そのため仮想環境を使った場合、仮想ディスクイメージを共有フォルダに置くなどして、複数アカウントで共有できる必要があります。

冒頭に書いたとおり、Windows環境にあまりお金をかけたくなかったため、先ずはフリーのVirtualBoxを使った仮想化を検討しました。グーグルさまで、マルチアカウントにてVMを共有した事例があるかを調べたのですがヒットせず。インストール回数を浪費しないよう、試しにUbuntuを使って共有を実験したのですがうまくいかない感じ(VirtualBoxでのUSBの認識に問題があり、早々に放棄したため突っ込んで調べてはいません)。

頻繁に起動することはないのでBoot Campを使ったデュアルブートに決定。


Boot Camp

アップル純正のデュアルブート環境なので当然ちゃんと動きますが、使ってみると以下の点が不満。

  • やっぱり起動が遅い: EFIによるハードの認識や初期化時間がばかにならい
  • Mac OSに戻すもの再起動になるため時間がかかる。やっぱり、Mac OSとWindowsの間を行ったり来たりするのでこのオーバーヘッドが無視できない
  • Mac用のMouse, Trackpadを使うとなにやら動きがギクシャク。普通のUSBマウスを使った方がスクロールなどが滑らかに動きます。アップルさん、Windows用ドライバ開発でわざと手を抜いてないか?

結局Parallelsに

Boot Campが今一つなので、Parallelsの情報をあさっていると、複数ユーザで仮想環境を共有できることが分かりました。あと、Boot Campパーティションから仮想マシンを起動することもできるため、これまでに構築したWindows環境も有効に使えそうです。試用版があるのでお試しに使ってみることにしました。

1. Boot Campパーティションからの起動

Boot Camp領域を使う仮想マシンを作ると数MB程度の仮想ディスクイメージ(実体はboot campパーティションにあるので、管理情報だけでしょうか)が作られます。仮想マシンを作成する際に「共有」を選択すると、自動的にUsers/Shared配下にファイルを作成し適切なアクセス権を設定してくれるのですが、サブアカからの起動がどうもうまくいかず。ファイルサイズは小さいので各ユーザフォルダー配下に仮想マシンをつくれば複数アカウントでWindowsを起動できました。

これで運用ができるのですが、制約はサスペンドです。Parallelsのサスペンド・復帰は非常に高速で、自分の環境では10秒以下。Windowsの休止だとブートとたいして時間が変わらない印象があるのですが、これなら十分使えます。Boot Campパーティションから起動した場合、サスペンドはできるのですが、別アカウントから復帰を試みると起動に失敗します。この際、ディスクに不整合が発生する可能性があるようなので危険です。

あと、Boot Campを使った仮想マシンからアプリを立ち上げると、アクティベーションを必要とするアプリの場合、再アクティベーションが発生します。どうも、最初にインストールした生のBoot Campと異なる環境で起動されたと思うようです。自分は気がつかなかったのですが、Web情報ではWindowsも再アクティベーションが発生するようで、その場合マイクロソフトは仮想環境は別ライセンスとみなしアクティベーションを許可しないとのこと。

2. Boot Campを仮想ディスクにインポート

サスペンドとライセンスの問題を考えると、結局仮想ディスクにWindows全体をインストールするのが最善です。一からインストールし直すのもきついので、仮想マシンへのインポート機能を使って、Boot Camp領域のファイルを仮想マシン(仮想ディスク)に取り込んでみました。

インポートはうまくいったのですが、ファイルがホームディレクトリ配下にできてしまいました。これではアカウント間で共有ができないため、共有フォルダに移動してアクセス権を変更。Everyoneやstaffに対して読み書きを許可するも、非オーナのアカウントからはアクセス権違反でVMを起動できず。仮想ディスクファイルにはACLを使ったカスタムアクセス権が設定されており、このあたりをあわせこまないとだめなのか。

アクセス権をうまく設定できないため、インポート作戦も結局放棄。

3. 仮想ディスクに再インストール

仕方なく、Boot Campパーティションを削除して1からやり直しです・・ やっと目的の動作を実現。

仮想マシンを共有環境で動かすと、以下の通りなかなか快適で、やっぱりこれがベストです:

  • マウス・トラックパッドの動きが滑らか。LionのゲストOSにすれば、3本指ドラッグやナチュラルスクロール(Windowsとタッチの方向が逆になるやつ)など、OS Xネイティブの操作も使えます
  • サスペンドと復帰が高速。サスペンドと復帰を別のアカウントで行っても問題なし
  • OS XとWindowsを同時に使えるので、両OS間を行ったり来たりする際のオーバーヘッドが殆どない
  • Boot CampパーティションからVMを起動する場合に比べて、仮想ディスクだとI/O速度が落ちることを懸念しましたが殆ど気にならないレベル

ということで、Parallels正規ライセンスの購入決定。


4. 使用マシンのスペック

項目 スペック
マシン iMac Mid 2011(27インチ)
CPU Core i5 2.7GHz
メモリ 12GB
グラフィックス Radeon HD 6770M
仮想化ソフト Parallels Desktop 6  (6.0.12094)
ホストOS OS X 10.7 (Lion)
ゲストOS Windows 7 SP1

 

5. Windowsエクスペリエンス値

当初、メモリ4Gで仮想環境を動かしたのですが、さすがにメモリ不足。メモリを8G追加して12Gにしたところパフォーマンスが改善されました。仮想環境は8G以上が必須ですね。Windows 7のエクスペリエンス値を以下に示します。

メモリ4Gで仮想マシンに1G割り当て(CPUコアは2個割り当て)

Win7Experience4G-1G


メモリ 12Gで仮想マシンに2G割り当て(CPUコアは2個割り当て)

Win7Experience12G-2G

メモリ増設でメモリ性能が改善しました。仮想環境を使わずに直接Windowsを起動した場合の値を忘れてしまったのですが、殆ど遜色がないレベルかもです(少なくともMac以前に使っていたCore2 Quad 3.0GHzより上です)。


おわりに

短期間にWindowsを2回もクリーンインストールしたので、しばらくはやりたくないです。SP1より前のインストールメディアだとアップデートが超面倒。後、久々にインストール回数が超過して電話でアクティベーションを依頼するはめになりました(MSさまには夜中の3時過ぎに電話してしまいました)。

今考えると、Boot Campからインポートした仮想ディスクファイルに実行許可ビットを立てればよかったのかも。GUIの設定では実行許可は出てこないので見落としました。後々の手間を考えるともう少し粘るべきだったか・・

色々変遷があり手間もかかりました。Parallelsに関しては、ちとお高いですが価格相応の価値はあり満足です。

Syntax Highlighter 3.0の使用方法

ブログに貼り付けるソースコードを整形(行番号付け、キーワードのハイライトなど)を行うSyntax Highlighterを2.1から最新の3.0に更新しました。私はココログを使用しているため、ココログに依存した情報になりますが設定手順を記載します。

SyntaxHighlighter 3.0での改善点

  • 2.xでは、IEだと横スクロールがうまく表示できず、長い行は折り返し(Wrap Lines)表示にしていたのですが、横スクロールが正常動作するようになりました
  • 行番号を含まないソースコードのコピーはツールバーの"Copy to clipbord"を選択する必要がありましたが、3.0ではブラウザの画面でコピーしたい行を直接選択しCTRL-Cでクリップボードにコピーができるようになりました。また、ソースコードをダブルクリックするとソース全体を選択できます
  • 2.xではソースコードのコピーにFlashを使用していたのですが、最近の風潮(?)に従いFlashレスに・・


SyntaxHighlighterのブログサーバーへのアップロード

  1. SyntaxHighlighterのファイルをここからダウンロードします。
  2. ココログの、「管理ページトップ  >  コントロールパネル  >  ファイルマネージャー」に移動し、以下のフォルダーを作成(フォルダー名はなんでもよいです)
    ・Scripts3
    ・Styles3
  3. ダウンロードしたzipファイルのscriptsフォルダーから整形したい言語に対応したBrushファイルと呼ばれるJavaScriptを、ブログのScripts3フォルダーにアップロード。zipファイルには28種類のBrushファイルが入っていますが、ページ表示毎にサーバーからBrushファイルが読み込まれるため、サーバーレスポンスの遅延を少なくするために必要最小限のBrushファイルを使用するのがよいと思います。私は以下のBrushファイルをアップしています
    ・shCore.js
    ・shBrushCSharp.js
    ・shBrushCpp.js
    ・shBrushJScript.js
    ・shBrushXml.js
    ・shBrushPlain.js
  4. zipファイルstylesフォルダーから、以下のファイルをブログのStyles3フォルダーにアップロード
    ・shCore.css
    ・shThemeDefault.css
    表示テーマを変えたい場合は、shThemeDefault.css以外をアップします。
  5. ブログページにアクセスした際に、SyntaxHighlighterを起動するために、
    「管理ページトップ  >  ブログ一覧  >  PS3とLinux、電子工作も  >  設定  >  ブログの基本情報」
    に移動し、以下の指定を「ブログのサブタイトル(キャッチフレーズ)」の末尾にペースト(http://以下はファイルをアップロードしたブログサーバーのurlを指定)
<link type="text/css" rel="stylesheet" href="http://todotani.cocolog-nifty.com/Styles3/shCore.css" />
<link type="text/css" rel="stylesheet" href="http://todotani.cocolog-nifty.com/Styles3/shThemeDefault.css"/>
<script type="text/javascript" src="http://todotani.cocolog-nifty.com/Scripts3/shCore.js"></script>
<script type="text/javascript" src="http://todotani.cocolog-nifty.com/Scripts3/shBrushCpp.js"></script>
<script type="text/javascript" src="http://todotani.cocolog-nifty.com/Scripts3/shBrushCSharp.js"></script>
<script type="text/javascript" src="http://todotani.cocolog-nifty.com/Scripts3/shBrushXml.js"></script>
<script type="text/javascript" src="http://todotani.cocolog-nifty.com/Scripts3/shBrushPlain.js"></script>
<script type="text/javascript">
   SyntaxHighlighter.all();
</script>

Windows Live Writerのプラグイン

私はブログの編集投稿にLive Writerを使っています。先日Windows Live Essentials 2011にアップデートを行ったため2011ベースとなりますが、SyntaxHighlighter用プラグインの設定について記載します。ちなみに、Live 2011のサポートOSにはXPの記載がありませんでした。

SyntaxHighlighter用のプラグインとして、以前はPreCodeを使っていたのですが、Syntax Higlighter 2.0 for Windows Live Writerに変更しました。PreCodeに対して、挿入したコードブロックを<Div>タグでくくってくれるため管理がしやすい点や、挿入後も表示形式などのオプションパラメーターの変更ができる点がナイスです。ただ、デフォルト設定が自分好みでなく変えられない点が惜しい。

Live Writer + SyntaxHighlighterはココログと若干相性が悪く最初にブログエントリを投稿した時点では、SyntaxHighlighterを使ったソースコードをブラウザーで閲覧すると、改行部分に<br></p>などのhtmlタグが混入してしまいます。私の環境では、再度同一エントリを投稿してサーバー上の文書を上書きしてやると余分なhtmlタグが表示されなくなります。あと挿入するオリジナルソースの改行コードも影響している模様で、改行コードとしてCR+LFを使ったWindows形式で保存したファイルからSyntaxHighlighterにコピペしないと、上書きを行っても<br><p>が消えないことがありました。

余計なhtmlタグが挿入された場合、ブラウザを使ってブログ管理画面経由で編集を行うと、余計な改行が大量に挿入されたりして収拾がつかなくなりますので、編集はSyntaxHighlighter一本で行う必要があります。

その他

Windowsクライアントでのブログの見栄え向上のためにメイリオフォントを指定する方法は、以前の設定からカスタムCSSを使用する方法に変更しました。「管理ページトップ  >  ブログ一覧  >  PS3とLinux、電子工作も  >  デザイン  >  カスタムCSSを編集」に移動して、以下のCSS定義を設定します。

body {
    font-family: 'メイリオ', 'Meiryo','MS PGothic', 'Hiragino Kaku Gothic Pro W3', Osaka, sans-serif;
    }
 
textarea {
    font-family: 'メイリオ', 'Meiryo','MS PGothic', 'Hiragino Kaku Gothic Pro W3', Osaka, sans-serif;
    width: 100%;
    }

SyntaxHighlighter 3.0の新機能として、必要なBrushファイルを動的に読み込む「Dynamic Brush Loading」機能があるのですが、「サブタイトル」部分にスクリプト指定を書き込む方法ではうまく動作しませんでした。Dynamic Brush Loadingが動作するときめ細かな書式指定が可能になるので試行錯誤中です。ちなみに、DelphiやErlang用のBrushファイルがあるのに、最近プログラマー人口が急上昇しているであろうObjective-C用のBrushファイルは存在しません。C++用を使えということかな。

ブログの模様替え

年度が変わったこともあり(関係ねぇー・・)、ブログのテンプレートを変えて模様替えを行いました。

以前のリッチテンプレートはカスタムCSSが作れないという制約があったのですが、文字部分の横幅が広く取れ、プログラムリストの掲載に向いていたため愛用しておりました。ココログのサポートページを見ていたら、カスタムCSSをサポートした「オリジナルテーマ」を新たに提供とあります。レイアウトも以前より自由度が広がり、サイドバーを片側に寄せると、リストを表示するのに十分な幅が取れるようにりました。

SyntaxHighlighter関連CSSの参照をカスタムCSSに持ってくることでIEとの相性問題を改善できないかと期待しているのですが、まだ手が出せずそのままです。

ココログブログの見栄え向上

当ブログのフォントやソースコード表示など見栄えの改善を行いました。備忘録も兼ねて、今回行ったことを記載します。ココログに特化した部分が多いですがご容赦下さい。

ブログの共通設定を変えることになりますので、お試しをされる方は自己責任でお願いします。事前にブログ内容のバックアップを取るなどした方がよいかと思います。

Windows Live Writerの導入

以前にも書きましたが、Windows 7への移行にあわせて、Live Writerを使い始めました。これまでは、ブラウザーからココログにログインして、ブラウザー上の画面を使って編集を行っていましたが(以後オンライン編集と記載)、作業性が結構向上します。またLive Writerは、以下のようにココログとの連携に加えて、オンライン編集ではできなかった書式指定が可能です:

  • オフラインで作成した記事の投稿(サーバーへのアップロード)、PingサーバーへのPing通知
  • 作成済み記事を読み込んで編集。Live Writerで作成していない記事も選択可能(取り出せるのは過去の500件まで)
  • 実際のブログテンプレートを使ったプレビューが投稿前に可能
  • ハイパーリンクで、「新しいウインドウで開く」オプションが指定可能(オンライン編集では実はできないのです)
  • 画像の挿入オプションが多彩。こちらも「新しいウインドウで開く」オプションが指定可能。まだ使っていませんが、 画像のトリミング、明るさ調整といった 画像編集も可能
  • 表の挿入。オンライン編集でもHTMLタグをゴリゴリ書き込めば可能ですが、エクセルのような感じで編集ができるため楽ちんです
  • プラグインを使って、プログラムコードを整形して挿入(キーワードのハイライト化など) → 後ほど詳細を記載します

以下は、気になる点です。

  • スペルチェックがダメ
    自動スペルチェックを有効にすると、日本語部分がすべてエラーになってしまいます(正しいスペルの英単語だけが赤くならない、、)。FireFoxのスペルチェック機能の方がよっぽど賢いです
  • 箇条書き指定を行うと、勝手に色指定のHTMLタグ(<font color="#000000">)が挿入されることがある
  • スタイルシートを埋め込んだり、フォント指定を行うと、オンラインで再編集した際に書式が崩れる。こちらはLive Writerの問題というより、ココログとの相性問題と言うべきですが、、、

マイクロソフト製品なので、Windows Liveのブログにのみ対応かと思ったのですがさにあらずで、メジャーなブログエンジンには対応しているようです(ココログはTypePadです)。おかげでLive Writerは結構重宝しています。

メイリオフォントの指定

ココログのテンプレートはデフォルトでMS Pゴシックを使っていますが、Vistaから使えるようになったメイリオフォントやMACに比べると見栄えがよくない(読みづらい)です。そのため、メイリオフォントを使えるようにしました。

当初はLive Writerのフォント指定機能を使おうとしたのですが、各段落にフォント指定のHTMLタグが埋め込まれてソースが汚くなること、オンラインで編集を行うと書式が大きく乱れてしまう(書式指定の取り消しかつ、各行に改行が追加されるなど)ことから、スタイルシートをいじることにしました。CSSの構造はまったく分かっておらず、先人の成果を拝借しております。

私はココログの出来合いテンプレート(リッチテンプレート)を使っているため、CSSの編集はできません。そのため、「きたへいの悠々自適」さんの記事を参考にし、ブログサブタイトルにカスタムCSSファイルへのリンクを書くことでフォント指定ができるようになりました。手順を以下に示します。

1) トップページのソースから、読み込んでいるスタイルシート(style.cssファイル他)を探して、個別にダウンロード

2)フォント指定部分を取り出しメイリオを追加し、適当な名前をつけてローカルに保存(mystyles.cssなど)
自分の場合は、以下の内容です。

body {
    font-family: 'メイリオ', 'Meiryo','MS PGothic', 'Hiragino Kaku Gothic Pro W3', Osaka, sans-serif;
    }

textarea {
    font-family: 'メイリオ', 'Meiryo','MS PGothic', 'Hiragino Kaku Gothic Pro W3', Osaka, sans-serif;
    width: 100%;
    }

3)上記のファイルをblogスペースにアップロードする。私は以下のようにしました

  • 管理ページトップ > コントロールパネル > ファイルマネージャー  に移動
  • ホーム配下にStylesフォルダを作成し、作成したcssファイル(mystyles.css)をアップロード

4)ブログサブタイトルにアップロードしたcssファイルへのリンクを追加する

  • 管理ページトップ > ブログ一覧 > [対象ブログ] > 設定 > ブログの基本情報  に移動
  • ブログのサブタイトル(キャッチフレーズ)ボックスに以下のコードを追加
<link type="text/css" rel="stylesheet" href="http://todotani.cocolog-nifty.com/Styles/mystyles.css"/>

5)変更を保存

ソースコードの挿入

SyntaxHighlighterというJavaScriptベースのツールを使いました。Live WriterでSyntaxHighlighterを使うためのプラグインとして、SyntaxHighlighter for Windows Live Writerがあります。こちらは、プレビューでの確認や投稿後の再編集におけるブログとの連携に優れており、当初はこのプラグインを使い始めたのですが一点問題がありました。

SyntaxHighlighterはVersion 2.xに移行しているのですが、プラグインはVersion 1.5対応となっており、SyntaxHighlighter Version 2.xが使えません。1.5では、IEを使った際に、折り返しや横スクロールの表示がうまくできませんでした(FireFoxなら問題はなかったのですが)。2.xなら改善されていそうなので、なんとか2.xを使えないかと思い他のプラグインを探したところ、PreCode Snippetを発見しました。こちらは2.x専用だったりしますがPreCodeを使用することにしました。

SyntaxHighlighterを使うためには、ブログサーバーにJavaScriptやスタイルシート(cssファイル)を登録しスクリプトを動かすための設定が必要になります。先ずはその手順を示します。

1)SyntaxHighlighterをダウンロード

2)ブログサーバーにスクリプトファイルフォルダーを作成

  • ホーム配下にScripts2フォルダを作ります(名前は任意です)

3)ブログサーバーにJavaScriptファイルをアップロード

  • ダウンロードしたzipファイルのscriptsフォルダーから以下のファイルをアップロード
  • shCore.js(必須)
  • clipboard.swf(行番号を除いたソースをクリップボードにコピーするために必要)
  • shBrushCpp.js(C/C++ソースの整形を行うために必要)
  • shBrushXml.js(HTML/XMLの整形)
  • shBrushPlain.js(Plain Textの整形)
  • その他、Java/Rubyなど、必要に応じて整形用のshBrushXXX.jsファイルをアップ

4)スタイルシートのアップロード

  • ダウンロードしたzipファイルのstylesフォルダーから以下のファイルをサーバーにアップ
  • shCore.css
  • shThemeDefault.css
  • xxx.pngファイル(全部)

5)ブラウザーでJavaScriptを起動するためのコードの埋め込み

  • メイリオフォントの指定に加えて、ブログサブタイトルに以下のコードを追加
<link type="text/css" rel="stylesheet" href="http://todotani.cocolog-nifty.com/Styles/mystyles.css"/>
<link type="text/css" rel="stylesheet" href="http://todotani.cocolog-nifty.com/Styles/shCore.css" />
<link type="text/css" rel="stylesheet" href="http://todotani.cocolog-nifty.com/Styles/shThemeDefault.css" />
<script type="text/javascript" src="http://todotani.cocolog-nifty.com/Scripts2/shCore.js"></script>
<script type="text/javascript" src="http://todotani.cocolog-nifty.com/Scripts2/shBrushCpp.js"></script>
<script type="text/javascript" src="http://todotani.cocolog-nifty.com/Scripts2/shBrushXml.js"></script>
<script type="text/javascript" src="http://todotani.cocolog-nifty.com/Scripts2/shBrushPlain.js"></script>
<script type="text/javascript">
   SyntaxHighlighter.config.clipboardSwf = 'http://todotani.cocolog-nifty.com/Scripts2/clipboard.swf';
   SyntaxHighlighter.all();
</script>
  • 変更を保存
  • Live Writerの ブログ > ブログ設定の編集メニューから アカウント設定の更新を実行

6)PreCodeプラグインをインストール

  • ダウンロードページからプラグインをダウンロードしてインストールします。
  • Live Writerの ツール > オプション > プラグイン メニューを開き、プラグインを有効化
  • Live Writerのソース画面を開く(編集画面ではありません
  • 挿入ツールバーからPreCodeプラグインを起動
  • テキストボックスに整形したいコードを貼り付け
  • プラグイン画面右側にあるコード種別やオプションを選択
  • Html Encodeを選択します
  • OKボタンを押すと、ソースウインドウにコードが挿入されます

PreCodeプラグインを起動している画面イメージは以下です。

PreCode

埋め込まれるコードの例は以下です。C++のコードとHTMLタグが混在しているため、Plaine Text形式を指定してあります(cpp形式だと、<p>などのHTMLタグが誤って表示されてしまいます)。
2009/11/4追記: cpp (C/C++)形式を指定しても正常に動作するようになりました。なぜだろう?

<pre class="brush: cpp; auto-links: false;">
#include "stdafx.h"
#include <iostream>

int _tmain(int argc, _TCHAR* argv[])
{
    std::cout << "Hello C++\n";

    return 0;
}
</pre>

要はソースコードの開始~終了部分を、<PRE>~</PRE>タグでくくるという単純なものです。開始タグの中に追加属性を書き込むことによって、書式の拡張が可能です。

7)注意点
SyntaxHighlighterはソースを<PRE>タグ(Preformatted Textタグ)で囲むことによって、ソースに記述されたスペース・改行などを、そのまま等幅フォントで表示します。編集画面にPreCodeプラグインが生成したコードを貼り付けると、スペースが”&nbsp;”に置き換わってしまいます。これでもブラウザ上の表示は正しく行われるのですが、コードをクリップボードにコピーすると、スペースの代わりに”&nbsp;”が入ってしまいます。これではコードの再利用ができません。プラグインの出力をソース画面に貼り付けるとスペースコードが変換されることなく入力ができます。

SyntaxHighlighterを使うと、スペースコードがらみで一点制約が生じてしまいます。ブラウザからオンライン編集を行うと、スペースコードが”&nbsp;”に置き換わってしまいます。ブログファイルを開く時点で自動的に変換されてしまうようです。この問題を回避するためには、SyntaxHighlighterを使ったブログページに関しては、オンライン編集をあきらめて、常にLive Writerにページを読み込んでから編集・アップロードを行う必要があります。

どこからでも編集できる利便性がなくなったのは残念ですが、出先からブログを編集することはないのでよしとしました。普段使うノートPCにLive Writerをインストールしておけば多くの場合は出先からも編集ができますし。

2009/11/4追記: 残課題
一行の文字数が多いソースコードの表示は現状折り返し表示になっています。以下のように折り返し解除の指定を行うと、demoのように横スクロールバーが表示されるはずなのですがうまく動いてくれません(スクロールバーが表示されず、右端が切れてしまう)。

<pre class="brush: cpp; wrap-lines: false; ">

FireFoxだとちゃんと横スクロールバーが表示されますが、IE8だとNGです。IE8でもdemoのように正しく表示されるサイトもあるため、単なる相性問題でもなさそう(ココログのスタイルシートもからんでいるか)。

2010/11/3追記:
SyntaxHighlighter 3.0の使用法を投稿しました。

開発環境をWindows7に移行

Windosw 7が発売されました。私もしっかりと(?)、先行予約で購入してしまい、週末はせっせとVistaから環境を移行中です。7の由来は諸説ありますが、Windows 7番目のメジャーリリースといわれています。自分が買った歴代Windowsを並べてみると、Windows 3.0→ 95→ 98 → Me → XP → Vista → Windows 7となり、自分的にも7代目のWindowsです。      
95~Meはマイナーリリースですので、5世代お付き合いしたことになりますが、われながらマイクロソフトさんのいいカモだと思います。新しいのが出ると、ついつい、、

Windows 7の使い勝手やインプレッションは他の記事に譲るとして、Arduino, STM32 Primer2開発環境の移行を行いましたので結果を以下に示します。

Arduio IDE

Arduino 0017を使っていますが、問題なく動作。まあ、IDEはJavaアプリですから動いて当たり前です。FT2232のドライバーは最新の2.04.16をFTDIからダウンロードして使用しました。Windows 7対応の記載はありませんが、インストール、動作とも問題はありませんでした。

STM32 Primer2 (Ride7)

Vista時代に使っていた、CD_STM32-Primer_BN28.zipをインストール。こちらはRLinkドライバのインストールに問題がありました。インストーラーの処理では、RLinkインストールの際にOSバージョンチェックでエラーとなり、RLinkドライバーのインストールがスキップされます。

[インストールDir]\Ride\Driver\RLinkDrvにドライバーファイルが展開されていますので、インストーラーから抜けた後に、RLinkUSBInstall.exeをXP互換モードで実行することでドライバーがインストールできました。デバッグ、書き込みなど一通り動かしてみましたが、今のところ問題はありません。XP/Vistaから変わった点として、Windows 7のスタートメニューにRide7で最近使ったプロジェクトが表示されるため、1アクションで直近のプロジェクを開くことができます。

Win7_StartMenu

ちょっと便利ですが、この開き方ででは、プロジェクト内で最後に使っていたソースコードを自動的に開いてくれない点が残念です。(Windowsの問題ではなく、Ride7の動作仕様だと思います)

その他

今回購入したのはProfessionalエディションの32bit(DSP)版です。64bit版はまだ時期尚早かと思い見送ったのですが、やっぱり64bit版にチャレンジしたほうが面白かったと後悔中です。パッケージ版なら32bit/64bitの両メディアが入っているので、64bitでだめなら32bitに代えるということもできたのですね、、。パッケージ版にこのようなメリトッがあることを認識していなかったです。最近は電子工作関連の情報収集に時間を取られて、このあたりの事前チェックが不足していました(言い訳ですが)。

Windows 7はVistaに比べてレスポンスが改善されたと巷で言われていますが、確かにVistaで感じたモッサリ感がなくなり改善が実感できます。

あと、Windows 7の新機能ではありませんが、Windows Live Writerなるブログ編集ソフトがあることを初めて知りました。Windows 7にはメールクライアントが添付されておらず、Windows Liveからのダウンロードになるのですが、その際に発見。この記事はLive Writerを使って入力しています。これまでは、ブラウザーの編集画面経由で記事の入力を行っており、編集機能が限られていたのですが、なかなか便利です。ソースコードを整形して貼り付けプラグインもあり今度使ってみようと思います。フォントの指定ができるようになったため、デフォルトのMSゴシックでなく、メイリオを指定してみました。

2009/11/3追記:
Writerでフォント形式を指定すると、投稿後ブラウザーから編集を行うとフォーマットが崩れてしまう問題があったため、メイリオフォントの指定はスタイルシートの編集に変更しました。
ソース整形の「Insert Code for Windows Live Writer」はスタイルシートを記事の中に埋め込む形式のせいか、フォント指定と同様に、投稿後のブラウザー編集に問題がありました。

上記の機能はココログとは相性が悪いようです。

2017年10月
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        
無料ブログはココログ