トップページunix
1001コメント289KB

Emacs part 21

■ このスレッドは過去ログ倉庫に格納されています
0001氷柱割り2007/01/08(月) 21:59:39
Emacsは環境だ。

GNU Emacs - GNU Project - Free Software Foundation (FSF)
http://www.gnu.org/software/emacs/

emacs - SCM: CVS Repositories [Savannah]
http://savannah.gnu.org/cvs/?group=emacs

EmacsWiki
http://www.emacswiki.org/

Emacs 電子書棚
http://www.bookshelf.jp/

前スレ
http://pc10.2ch.net/test/read.cgi/unix/1157294692/
0512名無しさん@お腹いっぱい。2007/03/24(土) 20:51:16
>>511
ttp://ximbiot.com/cvs/cvshome/
0513名無しさん@お腹いっぱい。2007/03/25(日) 01:50:54
教えていただきたいことがあります。

高さ30行でファイルを見ているとします。(モード行などを含まないで)
ファイルの先頭15行、末尾15行以外ではカーソルが常にバッファの中央に
来るようにしたいのですが、どうすればいいでしょうか?

(setq scroll-margin 15) ではうまく行きませんでした。
0514名無しさん@お腹いっぱい。2007/03/25(日) 01:54:10
中央に来なくていいと思います
0515名無しさん@お腹いっぱい。2007/03/25(日) 02:00:01
C-h f recenter
C-h v post-command-hook
0516名無しさん@お腹いっぱい。2007/03/25(日) 02:02:59
22.0.96 のネタを誰か出しとけよ。
0517名無しさん@お腹いっぱい。2007/03/25(日) 02:27:08
あなたの希望のものとは多分ちがっていると思うけど、スクロールするとき、こんな感じでやってる
-
(defadvice View-scroll-half-page-forward (after move-to-window-line activate)
(move-to-window-line nil))
(defadvice View-scroll-half-page-backward (after move-to-window-line activate)
(move-to-window-line nil))
(define-key global-map "\C-v" 'View-scroll-half-page-forward)
(define-key global-map "\M-v" 'View-scroll-half-page-backward)
-
Emacs22
0518名無しさん@お腹いっぱい。2007/03/25(日) 20:39:22
>>516
(hanoi 5)で落ちます。
0519名無しさん@お腹いっぱい。2007/03/25(日) 23:00:51

| | |
| <0> |
| <-1-> |
| <--2--> |
| <---3---> |
| <----4----> |
===============================================================================
0520名無しさん@お腹いっぱい。2007/03/25(日) 23:31:30
| | |
| <0> |
| <-1-> |
| <--2--> |
| <---3---> |
| <----4----> |
===========================================================================
05215202007/03/25(日) 23:37:05
ずれた...orz
0522名無しさん@お腹いっぱい。2007/03/25(日) 23:41:13
fkimura.comってどこに行っちゃったの?
知ってる人教えて下さい。
0523名無しさん@お腹いっぱい。2007/03/26(月) 05:51:55
範囲選択でコピーしてコピーした内容の新規ファイルを作成するのって
どうやるんでしょうか?
0524名無しさん@お腹いっぱい。2007/03/26(月) 05:54:19
C-x C-f ファイル名 RET C-y
0525名無しさん@お腹いっぱい。2007/03/26(月) 06:03:51
イメージ違ったけど出来ました。
即レス感謝!
0526名無しさん@お腹いっぱい。2007/03/26(月) 10:45:34
俺はdiredでサクっと複製してる
0527名無しさん@お腹いっぱい。2007/03/26(月) 11:12:42
>>523
M-x write-region
じゃない?
0528名無しさん@お腹いっぱい。2007/03/26(月) 14:15:08
22のstable版リリースしたらCVS HEADのバージョンって変わる?
0529名無しさん@お腹いっぱい。2007/03/27(火) 05:42:22
変らないとおもった?
0530名無しさん@お腹いっぱい。2007/03/30(金) 13:32:03
全バッファを対象に検索置換したいんですが
どうすればよいのでしょうか?
0531名無しさん@お腹いっぱい。2007/03/30(金) 13:33:12
ひねった回答↓↓↓↓
0532名無しさん@お腹いっぱい。2007/03/30(金) 14:46:54
emacsfsのbuffersディレクトリでsed
0533名無しさん@お腹いっぱい。2007/03/30(金) 14:59:57
>>530
全バッファ一気でしょ?
俺も知りたいな。
0534名無しさん@お腹いっぱい。2007/03/30(金) 15:00:26
M-: (loop for buf in (buffer-list) do (while (re-search-forward ...)))
0535名無しさん@お腹いっぱい。2007/03/30(金) 15:35:14
ひねりすぎだろおい
0536名無しさん@お腹いっぱい。2007/03/30(金) 17:57:31
これを適当に改造とか
http://www.bookshelf.jp/soft/meadow_49.html#SEC717
0537名無しさん@お腹いっぱい。2007/03/30(金) 21:35:15
WindowsでEmacsを使うのに参考になるサイトを教えてください。
または、簡単な流れを教えていただけると助かります。
お願いします。
0538名無しさん@お腹いっぱい。2007/03/30(金) 21:50:07
MSYS入れて最新ソースをビルドする
0539名無しさん@お腹いっぱい。2007/03/30(金) 23:15:21
>>537
定番
http://www.bookshelf.jp/soft/meadow.html
0540名無しさん@お腹いっぱい。2007/03/30(金) 23:34:51
534は十分まともな回答だろ(534よりもっと色々必要だけど)。
ただこの問題は一行で済ませるにはきついので、
狭いミニバッファではなく*scratch*で書きたくなるけど。
0541名無しさん@お腹いっぱい。2007/03/31(土) 01:25:39
vi の ex モード: を使うとかなり自由に編集できるけど
emacs の M-: をそういう編集目的で使ってる人いる?
原理的にはlispで何でも書けるからはるかに自由なんだけど
記述が冗長すぎて編集を主目的にするには向いてないかもな。
0542名無しさん@お腹いっぱい。2007/03/31(土) 02:21:59
カーソルのあるバッファを対象に何かしたいことは結構多いと思うので
eval-expressionがもっと拡張されると嬉しい。
自分も普段は*scratch*で書いてyankしてるので。
0543名無しさん@お腹いっぱい。2007/03/31(土) 04:41:23
つviper-mode
0544名無しさん@お腹いっぱい。2007/03/31(土) 11:54:10
phpのなかにprint<<<EOFでHTMLがあったり、
そのなかにJavaScriptがあったりしても、
うまいこと php-mode や JavaScript-mode を切り替えてくれる
そんな便利なモードないですか?
0545名無しさん@お腹いっぱい。2007/03/31(土) 11:57:39
ないよ
0546名無しさん@お腹いっぱい。2007/03/31(土) 15:35:57
>>544
mmm-mode
0547名無しさん@お腹いっぱい。2007/03/31(土) 19:54:51
一つのコマンドに複数の作業を連続して行わせるようにはできますか?
例えば、C-aにsplit-windowした直後にother-windowを連続して行わせる、
みたいな感じです。
0548名無しさん@お腹いっぱい。2007/03/31(土) 20:06:19
できます
0549名無しさん@お腹いっぱい。2007/03/31(土) 23:22:34
それができなかったら、Emacs使ってなかっただろうな・・・
05505562007/03/31(土) 23:50:23
>>546
(require 'mmm-mode)
(setq mmm-global-mode 'maybe)
(set-face-background 'mmm-default-submode-face nil)
(mmm-add-group 'complex-html '( (html-php-embedded
:submode php-mode
:face mmm-output-submode-face
:front "<?php"
:back "?>")
(html-css-embedded
:submode css-mode
:face mmm-declaration-submode-face
:front "<style\[^>\]*>"
:back "</style>")
(html-javascript-embedded
:submode java-mode
:face mmm-code-submode-face
:front "<script\[^>\]*>"
:back "</script>")
(html-html-embedded
:submode html-mode
:face mmm-code-submode-face
:front "<<<EO\[FT\]"
:back "EO[FT];")))
(add-to-list 'mmm-mode-ext-classes-alist '(html-mode nil complex-html))

こんなかんじで書いたんだけど、java-scriptとhtml-html-embeddedがうまく動かないし、
素のphp-modeに比べて、色分けが寂しいです。
ともあれ、ヒントありがとうございました。
0551名無しさん@お腹いっぱい。2007/04/01(日) 00:42:08
>>550
>素のphp-modeに比べて、色分けが寂しいです。
(setq mmm-font-lock-available-p t)
0552名無しさん@お腹いっぱい。2007/04/01(日) 01:43:39
filladapt.elってもう時代遅れなのかな。
最近M-qがfill-columnを考慮してくれないのが
これのせいと気付いたけど、特に対処法とかwebにないのね。
0553名無しさん@お腹いっぱい。2007/04/01(日) 01:46:36
Emacsを使いこなしたいと思うんなら、modeぐらい自分で作れるようにならなきゃだめだ

って聞いたけどマジ?
Emacsenって大変なんだね
0554名無しさん@お腹いっぱい。2007/04/01(日) 01:52:49
>>552
それ漏れも前に書き込んだけど、結局いつまでたっても直らんね。

>>553
つ easy-mode
0555名無しさん@お腹いっぱい。2007/04/01(日) 02:49:14
>>553
マジだがしかし大変なことではない。コピペで済まして、モード名をちょこっと編集するだけだし。
もちろん、盛り込みたいコマンドは自分で考え作るけどな。しかしそんなの他のどんなエディタでも
同じじゃんか。Emacsだから特に難しいなんてことはないぞ。
0556名無しさん@お腹いっぱい。2007/04/01(日) 07:46:57
と言うか、モード (もしくは類似の概念) を自分で作れるエディタってそうそうないから。
0557名無しさん@お腹いっぱい。2007/04/01(日) 08:56:36
作れなきゃいけないってことはない。
使えと言われたYaTeXだけのためにバカ正直にEmacs使ってる奴だって
グダグダ語ってばかりのカスよりは「使いこなして」らあな。
コード書かない人にはglobal-font-lock-modeだって「なにそれ?」で問題ない。
Emacsのふるまいをまとめて変えたい局面がない人には
モードの作成なんていらんし
そこでどうこう言ってくる馬鹿はほっとけ。

ただし「それじゃなんでEmacsなんか使ってるの?」と聞かれたら詰まるだろうけどな
0558名無しさん@お腹いっぱい。2007/04/01(日) 09:21:57
えー、「便利だから」って答えるよ。全然答に窮しない。
0559名無しさん@お腹いっぱい。2007/04/01(日) 10:52:29
コードも書かないなら、学習に費やす時間が大きすぎるよ。
ROIが低すぎ。
それでもさらっと答えるようなヤツは、……暇があるってことか。
0560名無しさん@お腹いっぱい。2007/04/01(日) 11:14:29
「自分には難しかった」ってのを3行費やすなんて
0561名無しさん@お腹いっぱい。2007/04/01(日) 11:49:38
Emacsに限らない一般論だから。
0562名無しさん@お腹いっぱい。2007/04/01(日) 13:29:27
>>560
初日でチュートリアルの基本コマンドをおぼえたなら、賞賛。
将棋のコマの動きよりはずっと難しかったよ。。
0563名無しさん@お腹いっぱい。2007/04/01(日) 14:21:32
学生の時に暇が無い?
それはそれで羨ましい。
0564名無しさん@お腹いっぱい。2007/04/01(日) 18:29:00
>>557
> 使えと言われたYaTeXだけのためにバカ正直にEmacs使ってる奴
俺か?確かに入口はそこだったけど、
今は.emacs内でhook書いたり気分次第でevalしたりして遊んでるよ
0565名無しさん@お腹いっぱい。2007/04/01(日) 19:19:41
>>559
コード書かなくても、周辺パッケージが便利だから多用している。
学習に時間かかるのは否定しないが、特に苦労と感じたことはない。
0566名無しさん@お腹いっぱい。2007/04/02(月) 11:02:44
大学でたら学ぶことを辞めちゃう人間って、
その時点で終わってると思うぞ。
0567名無しさん@お腹いっぱい。2007/04/02(月) 13:19:11
誰もそんなこと言ってねぇだろ。
0568名無しさん@お腹いっぱい。2007/04/02(月) 18:47:37
自覚あるってことか。
0569名無しさん@お腹いっぱい。2007/04/02(月) 18:51:16
スルー
0570名無しさん@お腹いっぱい。2007/04/02(月) 20:38:50
俺は高校だジジイ
0571名無しさん@お腹いっぱい。2007/04/02(月) 20:45:34
大学出てることが当然のように話進める人がいるのが不思議でならない
このスレ、板に限ったことでもないけど
0572名無しさん@お腹いっぱい。2007/04/02(月) 21:19:43
多分、大学に入ってから Emacs 触りだした人が多いからなのかも。

高専卒は別枠ですかそうですか。
0573名無しさん@お腹いっぱい。2007/04/02(月) 21:43:22
高専って工作員養成所でしょ?無理にEmacs使わなくてもいいですよ。
0574名無しさん@お腹いっぱい。2007/04/02(月) 22:17:09
Emacsを使うことがものすごいことだと思ってるんだ(笑)
0575名無しさん@お腹いっぱい。2007/04/02(月) 23:00:39
まっとうな議論をするための最低条件は大学を出ていること

と考えている人はいそう。
0576名無しさん@お腹いっぱい。2007/04/02(月) 23:14:29
まあでもそういう人って大学を出たことが人間の価値の
最後の砦になっちゃってる人というのが多いっすね。
大学出ということにすがるしかない人。憐れではあるけども。
0577名無しさん@お腹いっぱい。2007/04/02(月) 23:17:34
E m a c s
0578名無しさん@お腹いっぱい。2007/04/03(火) 00:11:11
学歴なんてと言う割には、なんでスルーできないかな...。
0579名無しさん@お腹いっぱい。2007/04/03(火) 00:19:27
「学歴なんて」なんて言ってるやつはいねえだろ
0580名無しさん@お腹いっぱい。2007/04/03(火) 01:36:41
よそでやれ
0581名無しさん@お腹いっぱい。2007/04/03(火) 02:13:11
自分も大学くらいは普通かなと思ってたが
家庭の事情で中退になってしまって
世の中の見方が少しかわったよ。
0582名無しさん@お腹いっぱい。2007/04/03(火) 02:24:53
去れ
0583名無しさん@お腹いっぱい。2007/04/03(火) 02:46:25
大学には何度でも入学できるよ
0584名無しさん@お腹いっぱい。2007/04/03(火) 06:43:04
いいから他でやれ
0585名無しさん@お腹いっぱい。2007/04/03(火) 14:55:31
保存時のファイルのタイムスタンプを操作することはできますか?
emms-tag-editor.el で mp3 のタグを更新したときにタイムスタンプを
変更したくないんですが。
0586名無しさん@お腹いっぱい。2007/04/03(火) 15:33:10
そんなelispがあったのかーと飛び付こうとしたけど、
mp3はmp3info使ってるのかあ。
せめて http://id3v2.sourceforge.net/ こっちなら使う気するが。

で、ほんだいだけど、先にタイムスタンプを保存しておいて、
touch も call-process するようにすればいいんでないかい。
0587名無しさん@お腹いっぱい。2007/04/03(火) 15:37:03
set-file-times
file-attributes
0588名無しさん@お腹いっぱい。2007/04/03(火) 15:52:21
>>586
もう一通り EMMS を快適に使えるように設定したもので。
Win32 なので多少修正が必要でしたが。

>>587
Emacs 本体でもできそうですね。試してみます。
05895852007/04/03(火) 17:55:03
emms-tag-editor-tag-file に around-advice して無事解決しました。
0590名無しさん@お腹いっぱい。2007/04/04(水) 01:40:15
>530
遅レスだがmoccur

これがないとやってられん
0591名無しさん@お腹いっぱい。2007/04/05(木) 03:18:21
elisp を勉強中です。
リストの最後の要素を削ったリストを作るにはどうすればいいのかしら?
0592名無しさん@お腹いっぱい。2007/04/05(木) 03:55:56
butlast
0593名無しさん@お腹いっぱい。2007/04/05(木) 11:43:06
>>591
最後の一個前の要素の cdr 部に nil 放り込めばいいんじゃ。
0594名無しさん@お腹いっぱい。2007/04/05(木) 15:15:22
(reverse (cdr (reverse foo))) とか
0595名無しさん@お腹いっぱい。2007/04/05(木) 15:16:38
>>592 じゃだめなん?
0596名無しさん@お腹いっぱい。2007/04/05(木) 15:50:39
>>593
butlastは結局、それやってるじゃん。
0597名無しさん@お腹いっぱい。2007/04/05(木) 16:47:20
勉強中っていうから、butlastと答えていいのか
セル操作を意識したいのか迷うとこではある
0598しょこたん2007/04/05(木) 16:57:21
>>591

(setq L '(1 2 3 4 5))
=> (1 2 3 4 5)
(setcdr (last L 2) nil)
=> nil
L
=> (1 2 3 4)
0599名無しさん@お腹いっぱい。2007/04/05(木) 17:13:16
なんかVIP臭い
0600名無しさん@お腹いっぱい。2007/04/05(木) 20:43:01
>>598
リテラルに破壊的操作をしちゃだめ
0601名無しさん@お腹いっぱい。2007/04/05(木) 23:11:55
どいうこと
0602名無しさん@お腹いっぱい。2007/04/05(木) 23:40:28
(defun foo () '(1 2 3 4 5))
(setcdr (last (foo) 2) nil)
(foo)
=> (1 2 3 4)

てことじゃね?
0603名無しさん@お腹いっぱい。2007/04/05(木) 23:55:53
そりゃ有名な罠(ってほどでもない)だわな
0604名無しさん@お腹いっぱい。2007/04/06(金) 09:32:57
罠というより常識だろ。
ネイティブコンパイルするものだったら
segmentation faultだかbus errorだかを食らって死んでもおかしくない。
06055912007/04/06(金) 18:23:48
いっぱいありがとう。

butlast を使えということでしょうか。

> 最後の一個前の要素の cdr 部に nil 放り込めばいいんじゃ。

ということはしてはいけないということ?
0606名無しさん@お腹いっぱい。2007/04/06(金) 18:52:57
>>605
butlast の実装が↓になってるということ。
> > 最後の一個前の要素の cdr 部に nil 放り込めばいいんじゃ。
0607名無しさん@お腹いっぱい。2007/04/06(金) 18:56:44
こんな感じの事なら良くやるけどね。

(defun new-id () (let ((l '(0))) (setcar l (1+ (car l)))))
(new-id)
=> 1
(new-id)
=> 2
(new-id)
=> 3
0608名無しさん@お腹いっぱい。2007/04/06(金) 20:23:44
なんでそうなるの?
lispわかんね。
0609名無しさん@お腹いっぱい。2007/04/06(金) 21:52:37
なんとなく new-id が呼ばれるたんびに '(0) が生成されて、
それが l にバインドされる...みたいに思ってると
それは間違いで、'(0) が生成されるのは defun が evaluate
された時なんだろうな。
0610名無しさん@お腹いっぱい。2007/04/06(金) 22:38:00
>>609
read されたときじゃないの?
0611名無しさん@お腹いっぱい。2007/04/06(金) 22:56:41
メモリが "read" になることはできませんでした><
■ このスレッドは過去ログ倉庫に格納されています