前職ではSVNばかり戯れていたので(もとはVSSだったのでこれでも進歩したほうだった)Git初心者なひつじです。
絶対まとめておかないとまた後で調べなおすことになるのでメモメモ。
Gitだと以前コミットした場所まで
git reset
を使えば戻すことができます。
で、今回このコマンドで戻した際、うっかり二回実行してしまって戻したくないところまでワーキングツリーを戻してしまいました。
IT系と日常系の備忘録。三日坊主。
前職ではSVNばかり戯れていたので(もとはVSSだったのでこれでも進歩したほうだった)Git初心者なひつじです。
絶対まとめておかないとまた後で調べなおすことになるのでメモメモ。
Gitだと以前コミットした場所まで
git reset
を使えば戻すことができます。
で、今回このコマンドで戻した際、うっかり二回実行してしまって戻したくないところまでワーキングツリーを戻してしまいました。
AzureFunctionsのlocal.settings.jsonファイルといえば
{
"IsEncrypted": false,
"Values": {
"FUNCTIONS_WORKER_RUNTIME": "<language worker>",
"AzureWebJobsStorage": "<connection-string>",
"AzureWebJobsDashboard": "<connection-string>",
"MyBindingConnection": "<binding-connection-string>"
},
"Host": {
"LocalHttpPort": 7071,
"CORS": "*"
},
"ConnectionStrings": {
"SQLConnectionString": "<sqlclient-connection-string>"
}
}
のような感じで設定情報が保存されてます。
最近Calibreという電子書籍の管理ソフトを使ってます。
このソフトでKindleの電子書籍を管理してるんですが、私はタイトル欄には書籍名と巻数のみだけ、それ以外の情報は消しておきたいというポリシーがありまして、元のタイトルはカスタム列を作成してそちらに入れるようにしています。
こんな感じで。
が、たくさんデータがあるといちいちタイトル欄からコピーしてカスタム列にコピーして・・・ってのが面倒。
なので、Calibreのコマンドを利用して、一気にカスタム列にコピーするソフトを突貫で作りました。
App.config側にCalibreのパスやライブラリパス、コピー先のカラム名、コピー元のカラム名を指定してやると、コピー先カラムに値が書き込まれていない場合にコピー元カラムの値を取得して、コピー先カラムに書き込むだけ。
また、コピー元カラムにコピー先カラム内で利用されている値が含まれている場合に、その値を書き込む処理もフラグを変更したらできるようにしてます(CopyWhenIncludedFlg)。
上の画像でいうレーベルというカラム、単行本レーベルを登録しているんですけど、これも一個一個入れるのが面倒なので、タイトル欄に入っているならそれをコピーして入れておきたいから実装した次第。
実装が糞なので、「ビッグコミックス」と「ビッグコミックススペシャル」みたいなものだとビッグコミックスのほうが採用されちゃうこともあるんですが、まぁいいや。
MarkdownファイルをPDFにするとき、普段はVSCodeのMarkdown-PDFプラグインを使ってるんですが、大量のMarkdownファイルがあるときに一個一個PDFにするのが面倒。
MarkDown変換コマンドラインツール「Pandoc」を使う
このあたりを使えばいいんでしょうけども、せっかくなので作ってみようと思いまして。
以前中部電力から別の電力会社に切り替えるため、スマートメータを取り付けてもらったんですが、スマートメーターって電力会社との通信だけでなく、個人に対して通信もできるようになってるんですよね。(HEMSとか)
今の電力会社は電力情報をAPIでくれないので(くれる電力会社あるんだろうか)、日々の電力消費量を見るためにはサイトを見る必要があるんですが、スマートメーターから取得できるならそれで確認できるなということで、試してみることにしました。
もともとAzure Functionsで動かしていたアプリをLinux上に持って行った際、下記のようなエラーが発生しました。
Azure Functionsで動かしていたプログラムがあるんですが、(たぶん実装が悪いのだけど)課金が結構な額となってしまい、またDBを使うとなるとそれはそれでよい金額となってしまいます。
というわけでAzure Functions用に作っていたプログラムを.NET Coreのコンソールアプリとして置き換えて、Google Compute Engine上のLinuxで動かすことにしました。
.NET CoreではShift-JISがそのままでは利用できない。
.NET Frameworkで作成していた時は問題なく動いていたプログラムをそのまま移植すると、
ArgumentException: 'shift_jis' is not a supported encoding name. For information on defining a custom encoding, see the documentation for the Encoding.RegisterProvider method.
と怒られる。
エラーメッセージにある通り、カスタムエンコーディングを登録してやる必要がある。
NuGetからSystem.Text.Encoding.CodePagesを参照し、
コードのどこか(Shift-JIS処理するより前)に下記を挿入。
Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
これでShift-JISが正常に利用できる。
UWPとかやっていた方からしたら基本的な知識なのかも。
いい加減Shift-JISを利用したサイト滅びてくれないかな・・・。
音楽データベースのMusicBrainzからデータを引っ張ってくるときの備忘録。