libxppを立ち上げました

github Windowsでもそれほどgitが不便ではないようです. DirectX10で作ろうと思っています. 11は対応するPCが無いので未定です. でもまぁ9, 10ほど違うわけではないので大丈夫かなとか思ってます. DirectX10以降は3Dはシェーダ必須なのがすごくだるいで…

ICPC夏合宿

ICPCの夏合宿に参加してきました. 昨年までは招待制でしたが,今年からは自由に参加することが出来ました. Day1の懇親会ではもう少し交流できたらよかったなぁと後悔しています. 懇親会では,まだ日本では未発売のNexus7触らせていただきました. 今持っ…

SSH先でメール出す

SSHで接続してそこからmailコマンド使うとき,mailコマンドは文字コードをよしなにしてくれないので,UTF-8で送ると文字化けしてしまう. nkfが入っていれば良いのですが,入ってなかったのでスクリプト書きました. #!/usr/bin/env python #-*- coding:utf-…

モバイル版Firefoxで崩れる

モバイル版firefoxだとデザイン崩れるけど、アプリのコメント見る限りズームおかしいのはこっちのせいでは無い気がする。— Tsushimaさん (@utisam) 9月 7, 2012 Media Queriesが効くようになったら多分大丈夫だと思う.

Markdownテスト

マークダウンで書けるようにしてみた markdown 突然のマークダウン!!! Markdown コード #!/usr/bin/python # Code goes here ... from django.db import models class Entry(models.Model): DRAFT, PUBLISHED = ('D', 'P') STATUS_CHOICES = ((DRAFT, 'dr…

ブログ移動しました

Bloggerも良かったのだけれど, 今のVPS,乗り換え時期に乗り換えれなかったので,そろそろ乗り換えたい.— Tsushimaさん (@utisam) 8月 25, 2012 ということで,いろいろとDjango+Sphinx+gitでまとめて見ました.

django-admin.pyの補完が古い

zsh

Ubuntu12.04のzshの補完関数にあるdjango-admin.pyでstartprojectが補完されない. というわけでパッチ

DjangoでAJAX

Ajaxを勉強しようの初めのサンプルをdjangoで動的に返せるようにしてみる. $ django-admin.py startproject ajax $ cd ajax $ chmod 775 manage.py $ gedit ajax/(urls.py|views.py) $ python manage.py runserver 単純にURL割り当ててviewsで返すだけ. 非…

twitter feat. gedit commander plugin

commanderプラグインを読んでたらtweepyと合わせて簡単に出来そうだったので作ってみた. pipからtweepyをインストール gedit-pluginsパッケージとかからCommanderプラグインを入れて設定から有効にします. $HOME/.config/gedit/commander/modules/ にお好…

geditをコンパイル

ふとgeditの最新版が欲しくなったのでgitから落としてきてコンパイルした. とくに新しいからといってめぼしい機能はないのだけれど,気分の問題. debian stable の時はいろいろとパッケージがなくて断念したんだけど,Ubuntuは充分揃ってていがいとすんな…

pygameでゲームのプロトタイプを

なんか急にコードどうでもよいプログラミングがしたくなったのでむかつくアイコンぶっ飛ばすゲーム作った. #!/usr/bin/env python #-*- coding:utf-8 -*- import pygame import pygame.locals from pygame.locals import Rect import random import math im…

Ubuntu12.04を試してみた

Ubuntu12.04を試してみた. ネットにつなぎながら普通にインストール. 11.04にしたときは残念だったUnityも結構不満なく使えるようになってきました. eclipseのスクロールーバーとかも大丈夫です. DropboxとSkypeはインジケーターの関係でCanonicalのpart…

不揃いなtupleをunpack

listの中のtupleの長さが揃ってないと,unpackするときに例外が出て不便. って思ったら下のように書けばよかった. for t in [(1, 2, 3), (4, 5)]: x, y = t[:2] print x + y

先頭一致で定まるならcd

zsh

TABを押すことすら面倒になった人向け. function prefixcd() { unalias ls if [ `find . -maxdepth 1 -type d -ipath "./$1*" | wc -l` = "1" ]; then cd `find . -maxdepth 1 -type d -ipath "./$1*"` else cd $* fi alias ls="ls -F --color=auto" } alias…

intype

こんなつぶやきをしながらやっぱりプログラミングが好きな人はエディタ戦争とかそういう話好きなわけですよ. で,WindowsではgPadが最近メインですが,intypeもなかなかよさそうということで,intypeもクイック起動に並んでいたりします. こいつがどうして…

開発とゲーミフィケーション

http://developers.slashdot.jp/story/12/01/22/0946221/ ↑の記事を見て,Visual Studioだけじゃなくて, SubversionとかGitとかにもそういうプラグインあるといいんじゃないかと思った. たとえば, チェックアウトを成功 コミットに成功 1000行以上の変更…

LinuxMintに移行

gnome3も使いたくなってきたし,Debian sqeezeがflashplayerと共にお亡くなりになるので,思い切って変えてみました. 最初のうちは,いろいろと設定中にsegfaultで落ちますが,それを越えると気になる量は出なくなります. あの辺りは報告も少なさそうなの…

gglコマンドのCygwin対応

Cygwinで >> import webbrowser >> webbrowser.open("http://www.google.com") False >> 馬鹿な!! gglコマンドが使えないじゃないか. というわけで改良してみる. #!/usr/bin/env python #-*- coding:utf-8 -*- import sys import webbrowser import urll…

Dropboxのpublic一覧をindex.htmlにする

シェルスクリプト書いた #!/bin/sh INDEX_FILE_NAME="index.html" echo "" > $INDEX_FILE_NAME echo "" >> $INDEX_FILE_NAME echo " " >> $INDEX_FILE_NAME echo " $USERNAME's public folder" >> $INDEX_FILE_NAME echo "" >> $INDEX_FILE_NAME echo "" >> …

python on the wine on the linux

リバースエンジニアリングを表紙にグッときたので買ってしまった. PythonでDOSのdllとかLinuxのsoとかを呼び出したり,デバッガ作ったりDLLインジェクションをする話が載ってるっぽいです. ただ,日常的に使ってるのがLinuxだけに,Windowsのデバッガを作…

PythonのPriorityQueueが気に入らない

タイトルの通りである. PythonのPriorityQueueが気に入らない. まず,PythonのPriorityQueueクラスは,heapqをクラスにしたぐらいの存在にしか見えない. (引数でheapqと指定してるのだけど,それ以外の使い道が思いつかない) (本当はスレッドセーフと…

IPythonのテクニック

RitsPyでIPython使ってたときに,Ctrl + Rが使えるというのが @lnial さんに驚いてもらえて嬉しかったので,IPythonとかインタラクティブシェル関係でもうちょっといくつか書きます. IPythonでCtrl + R 履歴から検索 Ctrl + R の後に入力した文字列を履歴か…

cssの整形

まだ一度も会ったことのない先輩がおもしろそうなことしてたので,インデントの部分だけ追加してみた. require 'css_parser' parser = CssParser::Parser.new parser.add_block! ARGF.read result = "" indent = 0 parser.to_s.each_line {|line| indent -=…

省電力を目指す

この前の関西オープンフォーラムで,PCでメモ取ってたら電源が足りなくなって残念な思いをしたので,PC省電力化を目指します. 1.不要なデーモンを切る 会場では,電源がやばくなってきたので,compizを切ったりgeditからnanoを使うようにしてみたりしました…

Google翻訳が有料になるらしいので

bing翻訳に移行 精度もかなりいいらしい. # -*- coding: utf8 -*- import urllib import urllib2 from xml.etree.ElementTree import * #bing翻訳から訳を得る class Translator: def __init__(self, langFrom='en', langTo='ja'): self.data = { "appid": …

GoFの23パターンをまとめてみた

振る舞い TemplateMethod 利用方法は固定、カスタマイズさえできればよい ↓ 呼び出し部分だけpublicにしてそこから呼び出す ↓ 継承してカスタマイズ部分を記述するだけ ↓ 再利用がしやすくなる Iterator データ構造の管理が複雑 ↓ 管理クラスを作る ↓ 統一的…

D3DXVECTOR3を継承したい!

最近久しぶりにDirectXをいじっております. 9から10への変化は結構大きいものがありますね. 流石に全体のプログラムの流れまでは9でHLSLを組む場合と変わらないですが, インタフェース的な面でかなり変わってます. 個人的には新しい方が好きです. さて…

C++のクラスを自動生成

C++のクラスを生成するのがだるいので, ウィザード形式でソースとヘッダの組みを自動生成するPython書いた. いろいろオプションがあって何個も聞きまくるとだるいので, namespaceとクラスの名前以外は文字列入力にした. あんまりこういうの書いたこと無…

テンプレを作るスクリプト

Templatesディレクトリにファイルとおいておくと, nautilusで右クリックしてファイルを簡単に作ることができる. しかし,コマンドラインからこのテンプレートを使おうとすると cp ~/Templates/うんたらかんたら と打たなくてはならないので結構面倒. さら…

OS自作3日目その3

1段階あきらめて,先駆者がいないが検索. Linuxで開発してる人はけっこういるが, tolsetを使ってない人は少ないみたい. それっぽいサイトがあったらしいけど,リンク切れ. どうやら自分で開拓するしかないらしい. あとひとつ,ヒントを見つけた. nask…

OS自作3日目その2

もう本に追いつかれた さて,どうやってhalt関数を作りましょうか. Debianパッケージ縛りなので,付属ツールのobj2bimは使えません. うーん,困った. HLTを書いても全然止まってくれない. CPUの1つのコアが全力で回ってる. printfデバッグすらできない…

OS自作3日目

Debian statableパッケージ縛り(?)のOS自作入門2日目ですが,3日目を読んでおります. セクタを読むあたりはサクサクなんですが, 本体を書き始めるあたりで詰まった. イメージに書きこむには,イメージをマウントすればよいかなと思って # losetup /dev/lo…

バッククォートで囲むbindkey

zsh

最近Linuxのカーネルを読んでいて, globalとかgtagsというものがとても便利なのだが, 出てきたファイル名をいちいちコピペして開くのはだるい. そこで $ global inode_change_ok fs/attr.c (↑ ` Home ` ...) $ gedit `global inode_change_ok` みたいな入…

astyleを拡張forに対応させる

(Debianのstatableリポジトリの)astyleが拡張forに対応してないのでsedでどうにかしてみた sed -e "s/\([:blank:]*for[:blank:]*\)\(.*\):\(.*\)/\1\2;;\3/g" | astyle -j | sed -e "s/\([:blank:]*for[:blank:]*\)\(.*\);;\(.*\)/\1\2:\3/g" :を;;に置き…

nkfの補完関数書いた

zsh

zshでnkfの補完が出てこなかったので書いた. コピペして$fpathのどこかに_nkfで保存 nkf -[TAB]でいろいろ出てくる. #compdef nkf arguments=( "(-j -e -s -w -w80 -w8 -w16 -w16B0 -w16B -w16L -w16L0)-j[JIS コードを出力する。(デフォルト)]" "(-j -e -…

pycheckerとpylint

今までgflyではpycheckerを使ってチェックしていたが,pylintを使うことにした. これで直接無限ループ書いたときにgeditごと落とさざるを得なくなるバグが消えた. どうやらpycheckerチェック対象をimportするため, 無限ループがあると,そこで回り続けて…

BloggerのSyntax Highlighter

public class HelloWorld { public static void main(String[] args) { System.out.println("Hello World!"); } }

しばらく書いていなかったのでまとめて書く

しばらくこのブログを放置してたので,いろいろとまとめて書く まず,ACM-ICPCのWeb予選に参加しました. 結果はA, B, Cの3問でした. Aは篩で一瞬...って思ったら問題の細かいところをいろいろと見落として1発で通らなかった. もったいない. BはSample In…

年に一つは新しいプログラミング言語を

と「達人プログラマ」って本に書いてある 大学入るまでは,2年に1個ぐらいだったけど, これからは実践しようかな. というのも,最近新しいパラダイムに興味があって, 自己紹介欄都下に書いてある通り, 使えるパラダイムのレパートリーが少ないんですよね…

Debianにしてみた

Ubuntu飽きたのでDebian入れた. 基本的にnon-freeリポジトリがないとドライバ落とせなさそうなのでチェック入れた. nvidiaのドライバはnvidia-xconfigを叩くのを忘れてて時間かかった. それいがいはUbuntuと同じくEDIDを設定すればお. Compizは自分で入…

LinuxのPermission

apacheの設定で詰まったので覚書き ファイルが読める条件は ディレクトリのread && ファイルのread 「かつ」の部分に注意しないといけない ls -l してファイルの権限だけ確認してるようじゃまだまだ甘い.

端末からnautilus

nautilusから端末はnautilus-open-terminalがあるけど, 逆にnautinusを端末から開こうとして, $ nautilus とか打つと,どこでもホーム画面ひらきやがるので, $ nautilus ./ としなくてはならない. 不便なのでzsh関数書いた # nautilusでフォルダ開く fun…

.zshrcを晒す

zsh

なんか,周辺でzshを流行らせてしまったらしいのでネット上に晒しとく 最新版はこちら DropboxのPublic #変更後はコンパイル #$ zcompile ~/.zshrc #設定 #$ source ~/.zshrc # ショートカットキー #C-r 履歴から検索 #Esc-h man呼び出し #Esc-q 現在入力中…

Ubuntuを入れてはじめにすること

Ubuntu吹き飛ばしてしまったので11.04にした VAIO Sは11.04を直で入れると不安定っぽいので、10.04からアップグレード。 1.rootのパスワードを設定 2.画面の設定 NVIDIAのドライバをいじる 10.04のときにあったEDIDがどっかいってしまったけど、デフォで動作…

Pythonのurllibとプロキシ

Translator.pyもそうだけど,Pythonのurllibを使うと結構便利なものが書けると思う. でも,うちの学校では外に出るにはプロキシを通らなきゃ無いので,urllibをそのまま使うと残念な感じになる. どうやらPythonのurllibは環境変数を見ているらしいのだ. g…

対flymake用geditプラグイン「gfly」その2

C++とJavaとPythonとC#に対応した感じではある. とりあえず自分で使う言語には対応したし,もう言語の対応はそれほど積極的にしない予定. あとはmakeとantの対応とかオプションとか作る予定. 言語追加の要望のある方は,コンパイラや文法チェックソフトの…

対flymake用geditプラグイン書いた

むしゃくしゃしてやった反省はしてない まだC言語のgccコンパイルだけ makeとjavaとantとpythonぐらい対応したい 理想は高く ダウンロード 以下Readme gedit用flymake的な何か「gfly」 -- something like flymake for gedit "gfly" -- ver 0.1 使い方(How to…

C++, テンプレート

C++

最近テンプレートで実装しようとしてやっぱり駄目だったってことが多いので,注意書きついでに. 特殊な場合を除いて,ほとんどの場合は 実装などもまるまるヘッダに書かなくてはならないこれはコンパイル時にコードを生成しなくてはならないことによる. こ…

神情報ktkr!!!

ついに先駆者が現れた. ありがとう.これで充実したLinuxライフ!! 前にも1つ記事を書いて,対策のシェルスクリプトまで作ったんだが, ついに正しく動かす方法を見つけた. 解説 1.何が問題だったのか 2010年夏発売のVAIO S(VPCS12AFJ)でUbuntu10.10をイン…

GCCとOpenGL

C++

(Linux) + (NetBeans) + (g++ 4.2) + (OpenGL) + (GLUT) = (悪夢) なんということだ. ありがたい日本語の解説 いや,実はこれのせいではない気がするんだけど, これのせいだと思って5時間ぐらい費やしてしまった. メンバ関数の関数ポインタを渡すあたりが…