元スレEmacs Part 43
emacs覧 / PC版 /みんなの評価 :
201 = :
http://ergoemacs.org/emacs/using_voice_to_code.html
Emacs Pinkieってことばがあるんだね
初めてしった
202 = :
emacs lispの質問です
特定の関数内で呼び出す関数の返り値を外部から変えることはできますか?
(defun foo (x) (print x))
(defun bar1 () (foo "a"))
(defun bar2 () (foo "b"))
defadviceでfoo関数そのものを自由にいじれるのは分かったのですが
このうちbar1で呼び出すfoo関数の返り値だけを変えるようにして
bar2で呼び出すfoo関数はそのままにしておきたいです
203 = :
>>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))
205 = :
defadvice自体がエレガントかどうかっていう議論もあるような気がする
ちゃんと他人のプログラムのことを考えたうえでのものならいいんだけどね
206 = :
>特定の関数内で呼び出す関数の返り値を外部から変える
設計が腐ってる臭いがする
207 = :
emacsのカレンダーをA4のミスコピー用紙の裏紙に印刷して
半分におって綴じるとシステム手帳に代わりになる
みたいなブログを以前に見た記憶あるのですが
半分におって綴じる
の部分は普通にクリップで挟むだけなのでしょうか?
何かシステム手帳みたいな物はないのでしょうか
208 = :
>>207
ホッチキスでとめると便利だよ。
209 = :
>>206
馬鹿か?adviceの話なんだから設計具合など関係ない。
210 = :
>>209
そんなキミにひとつ名言を捧げよう
トンカチを握ったヤツには
全ての問題が釘に見える
211 = :
>>203-206
ありがとうございます。考え直してみます。
213 = :
そのコメントを見て気になっていたのですが、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 = :
>>213
まずは自分で試してみるべし
ただ、obsolete認定されたんなら cl-flet を使う方向で考えたほうが前向きなような気がする
下位互換を考えるならば、 cl-flet がない環境では cl-flet を defalias してあげればいいと思う
他人のコードならそのうち対応するだろうから、気にしない
215 = :
fletはダイナミックスコープだったけどcl-fletはレキシカルなんだよなー
flet相当のことはcl-letfで一応できるけどちょっと冗長になる
(cl-letf (((symbol-function 'foo) (lambda () ...))) ...)
216 = :
>>214-215
なるほど、他人のコードで更新が停滞しているものだったので
どこまで手を入れるか考えあぐねていました
symbol-functionを使う手は考えていなかったので参考になります
217 = :
へー、レキシカルになったのか。
個人的には少しの手間でダイナミックスコープ特有のバグが減らせるなら喜ばしい。
218 = :
最近本家更新ないけどどうなってるん?
次は24.4?25?
219 = :
次が何番でもいいんですけど、
(setq scroll-conservatively 99999) とかでやってる 1行スクロールが時々飛ぶ現象が、いい加減直ってくれたらいいなと思いますです。
2009年ごろには認知されてるのに…。
220 = :
Changelogには確か直ったと書いてあった
221 = :
>>220
まじですか。24.2.1では相変わらずときどき飛びますです。
(setq scroll-conservatively most-positive-fixnum) で若干マシにはなりますけど
223 = :
Emacs内にX等の窓をだすっていうんだったら多分ない。
Webkitを取り込んだバージョンのなんかだとその内出来るかもしれんけど。
224 = :
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 = :
>>224
ごめん24.1からだった。。
ということは直ってないし、永久に直らないね多分。
226 = :
>>225
わざわざ調べてくれてありが㌧
飛ぶときに recenter が働いていたというのがちょっと疑問な気がします。
ひょっとすると似て非なる現象なのかもしれないです。
あまり頻繁ではないので、引き続き我慢しますです。
228 = :
most-positive-fixnum を使えば飛ぶ頻度は格段に(ときどき→まれに)減るのですが、油断していると飛びますw
emacs -q 環境では飛んだことがないので、かなり環境に依存するのではないかと。
フォントが小さい場合や、toggle-truncate-lines で折り返しなしにしたときに起きやすいような気が…
229 = :
環境依存ってか最近はメジャーモード自体がいろいろ凝ったことをやるし
たいていはマイナーモードもてんこ盛りだから
もう fundamental-mode でもない限りそもそもレベルで重いわな
そんなことより vi/emacs 使うなら
5行5文字以上の移動にキー押しっぱなししてるうちはニワカ
という教えも思い出してやってください
230 = :
>223
そうですか。 XserverさえアレばEmacsだけ入った*Nixとか
Emacs詰め合わせを持ち込んですぐに自分の環境を整備、、、
とか期待したんですが、、、 どうもありがとうございました。
aalibだけを使ったXserverが有るらしので、Emacsと合わせて
どうやれば最小構成でポータブルに持っていけるのか、、、
難しいかな
231 = :
>>229
みんなどうやって移動してるんだ?
forward-wordとかisearch-forward使って移動してるんだけどこれでいいんか?
232 = :
>>229
そうは言っても、スクロールくらいは普通のエディタっぽい動きをしてほしい
233 = :
>>231
君のディスプレイをのぞきこんだ人に
「カーソルと画面が飛びまくって何してんのかぜんぜんわからない。
てかそれってエディタなの?」
と言われたら一人前ですな
234 = :
編集するときや読みたい場所わかってるときはぴょんぴょん飛ぶのもいいけど
全文読む時なんかは普通にスクロールしてほしいよね
235 = :
マウスのスクロール使えばなんとか
236 = :
>>229
emacs/vim 両方使うが、vim の時は fa とか ta とかで移動することは多いけど、
emacs だと普通に C-f C-b とかで移動してる。
これっておかしいの?
237 = :
んなもん好きにせいよw
おかしいと言われたら直すのか?
238 = :
俺もみんながどうやって移動してるか知りたい
今のところhelm-c-moccurとfoward-wordと連打が多い
あとはsmartparens.elの移動も使い始めた
今気になってるのはpophintとvim のfっぽい挙動
これは便利っていうのあったら教えてください
240 = :
emacsといえばsexp系移動
242 = :
>>237
直すかどうかわからんが、もっと効率がいい方法がわかりゃ検討するさ
243 = :
カーソルキーにスクロールを割り当ててるけど結構便利
244 = :
この話題になると明確な答えが出ることはない
それは本当に上手い話は独り占めが基本だからだ!
245 = :
● 流出でこのスレすっかり寂れててわろた……
わろた……orz
246 = :
えっ!むしろ今までより盛り上がってるような
247 = :
夏の全鯖規制祭りが解けて久々に書けてるヤツの方が多いだろ
248 = :
ace-jump-mode使ってる?
249 = :
>>233
昔、コードレビューでそんな感じになって、途中で通訳してくれる人が来てくれて助かった。
Emacsって社内の標準エディタだったんだけど…。
250 = :
コードレビューの時は操作が飛びすぎるとレビュアーの理解が追いつかないから、GUIの統合開発環境でわかりやすく飛んでる
みんなの評価 :
類似してるかもしれないスレッド
- Emacs Part 40 (1001) - [92%] - 2012/9/7 0:30
- Emacs Part 47 (995) - [92%] - 2015/4/19 13:01
- Emacs Part 42 (1001) - [92%] - 2013/6/9 5:15 △
- Emacs Part 44 (1001) - [92%] - 2014/2/8 8:01 △
- Emacs Part 53 (989) - [92%] - 2022/12/5 12:45
- Emacs Part 46 (984) - [92%] - 2014/12/24 14:15
- Emacs Part 45 (1001) - [92%] - 2014/6/23 9:45
- Emacs Part 48 (997) - [92%] - 2015/12/9 15:15
- Emacs Part 49 (974) - [92%] - 2016/12/7 9:45
- Emacs Part 33 (1001) - [92%] - 2010/3/9 20:01 ○
- Emacs Part 41 (1001) - [92%] - 2012/12/24 4:15
- Emacs Part 32 (1001) - [84%] - 2009/12/20 2:04 ○
- Emacs Part 31 (1001) - [84%] - 2009/10/23 10:31 ○
- Emacs part 23 (1001) - [84%] - 2008/2/8 0:04 ☆
トップメニューへ / →のくす牧場書庫について