2016年8月8日月曜日

chrome拡張でコードを段組み表示



  • ソースコードの入手
    • GitHub repo から "Clone or Download" -> "Download ZIP"
    • zipファイルを展開する
  • 拡張機能のインストール
    • chrome://extensions/を開き、"デベロッパー・モード"を有効にする
    • "パッケージ化されていない拡張機能を読み込む"で、展開した場所を指定
    • "有効にする"にチェック
    • "デベロッパー・モード"のチェックを外す
  • 既知の問題
    • アプリ・ストアを介さない拡張のインストールで、
      ブラウザ起動時にセキュリティの警告が出る (chrome)
    • コードと歌詞が別の段に分離してしまう
  • TODO(余力があれば
    • FireFox拡張 ... 拡張の規格は対応しているが、署名の必要がある。(要・登録審査)
    • Microsoft Edge 拡張 ... 最新版(2016/08/03)のアップデートでブラウザ側は対応
      ストア外からの拡張のインストールは設定を弄る必要あり。

2016年8月3日水曜日

ChordWiki を段組表示するブックマークレット






コード

ChordWiki columns 2

ChrodWiki columns 3

動機

  • 自動スクロールの指定が難しい (初見の曲等でテンポが分からない等)
  • 手動スクロール時にロストしやすい
  • ブラウザを2窓立ち上げて表示するのは手間

解決方法

  • デッドスペースを活用し、段組み表示する。

導入方法

利用方法

  1. Chord Wiki のページを開く
  2. ブックマークレットを呼び出す
  3. 縦幅がスクロールする場合、フォントを少し小さくする等で調整
    (Ctrl + マウスホィール等)

既知の不具合

  • 曲によっては、段組みの最下段で、コードと歌詞が別の段に表示される。
    => フォントサイズ調整で調整可能

コードの詳細

  • document.getElementsByClassName("main")[0]
    ChordWikiでの歌詞・コードが書かれた親要素を所得。
    他サイトへの対応は、後述。
  • .style.coumns = 2
    スタイルシートで段組みを設定します
    数値は、段組の数を指定します。Google Chrome でのみ動作確認。

他サイトへの対応 (2016/08/03現在)

  • ChordWiki
    • document.getElementsByClassName("main")[0]
  • ChordSketch
    • document.getElementsByClassName("song_body")[0]
  • gakki me
    • document.getElementById("code_area")
  • ufret
    • document.getElementById("blyodnijb")

複数サイト対応版



2016年5月6日金曜日

NetDuetto Reaper マルチトラック録音設定の覚書


マルチトラック録音用の設定


  1. 通常のトラックを作成し、NETDUETTO2 vst bridge を挿入(これをトラック1とします)
  2. Insert -> Virtual Instrument on new track で、インストゥルメンタル トラックを作成
  3. VSTi: NETDUETTO2 vst bridge (submulti) を選択
    自動的にNDからの出力を受け取るトラックが作成されます
  4. この時点で、自分のモニター音は 通常のVSTと VSTi 両方からの音が聞こえる為、
    トラック1 の ROUTING 設定で Master/Parent send チェックを外す。
  5. (録音をする場合)NETDUETTOからの出力の各トラックの録音設定を
     Record: output -> stereo へ変更
他の方法でモニター音が2重に聞こえる問題を解消すると、
設定方法によっては、音は聞こえていないのに NETDUETTO の相手へは音が送られている、
もしくは逆のシチュエーションになることもあるので注意してください。
入力音がNETDUETTOで送信されているかどうかは、NETDUETTO内の入力メータに注目。


モニターのルーティング設定で気を付ける点


自分自身は聞こえてるがNETDUETTO越しの相手には届いてない状況
(トラックのルーティングを直接マスターに送った場合)、もしくはその逆の状況
を作ると、自分も相手も気付かない問題に陥りやすいので(セッションではよくある問題)
プロジェクト内では、NETDUETTOのマルチ出力を経由してマスターへ送る等、
一貫したルールを設けると良いかもしれません。

入力設定


次に、自身の入力の設定。複数入力がある場合は、
NETDUETT2 vst bridge を挿入したトラック1へ送るようにルーティングを組みます。

  1. 新規オーディオトラックを作成
  2. ROUTING から Add New Send でトラック1を選択
  3. (I/Fからの楽器入力の場合) Recording Monitoring を on もしくは auto に設定

設定の保存


録音用に毎回プロジェクトを作る事を想定するなら、テンプレートとして保存しておくと便利です。

File -> Project Templates -> Save Projects as template

新規プロジェクトを作る時、File -> Project Templates から呼び出し可能になります。


又、複数の入力デバイスを切り替えて運用する場合、
Reaper はコマンドライン引数で、起動時に読み込む設定を切り替えることも出来ます。
詳しくは、reaper.exe /help と引数を与えて実行。

2016年4月3日日曜日

JamTaba リソース翻訳

Qtアプリケーションのリソース翻訳

リソースの種類

  • C++ソースコード
  • UI
JamTaba では、UIファイルを用いて基本的なGUIデザイン
動的に生成される部品は C++ で作っている。

手順

JamTabaが利用しているQtツールキットでは、多言語化の機能が提供されているので
以下の手順に従います。


  1. プロジェクトファイルへ翻訳リソースファイルを追加
  2. lupdate プログラムで翻訳リソースを生成
  3. Qt Linguist で翻訳リソースを編集・リリース
  4. アプリケーションへ翻訳リソースを読み込む対応コードを追記

翻訳作業


Qt Linguistでの翻訳画面

翻訳リソースの保守

  • 翻訳リソースを更新
  • 翻訳作業
  • 再生成(Qt Linguist で翻訳のリリース)
  • プレビュー・検査
  • 開発(GitHub)へプルリクエストを投げる

残りの作業

  • C++コード中、翻訳に対応していないリソースがあったので、
    翻訳に対応するようにマークする。
  • 日本語以外の翻訳リソースにも対応できるようにする。
  • 動的に言語を切り替えるには、更にアプリ側での対応が必要。

2016年3月16日水曜日

My Vex Flow -- テキストで楽譜(5線譜/Tab譜) が書けるWebサービス


  • VexFlow ブラウザ上で楽譜描画の為のライブラリ。Google Docs等にもアドオン有
  • MyVexFlow MarkDown テキスト形式で、譜面を用いた記事を書けるサービス

ChordWikiのURLを日本語のままコピーするブックマークレット


動機

  • ブラウザのURL欄からコピーすると、エンコードされたURLになるため、曲名が日本語の時分かり辛い

導入方法

  1. 適当なブックマークを作る
  2. ブックマークの編集でURLの欄に、上のjavascript:~で始まるコードをコピー
  3. ブックマークバーへ配置する

使用方法

  1. 適当なページでこのブックマークレットを呼び出すと、クリップボードにURLがコピーされる

注意点

  • ※ 注意: 歌詞のところへフォーカスを当てたままコピーしようとすると、
    chord wiki の歌詞コピー禁止のダイアログが出るので、
    一旦他の場所をクリックする事で回避。

不具合修正[2016/03/17 19:00]

  • イベントリスナを登録したままなので、一度呼び出した後は登録解除するように修正
  • ブックマークレットを呼び出した後に、ページ内の他の場所をコピーした場合も URL がコピーされるようになっていた