`(blog ,garaemon)

ポップカルチャーを摂取して、コードを吐き出す機械

emacsでカーソルの行番号を取得する

line-number-at-posを使えば良い (line-number-at-pos (point))

pythonでjsonのutf8の文字をescapeしない

pythonでdictオブジェクトを文字列に変換すると、utf8の文字がエスケープされてしまう. 'hoge: %s' % json.dumps({'text': 'ほげ'}) => 'hoge: {"text": "\\u307b\\u3052"}' これをエスケープしないようにするにはensure_ascii=Falseにすれば良い. 'hoge: %s…

micropythonのusocketで大きなファイルをHTTP越しに読む

micropythonを動かす環境はm5stackといったメモリが貧弱であることが多く, 普段は気にならないサイズでもMemory Allocation Errorが発生して読み込めないことがある. micropythonのurequestsパッケージは便利だけど、データを逐次的に読み出すインタフェイス…

新iPad(2018年モデル)でApple Pencilをつけられるカバー

新iPad (2018年モデル)を購入したので、Apple Pencilをつけられるカバーということで以下のものを購入して利用している. https://www.amazon.co.jp/gp/product/B07C4RZMS9 Apple Pencilもしっかり収納できて良い感じ. 少し重いのと、Apple Pencilを立てる穴…

javascript版jupyterのようなobservable

beta.observablehq.com observableはjavascript版のjupyterのようなサービス. d3.jsを利用した美しい可視化が特徴的. どうやら今年の1月31日にサービスインしたらしい. Hello, world! Announcing Observable notebooks: a better way to code, discover, an…

Everlaneの海外配送が無料になってる

Everlaneの通販で$150以上頼むと日本でも送料無料になるらしい。 締切は4/30. できれば日本でもサービスインしてほしいなぁ. ユニクロとバッティングするから難しいのかな? www.everlane.com

emacsでカーソル位置の単語をispellの辞書に追加する

emacsでカーソル位置の単語をispellの辞書に追加するelispコード (require 'thingatpt) (defun add-word-to-ispell-dictionary () "Add word to dictionary file for ispell." (interactive) (let ((user-dictionary-file (expand-file-name "~/.aspell.en.p…

emacsでカーソル位置の数字を上下させる

emacsでカーソル位置の数字を上下させるemacs lispコード. どこかから拾ってきたのかもしれないもの. 意外と便利. (defun increment-number-at-point () "Increase number at current cursor." (interactive) (skip-chars-backward "0123456789") (or (looki…

ambie + TT-BR06が悪くない

ambieは耳をふさがないイヤホンということで周囲の音が聞きやすいということを売りに出されているイヤホンだ. ambie.co.jp もともとはイヤホンジャックを備えている有線イヤホンとして販売されていた. ambie.co.jp 先日Bluetoothによって無線化された新製品…

micropythonでm5stackをwifiにつなげる

m5stackでmicropythonを使ってwifiを利用するときは, wifisetupを利用すれば簡単に実装できる. import wifisetup ただ、再接続などを実現するためにどうしても自前で実装したかったので試してみた. from m5stack import lcd import utime import network def…

helm-miniのデフォルト値にカーソルのシンボルが渡ってしまう

helm-miniをC-x bに割り振ってバッファ選択に使っているのだが、現在のカーソルがある位置のシンボル(いわゆるthing-at-point)がデフォルトで渡ってしまい、バッファの選択に不自由していた. どうやら, helm関数の:defaultキーワードを与えないと、thing-at-…

emacsでmarkdown-modeのinline code blockに色を付ける

code blockのフォントを変えないようにしたのは良いけど 、色も変わらなくなってしまった。 これはみにくいので色を設定するようにする. (set-face-attribute 'markdown-code-face nil :inherit 'default) (set-face-attribute 'markdown-inline-code-face n…

micropythonのPOSTでハマった件

m5stackでmicropythonを動かして、spotifyで再生中の曲を表示するものを作っている. m5stackで再生中のSpotifyの曲の画像が出るようなのを作ってみた pic.twitter.com/59qnbYn47M— がらえもん (@garaemon) 2018年4月14日 その過程で、micropythonに入ってい…

emacsで選択範囲or現在行のpythonを評価する

elpyを使っています. elpyやemacs付属のpython-modeでも, pythonのインタプリタをemacs上で起動することができ、大変便利だ. elpyの場合はM-x elpy-shell-switch-to-shell, python-modeならM-x run-pythonでpythonインタプリタを立ち上げることができる. ema…

emacsのmarkdown-modeのcode blockでフォントを変えない

emacsのmarkdown-modeはcode blockでフォントが変わるのが嫌だったのでこれを変更しないように設定。 emacを使うような人は、デフォルトで等幅フォントを指定してるんじゃないのかな? ;; Do not change font in code block (set-face-attribute 'markdown-co…

emacsのmarkdown-modeでcode blockをsyntax higlightする

emacsでmarkdownを書いてる時に、markdown-modeでcode block (triple backquotes) にsyntax higlightを有効にできる. (setq markdown-fontify-code-blocks-natively t) コレはかなり良さそう. before after

emacsで毎日のメモのためのmarkdownを自動的に作成する

メモをとるのにmarkdownはとても便利. emacsで作業中のメモをとるためのmarkdownを日別に自動的に作成するemacs lispのコード. ~/daily-notes/の下に日付の入ったファイル名を自動生成する. また、先頭に日付も自動的に挿入するようにしている. (defvar dail…

emacsのC-sをhelm-swoopで置き換える

最近emacsの検索のキーバインドであるC-sをhelm-swoopに置き換えてみている. helm-swoopに関する説明はこちらが詳しい emacs.rubikitch.com C-sのたびにバッファがかちゃかちゃしてうるさい気もするけど、使いこなせれば作業効率が上がりそうな気がする. 僕…

Coachellaのyoutube配信

“When you said you would take me to California for the first time, I thought you meant Coachella or Disneyland." Black Pantherでシュリが「カリフォルニアに連れて行ってくれるって言うから、コーチェラかディズニーランドかと思ったのに」というセ…

Cam O'bi "TenderHeaded ft. Smino"

Cam O'biというアーティストの"TenderHeaded ft. Smino"という曲がメロウで大変素晴らしい www.youtube.com Cam O'biというアーティストの名前は聞いたことがなかったが、どうやらChance the Rapperの曲にプロデューサとして参加しているようだ. soundcloud.…

Cardi Bの新譜がすごい

Cardi Bの新譜, というかデビューアルバム Invasion of Privacy が4月6日にリリースされた. open.spotify.com 参加アーティストも豪華だし、とにかくアルバムとしてのクオリティが高い. 個人的にはやはりChance the RapperとのBest Lifeがお気に入り. open.s…

emacsの文字サイズの変更をよくあるキーバインドにする

emacsで文字サイズを大きくおよび小さくするキーバインドはC-x C-+, C-x C--に割り振ってあるが、最近は(macだと) ⌘-+/-に割り振ってあるものが多い. 以下のように.emacsに書いておくと, macならそのようなキーバインドになる. Linuxだと\Mのかわりに\Cにし…

auto-save-buffers-enhancedを使っているとtramp-modeがハングする

tramp-modeはemacsでssh越しにリモートのファイルを編集することができて大変便利な機能だ. しかし最近でtramp-modeを利用してssh越しにファイルを開こうとするとemacsが固まってしまい困っていた. 長いこと問題を放置してきたけれども, 色々調べてみるとaut…

Visual Studio CodeのJupyter extensionからPlotlyを使う

Visual Studio CodeのJupyter extensionをすごく便利なのだが、そのままだとPlotlyを利用することができない. これはRequire.jsが読み込まれていないからなので、以下のように読み込ませてあげると良い. from IPython.display import HTML html_code = ''' <script src="//cdnjs.cloudflare.com/ajax/libs/require.js/2.3.5/require.min.js"></script> …