人生シーケンスブレイク

シーケンスブレイク(Sequence breaking、シークエンスブレイクとも)とは、テレビゲームにおいて開発が想定している攻略ルートを逸脱し、ショートカットする行為のことである。

2015-01-01から1年間の記事一覧

NERDCommenterでfiletypeごとのコメントフォーマットを変更したい

SCSSを scss-lint でチェックしてるんだけど、デフォルトで推奨されているコメントが // となっている。 しかし、NERDCommenter でコメントアウトした際には /* */ となっていて面倒なのでSCSSのデフォルトのコメント設定を変更したい。 .vimrc に以下のよう…

まだ著作権表記で消耗してるの?

年末年始対応の時期ですね。 svg画像を 著作権表示 - Wikipedia より。 企業で働くエンジニアは、あけおめ対策をはじめとした年末年始の対応準備に時間を割いていることでしょう。 その中でも、毎年恒例の著作権表記、特に年号更新の対応に追われる方が多い…

gulp-sassで自動でSass/SCSSからcssファイルを生成する

フロントエンド開発に便利なNode.js環境で、ファイル変更時に自動でSass(SCSS)からCSSファイルを生成したい。 2016-06-17 追記 上位互換記事を書きました。 gulp-sassで自動でSass/SCSSからcssファイルを生成したり、他にもいろいろする - 人生リアルタイム…

FlaskでもHamlを使う - hamlish-jinja

Flask 最近書いてるんだけれども、今更閉じタグなんて書きたくないんじゃ!ということで、様々HTML Template触った結果最も書きやすかったHamlを使いたい。 ということで hamlish-jinja を使う。 使い方の基本 Flaskのdefault template engineであるjinjaのo…

SSL証明書が正しくないサイトに対してPythonでアクセスする

HTTPSで提供しているサービスのローカル開発環境にPythonでアクセスを試みたらエラーが出た。 Traceback (most recent call last): File "/main.py", line 36, in <module> main() File "/main.py", line 18, in main soup = BeautifulSoup(opener.open(conf['login_</module>…

urllib.request.build_opener に User-agent を指定する

Pythonで要ログインのサービスをスクレイピングをする際にはbuild_openerを利用するが、User-agentも指定する必要があるケースがある。 通常のbuild_opener # coding: utf-8 import http.cookiejar import yaml from bs4 import BeautifulSoup from urllib i…

memcachedの中身を確認するならmemcached-tool

$ memcached-tool localhost dump 文字化けする場合には strings による文字列変換を行う。 $ memcached-tool localhost dump | strings

特定のディレクトリ階層以下の.DS_Storeを削除したい

Mac

$ find . -type f \( -name ".DS_Store" \) | xargs rm

Bowerを使ってフロントエンドのパッケージ管理を行う

先行きが若干不安だけど。 Bower is alive, looking for contributors · Bower blog npm はpackage.jsonがカオスになっている為開発用ライブラリのパッケージ管理のみ、BowerはBootstrapなどのフロントエンドのライブラリパッケージ管理で使い分けしている。…

CSSセレクタ42個ぜんぶ纏めてみた

CSS

Sassにせよcssにせよ、出来る限り限定的にCSSセレクタを指定できるといいよねってことで、W3C記載の表に基づいてCSSセレクタを纏めてみた。 なお、CSS3セレクタに関するW3Cのテクニカルレポートとして Selectors Level 3 が著名だが、 2015年時点のCSS情報を…

MySQLで詰まったプロセスを強制終了する

よく忘れるのでメモ。 show full processlist; でプロセス一覧が表示されるので、 kill <プロセスID> で削除する。

flake8 で continuation line under-indented for visual indent [E128] が出る時

flake8でコーディングチェックを行っていると、continuation line under-indented for visual indent [E128] が出る時がある。 Vim標準、もしくは jedi.vim 利用時の自動インデントに倣って入力してるつもりだが、flake8では例えば引数などは、第1引数の開始…

gulpで複数サイトを同時にBrowsersyncで立ち上げる

最近開発にはめっきりBrowsersyncを利用している。 Browsersync - Time-saving synchronised browser testing 通常Webサービスを開発する場合、ユーザ画面と管理画面などと複数サービスを開発するケースが多いので、一つのだけ $ browser-sync start --confi…

Vimのテキストオブジェクトを本気出して纏めてみた

Vim

Vimでエディットするにあたり、ダブルクォートで囲まれた部分をシングルクォートにしたいとか、囲まれた部分の内側を置換したいとか、いい加減テキストオブジェクトを使いこなしたいなと思ったので調べつつ憶えてみる。 Vimのコマンドは何らかの単語の頭文字…

jQuery Validation Plugin の重複チェックバリデータを作った。

jQuery Validation Plugin で複数のセレクトボックスから項目を選択する場合に、重複チェックするバリデータを作成した。 用途としては、例えば 秘密の質問 Q1〜Q3で同じ質問を選択してないか 好きな○○で重複した項目を選択していないか 経験のある言語で重…

無駄な空行を一発で削除する

Vim

無駄な空行が多いコードから、一発で無駄な部分を消したくなった。 Pythonのflake8をはじめ、他言語のコーディング規約をみても恐らく3行以上の空白を意図的に入れる必要性が感じられないので、4つ以上 <LF> が続いた場合には消す処理で良さそうだ。 command! De</lf>…

Pythonのパッケージ管理ファイル

pip freezeを使う。virtualenv と組み合わせて使うとよい。 $ pip freeze beautifulsoup4==4.4.1 flake8==2.4.1 mecab-python3==0.7 pep8==1.5.7 pyflakes==0.8.1 PyYAML==3.11 $ pip freeze > requirements.txt # 現在インストールしているパッケージ一覧を…

jQuery Validation Plugin のエラーを Bootstrap3 の popover に出力させる。

HTML5 Form Validationのブラウザごとの実装状況が異なることから、 jQuery Validation Plugin | Form validation with jQuery をまだ現役で利用しているケースも多いはず。 先日 jQuery Validation Plugin のエラーを Bootstrap3 の popover(tooltip) に組…

Pythonで破壊的ループをする際はリスト全体のコピーをとる

Pythonで以下のような破壊的ループをしようとすると、indexのズレが発生してすべての要素に対して処理が行われないケースがある。 (この例の処理ではリスト内包表記で充分代替可能だったりするが、あくまで例として単一処理にしている。) li = [ { "id": "D0…

Pythonの引数のデフォルト値は一度しか評価されない

先日ハマったのでメモ。 結論 Pythonの引数のデフォルト値は一度しか評価されない。 def func(url, l=[]): … としたい場合には、代わりに def func(url, l=None): if l is None: l = [] … とする。 背景 GitHub APIを叩いて全てのbranch_listを取得しようと…

tmux 2.1からmouse系のオプションが変更になった。

久しぶりに tmux を再起動したらこんな警告が出るようになった。 /Users/user_name/.tmux.conf:16: unknown option: mode-mouse /Users/user_name/.tmux.conf:17: unknown option: mouse-resize-pane /Users/user_name/.tmux.conf:18: unknown option: mouse…

JavaScriptでひらがな/カタカナ変換あれこれ

CloudSearch使ってるのだけれども、トークナイズ辞書の仕様の所為かひらがなとカタカナでサジェスト時の候補返却内容が異なった。 候補のテキストフィールド自体はカタカナで、カタカナの方が意図する候補を返却していたので、JavaScriptでひらがな/カタカナ…

pyenv利用環境でのnpm installでpython2周りのエラーが出た時

こんなエラーが出た時のお話。 ~ $ npm install -g bower /Users/<user_name>/.nvm/versions/node/v4.2.1/bin/bower -> /Users/<user_name>/.nvm/versions/node/v4.2.1/lib/node_modules/bow er/bin/bower bower@1.6.5 /Users/<user_name>/.nvm/versions/node/v4.2.1/lib/node_modules/bower ></user_name></user_name></user_name>…

Vimで繰り返し文字を挿入する

Vim

繰り返し文字を挿入する Vim で ---------------------------------------- と挿入したい時には、 normalモードで 40i- と入力して Esc すると ---------------------------------------- が入る。 日本語も 40iあ などで普通に挿入できる。 繰り返し文字列…

Vimで検索した文字列をそのまま置換する

Vim

Vimで直接 :%s/<search_word>/<replace_word>/g とせず、ミス防止に一度 /<search_word> してから改めて置換をしたい時がある。 一度/<search_word> または * で検索ワードをハイライトした状態で、 :%s//<replace_word>/g すると、 そのまま現在のハイライト文字列を <replace_word> に置換してくれる。 いつも使ってたけれどど忘れしてしまい</replace_word></replace_word></search_word></search_word></replace_word></search_word>…

DvorakJP用のGoogle 日本語入力ローマ字テーブルをつくった

DvorakJP用のGoogle 日本語入力ローマ字テーブルをつくりました github.com El Capitanになったし、Dvorakが最近ちょっと盛り上がってたので、この際新規に作成しました。 ライブ変換は現状難しそう*1 な為、Google 日本語入力のローマ字テーブルだけの作成…

MacでのPHP環境とVimでのPHP Lint環境を整える

El Capitanになったことだし、改めてPHP環境とVimでのPHP Lint環境を整える。 前提としてHomebrewはインストール済みとする。 この記事でインストールするもの。 PHPBrew Composer PHP_CodeSniffer PHP Mess Detector Syntastic PHPBrew PHPのバージョン管理…

Googleの「スーパーマリオブラザーズ」検索結果ではじめるJavaScript

若干今更な話ですが、Googleで「スーパーマリオブラザーズ」と検索するとハテナブロックが表示されるようです。 スーパーマリオ - Google 検索 クリックすると、コインが出ます。音も出ます。 楽しいですね。オフィスで教えてもらってクリックしてたら、「10…

Pythonでトークンやユーザー名やパスワードなどの秘匿情報をYAMLに退避させる

ソースコード上に書いたままではマズい情報を退避させる手段 Pythonコード import yaml yaml_dict = yaml.load(open('secret.yaml').read()) user_name, password = yaml_dict['username'], yaml_dict['password'] yamlモジュールがなければ pip install pyy…

gitリポジトリのremote urlを追加/変更する

git

よく忘れるので。 urlの追加 git remote add origin <リポジトリURL> urlの変更 git remote set-url origin <リポジトリURL>