2015年12月31日木曜日

Vimのプラグイン、Previmのプレビューのフォントを変える

大したことではなく、またその場しのぎ的なので他によい方法もあると思うのですが…

~/.vim/bundle/previm/preview/css/origin.css

を開き、18行目ぐらいにある


font: Ricty

といっふうに書き換えると、プレビューのフォントがRictyになります。

あと最近気づいたんですが、firefoxでプレビューをPDF化する場合、昔はprintPDFみたいなアドオンが必要だったんですが、今は印刷⇨ファイルとして出力でいけるみたいです。便利〜〜

2015年10月12日月曜日

gVimからsublime text3への乗り換えを考える (debian)

昔自分が初めて使い始めたエディタがemacsで、次にemacsキーバインドのsublime text2でした。
それからvimに移行し、それまでの何倍もの時間をvimに使い倒してきたんですが、今回、ふたたび初心に戻って(?)、sublime text3を使ってみようかと思います。
今度はvimライクで。

① sublime text3のインストール
  • 公式からUbuntu 64 bitを落とす
  • ダウンロードしたディレクトリに移動して次を実行する
  • sudo dpkg -i パッケージ名.deb
② package controlをインストール
  • sublime text内で[ctrl + `]を押すとコンソールが現れるので、これを貼り付ける
③ 日本語入力を可能にする (SublimeMozcInputのインストール)
  • sudo aptitude install emacs-mozc でemacs-mozcをインストール
  • sublime textのPackage Controll: Add Repositoryで、https://github.com/yasuyuky/SublimeMozcInput をリポジトリに追加
  • Install PackageでSublimeMozcInputを選択
  • [ctrl+\]で日本語入力になります。半角 / 全角キーは使いません。これは後で[shift+space]などに設定できます。
④ 日本語化 (Japanizeのインストール)
  • Install PackageでJapanizeの選択
  • インストール後のテキストに従ってファイルをいじる (自分の環境だと、~/.config/sublime-text-3/Packages に入ってた)
⑤ vintageousのインストール
  • たぶん、ここが一番分かりやすいです。


その他の設定


⑥ markdown編集するなら、こちらで紹介されている3つが参考になります
⑦ pythonいじるなら、
  • Python Auto-Complete
  • Python Flake8 Lint
を入れるべし。どっちも落とすだけで有効になります。
あと、仮想環境使うなら、Virtualenvも入れとくといいです。
使い方は本家に書かれていますが、
  • SublimeREPLとVirtualenvをインストール
  • ツール → ビルドシステムから Python + Virtualenv を選択
  • コマンドパレット(ctrl + shift + p)からVirtualenv: Add directoryで、venvが入ったディレクトリ(Dropbox/venv/bin/activateってふうになってるなら、Dropboxのパス)を追加
で設定が終わり、あとはVirtualenv: Activateでいつでもアクティベートできます。



あとどうでもいいですが、ディレクトリ追加追加〜♪でVirtualenv: Newを選んじゃうと既存の仮想環境上書きして新しい同名の仮想環境のを作り始めます。適当にやりゃできるだろって思ってこれ選んだ自分の既存のvenv3ディレクトリが飛びました。

【追記】
windowsの場合はSublimeMozcInputの代わりにIMEsupportというプラグインを入れるんですが、その場合、insertモードからnormalモードにエスケープしても全角入力が維持され、うまいこといきません。
自分の場合は、全角 / 半角はShift+Spaceで切り替えるようにし、全角半角キーはIME offとして割り当てたうえで、次のようなautoIMEoff.pyを作成し、Userフォルダに突っ込んでいます。
ここを参考にしました)


import sublime_plugin
import ctypes


class DisabledImeCommand(sublime_plugin.EventListener):
    def on_text_command(self, view, command_name, args):
        name = command_name.lower()
        if (name == '_enter_normal_mode'):
            ctypes.windll.user32.keybd_event(17, 0, 0x2, 0)
            ctypes.windll.user32.keybd_event(244, 0, 0, 0)

【追記の追記】
上の方法でほぼ問題なく使えていたのですが、どうしてもvimとemacsの折衷案みたいな挙動がお多かったので、使うのをやめてしまいましたとさ・・・

2015年10月6日火曜日

python3の入ったvirtualenvでkivyを動かすためにしたこと(in Linux)

ものすごーーーーーく困り果てていたんですが、ここのおかげでなんとかなりました。
http://sabeltand.no-ip.org/setting-up-kivy-with-sdl2-and-python-3-on-ubuntu-with-virtualenv/

① 仮想環境を構築する前に用意しておくこと(自分はここでハマっていた)
sudo apt-get install python3-dev libsdl2-ttf-dev libsdl2-net-dev libsdl2-mixer-dev libsdl2-image-dev libsdl2-gfx-dev libsdl2-dev

② 仮想環境の構築、アクティベート
virtualenv --no-site-packages -p python3 kivyinstall
source kivyinstall/bin/activate

③ 中にcythonとkivyを入れる(自分は安定版でいいのでkivy1.9.0を入れてます。2015/10/05時点での最新版は1.9.1ですが)
pip install Cython==0.21.2
pip install kivy


pygameは要らないようです。ありがたや。
公式のhello worldで動作確認を行っておきませう

2015年10月5日月曜日

【python2】psychopyに必要な材料をすべてpipで揃えるメモ

仮想環境を作ったときに何が必要か思い出せなかったのでメモ(というか、前は確かsudo aptitudeの力技を使って入れてた気がする…)。

pip install numpy
pip install scipy
pip install pillow
pip install pygame==1.9.1release --allow-external pygame --allow-unverified pygame
pip install pyglet

これでおそらく全部です。
実験終了後のデータ解析も視野に入れるなら、ipythonやpandas、cythonを入れてもいいかも。

2015年10月4日日曜日

DebianでLineを使う方法(Wine不使用)

そんな都合のいい方法…ありまぁす!
おっとこんな言い方するとホントは無いのかと思われそう

LinuxでLine使いたいなら基本はWineなんて時代が確かあったと思うのですが、文字やUIが汚いのが困りもの。
あとたまにバグるし。ついでに言うとそもそもデスクトップ版のLineはアップデートが多すぎる!
あとライトユーザーにとってWineの存在意義はせいぜいLineぐらいだったので、できれば入れたく無いという人も多かったはず。

話し変わって最近Chromiumを入れてみたのですが(新しいFlashPlayerが使えるので)、Chromeウェブストアをぶらぶらしてるとまさかの

Line発見


というわけでFirefoxからChromiumに乗り換え、便利に使わせていただいてます。
昔のChromeはタブ複数開くと極端に遅かったけど今はどうなんだろう。

【補足】
Chromiumを日本語にする場合は
sudo aptitude installで

  • chromium-browser-l10n
  • ttf-takao-mincho
  • ttf-takao-gothic

をインストールします。
あとはsettings → language あたりで適当に設定してやればよかったはず(曖昧)

2015年9月23日水曜日

【python2】psychopyでGifImagePluginが無いと言われたら【linux, debian】

 【問題】
Debianにpsychopyを入れる場合、

sudo aptitude install psychopy

で、psychopyは正常にインストールされるのだが、じゃあ早速と

from psychopy import visual, core, event

などとしてみると、visual.pyからのインポートにエラーが出る。

2015年9月18日金曜日

【python2】画面を切り替える【kivy】

kivy使い初めて最初に躓いた、ウィジェットの追加・削除について少しずつわかってきたのでメモ。
例えばゲームやってると、スタート画面で何かのボタンを押したときにゲーム画面に移行しますよね、あれのやり方です。


2015年9月11日金曜日

【python3】ルーレット的なやつ【kivy】

先輩「ルーレットとかあるといいね」
俺「作りましょう!」(と心の中で決意)



【概要】
  • 「Push Start!」ボタンを押すとルーレットが回り始める
  • 「Running...」中はルーレットが減速しながら回り続ける
  • 一定速度以下になると停止し、「Once More!」ボタンが現れる

2015年9月4日金曜日

【python3】Windows版のkivyでnumpyやpandasを使う【kivy, numpy】

numpyとkivyを併用したかったが、正攻法でやると複雑な操作がおおくてややこしいので、なるべくシンプルにやってみた。

kivyがらくらく動かせるportable package版kivyを入れて説明書通りやってみるとととりあえずkivyは動かせるんですが、スクリプトの中で

import numpy as np
import pandas as pd

とかはできないですわな。そりゃそうだ。

一方でこういう計算系はAnacondaというpythonのディストリビューションを入れると最初から入っていてとても楽ちん。でも

from kivy.app import App

とかはできないですわな。科学技術計算特化のディストリビューションにデフォルトでkivy入ってたら逆にびっくり。

それで、両方使って楽々kivyとnumpyを併用する方法はないのか考えてました。
で気づいたんですが、 kivyの入ったフォルダの中にAnaconda入れればいいんじゃねと。

つまり、


2015年8月24日月曜日

【python3】kivyで心理学実験 - Attentional Blink【kivy】

有料のMATLABになんとなく依存したくないなあと思い最近pythonに手を出してるんですが、半月のめり込みやっとこさそれっぽいプログラムが書けるようになりました。

といってもお馴染みpsychopyではないです(あれは書籍いっぱいあるしそのうち覚えればいいかなぁ)。
普通に考えればpsychopy使えばいいんですが、新しいもの好きが仇と(?)なって、kivyというマルチタッチアプリ制作向けのライブラリを使うことにしてみました。
(本当はpygameも使ってたんですが、なんかpsychtoolに似てて代わり映えないなぁ、と思って一通りいじってから止めちゃいました)

ということでベーシックなAttentional Blinkの実験を。
実験条件はラグのみ。ターゲットは数字。妨害刺激はアルファベット。

今回使ったファイル置き場はこちら

↓実験の様子(T1は何?T2は何?に対してキーボードで回答)



↓出力された結果

nPreT1は、T1が呈示されるまでにいくつの妨害刺激が呈示されたか。