Emacs Part 47 [転載禁止]©5ch.net
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
2014/12/20(土) 16:17:19.14GNU Emacs - GNU Project - Free Software Foundation (FSF)
https://www.gnu.org/software/emacs/
EmacsWiki: サイトマップ
http://www.emacswiki.org/emacs/
前スレ
Emacs Part 46
http://peace.2ch.net/test/read.cgi/unix/1403458934/
0486名無しさん@お腹いっぱい。
2015/02/28(土) 22:20:31.03ありがとうぉざいます
0487名無しさん@お腹いっぱい。
2015/02/28(土) 22:20:45.020488名無しさん@お腹いっぱい。
2015/03/01(日) 07:35:39.16バッファにunicodeが含まれている状態で
process-send-regionしても外部プロセスの標準入出力に値が何もはいってきません。
たとえばCの fscanfやfreadとかです。
unicodeを含まないバッファであれば問題なく動作します。
以下のようなことをやればとりあえず問題なく動きますが・・・・。
(let ((value enable-multibyte-characters))
(set-buffer-multibyte nil)
(process-send-region process (point-min) (point-max))
(set-buffer-multibyte value))
これはもっとマシな解決方法あったりしますか?
この方法でやると動作中の他パッケージに影響がでるので、やりたくないのです。
0489488
2015/03/01(日) 07:38:59.17tempバッファを作り
decode-coding-regionでtempへ吐き出したものを送るのも可能ですが、
そもそも decode-coding-regionを使わないでそのまま送りたいです。
tempバッファへコピーするコストもあるでしょうし。
0490名無しさん@お腹いっぱい。
2015/03/01(日) 09:21:26.37そのプロセスのコーディングシステムはどうなってるん。
0491名無しさん@お腹いっぱい。
2015/03/01(日) 16:40:55.55bufferは utf-8-unix or utf-8-dosですが、そうじゃないファイルを送信することも想定したいので
send時はバイナリにしたいです。
プロセス送信時に
上流で↓してます。
(let ((coding-system-for-write 'binary))
default-process-coding-system '(binary . binary)
とかもしてみましたが、状況は変わらず・・・。
0492名無しさん@お腹いっぱい。
2015/03/01(日) 17:59:51.91490 の質問に答えてない
0493489
2015/03/01(日) 18:13:36.60(japanese-shift-jis-unix . japanese-shift-jis-unix)
0494名無しさん@お腹いっぱい。
2015/03/01(日) 19:13:38.750495名無しさん@お腹いっぱい。
2015/03/01(日) 19:29:21.23バカ?
0496名無しさん@お腹いっぱい。
2015/03/01(日) 19:54:30.83coding-system-for-* は実はプロセス起動時にしか有効でないんよ。自分も昔勘違いしてたけど。
なので start-process のタイミングで coding-system-for-write しないといけない。
process-send-string のタイミングでは無視されるので注意しないといけない。
>>494
プロセスのコーディングシステムが no-conversion とか binary になってると
内部でユニバイトとして送信されるようにちゃんとなってるよ。
0497名無しさん@お腹いっぱい。
2015/03/01(日) 20:04:19.970498名無しさん@お腹いっぱい。
2015/03/01(日) 22:41:12.73> >>491
> なので start-process のタイミングで coding-system-for-write しないといけない。
start-processでletしたらいけました!
ありがとうございました。
> process-send-string のタイミングでは無視されるので注意しないといけない。
いつでもいけると思ってました・・。
0499名無しさん@お腹いっぱい。
2015/03/01(日) 23:01:06.04org-modeの場合だけなぜかecho-areaに表示される・・・
まず質問,同じことは起こりますか?
0500名無しさん@お腹いっぱい。
2015/03/01(日) 23:15:39.26org使ってないから詳しくはわからんが
0501名無しさん@お腹いっぱい。
2015/03/02(月) 13:09:28.700502名無しさん@お腹いっぱい。
2015/03/02(月) 13:32:11.270503名無しさん@お腹いっぱい。
2015/03/02(月) 19:33:41.760504名無しさん@お腹いっぱい。
2015/03/02(月) 22:38:24.240505名無しさん@お腹いっぱい。
2015/03/03(火) 00:22:22.610506名無しさん@お腹いっぱい。
2015/03/03(火) 09:39:52.980507499
2015/03/03(火) 15:00:28.24快適すぐる
0508名無しさん@お腹いっぱい。
2015/03/03(火) 15:36:27.550509名無しさん@お腹いっぱい。
2015/03/04(水) 13:21:14.32実際 lisp じゃなくても問題ないのかな
0510名無しさん@お腹いっぱい。
2015/03/04(水) 13:23:22.050511名無しさん@お腹いっぱい。
2015/03/04(水) 13:33:12.14山本先生 > Emacs Lisp は命令型言語
0512名無しさん@お腹いっぱい。
2015/03/04(水) 13:37:15.380513名無しさん@お腹いっぱい。
2015/03/04(水) 13:43:06.70common lispですら関数型言語と認めない人だっているわけで、
何の実りもなさそうな話じゃね
0514名無しさん@お腹いっぱい。
2015/03/04(水) 13:44:44.85vim や他のエディタにシェアを奪われるのも致し方ないな
0515名無しさん@お腹いっぱい。
2015/03/04(水) 13:45:30.61その人に聞いてみれば?
0516名無しさん@お腹いっぱい。
2015/03/04(水) 13:47:03.84そんな質問する人には、どうでもいいレベルの問題
0517名無しさん@お腹いっぱい。
2015/03/04(水) 13:49:02.73お前は知らないかもしれないが、vimスクリプトの糞さに比べれば1000倍マシ
0518名無しさん@お腹いっぱい。
2015/03/04(水) 13:49:11.12たとえばどんな問題を想定してるんだろ
0519名無しさん@お腹いっぱい。
2015/03/04(水) 13:49:50.76どんなとこがクソ?
0520名無しさん@お腹いっぱい。
2015/03/04(水) 13:51:52.840521名無しさん@お腹いっぱい。
2015/03/04(水) 13:53:07.01やっぱ蓄積重要なんだよな〜という感じ。
nyagos もそうなるくらいには長く歴史を重ねて欲しいと思う。
0522名無しさん@お腹いっぱい。
2015/03/04(水) 13:54:21.45> 山本先生 > Emacs Lisp は命令型言語
これはCでプログラミングしてる人がelisp書いてるから、Cっぽく書く人が多いっていう意味で
Emacs Lispそのものの事を言ってんじゃないぞ
0523名無しさん@お腹いっぱい。
2015/03/04(水) 13:54:29.24それにも関わらず、今まで出会ったLisperは全員、LispのコーディングにはEmacsを利用しているのは不思議だ。
おそらく、Emacsとその資産を再実装する手間を考えたら、Emacsを使ったほうが得策なのだろう。
0524名無しさん@お腹いっぱい。
2015/03/04(水) 13:55:39.42http://www.mew.org/~kazu/material/2010-func.pdf
0525名無しさん@お腹いっぱい。
2015/03/04(水) 13:57:40.29知ったかぶり出来る風潮があるな
0526名無しさん@お腹いっぱい。
2015/03/04(水) 13:59:33.19elispが言語として貧弱かどうかと
Emacsがエディタとして貧弱かどうかは
まったく別の話では。
0527名無しさん@お腹いっぱい。
2015/03/04(水) 14:00:21.53まとめ
■ Emacs Lisp は命令型言語
■ 関数型言語の要素は持っているが、
プログラマーは命令プログラミングしかしていない
0528名無しさん@お腹いっぱい。
2015/03/04(水) 14:00:44.090529名無しさん@お腹いっぱい。
2015/03/04(水) 14:02:53.80結局 emacs lisp での関数言語的なループは提示されてないよねこれ。
0530名無しさん@お腹いっぱい。
2015/03/04(水) 14:03:14.580531名無しさん@お腹いっぱい。
2015/03/04(水) 14:03:56.550532名無しさん@お腹いっぱい。
2015/03/04(水) 14:05:14.88末尾再起最適化がないから再帰ですぐスタック使い果たす
これだけでくそだってわかんだね
0533名無しさん@お腹いっぱい。
2015/03/04(水) 14:07:22.47スタックのサイズがデフォルトではかなり制限されていたり、設定を単に変数の値を(動的に)変化させて行うあたり。
0534名無しさん@お腹いっぱい。
2015/03/04(水) 14:08:18.61仕方無いとはいえ、ちょっと歴史の重荷になってきた感はありますね。
0535名無しさん@お腹いっぱい。
2015/03/04(水) 14:09:54.83これはなんで実装されないとか理由あったっけ?
手続き言語的な書き方促進しちゃってる理由の1つだよなーとは思う。
0536名無しさん@お腹いっぱい。
2015/03/04(水) 14:13:13.02とりあえずすぐじゃないし、困ったことはないな
0537名無しさん@お腹いっぱい。
2015/03/04(水) 14:13:34.39準公式そびえ立つ糞の山とそれに対する反論
0538名無しさん@お腹いっぱい。
2015/03/04(水) 14:14:20.49他には?
0539名無しさん@お腹いっぱい。
2015/03/04(水) 20:06:11.57CommonLipsにはある構造体が無いんでしょ?
0540名無しさん@お腹いっぱい。
2015/03/04(水) 20:43:32.63別に elisp 書きたくて emacs 使ってるわけでもないからどうでもいいけど。
これでシステムアプリ書けとか言われたら退職待ったなしだが。
vim は vimscript だけじゃなく ruby だの lua だの使えていいやねえ。
0541名無しさん@お腹いっぱい。
2015/03/04(水) 21:15:01.34理屈ばっかり先行して実務にはまったく役に立たない言語だよね
0542名無しさん@お腹いっぱい。
2015/03/04(水) 21:18:22.19lisp じゃなくても問題ないと思ってる人たちが Atom とか作ってるんだと思うよ。
0543名無しさん@お腹いっぱい。
2015/03/04(水) 23:06:50.69setq と何が違ってくるんですか?
0544名無しさん@お腹いっぱい。
2015/03/04(水) 23:18:26.36clにdefstructがあるけど、それじゃ駄目なのか?
0545名無しさん@お腹いっぱい。
2015/03/05(木) 00:29:56.33defcustomで指定した変数の依存関係とかセット時に動かしたい関数を起動するとかそういうのが行われるのがcustom-set-variables
ただ大抵の場合はsetqで問題ない
custom-set-variablesで検索すると真逆のタイトルの記事がトップに出てくるってのもすげえな
custom-set-variables は使わない方が良いかもしれない
http://d.hatena.ne.jp/a_bicky/20131230/1388396559
defcustomで定義された変数はsetqではなくcustom-set-variablesで設定すべき理由
http://kawamuray.hatenablog.com/entry/2013/11/03/180543
0546名無しさん@お腹いっぱい。
2015/03/05(木) 00:42:08.98とっととemacs捨てろよw
0547名無しさん@お腹いっぱい。
2015/03/05(木) 00:45:55.25実際捨ててる人が増えてるからユーザ減ってるんだろね。
若い人はみんなvimだし。
0548名無しさん@お腹いっぱい。
2015/03/05(木) 00:59:55.15日本語書きづらいのが致命的で移行できない
0549名無しさん@お腹いっぱい。
2015/03/05(木) 01:11:38.53もしvimを使ってたら…いや考えるのはやめておこう
0550名無しさん@お腹いっぱい。
2015/03/05(木) 01:26:24.18evilが人気出るのもわかる
プラットホームとしてのemacsは捨てがたいがvimの編集能力は欲しい
0551名無しさん@お腹いっぱい。
2015/03/05(木) 03:54:24.170552名無しさん@お腹いっぱい。
2015/03/05(木) 10:25:46.510553名無しさん@お腹いっぱい。
2015/03/05(木) 11:22:20.08便利そうだけど調べるのも面倒
0554名無しさん@お腹いっぱい。
2015/03/05(木) 12:16:05.790555名無しさん@お腹いっぱい。
2015/03/05(木) 16:27:05.18自分で修正・維持するのが大変なんだよね。
org はキーを割り当て過ぎて、Emacs ではなくなっている気がする。
操作に関しては ido (bufferのみ) + minibuf-isearch ベース。
0556名無しさん@お腹いっぱい。
2015/03/05(木) 17:22:36.51ESSだけでも十二分にEmacsを使う理由になるが。
あと、yatexはやめられない。他のエディタだと無理。
0557名無しさん@お腹いっぱい。
2015/03/05(木) 17:33:29.66SLIME?
0558名無しさん@お腹いっぱい。
2015/03/05(木) 17:43:22.63evil試しに使ってみたけどかなりいいな
これでemacsの環境とvimの編集能力の両方得られるんじゃないのかね
evilバリバリ使ってる人の感想が聞きたいな
0559名無しさん@お腹いっぱい。
2015/03/05(木) 22:14:11.00vimscript 読めるようになったら完璧だな。
0560名無しさん@お腹いっぱい。
2015/03/05(木) 22:15:57.160561名無しさん@お腹いっぱい。
2015/03/05(木) 22:26:57.160562名無しさん@お腹いっぱい。
2015/03/05(木) 22:34:29.590563名無しさん@お腹いっぱい。
2015/03/05(木) 23:06:26.01それはそれとして、このプログラマーは何のエディタ使ってるの?っての方が調べやすそうだな
0564名無しさん@お腹いっぱい。
2015/03/06(金) 08:26:42.75https://twitter.com/ahash/status/388199880084058112
FF7の開発にはEmacsとLispが使われていたそうだ。
0565名無しさん@お腹いっぱい。
2015/03/06(金) 08:41:35.91これな
http://d.hatena.ne.jp/shi3z/20140123/1390429115
0566名無しさん@お腹いっぱい。
2015/03/06(金) 10:44:29.270567名無しさん@お腹いっぱい。
2015/03/06(金) 11:07:27.55FF7とかクラッシュバンデグー以外にサンプルある?
0568名無しさん@お腹いっぱい。
2015/03/06(金) 11:13:37.64>>565にあるけどUncharted
0569名無しさん@お腹いっぱい。
2015/03/06(金) 11:58:07.52命令 引き数1 引き数2 ...
ってのを延々書き並べて行くけど、その内ifが欲しくなってきて実装してる内に
あれ?これLispじゃね?って事になるんだと思われる
基本的にスクリプトで完全にプログラムをするわけじゃない所から出発してるから
Lispで必要十分なんだよな
0570名無しさん@お腹いっぱい。
2015/03/06(金) 11:59:57.82いやその解説いみわからん
命令列挙してるのがlispだと思ってんの…?
0571名無しさん@お腹いっぱい。
2015/03/06(金) 12:13:11.30随分理解力が無いというか視野が狭いな…
命令を列挙してるのがLispなんて言ってないよ
0572名無しさん@お腹いっぱい。
2015/03/06(金) 12:31:51.92理解力低いんでもうちょっと詳しく書いてくれませんかね?
この程度の内容なら非力なlisp程度で大丈夫だろ、みたいに書いてあるようにしか取れないので!
0573名無しさん@お腹いっぱい。
2015/03/06(金) 12:42:41.31上の解説記事見る限りじゃそんなこと書いてなくね?
0574名無しさん@お腹いっぱい。
2015/03/06(金) 12:45:29.39敵キャラスクリプトの例
(move A)
(move_if_search B C D)
↑
これ見てLispっぽいと思うのが間違いって事をいってんのか?
LispではCやC++と比較して実用的なプログラムを組むのが困難という事実を言っている
ゲームはグラフィックやネットワークなどの処理をCで実装されたAPIを駆使して
実装しないといけないけど、Lispの方が向いてるといいたいのか?
0575名無しさん@お腹いっぱい。
2015/03/06(金) 13:04:36.20> (move_if_search B C D)
ちなみにLispっぽく書くなら
(if (search B) (move C) (move D))
と書くべきだが、スクリプトの実装がショボイうちはmove_if_searchのように1命令にせざるを得ない
で山のように専用命令が増えて、ちゃんとLispを実装しようと思うようになる
>>569にはそういう流れを含んでいたんだ
0576名無しさん@お腹いっぱい。
2015/03/06(金) 13:19:35.98括弧ついてりゃlispかよ、おめでてーな
そんな用途なら
move A
move_if_search B C D
で十分だろハゲ
で、どこがlispなんですか??
elispしか知らないくせにlisp知った気になってんじゃねーぞハゲ
0577名無しさん@お腹いっぱい。
2015/03/06(金) 13:29:11.95もちろん>>574のレベルだとLispとは言えないし言ってもいない(スクリプトと言っている)
>>575で言ってるが
(if (search B) (move C) (move D))
まで出来ればLisp「っぽく」なる
0578名無しさん@お腹いっぱい。
2015/03/06(金) 13:34:58.99if (search B)
move C
else
move D
これとどうちがうんですかー?
0579名無しさん@お腹いっぱい。
2015/03/06(金) 13:36:35.35> ってのを延々書き並べて行くけど、その内ifが欲しくなってきて実装してる内に
> あれ?これLispじゃね?って事になるんだと思われる
この流れでどこで「あれ?これLispじゃね?」ってなるのか説明はよせいや
命令列挙してif文あったらlispなのかよハゲ
0580名無しさん@お腹いっぱい。
2015/03/06(金) 13:37:23.52if (search B)
move C
else
move D
をLispっぽく書くとどうなるの?
Lispじゃ書けないの?
0581名無しさん@お腹いっぱい。
2015/03/06(金) 13:38:41.35じゃぁLispは命令を列挙できなくてif文があってはいけないのか?
0582名無しさん@お腹いっぱい。
2015/03/06(金) 13:39:25.77論点すりかえんなや
そんなどんな言語でも書ける内容から「なんでLispじゃね?」ってなるのか聞いてんだよハゲ
0583名無しさん@お腹いっぱい。
2015/03/06(金) 13:41:13.50> ってのを延々書き並べて行くけど、その内ifが欲しくなってきて実装してる内に
この内容から
> あれ?これLispじゃね?って事になるんだと思われる
ってなるのはなんでなんだって聞いてるんだが?
お前の拙い脳みその中でどういう論理の飛躍があってLispじゃね?ってなるわけ?
0584名無しさん@お腹いっぱい。
2015/03/06(金) 13:42:06.28すり替えてるのはそっちだ
(move C)
(if (search B) (move C) (move D))
これがLispじゃないってのはどんな根拠で言ってんの?
Lispと言っていけない理由を教えてくれ
0585名無しさん@お腹いっぱい。
2015/03/06(金) 13:42:18.13君は黙ってた方がいい
■ このスレッドは過去ログ倉庫に格納されています