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

Emacs Part 44

レス数が900を超えています。1000を超えると表示できなくなるよ。
0001名無しさん@お腹いっぱい。2013/12/14(土) 17:36:04.45
語り合いましょう。

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

EmacsWiki: サイトマップ
http://www.emacswiki.org/emacs/

前スレ
Emacs Part 43
http://toro.2ch.net/test/read.cgi/unix/1370754332/
0840名無しさん@お腹いっぱい。2014/02/05(水) 13:37:16.37
>>807
EmacsといいBazaarといいオワコンなものを使うとは!
0841名無しさん@お腹いっぱい。2014/02/05(水) 13:48:56.04
今時オワコンなんて死語を得意げに使ってる輩がいるとは
0842名無しさん@お腹いっぱい。2014/02/05(水) 13:54:03.49
VCS使わずにやりくりするってのは、むしろ上流側だからできるんじゃないの。
下流でそんなやり方したら、リスクが大きい。
0843名無しさん@お腹いっぱい。2014/02/05(水) 13:54:18.44
>>839
vim もそこは同じ。
0844名無しさん@お腹いっぱい。2014/02/05(水) 14:05:41.35
組込みの場合、上(カーメーカと仕様整合)から下(コーディング)までやりますよ。
0845名無しさん@お腹いっぱい。2014/02/05(水) 14:24:20.27
vim 同士はロックファイル作るからわかるけどねえ。
0846名無しさん@お腹いっぱい。2014/02/05(水) 14:40:56.37
>>845
いやだから Emacs も同じで >>788 なんだってば。
0847名無しさん@お腹いっぱい。2014/02/05(水) 14:45:25.92
hiwin でも使ってみるかなと思って何気なく検索したら
BGEX パッチ版が今でも普通にメンテされててちょっと感動したわ
画像はともかく、公式でもバッファ毎に face の設定変えたり背景色変えられるようにならんかなー
0848名無しさん@お腹いっぱい。2014/02/05(水) 15:59:11.43
Emacs本体のリポジトリをBazaarからGitに移そうかという話はどうなりましたか
0849名無しさん@お腹いっぱい。2014/02/05(水) 16:05:19.10
emacs24.3を使っています
lexical-letとletの使い方が理解できていないので質問します
(lexical-let ((foo '(a)))
(add-to-list 'foo 'b)
foo)
;; Symbol's value as variable is void: foo

(let ((foo '(a)))
(add-to-list 'foo 'b)
foo)
;; => (b a)
add-to-listの説明にはLIST-VARに要求される変数のスコープについて説明されていませんので、
lexical-letの方でも動くと思ったのですが、何がおかしいのでしょうか
0850名無しさん@お腹いっぱい。2014/02/05(水) 16:21:46.25
>>849
lexical-let は common lisp のものと違って、かなり無理やりな方法で実装されてます。
(macroexpand '(lexical-let (foo) (setq foo 100)))
をやってみればわかるけど、body の中の foo を使ってるところが書き換わるようになってるわけね。

24 からは本物の lexical binding が実装されてるから本当にそれが必要ならそっちを使ったほうがいいかも。
ただし、ファイル単位での実装になるから局所的に使いたいとかだと面倒かもしれない。
↓参照のこと。
http://www.gnu.org/software/emacs/manual/html_mono/elisp.html#Lexical-Binding
08518492014/02/05(水) 16:42:41.64
ありがとうございます。そうだったのですか。
lexical-bindingの方を早速使ってみます。
0852名無しさん@お腹いっぱい。2014/02/05(水) 18:49:46.09
GmailをEmacsから見るGnus Gmailって使ってる方いらっしゃいます?

Mewで見るのに挫折した経緯があってブラウザから使っているのですが、
興味があるので使っている方が居たら感想を聞きたいです。
0853名無しさん@お腹いっぱい。2014/02/05(水) 19:12:48.91
Gnus Gmail は知らんけど普通に Gnus から Gmail 読めてるよ。
もっともブラウザからのほうが使いやすいからよっぽどのことがない限り Emacs からは読んでないけど。
0854名無しさん@お腹いっぱい。2014/02/05(水) 19:47:10.97
wlでgmail読んでるな。
スマフォの専用アプリで済ます場合が多いが。
0855名無しさん@お腹いっぱい。2014/02/05(水) 19:50:47.06
wl の方が Gnus より普通のメーラ(?)っぽい感じでわかりやすい気がする。
0856名無しさん@お腹いっぱい。2014/02/05(水) 20:25:19.67
Gnusはニュースリーダだし。
0857名無しさん@お腹いっぱい。2014/02/05(水) 20:41:39.84
使い方覚えようって思うんだけど毎回挫折するな Gnus は。
しっかりメンテされてるしよさそうではあるんだけど。
0858名無しさん@お腹いっぱい。2014/02/05(水) 20:58:01.58
nntpってまだあるんだ
0859名無しさん@お腹いっぱい。2014/02/05(水) 21:04:59.29
Gmailって普通にIMAPでアクセスできるからなぁ。
0860名無しさん@お腹いっぱい。2014/02/05(水) 21:07:58.43
mu というメールクライアントもあるよ
http://www.djcbsoftware.nl/code/mu/
0861名無しさん@お腹いっぱい。2014/02/05(水) 21:35:29.56
よく考えたら、Emacsしか起動しない軽量Linuxディストリ作ればよくね?
アプリとか全部Emacs Lispで作ればLispの理想郷できあがり。
0862名無しさん@お腹いっぱい。2014/02/05(水) 21:37:11.61
Emacsは環境
0863名無しさん@お腹いっぱい。2014/02/05(水) 21:44:57.86
>>861
誰だったかログインシェルを Emacs にした記事を書いた人がいた記憶があるんだけど
見つからんな。
dankogai だったような気がするんだけど・・・
0864名無しさん@お腹いっぱい。2014/02/05(水) 22:12:33.20
diffとか必須の外部コマンドは沢山あるからEmacsだけは無理だね
ただ、必須の外部コマンド+Emacs+ブラウザ(Firefox)だけで十分だけど
0865名無しさん@お腹いっぱい。2014/02/05(水) 22:15:09.31
昔は Emacs だけあればあと要らないかなーだったけど
今はブラウザがあればあと要らないかなーな感じになってきたな
あんまりプログラム書かなくなったからってのも大きいけど
0866名無しさん@お腹いっぱい。2014/02/05(水) 22:27:02.80
そういえばブラウザ上でvimは動いてたな(Emscriptenを使ってる)
Emacsはダンプの問題があるから難しそうだ
ただWebアプリはファイルシステムにアクセスできないから移植されても常用はできないよ
0867名無しさん@お腹いっぱい。2014/02/05(水) 22:36:50.68
ダンプとか必要か?
NTEmacsとかしてないだろ
0868名無しさん@お腹いっぱい。2014/02/05(水) 22:48:25.59
してる
0869名無しさん@お腹いっぱい。2014/02/05(水) 22:55:00.69
ダンプの問題つっても別にダンプしないと動かないわけでもないしね。
0870名無しさん@お腹いっぱい。2014/02/05(水) 23:04:20.99
>>866
よく考えたらサーバー上のファイルは読み書きできるから、クラウドっぽい
サービスにしてブラウザ内でEmacs動かすみたいな事はできそう
0871名無しさん@お腹いっぱい。2014/02/05(水) 23:16:35.40
別に Emacs に限定せんでもブラウザ上で端末エミュレータが動けばそれでいいような。
そしてブラウザ上で動く端末エミュレータはすでにあるからやろうと思えば Emacs on Chrome とかすでに可能なんだよね。
どっか適当なレンタル鯖でも借りれば。
0872名無しさん@お腹いっぱい。2014/02/05(水) 23:22:44.03
それだとEmacs自体はサーバーで動いている事になるよね
クライアントのブラウザ上で全てやらないとサーバーに結構な負荷が掛かりそうだ
0873名無しさん@お腹いっぱい。2014/02/05(水) 23:29:34.97
みんなで1つのEmacsをクラウド上で共有して
設定ファイルを共同編集できるようにしたらなんか
大革命が起こりそうだな。
最初は「てめー勝手に変な advice してんじゃねー」
みたいな喧嘩ばっかりなんだけど
そうやって叩きあっているうちに
巨大な統一Emacsライブラリーが出来ていく。
そして全世界のEmacserがひとつになる。
0874名無しさん@お腹いっぱい。2014/02/05(水) 23:34:56.48
エモい
0875名無しさん@お腹いっぱい。2014/02/05(水) 23:36:02.65
そういうのとは違うけど、ちょっと前に describe-function とかにコメントが追記ができて
しかもそれがネット上で共有出来るってパッケージがあったんだよ
0876名無しさん@お腹いっぱい。2014/02/06(木) 00:18:43.88
排他制御でおもいだしたが、libclangとか使った外部プロセスとemacsで通信しつつソース編集とかやると、
パーサーがパースしたファイルとかメモリマップドファイルでロックされてまうのよね。
winの場合だと、外部プロセスおとすか、そいつに、ロック解除させないとemacsからセーブできなくなる。
0877名無しさん@お腹いっぱい。2014/02/06(木) 00:22:17.96
>>875 これ?

http://www.emacswiki.org/emacs/usage-memo.el
0878名無しさん@お腹いっぱい。2014/02/06(木) 00:28:23.14
>>873

>>668 がそれにあたるのでは。Pull Requestやissueで共同編集してることになるし。
0879名無しさん@お腹いっぱい。2014/02/06(木) 00:34:21.40
>>877
いや、こっち
http://d.hatena.ne.jp/meech/20101007/1286403878

↓みたいな内容が describe-function に挿入されたり編集できたりする
http://elisp.net/editable-help/elisp/function/loop

面白いんだけどニッチ需要すぎた
0880名無しさん@お腹いっぱい。2014/02/06(木) 01:19:09.35
helmのプロンプトで日本語が入力できなくなったんですけど(ddskk)
何か変更があったんですか?
0881名無しさん@お腹いっぱい。2014/02/06(木) 02:16:52.43
>>879 初めて知った。おもしろいね。
0882名無しさん@お腹いっぱい。2014/02/06(木) 02:25:51.91
Vim界隈でもめごとがあったみたい
0883名無しさん@お腹いっぱい。2014/02/06(木) 06:54:42.30
>>873
その革命は40年にもう起きた
その結果ストールマンは物理学者にならず
emacsがいまここにある
ハッカーズ読むといい
0884名無しさん@お腹いっぱい。2014/02/06(木) 10:00:32.02
ハッカーズすごく面白かったし勉強になったけど
そういえば友達に貸したっきり帰ってきてないや
0885名無しさん@お腹いっぱい。2014/02/06(木) 14:25:08.61
Emacs JP で管理しているパッケージ - Emacs JP
http://emacs-jp.github.io/maintenances/
ここで配布されているelslceenとtabbarはどういう点が違うのでしょう?
0886名無しさん@お腹いっぱい。2014/02/06(木) 14:33:52.41
実際に入れてみて確かめてみよう!
0887名無しさん@お腹いっぱい。2014/02/06(木) 15:05:48.20
確かめてから後で自分で自分にレスをするんだろ
0888名無しさん@お腹いっぱい。2014/02/06(木) 15:17:42.62
org-modeで指定した番号からリストを作ろうと思い
http://orgmode.org/manual/Plain-lists.html
これの
>Ordered list items
>If you want a list to start with a different value (e.g., 20), start the text of the item with [@20]4.
を試してみたのですが全然うまくいきません
1. foo
2. test
[@20] bar
barの終わりにカーソルをおいてM-<RET> (org-insert-heading) を入力したら
1. foo
2. test
[@20] bar
3.
こうなってしまいます
望むのはこっちです
1. foo
2. test
20. bar
21.
よろしくお願いします
08898882014/02/06(木) 15:19:24.38
半角空白が見えなくなってわかりづらくなってしまいました。すみません
全角空白に置き換えてもう一度ポストします
org-modeで指定した番号からリストを作ろうと思い
http://orgmode.org/manual/Plain-lists.html
これの
>Ordered list items
>If you want a list to start with a different value (e.g., 20), start the text of the item with [@20]4.
を試してみたのですが全然うまくいきません
1. foo
2. test
  [@20] bar
barの終わりにカーソルをおいてここでM-<RET> (org-insert-heading) を入力したら
1. foo
2. test
  [@20] bar
3.
こうなります
望むのはこういうものです
1. foo
2. test
  20. bar
  21.
よろしくお願いします
0890名無しさん@お腹いっぱい。2014/02/06(木) 15:50:52.82
emacs-jp でメンテされてるのが最新なのかと思ったけど
必ずしもそうではないんだな
migemo とか公式の方が更新されてたりする
http://migemo.cvs.sourceforge.net/viewvc/migemo/migemo/migemo.el.in?view=log
0891名無しさん@お腹いっぱい。2014/02/06(木) 15:58:05.63
なんかハブサイトって自己満足でしかないような
0892名無しさん@お腹いっぱい。2014/02/06(木) 16:01:42.97
なんとなく公式がもうメンテしてない雰囲気だったからかねえ
0893名無しさん@お腹いっぱい。2014/02/06(木) 16:15:29.88
MELPAは自動で追従してるな
0894名無しさん@お腹いっぱい。2014/02/06(木) 16:35:04.56
melpa でインストールされる migemo は emacs-jp の migemo だよ
0895名無しさん@お腹いっぱい。2014/02/06(木) 16:59:59.99
あれ?MELPAのほうも去年三月とかに更新されてるから新しくなってるのかと思ったら
1.9をベースに本家から分岐して違う修正が入ってるんだな
0896名無しさん@お腹いっぱい。2014/02/06(木) 17:03:43.89
なんかややこしいな。
誰が得をしてるんだ、これは。
0897名無しさん@お腹いっぱい。2014/02/06(木) 17:18:11.55
emacs-jpの方は新しいemacsへの対応パッチとか取り込んでmelpaに反映される
公式の方は開発者本人が好きなように修正
リリースバージョンと開発バージョンみたいなものかね?
適当なタイミングでマージすれば問題無いんじゃね?
0898名無しさん@お腹いっぱい。2014/02/06(木) 17:26:42.31
ややこしいことに公式メンテナの白井さんも github 上に migemo 持ってるんだよね
https://github.com/Hideyuki-SHIRAI/migemo-for-ruby1.9
そこは見てるみたいだけど CVS の方はなんとなくウォッチしてなさそうな気が・・・

configure 使ってるからファイルが *.el.in になってたり、メインでの開発が CVS 上だったりと
MELPA のレシピ書きづらい/fork してどうこうしにくいってのがあるから
新規にリポジトリ作ったのもわからんでもない
0899名無しさん@お腹いっぱい。2014/02/06(木) 17:27:07.11
>>664
elisp-slime-nav いいわ
これから愛用することになりそうだ
0900名無しさん@お腹いっぱい。2014/02/06(木) 17:40:32.85
CVSの方、最新かというとそうでもなく ML に流れてる isearch-search-fun-function に対応したとかの
パッチが対応されてないな。

メンテナの白井さんの github リポジトリのがそのパッチが取り込まれたバージョンで、emacs-jp の方はそれを手動マージ、
白井さんはなぜか本家 CVS にはそれを投げておらずメンテナの高橋さんは高橋さんで別の修正を本家 CVS に加えてたって感じ。
0901名無しさん@お腹いっぱい。2014/02/06(木) 19:22:57.31
>>899 でしょ! これのおかげでelispでタグが必要なくなった。
0902名無しさん@お腹いっぱい。2014/02/06(木) 19:32:59.29
>>882 Vimのもめごとは当事者で解決したみたい。よかったよかった。
0903名無しさん@お腹いっぱい。2014/02/06(木) 19:53:06.19
どんなもめごとか気になるから教えてくれ
0904名無しさん@お腹いっぱい。2014/02/06(木) 19:57:33.33
Vimスレにいけやうんこども
0905名無しさん@お腹いっぱい。2014/02/06(木) 20:33:59.71
気の短いウンコだなw
0906名無しさん@お腹いっぱい。2014/02/06(木) 23:01:33.84
何時もこれぐらいの勢いで書き込みがあるといいのに
0907名無しさん@お腹いっぱい。2014/02/06(木) 23:57:13.23
レジスタに位置を保存する機能あるけどこれスタックの方がいいよな
文字を覚えておかないといけないし使い辛い
0908名無しさん@お腹いっぱい。2014/02/07(金) 00:01:34.10
標準の mark も C-u C-space でスタックを遡ってくれるしそれで十分な感じ。
レジスタはなんか全体的に惜しい感じだよね。使いづらい。
0909名無しさん@お腹いっぱい。2014/02/07(金) 00:19:14.35
レジスタになんか記録するとウィンドウがポップアップして記録されてるアピールでもしてくれればいいのかな。
レジスタの中身なんてどうせそんなに長く使うわけでもないだろうし終わったら閉じりゃいいしで。
0910名無しさん@お腹いっぱい。2014/02/07(金) 00:30:18.88
TECOの時代からあった機能らしいな
0911名無しさん@お腹いっぱい。2014/02/07(金) 00:49:21.23
スタック式の位置保存なんて簡単に作れそうだから誰か作ってそうだと思って探したら
こんなのあった
https://github.com/mattharrison/point-stack
0912名無しさん@お腹いっぱい。2014/02/07(金) 00:52:26.91
標準のマークもスタックするよ

つってもリージョン選択とか色々別の用途で使うから使いづらいか
0913名無しさん@お腹いっぱい。2014/02/07(金) 00:58:59.82
レジスタも>>911の奴もバッファ内の位置を保存するだけじゃなくて、
バッファ自体も切り替えてくれるのだよ
0914名無しさん@お腹いっぱい。2014/02/07(金) 01:05:40.76
もう長い事Emacs使ってるがレジスタは全く使わない
vi使ってた時はレジスタにコピー元テキストを設定するのが常だったけど
EmacsはC-y M-y M-yで取り出せるし

>>908
set-mark-command-repeat-pop を t にする必要があるね
ポイント戻すのはこれで十分
0915名無しさん@お腹いっぱい。2014/02/07(金) 01:22:56.09
set-mark-command-repeat-popがnilでも、コマンド引数つければスタックたどるよね?
tにすると、C-u C-SPCの後に続くC-SPCがC-u C-SPCと同じ意味になるっぽい
0916名無しさん@お腹いっぱい。2014/02/07(金) 01:28:14.10
あーなるほど、C-u C-SPC C-u C-SPC で戻るのか
今まで set-mark-command-repeat-pop を t にしないと戻らないと思ってた
なんかデフォの nil でもよさそうだ
0917名無しさん@お腹いっぱい。2014/02/07(金) 01:29:00.24
cua-selection-mode にしてると set-mark-command-repeat-pop が nil でも
C-u C-SPC C-SPC C-SPC... が有効になるみたいだ
なんで設定されてないのに普通に戻れるんだろとおもったらそこが違ってた
0918名無しさん@お腹いっぱい。2014/02/07(金) 10:26:53.57
レジスタ便利そうだなあと思うもののまったく使っていない
0919名無しさん@お腹いっぱい。2014/02/07(金) 10:31:23.22
コード書く場合だと変数でいいじゃんってなるしな
0920名無しさん@お腹いっぱい。2014/02/07(金) 11:47:59.52
長く使ってても使わなかったり知らん機能とか結構あるんだよなあ。
若い子に教えられることも多い。
0921名無しさん@お腹いっぱい。2014/02/07(金) 12:04:40.49
Alt+マウス選択で出てくるセカンダリセレクションもなんかすごく使えそうでいて
使い道が思いつかない
0922名無しさん@お腹いっぱい。2014/02/07(金) 13:02:41.42
俺が使っていない機能を便利に使っている人もいるんだろうな.
excelなんかと同じで,全部の機能を使うことが必要なのではなく,その人にあった機能サブセットを利用してよいツールという感じがする.
0923名無しさん@お腹いっぱい。2014/02/07(金) 13:40:29.87
もっともただ知らないだけで実は使ってみるとすごい便利なんてこともあるし
たまにこういうところに変わった使い方貼られると結構嬉しい。
0924名無しさん@お腹いっぱい。2014/02/07(金) 17:54:53.37
そのために2ch見てる。
0925名無しさん@お腹いっぱい。2014/02/07(金) 18:11:34.23
そういう意味で昔は情報が 2ch でまとまってて便利だった。
今は分散しちゃったから面倒ではあるかも。
0926名無しさん@お腹いっぱい。2014/02/07(金) 20:47:37.20
MELPAとel-getをウォッチしておけば、新しいelispの情報は追えるよ。
0927名無しさん@お腹いっぱい。2014/02/07(金) 21:56:44.22
試しにMELPAのTwitter垢フォローしてみたら、
けっこうすごい勢いでいろいろ更新されてるのな
mewとかがまだちゃんとメンテされてるのにも驚いた
0928名無しさん@お腹いっぱい。2014/02/07(金) 23:27:09.88
> 927 Twitter垢は新規と既存の更新の区別がつかないので、新規elispだけしりたいときはMELPAのgithubリポジトリをウオッチするかRSSを取得するといいよ。
0929名無しさん@お腹いっぱい。2014/02/08(土) 01:57:05.46
marmalede とはなんだったのか
0930名無しさん@お腹いっぱい。2014/02/08(土) 03:27:49.40
faceいじりが楽しい、というか実際diffとか見やすくなって幸せ
せっかくの雪だし今日は美しいグレー調にしてるかなー
0931名無しさん@お腹いっぱい。2014/02/08(土) 03:48:14.77
char-width と実際のフォント幅合わせるのなんとか自動化できないもんかな
font-get-glyphs でフォントの文字毎の横幅は取れたんだけど
0932名無しさん@お腹いっぱい。2014/02/08(土) 10:28:23.01
>>931
そこまで調べられたんならできるんじゃないの?
何がだめなんだろう。
0933名無しさん@お腹いっぱい。2014/02/08(土) 11:05:30.00
char-width は how many ★columns★ it occupies on the screen とあるので
char-width がたぶんピクセル単位かなんかであろうフォント幅と合ってしまうと
いろいろぶっ壊れてしまうんじゃね?
0934名無しさん@お腹いっぱい。2014/02/08(土) 11:12:17.31
>>932
何が正しいやり方なのかわからなくなっちゃって。
考えてたのは以下なんだけど・・・
1. set-fontset-font の target と font-spec と append を実行順序順に記録しておく
2. フォントを設定し終わった後、font-spec 毎に target で指定した文字/文字範囲/文字集合範囲内の
 文字列を全部適当な変数に書き出し、font-get-glyphs で処理してそれぞれの文字のピクセル幅を取る
3. 2 で取ったピクセル幅を大体の感じで文字幅に変換して 1 の順番を考慮して char-width-table に書き出す

2 でいちいち範囲内の文字列出力とかなんかすごく無駄な感じがして。
もっともフォントの文字幅なんて一回取っちゃえばそれで終わりなんだし幅とったらキャッシュに書き出しでもしておけばいいのかな。
0935名無しさん@お腹いっぱい。2014/02/08(土) 11:58:31.85
まとめると「誰かこれ書いて」ということですね。
わかります。
0936名無しさん@お腹いっぱい。2014/02/08(土) 12:00:11.59
そう。
文字集合だの内部コードへのマッピングだのやってることが正しいのかどうかもわからないから
詳しい人がびしっとやってくれたらすごく嬉しい。
0937名無しさん@お腹いっぱい。2014/02/08(土) 12:08:26.96
クズすぎワロタ
0938名無しさん@お腹いっぱい。2014/02/08(土) 12:38:11.50
>やってくれたらすごく嬉しい。
「やってください。お願いいたします」だろ
0939名無しさん@お腹いっぱい。2014/02/08(土) 12:42:51.20
先ず第一にemacsってワープロじゃ無いから。
fontなんて本人が「まあいいっか」と思える程度で十分だよ。

唯一困った例はGNU APLのソフトキーボードで、これはちゃんと特殊記号のフォントとその他も等幅にしないとレイアウトがガタガタになっちゃう

フォントの心配はTeXに任せたいな。
レス数が900を超えています。1000を超えると表示できなくなるよ。