i++

プログラム系のメモ書きなど

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

golang : eval (数式の evaluation)を行う

go/token パッケージ、go/types パッケージ、go/constant パッケージを使用します。 import ( "fmt" "go/token" "go/types" "go/constant" ) fs := token.NewFileSet() tv, err := types.Eval(fs, nil, token.NoPos, "1 + 2 * 3 % 4") if err != nil { fmt.P…

Angular2 : [ts] Property 'map' does not exist on type 'Observable<Response>'

http.get(url).map(...) を試みたところ発生。 [ts] Property 'map' does not exist on type 'Observable<Response>' import rxjs/add/operator/map を追加することで解決。 import {Observable} from 'rxjs/Observable'; import 'rxjs/add/operator/map'; catch には </response>…

golang : template の range で index を使う

以下の様なデータを template.Execute のデータに渡したとすると type data struct { Values []string OtherValues []string } テンプレートで <ul> {{range $i, $v := .Values}} <li>{{index $.OtherValues $i}} のようにするとインデックスでアクセスできる( Othe</li></ul>…

golang : コミット時に gofmt を実行する(pre-commit hook)

misc/git/pre-commit - The Go Programming Language を参考に作成しました。 オリジナルではフォーマットされていないコードがある場合にコミットを中断していますが、以下のスクリプトでは gofmt を実行して git add するところまでやっています。 #!/bin/…

Google App Engine : appcfg.py update 時の HTTP Error 403: Forbidden Unexpected HTTP status 403.

エラーの全文は以下の通り。 久々に GAE のプロジェクトを作成してデプロイしようと思ったら発生しました。 python appcfg.py -A YOUR_APP_ID -V v1 update src/ 06:44 PM Application: YOUR_APP_ID (was: None); version: v1 (was: None) 06:44 PM Host: ap…

golang : URL短縮サービス goo.gl を使う

URL Shortener API の使い方はこちら → URL Shortener。 ここでは API Key を使った方法を載せています。 type responseParam struct { Kind string `json:"kind"` Id string `json:"id"` LongUrl string `json:"longUrl"` } func GetShortenedUrlImpl(longU…

golang : 日本語(マルチバイト)文字を含む string の substring

go では string のスライスは byte として扱われるので、日本語のようにマルチバイト文字を含んだ文字列 str に対して str[start:start+length] のようなことをすると、思わぬ場所が切り取られてしまいます。 この問題を回避するために、一旦 rune にキャス…

TypeScript : typings による Chrome Extension 用型定義のインストール

typings で型定義ファイルの管理を行うので、未インストールの場合はインストールします。 npm install -g typings 拡張機能のプロジェクトのディレクトリに移動し、typings init コマンドで初期化します(typings.json ファイルが作成されます)。 その後、…

Git : コミットメッセージに自動でブランチ名を挿入する

Git

参考:How to add Git's branch name to the commit message? .git/hooks/ 下にある prepare-commit-msg.sample を prepare-commit-msg に変更する(.sample を外す) prepare-commit-msg に以下のようなスクリプトを追記する branchPath=$(git symbolic-ref…

Unreal Engine : Timeline を C++ コードで作成・実行する

手順 準備 Timeline で使用する Curve を「Content Browser を右クリック」→「Miscellaneous」→「Curve」(もしくは「Float Curve」)で作成する 作成した Curve を右クリックして「Copy Reference」する C++ のコード上で ConstructorHelpers::FObjectFinde…

WPF/XAML : DataGrid の行にコンテクストメニューを設定する

方針・ポイント EventSetter を使って DataGridRow に右マウスボタンイベント(MouseRightButtonUp)を設定する ContextMenu を DataGrid.Resources 内で作る そのイベント内で、Resources の ContextMenu を取得、設定する ContextMenu の方もコード上で作…

Markdown : タイトル末尾に # 記号を使う

Markdown で # を使った形式でタイトルを書く時、 ### C# と書くと結果は C となり、末尾の #(ハッシュ記号?シャープ記号?)が表示されません。 以下のように、後ろに # をつけることできちんと表示されるようになります。 ### C# # C#