フォーラムへの返信
-
投稿者投稿
-
aromatibus参加者
こんばんは
まさかこんな素晴らしい機能があるとは思いませんでした!!!
これは是非、活用させていただきます。
すばらしいです。ありがとうございます。実は以下のようなパッチファイルを作成して運用してました(笑)
TuneBrowserの実行ファイルすべてとAppDataの必要ファイルをまるごとSDカードにコピーして使用できるので
これはこれでメリットありますが、”tagdb”による運用の方が必要なファイルがひとつで管理の手間は少なく
デメリットがないので楽に運用できそうですね。これで運用して何か気づいたら報告させていただきたいと思います。
——-
※バッチを使われる方がいる場合は自己責任でお願いします。
やっている事は
1.AppDataの元フォルダをリネームしてバックアップ、ポータブル環境のジャンクションを作成。
ジャンクションを利用しているのは管理者権限が必要ないためです。
2.リンクを削除してバックアップファルダを元の名前にリネームする。
を交互にやっているだけです。運用は上のコメントを見てください。
本機能に関係ない小技を使ってますが、メンテナンス性を考え冗長に書いているので上から読んでいけばやってる事は簡単です。“””
@echo off:: UTF-8などで保存されたバッチファイルのShiftJis対策;
chcp 65001 > nul:: 遅延展開 バグの原因になる場合があるので注意;
setlocal enabledelayedexpansion:: エスケープシーケンスを利用;
for /f “tokens=1,2 delims=#” %%a in (‘”prompt #$H#$E# & echo on & for %%b in (1) do rem”‘) do (set ESC=%%b)set ID_TUNEBROWSER=Tiki
set ID_TUNEBROWSER_BACKUP=Tiki.org
set FOLDER_LOCAL=AppData\Local\
set FOLDER_ROAMING=AppData\Roaming\
set ID_JUNCTION=^<JUNCTION^> %ID_TUNEBROWSER%set USER_LOCAL_TIKI=%USERPROFILE%\%FOLDER_LOCAL%%ID_TUNEBROWSER%
set USER_LOCAL_BACKUP=%USERPROFILE%\%FOLDER_LOCAL%%ID_TUNEBROWSER_BACKUP%set USER_ROAMING_TIKI=%USERPROFILE%\%FOLDER_ROAMING%%ID_TUNEBROWSER%
set USER_ROAMING_BACKUP=%USERPROFILE%\%FOLDER_ROAMING%%ID_TUNEBROWSER_BACKUP%set PORTABLE_LOCAL_TIKI=%~dp0%FOLDER_LOCAL%%ID_TUNEBROWSER%
set PORTABLE_ROAMING_TIKI=%~dp0%FOLDER_ROAMING%%ID_TUNEBROWSER%echo.
echo %ESC%[44mTuneBrowserの環境設定をローカル⇔ポータブルに相互チェンジします%ESC%[0m
echo.
echo.:: 同じフォルダにポータブル環境用のAppDataフォルダがあるかチェック;
if not exist “%PORTABLE_LOCAL_TIKI%” (
echo %ESC%[41;97m 同じフォルダ内にポータブル用の%PORTABLE_LOCAL_TIKI%フォルダが見つかりません。%ESC%[0m
echo.
goto :EndProcess
)
if not exist “%PORTABLE_ROAMING_TIKI%” (
echo %ESC%[41;97m 同じフォルダ内にポータブル用の%PORTABLE_ROAMING_TIKI%フォルダが見つかりません。%ESC%[0m
echo.
goto :EndProcess
):: ローカルにJunctionのフォルダがあったら削除;
dir “%USERPROFILE%\%FOLDER_LOCAL%”|find “%ID_JUNCTION%”>NUL
if %ERRORLEVEL%==0 (rmdir %USER_LOCAL_TIKI%)
:: ローカルにバックアップがあれば元に戻し、なげばリンクを作成;
if exist “%USER_LOCAL_BACKUP%” (
echo ***************************************************************
echo *%ESC%[92m AppData\Local環境をポータブルからローカルにチェンジします %ESC%[0m *
echo ***************************************************************
echo ren “%USER_LOCAL_BACKUP%” “%ID_TUNEBROWSER%”
ren “%USER_LOCAL_BACKUP%” “%ID_TUNEBROWSER%”
) else (
echo ***************************************************************
echo *%ESC%[92m AppData\Local環境をローカルからポータブルにチェンジします %ESC%[0m *
echo ***************************************************************
echo ren “%USER_LOCAL_TIKI%” “%ID_TUNEBROWSER_BACKUP%”
ren “%USER_LOCAL_TIKI%” “%ID_TUNEBROWSER_BACKUP%”
echo.
echo mklink /j “%USER_LOCAL_TIKI%”
echo “%PORTABLE_LOCAL_TIKI%”
echo.
mklink /j “%USER_LOCAL_TIKI%” “%PORTABLE_LOCAL_TIKI%”
echo.
)
echo.
echo.:: ローミングにJunctionのフォルダがあったら削除;
dir “%USERPROFILE%\%FOLDER_ROAMING%”|find “%ID_JUNCTION%”>NUL
if %ERRORLEVEL%==0 (rmdir %USER_ROAMING_TIKI%)
:: ローミングにバックアップがあれば元に戻し、なげばリンクを作成;
if exist “%USER_ROAMING_BACKUP%” (
echo ***************************************************************
echo *%ESC%[92m AppData\Roaming環境をポータブルからローカルにチェンジします %ESC%[0m*
echo ***************************************************************
echo ren “%USER_ROAMING_BACKUP%” “%ID_TUNEBROWSER%”
ren “%USER_ROAMING_BACKUP%” “%ID_TUNEBROWSER%”
) else (
echo ***************************************************************
echo *%ESC%[92m AppData\Roaming環境をローカルからポータブルにチェンジします %ESC%[0m*
echo ***************************************************************
echo ren “%USER_ROAMING_TIKI%” “%ID_TUNEBROWSER_BACKUP%”
ren “%USER_ROAMING_TIKI%” “%ID_TUNEBROWSER_BACKUP%”
echo.
echo mklink /j “%USER_ROAMING_TIKI%”
echo “%PORTABLE_ROAMING_TIKI%”
echo.
mklink /j “%USER_ROAMING_TIKI%” “%PORTABLE_ROAMING_TIKI%”
echo.
)
echo.:: 終了処理(エクスプローラーから起動されていた場合はPauseする);
:EndProcess
echo %cmdcmdline% | find /i “%~f0”>NUL
if %errorlevel% equ 0 Pause
goto :eof
“””aromatibus参加者さっそくご返答いただき感謝いたします。
実は今回、ウォークマン用のSDカードの管理用に使いたいと考え投稿をいたしました。
先に言うべきでした。申し訳ありません。Tikiさんの仰るとおりストレージの大容量化はアプリのサイズの問題を無くし、インターネットありきとなった現在、クラウド化が進み様々なデータ共有化が成されるようになりました。そしてストレージの大容量化、クラウド化は音楽データの管理にも大きな影響を及ぼしています。
とは言え、Tikiさんが慎重であるおかげでTuneBrowserという素晴らしいソフトが生まれ維持され続けているのは揺るがない事実です。
是非ともご一考をよろしくお願いいたします。
***************************************************************************************
余談ですが環境別設定を作る方法は次のとおりです。
一定の知識は必要ですし自己責任となりますが参考に記しておきます。1.仮想ディスクファイル(VHD)を必要な環境分用意する。
2.マウントするときは同じドライブレターなるように設定しておく。
※一緒に管理したい外付けドライブやUSBメモリ、SDカードなども統一しておくのがポイント
3.仮想ドライブにMusicなど好きな名前でフォルダを作成し楽曲データを保存する。
4.仮想ドライブにSettingなど好きな名前でフォルダを作成し必要な設定ファイルをコピーする。
※この時のフォルダ名は統一しておく方が管理しやすくなります。
5.%USERPROFILE%\AppDataへはMKLINKコマンドでシンボリックリンクを作成する。※この辺が自己責任
※設定ファイルについては#2976のコメントを参考にしてください。あくまで自己責任ですが、以上の段階を作成できる知識があれば難しくないと思います。
参考になれば幸いです。aromatibus参加者こんにちは
仰る通りでした。ありがとうございました。
aromatibus参加者ご返答ありがとうございます。
説明が下手で申し訳ありません。
>作曲家単位でランダムの場合、ベートーヴェンの次にニール・ヤングが再生されて、その次にジョン・アダムスが再生される、という具合に、ばらばらの作曲家順で再生されることをご所望なのでしょうか?
まさにコレです。
この時、ベートーベンの中ではアルバム順、トラック番号順に再生されるようにしていただきたいのです。
よろしくお願いいたします。
aromatibus参加者ご返答ありがとうございます。
早速、操作してみたのですが並べ替えられた順の思った通りの再生にはなりませんでした。
そもそも操作方法に至らぬ点があるかもしれませんが、私の説明不足が大きいと思います。
お時間取らせて申し訳ありません。具体的な例をあげて説明をいたします。
自分が気に入ったアルバムや曲を集めたプレイレストがあります。
この時、クラシックを集めたプレイリストはアルバム単位、またはアルバムアーティスト(作曲者)単位で
そのほかのプレイリストはアーティスト単位でランダムに再生してほしいのです。
つまり上の例ではクラシックならアルバム単位でない場合、組曲であってもバラバラになってしまいますし
ほかの場合、アーティスト単位になっていないと雰囲気やノリがコロコロ変わるようになってしまいます。
もちろんアーティストやアルバムに関係なくトラック(曲)単位でランダム再生された方が良い時もあります。
上記のように再生方法がすでにある場合、もう少しくわしく教えていただけると助かります。
よろしくお願いいたします。
aromatibus参加者ありがとうございます。
仰る通りでした。
クエリの設定を含めて、少し勉強してみたいと思います。
今後ともよろしくお願いいたします。
aromatibus参加者aromatibus参加者 -
投稿者投稿