のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,062,812人
昨日:no data人
今日:
最近の注目
人気の最安値情報

    私的良スレ書庫

    不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitter
    ログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。

    元スレEmacs Part 43

    emacs スレッド一覧へ / emacs とは? / 携帯版 / dat(gz)で取得 / トップメニュー
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    レスフィルター : (試験中)
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
    201 : 名無しさん@お腹 - 2013/08/15(木) 10:37:52.64 (+10,-17,-1)
    http://ergoemacs.org/emacs/using_voice_to_code.html
    Emacs Pinkieってことばがあるんだね
    初めてしった
    202 : 名無しさん@お腹 - 2013/08/20(火) 15:33:38.13 (+23,-30,-88)
    emacs lispの質問です
    特定の関数内で呼び出す関数の返り値を外部から変えることはできますか?
    (defun foo (x) (print x))

    (defun bar1 () (foo "a"))
    (defun bar2 () (foo "b"))

    defadviceでfoo関数そのものを自由にいじれるのは分かったのですが
    このうちbar1で呼び出すfoo関数の返り値だけを変えるようにして
    bar2で呼び出すfoo関数はそのままにしておきたいです
    203 : 名無しさん@お腹 - 2013/08/20(火) 16:37:00.50 (+38,-30,-95)
    >>202
    もっとエレガントにできないものか。

    (defadvice foo (after hoge disable)
    (setf ad-return-value "c"))

    (defadvice bar1 (around fuga activate)
    (ad-enable-advice #'foo 'after 'hoge)
    (ad-activate #'foo)
    ad-do-it
    (ad-disable-advice #'foo 'after 'hoge)
    (ad-activate #'foo))
    204 : 名無しさん@お腹 - 2013/08/20(火) 17:05:33.59 (+0,-29,-4)
    >>202
    (backtrace) みるとかどうよ。
    205 : 名無しさん@お腹 - 2013/08/20(火) 23:56:31.72 (+57,+29,-11)
    defadvice自体がエレガントかどうかっていう議論もあるような気がする
    ちゃんと他人のプログラムのことを考えたうえでのものならいいんだけどね
    206 : 名無しさん@お腹 - 2013/08/21(水) 04:32:22.04 (+23,-15,-14)
    >特定の関数内で呼び出す関数の返り値を外部から変える

    設計が腐ってる臭いがする
    207 : 名無しさん@お腹 - 2013/08/21(水) 09:13:35.10 (+96,+29,-74)
    emacsのカレンダーをA4のミスコピー用紙の裏紙に印刷して
    半分におって綴じるとシステム手帳に代わりになる

    みたいなブログを以前に見た記憶あるのですが

    半分におって綴じる

    の部分は普通にクリップで挟むだけなのでしょうか?
    何かシステム手帳みたいな物はないのでしょうか
    208 : 名無しさん@お腹 - 2013/08/21(水) 11:02:25.76 (+70,+29,-2)
    >>207
    ホッチキスでとめると便利だよ。
    209 : 名無しさん@お腹 - 2013/08/21(水) 11:05:29.33 (+48,-14,-1)
    >>206
    馬鹿か?adviceの話なんだから設計具合など関係ない。
    210 : 名無しさん@お腹 - 2013/08/21(水) 12:53:27.36 (+64,+29,-11)
    >>209
    そんなキミにひとつ名言を捧げよう

     トンカチを握ったヤツには
     全ての問題が釘に見える
    211 : 202 - 2013/08/21(水) 13:31:08.95 (+62,+29,+1)
    >>203-206
    ありがとうございます。考え直してみます。
    212 : 名無しさん@お腹 - 2013/08/22(木) 00:04:13.53 (-2,-30,-75)
    defadviceじゃなくてfletとかlabelsを使えば?
    他人のelispの中での関数呼び出しの挙動を少しだけ変えるときはそうしてることが多い。
    213 : 名無しさん@お腹 - 2013/08/22(木) 13:15:11.99 (+9,-30,-152)
    そのコメントを見て気になっていたのですが、obsolete macro と指摘されていたlabelsとfletについてお尋ねします
    `labels' is an obsolete macro (as of 24.3); use `cl-labels' instead.
    `flet' is an obsolete macro (as of 24.3); use either `cl-flet' or `cl-letf'.
    このようなエラーメッセージが出るようになったので
    labelsをcl-labelsにdefmacroしたいのですが
    defaliasのようなもので設定すればよいのでしょうか
    214 : 名無しさん@お腹 - 2013/08/22(木) 16:57:05.22 (+38,-29,-68)
    >>213
    まずは自分で試してみるべし

    ただ、obsolete認定されたんなら cl-flet を使う方向で考えたほうが前向きなような気がする
    下位互換を考えるならば、 cl-flet がない環境では cl-flet を defalias してあげればいいと思う

    他人のコードならそのうち対応するだろうから、気にしない
    215 : 名無しさん@お腹 - 2013/08/22(木) 17:21:39.01 (+3,-30,-51)
    fletはダイナミックスコープだったけどcl-fletはレキシカルなんだよなー
    flet相当のことはcl-letfで一応できるけどちょっと冗長になる
    (cl-letf (((symbol-function 'foo) (lambda () ...))) ...)
    216 : 名無しさん@お腹 - 2013/08/22(木) 19:37:33.87 (+63,+29,-27)
    >>214-215
    なるほど、他人のコードで更新が停滞しているものだったので
    どこまで手を入れるか考えあぐねていました
    symbol-functionを使う手は考えていなかったので参考になります
    217 : 名無しさん@お腹 - 2013/08/23(金) 22:54:02.83 (+57,+29,-26)
    へー、レキシカルになったのか。
    個人的には少しの手間でダイナミックスコープ特有のバグが減らせるなら喜ばしい。
    218 : 名無しさん@お腹 - 2013/08/29(木) 00:41:43.14 (+3,-24,-5)
    最近本家更新ないけどどうなってるん?
    次は24.4?25?
    219 : 名無しさん@お腹 - 2013/08/30(金) 19:15:11.92 (+3,-29,-45)
    次が何番でもいいんですけど、
    (setq scroll-conservatively 99999) とかでやってる 1行スクロールが時々飛ぶ現象が、いい加減直ってくれたらいいなと思いますです。

    2009年ごろには認知されてるのに…。
    220 : 名無しさん@お腹 - 2013/08/31(土) 01:13:51.60 (+10,-24,-13)
    Changelogには確か直ったと書いてあった
    221 : 名無しさん@お腹 - 2013/08/31(土) 10:15:25.73 (+4,-30,-34)
    >>220
    まじですか。24.2.1では相変わらずときどき飛びますです。

    (setq scroll-conservatively most-positive-fixnum) で若干マシにはなりますけど
    222 : 名無しさん@お腹 - 2013/08/31(土) 14:14:08.78 (-1,-29,-34)
    Emacs上でXサーバ、VNC、RDPクライアントっぽい事が出来るスクリプトとか無いでしょうか?
    223 : 名無しさん@お腹 - 2013/08/31(土) 16:56:45.03 (+68,+29,-24)
    Emacs内にX等の窓をだすっていうんだったら多分ない。
    Webkitを取り込んだバージョンのなんかだとその内出来るかもしれんけど。
    224 : 名無しさん@お腹 - 2013/08/31(土) 23:43:27.29 (+36,-30,-177)
    NEWSを調べたところ24.3からだね。↓こんな感じ
    *** If you customize `scroll-conservatively' to a value greater than 100,
    Emacs will never recenter point in the window when it scrolls due to
    cursor motion commands or commands that move point (e.f., `M-g M-g').
    Previously, you needed to use `most-positive-fixnum' as the value of
    `scroll-conservatively' to achieve the same effect.
    225 : 名無しさん@お腹 - 2013/09/01(日) 00:13:50.51 (+99,+29,-5)
    >>224
    ごめん24.1からだった。。
    ということは直ってないし、永久に直らないね多分。
    226 : 名無しさん@お腹 - 2013/09/01(日) 06:35:18.99 (+76,+29,-60)
    >>225
    わざわざ調べてくれてありが㌧

    飛ぶときに recenter が働いていたというのがちょっと疑問な気がします。
    ひょっとすると似て非なる現象なのかもしれないです。

    あまり頻繁ではないので、引き続き我慢しますです。
    227 : 名無しさん@お腹 - 2013/09/01(日) 08:35:34.05 (-2,-30,-26)
    先端だと
    (setq scroll-conservatively most-positive-fixnum)
    すると飛ばないような気がするなあ。
    228 : 名無しさん@お腹 - 2013/09/01(日) 09:56:00.97 (+3,-30,-58)
    most-positive-fixnum を使えば飛ぶ頻度は格段に(ときどき→まれに)減るのですが、油断していると飛びますw

    emacs -q 環境では飛んだことがないので、かなり環境に依存するのではないかと。

    フォントが小さい場合や、toggle-truncate-lines で折り返しなしにしたときに起きやすいような気が…
    229 : 名無しさん@お腹 - 2013/09/01(日) 10:38:45.02 (+97,+22,-26)
    環境依存ってか最近はメジャーモード自体がいろいろ凝ったことをやるし
    たいていはマイナーモードもてんこ盛りだから
    もう fundamental-mode でもない限りそもそもレベルで重いわな

    そんなことより vi/emacs 使うなら
    5行5文字以上の移動にキー押しっぱなししてるうちはニワカ
    という教えも思い出してやってください
    230 : 0 - 2013/09/01(日) 11:05:29.52 (+21,-20,-62)
    >223
    そうですか。 XserverさえアレばEmacsだけ入った*Nixとか
    Emacs詰め合わせを持ち込んですぐに自分の環境を整備、、、
    とか期待したんですが、、、 どうもありがとうございました。


    aalibだけを使ったXserverが有るらしので、Emacsと合わせて
    どうやれば最小構成でポータブルに持っていけるのか、、、
    難しいかな
    231 : 名無しさん@お腹 - 2013/09/01(日) 12:52:48.06 (+39,-29,-15)
    >>229
    みんなどうやって移動してるんだ?
    forward-wordとかisearch-forward使って移動してるんだけどこれでいいんか?
    232 : 名無しさん@お腹 - 2013/09/01(日) 13:03:22.05 (+70,+29,-15)
    >>229
    そうは言っても、スクロールくらいは普通のエディタっぽい動きをしてほしい
    233 : 名無しさん@お腹 - 2013/09/01(日) 13:16:25.85 (+97,+29,-47)
    >>231
    君のディスプレイをのぞきこんだ人に
    「カーソルと画面が飛びまくって何してんのかぜんぜんわからない。
    てかそれってエディタなの?」
    と言われたら一人前ですな
    234 : 名無しさん@お腹 - 2013/09/01(日) 13:29:50.00 (+57,+29,-13)
    編集するときや読みたい場所わかってるときはぴょんぴょん飛ぶのもいいけど
    全文読む時なんかは普通にスクロールしてほしいよね
    235 : 名無しさん@お腹 - 2013/09/01(日) 13:33:16.53 (+42,+19,+0)
    マウスのスクロール使えばなんとか
    236 : 名無しさん@お腹 - 2013/09/01(日) 14:19:53.99 (+11,-29,-43)
    >>229
    emacs/vim 両方使うが、vim の時は fa とか ta とかで移動することは多いけど、
    emacs だと普通に C-f C-b とかで移動してる。
    これっておかしいの?
    237 : 名無しさん@お腹 - 2013/09/01(日) 14:31:28.51 (+91,+29,-6)
    んなもん好きにせいよw
    おかしいと言われたら直すのか?
    238 : 名無しさん@お腹 - 2013/09/01(日) 15:52:17.74 (+3,-30,-74)
    俺もみんながどうやって移動してるか知りたい

    今のところhelm-c-moccurとfoward-wordと連打が多い
    あとはsmartparens.elの移動も使い始めた

    今気になってるのはpophintとvim のfっぽい挙動

    これは便利っていうのあったら教えてください
    239 : 名無しさん@お腹 - 2013/09/01(日) 15:58:56.37 (-1,-29,-7)
    移動だけじゃないけどlispを編集するならpareditが超便利
    240 : 名無しさん@お腹 - 2013/09/01(日) 15:59:09.13 (+32,+16,+1)
    emacsといえばsexp系移動
    241 : 名無しさん@お腹 - 2013/09/01(日) 16:11:59.62 (-15,-29,+0)
    sexp はいつ見ても sex-predicate に見えてしまう
    242 : 名無しさん@お腹 - 2013/09/01(日) 16:12:47.21 (+70,+29,-6)
    >>237
    直すかどうかわからんが、もっと効率がいい方法がわかりゃ検討するさ
    243 : 名無しさん@お腹 - 2013/09/01(日) 16:29:47.92 (+57,+29,-4)
    カーソルキーにスクロールを割り当ててるけど結構便利
    244 : 名無しさん@お腹 - 2013/09/01(日) 16:31:53.31 (+57,+29,-40)
    この話題になると明確な答えが出ることはない
    それは本当に上手い話は独り占めが基本だからだ!
    245 : 名無しさん@お腹 - 2013/09/01(日) 16:53:20.25 (+57,+29,-23)
    ● 流出でこのスレすっかり寂れててわろた……
    わろた……orz
    246 : 名無しさん@お腹 - 2013/09/01(日) 16:56:11.56 (+57,+29,-3)
    えっ!むしろ今までより盛り上がってるような
    247 : 名無しさん@お腹 - 2013/09/01(日) 17:01:45.56 (+57,+29,-11)
    夏の全鯖規制祭りが解けて久々に書けてるヤツの方が多いだろ
    248 : 名無しさん@お腹 - 2013/09/01(日) 17:54:06.21 (+65,-29,-5)
    ace-jump-mode使ってる?
    249 : 名無しさん@お腹 - 2013/09/01(日) 19:11:08.72 (+70,+29,-42)
    >>233
    昔、コードレビューでそんな感じになって、途中で通訳してくれる人が来てくれて助かった。

    Emacsって社内の標準エディタだったんだけど…。
    250 : 名無しさん@お腹 - 2013/09/01(日) 19:23:15.15 (+57,+29,-32)
    コードレビューの時は操作が飛びすぎるとレビュアーの理解が追いつかないから、GUIの統合開発環境でわかりやすく飛んでる
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / emacs スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

    類似してるかもしれないスレッド


    トップメニューへ / →のくす牧場書庫について