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

Emacs part8

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。NGNG
各種 Emacs 関連はこちらで。

Emacs
http://cocoa.2ch.net/unix/kako/967/967450973.html
Emacs part2
http://pc.2ch.net/unix/kako/1001/10010/1001087615.html
Emacs part3
http://pc.2ch.net/unix/kako/1007/10076/1007618266.html
Emacs part4
http://pc.2ch.net/unix/kako/1013/10133/1013390142.html
Emacs part5
http://pc.2ch.net/unix/kako/1021/10217/1021734785.html
Emacs part6
http://pc.2ch.net/unix/kako/1032/10326/1032611750.html
Emacs part7
http://pc.2ch.net/test/read.cgi/unix/1042141693/

Emacs Lisp で書かれたプログラムのバグを知らせる方法
http://www.jpl.org/elips/BUGS-ja.html
0618名無しさん@お腹いっぱい。NGNG
> メールはmutt
> ブラウザはw3m(ムラムラッとしてきた時はmozilla)
> コード書くときは、nvi
> 文書作成は、LaTeXで良いだろ!
それって、まさか全部一台のPCでやるの?
0619名無しさん@お腹いっぱい。NGNG
>617 > テキストエディタはテキストエディタだよ。
そうですね。テキストエディタはテキストエディタですね。
emacsはテキストエディタではありませんが。
0620名無しさん@お腹いっぱい。NGNG
> メールはmutt
うん。で、書くのはnviね。
> ブラウザはw3m(ムラムラッとしてきた時はmozilla)
うん。で、テキストエリア書くのはnviね。
> コード書くときは、nvi
うん。
> 文書作成は、LaTeXで良いだろ!
うん。で、文書の入力はnviね。
0621名無しさん@お腹いっぱい。NGNG
>>617
> 何なんだよ一体

lisp 実行環境ですが何か?
0622名無しさん@お腹いっぱい。NGNG
emacs が lisp 循環評価器だというのは定説です。
0623名無しさん@お腹いっぱい。NGNG
>>617
> 何なんだよ一体

僕の友達です。

;; 元ねたきぼーん
0624名無しさん@お腹いっぱい。NGNG
>>617 帰れ帰れ!帰ってくれ! お願いだから二度と来ないでくれ!!!
0625名無しさん@EmacsNGNG
>616

XEmacs の新しいのって日本語まわり怪しくないのかしら?
おいらは、その関係で Emacs に乗り換えたですよ。


>617

一つの環境でなんでもできるってのは、やっぱ楽なんだよね。
エディットのためにテキストエディタを起動するってゆー作業が
うっとーしーとか、些細なレベルで。
あとは w3m の出力をそのままコピペ/エディットできたりとか。

作業モード切り替えの単位が根本的に違うんだろうなぁ。
vi な人と Emacs な人では。

# とはいえ Emacs は重すぎるし不安定だと思う。
# これって Emacs だから許せてるけど MS 製品だったらキレてると思うw
0626名無しさん@お腹いっぱい。NGNG
         (    )         (    )
          ):::::::(          )::::::::(
        /::::::::::::;\        /::::::::::::;\
       // |:::::::::::: l |       //´|:::::::::::: l |
       | | .|:::::::::::: | |       | | |::::::::::::::| |
        | | /::::::::::::/| |      // /::::::::::::/| |
        U |::::::::::/ U >617  U  |::::::::::/  | |
         |::::||:::|  | | ↓  | |  |::::||:::|  U
         |::::||::|   | /⌒彡/  |::::||::|
          | / | |   / 冫、)   | /.| |
         // | |   |  ` /   // | |
0627名無しさん@お腹いっぱい。NGNG
_i__
  |
  |          ∧_∧
  |        (;´Д`) ・・・
  |        ゝ ⊃⊃   ,、 _______
=i==============/ヽ、=" .il´釣れた!釣れた!)
⌒ヽ ---γ⌒ヽ---,i|XXxヽ、_ |'y' ̄ ̄ ̄ ̄ ̄ ̄
○ .l --- { ○ .l --ixXXXXX`i 。 バシャバシャ
〜〜〜〜〜〜〜゚` 〜〜〜〜 ´〜〜
0628名無しさん@お腹いっぱい。NGNG
>>625
># とはいえ Emacs は重すぎるし不安定だと思う。
># これって Emacs だから許せてるけど MS 製品だったらキレてると思うw
うちのセレ400のノートだとWin98で禿丸使うより
LinuxやFreeBSDでEmacs21使うほうが軽いです。
0629名無しさん@お腹いっぱい。NGNG
>>628
> ># とはいえ Emacs は重すぎるし不安定だと思う。
> うちのセレ400のノートだとWin98で禿丸使うより
> LinuxやFreeBSDでEmacs21使うほうが軽いです。

XEmacsの方も早いよ。
http://www.heimat.gr.jp/~nakaji/elips/20030507/thread.html
0630名無しさん@お腹いっぱい。NGNG
emacsで等差数列を連続生成したい時はどうすればいいの?
0631名無しさん@お腹いっぱい。NGNG
>>630
そういう関数書けば?
0632名無しさん@お腹いっぱい。NGNG
みてね〜♪
http://www1.free-city.net/home/s-rf9/page003.html
0633630NGNG
>>631
標準でないの?
0634630NGNG
人少ないんだね、この板。
0635_NGNG
http://homepage.mac.com/hiroyuki44/
0636630NGNG
関数ってをgoogleで調べたけどよくわからんのよね。
そのプログラム書いて欲しいな。
0637名無しさん@お腹いっぱい。NGNG
宿題か? 友達に聞けよ。
0638630NGNG
>>637
宿題じゃないけどさ。
知ってるなら教えて欲しいっす。
こういうのはプログラム出来る人には簡単なんでしょ?
書くと長くなる?
0639630NGNG
01
02
03
04
05
06
07
08
09
10
11
12



っていうのをやりたいっす。
0640名無しさん@お腹いっぱい。NGNG
>>639
キミは何歳なんだい?(w
0641名無しさん@お腹いっぱい。NGNG
(defun tousa-suretu (syoko kousa)
(let ((max (lsh -1 -1))
(ko syoko)
(ret nil))
(while (<= ko max)
(setq ret (cons ko ret)
ko (+ ko kousa)))
(nreverse ret)))
0642名無しさん@お腹いっぱい。NGNG
>>639

がんばって自分でやりましょう
Programming in Emacs Lisp
http://www.math.s.chiba-u.ac.jp/~matsu/lisp/emacs-lisp-intro-jp.html

GNU Emacs Lisp Reference Manual
http://flex.ee.uec.ac.jp/texi/eljman/eljman_toc.html
http://shakosv.sk.tsukuba.ac.jp/jdoc/Editors/NEmacs/elisp-jman/html/

また、Lispについての話題はスレ違いなので下記に逝って下さい。
Emacs Lisp
http://pc2.2ch.net/test/read.cgi/tech/1004551074


0643名無しさん@お腹いっぱい。NGNG
>>641
ださいなあ。再帰を使えよ。
0644名無しさん@お腹いっぱい。NGNG
>>643
Elisp Manual 嫁
> * Use iteration rather than recursion whenever possible. Function
> calls are slow in Emacs Lisp even when a compiled function is
> calling another compiled function.
0645名無しさん@お腹いっぱい。NGNG
>>643

(setq max-lisp-eval-depth (lsh -1 -1))
(defun tousa-suretu (syoko kousa)
(if (<= syoko (lsh -1 -1))
(cons syoko (tousa-suretu (+ syoko kousa) kousa))
(list syoko)))
0646名無しさん@お腹いっぱい。NGNG
なかなかの教えて君だな。
ほんの数分回答がないだけで、「人少ないんだね」かよ。pupu
0647630NGNG
>>646
できねー。
やりかたわかんねー。
0648名無しさん@お腹いっぱい。NGNG
>>647
といって済ませられるうちは必要ないってこった
0649630NGNG
>>648
いじわるいわないでよ。
できれば、プログラムを好きな所で実行するたびに1,2,3、とかやりたい。
0650630NGNG
アトム粉砕機 (atom smasher)
0651名無しさん@お腹いっぱい。NGNG
>>649
> できれば、プログラムを好きな所で実行するたびに1,2,3、とかやりたい。

だからスレ違いだって
0652名無しさん@EmacsNGNG
(defun gen (init diff n)
(let ((acc nil))
(dotimes (i n (reverse acc))
(push (+ init (* i diff)) acc))))

(gen 1 1 10)
=> (1 2 3 4 5 6 7 8 9 10)
0653652NGNG
>>649 こんなのか?

(defstruct arithmetic-sequence
(init 1) (diff 1) (n 0))
(defvar *my-sequence* nil)
(defun my-init (init diff n)
(setf *my-sequence* (make-arithmetic-sequence :init init :diff diff :n n)))
(defun my-gen ()
(let ((init (arithmetic-sequence-init *my-sequence*))
(diff (arithmetic-sequence-diff *my-sequence*))
(n (arithmetic-sequence-n *my-sequence*)))
(incf (arithmetic-sequence-n *my-sequence*))
(+ init (* n diff))))
(defun my-insert ()
(format "%02d" (my-gen)))
------
(my-init 1 1 0)
=> [cl-struct-arithmetic-sequence 1 1 0]

(my-insert)
"01"

(my-insert)
"02"
0654名無しさん@お腹いっぱい。NGNG
(display-time) で出てくるロードアベレージと
メール通知って消せますか?それと時刻の
モードライン表示位置をバッファ名の左側に
したいのですが可能でしょうか?
0655名無しさん@お腹いっぱい。NGNG
自分で書式を
(setq display-time-string-forms '(24-hours ":" minutes))
とか設定すれば消せます.

バッファ名の左側に表示ってのは global-mode-string ではなく
mode-line-format をいじらねばならんのでめんどうな予感.
0656名無しさん@お腹いっぱい。NGNG
>>653
lexical-let 使うと変数不要なのでいいかも。
でもスレ違いでうざいので書き直さなくていいです。
0657名無しさん@お腹いっぱい。NGNG
スレ違いだったのか.正直,すまんかった.逝ってくる.
0658654NGNG
>>655
ありがとうございました
0659名無しさん@お腹いっぱい。NGNG
emacs 21.3.50 限定
C-x C-k C-f %02d RET M-1 <f3> <f3> RET <f4>
あとは <f4> 押しまくれ!! スレ違いスマソ
0660名無しさん@お腹いっぱい。NGNG
>>659
情報さんくす。
しかし C-x C-k は ignore にしてるのであった。
0661名無しさん@お腹いっぱい。NGNG
>>605
>>ファイルの途中に自分で <?php 〜 ?> を追加しても
>>追加した <?php 〜 ?> の部分だけは php-modeになりません。(yahtml-modeから変わらない)

これは無理.手動で,(M-x mmm-parse-region として,その範囲を認識させる
しかない.

他の方法として,insert を使う方法がある.

http://www.bookshelf.jp/cgi-bin/goto.cgi?file=meadow&node=mmm-mode
が参考になる.

insert の設定サンプルは
http://mail.gnu.org/archive/html/help-gnu-emacs/2003-03/msg00123.html
など
0662あなたが探してるのってこれだよね?この中にあったよ♪NGNG
あなたが探してるのってこれだよね?この中にあったよ♪
http://angelers.free-city.net/index.html
0663名無しさん@お腹いっぱい。NGNG
xemacs で円記号をバックスラッシュで表示したいと思い、
jaspace.el を参考に下のようなコードを書いたんですが、
表示は出来るものの、その上でカーソルが表示できません。
何かうまい方法は無いものでしょうか。

(let ((table (specifier-instance current-display-table)))
(if (> (string-to-char "\\") (length table))
(setq table
(vconcat table
(make-vector
(1+ (- (char-to-int (string-to-char "\\")) (length table)))
nil))))
(aset table
(string-to-char "\\")
(vector
(let ((glyph (make-glyph (vector 'string :data "\\"))))
(set-glyph-face glyph 'japanese-yen-to-backslash-face)
glyph)))
(set-specifier current-display-table table))
0664名無しさん@お腹いっぱい。NGNG
途中で何度かセーブしてしまった後
(なのでrevert-bufferはできない)
一気に最初の状態までundoすることって
できますか?それか、ずっとundoを押し
続けてても最初の状態にくると一旦止まって
くれるような設定とか。
0665名無しさん@お腹いっぱい。NGNG
hoge~ というバックアップファイルは、
途中何度セーブしても、編集を開始した時の状態を保ってるよ。
それじゃ駄目なの?
0666名無しさん@お腹いっぱい。NGNG
cmigemo 使えてますか? うちは FreeBSD なんだけど動いてないんですが
0667名無しさん@お腹いっぱい。NGNG
>>665
664じゃないけどいい事知った。さんくす。
0668名無しさん@お腹いっぱい。NGNG
キー定義の方法で、

define-key と global-set-key

がありますが、両者の違いはなんですか?

どういう場面に使い分ければよいですか?
0669名無しさん@お腹いっぱい。NGNG
>>668
global-set-key を defun してるとこ読んでみ。
subr.el か keymap.el あたりにあるはず。

(global-set-key key command)

(define-key (current-global-map) key command)
とほぼ同じ。
0670名無しさん@お腹いっぱい。NGNG
(define-key (current-global-map) key command)

(define-key global-map key command)
はどう違うのだろう。
0671名無しさん@お腹いっぱい。NGNG
>>670
use-global-map() すると current-global-map() の方は変わるんじゃない?
0672名無しさん@お腹いっぱい。NGNG
>>671
なるほど。

| -- Function: use-global-map KEYMAP
| この関数は, キーマップKEYMAPを新たな現在のグローバルキーマップとす
| る. これは`nil'を返す.
|
| グローバルキーマップを変更することは, とうてい普通のことではない.

使ってる例を知りたいなぁ。
0673名無しさん@お腹いっぱい。NGNG
>>672
viperとかさ。
0674名無しさん@お腹いっぱい。NGNG
Emacsで文字入力中に間違えたとき、
間違えた部分を消そうとC-h(BSに設定してある)押すとヘルプみたいなのでてきちゃうんだけど
これを普通にBSみたいな挙動にはできませんか?
0675名無しさん@お腹いっぱい。NGNG
(load "term/bobcat")
0676名無しさん@お腹いっぱい。NGNG
>>674
(global-set-key "\C-h" 'backward-delete-char)
0677名無しさん@お腹いっぱい。NGNG
(keyboard-translate ?\^h 'backspace)とか、
(put 'backspace 'ascii-character 127)とか、
この辺り、方法乱立気味だね。
0678名無しさん@お腹いっぱい。NGNG
>>674
FAQ You〜!!
0679名無しさん@お腹いっぱい。NGNG
キーボードの話が出てるので便乗です。

611氏の言っていた
 >スペースのすぐ左 = ctrl
 >スペースのすぐ右 = meta
 >これ最強
上記のキーを実現するにはどうすればよいでしょうか?

当方、日本語106キーボードで
スペースの左は「無変換」、右は「変換」になってます。


0680名無しさん@お腹いっぱい。NGNG
GNU emacs の cvs 先端使ってるんですが,auto-fill が変じゃないですか?

aaaaaaaa
bbbbbbbbbb↓
した時には,
aaaaaaaa
bbbbbbbb
bb↓
となるのに,E-q すると
aaaaaaa
abbbbbb
bbbb↓
とずれたりします.文字カウントの方法が変わった?

0681名無しさん@お腹いっぱい。NGNG
>>679
xmodmap, xev
0682674NGNG
>676-678
(global-set-key "\C-h" 'backward-delete-char)
これはやっています。
普段はC-hがバックスペースの変わりになっていますが、
文字の変換前(ひらがなに下線がひいてある状態)に一文字戻りたくて
C-hするとemacsが2画面になり下の画面にヘルプのようなものが現れるんです。
これを直したくて聞きました。
宜しくお願いします。
0683名無しさん@お腹いっぱい。NGNG
>>682
漢字入力には何を使ってるの?
0684682NGNG
>683
FreeWnnとtamago使ってます。
C-hはバックスペースに、C-c C-hはヘルプにしてあります。
0685名無しさん@お腹いっぱい。NGNG
>>682
ならそう最初から書くべきだろう?
keyboard-translate で全部一括してしまう手も確かにあるけれど。
0686名無しさん@お腹いっぱい。NGNG
emacs lisp で、あるディレクトリの下を再帰的にたどって
その下にあるすべてのファイルにアクセスするやつってありますか?
0687名無しさん@お腹いっぱい。NGNG
>>686
「アクセス」とは?
0688名無しさん@お腹いっぱい。NGNG
ある領域の文を、先頭に任意のスペースの数をいれつつ桁数をそろえる
ようなことをしたいのです。
今はauto-fill-modeで先頭にスペース入れては行末にいってリターンって
やってまつ。

なんか良い方法はないでしょうか。
0689名無しさん@お腹いっぱい。NGNG
awk とかじゃ駄目なんですか?あんまり elisp 向きではないような.
0690 NGNG
http://www.book-i.net/ad05
0691_NGNG
http://homepage.mac.com/hiroyuki44/
0692名無しさん@お腹いっぱい。NGNG
こんなんでいいんじゃない? 再帰なので深いとスタックあふれちゃうけど。
(defun directory-for-each (directory-for-each-function dirname)
(let ((abs-name (expand-file-name dirname)))
(cond ((file-accessible-directory-p abs-name)
(dolist (file (directory-files abs-name))
(unless (member file '("." ".."))
(directory-for-each directory-for-each-function
(concat abs-name "/" file)))))
((file-readable-p abs-name)
(funcall directory-for-each-function abs-name))
(t nil))))

(directory-for-each #'print "~/tmp")
0693>>677NGNG
>>685
(keyboard-translate ?\^h 'backspace)じゃ駄目かい?

eggをloadした後に、
(define-key fence-mode-map "\C-h" 'fence-backward-delete-char)
でもいいけどね。
0694名無しさん@お腹いっぱい。NGNG
mmm-modeって3つ以上のメジャーモード使い分けられるの?
*.htmlファイルで yahtml-mode + css-mode + javascript-mode
みたいな感じで。
0695名無しさん@お腹いっぱい。NGNG
>>693
> (keyboard-translate ?\^h 'backspace)
これする人って help-char は何にしてるの?
(setq help-char ??) とか?
0696名無しさん@お腹いっぱい。NGNG
ttp://member.nifty.ne.jp/masarl/article/js-oop.html
ここにあるやつ以外にJavaScript用メジャーモードってある?
0697名無しさん@お腹いっぱい。NGNG
>>695
M-x help とか、もしくは直接 M-x describe-mode とか M-x describe-function とかやってまふ。
0698名無しさん@お腹いっぱい。NGNG
(global-unset-key "\C-q")
(global-set-key "\C-c\C-q" 'quoted-insert)
(global-set-key "\C-h" 'backward-delete-char-untabify)
(global-set-key "\C-ch" 'help-command)
(global-set-key "\M-?" 'help-for-help)
(global-set-key "\C-cc" 'compile)
(global-set-key "\C-c\C-r" 'toggle-read-only)
0699名無しさん@お腹いっぱい。NGNG
"\M-?", "\M-h", "\C-x?",
配布状態でhelpにkey bindingされていたのを見たことがある。
xemacs-20.xあたりは、splashやmanualにも"\C-x?"と書いてあった。
0700名無しさん@お腹いっぱい。NGNG
>>696
> ここにあるやつ以外にJavaScript用メジャーモードってある?

html-helper-modeのパッケージに入っていたYO
0701名無しさん@お腹いっぱい。NGNG
>>695
f1
0702名無しさん@お腹いっぱい。NGNG
>>698
> (global-unset-key "\C-q")
> (global-set-key "\C-c\C-q" 'quoted-insert)
これ何だろ。
まちがって C-q しちゃったときにめんどうだから、ってこと?
0703名無しさん@お腹いっぱい。NGNG
>>702
別にいいじゃん。妙なバインドした人が自慢したかっただけなんだから。
0704695NGNG
>>697
えと、そうでなくて。
デフォルトでは \C-x\C-h と打つと
C-x から始まるキーバインド一覧が表示されますよね。
その \C-h の変わりに何を使ってるのかなー、と。
0705名無しさん@お腹いっぱい。NGNG
701
0706名無しさん@お腹いっぱい。NGNG
>>704
キーボードの左上の方にあるF1と書かれたでっかいボタンを押してます
0707695NGNG
>>701,705,706
help-char いじる必要は無くて、
デフォルトで F1 が使えるんですね。
ありがとうございました。
0708名無しさん@お腹いっぱい。NGNG
>>695
Newsgroups: fj.editor.emacs
Subject: Re: (menu-bar-mode nil)
From: yas@is.tsukuba.ac.jp (Yasushi Shinjo)
Date: 05 May 2003 11:00:42 GMT
Organization: Institute of Information Sciences and Electronics, University ofTsukuba
Message-ID: <YAS.03May5200042@kirk.is.tsukuba.ac.jp>
X-Trace: gama.is.tsukuba.ac.jp 1052132221 20707 130.158.85.129 (5 May 2003 10:57:01 GMT)
X-Complaints-To: usenet@gama.is.tsukuba.ac.jp
NNTP-Posting-Date: 5 May 2003 10:57:01 GMT
In-reply-to: NAKAJI Hiroyuki's message of Sat, 03 May 2003 22:43:43 +0900

> (1) help-for-help (C-h or M-x help-for-help)
> C-h が他に割り当てられてるときがあるので、 M-x help-for-help とす
> ることが多いです。良く使うのは、f とか b とか、かな。

普通は、こうでしょう。

(global-set-key "\C-h" 'delete-backward-char)
(define-key esc-map "?" 'help-command)

なんで、流儀が違うんだろうね。

\\ 新城 靖 (しんじょう やすし) \\
\\ 筑波大学 電子・情報       \\
0709名無しさん@お腹いっぱい。NGNG
>>708
別にそんなんどーでもいいよ。
無駄にデカい引用してるしウザ。
俺は -nw では F1, X では (hyper h) 利用してるけど。
0710698NGNG
>>702
C-q を prefix(っていうんだっけ?)として使ってるから。
0711名無しさん@お腹いっぱい。NGNG
>>710
わしもC-qはprefixに使ってる。実際quoteしなきゃならん場面はそうないんでな。
主に自分で作った関数に割り当ててるな。あとC-l(recenter)もあんまりやらんので、
C-q C-lに移動して、C-lはexpand-abbrevに割り当ててる。

expand.elは便利よ。
0712名無しさん@お腹いっぱい。NGNG
Emacs21にて "I-search[あ]:"

日本語の検索が出来ません、正確には日本語の入力ができない…
Emacs20.7では出来るので何処かの設定の問題でしょうか?
0713名無しさん@お腹いっぱい。NGNG
Emacs22はまだですか?

アンチエイリアス欲しいです。
あとマルチスレッド。
0714名無しさん@お腹いっぱい。NGNG
>>712
Migemo使う方が良いのでは?
0715名無しさん@お腹いっぱい。NGNG
emacsで範囲選択、コピー&ペーストはどうやるのですか?
0716名無しさん@お腹いっぱい。NGNG
migemoといえば、
migemoかそれともisearchの
仕業かわからないんですが、
なんか最近大文字と小文字を区別しやがります

どうすれば直りますか?

(require 'migemo)
しか.emacsには書いとりません.


0717名無しさん@お腹いっぱい。NGNG
C-SPCでマークの最初を決めて、終わりの部分
でC-wするとカット、M-wするとcopy。
矩形選択もできる。

infoよもう。
■ このスレッドは過去ログ倉庫に格納されています