私的良スレ書庫
不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitterでログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。
元スレEmacs part 28
emacs スレッド一覧へ / emacs とは? / 携帯版 / dat(gz)で取得 / トップメニューみんなの評価 : ○
レスフィルター : (試験中)
recenter-top-bottom 見て書いてみた。
(defvar move-to-window-line-last-op nil
"Indicates the last move-to-window-line operation performed.
Possible values: `top', `middle', `bottom'.")
(defun move-to-window-line+ (&optional arg)
(interactive "P")
(cond (arg (move-to-window-line arg))
((or (not (eq this-command last-command))
(eq move-to-window-line-last-op 'bottom))
(setq move-to-window-line-last-op 'middle)
(move-to-window-line nil))
(t
(cond ((eq move-to-window-line-last-op 'middle)
(setq move-to-window-line-last-op 'top)
(move-to-window-line 0))
((eq move-to-window-line-last-op 'top)
(setq move-to-window-line-last-op 'bottom)
(move-to-window-line -1))))))
(defvar move-to-window-line-last-op nil
"Indicates the last move-to-window-line operation performed.
Possible values: `top', `middle', `bottom'.")
(defun move-to-window-line+ (&optional arg)
(interactive "P")
(cond (arg (move-to-window-line arg))
((or (not (eq this-command last-command))
(eq move-to-window-line-last-op 'bottom))
(setq move-to-window-line-last-op 'middle)
(move-to-window-line nil))
(t
(cond ((eq move-to-window-line-last-op 'middle)
(setq move-to-window-line-last-op 'top)
(move-to-window-line 0))
((eq move-to-window-line-last-op 'top)
(setq move-to-window-line-last-op 'bottom)
(move-to-window-line -1))))))
(setq prefix:move-strategy-cur-index 0)
(defun prefix:move-point (p)
(interactive "P")
(if (or (not (eq this-command real-last-command))
(< 2 prefix:move-strategy-cur-index))
(setq prefix:move-strategy-cur-index 0))
(multiple-value-bind (arg msg)
(case prefix:move-strategy-cur-index
(0 (list p "rel"))
(1 '(0 "top"))
(2 '(-1 "bottom")))
(move-to-window-line arg)
(message msg))
(incf prefix:move-strategy-cur-index))
(global-set-key (kbd "M-R") 'prefix:move-point)
本当だ、綺麗になった多謝
(defun prefix:move-point (p)
(interactive "P")
(if (or (not (eq this-command real-last-command))
(< 2 prefix:move-strategy-cur-index))
(setq prefix:move-strategy-cur-index 0))
(multiple-value-bind (arg msg)
(case prefix:move-strategy-cur-index
(0 (list p "rel"))
(1 '(0 "top"))
(2 '(-1 "bottom")))
(move-to-window-line arg)
(message msg))
(incf prefix:move-strategy-cur-index))
(global-set-key (kbd "M-R") 'prefix:move-point)
本当だ、綺麗になった多謝
自分でも書いてみました。
(defvar move-to-window-line-last-op nil)
(defun move-to-window-line-top-bottom (&optional arg)
(interactive "P")
(move-to-window-line
(or arg
(setq move-to-window-line-last-op
(and (eq this-command last-command)
(cdr (assq move-to-window-line-last-op
'((nil . 0) (0 . -1)))))))))
(global-set-key [?\M-r] 'move-to-window-line-top-bottom)
(defvar move-to-window-line-last-op nil)
(defun move-to-window-line-top-bottom (&optional arg)
(interactive "P")
(move-to-window-line
(or arg
(setq move-to-window-line-last-op
(and (eq this-command last-command)
(cdr (assq move-to-window-line-last-op
'((nil . 0) (0 . -1)))))))))
(global-set-key [?\M-r] 'move-to-window-line-top-bottom)
Emacs pretest 22.0.90
http://lists.gnu.org/archive/html/emacs-devel/2009-02/msg00051.html
First Emacs 23 pretest released
http://blog.orebokech.com/2009/02/first-emacs-23-pretest-released.html
Emacs 23.0.90 pretest in FreeBSD Ports
http://keramida.wordpress.com/2009/02/02/emacs-23090-pretest-in-freebsd-ports/
Join us with GNU Emacs 23 pretest
http://www.faulhammer.org/archiv-mainmenu-31/35-gentoo/274-join-us-with-gnu-emacs-23-pretest
http://lists.gnu.org/archive/html/emacs-devel/2009-02/msg00051.html
First Emacs 23 pretest released
http://blog.orebokech.com/2009/02/first-emacs-23-pretest-released.html
Emacs 23.0.90 pretest in FreeBSD Ports
http://keramida.wordpress.com/2009/02/02/emacs-23090-pretest-in-freebsd-ports/
Join us with GNU Emacs 23 pretest
http://www.faulhammer.org/archiv-mainmenu-31/35-gentoo/274-join-us-with-gnu-emacs-23-pretest
emacsの参考書を買おうと思っているのですが、オライリーの入門GNU Emacsの第2版と第3版では違うのでしょうか?
大差ないのであれば第2版を買おうと思ってます。
アドバイスお願いします。
大差ないのであれば第2版を買おうと思ってます。
アドバイスお願いします。
>>160
貧乏なもんで。
貧乏なもんで。
>>161
ヘルプ関係充実しているから、買わなくていいと思うなあ
チュートリアルを1週毎日1回やって、体に馴染ませて
ヘルプ周りのコマンド操作を極めれば問題ない
ネットで類似の資料があっても、入門本ってだけで買ってくれるから
とりあえず、出している気がする
ヘルプ関係充実しているから、買わなくていいと思うなあ
チュートリアルを1週毎日1回やって、体に馴染ませて
ヘルプ周りのコマンド操作を極めれば問題ない
ネットで類似の資料があっても、入門本ってだけで買ってくれるから
とりあえず、出している気がする
>>162
アドバイスありがとう!!感謝です。
ヘルプを熟読します!!
もうひとつ質問があるのですが、私はschemeを1年程前からやっているのですが
Elispは末尾最適化されるんですか?
それと、Elispでの繰り返しはこうやるんだというコードを教えていただきたいです。
たぶん、emacs wikiでダウンロードしてソースコード読めと言われるかもしれませんがお願いします。
アドバイスありがとう!!感謝です。
ヘルプを熟読します!!
もうひとつ質問があるのですが、私はschemeを1年程前からやっているのですが
Elispは末尾最適化されるんですか?
それと、Elispでの繰り返しはこうやるんだというコードを教えていただきたいです。
たぶん、emacs wikiでダウンロードしてソースコード読めと言われるかもしれませんがお願いします。
>末尾再帰最適化
されない
>elispでの繰り返し
reduceやmapcarのような高階関数やloopマクロを使う
例:reduceをloopマクロで
(defun reduce (f a0 xs)
(loop with a = a0
for x in xs
do (setq a (funcall f a x))
finally (return a)))
(foldl '+ 0 '(1 2 3)) ; => 6
loopマクロはコンパイル時にwhileスペシャルフォームの形に変換されるので
コンパイルすれば効率もまずまず
ただしloopマクロもreduceも(require 'cl)しないと使えない
clパッケージには他にも有用なマクロや関数が定義されている
詳しくは(info "CL")を参照すること
されない
>elispでの繰り返し
reduceやmapcarのような高階関数やloopマクロを使う
例:reduceをloopマクロで
(defun reduce (f a0 xs)
(loop with a = a0
for x in xs
do (setq a (funcall f a x))
finally (return a)))
(foldl '+ 0 '(1 2 3)) ; => 6
loopマクロはコンパイル時にwhileスペシャルフォームの形に変換されるので
コンパイルすれば効率もまずまず
ただしloopマクロもreduceも(require 'cl)しないと使えない
clパッケージには他にも有用なマクロや関数が定義されている
詳しくは(info "CL")を参照すること
>>164
elispでの繰り返しというなら基本的に使われるのは
・while (組込み制御構造)
・dolist あるいは dotimes (マクロ)
・高階関数なら mapcar あるいは mapc (副作用が目的の場合)
ですね。
手元でemacsが動いているなら付属のelispがたくさんインストールされている
ディレクトリで(z)grepすれば用例は出てきます。
elispでの繰り返しというなら基本的に使われるのは
・while (組込み制御構造)
・dolist あるいは dotimes (マクロ)
・高階関数なら mapcar あるいは mapc (副作用が目的の場合)
ですね。
手元でemacsが動いているなら付属のelispがたくさんインストールされている
ディレクトリで(z)grepすれば用例は出てきます。
■ おすすめ2ちゃんねる 開発中。。。 by FOX ★
このスレを見ている人はこんなスレも見ています。(ver 0.20)
FON総合スレッド Part27【無線LAN無料相互利用】 [通信技術]
おもしろいOSないですか、ないですか? [OS]
くだらねえ質問はここに書き込め! Part 171 [Linux]
【初心者専用】 Ubuntu Linux 34 [Linux]
Debian GNU/Linux スレッド Ver. 58 [Linux]
このスレを見ている人はこんなスレも見ています。(ver 0.20)
FON総合スレッド Part27【無線LAN無料相互利用】 [通信技術]
おもしろいOSないですか、ないですか? [OS]
くだらねえ質問はここに書き込め! Part 171 [Linux]
【初心者専用】 Ubuntu Linux 34 [Linux]
Debian GNU/Linux スレッド Ver. 58 [Linux]
最近、CVS版で
(set-default-font "M+2VM+IPAG circle-16")
としていると、実際に表示されるフォントの大きさが日によって(その時々のリビジョンで)
変わるんですが、何がCVS HEADでは起こってるんでしょうか。
(set-default-font "M+2VM+IPAG circle-16")
としていると、実際に表示されるフォントの大きさが日によって(その時々のリビジョンで)
変わるんですが、何がCVS HEADでは起こってるんでしょうか。
wnn7egg が emacs23 CVS Head で使えない.
23.0.50 までは使えていたが,23.0.60 になってから使えなくなった.
wnn7egg をどのようにしたら使えるようになりますか?
23.0.50 までは使えていたが,23.0.60 になってから使えなくなった.
wnn7egg をどのようにしたら使えるようになりますか?
>>176
2009-02-10T09:30:00+0900ころのCVSでは直ってなかった。
原因がemacsなのかfontconfigなのか分からないんだよね。
firefoxのtrunkでも昔の一時期発生してたんだけど、彼らは抑え込めたみたい。
ということは、emacsのバグ?
前スレに書かれてた、Mewでメールを読み進むとウィンドウの縦サイズがどんどん小さくなるのも当方で発生するけど、よくわからん。
デフォルトで使うフォントは、fc-matchを引数なしで実行した時に表示されるフォント?
2009-02-10T09:30:00+0900ころのCVSでは直ってなかった。
原因がemacsなのかfontconfigなのか分からないんだよね。
firefoxのtrunkでも昔の一時期発生してたんだけど、彼らは抑え込めたみたい。
ということは、emacsのバグ?
前スレに書かれてた、Mewでメールを読み進むとウィンドウの縦サイズがどんどん小さくなるのも当方で発生するけど、よくわからん。
デフォルトで使うフォントは、fc-matchを引数なしで実行した時に表示されるフォント?
Emacs23からdefault-frame-alistのheightがうまく反映されないんだけど、
皆さんはどうでしょうか?
1680x1050の液晶で57が最適なんだけど、起動しても画面の真ん中くらいにしか
ならない。例えば100とか300にしてもそれ以上増えない。
Emacsの問題と言うより、WindowManagerの問題な気がするが、どうやって調べ
たらいいか分からないです。(GNOME on Debian(lenny))
皆さんはどうでしょうか?
1680x1050の液晶で57が最適なんだけど、起動しても画面の真ん中くらいにしか
ならない。例えば100とか300にしてもそれ以上増えない。
Emacsの問題と言うより、WindowManagerの問題な気がするが、どうやって調べ
たらいいか分からないです。(GNOME on Debian(lenny))
heightは「行の高さ」(だよね?)だから、やっぱり最近フォントの情報が正しく取得・反映されていないため、とか。
emacsをcvs HEADをコンパイルしてみたんですが、
なんかかなり動きがスムーズになってるね。
なんかかなり動きがスムーズになってるね。
この時間のCVS HEADはいろんなファイルのバイトコンパイルでこけるな。
In toplevel form:
progmodes/cc-langs.el:130:1:Error: Wrong type argument: number-or-marker-p, nil
make[2]: *** [/usr/local/src/emacs_cvs/emacs/lisp/progmodes/cc-langs.elc] エラー 1
がっつり文章を書こうと思ってその前に、と最新版にしようとしたらこんなところで
ハマるとは……。
In toplevel form:
progmodes/cc-langs.el:130:1:Error: Wrong type argument: number-or-marker-p, nil
make[2]: *** [/usr/local/src/emacs_cvs/emacs/lisp/progmodes/cc-langs.elc] エラー 1
がっつり文章を書こうと思ってその前に、と最新版にしようとしたらこんなところで
ハマるとは……。
>>194 さっきそこを無事通過した
こちらでも今更新したら問題なく通過しました。
CVS HEADで、以下のように設定したフレームの幅、高さ指定がまったく機能しません。
これってほっとけば直るバグなのか、23.0.90では仕様が変わったのか、emacs.bugを見ても
いまいち判然としません。何かご存じの方いらっしゃいますか。
(setq default-frame-alist
(append
'(
(width . 38)
(height . 25) ;; ウィンドウサイズ
(left . 380) ; 左上隅 x 座標
(top . 45) ; 左上隅 y 座標
(cursor-type . box) ; 種類
(cursor-height . 8) ; 高さ
)
default-frame-alist))))
これってほっとけば直るバグなのか、23.0.90では仕様が変わったのか、emacs.bugを見ても
いまいち判然としません。何かご存じの方いらっしゃいますか。
(setq default-frame-alist
(append
'(
(width . 38)
(height . 25) ;; ウィンドウサイズ
(left . 380) ; 左上隅 x 座標
(top . 45) ; 左上隅 y 座標
(cursor-type . box) ; 種類
(cursor-height . 8) ; 高さ
)
default-frame-alist))))
>フレームの幅、高さ指定
この二つだけダメでこれ以外は機能してるということ?
俺が>>195時点でビルドしたやつではすべて問題ないです。
(topとleftはinitial-frame-alistで指定してますが)
この二つだけダメでこれ以外は機能してるということ?
俺が>>195時点でビルドしたやつではすべて問題ないです。
(topとleftはinitial-frame-alistで指定してますが)
man ls だと日本語が表示できないのに M-x woman ls だと普通に表示されてふいた
その後、いろいろ調べてみました。環境はFedora 10なんですが、サイズが調整できない問題が発生するのは
ノートPCです。もう1台、同じFedora 10のデスクトップ機があったのでそちらでCVS HEADに更新してみたところ、
そちらは197の設定で正しくサイズが指定できました。しかし、ノートPCにリモートでemacsを表示させると、
やはり全画面表示になってしまいます。これらのことから、現在発生している問題はFedoraのXもしくは
ディスプレイドライバに起因するのではないか、と考えています。そういうことがあり得るのかどうかはわかりませんが……。
ノートPCです。もう1台、同じFedora 10のデスクトップ機があったのでそちらでCVS HEADに更新してみたところ、
そちらは197の設定で正しくサイズが指定できました。しかし、ノートPCにリモートでemacsを表示させると、
やはり全画面表示になってしまいます。これらのことから、現在発生している問題はFedoraのXもしくは
ディスプレイドライバに起因するのではないか、と考えています。そういうことがあり得るのかどうかはわかりませんが……。
類似してるかもしれないスレッド
- Emacs part 25 (1001) - [92%] - 2008/8/10 0:18 ○
- Emacs part 22 (1001) - [92%] - 2008/1/18 7:47 ○
- Emacs part 27 (1001) - [92%] - 2009/1/23 18:47 ○
- Emacs part 23 (1001) - [92%] - 2008/2/8 0:04 ☆
- Emacs part 26 (1001) - [92%] - 2008/11/8 20:47 ○
- Emacs Part 48 (997) - [84%] - 2015/12/9 15:15
- Emacs Part 38 (1001) - [84%] - 2011/11/29 0:01
- Emacs part24 (991) - [84%] - 2008/5/10 5:08 ○
- Emacs Part 40 (1001) - [76%] - 2012/9/7 0:30
- Emacs Part 34 (1001) - [76%] - 2010/6/21 19:45 ○
- Emacs Part 33 (1001) - [76%] - 2010/3/9 20:01 ○
- Emacs Part 32 (1001) - [76%] - 2009/12/20 2:04 ○
- Emacs Part 41 (1001) - [76%] - 2012/12/24 4:15
トップメニューへ / →のくす牧場書庫について