yamagenii のアーカイブ

macでNTFSマウント

2017年1月8日

USBに刺したあと ``` $mount ``` で対象のデバイスを指すディレクトリを確認 ``` $sudo umount /dev/disk2s1 $sudo mount -t ntfs -o rw,auto,nobrowse /dev/disk2s1 ~/ntfs-volume ```
続きを読む

JavaScriptでSet演算

2017年1月5日

重複する値を許さないコレクションSetで、python,rubyでは集合演算の機能が提供されていますが、jsではありません。 なので演算したい場合は自分で書かなければなりません *** ``` let s = new Set([1,2,3,4,5,6,7,8,9]); //積集合 var t = new Set([...s].filter(x=>((new Set([1,5,9])).has(x)))); console.log(t); //和
続きを読む

gitでコミットの検索

2016年12月28日

チーム開発においてコミットを番号で管理している場合があると思いますが、ソレを検索するTips ``` git log --grep '#38587' ``` とすれば該当のコミットを取り出せます
続きを読む

dojoのxdファイルの役目

2016年12月28日

dojoにはオーバーヘッドを減らすために、必要時にモジュールを呼び込めるようにするローダーという機能を使います。 基本的にはXHR(XMLHttpRequest)で行われるのですが、これでは外部サーバのモジュールの呼び込みにはクロスドメイン制約に引っかかってしまいます。 そこで、dojoには、クロスドメイン制約が働かないscriptタグを動的に生成して、そこで外部サーバにロードリクエストを送る、xdローダーという機能があります。 *** ## xdロー
続きを読む

octaveでlessを流す

2016年12月23日

octaveを使っていると、標準出力に値がless出力されてデフォルトでは勝手に流れません このときoctaveを実行して ``` more off ``` とすると勝手に流れます
続きを読む

xor交換を3つ以上で行う。

2016年11月24日

[XOR交換アルゴリズム](https://ja.wikipedia.org/wiki/XOR%E4%BA%A4%E6%8F%9B%E3%82%A2%E3%83%AB%E3%82%B4%E3%83%AA%E3%82%BA%E3%83%A0) これは一時変数を使わず、2変数を交換するものですが、xorの性質を利用しているので、3つでも交換できます。 (x,y,z)->(y,z,x) ``` x = x^y^z y = x^y^z //元々のx z = x^y
続きを読む

aipoで印刷画面のリンク

2016年11月10日

各々のポートレットについてマクロを作って、そこでALdialogheaderPrintAbstractを呼び出しす。 こうすると必要なセッションパラメータを指定できる ``` #macro(ALdialogheaderPrintAbstract $title $portlet_id $screen $view_date $userid $onclick $link) #if(($portlet_id!=""))
続きを読む

firefoxで見たときだけtableの幅が違う

2016年10月27日

UIの変更や追加時に各ブラウザでテストしたら、firefoxだけtableの表示がおかしい。他は大丈夫なのに という状況の時も慌てずデベロッパーツールでチェック *** 変更としてtableのカラムを削除していたのですが、その時にcolgroupの削除忘れが原因でした。 他のブラウザはcolgroupをスルーしてくれていたのですが、firefoxは律儀にサイズをとってこようとしていました。結構挙動変わるものなんですね。 web開発において、UIの変更や追
続きを読む

xcode8になってAutoLayoutの挙動が変更された……?

2016年10月25日

自分自身まだ調査しきれていないのですが, xcode8となりstoryboardのバージョンの変更になるに辺り、viewのライフサイクル中のAutoLayoutのタイミングの変更が合ったようです。 ### viewDidLoadで得るサイズはAutoLayout後のサイズではない!! 具体的には(0,0,1000,1000)になっているようで、subview.bounds等でサイズ指定をしていた場合、上手く動かなくなるでしょう ViewDidAppearで正確
続きを読む

mysqlにログインできない

2016年10月20日

``` ERROR 2013 (HY000): Lost connection to MySQL server at 'sending authentication information', system error: 32 ``` 等とエラーが出てきてlogを見たりしても???? とりあえずググっても微妙… そんなときは魔法のコマンド**再起動** ``` mysql restart ``` これで直りました。 データベースが急
続きを読む

gitのサブモジュールにて特定のブランチやコミットを使用する

2016年10月18日

何かとややこしいgit submodule 重要なのはコミットで管理していることで、ここに慣れるとsubmoduleもバージョン管理しながら、その変更を反映出来るようになります *** 今回はsubmoduleのリポジトリに変更を加えたい場合、通常の開発と同様にブランチを切って、変更を施し、メインリポジトリのsubmoduleのコミットを変更したものにあわせる方法を紹介します。 git submodule add 等は終わっていて、持ってきたsubmo
続きを読む

iOSのsafariでcookieを個別削除

2016年10月14日

動作テストなどでCookieの一部を削除してテストしたい場合、通常のiOSsafariではCookieを一括削除する機能しかないのでできません。 そこで [iOS SafariのWebインスペクタをMac Safariで表示してデバッグする](http://islog.tokyo/ios-safari-web-inspecter/) を使用すると、通常のsafariのようにcookieが削除できます。 *** ### safariでcookieを削除する方法
続きを読む

jsでダブルコーテーション複数削除

2016年10月13日

replace非破壊 ``` var strTemp = "\"aaa\"aa\"aaa\"" if (strTemp.indexOf("\"") != -1){ console.log(strTemp.replace(/[\"]/g,""))) } ```
続きを読む

スペースや括弧のついたディレクトリを作成

2016年10月4日

``` mkdir 10.0 (14A345) ``` ではシンタックスエラーです。 スペースはbashではコマンドの終わりを示します。 当然のようにエスケープシークエンスがいります。 ``` mkdir 10.0\ \(14A345\)/ ``` ターミナル上では**10.0 (14A345)**という表示なので、ディレクトリ名をコピーして貼り付けて、そのまま実行ということも出来ないので、意外とめんどくさいです。
続きを読む

cocoaがビルドできない!!

2016年9月29日

cocoaのライブラリ周りでビルドが通らない(型JSONがありません等)ときのTips *** project->Build Settings->Architectures->Build Active Architectureをyesにする
続きを読む

ガラケーと2017年

2016年9月27日

自社サービスの[aipo](http://www.aipo.com/)は未だにガラケーに対応できる素晴らしいサービスなのですが、一箇所2017年をYEAR_ENDとしてマクロする部分がありました。(ここの部分は消去の対応が行われる予定です。) **ガラケーと2017年っていったいどんな関係が…** と思ったのですが、これは2017年にガラケーが生産終了と発表されていたのでそれを見越したバリデートをするための数字だったようです。 *** ガラケーの生産終了2年前
続きを読む

eclipseの自動フォーマットのおかげでgitの差分が見にくくなった時に確認する設定

2016年9月13日

eclipsに限らず、IDEでは自動でフォーマットを調整してくれる機能があります。この機能は言わずもがな、ソースコード保守に大きな貢献をしています。 しかし複数のマシンで開発していると、設定が異なる事が原因で、改行に位置が違っていたり、空白の位置が違ったりすることがあり、GitHubのcompareがとんでもないことになります。**こうなるとどこに差分があるのかわかりません!** というわけでeclipseのフォーマットの設定箇所をメモ ※eclipseはj
続きを読む

Cayenneのエンティティファイルにメソッドを実装するとき

2016年9月7日

最近ではMVCモデルのMで実装することが良いとしている風潮もありますがORMマッパーであるCayenneを使用しているソフトで実装するときは注意があります。 CayenneでgenerateするエンティティクラスはDataMap.java,その親クラスの_DataMap.javaのように2種類ありますが、この内編集できるのはDataMapクラスのみです。 よく見たら_DataMap.javaのヘッダーにはこんなことが書かれています。 ``` /** Class
続きを読む

深さ判別法

2016年8月29日

n個の数列a0,...,anがあたえられたとき、その数列を組み合わせて得られた和がkであるかどうか判別するアルゴリズムを深さ判別法で解く 深さ判別法は全探索のアルゴリズムで、 オーダーはO(2^n)であるので、n=20程度であれば、解くことが出来る。それ以上になる場合は効率的なアルゴリズムを考えなければならない。 ``` #include #include using namespace std; int n,k; vector a; boo
続きを読む

git configのオプション

2016年8月29日

共有のパソコンでは、git configで変更しなければなりませんが、そのときのオプションのまとめ # --system **/etc/gitconfig** の編集を行います システム全体に適用される設定。全てのユーザー、全てのリポジトリが対象にします # --global **~/.gitconfig** の編集を行います そのユーザに適用される設定です。ユーザの持つリポジトリに影響します。 # --local **.git/config** 
続きを読む