increment.hatenablog.com の続き。デバッグとホットリロードについて。基本的に Debugging Desktop Flutter Applications に書いてあることのメモ。 C++ の example\windows\flutter_embedder_example.cpp の arguments.push_back(argv[0]); の下に argumen…
※ この記事を書いて以降、gn, ninja を使ったビルド方法に変わったため、あまり参考になりません。 flutter-desktop-embedding の Windows 環境でのビルド・実行ができたので、そこまでのメモ。 環境 Windows 10 Visual Studio 2017 Community Edition flutt…
少し古い Flutter のアプリをビルドしようとしたところ発生。build.gradle の classpath 'com.android.tools.build:gradle:3.0.1' となっていた箇所を 3.2.0 に変えたら、このエラーは解消したものの以下の別のエラーが出現。 * What went wrong: A problem …
share | Flutter Package を使います。 android_intent | Flutter Package を使って action パラメータに action_send を設定すればよいかと思ったのですが、上手くいきませんでした。詳しく調べていないので上手くやる方法はあるのかもしれません(多分あり…
flutter/overscroll_demo.dart at master · flutter/flutter · GitHub を参考にする。 要点は RefreshIndicator を使う。 child に ListView.Builder を設定する。 onRefresh に、更新が終わったら complete する Future を返す関数を設定する。これが Pull …
intl パッケージの DateFormat クラスを使う。 import 'package:intl/intl.dart'; // パース var format = DateFormat('EEE, d MMM yyyy HH:mm:ss Z'); var date = format.parse('Tue, 18 Sep 2018 11:30:15 +0000'); DateFormat class - intl library - Dar…
Flutter で webview の plugin (flutter_webview_plugin) を使用し、hot reload が反映されて WebView を表示しようとしたところタイトルのエラーが発生(Android のエミューレーター上での実行)。 以下の記事によると「リビルド(クリーン)」したら直った…
go の text/template パッケージの Text and Spaces に書かれているとおり、前のスペースをなくすには {{- を、後ろのスペースをなくすには -}} のように - をつける(アクセスする変数と - の間のスペースは必須で、括弧と - の間にスペースはいれてはいけ…
pkg/browser パッケージを使用する。ローカルの html ファイルや URL 指定などが可能。 github.com
json.Encoder の SetIndent を使用するか、json.MarshalIntent を使用する。以下は前者の例。 func writePrettyJson(filePath string, v interface{}) error { f, err := os.Create(filePath) if err != nil { return err } defer f.Close() enc := json.New…
秘密鍵の読み込み RSA の秘密鍵の pem ファイルは BEGIN RSA PRIVATE KEY で始まる場合(PKCS#1)と BEGIN PRIVATE KEY で始まる場合(PKCS#8)があり、前者の場合は x509.ParsePKCS1PrivateKey を、後者の場合は x509.ParsePKCS8PrivateKey を使ってパースす…
秒に変換 EXTRACT(epoch FROM my_interval) 分に変換 小数点以下を切り捨てて integer にするために FLOOR を使用。 FLOOR(EXTRACT(epoch FROM my_interval) / 60) 時に変換 分に変換と同じ。 FLOOR(EXTRACT(epoch FROM my_interval) / 3600) 参考:datetime…
#golang メールを送信するには の通りにやれば良い。 ただし、2段階認証を有効にしている場合には <password> の部分にアプリパスワードを使う必要がある。アプリパスワードの発行 はリンク先から。アプリパスワードについての説明は アプリ パスワードでログイン 辺り</password>…
等幅フォントで表示する時に同じ長さに見えるような文字列を生成する。 // "github.com/mattn/go-runewidth" を使用。 func makeFixedWidthString(str string, length int) string { var buffer bytes.Buffer l := 0 for _, c := range str { cl := runewidt…
Read() を実行する前に FieldsPerRecord を -1 に設定する。 reader := csv.NewReader(f) reader.Comma = '\t' reader.FieldsPerRecord = -1 // これ for { record, err := reader.Read() if err == io.EOF { break } if err != nil { return err } // 処理.…
%(文字数).(文字数)s のような形で、最大精度と最小精度を指定する。. の左側の数字の前に - を付けると左詰め、付けないと右詰め。 // 例えば50文字(左詰め)で固定。 fixedLengthString = fmt.Sprintf("%-50.50s", s)
gcloud source repos clone (リポジトリ名) --project=(プロジェクト名) で Google Cloud Platform 上のソースコードをクローンしようとしたときに発生。 ERROR: (gcloud.auth.git-helper) Invalid input line format: [path=]. fatal: remote error: 解決方…
Pythonクローリング&スクレイピング -データ収集・解析のための実践開発ガイド-』を読んでしばらく Robobrowser を使ってみようと思うので、その忘備録。 edx.hatenablog.com 基本 browser = RoboBrowser( parser='html.parser', # Cookie が使用できないと…
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…
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>…
以下の様なデータを template.Execute のデータに渡したとすると type data struct { Values []string OtherValues []string } テンプレートで <ul> {{range $i, $v := .Values}} <li>{{index $.OtherValues $i}} のようにするとインデックスでアクセスできる( Othe</li></ul>…
misc/git/pre-commit - The Go Programming Language を参考に作成しました。 オリジナルではフォーマットされていないコードがある場合にコミットを中断していますが、以下のスクリプトでは gofmt を実行して git add するところまでやっています。 #!/bin/…
エラーの全文は以下の通り。 久々に 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…
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…
go では string のスライスは byte として扱われるので、日本語のようにマルチバイト文字を含んだ文字列 str に対して str[start:start+length] のようなことをすると、思わぬ場所が切り取られてしまいます。 この問題を回避するために、一旦 rune にキャス…
typings で型定義ファイルの管理を行うので、未インストールの場合はインストールします。 npm install -g typings 拡張機能のプロジェクトのディレクトリに移動し、typings init コマンドで初期化します(typings.json ファイルが作成されます)。 その後、…
参考: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…
手順 準備 Timeline で使用する Curve を「Content Browser を右クリック」→「Miscellaneous」→「Curve」(もしくは「Float Curve」)で作成する 作成した Curve を右クリックして「Copy Reference」する C++ のコード上で ConstructorHelpers::FObjectFinde…
方針・ポイント EventSetter を使って DataGridRow に右マウスボタンイベント(MouseRightButtonUp)を設定する ContextMenu を DataGrid.Resources 内で作る そのイベント内で、Resources の ContextMenu を取得、設定する ContextMenu の方もコード上で作…
Markdown で # を使った形式でタイトルを書く時、 ### C# と書くと結果は C となり、末尾の #(ハッシュ記号?シャープ記号?)が表示されません。 以下のように、後ろに # をつけることできちんと表示されるようになります。 ### C# # C#