mieki256's diary



2013/06/05(水) [n年前の日記]

#1 [emacs] emacsをアップデート

Windows7 x64上で、NTEmacs をアップデート。 _GNU emacs windows(x64)バイナリパッケージ から emacs-23.4-x64-r954-133.msi をDL。今までインストールしてた版をアンインストールしてから、インストール。すんなりインストールできた。ありがたや。

本当は、emacs 24 を使ってみたかったのですが。新機能としてパッケージ管理機能なるものが追加されていて、elisp の導入が簡単になっているらしいので。ただ、ググってみたら、emacs 23 でも package.el を導入すれば同じことができるらしいので、今回は emacs 23 でもOKかなと。

せっかくだから色々インストール。

Zen codingをインストール。 :

_smihica/zencoding - GitHub から zip でDL・解凍。~/.emacs.d/ 以下に zencoding-mode.el をコピー。~/.emacs 等に、以下を追加。
;; ----------------------------------------
;; zencoding-mode
;; C-j or C-RET で展開

(add-to-list 'load-path "~/emacs.d/zencoding-mode")
(require 'zencoding-mode)
(add-hook 'sgml-mode-hook 'zencoding-mode)
(add-hook 'html-mode-hook 'zencoding-mode)
(add-hook 'text-mode-hook 'zencoding-mode)
(add-hook 'css-mode-hook  'zencoding-mode)

;; (define-key zencoding-mode-keymap "\C-z" 'zencoding-expand-line)
html:5 だの div#id2>ul>li*5 とか打ってから C-j もしくは C-Enter を打ったら展開されました。ありがたや。

展開直後はあくまでプレビュー状態で、「本当にコレでよければEnterを押せや」と言ってくるあたりが、他のエディタとは違う動作だなと。しかし、この仕様、どうなんだろ…。

打鍵数をわずかでも減らすことを目的として Zen coding が登場したのであろうことを考えると、無駄に打鍵数を増やしてしまうこの仕様はナシだと思うけど…。間違えて展開したら undo すればいいだけでは。意図通りに展開できる回数よりも、ミスする回数が多いなら、プレビューの効果はあるだろうけど。習熟すれば前者が多くなるはずで。慣れれば慣れるほど、全く無意味な一打を強要される状態に近づいてしまう。せっかく Zen coding を実装しながら、Zen coding の発想・アイデア・方向性を否定する奇異な仕様に思えたり。

もっとも、emacs の基本設計が腐っていて、undo制御がまともにできない可能性もあるのだろうか。意図通りに undo できないから、挿入する前に念押しするしかない…?

yasnippet.el もインストール。 :

_Emacs に、Zencoding.el と YASnippet.el の二つのスニペットをインストール - Goodpic_yasnippet.elをインストールしてみた - Clouder::Blogger を参考に作業。

_capitaomorte/yasnippet - GitHub から zip をDL・解凍して、~/.emacs.d/plugin/yasnippet/ というフォルダを作ってその中に全部コピー。~/.emacs 等に以下を追加。
;; ----------------------------------------
;; yasnippet

(add-to-list 'load-path "~/.emacs.d/plugin/yasnippet/")
(require 'yasnippet)
;; (yas/initialize)
(yas/load-directory "~/.emacs.d/plugin/snippets")
(setq yas/prompt-functions '(yas/dropdown-prompt))
(yas/global-mode 1)
(yas/initialize) を書いてしまうとエラーが出てしまうのだけど、今は (yas/global-mode 1) さえ書いとけば動作することになっているらしい。

package.el をインストール。 :

ELPA、と呼ぶらしい。Emacs Lisp Package Archive の略だそうで。

auto-install 導入済みの環境だったので、 _Emacs 23 に ELPA をいれて、magitを入れた - ふなむしは本の虫 が参考になりました。ありがたや。
M-x install-elisp http://tromey.com/elpa/package-install.el
と打てばインストールできるっぽい。ただ、バッファ上に該当elispがドンと表示された直後、「C-c C-c を押したらインストールするけど、それ以外ではキャンセルするよ」と下のほうで言われてることに最初気付かなくて、インストールされずに悩んでしまったけど、それ以外は、するすると。

~/.emacs の下のほうに、自動で色々追加されてたけど、若干修正して以下のようにしたり。
(when
    (load
     (expand-file-name "~/.emacs.d/elpa/package.el"))
  (setq package-archives
        '(("ELPA" . "http://tromey.com/elpa/")
          ("melpa" . "http://melpa.milkbox.net/packages/")
          ("gnu" . "http://elpa.gnu.org/packages/")
          ("marmalade" . "http://marmalade-repo.org/packages/")))
  (package-initialize))

本来は以下のような手順でもインストールできるらしい。けど、自分の環境では何故かエラーが出てしまった。どこかで手順を間違えたのだと思うけど。

_Emacsでプラグインを簡単にインストールするためのpackage.elを使ってみる - ブログのおんがえし
_Emacs Lisp を簡単にインストールするための package.el & MELPA #elisp #Emacs - Qiita [キータ]

package.el を使って、css-mode なるパッケージを試しにインストールしてみたけれど。インストール作業が、実に簡単で。
  • xyzzy の netInstaller
  • Notepad++ のプラグインマネージャ
  • Sublime Text 2 のパッケージインストール作業
  • Eclipse のプラグイン導入作業
みたいな感じ。この仕組み・作業手順に慣れてしまうと、今までのやり方がツラくなってくる。そのくらい素晴らしい。ありがたや。

でも、ネット接続してる環境じゃないと使えないあたりが、どこかで問題になりそうだけど。…まあ、その時は一つ一つ手作業で事前にDLしておけばいいのかな。今までのやり方が使えなくなったわけでもないし。

フォント設定を変更。 :

以下のページを参考にして色々試してみたのだけど。

_フォント設定 [12FF5B8 Wiki]
_フォント設定 - eggtoothcrocの日記

結局、以下のような記述を ~/.emacs に。
(set-face-attribute 'default nil :family "Source Code Pro" :height 104)
(set-fontset-font nil 'japanese-jisx0208 (font-spec :family "MeiryoKe_Gothic"))
(setq face-font-rescale-alist '(("MeiryoKe_Gothic" . 1.08)))
Adobe が公開してくれた、プログラミング作業向けの _Source Code Pro というフォントと、メイリオの幅を調整した _ MeiryoKe_Gothic が入ってる環境です。

ダミーテキストを挿入するelispをインストール。 :

英語圏においてダミーテキストと言うと、 _Lorem ipsum というのがメジャーらしいのだけど。 _EmacsWiki: Lorem Ipsum を使うと、emacs 上でもそのLoremナントカを挿入できるようで。

auto-install が入ってる環境なので、
M-x auto-install-from-emacswiki
と打って、表示されたリストから Lorem ipsum を選んでインストール。~/.emacs には、 _Emacs Reboot #10: Lorem Ipsum | Virtuous Code を参考にして、以下のように記述。
;; ----------------------------------------
;; Lorem ipsum
;; ダミーテキストの入力

(autoload 'Lorem-ipsum-insert-paragraphs "lorem-ipsum" "" t)
(autoload 'Lorem-ipsum-insert-sentences "lorem-ipsum" "" t)
(autoload 'Lorem-ipsum-insert-list "lorem-ipsum" "" t)
M-x Lorem-ipsum-insert-paragraphs とか打ち込めば、ダラダラッと挿入される。

コレの日本語版はないのかな…? Webサイト上で生成してくれるサービス、 _すぐ使えるダミーテキスト - 日本語 Lorem ipsum はあるのだけど。

ちなみに。Zen coding の次期版である emmet では、 _lorem と打って展開すると同じ事ができる ようで。Notepad++ 上で試したら、たしかにダラダラッと挿入されました。

ついでに。Microsoft Word 上では、 _=rand()と打つとダミーテキストが挿入される そうで。試してみたら、たしかに動作しました。知らなかった…。Wordって、実は凄いのね…。

#2 [prog] コマンドラインで日本語のダミーテキストを出力できるツールってないのだろうか

そういうツールがあれば、色々なところで流用できそうだけど。

おそらく文字コードを指定して、sjis、euc-jp、utf8等で出力できたりするんだろう、と夢想。

#3 [xyzzy] xyzzyからtidy.exeを呼ぼうとしてハマる

何度やっても、整形後のhtmlソースの頭に、xml関連の1行、<?xml ... ?> が追加されてしまう…。tidy.exe に与えるオプションをいくら弄ってもダメで。

もしかして tidy.exe がバグ持ち版なのかなあ、とすら思ってしまったけど。html-support.l が原因だった。御丁寧に、execute-tidy () の中で、毎回最後に必ず insert-xml-decl を呼んでた…。html-support.l 自身が、<?xml ... ?> の1行を追加する処理を、わざわざ独自に実装していたようで。

おそらくだけど、html4以前や xml 相手に作業してる時代は、このほうが都合が良かったのかなと想像。しかし、html5 になって、そのあたりの状況が変わってきた感があるわけで。

とりあえず、html-support.l を修正して、フラグで処理を分けるようにしてみたり。
(defvar *tidy-insert-xml-decl* nil)
を最初のあたりで追加しといて、
		(if *tidy-insert-xml-decl* (insert-xml-decl))
で、フラグが t なら呼ぶ、みたいな。

tidy.exe 側にも、add-xml-decl という設定項目があって、<?xml ... ?> を追加する/しないを制御できるように見えるのだけど。それだけでは上手くいかない・日本語文字列が書かれている html に対しては失敗する、みたいな状況でもあったのかな…?

#4 [emacs] Zen codingは体育会系

Zen coding が使えるエディタをアレコレ試してみたものの。何か間違えてるような、そんな印象も。時代の流れに逆行するアイデアとでもいうか。

昨今は、人間の負担を ―― コンピュータという奴隷を使う御主人様の負担を極力減らす方向で、各種ツールが発案されているわけで。例えば。 そういうアレコレを考えると、Zen coding は人に厳しい。HTMLタグの種類と対応する略語を人間様が全部覚えとけ、みたいなマッチョな思想が根本にあるわけで。

その代わり、覚えれば圧倒的に早くHTMLタグをバシバシズラズラ入力できるわけだけど。数文字打つだけで何を打ち込みたいと思ってるのかコンピュータに伝えてる ―― コンピュータという奴隷にも任せるべき作業を人間様が貴重な脳のリソースを消費して肩代わりしているので、コンピュータ側で行う展開処理も早いわけで。

本来なら、文字を打つたびに候補をリストアップしてくれてもいいのかもしれない。略語を人間様が全部覚えるのはツライから、どんな選択肢があるのかリアルタイムに教えてくれる、ぐらいのことはしてもいいだろうと。でもまあ、そうなると、既存の自動補完機能でもいいんじゃないの、という話になりそうな。しかし、既存の自動補完機能では、回数や階層までは指定できない。例えば vi や emacs は、処理の繰り返し回数を指定することができるけど。おそらくはその延長 or 類似のアイデアのように思えたり。

何はともあれ、Zen coding は体育会系だなと。体育会系は仕事が早い。言われたことについては中身を一切考えないでとにかくやっちゃうから。その代わり、指示を出す側が努力しないといけない。先を読んだ的確な指示、余計なことを考えずに済む環境を与えないといけない。…まあ、どれもこれも、それぞれメリット・デメリットがあるので、○○だから良い/悪い、と言う話ではないのですけど。

てなことを思ったのでメモ。何年も前に流行ったソレに今頃言及してみてどうするんだという気もしますが。

#5 [zatta] 日本人ってクソ真面目

ソレについて言及することで自分達の立場が不利になるとしても、「歴史的な事実としてはこうだったんだ」と言いたがる、そんな性質がありそうな。まあ、それは一部の人に見られる傾向であって、ほとんどの日本人は事実がどうとかよりも自分に利があるように平気で嘘をつくのかもしれないけど。まるで中国人や韓国人のように。

ドイツのように、全部ヒトラーとナチスが悪かったんだ、で済ましちゃってる国もあるわけだけど。そういうのに比べると、日本人は妙なところで真面目だな、と。でもないか。ヒトラーやナチスの代わりに、当時の社会情勢のせいにしてるだけか。ただ、ドイツ人は通りやすい言い訳を見つけたけれど、日本人は通りにくい言い訳に固執し続けてる印象も。日本人の中でだけ通じる「空気」ばかり読んで出世してきた人ばかりでは、外国人が黙り込むほどの論理性を得られないのかな、と思ったりもするけど実際どうなのかはわからない。

前半と後半で矛盾してるな…。空気を読むのは大事なのか、ダメなのか。KYのほうが強いのか、弱いのか。どっちなんだ。いや、場所・場面によって読むべき空気は変わる、ということなのかな。どうなんだろ。

後半は、 _日本の刑事司法は『中世』か: 小池振一郎の弁護士日誌 で紹介されてる事例とも関係あるのかしら。実際どんな場面だったのか情報が不足していて判断できないけど、論理的に反論できないから怒鳴った、ということなら論外な気がする。日本人のレベルってこんなものか、と思われてしまっただろうな。

#6 [anime] ガルガンティア、海中探検の回を視聴

蜂の巣駆除だぜ大変だぜヒヤヒヤもんだぜ、と思っていたら…てな感じの回、なのかな。

設定を明かす回なのだけど、相変わらず素晴らしいとしか…。虚淵氏がシリーズ構成をしていた、まどかマギカも、サイコパスもそうだったけど。「実はこういうことだったんです」とバラす瞬間が実に上手いなと。視聴者がより強いショックを受けるよう、事前にアレコレ仕掛けてある、そんな印象。若干まったりムードを見せていたのもそうだろうし、以前の回で主人公が吐いていた何気ない台詞が逆に鋭く突き刺さってくるあたりもそうだろうし。下準備で手を抜いてないよなと。でも脚本は、虚淵氏じゃないんだよな…。どういう作り方してるんだろう…。まあ、監督さんが、異世界の日常をしっかり描く方、てな話をどこかで聞いた記憶もあるので、下準備の丁寧さ云々は、上手いこと歯車が噛み合ったのかな、と勝手に想像したり。

最初の数話を見て、藤子F先生のSF短編を見ているような気分、てなメモをしていた記憶があるのだけど。その予想は、それほど外れてなかったような気もしてきたり。コレ、 流血鬼だよな…。いや、ソレの元ネタの I Am Legendのほうが近いのかもしれないけど。 価値観の逆転が仕込んであるというか。当たり前だと思ってた状況を、あるいは異常だと思ってた状況を、別の視点から見ていくと…みたいな。古典SFが持っていた普遍性のあるエッセンスを上手に取り込めている印象。

コレ、元ネタにしてる作品とかあるのかな…。自分は本をろくに読まない無知な人間なので、そのものズバリな作品を思いつかないのだけど。一応、 流血鬼I Am Legendトップをねらえ侵略イカ娘あたりを混ぜ合わせればこういうのもできそう、とは思うけれど、具材が揃っていてもフツーはこんな料理出てこないだろう、と感心してしまうわけで。例えばEVAも、 ウルトラマンガンダム巨神兵東宝・円谷特撮作品を混ぜていけばどうにか捻りだせなくもない、とは思うけれど、フツーの人はそこからあんなの作れないし。まどかマギカが話題になってた頃、「EVAの再来」と誰かが言ってた記憶があるけれど。「この具材からコレ作っちゃうんだ…しかもそれぞれの味が馴染んでる…美味いわ…」という点では、たしかに何か共通点がありそうな、そんな気にもなったり。

同じ具材でも、これがもし自分だったら…。迫りくる宇宙怪獣達が萌え美少女キャラで主人公ハーレム状態、的ありきたりな方向にしか。そっち行っちゃうんだ…あーあ。みたいな。

何はともあれ、ガルガンティア、面白いです。

これがまた、その直後に放送される進撃の巨人も面白くて。かなり濃い時間帯・曜日だなと。

以上、1 日分です。

過去ログ表示

Prev - 2013/06 - Next
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project