.NET Annotations Lambda Frameworkでarm64を指定する方法

.NET Annotations Lambda Frameworkは、ASP.NET MVC同様にAnnotationでRoutingが指定できるなどAWS Lambda固有のhandler廻りの処理を隠蔽できる便利なフレームワークですが、 aws.amazon.com まだPreview版ということもあってか、最新のv0.13であってもCPU A…

dev_appserver.pyが"TypeError: environment can only contain strings"で動かないのをなんとかする

久々にGoogle AppEngine/PHPのプログラムを修正することになって、ローカルテストしようとdev_appserver.pyを起動したのですが、 ERROR:root:Failure to start PHP with: ['C:\\Users\\FOO\\scoop\\apps\\gcloud\\current\\platform\\google_appengine\\php\…

Vue.js Tokyo v-meetup #5参加レポート

2017/10/4に開催されたVue.js Tokyo v-meetup #5 - connpassに参加してきました。 まずはスタッフの皆様お疲れさまでした。最高の誉め言葉としての「滞りなく」を贈りたいと思います。その競争率の高さゆえ参加機会に恵まれなかったv-meetupですが、今回「ブ…

mocha-chrome + chaiでJavascriptの単体テストコードを書く(3)

非同期処理のテストコードは以下の通りです。 Javascriptで"非同期"といえば"Ajax"でしょうから、以下のサンプルはlivedoorお天気Webサービス からAjaxでJSONデータをGETしその妥当性を検証するテストコードを実装してみました。 (livedoorお天気Webサービ…

mocha-chrome + chaiでJavascriptの単体テストコードを書く(2)

前回のサンプルコードの解説です。まず、mocha + chaiを使うのでそれをテスト用のHTMLに組込む処理が必要です。具体的には mocha.css及びmocha.jsの組込み chai.jsの組込み が必要で、それらは普通のcss及びjs同様HTMLの<link href="…" rel="stylesheet">及び<script src="…">を使用します。 これらについては</link>…

mocha-chrome + chaiでJavascriptの単体テストコードを書く(1)

ソフトウェアの品質アップには自動テスト可能(CI対応)な単体テストフレームワークを使うのが近道だと知っていても、 どのフレームワークを使うべきかわからない そのフレームワークでどうやってテストコードを書いたらよいかわからない ということがあると思…

vue-touch-keyboardでカスタムキーボードを作る

前回の続き。 vue-touch-keyboardでカスタムキーボードを作るには、ソースコードのlayouts.jsを見ればわかります。 特にシフトキーやCapsキー用のレイアウトが必要ない場合は_metaとdefaultを定義すればOKです。 defaultは表示通りの入力で良い場合は単にそ…

vue-touch-keyboardをv-model(databind)と共存させる

Vue.js v2でソフトウェアキーボードを使おうとすると、vue-touch-keyboardが第一候補に挙がるわけですが、公式のREADMEやJSFiddleのサンプルだけではイマイチピンとこないところがあるわけです。 その典型例が「どうやってv-modelでのdatabindと共存するの?…

.csslintrcの構文変更

WEBフロントエンドのLint環境を整えていてハマったので覚書。 CSSLint のルールを定義する.csslintrcの構文が変更になっています。 以前は { "adjoining-classes": false, "box-model": true } というbool値での書き方でしたが、これだと adjoining-classes …

Vue.jsで学ぶVirtual DOM

この記事はVue.js Advent Calendar 2016の7日目(代打投稿)です。Vue.jsも2.0になってVirtual DOMが採用されたので、改めてVirtual DOMについてMVVMとの比較で考えてみます。 いきなり結論っぽい図ですが、これが分かればもうVirtual DOMは理解したといって…

【翻訳】自分の Vue アプリを 2.0 に移行し始めた件、及びこれまでに私が見つけたリソースに関する短い投稿

この記事はhttps://benjaminlistwon.com/blog/vue-20/の翻訳です。翻訳を快諾してくれたBenjaminさん、ありがとうございました。 原文のくだけた感じを残しつつ翻訳するように努めましたが、日本語がこなれていない部分もあるかと思います。そのような箇所を…

Vue.js 2.0でtwoWayなカスタムディレクティブを実装する方法

以下はvuejs-jp slackに投稿したネタですが、ここのブログにも書いておきます。先日正式リリースされたVue.js 2.0では、React.jsと同様のVirtual DOMやOne way data flowが採用され高速描画が可能となった反面、ディレクティブは大幅に機能縮小され、"twoWay…

Chromeのinput[type=date]タグ内に和暦を表示する

HTML5でinputタグに日付入力に特化したtype="date"及び"month"が追加され、特にChromeでは標準のDatePickerが和暦をサポートしているという便利な世の中となりましたが、一方で入力後の値は依然として西暦表示のままです。 ↓ これを何とかしてinputタグ中に…

Vue.jsでtemplateURL風機能を実現する

Vue.js が templateURL をサポートしない理由というVue.js作者自身の記事があるように、本来Vue.jsでテンプレートやWebComponent開発を行うには.vue形式でソースを記述し、vueify(browserify)かvue-loader(webpack)といったビルドツールを使うのが筋です。 …

webpack-dev-serverでvirtual server対応なreverse proxy設定

Javascript+REST APIという最近良くある組合せのwebアプリを開発する場合、fileプロトコルではAjax通信できない&クロスドメインアクセス制限回避のため、ローカルに開発用reverse proxyを立てる必要に迫られることがよくあると思います。 その際、Javascript…

MaterializeCSSで困ったこととその回避方法

以前にDate Pickerの日本語化で紹介したMaterializeCSSですが、使い込んでいくうちにいくつか困ったことが発生し、なんとかそれを回避する方法を見つけたのでそのノウハウを紹介します。1. jQuery UI Autocompleteとの組み合わせ MaterializeCSS自体にはオー…

html5-lintの出力結果をJenkinsのCheckstyleに対応させる

HTMLファイルの静的解析(構文チェック)をしようと思っていろいろ調べてみたのですが、 サイトにアップ前の(インターネットからアクセスできない)状態でチェックできる コマンドラインで解析結果が得られる(Jenkinsとの連携を想定) を満たすHTML5のチェ…

MaterializeCSSのDate Pickerを日本語化する

ある意味本家GoogleのMaterial Design Liteよりも良くできているのではないかという感もあるMaterializeCSSですが、カレンダー形式で日付を入力するDate Pickerは一般利用者をターゲットとした場合、日本語化無しに使用してもらうのは困難です。 サイトの解…

GAE for PHP環境でライブラリへの直接アクセスを禁止する

例えば以下のような構成を考えます。 [path] /index.php : 公開WEBページ /lib/sub.php : ライブラリ[index.php]

Queryfeedで出力されたRSSフィードをThunderbirdで読めるようにする

TwitterのつぶやきをRSSフィード化してくれるサービスQueryfeedですが、これが出力したフィードをThuunderbirdで購読しようとすると フィードのURLが正しくありません。 フィードが有効か確認して正しいURLを取得します。 というエラーが発生して受け付けて…

Google App Engine for PHP環境でBasic認証をかける

Google App Engine for PHP環境で作りかけのプログラムにサクッとBasic認証をかけようと思ったら予想外にハマったので覚書。まずはGAE環境側でサポートされてないかなぁと思ったのですがその機能は無し。 じゃあPHPのコードで実装するか、と PHPでお手軽ベー…

Vue.jsでデータバインド可能な3-stateチェックボックスを作る

WEBのチェックボックスは通常チェック有・無の2-stateですが、HTML5からは中間(不定)状態を加えた3-stateのチェックボックスを簡単に作ることができます。 中間状態にするにはチェックボックスの"indeterminate"プロパティをtrueにすればよいのですが、こ…

Windowsのnode.jsでrequire検索パスの初期値を自動設定する

Windows版のnode.jsでグローバルインストールしたモジュールを使おうとして var webpack = require('webpack'); のようなサンプル通りの記述をしても module.js:338 throw err; ^ Error: Cannot find module 'webpack' at Function.Module._resolveFilename …

アクセス権設定で"ALL APPLICATION PACKAGES"アカウントを指定すると例外発生

以下は「指定されたフォルダにアクセス権が付与されているアカウントを列挙し、それをそのまま再設定する」という単純なC#のプログラムですが、 using System; using System.IO; using System.Security.AccessControl; using System.Security.Principal; nam…

Acer AXC603のメモリ増設

パソコンが一時起動不能になるという故障の兆しが表れたので、急きょAcer AXC603-A12Dを購入しました。 事前調査で「メモリ増設には注意が必要」という情報をつかんでいたので、 メモリー増設について(価格com) 最終的には同一メモリでの4+4=8GBにする予定で…

Windowsディスクイメージ書きこみツールの落とし穴

今回も自分がつい最近ハマった小ネタ。 Window7以降、OSの標準機能としてCD/DVDへのイメージ書きこみツールが付属していますが、先日Windows8.1でISOイメージをDVDに書きこもうとしたら、 という感じでDVDドライブを全く認識してくれません。 なんでだろう、…

ExcelマクロのRange.Find()にハマる

Excelで、ある日付が別シート上の休日テーブルに登録されているかを検索しようとして、 Dim day As Date day = .Cells(2, 1) ... Dim fc As Range Set fc = .Worksheets("sheet2").Range("A1").CurrentRegion.Find(day) If Not fc Is Nothing Then '登録され…

「C#ショートプログラミング 第2版」のerrata

同僚から借りて読んでる「C#ショートプログラミング 第2版」(第2版 第1刷)ですが、 P141: 5.23 共通要素だけ欲しい(NEW) の"OLD CODE"はミスっていると思われます。この記事の記載時点においては正誤表には載っていません。[誤] foreach (var item in a.Inte…

WebBrowserコントロールでスクリプトエラーの警告を抑制する

WinFormで簡易ブラウザ機能を持つアプリやPDF、Excelビューアを作ろうとした場合、一番簡単なのはSystem.Windows.Forms.WebBrowserコントロールを使う方法ですが、普通にWebBrowserコントロールを張り付けただけでは、 特定のサイトにアクセスしたときにスク…

イントラネットのWebサイトをWin8ライブタイルに対応させる

WebサイトをWindows8のライブタイルに対応させるには、そのサイトがRSSを出力しているのであれば、 Create a Windows 8.1 tile for your site - Build My Pinned Site を使えばほんの数分で可能ですが、これで生成されるbrowserconfig.xmlのNotificationは <notification> <polling-uri src="http://notifications.buildmypinnedsite.com/?feed=http://www.example.jp/rss.xml&amp;id=0"/> </polling-uri></notification>