ctagsでheader fileが検索されない

c++

c++のコーディングをした際、クラスやいくつかの関数に飛べないことに気づいた。 調べてみるとどうやら*.hに書いたものだけが当てはまる模様。 $ ctags --list-map | grep c++ C++ *.c++ *.cc *.cp *.cpp *.cxx *.h++ *.hh *.hp *.hpp *.hxx ということでc++…

cocos2dxでの子要素の位置

例えばlabelの先頭にiconをつけたい場合、 labelの子要素としてimageをおいてpositionを調整しておけば、label側の文字数が変わろうともその先頭にiconをつけることができる。 私はこの挙動を最初理解できなかったのだが、以下のブログを見て間違っている点…

csvからsqliteのtable schemaを抽出する

以下のようなデータからsqliteのcreate table時に必要なカラム名と型名のリストを抽出したい data.csvとしておく columnA,columnB,columnC,... INT,INT,INT,... 1,2,3,... 11,22,33,... ... 抽出したいのはこれ columnA INT, columnB INT, columnC INT, ... …

phpのexecでwrite error: Broken pipe

exec('ls | head -n1") phpでこのようにしたら以下のエラーが出た write error: Broken pipe ただし処理自体は正しくできているようで、エラーが出るだけのよう bashで同じように実行しても特にエラーは出ない ググってみるとこんなのがヒット https://stack…

xcodeで"Could not locate device support files"

xcodeをupdateした後、runした際にタイトルのようなエラーが出たのでメモ エラーメッセージを見るとxcodeが対象のiphoneのOSをversionをサポートしてないということのよう。 Xcode.appの下にあるDeviceSupportに使いたいOSのversionが含まれていないとこうな…

touchbar付きのmacでワンタッチsleep

touch bar付きのmacbookproは電源ボタンを押してもsleepしてくれない。 左上のメニューからsleepを選べば当然問題ないがもっと手間を省きたいためショートカットする方法を調べてみた。 ググったら簡単にみつかった 20 tips & tricks for the new MacBook Pr…

yampaのpSwitch

yampaについて調べていると単純なswitchについての説明はいくつか見つかるのだが、pSwitchについてはなかなか見つからなかったのでわかったことをメモしておく。 こちらのブログとhaskanoidのソースコードを参考にした。 http://bitterharvest.hatenablog.co…

vim pluginを探すときに便利なとこ

vim

vim awesomeというpluginを集めたサイトを見つけた。現在15,000くらいのpluginを掲載しているようで、使っているユーザの多い順にランキングされている。 vimawesome.com 使っているユーザの判定はgithub上でdotfilesとして公開されている設定ファイルから、…

surround.vimにドットコマンドを効かせる

vim

surround.vimはカッコやクォートなどのペアを消したり置換したりできるコマンドを加えるplugin。ダブルクォートになっているものをシングルクォートにしたいことなどよくあるので便利。 複数箇所に同じ置換を行いたい場合、少数ならドットコマンドで繰り返し…

Neomake - 非同期実行のSyntastic

vim

syntasticを使っていると大きなファイルでsyntax checkなどするとしばらく応答が返らないことがよくある。neovimには非同期でjobを実行する機能があり、それを活かしたpluginとしてNeomakeというsyntasticと同様の機能をもつものがあることを知ったので使っ…

vimでコマンドの出力をキャプチャする

vim

特定のファイルにコマンドの出力を書き出したいときはこれ !をつけることで新規のファイルでも書き込める :redir! > file :echo 'aaa' :redir end これでaaaという文字列がfileに書かれる ちなみにredirはrediと省略して書ける また、rediはredirectの略 フ…

es6でreactを使うときのメモ

reactを触ってみた せっかくなので新しい形で使いたくes6の形にしたら、reactの元の書き方では動かないところがあったのでメモしておく 1. getInitialState # es6以前 var Component = React.createClass({ getInitialState: function() { return {data: []}…

macでmatplotlibによる画像出力

mac上でskimageを入れた際にエラーになったのでメモ pyenvにてinstallしたpython3.5にて、pipで入れたskimageによって画像を出力しようとした際エラーになった 発生したエラーはこちら >from skimage import io >image = io.imread('example.png') >io.imsho…

vimでnon-greedyなマッチ

vim

vimでnon-greedyなマッチを行うために正規表現を調べたのでメモ non-greedyなマッチを使いたい場合のusecase 以下の行でクォーテーション毎にそれぞれマッチしたい場合 'hoge', 'fuga' アスタリスクを使って書くと行頭から行末まで全体にマッチしてしまう # …

dynamoDBのpartition分割

aws

dynamoDBはstorage sizeとthroughputが大きくなるにつれてpartitonを増やしていく その際の挙動について調べたのでメモpartitionとprimary keyの関係について Partitions and Data Distribution - Amazon DynamoDBpartition分割時の挙動について Guidelines …

dynamoDBのitem size計算

aws

dynamoDBのitem sizeを計算する方法を調べたのでメモ基本式はこれで求まる 属性名のbyte数 + 属性値のbyte数属性名はstringであり、stringはUTF-8 バイナリエンコードの Unicodeで保持されている なのでasciiの文字を使っていれば1文字1byte属性値として使…

scala actorでチャットサーバ

scalaの勉強のためチャットサーバを書いてみた。actorも使ってみる。 仕様 仕様は以前haskellで書いたものを参考にした。 jsapachehtml.hatenablog.com 存在するチャネルは一つだけ(簡単のため) クライアントが接続してきたときに名前を尋ねる。入力された…

brew caskでエラー(Cask 'eclipse-java' definition is invalid: Bad header line: parse failed)

ちょっとeclipseを使ってみようとbrew caskを使ったらエラーに遭遇 Cask 'eclipse-java' definition is invalid: Bad header line: parse failedググッてみると解決策がすぐに見つかる https://github.com/caskroom/homebrew-cask/issues/15930 これを実行す…

supervisor:start_childが動かない

タイトル通りの件でハマったのでメモ。こちらで基本的なことを学びつつ簡単なechoサーバを書いてみた。 Introduction | Learn You Some Erlang for Great Good!以下のコードを書いて実行してみるもstart_childが動かない。 supervisor -module(tcp_server_su…

erlang書くときのtips(自分用メモ)

出力方法 io:format("aaa ~p bbb ~p ccc~n", [A, B])第2引数はリストであることに注意 変数Aの型を知りたい場合 erl_syntax:abstract(A)返り値の例 {tree,integer,{attr,0,[],none},1} 2つ目で型を判断できる(integer, float, atom, string, list) エラー…

dynamoDBをaws cliで操作する

aws

dynamo localのデータをコマンドラインから変更したかったので方法をメモ。sqlと比べるととても大変。各操作の詳細についてはこちらを参照のこと dynamodb — AWS CLI 1.9.11 Command Reference指定する部分の多いupdate-itemについてメモしておく。以下のよ…

dynamoDBのthroughputについてメモ

aws

dynamoDBではthroughputの設定が料金に直結している。そのあたりを調べたのでわかったことをメモ。 throughputの消費 read 1unit = 1項目のconsistent read/sec (4KB以内) consistent readを使わなければ2回で1unitとなる 4KBを超える項目を読み込む場合は2u…

特定ファイルの変更があるコミットだけをcherry-pick

git

まず以下のコマンドで現在までのhoge.txtの変更だけを取り出して見ることができる。 $ git log -- hoge.txt また、以下のようにすることでコミット間の変更を取り出すことができる。 $ git log <sha1>..<sha1> or $ git log branchA..branchBなのでこれらを組み合わせれ</sha1></sha1>…

autoloadの関数が見つからない -- Unknown function: submode#enter_with

vim

vim-submodeを入れてみた際、以下のように.vimrcに設定したところエラーが出た。 NeoBundle 'kana/vim-submode' call submode#enter_with('winsize', 'n', '', '<C-w>>', '<C-w>>') call submode#map('winsize', 'n', '', '>', '<C-w>>');これでloadし直すと以下のようなエ</c-w></c-w></c-w>…

HDMIでテレビをディスプレイとして使うと表示が切れる

Macbook airとテレビをHDMIで繋いだところ、全ての方向でわずかに切れていた。 上部のメニューが半分程度しか映らない状態だった。PCのディスプレイ設定から解像度を変えてみたものの、どの解像度にしてもはみ出すのは変わらず。 ググッてみるとこんな記事が…

vim pluginを作ってみる

vim scriptの勉強で以下のページを見ていたところ、plugin化のチュートリアルにちょうど良さそうなスクリプトを見つけたのでやってみた。plugin化の手順をメモ。 Vim エディターのスクリプトの作成: 第 5 回 イベント駆動型のスクリプト作成と自動化plugin化…

neobundleで遅延読み込み時に処理

vim

久しぶりにvimの設定を触ることにしたのでメモあるプラグインでしか必要のない設定はその読み込み時に処理したい。そのような場合例えば以下のように書ける。 NeoBundleLazy 'Shougo/unite.vim', { \ 'autoload': { 'commands': ['Unite'] } \} let s:bundle…

FRPでチャットサーバ

FRPのライブラリの一つであるsodiumを触りつつチャットサーバを書いてみた。また、sodiumを使わないバージョンのコードも書いてみたので比べてみる。なおここではbehaviourは全く使っておらずEventの機能のみを使った。機能 特定のportでクライアントからの…

DNS format error from 192.168.1.1#53 resolving www.mydns.jp/AAAA for client 127.0.0.1#44005: non-improving referral

mydnsを利用するようになってからsyslogを見るとタイトルのようなエラーが発生していた。 自分が使っているso-netのname serverを指定してdigしてみると以下のようにv6のAレコードが引けなかった。 # Aレコード以外省略 $ dig @202.238.95.24 google.com ...…

No supported encrypter found. The cipher and / or key length are invalid. (laravel 5.1)

php

久しぶりにPHPをさわり、人気があるということなのでlaravelを入れて動かしてみた。早速エラーに出会ったのでメモ。以下のようにkeyを生成する必要があった。 $ php artisan key:generateデフォルトの設定だとconfig/app.phpに以下のような設定がなされてい…