Skip to content

Instantly share code, notes, and snippets.

t9md t9md

Block or report user

Report or block t9md

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View 英語の言語習得。雑感
- リスニング能力は総合力。ここが本当の実力
- スピーキングは大分後回しで良い、勝手にレベルアップする(という理論、事例が多数あり)
- 何故かと言うと、自然に喋れるためには Grammar intuition と パターン蓄積が必須だが、これは大量Inputによって得られるから。
- 常にスピーキング能力はリスニング能力より下になる。これは当たり前の話。日本語でもそうだよね?
- パターン蓄積とは、特定の事言いたい場合の言い方の例を溜めること。 例: お腹空いた vs I am hungry
- なので、大量のリアルな音声インプットが必須
- このとき、50%しか、あるいは20%しか分からなかったとき、それで完璧主義/潔癖主義に陥らないこと。
- 曇った眼鏡でも楽しめるはず。そして続けていれば20%→21%になる。それはレンズの曇りが晴れてより楽しめるようになる。
- こういう姿勢で臨めば自分が興味がある分野の動画/音声を、"楽しんで毎日聞き続ける"(お勉強ではなく)ことが可能になる。
- 楽しめる→継続できる→慣れる→解像度が上がる(キャッチできる部分が増える)→より楽しめる→勝手に少しずつレベルアップする
View copy_reduced_image.rb
def copy_reduced_image(file)
puts "#### #{file}"
File.readlines(file).each do |line|
word = line.split("\t")[0]
cmd = "ffmpeg -y -i slideshow/imgs/#{word}.png -vf 'scale=1334:-1' -q 2 icloud-app/imgs/#{word}.png"
system cmd
# puts cmd
end
end
View audioAPI-example.js
window.AudioContext = window.AudioContext || window.webkitAudioContext
class AudioPlayer {
constructor () {
this.context = new AudioContext()
}
// Audio 用の buffer を読み込む
getAudioBuffer (url, callback) {
const req = new XMLHttpRequest()
req.responseType = 'arraybuffer' // array buffer を指定
@t9md
t9md / USAGE.md
Last active Feb 1, 2019
extract field since awk is very awkward for me.
View USAGE.md

help

$ ruby extract-fields.rb -h
Usage: extract-fields [options]
    -r, --report                     Report field configuration from very 1st line. (default: false)
    -s, --split VALUE                string value (default: "\t")
    -j, --join VALUE                 string value (default: "\t")
    -f, --fields one,two,three       fields to extract (default: [])
View batch-image-retrieve.py
# -*- coding: utf-8 -*-
import sys
import os
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
def save_snapshot(driver, word):
fname = 'imgs/%s.png' % word
View atom.js
// get tree sitter supported grammar
atom.grammars.treeSitterGrammarsById
@t9md
t9md / keymap.cson
Created Apr 11, 2018
recover original ctrl-c on win when using with vim-mode-plus.
View keymap.cson
'atom-text-editor':
'ctrl-c': 'core:copy'
@t9md
t9md / bookmarks.js
Created Feb 24, 2018
narrow-bookmarks provider
View bookmarks.js
const {Range} = require('atom')
const Provider = require('./provider')
const {compareByPoint} = require('../utils')
const Config = {
showProjectHeader: true,
showFileHeader: true
}
// HACK: Core bookmarks package
View tab-to-cofirm-2nd-candidate.md

To mafke tab confirm 2nd complete candidates.

  • init.js
atom.commands.add("atom-text-editor", "user:autocomplete-plus-select-next-and-confirm", function() {
  const editor = this.getModel()
  atom.commands.dispatch(editor.element, "core:move-down")
  atom.commands.dispatch(editor.element, "autocomplete-plus:confirm")
View renderItems.js
renderItems () {
if (this.items.length > 0) {
const className = ['list-group'].concat(this.props.itemsClassList || []).join(' ')
if (this.observer) {
etch.getScheduler().getNextUpdatePromise().then(() => {
const elements = Array.from(this.refs.items.children)
// Use initially rendered last item's height as height of all fake item
// Refering 1st item is bad idea, since 1st item tend to be rendered differently.
You can’t perform that action at this time.