2016年5月1日日曜日

Del.icio.usからブックマークデータをエクスポートする

4/20くらいからソーシャルブックマークサービス「Delicious」にアクセスできなくなる事態が続いており、結構参っていました。
どうやらドメインが「Delicious.com」から「Del.icio.us」に変更になったようで、その過程でアクセス不能になっていたのでしょう。

ただ、その前からちょくちょくアクセス不能の自体が頻発していたので、とりあえずバックアップとしてブックマークデータをエクスポートすることに。

新ドメインの方では今のところ(4/30)エクスポートする為のページへのリンクがありません。
ただ旧ドメインの方では「https://delicious.com/settings/bookmarks/export」 で飛べていたので、同様に予めログインを済ませた状態で「https://del.icio.us/settings/bookmarks/export」と打ったところ無事飛べました。

エクスポートの形式はHTML一択になります。タイトルとURLと合わせて保存しておいたメモが出力されているので、そのままでも使えなくはないです。
日付が残らないのが惜しいけれど、出力できただけ充分か。

2016年4月20日水曜日

TiddlyWiki5導入メモと隠しTiddlerの場所



メインはEvernoteなのですが、見た目が面白そうだったのでとりあえず導入しました。

TiddlyWikiはローカルで作成できるWikiです。リンクを貼るのも検索するのも可能で、かつPCに1ファイル作って管理するので、持ち運びにも便利です。
TiddlyWiki5はTiddlyWikiの中での最新版に当たるようです(前のTiddlyWikiはTiddlyWiki Classicと区別される)。

使い方は簡単で、始めは公式サイトの指示に従って(Firefoxユーザーは必要なアドオンをインストールしたうえで)htmlを落としてきます。これを適当な位置において開き、出てくるダイアログに対して許可を選択すると、タイトル編集画面が表示されるので、適当に決めます。もちろん後から変更可能。その後は、ネットで「TiddlyWiki5 日本語化」で検索して、日本語設定へ。


 TiddlyWikiの高度な設定は、あらかじめ用意されている特殊な記事で行うようです(例えばタイトルの変更は、実際にはSiteTitleという記事の本文を変更している)。

これらの特殊な記事は、記事タイトルが「$:/」で始まっており、一部のものを除いては少しわかりにくい位置に存在しています。

恐らくレイアウトを変更していなければ、wikiタイトルの下にある「表示中」「最近の更新」「ツール」「詳しく」というタブがあるので、そこから「詳しく」-「隠し」を選択すると一覧が出てきます。

2016年4月10日日曜日

Bluetoothの接続デバイスを取得する(c++)

※素人のメモ書きです、ご注意ください。

Bluetoothの信号を受け取ってみるのを目標に、今回はまず一覧取得まで作ってみた(コードはGistに投げました)。

こちらのページを参考に、C++で作成。変更したのはwcoutとendlをそれぞれstd::wcout,std::endlにして#include<iostream>を追加したくらい。


基本的には、
  1. radio側の情報取得用配列(para_radio)を用意し初期化
  2. radio側ではHANDLEを作成、BluetoothFindFirstRadioでPC側の持っているBTH機器の位置(?)を構造体に送る(findで成功失敗を確認)
  3. 成功した場合、BluetoothGetRadioInfoでPC側の機器情報を用意した配列(info)に送る
  4. 機器名出力、BluetoothFindNextRadioで次のBTH機器を確認、あれば3へ
  5. device側の情報取得用配列(para_dev)を用意し、情報取得のためのフラグ設定を行う
  6. BluetoothFindFirstDeviceで情報を取得する
  7. 機器名出力後、BluetoothFindNextDeviceで次の機器を確認、あれば6へ
(5に関して、設定毎でどのように結果が変わるのかが気になったので、書いたコードではループしています)

HANDLE型のradioは、FILEみたいな振る舞いをするものかと思ったけれど、device側ではHANDLE型は使われていない。radio側とdevice側で扱う関数は、似ているけれど部分で違うようです。

  
visual studioで、構造体名などで右クリックで定義が見られることを知ったので、ヘッダファイルの見方も慣れていきたいと思いつつ。


--

 構造体BLUETOOTH_DEVICE_SEARCH_PARAMSに関して、

定義では

    BOOL    fReturnAuthenticated;   //  IN  return authenticated devices
    BOOL    fReturnRemembered;      //  IN  return remembered devices
    BOOL    fReturnUnknown;         //  IN  return unknown devices
    BOOL    fReturnConnected;       //  IN  return connected devices

    BOOL    fIssueInquiry;          //  IN  issue a new inquiry
    UCHAR   cTimeoutMultiplier;     //  IN  timeout for the inquiry

    HANDLE  hRadio;                 //  IN  handle to radio to enumerate - NULL == all radios will be searched


とあったが、実際にどうなるのか気になったのでfReturnUnknownとfReturnConnectedのみ確認しました(他はすべてTRUE)。
windows側のBluetooth設定で「BSHSBE21(ペアリング済)」「iphone(ペアリング可能」「不明なデバイス」の3つが表示されている状態での実行結果です。

 

fReturnUnknownはTRUEにすると「名前の取得に失敗していても表示」、fReturnConnectedは「ペアリング済のみ表示」になるようです。