コーヒー飲みながら仕事したい

仕事で使う技術的なことの備忘録とか


Wordpress に引っ越しました!

2018-01-01から1年間の記事一覧

バッチファイルで % とかをエスケープする方法

所用で、 git log -n 1 --format=%H をバッチファイル上で実行しようとしたのですが、うまくいかなかったので備忘録として残しておきます。 バッチファイルでは、% は特別な意味を持つので、エスケープが必要なのはわかるのですが、何故か後ろに付ける ^ に…

Fire TV Stick で IEEE802.11ac 接続できないときの対処法

仕事とは全く関係ないですが、今回の Amazon Cyber Monday にて、 Fire TV Stick を買いました。 買って、さっそくセッティングしたのですが、我が家の Wi-Fi の 11ac (5GHz 帯)のネットワークを認識しませんでした。 一応 11g は認識して、速度もフル HD で…

CentOS で samba の設定をする

Windows10 から CentOS7 へエクスプローラーを使ってアクセスしたかったので、 ssamba による設定を行いました。 かなり苦戦したので、苦戦したところを備忘録として残します。 samba の準備 usado.jp ↑を参考にさせてもらいました。 基本的にはこの通りでよ…

WPF で外部のプロジェクトからユーザーコントロールとかを参照する方法

地味にかなりハマったので、備忘録として残しておきます。 シチュエーションとしては、以下の感じです。 プロジェクトは WPF を前提 ユーザーコントロール(MyUserCtrl.xaml)を含むクラスライブラリとしてプロジェクトAがある プロジェクトAを参照したエン…

自作の nuget package に xml コメントを付加する

以下、 .NET Standard の話です。 .NET Standard では、 nuget package の作成方法は、 *.nuspec を使用しなくても、 *.csproj に以下のように記載すれば *.nupkg が出力されます。 <Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <TargetFramework>netstandard2.0</TargetFramework> <LangVersion>latest</LangVersion> <NeutralLanguage>ja-JP</NeutralLanguage> </propertygroup></project>

Visual Studio 2017 でデフォルトの using を設定する【項目テンプレート使用】

Visual Studio で C# でアプリケーションを開発中に個人的によく思うのが、例えば using System.Linq とか using System.Threading.Tasks とか、毎回毎回手で書くの面倒くさいなぁというところです。 using System とかは最初から記述してあるので、それと同…

.net standard で nuget package (*.nupkg) を生成する方法

.net framework 等では、 *.nuspec というファイルを経由して *.nupkg を作る方法があるみたいですが、.net standard では異なるみたいです。(もしかしたら .net core も同様かもしれませんが、試していません) というかかなり楽で、 *.csproj から生成す…

mosquitto でブローカーのログをファイル出力する方法(Windows10 にて)

主題の通り、Windows10 の環境にて、 mosquitto のブローカーのログをファイルに出力する方法です。 公式な手順(ただし Windows10 ではうまくいかない・・・) まず、公式にログ出力に関する設定方法が書かれています。 大まかな手順としては mosquitto.con…

.NET Standard で EntityFrameworkCore の Scaffold を実行する

前回、 .NET Core で Scaffold しましたが、 tassi-yuzukko.hatenablog.com クラスライブラリ側に Scaffold して DTO クラスを自動生成したくなりました。 しかし、単純ではなかったので、こちらも備忘録として残しておきます。 はじめに 単純に .NET Standa…

EntityFrameworkCore で Scaffold 使ってデータベースファーストする方法

主題の件ですが、ハマった部分もあったので備忘録として残しておきます。 先に注意点ですが、 .NET Core コンソールアプリケーションと、 ASP.NET Core では Scaffold の条件が異なる というのが今回ハマったところです。 前提事項 恐らく現状(dotnet core …

mosquitto でパスワード認証の設定をする

概略手順 ブローカー側で保持するパスワードファイルを作成 作成したパスワードファイルを、config ファイルに登録する config ファイルを起動オプションに指定して、ブローカーを起動する クライアント側でもオプションにユーザー名とパスワードを指定して…

moq でデリゲートをモックする方法

Func<XXX> といったようなデリゲートをモックしたい時があります。 これを、 moq を使用する方法です。 やり方 たとえば、int 型を2つ受け取り、文字列に変換するデリゲートがあったとします。(つまり、 Func<int, int, string>) これをモックする方法は、以下の通りです。 var m</int,></xxx>…

ProtocolBuffers の自動ドキュメント作成について

時間がないのでメモ的にですが残しておきます。 ProtocolBuffers の .proto ファイルから、ドキュメントを自動生成する方法について見つけました。 taktak.jp 上記に記載がありますが、ちょこっと変えてフォルダ内の全ファイルに対して自動生成するようなス…

moq で virtual メソッドをコールする方法

moq を使っていて、ハマったことがあったので備忘録として残しておきます。 主題の通り、「moq で virtual メソッドをコールする方法」です。 やりたかったことと症状 以下のような Dispose パターンを使用したテスト対象のクラスがあったとします。 public …

消せないファイルを消したい!ときの IObit Unlocker

主題の通り、Windows にてファイルを消そうとすると、「プロセスがどうたら~」とか余計なおせっかいを言われてファイルが消せないことが多々あります。 「ええから消させてくれい!」というときに結構困るんですが、そんなとき用の便利ツールが以下の「IObi…

mosquitto のバグ(たぶん)について

mosquitto は mqtt ブローカーの参照実装と言われるだけあって、安定していて使いやすいのですが、やはりバグがいくつかあります。(現状 Github で報告されている issue だけでもこれだけあります) 今回、私のプロジェクトにおいて関係するバグを備忘録と…

Git Bash on Windows で gitlab に ssh 接続するときにハマったこと

事象 社内のオンプレミスの gitlab に対して、 tortoise git では ssh できるのに、 git bash では ssh できない!1 原因 普段 ssh で使用している秘密鍵は、 putty で作成した鍵でした。 tortoise git 使っているときには、putty 形式の鍵が使えたのですが…

Observer パターンを自分なりに整理してみる

免責 いきなり免責というのもアレですが、この記事の真偽は一切保証を致しかねます。 正直、かなり怪しいと思いますので、少なくとも情報収集されている方は、この記事はスキップされたほうが無難かと思われます。 (私のアカウントに書いてあることはもとも…

Visual Studio 2017 で欠かせないプラグイン 4+1つ

個人的にこれは欠かせないっていう Visual Studio のプラグインを備忘録として残しておきます。 Format document on Save Ctrl + S で保存時、自動整形を実行してから保存してくれるプラグインです。 Visual Studio 自体にもプラグインの機能があるのですが…

Visual Studio でビルド時に「のプロジェクト情報が見つかりません。これは、プロジェクト参照がないことを示している可能性があります。」でエラーになったときの対処法

C#

(備考:もしかしたら .NET Standard のみの事象かもしれません) 事象 主題の通り、 Visual Studio でビルド実行時に、以下のようなエラーになりました。 (xxx.csproj はソリューション内で参照しているプロジェクト) 'xxx.csproj' のプロジェクト情報が…

単体テスト<C#> async な moq をセットアップするときにハマったこと

C# で単体テストで moq を使用した場合のお話です。 備忘録として残しておきます。 以下のようなインターフェイスがあったとします。 public interface IHoge { Task SomethingAsync(int x); } これを moq でセットアップする場合、以下のように書く必要があ…

C言語の JSON シリアライザー parson について

parson の紹介 C言語で JSON をシリアライズすることができないか探していると、 parson なるものを見つけました。 速度はわかりませんが、特徴としては以下のようです。 シリアライズ/デシリアライズの両方可能 . (ドット)を使用して表現できる 下記の参考…

npm で fatal: unable to connect to github.com: と怒られるとき

npm

npm コマンドを使ってインストールを行うとき、fatal: unable to connect to github.com: と怒られました。 その解決方法です。 条件 ファイアウォールの問題らしいです。 恐らく社内等のネットワーク環境とかが考えられます。 対策 以下を実行します。 git …

ProtocolBuffers の C# 版の Timestamp について

前に ProtocolBuffers の C# 版の導入をやってみたのですが、 tassi-yuzukko.hatenablog.com このときに proto ファイル import google/protobuf/timestamp.proto が読込めないせいで以下のようにクラスファイル変換のコンパイルに失敗していました。(この…

Pandoc で PlantUML を出力

pandoc は、当然ですがデフォルトでは plantuml に対応していません。 しかし、 markdown でドキュメントを書く際は、 plantuml をよく使用するので、 plantuml の画像を出力できるようにします。 前提 お約束の前提ですが、以下の環境とします。 Windows 10…

plantuml で日本語を扱う

plantuml で日本語の仕方を忘れていたので備忘録として残します。 ここでは、単体で plantuml を扱う場合です。(plantuml.jar を使用する場合) ソースファイルは UTF-8 とします。 java -jar .\plantuml.jar <ソースファイル> -charset UTF-8

Pandoc を使って、Markdown を HTML に変換する

主題の通り、 Pandoc というツールを使って Markdown 形式のファイルを、HTML形式に変換します。 前提 環境は、例によってWindows 10 Home 64bit です。 Pandoc のインストール github pandoc から最新版の Pandoc-XXX-windows.msi を DL DL した msi ファイ…

Windows の環境変数の設定画面のショートカットキー

小ネタです。 結論から言うと、主題の目的を果たすことができるショートカットキーは存在しないようなのですが、 Windowsキー + Pause/Breakキー (同時押し) で、コントロールパネルのシステムの画面が表示されます。 環境変数を変えるたり確認することが…

gitlab-ci と gitlab runner 連携の環境構築

とりいそぎ備忘録です。 gitlab-ci や gitlab runner が何なのかはここでは省略します。 動作環境 gitlab-ci 側 gitlab.com を使わせてもらいます。本当はローカル環境で構築したかったんですが、前回 Docker 上で動作させることができなかったので一旦断念…

gitlab を Docker で動かす(途中)

主題の通り、 gitlab を Docker 上で動かしてみます。 イメージの取得 docker-compose.yml を使用します。 下記サイトを参考に、以下のようなものを用意しました。 version: '2' services: gitlab: image: 'gitlab/gitlab-ce:latest' restart: always ports:…