うたた寝ねね

趣味とか技術とか憂鬱とか。

ささやかな魔法の話

数日前に、ツイッターでこんな発言をしました。

「ループ&ループ」の”積み上げる弱い魔法”は、「今を生きて」の”数十年で消える弱い愛の魔法”とか、「マジックディスク」の”いまひとつ抑揚の無い日々に魔法を仕掛けて”に繋がる気がして…… twitter
ゴッチの言う”魔法”ってのは、すごく強くて世界を全部書き換えるような魔法じゃなくて、ささやかで自分の周りの人たちだけに届くような、そんな弱いものなんだけど、だからこそみんながこの魔法を使うことが出来るんじゃないか、そんなふうに思えるんだよね。 twitter

今日で2年経ったんですね。
僕の周囲はすっかり日常に戻ったように見えて、でもそれはたぶん、目をそらすことに慣れてしまっただけ。
2年前の僕は大学卒業間近で、学会発表を翌日にひかえていて、共同研究をしていました。
就職決まってなかったし、ただでさえ前途が見えない状況で、もうこのままどうにかなってしまうと思った。

2年経った僕はようやく仕事も始めて、少しずつ新しい生き方を模索しているところ。
震災前も後もみんなの根底にあるのは、”幸せに生きたい”とか、そういうささやかな望みで、
すぐそばにあるかもしれないものに気付けないこともたくさんあるし、隣の人に奪われてしまうこともあって。
絆だなんだと言いながら、僕は自分自身のことで精一杯で、誰かを幸せにするなんて考えもできなかった。

僕は今の生き方を幸せだと思えるのか、これからもっと幸せになれるのか。とか。
生きている意味を見つけられないままって、すごく失礼な生き方なんじゃないのかな。とか。
14時46分に社内で黙祷を捧げながら、目を開けた瞬間にまた世界の様子が変わってしまうような、
眩暈のような怖さを感じながら、そんなことを考えてました。

とてもちっぽけだけど、死にたいと思う理由よりも、生きていたい理由が先に浮かぶようになったから、
これからはもう少し誰かのために生きられたらなあ、と思ってたり、そう思われたかったり。
僕もあの子も名も知らぬ誰かも、手を握りあって幸せになれる、そんなささやかな魔法が使えるって信じてるよ。

CORESERVERにRuby on Railsをインストールしたメモ

現時点でのCORESERVER標準のRubyは1.8.5です。
ですが、1.8.5のまま使おうとしたらRubyGemsの最新版を入れられなかったので、
仕方なくRuby自体も最新版(1.9.3)を使用するようにしました。
加えてRuby 1.9.3はlibyamlが必要と言われたので、先にインストールします。

以下は導入メモ。
hogehoge はCORESERVERのFTP/SSHアカウント名、s00は借りているサーバのナンバーです。
また管理画面でSSHの登録をお忘れなく。作業はTera Termで行いました。
CORESERVERは時間のかかる処理を途中でKillしてしまうので、makeは複数回繰り返す必要があるかもしれません。

続きを読む

Firefoxのショートカットキーカスタマイズ

Firefox+Keyconfigの設定をメモ。
動作確認はWaterfox 16.0.1です。Waterfoxは64bitネイティブ動作するFirefox派生ブラウザ。
なので下記ショートカットはFirefoxでも当然動きます。
たぶんKeySnailでも同じようなことができるはず。

■ページ内検索の表示/非表示切り替え
Ctrl+Fに割り当てています。
デフォルトだとCtrl+Fで表示、Escで非表示なのですけど、同じショートカットでトグルできるほうが直感的なので。

[crayon title="ページ内検索の表示/非表示切り替え"] if (document.getElementById("FindToolbar").hidden) gFindBar.onFindCommand(); else gFindBar.close(); [/crayon]

これでも動きます。

[crayon title="ページ内検索の表示/非表示切り替え"] if ("isFindBarVisible" in gFindBar) gFindBar.isFindBarVisible() ? gFindBar.closeFindBar() : gFindBar.onFindCmd(); else gFindBar.hidden ? gFindBar.onFindCommand() : gFindBar.close(); [/crayon]

■選択した文字列をGoogleで検索
Alt+Gに割り当て。
選択している文字列をGoogleで検索します。

[crayon title="選択した文字列をGoogleで検索"] var win = window._content; var doc = win.document; var sel = win.getSelection( ); var s = ''; var sURL = ''; if ( !sel.rangeCount || sel.getRangeAt(0) == '' ) return; for ( i = 0; i < sel.rangeCount; ++i ) { stmp = sel.getRangeAt(i).toString().replace( /^\s+|\s+$/g, '' ); s += (encodeURIComponent(stmp) + '+').toString().replace(/%20/g,'+'); } s = s.replace(/++$/g,''); sURL = 'http://www.google.co.jp/search?q=' + s + '&lr=lang_ja'; gBrowser.selectedTab = gBrowser.addTab( sURL ); [/crayon]

■ページのタイトルとURLをクリップボードにコピー
Alt+Tに割り当て。
”タイトル - URL” という書式でコピーされます。

[crayon title="ページのタイトルとURLをクリップボードにコピー"] var w = window._content; var d = w.document // Text format var txt = d.title + ' - ' + d.location.href; const CLIPBOARD = Components.classes["@mozilla.org/widget/clipboardhelper;1"].getService(Components.interfaces.nsIClipboardHelper); CLIPBOARD.copyString(txt); [/crayon]

■Firefoxを再起動
Alt+Rに割り当て。
占有メモリが大きくなったらこれで再起動してます。

[crayon title="Firefoxを再起動"] const nsIAppStartup = Components.interfaces.nsIAppStartup; var os = Components.classes["@mozilla.org/observer-service;1"].getService(Components.interfaces.nsIObserverService); var cancelQuit = Components.classes["@mozilla.org/supports-PRBool;1"].createInstance(Components.interfaces.nsISupportsPRBool); os.notifyObservers(cancelQuit, "quit-application-requested", null); if (cancelQuit.data) return; Components.classes["@mozilla.org/toolkit/app-startup;1"].getService(nsIAppStartup).quit(nsIAppStartup.eRestart | nsIAppStartup.eAttemptQuit); [/crayon]

■Firefoxを終了
Alt+Xに割り当て。
あぼーん。

[crayon title="Firefoxを終了"] goQuitApplication(); [/crayon]

チラシの裏

僕は新聞を取っていないので、そもそも最近のチラシを知らない。
なので片面印刷で裏に書き込めるようなチラシが、いまだに存在してるのかを知らない。
それとも両面刷りの裏に、書き込むスペースを探すのだろうか。
それ以前に両面刷りに裏表の区別はあるのかも疑問なところだ。
チラシの裏に書いてろ、という言葉はいつまで通じるのだろう。

書き込むチラシがない僕は、言葉を飲み込んで、たまに吐き出す。
その場所は一貫していなくて、大学の友人に愚痴るときもあれば、
ツイッターに140文字ギリギリまで書き込んで疎まれることもあれば、
うまく言葉にできないままガムのように噛み続け、紙に包んで捨てることもある。

表裏の二面性というのはアナログレコードやカセットテープのA面B面だったり、
リアルとネットだったり、建て前と本音だったり、アウトドアとインドアだったり、
あるいは朝だったり夜だったり、人生に対する余生の割合だったりするのかもしれない。

表面を指でなぞっていけば、いつか裏側に辿り着けるような、
紙を半分だけねじって両端を止めたような、
残念ながらそんな単純な世界ではないことは、ぼんやり生きていても分かる。

誰かの肌をいくら柔らかくなぞり続けていても、それだけでは裏側に触れたりできない。
きっと誰しも心の内側は葉書のように個人情報保護シールで守られていて、
それを剥がすための術を知らないし、無理矢理剥がそうとすれば読めなくなる。

それはさながら地上にいながらにして、月の反対側を覗き込もうとするような感覚。
ひどく主観的な概念であるところの表裏は、3次元の世界に生きている以上離れられないし、
4次元の世界から見下ろせば、ある時点での表の僕と、
それ以外の時点で膝を抱えてうずくまる裏の僕が見えるのかもしれない。

シャワーを浴びながらこんなことを考えていた。
裏面に書き込めるようなチラシは持っていない。
洗い落としたシャンプーと一緒に、排水溝から流れてしまえ、鬱。

お知らせ

5月の文学フリマで頒布した本に収録した作品のうち、
今の時期にちょうどいい話がありましたので、pixivに公開しておきました。
10月いっぱいくらい公開しておこうと思います。
せっかくなのでこのまま公開しておこうかな……

◇こちら◇ からどうぞ。

(10月中はこの記事を先頭に固定しておきます)

twitter用CSS(不要部分非表示、DMアイコン表示、ミュート)

  • 2012/10/10 userstyles.org に公開しました。 Fix twitter UI / twitter mute user
  • 2012/09/28 DM送信可能なユーザにアイコン表示してみました
  • before   これが   after こんな感じになります。
  • 2012/09/28 日本語ハッシュタグ非表示の修正
  • 2012/09/27 t.co展開後の長いURLを省略せず表示するようにしました
  • 2012/09/27 絶対時間表記の際、ユーザ名が長いと回り込んでうざいので、省略するのを追加
  • 2012/09/26 日本語UI時ツイート欄下の広告が消えてなかったので #j_ad を追加
  • 2012/09/24 プロモツイートが消し切れてなかったので div[data-promoted="true"] を追加

余裕無いときに限って余計なことしたくなるよね。
体重落ちすぎてる気がするので高カロリー摂らないと消滅も近い……

twitterのウェブUIで、不要なものを消したりするアレ。英語UIで確認してます。
言語設定が英語だとそもそもツイート欄下の広告出ないから、そこに広告出てるの知らなかった。

FirefoxのStylishアドオン用に書いてます。
ChromeやSafariにも同様の拡張があると思うので、ちょっと変えれば使えるはず。

続きを読む