Karabiner ElementsでNICOLA配列(親指シフト)

6月 11th, 2018
[`evernote` not found]
Facebook にシェア

macOS Sierra以降、キーボードカスタマイズツールの「Karabiner」が動作しなくなり、親指シフト入力(NICOLA)のために、Lacailleに乗り換えた。
Karabinerの方は、Karabiner Elementsになって着々とバージョンアップし、最近のバージョンではsimultaneous、つまり親指シフトで必要な同時打鍵のためのオプションが追加された。しかも、NICOLA配列のための設定ファイルまで用意されている! これなら、Lacailleを使わずKarabinerだけで親指シフト環境を実現できる……と思ったら、残念、一部の配列だけを記述したサンプルでした。
しょうがないので、全部の配列を記述した設定ファイルを作成。システムに近いレベルで、キー入力の変換を行っているため、キーの取りこぼしがなくなり、動作もキビキビしている感じ。

(※ダウンロードして解凍した「Japanese-NICOLA.json」ファイルを、“~/.config/karabiner/assets/complex_modifications”に保存。Karabiner Elementsの「Preferences」→「Complex Modifications」タブ→「Rules」で、「Add rules」ボタンをクリック。リスト内から「Japanese NICOLA」の「Enable」ボタンをクリックして有効にする)

動作検証はMacBook Pro 13インチ/タッチバーなし、JIS配列モデル(2017)にて。「英数」キーを親指左シフト、スペースキーを親指右シフトとして使う設定。

コピー&ペーストで記述を追加していったら、設定ファイルが100KBを超えてしまったんだけど、はたしてこれでいいんだろうか。

P.S. Lacaille、Karabiner Elementsの作者さんに感謝です!

ヘトヘトになっても成果は出ない!ピョートル・フェリークス・グジバチ『Google流 疲れない働き方』

3月 12th, 2018
[`evernote` not found]
Facebook にシェア

「こんなにヘトヘトになるまで働いているのに、成果は全然出なくて、給料は上がらない……」なんて思っている人はいませんか?
でも、本当は逆。ヘトヘトになっているから、成果が出ないんですよ。
ポーランド出身で元Google社員のピョートル・フェリークス・グジバチが語る、究極の「心と体の整え方」。SBクリエイティブより発売中!(山路は構成をお手伝いしました)

■目次:

  • 序章 なぜ、毎日疲れるだけで、成果も上がらないのか
  • 1章 3倍の成果を出すための「集中力」と仕事のマネジメント
  • 2章 疲れる組織と疲れない組織
  • 3章 確実に自分をチャージする食事・睡眠・運動の習慣
  • 4章 疲れない働き方

勤続年数で決まる給与、果てしない残業……そんな会社にいるならどうする?青野慶久『会社というモンスターが、僕たちを不幸にしているのかもしれない。』

3月 8th, 2018
[`evernote` not found]
Facebook にシェア


成果ではなく勤続年数で決まる給与・役職や、果てしない残業、転勤など「社員を我慢させて働かせる仕組み」で回ってきた日本の会社。
・代表(社長)の夢やビジョンが見えない
・「お客様第一」と言いながら、現場では今月のノルマ達成の話ばかり
・若手社員のモチベーションが低く、新しいアイデアが出てこない
そんな会社にあなたが今いるとしたら、どうすべきか?

会社で楽しく働くために、サイボウズの実験から見えてきた“法則"=「モチベーション創造メソッド」と「フラスコ理論」とは?

『会社というモンスターが、僕たちを不幸にしているのかもしれない。』は、やりがいをもって働きたい人、転職を検討している人、仕事とプライベートの両立に悩んでいる人に加え、チームのマネジメントに悩むリーダー層にも今後の指針を与えてくれる1冊です。(山路は構成を担当しました)

第1章 仕事が楽しくないのは、カイシャというモンスターのせいかもしれない
第2章 カイシャで楽しく働くためには、こう考えればいいかもしれない
第3章 楽しく働けないカイシャは、どんどん弱っていくかもしれない
第4章 サイボウズでやってきた実験は、意外と参考になるかもしれない
第5章 未来のカイシャでは、「やりたいこと」につき進む人の価値が上がっていくかもしれない

『Googleの72時間』の韓国語版が発売されました

2月 1st, 2018
[`evernote` not found]
Facebook にシェア

随分前に、林信行氏といっしょに書いた『Googleの72時間 東日本大震災と情報、インターネット』の韓国語版が発売になりました。
日本語版の発売が2013年なので5年近く前の書籍なんですが、翻訳版が出るというのはうれしいですね。
日本語←→韓国語の機械翻訳は10年くらい前でもかなりの精度だったようですが、最近はさらに精度が上がって翻訳コストが下がっているのかもしれませんね。昔書いた本の韓国語版が出たという知り合いの話もちらほら聞きますし。

30年間の平成消費を俯瞰する、原田曜平の『平成トレンド史 これから日本人は何を買うのか?』

1月 10th, 2018
[`evernote` not found]
Facebook にシェア

バブルの絶頂期で始まった平成時代。しかし長引く不況、リーマンショック、東日本大震災などで消費は冷え込んでいった。消費者のマインドはどのように変化したのか? そして今後、日本人は何を買うのか?
『ヤンキー経済』などで知られるマーケティングアナリスト、原田曜平が、平成のトレンドと、これからの消費の可能性を語る『平成トレンド史 これから日本人は何を買うのか?』、1月10日発売です。(山路は構成を担当しました)

<目次>
・第1期:1989~1992年(平成元年~4年)不自由と享楽
・第2期:1993~1995年(平成5年~7年)デフレと団塊ジュニア
・第3期:1996~2000年(平成8年~12年)ネットとケータイ
・第4期:2001~2006年(平成13年~18年)変化への期待
・第5期:2007~2012年(平成19年~24年)失望と不安
・第6期:2013~2017年(平成25年~29年)SNSと炎上

Markdownの見出しレベルを変更するスクリプト(CotEditor用)

1月 9th, 2018
[`evernote` not found]
Facebook にシェア

CotEditorでMarkdownのテキストを書いている時、見出しレベル(#で始まる行)をショートカットキーで変更できると便利そうだと思ったので、スクリプトを書いてみました。
下記のスクリプトをmacOS標準のAppleScriptエディタで入力し、適当なファイル名を付けて、CotEditorのスクリプトフォルダに保存します。
ファイル名例に付いている「^@k」、「^@j」というのはショートカットキーの指定(CotEditorの機能)。ここでは、control+command+kで見出しレベルを下げる、control+command+jで上げるように設定しています。

見出しレベルを下げる(md_heading_down.^@k.applescript)

tell application "CotEditor"
   if exists front document then
      tell front document
            if coloring style is not in {"Markdown"} then
              quit
           end if
         
           -- get selection's positional data
         set {locLength, selectionLength} to range of selection
         set {locLines, selectionLines} to line range of selection
          set looseSelect to 0
           -- whole lines select
          if (selectionLines is greater than or equal to looseSelect as number) then
             set line range of selection to {locLines, selectionLines}
              set {locLength, selectionLength} to range of selection
         end if
         
           -- ignore last line break
          if contents of selection ends with "
" then set range of selection to {locLength, selectionLength - 1}
          
           -- get contents
            set theSelection to contents of selection
          if rich text 1 of theSelection is equal to "#" then
                set contents of selection to "#" & theSelection
            end if
     end tell
   end if
end tell

見出しレベルを上げる(md_heading_up.^@j.applescript)

tell application "CotEditor"
   if exists front document then
      tell front document
            if coloring style is not in {"Markdown"} then
              quit
           end if
         
           -- get selection's positional data
         set {locLength, selectionLength} to range of selection
         set {locLines, selectionLines} to line range of selection
          set looseSelect to 0
           -- whole lines select
          if (selectionLines is greater than or equal to looseSelect as number) then
             set line range of selection to {locLines, selectionLines}
              set {locLength, selectionLength} to range of selection
         end if
         
           -- ignore last line break
          if contents of selection ends with "
" then set range of selection to {locLength, selectionLength - 1}
          
           -- get contents
            set theSelection to contents of selection
          if (selectionLength ≥ 2) and (rich text 1 thru 2 of theSelection is equal to "##") then
              set contents of selection to rich text 2 thru -1 of theSelection
           end if
     end tell
   end if
end tell

ripgrep(rg)の検索結果をCotEditorで開いてタグジャンプ

12月 29th, 2017
[`evernote` not found]
Facebook にシェア

指定した文字列を含むテキストファイルを、特定のフォルダ内から検索。テキストエディタで検索結果を開き、該当ファイルの該当行を一発で開けるようにしてみました。
テキスト検索ツールとしてはripgrep、テキストエディタはCotEditor(macOS用)を使っています。

事前準備

ripgrepのインストール

Homebrewをすでに使っているなら、ターミナルから

brew install ripgrep

と入力するだけ。

テキストエディタCotEditorのインストール

CotEditorは、Mac App Storeからインストールできる。

Satimage osaxをインストール

AppleScriptのスクリプトで正規表現を処理するために、Satimage osaxをインストール。

ターミナルからCotEditorを起動できるようにする

CotEditorには「cot」というコマンドラインツールが用意されている。ターミナルから

ln -s /Applications/CotEditor.app/Contents/SharedSupport/bin/cot /usr/local/bin/cot

と入力してシンボリックリンクを作成する。

CotEditor用のスクリプトをインストール

下記のスクリプトを、macOS搭載の「AppleScriptエディタ」で入力して適当なファイル名を付け、CotEditorのスクリプトフォルダ(“~/Library/Application Scripts/com.coteditor.CotEditor”)に保存。私は「tagjump.@~j.scpt」という名前を付けた。

(※”@~”と付いているのは、command+option+jというショートカットキーでこのスクリプトを呼び出せるようにするため。詳しくはCotEditorのヘルプを参照)

use AppleScript version "2.4"
use scripting additions
use framework "Foundation"
tell application "CotEditor"
    if exists front document then
        tell front document
            
            -- get selection's positional data
            set {locLength, selectionLength} to range of selection
            set {locLines, selectionLines} to line range of selection
            set looseSelect to 0
            -- whole lines select
            if (selectionLines is greater than or equal to looseSelect as number) then
                set line range of selection to {locLines, selectionLines}
                set {locLength, selectionLength} to range of selection
            end if
            
            if contents of selection ends with "
" then set range of selection to {locLength, selectionLength - 1}
            
            set theSelection to contents of selection
            set aRes to find text "^(/.+):([0-9]+):" in theSelection using "/usr/local/bin/cot \"\\1\" -l \\2" syntax "RUBY" with regexp, all occurrences and string result
            if aRes is not equal to {} then
                delay 0.1
                do shell script aRes
            end if
            
        end tell
    end if
end tell

使い方

ターミナルからripgrepで検索を実行

ターミルから

rg -n -e 検索したいパターン 検索対象フォルダのフルパス | cot

と入力する。
フルパスを手入力するのは面倒くさいけど、Finderから対象フォルダをターミナルにドラッグ&ドロップすると簡単に入力できる。

検索結果がCotEditorで開かれる。

Ripgrep coteditor 1

CotEditor上からスクリプトを実行

開きたいファイル名のところにカーソルを移動し、スクリプトメニューから「tagjump.@~j.scpt」を実行(この場合は、command+option+jキーで実行できる)

該当ファイルの該当行がCotEditorで開かれる。

(2018/01/03追記)フルパスを書くのが面倒なら、例えば下記のようなシェルスクリプト(rgcot.sh)を書いておいて、「rgcot.sh 検索パターン」のように実行すると便利。この例では、カレントディレクトリ以下から検索パターンを検索し、結果をCotEditorで開く。

#!/bin/sh
abs_path=$(cd . && pwd)
rg -n -e $1 $abs_path | cot

今アニメはゴールドラッシュ!岡田斗司夫の『大人の教養として知りたい すごすぎる日本のアニメ』

12月 29th, 2017
[`evernote` not found]
Facebook にシェア


12/29、岡田斗司夫氏の新刊『大人の教養として知りたい すごすぎる日本のアニメ』(KADOKAWA)が発売されます(山路は構成を担当しました)。

日本のアニメ業界は、未曾有のゴールドラッシュを迎えようとしています。
昔から「アニメは日本の誇る文化」といわれてはきましたが、ようやくここにきて、利益を生み出す産業、ビジネスとして世界から認知されるようになってきたといえるでしょう。
国の主要産業について、ある程度の教養を大人がもっておくべきなのは当然のことです。ワインについて何にも知らないフランス人とか、ダサいファッションのイタリア人に会うと、ちょっとがっかりしますよね? 教養とは、知識をベースに自分なりの考え方、見方ができる能力のことです。(まえがきより)

世界中の人たちが日本のアニメを夢中になり、グローバル企業が巨額の予算をつぎ込んでいる今、アニメを語るのは必須の「大人の教養」。この本で語っている名作の構造や演出の妙、秘められた思想といったポイントを押さえておけば、どんなアニメも10倍面白く観られる、教養人になれるはずです!

■目次
第1章 すべての映画はこれからアニメになる――『シン・ゴジラ』という庵野秀明の革命
第2章 世界標準の「ルック」とはどういうものか――『君の名は。』のもつ宇宙サイズの構造
第3章 誰も語らなかったジブリ作品の「変遷」――原作版『風の谷のナウシカ』から読み解く
第4章 緻密な演出が「優れた」SFドラマを生む――『機動戦士ガンダム』と富野由悠季の思想
第5章 そしてアニメは新次元に到達した――『この世界の片隅に』のすごすぎるリアリティ

知能は遺伝する、この事実とどう向き合うか?『日本人の9割が知らない遺伝の真実』

12月 5th, 2016
[`evernote` not found]
Facebook にシェア

12/6に発売される『日本人の9割が知らない遺伝の真実』(安藤寿康著、SB新書)の執筆をお手伝いしました。
現代社会の格差や不平等の根幹には、知能をはじめとした「才能」の遺伝が大きく影響していることが行動遺伝学によって明らかになってきています(橘玲氏のベストセラー『言ってはいけない』も安藤教授の研究を元ネタの1つにしています)。
遺伝と聞くと、「才能は遺伝がすべて」「勉強してもムダ」「遺伝の影響は一生変わらない」と思われがちですが、それは誤解。
けれど「努力しないヤツが悪い」という自己責任論も同じくらい間違っています。
では、私たちは遺伝とどう向き合えばいいのか?
子供の教育、そして世界中で拡大している格差を考える上でも、お読みいただければ幸いです。立ち読み版も用意しましたのでぜひ。

■目次
○第1章:不条理な世界
・「かけっこ王国」の物語
・生まれつきの才能で決まる不条理
・悪名高い優生学
・遺伝の影響を実証的に調べる行動遺伝学
○第2章:知能や性格とは何か?
・知能を計測する知能検査
・「一般知能」という概念
・知能検査で測れる能力が知能
・産業革命以降、社会のあらゆる分野で抽象的指向が求められるようになった
・脳科学が示唆する知能の正体
・人間の性格を表す5要素
・性格は一次元の値で表せる?
○第3章:心の遺伝を調べる
・すべては双生児研究から始まった
・双生児ペアの結果から相関係数を算出する
・相関係数から遺伝と環境の影響を算出する
・共有環境や非共有環境とは何なのか?
・人間の行動のほとんどは、遺伝+非共有環境で説明できる
・見えてきた遺伝の真実
○第4章:遺伝の影響をどう考えるか
・親を見たら、子はわかる?
・家庭環境がどの程度子どもの才能に影響を与えるか?
・勉強するのはムダか?
・すべては生まれながらの才能で決まる?
・才能がある人は何が違う?
・遺伝的な素質はあとから変化することもある?
・収入と遺伝に関係はあるか?
・貧乏な家に生まれたら、もう諦めるしかない?
・優秀な家系は存在する?
・家柄のいい男、才能がありそうな男、結婚するならどっち?
・遺伝子検査でどこまで予測できる?
・私たちの知能は年々向上している?
・親の子育ては無意味か?
・教え方や先生によって学力は変わる?
・英才教育に効果はあるか?
・子どもの才能は、友達付き合いで決まる?
・犯罪者の子どもは犯罪者になる?
○第5章:あるべき教育の形
・あらゆる文化は格差を広げる方向に働く
・ほとんどの人が、科学的に不当な頑張りを強制されている
・求められる能力は、時代や状況に応じて変化する
・子どもから大人への転換点は12歳
・その人らしさが発現するタイミング
・過去の栄光に溺れるな、今の不幸を嘆くな
・スクールカーストは実社会の縮図ではない
・日本の学校はがんばっている
・「考える力」を持っていないのは誰か?
・小さな教育改革と大きな教育改革
・「無理のない」勉強をする
・「本物の知識」は専門家にしか教えられない
・学校は「売春宿」である
・「本物」に会わせることの重要性
○第6章:遺伝を受け入れた社会
・社会を「キッザニア化」せよ――社会の中を泳ぎ回って、自分の適性を探す
・本当に使える能力検定テストとは?
・生存戦略を考える――「好き」や「得意」がない人はどうすれはいいのか?
・顔の見える規模のコミュニティで、仕事を探す
・絶対優位と比較優位
・遺伝を受け入れた社会――新しい技術によって、社会の求める才能は多様化する
・制度による保障は必要
・ホモ・サピエンスはじっとしていられない
・かわいい子には旅をさせよ、そして自分も

強さの秘密がここにある!『Googleの決断思考: 世界最強チームは危機にどう対応しているのか』

10月 7th, 2016
[`evernote` not found]
Facebook にシェア

2011年3月11日。東日本大震災の発生から2時間も経たずに、最初の災害対応サービス「パーソンファインダー」が立ち上がり、数日のうちにいくつものプロジェクトが本格始動していきました。これらを可能にしたGoogleのスピード、組織力、柔軟性などその源は何だったのでしょうか?
そして、私たちは東日本大震災から何を学ぶべきなのでしょうか?
ITジャーナリストの林信行と、山路達也がGoogleや関係者を取材してまとめた単行本『Googleの72時間」が、このたびポプラ社より『Googleの決断思考: 世界最強チームは危機にどう対応しているのか』
として新書化されました。

■目次
○第1章:Googleは、どのように災害対応サービスを生み出したのか
1. 地震発生から1時間46分後に、最初のサービスを立ち上げる
2. 5000人のボランティアとのコラボレーション
3. 大手メディアや警察とも連携
4. これまでに例を見ない、テレビとネットの融合
5. 通行可能な道がわかるマップ
6. 被災地の衛星写真を人々に届ける
7. 被災地の状況をいち早く伝えるため、航空写真を独自に撮影
8. ボランティアとのコラボが生んだ生活救援サイト
○第2章:非常時から平常時に戻るために、Googleは何をしたのか
1. 被災地のニーズを探る
2. 被災地のビジネスを支援する
3. 「記憶」をデジタルで記録する
4. Yahoo! JAPANはどう災害に対応したのか
○第3章:非常時に発揮されたGoogleの強さは、どこから来るのか
1. Googleの柔軟なワークスタイル
2. Googleのプロジェクトの進め方
3. Googleの災害対応サービスのPR
4. 写真を支えた夜食のパスタ
○第4章:災害時に、ITをどのように活用できるのか
1. 被災地でITは役立ったのか
2. デジタルデバイドを乗り越える
3. 情報をより効率的に、より広く活用する
4. ネットが可能にしたリモート・ボランティア
5. 緊急時に正確な情報を得るために大切なこと
6. オープンデータで知見を共有する
7. 震災の教訓を未来に伝える
○第5章:東日本大震災、熊本地震を経てGoogleはサービスをどう進化させたのか
1. 東北から全国に広がる支援の仕組み
2. 熊本地震で生まれた新たな支援の形
○Googleの災害対応・復興支援サービス一覧