Skip to content

Instantly share code, notes, and snippets.

Avatar

Ken Wakita wakita

View GitHub Profile
@wakita
wakita / speaker.py
Created June 1, 2023 08:36
ゼミの発表順を決めるためのツール
View speaker.py
#!/usr/bin/env python3
import datetime
import random
random.seed(datetime.date.today().strftime('%Y-%m-%d'))
people = 'のびた じゃいあん どらちゃん すねお'.split() # people には空白区切りでメンバーの名前を記入する
random.shuffle(people)
print('\n'.join(['\n# 今日の発表順\n'] + people))
@wakita
wakita / colors.html
Last active April 7, 2023 06:23
CIELch → RGB: 三色
View colors.html
<div background-color="0xFFCDE4">
Red
</div>
@wakita
wakita / refresh.sh
Last active June 12, 2022 08:53
macOS のファイルのメタ情報の再設定
View refresh.sh
cd /var/folders; for d in *; do if [ "$d" != zz ]; then sudo rm -rf "$d"; fi; done; echo 'macOS refreshed!'
@wakita
wakita / Readme.md
Last active March 30, 2022 06:19
Jupyter Lab + IJulia + PlotlyJS の環境構築
View Readme.md

Jupyter Lab + IJulia + PlotlyJS の環境構築

いくつかの Python 基盤を利用した Jupyter の上で IJulia を介して PlotlyJS が動作することを Apple M1 の ARM 環境で検証。

詳しい解説はQiita 記事

環境構築

  1. 指定したバージョンの Python に対応した venv 仮想環境を作成し、そこに Jupyter Lab をインストール
  2. Jupyter Lab を PlotlyJS に対応させるための拡張機能をインストール
View gform.py
#!/Users/wakita/.venvs/vis/bin/python
# Requirements: pandoc and imported Python modules
import json
import os
from pathlib import Path
import gspread
import pandas as pd
View today.snippets
# today
# today 1[d]: tomorrow, today 2[d]: the day after tomorrow
# today -1[d]: yesterday, today -2[d]: the day before yesterday
# today 1w: this day next week, 2w: two weeks later today, -2w: two weeks ago today
# today 1m: one month later today, 2m, -3m
# today 1y, -10y
snippet "today *(([+-]?[0-9]+)?)([dwmy]?)" "The date relative to today" r
`!p
import datetime
from dateutil.relativedelta import relativedelta
View vsjs.sh
#!/bin/zsh
# 以下のイニシャルは脇田のものです.自分(校正者)のイニシャルに変更して下さい.
initial=kw
dl() {
url=$1
file=`echo $url | sed -e 's|.*vsj21-||' -e 's/\?.*//'`
comment=`date "+-%m%d-$initial"`
file=`echo $file | sed -e "s/.docx/$comment.docx/"`
@wakita
wakita / install.sh
Last active May 29, 2022 02:27
nginx のインストールと初期設定 (macOS 用): install.sh を実行するだけ。docroot は ~/Sites
View install.sh
#!/bin/sh
# nginx について、研究室の scrapbox に書きました。
# https://scrapbox.io/smartnovax/nginx#60b5828d93b2e9000065e3e4
brew list nginx >& /dev/null || (echo "nginx が見つからないのでインストールします。"; brew install nginx)
# nginx の設定ファイルのなかの環境依存の部分を envsubst コマンドで変換したい。
# Homebrew の gettext パッケージは envsubst コマンドを含んでいる。
brew list gettext >& /dev/null || (echo "envsubst コマンドが見つからないので、gettext をインストールします。"; brew install gettext)
@wakita
wakita / Readme.md
Last active October 23, 2020 14:22
Word Cloud Widget
View Readme.md

@kabe くんからもらった Word Cloud データを Bokeh で表示するまで。

  • CSV のなかの第二欄 font-size という名称が JavaScript の識別子として不適切なので font_size に変更した.本当は Python で対応するべきだけれども,面倒だったので.

  • SVG の DOM 木の構成は簡単だったけれども,最初,SVG が表示されなくて慌てた.いろいろ調べたところ,XML の名前空間というものがあって,HTML と SVG では名前空間が異なるらしい.細かいことはわからないけれども createElementNS('http://www.w3.org/2000/svg', SVGタグ名) を使わないといけないらしい.

@wakita
wakita / Readme.md
Last active September 30, 2020 05:38
オンライン発表の時代のタイムキーパー用ツール
View Readme.md

オンライン発表の時代のタイムキーパー用ツール

Zoom 時代の発表会運営をスムーズにするためにタイムキーパー用に作ったツールです.

  1. 発表開始からの経過時刻を秒単位で表示します.
  2. 発表開始から指定された時間が経過すると,作業内容の指示を発話できます.タイムキーパーは時計を常時,気にかける負担から開放されます.
  3. 発表開始から指定された時間が経過すると,定型的な文章をコピーバッファにコピーします.発表参加者と共有しているチャットツールにペーストして,座長,発表者,参加者に時間経過を通知できます.

必要なパッケージのインストール