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

牌語備忘録 -pygo

あくまでもメモです。なるべくオフィシャルの情報を参照してください。

牌語備忘録 -pygo

Python でランダムにパスワード生成してみるメモ

# coding=utf-8 import random def generate_password(password_length): digits_and_ascii_letters = list('0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ') ignore_strings = list('lIO0') password_strings = [s for s in digits_and_…

SSL証明書の内容を確認するメモ

$ openssl x509 -in -pubkey -noout hoge.pen 参考 OpenSSLコマンドの備忘録 - Qiita

Webpack の bable の設定で `const { value, ...inputProps } = input` みたいな Rest Properties を使えるようにするメモ

よびかたがよくわからないんだけどこんなやつ let { x, y, ...z } = { x: 1, y: 2, a: 3, b: 4 }; 設定を追加しないとビルドで失敗する やり方 webpack まわりは省く(動いている前提) ライブラリインストール $ npm install -D babel-preset-stage-2 webpa…

Javascript のオブジェクトで特定のkey以外ほしい場合のメモ

いつも悩むのでメモ const data = { last_name: '夏目', first_name: '漱石', created_at: "2017-03-21T12:00:00.000000", updated_at: "2017-03-21T12:00:00.000000", }; const IGNORE_KEYS = [ 'created_at', 'updated_at', ]; const filterIgnoreObject =…

Mac標準の日本語入力に絶望したので Google日本語入力に乗り換えるメモ

漢字トーク7の頃からことえりを使ってたけど最近のMac標準日本語入力の誤変換が酷い 気がするので乗り換えることにした。(過去3回くらい試したことあるけど…) Google日本語入力をインストール $ brew cask install google-japanese-ime 要OS再起動 ユーザ…

Javascript でカタカナ->ひらがな変換とか全角英数->半角英数に変換とかのメモ

カタカナ->ひらがな変換 const katakanaToHiragana = (katakana) => { return katakana.replace(/[\u30a1-\u30f6]/g, (match) => { const chr = match.charCodeAt(0) - 0x60; return String.fromCharCode(chr); }); }; console.info(katakanaToHiragana('カ…

Javascript のソースコードを prettier で git commit 時に自動で整形してみるメモ

prettier Golang の gofmt みたいなやつの Javascript 版。 インストール $ npm init -y $ npm install -D prettier lint-staged husky package.json precommit と lint-staged を追加 { "scripts": { "precommit": "lint-staged" }, "lint-staged": { "*.js…

Django の templates で forms.py で設定した max_length とかのみ表示するメモ

忘れるのでメモ forms.py class ContactForm(forms.Form): username = forms.CharField(max_length=100) template/hoge.html <p>{{ form.fields.username.max_length }}</p> で <p>100</p> みたいな感じで表示できる

Emacs の Flycheck で csslint の設定を変えてを使うメモ

(emacs25.1.1) インストール Emacs と flycheck、node.js と npm のインストールは略 $ npm install -g csslint 設定 flycheck のソースコード を見てコマンドの設定を追加してみる (flycheck-define-checker css-csslint "See URL `https://github.com/CSSL…

CSSで星のレーティング評価を0.0〜5.0で表示するメモ

CSS

こんなの html <html lang="ja"> <head> <meta charset="utf-8"> <title>sample</title> <link rel="stylesheet" href="style.css"> </head> <body> <h2>Star Rating</h2> <div class="star-rating"> <div class="star-rating-front" style="width: 50%">★★★★★</div> <div class="star-rating-back">★★★★★</div></div></body></html>

homebrew で redis インストールしてみたメモ

インストール $ brew install redis ... To have launchd start redis now and restart at login: brew services start redis Or, if you don't want/need a background service you can just run: redis-server /usr/local/etc/redis.conf ... redis-server…

Python のクラスを継承した時にどちらのメッソドが上書きされるのかメモ

python2.7 # coding=utf-8 class Base: class_name = 'base' def method(self): print "Base!" print self.class_name class BaseB: class_name = 'base_b' def method(self): print "BaseB!!!!" print self.class_name class Hoge(Base, BaseB): class_name…

ディレクトリの容量を表示するコマンドのメモ

コマンド忘れるのでメモ $ du -sh ~/.emacs.d 44M /Users/cortyuming/.emacs.d 参考 Linuxコマンド集 - 【 du 】 ディレクトリ内のファイル容量を表示する:ITpro

git commit時にPythonのFlake8でコードチェックするメモ

バージョン変わってやり方も変わってたので一応メモ $ pip install flake8 $ flake8 --version 3.2.1 # プロジェクトのルートで以下コマンド $flake8 --install-hook git ファイルが作成される .git/hooks/pre-commit #!/usr/local/opt/python/bin/python2.7…

2016年を振り返る

技術的なことなど Python 今年もv2.7.xしか使ってない 仕事でv3.x系使う日は来るのだろうか? Javascript flumpt でそこそこの規模のwebサイト作ったけど、次は redux 使うことになりそうな予感。 react の flux ライブラリで決定的に良いやつって出てこなか…

すごE本を読んでみたメモ -- 第4章

書籍『すごいErlangゆかいに学ぼう!/Learn You Some Erlang for great good! 』まとめ すごE本を読んでみたメモ目次 第4章 型(あるいはそれを欠いています) 4.1 動的で強い型付け Erlang は強い型付き言語 4.2 型変換 1> erlang:list_to_integer("54").…

flake8 の設定を変更するメモ

(python2.7.13, flake8v3.2.1) ~/.flake8 にファイルを作って設定を書く [flake8] max-line-length = 120 参考 Configuring Flake8 — flake8 3.3.0.dev0 documentation

網戸を自分で取り替えてみたメモ

Etc

必要なもの 材料 ダイオ化成 防虫網 クラウンネット 24メッシュ 91cm×6m グレイ ダイオ化成 網戸用 網押えゴム 4.5mm×7m ブロンズ 太さ 4.5mm 7m * 2 足りんかった。余裕をもって買っとけばよかった。 若干緩い気がする。ホームセンターによってはお試し用の…

すごE本を読んでみたメモ -- 第3章

書籍『すごいErlangゆかいに学ぼう!/Learn You Some Erlang for great good! 』まとめ すごE本を読んでみたメモ目次 第3章 関数の構文 3.1 パターンマッチ function(Args) if X then 〔式〕 else if Y then 〔式〕 else〔式〕 ではなく function(X) -> 〔…

すごE本を読んでみたメモ -- 第2章

書籍『すごいErlangゆかいに学ぼう!/Learn You Some Erlang for great good! 』まとめ すごE本を読んでみたメモ目次 第2章 モジュール 2.1 モジュールとは モジュールは 1 つの名前で 1 つのファイルにまとめられた関数群 モジュール内に定義された…

すごE本を読んでみたメモ -- 第1章

書籍『すごいErlangゆかいに学ぼう!/Learn You Some Erlang for great good! 』まとめ すごE本を読んでみたメモ目次 第1章 始めましょう 1.1 Erlang シェルを使ってみる $ erl ヘルプの出し方1 help(). ヘルプの出し方2 ^G で終了して h シェルがフリース…

Python で Loto6 の当選確率の計算をしてみるメモ

(pytho2.7) In [9]: import itertools In [10]: len([i for i in itertools.combinations(range(43), 6)]) Out[10]: 6096454 # 1等 1/6096454 In [19]: len([i for i in itertools.combinations(range(6), 5)]) * len([i for i in itertools.combinations(ra…

Django の確認フォームで localflavor を使った都道府県を templates で表示させるメモ

(django1.8, python2.7) templetes で {{ form.prefecture.value }} と書くと 東京 とかではなく tokyo とか表示される問題。 form.get_fieldname_display とか色々やって表示されなかったので この記事 を参考に templatetags 使ってやってみた (参考サイ…

郵便番号を入力してボタンを押すと住所を補完するやつのメモ

<html lang="ja"> <head> <meta charset="utf-8"> <title>sample</title> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> <script src="https://ajaxzip3.github.io/ajaxzip3.js" charset="UTF-8"></script> <script> $(function() { $('.js-button').click(f…</meta></head></html>

Django templetes で入れ子になって複数のview から使われてる場合にどこの view から使われているか確認するメモ

{{ request.resolver_match.view_name }} こんなのもある request.resolver_match.url_name 参考 url - How to get the current urlname using Django? - Stack Overflow

.ssh/known_hosts のホストを削除するメモ

SSH

$ ssh-keygen --help ssh-keygen: illegal option -- - usage: ssh-keygen [-q] [-b bits] [-t dsa | ecdsa | ed25519 | rsa | rsa1] [-N new_passphrase] [-C comment] [-f output_keyfile] ssh-keygen -p [-P old_passphrase] [-N new_passphrase] [-f key…

Django Templates で文字列の一部ををマスクするメモ

カード番号のマスクとか Templates 内で完結させたい場合 {% spaceless %}{% for n in form.creditcard.data %}{% if forloop.counter < 5 or 12 < forloop.counter %}{{ n }}{% else %}*{% endif %}{% endfor %}{% endspaceless % form.creditcard.data の…

Javascript で url のパラメータを取るメモ

(es5) こういうURL で next とかの値を取りたい https://www.google.co.jp/?prev=next=http://foo.com&next=http://bar.com source code function parseParameter(key) { var val = null; var params = []; var items = location.search.substr(1).split('&'…

eslintでES2016の可変長引数が引っかからないようにするメモ

例 const { hoge, ...props } = this.props; ...props のとこで Parsing error: Unexpected token ... になる .esrintrc "parserOptions": { "ecmaVersion": 6, "ecmaFeatures": { "experimentalObjectRestSpread": true } }, これで error 消える 参考 java…

javascript の for...of と for..in のメモ

'use strict'; const any = (arr) => { for (let value of arr) { if (value) { return true; } } return false; }; console.log(any([false, false, false])); console.log(any([false, true, false])); //=> false //=> true const object = {foo: [false,…

vagrant の不要な仮想マシンを削除するメモ

忘れそうなのでメモ この記事参照 dqn.sakusakutto.jp 消したはずの仮想マシンが vagrant global-status で表示されてしまう場合、--pruneオプションをつければゴミ掃除してくれます。 $ vagrant global-status --prune HD容量が10Gくらい空いた。助かりまし…

.screenrc のメモ

Etc

escape ^Zz startup_message off defencoding utf-8 encoding utf-8 utf-8 setenv LANG ja_JP.UTF-8 caption always "%{= wb} %-w%{=bu dr}%n %t%{-}%+w" bind ^r source $HOME/.screenrc 起動(セッションが存在したら自動接続) $ screen -xRR 参考 GNU Sc…

es2015 のクラスで継承しつつ静的メソッドの中でインスタンス作成したりのメモ

(node v4.4.7) 'use strict'; class Hoge { constructor() { this.price = 50; } static getInstance(object) { const instanse = new this(); Object.keys(object).map(key => { instanse[key] = object[key]; }); return instanse; } } class Fuga extends…

ESLint v3.x で React 使う場合の設定メモ

2016-08-04 Thu: 追記・修正 (eslint v3.1.1) Install $ node install -g eslint eslint-plugin-react .eslintrc { "plugins": ["react"], "extends": ["eslint:recommended", "plugin:react/recommended"], "env": { "es6": true, "browser": true, "node":…

Emacs の whitespace-mode でタブと行末スペースと全角スペースに色付けするメモ

今まで font-lock で色つけたけど whitespace-mode に乗り換えた。 (progn (require 'whitespace) (setq whitespace-style '( face ; faceで可視化 trailing ; 行末 tabs ; タブ spaces ; スペース space-mark ; 表示のマッピング tab-mark )) (setq whitesp…

Python で Ruby の each_slice みたいなやつメモ

(python2.7) def each_slice(arr, n): return [arr[i:i + n] for i in range(0, len(arr), n)] print(each_slice([1, 2, 3, 4, 5], 2)) print(each_slice([1, 2, 3, 4, 5], 3)) print(each_slice([1, 2, 3, 4, 5], 4)) # => [[1, 2], [3, 4], [5]] # => [[1,…

homebrew でインストールした MySQL の自動起動を start とか stop するメモ

$ brew services start mysql $ brew services stop mysql ちなみに自動起動の一覧表示 $ brew services list コマンド $ brew services --help してみた cleanup Get rid of stale services and unused plists list List all services managed by `brew ser…

django-ckeditor の画像アップロードでハマったメモ

(django1.8, python2.7) 手順 ここ に書いてあるけど... Add ckeditor_uploader to your INSTALLED_APPS setting Add CKEDITOR_UPLOAD_PATH = "uploads/" setting Add (r'^ckeditor/', include('ckeditor_uploader.urls')), project's urls.py 略 Install pi…

Golangのコマンドラインツールパッケージ urfave/cli を使って御神籤を作ってみるメモ

(glang1.6) Install $ go get github.com/urfave/cli code package main import ( "fmt" "math/rand" "os" "time" "github.com/urfave/cli" ) func suffle(arr []string) { rand.Seed(time.Now().UnixNano()) n := len(arr) for i := n - 1; i > 0; i-- { j …

Django で Modelからアプリ名とモデル名を取りたいメモ

例 appname/models.py >>> HogeModel._meta.app_label 'appname' >>> HogeModel._meta.object_name 'HogeModel' # or >>> HogeModel.__name__ 'HogeModel' 参考 http://stackoverflow.com/questions/3599524/get-class-name-of-django-model http://stackove…

Elixir を Emacs で書くのに補完・構文チェックなど環境を整えるメモ

install 下記はインストール済みの前提 auto-complete flycheck elixir書くのに使うライブラリ elixir-mode alchemist 補完 REPL Phoenix の開発もサポートしてくれるらしい flycheck-elixir ac-alchemist auto-complete-mode で補完できるようにする (compa…

Python で Zip ファイルを解凍するメモ

(python2.7.11) from zipfile import ZipFile import os dir_name = 'fuga' os.mkdir(dir_name) with ZipFile('hoge.zip', 'r') as z: z.extractall(dir_name) extractall() でディレクトリを指定しないとカレントディレクトリにディレクトリを作らずファイ…

Django の templates では無い場所で contrib.humanize の intcomma とか使いたい場合のメモ

templates の中だと <p>{{ 999999|intcomma }}<\p> とかで 999,999 と表示できるけど templates 以外で使いたい >>> from django.contrib.humanize.templatetags.humanize import intcomma >>> intcomma(100000000) u'100,000,000' ふつうにそのままな感じでい</p>…

Overtone のメモ

なんかよくわからんが Overtone すげーと思ったのでリンクメモ http://overtone.github.io/ https://vimeo.com/22798433 http://yoppa.org/blog/6232.html http://qiita.com/nobkz/items/aea2c70a5fb03003f375

Django で Rails の flash みたいなやつメモ

Rails Rails のユーザに簡易メッセージを表示するやつ。Controller で値を入れて View で表示。 ActionDispatch::Flash Django Django の場合は messages framework settings.py MESSAGE_STORAGE = 'django.contrib.messages.storage.cookie.CookieStorage' …

Python でファイル作成する時に指定したディレクトリが無ければ作るメモ

(python2.7.11) ディレクトリが無いとこで open して write するとエラーになるので mkdir する # coding=utf-8 import os def write(filename, text): file_path = os.path.dirname(filename) if not os.path.exists(file_path): os.makedirs(file_path) wi…

Python のメソッドを文字列で呼び出すメモ

(python2.7.11) # coding=utf-8 class Hoge: @property def fuga(self): return 'fugafuga' h = Hoge() print h.fuga print getattr(h, 'fuga') # print getattr(h, 'fu') # AttributeError print getattr(h, 'fu', 'Nothing!') # -> fugafuga # -> fugafuga…

postfix のログ /var/log/mail.log を削除したらログが書き込まれなくなった場合のメモ

ubuntu 14.04 service rsyslog restart

ES6のデフォルト引数の使い方を勘違いしていたメモ

ES6 function hoge(a='hoge', b='fuga') { console.log(a + b); } hoge(); //-> hogefuga hoge('foo', 'bar'); //-> foobar hoge('foo', b='bar'); //-> SyntaxError 実行時に b= とか書くとエラーになる ちなみに Python def hoge(a='hoge', b='fuga'): pri…

Python3.5 の async を使って非同期でwebサイトにアクセスしてステータスコードを取得するメモ

(python3.5.1) Web DB Press Vol.82 の Go特集でやってたやつを python で書いてみる hoge.py import asyncio from urllib import request urls = [ 'http://example.com', 'http://example.net', 'http://example.org', ] async def display_status(url): r…