読者です 読者をやめる 読者になる 読者になる

Python - 二分探索木を書いてみた

Pythonで二分探索木を実装してみました。 追加、検索、削除ひと通りあります。 実装コード # -*- coding: utf-8 -*- class Node: def __init__(self, label, left=None, right=None): self.label = label self.left = left self.right = right def add(self,…

Vim - Pythonなどで使うマジックコメントを1行目に追加する

vim

Pythonではソースコードに日本語を使う場合はファイルの先頭に次のようなマジックコメントが必要です。 # -*- coding: utf-8 -*- ※追記 コメントでosyo_mangaさんに教えて頂きました。 これだけでよかった。 command! -nargs=0 MagicComment call append(0, …

Vimのキーマッピング(:map)で使える表記

vim

前回のvimrc読書会で <D-> はMacのcommandキーだということを知りました。 例えば <D-h> は command + h ということになります。 知ったわけですので、Vimmerのたしなみ「とりあえず:helpを引く」をしてみました。 key-notation key-codes keycodes のいずれかのキー</d-h></d->…

「コーディングを支える技術」を読んだ

読書記録。 コーディングを支える技術を読みました。 目的 著者さんのこちらのスライドを読んで、内容に興味を惹かれたので。 (スライドより引用) 世の中には大量の学ぶべきことがある 全部学ぶには時間が足りない 何から学べばいいんだ? 限られた時間を何…

Python - 別ディレクトリにあるファイルのインポート

インポートの基本構文とファイル 構文は次のようになります。 import {.pyを除いたファイル名} #import hogehoge_file ファイルの探索順序 インポート対象ファイルの探索は次の順序で行われます。 実行中のファイルと同じフォルダ カレントフォルダ 環境変数…

Python - unittestのassertRaisesの使い方

数日前からPython2.7を勉強し始めています。 WEBチュートリアルを少しずつやっているんですが、充実度がすごい。そんな訳でPythonに標準で入っているunittestを使い、 assertRaisesにて例外のテストを書こうとしました。 (noseとかpy.testとかの方が便利らし…

VimTestプラグインを更新した。コマンドライン実行とか(0.0.5)

Vim scriptのテスティングフレームワーク https://github.com/kannokanno/vimtest更新しました。 ChangeLogから抜粋。 vimtest_configにauto_source追加 vimtest_configにauto_cmd追加 コマンドライン実行の機能追加(ただしWindows除く)

もう大人だしこの春から(Vim)Golfを始めてみよう

vim

この記事は Vim Advent Calendar 2012 : ATND 121日目の記事です。 前日は@ujmさんのVim-users.jp - Vim Advent Calendar 2012 ujihisa 8でした。 VimGolfとは? コードゴルフというのがありますが、それと似たようなものです。 Vimのキーストロークの少なさ…

vimrc読書会でvimrcを読んでいただいた感想

vim

先週行われたvimrc読書会で私のvimrcが対象となりました。 貴重な経験をさせていただいたので記録として感想を残します。

VimTestプラグインを更新した(0.0.4)

https://github.com/kannokanno/vimtest 更新しました。 ChangeLogから抜粋。 実行結果の表示フォーマットを変更 実行結果にハイライトを追加 例外テスト機能を追加 いくつかのバグを修正

jammyというcolorschemeが好き

vim

以下の記事を読んでhybrid入れてみました。 [vim] 黒背景好きの僕の心を揺さぶるカラースキーム「hybrid」 | ここぽんのーと カッコいいんですが、やっぱりいつも使っているcolorschemeに戻りました。 jammyというのですが使っている人をほとんど見ない。人…

LingrPocketに自動更新などを追加しました

以前作ったこれのバージョンアップです。 LingrのAndroidクライアントを作りました - ぼっち勉強会LingrPocket - Google Play の Android アプリ

Scalaの名前渡しは遅延評価ではない

今日はScalaの勉強。 名前渡しって「関数の引数を遅延評価させる」のだと思っていたのですが、ちょっと違いました。Scalaのバージョンは2.9.2です。

LingrのAndroidクライアントを作りました

LingrのAndroidアプリというとLingr for Androidがあります。 軽くて見やすいし良いアプリなのですが、過去ログの閲覧は出来ません。 過去ログを見たい。Vim部屋しか見ていないけど過去ログが見たい。 というかVim部屋の過去ログが見たい。ということで勉強…

Play2.0のtarget/startとその停止方法について調べたこと

評価/本番環境へデプロイする過程で調べたことについて書きます。 バックグラウンドでPlayを起動する(target/start) 起動時にDB設定などを指定する target/startで起動したサーバーを停止する 環境 Play2.0.4 Scala2.9.2

「Vimを使い始めようと思うんですけど、おすすめを教えてください」

vim

この記事は Vim Advent Calendar 2012 : ATND 17日目の記事です。 前日は@syootaroさんのでした。今年、ぼくの周りで「Vimを使ってみようと思う」と人が3人くらい出てきました。 その人達から「おすすめのプラグインや設定ないですか」とか 「Vimってこうい…

vimでctags使ってタグジャンプするときに新しいタブで開く方法

vim

方法1 ide - How to use multiple tabs when tagging to a function in Vim - Stack Overflow nnoremap <F3> <C-w><C-]><C-w>T これはまず で下にタグジャンプの結果を表示させるようにして、 そのあとそのウィンドウを T によって新規タブで開きなおしています。 そのため、実</c-w></c-]></c-w></f3>…

Vim scriptは実行されない行を解釈しているので遅いという件についてサンプルコードを書いてみた

vim

元ネタ:map, fold, filter on Vim Script - Togetter @manga_osyo vimスクリプトは、構文解析が expr1 から expr7 というカテゴライズされた文脈解析を「動的に」行っていて、遅くなる原因は、vim script とC言語を行き来する回数に比例しますね。なのでmap…

IE7スターハック(*:first-child+html)が効かない場合の確認点

css

IE7でのみcssをちょっと変えたい場合に用いられるハックの一つとして、 「*:first-child+html」があります。 これはIE7スターハックと呼ばれているようです。 IE 6とIE 7のためのCSSハック16選(3/3)- @ITしかしこれが効かないケースがあってアレコレとハ…

DOSプロンプトでgitの現在のブランチ名を表示させる

bashやzshではgitの現在のブランチ名を表示させることができます。 そういった記事をよく見かけるんですが、Windows(DOSプロンプト)のケースを見たことがありませんでした。Windowsでは出来ないのかなと思っていたんですが、一応は出来ることを今日発見。

VimTestプラグインを更新した(0.0.3)

https://github.com/kannokanno/vimtest 更新しました。 ChangeLogから抜粋。 実行対象にディレクトリを指定可能にした テスト実行前に自動で製品コードをsourceするようにした 失敗メッセージにテストファイルのフルパスを表示 実行コマンド(:VimTestQuickf…

VimTestプラグインを更新した(0.0.1 -> 0.0.2)

https://github.com/kannokanno/vimtest 更新しました。 ChangeLogから抜粋。 実行コマンド(:VimTest/:VimTestBuffer/:VimTestStdout)の追加 出力結果のフォーマットを変更 notEquals -> not_equalsにリネーム 日本語helpの追加 vimtest/sampleを更新 vimtes…

特定のファイルを開いているときにステータスラインの色を変更する

vim

業務ではサーバー上のファイルを直接変更することがよくあります。 WinSCPからVimで開いて編集するわけですが、 たまに今開いているファイルがローカルなのかリモートなのか分からなくなります。 そんなことから、誤った編集を防ぐためにちょっとした設定を…

vimrc読書会#5に参加した

vim

今回のハイライト蹂躙されるおしょーさんのvimrc

複数行のerrorformatをちょっと勉強した

vim

TokyoVim#9に行ってきた - ぼっち勉強会でちょっと勉強した記録エラーフォーマット自体のhelpはこれ。 :help errorformat今回頑張っていたのは、複数行の対応。 :help errorformat-multi-line

TokyoVim#9に行ってきた

vim

市ヶ谷駅から徒歩15分ほどで着く会場。 市ヶ谷駅には11:30に着いたのに迷った結果12:40ごろに着いた。都会は迷路。

vimrc読書会#4に参加した

vim

今回のハイライトVimmerは覗きが趣味らしい。

辞書関数対応版:Vim scriptをsourceしてエラーがあればquickfixに表示する

vim

前回:関数対応版:Vim scriptをsourceしてエラーがあればquickfixに表示する - ぼっち勉強会辞書関数のエラー行数も取れないかチャレンジしてみた。 実用性がどうとかよりも、もはや自分のVim script力への挑戦。 いつも通り動作環境は自分のMacVim+簡単なサ…

関数対応版:Vim scriptをsourceしてエラーがあればquickfixに表示する

vim

前回:Vim scriptをsourceしてエラーがあればquickfixに表示する - ぼっち勉強会指摘: ちなみに Vim script のエラー時に出力される行数はスコープ(関数内)からの相対的な行数だからこの場合はアウトですね。URL2012-07-24 06:45:24 via webということで…

Vim scriptをsourceしてエラーがあればquickfixに表示する

vim

Vim scriptを書くとする。 動作確認しようとして「:source %」(もしくはquickrun)をする。 構文エラーで怒られる。悲しい。

vimtest修正記録-Vim scriptテスト用にモック機能を書いてみたpart2

vim

vimtestについてはこちらVim scriptのテストを行うvimtestプラグインを書いた - ぼっち勉強会 モチベーション維持と振り返りのための記録 モック機能書いてみた

vimrc読書会#3に参加した

vim

今回のハイライト zencodingは好き嫌いが分かれる。 shim0mura htmlコーディング、zencoding以外だと皆さん何使ってます?anekos 気合とか使います。thinca 手 打 ちmanga_osyo HTML 使ったことがないワンLindan ぽちぽちと…shim0mura !?basyura neocomplc…

vimtest修正記録-Vim scriptテスト用にモックのサンプルを書いてみた

vim

vimtestについてはこちらVim scriptのテストを行うvimtestプラグインを書いた - ぼっち勉強会 モチベーション維持と振り返りのための記録 モック出来るかも? 追記:最新版vimtest修正記録-Vim scriptテスト用にモック機能を書いてみたpart2 - ぼっち勉強会

vimtest修正記録-実行コマンドやassertのサンプル追加

vim

vimtestについてはこちらVim scriptのテストを行うvimtestプラグインを書いた - ぼっち勉強会 モチベーション維持と振り返りのための記録 実行コマンドVimTestRunの追加 直接打てるassertとverifyの追加 リポジトリにはまだあがっていない。

vimでphpファイル保存時に自動で構文チェックを行う

地味だけど意外と重要な構文チェック。「php -l 対象ファイル」で確認するアレです。 ブラウザで確認する段階になってエラーが出たりするとイラっとするので、 未然に防げるのはストレス軽減になります。ちなみに「vim php 構文チェック」とか「vim php 文法…

vimrc読書会#2を見てた

vim

vimrc読書会とは? Github上にある誰かのvimrcをみんなで見ながらワイワイすること。 Lingrのvim部屋で行われています。 vim-users.jp – Lingr 過去ログにも残っています。

MySQLのトランザクションとテーブルロックの基本事項

DB周りは全然分かっていないし毎回調べては忘れていくのでアレコレとメモ。 手元の環境 Mac OS X 10.7.3 MySQL5.5 InnoDB前提

リーダブルコードに共感出来ない人とは一緒にコーディングしたくない

煽り気味のタイトルだけど、実際に感じたことなのでそのままタイトルにしてみた。リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)作者: Dustin Boswell,Trevor Foucher,須藤功平,角征典出版社/メーカー: オ…

php-5.2.5以前のfile_put_contentsではLOCK_EXによる排他ロックは動かない(5.2.6でFix)

php

(キーワード:file_put_contents file_get_contents)5.2.6でBugFixされています。 PHP: PHP 5 ChangeLog Fixed bug #43182 (file_put_contents() LOCK_EX does not work properly on file truncation). (Ilia) なので5.2.6以降なら動きますが、5.2.6未満なら…

リポジトリを指定してyum installする

サーバーにライブラリ(php-mysql)を入れようとしたら次のようなエラーが出た Error: Missing Dependency: php-common = 5.1.6-34.el5_8 is needed by package php-mysql-5.1.6-34.el5_8.i386 (updates)結論としては取得元のリポジトリが異なっていたから。 …

PHPでスモークテストのサンプルを書いてみて感じたこととか

ソフトウェアテストの勉強中&実際の案件に活用中。 スモークテストとは ソースコードに修正が入るなどして新しくビルドが必要になった際に、 そのビルドが正常に終了していることを確認するためのテストです。簡単に言えば、「ビルドによってどこか動かなく…

テストを自動化すべきかどうか

ソフトウェアテストの勉強中。

ソフトウェアテストを学ぶ理由

6/4 - 6/10はソフトウェアテストを学ぶことにしたので、 効率よく勉強するためと、あとで見返した時用に目的などを記録します。 自分用です。 勉強内容 ソフトウェアテストを学ぶ理由を再確認する 参考書籍(予定含む)

GAのData Export API v2.3は6月頃に終わるので移行した方がいいんじゃない

v2.3は非推奨となり今後は互換性のあるv2.4か新しいv3.0にしましょうってことらしい。 公式はこちら。 Migration Guide: Moving from v2.3 APIs to v2.4 & v3.0 - Google Analytics — Google Developers Management API v2.3 has been shutdown. Queries mad…

シングルトンパターンを復習しよう

目的 遅延初期化ホルダークラスイデオムを最近知ったので、良い機会なので復習してみる。 勉強内容 シングルトンにする意味 遅延初期化する?しない? 遅延初期化ホルダークラスイデオム(オンデマンド初期化ホルダークラスイデオム)について おまけ:phpとJa…

volatileってなんだろう

目的 「volatileって何?」という質問があり、自分の理解も曖昧だったので復習してみた。 勉強内容 volatileって? 何の意味があるの? コンパイラの最適化(置き換え)を抑止する コンパイラの最適化(リオーダー)を抑止する スレッドが値を参照する際に、必ず…

カーソル下のキーワードを含む行をすべて表示してジャンプする

Vim

:help include-search もしくは :help definition-searchぼくは[Iだけよく使います。 (※フォントによって読みにくかったので注釈。大文字のiです。ぼくの環境だとアイとエルが区別できん) 便利だと感じているのですが、紹介されているのをあんまり見たことな…

Vimプラグインが出来るまで

Vim

備忘的なVimプラグイン入門。 最近やっとVim scriptを書き始めて、プラグインの形でもってGithubにて公開というところまで辿り着きました。 いろいろと足りない部分は多いんですが、それでも初のプラグインであり初のオープンソースです。 で、こういう「初…

Vim scriptのテストを行うvimtestプラグインを書いた

Vim scriptのテスティングフレームワークはいくつかあります。 以前調べたこともあります。 UTを使ってVim scriptのテストを書く - ぼっち勉強会既存プラグインでも充分に機能を備えているのですが、以下の点で不満がありました。 Vimから気軽に実行できない…

TODO管理を行うunite sourceを作ってみてる

kannokanno/unite-todo · GitHub ※一応簡単に動作確認したものをあげてますが、たぶん細かいとこではバグある先週末くらいから調べながらちょこちょこ作ってます。 unite.vimを介してTODOの登録、閲覧、編集が出来るsourceです。 まだ基本的なことしかできま…