サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
都知事選
qiita.com/ueokande
HTML5でサポートした <svg> 要素と、CSS、JavaScriptを組合せて、マウス処理する複雑な形の領域を作ります。次のような関東地方の地図のデモを作成しました。都道府県の形に沿ってマウスイベントが発火するのが、確認できるかと思います。 Kanto SVG map - CodePen はじめに HTML5でサポートした <svg> 要素により、HTMLドキュメント内にSVGを描画できるようになり、従来の矩形(<div>など)だけでは難しかった複雑な形の要素も配置できるようになりました。SVG画像を描画するだけでなく、<svg> ... </svg> 内の要素(<path> や <rect>)に、これまでのHTML文章同様、CSSによるスタイルの指定や、JavaScriptによる要素の変更、イベントリスナの登録が可能となります。 これまで <area> タグで指定していたマウスの処
背景 Goは環境固有の処理を書ける仕組みがあり、OSやCPUアーキテクチャによってビルドするファイルを選択できます。そしてbuild tagsをビルドパラメータに与えることで、任意の条件でビルドするファイルを切り替えることができます。この方法はcgoのincludeなど、ビルド時に解決したい依存関係があるときに有用です。 ビルドスクリプト build tagはgo buildに-tagsオプションで渡すことができます。2つのビルドで異なるバイナリを吐くようにGoを記述します。
Shell Script Advent Calendar 2016が始まりました。1日目は私です。好きなシェルはBashです。 はじめに ファイルデスクリプタを知ることで、よりスマートにシェルを記述でき、シェル芸の幅も広がります。この記事はシェルとファイルデスクリプタの理解を深めることを目的としており、対象は次のような人です。 パイプ・リダイレクトをうまく使えない人 2>&1 の置き場所にいつも迷う人、そもそも2>&1が何って人? シェルの作業で中間ファイルを作成している人 ファイルデスクリプタとは ファイルデスクリプタ (FD) とは、プロセスが入出力するファイルやデバイスを扱うためのインターフェイスです。これはUNIX系OSのデバイスとファイルは透過的に扱えることと関係し、任意のファイルもデバイスも同じAPIで操作できます。 FDは扱うデバイス・ファイルごとに番号が振られ、プログラムは
をして、 ${HOME}/.gitignore_global を置くと。 ダメなんだよ・・・・・・!そういうのが実にダメ・・・・!せっかくgitconfigをスカッとしようって時に・・・・その横着は傷ましすぎる・・・・・・・・! man gitignore を見ると Patterns which a user wants Git to ignore in all situations (e.g., backup or temporary files generated by the user’s editor of choice) generally go into a file specified by core.excludesFile in the user’s ~/.gitconfig. Its default value is \$XDG_CONFIG_HOME/git/igno
scp に -r をつけると、ディレクトリ内のファイルを再帰的にコピーします。しかしファイル数が多い時は scp -r よりもディレクトリを一つのアーカイブに固めたほうが、効率よくファイルを転送できます。ということでベンチマークをとってみました。対象は自分の環境の /usr/include で、ファイル数は2226個でした。 追記: scp -Cr, sftp, sftp -C の結果を追加しました。 比較対象 scp -r: ディレクトリを再帰的にscp
FirefoxやChromium(またはGoogle Chrome)には、ブラウザが送信したリクエストをcURLのコマンドライン形式でコピーできる機能があります。これを利用することで、シェルスクリプトとcURLを使って、リクエストの自動化も容易に実現できます。 cURL形式でコピー ブラウザの開発者ツールには、送信したHTTPリクエストを一覧表示できるNetworkタブがあります。各リクエストを右クリックすると「Copy as cURL」というのがあります。これは文字通り、ブラウザが送信したリクエスストをcURLの形式でコピーできます。 例えば i-beam.org にアクセスしたときのGETリクエストを、cURLでコピーすると以下のようになります。リクエストヘッダのパラメータは -H オプションで渡されます。このリクエストはアクセスするページだけでなく、ユーザエージェントなども設定されま
Nodeプロジェクトで環境依存の設定の管理方法を紹介します。例えばDBの設定は、デプロイ環境や各ユーザの開発環境に依存するので、環境依存の設定といえるでしょう。これらの設定はコード内に埋め込まず、ユーザ各自またはデプロイスクリプトに任せるべきです。環境依存の設定をNodeプロジェクトで管理するとき、dotenvモジュールが便利です。 dotenvを使う dotenvモジュールは、.env ファイルから process.env へ環境変数をロードするモジュールです。dotenvを使うと、プロジェクトのコードから独立した環境依存の設定を、ローカル単位で管理することができます。 dotenvパッケージは npm からインストールできます。依存モジュールがゼロなのが嬉しいです。
この記事ではElectronアプリのRendererプロセスのテスト方法について紹介します。 Electronアプリのテスト方法とTravic CIの連携については、Electron アプリを Travis CI でテストする に詳しく解説されています。この方法はBrowserプロセス・Rendererプロセス共にテストしていますが、テスト結果が、Browserプロセスのテストのみです。この記事はRendererプロセスのテストを行うステップを解説します。 今回のコードは、jprichardson/electron-mocha を参考にしています。このリポジトリは、ElectronのRendererプロセスでテストを実行できる便利ツールです。 今回はテストファイルをコード内で指定しますが、上記の記事にもあるとおり、BrowserWindow.webContents.executeJavaS
Promiseで非同期処理を書くとき、new Promise で Promise オブジェクトを生成する方法と、Promise.resolve で Promise オブジェクトを生成する方法があります。例えばPromise.resolve(42); は下記のコードのシンタックスシュガーです(参考 : JavaScript Promiseの本)。
CSS3から :target セレクタが導入され、ターゲット(URL末尾の #hogehoge)のIDを持つ要素を選択できるようになりました。:targetセレクタを使うと、簡単なタブ切り替えが実装できます。 今回は次のようなタブを作りたいと思います。完成品はこちらから。ピュアCSSのみでタブの切り替えもできます。 HTML タブの各アイテムは<nav>タグ内に存在し、各タブのリンク先は href='#******'で指定します。現在の状態はURLが持ちます。タブ内のコンテンツは、.content クラスが指定された <div> で記述し、各ターゲットに対応したIDをそれぞれの要素が持ちます。 <nav> <a href='#home'>Home</a> <a href='#about'>About</a> <a href='#members'>Members</a> <a href='#
CSSの調べ物をしてて、なるほどと思ったTips。ここのサンプルで、本質とは関係ないとろこで面白いCSSを発見した。CSSセレクタを利用して、拡張子ごとにアイコンを変更すると言うもの。 こんな感じの、リンク先の拡張子に応じてアイコンを付けたい。 HTMLはよくある拡張子付きのURLへのリンク。 <ul> <li><a href="README.md">README.md</a></li> <li><a href="index.html">index.html</a></li> <li><a href="style.css">style.css</a></li> <li><a href="script.js">script.js</a></li> <li><a href="initialize.rb">initialize.rb</a></li> </ul> a { background-i
中学2年生のときに作ったスクリーンセーバーを公開しましたが、現在は手元にVisual Studioでビルドする環境がありません。CIでビルドしようと思い調べてみたら、AppVeyorという.NET向けのCIを見つけました。この記事はGitHubとAppVeyorを連携させて、GitHub Releasesにビルド済みファイルを添付する方法を紹介します。最終的なReleasesがこちら、ビルド結果がこちらになります。 AppVeyorとは LinuxやOS X上の開発ではCircle CIやTravis CIなどLinuxが使われているCIが人気ですが、AppVeyorはWindows上で実行される.NET向けのCIです。もちろん今回のような.NETを使わないプロジェクトもビルドできます。AppVeyorにはビルドやテストだけでなく、デプロイする機能もあります。AppVeyorの用語をいくつ
Rails 5の目玉機能の一つに、WebSocketsを容易に利用できるActionCableがあります。Rails 4でもgemで提供されてましたが、Rails 5で本体にマージされました。しかし本番環境の情報が少なかったので、記事にまとめました。ActionCableを使ったRails 5アプリは、以下の記事がわかりやすいです。 Rails 5 + ActionCableで作る!シンプルなチャットアプリ(DHH氏のデモ動画より) この例ではdevelopment環境およびHerokuでは動作しますが、この記事は本番環境のnginxを自前で設定してゆきます。 動作環境と構成 フロントのWebサーバにはnginxを、RackサーバにはPumaを使い、Capistrano3でデプロイします。UnicornをRackサーバに使うと、WebSocketsサーバも別に作成する必要があるので、今回は
TypeScriptのtsdが非推奨となりました。代わりにtypingsが推奨されれています。なので自分も早速移行しました。typingsにはtsdからアップグレードする方法も提供されているので、移行も簡単です。 プロジェクトのディレクトリにインストールする人 npm uninstall tsd -D rm -rf typings npm install typings -D ./node_modules/.bin/typings init --upgrade rm tsd.json ./node_modules/.bin/typings install
このページを最初にブックマークしてみませんか?
『qiita.com』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く